From 32356f12b94166d8c7375fd3ab314ca1d9bc2682 Mon Sep 17 00:00:00 2001 From: Alexy Grabov <58911092+CoreOxide@users.noreply.github.com> Date: Wed, 31 Jul 2024 10:05:18 +0300 Subject: [PATCH] implement pydantic model generator (#31) Co-authored-by: Alexy Grabov --- .flake8 | 2 +- aws_resource_validator/main.py | 2 + aws_resource_validator/pydantic_generator.py | 188 + .../pydantic_models/accessanalyzer_classes.py | 863 + .../accessanalyzer_constants.py | 541 + .../pydantic_models/account_classes.py | 141 + .../pydantic_models/account_constants.py | 402 + .../pydantic_models/acm_classes.py | 238 + .../pydantic_models/acm_constants.py | 500 + .../pydantic_models/acm_pca_classes.py | 455 + .../pydantic_models/acm_pca_constants.py | 476 + .../pydantic_models/amp_classes.py | 407 + .../pydantic_models/amp_constants.py | 420 + .../pydantic_models/amplify_classes.py | 625 + .../pydantic_models/amplify_constants.py | 448 + .../pydantic_models/amplifybackend_classes.py | 617 + .../amplifybackend_constants.py | 440 + .../amplifyuibuilder_classes.py | 960 ++ .../amplifyuibuilder_constants.py | 456 + .../pydantic_models/apigateway_classes.py | 1460 ++ .../pydantic_models/apigateway_constants.py | 522 + .../apigatewaymanagementapi_classes.py | 43 + .../apigatewaymanagementapi_constants.py | 389 + .../pydantic_models/apigatewayv2_classes.py | 1350 ++ .../pydantic_models/apigatewayv2_constants.py | 453 + .../pydantic_models/appconfig_classes.py | 552 + .../pydantic_models/appconfig_constants.py | 458 + .../pydantic_models/appconfigdata_classes.py | 41 + .../appconfigdata_constants.py | 420 + .../pydantic_models/appfabric_classes.py | 370 + .../pydantic_models/appfabric_constants.py | 402 + .../pydantic_models/appflow_classes.py | 1041 ++ .../pydantic_models/appflow_constants.py | 763 + .../appintegrations_classes.py | 311 + .../appintegrations_constants.py | 411 + .../application_autoscaling_classes.py | 380 + .../application_autoscaling_constants.py | 507 + .../application_insights_classes.py | 448 + .../application_insights_constants.py | 451 + .../application_signals_classes.py | 354 + .../application_signals_constants.py | 441 + .../applicationcostprofiler_classes.py | 104 + .../applicationcostprofiler_constants.py | 393 + .../pydantic_models/appmesh_classes.py | 1119 ++ .../pydantic_models/appmesh_constants.py | 447 + .../pydantic_models/apprunner_classes.py | 566 + .../pydantic_models/apprunner_constants.py | 455 + .../pydantic_models/appstream_classes.py | 1147 ++ .../pydantic_models/appstream_constants.py | 521 + .../pydantic_models/appsync_classes.py | 963 ++ .../pydantic_models/appsync_constants.py | 500 + .../pydantic_models/apptest_classes.py | 732 + .../pydantic_models/apptest_constants.py | 432 + .../arc_zonal_shift_classes.py | 201 + .../arc_zonal_shift_constants.py | 427 + .../pydantic_models/artifact_classes.py | 116 + .../pydantic_models/artifact_constants.py | 405 + .../pydantic_models/athena_classes.py | 976 ++ .../pydantic_models/athena_constants.py | 459 + .../pydantic_models/auditmanager_classes.py | 950 + .../pydantic_models/auditmanager_constants.py | 457 + .../pydantic_models/autoscaling_classes.py | 1328 ++ .../pydantic_models/autoscaling_constants.py | 533 + .../autoscaling_plans_classes.py | 254 + .../autoscaling_plans_constants.py | 457 + .../pydantic_models/b2bi_classes.py | 423 + .../pydantic_models/b2bi_constants.py | 483 + .../pydantic_models/backup_classes.py | 1512 ++ .../pydantic_models/backup_constants.py | 519 + .../pydantic_models/backup_gateway_classes.py | 325 + .../backup_gateway_constants.py | 416 + .../pydantic_models/batch_classes.py | 1223 ++ .../pydantic_models/batch_constants.py | 468 + .../bcm_data_exports_classes.py | 206 + .../bcm_data_exports_constants.py | 406 + .../pydantic_models/bedrock_agent_classes.py | 1646 ++ .../bedrock_agent_constants.py | 487 + .../bedrock_agent_runtime_classes.py | 632 + .../bedrock_agent_runtime_constants.py | 468 + .../pydantic_models/bedrock_classes.py | 698 + .../pydantic_models/bedrock_constants.py | 481 + .../bedrock_runtime_classes.py | 419 + .../bedrock_runtime_constants.py | 460 + .../billingconductor_classes.py | 708 + .../billingconductor_constants.py | 424 + .../pydantic_models/braket_classes.py | 305 + .../pydantic_models/braket_constants.py | 459 + .../pydantic_models/budgets_classes.py | 512 + .../pydantic_models/budgets_constants.py | 445 + .../pydantic_models/ce_classes.py | 1063 ++ .../pydantic_models/ce_constants.py | 504 + .../pydantic_models/chatbot_classes.py | 304 + .../pydantic_models/chatbot_constants.py | 398 + .../pydantic_models/chime_classes.py | 2104 +++ .../pydantic_models/chime_constants.py | 488 + .../chime_sdk_identity_classes.py | 373 + .../chime_sdk_identity_constants.py | 397 + .../chime_sdk_media_pipelines_classes.py | 754 + .../chime_sdk_media_pipelines_constants.py | 477 + .../chime_sdk_meetings_classes.py | 243 + .../chime_sdk_meetings_constants.py | 440 + .../chime_sdk_messaging_classes.py | 713 + .../chime_sdk_messaging_constants.py | 420 + .../chime_sdk_voice_classes.py | 1037 ++ .../chime_sdk_voice_constants.py | 479 + .../pydantic_models/cleanrooms_classes.py | 1207 ++ .../pydantic_models/cleanrooms_constants.py | 506 + .../pydantic_models/cleanroomsml_classes.py | 390 + .../pydantic_models/cleanroomsml_constants.py | 429 + .../pydantic_models/cloud9_classes.py | 160 + .../pydantic_models/cloud9_constants.py | 434 + .../pydantic_models/cloudcontrol_classes.py | 147 + .../pydantic_models/cloudcontrol_constants.py | 438 + .../pydantic_models/clouddirectory_classes.py | 1243 ++ .../clouddirectory_constants.py | 459 + .../pydantic_models/cloudformation_classes.py | 1721 ++ .../cloudformation_constants.py | 646 + .../pydantic_models/cloudfront_classes.py | 2207 +++ .../pydantic_models/cloudfront_constants.py | 467 + .../cloudfront_keyvaluestore_classes.py | 110 + .../cloudfront_keyvaluestore_constants.py | 393 + .../pydantic_models/cloudhsm_classes.py | 234 + .../pydantic_models/cloudhsm_constants.py | 397 + .../pydantic_models/cloudhsmv2_classes.py | 255 + .../pydantic_models/cloudhsmv2_constants.py | 443 + .../pydantic_models/cloudsearch_classes.py | 415 + .../pydantic_models/cloudsearch_constants.py | 465 + .../cloudsearchdomain_classes.py | 114 + .../cloudsearchdomain_constants.py | 391 + .../pydantic_models/cloudtrail_classes.py | 796 + .../pydantic_models/cloudtrail_constants.py | 476 + .../cloudtrail_data_classes.py | 44 + .../cloudtrail_data_constants.py | 410 + .../pydantic_models/cloudwatch_classes.py | 910 + .../pydantic_models/cloudwatch_constants.py | 487 + .../pydantic_models/codeartifact_classes.py | 854 + .../pydantic_models/codeartifact_constants.py | 452 + .../pydantic_models/codebuild_classes.py | 1095 ++ .../pydantic_models/codebuild_constants.py | 562 + .../pydantic_models/codecatalyst_classes.py | 700 + .../pydantic_models/codecatalyst_constants.py | 434 + .../pydantic_models/codecommit_classes.py | 1227 ++ .../pydantic_models/codecommit_constants.py | 458 + .../codeconnections_classes.py | 352 + .../codeconnections_constants.py | 403 + .../pydantic_models/codedeploy_classes.py | 857 + .../pydantic_models/codedeploy_constants.py | 545 + .../codeguru_reviewer_classes.py | 332 + .../codeguru_reviewer_constants.py | 424 + .../codeguru_security_classes.py | 256 + .../codeguru_security_constants.py | 413 + .../codeguruprofiler_classes.py | 341 + .../codeguruprofiler_constants.py | 413 + .../pydantic_models/codepipeline_classes.py | 948 + .../pydantic_models/codepipeline_constants.py | 481 + .../pydantic_models/codestar_classes.py | 278 + .../codestar_connections_classes.py | 352 + .../codestar_connections_constants.py | 419 + .../pydantic_models/codestar_constants.py | 406 + .../codestar_notifications_classes.py | 184 + .../codestar_notifications_constants.py | 416 + .../cognito_identity_classes.py | 285 + .../cognito_identity_constants.py | 433 + .../pydantic_models/cognito_idp_classes.py | 1421 ++ .../pydantic_models/cognito_idp_constants.py | 518 + .../pydantic_models/cognito_sync_classes.py | 230 + .../pydantic_models/cognito_sync_constants.py | 404 + .../pydantic_models/comprehend_classes.py | 1803 ++ .../pydantic_models/comprehend_constants.py | 560 + .../comprehendmedical_classes.py | 430 + .../comprehendmedical_constants.py | 521 + .../compute_optimizer_classes.py | 910 + .../compute_optimizer_constants.py | 925 + .../pydantic_models/config_classes.py | 1757 ++ .../pydantic_models/config_constants.py | 981 ++ .../pydantic_models/connect_classes.py | 4343 +++++ .../pydantic_models/connect_constants.py | 1043 ++ .../connect_contact_lens_classes.py | 63 + .../connect_contact_lens_constants.py | 399 + .../connectcampaigns_classes.py | 244 + .../connectcampaigns_constants.py | 413 + .../pydantic_models/connectcases_classes.py | 607 + .../pydantic_models/connectcases_constants.py | 418 + .../connectparticipant_classes.py | 164 + .../connectparticipant_constants.py | 419 + .../pydantic_models/controlcatalog_classes.py | 109 + .../controlcatalog_constants.py | 400 + .../pydantic_models/controltower_classes.py | 407 + .../pydantic_models/controltower_constants.py | 450 + .../cost_optimization_hub_classes.py | 449 + .../cost_optimization_hub_constants.py | 431 + .../pydantic_models/cur_classes.py | 120 + .../pydantic_models/cur_constants.py | 438 + .../customer_profiles_classes.py | 1135 ++ .../customer_profiles_constants.py | 550 + .../pydantic_models/databrew_classes.py | 1022 ++ .../pydantic_models/databrew_constants.py | 451 + .../pydantic_models/dataexchange_classes.py | 874 + .../pydantic_models/dataexchange_constants.py | 448 + .../pydantic_models/datapipeline_classes.py | 261 + .../pydantic_models/datapipeline_constants.py | 396 + .../pydantic_models/datasync_classes.py | 1002 ++ .../pydantic_models/datasync_constants.py | 516 + .../pydantic_models/datazone_classes.py | 2834 +++ .../pydantic_models/datazone_constants.py | 647 + .../pydantic_models/dax_classes.py | 357 + .../pydantic_models/dax_constants.py | 422 + .../pydantic_models/deadline_classes.py | 2140 +++ .../pydantic_models/deadline_constants.py | 554 + .../pydantic_models/detective_classes.py | 367 + .../pydantic_models/detective_constants.py | 434 + .../pydantic_models/devicefarm_classes.py | 1181 ++ .../pydantic_models/devicefarm_constants.py | 605 + .../pydantic_models/devops_guru_classes.py | 868 + .../pydantic_models/devops_guru_constants.py | 529 + .../pydantic_models/directconnect_classes.py | 881 + .../directconnect_constants.py | 466 + .../pydantic_models/discovery_classes.py | 466 + .../pydantic_models/discovery_constants.py | 452 + .../pydantic_models/dlm_classes.py | 244 + .../pydantic_models/dlm_constants.py | 430 + .../pydantic_models/dms_classes.py | 2331 +++ .../pydantic_models/dms_constants.py | 521 + .../pydantic_models/docdb_classes.py | 981 ++ .../pydantic_models/docdb_constants.py | 465 + .../pydantic_models/docdb_elastic_classes.py | 232 + .../docdb_elastic_constants.py | 417 + .../pydantic_models/drs_classes.py | 938 + .../pydantic_models/drs_constants.py | 613 + .../pydantic_models/ds_classes.py | 873 + .../pydantic_models/ds_constants.py | 530 + .../pydantic_models/dynamodb_classes.py | 1672 ++ .../pydantic_models/dynamodb_constants.py | 524 + .../dynamodbstreams_classes.py | 121 + .../dynamodbstreams_constants.py | 421 + .../pydantic_models/ebs_classes.py | 123 + .../pydantic_models/ebs_constants.py | 421 + .../pydantic_models/ec2_classes.py | 14251 ++++++++++++++++ .../pydantic_models/ec2_constants.py | 2306 +++ .../ec2_instance_connect_classes.py | 41 + .../ec2_instance_connect_constants.py | 393 + .../pydantic_models/ecr_classes.py | 787 + .../pydantic_models/ecr_constants.py | 485 + .../pydantic_models/ecr_public_classes.py | 351 + .../pydantic_models/ecr_public_constants.py | 405 + .../pydantic_models/ecs_classes.py | 1647 ++ .../pydantic_models/ecs_constants.py | 561 + .../pydantic_models/efs_classes.py | 419 + .../pydantic_models/efs_constants.py | 466 + .../pydantic_models/eks_auth_classes.py | 50 + .../pydantic_models/eks_auth_constants.py | 388 + .../pydantic_models/eks_classes.py | 1149 ++ .../pydantic_models/eks_constants.py | 635 + .../elastic_inference_classes.py | 99 + .../elastic_inference_constants.py | 392 + .../pydantic_models/elasticache_classes.py | 1573 ++ .../pydantic_models/elasticache_constants.py | 520 + .../elasticbeanstalk_classes.py | 897 + .../elasticbeanstalk_constants.py | 487 + .../elastictranscoder_classes.py | 554 + .../elastictranscoder_constants.py | 417 + .../pydantic_models/elb_classes.py | 380 + .../pydantic_models/elb_constants.py | 423 + .../pydantic_models/elbv2_classes.py | 875 + .../pydantic_models/elbv2_constants.py | 482 + .../pydantic_models/emr_classes.py | 1324 ++ .../pydantic_models/emr_constants.py | 573 + .../pydantic_models/emr_containers_classes.py | 585 + .../emr_containers_constants.py | 440 + .../pydantic_models/emr_serverless_classes.py | 432 + .../emr_serverless_constants.py | 436 + .../entityresolution_classes.py | 665 + .../entityresolution_constants.py | 441 + .../pydantic_models/es_classes.py | 982 ++ .../pydantic_models/es_constants.py | 565 + .../pydantic_models/events_classes.py | 1158 ++ .../pydantic_models/events_constants.py | 449 + .../pydantic_models/evidently_classes.py | 727 + .../pydantic_models/evidently_constants.py | 431 + .../pydantic_models/finspace_classes.py | 970 ++ .../pydantic_models/finspace_constants.py | 462 + .../pydantic_models/finspace_data_classes.py | 569 + .../finspace_data_constants.py | 440 + .../pydantic_models/firehose_classes.py | 817 + .../pydantic_models/firehose_constants.py | 487 + .../pydantic_models/fis_classes.py | 496 + .../pydantic_models/fis_constants.py | 406 + .../pydantic_models/fms_classes.py | 1029 ++ .../pydantic_models/fms_constants.py | 525 + .../pydantic_models/forecast_classes.py | 1088 ++ .../pydantic_models/forecast_constants.py | 454 + .../pydantic_models/forecastquery_classes.py | 49 + .../forecastquery_constants.py | 398 + .../pydantic_models/frauddetector_classes.py | 1021 ++ .../frauddetector_constants.py | 411 + .../pydantic_models/freetier_classes.py | 62 + .../pydantic_models/freetier_constants.py | 398 + .../pydantic_models/fsx_classes.py | 1298 ++ .../pydantic_models/fsx_constants.py | 529 + .../pydantic_models/gamelift_classes.py | 1759 ++ .../pydantic_models/gamelift_constants.py | 845 + .../pydantic_models/glacier_classes.py | 558 + .../pydantic_models/glacier_constants.py | 435 + .../globalaccelerator_classes.py | 691 + .../globalaccelerator_constants.py | 442 + .../pydantic_models/glue_classes.py | 6153 +++++++ .../pydantic_models/glue_constants.py | 713 + .../pydantic_models/grafana_classes.py | 440 + .../pydantic_models/grafana_constants.py | 452 + .../pydantic_models/greengrass_classes.py | 1198 ++ .../pydantic_models/greengrass_constants.py | 452 + .../pydantic_models/greengrassv2_classes.py | 566 + .../pydantic_models/greengrassv2_constants.py | 448 + .../pydantic_models/groundstation_classes.py | 669 + .../groundstation_constants.py | 474 + .../pydantic_models/guardduty_classes.py | 1734 ++ .../pydantic_models/guardduty_constants.py | 565 + .../pydantic_models/health_classes.py | 324 + .../pydantic_models/health_constants.py | 409 + .../pydantic_models/healthlake_classes.py | 236 + .../pydantic_models/healthlake_constants.py | 413 + .../pydantic_models/iam_classes.py | 1962 +++ .../pydantic_models/iam_constants.py | 529 + .../pydantic_models/identitystore_classes.py | 322 + .../identitystore_constants.py | 417 + .../pydantic_models/imagebuilder_classes.py | 1647 ++ .../pydantic_models/imagebuilder_constants.py | 456 + .../pydantic_models/importexport_classes.py | 128 + .../pydantic_models/importexport_constants.py | 391 + .../pydantic_models/inspector2_classes.py | 1676 ++ .../pydantic_models/inspector2_constants.py | 664 + .../pydantic_models/inspector_classes.py | 575 + .../pydantic_models/inspector_constants.py | 455 + .../pydantic_models/inspector_scan_classes.py | 28 + .../inspector_scan_constants.py | 389 + .../internetmonitor_classes.py | 332 + .../internetmonitor_constants.py | 447 + .../iot1click_devices_classes.py | 154 + .../iot1click_devices_constants.py | 392 + .../iot1click_projects_classes.py | 165 + .../iot1click_projects_constants.py | 398 + .../pydantic_models/iot_classes.py | 3957 +++++ .../pydantic_models/iot_constants.py | 679 + .../pydantic_models/iot_data_classes.py | 105 + .../pydantic_models/iot_data_constants.py | 411 + .../pydantic_models/iot_jobs_data_classes.py | 89 + .../iot_jobs_data_constants.py | 407 + .../pydantic_models/iotanalytics_classes.py | 683 + .../pydantic_models/iotanalytics_constants.py | 413 + .../iotdeviceadvisor_classes.py | 217 + .../iotdeviceadvisor_constants.py | 419 + .../pydantic_models/iotevents_classes.py | 562 + .../pydantic_models/iotevents_constants.py | 414 + .../pydantic_models/iotevents_data_classes.py | 291 + .../iotevents_data_constants.py | 399 + .../pydantic_models/iotfleethub_classes.py | 100 + .../pydantic_models/iotfleethub_constants.py | 412 + .../pydantic_models/iotfleetwise_classes.py | 1021 ++ .../pydantic_models/iotfleetwise_constants.py | 494 + .../iotsecuretunneling_classes.py | 116 + .../iotsecuretunneling_constants.py | 410 + .../pydantic_models/iotsitewise_classes.py | 1740 ++ .../pydantic_models/iotsitewise_constants.py | 514 + .../pydantic_models/iotthingsgraph_classes.py | 447 + .../iotthingsgraph_constants.py | 455 + .../pydantic_models/iottwinmaker_classes.py | 948 + .../pydantic_models/iottwinmaker_constants.py | 440 + .../pydantic_models/iotwireless_classes.py | 1666 ++ .../pydantic_models/iotwireless_constants.py | 516 + .../pydantic_models/ivs_classes.py | 502 + .../pydantic_models/ivs_constants.py | 427 + .../pydantic_models/ivs_realtime_classes.py | 484 + .../pydantic_models/ivs_realtime_constants.py | 432 + .../pydantic_models/ivschat_classes.py | 243 + .../pydantic_models/ivschat_constants.py | 407 + .../pydantic_models/kafka_classes.py | 1125 ++ .../pydantic_models/kafka_constants.py | 483 + .../pydantic_models/kafkaconnect_classes.py | 451 + .../pydantic_models/kafkaconnect_constants.py | 419 + .../pydantic_models/kendra_classes.py | 1658 ++ .../pydantic_models/kendra_constants.py | 556 + .../pydantic_models/kendra_ranking_classes.py | 120 + .../kendra_ranking_constants.py | 415 + .../pydantic_models/keyspaces_classes.py | 288 + .../pydantic_models/keyspaces_constants.py | 430 + .../pydantic_models/kinesis_classes.py | 472 + .../pydantic_models/kinesis_constants.py | 446 + .../kinesis_video_archived_media_classes.py | 168 + .../kinesis_video_archived_media_constants.py | 425 + .../kinesis_video_media_classes.py | 36 + .../kinesis_video_media_constants.py | 411 + .../kinesis_video_signaling_classes.py | 45 + .../kinesis_video_signaling_constants.py | 405 + .../kinesis_video_webrtc_storage_classes.py | 26 + .../kinesis_video_webrtc_storage_constants.py | 404 + .../kinesisanalytics_classes.py | 399 + .../kinesisanalytics_constants.py | 420 + .../kinesisanalyticsv2_classes.py | 957 ++ .../kinesisanalyticsv2_constants.py | 472 + .../pydantic_models/kinesisvideo_classes.py | 401 + .../pydantic_models/kinesisvideo_constants.py | 447 + .../pydantic_models/kms_classes.py | 674 + .../pydantic_models/kms_constants.py | 556 + .../pydantic_models/lakeformation_classes.py | 850 + .../lakeformation_constants.py | 478 + .../pydantic_models/lambda_classes.py | 1278 ++ .../pydantic_models/lambda_constants.py | 574 + .../pydantic_models/launch_wizard_classes.py | 212 + .../launch_wizard_constants.py | 419 + .../pydantic_models/lex_models_classes.py | 808 + .../pydantic_models/lex_models_constants.py | 452 + .../pydantic_models/lex_runtime_classes.py | 184 + .../pydantic_models/lex_runtime_constants.py | 403 + .../pydantic_models/lexv2_models_classes.py | 2889 ++++ .../pydantic_models/lexv2_models_constants.py | 585 + .../pydantic_models/lexv2_runtime_classes.py | 199 + .../lexv2_runtime_constants.py | 408 + .../license_manager_classes.py | 840 + .../license_manager_constants.py | 524 + ...nse_manager_linux_subscriptions_classes.py | 172 + ...e_manager_linux_subscriptions_constants.py | 442 + ...ense_manager_user_subscriptions_classes.py | 207 + ...se_manager_user_subscriptions_constants.py | 424 + .../pydantic_models/lightsail_classes.py | 2488 +++ .../pydantic_models/lightsail_constants.py | 806 + .../pydantic_models/location_classes.py | 1099 ++ .../pydantic_models/location_constants.py | 460 + .../pydantic_models/logs_classes.py | 938 + .../pydantic_models/logs_constants.py | 494 + .../lookoutequipment_classes.py | 850 + .../lookoutequipment_constants.py | 417 + .../pydantic_models/lookoutmetrics_classes.py | 597 + .../lookoutmetrics_constants.py | 430 + .../pydantic_models/lookoutvision_classes.py | 397 + .../lookoutvision_constants.py | 427 + .../pydantic_models/m2_classes.py | 683 + .../pydantic_models/m2_constants.py | 464 + .../machinelearning_classes.py | 637 + .../machinelearning_constants.py | 439 + .../pydantic_models/macie2_classes.py | 1577 ++ .../pydantic_models/macie2_constants.py | 573 + .../pydantic_models/mailmanager_classes.py | 813 + .../pydantic_models/mailmanager_constants.py | 476 + .../managedblockchain_classes.py | 477 + .../managedblockchain_constants.py | 433 + .../managedblockchain_query_classes.py | 294 + .../managedblockchain_query_constants.py | 424 + .../marketplace_agreement_classes.py | 207 + .../marketplace_agreement_constants.py | 399 + .../marketplace_catalog_classes.py | 535 + .../marketplace_catalog_constants.py | 437 + .../marketplace_deployment_classes.py | 55 + .../marketplace_deployment_constants.py | 389 + .../marketplace_entitlement_classes.py | 54 + .../marketplace_entitlement_constants.py | 401 + .../marketplacecommerceanalytics_classes.py | 46 + .../marketplacecommerceanalytics_constants.py | 416 + .../pydantic_models/mediaconnect_classes.py | 1091 ++ .../pydantic_models/mediaconnect_constants.py | 494 + .../pydantic_models/mediaconvert_classes.py | 2788 +++ .../pydantic_models/mediaconvert_constants.py | 1236 ++ .../pydantic_models/medialive_classes.py | 3500 ++++ .../pydantic_models/medialive_constants.py | 970 ++ .../pydantic_models/mediapackage_classes.py | 581 + .../pydantic_models/mediapackage_constants.py | 441 + .../mediapackage_vod_classes.py | 406 + .../mediapackage_vod_constants.py | 428 + .../pydantic_models/mediapackagev2_classes.py | 532 + .../mediapackagev2_constants.py | 456 + .../pydantic_models/mediastore_classes.py | 159 + .../pydantic_models/mediastore_constants.py | 402 + .../mediastore_data_classes.py | 90 + .../mediastore_data_constants.py | 403 + .../pydantic_models/mediatailor_classes.py | 922 + .../pydantic_models/mediatailor_constants.py | 448 + .../medical_imaging_classes.py | 370 + .../medical_imaging_constants.py | 420 + .../pydantic_models/memorydb_classes.py | 719 + .../pydantic_models/memorydb_constants.py | 438 + .../meteringmarketplace_classes.py | 80 + .../meteringmarketplace_constants.py | 418 + .../pydantic_models/mgh_classes.py | 210 + .../pydantic_models/mgh_constants.py | 418 + .../pydantic_models/mgn_classes.py | 1281 ++ .../pydantic_models/mgn_constants.py | 559 + .../migration_hub_refactor_spaces_classes.py | 524 + ...migration_hub_refactor_spaces_constants.py | 440 + .../migrationhub_config_classes.py | 58 + .../migrationhub_config_constants.py | 389 + .../migrationhuborchestrator_classes.py | 598 + .../migrationhuborchestrator_constants.py | 451 + .../migrationhubstrategy_classes.py | 541 + .../migrationhubstrategy_constants.py | 559 + .../pydantic_models/mobile_classes.py | 137 + .../pydantic_models/mobile_constants.py | 394 + .../pydantic_models/mq_classes.py | 459 + .../pydantic_models/mq_constants.py | 446 + .../pydantic_models/mturk_classes.py | 584 + .../pydantic_models/mturk_constants.py | 441 + .../pydantic_models/mwaa_classes.py | 241 + .../pydantic_models/mwaa_constants.py | 459 + .../pydantic_models/neptune_classes.py | 1352 ++ .../pydantic_models/neptune_constants.py | 459 + .../pydantic_models/neptune_graph_classes.py | 562 + .../neptune_graph_constants.py | 444 + .../pydantic_models/neptunedata_classes.py | 615 + .../pydantic_models/neptunedata_constants.py | 420 + .../network_firewall_classes.py | 726 + .../network_firewall_constants.py | 467 + .../pydantic_models/networkmanager_classes.py | 1454 ++ .../networkmanager_constants.py | 525 + .../pydantic_models/networkmonitor_classes.py | 207 + .../networkmonitor_constants.py | 402 + .../pydantic_models/nimble_classes.py | 980 ++ .../pydantic_models/nimble_constants.py | 605 + .../pydantic_models/oam_classes.py | 199 + .../pydantic_models/oam_constants.py | 435 + .../pydantic_models/omics_classes.py | 1699 ++ .../pydantic_models/omics_constants.py | 559 + .../pydantic_models/opensearch_classes.py | 1288 ++ .../pydantic_models/opensearch_constants.py | 635 + .../opensearchserverless_classes.py | 566 + .../opensearchserverless_constants.py | 405 + .../pydantic_models/opsworks_classes.py | 1186 ++ .../pydantic_models/opsworks_constants.py | 584 + .../pydantic_models/opsworkscm_classes.py | 292 + .../pydantic_models/opsworkscm_constants.py | 421 + .../pydantic_models/organizations_classes.py | 600 + .../organizations_constants.py | 468 + .../pydantic_models/osis_classes.py | 235 + .../pydantic_models/osis_constants.py | 429 + .../pydantic_models/outposts_classes.py | 512 + .../pydantic_models/outposts_constants.py | 499 + .../pydantic_models/panorama_classes.py | 621 + .../pydantic_models/panorama_constants.py | 449 + .../payment_cryptography_classes.py | 322 + .../payment_cryptography_constants.py | 440 + .../payment_cryptography_data_classes.py | 404 + .../payment_cryptography_data_constants.py | 417 + .../pca_connector_ad_classes.py | 622 + .../pca_connector_ad_constants.py | 506 + .../pca_connector_scep_classes.py | 170 + .../pca_connector_scep_constants.py | 408 + .../pydantic_models/personalize_classes.py | 1242 ++ .../pydantic_models/personalize_constants.py | 452 + .../personalize_events_classes.py | 82 + .../personalize_events_constants.py | 389 + .../personalize_runtime_classes.py | 80 + .../personalize_runtime_constants.py | 397 + .../pydantic_models/pi_classes.py | 266 + .../pydantic_models/pi_constants.py | 444 + .../pydantic_models/pinpoint_classes.py | 2789 +++ .../pydantic_models/pinpoint_constants.py | 478 + .../pydantic_models/pinpoint_email_classes.py | 504 + .../pinpoint_email_constants.py | 432 + .../pinpoint_sms_voice_classes.py | 102 + .../pinpoint_sms_voice_constants.py | 389 + .../pinpoint_sms_voice_v2_classes.py | 1465 ++ .../pinpoint_sms_voice_v2_constants.py | 656 + .../pydantic_models/pipes_classes.py | 731 + .../pydantic_models/pipes_constants.py | 470 + .../pydantic_models/polly_classes.py | 166 + .../pydantic_models/polly_constants.py | 564 + .../pydantic_models/pricing_classes.py | 123 + .../pydantic_models/pricing_constants.py | 401 + .../privatenetworks_classes.py | 393 + .../privatenetworks_constants.py | 423 + .../pydantic_models/proton_classes.py | 1498 ++ .../pydantic_models/proton_constants.py | 518 + .../pydantic_models/qapps_classes.py | 437 + .../pydantic_models/qapps_constants.py | 413 + .../pydantic_models/qbusiness_classes.py | 1222 ++ .../pydantic_models/qbusiness_constants.py | 545 + .../pydantic_models/qconnect_classes.py | 970 ++ .../pydantic_models/qconnect_constants.py | 484 + .../pydantic_models/qldb_classes.py | 261 + .../pydantic_models/qldb_constants.py | 413 + .../pydantic_models/qldb_session_classes.py | 101 + .../pydantic_models/qldb_session_constants.py | 400 + .../pydantic_models/quicksight_classes.py | 8731 ++++++++++ .../pydantic_models/quicksight_constants.py | 1000 ++ .../pydantic_models/ram_classes.py | 546 + .../pydantic_models/ram_constants.py | 442 + .../pydantic_models/rbin_classes.py | 175 + .../pydantic_models/rbin_constants.py | 423 + .../pydantic_models/rds_classes.py | 3684 ++++ .../pydantic_models/rds_constants.py | 591 + .../pydantic_models/rds_data_classes.py | 167 + .../pydantic_models/rds_data_constants.py | 408 + .../pydantic_models/redshift_classes.py | 2281 +++ .../pydantic_models/redshift_constants.py | 544 + .../pydantic_models/redshift_data_classes.py | 295 + .../redshift_data_constants.py | 402 + .../redshift_serverless_classes.py | 815 + .../redshift_serverless_constants.py | 443 + .../pydantic_models/rekognition_classes.py | 1624 ++ .../pydantic_models/rekognition_constants.py | 564 + .../pydantic_models/repostspace_classes.py | 135 + .../pydantic_models/repostspace_constants.py | 393 + .../pydantic_models/resiliencehub_classes.py | 999 ++ .../resiliencehub_constants.py | 463 + .../resource_explorer_2_classes.py | 270 + .../resource_explorer_2_constants.py | 423 + .../resource_groups_classes.py | 266 + .../resource_groups_constants.py | 439 + .../resourcegroupstaggingapi_classes.py | 151 + .../resourcegroupstaggingapi_constants.py | 424 + .../pydantic_models/robomaker_classes.py | 1112 ++ .../pydantic_models/robomaker_constants.py | 525 + .../pydantic_models/rolesanywhere_classes.py | 288 + .../rolesanywhere_constants.py | 435 + .../pydantic_models/route53_classes.py | 1019 ++ .../pydantic_models/route53_constants.py | 548 + .../route53_recovery_cluster_classes.py | 69 + .../route53_recovery_cluster_constants.py | 391 + ...route53_recovery_control_config_classes.py | 327 + ...ute53_recovery_control_config_constants.py | 412 + .../route53_recovery_readiness_classes.py | 448 + .../route53_recovery_readiness_constants.py | 409 + .../pydantic_models/route53domains_classes.py | 482 + .../route53domains_constants.py | 738 + .../route53profiles_classes.py | 212 + .../route53profiles_constants.py | 403 + .../route53resolver_classes.py | 917 + .../route53resolver_constants.py | 517 + .../pydantic_models/rum_classes.py | 275 + .../pydantic_models/rum_constants.py | 416 + .../pydantic_models/s3_classes.py | 3101 ++++ .../pydantic_models/s3_constants.py | 614 + .../pydantic_models/s3control_classes.py | 1402 ++ .../pydantic_models/s3control_constants.py | 521 + .../pydantic_models/s3outposts_classes.py | 109 + .../pydantic_models/s3outposts_constants.py | 417 + .../sagemaker_a2i_runtime_classes.py | 91 + .../sagemaker_a2i_runtime_constants.py | 394 + .../pydantic_models/sagemaker_classes.py | 9411 ++++++++++ .../pydantic_models/sagemaker_constants.py | 2002 +++ .../pydantic_models/sagemaker_edge_classes.py | 95 + .../sagemaker_edge_constants.py | 395 + .../sagemaker_featurestore_runtime_classes.py | 83 + ...agemaker_featurestore_runtime_constants.py | 395 + .../sagemaker_geospatial_classes.py | 522 + .../sagemaker_geospatial_constants.py | 458 + .../sagemaker_metrics_classes.py | 38 + .../sagemaker_metrics_constants.py | 418 + .../sagemaker_runtime_classes.py | 89 + .../sagemaker_runtime_constants.py | 417 + .../pydantic_models/savingsplans_classes.py | 210 + .../pydantic_models/savingsplans_constants.py | 429 + .../pydantic_models/scheduler_classes.py | 261 + .../pydantic_models/scheduler_constants.py | 428 + .../pydantic_models/schemas_classes.py | 413 + .../pydantic_models/schemas_constants.py | 424 + .../pydantic_models/sdb_classes.py | 133 + .../pydantic_models/sdb_constants.py | 399 + .../pydantic_models/secretsmanager_classes.py | 361 + .../secretsmanager_constants.py | 434 + .../pydantic_models/securityhub_classes.py | 9600 +++++++++++ .../pydantic_models/securityhub_constants.py | 537 + .../pydantic_models/securitylake_classes.py | 387 + .../pydantic_models/securitylake_constants.py | 435 + .../pydantic_models/serverlessrepo_classes.py | 308 + .../serverlessrepo_constants.py | 412 + .../pydantic_models/service_quotas_classes.py | 271 + .../service_quotas_constants.py | 437 + .../servicecatalog_appregistry_classes.py | 349 + .../servicecatalog_appregistry_constants.py | 432 + .../pydantic_models/servicecatalog_classes.py | 1404 ++ .../servicecatalog_constants.py | 506 + .../servicediscovery_classes.py | 471 + .../servicediscovery_constants.py | 452 + .../pydantic_models/ses_classes.py | 701 + .../pydantic_models/ses_constants.py | 472 + .../pydantic_models/sesv2_classes.py | 1199 ++ .../pydantic_models/sesv2_constants.py | 498 + .../pydantic_models/shield_classes.py | 358 + .../pydantic_models/shield_constants.py | 428 + .../pydantic_models/signer_classes.py | 380 + .../pydantic_models/signer_constants.py | 432 + .../pydantic_models/simspaceweaver_classes.py | 202 + .../simspaceweaver_constants.py | 411 + .../pydantic_models/sms_classes.py | 474 + .../pydantic_models/sms_constants.py | 451 + .../pydantic_models/sms_voice_classes.py | 111 + .../pydantic_models/sms_voice_constants.py | 389 + .../snow_device_management_classes.py | 264 + .../snow_device_management_constants.py | 400 + .../pydantic_models/snowball_classes.py | 521 + .../pydantic_models/snowball_constants.py | 475 + .../pydantic_models/sns_classes.py | 448 + .../pydantic_models/sns_constants.py | 459 + .../pydantic_models/sqs_classes.py | 342 + .../pydantic_models/sqs_constants.py | 494 + .../pydantic_models/ssm_classes.py | 3292 ++++ .../pydantic_models/ssm_constants.py | 799 + .../pydantic_models/ssm_contacts_classes.py | 553 + .../pydantic_models/ssm_contacts_constants.py | 435 + .../pydantic_models/ssm_incidents_classes.py | 528 + .../ssm_incidents_constants.py | 438 + .../pydantic_models/ssm_sap_classes.py | 369 + .../pydantic_models/ssm_sap_constants.py | 449 + .../pydantic_models/sso_admin_classes.py | 905 + .../pydantic_models/sso_admin_constants.py | 470 + .../pydantic_models/sso_classes.py | 85 + .../pydantic_models/sso_constants.py | 415 + .../pydantic_models/sso_oidc_classes.py | 94 + .../pydantic_models/sso_oidc_constants.py | 425 + .../pydantic_models/stepfunctions_classes.py | 752 + .../stepfunctions_constants.py | 512 + .../pydantic_models/storagegateway_classes.py | 1300 ++ .../storagegateway_constants.py | 468 + .../pydantic_models/sts_classes.py | 147 + .../pydantic_models/sts_constants.py | 416 + .../pydantic_models/supplychain_classes.py | 56 + .../pydantic_models/supplychain_constants.py | 413 + .../pydantic_models/support_app_classes.py | 105 + .../pydantic_models/support_app_constants.py | 391 + .../pydantic_models/support_classes.py | 305 + .../pydantic_models/support_constants.py | 402 + .../pydantic_models/swf_classes.py | 985 ++ .../pydantic_models/swf_constants.py | 572 + .../pydantic_models/synthetics_classes.py | 308 + .../pydantic_models/synthetics_constants.py | 441 + .../pydantic_models/taxsettings_classes.py | 270 + .../pydantic_models/taxsettings_constants.py | 419 + .../pydantic_models/textract_classes.py | 546 + .../pydantic_models/textract_constants.py | 456 + .../timestream_influxdb_classes.py | 236 + .../timestream_influxdb_constants.py | 409 + .../timestream_query_classes.py | 329 + .../timestream_query_constants.py | 424 + .../timestream_write_classes.py | 336 + .../timestream_write_constants.py | 405 + .../pydantic_models/tnb_classes.py | 533 + .../pydantic_models/tnb_constants.py | 431 + .../pydantic_models/transcribe_classes.py | 785 + .../pydantic_models/transcribe_constants.py | 560 + .../pydantic_models/transfer_classes.py | 1024 ++ .../pydantic_models/transfer_constants.py | 495 + .../pydantic_models/translate_classes.py | 337 + .../pydantic_models/translate_constants.py | 425 + .../pydantic_models/trustedadvisor_classes.py | 337 + .../trustedadvisor_constants.py | 443 + .../verifiedpermissions_classes.py | 664 + .../verifiedpermissions_constants.py | 439 + .../pydantic_models/voice_id_classes.py | 499 + .../pydantic_models/voice_id_constants.py | 426 + .../pydantic_models/vpc_lattice_classes.py | 853 + .../pydantic_models/vpc_lattice_constants.py | 449 + .../pydantic_models/waf_classes.py | 1001 ++ .../pydantic_models/waf_constants.py | 703 + .../pydantic_models/waf_regional_classes.py | 932 + .../pydantic_models/waf_regional_constants.py | 686 + .../pydantic_models/wafv2_classes.py | 1409 ++ .../pydantic_models/wafv2_constants.py | 741 + .../wellarchitected_classes.py | 1239 ++ .../wellarchitected_constants.py | 453 + .../pydantic_models/wisdom_classes.py | 819 + .../pydantic_models/wisdom_constants.py | 454 + .../pydantic_models/workdocs_classes.py | 698 + .../pydantic_models/workdocs_constants.py | 516 + .../pydantic_models/worklink_classes.py | 289 + .../pydantic_models/worklink_constants.py | 400 + .../pydantic_models/workmail_classes.py | 1008 ++ .../pydantic_models/workmail_constants.py | 422 + .../workmailmessageflow_classes.py | 39 + .../workmailmessageflow_constants.py | 388 + .../pydantic_models/workspaces_classes.py | 1232 ++ .../pydantic_models/workspaces_constants.py | 625 + .../workspaces_thin_client_classes.py | 283 + .../workspaces_thin_client_constants.py | 417 + .../pydantic_models/workspaces_web_classes.py | 643 + .../workspaces_web_constants.py | 418 + .../pydantic_models/xray_classes.py | 728 + .../pydantic_models/xray_constants.py | 443 + poetry.lock | 6395 ++++++- pyproject.toml | 7 +- 777 files changed, 504594 insertions(+), 16 deletions(-) create mode 100644 aws_resource_validator/pydantic_generator.py create mode 100644 aws_resource_validator/pydantic_models/accessanalyzer_classes.py create mode 100644 aws_resource_validator/pydantic_models/accessanalyzer_constants.py create mode 100644 aws_resource_validator/pydantic_models/account_classes.py create mode 100644 aws_resource_validator/pydantic_models/account_constants.py create mode 100644 aws_resource_validator/pydantic_models/acm_classes.py create mode 100644 aws_resource_validator/pydantic_models/acm_constants.py create mode 100644 aws_resource_validator/pydantic_models/acm_pca_classes.py create mode 100644 aws_resource_validator/pydantic_models/acm_pca_constants.py create mode 100644 aws_resource_validator/pydantic_models/amp_classes.py create mode 100644 aws_resource_validator/pydantic_models/amp_constants.py create mode 100644 aws_resource_validator/pydantic_models/amplify_classes.py create mode 100644 aws_resource_validator/pydantic_models/amplify_constants.py create mode 100644 aws_resource_validator/pydantic_models/amplifybackend_classes.py create mode 100644 aws_resource_validator/pydantic_models/amplifybackend_constants.py create mode 100644 aws_resource_validator/pydantic_models/amplifyuibuilder_classes.py create mode 100644 aws_resource_validator/pydantic_models/amplifyuibuilder_constants.py create mode 100644 aws_resource_validator/pydantic_models/apigateway_classes.py create mode 100644 aws_resource_validator/pydantic_models/apigateway_constants.py create mode 100644 aws_resource_validator/pydantic_models/apigatewaymanagementapi_classes.py create mode 100644 aws_resource_validator/pydantic_models/apigatewaymanagementapi_constants.py create mode 100644 aws_resource_validator/pydantic_models/apigatewayv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/apigatewayv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/appconfig_classes.py create mode 100644 aws_resource_validator/pydantic_models/appconfig_constants.py create mode 100644 aws_resource_validator/pydantic_models/appconfigdata_classes.py create mode 100644 aws_resource_validator/pydantic_models/appconfigdata_constants.py create mode 100644 aws_resource_validator/pydantic_models/appfabric_classes.py create mode 100644 aws_resource_validator/pydantic_models/appfabric_constants.py create mode 100644 aws_resource_validator/pydantic_models/appflow_classes.py create mode 100644 aws_resource_validator/pydantic_models/appflow_constants.py create mode 100644 aws_resource_validator/pydantic_models/appintegrations_classes.py create mode 100644 aws_resource_validator/pydantic_models/appintegrations_constants.py create mode 100644 aws_resource_validator/pydantic_models/application_autoscaling_classes.py create mode 100644 aws_resource_validator/pydantic_models/application_autoscaling_constants.py create mode 100644 aws_resource_validator/pydantic_models/application_insights_classes.py create mode 100644 aws_resource_validator/pydantic_models/application_insights_constants.py create mode 100644 aws_resource_validator/pydantic_models/application_signals_classes.py create mode 100644 aws_resource_validator/pydantic_models/application_signals_constants.py create mode 100644 aws_resource_validator/pydantic_models/applicationcostprofiler_classes.py create mode 100644 aws_resource_validator/pydantic_models/applicationcostprofiler_constants.py create mode 100644 aws_resource_validator/pydantic_models/appmesh_classes.py create mode 100644 aws_resource_validator/pydantic_models/appmesh_constants.py create mode 100644 aws_resource_validator/pydantic_models/apprunner_classes.py create mode 100644 aws_resource_validator/pydantic_models/apprunner_constants.py create mode 100644 aws_resource_validator/pydantic_models/appstream_classes.py create mode 100644 aws_resource_validator/pydantic_models/appstream_constants.py create mode 100644 aws_resource_validator/pydantic_models/appsync_classes.py create mode 100644 aws_resource_validator/pydantic_models/appsync_constants.py create mode 100644 aws_resource_validator/pydantic_models/apptest_classes.py create mode 100644 aws_resource_validator/pydantic_models/apptest_constants.py create mode 100644 aws_resource_validator/pydantic_models/arc_zonal_shift_classes.py create mode 100644 aws_resource_validator/pydantic_models/arc_zonal_shift_constants.py create mode 100644 aws_resource_validator/pydantic_models/artifact_classes.py create mode 100644 aws_resource_validator/pydantic_models/artifact_constants.py create mode 100644 aws_resource_validator/pydantic_models/athena_classes.py create mode 100644 aws_resource_validator/pydantic_models/athena_constants.py create mode 100644 aws_resource_validator/pydantic_models/auditmanager_classes.py create mode 100644 aws_resource_validator/pydantic_models/auditmanager_constants.py create mode 100644 aws_resource_validator/pydantic_models/autoscaling_classes.py create mode 100644 aws_resource_validator/pydantic_models/autoscaling_constants.py create mode 100644 aws_resource_validator/pydantic_models/autoscaling_plans_classes.py create mode 100644 aws_resource_validator/pydantic_models/autoscaling_plans_constants.py create mode 100644 aws_resource_validator/pydantic_models/b2bi_classes.py create mode 100644 aws_resource_validator/pydantic_models/b2bi_constants.py create mode 100644 aws_resource_validator/pydantic_models/backup_classes.py create mode 100644 aws_resource_validator/pydantic_models/backup_constants.py create mode 100644 aws_resource_validator/pydantic_models/backup_gateway_classes.py create mode 100644 aws_resource_validator/pydantic_models/backup_gateway_constants.py create mode 100644 aws_resource_validator/pydantic_models/batch_classes.py create mode 100644 aws_resource_validator/pydantic_models/batch_constants.py create mode 100644 aws_resource_validator/pydantic_models/bcm_data_exports_classes.py create mode 100644 aws_resource_validator/pydantic_models/bcm_data_exports_constants.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_agent_classes.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_agent_constants.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_agent_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_agent_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_classes.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_constants.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/bedrock_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/billingconductor_classes.py create mode 100644 aws_resource_validator/pydantic_models/billingconductor_constants.py create mode 100644 aws_resource_validator/pydantic_models/braket_classes.py create mode 100644 aws_resource_validator/pydantic_models/braket_constants.py create mode 100644 aws_resource_validator/pydantic_models/budgets_classes.py create mode 100644 aws_resource_validator/pydantic_models/budgets_constants.py create mode 100644 aws_resource_validator/pydantic_models/ce_classes.py create mode 100644 aws_resource_validator/pydantic_models/ce_constants.py create mode 100644 aws_resource_validator/pydantic_models/chatbot_classes.py create mode 100644 aws_resource_validator/pydantic_models/chatbot_constants.py create mode 100644 aws_resource_validator/pydantic_models/chime_classes.py create mode 100644 aws_resource_validator/pydantic_models/chime_constants.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_identity_classes.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_identity_constants.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_classes.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_constants.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_meetings_classes.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_meetings_constants.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_messaging_classes.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_messaging_constants.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_voice_classes.py create mode 100644 aws_resource_validator/pydantic_models/chime_sdk_voice_constants.py create mode 100644 aws_resource_validator/pydantic_models/cleanrooms_classes.py create mode 100644 aws_resource_validator/pydantic_models/cleanrooms_constants.py create mode 100644 aws_resource_validator/pydantic_models/cleanroomsml_classes.py create mode 100644 aws_resource_validator/pydantic_models/cleanroomsml_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloud9_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloud9_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudcontrol_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudcontrol_constants.py create mode 100644 aws_resource_validator/pydantic_models/clouddirectory_classes.py create mode 100644 aws_resource_validator/pydantic_models/clouddirectory_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudformation_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudformation_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudfront_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudfront_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudhsm_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudhsm_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudhsmv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudhsmv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudsearch_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudsearch_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudsearchdomain_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudsearchdomain_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudtrail_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudtrail_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudtrail_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudtrail_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/cloudwatch_classes.py create mode 100644 aws_resource_validator/pydantic_models/cloudwatch_constants.py create mode 100644 aws_resource_validator/pydantic_models/codeartifact_classes.py create mode 100644 aws_resource_validator/pydantic_models/codeartifact_constants.py create mode 100644 aws_resource_validator/pydantic_models/codebuild_classes.py create mode 100644 aws_resource_validator/pydantic_models/codebuild_constants.py create mode 100644 aws_resource_validator/pydantic_models/codecatalyst_classes.py create mode 100644 aws_resource_validator/pydantic_models/codecatalyst_constants.py create mode 100644 aws_resource_validator/pydantic_models/codecommit_classes.py create mode 100644 aws_resource_validator/pydantic_models/codecommit_constants.py create mode 100644 aws_resource_validator/pydantic_models/codeconnections_classes.py create mode 100644 aws_resource_validator/pydantic_models/codeconnections_constants.py create mode 100644 aws_resource_validator/pydantic_models/codedeploy_classes.py create mode 100644 aws_resource_validator/pydantic_models/codedeploy_constants.py create mode 100644 aws_resource_validator/pydantic_models/codeguru_reviewer_classes.py create mode 100644 aws_resource_validator/pydantic_models/codeguru_reviewer_constants.py create mode 100644 aws_resource_validator/pydantic_models/codeguru_security_classes.py create mode 100644 aws_resource_validator/pydantic_models/codeguru_security_constants.py create mode 100644 aws_resource_validator/pydantic_models/codeguruprofiler_classes.py create mode 100644 aws_resource_validator/pydantic_models/codeguruprofiler_constants.py create mode 100644 aws_resource_validator/pydantic_models/codepipeline_classes.py create mode 100644 aws_resource_validator/pydantic_models/codepipeline_constants.py create mode 100644 aws_resource_validator/pydantic_models/codestar_classes.py create mode 100644 aws_resource_validator/pydantic_models/codestar_connections_classes.py create mode 100644 aws_resource_validator/pydantic_models/codestar_connections_constants.py create mode 100644 aws_resource_validator/pydantic_models/codestar_constants.py create mode 100644 aws_resource_validator/pydantic_models/codestar_notifications_classes.py create mode 100644 aws_resource_validator/pydantic_models/codestar_notifications_constants.py create mode 100644 aws_resource_validator/pydantic_models/cognito_identity_classes.py create mode 100644 aws_resource_validator/pydantic_models/cognito_identity_constants.py create mode 100644 aws_resource_validator/pydantic_models/cognito_idp_classes.py create mode 100644 aws_resource_validator/pydantic_models/cognito_idp_constants.py create mode 100644 aws_resource_validator/pydantic_models/cognito_sync_classes.py create mode 100644 aws_resource_validator/pydantic_models/cognito_sync_constants.py create mode 100644 aws_resource_validator/pydantic_models/comprehend_classes.py create mode 100644 aws_resource_validator/pydantic_models/comprehend_constants.py create mode 100644 aws_resource_validator/pydantic_models/comprehendmedical_classes.py create mode 100644 aws_resource_validator/pydantic_models/comprehendmedical_constants.py create mode 100644 aws_resource_validator/pydantic_models/compute_optimizer_classes.py create mode 100644 aws_resource_validator/pydantic_models/compute_optimizer_constants.py create mode 100644 aws_resource_validator/pydantic_models/config_classes.py create mode 100644 aws_resource_validator/pydantic_models/config_constants.py create mode 100644 aws_resource_validator/pydantic_models/connect_classes.py create mode 100644 aws_resource_validator/pydantic_models/connect_constants.py create mode 100644 aws_resource_validator/pydantic_models/connect_contact_lens_classes.py create mode 100644 aws_resource_validator/pydantic_models/connect_contact_lens_constants.py create mode 100644 aws_resource_validator/pydantic_models/connectcampaigns_classes.py create mode 100644 aws_resource_validator/pydantic_models/connectcampaigns_constants.py create mode 100644 aws_resource_validator/pydantic_models/connectcases_classes.py create mode 100644 aws_resource_validator/pydantic_models/connectcases_constants.py create mode 100644 aws_resource_validator/pydantic_models/connectparticipant_classes.py create mode 100644 aws_resource_validator/pydantic_models/connectparticipant_constants.py create mode 100644 aws_resource_validator/pydantic_models/controlcatalog_classes.py create mode 100644 aws_resource_validator/pydantic_models/controlcatalog_constants.py create mode 100644 aws_resource_validator/pydantic_models/controltower_classes.py create mode 100644 aws_resource_validator/pydantic_models/controltower_constants.py create mode 100644 aws_resource_validator/pydantic_models/cost_optimization_hub_classes.py create mode 100644 aws_resource_validator/pydantic_models/cost_optimization_hub_constants.py create mode 100644 aws_resource_validator/pydantic_models/cur_classes.py create mode 100644 aws_resource_validator/pydantic_models/cur_constants.py create mode 100644 aws_resource_validator/pydantic_models/customer_profiles_classes.py create mode 100644 aws_resource_validator/pydantic_models/customer_profiles_constants.py create mode 100644 aws_resource_validator/pydantic_models/databrew_classes.py create mode 100644 aws_resource_validator/pydantic_models/databrew_constants.py create mode 100644 aws_resource_validator/pydantic_models/dataexchange_classes.py create mode 100644 aws_resource_validator/pydantic_models/dataexchange_constants.py create mode 100644 aws_resource_validator/pydantic_models/datapipeline_classes.py create mode 100644 aws_resource_validator/pydantic_models/datapipeline_constants.py create mode 100644 aws_resource_validator/pydantic_models/datasync_classes.py create mode 100644 aws_resource_validator/pydantic_models/datasync_constants.py create mode 100644 aws_resource_validator/pydantic_models/datazone_classes.py create mode 100644 aws_resource_validator/pydantic_models/datazone_constants.py create mode 100644 aws_resource_validator/pydantic_models/dax_classes.py create mode 100644 aws_resource_validator/pydantic_models/dax_constants.py create mode 100644 aws_resource_validator/pydantic_models/deadline_classes.py create mode 100644 aws_resource_validator/pydantic_models/deadline_constants.py create mode 100644 aws_resource_validator/pydantic_models/detective_classes.py create mode 100644 aws_resource_validator/pydantic_models/detective_constants.py create mode 100644 aws_resource_validator/pydantic_models/devicefarm_classes.py create mode 100644 aws_resource_validator/pydantic_models/devicefarm_constants.py create mode 100644 aws_resource_validator/pydantic_models/devops_guru_classes.py create mode 100644 aws_resource_validator/pydantic_models/devops_guru_constants.py create mode 100644 aws_resource_validator/pydantic_models/directconnect_classes.py create mode 100644 aws_resource_validator/pydantic_models/directconnect_constants.py create mode 100644 aws_resource_validator/pydantic_models/discovery_classes.py create mode 100644 aws_resource_validator/pydantic_models/discovery_constants.py create mode 100644 aws_resource_validator/pydantic_models/dlm_classes.py create mode 100644 aws_resource_validator/pydantic_models/dlm_constants.py create mode 100644 aws_resource_validator/pydantic_models/dms_classes.py create mode 100644 aws_resource_validator/pydantic_models/dms_constants.py create mode 100644 aws_resource_validator/pydantic_models/docdb_classes.py create mode 100644 aws_resource_validator/pydantic_models/docdb_constants.py create mode 100644 aws_resource_validator/pydantic_models/docdb_elastic_classes.py create mode 100644 aws_resource_validator/pydantic_models/docdb_elastic_constants.py create mode 100644 aws_resource_validator/pydantic_models/drs_classes.py create mode 100644 aws_resource_validator/pydantic_models/drs_constants.py create mode 100644 aws_resource_validator/pydantic_models/ds_classes.py create mode 100644 aws_resource_validator/pydantic_models/ds_constants.py create mode 100644 aws_resource_validator/pydantic_models/dynamodb_classes.py create mode 100644 aws_resource_validator/pydantic_models/dynamodb_constants.py create mode 100644 aws_resource_validator/pydantic_models/dynamodbstreams_classes.py create mode 100644 aws_resource_validator/pydantic_models/dynamodbstreams_constants.py create mode 100644 aws_resource_validator/pydantic_models/ebs_classes.py create mode 100644 aws_resource_validator/pydantic_models/ebs_constants.py create mode 100644 aws_resource_validator/pydantic_models/ec2_classes.py create mode 100644 aws_resource_validator/pydantic_models/ec2_constants.py create mode 100644 aws_resource_validator/pydantic_models/ec2_instance_connect_classes.py create mode 100644 aws_resource_validator/pydantic_models/ec2_instance_connect_constants.py create mode 100644 aws_resource_validator/pydantic_models/ecr_classes.py create mode 100644 aws_resource_validator/pydantic_models/ecr_constants.py create mode 100644 aws_resource_validator/pydantic_models/ecr_public_classes.py create mode 100644 aws_resource_validator/pydantic_models/ecr_public_constants.py create mode 100644 aws_resource_validator/pydantic_models/ecs_classes.py create mode 100644 aws_resource_validator/pydantic_models/ecs_constants.py create mode 100644 aws_resource_validator/pydantic_models/efs_classes.py create mode 100644 aws_resource_validator/pydantic_models/efs_constants.py create mode 100644 aws_resource_validator/pydantic_models/eks_auth_classes.py create mode 100644 aws_resource_validator/pydantic_models/eks_auth_constants.py create mode 100644 aws_resource_validator/pydantic_models/eks_classes.py create mode 100644 aws_resource_validator/pydantic_models/eks_constants.py create mode 100644 aws_resource_validator/pydantic_models/elastic_inference_classes.py create mode 100644 aws_resource_validator/pydantic_models/elastic_inference_constants.py create mode 100644 aws_resource_validator/pydantic_models/elasticache_classes.py create mode 100644 aws_resource_validator/pydantic_models/elasticache_constants.py create mode 100644 aws_resource_validator/pydantic_models/elasticbeanstalk_classes.py create mode 100644 aws_resource_validator/pydantic_models/elasticbeanstalk_constants.py create mode 100644 aws_resource_validator/pydantic_models/elastictranscoder_classes.py create mode 100644 aws_resource_validator/pydantic_models/elastictranscoder_constants.py create mode 100644 aws_resource_validator/pydantic_models/elb_classes.py create mode 100644 aws_resource_validator/pydantic_models/elb_constants.py create mode 100644 aws_resource_validator/pydantic_models/elbv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/elbv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/emr_classes.py create mode 100644 aws_resource_validator/pydantic_models/emr_constants.py create mode 100644 aws_resource_validator/pydantic_models/emr_containers_classes.py create mode 100644 aws_resource_validator/pydantic_models/emr_containers_constants.py create mode 100644 aws_resource_validator/pydantic_models/emr_serverless_classes.py create mode 100644 aws_resource_validator/pydantic_models/emr_serverless_constants.py create mode 100644 aws_resource_validator/pydantic_models/entityresolution_classes.py create mode 100644 aws_resource_validator/pydantic_models/entityresolution_constants.py create mode 100644 aws_resource_validator/pydantic_models/es_classes.py create mode 100644 aws_resource_validator/pydantic_models/es_constants.py create mode 100644 aws_resource_validator/pydantic_models/events_classes.py create mode 100644 aws_resource_validator/pydantic_models/events_constants.py create mode 100644 aws_resource_validator/pydantic_models/evidently_classes.py create mode 100644 aws_resource_validator/pydantic_models/evidently_constants.py create mode 100644 aws_resource_validator/pydantic_models/finspace_classes.py create mode 100644 aws_resource_validator/pydantic_models/finspace_constants.py create mode 100644 aws_resource_validator/pydantic_models/finspace_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/finspace_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/firehose_classes.py create mode 100644 aws_resource_validator/pydantic_models/firehose_constants.py create mode 100644 aws_resource_validator/pydantic_models/fis_classes.py create mode 100644 aws_resource_validator/pydantic_models/fis_constants.py create mode 100644 aws_resource_validator/pydantic_models/fms_classes.py create mode 100644 aws_resource_validator/pydantic_models/fms_constants.py create mode 100644 aws_resource_validator/pydantic_models/forecast_classes.py create mode 100644 aws_resource_validator/pydantic_models/forecast_constants.py create mode 100644 aws_resource_validator/pydantic_models/forecastquery_classes.py create mode 100644 aws_resource_validator/pydantic_models/forecastquery_constants.py create mode 100644 aws_resource_validator/pydantic_models/frauddetector_classes.py create mode 100644 aws_resource_validator/pydantic_models/frauddetector_constants.py create mode 100644 aws_resource_validator/pydantic_models/freetier_classes.py create mode 100644 aws_resource_validator/pydantic_models/freetier_constants.py create mode 100644 aws_resource_validator/pydantic_models/fsx_classes.py create mode 100644 aws_resource_validator/pydantic_models/fsx_constants.py create mode 100644 aws_resource_validator/pydantic_models/gamelift_classes.py create mode 100644 aws_resource_validator/pydantic_models/gamelift_constants.py create mode 100644 aws_resource_validator/pydantic_models/glacier_classes.py create mode 100644 aws_resource_validator/pydantic_models/glacier_constants.py create mode 100644 aws_resource_validator/pydantic_models/globalaccelerator_classes.py create mode 100644 aws_resource_validator/pydantic_models/globalaccelerator_constants.py create mode 100644 aws_resource_validator/pydantic_models/glue_classes.py create mode 100644 aws_resource_validator/pydantic_models/glue_constants.py create mode 100644 aws_resource_validator/pydantic_models/grafana_classes.py create mode 100644 aws_resource_validator/pydantic_models/grafana_constants.py create mode 100644 aws_resource_validator/pydantic_models/greengrass_classes.py create mode 100644 aws_resource_validator/pydantic_models/greengrass_constants.py create mode 100644 aws_resource_validator/pydantic_models/greengrassv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/greengrassv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/groundstation_classes.py create mode 100644 aws_resource_validator/pydantic_models/groundstation_constants.py create mode 100644 aws_resource_validator/pydantic_models/guardduty_classes.py create mode 100644 aws_resource_validator/pydantic_models/guardduty_constants.py create mode 100644 aws_resource_validator/pydantic_models/health_classes.py create mode 100644 aws_resource_validator/pydantic_models/health_constants.py create mode 100644 aws_resource_validator/pydantic_models/healthlake_classes.py create mode 100644 aws_resource_validator/pydantic_models/healthlake_constants.py create mode 100644 aws_resource_validator/pydantic_models/iam_classes.py create mode 100644 aws_resource_validator/pydantic_models/iam_constants.py create mode 100644 aws_resource_validator/pydantic_models/identitystore_classes.py create mode 100644 aws_resource_validator/pydantic_models/identitystore_constants.py create mode 100644 aws_resource_validator/pydantic_models/imagebuilder_classes.py create mode 100644 aws_resource_validator/pydantic_models/imagebuilder_constants.py create mode 100644 aws_resource_validator/pydantic_models/importexport_classes.py create mode 100644 aws_resource_validator/pydantic_models/importexport_constants.py create mode 100644 aws_resource_validator/pydantic_models/inspector2_classes.py create mode 100644 aws_resource_validator/pydantic_models/inspector2_constants.py create mode 100644 aws_resource_validator/pydantic_models/inspector_classes.py create mode 100644 aws_resource_validator/pydantic_models/inspector_constants.py create mode 100644 aws_resource_validator/pydantic_models/inspector_scan_classes.py create mode 100644 aws_resource_validator/pydantic_models/inspector_scan_constants.py create mode 100644 aws_resource_validator/pydantic_models/internetmonitor_classes.py create mode 100644 aws_resource_validator/pydantic_models/internetmonitor_constants.py create mode 100644 aws_resource_validator/pydantic_models/iot1click_devices_classes.py create mode 100644 aws_resource_validator/pydantic_models/iot1click_devices_constants.py create mode 100644 aws_resource_validator/pydantic_models/iot1click_projects_classes.py create mode 100644 aws_resource_validator/pydantic_models/iot1click_projects_constants.py create mode 100644 aws_resource_validator/pydantic_models/iot_classes.py create mode 100644 aws_resource_validator/pydantic_models/iot_constants.py create mode 100644 aws_resource_validator/pydantic_models/iot_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/iot_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/iot_jobs_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/iot_jobs_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotanalytics_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotanalytics_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotdeviceadvisor_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotdeviceadvisor_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotevents_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotevents_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotevents_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotevents_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotfleethub_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotfleethub_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotfleetwise_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotfleetwise_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotsecuretunneling_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotsecuretunneling_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotsitewise_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotsitewise_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotthingsgraph_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotthingsgraph_constants.py create mode 100644 aws_resource_validator/pydantic_models/iottwinmaker_classes.py create mode 100644 aws_resource_validator/pydantic_models/iottwinmaker_constants.py create mode 100644 aws_resource_validator/pydantic_models/iotwireless_classes.py create mode 100644 aws_resource_validator/pydantic_models/iotwireless_constants.py create mode 100644 aws_resource_validator/pydantic_models/ivs_classes.py create mode 100644 aws_resource_validator/pydantic_models/ivs_constants.py create mode 100644 aws_resource_validator/pydantic_models/ivs_realtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/ivs_realtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/ivschat_classes.py create mode 100644 aws_resource_validator/pydantic_models/ivschat_constants.py create mode 100644 aws_resource_validator/pydantic_models/kafka_classes.py create mode 100644 aws_resource_validator/pydantic_models/kafka_constants.py create mode 100644 aws_resource_validator/pydantic_models/kafkaconnect_classes.py create mode 100644 aws_resource_validator/pydantic_models/kafkaconnect_constants.py create mode 100644 aws_resource_validator/pydantic_models/kendra_classes.py create mode 100644 aws_resource_validator/pydantic_models/kendra_constants.py create mode 100644 aws_resource_validator/pydantic_models/kendra_ranking_classes.py create mode 100644 aws_resource_validator/pydantic_models/kendra_ranking_constants.py create mode 100644 aws_resource_validator/pydantic_models/keyspaces_classes.py create mode 100644 aws_resource_validator/pydantic_models/keyspaces_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_archived_media_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_archived_media_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_media_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_media_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_signaling_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_signaling_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesisanalytics_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesisanalytics_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesisanalyticsv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesisanalyticsv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/kinesisvideo_classes.py create mode 100644 aws_resource_validator/pydantic_models/kinesisvideo_constants.py create mode 100644 aws_resource_validator/pydantic_models/kms_classes.py create mode 100644 aws_resource_validator/pydantic_models/kms_constants.py create mode 100644 aws_resource_validator/pydantic_models/lakeformation_classes.py create mode 100644 aws_resource_validator/pydantic_models/lakeformation_constants.py create mode 100644 aws_resource_validator/pydantic_models/lambda_classes.py create mode 100644 aws_resource_validator/pydantic_models/lambda_constants.py create mode 100644 aws_resource_validator/pydantic_models/launch_wizard_classes.py create mode 100644 aws_resource_validator/pydantic_models/launch_wizard_constants.py create mode 100644 aws_resource_validator/pydantic_models/lex_models_classes.py create mode 100644 aws_resource_validator/pydantic_models/lex_models_constants.py create mode 100644 aws_resource_validator/pydantic_models/lex_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/lex_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/lexv2_models_classes.py create mode 100644 aws_resource_validator/pydantic_models/lexv2_models_constants.py create mode 100644 aws_resource_validator/pydantic_models/lexv2_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/lexv2_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/license_manager_classes.py create mode 100644 aws_resource_validator/pydantic_models/license_manager_constants.py create mode 100644 aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_classes.py create mode 100644 aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_constants.py create mode 100644 aws_resource_validator/pydantic_models/license_manager_user_subscriptions_classes.py create mode 100644 aws_resource_validator/pydantic_models/license_manager_user_subscriptions_constants.py create mode 100644 aws_resource_validator/pydantic_models/lightsail_classes.py create mode 100644 aws_resource_validator/pydantic_models/lightsail_constants.py create mode 100644 aws_resource_validator/pydantic_models/location_classes.py create mode 100644 aws_resource_validator/pydantic_models/location_constants.py create mode 100644 aws_resource_validator/pydantic_models/logs_classes.py create mode 100644 aws_resource_validator/pydantic_models/logs_constants.py create mode 100644 aws_resource_validator/pydantic_models/lookoutequipment_classes.py create mode 100644 aws_resource_validator/pydantic_models/lookoutequipment_constants.py create mode 100644 aws_resource_validator/pydantic_models/lookoutmetrics_classes.py create mode 100644 aws_resource_validator/pydantic_models/lookoutmetrics_constants.py create mode 100644 aws_resource_validator/pydantic_models/lookoutvision_classes.py create mode 100644 aws_resource_validator/pydantic_models/lookoutvision_constants.py create mode 100644 aws_resource_validator/pydantic_models/m2_classes.py create mode 100644 aws_resource_validator/pydantic_models/m2_constants.py create mode 100644 aws_resource_validator/pydantic_models/machinelearning_classes.py create mode 100644 aws_resource_validator/pydantic_models/machinelearning_constants.py create mode 100644 aws_resource_validator/pydantic_models/macie2_classes.py create mode 100644 aws_resource_validator/pydantic_models/macie2_constants.py create mode 100644 aws_resource_validator/pydantic_models/mailmanager_classes.py create mode 100644 aws_resource_validator/pydantic_models/mailmanager_constants.py create mode 100644 aws_resource_validator/pydantic_models/managedblockchain_classes.py create mode 100644 aws_resource_validator/pydantic_models/managedblockchain_constants.py create mode 100644 aws_resource_validator/pydantic_models/managedblockchain_query_classes.py create mode 100644 aws_resource_validator/pydantic_models/managedblockchain_query_constants.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_agreement_classes.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_agreement_constants.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_catalog_classes.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_catalog_constants.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_deployment_classes.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_deployment_constants.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_entitlement_classes.py create mode 100644 aws_resource_validator/pydantic_models/marketplace_entitlement_constants.py create mode 100644 aws_resource_validator/pydantic_models/marketplacecommerceanalytics_classes.py create mode 100644 aws_resource_validator/pydantic_models/marketplacecommerceanalytics_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediaconnect_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediaconnect_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediaconvert_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediaconvert_constants.py create mode 100644 aws_resource_validator/pydantic_models/medialive_classes.py create mode 100644 aws_resource_validator/pydantic_models/medialive_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediapackage_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediapackage_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediapackage_vod_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediapackage_vod_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediapackagev2_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediapackagev2_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediastore_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediastore_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediastore_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediastore_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/mediatailor_classes.py create mode 100644 aws_resource_validator/pydantic_models/mediatailor_constants.py create mode 100644 aws_resource_validator/pydantic_models/medical_imaging_classes.py create mode 100644 aws_resource_validator/pydantic_models/medical_imaging_constants.py create mode 100644 aws_resource_validator/pydantic_models/memorydb_classes.py create mode 100644 aws_resource_validator/pydantic_models/memorydb_constants.py create mode 100644 aws_resource_validator/pydantic_models/meteringmarketplace_classes.py create mode 100644 aws_resource_validator/pydantic_models/meteringmarketplace_constants.py create mode 100644 aws_resource_validator/pydantic_models/mgh_classes.py create mode 100644 aws_resource_validator/pydantic_models/mgh_constants.py create mode 100644 aws_resource_validator/pydantic_models/mgn_classes.py create mode 100644 aws_resource_validator/pydantic_models/mgn_constants.py create mode 100644 aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_classes.py create mode 100644 aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_constants.py create mode 100644 aws_resource_validator/pydantic_models/migrationhub_config_classes.py create mode 100644 aws_resource_validator/pydantic_models/migrationhub_config_constants.py create mode 100644 aws_resource_validator/pydantic_models/migrationhuborchestrator_classes.py create mode 100644 aws_resource_validator/pydantic_models/migrationhuborchestrator_constants.py create mode 100644 aws_resource_validator/pydantic_models/migrationhubstrategy_classes.py create mode 100644 aws_resource_validator/pydantic_models/migrationhubstrategy_constants.py create mode 100644 aws_resource_validator/pydantic_models/mobile_classes.py create mode 100644 aws_resource_validator/pydantic_models/mobile_constants.py create mode 100644 aws_resource_validator/pydantic_models/mq_classes.py create mode 100644 aws_resource_validator/pydantic_models/mq_constants.py create mode 100644 aws_resource_validator/pydantic_models/mturk_classes.py create mode 100644 aws_resource_validator/pydantic_models/mturk_constants.py create mode 100644 aws_resource_validator/pydantic_models/mwaa_classes.py create mode 100644 aws_resource_validator/pydantic_models/mwaa_constants.py create mode 100644 aws_resource_validator/pydantic_models/neptune_classes.py create mode 100644 aws_resource_validator/pydantic_models/neptune_constants.py create mode 100644 aws_resource_validator/pydantic_models/neptune_graph_classes.py create mode 100644 aws_resource_validator/pydantic_models/neptune_graph_constants.py create mode 100644 aws_resource_validator/pydantic_models/neptunedata_classes.py create mode 100644 aws_resource_validator/pydantic_models/neptunedata_constants.py create mode 100644 aws_resource_validator/pydantic_models/network_firewall_classes.py create mode 100644 aws_resource_validator/pydantic_models/network_firewall_constants.py create mode 100644 aws_resource_validator/pydantic_models/networkmanager_classes.py create mode 100644 aws_resource_validator/pydantic_models/networkmanager_constants.py create mode 100644 aws_resource_validator/pydantic_models/networkmonitor_classes.py create mode 100644 aws_resource_validator/pydantic_models/networkmonitor_constants.py create mode 100644 aws_resource_validator/pydantic_models/nimble_classes.py create mode 100644 aws_resource_validator/pydantic_models/nimble_constants.py create mode 100644 aws_resource_validator/pydantic_models/oam_classes.py create mode 100644 aws_resource_validator/pydantic_models/oam_constants.py create mode 100644 aws_resource_validator/pydantic_models/omics_classes.py create mode 100644 aws_resource_validator/pydantic_models/omics_constants.py create mode 100644 aws_resource_validator/pydantic_models/opensearch_classes.py create mode 100644 aws_resource_validator/pydantic_models/opensearch_constants.py create mode 100644 aws_resource_validator/pydantic_models/opensearchserverless_classes.py create mode 100644 aws_resource_validator/pydantic_models/opensearchserverless_constants.py create mode 100644 aws_resource_validator/pydantic_models/opsworks_classes.py create mode 100644 aws_resource_validator/pydantic_models/opsworks_constants.py create mode 100644 aws_resource_validator/pydantic_models/opsworkscm_classes.py create mode 100644 aws_resource_validator/pydantic_models/opsworkscm_constants.py create mode 100644 aws_resource_validator/pydantic_models/organizations_classes.py create mode 100644 aws_resource_validator/pydantic_models/organizations_constants.py create mode 100644 aws_resource_validator/pydantic_models/osis_classes.py create mode 100644 aws_resource_validator/pydantic_models/osis_constants.py create mode 100644 aws_resource_validator/pydantic_models/outposts_classes.py create mode 100644 aws_resource_validator/pydantic_models/outposts_constants.py create mode 100644 aws_resource_validator/pydantic_models/panorama_classes.py create mode 100644 aws_resource_validator/pydantic_models/panorama_constants.py create mode 100644 aws_resource_validator/pydantic_models/payment_cryptography_classes.py create mode 100644 aws_resource_validator/pydantic_models/payment_cryptography_constants.py create mode 100644 aws_resource_validator/pydantic_models/payment_cryptography_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/payment_cryptography_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/pca_connector_ad_classes.py create mode 100644 aws_resource_validator/pydantic_models/pca_connector_ad_constants.py create mode 100644 aws_resource_validator/pydantic_models/pca_connector_scep_classes.py create mode 100644 aws_resource_validator/pydantic_models/pca_connector_scep_constants.py create mode 100644 aws_resource_validator/pydantic_models/personalize_classes.py create mode 100644 aws_resource_validator/pydantic_models/personalize_constants.py create mode 100644 aws_resource_validator/pydantic_models/personalize_events_classes.py create mode 100644 aws_resource_validator/pydantic_models/personalize_events_constants.py create mode 100644 aws_resource_validator/pydantic_models/personalize_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/personalize_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/pi_classes.py create mode 100644 aws_resource_validator/pydantic_models/pi_constants.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_classes.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_constants.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_email_classes.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_email_constants.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_sms_voice_classes.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_sms_voice_constants.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_classes.py create mode 100644 aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_constants.py create mode 100644 aws_resource_validator/pydantic_models/pipes_classes.py create mode 100644 aws_resource_validator/pydantic_models/pipes_constants.py create mode 100644 aws_resource_validator/pydantic_models/polly_classes.py create mode 100644 aws_resource_validator/pydantic_models/polly_constants.py create mode 100644 aws_resource_validator/pydantic_models/pricing_classes.py create mode 100644 aws_resource_validator/pydantic_models/pricing_constants.py create mode 100644 aws_resource_validator/pydantic_models/privatenetworks_classes.py create mode 100644 aws_resource_validator/pydantic_models/privatenetworks_constants.py create mode 100644 aws_resource_validator/pydantic_models/proton_classes.py create mode 100644 aws_resource_validator/pydantic_models/proton_constants.py create mode 100644 aws_resource_validator/pydantic_models/qapps_classes.py create mode 100644 aws_resource_validator/pydantic_models/qapps_constants.py create mode 100644 aws_resource_validator/pydantic_models/qbusiness_classes.py create mode 100644 aws_resource_validator/pydantic_models/qbusiness_constants.py create mode 100644 aws_resource_validator/pydantic_models/qconnect_classes.py create mode 100644 aws_resource_validator/pydantic_models/qconnect_constants.py create mode 100644 aws_resource_validator/pydantic_models/qldb_classes.py create mode 100644 aws_resource_validator/pydantic_models/qldb_constants.py create mode 100644 aws_resource_validator/pydantic_models/qldb_session_classes.py create mode 100644 aws_resource_validator/pydantic_models/qldb_session_constants.py create mode 100644 aws_resource_validator/pydantic_models/quicksight_classes.py create mode 100644 aws_resource_validator/pydantic_models/quicksight_constants.py create mode 100644 aws_resource_validator/pydantic_models/ram_classes.py create mode 100644 aws_resource_validator/pydantic_models/ram_constants.py create mode 100644 aws_resource_validator/pydantic_models/rbin_classes.py create mode 100644 aws_resource_validator/pydantic_models/rbin_constants.py create mode 100644 aws_resource_validator/pydantic_models/rds_classes.py create mode 100644 aws_resource_validator/pydantic_models/rds_constants.py create mode 100644 aws_resource_validator/pydantic_models/rds_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/rds_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/redshift_classes.py create mode 100644 aws_resource_validator/pydantic_models/redshift_constants.py create mode 100644 aws_resource_validator/pydantic_models/redshift_data_classes.py create mode 100644 aws_resource_validator/pydantic_models/redshift_data_constants.py create mode 100644 aws_resource_validator/pydantic_models/redshift_serverless_classes.py create mode 100644 aws_resource_validator/pydantic_models/redshift_serverless_constants.py create mode 100644 aws_resource_validator/pydantic_models/rekognition_classes.py create mode 100644 aws_resource_validator/pydantic_models/rekognition_constants.py create mode 100644 aws_resource_validator/pydantic_models/repostspace_classes.py create mode 100644 aws_resource_validator/pydantic_models/repostspace_constants.py create mode 100644 aws_resource_validator/pydantic_models/resiliencehub_classes.py create mode 100644 aws_resource_validator/pydantic_models/resiliencehub_constants.py create mode 100644 aws_resource_validator/pydantic_models/resource_explorer_2_classes.py create mode 100644 aws_resource_validator/pydantic_models/resource_explorer_2_constants.py create mode 100644 aws_resource_validator/pydantic_models/resource_groups_classes.py create mode 100644 aws_resource_validator/pydantic_models/resource_groups_constants.py create mode 100644 aws_resource_validator/pydantic_models/resourcegroupstaggingapi_classes.py create mode 100644 aws_resource_validator/pydantic_models/resourcegroupstaggingapi_constants.py create mode 100644 aws_resource_validator/pydantic_models/robomaker_classes.py create mode 100644 aws_resource_validator/pydantic_models/robomaker_constants.py create mode 100644 aws_resource_validator/pydantic_models/rolesanywhere_classes.py create mode 100644 aws_resource_validator/pydantic_models/rolesanywhere_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53_recovery_cluster_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53_recovery_cluster_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53_recovery_control_config_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53_recovery_control_config_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53_recovery_readiness_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53_recovery_readiness_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53domains_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53domains_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53profiles_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53profiles_constants.py create mode 100644 aws_resource_validator/pydantic_models/route53resolver_classes.py create mode 100644 aws_resource_validator/pydantic_models/route53resolver_constants.py create mode 100644 aws_resource_validator/pydantic_models/rum_classes.py create mode 100644 aws_resource_validator/pydantic_models/rum_constants.py create mode 100644 aws_resource_validator/pydantic_models/s3_classes.py create mode 100644 aws_resource_validator/pydantic_models/s3_constants.py create mode 100644 aws_resource_validator/pydantic_models/s3control_classes.py create mode 100644 aws_resource_validator/pydantic_models/s3control_constants.py create mode 100644 aws_resource_validator/pydantic_models/s3outposts_classes.py create mode 100644 aws_resource_validator/pydantic_models/s3outposts_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_edge_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_edge_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_geospatial_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_geospatial_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_metrics_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_metrics_constants.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_runtime_classes.py create mode 100644 aws_resource_validator/pydantic_models/sagemaker_runtime_constants.py create mode 100644 aws_resource_validator/pydantic_models/savingsplans_classes.py create mode 100644 aws_resource_validator/pydantic_models/savingsplans_constants.py create mode 100644 aws_resource_validator/pydantic_models/scheduler_classes.py create mode 100644 aws_resource_validator/pydantic_models/scheduler_constants.py create mode 100644 aws_resource_validator/pydantic_models/schemas_classes.py create mode 100644 aws_resource_validator/pydantic_models/schemas_constants.py create mode 100644 aws_resource_validator/pydantic_models/sdb_classes.py create mode 100644 aws_resource_validator/pydantic_models/sdb_constants.py create mode 100644 aws_resource_validator/pydantic_models/secretsmanager_classes.py create mode 100644 aws_resource_validator/pydantic_models/secretsmanager_constants.py create mode 100644 aws_resource_validator/pydantic_models/securityhub_classes.py create mode 100644 aws_resource_validator/pydantic_models/securityhub_constants.py create mode 100644 aws_resource_validator/pydantic_models/securitylake_classes.py create mode 100644 aws_resource_validator/pydantic_models/securitylake_constants.py create mode 100644 aws_resource_validator/pydantic_models/serverlessrepo_classes.py create mode 100644 aws_resource_validator/pydantic_models/serverlessrepo_constants.py create mode 100644 aws_resource_validator/pydantic_models/service_quotas_classes.py create mode 100644 aws_resource_validator/pydantic_models/service_quotas_constants.py create mode 100644 aws_resource_validator/pydantic_models/servicecatalog_appregistry_classes.py create mode 100644 aws_resource_validator/pydantic_models/servicecatalog_appregistry_constants.py create mode 100644 aws_resource_validator/pydantic_models/servicecatalog_classes.py create mode 100644 aws_resource_validator/pydantic_models/servicecatalog_constants.py create mode 100644 aws_resource_validator/pydantic_models/servicediscovery_classes.py create mode 100644 aws_resource_validator/pydantic_models/servicediscovery_constants.py create mode 100644 aws_resource_validator/pydantic_models/ses_classes.py create mode 100644 aws_resource_validator/pydantic_models/ses_constants.py create mode 100644 aws_resource_validator/pydantic_models/sesv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/sesv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/shield_classes.py create mode 100644 aws_resource_validator/pydantic_models/shield_constants.py create mode 100644 aws_resource_validator/pydantic_models/signer_classes.py create mode 100644 aws_resource_validator/pydantic_models/signer_constants.py create mode 100644 aws_resource_validator/pydantic_models/simspaceweaver_classes.py create mode 100644 aws_resource_validator/pydantic_models/simspaceweaver_constants.py create mode 100644 aws_resource_validator/pydantic_models/sms_classes.py create mode 100644 aws_resource_validator/pydantic_models/sms_constants.py create mode 100644 aws_resource_validator/pydantic_models/sms_voice_classes.py create mode 100644 aws_resource_validator/pydantic_models/sms_voice_constants.py create mode 100644 aws_resource_validator/pydantic_models/snow_device_management_classes.py create mode 100644 aws_resource_validator/pydantic_models/snow_device_management_constants.py create mode 100644 aws_resource_validator/pydantic_models/snowball_classes.py create mode 100644 aws_resource_validator/pydantic_models/snowball_constants.py create mode 100644 aws_resource_validator/pydantic_models/sns_classes.py create mode 100644 aws_resource_validator/pydantic_models/sns_constants.py create mode 100644 aws_resource_validator/pydantic_models/sqs_classes.py create mode 100644 aws_resource_validator/pydantic_models/sqs_constants.py create mode 100644 aws_resource_validator/pydantic_models/ssm_classes.py create mode 100644 aws_resource_validator/pydantic_models/ssm_constants.py create mode 100644 aws_resource_validator/pydantic_models/ssm_contacts_classes.py create mode 100644 aws_resource_validator/pydantic_models/ssm_contacts_constants.py create mode 100644 aws_resource_validator/pydantic_models/ssm_incidents_classes.py create mode 100644 aws_resource_validator/pydantic_models/ssm_incidents_constants.py create mode 100644 aws_resource_validator/pydantic_models/ssm_sap_classes.py create mode 100644 aws_resource_validator/pydantic_models/ssm_sap_constants.py create mode 100644 aws_resource_validator/pydantic_models/sso_admin_classes.py create mode 100644 aws_resource_validator/pydantic_models/sso_admin_constants.py create mode 100644 aws_resource_validator/pydantic_models/sso_classes.py create mode 100644 aws_resource_validator/pydantic_models/sso_constants.py create mode 100644 aws_resource_validator/pydantic_models/sso_oidc_classes.py create mode 100644 aws_resource_validator/pydantic_models/sso_oidc_constants.py create mode 100644 aws_resource_validator/pydantic_models/stepfunctions_classes.py create mode 100644 aws_resource_validator/pydantic_models/stepfunctions_constants.py create mode 100644 aws_resource_validator/pydantic_models/storagegateway_classes.py create mode 100644 aws_resource_validator/pydantic_models/storagegateway_constants.py create mode 100644 aws_resource_validator/pydantic_models/sts_classes.py create mode 100644 aws_resource_validator/pydantic_models/sts_constants.py create mode 100644 aws_resource_validator/pydantic_models/supplychain_classes.py create mode 100644 aws_resource_validator/pydantic_models/supplychain_constants.py create mode 100644 aws_resource_validator/pydantic_models/support_app_classes.py create mode 100644 aws_resource_validator/pydantic_models/support_app_constants.py create mode 100644 aws_resource_validator/pydantic_models/support_classes.py create mode 100644 aws_resource_validator/pydantic_models/support_constants.py create mode 100644 aws_resource_validator/pydantic_models/swf_classes.py create mode 100644 aws_resource_validator/pydantic_models/swf_constants.py create mode 100644 aws_resource_validator/pydantic_models/synthetics_classes.py create mode 100644 aws_resource_validator/pydantic_models/synthetics_constants.py create mode 100644 aws_resource_validator/pydantic_models/taxsettings_classes.py create mode 100644 aws_resource_validator/pydantic_models/taxsettings_constants.py create mode 100644 aws_resource_validator/pydantic_models/textract_classes.py create mode 100644 aws_resource_validator/pydantic_models/textract_constants.py create mode 100644 aws_resource_validator/pydantic_models/timestream_influxdb_classes.py create mode 100644 aws_resource_validator/pydantic_models/timestream_influxdb_constants.py create mode 100644 aws_resource_validator/pydantic_models/timestream_query_classes.py create mode 100644 aws_resource_validator/pydantic_models/timestream_query_constants.py create mode 100644 aws_resource_validator/pydantic_models/timestream_write_classes.py create mode 100644 aws_resource_validator/pydantic_models/timestream_write_constants.py create mode 100644 aws_resource_validator/pydantic_models/tnb_classes.py create mode 100644 aws_resource_validator/pydantic_models/tnb_constants.py create mode 100644 aws_resource_validator/pydantic_models/transcribe_classes.py create mode 100644 aws_resource_validator/pydantic_models/transcribe_constants.py create mode 100644 aws_resource_validator/pydantic_models/transfer_classes.py create mode 100644 aws_resource_validator/pydantic_models/transfer_constants.py create mode 100644 aws_resource_validator/pydantic_models/translate_classes.py create mode 100644 aws_resource_validator/pydantic_models/translate_constants.py create mode 100644 aws_resource_validator/pydantic_models/trustedadvisor_classes.py create mode 100644 aws_resource_validator/pydantic_models/trustedadvisor_constants.py create mode 100644 aws_resource_validator/pydantic_models/verifiedpermissions_classes.py create mode 100644 aws_resource_validator/pydantic_models/verifiedpermissions_constants.py create mode 100644 aws_resource_validator/pydantic_models/voice_id_classes.py create mode 100644 aws_resource_validator/pydantic_models/voice_id_constants.py create mode 100644 aws_resource_validator/pydantic_models/vpc_lattice_classes.py create mode 100644 aws_resource_validator/pydantic_models/vpc_lattice_constants.py create mode 100644 aws_resource_validator/pydantic_models/waf_classes.py create mode 100644 aws_resource_validator/pydantic_models/waf_constants.py create mode 100644 aws_resource_validator/pydantic_models/waf_regional_classes.py create mode 100644 aws_resource_validator/pydantic_models/waf_regional_constants.py create mode 100644 aws_resource_validator/pydantic_models/wafv2_classes.py create mode 100644 aws_resource_validator/pydantic_models/wafv2_constants.py create mode 100644 aws_resource_validator/pydantic_models/wellarchitected_classes.py create mode 100644 aws_resource_validator/pydantic_models/wellarchitected_constants.py create mode 100644 aws_resource_validator/pydantic_models/wisdom_classes.py create mode 100644 aws_resource_validator/pydantic_models/wisdom_constants.py create mode 100644 aws_resource_validator/pydantic_models/workdocs_classes.py create mode 100644 aws_resource_validator/pydantic_models/workdocs_constants.py create mode 100644 aws_resource_validator/pydantic_models/worklink_classes.py create mode 100644 aws_resource_validator/pydantic_models/worklink_constants.py create mode 100644 aws_resource_validator/pydantic_models/workmail_classes.py create mode 100644 aws_resource_validator/pydantic_models/workmail_constants.py create mode 100644 aws_resource_validator/pydantic_models/workmailmessageflow_classes.py create mode 100644 aws_resource_validator/pydantic_models/workmailmessageflow_constants.py create mode 100644 aws_resource_validator/pydantic_models/workspaces_classes.py create mode 100644 aws_resource_validator/pydantic_models/workspaces_constants.py create mode 100644 aws_resource_validator/pydantic_models/workspaces_thin_client_classes.py create mode 100644 aws_resource_validator/pydantic_models/workspaces_thin_client_constants.py create mode 100644 aws_resource_validator/pydantic_models/workspaces_web_classes.py create mode 100644 aws_resource_validator/pydantic_models/workspaces_web_constants.py create mode 100644 aws_resource_validator/pydantic_models/xray_classes.py create mode 100644 aws_resource_validator/pydantic_models/xray_constants.py diff --git a/.flake8 b/.flake8 index da55ded9..26f7a9ce 100644 --- a/.flake8 +++ b/.flake8 @@ -2,4 +2,4 @@ max-line-length = 140 max-complexity = 18 select = B,C,E,F,W,T4,B9 -exclude = class_definitions.py +exclude = class_definitions.py, aws_resource_validator/pydantic_models/ diff --git a/aws_resource_validator/main.py b/aws_resource_validator/main.py index bee1c4c2..fe0c4cde 100644 --- a/aws_resource_validator/main.py +++ b/aws_resource_validator/main.py @@ -2,6 +2,7 @@ from typing import Dict from aws_resource_validator.class_generator import generate_static_classes +from aws_resource_validator.pydantic_generator import generate_models from aws_resource_validator.scrapper import fetch_and_parse_github # get token dynamically somehow...? @@ -9,5 +10,6 @@ headers: Dict[str, str] = {'Authorization': f'Bearer {github_api_token}'} if __name__ == "__main__": + generate_models() api_registry = fetch_and_parse_github(headers=headers) generate_static_classes(api_registry) diff --git a/aws_resource_validator/pydantic_generator.py b/aws_resource_validator/pydantic_generator.py new file mode 100644 index 00000000..7b5fc6ec --- /dev/null +++ b/aws_resource_validator/pydantic_generator.py @@ -0,0 +1,188 @@ +""" +This module provides functionality to generate Pydantic models and constants files from TypedDict +definitions and literals found in the `mypy_boto3_*` packages within a virtual environment. + +The main functions in this module include: +- `parse_type_defs`: Parses `type_defs.py` files to extract TypedDict definitions. +- `generate_pydantic_models`: Generates Pydantic models from TypedDict definitions. +- `parse_literals`: Parses `literals.py` files to extract literal definitions. +- `generate_constants_file`: Generates a constants file from literals and other definitions. +- `generate_models`: Main function to process all `mypy_boto3_*` packages and generate the corresponding + Pydantic models and constants files. + +The generated files are saved in the `aws_resource_validator/pydantic_models` directory. +""" +import os +import re +from typing import Dict, Tuple + +# Define file paths +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) +venv_path = os.path.join(project_root, '.venv', 'lib', 'python3.12', 'site-packages') +output_dir = os.path.join(project_root, 'aws_resource_validator', 'pydantic_models') + +# Create output directory if it doesn't exist +os.makedirs(output_dir, exist_ok=True) + + +# pylint: disable=too-many-locals +def parse_type_defs(file_path: str) -> Tuple[Dict[str, Dict[str, str]], Dict[str, str]]: + """ + Parse the `type_defs.py` file to extract TypedDict definitions and other type definitions. + + Args: + file_path (str): The path to the `type_defs.py` file. + + Returns: + Tuple[Dict[str, Dict[str, str]], Dict[str, str]]: A tuple containing two dictionaries: + - The first dictionary maps TypedDict names to their field definitions. + - The second dictionary maps other type definition names to their type values. + """ + type_defs, other_defs = {}, {} + with open(file_path, 'r', encoding='utf-8') as f: + content = f.read() + + # Regex pattern to capture TypedDict name and its fields, including nested types with commas + typed_dict_pattern = re.compile( + r'(\w+)\s*=\s*TypedDict\(\s*"\w+"\s*,\s*\{(.*?)\}', re.DOTALL + ) + # Pattern to exclude TypedDicts and capture other definitions + other_defs_pattern = re.compile( + r'(\w+)\s*=\s*(?!TypedDict)(Union\[[^\]]+\]|Optional\[[^\]]+\]|Dict\[[^\]]+\]|List\[[^\]]+\]|Any|Literal\[[' + r'^\]]+\]|datetime|str|int|float|bool)', + re.DOTALL + ) + + # Parsing TypedDict matches + for match in typed_dict_pattern.finditer(content): + type_name, fields = match.groups() + + # Improved regex pattern to capture fields correctly, including nested types with commas + field_matches = re.findall(r'\s*"(\w+)"\s*:\s*([^,]+(?:\[[^\]]+\]|,|[^,\n]+)*)', fields, re.DOTALL) + field_dict = {} + for field_match in field_matches: + field_name, field_type = field_match + if 'NotRequired[' in field_type: + field_type = field_type.replace('NotRequired[', 'Optional[') + field_dict[field_name] = field_type.strip().replace("\n", " ").replace(" ", " ").rstrip(',') + type_defs[type_name] = field_dict + + # Parsing other definitions + for match in other_defs_pattern.finditer(content): + def_name, def_value = match.groups() + other_defs[def_name] = def_value.strip().replace("\n", " ").replace(" ", " ").rstrip(',') + + return type_defs, other_defs + + +def generate_pydantic_models(type_defs: Dict[str, Dict[str, str]], service_name: str, file_path: str): + """ + Generate Pydantic models from TypedDict definitions and save them to a specified output file. + + Args: + type_defs (Dict[str, Dict[str, str]]): Dictionary of TypedDict definitions. + service_name (str): The service name for generating the corresponding constants file import. + file_path (str): The path to the output file where Pydantic models will be saved. + """ + imports = set(["from pydantic import BaseModel", "from datetime import datetime"]) + type_imports = { + "Optional": "from typing import Optional", + "List": "from typing import List", + "Union": "from typing import Union", + "Dict": "from typing import Dict", + "Any": "from typing import Any", + "Literal": "from typing import Literal", + "Sequence": "from typing import Sequence", + "Mapping": "from typing import Mapping", + "IO": "from typing import IO" + } + + with open(file_path, 'w', encoding='utf-8') as f: + # Write imports + for import_statement in sorted(imports.union(type_imports.values())): + f.write(f'{import_statement}\n') + + # Import the corresponding constants file + f.write(f'from aws_resource_validator.pydantic_models.{service_name}_constants import *\n\n') + + # Write Pydantic models + for type_name, fields in type_defs.items(): + f.write(f'class {type_name}(BaseModel):\n') + for field_name, field_type in fields.items(): + if 'Optional[' in field_type: + f.write(f' {field_name}: {field_type} = None\n') + else: + f.write(f' {field_name}: {field_type}\n') + f.write('\n') + + +def parse_literals(file_path: str) -> Dict[str, str]: + """ + Parse the literals.py file to identify literals. + + Args: + file_path (str): The path to the literals.py file. + + Returns: + Dict[str, str]: Dictionary of literals. + """ + literals = {} + literal_pattern = re.compile(r'(\w+)\s*=\s*Literal\[(.*?)\]', re.DOTALL) + with open(file_path, 'r', encoding='utf-8') as f: + content = f.read() + + for match in literal_pattern.finditer(content): + literal_name, literal_values = match.groups() + literals[literal_name] = f'Literal[{literal_values.strip()}]' + + return literals + + +def generate_constants_file(literals: Dict[str, str], other_defs: Dict[str, str], file_path: str) -> None: + """ + Generate a constants file from literals and other definitions and save them to a specified output file. + + Args: + literals (Dict[str, str]): Dictionary of literals. + other_defs (Dict[str, str]): Dictionary of other definitions. + file_path (str): The path to the output file where constants will be saved. + """ + with open(file_path, 'w', encoding='utf-8') as f: + # Add imports + f.write("from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO\n") + f.write("from datetime import datetime\n\n") + + for literal_name, literal_values in literals.items(): + f.write(f'{literal_name} = {literal_values}\n') + + for def_name, def_value in other_defs.items(): + if 'Union' in def_value: + def_value = re.sub(r'(\w+TypeDef)', r"'\1'", def_value) + f.write(f'{def_name} = {def_value}\n') + + +def generate_models(): # pylint: disable=missing-function-docstring + for folder in os.listdir(venv_path): + if folder.startswith('mypy_boto3_'): + folder_path = os.path.join(venv_path, folder) + literals_path = os.path.join(folder_path, 'literals.py') + type_defs_path = os.path.join(folder_path, 'type_defs.py') + + service_name = folder.replace('mypy_boto3_', '') + + literals, type_defs, other_defs = {}, {}, {} + if os.path.exists(literals_path): + print(f'Processing literals in {literals_path}') + literals = parse_literals(literals_path) + + if os.path.exists(type_defs_path): + print(f'Processing type definitions in {type_defs_path}') + type_defs, other_defs = parse_type_defs(type_defs_path) + + if literals or other_defs: + constants_output_path = os.path.join(output_dir, f'{service_name}_constants.py') + generate_constants_file(literals, other_defs, constants_output_path) + + if type_defs: + classes_output_path = os.path.join(output_dir, f'{service_name}_classes.py') + generate_pydantic_models(type_defs, service_name, classes_output_path) diff --git a/aws_resource_validator/pydantic_models/accessanalyzer_classes.py b/aws_resource_validator/pydantic_models/accessanalyzer_classes.py new file mode 100644 index 00000000..0980ca48 --- /dev/null +++ b/aws_resource_validator/pydantic_models/accessanalyzer_classes.py @@ -0,0 +1,863 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.accessanalyzer_constants import * + +class AccessPreviewStatusReasonTypeDef(BaseModel): + code: AccessPreviewStatusReasonCodeType + +class AccessTypeDef(BaseModel): + actions: Optional[Sequence[str]] = None + resources: Optional[Sequence[str]] = None + +class AclGranteeTypeDef(BaseModel): + id: Optional[str] = None + uri: Optional[str] = None + +class AnalyzedResourceSummaryTypeDef(BaseModel): + resourceArn: str + resourceOwnerAccount: str + resourceType: ResourceTypeType + +class AnalyzedResourceTypeDef(BaseModel): + resourceArn: str + resourceType: ResourceTypeType + createdAt: datetime + analyzedAt: datetime + updatedAt: datetime + isPublic: bool + resourceOwnerAccount: str + actions: Optional[List[str]] = None + sharedVia: Optional[List[str]] = None + status: Optional[FindingStatusType] = None + error: Optional[str] = None + +class UnusedAccessConfigurationTypeDef(BaseModel): + unusedAccessAge: Optional[int] = None + +class StatusReasonTypeDef(BaseModel): + code: ReasonCodeType + +class ApplyArchiveRuleRequestRequestTypeDef(BaseModel): + analyzerArn: str + ruleName: str + clientToken: Optional[str] = None + +class CriterionOutputTypeDef(BaseModel): + eq: Optional[List[str]] = None + neq: Optional[List[str]] = None + contains: Optional[List[str]] = None + exists: Optional[bool] = None + +class CancelPolicyGenerationRequestRequestTypeDef(BaseModel): + jobId: str + +class ReasonSummaryTypeDef(BaseModel): + description: Optional[str] = None + statementIndex: Optional[int] = None + statementId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CheckNoNewAccessRequestRequestTypeDef(BaseModel): + newPolicyDocument: str + existingPolicyDocument: str + policyType: AccessCheckPolicyTypeType + +class CheckNoPublicAccessRequestRequestTypeDef(BaseModel): + policyDocument: str + resourceType: AccessCheckResourceTypeType + +class TrailTypeDef(BaseModel): + cloudTrailArn: str + regions: Optional[Sequence[str]] = None + allRegions: Optional[bool] = None + +class TrailPropertiesTypeDef(BaseModel): + cloudTrailArn: str + regions: Optional[List[str]] = None + allRegions: Optional[bool] = None + +class DynamodbStreamConfigurationTypeDef(BaseModel): + streamPolicy: Optional[str] = None + +class DynamodbTableConfigurationTypeDef(BaseModel): + tablePolicy: Optional[str] = None + +class EbsSnapshotConfigurationOutputTypeDef(BaseModel): + userIds: Optional[List[str]] = None + groups: Optional[List[str]] = None + kmsKeyId: Optional[str] = None + +class EcrRepositoryConfigurationTypeDef(BaseModel): + repositoryPolicy: Optional[str] = None + +class EfsFileSystemConfigurationTypeDef(BaseModel): + fileSystemPolicy: Optional[str] = None + +class IamRoleConfigurationTypeDef(BaseModel): + trustPolicy: Optional[str] = None + +class S3ExpressDirectoryBucketConfigurationTypeDef(BaseModel): + bucketPolicy: Optional[str] = None + +class SecretsManagerSecretConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + secretPolicy: Optional[str] = None + +class SnsTopicConfigurationTypeDef(BaseModel): + topicPolicy: Optional[str] = None + +class SqsQueueConfigurationTypeDef(BaseModel): + queuePolicy: Optional[str] = None + +class EbsSnapshotConfigurationTypeDef(BaseModel): + userIds: Optional[Sequence[str]] = None + groups: Optional[Sequence[str]] = None + kmsKeyId: Optional[str] = None + +class CriterionExtraOutputTypeDef(BaseModel): + eq: Optional[List[str]] = None + neq: Optional[List[str]] = None + contains: Optional[List[str]] = None + exists: Optional[bool] = None + +class CriterionTypeDef(BaseModel): + eq: Optional[Sequence[str]] = None + neq: Optional[Sequence[str]] = None + contains: Optional[Sequence[str]] = None + exists: Optional[bool] = None + +class DeleteAnalyzerRequestRequestTypeDef(BaseModel): + analyzerName: str + clientToken: Optional[str] = None + +class DeleteArchiveRuleRequestRequestTypeDef(BaseModel): + analyzerName: str + ruleName: str + clientToken: Optional[str] = None + +class UnusedIamRoleDetailsTypeDef(BaseModel): + lastAccessed: Optional[datetime] = None + +class UnusedIamUserAccessKeyDetailsTypeDef(BaseModel): + accessKeyId: str + lastAccessed: Optional[datetime] = None + +class UnusedIamUserPasswordDetailsTypeDef(BaseModel): + lastAccessed: Optional[datetime] = None + +class FindingSourceDetailTypeDef(BaseModel): + accessPointArn: Optional[str] = None + accessPointAccount: Optional[str] = None + +class FindingSummaryV2TypeDef(BaseModel): + analyzedAt: datetime + createdAt: datetime + id: str + resourceType: ResourceTypeType + resourceOwnerAccount: str + status: FindingStatusType + updatedAt: datetime + error: Optional[str] = None + resource: Optional[str] = None + findingType: Optional[FindingTypeType] = None + +class GenerateFindingRecommendationRequestRequestTypeDef(BaseModel): + analyzerArn: str + id: str + +class GeneratedPolicyTypeDef(BaseModel): + policy: str + +class GetAccessPreviewRequestRequestTypeDef(BaseModel): + accessPreviewId: str + analyzerArn: str + +class GetAnalyzedResourceRequestRequestTypeDef(BaseModel): + analyzerArn: str + resourceArn: str + +class GetAnalyzerRequestRequestTypeDef(BaseModel): + analyzerName: str + +class GetArchiveRuleRequestRequestTypeDef(BaseModel): + analyzerName: str + ruleName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetFindingRecommendationRequestRequestTypeDef(BaseModel): + analyzerArn: str + id: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RecommendationErrorTypeDef(BaseModel): + code: str + message: str + +class GetFindingRequestRequestTypeDef(BaseModel): + analyzerArn: str + id: str + +class GetFindingV2RequestRequestTypeDef(BaseModel): + analyzerArn: str + id: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetGeneratedPolicyRequestRequestTypeDef(BaseModel): + jobId: str + includeResourcePlaceholders: Optional[bool] = None + includeServiceLevelTemplate: Optional[bool] = None + +class JobErrorTypeDef(BaseModel): + code: JobErrorCodeType + message: str + +class KmsGrantConstraintsOutputTypeDef(BaseModel): + encryptionContextEquals: Optional[Dict[str, str]] = None + encryptionContextSubset: Optional[Dict[str, str]] = None + +class KmsGrantConstraintsTypeDef(BaseModel): + encryptionContextEquals: Optional[Mapping[str, str]] = None + encryptionContextSubset: Optional[Mapping[str, str]] = None + +class ListAccessPreviewsRequestRequestTypeDef(BaseModel): + analyzerArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAnalyzedResourcesRequestRequestTypeDef(BaseModel): + analyzerArn: str + resourceType: Optional[ResourceTypeType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAnalyzersRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + type: Optional[TypeType] = None + +class ListArchiveRulesRequestRequestTypeDef(BaseModel): + analyzerName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SortCriteriaTypeDef(BaseModel): + attributeName: Optional[str] = None + orderBy: Optional[OrderByType] = None + +class ListPolicyGenerationsRequestRequestTypeDef(BaseModel): + principalArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PolicyGenerationTypeDef(BaseModel): + jobId: str + principalArn: str + status: JobStatusType + startedOn: datetime + completedOn: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class VpcConfigurationTypeDef(BaseModel): + vpcId: str + +class SubstringTypeDef(BaseModel): + start: int + length: int + +class PolicyGenerationDetailsTypeDef(BaseModel): + principalArn: str + +class PositionTypeDef(BaseModel): + line: int + column: int + offset: int + +class RdsDbClusterSnapshotAttributeValueOutputTypeDef(BaseModel): + accountIds: Optional[List[str]] = None + +class RdsDbClusterSnapshotAttributeValueTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + +class RdsDbSnapshotAttributeValueOutputTypeDef(BaseModel): + accountIds: Optional[List[str]] = None + +class RdsDbSnapshotAttributeValueTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + +class UnusedPermissionsRecommendedStepTypeDef(BaseModel): + recommendedAction: RecommendedRemediationActionType + policyUpdatedAt: Optional[datetime] = None + recommendedPolicy: Optional[str] = None + existingPolicyId: Optional[str] = None + +class S3PublicAccessBlockConfigurationTypeDef(BaseModel): + ignorePublicAcls: bool + restrictPublicBuckets: bool + +class StartResourceScanRequestRequestTypeDef(BaseModel): + analyzerArn: str + resourceArn: str + resourceOwnerAccount: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UnusedActionTypeDef(BaseModel): + action: str + lastAccessed: Optional[datetime] = None + +class UpdateFindingsRequestRequestTypeDef(BaseModel): + analyzerArn: str + status: FindingStatusUpdateType + ids: Optional[Sequence[str]] = None + resourceArn: Optional[str] = None + clientToken: Optional[str] = None + +class ValidatePolicyRequestRequestTypeDef(BaseModel): + policyDocument: str + policyType: PolicyTypeType + locale: Optional[LocaleType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + validatePolicyResourceType: Optional[ValidatePolicyResourceTypeType] = None + +class AccessPreviewSummaryTypeDef(BaseModel): + id: str + analyzerArn: str + createdAt: datetime + status: AccessPreviewStatusType + statusReason: Optional[AccessPreviewStatusReasonTypeDef] = None + +class CheckAccessNotGrantedRequestRequestTypeDef(BaseModel): + policyDocument: str + access: Sequence[AccessTypeDef] + policyType: AccessCheckPolicyTypeType + +class S3BucketAclGrantConfigurationTypeDef(BaseModel): + permission: AclPermissionType + grantee: AclGranteeTypeDef + +class AnalyzerConfigurationTypeDef(BaseModel): + unusedAccess: Optional[UnusedAccessConfigurationTypeDef] = None + +class ArchiveRuleSummaryTypeDef(BaseModel): + ruleName: str + filter: Dict[str, CriterionOutputTypeDef] + createdAt: datetime + updatedAt: datetime + +class CheckAccessNotGrantedResponseTypeDef(BaseModel): + result: CheckAccessNotGrantedResultType + message: str + reasons: List[ReasonSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CheckNoNewAccessResponseTypeDef(BaseModel): + result: CheckNoNewAccessResultType + message: str + reasons: List[ReasonSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CheckNoPublicAccessResponseTypeDef(BaseModel): + result: CheckNoPublicAccessResultType + message: str + reasons: List[ReasonSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPreviewResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnalyzerResponseTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnalyzedResourceResponseTypeDef(BaseModel): + resource: AnalyzedResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnalyzedResourcesResponseTypeDef(BaseModel): + analyzedResources: List[AnalyzedResourceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartPolicyGenerationResponseTypeDef(BaseModel): + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CloudTrailDetailsTypeDef(BaseModel): + trails: Sequence[TrailTypeDef] + accessRole: str + startTime: TimestampTypeDef + endTime: Optional[TimestampTypeDef] = None + +class CloudTrailPropertiesTypeDef(BaseModel): + trailProperties: List[TrailPropertiesTypeDef] + startTime: datetime + endTime: datetime + +class InlineArchiveRuleTypeDef(BaseModel): + ruleName: str + filter: Mapping[str, CriterionTypeDef] + +class FindingSourceTypeDef(BaseModel): + type: FindingSourceTypeType + detail: Optional[FindingSourceDetailTypeDef] = None + +class ListFindingsV2ResponseTypeDef(BaseModel): + findings: List[FindingSummaryV2TypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingRecommendationRequestGetFindingRecommendationPaginateTypeDef(BaseModel): + analyzerArn: str + id: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetFindingV2RequestGetFindingV2PaginateTypeDef(BaseModel): + analyzerArn: str + id: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessPreviewsRequestListAccessPreviewsPaginateTypeDef(BaseModel): + analyzerArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnalyzedResourcesRequestListAnalyzedResourcesPaginateTypeDef(BaseModel): + analyzerArn: str + resourceType: Optional[ResourceTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnalyzersRequestListAnalyzersPaginateTypeDef(BaseModel): + type: Optional[TypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListArchiveRulesRequestListArchiveRulesPaginateTypeDef(BaseModel): + analyzerName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyGenerationsRequestListPolicyGenerationsPaginateTypeDef(BaseModel): + principalArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ValidatePolicyRequestValidatePolicyPaginateTypeDef(BaseModel): + policyDocument: str + policyType: PolicyTypeType + locale: Optional[LocaleType] = None + validatePolicyResourceType: Optional[ValidatePolicyResourceTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class JobDetailsTypeDef(BaseModel): + jobId: str + status: JobStatusType + startedOn: datetime + completedOn: Optional[datetime] = None + jobError: Optional[JobErrorTypeDef] = None + +class KmsGrantConfigurationOutputTypeDef(BaseModel): + operations: List[KmsGrantOperationType] + granteePrincipal: str + issuingAccount: str + retiringPrincipal: Optional[str] = None + constraints: Optional[KmsGrantConstraintsOutputTypeDef] = None + +class KmsGrantConfigurationTypeDef(BaseModel): + operations: Sequence[KmsGrantOperationType] + granteePrincipal: str + issuingAccount: str + retiringPrincipal: Optional[str] = None + constraints: Optional[KmsGrantConstraintsTypeDef] = None + +class ListPolicyGenerationsResponseTypeDef(BaseModel): + policyGenerations: List[PolicyGenerationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkOriginConfigurationOutputTypeDef(BaseModel): + vpcConfiguration: Optional[VpcConfigurationTypeDef] = None + internetConfiguration: Optional[Dict[str, Any]] = None + +class NetworkOriginConfigurationTypeDef(BaseModel): + vpcConfiguration: Optional[VpcConfigurationTypeDef] = None + internetConfiguration: Optional[Mapping[str, Any]] = None + +class PathElementTypeDef(BaseModel): + index: Optional[int] = None + key: Optional[str] = None + substring: Optional[SubstringTypeDef] = None + value: Optional[str] = None + +class SpanTypeDef(BaseModel): + start: PositionTypeDef + end: PositionTypeDef + +class RdsDbClusterSnapshotConfigurationOutputTypeDef(BaseModel): + attributes: Optional[Dict[str, RdsDbClusterSnapshotAttributeValueOutputTypeDef]] = None + kmsKeyId: Optional[str] = None + +class RdsDbClusterSnapshotConfigurationTypeDef(BaseModel): + attributes: Optional[Mapping[str, RdsDbClusterSnapshotAttributeValueTypeDef]] = None + kmsKeyId: Optional[str] = None + +class RdsDbSnapshotConfigurationOutputTypeDef(BaseModel): + attributes: Optional[Dict[str, RdsDbSnapshotAttributeValueOutputTypeDef]] = None + kmsKeyId: Optional[str] = None + +class RdsDbSnapshotConfigurationTypeDef(BaseModel): + attributes: Optional[Mapping[str, RdsDbSnapshotAttributeValueTypeDef]] = None + kmsKeyId: Optional[str] = None + +class RecommendedStepTypeDef(BaseModel): + unusedPermissionsRecommendedStep: Optional[UnusedPermissionsRecommendedStepTypeDef] = None + +class UnusedPermissionDetailsTypeDef(BaseModel): + serviceNamespace: str + actions: Optional[List[UnusedActionTypeDef]] = None + lastAccessed: Optional[datetime] = None + +class ListAccessPreviewsResponseTypeDef(BaseModel): + accessPreviews: List[AccessPreviewSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AnalyzerSummaryTypeDef(BaseModel): + arn: str + name: str + type: TypeType + createdAt: datetime + status: AnalyzerStatusType + lastResourceAnalyzed: Optional[str] = None + lastResourceAnalyzedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + statusReason: Optional[StatusReasonTypeDef] = None + configuration: Optional[AnalyzerConfigurationTypeDef] = None + +class GetArchiveRuleResponseTypeDef(BaseModel): + archiveRule: ArchiveRuleSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListArchiveRulesResponseTypeDef(BaseModel): + archiveRules: List[ArchiveRuleSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartPolicyGenerationRequestRequestTypeDef(BaseModel): + policyGenerationDetails: PolicyGenerationDetailsTypeDef + cloudTrailDetails: Optional[CloudTrailDetailsTypeDef] = None + clientToken: Optional[str] = None + +class GeneratedPolicyPropertiesTypeDef(BaseModel): + principalArn: str + isComplete: Optional[bool] = None + cloudTrailProperties: Optional[CloudTrailPropertiesTypeDef] = None + +class CreateArchiveRuleRequestRequestTypeDef(BaseModel): + analyzerName: str + ruleName: str + filter: Mapping[str, CriterionUnionTypeDef] + clientToken: Optional[str] = None + +class ListAccessPreviewFindingsRequestListAccessPreviewFindingsPaginateTypeDef(BaseModel): + accessPreviewId: str + analyzerArn: str + filter: Optional[Mapping[str, CriterionUnionTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessPreviewFindingsRequestRequestTypeDef(BaseModel): + accessPreviewId: str + analyzerArn: str + filter: Optional[Mapping[str, CriterionUnionTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFindingsRequestListFindingsPaginateTypeDef(BaseModel): + analyzerArn: str + filter: Optional[Mapping[str, CriterionUnionTypeDef]] = None + sort: Optional[SortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsRequestRequestTypeDef(BaseModel): + analyzerArn: str + filter: Optional[Mapping[str, CriterionUnionTypeDef]] = None + sort: Optional[SortCriteriaTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFindingsV2RequestListFindingsV2PaginateTypeDef(BaseModel): + analyzerArn: str + filter: Optional[Mapping[str, CriterionUnionTypeDef]] = None + sort: Optional[SortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsV2RequestRequestTypeDef(BaseModel): + analyzerArn: str + filter: Optional[Mapping[str, CriterionUnionTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sort: Optional[SortCriteriaTypeDef] = None + +class UpdateArchiveRuleRequestRequestTypeDef(BaseModel): + analyzerName: str + ruleName: str + filter: Mapping[str, CriterionUnionTypeDef] + clientToken: Optional[str] = None + +class CreateAnalyzerRequestRequestTypeDef(BaseModel): + analyzerName: str + type: TypeType + archiveRules: Optional[Sequence[InlineArchiveRuleTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + configuration: Optional[AnalyzerConfigurationTypeDef] = None + +class AccessPreviewFindingTypeDef(BaseModel): + id: str + resourceType: ResourceTypeType + createdAt: datetime + changeType: FindingChangeTypeType + status: FindingStatusType + resourceOwnerAccount: str + existingFindingId: Optional[str] = None + existingFindingStatus: Optional[FindingStatusType] = None + principal: Optional[Dict[str, str]] = None + action: Optional[List[str]] = None + condition: Optional[Dict[str, str]] = None + resource: Optional[str] = None + isPublic: Optional[bool] = None + error: Optional[str] = None + sources: Optional[List[FindingSourceTypeDef]] = None + +class ExternalAccessDetailsTypeDef(BaseModel): + condition: Dict[str, str] + action: Optional[List[str]] = None + isPublic: Optional[bool] = None + principal: Optional[Dict[str, str]] = None + sources: Optional[List[FindingSourceTypeDef]] = None + +class FindingSummaryTypeDef(BaseModel): + id: str + resourceType: ResourceTypeType + condition: Dict[str, str] + createdAt: datetime + analyzedAt: datetime + updatedAt: datetime + status: FindingStatusType + resourceOwnerAccount: str + principal: Optional[Dict[str, str]] = None + action: Optional[List[str]] = None + resource: Optional[str] = None + isPublic: Optional[bool] = None + error: Optional[str] = None + sources: Optional[List[FindingSourceTypeDef]] = None + +class FindingTypeDef(BaseModel): + id: str + resourceType: ResourceTypeType + condition: Dict[str, str] + createdAt: datetime + analyzedAt: datetime + updatedAt: datetime + status: FindingStatusType + resourceOwnerAccount: str + principal: Optional[Dict[str, str]] = None + action: Optional[List[str]] = None + resource: Optional[str] = None + isPublic: Optional[bool] = None + error: Optional[str] = None + sources: Optional[List[FindingSourceTypeDef]] = None + +class KmsKeyConfigurationOutputTypeDef(BaseModel): + keyPolicies: Optional[Dict[str, str]] = None + grants: Optional[List[KmsGrantConfigurationOutputTypeDef]] = None + +class KmsKeyConfigurationTypeDef(BaseModel): + keyPolicies: Optional[Mapping[str, str]] = None + grants: Optional[Sequence[KmsGrantConfigurationTypeDef]] = None + +class S3AccessPointConfigurationOutputTypeDef(BaseModel): + accessPointPolicy: Optional[str] = None + publicAccessBlock: Optional[S3PublicAccessBlockConfigurationTypeDef] = None + networkOrigin: Optional[NetworkOriginConfigurationOutputTypeDef] = None + +class S3AccessPointConfigurationTypeDef(BaseModel): + accessPointPolicy: Optional[str] = None + publicAccessBlock: Optional[S3PublicAccessBlockConfigurationTypeDef] = None + networkOrigin: Optional[NetworkOriginConfigurationTypeDef] = None + +class LocationTypeDef(BaseModel): + path: List[PathElementTypeDef] + span: SpanTypeDef + +class GetFindingRecommendationResponseTypeDef(BaseModel): + startedAt: datetime + completedAt: datetime + nextToken: str + error: RecommendationErrorTypeDef + resourceArn: str + recommendedSteps: List[RecommendedStepTypeDef] + recommendationType: Literal["UnusedPermissionRecommendation"] + status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnalyzerResponseTypeDef(BaseModel): + analyzer: AnalyzerSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnalyzersResponseTypeDef(BaseModel): + analyzers: List[AnalyzerSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GeneratedPolicyResultTypeDef(BaseModel): + properties: GeneratedPolicyPropertiesTypeDef + generatedPolicies: Optional[List[GeneratedPolicyTypeDef]] = None + +class ListAccessPreviewFindingsResponseTypeDef(BaseModel): + findings: List[AccessPreviewFindingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FindingDetailsTypeDef(BaseModel): + externalAccessDetails: Optional[ExternalAccessDetailsTypeDef] = None + unusedPermissionDetails: Optional[UnusedPermissionDetailsTypeDef] = None + unusedIamUserAccessKeyDetails: Optional[UnusedIamUserAccessKeyDetailsTypeDef] = None + unusedIamRoleDetails: Optional[UnusedIamRoleDetailsTypeDef] = None + unusedIamUserPasswordDetails: Optional[UnusedIamUserPasswordDetailsTypeDef] = None + +class ListFindingsResponseTypeDef(BaseModel): + findings: List[FindingSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingResponseTypeDef(BaseModel): + finding: FindingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class S3BucketConfigurationOutputTypeDef(BaseModel): + bucketPolicy: Optional[str] = None + bucketAclGrants: Optional[List[S3BucketAclGrantConfigurationTypeDef]] = None + bucketPublicAccessBlock: Optional[S3PublicAccessBlockConfigurationTypeDef] = None + accessPoints: Optional[Dict[str, S3AccessPointConfigurationOutputTypeDef]] = None + +class S3BucketConfigurationTypeDef(BaseModel): + bucketPolicy: Optional[str] = None + bucketAclGrants: Optional[Sequence[S3BucketAclGrantConfigurationTypeDef]] = None + bucketPublicAccessBlock: Optional[S3PublicAccessBlockConfigurationTypeDef] = None + accessPoints: Optional[Mapping[str, S3AccessPointConfigurationTypeDef]] = None + +class ValidatePolicyFindingTypeDef(BaseModel): + findingDetails: str + findingType: ValidatePolicyFindingTypeType + issueCode: str + learnMoreLink: str + locations: List[LocationTypeDef] + +class GetGeneratedPolicyResponseTypeDef(BaseModel): + jobDetails: JobDetailsTypeDef + generatedPolicyResult: GeneratedPolicyResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingV2ResponseTypeDef(BaseModel): + analyzedAt: datetime + createdAt: datetime + error: str + id: str + nextToken: str + resource: str + resourceType: ResourceTypeType + resourceOwnerAccount: str + status: FindingStatusType + updatedAt: datetime + findingDetails: List[FindingDetailsTypeDef] + findingType: FindingTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationOutputTypeDef(BaseModel): + ebsSnapshot: Optional[EbsSnapshotConfigurationOutputTypeDef] = None + ecrRepository: Optional[EcrRepositoryConfigurationTypeDef] = None + iamRole: Optional[IamRoleConfigurationTypeDef] = None + efsFileSystem: Optional[EfsFileSystemConfigurationTypeDef] = None + kmsKey: Optional[KmsKeyConfigurationOutputTypeDef] = None + rdsDbClusterSnapshot: Optional[RdsDbClusterSnapshotConfigurationOutputTypeDef] = None + rdsDbSnapshot: Optional[RdsDbSnapshotConfigurationOutputTypeDef] = None + secretsManagerSecret: Optional[SecretsManagerSecretConfigurationTypeDef] = None + s3Bucket: Optional[S3BucketConfigurationOutputTypeDef] = None + snsTopic: Optional[SnsTopicConfigurationTypeDef] = None + sqsQueue: Optional[SqsQueueConfigurationTypeDef] = None + s3ExpressDirectoryBucket: Optional[S3ExpressDirectoryBucketConfigurationTypeDef] = None + dynamodbStream: Optional[DynamodbStreamConfigurationTypeDef] = None + dynamodbTable: Optional[DynamodbTableConfigurationTypeDef] = None + +class ConfigurationTypeDef(BaseModel): + ebsSnapshot: Optional[EbsSnapshotConfigurationTypeDef] = None + ecrRepository: Optional[EcrRepositoryConfigurationTypeDef] = None + iamRole: Optional[IamRoleConfigurationTypeDef] = None + efsFileSystem: Optional[EfsFileSystemConfigurationTypeDef] = None + kmsKey: Optional[KmsKeyConfigurationTypeDef] = None + rdsDbClusterSnapshot: Optional[RdsDbClusterSnapshotConfigurationTypeDef] = None + rdsDbSnapshot: Optional[RdsDbSnapshotConfigurationTypeDef] = None + secretsManagerSecret: Optional[SecretsManagerSecretConfigurationTypeDef] = None + s3Bucket: Optional[S3BucketConfigurationTypeDef] = None + snsTopic: Optional[SnsTopicConfigurationTypeDef] = None + sqsQueue: Optional[SqsQueueConfigurationTypeDef] = None + s3ExpressDirectoryBucket: Optional[S3ExpressDirectoryBucketConfigurationTypeDef] = None + dynamodbStream: Optional[DynamodbStreamConfigurationTypeDef] = None + dynamodbTable: Optional[DynamodbTableConfigurationTypeDef] = None + +class ValidatePolicyResponseTypeDef(BaseModel): + findings: List[ValidatePolicyFindingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AccessPreviewTypeDef(BaseModel): + id: str + analyzerArn: str + configurations: Dict[str, ConfigurationOutputTypeDef] + createdAt: datetime + status: AccessPreviewStatusType + statusReason: Optional[AccessPreviewStatusReasonTypeDef] = None + +class GetAccessPreviewResponseTypeDef(BaseModel): + accessPreview: AccessPreviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPreviewRequestRequestTypeDef(BaseModel): + analyzerArn: str + configurations: Mapping[str, ConfigurationUnionTypeDef] + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/accessanalyzer_constants.py b/aws_resource_validator/pydantic_models/accessanalyzer_constants.py new file mode 100644 index 00000000..a86e3cd0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/accessanalyzer_constants.py @@ -0,0 +1,541 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessCheckPolicyTypeType = Literal["IDENTITY_POLICY", "RESOURCE_POLICY"] +AccessCheckResourceTypeType = Literal["AWS::DynamoDB::Stream", + "AWS::DynamoDB::Table", + "AWS::EFS::FileSystem", + "AWS::IAM::AssumeRolePolicyDocument", + "AWS::KMS::Key", + "AWS::Kinesis::Stream", + "AWS::Kinesis::StreamConsumer", + "AWS::Lambda::Function", + "AWS::OpenSearchService::Domain", + "AWS::S3::AccessPoint", + "AWS::S3::Bucket", + "AWS::S3::Glacier", + "AWS::S3Express::DirectoryBucket", + "AWS::S3Outposts::AccessPoint", + "AWS::S3Outposts::Bucket", + "AWS::SNS::Topic", + "AWS::SQS::Queue", + "AWS::SecretsManager::Secret",] +AccessPreviewStatusReasonCodeType = Literal["INTERNAL_ERROR", "INVALID_CONFIGURATION"] +AccessPreviewStatusType = Literal["COMPLETED", "CREATING", "FAILED"] +AclPermissionType = Literal["FULL_CONTROL", "READ", "READ_ACP", "WRITE", "WRITE_ACP"] +AnalyzerStatusType = Literal["ACTIVE", "CREATING", "DISABLED", "FAILED"] +CheckAccessNotGrantedResultType = Literal["FAIL", "PASS"] +CheckNoNewAccessResultType = Literal["FAIL", "PASS"] +CheckNoPublicAccessResultType = Literal["FAIL", "PASS"] +FindingChangeTypeType = Literal["CHANGED", "NEW", "UNCHANGED"] +FindingSourceTypeType = Literal["BUCKET_ACL", "POLICY", "S3_ACCESS_POINT", "S3_ACCESS_POINT_ACCOUNT"] +FindingStatusType = Literal["ACTIVE", "ARCHIVED", "RESOLVED"] +FindingStatusUpdateType = Literal["ACTIVE", "ARCHIVED"] +FindingTypeType = Literal["ExternalAccess", + "UnusedIAMRole", + "UnusedIAMUserAccessKey", + "UnusedIAMUserPassword", + "UnusedPermission",] +GetFindingRecommendationPaginatorName = Literal["get_finding_recommendation"] +GetFindingV2PaginatorName = Literal["get_finding_v2"] +JobErrorCodeType = Literal["AUTHORIZATION_ERROR", + "RESOURCE_NOT_FOUND_ERROR", + "SERVICE_ERROR", + "SERVICE_QUOTA_EXCEEDED_ERROR",] +JobStatusType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "SUCCEEDED"] +KmsGrantOperationType = Literal["CreateGrant", + "Decrypt", + "DescribeKey", + "Encrypt", + "GenerateDataKey", + "GenerateDataKeyPair", + "GenerateDataKeyPairWithoutPlaintext", + "GenerateDataKeyWithoutPlaintext", + "GetPublicKey", + "ReEncryptFrom", + "ReEncryptTo", + "RetireGrant", + "Sign", + "Verify",] +ListAccessPreviewFindingsPaginatorName = Literal["list_access_preview_findings"] +ListAccessPreviewsPaginatorName = Literal["list_access_previews"] +ListAnalyzedResourcesPaginatorName = Literal["list_analyzed_resources"] +ListAnalyzersPaginatorName = Literal["list_analyzers"] +ListArchiveRulesPaginatorName = Literal["list_archive_rules"] +ListFindingsPaginatorName = Literal["list_findings"] +ListFindingsV2PaginatorName = Literal["list_findings_v2"] +ListPolicyGenerationsPaginatorName = Literal["list_policy_generations"] +LocaleType = Literal["DE", "EN", "ES", "FR", "IT", "JA", "KO", "PT_BR", "ZH_CN", "ZH_TW"] +OrderByType = Literal["ASC", "DESC"] +PolicyTypeType = Literal["IDENTITY_POLICY", "RESOURCE_POLICY", "SERVICE_CONTROL_POLICY"] +ReasonCodeType = Literal["AWS_SERVICE_ACCESS_DISABLED", + "DELEGATED_ADMINISTRATOR_DEREGISTERED", + "ORGANIZATION_DELETED", + "SERVICE_LINKED_ROLE_CREATION_FAILED",] +RecommendationTypeType = Literal["UnusedPermissionRecommendation"] +RecommendedRemediationActionType = Literal["CREATE_POLICY", "DETACH_POLICY"] +ResourceTypeType = Literal["AWS::DynamoDB::Stream", + "AWS::DynamoDB::Table", + "AWS::EC2::Snapshot", + "AWS::ECR::Repository", + "AWS::EFS::FileSystem", + "AWS::IAM::Role", + "AWS::KMS::Key", + "AWS::Lambda::Function", + "AWS::Lambda::LayerVersion", + "AWS::RDS::DBClusterSnapshot", + "AWS::RDS::DBSnapshot", + "AWS::S3::Bucket", + "AWS::S3Express::DirectoryBucket", + "AWS::SNS::Topic", + "AWS::SQS::Queue", + "AWS::SecretsManager::Secret",] +StatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +TypeType = Literal["ACCOUNT", "ACCOUNT_UNUSED_ACCESS", "ORGANIZATION", "ORGANIZATION_UNUSED_ACCESS"] +ValidatePolicyFindingTypeType = Literal["ERROR", "SECURITY_WARNING", "SUGGESTION", "WARNING"] +ValidatePolicyPaginatorName = Literal["validate_policy"] +ValidatePolicyResourceTypeType = Literal["AWS::DynamoDB::Table", + "AWS::IAM::AssumeRolePolicyDocument", + "AWS::S3::AccessPoint", + "AWS::S3::Bucket", + "AWS::S3::MultiRegionAccessPoint", + "AWS::S3ObjectLambda::AccessPoint",] +AccessAnalyzerServiceName = Literal["accessanalyzer"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_finding_recommendation", + "get_finding_v2", + "list_access_preview_findings", + "list_access_previews", + "list_analyzed_resources", + "list_analyzers", + "list_archive_rules", + "list_findings", + "list_findings_v2", + "list_policy_generations", + "validate_policy",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +CriterionUnionTypeDef = Union['CriterionTypeDef', 'CriterionExtraOutputTypeDef'] +ConfigurationUnionTypeDef = Union['ConfigurationTypeDef', 'ConfigurationOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/account_classes.py b/aws_resource_validator/pydantic_models/account_classes.py new file mode 100644 index 00000000..441b5227 --- /dev/null +++ b/aws_resource_validator/pydantic_models/account_classes.py @@ -0,0 +1,141 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.account_constants import * + +class AcceptPrimaryEmailUpdateRequestRequestTypeDef(BaseModel): + AccountId: str + Otp: str + PrimaryEmail: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AlternateContactTypeDef(BaseModel): + AlternateContactType: Optional[AlternateContactTypeType] = None + EmailAddress: Optional[str] = None + Name: Optional[str] = None + PhoneNumber: Optional[str] = None + Title: Optional[str] = None + +class ContactInformationTypeDef(BaseModel): + AddressLine1: str + City: str + CountryCode: str + FullName: str + PhoneNumber: str + PostalCode: str + AddressLine2: Optional[str] = None + AddressLine3: Optional[str] = None + CompanyName: Optional[str] = None + DistrictOrCounty: Optional[str] = None + StateOrRegion: Optional[str] = None + WebsiteUrl: Optional[str] = None + +class DeleteAlternateContactRequestRequestTypeDef(BaseModel): + AlternateContactType: AlternateContactTypeType + AccountId: Optional[str] = None + +class DisableRegionRequestRequestTypeDef(BaseModel): + RegionName: str + AccountId: Optional[str] = None + +class EnableRegionRequestRequestTypeDef(BaseModel): + RegionName: str + AccountId: Optional[str] = None + +class GetAlternateContactRequestRequestTypeDef(BaseModel): + AlternateContactType: AlternateContactTypeType + AccountId: Optional[str] = None + +class GetContactInformationRequestRequestTypeDef(BaseModel): + AccountId: Optional[str] = None + +class GetPrimaryEmailRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetRegionOptStatusRequestRequestTypeDef(BaseModel): + RegionName: str + AccountId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRegionsRequestRequestTypeDef(BaseModel): + AccountId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + RegionOptStatusContains: Optional[Sequence[RegionOptStatusType]] = None + +class RegionTypeDef(BaseModel): + RegionName: Optional[str] = None + RegionOptStatus: Optional[RegionOptStatusType] = None + +class PutAlternateContactRequestRequestTypeDef(BaseModel): + AlternateContactType: AlternateContactTypeType + EmailAddress: str + Name: str + PhoneNumber: str + Title: str + AccountId: Optional[str] = None + +class StartPrimaryEmailUpdateRequestRequestTypeDef(BaseModel): + AccountId: str + PrimaryEmail: str + +class AcceptPrimaryEmailUpdateResponseTypeDef(BaseModel): + Status: PrimaryEmailUpdateStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetPrimaryEmailResponseTypeDef(BaseModel): + PrimaryEmail: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegionOptStatusResponseTypeDef(BaseModel): + RegionName: str + RegionOptStatus: RegionOptStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartPrimaryEmailUpdateResponseTypeDef(BaseModel): + Status: PrimaryEmailUpdateStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetAlternateContactResponseTypeDef(BaseModel): + AlternateContact: AlternateContactTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContactInformationResponseTypeDef(BaseModel): + ContactInformation: ContactInformationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutContactInformationRequestRequestTypeDef(BaseModel): + ContactInformation: ContactInformationTypeDef + AccountId: Optional[str] = None + +class ListRegionsRequestListRegionsPaginateTypeDef(BaseModel): + AccountId: Optional[str] = None + RegionOptStatusContains: Optional[Sequence[RegionOptStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegionsResponseTypeDef(BaseModel): + Regions: List[RegionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/account_constants.py b/aws_resource_validator/pydantic_models/account_constants.py new file mode 100644 index 00000000..a7591154 --- /dev/null +++ b/aws_resource_validator/pydantic_models/account_constants.py @@ -0,0 +1,402 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlternateContactTypeType = Literal["BILLING", "OPERATIONS", "SECURITY"] +ListRegionsPaginatorName = Literal["list_regions"] +PrimaryEmailUpdateStatusType = Literal["ACCEPTED", "PENDING"] +RegionOptStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLED_BY_DEFAULT", "ENABLING"] +AccountServiceName = Literal["account"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_regions"] diff --git a/aws_resource_validator/pydantic_models/acm_classes.py b/aws_resource_validator/pydantic_models/acm_classes.py new file mode 100644 index 00000000..6588370a --- /dev/null +++ b/aws_resource_validator/pydantic_models/acm_classes.py @@ -0,0 +1,238 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.acm_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class CertificateOptionsTypeDef(BaseModel): + CertificateTransparencyLoggingPreference: Optional[ CertificateTransparencyLoggingPreferenceType ] = None + +class ExtendedKeyUsageTypeDef(BaseModel): + Name: Optional[ExtendedKeyUsageNameType] = None + OID: Optional[str] = None + +class KeyUsageTypeDef(BaseModel): + Name: Optional[KeyUsageNameType] = None + +class CertificateSummaryTypeDef(BaseModel): + CertificateArn: Optional[str] = None + DomainName: Optional[str] = None + SubjectAlternativeNameSummaries: Optional[List[str]] = None + HasAdditionalSubjectAlternativeNames: Optional[bool] = None + Status: Optional[CertificateStatusType] = None + Type: Optional[CertificateTypeType] = None + KeyAlgorithm: Optional[KeyAlgorithmType] = None + KeyUsages: Optional[List[KeyUsageNameType]] = None + ExtendedKeyUsages: Optional[List[ExtendedKeyUsageNameType]] = None + InUse: Optional[bool] = None + Exported: Optional[bool] = None + RenewalEligibility: Optional[RenewalEligibilityType] = None + NotBefore: Optional[datetime] = None + NotAfter: Optional[datetime] = None + CreatedAt: Optional[datetime] = None + IssuedAt: Optional[datetime] = None + ImportedAt: Optional[datetime] = None + RevokedAt: Optional[datetime] = None + +class DeleteCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DomainValidationOptionTypeDef(BaseModel): + DomainName: str + ValidationDomain: str + +class ResourceRecordTypeDef(BaseModel): + Name: str + Type: Literal["CNAME"] + Value: str + +class ExpiryEventsConfigurationTypeDef(BaseModel): + DaysBeforeExpiry: Optional[int] = None + +class FiltersTypeDef(BaseModel): + extendedKeyUsage: Optional[Sequence[ExtendedKeyUsageNameType]] = None + keyUsage: Optional[Sequence[KeyUsageNameType]] = None + keyTypes: Optional[Sequence[KeyAlgorithmType]] = None + +class GetCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTagsForCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + +class RenewCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + +class ResendValidationEmailRequestRequestTypeDef(BaseModel): + CertificateArn: str + Domain: str + ValidationDomain: str + +class AddTagsToCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + Tags: Sequence[TagTypeDef] + +class RemoveTagsFromCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + Tags: Sequence[TagTypeDef] + +class ExportCertificateRequestRequestTypeDef(BaseModel): + CertificateArn: str + Passphrase: BlobTypeDef + +class ImportCertificateRequestRequestTypeDef(BaseModel): + Certificate: BlobTypeDef + PrivateKey: BlobTypeDef + CertificateArn: Optional[str] = None + CertificateChain: Optional[BlobTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateCertificateOptionsRequestRequestTypeDef(BaseModel): + CertificateArn: str + Options: CertificateOptionsTypeDef + +class DescribeCertificateRequestCertificateValidatedWaitTypeDef(BaseModel): + CertificateArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportCertificateResponseTypeDef(BaseModel): + Certificate: str + CertificateChain: str + PrivateKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCertificateResponseTypeDef(BaseModel): + Certificate: str + CertificateChain: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportCertificateResponseTypeDef(BaseModel): + CertificateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCertificatesResponseTypeDef(BaseModel): + CertificateSummaryList: List[CertificateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForCertificateResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RequestCertificateResponseTypeDef(BaseModel): + CertificateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RequestCertificateRequestRequestTypeDef(BaseModel): + DomainName: str + ValidationMethod: Optional[ValidationMethodType] = None + SubjectAlternativeNames: Optional[Sequence[str]] = None + IdempotencyToken: Optional[str] = None + DomainValidationOptions: Optional[Sequence[DomainValidationOptionTypeDef]] = None + Options: Optional[CertificateOptionsTypeDef] = None + CertificateAuthorityArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KeyAlgorithm: Optional[KeyAlgorithmType] = None + +class DomainValidationTypeDef(BaseModel): + DomainName: str + ValidationEmails: Optional[List[str]] = None + ValidationDomain: Optional[str] = None + ValidationStatus: Optional[DomainStatusType] = None + ResourceRecord: Optional[ResourceRecordTypeDef] = None + ValidationMethod: Optional[ValidationMethodType] = None + +class GetAccountConfigurationResponseTypeDef(BaseModel): + ExpiryEvents: ExpiryEventsConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccountConfigurationRequestRequestTypeDef(BaseModel): + IdempotencyToken: str + ExpiryEvents: Optional[ExpiryEventsConfigurationTypeDef] = None + +class ListCertificatesRequestRequestTypeDef(BaseModel): + CertificateStatuses: Optional[Sequence[CertificateStatusType]] = None + Includes: Optional[FiltersTypeDef] = None + NextToken: Optional[str] = None + MaxItems: Optional[int] = None + SortBy: Optional[Literal["CREATED_AT"]] = None + SortOrder: Optional[SortOrderType] = None + +class ListCertificatesRequestListCertificatesPaginateTypeDef(BaseModel): + CertificateStatuses: Optional[Sequence[CertificateStatusType]] = None + Includes: Optional[FiltersTypeDef] = None + SortBy: Optional[Literal["CREATED_AT"]] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class RenewalSummaryTypeDef(BaseModel): + RenewalStatus: RenewalStatusType + DomainValidationOptions: List[DomainValidationTypeDef] + UpdatedAt: datetime + RenewalStatusReason: Optional[FailureReasonType] = None + +class CertificateDetailTypeDef(BaseModel): + CertificateArn: Optional[str] = None + DomainName: Optional[str] = None + SubjectAlternativeNames: Optional[List[str]] = None + DomainValidationOptions: Optional[List[DomainValidationTypeDef]] = None + Serial: Optional[str] = None + Subject: Optional[str] = None + Issuer: Optional[str] = None + CreatedAt: Optional[datetime] = None + IssuedAt: Optional[datetime] = None + ImportedAt: Optional[datetime] = None + Status: Optional[CertificateStatusType] = None + RevokedAt: Optional[datetime] = None + RevocationReason: Optional[RevocationReasonType] = None + NotBefore: Optional[datetime] = None + NotAfter: Optional[datetime] = None + KeyAlgorithm: Optional[KeyAlgorithmType] = None + SignatureAlgorithm: Optional[str] = None + InUseBy: Optional[List[str]] = None + FailureReason: Optional[FailureReasonType] = None + Type: Optional[CertificateTypeType] = None + RenewalSummary: Optional[RenewalSummaryTypeDef] = None + KeyUsages: Optional[List[KeyUsageTypeDef]] = None + ExtendedKeyUsages: Optional[List[ExtendedKeyUsageTypeDef]] = None + CertificateAuthorityArn: Optional[str] = None + RenewalEligibility: Optional[RenewalEligibilityType] = None + Options: Optional[CertificateOptionsTypeDef] = None + +class DescribeCertificateResponseTypeDef(BaseModel): + Certificate: CertificateDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/acm_constants.py b/aws_resource_validator/pydantic_models/acm_constants.py new file mode 100644 index 00000000..cb456ff9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/acm_constants.py @@ -0,0 +1,500 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CertificateStatusType = Literal["EXPIRED", + "FAILED", + "INACTIVE", + "ISSUED", + "PENDING_VALIDATION", + "REVOKED", + "VALIDATION_TIMED_OUT",] +CertificateTransparencyLoggingPreferenceType = Literal["DISABLED", "ENABLED"] +CertificateTypeType = Literal["AMAZON_ISSUED", "IMPORTED", "PRIVATE"] +CertificateValidatedWaiterName = Literal["certificate_validated"] +DomainStatusType = Literal["FAILED", "PENDING_VALIDATION", "SUCCESS"] +ExtendedKeyUsageNameType = Literal["ANY", + "CODE_SIGNING", + "CUSTOM", + "EMAIL_PROTECTION", + "IPSEC_END_SYSTEM", + "IPSEC_TUNNEL", + "IPSEC_USER", + "NONE", + "OCSP_SIGNING", + "TIME_STAMPING", + "TLS_WEB_CLIENT_AUTHENTICATION", + "TLS_WEB_SERVER_AUTHENTICATION",] +FailureReasonType = Literal["ADDITIONAL_VERIFICATION_REQUIRED", + "CAA_ERROR", + "DOMAIN_NOT_ALLOWED", + "DOMAIN_VALIDATION_DENIED", + "INVALID_PUBLIC_DOMAIN", + "NO_AVAILABLE_CONTACTS", + "OTHER", + "PCA_ACCESS_DENIED", + "PCA_INVALID_ARGS", + "PCA_INVALID_ARN", + "PCA_INVALID_DURATION", + "PCA_INVALID_STATE", + "PCA_LIMIT_EXCEEDED", + "PCA_NAME_CONSTRAINTS_VALIDATION", + "PCA_REQUEST_FAILED", + "PCA_RESOURCE_NOT_FOUND", + "SLR_NOT_FOUND",] +KeyAlgorithmType = Literal["EC_prime256v1", "EC_secp384r1", "EC_secp521r1", "RSA_1024", "RSA_2048", "RSA_3072", "RSA_4096"] +KeyUsageNameType = Literal["ANY", + "CERTIFICATE_SIGNING", + "CRL_SIGNING", + "CUSTOM", + "DATA_ENCIPHERMENT", + "DECIPHER_ONLY", + "DIGITAL_SIGNATURE", + "ENCIPHER_ONLY", + "KEY_AGREEMENT", + "KEY_ENCIPHERMENT", + "NON_REPUDIATION",] +ListCertificatesPaginatorName = Literal["list_certificates"] +RecordTypeType = Literal["CNAME"] +RenewalEligibilityType = Literal["ELIGIBLE", "INELIGIBLE"] +RenewalStatusType = Literal["FAILED", "PENDING_AUTO_RENEWAL", "PENDING_VALIDATION", "SUCCESS"] +RevocationReasonType = Literal["AFFILIATION_CHANGED", + "A_A_COMPROMISE", + "CA_COMPROMISE", + "CERTIFICATE_HOLD", + "CESSATION_OF_OPERATION", + "KEY_COMPROMISE", + "PRIVILEGE_WITHDRAWN", + "REMOVE_FROM_CRL", + "SUPERCEDED", + "UNSPECIFIED",] +SortByType = Literal["CREATED_AT"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +ValidationMethodType = Literal["DNS", "EMAIL"] +ACMServiceName = Literal["acm"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_certificates"] +WaiterName = Literal["certificate_validated"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/acm_pca_classes.py b/aws_resource_validator/pydantic_models/acm_pca_classes.py new file mode 100644 index 00000000..483d92f8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/acm_pca_classes.py @@ -0,0 +1,455 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.acm_pca_constants import * + +class CustomAttributeTypeDef(BaseModel): + ObjectIdentifier: str + Value: str + +class AccessMethodTypeDef(BaseModel): + CustomObjectIdentifier: Optional[str] = None + AccessMethodType: Optional[AccessMethodTypeType] = None + +class CreateCertificateAuthorityAuditReportRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + S3BucketName: str + AuditReportResponseFormat: AuditReportResponseFormatType + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class CreatePermissionRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + Principal: str + Actions: Sequence[ActionTypeType] + SourceAccount: Optional[str] = None + +class CrlDistributionPointExtensionConfigurationTypeDef(BaseModel): + OmitExtension: bool + +class KeyUsageTypeDef(BaseModel): + DigitalSignature: Optional[bool] = None + NonRepudiation: Optional[bool] = None + KeyEncipherment: Optional[bool] = None + DataEncipherment: Optional[bool] = None + KeyAgreement: Optional[bool] = None + KeyCertSign: Optional[bool] = None + CRLSign: Optional[bool] = None + EncipherOnly: Optional[bool] = None + DecipherOnly: Optional[bool] = None + +class CustomExtensionTypeDef(BaseModel): + ObjectIdentifier: str + Value: str + Critical: Optional[bool] = None + +class DeleteCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + PermanentDeletionTimeInDays: Optional[int] = None + +class DeletePermissionRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + Principal: str + SourceAccount: Optional[str] = None + +class DeletePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeCertificateAuthorityAuditReportRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + AuditReportId: str + +class DescribeCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + +class EdiPartyNameTypeDef(BaseModel): + PartyName: str + NameAssigner: Optional[str] = None + +class ExtendedKeyUsageTypeDef(BaseModel): + ExtendedKeyUsageType: Optional[ExtendedKeyUsageTypeType] = None + ExtendedKeyUsageObjectIdentifier: Optional[str] = None + +class OtherNameTypeDef(BaseModel): + TypeId: str + Value: str + +class GetCertificateAuthorityCertificateRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + +class GetCertificateAuthorityCsrRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + +class GetCertificateRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + CertificateArn: str + +class GetPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ValidityTypeDef(BaseModel): + Value: int + Type: ValidityPeriodTypeType + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListCertificateAuthoritiesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ResourceOwner: Optional[ResourceOwnerType] = None + +class ListPermissionsRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PermissionTypeDef(BaseModel): + CertificateAuthorityArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Principal: Optional[str] = None + SourceAccount: Optional[str] = None + Actions: Optional[List[ActionTypeType]] = None + Policy: Optional[str] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OcspConfigurationTypeDef(BaseModel): + Enabled: bool + OcspCustomCname: Optional[str] = None + +class QualifierTypeDef(BaseModel): + CpsUri: str + +class PutPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class RestoreCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + +class RevokeCertificateRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + CertificateSerial: str + RevocationReason: RevocationReasonType + +class ASN1SubjectExtraOutputTypeDef(BaseModel): + Country: Optional[str] = None + Organization: Optional[str] = None + OrganizationalUnit: Optional[str] = None + DistinguishedNameQualifier: Optional[str] = None + State: Optional[str] = None + CommonName: Optional[str] = None + SerialNumber: Optional[str] = None + Locality: Optional[str] = None + Title: Optional[str] = None + Surname: Optional[str] = None + GivenName: Optional[str] = None + Initials: Optional[str] = None + Pseudonym: Optional[str] = None + GenerationQualifier: Optional[str] = None + CustomAttributes: Optional[List[CustomAttributeTypeDef]] = None + +class ASN1SubjectOutputTypeDef(BaseModel): + Country: Optional[str] = None + Organization: Optional[str] = None + OrganizationalUnit: Optional[str] = None + DistinguishedNameQualifier: Optional[str] = None + State: Optional[str] = None + CommonName: Optional[str] = None + SerialNumber: Optional[str] = None + Locality: Optional[str] = None + Title: Optional[str] = None + Surname: Optional[str] = None + GivenName: Optional[str] = None + Initials: Optional[str] = None + Pseudonym: Optional[str] = None + GenerationQualifier: Optional[str] = None + CustomAttributes: Optional[List[CustomAttributeTypeDef]] = None + +class ASN1SubjectTypeDef(BaseModel): + Country: Optional[str] = None + Organization: Optional[str] = None + OrganizationalUnit: Optional[str] = None + DistinguishedNameQualifier: Optional[str] = None + State: Optional[str] = None + CommonName: Optional[str] = None + SerialNumber: Optional[str] = None + Locality: Optional[str] = None + Title: Optional[str] = None + Surname: Optional[str] = None + GivenName: Optional[str] = None + Initials: Optional[str] = None + Pseudonym: Optional[str] = None + GenerationQualifier: Optional[str] = None + CustomAttributes: Optional[Sequence[CustomAttributeTypeDef]] = None + +class ImportCertificateAuthorityCertificateRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + Certificate: BlobTypeDef + CertificateChain: Optional[BlobTypeDef] = None + +class CreateCertificateAuthorityAuditReportResponseTypeDef(BaseModel): + AuditReportId: str + S3Key: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCertificateAuthorityResponseTypeDef(BaseModel): + CertificateAuthorityArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCertificateAuthorityAuditReportResponseTypeDef(BaseModel): + AuditReportStatus: AuditReportStatusType + S3BucketName: str + S3Key: str + CreatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCertificateAuthorityCertificateResponseTypeDef(BaseModel): + Certificate: str + CertificateChain: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCertificateAuthorityCsrResponseTypeDef(BaseModel): + Csr: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCertificateResponseTypeDef(BaseModel): + Certificate: str + CertificateChain: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class IssueCertificateResponseTypeDef(BaseModel): + CertificateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + Tags: Sequence[TagTypeDef] + +class UntagCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + Tags: Sequence[TagTypeDef] + +class CrlConfigurationTypeDef(BaseModel): + Enabled: bool + ExpirationInDays: Optional[int] = None + CustomCname: Optional[str] = None + S3BucketName: Optional[str] = None + S3ObjectAcl: Optional[S3ObjectAclType] = None + CrlDistributionPointExtensionConfiguration: Optional[ CrlDistributionPointExtensionConfigurationTypeDef ] = None + +class DescribeCertificateAuthorityAuditReportRequestAuditReportCreatedWaitTypeDef(BaseModel): + CertificateAuthorityArn: str + AuditReportId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetCertificateAuthorityCsrRequestCertificateAuthorityCSRCreatedWaitTypeDef(BaseModel): + CertificateAuthorityArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetCertificateRequestCertificateIssuedWaitTypeDef(BaseModel): + CertificateAuthorityArn: str + CertificateArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ListCertificateAuthoritiesRequestListCertificateAuthoritiesPaginateTypeDef(BaseModel): + ResourceOwner: Optional[ResourceOwnerType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionsRequestListPermissionsPaginateTypeDef(BaseModel): + CertificateAuthorityArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsRequestListTagsPaginateTypeDef(BaseModel): + CertificateAuthorityArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionsResponseTypeDef(BaseModel): + Permissions: List[PermissionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PolicyQualifierInfoTypeDef(BaseModel): + PolicyQualifierId: Literal["CPS"] + Qualifier: QualifierTypeDef + +class GeneralNameExtraOutputTypeDef(BaseModel): + OtherName: Optional[OtherNameTypeDef] = None + Rfc822Name: Optional[str] = None + DnsName: Optional[str] = None + DirectoryName: Optional[ASN1SubjectExtraOutputTypeDef] = None + EdiPartyName: Optional[EdiPartyNameTypeDef] = None + UniformResourceIdentifier: Optional[str] = None + IpAddress: Optional[str] = None + RegisteredId: Optional[str] = None + +class GeneralNameOutputTypeDef(BaseModel): + OtherName: Optional[OtherNameTypeDef] = None + Rfc822Name: Optional[str] = None + DnsName: Optional[str] = None + DirectoryName: Optional[ASN1SubjectOutputTypeDef] = None + EdiPartyName: Optional[EdiPartyNameTypeDef] = None + UniformResourceIdentifier: Optional[str] = None + IpAddress: Optional[str] = None + RegisteredId: Optional[str] = None + +class GeneralNameTypeDef(BaseModel): + OtherName: Optional[OtherNameTypeDef] = None + Rfc822Name: Optional[str] = None + DnsName: Optional[str] = None + DirectoryName: Optional[ASN1SubjectTypeDef] = None + EdiPartyName: Optional[EdiPartyNameTypeDef] = None + UniformResourceIdentifier: Optional[str] = None + IpAddress: Optional[str] = None + RegisteredId: Optional[str] = None + +class RevocationConfigurationTypeDef(BaseModel): + CrlConfiguration: Optional[CrlConfigurationTypeDef] = None + OcspConfiguration: Optional[OcspConfigurationTypeDef] = None + +class PolicyInformationTypeDef(BaseModel): + CertPolicyId: str + PolicyQualifiers: Optional[Sequence[PolicyQualifierInfoTypeDef]] = None + +class AccessDescriptionExtraOutputTypeDef(BaseModel): + AccessMethod: AccessMethodTypeDef + AccessLocation: GeneralNameExtraOutputTypeDef + +class AccessDescriptionOutputTypeDef(BaseModel): + AccessMethod: AccessMethodTypeDef + AccessLocation: GeneralNameOutputTypeDef + +class AccessDescriptionTypeDef(BaseModel): + AccessMethod: AccessMethodTypeDef + AccessLocation: GeneralNameTypeDef + +class UpdateCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + RevocationConfiguration: Optional[RevocationConfigurationTypeDef] = None + Status: Optional[CertificateAuthorityStatusType] = None + +class ExtensionsTypeDef(BaseModel): + CertificatePolicies: Optional[Sequence[PolicyInformationTypeDef]] = None + ExtendedKeyUsage: Optional[Sequence[ExtendedKeyUsageTypeDef]] = None + KeyUsage: Optional[KeyUsageTypeDef] = None + SubjectAlternativeNames: Optional[Sequence[GeneralNameTypeDef]] = None + CustomExtensions: Optional[Sequence[CustomExtensionTypeDef]] = None + +class CsrExtensionsExtraOutputTypeDef(BaseModel): + KeyUsage: Optional[KeyUsageTypeDef] = None + SubjectInformationAccess: Optional[List[AccessDescriptionExtraOutputTypeDef]] = None + +class CsrExtensionsOutputTypeDef(BaseModel): + KeyUsage: Optional[KeyUsageTypeDef] = None + SubjectInformationAccess: Optional[List[AccessDescriptionOutputTypeDef]] = None + +class CsrExtensionsTypeDef(BaseModel): + KeyUsage: Optional[KeyUsageTypeDef] = None + SubjectInformationAccess: Optional[Sequence[AccessDescriptionTypeDef]] = None + +class ApiPassthroughTypeDef(BaseModel): + Extensions: Optional[ExtensionsTypeDef] = None + Subject: Optional[ASN1SubjectTypeDef] = None + +class CertificateAuthorityConfigurationExtraOutputTypeDef(BaseModel): + KeyAlgorithm: KeyAlgorithmType + SigningAlgorithm: SigningAlgorithmType + Subject: ASN1SubjectExtraOutputTypeDef + CsrExtensions: Optional[CsrExtensionsExtraOutputTypeDef] = None + +class CertificateAuthorityConfigurationOutputTypeDef(BaseModel): + KeyAlgorithm: KeyAlgorithmType + SigningAlgorithm: SigningAlgorithmType + Subject: ASN1SubjectOutputTypeDef + CsrExtensions: Optional[CsrExtensionsOutputTypeDef] = None + +class CertificateAuthorityConfigurationTypeDef(BaseModel): + KeyAlgorithm: KeyAlgorithmType + SigningAlgorithm: SigningAlgorithmType + Subject: ASN1SubjectTypeDef + CsrExtensions: Optional[CsrExtensionsTypeDef] = None + +class IssueCertificateRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + Csr: BlobTypeDef + SigningAlgorithm: SigningAlgorithmType + Validity: ValidityTypeDef + ApiPassthrough: Optional[ApiPassthroughTypeDef] = None + TemplateArn: Optional[str] = None + ValidityNotBefore: Optional[ValidityTypeDef] = None + IdempotencyToken: Optional[str] = None + +class CertificateAuthorityTypeDef(BaseModel): + Arn: Optional[str] = None + OwnerAccount: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastStateChangeAt: Optional[datetime] = None + Type: Optional[CertificateAuthorityTypeType] = None + Serial: Optional[str] = None + Status: Optional[CertificateAuthorityStatusType] = None + NotBefore: Optional[datetime] = None + NotAfter: Optional[datetime] = None + FailureReason: Optional[FailureReasonType] = None + CertificateAuthorityConfiguration: Optional[ CertificateAuthorityConfigurationOutputTypeDef ] = None + RevocationConfiguration: Optional[RevocationConfigurationTypeDef] = None + RestorableUntil: Optional[datetime] = None + KeyStorageSecurityStandard: Optional[KeyStorageSecurityStandardType] = None + UsageMode: Optional[CertificateAuthorityUsageModeType] = None + +class CreateCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityConfiguration: CertificateAuthorityConfigurationTypeDef + CertificateAuthorityType: CertificateAuthorityTypeType + RevocationConfiguration: Optional[RevocationConfigurationTypeDef] = None + IdempotencyToken: Optional[str] = None + KeyStorageSecurityStandard: Optional[KeyStorageSecurityStandardType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + UsageMode: Optional[CertificateAuthorityUsageModeType] = None + +class DescribeCertificateAuthorityResponseTypeDef(BaseModel): + CertificateAuthority: CertificateAuthorityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCertificateAuthoritiesResponseTypeDef(BaseModel): + CertificateAuthorities: List[CertificateAuthorityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/acm_pca_constants.py b/aws_resource_validator/pydantic_models/acm_pca_constants.py new file mode 100644 index 00000000..835c6c36 --- /dev/null +++ b/aws_resource_validator/pydantic_models/acm_pca_constants.py @@ -0,0 +1,476 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessMethodTypeType = Literal["CA_REPOSITORY", "RESOURCE_PKI_MANIFEST", "RESOURCE_PKI_NOTIFY"] +ActionTypeType = Literal["GetCertificate", "IssueCertificate", "ListPermissions"] +AuditReportCreatedWaiterName = Literal["audit_report_created"] +AuditReportResponseFormatType = Literal["CSV", "JSON"] +AuditReportStatusType = Literal["CREATING", "FAILED", "SUCCESS"] +CertificateAuthorityCSRCreatedWaiterName = Literal["certificate_authority_csr_created"] +CertificateAuthorityStatusType = Literal["ACTIVE", "CREATING", "DELETED", "DISABLED", "EXPIRED", "FAILED", "PENDING_CERTIFICATE"] +CertificateAuthorityTypeType = Literal["ROOT", "SUBORDINATE"] +CertificateAuthorityUsageModeType = Literal["GENERAL_PURPOSE", "SHORT_LIVED_CERTIFICATE"] +CertificateIssuedWaiterName = Literal["certificate_issued"] +ExtendedKeyUsageTypeType = Literal["CERTIFICATE_TRANSPARENCY", + "CLIENT_AUTH", + "CODE_SIGNING", + "DOCUMENT_SIGNING", + "EMAIL_PROTECTION", + "OCSP_SIGNING", + "SERVER_AUTH", + "SMART_CARD_LOGIN", + "TIME_STAMPING",] +FailureReasonType = Literal["OTHER", "REQUEST_TIMED_OUT", "UNSUPPORTED_ALGORITHM"] +KeyAlgorithmType = Literal["EC_prime256v1", "EC_secp384r1", "RSA_2048", "RSA_4096", "SM2"] +KeyStorageSecurityStandardType = Literal["CCPC_LEVEL_1_OR_HIGHER", "FIPS_140_2_LEVEL_2_OR_HIGHER", "FIPS_140_2_LEVEL_3_OR_HIGHER"] +ListCertificateAuthoritiesPaginatorName = Literal["list_certificate_authorities"] +ListPermissionsPaginatorName = Literal["list_permissions"] +ListTagsPaginatorName = Literal["list_tags"] +PolicyQualifierIdType = Literal["CPS"] +ResourceOwnerType = Literal["OTHER_ACCOUNTS", "SELF"] +RevocationReasonType = Literal["AFFILIATION_CHANGED", + "A_A_COMPROMISE", + "CERTIFICATE_AUTHORITY_COMPROMISE", + "CESSATION_OF_OPERATION", + "KEY_COMPROMISE", + "PRIVILEGE_WITHDRAWN", + "SUPERSEDED", + "UNSPECIFIED",] +S3ObjectAclType = Literal["BUCKET_OWNER_FULL_CONTROL", "PUBLIC_READ"] +SigningAlgorithmType = Literal["SHA256WITHECDSA", + "SHA256WITHRSA", + "SHA384WITHECDSA", + "SHA384WITHRSA", + "SHA512WITHECDSA", + "SHA512WITHRSA", + "SM3WITHSM2",] +ValidityPeriodTypeType = Literal["ABSOLUTE", "DAYS", "END_DATE", "MONTHS", "YEARS"] +ACMPCAServiceName = Literal["acm-pca"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_certificate_authorities", "list_permissions", "list_tags"] +WaiterName = Literal["audit_report_created", "certificate_authority_csr_created", "certificate_issued"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +CertificateAuthorityConfigurationUnionTypeDef = Union[ 'CertificateAuthorityConfigurationTypeDef', 'CertificateAuthorityConfigurationExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/amp_classes.py b/aws_resource_validator/pydantic_models/amp_classes.py new file mode 100644 index 00000000..aef14d64 --- /dev/null +++ b/aws_resource_validator/pydantic_models/amp_classes.py @@ -0,0 +1,407 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.amp_constants import * + +class AlertManagerDefinitionStatusTypeDef(BaseModel): + statusCode: AlertManagerDefinitionStatusCodeType + statusReason: Optional[str] = None + +class AmpConfigurationTypeDef(BaseModel): + workspaceArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateLoggingConfigurationRequestRequestTypeDef(BaseModel): + logGroupArn: str + workspaceId: str + clientToken: Optional[str] = None + +class LoggingConfigurationStatusTypeDef(BaseModel): + statusCode: LoggingConfigurationStatusCodeType + statusReason: Optional[str] = None + +class RuleGroupsNamespaceStatusTypeDef(BaseModel): + statusCode: RuleGroupsNamespaceStatusCodeType + statusReason: Optional[str] = None + +class ScraperStatusTypeDef(BaseModel): + statusCode: ScraperStatusCodeType + +class CreateWorkspaceRequestRequestTypeDef(BaseModel): + alias: Optional[str] = None + clientToken: Optional[str] = None + kmsKeyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class WorkspaceStatusTypeDef(BaseModel): + statusCode: WorkspaceStatusCodeType + +class DeleteAlertManagerDefinitionRequestRequestTypeDef(BaseModel): + workspaceId: str + clientToken: Optional[str] = None + +class DeleteLoggingConfigurationRequestRequestTypeDef(BaseModel): + workspaceId: str + clientToken: Optional[str] = None + +class DeleteRuleGroupsNamespaceRequestRequestTypeDef(BaseModel): + name: str + workspaceId: str + clientToken: Optional[str] = None + +class DeleteScraperRequestRequestTypeDef(BaseModel): + scraperId: str + clientToken: Optional[str] = None + +class DeleteWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + clientToken: Optional[str] = None + +class DescribeAlertManagerDefinitionRequestRequestTypeDef(BaseModel): + workspaceId: str + +class DescribeLoggingConfigurationRequestRequestTypeDef(BaseModel): + workspaceId: str + +class DescribeRuleGroupsNamespaceRequestRequestTypeDef(BaseModel): + name: str + workspaceId: str + +class DescribeScraperRequestRequestTypeDef(BaseModel): + scraperId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + +class EksConfigurationPaginatorTypeDef(BaseModel): + clusterArn: str + subnetIds: List[str] + securityGroupIds: Optional[List[str]] = None + +class EksConfigurationTypeDef(BaseModel): + clusterArn: str + subnetIds: Sequence[str] + securityGroupIds: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRuleGroupsNamespacesRequestRequestTypeDef(BaseModel): + workspaceId: str + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + +class ListScrapersRequestRequestTypeDef(BaseModel): + filters: Optional[Mapping[str, Sequence[str]]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListWorkspacesRequestRequestTypeDef(BaseModel): + alias: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateLoggingConfigurationRequestRequestTypeDef(BaseModel): + logGroupArn: str + workspaceId: str + clientToken: Optional[str] = None + +class UpdateWorkspaceAliasRequestRequestTypeDef(BaseModel): + workspaceId: str + alias: Optional[str] = None + clientToken: Optional[str] = None + +class AlertManagerDefinitionDescriptionTypeDef(BaseModel): + createdAt: datetime + data: bytes + modifiedAt: datetime + status: AlertManagerDefinitionStatusTypeDef + +class DestinationTypeDef(BaseModel): + ampConfiguration: Optional[AmpConfigurationTypeDef] = None + +class CreateAlertManagerDefinitionRequestRequestTypeDef(BaseModel): + data: BlobTypeDef + workspaceId: str + clientToken: Optional[str] = None + +class CreateRuleGroupsNamespaceRequestRequestTypeDef(BaseModel): + data: BlobTypeDef + name: str + workspaceId: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class PutAlertManagerDefinitionRequestRequestTypeDef(BaseModel): + data: BlobTypeDef + workspaceId: str + clientToken: Optional[str] = None + +class PutRuleGroupsNamespaceRequestRequestTypeDef(BaseModel): + data: BlobTypeDef + name: str + workspaceId: str + clientToken: Optional[str] = None + +class ScrapeConfigurationTypeDef(BaseModel): + configurationBlob: Optional[BlobTypeDef] = None + +class CreateAlertManagerDefinitionResponseTypeDef(BaseModel): + status: AlertManagerDefinitionStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDefaultScraperConfigurationResponseTypeDef(BaseModel): + configuration: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAlertManagerDefinitionResponseTypeDef(BaseModel): + status: AlertManagerDefinitionStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoggingConfigurationResponseTypeDef(BaseModel): + status: LoggingConfigurationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingConfigurationMetadataTypeDef(BaseModel): + createdAt: datetime + logGroupArn: str + modifiedAt: datetime + status: LoggingConfigurationStatusTypeDef + workspace: str + +class UpdateLoggingConfigurationResponseTypeDef(BaseModel): + status: LoggingConfigurationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleGroupsNamespaceResponseTypeDef(BaseModel): + arn: str + name: str + status: RuleGroupsNamespaceStatusTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRuleGroupsNamespaceResponseTypeDef(BaseModel): + arn: str + name: str + status: RuleGroupsNamespaceStatusTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RuleGroupsNamespaceDescriptionTypeDef(BaseModel): + arn: str + createdAt: datetime + data: bytes + modifiedAt: datetime + name: str + status: RuleGroupsNamespaceStatusTypeDef + tags: Optional[Dict[str, str]] = None + +class RuleGroupsNamespaceSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + modifiedAt: datetime + name: str + status: RuleGroupsNamespaceStatusTypeDef + tags: Optional[Dict[str, str]] = None + +class CreateScraperResponseTypeDef(BaseModel): + arn: str + scraperId: str + status: ScraperStatusTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteScraperResponseTypeDef(BaseModel): + scraperId: str + status: ScraperStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkspaceResponseTypeDef(BaseModel): + arn: str + kmsKeyArn: str + status: WorkspaceStatusTypeDef + tags: Dict[str, str] + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class WorkspaceDescriptionTypeDef(BaseModel): + arn: str + createdAt: datetime + status: WorkspaceStatusTypeDef + workspaceId: str + alias: Optional[str] = None + kmsKeyArn: Optional[str] = None + prometheusEndpoint: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class WorkspaceSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + status: WorkspaceStatusTypeDef + workspaceId: str + alias: Optional[str] = None + kmsKeyArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class DescribeScraperRequestScraperActiveWaitTypeDef(BaseModel): + scraperId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeScraperRequestScraperDeletedWaitTypeDef(BaseModel): + scraperId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeWorkspaceRequestWorkspaceActiveWaitTypeDef(BaseModel): + workspaceId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeWorkspaceRequestWorkspaceDeletedWaitTypeDef(BaseModel): + workspaceId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class SourcePaginatorTypeDef(BaseModel): + eksConfiguration: Optional[EksConfigurationPaginatorTypeDef] = None + +class SourceTypeDef(BaseModel): + eksConfiguration: Optional[EksConfigurationTypeDef] = None + +class ListRuleGroupsNamespacesRequestListRuleGroupsNamespacesPaginateTypeDef(BaseModel): + workspaceId: str + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScrapersRequestListScrapersPaginateTypeDef(BaseModel): + filters: Optional[Mapping[str, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkspacesRequestListWorkspacesPaginateTypeDef(BaseModel): + alias: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAlertManagerDefinitionResponseTypeDef(BaseModel): + alertManagerDefinition: AlertManagerDefinitionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoggingConfigurationResponseTypeDef(BaseModel): + loggingConfiguration: LoggingConfigurationMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRuleGroupsNamespaceResponseTypeDef(BaseModel): + ruleGroupsNamespace: RuleGroupsNamespaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRuleGroupsNamespacesResponseTypeDef(BaseModel): + nextToken: str + ruleGroupsNamespaces: List[RuleGroupsNamespaceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspaceResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkspacesResponseTypeDef(BaseModel): + nextToken: str + workspaces: List[WorkspaceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ScraperSummaryPaginatorTypeDef(BaseModel): + arn: str + createdAt: datetime + destination: DestinationTypeDef + lastModifiedAt: datetime + roleArn: str + scraperId: str + source: SourcePaginatorTypeDef + status: ScraperStatusTypeDef + alias: Optional[str] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class CreateScraperRequestRequestTypeDef(BaseModel): + destination: DestinationTypeDef + scrapeConfiguration: ScrapeConfigurationTypeDef + source: SourceTypeDef + alias: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ScraperDescriptionTypeDef(BaseModel): + arn: str + createdAt: datetime + destination: DestinationTypeDef + lastModifiedAt: datetime + roleArn: str + scrapeConfiguration: ScrapeConfigurationTypeDef + scraperId: str + source: SourceTypeDef + status: ScraperStatusTypeDef + alias: Optional[str] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ScraperSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + destination: DestinationTypeDef + lastModifiedAt: datetime + roleArn: str + scraperId: str + source: SourceTypeDef + status: ScraperStatusTypeDef + alias: Optional[str] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListScrapersResponsePaginatorTypeDef(BaseModel): + nextToken: str + scrapers: List[ScraperSummaryPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScraperResponseTypeDef(BaseModel): + scraper: ScraperDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListScrapersResponseTypeDef(BaseModel): + nextToken: str + scrapers: List[ScraperSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/amp_constants.py b/aws_resource_validator/pydantic_models/amp_constants.py new file mode 100644 index 00000000..1492dca8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/amp_constants.py @@ -0,0 +1,420 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlertManagerDefinitionStatusCodeType = Literal["ACTIVE", "CREATING", "CREATION_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +ListRuleGroupsNamespacesPaginatorName = Literal["list_rule_groups_namespaces"] +ListScrapersPaginatorName = Literal["list_scrapers"] +ListWorkspacesPaginatorName = Literal["list_workspaces"] +LoggingConfigurationStatusCodeType = Literal["ACTIVE", "CREATING", "CREATION_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +RuleGroupsNamespaceStatusCodeType = Literal["ACTIVE", "CREATING", "CREATION_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +ScraperActiveWaiterName = Literal["scraper_active"] +ScraperDeletedWaiterName = Literal["scraper_deleted"] +ScraperStatusCodeType = Literal["ACTIVE", "CREATING", "CREATION_FAILED", "DELETING", "DELETION_FAILED"] +WorkspaceActiveWaiterName = Literal["workspace_active"] +WorkspaceDeletedWaiterName = Literal["workspace_deleted"] +WorkspaceStatusCodeType = Literal["ACTIVE", "CREATING", "CREATION_FAILED", "DELETING", "UPDATING"] +PrometheusServiceServiceName = Literal["amp"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_rule_groups_namespaces", "list_scrapers", "list_workspaces"] +WaiterName = Literal["scraper_active", "scraper_deleted", "workspace_active", "workspace_deleted"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/amplify_classes.py b/aws_resource_validator/pydantic_models/amplify_classes.py new file mode 100644 index 00000000..59c64466 --- /dev/null +++ b/aws_resource_validator/pydantic_models/amplify_classes.py @@ -0,0 +1,625 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.amplify_constants import * + +class AutoBranchCreationConfigOutputTypeDef(BaseModel): + stage: Optional[StageType] = None + framework: Optional[str] = None + enableAutoBuild: Optional[bool] = None + environmentVariables: Optional[Dict[str, str]] = None + basicAuthCredentials: Optional[str] = None + enableBasicAuth: Optional[bool] = None + enablePerformanceMode: Optional[bool] = None + buildSpec: Optional[str] = None + enablePullRequestPreview: Optional[bool] = None + pullRequestEnvironmentName: Optional[str] = None + +class CustomRuleTypeDef(BaseModel): + source: str + target: str + status: Optional[str] = None + condition: Optional[str] = None + +class ProductionBranchTypeDef(BaseModel): + lastDeployTime: Optional[datetime] = None + status: Optional[str] = None + thumbnailUrl: Optional[str] = None + branchName: Optional[str] = None + +class ArtifactTypeDef(BaseModel): + artifactFileName: str + artifactId: str + +class AutoBranchCreationConfigExtraOutputTypeDef(BaseModel): + stage: Optional[StageType] = None + framework: Optional[str] = None + enableAutoBuild: Optional[bool] = None + environmentVariables: Optional[Dict[str, str]] = None + basicAuthCredentials: Optional[str] = None + enableBasicAuth: Optional[bool] = None + enablePerformanceMode: Optional[bool] = None + buildSpec: Optional[str] = None + enablePullRequestPreview: Optional[bool] = None + pullRequestEnvironmentName: Optional[str] = None + +class AutoBranchCreationConfigTypeDef(BaseModel): + stage: Optional[StageType] = None + framework: Optional[str] = None + enableAutoBuild: Optional[bool] = None + environmentVariables: Optional[Mapping[str, str]] = None + basicAuthCredentials: Optional[str] = None + enableBasicAuth: Optional[bool] = None + enablePerformanceMode: Optional[bool] = None + buildSpec: Optional[str] = None + enablePullRequestPreview: Optional[bool] = None + pullRequestEnvironmentName: Optional[str] = None + +class BackendEnvironmentTypeDef(BaseModel): + backendEnvironmentArn: str + environmentName: str + createTime: datetime + updateTime: datetime + stackName: Optional[str] = None + deploymentArtifacts: Optional[str] = None + +class BackendTypeDef(BaseModel): + stackArn: Optional[str] = None + +class CertificateSettingsTypeDef(BaseModel): + type: CertificateTypeType + customCertificateArn: Optional[str] = None + +class CertificateTypeDef(BaseModel): + type: CertificateTypeType + customCertificateArn: Optional[str] = None + certificateVerificationDNSRecord: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateBackendEnvironmentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + stackName: Optional[str] = None + deploymentArtifacts: Optional[str] = None + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + fileMap: Optional[Mapping[str, str]] = None + +class SubDomainSettingTypeDef(BaseModel): + prefix: str + branchName: str + +class CreateWebhookRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + description: Optional[str] = None + +class WebhookTypeDef(BaseModel): + webhookArn: str + webhookId: str + webhookUrl: str + branchName: str + description: str + createTime: datetime + updateTime: datetime + +class DeleteAppRequestRequestTypeDef(BaseModel): + appId: str + +class DeleteBackendEnvironmentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + +class DeleteBranchRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + +class DeleteDomainAssociationRequestRequestTypeDef(BaseModel): + appId: str + domainName: str + +class DeleteJobRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + jobId: str + +class JobSummaryTypeDef(BaseModel): + jobArn: str + jobId: str + commitId: str + commitMessage: str + commitTime: datetime + startTime: datetime + status: JobStatusType + jobType: JobTypeType + endTime: Optional[datetime] = None + +class DeleteWebhookRequestRequestTypeDef(BaseModel): + webhookId: str + +class GetAppRequestRequestTypeDef(BaseModel): + appId: str + +class GetArtifactUrlRequestRequestTypeDef(BaseModel): + artifactId: str + +class GetBackendEnvironmentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + +class GetBranchRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + +class GetDomainAssociationRequestRequestTypeDef(BaseModel): + appId: str + domainName: str + +class GetJobRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + jobId: str + +class GetWebhookRequestRequestTypeDef(BaseModel): + webhookId: str + +class StepTypeDef(BaseModel): + stepName: str + startTime: datetime + status: JobStatusType + endTime: datetime + logUrl: Optional[str] = None + artifactsUrl: Optional[str] = None + testArtifactsUrl: Optional[str] = None + testConfigUrl: Optional[str] = None + screenshots: Optional[Dict[str, str]] = None + statusReason: Optional[str] = None + context: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAppsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListArtifactsRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + jobId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListBackendEnvironmentsRequestRequestTypeDef(BaseModel): + appId: str + environmentName: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListBranchesRequestRequestTypeDef(BaseModel): + appId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDomainAssociationsRequestRequestTypeDef(BaseModel): + appId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListWebhooksRequestRequestTypeDef(BaseModel): + appId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class StartDeploymentRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + jobId: Optional[str] = None + sourceUrl: Optional[str] = None + +class StopJobRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + jobId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateWebhookRequestRequestTypeDef(BaseModel): + webhookId: str + branchName: Optional[str] = None + description: Optional[str] = None + +class AppTypeDef(BaseModel): + appId: str + appArn: str + name: str + description: str + repository: str + platform: PlatformType + createTime: datetime + updateTime: datetime + environmentVariables: Dict[str, str] + defaultDomain: str + enableBranchAutoBuild: bool + enableBasicAuth: bool + tags: Optional[Dict[str, str]] = None + iamServiceRoleArn: Optional[str] = None + enableBranchAutoDeletion: Optional[bool] = None + basicAuthCredentials: Optional[str] = None + customRules: Optional[List[CustomRuleTypeDef]] = None + productionBranch: Optional[ProductionBranchTypeDef] = None + buildSpec: Optional[str] = None + customHeaders: Optional[str] = None + enableAutoBranchCreation: Optional[bool] = None + autoBranchCreationPatterns: Optional[List[str]] = None + autoBranchCreationConfig: Optional[AutoBranchCreationConfigOutputTypeDef] = None + repositoryCloneMethod: Optional[RepositoryCloneMethodType] = None + +class CreateAppRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + repository: Optional[str] = None + platform: Optional[PlatformType] = None + iamServiceRoleArn: Optional[str] = None + oauthToken: Optional[str] = None + accessToken: Optional[str] = None + environmentVariables: Optional[Mapping[str, str]] = None + enableBranchAutoBuild: Optional[bool] = None + enableBranchAutoDeletion: Optional[bool] = None + enableBasicAuth: Optional[bool] = None + basicAuthCredentials: Optional[str] = None + customRules: Optional[Sequence[CustomRuleTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + buildSpec: Optional[str] = None + customHeaders: Optional[str] = None + enableAutoBranchCreation: Optional[bool] = None + autoBranchCreationPatterns: Optional[Sequence[str]] = None + autoBranchCreationConfig: Optional[AutoBranchCreationConfigTypeDef] = None + +class UpdateAppRequestRequestTypeDef(BaseModel): + appId: str + name: Optional[str] = None + description: Optional[str] = None + platform: Optional[PlatformType] = None + iamServiceRoleArn: Optional[str] = None + environmentVariables: Optional[Mapping[str, str]] = None + enableBranchAutoBuild: Optional[bool] = None + enableBranchAutoDeletion: Optional[bool] = None + enableBasicAuth: Optional[bool] = None + basicAuthCredentials: Optional[str] = None + customRules: Optional[Sequence[CustomRuleTypeDef]] = None + buildSpec: Optional[str] = None + customHeaders: Optional[str] = None + enableAutoBranchCreation: Optional[bool] = None + autoBranchCreationPatterns: Optional[Sequence[str]] = None + autoBranchCreationConfig: Optional[AutoBranchCreationConfigTypeDef] = None + repository: Optional[str] = None + oauthToken: Optional[str] = None + accessToken: Optional[str] = None + +class BranchTypeDef(BaseModel): + branchArn: str + branchName: str + description: str + stage: StageType + displayName: str + enableNotification: bool + createTime: datetime + updateTime: datetime + environmentVariables: Dict[str, str] + enableAutoBuild: bool + customDomains: List[str] + framework: str + activeJobId: str + totalNumberOfJobs: str + enableBasicAuth: bool + ttl: str + enablePullRequestPreview: bool + tags: Optional[Dict[str, str]] = None + enablePerformanceMode: Optional[bool] = None + thumbnailUrl: Optional[str] = None + basicAuthCredentials: Optional[str] = None + buildSpec: Optional[str] = None + associatedResources: Optional[List[str]] = None + pullRequestEnvironmentName: Optional[str] = None + destinationBranch: Optional[str] = None + sourceBranch: Optional[str] = None + backendEnvironmentArn: Optional[str] = None + backend: Optional[BackendTypeDef] = None + +class CreateBranchRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + description: Optional[str] = None + stage: Optional[StageType] = None + framework: Optional[str] = None + enableNotification: Optional[bool] = None + enableAutoBuild: Optional[bool] = None + environmentVariables: Optional[Mapping[str, str]] = None + basicAuthCredentials: Optional[str] = None + enableBasicAuth: Optional[bool] = None + enablePerformanceMode: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + buildSpec: Optional[str] = None + ttl: Optional[str] = None + displayName: Optional[str] = None + enablePullRequestPreview: Optional[bool] = None + pullRequestEnvironmentName: Optional[str] = None + backendEnvironmentArn: Optional[str] = None + backend: Optional[BackendTypeDef] = None + +class UpdateBranchRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + description: Optional[str] = None + framework: Optional[str] = None + stage: Optional[StageType] = None + enableNotification: Optional[bool] = None + enableAutoBuild: Optional[bool] = None + environmentVariables: Optional[Mapping[str, str]] = None + basicAuthCredentials: Optional[str] = None + enableBasicAuth: Optional[bool] = None + enablePerformanceMode: Optional[bool] = None + buildSpec: Optional[str] = None + ttl: Optional[str] = None + displayName: Optional[str] = None + enablePullRequestPreview: Optional[bool] = None + pullRequestEnvironmentName: Optional[str] = None + backendEnvironmentArn: Optional[str] = None + backend: Optional[BackendTypeDef] = None + +class CreateBackendEnvironmentResultTypeDef(BaseModel): + backendEnvironment: BackendEnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentResultTypeDef(BaseModel): + jobId: str + fileUploadUrls: Dict[str, str] + zipUploadUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackendEnvironmentResultTypeDef(BaseModel): + backendEnvironment: BackendEnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateAccessLogsResultTypeDef(BaseModel): + logUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetArtifactUrlResultTypeDef(BaseModel): + artifactId: str + artifactUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackendEnvironmentResultTypeDef(BaseModel): + backendEnvironment: BackendEnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListArtifactsResultTypeDef(BaseModel): + artifacts: List[ArtifactTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackendEnvironmentsResultTypeDef(BaseModel): + backendEnvironments: List[BackendEnvironmentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainAssociationRequestRequestTypeDef(BaseModel): + appId: str + domainName: str + subDomainSettings: Sequence[SubDomainSettingTypeDef] + enableAutoSubDomain: Optional[bool] = None + autoSubDomainCreationPatterns: Optional[Sequence[str]] = None + autoSubDomainIAMRole: Optional[str] = None + certificateSettings: Optional[CertificateSettingsTypeDef] = None + +class SubDomainTypeDef(BaseModel): + subDomainSetting: SubDomainSettingTypeDef + verified: bool + dnsRecord: str + +class UpdateDomainAssociationRequestRequestTypeDef(BaseModel): + appId: str + domainName: str + enableAutoSubDomain: Optional[bool] = None + subDomainSettings: Optional[Sequence[SubDomainSettingTypeDef]] = None + autoSubDomainCreationPatterns: Optional[Sequence[str]] = None + autoSubDomainIAMRole: Optional[str] = None + certificateSettings: Optional[CertificateSettingsTypeDef] = None + +class CreateWebhookResultTypeDef(BaseModel): + webhook: WebhookTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWebhookResultTypeDef(BaseModel): + webhook: WebhookTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWebhookResultTypeDef(BaseModel): + webhook: WebhookTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebhooksResultTypeDef(BaseModel): + webhooks: List[WebhookTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebhookResultTypeDef(BaseModel): + webhook: WebhookTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteJobResultTypeDef(BaseModel): + jobSummary: JobSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsResultTypeDef(BaseModel): + jobSummaries: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDeploymentResultTypeDef(BaseModel): + jobSummary: JobSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartJobResultTypeDef(BaseModel): + jobSummary: JobSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopJobResultTypeDef(BaseModel): + jobSummary: JobSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateAccessLogsRequestRequestTypeDef(BaseModel): + domainName: str + appId: str + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + +class StartJobRequestRequestTypeDef(BaseModel): + appId: str + branchName: str + jobType: JobTypeType + jobId: Optional[str] = None + jobReason: Optional[str] = None + commitId: Optional[str] = None + commitMessage: Optional[str] = None + commitTime: Optional[TimestampTypeDef] = None + +class JobTypeDef(BaseModel): + summary: JobSummaryTypeDef + steps: List[StepTypeDef] + +class ListAppsRequestListAppsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBranchesRequestListBranchesPaginateTypeDef(BaseModel): + appId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainAssociationsRequestListDomainAssociationsPaginateTypeDef(BaseModel): + appId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + appId: str + branchName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateAppResultTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAppResultTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppResultTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppsResultTypeDef(BaseModel): + apps: List[AppTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppResultTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBranchResultTypeDef(BaseModel): + branch: BranchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBranchResultTypeDef(BaseModel): + branch: BranchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBranchResultTypeDef(BaseModel): + branch: BranchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBranchesResultTypeDef(BaseModel): + branches: List[BranchTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBranchResultTypeDef(BaseModel): + branch: BranchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DomainAssociationTypeDef(BaseModel): + domainAssociationArn: str + domainName: str + enableAutoSubDomain: bool + domainStatus: DomainStatusType + statusReason: str + subDomains: List[SubDomainTypeDef] + autoSubDomainCreationPatterns: Optional[List[str]] = None + autoSubDomainIAMRole: Optional[str] = None + updateStatus: Optional[UpdateStatusType] = None + certificateVerificationDNSRecord: Optional[str] = None + certificate: Optional[CertificateTypeDef] = None + +class GetJobResultTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainAssociationResultTypeDef(BaseModel): + domainAssociation: DomainAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainAssociationResultTypeDef(BaseModel): + domainAssociation: DomainAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainAssociationResultTypeDef(BaseModel): + domainAssociation: DomainAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainAssociationsResultTypeDef(BaseModel): + domainAssociations: List[DomainAssociationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainAssociationResultTypeDef(BaseModel): + domainAssociation: DomainAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/amplify_constants.py b/aws_resource_validator/pydantic_models/amplify_constants.py new file mode 100644 index 00000000..5b1f9140 --- /dev/null +++ b/aws_resource_validator/pydantic_models/amplify_constants.py @@ -0,0 +1,448 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CertificateTypeType = Literal["AMPLIFY_MANAGED", "CUSTOM"] +DomainStatusType = Literal["AVAILABLE", + "AWAITING_APP_CNAME", + "CREATING", + "FAILED", + "IMPORTING_CUSTOM_CERTIFICATE", + "IN_PROGRESS", + "PENDING_DEPLOYMENT", + "PENDING_VERIFICATION", + "REQUESTING_CERTIFICATE", + "UPDATING",] +JobStatusType = Literal["CANCELLED", "CANCELLING", "FAILED", "PENDING", "PROVISIONING", "RUNNING", "SUCCEED"] +JobTypeType = Literal["MANUAL", "RELEASE", "RETRY", "WEB_HOOK"] +ListAppsPaginatorName = Literal["list_apps"] +ListBranchesPaginatorName = Literal["list_branches"] +ListDomainAssociationsPaginatorName = Literal["list_domain_associations"] +ListJobsPaginatorName = Literal["list_jobs"] +PlatformType = Literal["WEB", "WEB_COMPUTE", "WEB_DYNAMIC"] +RepositoryCloneMethodType = Literal["SIGV4", "SSH", "TOKEN"] +StageType = Literal["BETA", "DEVELOPMENT", "EXPERIMENTAL", "PRODUCTION", "PULL_REQUEST"] +UpdateStatusType = Literal["AWAITING_APP_CNAME", + "IMPORTING_CUSTOM_CERTIFICATE", + "PENDING_DEPLOYMENT", + "PENDING_VERIFICATION", + "REQUESTING_CERTIFICATE", + "UPDATE_COMPLETE", + "UPDATE_FAILED",] +AmplifyServiceName = Literal["amplify"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_apps", "list_branches", "list_domain_associations", "list_jobs"] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AutoBranchCreationConfigUnionTypeDef = Union[ 'AutoBranchCreationConfigTypeDef', 'AutoBranchCreationConfigExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/amplifybackend_classes.py b/aws_resource_validator/pydantic_models/amplifybackend_classes.py new file mode 100644 index 00000000..4ec4c49a --- /dev/null +++ b/aws_resource_validator/pydantic_models/amplifybackend_classes.py @@ -0,0 +1,617 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.amplifybackend_constants import * + +class BackendAPIAppSyncAuthSettingsTypeDef(BaseModel): + CognitoUserPoolId: Optional[str] = None + Description: Optional[str] = None + ExpirationTime: Optional[float] = None + OpenIDAuthTTL: Optional[str] = None + OpenIDClientId: Optional[str] = None + OpenIDIatTTL: Optional[str] = None + OpenIDIssueURL: Optional[str] = None + OpenIDProviderName: Optional[str] = None + +class BackendAPIConflictResolutionTypeDef(BaseModel): + ResolutionStrategy: Optional[ResolutionStrategyType] = None + +class BackendAuthAppleProviderConfigTypeDef(BaseModel): + ClientId: Optional[str] = None + KeyId: Optional[str] = None + PrivateKey: Optional[str] = None + TeamId: Optional[str] = None + +class BackendAuthSocialProviderConfigTypeDef(BaseModel): + ClientId: Optional[str] = None + ClientSecret: Optional[str] = None + +class BackendJobRespObjTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + CreateTime: Optional[str] = None + Error: Optional[str] = None + JobId: Optional[str] = None + Operation: Optional[str] = None + Status: Optional[str] = None + UpdateTime: Optional[str] = None + +class BackendStoragePermissionsTypeDef(BaseModel): + Authenticated: Sequence[AuthenticatedElementType] + UnAuthenticated: Optional[Sequence[UnAuthenticatedElementType]] = None + +class CloneBackendRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + TargetEnvironmentName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class EmailSettingsTypeDef(BaseModel): + EmailMessage: Optional[str] = None + EmailSubject: Optional[str] = None + +class SmsSettingsTypeDef(BaseModel): + SmsMessage: Optional[str] = None + +class CreateBackendAuthIdentityPoolConfigTypeDef(BaseModel): + IdentityPoolName: str + UnauthenticatedLogin: bool + +class SettingsTypeDef(BaseModel): + MfaTypes: Optional[Sequence[MfaTypesElementType]] = None + SmsMessage: Optional[str] = None + +class CreateBackendAuthPasswordPolicyConfigTypeDef(BaseModel): + MinimumLength: float + AdditionalConstraints: Optional[Sequence[AdditionalConstraintsElementType]] = None + +class CreateBackendConfigRequestRequestTypeDef(BaseModel): + AppId: str + BackendManagerAppId: Optional[str] = None + +class CreateBackendRequestRequestTypeDef(BaseModel): + AppId: str + AppName: str + BackendEnvironmentName: str + ResourceConfig: Optional[Mapping[str, Any]] = None + ResourceName: Optional[str] = None + +class CreateTokenRequestRequestTypeDef(BaseModel): + AppId: str + +class DeleteBackendAuthRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + +class DeleteBackendRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + +class DeleteBackendStorageRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + ServiceName: Literal["S3"] + +class DeleteTokenRequestRequestTypeDef(BaseModel): + AppId: str + SessionId: str + +class GenerateBackendAPIModelsRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + +class GetBackendAPIModelsRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + +class GetBackendAuthRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + +class GetBackendJobRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + +class GetBackendRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: Optional[str] = None + +class GetBackendStorageRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + +class GetTokenRequestRequestTypeDef(BaseModel): + AppId: str + SessionId: str + +class ImportBackendAuthRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + NativeClientId: str + UserPoolId: str + WebClientId: str + IdentityPoolId: Optional[str] = None + +class ImportBackendStorageRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ServiceName: Literal["S3"] + BucketName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBackendJobsRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Operation: Optional[str] = None + Status: Optional[str] = None + +class ListS3BucketsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class S3BucketInfoTypeDef(BaseModel): + CreationDate: Optional[str] = None + Name: Optional[str] = None + +class LoginAuthConfigReqObjTypeDef(BaseModel): + AwsCognitoIdentityPoolId: Optional[str] = None + AwsCognitoRegion: Optional[str] = None + AwsUserPoolsId: Optional[str] = None + AwsUserPoolsWebClientId: Optional[str] = None + +class RemoveAllBackendsRequestRequestTypeDef(BaseModel): + AppId: str + CleanAmplifyApp: Optional[bool] = None + +class RemoveBackendConfigRequestRequestTypeDef(BaseModel): + AppId: str + +class UpdateBackendAuthIdentityPoolConfigTypeDef(BaseModel): + UnauthenticatedLogin: Optional[bool] = None + +class UpdateBackendAuthPasswordPolicyConfigTypeDef(BaseModel): + AdditionalConstraints: Optional[Sequence[AdditionalConstraintsElementType]] = None + MinimumLength: Optional[float] = None + +class UpdateBackendJobRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + Operation: Optional[str] = None + Status: Optional[str] = None + +class BackendAPIAuthTypeTypeDef(BaseModel): + Mode: Optional[ModeType] = None + Settings: Optional[BackendAPIAppSyncAuthSettingsTypeDef] = None + +class SocialProviderSettingsTypeDef(BaseModel): + Facebook: Optional[BackendAuthSocialProviderConfigTypeDef] = None + Google: Optional[BackendAuthSocialProviderConfigTypeDef] = None + LoginWithAmazon: Optional[BackendAuthSocialProviderConfigTypeDef] = None + SignInWithApple: Optional[BackendAuthAppleProviderConfigTypeDef] = None + +class CreateBackendStorageResourceConfigTypeDef(BaseModel): + Permissions: BackendStoragePermissionsTypeDef + ServiceName: Literal["S3"] + BucketName: Optional[str] = None + +class GetBackendStorageResourceConfigTypeDef(BaseModel): + Imported: bool + ServiceName: Literal["S3"] + BucketName: Optional[str] = None + Permissions: Optional[BackendStoragePermissionsTypeDef] = None + +class UpdateBackendStorageResourceConfigTypeDef(BaseModel): + Permissions: BackendStoragePermissionsTypeDef + ServiceName: Literal["S3"] + +class CloneBackendResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackendAPIResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackendAuthResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackendConfigResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackendResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackendStorageResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTokenResponseTypeDef(BaseModel): + AppId: str + ChallengeCode: str + SessionId: str + Ttl: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackendAPIResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackendAuthResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackendResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackendStorageResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTokenResponseTypeDef(BaseModel): + IsSuccess: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateBackendAPIModelsResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackendAPIModelsResponseTypeDef(BaseModel): + Models: str + Status: StatusType + ModelIntrospectionSchema: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackendJobResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + CreateTime: str + Error: str + JobId: str + Operation: str + Status: str + UpdateTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackendResponseTypeDef(BaseModel): + AmplifyFeatureFlags: str + AmplifyMetaConfig: str + AppId: str + AppName: str + BackendEnvironmentList: List[str] + BackendEnvironmentName: str + Error: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTokenResponseTypeDef(BaseModel): + AppId: str + ChallengeCode: str + SessionId: str + Ttl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportBackendAuthResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportBackendStorageResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackendJobsResponseTypeDef(BaseModel): + Jobs: List[BackendJobRespObjTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveAllBackendsResponseTypeDef(BaseModel): + AppId: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveBackendConfigResponseTypeDef(BaseModel): + Error: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendAPIResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendAuthResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + JobId: str + Operation: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendJobResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + CreateTime: str + Error: str + JobId: str + Operation: str + Status: str + UpdateTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendStorageResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackendAuthForgotPasswordConfigTypeDef(BaseModel): + DeliveryMethod: DeliveryMethodType + EmailSettings: Optional[EmailSettingsTypeDef] = None + SmsSettings: Optional[SmsSettingsTypeDef] = None + +class CreateBackendAuthVerificationMessageConfigTypeDef(BaseModel): + DeliveryMethod: DeliveryMethodType + EmailSettings: Optional[EmailSettingsTypeDef] = None + SmsSettings: Optional[SmsSettingsTypeDef] = None + +class UpdateBackendAuthForgotPasswordConfigTypeDef(BaseModel): + DeliveryMethod: Optional[DeliveryMethodType] = None + EmailSettings: Optional[EmailSettingsTypeDef] = None + SmsSettings: Optional[SmsSettingsTypeDef] = None + +class UpdateBackendAuthVerificationMessageConfigTypeDef(BaseModel): + DeliveryMethod: DeliveryMethodType + EmailSettings: Optional[EmailSettingsTypeDef] = None + SmsSettings: Optional[SmsSettingsTypeDef] = None + +class CreateBackendAuthMFAConfigTypeDef(BaseModel): + MFAMode: MFAModeType + Settings: Optional[SettingsTypeDef] = None + +class UpdateBackendAuthMFAConfigTypeDef(BaseModel): + MFAMode: Optional[MFAModeType] = None + Settings: Optional[SettingsTypeDef] = None + +class ListBackendJobsRequestListBackendJobsPaginateTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + JobId: Optional[str] = None + Operation: Optional[str] = None + Status: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListS3BucketsResponseTypeDef(BaseModel): + Buckets: List[S3BucketInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendConfigRequestRequestTypeDef(BaseModel): + AppId: str + LoginAuthConfig: Optional[LoginAuthConfigReqObjTypeDef] = None + +class UpdateBackendConfigResponseTypeDef(BaseModel): + AppId: str + BackendManagerAppId: str + Error: str + LoginAuthConfig: LoginAuthConfigReqObjTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BackendAPIResourceConfigTypeDef(BaseModel): + AdditionalAuthTypes: Optional[Sequence[BackendAPIAuthTypeTypeDef]] = None + ApiName: Optional[str] = None + ConflictResolution: Optional[BackendAPIConflictResolutionTypeDef] = None + DefaultAuthType: Optional[BackendAPIAuthTypeTypeDef] = None + Service: Optional[str] = None + TransformSchema: Optional[str] = None + +class CreateBackendAuthOAuthConfigTypeDef(BaseModel): + OAuthGrantType: OAuthGrantTypeType + OAuthScopes: Sequence[OAuthScopesElementType] + RedirectSignInURIs: Sequence[str] + RedirectSignOutURIs: Sequence[str] + DomainPrefix: Optional[str] = None + SocialProviderSettings: Optional[SocialProviderSettingsTypeDef] = None + +class UpdateBackendAuthOAuthConfigTypeDef(BaseModel): + DomainPrefix: Optional[str] = None + OAuthGrantType: Optional[OAuthGrantTypeType] = None + OAuthScopes: Optional[Sequence[OAuthScopesElementType]] = None + RedirectSignInURIs: Optional[Sequence[str]] = None + RedirectSignOutURIs: Optional[Sequence[str]] = None + SocialProviderSettings: Optional[SocialProviderSettingsTypeDef] = None + +class CreateBackendStorageRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceConfig: CreateBackendStorageResourceConfigTypeDef + ResourceName: str + +class GetBackendStorageResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceConfig: GetBackendStorageResourceConfigTypeDef + ResourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendStorageRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceConfig: UpdateBackendStorageResourceConfigTypeDef + ResourceName: str + +class CreateBackendAPIRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceConfig: BackendAPIResourceConfigTypeDef + ResourceName: str + +class DeleteBackendAPIRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + ResourceConfig: Optional[BackendAPIResourceConfigTypeDef] = None + +class GetBackendAPIRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + ResourceConfig: Optional[BackendAPIResourceConfigTypeDef] = None + +class GetBackendAPIResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + ResourceConfig: BackendAPIResourceConfigTypeDef + ResourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendAPIRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceName: str + ResourceConfig: Optional[BackendAPIResourceConfigTypeDef] = None + +class CreateBackendAuthUserPoolConfigTypeDef(BaseModel): + RequiredSignUpAttributes: Sequence[RequiredSignUpAttributesElementType] + SignInMethod: SignInMethodType + UserPoolName: str + ForgotPassword: Optional[CreateBackendAuthForgotPasswordConfigTypeDef] = None + Mfa: Optional[CreateBackendAuthMFAConfigTypeDef] = None + OAuth: Optional[CreateBackendAuthOAuthConfigTypeDef] = None + PasswordPolicy: Optional[CreateBackendAuthPasswordPolicyConfigTypeDef] = None + VerificationMessage: Optional[CreateBackendAuthVerificationMessageConfigTypeDef] = None + +class UpdateBackendAuthUserPoolConfigTypeDef(BaseModel): + ForgotPassword: Optional[UpdateBackendAuthForgotPasswordConfigTypeDef] = None + Mfa: Optional[UpdateBackendAuthMFAConfigTypeDef] = None + OAuth: Optional[UpdateBackendAuthOAuthConfigTypeDef] = None + PasswordPolicy: Optional[UpdateBackendAuthPasswordPolicyConfigTypeDef] = None + VerificationMessage: Optional[UpdateBackendAuthVerificationMessageConfigTypeDef] = None + +class CreateBackendAuthResourceConfigTypeDef(BaseModel): + AuthResources: AuthResourcesType + Service: Literal["COGNITO"] + UserPoolConfigs: CreateBackendAuthUserPoolConfigTypeDef + IdentityPoolConfigs: Optional[CreateBackendAuthIdentityPoolConfigTypeDef] = None + +class UpdateBackendAuthResourceConfigTypeDef(BaseModel): + AuthResources: AuthResourcesType + Service: Literal["COGNITO"] + UserPoolConfigs: UpdateBackendAuthUserPoolConfigTypeDef + IdentityPoolConfigs: Optional[UpdateBackendAuthIdentityPoolConfigTypeDef] = None + +class CreateBackendAuthRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceConfig: CreateBackendAuthResourceConfigTypeDef + ResourceName: str + +class GetBackendAuthResponseTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + Error: str + ResourceConfig: CreateBackendAuthResourceConfigTypeDef + ResourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackendAuthRequestRequestTypeDef(BaseModel): + AppId: str + BackendEnvironmentName: str + ResourceConfig: UpdateBackendAuthResourceConfigTypeDef + ResourceName: str + diff --git a/aws_resource_validator/pydantic_models/amplifybackend_constants.py b/aws_resource_validator/pydantic_models/amplifybackend_constants.py new file mode 100644 index 00000000..3ec3de97 --- /dev/null +++ b/aws_resource_validator/pydantic_models/amplifybackend_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdditionalConstraintsElementType = Literal["REQUIRE_DIGIT", "REQUIRE_LOWERCASE", "REQUIRE_SYMBOL", "REQUIRE_UPPERCASE"] +AuthResourcesType = Literal["IDENTITY_POOL_AND_USER_POOL", "USER_POOL_ONLY"] +AuthenticatedElementType = Literal["CREATE_AND_UPDATE", "DELETE", "READ"] +DeliveryMethodType = Literal["EMAIL", "SMS"] +ListBackendJobsPaginatorName = Literal["list_backend_jobs"] +MFAModeType = Literal["OFF", "ON", "OPTIONAL"] +MfaTypesElementType = Literal["SMS", "TOTP"] +ModeType = Literal["AMAZON_COGNITO_USER_POOLS", "API_KEY", "AWS_IAM", "OPENID_CONNECT"] +OAuthGrantTypeType = Literal["CODE", "IMPLICIT"] +OAuthScopesElementType = Literal["AWS_COGNITO_SIGNIN_USER_ADMIN", "EMAIL", "OPENID", "PHONE", "PROFILE"] +RequiredSignUpAttributesElementType = Literal["ADDRESS", + "BIRTHDATE", + "EMAIL", + "FAMILY_NAME", + "GENDER", + "GIVEN_NAME", + "LOCALE", + "MIDDLE_NAME", + "NAME", + "NICKNAME", + "PHONE_NUMBER", + "PICTURE", + "PREFERRED_USERNAME", + "PROFILE", + "UPDATED_AT", + "WEBSITE", + "ZONE_INFO",] +ResolutionStrategyType = Literal["AUTOMERGE", "LAMBDA", "NONE", "OPTIMISTIC_CONCURRENCY"] +ServiceNameType = Literal["S3"] +ServiceType = Literal["COGNITO"] +SignInMethodType = Literal["EMAIL", "EMAIL_AND_PHONE_NUMBER", "PHONE_NUMBER", "USERNAME"] +StatusType = Literal["LATEST", "STALE"] +UnAuthenticatedElementType = Literal["CREATE_AND_UPDATE", "DELETE", "READ"] +AmplifyBackendServiceName = Literal["amplifybackend"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_backend_jobs"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/amplifyuibuilder_classes.py b/aws_resource_validator/pydantic_models/amplifyuibuilder_classes.py new file mode 100644 index 00000000..d424a66f --- /dev/null +++ b/aws_resource_validator/pydantic_models/amplifyuibuilder_classes.py @@ -0,0 +1,960 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.amplifyuibuilder_constants import * + +class MutationActionSetStateParameterPaginatorTypeDef(BaseModel): + componentName: str + property: str + set: "ComponentPropertyPaginatorTypeDef" + +class MutationActionSetStateParameterTypeDef(BaseModel): + componentName: str + property: str + set: "ComponentPropertyTypeDef" + +class GraphQLRenderConfigTypeDef(BaseModel): + typesFilePath: str + queriesFilePath: str + mutationsFilePath: str + subscriptionsFilePath: str + fragmentsFilePath: str + +class CodegenDependencyTypeDef(BaseModel): + name: Optional[str] = None + supportedVersion: Optional[str] = None + isSemVer: Optional[bool] = None + reason: Optional[str] = None + +class CodegenFeatureFlagsTypeDef(BaseModel): + isRelationshipSupported: Optional[bool] = None + isNonModelSupported: Optional[bool] = None + +class CodegenGenericDataEnumTypeDef(BaseModel): + values: List[str] + +class CodegenGenericDataRelationshipTypeTypeDef(BaseModel): + type: GenericDataRelationshipTypeType + relatedModelName: str + relatedModelFields: Optional[List[str]] = None + canUnlinkAssociatedModel: Optional[bool] = None + relatedJoinFieldName: Optional[str] = None + relatedJoinTableName: Optional[str] = None + belongsToFieldOnRelatedModel: Optional[str] = None + associatedFields: Optional[List[str]] = None + isHasManyIndex: Optional[bool] = None + +class CodegenJobAssetTypeDef(BaseModel): + downloadUrl: Optional[str] = None + +class CodegenJobSummaryTypeDef(BaseModel): + appId: str + environmentName: str + id: str + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + +class ComponentBindingPropertiesValuePropertiesPaginatorTypeDef(BaseModel): + model: Optional[str] = None + field: Optional[str] = None + predicates: Optional[List["PredicatePaginatorTypeDef"]] = None + userAttribute: Optional[str] = None + bucket: Optional[str] = None + key: Optional[str] = None + defaultValue: Optional[str] = None + slotName: Optional[str] = None + +class ComponentBindingPropertiesValuePropertiesTypeDef(BaseModel): + model: Optional[str] = None + field: Optional[str] = None + predicates: Optional[Sequence["PredicateTypeDef"]] = None + userAttribute: Optional[str] = None + bucket: Optional[str] = None + key: Optional[str] = None + defaultValue: Optional[str] = None + slotName: Optional[str] = None + +class ComponentConditionPropertyTypeDef(BaseModel): + property: Optional[str] = None + field: Optional[str] = None + operator: Optional[str] = None + operand: Optional[str] = None + then: Optional["ComponentPropertyTypeDef"] = None + else: Optional["ComponentPropertyTypeDef"] = None + operandType: Optional[str] = None + +class SortPropertyTypeDef(BaseModel): + field: str + direction: SortDirectionType + +class ComponentVariantPaginatorTypeDef(BaseModel): + variantValues: Optional[Dict[str, str]] = None + overrides: Optional[Dict[str, Dict[str, str]]] = None + +class ComponentPropertyBindingPropertiesTypeDef(BaseModel): + property: str + field: Optional[str] = None + +class FormBindingElementTypeDef(BaseModel): + element: str + property: str + +class ComponentSummaryTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + componentType: str + +class ComponentVariantTypeDef(BaseModel): + variantValues: Optional[Mapping[str, str]] = None + overrides: Optional[Mapping[str, Mapping[str, str]]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class FormDataTypeConfigTypeDef(BaseModel): + dataSourceType: FormDataSourceTypeType + dataTypeName: str + +class CreateThemeDataTypeDef(BaseModel): + name: str + values: Sequence["ThemeValuesTypeDef"] + overrides: Optional[Sequence["ThemeValuesTypeDef"]] = None + tags: Optional[Mapping[str, str]] = None + +class ThemeTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + createdAt: datetime + values: List["ThemeValuesTypeDef"] + modifiedAt: Optional[datetime] = None + overrides: Optional[List["ThemeValuesTypeDef"]] = None + tags: Optional[Dict[str, str]] = None + +class DeleteComponentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class DeleteFormRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class DeleteThemeRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class ExchangeCodeForTokenRequestBodyTypeDef(BaseModel): + code: str + redirectUri: str + clientId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ExportComponentsRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + +class ExportFormsRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + +class ExportThemesRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + +class ThemePaginatorTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + createdAt: datetime + values: List["ThemeValuesPaginatorTypeDef"] + modifiedAt: Optional[datetime] = None + overrides: Optional[List["ThemeValuesPaginatorTypeDef"]] = None + tags: Optional[Dict[str, str]] = None + +class FieldPositionTypeDef(BaseModel): + fixed: Optional[Literal["first"]] = None + rightOf: Optional[str] = None + below: Optional[str] = None + +class FieldValidationConfigurationPaginatorTypeDef(BaseModel): + type: str + strValues: Optional[List[str]] = None + numValues: Optional[List[int]] = None + validationMessage: Optional[str] = None + +class FieldValidationConfigurationTypeDef(BaseModel): + type: str + strValues: Optional[Sequence[str]] = None + numValues: Optional[Sequence[int]] = None + validationMessage: Optional[str] = None + +class FileUploaderFieldConfigPaginatorTypeDef(BaseModel): + accessLevel: StorageAccessLevelType + acceptedFileTypes: List[str] + showThumbnails: Optional[bool] = None + isResumable: Optional[bool] = None + maxFileCount: Optional[int] = None + maxSize: Optional[int] = None + +class FileUploaderFieldConfigTypeDef(BaseModel): + accessLevel: StorageAccessLevelType + acceptedFileTypes: Sequence[str] + showThumbnails: Optional[bool] = None + isResumable: Optional[bool] = None + maxFileCount: Optional[int] = None + maxSize: Optional[int] = None + +class FormInputBindingPropertiesValuePropertiesTypeDef(BaseModel): + model: Optional[str] = None + +class FormInputValuePropertyBindingPropertiesTypeDef(BaseModel): + property: str + field: Optional[str] = None + +class FormStyleConfigTypeDef(BaseModel): + tokenReference: Optional[str] = None + value: Optional[str] = None + +class GetCodegenJobRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class GetComponentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class GetFormRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class GetMetadataRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + +class GetThemeRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + +class ListCodegenJobsRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListComponentsRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFormsRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListThemesRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ThemeSummaryTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + +class PredicatePaginatorTypeDef(BaseModel): + or: Optional[List[Dict[str, Any]]] = None + and: Optional[List[Dict[str, Any]]] = None + field: Optional[str] = None + operator: Optional[str] = None + operand: Optional[str] = None + operandType: Optional[str] = None + +class PredicateTypeDef(BaseModel): + or: Optional[Sequence[Dict[str, Any]]] = None + and: Optional[Sequence[Dict[str, Any]]] = None + field: Optional[str] = None + operator: Optional[str] = None + operand: Optional[str] = None + operandType: Optional[str] = None + +class PutMetadataFlagBodyTypeDef(BaseModel): + newValue: str + +class RefreshTokenRequestBodyTypeDef(BaseModel): + token: str + clientId: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class ThemeValuePaginatorTypeDef(BaseModel): + value: Optional[str] = None + children: Optional[List["ThemeValuesPaginatorTypeDef"]] = None + +class ThemeValueTypeDef(BaseModel): + value: Optional[str] = None + children: Optional[Sequence["ThemeValuesTypeDef"]] = None + +class ThemeValuesPaginatorTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[Dict[str, Any]] = None + +class ThemeValuesTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[Dict[str, Any]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateThemeDataTypeDef(BaseModel): + values: Sequence["ThemeValuesTypeDef"] + id: Optional[str] = None + name: Optional[str] = None + overrides: Optional[Sequence["ThemeValuesTypeDef"]] = None + +class ValueMappingPaginatorTypeDef(BaseModel): + value: "FormInputValuePropertyPaginatorTypeDef" + displayValue: Optional["FormInputValuePropertyPaginatorTypeDef"] = None + +class ValueMappingTypeDef(BaseModel): + value: "FormInputValuePropertyTypeDef" + displayValue: Optional["FormInputValuePropertyTypeDef"] = None + +class ActionParametersPaginatorTypeDef(BaseModel): + type: Optional["ComponentPropertyPaginatorTypeDef"] = None + url: Optional["ComponentPropertyPaginatorTypeDef"] = None + anchor: Optional["ComponentPropertyPaginatorTypeDef"] = None + target: Optional["ComponentPropertyPaginatorTypeDef"] = None + global: Optional["ComponentPropertyPaginatorTypeDef"] = None + model: Optional[str] = None + id: Optional["ComponentPropertyPaginatorTypeDef"] = None + fields: Optional[Dict[str, "ComponentPropertyPaginatorTypeDef"]] = None + state: Optional[MutationActionSetStateParameterPaginatorTypeDef] = None + +class ActionParametersTypeDef(BaseModel): + type: Optional["ComponentPropertyTypeDef"] = None + url: Optional["ComponentPropertyTypeDef"] = None + anchor: Optional["ComponentPropertyTypeDef"] = None + target: Optional["ComponentPropertyTypeDef"] = None + global: Optional["ComponentPropertyTypeDef"] = None + model: Optional[str] = None + id: Optional["ComponentPropertyTypeDef"] = None + fields: Optional[Mapping[str, "ComponentPropertyTypeDef"]] = None + state: Optional[MutationActionSetStateParameterTypeDef] = None + +class ApiConfigurationTypeDef(BaseModel): + graphQLConfig: Optional[GraphQLRenderConfigTypeDef] = None + dataStoreConfig: Optional[Dict[str, Any]] = None + noApiConfig: Optional[Dict[str, Any]] = None + +class CodegenGenericDataFieldTypeDef(BaseModel): + dataType: CodegenGenericDataFieldDataTypeType + dataTypeValue: str + required: bool + readOnly: bool + isArray: bool + relationship: Optional[CodegenGenericDataRelationshipTypeTypeDef] = None + +class ComponentBindingPropertiesValuePaginatorTypeDef(BaseModel): + type: Optional[str] = None + bindingProperties: Optional[ComponentBindingPropertiesValuePropertiesPaginatorTypeDef] = None + defaultValue: Optional[str] = None + +class ComponentBindingPropertiesValueTypeDef(BaseModel): + type: Optional[str] = None + bindingProperties: Optional[ComponentBindingPropertiesValuePropertiesTypeDef] = None + defaultValue: Optional[str] = None + +class ComponentDataConfigurationPaginatorTypeDef(BaseModel): + model: str + sort: Optional[List[SortPropertyTypeDef]] = None + predicate: Optional["PredicatePaginatorTypeDef"] = None + identifiers: Optional[List[str]] = None + +class ComponentDataConfigurationTypeDef(BaseModel): + model: str + sort: Optional[Sequence[SortPropertyTypeDef]] = None + predicate: Optional["PredicateTypeDef"] = None + identifiers: Optional[Sequence[str]] = None + +class ComponentPropertyPaginatorTypeDef(BaseModel): + value: Optional[str] = None + bindingProperties: Optional[ComponentPropertyBindingPropertiesTypeDef] = None + collectionBindingProperties: Optional[ComponentPropertyBindingPropertiesTypeDef] = None + defaultValue: Optional[str] = None + model: Optional[str] = None + bindings: Optional[Dict[str, FormBindingElementTypeDef]] = None + event: Optional[str] = None + userAttribute: Optional[str] = None + concat: Optional[List[Dict[str, Any]]] = None + condition: Optional[ComponentConditionPropertyTypeDef] = None + configured: Optional[bool] = None + type: Optional[str] = None + importedValue: Optional[str] = None + componentName: Optional[str] = None + property: Optional[str] = None + +class ComponentPropertyTypeDef(BaseModel): + value: Optional[str] = None + bindingProperties: Optional[ComponentPropertyBindingPropertiesTypeDef] = None + collectionBindingProperties: Optional[ComponentPropertyBindingPropertiesTypeDef] = None + defaultValue: Optional[str] = None + model: Optional[str] = None + bindings: Optional[Mapping[str, FormBindingElementTypeDef]] = None + event: Optional[str] = None + userAttribute: Optional[str] = None + concat: Optional[Sequence[Dict[str, Any]]] = None + condition: Optional[Dict[str, Any]] = None + configured: Optional[bool] = None + type: Optional[str] = None + importedValue: Optional[str] = None + componentName: Optional[str] = None + property: Optional[str] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExchangeCodeForTokenResponseTypeDef(BaseModel): + accessToken: str + expiresIn: int + refreshToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMetadataResponseTypeDef(BaseModel): + features: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCodegenJobsResponseTypeDef(BaseModel): + entities: List[CodegenJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListComponentsResponseTypeDef(BaseModel): + entities: List[ComponentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RefreshTokenResponseTypeDef(BaseModel): + accessToken: str + expiresIn: int + ResponseMetadata: ResponseMetadataTypeDef + +class FormSummaryTypeDef(BaseModel): + appId: str + dataType: FormDataTypeConfigTypeDef + environmentName: str + formActionType: FormActionTypeType + id: str + name: str + +class CreateThemeRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + themeToCreate: CreateThemeDataTypeDef + clientToken: Optional[str] = None + +class CreateThemeResponseTypeDef(BaseModel): + entity: ThemeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportThemesResponseTypeDef(BaseModel): + entities: List[ThemeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetThemeResponseTypeDef(BaseModel): + theme: ThemeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateThemeResponseTypeDef(BaseModel): + entity: ThemeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExchangeCodeForTokenRequestRequestTypeDef(BaseModel): + provider: Literal["figma"] + request: ExchangeCodeForTokenRequestBodyTypeDef + +class ExportComponentsRequestExportComponentsPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ExportFormsRequestExportFormsPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ExportThemesRequestExportThemesPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCodegenJobsRequestListCodegenJobsPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentsRequestListComponentsPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFormsRequestListFormsPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThemesRequestListThemesPaginateTypeDef(BaseModel): + appId: str + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ExportThemesResponsePaginatorTypeDef(BaseModel): + entities: List[ThemePaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FormButtonTypeDef(BaseModel): + excluded: Optional[bool] = None + children: Optional[str] = None + position: Optional[FieldPositionTypeDef] = None + +class SectionalElementTypeDef(BaseModel): + type: str + position: Optional[FieldPositionTypeDef] = None + text: Optional[str] = None + level: Optional[int] = None + orientation: Optional[str] = None + excluded: Optional[bool] = None + +class FormInputBindingPropertiesValueTypeDef(BaseModel): + type: Optional[str] = None + bindingProperties: Optional[FormInputBindingPropertiesValuePropertiesTypeDef] = None + +class FormInputValuePropertyPaginatorTypeDef(BaseModel): + value: Optional[str] = None + bindingProperties: Optional[FormInputValuePropertyBindingPropertiesTypeDef] = None + concat: Optional[List[Dict[str, Any]]] = None + +class FormInputValuePropertyTypeDef(BaseModel): + value: Optional[str] = None + bindingProperties: Optional[FormInputValuePropertyBindingPropertiesTypeDef] = None + concat: Optional[Sequence[Dict[str, Any]]] = None + +class FormStyleTypeDef(BaseModel): + horizontalGap: Optional[FormStyleConfigTypeDef] = None + verticalGap: Optional[FormStyleConfigTypeDef] = None + outerPadding: Optional[FormStyleConfigTypeDef] = None + +class ListThemesResponseTypeDef(BaseModel): + entities: List[ThemeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutMetadataFlagRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + featureName: str + body: PutMetadataFlagBodyTypeDef + +class RefreshTokenRequestRequestTypeDef(BaseModel): + provider: Literal["figma"] + refreshTokenBody: RefreshTokenRequestBodyTypeDef + +class UpdateThemeRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + updatedTheme: UpdateThemeDataTypeDef + clientToken: Optional[str] = None + +class ComponentEventPaginatorTypeDef(BaseModel): + action: Optional[str] = None + parameters: Optional[ActionParametersPaginatorTypeDef] = None + bindingEvent: Optional[str] = None + +class ComponentEventTypeDef(BaseModel): + action: Optional[str] = None + parameters: Optional[ActionParametersTypeDef] = None + bindingEvent: Optional[str] = None + +class ReactStartCodegenJobDataTypeDef(BaseModel): + module: Optional[JSModuleType] = None + target: Optional[JSTargetType] = None + script: Optional[JSScriptType] = None + renderTypeDeclarations: Optional[bool] = None + inlineSourceMap: Optional[bool] = None + apiConfiguration: Optional[ApiConfigurationTypeDef] = None + dependencies: Optional[Dict[str, str]] = None + +class CodegenGenericDataModelTypeDef(BaseModel): + fields: Dict[str, CodegenGenericDataFieldTypeDef] + primaryKeys: List[str] + isJoinTable: Optional[bool] = None + +class CodegenGenericDataNonModelTypeDef(BaseModel): + fields: Dict[str, CodegenGenericDataFieldTypeDef] + +class ListFormsResponseTypeDef(BaseModel): + entities: List[FormSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FormCTATypeDef(BaseModel): + position: Optional[FormButtonsPositionType] = None + clear: Optional[FormButtonTypeDef] = None + cancel: Optional[FormButtonTypeDef] = None + submit: Optional[FormButtonTypeDef] = None + +class ValueMappingsPaginatorTypeDef(BaseModel): + values: List[ValueMappingPaginatorTypeDef] + bindingProperties: Optional[Dict[str, FormInputBindingPropertiesValueTypeDef]] = None + +class ValueMappingsTypeDef(BaseModel): + values: Sequence[ValueMappingTypeDef] + bindingProperties: Optional[Mapping[str, FormInputBindingPropertiesValueTypeDef]] = None + +class ComponentChildPaginatorTypeDef(BaseModel): + componentType: str + name: str + properties: Dict[str, "ComponentPropertyPaginatorTypeDef"] + children: Optional[List[Dict[str, Any]]] = None + events: Optional[Dict[str, ComponentEventPaginatorTypeDef]] = None + sourceId: Optional[str] = None + +class ComponentPaginatorTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + componentType: str + properties: Dict[str, "ComponentPropertyPaginatorTypeDef"] + variants: List[ComponentVariantPaginatorTypeDef] + overrides: Dict[str, Dict[str, str]] + bindingProperties: Dict[str, ComponentBindingPropertiesValuePaginatorTypeDef] + createdAt: datetime + sourceId: Optional[str] = None + children: Optional[List["ComponentChildPaginatorTypeDef"]] = None + collectionProperties: Optional[Dict[str, ComponentDataConfigurationPaginatorTypeDef]] = None + modifiedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + events: Optional[Dict[str, ComponentEventPaginatorTypeDef]] = None + schemaVersion: Optional[str] = None + +class ComponentChildTypeDef(BaseModel): + componentType: str + name: str + properties: Mapping[str, "ComponentPropertyTypeDef"] + children: Optional[Sequence[Dict[str, Any]]] = None + events: Optional[Mapping[str, ComponentEventTypeDef]] = None + sourceId: Optional[str] = None + +class ComponentTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + componentType: str + properties: Dict[str, "ComponentPropertyTypeDef"] + variants: List[ComponentVariantTypeDef] + overrides: Dict[str, Dict[str, str]] + bindingProperties: Dict[str, ComponentBindingPropertiesValueTypeDef] + createdAt: datetime + sourceId: Optional[str] = None + children: Optional[List["ComponentChildTypeDef"]] = None + collectionProperties: Optional[Dict[str, ComponentDataConfigurationTypeDef]] = None + modifiedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + events: Optional[Dict[str, ComponentEventTypeDef]] = None + schemaVersion: Optional[str] = None + +class CreateComponentDataTypeDef(BaseModel): + name: str + componentType: str + properties: Mapping[str, "ComponentPropertyTypeDef"] + variants: Sequence[ComponentVariantTypeDef] + overrides: Mapping[str, Mapping[str, str]] + bindingProperties: Mapping[str, ComponentBindingPropertiesValueTypeDef] + sourceId: Optional[str] = None + children: Optional[Sequence["ComponentChildTypeDef"]] = None + collectionProperties: Optional[Mapping[str, ComponentDataConfigurationTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + events: Optional[Mapping[str, ComponentEventTypeDef]] = None + schemaVersion: Optional[str] = None + +class UpdateComponentDataTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + sourceId: Optional[str] = None + componentType: Optional[str] = None + properties: Optional[Mapping[str, "ComponentPropertyTypeDef"]] = None + children: Optional[Sequence["ComponentChildTypeDef"]] = None + variants: Optional[Sequence[ComponentVariantTypeDef]] = None + overrides: Optional[Mapping[str, Mapping[str, str]]] = None + bindingProperties: Optional[Mapping[str, ComponentBindingPropertiesValueTypeDef]] = None + collectionProperties: Optional[Mapping[str, ComponentDataConfigurationTypeDef]] = None + events: Optional[Mapping[str, ComponentEventTypeDef]] = None + schemaVersion: Optional[str] = None + +class CodegenJobRenderConfigTypeDef(BaseModel): + react: Optional[ReactStartCodegenJobDataTypeDef] = None + +class CodegenJobGenericDataSchemaTypeDef(BaseModel): + dataSourceType: Literal["DataStore"] + models: Dict[str, CodegenGenericDataModelTypeDef] + enums: Dict[str, CodegenGenericDataEnumTypeDef] + nonModels: Dict[str, CodegenGenericDataNonModelTypeDef] + +class FieldInputConfigPaginatorTypeDef(BaseModel): + type: str + required: Optional[bool] = None + readOnly: Optional[bool] = None + placeholder: Optional[str] = None + defaultValue: Optional[str] = None + descriptiveText: Optional[str] = None + defaultChecked: Optional[bool] = None + defaultCountryCode: Optional[str] = None + valueMappings: Optional[ValueMappingsPaginatorTypeDef] = None + name: Optional[str] = None + minValue: Optional[float] = None + maxValue: Optional[float] = None + step: Optional[float] = None + value: Optional[str] = None + isArray: Optional[bool] = None + fileUploaderConfig: Optional[FileUploaderFieldConfigPaginatorTypeDef] = None + +class FieldInputConfigTypeDef(BaseModel): + type: str + required: Optional[bool] = None + readOnly: Optional[bool] = None + placeholder: Optional[str] = None + defaultValue: Optional[str] = None + descriptiveText: Optional[str] = None + defaultChecked: Optional[bool] = None + defaultCountryCode: Optional[str] = None + valueMappings: Optional[ValueMappingsTypeDef] = None + name: Optional[str] = None + minValue: Optional[float] = None + maxValue: Optional[float] = None + step: Optional[float] = None + value: Optional[str] = None + isArray: Optional[bool] = None + fileUploaderConfig: Optional[FileUploaderFieldConfigTypeDef] = None + +class ExportComponentsResponsePaginatorTypeDef(BaseModel): + entities: List[ComponentPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateComponentResponseTypeDef(BaseModel): + entity: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportComponentsResponseTypeDef(BaseModel): + entities: List[ComponentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentResponseTypeDef(BaseModel): + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateComponentResponseTypeDef(BaseModel): + entity: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateComponentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + componentToCreate: CreateComponentDataTypeDef + clientToken: Optional[str] = None + +class UpdateComponentRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + updatedComponent: UpdateComponentDataTypeDef + clientToken: Optional[str] = None + +class CodegenJobTypeDef(BaseModel): + id: str + appId: str + environmentName: str + renderConfig: Optional[CodegenJobRenderConfigTypeDef] = None + genericDataSchema: Optional[CodegenJobGenericDataSchemaTypeDef] = None + autoGenerateForms: Optional[bool] = None + features: Optional[CodegenFeatureFlagsTypeDef] = None + status: Optional[CodegenJobStatusType] = None + statusMessage: Optional[str] = None + asset: Optional[CodegenJobAssetTypeDef] = None + tags: Optional[Dict[str, str]] = None + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + dependencies: Optional[List[CodegenDependencyTypeDef]] = None + +class StartCodegenJobDataTypeDef(BaseModel): + renderConfig: CodegenJobRenderConfigTypeDef + genericDataSchema: Optional[CodegenJobGenericDataSchemaTypeDef] = None + autoGenerateForms: Optional[bool] = None + features: Optional[CodegenFeatureFlagsTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class FieldConfigPaginatorTypeDef(BaseModel): + label: Optional[str] = None + position: Optional[FieldPositionTypeDef] = None + excluded: Optional[bool] = None + inputType: Optional[FieldInputConfigPaginatorTypeDef] = None + validations: Optional[List[FieldValidationConfigurationPaginatorTypeDef]] = None + +class FieldConfigTypeDef(BaseModel): + label: Optional[str] = None + position: Optional[FieldPositionTypeDef] = None + excluded: Optional[bool] = None + inputType: Optional[FieldInputConfigTypeDef] = None + validations: Optional[Sequence[FieldValidationConfigurationTypeDef]] = None + +class GetCodegenJobResponseTypeDef(BaseModel): + job: CodegenJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartCodegenJobResponseTypeDef(BaseModel): + entity: CodegenJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartCodegenJobRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + codegenJobToCreate: StartCodegenJobDataTypeDef + clientToken: Optional[str] = None + +class FormPaginatorTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + formActionType: FormActionTypeType + style: FormStyleTypeDef + dataType: FormDataTypeConfigTypeDef + fields: Dict[str, FieldConfigPaginatorTypeDef] + sectionalElements: Dict[str, SectionalElementTypeDef] + schemaVersion: str + tags: Optional[Dict[str, str]] = None + cta: Optional[FormCTATypeDef] = None + labelDecorator: Optional[LabelDecoratorType] = None + +class CreateFormDataTypeDef(BaseModel): + name: str + dataType: FormDataTypeConfigTypeDef + formActionType: FormActionTypeType + fields: Mapping[str, FieldConfigTypeDef] + style: FormStyleTypeDef + sectionalElements: Mapping[str, SectionalElementTypeDef] + schemaVersion: str + cta: Optional[FormCTATypeDef] = None + tags: Optional[Mapping[str, str]] = None + labelDecorator: Optional[LabelDecoratorType] = None + +class FormTypeDef(BaseModel): + appId: str + environmentName: str + id: str + name: str + formActionType: FormActionTypeType + style: FormStyleTypeDef + dataType: FormDataTypeConfigTypeDef + fields: Dict[str, FieldConfigTypeDef] + sectionalElements: Dict[str, SectionalElementTypeDef] + schemaVersion: str + tags: Optional[Dict[str, str]] = None + cta: Optional[FormCTATypeDef] = None + labelDecorator: Optional[LabelDecoratorType] = None + +class UpdateFormDataTypeDef(BaseModel): + name: Optional[str] = None + dataType: Optional[FormDataTypeConfigTypeDef] = None + formActionType: Optional[FormActionTypeType] = None + fields: Optional[Mapping[str, FieldConfigTypeDef]] = None + style: Optional[FormStyleTypeDef] = None + sectionalElements: Optional[Mapping[str, SectionalElementTypeDef]] = None + schemaVersion: Optional[str] = None + cta: Optional[FormCTATypeDef] = None + labelDecorator: Optional[LabelDecoratorType] = None + +class ExportFormsResponsePaginatorTypeDef(BaseModel): + entities: List[FormPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFormRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + formToCreate: CreateFormDataTypeDef + clientToken: Optional[str] = None + +class CreateFormResponseTypeDef(BaseModel): + entity: FormTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportFormsResponseTypeDef(BaseModel): + entities: List[FormTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFormResponseTypeDef(BaseModel): + form: FormTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFormResponseTypeDef(BaseModel): + entity: FormTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFormRequestRequestTypeDef(BaseModel): + appId: str + environmentName: str + id: str + updatedForm: UpdateFormDataTypeDef + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/amplifyuibuilder_constants.py b/aws_resource_validator/pydantic_models/amplifyuibuilder_constants.py new file mode 100644 index 00000000..1d45eced --- /dev/null +++ b/aws_resource_validator/pydantic_models/amplifyuibuilder_constants.py @@ -0,0 +1,456 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CodegenGenericDataFieldDataTypeType = Literal["AWSDate", + "AWSDateTime", + "AWSEmail", + "AWSIPAddress", + "AWSJSON", + "AWSPhone", + "AWSTime", + "AWSTimestamp", + "AWSURL", + "Boolean", + "Enum", + "Float", + "ID", + "Int", + "Model", + "NonModel", + "String",] +CodegenJobGenericDataSourceTypeType = Literal["DataStore"] +CodegenJobStatusType = Literal["failed", "in_progress", "succeeded"] +ExportComponentsPaginatorName = Literal["export_components"] +ExportFormsPaginatorName = Literal["export_forms"] +ExportThemesPaginatorName = Literal["export_themes"] +FixedPositionType = Literal["first"] +FormActionTypeType = Literal["create", "update"] +FormButtonsPositionType = Literal["bottom", "top", "top_and_bottom"] +FormDataSourceTypeType = Literal["Custom", "DataStore"] +GenericDataRelationshipTypeType = Literal["BELONGS_TO", "HAS_MANY", "HAS_ONE"] +JSModuleType = Literal["es2020", "esnext"] +JSScriptType = Literal["js", "jsx", "tsx"] +JSTargetType = Literal["es2015", "es2020"] +LabelDecoratorType = Literal["none", "optional", "required"] +ListCodegenJobsPaginatorName = Literal["list_codegen_jobs"] +ListComponentsPaginatorName = Literal["list_components"] +ListFormsPaginatorName = Literal["list_forms"] +ListThemesPaginatorName = Literal["list_themes"] +SortDirectionType = Literal["ASC", "DESC"] +StorageAccessLevelType = Literal["private", "protected", "public"] +TokenProvidersType = Literal["figma"] +AmplifyUIBuilderServiceName = Literal["amplifyuibuilder"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["export_components", + "export_forms", + "export_themes", + "list_codegen_jobs", + "list_components", + "list_forms", + "list_themes",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/apigateway_classes.py b/aws_resource_validator/pydantic_models/apigateway_classes.py new file mode 100644 index 00000000..4e4af6c9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/apigateway_classes.py @@ -0,0 +1,1460 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from botocore.response import StreamingBody +from aws_resource_validator.pydantic_models.apigateway_constants import * + +class AccessLogSettingsTypeDef(BaseModel): + format: Optional[str] = None + destinationArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ThrottleSettingsTypeDef(BaseModel): + burstLimit: Optional[int] = None + rateLimit: Optional[float] = None + +class ApiKeyTypeDef(BaseModel): + id: Optional[str] = None + value: Optional[str] = None + name: Optional[str] = None + customerId: Optional[str] = None + description: Optional[str] = None + enabled: Optional[bool] = None + createdDate: Optional[datetime] = None + lastUpdatedDate: Optional[datetime] = None + stageKeys: Optional[List[str]] = None + tags: Optional[Dict[str, str]] = None + +class AuthorizerTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + type: Optional[AuthorizerTypeType] = None + providerARNs: Optional[List[str]] = None + authType: Optional[str] = None + authorizerUri: Optional[str] = None + authorizerCredentials: Optional[str] = None + identitySource: Optional[str] = None + identityValidationExpression: Optional[str] = None + authorizerResultTtlInSeconds: Optional[int] = None + +class BasePathMappingTypeDef(BaseModel): + basePath: Optional[str] = None + restApiId: Optional[str] = None + stage: Optional[str] = None + +class CanarySettingsOutputTypeDef(BaseModel): + percentTraffic: Optional[float] = None + deploymentId: Optional[str] = None + stageVariableOverrides: Optional[Dict[str, str]] = None + useStageCache: Optional[bool] = None + +class CanarySettingsTypeDef(BaseModel): + percentTraffic: Optional[float] = None + deploymentId: Optional[str] = None + stageVariableOverrides: Optional[Mapping[str, str]] = None + useStageCache: Optional[bool] = None + +class ClientCertificateTypeDef(BaseModel): + clientCertificateId: Optional[str] = None + description: Optional[str] = None + pemEncodedCertificate: Optional[str] = None + createdDate: Optional[datetime] = None + expirationDate: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class StageKeyTypeDef(BaseModel): + restApiId: Optional[str] = None + stageName: Optional[str] = None + +class CreateAuthorizerRequestRequestTypeDef(BaseModel): + restApiId: str + name: str + type: AuthorizerTypeType + providerARNs: Optional[Sequence[str]] = None + authType: Optional[str] = None + authorizerUri: Optional[str] = None + authorizerCredentials: Optional[str] = None + identitySource: Optional[str] = None + identityValidationExpression: Optional[str] = None + authorizerResultTtlInSeconds: Optional[int] = None + +class CreateBasePathMappingRequestRequestTypeDef(BaseModel): + domainName: str + restApiId: str + basePath: Optional[str] = None + stage: Optional[str] = None + +class DeploymentCanarySettingsTypeDef(BaseModel): + percentTraffic: Optional[float] = None + stageVariableOverrides: Optional[Mapping[str, str]] = None + useStageCache: Optional[bool] = None + +class DocumentationPartLocationTypeDef(BaseModel): + type: DocumentationPartTypeType + path: Optional[str] = None + method: Optional[str] = None + statusCode: Optional[str] = None + name: Optional[str] = None + +class CreateDocumentationVersionRequestRequestTypeDef(BaseModel): + restApiId: str + documentationVersion: str + stageName: Optional[str] = None + description: Optional[str] = None + +class EndpointConfigurationTypeDef(BaseModel): + types: Optional[Sequence[EndpointTypeType]] = None + vpcEndpointIds: Optional[Sequence[str]] = None + +class MutualTlsAuthenticationInputTypeDef(BaseModel): + truststoreUri: Optional[str] = None + truststoreVersion: Optional[str] = None + +class CreateModelRequestRequestTypeDef(BaseModel): + restApiId: str + name: str + contentType: str + description: Optional[str] = None + schema: Optional[str] = None + +class CreateRequestValidatorRequestRequestTypeDef(BaseModel): + restApiId: str + name: Optional[str] = None + validateRequestBody: Optional[bool] = None + validateRequestParameters: Optional[bool] = None + +class CreateResourceRequestRequestTypeDef(BaseModel): + restApiId: str + parentId: str + pathPart: str + +class CreateUsagePlanKeyRequestRequestTypeDef(BaseModel): + usagePlanId: str + keyId: str + keyType: str + +class QuotaSettingsTypeDef(BaseModel): + limit: Optional[int] = None + offset: Optional[int] = None + period: Optional[QuotaPeriodTypeType] = None + +class CreateVpcLinkRequestRequestTypeDef(BaseModel): + name: str + targetArns: Sequence[str] + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteApiKeyRequestRequestTypeDef(BaseModel): + apiKey: str + +class DeleteAuthorizerRequestRequestTypeDef(BaseModel): + restApiId: str + authorizerId: str + +class DeleteBasePathMappingRequestRequestTypeDef(BaseModel): + domainName: str + basePath: str + +class DeleteClientCertificateRequestRequestTypeDef(BaseModel): + clientCertificateId: str + +class DeleteDeploymentRequestRequestTypeDef(BaseModel): + restApiId: str + deploymentId: str + +class DeleteDocumentationPartRequestRequestTypeDef(BaseModel): + restApiId: str + documentationPartId: str + +class DeleteDocumentationVersionRequestRequestTypeDef(BaseModel): + restApiId: str + documentationVersion: str + +class DeleteDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + +class DeleteGatewayResponseRequestRequestTypeDef(BaseModel): + restApiId: str + responseType: GatewayResponseTypeType + +class DeleteIntegrationRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + +class DeleteIntegrationResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + +class DeleteMethodRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + +class DeleteMethodResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + +class DeleteModelRequestRequestTypeDef(BaseModel): + restApiId: str + modelName: str + +class DeleteRequestValidatorRequestRequestTypeDef(BaseModel): + restApiId: str + requestValidatorId: str + +class DeleteResourceRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + +class DeleteRestApiRequestRequestTypeDef(BaseModel): + restApiId: str + +class DeleteStageRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + +class DeleteUsagePlanKeyRequestRequestTypeDef(BaseModel): + usagePlanId: str + keyId: str + +class DeleteUsagePlanRequestRequestTypeDef(BaseModel): + usagePlanId: str + +class DeleteVpcLinkRequestRequestTypeDef(BaseModel): + vpcLinkId: str + +class MethodSnapshotTypeDef(BaseModel): + authorizationType: Optional[str] = None + apiKeyRequired: Optional[bool] = None + +class DocumentationVersionTypeDef(BaseModel): + version: Optional[str] = None + createdDate: Optional[datetime] = None + description: Optional[str] = None + +class EndpointConfigurationOutputTypeDef(BaseModel): + types: Optional[List[EndpointTypeType]] = None + vpcEndpointIds: Optional[List[str]] = None + +class MutualTlsAuthenticationTypeDef(BaseModel): + truststoreUri: Optional[str] = None + truststoreVersion: Optional[str] = None + truststoreWarnings: Optional[List[str]] = None + +class EndpointConfigurationExtraOutputTypeDef(BaseModel): + types: Optional[List[EndpointTypeType]] = None + vpcEndpointIds: Optional[List[str]] = None + +class FlushStageAuthorizersCacheRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + +class FlushStageCacheRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + +class GatewayResponseTypeDef(BaseModel): + responseType: Optional[GatewayResponseTypeType] = None + statusCode: Optional[str] = None + responseParameters: Optional[Dict[str, str]] = None + responseTemplates: Optional[Dict[str, str]] = None + defaultResponse: Optional[bool] = None + +class GenerateClientCertificateRequestRequestTypeDef(BaseModel): + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetApiKeyRequestRequestTypeDef(BaseModel): + apiKey: str + includeValue: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetApiKeysRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + limit: Optional[int] = None + nameQuery: Optional[str] = None + customerId: Optional[str] = None + includeValues: Optional[bool] = None + +class GetAuthorizerRequestRequestTypeDef(BaseModel): + restApiId: str + authorizerId: str + +class GetAuthorizersRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetBasePathMappingRequestRequestTypeDef(BaseModel): + domainName: str + basePath: str + +class GetBasePathMappingsRequestRequestTypeDef(BaseModel): + domainName: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetClientCertificateRequestRequestTypeDef(BaseModel): + clientCertificateId: str + +class GetClientCertificatesRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + limit: Optional[int] = None + +class GetDeploymentRequestRequestTypeDef(BaseModel): + restApiId: str + deploymentId: str + embed: Optional[Sequence[str]] = None + +class GetDeploymentsRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetDocumentationPartRequestRequestTypeDef(BaseModel): + restApiId: str + documentationPartId: str + +class GetDocumentationPartsRequestRequestTypeDef(BaseModel): + restApiId: str + type: Optional[DocumentationPartTypeType] = None + nameQuery: Optional[str] = None + path: Optional[str] = None + position: Optional[str] = None + limit: Optional[int] = None + locationStatus: Optional[LocationStatusTypeType] = None + +class GetDocumentationVersionRequestRequestTypeDef(BaseModel): + restApiId: str + documentationVersion: str + +class GetDocumentationVersionsRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + +class GetDomainNamesRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + limit: Optional[int] = None + +class GetExportRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + exportType: str + parameters: Optional[Mapping[str, str]] = None + accepts: Optional[str] = None + +class GetGatewayResponseRequestRequestTypeDef(BaseModel): + restApiId: str + responseType: GatewayResponseTypeType + +class GetGatewayResponsesRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetIntegrationRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + +class GetIntegrationResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + +class GetMethodRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + +class GetMethodResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + +class GetModelRequestRequestTypeDef(BaseModel): + restApiId: str + modelName: str + flatten: Optional[bool] = None + +class GetModelTemplateRequestRequestTypeDef(BaseModel): + restApiId: str + modelName: str + +class GetModelsRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetRequestValidatorRequestRequestTypeDef(BaseModel): + restApiId: str + requestValidatorId: str + +class GetRequestValidatorsRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetResourceRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + embed: Optional[Sequence[str]] = None + +class GetResourcesRequestRequestTypeDef(BaseModel): + restApiId: str + position: Optional[str] = None + limit: Optional[int] = None + embed: Optional[Sequence[str]] = None + +class GetRestApiRequestRequestTypeDef(BaseModel): + restApiId: str + +class GetRestApisRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + limit: Optional[int] = None + +class GetSdkRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + sdkType: str + parameters: Optional[Mapping[str, str]] = None + +class GetSdkTypeRequestRequestTypeDef(BaseModel): + id: str + +class GetSdkTypesRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + limit: Optional[int] = None + +class GetStageRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + +class GetStagesRequestRequestTypeDef(BaseModel): + restApiId: str + deploymentId: Optional[str] = None + +class GetTagsRequestRequestTypeDef(BaseModel): + resourceArn: str + position: Optional[str] = None + limit: Optional[int] = None + +class GetUsagePlanKeyRequestRequestTypeDef(BaseModel): + usagePlanId: str + keyId: str + +class GetUsagePlanKeysRequestRequestTypeDef(BaseModel): + usagePlanId: str + position: Optional[str] = None + limit: Optional[int] = None + nameQuery: Optional[str] = None + +class GetUsagePlanRequestRequestTypeDef(BaseModel): + usagePlanId: str + +class GetUsagePlansRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + keyId: Optional[str] = None + limit: Optional[int] = None + +class GetUsageRequestRequestTypeDef(BaseModel): + usagePlanId: str + startDate: str + endDate: str + keyId: Optional[str] = None + position: Optional[str] = None + limit: Optional[int] = None + +class GetVpcLinkRequestRequestTypeDef(BaseModel): + vpcLinkId: str + +class GetVpcLinksRequestRequestTypeDef(BaseModel): + position: Optional[str] = None + limit: Optional[int] = None + +class IntegrationResponseTypeDef(BaseModel): + statusCode: Optional[str] = None + selectionPattern: Optional[str] = None + responseParameters: Optional[Dict[str, str]] = None + responseTemplates: Optional[Dict[str, str]] = None + contentHandling: Optional[ContentHandlingStrategyType] = None + +class TlsConfigTypeDef(BaseModel): + insecureSkipVerification: Optional[bool] = None + +class MethodResponseTypeDef(BaseModel): + statusCode: Optional[str] = None + responseParameters: Optional[Dict[str, bool]] = None + responseModels: Optional[Dict[str, str]] = None + +class MethodSettingTypeDef(BaseModel): + metricsEnabled: Optional[bool] = None + loggingLevel: Optional[str] = None + dataTraceEnabled: Optional[bool] = None + throttlingBurstLimit: Optional[int] = None + throttlingRateLimit: Optional[float] = None + cachingEnabled: Optional[bool] = None + cacheTtlInSeconds: Optional[int] = None + cacheDataEncrypted: Optional[bool] = None + requireAuthorizationForCacheControl: Optional[bool] = None + unauthorizedCacheControlHeaderStrategy: Optional[ UnauthorizedCacheControlHeaderStrategyType ] = None + +class ModelTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + schema: Optional[str] = None + contentType: Optional[str] = None + +class PatchOperationTypeDef(BaseModel): + op: Optional[OpType] = None + path: Optional[str] = None + value: Optional[str] = None + _from: Optional[str] = None + +class PutGatewayResponseRequestRequestTypeDef(BaseModel): + restApiId: str + responseType: GatewayResponseTypeType + statusCode: Optional[str] = None + responseParameters: Optional[Mapping[str, str]] = None + responseTemplates: Optional[Mapping[str, str]] = None + +class PutIntegrationResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + selectionPattern: Optional[str] = None + responseParameters: Optional[Mapping[str, str]] = None + responseTemplates: Optional[Mapping[str, str]] = None + contentHandling: Optional[ContentHandlingStrategyType] = None + +class PutMethodRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + authorizationType: str + authorizerId: Optional[str] = None + apiKeyRequired: Optional[bool] = None + operationName: Optional[str] = None + requestParameters: Optional[Mapping[str, bool]] = None + requestModels: Optional[Mapping[str, str]] = None + requestValidatorId: Optional[str] = None + authorizationScopes: Optional[Sequence[str]] = None + +class PutMethodResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + responseParameters: Optional[Mapping[str, bool]] = None + responseModels: Optional[Mapping[str, str]] = None + +class RequestValidatorTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + validateRequestBody: Optional[bool] = None + validateRequestParameters: Optional[bool] = None + +class SdkConfigurationPropertyTypeDef(BaseModel): + name: Optional[str] = None + friendlyName: Optional[str] = None + description: Optional[str] = None + required: Optional[bool] = None + defaultValue: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TestInvokeAuthorizerRequestRequestTypeDef(BaseModel): + restApiId: str + authorizerId: str + headers: Optional[Mapping[str, str]] = None + multiValueHeaders: Optional[Mapping[str, Sequence[str]]] = None + pathWithQueryString: Optional[str] = None + body: Optional[str] = None + stageVariables: Optional[Mapping[str, str]] = None + additionalContext: Optional[Mapping[str, str]] = None + +class TestInvokeMethodRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + pathWithQueryString: Optional[str] = None + body: Optional[str] = None + headers: Optional[Mapping[str, str]] = None + multiValueHeaders: Optional[Mapping[str, Sequence[str]]] = None + clientCertificateId: Optional[str] = None + stageVariables: Optional[Mapping[str, str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UsagePlanKeyTypeDef(BaseModel): + id: Optional[str] = None + type: Optional[str] = None + value: Optional[str] = None + name: Optional[str] = None + +class VpcLinkTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + targetArns: Optional[List[str]] = None + status: Optional[VpcLinkStatusType] = None + statusMessage: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ApiKeyIdsTypeDef(BaseModel): + ids: List[str] + warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ApiKeyResponseTypeDef(BaseModel): + id: str + value: str + name: str + customerId: str + description: str + enabled: bool + createdDate: datetime + lastUpdatedDate: datetime + stageKeys: List[str] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizerResponseTypeDef(BaseModel): + id: str + name: str + type: AuthorizerTypeType + providerARNs: List[str] + authType: str + authorizerUri: str + authorizerCredentials: str + identitySource: str + identityValidationExpression: str + authorizerResultTtlInSeconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class BasePathMappingResponseTypeDef(BaseModel): + basePath: str + restApiId: str + stage: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClientCertificateResponseTypeDef(BaseModel): + clientCertificateId: str + description: str + pemEncodedCertificate: str + createdDate: datetime + expirationDate: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentationPartIdsTypeDef(BaseModel): + ids: List[str] + warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentationVersionResponseTypeDef(BaseModel): + version: str + createdDate: datetime + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportResponseTypeDef(BaseModel): + contentType: str + contentDisposition: str + body: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GatewayResponseResponseTypeDef(BaseModel): + responseType: GatewayResponseTypeType + statusCode: str + responseParameters: Dict[str, str] + responseTemplates: Dict[str, str] + defaultResponse: bool + ResponseMetadata: ResponseMetadataTypeDef + +class IntegrationResponseResponseTypeDef(BaseModel): + statusCode: str + selectionPattern: str + responseParameters: Dict[str, str] + responseTemplates: Dict[str, str] + contentHandling: ContentHandlingStrategyType + ResponseMetadata: ResponseMetadataTypeDef + +class MethodResponseResponseTypeDef(BaseModel): + statusCode: str + responseParameters: Dict[str, bool] + responseModels: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ModelResponseTypeDef(BaseModel): + id: str + name: str + description: str + schema: str + contentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class RequestValidatorResponseTypeDef(BaseModel): + id: str + name: str + validateRequestBody: bool + validateRequestParameters: bool + ResponseMetadata: ResponseMetadataTypeDef + +class SdkResponseTypeDef(BaseModel): + contentType: str + contentDisposition: str + body: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class TagsTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class TemplateTypeDef(BaseModel): + value: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestInvokeAuthorizerResponseTypeDef(BaseModel): + clientStatus: int + log: str + latency: int + principalId: str + policy: str + authorization: Dict[str, List[str]] + claims: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class TestInvokeMethodResponseTypeDef(BaseModel): + status: int + body: str + headers: Dict[str, str] + multiValueHeaders: Dict[str, List[str]] + log: str + latency: int + ResponseMetadata: ResponseMetadataTypeDef + +class UsagePlanKeyResponseTypeDef(BaseModel): + id: str + type: str + value: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UsageTypeDef(BaseModel): + usagePlanId: str + startDate: str + endDate: str + position: str + items: Dict[str, List[List[int]]] + ResponseMetadata: ResponseMetadataTypeDef + +class VpcLinkResponseTypeDef(BaseModel): + id: str + name: str + description: str + targetArns: List[str] + status: VpcLinkStatusType + statusMessage: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class AccountTypeDef(BaseModel): + cloudwatchRoleArn: str + throttleSettings: ThrottleSettingsTypeDef + features: List[str] + apiKeyVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ApiStageExtraOutputTypeDef(BaseModel): + apiId: Optional[str] = None + stage: Optional[str] = None + throttle: Optional[Dict[str, ThrottleSettingsTypeDef]] = None + +class ApiStageOutputTypeDef(BaseModel): + apiId: Optional[str] = None + stage: Optional[str] = None + throttle: Optional[Dict[str, ThrottleSettingsTypeDef]] = None + +class ApiStageTypeDef(BaseModel): + apiId: Optional[str] = None + stage: Optional[str] = None + throttle: Optional[Mapping[str, ThrottleSettingsTypeDef]] = None + +class ApiKeysTypeDef(BaseModel): + warnings: List[str] + position: str + items: List[ApiKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizersTypeDef(BaseModel): + position: str + items: List[AuthorizerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BasePathMappingsTypeDef(BaseModel): + position: str + items: List[BasePathMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportApiKeysRequestRequestTypeDef(BaseModel): + body: BlobTypeDef + format: Literal["csv"] + failOnWarnings: Optional[bool] = None + +class ImportDocumentationPartsRequestRequestTypeDef(BaseModel): + restApiId: str + body: BlobTypeDef + mode: Optional[PutModeType] = None + failOnWarnings: Optional[bool] = None + +class ImportRestApiRequestRequestTypeDef(BaseModel): + body: BlobTypeDef + failOnWarnings: Optional[bool] = None + parameters: Optional[Mapping[str, str]] = None + +class PutRestApiRequestRequestTypeDef(BaseModel): + restApiId: str + body: BlobTypeDef + mode: Optional[PutModeType] = None + failOnWarnings: Optional[bool] = None + parameters: Optional[Mapping[str, str]] = None + +class CreateStageRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + deploymentId: str + description: Optional[str] = None + cacheClusterEnabled: Optional[bool] = None + cacheClusterSize: Optional[CacheClusterSizeType] = None + variables: Optional[Mapping[str, str]] = None + documentationVersion: Optional[str] = None + canarySettings: Optional[CanarySettingsTypeDef] = None + tracingEnabled: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + +class ClientCertificatesTypeDef(BaseModel): + position: str + items: List[ClientCertificateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApiKeyRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + enabled: Optional[bool] = None + generateDistinctId: Optional[bool] = None + value: Optional[str] = None + stageKeys: Optional[Sequence[StageKeyTypeDef]] = None + customerId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: Optional[str] = None + stageDescription: Optional[str] = None + description: Optional[str] = None + cacheClusterEnabled: Optional[bool] = None + cacheClusterSize: Optional[CacheClusterSizeType] = None + variables: Optional[Mapping[str, str]] = None + canarySettings: Optional[DeploymentCanarySettingsTypeDef] = None + tracingEnabled: Optional[bool] = None + +class CreateDocumentationPartRequestRequestTypeDef(BaseModel): + restApiId: str + location: DocumentationPartLocationTypeDef + properties: str + +class DocumentationPartResponseTypeDef(BaseModel): + id: str + location: DocumentationPartLocationTypeDef + properties: str + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentationPartTypeDef(BaseModel): + id: Optional[str] = None + location: Optional[DocumentationPartLocationTypeDef] = None + properties: Optional[str] = None + +class CreateRestApiRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + version: Optional[str] = None + cloneFrom: Optional[str] = None + binaryMediaTypes: Optional[Sequence[str]] = None + minimumCompressionSize: Optional[int] = None + apiKeySource: Optional[ApiKeySourceTypeType] = None + endpointConfiguration: Optional[EndpointConfigurationTypeDef] = None + policy: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + disableExecuteApiEndpoint: Optional[bool] = None + +class CreateDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + certificateName: Optional[str] = None + certificateBody: Optional[str] = None + certificatePrivateKey: Optional[str] = None + certificateChain: Optional[str] = None + certificateArn: Optional[str] = None + regionalCertificateName: Optional[str] = None + regionalCertificateArn: Optional[str] = None + endpointConfiguration: Optional[EndpointConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + securityPolicy: Optional[SecurityPolicyType] = None + mutualTlsAuthentication: Optional[MutualTlsAuthenticationInputTypeDef] = None + ownershipVerificationCertificateArn: Optional[str] = None + +class DeploymentResponseTypeDef(BaseModel): + id: str + description: str + createdDate: datetime + apiSummary: Dict[str, Dict[str, MethodSnapshotTypeDef]] + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentTypeDef(BaseModel): + id: Optional[str] = None + description: Optional[str] = None + createdDate: Optional[datetime] = None + apiSummary: Optional[Dict[str, Dict[str, MethodSnapshotTypeDef]]] = None + +class DocumentationVersionsTypeDef(BaseModel): + position: str + items: List[DocumentationVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RestApiResponseTypeDef(BaseModel): + id: str + name: str + description: str + createdDate: datetime + version: str + warnings: List[str] + binaryMediaTypes: List[str] + minimumCompressionSize: int + apiKeySource: ApiKeySourceTypeType + endpointConfiguration: EndpointConfigurationOutputTypeDef + policy: str + tags: Dict[str, str] + disableExecuteApiEndpoint: bool + rootResourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestApiTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + createdDate: Optional[datetime] = None + version: Optional[str] = None + warnings: Optional[List[str]] = None + binaryMediaTypes: Optional[List[str]] = None + minimumCompressionSize: Optional[int] = None + apiKeySource: Optional[ApiKeySourceTypeType] = None + endpointConfiguration: Optional[EndpointConfigurationOutputTypeDef] = None + policy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + disableExecuteApiEndpoint: Optional[bool] = None + rootResourceId: Optional[str] = None + +class DomainNameResponseTypeDef(BaseModel): + domainName: str + certificateName: str + certificateArn: str + certificateUploadDate: datetime + regionalDomainName: str + regionalHostedZoneId: str + regionalCertificateName: str + regionalCertificateArn: str + distributionDomainName: str + distributionHostedZoneId: str + endpointConfiguration: EndpointConfigurationOutputTypeDef + domainNameStatus: DomainNameStatusType + domainNameStatusMessage: str + securityPolicy: SecurityPolicyType + tags: Dict[str, str] + mutualTlsAuthentication: MutualTlsAuthenticationTypeDef + ownershipVerificationCertificateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DomainNameTypeDef(BaseModel): + domainName: Optional[str] = None + certificateName: Optional[str] = None + certificateArn: Optional[str] = None + certificateUploadDate: Optional[datetime] = None + regionalDomainName: Optional[str] = None + regionalHostedZoneId: Optional[str] = None + regionalCertificateName: Optional[str] = None + regionalCertificateArn: Optional[str] = None + distributionDomainName: Optional[str] = None + distributionHostedZoneId: Optional[str] = None + endpointConfiguration: Optional[EndpointConfigurationOutputTypeDef] = None + domainNameStatus: Optional[DomainNameStatusType] = None + domainNameStatusMessage: Optional[str] = None + securityPolicy: Optional[SecurityPolicyType] = None + tags: Optional[Dict[str, str]] = None + mutualTlsAuthentication: Optional[MutualTlsAuthenticationTypeDef] = None + ownershipVerificationCertificateArn: Optional[str] = None + +class GatewayResponsesTypeDef(BaseModel): + position: str + items: List[GatewayResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetApiKeysRequestGetApiKeysPaginateTypeDef(BaseModel): + nameQuery: Optional[str] = None + customerId: Optional[str] = None + includeValues: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAuthorizersRequestGetAuthorizersPaginateTypeDef(BaseModel): + restApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBasePathMappingsRequestGetBasePathMappingsPaginateTypeDef(BaseModel): + domainName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetClientCertificatesRequestGetClientCertificatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDeploymentsRequestGetDeploymentsPaginateTypeDef(BaseModel): + restApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDocumentationPartsRequestGetDocumentationPartsPaginateTypeDef(BaseModel): + restApiId: str + type: Optional[DocumentationPartTypeType] = None + nameQuery: Optional[str] = None + path: Optional[str] = None + locationStatus: Optional[LocationStatusTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDocumentationVersionsRequestGetDocumentationVersionsPaginateTypeDef(BaseModel): + restApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDomainNamesRequestGetDomainNamesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetGatewayResponsesRequestGetGatewayResponsesPaginateTypeDef(BaseModel): + restApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetModelsRequestGetModelsPaginateTypeDef(BaseModel): + restApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRequestValidatorsRequestGetRequestValidatorsPaginateTypeDef(BaseModel): + restApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourcesRequestGetResourcesPaginateTypeDef(BaseModel): + restApiId: str + embed: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRestApisRequestGetRestApisPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSdkTypesRequestGetSdkTypesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetUsagePlanKeysRequestGetUsagePlanKeysPaginateTypeDef(BaseModel): + usagePlanId: str + nameQuery: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetUsagePlansRequestGetUsagePlansPaginateTypeDef(BaseModel): + keyId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetUsageRequestGetUsagePaginateTypeDef(BaseModel): + usagePlanId: str + startDate: str + endDate: str + keyId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetVpcLinksRequestGetVpcLinksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class IntegrationExtraResponseTypeDef(BaseModel): + type: IntegrationTypeType + httpMethod: str + uri: str + connectionType: ConnectionTypeType + connectionId: str + credentials: str + requestParameters: Dict[str, str] + requestTemplates: Dict[str, str] + passthroughBehavior: str + contentHandling: ContentHandlingStrategyType + timeoutInMillis: int + cacheNamespace: str + cacheKeyParameters: List[str] + integrationResponses: Dict[str, IntegrationResponseTypeDef] + tlsConfig: TlsConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IntegrationTypeDef(BaseModel): + type: Optional[IntegrationTypeType] = None + httpMethod: Optional[str] = None + uri: Optional[str] = None + connectionType: Optional[ConnectionTypeType] = None + connectionId: Optional[str] = None + credentials: Optional[str] = None + requestParameters: Optional[Dict[str, str]] = None + requestTemplates: Optional[Dict[str, str]] = None + passthroughBehavior: Optional[str] = None + contentHandling: Optional[ContentHandlingStrategyType] = None + timeoutInMillis: Optional[int] = None + cacheNamespace: Optional[str] = None + cacheKeyParameters: Optional[List[str]] = None + integrationResponses: Optional[Dict[str, IntegrationResponseTypeDef]] = None + tlsConfig: Optional[TlsConfigTypeDef] = None + +class PutIntegrationRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + type: IntegrationTypeType + integrationHttpMethod: Optional[str] = None + uri: Optional[str] = None + connectionType: Optional[ConnectionTypeType] = None + connectionId: Optional[str] = None + credentials: Optional[str] = None + requestParameters: Optional[Mapping[str, str]] = None + requestTemplates: Optional[Mapping[str, str]] = None + passthroughBehavior: Optional[str] = None + cacheNamespace: Optional[str] = None + cacheKeyParameters: Optional[Sequence[str]] = None + contentHandling: Optional[ContentHandlingStrategyType] = None + timeoutInMillis: Optional[int] = None + tlsConfig: Optional[TlsConfigTypeDef] = None + +class StageResponseTypeDef(BaseModel): + deploymentId: str + clientCertificateId: str + stageName: str + description: str + cacheClusterEnabled: bool + cacheClusterSize: CacheClusterSizeType + cacheClusterStatus: CacheClusterStatusType + methodSettings: Dict[str, MethodSettingTypeDef] + variables: Dict[str, str] + documentationVersion: str + accessLogSettings: AccessLogSettingsTypeDef + canarySettings: CanarySettingsOutputTypeDef + tracingEnabled: bool + webAclArn: str + tags: Dict[str, str] + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StageTypeDef(BaseModel): + deploymentId: Optional[str] = None + clientCertificateId: Optional[str] = None + stageName: Optional[str] = None + description: Optional[str] = None + cacheClusterEnabled: Optional[bool] = None + cacheClusterSize: Optional[CacheClusterSizeType] = None + cacheClusterStatus: Optional[CacheClusterStatusType] = None + methodSettings: Optional[Dict[str, MethodSettingTypeDef]] = None + variables: Optional[Dict[str, str]] = None + documentationVersion: Optional[str] = None + accessLogSettings: Optional[AccessLogSettingsTypeDef] = None + canarySettings: Optional[CanarySettingsOutputTypeDef] = None + tracingEnabled: Optional[bool] = None + webAclArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + createdDate: Optional[datetime] = None + lastUpdatedDate: Optional[datetime] = None + +class ModelsTypeDef(BaseModel): + position: str + items: List[ModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountRequestRequestTypeDef(BaseModel): + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateApiKeyRequestRequestTypeDef(BaseModel): + apiKey: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateAuthorizerRequestRequestTypeDef(BaseModel): + restApiId: str + authorizerId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateBasePathMappingRequestRequestTypeDef(BaseModel): + domainName: str + basePath: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateClientCertificateRequestRequestTypeDef(BaseModel): + clientCertificateId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateDeploymentRequestRequestTypeDef(BaseModel): + restApiId: str + deploymentId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateDocumentationPartRequestRequestTypeDef(BaseModel): + restApiId: str + documentationPartId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateDocumentationVersionRequestRequestTypeDef(BaseModel): + restApiId: str + documentationVersion: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateGatewayResponseRequestRequestTypeDef(BaseModel): + restApiId: str + responseType: GatewayResponseTypeType + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateIntegrationRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateIntegrationResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateMethodRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateMethodResponseRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + httpMethod: str + statusCode: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateModelRequestRequestTypeDef(BaseModel): + restApiId: str + modelName: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateRequestValidatorRequestRequestTypeDef(BaseModel): + restApiId: str + requestValidatorId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateResourceRequestRequestTypeDef(BaseModel): + restApiId: str + resourceId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateRestApiRequestRequestTypeDef(BaseModel): + restApiId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateStageRequestRequestTypeDef(BaseModel): + restApiId: str + stageName: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateUsagePlanRequestRequestTypeDef(BaseModel): + usagePlanId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateUsageRequestRequestTypeDef(BaseModel): + usagePlanId: str + keyId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class UpdateVpcLinkRequestRequestTypeDef(BaseModel): + vpcLinkId: str + patchOperations: Optional[Sequence[PatchOperationTypeDef]] = None + +class RequestValidatorsTypeDef(BaseModel): + position: str + items: List[RequestValidatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SdkTypeResponseTypeDef(BaseModel): + id: str + friendlyName: str + description: str + configurationProperties: List[SdkConfigurationPropertyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SdkTypeTypeDef(BaseModel): + id: Optional[str] = None + friendlyName: Optional[str] = None + description: Optional[str] = None + configurationProperties: Optional[List[SdkConfigurationPropertyTypeDef]] = None + +class UsagePlanKeysTypeDef(BaseModel): + position: str + items: List[UsagePlanKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VpcLinksTypeDef(BaseModel): + position: str + items: List[VpcLinkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UsagePlanResponseTypeDef(BaseModel): + id: str + name: str + description: str + apiStages: List[ApiStageOutputTypeDef] + throttle: ThrottleSettingsTypeDef + quota: QuotaSettingsTypeDef + productCode: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UsagePlanTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + apiStages: Optional[List[ApiStageOutputTypeDef]] = None + throttle: Optional[ThrottleSettingsTypeDef] = None + quota: Optional[QuotaSettingsTypeDef] = None + productCode: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class DocumentationPartsTypeDef(BaseModel): + position: str + items: List[DocumentationPartTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentsTypeDef(BaseModel): + position: str + items: List[DeploymentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RestApisTypeDef(BaseModel): + position: str + items: List[RestApiTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DomainNamesTypeDef(BaseModel): + position: str + items: List[DomainNameTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MethodExtraResponseTypeDef(BaseModel): + httpMethod: str + authorizationType: str + authorizerId: str + apiKeyRequired: bool + requestValidatorId: str + operationName: str + requestParameters: Dict[str, bool] + requestModels: Dict[str, str] + methodResponses: Dict[str, MethodResponseTypeDef] + methodIntegration: IntegrationTypeDef + authorizationScopes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class MethodTypeDef(BaseModel): + httpMethod: Optional[str] = None + authorizationType: Optional[str] = None + authorizerId: Optional[str] = None + apiKeyRequired: Optional[bool] = None + requestValidatorId: Optional[str] = None + operationName: Optional[str] = None + requestParameters: Optional[Dict[str, bool]] = None + requestModels: Optional[Dict[str, str]] = None + methodResponses: Optional[Dict[str, MethodResponseTypeDef]] = None + methodIntegration: Optional[IntegrationTypeDef] = None + authorizationScopes: Optional[List[str]] = None + +class StagesTypeDef(BaseModel): + item: List[StageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SdkTypesTypeDef(BaseModel): + position: str + items: List[SdkTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UsagePlansTypeDef(BaseModel): + position: str + items: List[UsagePlanTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUsagePlanRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + apiStages: Optional[Sequence[ApiStageUnionTypeDef]] = None + throttle: Optional[ThrottleSettingsTypeDef] = None + quota: Optional[QuotaSettingsTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class ResourceResponseTypeDef(BaseModel): + id: str + parentId: str + pathPart: str + path: str + resourceMethods: Dict[str, MethodTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceTypeDef(BaseModel): + id: Optional[str] = None + parentId: Optional[str] = None + pathPart: Optional[str] = None + path: Optional[str] = None + resourceMethods: Optional[Dict[str, MethodTypeDef]] = None + +class ResourcesTypeDef(BaseModel): + position: str + items: List[ResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/apigateway_constants.py b/aws_resource_validator/pydantic_models/apigateway_constants.py new file mode 100644 index 00000000..1f331252 --- /dev/null +++ b/aws_resource_validator/pydantic_models/apigateway_constants.py @@ -0,0 +1,522 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApiKeySourceTypeType = Literal["AUTHORIZER", "HEADER"] +ApiKeysFormatType = Literal["csv"] +AuthorizerTypeType = Literal["COGNITO_USER_POOLS", "REQUEST", "TOKEN"] +CacheClusterSizeType = Literal["0.5", "1.6", "118", "13.5", "237", "28.4", "58.2", "6.1"] +CacheClusterStatusType = Literal["AVAILABLE", "CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "FLUSH_IN_PROGRESS", "NOT_AVAILABLE"] +ConnectionTypeType = Literal["INTERNET", "VPC_LINK"] +ContentHandlingStrategyType = Literal["CONVERT_TO_BINARY", "CONVERT_TO_TEXT"] +DocumentationPartTypeType = Literal["API", + "AUTHORIZER", + "METHOD", + "MODEL", + "PATH_PARAMETER", + "QUERY_PARAMETER", + "REQUEST_BODY", + "REQUEST_HEADER", + "RESOURCE", + "RESPONSE", + "RESPONSE_BODY", + "RESPONSE_HEADER",] +DomainNameStatusType = Literal["AVAILABLE", + "PENDING", + "PENDING_CERTIFICATE_REIMPORT", + "PENDING_OWNERSHIP_VERIFICATION", + "UPDATING",] +EndpointTypeType = Literal["EDGE", "PRIVATE", "REGIONAL"] +GatewayResponseTypeType = Literal["ACCESS_DENIED", + "API_CONFIGURATION_ERROR", + "AUTHORIZER_CONFIGURATION_ERROR", + "AUTHORIZER_FAILURE", + "BAD_REQUEST_BODY", + "BAD_REQUEST_PARAMETERS", + "DEFAULT_4XX", + "DEFAULT_5XX", + "EXPIRED_TOKEN", + "INTEGRATION_FAILURE", + "INTEGRATION_TIMEOUT", + "INVALID_API_KEY", + "INVALID_SIGNATURE", + "MISSING_AUTHENTICATION_TOKEN", + "QUOTA_EXCEEDED", + "REQUEST_TOO_LARGE", + "RESOURCE_NOT_FOUND", + "THROTTLED", + "UNAUTHORIZED", + "UNSUPPORTED_MEDIA_TYPE", + "WAF_FILTERED",] +GetApiKeysPaginatorName = Literal["get_api_keys"] +GetAuthorizersPaginatorName = Literal["get_authorizers"] +GetBasePathMappingsPaginatorName = Literal["get_base_path_mappings"] +GetClientCertificatesPaginatorName = Literal["get_client_certificates"] +GetDeploymentsPaginatorName = Literal["get_deployments"] +GetDocumentationPartsPaginatorName = Literal["get_documentation_parts"] +GetDocumentationVersionsPaginatorName = Literal["get_documentation_versions"] +GetDomainNamesPaginatorName = Literal["get_domain_names"] +GetGatewayResponsesPaginatorName = Literal["get_gateway_responses"] +GetModelsPaginatorName = Literal["get_models"] +GetRequestValidatorsPaginatorName = Literal["get_request_validators"] +GetResourcesPaginatorName = Literal["get_resources"] +GetRestApisPaginatorName = Literal["get_rest_apis"] +GetSdkTypesPaginatorName = Literal["get_sdk_types"] +GetUsagePaginatorName = Literal["get_usage"] +GetUsagePlanKeysPaginatorName = Literal["get_usage_plan_keys"] +GetUsagePlansPaginatorName = Literal["get_usage_plans"] +GetVpcLinksPaginatorName = Literal["get_vpc_links"] +IntegrationTypeType = Literal["AWS", "AWS_PROXY", "HTTP", "HTTP_PROXY", "MOCK"] +LocationStatusTypeType = Literal["DOCUMENTED", "UNDOCUMENTED"] +OpType = Literal["add", "copy", "move", "remove", "replace", "test"] +PutModeType = Literal["merge", "overwrite"] +QuotaPeriodTypeType = Literal["DAY", "MONTH", "WEEK"] +SecurityPolicyType = Literal["TLS_1_0", "TLS_1_2"] +UnauthorizedCacheControlHeaderStrategyType = Literal["FAIL_WITH_403", "SUCCEED_WITHOUT_RESPONSE_HEADER", "SUCCEED_WITH_RESPONSE_HEADER"] +VpcLinkStatusType = Literal["AVAILABLE", "DELETING", "FAILED", "PENDING"] +APIGatewayServiceName = Literal["apigateway"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_api_keys", + "get_authorizers", + "get_base_path_mappings", + "get_client_certificates", + "get_deployments", + "get_documentation_parts", + "get_documentation_versions", + "get_domain_names", + "get_gateway_responses", + "get_models", + "get_request_validators", + "get_resources", + "get_rest_apis", + "get_sdk_types", + "get_usage", + "get_usage_plan_keys", + "get_usage_plans", + "get_vpc_links",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any]] +CanarySettingsUnionTypeDef = Union['CanarySettingsTypeDef', 'CanarySettingsOutputTypeDef'] +EndpointConfigurationUnionTypeDef = Union[ 'EndpointConfigurationTypeDef', 'EndpointConfigurationExtraOutputTypeDef' ] +ApiStageUnionTypeDef = Union['ApiStageTypeDef', 'ApiStageExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/apigatewaymanagementapi_classes.py b/aws_resource_validator/pydantic_models/apigatewaymanagementapi_classes.py new file mode 100644 index 00000000..79276272 --- /dev/null +++ b/aws_resource_validator/pydantic_models/apigatewaymanagementapi_classes.py @@ -0,0 +1,43 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.apigatewaymanagementapi_constants import * + +class DeleteConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class IdentityTypeDef(BaseModel): + SourceIp: str + UserAgent: str + +class PostToConnectionRequestRequestTypeDef(BaseModel): + Data: BlobTypeDef + ConnectionId: str + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectionResponseTypeDef(BaseModel): + ConnectedAt: datetime + Identity: IdentityTypeDef + LastActiveAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/apigatewaymanagementapi_constants.py b/aws_resource_validator/pydantic_models/apigatewaymanagementapi_constants.py new file mode 100644 index 00000000..3ea631fe --- /dev/null +++ b/aws_resource_validator/pydantic_models/apigatewaymanagementapi_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApiGatewayManagementApiServiceName = Literal["apigatewaymanagementapi"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/apigatewayv2_classes.py b/aws_resource_validator/pydantic_models/apigatewayv2_classes.py new file mode 100644 index 00000000..37972f79 --- /dev/null +++ b/aws_resource_validator/pydantic_models/apigatewayv2_classes.py @@ -0,0 +1,1350 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.apigatewayv2_constants import * + +class AccessLogSettingsTypeDef(BaseModel): + DestinationArn: Optional[str] = None + Format: Optional[str] = None + +class ApiMappingTypeDef(BaseModel): + ApiId: str + Stage: str + ApiMappingId: Optional[str] = None + ApiMappingKey: Optional[str] = None + +class CorsPaginatorTypeDef(BaseModel): + AllowCredentials: Optional[bool] = None + AllowHeaders: Optional[List[str]] = None + AllowMethods: Optional[List[str]] = None + AllowOrigins: Optional[List[str]] = None + ExposeHeaders: Optional[List[str]] = None + MaxAge: Optional[int] = None + +class CorsTypeDef(BaseModel): + AllowCredentials: Optional[bool] = None + AllowHeaders: Optional[Sequence[str]] = None + AllowMethods: Optional[Sequence[str]] = None + AllowOrigins: Optional[Sequence[str]] = None + ExposeHeaders: Optional[Sequence[str]] = None + MaxAge: Optional[int] = None + +class JWTConfigurationPaginatorTypeDef(BaseModel): + Audience: Optional[List[str]] = None + Issuer: Optional[str] = None + +class JWTConfigurationTypeDef(BaseModel): + Audience: Optional[Sequence[str]] = None + Issuer: Optional[str] = None + +class CreateApiMappingRequestRequestTypeDef(BaseModel): + ApiId: str + DomainName: str + Stage: str + ApiMappingKey: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + ApiId: str + Description: Optional[str] = None + StageName: Optional[str] = None + +class MutualTlsAuthenticationInputTypeDef(BaseModel): + TruststoreUri: Optional[str] = None + TruststoreVersion: Optional[str] = None + +class MutualTlsAuthenticationTypeDef(BaseModel): + TruststoreUri: Optional[str] = None + TruststoreVersion: Optional[str] = None + TruststoreWarnings: Optional[List[str]] = None + +class TlsConfigInputTypeDef(BaseModel): + ServerNameToVerify: Optional[str] = None + +class CreateIntegrationResponseRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + IntegrationResponseKey: str + ContentHandlingStrategy: Optional[ContentHandlingStrategyType] = None + ResponseParameters: Optional[Mapping[str, str]] = None + ResponseTemplates: Optional[Mapping[str, str]] = None + TemplateSelectionExpression: Optional[str] = None + +class TlsConfigTypeDef(BaseModel): + ServerNameToVerify: Optional[str] = None + +class CreateModelRequestRequestTypeDef(BaseModel): + ApiId: str + Name: str + Schema: str + ContentType: Optional[str] = None + Description: Optional[str] = None + +class ParameterConstraintsTypeDef(BaseModel): + Required: Optional[bool] = None + +class RouteSettingsTypeDef(BaseModel): + DataTraceEnabled: Optional[bool] = None + DetailedMetricsEnabled: Optional[bool] = None + LoggingLevel: Optional[LoggingLevelType] = None + ThrottlingBurstLimit: Optional[int] = None + ThrottlingRateLimit: Optional[float] = None + +class CreateVpcLinkRequestRequestTypeDef(BaseModel): + Name: str + SubnetIds: Sequence[str] + SecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class DeleteAccessLogSettingsRequestRequestTypeDef(BaseModel): + ApiId: str + StageName: str + +class DeleteApiMappingRequestRequestTypeDef(BaseModel): + ApiMappingId: str + DomainName: str + +class DeleteApiRequestRequestTypeDef(BaseModel): + ApiId: str + +class DeleteAuthorizerRequestRequestTypeDef(BaseModel): + ApiId: str + AuthorizerId: str + +class DeleteCorsConfigurationRequestRequestTypeDef(BaseModel): + ApiId: str + +class DeleteDeploymentRequestRequestTypeDef(BaseModel): + ApiId: str + DeploymentId: str + +class DeleteDomainNameRequestRequestTypeDef(BaseModel): + DomainName: str + +class DeleteIntegrationRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + +class DeleteIntegrationResponseRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + IntegrationResponseId: str + +class DeleteModelRequestRequestTypeDef(BaseModel): + ApiId: str + ModelId: str + +class DeleteRouteRequestParameterRequestRequestTypeDef(BaseModel): + ApiId: str + RequestParameterKey: str + RouteId: str + +class DeleteRouteRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + +class DeleteRouteResponseRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + RouteResponseId: str + +class DeleteRouteSettingsRequestRequestTypeDef(BaseModel): + ApiId: str + RouteKey: str + StageName: str + +class DeleteStageRequestRequestTypeDef(BaseModel): + ApiId: str + StageName: str + +class DeleteVpcLinkRequestRequestTypeDef(BaseModel): + VpcLinkId: str + +class DeploymentTypeDef(BaseModel): + AutoDeployed: Optional[bool] = None + CreatedDate: Optional[datetime] = None + DeploymentId: Optional[str] = None + DeploymentStatus: Optional[DeploymentStatusType] = None + DeploymentStatusMessage: Optional[str] = None + Description: Optional[str] = None + +class DomainNameConfigurationPaginatorTypeDef(BaseModel): + ApiGatewayDomainName: Optional[str] = None + CertificateArn: Optional[str] = None + CertificateName: Optional[str] = None + CertificateUploadDate: Optional[datetime] = None + DomainNameStatus: Optional[DomainNameStatusType] = None + DomainNameStatusMessage: Optional[str] = None + EndpointType: Optional[EndpointTypeType] = None + HostedZoneId: Optional[str] = None + SecurityPolicy: Optional[SecurityPolicyType] = None + OwnershipVerificationCertificateArn: Optional[str] = None + +class ExportApiRequestRequestTypeDef(BaseModel): + ApiId: str + OutputType: JSONYAMLType + Specification: Literal["OAS30"] + ExportVersion: Optional[str] = None + IncludeExtensions: Optional[bool] = None + StageName: Optional[str] = None + +class GetApiMappingRequestRequestTypeDef(BaseModel): + ApiMappingId: str + DomainName: str + +class GetApiMappingsRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetApiRequestRequestTypeDef(BaseModel): + ApiId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetApisRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetAuthorizerRequestRequestTypeDef(BaseModel): + ApiId: str + AuthorizerId: str + +class GetAuthorizersRequestRequestTypeDef(BaseModel): + ApiId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetDeploymentRequestRequestTypeDef(BaseModel): + ApiId: str + DeploymentId: str + +class GetDeploymentsRequestRequestTypeDef(BaseModel): + ApiId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetDomainNameRequestRequestTypeDef(BaseModel): + DomainName: str + +class GetDomainNamesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetIntegrationRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + +class GetIntegrationResponseRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + IntegrationResponseId: str + +class GetIntegrationResponsesRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class IntegrationResponseTypeDef(BaseModel): + IntegrationResponseKey: str + ContentHandlingStrategy: Optional[ContentHandlingStrategyType] = None + IntegrationResponseId: Optional[str] = None + ResponseParameters: Optional[Dict[str, str]] = None + ResponseTemplates: Optional[Dict[str, str]] = None + TemplateSelectionExpression: Optional[str] = None + +class GetIntegrationsRequestRequestTypeDef(BaseModel): + ApiId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetModelRequestRequestTypeDef(BaseModel): + ApiId: str + ModelId: str + +class GetModelTemplateRequestRequestTypeDef(BaseModel): + ApiId: str + ModelId: str + +class GetModelsRequestRequestTypeDef(BaseModel): + ApiId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ModelTypeDef(BaseModel): + Name: str + ContentType: Optional[str] = None + Description: Optional[str] = None + ModelId: Optional[str] = None + Schema: Optional[str] = None + +class GetRouteRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + +class GetRouteResponseRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + RouteResponseId: str + +class GetRouteResponsesRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetRoutesRequestRequestTypeDef(BaseModel): + ApiId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetStageRequestRequestTypeDef(BaseModel): + ApiId: str + StageName: str + +class GetStagesRequestRequestTypeDef(BaseModel): + ApiId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class GetTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetVpcLinkRequestRequestTypeDef(BaseModel): + VpcLinkId: str + +class GetVpcLinksRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class VpcLinkTypeDef(BaseModel): + Name: str + SecurityGroupIds: List[str] + SubnetIds: List[str] + VpcLinkId: str + CreatedDate: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + VpcLinkStatus: Optional[VpcLinkStatusType] = None + VpcLinkStatusMessage: Optional[str] = None + VpcLinkVersion: Optional[Literal["V2"]] = None + +class ImportApiRequestRequestTypeDef(BaseModel): + Body: str + Basepath: Optional[str] = None + FailOnWarnings: Optional[bool] = None + +class ReimportApiRequestRequestTypeDef(BaseModel): + ApiId: str + Body: str + Basepath: Optional[str] = None + FailOnWarnings: Optional[bool] = None + +class ResetAuthorizersCacheRequestRequestTypeDef(BaseModel): + ApiId: str + StageName: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Optional[Mapping[str, str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateApiMappingRequestRequestTypeDef(BaseModel): + ApiId: str + ApiMappingId: str + DomainName: str + ApiMappingKey: Optional[str] = None + Stage: Optional[str] = None + +class UpdateDeploymentRequestRequestTypeDef(BaseModel): + ApiId: str + DeploymentId: str + Description: Optional[str] = None + +class UpdateIntegrationResponseRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + IntegrationResponseId: str + ContentHandlingStrategy: Optional[ContentHandlingStrategyType] = None + IntegrationResponseKey: Optional[str] = None + ResponseParameters: Optional[Mapping[str, str]] = None + ResponseTemplates: Optional[Mapping[str, str]] = None + TemplateSelectionExpression: Optional[str] = None + +class UpdateModelRequestRequestTypeDef(BaseModel): + ApiId: str + ModelId: str + ContentType: Optional[str] = None + Description: Optional[str] = None + Name: Optional[str] = None + Schema: Optional[str] = None + +class UpdateVpcLinkRequestRequestTypeDef(BaseModel): + VpcLinkId: str + Name: Optional[str] = None + +class ApiPaginatorTypeDef(BaseModel): + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + ApiEndpoint: Optional[str] = None + ApiGatewayManaged: Optional[bool] = None + ApiId: Optional[str] = None + ApiKeySelectionExpression: Optional[str] = None + CorsConfiguration: Optional[CorsPaginatorTypeDef] = None + CreatedDate: Optional[datetime] = None + Description: Optional[str] = None + DisableSchemaValidation: Optional[bool] = None + DisableExecuteApiEndpoint: Optional[bool] = None + ImportInfo: Optional[List[str]] = None + Tags: Optional[Dict[str, str]] = None + Version: Optional[str] = None + Warnings: Optional[List[str]] = None + +class ApiTypeDef(BaseModel): + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + ApiEndpoint: Optional[str] = None + ApiGatewayManaged: Optional[bool] = None + ApiId: Optional[str] = None + ApiKeySelectionExpression: Optional[str] = None + CorsConfiguration: Optional[CorsTypeDef] = None + CreatedDate: Optional[datetime] = None + Description: Optional[str] = None + DisableSchemaValidation: Optional[bool] = None + DisableExecuteApiEndpoint: Optional[bool] = None + ImportInfo: Optional[List[str]] = None + Tags: Optional[Dict[str, str]] = None + Version: Optional[str] = None + Warnings: Optional[List[str]] = None + +class CreateApiRequestRequestTypeDef(BaseModel): + Name: str + ProtocolType: ProtocolTypeType + ApiKeySelectionExpression: Optional[str] = None + CorsConfiguration: Optional[CorsTypeDef] = None + CredentialsArn: Optional[str] = None + Description: Optional[str] = None + DisableSchemaValidation: Optional[bool] = None + DisableExecuteApiEndpoint: Optional[bool] = None + RouteKey: Optional[str] = None + RouteSelectionExpression: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + Target: Optional[str] = None + Version: Optional[str] = None + +class UpdateApiRequestRequestTypeDef(BaseModel): + ApiId: str + ApiKeySelectionExpression: Optional[str] = None + CorsConfiguration: Optional[CorsTypeDef] = None + CredentialsArn: Optional[str] = None + Description: Optional[str] = None + DisableSchemaValidation: Optional[bool] = None + DisableExecuteApiEndpoint: Optional[bool] = None + Name: Optional[str] = None + RouteKey: Optional[str] = None + RouteSelectionExpression: Optional[str] = None + Target: Optional[str] = None + Version: Optional[str] = None + +class AuthorizerPaginatorTypeDef(BaseModel): + Name: str + AuthorizerCredentialsArn: Optional[str] = None + AuthorizerId: Optional[str] = None + AuthorizerPayloadFormatVersion: Optional[str] = None + AuthorizerResultTtlInSeconds: Optional[int] = None + AuthorizerType: Optional[AuthorizerTypeType] = None + AuthorizerUri: Optional[str] = None + EnableSimpleResponses: Optional[bool] = None + IdentitySource: Optional[List[str]] = None + IdentityValidationExpression: Optional[str] = None + JwtConfiguration: Optional[JWTConfigurationPaginatorTypeDef] = None + +class AuthorizerTypeDef(BaseModel): + Name: str + AuthorizerCredentialsArn: Optional[str] = None + AuthorizerId: Optional[str] = None + AuthorizerPayloadFormatVersion: Optional[str] = None + AuthorizerResultTtlInSeconds: Optional[int] = None + AuthorizerType: Optional[AuthorizerTypeType] = None + AuthorizerUri: Optional[str] = None + EnableSimpleResponses: Optional[bool] = None + IdentitySource: Optional[List[str]] = None + IdentityValidationExpression: Optional[str] = None + JwtConfiguration: Optional[JWTConfigurationTypeDef] = None + +class CreateAuthorizerRequestRequestTypeDef(BaseModel): + ApiId: str + AuthorizerType: AuthorizerTypeType + IdentitySource: Sequence[str] + Name: str + AuthorizerCredentialsArn: Optional[str] = None + AuthorizerPayloadFormatVersion: Optional[str] = None + AuthorizerResultTtlInSeconds: Optional[int] = None + AuthorizerUri: Optional[str] = None + EnableSimpleResponses: Optional[bool] = None + IdentityValidationExpression: Optional[str] = None + JwtConfiguration: Optional[JWTConfigurationTypeDef] = None + +class UpdateAuthorizerRequestRequestTypeDef(BaseModel): + ApiId: str + AuthorizerId: str + AuthorizerCredentialsArn: Optional[str] = None + AuthorizerPayloadFormatVersion: Optional[str] = None + AuthorizerResultTtlInSeconds: Optional[int] = None + AuthorizerType: Optional[AuthorizerTypeType] = None + AuthorizerUri: Optional[str] = None + EnableSimpleResponses: Optional[bool] = None + IdentitySource: Optional[Sequence[str]] = None + IdentityValidationExpression: Optional[str] = None + JwtConfiguration: Optional[JWTConfigurationTypeDef] = None + Name: Optional[str] = None + +class CreateApiMappingResponseTypeDef(BaseModel): + ApiId: str + ApiMappingId: str + ApiMappingKey: str + Stage: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApiResponseTypeDef(BaseModel): + ApiEndpoint: str + ApiGatewayManaged: bool + ApiId: str + ApiKeySelectionExpression: str + CorsConfiguration: CorsTypeDef + CreatedDate: datetime + Description: str + DisableSchemaValidation: bool + DisableExecuteApiEndpoint: bool + ImportInfo: List[str] + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + Tags: Dict[str, str] + Version: str + Warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAuthorizerResponseTypeDef(BaseModel): + AuthorizerCredentialsArn: str + AuthorizerId: str + AuthorizerPayloadFormatVersion: str + AuthorizerResultTtlInSeconds: int + AuthorizerType: AuthorizerTypeType + AuthorizerUri: str + EnableSimpleResponses: bool + IdentitySource: List[str] + IdentityValidationExpression: str + JwtConfiguration: JWTConfigurationTypeDef + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentResponseTypeDef(BaseModel): + AutoDeployed: bool + CreatedDate: datetime + DeploymentId: str + DeploymentStatus: DeploymentStatusType + DeploymentStatusMessage: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIntegrationResponseResponseTypeDef(BaseModel): + ContentHandlingStrategy: ContentHandlingStrategyType + IntegrationResponseId: str + IntegrationResponseKey: str + ResponseParameters: Dict[str, str] + ResponseTemplates: Dict[str, str] + TemplateSelectionExpression: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelResponseTypeDef(BaseModel): + ContentType: str + Description: str + ModelId: str + Name: str + Schema: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcLinkResponseTypeDef(BaseModel): + CreatedDate: datetime + Name: str + SecurityGroupIds: List[str] + SubnetIds: List[str] + Tags: Dict[str, str] + VpcLinkId: str + VpcLinkStatus: VpcLinkStatusType + VpcLinkStatusMessage: str + VpcLinkVersion: Literal["V2"] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportApiResponseTypeDef(BaseModel): + body: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetApiMappingResponseTypeDef(BaseModel): + ApiId: str + ApiMappingId: str + ApiMappingKey: str + Stage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApiMappingsResponseTypeDef(BaseModel): + Items: List[ApiMappingTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApiResponseTypeDef(BaseModel): + ApiEndpoint: str + ApiGatewayManaged: bool + ApiId: str + ApiKeySelectionExpression: str + CorsConfiguration: CorsTypeDef + CreatedDate: datetime + Description: str + DisableSchemaValidation: bool + DisableExecuteApiEndpoint: bool + ImportInfo: List[str] + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + Tags: Dict[str, str] + Version: str + Warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetAuthorizerResponseTypeDef(BaseModel): + AuthorizerCredentialsArn: str + AuthorizerId: str + AuthorizerPayloadFormatVersion: str + AuthorizerResultTtlInSeconds: int + AuthorizerType: AuthorizerTypeType + AuthorizerUri: str + EnableSimpleResponses: bool + IdentitySource: List[str] + IdentityValidationExpression: str + JwtConfiguration: JWTConfigurationTypeDef + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentResponseTypeDef(BaseModel): + AutoDeployed: bool + CreatedDate: datetime + DeploymentId: str + DeploymentStatus: DeploymentStatusType + DeploymentStatusMessage: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntegrationResponseResponseTypeDef(BaseModel): + ContentHandlingStrategy: ContentHandlingStrategyType + IntegrationResponseId: str + IntegrationResponseKey: str + ResponseParameters: Dict[str, str] + ResponseTemplates: Dict[str, str] + TemplateSelectionExpression: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelResponseTypeDef(BaseModel): + ContentType: str + Description: str + ModelId: str + Name: str + Schema: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelTemplateResponseTypeDef(BaseModel): + Value: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTagsResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetVpcLinkResponseTypeDef(BaseModel): + CreatedDate: datetime + Name: str + SecurityGroupIds: List[str] + SubnetIds: List[str] + Tags: Dict[str, str] + VpcLinkId: str + VpcLinkStatus: VpcLinkStatusType + VpcLinkStatusMessage: str + VpcLinkVersion: Literal["V2"] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportApiResponseTypeDef(BaseModel): + ApiEndpoint: str + ApiGatewayManaged: bool + ApiId: str + ApiKeySelectionExpression: str + CorsConfiguration: CorsTypeDef + CreatedDate: datetime + Description: str + DisableSchemaValidation: bool + DisableExecuteApiEndpoint: bool + ImportInfo: List[str] + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + Tags: Dict[str, str] + Version: str + Warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ReimportApiResponseTypeDef(BaseModel): + ApiEndpoint: str + ApiGatewayManaged: bool + ApiId: str + ApiKeySelectionExpression: str + CorsConfiguration: CorsTypeDef + CreatedDate: datetime + Description: str + DisableSchemaValidation: bool + DisableExecuteApiEndpoint: bool + ImportInfo: List[str] + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + Tags: Dict[str, str] + Version: str + Warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApiMappingResponseTypeDef(BaseModel): + ApiId: str + ApiMappingId: str + ApiMappingKey: str + Stage: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApiResponseTypeDef(BaseModel): + ApiEndpoint: str + ApiGatewayManaged: bool + ApiId: str + ApiKeySelectionExpression: str + CorsConfiguration: CorsTypeDef + CreatedDate: datetime + Description: str + DisableSchemaValidation: bool + DisableExecuteApiEndpoint: bool + ImportInfo: List[str] + Name: str + ProtocolType: ProtocolTypeType + RouteSelectionExpression: str + Tags: Dict[str, str] + Version: str + Warnings: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAuthorizerResponseTypeDef(BaseModel): + AuthorizerCredentialsArn: str + AuthorizerId: str + AuthorizerPayloadFormatVersion: str + AuthorizerResultTtlInSeconds: int + AuthorizerType: AuthorizerTypeType + AuthorizerUri: str + EnableSimpleResponses: bool + IdentitySource: List[str] + IdentityValidationExpression: str + JwtConfiguration: JWTConfigurationTypeDef + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDeploymentResponseTypeDef(BaseModel): + AutoDeployed: bool + CreatedDate: datetime + DeploymentId: str + DeploymentStatus: DeploymentStatusType + DeploymentStatusMessage: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIntegrationResponseResponseTypeDef(BaseModel): + ContentHandlingStrategy: ContentHandlingStrategyType + IntegrationResponseId: str + IntegrationResponseKey: str + ResponseParameters: Dict[str, str] + ResponseTemplates: Dict[str, str] + TemplateSelectionExpression: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelResponseTypeDef(BaseModel): + ContentType: str + Description: str + ModelId: str + Name: str + Schema: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVpcLinkResponseTypeDef(BaseModel): + CreatedDate: datetime + Name: str + SecurityGroupIds: List[str] + SubnetIds: List[str] + Tags: Dict[str, str] + VpcLinkId: str + VpcLinkStatus: VpcLinkStatusType + VpcLinkStatusMessage: str + VpcLinkVersion: Literal["V2"] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIntegrationRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationType: IntegrationTypeType + ConnectionId: Optional[str] = None + ConnectionType: Optional[ConnectionTypeType] = None + ContentHandlingStrategy: Optional[ContentHandlingStrategyType] = None + CredentialsArn: Optional[str] = None + Description: Optional[str] = None + IntegrationMethod: Optional[str] = None + IntegrationSubtype: Optional[str] = None + IntegrationUri: Optional[str] = None + PassthroughBehavior: Optional[PassthroughBehaviorType] = None + PayloadFormatVersion: Optional[str] = None + RequestParameters: Optional[Mapping[str, str]] = None + RequestTemplates: Optional[Mapping[str, str]] = None + ResponseParameters: Optional[Mapping[str, Mapping[str, str]]] = None + TemplateSelectionExpression: Optional[str] = None + TimeoutInMillis: Optional[int] = None + TlsConfig: Optional[TlsConfigInputTypeDef] = None + +class UpdateIntegrationRequestRequestTypeDef(BaseModel): + ApiId: str + IntegrationId: str + ConnectionId: Optional[str] = None + ConnectionType: Optional[ConnectionTypeType] = None + ContentHandlingStrategy: Optional[ContentHandlingStrategyType] = None + CredentialsArn: Optional[str] = None + Description: Optional[str] = None + IntegrationMethod: Optional[str] = None + IntegrationSubtype: Optional[str] = None + IntegrationType: Optional[IntegrationTypeType] = None + IntegrationUri: Optional[str] = None + PassthroughBehavior: Optional[PassthroughBehaviorType] = None + PayloadFormatVersion: Optional[str] = None + RequestParameters: Optional[Mapping[str, str]] = None + RequestTemplates: Optional[Mapping[str, str]] = None + ResponseParameters: Optional[Mapping[str, Mapping[str, str]]] = None + TemplateSelectionExpression: Optional[str] = None + TimeoutInMillis: Optional[int] = None + TlsConfig: Optional[TlsConfigInputTypeDef] = None + +class CreateIntegrationResultTypeDef(BaseModel): + ApiGatewayManaged: bool + ConnectionId: str + ConnectionType: ConnectionTypeType + ContentHandlingStrategy: ContentHandlingStrategyType + CredentialsArn: str + Description: str + IntegrationId: str + IntegrationMethod: str + IntegrationResponseSelectionExpression: str + IntegrationSubtype: str + IntegrationType: IntegrationTypeType + IntegrationUri: str + PassthroughBehavior: PassthroughBehaviorType + PayloadFormatVersion: str + RequestParameters: Dict[str, str] + RequestTemplates: Dict[str, str] + ResponseParameters: Dict[str, Dict[str, str]] + TemplateSelectionExpression: str + TimeoutInMillis: int + TlsConfig: TlsConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntegrationResultTypeDef(BaseModel): + ApiGatewayManaged: bool + ConnectionId: str + ConnectionType: ConnectionTypeType + ContentHandlingStrategy: ContentHandlingStrategyType + CredentialsArn: str + Description: str + IntegrationId: str + IntegrationMethod: str + IntegrationResponseSelectionExpression: str + IntegrationSubtype: str + IntegrationType: IntegrationTypeType + IntegrationUri: str + PassthroughBehavior: PassthroughBehaviorType + PayloadFormatVersion: str + RequestParameters: Dict[str, str] + RequestTemplates: Dict[str, str] + ResponseParameters: Dict[str, Dict[str, str]] + TemplateSelectionExpression: str + TimeoutInMillis: int + TlsConfig: TlsConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IntegrationTypeDef(BaseModel): + ApiGatewayManaged: Optional[bool] = None + ConnectionId: Optional[str] = None + ConnectionType: Optional[ConnectionTypeType] = None + ContentHandlingStrategy: Optional[ContentHandlingStrategyType] = None + CredentialsArn: Optional[str] = None + Description: Optional[str] = None + IntegrationId: Optional[str] = None + IntegrationMethod: Optional[str] = None + IntegrationResponseSelectionExpression: Optional[str] = None + IntegrationSubtype: Optional[str] = None + IntegrationType: Optional[IntegrationTypeType] = None + IntegrationUri: Optional[str] = None + PassthroughBehavior: Optional[PassthroughBehaviorType] = None + PayloadFormatVersion: Optional[str] = None + RequestParameters: Optional[Dict[str, str]] = None + RequestTemplates: Optional[Dict[str, str]] = None + ResponseParameters: Optional[Dict[str, Dict[str, str]]] = None + TemplateSelectionExpression: Optional[str] = None + TimeoutInMillis: Optional[int] = None + TlsConfig: Optional[TlsConfigTypeDef] = None + +class UpdateIntegrationResultTypeDef(BaseModel): + ApiGatewayManaged: bool + ConnectionId: str + ConnectionType: ConnectionTypeType + ContentHandlingStrategy: ContentHandlingStrategyType + CredentialsArn: str + Description: str + IntegrationId: str + IntegrationMethod: str + IntegrationResponseSelectionExpression: str + IntegrationSubtype: str + IntegrationType: IntegrationTypeType + IntegrationUri: str + PassthroughBehavior: PassthroughBehaviorType + PayloadFormatVersion: str + RequestParameters: Dict[str, str] + RequestTemplates: Dict[str, str] + ResponseParameters: Dict[str, Dict[str, str]] + TemplateSelectionExpression: str + TimeoutInMillis: int + TlsConfig: TlsConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRouteRequestRequestTypeDef(BaseModel): + ApiId: str + RouteKey: str + ApiKeyRequired: Optional[bool] = None + AuthorizationScopes: Optional[Sequence[str]] = None + AuthorizationType: Optional[AuthorizationTypeType] = None + AuthorizerId: Optional[str] = None + ModelSelectionExpression: Optional[str] = None + OperationName: Optional[str] = None + RequestModels: Optional[Mapping[str, str]] = None + RequestParameters: Optional[Mapping[str, ParameterConstraintsTypeDef]] = None + RouteResponseSelectionExpression: Optional[str] = None + Target: Optional[str] = None + +class CreateRouteResponseRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + RouteResponseKey: str + ModelSelectionExpression: Optional[str] = None + ResponseModels: Optional[Mapping[str, str]] = None + ResponseParameters: Optional[Mapping[str, ParameterConstraintsTypeDef]] = None + +class CreateRouteResponseResponseTypeDef(BaseModel): + ModelSelectionExpression: str + ResponseModels: Dict[str, str] + ResponseParameters: Dict[str, ParameterConstraintsTypeDef] + RouteResponseId: str + RouteResponseKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRouteResultTypeDef(BaseModel): + ApiGatewayManaged: bool + ApiKeyRequired: bool + AuthorizationScopes: List[str] + AuthorizationType: AuthorizationTypeType + AuthorizerId: str + ModelSelectionExpression: str + OperationName: str + RequestModels: Dict[str, str] + RequestParameters: Dict[str, ParameterConstraintsTypeDef] + RouteId: str + RouteKey: str + RouteResponseSelectionExpression: str + Target: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRouteResponseResponseTypeDef(BaseModel): + ModelSelectionExpression: str + ResponseModels: Dict[str, str] + ResponseParameters: Dict[str, ParameterConstraintsTypeDef] + RouteResponseId: str + RouteResponseKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRouteResultTypeDef(BaseModel): + ApiGatewayManaged: bool + ApiKeyRequired: bool + AuthorizationScopes: List[str] + AuthorizationType: AuthorizationTypeType + AuthorizerId: str + ModelSelectionExpression: str + OperationName: str + RequestModels: Dict[str, str] + RequestParameters: Dict[str, ParameterConstraintsTypeDef] + RouteId: str + RouteKey: str + RouteResponseSelectionExpression: str + Target: str + ResponseMetadata: ResponseMetadataTypeDef + +class RouteResponseTypeDef(BaseModel): + RouteResponseKey: str + ModelSelectionExpression: Optional[str] = None + ResponseModels: Optional[Dict[str, str]] = None + ResponseParameters: Optional[Dict[str, ParameterConstraintsTypeDef]] = None + RouteResponseId: Optional[str] = None + +class RouteTypeDef(BaseModel): + RouteKey: str + ApiGatewayManaged: Optional[bool] = None + ApiKeyRequired: Optional[bool] = None + AuthorizationScopes: Optional[List[str]] = None + AuthorizationType: Optional[AuthorizationTypeType] = None + AuthorizerId: Optional[str] = None + ModelSelectionExpression: Optional[str] = None + OperationName: Optional[str] = None + RequestModels: Optional[Dict[str, str]] = None + RequestParameters: Optional[Dict[str, ParameterConstraintsTypeDef]] = None + RouteId: Optional[str] = None + RouteResponseSelectionExpression: Optional[str] = None + Target: Optional[str] = None + +class UpdateRouteRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + ApiKeyRequired: Optional[bool] = None + AuthorizationScopes: Optional[Sequence[str]] = None + AuthorizationType: Optional[AuthorizationTypeType] = None + AuthorizerId: Optional[str] = None + ModelSelectionExpression: Optional[str] = None + OperationName: Optional[str] = None + RequestModels: Optional[Mapping[str, str]] = None + RequestParameters: Optional[Mapping[str, ParameterConstraintsTypeDef]] = None + RouteKey: Optional[str] = None + RouteResponseSelectionExpression: Optional[str] = None + Target: Optional[str] = None + +class UpdateRouteResponseRequestRequestTypeDef(BaseModel): + ApiId: str + RouteId: str + RouteResponseId: str + ModelSelectionExpression: Optional[str] = None + ResponseModels: Optional[Mapping[str, str]] = None + ResponseParameters: Optional[Mapping[str, ParameterConstraintsTypeDef]] = None + RouteResponseKey: Optional[str] = None + +class UpdateRouteResponseResponseTypeDef(BaseModel): + ModelSelectionExpression: str + ResponseModels: Dict[str, str] + ResponseParameters: Dict[str, ParameterConstraintsTypeDef] + RouteResponseId: str + RouteResponseKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRouteResultTypeDef(BaseModel): + ApiGatewayManaged: bool + ApiKeyRequired: bool + AuthorizationScopes: List[str] + AuthorizationType: AuthorizationTypeType + AuthorizerId: str + ModelSelectionExpression: str + OperationName: str + RequestModels: Dict[str, str] + RequestParameters: Dict[str, ParameterConstraintsTypeDef] + RouteId: str + RouteKey: str + RouteResponseSelectionExpression: str + Target: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStageRequestRequestTypeDef(BaseModel): + ApiId: str + StageName: str + AccessLogSettings: Optional[AccessLogSettingsTypeDef] = None + AutoDeploy: Optional[bool] = None + ClientCertificateId: Optional[str] = None + DefaultRouteSettings: Optional[RouteSettingsTypeDef] = None + DeploymentId: Optional[str] = None + Description: Optional[str] = None + RouteSettings: Optional[Mapping[str, RouteSettingsTypeDef]] = None + StageVariables: Optional[Mapping[str, str]] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateStageResponseTypeDef(BaseModel): + AccessLogSettings: AccessLogSettingsTypeDef + ApiGatewayManaged: bool + AutoDeploy: bool + ClientCertificateId: str + CreatedDate: datetime + DefaultRouteSettings: RouteSettingsTypeDef + DeploymentId: str + Description: str + LastDeploymentStatusMessage: str + LastUpdatedDate: datetime + RouteSettings: Dict[str, RouteSettingsTypeDef] + StageName: str + StageVariables: Dict[str, str] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetStageResponseTypeDef(BaseModel): + AccessLogSettings: AccessLogSettingsTypeDef + ApiGatewayManaged: bool + AutoDeploy: bool + ClientCertificateId: str + CreatedDate: datetime + DefaultRouteSettings: RouteSettingsTypeDef + DeploymentId: str + Description: str + LastDeploymentStatusMessage: str + LastUpdatedDate: datetime + RouteSettings: Dict[str, RouteSettingsTypeDef] + StageName: str + StageVariables: Dict[str, str] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StageTypeDef(BaseModel): + StageName: str + AccessLogSettings: Optional[AccessLogSettingsTypeDef] = None + ApiGatewayManaged: Optional[bool] = None + AutoDeploy: Optional[bool] = None + ClientCertificateId: Optional[str] = None + CreatedDate: Optional[datetime] = None + DefaultRouteSettings: Optional[RouteSettingsTypeDef] = None + DeploymentId: Optional[str] = None + Description: Optional[str] = None + LastDeploymentStatusMessage: Optional[str] = None + LastUpdatedDate: Optional[datetime] = None + RouteSettings: Optional[Dict[str, RouteSettingsTypeDef]] = None + StageVariables: Optional[Dict[str, str]] = None + Tags: Optional[Dict[str, str]] = None + +class UpdateStageRequestRequestTypeDef(BaseModel): + ApiId: str + StageName: str + AccessLogSettings: Optional[AccessLogSettingsTypeDef] = None + AutoDeploy: Optional[bool] = None + ClientCertificateId: Optional[str] = None + DefaultRouteSettings: Optional[RouteSettingsTypeDef] = None + DeploymentId: Optional[str] = None + Description: Optional[str] = None + RouteSettings: Optional[Mapping[str, RouteSettingsTypeDef]] = None + StageVariables: Optional[Mapping[str, str]] = None + +class UpdateStageResponseTypeDef(BaseModel): + AccessLogSettings: AccessLogSettingsTypeDef + ApiGatewayManaged: bool + AutoDeploy: bool + ClientCertificateId: str + CreatedDate: datetime + DefaultRouteSettings: RouteSettingsTypeDef + DeploymentId: str + Description: str + LastDeploymentStatusMessage: str + LastUpdatedDate: datetime + RouteSettings: Dict[str, RouteSettingsTypeDef] + StageName: str + StageVariables: Dict[str, str] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentsResponseTypeDef(BaseModel): + Items: List[DeploymentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DomainNamePaginatorTypeDef(BaseModel): + DomainName: str + ApiMappingSelectionExpression: Optional[str] = None + DomainNameConfigurations: Optional[List[DomainNameConfigurationPaginatorTypeDef]] = None + MutualTlsAuthentication: Optional[MutualTlsAuthenticationTypeDef] = None + Tags: Optional[Dict[str, str]] = None + +class DomainNameConfigurationTypeDef(BaseModel): + ApiGatewayDomainName: Optional[str] = None + CertificateArn: Optional[str] = None + CertificateName: Optional[str] = None + CertificateUploadDate: Optional[TimestampTypeDef] = None + DomainNameStatus: Optional[DomainNameStatusType] = None + DomainNameStatusMessage: Optional[str] = None + EndpointType: Optional[EndpointTypeType] = None + HostedZoneId: Optional[str] = None + SecurityPolicy: Optional[SecurityPolicyType] = None + OwnershipVerificationCertificateArn: Optional[str] = None + +class GetApisRequestGetApisPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAuthorizersRequestGetAuthorizersPaginateTypeDef(BaseModel): + ApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDeploymentsRequestGetDeploymentsPaginateTypeDef(BaseModel): + ApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDomainNamesRequestGetDomainNamesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIntegrationResponsesRequestGetIntegrationResponsesPaginateTypeDef(BaseModel): + ApiId: str + IntegrationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIntegrationsRequestGetIntegrationsPaginateTypeDef(BaseModel): + ApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetModelsRequestGetModelsPaginateTypeDef(BaseModel): + ApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRouteResponsesRequestGetRouteResponsesPaginateTypeDef(BaseModel): + ApiId: str + RouteId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRoutesRequestGetRoutesPaginateTypeDef(BaseModel): + ApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetStagesRequestGetStagesPaginateTypeDef(BaseModel): + ApiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIntegrationResponsesResponseTypeDef(BaseModel): + Items: List[IntegrationResponseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelsResponseTypeDef(BaseModel): + Items: List[ModelTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVpcLinksResponseTypeDef(BaseModel): + Items: List[VpcLinkTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApisResponsePaginatorTypeDef(BaseModel): + Items: List[ApiPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApisResponseTypeDef(BaseModel): + Items: List[ApiTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAuthorizersResponsePaginatorTypeDef(BaseModel): + Items: List[AuthorizerPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAuthorizersResponseTypeDef(BaseModel): + Items: List[AuthorizerTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntegrationsResponseTypeDef(BaseModel): + Items: List[IntegrationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRouteResponsesResponseTypeDef(BaseModel): + Items: List[RouteResponseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRoutesResponseTypeDef(BaseModel): + Items: List[RouteTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetStagesResponseTypeDef(BaseModel): + Items: List[StageTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainNamesResponsePaginatorTypeDef(BaseModel): + Items: List[DomainNamePaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainNameRequestRequestTypeDef(BaseModel): + DomainName: str + DomainNameConfigurations: Optional[Sequence[DomainNameConfigurationTypeDef]] = None + MutualTlsAuthentication: Optional[MutualTlsAuthenticationInputTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateDomainNameResponseTypeDef(BaseModel): + ApiMappingSelectionExpression: str + DomainName: str + DomainNameConfigurations: List[DomainNameConfigurationTypeDef] + MutualTlsAuthentication: MutualTlsAuthenticationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DomainNameTypeDef(BaseModel): + DomainName: str + ApiMappingSelectionExpression: Optional[str] = None + DomainNameConfigurations: Optional[List[DomainNameConfigurationTypeDef]] = None + MutualTlsAuthentication: Optional[MutualTlsAuthenticationTypeDef] = None + Tags: Optional[Dict[str, str]] = None + +class GetDomainNameResponseTypeDef(BaseModel): + ApiMappingSelectionExpression: str + DomainName: str + DomainNameConfigurations: List[DomainNameConfigurationTypeDef] + MutualTlsAuthentication: MutualTlsAuthenticationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainNameRequestRequestTypeDef(BaseModel): + DomainName: str + DomainNameConfigurations: Optional[Sequence[DomainNameConfigurationTypeDef]] = None + MutualTlsAuthentication: Optional[MutualTlsAuthenticationInputTypeDef] = None + +class UpdateDomainNameResponseTypeDef(BaseModel): + ApiMappingSelectionExpression: str + DomainName: str + DomainNameConfigurations: List[DomainNameConfigurationTypeDef] + MutualTlsAuthentication: MutualTlsAuthenticationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainNamesResponseTypeDef(BaseModel): + Items: List[DomainNameTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/apigatewayv2_constants.py b/aws_resource_validator/pydantic_models/apigatewayv2_constants.py new file mode 100644 index 00000000..f86034fc --- /dev/null +++ b/aws_resource_validator/pydantic_models/apigatewayv2_constants.py @@ -0,0 +1,453 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthorizationTypeType = Literal["AWS_IAM", "CUSTOM", "JWT", "NONE"] +AuthorizerTypeType = Literal["JWT", "REQUEST"] +ConnectionTypeType = Literal["INTERNET", "VPC_LINK"] +ContentHandlingStrategyType = Literal["CONVERT_TO_BINARY", "CONVERT_TO_TEXT"] +DeploymentStatusType = Literal["DEPLOYED", "FAILED", "PENDING"] +DomainNameStatusType = Literal["AVAILABLE", "PENDING_CERTIFICATE_REIMPORT", "PENDING_OWNERSHIP_VERIFICATION", "UPDATING"] +EndpointTypeType = Literal["EDGE", "REGIONAL"] +GetApisPaginatorName = Literal["get_apis"] +GetAuthorizersPaginatorName = Literal["get_authorizers"] +GetDeploymentsPaginatorName = Literal["get_deployments"] +GetDomainNamesPaginatorName = Literal["get_domain_names"] +GetIntegrationResponsesPaginatorName = Literal["get_integration_responses"] +GetIntegrationsPaginatorName = Literal["get_integrations"] +GetModelsPaginatorName = Literal["get_models"] +GetRouteResponsesPaginatorName = Literal["get_route_responses"] +GetRoutesPaginatorName = Literal["get_routes"] +GetStagesPaginatorName = Literal["get_stages"] +IntegrationTypeType = Literal["AWS", "AWS_PROXY", "HTTP", "HTTP_PROXY", "MOCK"] +JSONYAMLType = Literal["JSON", "YAML"] +LoggingLevelType = Literal["ERROR", "INFO", "OFF"] +OAS30Type = Literal["OAS30"] +PassthroughBehaviorType = Literal["NEVER", "WHEN_NO_MATCH", "WHEN_NO_TEMPLATES"] +ProtocolTypeType = Literal["HTTP", "WEBSOCKET"] +SecurityPolicyType = Literal["TLS_1_0", "TLS_1_2"] +VpcLinkStatusType = Literal["AVAILABLE", "DELETING", "FAILED", "INACTIVE", "PENDING"] +VpcLinkVersionType = Literal["V2"] +ApiGatewayV2ServiceName = Literal["apigatewayv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_apis", + "get_authorizers", + "get_deployments", + "get_domain_names", + "get_integration_responses", + "get_integrations", + "get_models", + "get_route_responses", + "get_routes", + "get_stages",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/appconfig_classes.py b/aws_resource_validator/pydantic_models/appconfig_classes.py new file mode 100644 index 00000000..a2714ca7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appconfig_classes.py @@ -0,0 +1,552 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appconfig_constants import * + +class ActionInvocationTypeDef(BaseModel): + ExtensionIdentifier: Optional[str] = None + ActionName: Optional[str] = None + Uri: Optional[str] = None + RoleArn: Optional[str] = None + ErrorMessage: Optional[str] = None + ErrorCode: Optional[str] = None + InvocationId: Optional[str] = None + +class ActionTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Uri: Optional[str] = None + RoleArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ApplicationTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + +class AppliedExtensionTypeDef(BaseModel): + ExtensionId: Optional[str] = None + ExtensionAssociationId: Optional[str] = None + VersionNumber: Optional[int] = None + Parameters: Optional[Dict[str, str]] = None + +class ConfigurationProfileSummaryTypeDef(BaseModel): + ApplicationId: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + LocationUri: Optional[str] = None + ValidatorTypes: Optional[List[ValidatorTypeType]] = None + Type: Optional[str] = None + +class ValidatorTypeDef(BaseModel): + Type: ValidatorTypeType + Content: str + +class CreateApplicationRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateDeploymentStrategyRequestRequestTypeDef(BaseModel): + Name: str + DeploymentDurationInMinutes: int + GrowthFactor: float + Description: Optional[str] = None + FinalBakeTimeInMinutes: Optional[int] = None + GrowthType: Optional[GrowthTypeType] = None + ReplicateTo: Optional[ReplicateToType] = None + Tags: Optional[Mapping[str, str]] = None + +class MonitorTypeDef(BaseModel): + AlarmArn: str + AlarmRoleArn: Optional[str] = None + +class CreateExtensionAssociationRequestRequestTypeDef(BaseModel): + ExtensionIdentifier: str + ResourceIdentifier: str + ExtensionVersionNumber: Optional[int] = None + Parameters: Optional[Mapping[str, str]] = None + Tags: Optional[Mapping[str, str]] = None + +class ParameterTypeDef(BaseModel): + Description: Optional[str] = None + Required: Optional[bool] = None + Dynamic: Optional[bool] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteConfigurationProfileRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + +class DeleteDeploymentStrategyRequestRequestTypeDef(BaseModel): + DeploymentStrategyId: str + +class DeleteEnvironmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + +class DeleteExtensionAssociationRequestRequestTypeDef(BaseModel): + ExtensionAssociationId: str + +class DeleteExtensionRequestRequestTypeDef(BaseModel): + ExtensionIdentifier: str + VersionNumber: Optional[int] = None + +class DeleteHostedConfigurationVersionRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + VersionNumber: int + +class DeploymentStrategyTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + DeploymentDurationInMinutes: Optional[int] = None + GrowthType: Optional[GrowthTypeType] = None + GrowthFactor: Optional[float] = None + FinalBakeTimeInMinutes: Optional[int] = None + ReplicateTo: Optional[ReplicateToType] = None + +class DeploymentSummaryTypeDef(BaseModel): + DeploymentNumber: Optional[int] = None + ConfigurationName: Optional[str] = None + ConfigurationVersion: Optional[str] = None + DeploymentDurationInMinutes: Optional[int] = None + GrowthType: Optional[GrowthTypeType] = None + GrowthFactor: Optional[float] = None + FinalBakeTimeInMinutes: Optional[int] = None + State: Optional[DeploymentStateType] = None + PercentageComplete: Optional[float] = None + StartedAt: Optional[datetime] = None + CompletedAt: Optional[datetime] = None + VersionLabel: Optional[str] = None + +class ExtensionAssociationSummaryTypeDef(BaseModel): + Id: Optional[str] = None + ExtensionArn: Optional[str] = None + ResourceArn: Optional[str] = None + +class ExtensionSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + VersionNumber: Optional[int] = None + Arn: Optional[str] = None + Description: Optional[str] = None + +class GetApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetConfigurationProfileRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + +class GetConfigurationRequestRequestTypeDef(BaseModel): + Application: str + Environment: str + Configuration: str + ClientId: str + ClientConfigurationVersion: Optional[str] = None + +class GetDeploymentRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + DeploymentNumber: int + +class GetDeploymentStrategyRequestRequestTypeDef(BaseModel): + DeploymentStrategyId: str + +class GetEnvironmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + +class GetExtensionAssociationRequestRequestTypeDef(BaseModel): + ExtensionAssociationId: str + +class GetExtensionRequestRequestTypeDef(BaseModel): + ExtensionIdentifier: str + VersionNumber: Optional[int] = None + +class GetHostedConfigurationVersionRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + VersionNumber: int + +class HostedConfigurationVersionSummaryTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ConfigurationProfileId: Optional[str] = None + VersionNumber: Optional[int] = None + Description: Optional[str] = None + ContentType: Optional[str] = None + VersionLabel: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConfigurationProfilesRequestRequestTypeDef(BaseModel): + ApplicationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Type: Optional[str] = None + +class ListDeploymentStrategiesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDeploymentsRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEnvironmentsRequestRequestTypeDef(BaseModel): + ApplicationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListExtensionAssociationsRequestRequestTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + ExtensionIdentifier: Optional[str] = None + ExtensionVersionNumber: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListExtensionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Name: Optional[str] = None + +class ListHostedConfigurationVersionsRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + VersionLabel: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class StartDeploymentRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + DeploymentStrategyId: str + ConfigurationProfileId: str + ConfigurationVersion: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + KmsKeyIdentifier: Optional[str] = None + DynamicExtensionParameters: Optional[Mapping[str, str]] = None + +class StopDeploymentRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + DeploymentNumber: int + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateDeploymentStrategyRequestRequestTypeDef(BaseModel): + DeploymentStrategyId: str + Description: Optional[str] = None + DeploymentDurationInMinutes: Optional[int] = None + FinalBakeTimeInMinutes: Optional[int] = None + GrowthFactor: Optional[float] = None + GrowthType: Optional[GrowthTypeType] = None + +class UpdateExtensionAssociationRequestRequestTypeDef(BaseModel): + ExtensionAssociationId: str + Parameters: Optional[Mapping[str, str]] = None + +class ValidateConfigurationRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + ConfigurationVersion: str + +class DeploymentEventTypeDef(BaseModel): + EventType: Optional[DeploymentEventTypeType] = None + TriggeredBy: Optional[TriggeredByType] = None + Description: Optional[str] = None + ActionInvocations: Optional[List[ActionInvocationTypeDef]] = None + OccurredAt: Optional[datetime] = None + +class ApplicationResponseTypeDef(BaseModel): + Id: str + Name: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationTypeDef(BaseModel): + Content: StreamingBody + ConfigurationVersion: str + ContentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentStrategyResponseTypeDef(BaseModel): + Id: str + Name: str + Description: str + DeploymentDurationInMinutes: int + GrowthType: GrowthTypeType + GrowthFactor: float + FinalBakeTimeInMinutes: int + ReplicateTo: ReplicateToType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExtensionAssociationTypeDef(BaseModel): + Id: str + ExtensionArn: str + ResourceArn: str + Arn: str + Parameters: Dict[str, str] + ExtensionVersionNumber: int + ResponseMetadata: ResponseMetadataTypeDef + +class HostedConfigurationVersionTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + VersionNumber: int + Description: str + Content: StreamingBody + ContentType: str + VersionLabel: str + KmsKeyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceTagsTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationsTypeDef(BaseModel): + Items: List[ApplicationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHostedConfigurationVersionRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + Content: BlobTypeDef + ContentType: str + Description: Optional[str] = None + LatestVersionNumber: Optional[int] = None + VersionLabel: Optional[str] = None + +class ConfigurationProfilesTypeDef(BaseModel): + Items: List[ConfigurationProfileSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationProfileTypeDef(BaseModel): + ApplicationId: str + Id: str + Name: str + Description: str + LocationUri: str + RetrievalRoleArn: str + Validators: List[ValidatorTypeDef] + Type: str + KmsKeyArn: str + KmsKeyIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationProfileRequestRequestTypeDef(BaseModel): + ApplicationId: str + Name: str + LocationUri: str + Description: Optional[str] = None + RetrievalRoleArn: Optional[str] = None + Validators: Optional[Sequence[ValidatorTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + Type: Optional[str] = None + KmsKeyIdentifier: Optional[str] = None + +class UpdateConfigurationProfileRequestRequestTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + Name: Optional[str] = None + Description: Optional[str] = None + RetrievalRoleArn: Optional[str] = None + Validators: Optional[Sequence[ValidatorTypeDef]] = None + KmsKeyIdentifier: Optional[str] = None + +class CreateEnvironmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + Name: str + Description: Optional[str] = None + Monitors: Optional[Sequence[MonitorTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + +class EnvironmentResponseTypeDef(BaseModel): + ApplicationId: str + Id: str + Name: str + Description: str + State: EnvironmentStateType + Monitors: List[MonitorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentTypeDef(BaseModel): + ApplicationId: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + State: Optional[EnvironmentStateType] = None + Monitors: Optional[List[MonitorTypeDef]] = None + +class UpdateEnvironmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + Name: Optional[str] = None + Description: Optional[str] = None + Monitors: Optional[Sequence[MonitorTypeDef]] = None + +class CreateExtensionRequestRequestTypeDef(BaseModel): + Name: str + Actions: Mapping[ActionPointType, Sequence[ActionTypeDef]] + Description: Optional[str] = None + Parameters: Optional[Mapping[str, ParameterTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + LatestVersionNumber: Optional[int] = None + +class ExtensionTypeDef(BaseModel): + Id: str + Name: str + VersionNumber: int + Arn: str + Description: str + Actions: Dict[ActionPointType, List[ActionTypeDef]] + Parameters: Dict[str, ParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExtensionRequestRequestTypeDef(BaseModel): + ExtensionIdentifier: str + Description: Optional[str] = None + Actions: Optional[Mapping[ActionPointType, Sequence[ActionTypeDef]]] = None + Parameters: Optional[Mapping[str, ParameterTypeDef]] = None + VersionNumber: Optional[int] = None + +class DeploymentStrategiesTypeDef(BaseModel): + Items: List[DeploymentStrategyTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentsTypeDef(BaseModel): + Items: List[DeploymentSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExtensionAssociationsTypeDef(BaseModel): + Items: List[ExtensionAssociationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExtensionsTypeDef(BaseModel): + Items: List[ExtensionSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class HostedConfigurationVersionsTypeDef(BaseModel): + Items: List[HostedConfigurationVersionSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationProfilesRequestListConfigurationProfilesPaginateTypeDef(BaseModel): + ApplicationId: str + Type: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentStrategiesRequestListDeploymentStrategiesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsRequestListDeploymentsPaginateTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsRequestListEnvironmentsPaginateTypeDef(BaseModel): + ApplicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExtensionAssociationsRequestListExtensionAssociationsPaginateTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + ExtensionIdentifier: Optional[str] = None + ExtensionVersionNumber: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExtensionsRequestListExtensionsPaginateTypeDef(BaseModel): + Name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHostedConfigurationVersionsRequestListHostedConfigurationVersionsPaginateTypeDef(BaseModel): + ApplicationId: str + ConfigurationProfileId: str + VersionLabel: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DeploymentTypeDef(BaseModel): + ApplicationId: str + EnvironmentId: str + DeploymentStrategyId: str + ConfigurationProfileId: str + DeploymentNumber: int + ConfigurationName: str + ConfigurationLocationUri: str + ConfigurationVersion: str + Description: str + DeploymentDurationInMinutes: int + GrowthType: GrowthTypeType + GrowthFactor: float + FinalBakeTimeInMinutes: int + State: DeploymentStateType + EventLog: List[DeploymentEventTypeDef] + PercentageComplete: float + StartedAt: datetime + CompletedAt: datetime + AppliedExtensions: List[AppliedExtensionTypeDef] + KmsKeyArn: str + KmsKeyIdentifier: str + VersionLabel: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentsTypeDef(BaseModel): + Items: List[EnvironmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appconfig_constants.py b/aws_resource_validator/pydantic_models/appconfig_constants.py new file mode 100644 index 00000000..6e14c31d --- /dev/null +++ b/aws_resource_validator/pydantic_models/appconfig_constants.py @@ -0,0 +1,458 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionPointType = Literal["ON_DEPLOYMENT_BAKING", + "ON_DEPLOYMENT_COMPLETE", + "ON_DEPLOYMENT_ROLLED_BACK", + "ON_DEPLOYMENT_START", + "ON_DEPLOYMENT_STEP", + "PRE_CREATE_HOSTED_CONFIGURATION_VERSION", + "PRE_START_DEPLOYMENT",] +DeploymentEventTypeType = Literal["BAKE_TIME_STARTED", + "DEPLOYMENT_COMPLETED", + "DEPLOYMENT_STARTED", + "PERCENTAGE_UPDATED", + "ROLLBACK_COMPLETED", + "ROLLBACK_STARTED",] +DeploymentStateType = Literal["BAKING", "COMPLETE", "DEPLOYING", "ROLLED_BACK", "ROLLING_BACK", "VALIDATING"] +EnvironmentStateType = Literal["DEPLOYING", "READY_FOR_DEPLOYMENT", "ROLLED_BACK", "ROLLING_BACK"] +GrowthTypeType = Literal["EXPONENTIAL", "LINEAR"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListConfigurationProfilesPaginatorName = Literal["list_configuration_profiles"] +ListDeploymentStrategiesPaginatorName = Literal["list_deployment_strategies"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +ListExtensionAssociationsPaginatorName = Literal["list_extension_associations"] +ListExtensionsPaginatorName = Literal["list_extensions"] +ListHostedConfigurationVersionsPaginatorName = Literal["list_hosted_configuration_versions"] +ReplicateToType = Literal["NONE", "SSM_DOCUMENT"] +TriggeredByType = Literal["APPCONFIG", "CLOUDWATCH_ALARM", "INTERNAL_ERROR", "USER"] +ValidatorTypeType = Literal["JSON_SCHEMA", "LAMBDA"] +AppConfigServiceName = Literal["appconfig"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applications", + "list_configuration_profiles", + "list_deployment_strategies", + "list_deployments", + "list_environments", + "list_extension_associations", + "list_extensions", + "list_hosted_configuration_versions",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/appconfigdata_classes.py b/aws_resource_validator/pydantic_models/appconfigdata_classes.py new file mode 100644 index 00000000..1924226d --- /dev/null +++ b/aws_resource_validator/pydantic_models/appconfigdata_classes.py @@ -0,0 +1,41 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appconfigdata_constants import * + +class GetLatestConfigurationRequestRequestTypeDef(BaseModel): + ConfigurationToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class StartConfigurationSessionRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + ConfigurationProfileIdentifier: str + RequiredMinimumPollIntervalInSeconds: Optional[int] = None + +class GetLatestConfigurationResponseTypeDef(BaseModel): + NextPollConfigurationToken: str + NextPollIntervalInSeconds: int + ContentType: str + Configuration: StreamingBody + VersionLabel: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartConfigurationSessionResponseTypeDef(BaseModel): + InitialConfigurationToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appconfigdata_constants.py b/aws_resource_validator/pydantic_models/appconfigdata_constants.py new file mode 100644 index 00000000..da22e93d --- /dev/null +++ b/aws_resource_validator/pydantic_models/appconfigdata_constants.py @@ -0,0 +1,420 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppConfigDataServiceName = Literal["appconfigdata"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/appfabric_classes.py b/aws_resource_validator/pydantic_models/appfabric_classes.py new file mode 100644 index 00000000..7ae9b606 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appfabric_classes.py @@ -0,0 +1,370 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appfabric_constants import * + +class ApiKeyCredentialTypeDef(BaseModel): + apiKey: str + +class TenantTypeDef(BaseModel): + tenantIdentifier: str + tenantDisplayName: str + +class AppBundleSummaryTypeDef(BaseModel): + arn: str + +class AppBundleTypeDef(BaseModel): + arn: str + customerManagedKeyArn: Optional[str] = None + +class AuditLogProcessingConfigurationTypeDef(BaseModel): + schema: SchemaType + format: FormatType + +class AuthRequestTypeDef(BaseModel): + redirectUri: str + code: str + +class BatchGetUserAccessTasksRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + taskIdList: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + key: str + value: str + +class IngestionTypeDef(BaseModel): + arn: str + appBundleArn: str + app: str + tenantId: str + createdAt: datetime + updatedAt: datetime + state: IngestionStateType + ingestionType: Literal["auditLog"] + +class Oauth2CredentialTypeDef(BaseModel): + clientId: str + clientSecret: str + +class DeleteAppAuthorizationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + appAuthorizationIdentifier: str + +class DeleteAppBundleRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + +class DeleteIngestionDestinationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + ingestionDestinationIdentifier: str + +class DeleteIngestionRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + +class FirehoseStreamTypeDef(BaseModel): + streamName: str + +class S3BucketTypeDef(BaseModel): + bucketName: str + prefix: Optional[str] = None + +class GetAppAuthorizationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + appAuthorizationIdentifier: str + +class GetAppBundleRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + +class GetIngestionDestinationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + ingestionDestinationIdentifier: str + +class GetIngestionRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + +class IngestionDestinationSummaryTypeDef(BaseModel): + arn: str + +class IngestionSummaryTypeDef(BaseModel): + arn: str + app: str + tenantId: str + state: IngestionStateType + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAppAuthorizationsRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppBundlesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIngestionDestinationsRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIngestionsRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class StartIngestionRequestRequestTypeDef(BaseModel): + ingestionIdentifier: str + appBundleIdentifier: str + +class StartUserAccessTasksRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + email: str + +class StopIngestionRequestRequestTypeDef(BaseModel): + ingestionIdentifier: str + appBundleIdentifier: str + +class TaskErrorTypeDef(BaseModel): + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AppAuthorizationSummaryTypeDef(BaseModel): + appAuthorizationArn: str + appBundleArn: str + app: str + tenant: TenantTypeDef + status: AppAuthorizationStatusType + updatedAt: datetime + +class AppAuthorizationTypeDef(BaseModel): + appAuthorizationArn: str + appBundleArn: str + app: str + tenant: TenantTypeDef + authType: AuthTypeType + status: AppAuthorizationStatusType + createdAt: datetime + updatedAt: datetime + persona: Optional[PersonaType] = None + authUrl: Optional[str] = None + +class ProcessingConfigurationTypeDef(BaseModel): + auditLog: Optional[AuditLogProcessingConfigurationTypeDef] = None + +class ConnectAppAuthorizationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + appAuthorizationIdentifier: str + authRequest: Optional[AuthRequestTypeDef] = None + +class CreateAppBundleResponseTypeDef(BaseModel): + appBundle: AppBundleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppBundleResponseTypeDef(BaseModel): + appBundle: AppBundleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppBundlesResponseTypeDef(BaseModel): + appBundleSummaryList: List[AppBundleSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppBundleRequestRequestTypeDef(BaseModel): + clientToken: Optional[str] = None + customerManagedKeyIdentifier: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateIngestionRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + app: str + tenantId: str + ingestionType: Literal["auditLog"] + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateIngestionResponseTypeDef(BaseModel): + ingestion: IngestionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIngestionResponseTypeDef(BaseModel): + ingestion: IngestionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CredentialTypeDef(BaseModel): + oauth2Credential: Optional[Oauth2CredentialTypeDef] = None + apiKeyCredential: Optional[ApiKeyCredentialTypeDef] = None + +class DestinationTypeDef(BaseModel): + s3Bucket: Optional[S3BucketTypeDef] = None + firehoseStream: Optional[FirehoseStreamTypeDef] = None + +class ListIngestionDestinationsResponseTypeDef(BaseModel): + ingestionDestinations: List[IngestionDestinationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIngestionsResponseTypeDef(BaseModel): + ingestions: List[IngestionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppAuthorizationsRequestListAppAuthorizationsPaginateTypeDef(BaseModel): + appBundleIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppBundlesRequestListAppBundlesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIngestionDestinationsRequestListIngestionDestinationsPaginateTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIngestionsRequestListIngestionsPaginateTypeDef(BaseModel): + appBundleIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class UserAccessResultItemTypeDef(BaseModel): + app: Optional[str] = None + tenantId: Optional[str] = None + tenantDisplayName: Optional[str] = None + taskId: Optional[str] = None + resultStatus: Optional[ResultStatusType] = None + email: Optional[str] = None + userId: Optional[str] = None + userFullName: Optional[str] = None + userFirstName: Optional[str] = None + userLastName: Optional[str] = None + userStatus: Optional[str] = None + taskError: Optional[TaskErrorTypeDef] = None + +class UserAccessTaskItemTypeDef(BaseModel): + app: str + tenantId: str + taskId: Optional[str] = None + error: Optional[TaskErrorTypeDef] = None + +class ConnectAppAuthorizationResponseTypeDef(BaseModel): + appAuthorizationSummary: AppAuthorizationSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppAuthorizationsResponseTypeDef(BaseModel): + appAuthorizationSummaryList: List[AppAuthorizationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppAuthorizationResponseTypeDef(BaseModel): + appAuthorization: AppAuthorizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppAuthorizationResponseTypeDef(BaseModel): + appAuthorization: AppAuthorizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppAuthorizationResponseTypeDef(BaseModel): + appAuthorization: AppAuthorizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppAuthorizationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + app: str + credential: CredentialTypeDef + tenant: TenantTypeDef + authType: AuthTypeType + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateAppAuthorizationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + appAuthorizationIdentifier: str + credential: Optional[CredentialTypeDef] = None + tenant: Optional[TenantTypeDef] = None + +class AuditLogDestinationConfigurationTypeDef(BaseModel): + destination: DestinationTypeDef + +class BatchGetUserAccessTasksResponseTypeDef(BaseModel): + userAccessResultsList: List[UserAccessResultItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartUserAccessTasksResponseTypeDef(BaseModel): + userAccessTasksList: List[UserAccessTaskItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationConfigurationTypeDef(BaseModel): + auditLog: Optional[AuditLogDestinationConfigurationTypeDef] = None + +class CreateIngestionDestinationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + processingConfiguration: ProcessingConfigurationTypeDef + destinationConfiguration: DestinationConfigurationTypeDef + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class IngestionDestinationTypeDef(BaseModel): + arn: str + ingestionArn: str + processingConfiguration: ProcessingConfigurationTypeDef + destinationConfiguration: DestinationConfigurationTypeDef + status: Optional[IngestionDestinationStatusType] = None + statusReason: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + +class UpdateIngestionDestinationRequestRequestTypeDef(BaseModel): + appBundleIdentifier: str + ingestionIdentifier: str + ingestionDestinationIdentifier: str + destinationConfiguration: DestinationConfigurationTypeDef + +class CreateIngestionDestinationResponseTypeDef(BaseModel): + ingestionDestination: IngestionDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIngestionDestinationResponseTypeDef(BaseModel): + ingestionDestination: IngestionDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIngestionDestinationResponseTypeDef(BaseModel): + ingestionDestination: IngestionDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appfabric_constants.py b/aws_resource_validator/pydantic_models/appfabric_constants.py new file mode 100644 index 00000000..553b0ec8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appfabric_constants.py @@ -0,0 +1,402 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppAuthorizationStatusType = Literal["Connected", "ConnectionValidationFailed", "PendingConnect", "TokenAutoRotationFailed"] +AuthTypeType = Literal["apiKey", "oauth2"] +FormatType = Literal["json", "parquet"] +IngestionDestinationStatusType = Literal["Active", "Failed"] +IngestionStateType = Literal["disabled", "enabled"] +IngestionTypeType = Literal["auditLog"] +ListAppAuthorizationsPaginatorName = Literal["list_app_authorizations"] +ListAppBundlesPaginatorName = Literal["list_app_bundles"] +ListIngestionDestinationsPaginatorName = Literal["list_ingestion_destinations"] +ListIngestionsPaginatorName = Literal["list_ingestions"] +PersonaType = Literal["admin", "endUser"] +ResultStatusType = Literal["COMPLETED", "EXPIRED", "FAILED", "IN_PROGRESS"] +SchemaType = Literal["ocsf", "raw"] +AppFabricServiceName = Literal["appfabric"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_app_authorizations", "list_app_bundles", "list_ingestion_destinations", "list_ingestions"] diff --git a/aws_resource_validator/pydantic_models/appflow_classes.py b/aws_resource_validator/pydantic_models/appflow_classes.py new file mode 100644 index 00000000..4ddb30ab --- /dev/null +++ b/aws_resource_validator/pydantic_models/appflow_classes.py @@ -0,0 +1,1041 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appflow_constants import * + +class AggregationConfigTypeDef(BaseModel): + aggregationType: Optional[AggregationTypeType] = None + targetFileSize: Optional[int] = None + +class AmplitudeConnectorProfileCredentialsTypeDef(BaseModel): + apiKey: str + secretKey: str + +class AmplitudeSourcePropertiesTypeDef(BaseModel): + object: str + +class ApiKeyCredentialsTypeDef(BaseModel): + apiKey: str + apiSecretKey: Optional[str] = None + +class AuthParameterTypeDef(BaseModel): + key: Optional[str] = None + isRequired: Optional[bool] = None + label: Optional[str] = None + description: Optional[str] = None + isSensitiveField: Optional[bool] = None + connectorSuppliedValues: Optional[List[str]] = None + +class BasicAuthCredentialsTypeDef(BaseModel): + username: str + password: str + +class CancelFlowExecutionsRequestRequestTypeDef(BaseModel): + flowName: str + executionIds: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ConnectorRuntimeSettingTypeDef(BaseModel): + key: Optional[str] = None + dataType: Optional[str] = None + isRequired: Optional[bool] = None + label: Optional[str] = None + description: Optional[str] = None + scope: Optional[str] = None + connectorSuppliedValueOptions: Optional[List[str]] = None + +class DataTransferApiTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[DataTransferApiTypeType] = None + +class ConnectorDetailTypeDef(BaseModel): + connectorDescription: Optional[str] = None + connectorName: Optional[str] = None + connectorOwner: Optional[str] = None + connectorVersion: Optional[str] = None + applicationType: Optional[str] = None + connectorType: Optional[ConnectorTypeType] = None + connectorLabel: Optional[str] = None + registeredAt: Optional[datetime] = None + registeredBy: Optional[str] = None + connectorProvisioningType: Optional[Literal["LAMBDA"]] = None + connectorModes: Optional[List[str]] = None + supportedDataTransferTypes: Optional[List[SupportedDataTransferTypeType]] = None + +class DestinationFieldPropertiesTypeDef(BaseModel): + isCreatable: Optional[bool] = None + isNullable: Optional[bool] = None + isUpsertable: Optional[bool] = None + isUpdatable: Optional[bool] = None + isDefaultedOnCreate: Optional[bool] = None + supportedWriteOperations: Optional[List[WriteOperationTypeType]] = None + +class SourceFieldPropertiesTypeDef(BaseModel): + isRetrievable: Optional[bool] = None + isQueryable: Optional[bool] = None + isTimestampFieldForIncrementalQueries: Optional[bool] = None + +class ConnectorEntityTypeDef(BaseModel): + name: str + label: Optional[str] = None + hasNestedEntities: Optional[bool] = None + +class GoogleAnalyticsMetadataTypeDef(BaseModel): + oAuthScopes: Optional[List[str]] = None + +class HoneycodeMetadataTypeDef(BaseModel): + oAuthScopes: Optional[List[str]] = None + +class SalesforceMetadataTypeDef(BaseModel): + oAuthScopes: Optional[List[str]] = None + dataTransferApis: Optional[List[SalesforceDataTransferApiType]] = None + oauth2GrantTypesSupported: Optional[List[OAuth2GrantTypeType]] = None + +class SlackMetadataTypeDef(BaseModel): + oAuthScopes: Optional[List[str]] = None + +class SnowflakeMetadataTypeDef(BaseModel): + supportedRegions: Optional[List[str]] = None + +class ZendeskMetadataTypeDef(BaseModel): + oAuthScopes: Optional[List[str]] = None + +class ConnectorOAuthRequestTypeDef(BaseModel): + authCode: Optional[str] = None + redirectUri: Optional[str] = None + +class ConnectorOperatorTypeDef(BaseModel): + Amplitude: Optional[Literal["BETWEEN"]] = None + Datadog: Optional[DatadogConnectorOperatorType] = None + Dynatrace: Optional[DynatraceConnectorOperatorType] = None + GoogleAnalytics: Optional[GoogleAnalyticsConnectorOperatorType] = None + InforNexus: Optional[InforNexusConnectorOperatorType] = None + Marketo: Optional[MarketoConnectorOperatorType] = None + S3: Optional[S3ConnectorOperatorType] = None + Salesforce: Optional[SalesforceConnectorOperatorType] = None + ServiceNow: Optional[ServiceNowConnectorOperatorType] = None + Singular: Optional[SingularConnectorOperatorType] = None + Slack: Optional[SlackConnectorOperatorType] = None + Trendmicro: Optional[TrendmicroConnectorOperatorType] = None + Veeva: Optional[VeevaConnectorOperatorType] = None + Zendesk: Optional[ZendeskConnectorOperatorType] = None + SAPOData: Optional[SAPODataConnectorOperatorType] = None + CustomConnector: Optional[OperatorType] = None + Pardot: Optional[PardotConnectorOperatorType] = None + +class DatadogConnectorProfileCredentialsTypeDef(BaseModel): + apiKey: str + applicationKey: str + +class DynatraceConnectorProfileCredentialsTypeDef(BaseModel): + apiToken: str + +class InforNexusConnectorProfileCredentialsTypeDef(BaseModel): + accessKeyId: str + userId: str + secretAccessKey: str + datakey: str + +class RedshiftConnectorProfileCredentialsTypeDef(BaseModel): + username: Optional[str] = None + password: Optional[str] = None + +class SingularConnectorProfileCredentialsTypeDef(BaseModel): + apiKey: str + +class SnowflakeConnectorProfileCredentialsTypeDef(BaseModel): + username: str + password: str + +class TrendmicroConnectorProfileCredentialsTypeDef(BaseModel): + apiSecretKey: str + +class VeevaConnectorProfileCredentialsTypeDef(BaseModel): + username: str + password: str + +class DatadogConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class DynatraceConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class InforNexusConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class MarketoConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class PardotConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: Optional[str] = None + isSandboxEnvironment: Optional[bool] = None + businessUnitId: Optional[str] = None + +class RedshiftConnectorProfilePropertiesTypeDef(BaseModel): + bucketName: str + roleArn: str + databaseUrl: Optional[str] = None + bucketPrefix: Optional[str] = None + dataApiRoleArn: Optional[str] = None + isRedshiftServerless: Optional[bool] = None + clusterIdentifier: Optional[str] = None + workgroupName: Optional[str] = None + databaseName: Optional[str] = None + +class SalesforceConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: Optional[str] = None + isSandboxEnvironment: Optional[bool] = None + usePrivateLinkForMetadataAndAuthorization: Optional[bool] = None + +class ServiceNowConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class SlackConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class SnowflakeConnectorProfilePropertiesTypeDef(BaseModel): + warehouse: str + stage: str + bucketName: str + bucketPrefix: Optional[str] = None + privateLinkServiceName: Optional[str] = None + accountName: Optional[str] = None + region: Optional[str] = None + +class VeevaConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class ZendeskConnectorProfilePropertiesTypeDef(BaseModel): + instanceUrl: str + +class PrivateConnectionProvisioningStateTypeDef(BaseModel): + status: Optional[PrivateConnectionProvisioningStatusType] = None + failureMessage: Optional[str] = None + failureCause: Optional[PrivateConnectionProvisioningFailureCauseType] = None + +class LambdaConnectorProvisioningConfigTypeDef(BaseModel): + lambdaArn: str + +class CustomAuthCredentialsTypeDef(BaseModel): + customAuthenticationType: str + credentialsMap: Optional[Mapping[str, str]] = None + +class ErrorHandlingConfigTypeDef(BaseModel): + failOnFirstDestinationError: Optional[bool] = None + bucketPrefix: Optional[str] = None + bucketName: Optional[str] = None + +class OAuth2PropertiesTypeDef(BaseModel): + tokenUrl: str + oAuth2GrantType: OAuth2GrantTypeType + tokenUrlCustomProperties: Optional[Mapping[str, str]] = None + +class CustomerProfilesDestinationPropertiesTypeDef(BaseModel): + domainName: str + objectTypeName: Optional[str] = None + +class DatadogSourcePropertiesTypeDef(BaseModel): + object: str + +class DeleteConnectorProfileRequestRequestTypeDef(BaseModel): + connectorProfileName: str + forceDelete: Optional[bool] = None + +class DeleteFlowRequestRequestTypeDef(BaseModel): + flowName: str + forceDelete: Optional[bool] = None + +class DescribeConnectorEntityRequestRequestTypeDef(BaseModel): + connectorEntityName: str + connectorType: Optional[ConnectorTypeType] = None + connectorProfileName: Optional[str] = None + apiVersion: Optional[str] = None + +class DescribeConnectorProfilesRequestRequestTypeDef(BaseModel): + connectorProfileNames: Optional[Sequence[str]] = None + connectorType: Optional[ConnectorTypeType] = None + connectorLabel: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeConnectorRequestRequestTypeDef(BaseModel): + connectorType: ConnectorTypeType + connectorLabel: Optional[str] = None + +class DescribeConnectorsRequestRequestTypeDef(BaseModel): + connectorTypes: Optional[Sequence[ConnectorTypeType]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeFlowExecutionRecordsRequestRequestTypeDef(BaseModel): + flowName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeFlowRequestRequestTypeDef(BaseModel): + flowName: str + +class ExecutionDetailsTypeDef(BaseModel): + mostRecentExecutionMessage: Optional[str] = None + mostRecentExecutionTime: Optional[datetime] = None + mostRecentExecutionStatus: Optional[ExecutionStatusType] = None + +class DynatraceSourcePropertiesTypeDef(BaseModel): + object: str + +class ErrorInfoTypeDef(BaseModel): + putFailuresCount: Optional[int] = None + executionMessage: Optional[str] = None + +class RangeTypeDef(BaseModel): + maximum: Optional[float] = None + minimum: Optional[float] = None + +class GlueDataCatalogConfigTypeDef(BaseModel): + roleArn: str + databaseName: str + tablePrefix: str + +class GoogleAnalyticsSourcePropertiesTypeDef(BaseModel): + object: str + +class IncrementalPullConfigTypeDef(BaseModel): + datetimeTypeFieldName: Optional[str] = None + +class InforNexusSourcePropertiesTypeDef(BaseModel): + object: str + +class ListConnectorEntitiesRequestRequestTypeDef(BaseModel): + connectorProfileName: Optional[str] = None + connectorType: Optional[ConnectorTypeType] = None + entitiesPath: Optional[str] = None + apiVersion: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListConnectorsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFlowsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MarketoSourcePropertiesTypeDef(BaseModel): + object: str + +class RegistrationOutputTypeDef(BaseModel): + message: Optional[str] = None + result: Optional[str] = None + status: Optional[ExecutionStatusType] = None + +class OAuth2CustomParameterTypeDef(BaseModel): + key: Optional[str] = None + isRequired: Optional[bool] = None + label: Optional[str] = None + description: Optional[str] = None + isSensitiveField: Optional[bool] = None + connectorSuppliedValues: Optional[List[str]] = None + type: Optional[OAuth2CustomPropTypeType] = None + +class OAuthPropertiesTypeDef(BaseModel): + tokenUrl: str + authCodeUrl: str + oAuthScopes: Sequence[str] + +class PardotSourcePropertiesTypeDef(BaseModel): + object: str + +class PrefixConfigTypeDef(BaseModel): + prefixType: Optional[PrefixTypeType] = None + prefixFormat: Optional[PrefixFormatType] = None + pathPrefixHierarchy: Optional[Sequence[PathPrefixType]] = None + +class ResetConnectorMetadataCacheRequestRequestTypeDef(BaseModel): + connectorProfileName: Optional[str] = None + connectorType: Optional[ConnectorTypeType] = None + connectorEntityName: Optional[str] = None + entitiesPath: Optional[str] = None + apiVersion: Optional[str] = None + +class S3InputFormatConfigTypeDef(BaseModel): + s3InputFileType: Optional[S3InputFileTypeType] = None + +class SuccessResponseHandlingConfigTypeDef(BaseModel): + bucketPrefix: Optional[str] = None + bucketName: Optional[str] = None + +class SAPODataPaginationConfigTypeDef(BaseModel): + maxPageSize: int + +class SAPODataParallelismConfigTypeDef(BaseModel): + maxParallelism: int + +class SalesforceSourcePropertiesTypeDef(BaseModel): + object: str + enableDynamicFieldUpdate: Optional[bool] = None + includeDeletedRecords: Optional[bool] = None + dataTransferApi: Optional[SalesforceDataTransferApiType] = None + +class ServiceNowSourcePropertiesTypeDef(BaseModel): + object: str + +class SingularSourcePropertiesTypeDef(BaseModel): + object: str + +class SlackSourcePropertiesTypeDef(BaseModel): + object: str + +class TrendmicroSourcePropertiesTypeDef(BaseModel): + object: str + +class VeevaSourcePropertiesTypeDef(BaseModel): + object: str + documentType: Optional[str] = None + includeSourceFiles: Optional[bool] = None + includeRenditions: Optional[bool] = None + includeAllVersions: Optional[bool] = None + +class ZendeskSourcePropertiesTypeDef(BaseModel): + object: str + +class StartFlowRequestRequestTypeDef(BaseModel): + flowName: str + clientToken: Optional[str] = None + +class StopFlowRequestRequestTypeDef(BaseModel): + flowName: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UnregisterConnectorRequestRequestTypeDef(BaseModel): + connectorLabel: str + forceDelete: Optional[bool] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CustomAuthConfigTypeDef(BaseModel): + customAuthenticationType: Optional[str] = None + authParameters: Optional[List[AuthParameterTypeDef]] = None + +class CancelFlowExecutionsResponseTypeDef(BaseModel): + invalidExecutions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorProfileResponseTypeDef(BaseModel): + connectorProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowResponseTypeDef(BaseModel): + flowArn: str + flowStatus: FlowStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterConnectorResponseTypeDef(BaseModel): + connectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFlowResponseTypeDef(BaseModel): + flowArn: str + flowStatus: FlowStatusType + executionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopFlowResponseTypeDef(BaseModel): + flowArn: str + flowStatus: FlowStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectorProfileResponseTypeDef(BaseModel): + connectorProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectorRegistrationResponseTypeDef(BaseModel): + connectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowResponseTypeDef(BaseModel): + flowStatus: FlowStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CustomConnectorSourcePropertiesTypeDef(BaseModel): + entityName: str + customProperties: Optional[Mapping[str, str]] = None + dataTransferApi: Optional[DataTransferApiTypeDef] = None + +class ListConnectorsResponseTypeDef(BaseModel): + connectors: List[ConnectorDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectorEntitiesResponseTypeDef(BaseModel): + connectorEntityMap: Dict[str, List[ConnectorEntityTypeDef]] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectorMetadataTypeDef(BaseModel): + Amplitude: Optional[Dict[str, Any]] = None + Datadog: Optional[Dict[str, Any]] = None + Dynatrace: Optional[Dict[str, Any]] = None + GoogleAnalytics: Optional[GoogleAnalyticsMetadataTypeDef] = None + InforNexus: Optional[Dict[str, Any]] = None + Marketo: Optional[Dict[str, Any]] = None + Redshift: Optional[Dict[str, Any]] = None + S3: Optional[Dict[str, Any]] = None + Salesforce: Optional[SalesforceMetadataTypeDef] = None + ServiceNow: Optional[Dict[str, Any]] = None + Singular: Optional[Dict[str, Any]] = None + Slack: Optional[SlackMetadataTypeDef] = None + Snowflake: Optional[SnowflakeMetadataTypeDef] = None + Trendmicro: Optional[Dict[str, Any]] = None + Veeva: Optional[Dict[str, Any]] = None + Zendesk: Optional[ZendeskMetadataTypeDef] = None + EventBridge: Optional[Dict[str, Any]] = None + Upsolver: Optional[Dict[str, Any]] = None + CustomerProfiles: Optional[Dict[str, Any]] = None + Honeycode: Optional[HoneycodeMetadataTypeDef] = None + SAPOData: Optional[Dict[str, Any]] = None + Pardot: Optional[Dict[str, Any]] = None + +class GoogleAnalyticsConnectorProfileCredentialsTypeDef(BaseModel): + clientId: str + clientSecret: str + accessToken: Optional[str] = None + refreshToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class HoneycodeConnectorProfileCredentialsTypeDef(BaseModel): + accessToken: Optional[str] = None + refreshToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class MarketoConnectorProfileCredentialsTypeDef(BaseModel): + clientId: str + clientSecret: str + accessToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class OAuth2CredentialsTypeDef(BaseModel): + clientId: Optional[str] = None + clientSecret: Optional[str] = None + accessToken: Optional[str] = None + refreshToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class OAuthCredentialsTypeDef(BaseModel): + clientId: str + clientSecret: str + accessToken: Optional[str] = None + refreshToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class PardotConnectorProfileCredentialsTypeDef(BaseModel): + accessToken: Optional[str] = None + refreshToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + clientCredentialsArn: Optional[str] = None + +class SalesforceConnectorProfileCredentialsTypeDef(BaseModel): + accessToken: Optional[str] = None + refreshToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + clientCredentialsArn: Optional[str] = None + oAuth2GrantType: Optional[OAuth2GrantTypeType] = None + jwtToken: Optional[str] = None + +class SlackConnectorProfileCredentialsTypeDef(BaseModel): + clientId: str + clientSecret: str + accessToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class ZendeskConnectorProfileCredentialsTypeDef(BaseModel): + clientId: str + clientSecret: str + accessToken: Optional[str] = None + oAuthRequest: Optional[ConnectorOAuthRequestTypeDef] = None + +class TaskTypeDef(BaseModel): + sourceFields: Sequence[str] + taskType: TaskTypeType + connectorOperator: Optional[ConnectorOperatorTypeDef] = None + destinationField: Optional[str] = None + taskProperties: Optional[Mapping[OperatorPropertiesKeysType, str]] = None + +class ConnectorProvisioningConfigTypeDef(BaseModel): + lambda: Optional[LambdaConnectorProvisioningConfigTypeDef] = None + +class CustomConnectorDestinationPropertiesTypeDef(BaseModel): + entityName: str + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + writeOperationType: Optional[WriteOperationTypeType] = None + idFieldNames: Optional[Sequence[str]] = None + customProperties: Optional[Mapping[str, str]] = None + +class EventBridgeDestinationPropertiesTypeDef(BaseModel): + object: str + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + +class HoneycodeDestinationPropertiesTypeDef(BaseModel): + object: str + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + +class MarketoDestinationPropertiesTypeDef(BaseModel): + object: str + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + +class RedshiftDestinationPropertiesTypeDef(BaseModel): + object: str + intermediateBucketName: str + bucketPrefix: Optional[str] = None + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + +class SalesforceDestinationPropertiesTypeDef(BaseModel): + object: str + idFieldNames: Optional[Sequence[str]] = None + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + writeOperationType: Optional[WriteOperationTypeType] = None + dataTransferApi: Optional[SalesforceDataTransferApiType] = None + +class SnowflakeDestinationPropertiesTypeDef(BaseModel): + object: str + intermediateBucketName: str + bucketPrefix: Optional[str] = None + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + +class ZendeskDestinationPropertiesTypeDef(BaseModel): + object: str + idFieldNames: Optional[Sequence[str]] = None + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + writeOperationType: Optional[WriteOperationTypeType] = None + +class CustomConnectorProfilePropertiesTypeDef(BaseModel): + profileProperties: Optional[Mapping[str, str]] = None + oAuth2Properties: Optional[OAuth2PropertiesTypeDef] = None + +class FlowDefinitionTypeDef(BaseModel): + flowArn: Optional[str] = None + description: Optional[str] = None + flowName: Optional[str] = None + flowStatus: Optional[FlowStatusType] = None + sourceConnectorType: Optional[ConnectorTypeType] = None + sourceConnectorLabel: Optional[str] = None + destinationConnectorType: Optional[ConnectorTypeType] = None + destinationConnectorLabel: Optional[str] = None + triggerType: Optional[TriggerTypeType] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + createdBy: Optional[str] = None + lastUpdatedBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + lastRunExecutionDetails: Optional[ExecutionDetailsTypeDef] = None + +class ExecutionResultTypeDef(BaseModel): + errorInfo: Optional[ErrorInfoTypeDef] = None + bytesProcessed: Optional[int] = None + bytesWritten: Optional[int] = None + recordsProcessed: Optional[int] = None + numParallelProcesses: Optional[int] = None + maxPageSize: Optional[int] = None + +class FieldTypeDetailsTypeDef(BaseModel): + fieldType: str + filterOperators: List[OperatorType] + supportedValues: Optional[List[str]] = None + valueRegexPattern: Optional[str] = None + supportedDateFormat: Optional[str] = None + fieldValueRange: Optional[RangeTypeDef] = None + fieldLengthRange: Optional[RangeTypeDef] = None + +class MetadataCatalogConfigTypeDef(BaseModel): + glueDataCatalog: Optional[GlueDataCatalogConfigTypeDef] = None + +class MetadataCatalogDetailTypeDef(BaseModel): + catalogType: Optional[Literal["GLUE"]] = None + tableName: Optional[str] = None + tableRegistrationOutput: Optional[RegistrationOutputTypeDef] = None + partitionRegistrationOutput: Optional[RegistrationOutputTypeDef] = None + +class OAuth2DefaultsTypeDef(BaseModel): + oauthScopes: Optional[List[str]] = None + tokenUrls: Optional[List[str]] = None + authCodeUrls: Optional[List[str]] = None + oauth2GrantTypesSupported: Optional[List[OAuth2GrantTypeType]] = None + oauth2CustomProperties: Optional[List[OAuth2CustomParameterTypeDef]] = None + +class SAPODataConnectorProfilePropertiesTypeDef(BaseModel): + applicationHostUrl: str + applicationServicePath: str + portNumber: int + clientNumber: str + logonLanguage: Optional[str] = None + privateLinkServiceName: Optional[str] = None + oAuthProperties: Optional[OAuthPropertiesTypeDef] = None + disableSSO: Optional[bool] = None + +class S3OutputFormatConfigTypeDef(BaseModel): + fileType: Optional[FileTypeType] = None + prefixConfig: Optional[PrefixConfigTypeDef] = None + aggregationConfig: Optional[AggregationConfigTypeDef] = None + preserveSourceDataTyping: Optional[bool] = None + +class UpsolverS3OutputFormatConfigTypeDef(BaseModel): + prefixConfig: PrefixConfigTypeDef + fileType: Optional[FileTypeType] = None + aggregationConfig: Optional[AggregationConfigTypeDef] = None + +class S3SourcePropertiesTypeDef(BaseModel): + bucketName: str + bucketPrefix: Optional[str] = None + s3InputFormatConfig: Optional[S3InputFormatConfigTypeDef] = None + +class SAPODataDestinationPropertiesTypeDef(BaseModel): + objectPath: str + successResponseHandlingConfig: Optional[SuccessResponseHandlingConfigTypeDef] = None + idFieldNames: Optional[Sequence[str]] = None + errorHandlingConfig: Optional[ErrorHandlingConfigTypeDef] = None + writeOperationType: Optional[WriteOperationTypeType] = None + +class SAPODataSourcePropertiesTypeDef(BaseModel): + objectPath: Optional[str] = None + parallelismConfig: Optional[SAPODataParallelismConfigTypeDef] = None + paginationConfig: Optional[SAPODataPaginationConfigTypeDef] = None + +class ScheduledTriggerPropertiesTypeDef(BaseModel): + scheduleExpression: str + dataPullMode: Optional[DataPullModeType] = None + scheduleStartTime: Optional[TimestampTypeDef] = None + scheduleEndTime: Optional[TimestampTypeDef] = None + timezone: Optional[str] = None + scheduleOffset: Optional[int] = None + firstExecutionFrom: Optional[TimestampTypeDef] = None + flowErrorDeactivationThreshold: Optional[int] = None + +class CustomConnectorProfileCredentialsTypeDef(BaseModel): + authenticationType: AuthenticationTypeType + basic: Optional[BasicAuthCredentialsTypeDef] = None + oauth2: Optional[OAuth2CredentialsTypeDef] = None + apiKey: Optional[ApiKeyCredentialsTypeDef] = None + custom: Optional[CustomAuthCredentialsTypeDef] = None + +class ServiceNowConnectorProfileCredentialsTypeDef(BaseModel): + username: Optional[str] = None + password: Optional[str] = None + oAuth2Credentials: Optional[OAuth2CredentialsTypeDef] = None + +class SAPODataConnectorProfileCredentialsTypeDef(BaseModel): + basicAuthCredentials: Optional[BasicAuthCredentialsTypeDef] = None + oAuthCredentials: Optional[OAuthCredentialsTypeDef] = None + +class RegisterConnectorRequestRequestTypeDef(BaseModel): + connectorLabel: Optional[str] = None + description: Optional[str] = None + connectorProvisioningType: Optional[Literal["LAMBDA"]] = None + connectorProvisioningConfig: Optional[ConnectorProvisioningConfigTypeDef] = None + clientToken: Optional[str] = None + +class UpdateConnectorRegistrationRequestRequestTypeDef(BaseModel): + connectorLabel: str + description: Optional[str] = None + connectorProvisioningConfig: Optional[ConnectorProvisioningConfigTypeDef] = None + clientToken: Optional[str] = None + +class ListFlowsResponseTypeDef(BaseModel): + flows: List[FlowDefinitionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SupportedFieldTypeDetailsTypeDef(BaseModel): + v1: FieldTypeDetailsTypeDef + +class ExecutionRecordTypeDef(BaseModel): + executionId: Optional[str] = None + executionStatus: Optional[ExecutionStatusType] = None + executionResult: Optional[ExecutionResultTypeDef] = None + startedAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + dataPullStartTime: Optional[datetime] = None + dataPullEndTime: Optional[datetime] = None + metadataCatalogDetails: Optional[List[MetadataCatalogDetailTypeDef]] = None + +class AuthenticationConfigTypeDef(BaseModel): + isBasicAuthSupported: Optional[bool] = None + isApiKeyAuthSupported: Optional[bool] = None + isOAuth2Supported: Optional[bool] = None + isCustomAuthSupported: Optional[bool] = None + oAuth2Defaults: Optional[OAuth2DefaultsTypeDef] = None + customAuthConfigs: Optional[List[CustomAuthConfigTypeDef]] = None + +class ConnectorProfilePropertiesTypeDef(BaseModel): + Amplitude: Optional[Mapping[str, Any]] = None + Datadog: Optional[DatadogConnectorProfilePropertiesTypeDef] = None + Dynatrace: Optional[DynatraceConnectorProfilePropertiesTypeDef] = None + GoogleAnalytics: Optional[Mapping[str, Any]] = None + Honeycode: Optional[Mapping[str, Any]] = None + InforNexus: Optional[InforNexusConnectorProfilePropertiesTypeDef] = None + Marketo: Optional[MarketoConnectorProfilePropertiesTypeDef] = None + Redshift: Optional[RedshiftConnectorProfilePropertiesTypeDef] = None + Salesforce: Optional[SalesforceConnectorProfilePropertiesTypeDef] = None + ServiceNow: Optional[ServiceNowConnectorProfilePropertiesTypeDef] = None + Singular: Optional[Mapping[str, Any]] = None + Slack: Optional[SlackConnectorProfilePropertiesTypeDef] = None + Snowflake: Optional[SnowflakeConnectorProfilePropertiesTypeDef] = None + Trendmicro: Optional[Mapping[str, Any]] = None + Veeva: Optional[VeevaConnectorProfilePropertiesTypeDef] = None + Zendesk: Optional[ZendeskConnectorProfilePropertiesTypeDef] = None + SAPOData: Optional[SAPODataConnectorProfilePropertiesTypeDef] = None + CustomConnector: Optional[CustomConnectorProfilePropertiesTypeDef] = None + Pardot: Optional[PardotConnectorProfilePropertiesTypeDef] = None + +class S3DestinationPropertiesTypeDef(BaseModel): + bucketName: str + bucketPrefix: Optional[str] = None + s3OutputFormatConfig: Optional[S3OutputFormatConfigTypeDef] = None + +class UpsolverDestinationPropertiesTypeDef(BaseModel): + bucketName: str + s3OutputFormatConfig: UpsolverS3OutputFormatConfigTypeDef + bucketPrefix: Optional[str] = None + +class SourceConnectorPropertiesTypeDef(BaseModel): + Amplitude: Optional[AmplitudeSourcePropertiesTypeDef] = None + Datadog: Optional[DatadogSourcePropertiesTypeDef] = None + Dynatrace: Optional[DynatraceSourcePropertiesTypeDef] = None + GoogleAnalytics: Optional[GoogleAnalyticsSourcePropertiesTypeDef] = None + InforNexus: Optional[InforNexusSourcePropertiesTypeDef] = None + Marketo: Optional[MarketoSourcePropertiesTypeDef] = None + S3: Optional[S3SourcePropertiesTypeDef] = None + Salesforce: Optional[SalesforceSourcePropertiesTypeDef] = None + ServiceNow: Optional[ServiceNowSourcePropertiesTypeDef] = None + Singular: Optional[SingularSourcePropertiesTypeDef] = None + Slack: Optional[SlackSourcePropertiesTypeDef] = None + Trendmicro: Optional[TrendmicroSourcePropertiesTypeDef] = None + Veeva: Optional[VeevaSourcePropertiesTypeDef] = None + Zendesk: Optional[ZendeskSourcePropertiesTypeDef] = None + SAPOData: Optional[SAPODataSourcePropertiesTypeDef] = None + CustomConnector: Optional[CustomConnectorSourcePropertiesTypeDef] = None + Pardot: Optional[PardotSourcePropertiesTypeDef] = None + +class TriggerPropertiesTypeDef(BaseModel): + Scheduled: Optional[ScheduledTriggerPropertiesTypeDef] = None + +class ConnectorProfileCredentialsTypeDef(BaseModel): + Amplitude: Optional[AmplitudeConnectorProfileCredentialsTypeDef] = None + Datadog: Optional[DatadogConnectorProfileCredentialsTypeDef] = None + Dynatrace: Optional[DynatraceConnectorProfileCredentialsTypeDef] = None + GoogleAnalytics: Optional[GoogleAnalyticsConnectorProfileCredentialsTypeDef] = None + Honeycode: Optional[HoneycodeConnectorProfileCredentialsTypeDef] = None + InforNexus: Optional[InforNexusConnectorProfileCredentialsTypeDef] = None + Marketo: Optional[MarketoConnectorProfileCredentialsTypeDef] = None + Redshift: Optional[RedshiftConnectorProfileCredentialsTypeDef] = None + Salesforce: Optional[SalesforceConnectorProfileCredentialsTypeDef] = None + ServiceNow: Optional[ServiceNowConnectorProfileCredentialsTypeDef] = None + Singular: Optional[SingularConnectorProfileCredentialsTypeDef] = None + Slack: Optional[SlackConnectorProfileCredentialsTypeDef] = None + Snowflake: Optional[SnowflakeConnectorProfileCredentialsTypeDef] = None + Trendmicro: Optional[TrendmicroConnectorProfileCredentialsTypeDef] = None + Veeva: Optional[VeevaConnectorProfileCredentialsTypeDef] = None + Zendesk: Optional[ZendeskConnectorProfileCredentialsTypeDef] = None + SAPOData: Optional[SAPODataConnectorProfileCredentialsTypeDef] = None + CustomConnector: Optional[CustomConnectorProfileCredentialsTypeDef] = None + Pardot: Optional[PardotConnectorProfileCredentialsTypeDef] = None + +class ConnectorEntityFieldTypeDef(BaseModel): + identifier: str + parentIdentifier: Optional[str] = None + label: Optional[str] = None + isPrimaryKey: Optional[bool] = None + defaultValue: Optional[str] = None + isDeprecated: Optional[bool] = None + supportedFieldTypeDetails: Optional[SupportedFieldTypeDetailsTypeDef] = None + description: Optional[str] = None + sourceProperties: Optional[SourceFieldPropertiesTypeDef] = None + destinationProperties: Optional[DestinationFieldPropertiesTypeDef] = None + customProperties: Optional[Dict[str, str]] = None + +class DescribeFlowExecutionRecordsResponseTypeDef(BaseModel): + flowExecutions: List[ExecutionRecordTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectorConfigurationTypeDef(BaseModel): + canUseAsSource: Optional[bool] = None + canUseAsDestination: Optional[bool] = None + supportedDestinationConnectors: Optional[List[ConnectorTypeType]] = None + supportedSchedulingFrequencies: Optional[List[ScheduleFrequencyTypeType]] = None + isPrivateLinkEnabled: Optional[bool] = None + isPrivateLinkEndpointUrlRequired: Optional[bool] = None + supportedTriggerTypes: Optional[List[TriggerTypeType]] = None + connectorMetadata: Optional[ConnectorMetadataTypeDef] = None + connectorType: Optional[ConnectorTypeType] = None + connectorLabel: Optional[str] = None + connectorDescription: Optional[str] = None + connectorOwner: Optional[str] = None + connectorName: Optional[str] = None + connectorVersion: Optional[str] = None + connectorArn: Optional[str] = None + connectorModes: Optional[List[str]] = None + authenticationConfig: Optional[AuthenticationConfigTypeDef] = None + connectorRuntimeSettings: Optional[List[ConnectorRuntimeSettingTypeDef]] = None + supportedApiVersions: Optional[List[str]] = None + supportedOperators: Optional[List[OperatorsType]] = None + supportedWriteOperations: Optional[List[WriteOperationTypeType]] = None + connectorProvisioningType: Optional[Literal["LAMBDA"]] = None + connectorProvisioningConfig: Optional[ConnectorProvisioningConfigTypeDef] = None + logoURL: Optional[str] = None + registeredAt: Optional[datetime] = None + registeredBy: Optional[str] = None + supportedDataTransferTypes: Optional[List[SupportedDataTransferTypeType]] = None + supportedDataTransferApis: Optional[List[DataTransferApiTypeDef]] = None + +class ConnectorProfileTypeDef(BaseModel): + connectorProfileArn: Optional[str] = None + connectorProfileName: Optional[str] = None + connectorType: Optional[ConnectorTypeType] = None + connectorLabel: Optional[str] = None + connectionMode: Optional[ConnectionModeType] = None + credentialsArn: Optional[str] = None + connectorProfileProperties: Optional[ConnectorProfilePropertiesTypeDef] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + privateConnectionProvisioningState: Optional[ PrivateConnectionProvisioningStateTypeDef ] = None + +class DestinationConnectorPropertiesTypeDef(BaseModel): + Redshift: Optional[RedshiftDestinationPropertiesTypeDef] = None + S3: Optional[S3DestinationPropertiesTypeDef] = None + Salesforce: Optional[SalesforceDestinationPropertiesTypeDef] = None + Snowflake: Optional[SnowflakeDestinationPropertiesTypeDef] = None + EventBridge: Optional[EventBridgeDestinationPropertiesTypeDef] = None + LookoutMetrics: Optional[Mapping[str, Any]] = None + Upsolver: Optional[UpsolverDestinationPropertiesTypeDef] = None + Honeycode: Optional[HoneycodeDestinationPropertiesTypeDef] = None + CustomerProfiles: Optional[CustomerProfilesDestinationPropertiesTypeDef] = None + Zendesk: Optional[ZendeskDestinationPropertiesTypeDef] = None + Marketo: Optional[MarketoDestinationPropertiesTypeDef] = None + CustomConnector: Optional[CustomConnectorDestinationPropertiesTypeDef] = None + SAPOData: Optional[SAPODataDestinationPropertiesTypeDef] = None + +class SourceFlowConfigTypeDef(BaseModel): + connectorType: ConnectorTypeType + sourceConnectorProperties: SourceConnectorPropertiesTypeDef + apiVersion: Optional[str] = None + connectorProfileName: Optional[str] = None + incrementalPullConfig: Optional[IncrementalPullConfigTypeDef] = None + +class TriggerConfigTypeDef(BaseModel): + triggerType: TriggerTypeType + triggerProperties: Optional[TriggerPropertiesTypeDef] = None + +class ConnectorProfileConfigTypeDef(BaseModel): + connectorProfileProperties: ConnectorProfilePropertiesTypeDef + connectorProfileCredentials: Optional[ConnectorProfileCredentialsTypeDef] = None + +class DescribeConnectorEntityResponseTypeDef(BaseModel): + connectorEntityFields: List[ConnectorEntityFieldTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectorResponseTypeDef(BaseModel): + connectorConfiguration: ConnectorConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectorsResponseTypeDef(BaseModel): + connectorConfigurations: Dict[ConnectorTypeType, ConnectorConfigurationTypeDef] + connectors: List[ConnectorDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectorProfilesResponseTypeDef(BaseModel): + connectorProfileDetails: List[ConnectorProfileTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationFlowConfigTypeDef(BaseModel): + connectorType: ConnectorTypeType + destinationConnectorProperties: DestinationConnectorPropertiesTypeDef + apiVersion: Optional[str] = None + connectorProfileName: Optional[str] = None + +class CreateConnectorProfileRequestRequestTypeDef(BaseModel): + connectorProfileName: str + connectorType: ConnectorTypeType + connectionMode: ConnectionModeType + connectorProfileConfig: ConnectorProfileConfigTypeDef + kmsArn: Optional[str] = None + connectorLabel: Optional[str] = None + clientToken: Optional[str] = None + +class UpdateConnectorProfileRequestRequestTypeDef(BaseModel): + connectorProfileName: str + connectionMode: ConnectionModeType + connectorProfileConfig: ConnectorProfileConfigTypeDef + clientToken: Optional[str] = None + +class CreateFlowRequestRequestTypeDef(BaseModel): + flowName: str + triggerConfig: TriggerConfigTypeDef + sourceFlowConfig: SourceFlowConfigTypeDef + destinationFlowConfigList: Sequence[DestinationFlowConfigTypeDef] + tasks: Sequence[TaskTypeDef] + description: Optional[str] = None + kmsArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + metadataCatalogConfig: Optional[MetadataCatalogConfigTypeDef] = None + clientToken: Optional[str] = None + +class DescribeFlowResponseTypeDef(BaseModel): + flowArn: str + description: str + flowName: str + kmsArn: str + flowStatus: FlowStatusType + flowStatusMessage: str + sourceFlowConfig: SourceFlowConfigTypeDef + destinationFlowConfigList: List[DestinationFlowConfigTypeDef] + lastRunExecutionDetails: ExecutionDetailsTypeDef + triggerConfig: TriggerConfigTypeDef + tasks: List[TaskTypeDef] + createdAt: datetime + lastUpdatedAt: datetime + createdBy: str + lastUpdatedBy: str + tags: Dict[str, str] + metadataCatalogConfig: MetadataCatalogConfigTypeDef + lastRunMetadataCatalogDetails: List[MetadataCatalogDetailTypeDef] + schemaVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowRequestRequestTypeDef(BaseModel): + flowName: str + triggerConfig: TriggerConfigTypeDef + sourceFlowConfig: SourceFlowConfigTypeDef + destinationFlowConfigList: Sequence[DestinationFlowConfigTypeDef] + tasks: Sequence[TaskTypeDef] + description: Optional[str] = None + metadataCatalogConfig: Optional[MetadataCatalogConfigTypeDef] = None + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/appflow_constants.py b/aws_resource_validator/pydantic_models/appflow_constants.py new file mode 100644 index 00000000..33f75125 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appflow_constants.py @@ -0,0 +1,763 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregationTypeType = Literal["None", "SingleFile"] +AmplitudeConnectorOperatorType = Literal["BETWEEN"] +AuthenticationTypeType = Literal["APIKEY", "BASIC", "CUSTOM", "OAUTH2"] +CatalogTypeType = Literal["GLUE"] +ConnectionModeType = Literal["Private", "Public"] +ConnectorProvisioningTypeType = Literal["LAMBDA"] +ConnectorTypeType = Literal["Amplitude", + "CustomConnector", + "CustomerProfiles", + "Datadog", + "Dynatrace", + "EventBridge", + "Googleanalytics", + "Honeycode", + "Infornexus", + "LookoutMetrics", + "Marketo", + "Pardot", + "Redshift", + "S3", + "SAPOData", + "Salesforce", + "Servicenow", + "Singular", + "Slack", + "Snowflake", + "Trendmicro", + "Upsolver", + "Veeva", + "Zendesk",] +DataPullModeType = Literal["Complete", "Incremental"] +DataTransferApiTypeType = Literal["ASYNC", "AUTOMATIC", "SYNC"] +DatadogConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +DynatraceConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +ExecutionStatusType = Literal["CancelStarted", "Canceled", "Error", "InProgress", "Successful"] +FileTypeType = Literal["CSV", "JSON", "PARQUET"] +FlowStatusType = Literal["Active", "Deleted", "Deprecated", "Draft", "Errored", "Suspended"] +GoogleAnalyticsConnectorOperatorType = Literal["BETWEEN", "PROJECTION"] +InforNexusConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +MarketoConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "GREATER_THAN", + "LESS_THAN", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +OAuth2CustomPropTypeType = Literal["AUTH_URL", "TOKEN_URL"] +OAuth2GrantTypeType = Literal["AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"] +OperatorPropertiesKeysType = Literal["CONCAT_FORMAT", + "DATA_TYPE", + "DESTINATION_DATA_TYPE", + "EXCLUDE_SOURCE_FIELDS_LIST", + "INCLUDE_NEW_FIELDS", + "LOWER_BOUND", + "MASK_LENGTH", + "MASK_VALUE", + "MATH_OPERATION_FIELDS_ORDER", + "ORDERED_PARTITION_KEYS_LIST", + "SOURCE_DATA_TYPE", + "SUBFIELD_CATEGORY_MAP", + "TRUNCATE_LENGTH", + "UPPER_BOUND", + "VALIDATION_ACTION", + "VALUE", + "VALUES",] +OperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +OperatorsType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +PardotConnectorOperatorType = Literal["ADDITION", + "DIVISION", + "EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +PathPrefixType = Literal["EXECUTION_ID", "SCHEMA_VERSION"] +PrefixFormatType = Literal["DAY", "HOUR", "MINUTE", "MONTH", "YEAR"] +PrefixTypeType = Literal["FILENAME", "PATH", "PATH_AND_FILENAME"] +PrivateConnectionProvisioningFailureCauseType = Literal["ACCESS_DENIED", "CONNECTOR_AUTHENTICATION", "CONNECTOR_SERVER", "INTERNAL_SERVER", "VALIDATION"] +PrivateConnectionProvisioningStatusType = Literal["CREATED", "FAILED", "PENDING"] +S3ConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +S3InputFileTypeType = Literal["CSV", "JSON"] +SAPODataConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SalesforceConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SalesforceDataTransferApiType = Literal["AUTOMATIC", "BULKV2", "REST_SYNC"] +ScheduleFrequencyTypeType = Literal["BYMINUTE", "DAILY", "HOURLY", "MONTHLY", "ONCE", "WEEKLY"] +ServiceNowConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SingularConnectorOperatorType = Literal["ADDITION", + "DIVISION", + "EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SlackConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SupportedDataTransferTypeType = Literal["FILE", "RECORD"] +TaskTypeType = Literal["Arithmetic", + "Filter", + "Map", + "Map_all", + "Mask", + "Merge", + "Partition", + "Passthrough", + "Truncate", + "Validate",] +TrendmicroConnectorOperatorType = Literal["ADDITION", + "DIVISION", + "EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +TriggerTypeType = Literal["Event", "OnDemand", "Scheduled"] +VeevaConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +WriteOperationTypeType = Literal["DELETE", "INSERT", "UPDATE", "UPSERT"] +ZendeskConnectorOperatorType = Literal["ADDITION", + "DIVISION", + "GREATER_THAN", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +AppflowServiceName = Literal["appflow"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/appintegrations_classes.py b/aws_resource_validator/pydantic_models/appintegrations_classes.py new file mode 100644 index 00000000..88fa0aed --- /dev/null +++ b/aws_resource_validator/pydantic_models/appintegrations_classes.py @@ -0,0 +1,311 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appintegrations_constants import * + +class ApplicationAssociationSummaryTypeDef(BaseModel): + ApplicationAssociationArn: Optional[str] = None + ApplicationArn: Optional[str] = None + ClientId: Optional[str] = None + +class ExternalUrlConfigTypeDef(BaseModel): + AccessUrl: str + ApprovedOrigins: Optional[Sequence[str]] = None + +class ApplicationSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Namespace: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class PublicationTypeDef(BaseModel): + Event: str + Schema: str + Description: Optional[str] = None + +class SubscriptionTypeDef(BaseModel): + Event: str + Description: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class FileConfigurationTypeDef(BaseModel): + Folders: Sequence[str] + Filters: Optional[Mapping[str, Sequence[str]]] = None + +class ScheduleConfigurationTypeDef(BaseModel): + ScheduleExpression: str + FirstExecutionFrom: Optional[str] = None + Object: Optional[str] = None + +class EventFilterTypeDef(BaseModel): + Source: str + +class DataIntegrationAssociationSummaryTypeDef(BaseModel): + DataIntegrationAssociationArn: Optional[str] = None + DataIntegrationArn: Optional[str] = None + ClientId: Optional[str] = None + +class DataIntegrationSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + SourceURI: Optional[str] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + Arn: str + +class DeleteDataIntegrationRequestRequestTypeDef(BaseModel): + DataIntegrationIdentifier: str + +class DeleteEventIntegrationRequestRequestTypeDef(BaseModel): + Name: str + +class EventIntegrationAssociationTypeDef(BaseModel): + EventIntegrationAssociationArn: Optional[str] = None + EventIntegrationAssociationId: Optional[str] = None + EventIntegrationName: Optional[str] = None + ClientId: Optional[str] = None + EventBridgeRuleName: Optional[str] = None + ClientAssociationMetadata: Optional[Dict[str, str]] = None + +class GetApplicationRequestRequestTypeDef(BaseModel): + Arn: str + +class GetDataIntegrationRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetEventIntegrationRequestRequestTypeDef(BaseModel): + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationAssociationsRequestRequestTypeDef(BaseModel): + ApplicationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataIntegrationAssociationsRequestRequestTypeDef(BaseModel): + DataIntegrationIdentifier: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataIntegrationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEventIntegrationAssociationsRequestRequestTypeDef(BaseModel): + EventIntegrationName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEventIntegrationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateDataIntegrationRequestRequestTypeDef(BaseModel): + Identifier: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateEventIntegrationRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + +class ApplicationSourceConfigTypeDef(BaseModel): + ExternalUrlConfig: Optional[ExternalUrlConfigTypeDef] = None + +class CreateApplicationResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventIntegrationResponseTypeDef(BaseModel): + EventIntegrationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationAssociationsResponseTypeDef(BaseModel): + ApplicationAssociations: List[ApplicationAssociationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + Applications: List[ApplicationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataIntegrationRequestRequestTypeDef(BaseModel): + Name: str + KmsKey: str + SourceURI: str + Description: Optional[str] = None + ScheduleConfig: Optional[ScheduleConfigurationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + ClientToken: Optional[str] = None + FileConfiguration: Optional[FileConfigurationTypeDef] = None + ObjectConfiguration: Optional[Mapping[str, Mapping[str, Sequence[str]]]] = None + +class CreateDataIntegrationResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Description: str + KmsKey: str + SourceURI: str + ScheduleConfiguration: ScheduleConfigurationTypeDef + Tags: Dict[str, str] + ClientToken: str + FileConfiguration: FileConfigurationTypeDef + ObjectConfiguration: Dict[str, Dict[str, List[str]]] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataIntegrationResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Description: str + KmsKey: str + SourceURI: str + ScheduleConfiguration: ScheduleConfigurationTypeDef + Tags: Dict[str, str] + FileConfiguration: FileConfigurationTypeDef + ObjectConfiguration: Dict[str, Dict[str, List[str]]] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventIntegrationRequestRequestTypeDef(BaseModel): + Name: str + EventFilter: EventFilterTypeDef + EventBridgeBus: str + Description: Optional[str] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class EventIntegrationTypeDef(BaseModel): + EventIntegrationArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + EventFilter: Optional[EventFilterTypeDef] = None + EventBridgeBus: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class GetEventIntegrationResponseTypeDef(BaseModel): + Name: str + Description: str + EventIntegrationArn: str + EventBridgeBus: str + EventFilter: EventFilterTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataIntegrationAssociationsResponseTypeDef(BaseModel): + DataIntegrationAssociations: List[DataIntegrationAssociationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataIntegrationsResponseTypeDef(BaseModel): + DataIntegrations: List[DataIntegrationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventIntegrationAssociationsResponseTypeDef(BaseModel): + EventIntegrationAssociations: List[EventIntegrationAssociationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationAssociationsRequestListApplicationAssociationsPaginateTypeDef(BaseModel): + ApplicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataIntegrationAssociationsRequestListDataIntegrationAssociationsPaginateTypeDef(BaseModel): + DataIntegrationIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataIntegrationsRequestListDataIntegrationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventIntegrationAssociationsRequestListEventIntegrationAssociationsPaginateTypeDef(BaseModel): + EventIntegrationName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventIntegrationsRequestListEventIntegrationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + Name: str + Namespace: str + ApplicationSourceConfig: ApplicationSourceConfigTypeDef + Description: Optional[str] = None + Subscriptions: Optional[Sequence[SubscriptionTypeDef]] = None + Publications: Optional[Sequence[PublicationTypeDef]] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + Permissions: Optional[Sequence[str]] = None + +class GetApplicationResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Namespace: str + Description: str + ApplicationSourceConfig: ApplicationSourceConfigTypeDef + Subscriptions: List[SubscriptionTypeDef] + Publications: List[PublicationTypeDef] + CreatedTime: datetime + LastModifiedTime: datetime + Tags: Dict[str, str] + Permissions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + Description: Optional[str] = None + ApplicationSourceConfig: Optional[ApplicationSourceConfigTypeDef] = None + Subscriptions: Optional[Sequence[SubscriptionTypeDef]] = None + Publications: Optional[Sequence[PublicationTypeDef]] = None + Permissions: Optional[Sequence[str]] = None + +class ListEventIntegrationsResponseTypeDef(BaseModel): + EventIntegrations: List[EventIntegrationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appintegrations_constants.py b/aws_resource_validator/pydantic_models/appintegrations_constants.py new file mode 100644 index 00000000..7454f371 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appintegrations_constants.py @@ -0,0 +1,411 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListApplicationAssociationsPaginatorName = Literal["list_application_associations"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListDataIntegrationAssociationsPaginatorName = Literal["list_data_integration_associations"] +ListDataIntegrationsPaginatorName = Literal["list_data_integrations"] +ListEventIntegrationAssociationsPaginatorName = Literal["list_event_integration_associations"] +ListEventIntegrationsPaginatorName = Literal["list_event_integrations"] +AppIntegrationsServiceServiceName = Literal["appintegrations"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_application_associations", + "list_applications", + "list_data_integration_associations", + "list_data_integrations", + "list_event_integration_associations", + "list_event_integrations",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/application_autoscaling_classes.py b/aws_resource_validator/pydantic_models/application_autoscaling_classes.py new file mode 100644 index 00000000..2d49285b --- /dev/null +++ b/aws_resource_validator/pydantic_models/application_autoscaling_classes.py @@ -0,0 +1,380 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.application_autoscaling_constants import * + +class AlarmTypeDef(BaseModel): + AlarmName: str + AlarmARN: str + +class MetricDimensionTypeDef(BaseModel): + Name: str + Value: str + +class DeleteScalingPolicyRequestRequestTypeDef(BaseModel): + PolicyName: str + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + +class DeleteScheduledActionRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ScheduledActionName: str + ResourceId: str + ScalableDimension: ScalableDimensionType + +class DeregisterScalableTargetRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeScalableTargetsRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceIds: Optional[Sequence[str]] = None + ScalableDimension: Optional[ScalableDimensionType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DescribeScalingActivitiesRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IncludeNotScaledActivities: Optional[bool] = None + +class DescribeScalingPoliciesRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + PolicyNames: Optional[Sequence[str]] = None + ResourceId: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeScheduledActionsRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ScheduledActionNames: Optional[Sequence[str]] = None + ResourceId: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class NotScaledReasonTypeDef(BaseModel): + Code: str + MaxCapacity: Optional[int] = None + MinCapacity: Optional[int] = None + CurrentCapacity: Optional[int] = None + +class PredefinedMetricSpecificationTypeDef(BaseModel): + PredefinedMetricType: MetricTypeType + ResourceLabel: Optional[str] = None + +class ScalableTargetActionTypeDef(BaseModel): + MinCapacity: Optional[int] = None + MaxCapacity: Optional[int] = None + +class SuspendedStateTypeDef(BaseModel): + DynamicScalingInSuspended: Optional[bool] = None + DynamicScalingOutSuspended: Optional[bool] = None + ScheduledScalingSuspended: Optional[bool] = None + +class StepAdjustmentTypeDef(BaseModel): + ScalingAdjustment: int + MetricIntervalLowerBound: Optional[float] = None + MetricIntervalUpperBound: Optional[float] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Mapping[str, str] + +class TargetTrackingMetricDimensionTypeDef(BaseModel): + Name: str + Value: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class DescribeScalableTargetsRequestDescribeScalableTargetsPaginateTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceIds: Optional[Sequence[str]] = None + ScalableDimension: Optional[ScalableDimensionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScalingActivitiesRequestDescribeScalingActivitiesPaginateTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + IncludeNotScaledActivities: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScalingPoliciesRequestDescribeScalingPoliciesPaginateTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + PolicyNames: Optional[Sequence[str]] = None + ResourceId: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScheduledActionsRequestDescribeScheduledActionsPaginateTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ScheduledActionNames: Optional[Sequence[str]] = None + ResourceId: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutScalingPolicyResponseTypeDef(BaseModel): + PolicyARN: str + Alarms: List[AlarmTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterScalableTargetResponseTypeDef(BaseModel): + ScalableTargetARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class ScalingActivityTypeDef(BaseModel): + ActivityId: str + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + Description: str + Cause: str + StartTime: datetime + StatusCode: ScalingActivityStatusCodeType + EndTime: Optional[datetime] = None + StatusMessage: Optional[str] = None + Details: Optional[str] = None + NotScaledReasons: Optional[List[NotScaledReasonTypeDef]] = None + +class ScheduledActionTypeDef(BaseModel): + ScheduledActionName: str + ScheduledActionARN: str + ServiceNamespace: ServiceNamespaceType + Schedule: str + ResourceId: str + CreationTime: datetime + Timezone: Optional[str] = None + ScalableDimension: Optional[ScalableDimensionType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ScalableTargetAction: Optional[ScalableTargetActionTypeDef] = None + +class PutScheduledActionRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ScheduledActionName: str + ResourceId: str + ScalableDimension: ScalableDimensionType + Schedule: Optional[str] = None + Timezone: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + ScalableTargetAction: Optional[ScalableTargetActionTypeDef] = None + +class RegisterScalableTargetRequestRequestTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + MinCapacity: Optional[int] = None + MaxCapacity: Optional[int] = None + RoleARN: Optional[str] = None + SuspendedState: Optional[SuspendedStateTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class ScalableTargetTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + MinCapacity: int + MaxCapacity: int + RoleARN: str + CreationTime: datetime + SuspendedState: Optional[SuspendedStateTypeDef] = None + ScalableTargetARN: Optional[str] = None + +class StepScalingPolicyConfigurationExtraOutputTypeDef(BaseModel): + AdjustmentType: Optional[AdjustmentTypeType] = None + StepAdjustments: Optional[List[StepAdjustmentTypeDef]] = None + MinAdjustmentMagnitude: Optional[int] = None + Cooldown: Optional[int] = None + MetricAggregationType: Optional[MetricAggregationTypeType] = None + +class StepScalingPolicyConfigurationOutputTypeDef(BaseModel): + AdjustmentType: Optional[AdjustmentTypeType] = None + StepAdjustments: Optional[List[StepAdjustmentTypeDef]] = None + MinAdjustmentMagnitude: Optional[int] = None + Cooldown: Optional[int] = None + MetricAggregationType: Optional[MetricAggregationTypeType] = None + +class StepScalingPolicyConfigurationTypeDef(BaseModel): + AdjustmentType: Optional[AdjustmentTypeType] = None + StepAdjustments: Optional[Sequence[StepAdjustmentTypeDef]] = None + MinAdjustmentMagnitude: Optional[int] = None + Cooldown: Optional[int] = None + MetricAggregationType: Optional[MetricAggregationTypeType] = None + +class TargetTrackingMetricExtraOutputTypeDef(BaseModel): + Dimensions: Optional[List[TargetTrackingMetricDimensionTypeDef]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + +class TargetTrackingMetricOutputTypeDef(BaseModel): + Dimensions: Optional[List[TargetTrackingMetricDimensionTypeDef]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + +class TargetTrackingMetricTypeDef(BaseModel): + Dimensions: Optional[Sequence[TargetTrackingMetricDimensionTypeDef]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + +class DescribeScalingActivitiesResponseTypeDef(BaseModel): + ScalingActivities: List[ScalingActivityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeScheduledActionsResponseTypeDef(BaseModel): + ScheduledActions: List[ScheduledActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeScalableTargetsResponseTypeDef(BaseModel): + ScalableTargets: List[ScalableTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TargetTrackingMetricStatExtraOutputTypeDef(BaseModel): + Metric: TargetTrackingMetricExtraOutputTypeDef + Stat: str + Unit: Optional[str] = None + +class TargetTrackingMetricStatOutputTypeDef(BaseModel): + Metric: TargetTrackingMetricOutputTypeDef + Stat: str + Unit: Optional[str] = None + +class TargetTrackingMetricStatTypeDef(BaseModel): + Metric: TargetTrackingMetricTypeDef + Stat: str + Unit: Optional[str] = None + +class TargetTrackingMetricDataQueryExtraOutputTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + Label: Optional[str] = None + MetricStat: Optional[TargetTrackingMetricStatExtraOutputTypeDef] = None + ReturnData: Optional[bool] = None + +class TargetTrackingMetricDataQueryOutputTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + Label: Optional[str] = None + MetricStat: Optional[TargetTrackingMetricStatOutputTypeDef] = None + ReturnData: Optional[bool] = None + +class TargetTrackingMetricDataQueryTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + Label: Optional[str] = None + MetricStat: Optional[TargetTrackingMetricStatTypeDef] = None + ReturnData: Optional[bool] = None + +class CustomizedMetricSpecificationExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + Statistic: Optional[MetricStatisticType] = None + Unit: Optional[str] = None + Metrics: Optional[List[TargetTrackingMetricDataQueryExtraOutputTypeDef]] = None + +class CustomizedMetricSpecificationOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + Statistic: Optional[MetricStatisticType] = None + Unit: Optional[str] = None + Metrics: Optional[List[TargetTrackingMetricDataQueryOutputTypeDef]] = None + +class CustomizedMetricSpecificationTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[Sequence[MetricDimensionTypeDef]] = None + Statistic: Optional[MetricStatisticType] = None + Unit: Optional[str] = None + Metrics: Optional[Sequence[TargetTrackingMetricDataQueryTypeDef]] = None + +class TargetTrackingScalingPolicyConfigurationExtraOutputTypeDef(BaseModel): + TargetValue: float + PredefinedMetricSpecification: Optional[PredefinedMetricSpecificationTypeDef] = None + CustomizedMetricSpecification: Optional[ CustomizedMetricSpecificationExtraOutputTypeDef ] = None + ScaleOutCooldown: Optional[int] = None + ScaleInCooldown: Optional[int] = None + DisableScaleIn: Optional[bool] = None + +class TargetTrackingScalingPolicyConfigurationOutputTypeDef(BaseModel): + TargetValue: float + PredefinedMetricSpecification: Optional[PredefinedMetricSpecificationTypeDef] = None + CustomizedMetricSpecification: Optional[CustomizedMetricSpecificationOutputTypeDef] = None + ScaleOutCooldown: Optional[int] = None + ScaleInCooldown: Optional[int] = None + DisableScaleIn: Optional[bool] = None + +class TargetTrackingScalingPolicyConfigurationTypeDef(BaseModel): + TargetValue: float + PredefinedMetricSpecification: Optional[PredefinedMetricSpecificationTypeDef] = None + CustomizedMetricSpecification: Optional[CustomizedMetricSpecificationTypeDef] = None + ScaleOutCooldown: Optional[int] = None + ScaleInCooldown: Optional[int] = None + DisableScaleIn: Optional[bool] = None + +class ScalingPolicyTypeDef(BaseModel): + PolicyARN: str + PolicyName: str + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + PolicyType: PolicyTypeType + CreationTime: datetime + StepScalingPolicyConfiguration: Optional[StepScalingPolicyConfigurationOutputTypeDef] = None + TargetTrackingScalingPolicyConfiguration: Optional[ TargetTrackingScalingPolicyConfigurationOutputTypeDef ] = None + Alarms: Optional[List[AlarmTypeDef]] = None + +class PutScalingPolicyRequestRequestTypeDef(BaseModel): + PolicyName: str + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + PolicyType: Optional[PolicyTypeType] = None + StepScalingPolicyConfiguration: Optional[StepScalingPolicyConfigurationTypeDef] = None + TargetTrackingScalingPolicyConfiguration: Optional[ TargetTrackingScalingPolicyConfigurationTypeDef ] = None + +class DescribeScalingPoliciesResponseTypeDef(BaseModel): + ScalingPolicies: List[ScalingPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/application_autoscaling_constants.py b/aws_resource_validator/pydantic_models/application_autoscaling_constants.py new file mode 100644 index 00000000..4c7b4796 --- /dev/null +++ b/aws_resource_validator/pydantic_models/application_autoscaling_constants.py @@ -0,0 +1,507 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdjustmentTypeType = Literal["ChangeInCapacity", "ExactCapacity", "PercentChangeInCapacity"] +DescribeScalableTargetsPaginatorName = Literal["describe_scalable_targets"] +DescribeScalingActivitiesPaginatorName = Literal["describe_scaling_activities"] +DescribeScalingPoliciesPaginatorName = Literal["describe_scaling_policies"] +DescribeScheduledActionsPaginatorName = Literal["describe_scheduled_actions"] +MetricAggregationTypeType = Literal["Average", "Maximum", "Minimum"] +MetricStatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +MetricTypeType = Literal["ALBRequestCountPerTarget", + "AppStreamAverageCapacityUtilization", + "CassandraReadCapacityUtilization", + "CassandraWriteCapacityUtilization", + "ComprehendInferenceUtilization", + "DynamoDBReadCapacityUtilization", + "DynamoDBWriteCapacityUtilization", + "EC2SpotFleetRequestAverageCPUUtilization", + "EC2SpotFleetRequestAverageNetworkIn", + "EC2SpotFleetRequestAverageNetworkOut", + "ECSServiceAverageCPUUtilization", + "ECSServiceAverageMemoryUtilization", + "ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage", + "ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage", + "ElastiCachePrimaryEngineCPUUtilization", + "ElastiCacheReplicaEngineCPUUtilization", + "KafkaBrokerStorageUtilization", + "LambdaProvisionedConcurrencyUtilization", + "NeptuneReaderAverageCPUUtilization", + "RDSReaderAverageCPUUtilization", + "RDSReaderAverageDatabaseConnections", + "SageMakerInferenceComponentInvocationsPerCopy", + "SageMakerVariantInvocationsPerInstance", + "SageMakerVariantProvisionedConcurrencyUtilization", + "WorkSpacesAverageUserSessionsCapacityUtilization",] +PolicyTypeType = Literal["StepScaling", "TargetTrackingScaling"] +ScalableDimensionType = Literal["appstream:fleet:DesiredCapacity", + "cassandra:table:ReadCapacityUnits", + "cassandra:table:WriteCapacityUnits", + "comprehend:document-classifier-endpoint:DesiredInferenceUnits", + "comprehend:entity-recognizer-endpoint:DesiredInferenceUnits", + "custom-resource:ResourceType:Property", + "dynamodb:index:ReadCapacityUnits", + "dynamodb:index:WriteCapacityUnits", + "dynamodb:table:ReadCapacityUnits", + "dynamodb:table:WriteCapacityUnits", + "ec2:spot-fleet-request:TargetCapacity", + "ecs:service:DesiredCount", + "elasticache:replication-group:NodeGroups", + "elasticache:replication-group:Replicas", + "elasticmapreduce:instancegroup:InstanceCount", + "kafka:broker-storage:VolumeSize", + "lambda:function:ProvisionedConcurrency", + "neptune:cluster:ReadReplicaCount", + "rds:cluster:ReadReplicaCount", + "sagemaker:inference-component:DesiredCopyCount", + "sagemaker:variant:DesiredInstanceCount", + "sagemaker:variant:DesiredProvisionedConcurrency", + "workspaces:workspacespool:DesiredUserSessions",] +ScalingActivityStatusCodeType = Literal["Failed", "InProgress", "Overridden", "Pending", "Successful", "Unfulfilled"] +ServiceNamespaceType = Literal["appstream", + "cassandra", + "comprehend", + "custom-resource", + "dynamodb", + "ec2", + "ecs", + "elasticache", + "elasticmapreduce", + "kafka", + "lambda", + "neptune", + "rds", + "sagemaker", + "workspaces",] +ApplicationAutoScalingServiceName = Literal["application-autoscaling"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_scalable_targets", + "describe_scaling_activities", + "describe_scaling_policies", + "describe_scheduled_actions",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +StepScalingPolicyConfigurationUnionTypeDef = Union[ 'StepScalingPolicyConfigurationTypeDef', 'StepScalingPolicyConfigurationExtraOutputTypeDef' ] +TargetTrackingScalingPolicyConfigurationUnionTypeDef = Union[ 'TargetTrackingScalingPolicyConfigurationTypeDef', 'TargetTrackingScalingPolicyConfigurationExtraOutputTypeDef', ] diff --git a/aws_resource_validator/pydantic_models/application_insights_classes.py b/aws_resource_validator/pydantic_models/application_insights_classes.py new file mode 100644 index 00000000..28668cdf --- /dev/null +++ b/aws_resource_validator/pydantic_models/application_insights_classes.py @@ -0,0 +1,448 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.application_insights_constants import * + +class WorkloadConfigurationTypeDef(BaseModel): + WorkloadName: Optional[str] = None + Tier: Optional[TierType] = None + Configuration: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ApplicationComponentTypeDef(BaseModel): + ComponentName: Optional[str] = None + ComponentRemarks: Optional[str] = None + ResourceType: Optional[str] = None + OsType: Optional[OsTypeType] = None + Tier: Optional[TierType] = None + Monitor: Optional[bool] = None + DetectedWorkload: Optional[Dict[TierType, Dict[str, str]]] = None + +class ApplicationInfoTypeDef(BaseModel): + AccountId: Optional[str] = None + ResourceGroupName: Optional[str] = None + LifeCycle: Optional[str] = None + OpsItemSNSTopicArn: Optional[str] = None + OpsCenterEnabled: Optional[bool] = None + CWEMonitorEnabled: Optional[bool] = None + Remarks: Optional[str] = None + AutoConfigEnabled: Optional[bool] = None + DiscoveryType: Optional[DiscoveryTypeType] = None + AttachMissingPermission: Optional[bool] = None + +class ConfigurationEventTypeDef(BaseModel): + ResourceGroupName: Optional[str] = None + AccountId: Optional[str] = None + MonitoredResourceARN: Optional[str] = None + EventStatus: Optional[ConfigurationEventStatusType] = None + EventResourceType: Optional[ConfigurationEventResourceTypeType] = None + EventTime: Optional[datetime] = None + EventDetail: Optional[str] = None + EventResourceName: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateComponentRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + ResourceList: Sequence[str] + +class CreateLogPatternRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + PatternSetName: str + PatternName: str + Pattern: str + Rank: int + +class LogPatternTypeDef(BaseModel): + PatternSetName: Optional[str] = None + PatternName: Optional[str] = None + Pattern: Optional[str] = None + Rank: Optional[int] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + +class DeleteComponentRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + +class DeleteLogPatternRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + PatternSetName: str + PatternName: str + +class DescribeApplicationRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + AccountId: Optional[str] = None + +class DescribeComponentConfigurationRecommendationRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + Tier: TierType + WorkloadName: Optional[str] = None + RecommendationType: Optional[RecommendationTypeType] = None + +class DescribeComponentConfigurationRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + AccountId: Optional[str] = None + +class DescribeComponentRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + AccountId: Optional[str] = None + +class DescribeLogPatternRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + PatternSetName: str + PatternName: str + AccountId: Optional[str] = None + +class DescribeObservationRequestRequestTypeDef(BaseModel): + ObservationId: str + AccountId: Optional[str] = None + +class ObservationTypeDef(BaseModel): + Id: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + SourceType: Optional[str] = None + SourceARN: Optional[str] = None + LogGroup: Optional[str] = None + LineTime: Optional[datetime] = None + LogText: Optional[str] = None + LogFilter: Optional[LogFilterType] = None + MetricNamespace: Optional[str] = None + MetricName: Optional[str] = None + Unit: Optional[str] = None + Value: Optional[float] = None + CloudWatchEventId: Optional[str] = None + CloudWatchEventSource: Optional[CloudWatchEventSourceType] = None + CloudWatchEventDetailType: Optional[str] = None + HealthEventArn: Optional[str] = None + HealthService: Optional[str] = None + HealthEventTypeCode: Optional[str] = None + HealthEventTypeCategory: Optional[str] = None + HealthEventDescription: Optional[str] = None + CodeDeployDeploymentId: Optional[str] = None + CodeDeployDeploymentGroup: Optional[str] = None + CodeDeployState: Optional[str] = None + CodeDeployApplication: Optional[str] = None + CodeDeployInstanceGroupId: Optional[str] = None + Ec2State: Optional[str] = None + RdsEventCategories: Optional[str] = None + RdsEventMessage: Optional[str] = None + S3EventName: Optional[str] = None + StatesExecutionArn: Optional[str] = None + StatesArn: Optional[str] = None + StatesStatus: Optional[str] = None + StatesInput: Optional[str] = None + EbsEvent: Optional[str] = None + EbsResult: Optional[str] = None + EbsCause: Optional[str] = None + EbsRequestId: Optional[str] = None + XRayFaultPercent: Optional[int] = None + XRayThrottlePercent: Optional[int] = None + XRayErrorPercent: Optional[int] = None + XRayRequestCount: Optional[int] = None + XRayRequestAverageLatency: Optional[int] = None + XRayNodeName: Optional[str] = None + XRayNodeType: Optional[str] = None + +class DescribeProblemObservationsRequestRequestTypeDef(BaseModel): + ProblemId: str + AccountId: Optional[str] = None + +class DescribeProblemRequestRequestTypeDef(BaseModel): + ProblemId: str + AccountId: Optional[str] = None + +class ProblemTypeDef(BaseModel): + Id: Optional[str] = None + Title: Optional[str] = None + Insights: Optional[str] = None + Status: Optional[StatusType] = None + AffectedResource: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + SeverityLevel: Optional[SeverityLevelType] = None + AccountId: Optional[str] = None + ResourceGroupName: Optional[str] = None + Feedback: Optional[Dict[Literal["INSIGHTS_FEEDBACK"], FeedbackValueType]] = None + RecurringCount: Optional[int] = None + LastRecurrenceTime: Optional[datetime] = None + Visibility: Optional[VisibilityType] = None + ResolutionMethod: Optional[ResolutionMethodType] = None + +class DescribeWorkloadRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + WorkloadId: str + AccountId: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class ListComponentsRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class ListLogPatternSetsRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class ListLogPatternsRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + PatternSetName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListWorkloadsRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class WorkloadTypeDef(BaseModel): + WorkloadId: Optional[str] = None + ComponentName: Optional[str] = None + WorkloadName: Optional[str] = None + Tier: Optional[TierType] = None + WorkloadRemarks: Optional[str] = None + +class RemoveWorkloadRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + WorkloadId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + OpsCenterEnabled: Optional[bool] = None + CWEMonitorEnabled: Optional[bool] = None + OpsItemSNSTopicArn: Optional[str] = None + RemoveSNSTopic: Optional[bool] = None + AutoConfigEnabled: Optional[bool] = None + AttachMissingPermission: Optional[bool] = None + +class UpdateComponentConfigurationRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + Monitor: Optional[bool] = None + Tier: Optional[TierType] = None + ComponentConfiguration: Optional[str] = None + AutoConfigEnabled: Optional[bool] = None + +class UpdateComponentRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + NewComponentName: Optional[str] = None + ResourceList: Optional[Sequence[str]] = None + +class UpdateLogPatternRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + PatternSetName: str + PatternName: str + Pattern: Optional[str] = None + Rank: Optional[int] = None + +class UpdateProblemRequestRequestTypeDef(BaseModel): + ProblemId: str + UpdateStatus: Optional[Literal["RESOLVED"]] = None + Visibility: Optional[VisibilityType] = None + +class AddWorkloadRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + WorkloadConfiguration: WorkloadConfigurationTypeDef + +class UpdateWorkloadRequestRequestTypeDef(BaseModel): + ResourceGroupName: str + ComponentName: str + WorkloadConfiguration: WorkloadConfigurationTypeDef + WorkloadId: Optional[str] = None + +class AddWorkloadResponseTypeDef(BaseModel): + WorkloadId: str + WorkloadConfiguration: WorkloadConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeComponentConfigurationRecommendationResponseTypeDef(BaseModel): + ComponentConfiguration: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeComponentConfigurationResponseTypeDef(BaseModel): + Monitor: bool + Tier: TierType + ComponentConfiguration: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkloadResponseTypeDef(BaseModel): + WorkloadId: str + WorkloadRemarks: str + WorkloadConfiguration: WorkloadConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLogPatternSetsResponseTypeDef(BaseModel): + ResourceGroupName: str + AccountId: str + LogPatternSets: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkloadResponseTypeDef(BaseModel): + WorkloadId: str + WorkloadConfiguration: WorkloadConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeComponentResponseTypeDef(BaseModel): + ApplicationComponent: ApplicationComponentTypeDef + ResourceList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListComponentsResponseTypeDef(BaseModel): + ApplicationComponentList: List[ApplicationComponentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationResponseTypeDef(BaseModel): + ApplicationInfo: ApplicationInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationResponseTypeDef(BaseModel): + ApplicationInfo: ApplicationInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + ApplicationInfoList: List[ApplicationInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationResponseTypeDef(BaseModel): + ApplicationInfo: ApplicationInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationHistoryResponseTypeDef(BaseModel): + EventList: List[ConfigurationEventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationRequestRequestTypeDef(BaseModel): + ResourceGroupName: Optional[str] = None + OpsCenterEnabled: Optional[bool] = None + CWEMonitorEnabled: Optional[bool] = None + OpsItemSNSTopicArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AutoConfigEnabled: Optional[bool] = None + AutoCreate: Optional[bool] = None + GroupingType: Optional[Literal["ACCOUNT_BASED"]] = None + AttachMissingPermission: Optional[bool] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateLogPatternResponseTypeDef(BaseModel): + LogPattern: LogPatternTypeDef + ResourceGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLogPatternResponseTypeDef(BaseModel): + ResourceGroupName: str + AccountId: str + LogPattern: LogPatternTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLogPatternsResponseTypeDef(BaseModel): + ResourceGroupName: str + AccountId: str + LogPatterns: List[LogPatternTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLogPatternResponseTypeDef(BaseModel): + ResourceGroupName: str + LogPattern: LogPatternTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeObservationResponseTypeDef(BaseModel): + Observation: ObservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RelatedObservationsTypeDef(BaseModel): + ObservationList: Optional[List[ObservationTypeDef]] = None + +class DescribeProblemResponseTypeDef(BaseModel): + Problem: ProblemTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProblemsResponseTypeDef(BaseModel): + ProblemList: List[ProblemTypeDef] + NextToken: str + ResourceGroupName: str + AccountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationHistoryRequestRequestTypeDef(BaseModel): + ResourceGroupName: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + EventStatus: Optional[ConfigurationEventStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class ListProblemsRequestRequestTypeDef(BaseModel): + AccountId: Optional[str] = None + ResourceGroupName: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ComponentName: Optional[str] = None + Visibility: Optional[VisibilityType] = None + +class ListWorkloadsResponseTypeDef(BaseModel): + WorkloadList: List[WorkloadTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProblemObservationsResponseTypeDef(BaseModel): + RelatedObservations: RelatedObservationsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/application_insights_constants.py b/aws_resource_validator/pydantic_models/application_insights_constants.py new file mode 100644 index 00000000..25958bc1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/application_insights_constants.py @@ -0,0 +1,451 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CloudWatchEventSourceType = Literal["CODE_DEPLOY", "EC2", "HEALTH", "RDS"] +ConfigurationEventResourceTypeType = Literal["CLOUDFORMATION", "CLOUDWATCH_ALARM", "CLOUDWATCH_LOG", "SSM_ASSOCIATION"] +ConfigurationEventStatusType = Literal["ERROR", "INFO", "WARN"] +DiscoveryTypeType = Literal["ACCOUNT_BASED", "RESOURCE_GROUP_BASED"] +FeedbackKeyType = Literal["INSIGHTS_FEEDBACK"] +FeedbackValueType = Literal["NOT_SPECIFIED", "NOT_USEFUL", "USEFUL"] +GroupingTypeType = Literal["ACCOUNT_BASED"] +LogFilterType = Literal["ERROR", "INFO", "WARN"] +OsTypeType = Literal["LINUX", "WINDOWS"] +RecommendationTypeType = Literal["ALL", "INFRA_ONLY", "WORKLOAD_ONLY"] +ResolutionMethodType = Literal["AUTOMATIC", "MANUAL", "UNRESOLVED"] +SeverityLevelType = Literal["High", "Informative", "Low", "Medium"] +StatusType = Literal["IGNORE", "PENDING", "RECOVERING", "RECURRING", "RESOLVED"] +TierType = Literal["ACTIVE_DIRECTORY", + "CUSTOM", + "DEFAULT", + "DOT_NET_CORE", + "DOT_NET_WEB", + "DOT_NET_WEB_TIER", + "DOT_NET_WORKER", + "JAVA_JMX", + "MYSQL", + "ORACLE", + "POSTGRESQL", + "SAP_HANA_HIGH_AVAILABILITY", + "SAP_HANA_MULTI_NODE", + "SAP_HANA_SINGLE_NODE", + "SAP_NETWEAVER_DISTRIBUTED", + "SAP_NETWEAVER_HIGH_AVAILABILITY", + "SAP_NETWEAVER_STANDARD", + "SHAREPOINT", + "SQL_SERVER", + "SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP", + "SQL_SERVER_FAILOVER_CLUSTER_INSTANCE",] +UpdateStatusType = Literal["RESOLVED"] +VisibilityType = Literal["IGNORED", "VISIBLE"] +ApplicationInsightsServiceName = Literal["application-insights"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/application_signals_classes.py b/aws_resource_validator/pydantic_models/application_signals_classes.py new file mode 100644 index 00000000..d7a867ae --- /dev/null +++ b/aws_resource_validator/pydantic_models/application_signals_classes.py @@ -0,0 +1,354 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.application_signals_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ServiceLevelObjectiveBudgetReportErrorTypeDef(BaseModel): + Name: str + Arn: str + ErrorCode: str + ErrorMessage: str + +class CalendarIntervalOutputTypeDef(BaseModel): + StartTime: datetime + DurationUnit: DurationUnitType + Duration: int + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteServiceLevelObjectiveInputRequestTypeDef(BaseModel): + Id: str + +class DimensionTypeDef(BaseModel): + Name: str + Value: str + +class GetServiceLevelObjectiveInputRequestTypeDef(BaseModel): + Id: str + +class RollingIntervalTypeDef(BaseModel): + DurationUnit: DurationUnitType + Duration: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListServiceLevelObjectivesInputRequestTypeDef(BaseModel): + KeyAttributes: Optional[Mapping[str, str]] = None + OperationName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ServiceLevelObjectiveSummaryTypeDef(BaseModel): + Arn: str + Name: str + KeyAttributes: Optional[Dict[str, str]] = None + OperationName: Optional[str] = None + CreatedTime: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class BatchGetServiceLevelObjectiveBudgetReportInputRequestTypeDef(BaseModel): + Timestamp: TimestampTypeDef + SloIds: Sequence[str] + +class CalendarIntervalTypeDef(BaseModel): + StartTime: TimestampTypeDef + DurationUnit: DurationUnitType + Duration: int + +class GetServiceInputRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + +class ListServiceDependenciesInputRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServiceDependentsInputRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServiceOperationsInputRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServicesInputRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class MetricOutputTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + +class MetricReferenceTypeDef(BaseModel): + Namespace: str + MetricType: str + MetricName: str + Dimensions: Optional[List[DimensionTypeDef]] = None + +class MetricTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + +class IntervalOutputTypeDef(BaseModel): + RollingInterval: Optional[RollingIntervalTypeDef] = None + CalendarInterval: Optional[CalendarIntervalOutputTypeDef] = None + +class ListServiceDependenciesInputListServiceDependenciesPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceDependentsInputListServiceDependentsPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceLevelObjectivesInputListServiceLevelObjectivesPaginateTypeDef(BaseModel): + KeyAttributes: Optional[Mapping[str, str]] = None + OperationName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceOperationsInputListServiceOperationsPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + KeyAttributes: Mapping[str, str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesInputListServicesPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceLevelObjectivesOutputTypeDef(BaseModel): + SloSummaries: List[ServiceLevelObjectiveSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class IntervalTypeDef(BaseModel): + RollingInterval: Optional[RollingIntervalTypeDef] = None + CalendarInterval: Optional[CalendarIntervalTypeDef] = None + +class MetricStatOutputTypeDef(BaseModel): + Metric: MetricOutputTypeDef + Period: int + Stat: str + Unit: Optional[StandardUnitType] = None + +class ServiceDependencyTypeDef(BaseModel): + OperationName: str + DependencyKeyAttributes: Dict[str, str] + DependencyOperationName: str + MetricReferences: List[MetricReferenceTypeDef] + +class ServiceDependentTypeDef(BaseModel): + DependentKeyAttributes: Dict[str, str] + MetricReferences: List[MetricReferenceTypeDef] + OperationName: Optional[str] = None + DependentOperationName: Optional[str] = None + +class ServiceOperationTypeDef(BaseModel): + Name: str + MetricReferences: List[MetricReferenceTypeDef] + +class ServiceSummaryTypeDef(BaseModel): + KeyAttributes: Dict[str, str] + MetricReferences: List[MetricReferenceTypeDef] + AttributeMaps: Optional[List[Dict[str, str]]] = None + +class ServiceTypeDef(BaseModel): + KeyAttributes: Dict[str, str] + MetricReferences: List[MetricReferenceTypeDef] + AttributeMaps: Optional[List[Dict[str, str]]] = None + +class MetricStatTypeDef(BaseModel): + Metric: MetricTypeDef + Period: int + Stat: str + Unit: Optional[StandardUnitType] = None + +class GoalOutputTypeDef(BaseModel): + Interval: Optional[IntervalOutputTypeDef] = None + AttainmentGoal: Optional[float] = None + WarningThreshold: Optional[float] = None + +class GoalTypeDef(BaseModel): + Interval: Optional[IntervalTypeDef] = None + AttainmentGoal: Optional[float] = None + WarningThreshold: Optional[float] = None + +class MetricDataQueryOutputTypeDef(BaseModel): + Id: str + MetricStat: Optional[MetricStatOutputTypeDef] = None + Expression: Optional[str] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + Period: Optional[int] = None + AccountId: Optional[str] = None + +class ListServiceDependenciesOutputTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + ServiceDependencies: List[ServiceDependencyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListServiceDependentsOutputTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + ServiceDependents: List[ServiceDependentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListServiceOperationsOutputTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + ServiceOperations: List[ServiceOperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListServicesOutputTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + ServiceSummaries: List[ServiceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetServiceOutputTypeDef(BaseModel): + Service: ServiceTypeDef + StartTime: datetime + EndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class MetricDataQueryTypeDef(BaseModel): + Id: str + MetricStat: Optional[MetricStatTypeDef] = None + Expression: Optional[str] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + Period: Optional[int] = None + AccountId: Optional[str] = None + +class ServiceLevelIndicatorMetricTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryOutputTypeDef] + KeyAttributes: Optional[Dict[str, str]] = None + OperationName: Optional[str] = None + MetricType: Optional[ServiceLevelIndicatorMetricTypeType] = None + +class ServiceLevelIndicatorMetricConfigTypeDef(BaseModel): + KeyAttributes: Optional[Mapping[str, str]] = None + OperationName: Optional[str] = None + MetricType: Optional[ServiceLevelIndicatorMetricTypeType] = None + Statistic: Optional[str] = None + PeriodSeconds: Optional[int] = None + MetricDataQueries: Optional[Sequence[MetricDataQueryTypeDef]] = None + +class ServiceLevelIndicatorTypeDef(BaseModel): + SliMetric: ServiceLevelIndicatorMetricTypeDef + MetricThreshold: float + ComparisonOperator: ServiceLevelIndicatorComparisonOperatorType + +class ServiceLevelIndicatorConfigTypeDef(BaseModel): + SliMetricConfig: ServiceLevelIndicatorMetricConfigTypeDef + MetricThreshold: float + ComparisonOperator: ServiceLevelIndicatorComparisonOperatorType + +class ServiceLevelObjectiveBudgetReportTypeDef(BaseModel): + Arn: str + Name: str + BudgetStatus: ServiceLevelObjectiveBudgetStatusType + Attainment: Optional[float] = None + TotalBudgetSeconds: Optional[int] = None + BudgetSecondsRemaining: Optional[int] = None + Sli: Optional[ServiceLevelIndicatorTypeDef] = None + Goal: Optional[GoalOutputTypeDef] = None + +class ServiceLevelObjectiveTypeDef(BaseModel): + Arn: str + Name: str + CreatedTime: datetime + LastUpdatedTime: datetime + Sli: ServiceLevelIndicatorTypeDef + Goal: GoalOutputTypeDef + Description: Optional[str] = None + +class CreateServiceLevelObjectiveInputRequestTypeDef(BaseModel): + Name: str + SliConfig: ServiceLevelIndicatorConfigTypeDef + Description: Optional[str] = None + Goal: Optional[GoalTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateServiceLevelObjectiveInputRequestTypeDef(BaseModel): + Id: str + Description: Optional[str] = None + SliConfig: Optional[ServiceLevelIndicatorConfigTypeDef] = None + Goal: Optional[GoalTypeDef] = None + +class BatchGetServiceLevelObjectiveBudgetReportOutputTypeDef(BaseModel): + Timestamp: datetime + Reports: List[ServiceLevelObjectiveBudgetReportTypeDef] + Errors: List[ServiceLevelObjectiveBudgetReportErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceLevelObjectiveOutputTypeDef(BaseModel): + Slo: ServiceLevelObjectiveTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceLevelObjectiveOutputTypeDef(BaseModel): + Slo: ServiceLevelObjectiveTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceLevelObjectiveOutputTypeDef(BaseModel): + Slo: ServiceLevelObjectiveTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/application_signals_constants.py b/aws_resource_validator/pydantic_models/application_signals_constants.py new file mode 100644 index 00000000..bf78781e --- /dev/null +++ b/aws_resource_validator/pydantic_models/application_signals_constants.py @@ -0,0 +1,441 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DurationUnitType = Literal["DAY", "MONTH"] +ListServiceDependenciesPaginatorName = Literal["list_service_dependencies"] +ListServiceDependentsPaginatorName = Literal["list_service_dependents"] +ListServiceLevelObjectivesPaginatorName = Literal["list_service_level_objectives"] +ListServiceOperationsPaginatorName = Literal["list_service_operations"] +ListServicesPaginatorName = Literal["list_services"] +ServiceLevelIndicatorComparisonOperatorType = Literal["GreaterThan", "GreaterThanOrEqualTo", "LessThan", "LessThanOrEqualTo"] +ServiceLevelIndicatorMetricTypeType = Literal["AVAILABILITY", "LATENCY"] +ServiceLevelObjectiveBudgetStatusType = Literal["BREACHED", "INSUFFICIENT_DATA", "OK", "WARNING"] +StandardUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +CloudWatchApplicationSignalsServiceName = Literal["application-signals"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_service_dependencies", + "list_service_dependents", + "list_service_level_objectives", + "list_service_operations", + "list_services",] +TimestampTypeDef = Union[datetime, str] +GoalUnionTypeDef = Union['GoalTypeDef', 'GoalOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/applicationcostprofiler_classes.py b/aws_resource_validator/pydantic_models/applicationcostprofiler_classes.py new file mode 100644 index 00000000..7a9514e8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/applicationcostprofiler_classes.py @@ -0,0 +1,104 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.applicationcostprofiler_constants import * + +class DeleteReportDefinitionRequestRequestTypeDef(BaseModel): + reportId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetReportDefinitionRequestRequestTypeDef(BaseModel): + reportId: str + +class S3LocationTypeDef(BaseModel): + bucket: str + prefix: str + +class SourceS3LocationTypeDef(BaseModel): + bucket: str + key: str + region: Optional[S3BucketRegionType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListReportDefinitionsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DeleteReportDefinitionResultTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportApplicationUsageResultTypeDef(BaseModel): + importId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutReportDefinitionResultTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReportDefinitionResultTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReportDefinitionResultTypeDef(BaseModel): + reportId: str + reportDescription: str + reportFrequency: ReportFrequencyType + format: FormatType + destinationS3Location: S3LocationTypeDef + createdAt: datetime + lastUpdated: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutReportDefinitionRequestRequestTypeDef(BaseModel): + reportId: str + reportDescription: str + reportFrequency: ReportFrequencyType + format: FormatType + destinationS3Location: S3LocationTypeDef + +class ReportDefinitionTypeDef(BaseModel): + reportId: Optional[str] = None + reportDescription: Optional[str] = None + reportFrequency: Optional[ReportFrequencyType] = None + format: Optional[FormatType] = None + destinationS3Location: Optional[S3LocationTypeDef] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + +class UpdateReportDefinitionRequestRequestTypeDef(BaseModel): + reportId: str + reportDescription: str + reportFrequency: ReportFrequencyType + format: FormatType + destinationS3Location: S3LocationTypeDef + +class ImportApplicationUsageRequestRequestTypeDef(BaseModel): + sourceS3Location: SourceS3LocationTypeDef + +class ListReportDefinitionsRequestListReportDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReportDefinitionsResultTypeDef(BaseModel): + reportDefinitions: List[ReportDefinitionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/applicationcostprofiler_constants.py b/aws_resource_validator/pydantic_models/applicationcostprofiler_constants.py new file mode 100644 index 00000000..c5ece62c --- /dev/null +++ b/aws_resource_validator/pydantic_models/applicationcostprofiler_constants.py @@ -0,0 +1,393 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +FormatType = Literal["CSV", "PARQUET"] +ListReportDefinitionsPaginatorName = Literal["list_report_definitions"] +ReportFrequencyType = Literal["ALL", "DAILY", "MONTHLY"] +S3BucketRegionType = Literal["af-south-1", "ap-east-1", "eu-south-1", "me-south-1"] +ApplicationCostProfilerServiceName = Literal["applicationcostprofiler"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_report_definitions"] diff --git a/aws_resource_validator/pydantic_models/appmesh_classes.py b/aws_resource_validator/pydantic_models/appmesh_classes.py new file mode 100644 index 00000000..6e11db87 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appmesh_classes.py @@ -0,0 +1,1119 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appmesh_constants import * + +class AwsCloudMapInstanceAttributeTypeDef(BaseModel): + key: str + value: str + +class ListenerTlsFileCertificateTypeDef(BaseModel): + certificateChain: str + privateKey: str + +class ListenerTlsSdsCertificateTypeDef(BaseModel): + secretName: str + +class TagRefTypeDef(BaseModel): + key: str + value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteGatewayRouteInputRequestTypeDef(BaseModel): + gatewayRouteName: str + meshName: str + virtualGatewayName: str + meshOwner: Optional[str] = None + +class DeleteMeshInputRequestTypeDef(BaseModel): + meshName: str + +class DeleteRouteInputRequestTypeDef(BaseModel): + meshName: str + routeName: str + virtualRouterName: str + meshOwner: Optional[str] = None + +class DeleteVirtualGatewayInputRequestTypeDef(BaseModel): + meshName: str + virtualGatewayName: str + meshOwner: Optional[str] = None + +class DeleteVirtualNodeInputRequestTypeDef(BaseModel): + meshName: str + virtualNodeName: str + meshOwner: Optional[str] = None + +class DeleteVirtualRouterInputRequestTypeDef(BaseModel): + meshName: str + virtualRouterName: str + meshOwner: Optional[str] = None + +class DeleteVirtualServiceInputRequestTypeDef(BaseModel): + meshName: str + virtualServiceName: str + meshOwner: Optional[str] = None + +class DescribeGatewayRouteInputRequestTypeDef(BaseModel): + gatewayRouteName: str + meshName: str + virtualGatewayName: str + meshOwner: Optional[str] = None + +class DescribeMeshInputRequestTypeDef(BaseModel): + meshName: str + meshOwner: Optional[str] = None + +class DescribeRouteInputRequestTypeDef(BaseModel): + meshName: str + routeName: str + virtualRouterName: str + meshOwner: Optional[str] = None + +class DescribeVirtualGatewayInputRequestTypeDef(BaseModel): + meshName: str + virtualGatewayName: str + meshOwner: Optional[str] = None + +class DescribeVirtualNodeInputRequestTypeDef(BaseModel): + meshName: str + virtualNodeName: str + meshOwner: Optional[str] = None + +class DescribeVirtualRouterInputRequestTypeDef(BaseModel): + meshName: str + virtualRouterName: str + meshOwner: Optional[str] = None + +class DescribeVirtualServiceInputRequestTypeDef(BaseModel): + meshName: str + virtualServiceName: str + meshOwner: Optional[str] = None + +class DnsServiceDiscoveryTypeDef(BaseModel): + hostname: str + ipPreference: Optional[IpPreferenceType] = None + responseType: Optional[DnsResponseTypeType] = None + +class DurationTypeDef(BaseModel): + unit: Optional[DurationUnitType] = None + value: Optional[int] = None + +class EgressFilterTypeDef(BaseModel): + type: EgressFilterTypeType + +class GatewayRouteStatusTypeDef(BaseModel): + status: GatewayRouteStatusCodeType + +class ResourceMetadataTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshOwner: str + resourceOwner: str + uid: str + version: int + +class GatewayRouteHostnameMatchTypeDef(BaseModel): + exact: Optional[str] = None + suffix: Optional[str] = None + +class GatewayRouteHostnameRewriteTypeDef(BaseModel): + defaultTargetHostname: Optional[DefaultGatewayRouteRewriteType] = None + +class GatewayRouteRefTypeDef(BaseModel): + arn: str + createdAt: datetime + gatewayRouteName: str + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + version: int + virtualGatewayName: str + +class GatewayRouteVirtualServiceTypeDef(BaseModel): + virtualServiceName: str + +class MatchRangeTypeDef(BaseModel): + end: int + start: int + +class WeightedTargetTypeDef(BaseModel): + virtualNode: str + weight: int + port: Optional[int] = None + +class HealthCheckPolicyTypeDef(BaseModel): + healthyThreshold: int + intervalMillis: int + protocol: PortProtocolType + timeoutMillis: int + unhealthyThreshold: int + path: Optional[str] = None + port: Optional[int] = None + +class HttpPathMatchTypeDef(BaseModel): + exact: Optional[str] = None + regex: Optional[str] = None + +class HttpGatewayRoutePathRewriteTypeDef(BaseModel): + exact: Optional[str] = None + +class HttpGatewayRoutePrefixRewriteTypeDef(BaseModel): + defaultPrefix: Optional[DefaultGatewayRouteRewriteType] = None + value: Optional[str] = None + +class QueryParameterMatchTypeDef(BaseModel): + exact: Optional[str] = None + +class JsonFormatRefTypeDef(BaseModel): + key: str + value: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListGatewayRoutesInputRequestTypeDef(BaseModel): + meshName: str + virtualGatewayName: str + limit: Optional[int] = None + meshOwner: Optional[str] = None + nextToken: Optional[str] = None + +class ListMeshesInputRequestTypeDef(BaseModel): + limit: Optional[int] = None + nextToken: Optional[str] = None + +class MeshRefTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + version: int + +class ListRoutesInputRequestTypeDef(BaseModel): + meshName: str + virtualRouterName: str + limit: Optional[int] = None + meshOwner: Optional[str] = None + nextToken: Optional[str] = None + +class RouteRefTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + routeName: str + version: int + virtualRouterName: str + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + limit: Optional[int] = None + nextToken: Optional[str] = None + +class ListVirtualGatewaysInputRequestTypeDef(BaseModel): + meshName: str + limit: Optional[int] = None + meshOwner: Optional[str] = None + nextToken: Optional[str] = None + +class VirtualGatewayRefTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + version: int + virtualGatewayName: str + +class ListVirtualNodesInputRequestTypeDef(BaseModel): + meshName: str + limit: Optional[int] = None + meshOwner: Optional[str] = None + nextToken: Optional[str] = None + +class VirtualNodeRefTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + version: int + virtualNodeName: str + +class ListVirtualRoutersInputRequestTypeDef(BaseModel): + meshName: str + limit: Optional[int] = None + meshOwner: Optional[str] = None + nextToken: Optional[str] = None + +class VirtualRouterRefTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + version: int + virtualRouterName: str + +class ListVirtualServicesInputRequestTypeDef(BaseModel): + meshName: str + limit: Optional[int] = None + meshOwner: Optional[str] = None + nextToken: Optional[str] = None + +class VirtualServiceRefTypeDef(BaseModel): + arn: str + createdAt: datetime + lastUpdatedAt: datetime + meshName: str + meshOwner: str + resourceOwner: str + version: int + virtualServiceName: str + +class ListenerTlsAcmCertificateTypeDef(BaseModel): + certificateArn: str + +class TlsValidationContextFileTrustTypeDef(BaseModel): + certificateChain: str + +class TlsValidationContextSdsTrustTypeDef(BaseModel): + secretName: str + +class PortMappingTypeDef(BaseModel): + port: int + protocol: PortProtocolType + +class MeshStatusTypeDef(BaseModel): + status: Optional[MeshStatusCodeType] = None + +class MeshServiceDiscoveryTypeDef(BaseModel): + ipPreference: Optional[IpPreferenceType] = None + +class RouteStatusTypeDef(BaseModel): + status: RouteStatusCodeType + +class SubjectAlternativeNameMatchersTypeDef(BaseModel): + exact: Sequence[str] + +class TcpRouteMatchTypeDef(BaseModel): + port: Optional[int] = None + +class TlsValidationContextAcmTrustTypeDef(BaseModel): + certificateAuthorityArns: Sequence[str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class VirtualGatewayListenerTlsFileCertificateTypeDef(BaseModel): + certificateChain: str + privateKey: str + +class VirtualGatewayListenerTlsSdsCertificateTypeDef(BaseModel): + secretName: str + +class VirtualGatewayGrpcConnectionPoolTypeDef(BaseModel): + maxRequests: int + +class VirtualGatewayHttp2ConnectionPoolTypeDef(BaseModel): + maxRequests: int + +class VirtualGatewayHttpConnectionPoolTypeDef(BaseModel): + maxConnections: int + maxPendingRequests: Optional[int] = None + +class VirtualGatewayStatusTypeDef(BaseModel): + status: VirtualGatewayStatusCodeType + +class VirtualGatewayHealthCheckPolicyTypeDef(BaseModel): + healthyThreshold: int + intervalMillis: int + protocol: VirtualGatewayPortProtocolType + timeoutMillis: int + unhealthyThreshold: int + path: Optional[str] = None + port: Optional[int] = None + +class VirtualGatewayListenerTlsAcmCertificateTypeDef(BaseModel): + certificateArn: str + +class VirtualGatewayTlsValidationContextFileTrustTypeDef(BaseModel): + certificateChain: str + +class VirtualGatewayTlsValidationContextSdsTrustTypeDef(BaseModel): + secretName: str + +class VirtualGatewayPortMappingTypeDef(BaseModel): + port: int + protocol: VirtualGatewayPortProtocolType + +class VirtualGatewayTlsValidationContextAcmTrustTypeDef(BaseModel): + certificateAuthorityArns: Sequence[str] + +class VirtualNodeGrpcConnectionPoolTypeDef(BaseModel): + maxRequests: int + +class VirtualNodeHttp2ConnectionPoolTypeDef(BaseModel): + maxRequests: int + +class VirtualNodeHttpConnectionPoolTypeDef(BaseModel): + maxConnections: int + maxPendingRequests: Optional[int] = None + +class VirtualNodeTcpConnectionPoolTypeDef(BaseModel): + maxConnections: int + +class VirtualNodeStatusTypeDef(BaseModel): + status: VirtualNodeStatusCodeType + +class VirtualNodeServiceProviderTypeDef(BaseModel): + virtualNodeName: str + +class VirtualRouterStatusTypeDef(BaseModel): + status: VirtualRouterStatusCodeType + +class VirtualRouterServiceProviderTypeDef(BaseModel): + virtualRouterName: str + +class VirtualServiceStatusTypeDef(BaseModel): + status: VirtualServiceStatusCodeType + +class AwsCloudMapServiceDiscoveryTypeDef(BaseModel): + namespaceName: str + serviceName: str + attributes: Optional[Sequence[AwsCloudMapInstanceAttributeTypeDef]] = None + ipPreference: Optional[IpPreferenceType] = None + +class ClientTlsCertificateTypeDef(BaseModel): + file: Optional[ListenerTlsFileCertificateTypeDef] = None + sds: Optional[ListenerTlsSdsCertificateTypeDef] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagRefTypeDef] + +class ListTagsForResourceOutputTypeDef(BaseModel): + nextToken: str + tags: List[TagRefTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GrpcRetryPolicyTypeDef(BaseModel): + maxRetries: int + perRetryTimeout: DurationTypeDef + grpcRetryEvents: Optional[Sequence[GrpcRetryPolicyEventType]] = None + httpRetryEvents: Optional[Sequence[str]] = None + tcpRetryEvents: Optional[Sequence[Literal["connection-error"]]] = None + +class GrpcTimeoutTypeDef(BaseModel): + idle: Optional[DurationTypeDef] = None + perRequest: Optional[DurationTypeDef] = None + +class HttpRetryPolicyTypeDef(BaseModel): + maxRetries: int + perRetryTimeout: DurationTypeDef + httpRetryEvents: Optional[Sequence[str]] = None + tcpRetryEvents: Optional[Sequence[Literal["connection-error"]]] = None + +class HttpTimeoutTypeDef(BaseModel): + idle: Optional[DurationTypeDef] = None + perRequest: Optional[DurationTypeDef] = None + +class OutlierDetectionTypeDef(BaseModel): + baseEjectionDuration: DurationTypeDef + interval: DurationTypeDef + maxEjectionPercent: int + maxServerErrors: int + +class TcpTimeoutTypeDef(BaseModel): + idle: Optional[DurationTypeDef] = None + +class GrpcGatewayRouteRewriteTypeDef(BaseModel): + hostname: Optional[GatewayRouteHostnameRewriteTypeDef] = None + +class ListGatewayRoutesOutputTypeDef(BaseModel): + gatewayRoutes: List[GatewayRouteRefTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GatewayRouteTargetTypeDef(BaseModel): + virtualService: GatewayRouteVirtualServiceTypeDef + port: Optional[int] = None + +class GrpcMetadataMatchMethodTypeDef(BaseModel): + exact: Optional[str] = None + prefix: Optional[str] = None + range: Optional[MatchRangeTypeDef] = None + regex: Optional[str] = None + suffix: Optional[str] = None + +class GrpcRouteMetadataMatchMethodTypeDef(BaseModel): + exact: Optional[str] = None + prefix: Optional[str] = None + range: Optional[MatchRangeTypeDef] = None + regex: Optional[str] = None + suffix: Optional[str] = None + +class HeaderMatchMethodTypeDef(BaseModel): + exact: Optional[str] = None + prefix: Optional[str] = None + range: Optional[MatchRangeTypeDef] = None + regex: Optional[str] = None + suffix: Optional[str] = None + +class GrpcRouteActionTypeDef(BaseModel): + weightedTargets: Sequence[WeightedTargetTypeDef] + +class HttpRouteActionTypeDef(BaseModel): + weightedTargets: Sequence[WeightedTargetTypeDef] + +class TcpRouteActionTypeDef(BaseModel): + weightedTargets: Sequence[WeightedTargetTypeDef] + +class HttpGatewayRouteRewriteTypeDef(BaseModel): + hostname: Optional[GatewayRouteHostnameRewriteTypeDef] = None + path: Optional[HttpGatewayRoutePathRewriteTypeDef] = None + prefix: Optional[HttpGatewayRoutePrefixRewriteTypeDef] = None + +class HttpQueryParameterTypeDef(BaseModel): + name: str + match: Optional[QueryParameterMatchTypeDef] = None + +class LoggingFormatTypeDef(BaseModel): + json: Optional[Sequence[JsonFormatRefTypeDef]] = None + text: Optional[str] = None + +class ListGatewayRoutesInputListGatewayRoutesPaginateTypeDef(BaseModel): + meshName: str + virtualGatewayName: str + meshOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMeshesInputListMeshesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoutesInputListRoutesPaginateTypeDef(BaseModel): + meshName: str + virtualRouterName: str + meshOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceInputListTagsForResourcePaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualGatewaysInputListVirtualGatewaysPaginateTypeDef(BaseModel): + meshName: str + meshOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualNodesInputListVirtualNodesPaginateTypeDef(BaseModel): + meshName: str + meshOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualRoutersInputListVirtualRoutersPaginateTypeDef(BaseModel): + meshName: str + meshOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualServicesInputListVirtualServicesPaginateTypeDef(BaseModel): + meshName: str + meshOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMeshesOutputTypeDef(BaseModel): + meshes: List[MeshRefTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoutesOutputTypeDef(BaseModel): + nextToken: str + routes: List[RouteRefTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualGatewaysOutputTypeDef(BaseModel): + nextToken: str + virtualGateways: List[VirtualGatewayRefTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualNodesOutputTypeDef(BaseModel): + nextToken: str + virtualNodes: List[VirtualNodeRefTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualRoutersOutputTypeDef(BaseModel): + nextToken: str + virtualRouters: List[VirtualRouterRefTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualServicesOutputTypeDef(BaseModel): + nextToken: str + virtualServices: List[VirtualServiceRefTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListenerTlsCertificateTypeDef(BaseModel): + acm: Optional[ListenerTlsAcmCertificateTypeDef] = None + file: Optional[ListenerTlsFileCertificateTypeDef] = None + sds: Optional[ListenerTlsSdsCertificateTypeDef] = None + +class ListenerTlsValidationContextTrustTypeDef(BaseModel): + file: Optional[TlsValidationContextFileTrustTypeDef] = None + sds: Optional[TlsValidationContextSdsTrustTypeDef] = None + +class VirtualRouterListenerTypeDef(BaseModel): + portMapping: PortMappingTypeDef + +class MeshSpecTypeDef(BaseModel): + egressFilter: Optional[EgressFilterTypeDef] = None + serviceDiscovery: Optional[MeshServiceDiscoveryTypeDef] = None + +class SubjectAlternativeNamesTypeDef(BaseModel): + match: SubjectAlternativeNameMatchersTypeDef + +class TlsValidationContextTrustTypeDef(BaseModel): + acm: Optional[TlsValidationContextAcmTrustTypeDef] = None + file: Optional[TlsValidationContextFileTrustTypeDef] = None + sds: Optional[TlsValidationContextSdsTrustTypeDef] = None + +class VirtualGatewayClientTlsCertificateTypeDef(BaseModel): + file: Optional[VirtualGatewayListenerTlsFileCertificateTypeDef] = None + sds: Optional[VirtualGatewayListenerTlsSdsCertificateTypeDef] = None + +class VirtualGatewayConnectionPoolTypeDef(BaseModel): + grpc: Optional[VirtualGatewayGrpcConnectionPoolTypeDef] = None + http: Optional[VirtualGatewayHttpConnectionPoolTypeDef] = None + http2: Optional[VirtualGatewayHttp2ConnectionPoolTypeDef] = None + +class VirtualGatewayListenerTlsCertificateTypeDef(BaseModel): + acm: Optional[VirtualGatewayListenerTlsAcmCertificateTypeDef] = None + file: Optional[VirtualGatewayListenerTlsFileCertificateTypeDef] = None + sds: Optional[VirtualGatewayListenerTlsSdsCertificateTypeDef] = None + +class VirtualGatewayListenerTlsValidationContextTrustTypeDef(BaseModel): + file: Optional[VirtualGatewayTlsValidationContextFileTrustTypeDef] = None + sds: Optional[VirtualGatewayTlsValidationContextSdsTrustTypeDef] = None + +class VirtualGatewayTlsValidationContextTrustTypeDef(BaseModel): + acm: Optional[VirtualGatewayTlsValidationContextAcmTrustTypeDef] = None + file: Optional[VirtualGatewayTlsValidationContextFileTrustTypeDef] = None + sds: Optional[VirtualGatewayTlsValidationContextSdsTrustTypeDef] = None + +class VirtualNodeConnectionPoolTypeDef(BaseModel): + grpc: Optional[VirtualNodeGrpcConnectionPoolTypeDef] = None + http: Optional[VirtualNodeHttpConnectionPoolTypeDef] = None + http2: Optional[VirtualNodeHttp2ConnectionPoolTypeDef] = None + tcp: Optional[VirtualNodeTcpConnectionPoolTypeDef] = None + +class VirtualServiceProviderTypeDef(BaseModel): + virtualNode: Optional[VirtualNodeServiceProviderTypeDef] = None + virtualRouter: Optional[VirtualRouterServiceProviderTypeDef] = None + +class ServiceDiscoveryTypeDef(BaseModel): + awsCloudMap: Optional[AwsCloudMapServiceDiscoveryTypeDef] = None + dns: Optional[DnsServiceDiscoveryTypeDef] = None + +class ListenerTimeoutTypeDef(BaseModel): + grpc: Optional[GrpcTimeoutTypeDef] = None + http: Optional[HttpTimeoutTypeDef] = None + http2: Optional[HttpTimeoutTypeDef] = None + tcp: Optional[TcpTimeoutTypeDef] = None + +class GrpcGatewayRouteActionTypeDef(BaseModel): + target: GatewayRouteTargetTypeDef + rewrite: Optional[GrpcGatewayRouteRewriteTypeDef] = None + +class GrpcGatewayRouteMetadataTypeDef(BaseModel): + name: str + invert: Optional[bool] = None + match: Optional[GrpcMetadataMatchMethodTypeDef] = None + +class GrpcRouteMetadataTypeDef(BaseModel): + name: str + invert: Optional[bool] = None + match: Optional[GrpcRouteMetadataMatchMethodTypeDef] = None + +class HttpGatewayRouteHeaderTypeDef(BaseModel): + name: str + invert: Optional[bool] = None + match: Optional[HeaderMatchMethodTypeDef] = None + +class HttpRouteHeaderTypeDef(BaseModel): + name: str + invert: Optional[bool] = None + match: Optional[HeaderMatchMethodTypeDef] = None + +class TcpRouteTypeDef(BaseModel): + action: TcpRouteActionTypeDef + match: Optional[TcpRouteMatchTypeDef] = None + timeout: Optional[TcpTimeoutTypeDef] = None + +class HttpGatewayRouteActionTypeDef(BaseModel): + target: GatewayRouteTargetTypeDef + rewrite: Optional[HttpGatewayRouteRewriteTypeDef] = None + +class FileAccessLogTypeDef(BaseModel): + path: str + format: Optional[LoggingFormatTypeDef] = None + +class VirtualGatewayFileAccessLogTypeDef(BaseModel): + path: str + format: Optional[LoggingFormatTypeDef] = None + +class VirtualRouterSpecTypeDef(BaseModel): + listeners: Optional[Sequence[VirtualRouterListenerTypeDef]] = None + +class CreateMeshInputRequestTypeDef(BaseModel): + meshName: str + clientToken: Optional[str] = None + spec: Optional[MeshSpecTypeDef] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class MeshDataTypeDef(BaseModel): + meshName: str + metadata: ResourceMetadataTypeDef + spec: MeshSpecTypeDef + status: MeshStatusTypeDef + +class UpdateMeshInputRequestTypeDef(BaseModel): + meshName: str + clientToken: Optional[str] = None + spec: Optional[MeshSpecTypeDef] = None + +class ListenerTlsValidationContextTypeDef(BaseModel): + trust: ListenerTlsValidationContextTrustTypeDef + subjectAlternativeNames: Optional[SubjectAlternativeNamesTypeDef] = None + +class TlsValidationContextTypeDef(BaseModel): + trust: TlsValidationContextTrustTypeDef + subjectAlternativeNames: Optional[SubjectAlternativeNamesTypeDef] = None + +class VirtualGatewayListenerTlsValidationContextTypeDef(BaseModel): + trust: VirtualGatewayListenerTlsValidationContextTrustTypeDef + subjectAlternativeNames: Optional[SubjectAlternativeNamesTypeDef] = None + +class VirtualGatewayTlsValidationContextTypeDef(BaseModel): + trust: VirtualGatewayTlsValidationContextTrustTypeDef + subjectAlternativeNames: Optional[SubjectAlternativeNamesTypeDef] = None + +class VirtualServiceSpecTypeDef(BaseModel): + provider: Optional[VirtualServiceProviderTypeDef] = None + +class GrpcGatewayRouteMatchTypeDef(BaseModel): + hostname: Optional[GatewayRouteHostnameMatchTypeDef] = None + metadata: Optional[Sequence[GrpcGatewayRouteMetadataTypeDef]] = None + port: Optional[int] = None + serviceName: Optional[str] = None + +class GrpcRouteMatchTypeDef(BaseModel): + metadata: Optional[Sequence[GrpcRouteMetadataTypeDef]] = None + methodName: Optional[str] = None + port: Optional[int] = None + serviceName: Optional[str] = None + +class HttpGatewayRouteMatchTypeDef(BaseModel): + headers: Optional[Sequence[HttpGatewayRouteHeaderTypeDef]] = None + hostname: Optional[GatewayRouteHostnameMatchTypeDef] = None + method: Optional[HttpMethodType] = None + path: Optional[HttpPathMatchTypeDef] = None + port: Optional[int] = None + prefix: Optional[str] = None + queryParameters: Optional[Sequence[HttpQueryParameterTypeDef]] = None + +class HttpRouteMatchTypeDef(BaseModel): + headers: Optional[Sequence[HttpRouteHeaderTypeDef]] = None + method: Optional[HttpMethodType] = None + path: Optional[HttpPathMatchTypeDef] = None + port: Optional[int] = None + prefix: Optional[str] = None + queryParameters: Optional[Sequence[HttpQueryParameterTypeDef]] = None + scheme: Optional[HttpSchemeType] = None + +class AccessLogTypeDef(BaseModel): + file: Optional[FileAccessLogTypeDef] = None + +class VirtualGatewayAccessLogTypeDef(BaseModel): + file: Optional[VirtualGatewayFileAccessLogTypeDef] = None + +class CreateVirtualRouterInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualRouterSpecTypeDef + virtualRouterName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class UpdateVirtualRouterInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualRouterSpecTypeDef + virtualRouterName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + +class VirtualRouterDataTypeDef(BaseModel): + meshName: str + metadata: ResourceMetadataTypeDef + spec: VirtualRouterSpecTypeDef + status: VirtualRouterStatusTypeDef + virtualRouterName: str + +class CreateMeshOutputTypeDef(BaseModel): + mesh: MeshDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMeshOutputTypeDef(BaseModel): + mesh: MeshDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMeshOutputTypeDef(BaseModel): + mesh: MeshDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMeshOutputTypeDef(BaseModel): + mesh: MeshDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListenerTlsTypeDef(BaseModel): + certificate: ListenerTlsCertificateTypeDef + mode: ListenerTlsModeType + validation: Optional[ListenerTlsValidationContextTypeDef] = None + +class ClientPolicyTlsTypeDef(BaseModel): + validation: TlsValidationContextTypeDef + certificate: Optional[ClientTlsCertificateTypeDef] = None + enforce: Optional[bool] = None + ports: Optional[Sequence[int]] = None + +class VirtualGatewayListenerTlsTypeDef(BaseModel): + certificate: VirtualGatewayListenerTlsCertificateTypeDef + mode: VirtualGatewayListenerTlsModeType + validation: Optional[VirtualGatewayListenerTlsValidationContextTypeDef] = None + +class VirtualGatewayClientPolicyTlsTypeDef(BaseModel): + validation: VirtualGatewayTlsValidationContextTypeDef + certificate: Optional[VirtualGatewayClientTlsCertificateTypeDef] = None + enforce: Optional[bool] = None + ports: Optional[Sequence[int]] = None + +class CreateVirtualServiceInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualServiceSpecTypeDef + virtualServiceName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class UpdateVirtualServiceInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualServiceSpecTypeDef + virtualServiceName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + +class VirtualServiceDataTypeDef(BaseModel): + meshName: str + metadata: ResourceMetadataTypeDef + spec: VirtualServiceSpecTypeDef + status: VirtualServiceStatusTypeDef + virtualServiceName: str + +class GrpcGatewayRouteTypeDef(BaseModel): + action: GrpcGatewayRouteActionTypeDef + match: GrpcGatewayRouteMatchTypeDef + +class GrpcRouteTypeDef(BaseModel): + action: GrpcRouteActionTypeDef + match: GrpcRouteMatchTypeDef + retryPolicy: Optional[GrpcRetryPolicyTypeDef] = None + timeout: Optional[GrpcTimeoutTypeDef] = None + +class HttpGatewayRouteTypeDef(BaseModel): + action: HttpGatewayRouteActionTypeDef + match: HttpGatewayRouteMatchTypeDef + +class HttpRouteTypeDef(BaseModel): + action: HttpRouteActionTypeDef + match: HttpRouteMatchTypeDef + retryPolicy: Optional[HttpRetryPolicyTypeDef] = None + timeout: Optional[HttpTimeoutTypeDef] = None + +class LoggingTypeDef(BaseModel): + accessLog: Optional[AccessLogTypeDef] = None + +class VirtualGatewayLoggingTypeDef(BaseModel): + accessLog: Optional[VirtualGatewayAccessLogTypeDef] = None + +class CreateVirtualRouterOutputTypeDef(BaseModel): + virtualRouter: VirtualRouterDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVirtualRouterOutputTypeDef(BaseModel): + virtualRouter: VirtualRouterDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVirtualRouterOutputTypeDef(BaseModel): + virtualRouter: VirtualRouterDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVirtualRouterOutputTypeDef(BaseModel): + virtualRouter: VirtualRouterDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListenerTypeDef(BaseModel): + portMapping: PortMappingTypeDef + connectionPool: Optional[VirtualNodeConnectionPoolTypeDef] = None + healthCheck: Optional[HealthCheckPolicyTypeDef] = None + outlierDetection: Optional[OutlierDetectionTypeDef] = None + timeout: Optional[ListenerTimeoutTypeDef] = None + tls: Optional[ListenerTlsTypeDef] = None + +class ClientPolicyTypeDef(BaseModel): + tls: Optional[ClientPolicyTlsTypeDef] = None + +class VirtualGatewayListenerTypeDef(BaseModel): + portMapping: VirtualGatewayPortMappingTypeDef + connectionPool: Optional[VirtualGatewayConnectionPoolTypeDef] = None + healthCheck: Optional[VirtualGatewayHealthCheckPolicyTypeDef] = None + tls: Optional[VirtualGatewayListenerTlsTypeDef] = None + +class VirtualGatewayClientPolicyTypeDef(BaseModel): + tls: Optional[VirtualGatewayClientPolicyTlsTypeDef] = None + +class CreateVirtualServiceOutputTypeDef(BaseModel): + virtualService: VirtualServiceDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVirtualServiceOutputTypeDef(BaseModel): + virtualService: VirtualServiceDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVirtualServiceOutputTypeDef(BaseModel): + virtualService: VirtualServiceDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVirtualServiceOutputTypeDef(BaseModel): + virtualService: VirtualServiceDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GatewayRouteSpecTypeDef(BaseModel): + grpcRoute: Optional[GrpcGatewayRouteTypeDef] = None + http2Route: Optional[HttpGatewayRouteTypeDef] = None + httpRoute: Optional[HttpGatewayRouteTypeDef] = None + priority: Optional[int] = None + +class RouteSpecTypeDef(BaseModel): + grpcRoute: Optional[GrpcRouteTypeDef] = None + http2Route: Optional[HttpRouteTypeDef] = None + httpRoute: Optional[HttpRouteTypeDef] = None + priority: Optional[int] = None + tcpRoute: Optional[TcpRouteTypeDef] = None + +class BackendDefaultsTypeDef(BaseModel): + clientPolicy: Optional[ClientPolicyTypeDef] = None + +class VirtualServiceBackendTypeDef(BaseModel): + virtualServiceName: str + clientPolicy: Optional[ClientPolicyTypeDef] = None + +class VirtualGatewayBackendDefaultsTypeDef(BaseModel): + clientPolicy: Optional[VirtualGatewayClientPolicyTypeDef] = None + +class CreateGatewayRouteInputRequestTypeDef(BaseModel): + gatewayRouteName: str + meshName: str + spec: GatewayRouteSpecTypeDef + virtualGatewayName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class GatewayRouteDataTypeDef(BaseModel): + gatewayRouteName: str + meshName: str + metadata: ResourceMetadataTypeDef + spec: GatewayRouteSpecTypeDef + status: GatewayRouteStatusTypeDef + virtualGatewayName: str + +class UpdateGatewayRouteInputRequestTypeDef(BaseModel): + gatewayRouteName: str + meshName: str + spec: GatewayRouteSpecTypeDef + virtualGatewayName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + +class CreateRouteInputRequestTypeDef(BaseModel): + meshName: str + routeName: str + spec: RouteSpecTypeDef + virtualRouterName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class RouteDataTypeDef(BaseModel): + meshName: str + metadata: ResourceMetadataTypeDef + routeName: str + spec: RouteSpecTypeDef + status: RouteStatusTypeDef + virtualRouterName: str + +class UpdateRouteInputRequestTypeDef(BaseModel): + meshName: str + routeName: str + spec: RouteSpecTypeDef + virtualRouterName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + +class BackendTypeDef(BaseModel): + virtualService: Optional[VirtualServiceBackendTypeDef] = None + +class VirtualGatewaySpecTypeDef(BaseModel): + listeners: Sequence[VirtualGatewayListenerTypeDef] + backendDefaults: Optional[VirtualGatewayBackendDefaultsTypeDef] = None + logging: Optional[VirtualGatewayLoggingTypeDef] = None + +class CreateGatewayRouteOutputTypeDef(BaseModel): + gatewayRoute: GatewayRouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGatewayRouteOutputTypeDef(BaseModel): + gatewayRoute: GatewayRouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGatewayRouteOutputTypeDef(BaseModel): + gatewayRoute: GatewayRouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewayRouteOutputTypeDef(BaseModel): + gatewayRoute: GatewayRouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRouteOutputTypeDef(BaseModel): + route: RouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRouteOutputTypeDef(BaseModel): + route: RouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRouteOutputTypeDef(BaseModel): + route: RouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRouteOutputTypeDef(BaseModel): + route: RouteDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VirtualNodeSpecTypeDef(BaseModel): + backendDefaults: Optional[BackendDefaultsTypeDef] = None + backends: Optional[Sequence[BackendTypeDef]] = None + listeners: Optional[Sequence[ListenerTypeDef]] = None + logging: Optional[LoggingTypeDef] = None + serviceDiscovery: Optional[ServiceDiscoveryTypeDef] = None + +class CreateVirtualGatewayInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualGatewaySpecTypeDef + virtualGatewayName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class UpdateVirtualGatewayInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualGatewaySpecTypeDef + virtualGatewayName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + +class VirtualGatewayDataTypeDef(BaseModel): + meshName: str + metadata: ResourceMetadataTypeDef + spec: VirtualGatewaySpecTypeDef + status: VirtualGatewayStatusTypeDef + virtualGatewayName: str + +class CreateVirtualNodeInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualNodeSpecTypeDef + virtualNodeName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + tags: Optional[Sequence[TagRefTypeDef]] = None + +class UpdateVirtualNodeInputRequestTypeDef(BaseModel): + meshName: str + spec: VirtualNodeSpecTypeDef + virtualNodeName: str + clientToken: Optional[str] = None + meshOwner: Optional[str] = None + +class VirtualNodeDataTypeDef(BaseModel): + meshName: str + metadata: ResourceMetadataTypeDef + spec: VirtualNodeSpecTypeDef + status: VirtualNodeStatusTypeDef + virtualNodeName: str + +class CreateVirtualGatewayOutputTypeDef(BaseModel): + virtualGateway: VirtualGatewayDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVirtualGatewayOutputTypeDef(BaseModel): + virtualGateway: VirtualGatewayDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVirtualGatewayOutputTypeDef(BaseModel): + virtualGateway: VirtualGatewayDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVirtualGatewayOutputTypeDef(BaseModel): + virtualGateway: VirtualGatewayDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVirtualNodeOutputTypeDef(BaseModel): + virtualNode: VirtualNodeDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVirtualNodeOutputTypeDef(BaseModel): + virtualNode: VirtualNodeDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVirtualNodeOutputTypeDef(BaseModel): + virtualNode: VirtualNodeDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVirtualNodeOutputTypeDef(BaseModel): + virtualNode: VirtualNodeDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appmesh_constants.py b/aws_resource_validator/pydantic_models/appmesh_constants.py new file mode 100644 index 00000000..f9c62934 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appmesh_constants.py @@ -0,0 +1,447 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DefaultGatewayRouteRewriteType = Literal["DISABLED", "ENABLED"] +DnsResponseTypeType = Literal["ENDPOINTS", "LOADBALANCER"] +DurationUnitType = Literal["ms", "s"] +EgressFilterTypeType = Literal["ALLOW_ALL", "DROP_ALL"] +GatewayRouteStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +GrpcRetryPolicyEventType = Literal["cancelled", "deadline-exceeded", "internal", "resource-exhausted", "unavailable"] +HttpMethodType = Literal["CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"] +HttpSchemeType = Literal["http", "https"] +IpPreferenceType = Literal["IPv4_ONLY", "IPv4_PREFERRED", "IPv6_ONLY", "IPv6_PREFERRED"] +ListGatewayRoutesPaginatorName = Literal["list_gateway_routes"] +ListMeshesPaginatorName = Literal["list_meshes"] +ListRoutesPaginatorName = Literal["list_routes"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListVirtualGatewaysPaginatorName = Literal["list_virtual_gateways"] +ListVirtualNodesPaginatorName = Literal["list_virtual_nodes"] +ListVirtualRoutersPaginatorName = Literal["list_virtual_routers"] +ListVirtualServicesPaginatorName = Literal["list_virtual_services"] +ListenerTlsModeType = Literal["DISABLED", "PERMISSIVE", "STRICT"] +MeshStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +PortProtocolType = Literal["grpc", "http", "http2", "tcp"] +RouteStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +TcpRetryPolicyEventType = Literal["connection-error"] +VirtualGatewayListenerTlsModeType = Literal["DISABLED", "PERMISSIVE", "STRICT"] +VirtualGatewayPortProtocolType = Literal["grpc", "http", "http2"] +VirtualGatewayStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +VirtualNodeStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +VirtualRouterStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +VirtualServiceStatusCodeType = Literal["ACTIVE", "DELETED", "INACTIVE"] +AppMeshServiceName = Literal["appmesh"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_gateway_routes", + "list_meshes", + "list_routes", + "list_tags_for_resource", + "list_virtual_gateways", + "list_virtual_nodes", + "list_virtual_routers", + "list_virtual_services",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/apprunner_classes.py b/aws_resource_validator/pydantic_models/apprunner_classes.py new file mode 100644 index 00000000..565437ba --- /dev/null +++ b/aws_resource_validator/pydantic_models/apprunner_classes.py @@ -0,0 +1,566 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.apprunner_constants import * + +class AssociateCustomDomainRequestRequestTypeDef(BaseModel): + ServiceArn: str + DomainName: str + EnableWWWSubdomain: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class VpcDNSTargetTypeDef(BaseModel): + VpcIngressConnectionArn: Optional[str] = None + VpcId: Optional[str] = None + DomainName: Optional[str] = None + +class AuthenticationConfigurationTypeDef(BaseModel): + ConnectionArn: Optional[str] = None + AccessRoleArn: Optional[str] = None + +class AutoScalingConfigurationSummaryTypeDef(BaseModel): + AutoScalingConfigurationArn: Optional[str] = None + AutoScalingConfigurationName: Optional[str] = None + AutoScalingConfigurationRevision: Optional[int] = None + Status: Optional[AutoScalingConfigurationStatusType] = None + CreatedAt: Optional[datetime] = None + HasAssociatedService: Optional[bool] = None + IsDefault: Optional[bool] = None + +class AutoScalingConfigurationTypeDef(BaseModel): + AutoScalingConfigurationArn: Optional[str] = None + AutoScalingConfigurationName: Optional[str] = None + AutoScalingConfigurationRevision: Optional[int] = None + Latest: Optional[bool] = None + Status: Optional[AutoScalingConfigurationStatusType] = None + MaxConcurrency: Optional[int] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + CreatedAt: Optional[datetime] = None + DeletedAt: Optional[datetime] = None + HasAssociatedService: Optional[bool] = None + IsDefault: Optional[bool] = None + +class CertificateValidationRecordTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + Value: Optional[str] = None + Status: Optional[CertificateValidationRecordStatusType] = None + +class CodeConfigurationValuesTypeDef(BaseModel): + Runtime: RuntimeType + BuildCommand: Optional[str] = None + StartCommand: Optional[str] = None + Port: Optional[str] = None + RuntimeEnvironmentVariables: Optional[Mapping[str, str]] = None + RuntimeEnvironmentSecrets: Optional[Mapping[str, str]] = None + +class SourceCodeVersionTypeDef(BaseModel): + Type: Literal["BRANCH"] + Value: str + +class ConnectionSummaryTypeDef(BaseModel): + ConnectionName: Optional[str] = None + ConnectionArn: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + Status: Optional[ConnectionStatusType] = None + CreatedAt: Optional[datetime] = None + +class ConnectionTypeDef(BaseModel): + ConnectionName: Optional[str] = None + ConnectionArn: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + Status: Optional[ConnectionStatusType] = None + CreatedAt: Optional[datetime] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class TraceConfigurationTypeDef(BaseModel): + Vendor: Literal["AWSXRAY"] + +class EncryptionConfigurationTypeDef(BaseModel): + KmsKey: str + +class HealthCheckConfigurationTypeDef(BaseModel): + Protocol: Optional[HealthCheckProtocolType] = None + Path: Optional[str] = None + Interval: Optional[int] = None + Timeout: Optional[int] = None + HealthyThreshold: Optional[int] = None + UnhealthyThreshold: Optional[int] = None + +class InstanceConfigurationTypeDef(BaseModel): + Cpu: Optional[str] = None + Memory: Optional[str] = None + InstanceRoleArn: Optional[str] = None + +class ServiceObservabilityConfigurationTypeDef(BaseModel): + ObservabilityEnabled: bool + ObservabilityConfigurationArn: Optional[str] = None + +class VpcConnectorTypeDef(BaseModel): + VpcConnectorName: Optional[str] = None + VpcConnectorArn: Optional[str] = None + VpcConnectorRevision: Optional[int] = None + Subnets: Optional[List[str]] = None + SecurityGroups: Optional[List[str]] = None + Status: Optional[VpcConnectorStatusType] = None + CreatedAt: Optional[datetime] = None + DeletedAt: Optional[datetime] = None + +class IngressVpcConfigurationTypeDef(BaseModel): + VpcId: Optional[str] = None + VpcEndpointId: Optional[str] = None + +class DeleteAutoScalingConfigurationRequestRequestTypeDef(BaseModel): + AutoScalingConfigurationArn: str + DeleteAllRevisions: Optional[bool] = None + +class DeleteConnectionRequestRequestTypeDef(BaseModel): + ConnectionArn: str + +class DeleteObservabilityConfigurationRequestRequestTypeDef(BaseModel): + ObservabilityConfigurationArn: str + +class DeleteServiceRequestRequestTypeDef(BaseModel): + ServiceArn: str + +class DeleteVpcConnectorRequestRequestTypeDef(BaseModel): + VpcConnectorArn: str + +class DeleteVpcIngressConnectionRequestRequestTypeDef(BaseModel): + VpcIngressConnectionArn: str + +class DescribeAutoScalingConfigurationRequestRequestTypeDef(BaseModel): + AutoScalingConfigurationArn: str + +class DescribeCustomDomainsRequestRequestTypeDef(BaseModel): + ServiceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeObservabilityConfigurationRequestRequestTypeDef(BaseModel): + ObservabilityConfigurationArn: str + +class DescribeServiceRequestRequestTypeDef(BaseModel): + ServiceArn: str + +class DescribeVpcConnectorRequestRequestTypeDef(BaseModel): + VpcConnectorArn: str + +class DescribeVpcIngressConnectionRequestRequestTypeDef(BaseModel): + VpcIngressConnectionArn: str + +class DisassociateCustomDomainRequestRequestTypeDef(BaseModel): + ServiceArn: str + DomainName: str + +class EgressConfigurationTypeDef(BaseModel): + EgressType: Optional[EgressTypeType] = None + VpcConnectorArn: Optional[str] = None + +class ImageConfigurationTypeDef(BaseModel): + RuntimeEnvironmentVariables: Optional[Mapping[str, str]] = None + StartCommand: Optional[str] = None + Port: Optional[str] = None + RuntimeEnvironmentSecrets: Optional[Mapping[str, str]] = None + +class IngressConfigurationTypeDef(BaseModel): + IsPubliclyAccessible: Optional[bool] = None + +class ListAutoScalingConfigurationsRequestRequestTypeDef(BaseModel): + AutoScalingConfigurationName: Optional[str] = None + LatestOnly: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConnectionsRequestRequestTypeDef(BaseModel): + ConnectionName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListObservabilityConfigurationsRequestRequestTypeDef(BaseModel): + ObservabilityConfigurationName: Optional[str] = None + LatestOnly: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ObservabilityConfigurationSummaryTypeDef(BaseModel): + ObservabilityConfigurationArn: Optional[str] = None + ObservabilityConfigurationName: Optional[str] = None + ObservabilityConfigurationRevision: Optional[int] = None + +class ListOperationsRequestRequestTypeDef(BaseModel): + ServiceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OperationSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[OperationTypeType] = None + Status: Optional[OperationStatusType] = None + TargetArn: Optional[str] = None + StartedAt: Optional[datetime] = None + EndedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ListServicesForAutoScalingConfigurationRequestRequestTypeDef(BaseModel): + AutoScalingConfigurationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServicesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ServiceSummaryTypeDef(BaseModel): + ServiceName: Optional[str] = None + ServiceId: Optional[str] = None + ServiceArn: Optional[str] = None + ServiceUrl: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + Status: Optional[ServiceStatusType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListVpcConnectorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListVpcIngressConnectionsFilterTypeDef(BaseModel): + ServiceArn: Optional[str] = None + VpcEndpointId: Optional[str] = None + +class VpcIngressConnectionSummaryTypeDef(BaseModel): + VpcIngressConnectionArn: Optional[str] = None + ServiceArn: Optional[str] = None + +class PauseServiceRequestRequestTypeDef(BaseModel): + ServiceArn: str + +class ResumeServiceRequestRequestTypeDef(BaseModel): + ServiceArn: str + +class StartDeploymentRequestRequestTypeDef(BaseModel): + ServiceArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDefaultAutoScalingConfigurationRequestRequestTypeDef(BaseModel): + AutoScalingConfigurationArn: str + +class ListServicesForAutoScalingConfigurationResponseTypeDef(BaseModel): + ServiceArnList: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDeploymentResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAutoScalingConfigurationsResponseTypeDef(BaseModel): + AutoScalingConfigurationSummaryList: List[AutoScalingConfigurationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAutoScalingConfigurationResponseTypeDef(BaseModel): + AutoScalingConfiguration: AutoScalingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAutoScalingConfigurationResponseTypeDef(BaseModel): + AutoScalingConfiguration: AutoScalingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAutoScalingConfigurationResponseTypeDef(BaseModel): + AutoScalingConfiguration: AutoScalingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDefaultAutoScalingConfigurationResponseTypeDef(BaseModel): + AutoScalingConfiguration: AutoScalingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CustomDomainTypeDef(BaseModel): + DomainName: str + EnableWWWSubdomain: bool + Status: CustomDomainAssociationStatusType + CertificateValidationRecords: Optional[List[CertificateValidationRecordTypeDef]] = None + +class CodeConfigurationTypeDef(BaseModel): + ConfigurationSource: ConfigurationSourceType + CodeConfigurationValues: Optional[CodeConfigurationValuesTypeDef] = None + +class ListConnectionsResponseTypeDef(BaseModel): + ConnectionSummaryList: List[ConnectionSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAutoScalingConfigurationRequestRequestTypeDef(BaseModel): + AutoScalingConfigurationName: str + MaxConcurrency: Optional[int] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateConnectionRequestRequestTypeDef(BaseModel): + ConnectionName: str + ProviderType: ProviderTypeType + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVpcConnectorRequestRequestTypeDef(BaseModel): + VpcConnectorName: str + Subnets: Sequence[str] + SecurityGroups: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateObservabilityConfigurationRequestRequestTypeDef(BaseModel): + ObservabilityConfigurationName: str + TraceConfiguration: Optional[TraceConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ObservabilityConfigurationTypeDef(BaseModel): + ObservabilityConfigurationArn: Optional[str] = None + ObservabilityConfigurationName: Optional[str] = None + TraceConfiguration: Optional[TraceConfigurationTypeDef] = None + ObservabilityConfigurationRevision: Optional[int] = None + Latest: Optional[bool] = None + Status: Optional[ObservabilityConfigurationStatusType] = None + CreatedAt: Optional[datetime] = None + DeletedAt: Optional[datetime] = None + +class CreateVpcConnectorResponseTypeDef(BaseModel): + VpcConnector: VpcConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcConnectorResponseTypeDef(BaseModel): + VpcConnector: VpcConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcConnectorResponseTypeDef(BaseModel): + VpcConnector: VpcConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcConnectorsResponseTypeDef(BaseModel): + VpcConnectors: List[VpcConnectorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcIngressConnectionRequestRequestTypeDef(BaseModel): + ServiceArn: str + VpcIngressConnectionName: str + IngressVpcConfiguration: IngressVpcConfigurationTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateVpcIngressConnectionRequestRequestTypeDef(BaseModel): + VpcIngressConnectionArn: str + IngressVpcConfiguration: IngressVpcConfigurationTypeDef + +class VpcIngressConnectionTypeDef(BaseModel): + VpcIngressConnectionArn: Optional[str] = None + VpcIngressConnectionName: Optional[str] = None + ServiceArn: Optional[str] = None + Status: Optional[VpcIngressConnectionStatusType] = None + AccountId: Optional[str] = None + DomainName: Optional[str] = None + IngressVpcConfiguration: Optional[IngressVpcConfigurationTypeDef] = None + CreatedAt: Optional[datetime] = None + DeletedAt: Optional[datetime] = None + +class ImageRepositoryTypeDef(BaseModel): + ImageIdentifier: str + ImageRepositoryType: ImageRepositoryTypeType + ImageConfiguration: Optional[ImageConfigurationTypeDef] = None + +class NetworkConfigurationTypeDef(BaseModel): + EgressConfiguration: Optional[EgressConfigurationTypeDef] = None + IngressConfiguration: Optional[IngressConfigurationTypeDef] = None + IpAddressType: Optional[IpAddressTypeType] = None + +class ListObservabilityConfigurationsResponseTypeDef(BaseModel): + ObservabilityConfigurationSummaryList: List[ObservabilityConfigurationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOperationsResponseTypeDef(BaseModel): + OperationSummaryList: List[OperationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesResponseTypeDef(BaseModel): + ServiceSummaryList: List[ServiceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcIngressConnectionsRequestRequestTypeDef(BaseModel): + Filter: Optional[ListVpcIngressConnectionsFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListVpcIngressConnectionsResponseTypeDef(BaseModel): + VpcIngressConnectionSummaryList: List[VpcIngressConnectionSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateCustomDomainResponseTypeDef(BaseModel): + DNSTarget: str + ServiceArn: str + CustomDomain: CustomDomainTypeDef + VpcDNSTargets: List[VpcDNSTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomDomainsResponseTypeDef(BaseModel): + DNSTarget: str + ServiceArn: str + CustomDomains: List[CustomDomainTypeDef] + VpcDNSTargets: List[VpcDNSTargetTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateCustomDomainResponseTypeDef(BaseModel): + DNSTarget: str + ServiceArn: str + CustomDomain: CustomDomainTypeDef + VpcDNSTargets: List[VpcDNSTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CodeRepositoryTypeDef(BaseModel): + RepositoryUrl: str + SourceCodeVersion: SourceCodeVersionTypeDef + CodeConfiguration: Optional[CodeConfigurationTypeDef] = None + SourceDirectory: Optional[str] = None + +class CreateObservabilityConfigurationResponseTypeDef(BaseModel): + ObservabilityConfiguration: ObservabilityConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteObservabilityConfigurationResponseTypeDef(BaseModel): + ObservabilityConfiguration: ObservabilityConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeObservabilityConfigurationResponseTypeDef(BaseModel): + ObservabilityConfiguration: ObservabilityConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcIngressConnectionResponseTypeDef(BaseModel): + VpcIngressConnection: VpcIngressConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcIngressConnectionResponseTypeDef(BaseModel): + VpcIngressConnection: VpcIngressConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcIngressConnectionResponseTypeDef(BaseModel): + VpcIngressConnection: VpcIngressConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVpcIngressConnectionResponseTypeDef(BaseModel): + VpcIngressConnection: VpcIngressConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SourceConfigurationTypeDef(BaseModel): + CodeRepository: Optional[CodeRepositoryTypeDef] = None + ImageRepository: Optional[ImageRepositoryTypeDef] = None + AutoDeploymentsEnabled: Optional[bool] = None + AuthenticationConfiguration: Optional[AuthenticationConfigurationTypeDef] = None + +class CreateServiceRequestRequestTypeDef(BaseModel): + ServiceName: str + SourceConfiguration: SourceConfigurationTypeDef + InstanceConfiguration: Optional[InstanceConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + HealthCheckConfiguration: Optional[HealthCheckConfigurationTypeDef] = None + AutoScalingConfigurationArn: Optional[str] = None + NetworkConfiguration: Optional[NetworkConfigurationTypeDef] = None + ObservabilityConfiguration: Optional[ServiceObservabilityConfigurationTypeDef] = None + +class ServiceTypeDef(BaseModel): + ServiceName: str + ServiceId: str + ServiceArn: str + CreatedAt: datetime + UpdatedAt: datetime + Status: ServiceStatusType + SourceConfiguration: SourceConfigurationTypeDef + InstanceConfiguration: InstanceConfigurationTypeDef + AutoScalingConfigurationSummary: AutoScalingConfigurationSummaryTypeDef + NetworkConfiguration: NetworkConfigurationTypeDef + ServiceUrl: Optional[str] = None + DeletedAt: Optional[datetime] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + HealthCheckConfiguration: Optional[HealthCheckConfigurationTypeDef] = None + ObservabilityConfiguration: Optional[ServiceObservabilityConfigurationTypeDef] = None + +class UpdateServiceRequestRequestTypeDef(BaseModel): + ServiceArn: str + SourceConfiguration: Optional[SourceConfigurationTypeDef] = None + InstanceConfiguration: Optional[InstanceConfigurationTypeDef] = None + AutoScalingConfigurationArn: Optional[str] = None + HealthCheckConfiguration: Optional[HealthCheckConfigurationTypeDef] = None + NetworkConfiguration: Optional[NetworkConfigurationTypeDef] = None + ObservabilityConfiguration: Optional[ServiceObservabilityConfigurationTypeDef] = None + +class CreateServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PauseServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResumeServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/apprunner_constants.py b/aws_resource_validator/pydantic_models/apprunner_constants.py new file mode 100644 index 00000000..f3bae020 --- /dev/null +++ b/aws_resource_validator/pydantic_models/apprunner_constants.py @@ -0,0 +1,455 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AutoScalingConfigurationStatusType = Literal["ACTIVE", "INACTIVE"] +CertificateValidationRecordStatusType = Literal["FAILED", "PENDING_VALIDATION", "SUCCESS"] +ConfigurationSourceType = Literal["API", "REPOSITORY"] +ConnectionStatusType = Literal["AVAILABLE", "DELETED", "ERROR", "PENDING_HANDSHAKE"] +CustomDomainAssociationStatusType = Literal["ACTIVE", + "BINDING_CERTIFICATE", + "CREATE_FAILED", + "CREATING", + "DELETE_FAILED", + "DELETING", + "PENDING_CERTIFICATE_DNS_VALIDATION",] +EgressTypeType = Literal["DEFAULT", "VPC"] +HealthCheckProtocolType = Literal["HTTP", "TCP"] +ImageRepositoryTypeType = Literal["ECR", "ECR_PUBLIC"] +IpAddressTypeType = Literal["DUAL_STACK", "IPV4"] +ObservabilityConfigurationStatusType = Literal["ACTIVE", "INACTIVE"] +OperationStatusType = Literal["FAILED", + "IN_PROGRESS", + "PENDING", + "ROLLBACK_FAILED", + "ROLLBACK_IN_PROGRESS", + "ROLLBACK_SUCCEEDED", + "SUCCEEDED",] +OperationTypeType = Literal["CREATE_SERVICE", + "DELETE_SERVICE", + "PAUSE_SERVICE", + "RESUME_SERVICE", + "START_DEPLOYMENT", + "UPDATE_SERVICE",] +ProviderTypeType = Literal["BITBUCKET", "GITHUB"] +RuntimeType = Literal["CORRETTO_11", + "CORRETTO_8", + "DOTNET_6", + "GO_1", + "NODEJS_12", + "NODEJS_14", + "NODEJS_16", + "NODEJS_18", + "PHP_81", + "PYTHON_3", + "PYTHON_311", + "RUBY_31",] +ServiceStatusType = Literal["CREATE_FAILED", "DELETED", "DELETE_FAILED", "OPERATION_IN_PROGRESS", "PAUSED", "RUNNING"] +SourceCodeVersionTypeType = Literal["BRANCH"] +TracingVendorType = Literal["AWSXRAY"] +VpcConnectorStatusType = Literal["ACTIVE", "INACTIVE"] +VpcIngressConnectionStatusType = Literal["AVAILABLE", + "DELETED", + "FAILED_CREATION", + "FAILED_DELETION", + "FAILED_UPDATE", + "PENDING_CREATION", + "PENDING_DELETION", + "PENDING_UPDATE",] +AppRunnerServiceName = Literal["apprunner"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/appstream_classes.py b/aws_resource_validator/pydantic_models/appstream_classes.py new file mode 100644 index 00000000..10dd9c90 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appstream_classes.py @@ -0,0 +1,1147 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appstream_constants import * + +class AccessEndpointTypeDef(BaseModel): + EndpointType: Literal["STREAMING"] + VpceId: Optional[str] = None + +class AppBlockBuilderAppBlockAssociationTypeDef(BaseModel): + AppBlockArn: str + AppBlockBuilderName: str + +class AppBlockBuilderStateChangeReasonTypeDef(BaseModel): + Code: Optional[Literal["INTERNAL_ERROR"]] = None + Message: Optional[str] = None + +class ResourceErrorTypeDef(BaseModel): + ErrorCode: Optional[FleetErrorCodeType] = None + ErrorMessage: Optional[str] = None + ErrorTimestamp: Optional[datetime] = None + +class VpcConfigTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class ErrorDetailsTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class S3LocationTypeDef(BaseModel): + S3Bucket: str + S3Key: Optional[str] = None + +class ApplicationFleetAssociationTypeDef(BaseModel): + FleetName: str + ApplicationArn: str + +class ApplicationSettingsResponseTypeDef(BaseModel): + Enabled: Optional[bool] = None + SettingsGroup: Optional[str] = None + S3BucketName: Optional[str] = None + +class ApplicationSettingsTypeDef(BaseModel): + Enabled: bool + SettingsGroup: Optional[str] = None + +class AssociateAppBlockBuilderAppBlockRequestRequestTypeDef(BaseModel): + AppBlockArn: str + AppBlockBuilderName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociateApplicationFleetRequestRequestTypeDef(BaseModel): + FleetName: str + ApplicationArn: str + +class AssociateApplicationToEntitlementRequestRequestTypeDef(BaseModel): + StackName: str + EntitlementName: str + ApplicationIdentifier: str + +class AssociateFleetRequestRequestTypeDef(BaseModel): + FleetName: str + StackName: str + +class UserStackAssociationTypeDef(BaseModel): + StackName: str + UserName: str + AuthenticationType: AuthenticationTypeType + SendEmailNotification: Optional[bool] = None + +class CertificateBasedAuthPropertiesTypeDef(BaseModel): + Status: Optional[CertificateBasedAuthStatusType] = None + CertificateAuthorityArn: Optional[str] = None + +class ComputeCapacityStatusTypeDef(BaseModel): + Desired: int + Running: Optional[int] = None + InUse: Optional[int] = None + Available: Optional[int] = None + DesiredUserSessions: Optional[int] = None + AvailableUserSessions: Optional[int] = None + ActiveUserSessions: Optional[int] = None + ActualUserSessions: Optional[int] = None + +class ComputeCapacityTypeDef(BaseModel): + DesiredInstances: Optional[int] = None + DesiredSessions: Optional[int] = None + +class CopyImageRequestRequestTypeDef(BaseModel): + SourceImageName: str + DestinationImageName: str + DestinationRegion: str + DestinationImageDescription: Optional[str] = None + +class CreateAppBlockBuilderStreamingURLRequestRequestTypeDef(BaseModel): + AppBlockBuilderName: str + Validity: Optional[int] = None + +class ServiceAccountCredentialsTypeDef(BaseModel): + AccountName: str + AccountPassword: str + +class EntitlementAttributeTypeDef(BaseModel): + Name: str + Value: str + +class DomainJoinInfoTypeDef(BaseModel): + DirectoryName: Optional[str] = None + OrganizationalUnitDistinguishedName: Optional[str] = None + +class CreateImageBuilderStreamingURLRequestRequestTypeDef(BaseModel): + Name: str + Validity: Optional[int] = None + +class StorageConnectorTypeDef(BaseModel): + ConnectorType: StorageConnectorTypeType + ResourceIdentifier: Optional[str] = None + Domains: Optional[Sequence[str]] = None + +class StreamingExperienceSettingsTypeDef(BaseModel): + PreferredProtocol: Optional[PreferredProtocolType] = None + +class UserSettingTypeDef(BaseModel): + Action: ActionType + Permission: PermissionType + MaximumLength: Optional[int] = None + +class CreateStreamingURLRequestRequestTypeDef(BaseModel): + StackName: str + FleetName: str + UserId: str + ApplicationId: Optional[str] = None + Validity: Optional[int] = None + SessionContext: Optional[str] = None + +class CreateUpdatedImageRequestRequestTypeDef(BaseModel): + existingImageName: str + newImageName: str + newImageDescription: Optional[str] = None + newImageDisplayName: Optional[str] = None + newImageTags: Optional[Mapping[str, str]] = None + dryRun: Optional[bool] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + UserName: str + AuthenticationType: AuthenticationTypeType + MessageAction: Optional[MessageActionType] = None + FirstName: Optional[str] = None + LastName: Optional[str] = None + +class DeleteAppBlockBuilderRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteAppBlockRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteDirectoryConfigRequestRequestTypeDef(BaseModel): + DirectoryName: str + +class DeleteEntitlementRequestRequestTypeDef(BaseModel): + Name: str + StackName: str + +class DeleteFleetRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteImageBuilderRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteImagePermissionsRequestRequestTypeDef(BaseModel): + Name: str + SharedAccountId: str + +class DeleteImageRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteStackRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + UserName: str + AuthenticationType: AuthenticationTypeType + +class DescribeAppBlockBuilderAppBlockAssociationsRequestRequestTypeDef(BaseModel): + AppBlockArn: Optional[str] = None + AppBlockBuilderName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeAppBlockBuildersRequestRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeAppBlocksRequestRequestTypeDef(BaseModel): + Arns: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeApplicationFleetAssociationsRequestRequestTypeDef(BaseModel): + FleetName: Optional[str] = None + ApplicationArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeApplicationsRequestRequestTypeDef(BaseModel): + Arns: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeDirectoryConfigsRequestRequestTypeDef(BaseModel): + DirectoryNames: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeEntitlementsRequestRequestTypeDef(BaseModel): + StackName: str + Name: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeFleetsRequestRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class DescribeImageBuildersRequestRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeImagePermissionsRequestRequestTypeDef(BaseModel): + Name: str + MaxResults: Optional[int] = None + SharedAwsAccountIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class DescribeImagesRequestRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + Arns: Optional[Sequence[str]] = None + Type: Optional[VisibilityTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSessionsRequestRequestTypeDef(BaseModel): + StackName: str + FleetName: str + UserId: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + AuthenticationType: Optional[AuthenticationTypeType] = None + InstanceId: Optional[str] = None + +class DescribeStacksRequestRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class DescribeUsageReportSubscriptionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeUserStackAssociationsRequestRequestTypeDef(BaseModel): + StackName: Optional[str] = None + UserName: Optional[str] = None + AuthenticationType: Optional[AuthenticationTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeUsersRequestRequestTypeDef(BaseModel): + AuthenticationType: AuthenticationTypeType + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UserTypeDef(BaseModel): + AuthenticationType: AuthenticationTypeType + Arn: Optional[str] = None + UserName: Optional[str] = None + Enabled: Optional[bool] = None + Status: Optional[str] = None + FirstName: Optional[str] = None + LastName: Optional[str] = None + CreatedTime: Optional[datetime] = None + +class DisableUserRequestRequestTypeDef(BaseModel): + UserName: str + AuthenticationType: AuthenticationTypeType + +class DisassociateAppBlockBuilderAppBlockRequestRequestTypeDef(BaseModel): + AppBlockArn: str + AppBlockBuilderName: str + +class DisassociateApplicationFleetRequestRequestTypeDef(BaseModel): + FleetName: str + ApplicationArn: str + +class DisassociateApplicationFromEntitlementRequestRequestTypeDef(BaseModel): + StackName: str + EntitlementName: str + ApplicationIdentifier: str + +class DisassociateFleetRequestRequestTypeDef(BaseModel): + FleetName: str + StackName: str + +class EnableUserRequestRequestTypeDef(BaseModel): + UserName: str + AuthenticationType: AuthenticationTypeType + +class EntitledApplicationTypeDef(BaseModel): + ApplicationIdentifier: str + +class ExpireSessionRequestRequestTypeDef(BaseModel): + SessionId: str + +class FleetErrorTypeDef(BaseModel): + ErrorCode: Optional[FleetErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class VpcConfigPaginatorTypeDef(BaseModel): + SubnetIds: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class ImageBuilderStateChangeReasonTypeDef(BaseModel): + Code: Optional[ImageBuilderStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class NetworkAccessConfigurationTypeDef(BaseModel): + EniPrivateIpAddress: Optional[str] = None + EniId: Optional[str] = None + +class ImagePermissionsTypeDef(BaseModel): + allowFleet: Optional[bool] = None + allowImageBuilder: Optional[bool] = None + +class ImageStateChangeReasonTypeDef(BaseModel): + Code: Optional[ImageStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class LastReportGenerationExecutionErrorTypeDef(BaseModel): + ErrorCode: Optional[UsageReportExecutionErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class ListAssociatedFleetsRequestRequestTypeDef(BaseModel): + StackName: str + NextToken: Optional[str] = None + +class ListAssociatedStacksRequestRequestTypeDef(BaseModel): + FleetName: str + NextToken: Optional[str] = None + +class ListEntitledApplicationsRequestRequestTypeDef(BaseModel): + StackName: str + EntitlementName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class StackErrorTypeDef(BaseModel): + ErrorCode: Optional[StackErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class StorageConnectorPaginatorTypeDef(BaseModel): + ConnectorType: StorageConnectorTypeType + ResourceIdentifier: Optional[str] = None + Domains: Optional[List[str]] = None + +class StartAppBlockBuilderRequestRequestTypeDef(BaseModel): + Name: str + +class StartFleetRequestRequestTypeDef(BaseModel): + Name: str + +class StartImageBuilderRequestRequestTypeDef(BaseModel): + Name: str + AppstreamAgentVersion: Optional[str] = None + +class StopAppBlockBuilderRequestRequestTypeDef(BaseModel): + Name: str + +class StopFleetRequestRequestTypeDef(BaseModel): + Name: str + +class StopImageBuilderRequestRequestTypeDef(BaseModel): + Name: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AppBlockBuilderTypeDef(BaseModel): + Arn: str + Name: str + Platform: Literal["WINDOWS_SERVER_2019"] + InstanceType: str + VpcConfig: VpcConfigTypeDef + State: AppBlockBuilderStateType + DisplayName: Optional[str] = None + Description: Optional[str] = None + EnableDefaultInternetAccess: Optional[bool] = None + IamRoleArn: Optional[str] = None + CreatedTime: Optional[datetime] = None + AppBlockBuilderErrors: Optional[List[ResourceErrorTypeDef]] = None + StateChangeReason: Optional[AppBlockBuilderStateChangeReasonTypeDef] = None + AccessEndpoints: Optional[List[AccessEndpointTypeDef]] = None + +class CreateAppBlockBuilderRequestRequestTypeDef(BaseModel): + Name: str + Platform: Literal["WINDOWS_SERVER_2019"] + InstanceType: str + VpcConfig: VpcConfigTypeDef + Description: Optional[str] = None + DisplayName: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + EnableDefaultInternetAccess: Optional[bool] = None + IamRoleArn: Optional[str] = None + AccessEndpoints: Optional[Sequence[AccessEndpointTypeDef]] = None + +class UpdateAppBlockBuilderRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + DisplayName: Optional[str] = None + Platform: Optional[PlatformTypeType] = None + InstanceType: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + EnableDefaultInternetAccess: Optional[bool] = None + IamRoleArn: Optional[str] = None + AccessEndpoints: Optional[Sequence[AccessEndpointTypeDef]] = None + AttributesToDelete: Optional[Sequence[AppBlockBuilderAttributeType]] = None + +class ApplicationTypeDef(BaseModel): + Name: Optional[str] = None + DisplayName: Optional[str] = None + IconURL: Optional[str] = None + LaunchPath: Optional[str] = None + LaunchParameters: Optional[str] = None + Enabled: Optional[bool] = None + Metadata: Optional[Dict[str, str]] = None + WorkingDirectory: Optional[str] = None + Description: Optional[str] = None + Arn: Optional[str] = None + AppBlockArn: Optional[str] = None + IconS3Location: Optional[S3LocationTypeDef] = None + Platforms: Optional[List[PlatformTypeType]] = None + InstanceFamilies: Optional[List[str]] = None + CreatedTime: Optional[datetime] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + Name: str + IconS3Location: S3LocationTypeDef + LaunchPath: str + Platforms: Sequence[PlatformTypeType] + InstanceFamilies: Sequence[str] + AppBlockArn: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + WorkingDirectory: Optional[str] = None + LaunchParameters: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ScriptDetailsTypeDef(BaseModel): + ScriptS3Location: S3LocationTypeDef + ExecutablePath: str + TimeoutInSeconds: int + ExecutableParameters: Optional[str] = None + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + Name: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + IconS3Location: Optional[S3LocationTypeDef] = None + LaunchPath: Optional[str] = None + WorkingDirectory: Optional[str] = None + LaunchParameters: Optional[str] = None + AppBlockArn: Optional[str] = None + AttributesToDelete: Optional[Sequence[ApplicationAttributeType]] = None + +class AssociateAppBlockBuilderAppBlockResultTypeDef(BaseModel): + AppBlockBuilderAppBlockAssociation: AppBlockBuilderAppBlockAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateApplicationFleetResultTypeDef(BaseModel): + ApplicationFleetAssociation: ApplicationFleetAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyImageResponseTypeDef(BaseModel): + DestinationImageName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppBlockBuilderStreamingURLResultTypeDef(BaseModel): + StreamingURL: str + Expires: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageBuilderStreamingURLResultTypeDef(BaseModel): + StreamingURL: str + Expires: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamingURLResultTypeDef(BaseModel): + StreamingURL: str + Expires: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUsageReportSubscriptionResultTypeDef(BaseModel): + S3BucketName: str + Schedule: Literal["DAILY"] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppBlockBuilderAppBlockAssociationsResultTypeDef(BaseModel): + AppBlockBuilderAppBlockAssociations: List[AppBlockBuilderAppBlockAssociationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationFleetAssociationsResultTypeDef(BaseModel): + ApplicationFleetAssociations: List[ApplicationFleetAssociationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedFleetsResultTypeDef(BaseModel): + Names: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedStacksResultTypeDef(BaseModel): + Names: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchAssociateUserStackRequestRequestTypeDef(BaseModel): + UserStackAssociations: Sequence[UserStackAssociationTypeDef] + +class BatchDisassociateUserStackRequestRequestTypeDef(BaseModel): + UserStackAssociations: Sequence[UserStackAssociationTypeDef] + +class DescribeUserStackAssociationsResultTypeDef(BaseModel): + UserStackAssociations: List[UserStackAssociationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UserStackAssociationErrorTypeDef(BaseModel): + UserStackAssociation: Optional[UserStackAssociationTypeDef] = None + ErrorCode: Optional[UserStackAssociationErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class CreateDirectoryConfigRequestRequestTypeDef(BaseModel): + DirectoryName: str + OrganizationalUnitDistinguishedNames: Sequence[str] + ServiceAccountCredentials: Optional[ServiceAccountCredentialsTypeDef] = None + CertificateBasedAuthProperties: Optional[CertificateBasedAuthPropertiesTypeDef] = None + +class DirectoryConfigTypeDef(BaseModel): + DirectoryName: str + OrganizationalUnitDistinguishedNames: Optional[List[str]] = None + ServiceAccountCredentials: Optional[ServiceAccountCredentialsTypeDef] = None + CreatedTime: Optional[datetime] = None + CertificateBasedAuthProperties: Optional[CertificateBasedAuthPropertiesTypeDef] = None + +class UpdateDirectoryConfigRequestRequestTypeDef(BaseModel): + DirectoryName: str + OrganizationalUnitDistinguishedNames: Optional[Sequence[str]] = None + ServiceAccountCredentials: Optional[ServiceAccountCredentialsTypeDef] = None + CertificateBasedAuthProperties: Optional[CertificateBasedAuthPropertiesTypeDef] = None + +class CreateEntitlementRequestRequestTypeDef(BaseModel): + Name: str + StackName: str + AppVisibility: AppVisibilityType + Attributes: Sequence[EntitlementAttributeTypeDef] + Description: Optional[str] = None + +class EntitlementTypeDef(BaseModel): + Name: str + StackName: str + AppVisibility: AppVisibilityType + Attributes: List[EntitlementAttributeTypeDef] + Description: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class UpdateEntitlementRequestRequestTypeDef(BaseModel): + Name: str + StackName: str + Description: Optional[str] = None + AppVisibility: Optional[AppVisibilityType] = None + Attributes: Optional[Sequence[EntitlementAttributeTypeDef]] = None + +class CreateFleetRequestRequestTypeDef(BaseModel): + Name: str + InstanceType: str + ImageName: Optional[str] = None + ImageArn: Optional[str] = None + FleetType: Optional[FleetTypeType] = None + ComputeCapacity: Optional[ComputeCapacityTypeDef] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + MaxUserDurationInSeconds: Optional[int] = None + DisconnectTimeoutInSeconds: Optional[int] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + IdleDisconnectTimeoutInSeconds: Optional[int] = None + IamRoleArn: Optional[str] = None + StreamView: Optional[StreamViewType] = None + Platform: Optional[PlatformTypeType] = None + MaxConcurrentSessions: Optional[int] = None + UsbDeviceFilterStrings: Optional[Sequence[str]] = None + SessionScriptS3Location: Optional[S3LocationTypeDef] = None + MaxSessionsPerInstance: Optional[int] = None + +class CreateImageBuilderRequestRequestTypeDef(BaseModel): + Name: str + InstanceType: str + ImageName: Optional[str] = None + ImageArn: Optional[str] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + IamRoleArn: Optional[str] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + AppstreamAgentVersion: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + AccessEndpoints: Optional[Sequence[AccessEndpointTypeDef]] = None + +class UpdateFleetRequestRequestTypeDef(BaseModel): + ImageName: Optional[str] = None + ImageArn: Optional[str] = None + Name: Optional[str] = None + InstanceType: Optional[str] = None + ComputeCapacity: Optional[ComputeCapacityTypeDef] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + MaxUserDurationInSeconds: Optional[int] = None + DisconnectTimeoutInSeconds: Optional[int] = None + DeleteVpcConfig: Optional[bool] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + IdleDisconnectTimeoutInSeconds: Optional[int] = None + AttributesToDelete: Optional[Sequence[FleetAttributeType]] = None + IamRoleArn: Optional[str] = None + StreamView: Optional[StreamViewType] = None + Platform: Optional[PlatformTypeType] = None + MaxConcurrentSessions: Optional[int] = None + UsbDeviceFilterStrings: Optional[Sequence[str]] = None + SessionScriptS3Location: Optional[S3LocationTypeDef] = None + MaxSessionsPerInstance: Optional[int] = None + +class CreateStackRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + DisplayName: Optional[str] = None + StorageConnectors: Optional[Sequence[StorageConnectorTypeDef]] = None + RedirectURL: Optional[str] = None + FeedbackURL: Optional[str] = None + UserSettings: Optional[Sequence[UserSettingTypeDef]] = None + ApplicationSettings: Optional[ApplicationSettingsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + AccessEndpoints: Optional[Sequence[AccessEndpointTypeDef]] = None + EmbedHostDomains: Optional[Sequence[str]] = None + StreamingExperienceSettings: Optional[StreamingExperienceSettingsTypeDef] = None + +class UpdateStackRequestRequestTypeDef(BaseModel): + Name: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + StorageConnectors: Optional[Sequence[StorageConnectorTypeDef]] = None + DeleteStorageConnectors: Optional[bool] = None + RedirectURL: Optional[str] = None + FeedbackURL: Optional[str] = None + AttributesToDelete: Optional[Sequence[StackAttributeType]] = None + UserSettings: Optional[Sequence[UserSettingTypeDef]] = None + ApplicationSettings: Optional[ApplicationSettingsTypeDef] = None + AccessEndpoints: Optional[Sequence[AccessEndpointTypeDef]] = None + EmbedHostDomains: Optional[Sequence[str]] = None + StreamingExperienceSettings: Optional[StreamingExperienceSettingsTypeDef] = None + +class DescribeDirectoryConfigsRequestDescribeDirectoryConfigsPaginateTypeDef(BaseModel): + DirectoryNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetsRequestDescribeFleetsPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImageBuildersRequestDescribeImageBuildersPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImagesRequestDescribeImagesPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + Arns: Optional[Sequence[str]] = None + Type: Optional[VisibilityTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSessionsRequestDescribeSessionsPaginateTypeDef(BaseModel): + StackName: str + FleetName: str + UserId: Optional[str] = None + AuthenticationType: Optional[AuthenticationTypeType] = None + InstanceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStacksRequestDescribeStacksPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUserStackAssociationsRequestDescribeUserStackAssociationsPaginateTypeDef(BaseModel): + StackName: Optional[str] = None + UserName: Optional[str] = None + AuthenticationType: Optional[AuthenticationTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUsersRequestDescribeUsersPaginateTypeDef(BaseModel): + AuthenticationType: AuthenticationTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedFleetsRequestListAssociatedFleetsPaginateTypeDef(BaseModel): + StackName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedStacksRequestListAssociatedStacksPaginateTypeDef(BaseModel): + FleetName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetsRequestFleetStartedWaitTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeFleetsRequestFleetStoppedWaitTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeUsersResultTypeDef(BaseModel): + Users: List[UserTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntitledApplicationsResultTypeDef(BaseModel): + EntitledApplications: List[EntitledApplicationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FleetTypeDef(BaseModel): + Arn: str + Name: str + InstanceType: str + ComputeCapacityStatus: ComputeCapacityStatusTypeDef + State: FleetStateType + DisplayName: Optional[str] = None + Description: Optional[str] = None + ImageName: Optional[str] = None + ImageArn: Optional[str] = None + FleetType: Optional[FleetTypeType] = None + MaxUserDurationInSeconds: Optional[int] = None + DisconnectTimeoutInSeconds: Optional[int] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + CreatedTime: Optional[datetime] = None + FleetErrors: Optional[List[FleetErrorTypeDef]] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + IdleDisconnectTimeoutInSeconds: Optional[int] = None + IamRoleArn: Optional[str] = None + StreamView: Optional[StreamViewType] = None + Platform: Optional[PlatformTypeType] = None + MaxConcurrentSessions: Optional[int] = None + UsbDeviceFilterStrings: Optional[List[str]] = None + SessionScriptS3Location: Optional[S3LocationTypeDef] = None + MaxSessionsPerInstance: Optional[int] = None + +class FleetPaginatorTypeDef(BaseModel): + Arn: str + Name: str + InstanceType: str + ComputeCapacityStatus: ComputeCapacityStatusTypeDef + State: FleetStateType + DisplayName: Optional[str] = None + Description: Optional[str] = None + ImageName: Optional[str] = None + ImageArn: Optional[str] = None + FleetType: Optional[FleetTypeType] = None + MaxUserDurationInSeconds: Optional[int] = None + DisconnectTimeoutInSeconds: Optional[int] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + CreatedTime: Optional[datetime] = None + FleetErrors: Optional[List[FleetErrorTypeDef]] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + IdleDisconnectTimeoutInSeconds: Optional[int] = None + IamRoleArn: Optional[str] = None + StreamView: Optional[StreamViewType] = None + Platform: Optional[PlatformTypeType] = None + MaxConcurrentSessions: Optional[int] = None + UsbDeviceFilterStrings: Optional[List[str]] = None + SessionScriptS3Location: Optional[S3LocationTypeDef] = None + MaxSessionsPerInstance: Optional[int] = None + +class ImageBuilderPaginatorTypeDef(BaseModel): + Name: str + Arn: Optional[str] = None + ImageArn: Optional[str] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + InstanceType: Optional[str] = None + Platform: Optional[PlatformTypeType] = None + IamRoleArn: Optional[str] = None + State: Optional[ImageBuilderStateType] = None + StateChangeReason: Optional[ImageBuilderStateChangeReasonTypeDef] = None + CreatedTime: Optional[datetime] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + NetworkAccessConfiguration: Optional[NetworkAccessConfigurationTypeDef] = None + ImageBuilderErrors: Optional[List[ResourceErrorTypeDef]] = None + AppstreamAgentVersion: Optional[str] = None + AccessEndpoints: Optional[List[AccessEndpointTypeDef]] = None + +class ImageBuilderTypeDef(BaseModel): + Name: str + Arn: Optional[str] = None + ImageArn: Optional[str] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + InstanceType: Optional[str] = None + Platform: Optional[PlatformTypeType] = None + IamRoleArn: Optional[str] = None + State: Optional[ImageBuilderStateType] = None + StateChangeReason: Optional[ImageBuilderStateChangeReasonTypeDef] = None + CreatedTime: Optional[datetime] = None + EnableDefaultInternetAccess: Optional[bool] = None + DomainJoinInfo: Optional[DomainJoinInfoTypeDef] = None + NetworkAccessConfiguration: Optional[NetworkAccessConfigurationTypeDef] = None + ImageBuilderErrors: Optional[List[ResourceErrorTypeDef]] = None + AppstreamAgentVersion: Optional[str] = None + AccessEndpoints: Optional[List[AccessEndpointTypeDef]] = None + +class SessionTypeDef(BaseModel): + Id: str + UserId: str + StackName: str + FleetName: str + State: SessionStateType + ConnectionState: Optional[SessionConnectionStateType] = None + StartTime: Optional[datetime] = None + MaxExpirationTime: Optional[datetime] = None + AuthenticationType: Optional[AuthenticationTypeType] = None + NetworkAccessConfiguration: Optional[NetworkAccessConfigurationTypeDef] = None + InstanceId: Optional[str] = None + +class SharedImagePermissionsTypeDef(BaseModel): + sharedAccountId: str + imagePermissions: ImagePermissionsTypeDef + +class UpdateImagePermissionsRequestRequestTypeDef(BaseModel): + Name: str + SharedAccountId: str + ImagePermissions: ImagePermissionsTypeDef + +class UsageReportSubscriptionTypeDef(BaseModel): + S3BucketName: Optional[str] = None + Schedule: Optional[Literal["DAILY"]] = None + LastGeneratedReportDate: Optional[datetime] = None + SubscriptionErrors: Optional[List[LastReportGenerationExecutionErrorTypeDef]] = None + +class StackTypeDef(BaseModel): + Name: str + Arn: Optional[str] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + CreatedTime: Optional[datetime] = None + StorageConnectors: Optional[List[StorageConnectorTypeDef]] = None + RedirectURL: Optional[str] = None + FeedbackURL: Optional[str] = None + StackErrors: Optional[List[StackErrorTypeDef]] = None + UserSettings: Optional[List[UserSettingTypeDef]] = None + ApplicationSettings: Optional[ApplicationSettingsResponseTypeDef] = None + AccessEndpoints: Optional[List[AccessEndpointTypeDef]] = None + EmbedHostDomains: Optional[List[str]] = None + StreamingExperienceSettings: Optional[StreamingExperienceSettingsTypeDef] = None + +class StackPaginatorTypeDef(BaseModel): + Name: str + Arn: Optional[str] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + CreatedTime: Optional[datetime] = None + StorageConnectors: Optional[List[StorageConnectorPaginatorTypeDef]] = None + RedirectURL: Optional[str] = None + FeedbackURL: Optional[str] = None + StackErrors: Optional[List[StackErrorTypeDef]] = None + UserSettings: Optional[List[UserSettingTypeDef]] = None + ApplicationSettings: Optional[ApplicationSettingsResponseTypeDef] = None + AccessEndpoints: Optional[List[AccessEndpointTypeDef]] = None + EmbedHostDomains: Optional[List[str]] = None + StreamingExperienceSettings: Optional[StreamingExperienceSettingsTypeDef] = None + +class CreateAppBlockBuilderResultTypeDef(BaseModel): + AppBlockBuilder: AppBlockBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppBlockBuildersResultTypeDef(BaseModel): + AppBlockBuilders: List[AppBlockBuilderTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAppBlockBuilderResultTypeDef(BaseModel): + AppBlockBuilder: AppBlockBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopAppBlockBuilderResultTypeDef(BaseModel): + AppBlockBuilder: AppBlockBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppBlockBuilderResultTypeDef(BaseModel): + AppBlockBuilder: AppBlockBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationResultTypeDef(BaseModel): + Application: ApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationsResultTypeDef(BaseModel): + Applications: List[ApplicationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImageTypeDef(BaseModel): + Name: str + Arn: Optional[str] = None + BaseImageArn: Optional[str] = None + DisplayName: Optional[str] = None + State: Optional[ImageStateType] = None + Visibility: Optional[VisibilityTypeType] = None + ImageBuilderSupported: Optional[bool] = None + ImageBuilderName: Optional[str] = None + Platform: Optional[PlatformTypeType] = None + Description: Optional[str] = None + StateChangeReason: Optional[ImageStateChangeReasonTypeDef] = None + Applications: Optional[List[ApplicationTypeDef]] = None + CreatedTime: Optional[datetime] = None + PublicBaseImageReleasedDate: Optional[datetime] = None + AppstreamAgentVersion: Optional[str] = None + ImagePermissions: Optional[ImagePermissionsTypeDef] = None + ImageErrors: Optional[List[ResourceErrorTypeDef]] = None + +class UpdateApplicationResultTypeDef(BaseModel): + Application: ApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AppBlockTypeDef(BaseModel): + Name: str + Arn: str + Description: Optional[str] = None + DisplayName: Optional[str] = None + SourceS3Location: Optional[S3LocationTypeDef] = None + SetupScriptDetails: Optional[ScriptDetailsTypeDef] = None + CreatedTime: Optional[datetime] = None + PostSetupScriptDetails: Optional[ScriptDetailsTypeDef] = None + PackagingType: Optional[PackagingTypeType] = None + State: Optional[AppBlockStateType] = None + AppBlockErrors: Optional[List[ErrorDetailsTypeDef]] = None + +class CreateAppBlockRequestRequestTypeDef(BaseModel): + Name: str + SourceS3Location: S3LocationTypeDef + Description: Optional[str] = None + DisplayName: Optional[str] = None + SetupScriptDetails: Optional[ScriptDetailsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + PostSetupScriptDetails: Optional[ScriptDetailsTypeDef] = None + PackagingType: Optional[PackagingTypeType] = None + +class BatchAssociateUserStackResultTypeDef(BaseModel): + errors: List[UserStackAssociationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateUserStackResultTypeDef(BaseModel): + errors: List[UserStackAssociationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDirectoryConfigResultTypeDef(BaseModel): + DirectoryConfig: DirectoryConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDirectoryConfigsResultTypeDef(BaseModel): + DirectoryConfigs: List[DirectoryConfigTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDirectoryConfigResultTypeDef(BaseModel): + DirectoryConfig: DirectoryConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEntitlementResultTypeDef(BaseModel): + Entitlement: EntitlementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEntitlementsResultTypeDef(BaseModel): + Entitlements: List[EntitlementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEntitlementResultTypeDef(BaseModel): + Entitlement: EntitlementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetResultTypeDef(BaseModel): + Fleet: FleetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetsResultTypeDef(BaseModel): + Fleets: List[FleetTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetResultTypeDef(BaseModel): + Fleet: FleetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetsResultPaginatorTypeDef(BaseModel): + Fleets: List[FleetPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageBuildersResultPaginatorTypeDef(BaseModel): + ImageBuilders: List[ImageBuilderPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageBuilderResultTypeDef(BaseModel): + ImageBuilder: ImageBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImageBuilderResultTypeDef(BaseModel): + ImageBuilder: ImageBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageBuildersResultTypeDef(BaseModel): + ImageBuilders: List[ImageBuilderTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImageBuilderResultTypeDef(BaseModel): + ImageBuilder: ImageBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopImageBuilderResultTypeDef(BaseModel): + ImageBuilder: ImageBuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSessionsResultTypeDef(BaseModel): + Sessions: List[SessionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImagePermissionsResultTypeDef(BaseModel): + Name: str + SharedImagePermissionsList: List[SharedImagePermissionsTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUsageReportSubscriptionsResultTypeDef(BaseModel): + UsageReportSubscriptions: List[UsageReportSubscriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStackResultTypeDef(BaseModel): + Stack: StackTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStacksResultTypeDef(BaseModel): + Stacks: List[StackTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStackResultTypeDef(BaseModel): + Stack: StackTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStacksResultPaginatorTypeDef(BaseModel): + Stacks: List[StackPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUpdatedImageResultTypeDef(BaseModel): + image: ImageTypeDef + canUpdateImage: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImageResultTypeDef(BaseModel): + Image: ImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImagesResultTypeDef(BaseModel): + Images: List[ImageTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppBlockResultTypeDef(BaseModel): + AppBlock: AppBlockTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppBlocksResultTypeDef(BaseModel): + AppBlocks: List[AppBlockTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appstream_constants.py b/aws_resource_validator/pydantic_models/appstream_constants.py new file mode 100644 index 00000000..09233819 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appstream_constants.py @@ -0,0 +1,521 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessEndpointTypeType = Literal["STREAMING"] +ActionType = Literal["CLIPBOARD_COPY_FROM_LOCAL_DEVICE", + "CLIPBOARD_COPY_TO_LOCAL_DEVICE", + "DOMAIN_PASSWORD_SIGNIN", + "DOMAIN_SMART_CARD_SIGNIN", + "FILE_DOWNLOAD", + "FILE_UPLOAD", + "PRINTING_TO_LOCAL_DEVICE",] +AppBlockBuilderAttributeType = Literal["ACCESS_ENDPOINTS", "IAM_ROLE_ARN", "VPC_CONFIGURATION_SECURITY_GROUP_IDS"] +AppBlockBuilderPlatformTypeType = Literal["WINDOWS_SERVER_2019"] +AppBlockBuilderStateChangeReasonCodeType = Literal["INTERNAL_ERROR"] +AppBlockBuilderStateType = Literal["RUNNING", "STARTING", "STOPPED", "STOPPING"] +AppBlockStateType = Literal["ACTIVE", "INACTIVE"] +AppVisibilityType = Literal["ALL", "ASSOCIATED"] +ApplicationAttributeType = Literal["LAUNCH_PARAMETERS", "WORKING_DIRECTORY"] +AuthenticationTypeType = Literal["API", "AWS_AD", "SAML", "USERPOOL"] +CertificateBasedAuthStatusType = Literal["DISABLED", "ENABLED", "ENABLED_NO_DIRECTORY_LOGIN_FALLBACK"] +DescribeDirectoryConfigsPaginatorName = Literal["describe_directory_configs"] +DescribeFleetsPaginatorName = Literal["describe_fleets"] +DescribeImageBuildersPaginatorName = Literal["describe_image_builders"] +DescribeImagesPaginatorName = Literal["describe_images"] +DescribeSessionsPaginatorName = Literal["describe_sessions"] +DescribeStacksPaginatorName = Literal["describe_stacks"] +DescribeUserStackAssociationsPaginatorName = Literal["describe_user_stack_associations"] +DescribeUsersPaginatorName = Literal["describe_users"] +FleetAttributeType = Literal["DOMAIN_JOIN_INFO", + "IAM_ROLE_ARN", + "MAX_SESSIONS_PER_INSTANCE", + "SESSION_SCRIPT_S3_LOCATION", + "USB_DEVICE_FILTER_STRINGS", + "VPC_CONFIGURATION", + "VPC_CONFIGURATION_SECURITY_GROUP_IDS",] +FleetErrorCodeType = Literal["DOMAIN_JOIN_ERROR_ACCESS_DENIED", + "DOMAIN_JOIN_ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED", + "DOMAIN_JOIN_ERROR_FILE_NOT_FOUND", + "DOMAIN_JOIN_ERROR_INVALID_PARAMETER", + "DOMAIN_JOIN_ERROR_LOGON_FAILURE", + "DOMAIN_JOIN_ERROR_MORE_DATA", + "DOMAIN_JOIN_ERROR_NOT_SUPPORTED", + "DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN", + "DOMAIN_JOIN_INTERNAL_SERVICE_ERROR", + "DOMAIN_JOIN_NERR_INVALID_WORKGROUP_NAME", + "DOMAIN_JOIN_NERR_PASSWORD_EXPIRED", + "DOMAIN_JOIN_NERR_WORKSTATION_NOT_STARTED", + "FLEET_INSTANCE_PROVISIONING_FAILURE", + "FLEET_STOPPED", + "IAM_SERVICE_ROLE_IS_MISSING", + "IAM_SERVICE_ROLE_MISSING_DESCRIBE_SECURITY_GROUPS_ACTION", + "IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION", + "IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION", + "IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION", + "IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION", + "IGW_NOT_ATTACHED", + "IMAGE_NOT_FOUND", + "INTERNAL_SERVICE_ERROR", + "INVALID_SUBNET_CONFIGURATION", + "MACHINE_ROLE_IS_MISSING", + "NETWORK_INTERFACE_LIMIT_EXCEEDED", + "SECURITY_GROUPS_NOT_FOUND", + "STS_DISABLED_IN_REGION", + "SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES", + "SUBNET_NOT_FOUND",] +FleetStartedWaiterName = Literal["fleet_started"] +FleetStateType = Literal["RUNNING", "STARTING", "STOPPED", "STOPPING"] +FleetStoppedWaiterName = Literal["fleet_stopped"] +FleetTypeType = Literal["ALWAYS_ON", "ELASTIC", "ON_DEMAND"] +ImageBuilderStateChangeReasonCodeType = Literal["IMAGE_UNAVAILABLE", "INTERNAL_ERROR"] +ImageBuilderStateType = Literal["DELETING", + "FAILED", + "PENDING", + "PENDING_QUALIFICATION", + "REBOOTING", + "RUNNING", + "SNAPSHOTTING", + "STOPPED", + "STOPPING", + "UPDATING", + "UPDATING_AGENT",] +ImageStateChangeReasonCodeType = Literal["IMAGE_BUILDER_NOT_AVAILABLE", "IMAGE_COPY_FAILURE", "INTERNAL_ERROR"] +ImageStateType = Literal["AVAILABLE", "COPYING", "CREATING", "DELETING", "FAILED", "IMPORTING", "PENDING"] +ListAssociatedFleetsPaginatorName = Literal["list_associated_fleets"] +ListAssociatedStacksPaginatorName = Literal["list_associated_stacks"] +MessageActionType = Literal["RESEND", "SUPPRESS"] +PackagingTypeType = Literal["APPSTREAM2", "CUSTOM"] +PermissionType = Literal["DISABLED", "ENABLED"] +PlatformTypeType = Literal["AMAZON_LINUX2", "WINDOWS", "WINDOWS_SERVER_2016", "WINDOWS_SERVER_2019", "WINDOWS_SERVER_2022"] +PreferredProtocolType = Literal["TCP", "UDP"] +SessionConnectionStateType = Literal["CONNECTED", "NOT_CONNECTED"] +SessionStateType = Literal["ACTIVE", "EXPIRED", "PENDING"] +StackAttributeType = Literal["ACCESS_ENDPOINTS", + "EMBED_HOST_DOMAINS", + "FEEDBACK_URL", + "IAM_ROLE_ARN", + "REDIRECT_URL", + "STORAGE_CONNECTORS", + "STORAGE_CONNECTOR_GOOGLE_DRIVE", + "STORAGE_CONNECTOR_HOMEFOLDERS", + "STORAGE_CONNECTOR_ONE_DRIVE", + "STREAMING_EXPERIENCE_SETTINGS", + "THEME_NAME", + "USER_SETTINGS",] +StackErrorCodeType = Literal["INTERNAL_SERVICE_ERROR", "STORAGE_CONNECTOR_ERROR"] +StorageConnectorTypeType = Literal["GOOGLE_DRIVE", "HOMEFOLDERS", "ONE_DRIVE"] +StreamViewType = Literal["APP", "DESKTOP"] +UsageReportExecutionErrorCodeType = Literal["ACCESS_DENIED", "INTERNAL_SERVICE_ERROR", "RESOURCE_NOT_FOUND"] +UsageReportScheduleType = Literal["DAILY"] +UserStackAssociationErrorCodeType = Literal["DIRECTORY_NOT_FOUND", "INTERNAL_ERROR", "STACK_NOT_FOUND", "USER_NAME_NOT_FOUND"] +VisibilityTypeType = Literal["PRIVATE", "PUBLIC", "SHARED"] +AppStreamServiceName = Literal["appstream"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_directory_configs", + "describe_fleets", + "describe_image_builders", + "describe_images", + "describe_sessions", + "describe_stacks", + "describe_user_stack_associations", + "describe_users", + "list_associated_fleets", + "list_associated_stacks",] +WaiterName = Literal["fleet_started", "fleet_stopped"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/appsync_classes.py b/aws_resource_validator/pydantic_models/appsync_classes.py new file mode 100644 index 00000000..c8752c18 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appsync_classes.py @@ -0,0 +1,963 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.appsync_constants import * + +class CognitoUserPoolConfigTypeDef(BaseModel): + userPoolId: str + awsRegion: str + appIdClientRegex: Optional[str] = None + +class LambdaAuthorizerConfigTypeDef(BaseModel): + authorizerUri: str + authorizerResultTtlInSeconds: Optional[int] = None + identityValidationExpression: Optional[str] = None + +class OpenIDConnectConfigTypeDef(BaseModel): + issuer: str + clientId: Optional[str] = None + iatTTL: Optional[int] = None + authTTL: Optional[int] = None + +class ApiAssociationTypeDef(BaseModel): + domainName: Optional[str] = None + apiId: Optional[str] = None + associationStatus: Optional[AssociationStatusType] = None + deploymentDetail: Optional[str] = None + +class ApiCacheTypeDef(BaseModel): + ttl: Optional[int] = None + apiCachingBehavior: Optional[ApiCachingBehaviorType] = None + transitEncryptionEnabled: Optional[bool] = None + atRestEncryptionEnabled: Optional[bool] = None + type: Optional[ApiCacheTypeType] = None + status: Optional[ApiCacheStatusType] = None + healthMetricsConfig: Optional[CacheHealthMetricsConfigType] = None + +class ApiKeyTypeDef(BaseModel): + id: Optional[str] = None + description: Optional[str] = None + expires: Optional[int] = None + deletes: Optional[int] = None + +class AppSyncRuntimeTypeDef(BaseModel): + name: Literal["APPSYNC_JS"] + runtimeVersion: str + +class AssociateApiRequestRequestTypeDef(BaseModel): + domainName: str + apiId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class SourceApiAssociationConfigTypeDef(BaseModel): + mergeType: Optional[MergeTypeType] = None + +class AwsIamConfigTypeDef(BaseModel): + signingRegion: Optional[str] = None + signingServiceName: Optional[str] = None + +class CachingConfigExtraOutputTypeDef(BaseModel): + ttl: int + cachingKeys: Optional[List[str]] = None + +class CachingConfigOutputTypeDef(BaseModel): + ttl: int + cachingKeys: Optional[List[str]] = None + +class CachingConfigTypeDef(BaseModel): + ttl: int + cachingKeys: Optional[Sequence[str]] = None + +class CodeErrorLocationTypeDef(BaseModel): + line: Optional[int] = None + column: Optional[int] = None + span: Optional[int] = None + +class CreateApiCacheRequestRequestTypeDef(BaseModel): + apiId: str + ttl: int + apiCachingBehavior: ApiCachingBehaviorType + type: ApiCacheTypeType + transitEncryptionEnabled: Optional[bool] = None + atRestEncryptionEnabled: Optional[bool] = None + healthMetricsConfig: Optional[CacheHealthMetricsConfigType] = None + +class CreateApiKeyRequestRequestTypeDef(BaseModel): + apiId: str + description: Optional[str] = None + expires: Optional[int] = None + +class ElasticsearchDataSourceConfigTypeDef(BaseModel): + endpoint: str + awsRegion: str + +class EventBridgeDataSourceConfigTypeDef(BaseModel): + eventBusArn: str + +class LambdaDataSourceConfigTypeDef(BaseModel): + lambdaFunctionArn: str + +class OpenSearchServiceDataSourceConfigTypeDef(BaseModel): + endpoint: str + awsRegion: str + +class CreateDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + certificateArn: str + description: Optional[str] = None + +class DomainNameConfigTypeDef(BaseModel): + domainName: Optional[str] = None + description: Optional[str] = None + certificateArn: Optional[str] = None + appsyncDomainName: Optional[str] = None + hostedZoneId: Optional[str] = None + +class EnhancedMetricsConfigTypeDef(BaseModel): + resolverLevelMetricsBehavior: ResolverLevelMetricsBehaviorType + dataSourceLevelMetricsBehavior: DataSourceLevelMetricsBehaviorType + operationLevelMetricsConfig: OperationLevelMetricsConfigType + +class LogConfigTypeDef(BaseModel): + fieldLogLevel: FieldLogLevelType + cloudWatchLogsRoleArn: str + excludeVerboseContent: Optional[bool] = None + +class UserPoolConfigTypeDef(BaseModel): + userPoolId: str + awsRegion: str + defaultAction: DefaultActionType + appIdClientRegex: Optional[str] = None + +class PipelineConfigTypeDef(BaseModel): + functions: Optional[Sequence[str]] = None + +class CreateTypeRequestRequestTypeDef(BaseModel): + apiId: str + definition: str + format: TypeDefinitionFormatType + +class TypeTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + arn: Optional[str] = None + definition: Optional[str] = None + format: Optional[TypeDefinitionFormatType] = None + +class DataSourceIntrospectionModelFieldTypeDef(BaseModel): + name: Optional[str] = None + type: Optional["DataSourceIntrospectionModelFieldTypeTypeDef"] = None + length: Optional[int] = None + +class DataSourceIntrospectionModelFieldTypeTypeDef(BaseModel): + kind: Optional[str] = None + name: Optional[str] = None + type: Optional[Dict[str, Any]] = None + values: Optional[List[str]] = None + +class DataSourceIntrospectionModelIndexTypeDef(BaseModel): + name: Optional[str] = None + fields: Optional[List[str]] = None + +class DeleteApiCacheRequestRequestTypeDef(BaseModel): + apiId: str + +class DeleteApiKeyRequestRequestTypeDef(BaseModel): + apiId: str + id: str + +class DeleteDataSourceRequestRequestTypeDef(BaseModel): + apiId: str + name: str + +class DeleteDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + +class DeleteFunctionRequestRequestTypeDef(BaseModel): + apiId: str + functionId: str + +class DeleteGraphqlApiRequestRequestTypeDef(BaseModel): + apiId: str + +class DeleteResolverRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + fieldName: str + +class DeleteTypeRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + +class DeltaSyncConfigTypeDef(BaseModel): + baseTableTTL: Optional[int] = None + deltaSyncTableName: Optional[str] = None + deltaSyncTableTTL: Optional[int] = None + +class DisassociateApiRequestRequestTypeDef(BaseModel): + domainName: str + +class DisassociateMergedGraphqlApiRequestRequestTypeDef(BaseModel): + sourceApiIdentifier: str + associationId: str + +class DisassociateSourceGraphqlApiRequestRequestTypeDef(BaseModel): + mergedApiIdentifier: str + associationId: str + +class ErrorDetailTypeDef(BaseModel): + message: Optional[str] = None + +class EvaluateMappingTemplateRequestRequestTypeDef(BaseModel): + template: str + context: str + +class FlushApiCacheRequestRequestTypeDef(BaseModel): + apiId: str + +class GetApiAssociationRequestRequestTypeDef(BaseModel): + domainName: str + +class GetApiCacheRequestRequestTypeDef(BaseModel): + apiId: str + +class GetDataSourceIntrospectionRequestRequestTypeDef(BaseModel): + introspectionId: str + includeModelsSDL: Optional[bool] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetDataSourceRequestRequestTypeDef(BaseModel): + apiId: str + name: str + +class GetDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + +class GetFunctionRequestRequestTypeDef(BaseModel): + apiId: str + functionId: str + +class GetGraphqlApiEnvironmentVariablesRequestRequestTypeDef(BaseModel): + apiId: str + +class GetGraphqlApiRequestRequestTypeDef(BaseModel): + apiId: str + +class GetIntrospectionSchemaRequestRequestTypeDef(BaseModel): + apiId: str + format: OutputTypeType + includeDirectives: Optional[bool] = None + +class GetResolverRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + fieldName: str + +class GetSchemaCreationStatusRequestRequestTypeDef(BaseModel): + apiId: str + +class GetSourceApiAssociationRequestRequestTypeDef(BaseModel): + mergedApiIdentifier: str + associationId: str + +class GetTypeRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + format: TypeDefinitionFormatType + +class LambdaConflictHandlerConfigTypeDef(BaseModel): + lambdaConflictHandlerArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApiKeysRequestRequestTypeDef(BaseModel): + apiId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDataSourcesRequestRequestTypeDef(BaseModel): + apiId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDomainNamesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFunctionsRequestRequestTypeDef(BaseModel): + apiId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListGraphqlApisRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + apiType: Optional[GraphQLApiTypeType] = None + owner: Optional[OwnershipType] = None + +class ListResolversByFunctionRequestRequestTypeDef(BaseModel): + apiId: str + functionId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListResolversRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListSourceApiAssociationsRequestRequestTypeDef(BaseModel): + apiId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SourceApiAssociationSummaryTypeDef(BaseModel): + associationId: Optional[str] = None + associationArn: Optional[str] = None + sourceApiId: Optional[str] = None + sourceApiArn: Optional[str] = None + mergedApiId: Optional[str] = None + mergedApiArn: Optional[str] = None + description: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTypesByAssociationRequestRequestTypeDef(BaseModel): + mergedApiIdentifier: str + associationId: str + format: TypeDefinitionFormatType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTypesRequestRequestTypeDef(BaseModel): + apiId: str + format: TypeDefinitionFormatType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PipelineConfigExtraOutputTypeDef(BaseModel): + functions: Optional[List[str]] = None + +class PipelineConfigOutputTypeDef(BaseModel): + functions: Optional[List[str]] = None + +class PutGraphqlApiEnvironmentVariablesRequestRequestTypeDef(BaseModel): + apiId: str + environmentVariables: Mapping[str, str] + +class RdsDataApiConfigTypeDef(BaseModel): + resourceArn: str + secretArn: str + databaseName: str + +class RdsHttpEndpointConfigTypeDef(BaseModel): + awsRegion: Optional[str] = None + dbClusterIdentifier: Optional[str] = None + databaseName: Optional[str] = None + schema: Optional[str] = None + awsSecretStoreArn: Optional[str] = None + +class StartSchemaMergeRequestRequestTypeDef(BaseModel): + associationId: str + mergedApiIdentifier: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateApiCacheRequestRequestTypeDef(BaseModel): + apiId: str + ttl: int + apiCachingBehavior: ApiCachingBehaviorType + type: ApiCacheTypeType + healthMetricsConfig: Optional[CacheHealthMetricsConfigType] = None + +class UpdateApiKeyRequestRequestTypeDef(BaseModel): + apiId: str + id: str + description: Optional[str] = None + expires: Optional[int] = None + +class UpdateDomainNameRequestRequestTypeDef(BaseModel): + domainName: str + description: Optional[str] = None + +class UpdateTypeRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + format: TypeDefinitionFormatType + definition: Optional[str] = None + +class AdditionalAuthenticationProviderTypeDef(BaseModel): + authenticationType: Optional[AuthenticationTypeType] = None + openIDConnectConfig: Optional[OpenIDConnectConfigTypeDef] = None + userPoolConfig: Optional[CognitoUserPoolConfigTypeDef] = None + lambdaAuthorizerConfig: Optional[LambdaAuthorizerConfigTypeDef] = None + +class EvaluateCodeRequestRequestTypeDef(BaseModel): + runtime: AppSyncRuntimeTypeDef + code: str + context: str + function: Optional[str] = None + +class AssociateApiResponseTypeDef(BaseModel): + apiAssociation: ApiAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApiCacheResponseTypeDef(BaseModel): + apiCache: ApiCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApiKeyResponseTypeDef(BaseModel): + apiKey: ApiKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateMergedGraphqlApiResponseTypeDef(BaseModel): + sourceApiAssociationStatus: SourceApiAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateSourceGraphqlApiResponseTypeDef(BaseModel): + sourceApiAssociationStatus: SourceApiAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetApiAssociationResponseTypeDef(BaseModel): + apiAssociation: ApiAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApiCacheResponseTypeDef(BaseModel): + apiCache: ApiCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGraphqlApiEnvironmentVariablesResponseTypeDef(BaseModel): + environmentVariables: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntrospectionSchemaResponseTypeDef(BaseModel): + schema: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaCreationStatusResponseTypeDef(BaseModel): + status: SchemaStatusType + details: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApiKeysResponseTypeDef(BaseModel): + apiKeys: List[ApiKeyTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutGraphqlApiEnvironmentVariablesResponseTypeDef(BaseModel): + environmentVariables: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataSourceIntrospectionResponseTypeDef(BaseModel): + introspectionId: str + introspectionStatus: DataSourceIntrospectionStatusType + introspectionStatusDetail: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSchemaCreationResponseTypeDef(BaseModel): + status: SchemaStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartSchemaMergeResponseTypeDef(BaseModel): + sourceApiAssociationStatus: SourceApiAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApiCacheResponseTypeDef(BaseModel): + apiCache: ApiCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApiKeyResponseTypeDef(BaseModel): + apiKey: ApiKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateMergedGraphqlApiRequestRequestTypeDef(BaseModel): + sourceApiIdentifier: str + mergedApiIdentifier: str + description: Optional[str] = None + sourceApiAssociationConfig: Optional[SourceApiAssociationConfigTypeDef] = None + +class AssociateSourceGraphqlApiRequestRequestTypeDef(BaseModel): + mergedApiIdentifier: str + sourceApiIdentifier: str + description: Optional[str] = None + sourceApiAssociationConfig: Optional[SourceApiAssociationConfigTypeDef] = None + +class SourceApiAssociationTypeDef(BaseModel): + associationId: Optional[str] = None + associationArn: Optional[str] = None + sourceApiId: Optional[str] = None + sourceApiArn: Optional[str] = None + mergedApiArn: Optional[str] = None + mergedApiId: Optional[str] = None + description: Optional[str] = None + sourceApiAssociationConfig: Optional[SourceApiAssociationConfigTypeDef] = None + sourceApiAssociationStatus: Optional[SourceApiAssociationStatusType] = None + sourceApiAssociationStatusDetail: Optional[str] = None + lastSuccessfulMergeDate: Optional[datetime] = None + +class UpdateSourceApiAssociationRequestRequestTypeDef(BaseModel): + associationId: str + mergedApiIdentifier: str + description: Optional[str] = None + sourceApiAssociationConfig: Optional[SourceApiAssociationConfigTypeDef] = None + +class AuthorizationConfigTypeDef(BaseModel): + authorizationType: Literal["AWS_IAM"] + awsIamConfig: Optional[AwsIamConfigTypeDef] = None + +class StartSchemaCreationRequestRequestTypeDef(BaseModel): + apiId: str + definition: BlobTypeDef + +class CodeErrorTypeDef(BaseModel): + errorType: Optional[str] = None + value: Optional[str] = None + location: Optional[CodeErrorLocationTypeDef] = None + +class CreateDomainNameResponseTypeDef(BaseModel): + domainNameConfig: DomainNameConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainNameResponseTypeDef(BaseModel): + domainNameConfig: DomainNameConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainNamesResponseTypeDef(BaseModel): + domainNameConfigs: List[DomainNameConfigTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainNameResponseTypeDef(BaseModel): + domainNameConfig: DomainNameConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTypeResponseTypeDef(BaseModel): + type: TypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTypeResponseTypeDef(BaseModel): + type: TypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTypesByAssociationResponseTypeDef(BaseModel): + types: List[TypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTypesResponseTypeDef(BaseModel): + types: List[TypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTypeResponseTypeDef(BaseModel): + type: TypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceIntrospectionModelTypeDef(BaseModel): + name: Optional[str] = None + fields: Optional[List[DataSourceIntrospectionModelFieldTypeDef]] = None + primaryKey: Optional[DataSourceIntrospectionModelIndexTypeDef] = None + indexes: Optional[List[DataSourceIntrospectionModelIndexTypeDef]] = None + sdl: Optional[str] = None + +class DynamodbDataSourceConfigTypeDef(BaseModel): + tableName: str + awsRegion: str + useCallerCredentials: Optional[bool] = None + deltaSyncConfig: Optional[DeltaSyncConfigTypeDef] = None + versioned: Optional[bool] = None + +class EvaluateMappingTemplateResponseTypeDef(BaseModel): + evaluationResult: str + error: ErrorDetailTypeDef + logs: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class SyncConfigTypeDef(BaseModel): + conflictHandler: Optional[ConflictHandlerTypeType] = None + conflictDetection: Optional[ConflictDetectionTypeType] = None + lambdaConflictHandlerConfig: Optional[LambdaConflictHandlerConfigTypeDef] = None + +class ListApiKeysRequestListApiKeysPaginateTypeDef(BaseModel): + apiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourcesRequestListDataSourcesPaginateTypeDef(BaseModel): + apiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionsRequestListFunctionsPaginateTypeDef(BaseModel): + apiId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGraphqlApisRequestListGraphqlApisPaginateTypeDef(BaseModel): + apiType: Optional[GraphQLApiTypeType] = None + owner: Optional[OwnershipType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolversByFunctionRequestListResolversByFunctionPaginateTypeDef(BaseModel): + apiId: str + functionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolversRequestListResolversPaginateTypeDef(BaseModel): + apiId: str + typeName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTypesRequestListTypesPaginateTypeDef(BaseModel): + apiId: str + format: TypeDefinitionFormatType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSourceApiAssociationsResponseTypeDef(BaseModel): + sourceApiAssociationSummaries: List[SourceApiAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataSourceIntrospectionRequestRequestTypeDef(BaseModel): + rdsDataApiConfig: Optional[RdsDataApiConfigTypeDef] = None + +class RelationalDatabaseDataSourceConfigTypeDef(BaseModel): + relationalDatabaseSourceType: Optional[Literal["RDS_HTTP_ENDPOINT"]] = None + rdsHttpEndpointConfig: Optional[RdsHttpEndpointConfigTypeDef] = None + +class CreateGraphqlApiRequestRequestTypeDef(BaseModel): + name: str + authenticationType: AuthenticationTypeType + logConfig: Optional[LogConfigTypeDef] = None + userPoolConfig: Optional[UserPoolConfigTypeDef] = None + openIDConnectConfig: Optional[OpenIDConnectConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + additionalAuthenticationProviders: Optional[ Sequence[AdditionalAuthenticationProviderTypeDef] ] = None + xrayEnabled: Optional[bool] = None + lambdaAuthorizerConfig: Optional[LambdaAuthorizerConfigTypeDef] = None + visibility: Optional[GraphQLApiVisibilityType] = None + apiType: Optional[GraphQLApiTypeType] = None + mergedApiExecutionRoleArn: Optional[str] = None + ownerContact: Optional[str] = None + introspectionConfig: Optional[GraphQLApiIntrospectionConfigType] = None + queryDepthLimit: Optional[int] = None + resolverCountLimit: Optional[int] = None + enhancedMetricsConfig: Optional[EnhancedMetricsConfigTypeDef] = None + +class GraphqlApiTypeDef(BaseModel): + name: Optional[str] = None + apiId: Optional[str] = None + authenticationType: Optional[AuthenticationTypeType] = None + logConfig: Optional[LogConfigTypeDef] = None + userPoolConfig: Optional[UserPoolConfigTypeDef] = None + openIDConnectConfig: Optional[OpenIDConnectConfigTypeDef] = None + arn: Optional[str] = None + uris: Optional[Dict[str, str]] = None + tags: Optional[Dict[str, str]] = None + additionalAuthenticationProviders: Optional[ List[AdditionalAuthenticationProviderTypeDef] ] = None + xrayEnabled: Optional[bool] = None + wafWebAclArn: Optional[str] = None + lambdaAuthorizerConfig: Optional[LambdaAuthorizerConfigTypeDef] = None + dns: Optional[Dict[str, str]] = None + visibility: Optional[GraphQLApiVisibilityType] = None + apiType: Optional[GraphQLApiTypeType] = None + mergedApiExecutionRoleArn: Optional[str] = None + owner: Optional[str] = None + ownerContact: Optional[str] = None + introspectionConfig: Optional[GraphQLApiIntrospectionConfigType] = None + queryDepthLimit: Optional[int] = None + resolverCountLimit: Optional[int] = None + enhancedMetricsConfig: Optional[EnhancedMetricsConfigTypeDef] = None + +class UpdateGraphqlApiRequestRequestTypeDef(BaseModel): + apiId: str + name: str + authenticationType: AuthenticationTypeType + logConfig: Optional[LogConfigTypeDef] = None + userPoolConfig: Optional[UserPoolConfigTypeDef] = None + openIDConnectConfig: Optional[OpenIDConnectConfigTypeDef] = None + additionalAuthenticationProviders: Optional[ Sequence[AdditionalAuthenticationProviderTypeDef] ] = None + xrayEnabled: Optional[bool] = None + lambdaAuthorizerConfig: Optional[LambdaAuthorizerConfigTypeDef] = None + mergedApiExecutionRoleArn: Optional[str] = None + ownerContact: Optional[str] = None + introspectionConfig: Optional[GraphQLApiIntrospectionConfigType] = None + queryDepthLimit: Optional[int] = None + resolverCountLimit: Optional[int] = None + enhancedMetricsConfig: Optional[EnhancedMetricsConfigTypeDef] = None + +class AssociateMergedGraphqlApiResponseTypeDef(BaseModel): + sourceApiAssociation: SourceApiAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateSourceGraphqlApiResponseTypeDef(BaseModel): + sourceApiAssociation: SourceApiAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSourceApiAssociationResponseTypeDef(BaseModel): + sourceApiAssociation: SourceApiAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSourceApiAssociationResponseTypeDef(BaseModel): + sourceApiAssociation: SourceApiAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HttpDataSourceConfigTypeDef(BaseModel): + endpoint: Optional[str] = None + authorizationConfig: Optional[AuthorizationConfigTypeDef] = None + +class EvaluateCodeErrorDetailTypeDef(BaseModel): + message: Optional[str] = None + codeErrors: Optional[List[CodeErrorTypeDef]] = None + +class DataSourceIntrospectionResultTypeDef(BaseModel): + models: Optional[List[DataSourceIntrospectionModelTypeDef]] = None + nextToken: Optional[str] = None + +class CreateFunctionRequestRequestTypeDef(BaseModel): + apiId: str + name: str + dataSourceName: str + description: Optional[str] = None + requestMappingTemplate: Optional[str] = None + responseMappingTemplate: Optional[str] = None + functionVersion: Optional[str] = None + syncConfig: Optional[SyncConfigTypeDef] = None + maxBatchSize: Optional[int] = None + runtime: Optional[AppSyncRuntimeTypeDef] = None + code: Optional[str] = None + +class CreateResolverRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + fieldName: str + dataSourceName: Optional[str] = None + requestMappingTemplate: Optional[str] = None + responseMappingTemplate: Optional[str] = None + kind: Optional[ResolverKindType] = None + pipelineConfig: Optional[PipelineConfigTypeDef] = None + syncConfig: Optional[SyncConfigTypeDef] = None + cachingConfig: Optional[CachingConfigTypeDef] = None + maxBatchSize: Optional[int] = None + runtime: Optional[AppSyncRuntimeTypeDef] = None + code: Optional[str] = None + metricsConfig: Optional[ResolverLevelMetricsConfigType] = None + +class FunctionConfigurationTypeDef(BaseModel): + functionId: Optional[str] = None + functionArn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + dataSourceName: Optional[str] = None + requestMappingTemplate: Optional[str] = None + responseMappingTemplate: Optional[str] = None + functionVersion: Optional[str] = None + syncConfig: Optional[SyncConfigTypeDef] = None + maxBatchSize: Optional[int] = None + runtime: Optional[AppSyncRuntimeTypeDef] = None + code: Optional[str] = None + +class ResolverTypeDef(BaseModel): + typeName: Optional[str] = None + fieldName: Optional[str] = None + dataSourceName: Optional[str] = None + resolverArn: Optional[str] = None + requestMappingTemplate: Optional[str] = None + responseMappingTemplate: Optional[str] = None + kind: Optional[ResolverKindType] = None + pipelineConfig: Optional[PipelineConfigOutputTypeDef] = None + syncConfig: Optional[SyncConfigTypeDef] = None + cachingConfig: Optional[CachingConfigOutputTypeDef] = None + maxBatchSize: Optional[int] = None + runtime: Optional[AppSyncRuntimeTypeDef] = None + code: Optional[str] = None + metricsConfig: Optional[ResolverLevelMetricsConfigType] = None + +class UpdateFunctionRequestRequestTypeDef(BaseModel): + apiId: str + name: str + functionId: str + dataSourceName: str + description: Optional[str] = None + requestMappingTemplate: Optional[str] = None + responseMappingTemplate: Optional[str] = None + functionVersion: Optional[str] = None + syncConfig: Optional[SyncConfigTypeDef] = None + maxBatchSize: Optional[int] = None + runtime: Optional[AppSyncRuntimeTypeDef] = None + code: Optional[str] = None + +class UpdateResolverRequestRequestTypeDef(BaseModel): + apiId: str + typeName: str + fieldName: str + dataSourceName: Optional[str] = None + requestMappingTemplate: Optional[str] = None + responseMappingTemplate: Optional[str] = None + kind: Optional[ResolverKindType] = None + pipelineConfig: Optional[PipelineConfigTypeDef] = None + syncConfig: Optional[SyncConfigTypeDef] = None + cachingConfig: Optional[CachingConfigTypeDef] = None + maxBatchSize: Optional[int] = None + runtime: Optional[AppSyncRuntimeTypeDef] = None + code: Optional[str] = None + metricsConfig: Optional[ResolverLevelMetricsConfigType] = None + +class CreateGraphqlApiResponseTypeDef(BaseModel): + graphqlApi: GraphqlApiTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGraphqlApiResponseTypeDef(BaseModel): + graphqlApi: GraphqlApiTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGraphqlApisResponseTypeDef(BaseModel): + graphqlApis: List[GraphqlApiTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGraphqlApiResponseTypeDef(BaseModel): + graphqlApi: GraphqlApiTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceRequestRequestTypeDef(BaseModel): + apiId: str + name: str + type: DataSourceTypeType + description: Optional[str] = None + serviceRoleArn: Optional[str] = None + dynamodbConfig: Optional[DynamodbDataSourceConfigTypeDef] = None + lambdaConfig: Optional[LambdaDataSourceConfigTypeDef] = None + elasticsearchConfig: Optional[ElasticsearchDataSourceConfigTypeDef] = None + openSearchServiceConfig: Optional[OpenSearchServiceDataSourceConfigTypeDef] = None + httpConfig: Optional[HttpDataSourceConfigTypeDef] = None + relationalDatabaseConfig: Optional[RelationalDatabaseDataSourceConfigTypeDef] = None + eventBridgeConfig: Optional[EventBridgeDataSourceConfigTypeDef] = None + metricsConfig: Optional[DataSourceLevelMetricsConfigType] = None + +class DataSourceTypeDef(BaseModel): + dataSourceArn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + type: Optional[DataSourceTypeType] = None + serviceRoleArn: Optional[str] = None + dynamodbConfig: Optional[DynamodbDataSourceConfigTypeDef] = None + lambdaConfig: Optional[LambdaDataSourceConfigTypeDef] = None + elasticsearchConfig: Optional[ElasticsearchDataSourceConfigTypeDef] = None + openSearchServiceConfig: Optional[OpenSearchServiceDataSourceConfigTypeDef] = None + httpConfig: Optional[HttpDataSourceConfigTypeDef] = None + relationalDatabaseConfig: Optional[RelationalDatabaseDataSourceConfigTypeDef] = None + eventBridgeConfig: Optional[EventBridgeDataSourceConfigTypeDef] = None + metricsConfig: Optional[DataSourceLevelMetricsConfigType] = None + +class UpdateDataSourceRequestRequestTypeDef(BaseModel): + apiId: str + name: str + type: DataSourceTypeType + description: Optional[str] = None + serviceRoleArn: Optional[str] = None + dynamodbConfig: Optional[DynamodbDataSourceConfigTypeDef] = None + lambdaConfig: Optional[LambdaDataSourceConfigTypeDef] = None + elasticsearchConfig: Optional[ElasticsearchDataSourceConfigTypeDef] = None + openSearchServiceConfig: Optional[OpenSearchServiceDataSourceConfigTypeDef] = None + httpConfig: Optional[HttpDataSourceConfigTypeDef] = None + relationalDatabaseConfig: Optional[RelationalDatabaseDataSourceConfigTypeDef] = None + eventBridgeConfig: Optional[EventBridgeDataSourceConfigTypeDef] = None + metricsConfig: Optional[DataSourceLevelMetricsConfigType] = None + +class EvaluateCodeResponseTypeDef(BaseModel): + evaluationResult: str + error: EvaluateCodeErrorDetailTypeDef + logs: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataSourceIntrospectionResponseTypeDef(BaseModel): + introspectionId: str + introspectionStatus: DataSourceIntrospectionStatusType + introspectionStatusDetail: str + introspectionResult: DataSourceIntrospectionResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFunctionResponseTypeDef(BaseModel): + functionConfiguration: FunctionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFunctionResponseTypeDef(BaseModel): + functionConfiguration: FunctionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionsResponseTypeDef(BaseModel): + functions: List[FunctionConfigurationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFunctionResponseTypeDef(BaseModel): + functionConfiguration: FunctionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResolverResponseTypeDef(BaseModel): + resolver: ResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverResponseTypeDef(BaseModel): + resolver: ResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolversByFunctionResponseTypeDef(BaseModel): + resolvers: List[ResolverTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolversResponseTypeDef(BaseModel): + resolvers: List[ResolverTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResolverResponseTypeDef(BaseModel): + resolver: ResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceResponseTypeDef(BaseModel): + dataSource: DataSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataSourceResponseTypeDef(BaseModel): + dataSource: DataSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourcesResponseTypeDef(BaseModel): + dataSources: List[DataSourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceResponseTypeDef(BaseModel): + dataSource: DataSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/appsync_constants.py b/aws_resource_validator/pydantic_models/appsync_constants.py new file mode 100644 index 00000000..fdbb7ed5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/appsync_constants.py @@ -0,0 +1,500 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApiCacheStatusType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED", "MODIFYING"] +ApiCacheTypeType = Literal["LARGE", + "LARGE_12X", + "LARGE_2X", + "LARGE_4X", + "LARGE_8X", + "MEDIUM", + "R4_2XLARGE", + "R4_4XLARGE", + "R4_8XLARGE", + "R4_LARGE", + "R4_XLARGE", + "SMALL", + "T2_MEDIUM", + "T2_SMALL", + "XLARGE",] +ApiCachingBehaviorType = Literal["FULL_REQUEST_CACHING", "PER_RESOLVER_CACHING"] +AssociationStatusType = Literal["FAILED", "PROCESSING", "SUCCESS"] +AuthenticationTypeType = Literal["AMAZON_COGNITO_USER_POOLS", "API_KEY", "AWS_IAM", "AWS_LAMBDA", "OPENID_CONNECT"] +AuthorizationTypeType = Literal["AWS_IAM"] +CacheHealthMetricsConfigType = Literal["DISABLED", "ENABLED"] +ConflictDetectionTypeType = Literal["NONE", "VERSION"] +ConflictHandlerTypeType = Literal["AUTOMERGE", "LAMBDA", "NONE", "OPTIMISTIC_CONCURRENCY"] +DataSourceIntrospectionStatusType = Literal["FAILED", "PROCESSING", "SUCCESS"] +DataSourceLevelMetricsBehaviorType = Literal["FULL_REQUEST_DATA_SOURCE_METRICS", "PER_DATA_SOURCE_METRICS"] +DataSourceLevelMetricsConfigType = Literal["DISABLED", "ENABLED"] +DataSourceTypeType = Literal["AMAZON_DYNAMODB", + "AMAZON_ELASTICSEARCH", + "AMAZON_EVENTBRIDGE", + "AMAZON_OPENSEARCH_SERVICE", + "AWS_LAMBDA", + "HTTP", + "NONE", + "RELATIONAL_DATABASE",] +DefaultActionType = Literal["ALLOW", "DENY"] +FieldLogLevelType = Literal["ALL", "ERROR", "NONE"] +GraphQLApiIntrospectionConfigType = Literal["DISABLED", "ENABLED"] +GraphQLApiTypeType = Literal["GRAPHQL", "MERGED"] +GraphQLApiVisibilityType = Literal["GLOBAL", "PRIVATE"] +ListApiKeysPaginatorName = Literal["list_api_keys"] +ListDataSourcesPaginatorName = Literal["list_data_sources"] +ListFunctionsPaginatorName = Literal["list_functions"] +ListGraphqlApisPaginatorName = Literal["list_graphql_apis"] +ListResolversByFunctionPaginatorName = Literal["list_resolvers_by_function"] +ListResolversPaginatorName = Literal["list_resolvers"] +ListTypesPaginatorName = Literal["list_types"] +MergeTypeType = Literal["AUTO_MERGE", "MANUAL_MERGE"] +OperationLevelMetricsConfigType = Literal["DISABLED", "ENABLED"] +OutputTypeType = Literal["JSON", "SDL"] +OwnershipType = Literal["CURRENT_ACCOUNT", "OTHER_ACCOUNTS"] +RelationalDatabaseSourceTypeType = Literal["RDS_HTTP_ENDPOINT"] +ResolverKindType = Literal["PIPELINE", "UNIT"] +ResolverLevelMetricsBehaviorType = Literal["FULL_REQUEST_RESOLVER_METRICS", "PER_RESOLVER_METRICS"] +ResolverLevelMetricsConfigType = Literal["DISABLED", "ENABLED"] +RuntimeNameType = Literal["APPSYNC_JS"] +SchemaStatusType = Literal["ACTIVE", "DELETING", "FAILED", "NOT_APPLICABLE", "PROCESSING", "SUCCESS"] +SourceApiAssociationStatusType = Literal["AUTO_MERGE_SCHEDULE_FAILED", + "DELETION_FAILED", + "DELETION_IN_PROGRESS", + "DELETION_SCHEDULED", + "MERGE_FAILED", + "MERGE_IN_PROGRESS", + "MERGE_SCHEDULED", + "MERGE_SUCCESS",] +TypeDefinitionFormatType = Literal["JSON", "SDL"] +AppSyncServiceName = Literal["appsync"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_api_keys", + "list_data_sources", + "list_functions", + "list_graphql_apis", + "list_resolvers", + "list_resolvers_by_function", + "list_types",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +CachingConfigUnionTypeDef = Union['CachingConfigTypeDef', 'CachingConfigExtraOutputTypeDef'] +PipelineConfigUnionTypeDef = Union['PipelineConfigTypeDef', 'PipelineConfigExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/apptest_classes.py b/aws_resource_validator/pydantic_models/apptest_classes.py new file mode 100644 index 00000000..1f44b636 --- /dev/null +++ b/aws_resource_validator/pydantic_models/apptest_classes.py @@ -0,0 +1,732 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.apptest_constants import * + +class BatchOutputTypeDef(BaseModel): + batchJobName: str + batchJobParameters: Optional[Dict[str, str]] = None + exportDataSetNames: Optional[List[str]] = None + +class MainframeActionPropertiesTypeDef(BaseModel): + dmsTaskArn: Optional[str] = None + +class DataSetTypeDef(BaseModel): + type: Literal["PS"] + name: str + ccsid: str + format: FormatType + length: int + +class BatchTypeDef(BaseModel): + batchJobName: str + batchJobParameters: Optional[Mapping[str, str]] = None + exportDataSetNames: Optional[Sequence[str]] = None + +class CloudFormationActionTypeDef(BaseModel): + resource: str + actionType: Optional[CloudFormationActionTypeType] = None + +class CloudFormationOutputTypeDef(BaseModel): + templateLocation: str + parameters: Optional[Dict[str, str]] = None + +class CloudFormationTypeDef(BaseModel): + templateLocation: str + parameters: Optional[Mapping[str, str]] = None + +class CompareDataSetsStepOutputTypeDef(BaseModel): + comparisonOutputLocation: str + comparisonStatus: ComparisonStatusEnumType + +class SourceDatabaseMetadataTypeDef(BaseModel): + type: Literal["z/OS-DB2"] + captureTool: CaptureToolType + +class TargetDatabaseMetadataTypeDef(BaseModel): + type: Literal["PostgreSQL"] + captureTool: CaptureToolType + +class CompareDatabaseCDCStepOutputTypeDef(BaseModel): + comparisonOutputLocation: str + comparisonStatus: ComparisonStatusEnumType + +class CreateCloudFormationStepInputTypeDef(BaseModel): + templateLocation: str + parameters: Optional[Dict[str, str]] = None + +class CreateCloudFormationStepOutputTypeDef(BaseModel): + stackId: str + exports: Optional[Dict[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ServiceSettingsTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + +class TestCasesTypeDef(BaseModel): + sequential: Optional[Sequence[str]] = None + +class DeleteCloudFormationStepInputTypeDef(BaseModel): + stackId: str + +class DeleteTestCaseRequestRequestTypeDef(BaseModel): + testCaseId: str + +class DeleteTestConfigurationRequestRequestTypeDef(BaseModel): + testConfigurationId: str + +class DeleteTestRunRequestRequestTypeDef(BaseModel): + testRunId: str + +class DeleteTestSuiteRequestRequestTypeDef(BaseModel): + testSuiteId: str + +class GetTestCaseRequestRequestTypeDef(BaseModel): + testCaseId: str + testCaseVersion: Optional[int] = None + +class TestCaseLatestVersionTypeDef(BaseModel): + version: int + status: TestCaseLifecycleType + statusReason: Optional[str] = None + +class GetTestConfigurationRequestRequestTypeDef(BaseModel): + testConfigurationId: str + testConfigurationVersion: Optional[int] = None + +class TestConfigurationLatestVersionTypeDef(BaseModel): + version: int + status: TestConfigurationLifecycleType + statusReason: Optional[str] = None + +class GetTestRunStepRequestRequestTypeDef(BaseModel): + testRunId: str + stepName: str + testCaseId: Optional[str] = None + testSuiteId: Optional[str] = None + +class GetTestSuiteRequestRequestTypeDef(BaseModel): + testSuiteId: str + testSuiteVersion: Optional[int] = None + +class TestCasesOutputTypeDef(BaseModel): + sequential: Optional[List[str]] = None + +class TestSuiteLatestVersionTypeDef(BaseModel): + version: int + status: TestSuiteLifecycleType + statusReason: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTestCasesRequestRequestTypeDef(BaseModel): + testCaseIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestCaseSummaryTypeDef(BaseModel): + testCaseId: str + testCaseArn: str + name: str + latestVersion: int + status: TestCaseLifecycleType + creationTime: datetime + lastUpdateTime: datetime + statusReason: Optional[str] = None + +class ListTestConfigurationsRequestRequestTypeDef(BaseModel): + testConfigurationIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestConfigurationSummaryTypeDef(BaseModel): + testConfigurationId: str + name: str + latestVersion: int + testConfigurationArn: str + status: TestConfigurationLifecycleType + creationTime: datetime + lastUpdateTime: datetime + statusReason: Optional[str] = None + +class ListTestRunStepsRequestRequestTypeDef(BaseModel): + testRunId: str + testCaseId: Optional[str] = None + testSuiteId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestRunStepSummaryTypeDef(BaseModel): + stepName: str + testRunId: str + status: StepRunStatusType + runStartTime: datetime + testCaseId: Optional[str] = None + testCaseVersion: Optional[int] = None + testSuiteId: Optional[str] = None + testSuiteVersion: Optional[int] = None + beforeStep: Optional[bool] = None + afterStep: Optional[bool] = None + statusReason: Optional[str] = None + runEndTime: Optional[datetime] = None + +class ListTestRunTestCasesRequestRequestTypeDef(BaseModel): + testRunId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestCaseRunSummaryTypeDef(BaseModel): + testCaseId: str + testCaseVersion: int + testRunId: str + status: TestCaseRunStatusType + runStartTime: datetime + statusReason: Optional[str] = None + runEndTime: Optional[datetime] = None + +class ListTestRunsRequestRequestTypeDef(BaseModel): + testSuiteId: Optional[str] = None + testRunIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestRunSummaryTypeDef(BaseModel): + testRunId: str + testRunArn: str + testSuiteId: str + testSuiteVersion: int + status: TestRunStatusType + runStartTime: datetime + testConfigurationId: Optional[str] = None + testConfigurationVersion: Optional[int] = None + statusReason: Optional[str] = None + runEndTime: Optional[datetime] = None + +class ListTestSuitesRequestRequestTypeDef(BaseModel): + testSuiteIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestSuiteSummaryTypeDef(BaseModel): + testSuiteId: str + name: str + latestVersion: int + testSuiteArn: str + status: TestSuiteLifecycleType + creationTime: datetime + lastUpdateTime: datetime + statusReason: Optional[str] = None + +class M2ManagedActionPropertiesTypeDef(BaseModel): + forceStop: Optional[bool] = None + importDataSetLocation: Optional[str] = None + +class M2ManagedApplicationStepOutputTypeDef(BaseModel): + importDataSetSummary: Optional[Dict[str, str]] = None + +class M2ManagedApplicationSummaryTypeDef(BaseModel): + applicationId: str + runtime: Literal["MicroFocus"] + listenerPort: Optional[int] = None + +class M2ManagedApplicationTypeDef(BaseModel): + applicationId: str + runtime: Literal["MicroFocus"] + vpcEndpointServiceName: Optional[str] = None + listenerPort: Optional[str] = None + +class M2NonManagedApplicationActionTypeDef(BaseModel): + resource: str + actionType: M2NonManagedActionTypeType + +class M2NonManagedApplicationStepInputTypeDef(BaseModel): + vpcEndpointServiceName: str + listenerPort: int + runtime: Literal["BluAge"] + actionType: M2NonManagedActionTypeType + webAppName: Optional[str] = None + +class M2NonManagedApplicationSummaryTypeDef(BaseModel): + vpcEndpointServiceName: str + listenerPort: int + runtime: Literal["BluAge"] + webAppName: Optional[str] = None + +class M2NonManagedApplicationTypeDef(BaseModel): + vpcEndpointServiceName: str + listenerPort: str + runtime: Literal["BluAge"] + webAppName: Optional[str] = None + +class OutputFileTypeDef(BaseModel): + fileLocation: Optional[str] = None + +class ScriptSummaryTypeDef(BaseModel): + scriptLocation: str + type: Literal["Selenium"] + +class ScriptTypeDef(BaseModel): + scriptLocation: str + type: Literal["Selenium"] + +class StartTestRunRequestRequestTypeDef(BaseModel): + testSuiteId: str + testConfigurationId: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class BatchStepOutputTypeDef(BaseModel): + dataSetExportLocation: Optional[str] = None + dmsOutputLocation: Optional[str] = None + dataSetDetails: Optional[List[DataSetTypeDef]] = None + +class CompareDataSetsStepInputTypeDef(BaseModel): + sourceLocation: str + targetLocation: str + sourceDataSets: List[DataSetTypeDef] + targetDataSets: List[DataSetTypeDef] + +class TN3270StepOutputTypeDef(BaseModel): + scriptOutputLocation: str + dataSetExportLocation: Optional[str] = None + dmsOutputLocation: Optional[str] = None + dataSetDetails: Optional[List[DataSetTypeDef]] = None + +class CompareDatabaseCDCStepInputTypeDef(BaseModel): + sourceLocation: str + targetLocation: str + sourceMetadata: SourceDatabaseMetadataTypeDef + targetMetadata: TargetDatabaseMetadataTypeDef + outputLocation: Optional[str] = None + +class DatabaseCDCTypeDef(BaseModel): + sourceMetadata: SourceDatabaseMetadataTypeDef + targetMetadata: TargetDatabaseMetadataTypeDef + +class CreateCloudFormationSummaryTypeDef(BaseModel): + stepInput: CreateCloudFormationStepInputTypeDef + stepOutput: Optional[CreateCloudFormationStepOutputTypeDef] = None + +class CreateTestCaseResponseTypeDef(BaseModel): + testCaseId: str + testCaseVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTestConfigurationResponseTypeDef(BaseModel): + testConfigurationId: str + testConfigurationVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTestSuiteResponseTypeDef(BaseModel): + testSuiteId: str + testSuiteVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartTestRunResponseTypeDef(BaseModel): + testRunId: str + testRunStatus: TestRunStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTestCaseResponseTypeDef(BaseModel): + testCaseId: str + testCaseVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTestConfigurationResponseTypeDef(BaseModel): + testConfigurationId: str + testConfigurationVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTestSuiteResponseTypeDef(BaseModel): + testSuiteId: str + testSuiteVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCloudFormationSummaryTypeDef(BaseModel): + stepInput: DeleteCloudFormationStepInputTypeDef + stepOutput: Optional[Dict[str, Any]] = None + +class ListTestCasesRequestListTestCasesPaginateTypeDef(BaseModel): + testCaseIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestConfigurationsRequestListTestConfigurationsPaginateTypeDef(BaseModel): + testConfigurationIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestRunStepsRequestListTestRunStepsPaginateTypeDef(BaseModel): + testRunId: str + testCaseId: Optional[str] = None + testSuiteId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestRunTestCasesRequestListTestRunTestCasesPaginateTypeDef(BaseModel): + testRunId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestRunsRequestListTestRunsPaginateTypeDef(BaseModel): + testSuiteId: Optional[str] = None + testRunIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestSuitesRequestListTestSuitesPaginateTypeDef(BaseModel): + testSuiteIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestCasesResponseTypeDef(BaseModel): + testCases: List[TestCaseSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestConfigurationsResponseTypeDef(BaseModel): + testConfigurations: List[TestConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestRunStepsResponseTypeDef(BaseModel): + testRunSteps: List[TestRunStepSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestRunTestCasesResponseTypeDef(BaseModel): + testRunTestCases: List[TestCaseRunSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestRunsResponseTypeDef(BaseModel): + testRuns: List[TestRunSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestSuitesResponseTypeDef(BaseModel): + testSuites: List[TestSuiteSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class M2ManagedApplicationActionTypeDef(BaseModel): + resource: str + actionType: M2ManagedActionTypeType + properties: Optional[M2ManagedActionPropertiesTypeDef] = None + +class M2ManagedApplicationStepInputTypeDef(BaseModel): + applicationId: str + runtime: str + actionType: M2ManagedActionTypeType + vpcEndpointServiceName: Optional[str] = None + listenerPort: Optional[int] = None + properties: Optional[M2ManagedActionPropertiesTypeDef] = None + +class M2NonManagedApplicationStepSummaryTypeDef(BaseModel): + stepInput: M2NonManagedApplicationStepInputTypeDef + stepOutput: Optional[Dict[str, Any]] = None + +class MainframeResourceSummaryTypeDef(BaseModel): + m2ManagedApplication: Optional[M2ManagedApplicationSummaryTypeDef] = None + m2NonManagedApplication: Optional[M2NonManagedApplicationSummaryTypeDef] = None + +class ResourceTypeOutputTypeDef(BaseModel): + cloudFormation: Optional[CloudFormationOutputTypeDef] = None + m2ManagedApplication: Optional[M2ManagedApplicationTypeDef] = None + m2NonManagedApplication: Optional[M2NonManagedApplicationTypeDef] = None + +class ResourceTypeTypeDef(BaseModel): + cloudFormation: Optional[CloudFormationTypeDef] = None + m2ManagedApplication: Optional[M2ManagedApplicationTypeDef] = None + m2NonManagedApplication: Optional[M2NonManagedApplicationTypeDef] = None + +class OutputTypeDef(BaseModel): + file: Optional[OutputFileTypeDef] = None + +class TN3270OutputTypeDef(BaseModel): + script: ScriptTypeDef + exportDataSetNames: Optional[List[str]] = None + +class TN3270TypeDef(BaseModel): + script: ScriptTypeDef + exportDataSetNames: Optional[Sequence[str]] = None + +class CompareDataSetsSummaryTypeDef(BaseModel): + stepInput: CompareDataSetsStepInputTypeDef + stepOutput: Optional[CompareDataSetsStepOutputTypeDef] = None + +class CompareDatabaseCDCSummaryTypeDef(BaseModel): + stepInput: CompareDatabaseCDCStepInputTypeDef + stepOutput: Optional[CompareDatabaseCDCStepOutputTypeDef] = None + +class FileMetadataOutputTypeDef(BaseModel): + dataSets: Optional[List[DataSetTypeDef]] = None + databaseCDC: Optional[DatabaseCDCTypeDef] = None + +class FileMetadataTypeDef(BaseModel): + dataSets: Optional[Sequence[DataSetTypeDef]] = None + databaseCDC: Optional[DatabaseCDCTypeDef] = None + +class CloudFormationStepSummaryTypeDef(BaseModel): + createCloudformation: Optional[CreateCloudFormationSummaryTypeDef] = None + deleteCloudformation: Optional[DeleteCloudFormationSummaryTypeDef] = None + +class ResourceActionTypeDef(BaseModel): + m2ManagedApplicationAction: Optional[M2ManagedApplicationActionTypeDef] = None + m2NonManagedApplicationAction: Optional[M2NonManagedApplicationActionTypeDef] = None + cloudFormationAction: Optional[CloudFormationActionTypeDef] = None + +class M2ManagedApplicationStepSummaryTypeDef(BaseModel): + stepInput: M2ManagedApplicationStepInputTypeDef + stepOutput: Optional[M2ManagedApplicationStepOutputTypeDef] = None + +class BatchStepInputTypeDef(BaseModel): + resource: MainframeResourceSummaryTypeDef + batchJobName: str + batchJobParameters: Optional[Dict[str, str]] = None + exportDataSetNames: Optional[List[str]] = None + properties: Optional[MainframeActionPropertiesTypeDef] = None + +class TN3270StepInputTypeDef(BaseModel): + resource: MainframeResourceSummaryTypeDef + script: ScriptSummaryTypeDef + exportDataSetNames: Optional[List[str]] = None + properties: Optional[MainframeActionPropertiesTypeDef] = None + +class ResourceOutputTypeDef(BaseModel): + name: str + type: ResourceTypeOutputTypeDef + +class ResourceTypeDef(BaseModel): + name: str + type: ResourceTypeTypeDef + +class MainframeActionTypeOutputTypeDef(BaseModel): + batch: Optional[BatchOutputTypeDef] = None + tn3270: Optional[TN3270OutputTypeDef] = None + +class MainframeActionTypeTypeDef(BaseModel): + batch: Optional[BatchTypeDef] = None + tn3270: Optional[TN3270TypeDef] = None + +class CompareFileTypeTypeDef(BaseModel): + datasets: Optional[CompareDataSetsSummaryTypeDef] = None + databaseCDC: Optional[CompareDatabaseCDCSummaryTypeDef] = None + +class InputFileOutputTypeDef(BaseModel): + sourceLocation: str + targetLocation: str + fileMetadata: FileMetadataOutputTypeDef + +class InputFileTypeDef(BaseModel): + sourceLocation: str + targetLocation: str + fileMetadata: FileMetadataTypeDef + +class ResourceActionSummaryTypeDef(BaseModel): + cloudFormation: Optional[CloudFormationStepSummaryTypeDef] = None + m2ManagedApplication: Optional[M2ManagedApplicationStepSummaryTypeDef] = None + m2NonManagedApplication: Optional[M2NonManagedApplicationStepSummaryTypeDef] = None + +class BatchSummaryTypeDef(BaseModel): + stepInput: BatchStepInputTypeDef + stepOutput: Optional[BatchStepOutputTypeDef] = None + +class TN3270SummaryTypeDef(BaseModel): + stepInput: TN3270StepInputTypeDef + stepOutput: Optional[TN3270StepOutputTypeDef] = None + +class GetTestConfigurationResponseTypeDef(BaseModel): + testConfigurationId: str + name: str + testConfigurationArn: str + latestVersion: TestConfigurationLatestVersionTypeDef + testConfigurationVersion: int + status: TestConfigurationLifecycleType + statusReason: str + creationTime: datetime + lastUpdateTime: datetime + description: str + resources: List[ResourceOutputTypeDef] + properties: Dict[str, str] + tags: Dict[str, str] + serviceSettings: ServiceSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MainframeActionOutputTypeDef(BaseModel): + resource: str + actionType: MainframeActionTypeOutputTypeDef + properties: Optional[MainframeActionPropertiesTypeDef] = None + +class MainframeActionTypeDef(BaseModel): + resource: str + actionType: MainframeActionTypeTypeDef + properties: Optional[MainframeActionPropertiesTypeDef] = None + +class FileTypeDef(BaseModel): + fileType: Optional[CompareFileTypeTypeDef] = None + +class InputOutputTypeDef(BaseModel): + file: Optional[InputFileOutputTypeDef] = None + +class InputTypeDef(BaseModel): + file: Optional[InputFileTypeDef] = None + +class MainframeActionSummaryTypeDef(BaseModel): + batch: Optional[BatchSummaryTypeDef] = None + tn3270: Optional[TN3270SummaryTypeDef] = None + +class CreateTestConfigurationRequestRequestTypeDef(BaseModel): + name: str + resources: Sequence[ResourceUnionTypeDef] + description: Optional[str] = None + properties: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + serviceSettings: Optional[ServiceSettingsTypeDef] = None + +class UpdateTestConfigurationRequestRequestTypeDef(BaseModel): + testConfigurationId: str + description: Optional[str] = None + resources: Optional[Sequence[ResourceUnionTypeDef]] = None + properties: Optional[Mapping[str, str]] = None + serviceSettings: Optional[ServiceSettingsTypeDef] = None + +class CompareActionSummaryTypeDef(BaseModel): + type: FileTypeDef + +class CompareActionOutputTypeDef(BaseModel): + input: InputOutputTypeDef + output: Optional[OutputTypeDef] = None + +class CompareActionTypeDef(BaseModel): + input: InputTypeDef + output: Optional[OutputTypeDef] = None + +class StepRunSummaryTypeDef(BaseModel): + mainframeAction: Optional[MainframeActionSummaryTypeDef] = None + compareAction: Optional[CompareActionSummaryTypeDef] = None + resourceAction: Optional[ResourceActionSummaryTypeDef] = None + +class StepActionOutputTypeDef(BaseModel): + resourceAction: Optional[ResourceActionTypeDef] = None + mainframeAction: Optional[MainframeActionOutputTypeDef] = None + compareAction: Optional[CompareActionOutputTypeDef] = None + +class StepActionTypeDef(BaseModel): + resourceAction: Optional[ResourceActionTypeDef] = None + mainframeAction: Optional[MainframeActionTypeDef] = None + compareAction: Optional[CompareActionTypeDef] = None + +class GetTestRunStepResponseTypeDef(BaseModel): + stepName: str + testRunId: str + testCaseId: str + testCaseVersion: int + testSuiteId: str + testSuiteVersion: int + beforeStep: bool + afterStep: bool + status: StepRunStatusType + statusReason: str + runStartTime: datetime + runEndTime: datetime + stepRunSummary: StepRunSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StepOutputTypeDef(BaseModel): + name: str + action: StepActionOutputTypeDef + description: Optional[str] = None + +class StepTypeDef(BaseModel): + name: str + action: StepActionTypeDef + description: Optional[str] = None + +class GetTestCaseResponseTypeDef(BaseModel): + testCaseId: str + testCaseArn: str + name: str + description: str + latestVersion: TestCaseLatestVersionTypeDef + testCaseVersion: int + status: TestCaseLifecycleType + statusReason: str + creationTime: datetime + lastUpdateTime: datetime + steps: List[StepOutputTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTestSuiteResponseTypeDef(BaseModel): + testSuiteId: str + name: str + latestVersion: TestSuiteLatestVersionTypeDef + testSuiteVersion: int + status: TestSuiteLifecycleType + statusReason: str + testSuiteArn: str + creationTime: datetime + lastUpdateTime: datetime + description: str + beforeSteps: List[StepOutputTypeDef] + afterSteps: List[StepOutputTypeDef] + testCases: TestCasesOutputTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTestCaseRequestRequestTypeDef(BaseModel): + name: str + steps: Sequence[StepUnionTypeDef] + description: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateTestSuiteRequestRequestTypeDef(BaseModel): + name: str + testCases: TestCasesTypeDef + description: Optional[str] = None + beforeSteps: Optional[Sequence[StepUnionTypeDef]] = None + afterSteps: Optional[Sequence[StepUnionTypeDef]] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateTestCaseRequestRequestTypeDef(BaseModel): + testCaseId: str + description: Optional[str] = None + steps: Optional[Sequence[StepUnionTypeDef]] = None + +class UpdateTestSuiteRequestRequestTypeDef(BaseModel): + testSuiteId: str + description: Optional[str] = None + beforeSteps: Optional[Sequence[StepUnionTypeDef]] = None + afterSteps: Optional[Sequence[StepUnionTypeDef]] = None + testCases: Optional[TestCasesTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/apptest_constants.py b/aws_resource_validator/pydantic_models/apptest_constants.py new file mode 100644 index 00000000..090c92df --- /dev/null +++ b/aws_resource_validator/pydantic_models/apptest_constants.py @@ -0,0 +1,432 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CaptureToolType = Literal["AWS DMS", "Precisely"] +CloudFormationActionTypeType = Literal["Create", "Delete"] +ComparisonStatusEnumType = Literal["Different", "Equal", "Equivalent"] +DataSetTypeType = Literal["PS"] +FormatType = Literal["FIXED", "LINE_SEQUENTIAL", "VARIABLE"] +ListTestCasesPaginatorName = Literal["list_test_cases"] +ListTestConfigurationsPaginatorName = Literal["list_test_configurations"] +ListTestRunStepsPaginatorName = Literal["list_test_run_steps"] +ListTestRunTestCasesPaginatorName = Literal["list_test_run_test_cases"] +ListTestRunsPaginatorName = Literal["list_test_runs"] +ListTestSuitesPaginatorName = Literal["list_test_suites"] +M2ManagedActionTypeType = Literal["Configure", "Deconfigure"] +M2ManagedRuntimeType = Literal["MicroFocus"] +M2NonManagedActionTypeType = Literal["Configure", "Deconfigure"] +M2NonManagedRuntimeType = Literal["BluAge"] +ScriptTypeType = Literal["Selenium"] +SourceDatabaseType = Literal["z/OS-DB2"] +StepRunStatusType = Literal["Failed", "Running", "Success"] +TargetDatabaseType = Literal["PostgreSQL"] +TestCaseLifecycleType = Literal["Active", "Deleting"] +TestCaseRunStatusType = Literal["Failed", "Running", "Success"] +TestConfigurationLifecycleType = Literal["Active", "Deleting"] +TestRunStatusType = Literal["Deleting", "Failed", "Running", "Success"] +TestSuiteLifecycleType = Literal["Active", "Creating", "Deleting", "Failed", "Updating"] +MainframeModernizationApplicationTestingServiceName = Literal["apptest"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_test_cases", + "list_test_configurations", + "list_test_run_steps", + "list_test_run_test_cases", + "list_test_runs", + "list_test_suites",] +TestCasesUnionTypeDef = Union['TestCasesTypeDef', 'TestCasesOutputTypeDef'] +ResourceUnionTypeDef = Union['ResourceTypeDef', 'ResourceOutputTypeDef'] +StepUnionTypeDef = Union['StepTypeDef', 'StepOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/arc_zonal_shift_classes.py b/aws_resource_validator/pydantic_models/arc_zonal_shift_classes.py new file mode 100644 index 00000000..e6ca870e --- /dev/null +++ b/aws_resource_validator/pydantic_models/arc_zonal_shift_classes.py @@ -0,0 +1,201 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.arc_zonal_shift_constants import * + +class AutoshiftInResourceTypeDef(BaseModel): + appliedStatus: AutoshiftAppliedStatusType + awayFrom: str + startTime: datetime + +class AutoshiftSummaryTypeDef(BaseModel): + awayFrom: str + endTime: datetime + startTime: datetime + status: AutoshiftExecutionStatusType + +class CancelZonalShiftRequestRequestTypeDef(BaseModel): + zonalShiftId: str + +class ControlConditionTypeDef(BaseModel): + alarmIdentifier: str + type: Literal["CLOUDWATCH"] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeletePracticeRunConfigurationRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + +class GetManagedResourceRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + +class ZonalShiftInResourceTypeDef(BaseModel): + appliedStatus: AppliedStatusType + awayFrom: str + comment: str + expiryTime: datetime + resourceIdentifier: str + startTime: datetime + zonalShiftId: str + practiceRunOutcome: Optional[PracticeRunOutcomeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAutoshiftsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[AutoshiftExecutionStatusType] = None + +class ListManagedResourcesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListZonalShiftsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resourceIdentifier: Optional[str] = None + status: Optional[ZonalShiftStatusType] = None + +class ZonalShiftSummaryTypeDef(BaseModel): + awayFrom: str + comment: str + expiryTime: datetime + resourceIdentifier: str + startTime: datetime + status: ZonalShiftStatusType + zonalShiftId: str + practiceRunOutcome: Optional[PracticeRunOutcomeType] = None + +class StartZonalShiftRequestRequestTypeDef(BaseModel): + awayFrom: str + comment: str + expiresIn: str + resourceIdentifier: str + +class UpdateZonalAutoshiftConfigurationRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + zonalAutoshiftStatus: ZonalAutoshiftStatusType + +class UpdateZonalShiftRequestRequestTypeDef(BaseModel): + zonalShiftId: str + comment: Optional[str] = None + expiresIn: Optional[str] = None + +class CreatePracticeRunConfigurationRequestRequestTypeDef(BaseModel): + outcomeAlarms: Sequence[ControlConditionTypeDef] + resourceIdentifier: str + blockedDates: Optional[Sequence[str]] = None + blockedWindows: Optional[Sequence[str]] = None + blockingAlarms: Optional[Sequence[ControlConditionTypeDef]] = None + +class PracticeRunConfigurationTypeDef(BaseModel): + outcomeAlarms: List[ControlConditionTypeDef] + blockedDates: Optional[List[str]] = None + blockedWindows: Optional[List[str]] = None + blockingAlarms: Optional[List[ControlConditionTypeDef]] = None + +class UpdatePracticeRunConfigurationRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + blockedDates: Optional[Sequence[str]] = None + blockedWindows: Optional[Sequence[str]] = None + blockingAlarms: Optional[Sequence[ControlConditionTypeDef]] = None + outcomeAlarms: Optional[Sequence[ControlConditionTypeDef]] = None + +class DeletePracticeRunConfigurationResponseTypeDef(BaseModel): + arn: str + name: str + zonalAutoshiftStatus: ZonalAutoshiftStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListAutoshiftsResponseTypeDef(BaseModel): + items: List[AutoshiftSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateZonalAutoshiftConfigurationResponseTypeDef(BaseModel): + resourceIdentifier: str + zonalAutoshiftStatus: ZonalAutoshiftStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ZonalShiftTypeDef(BaseModel): + awayFrom: str + comment: str + expiryTime: datetime + resourceIdentifier: str + startTime: datetime + status: ZonalShiftStatusType + zonalShiftId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ManagedResourceSummaryTypeDef(BaseModel): + availabilityZones: List[str] + appliedWeights: Optional[Dict[str, float]] = None + arn: Optional[str] = None + autoshifts: Optional[List[AutoshiftInResourceTypeDef]] = None + name: Optional[str] = None + practiceRunStatus: Optional[ZonalAutoshiftStatusType] = None + zonalAutoshiftStatus: Optional[ZonalAutoshiftStatusType] = None + zonalShifts: Optional[List[ZonalShiftInResourceTypeDef]] = None + +class ListAutoshiftsRequestListAutoshiftsPaginateTypeDef(BaseModel): + status: Optional[AutoshiftExecutionStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedResourcesRequestListManagedResourcesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListZonalShiftsRequestListZonalShiftsPaginateTypeDef(BaseModel): + resourceIdentifier: Optional[str] = None + status: Optional[ZonalShiftStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListZonalShiftsResponseTypeDef(BaseModel): + items: List[ZonalShiftSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePracticeRunConfigurationResponseTypeDef(BaseModel): + arn: str + name: str + practiceRunConfiguration: PracticeRunConfigurationTypeDef + zonalAutoshiftStatus: ZonalAutoshiftStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetManagedResourceResponseTypeDef(BaseModel): + appliedWeights: Dict[str, float] + arn: str + autoshifts: List[AutoshiftInResourceTypeDef] + name: str + practiceRunConfiguration: PracticeRunConfigurationTypeDef + zonalAutoshiftStatus: ZonalAutoshiftStatusType + zonalShifts: List[ZonalShiftInResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePracticeRunConfigurationResponseTypeDef(BaseModel): + arn: str + name: str + practiceRunConfiguration: PracticeRunConfigurationTypeDef + zonalAutoshiftStatus: ZonalAutoshiftStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListManagedResourcesResponseTypeDef(BaseModel): + items: List[ManagedResourceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/arc_zonal_shift_constants.py b/aws_resource_validator/pydantic_models/arc_zonal_shift_constants.py new file mode 100644 index 00000000..b7406e87 --- /dev/null +++ b/aws_resource_validator/pydantic_models/arc_zonal_shift_constants.py @@ -0,0 +1,427 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppliedStatusType = Literal["APPLIED", "NOT_APPLIED"] +AutoshiftAppliedStatusType = Literal["APPLIED", "NOT_APPLIED"] +AutoshiftExecutionStatusType = Literal["ACTIVE", "COMPLETED"] +ControlConditionTypeType = Literal["CLOUDWATCH"] +ListAutoshiftsPaginatorName = Literal["list_autoshifts"] +ListManagedResourcesPaginatorName = Literal["list_managed_resources"] +ListZonalShiftsPaginatorName = Literal["list_zonal_shifts"] +PracticeRunOutcomeType = Literal["FAILED", "INTERRUPTED", "PENDING", "SUCCEEDED"] +ZonalAutoshiftStatusType = Literal["DISABLED", "ENABLED"] +ZonalShiftStatusType = Literal["ACTIVE", "CANCELED", "EXPIRED"] +ARCZonalShiftServiceName = Literal["arc-zonal-shift"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_autoshifts", "list_managed_resources", "list_zonal_shifts"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/artifact_classes.py b/aws_resource_validator/pydantic_models/artifact_classes.py new file mode 100644 index 00000000..8590bfe8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/artifact_classes.py @@ -0,0 +1,116 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.artifact_constants import * + +class AccountSettingsTypeDef(BaseModel): + notificationSubscriptionStatus: Optional[NotificationSubscriptionStatusType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class GetReportMetadataRequestRequestTypeDef(BaseModel): + reportId: str + reportVersion: Optional[int] = None + +class ReportDetailTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + periodStart: Optional[datetime] = None + periodEnd: Optional[datetime] = None + createdAt: Optional[datetime] = None + lastModifiedAt: Optional[datetime] = None + deletedAt: Optional[datetime] = None + state: Optional[PublishedStateType] = None + arn: Optional[str] = None + series: Optional[str] = None + category: Optional[str] = None + companyName: Optional[str] = None + productName: Optional[str] = None + termArn: Optional[str] = None + version: Optional[int] = None + acceptanceType: Optional[AcceptanceTypeType] = None + sequenceNumber: Optional[int] = None + uploadState: Optional[UploadStateType] = None + statusMessage: Optional[str] = None + +class GetReportRequestRequestTypeDef(BaseModel): + reportId: str + termToken: str + reportVersion: Optional[int] = None + +class GetTermForReportRequestRequestTypeDef(BaseModel): + reportId: str + reportVersion: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListReportsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ReportSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + state: Optional[PublishedStateType] = None + arn: Optional[str] = None + version: Optional[int] = None + uploadState: Optional[UploadStateType] = None + description: Optional[str] = None + periodStart: Optional[datetime] = None + periodEnd: Optional[datetime] = None + series: Optional[str] = None + category: Optional[str] = None + companyName: Optional[str] = None + productName: Optional[str] = None + statusMessage: Optional[str] = None + acceptanceType: Optional[AcceptanceTypeType] = None + +class PutAccountSettingsRequestRequestTypeDef(BaseModel): + notificationSubscriptionStatus: Optional[NotificationSubscriptionStatusType] = None + +class GetAccountSettingsResponseTypeDef(BaseModel): + accountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetReportResponseTypeDef(BaseModel): + documentPresignedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTermForReportResponseTypeDef(BaseModel): + documentPresignedUrl: str + termToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccountSettingsResponseTypeDef(BaseModel): + accountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetReportMetadataResponseTypeDef(BaseModel): + reportDetails: ReportDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportsRequestListReportsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReportsResponseTypeDef(BaseModel): + reports: List[ReportSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/artifact_constants.py b/aws_resource_validator/pydantic_models/artifact_constants.py new file mode 100644 index 00000000..ff61f984 --- /dev/null +++ b/aws_resource_validator/pydantic_models/artifact_constants.py @@ -0,0 +1,405 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceptanceTypeType = Literal["EXPLICIT", "PASSTHROUGH"] +ListReportsPaginatorName = Literal["list_reports"] +NotificationSubscriptionStatusType = Literal["NOT_SUBSCRIBED", "SUBSCRIBED"] +PublishedStateType = Literal["PUBLISHED", "UNPUBLISHED"] +UploadStateType = Literal["COMPLETE", "FAILED", "FAULT", "PROCESSING"] +ArtifactServiceName = Literal["artifact"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_reports"] diff --git a/aws_resource_validator/pydantic_models/athena_classes.py b/aws_resource_validator/pydantic_models/athena_classes.py new file mode 100644 index 00000000..fd9908cb --- /dev/null +++ b/aws_resource_validator/pydantic_models/athena_classes.py @@ -0,0 +1,976 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.athena_constants import * + +class AclConfigurationTypeDef(BaseModel): + S3AclOption: Literal["BUCKET_OWNER_FULL_CONTROL"] + +class ApplicationDPUSizesTypeDef(BaseModel): + ApplicationRuntimeId: Optional[str] = None + SupportedDPUSizes: Optional[List[int]] = None + +class AthenaErrorTypeDef(BaseModel): + ErrorCategory: Optional[int] = None + ErrorType: Optional[int] = None + Retryable: Optional[bool] = None + ErrorMessage: Optional[str] = None + +class BatchGetNamedQueryInputRequestTypeDef(BaseModel): + NamedQueryIds: Sequence[str] + +class NamedQueryTypeDef(BaseModel): + Name: str + Database: str + QueryString: str + Description: Optional[str] = None + NamedQueryId: Optional[str] = None + WorkGroup: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UnprocessedNamedQueryIdTypeDef(BaseModel): + NamedQueryId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchGetPreparedStatementInputRequestTypeDef(BaseModel): + PreparedStatementNames: Sequence[str] + WorkGroup: str + +class PreparedStatementTypeDef(BaseModel): + StatementName: Optional[str] = None + QueryStatement: Optional[str] = None + WorkGroupName: Optional[str] = None + Description: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + +class UnprocessedPreparedStatementNameTypeDef(BaseModel): + StatementName: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchGetQueryExecutionInputRequestTypeDef(BaseModel): + QueryExecutionIds: Sequence[str] + +class UnprocessedQueryExecutionIdTypeDef(BaseModel): + QueryExecutionId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class CalculationConfigurationTypeDef(BaseModel): + CodeBlock: Optional[str] = None + +class CalculationResultTypeDef(BaseModel): + StdOutS3Uri: Optional[str] = None + StdErrorS3Uri: Optional[str] = None + ResultS3Uri: Optional[str] = None + ResultType: Optional[str] = None + +class CalculationStatisticsTypeDef(BaseModel): + DpuExecutionInMillis: Optional[int] = None + Progress: Optional[str] = None + +class CalculationStatusTypeDef(BaseModel): + SubmissionDateTime: Optional[datetime] = None + CompletionDateTime: Optional[datetime] = None + State: Optional[CalculationExecutionStateType] = None + StateChangeReason: Optional[str] = None + +class CancelCapacityReservationInputRequestTypeDef(BaseModel): + Name: str + +class CapacityAllocationTypeDef(BaseModel): + Status: CapacityAllocationStatusType + RequestTime: datetime + StatusMessage: Optional[str] = None + RequestCompletionTime: Optional[datetime] = None + +class CapacityAssignmentOutputTypeDef(BaseModel): + WorkGroupNames: Optional[List[str]] = None + +class CapacityAssignmentTypeDef(BaseModel): + WorkGroupNames: Optional[Sequence[str]] = None + +class ColumnInfoTypeDef(BaseModel): + Name: str + Type: str + CatalogName: Optional[str] = None + SchemaName: Optional[str] = None + TableName: Optional[str] = None + Label: Optional[str] = None + Precision: Optional[int] = None + Scale: Optional[int] = None + Nullable: Optional[ColumnNullableType] = None + CaseSensitive: Optional[bool] = None + +class ColumnTypeDef(BaseModel): + Name: str + Type: Optional[str] = None + Comment: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class CreateNamedQueryInputRequestTypeDef(BaseModel): + Name: str + Database: str + QueryString: str + Description: Optional[str] = None + ClientRequestToken: Optional[str] = None + WorkGroup: Optional[str] = None + +class CreateNotebookInputRequestTypeDef(BaseModel): + WorkGroup: str + Name: str + ClientRequestToken: Optional[str] = None + +class CreatePreparedStatementInputRequestTypeDef(BaseModel): + StatementName: str + WorkGroup: str + QueryStatement: str + Description: Optional[str] = None + +class CreatePresignedNotebookUrlRequestRequestTypeDef(BaseModel): + SessionId: str + +class CustomerContentEncryptionConfigurationTypeDef(BaseModel): + KmsKey: str + +class DataCatalogSummaryTypeDef(BaseModel): + CatalogName: Optional[str] = None + Type: Optional[DataCatalogTypeType] = None + +class DataCatalogTypeDef(BaseModel): + Name: str + Type: DataCatalogTypeType + Description: Optional[str] = None + Parameters: Optional[Dict[str, str]] = None + +class DatabaseTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Parameters: Optional[Dict[str, str]] = None + +class DatumTypeDef(BaseModel): + VarCharValue: Optional[str] = None + +class DeleteCapacityReservationInputRequestTypeDef(BaseModel): + Name: str + +class DeleteDataCatalogInputRequestTypeDef(BaseModel): + Name: str + +class DeleteNamedQueryInputRequestTypeDef(BaseModel): + NamedQueryId: str + +class DeleteNotebookInputRequestTypeDef(BaseModel): + NotebookId: str + +class DeletePreparedStatementInputRequestTypeDef(BaseModel): + StatementName: str + WorkGroup: str + +class DeleteWorkGroupInputRequestTypeDef(BaseModel): + WorkGroup: str + RecursiveDeleteOption: Optional[bool] = None + +class EncryptionConfigurationTypeDef(BaseModel): + EncryptionOption: EncryptionOptionType + KmsKey: Optional[str] = None + +class EngineConfigurationOutputTypeDef(BaseModel): + MaxConcurrentDpus: int + CoordinatorDpuSize: Optional[int] = None + DefaultExecutorDpuSize: Optional[int] = None + AdditionalConfigs: Optional[Dict[str, str]] = None + SparkProperties: Optional[Dict[str, str]] = None + +class EngineConfigurationTypeDef(BaseModel): + MaxConcurrentDpus: int + CoordinatorDpuSize: Optional[int] = None + DefaultExecutorDpuSize: Optional[int] = None + AdditionalConfigs: Optional[Mapping[str, str]] = None + SparkProperties: Optional[Mapping[str, str]] = None + +class EngineVersionTypeDef(BaseModel): + SelectedEngineVersion: Optional[str] = None + EffectiveEngineVersion: Optional[str] = None + +class ExecutorsSummaryTypeDef(BaseModel): + ExecutorId: str + ExecutorType: Optional[ExecutorTypeType] = None + StartDateTime: Optional[int] = None + TerminationDateTime: Optional[int] = None + ExecutorState: Optional[ExecutorStateType] = None + ExecutorSize: Optional[int] = None + +class ExportNotebookInputRequestTypeDef(BaseModel): + NotebookId: str + +class NotebookMetadataTypeDef(BaseModel): + NotebookId: Optional[str] = None + Name: Optional[str] = None + WorkGroup: Optional[str] = None + CreationTime: Optional[datetime] = None + Type: Optional[Literal["IPYNB"]] = None + LastModifiedTime: Optional[datetime] = None + +class FilterDefinitionTypeDef(BaseModel): + Name: Optional[str] = None + +class GetCalculationExecutionCodeRequestRequestTypeDef(BaseModel): + CalculationExecutionId: str + +class GetCalculationExecutionRequestRequestTypeDef(BaseModel): + CalculationExecutionId: str + +class GetCalculationExecutionStatusRequestRequestTypeDef(BaseModel): + CalculationExecutionId: str + +class GetCapacityAssignmentConfigurationInputRequestTypeDef(BaseModel): + CapacityReservationName: str + +class GetCapacityReservationInputRequestTypeDef(BaseModel): + Name: str + +class GetDataCatalogInputRequestTypeDef(BaseModel): + Name: str + WorkGroup: Optional[str] = None + +class GetDatabaseInputRequestTypeDef(BaseModel): + CatalogName: str + DatabaseName: str + WorkGroup: Optional[str] = None + +class GetNamedQueryInputRequestTypeDef(BaseModel): + NamedQueryId: str + +class GetNotebookMetadataInputRequestTypeDef(BaseModel): + NotebookId: str + +class GetPreparedStatementInputRequestTypeDef(BaseModel): + StatementName: str + WorkGroup: str + +class GetQueryExecutionInputRequestTypeDef(BaseModel): + QueryExecutionId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetQueryResultsInputRequestTypeDef(BaseModel): + QueryExecutionId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetQueryRuntimeStatisticsInputRequestTypeDef(BaseModel): + QueryExecutionId: str + +class GetSessionRequestRequestTypeDef(BaseModel): + SessionId: str + +class SessionStatisticsTypeDef(BaseModel): + DpuExecutionInMillis: Optional[int] = None + +class SessionStatusTypeDef(BaseModel): + StartDateTime: Optional[datetime] = None + LastModifiedDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + IdleSinceDateTime: Optional[datetime] = None + State: Optional[SessionStateType] = None + StateChangeReason: Optional[str] = None + +class GetSessionStatusRequestRequestTypeDef(BaseModel): + SessionId: str + +class GetTableMetadataInputRequestTypeDef(BaseModel): + CatalogName: str + DatabaseName: str + TableName: str + WorkGroup: Optional[str] = None + +class GetWorkGroupInputRequestTypeDef(BaseModel): + WorkGroup: str + +class IdentityCenterConfigurationTypeDef(BaseModel): + EnableIdentityCenter: Optional[bool] = None + IdentityCenterInstanceArn: Optional[str] = None + +class ImportNotebookInputRequestTypeDef(BaseModel): + WorkGroup: str + Name: str + Type: Literal["IPYNB"] + Payload: Optional[str] = None + NotebookS3LocationUri: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class ListApplicationDPUSizesInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCalculationExecutionsRequestRequestTypeDef(BaseModel): + SessionId: str + StateFilter: Optional[CalculationExecutionStateType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCapacityReservationsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataCatalogsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WorkGroup: Optional[str] = None + +class ListDatabasesInputRequestTypeDef(BaseModel): + CatalogName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WorkGroup: Optional[str] = None + +class ListEngineVersionsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListExecutorsRequestRequestTypeDef(BaseModel): + SessionId: str + ExecutorStateFilter: Optional[ExecutorStateType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListNamedQueriesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WorkGroup: Optional[str] = None + +class ListNotebookSessionsRequestRequestTypeDef(BaseModel): + NotebookId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NotebookSessionSummaryTypeDef(BaseModel): + SessionId: Optional[str] = None + CreationTime: Optional[datetime] = None + +class ListPreparedStatementsInputRequestTypeDef(BaseModel): + WorkGroup: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PreparedStatementSummaryTypeDef(BaseModel): + StatementName: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + +class ListQueryExecutionsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WorkGroup: Optional[str] = None + +class ListSessionsRequestRequestTypeDef(BaseModel): + WorkGroup: str + StateFilter: Optional[SessionStateType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTableMetadataInputRequestTypeDef(BaseModel): + CatalogName: str + DatabaseName: str + Expression: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WorkGroup: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListWorkGroupsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QueryExecutionContextTypeDef(BaseModel): + Database: Optional[str] = None + Catalog: Optional[str] = None + +class ResultReuseInformationTypeDef(BaseModel): + ReusedPreviousResult: bool + +class QueryResultsS3AccessGrantsConfigurationTypeDef(BaseModel): + EnableS3AccessGrants: bool + AuthenticationType: Literal["DIRECTORY_IDENTITY"] + CreateUserLevelPrefix: Optional[bool] = None + +class QueryRuntimeStatisticsRowsTypeDef(BaseModel): + InputRows: Optional[int] = None + InputBytes: Optional[int] = None + OutputBytes: Optional[int] = None + OutputRows: Optional[int] = None + +class QueryRuntimeStatisticsTimelineTypeDef(BaseModel): + QueryQueueTimeInMillis: Optional[int] = None + ServicePreProcessingTimeInMillis: Optional[int] = None + QueryPlanningTimeInMillis: Optional[int] = None + EngineExecutionTimeInMillis: Optional[int] = None + ServiceProcessingTimeInMillis: Optional[int] = None + TotalExecutionTimeInMillis: Optional[int] = None + +class QueryStagePlanNodeTypeDef(BaseModel): + Name: Optional[str] = None + Identifier: Optional[str] = None + Children: Optional[List[Dict[str, Any]]] = None + RemoteSources: Optional[List[str]] = None + +class QueryStageTypeDef(BaseModel): + StageId: Optional[int] = None + State: Optional[str] = None + OutputBytes: Optional[int] = None + OutputRows: Optional[int] = None + InputBytes: Optional[int] = None + InputRows: Optional[int] = None + ExecutionTime: Optional[int] = None + QueryStagePlan: Optional["QueryStagePlanNodeTypeDef"] = None + SubStages: Optional[List[Dict[str, Any]]] = None + +class ResultReuseByAgeConfigurationTypeDef(BaseModel): + Enabled: bool + MaxAgeInMinutes: Optional[int] = None + +class StopCalculationExecutionRequestRequestTypeDef(BaseModel): + CalculationExecutionId: str + +class StopQueryExecutionInputRequestTypeDef(BaseModel): + QueryExecutionId: str + +class TerminateSessionRequestRequestTypeDef(BaseModel): + SessionId: str + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateCapacityReservationInputRequestTypeDef(BaseModel): + TargetDpus: int + Name: str + +class UpdateDataCatalogInputRequestTypeDef(BaseModel): + Name: str + Type: DataCatalogTypeType + Description: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + +class UpdateNamedQueryInputRequestTypeDef(BaseModel): + NamedQueryId: str + Name: str + QueryString: str + Description: Optional[str] = None + +class UpdateNotebookInputRequestTypeDef(BaseModel): + NotebookId: str + Payload: str + Type: Literal["IPYNB"] + SessionId: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class UpdateNotebookMetadataInputRequestTypeDef(BaseModel): + NotebookId: str + Name: str + ClientRequestToken: Optional[str] = None + +class UpdatePreparedStatementInputRequestTypeDef(BaseModel): + StatementName: str + WorkGroup: str + QueryStatement: str + Description: Optional[str] = None + +class QueryExecutionStatusTypeDef(BaseModel): + State: Optional[QueryExecutionStateType] = None + StateChangeReason: Optional[str] = None + SubmissionDateTime: Optional[datetime] = None + CompletionDateTime: Optional[datetime] = None + AthenaError: Optional[AthenaErrorTypeDef] = None + +class CreateNamedQueryOutputTypeDef(BaseModel): + NamedQueryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNotebookOutputTypeDef(BaseModel): + NotebookId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePresignedNotebookUrlResponseTypeDef(BaseModel): + NotebookUrl: str + AuthToken: str + AuthTokenExpirationTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetCalculationExecutionCodeResponseTypeDef(BaseModel): + CodeBlock: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetNamedQueryOutputTypeDef(BaseModel): + NamedQuery: NamedQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportNotebookOutputTypeDef(BaseModel): + NotebookId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationDPUSizesOutputTypeDef(BaseModel): + ApplicationDPUSizes: List[ApplicationDPUSizesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNamedQueriesOutputTypeDef(BaseModel): + NamedQueryIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListQueryExecutionsOutputTypeDef(BaseModel): + QueryExecutionIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartCalculationExecutionResponseTypeDef(BaseModel): + CalculationExecutionId: str + State: CalculationExecutionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class StartQueryExecutionOutputTypeDef(BaseModel): + QueryExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSessionResponseTypeDef(BaseModel): + SessionId: str + State: SessionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class StopCalculationExecutionResponseTypeDef(BaseModel): + State: CalculationExecutionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateSessionResponseTypeDef(BaseModel): + State: SessionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetNamedQueryOutputTypeDef(BaseModel): + NamedQueries: List[NamedQueryTypeDef] + UnprocessedNamedQueryIds: List[UnprocessedNamedQueryIdTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPreparedStatementOutputTypeDef(BaseModel): + PreparedStatement: PreparedStatementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetPreparedStatementOutputTypeDef(BaseModel): + PreparedStatements: List[PreparedStatementTypeDef] + UnprocessedPreparedStatementNames: List[UnprocessedPreparedStatementNameTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartCalculationExecutionRequestRequestTypeDef(BaseModel): + SessionId: str + Description: Optional[str] = None + CalculationConfiguration: Optional[CalculationConfigurationTypeDef] = None + CodeBlock: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class CalculationSummaryTypeDef(BaseModel): + CalculationExecutionId: Optional[str] = None + Description: Optional[str] = None + Status: Optional[CalculationStatusTypeDef] = None + +class GetCalculationExecutionResponseTypeDef(BaseModel): + CalculationExecutionId: str + SessionId: str + Description: str + WorkingDirectory: str + Status: CalculationStatusTypeDef + Statistics: CalculationStatisticsTypeDef + Result: CalculationResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCalculationExecutionStatusResponseTypeDef(BaseModel): + Status: CalculationStatusTypeDef + Statistics: CalculationStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CapacityReservationTypeDef(BaseModel): + Name: str + Status: CapacityReservationStatusType + TargetDpus: int + AllocatedDpus: int + CreationTime: datetime + LastAllocation: Optional[CapacityAllocationTypeDef] = None + LastSuccessfulAllocationTime: Optional[datetime] = None + +class CapacityAssignmentConfigurationTypeDef(BaseModel): + CapacityReservationName: Optional[str] = None + CapacityAssignments: Optional[List[CapacityAssignmentOutputTypeDef]] = None + +class ResultSetMetadataTypeDef(BaseModel): + ColumnInfo: Optional[List[ColumnInfoTypeDef]] = None + +class TableMetadataTypeDef(BaseModel): + Name: str + CreateTime: Optional[datetime] = None + LastAccessTime: Optional[datetime] = None + TableType: Optional[str] = None + Columns: Optional[List[ColumnTypeDef]] = None + PartitionKeys: Optional[List[ColumnTypeDef]] = None + Parameters: Optional[Dict[str, str]] = None + +class CreateCapacityReservationInputRequestTypeDef(BaseModel): + TargetDpus: int + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDataCatalogInputRequestTypeDef(BaseModel): + Name: str + Type: DataCatalogTypeType + Description: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class ListDataCatalogsOutputTypeDef(BaseModel): + DataCatalogsSummary: List[DataCatalogSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDataCatalogOutputTypeDef(BaseModel): + DataCatalog: DataCatalogTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDatabaseOutputTypeDef(BaseModel): + Database: DatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatabasesOutputTypeDef(BaseModel): + DatabaseList: List[DatabaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RowTypeDef(BaseModel): + Data: Optional[List[DatumTypeDef]] = None + +class ResultConfigurationTypeDef(BaseModel): + OutputLocation: Optional[str] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + ExpectedBucketOwner: Optional[str] = None + AclConfiguration: Optional[AclConfigurationTypeDef] = None + +class ResultConfigurationUpdatesTypeDef(BaseModel): + OutputLocation: Optional[str] = None + RemoveOutputLocation: Optional[bool] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + RemoveEncryptionConfiguration: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + RemoveExpectedBucketOwner: Optional[bool] = None + AclConfiguration: Optional[AclConfigurationTypeDef] = None + RemoveAclConfiguration: Optional[bool] = None + +class SessionConfigurationTypeDef(BaseModel): + ExecutionRole: Optional[str] = None + WorkingDirectory: Optional[str] = None + IdleTimeoutSeconds: Optional[int] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class StartSessionRequestRequestTypeDef(BaseModel): + WorkGroup: str + EngineConfiguration: EngineConfigurationTypeDef + Description: Optional[str] = None + NotebookVersion: Optional[str] = None + SessionIdleTimeoutInMinutes: Optional[int] = None + ClientRequestToken: Optional[str] = None + +class ListEngineVersionsOutputTypeDef(BaseModel): + EngineVersions: List[EngineVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class WorkGroupSummaryTypeDef(BaseModel): + Name: Optional[str] = None + State: Optional[WorkGroupStateType] = None + Description: Optional[str] = None + CreationTime: Optional[datetime] = None + EngineVersion: Optional[EngineVersionTypeDef] = None + IdentityCenterApplicationArn: Optional[str] = None + +class ListExecutorsResponseTypeDef(BaseModel): + SessionId: str + ExecutorsSummary: List[ExecutorsSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ExportNotebookOutputTypeDef(BaseModel): + NotebookMetadata: NotebookMetadataTypeDef + Payload: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetNotebookMetadataOutputTypeDef(BaseModel): + NotebookMetadata: NotebookMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListNotebookMetadataOutputTypeDef(BaseModel): + NotebookMetadataList: List[NotebookMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNotebookMetadataInputRequestTypeDef(BaseModel): + WorkGroup: str + Filters: Optional[FilterDefinitionTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetQueryResultsInputGetQueryResultsPaginateTypeDef(BaseModel): + QueryExecutionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataCatalogsInputListDataCatalogsPaginateTypeDef(BaseModel): + WorkGroup: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatabasesInputListDatabasesPaginateTypeDef(BaseModel): + CatalogName: str + WorkGroup: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNamedQueriesInputListNamedQueriesPaginateTypeDef(BaseModel): + WorkGroup: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueryExecutionsInputListQueryExecutionsPaginateTypeDef(BaseModel): + WorkGroup: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTableMetadataInputListTableMetadataPaginateTypeDef(BaseModel): + CatalogName: str + DatabaseName: str + Expression: Optional[str] = None + WorkGroup: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceInputListTagsForResourcePaginateTypeDef(BaseModel): + ResourceARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSessionStatusResponseTypeDef(BaseModel): + SessionId: str + Status: SessionStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SessionSummaryTypeDef(BaseModel): + SessionId: Optional[str] = None + Description: Optional[str] = None + EngineVersion: Optional[EngineVersionTypeDef] = None + NotebookVersion: Optional[str] = None + Status: Optional[SessionStatusTypeDef] = None + +class ListNotebookSessionsResponseTypeDef(BaseModel): + NotebookSessionsList: List[NotebookSessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPreparedStatementsOutputTypeDef(BaseModel): + PreparedStatements: List[PreparedStatementSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class QueryExecutionStatisticsTypeDef(BaseModel): + EngineExecutionTimeInMillis: Optional[int] = None + DataScannedInBytes: Optional[int] = None + DataManifestLocation: Optional[str] = None + TotalExecutionTimeInMillis: Optional[int] = None + QueryQueueTimeInMillis: Optional[int] = None + ServicePreProcessingTimeInMillis: Optional[int] = None + QueryPlanningTimeInMillis: Optional[int] = None + ServiceProcessingTimeInMillis: Optional[int] = None + ResultReuseInformation: Optional[ResultReuseInformationTypeDef] = None + +class QueryRuntimeStatisticsTypeDef(BaseModel): + Timeline: Optional[QueryRuntimeStatisticsTimelineTypeDef] = None + Rows: Optional[QueryRuntimeStatisticsRowsTypeDef] = None + OutputStage: Optional["QueryStageTypeDef"] = None + +class ResultReuseConfigurationTypeDef(BaseModel): + ResultReuseByAgeConfiguration: Optional[ResultReuseByAgeConfigurationTypeDef] = None + +class ListCalculationExecutionsResponseTypeDef(BaseModel): + Calculations: List[CalculationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCapacityReservationOutputTypeDef(BaseModel): + CapacityReservation: CapacityReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCapacityReservationsOutputTypeDef(BaseModel): + CapacityReservations: List[CapacityReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCapacityAssignmentConfigurationOutputTypeDef(BaseModel): + CapacityAssignmentConfiguration: CapacityAssignmentConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutCapacityAssignmentConfigurationInputRequestTypeDef(BaseModel): + CapacityReservationName: str + CapacityAssignments: Sequence[CapacityAssignmentUnionTypeDef] + +class GetTableMetadataOutputTypeDef(BaseModel): + TableMetadata: TableMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTableMetadataOutputTypeDef(BaseModel): + TableMetadataList: List[TableMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ResultSetTypeDef(BaseModel): + Rows: Optional[List[RowTypeDef]] = None + ResultSetMetadata: Optional[ResultSetMetadataTypeDef] = None + +class WorkGroupConfigurationTypeDef(BaseModel): + ResultConfiguration: Optional[ResultConfigurationTypeDef] = None + EnforceWorkGroupConfiguration: Optional[bool] = None + PublishCloudWatchMetricsEnabled: Optional[bool] = None + BytesScannedCutoffPerQuery: Optional[int] = None + RequesterPaysEnabled: Optional[bool] = None + EngineVersion: Optional[EngineVersionTypeDef] = None + AdditionalConfiguration: Optional[str] = None + ExecutionRole: Optional[str] = None + CustomerContentEncryptionConfiguration: Optional[ CustomerContentEncryptionConfigurationTypeDef ] = None + EnableMinimumEncryptionConfiguration: Optional[bool] = None + IdentityCenterConfiguration: Optional[IdentityCenterConfigurationTypeDef] = None + QueryResultsS3AccessGrantsConfiguration: Optional[ QueryResultsS3AccessGrantsConfigurationTypeDef ] = None + +class WorkGroupConfigurationUpdatesTypeDef(BaseModel): + EnforceWorkGroupConfiguration: Optional[bool] = None + ResultConfigurationUpdates: Optional[ResultConfigurationUpdatesTypeDef] = None + PublishCloudWatchMetricsEnabled: Optional[bool] = None + BytesScannedCutoffPerQuery: Optional[int] = None + RemoveBytesScannedCutoffPerQuery: Optional[bool] = None + RequesterPaysEnabled: Optional[bool] = None + EngineVersion: Optional[EngineVersionTypeDef] = None + RemoveCustomerContentEncryptionConfiguration: Optional[bool] = None + AdditionalConfiguration: Optional[str] = None + ExecutionRole: Optional[str] = None + CustomerContentEncryptionConfiguration: Optional[ CustomerContentEncryptionConfigurationTypeDef ] = None + EnableMinimumEncryptionConfiguration: Optional[bool] = None + QueryResultsS3AccessGrantsConfiguration: Optional[ QueryResultsS3AccessGrantsConfigurationTypeDef ] = None + +class GetSessionResponseTypeDef(BaseModel): + SessionId: str + Description: str + WorkGroup: str + EngineVersion: str + EngineConfiguration: EngineConfigurationOutputTypeDef + NotebookVersion: str + SessionConfiguration: SessionConfigurationTypeDef + Status: SessionStatusTypeDef + Statistics: SessionStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkGroupsOutputTypeDef(BaseModel): + WorkGroups: List[WorkGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSessionsResponseTypeDef(BaseModel): + Sessions: List[SessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetQueryRuntimeStatisticsOutputTypeDef(BaseModel): + QueryRuntimeStatistics: QueryRuntimeStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class QueryExecutionTypeDef(BaseModel): + QueryExecutionId: Optional[str] = None + Query: Optional[str] = None + StatementType: Optional[StatementTypeType] = None + ResultConfiguration: Optional[ResultConfigurationTypeDef] = None + ResultReuseConfiguration: Optional[ResultReuseConfigurationTypeDef] = None + QueryExecutionContext: Optional[QueryExecutionContextTypeDef] = None + Status: Optional[QueryExecutionStatusTypeDef] = None + Statistics: Optional[QueryExecutionStatisticsTypeDef] = None + WorkGroup: Optional[str] = None + EngineVersion: Optional[EngineVersionTypeDef] = None + ExecutionParameters: Optional[List[str]] = None + SubstatementType: Optional[str] = None + QueryResultsS3AccessGrantsConfiguration: Optional[ QueryResultsS3AccessGrantsConfigurationTypeDef ] = None + +class StartQueryExecutionInputRequestTypeDef(BaseModel): + QueryString: str + ClientRequestToken: Optional[str] = None + QueryExecutionContext: Optional[QueryExecutionContextTypeDef] = None + ResultConfiguration: Optional[ResultConfigurationTypeDef] = None + WorkGroup: Optional[str] = None + ExecutionParameters: Optional[Sequence[str]] = None + ResultReuseConfiguration: Optional[ResultReuseConfigurationTypeDef] = None + +class GetQueryResultsOutputTypeDef(BaseModel): + UpdateCount: int + ResultSet: ResultSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateWorkGroupInputRequestTypeDef(BaseModel): + Name: str + Configuration: Optional[WorkGroupConfigurationTypeDef] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class WorkGroupTypeDef(BaseModel): + Name: str + State: Optional[WorkGroupStateType] = None + Configuration: Optional[WorkGroupConfigurationTypeDef] = None + Description: Optional[str] = None + CreationTime: Optional[datetime] = None + IdentityCenterApplicationArn: Optional[str] = None + +class UpdateWorkGroupInputRequestTypeDef(BaseModel): + WorkGroup: str + Description: Optional[str] = None + ConfigurationUpdates: Optional[WorkGroupConfigurationUpdatesTypeDef] = None + State: Optional[WorkGroupStateType] = None + +class BatchGetQueryExecutionOutputTypeDef(BaseModel): + QueryExecutions: List[QueryExecutionTypeDef] + UnprocessedQueryExecutionIds: List[UnprocessedQueryExecutionIdTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryExecutionOutputTypeDef(BaseModel): + QueryExecution: QueryExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkGroupOutputTypeDef(BaseModel): + WorkGroup: WorkGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/athena_constants.py b/aws_resource_validator/pydantic_models/athena_constants.py new file mode 100644 index 00000000..0cd74179 --- /dev/null +++ b/aws_resource_validator/pydantic_models/athena_constants.py @@ -0,0 +1,459 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthenticationTypeType = Literal["DIRECTORY_IDENTITY"] +CalculationExecutionStateType = Literal["CANCELED", "CANCELING", "COMPLETED", "CREATED", "CREATING", "FAILED", "QUEUED", "RUNNING"] +CapacityAllocationStatusType = Literal["FAILED", "PENDING", "SUCCEEDED"] +CapacityReservationStatusType = Literal["ACTIVE", "CANCELLED", "CANCELLING", "FAILED", "PENDING", "UPDATE_PENDING"] +ColumnNullableType = Literal["NOT_NULL", "NULLABLE", "UNKNOWN"] +DataCatalogTypeType = Literal["GLUE", "HIVE", "LAMBDA"] +EncryptionOptionType = Literal["CSE_KMS", "SSE_KMS", "SSE_S3"] +ExecutorStateType = Literal["CREATED", "CREATING", "FAILED", "REGISTERED", "TERMINATED", "TERMINATING"] +ExecutorTypeType = Literal["COORDINATOR", "GATEWAY", "WORKER"] +GetQueryResultsPaginatorName = Literal["get_query_results"] +ListDataCatalogsPaginatorName = Literal["list_data_catalogs"] +ListDatabasesPaginatorName = Literal["list_databases"] +ListNamedQueriesPaginatorName = Literal["list_named_queries"] +ListQueryExecutionsPaginatorName = Literal["list_query_executions"] +ListTableMetadataPaginatorName = Literal["list_table_metadata"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +NotebookTypeType = Literal["IPYNB"] +QueryExecutionStateType = Literal["CANCELLED", "FAILED", "QUEUED", "RUNNING", "SUCCEEDED"] +S3AclOptionType = Literal["BUCKET_OWNER_FULL_CONTROL"] +SessionStateType = Literal["BUSY", "CREATED", "CREATING", "DEGRADED", "FAILED", "IDLE", "TERMINATED", "TERMINATING"] +StatementTypeType = Literal["DDL", "DML", "UTILITY"] +WorkGroupStateType = Literal["DISABLED", "ENABLED"] +AthenaServiceName = Literal["athena"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_query_results", + "list_data_catalogs", + "list_databases", + "list_named_queries", + "list_query_executions", + "list_table_metadata", + "list_tags_for_resource",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +CapacityAssignmentUnionTypeDef = Union['CapacityAssignmentTypeDef', 'CapacityAssignmentOutputTypeDef'] +EngineConfigurationUnionTypeDef = Union[ 'EngineConfigurationTypeDef', 'EngineConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/auditmanager_classes.py b/aws_resource_validator/pydantic_models/auditmanager_classes.py new file mode 100644 index 00000000..ad4865bf --- /dev/null +++ b/aws_resource_validator/pydantic_models/auditmanager_classes.py @@ -0,0 +1,950 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.auditmanager_constants import * + +class AWSAccountTypeDef(BaseModel): + id: Optional[str] = None + emailAddress: Optional[str] = None + name: Optional[str] = None + +class AWSServiceTypeDef(BaseModel): + serviceName: Optional[str] = None + +class DelegationTypeDef(BaseModel): + id: Optional[str] = None + assessmentName: Optional[str] = None + assessmentId: Optional[str] = None + status: Optional[DelegationStatusType] = None + roleArn: Optional[str] = None + roleType: Optional[RoleTypeType] = None + creationTime: Optional[datetime] = None + lastUpdated: Optional[datetime] = None + controlSetId: Optional[str] = None + comment: Optional[str] = None + createdBy: Optional[str] = None + +class RoleTypeDef(BaseModel): + roleType: RoleTypeType + roleArn: str + +class ControlCommentTypeDef(BaseModel): + authorName: Optional[str] = None + commentBody: Optional[str] = None + postedDate: Optional[datetime] = None + +class AssessmentEvidenceFolderTypeDef(BaseModel): + name: Optional[str] = None + date: Optional[datetime] = None + assessmentId: Optional[str] = None + controlSetId: Optional[str] = None + controlId: Optional[str] = None + id: Optional[str] = None + dataSource: Optional[str] = None + author: Optional[str] = None + totalEvidence: Optional[int] = None + assessmentReportSelectionCount: Optional[int] = None + controlName: Optional[str] = None + evidenceResourcesIncludedCount: Optional[int] = None + evidenceByTypeConfigurationDataCount: Optional[int] = None + evidenceByTypeManualCount: Optional[int] = None + evidenceByTypeComplianceCheckCount: Optional[int] = None + evidenceByTypeComplianceCheckIssuesCount: Optional[int] = None + evidenceByTypeUserActivityCount: Optional[int] = None + evidenceAwsServiceSourceCount: Optional[int] = None + +class AssessmentFrameworkMetadataTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + type: Optional[FrameworkTypeType] = None + name: Optional[str] = None + description: Optional[str] = None + logo: Optional[str] = None + complianceType: Optional[str] = None + controlsCount: Optional[int] = None + controlSetsCount: Optional[int] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + +class AssessmentFrameworkShareRequestTypeDef(BaseModel): + id: Optional[str] = None + frameworkId: Optional[str] = None + frameworkName: Optional[str] = None + frameworkDescription: Optional[str] = None + status: Optional[ShareRequestStatusType] = None + sourceAccount: Optional[str] = None + destinationAccount: Optional[str] = None + destinationRegion: Optional[str] = None + expirationTime: Optional[datetime] = None + creationTime: Optional[datetime] = None + lastUpdated: Optional[datetime] = None + comment: Optional[str] = None + standardControlsCount: Optional[int] = None + customControlsCount: Optional[int] = None + complianceType: Optional[str] = None + +class FrameworkMetadataTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + logo: Optional[str] = None + complianceType: Optional[str] = None + +class AssessmentReportsDestinationTypeDef(BaseModel): + destinationType: Optional[Literal["S3"]] = None + destination: Optional[str] = None + +class AssessmentReportEvidenceErrorTypeDef(BaseModel): + evidenceId: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class AssessmentReportMetadataTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + assessmentId: Optional[str] = None + assessmentName: Optional[str] = None + author: Optional[str] = None + status: Optional[AssessmentReportStatusType] = None + creationTime: Optional[datetime] = None + +class AssessmentReportTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + awsAccountId: Optional[str] = None + assessmentId: Optional[str] = None + assessmentName: Optional[str] = None + author: Optional[str] = None + status: Optional[AssessmentReportStatusType] = None + creationTime: Optional[datetime] = None + +class AssociateAssessmentReportEvidenceFolderRequestRequestTypeDef(BaseModel): + assessmentId: str + evidenceFolderId: str + +class BatchAssociateAssessmentReportEvidenceRequestRequestTypeDef(BaseModel): + assessmentId: str + evidenceFolderId: str + evidenceIds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateDelegationRequestTypeDef(BaseModel): + comment: Optional[str] = None + controlSetId: Optional[str] = None + roleArn: Optional[str] = None + roleType: Optional[RoleTypeType] = None + +class BatchDeleteDelegationByAssessmentErrorTypeDef(BaseModel): + delegationId: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class BatchDeleteDelegationByAssessmentRequestRequestTypeDef(BaseModel): + delegationIds: Sequence[str] + assessmentId: str + +class BatchDisassociateAssessmentReportEvidenceRequestRequestTypeDef(BaseModel): + assessmentId: str + evidenceFolderId: str + evidenceIds: Sequence[str] + +class ManualEvidenceTypeDef(BaseModel): + s3ResourcePath: Optional[str] = None + textResponse: Optional[str] = None + evidenceFileName: Optional[str] = None + +class ChangeLogTypeDef(BaseModel): + objectType: Optional[ObjectTypeEnumType] = None + objectName: Optional[str] = None + action: Optional[ActionEnumType] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + +class EvidenceInsightsTypeDef(BaseModel): + noncompliantEvidenceCount: Optional[int] = None + compliantEvidenceCount: Optional[int] = None + inconclusiveEvidenceCount: Optional[int] = None + +class SourceKeywordTypeDef(BaseModel): + keywordInputType: Optional[KeywordInputTypeType] = None + keywordValue: Optional[str] = None + +class ControlMetadataTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + controlSources: Optional[str] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + +class CreateAssessmentFrameworkControlTypeDef(BaseModel): + id: str + +class CreateAssessmentReportRequestRequestTypeDef(BaseModel): + name: str + assessmentId: str + description: Optional[str] = None + queryStatement: Optional[str] = None + +class DefaultExportDestinationTypeDef(BaseModel): + destinationType: Optional[Literal["S3"]] = None + destination: Optional[str] = None + +class DelegationMetadataTypeDef(BaseModel): + id: Optional[str] = None + assessmentName: Optional[str] = None + assessmentId: Optional[str] = None + status: Optional[DelegationStatusType] = None + roleArn: Optional[str] = None + creationTime: Optional[datetime] = None + controlSetName: Optional[str] = None + +class DeleteAssessmentFrameworkRequestRequestTypeDef(BaseModel): + frameworkId: str + +class DeleteAssessmentFrameworkShareRequestRequestTypeDef(BaseModel): + requestId: str + requestType: ShareRequestTypeType + +class DeleteAssessmentReportRequestRequestTypeDef(BaseModel): + assessmentId: str + assessmentReportId: str + +class DeleteAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + +class DeleteControlRequestRequestTypeDef(BaseModel): + controlId: str + +class DeregisterOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + adminAccountId: Optional[str] = None + +class DeregistrationPolicyTypeDef(BaseModel): + deleteResources: Optional[DeleteResourcesType] = None + +class DisassociateAssessmentReportEvidenceFolderRequestRequestTypeDef(BaseModel): + assessmentId: str + evidenceFolderId: str + +class EvidenceFinderEnablementTypeDef(BaseModel): + eventDataStoreArn: Optional[str] = None + enablementStatus: Optional[EvidenceFinderEnablementStatusType] = None + backfillStatus: Optional[EvidenceFinderBackfillStatusType] = None + error: Optional[str] = None + +class ResourceTypeDef(BaseModel): + arn: Optional[str] = None + value: Optional[str] = None + complianceCheck: Optional[str] = None + +class GetAssessmentFrameworkRequestRequestTypeDef(BaseModel): + frameworkId: str + +class GetAssessmentReportUrlRequestRequestTypeDef(BaseModel): + assessmentReportId: str + assessmentId: str + +class URLTypeDef(BaseModel): + hyperlinkName: Optional[str] = None + link: Optional[str] = None + +class GetAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + +class GetChangeLogsRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: Optional[str] = None + controlId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetControlRequestRequestTypeDef(BaseModel): + controlId: str + +class GetDelegationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetEvidenceByEvidenceFolderRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + evidenceFolderId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetEvidenceFileUploadUrlRequestRequestTypeDef(BaseModel): + fileName: str + +class GetEvidenceFolderRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + evidenceFolderId: str + +class GetEvidenceFoldersByAssessmentControlRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + controlId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetEvidenceFoldersByAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetEvidenceRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + evidenceFolderId: str + evidenceId: str + +class GetInsightsByAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + +class InsightsByAssessmentTypeDef(BaseModel): + noncompliantEvidenceCount: Optional[int] = None + compliantEvidenceCount: Optional[int] = None + inconclusiveEvidenceCount: Optional[int] = None + assessmentControlsCountByNoncompliantEvidence: Optional[int] = None + totalAssessmentControlsCount: Optional[int] = None + lastUpdated: Optional[datetime] = None + +class InsightsTypeDef(BaseModel): + activeAssessmentsCount: Optional[int] = None + noncompliantEvidenceCount: Optional[int] = None + compliantEvidenceCount: Optional[int] = None + inconclusiveEvidenceCount: Optional[int] = None + assessmentControlsCountByNoncompliantEvidence: Optional[int] = None + totalAssessmentControlsCount: Optional[int] = None + lastUpdated: Optional[datetime] = None + +class ServiceMetadataTypeDef(BaseModel): + name: Optional[str] = None + displayName: Optional[str] = None + description: Optional[str] = None + category: Optional[str] = None + +class GetSettingsRequestRequestTypeDef(BaseModel): + attribute: SettingAttributeType + +class ListAssessmentControlInsightsByControlDomainRequestRequestTypeDef(BaseModel): + controlDomainId: str + assessmentId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssessmentFrameworkShareRequestsRequestRequestTypeDef(BaseModel): + requestType: ShareRequestTypeType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssessmentFrameworksRequestRequestTypeDef(BaseModel): + frameworkType: FrameworkTypeType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssessmentReportsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssessmentsRequestRequestTypeDef(BaseModel): + status: Optional[AssessmentStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListControlDomainInsightsByAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListControlDomainInsightsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListControlInsightsByControlDomainRequestRequestTypeDef(BaseModel): + controlDomainId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListControlsRequestRequestTypeDef(BaseModel): + controlType: ControlTypeType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + controlCatalogId: Optional[str] = None + +class ListKeywordsForDataSourceRequestRequestTypeDef(BaseModel): + source: DataSourceTypeType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListNotificationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class NotificationTypeDef(BaseModel): + id: Optional[str] = None + assessmentId: Optional[str] = None + assessmentName: Optional[str] = None + controlSetId: Optional[str] = None + controlSetName: Optional[str] = None + description: Optional[str] = None + eventTime: Optional[datetime] = None + source: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RegisterAccountRequestRequestTypeDef(BaseModel): + kmsKey: Optional[str] = None + delegatedAdminAccount: Optional[str] = None + +class RegisterOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + adminAccountId: str + +class StartAssessmentFrameworkShareRequestRequestTypeDef(BaseModel): + frameworkId: str + destinationAccount: str + destinationRegion: str + comment: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAssessmentControlRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + controlId: str + controlStatus: Optional[ControlStatusType] = None + commentBody: Optional[str] = None + +class UpdateAssessmentControlSetStatusRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + status: ControlSetStatusType + comment: str + +class UpdateAssessmentFrameworkShareRequestRequestTypeDef(BaseModel): + requestId: str + requestType: ShareRequestTypeType + action: ShareRequestActionType + +class UpdateAssessmentStatusRequestRequestTypeDef(BaseModel): + assessmentId: str + status: AssessmentStatusType + +class ValidateAssessmentReportIntegrityRequestRequestTypeDef(BaseModel): + s3RelativePath: str + +class ScopeOutputTypeDef(BaseModel): + awsAccounts: Optional[List[AWSAccountTypeDef]] = None + awsServices: Optional[List[AWSServiceTypeDef]] = None + +class ScopeTypeDef(BaseModel): + awsAccounts: Optional[Sequence[AWSAccountTypeDef]] = None + awsServices: Optional[Sequence[AWSServiceTypeDef]] = None + +class AssessmentMetadataItemTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + complianceType: Optional[str] = None + status: Optional[AssessmentStatusType] = None + roles: Optional[List[RoleTypeDef]] = None + delegations: Optional[List[DelegationTypeDef]] = None + creationTime: Optional[datetime] = None + lastUpdated: Optional[datetime] = None + +class AssessmentControlTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + status: Optional[ControlStatusType] = None + response: Optional[ControlResponseType] = None + comments: Optional[List[ControlCommentTypeDef]] = None + evidenceSources: Optional[List[str]] = None + evidenceCount: Optional[int] = None + assessmentReportEvidenceCount: Optional[int] = None + +class BatchAssociateAssessmentReportEvidenceResponseTypeDef(BaseModel): + evidenceIds: List[str] + errors: List[AssessmentReportEvidenceErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateAssessmentReportEvidenceResponseTypeDef(BaseModel): + evidenceIds: List[str] + errors: List[AssessmentReportEvidenceErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssessmentReportResponseTypeDef(BaseModel): + assessmentReport: AssessmentReportTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterAccountResponseTypeDef(BaseModel): + status: AccountStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountStatusResponseTypeDef(BaseModel): + status: AccountStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetEvidenceFileUploadUrlResponseTypeDef(BaseModel): + evidenceFileName: str + uploadUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEvidenceFolderResponseTypeDef(BaseModel): + evidenceFolder: AssessmentEvidenceFolderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEvidenceFoldersByAssessmentControlResponseTypeDef(BaseModel): + evidenceFolders: List[AssessmentEvidenceFolderTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEvidenceFoldersByAssessmentResponseTypeDef(BaseModel): + evidenceFolders: List[AssessmentEvidenceFolderTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOrganizationAdminAccountResponseTypeDef(BaseModel): + adminAccountId: str + organizationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentFrameworkShareRequestsResponseTypeDef(BaseModel): + assessmentFrameworkShareRequests: List[AssessmentFrameworkShareRequestTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentFrameworksResponseTypeDef(BaseModel): + frameworkMetadataList: List[AssessmentFrameworkMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentReportsResponseTypeDef(BaseModel): + assessmentReports: List[AssessmentReportMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeywordsForDataSourceResponseTypeDef(BaseModel): + keywords: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterAccountResponseTypeDef(BaseModel): + status: AccountStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterOrganizationAdminAccountResponseTypeDef(BaseModel): + adminAccountId: str + organizationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAssessmentFrameworkShareResponseTypeDef(BaseModel): + assessmentFrameworkShareRequest: AssessmentFrameworkShareRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssessmentFrameworkShareResponseTypeDef(BaseModel): + assessmentFrameworkShareRequest: AssessmentFrameworkShareRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateAssessmentReportIntegrityResponseTypeDef(BaseModel): + signatureValid: bool + signatureAlgorithm: str + signatureDateTime: str + signatureKeyId: str + validationErrors: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateDelegationByAssessmentErrorTypeDef(BaseModel): + createDelegationRequest: Optional[CreateDelegationRequestTypeDef] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class BatchCreateDelegationByAssessmentRequestRequestTypeDef(BaseModel): + createDelegationRequests: Sequence[CreateDelegationRequestTypeDef] + assessmentId: str + +class BatchDeleteDelegationByAssessmentResponseTypeDef(BaseModel): + errors: List[BatchDeleteDelegationByAssessmentErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchImportEvidenceToAssessmentControlErrorTypeDef(BaseModel): + manualEvidence: Optional[ManualEvidenceTypeDef] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class BatchImportEvidenceToAssessmentControlRequestRequestTypeDef(BaseModel): + assessmentId: str + controlSetId: str + controlId: str + manualEvidence: Sequence[ManualEvidenceTypeDef] + +class GetChangeLogsResponseTypeDef(BaseModel): + changeLogs: List[ChangeLogTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ControlDomainInsightsTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + controlsCountByNoncompliantEvidence: Optional[int] = None + totalControlsCount: Optional[int] = None + evidenceInsights: Optional[EvidenceInsightsTypeDef] = None + lastUpdated: Optional[datetime] = None + +class ControlInsightsMetadataByAssessmentItemTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + evidenceInsights: Optional[EvidenceInsightsTypeDef] = None + controlSetName: Optional[str] = None + lastUpdated: Optional[datetime] = None + +class ControlInsightsMetadataItemTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + evidenceInsights: Optional[EvidenceInsightsTypeDef] = None + lastUpdated: Optional[datetime] = None + +class ControlMappingSourceTypeDef(BaseModel): + sourceId: Optional[str] = None + sourceName: Optional[str] = None + sourceDescription: Optional[str] = None + sourceSetUpOption: Optional[SourceSetUpOptionType] = None + sourceType: Optional[SourceTypeType] = None + sourceKeyword: Optional[SourceKeywordTypeDef] = None + sourceFrequency: Optional[SourceFrequencyType] = None + troubleshootingText: Optional[str] = None + +class CreateControlMappingSourceTypeDef(BaseModel): + sourceName: Optional[str] = None + sourceDescription: Optional[str] = None + sourceSetUpOption: Optional[SourceSetUpOptionType] = None + sourceType: Optional[SourceTypeType] = None + sourceKeyword: Optional[SourceKeywordTypeDef] = None + sourceFrequency: Optional[SourceFrequencyType] = None + troubleshootingText: Optional[str] = None + +class ListControlsResponseTypeDef(BaseModel): + controlMetadataList: List[ControlMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssessmentFrameworkControlSetTypeDef(BaseModel): + name: str + controls: Optional[Sequence[CreateAssessmentFrameworkControlTypeDef]] = None + +class UpdateAssessmentFrameworkControlSetTypeDef(BaseModel): + name: str + controls: Sequence[CreateAssessmentFrameworkControlTypeDef] + id: Optional[str] = None + +class GetDelegationsResponseTypeDef(BaseModel): + delegations: List[DelegationMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSettingsRequestRequestTypeDef(BaseModel): + snsTopic: Optional[str] = None + defaultAssessmentReportsDestination: Optional[AssessmentReportsDestinationTypeDef] = None + defaultProcessOwners: Optional[Sequence[RoleTypeDef]] = None + kmsKey: Optional[str] = None + evidenceFinderEnabled: Optional[bool] = None + deregistrationPolicy: Optional[DeregistrationPolicyTypeDef] = None + defaultExportDestination: Optional[DefaultExportDestinationTypeDef] = None + +class SettingsTypeDef(BaseModel): + isAwsOrgEnabled: Optional[bool] = None + snsTopic: Optional[str] = None + defaultAssessmentReportsDestination: Optional[AssessmentReportsDestinationTypeDef] = None + defaultProcessOwners: Optional[List[RoleTypeDef]] = None + kmsKey: Optional[str] = None + evidenceFinderEnablement: Optional[EvidenceFinderEnablementTypeDef] = None + deregistrationPolicy: Optional[DeregistrationPolicyTypeDef] = None + defaultExportDestination: Optional[DefaultExportDestinationTypeDef] = None + +class EvidenceTypeDef(BaseModel): + dataSource: Optional[str] = None + evidenceAwsAccountId: Optional[str] = None + time: Optional[datetime] = None + eventSource: Optional[str] = None + eventName: Optional[str] = None + evidenceByType: Optional[str] = None + resourcesIncluded: Optional[List[ResourceTypeDef]] = None + attributes: Optional[Dict[str, str]] = None + iamId: Optional[str] = None + complianceCheck: Optional[str] = None + awsOrganization: Optional[str] = None + awsAccountId: Optional[str] = None + evidenceFolderId: Optional[str] = None + id: Optional[str] = None + assessmentReportSelection: Optional[str] = None + +class GetAssessmentReportUrlResponseTypeDef(BaseModel): + preSignedUrl: URLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInsightsByAssessmentResponseTypeDef(BaseModel): + insights: InsightsByAssessmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInsightsResponseTypeDef(BaseModel): + insights: InsightsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServicesInScopeResponseTypeDef(BaseModel): + serviceMetadata: List[ServiceMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListNotificationsResponseTypeDef(BaseModel): + notifications: List[NotificationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssessmentMetadataTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + description: Optional[str] = None + complianceType: Optional[str] = None + status: Optional[AssessmentStatusType] = None + assessmentReportsDestination: Optional[AssessmentReportsDestinationTypeDef] = None + scope: Optional[ScopeOutputTypeDef] = None + roles: Optional[List[RoleTypeDef]] = None + delegations: Optional[List[DelegationTypeDef]] = None + creationTime: Optional[datetime] = None + lastUpdated: Optional[datetime] = None + +class CreateAssessmentRequestRequestTypeDef(BaseModel): + name: str + assessmentReportsDestination: AssessmentReportsDestinationTypeDef + scope: ScopeTypeDef + roles: Sequence[RoleTypeDef] + frameworkId: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + scope: ScopeTypeDef + assessmentName: Optional[str] = None + assessmentDescription: Optional[str] = None + assessmentReportsDestination: Optional[AssessmentReportsDestinationTypeDef] = None + roles: Optional[Sequence[RoleTypeDef]] = None + +class ListAssessmentsResponseTypeDef(BaseModel): + assessmentMetadata: List[AssessmentMetadataItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssessmentControlSetTypeDef(BaseModel): + id: Optional[str] = None + description: Optional[str] = None + status: Optional[ControlSetStatusType] = None + roles: Optional[List[RoleTypeDef]] = None + controls: Optional[List[AssessmentControlTypeDef]] = None + delegations: Optional[List[DelegationTypeDef]] = None + systemEvidenceCount: Optional[int] = None + manualEvidenceCount: Optional[int] = None + +class UpdateAssessmentControlResponseTypeDef(BaseModel): + control: AssessmentControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateDelegationByAssessmentResponseTypeDef(BaseModel): + delegations: List[DelegationTypeDef] + errors: List[BatchCreateDelegationByAssessmentErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchImportEvidenceToAssessmentControlResponseTypeDef(BaseModel): + errors: List[BatchImportEvidenceToAssessmentControlErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListControlDomainInsightsByAssessmentResponseTypeDef(BaseModel): + controlDomainInsights: List[ControlDomainInsightsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListControlDomainInsightsResponseTypeDef(BaseModel): + controlDomainInsights: List[ControlDomainInsightsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentControlInsightsByControlDomainResponseTypeDef(BaseModel): + controlInsightsByAssessment: List[ControlInsightsMetadataByAssessmentItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListControlInsightsByControlDomainResponseTypeDef(BaseModel): + controlInsightsMetadata: List[ControlInsightsMetadataItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ControlTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + type: Optional[ControlTypeType] = None + name: Optional[str] = None + description: Optional[str] = None + testingInformation: Optional[str] = None + actionPlanTitle: Optional[str] = None + actionPlanInstructions: Optional[str] = None + controlSources: Optional[str] = None + controlMappingSources: Optional[List[ControlMappingSourceTypeDef]] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + createdBy: Optional[str] = None + lastUpdatedBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + state: Optional[ControlStateType] = None + +class UpdateControlRequestRequestTypeDef(BaseModel): + controlId: str + name: str + controlMappingSources: Sequence[ControlMappingSourceTypeDef] + description: Optional[str] = None + testingInformation: Optional[str] = None + actionPlanTitle: Optional[str] = None + actionPlanInstructions: Optional[str] = None + +class CreateControlRequestRequestTypeDef(BaseModel): + name: str + controlMappingSources: Sequence[CreateControlMappingSourceTypeDef] + description: Optional[str] = None + testingInformation: Optional[str] = None + actionPlanTitle: Optional[str] = None + actionPlanInstructions: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateAssessmentFrameworkRequestRequestTypeDef(BaseModel): + name: str + controlSets: Sequence[CreateAssessmentFrameworkControlSetTypeDef] + description: Optional[str] = None + complianceType: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateAssessmentFrameworkRequestRequestTypeDef(BaseModel): + frameworkId: str + name: str + controlSets: Sequence[UpdateAssessmentFrameworkControlSetTypeDef] + description: Optional[str] = None + complianceType: Optional[str] = None + +class GetSettingsResponseTypeDef(BaseModel): + settings: SettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSettingsResponseTypeDef(BaseModel): + settings: SettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEvidenceByEvidenceFolderResponseTypeDef(BaseModel): + evidence: List[EvidenceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEvidenceResponseTypeDef(BaseModel): + evidence: EvidenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssessmentFrameworkTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + metadata: Optional[FrameworkMetadataTypeDef] = None + controlSets: Optional[List[AssessmentControlSetTypeDef]] = None + +class UpdateAssessmentControlSetStatusResponseTypeDef(BaseModel): + controlSet: AssessmentControlSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ControlSetTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + controls: Optional[List[ControlTypeDef]] = None + +class CreateControlResponseTypeDef(BaseModel): + control: ControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetControlResponseTypeDef(BaseModel): + control: ControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateControlResponseTypeDef(BaseModel): + control: ControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssessmentTypeDef(BaseModel): + arn: Optional[str] = None + awsAccount: Optional[AWSAccountTypeDef] = None + metadata: Optional[AssessmentMetadataTypeDef] = None + framework: Optional[AssessmentFrameworkTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class FrameworkTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + type: Optional[FrameworkTypeType] = None + complianceType: Optional[str] = None + description: Optional[str] = None + logo: Optional[str] = None + controlSources: Optional[str] = None + controlSets: Optional[List[ControlSetTypeDef]] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + createdBy: Optional[str] = None + lastUpdatedBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class CreateAssessmentResponseTypeDef(BaseModel): + assessment: AssessmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssessmentResponseTypeDef(BaseModel): + assessment: AssessmentTypeDef + userRole: RoleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssessmentResponseTypeDef(BaseModel): + assessment: AssessmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssessmentStatusResponseTypeDef(BaseModel): + assessment: AssessmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssessmentFrameworkResponseTypeDef(BaseModel): + framework: FrameworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssessmentFrameworkResponseTypeDef(BaseModel): + framework: FrameworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssessmentFrameworkResponseTypeDef(BaseModel): + framework: FrameworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/auditmanager_constants.py b/aws_resource_validator/pydantic_models/auditmanager_constants.py new file mode 100644 index 00000000..4819c56d --- /dev/null +++ b/aws_resource_validator/pydantic_models/auditmanager_constants.py @@ -0,0 +1,457 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountStatusType = Literal["ACTIVE", "INACTIVE", "PENDING_ACTIVATION"] +ActionEnumType = Literal["ACTIVE", + "CREATE", + "DELETE", + "IMPORT_EVIDENCE", + "INACTIVE", + "REVIEWED", + "UNDER_REVIEW", + "UPDATE_METADATA",] +AssessmentReportDestinationTypeType = Literal["S3"] +AssessmentReportStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS"] +AssessmentStatusType = Literal["ACTIVE", "INACTIVE"] +ControlResponseType = Literal["AUTOMATE", "DEFER", "IGNORE", "MANUAL"] +ControlSetStatusType = Literal["ACTIVE", "REVIEWED", "UNDER_REVIEW"] +ControlStateType = Literal["ACTIVE", "END_OF_SUPPORT"] +ControlStatusType = Literal["INACTIVE", "REVIEWED", "UNDER_REVIEW"] +ControlTypeType = Literal["Core", "Custom", "Standard"] +DataSourceTypeType = Literal["AWS_API_Call", "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "MANUAL"] +DelegationStatusType = Literal["COMPLETE", "IN_PROGRESS", "UNDER_REVIEW"] +DeleteResourcesType = Literal["ALL", "DEFAULT"] +EvidenceFinderBackfillStatusType = Literal["COMPLETED", "IN_PROGRESS", "NOT_STARTED"] +EvidenceFinderEnablementStatusType = Literal["DISABLED", "DISABLE_IN_PROGRESS", "ENABLED", "ENABLE_IN_PROGRESS"] +ExportDestinationTypeType = Literal["S3"] +FrameworkTypeType = Literal["Custom", "Standard"] +KeywordInputTypeType = Literal["INPUT_TEXT", "SELECT_FROM_LIST", "UPLOAD_FILE"] +ObjectTypeEnumType = Literal["ASSESSMENT", "ASSESSMENT_REPORT", "CONTROL", "CONTROL_SET", "DELEGATION"] +RoleTypeType = Literal["PROCESS_OWNER", "RESOURCE_OWNER"] +SettingAttributeType = Literal["ALL", + "DEFAULT_ASSESSMENT_REPORTS_DESTINATION", + "DEFAULT_EXPORT_DESTINATION", + "DEFAULT_PROCESS_OWNERS", + "DEREGISTRATION_POLICY", + "EVIDENCE_FINDER_ENABLEMENT", + "IS_AWS_ORG_ENABLED", + "SNS_TOPIC",] +ShareRequestActionType = Literal["ACCEPT", "DECLINE", "REVOKE"] +ShareRequestStatusType = Literal["ACTIVE", "DECLINED", "EXPIRED", "EXPIRING", "FAILED", "REPLICATING", "REVOKED", "SHARED"] +ShareRequestTypeType = Literal["RECEIVED", "SENT"] +SourceFrequencyType = Literal["DAILY", "MONTHLY", "WEEKLY"] +SourceSetUpOptionType = Literal["Procedural_Controls_Mapping", "System_Controls_Mapping"] +SourceTypeType = Literal["AWS_API_Call", + "AWS_Cloudtrail", + "AWS_Config", + "AWS_Security_Hub", + "Common_Control", + "Core_Control", + "MANUAL",] +AuditManagerServiceName = Literal["auditmanager"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ScopeUnionTypeDef = Union['ScopeTypeDef', 'ScopeOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/autoscaling_classes.py b/aws_resource_validator/pydantic_models/autoscaling_classes.py new file mode 100644 index 00000000..2d2f4620 --- /dev/null +++ b/aws_resource_validator/pydantic_models/autoscaling_classes.py @@ -0,0 +1,1328 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.autoscaling_constants import * + +class AcceleratorCountRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class AcceleratorTotalMemoryMiBRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class ActivityTypeDef(BaseModel): + ActivityId: str + AutoScalingGroupName: str + Cause: str + StartTime: datetime + StatusCode: ScalingActivityStatusCodeType + Description: Optional[str] = None + EndTime: Optional[datetime] = None + StatusMessage: Optional[str] = None + Progress: Optional[int] = None + Details: Optional[str] = None + AutoScalingGroupState: Optional[str] = None + AutoScalingGroupARN: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AdjustmentTypeTypeDef(BaseModel): + AdjustmentType: Optional[str] = None + +class AlarmSpecificationOutputTypeDef(BaseModel): + Alarms: Optional[List[str]] = None + +class AlarmSpecificationTypeDef(BaseModel): + Alarms: Optional[Sequence[str]] = None + +class AlarmTypeDef(BaseModel): + AlarmName: Optional[str] = None + AlarmARN: Optional[str] = None + +class AttachInstancesQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + InstanceIds: Optional[Sequence[str]] = None + +class AttachLoadBalancerTargetGroupsTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TargetGroupARNs: Sequence[str] + +class AttachLoadBalancersTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + LoadBalancerNames: Sequence[str] + +class TrafficSourceIdentifierTypeDef(BaseModel): + Identifier: str + Type: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class EnabledMetricTypeDef(BaseModel): + Metric: Optional[str] = None + Granularity: Optional[str] = None + +class InstanceMaintenancePolicyTypeDef(BaseModel): + MinHealthyPercentage: Optional[int] = None + MaxHealthyPercentage: Optional[int] = None + +class LaunchTemplateSpecificationTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class SuspendedProcessTypeDef(BaseModel): + ProcessName: Optional[str] = None + SuspensionReason: Optional[str] = None + +class TagDescriptionTypeDef(BaseModel): + ResourceId: Optional[str] = None + ResourceType: Optional[str] = None + Key: Optional[str] = None + Value: Optional[str] = None + PropagateAtLaunch: Optional[bool] = None + +class BaselineEbsBandwidthMbpsRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class FailedScheduledUpdateGroupActionRequestTypeDef(BaseModel): + ScheduledActionName: str + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchDeleteScheduledActionTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ScheduledActionNames: Sequence[str] + +class EbsTypeDef(BaseModel): + SnapshotId: Optional[str] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + Iops: Optional[int] = None + Encrypted: Optional[bool] = None + Throughput: Optional[int] = None + +class CancelInstanceRefreshTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + +class CapacityForecastTypeDef(BaseModel): + Timestamps: List[datetime] + Values: List[float] + +class CompleteLifecycleActionTypeRequestTypeDef(BaseModel): + LifecycleHookName: str + AutoScalingGroupName: str + LifecycleActionResult: str + LifecycleActionToken: Optional[str] = None + InstanceId: Optional[str] = None + +class LifecycleHookSpecificationTypeDef(BaseModel): + LifecycleHookName: str + LifecycleTransition: str + NotificationMetadata: Optional[str] = None + HeartbeatTimeout: Optional[int] = None + DefaultResult: Optional[str] = None + NotificationTargetARN: Optional[str] = None + RoleARN: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + ResourceId: Optional[str] = None + ResourceType: Optional[str] = None + Value: Optional[str] = None + PropagateAtLaunch: Optional[bool] = None + +class InstanceMetadataOptionsTypeDef(BaseModel): + HttpTokens: Optional[InstanceMetadataHttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[InstanceMetadataEndpointStateType] = None + +class InstanceMonitoringTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class MetricDimensionTypeDef(BaseModel): + Name: str + Value: str + +class DeleteAutoScalingGroupTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ForceDelete: Optional[bool] = None + +class DeleteLifecycleHookTypeRequestTypeDef(BaseModel): + LifecycleHookName: str + AutoScalingGroupName: str + +class DeleteNotificationConfigurationTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TopicARN: str + +class DeletePolicyTypeRequestTypeDef(BaseModel): + PolicyName: str + AutoScalingGroupName: Optional[str] = None + +class DeleteScheduledActionTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ScheduledActionName: str + +class DeleteWarmPoolTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ForceDelete: Optional[bool] = None + +class DescribeAutoScalingInstancesTypeRequestTypeDef(BaseModel): + InstanceIds: Optional[Sequence[str]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceRefreshesTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + InstanceRefreshIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class LifecycleHookTypeDef(BaseModel): + LifecycleHookName: Optional[str] = None + AutoScalingGroupName: Optional[str] = None + LifecycleTransition: Optional[str] = None + NotificationTargetARN: Optional[str] = None + RoleARN: Optional[str] = None + NotificationMetadata: Optional[str] = None + HeartbeatTimeout: Optional[int] = None + GlobalTimeout: Optional[int] = None + DefaultResult: Optional[str] = None + +class DescribeLifecycleHooksTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + LifecycleHookNames: Optional[Sequence[str]] = None + +class DescribeLoadBalancerTargetGroupsRequestRequestTypeDef(BaseModel): + AutoScalingGroupName: str + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class LoadBalancerTargetGroupStateTypeDef(BaseModel): + LoadBalancerTargetGroupARN: Optional[str] = None + State: Optional[str] = None + +class DescribeLoadBalancersRequestRequestTypeDef(BaseModel): + AutoScalingGroupName: str + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class LoadBalancerStateTypeDef(BaseModel): + LoadBalancerName: Optional[str] = None + State: Optional[str] = None + +class MetricCollectionTypeTypeDef(BaseModel): + Metric: Optional[str] = None + +class MetricGranularityTypeTypeDef(BaseModel): + Granularity: Optional[str] = None + +class NotificationConfigurationTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + TopicARN: Optional[str] = None + NotificationType: Optional[str] = None + +class DescribeNotificationConfigurationsTypeRequestTypeDef(BaseModel): + AutoScalingGroupNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribePoliciesTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + PolicyNames: Optional[Sequence[str]] = None + PolicyTypes: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeScalingActivitiesTypeRequestTypeDef(BaseModel): + ActivityIds: Optional[Sequence[str]] = None + AutoScalingGroupName: Optional[str] = None + IncludeDeletedGroups: Optional[bool] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTrafficSourcesRequestRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TrafficSourceType: Optional[str] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class TrafficSourceStateTypeDef(BaseModel): + TrafficSource: Optional[str] = None + State: Optional[str] = None + Identifier: Optional[str] = None + Type: Optional[str] = None + +class DescribeWarmPoolTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DetachInstancesQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ShouldDecrementDesiredCapacity: bool + InstanceIds: Optional[Sequence[str]] = None + +class DetachLoadBalancerTargetGroupsTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TargetGroupARNs: Sequence[str] + +class DetachLoadBalancersTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + LoadBalancerNames: Sequence[str] + +class DisableMetricsCollectionQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + Metrics: Optional[Sequence[str]] = None + +class EnableMetricsCollectionQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + Granularity: str + Metrics: Optional[Sequence[str]] = None + +class EnterStandbyQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ShouldDecrementDesiredCapacity: bool + InstanceIds: Optional[Sequence[str]] = None + +class ExecutePolicyTypeRequestTypeDef(BaseModel): + PolicyName: str + AutoScalingGroupName: Optional[str] = None + HonorCooldown: Optional[bool] = None + MetricValue: Optional[float] = None + BreachThreshold: Optional[float] = None + +class ExitStandbyQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + InstanceIds: Optional[Sequence[str]] = None + +class InstanceRefreshLivePoolProgressTypeDef(BaseModel): + PercentageComplete: Optional[int] = None + InstancesToUpdate: Optional[int] = None + +class InstanceRefreshWarmPoolProgressTypeDef(BaseModel): + PercentageComplete: Optional[int] = None + InstancesToUpdate: Optional[int] = None + +class MemoryGiBPerVCpuRequestTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class MemoryMiBRequestTypeDef(BaseModel): + Min: int + Max: Optional[int] = None + +class NetworkBandwidthGbpsRequestTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class NetworkInterfaceCountRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class TotalLocalStorageGBRequestTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class VCpuCountRequestTypeDef(BaseModel): + Min: int + Max: Optional[int] = None + +class InstanceReusePolicyTypeDef(BaseModel): + ReuseOnScaleIn: Optional[bool] = None + +class InstancesDistributionTypeDef(BaseModel): + OnDemandAllocationStrategy: Optional[str] = None + OnDemandBaseCapacity: Optional[int] = None + OnDemandPercentageAboveBaseCapacity: Optional[int] = None + SpotAllocationStrategy: Optional[str] = None + SpotInstancePools: Optional[int] = None + SpotMaxPrice: Optional[str] = None + +class LaunchConfigurationNameTypeRequestTypeDef(BaseModel): + LaunchConfigurationName: str + +class LaunchConfigurationNamesTypeRequestTypeDef(BaseModel): + LaunchConfigurationNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class PredefinedMetricSpecificationTypeDef(BaseModel): + PredefinedMetricType: MetricTypeType + ResourceLabel: Optional[str] = None + +class PredictiveScalingPredefinedLoadMetricTypeDef(BaseModel): + PredefinedMetricType: PredefinedLoadMetricTypeType + ResourceLabel: Optional[str] = None + +class PredictiveScalingPredefinedMetricPairTypeDef(BaseModel): + PredefinedMetricType: PredefinedMetricPairTypeType + ResourceLabel: Optional[str] = None + +class PredictiveScalingPredefinedScalingMetricTypeDef(BaseModel): + PredefinedMetricType: PredefinedScalingMetricTypeType + ResourceLabel: Optional[str] = None + +class ProcessTypeTypeDef(BaseModel): + ProcessName: str + +class PutLifecycleHookTypeRequestTypeDef(BaseModel): + LifecycleHookName: str + AutoScalingGroupName: str + LifecycleTransition: Optional[str] = None + RoleARN: Optional[str] = None + NotificationTargetARN: Optional[str] = None + NotificationMetadata: Optional[str] = None + HeartbeatTimeout: Optional[int] = None + DefaultResult: Optional[str] = None + +class PutNotificationConfigurationTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TopicARN: str + NotificationTypes: Sequence[str] + +class StepAdjustmentTypeDef(BaseModel): + ScalingAdjustment: int + MetricIntervalLowerBound: Optional[float] = None + MetricIntervalUpperBound: Optional[float] = None + +class RecordLifecycleActionHeartbeatTypeRequestTypeDef(BaseModel): + LifecycleHookName: str + AutoScalingGroupName: str + LifecycleActionToken: Optional[str] = None + InstanceId: Optional[str] = None + +class RollbackInstanceRefreshTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + +class ScalingProcessQueryRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ScalingProcesses: Optional[Sequence[str]] = None + +class ScheduledUpdateGroupActionTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + ScheduledActionName: Optional[str] = None + ScheduledActionARN: Optional[str] = None + Time: Optional[datetime] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Recurrence: Optional[str] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + DesiredCapacity: Optional[int] = None + TimeZone: Optional[str] = None + +class SetDesiredCapacityTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + DesiredCapacity: int + HonorCooldown: Optional[bool] = None + +class SetInstanceHealthQueryRequestTypeDef(BaseModel): + InstanceId: str + HealthStatus: str + ShouldRespectGracePeriod: Optional[bool] = None + +class SetInstanceProtectionQueryRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + AutoScalingGroupName: str + ProtectedFromScaleIn: bool + +class TerminateInstanceInAutoScalingGroupTypeRequestTypeDef(BaseModel): + InstanceId: str + ShouldDecrementDesiredCapacity: bool + +class ActivitiesTypeTypeDef(BaseModel): + Activities: List[ActivityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ActivityTypeTypeDef(BaseModel): + Activity: ActivityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelInstanceRefreshAnswerTypeDef(BaseModel): + InstanceRefreshId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountLimitsAnswerTypeDef(BaseModel): + MaxNumberOfAutoScalingGroups: int + MaxNumberOfLaunchConfigurations: int + NumberOfAutoScalingGroups: int + NumberOfLaunchConfigurations: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAutoScalingNotificationTypesAnswerTypeDef(BaseModel): + AutoScalingNotificationTypes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLifecycleHookTypesAnswerTypeDef(BaseModel): + LifecycleHookTypes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTerminationPolicyTypesAnswerTypeDef(BaseModel): + TerminationPolicyTypes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DetachInstancesAnswerTypeDef(BaseModel): + Activities: List[ActivityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnterStandbyAnswerTypeDef(BaseModel): + Activities: List[ActivityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExitStandbyAnswerTypeDef(BaseModel): + Activities: List[ActivityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackInstanceRefreshAnswerTypeDef(BaseModel): + InstanceRefreshId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartInstanceRefreshAnswerTypeDef(BaseModel): + InstanceRefreshId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAdjustmentTypesAnswerTypeDef(BaseModel): + AdjustmentTypes: List[AdjustmentTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RefreshPreferencesOutputTypeDef(BaseModel): + MinHealthyPercentage: Optional[int] = None + InstanceWarmup: Optional[int] = None + CheckpointPercentages: Optional[List[int]] = None + CheckpointDelay: Optional[int] = None + SkipMatching: Optional[bool] = None + AutoRollback: Optional[bool] = None + ScaleInProtectedInstances: Optional[ScaleInProtectedInstancesType] = None + StandbyInstances: Optional[StandbyInstancesType] = None + AlarmSpecification: Optional[AlarmSpecificationOutputTypeDef] = None + MaxHealthyPercentage: Optional[int] = None + +class RefreshPreferencesTypeDef(BaseModel): + MinHealthyPercentage: Optional[int] = None + InstanceWarmup: Optional[int] = None + CheckpointPercentages: Optional[Sequence[int]] = None + CheckpointDelay: Optional[int] = None + SkipMatching: Optional[bool] = None + AutoRollback: Optional[bool] = None + ScaleInProtectedInstances: Optional[ScaleInProtectedInstancesType] = None + StandbyInstances: Optional[StandbyInstancesType] = None + AlarmSpecification: Optional[AlarmSpecificationTypeDef] = None + MaxHealthyPercentage: Optional[int] = None + +class PolicyARNTypeTypeDef(BaseModel): + PolicyARN: str + Alarms: List[AlarmTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AttachTrafficSourcesTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TrafficSources: Sequence[TrafficSourceIdentifierTypeDef] + +class DetachTrafficSourcesTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + TrafficSources: Sequence[TrafficSourceIdentifierTypeDef] + +class AutoScalingGroupNamesTypeRequestTypeDef(BaseModel): + AutoScalingGroupNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeTagsTypeRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class AutoScalingGroupNamesTypeDescribeAutoScalingGroupsPaginateTypeDef(BaseModel): + AutoScalingGroupNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAutoScalingInstancesTypeDescribeAutoScalingInstancesPaginateTypeDef(BaseModel): + InstanceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLoadBalancerTargetGroupsRequestDescribeLoadBalancerTargetGroupsPaginateTypeDef(BaseModel): + AutoScalingGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLoadBalancersRequestDescribeLoadBalancersPaginateTypeDef(BaseModel): + AutoScalingGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNotificationConfigurationsTypeDescribeNotificationConfigurationsPaginateTypeDef(BaseModel): + AutoScalingGroupNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePoliciesTypeDescribePoliciesPaginateTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + PolicyNames: Optional[Sequence[str]] = None + PolicyTypes: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScalingActivitiesTypeDescribeScalingActivitiesPaginateTypeDef(BaseModel): + ActivityIds: Optional[Sequence[str]] = None + AutoScalingGroupName: Optional[str] = None + IncludeDeletedGroups: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTagsTypeDescribeTagsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeWarmPoolTypeDescribeWarmPoolPaginateTypeDef(BaseModel): + AutoScalingGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LaunchConfigurationNamesTypeDescribeLaunchConfigurationsPaginateTypeDef(BaseModel): + LaunchConfigurationNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class AutoScalingInstanceDetailsTypeDef(BaseModel): + InstanceId: str + AutoScalingGroupName: str + AvailabilityZone: str + LifecycleState: str + HealthStatus: str + ProtectedFromScaleIn: bool + InstanceType: Optional[str] = None + LaunchConfigurationName: Optional[str] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + WeightedCapacity: Optional[str] = None + +class InstanceTypeDef(BaseModel): + InstanceId: str + AvailabilityZone: str + LifecycleState: LifecycleStateType + HealthStatus: str + ProtectedFromScaleIn: bool + InstanceType: Optional[str] = None + LaunchConfigurationName: Optional[str] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + WeightedCapacity: Optional[str] = None + +class TagsTypeTypeDef(BaseModel): + Tags: List[TagDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchDeleteScheduledActionAnswerTypeDef(BaseModel): + FailedScheduledActions: List[FailedScheduledUpdateGroupActionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutScheduledUpdateGroupActionAnswerTypeDef(BaseModel): + FailedScheduledUpdateGroupActions: List[FailedScheduledUpdateGroupActionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BlockDeviceMappingTypeDef(BaseModel): + DeviceName: str + VirtualName: Optional[str] = None + Ebs: Optional[EbsTypeDef] = None + NoDevice: Optional[bool] = None + +class CreateOrUpdateTagsTypeRequestTypeDef(BaseModel): + Tags: Sequence[TagTypeDef] + +class DeleteTagsTypeRequestTypeDef(BaseModel): + Tags: Sequence[TagTypeDef] + +class MetricExtraOutputTypeDef(BaseModel): + Namespace: str + MetricName: str + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + +class MetricOutputTypeDef(BaseModel): + Namespace: str + MetricName: str + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + +class MetricTypeDef(BaseModel): + Namespace: str + MetricName: str + Dimensions: Optional[Sequence[MetricDimensionTypeDef]] = None + +class DescribeLifecycleHooksAnswerTypeDef(BaseModel): + LifecycleHooks: List[LifecycleHookTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBalancerTargetGroupsResponseTypeDef(BaseModel): + LoadBalancerTargetGroups: List[LoadBalancerTargetGroupStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeLoadBalancersResponseTypeDef(BaseModel): + LoadBalancers: List[LoadBalancerStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMetricCollectionTypesAnswerTypeDef(BaseModel): + Metrics: List[MetricCollectionTypeTypeDef] + Granularities: List[MetricGranularityTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNotificationConfigurationsAnswerTypeDef(BaseModel): + NotificationConfigurations: List[NotificationConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeScheduledActionsTypeDescribeScheduledActionsPaginateTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + ScheduledActionNames: Optional[Sequence[str]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScheduledActionsTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + ScheduledActionNames: Optional[Sequence[str]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxRecords: Optional[int] = None + +class GetPredictiveScalingForecastTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + PolicyName: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class PutScheduledUpdateGroupActionTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ScheduledActionName: str + Time: Optional[TimestampTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Recurrence: Optional[str] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + DesiredCapacity: Optional[int] = None + TimeZone: Optional[str] = None + +class ScheduledUpdateGroupActionRequestTypeDef(BaseModel): + ScheduledActionName: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Recurrence: Optional[str] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + DesiredCapacity: Optional[int] = None + TimeZone: Optional[str] = None + +class DescribeTrafficSourcesResponseTypeDef(BaseModel): + TrafficSources: List[TrafficSourceStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceRefreshProgressDetailsTypeDef(BaseModel): + LivePoolProgress: Optional[InstanceRefreshLivePoolProgressTypeDef] = None + WarmPoolProgress: Optional[InstanceRefreshWarmPoolProgressTypeDef] = None + +class InstanceRequirementsExtraOutputTypeDef(BaseModel): + VCpuCount: VCpuCountRequestTypeDef + MemoryMiB: MemoryMiBRequestTypeDef + CpuManufacturers: Optional[List[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuRequestTypeDef] = None + ExcludedInstanceTypes: Optional[List[str]] = None + InstanceGenerations: Optional[List[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountRequestTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[List[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBRequestTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsRequestTypeDef] = None + AcceleratorTypes: Optional[List[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountRequestTypeDef] = None + AcceleratorManufacturers: Optional[List[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[List[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBRequestTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsRequestTypeDef] = None + AllowedInstanceTypes: Optional[List[str]] = None + +class InstanceRequirementsOutputTypeDef(BaseModel): + VCpuCount: VCpuCountRequestTypeDef + MemoryMiB: MemoryMiBRequestTypeDef + CpuManufacturers: Optional[List[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuRequestTypeDef] = None + ExcludedInstanceTypes: Optional[List[str]] = None + InstanceGenerations: Optional[List[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountRequestTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[List[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBRequestTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsRequestTypeDef] = None + AcceleratorTypes: Optional[List[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountRequestTypeDef] = None + AcceleratorManufacturers: Optional[List[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[List[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBRequestTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsRequestTypeDef] = None + AllowedInstanceTypes: Optional[List[str]] = None + +class InstanceRequirementsTypeDef(BaseModel): + VCpuCount: VCpuCountRequestTypeDef + MemoryMiB: MemoryMiBRequestTypeDef + CpuManufacturers: Optional[Sequence[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuRequestTypeDef] = None + ExcludedInstanceTypes: Optional[Sequence[str]] = None + InstanceGenerations: Optional[Sequence[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountRequestTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[Sequence[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBRequestTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsRequestTypeDef] = None + AcceleratorTypes: Optional[Sequence[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountRequestTypeDef] = None + AcceleratorManufacturers: Optional[Sequence[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[Sequence[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBRequestTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsRequestTypeDef] = None + AllowedInstanceTypes: Optional[Sequence[str]] = None + +class PutWarmPoolTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + MaxGroupPreparedCapacity: Optional[int] = None + MinSize: Optional[int] = None + PoolState: Optional[WarmPoolStateType] = None + InstanceReusePolicy: Optional[InstanceReusePolicyTypeDef] = None + +class WarmPoolConfigurationTypeDef(BaseModel): + MaxGroupPreparedCapacity: Optional[int] = None + MinSize: Optional[int] = None + PoolState: Optional[WarmPoolStateType] = None + Status: Optional[Literal["PendingDelete"]] = None + InstanceReusePolicy: Optional[InstanceReusePolicyTypeDef] = None + +class ProcessesTypeTypeDef(BaseModel): + Processes: List[ProcessTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduledActionsTypeTypeDef(BaseModel): + ScheduledUpdateGroupActions: List[ScheduledUpdateGroupActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AutoScalingInstancesTypeTypeDef(BaseModel): + AutoScalingInstances: List[AutoScalingInstanceDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateLaunchConfigurationTypeRequestTypeDef(BaseModel): + LaunchConfigurationName: str + ImageId: Optional[str] = None + KeyName: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + ClassicLinkVPCId: Optional[str] = None + ClassicLinkVPCSecurityGroups: Optional[Sequence[str]] = None + UserData: Optional[str] = None + InstanceId: Optional[str] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + RamdiskId: Optional[str] = None + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + InstanceMonitoring: Optional[InstanceMonitoringTypeDef] = None + SpotPrice: Optional[str] = None + IamInstanceProfile: Optional[str] = None + EbsOptimized: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + PlacementTenancy: Optional[str] = None + MetadataOptions: Optional[InstanceMetadataOptionsTypeDef] = None + +class LaunchConfigurationTypeDef(BaseModel): + LaunchConfigurationName: str + ImageId: str + InstanceType: str + CreatedTime: datetime + LaunchConfigurationARN: Optional[str] = None + KeyName: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + ClassicLinkVPCId: Optional[str] = None + ClassicLinkVPCSecurityGroups: Optional[List[str]] = None + UserData: Optional[str] = None + KernelId: Optional[str] = None + RamdiskId: Optional[str] = None + BlockDeviceMappings: Optional[List[BlockDeviceMappingTypeDef]] = None + InstanceMonitoring: Optional[InstanceMonitoringTypeDef] = None + SpotPrice: Optional[str] = None + IamInstanceProfile: Optional[str] = None + EbsOptimized: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + PlacementTenancy: Optional[str] = None + MetadataOptions: Optional[InstanceMetadataOptionsTypeDef] = None + +class MetricStatExtraOutputTypeDef(BaseModel): + Metric: MetricExtraOutputTypeDef + Stat: str + Unit: Optional[str] = None + +class TargetTrackingMetricStatExtraOutputTypeDef(BaseModel): + Metric: MetricExtraOutputTypeDef + Stat: str + Unit: Optional[str] = None + +class MetricStatOutputTypeDef(BaseModel): + Metric: MetricOutputTypeDef + Stat: str + Unit: Optional[str] = None + +class TargetTrackingMetricStatOutputTypeDef(BaseModel): + Metric: MetricOutputTypeDef + Stat: str + Unit: Optional[str] = None + +class MetricStatTypeDef(BaseModel): + Metric: MetricTypeDef + Stat: str + Unit: Optional[str] = None + +class TargetTrackingMetricStatTypeDef(BaseModel): + Metric: MetricTypeDef + Stat: str + Unit: Optional[str] = None + +class BatchPutScheduledUpdateGroupActionTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + ScheduledUpdateGroupActions: Sequence[ScheduledUpdateGroupActionRequestTypeDef] + +class RollbackDetailsTypeDef(BaseModel): + RollbackReason: Optional[str] = None + RollbackStartTime: Optional[datetime] = None + PercentageCompleteOnRollback: Optional[int] = None + InstancesToUpdateOnRollback: Optional[int] = None + ProgressDetailsOnRollback: Optional[InstanceRefreshProgressDetailsTypeDef] = None + +class LaunchTemplateOverridesExtraOutputTypeDef(BaseModel): + InstanceType: Optional[str] = None + WeightedCapacity: Optional[str] = None + LaunchTemplateSpecification: Optional[LaunchTemplateSpecificationTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsExtraOutputTypeDef] = None + +class LaunchTemplateOverridesOutputTypeDef(BaseModel): + InstanceType: Optional[str] = None + WeightedCapacity: Optional[str] = None + LaunchTemplateSpecification: Optional[LaunchTemplateSpecificationTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsOutputTypeDef] = None + +class LaunchTemplateOverridesTypeDef(BaseModel): + InstanceType: Optional[str] = None + WeightedCapacity: Optional[str] = None + LaunchTemplateSpecification: Optional[LaunchTemplateSpecificationTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsTypeDef] = None + +class DescribeWarmPoolAnswerTypeDef(BaseModel): + WarmPoolConfiguration: WarmPoolConfigurationTypeDef + Instances: List[InstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LaunchConfigurationsTypeTypeDef(BaseModel): + LaunchConfigurations: List[LaunchConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MetricDataQueryExtraOutputTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + MetricStat: Optional[MetricStatExtraOutputTypeDef] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + +class TargetTrackingMetricDataQueryExtraOutputTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + MetricStat: Optional[TargetTrackingMetricStatExtraOutputTypeDef] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + +class MetricDataQueryOutputTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + MetricStat: Optional[MetricStatOutputTypeDef] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + +class TargetTrackingMetricDataQueryOutputTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + MetricStat: Optional[TargetTrackingMetricStatOutputTypeDef] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + +class MetricDataQueryTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + MetricStat: Optional[MetricStatTypeDef] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + +class TargetTrackingMetricDataQueryTypeDef(BaseModel): + Id: str + Expression: Optional[str] = None + MetricStat: Optional[TargetTrackingMetricStatTypeDef] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + +class LaunchTemplateExtraOutputTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[LaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[List[LaunchTemplateOverridesExtraOutputTypeDef]] = None + +class LaunchTemplateOutputTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[LaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[List[LaunchTemplateOverridesOutputTypeDef]] = None + +class LaunchTemplateTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[LaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[Sequence[LaunchTemplateOverridesTypeDef]] = None + +class PredictiveScalingCustomizedCapacityMetricExtraOutputTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryExtraOutputTypeDef] + +class PredictiveScalingCustomizedLoadMetricExtraOutputTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryExtraOutputTypeDef] + +class PredictiveScalingCustomizedScalingMetricExtraOutputTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryExtraOutputTypeDef] + +class CustomizedMetricSpecificationExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + Statistic: Optional[MetricStatisticType] = None + Unit: Optional[str] = None + Metrics: Optional[List[TargetTrackingMetricDataQueryExtraOutputTypeDef]] = None + +class PredictiveScalingCustomizedCapacityMetricOutputTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryOutputTypeDef] + +class PredictiveScalingCustomizedLoadMetricOutputTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryOutputTypeDef] + +class PredictiveScalingCustomizedScalingMetricOutputTypeDef(BaseModel): + MetricDataQueries: List[MetricDataQueryOutputTypeDef] + +class CustomizedMetricSpecificationOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + Statistic: Optional[MetricStatisticType] = None + Unit: Optional[str] = None + Metrics: Optional[List[TargetTrackingMetricDataQueryOutputTypeDef]] = None + +class PredictiveScalingCustomizedCapacityMetricTypeDef(BaseModel): + MetricDataQueries: Sequence[MetricDataQueryTypeDef] + +class PredictiveScalingCustomizedLoadMetricTypeDef(BaseModel): + MetricDataQueries: Sequence[MetricDataQueryTypeDef] + +class PredictiveScalingCustomizedScalingMetricTypeDef(BaseModel): + MetricDataQueries: Sequence[MetricDataQueryTypeDef] + +class CustomizedMetricSpecificationTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[Sequence[MetricDimensionTypeDef]] = None + Statistic: Optional[MetricStatisticType] = None + Unit: Optional[str] = None + Metrics: Optional[Sequence[TargetTrackingMetricDataQueryTypeDef]] = None + +class MixedInstancesPolicyExtraOutputTypeDef(BaseModel): + LaunchTemplate: Optional[LaunchTemplateExtraOutputTypeDef] = None + InstancesDistribution: Optional[InstancesDistributionTypeDef] = None + +class MixedInstancesPolicyOutputTypeDef(BaseModel): + LaunchTemplate: Optional[LaunchTemplateOutputTypeDef] = None + InstancesDistribution: Optional[InstancesDistributionTypeDef] = None + +class MixedInstancesPolicyTypeDef(BaseModel): + LaunchTemplate: Optional[LaunchTemplateTypeDef] = None + InstancesDistribution: Optional[InstancesDistributionTypeDef] = None + +class PredictiveScalingMetricSpecificationExtraOutputTypeDef(BaseModel): + TargetValue: float + PredefinedMetricPairSpecification: Optional[ PredictiveScalingPredefinedMetricPairTypeDef ] = None + PredefinedScalingMetricSpecification: Optional[ PredictiveScalingPredefinedScalingMetricTypeDef ] = None + PredefinedLoadMetricSpecification: Optional[ PredictiveScalingPredefinedLoadMetricTypeDef ] = None + CustomizedScalingMetricSpecification: Optional[ PredictiveScalingCustomizedScalingMetricExtraOutputTypeDef ] = None + CustomizedLoadMetricSpecification: Optional[ PredictiveScalingCustomizedLoadMetricExtraOutputTypeDef ] = None + CustomizedCapacityMetricSpecification: Optional[ PredictiveScalingCustomizedCapacityMetricExtraOutputTypeDef ] = None + +class TargetTrackingConfigurationExtraOutputTypeDef(BaseModel): + TargetValue: float + PredefinedMetricSpecification: Optional[PredefinedMetricSpecificationTypeDef] = None + CustomizedMetricSpecification: Optional[ CustomizedMetricSpecificationExtraOutputTypeDef ] = None + DisableScaleIn: Optional[bool] = None + +class PredictiveScalingMetricSpecificationOutputTypeDef(BaseModel): + TargetValue: float + PredefinedMetricPairSpecification: Optional[ PredictiveScalingPredefinedMetricPairTypeDef ] = None + PredefinedScalingMetricSpecification: Optional[ PredictiveScalingPredefinedScalingMetricTypeDef ] = None + PredefinedLoadMetricSpecification: Optional[ PredictiveScalingPredefinedLoadMetricTypeDef ] = None + CustomizedScalingMetricSpecification: Optional[ PredictiveScalingCustomizedScalingMetricOutputTypeDef ] = None + CustomizedLoadMetricSpecification: Optional[ PredictiveScalingCustomizedLoadMetricOutputTypeDef ] = None + CustomizedCapacityMetricSpecification: Optional[ PredictiveScalingCustomizedCapacityMetricOutputTypeDef ] = None + +class TargetTrackingConfigurationOutputTypeDef(BaseModel): + TargetValue: float + PredefinedMetricSpecification: Optional[PredefinedMetricSpecificationTypeDef] = None + CustomizedMetricSpecification: Optional[CustomizedMetricSpecificationOutputTypeDef] = None + DisableScaleIn: Optional[bool] = None + +class PredictiveScalingMetricSpecificationTypeDef(BaseModel): + TargetValue: float + PredefinedMetricPairSpecification: Optional[ PredictiveScalingPredefinedMetricPairTypeDef ] = None + PredefinedScalingMetricSpecification: Optional[ PredictiveScalingPredefinedScalingMetricTypeDef ] = None + PredefinedLoadMetricSpecification: Optional[ PredictiveScalingPredefinedLoadMetricTypeDef ] = None + CustomizedScalingMetricSpecification: Optional[ PredictiveScalingCustomizedScalingMetricTypeDef ] = None + CustomizedLoadMetricSpecification: Optional[ PredictiveScalingCustomizedLoadMetricTypeDef ] = None + CustomizedCapacityMetricSpecification: Optional[ PredictiveScalingCustomizedCapacityMetricTypeDef ] = None + +class TargetTrackingConfigurationTypeDef(BaseModel): + TargetValue: float + PredefinedMetricSpecification: Optional[PredefinedMetricSpecificationTypeDef] = None + CustomizedMetricSpecification: Optional[CustomizedMetricSpecificationTypeDef] = None + DisableScaleIn: Optional[bool] = None + +class AutoScalingGroupTypeDef(BaseModel): + AutoScalingGroupName: str + MinSize: int + MaxSize: int + DesiredCapacity: int + DefaultCooldown: int + AvailabilityZones: List[str] + HealthCheckType: str + CreatedTime: datetime + AutoScalingGroupARN: Optional[str] = None + LaunchConfigurationName: Optional[str] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + MixedInstancesPolicy: Optional[MixedInstancesPolicyOutputTypeDef] = None + PredictedCapacity: Optional[int] = None + LoadBalancerNames: Optional[List[str]] = None + TargetGroupARNs: Optional[List[str]] = None + HealthCheckGracePeriod: Optional[int] = None + Instances: Optional[List[InstanceTypeDef]] = None + SuspendedProcesses: Optional[List[SuspendedProcessTypeDef]] = None + PlacementGroup: Optional[str] = None + VPCZoneIdentifier: Optional[str] = None + EnabledMetrics: Optional[List[EnabledMetricTypeDef]] = None + Status: Optional[str] = None + Tags: Optional[List[TagDescriptionTypeDef]] = None + TerminationPolicies: Optional[List[str]] = None + NewInstancesProtectedFromScaleIn: Optional[bool] = None + ServiceLinkedRoleARN: Optional[str] = None + MaxInstanceLifetime: Optional[int] = None + CapacityRebalance: Optional[bool] = None + WarmPoolConfiguration: Optional[WarmPoolConfigurationTypeDef] = None + WarmPoolSize: Optional[int] = None + Context: Optional[str] = None + DesiredCapacityType: Optional[str] = None + DefaultInstanceWarmup: Optional[int] = None + TrafficSources: Optional[List[TrafficSourceIdentifierTypeDef]] = None + InstanceMaintenancePolicy: Optional[InstanceMaintenancePolicyTypeDef] = None + +class DesiredConfigurationOutputTypeDef(BaseModel): + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + MixedInstancesPolicy: Optional[MixedInstancesPolicyOutputTypeDef] = None + +class CreateAutoScalingGroupTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + MinSize: int + MaxSize: int + LaunchConfigurationName: Optional[str] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + MixedInstancesPolicy: Optional[MixedInstancesPolicyTypeDef] = None + InstanceId: Optional[str] = None + DesiredCapacity: Optional[int] = None + DefaultCooldown: Optional[int] = None + AvailabilityZones: Optional[Sequence[str]] = None + LoadBalancerNames: Optional[Sequence[str]] = None + TargetGroupARNs: Optional[Sequence[str]] = None + HealthCheckType: Optional[str] = None + HealthCheckGracePeriod: Optional[int] = None + PlacementGroup: Optional[str] = None + VPCZoneIdentifier: Optional[str] = None + TerminationPolicies: Optional[Sequence[str]] = None + NewInstancesProtectedFromScaleIn: Optional[bool] = None + CapacityRebalance: Optional[bool] = None + LifecycleHookSpecificationList: Optional[Sequence[LifecycleHookSpecificationTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ServiceLinkedRoleARN: Optional[str] = None + MaxInstanceLifetime: Optional[int] = None + Context: Optional[str] = None + DesiredCapacityType: Optional[str] = None + DefaultInstanceWarmup: Optional[int] = None + TrafficSources: Optional[Sequence[TrafficSourceIdentifierTypeDef]] = None + InstanceMaintenancePolicy: Optional[InstanceMaintenancePolicyTypeDef] = None + +class DesiredConfigurationTypeDef(BaseModel): + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + MixedInstancesPolicy: Optional[MixedInstancesPolicyTypeDef] = None + +class UpdateAutoScalingGroupTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + LaunchConfigurationName: Optional[str] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + MixedInstancesPolicy: Optional[MixedInstancesPolicyTypeDef] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + DesiredCapacity: Optional[int] = None + DefaultCooldown: Optional[int] = None + AvailabilityZones: Optional[Sequence[str]] = None + HealthCheckType: Optional[str] = None + HealthCheckGracePeriod: Optional[int] = None + PlacementGroup: Optional[str] = None + VPCZoneIdentifier: Optional[str] = None + TerminationPolicies: Optional[Sequence[str]] = None + NewInstancesProtectedFromScaleIn: Optional[bool] = None + ServiceLinkedRoleARN: Optional[str] = None + MaxInstanceLifetime: Optional[int] = None + CapacityRebalance: Optional[bool] = None + Context: Optional[str] = None + DesiredCapacityType: Optional[str] = None + DefaultInstanceWarmup: Optional[int] = None + InstanceMaintenancePolicy: Optional[InstanceMaintenancePolicyTypeDef] = None + +class PredictiveScalingConfigurationExtraOutputTypeDef(BaseModel): + MetricSpecifications: List[PredictiveScalingMetricSpecificationExtraOutputTypeDef] + Mode: Optional[PredictiveScalingModeType] = None + SchedulingBufferTime: Optional[int] = None + MaxCapacityBreachBehavior: Optional[PredictiveScalingMaxCapacityBreachBehaviorType] = None + MaxCapacityBuffer: Optional[int] = None + +class LoadForecastTypeDef(BaseModel): + Timestamps: List[datetime] + Values: List[float] + MetricSpecification: PredictiveScalingMetricSpecificationOutputTypeDef + +class PredictiveScalingConfigurationOutputTypeDef(BaseModel): + MetricSpecifications: List[PredictiveScalingMetricSpecificationOutputTypeDef] + Mode: Optional[PredictiveScalingModeType] = None + SchedulingBufferTime: Optional[int] = None + MaxCapacityBreachBehavior: Optional[PredictiveScalingMaxCapacityBreachBehaviorType] = None + MaxCapacityBuffer: Optional[int] = None + +class PredictiveScalingConfigurationTypeDef(BaseModel): + MetricSpecifications: Sequence[PredictiveScalingMetricSpecificationTypeDef] + Mode: Optional[PredictiveScalingModeType] = None + SchedulingBufferTime: Optional[int] = None + MaxCapacityBreachBehavior: Optional[PredictiveScalingMaxCapacityBreachBehaviorType] = None + MaxCapacityBuffer: Optional[int] = None + +class AutoScalingGroupsTypeTypeDef(BaseModel): + AutoScalingGroups: List[AutoScalingGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceRefreshTypeDef(BaseModel): + InstanceRefreshId: Optional[str] = None + AutoScalingGroupName: Optional[str] = None + Status: Optional[InstanceRefreshStatusType] = None + StatusReason: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + PercentageComplete: Optional[int] = None + InstancesToUpdate: Optional[int] = None + ProgressDetails: Optional[InstanceRefreshProgressDetailsTypeDef] = None + Preferences: Optional[RefreshPreferencesOutputTypeDef] = None + DesiredConfiguration: Optional[DesiredConfigurationOutputTypeDef] = None + RollbackDetails: Optional[RollbackDetailsTypeDef] = None + +class StartInstanceRefreshTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + Strategy: Optional[Literal["Rolling"]] = None + DesiredConfiguration: Optional[DesiredConfigurationTypeDef] = None + Preferences: Optional[RefreshPreferencesTypeDef] = None + +class GetPredictiveScalingForecastAnswerTypeDef(BaseModel): + LoadForecast: List[LoadForecastTypeDef] + CapacityForecast: CapacityForecastTypeDef + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ScalingPolicyTypeDef(BaseModel): + AutoScalingGroupName: Optional[str] = None + PolicyName: Optional[str] = None + PolicyARN: Optional[str] = None + PolicyType: Optional[str] = None + AdjustmentType: Optional[str] = None + MinAdjustmentStep: Optional[int] = None + MinAdjustmentMagnitude: Optional[int] = None + ScalingAdjustment: Optional[int] = None + Cooldown: Optional[int] = None + StepAdjustments: Optional[List[StepAdjustmentTypeDef]] = None + MetricAggregationType: Optional[str] = None + EstimatedInstanceWarmup: Optional[int] = None + Alarms: Optional[List[AlarmTypeDef]] = None + TargetTrackingConfiguration: Optional[TargetTrackingConfigurationOutputTypeDef] = None + Enabled: Optional[bool] = None + PredictiveScalingConfiguration: Optional[PredictiveScalingConfigurationOutputTypeDef] = None + +class PutScalingPolicyTypeRequestTypeDef(BaseModel): + AutoScalingGroupName: str + PolicyName: str + PolicyType: Optional[str] = None + AdjustmentType: Optional[str] = None + MinAdjustmentStep: Optional[int] = None + MinAdjustmentMagnitude: Optional[int] = None + ScalingAdjustment: Optional[int] = None + Cooldown: Optional[int] = None + MetricAggregationType: Optional[str] = None + StepAdjustments: Optional[Sequence[StepAdjustmentTypeDef]] = None + EstimatedInstanceWarmup: Optional[int] = None + TargetTrackingConfiguration: Optional[TargetTrackingConfigurationTypeDef] = None + Enabled: Optional[bool] = None + PredictiveScalingConfiguration: Optional[PredictiveScalingConfigurationTypeDef] = None + +class DescribeInstanceRefreshesAnswerTypeDef(BaseModel): + InstanceRefreshes: List[InstanceRefreshTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PoliciesTypeTypeDef(BaseModel): + ScalingPolicies: List[ScalingPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/autoscaling_constants.py b/aws_resource_validator/pydantic_models/autoscaling_constants.py new file mode 100644 index 00000000..d8fc271a --- /dev/null +++ b/aws_resource_validator/pydantic_models/autoscaling_constants.py @@ -0,0 +1,533 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceleratorManufacturerType = Literal["amazon-web-services", "amd", "nvidia", "xilinx"] +AcceleratorNameType = Literal["a100", "k80", "m60", "radeon-pro-v520", "t4", "v100", "vu9p"] +AcceleratorTypeType = Literal["fpga", "gpu", "inference"] +BareMetalType = Literal["excluded", "included", "required"] +BurstablePerformanceType = Literal["excluded", "included", "required"] +CpuManufacturerType = Literal["amazon-web-services", "amd", "intel"] +DescribeAutoScalingGroupsPaginatorName = Literal["describe_auto_scaling_groups"] +DescribeAutoScalingInstancesPaginatorName = Literal["describe_auto_scaling_instances"] +DescribeLaunchConfigurationsPaginatorName = Literal["describe_launch_configurations"] +DescribeLoadBalancerTargetGroupsPaginatorName = Literal["describe_load_balancer_target_groups"] +DescribeLoadBalancersPaginatorName = Literal["describe_load_balancers"] +DescribeNotificationConfigurationsPaginatorName = Literal["describe_notification_configurations"] +DescribePoliciesPaginatorName = Literal["describe_policies"] +DescribeScalingActivitiesPaginatorName = Literal["describe_scaling_activities"] +DescribeScheduledActionsPaginatorName = Literal["describe_scheduled_actions"] +DescribeTagsPaginatorName = Literal["describe_tags"] +DescribeWarmPoolPaginatorName = Literal["describe_warm_pool"] +InstanceGenerationType = Literal["current", "previous"] +InstanceMetadataEndpointStateType = Literal["disabled", "enabled"] +InstanceMetadataHttpTokensStateType = Literal["optional", "required"] +InstanceRefreshStatusType = Literal["Cancelled", + "Cancelling", + "Failed", + "InProgress", + "Pending", + "RollbackFailed", + "RollbackInProgress", + "RollbackSuccessful", + "Successful",] +LifecycleStateType = Literal["Detached", + "Detaching", + "EnteringStandby", + "InService", + "Pending", + "Pending:Proceed", + "Pending:Wait", + "Quarantined", + "Standby", + "Terminated", + "Terminating", + "Terminating:Proceed", + "Terminating:Wait", + "Warmed:Hibernated", + "Warmed:Pending", + "Warmed:Pending:Proceed", + "Warmed:Pending:Wait", + "Warmed:Running", + "Warmed:Stopped", + "Warmed:Terminated", + "Warmed:Terminating", + "Warmed:Terminating:Proceed", + "Warmed:Terminating:Wait",] +LocalStorageType = Literal["excluded", "included", "required"] +LocalStorageTypeType = Literal["hdd", "ssd"] +MetricStatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +MetricTypeType = Literal["ALBRequestCountPerTarget", + "ASGAverageCPUUtilization", + "ASGAverageNetworkIn", + "ASGAverageNetworkOut",] +PredefinedLoadMetricTypeType = Literal["ALBTargetGroupRequestCount", + "ASGTotalCPUUtilization", + "ASGTotalNetworkIn", + "ASGTotalNetworkOut",] +PredefinedMetricPairTypeType = Literal["ALBRequestCount", "ASGCPUUtilization", "ASGNetworkIn", "ASGNetworkOut"] +PredefinedScalingMetricTypeType = Literal["ALBRequestCountPerTarget", + "ASGAverageCPUUtilization", + "ASGAverageNetworkIn", + "ASGAverageNetworkOut",] +PredictiveScalingMaxCapacityBreachBehaviorType = Literal["HonorMaxCapacity", "IncreaseMaxCapacity"] +PredictiveScalingModeType = Literal["ForecastAndScale", "ForecastOnly"] +RefreshStrategyType = Literal["Rolling"] +ScaleInProtectedInstancesType = Literal["Ignore", "Refresh", "Wait"] +ScalingActivityStatusCodeType = Literal["Cancelled", + "Failed", + "InProgress", + "MidLifecycleAction", + "PendingSpotBidPlacement", + "PreInService", + "Successful", + "WaitingForConnectionDraining", + "WaitingForELBConnectionDraining", + "WaitingForInstanceId", + "WaitingForInstanceWarmup", + "WaitingForSpotInstanceId", + "WaitingForSpotInstanceRequestId",] +StandbyInstancesType = Literal["Ignore", "Terminate", "Wait"] +WarmPoolStateType = Literal["Hibernated", "Running", "Stopped"] +WarmPoolStatusType = Literal["PendingDelete"] +AutoScalingServiceName = Literal["autoscaling"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_auto_scaling_groups", + "describe_auto_scaling_instances", + "describe_launch_configurations", + "describe_load_balancer_target_groups", + "describe_load_balancers", + "describe_notification_configurations", + "describe_policies", + "describe_scaling_activities", + "describe_scheduled_actions", + "describe_tags", + "describe_warm_pool",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +RefreshPreferencesUnionTypeDef = Union['RefreshPreferencesTypeDef', 'RefreshPreferencesOutputTypeDef'] +MixedInstancesPolicyUnionTypeDef = Union[ 'MixedInstancesPolicyTypeDef', 'MixedInstancesPolicyExtraOutputTypeDef' ] +TargetTrackingConfigurationUnionTypeDef = Union[ 'TargetTrackingConfigurationTypeDef', 'TargetTrackingConfigurationExtraOutputTypeDef' ] +DesiredConfigurationUnionTypeDef = Union[ 'DesiredConfigurationTypeDef', 'DesiredConfigurationOutputTypeDef' ] +PredictiveScalingConfigurationUnionTypeDef = Union[ 'PredictiveScalingConfigurationTypeDef', 'PredictiveScalingConfigurationExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/autoscaling_plans_classes.py b/aws_resource_validator/pydantic_models/autoscaling_plans_classes.py new file mode 100644 index 00000000..c4948140 --- /dev/null +++ b/aws_resource_validator/pydantic_models/autoscaling_plans_classes.py @@ -0,0 +1,254 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.autoscaling_plans_constants import * + +class TagFilterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class MetricDimensionTypeDef(BaseModel): + Name: str + Value: str + +class DatapointTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + Value: Optional[float] = None + +class DeleteScalingPlanRequestRequestTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeScalingPlanResourcesRequestRequestTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PredefinedLoadMetricSpecificationTypeDef(BaseModel): + PredefinedLoadMetricType: LoadMetricTypeType + ResourceLabel: Optional[str] = None + +class PredefinedScalingMetricSpecificationTypeDef(BaseModel): + PredefinedScalingMetricType: ScalingMetricTypeType + ResourceLabel: Optional[str] = None + +class ApplicationSourceTypeDef(BaseModel): + CloudFormationStackARN: Optional[str] = None + TagFilters: Optional[Sequence[TagFilterTypeDef]] = None + +class CreateScalingPlanResponseTypeDef(BaseModel): + ScalingPlanVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class CustomizedLoadMetricSpecificationPaginatorTypeDef(BaseModel): + MetricName: str + Namespace: str + Statistic: MetricStatisticType + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + Unit: Optional[str] = None + +class CustomizedLoadMetricSpecificationTypeDef(BaseModel): + MetricName: str + Namespace: str + Statistic: MetricStatisticType + Dimensions: Optional[Sequence[MetricDimensionTypeDef]] = None + Unit: Optional[str] = None + +class CustomizedScalingMetricSpecificationPaginatorTypeDef(BaseModel): + MetricName: str + Namespace: str + Statistic: MetricStatisticType + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + Unit: Optional[str] = None + +class CustomizedScalingMetricSpecificationTypeDef(BaseModel): + MetricName: str + Namespace: str + Statistic: MetricStatisticType + Dimensions: Optional[Sequence[MetricDimensionTypeDef]] = None + Unit: Optional[str] = None + +class GetScalingPlanResourceForecastDataResponseTypeDef(BaseModel): + Datapoints: List[DatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScalingPlanResourcesRequestDescribeScalingPlanResourcesPaginateTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetScalingPlanResourceForecastDataRequestRequestTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + ForecastDataType: ForecastDataTypeType + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class DescribeScalingPlansRequestDescribeScalingPlansPaginateTypeDef(BaseModel): + ScalingPlanNames: Optional[Sequence[str]] = None + ScalingPlanVersion: Optional[int] = None + ApplicationSources: Optional[Sequence[ApplicationSourceTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScalingPlansRequestRequestTypeDef(BaseModel): + ScalingPlanNames: Optional[Sequence[str]] = None + ScalingPlanVersion: Optional[int] = None + ApplicationSources: Optional[Sequence[ApplicationSourceTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TargetTrackingConfigurationPaginatorTypeDef(BaseModel): + TargetValue: float + PredefinedScalingMetricSpecification: Optional[ PredefinedScalingMetricSpecificationTypeDef ] = None + CustomizedScalingMetricSpecification: Optional[ CustomizedScalingMetricSpecificationPaginatorTypeDef ] = None + DisableScaleIn: Optional[bool] = None + ScaleOutCooldown: Optional[int] = None + ScaleInCooldown: Optional[int] = None + EstimatedInstanceWarmup: Optional[int] = None + +class TargetTrackingConfigurationTypeDef(BaseModel): + TargetValue: float + PredefinedScalingMetricSpecification: Optional[ PredefinedScalingMetricSpecificationTypeDef ] = None + CustomizedScalingMetricSpecification: Optional[ CustomizedScalingMetricSpecificationTypeDef ] = None + DisableScaleIn: Optional[bool] = None + ScaleOutCooldown: Optional[int] = None + ScaleInCooldown: Optional[int] = None + EstimatedInstanceWarmup: Optional[int] = None + +class ScalingInstructionPaginatorTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + MinCapacity: int + MaxCapacity: int + TargetTrackingConfigurations: List[TargetTrackingConfigurationPaginatorTypeDef] + PredefinedLoadMetricSpecification: Optional[PredefinedLoadMetricSpecificationTypeDef] = None + CustomizedLoadMetricSpecification: Optional[ CustomizedLoadMetricSpecificationPaginatorTypeDef ] = None + ScheduledActionBufferTime: Optional[int] = None + PredictiveScalingMaxCapacityBehavior: Optional[ PredictiveScalingMaxCapacityBehaviorType ] = None + PredictiveScalingMaxCapacityBuffer: Optional[int] = None + PredictiveScalingMode: Optional[PredictiveScalingModeType] = None + ScalingPolicyUpdateBehavior: Optional[ScalingPolicyUpdateBehaviorType] = None + DisableDynamicScaling: Optional[bool] = None + +class ScalingPolicyPaginatorTypeDef(BaseModel): + PolicyName: str + PolicyType: Literal["TargetTrackingScaling"] + TargetTrackingConfiguration: Optional[TargetTrackingConfigurationPaginatorTypeDef] = None + +class ScalingInstructionTypeDef(BaseModel): + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + MinCapacity: int + MaxCapacity: int + TargetTrackingConfigurations: Sequence[TargetTrackingConfigurationTypeDef] + PredefinedLoadMetricSpecification: Optional[PredefinedLoadMetricSpecificationTypeDef] = None + CustomizedLoadMetricSpecification: Optional[CustomizedLoadMetricSpecificationTypeDef] = None + ScheduledActionBufferTime: Optional[int] = None + PredictiveScalingMaxCapacityBehavior: Optional[ PredictiveScalingMaxCapacityBehaviorType ] = None + PredictiveScalingMaxCapacityBuffer: Optional[int] = None + PredictiveScalingMode: Optional[PredictiveScalingModeType] = None + ScalingPolicyUpdateBehavior: Optional[ScalingPolicyUpdateBehaviorType] = None + DisableDynamicScaling: Optional[bool] = None + +class ScalingPolicyTypeDef(BaseModel): + PolicyName: str + PolicyType: Literal["TargetTrackingScaling"] + TargetTrackingConfiguration: Optional[TargetTrackingConfigurationTypeDef] = None + +class ScalingPlanPaginatorTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + ApplicationSource: ApplicationSourceTypeDef + ScalingInstructions: List[ScalingInstructionPaginatorTypeDef] + StatusCode: ScalingPlanStatusCodeType + StatusMessage: Optional[str] = None + StatusStartTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + +class ScalingPlanResourcePaginatorTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + ScalingStatusCode: ScalingStatusCodeType + ScalingPolicies: Optional[List[ScalingPolicyPaginatorTypeDef]] = None + ScalingStatusMessage: Optional[str] = None + +class CreateScalingPlanRequestRequestTypeDef(BaseModel): + ScalingPlanName: str + ApplicationSource: ApplicationSourceTypeDef + ScalingInstructions: Sequence[ScalingInstructionTypeDef] + +class ScalingPlanTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + ApplicationSource: ApplicationSourceTypeDef + ScalingInstructions: List[ScalingInstructionTypeDef] + StatusCode: ScalingPlanStatusCodeType + StatusMessage: Optional[str] = None + StatusStartTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + +class UpdateScalingPlanRequestRequestTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + ApplicationSource: Optional[ApplicationSourceTypeDef] = None + ScalingInstructions: Optional[Sequence[ScalingInstructionTypeDef]] = None + +class ScalingPlanResourceTypeDef(BaseModel): + ScalingPlanName: str + ScalingPlanVersion: int + ServiceNamespace: ServiceNamespaceType + ResourceId: str + ScalableDimension: ScalableDimensionType + ScalingStatusCode: ScalingStatusCodeType + ScalingPolicies: Optional[List[ScalingPolicyTypeDef]] = None + ScalingStatusMessage: Optional[str] = None + +class DescribeScalingPlansResponsePaginatorTypeDef(BaseModel): + ScalingPlans: List[ScalingPlanPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScalingPlanResourcesResponsePaginatorTypeDef(BaseModel): + ScalingPlanResources: List[ScalingPlanResourcePaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScalingPlansResponseTypeDef(BaseModel): + ScalingPlans: List[ScalingPlanTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScalingPlanResourcesResponseTypeDef(BaseModel): + ScalingPlanResources: List[ScalingPlanResourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/autoscaling_plans_constants.py b/aws_resource_validator/pydantic_models/autoscaling_plans_constants.py new file mode 100644 index 00000000..2b1d02aa --- /dev/null +++ b/aws_resource_validator/pydantic_models/autoscaling_plans_constants.py @@ -0,0 +1,457 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeScalingPlanResourcesPaginatorName = Literal["describe_scaling_plan_resources"] +DescribeScalingPlansPaginatorName = Literal["describe_scaling_plans"] +ForecastDataTypeType = Literal["CapacityForecast", "LoadForecast", "ScheduledActionMaxCapacity", "ScheduledActionMinCapacity"] +LoadMetricTypeType = Literal["ALBTargetGroupRequestCount", + "ASGTotalCPUUtilization", + "ASGTotalNetworkIn", + "ASGTotalNetworkOut",] +MetricStatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +PolicyTypeType = Literal["TargetTrackingScaling"] +PredictiveScalingMaxCapacityBehaviorType = Literal["SetForecastCapacityToMaxCapacity", + "SetMaxCapacityAboveForecastCapacity", + "SetMaxCapacityToForecastCapacity",] +PredictiveScalingModeType = Literal["ForecastAndScale", "ForecastOnly"] +ScalableDimensionType = Literal["autoscaling:autoScalingGroup:DesiredCapacity", + "dynamodb:index:ReadCapacityUnits", + "dynamodb:index:WriteCapacityUnits", + "dynamodb:table:ReadCapacityUnits", + "dynamodb:table:WriteCapacityUnits", + "ec2:spot-fleet-request:TargetCapacity", + "ecs:service:DesiredCount", + "rds:cluster:ReadReplicaCount",] +ScalingMetricTypeType = Literal["ALBRequestCountPerTarget", + "ASGAverageCPUUtilization", + "ASGAverageNetworkIn", + "ASGAverageNetworkOut", + "DynamoDBReadCapacityUtilization", + "DynamoDBWriteCapacityUtilization", + "EC2SpotFleetRequestAverageCPUUtilization", + "EC2SpotFleetRequestAverageNetworkIn", + "EC2SpotFleetRequestAverageNetworkOut", + "ECSServiceAverageCPUUtilization", + "ECSServiceAverageMemoryUtilization", + "RDSReaderAverageCPUUtilization", + "RDSReaderAverageDatabaseConnections",] +ScalingPlanStatusCodeType = Literal["Active", + "ActiveWithProblems", + "CreationFailed", + "CreationInProgress", + "DeletionFailed", + "DeletionInProgress", + "UpdateFailed", + "UpdateInProgress",] +ScalingPolicyUpdateBehaviorType = Literal["KeepExternalPolicies", "ReplaceExternalPolicies"] +ScalingStatusCodeType = Literal["Active", "Inactive", "PartiallyActive"] +ServiceNamespaceType = Literal["autoscaling", "dynamodb", "ec2", "ecs", "rds"] +AutoScalingPlansServiceName = Literal["autoscaling-plans"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_scaling_plan_resources", "describe_scaling_plans"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/b2bi_classes.py b/aws_resource_validator/pydantic_models/b2bi_classes.py new file mode 100644 index 00000000..d1e6b4cc --- /dev/null +++ b/aws_resource_validator/pydantic_models/b2bi_classes.py @@ -0,0 +1,423 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.b2bi_constants import * + +class CapabilitySummaryTypeDef(BaseModel): + capabilityId: str + name: str + type: Literal["edi"] + createdAt: datetime + modifiedAt: Optional[datetime] = None + +class S3LocationTypeDef(BaseModel): + bucketName: Optional[str] = None + key: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteCapabilityRequestRequestTypeDef(BaseModel): + capabilityId: str + +class DeletePartnershipRequestRequestTypeDef(BaseModel): + partnershipId: str + +class DeleteProfileRequestRequestTypeDef(BaseModel): + profileId: str + +class DeleteTransformerRequestRequestTypeDef(BaseModel): + transformerId: str + +class X12DetailsTypeDef(BaseModel): + transactionSet: Optional[X12TransactionSetType] = None + version: Optional[X12VersionType] = None + +class GetCapabilityRequestRequestTypeDef(BaseModel): + capabilityId: str + +class GetPartnershipRequestRequestTypeDef(BaseModel): + partnershipId: str + +class GetProfileRequestRequestTypeDef(BaseModel): + profileId: str + +class GetTransformerJobRequestRequestTypeDef(BaseModel): + transformerJobId: str + transformerId: str + +class GetTransformerRequestRequestTypeDef(BaseModel): + transformerId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListCapabilitiesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPartnershipsRequestRequestTypeDef(BaseModel): + profileId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PartnershipSummaryTypeDef(BaseModel): + profileId: str + partnershipId: str + createdAt: datetime + name: Optional[str] = None + capabilities: Optional[List[str]] = None + tradingPartnerId: Optional[str] = None + modifiedAt: Optional[datetime] = None + +class ListProfilesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ProfileSummaryTypeDef(BaseModel): + profileId: str + name: str + businessName: str + createdAt: datetime + logging: Optional[LoggingType] = None + logGroupName: Optional[str] = None + modifiedAt: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListTransformersRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TestMappingRequestRequestTypeDef(BaseModel): + inputFileContent: str + mappingTemplate: str + fileFormat: FileFormatType + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdatePartnershipRequestRequestTypeDef(BaseModel): + partnershipId: str + name: Optional[str] = None + capabilities: Optional[Sequence[str]] = None + +class UpdateProfileRequestRequestTypeDef(BaseModel): + profileId: str + name: Optional[str] = None + email: Optional[str] = None + phone: Optional[str] = None + businessName: Optional[str] = None + +class StartTransformerJobRequestRequestTypeDef(BaseModel): + inputFile: S3LocationTypeDef + outputLocation: S3LocationTypeDef + transformerId: str + clientToken: Optional[str] = None + +class CreatePartnershipRequestRequestTypeDef(BaseModel): + profileId: str + name: str + email: str + capabilities: Sequence[str] + phone: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateProfileRequestRequestTypeDef(BaseModel): + name: str + phone: str + businessName: str + logging: LoggingType + email: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreatePartnershipResponseTypeDef(BaseModel): + profileId: str + partnershipId: str + partnershipArn: str + name: str + email: str + phone: str + capabilities: List[str] + tradingPartnerId: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileResponseTypeDef(BaseModel): + profileId: str + profileArn: str + name: str + businessName: str + phone: str + email: str + logging: LoggingType + logGroupName: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetPartnershipResponseTypeDef(BaseModel): + profileId: str + partnershipId: str + partnershipArn: str + name: str + email: str + phone: str + capabilities: List[str] + tradingPartnerId: str + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileResponseTypeDef(BaseModel): + profileId: str + profileArn: str + name: str + email: str + phone: str + businessName: str + logging: LoggingType + logGroupName: str + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransformerJobResponseTypeDef(BaseModel): + status: TransformerJobStatusType + outputFiles: List[S3LocationTypeDef] + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCapabilitiesResponseTypeDef(BaseModel): + capabilities: List[CapabilitySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartTransformerJobResponseTypeDef(BaseModel): + transformerJobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestMappingResponseTypeDef(BaseModel): + mappedFileContent: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestParsingResponseTypeDef(BaseModel): + parsedFileContent: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePartnershipResponseTypeDef(BaseModel): + profileId: str + partnershipId: str + partnershipArn: str + name: str + email: str + phone: str + capabilities: List[str] + tradingPartnerId: str + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfileResponseTypeDef(BaseModel): + profileId: str + profileArn: str + name: str + email: str + phone: str + businessName: str + logging: LoggingType + logGroupName: str + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EdiTypeTypeDef(BaseModel): + x12Details: Optional[X12DetailsTypeDef] = None + +class ListCapabilitiesRequestListCapabilitiesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPartnershipsRequestListPartnershipsPaginateTypeDef(BaseModel): + profileId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfilesRequestListProfilesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTransformersRequestListTransformersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPartnershipsResponseTypeDef(BaseModel): + partnerships: List[PartnershipSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfilesResponseTypeDef(BaseModel): + profiles: List[ProfileSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransformerRequestRequestTypeDef(BaseModel): + name: str + fileFormat: FileFormatType + mappingTemplate: str + ediType: EdiTypeTypeDef + sampleDocument: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTransformerResponseTypeDef(BaseModel): + transformerId: str + transformerArn: str + name: str + fileFormat: FileFormatType + mappingTemplate: str + status: TransformerStatusType + ediType: EdiTypeTypeDef + sampleDocument: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EdiConfigurationTypeDef(BaseModel): + type: EdiTypeTypeDef + inputLocation: S3LocationTypeDef + outputLocation: S3LocationTypeDef + transformerId: str + +class GetTransformerResponseTypeDef(BaseModel): + transformerId: str + transformerArn: str + name: str + fileFormat: FileFormatType + mappingTemplate: str + status: TransformerStatusType + ediType: EdiTypeTypeDef + sampleDocument: str + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TestParsingRequestRequestTypeDef(BaseModel): + inputFile: S3LocationTypeDef + fileFormat: FileFormatType + ediType: EdiTypeTypeDef + +class TransformerSummaryTypeDef(BaseModel): + transformerId: str + name: str + fileFormat: FileFormatType + mappingTemplate: str + status: TransformerStatusType + ediType: EdiTypeTypeDef + createdAt: datetime + sampleDocument: Optional[str] = None + modifiedAt: Optional[datetime] = None + +class UpdateTransformerRequestRequestTypeDef(BaseModel): + transformerId: str + name: Optional[str] = None + fileFormat: Optional[FileFormatType] = None + mappingTemplate: Optional[str] = None + status: Optional[TransformerStatusType] = None + ediType: Optional[EdiTypeTypeDef] = None + sampleDocument: Optional[str] = None + +class UpdateTransformerResponseTypeDef(BaseModel): + transformerId: str + transformerArn: str + name: str + fileFormat: FileFormatType + mappingTemplate: str + status: TransformerStatusType + ediType: EdiTypeTypeDef + sampleDocument: str + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CapabilityConfigurationTypeDef(BaseModel): + edi: Optional[EdiConfigurationTypeDef] = None + +class ListTransformersResponseTypeDef(BaseModel): + transformers: List[TransformerSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCapabilityRequestRequestTypeDef(BaseModel): + name: str + type: Literal["edi"] + configuration: CapabilityConfigurationTypeDef + instructionsDocuments: Optional[Sequence[S3LocationTypeDef]] = None + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCapabilityResponseTypeDef(BaseModel): + capabilityId: str + capabilityArn: str + name: str + type: Literal["edi"] + configuration: CapabilityConfigurationTypeDef + instructionsDocuments: List[S3LocationTypeDef] + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetCapabilityResponseTypeDef(BaseModel): + capabilityId: str + capabilityArn: str + name: str + type: Literal["edi"] + configuration: CapabilityConfigurationTypeDef + instructionsDocuments: List[S3LocationTypeDef] + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCapabilityRequestRequestTypeDef(BaseModel): + capabilityId: str + name: Optional[str] = None + configuration: Optional[CapabilityConfigurationTypeDef] = None + instructionsDocuments: Optional[Sequence[S3LocationTypeDef]] = None + +class UpdateCapabilityResponseTypeDef(BaseModel): + capabilityId: str + capabilityArn: str + name: str + type: Literal["edi"] + configuration: CapabilityConfigurationTypeDef + instructionsDocuments: List[S3LocationTypeDef] + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/b2bi_constants.py b/aws_resource_validator/pydantic_models/b2bi_constants.py new file mode 100644 index 00000000..40592f6a --- /dev/null +++ b/aws_resource_validator/pydantic_models/b2bi_constants.py @@ -0,0 +1,483 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CapabilityTypeType = Literal["edi"] +FileFormatType = Literal["JSON", "XML"] +ListCapabilitiesPaginatorName = Literal["list_capabilities"] +ListPartnershipsPaginatorName = Literal["list_partnerships"] +ListProfilesPaginatorName = Literal["list_profiles"] +ListTransformersPaginatorName = Literal["list_transformers"] +LoggingType = Literal["DISABLED", "ENABLED"] +TransformerJobStatusType = Literal["failed", "running", "succeeded"] +TransformerStatusType = Literal["active", "inactive"] +X12TransactionSetType = Literal["X12_110", + "X12_180", + "X12_204", + "X12_210", + "X12_211", + "X12_214", + "X12_215", + "X12_259", + "X12_260", + "X12_266", + "X12_269", + "X12_270", + "X12_270_X279", + "X12_271", + "X12_271_X279", + "X12_274", + "X12_275", + "X12_275_X210", + "X12_275_X211", + "X12_276", + "X12_276_X212", + "X12_277", + "X12_277_X212", + "X12_277_X214", + "X12_277_X364", + "X12_278", + "X12_278_X217", + "X12_310", + "X12_315", + "X12_322", + "X12_404", + "X12_410", + "X12_417", + "X12_421", + "X12_426", + "X12_810", + "X12_820", + "X12_820_X218", + "X12_820_X306", + "X12_824", + "X12_824_X186", + "X12_830", + "X12_832", + "X12_834", + "X12_834_X220", + "X12_834_X307", + "X12_834_X318", + "X12_835", + "X12_835_X221", + "X12_837", + "X12_837_X222", + "X12_837_X223", + "X12_837_X224", + "X12_837_X291", + "X12_837_X292", + "X12_837_X298", + "X12_844", + "X12_846", + "X12_849", + "X12_850", + "X12_852", + "X12_855", + "X12_856", + "X12_860", + "X12_861", + "X12_864", + "X12_865", + "X12_869", + "X12_870", + "X12_940", + "X12_945", + "X12_990", + "X12_997", + "X12_999", + "X12_999_X231",] +X12VersionType = Literal["VERSION_4010", "VERSION_4030", "VERSION_5010", "VERSION_5010_HIPAA"] +B2BIServiceName = Literal["b2bi"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_capabilities", "list_partnerships", "list_profiles", "list_transformers"] diff --git a/aws_resource_validator/pydantic_models/backup_classes.py b/aws_resource_validator/pydantic_models/backup_classes.py new file mode 100644 index 00000000..3ee2e2e1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/backup_classes.py @@ -0,0 +1,1512 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.backup_constants import * + +class AdvancedBackupSettingPaginatorTypeDef(BaseModel): + ResourceType: Optional[str] = None + BackupOptions: Optional[Dict[str, str]] = None + +class AdvancedBackupSettingTypeDef(BaseModel): + ResourceType: Optional[str] = None + BackupOptions: Optional[Mapping[str, str]] = None + +class BackupJobSummaryTypeDef(BaseModel): + Region: Optional[str] = None + AccountId: Optional[str] = None + State: Optional[BackupJobStatusType] = None + ResourceType: Optional[str] = None + MessageCategory: Optional[str] = None + Count: Optional[int] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class RecoveryPointCreatorTypeDef(BaseModel): + BackupPlanId: Optional[str] = None + BackupPlanArn: Optional[str] = None + BackupPlanVersion: Optional[str] = None + BackupRuleId: Optional[str] = None + +class BackupPlanTemplatesListMemberTypeDef(BaseModel): + BackupPlanTemplateId: Optional[str] = None + BackupPlanTemplateName: Optional[str] = None + +class LifecycleTypeDef(BaseModel): + MoveToColdStorageAfterDays: Optional[int] = None + DeleteAfterDays: Optional[int] = None + OptInToArchiveForSupportedResources: Optional[bool] = None + +class ConditionTypeDef(BaseModel): + ConditionType: Literal["STRINGEQUALS"] + ConditionKey: str + ConditionValue: str + +class BackupSelectionsListMemberTypeDef(BaseModel): + SelectionId: Optional[str] = None + SelectionName: Optional[str] = None + BackupPlanId: Optional[str] = None + CreationDate: Optional[datetime] = None + CreatorRequestId: Optional[str] = None + IamRoleArn: Optional[str] = None + +class BackupVaultListMemberTypeDef(BaseModel): + BackupVaultName: Optional[str] = None + BackupVaultArn: Optional[str] = None + CreationDate: Optional[datetime] = None + EncryptionKeyArn: Optional[str] = None + CreatorRequestId: Optional[str] = None + NumberOfRecoveryPoints: Optional[int] = None + Locked: Optional[bool] = None + MinRetentionDays: Optional[int] = None + MaxRetentionDays: Optional[int] = None + LockDate: Optional[datetime] = None + +class CalculatedLifecycleTypeDef(BaseModel): + MoveToColdStorageAt: Optional[datetime] = None + DeleteAt: Optional[datetime] = None + +class CancelLegalHoldInputRequestTypeDef(BaseModel): + LegalHoldId: str + CancelDescription: str + RetainRecordInDays: Optional[int] = None + +class ConditionParameterTypeDef(BaseModel): + ConditionKey: Optional[str] = None + ConditionValue: Optional[str] = None + +class ControlInputParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + +class ControlScopeTypeDef(BaseModel): + ComplianceResourceIds: Optional[Sequence[str]] = None + ComplianceResourceTypes: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class CopyJobSummaryTypeDef(BaseModel): + Region: Optional[str] = None + AccountId: Optional[str] = None + State: Optional[CopyJobStatusType] = None + ResourceType: Optional[str] = None + MessageCategory: Optional[str] = None + Count: Optional[int] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateBackupVaultInputRequestTypeDef(BaseModel): + BackupVaultName: str + BackupVaultTags: Optional[Mapping[str, str]] = None + EncryptionKeyArn: Optional[str] = None + CreatorRequestId: Optional[str] = None + +class CreateLogicallyAirGappedBackupVaultInputRequestTypeDef(BaseModel): + BackupVaultName: str + MinRetentionDays: int + MaxRetentionDays: int + BackupVaultTags: Optional[Mapping[str, str]] = None + CreatorRequestId: Optional[str] = None + +class ReportDeliveryChannelTypeDef(BaseModel): + S3BucketName: str + S3KeyPrefix: Optional[str] = None + Formats: Optional[Sequence[str]] = None + +class ReportSettingTypeDef(BaseModel): + ReportTemplate: str + FrameworkArns: Optional[Sequence[str]] = None + NumberOfFrameworks: Optional[int] = None + Accounts: Optional[Sequence[str]] = None + OrganizationUnits: Optional[Sequence[str]] = None + Regions: Optional[Sequence[str]] = None + +class DeleteBackupPlanInputRequestTypeDef(BaseModel): + BackupPlanId: str + +class DeleteBackupSelectionInputRequestTypeDef(BaseModel): + BackupPlanId: str + SelectionId: str + +class DeleteBackupVaultAccessPolicyInputRequestTypeDef(BaseModel): + BackupVaultName: str + +class DeleteBackupVaultInputRequestTypeDef(BaseModel): + BackupVaultName: str + +class DeleteBackupVaultLockConfigurationInputRequestTypeDef(BaseModel): + BackupVaultName: str + +class DeleteBackupVaultNotificationsInputRequestTypeDef(BaseModel): + BackupVaultName: str + +class DeleteFrameworkInputRequestTypeDef(BaseModel): + FrameworkName: str + +class DeleteRecoveryPointInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + +class DeleteReportPlanInputRequestTypeDef(BaseModel): + ReportPlanName: str + +class DeleteRestoreTestingPlanInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + +class DeleteRestoreTestingSelectionInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + RestoreTestingSelectionName: str + +class DescribeBackupJobInputRequestTypeDef(BaseModel): + BackupJobId: str + +class DescribeBackupVaultInputRequestTypeDef(BaseModel): + BackupVaultName: str + BackupVaultAccountId: Optional[str] = None + +class DescribeCopyJobInputRequestTypeDef(BaseModel): + CopyJobId: str + +class DescribeFrameworkInputRequestTypeDef(BaseModel): + FrameworkName: str + +class DescribeProtectedResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class DescribeRecoveryPointInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + BackupVaultAccountId: Optional[str] = None + +class DescribeReportJobInputRequestTypeDef(BaseModel): + ReportJobId: str + +class DescribeReportPlanInputRequestTypeDef(BaseModel): + ReportPlanName: str + +class DescribeRestoreJobInputRequestTypeDef(BaseModel): + RestoreJobId: str + +class RestoreJobCreatorTypeDef(BaseModel): + RestoreTestingPlanArn: Optional[str] = None + +class DisassociateRecoveryPointFromParentInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + +class DisassociateRecoveryPointInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + +class ExportBackupPlanTemplateInputRequestTypeDef(BaseModel): + BackupPlanId: str + +class FrameworkTypeDef(BaseModel): + FrameworkName: Optional[str] = None + FrameworkArn: Optional[str] = None + FrameworkDescription: Optional[str] = None + NumberOfControls: Optional[int] = None + CreationTime: Optional[datetime] = None + DeploymentStatus: Optional[str] = None + +class GetBackupPlanFromJSONInputRequestTypeDef(BaseModel): + BackupPlanTemplateJson: str + +class GetBackupPlanFromTemplateInputRequestTypeDef(BaseModel): + BackupPlanTemplateId: str + +class GetBackupPlanInputRequestTypeDef(BaseModel): + BackupPlanId: str + VersionId: Optional[str] = None + +class GetBackupSelectionInputRequestTypeDef(BaseModel): + BackupPlanId: str + SelectionId: str + +class GetBackupVaultAccessPolicyInputRequestTypeDef(BaseModel): + BackupVaultName: str + +class GetBackupVaultNotificationsInputRequestTypeDef(BaseModel): + BackupVaultName: str + +class GetLegalHoldInputRequestTypeDef(BaseModel): + LegalHoldId: str + +class GetRecoveryPointRestoreMetadataInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + BackupVaultAccountId: Optional[str] = None + +class GetRestoreJobMetadataInputRequestTypeDef(BaseModel): + RestoreJobId: str + +class GetRestoreTestingInferredMetadataInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + BackupVaultAccountId: Optional[str] = None + +class GetRestoreTestingPlanInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + +class GetRestoreTestingSelectionInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + RestoreTestingSelectionName: str + +class KeyValueTypeDef(BaseModel): + Key: str + Value: str + +class LegalHoldTypeDef(BaseModel): + Title: Optional[str] = None + Status: Optional[LegalHoldStatusType] = None + Description: Optional[str] = None + LegalHoldId: Optional[str] = None + LegalHoldArn: Optional[str] = None + CreationDate: Optional[datetime] = None + CancellationDate: Optional[datetime] = None + +class ListBackupJobSummariesInputRequestTypeDef(BaseModel): + AccountId: Optional[str] = None + State: Optional[BackupJobStatusType] = None + ResourceType: Optional[str] = None + MessageCategory: Optional[str] = None + AggregationPeriod: Optional[AggregationPeriodType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBackupPlanTemplatesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListBackupPlanVersionsInputRequestTypeDef(BaseModel): + BackupPlanId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListBackupPlansInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + IncludeDeleted: Optional[bool] = None + +class ListBackupSelectionsInputRequestTypeDef(BaseModel): + BackupPlanId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListBackupVaultsInputRequestTypeDef(BaseModel): + ByVaultType: Optional[VaultTypeType] = None + ByShared: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCopyJobSummariesInputRequestTypeDef(BaseModel): + AccountId: Optional[str] = None + State: Optional[CopyJobStatusType] = None + ResourceType: Optional[str] = None + MessageCategory: Optional[str] = None + AggregationPeriod: Optional[AggregationPeriodType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFrameworksInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLegalHoldsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProtectedResourcesByBackupVaultInputRequestTypeDef(BaseModel): + BackupVaultName: str + BackupVaultAccountId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ProtectedResourceTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + LastBackupTime: Optional[datetime] = None + ResourceName: Optional[str] = None + LastBackupVaultArn: Optional[str] = None + LastRecoveryPointArn: Optional[str] = None + +class ListProtectedResourcesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRecoveryPointsByLegalHoldInputRequestTypeDef(BaseModel): + LegalHoldId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RecoveryPointMemberTypeDef(BaseModel): + RecoveryPointArn: Optional[str] = None + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + BackupVaultName: Optional[str] = None + +class ListRecoveryPointsByResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ManagedByAWSBackupOnly: Optional[bool] = None + +class RecoveryPointByResourceTypeDef(BaseModel): + RecoveryPointArn: Optional[str] = None + CreationDate: Optional[datetime] = None + Status: Optional[RecoveryPointStatusType] = None + StatusMessage: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + BackupSizeBytes: Optional[int] = None + BackupVaultName: Optional[str] = None + IsParent: Optional[bool] = None + ParentRecoveryPointArn: Optional[str] = None + ResourceName: Optional[str] = None + VaultType: Optional[VaultTypeType] = None + +class ListReportPlansInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRestoreJobSummariesInputRequestTypeDef(BaseModel): + AccountId: Optional[str] = None + State: Optional[RestoreJobStateType] = None + ResourceType: Optional[str] = None + AggregationPeriod: Optional[AggregationPeriodType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RestoreJobSummaryTypeDef(BaseModel): + Region: Optional[str] = None + AccountId: Optional[str] = None + State: Optional[RestoreJobStateType] = None + ResourceType: Optional[str] = None + Count: Optional[int] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class ListRestoreTestingPlansInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RestoreTestingPlanForListTypeDef(BaseModel): + CreationTime: datetime + RestoreTestingPlanArn: str + RestoreTestingPlanName: str + ScheduleExpression: str + LastExecutionTime: Optional[datetime] = None + LastUpdateTime: Optional[datetime] = None + ScheduleExpressionTimezone: Optional[str] = None + StartWindowHours: Optional[int] = None + +class ListRestoreTestingSelectionsInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RestoreTestingSelectionForListTypeDef(BaseModel): + CreationTime: datetime + IamRoleArn: str + ProtectedResourceType: str + RestoreTestingPlanName: str + RestoreTestingSelectionName: str + ValidationWindowHours: Optional[int] = None + +class ListTagsInputRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PutBackupVaultAccessPolicyInputRequestTypeDef(BaseModel): + BackupVaultName: str + Policy: Optional[str] = None + +class PutBackupVaultLockConfigurationInputRequestTypeDef(BaseModel): + BackupVaultName: str + MinRetentionDays: Optional[int] = None + MaxRetentionDays: Optional[int] = None + ChangeableForDays: Optional[int] = None + +class PutBackupVaultNotificationsInputRequestTypeDef(BaseModel): + BackupVaultName: str + SNSTopicArn: str + BackupVaultEvents: Sequence[BackupVaultEventType] + +class PutRestoreValidationResultInputRequestTypeDef(BaseModel): + RestoreJobId: str + ValidationStatus: RestoreValidationStatusType + ValidationStatusMessage: Optional[str] = None + +class ReportDestinationTypeDef(BaseModel): + S3BucketName: Optional[str] = None + S3Keys: Optional[List[str]] = None + +class RestoreTestingRecoveryPointSelectionTypeDef(BaseModel): + Algorithm: Optional[RestoreTestingRecoveryPointSelectionAlgorithmType] = None + ExcludeVaults: Optional[Sequence[str]] = None + IncludeVaults: Optional[Sequence[str]] = None + RecoveryPointTypes: Optional[Sequence[RestoreTestingRecoveryPointTypeType]] = None + SelectionWindowDays: Optional[int] = None + +class StartReportJobInputRequestTypeDef(BaseModel): + ReportPlanName: str + IdempotencyToken: Optional[str] = None + +class StartRestoreJobInputRequestTypeDef(BaseModel): + RecoveryPointArn: str + Metadata: Mapping[str, str] + IamRoleArn: Optional[str] = None + IdempotencyToken: Optional[str] = None + ResourceType: Optional[str] = None + CopySourceTagsToRestoredResource: Optional[bool] = None + +class StopBackupJobInputRequestTypeDef(BaseModel): + BackupJobId: str + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeyList: Sequence[str] + +class UpdateGlobalSettingsInputRequestTypeDef(BaseModel): + GlobalSettings: Optional[Mapping[str, str]] = None + +class UpdateRegionSettingsInputRequestTypeDef(BaseModel): + ResourceTypeOptInPreference: Optional[Mapping[str, bool]] = None + ResourceTypeManagementPreference: Optional[Mapping[str, bool]] = None + +class BackupPlansListMemberPaginatorTypeDef(BaseModel): + BackupPlanArn: Optional[str] = None + BackupPlanId: Optional[str] = None + CreationDate: Optional[datetime] = None + DeletionDate: Optional[datetime] = None + VersionId: Optional[str] = None + BackupPlanName: Optional[str] = None + CreatorRequestId: Optional[str] = None + LastExecutionDate: Optional[datetime] = None + AdvancedBackupSettings: Optional[List[AdvancedBackupSettingPaginatorTypeDef]] = None + +class BackupPlansListMemberTypeDef(BaseModel): + BackupPlanArn: Optional[str] = None + BackupPlanId: Optional[str] = None + CreationDate: Optional[datetime] = None + DeletionDate: Optional[datetime] = None + VersionId: Optional[str] = None + BackupPlanName: Optional[str] = None + CreatorRequestId: Optional[str] = None + LastExecutionDate: Optional[datetime] = None + AdvancedBackupSettings: Optional[List[AdvancedBackupSettingTypeDef]] = None + +class BackupJobTypeDef(BaseModel): + AccountId: Optional[str] = None + BackupJobId: Optional[str] = None + BackupVaultName: Optional[str] = None + BackupVaultArn: Optional[str] = None + RecoveryPointArn: Optional[str] = None + ResourceArn: Optional[str] = None + CreationDate: Optional[datetime] = None + CompletionDate: Optional[datetime] = None + State: Optional[BackupJobStateType] = None + StatusMessage: Optional[str] = None + PercentDone: Optional[str] = None + BackupSizeInBytes: Optional[int] = None + IamRoleArn: Optional[str] = None + CreatedBy: Optional[RecoveryPointCreatorTypeDef] = None + ExpectedCompletionDate: Optional[datetime] = None + StartBy: Optional[datetime] = None + ResourceType: Optional[str] = None + BytesTransferred: Optional[int] = None + BackupOptions: Optional[Dict[str, str]] = None + BackupType: Optional[str] = None + ParentJobId: Optional[str] = None + IsParent: Optional[bool] = None + ResourceName: Optional[str] = None + InitiationDate: Optional[datetime] = None + MessageCategory: Optional[str] = None + +class CopyJobTypeDef(BaseModel): + AccountId: Optional[str] = None + CopyJobId: Optional[str] = None + SourceBackupVaultArn: Optional[str] = None + SourceRecoveryPointArn: Optional[str] = None + DestinationBackupVaultArn: Optional[str] = None + DestinationRecoveryPointArn: Optional[str] = None + ResourceArn: Optional[str] = None + CreationDate: Optional[datetime] = None + CompletionDate: Optional[datetime] = None + State: Optional[CopyJobStateType] = None + StatusMessage: Optional[str] = None + BackupSizeInBytes: Optional[int] = None + IamRoleArn: Optional[str] = None + CreatedBy: Optional[RecoveryPointCreatorTypeDef] = None + ResourceType: Optional[str] = None + ParentJobId: Optional[str] = None + IsParent: Optional[bool] = None + CompositeMemberIdentifier: Optional[str] = None + NumberOfChildJobs: Optional[int] = None + ChildJobsInState: Optional[Dict[CopyJobStateType, int]] = None + ResourceName: Optional[str] = None + MessageCategory: Optional[str] = None + +class CopyActionTypeDef(BaseModel): + DestinationBackupVaultArn: str + Lifecycle: Optional[LifecycleTypeDef] = None + +class StartBackupJobInputRequestTypeDef(BaseModel): + BackupVaultName: str + ResourceArn: str + IamRoleArn: str + IdempotencyToken: Optional[str] = None + StartWindowMinutes: Optional[int] = None + CompleteWindowMinutes: Optional[int] = None + Lifecycle: Optional[LifecycleTypeDef] = None + RecoveryPointTags: Optional[Mapping[str, str]] = None + BackupOptions: Optional[Mapping[str, str]] = None + +class StartCopyJobInputRequestTypeDef(BaseModel): + RecoveryPointArn: str + SourceBackupVaultName: str + DestinationBackupVaultArn: str + IamRoleArn: str + IdempotencyToken: Optional[str] = None + Lifecycle: Optional[LifecycleTypeDef] = None + +class UpdateRecoveryPointLifecycleInputRequestTypeDef(BaseModel): + BackupVaultName: str + RecoveryPointArn: str + Lifecycle: Optional[LifecycleTypeDef] = None + +class RecoveryPointByBackupVaultTypeDef(BaseModel): + RecoveryPointArn: Optional[str] = None + BackupVaultName: Optional[str] = None + BackupVaultArn: Optional[str] = None + SourceBackupVaultArn: Optional[str] = None + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + CreatedBy: Optional[RecoveryPointCreatorTypeDef] = None + IamRoleArn: Optional[str] = None + Status: Optional[RecoveryPointStatusType] = None + StatusMessage: Optional[str] = None + CreationDate: Optional[datetime] = None + CompletionDate: Optional[datetime] = None + BackupSizeInBytes: Optional[int] = None + CalculatedLifecycle: Optional[CalculatedLifecycleTypeDef] = None + Lifecycle: Optional[LifecycleTypeDef] = None + EncryptionKeyArn: Optional[str] = None + IsEncrypted: Optional[bool] = None + LastRestoreTime: Optional[datetime] = None + ParentRecoveryPointArn: Optional[str] = None + CompositeMemberIdentifier: Optional[str] = None + IsParent: Optional[bool] = None + ResourceName: Optional[str] = None + VaultType: Optional[VaultTypeType] = None + +class ConditionsTypeDef(BaseModel): + StringEquals: Optional[Sequence[ConditionParameterTypeDef]] = None + StringNotEquals: Optional[Sequence[ConditionParameterTypeDef]] = None + StringLike: Optional[Sequence[ConditionParameterTypeDef]] = None + StringNotLike: Optional[Sequence[ConditionParameterTypeDef]] = None + +class FrameworkControlTypeDef(BaseModel): + ControlName: str + ControlInputParameters: Optional[Sequence[ControlInputParameterTypeDef]] = None + ControlScope: Optional[ControlScopeTypeDef] = None + +class CreateBackupPlanOutputTypeDef(BaseModel): + BackupPlanId: str + BackupPlanArn: str + CreationDate: datetime + VersionId: str + AdvancedBackupSettings: List[AdvancedBackupSettingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackupSelectionOutputTypeDef(BaseModel): + SelectionId: str + BackupPlanId: str + CreationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackupVaultOutputTypeDef(BaseModel): + BackupVaultName: str + BackupVaultArn: str + CreationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFrameworkOutputTypeDef(BaseModel): + FrameworkName: str + FrameworkArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLogicallyAirGappedBackupVaultOutputTypeDef(BaseModel): + BackupVaultName: str + BackupVaultArn: str + CreationDate: datetime + VaultState: VaultStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReportPlanOutputTypeDef(BaseModel): + ReportPlanName: str + ReportPlanArn: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRestoreTestingPlanOutputTypeDef(BaseModel): + CreationTime: datetime + RestoreTestingPlanArn: str + RestoreTestingPlanName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRestoreTestingSelectionOutputTypeDef(BaseModel): + CreationTime: datetime + RestoreTestingPlanArn: str + RestoreTestingPlanName: str + RestoreTestingSelectionName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackupPlanOutputTypeDef(BaseModel): + BackupPlanId: str + BackupPlanArn: str + DeletionDate: datetime + VersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupJobOutputTypeDef(BaseModel): + AccountId: str + BackupJobId: str + BackupVaultName: str + BackupVaultArn: str + RecoveryPointArn: str + ResourceArn: str + CreationDate: datetime + CompletionDate: datetime + State: BackupJobStateType + StatusMessage: str + PercentDone: str + BackupSizeInBytes: int + IamRoleArn: str + CreatedBy: RecoveryPointCreatorTypeDef + ResourceType: str + BytesTransferred: int + ExpectedCompletionDate: datetime + StartBy: datetime + BackupOptions: Dict[str, str] + BackupType: str + ParentJobId: str + IsParent: bool + NumberOfChildJobs: int + ChildJobsInState: Dict[BackupJobStateType, int] + ResourceName: str + InitiationDate: datetime + MessageCategory: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupVaultOutputTypeDef(BaseModel): + BackupVaultName: str + BackupVaultArn: str + VaultType: VaultTypeType + EncryptionKeyArn: str + CreationDate: datetime + CreatorRequestId: str + NumberOfRecoveryPoints: int + Locked: bool + MinRetentionDays: int + MaxRetentionDays: int + LockDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGlobalSettingsOutputTypeDef(BaseModel): + GlobalSettings: Dict[str, str] + LastUpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProtectedResourceOutputTypeDef(BaseModel): + ResourceArn: str + ResourceType: str + LastBackupTime: datetime + ResourceName: str + LastBackupVaultArn: str + LastRecoveryPointArn: str + LatestRestoreExecutionTimeMinutes: int + LatestRestoreJobCreationDate: datetime + LatestRestoreRecoveryPointCreationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRecoveryPointOutputTypeDef(BaseModel): + RecoveryPointArn: str + BackupVaultName: str + BackupVaultArn: str + SourceBackupVaultArn: str + ResourceArn: str + ResourceType: str + CreatedBy: RecoveryPointCreatorTypeDef + IamRoleArn: str + Status: RecoveryPointStatusType + StatusMessage: str + CreationDate: datetime + CompletionDate: datetime + BackupSizeInBytes: int + CalculatedLifecycle: CalculatedLifecycleTypeDef + Lifecycle: LifecycleTypeDef + EncryptionKeyArn: str + IsEncrypted: bool + StorageClass: StorageClassType + LastRestoreTime: datetime + ParentRecoveryPointArn: str + CompositeMemberIdentifier: str + IsParent: bool + ResourceName: str + VaultType: VaultTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRegionSettingsOutputTypeDef(BaseModel): + ResourceTypeOptInPreference: Dict[str, bool] + ResourceTypeManagementPreference: Dict[str, bool] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportBackupPlanTemplateOutputTypeDef(BaseModel): + BackupPlanTemplateJson: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackupVaultAccessPolicyOutputTypeDef(BaseModel): + BackupVaultName: str + BackupVaultArn: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackupVaultNotificationsOutputTypeDef(BaseModel): + BackupVaultName: str + BackupVaultArn: str + SNSTopicArn: str + BackupVaultEvents: List[BackupVaultEventType] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecoveryPointRestoreMetadataOutputTypeDef(BaseModel): + BackupVaultArn: str + RecoveryPointArn: str + RestoreMetadata: Dict[str, str] + ResourceType: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRestoreJobMetadataOutputTypeDef(BaseModel): + RestoreJobId: str + Metadata: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRestoreTestingInferredMetadataOutputTypeDef(BaseModel): + InferredMetadata: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSupportedResourceTypesOutputTypeDef(BaseModel): + ResourceTypes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupJobSummariesOutputTypeDef(BaseModel): + BackupJobSummaries: List[BackupJobSummaryTypeDef] + AggregationPeriod: str + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupPlanTemplatesOutputTypeDef(BaseModel): + NextToken: str + BackupPlanTemplatesList: List[BackupPlanTemplatesListMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupSelectionsOutputTypeDef(BaseModel): + NextToken: str + BackupSelectionsList: List[BackupSelectionsListMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupVaultsOutputTypeDef(BaseModel): + BackupVaultList: List[BackupVaultListMemberTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCopyJobSummariesOutputTypeDef(BaseModel): + CopyJobSummaries: List[CopyJobSummaryTypeDef] + AggregationPeriod: str + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsOutputTypeDef(BaseModel): + NextToken: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartBackupJobOutputTypeDef(BaseModel): + BackupJobId: str + RecoveryPointArn: str + CreationDate: datetime + IsParent: bool + ResponseMetadata: ResponseMetadataTypeDef + +class StartCopyJobOutputTypeDef(BaseModel): + CopyJobId: str + CreationDate: datetime + IsParent: bool + ResponseMetadata: ResponseMetadataTypeDef + +class StartReportJobOutputTypeDef(BaseModel): + ReportJobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartRestoreJobOutputTypeDef(BaseModel): + RestoreJobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBackupPlanOutputTypeDef(BaseModel): + BackupPlanId: str + BackupPlanArn: str + CreationDate: datetime + VersionId: str + AdvancedBackupSettings: List[AdvancedBackupSettingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFrameworkOutputTypeDef(BaseModel): + FrameworkName: str + FrameworkArn: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRecoveryPointLifecycleOutputTypeDef(BaseModel): + BackupVaultArn: str + RecoveryPointArn: str + Lifecycle: LifecycleTypeDef + CalculatedLifecycle: CalculatedLifecycleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReportPlanOutputTypeDef(BaseModel): + ReportPlanName: str + ReportPlanArn: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRestoreTestingPlanOutputTypeDef(BaseModel): + CreationTime: datetime + RestoreTestingPlanArn: str + RestoreTestingPlanName: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRestoreTestingSelectionOutputTypeDef(BaseModel): + CreationTime: datetime + RestoreTestingPlanArn: str + RestoreTestingPlanName: str + RestoreTestingSelectionName: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReportPlanInputRequestTypeDef(BaseModel): + ReportPlanName: str + ReportDeliveryChannel: ReportDeliveryChannelTypeDef + ReportSetting: ReportSettingTypeDef + ReportPlanDescription: Optional[str] = None + ReportPlanTags: Optional[Mapping[str, str]] = None + IdempotencyToken: Optional[str] = None + +class ReportPlanTypeDef(BaseModel): + ReportPlanArn: Optional[str] = None + ReportPlanName: Optional[str] = None + ReportPlanDescription: Optional[str] = None + ReportSetting: Optional[ReportSettingTypeDef] = None + ReportDeliveryChannel: Optional[ReportDeliveryChannelTypeDef] = None + DeploymentStatus: Optional[str] = None + CreationTime: Optional[datetime] = None + LastAttemptedExecutionTime: Optional[datetime] = None + LastSuccessfulExecutionTime: Optional[datetime] = None + +class UpdateReportPlanInputRequestTypeDef(BaseModel): + ReportPlanName: str + ReportPlanDescription: Optional[str] = None + ReportDeliveryChannel: Optional[ReportDeliveryChannelTypeDef] = None + ReportSetting: Optional[ReportSettingTypeDef] = None + IdempotencyToken: Optional[str] = None + +class DateRangeTypeDef(BaseModel): + FromDate: TimestampTypeDef + ToDate: TimestampTypeDef + +class ListBackupJobsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ByResourceArn: Optional[str] = None + ByState: Optional[BackupJobStateType] = None + ByBackupVaultName: Optional[str] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByResourceType: Optional[str] = None + ByAccountId: Optional[str] = None + ByCompleteAfter: Optional[TimestampTypeDef] = None + ByCompleteBefore: Optional[TimestampTypeDef] = None + ByParentJobId: Optional[str] = None + ByMessageCategory: Optional[str] = None + +class ListCopyJobsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ByResourceArn: Optional[str] = None + ByState: Optional[CopyJobStateType] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByResourceType: Optional[str] = None + ByDestinationVaultArn: Optional[str] = None + ByAccountId: Optional[str] = None + ByCompleteBefore: Optional[TimestampTypeDef] = None + ByCompleteAfter: Optional[TimestampTypeDef] = None + ByParentJobId: Optional[str] = None + ByMessageCategory: Optional[str] = None + +class ListRecoveryPointsByBackupVaultInputRequestTypeDef(BaseModel): + BackupVaultName: str + BackupVaultAccountId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ByResourceArn: Optional[str] = None + ByResourceType: Optional[str] = None + ByBackupPlanId: Optional[str] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByParentRecoveryPointArn: Optional[str] = None + +class ListReportJobsInputRequestTypeDef(BaseModel): + ByReportPlanName: Optional[str] = None + ByCreationBefore: Optional[TimestampTypeDef] = None + ByCreationAfter: Optional[TimestampTypeDef] = None + ByStatus: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRestoreJobsByProtectedResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + ByStatus: Optional[RestoreJobStatusType] = None + ByRecoveryPointCreationDateAfter: Optional[TimestampTypeDef] = None + ByRecoveryPointCreationDateBefore: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRestoreJobsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ByAccountId: Optional[str] = None + ByResourceType: Optional[str] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByStatus: Optional[RestoreJobStatusType] = None + ByCompleteBefore: Optional[TimestampTypeDef] = None + ByCompleteAfter: Optional[TimestampTypeDef] = None + ByRestoreTestingPlanArn: Optional[str] = None + +class DescribeRestoreJobOutputTypeDef(BaseModel): + AccountId: str + RestoreJobId: str + RecoveryPointArn: str + CreationDate: datetime + CompletionDate: datetime + Status: RestoreJobStatusType + StatusMessage: str + PercentDone: str + BackupSizeInBytes: int + IamRoleArn: str + ExpectedCompletionTimeMinutes: int + CreatedResourceArn: str + ResourceType: str + RecoveryPointCreationDate: datetime + CreatedBy: RestoreJobCreatorTypeDef + ValidationStatus: RestoreValidationStatusType + ValidationStatusMessage: str + DeletionStatus: RestoreDeletionStatusType + DeletionStatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreJobsListMemberTypeDef(BaseModel): + AccountId: Optional[str] = None + RestoreJobId: Optional[str] = None + RecoveryPointArn: Optional[str] = None + CreationDate: Optional[datetime] = None + CompletionDate: Optional[datetime] = None + Status: Optional[RestoreJobStatusType] = None + StatusMessage: Optional[str] = None + PercentDone: Optional[str] = None + BackupSizeInBytes: Optional[int] = None + IamRoleArn: Optional[str] = None + ExpectedCompletionTimeMinutes: Optional[int] = None + CreatedResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + RecoveryPointCreationDate: Optional[datetime] = None + CreatedBy: Optional[RestoreJobCreatorTypeDef] = None + ValidationStatus: Optional[RestoreValidationStatusType] = None + ValidationStatusMessage: Optional[str] = None + DeletionStatus: Optional[RestoreDeletionStatusType] = None + DeletionStatusMessage: Optional[str] = None + +class ListFrameworksOutputTypeDef(BaseModel): + Frameworks: List[FrameworkTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProtectedResourceConditionsTypeDef(BaseModel): + StringEquals: Optional[Sequence[KeyValueTypeDef]] = None + StringNotEquals: Optional[Sequence[KeyValueTypeDef]] = None + +class ListLegalHoldsOutputTypeDef(BaseModel): + NextToken: str + LegalHolds: List[LegalHoldTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupJobsInputListBackupJobsPaginateTypeDef(BaseModel): + ByResourceArn: Optional[str] = None + ByState: Optional[BackupJobStateType] = None + ByBackupVaultName: Optional[str] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByResourceType: Optional[str] = None + ByAccountId: Optional[str] = None + ByCompleteAfter: Optional[TimestampTypeDef] = None + ByCompleteBefore: Optional[TimestampTypeDef] = None + ByParentJobId: Optional[str] = None + ByMessageCategory: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBackupPlanTemplatesInputListBackupPlanTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBackupPlanVersionsInputListBackupPlanVersionsPaginateTypeDef(BaseModel): + BackupPlanId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBackupPlansInputListBackupPlansPaginateTypeDef(BaseModel): + IncludeDeleted: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBackupSelectionsInputListBackupSelectionsPaginateTypeDef(BaseModel): + BackupPlanId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBackupVaultsInputListBackupVaultsPaginateTypeDef(BaseModel): + ByVaultType: Optional[VaultTypeType] = None + ByShared: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCopyJobsInputListCopyJobsPaginateTypeDef(BaseModel): + ByResourceArn: Optional[str] = None + ByState: Optional[CopyJobStateType] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByResourceType: Optional[str] = None + ByDestinationVaultArn: Optional[str] = None + ByAccountId: Optional[str] = None + ByCompleteBefore: Optional[TimestampTypeDef] = None + ByCompleteAfter: Optional[TimestampTypeDef] = None + ByParentJobId: Optional[str] = None + ByMessageCategory: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLegalHoldsInputListLegalHoldsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProtectedResourcesByBackupVaultInputListProtectedResourcesByBackupVaultPaginateTypeDef(BaseModel): + BackupVaultName: str + BackupVaultAccountId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProtectedResourcesInputListProtectedResourcesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecoveryPointsByBackupVaultInputListRecoveryPointsByBackupVaultPaginateTypeDef(BaseModel): + BackupVaultName: str + BackupVaultAccountId: Optional[str] = None + ByResourceArn: Optional[str] = None + ByResourceType: Optional[str] = None + ByBackupPlanId: Optional[str] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByParentRecoveryPointArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecoveryPointsByLegalHoldInputListRecoveryPointsByLegalHoldPaginateTypeDef(BaseModel): + LegalHoldId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecoveryPointsByResourceInputListRecoveryPointsByResourcePaginateTypeDef(BaseModel): + ResourceArn: str + ManagedByAWSBackupOnly: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRestoreJobsInputListRestoreJobsPaginateTypeDef(BaseModel): + ByAccountId: Optional[str] = None + ByResourceType: Optional[str] = None + ByCreatedBefore: Optional[TimestampTypeDef] = None + ByCreatedAfter: Optional[TimestampTypeDef] = None + ByStatus: Optional[RestoreJobStatusType] = None + ByCompleteBefore: Optional[TimestampTypeDef] = None + ByCompleteAfter: Optional[TimestampTypeDef] = None + ByRestoreTestingPlanArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRestoreTestingPlansInputListRestoreTestingPlansPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRestoreTestingSelectionsInputListRestoreTestingSelectionsPaginateTypeDef(BaseModel): + RestoreTestingPlanName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProtectedResourcesByBackupVaultOutputTypeDef(BaseModel): + Results: List[ProtectedResourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProtectedResourcesOutputTypeDef(BaseModel): + Results: List[ProtectedResourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecoveryPointsByLegalHoldOutputTypeDef(BaseModel): + RecoveryPoints: List[RecoveryPointMemberTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecoveryPointsByResourceOutputTypeDef(BaseModel): + NextToken: str + RecoveryPoints: List[RecoveryPointByResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRestoreJobSummariesOutputTypeDef(BaseModel): + RestoreJobSummaries: List[RestoreJobSummaryTypeDef] + AggregationPeriod: str + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRestoreTestingPlansOutputTypeDef(BaseModel): + NextToken: str + RestoreTestingPlans: List[RestoreTestingPlanForListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRestoreTestingSelectionsOutputTypeDef(BaseModel): + NextToken: str + RestoreTestingSelections: List[RestoreTestingSelectionForListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReportJobTypeDef(BaseModel): + ReportJobId: Optional[str] = None + ReportPlanArn: Optional[str] = None + ReportTemplate: Optional[str] = None + CreationTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + ReportDestination: Optional[ReportDestinationTypeDef] = None + +class RestoreTestingPlanForCreateTypeDef(BaseModel): + RecoveryPointSelection: RestoreTestingRecoveryPointSelectionTypeDef + RestoreTestingPlanName: str + ScheduleExpression: str + ScheduleExpressionTimezone: Optional[str] = None + StartWindowHours: Optional[int] = None + +class RestoreTestingPlanForGetTypeDef(BaseModel): + CreationTime: datetime + RecoveryPointSelection: RestoreTestingRecoveryPointSelectionTypeDef + RestoreTestingPlanArn: str + RestoreTestingPlanName: str + ScheduleExpression: str + CreatorRequestId: Optional[str] = None + LastExecutionTime: Optional[datetime] = None + LastUpdateTime: Optional[datetime] = None + ScheduleExpressionTimezone: Optional[str] = None + StartWindowHours: Optional[int] = None + +class RestoreTestingPlanForUpdateTypeDef(BaseModel): + RecoveryPointSelection: Optional[RestoreTestingRecoveryPointSelectionTypeDef] = None + ScheduleExpression: Optional[str] = None + ScheduleExpressionTimezone: Optional[str] = None + StartWindowHours: Optional[int] = None + +class ListBackupPlanVersionsOutputPaginatorTypeDef(BaseModel): + NextToken: str + BackupPlanVersionsList: List[BackupPlansListMemberPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupPlansOutputPaginatorTypeDef(BaseModel): + NextToken: str + BackupPlansList: List[BackupPlansListMemberPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupPlanVersionsOutputTypeDef(BaseModel): + NextToken: str + BackupPlanVersionsList: List[BackupPlansListMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupPlansOutputTypeDef(BaseModel): + NextToken: str + BackupPlansList: List[BackupPlansListMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupJobsOutputTypeDef(BaseModel): + BackupJobs: List[BackupJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCopyJobOutputTypeDef(BaseModel): + CopyJob: CopyJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCopyJobsOutputTypeDef(BaseModel): + CopyJobs: List[CopyJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BackupRuleInputTypeDef(BaseModel): + RuleName: str + TargetBackupVaultName: str + ScheduleExpression: Optional[str] = None + StartWindowMinutes: Optional[int] = None + CompletionWindowMinutes: Optional[int] = None + Lifecycle: Optional[LifecycleTypeDef] = None + RecoveryPointTags: Optional[Mapping[str, str]] = None + CopyActions: Optional[Sequence[CopyActionTypeDef]] = None + EnableContinuousBackup: Optional[bool] = None + ScheduleExpressionTimezone: Optional[str] = None + +class BackupRuleTypeDef(BaseModel): + RuleName: str + TargetBackupVaultName: str + ScheduleExpression: Optional[str] = None + StartWindowMinutes: Optional[int] = None + CompletionWindowMinutes: Optional[int] = None + Lifecycle: Optional[LifecycleTypeDef] = None + RecoveryPointTags: Optional[Dict[str, str]] = None + RuleId: Optional[str] = None + CopyActions: Optional[List[CopyActionTypeDef]] = None + EnableContinuousBackup: Optional[bool] = None + ScheduleExpressionTimezone: Optional[str] = None + +class ListRecoveryPointsByBackupVaultOutputTypeDef(BaseModel): + NextToken: str + RecoveryPoints: List[RecoveryPointByBackupVaultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BackupSelectionTypeDef(BaseModel): + SelectionName: str + IamRoleArn: str + Resources: Optional[Sequence[str]] = None + ListOfTags: Optional[Sequence[ConditionTypeDef]] = None + NotResources: Optional[Sequence[str]] = None + Conditions: Optional[ConditionsTypeDef] = None + +class CreateFrameworkInputRequestTypeDef(BaseModel): + FrameworkName: str + FrameworkControls: Sequence[FrameworkControlTypeDef] + FrameworkDescription: Optional[str] = None + IdempotencyToken: Optional[str] = None + FrameworkTags: Optional[Mapping[str, str]] = None + +class DescribeFrameworkOutputTypeDef(BaseModel): + FrameworkName: str + FrameworkArn: str + FrameworkDescription: str + FrameworkControls: List[FrameworkControlTypeDef] + CreationTime: datetime + DeploymentStatus: str + FrameworkStatus: str + IdempotencyToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFrameworkInputRequestTypeDef(BaseModel): + FrameworkName: str + FrameworkDescription: Optional[str] = None + FrameworkControls: Optional[Sequence[FrameworkControlTypeDef]] = None + IdempotencyToken: Optional[str] = None + +class DescribeReportPlanOutputTypeDef(BaseModel): + ReportPlan: ReportPlanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportPlansOutputTypeDef(BaseModel): + ReportPlans: List[ReportPlanTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecoveryPointSelectionTypeDef(BaseModel): + VaultNames: Optional[Sequence[str]] = None + ResourceIdentifiers: Optional[Sequence[str]] = None + DateRange: Optional[DateRangeTypeDef] = None + +class ListRestoreJobsByProtectedResourceOutputTypeDef(BaseModel): + RestoreJobs: List[RestoreJobsListMemberTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRestoreJobsOutputTypeDef(BaseModel): + RestoreJobs: List[RestoreJobsListMemberTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreTestingSelectionForCreateTypeDef(BaseModel): + IamRoleArn: str + ProtectedResourceType: str + RestoreTestingSelectionName: str + ProtectedResourceArns: Optional[Sequence[str]] = None + ProtectedResourceConditions: Optional[ProtectedResourceConditionsTypeDef] = None + RestoreMetadataOverrides: Optional[Mapping[str, str]] = None + ValidationWindowHours: Optional[int] = None + +class RestoreTestingSelectionForGetTypeDef(BaseModel): + CreationTime: datetime + IamRoleArn: str + ProtectedResourceType: str + RestoreTestingPlanName: str + RestoreTestingSelectionName: str + CreatorRequestId: Optional[str] = None + ProtectedResourceArns: Optional[List[str]] = None + ProtectedResourceConditions: Optional[ProtectedResourceConditionsTypeDef] = None + RestoreMetadataOverrides: Optional[Dict[str, str]] = None + ValidationWindowHours: Optional[int] = None + +class RestoreTestingSelectionForUpdateTypeDef(BaseModel): + IamRoleArn: Optional[str] = None + ProtectedResourceArns: Optional[Sequence[str]] = None + ProtectedResourceConditions: Optional[ProtectedResourceConditionsTypeDef] = None + RestoreMetadataOverrides: Optional[Mapping[str, str]] = None + ValidationWindowHours: Optional[int] = None + +class DescribeReportJobOutputTypeDef(BaseModel): + ReportJob: ReportJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportJobsOutputTypeDef(BaseModel): + ReportJobs: List[ReportJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRestoreTestingPlanInputRequestTypeDef(BaseModel): + RestoreTestingPlan: RestoreTestingPlanForCreateTypeDef + CreatorRequestId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class GetRestoreTestingPlanOutputTypeDef(BaseModel): + RestoreTestingPlan: RestoreTestingPlanForGetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRestoreTestingPlanInputRequestTypeDef(BaseModel): + RestoreTestingPlan: RestoreTestingPlanForUpdateTypeDef + RestoreTestingPlanName: str + +class BackupPlanInputTypeDef(BaseModel): + BackupPlanName: str + Rules: Sequence[BackupRuleInputTypeDef] + AdvancedBackupSettings: Optional[Sequence[AdvancedBackupSettingTypeDef]] = None + +class BackupPlanTypeDef(BaseModel): + BackupPlanName: str + Rules: List[BackupRuleTypeDef] + AdvancedBackupSettings: Optional[List[AdvancedBackupSettingTypeDef]] = None + +class CreateBackupSelectionInputRequestTypeDef(BaseModel): + BackupPlanId: str + BackupSelection: BackupSelectionTypeDef + CreatorRequestId: Optional[str] = None + +class GetBackupSelectionOutputTypeDef(BaseModel): + BackupSelection: BackupSelectionTypeDef + SelectionId: str + BackupPlanId: str + CreationDate: datetime + CreatorRequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLegalHoldInputRequestTypeDef(BaseModel): + Title: str + Description: str + IdempotencyToken: Optional[str] = None + RecoveryPointSelection: Optional[RecoveryPointSelectionTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateLegalHoldOutputTypeDef(BaseModel): + Title: str + Status: LegalHoldStatusType + Description: str + LegalHoldId: str + LegalHoldArn: str + CreationDate: datetime + RecoveryPointSelection: RecoveryPointSelectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLegalHoldOutputTypeDef(BaseModel): + Title: str + Status: LegalHoldStatusType + Description: str + CancelDescription: str + LegalHoldId: str + LegalHoldArn: str + CreationDate: datetime + CancellationDate: datetime + RetainRecordUntil: datetime + RecoveryPointSelection: RecoveryPointSelectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRestoreTestingSelectionInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + RestoreTestingSelection: RestoreTestingSelectionForCreateTypeDef + CreatorRequestId: Optional[str] = None + +class GetRestoreTestingSelectionOutputTypeDef(BaseModel): + RestoreTestingSelection: RestoreTestingSelectionForGetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRestoreTestingSelectionInputRequestTypeDef(BaseModel): + RestoreTestingPlanName: str + RestoreTestingSelection: RestoreTestingSelectionForUpdateTypeDef + RestoreTestingSelectionName: str + +class CreateBackupPlanInputRequestTypeDef(BaseModel): + BackupPlan: BackupPlanInputTypeDef + BackupPlanTags: Optional[Mapping[str, str]] = None + CreatorRequestId: Optional[str] = None + +class UpdateBackupPlanInputRequestTypeDef(BaseModel): + BackupPlanId: str + BackupPlan: BackupPlanInputTypeDef + +class GetBackupPlanFromJSONOutputTypeDef(BaseModel): + BackupPlan: BackupPlanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackupPlanFromTemplateOutputTypeDef(BaseModel): + BackupPlanDocument: BackupPlanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBackupPlanOutputTypeDef(BaseModel): + BackupPlan: BackupPlanTypeDef + BackupPlanId: str + BackupPlanArn: str + VersionId: str + CreatorRequestId: str + CreationDate: datetime + DeletionDate: datetime + LastExecutionDate: datetime + AdvancedBackupSettings: List[AdvancedBackupSettingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/backup_constants.py b/aws_resource_validator/pydantic_models/backup_constants.py new file mode 100644 index 00000000..3b3cb8fe --- /dev/null +++ b/aws_resource_validator/pydantic_models/backup_constants.py @@ -0,0 +1,519 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregationPeriodType = Literal["FOURTEEN_DAYS", "ONE_DAY", "SEVEN_DAYS"] +BackupJobStateType = Literal["ABORTED", + "ABORTING", + "COMPLETED", + "CREATED", + "EXPIRED", + "FAILED", + "PARTIAL", + "PENDING", + "RUNNING",] +BackupJobStatusType = Literal["ABORTED", + "ABORTING", + "AGGREGATE_ALL", + "ANY", + "COMPLETED", + "CREATED", + "EXPIRED", + "FAILED", + "PARTIAL", + "PENDING", + "RUNNING",] +BackupVaultEventType = Literal["BACKUP_JOB_COMPLETED", + "BACKUP_JOB_EXPIRED", + "BACKUP_JOB_FAILED", + "BACKUP_JOB_STARTED", + "BACKUP_JOB_SUCCESSFUL", + "BACKUP_PLAN_CREATED", + "BACKUP_PLAN_MODIFIED", + "COPY_JOB_FAILED", + "COPY_JOB_STARTED", + "COPY_JOB_SUCCESSFUL", + "RECOVERY_POINT_MODIFIED", + "RESTORE_JOB_COMPLETED", + "RESTORE_JOB_FAILED", + "RESTORE_JOB_STARTED", + "RESTORE_JOB_SUCCESSFUL", + "S3_BACKUP_OBJECT_FAILED", + "S3_RESTORE_OBJECT_FAILED",] +ConditionTypeType = Literal["STRINGEQUALS"] +CopyJobStateType = Literal["COMPLETED", "CREATED", "FAILED", "PARTIAL", "RUNNING"] +CopyJobStatusType = Literal["ABORTED", + "ABORTING", + "AGGREGATE_ALL", + "ANY", + "COMPLETED", + "COMPLETING", + "CREATED", + "FAILED", + "FAILING", + "PARTIAL", + "RUNNING",] +LegalHoldStatusType = Literal["ACTIVE", "CANCELED", "CANCELING", "CREATING"] +ListBackupJobsPaginatorName = Literal["list_backup_jobs"] +ListBackupPlanTemplatesPaginatorName = Literal["list_backup_plan_templates"] +ListBackupPlanVersionsPaginatorName = Literal["list_backup_plan_versions"] +ListBackupPlansPaginatorName = Literal["list_backup_plans"] +ListBackupSelectionsPaginatorName = Literal["list_backup_selections"] +ListBackupVaultsPaginatorName = Literal["list_backup_vaults"] +ListCopyJobsPaginatorName = Literal["list_copy_jobs"] +ListLegalHoldsPaginatorName = Literal["list_legal_holds"] +ListProtectedResourcesByBackupVaultPaginatorName = Literal["list_protected_resources_by_backup_vault"] +ListProtectedResourcesPaginatorName = Literal["list_protected_resources"] +ListRecoveryPointsByBackupVaultPaginatorName = Literal["list_recovery_points_by_backup_vault"] +ListRecoveryPointsByLegalHoldPaginatorName = Literal["list_recovery_points_by_legal_hold"] +ListRecoveryPointsByResourcePaginatorName = Literal["list_recovery_points_by_resource"] +ListRestoreJobsByProtectedResourcePaginatorName = Literal["list_restore_jobs_by_protected_resource"] +ListRestoreJobsPaginatorName = Literal["list_restore_jobs"] +ListRestoreTestingPlansPaginatorName = Literal["list_restore_testing_plans"] +ListRestoreTestingSelectionsPaginatorName = Literal["list_restore_testing_selections"] +RecoveryPointStatusType = Literal["COMPLETED", "DELETING", "EXPIRED", "PARTIAL"] +RestoreDeletionStatusType = Literal["DELETING", "FAILED", "SUCCESSFUL"] +RestoreJobStateType = Literal["ABORTED", "AGGREGATE_ALL", "ANY", "COMPLETED", "CREATED", "FAILED", "PENDING", "RUNNING"] +RestoreJobStatusType = Literal["ABORTED", "COMPLETED", "FAILED", "PENDING", "RUNNING"] +RestoreTestingRecoveryPointSelectionAlgorithmType = Literal["LATEST_WITHIN_WINDOW", "RANDOM_WITHIN_WINDOW"] +RestoreTestingRecoveryPointTypeType = Literal["CONTINUOUS", "SNAPSHOT"] +RestoreValidationStatusType = Literal["FAILED", "SUCCESSFUL", "TIMED_OUT", "VALIDATING"] +StorageClassType = Literal["COLD", "DELETED", "WARM"] +VaultStateType = Literal["AVAILABLE", "CREATING", "FAILED"] +VaultTypeType = Literal["BACKUP_VAULT", "LOGICALLY_AIR_GAPPED_BACKUP_VAULT"] +BackupServiceName = Literal["backup"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_backup_jobs", + "list_backup_plan_templates", + "list_backup_plan_versions", + "list_backup_plans", + "list_backup_selections", + "list_backup_vaults", + "list_copy_jobs", + "list_legal_holds", + "list_protected_resources", + "list_protected_resources_by_backup_vault", + "list_recovery_points_by_backup_vault", + "list_recovery_points_by_legal_hold", + "list_recovery_points_by_resource", + "list_restore_jobs", + "list_restore_jobs_by_protected_resource", + "list_restore_testing_plans", + "list_restore_testing_selections",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/backup_gateway_classes.py b/aws_resource_validator/pydantic_models/backup_gateway_classes.py new file mode 100644 index 00000000..a4c6da22 --- /dev/null +++ b/aws_resource_validator/pydantic_models/backup_gateway_classes.py @@ -0,0 +1,325 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.backup_gateway_constants import * + +class AssociateGatewayToServerInputRequestTypeDef(BaseModel): + GatewayArn: str + ServerArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BandwidthRateLimitIntervalTypeDef(BaseModel): + DaysOfWeek: List[int] + EndHourOfDay: int + EndMinuteOfHour: int + StartHourOfDay: int + StartMinuteOfHour: int + AverageUploadRateLimitInBitsPerSec: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteGatewayInputRequestTypeDef(BaseModel): + GatewayArn: str + +class DeleteHypervisorInputRequestTypeDef(BaseModel): + HypervisorArn: str + +class DisassociateGatewayFromServerInputRequestTypeDef(BaseModel): + GatewayArn: str + +class MaintenanceStartTimeTypeDef(BaseModel): + HourOfDay: int + MinuteOfHour: int + DayOfMonth: Optional[int] = None + DayOfWeek: Optional[int] = None + +class GatewayTypeDef(BaseModel): + GatewayArn: Optional[str] = None + GatewayDisplayName: Optional[str] = None + GatewayType: Optional[Literal["BACKUP_VM"]] = None + HypervisorId: Optional[str] = None + LastSeenTime: Optional[datetime] = None + +class GetBandwidthRateLimitScheduleInputRequestTypeDef(BaseModel): + GatewayArn: str + +class GetGatewayInputRequestTypeDef(BaseModel): + GatewayArn: str + +class GetHypervisorInputRequestTypeDef(BaseModel): + HypervisorArn: str + +class HypervisorDetailsTypeDef(BaseModel): + Host: Optional[str] = None + HypervisorArn: Optional[str] = None + KmsKeyArn: Optional[str] = None + LastSuccessfulMetadataSyncTime: Optional[datetime] = None + LatestMetadataSyncStatus: Optional[SyncMetadataStatusType] = None + LatestMetadataSyncStatusMessage: Optional[str] = None + LogGroupArn: Optional[str] = None + Name: Optional[str] = None + State: Optional[HypervisorStateType] = None + +class GetHypervisorPropertyMappingsInputRequestTypeDef(BaseModel): + HypervisorArn: str + +class VmwareToAwsTagMappingTypeDef(BaseModel): + AwsTagKey: str + AwsTagValue: str + VmwareCategory: str + VmwareTagName: str + +class GetVirtualMachineInputRequestTypeDef(BaseModel): + ResourceArn: str + +class HypervisorTypeDef(BaseModel): + Host: Optional[str] = None + HypervisorArn: Optional[str] = None + KmsKeyArn: Optional[str] = None + Name: Optional[str] = None + State: Optional[HypervisorStateType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListGatewaysInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHypervisorsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class ListVirtualMachinesInputRequestTypeDef(BaseModel): + HypervisorArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class VirtualMachineTypeDef(BaseModel): + HostName: Optional[str] = None + HypervisorId: Optional[str] = None + LastBackupDate: Optional[datetime] = None + Name: Optional[str] = None + Path: Optional[str] = None + ResourceArn: Optional[str] = None + +class PutMaintenanceStartTimeInputRequestTypeDef(BaseModel): + GatewayArn: str + HourOfDay: int + MinuteOfHour: int + DayOfMonth: Optional[int] = None + DayOfWeek: Optional[int] = None + +class StartVirtualMachinesMetadataSyncInputRequestTypeDef(BaseModel): + HypervisorArn: str + +class TestHypervisorConfigurationInputRequestTypeDef(BaseModel): + GatewayArn: str + Host: str + Password: Optional[str] = None + Username: Optional[str] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateGatewayInformationInputRequestTypeDef(BaseModel): + GatewayArn: str + GatewayDisplayName: Optional[str] = None + +class UpdateGatewaySoftwareNowInputRequestTypeDef(BaseModel): + GatewayArn: str + +class UpdateHypervisorInputRequestTypeDef(BaseModel): + HypervisorArn: str + Host: Optional[str] = None + LogGroupArn: Optional[str] = None + Name: Optional[str] = None + Password: Optional[str] = None + Username: Optional[str] = None + +class VmwareTagTypeDef(BaseModel): + VmwareCategory: Optional[str] = None + VmwareTagDescription: Optional[str] = None + VmwareTagName: Optional[str] = None + +class AssociateGatewayToServerOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGatewayOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGatewayOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteHypervisorOutputTypeDef(BaseModel): + HypervisorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateGatewayFromServerOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportHypervisorConfigurationOutputTypeDef(BaseModel): + HypervisorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutBandwidthRateLimitScheduleOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutHypervisorPropertyMappingsOutputTypeDef(BaseModel): + HypervisorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutMaintenanceStartTimeOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartVirtualMachinesMetadataSyncOutputTypeDef(BaseModel): + HypervisorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceOutputTypeDef(BaseModel): + ResourceARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UntagResourceOutputTypeDef(BaseModel): + ResourceARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewayInformationOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewaySoftwareNowOutputTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHypervisorOutputTypeDef(BaseModel): + HypervisorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBandwidthRateLimitScheduleOutputTypeDef(BaseModel): + BandwidthRateLimitIntervals: List[BandwidthRateLimitIntervalTypeDef] + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutBandwidthRateLimitScheduleInputRequestTypeDef(BaseModel): + BandwidthRateLimitIntervals: Sequence[BandwidthRateLimitIntervalTypeDef] + GatewayArn: str + +class CreateGatewayInputRequestTypeDef(BaseModel): + ActivationKey: str + GatewayDisplayName: str + GatewayType: Literal["BACKUP_VM"] + Tags: Optional[Sequence[TagTypeDef]] = None + +class ImportHypervisorConfigurationInputRequestTypeDef(BaseModel): + Host: str + Name: str + KmsKeyArn: Optional[str] = None + Password: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Username: Optional[str] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + ResourceArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class GatewayDetailsTypeDef(BaseModel): + GatewayArn: Optional[str] = None + GatewayDisplayName: Optional[str] = None + GatewayType: Optional[Literal["BACKUP_VM"]] = None + HypervisorId: Optional[str] = None + LastSeenTime: Optional[datetime] = None + MaintenanceStartTime: Optional[MaintenanceStartTimeTypeDef] = None + NextUpdateAvailabilityTime: Optional[datetime] = None + VpcEndpoint: Optional[str] = None + +class ListGatewaysOutputTypeDef(BaseModel): + Gateways: List[GatewayTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetHypervisorOutputTypeDef(BaseModel): + Hypervisor: HypervisorDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetHypervisorPropertyMappingsOutputTypeDef(BaseModel): + HypervisorArn: str + IamRoleArn: str + VmwareToAwsTagMappings: List[VmwareToAwsTagMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutHypervisorPropertyMappingsInputRequestTypeDef(BaseModel): + HypervisorArn: str + IamRoleArn: str + VmwareToAwsTagMappings: Sequence[VmwareToAwsTagMappingTypeDef] + +class ListHypervisorsOutputTypeDef(BaseModel): + Hypervisors: List[HypervisorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGatewaysInputListGatewaysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHypervisorsInputListHypervisorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualMachinesInputListVirtualMachinesPaginateTypeDef(BaseModel): + HypervisorArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualMachinesOutputTypeDef(BaseModel): + NextToken: str + VirtualMachines: List[VirtualMachineTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VirtualMachineDetailsTypeDef(BaseModel): + HostName: Optional[str] = None + HypervisorId: Optional[str] = None + LastBackupDate: Optional[datetime] = None + Name: Optional[str] = None + Path: Optional[str] = None + ResourceArn: Optional[str] = None + VmwareTags: Optional[List[VmwareTagTypeDef]] = None + +class GetGatewayOutputTypeDef(BaseModel): + Gateway: GatewayDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVirtualMachineOutputTypeDef(BaseModel): + VirtualMachine: VirtualMachineDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/backup_gateway_constants.py b/aws_resource_validator/pydantic_models/backup_gateway_constants.py new file mode 100644 index 00000000..d21b3e6c --- /dev/null +++ b/aws_resource_validator/pydantic_models/backup_gateway_constants.py @@ -0,0 +1,416 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +GatewayTypeType = Literal["BACKUP_VM"] +HypervisorStateType = Literal["ERROR", "OFFLINE", "ONLINE", "PENDING"] +ListGatewaysPaginatorName = Literal["list_gateways"] +ListHypervisorsPaginatorName = Literal["list_hypervisors"] +ListVirtualMachinesPaginatorName = Literal["list_virtual_machines"] +SyncMetadataStatusType = Literal["CREATED", "FAILED", "PARTIALLY_FAILED", "RUNNING", "SUCCEEDED"] +BackupGatewayServiceName = Literal["backup-gateway"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_gateways", "list_hypervisors", "list_virtual_machines"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/batch_classes.py b/aws_resource_validator/pydantic_models/batch_classes.py new file mode 100644 index 00000000..110a23fd --- /dev/null +++ b/aws_resource_validator/pydantic_models/batch_classes.py @@ -0,0 +1,1223 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.batch_constants import * + +class ArrayPropertiesDetailTypeDef(BaseModel): + statusSummary: Optional[Dict[str, int]] = None + size: Optional[int] = None + index: Optional[int] = None + +class ArrayPropertiesSummaryTypeDef(BaseModel): + size: Optional[int] = None + index: Optional[int] = None + +class ArrayPropertiesTypeDef(BaseModel): + size: Optional[int] = None + +class NetworkInterfaceTypeDef(BaseModel): + attachmentId: Optional[str] = None + ipv6Address: Optional[str] = None + privateIpv4Address: Optional[str] = None + +class CancelJobRequestRequestTypeDef(BaseModel): + jobId: str + reason: str + +class EksConfigurationTypeDef(BaseModel): + eksClusterArn: str + kubernetesNamespace: str + +class UpdatePolicyTypeDef(BaseModel): + terminateJobsOnUpdate: Optional[bool] = None + jobExecutionTimeoutMinutes: Optional[int] = None + +class ComputeEnvironmentOrderTypeDef(BaseModel): + order: int + computeEnvironment: str + +class Ec2ConfigurationTypeDef(BaseModel): + imageType: str + imageIdOverride: Optional[str] = None + imageKubernetesVersion: Optional[str] = None + +class LaunchTemplateSpecificationTypeDef(BaseModel): + launchTemplateId: Optional[str] = None + launchTemplateName: Optional[str] = None + version: Optional[str] = None + +class EphemeralStorageTypeDef(BaseModel): + sizeInGiB: int + +class FargatePlatformConfigurationTypeDef(BaseModel): + platformVersion: Optional[str] = None + +class KeyValuePairTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class MountPointTypeDef(BaseModel): + containerPath: Optional[str] = None + readOnly: Optional[bool] = None + sourceVolume: Optional[str] = None + +class NetworkConfigurationTypeDef(BaseModel): + assignPublicIp: Optional[AssignPublicIpType] = None + +class RepositoryCredentialsTypeDef(BaseModel): + credentialsParameter: str + +class ResourceRequirementTypeDef(BaseModel): + value: str + type: ResourceTypeType + +class RuntimePlatformTypeDef(BaseModel): + operatingSystemFamily: Optional[str] = None + cpuArchitecture: Optional[str] = None + +class SecretTypeDef(BaseModel): + name: str + valueFrom: str + +class UlimitTypeDef(BaseModel): + hardLimit: int + name: str + softLimit: int + +class ContainerSummaryTypeDef(BaseModel): + exitCode: Optional[int] = None + reason: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class JobStateTimeLimitActionTypeDef(BaseModel): + reason: str + state: Literal["RUNNABLE"] + maxTimeSeconds: int + action: Literal["CANCEL"] + +class DeleteComputeEnvironmentRequestRequestTypeDef(BaseModel): + computeEnvironment: str + +class DeleteJobQueueRequestRequestTypeDef(BaseModel): + jobQueue: str + +class DeleteSchedulingPolicyRequestRequestTypeDef(BaseModel): + arn: str + +class DeregisterJobDefinitionRequestRequestTypeDef(BaseModel): + jobDefinition: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeComputeEnvironmentsRequestRequestTypeDef(BaseModel): + computeEnvironments: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeJobDefinitionsRequestRequestTypeDef(BaseModel): + jobDefinitions: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + jobDefinitionName: Optional[str] = None + status: Optional[str] = None + nextToken: Optional[str] = None + +class DescribeJobQueuesRequestRequestTypeDef(BaseModel): + jobQueues: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeJobsRequestRequestTypeDef(BaseModel): + jobs: Sequence[str] + +class DescribeSchedulingPoliciesRequestRequestTypeDef(BaseModel): + arns: Sequence[str] + +class DeviceExtraOutputTypeDef(BaseModel): + hostPath: str + containerPath: Optional[str] = None + permissions: Optional[List[DeviceCgroupPermissionType]] = None + +class DeviceOutputTypeDef(BaseModel): + hostPath: str + containerPath: Optional[str] = None + permissions: Optional[List[DeviceCgroupPermissionType]] = None + +class DeviceTypeDef(BaseModel): + hostPath: str + containerPath: Optional[str] = None + permissions: Optional[Sequence[DeviceCgroupPermissionType]] = None + +class EFSAuthorizationConfigTypeDef(BaseModel): + accessPointId: Optional[str] = None + iam: Optional[EFSAuthorizationConfigIAMType] = None + +class EksAttemptContainerDetailTypeDef(BaseModel): + name: Optional[str] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + +class EksContainerEnvironmentVariableTypeDef(BaseModel): + name: str + value: Optional[str] = None + +class EksContainerResourceRequirementsOutputTypeDef(BaseModel): + limits: Optional[Dict[str, str]] = None + requests: Optional[Dict[str, str]] = None + +class EksContainerSecurityContextTypeDef(BaseModel): + runAsUser: Optional[int] = None + runAsGroup: Optional[int] = None + privileged: Optional[bool] = None + allowPrivilegeEscalation: Optional[bool] = None + readOnlyRootFilesystem: Optional[bool] = None + runAsNonRoot: Optional[bool] = None + +class EksContainerVolumeMountTypeDef(BaseModel): + name: Optional[str] = None + mountPath: Optional[str] = None + readOnly: Optional[bool] = None + +class EksContainerResourceRequirementsExtraOutputTypeDef(BaseModel): + limits: Optional[Dict[str, str]] = None + requests: Optional[Dict[str, str]] = None + +class EksContainerResourceRequirementsTypeDef(BaseModel): + limits: Optional[Mapping[str, str]] = None + requests: Optional[Mapping[str, str]] = None + +class EksEmptyDirTypeDef(BaseModel): + medium: Optional[str] = None + sizeLimit: Optional[str] = None + +class EksHostPathTypeDef(BaseModel): + path: Optional[str] = None + +class EksMetadataExtraOutputTypeDef(BaseModel): + labels: Optional[Dict[str, str]] = None + +class EksMetadataOutputTypeDef(BaseModel): + labels: Optional[Dict[str, str]] = None + +class EksMetadataTypeDef(BaseModel): + labels: Optional[Mapping[str, str]] = None + +class ImagePullSecretTypeDef(BaseModel): + name: str + +class EksSecretTypeDef(BaseModel): + secretName: str + optional: Optional[bool] = None + +class EvaluateOnExitTypeDef(BaseModel): + action: RetryActionType + onStatusReason: Optional[str] = None + onReason: Optional[str] = None + onExitCode: Optional[str] = None + +class ShareAttributesTypeDef(BaseModel): + shareIdentifier: str + weightFactor: Optional[float] = None + +class FrontOfQueueJobSummaryTypeDef(BaseModel): + jobArn: Optional[str] = None + earliestTimeAtPosition: Optional[int] = None + +class GetJobQueueSnapshotRequestRequestTypeDef(BaseModel): + jobQueue: str + +class HostTypeDef(BaseModel): + sourcePath: Optional[str] = None + +class JobTimeoutTypeDef(BaseModel): + attemptDurationSeconds: Optional[int] = None + +class JobDependencyTypeDef(BaseModel): + jobId: Optional[str] = None + type: Optional[ArrayJobDependencyType] = None + +class NodeDetailsTypeDef(BaseModel): + nodeIndex: Optional[int] = None + isMainNode: Optional[bool] = None + +class NodePropertiesSummaryTypeDef(BaseModel): + isMainNode: Optional[bool] = None + numNodes: Optional[int] = None + nodeIndex: Optional[int] = None + +class KeyValuesPairTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class TmpfsExtraOutputTypeDef(BaseModel): + containerPath: str + size: int + mountOptions: Optional[List[str]] = None + +class TmpfsOutputTypeDef(BaseModel): + containerPath: str + size: int + mountOptions: Optional[List[str]] = None + +class TmpfsTypeDef(BaseModel): + containerPath: str + size: int + mountOptions: Optional[Sequence[str]] = None + +class ListSchedulingPoliciesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SchedulingPolicyListingDetailTypeDef(BaseModel): + arn: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TaskContainerDependencyTypeDef(BaseModel): + containerName: Optional[str] = None + condition: Optional[str] = None + +class TerminateJobRequestRequestTypeDef(BaseModel): + jobId: str + reason: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AttemptContainerDetailTypeDef(BaseModel): + containerInstanceArn: Optional[str] = None + taskArn: Optional[str] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + logStreamName: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + +class AttemptTaskContainerDetailsTypeDef(BaseModel): + exitCode: Optional[int] = None + name: Optional[str] = None + reason: Optional[str] = None + logStreamName: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + +class ComputeResourceExtraOutputTypeDef(BaseModel): + type: CRTypeType + maxvCpus: int + subnets: List[str] + allocationStrategy: Optional[CRAllocationStrategyType] = None + minvCpus: Optional[int] = None + desiredvCpus: Optional[int] = None + instanceTypes: Optional[List[str]] = None + imageId: Optional[str] = None + securityGroupIds: Optional[List[str]] = None + ec2KeyPair: Optional[str] = None + instanceRole: Optional[str] = None + tags: Optional[Dict[str, str]] = None + placementGroup: Optional[str] = None + bidPercentage: Optional[int] = None + spotIamFleetRole: Optional[str] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + ec2Configuration: Optional[List[Ec2ConfigurationTypeDef]] = None + +class ComputeResourceOutputTypeDef(BaseModel): + type: CRTypeType + maxvCpus: int + subnets: List[str] + allocationStrategy: Optional[CRAllocationStrategyType] = None + minvCpus: Optional[int] = None + desiredvCpus: Optional[int] = None + instanceTypes: Optional[List[str]] = None + imageId: Optional[str] = None + securityGroupIds: Optional[List[str]] = None + ec2KeyPair: Optional[str] = None + instanceRole: Optional[str] = None + tags: Optional[Dict[str, str]] = None + placementGroup: Optional[str] = None + bidPercentage: Optional[int] = None + spotIamFleetRole: Optional[str] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + ec2Configuration: Optional[List[Ec2ConfigurationTypeDef]] = None + +class ComputeResourceTypeDef(BaseModel): + type: CRTypeType + maxvCpus: int + subnets: Sequence[str] + allocationStrategy: Optional[CRAllocationStrategyType] = None + minvCpus: Optional[int] = None + desiredvCpus: Optional[int] = None + instanceTypes: Optional[Sequence[str]] = None + imageId: Optional[str] = None + securityGroupIds: Optional[Sequence[str]] = None + ec2KeyPair: Optional[str] = None + instanceRole: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + placementGroup: Optional[str] = None + bidPercentage: Optional[int] = None + spotIamFleetRole: Optional[str] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + ec2Configuration: Optional[Sequence[Ec2ConfigurationTypeDef]] = None + +class ComputeResourceUpdateTypeDef(BaseModel): + minvCpus: Optional[int] = None + maxvCpus: Optional[int] = None + desiredvCpus: Optional[int] = None + subnets: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + allocationStrategy: Optional[CRUpdateAllocationStrategyType] = None + instanceTypes: Optional[Sequence[str]] = None + ec2KeyPair: Optional[str] = None + instanceRole: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + placementGroup: Optional[str] = None + bidPercentage: Optional[int] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + ec2Configuration: Optional[Sequence[Ec2ConfigurationTypeDef]] = None + updateToLatestImageVersion: Optional[bool] = None + type: Optional[CRTypeType] = None + imageId: Optional[str] = None + +class ContainerOverridesTypeDef(BaseModel): + vcpus: Optional[int] = None + memory: Optional[int] = None + command: Optional[Sequence[str]] = None + instanceType: Optional[str] = None + environment: Optional[Sequence[KeyValuePairTypeDef]] = None + resourceRequirements: Optional[Sequence[ResourceRequirementTypeDef]] = None + +class TaskContainerOverridesTypeDef(BaseModel): + command: Optional[Sequence[str]] = None + environment: Optional[Sequence[KeyValuePairTypeDef]] = None + name: Optional[str] = None + resourceRequirements: Optional[Sequence[ResourceRequirementTypeDef]] = None + +class LogConfigurationExtraOutputTypeDef(BaseModel): + logDriver: LogDriverType + options: Optional[Dict[str, str]] = None + secretOptions: Optional[List[SecretTypeDef]] = None + +class LogConfigurationOutputTypeDef(BaseModel): + logDriver: LogDriverType + options: Optional[Dict[str, str]] = None + secretOptions: Optional[List[SecretTypeDef]] = None + +class LogConfigurationTypeDef(BaseModel): + logDriver: LogDriverType + options: Optional[Mapping[str, str]] = None + secretOptions: Optional[Sequence[SecretTypeDef]] = None + +class CreateComputeEnvironmentResponseTypeDef(BaseModel): + computeEnvironmentName: str + computeEnvironmentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobQueueResponseTypeDef(BaseModel): + jobQueueName: str + jobQueueArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSchedulingPolicyResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterJobDefinitionResponseTypeDef(BaseModel): + jobDefinitionName: str + jobDefinitionArn: str + revision: int + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitJobResponseTypeDef(BaseModel): + jobArn: str + jobName: str + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateComputeEnvironmentResponseTypeDef(BaseModel): + computeEnvironmentName: str + computeEnvironmentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobQueueResponseTypeDef(BaseModel): + jobQueueName: str + jobQueueArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobQueueRequestRequestTypeDef(BaseModel): + jobQueueName: str + priority: int + computeEnvironmentOrder: Sequence[ComputeEnvironmentOrderTypeDef] + state: Optional[JQStateType] = None + schedulingPolicyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + jobStateTimeLimitActions: Optional[Sequence[JobStateTimeLimitActionTypeDef]] = None + +class JobQueueDetailTypeDef(BaseModel): + jobQueueName: str + jobQueueArn: str + state: JQStateType + priority: int + computeEnvironmentOrder: List[ComputeEnvironmentOrderTypeDef] + schedulingPolicyArn: Optional[str] = None + status: Optional[JQStatusType] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + jobStateTimeLimitActions: Optional[List[JobStateTimeLimitActionTypeDef]] = None + +class UpdateJobQueueRequestRequestTypeDef(BaseModel): + jobQueue: str + state: Optional[JQStateType] = None + schedulingPolicyArn: Optional[str] = None + priority: Optional[int] = None + computeEnvironmentOrder: Optional[Sequence[ComputeEnvironmentOrderTypeDef]] = None + jobStateTimeLimitActions: Optional[Sequence[JobStateTimeLimitActionTypeDef]] = None + +class DescribeComputeEnvironmentsRequestDescribeComputeEnvironmentsPaginateTypeDef(BaseModel): + computeEnvironments: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeJobDefinitionsRequestDescribeJobDefinitionsPaginateTypeDef(BaseModel): + jobDefinitions: Optional[Sequence[str]] = None + jobDefinitionName: Optional[str] = None + status: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeJobQueuesRequestDescribeJobQueuesPaginateTypeDef(BaseModel): + jobQueues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchedulingPoliciesRequestListSchedulingPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class EFSVolumeConfigurationTypeDef(BaseModel): + fileSystemId: str + rootDirectory: Optional[str] = None + transitEncryption: Optional[EFSTransitEncryptionType] = None + transitEncryptionPort: Optional[int] = None + authorizationConfig: Optional[EFSAuthorizationConfigTypeDef] = None + +class EksAttemptDetailTypeDef(BaseModel): + containers: Optional[List[EksAttemptContainerDetailTypeDef]] = None + initContainers: Optional[List[EksAttemptContainerDetailTypeDef]] = None + eksClusterArn: Optional[str] = None + podName: Optional[str] = None + nodeName: Optional[str] = None + startedAt: Optional[int] = None + stoppedAt: Optional[int] = None + statusReason: Optional[str] = None + +class EksContainerDetailTypeDef(BaseModel): + name: Optional[str] = None + image: Optional[str] = None + imagePullPolicy: Optional[str] = None + command: Optional[List[str]] = None + args: Optional[List[str]] = None + env: Optional[List[EksContainerEnvironmentVariableTypeDef]] = None + resources: Optional[EksContainerResourceRequirementsOutputTypeDef] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + volumeMounts: Optional[List[EksContainerVolumeMountTypeDef]] = None + securityContext: Optional[EksContainerSecurityContextTypeDef] = None + +class EksContainerOutputTypeDef(BaseModel): + image: str + name: Optional[str] = None + imagePullPolicy: Optional[str] = None + command: Optional[List[str]] = None + args: Optional[List[str]] = None + env: Optional[List[EksContainerEnvironmentVariableTypeDef]] = None + resources: Optional[EksContainerResourceRequirementsOutputTypeDef] = None + volumeMounts: Optional[List[EksContainerVolumeMountTypeDef]] = None + securityContext: Optional[EksContainerSecurityContextTypeDef] = None + +class EksContainerExtraOutputTypeDef(BaseModel): + image: str + name: Optional[str] = None + imagePullPolicy: Optional[str] = None + command: Optional[List[str]] = None + args: Optional[List[str]] = None + env: Optional[List[EksContainerEnvironmentVariableTypeDef]] = None + resources: Optional[EksContainerResourceRequirementsExtraOutputTypeDef] = None + volumeMounts: Optional[List[EksContainerVolumeMountTypeDef]] = None + securityContext: Optional[EksContainerSecurityContextTypeDef] = None + +class EksContainerOverrideTypeDef(BaseModel): + name: Optional[str] = None + image: Optional[str] = None + command: Optional[Sequence[str]] = None + args: Optional[Sequence[str]] = None + env: Optional[Sequence[EksContainerEnvironmentVariableTypeDef]] = None + resources: Optional[EksContainerResourceRequirementsTypeDef] = None + +class EksContainerTypeDef(BaseModel): + image: str + name: Optional[str] = None + imagePullPolicy: Optional[str] = None + command: Optional[Sequence[str]] = None + args: Optional[Sequence[str]] = None + env: Optional[Sequence[EksContainerEnvironmentVariableTypeDef]] = None + resources: Optional[EksContainerResourceRequirementsTypeDef] = None + volumeMounts: Optional[Sequence[EksContainerVolumeMountTypeDef]] = None + securityContext: Optional[EksContainerSecurityContextTypeDef] = None + +class EksVolumeTypeDef(BaseModel): + name: str + hostPath: Optional[EksHostPathTypeDef] = None + emptyDir: Optional[EksEmptyDirTypeDef] = None + secret: Optional[EksSecretTypeDef] = None + +class RetryStrategyExtraOutputTypeDef(BaseModel): + attempts: Optional[int] = None + evaluateOnExit: Optional[List[EvaluateOnExitTypeDef]] = None + +class RetryStrategyOutputTypeDef(BaseModel): + attempts: Optional[int] = None + evaluateOnExit: Optional[List[EvaluateOnExitTypeDef]] = None + +class RetryStrategyTypeDef(BaseModel): + attempts: Optional[int] = None + evaluateOnExit: Optional[Sequence[EvaluateOnExitTypeDef]] = None + +class FairsharePolicyOutputTypeDef(BaseModel): + shareDecaySeconds: Optional[int] = None + computeReservation: Optional[int] = None + shareDistribution: Optional[List[ShareAttributesTypeDef]] = None + +class FairsharePolicyTypeDef(BaseModel): + shareDecaySeconds: Optional[int] = None + computeReservation: Optional[int] = None + shareDistribution: Optional[Sequence[ShareAttributesTypeDef]] = None + +class FrontOfQueueDetailTypeDef(BaseModel): + jobs: Optional[List[FrontOfQueueJobSummaryTypeDef]] = None + lastUpdatedAt: Optional[int] = None + +class JobSummaryTypeDef(BaseModel): + jobId: str + jobName: str + jobArn: Optional[str] = None + createdAt: Optional[int] = None + status: Optional[JobStatusType] = None + statusReason: Optional[str] = None + startedAt: Optional[int] = None + stoppedAt: Optional[int] = None + container: Optional[ContainerSummaryTypeDef] = None + arrayProperties: Optional[ArrayPropertiesSummaryTypeDef] = None + nodeProperties: Optional[NodePropertiesSummaryTypeDef] = None + jobDefinition: Optional[str] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + jobQueue: Optional[str] = None + arrayJobId: Optional[str] = None + multiNodeJobId: Optional[str] = None + jobStatus: Optional[JobStatusType] = None + filters: Optional[Sequence[KeyValuesPairTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + jobQueue: Optional[str] = None + arrayJobId: Optional[str] = None + multiNodeJobId: Optional[str] = None + jobStatus: Optional[JobStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filters: Optional[Sequence[KeyValuesPairTypeDef]] = None + +class LinuxParametersExtraOutputTypeDef(BaseModel): + devices: Optional[List[DeviceExtraOutputTypeDef]] = None + initProcessEnabled: Optional[bool] = None + sharedMemorySize: Optional[int] = None + tmpfs: Optional[List[TmpfsExtraOutputTypeDef]] = None + maxSwap: Optional[int] = None + swappiness: Optional[int] = None + +class LinuxParametersOutputTypeDef(BaseModel): + devices: Optional[List[DeviceOutputTypeDef]] = None + initProcessEnabled: Optional[bool] = None + sharedMemorySize: Optional[int] = None + tmpfs: Optional[List[TmpfsOutputTypeDef]] = None + maxSwap: Optional[int] = None + swappiness: Optional[int] = None + +class LinuxParametersTypeDef(BaseModel): + devices: Optional[Sequence[DeviceTypeDef]] = None + initProcessEnabled: Optional[bool] = None + sharedMemorySize: Optional[int] = None + tmpfs: Optional[Sequence[TmpfsTypeDef]] = None + maxSwap: Optional[int] = None + swappiness: Optional[int] = None + +class ListSchedulingPoliciesResponseTypeDef(BaseModel): + schedulingPolicies: List[SchedulingPolicyListingDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttemptEcsTaskDetailsTypeDef(BaseModel): + containerInstanceArn: Optional[str] = None + taskArn: Optional[str] = None + containers: Optional[List[AttemptTaskContainerDetailsTypeDef]] = None + +class ComputeEnvironmentDetailTypeDef(BaseModel): + computeEnvironmentName: str + computeEnvironmentArn: str + unmanagedvCpus: Optional[int] = None + ecsClusterArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + type: Optional[CETypeType] = None + state: Optional[CEStateType] = None + status: Optional[CEStatusType] = None + statusReason: Optional[str] = None + computeResources: Optional[ComputeResourceOutputTypeDef] = None + serviceRole: Optional[str] = None + updatePolicy: Optional[UpdatePolicyTypeDef] = None + eksConfiguration: Optional[EksConfigurationTypeDef] = None + containerOrchestrationType: Optional[OrchestrationTypeType] = None + uuid: Optional[str] = None + +class CreateComputeEnvironmentRequestRequestTypeDef(BaseModel): + computeEnvironmentName: str + type: CETypeType + state: Optional[CEStateType] = None + unmanagedvCpus: Optional[int] = None + computeResources: Optional[ComputeResourceTypeDef] = None + serviceRole: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + eksConfiguration: Optional[EksConfigurationTypeDef] = None + +class UpdateComputeEnvironmentRequestRequestTypeDef(BaseModel): + computeEnvironment: str + state: Optional[CEStateType] = None + unmanagedvCpus: Optional[int] = None + computeResources: Optional[ComputeResourceUpdateTypeDef] = None + serviceRole: Optional[str] = None + updatePolicy: Optional[UpdatePolicyTypeDef] = None + +class TaskPropertiesOverrideTypeDef(BaseModel): + containers: Optional[Sequence[TaskContainerOverridesTypeDef]] = None + +class DescribeJobQueuesResponseTypeDef(BaseModel): + jobQueues: List[JobQueueDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class VolumeTypeDef(BaseModel): + host: Optional[HostTypeDef] = None + name: Optional[str] = None + efsVolumeConfiguration: Optional[EFSVolumeConfigurationTypeDef] = None + +class EksPodPropertiesOverrideTypeDef(BaseModel): + containers: Optional[Sequence[EksContainerOverrideTypeDef]] = None + initContainers: Optional[Sequence[EksContainerOverrideTypeDef]] = None + metadata: Optional[EksMetadataTypeDef] = None + +class EksPodPropertiesDetailTypeDef(BaseModel): + serviceAccountName: Optional[str] = None + hostNetwork: Optional[bool] = None + dnsPolicy: Optional[str] = None + imagePullSecrets: Optional[List[ImagePullSecretTypeDef]] = None + containers: Optional[List[EksContainerDetailTypeDef]] = None + initContainers: Optional[List[EksContainerDetailTypeDef]] = None + volumes: Optional[List[EksVolumeTypeDef]] = None + podName: Optional[str] = None + nodeName: Optional[str] = None + metadata: Optional[EksMetadataOutputTypeDef] = None + shareProcessNamespace: Optional[bool] = None + +class EksPodPropertiesExtraOutputTypeDef(BaseModel): + serviceAccountName: Optional[str] = None + hostNetwork: Optional[bool] = None + dnsPolicy: Optional[str] = None + imagePullSecrets: Optional[List[ImagePullSecretTypeDef]] = None + containers: Optional[List[EksContainerExtraOutputTypeDef]] = None + initContainers: Optional[List[EksContainerExtraOutputTypeDef]] = None + volumes: Optional[List[EksVolumeTypeDef]] = None + metadata: Optional[EksMetadataExtraOutputTypeDef] = None + shareProcessNamespace: Optional[bool] = None + +class EksPodPropertiesOutputTypeDef(BaseModel): + serviceAccountName: Optional[str] = None + hostNetwork: Optional[bool] = None + dnsPolicy: Optional[str] = None + imagePullSecrets: Optional[List[ImagePullSecretTypeDef]] = None + containers: Optional[List[EksContainerOutputTypeDef]] = None + initContainers: Optional[List[EksContainerOutputTypeDef]] = None + volumes: Optional[List[EksVolumeTypeDef]] = None + metadata: Optional[EksMetadataOutputTypeDef] = None + shareProcessNamespace: Optional[bool] = None + +class EksPodPropertiesTypeDef(BaseModel): + serviceAccountName: Optional[str] = None + hostNetwork: Optional[bool] = None + dnsPolicy: Optional[str] = None + imagePullSecrets: Optional[Sequence[ImagePullSecretTypeDef]] = None + containers: Optional[Sequence[EksContainerTypeDef]] = None + initContainers: Optional[Sequence[EksContainerTypeDef]] = None + volumes: Optional[Sequence[EksVolumeTypeDef]] = None + metadata: Optional[EksMetadataTypeDef] = None + shareProcessNamespace: Optional[bool] = None + +class SchedulingPolicyDetailTypeDef(BaseModel): + name: str + arn: str + fairsharePolicy: Optional[FairsharePolicyOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateSchedulingPolicyRequestRequestTypeDef(BaseModel): + name: str + fairsharePolicy: Optional[FairsharePolicyTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateSchedulingPolicyRequestRequestTypeDef(BaseModel): + arn: str + fairsharePolicy: Optional[FairsharePolicyTypeDef] = None + +class GetJobQueueSnapshotResponseTypeDef(BaseModel): + frontOfQueue: FrontOfQueueDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsResponseTypeDef(BaseModel): + jobSummaryList: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TaskContainerPropertiesExtraOutputTypeDef(BaseModel): + image: str + command: Optional[List[str]] = None + dependsOn: Optional[List[TaskContainerDependencyTypeDef]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + essential: Optional[bool] = None + linuxParameters: Optional[LinuxParametersExtraOutputTypeDef] = None + logConfiguration: Optional[LogConfigurationExtraOutputTypeDef] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + name: Optional[str] = None + privileged: Optional[bool] = None + readonlyRootFilesystem: Optional[bool] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + secrets: Optional[List[SecretTypeDef]] = None + ulimits: Optional[List[UlimitTypeDef]] = None + user: Optional[str] = None + +class TaskContainerDetailsTypeDef(BaseModel): + command: Optional[List[str]] = None + dependsOn: Optional[List[TaskContainerDependencyTypeDef]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + essential: Optional[bool] = None + image: Optional[str] = None + linuxParameters: Optional[LinuxParametersOutputTypeDef] = None + logConfiguration: Optional[LogConfigurationOutputTypeDef] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + name: Optional[str] = None + privileged: Optional[bool] = None + readonlyRootFilesystem: Optional[bool] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + secrets: Optional[List[SecretTypeDef]] = None + ulimits: Optional[List[UlimitTypeDef]] = None + user: Optional[str] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + logStreamName: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + +class TaskContainerPropertiesOutputTypeDef(BaseModel): + image: str + command: Optional[List[str]] = None + dependsOn: Optional[List[TaskContainerDependencyTypeDef]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + essential: Optional[bool] = None + linuxParameters: Optional[LinuxParametersOutputTypeDef] = None + logConfiguration: Optional[LogConfigurationOutputTypeDef] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + name: Optional[str] = None + privileged: Optional[bool] = None + readonlyRootFilesystem: Optional[bool] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + secrets: Optional[List[SecretTypeDef]] = None + ulimits: Optional[List[UlimitTypeDef]] = None + user: Optional[str] = None + +class TaskContainerPropertiesTypeDef(BaseModel): + image: str + command: Optional[Sequence[str]] = None + dependsOn: Optional[Sequence[TaskContainerDependencyTypeDef]] = None + environment: Optional[Sequence[KeyValuePairTypeDef]] = None + essential: Optional[bool] = None + linuxParameters: Optional[LinuxParametersTypeDef] = None + logConfiguration: Optional[LogConfigurationTypeDef] = None + mountPoints: Optional[Sequence[MountPointTypeDef]] = None + name: Optional[str] = None + privileged: Optional[bool] = None + readonlyRootFilesystem: Optional[bool] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + resourceRequirements: Optional[Sequence[ResourceRequirementTypeDef]] = None + secrets: Optional[Sequence[SecretTypeDef]] = None + ulimits: Optional[Sequence[UlimitTypeDef]] = None + user: Optional[str] = None + +class AttemptDetailTypeDef(BaseModel): + container: Optional[AttemptContainerDetailTypeDef] = None + startedAt: Optional[int] = None + stoppedAt: Optional[int] = None + statusReason: Optional[str] = None + taskProperties: Optional[List[AttemptEcsTaskDetailsTypeDef]] = None + +class DescribeComputeEnvironmentsResponseTypeDef(BaseModel): + computeEnvironments: List[ComputeEnvironmentDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EcsPropertiesOverrideTypeDef(BaseModel): + taskProperties: Optional[Sequence[TaskPropertiesOverrideTypeDef]] = None + +class ContainerDetailTypeDef(BaseModel): + image: Optional[str] = None + vcpus: Optional[int] = None + memory: Optional[int] = None + command: Optional[List[str]] = None + jobRoleArn: Optional[str] = None + executionRoleArn: Optional[str] = None + volumes: Optional[List[VolumeTypeDef]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + readonlyRootFilesystem: Optional[bool] = None + ulimits: Optional[List[UlimitTypeDef]] = None + privileged: Optional[bool] = None + user: Optional[str] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + containerInstanceArn: Optional[str] = None + taskArn: Optional[str] = None + logStreamName: Optional[str] = None + instanceType: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + linuxParameters: Optional[LinuxParametersOutputTypeDef] = None + logConfiguration: Optional[LogConfigurationOutputTypeDef] = None + secrets: Optional[List[SecretTypeDef]] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + fargatePlatformConfiguration: Optional[FargatePlatformConfigurationTypeDef] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + +class ContainerPropertiesExtraOutputTypeDef(BaseModel): + image: Optional[str] = None + vcpus: Optional[int] = None + memory: Optional[int] = None + command: Optional[List[str]] = None + jobRoleArn: Optional[str] = None + executionRoleArn: Optional[str] = None + volumes: Optional[List[VolumeTypeDef]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + readonlyRootFilesystem: Optional[bool] = None + privileged: Optional[bool] = None + ulimits: Optional[List[UlimitTypeDef]] = None + user: Optional[str] = None + instanceType: Optional[str] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + linuxParameters: Optional[LinuxParametersExtraOutputTypeDef] = None + logConfiguration: Optional[LogConfigurationExtraOutputTypeDef] = None + secrets: Optional[List[SecretTypeDef]] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + fargatePlatformConfiguration: Optional[FargatePlatformConfigurationTypeDef] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + +class ContainerPropertiesOutputTypeDef(BaseModel): + image: Optional[str] = None + vcpus: Optional[int] = None + memory: Optional[int] = None + command: Optional[List[str]] = None + jobRoleArn: Optional[str] = None + executionRoleArn: Optional[str] = None + volumes: Optional[List[VolumeTypeDef]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + readonlyRootFilesystem: Optional[bool] = None + privileged: Optional[bool] = None + ulimits: Optional[List[UlimitTypeDef]] = None + user: Optional[str] = None + instanceType: Optional[str] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + linuxParameters: Optional[LinuxParametersOutputTypeDef] = None + logConfiguration: Optional[LogConfigurationOutputTypeDef] = None + secrets: Optional[List[SecretTypeDef]] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + fargatePlatformConfiguration: Optional[FargatePlatformConfigurationTypeDef] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + +class ContainerPropertiesTypeDef(BaseModel): + image: Optional[str] = None + vcpus: Optional[int] = None + memory: Optional[int] = None + command: Optional[Sequence[str]] = None + jobRoleArn: Optional[str] = None + executionRoleArn: Optional[str] = None + volumes: Optional[Sequence[VolumeTypeDef]] = None + environment: Optional[Sequence[KeyValuePairTypeDef]] = None + mountPoints: Optional[Sequence[MountPointTypeDef]] = None + readonlyRootFilesystem: Optional[bool] = None + privileged: Optional[bool] = None + ulimits: Optional[Sequence[UlimitTypeDef]] = None + user: Optional[str] = None + instanceType: Optional[str] = None + resourceRequirements: Optional[Sequence[ResourceRequirementTypeDef]] = None + linuxParameters: Optional[LinuxParametersTypeDef] = None + logConfiguration: Optional[LogConfigurationTypeDef] = None + secrets: Optional[Sequence[SecretTypeDef]] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + fargatePlatformConfiguration: Optional[FargatePlatformConfigurationTypeDef] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + +class EksPropertiesOverrideTypeDef(BaseModel): + podProperties: Optional[EksPodPropertiesOverrideTypeDef] = None + +class EksPropertiesDetailTypeDef(BaseModel): + podProperties: Optional[EksPodPropertiesDetailTypeDef] = None + +class EksPropertiesExtraOutputTypeDef(BaseModel): + podProperties: Optional[EksPodPropertiesExtraOutputTypeDef] = None + +class EksPropertiesOutputTypeDef(BaseModel): + podProperties: Optional[EksPodPropertiesOutputTypeDef] = None + +class EksPropertiesTypeDef(BaseModel): + podProperties: Optional[EksPodPropertiesTypeDef] = None + +class DescribeSchedulingPoliciesResponseTypeDef(BaseModel): + schedulingPolicies: List[SchedulingPolicyDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EcsTaskPropertiesExtraOutputTypeDef(BaseModel): + containers: List[TaskContainerPropertiesExtraOutputTypeDef] + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + executionRoleArn: Optional[str] = None + platformVersion: Optional[str] = None + ipcMode: Optional[str] = None + taskRoleArn: Optional[str] = None + pidMode: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + volumes: Optional[List[VolumeTypeDef]] = None + +class EcsTaskDetailsTypeDef(BaseModel): + containers: Optional[List[TaskContainerDetailsTypeDef]] = None + containerInstanceArn: Optional[str] = None + taskArn: Optional[str] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + executionRoleArn: Optional[str] = None + platformVersion: Optional[str] = None + ipcMode: Optional[str] = None + taskRoleArn: Optional[str] = None + pidMode: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + volumes: Optional[List[VolumeTypeDef]] = None + +class EcsTaskPropertiesOutputTypeDef(BaseModel): + containers: List[TaskContainerPropertiesOutputTypeDef] + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + executionRoleArn: Optional[str] = None + platformVersion: Optional[str] = None + ipcMode: Optional[str] = None + taskRoleArn: Optional[str] = None + pidMode: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + volumes: Optional[List[VolumeTypeDef]] = None + +class EcsTaskPropertiesTypeDef(BaseModel): + containers: Sequence[TaskContainerPropertiesTypeDef] + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + executionRoleArn: Optional[str] = None + platformVersion: Optional[str] = None + ipcMode: Optional[str] = None + taskRoleArn: Optional[str] = None + pidMode: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + volumes: Optional[Sequence[VolumeTypeDef]] = None + +class NodePropertyOverrideTypeDef(BaseModel): + targetNodes: str + containerOverrides: Optional[ContainerOverridesTypeDef] = None + ecsPropertiesOverride: Optional[EcsPropertiesOverrideTypeDef] = None + instanceTypes: Optional[Sequence[str]] = None + eksPropertiesOverride: Optional[EksPropertiesOverrideTypeDef] = None + +class EcsPropertiesExtraOutputTypeDef(BaseModel): + taskProperties: List[EcsTaskPropertiesExtraOutputTypeDef] + +class EcsPropertiesDetailTypeDef(BaseModel): + taskProperties: Optional[List[EcsTaskDetailsTypeDef]] = None + +class EcsPropertiesOutputTypeDef(BaseModel): + taskProperties: List[EcsTaskPropertiesOutputTypeDef] + +class EcsPropertiesTypeDef(BaseModel): + taskProperties: Sequence[EcsTaskPropertiesTypeDef] + +class NodeOverridesTypeDef(BaseModel): + numNodes: Optional[int] = None + nodePropertyOverrides: Optional[Sequence[NodePropertyOverrideTypeDef]] = None + +class NodeRangePropertyExtraOutputTypeDef(BaseModel): + targetNodes: str + container: Optional[ContainerPropertiesExtraOutputTypeDef] = None + instanceTypes: Optional[List[str]] = None + ecsProperties: Optional[EcsPropertiesExtraOutputTypeDef] = None + eksProperties: Optional[EksPropertiesExtraOutputTypeDef] = None + +class NodeRangePropertyOutputTypeDef(BaseModel): + targetNodes: str + container: Optional[ContainerPropertiesOutputTypeDef] = None + instanceTypes: Optional[List[str]] = None + ecsProperties: Optional[EcsPropertiesOutputTypeDef] = None + eksProperties: Optional[EksPropertiesOutputTypeDef] = None + +class NodeRangePropertyTypeDef(BaseModel): + targetNodes: str + container: Optional[ContainerPropertiesTypeDef] = None + instanceTypes: Optional[Sequence[str]] = None + ecsProperties: Optional[EcsPropertiesTypeDef] = None + eksProperties: Optional[EksPropertiesTypeDef] = None + +class SubmitJobRequestRequestTypeDef(BaseModel): + jobName: str + jobQueue: str + jobDefinition: str + shareIdentifier: Optional[str] = None + schedulingPriorityOverride: Optional[int] = None + arrayProperties: Optional[ArrayPropertiesTypeDef] = None + dependsOn: Optional[Sequence[JobDependencyTypeDef]] = None + parameters: Optional[Mapping[str, str]] = None + containerOverrides: Optional[ContainerOverridesTypeDef] = None + nodeOverrides: Optional[NodeOverridesTypeDef] = None + retryStrategy: Optional[RetryStrategyTypeDef] = None + propagateTags: Optional[bool] = None + timeout: Optional[JobTimeoutTypeDef] = None + tags: Optional[Mapping[str, str]] = None + eksPropertiesOverride: Optional[EksPropertiesOverrideTypeDef] = None + ecsPropertiesOverride: Optional[EcsPropertiesOverrideTypeDef] = None + +class NodePropertiesExtraOutputTypeDef(BaseModel): + numNodes: int + mainNode: int + nodeRangeProperties: List[NodeRangePropertyExtraOutputTypeDef] + +class NodePropertiesOutputTypeDef(BaseModel): + numNodes: int + mainNode: int + nodeRangeProperties: List[NodeRangePropertyOutputTypeDef] + +class NodePropertiesTypeDef(BaseModel): + numNodes: int + mainNode: int + nodeRangeProperties: Sequence[NodeRangePropertyTypeDef] + +class JobDefinitionTypeDef(BaseModel): + jobDefinitionName: str + jobDefinitionArn: str + revision: int + type: str + status: Optional[str] = None + schedulingPriority: Optional[int] = None + parameters: Optional[Dict[str, str]] = None + retryStrategy: Optional[RetryStrategyOutputTypeDef] = None + containerProperties: Optional[ContainerPropertiesOutputTypeDef] = None + timeout: Optional[JobTimeoutTypeDef] = None + nodeProperties: Optional[NodePropertiesOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + propagateTags: Optional[bool] = None + platformCapabilities: Optional[List[PlatformCapabilityType]] = None + ecsProperties: Optional[EcsPropertiesOutputTypeDef] = None + eksProperties: Optional[EksPropertiesOutputTypeDef] = None + containerOrchestrationType: Optional[OrchestrationTypeType] = None + +class JobDetailTypeDef(BaseModel): + jobName: str + jobId: str + jobQueue: str + status: JobStatusType + startedAt: int + jobDefinition: str + jobArn: Optional[str] = None + shareIdentifier: Optional[str] = None + schedulingPriority: Optional[int] = None + attempts: Optional[List[AttemptDetailTypeDef]] = None + statusReason: Optional[str] = None + createdAt: Optional[int] = None + retryStrategy: Optional[RetryStrategyOutputTypeDef] = None + stoppedAt: Optional[int] = None + dependsOn: Optional[List[JobDependencyTypeDef]] = None + parameters: Optional[Dict[str, str]] = None + container: Optional[ContainerDetailTypeDef] = None + nodeDetails: Optional[NodeDetailsTypeDef] = None + nodeProperties: Optional[NodePropertiesOutputTypeDef] = None + arrayProperties: Optional[ArrayPropertiesDetailTypeDef] = None + timeout: Optional[JobTimeoutTypeDef] = None + tags: Optional[Dict[str, str]] = None + propagateTags: Optional[bool] = None + platformCapabilities: Optional[List[PlatformCapabilityType]] = None + eksProperties: Optional[EksPropertiesDetailTypeDef] = None + eksAttempts: Optional[List[EksAttemptDetailTypeDef]] = None + ecsProperties: Optional[EcsPropertiesDetailTypeDef] = None + isCancelled: Optional[bool] = None + isTerminated: Optional[bool] = None + +class RegisterJobDefinitionRequestRequestTypeDef(BaseModel): + jobDefinitionName: str + type: JobDefinitionTypeType + parameters: Optional[Mapping[str, str]] = None + schedulingPriority: Optional[int] = None + containerProperties: Optional[ContainerPropertiesTypeDef] = None + nodeProperties: Optional[NodePropertiesTypeDef] = None + retryStrategy: Optional[RetryStrategyTypeDef] = None + propagateTags: Optional[bool] = None + timeout: Optional[JobTimeoutTypeDef] = None + tags: Optional[Mapping[str, str]] = None + platformCapabilities: Optional[Sequence[PlatformCapabilityType]] = None + eksProperties: Optional[EksPropertiesTypeDef] = None + ecsProperties: Optional[EcsPropertiesTypeDef] = None + +class DescribeJobDefinitionsResponseTypeDef(BaseModel): + jobDefinitions: List[JobDefinitionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobsResponseTypeDef(BaseModel): + jobs: List[JobDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/batch_constants.py b/aws_resource_validator/pydantic_models/batch_constants.py new file mode 100644 index 00000000..271ede8a --- /dev/null +++ b/aws_resource_validator/pydantic_models/batch_constants.py @@ -0,0 +1,468 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ArrayJobDependencyType = Literal["N_TO_N", "SEQUENTIAL"] +AssignPublicIpType = Literal["DISABLED", "ENABLED"] +CEStateType = Literal["DISABLED", "ENABLED"] +CEStatusType = Literal["CREATING", "DELETED", "DELETING", "INVALID", "UPDATING", "VALID"] +CETypeType = Literal["MANAGED", "UNMANAGED"] +CRAllocationStrategyType = Literal["BEST_FIT", "BEST_FIT_PROGRESSIVE", "SPOT_CAPACITY_OPTIMIZED", "SPOT_PRICE_CAPACITY_OPTIMIZED"] +CRTypeType = Literal["EC2", "FARGATE", "FARGATE_SPOT", "SPOT"] +CRUpdateAllocationStrategyType = Literal["BEST_FIT_PROGRESSIVE", "SPOT_CAPACITY_OPTIMIZED", "SPOT_PRICE_CAPACITY_OPTIMIZED"] +DescribeComputeEnvironmentsPaginatorName = Literal["describe_compute_environments"] +DescribeJobDefinitionsPaginatorName = Literal["describe_job_definitions"] +DescribeJobQueuesPaginatorName = Literal["describe_job_queues"] +DeviceCgroupPermissionType = Literal["MKNOD", "READ", "WRITE"] +EFSAuthorizationConfigIAMType = Literal["DISABLED", "ENABLED"] +EFSTransitEncryptionType = Literal["DISABLED", "ENABLED"] +JQStateType = Literal["DISABLED", "ENABLED"] +JQStatusType = Literal["CREATING", "DELETED", "DELETING", "INVALID", "UPDATING", "VALID"] +JobDefinitionTypeType = Literal["container", "multinode"] +JobStateTimeLimitActionsActionType = Literal["CANCEL"] +JobStateTimeLimitActionsStateType = Literal["RUNNABLE"] +JobStatusType = Literal["FAILED", "PENDING", "RUNNABLE", "RUNNING", "STARTING", "SUBMITTED", "SUCCEEDED"] +ListJobsPaginatorName = Literal["list_jobs"] +ListSchedulingPoliciesPaginatorName = Literal["list_scheduling_policies"] +LogDriverType = Literal["awslogs", "fluentd", "gelf", "journald", "json-file", "splunk", "syslog"] +OrchestrationTypeType = Literal["ECS", "EKS"] +PlatformCapabilityType = Literal["EC2", "FARGATE"] +ResourceTypeType = Literal["GPU", "MEMORY", "VCPU"] +RetryActionType = Literal["EXIT", "RETRY"] +BatchServiceName = Literal["batch"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_compute_environments", + "describe_job_definitions", + "describe_job_queues", + "list_jobs", + "list_scheduling_policies",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ComputeResourceUnionTypeDef = Union['ComputeResourceTypeDef', 'ComputeResourceExtraOutputTypeDef'] +RetryStrategyUnionTypeDef = Union['RetryStrategyTypeDef', 'RetryStrategyExtraOutputTypeDef'] +FairsharePolicyUnionTypeDef = Union['FairsharePolicyTypeDef', 'FairsharePolicyOutputTypeDef'] +ContainerPropertiesUnionTypeDef = Union[ 'ContainerPropertiesTypeDef', 'ContainerPropertiesExtraOutputTypeDef' ] +EksPropertiesUnionTypeDef = Union['EksPropertiesTypeDef', 'EksPropertiesExtraOutputTypeDef'] +EcsPropertiesUnionTypeDef = Union['EcsPropertiesTypeDef', 'EcsPropertiesExtraOutputTypeDef'] +NodePropertiesUnionTypeDef = Union['NodePropertiesTypeDef', 'NodePropertiesExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/bcm_data_exports_classes.py b/aws_resource_validator/pydantic_models/bcm_data_exports_classes.py new file mode 100644 index 00000000..2accf8d1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/bcm_data_exports_classes.py @@ -0,0 +1,206 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.bcm_data_exports_constants import * + +class ColumnTypeDef(BaseModel): + Description: Optional[str] = None + Name: Optional[str] = None + Type: Optional[str] = None + +class ResourceTagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DataQueryTypeDef(BaseModel): + QueryStatement: str + TableConfigurations: Optional[Mapping[str, Mapping[str, str]]] = None + +class DeleteExportRequestRequestTypeDef(BaseModel): + ExportArn: str + +class ExecutionStatusTypeDef(BaseModel): + CompletedAt: Optional[datetime] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + StatusCode: Optional[ExecutionStatusCodeType] = None + StatusReason: Optional[ExecutionStatusReasonType] = None + +class ExportStatusTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + LastRefreshedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + StatusCode: Optional[ExportStatusCodeType] = None + StatusReason: Optional[ExecutionStatusReasonType] = None + +class RefreshCadenceTypeDef(BaseModel): + Frequency: Literal["SYNCHRONOUS"] + +class GetExecutionRequestRequestTypeDef(BaseModel): + ExecutionId: str + ExportArn: str + +class GetExportRequestRequestTypeDef(BaseModel): + ExportArn: str + +class GetTableRequestRequestTypeDef(BaseModel): + TableName: str + TableProperties: Optional[Mapping[str, str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListExecutionsRequestRequestTypeDef(BaseModel): + ExportArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListExportsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTablesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class S3OutputConfigurationsTypeDef(BaseModel): + Compression: CompressionOptionType + Format: FormatOptionType + OutputType: Literal["CUSTOM"] + Overwrite: OverwriteOptionType + +class TablePropertyDescriptionTypeDef(BaseModel): + DefaultValue: Optional[str] = None + Description: Optional[str] = None + Name: Optional[str] = None + ValidValues: Optional[List[str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourceTagKeys: Sequence[str] + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourceTags: Sequence[ResourceTagTypeDef] + +class CreateExportResponseTypeDef(BaseModel): + ExportArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteExportResponseTypeDef(BaseModel): + ExportArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTableResponseTypeDef(BaseModel): + Description: str + Schema: List[ColumnTypeDef] + TableName: str + TableProperties: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + NextToken: str + ResourceTags: List[ResourceTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExportResponseTypeDef(BaseModel): + ExportArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExecutionReferenceTypeDef(BaseModel): + ExecutionId: str + ExecutionStatus: ExecutionStatusTypeDef + +class ExportReferenceTypeDef(BaseModel): + ExportArn: str + ExportName: str + ExportStatus: ExportStatusTypeDef + +class ListExecutionsRequestListExecutionsPaginateTypeDef(BaseModel): + ExportArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExportsRequestListExportsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTablesRequestListTablesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class S3DestinationTypeDef(BaseModel): + S3Bucket: str + S3OutputConfigurations: S3OutputConfigurationsTypeDef + S3Prefix: str + S3Region: str + +class TableTypeDef(BaseModel): + Description: Optional[str] = None + TableName: Optional[str] = None + TableProperties: Optional[List[TablePropertyDescriptionTypeDef]] = None + +class ListExecutionsResponseTypeDef(BaseModel): + Executions: List[ExecutionReferenceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListExportsResponseTypeDef(BaseModel): + Exports: List[ExportReferenceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationConfigurationsTypeDef(BaseModel): + S3Destination: S3DestinationTypeDef + +class ListTablesResponseTypeDef(BaseModel): + NextToken: str + Tables: List[TableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTypeDef(BaseModel): + DataQuery: DataQueryTypeDef + DestinationConfigurations: DestinationConfigurationsTypeDef + Name: str + RefreshCadence: RefreshCadenceTypeDef + Description: Optional[str] = None + ExportArn: Optional[str] = None + +class CreateExportRequestRequestTypeDef(BaseModel): + Export: ExportTypeDef + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class GetExecutionResponseTypeDef(BaseModel): + ExecutionId: str + ExecutionStatus: ExecutionStatusTypeDef + Export: ExportTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetExportResponseTypeDef(BaseModel): + Export: ExportTypeDef + ExportStatus: ExportStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExportRequestRequestTypeDef(BaseModel): + Export: ExportTypeDef + ExportArn: str + diff --git a/aws_resource_validator/pydantic_models/bcm_data_exports_constants.py b/aws_resource_validator/pydantic_models/bcm_data_exports_constants.py new file mode 100644 index 00000000..80801f9e --- /dev/null +++ b/aws_resource_validator/pydantic_models/bcm_data_exports_constants.py @@ -0,0 +1,406 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CompressionOptionType = Literal["GZIP", "PARQUET"] +ExecutionStatusCodeType = Literal["DELIVERY_FAILURE", + "DELIVERY_IN_PROCESS", + "DELIVERY_SUCCESS", + "INITIATION_IN_PROCESS", + "QUERY_FAILURE", + "QUERY_IN_PROCESS", + "QUERY_QUEUED",] +ExecutionStatusReasonType = Literal["BILL_OWNER_CHANGED", "INSUFFICIENT_PERMISSION", "INTERNAL_FAILURE"] +ExportStatusCodeType = Literal["HEALTHY", "UNHEALTHY"] +FormatOptionType = Literal["PARQUET", "TEXT_OR_CSV"] +FrequencyOptionType = Literal["SYNCHRONOUS"] +ListExecutionsPaginatorName = Literal["list_executions"] +ListExportsPaginatorName = Literal["list_exports"] +ListTablesPaginatorName = Literal["list_tables"] +OverwriteOptionType = Literal["CREATE_NEW_REPORT", "OVERWRITE_REPORT"] +S3OutputTypeType = Literal["CUSTOM"] +BillingandCostManagementDataExportsServiceName = Literal["bcm-data-exports"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_executions", "list_exports", "list_tables"] diff --git a/aws_resource_validator/pydantic_models/bedrock_agent_classes.py b/aws_resource_validator/pydantic_models/bedrock_agent_classes.py new file mode 100644 index 00000000..9a5c1b5f --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_agent_classes.py @@ -0,0 +1,1646 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.bedrock_agent_constants import * + +class S3IdentifierTypeDef(BaseModel): + s3BucketName: Optional[str] = None + s3ObjectKey: Optional[str] = None + +class ActionGroupExecutorTypeDef(BaseModel): + customControl: Optional[Literal["RETURN_CONTROL"]] = None + _lambda: Optional[str] = None + +class ActionGroupSummaryTypeDef(BaseModel): + actionGroupId: str + actionGroupName: str + actionGroupState: ActionGroupStateType + updatedAt: datetime + description: Optional[str] = None + +class AgentAliasRoutingConfigurationListItemTypeDef(BaseModel): + agentVersion: Optional[str] = None + provisionedThroughput: Optional[str] = None + +class AgentFlowNodeConfigurationTypeDef(BaseModel): + agentAliasArn: str + +class AgentKnowledgeBaseSummaryTypeDef(BaseModel): + knowledgeBaseId: str + knowledgeBaseState: KnowledgeBaseStateType + updatedAt: datetime + description: Optional[str] = None + +class AgentKnowledgeBaseTypeDef(BaseModel): + agentId: str + agentVersion: str + createdAt: datetime + description: str + knowledgeBaseId: str + knowledgeBaseState: KnowledgeBaseStateType + updatedAt: datetime + +class GuardrailConfigurationTypeDef(BaseModel): + guardrailIdentifier: Optional[str] = None + guardrailVersion: Optional[str] = None + +class MemoryConfigurationOutputTypeDef(BaseModel): + enabledMemoryTypes: List[Literal["SESSION_SUMMARY"]] + storageDays: Optional[int] = None + +class AssociateAgentKnowledgeBaseRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + description: str + knowledgeBaseId: str + knowledgeBaseState: Optional[KnowledgeBaseStateType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BedrockEmbeddingModelConfigurationTypeDef(BaseModel): + dimensions: Optional[int] = None + +class ParsingPromptTypeDef(BaseModel): + parsingPromptText: str + +class FixedSizeChunkingConfigurationTypeDef(BaseModel): + maxTokens: int + overlapPercentage: int + +class SemanticChunkingConfigurationTypeDef(BaseModel): + breakpointPercentileThreshold: int + bufferSize: int + maxTokens: int + +class FlowConditionTypeDef(BaseModel): + name: str + expression: Optional[str] = None + +class ConfluenceSourceConfigurationTypeDef(BaseModel): + authType: ConfluenceAuthTypeType + credentialsSecretArn: str + hostType: Literal["SAAS"] + hostUrl: str + +class MemoryConfigurationTypeDef(BaseModel): + enabledMemoryTypes: Sequence[Literal["SESSION_SUMMARY"]] + storageDays: Optional[int] = None + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + kmsKeyArn: Optional[str] = None + +class FlowAliasRoutingConfigurationListItemTypeDef(BaseModel): + flowVersion: Optional[str] = None + +class CreateFlowVersionRequestRequestTypeDef(BaseModel): + flowIdentifier: str + clientToken: Optional[str] = None + description: Optional[str] = None + +class CreatePromptVersionRequestRequestTypeDef(BaseModel): + promptIdentifier: str + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class S3DataSourceConfigurationOutputTypeDef(BaseModel): + bucketArn: str + bucketOwnerAccountId: Optional[str] = None + inclusionPrefixes: Optional[List[str]] = None + +class S3DataSourceConfigurationTypeDef(BaseModel): + bucketArn: str + bucketOwnerAccountId: Optional[str] = None + inclusionPrefixes: Optional[Sequence[str]] = None + +class DataSourceSummaryTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + name: str + status: DataSourceStatusType + updatedAt: datetime + description: Optional[str] = None + +class DeleteAgentActionGroupRequestRequestTypeDef(BaseModel): + actionGroupId: str + agentId: str + agentVersion: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteAgentAliasRequestRequestTypeDef(BaseModel): + agentAliasId: str + agentId: str + +class DeleteAgentRequestRequestTypeDef(BaseModel): + agentId: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteAgentVersionRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteDataSourceRequestRequestTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + +class DeleteFlowAliasRequestRequestTypeDef(BaseModel): + aliasIdentifier: str + flowIdentifier: str + +class DeleteFlowRequestRequestTypeDef(BaseModel): + flowIdentifier: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteFlowVersionRequestRequestTypeDef(BaseModel): + flowIdentifier: str + flowVersion: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class DeletePromptRequestRequestTypeDef(BaseModel): + promptIdentifier: str + promptVersion: Optional[str] = None + +class DisassociateAgentKnowledgeBaseRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + knowledgeBaseId: str + +class FlowConditionalConnectionConfigurationTypeDef(BaseModel): + condition: str + +class FlowDataConnectionConfigurationTypeDef(BaseModel): + sourceOutput: str + targetInput: str + +class KnowledgeBaseFlowNodeConfigurationTypeDef(BaseModel): + knowledgeBaseId: str + modelId: Optional[str] = None + +class LambdaFunctionFlowNodeConfigurationTypeDef(BaseModel): + lambdaArn: str + +class LexFlowNodeConfigurationTypeDef(BaseModel): + botAliasArn: str + localeId: str + +class FlowNodeInputTypeDef(BaseModel): + expression: str + name: str + type: FlowNodeIODataTypeType + +class FlowNodeOutputTypeDef(BaseModel): + name: str + type: FlowNodeIODataTypeType + +class FlowSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + id: str + name: str + status: FlowStatusType + updatedAt: datetime + version: str + description: Optional[str] = None + +class FlowValidationTypeDef(BaseModel): + message: str + severity: FlowValidationSeverityType + +class FlowVersionSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + id: str + status: FlowStatusType + version: str + +class ParameterDetailTypeDef(BaseModel): + type: TypeType + description: Optional[str] = None + required: Optional[bool] = None + +class GetAgentActionGroupRequestRequestTypeDef(BaseModel): + actionGroupId: str + agentId: str + agentVersion: str + +class GetAgentAliasRequestRequestTypeDef(BaseModel): + agentAliasId: str + agentId: str + +class GetAgentKnowledgeBaseRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + knowledgeBaseId: str + +class GetAgentRequestRequestTypeDef(BaseModel): + agentId: str + +class GetAgentVersionRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + +class GetDataSourceRequestRequestTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + +class GetFlowAliasRequestRequestTypeDef(BaseModel): + aliasIdentifier: str + flowIdentifier: str + +class GetFlowRequestRequestTypeDef(BaseModel): + flowIdentifier: str + +class GetFlowVersionRequestRequestTypeDef(BaseModel): + flowIdentifier: str + flowVersion: str + +class GetIngestionJobRequestRequestTypeDef(BaseModel): + dataSourceId: str + ingestionJobId: str + knowledgeBaseId: str + +class GetKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class GetPromptRequestRequestTypeDef(BaseModel): + promptIdentifier: str + promptVersion: Optional[str] = None + +class HierarchicalChunkingLevelConfigurationTypeDef(BaseModel): + maxTokens: int + +class InferenceConfigurationOutputTypeDef(BaseModel): + maximumLength: Optional[int] = None + stopSequences: Optional[List[str]] = None + temperature: Optional[float] = None + topK: Optional[int] = None + topP: Optional[float] = None + +class InferenceConfigurationTypeDef(BaseModel): + maximumLength: Optional[int] = None + stopSequences: Optional[Sequence[str]] = None + temperature: Optional[float] = None + topK: Optional[int] = None + topP: Optional[float] = None + +class IngestionJobFilterTypeDef(BaseModel): + attribute: Literal["STATUS"] + operator: Literal["EQ"] + values: Sequence[str] + +class IngestionJobSortByTypeDef(BaseModel): + attribute: IngestionJobSortByAttributeType + order: SortOrderType + +class IngestionJobStatisticsTypeDef(BaseModel): + numberOfDocumentsDeleted: Optional[int] = None + numberOfDocumentsFailed: Optional[int] = None + numberOfDocumentsScanned: Optional[int] = None + numberOfMetadataDocumentsModified: Optional[int] = None + numberOfMetadataDocumentsScanned: Optional[int] = None + numberOfModifiedDocumentsIndexed: Optional[int] = None + numberOfNewDocumentsIndexed: Optional[int] = None + +class S3LocationTypeDef(BaseModel): + uri: str + +class KnowledgeBaseSummaryTypeDef(BaseModel): + knowledgeBaseId: str + name: str + status: KnowledgeBaseStatusType + updatedAt: datetime + description: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAgentActionGroupsRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAgentAliasesRequestRequestTypeDef(BaseModel): + agentId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAgentKnowledgeBasesRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAgentVersionsRequestRequestTypeDef(BaseModel): + agentId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAgentsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDataSourcesRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFlowAliasesRequestRequestTypeDef(BaseModel): + flowIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFlowVersionsRequestRequestTypeDef(BaseModel): + flowIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFlowsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListKnowledgeBasesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListPromptsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + promptIdentifier: Optional[str] = None + +class PromptSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + id: str + name: str + updatedAt: datetime + version: str + description: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MongoDbAtlasFieldMappingTypeDef(BaseModel): + metadataField: str + textField: str + vectorField: str + +class OpenSearchServerlessFieldMappingTypeDef(BaseModel): + metadataField: str + textField: str + vectorField: str + +class PatternObjectFilterOutputTypeDef(BaseModel): + objectType: str + exclusionFilters: Optional[List[str]] = None + inclusionFilters: Optional[List[str]] = None + +class PatternObjectFilterTypeDef(BaseModel): + objectType: str + exclusionFilters: Optional[Sequence[str]] = None + inclusionFilters: Optional[Sequence[str]] = None + +class PineconeFieldMappingTypeDef(BaseModel): + metadataField: str + textField: str + +class PrepareAgentRequestRequestTypeDef(BaseModel): + agentId: str + +class PrepareFlowRequestRequestTypeDef(BaseModel): + flowIdentifier: str + +class PromptFlowNodeResourceConfigurationTypeDef(BaseModel): + promptArn: str + +class PromptModelInferenceConfigurationOutputTypeDef(BaseModel): + maxTokens: Optional[int] = None + stopSequences: Optional[List[str]] = None + temperature: Optional[float] = None + topK: Optional[int] = None + topP: Optional[float] = None + +class PromptModelInferenceConfigurationTypeDef(BaseModel): + maxTokens: Optional[int] = None + stopSequences: Optional[Sequence[str]] = None + temperature: Optional[float] = None + topK: Optional[int] = None + topP: Optional[float] = None + +class PromptInputVariableTypeDef(BaseModel): + name: Optional[str] = None + +class RdsFieldMappingTypeDef(BaseModel): + metadataField: str + primaryKeyField: str + textField: str + vectorField: str + +class RedisEnterpriseCloudFieldMappingTypeDef(BaseModel): + metadataField: str + textField: str + vectorField: str + +class RetrievalFlowNodeS3ConfigurationTypeDef(BaseModel): + bucketName: str + +class SalesforceSourceConfigurationTypeDef(BaseModel): + authType: Literal["OAUTH2_CLIENT_CREDENTIALS"] + credentialsSecretArn: str + hostUrl: str + +class SeedUrlTypeDef(BaseModel): + url: Optional[str] = None + +class SharePointSourceConfigurationOutputTypeDef(BaseModel): + authType: Literal["OAUTH2_CLIENT_CREDENTIALS"] + credentialsSecretArn: str + domain: str + hostType: Literal["ONLINE"] + siteUrls: List[str] + tenantId: Optional[str] = None + +class SharePointSourceConfigurationTypeDef(BaseModel): + authType: Literal["OAUTH2_CLIENT_CREDENTIALS"] + credentialsSecretArn: str + domain: str + hostType: Literal["ONLINE"] + siteUrls: Sequence[str] + tenantId: Optional[str] = None + +class StartIngestionJobRequestRequestTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + clientToken: Optional[str] = None + description: Optional[str] = None + +class StorageFlowNodeS3ConfigurationTypeDef(BaseModel): + bucketName: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TransformationLambdaConfigurationTypeDef(BaseModel): + lambdaArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAgentKnowledgeBaseRequestRequestTypeDef(BaseModel): + agentId: str + agentVersion: str + knowledgeBaseId: str + description: Optional[str] = None + knowledgeBaseState: Optional[KnowledgeBaseStateType] = None + +class WebCrawlerLimitsTypeDef(BaseModel): + rateLimit: Optional[int] = None + +class APISchemaTypeDef(BaseModel): + payload: Optional[str] = None + s3: Optional[S3IdentifierTypeDef] = None + +class AgentAliasHistoryEventTypeDef(BaseModel): + endDate: Optional[datetime] = None + routingConfiguration: Optional[List[AgentAliasRoutingConfigurationListItemTypeDef]] = None + startDate: Optional[datetime] = None + +class AgentAliasSummaryTypeDef(BaseModel): + agentAliasId: str + agentAliasName: str + agentAliasStatus: AgentAliasStatusType + createdAt: datetime + updatedAt: datetime + description: Optional[str] = None + routingConfiguration: Optional[List[AgentAliasRoutingConfigurationListItemTypeDef]] = None + +class CreateAgentAliasRequestRequestTypeDef(BaseModel): + agentAliasName: str + agentId: str + clientToken: Optional[str] = None + description: Optional[str] = None + routingConfiguration: Optional[ Sequence[AgentAliasRoutingConfigurationListItemTypeDef] ] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateAgentAliasRequestRequestTypeDef(BaseModel): + agentAliasId: str + agentAliasName: str + agentId: str + description: Optional[str] = None + routingConfiguration: Optional[ Sequence[AgentAliasRoutingConfigurationListItemTypeDef] ] = None + +class AgentSummaryTypeDef(BaseModel): + agentId: str + agentName: str + agentStatus: AgentStatusType + updatedAt: datetime + description: Optional[str] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + latestAgentVersion: Optional[str] = None + +class AgentVersionSummaryTypeDef(BaseModel): + agentName: str + agentStatus: AgentStatusType + agentVersion: str + createdAt: datetime + updatedAt: datetime + description: Optional[str] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + +class AssociateAgentKnowledgeBaseResponseTypeDef(BaseModel): + agentKnowledgeBase: AgentKnowledgeBaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAgentAliasResponseTypeDef(BaseModel): + agentAliasId: str + agentAliasStatus: AgentAliasStatusType + agentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAgentResponseTypeDef(BaseModel): + agentId: str + agentStatus: AgentStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAgentVersionResponseTypeDef(BaseModel): + agentId: str + agentStatus: AgentStatusType + agentVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSourceResponseTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + status: DataSourceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFlowAliasResponseTypeDef(BaseModel): + flowId: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFlowResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFlowVersionResponseTypeDef(BaseModel): + id: str + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBaseId: str + status: KnowledgeBaseStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePromptResponseTypeDef(BaseModel): + id: str + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgentKnowledgeBaseResponseTypeDef(BaseModel): + agentKnowledgeBase: AgentKnowledgeBaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAgentActionGroupsResponseTypeDef(BaseModel): + actionGroupSummaries: List[ActionGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAgentKnowledgeBasesResponseTypeDef(BaseModel): + agentKnowledgeBaseSummaries: List[AgentKnowledgeBaseSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PrepareAgentResponseTypeDef(BaseModel): + agentId: str + agentStatus: AgentStatusType + agentVersion: str + preparedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PrepareFlowResponseTypeDef(BaseModel): + id: str + status: FlowStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAgentKnowledgeBaseResponseTypeDef(BaseModel): + agentKnowledgeBase: AgentKnowledgeBaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmbeddingModelConfigurationTypeDef(BaseModel): + bedrockEmbeddingModelConfiguration: Optional[ BedrockEmbeddingModelConfigurationTypeDef ] = None + +class BedrockFoundationModelConfigurationTypeDef(BaseModel): + modelArn: str + parsingPrompt: Optional[ParsingPromptTypeDef] = None + +class ConditionFlowNodeConfigurationOutputTypeDef(BaseModel): + conditions: List[FlowConditionTypeDef] + +class ConditionFlowNodeConfigurationTypeDef(BaseModel): + conditions: Sequence[FlowConditionTypeDef] + +class CreateFlowAliasRequestRequestTypeDef(BaseModel): + flowIdentifier: str + name: str + routingConfiguration: Sequence[FlowAliasRoutingConfigurationListItemTypeDef] + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateFlowAliasResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + description: str + flowId: str + id: str + name: str + routingConfiguration: List[FlowAliasRoutingConfigurationListItemTypeDef] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class FlowAliasSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + flowId: str + id: str + name: str + routingConfiguration: List[FlowAliasRoutingConfigurationListItemTypeDef] + updatedAt: datetime + description: Optional[str] = None + +class GetFlowAliasResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + description: str + flowId: str + id: str + name: str + routingConfiguration: List[FlowAliasRoutingConfigurationListItemTypeDef] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowAliasRequestRequestTypeDef(BaseModel): + aliasIdentifier: str + flowIdentifier: str + name: str + routingConfiguration: Sequence[FlowAliasRoutingConfigurationListItemTypeDef] + description: Optional[str] = None + +class UpdateFlowAliasResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + description: str + flowId: str + id: str + name: str + routingConfiguration: List[FlowAliasRoutingConfigurationListItemTypeDef] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourcesResponseTypeDef(BaseModel): + dataSourceSummaries: List[DataSourceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FlowConnectionConfigurationTypeDef(BaseModel): + conditional: Optional[FlowConditionalConnectionConfigurationTypeDef] = None + data: Optional[FlowDataConnectionConfigurationTypeDef] = None + +class ListFlowsResponseTypeDef(BaseModel): + flowSummaries: List[FlowSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFlowVersionsResponseTypeDef(BaseModel): + flowVersionSummaries: List[FlowVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionOutputTypeDef(BaseModel): + name: str + description: Optional[str] = None + parameters: Optional[Dict[str, ParameterDetailTypeDef]] = None + +class FunctionTypeDef(BaseModel): + name: str + description: Optional[str] = None + parameters: Optional[Mapping[str, ParameterDetailTypeDef]] = None + +class HierarchicalChunkingConfigurationOutputTypeDef(BaseModel): + levelConfigurations: List[HierarchicalChunkingLevelConfigurationTypeDef] + overlapTokens: int + +class HierarchicalChunkingConfigurationTypeDef(BaseModel): + levelConfigurations: Sequence[HierarchicalChunkingLevelConfigurationTypeDef] + overlapTokens: int + +class PromptConfigurationOutputTypeDef(BaseModel): + basePromptTemplate: Optional[str] = None + inferenceConfiguration: Optional[InferenceConfigurationOutputTypeDef] = None + parserMode: Optional[CreationModeType] = None + promptCreationMode: Optional[CreationModeType] = None + promptState: Optional[PromptStateType] = None + promptType: Optional[PromptTypeType] = None + +class PromptConfigurationTypeDef(BaseModel): + basePromptTemplate: Optional[str] = None + inferenceConfiguration: Optional[InferenceConfigurationTypeDef] = None + parserMode: Optional[CreationModeType] = None + promptCreationMode: Optional[CreationModeType] = None + promptState: Optional[PromptStateType] = None + promptType: Optional[PromptTypeType] = None + +class ListIngestionJobsRequestRequestTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + filters: Optional[Sequence[IngestionJobFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[IngestionJobSortByTypeDef] = None + +class IngestionJobSummaryTypeDef(BaseModel): + dataSourceId: str + ingestionJobId: str + knowledgeBaseId: str + startedAt: datetime + status: IngestionJobStatusType + updatedAt: datetime + description: Optional[str] = None + statistics: Optional[IngestionJobStatisticsTypeDef] = None + +class IngestionJobTypeDef(BaseModel): + dataSourceId: str + ingestionJobId: str + knowledgeBaseId: str + startedAt: datetime + status: IngestionJobStatusType + updatedAt: datetime + description: Optional[str] = None + failureReasons: Optional[List[str]] = None + statistics: Optional[IngestionJobStatisticsTypeDef] = None + +class IntermediateStorageTypeDef(BaseModel): + s3Location: S3LocationTypeDef + +class ListKnowledgeBasesResponseTypeDef(BaseModel): + knowledgeBaseSummaries: List[KnowledgeBaseSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAgentActionGroupsRequestListAgentActionGroupsPaginateTypeDef(BaseModel): + agentId: str + agentVersion: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAgentAliasesRequestListAgentAliasesPaginateTypeDef(BaseModel): + agentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAgentKnowledgeBasesRequestListAgentKnowledgeBasesPaginateTypeDef(BaseModel): + agentId: str + agentVersion: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAgentVersionsRequestListAgentVersionsPaginateTypeDef(BaseModel): + agentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAgentsRequestListAgentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourcesRequestListDataSourcesPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowAliasesRequestListFlowAliasesPaginateTypeDef(BaseModel): + flowIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowVersionsRequestListFlowVersionsPaginateTypeDef(BaseModel): + flowIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowsRequestListFlowsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIngestionJobsRequestListIngestionJobsPaginateTypeDef(BaseModel): + dataSourceId: str + knowledgeBaseId: str + filters: Optional[Sequence[IngestionJobFilterTypeDef]] = None + sortBy: Optional[IngestionJobSortByTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKnowledgeBasesRequestListKnowledgeBasesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPromptsRequestListPromptsPaginateTypeDef(BaseModel): + promptIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPromptsResponseTypeDef(BaseModel): + nextToken: str + promptSummaries: List[PromptSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MongoDbAtlasConfigurationTypeDef(BaseModel): + collectionName: str + credentialsSecretArn: str + databaseName: str + endpoint: str + fieldMapping: MongoDbAtlasFieldMappingTypeDef + vectorIndexName: str + endpointServiceName: Optional[str] = None + +class OpenSearchServerlessConfigurationTypeDef(BaseModel): + collectionArn: str + fieldMapping: OpenSearchServerlessFieldMappingTypeDef + vectorIndexName: str + +class PatternObjectFilterConfigurationOutputTypeDef(BaseModel): + filters: List[PatternObjectFilterOutputTypeDef] + +class PatternObjectFilterConfigurationTypeDef(BaseModel): + filters: Sequence[PatternObjectFilterTypeDef] + +class PineconeConfigurationTypeDef(BaseModel): + connectionString: str + credentialsSecretArn: str + fieldMapping: PineconeFieldMappingTypeDef + namespace: Optional[str] = None + +class PromptInferenceConfigurationOutputTypeDef(BaseModel): + text: Optional[PromptModelInferenceConfigurationOutputTypeDef] = None + +class PromptInferenceConfigurationTypeDef(BaseModel): + text: Optional[PromptModelInferenceConfigurationTypeDef] = None + +class TextPromptTemplateConfigurationOutputTypeDef(BaseModel): + text: str + inputVariables: Optional[List[PromptInputVariableTypeDef]] = None + +class TextPromptTemplateConfigurationTypeDef(BaseModel): + text: str + inputVariables: Optional[Sequence[PromptInputVariableTypeDef]] = None + +class RdsConfigurationTypeDef(BaseModel): + credentialsSecretArn: str + databaseName: str + fieldMapping: RdsFieldMappingTypeDef + resourceArn: str + tableName: str + +class RedisEnterpriseCloudConfigurationTypeDef(BaseModel): + credentialsSecretArn: str + endpoint: str + fieldMapping: RedisEnterpriseCloudFieldMappingTypeDef + vectorIndexName: str + +class RetrievalFlowNodeServiceConfigurationTypeDef(BaseModel): + s3: Optional[RetrievalFlowNodeS3ConfigurationTypeDef] = None + +class UrlConfigurationOutputTypeDef(BaseModel): + seedUrls: Optional[List[SeedUrlTypeDef]] = None + +class UrlConfigurationTypeDef(BaseModel): + seedUrls: Optional[Sequence[SeedUrlTypeDef]] = None + +class StorageFlowNodeServiceConfigurationTypeDef(BaseModel): + s3: Optional[StorageFlowNodeS3ConfigurationTypeDef] = None + +class TransformationFunctionTypeDef(BaseModel): + transformationLambdaConfiguration: TransformationLambdaConfigurationTypeDef + +class WebCrawlerConfigurationOutputTypeDef(BaseModel): + crawlerLimits: Optional[WebCrawlerLimitsTypeDef] = None + exclusionFilters: Optional[List[str]] = None + inclusionFilters: Optional[List[str]] = None + scope: Optional[WebScopeTypeType] = None + +class WebCrawlerConfigurationTypeDef(BaseModel): + crawlerLimits: Optional[WebCrawlerLimitsTypeDef] = None + exclusionFilters: Optional[Sequence[str]] = None + inclusionFilters: Optional[Sequence[str]] = None + scope: Optional[WebScopeTypeType] = None + +class AgentAliasTypeDef(BaseModel): + agentAliasArn: str + agentAliasId: str + agentAliasName: str + agentAliasStatus: AgentAliasStatusType + agentId: str + createdAt: datetime + routingConfiguration: List[AgentAliasRoutingConfigurationListItemTypeDef] + updatedAt: datetime + agentAliasHistoryEvents: Optional[List[AgentAliasHistoryEventTypeDef]] = None + clientToken: Optional[str] = None + description: Optional[str] = None + failureReasons: Optional[List[str]] = None + +class ListAgentAliasesResponseTypeDef(BaseModel): + agentAliasSummaries: List[AgentAliasSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAgentsResponseTypeDef(BaseModel): + agentSummaries: List[AgentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAgentVersionsResponseTypeDef(BaseModel): + agentVersionSummaries: List[AgentVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class VectorKnowledgeBaseConfigurationTypeDef(BaseModel): + embeddingModelArn: str + embeddingModelConfiguration: Optional[EmbeddingModelConfigurationTypeDef] = None + +class ParsingConfigurationTypeDef(BaseModel): + parsingStrategy: Literal["BEDROCK_FOUNDATION_MODEL"] + bedrockFoundationModelConfiguration: Optional[ BedrockFoundationModelConfigurationTypeDef ] = None + +class ListFlowAliasesResponseTypeDef(BaseModel): + flowAliasSummaries: List[FlowAliasSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FlowConnectionTypeDef(BaseModel): + name: str + source: str + target: str + type: FlowConnectionTypeType + configuration: Optional[FlowConnectionConfigurationTypeDef] = None + +class FunctionSchemaOutputTypeDef(BaseModel): + functions: Optional[List[FunctionOutputTypeDef]] = None + +class FunctionSchemaTypeDef(BaseModel): + functions: Optional[Sequence[FunctionTypeDef]] = None + +class ChunkingConfigurationOutputTypeDef(BaseModel): + chunkingStrategy: ChunkingStrategyType + fixedSizeChunkingConfiguration: Optional[FixedSizeChunkingConfigurationTypeDef] = None + hierarchicalChunkingConfiguration: Optional[ HierarchicalChunkingConfigurationOutputTypeDef ] = None + semanticChunkingConfiguration: Optional[SemanticChunkingConfigurationTypeDef] = None + +class ChunkingConfigurationTypeDef(BaseModel): + chunkingStrategy: ChunkingStrategyType + fixedSizeChunkingConfiguration: Optional[FixedSizeChunkingConfigurationTypeDef] = None + hierarchicalChunkingConfiguration: Optional[HierarchicalChunkingConfigurationTypeDef] = None + semanticChunkingConfiguration: Optional[SemanticChunkingConfigurationTypeDef] = None + +class PromptOverrideConfigurationOutputTypeDef(BaseModel): + promptConfigurations: List[PromptConfigurationOutputTypeDef] + overrideLambda: Optional[str] = None + +class PromptOverrideConfigurationTypeDef(BaseModel): + promptConfigurations: Sequence[PromptConfigurationTypeDef] + overrideLambda: Optional[str] = None + +class ListIngestionJobsResponseTypeDef(BaseModel): + ingestionJobSummaries: List[IngestionJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIngestionJobResponseTypeDef(BaseModel): + ingestionJob: IngestionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartIngestionJobResponseTypeDef(BaseModel): + ingestionJob: IngestionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CrawlFilterConfigurationOutputTypeDef(BaseModel): + type: Literal["PATTERN"] + patternObjectFilter: Optional[PatternObjectFilterConfigurationOutputTypeDef] = None + +class CrawlFilterConfigurationTypeDef(BaseModel): + type: Literal["PATTERN"] + patternObjectFilter: Optional[PatternObjectFilterConfigurationTypeDef] = None + +class PromptTemplateConfigurationOutputTypeDef(BaseModel): + text: Optional[TextPromptTemplateConfigurationOutputTypeDef] = None + +class PromptTemplateConfigurationTypeDef(BaseModel): + text: Optional[TextPromptTemplateConfigurationTypeDef] = None + +class StorageConfigurationTypeDef(BaseModel): + type: KnowledgeBaseStorageTypeType + mongoDbAtlasConfiguration: Optional[MongoDbAtlasConfigurationTypeDef] = None + opensearchServerlessConfiguration: Optional[OpenSearchServerlessConfigurationTypeDef] = None + pineconeConfiguration: Optional[PineconeConfigurationTypeDef] = None + rdsConfiguration: Optional[RdsConfigurationTypeDef] = None + redisEnterpriseCloudConfiguration: Optional[RedisEnterpriseCloudConfigurationTypeDef] = None + +class RetrievalFlowNodeConfigurationTypeDef(BaseModel): + serviceConfiguration: RetrievalFlowNodeServiceConfigurationTypeDef + +class WebSourceConfigurationOutputTypeDef(BaseModel): + urlConfiguration: UrlConfigurationOutputTypeDef + +class WebSourceConfigurationTypeDef(BaseModel): + urlConfiguration: UrlConfigurationTypeDef + +class StorageFlowNodeConfigurationTypeDef(BaseModel): + serviceConfiguration: StorageFlowNodeServiceConfigurationTypeDef + +class TransformationTypeDef(BaseModel): + stepToApply: Literal["POST_CHUNKING"] + transformationFunction: TransformationFunctionTypeDef + +class CreateAgentAliasResponseTypeDef(BaseModel): + agentAlias: AgentAliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgentAliasResponseTypeDef(BaseModel): + agentAlias: AgentAliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAgentAliasResponseTypeDef(BaseModel): + agentAlias: AgentAliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KnowledgeBaseConfigurationTypeDef(BaseModel): + type: Literal["VECTOR"] + vectorKnowledgeBaseConfiguration: Optional[VectorKnowledgeBaseConfigurationTypeDef] = None + +class AgentActionGroupTypeDef(BaseModel): + actionGroupId: str + actionGroupName: str + actionGroupState: ActionGroupStateType + agentId: str + agentVersion: str + createdAt: datetime + updatedAt: datetime + actionGroupExecutor: Optional[ActionGroupExecutorTypeDef] = None + apiSchema: Optional[APISchemaTypeDef] = None + clientToken: Optional[str] = None + description: Optional[str] = None + functionSchema: Optional[FunctionSchemaOutputTypeDef] = None + parentActionSignature: Optional[ActionGroupSignatureType] = None + +class CreateAgentActionGroupRequestRequestTypeDef(BaseModel): + actionGroupName: str + agentId: str + agentVersion: str + actionGroupExecutor: Optional[ActionGroupExecutorTypeDef] = None + actionGroupState: Optional[ActionGroupStateType] = None + apiSchema: Optional[APISchemaTypeDef] = None + clientToken: Optional[str] = None + description: Optional[str] = None + functionSchema: Optional[FunctionSchemaTypeDef] = None + parentActionGroupSignature: Optional[ActionGroupSignatureType] = None + +class UpdateAgentActionGroupRequestRequestTypeDef(BaseModel): + actionGroupId: str + actionGroupName: str + agentId: str + agentVersion: str + actionGroupExecutor: Optional[ActionGroupExecutorTypeDef] = None + actionGroupState: Optional[ActionGroupStateType] = None + apiSchema: Optional[APISchemaTypeDef] = None + description: Optional[str] = None + functionSchema: Optional[FunctionSchemaTypeDef] = None + parentActionGroupSignature: Optional[ActionGroupSignatureType] = None + +class AgentTypeDef(BaseModel): + agentArn: str + agentId: str + agentName: str + agentResourceRoleArn: str + agentStatus: AgentStatusType + agentVersion: str + createdAt: datetime + idleSessionTTLInSeconds: int + updatedAt: datetime + clientToken: Optional[str] = None + customerEncryptionKeyArn: Optional[str] = None + description: Optional[str] = None + failureReasons: Optional[List[str]] = None + foundationModel: Optional[str] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + instruction: Optional[str] = None + memoryConfiguration: Optional[MemoryConfigurationOutputTypeDef] = None + preparedAt: Optional[datetime] = None + promptOverrideConfiguration: Optional[PromptOverrideConfigurationOutputTypeDef] = None + recommendedActions: Optional[List[str]] = None + +class AgentVersionTypeDef(BaseModel): + agentArn: str + agentId: str + agentName: str + agentResourceRoleArn: str + agentStatus: AgentStatusType + createdAt: datetime + idleSessionTTLInSeconds: int + updatedAt: datetime + version: str + customerEncryptionKeyArn: Optional[str] = None + description: Optional[str] = None + failureReasons: Optional[List[str]] = None + foundationModel: Optional[str] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + instruction: Optional[str] = None + memoryConfiguration: Optional[MemoryConfigurationOutputTypeDef] = None + promptOverrideConfiguration: Optional[PromptOverrideConfigurationOutputTypeDef] = None + recommendedActions: Optional[List[str]] = None + +class CreateAgentRequestRequestTypeDef(BaseModel): + agentName: str + agentResourceRoleArn: Optional[str] = None + clientToken: Optional[str] = None + customerEncryptionKeyArn: Optional[str] = None + description: Optional[str] = None + foundationModel: Optional[str] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + idleSessionTTLInSeconds: Optional[int] = None + instruction: Optional[str] = None + memoryConfiguration: Optional[MemoryConfigurationTypeDef] = None + promptOverrideConfiguration: Optional[PromptOverrideConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateAgentRequestRequestTypeDef(BaseModel): + agentId: str + agentName: str + agentResourceRoleArn: str + foundationModel: str + customerEncryptionKeyArn: Optional[str] = None + description: Optional[str] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + idleSessionTTLInSeconds: Optional[int] = None + instruction: Optional[str] = None + memoryConfiguration: Optional[MemoryConfigurationTypeDef] = None + promptOverrideConfiguration: Optional[PromptOverrideConfigurationTypeDef] = None + +class ConfluenceCrawlerConfigurationOutputTypeDef(BaseModel): + filterConfiguration: Optional[CrawlFilterConfigurationOutputTypeDef] = None + +class SalesforceCrawlerConfigurationOutputTypeDef(BaseModel): + filterConfiguration: Optional[CrawlFilterConfigurationOutputTypeDef] = None + +class SharePointCrawlerConfigurationOutputTypeDef(BaseModel): + filterConfiguration: Optional[CrawlFilterConfigurationOutputTypeDef] = None + +class ConfluenceCrawlerConfigurationTypeDef(BaseModel): + filterConfiguration: Optional[CrawlFilterConfigurationTypeDef] = None + +class SalesforceCrawlerConfigurationTypeDef(BaseModel): + filterConfiguration: Optional[CrawlFilterConfigurationTypeDef] = None + +class SharePointCrawlerConfigurationTypeDef(BaseModel): + filterConfiguration: Optional[CrawlFilterConfigurationTypeDef] = None + +class PromptFlowNodeInlineConfigurationOutputTypeDef(BaseModel): + modelId: str + templateConfiguration: PromptTemplateConfigurationOutputTypeDef + templateType: Literal["TEXT"] + inferenceConfiguration: Optional[PromptInferenceConfigurationOutputTypeDef] = None + +class PromptVariantOutputTypeDef(BaseModel): + name: str + templateType: Literal["TEXT"] + inferenceConfiguration: Optional[PromptInferenceConfigurationOutputTypeDef] = None + modelId: Optional[str] = None + templateConfiguration: Optional[PromptTemplateConfigurationOutputTypeDef] = None + +class PromptFlowNodeInlineConfigurationTypeDef(BaseModel): + modelId: str + templateConfiguration: PromptTemplateConfigurationTypeDef + templateType: Literal["TEXT"] + inferenceConfiguration: Optional[PromptInferenceConfigurationTypeDef] = None + +class PromptVariantTypeDef(BaseModel): + name: str + templateType: Literal["TEXT"] + inferenceConfiguration: Optional[PromptInferenceConfigurationTypeDef] = None + modelId: Optional[str] = None + templateConfiguration: Optional[PromptTemplateConfigurationTypeDef] = None + +class WebDataSourceConfigurationOutputTypeDef(BaseModel): + sourceConfiguration: WebSourceConfigurationOutputTypeDef + crawlerConfiguration: Optional[WebCrawlerConfigurationOutputTypeDef] = None + +class WebDataSourceConfigurationTypeDef(BaseModel): + sourceConfiguration: WebSourceConfigurationTypeDef + crawlerConfiguration: Optional[WebCrawlerConfigurationTypeDef] = None + +class CustomTransformationConfigurationOutputTypeDef(BaseModel): + intermediateStorage: IntermediateStorageTypeDef + transformations: List[TransformationTypeDef] + +class CustomTransformationConfigurationTypeDef(BaseModel): + intermediateStorage: IntermediateStorageTypeDef + transformations: Sequence[TransformationTypeDef] + +class CreateKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseConfiguration: KnowledgeBaseConfigurationTypeDef + name: str + roleArn: str + storageConfiguration: StorageConfigurationTypeDef + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class KnowledgeBaseTypeDef(BaseModel): + createdAt: datetime + knowledgeBaseArn: str + knowledgeBaseConfiguration: KnowledgeBaseConfigurationTypeDef + knowledgeBaseId: str + name: str + roleArn: str + status: KnowledgeBaseStatusType + storageConfiguration: StorageConfigurationTypeDef + updatedAt: datetime + description: Optional[str] = None + failureReasons: Optional[List[str]] = None + +class UpdateKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseConfiguration: KnowledgeBaseConfigurationTypeDef + knowledgeBaseId: str + name: str + roleArn: str + storageConfiguration: StorageConfigurationTypeDef + description: Optional[str] = None + +class CreateAgentActionGroupResponseTypeDef(BaseModel): + agentActionGroup: AgentActionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgentActionGroupResponseTypeDef(BaseModel): + agentActionGroup: AgentActionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAgentActionGroupResponseTypeDef(BaseModel): + agentActionGroup: AgentActionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAgentResponseTypeDef(BaseModel): + agent: AgentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgentResponseTypeDef(BaseModel): + agent: AgentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAgentResponseTypeDef(BaseModel): + agent: AgentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgentVersionResponseTypeDef(BaseModel): + agentVersion: AgentVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConfluenceDataSourceConfigurationOutputTypeDef(BaseModel): + sourceConfiguration: ConfluenceSourceConfigurationTypeDef + crawlerConfiguration: Optional[ConfluenceCrawlerConfigurationOutputTypeDef] = None + +class SalesforceDataSourceConfigurationOutputTypeDef(BaseModel): + sourceConfiguration: SalesforceSourceConfigurationTypeDef + crawlerConfiguration: Optional[SalesforceCrawlerConfigurationOutputTypeDef] = None + +class SharePointDataSourceConfigurationOutputTypeDef(BaseModel): + sourceConfiguration: SharePointSourceConfigurationOutputTypeDef + crawlerConfiguration: Optional[SharePointCrawlerConfigurationOutputTypeDef] = None + +class ConfluenceDataSourceConfigurationTypeDef(BaseModel): + sourceConfiguration: ConfluenceSourceConfigurationTypeDef + crawlerConfiguration: Optional[ConfluenceCrawlerConfigurationTypeDef] = None + +class SalesforceDataSourceConfigurationTypeDef(BaseModel): + sourceConfiguration: SalesforceSourceConfigurationTypeDef + crawlerConfiguration: Optional[SalesforceCrawlerConfigurationTypeDef] = None + +class SharePointDataSourceConfigurationTypeDef(BaseModel): + sourceConfiguration: SharePointSourceConfigurationTypeDef + crawlerConfiguration: Optional[SharePointCrawlerConfigurationTypeDef] = None + +class PromptFlowNodeSourceConfigurationOutputTypeDef(BaseModel): + inline: Optional[PromptFlowNodeInlineConfigurationOutputTypeDef] = None + resource: Optional[PromptFlowNodeResourceConfigurationTypeDef] = None + +class CreatePromptResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + defaultVariant: str + description: str + id: str + name: str + updatedAt: datetime + variants: List[PromptVariantOutputTypeDef] + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePromptVersionResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + defaultVariant: str + description: str + id: str + name: str + updatedAt: datetime + variants: List[PromptVariantOutputTypeDef] + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPromptResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + defaultVariant: str + description: str + id: str + name: str + updatedAt: datetime + variants: List[PromptVariantOutputTypeDef] + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePromptResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + defaultVariant: str + description: str + id: str + name: str + updatedAt: datetime + variants: List[PromptVariantOutputTypeDef] + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class PromptFlowNodeSourceConfigurationTypeDef(BaseModel): + inline: Optional[PromptFlowNodeInlineConfigurationTypeDef] = None + resource: Optional[PromptFlowNodeResourceConfigurationTypeDef] = None + +class VectorIngestionConfigurationOutputTypeDef(BaseModel): + chunkingConfiguration: Optional[ChunkingConfigurationOutputTypeDef] = None + customTransformationConfiguration: Optional[ CustomTransformationConfigurationOutputTypeDef ] = None + parsingConfiguration: Optional[ParsingConfigurationTypeDef] = None + +class VectorIngestionConfigurationTypeDef(BaseModel): + chunkingConfiguration: Optional[ChunkingConfigurationTypeDef] = None + customTransformationConfiguration: Optional[CustomTransformationConfigurationTypeDef] = None + parsingConfiguration: Optional[ParsingConfigurationTypeDef] = None + +class CreateKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceConfigurationOutputTypeDef(BaseModel): + type: DataSourceTypeType + confluenceConfiguration: Optional[ConfluenceDataSourceConfigurationOutputTypeDef] = None + s3Configuration: Optional[S3DataSourceConfigurationOutputTypeDef] = None + salesforceConfiguration: Optional[SalesforceDataSourceConfigurationOutputTypeDef] = None + sharePointConfiguration: Optional[SharePointDataSourceConfigurationOutputTypeDef] = None + webConfiguration: Optional[WebDataSourceConfigurationOutputTypeDef] = None + +class DataSourceConfigurationTypeDef(BaseModel): + type: DataSourceTypeType + confluenceConfiguration: Optional[ConfluenceDataSourceConfigurationTypeDef] = None + s3Configuration: Optional[S3DataSourceConfigurationTypeDef] = None + salesforceConfiguration: Optional[SalesforceDataSourceConfigurationTypeDef] = None + sharePointConfiguration: Optional[SharePointDataSourceConfigurationTypeDef] = None + webConfiguration: Optional[WebDataSourceConfigurationTypeDef] = None + +class PromptFlowNodeConfigurationOutputTypeDef(BaseModel): + sourceConfiguration: PromptFlowNodeSourceConfigurationOutputTypeDef + +class PromptFlowNodeConfigurationTypeDef(BaseModel): + sourceConfiguration: PromptFlowNodeSourceConfigurationTypeDef + +class CreatePromptRequestRequestTypeDef(BaseModel): + name: str + clientToken: Optional[str] = None + customerEncryptionKeyArn: Optional[str] = None + defaultVariant: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + variants: Optional[Sequence[PromptVariantUnionTypeDef]] = None + +class UpdatePromptRequestRequestTypeDef(BaseModel): + name: str + promptIdentifier: str + customerEncryptionKeyArn: Optional[str] = None + defaultVariant: Optional[str] = None + description: Optional[str] = None + variants: Optional[Sequence[PromptVariantUnionTypeDef]] = None + +class DataSourceTypeDef(BaseModel): + createdAt: datetime + dataSourceConfiguration: DataSourceConfigurationOutputTypeDef + dataSourceId: str + knowledgeBaseId: str + name: str + status: DataSourceStatusType + updatedAt: datetime + dataDeletionPolicy: Optional[DataDeletionPolicyType] = None + description: Optional[str] = None + failureReasons: Optional[List[str]] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + vectorIngestionConfiguration: Optional[VectorIngestionConfigurationOutputTypeDef] = None + +class CreateDataSourceRequestRequestTypeDef(BaseModel): + dataSourceConfiguration: DataSourceConfigurationTypeDef + knowledgeBaseId: str + name: str + clientToken: Optional[str] = None + dataDeletionPolicy: Optional[DataDeletionPolicyType] = None + description: Optional[str] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + vectorIngestionConfiguration: Optional[VectorIngestionConfigurationTypeDef] = None + +class UpdateDataSourceRequestRequestTypeDef(BaseModel): + dataSourceConfiguration: DataSourceConfigurationTypeDef + dataSourceId: str + knowledgeBaseId: str + name: str + dataDeletionPolicy: Optional[DataDeletionPolicyType] = None + description: Optional[str] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + vectorIngestionConfiguration: Optional[VectorIngestionConfigurationTypeDef] = None + +class FlowNodeConfigurationOutputTypeDef(BaseModel): + agent: Optional[AgentFlowNodeConfigurationTypeDef] = None + collector: Optional[Dict[str, Any]] = None + condition: Optional[ConditionFlowNodeConfigurationOutputTypeDef] = None + input: Optional[Dict[str, Any]] = None + iterator: Optional[Dict[str, Any]] = None + knowledgeBase: Optional[KnowledgeBaseFlowNodeConfigurationTypeDef] = None + lambdaFunction: Optional[LambdaFunctionFlowNodeConfigurationTypeDef] = None + lex: Optional[LexFlowNodeConfigurationTypeDef] = None + output: Optional[Dict[str, Any]] = None + prompt: Optional[PromptFlowNodeConfigurationOutputTypeDef] = None + retrieval: Optional[RetrievalFlowNodeConfigurationTypeDef] = None + storage: Optional[StorageFlowNodeConfigurationTypeDef] = None + +class FlowNodeConfigurationTypeDef(BaseModel): + agent: Optional[AgentFlowNodeConfigurationTypeDef] = None + collector: Optional[Mapping[str, Any]] = None + condition: Optional[ConditionFlowNodeConfigurationTypeDef] = None + input: Optional[Mapping[str, Any]] = None + iterator: Optional[Mapping[str, Any]] = None + knowledgeBase: Optional[KnowledgeBaseFlowNodeConfigurationTypeDef] = None + lambdaFunction: Optional[LambdaFunctionFlowNodeConfigurationTypeDef] = None + lex: Optional[LexFlowNodeConfigurationTypeDef] = None + output: Optional[Mapping[str, Any]] = None + prompt: Optional[PromptFlowNodeConfigurationTypeDef] = None + retrieval: Optional[RetrievalFlowNodeConfigurationTypeDef] = None + storage: Optional[StorageFlowNodeConfigurationTypeDef] = None + +class CreateDataSourceResponseTypeDef(BaseModel): + dataSource: DataSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataSourceResponseTypeDef(BaseModel): + dataSource: DataSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceResponseTypeDef(BaseModel): + dataSource: DataSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FlowNodeExtraOutputTypeDef(BaseModel): + name: str + type: FlowNodeTypeType + configuration: Optional[FlowNodeConfigurationOutputTypeDef] = None + inputs: Optional[List[FlowNodeInputTypeDef]] = None + outputs: Optional[List[FlowNodeOutputTypeDef]] = None + +class FlowNodeTypeDef(BaseModel): + name: str + type: FlowNodeTypeType + configuration: Optional[FlowNodeConfigurationTypeDef] = None + inputs: Optional[Sequence[FlowNodeInputTypeDef]] = None + outputs: Optional[Sequence[FlowNodeOutputTypeDef]] = None + +class FlowDefinitionOutputTypeDef(BaseModel): + connections: Optional[List[FlowConnectionTypeDef]] = None + nodes: Optional[List[FlowNodeExtraOutputTypeDef]] = None + +class FlowDefinitionTypeDef(BaseModel): + connections: Optional[Sequence[FlowConnectionTypeDef]] = None + nodes: Optional[Sequence[FlowNodeTypeDef]] = None + +class CreateFlowResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + definition: FlowDefinitionOutputTypeDef + description: str + executionRoleArn: str + id: str + name: str + status: FlowStatusType + updatedAt: datetime + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowVersionResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + definition: FlowDefinitionOutputTypeDef + description: str + executionRoleArn: str + id: str + name: str + status: FlowStatusType + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFlowResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + definition: FlowDefinitionOutputTypeDef + description: str + executionRoleArn: str + id: str + name: str + status: FlowStatusType + updatedAt: datetime + validations: List[FlowValidationTypeDef] + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFlowVersionResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + definition: FlowDefinitionOutputTypeDef + description: str + executionRoleArn: str + id: str + name: str + status: FlowStatusType + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + customerEncryptionKeyArn: str + definition: FlowDefinitionOutputTypeDef + description: str + executionRoleArn: str + id: str + name: str + status: FlowStatusType + updatedAt: datetime + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowRequestRequestTypeDef(BaseModel): + executionRoleArn: str + name: str + clientToken: Optional[str] = None + customerEncryptionKeyArn: Optional[str] = None + definition: Optional[FlowDefinitionTypeDef] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateFlowRequestRequestTypeDef(BaseModel): + executionRoleArn: str + flowIdentifier: str + name: str + customerEncryptionKeyArn: Optional[str] = None + definition: Optional[FlowDefinitionTypeDef] = None + description: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/bedrock_agent_constants.py b/aws_resource_validator/pydantic_models/bedrock_agent_constants.py new file mode 100644 index 00000000..f6d1371a --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_agent_constants.py @@ -0,0 +1,487 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionGroupSignatureType = Literal["AMAZON.CodeInterpreter", "AMAZON.UserInput"] +ActionGroupStateType = Literal["DISABLED", "ENABLED"] +AgentAliasStatusType = Literal["CREATING", "DELETING", "FAILED", "PREPARED", "UPDATING"] +AgentStatusType = Literal["CREATING", + "DELETING", + "FAILED", + "NOT_PREPARED", + "PREPARED", + "PREPARING", + "UPDATING", + "VERSIONING",] +ChunkingStrategyType = Literal["FIXED_SIZE", "HIERARCHICAL", "NONE", "SEMANTIC"] +ConfluenceAuthTypeType = Literal["BASIC", "OAUTH2_CLIENT_CREDENTIALS"] +ConfluenceHostTypeType = Literal["SAAS"] +CrawlFilterConfigurationTypeType = Literal["PATTERN"] +CreationModeType = Literal["DEFAULT", "OVERRIDDEN"] +CustomControlMethodType = Literal["RETURN_CONTROL"] +DataDeletionPolicyType = Literal["DELETE", "RETAIN"] +DataSourceStatusType = Literal["AVAILABLE", "DELETE_UNSUCCESSFUL", "DELETING"] +DataSourceTypeType = Literal["CONFLUENCE", "S3", "SALESFORCE", "SHAREPOINT", "WEB"] +FlowConnectionTypeType = Literal["Conditional", "Data"] +FlowNodeIODataTypeType = Literal["Array", "Boolean", "Number", "Object", "String"] +FlowNodeTypeType = Literal["Agent", + "Collector", + "Condition", + "Input", + "Iterator", + "KnowledgeBase", + "LambdaFunction", + "Lex", + "Output", + "Prompt", + "Retrieval", + "Storage",] +FlowStatusType = Literal["Failed", "NotPrepared", "Prepared", "Preparing"] +FlowValidationSeverityType = Literal["Error", "Warning"] +IngestionJobFilterAttributeType = Literal["STATUS"] +IngestionJobFilterOperatorType = Literal["EQ"] +IngestionJobSortByAttributeType = Literal["STARTED_AT", "STATUS"] +IngestionJobStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS", "STARTING"] +KnowledgeBaseStateType = Literal["DISABLED", "ENABLED"] +KnowledgeBaseStatusType = Literal["ACTIVE", "CREATING", "DELETE_UNSUCCESSFUL", "DELETING", "FAILED", "UPDATING"] +KnowledgeBaseStorageTypeType = Literal["MONGO_DB_ATLAS", "OPENSEARCH_SERVERLESS", "PINECONE", "RDS", "REDIS_ENTERPRISE_CLOUD"] +KnowledgeBaseTypeType = Literal["VECTOR"] +ListAgentActionGroupsPaginatorName = Literal["list_agent_action_groups"] +ListAgentAliasesPaginatorName = Literal["list_agent_aliases"] +ListAgentKnowledgeBasesPaginatorName = Literal["list_agent_knowledge_bases"] +ListAgentVersionsPaginatorName = Literal["list_agent_versions"] +ListAgentsPaginatorName = Literal["list_agents"] +ListDataSourcesPaginatorName = Literal["list_data_sources"] +ListFlowAliasesPaginatorName = Literal["list_flow_aliases"] +ListFlowVersionsPaginatorName = Literal["list_flow_versions"] +ListFlowsPaginatorName = Literal["list_flows"] +ListIngestionJobsPaginatorName = Literal["list_ingestion_jobs"] +ListKnowledgeBasesPaginatorName = Literal["list_knowledge_bases"] +ListPromptsPaginatorName = Literal["list_prompts"] +MemoryTypeType = Literal["SESSION_SUMMARY"] +ParsingStrategyType = Literal["BEDROCK_FOUNDATION_MODEL"] +PromptStateType = Literal["DISABLED", "ENABLED"] +PromptTemplateTypeType = Literal["TEXT"] +PromptTypeType = Literal["KNOWLEDGE_BASE_RESPONSE_GENERATION", "ORCHESTRATION", "POST_PROCESSING", "PRE_PROCESSING"] +SalesforceAuthTypeType = Literal["OAUTH2_CLIENT_CREDENTIALS"] +SharePointAuthTypeType = Literal["OAUTH2_CLIENT_CREDENTIALS"] +SharePointHostTypeType = Literal["ONLINE"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +StepTypeType = Literal["POST_CHUNKING"] +TypeType = Literal["array", "boolean", "integer", "number", "string"] +WebScopeTypeType = Literal["HOST_ONLY", "SUBDOMAINS"] +AgentsforBedrockServiceName = Literal["bedrock-agent"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_agent_action_groups", + "list_agent_aliases", + "list_agent_knowledge_bases", + "list_agent_versions", + "list_agents", + "list_data_sources", + "list_flow_aliases", + "list_flow_versions", + "list_flows", + "list_ingestion_jobs", + "list_knowledge_bases", + "list_prompts",] +MemoryConfigurationUnionTypeDef = Union[ 'MemoryConfigurationTypeDef', 'MemoryConfigurationOutputTypeDef' ] +FunctionSchemaUnionTypeDef = Union['FunctionSchemaTypeDef', 'FunctionSchemaOutputTypeDef'] +PromptOverrideConfigurationUnionTypeDef = Union[ 'PromptOverrideConfigurationTypeDef', 'PromptOverrideConfigurationOutputTypeDef' ] +PromptVariantUnionTypeDef = Union['PromptVariantTypeDef', 'PromptVariantOutputTypeDef'] +VectorIngestionConfigurationUnionTypeDef = Union[ 'VectorIngestionConfigurationTypeDef', 'VectorIngestionConfigurationOutputTypeDef' ] +DataSourceConfigurationUnionTypeDef = Union[ 'DataSourceConfigurationTypeDef', 'DataSourceConfigurationOutputTypeDef' ] +FlowDefinitionUnionTypeDef = Union['FlowDefinitionTypeDef', 'FlowDefinitionOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/bedrock_agent_runtime_classes.py b/aws_resource_validator/pydantic_models/bedrock_agent_runtime_classes.py new file mode 100644 index 00000000..3670abfd --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_agent_runtime_classes.py @@ -0,0 +1,632 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.bedrock_agent_runtime_constants import * + +class AccessDeniedExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ParameterTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + value: Optional[str] = None + +class ActionGroupInvocationOutputTypeDef(BaseModel): + text: Optional[str] = None + +class ApiParameterTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + value: Optional[str] = None + +class ContentBodyTypeDef(BaseModel): + body: Optional[str] = None + +class BadGatewayExceptionTypeDef(BaseModel): + message: Optional[str] = None + resourceName: Optional[str] = None + +class CodeInterpreterInvocationInputTypeDef(BaseModel): + code: Optional[str] = None + files: Optional[List[str]] = None + +class CodeInterpreterInvocationOutputTypeDef(BaseModel): + executionError: Optional[str] = None + executionOutput: Optional[str] = None + executionTimeout: Optional[bool] = None + files: Optional[List[str]] = None + +class ConflictExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class DeleteAgentMemoryRequestRequestTypeDef(BaseModel): + agentAliasId: str + agentId: str + memoryId: Optional[str] = None + +class DependencyFailedExceptionTypeDef(BaseModel): + message: Optional[str] = None + resourceName: Optional[str] = None + +class S3ObjectDocTypeDef(BaseModel): + uri: str + +class GuardrailConfigurationTypeDef(BaseModel): + guardrailId: str + guardrailVersion: str + +class PromptTemplateTypeDef(BaseModel): + textPromptTemplate: Optional[str] = None + +class FailureTraceTypeDef(BaseModel): + failureReason: Optional[str] = None + traceId: Optional[str] = None + +class OutputFileTypeDef(BaseModel): + bytes: Optional[bytes] = None + name: Optional[str] = None + type: Optional[str] = None + +class S3ObjectFileTypeDef(BaseModel): + uri: str + +class FilterAttributeTypeDef(BaseModel): + key: str + value: Mapping[str, Any] + +class FinalResponseTypeDef(BaseModel): + text: Optional[str] = None + +class FlowCompletionEventTypeDef(BaseModel): + completionReason: Literal["SUCCESS"] + +class FlowInputContentTypeDef(BaseModel): + document: Optional[Mapping[str, Any]] = None + +class FlowOutputContentTypeDef(BaseModel): + document: Optional[Dict[str, Any]] = None + +class InternalServerExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ResourceNotFoundExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ServiceQuotaExceededExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ThrottlingExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ValidationExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class FunctionParameterTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + value: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetAgentMemoryRequestRequestTypeDef(BaseModel): + agentAliasId: str + agentId: str + memoryId: str + memoryType: Literal["SESSION_SUMMARY"] + maxItems: Optional[int] = None + nextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class GuardrailContentFilterTypeDef(BaseModel): + action: Optional[Literal["BLOCKED"]] = None + confidence: Optional[GuardrailContentFilterConfidenceType] = None + type: Optional[GuardrailContentFilterTypeType] = None + +class GuardrailCustomWordTypeDef(BaseModel): + action: Optional[Literal["BLOCKED"]] = None + match: Optional[str] = None + +class GuardrailManagedWordTypeDef(BaseModel): + action: Optional[Literal["BLOCKED"]] = None + match: Optional[str] = None + type: Optional[Literal["PROFANITY"]] = None + +class GuardrailPiiEntityFilterTypeDef(BaseModel): + action: Optional[GuardrailSensitiveInformationPolicyActionType] = None + match: Optional[str] = None + type: Optional[GuardrailPiiEntityTypeType] = None + +class GuardrailRegexFilterTypeDef(BaseModel): + action: Optional[GuardrailSensitiveInformationPolicyActionType] = None + match: Optional[str] = None + name: Optional[str] = None + regex: Optional[str] = None + +class GuardrailTopicTypeDef(BaseModel): + action: Optional[Literal["BLOCKED"]] = None + name: Optional[str] = None + type: Optional[Literal["DENY"]] = None + +class TextInferenceConfigTypeDef(BaseModel): + maxTokens: Optional[int] = None + stopSequences: Optional[Sequence[str]] = None + temperature: Optional[float] = None + topP: Optional[float] = None + +class InferenceConfigurationTypeDef(BaseModel): + maximumLength: Optional[int] = None + stopSequences: Optional[List[str]] = None + temperature: Optional[float] = None + topK: Optional[int] = None + topP: Optional[float] = None + +class KnowledgeBaseLookupInputTypeDef(BaseModel): + knowledgeBaseId: Optional[str] = None + text: Optional[str] = None + +class KnowledgeBaseQueryTypeDef(BaseModel): + text: str + +class KnowledgeBaseVectorSearchConfigurationTypeDef(BaseModel): + filter: Optional["RetrievalFilterTypeDef"] = None + numberOfResults: Optional[int] = None + overrideSearchType: Optional[SearchTypeType] = None + +class RetrievalResultContentTypeDef(BaseModel): + text: str + +class MemorySessionSummaryTypeDef(BaseModel): + memoryId: Optional[str] = None + sessionExpiryTime: Optional[datetime] = None + sessionId: Optional[str] = None + sessionStartTime: Optional[datetime] = None + summaryText: Optional[str] = None + +class RepromptResponseTypeDef(BaseModel): + source: Optional[SourceType] = None + text: Optional[str] = None + +class QueryTransformationConfigurationTypeDef(BaseModel): + type: Literal["QUERY_DECOMPOSITION"] + +class RationaleTypeDef(BaseModel): + text: Optional[str] = None + traceId: Optional[str] = None + +class PostProcessingParsedResponseTypeDef(BaseModel): + text: Optional[str] = None + +class PreProcessingParsedResponseTypeDef(BaseModel): + isValid: Optional[bool] = None + rationale: Optional[str] = None + +class RetrievalResultConfluenceLocationTypeDef(BaseModel): + url: Optional[str] = None + +class RetrievalResultS3LocationTypeDef(BaseModel): + uri: Optional[str] = None + +class RetrievalResultSalesforceLocationTypeDef(BaseModel): + url: Optional[str] = None + +class RetrievalResultSharePointLocationTypeDef(BaseModel): + url: Optional[str] = None + +class RetrievalResultWebLocationTypeDef(BaseModel): + url: Optional[str] = None + +class RetrieveAndGenerateInputTypeDef(BaseModel): + text: str + +class RetrieveAndGenerateOutputTypeDef(BaseModel): + text: str + +class RetrieveAndGenerateSessionConfigurationTypeDef(BaseModel): + kmsKeyArn: str + +class SpanTypeDef(BaseModel): + end: Optional[int] = None + start: Optional[int] = None + +class PropertyParametersTypeDef(BaseModel): + properties: Optional[List[ParameterTypeDef]] = None + +class RequestBodyTypeDef(BaseModel): + content: Optional[Dict[str, List[ParameterTypeDef]]] = None + +class ApiResultTypeDef(BaseModel): + actionGroup: str + apiPath: Optional[str] = None + httpMethod: Optional[str] = None + httpStatusCode: Optional[int] = None + responseBody: Optional[Mapping[str, ContentBodyTypeDef]] = None + responseState: Optional[ResponseStateType] = None + +class FunctionResultTypeDef(BaseModel): + actionGroup: str + function: Optional[str] = None + responseBody: Optional[Mapping[str, ContentBodyTypeDef]] = None + responseState: Optional[ResponseStateType] = None + +class ByteContentDocTypeDef(BaseModel): + contentType: str + data: BlobTypeDef + identifier: str + +class ByteContentFileTypeDef(BaseModel): + data: BlobTypeDef + mediaType: str + +class FilePartTypeDef(BaseModel): + files: Optional[List[OutputFileTypeDef]] = None + +class RetrievalFilterTypeDef(BaseModel): + andAll: Optional[Sequence[Dict[str, Any]]] = None + equals: Optional[FilterAttributeTypeDef] = None + greaterThan: Optional[FilterAttributeTypeDef] = None + greaterThanOrEquals: Optional[FilterAttributeTypeDef] = None + _in: Optional[FilterAttributeTypeDef] = None + lessThan: Optional[FilterAttributeTypeDef] = None + lessThanOrEquals: Optional[FilterAttributeTypeDef] = None + listContains: Optional[FilterAttributeTypeDef] = None + notEquals: Optional[FilterAttributeTypeDef] = None + notIn: Optional[FilterAttributeTypeDef] = None + orAll: Optional[Sequence[Dict[str, Any]]] = None + startsWith: Optional[FilterAttributeTypeDef] = None + stringContains: Optional[FilterAttributeTypeDef] = None + +class FlowInputTypeDef(BaseModel): + content: FlowInputContentTypeDef + nodeName: str + nodeOutputName: str + +class FlowOutputEventTypeDef(BaseModel): + content: FlowOutputContentTypeDef + nodeName: str + nodeType: NodeTypeType + +class FunctionInvocationInputTypeDef(BaseModel): + actionGroup: str + function: Optional[str] = None + parameters: Optional[List[FunctionParameterTypeDef]] = None + +class GetAgentMemoryRequestGetAgentMemoryPaginateTypeDef(BaseModel): + agentAliasId: str + agentId: str + memoryId: str + memoryType: Literal["SESSION_SUMMARY"] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GuardrailContentPolicyAssessmentTypeDef(BaseModel): + filters: Optional[List[GuardrailContentFilterTypeDef]] = None + +class GuardrailWordPolicyAssessmentTypeDef(BaseModel): + customWords: Optional[List[GuardrailCustomWordTypeDef]] = None + managedWordLists: Optional[List[GuardrailManagedWordTypeDef]] = None + +class GuardrailSensitiveInformationPolicyAssessmentTypeDef(BaseModel): + piiEntities: Optional[List[GuardrailPiiEntityFilterTypeDef]] = None + regexes: Optional[List[GuardrailRegexFilterTypeDef]] = None + +class GuardrailTopicPolicyAssessmentTypeDef(BaseModel): + topics: Optional[List[GuardrailTopicTypeDef]] = None + +class InferenceConfigTypeDef(BaseModel): + textInferenceConfig: Optional[TextInferenceConfigTypeDef] = None + +class ModelInvocationInputTypeDef(BaseModel): + inferenceConfiguration: Optional[InferenceConfigurationTypeDef] = None + overrideLambda: Optional[str] = None + parserMode: Optional[CreationModeType] = None + promptCreationMode: Optional[CreationModeType] = None + text: Optional[str] = None + traceId: Optional[str] = None + type: Optional[PromptTypeType] = None + +class KnowledgeBaseRetrievalConfigurationTypeDef(BaseModel): + vectorSearchConfiguration: KnowledgeBaseVectorSearchConfigurationTypeDef + +class MemoryTypeDef(BaseModel): + sessionSummary: Optional[MemorySessionSummaryTypeDef] = None + +class OrchestrationConfigurationTypeDef(BaseModel): + queryTransformationConfiguration: QueryTransformationConfigurationTypeDef + +class PostProcessingModelInvocationOutputTypeDef(BaseModel): + parsedResponse: Optional[PostProcessingParsedResponseTypeDef] = None + traceId: Optional[str] = None + +class PreProcessingModelInvocationOutputTypeDef(BaseModel): + parsedResponse: Optional[PreProcessingParsedResponseTypeDef] = None + traceId: Optional[str] = None + +class RetrievalResultLocationTypeDef(BaseModel): + type: RetrievalResultLocationTypeType + confluenceLocation: Optional[RetrievalResultConfluenceLocationTypeDef] = None + s3Location: Optional[RetrievalResultS3LocationTypeDef] = None + salesforceLocation: Optional[RetrievalResultSalesforceLocationTypeDef] = None + sharePointLocation: Optional[RetrievalResultSharePointLocationTypeDef] = None + webLocation: Optional[RetrievalResultWebLocationTypeDef] = None + +class TextResponsePartTypeDef(BaseModel): + span: Optional[SpanTypeDef] = None + text: Optional[str] = None + +class ApiRequestBodyTypeDef(BaseModel): + content: Optional[Dict[str, PropertyParametersTypeDef]] = None + +class ActionGroupInvocationInputTypeDef(BaseModel): + actionGroupName: Optional[str] = None + apiPath: Optional[str] = None + executionType: Optional[ExecutionTypeType] = None + function: Optional[str] = None + invocationId: Optional[str] = None + parameters: Optional[List[ParameterTypeDef]] = None + requestBody: Optional[RequestBodyTypeDef] = None + verb: Optional[str] = None + +class InvocationResultMemberTypeDef(BaseModel): + apiResult: Optional[ApiResultTypeDef] = None + functionResult: Optional[FunctionResultTypeDef] = None + +class ExternalSourceTypeDef(BaseModel): + sourceType: ExternalSourceTypeType + byteContent: Optional[ByteContentDocTypeDef] = None + s3Location: Optional[S3ObjectDocTypeDef] = None + +class FileSourceTypeDef(BaseModel): + sourceType: FileSourceTypeType + byteContent: Optional[ByteContentFileTypeDef] = None + s3Location: Optional[S3ObjectFileTypeDef] = None + +class InvokeFlowRequestRequestTypeDef(BaseModel): + flowAliasIdentifier: str + flowIdentifier: str + inputs: Sequence[FlowInputTypeDef] + +class FlowResponseStreamTypeDef(BaseModel): + accessDeniedException: Optional[AccessDeniedExceptionTypeDef] = None + badGatewayException: Optional[BadGatewayExceptionTypeDef] = None + conflictException: Optional[ConflictExceptionTypeDef] = None + dependencyFailedException: Optional[DependencyFailedExceptionTypeDef] = None + flowCompletionEvent: Optional[FlowCompletionEventTypeDef] = None + flowOutputEvent: Optional[FlowOutputEventTypeDef] = None + internalServerException: Optional[InternalServerExceptionTypeDef] = None + resourceNotFoundException: Optional[ResourceNotFoundExceptionTypeDef] = None + serviceQuotaExceededException: Optional[ServiceQuotaExceededExceptionTypeDef] = None + throttlingException: Optional[ThrottlingExceptionTypeDef] = None + validationException: Optional[ValidationExceptionTypeDef] = None + +class GuardrailAssessmentTypeDef(BaseModel): + contentPolicy: Optional[GuardrailContentPolicyAssessmentTypeDef] = None + sensitiveInformationPolicy: Optional[ GuardrailSensitiveInformationPolicyAssessmentTypeDef ] = None + topicPolicy: Optional[GuardrailTopicPolicyAssessmentTypeDef] = None + wordPolicy: Optional[GuardrailWordPolicyAssessmentTypeDef] = None + +class ExternalSourcesGenerationConfigurationTypeDef(BaseModel): + additionalModelRequestFields: Optional[Mapping[str, Mapping[str, Any]]] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + inferenceConfig: Optional[InferenceConfigTypeDef] = None + promptTemplate: Optional[PromptTemplateTypeDef] = None + +class GenerationConfigurationTypeDef(BaseModel): + additionalModelRequestFields: Optional[Mapping[str, Mapping[str, Any]]] = None + guardrailConfiguration: Optional[GuardrailConfigurationTypeDef] = None + inferenceConfig: Optional[InferenceConfigTypeDef] = None + promptTemplate: Optional[PromptTemplateTypeDef] = None + +class KnowledgeBaseConfigurationTypeDef(BaseModel): + knowledgeBaseId: str + retrievalConfiguration: KnowledgeBaseRetrievalConfigurationTypeDef + +class RetrieveRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + retrievalQuery: KnowledgeBaseQueryTypeDef + nextToken: Optional[str] = None + retrievalConfiguration: Optional[KnowledgeBaseRetrievalConfigurationTypeDef] = None + +class RetrieveRequestRetrievePaginateTypeDef(BaseModel): + knowledgeBaseId: str + retrievalQuery: KnowledgeBaseQueryTypeDef + retrievalConfiguration: Optional[KnowledgeBaseRetrievalConfigurationTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAgentMemoryResponseTypeDef(BaseModel): + memoryContents: List[MemoryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PostProcessingTraceTypeDef(BaseModel): + modelInvocationInput: Optional[ModelInvocationInputTypeDef] = None + modelInvocationOutput: Optional[PostProcessingModelInvocationOutputTypeDef] = None + +class PreProcessingTraceTypeDef(BaseModel): + modelInvocationInput: Optional[ModelInvocationInputTypeDef] = None + modelInvocationOutput: Optional[PreProcessingModelInvocationOutputTypeDef] = None + +class KnowledgeBaseRetrievalResultTypeDef(BaseModel): + content: RetrievalResultContentTypeDef + location: Optional[RetrievalResultLocationTypeDef] = None + metadata: Optional[Dict[str, Dict[str, Any]]] = None + score: Optional[float] = None + +class RetrievedReferenceTypeDef(BaseModel): + content: Optional[RetrievalResultContentTypeDef] = None + location: Optional[RetrievalResultLocationTypeDef] = None + metadata: Optional[Dict[str, Dict[str, Any]]] = None + +class GeneratedResponsePartTypeDef(BaseModel): + textResponsePart: Optional[TextResponsePartTypeDef] = None + +class ApiInvocationInputTypeDef(BaseModel): + actionGroup: str + apiPath: Optional[str] = None + httpMethod: Optional[str] = None + parameters: Optional[List[ApiParameterTypeDef]] = None + requestBody: Optional[ApiRequestBodyTypeDef] = None + +class InvocationInputTypeDef(BaseModel): + actionGroupInvocationInput: Optional[ActionGroupInvocationInputTypeDef] = None + codeInterpreterInvocationInput: Optional[CodeInterpreterInvocationInputTypeDef] = None + invocationType: Optional[InvocationTypeType] = None + knowledgeBaseLookupInput: Optional[KnowledgeBaseLookupInputTypeDef] = None + traceId: Optional[str] = None + +class InputFileTypeDef(BaseModel): + name: str + source: FileSourceTypeDef + useCase: FileUseCaseType + +class InvokeFlowResponseTypeDef(BaseModel): + responseStream: "EventStream[FlowResponseStreamTypeDef]" + ResponseMetadata: ResponseMetadataTypeDef + +class GuardrailTraceTypeDef(BaseModel): + action: Optional[GuardrailActionType] = None + inputAssessments: Optional[List[GuardrailAssessmentTypeDef]] = None + outputAssessments: Optional[List[GuardrailAssessmentTypeDef]] = None + traceId: Optional[str] = None + +class ExternalSourcesRetrieveAndGenerateConfigurationTypeDef(BaseModel): + modelArn: str + sources: Sequence[ExternalSourceTypeDef] + generationConfiguration: Optional[ExternalSourcesGenerationConfigurationTypeDef] = None + +class KnowledgeBaseRetrieveAndGenerateConfigurationTypeDef(BaseModel): + knowledgeBaseId: str + modelArn: str + generationConfiguration: Optional[GenerationConfigurationTypeDef] = None + orchestrationConfiguration: Optional[OrchestrationConfigurationTypeDef] = None + retrievalConfiguration: Optional[KnowledgeBaseRetrievalConfigurationTypeDef] = None + +class RetrieveResponseTypeDef(BaseModel): + nextToken: str + retrievalResults: List[KnowledgeBaseRetrievalResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class KnowledgeBaseLookupOutputTypeDef(BaseModel): + retrievedReferences: Optional[List[RetrievedReferenceTypeDef]] = None + +class CitationTypeDef(BaseModel): + generatedResponsePart: Optional[GeneratedResponsePartTypeDef] = None + retrievedReferences: Optional[List[RetrievedReferenceTypeDef]] = None + +class InvocationInputMemberTypeDef(BaseModel): + apiInvocationInput: Optional[ApiInvocationInputTypeDef] = None + functionInvocationInput: Optional[FunctionInvocationInputTypeDef] = None + +class SessionStateTypeDef(BaseModel): + files: Optional[Sequence[InputFileTypeDef]] = None + invocationId: Optional[str] = None + knowledgeBaseConfigurations: Optional[Sequence[KnowledgeBaseConfigurationTypeDef]] = None + promptSessionAttributes: Optional[Mapping[str, str]] = None + returnControlInvocationResults: Optional[Sequence[InvocationResultMemberTypeDef]] = None + sessionAttributes: Optional[Mapping[str, str]] = None + +class RetrieveAndGenerateConfigurationTypeDef(BaseModel): + type: RetrieveAndGenerateTypeType + externalSourcesConfiguration: Optional[ ExternalSourcesRetrieveAndGenerateConfigurationTypeDef ] = None + knowledgeBaseConfiguration: Optional[ KnowledgeBaseRetrieveAndGenerateConfigurationTypeDef ] = None + +class ObservationTypeDef(BaseModel): + actionGroupInvocationOutput: Optional[ActionGroupInvocationOutputTypeDef] = None + codeInterpreterInvocationOutput: Optional[CodeInterpreterInvocationOutputTypeDef] = None + finalResponse: Optional[FinalResponseTypeDef] = None + knowledgeBaseLookupOutput: Optional[KnowledgeBaseLookupOutputTypeDef] = None + repromptResponse: Optional[RepromptResponseTypeDef] = None + traceId: Optional[str] = None + type: Optional[TypeType] = None + +class AttributionTypeDef(BaseModel): + citations: Optional[List[CitationTypeDef]] = None + +class RetrieveAndGenerateResponseTypeDef(BaseModel): + citations: List[CitationTypeDef] + guardrailAction: GuadrailActionType + output: RetrieveAndGenerateOutputTypeDef + sessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReturnControlPayloadTypeDef(BaseModel): + invocationId: Optional[str] = None + invocationInputs: Optional[List[InvocationInputMemberTypeDef]] = None + +class InvokeAgentRequestRequestTypeDef(BaseModel): + agentAliasId: str + agentId: str + sessionId: str + enableTrace: Optional[bool] = None + endSession: Optional[bool] = None + inputText: Optional[str] = None + memoryId: Optional[str] = None + sessionState: Optional[SessionStateTypeDef] = None + +class RetrieveAndGenerateRequestRequestTypeDef(BaseModel): + input: RetrieveAndGenerateInputTypeDef + retrieveAndGenerateConfiguration: Optional[RetrieveAndGenerateConfigurationTypeDef] = None + sessionConfiguration: Optional[RetrieveAndGenerateSessionConfigurationTypeDef] = None + sessionId: Optional[str] = None + +class OrchestrationTraceTypeDef(BaseModel): + invocationInput: Optional[InvocationInputTypeDef] = None + modelInvocationInput: Optional[ModelInvocationInputTypeDef] = None + observation: Optional[ObservationTypeDef] = None + rationale: Optional[RationaleTypeDef] = None + +class PayloadPartTypeDef(BaseModel): + attribution: Optional[AttributionTypeDef] = None + bytes: Optional[bytes] = None + +class TraceTypeDef(BaseModel): + failureTrace: Optional[FailureTraceTypeDef] = None + guardrailTrace: Optional[GuardrailTraceTypeDef] = None + orchestrationTrace: Optional[OrchestrationTraceTypeDef] = None + postProcessingTrace: Optional[PostProcessingTraceTypeDef] = None + preProcessingTrace: Optional[PreProcessingTraceTypeDef] = None + +class TracePartTypeDef(BaseModel): + agentAliasId: Optional[str] = None + agentId: Optional[str] = None + agentVersion: Optional[str] = None + sessionId: Optional[str] = None + trace: Optional[TraceTypeDef] = None + +class ResponseStreamTypeDef(BaseModel): + accessDeniedException: Optional[AccessDeniedExceptionTypeDef] = None + badGatewayException: Optional[BadGatewayExceptionTypeDef] = None + chunk: Optional[PayloadPartTypeDef] = None + conflictException: Optional[ConflictExceptionTypeDef] = None + dependencyFailedException: Optional[DependencyFailedExceptionTypeDef] = None + files: Optional[FilePartTypeDef] = None + internalServerException: Optional[InternalServerExceptionTypeDef] = None + resourceNotFoundException: Optional[ResourceNotFoundExceptionTypeDef] = None + returnControl: Optional[ReturnControlPayloadTypeDef] = None + serviceQuotaExceededException: Optional[ServiceQuotaExceededExceptionTypeDef] = None + throttlingException: Optional[ThrottlingExceptionTypeDef] = None + trace: Optional[TracePartTypeDef] = None + validationException: Optional[ValidationExceptionTypeDef] = None + +class InvokeAgentResponseTypeDef(BaseModel): + completion: "EventStream[ResponseStreamTypeDef]" + contentType: str + memoryId: str + sessionId: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/bedrock_agent_runtime_constants.py b/aws_resource_validator/pydantic_models/bedrock_agent_runtime_constants.py new file mode 100644 index 00000000..9dbd31eb --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_agent_runtime_constants.py @@ -0,0 +1,468 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CreationModeType = Literal["DEFAULT", "OVERRIDDEN"] +ExecutionTypeType = Literal["LAMBDA", "RETURN_CONTROL"] +ExternalSourceTypeType = Literal["BYTE_CONTENT", "S3"] +FileSourceTypeType = Literal["BYTE_CONTENT", "S3"] +FileUseCaseType = Literal["CHAT", "CODE_INTERPRETER"] +FlowCompletionReasonType = Literal["SUCCESS"] +GetAgentMemoryPaginatorName = Literal["get_agent_memory"] +GuadrailActionType = Literal["INTERVENED", "NONE"] +GuardrailActionType = Literal["INTERVENED", "NONE"] +GuardrailContentFilterConfidenceType = Literal["HIGH", "LOW", "MEDIUM", "NONE"] +GuardrailContentFilterTypeType = Literal["HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK", "SEXUAL", "VIOLENCE"] +GuardrailContentPolicyActionType = Literal["BLOCKED"] +GuardrailManagedWordTypeType = Literal["PROFANITY"] +GuardrailPiiEntityTypeType = Literal["ADDRESS", + "AGE", + "AWS_ACCESS_KEY", + "AWS_SECRET_KEY", + "CA_HEALTH_NUMBER", + "CA_SOCIAL_INSURANCE_NUMBER", + "CREDIT_DEBIT_CARD_CVV", + "CREDIT_DEBIT_CARD_EXPIRY", + "CREDIT_DEBIT_CARD_NUMBER", + "DRIVER_ID", + "EMAIL", + "INTERNATIONAL_BANK_ACCOUNT_NUMBER", + "IP_ADDRESS", + "LICENSE_PLATE", + "MAC_ADDRESS", + "NAME", + "PASSWORD", + "PHONE", + "PIN", + "SWIFT_CODE", + "UK_NATIONAL_HEALTH_SERVICE_NUMBER", + "UK_NATIONAL_INSURANCE_NUMBER", + "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", + "URL", + "USERNAME", + "US_BANK_ACCOUNT_NUMBER", + "US_BANK_ROUTING_NUMBER", + "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", + "US_PASSPORT_NUMBER", + "US_SOCIAL_SECURITY_NUMBER", + "VEHICLE_IDENTIFICATION_NUMBER",] +GuardrailSensitiveInformationPolicyActionType = Literal["ANONYMIZED", "BLOCKED"] +GuardrailTopicPolicyActionType = Literal["BLOCKED"] +GuardrailTopicTypeType = Literal["DENY"] +GuardrailWordPolicyActionType = Literal["BLOCKED"] +InvocationTypeType = Literal["ACTION_GROUP", "ACTION_GROUP_CODE_INTERPRETER", "FINISH", "KNOWLEDGE_BASE"] +MemoryTypeType = Literal["SESSION_SUMMARY"] +NodeTypeType = Literal["ConditionNode", + "FlowInputNode", + "FlowOutputNode", + "KnowledgeBaseNode", + "LambdaFunctionNode", + "LexNode", + "PromptNode",] +PromptTypeType = Literal["KNOWLEDGE_BASE_RESPONSE_GENERATION", "ORCHESTRATION", "POST_PROCESSING", "PRE_PROCESSING"] +QueryTransformationTypeType = Literal["QUERY_DECOMPOSITION"] +ResponseStateType = Literal["FAILURE", "REPROMPT"] +RetrievalResultLocationTypeType = Literal["CONFLUENCE", "S3", "SALESFORCE", "SHAREPOINT", "WEB"] +RetrieveAndGenerateTypeType = Literal["EXTERNAL_SOURCES", "KNOWLEDGE_BASE"] +RetrievePaginatorName = Literal["retrieve"] +SearchTypeType = Literal["HYBRID", "SEMANTIC"] +SourceType = Literal["ACTION_GROUP", "KNOWLEDGE_BASE", "PARSER"] +TypeType = Literal["ACTION_GROUP", "ASK_USER", "FINISH", "KNOWLEDGE_BASE", "REPROMPT"] +AgentsforBedrockRuntimeServiceName = Literal["bedrock-agent-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_agent_memory", "retrieve"] +BlobTypeDef = Union[str, bytes, IO[Any]] diff --git a/aws_resource_validator/pydantic_models/bedrock_classes.py b/aws_resource_validator/pydantic_models/bedrock_classes.py new file mode 100644 index 00000000..47d11ae6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_classes.py @@ -0,0 +1,698 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.bedrock_constants import * + +class S3ConfigTypeDef(BaseModel): + bucketName: str + keyPrefix: Optional[str] = None + +class EvaluationOutputDataConfigTypeDef(BaseModel): + s3Uri: str + +class TagTypeDef(BaseModel): + key: str + value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateGuardrailVersionRequestRequestTypeDef(BaseModel): + guardrailIdentifier: str + description: Optional[str] = None + clientRequestToken: Optional[str] = None + +class OutputDataConfigTypeDef(BaseModel): + s3Uri: str + +class TrainingDataConfigTypeDef(BaseModel): + s3Uri: str + +class VpcConfigTypeDef(BaseModel): + subnetIds: Sequence[str] + securityGroupIds: Sequence[str] + +class CustomModelSummaryTypeDef(BaseModel): + modelArn: str + modelName: str + creationTime: datetime + baseModelArn: str + baseModelName: str + customizationType: Optional[CustomizationTypeType] = None + +class DeleteCustomModelRequestRequestTypeDef(BaseModel): + modelIdentifier: str + +class DeleteGuardrailRequestRequestTypeDef(BaseModel): + guardrailIdentifier: str + guardrailVersion: Optional[str] = None + +class DeleteProvisionedModelThroughputRequestRequestTypeDef(BaseModel): + provisionedModelId: str + +class EvaluationBedrockModelTypeDef(BaseModel): + modelIdentifier: str + inferenceParams: str + +class EvaluationDatasetLocationTypeDef(BaseModel): + s3Uri: Optional[str] = None + +class EvaluationSummaryTypeDef(BaseModel): + jobArn: str + jobName: str + status: EvaluationJobStatusType + creationTime: datetime + jobType: EvaluationJobTypeType + evaluationTaskTypes: List[EvaluationTaskTypeType] + modelIdentifiers: List[str] + +class FoundationModelLifecycleTypeDef(BaseModel): + status: FoundationModelLifecycleStatusType + +class GetCustomModelRequestRequestTypeDef(BaseModel): + modelIdentifier: str + +class TrainingMetricsTypeDef(BaseModel): + trainingLoss: Optional[float] = None + +class ValidatorMetricTypeDef(BaseModel): + validationLoss: Optional[float] = None + +class GetEvaluationJobRequestRequestTypeDef(BaseModel): + jobIdentifier: str + +class GetFoundationModelRequestRequestTypeDef(BaseModel): + modelIdentifier: str + +class GetGuardrailRequestRequestTypeDef(BaseModel): + guardrailIdentifier: str + guardrailVersion: Optional[str] = None + +class GetModelCustomizationJobRequestRequestTypeDef(BaseModel): + jobIdentifier: str + +class VpcConfigOutputTypeDef(BaseModel): + subnetIds: List[str] + securityGroupIds: List[str] + +class GetProvisionedModelThroughputRequestRequestTypeDef(BaseModel): + provisionedModelId: str + +class GuardrailContentFilterConfigTypeDef(BaseModel): + type: GuardrailContentFilterTypeType + inputStrength: GuardrailFilterStrengthType + outputStrength: GuardrailFilterStrengthType + +class GuardrailContentFilterTypeDef(BaseModel): + type: GuardrailContentFilterTypeType + inputStrength: GuardrailFilterStrengthType + outputStrength: GuardrailFilterStrengthType + +class GuardrailContextualGroundingFilterConfigTypeDef(BaseModel): + type: GuardrailContextualGroundingFilterTypeType + threshold: float + +class GuardrailContextualGroundingFilterTypeDef(BaseModel): + type: GuardrailContextualGroundingFilterTypeType + threshold: float + +class GuardrailManagedWordsConfigTypeDef(BaseModel): + type: Literal["PROFANITY"] + +class GuardrailManagedWordsTypeDef(BaseModel): + type: Literal["PROFANITY"] + +class GuardrailPiiEntityConfigTypeDef(BaseModel): + type: GuardrailPiiEntityTypeType + action: GuardrailSensitiveInformationActionType + +class GuardrailPiiEntityTypeDef(BaseModel): + type: GuardrailPiiEntityTypeType + action: GuardrailSensitiveInformationActionType + +class GuardrailRegexConfigTypeDef(BaseModel): + name: str + pattern: str + action: GuardrailSensitiveInformationActionType + description: Optional[str] = None + +class GuardrailRegexTypeDef(BaseModel): + name: str + pattern: str + action: GuardrailSensitiveInformationActionType + description: Optional[str] = None + +class GuardrailSummaryTypeDef(BaseModel): + id: str + arn: str + status: GuardrailStatusType + name: str + version: str + createdAt: datetime + updatedAt: datetime + description: Optional[str] = None + +class GuardrailTopicConfigTypeDef(BaseModel): + name: str + definition: str + type: Literal["DENY"] + examples: Optional[Sequence[str]] = None + +class GuardrailTopicTypeDef(BaseModel): + name: str + definition: str + examples: Optional[List[str]] = None + type: Optional[Literal["DENY"]] = None + +class GuardrailWordConfigTypeDef(BaseModel): + text: str + +class GuardrailWordTypeDef(BaseModel): + text: str + +class HumanEvaluationCustomMetricTypeDef(BaseModel): + name: str + ratingMethod: str + description: Optional[str] = None + +class HumanWorkflowConfigTypeDef(BaseModel): + flowDefinitionArn: str + instructions: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListFoundationModelsRequestRequestTypeDef(BaseModel): + byProvider: Optional[str] = None + byCustomizationType: Optional[ModelCustomizationType] = None + byOutputModality: Optional[ModelModalityType] = None + byInferenceType: Optional[InferenceTypeType] = None + +class ListGuardrailsRequestRequestTypeDef(BaseModel): + guardrailIdentifier: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ModelCustomizationJobSummaryTypeDef(BaseModel): + jobArn: str + baseModelArn: str + jobName: str + status: ModelCustomizationJobStatusType + creationTime: datetime + lastModifiedTime: Optional[datetime] = None + endTime: Optional[datetime] = None + customModelArn: Optional[str] = None + customModelName: Optional[str] = None + customizationType: Optional[CustomizationTypeType] = None + +class ProvisionedModelSummaryTypeDef(BaseModel): + provisionedModelName: str + provisionedModelArn: str + modelArn: str + desiredModelArn: str + foundationModelArn: str + modelUnits: int + desiredModelUnits: int + status: ProvisionedModelStatusType + creationTime: datetime + lastModifiedTime: datetime + commitmentDuration: Optional[CommitmentDurationType] = None + commitmentExpirationTime: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + +class StopEvaluationJobRequestRequestTypeDef(BaseModel): + jobIdentifier: str + +class StopModelCustomizationJobRequestRequestTypeDef(BaseModel): + jobIdentifier: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tagKeys: Sequence[str] + +class UpdateProvisionedModelThroughputRequestRequestTypeDef(BaseModel): + provisionedModelId: str + desiredProvisionedModelName: Optional[str] = None + desiredModelId: Optional[str] = None + +class ValidatorTypeDef(BaseModel): + s3Uri: str + +class CloudWatchConfigTypeDef(BaseModel): + logGroupName: str + roleArn: str + largeDataDeliveryS3Config: Optional[S3ConfigTypeDef] = None + +class CreateProvisionedModelThroughputRequestRequestTypeDef(BaseModel): + modelUnits: int + provisionedModelName: str + modelId: str + clientRequestToken: Optional[str] = None + commitmentDuration: Optional[CommitmentDurationType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tags: Sequence[TagTypeDef] + +class CreateEvaluationJobResponseTypeDef(BaseModel): + jobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGuardrailResponseTypeDef(BaseModel): + guardrailId: str + guardrailArn: str + version: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGuardrailVersionResponseTypeDef(BaseModel): + guardrailId: str + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelCustomizationJobResponseTypeDef(BaseModel): + jobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisionedModelThroughputResponseTypeDef(BaseModel): + provisionedModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProvisionedModelThroughputResponseTypeDef(BaseModel): + modelUnits: int + desiredModelUnits: int + provisionedModelName: str + provisionedModelArn: str + modelArn: str + desiredModelArn: str + foundationModelArn: str + status: ProvisionedModelStatusType + creationTime: datetime + lastModifiedTime: datetime + failureMessage: str + commitmentDuration: CommitmentDurationType + commitmentExpirationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGuardrailResponseTypeDef(BaseModel): + guardrailId: str + guardrailArn: str + version: str + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomModelsResponseTypeDef(BaseModel): + nextToken: str + modelSummaries: List[CustomModelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluationModelConfigTypeDef(BaseModel): + bedrockModel: Optional[EvaluationBedrockModelTypeDef] = None + +class EvaluationDatasetTypeDef(BaseModel): + name: str + datasetLocation: Optional[EvaluationDatasetLocationTypeDef] = None + +class ListEvaluationJobsResponseTypeDef(BaseModel): + nextToken: str + jobSummaries: List[EvaluationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FoundationModelDetailsTypeDef(BaseModel): + modelArn: str + modelId: str + modelName: Optional[str] = None + providerName: Optional[str] = None + inputModalities: Optional[List[ModelModalityType]] = None + outputModalities: Optional[List[ModelModalityType]] = None + responseStreamingSupported: Optional[bool] = None + customizationsSupported: Optional[List[ModelCustomizationType]] = None + inferenceTypesSupported: Optional[List[InferenceTypeType]] = None + modelLifecycle: Optional[FoundationModelLifecycleTypeDef] = None + +class FoundationModelSummaryTypeDef(BaseModel): + modelArn: str + modelId: str + modelName: Optional[str] = None + providerName: Optional[str] = None + inputModalities: Optional[List[ModelModalityType]] = None + outputModalities: Optional[List[ModelModalityType]] = None + responseStreamingSupported: Optional[bool] = None + customizationsSupported: Optional[List[ModelCustomizationType]] = None + inferenceTypesSupported: Optional[List[InferenceTypeType]] = None + modelLifecycle: Optional[FoundationModelLifecycleTypeDef] = None + +class GuardrailContentPolicyConfigTypeDef(BaseModel): + filtersConfig: Sequence[GuardrailContentFilterConfigTypeDef] + +class GuardrailContentPolicyTypeDef(BaseModel): + filters: Optional[List[GuardrailContentFilterTypeDef]] = None + +class GuardrailContextualGroundingPolicyConfigTypeDef(BaseModel): + filtersConfig: Sequence[GuardrailContextualGroundingFilterConfigTypeDef] + +class GuardrailContextualGroundingPolicyTypeDef(BaseModel): + filters: List[GuardrailContextualGroundingFilterTypeDef] + +class GuardrailSensitiveInformationPolicyConfigTypeDef(BaseModel): + piiEntitiesConfig: Optional[Sequence[GuardrailPiiEntityConfigTypeDef]] = None + regexesConfig: Optional[Sequence[GuardrailRegexConfigTypeDef]] = None + +class GuardrailSensitiveInformationPolicyTypeDef(BaseModel): + piiEntities: Optional[List[GuardrailPiiEntityTypeDef]] = None + regexes: Optional[List[GuardrailRegexTypeDef]] = None + +class ListGuardrailsResponseTypeDef(BaseModel): + guardrails: List[GuardrailSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GuardrailTopicPolicyConfigTypeDef(BaseModel): + topicsConfig: Sequence[GuardrailTopicConfigTypeDef] + +class GuardrailTopicPolicyTypeDef(BaseModel): + topics: List[GuardrailTopicTypeDef] + +class GuardrailWordPolicyConfigTypeDef(BaseModel): + wordsConfig: Optional[Sequence[GuardrailWordConfigTypeDef]] = None + managedWordListsConfig: Optional[Sequence[GuardrailManagedWordsConfigTypeDef]] = None + +class GuardrailWordPolicyTypeDef(BaseModel): + words: Optional[List[GuardrailWordTypeDef]] = None + managedWordLists: Optional[List[GuardrailManagedWordsTypeDef]] = None + +class ListGuardrailsRequestListGuardrailsPaginateTypeDef(BaseModel): + guardrailIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomModelsRequestListCustomModelsPaginateTypeDef(BaseModel): + creationTimeBefore: Optional[TimestampTypeDef] = None + creationTimeAfter: Optional[TimestampTypeDef] = None + nameContains: Optional[str] = None + baseModelArnEquals: Optional[str] = None + foundationModelArnEquals: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomModelsRequestRequestTypeDef(BaseModel): + creationTimeBefore: Optional[TimestampTypeDef] = None + creationTimeAfter: Optional[TimestampTypeDef] = None + nameContains: Optional[str] = None + baseModelArnEquals: Optional[str] = None + foundationModelArnEquals: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + +class ListEvaluationJobsRequestListEvaluationJobsPaginateTypeDef(BaseModel): + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + statusEquals: Optional[EvaluationJobStatusType] = None + nameContains: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEvaluationJobsRequestRequestTypeDef(BaseModel): + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + statusEquals: Optional[EvaluationJobStatusType] = None + nameContains: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + +class ListModelCustomizationJobsRequestListModelCustomizationJobsPaginateTypeDef(BaseModel): + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + statusEquals: Optional[FineTuningJobStatusType] = None + nameContains: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelCustomizationJobsRequestRequestTypeDef(BaseModel): + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + statusEquals: Optional[FineTuningJobStatusType] = None + nameContains: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + +class ListProvisionedModelThroughputsRequestListProvisionedModelThroughputsPaginateTypeDef(BaseModel): + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + statusEquals: Optional[ProvisionedModelStatusType] = None + modelArnEquals: Optional[str] = None + nameContains: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProvisionedModelThroughputsRequestRequestTypeDef(BaseModel): + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + statusEquals: Optional[ProvisionedModelStatusType] = None + modelArnEquals: Optional[str] = None + nameContains: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[Literal["CreationTime"]] = None + sortOrder: Optional[SortOrderType] = None + +class ListModelCustomizationJobsResponseTypeDef(BaseModel): + nextToken: str + modelCustomizationJobSummaries: List[ModelCustomizationJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisionedModelThroughputsResponseTypeDef(BaseModel): + nextToken: str + provisionedModelSummaries: List[ProvisionedModelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ValidationDataConfigOutputTypeDef(BaseModel): + validators: List[ValidatorTypeDef] + +class ValidationDataConfigTypeDef(BaseModel): + validators: Sequence[ValidatorTypeDef] + +class LoggingConfigTypeDef(BaseModel): + cloudWatchConfig: Optional[CloudWatchConfigTypeDef] = None + s3Config: Optional[S3ConfigTypeDef] = None + textDataDeliveryEnabled: Optional[bool] = None + imageDataDeliveryEnabled: Optional[bool] = None + embeddingDataDeliveryEnabled: Optional[bool] = None + +class EvaluationInferenceConfigOutputTypeDef(BaseModel): + models: Optional[List[EvaluationModelConfigTypeDef]] = None + +class EvaluationInferenceConfigTypeDef(BaseModel): + models: Optional[Sequence[EvaluationModelConfigTypeDef]] = None + +class EvaluationDatasetMetricConfigOutputTypeDef(BaseModel): + taskType: EvaluationTaskTypeType + dataset: EvaluationDatasetTypeDef + metricNames: List[str] + +class EvaluationDatasetMetricConfigTypeDef(BaseModel): + taskType: EvaluationTaskTypeType + dataset: EvaluationDatasetTypeDef + metricNames: Sequence[str] + +class GetFoundationModelResponseTypeDef(BaseModel): + modelDetails: FoundationModelDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFoundationModelsResponseTypeDef(BaseModel): + modelSummaries: List[FoundationModelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGuardrailRequestRequestTypeDef(BaseModel): + name: str + blockedInputMessaging: str + blockedOutputsMessaging: str + description: Optional[str] = None + topicPolicyConfig: Optional[GuardrailTopicPolicyConfigTypeDef] = None + contentPolicyConfig: Optional[GuardrailContentPolicyConfigTypeDef] = None + wordPolicyConfig: Optional[GuardrailWordPolicyConfigTypeDef] = None + sensitiveInformationPolicyConfig: Optional[ GuardrailSensitiveInformationPolicyConfigTypeDef ] = None + contextualGroundingPolicyConfig: Optional[ GuardrailContextualGroundingPolicyConfigTypeDef ] = None + kmsKeyId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + clientRequestToken: Optional[str] = None + +class UpdateGuardrailRequestRequestTypeDef(BaseModel): + guardrailIdentifier: str + name: str + blockedInputMessaging: str + blockedOutputsMessaging: str + description: Optional[str] = None + topicPolicyConfig: Optional[GuardrailTopicPolicyConfigTypeDef] = None + contentPolicyConfig: Optional[GuardrailContentPolicyConfigTypeDef] = None + wordPolicyConfig: Optional[GuardrailWordPolicyConfigTypeDef] = None + sensitiveInformationPolicyConfig: Optional[ GuardrailSensitiveInformationPolicyConfigTypeDef ] = None + contextualGroundingPolicyConfig: Optional[ GuardrailContextualGroundingPolicyConfigTypeDef ] = None + kmsKeyId: Optional[str] = None + +class GetGuardrailResponseTypeDef(BaseModel): + name: str + description: str + guardrailId: str + guardrailArn: str + version: str + status: GuardrailStatusType + topicPolicy: GuardrailTopicPolicyTypeDef + contentPolicy: GuardrailContentPolicyTypeDef + wordPolicy: GuardrailWordPolicyTypeDef + sensitiveInformationPolicy: GuardrailSensitiveInformationPolicyTypeDef + contextualGroundingPolicy: GuardrailContextualGroundingPolicyTypeDef + createdAt: datetime + updatedAt: datetime + statusReasons: List[str] + failureRecommendations: List[str] + blockedInputMessaging: str + blockedOutputsMessaging: str + kmsKeyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomModelResponseTypeDef(BaseModel): + modelArn: str + modelName: str + jobName: str + jobArn: str + baseModelArn: str + customizationType: CustomizationTypeType + modelKmsKeyArn: str + hyperParameters: Dict[str, str] + trainingDataConfig: TrainingDataConfigTypeDef + validationDataConfig: ValidationDataConfigOutputTypeDef + outputDataConfig: OutputDataConfigTypeDef + trainingMetrics: TrainingMetricsTypeDef + validationMetrics: List[ValidatorMetricTypeDef] + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelCustomizationJobResponseTypeDef(BaseModel): + jobArn: str + jobName: str + outputModelName: str + outputModelArn: str + clientRequestToken: str + roleArn: str + status: ModelCustomizationJobStatusType + failureMessage: str + creationTime: datetime + lastModifiedTime: datetime + endTime: datetime + baseModelArn: str + hyperParameters: Dict[str, str] + trainingDataConfig: TrainingDataConfigTypeDef + validationDataConfig: ValidationDataConfigOutputTypeDef + outputDataConfig: OutputDataConfigTypeDef + customizationType: CustomizationTypeType + outputModelKmsKeyArn: str + trainingMetrics: TrainingMetricsTypeDef + validationMetrics: List[ValidatorMetricTypeDef] + vpcConfig: VpcConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelCustomizationJobRequestRequestTypeDef(BaseModel): + jobName: str + customModelName: str + roleArn: str + baseModelIdentifier: str + trainingDataConfig: TrainingDataConfigTypeDef + outputDataConfig: OutputDataConfigTypeDef + hyperParameters: Mapping[str, str] + clientRequestToken: Optional[str] = None + customizationType: Optional[CustomizationTypeType] = None + customModelKmsKeyId: Optional[str] = None + jobTags: Optional[Sequence[TagTypeDef]] = None + customModelTags: Optional[Sequence[TagTypeDef]] = None + validationDataConfig: Optional[ValidationDataConfigTypeDef] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + +class GetModelInvocationLoggingConfigurationResponseTypeDef(BaseModel): + loggingConfig: LoggingConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutModelInvocationLoggingConfigurationRequestRequestTypeDef(BaseModel): + loggingConfig: LoggingConfigTypeDef + +class AutomatedEvaluationConfigOutputTypeDef(BaseModel): + datasetMetricConfigs: List[EvaluationDatasetMetricConfigOutputTypeDef] + +class HumanEvaluationConfigOutputTypeDef(BaseModel): + datasetMetricConfigs: List[EvaluationDatasetMetricConfigOutputTypeDef] + humanWorkflowConfig: Optional[HumanWorkflowConfigTypeDef] = None + customMetrics: Optional[List[HumanEvaluationCustomMetricTypeDef]] = None + +class AutomatedEvaluationConfigTypeDef(BaseModel): + datasetMetricConfigs: Sequence[EvaluationDatasetMetricConfigTypeDef] + +class HumanEvaluationConfigTypeDef(BaseModel): + datasetMetricConfigs: Sequence[EvaluationDatasetMetricConfigTypeDef] + humanWorkflowConfig: Optional[HumanWorkflowConfigTypeDef] = None + customMetrics: Optional[Sequence[HumanEvaluationCustomMetricTypeDef]] = None + +class EvaluationConfigOutputTypeDef(BaseModel): + automated: Optional[AutomatedEvaluationConfigOutputTypeDef] = None + human: Optional[HumanEvaluationConfigOutputTypeDef] = None + +class EvaluationConfigTypeDef(BaseModel): + automated: Optional[AutomatedEvaluationConfigTypeDef] = None + human: Optional[HumanEvaluationConfigTypeDef] = None + +class GetEvaluationJobResponseTypeDef(BaseModel): + jobName: str + status: EvaluationJobStatusType + jobArn: str + jobDescription: str + roleArn: str + customerEncryptionKeyId: str + jobType: EvaluationJobTypeType + evaluationConfig: EvaluationConfigOutputTypeDef + inferenceConfig: EvaluationInferenceConfigOutputTypeDef + outputDataConfig: EvaluationOutputDataConfigTypeDef + creationTime: datetime + lastModifiedTime: datetime + failureMessages: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEvaluationJobRequestRequestTypeDef(BaseModel): + jobName: str + roleArn: str + evaluationConfig: EvaluationConfigTypeDef + inferenceConfig: EvaluationInferenceConfigTypeDef + outputDataConfig: EvaluationOutputDataConfigTypeDef + jobDescription: Optional[str] = None + clientRequestToken: Optional[str] = None + customerEncryptionKeyId: Optional[str] = None + jobTags: Optional[Sequence[TagTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/bedrock_constants.py b/aws_resource_validator/pydantic_models/bedrock_constants.py new file mode 100644 index 00000000..cfe5f62e --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_constants.py @@ -0,0 +1,481 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CommitmentDurationType = Literal["OneMonth", "SixMonths"] +CustomizationTypeType = Literal["CONTINUED_PRE_TRAINING", "FINE_TUNING"] +EvaluationJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +EvaluationJobTypeType = Literal["Automated", "Human"] +EvaluationTaskTypeType = Literal["Classification", "Custom", "Generation", "QuestionAndAnswer", "Summarization"] +FineTuningJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +FoundationModelLifecycleStatusType = Literal["ACTIVE", "LEGACY"] +GuardrailContentFilterTypeType = Literal["HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK", "SEXUAL", "VIOLENCE"] +GuardrailContextualGroundingFilterTypeType = Literal["GROUNDING", "RELEVANCE"] +GuardrailFilterStrengthType = Literal["HIGH", "LOW", "MEDIUM", "NONE"] +GuardrailManagedWordsTypeType = Literal["PROFANITY"] +GuardrailPiiEntityTypeType = Literal["ADDRESS", + "AGE", + "AWS_ACCESS_KEY", + "AWS_SECRET_KEY", + "CA_HEALTH_NUMBER", + "CA_SOCIAL_INSURANCE_NUMBER", + "CREDIT_DEBIT_CARD_CVV", + "CREDIT_DEBIT_CARD_EXPIRY", + "CREDIT_DEBIT_CARD_NUMBER", + "DRIVER_ID", + "EMAIL", + "INTERNATIONAL_BANK_ACCOUNT_NUMBER", + "IP_ADDRESS", + "LICENSE_PLATE", + "MAC_ADDRESS", + "NAME", + "PASSWORD", + "PHONE", + "PIN", + "SWIFT_CODE", + "UK_NATIONAL_HEALTH_SERVICE_NUMBER", + "UK_NATIONAL_INSURANCE_NUMBER", + "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", + "URL", + "USERNAME", + "US_BANK_ACCOUNT_NUMBER", + "US_BANK_ROUTING_NUMBER", + "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", + "US_PASSPORT_NUMBER", + "US_SOCIAL_SECURITY_NUMBER", + "VEHICLE_IDENTIFICATION_NUMBER",] +GuardrailSensitiveInformationActionType = Literal["ANONYMIZE", "BLOCK"] +GuardrailStatusType = Literal["CREATING", "DELETING", "FAILED", "READY", "UPDATING", "VERSIONING"] +GuardrailTopicTypeType = Literal["DENY"] +InferenceTypeType = Literal["ON_DEMAND", "PROVISIONED"] +ListCustomModelsPaginatorName = Literal["list_custom_models"] +ListEvaluationJobsPaginatorName = Literal["list_evaluation_jobs"] +ListGuardrailsPaginatorName = Literal["list_guardrails"] +ListModelCustomizationJobsPaginatorName = Literal["list_model_customization_jobs"] +ListProvisionedModelThroughputsPaginatorName = Literal["list_provisioned_model_throughputs"] +ModelCustomizationJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +ModelCustomizationType = Literal["CONTINUED_PRE_TRAINING", "FINE_TUNING"] +ModelModalityType = Literal["EMBEDDING", "IMAGE", "TEXT"] +ProvisionedModelStatusType = Literal["Creating", "Failed", "InService", "Updating"] +SortByProvisionedModelsType = Literal["CreationTime"] +SortJobsByType = Literal["CreationTime"] +SortModelsByType = Literal["CreationTime"] +SortOrderType = Literal["Ascending", "Descending"] +BedrockServiceName = Literal["bedrock"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_custom_models", + "list_evaluation_jobs", + "list_guardrails", + "list_model_customization_jobs", + "list_provisioned_model_throughputs",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +VpcConfigUnionTypeDef = Union['VpcConfigTypeDef', 'VpcConfigOutputTypeDef'] +ValidationDataConfigUnionTypeDef = Union[ 'ValidationDataConfigTypeDef', 'ValidationDataConfigOutputTypeDef' ] +EvaluationInferenceConfigUnionTypeDef = Union[ 'EvaluationInferenceConfigTypeDef', 'EvaluationInferenceConfigOutputTypeDef' ] +EvaluationConfigUnionTypeDef = Union['EvaluationConfigTypeDef', 'EvaluationConfigOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/bedrock_runtime_classes.py b/aws_resource_validator/pydantic_models/bedrock_runtime_classes.py new file mode 100644 index 00000000..9064b436 --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_runtime_classes.py @@ -0,0 +1,419 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from botocore.response import StreamingBody +from aws_resource_validator.pydantic_models.bedrock_runtime_constants import * + +class GuardrailOutputContentTypeDef(BaseModel): + text: Optional[str] = None + +class GuardrailUsageTypeDef(BaseModel): + topicPolicyUnits: int + contentPolicyUnits: int + wordPolicyUnits: int + sensitiveInformationPolicyUnits: int + sensitiveInformationPolicyFreeUnits: int + contextualGroundingPolicyUnits: int + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ToolUseBlockDeltaTypeDef(BaseModel): + input: str + +class ToolUseBlockOutputTypeDef(BaseModel): + toolUseId: str + name: str + input: Dict[str, Any] + +class ToolUseBlockStartTypeDef(BaseModel): + toolUseId: str + name: str + +class ContentBlockStopEventTypeDef(BaseModel): + contentBlockIndex: int + +class ToolUseBlockTypeDef(BaseModel): + toolUseId: str + name: str + input: Mapping[str, Any] + +class ConverseMetricsTypeDef(BaseModel): + latencyMs: int + +class GuardrailConfigurationTypeDef(BaseModel): + guardrailIdentifier: str + guardrailVersion: str + trace: Optional[GuardrailTraceType] = None + +class InferenceConfigurationTypeDef(BaseModel): + maxTokens: Optional[int] = None + temperature: Optional[float] = None + topP: Optional[float] = None + stopSequences: Optional[Sequence[str]] = None + +class TokenUsageTypeDef(BaseModel): + inputTokens: int + outputTokens: int + totalTokens: int + +class ConverseStreamMetricsTypeDef(BaseModel): + latencyMs: int + +class InternalServerExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class MessageStartEventTypeDef(BaseModel): + role: ConversationRoleType + +class MessageStopEventTypeDef(BaseModel): + stopReason: StopReasonType + additionalModelResponseFields: Optional[Dict[str, Any]] = None + +class ModelStreamErrorExceptionTypeDef(BaseModel): + message: Optional[str] = None + originalStatusCode: Optional[int] = None + originalMessage: Optional[str] = None + +class ThrottlingExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ValidationExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class GuardrailStreamConfigurationTypeDef(BaseModel): + guardrailIdentifier: str + guardrailVersion: str + trace: Optional[GuardrailTraceType] = None + streamProcessingMode: Optional[GuardrailStreamProcessingModeType] = None + +class DocumentSourceOutputTypeDef(BaseModel): + bytes: Optional[bytes] = None + +class GuardrailTextBlockTypeDef(BaseModel): + text: str + qualifiers: Optional[Sequence[GuardrailContentQualifierType]] = None + +class GuardrailContentFilterTypeDef(BaseModel): + type: GuardrailContentFilterTypeType + confidence: GuardrailContentFilterConfidenceType + action: Literal["BLOCKED"] + +class GuardrailContextualGroundingFilterTypeDef(BaseModel): + type: GuardrailContextualGroundingFilterTypeType + threshold: float + score: float + action: GuardrailContextualGroundingPolicyActionType + +class GuardrailConverseTextBlockOutputTypeDef(BaseModel): + text: str + qualifiers: Optional[List[GuardrailConverseContentQualifierType]] = None + +class GuardrailConverseTextBlockTypeDef(BaseModel): + text: str + qualifiers: Optional[Sequence[GuardrailConverseContentQualifierType]] = None + +class GuardrailCustomWordTypeDef(BaseModel): + match: str + action: Literal["BLOCKED"] + +class GuardrailManagedWordTypeDef(BaseModel): + match: str + type: Literal["PROFANITY"] + action: Literal["BLOCKED"] + +class GuardrailPiiEntityFilterTypeDef(BaseModel): + match: str + type: GuardrailPiiEntityTypeType + action: GuardrailSensitiveInformationPolicyActionType + +class GuardrailRegexFilterTypeDef(BaseModel): + action: GuardrailSensitiveInformationPolicyActionType + name: Optional[str] = None + match: Optional[str] = None + regex: Optional[str] = None + +class GuardrailTopicTypeDef(BaseModel): + name: str + type: Literal["DENY"] + action: Literal["BLOCKED"] + +class ImageSourceOutputTypeDef(BaseModel): + bytes: Optional[bytes] = None + +class ModelTimeoutExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class PayloadPartTypeDef(BaseModel): + bytes: Optional[bytes] = None + +class SpecificToolChoiceTypeDef(BaseModel): + name: str + +class ToolInputSchemaTypeDef(BaseModel): + json: Optional[Mapping[str, Any]] = None + +class InvokeModelResponseTypeDef(BaseModel): + body: StreamingBody + contentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentSourceTypeDef(BaseModel): + bytes: Optional[BlobTypeDef] = None + +class ImageSourceTypeDef(BaseModel): + bytes: Optional[BlobTypeDef] = None + +class InvokeModelRequestRequestTypeDef(BaseModel): + body: BlobTypeDef + modelId: str + contentType: Optional[str] = None + accept: Optional[str] = None + trace: Optional[TraceType] = None + guardrailIdentifier: Optional[str] = None + guardrailVersion: Optional[str] = None + +class InvokeModelWithResponseStreamRequestRequestTypeDef(BaseModel): + body: BlobTypeDef + modelId: str + contentType: Optional[str] = None + accept: Optional[str] = None + trace: Optional[TraceType] = None + guardrailIdentifier: Optional[str] = None + guardrailVersion: Optional[str] = None + +class ContentBlockDeltaTypeDef(BaseModel): + text: Optional[str] = None + toolUse: Optional[ToolUseBlockDeltaTypeDef] = None + +class ContentBlockStartTypeDef(BaseModel): + toolUse: Optional[ToolUseBlockStartTypeDef] = None + +class DocumentBlockOutputTypeDef(BaseModel): + format: DocumentFormatType + name: str + source: DocumentSourceOutputTypeDef + +class GuardrailContentBlockTypeDef(BaseModel): + text: Optional[GuardrailTextBlockTypeDef] = None + +class GuardrailContentPolicyAssessmentTypeDef(BaseModel): + filters: List[GuardrailContentFilterTypeDef] + +class GuardrailContextualGroundingPolicyAssessmentTypeDef(BaseModel): + filters: Optional[List[GuardrailContextualGroundingFilterTypeDef]] = None + +class GuardrailConverseContentBlockOutputTypeDef(BaseModel): + text: Optional[GuardrailConverseTextBlockOutputTypeDef] = None + +class GuardrailConverseContentBlockTypeDef(BaseModel): + text: Optional[GuardrailConverseTextBlockTypeDef] = None + +class GuardrailWordPolicyAssessmentTypeDef(BaseModel): + customWords: List[GuardrailCustomWordTypeDef] + managedWordLists: List[GuardrailManagedWordTypeDef] + +class GuardrailSensitiveInformationPolicyAssessmentTypeDef(BaseModel): + piiEntities: List[GuardrailPiiEntityFilterTypeDef] + regexes: List[GuardrailRegexFilterTypeDef] + +class GuardrailTopicPolicyAssessmentTypeDef(BaseModel): + topics: List[GuardrailTopicTypeDef] + +class ImageBlockOutputTypeDef(BaseModel): + format: ImageFormatType + source: ImageSourceOutputTypeDef + +class ResponseStreamTypeDef(BaseModel): + chunk: Optional[PayloadPartTypeDef] = None + internalServerException: Optional[InternalServerExceptionTypeDef] = None + modelStreamErrorException: Optional[ModelStreamErrorExceptionTypeDef] = None + validationException: Optional[ValidationExceptionTypeDef] = None + throttlingException: Optional[ThrottlingExceptionTypeDef] = None + modelTimeoutException: Optional[ModelTimeoutExceptionTypeDef] = None + +class ToolChoiceTypeDef(BaseModel): + auto: Optional[Mapping[str, Any]] = None + any: Optional[Mapping[str, Any]] = None + tool: Optional[SpecificToolChoiceTypeDef] = None + +class ToolSpecificationTypeDef(BaseModel): + name: str + inputSchema: ToolInputSchemaTypeDef + description: Optional[str] = None + +class DocumentBlockTypeDef(BaseModel): + format: DocumentFormatType + name: str + source: DocumentSourceTypeDef + +class ImageBlockTypeDef(BaseModel): + format: ImageFormatType + source: ImageSourceTypeDef + +class ContentBlockDeltaEventTypeDef(BaseModel): + delta: ContentBlockDeltaTypeDef + contentBlockIndex: int + +class ContentBlockStartEventTypeDef(BaseModel): + start: ContentBlockStartTypeDef + contentBlockIndex: int + +class ApplyGuardrailRequestRequestTypeDef(BaseModel): + guardrailIdentifier: str + guardrailVersion: str + source: GuardrailContentSourceType + content: Sequence[GuardrailContentBlockTypeDef] + +class SystemContentBlockTypeDef(BaseModel): + text: Optional[str] = None + guardContent: Optional[GuardrailConverseContentBlockTypeDef] = None + +class GuardrailAssessmentTypeDef(BaseModel): + topicPolicy: Optional[GuardrailTopicPolicyAssessmentTypeDef] = None + contentPolicy: Optional[GuardrailContentPolicyAssessmentTypeDef] = None + wordPolicy: Optional[GuardrailWordPolicyAssessmentTypeDef] = None + sensitiveInformationPolicy: Optional[ GuardrailSensitiveInformationPolicyAssessmentTypeDef ] = None + contextualGroundingPolicy: Optional[ GuardrailContextualGroundingPolicyAssessmentTypeDef ] = None + +class ToolResultContentBlockOutputTypeDef(BaseModel): + json: Optional[Dict[str, Any]] = None + text: Optional[str] = None + image: Optional[ImageBlockOutputTypeDef] = None + document: Optional[DocumentBlockOutputTypeDef] = None + +class InvokeModelWithResponseStreamResponseTypeDef(BaseModel): + body: "EventStream[ResponseStreamTypeDef]" + contentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class ToolTypeDef(BaseModel): + toolSpec: Optional[ToolSpecificationTypeDef] = None + +class ToolResultContentBlockTypeDef(BaseModel): + json: Optional[Mapping[str, Any]] = None + text: Optional[str] = None + image: Optional[ImageBlockTypeDef] = None + document: Optional[DocumentBlockTypeDef] = None + +class ApplyGuardrailResponseTypeDef(BaseModel): + usage: GuardrailUsageTypeDef + action: GuardrailActionType + outputs: List[GuardrailOutputContentTypeDef] + assessments: List[GuardrailAssessmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GuardrailTraceAssessmentTypeDef(BaseModel): + modelOutput: Optional[List[str]] = None + inputAssessment: Optional[Dict[str, GuardrailAssessmentTypeDef]] = None + outputAssessments: Optional[Dict[str, List[GuardrailAssessmentTypeDef]]] = None + +class ToolResultBlockOutputTypeDef(BaseModel): + toolUseId: str + content: List[ToolResultContentBlockOutputTypeDef] + status: Optional[ToolResultStatusType] = None + +class ToolConfigurationTypeDef(BaseModel): + tools: Sequence[ToolTypeDef] + toolChoice: Optional[ToolChoiceTypeDef] = None + +class ToolResultBlockTypeDef(BaseModel): + toolUseId: str + content: Sequence[ToolResultContentBlockTypeDef] + status: Optional[ToolResultStatusType] = None + +class ConverseStreamTraceTypeDef(BaseModel): + guardrail: Optional[GuardrailTraceAssessmentTypeDef] = None + +class ConverseTraceTypeDef(BaseModel): + guardrail: Optional[GuardrailTraceAssessmentTypeDef] = None + +class ContentBlockOutputTypeDef(BaseModel): + text: Optional[str] = None + image: Optional[ImageBlockOutputTypeDef] = None + document: Optional[DocumentBlockOutputTypeDef] = None + toolUse: Optional[ToolUseBlockOutputTypeDef] = None + toolResult: Optional[ToolResultBlockOutputTypeDef] = None + guardContent: Optional[GuardrailConverseContentBlockOutputTypeDef] = None + +class ContentBlockTypeDef(BaseModel): + text: Optional[str] = None + image: Optional[ImageBlockTypeDef] = None + document: Optional[DocumentBlockTypeDef] = None + toolUse: Optional[ToolUseBlockTypeDef] = None + toolResult: Optional[ToolResultBlockTypeDef] = None + guardContent: Optional[GuardrailConverseContentBlockTypeDef] = None + +class ConverseStreamMetadataEventTypeDef(BaseModel): + usage: TokenUsageTypeDef + metrics: ConverseStreamMetricsTypeDef + trace: Optional[ConverseStreamTraceTypeDef] = None + +class MessageOutputTypeDef(BaseModel): + role: ConversationRoleType + content: List[ContentBlockOutputTypeDef] + +class MessageTypeDef(BaseModel): + role: ConversationRoleType + content: Sequence[ContentBlockTypeDef] + +class ConverseStreamOutputTypeDef(BaseModel): + messageStart: Optional[MessageStartEventTypeDef] = None + contentBlockStart: Optional[ContentBlockStartEventTypeDef] = None + contentBlockDelta: Optional[ContentBlockDeltaEventTypeDef] = None + contentBlockStop: Optional[ContentBlockStopEventTypeDef] = None + messageStop: Optional[MessageStopEventTypeDef] = None + metadata: Optional[ConverseStreamMetadataEventTypeDef] = None + internalServerException: Optional[InternalServerExceptionTypeDef] = None + modelStreamErrorException: Optional[ModelStreamErrorExceptionTypeDef] = None + validationException: Optional[ValidationExceptionTypeDef] = None + throttlingException: Optional[ThrottlingExceptionTypeDef] = None + +class ConverseOutputTypeDef(BaseModel): + message: Optional[MessageOutputTypeDef] = None + +class ConverseStreamResponseTypeDef(BaseModel): + stream: "EventStream[ConverseStreamOutputTypeDef]" + ResponseMetadata: ResponseMetadataTypeDef + +class ConverseResponseTypeDef(BaseModel): + output: ConverseOutputTypeDef + stopReason: StopReasonType + usage: TokenUsageTypeDef + metrics: ConverseMetricsTypeDef + additionalModelResponseFields: Dict[str, Any] + trace: ConverseTraceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConverseRequestRequestTypeDef(BaseModel): + modelId: str + messages: Sequence[MessageUnionTypeDef] + system: Optional[Sequence[SystemContentBlockTypeDef]] = None + inferenceConfig: Optional[InferenceConfigurationTypeDef] = None + toolConfig: Optional[ToolConfigurationTypeDef] = None + guardrailConfig: Optional[GuardrailConfigurationTypeDef] = None + additionalModelRequestFields: Optional[Mapping[str, Any]] = None + additionalModelResponseFieldPaths: Optional[Sequence[str]] = None + +class ConverseStreamRequestRequestTypeDef(BaseModel): + modelId: str + messages: Sequence[MessageUnionTypeDef] + system: Optional[Sequence[SystemContentBlockTypeDef]] = None + inferenceConfig: Optional[InferenceConfigurationTypeDef] = None + toolConfig: Optional[ToolConfigurationTypeDef] = None + guardrailConfig: Optional[GuardrailStreamConfigurationTypeDef] = None + additionalModelRequestFields: Optional[Mapping[str, Any]] = None + additionalModelResponseFieldPaths: Optional[Sequence[str]] = None + diff --git a/aws_resource_validator/pydantic_models/bedrock_runtime_constants.py b/aws_resource_validator/pydantic_models/bedrock_runtime_constants.py new file mode 100644 index 00000000..61f88dd3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/bedrock_runtime_constants.py @@ -0,0 +1,460 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConversationRoleType = Literal["assistant", "user"] +DocumentFormatType = Literal["csv", "doc", "docx", "html", "md", "pdf", "txt", "xls", "xlsx"] +GuardrailActionType = Literal["GUARDRAIL_INTERVENED", "NONE"] +GuardrailContentFilterConfidenceType = Literal["HIGH", "LOW", "MEDIUM", "NONE"] +GuardrailContentFilterTypeType = Literal["HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK", "SEXUAL", "VIOLENCE"] +GuardrailContentPolicyActionType = Literal["BLOCKED"] +GuardrailContentQualifierType = Literal["grounding_source", "guard_content", "query"] +GuardrailContentSourceType = Literal["INPUT", "OUTPUT"] +GuardrailContextualGroundingFilterTypeType = Literal["GROUNDING", "RELEVANCE"] +GuardrailContextualGroundingPolicyActionType = Literal["BLOCKED", "NONE"] +GuardrailConverseContentQualifierType = Literal["grounding_source", "guard_content", "query"] +GuardrailManagedWordTypeType = Literal["PROFANITY"] +GuardrailPiiEntityTypeType = Literal["ADDRESS", + "AGE", + "AWS_ACCESS_KEY", + "AWS_SECRET_KEY", + "CA_HEALTH_NUMBER", + "CA_SOCIAL_INSURANCE_NUMBER", + "CREDIT_DEBIT_CARD_CVV", + "CREDIT_DEBIT_CARD_EXPIRY", + "CREDIT_DEBIT_CARD_NUMBER", + "DRIVER_ID", + "EMAIL", + "INTERNATIONAL_BANK_ACCOUNT_NUMBER", + "IP_ADDRESS", + "LICENSE_PLATE", + "MAC_ADDRESS", + "NAME", + "PASSWORD", + "PHONE", + "PIN", + "SWIFT_CODE", + "UK_NATIONAL_HEALTH_SERVICE_NUMBER", + "UK_NATIONAL_INSURANCE_NUMBER", + "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", + "URL", + "USERNAME", + "US_BANK_ACCOUNT_NUMBER", + "US_BANK_ROUTING_NUMBER", + "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", + "US_PASSPORT_NUMBER", + "US_SOCIAL_SECURITY_NUMBER", + "VEHICLE_IDENTIFICATION_NUMBER",] +GuardrailSensitiveInformationPolicyActionType = Literal["ANONYMIZED", "BLOCKED"] +GuardrailStreamProcessingModeType = Literal["async", "sync"] +GuardrailTopicPolicyActionType = Literal["BLOCKED"] +GuardrailTopicTypeType = Literal["DENY"] +GuardrailTraceType = Literal["disabled", "enabled"] +GuardrailWordPolicyActionType = Literal["BLOCKED"] +ImageFormatType = Literal["gif", "jpeg", "png", "webp"] +StopReasonType = Literal["content_filtered", + "end_turn", + "guardrail_intervened", + "max_tokens", + "stop_sequence", + "tool_use",] +ToolResultStatusType = Literal["error", "success"] +TraceType = Literal["DISABLED", "ENABLED"] +BedrockRuntimeServiceName = Literal["bedrock-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +BlobTypeDef = Union[str, bytes, IO[Any]] +MessageUnionTypeDef = Union['MessageTypeDef', 'MessageOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/billingconductor_classes.py b/aws_resource_validator/pydantic_models/billingconductor_classes.py new file mode 100644 index 00000000..9ac4a042 --- /dev/null +++ b/aws_resource_validator/pydantic_models/billingconductor_classes.py @@ -0,0 +1,708 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.billingconductor_constants import * + +class AccountAssociationsListElementTypeDef(BaseModel): + AccountId: Optional[str] = None + BillingGroupArn: Optional[str] = None + AccountName: Optional[str] = None + AccountEmail: Optional[str] = None + +class AccountGroupingTypeDef(BaseModel): + LinkedAccountIds: Sequence[str] + AutoAssociate: Optional[bool] = None + +class AssociateAccountsInputRequestTypeDef(BaseModel): + Arn: str + AccountIds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociatePricingRulesInputRequestTypeDef(BaseModel): + Arn: str + PricingRuleArns: Sequence[str] + +class AssociateResourceErrorTypeDef(BaseModel): + Message: Optional[str] = None + Reason: Optional[AssociateResourceErrorReasonType] = None + +class AttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class CustomLineItemBillingPeriodRangeTypeDef(BaseModel): + InclusiveStartBillingPeriod: str + ExclusiveEndBillingPeriod: Optional[str] = None + +class BillingGroupCostReportElementTypeDef(BaseModel): + Arn: Optional[str] = None + AWSCost: Optional[str] = None + ProformaCost: Optional[str] = None + Margin: Optional[str] = None + MarginPercentage: Optional[str] = None + Currency: Optional[str] = None + +class ComputationPreferenceTypeDef(BaseModel): + PricingPlanArn: str + +class ListBillingGroupAccountGroupingTypeDef(BaseModel): + AutoAssociate: Optional[bool] = None + +class BillingPeriodRangeTypeDef(BaseModel): + InclusiveStartBillingPeriod: str + ExclusiveEndBillingPeriod: str + +class CreateFreeTierConfigTypeDef(BaseModel): + Activated: bool + +class CreatePricingPlanInputRequestTypeDef(BaseModel): + Name: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + PricingRuleArns: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class CustomLineItemFlatChargeDetailsTypeDef(BaseModel): + ChargeValue: float + +class CustomLineItemPercentageChargeDetailsTypeDef(BaseModel): + PercentageValue: float + AssociatedValues: Optional[Sequence[str]] = None + +class LineItemFilterTypeDef(BaseModel): + Attribute: Literal["LINE_ITEM_TYPE"] + MatchOption: Literal["NOT_EQUAL"] + Values: Sequence[Literal["SAVINGS_PLAN_NEGATION"]] + +class DeleteBillingGroupInputRequestTypeDef(BaseModel): + Arn: str + +class DeletePricingPlanInputRequestTypeDef(BaseModel): + Arn: str + +class DeletePricingRuleInputRequestTypeDef(BaseModel): + Arn: str + +class DisassociateAccountsInputRequestTypeDef(BaseModel): + Arn: str + AccountIds: Sequence[str] + +class DisassociatePricingRulesInputRequestTypeDef(BaseModel): + Arn: str + PricingRuleArns: Sequence[str] + +class FreeTierConfigTypeDef(BaseModel): + Activated: bool + +class LineItemFilterPaginatorTypeDef(BaseModel): + Attribute: Literal["LINE_ITEM_TYPE"] + MatchOption: Literal["NOT_EQUAL"] + Values: List[Literal["SAVINGS_PLAN_NEGATION"]] + +class ListAccountAssociationsFilterTypeDef(BaseModel): + Association: Optional[str] = None + AccountId: Optional[str] = None + AccountIds: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBillingGroupCostReportsFilterTypeDef(BaseModel): + BillingGroupArns: Optional[Sequence[str]] = None + +class ListBillingGroupsFilterTypeDef(BaseModel): + Arns: Optional[Sequence[str]] = None + PricingPlan: Optional[str] = None + Statuses: Optional[Sequence[BillingGroupStatusType]] = None + AutoAssociate: Optional[bool] = None + +class ListCustomLineItemFlatChargeDetailsTypeDef(BaseModel): + ChargeValue: float + +class ListCustomLineItemPercentageChargeDetailsTypeDef(BaseModel): + PercentageValue: float + +class ListCustomLineItemVersionsBillingPeriodRangeFilterTypeDef(BaseModel): + StartBillingPeriod: Optional[str] = None + EndBillingPeriod: Optional[str] = None + +class ListCustomLineItemsFilterTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + BillingGroups: Optional[Sequence[str]] = None + Arns: Optional[Sequence[str]] = None + AccountIds: Optional[Sequence[str]] = None + +class ListPricingPlansAssociatedWithPricingRuleInputRequestTypeDef(BaseModel): + PricingRuleArn: str + BillingPeriod: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPricingPlansFilterTypeDef(BaseModel): + Arns: Optional[Sequence[str]] = None + +class PricingPlanListElementTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Description: Optional[str] = None + Size: Optional[int] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + +class ListPricingRulesAssociatedToPricingPlanInputRequestTypeDef(BaseModel): + PricingPlanArn: str + BillingPeriod: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPricingRulesFilterTypeDef(BaseModel): + Arns: Optional[Sequence[str]] = None + +class ListResourcesAssociatedToCustomLineItemFilterTypeDef(BaseModel): + Relationship: Optional[CustomLineItemRelationshipType] = None + +class ListResourcesAssociatedToCustomLineItemResponseElementTypeDef(BaseModel): + Arn: Optional[str] = None + Relationship: Optional[CustomLineItemRelationshipType] = None + EndBillingPeriod: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateBillingGroupAccountGroupingTypeDef(BaseModel): + AutoAssociate: Optional[bool] = None + +class UpdateCustomLineItemFlatChargeDetailsTypeDef(BaseModel): + ChargeValue: float + +class UpdateCustomLineItemPercentageChargeDetailsTypeDef(BaseModel): + PercentageValue: float + +class UpdateFreeTierConfigTypeDef(BaseModel): + Activated: bool + +class UpdatePricingPlanInputRequestTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + Description: Optional[str] = None + +class AssociateAccountsOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociatePricingRulesOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBillingGroupOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomLineItemOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePricingPlanOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePricingRuleOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBillingGroupOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCustomLineItemOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePricingPlanOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePricingRuleOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateAccountsOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociatePricingRulesOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAssociationsOutputTypeDef(BaseModel): + LinkedAccounts: List[AccountAssociationsListElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPricingPlansAssociatedWithPricingRuleOutputTypeDef(BaseModel): + BillingPeriod: str + PricingRuleArn: str + PricingPlanArns: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPricingRulesAssociatedToPricingPlanOutputTypeDef(BaseModel): + BillingPeriod: str + PricingPlanArn: str + PricingRuleArns: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePricingPlanOutputTypeDef(BaseModel): + Arn: str + Name: str + Description: str + Size: int + LastModifiedTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateResourceResponseElementTypeDef(BaseModel): + Arn: Optional[str] = None + Error: Optional[AssociateResourceErrorTypeDef] = None + +class DisassociateResourceResponseElementTypeDef(BaseModel): + Arn: Optional[str] = None + Error: Optional[AssociateResourceErrorTypeDef] = None + +class BillingGroupCostReportResultElementTypeDef(BaseModel): + Arn: Optional[str] = None + AWSCost: Optional[str] = None + ProformaCost: Optional[str] = None + Margin: Optional[str] = None + MarginPercentage: Optional[str] = None + Currency: Optional[str] = None + Attributes: Optional[List[AttributeTypeDef]] = None + +class BatchAssociateResourcesToCustomLineItemInputRequestTypeDef(BaseModel): + TargetArn: str + ResourceArns: Sequence[str] + BillingPeriodRange: Optional[CustomLineItemBillingPeriodRangeTypeDef] = None + +class BatchDisassociateResourcesFromCustomLineItemInputRequestTypeDef(BaseModel): + TargetArn: str + ResourceArns: Sequence[str] + BillingPeriodRange: Optional[CustomLineItemBillingPeriodRangeTypeDef] = None + +class DeleteCustomLineItemInputRequestTypeDef(BaseModel): + Arn: str + BillingPeriodRange: Optional[CustomLineItemBillingPeriodRangeTypeDef] = None + +class ListBillingGroupCostReportsOutputTypeDef(BaseModel): + BillingGroupCostReports: List[BillingGroupCostReportElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBillingGroupInputRequestTypeDef(BaseModel): + Name: str + AccountGrouping: AccountGroupingTypeDef + ComputationPreference: ComputationPreferenceTypeDef + ClientToken: Optional[str] = None + PrimaryAccountId: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class BillingGroupListElementTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Description: Optional[str] = None + PrimaryAccountId: Optional[str] = None + ComputationPreference: Optional[ComputationPreferenceTypeDef] = None + Size: Optional[int] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + Status: Optional[BillingGroupStatusType] = None + StatusReason: Optional[str] = None + AccountGrouping: Optional[ListBillingGroupAccountGroupingTypeDef] = None + +class GetBillingGroupCostReportInputRequestTypeDef(BaseModel): + Arn: str + BillingPeriodRange: Optional[BillingPeriodRangeTypeDef] = None + GroupBy: Optional[Sequence[GroupByAttributeNameType]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class CreateTieringInputTypeDef(BaseModel): + FreeTier: CreateFreeTierConfigTypeDef + +class CustomLineItemChargeDetailsTypeDef(BaseModel): + Type: CustomLineItemTypeType + Flat: Optional[CustomLineItemFlatChargeDetailsTypeDef] = None + Percentage: Optional[CustomLineItemPercentageChargeDetailsTypeDef] = None + LineItemFilters: Optional[Sequence[LineItemFilterTypeDef]] = None + +class TieringTypeDef(BaseModel): + FreeTier: FreeTierConfigTypeDef + +class ListAccountAssociationsInputRequestTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListAccountAssociationsFilterTypeDef] = None + NextToken: Optional[str] = None + +class ListAccountAssociationsInputListAccountAssociationsPaginateTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListAccountAssociationsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPricingPlansAssociatedWithPricingRuleInputListPricingPlansAssociatedWithPricingRulePaginateTypeDef(BaseModel): + PricingRuleArn: str + BillingPeriod: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPricingRulesAssociatedToPricingPlanInputListPricingRulesAssociatedToPricingPlanPaginateTypeDef(BaseModel): + PricingPlanArn: str + BillingPeriod: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBillingGroupCostReportsInputListBillingGroupCostReportsPaginateTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListBillingGroupCostReportsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBillingGroupCostReportsInputRequestTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[ListBillingGroupCostReportsFilterTypeDef] = None + +class ListBillingGroupsInputListBillingGroupsPaginateTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListBillingGroupsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBillingGroupsInputRequestTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[ListBillingGroupsFilterTypeDef] = None + +class ListCustomLineItemChargeDetailsPaginatorTypeDef(BaseModel): + Type: CustomLineItemTypeType + Flat: Optional[ListCustomLineItemFlatChargeDetailsTypeDef] = None + Percentage: Optional[ListCustomLineItemPercentageChargeDetailsTypeDef] = None + LineItemFilters: Optional[List[LineItemFilterPaginatorTypeDef]] = None + +class ListCustomLineItemChargeDetailsTypeDef(BaseModel): + Type: CustomLineItemTypeType + Flat: Optional[ListCustomLineItemFlatChargeDetailsTypeDef] = None + Percentage: Optional[ListCustomLineItemPercentageChargeDetailsTypeDef] = None + LineItemFilters: Optional[List[LineItemFilterTypeDef]] = None + +class ListCustomLineItemVersionsFilterTypeDef(BaseModel): + BillingPeriodRange: Optional[ ListCustomLineItemVersionsBillingPeriodRangeFilterTypeDef ] = None + +class ListCustomLineItemsInputListCustomLineItemsPaginateTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListCustomLineItemsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomLineItemsInputRequestTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[ListCustomLineItemsFilterTypeDef] = None + +class ListPricingPlansInputListPricingPlansPaginateTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListPricingPlansFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPricingPlansInputRequestTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListPricingPlansFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPricingPlansOutputTypeDef(BaseModel): + BillingPeriod: str + PricingPlans: List[PricingPlanListElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPricingRulesInputListPricingRulesPaginateTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListPricingRulesFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPricingRulesInputRequestTypeDef(BaseModel): + BillingPeriod: Optional[str] = None + Filters: Optional[ListPricingRulesFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListResourcesAssociatedToCustomLineItemInputListResourcesAssociatedToCustomLineItemPaginateTypeDef(BaseModel): + Arn: str + BillingPeriod: Optional[str] = None + Filters: Optional[ListResourcesAssociatedToCustomLineItemFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourcesAssociatedToCustomLineItemInputRequestTypeDef(BaseModel): + Arn: str + BillingPeriod: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[ListResourcesAssociatedToCustomLineItemFilterTypeDef] = None + +class ListResourcesAssociatedToCustomLineItemOutputTypeDef(BaseModel): + Arn: str + AssociatedResources: List[ListResourcesAssociatedToCustomLineItemResponseElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBillingGroupInputRequestTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + Status: Optional[BillingGroupStatusType] = None + ComputationPreference: Optional[ComputationPreferenceTypeDef] = None + Description: Optional[str] = None + AccountGrouping: Optional[UpdateBillingGroupAccountGroupingTypeDef] = None + +class UpdateBillingGroupOutputTypeDef(BaseModel): + Arn: str + Name: str + Description: str + PrimaryAccountId: str + PricingPlanArn: str + Size: int + LastModifiedTime: int + Status: BillingGroupStatusType + StatusReason: str + AccountGrouping: UpdateBillingGroupAccountGroupingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCustomLineItemChargeDetailsTypeDef(BaseModel): + Flat: Optional[UpdateCustomLineItemFlatChargeDetailsTypeDef] = None + Percentage: Optional[UpdateCustomLineItemPercentageChargeDetailsTypeDef] = None + LineItemFilters: Optional[Sequence[LineItemFilterTypeDef]] = None + +class UpdateTieringInputTypeDef(BaseModel): + FreeTier: UpdateFreeTierConfigTypeDef + +class BatchAssociateResourcesToCustomLineItemOutputTypeDef(BaseModel): + SuccessfullyAssociatedResources: List[AssociateResourceResponseElementTypeDef] + FailedAssociatedResources: List[AssociateResourceResponseElementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateResourcesFromCustomLineItemOutputTypeDef(BaseModel): + SuccessfullyDisassociatedResources: List[DisassociateResourceResponseElementTypeDef] + FailedDisassociatedResources: List[DisassociateResourceResponseElementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBillingGroupCostReportOutputTypeDef(BaseModel): + BillingGroupCostReportResults: List[BillingGroupCostReportResultElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBillingGroupsOutputTypeDef(BaseModel): + BillingGroups: List[BillingGroupListElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePricingRuleInputRequestTypeDef(BaseModel): + Name: str + Scope: PricingRuleScopeType + Type: PricingRuleTypeType + ClientToken: Optional[str] = None + Description: Optional[str] = None + ModifierPercentage: Optional[float] = None + Service: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + BillingEntity: Optional[str] = None + Tiering: Optional[CreateTieringInputTypeDef] = None + UsageType: Optional[str] = None + Operation: Optional[str] = None + +class CreateCustomLineItemInputRequestTypeDef(BaseModel): + Name: str + Description: str + BillingGroupArn: str + ChargeDetails: CustomLineItemChargeDetailsTypeDef + ClientToken: Optional[str] = None + BillingPeriodRange: Optional[CustomLineItemBillingPeriodRangeTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + AccountId: Optional[str] = None + +class PricingRuleListElementTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Description: Optional[str] = None + Scope: Optional[PricingRuleScopeType] = None + Type: Optional[PricingRuleTypeType] = None + ModifierPercentage: Optional[float] = None + Service: Optional[str] = None + AssociatedPricingPlanCount: Optional[int] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + BillingEntity: Optional[str] = None + Tiering: Optional[TieringTypeDef] = None + UsageType: Optional[str] = None + Operation: Optional[str] = None + +class CustomLineItemListElementPaginatorTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + ChargeDetails: Optional[ListCustomLineItemChargeDetailsPaginatorTypeDef] = None + CurrencyCode: Optional[CurrencyCodeType] = None + Description: Optional[str] = None + ProductCode: Optional[str] = None + BillingGroupArn: Optional[str] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + AssociationSize: Optional[int] = None + AccountId: Optional[str] = None + +class CustomLineItemVersionListElementPaginatorTypeDef(BaseModel): + Name: Optional[str] = None + ChargeDetails: Optional[ListCustomLineItemChargeDetailsPaginatorTypeDef] = None + CurrencyCode: Optional[CurrencyCodeType] = None + Description: Optional[str] = None + ProductCode: Optional[str] = None + BillingGroupArn: Optional[str] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + AssociationSize: Optional[int] = None + StartBillingPeriod: Optional[str] = None + EndBillingPeriod: Optional[str] = None + Arn: Optional[str] = None + StartTime: Optional[int] = None + AccountId: Optional[str] = None + +class CustomLineItemListElementTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + ChargeDetails: Optional[ListCustomLineItemChargeDetailsTypeDef] = None + CurrencyCode: Optional[CurrencyCodeType] = None + Description: Optional[str] = None + ProductCode: Optional[str] = None + BillingGroupArn: Optional[str] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + AssociationSize: Optional[int] = None + AccountId: Optional[str] = None + +class CustomLineItemVersionListElementTypeDef(BaseModel): + Name: Optional[str] = None + ChargeDetails: Optional[ListCustomLineItemChargeDetailsTypeDef] = None + CurrencyCode: Optional[CurrencyCodeType] = None + Description: Optional[str] = None + ProductCode: Optional[str] = None + BillingGroupArn: Optional[str] = None + CreationTime: Optional[int] = None + LastModifiedTime: Optional[int] = None + AssociationSize: Optional[int] = None + StartBillingPeriod: Optional[str] = None + EndBillingPeriod: Optional[str] = None + Arn: Optional[str] = None + StartTime: Optional[int] = None + AccountId: Optional[str] = None + +class UpdateCustomLineItemOutputTypeDef(BaseModel): + Arn: str + BillingGroupArn: str + Name: str + Description: str + ChargeDetails: ListCustomLineItemChargeDetailsTypeDef + LastModifiedTime: int + AssociationSize: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomLineItemVersionsInputListCustomLineItemVersionsPaginateTypeDef(BaseModel): + Arn: str + Filters: Optional[ListCustomLineItemVersionsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomLineItemVersionsInputRequestTypeDef(BaseModel): + Arn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[ListCustomLineItemVersionsFilterTypeDef] = None + +class UpdateCustomLineItemInputRequestTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + Description: Optional[str] = None + ChargeDetails: Optional[UpdateCustomLineItemChargeDetailsTypeDef] = None + BillingPeriodRange: Optional[CustomLineItemBillingPeriodRangeTypeDef] = None + +class UpdatePricingRuleInputRequestTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + Description: Optional[str] = None + Type: Optional[PricingRuleTypeType] = None + ModifierPercentage: Optional[float] = None + Tiering: Optional[UpdateTieringInputTypeDef] = None + +class UpdatePricingRuleOutputTypeDef(BaseModel): + Arn: str + Name: str + Description: str + Scope: PricingRuleScopeType + Type: PricingRuleTypeType + ModifierPercentage: float + Service: str + AssociatedPricingPlanCount: int + LastModifiedTime: int + BillingEntity: str + Tiering: UpdateTieringInputTypeDef + UsageType: str + Operation: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPricingRulesOutputTypeDef(BaseModel): + BillingPeriod: str + PricingRules: List[PricingRuleListElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomLineItemsOutputPaginatorTypeDef(BaseModel): + CustomLineItems: List[CustomLineItemListElementPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomLineItemVersionsOutputPaginatorTypeDef(BaseModel): + CustomLineItemVersions: List[CustomLineItemVersionListElementPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomLineItemsOutputTypeDef(BaseModel): + CustomLineItems: List[CustomLineItemListElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomLineItemVersionsOutputTypeDef(BaseModel): + CustomLineItemVersions: List[CustomLineItemVersionListElementTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/billingconductor_constants.py b/aws_resource_validator/pydantic_models/billingconductor_constants.py new file mode 100644 index 00000000..ec05d124 --- /dev/null +++ b/aws_resource_validator/pydantic_models/billingconductor_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssociateResourceErrorReasonType = Literal["ILLEGAL_CUSTOMLINEITEM", + "INTERNAL_SERVER_EXCEPTION", + "INVALID_ARN", + "INVALID_BILLING_PERIOD_RANGE", + "SERVICE_LIMIT_EXCEEDED",] +BillingGroupStatusType = Literal["ACTIVE", "PRIMARY_ACCOUNT_MISSING"] +CurrencyCodeType = Literal["CNY", "USD"] +CustomLineItemRelationshipType = Literal["CHILD", "PARENT"] +CustomLineItemTypeType = Literal["CREDIT", "FEE"] +GroupByAttributeNameType = Literal["BILLING_PERIOD", "PRODUCT_NAME"] +LineItemFilterAttributeNameType = Literal["LINE_ITEM_TYPE"] +LineItemFilterValueType = Literal["SAVINGS_PLAN_NEGATION"] +ListAccountAssociationsPaginatorName = Literal["list_account_associations"] +ListBillingGroupCostReportsPaginatorName = Literal["list_billing_group_cost_reports"] +ListBillingGroupsPaginatorName = Literal["list_billing_groups"] +ListCustomLineItemVersionsPaginatorName = Literal["list_custom_line_item_versions"] +ListCustomLineItemsPaginatorName = Literal["list_custom_line_items"] +ListPricingPlansAssociatedWithPricingRulePaginatorName = Literal["list_pricing_plans_associated_with_pricing_rule"] +ListPricingPlansPaginatorName = Literal["list_pricing_plans"] +ListPricingRulesAssociatedToPricingPlanPaginatorName = Literal["list_pricing_rules_associated_to_pricing_plan"] +ListPricingRulesPaginatorName = Literal["list_pricing_rules"] +ListResourcesAssociatedToCustomLineItemPaginatorName = Literal["list_resources_associated_to_custom_line_item"] +MatchOptionType = Literal["NOT_EQUAL"] +PricingRuleScopeType = Literal["BILLING_ENTITY", "GLOBAL", "SERVICE", "SKU"] +PricingRuleTypeType = Literal["DISCOUNT", "MARKUP", "TIERING"] +BillingConductorServiceName = Literal["billingconductor"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_account_associations", + "list_billing_group_cost_reports", + "list_billing_groups", + "list_custom_line_item_versions", + "list_custom_line_items", + "list_pricing_plans", + "list_pricing_plans_associated_with_pricing_rule", + "list_pricing_rules", + "list_pricing_rules_associated_to_pricing_plan", + "list_resources_associated_to_custom_line_item",] diff --git a/aws_resource_validator/pydantic_models/braket_classes.py b/aws_resource_validator/pydantic_models/braket_classes.py new file mode 100644 index 00000000..e24af968 --- /dev/null +++ b/aws_resource_validator/pydantic_models/braket_classes.py @@ -0,0 +1,305 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.braket_constants import * + +class ContainerImageTypeDef(BaseModel): + uri: str + +class ScriptModeConfigTypeDef(BaseModel): + entryPoint: str + s3Uri: str + compressionType: Optional[CompressionTypeType] = None + +class AssociationTypeDef(BaseModel): + arn: str + type: Literal["RESERVATION_TIME_WINDOW_ARN"] + +class CancelJobRequestRequestTypeDef(BaseModel): + jobArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CancelQuantumTaskRequestRequestTypeDef(BaseModel): + clientToken: str + quantumTaskArn: str + +class DeviceConfigTypeDef(BaseModel): + device: str + +class InstanceConfigTypeDef(BaseModel): + instanceType: InstanceTypeType + volumeSizeInGb: int + instanceCount: Optional[int] = None + +class JobCheckpointConfigTypeDef(BaseModel): + s3Uri: str + localPath: Optional[str] = None + +class JobOutputDataConfigTypeDef(BaseModel): + s3Path: str + kmsKeyId: Optional[str] = None + +class JobStoppingConditionTypeDef(BaseModel): + maxRuntimeInSeconds: Optional[int] = None + +class S3DataSourceTypeDef(BaseModel): + s3Uri: str + +class DeviceQueueInfoTypeDef(BaseModel): + queue: QueueNameType + queueSize: str + queuePriority: Optional[QueuePriorityType] = None + +class DeviceSummaryTypeDef(BaseModel): + deviceArn: str + deviceName: str + deviceStatus: DeviceStatusType + deviceType: DeviceTypeType + providerName: str + +class GetDeviceRequestRequestTypeDef(BaseModel): + deviceArn: str + +class GetJobRequestRequestTypeDef(BaseModel): + jobArn: str + additionalAttributeNames: Optional[Sequence[Literal["QueueInfo"]]] = None + +class HybridJobQueueInfoTypeDef(BaseModel): + position: str + queue: QueueNameType + message: Optional[str] = None + +class JobEventDetailsTypeDef(BaseModel): + eventType: Optional[JobEventTypeType] = None + message: Optional[str] = None + timeOfEvent: Optional[datetime] = None + +class GetQuantumTaskRequestRequestTypeDef(BaseModel): + quantumTaskArn: str + additionalAttributeNames: Optional[Sequence[Literal["QueueInfo"]]] = None + +class QuantumTaskQueueInfoTypeDef(BaseModel): + position: str + queue: QueueNameType + message: Optional[str] = None + queuePriority: Optional[QueuePriorityType] = None + +class JobSummaryTypeDef(BaseModel): + createdAt: datetime + device: str + jobArn: str + jobName: str + status: JobPrimaryStatusType + endedAt: Optional[datetime] = None + startedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class QuantumTaskSummaryTypeDef(BaseModel): + createdAt: datetime + deviceArn: str + outputS3Bucket: str + outputS3Directory: str + quantumTaskArn: str + shots: int + status: QuantumTaskStatusType + endedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class SearchDevicesFilterTypeDef(BaseModel): + name: str + values: Sequence[str] + +class SearchJobsFilterTypeDef(BaseModel): + name: str + operator: SearchJobsFilterOperatorType + values: Sequence[str] + +class SearchQuantumTasksFilterTypeDef(BaseModel): + name: str + operator: SearchQuantumTasksFilterOperatorType + values: Sequence[str] + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AlgorithmSpecificationTypeDef(BaseModel): + containerImage: Optional[ContainerImageTypeDef] = None + scriptModeConfig: Optional[ScriptModeConfigTypeDef] = None + +class CreateQuantumTaskRequestRequestTypeDef(BaseModel): + action: str + clientToken: str + deviceArn: str + outputS3Bucket: str + outputS3KeyPrefix: str + shots: int + associations: Optional[Sequence[AssociationTypeDef]] = None + deviceParameters: Optional[str] = None + jobToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CancelJobResponseTypeDef(BaseModel): + cancellationStatus: CancellationStatusType + jobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelQuantumTaskResponseTypeDef(BaseModel): + cancellationStatus: CancellationStatusType + quantumTaskArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobResponseTypeDef(BaseModel): + jobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQuantumTaskResponseTypeDef(BaseModel): + quantumTaskArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceTypeDef(BaseModel): + s3DataSource: S3DataSourceTypeDef + +class GetDeviceResponseTypeDef(BaseModel): + deviceArn: str + deviceCapabilities: str + deviceName: str + deviceQueueInfo: List[DeviceQueueInfoTypeDef] + deviceStatus: DeviceStatusType + deviceType: DeviceTypeType + providerName: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchDevicesResponseTypeDef(BaseModel): + devices: List[DeviceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetQuantumTaskResponseTypeDef(BaseModel): + associations: List[AssociationTypeDef] + createdAt: datetime + deviceArn: str + deviceParameters: str + endedAt: datetime + failureReason: str + jobArn: str + outputS3Bucket: str + outputS3Directory: str + quantumTaskArn: str + queueInfo: QuantumTaskQueueInfoTypeDef + shots: int + status: QuantumTaskStatusType + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchJobsResponseTypeDef(BaseModel): + jobs: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchQuantumTasksResponseTypeDef(BaseModel): + nextToken: str + quantumTasks: List[QuantumTaskSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchDevicesRequestRequestTypeDef(BaseModel): + filters: Sequence[SearchDevicesFilterTypeDef] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchDevicesRequestSearchDevicesPaginateTypeDef(BaseModel): + filters: Sequence[SearchDevicesFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchJobsRequestRequestTypeDef(BaseModel): + filters: Sequence[SearchJobsFilterTypeDef] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchJobsRequestSearchJobsPaginateTypeDef(BaseModel): + filters: Sequence[SearchJobsFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchQuantumTasksRequestRequestTypeDef(BaseModel): + filters: Sequence[SearchQuantumTasksFilterTypeDef] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchQuantumTasksRequestSearchQuantumTasksPaginateTypeDef(BaseModel): + filters: Sequence[SearchQuantumTasksFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class InputFileConfigTypeDef(BaseModel): + channelName: str + dataSource: DataSourceTypeDef + contentType: Optional[str] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + algorithmSpecification: AlgorithmSpecificationTypeDef + clientToken: str + deviceConfig: DeviceConfigTypeDef + instanceConfig: InstanceConfigTypeDef + jobName: str + outputDataConfig: JobOutputDataConfigTypeDef + roleArn: str + associations: Optional[Sequence[AssociationTypeDef]] = None + checkpointConfig: Optional[JobCheckpointConfigTypeDef] = None + hyperParameters: Optional[Mapping[str, str]] = None + inputDataConfig: Optional[Sequence[InputFileConfigTypeDef]] = None + stoppingCondition: Optional[JobStoppingConditionTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class GetJobResponseTypeDef(BaseModel): + algorithmSpecification: AlgorithmSpecificationTypeDef + associations: List[AssociationTypeDef] + billableDuration: int + checkpointConfig: JobCheckpointConfigTypeDef + createdAt: datetime + deviceConfig: DeviceConfigTypeDef + endedAt: datetime + events: List[JobEventDetailsTypeDef] + failureReason: str + hyperParameters: Dict[str, str] + inputDataConfig: List[InputFileConfigTypeDef] + instanceConfig: InstanceConfigTypeDef + jobArn: str + jobName: str + outputDataConfig: JobOutputDataConfigTypeDef + queueInfo: HybridJobQueueInfoTypeDef + roleArn: str + startedAt: datetime + status: JobPrimaryStatusType + stoppingCondition: JobStoppingConditionTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/braket_constants.py b/aws_resource_validator/pydantic_models/braket_constants.py new file mode 100644 index 00000000..e43bf7fb --- /dev/null +++ b/aws_resource_validator/pydantic_models/braket_constants.py @@ -0,0 +1,459 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssociationTypeType = Literal["RESERVATION_TIME_WINDOW_ARN"] +CancellationStatusType = Literal["CANCELLED", "CANCELLING"] +CompressionTypeType = Literal["GZIP", "NONE"] +DeviceStatusType = Literal["OFFLINE", "ONLINE", "RETIRED"] +DeviceTypeType = Literal["QPU", "SIMULATOR"] +HybridJobAdditionalAttributeNameType = Literal["QueueInfo"] +InstanceTypeType = Literal["ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c4.xlarge", + "ml.c5.18xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.xlarge", + "ml.c5n.18xlarge", + "ml.c5n.2xlarge", + "ml.c5n.4xlarge", + "ml.c5n.9xlarge", + "ml.c5n.xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.p2.16xlarge", + "ml.p2.8xlarge", + "ml.p2.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3dn.24xlarge", + "ml.p4d.24xlarge",] +JobEventTypeType = Literal["CANCELLED", + "COMPLETED", + "DEPRIORITIZED_DUE_TO_INACTIVITY", + "DOWNLOADING_DATA", + "FAILED", + "MAX_RUNTIME_EXCEEDED", + "QUEUED_FOR_EXECUTION", + "RUNNING", + "STARTING_INSTANCE", + "UPLOADING_RESULTS", + "WAITING_FOR_PRIORITY",] +JobPrimaryStatusType = Literal["CANCELLED", "CANCELLING", "COMPLETED", "FAILED", "QUEUED", "RUNNING"] +QuantumTaskAdditionalAttributeNameType = Literal["QueueInfo"] +QuantumTaskStatusType = Literal["CANCELLED", "CANCELLING", "COMPLETED", "CREATED", "FAILED", "QUEUED", "RUNNING"] +QueueNameType = Literal["JOBS_QUEUE", "QUANTUM_TASKS_QUEUE"] +QueuePriorityType = Literal["Normal", "Priority"] +SearchDevicesPaginatorName = Literal["search_devices"] +SearchJobsFilterOperatorType = Literal["BETWEEN", "CONTAINS", "EQUAL", "GT", "GTE", "LT", "LTE"] +SearchJobsPaginatorName = Literal["search_jobs"] +SearchQuantumTasksFilterOperatorType = Literal["BETWEEN", "EQUAL", "GT", "GTE", "LT", "LTE"] +SearchQuantumTasksPaginatorName = Literal["search_quantum_tasks"] +BraketServiceName = Literal["braket"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["search_devices", "search_jobs", "search_quantum_tasks"] +RegionName = Literal["eu-west-2", "us-east-1", "us-west-1", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/budgets_classes.py b/aws_resource_validator/pydantic_models/budgets_classes.py new file mode 100644 index 00000000..30282d47 --- /dev/null +++ b/aws_resource_validator/pydantic_models/budgets_classes.py @@ -0,0 +1,512 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.budgets_constants import * + +class ActionThresholdTypeDef(BaseModel): + ActionThresholdValue: float + ActionThresholdType: ThresholdTypeType + +class SubscriberTypeDef(BaseModel): + SubscriptionType: SubscriptionTypeType + Address: str + +class HistoricalOptionsTypeDef(BaseModel): + BudgetAdjustmentPeriod: int + LookBackAvailablePeriods: Optional[int] = None + +class CostTypesTypeDef(BaseModel): + IncludeTax: Optional[bool] = None + IncludeSubscription: Optional[bool] = None + UseBlended: Optional[bool] = None + IncludeRefund: Optional[bool] = None + IncludeCredit: Optional[bool] = None + IncludeUpfront: Optional[bool] = None + IncludeRecurring: Optional[bool] = None + IncludeOtherSubscription: Optional[bool] = None + IncludeSupport: Optional[bool] = None + IncludeDiscount: Optional[bool] = None + UseAmortized: Optional[bool] = None + +class SpendTypeDef(BaseModel): + Amount: str + Unit: str + +class TimePeriodExtraOutputTypeDef(BaseModel): + Start: Optional[datetime] = None + End: Optional[datetime] = None + +class NotificationTypeDef(BaseModel): + NotificationType: NotificationTypeType + ComparisonOperator: ComparisonOperatorType + Threshold: float + ThresholdType: Optional[ThresholdTypeType] = None + NotificationState: Optional[NotificationStateType] = None + +class TimePeriodOutputTypeDef(BaseModel): + Start: Optional[datetime] = None + End: Optional[datetime] = None + +class ResourceTagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class IamActionDefinitionExtraOutputTypeDef(BaseModel): + PolicyArn: str + Roles: Optional[List[str]] = None + Groups: Optional[List[str]] = None + Users: Optional[List[str]] = None + +class ScpActionDefinitionExtraOutputTypeDef(BaseModel): + PolicyId: str + TargetIds: List[str] + +class SsmActionDefinitionExtraOutputTypeDef(BaseModel): + ActionSubType: ActionSubTypeType + Region: str + InstanceIds: List[str] + +class IamActionDefinitionOutputTypeDef(BaseModel): + PolicyArn: str + Roles: Optional[List[str]] = None + Groups: Optional[List[str]] = None + Users: Optional[List[str]] = None + +class ScpActionDefinitionOutputTypeDef(BaseModel): + PolicyId: str + TargetIds: List[str] + +class SsmActionDefinitionOutputTypeDef(BaseModel): + ActionSubType: ActionSubTypeType + Region: str + InstanceIds: List[str] + +class IamActionDefinitionTypeDef(BaseModel): + PolicyArn: str + Roles: Optional[Sequence[str]] = None + Groups: Optional[Sequence[str]] = None + Users: Optional[Sequence[str]] = None + +class ScpActionDefinitionTypeDef(BaseModel): + PolicyId: str + TargetIds: Sequence[str] + +class SsmActionDefinitionTypeDef(BaseModel): + ActionSubType: ActionSubTypeType + Region: str + InstanceIds: Sequence[str] + +class DeleteBudgetActionRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + +class DeleteBudgetRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeBudgetActionRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + +class DescribeBudgetActionsForAccountRequestRequestTypeDef(BaseModel): + AccountId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBudgetActionsForBudgetRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBudgetNotificationsForAccountRequestRequestTypeDef(BaseModel): + AccountId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBudgetRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + +class DescribeBudgetsRequestRequestTypeDef(BaseModel): + AccountId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeNotificationsForBudgetRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ExecuteBudgetActionRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + ExecutionType: ExecutionTypeType + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + ResourceTagKeys: Sequence[str] + +class AutoAdjustDataExtraOutputTypeDef(BaseModel): + AutoAdjustType: AutoAdjustTypeType + HistoricalOptions: Optional[HistoricalOptionsTypeDef] = None + LastAutoAdjustTime: Optional[datetime] = None + +class AutoAdjustDataOutputTypeDef(BaseModel): + AutoAdjustType: AutoAdjustTypeType + HistoricalOptions: Optional[HistoricalOptionsTypeDef] = None + LastAutoAdjustTime: Optional[datetime] = None + +class AutoAdjustDataTypeDef(BaseModel): + AutoAdjustType: AutoAdjustTypeType + HistoricalOptions: Optional[HistoricalOptionsTypeDef] = None + LastAutoAdjustTime: Optional[TimestampTypeDef] = None + +class TimePeriodTypeDef(BaseModel): + Start: Optional[TimestampTypeDef] = None + End: Optional[TimestampTypeDef] = None + +class CalculatedSpendTypeDef(BaseModel): + ActualSpend: SpendTypeDef + ForecastedSpend: Optional[SpendTypeDef] = None + +class BudgetNotificationsForAccountTypeDef(BaseModel): + Notifications: Optional[List[NotificationTypeDef]] = None + BudgetName: Optional[str] = None + +class CreateNotificationRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + Subscribers: Sequence[SubscriberTypeDef] + +class CreateSubscriberRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + Subscriber: SubscriberTypeDef + +class DeleteNotificationRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + +class DeleteSubscriberRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + Subscriber: SubscriberTypeDef + +class DescribeSubscribersForNotificationRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NotificationWithSubscribersTypeDef(BaseModel): + Notification: NotificationTypeDef + Subscribers: Sequence[SubscriberTypeDef] + +class UpdateNotificationRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + OldNotification: NotificationTypeDef + NewNotification: NotificationTypeDef + +class UpdateSubscriberRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + OldSubscriber: SubscriberTypeDef + NewSubscriber: SubscriberTypeDef + +class BudgetedAndActualAmountsTypeDef(BaseModel): + BudgetedAmount: Optional[SpendTypeDef] = None + ActualAmount: Optional[SpendTypeDef] = None + TimePeriod: Optional[TimePeriodOutputTypeDef] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + ResourceTags: Sequence[ResourceTagTypeDef] + +class CreateBudgetActionResponseTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNotificationsForBudgetResponseTypeDef(BaseModel): + Notifications: List[NotificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSubscribersForNotificationResponseTypeDef(BaseModel): + Subscribers: List[SubscriberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ExecuteBudgetActionResponseTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + ExecutionType: ExecutionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceTags: List[ResourceTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DefinitionExtraOutputTypeDef(BaseModel): + IamActionDefinition: Optional[IamActionDefinitionExtraOutputTypeDef] = None + ScpActionDefinition: Optional[ScpActionDefinitionExtraOutputTypeDef] = None + SsmActionDefinition: Optional[SsmActionDefinitionExtraOutputTypeDef] = None + +class DefinitionOutputTypeDef(BaseModel): + IamActionDefinition: Optional[IamActionDefinitionOutputTypeDef] = None + ScpActionDefinition: Optional[ScpActionDefinitionOutputTypeDef] = None + SsmActionDefinition: Optional[SsmActionDefinitionOutputTypeDef] = None + +class DefinitionTypeDef(BaseModel): + IamActionDefinition: Optional[IamActionDefinitionTypeDef] = None + ScpActionDefinition: Optional[ScpActionDefinitionTypeDef] = None + SsmActionDefinition: Optional[SsmActionDefinitionTypeDef] = None + +class DescribeBudgetActionsForAccountRequestDescribeBudgetActionsForAccountPaginateTypeDef(BaseModel): + AccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeBudgetActionsForBudgetRequestDescribeBudgetActionsForBudgetPaginateTypeDef(BaseModel): + AccountId: str + BudgetName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeBudgetNotificationsForAccountRequestDescribeBudgetNotificationsForAccountPaginateTypeDef(BaseModel): + AccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeBudgetsRequestDescribeBudgetsPaginateTypeDef(BaseModel): + AccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNotificationsForBudgetRequestDescribeNotificationsForBudgetPaginateTypeDef(BaseModel): + AccountId: str + BudgetName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSubscribersForNotificationRequestDescribeSubscribersForNotificationPaginateTypeDef(BaseModel): + AccountId: str + BudgetName: str + Notification: NotificationTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeBudgetActionHistoriesRequestDescribeBudgetActionHistoriesPaginateTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + TimePeriod: Optional[TimePeriodTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeBudgetActionHistoriesRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + TimePeriod: Optional[TimePeriodTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBudgetPerformanceHistoryRequestDescribeBudgetPerformanceHistoryPaginateTypeDef(BaseModel): + AccountId: str + BudgetName: str + TimePeriod: Optional[TimePeriodTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeBudgetPerformanceHistoryRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + TimePeriod: Optional[TimePeriodTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class BudgetExtraOutputTypeDef(BaseModel): + BudgetName: str + TimeUnit: TimeUnitType + BudgetType: BudgetTypeType + BudgetLimit: Optional[SpendTypeDef] = None + PlannedBudgetLimits: Optional[Dict[str, SpendTypeDef]] = None + CostFilters: Optional[Dict[str, List[str]]] = None + CostTypes: Optional[CostTypesTypeDef] = None + TimePeriod: Optional[TimePeriodExtraOutputTypeDef] = None + CalculatedSpend: Optional[CalculatedSpendTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + AutoAdjustData: Optional[AutoAdjustDataExtraOutputTypeDef] = None + +class BudgetOutputTypeDef(BaseModel): + BudgetName: str + TimeUnit: TimeUnitType + BudgetType: BudgetTypeType + BudgetLimit: Optional[SpendTypeDef] = None + PlannedBudgetLimits: Optional[Dict[str, SpendTypeDef]] = None + CostFilters: Optional[Dict[str, List[str]]] = None + CostTypes: Optional[CostTypesTypeDef] = None + TimePeriod: Optional[TimePeriodOutputTypeDef] = None + CalculatedSpend: Optional[CalculatedSpendTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + AutoAdjustData: Optional[AutoAdjustDataOutputTypeDef] = None + +class BudgetTypeDef(BaseModel): + BudgetName: str + TimeUnit: TimeUnitType + BudgetType: BudgetTypeType + BudgetLimit: Optional[SpendTypeDef] = None + PlannedBudgetLimits: Optional[Mapping[str, SpendTypeDef]] = None + CostFilters: Optional[Mapping[str, Sequence[str]]] = None + CostTypes: Optional[CostTypesTypeDef] = None + TimePeriod: Optional[TimePeriodTypeDef] = None + CalculatedSpend: Optional[CalculatedSpendTypeDef] = None + LastUpdatedTime: Optional[TimestampTypeDef] = None + AutoAdjustData: Optional[AutoAdjustDataTypeDef] = None + +class DescribeBudgetNotificationsForAccountResponseTypeDef(BaseModel): + BudgetNotificationsForAccount: List[BudgetNotificationsForAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BudgetPerformanceHistoryTypeDef(BaseModel): + BudgetName: Optional[str] = None + BudgetType: Optional[BudgetTypeType] = None + CostFilters: Optional[Dict[str, List[str]]] = None + CostTypes: Optional[CostTypesTypeDef] = None + TimeUnit: Optional[TimeUnitType] = None + BudgetedAndActualAmountsList: Optional[List[BudgetedAndActualAmountsTypeDef]] = None + +class ActionTypeDef(BaseModel): + ActionId: str + BudgetName: str + NotificationType: NotificationTypeType + ActionType: ActionTypeType + ActionThreshold: ActionThresholdTypeDef + Definition: DefinitionOutputTypeDef + ExecutionRoleArn: str + ApprovalModel: ApprovalModelType + Status: ActionStatusType + Subscribers: List[SubscriberTypeDef] + +class CreateBudgetActionRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + NotificationType: NotificationTypeType + ActionType: ActionTypeType + ActionThreshold: ActionThresholdTypeDef + Definition: DefinitionTypeDef + ExecutionRoleArn: str + ApprovalModel: ApprovalModelType + Subscribers: Sequence[SubscriberTypeDef] + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class UpdateBudgetActionRequestRequestTypeDef(BaseModel): + AccountId: str + BudgetName: str + ActionId: str + NotificationType: Optional[NotificationTypeType] = None + ActionThreshold: Optional[ActionThresholdTypeDef] = None + Definition: Optional[DefinitionTypeDef] = None + ExecutionRoleArn: Optional[str] = None + ApprovalModel: Optional[ApprovalModelType] = None + Subscribers: Optional[Sequence[SubscriberTypeDef]] = None + +class DescribeBudgetsResponseTypeDef(BaseModel): + Budgets: List[BudgetExtraOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeBudgetResponseTypeDef(BaseModel): + Budget: BudgetOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBudgetRequestRequestTypeDef(BaseModel): + AccountId: str + Budget: BudgetTypeDef + NotificationsWithSubscribers: Optional[Sequence[NotificationWithSubscribersTypeDef]] = None + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class UpdateBudgetRequestRequestTypeDef(BaseModel): + AccountId: str + NewBudget: BudgetTypeDef + +class DescribeBudgetPerformanceHistoryResponseTypeDef(BaseModel): + BudgetPerformanceHistory: BudgetPerformanceHistoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ActionHistoryDetailsTypeDef(BaseModel): + Message: str + Action: ActionTypeDef + +class DeleteBudgetActionResponseTypeDef(BaseModel): + AccountId: str + BudgetName: str + Action: ActionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBudgetActionResponseTypeDef(BaseModel): + AccountId: str + BudgetName: str + Action: ActionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBudgetActionsForAccountResponseTypeDef(BaseModel): + Actions: List[ActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeBudgetActionsForBudgetResponseTypeDef(BaseModel): + Actions: List[ActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateBudgetActionResponseTypeDef(BaseModel): + AccountId: str + BudgetName: str + OldAction: ActionTypeDef + NewAction: ActionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ActionHistoryTypeDef(BaseModel): + Timestamp: datetime + Status: ActionStatusType + EventType: EventTypeType + ActionHistoryDetails: ActionHistoryDetailsTypeDef + +class DescribeBudgetActionHistoriesResponseTypeDef(BaseModel): + ActionHistories: List[ActionHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/budgets_constants.py b/aws_resource_validator/pydantic_models/budgets_constants.py new file mode 100644 index 00000000..96ca8103 --- /dev/null +++ b/aws_resource_validator/pydantic_models/budgets_constants.py @@ -0,0 +1,445 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionStatusType = Literal["EXECUTION_FAILURE", + "EXECUTION_IN_PROGRESS", + "EXECUTION_SUCCESS", + "PENDING", + "RESET_FAILURE", + "RESET_IN_PROGRESS", + "REVERSE_FAILURE", + "REVERSE_IN_PROGRESS", + "REVERSE_SUCCESS", + "STANDBY",] +ActionSubTypeType = Literal["STOP_EC2_INSTANCES", "STOP_RDS_INSTANCES"] +ActionTypeType = Literal["APPLY_IAM_POLICY", "APPLY_SCP_POLICY", "RUN_SSM_DOCUMENTS"] +ApprovalModelType = Literal["AUTOMATIC", "MANUAL"] +AutoAdjustTypeType = Literal["FORECAST", "HISTORICAL"] +BudgetTypeType = Literal["COST", + "RI_COVERAGE", + "RI_UTILIZATION", + "SAVINGS_PLANS_COVERAGE", + "SAVINGS_PLANS_UTILIZATION", + "USAGE",] +ComparisonOperatorType = Literal["EQUAL_TO", "GREATER_THAN", "LESS_THAN"] +DescribeBudgetActionHistoriesPaginatorName = Literal["describe_budget_action_histories"] +DescribeBudgetActionsForAccountPaginatorName = Literal["describe_budget_actions_for_account"] +DescribeBudgetActionsForBudgetPaginatorName = Literal["describe_budget_actions_for_budget"] +DescribeBudgetNotificationsForAccountPaginatorName = Literal["describe_budget_notifications_for_account"] +DescribeBudgetPerformanceHistoryPaginatorName = Literal["describe_budget_performance_history"] +DescribeBudgetsPaginatorName = Literal["describe_budgets"] +DescribeNotificationsForBudgetPaginatorName = Literal["describe_notifications_for_budget"] +DescribeSubscribersForNotificationPaginatorName = Literal["describe_subscribers_for_notification"] +EventTypeType = Literal["CREATE_ACTION", "DELETE_ACTION", "EXECUTE_ACTION", "SYSTEM", "UPDATE_ACTION"] +ExecutionTypeType = Literal["APPROVE_BUDGET_ACTION", "RESET_BUDGET_ACTION", "RETRY_BUDGET_ACTION", "REVERSE_BUDGET_ACTION"] +NotificationStateType = Literal["ALARM", "OK"] +NotificationTypeType = Literal["ACTUAL", "FORECASTED"] +SubscriptionTypeType = Literal["EMAIL", "SNS"] +ThresholdTypeType = Literal["ABSOLUTE_VALUE", "PERCENTAGE"] +TimeUnitType = Literal["ANNUALLY", "DAILY", "MONTHLY", "QUARTERLY"] +BudgetsServiceName = Literal["budgets"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_budget_action_histories", + "describe_budget_actions_for_account", + "describe_budget_actions_for_budget", + "describe_budget_notifications_for_account", + "describe_budget_performance_history", + "describe_budgets", + "describe_notifications_for_budget", + "describe_subscribers_for_notification",] +TimestampTypeDef = Union[datetime, str] +TimePeriodUnionTypeDef = Union['TimePeriodTypeDef', 'TimePeriodExtraOutputTypeDef'] +DefinitionUnionTypeDef = Union['DefinitionTypeDef', 'DefinitionExtraOutputTypeDef'] +BudgetUnionTypeDef = Union['BudgetTypeDef', 'BudgetExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/ce_classes.py b/aws_resource_validator/pydantic_models/ce_classes.py new file mode 100644 index 00000000..2dc08e7d --- /dev/null +++ b/aws_resource_validator/pydantic_models/ce_classes.py @@ -0,0 +1,1063 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ce_constants import * + +class AnomalyDateIntervalTypeDef(BaseModel): + StartDate: str + EndDate: Optional[str] = None + +class AnomalyMonitorTypeDef(BaseModel): + MonitorName: str + MonitorType: MonitorTypeType + MonitorArn: Optional[str] = None + CreationDate: Optional[str] = None + LastUpdatedDate: Optional[str] = None + LastEvaluatedDate: Optional[str] = None + MonitorDimension: Optional[Literal["SERVICE"]] = None + MonitorSpecification: Optional["ExpressionTypeDef"] = None + DimensionalValueCount: Optional[int] = None + +class AnomalyScoreTypeDef(BaseModel): + MaxScore: float + CurrentScore: float + +class SubscriberTypeDef(BaseModel): + Address: Optional[str] = None + Type: Optional[SubscriberTypeType] = None + Status: Optional[SubscriberStatusType] = None + +class ImpactTypeDef(BaseModel): + MaxImpact: float + TotalImpact: Optional[float] = None + TotalActualSpend: Optional[float] = None + TotalExpectedSpend: Optional[float] = None + TotalImpactPercentage: Optional[float] = None + +class RootCauseTypeDef(BaseModel): + Service: Optional[str] = None + Region: Optional[str] = None + LinkedAccount: Optional[str] = None + UsageType: Optional[str] = None + LinkedAccountName: Optional[str] = None + +class CostAllocationTagBackfillRequestTypeDef(BaseModel): + BackfillFrom: Optional[str] = None + RequestedAt: Optional[str] = None + CompletedAt: Optional[str] = None + BackfillStatus: Optional[CostAllocationTagBackfillStatusType] = None + LastUpdatedAt: Optional[str] = None + +class CostAllocationTagStatusEntryTypeDef(BaseModel): + TagKey: str + Status: CostAllocationTagStatusType + +class CostAllocationTagTypeDef(BaseModel): + TagKey: str + Type: CostAllocationTagTypeType + Status: CostAllocationTagStatusType + LastUpdatedDate: Optional[str] = None + LastUsedDate: Optional[str] = None + +class CostCategoryInheritedValueDimensionTypeDef(BaseModel): + DimensionName: Optional[CostCategoryInheritedValueDimensionNameType] = None + DimensionKey: Optional[str] = None + +class CostCategoryProcessingStatusTypeDef(BaseModel): + Component: Optional[Literal["COST_EXPLORER"]] = None + Status: Optional[CostCategoryStatusType] = None + +class CostCategorySplitChargeRuleParameterTypeDef(BaseModel): + Type: Literal["ALLOCATION_PERCENTAGES"] + Values: Sequence[str] + +class CostCategoryValuesTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + MatchOptions: Optional[Sequence[MatchOptionType]] = None + +class DateIntervalTypeDef(BaseModel): + Start: str + End: str + +class CoverageCostTypeDef(BaseModel): + OnDemandCost: Optional[str] = None + +class CoverageHoursTypeDef(BaseModel): + OnDemandHours: Optional[str] = None + ReservedHours: Optional[str] = None + TotalRunningHours: Optional[str] = None + CoverageHoursPercentage: Optional[str] = None + +class CoverageNormalizedUnitsTypeDef(BaseModel): + OnDemandNormalizedUnits: Optional[str] = None + ReservedNormalizedUnits: Optional[str] = None + TotalRunningNormalizedUnits: Optional[str] = None + CoverageNormalizedUnitsPercentage: Optional[str] = None + +class ResourceTagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagValuesTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + MatchOptions: Optional[Sequence[MatchOptionType]] = None + +class DeleteAnomalyMonitorRequestRequestTypeDef(BaseModel): + MonitorArn: str + +class DeleteAnomalySubscriptionRequestRequestTypeDef(BaseModel): + SubscriptionArn: str + +class DeleteCostCategoryDefinitionRequestRequestTypeDef(BaseModel): + CostCategoryArn: str + +class DescribeCostCategoryDefinitionRequestRequestTypeDef(BaseModel): + CostCategoryArn: str + EffectiveOn: Optional[str] = None + +class DimensionValuesTypeDef(BaseModel): + Key: Optional[DimensionType] = None + Values: Optional[Sequence[str]] = None + MatchOptions: Optional[Sequence[MatchOptionType]] = None + +class DimensionValuesWithAttributesTypeDef(BaseModel): + Value: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + +class DiskResourceUtilizationTypeDef(BaseModel): + DiskReadOpsPerSecond: Optional[str] = None + DiskWriteOpsPerSecond: Optional[str] = None + DiskReadBytesPerSecond: Optional[str] = None + DiskWriteBytesPerSecond: Optional[str] = None + +class EBSResourceUtilizationTypeDef(BaseModel): + EbsReadOpsPerSecond: Optional[str] = None + EbsWriteOpsPerSecond: Optional[str] = None + EbsReadBytesPerSecond: Optional[str] = None + EbsWriteBytesPerSecond: Optional[str] = None + +class EC2InstanceDetailsTypeDef(BaseModel): + Family: Optional[str] = None + InstanceType: Optional[str] = None + Region: Optional[str] = None + AvailabilityZone: Optional[str] = None + Platform: Optional[str] = None + Tenancy: Optional[str] = None + CurrentGeneration: Optional[bool] = None + SizeFlexEligible: Optional[bool] = None + +class EC2ResourceDetailsTypeDef(BaseModel): + HourlyOnDemandRate: Optional[str] = None + InstanceType: Optional[str] = None + Platform: Optional[str] = None + Region: Optional[str] = None + Sku: Optional[str] = None + Memory: Optional[str] = None + NetworkPerformance: Optional[str] = None + Storage: Optional[str] = None + Vcpu: Optional[str] = None + +class NetworkResourceUtilizationTypeDef(BaseModel): + NetworkInBytesPerSecond: Optional[str] = None + NetworkOutBytesPerSecond: Optional[str] = None + NetworkPacketsInPerSecond: Optional[str] = None + NetworkPacketsOutPerSecond: Optional[str] = None + +class EC2SpecificationTypeDef(BaseModel): + OfferingClass: Optional[OfferingClassType] = None + +class ESInstanceDetailsTypeDef(BaseModel): + InstanceClass: Optional[str] = None + InstanceSize: Optional[str] = None + Region: Optional[str] = None + CurrentGeneration: Optional[bool] = None + SizeFlexEligible: Optional[bool] = None + +class ElastiCacheInstanceDetailsTypeDef(BaseModel): + Family: Optional[str] = None + NodeType: Optional[str] = None + Region: Optional[str] = None + ProductDescription: Optional[str] = None + CurrentGeneration: Optional[bool] = None + SizeFlexEligible: Optional[bool] = None + +class GenerationSummaryTypeDef(BaseModel): + RecommendationId: Optional[str] = None + GenerationStatus: Optional[GenerationStatusType] = None + GenerationStartedTime: Optional[str] = None + GenerationCompletionTime: Optional[str] = None + EstimatedCompletionTime: Optional[str] = None + +class TotalImpactFilterTypeDef(BaseModel): + NumericOperator: NumericOperatorType + StartValue: float + EndValue: Optional[float] = None + +class GetAnomalyMonitorsRequestRequestTypeDef(BaseModel): + MonitorArnList: Optional[Sequence[str]] = None + NextPageToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetAnomalySubscriptionsRequestRequestTypeDef(BaseModel): + SubscriptionArnList: Optional[Sequence[str]] = None + MonitorArn: Optional[str] = None + NextPageToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetApproximateUsageRecordsRequestRequestTypeDef(BaseModel): + Granularity: GranularityType + ApproximationDimension: ApproximationDimensionType + Services: Optional[Sequence[str]] = None + +class GroupDefinitionTypeDef(BaseModel): + Type: Optional[GroupDefinitionTypeType] = None + Key: Optional[str] = None + +class SortDefinitionTypeDef(BaseModel): + Key: str + SortOrder: Optional[SortOrderType] = None + +class MetricValueTypeDef(BaseModel): + Amount: Optional[str] = None + Unit: Optional[str] = None + +class ReservationPurchaseRecommendationMetadataTypeDef(BaseModel): + RecommendationId: Optional[str] = None + GenerationTimestamp: Optional[str] = None + AdditionalMetadata: Optional[str] = None + +class ReservationAggregatesTypeDef(BaseModel): + UtilizationPercentage: Optional[str] = None + UtilizationPercentageInUnits: Optional[str] = None + PurchasedHours: Optional[str] = None + PurchasedUnits: Optional[str] = None + TotalActualHours: Optional[str] = None + TotalActualUnits: Optional[str] = None + UnusedHours: Optional[str] = None + UnusedUnits: Optional[str] = None + OnDemandCostOfRIHoursUsed: Optional[str] = None + NetRISavings: Optional[str] = None + TotalPotentialRISavings: Optional[str] = None + AmortizedUpfrontFee: Optional[str] = None + AmortizedRecurringFee: Optional[str] = None + TotalAmortizedFee: Optional[str] = None + RICostForUnusedHours: Optional[str] = None + RealizedSavings: Optional[str] = None + UnrealizedSavings: Optional[str] = None + +class RightsizingRecommendationConfigurationTypeDef(BaseModel): + RecommendationTarget: RecommendationTargetType + BenefitsConsidered: bool + +class RightsizingRecommendationMetadataTypeDef(BaseModel): + RecommendationId: Optional[str] = None + GenerationTimestamp: Optional[str] = None + LookbackPeriodInDays: Optional[LookbackPeriodInDaysType] = None + AdditionalMetadata: Optional[str] = None + +class RightsizingRecommendationSummaryTypeDef(BaseModel): + TotalRecommendationCount: Optional[str] = None + EstimatedTotalMonthlySavingsAmount: Optional[str] = None + SavingsCurrencyCode: Optional[str] = None + SavingsPercentage: Optional[str] = None + +class GetSavingsPlanPurchaseRecommendationDetailsRequestRequestTypeDef(BaseModel): + RecommendationDetailId: str + +class GetSavingsPlansPurchaseRecommendationRequestRequestTypeDef(BaseModel): + SavingsPlansType: SupportedSavingsPlansTypeType + TermInYears: TermInYearsType + PaymentOption: PaymentOptionType + LookbackPeriodInDays: LookbackPeriodInDaysType + AccountScope: Optional[AccountScopeType] = None + NextPageToken: Optional[str] = None + PageSize: Optional[int] = None + Filter: Optional["ExpressionTypeDef"] = None + +class SavingsPlansPurchaseRecommendationMetadataTypeDef(BaseModel): + RecommendationId: Optional[str] = None + GenerationTimestamp: Optional[str] = None + AdditionalMetadata: Optional[str] = None + +class MemoryDBInstanceDetailsTypeDef(BaseModel): + Family: Optional[str] = None + NodeType: Optional[str] = None + Region: Optional[str] = None + CurrentGeneration: Optional[bool] = None + SizeFlexEligible: Optional[bool] = None + +class RDSInstanceDetailsTypeDef(BaseModel): + Family: Optional[str] = None + InstanceType: Optional[str] = None + Region: Optional[str] = None + DatabaseEngine: Optional[str] = None + DatabaseEdition: Optional[str] = None + DeploymentOption: Optional[str] = None + LicenseModel: Optional[str] = None + CurrentGeneration: Optional[bool] = None + SizeFlexEligible: Optional[bool] = None + +class RedshiftInstanceDetailsTypeDef(BaseModel): + Family: Optional[str] = None + NodeType: Optional[str] = None + Region: Optional[str] = None + CurrentGeneration: Optional[bool] = None + SizeFlexEligible: Optional[bool] = None + +class ListCostAllocationTagBackfillHistoryRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCostAllocationTagsRequestRequestTypeDef(BaseModel): + Status: Optional[CostAllocationTagStatusType] = None + TagKeys: Optional[Sequence[str]] = None + Type: Optional[CostAllocationTagTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCostCategoryDefinitionsRequestRequestTypeDef(BaseModel): + EffectiveOn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListSavingsPlansPurchaseRecommendationGenerationRequestRequestTypeDef(BaseModel): + GenerationStatus: Optional[GenerationStatusType] = None + RecommendationIds: Optional[Sequence[str]] = None + PageSize: Optional[int] = None + NextPageToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ProvideAnomalyFeedbackRequestRequestTypeDef(BaseModel): + AnomalyId: str + Feedback: AnomalyFeedbackTypeType + +class RecommendationDetailHourlyMetricsTypeDef(BaseModel): + StartTime: Optional[str] = None + EstimatedOnDemandCost: Optional[str] = None + CurrentCoverage: Optional[str] = None + EstimatedCoverage: Optional[str] = None + EstimatedNewCommitmentUtilization: Optional[str] = None + +class ReservationPurchaseRecommendationSummaryTypeDef(BaseModel): + TotalEstimatedMonthlySavingsAmount: Optional[str] = None + TotalEstimatedMonthlySavingsPercentage: Optional[str] = None + CurrencyCode: Optional[str] = None + +class TerminateRecommendationDetailTypeDef(BaseModel): + EstimatedMonthlySavings: Optional[str] = None + CurrencyCode: Optional[str] = None + +class SavingsPlansAmortizedCommitmentTypeDef(BaseModel): + AmortizedRecurringCommitment: Optional[str] = None + AmortizedUpfrontCommitment: Optional[str] = None + TotalAmortizedCommitment: Optional[str] = None + +class SavingsPlansCoverageDataTypeDef(BaseModel): + SpendCoveredBySavingsPlans: Optional[str] = None + OnDemandCost: Optional[str] = None + TotalCost: Optional[str] = None + CoveragePercentage: Optional[str] = None + +class SavingsPlansDetailsTypeDef(BaseModel): + Region: Optional[str] = None + InstanceFamily: Optional[str] = None + OfferingId: Optional[str] = None + +class SavingsPlansPurchaseRecommendationSummaryTypeDef(BaseModel): + EstimatedROI: Optional[str] = None + CurrencyCode: Optional[str] = None + EstimatedTotalCost: Optional[str] = None + CurrentOnDemandSpend: Optional[str] = None + EstimatedSavingsAmount: Optional[str] = None + TotalRecommendationCount: Optional[str] = None + DailyCommitmentToPurchase: Optional[str] = None + HourlyCommitmentToPurchase: Optional[str] = None + EstimatedSavingsPercentage: Optional[str] = None + EstimatedMonthlySavingsAmount: Optional[str] = None + EstimatedOnDemandCostWithCurrentCommitment: Optional[str] = None + +class SavingsPlansSavingsTypeDef(BaseModel): + NetSavings: Optional[str] = None + OnDemandCostEquivalent: Optional[str] = None + +class SavingsPlansUtilizationTypeDef(BaseModel): + TotalCommitment: Optional[str] = None + UsedCommitment: Optional[str] = None + UnusedCommitment: Optional[str] = None + UtilizationPercentage: Optional[str] = None + +class StartCostAllocationTagBackfillRequestRequestTypeDef(BaseModel): + BackfillFrom: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourceTagKeys: Sequence[str] + +class UpdateAnomalyMonitorRequestRequestTypeDef(BaseModel): + MonitorArn: str + MonitorName: Optional[str] = None + +class UpdateCostAllocationTagsStatusErrorTypeDef(BaseModel): + TagKey: Optional[str] = None + Code: Optional[str] = None + Message: Optional[str] = None + +class AnomalySubscriptionTypeDef(BaseModel): + MonitorArnList: Sequence[str] + Subscribers: Sequence[SubscriberTypeDef] + Frequency: AnomalySubscriptionFrequencyType + SubscriptionName: str + SubscriptionArn: Optional[str] = None + AccountId: Optional[str] = None + Threshold: Optional[float] = None + ThresholdExpression: Optional["ExpressionTypeDef"] = None + +class UpdateAnomalySubscriptionRequestRequestTypeDef(BaseModel): + SubscriptionArn: str + Threshold: Optional[float] = None + Frequency: Optional[AnomalySubscriptionFrequencyType] = None + MonitorArnList: Optional[Sequence[str]] = None + Subscribers: Optional[Sequence[SubscriberTypeDef]] = None + SubscriptionName: Optional[str] = None + ThresholdExpression: Optional["ExpressionTypeDef"] = None + +class AnomalyTypeDef(BaseModel): + AnomalyId: str + AnomalyScore: AnomalyScoreTypeDef + Impact: ImpactTypeDef + MonitorArn: str + AnomalyStartDate: Optional[str] = None + AnomalyEndDate: Optional[str] = None + DimensionValue: Optional[str] = None + RootCauses: Optional[List[RootCauseTypeDef]] = None + Feedback: Optional[AnomalyFeedbackTypeType] = None + +class UpdateCostAllocationTagsStatusRequestRequestTypeDef(BaseModel): + CostAllocationTagsStatus: Sequence[CostAllocationTagStatusEntryTypeDef] + +class CostCategoryRuleTypeDef(BaseModel): + Value: Optional[str] = None + Rule: Optional["ExpressionTypeDef"] = None + InheritedValue: Optional[CostCategoryInheritedValueDimensionTypeDef] = None + Type: Optional[CostCategoryRuleTypeType] = None + +class CostCategoryReferenceTypeDef(BaseModel): + CostCategoryArn: Optional[str] = None + Name: Optional[str] = None + EffectiveStart: Optional[str] = None + EffectiveEnd: Optional[str] = None + NumberOfRules: Optional[int] = None + ProcessingStatus: Optional[List[CostCategoryProcessingStatusTypeDef]] = None + Values: Optional[List[str]] = None + DefaultValue: Optional[str] = None + +class CostCategorySplitChargeRuleTypeDef(BaseModel): + Source: str + Targets: Sequence[str] + Method: CostCategorySplitChargeMethodType + Parameters: Optional[Sequence[CostCategorySplitChargeRuleParameterTypeDef]] = None + +class ForecastResultTypeDef(BaseModel): + TimePeriod: Optional[DateIntervalTypeDef] = None + MeanValue: Optional[str] = None + PredictionIntervalLowerBound: Optional[str] = None + PredictionIntervalUpperBound: Optional[str] = None + +class GetCostForecastRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Metric: MetricType + Granularity: GranularityType + Filter: Optional["ExpressionTypeDef"] = None + PredictionIntervalLevel: Optional[int] = None + +class GetUsageForecastRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Metric: MetricType + Granularity: GranularityType + Filter: Optional["ExpressionTypeDef"] = None + PredictionIntervalLevel: Optional[int] = None + +class CoverageTypeDef(BaseModel): + CoverageHours: Optional[CoverageHoursTypeDef] = None + CoverageNormalizedUnits: Optional[CoverageNormalizedUnitsTypeDef] = None + CoverageCost: Optional[CoverageCostTypeDef] = None + +class CreateAnomalyMonitorRequestRequestTypeDef(BaseModel): + AnomalyMonitor: AnomalyMonitorTypeDef + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourceTags: Sequence[ResourceTagTypeDef] + +class CreateAnomalyMonitorResponseTypeDef(BaseModel): + MonitorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnomalySubscriptionResponseTypeDef(BaseModel): + SubscriptionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCostCategoryDefinitionResponseTypeDef(BaseModel): + CostCategoryArn: str + EffectiveStart: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCostCategoryDefinitionResponseTypeDef(BaseModel): + CostCategoryArn: str + EffectiveEnd: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnomalyMonitorsResponseTypeDef(BaseModel): + AnomalyMonitors: List[AnomalyMonitorTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApproximateUsageRecordsResponseTypeDef(BaseModel): + Services: Dict[str, int] + TotalRecords: int + LookbackPeriod: DateIntervalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCostCategoriesResponseTypeDef(BaseModel): + NextPageToken: str + CostCategoryNames: List[str] + CostCategoryValues: List[str] + ReturnSize: int + TotalSize: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetTagsResponseTypeDef(BaseModel): + NextPageToken: str + Tags: List[str] + ReturnSize: int + TotalSize: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListCostAllocationTagBackfillHistoryResponseTypeDef(BaseModel): + BackfillRequests: List[CostAllocationTagBackfillRequestTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCostAllocationTagsResponseTypeDef(BaseModel): + CostAllocationTags: List[CostAllocationTagTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceTags: List[ResourceTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ProvideAnomalyFeedbackResponseTypeDef(BaseModel): + AnomalyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartCostAllocationTagBackfillResponseTypeDef(BaseModel): + BackfillRequest: CostAllocationTagBackfillRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartSavingsPlansPurchaseRecommendationGenerationResponseTypeDef(BaseModel): + RecommendationId: str + GenerationStartedTime: str + EstimatedCompletionTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnomalyMonitorResponseTypeDef(BaseModel): + MonitorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnomalySubscriptionResponseTypeDef(BaseModel): + SubscriptionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCostCategoryDefinitionResponseTypeDef(BaseModel): + CostCategoryArn: str + EffectiveStart: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExpressionTypeDef(BaseModel): + Or: Optional[Sequence[Dict[str, Any]]] = None + And: Optional[Sequence[Dict[str, Any]]] = None + Not: Optional[Dict[str, Any]] = None + Dimensions: Optional[DimensionValuesTypeDef] = None + Tags: Optional[TagValuesTypeDef] = None + CostCategories: Optional[CostCategoryValuesTypeDef] = None + +class GetDimensionValuesResponseTypeDef(BaseModel): + DimensionValues: List[DimensionValuesWithAttributesTypeDef] + ReturnSize: int + TotalSize: int + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceDetailsTypeDef(BaseModel): + EC2ResourceDetails: Optional[EC2ResourceDetailsTypeDef] = None + +class EC2ResourceUtilizationTypeDef(BaseModel): + MaxCpuUtilizationPercentage: Optional[str] = None + MaxMemoryUtilizationPercentage: Optional[str] = None + MaxStorageUtilizationPercentage: Optional[str] = None + EBSResourceUtilization: Optional[EBSResourceUtilizationTypeDef] = None + DiskResourceUtilization: Optional[DiskResourceUtilizationTypeDef] = None + NetworkResourceUtilization: Optional[NetworkResourceUtilizationTypeDef] = None + +class ServiceSpecificationTypeDef(BaseModel): + EC2Specification: Optional[EC2SpecificationTypeDef] = None + +class ListSavingsPlansPurchaseRecommendationGenerationResponseTypeDef(BaseModel): + GenerationSummaryList: List[GenerationSummaryTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnomaliesRequestRequestTypeDef(BaseModel): + DateInterval: AnomalyDateIntervalTypeDef + MonitorArn: Optional[str] = None + Feedback: Optional[AnomalyFeedbackTypeType] = None + TotalImpact: Optional[TotalImpactFilterTypeDef] = None + NextPageToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetCostAndUsageRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Granularity: GranularityType + Metrics: Sequence[str] + Filter: Optional["ExpressionTypeDef"] = None + GroupBy: Optional[Sequence[GroupDefinitionTypeDef]] = None + NextPageToken: Optional[str] = None + +class GetCostAndUsageWithResourcesRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Granularity: GranularityType + Filter: "ExpressionTypeDef" + Metrics: Optional[Sequence[str]] = None + GroupBy: Optional[Sequence[GroupDefinitionTypeDef]] = None + NextPageToken: Optional[str] = None + +class GetCostCategoriesRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + SearchString: Optional[str] = None + CostCategoryName: Optional[str] = None + Filter: Optional["ExpressionTypeDef"] = None + SortBy: Optional[Sequence[SortDefinitionTypeDef]] = None + MaxResults: Optional[int] = None + NextPageToken: Optional[str] = None + +class GetDimensionValuesRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Dimension: DimensionType + SearchString: Optional[str] = None + Context: Optional[ContextType] = None + Filter: Optional["ExpressionTypeDef"] = None + SortBy: Optional[Sequence[SortDefinitionTypeDef]] = None + MaxResults: Optional[int] = None + NextPageToken: Optional[str] = None + +class GetReservationCoverageRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + GroupBy: Optional[Sequence[GroupDefinitionTypeDef]] = None + Granularity: Optional[GranularityType] = None + Filter: Optional["ExpressionTypeDef"] = None + Metrics: Optional[Sequence[str]] = None + NextPageToken: Optional[str] = None + SortBy: Optional[SortDefinitionTypeDef] = None + MaxResults: Optional[int] = None + +class GetReservationUtilizationRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + GroupBy: Optional[Sequence[GroupDefinitionTypeDef]] = None + Granularity: Optional[GranularityType] = None + Filter: Optional["ExpressionTypeDef"] = None + SortBy: Optional[SortDefinitionTypeDef] = None + NextPageToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetSavingsPlansCoverageRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + GroupBy: Optional[Sequence[GroupDefinitionTypeDef]] = None + Granularity: Optional[GranularityType] = None + Filter: Optional["ExpressionTypeDef"] = None + Metrics: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortBy: Optional[SortDefinitionTypeDef] = None + +class GetSavingsPlansUtilizationDetailsRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Filter: Optional["ExpressionTypeDef"] = None + DataType: Optional[Sequence[SavingsPlansDataTypeType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortBy: Optional[SortDefinitionTypeDef] = None + +class GetSavingsPlansUtilizationRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Granularity: Optional[GranularityType] = None + Filter: Optional["ExpressionTypeDef"] = None + SortBy: Optional[SortDefinitionTypeDef] = None + +class GetTagsRequestRequestTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + SearchString: Optional[str] = None + TagKey: Optional[str] = None + Filter: Optional["ExpressionTypeDef"] = None + SortBy: Optional[Sequence[SortDefinitionTypeDef]] = None + MaxResults: Optional[int] = None + NextPageToken: Optional[str] = None + +class GroupTypeDef(BaseModel): + Keys: Optional[List[str]] = None + Metrics: Optional[Dict[str, MetricValueTypeDef]] = None + +class ReservationUtilizationGroupTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + Utilization: Optional[ReservationAggregatesTypeDef] = None + +class GetRightsizingRecommendationRequestRequestTypeDef(BaseModel): + Service: str + Filter: Optional["ExpressionTypeDef"] = None + Configuration: Optional[RightsizingRecommendationConfigurationTypeDef] = None + PageSize: Optional[int] = None + NextPageToken: Optional[str] = None + +class InstanceDetailsTypeDef(BaseModel): + EC2InstanceDetails: Optional[EC2InstanceDetailsTypeDef] = None + RDSInstanceDetails: Optional[RDSInstanceDetailsTypeDef] = None + RedshiftInstanceDetails: Optional[RedshiftInstanceDetailsTypeDef] = None + ElastiCacheInstanceDetails: Optional[ElastiCacheInstanceDetailsTypeDef] = None + ESInstanceDetails: Optional[ESInstanceDetailsTypeDef] = None + MemoryDBInstanceDetails: Optional[MemoryDBInstanceDetailsTypeDef] = None + +class RecommendationDetailDataTypeDef(BaseModel): + AccountScope: Optional[AccountScopeType] = None + LookbackPeriodInDays: Optional[LookbackPeriodInDaysType] = None + SavingsPlansType: Optional[SupportedSavingsPlansTypeType] = None + TermInYears: Optional[TermInYearsType] = None + PaymentOption: Optional[PaymentOptionType] = None + AccountId: Optional[str] = None + CurrencyCode: Optional[str] = None + InstanceFamily: Optional[str] = None + Region: Optional[str] = None + OfferingId: Optional[str] = None + GenerationTimestamp: Optional[str] = None + LatestUsageTimestamp: Optional[str] = None + CurrentAverageHourlyOnDemandSpend: Optional[str] = None + CurrentMaximumHourlyOnDemandSpend: Optional[str] = None + CurrentMinimumHourlyOnDemandSpend: Optional[str] = None + EstimatedAverageUtilization: Optional[str] = None + EstimatedMonthlySavingsAmount: Optional[str] = None + EstimatedOnDemandCost: Optional[str] = None + EstimatedOnDemandCostWithCurrentCommitment: Optional[str] = None + EstimatedROI: Optional[str] = None + EstimatedSPCost: Optional[str] = None + EstimatedSavingsAmount: Optional[str] = None + EstimatedSavingsPercentage: Optional[str] = None + ExistingHourlyCommitment: Optional[str] = None + HourlyCommitmentToPurchase: Optional[str] = None + UpfrontCost: Optional[str] = None + CurrentAverageCoverage: Optional[str] = None + EstimatedAverageCoverage: Optional[str] = None + MetricsOverLookbackPeriod: Optional[List[RecommendationDetailHourlyMetricsTypeDef]] = None + +class SavingsPlansCoverageTypeDef(BaseModel): + Attributes: Optional[Dict[str, str]] = None + Coverage: Optional[SavingsPlansCoverageDataTypeDef] = None + TimePeriod: Optional[DateIntervalTypeDef] = None + +class SavingsPlansPurchaseRecommendationDetailTypeDef(BaseModel): + SavingsPlansDetails: Optional[SavingsPlansDetailsTypeDef] = None + AccountId: Optional[str] = None + UpfrontCost: Optional[str] = None + EstimatedROI: Optional[str] = None + CurrencyCode: Optional[str] = None + EstimatedSPCost: Optional[str] = None + EstimatedOnDemandCost: Optional[str] = None + EstimatedOnDemandCostWithCurrentCommitment: Optional[str] = None + EstimatedSavingsAmount: Optional[str] = None + EstimatedSavingsPercentage: Optional[str] = None + HourlyCommitmentToPurchase: Optional[str] = None + EstimatedAverageUtilization: Optional[str] = None + EstimatedMonthlySavingsAmount: Optional[str] = None + CurrentMinimumHourlyOnDemandSpend: Optional[str] = None + CurrentMaximumHourlyOnDemandSpend: Optional[str] = None + CurrentAverageHourlyOnDemandSpend: Optional[str] = None + RecommendationDetailId: Optional[str] = None + +class SavingsPlansUtilizationAggregatesTypeDef(BaseModel): + Utilization: SavingsPlansUtilizationTypeDef + Savings: Optional[SavingsPlansSavingsTypeDef] = None + AmortizedCommitment: Optional[SavingsPlansAmortizedCommitmentTypeDef] = None + +class SavingsPlansUtilizationByTimeTypeDef(BaseModel): + TimePeriod: DateIntervalTypeDef + Utilization: SavingsPlansUtilizationTypeDef + Savings: Optional[SavingsPlansSavingsTypeDef] = None + AmortizedCommitment: Optional[SavingsPlansAmortizedCommitmentTypeDef] = None + +class SavingsPlansUtilizationDetailTypeDef(BaseModel): + SavingsPlanArn: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + Utilization: Optional[SavingsPlansUtilizationTypeDef] = None + Savings: Optional[SavingsPlansSavingsTypeDef] = None + AmortizedCommitment: Optional[SavingsPlansAmortizedCommitmentTypeDef] = None + +class UpdateCostAllocationTagsStatusResponseTypeDef(BaseModel): + Errors: List[UpdateCostAllocationTagsStatusErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnomalySubscriptionRequestRequestTypeDef(BaseModel): + AnomalySubscription: AnomalySubscriptionTypeDef + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class GetAnomalySubscriptionsResponseTypeDef(BaseModel): + AnomalySubscriptions: List[AnomalySubscriptionTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnomaliesResponseTypeDef(BaseModel): + Anomalies: List[AnomalyTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCostCategoryDefinitionsResponseTypeDef(BaseModel): + CostCategoryReferences: List[CostCategoryReferenceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CostCategoryTypeDef(BaseModel): + CostCategoryArn: str + EffectiveStart: str + Name: str + RuleVersion: Literal["CostCategoryExpression.v1"] + Rules: List[CostCategoryRuleTypeDef] + EffectiveEnd: Optional[str] = None + SplitChargeRules: Optional[List[CostCategorySplitChargeRuleTypeDef]] = None + ProcessingStatus: Optional[List[CostCategoryProcessingStatusTypeDef]] = None + DefaultValue: Optional[str] = None + +class CreateCostCategoryDefinitionRequestRequestTypeDef(BaseModel): + Name: str + RuleVersion: Literal["CostCategoryExpression.v1"] + Rules: Sequence[CostCategoryRuleTypeDef] + EffectiveStart: Optional[str] = None + DefaultValue: Optional[str] = None + SplitChargeRules: Optional[Sequence[CostCategorySplitChargeRuleTypeDef]] = None + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class UpdateCostCategoryDefinitionRequestRequestTypeDef(BaseModel): + CostCategoryArn: str + RuleVersion: Literal["CostCategoryExpression.v1"] + Rules: Sequence[CostCategoryRuleTypeDef] + EffectiveStart: Optional[str] = None + DefaultValue: Optional[str] = None + SplitChargeRules: Optional[Sequence[CostCategorySplitChargeRuleTypeDef]] = None + +class GetCostForecastResponseTypeDef(BaseModel): + Total: MetricValueTypeDef + ForecastResultsByTime: List[ForecastResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetUsageForecastResponseTypeDef(BaseModel): + Total: MetricValueTypeDef + ForecastResultsByTime: List[ForecastResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReservationCoverageGroupTypeDef(BaseModel): + Attributes: Optional[Dict[str, str]] = None + Coverage: Optional[CoverageTypeDef] = None + +class ResourceUtilizationTypeDef(BaseModel): + EC2ResourceUtilization: Optional[EC2ResourceUtilizationTypeDef] = None + +class GetReservationPurchaseRecommendationRequestRequestTypeDef(BaseModel): + Service: str + AccountId: Optional[str] = None + Filter: Optional["ExpressionTypeDef"] = None + AccountScope: Optional[AccountScopeType] = None + LookbackPeriodInDays: Optional[LookbackPeriodInDaysType] = None + TermInYears: Optional[TermInYearsType] = None + PaymentOption: Optional[PaymentOptionType] = None + ServiceSpecification: Optional[ServiceSpecificationTypeDef] = None + PageSize: Optional[int] = None + NextPageToken: Optional[str] = None + +class ResultByTimeTypeDef(BaseModel): + TimePeriod: Optional[DateIntervalTypeDef] = None + Total: Optional[Dict[str, MetricValueTypeDef]] = None + Groups: Optional[List[GroupTypeDef]] = None + Estimated: Optional[bool] = None + +class UtilizationByTimeTypeDef(BaseModel): + TimePeriod: Optional[DateIntervalTypeDef] = None + Groups: Optional[List[ReservationUtilizationGroupTypeDef]] = None + Total: Optional[ReservationAggregatesTypeDef] = None + +class ReservationPurchaseRecommendationDetailTypeDef(BaseModel): + AccountId: Optional[str] = None + InstanceDetails: Optional[InstanceDetailsTypeDef] = None + RecommendedNumberOfInstancesToPurchase: Optional[str] = None + RecommendedNormalizedUnitsToPurchase: Optional[str] = None + MinimumNumberOfInstancesUsedPerHour: Optional[str] = None + MinimumNormalizedUnitsUsedPerHour: Optional[str] = None + MaximumNumberOfInstancesUsedPerHour: Optional[str] = None + MaximumNormalizedUnitsUsedPerHour: Optional[str] = None + AverageNumberOfInstancesUsedPerHour: Optional[str] = None + AverageNormalizedUnitsUsedPerHour: Optional[str] = None + AverageUtilization: Optional[str] = None + EstimatedBreakEvenInMonths: Optional[str] = None + CurrencyCode: Optional[str] = None + EstimatedMonthlySavingsAmount: Optional[str] = None + EstimatedMonthlySavingsPercentage: Optional[str] = None + EstimatedMonthlyOnDemandCost: Optional[str] = None + EstimatedReservationCostForLookbackPeriod: Optional[str] = None + UpfrontCost: Optional[str] = None + RecurringStandardMonthlyCost: Optional[str] = None + +class GetSavingsPlanPurchaseRecommendationDetailsResponseTypeDef(BaseModel): + RecommendationDetailId: str + RecommendationDetailData: RecommendationDetailDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSavingsPlansCoverageResponseTypeDef(BaseModel): + SavingsPlansCoverages: List[SavingsPlansCoverageTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SavingsPlansPurchaseRecommendationTypeDef(BaseModel): + AccountScope: Optional[AccountScopeType] = None + SavingsPlansType: Optional[SupportedSavingsPlansTypeType] = None + TermInYears: Optional[TermInYearsType] = None + PaymentOption: Optional[PaymentOptionType] = None + LookbackPeriodInDays: Optional[LookbackPeriodInDaysType] = None + SavingsPlansPurchaseRecommendationDetails: Optional[ List[SavingsPlansPurchaseRecommendationDetailTypeDef] ] = None + SavingsPlansPurchaseRecommendationSummary: Optional[ SavingsPlansPurchaseRecommendationSummaryTypeDef ] = None + +class GetSavingsPlansUtilizationResponseTypeDef(BaseModel): + SavingsPlansUtilizationsByTime: List[SavingsPlansUtilizationByTimeTypeDef] + Total: SavingsPlansUtilizationAggregatesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSavingsPlansUtilizationDetailsResponseTypeDef(BaseModel): + SavingsPlansUtilizationDetails: List[SavingsPlansUtilizationDetailTypeDef] + Total: SavingsPlansUtilizationAggregatesTypeDef + TimePeriod: DateIntervalTypeDef + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCostCategoryDefinitionResponseTypeDef(BaseModel): + CostCategory: CostCategoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CoverageByTimeTypeDef(BaseModel): + TimePeriod: Optional[DateIntervalTypeDef] = None + Groups: Optional[List[ReservationCoverageGroupTypeDef]] = None + Total: Optional[CoverageTypeDef] = None + +class CurrentInstanceTypeDef(BaseModel): + ResourceId: Optional[str] = None + InstanceName: Optional[str] = None + Tags: Optional[List[TagValuesTypeDef]] = None + ResourceDetails: Optional[ResourceDetailsTypeDef] = None + ResourceUtilization: Optional[ResourceUtilizationTypeDef] = None + ReservationCoveredHoursInLookbackPeriod: Optional[str] = None + SavingsPlansCoveredHoursInLookbackPeriod: Optional[str] = None + OnDemandHoursInLookbackPeriod: Optional[str] = None + TotalRunningHoursInLookbackPeriod: Optional[str] = None + MonthlyCost: Optional[str] = None + CurrencyCode: Optional[str] = None + +class TargetInstanceTypeDef(BaseModel): + EstimatedMonthlyCost: Optional[str] = None + EstimatedMonthlySavings: Optional[str] = None + CurrencyCode: Optional[str] = None + DefaultTargetInstance: Optional[bool] = None + ResourceDetails: Optional[ResourceDetailsTypeDef] = None + ExpectedResourceUtilization: Optional[ResourceUtilizationTypeDef] = None + PlatformDifferences: Optional[List[PlatformDifferenceType]] = None + +class GetCostAndUsageResponseTypeDef(BaseModel): + NextPageToken: str + GroupDefinitions: List[GroupDefinitionTypeDef] + ResultsByTime: List[ResultByTimeTypeDef] + DimensionValueAttributes: List[DimensionValuesWithAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCostAndUsageWithResourcesResponseTypeDef(BaseModel): + NextPageToken: str + GroupDefinitions: List[GroupDefinitionTypeDef] + ResultsByTime: List[ResultByTimeTypeDef] + DimensionValueAttributes: List[DimensionValuesWithAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetReservationUtilizationResponseTypeDef(BaseModel): + UtilizationsByTime: List[UtilizationByTimeTypeDef] + Total: ReservationAggregatesTypeDef + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReservationPurchaseRecommendationTypeDef(BaseModel): + AccountScope: Optional[AccountScopeType] = None + LookbackPeriodInDays: Optional[LookbackPeriodInDaysType] = None + TermInYears: Optional[TermInYearsType] = None + PaymentOption: Optional[PaymentOptionType] = None + ServiceSpecification: Optional[ServiceSpecificationTypeDef] = None + RecommendationDetails: Optional[List[ReservationPurchaseRecommendationDetailTypeDef]] = None + RecommendationSummary: Optional[ReservationPurchaseRecommendationSummaryTypeDef] = None + +class GetSavingsPlansPurchaseRecommendationResponseTypeDef(BaseModel): + Metadata: SavingsPlansPurchaseRecommendationMetadataTypeDef + SavingsPlansPurchaseRecommendation: SavingsPlansPurchaseRecommendationTypeDef + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReservationCoverageResponseTypeDef(BaseModel): + CoveragesByTime: List[CoverageByTimeTypeDef] + Total: CoverageTypeDef + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyRecommendationDetailTypeDef(BaseModel): + TargetInstances: Optional[List[TargetInstanceTypeDef]] = None + +class GetReservationPurchaseRecommendationResponseTypeDef(BaseModel): + Metadata: ReservationPurchaseRecommendationMetadataTypeDef + Recommendations: List[ReservationPurchaseRecommendationTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RightsizingRecommendationTypeDef(BaseModel): + AccountId: Optional[str] = None + CurrentInstance: Optional[CurrentInstanceTypeDef] = None + RightsizingType: Optional[RightsizingTypeType] = None + ModifyRecommendationDetail: Optional[ModifyRecommendationDetailTypeDef] = None + TerminateRecommendationDetail: Optional[TerminateRecommendationDetailTypeDef] = None + FindingReasonCodes: Optional[List[FindingReasonCodeType]] = None + +class GetRightsizingRecommendationResponseTypeDef(BaseModel): + Metadata: RightsizingRecommendationMetadataTypeDef + Summary: RightsizingRecommendationSummaryTypeDef + RightsizingRecommendations: List[RightsizingRecommendationTypeDef] + NextPageToken: str + Configuration: RightsizingRecommendationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ce_constants.py b/aws_resource_validator/pydantic_models/ce_constants.py new file mode 100644 index 00000000..6c27702d --- /dev/null +++ b/aws_resource_validator/pydantic_models/ce_constants.py @@ -0,0 +1,504 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountScopeType = Literal["LINKED", "PAYER"] +AnomalyFeedbackTypeType = Literal["NO", "PLANNED_ACTIVITY", "YES"] +AnomalySubscriptionFrequencyType = Literal["DAILY", "IMMEDIATE", "WEEKLY"] +ApproximationDimensionType = Literal["RESOURCE", "SERVICE"] +ContextType = Literal["COST_AND_USAGE", "RESERVATIONS", "SAVINGS_PLANS"] +CostAllocationTagBackfillStatusType = Literal["FAILED", "PROCESSING", "SUCCEEDED"] +CostAllocationTagStatusType = Literal["Active", "Inactive"] +CostAllocationTagTypeType = Literal["AWSGenerated", "UserDefined"] +CostCategoryInheritedValueDimensionNameType = Literal["LINKED_ACCOUNT_NAME", "TAG"] +CostCategoryRuleTypeType = Literal["INHERITED_VALUE", "REGULAR"] +CostCategoryRuleVersionType = Literal["CostCategoryExpression.v1"] +CostCategorySplitChargeMethodType = Literal["EVEN", "FIXED", "PROPORTIONAL"] +CostCategorySplitChargeRuleParameterTypeType = Literal["ALLOCATION_PERCENTAGES"] +CostCategoryStatusComponentType = Literal["COST_EXPLORER"] +CostCategoryStatusType = Literal["APPLIED", "PROCESSING"] +DimensionType = Literal["AGREEMENT_END_DATE_TIME_AFTER", + "AGREEMENT_END_DATE_TIME_BEFORE", + "ANOMALY_TOTAL_IMPACT_ABSOLUTE", + "ANOMALY_TOTAL_IMPACT_PERCENTAGE", + "AZ", + "BILLING_ENTITY", + "CACHE_ENGINE", + "DATABASE_ENGINE", + "DEPLOYMENT_OPTION", + "INSTANCE_TYPE", + "INSTANCE_TYPE_FAMILY", + "INVOICING_ENTITY", + "LEGAL_ENTITY_NAME", + "LINKED_ACCOUNT", + "LINKED_ACCOUNT_NAME", + "OPERATING_SYSTEM", + "OPERATION", + "PAYMENT_OPTION", + "PLATFORM", + "PURCHASE_TYPE", + "RECORD_TYPE", + "REGION", + "RESERVATION_ID", + "RESOURCE_ID", + "RIGHTSIZING_TYPE", + "SAVINGS_PLANS_TYPE", + "SAVINGS_PLAN_ARN", + "SCOPE", + "SERVICE", + "SERVICE_CODE", + "SUBSCRIPTION_ID", + "TENANCY", + "USAGE_TYPE", + "USAGE_TYPE_GROUP",] +FindingReasonCodeType = Literal["CPU_OVER_PROVISIONED", + "CPU_UNDER_PROVISIONED", + "DISK_IOPS_OVER_PROVISIONED", + "DISK_IOPS_UNDER_PROVISIONED", + "DISK_THROUGHPUT_OVER_PROVISIONED", + "DISK_THROUGHPUT_UNDER_PROVISIONED", + "EBS_IOPS_OVER_PROVISIONED", + "EBS_IOPS_UNDER_PROVISIONED", + "EBS_THROUGHPUT_OVER_PROVISIONED", + "EBS_THROUGHPUT_UNDER_PROVISIONED", + "MEMORY_OVER_PROVISIONED", + "MEMORY_UNDER_PROVISIONED", + "NETWORK_BANDWIDTH_OVER_PROVISIONED", + "NETWORK_BANDWIDTH_UNDER_PROVISIONED", + "NETWORK_PPS_OVER_PROVISIONED", + "NETWORK_PPS_UNDER_PROVISIONED",] +GenerationStatusType = Literal["FAILED", "PROCESSING", "SUCCEEDED"] +GranularityType = Literal["DAILY", "HOURLY", "MONTHLY"] +GroupDefinitionTypeType = Literal["COST_CATEGORY", "DIMENSION", "TAG"] +LookbackPeriodInDaysType = Literal["SEVEN_DAYS", "SIXTY_DAYS", "THIRTY_DAYS"] +MatchOptionType = Literal["ABSENT", + "CASE_INSENSITIVE", + "CASE_SENSITIVE", + "CONTAINS", + "ENDS_WITH", + "EQUALS", + "GREATER_THAN_OR_EQUAL", + "STARTS_WITH",] +MetricType = Literal["AMORTIZED_COST", + "BLENDED_COST", + "NET_AMORTIZED_COST", + "NET_UNBLENDED_COST", + "NORMALIZED_USAGE_AMOUNT", + "UNBLENDED_COST", + "USAGE_QUANTITY",] +MonitorDimensionType = Literal["SERVICE"] +MonitorTypeType = Literal["CUSTOM", "DIMENSIONAL"] +NumericOperatorType = Literal["BETWEEN", "EQUAL", "GREATER_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN", "LESS_THAN_OR_EQUAL"] +OfferingClassType = Literal["CONVERTIBLE", "STANDARD"] +PaymentOptionType = Literal["ALL_UPFRONT", + "HEAVY_UTILIZATION", + "LIGHT_UTILIZATION", + "MEDIUM_UTILIZATION", + "NO_UPFRONT", + "PARTIAL_UPFRONT",] +PlatformDifferenceType = Literal["HYPERVISOR", + "INSTANCE_STORE_AVAILABILITY", + "NETWORK_INTERFACE", + "STORAGE_INTERFACE", + "VIRTUALIZATION_TYPE",] +RecommendationTargetType = Literal["CROSS_INSTANCE_FAMILY", "SAME_INSTANCE_FAMILY"] +RightsizingTypeType = Literal["MODIFY", "TERMINATE"] +SavingsPlansDataTypeType = Literal["AMORTIZED_COMMITMENT", "ATTRIBUTES", "SAVINGS", "UTILIZATION"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +SubscriberStatusType = Literal["CONFIRMED", "DECLINED"] +SubscriberTypeType = Literal["EMAIL", "SNS"] +SupportedSavingsPlansTypeType = Literal["COMPUTE_SP", "EC2_INSTANCE_SP", "SAGEMAKER_SP"] +TermInYearsType = Literal["ONE_YEAR", "THREE_YEARS"] +CostExplorerServiceName = Literal["ce"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/chatbot_classes.py b/aws_resource_validator/pydantic_models/chatbot_classes.py new file mode 100644 index 00000000..225d376c --- /dev/null +++ b/aws_resource_validator/pydantic_models/chatbot_classes.py @@ -0,0 +1,304 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chatbot_constants import * + +class AccountPreferencesTypeDef(BaseModel): + UserAuthorizationRequired: Optional[bool] = None + TrainingDataCollectionEnabled: Optional[bool] = None + +class TagTypeDef(BaseModel): + TagKey: str + TagValue: str + +class ConfiguredTeamTypeDef(BaseModel): + TenantId: str + TeamId: str + TeamName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteChimeWebhookConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + +class DeleteMicrosoftTeamsUserIdentityRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + UserId: str + +class DeleteSlackChannelConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + +class DeleteSlackUserIdentityRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + SlackTeamId: str + SlackUserId: str + +class DeleteSlackWorkspaceAuthorizationRequestRequestTypeDef(BaseModel): + SlackTeamId: str + +class DeleteTeamsChannelConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + +class DeleteTeamsConfiguredTeamRequestRequestTypeDef(BaseModel): + TeamId: str + +class DescribeChimeWebhookConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChatConfigurationArn: Optional[str] = None + +class DescribeSlackChannelConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChatConfigurationArn: Optional[str] = None + +class DescribeSlackUserIdentitiesRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SlackUserIdentityTypeDef(BaseModel): + IamRoleArn: str + ChatConfigurationArn: str + SlackTeamId: str + SlackUserId: str + AwsUserIdentity: Optional[str] = None + +class DescribeSlackWorkspacesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SlackWorkspaceTypeDef(BaseModel): + SlackTeamId: str + SlackTeamName: str + +class GetTeamsChannelConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + +class ListMicrosoftTeamsConfiguredTeamsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMicrosoftTeamsUserIdentitiesRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TeamsUserIdentityTypeDef(BaseModel): + IamRoleArn: str + ChatConfigurationArn: str + TeamId: str + UserId: Optional[str] = None + AwsUserIdentity: Optional[str] = None + TeamsChannelId: Optional[str] = None + TeamsTenantId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListTeamsChannelConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + TeamId: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateAccountPreferencesRequestRequestTypeDef(BaseModel): + UserAuthorizationRequired: Optional[bool] = None + TrainingDataCollectionEnabled: Optional[bool] = None + +class UpdateChimeWebhookConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + WebhookDescription: Optional[str] = None + WebhookUrl: Optional[str] = None + SnsTopicArns: Optional[Sequence[str]] = None + IamRoleArn: Optional[str] = None + LoggingLevel: Optional[str] = None + +class UpdateSlackChannelConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + SlackChannelId: str + SlackChannelName: Optional[str] = None + SnsTopicArns: Optional[Sequence[str]] = None + IamRoleArn: Optional[str] = None + LoggingLevel: Optional[str] = None + GuardrailPolicyArns: Optional[Sequence[str]] = None + UserAuthorizationRequired: Optional[bool] = None + +class UpdateTeamsChannelConfigurationRequestRequestTypeDef(BaseModel): + ChatConfigurationArn: str + ChannelId: str + ChannelName: Optional[str] = None + SnsTopicArns: Optional[Sequence[str]] = None + IamRoleArn: Optional[str] = None + LoggingLevel: Optional[str] = None + GuardrailPolicyArns: Optional[Sequence[str]] = None + UserAuthorizationRequired: Optional[bool] = None + +class ChimeWebhookConfigurationTypeDef(BaseModel): + WebhookDescription: str + ChatConfigurationArn: str + IamRoleArn: str + SnsTopicArns: List[str] + ConfigurationName: Optional[str] = None + LoggingLevel: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateChimeWebhookConfigurationRequestRequestTypeDef(BaseModel): + WebhookDescription: str + WebhookUrl: str + SnsTopicArns: Sequence[str] + IamRoleArn: str + ConfigurationName: str + LoggingLevel: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSlackChannelConfigurationRequestRequestTypeDef(BaseModel): + SlackTeamId: str + SlackChannelId: str + IamRoleArn: str + ConfigurationName: str + SlackChannelName: Optional[str] = None + SnsTopicArns: Optional[Sequence[str]] = None + LoggingLevel: Optional[str] = None + GuardrailPolicyArns: Optional[Sequence[str]] = None + UserAuthorizationRequired: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTeamsChannelConfigurationRequestRequestTypeDef(BaseModel): + ChannelId: str + TeamId: str + TenantId: str + IamRoleArn: str + ConfigurationName: str + ChannelName: Optional[str] = None + TeamName: Optional[str] = None + SnsTopicArns: Optional[Sequence[str]] = None + LoggingLevel: Optional[str] = None + GuardrailPolicyArns: Optional[Sequence[str]] = None + UserAuthorizationRequired: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class SlackChannelConfigurationTypeDef(BaseModel): + SlackTeamName: str + SlackTeamId: str + SlackChannelId: str + SlackChannelName: str + ChatConfigurationArn: str + IamRoleArn: str + SnsTopicArns: List[str] + ConfigurationName: Optional[str] = None + LoggingLevel: Optional[str] = None + GuardrailPolicyArns: Optional[List[str]] = None + UserAuthorizationRequired: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class TeamsChannelConfigurationTypeDef(BaseModel): + ChannelId: str + TeamId: str + TenantId: str + ChatConfigurationArn: str + IamRoleArn: str + SnsTopicArns: List[str] + ChannelName: Optional[str] = None + TeamName: Optional[str] = None + ConfigurationName: Optional[str] = None + LoggingLevel: Optional[str] = None + GuardrailPolicyArns: Optional[List[str]] = None + UserAuthorizationRequired: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + +class GetAccountPreferencesResultTypeDef(BaseModel): + AccountPreferences: AccountPreferencesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMicrosoftTeamsConfiguredTeamsResultTypeDef(BaseModel): + ConfiguredTeams: List[ConfiguredTeamTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountPreferencesResultTypeDef(BaseModel): + AccountPreferences: AccountPreferencesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSlackUserIdentitiesResultTypeDef(BaseModel): + SlackUserIdentities: List[SlackUserIdentityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSlackWorkspacesResultTypeDef(BaseModel): + SlackWorkspaces: List[SlackWorkspaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMicrosoftTeamsUserIdentitiesResultTypeDef(BaseModel): + TeamsUserIdentities: List[TeamsUserIdentityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateChimeWebhookConfigurationResultTypeDef(BaseModel): + WebhookConfiguration: ChimeWebhookConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChimeWebhookConfigurationsResultTypeDef(BaseModel): + WebhookConfigurations: List[ChimeWebhookConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateChimeWebhookConfigurationResultTypeDef(BaseModel): + WebhookConfiguration: ChimeWebhookConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSlackChannelConfigurationResultTypeDef(BaseModel): + ChannelConfiguration: SlackChannelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSlackChannelConfigurationsResultTypeDef(BaseModel): + SlackChannelConfigurations: List[SlackChannelConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateSlackChannelConfigurationResultTypeDef(BaseModel): + ChannelConfiguration: SlackChannelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTeamsChannelConfigurationResultTypeDef(BaseModel): + ChannelConfiguration: TeamsChannelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTeamsChannelConfigurationResultTypeDef(BaseModel): + ChannelConfiguration: TeamsChannelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTeamsChannelConfigurationsResultTypeDef(BaseModel): + TeamChannelConfigurations: List[TeamsChannelConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateTeamsChannelConfigurationResultTypeDef(BaseModel): + ChannelConfiguration: TeamsChannelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chatbot_constants.py b/aws_resource_validator/pydantic_models/chatbot_constants.py new file mode 100644 index 00000000..97f21d91 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chatbot_constants.py @@ -0,0 +1,398 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChatbotServiceName = Literal["chatbot"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/chime_classes.py b/aws_resource_validator/pydantic_models/chime_classes.py new file mode 100644 index 00000000..4aab0088 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_classes.py @@ -0,0 +1,2104 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chime_constants import * + +class AccountSettingsTypeDef(BaseModel): + DisableRemoteControl: Optional[bool] = None + EnableDialOut: Optional[bool] = None + +class SigninDelegateGroupTypeDef(BaseModel): + GroupName: Optional[str] = None + +class AddressTypeDef(BaseModel): + streetName: Optional[str] = None + streetSuffix: Optional[str] = None + postDirectional: Optional[str] = None + preDirectional: Optional[str] = None + streetNumber: Optional[str] = None + city: Optional[str] = None + state: Optional[str] = None + postalCode: Optional[str] = None + postalCodePlus4: Optional[str] = None + country: Optional[str] = None + +class AlexaForBusinessMetadataTypeDef(BaseModel): + IsAlexaForBusinessEnabled: Optional[bool] = None + AlexaForBusinessRoomArn: Optional[str] = None + +class IdentityTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class ChannelRetentionSettingsTypeDef(BaseModel): + RetentionDays: Optional[int] = None + +class AppInstanceStreamingConfigurationTypeDef(BaseModel): + AppInstanceDataType: AppInstanceDataTypeType + ResourceArn: str + +class AppInstanceSummaryTypeDef(BaseModel): + AppInstanceArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + +class AppInstanceTypeDef(BaseModel): + AppInstanceArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class AppInstanceUserMembershipSummaryTypeDef(BaseModel): + Type: Optional[ChannelMembershipTypeType] = None + ReadMarkerTimestamp: Optional[datetime] = None + +class AppInstanceUserSummaryTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + +class AppInstanceUserTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + Name: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + Metadata: Optional[str] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class AudioArtifactsConfigurationTypeDef(BaseModel): + MuxType: AudioMuxTypeType + +class ContentArtifactsConfigurationTypeDef(BaseModel): + State: ArtifactsStateType + MuxType: Optional[Literal["ContentOnly"]] = None + +class VideoArtifactsConfigurationTypeDef(BaseModel): + State: ArtifactsStateType + MuxType: Optional[Literal["VideoOnly"]] = None + +class AssociatePhoneNumberWithUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + E164PhoneNumber: str + +class AssociatePhoneNumbersWithVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + E164PhoneNumbers: Sequence[str] + ForceAssociate: Optional[bool] = None + +class PhoneNumberErrorTypeDef(BaseModel): + PhoneNumberId: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociatePhoneNumbersWithVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + E164PhoneNumbers: Sequence[str] + ForceAssociate: Optional[bool] = None + +class AttendeeTypeDef(BaseModel): + ExternalUserId: Optional[str] = None + AttendeeId: Optional[str] = None + JoinToken: Optional[str] = None + +class CreateAttendeeErrorTypeDef(BaseModel): + ExternalUserId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchCreateChannelMembershipErrorTypeDef(BaseModel): + MemberArn: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class BatchCreateChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArns: Sequence[str] + Type: Optional[ChannelMembershipTypeType] = None + ChimeBearer: Optional[str] = None + +class MembershipItemTypeDef(BaseModel): + MemberId: Optional[str] = None + Role: Optional[RoomMembershipRoleType] = None + +class MemberErrorTypeDef(BaseModel): + MemberId: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class BatchDeletePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberIds: Sequence[str] + +class BatchSuspendUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserIdList: Sequence[str] + +class UserErrorTypeDef(BaseModel): + UserId: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class BatchUnsuspendUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserIdList: Sequence[str] + +class UpdatePhoneNumberRequestItemTypeDef(BaseModel): + PhoneNumberId: str + ProductType: Optional[PhoneNumberProductTypeType] = None + CallingName: Optional[str] = None + +class BotTypeDef(BaseModel): + BotId: Optional[str] = None + UserId: Optional[str] = None + DisplayName: Optional[str] = None + BotType: Optional[Literal["ChatBot"]] = None + Disabled: Optional[bool] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + BotEmail: Optional[str] = None + SecurityToken: Optional[str] = None + +class BusinessCallingSettingsTypeDef(BaseModel): + CdrBucket: Optional[str] = None + +class CandidateAddressTypeDef(BaseModel): + streetInfo: Optional[str] = None + streetNumber: Optional[str] = None + city: Optional[str] = None + state: Optional[str] = None + postalCode: Optional[str] = None + postalCodePlus4: Optional[str] = None + country: Optional[str] = None + +class ChannelSummaryTypeDef(BaseModel): + Name: Optional[str] = None + ChannelArn: Optional[str] = None + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + LastMessageTimestamp: Optional[datetime] = None + +class ConversationRetentionSettingsTypeDef(BaseModel): + RetentionDays: Optional[int] = None + +class CreateAccountRequestRequestTypeDef(BaseModel): + Name: str + +class CreateAppInstanceAdminRequestRequestTypeDef(BaseModel): + AppInstanceAdminArn: str + AppInstanceArn: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateBotRequestRequestTypeDef(BaseModel): + AccountId: str + DisplayName: str + Domain: Optional[str] = None + +class CreateChannelBanRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: Optional[str] = None + +class CreateChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + Type: ChannelMembershipTypeType + ChimeBearer: Optional[str] = None + +class CreateChannelModeratorRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelModeratorArn: str + ChimeBearer: Optional[str] = None + +class CreateMeetingDialOutRequestRequestTypeDef(BaseModel): + MeetingId: str + FromPhoneNumber: str + ToPhoneNumber: str + JoinToken: str + +class MeetingNotificationConfigurationTypeDef(BaseModel): + SnsTopicArn: Optional[str] = None + SqsQueueArn: Optional[str] = None + +class CreatePhoneNumberOrderRequestRequestTypeDef(BaseModel): + ProductType: PhoneNumberProductTypeType + E164PhoneNumbers: Sequence[str] + +class GeoMatchParamsTypeDef(BaseModel): + Country: str + AreaCode: str + +class CreateRoomMembershipRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + MemberId: str + Role: Optional[RoomMembershipRoleType] = None + +class CreateRoomRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + ClientRequestToken: Optional[str] = None + +class RoomTypeDef(BaseModel): + RoomId: Optional[str] = None + Name: Optional[str] = None + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class CreateSipMediaApplicationCallRequestRequestTypeDef(BaseModel): + FromPhoneNumber: str + ToPhoneNumber: str + SipMediaApplicationId: str + SipHeaders: Optional[Mapping[str, str]] = None + +class SipMediaApplicationCallTypeDef(BaseModel): + TransactionId: Optional[str] = None + +class SipMediaApplicationEndpointTypeDef(BaseModel): + LambdaArn: Optional[str] = None + +class SipRuleTargetApplicationTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + Priority: Optional[int] = None + AwsRegion: Optional[str] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + AccountId: str + Username: Optional[str] = None + Email: Optional[str] = None + UserType: Optional[UserTypeType] = None + +class VoiceConnectorItemTypeDef(BaseModel): + VoiceConnectorId: str + Priority: int + +class CreateVoiceConnectorRequestRequestTypeDef(BaseModel): + Name: str + RequireEncryption: bool + AwsRegion: Optional[VoiceConnectorAwsRegionType] = None + +class VoiceConnectorTypeDef(BaseModel): + VoiceConnectorId: Optional[str] = None + AwsRegion: Optional[VoiceConnectorAwsRegionType] = None + Name: Optional[str] = None + OutboundHostName: Optional[str] = None + RequireEncryption: Optional[bool] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + VoiceConnectorArn: Optional[str] = None + +class CredentialTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + +class DNISEmergencyCallingConfigurationTypeDef(BaseModel): + EmergencyPhoneNumber: str + CallingCountry: str + TestPhoneNumber: Optional[str] = None + +class DeleteAccountRequestRequestTypeDef(BaseModel): + AccountId: str + +class DeleteAppInstanceAdminRequestRequestTypeDef(BaseModel): + AppInstanceAdminArn: str + AppInstanceArn: str + +class DeleteAppInstanceRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class DeleteAppInstanceStreamingConfigurationsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class DeleteAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + +class DeleteAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + +class DeleteChannelBanRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: Optional[str] = None + +class DeleteChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: Optional[str] = None + +class DeleteChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: Optional[str] = None + +class DeleteChannelModeratorRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelModeratorArn: str + ChimeBearer: Optional[str] = None + +class DeleteChannelRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: Optional[str] = None + +class DeleteEventsConfigurationRequestRequestTypeDef(BaseModel): + AccountId: str + BotId: str + +class DeleteMediaCapturePipelineRequestRequestTypeDef(BaseModel): + MediaPipelineId: str + +class DeleteMeetingRequestRequestTypeDef(BaseModel): + MeetingId: str + +class DeletePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class DeleteProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ProxySessionId: str + +class DeleteRoomMembershipRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + MemberId: str + +class DeleteRoomRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + +class DeleteSipMediaApplicationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class DeleteSipRuleRequestRequestTypeDef(BaseModel): + SipRuleId: str + +class DeleteVoiceConnectorEmergencyCallingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + +class DeleteVoiceConnectorOriginationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorProxyRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorStreamingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorTerminationCredentialsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Usernames: Sequence[str] + +class DeleteVoiceConnectorTerminationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DescribeAppInstanceAdminRequestRequestTypeDef(BaseModel): + AppInstanceAdminArn: str + AppInstanceArn: str + +class DescribeAppInstanceRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class DescribeAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + +class DescribeChannelBanRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: Optional[str] = None + +class DescribeChannelMembershipForAppInstanceUserRequestRequestTypeDef(BaseModel): + ChannelArn: str + AppInstanceUserArn: str + ChimeBearer: Optional[str] = None + +class DescribeChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: Optional[str] = None + +class DescribeChannelModeratedByAppInstanceUserRequestRequestTypeDef(BaseModel): + ChannelArn: str + AppInstanceUserArn: str + ChimeBearer: Optional[str] = None + +class DescribeChannelModeratorRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelModeratorArn: str + ChimeBearer: Optional[str] = None + +class DescribeChannelRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: Optional[str] = None + +class DisassociatePhoneNumberFromUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + +class DisassociatePhoneNumbersFromVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + E164PhoneNumbers: Sequence[str] + +class DisassociatePhoneNumbersFromVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + E164PhoneNumbers: Sequence[str] + +class DisassociateSigninDelegateGroupsFromAccountRequestRequestTypeDef(BaseModel): + AccountId: str + GroupNames: Sequence[str] + +class EngineTranscribeMedicalSettingsTypeDef(BaseModel): + LanguageCode: Literal["en-US"] + Specialty: TranscribeMedicalSpecialtyType + Type: TranscribeMedicalTypeType + VocabularyName: Optional[str] = None + Region: Optional[TranscribeMedicalRegionType] = None + ContentIdentificationType: Optional[Literal["PHI"]] = None + +class EngineTranscribeSettingsTypeDef(BaseModel): + LanguageCode: Optional[TranscribeLanguageCodeType] = None + VocabularyFilterMethod: Optional[TranscribeVocabularyFilterMethodType] = None + VocabularyFilterName: Optional[str] = None + VocabularyName: Optional[str] = None + Region: Optional[TranscribeRegionType] = None + EnablePartialResultsStabilization: Optional[bool] = None + PartialResultsStability: Optional[TranscribePartialResultsStabilityType] = None + ContentIdentificationType: Optional[Literal["PII"]] = None + ContentRedactionType: Optional[Literal["PII"]] = None + PiiEntityTypes: Optional[str] = None + LanguageModelName: Optional[str] = None + IdentifyLanguage: Optional[bool] = None + LanguageOptions: Optional[str] = None + PreferredLanguage: Optional[TranscribeLanguageCodeType] = None + VocabularyNames: Optional[str] = None + VocabularyFilterNames: Optional[str] = None + +class EventsConfigurationTypeDef(BaseModel): + BotId: Optional[str] = None + OutboundEventsHTTPSEndpoint: Optional[str] = None + LambdaFunctionArn: Optional[str] = None + +class GetAccountRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetAccountSettingsRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetAppInstanceRetentionSettingsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class GetAppInstanceStreamingConfigurationsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class GetAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + +class GetBotRequestRequestTypeDef(BaseModel): + AccountId: str + BotId: str + +class GetChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: Optional[str] = None + +class GetEventsConfigurationRequestRequestTypeDef(BaseModel): + AccountId: str + BotId: str + +class VoiceConnectorSettingsTypeDef(BaseModel): + CdrBucket: Optional[str] = None + +class GetMediaCapturePipelineRequestRequestTypeDef(BaseModel): + MediaPipelineId: str + +class GetMeetingRequestRequestTypeDef(BaseModel): + MeetingId: str + +class MessagingSessionEndpointTypeDef(BaseModel): + Url: Optional[str] = None + +class GetPhoneNumberOrderRequestRequestTypeDef(BaseModel): + PhoneNumberOrderId: str + +class GetPhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class GetProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ProxySessionId: str + +class GetRetentionSettingsRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetRoomRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + +class GetSipMediaApplicationLoggingConfigurationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class SipMediaApplicationLoggingConfigurationTypeDef(BaseModel): + EnableSipMediaApplicationMessageLogs: Optional[bool] = None + +class GetSipMediaApplicationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class GetSipRuleRequestRequestTypeDef(BaseModel): + SipRuleId: str + +class GetUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + +class GetUserSettingsRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + +class GetVoiceConnectorEmergencyCallingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + +class GetVoiceConnectorLoggingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class LoggingConfigurationTypeDef(BaseModel): + EnableSIPLogs: Optional[bool] = None + EnableMediaMetricLogs: Optional[bool] = None + +class GetVoiceConnectorOriginationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorProxyRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class ProxyTypeDef(BaseModel): + DefaultSessionExpiryMinutes: Optional[int] = None + Disabled: Optional[bool] = None + FallBackPhoneNumber: Optional[str] = None + PhoneNumberCountries: Optional[List[str]] = None + +class GetVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorStreamingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorTerminationHealthRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class TerminationHealthTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + Source: Optional[str] = None + +class GetVoiceConnectorTerminationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class TerminationTypeDef(BaseModel): + CpsLimit: Optional[int] = None + DefaultPhoneNumber: Optional[str] = None + CallingRegions: Optional[List[str]] = None + CidrAllowedList: Optional[List[str]] = None + Disabled: Optional[bool] = None + +class InviteTypeDef(BaseModel): + InviteId: Optional[str] = None + Status: Optional[InviteStatusType] = None + EmailAddress: Optional[str] = None + EmailStatus: Optional[EmailStatusType] = None + +class InviteUsersRequestRequestTypeDef(BaseModel): + AccountId: str + UserEmailList: Sequence[str] + UserType: Optional[UserTypeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccountsRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + UserEmail: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAppInstanceAdminsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppInstanceUsersRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppInstancesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAttendeeTagsRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + +class ListAttendeesRequestRequestTypeDef(BaseModel): + MeetingId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListBotsRequestRequestTypeDef(BaseModel): + AccountId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelBansRequestRequestTypeDef(BaseModel): + ChannelArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListChannelMembershipsForAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListChannelMembershipsRequestRequestTypeDef(BaseModel): + ChannelArn: str + Type: Optional[ChannelMembershipTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListChannelModeratorsRequestRequestTypeDef(BaseModel): + ChannelArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListChannelsModeratedByAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + Privacy: Optional[ChannelPrivacyType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListMediaCapturePipelinesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMeetingTagsRequestRequestTypeDef(BaseModel): + MeetingId: str + +class ListMeetingsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPhoneNumberOrdersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPhoneNumbersRequestRequestTypeDef(BaseModel): + Status: Optional[PhoneNumberStatusType] = None + ProductType: Optional[PhoneNumberProductTypeType] = None + FilterName: Optional[PhoneNumberAssociationNameType] = None + FilterValue: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListProxySessionsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Status: Optional[ProxySessionStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRoomMembershipsRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRoomsRequestRequestTypeDef(BaseModel): + AccountId: str + MemberId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSipMediaApplicationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSipRulesRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSupportedPhoneNumberCountriesRequestRequestTypeDef(BaseModel): + ProductType: PhoneNumberProductTypeType + +class PhoneNumberCountryTypeDef(BaseModel): + CountryCode: Optional[str] = None + SupportedPhoneNumberTypes: Optional[List[PhoneNumberTypeType]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListUsersRequestRequestTypeDef(BaseModel): + AccountId: str + UserEmail: Optional[str] = None + UserType: Optional[UserTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListVoiceConnectorGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListVoiceConnectorTerminationCredentialsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class ListVoiceConnectorsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class LogoutUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + +class MediaPlacementTypeDef(BaseModel): + AudioHostUrl: Optional[str] = None + AudioFallbackUrl: Optional[str] = None + ScreenDataUrl: Optional[str] = None + ScreenSharingUrl: Optional[str] = None + ScreenViewingUrl: Optional[str] = None + SignalingUrl: Optional[str] = None + TurnControlUrl: Optional[str] = None + EventIngestionUrl: Optional[str] = None + +class MemberTypeDef(BaseModel): + MemberId: Optional[str] = None + MemberType: Optional[MemberTypeType] = None + Email: Optional[str] = None + FullName: Optional[str] = None + AccountId: Optional[str] = None + +class OrderedPhoneNumberTypeDef(BaseModel): + E164PhoneNumber: Optional[str] = None + Status: Optional[OrderedPhoneNumberStatusType] = None + +class OriginationRouteTypeDef(BaseModel): + Host: Optional[str] = None + Port: Optional[int] = None + Protocol: Optional[OriginationRouteProtocolType] = None + Priority: Optional[int] = None + Weight: Optional[int] = None + +class ParticipantTypeDef(BaseModel): + PhoneNumber: Optional[str] = None + ProxyPhoneNumber: Optional[str] = None + +class PhoneNumberAssociationTypeDef(BaseModel): + Value: Optional[str] = None + Name: Optional[PhoneNumberAssociationNameType] = None + AssociatedTimestamp: Optional[datetime] = None + +class PhoneNumberCapabilitiesTypeDef(BaseModel): + InboundCall: Optional[bool] = None + OutboundCall: Optional[bool] = None + InboundSMS: Optional[bool] = None + OutboundSMS: Optional[bool] = None + InboundMMS: Optional[bool] = None + OutboundMMS: Optional[bool] = None + +class PutEventsConfigurationRequestRequestTypeDef(BaseModel): + AccountId: str + BotId: str + OutboundEventsHTTPSEndpoint: Optional[str] = None + LambdaFunctionArn: Optional[str] = None + +class PutVoiceConnectorProxyRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + DefaultSessionExpiryMinutes: int + PhoneNumberPoolCountries: Sequence[str] + FallBackPhoneNumber: Optional[str] = None + Disabled: Optional[bool] = None + +class RedactChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: Optional[str] = None + +class RedactConversationMessageRequestRequestTypeDef(BaseModel): + AccountId: str + ConversationId: str + MessageId: str + +class RedactRoomMessageRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + MessageId: str + +class RegenerateSecurityTokenRequestRequestTypeDef(BaseModel): + AccountId: str + BotId: str + +class ResetPersonalPINRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + +class RestorePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class RoomRetentionSettingsTypeDef(BaseModel): + RetentionDays: Optional[int] = None + +class SearchAvailablePhoneNumbersRequestRequestTypeDef(BaseModel): + AreaCode: Optional[str] = None + City: Optional[str] = None + Country: Optional[str] = None + State: Optional[str] = None + TollFreePrefix: Optional[str] = None + PhoneNumberType: Optional[PhoneNumberTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SelectedVideoStreamsTypeDef(BaseModel): + AttendeeIds: Optional[Sequence[str]] = None + ExternalUserIds: Optional[Sequence[str]] = None + +class SendChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + Content: str + Type: ChannelMessageTypeType + Persistence: ChannelMessagePersistenceTypeType + ClientRequestToken: str + Metadata: Optional[str] = None + ChimeBearer: Optional[str] = None + +class StopMeetingTranscriptionRequestRequestTypeDef(BaseModel): + MeetingId: str + +class StreamingNotificationTargetTypeDef(BaseModel): + NotificationTarget: NotificationTargetType + +class TelephonySettingsTypeDef(BaseModel): + InboundCalling: bool + OutboundCalling: bool + SMS: bool + +class UntagAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + TagKeys: Sequence[str] + +class UntagMeetingRequestRequestTypeDef(BaseModel): + MeetingId: str + TagKeys: Sequence[str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateAccountRequestRequestTypeDef(BaseModel): + AccountId: str + Name: Optional[str] = None + DefaultLicense: Optional[LicenseType] = None + +class UpdateAppInstanceRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + Name: str + Metadata: Optional[str] = None + +class UpdateAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + Name: str + Metadata: Optional[str] = None + +class UpdateBotRequestRequestTypeDef(BaseModel): + AccountId: str + BotId: str + Disabled: Optional[bool] = None + +class UpdateChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + Content: Optional[str] = None + Metadata: Optional[str] = None + ChimeBearer: Optional[str] = None + +class UpdateChannelReadMarkerRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: Optional[str] = None + +class UpdateChannelRequestRequestTypeDef(BaseModel): + ChannelArn: str + Name: str + Mode: ChannelModeType + Metadata: Optional[str] = None + ChimeBearer: Optional[str] = None + +class UpdatePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + ProductType: Optional[PhoneNumberProductTypeType] = None + CallingName: Optional[str] = None + +class UpdatePhoneNumberSettingsRequestRequestTypeDef(BaseModel): + CallingName: str + +class UpdateProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ProxySessionId: str + Capabilities: Sequence[CapabilityType] + ExpiryMinutes: Optional[int] = None + +class UpdateRoomMembershipRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + MemberId: str + Role: Optional[RoomMembershipRoleType] = None + +class UpdateRoomRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + Name: Optional[str] = None + +class UpdateSipMediaApplicationCallRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + TransactionId: str + Arguments: Mapping[str, str] + +class UpdateVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Name: str + RequireEncryption: bool + +class ValidateE911AddressRequestRequestTypeDef(BaseModel): + AwsAccountId: str + StreetNumber: str + StreetInfo: str + City: str + State: str + Country: str + PostalCode: str + +class UpdateAccountSettingsRequestRequestTypeDef(BaseModel): + AccountId: str + AccountSettings: AccountSettingsTypeDef + +class AccountTypeDef(BaseModel): + AwsAccountId: str + AccountId: str + Name: str + AccountType: Optional[AccountTypeType] = None + CreatedTimestamp: Optional[datetime] = None + DefaultLicense: Optional[LicenseType] = None + SupportedLicenses: Optional[List[LicenseType]] = None + AccountStatus: Optional[AccountStatusType] = None + SigninDelegateGroups: Optional[List[SigninDelegateGroupTypeDef]] = None + +class AssociateSigninDelegateGroupsWithAccountRequestRequestTypeDef(BaseModel): + AccountId: str + SigninDelegateGroups: Sequence[SigninDelegateGroupTypeDef] + +class UpdateUserRequestItemTypeDef(BaseModel): + UserId: str + LicenseType: Optional[LicenseType] = None + UserType: Optional[UserTypeType] = None + AlexaForBusinessMetadata: Optional[AlexaForBusinessMetadataTypeDef] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + LicenseType: Optional[LicenseType] = None + UserType: Optional[UserTypeType] = None + AlexaForBusinessMetadata: Optional[AlexaForBusinessMetadataTypeDef] = None + +class UserTypeDef(BaseModel): + UserId: str + AccountId: Optional[str] = None + PrimaryEmail: Optional[str] = None + PrimaryProvisionedNumber: Optional[str] = None + DisplayName: Optional[str] = None + LicenseType: Optional[LicenseType] = None + UserType: Optional[UserTypeType] = None + UserRegistrationStatus: Optional[RegistrationStatusType] = None + UserInvitationStatus: Optional[InviteStatusType] = None + RegisteredOn: Optional[datetime] = None + InvitedOn: Optional[datetime] = None + AlexaForBusinessMetadata: Optional[AlexaForBusinessMetadataTypeDef] = None + PersonalPIN: Optional[str] = None + +class AppInstanceAdminSummaryTypeDef(BaseModel): + Admin: Optional[IdentityTypeDef] = None + +class AppInstanceAdminTypeDef(BaseModel): + Admin: Optional[IdentityTypeDef] = None + AppInstanceArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class BatchChannelMembershipsTypeDef(BaseModel): + InvitedBy: Optional[IdentityTypeDef] = None + Type: Optional[ChannelMembershipTypeType] = None + Members: Optional[List[IdentityTypeDef]] = None + ChannelArn: Optional[str] = None + +class ChannelBanSummaryTypeDef(BaseModel): + Member: Optional[IdentityTypeDef] = None + +class ChannelBanTypeDef(BaseModel): + Member: Optional[IdentityTypeDef] = None + ChannelArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + CreatedBy: Optional[IdentityTypeDef] = None + +class ChannelMembershipSummaryTypeDef(BaseModel): + Member: Optional[IdentityTypeDef] = None + +class ChannelMembershipTypeDef(BaseModel): + InvitedBy: Optional[IdentityTypeDef] = None + Type: Optional[ChannelMembershipTypeType] = None + Member: Optional[IdentityTypeDef] = None + ChannelArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class ChannelMessageSummaryTypeDef(BaseModel): + MessageId: Optional[str] = None + Content: Optional[str] = None + Metadata: Optional[str] = None + Type: Optional[ChannelMessageTypeType] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + LastEditedTimestamp: Optional[datetime] = None + Sender: Optional[IdentityTypeDef] = None + Redacted: Optional[bool] = None + +class ChannelMessageTypeDef(BaseModel): + ChannelArn: Optional[str] = None + MessageId: Optional[str] = None + Content: Optional[str] = None + Metadata: Optional[str] = None + Type: Optional[ChannelMessageTypeType] = None + CreatedTimestamp: Optional[datetime] = None + LastEditedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Sender: Optional[IdentityTypeDef] = None + Redacted: Optional[bool] = None + Persistence: Optional[ChannelMessagePersistenceTypeType] = None + +class ChannelModeratorSummaryTypeDef(BaseModel): + Moderator: Optional[IdentityTypeDef] = None + +class ChannelModeratorTypeDef(BaseModel): + Moderator: Optional[IdentityTypeDef] = None + ChannelArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + CreatedBy: Optional[IdentityTypeDef] = None + +class ChannelTypeDef(BaseModel): + Name: Optional[str] = None + ChannelArn: Optional[str] = None + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + CreatedBy: Optional[IdentityTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + LastMessageTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class AppInstanceRetentionSettingsTypeDef(BaseModel): + ChannelRetentionSettings: Optional[ChannelRetentionSettingsTypeDef] = None + +class PutAppInstanceStreamingConfigurationsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceStreamingConfigurations: Sequence[AppInstanceStreamingConfigurationTypeDef] + +class ArtifactsConfigurationTypeDef(BaseModel): + Audio: AudioArtifactsConfigurationTypeDef + Video: VideoArtifactsConfigurationTypeDef + Content: ContentArtifactsConfigurationTypeDef + +class AssociatePhoneNumbersWithVoiceConnectorGroupResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociatePhoneNumbersWithVoiceConnectorResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeletePhoneNumberResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdatePhoneNumberResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceAdminResponseTypeDef(BaseModel): + AppInstanceAdmin: IdentityTypeDef + AppInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceResponseTypeDef(BaseModel): + AppInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceUserResponseTypeDef(BaseModel): + AppInstanceUserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelBanResponseTypeDef(BaseModel): + ChannelArn: str + Member: IdentityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelMembershipResponseTypeDef(BaseModel): + ChannelArn: str + Member: IdentityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelModeratorResponseTypeDef(BaseModel): + ChannelArn: str + ChannelModerator: IdentityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelResponseTypeDef(BaseModel): + ChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMeetingDialOutResponseTypeDef(BaseModel): + TransactionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceResponseTypeDef(BaseModel): + AppInstance: AppInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceUserResponseTypeDef(BaseModel): + AppInstanceUser: AppInstanceUserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociatePhoneNumbersFromVoiceConnectorGroupResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociatePhoneNumbersFromVoiceConnectorResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountSettingsResponseTypeDef(BaseModel): + AccountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppInstanceStreamingConfigurationsResponseTypeDef(BaseModel): + AppInstanceStreamingConfigurations: List[AppInstanceStreamingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPhoneNumberSettingsResponseTypeDef(BaseModel): + CallingName: str + CallingNameUpdatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstanceUsersResponseTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceUsers: List[AppInstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstancesResponseTypeDef(BaseModel): + AppInstances: List[AppInstanceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceConnectorTerminationCredentialsResponseTypeDef(BaseModel): + Usernames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppInstanceStreamingConfigurationsResponseTypeDef(BaseModel): + AppInstanceStreamingConfigurations: List[AppInstanceStreamingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RedactChannelMessageResponseTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchAvailablePhoneNumbersResponseTypeDef(BaseModel): + E164PhoneNumbers: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendChannelMessageResponseTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppInstanceResponseTypeDef(BaseModel): + AppInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppInstanceUserResponseTypeDef(BaseModel): + AppInstanceUserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelMessageResponseTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelReadMarkerResponseTypeDef(BaseModel): + ChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + ChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAttendeeResponseTypeDef(BaseModel): + Attendee: AttendeeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAttendeeResponseTypeDef(BaseModel): + Attendee: AttendeeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttendeesResponseTypeDef(BaseModel): + Attendees: List[AttendeeTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateAttendeeResponseTypeDef(BaseModel): + Attendees: List[AttendeeTypeDef] + Errors: List[CreateAttendeeErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateRoomMembershipRequestRequestTypeDef(BaseModel): + AccountId: str + RoomId: str + MembershipItemList: Sequence[MembershipItemTypeDef] + +class BatchCreateRoomMembershipResponseTypeDef(BaseModel): + Errors: List[MemberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchSuspendUserResponseTypeDef(BaseModel): + UserErrors: List[UserErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUnsuspendUserResponseTypeDef(BaseModel): + UserErrors: List[UserErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateUserResponseTypeDef(BaseModel): + UserErrors: List[UserErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdatePhoneNumberRequestRequestTypeDef(BaseModel): + UpdatePhoneNumberRequestItems: Sequence[UpdatePhoneNumberRequestItemTypeDef] + +class CreateBotResponseTypeDef(BaseModel): + Bot: BotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotResponseTypeDef(BaseModel): + Bot: BotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBotsResponseTypeDef(BaseModel): + Bots: List[BotTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegenerateSecurityTokenResponseTypeDef(BaseModel): + Bot: BotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBotResponseTypeDef(BaseModel): + Bot: BotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateE911AddressResponseTypeDef(BaseModel): + ValidationResult: int + AddressExternalId: str + Address: AddressTypeDef + CandidateAddressList: List[CandidateAddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelMembershipForAppInstanceUserSummaryTypeDef(BaseModel): + ChannelSummary: Optional[ChannelSummaryTypeDef] = None + AppInstanceUserMembershipSummary: Optional[AppInstanceUserMembershipSummaryTypeDef] = None + +class ChannelModeratedByAppInstanceUserSummaryTypeDef(BaseModel): + ChannelSummary: Optional[ChannelSummaryTypeDef] = None + +class ListChannelsResponseTypeDef(BaseModel): + Channels: List[ChannelSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceRequestRequestTypeDef(BaseModel): + Name: str + ClientRequestToken: str + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceUserId: str + Name: str + ClientRequestToken: str + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAttendeeRequestItemTypeDef(BaseModel): + ExternalUserId: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + ExternalUserId: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateChannelRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + Name: str + ClientRequestToken: str + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ChimeBearer: Optional[str] = None + +class ListAttendeeTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMeetingTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + Tags: Sequence[TagTypeDef] + +class TagMeetingRequestRequestTypeDef(BaseModel): + MeetingId: str + Tags: Sequence[TagTypeDef] + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateMeetingRequestRequestTypeDef(BaseModel): + ClientRequestToken: str + ExternalMeetingId: Optional[str] = None + MeetingHostId: Optional[str] = None + MediaRegion: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + NotificationsConfiguration: Optional[MeetingNotificationConfigurationTypeDef] = None + +class CreateProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ParticipantPhoneNumbers: Sequence[str] + Capabilities: Sequence[CapabilityType] + Name: Optional[str] = None + ExpiryMinutes: Optional[int] = None + NumberSelectionBehavior: Optional[NumberSelectionBehaviorType] = None + GeoMatchLevel: Optional[GeoMatchLevelType] = None + GeoMatchParams: Optional[GeoMatchParamsTypeDef] = None + +class CreateRoomResponseTypeDef(BaseModel): + Room: RoomTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRoomResponseTypeDef(BaseModel): + Room: RoomTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoomsResponseTypeDef(BaseModel): + Rooms: List[RoomTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoomResponseTypeDef(BaseModel): + Room: RoomTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSipMediaApplicationCallResponseTypeDef(BaseModel): + SipMediaApplicationCall: SipMediaApplicationCallTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSipMediaApplicationCallResponseTypeDef(BaseModel): + SipMediaApplicationCall: SipMediaApplicationCallTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSipMediaApplicationRequestRequestTypeDef(BaseModel): + AwsRegion: str + Name: str + Endpoints: Sequence[SipMediaApplicationEndpointTypeDef] + +class SipMediaApplicationTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + AwsRegion: Optional[str] = None + Name: Optional[str] = None + Endpoints: Optional[List[SipMediaApplicationEndpointTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class UpdateSipMediaApplicationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + Name: Optional[str] = None + Endpoints: Optional[Sequence[SipMediaApplicationEndpointTypeDef]] = None + +class CreateSipRuleRequestRequestTypeDef(BaseModel): + Name: str + TriggerType: SipRuleTriggerTypeType + TriggerValue: str + TargetApplications: Sequence[SipRuleTargetApplicationTypeDef] + Disabled: Optional[bool] = None + +class SipRuleTypeDef(BaseModel): + SipRuleId: Optional[str] = None + Name: Optional[str] = None + Disabled: Optional[bool] = None + TriggerType: Optional[SipRuleTriggerTypeType] = None + TriggerValue: Optional[str] = None + TargetApplications: Optional[List[SipRuleTargetApplicationTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class UpdateSipRuleRequestRequestTypeDef(BaseModel): + SipRuleId: str + Name: str + Disabled: Optional[bool] = None + TargetApplications: Optional[Sequence[SipRuleTargetApplicationTypeDef]] = None + +class CreateVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + Name: str + VoiceConnectorItems: Optional[Sequence[VoiceConnectorItemTypeDef]] = None + +class UpdateVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + Name: str + VoiceConnectorItems: Sequence[VoiceConnectorItemTypeDef] + +class VoiceConnectorGroupTypeDef(BaseModel): + VoiceConnectorGroupId: Optional[str] = None + Name: Optional[str] = None + VoiceConnectorItems: Optional[List[VoiceConnectorItemTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + VoiceConnectorGroupArn: Optional[str] = None + +class CreateVoiceConnectorResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceConnectorsResponseTypeDef(BaseModel): + VoiceConnectors: List[VoiceConnectorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVoiceConnectorResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorTerminationCredentialsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Credentials: Optional[Sequence[CredentialTypeDef]] = None + +class EmergencyCallingConfigurationTypeDef(BaseModel): + DNIS: Optional[List[DNISEmergencyCallingConfigurationTypeDef]] = None + +class TranscriptionConfigurationTypeDef(BaseModel): + EngineTranscribeSettings: Optional[EngineTranscribeSettingsTypeDef] = None + EngineTranscribeMedicalSettings: Optional[EngineTranscribeMedicalSettingsTypeDef] = None + +class GetEventsConfigurationResponseTypeDef(BaseModel): + EventsConfiguration: EventsConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutEventsConfigurationResponseTypeDef(BaseModel): + EventsConfiguration: EventsConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGlobalSettingsResponseTypeDef(BaseModel): + BusinessCalling: BusinessCallingSettingsTypeDef + VoiceConnector: VoiceConnectorSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGlobalSettingsRequestRequestTypeDef(BaseModel): + BusinessCalling: Optional[BusinessCallingSettingsTypeDef] = None + VoiceConnector: Optional[VoiceConnectorSettingsTypeDef] = None + +class GetMessagingSessionEndpointResponseTypeDef(BaseModel): + Endpoint: MessagingSessionEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSipMediaApplicationLoggingConfigurationResponseTypeDef(BaseModel): + SipMediaApplicationLoggingConfiguration: SipMediaApplicationLoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutSipMediaApplicationLoggingConfigurationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + SipMediaApplicationLoggingConfiguration: Optional[ SipMediaApplicationLoggingConfigurationTypeDef ] = None + +class PutSipMediaApplicationLoggingConfigurationResponseTypeDef(BaseModel): + SipMediaApplicationLoggingConfiguration: SipMediaApplicationLoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorLoggingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + LoggingConfiguration: LoggingConfigurationTypeDef + +class PutVoiceConnectorLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorProxyResponseTypeDef(BaseModel): + Proxy: ProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorProxyResponseTypeDef(BaseModel): + Proxy: ProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorTerminationHealthResponseTypeDef(BaseModel): + TerminationHealth: TerminationHealthTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorTerminationResponseTypeDef(BaseModel): + Termination: TerminationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorTerminationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Termination: TerminationTypeDef + +class PutVoiceConnectorTerminationResponseTypeDef(BaseModel): + Termination: TerminationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InviteUsersResponseTypeDef(BaseModel): + Invites: List[InviteTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountsRequestListAccountsPaginateTypeDef(BaseModel): + Name: Optional[str] = None + UserEmail: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + AccountId: str + UserEmail: Optional[str] = None + UserType: Optional[UserTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChannelMessagesRequestRequestTypeDef(BaseModel): + ChannelArn: str + SortOrder: Optional[SortOrderType] = None + NotBefore: Optional[TimestampTypeDef] = None + NotAfter: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChimeBearer: Optional[str] = None + +class ListSupportedPhoneNumberCountriesResponseTypeDef(BaseModel): + PhoneNumberCountries: List[PhoneNumberCountryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MeetingTypeDef(BaseModel): + MeetingId: Optional[str] = None + ExternalMeetingId: Optional[str] = None + MediaPlacement: Optional[MediaPlacementTypeDef] = None + MediaRegion: Optional[str] = None + +class RoomMembershipTypeDef(BaseModel): + RoomId: Optional[str] = None + Member: Optional[MemberTypeDef] = None + Role: Optional[RoomMembershipRoleType] = None + InvitedBy: Optional[str] = None + UpdatedTimestamp: Optional[datetime] = None + +class PhoneNumberOrderTypeDef(BaseModel): + PhoneNumberOrderId: Optional[str] = None + ProductType: Optional[PhoneNumberProductTypeType] = None + Status: Optional[PhoneNumberOrderStatusType] = None + OrderedPhoneNumbers: Optional[List[OrderedPhoneNumberTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class OriginationTypeDef(BaseModel): + Routes: Optional[List[OriginationRouteTypeDef]] = None + Disabled: Optional[bool] = None + +class ProxySessionTypeDef(BaseModel): + VoiceConnectorId: Optional[str] = None + ProxySessionId: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ProxySessionStatusType] = None + ExpiryMinutes: Optional[int] = None + Capabilities: Optional[List[CapabilityType]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + EndedTimestamp: Optional[datetime] = None + Participants: Optional[List[ParticipantTypeDef]] = None + NumberSelectionBehavior: Optional[NumberSelectionBehaviorType] = None + GeoMatchLevel: Optional[GeoMatchLevelType] = None + GeoMatchParams: Optional[GeoMatchParamsTypeDef] = None + +class PhoneNumberTypeDef(BaseModel): + PhoneNumberId: Optional[str] = None + E164PhoneNumber: Optional[str] = None + Country: Optional[str] = None + Type: Optional[PhoneNumberTypeType] = None + ProductType: Optional[PhoneNumberProductTypeType] = None + Status: Optional[PhoneNumberStatusType] = None + Capabilities: Optional[PhoneNumberCapabilitiesTypeDef] = None + Associations: Optional[List[PhoneNumberAssociationTypeDef]] = None + CallingName: Optional[str] = None + CallingNameStatus: Optional[CallingNameStatusType] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + DeletionTimestamp: Optional[datetime] = None + +class RetentionSettingsTypeDef(BaseModel): + RoomRetentionSettings: Optional[RoomRetentionSettingsTypeDef] = None + ConversationRetentionSettings: Optional[ConversationRetentionSettingsTypeDef] = None + +class SourceConfigurationTypeDef(BaseModel): + SelectedVideoStreams: Optional[SelectedVideoStreamsTypeDef] = None + +class StreamingConfigurationTypeDef(BaseModel): + DataRetentionInHours: int + Disabled: Optional[bool] = None + StreamingNotificationTargets: Optional[List[StreamingNotificationTargetTypeDef]] = None + +class UserSettingsTypeDef(BaseModel): + Telephony: TelephonySettingsTypeDef + +class CreateAccountResponseTypeDef(BaseModel): + Account: AccountTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountResponseTypeDef(BaseModel): + Account: AccountTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountsResponseTypeDef(BaseModel): + Accounts: List[AccountTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountResponseTypeDef(BaseModel): + Account: AccountTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateUserRequestRequestTypeDef(BaseModel): + AccountId: str + UpdateUserRequestItems: Sequence[UpdateUserRequestItemTypeDef] + +class CreateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetPersonalPINResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstanceAdminsResponseTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceAdmins: List[AppInstanceAdminSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceAdminResponseTypeDef(BaseModel): + AppInstanceAdmin: AppInstanceAdminTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateChannelMembershipResponseTypeDef(BaseModel): + BatchChannelMemberships: BatchChannelMembershipsTypeDef + Errors: List[BatchCreateChannelMembershipErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelBansResponseTypeDef(BaseModel): + ChannelArn: str + NextToken: str + ChannelBans: List[ChannelBanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelBanResponseTypeDef(BaseModel): + ChannelBan: ChannelBanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelMembershipsResponseTypeDef(BaseModel): + ChannelArn: str + ChannelMemberships: List[ChannelMembershipSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelMembershipResponseTypeDef(BaseModel): + ChannelMembership: ChannelMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelMessagesResponseTypeDef(BaseModel): + ChannelArn: str + NextToken: str + ChannelMessages: List[ChannelMessageSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelMessageResponseTypeDef(BaseModel): + ChannelMessage: ChannelMessageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelModeratorsResponseTypeDef(BaseModel): + ChannelArn: str + NextToken: str + ChannelModerators: List[ChannelModeratorSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelModeratorResponseTypeDef(BaseModel): + ChannelModerator: ChannelModeratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelResponseTypeDef(BaseModel): + Channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppInstanceRetentionSettingsResponseTypeDef(BaseModel): + AppInstanceRetentionSettings: AppInstanceRetentionSettingsTypeDef + InitiateDeletionTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppInstanceRetentionSettingsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceRetentionSettings: AppInstanceRetentionSettingsTypeDef + +class PutAppInstanceRetentionSettingsResponseTypeDef(BaseModel): + AppInstanceRetentionSettings: AppInstanceRetentionSettingsTypeDef + InitiateDeletionTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelMembershipForAppInstanceUserResponseTypeDef(BaseModel): + ChannelMembership: ChannelMembershipForAppInstanceUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelMembershipsForAppInstanceUserResponseTypeDef(BaseModel): + ChannelMemberships: List[ChannelMembershipForAppInstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelModeratedByAppInstanceUserResponseTypeDef(BaseModel): + Channel: ChannelModeratedByAppInstanceUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsModeratedByAppInstanceUserResponseTypeDef(BaseModel): + Channels: List[ChannelModeratedByAppInstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + Attendees: Sequence[CreateAttendeeRequestItemTypeDef] + +class CreateMeetingWithAttendeesRequestRequestTypeDef(BaseModel): + ClientRequestToken: str + ExternalMeetingId: Optional[str] = None + MeetingHostId: Optional[str] = None + MediaRegion: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + NotificationsConfiguration: Optional[MeetingNotificationConfigurationTypeDef] = None + Attendees: Optional[Sequence[CreateAttendeeRequestItemTypeDef]] = None + +class CreateSipMediaApplicationResponseTypeDef(BaseModel): + SipMediaApplication: SipMediaApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSipMediaApplicationResponseTypeDef(BaseModel): + SipMediaApplication: SipMediaApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSipMediaApplicationsResponseTypeDef(BaseModel): + SipMediaApplications: List[SipMediaApplicationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSipMediaApplicationResponseTypeDef(BaseModel): + SipMediaApplication: SipMediaApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSipRuleResponseTypeDef(BaseModel): + SipRule: SipRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSipRuleResponseTypeDef(BaseModel): + SipRule: SipRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSipRulesResponseTypeDef(BaseModel): + SipRules: List[SipRuleTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSipRuleResponseTypeDef(BaseModel): + SipRule: SipRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVoiceConnectorGroupResponseTypeDef(BaseModel): + VoiceConnectorGroup: VoiceConnectorGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorGroupResponseTypeDef(BaseModel): + VoiceConnectorGroup: VoiceConnectorGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceConnectorGroupsResponseTypeDef(BaseModel): + VoiceConnectorGroups: List[VoiceConnectorGroupTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVoiceConnectorGroupResponseTypeDef(BaseModel): + VoiceConnectorGroup: VoiceConnectorGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorEmergencyCallingConfigurationResponseTypeDef(BaseModel): + EmergencyCallingConfiguration: EmergencyCallingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorEmergencyCallingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + EmergencyCallingConfiguration: EmergencyCallingConfigurationTypeDef + +class PutVoiceConnectorEmergencyCallingConfigurationResponseTypeDef(BaseModel): + EmergencyCallingConfiguration: EmergencyCallingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartMeetingTranscriptionRequestRequestTypeDef(BaseModel): + MeetingId: str + TranscriptionConfiguration: TranscriptionConfigurationTypeDef + +class CreateMeetingResponseTypeDef(BaseModel): + Meeting: MeetingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMeetingWithAttendeesResponseTypeDef(BaseModel): + Meeting: MeetingTypeDef + Attendees: List[AttendeeTypeDef] + Errors: List[CreateAttendeeErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMeetingResponseTypeDef(BaseModel): + Meeting: MeetingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMeetingsResponseTypeDef(BaseModel): + Meetings: List[MeetingTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRoomMembershipResponseTypeDef(BaseModel): + RoomMembership: RoomMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoomMembershipsResponseTypeDef(BaseModel): + RoomMemberships: List[RoomMembershipTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoomMembershipResponseTypeDef(BaseModel): + RoomMembership: RoomMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePhoneNumberOrderResponseTypeDef(BaseModel): + PhoneNumberOrder: PhoneNumberOrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPhoneNumberOrderResponseTypeDef(BaseModel): + PhoneNumberOrder: PhoneNumberOrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPhoneNumberOrdersResponseTypeDef(BaseModel): + PhoneNumberOrders: List[PhoneNumberOrderTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorOriginationResponseTypeDef(BaseModel): + Origination: OriginationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorOriginationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Origination: OriginationTypeDef + +class PutVoiceConnectorOriginationResponseTypeDef(BaseModel): + Origination: OriginationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProxySessionResponseTypeDef(BaseModel): + ProxySession: ProxySessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProxySessionResponseTypeDef(BaseModel): + ProxySession: ProxySessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProxySessionsResponseTypeDef(BaseModel): + ProxySessions: List[ProxySessionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProxySessionResponseTypeDef(BaseModel): + ProxySession: ProxySessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPhoneNumberResponseTypeDef(BaseModel): + PhoneNumber: PhoneNumberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPhoneNumbersResponseTypeDef(BaseModel): + PhoneNumbers: List[PhoneNumberTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestorePhoneNumberResponseTypeDef(BaseModel): + PhoneNumber: PhoneNumberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePhoneNumberResponseTypeDef(BaseModel): + PhoneNumber: PhoneNumberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRetentionSettingsResponseTypeDef(BaseModel): + RetentionSettings: RetentionSettingsTypeDef + InitiateDeletionTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutRetentionSettingsRequestRequestTypeDef(BaseModel): + AccountId: str + RetentionSettings: RetentionSettingsTypeDef + +class PutRetentionSettingsResponseTypeDef(BaseModel): + RetentionSettings: RetentionSettingsTypeDef + InitiateDeletionTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ChimeSdkMeetingConfigurationTypeDef(BaseModel): + SourceConfiguration: Optional[SourceConfigurationTypeDef] = None + ArtifactsConfiguration: Optional[ArtifactsConfigurationTypeDef] = None + +class GetVoiceConnectorStreamingConfigurationResponseTypeDef(BaseModel): + StreamingConfiguration: StreamingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorStreamingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + StreamingConfiguration: StreamingConfigurationTypeDef + +class PutVoiceConnectorStreamingConfigurationResponseTypeDef(BaseModel): + StreamingConfiguration: StreamingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserSettingsResponseTypeDef(BaseModel): + UserSettings: UserSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserSettingsRequestRequestTypeDef(BaseModel): + AccountId: str + UserId: str + UserSettings: UserSettingsTypeDef + +class CreateMediaCapturePipelineRequestRequestTypeDef(BaseModel): + SourceType: Literal["ChimeSdkMeeting"] + SourceArn: str + SinkType: Literal["S3Bucket"] + SinkArn: str + ClientRequestToken: Optional[str] = None + ChimeSdkMeetingConfiguration: Optional[ChimeSdkMeetingConfigurationTypeDef] = None + +class MediaCapturePipelineTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + SourceType: Optional[Literal["ChimeSdkMeeting"]] = None + SourceArn: Optional[str] = None + Status: Optional[MediaPipelineStatusType] = None + SinkType: Optional[Literal["S3Bucket"]] = None + SinkArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + ChimeSdkMeetingConfiguration: Optional[ChimeSdkMeetingConfigurationTypeDef] = None + +class CreateMediaCapturePipelineResponseTypeDef(BaseModel): + MediaCapturePipeline: MediaCapturePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMediaCapturePipelineResponseTypeDef(BaseModel): + MediaCapturePipeline: MediaCapturePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMediaCapturePipelinesResponseTypeDef(BaseModel): + MediaCapturePipelines: List[MediaCapturePipelineTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chime_constants.py b/aws_resource_validator/pydantic_models/chime_constants.py new file mode 100644 index 00000000..47a4ec95 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_constants.py @@ -0,0 +1,488 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountStatusType = Literal["Active", "Suspended"] +AccountTypeType = Literal["EnterpriseDirectory", "EnterpriseLWA", "EnterpriseOIDC", "Team"] +AppInstanceDataTypeType = Literal["Channel", "ChannelMessage"] +ArtifactsStateType = Literal["Disabled", "Enabled"] +AudioMuxTypeType = Literal["AudioOnly", "AudioWithActiveSpeakerVideo"] +BotTypeType = Literal["ChatBot"] +CallingNameStatusType = Literal["Unassigned", "UpdateFailed", "UpdateInProgress", "UpdateSucceeded"] +CapabilityType = Literal["SMS", "Voice"] +ChannelMembershipTypeType = Literal["DEFAULT", "HIDDEN"] +ChannelMessagePersistenceTypeType = Literal["NON_PERSISTENT", "PERSISTENT"] +ChannelMessageTypeType = Literal["CONTROL", "STANDARD"] +ChannelModeType = Literal["RESTRICTED", "UNRESTRICTED"] +ChannelPrivacyType = Literal["PRIVATE", "PUBLIC"] +ContentMuxTypeType = Literal["ContentOnly"] +EmailStatusType = Literal["Failed", "NotSent", "Sent"] +ErrorCodeType = Literal["AccessDenied", + "BadRequest", + "Conflict", + "Forbidden", + "NotFound", + "PhoneNumberAssociationsExist", + "PreconditionFailed", + "ResourceLimitExceeded", + "ServiceFailure", + "ServiceUnavailable", + "Throttled", + "Throttling", + "Unauthorized", + "Unprocessable", + "VoiceConnectorGroupAssociationsExist",] +GeoMatchLevelType = Literal["AreaCode", "Country"] +InviteStatusType = Literal["Accepted", "Failed", "Pending"] +LicenseType = Literal["Basic", "Plus", "Pro", "ProTrial"] +ListAccountsPaginatorName = Literal["list_accounts"] +ListUsersPaginatorName = Literal["list_users"] +MediaPipelineSinkTypeType = Literal["S3Bucket"] +MediaPipelineSourceTypeType = Literal["ChimeSdkMeeting"] +MediaPipelineStatusType = Literal["Failed", "InProgress", "Initializing", "Stopped", "Stopping"] +MemberTypeType = Literal["Bot", "User", "Webhook"] +NotificationTargetType = Literal["EventBridge", "SNS", "SQS"] +NumberSelectionBehaviorType = Literal["AvoidSticky", "PreferSticky"] +OrderedPhoneNumberStatusType = Literal["Acquired", "Failed", "Processing"] +OriginationRouteProtocolType = Literal["TCP", "UDP"] +PhoneNumberAssociationNameType = Literal["AccountId", "SipRuleId", "UserId", "VoiceConnectorGroupId", "VoiceConnectorId"] +PhoneNumberOrderStatusType = Literal["Failed", "Partial", "Processing", "Successful"] +PhoneNumberProductTypeType = Literal["BusinessCalling", "SipMediaApplicationDialIn", "VoiceConnector"] +PhoneNumberStatusType = Literal["AcquireFailed", + "AcquireInProgress", + "Assigned", + "DeleteFailed", + "DeleteInProgress", + "ReleaseFailed", + "ReleaseInProgress", + "Unassigned",] +PhoneNumberTypeType = Literal["Local", "TollFree"] +ProxySessionStatusType = Literal["Closed", "InProgress", "Open"] +RegistrationStatusType = Literal["Registered", "Suspended", "Unregistered"] +RoomMembershipRoleType = Literal["Administrator", "Member"] +SipRuleTriggerTypeType = Literal["RequestUriHostname", "ToPhoneNumber"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +TranscribeContentIdentificationTypeType = Literal["PII"] +TranscribeContentRedactionTypeType = Literal["PII"] +TranscribeLanguageCodeType = Literal["de-DE", + "en-AU", + "en-GB", + "en-US", + "es-US", + "fr-CA", + "fr-FR", + "hi-IN", + "it-IT", + "ja-JP", + "ko-KR", + "pt-BR", + "th-TH", + "zh-CN",] +TranscribeMedicalContentIdentificationTypeType = Literal["PHI"] +TranscribeMedicalLanguageCodeType = Literal["en-US"] +TranscribeMedicalRegionType = Literal["ap-southeast-2", "auto", "ca-central-1", "eu-west-1", "us-east-1", "us-east-2", "us-west-2"] +TranscribeMedicalSpecialtyType = Literal["CARDIOLOGY", "NEUROLOGY", "ONCOLOGY", "PRIMARYCARE", "RADIOLOGY", "UROLOGY"] +TranscribeMedicalTypeType = Literal["CONVERSATION", "DICTATION"] +TranscribePartialResultsStabilityType = Literal["high", "low", "medium"] +TranscribeRegionType = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-2", + "auto", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TranscribeVocabularyFilterMethodType = Literal["mask", "remove", "tag"] +UserTypeType = Literal["PrivateUser", "SharedDevice"] +VideoMuxTypeType = Literal["VideoOnly"] +VoiceConnectorAwsRegionType = Literal["us-east-1", "us-west-2"] +ChimeServiceName = Literal["chime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_accounts", "list_users"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/chime_sdk_identity_classes.py b/aws_resource_validator/pydantic_models/chime_sdk_identity_classes.py new file mode 100644 index 00000000..758c6a96 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_identity_classes.py @@ -0,0 +1,373 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chime_sdk_identity_constants import * + +class IdentityTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class AppInstanceBotSummaryTypeDef(BaseModel): + AppInstanceBotArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + +class ChannelRetentionSettingsTypeDef(BaseModel): + RetentionDays: Optional[int] = None + +class AppInstanceSummaryTypeDef(BaseModel): + AppInstanceArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + +class AppInstanceTypeDef(BaseModel): + AppInstanceArn: Optional[str] = None + Name: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Metadata: Optional[str] = None + +class EndpointStateTypeDef(BaseModel): + Status: EndpointStatusType + StatusReason: Optional[EndpointStatusReasonType] = None + +class EndpointAttributesTypeDef(BaseModel): + DeviceToken: str + VoipDeviceToken: Optional[str] = None + +class AppInstanceUserSummaryTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + +class ExpirationSettingsTypeDef(BaseModel): + ExpirationDays: int + ExpirationCriterion: Literal["CREATED_TIMESTAMP"] + +class CreateAppInstanceAdminRequestRequestTypeDef(BaseModel): + AppInstanceAdminArn: str + AppInstanceArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteAppInstanceAdminRequestRequestTypeDef(BaseModel): + AppInstanceAdminArn: str + AppInstanceArn: str + +class DeleteAppInstanceBotRequestRequestTypeDef(BaseModel): + AppInstanceBotArn: str + +class DeleteAppInstanceRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class DeleteAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + +class DeregisterAppInstanceUserEndpointRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + EndpointId: str + +class DescribeAppInstanceAdminRequestRequestTypeDef(BaseModel): + AppInstanceAdminArn: str + AppInstanceArn: str + +class DescribeAppInstanceBotRequestRequestTypeDef(BaseModel): + AppInstanceBotArn: str + +class DescribeAppInstanceRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class DescribeAppInstanceUserEndpointRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + EndpointId: str + +class DescribeAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + +class GetAppInstanceRetentionSettingsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class InvokedByTypeDef(BaseModel): + StandardMessages: StandardMessagesType + TargetedMessages: TargetedMessagesType + +class ListAppInstanceAdminsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppInstanceBotsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppInstanceUserEndpointsRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppInstanceUsersRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppInstancesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateAppInstanceRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + Name: str + Metadata: str + +class UpdateAppInstanceUserEndpointRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + EndpointId: str + Name: Optional[str] = None + AllowMessages: Optional[AllowMessagesType] = None + +class UpdateAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + Name: str + Metadata: str + +class AppInstanceAdminSummaryTypeDef(BaseModel): + Admin: Optional[IdentityTypeDef] = None + +class AppInstanceAdminTypeDef(BaseModel): + Admin: Optional[IdentityTypeDef] = None + AppInstanceArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class AppInstanceRetentionSettingsTypeDef(BaseModel): + ChannelRetentionSettings: Optional[ChannelRetentionSettingsTypeDef] = None + +class AppInstanceUserEndpointSummaryTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + EndpointId: Optional[str] = None + Name: Optional[str] = None + Type: Optional[AppInstanceUserEndpointTypeType] = None + AllowMessages: Optional[AllowMessagesType] = None + EndpointState: Optional[EndpointStateTypeDef] = None + +class AppInstanceUserEndpointTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + EndpointId: Optional[str] = None + Name: Optional[str] = None + Type: Optional[AppInstanceUserEndpointTypeType] = None + ResourceArn: Optional[str] = None + EndpointAttributes: Optional[EndpointAttributesTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + AllowMessages: Optional[AllowMessagesType] = None + EndpointState: Optional[EndpointStateTypeDef] = None + +class RegisterAppInstanceUserEndpointRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + Type: AppInstanceUserEndpointTypeType + ResourceArn: str + EndpointAttributes: EndpointAttributesTypeDef + ClientRequestToken: str + Name: Optional[str] = None + AllowMessages: Optional[AllowMessagesType] = None + +class AppInstanceUserTypeDef(BaseModel): + AppInstanceUserArn: Optional[str] = None + Name: Optional[str] = None + Metadata: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + ExpirationSettings: Optional[ExpirationSettingsTypeDef] = None + +class PutAppInstanceUserExpirationSettingsRequestRequestTypeDef(BaseModel): + AppInstanceUserArn: str + ExpirationSettings: Optional[ExpirationSettingsTypeDef] = None + +class CreateAppInstanceAdminResponseTypeDef(BaseModel): + AppInstanceAdmin: IdentityTypeDef + AppInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceBotResponseTypeDef(BaseModel): + AppInstanceBotArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceResponseTypeDef(BaseModel): + AppInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceUserResponseTypeDef(BaseModel): + AppInstanceUserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceResponseTypeDef(BaseModel): + AppInstance: AppInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstanceBotsResponseTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceBots: List[AppInstanceBotSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstanceUsersResponseTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceUsers: List[AppInstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstancesResponseTypeDef(BaseModel): + AppInstances: List[AppInstanceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppInstanceUserExpirationSettingsResponseTypeDef(BaseModel): + AppInstanceUserArn: str + ExpirationSettings: ExpirationSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterAppInstanceUserEndpointResponseTypeDef(BaseModel): + AppInstanceUserArn: str + EndpointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppInstanceBotResponseTypeDef(BaseModel): + AppInstanceBotArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppInstanceResponseTypeDef(BaseModel): + AppInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppInstanceUserEndpointResponseTypeDef(BaseModel): + AppInstanceUserArn: str + EndpointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppInstanceUserResponseTypeDef(BaseModel): + AppInstanceUserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppInstanceRequestRequestTypeDef(BaseModel): + Name: str + ClientRequestToken: str + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAppInstanceUserRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceUserId: str + Name: str + ClientRequestToken: str + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ExpirationSettings: Optional[ExpirationSettingsTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class LexConfigurationTypeDef(BaseModel): + LexBotAliasArn: str + LocaleId: str + RespondsTo: Optional[Literal["STANDARD_MESSAGES"]] = None + InvokedBy: Optional[InvokedByTypeDef] = None + WelcomeIntent: Optional[str] = None + +class ListAppInstanceAdminsResponseTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceAdmins: List[AppInstanceAdminSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceAdminResponseTypeDef(BaseModel): + AppInstanceAdmin: AppInstanceAdminTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppInstanceRetentionSettingsResponseTypeDef(BaseModel): + AppInstanceRetentionSettings: AppInstanceRetentionSettingsTypeDef + InitiateDeletionTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppInstanceRetentionSettingsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + AppInstanceRetentionSettings: AppInstanceRetentionSettingsTypeDef + +class PutAppInstanceRetentionSettingsResponseTypeDef(BaseModel): + AppInstanceRetentionSettings: AppInstanceRetentionSettingsTypeDef + InitiateDeletionTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInstanceUserEndpointsResponseTypeDef(BaseModel): + AppInstanceUserEndpoints: List[AppInstanceUserEndpointSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceUserEndpointResponseTypeDef(BaseModel): + AppInstanceUserEndpoint: AppInstanceUserEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppInstanceUserResponseTypeDef(BaseModel): + AppInstanceUser: AppInstanceUserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationTypeDef(BaseModel): + Lex: LexConfigurationTypeDef + +class AppInstanceBotTypeDef(BaseModel): + AppInstanceBotArn: Optional[str] = None + Name: Optional[str] = None + Configuration: Optional[ConfigurationTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Metadata: Optional[str] = None + +class CreateAppInstanceBotRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + ClientRequestToken: str + Configuration: ConfigurationTypeDef + Name: Optional[str] = None + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateAppInstanceBotRequestRequestTypeDef(BaseModel): + AppInstanceBotArn: str + Name: str + Metadata: str + Configuration: Optional[ConfigurationTypeDef] = None + +class DescribeAppInstanceBotResponseTypeDef(BaseModel): + AppInstanceBot: AppInstanceBotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chime_sdk_identity_constants.py b/aws_resource_validator/pydantic_models/chime_sdk_identity_constants.py new file mode 100644 index 00000000..4eb3da7c --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_identity_constants.py @@ -0,0 +1,397 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AllowMessagesType = Literal["ALL", "NONE"] +AppInstanceUserEndpointTypeType = Literal["APNS", "APNS_SANDBOX", "GCM"] +EndpointStatusReasonType = Literal["INVALID_DEVICE_TOKEN", "INVALID_PINPOINT_ARN"] +EndpointStatusType = Literal["ACTIVE", "INACTIVE"] +ExpirationCriterionType = Literal["CREATED_TIMESTAMP"] +RespondsToType = Literal["STANDARD_MESSAGES"] +StandardMessagesType = Literal["ALL", "AUTO", "MENTIONS", "NONE"] +TargetedMessagesType = Literal["ALL", "NONE"] +ChimeSDKIdentityServiceName = Literal["chime-sdk-identity"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["eu-central-1", "us-east-1"] diff --git a/aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_classes.py b/aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_classes.py new file mode 100644 index 00000000..4fc5d011 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_classes.py @@ -0,0 +1,754 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chime_sdk_media_pipelines_constants import * + +class ActiveSpeakerOnlyConfigurationTypeDef(BaseModel): + ActiveSpeakerPosition: Optional[ActiveSpeakerPositionType] = None + +class PostCallAnalyticsSettingsTypeDef(BaseModel): + OutputLocation: str + DataAccessRoleArn: str + ContentRedactionOutput: Optional[ContentRedactionOutputType] = None + OutputEncryptionKMSKeyId: Optional[str] = None + +class AmazonTranscribeProcessorConfigurationTypeDef(BaseModel): + LanguageCode: Optional[CallAnalyticsLanguageCodeType] = None + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + ShowSpeakerLabel: Optional[bool] = None + EnablePartialResultsStabilization: Optional[bool] = None + PartialResultsStability: Optional[PartialResultsStabilityType] = None + ContentIdentificationType: Optional[Literal["PII"]] = None + ContentRedactionType: Optional[Literal["PII"]] = None + PiiEntityTypes: Optional[str] = None + LanguageModelName: Optional[str] = None + FilterPartialResults: Optional[bool] = None + IdentifyLanguage: Optional[bool] = None + IdentifyMultipleLanguages: Optional[bool] = None + LanguageOptions: Optional[str] = None + PreferredLanguage: Optional[CallAnalyticsLanguageCodeType] = None + VocabularyNames: Optional[str] = None + VocabularyFilterNames: Optional[str] = None + +class AudioConcatenationConfigurationTypeDef(BaseModel): + State: Literal["Enabled"] + +class CompositedVideoConcatenationConfigurationTypeDef(BaseModel): + State: ArtifactsConcatenationStateType + +class ContentConcatenationConfigurationTypeDef(BaseModel): + State: ArtifactsConcatenationStateType + +class DataChannelConcatenationConfigurationTypeDef(BaseModel): + State: ArtifactsConcatenationStateType + +class MeetingEventsConcatenationConfigurationTypeDef(BaseModel): + State: ArtifactsConcatenationStateType + +class TranscriptionMessagesConcatenationConfigurationTypeDef(BaseModel): + State: ArtifactsConcatenationStateType + +class VideoConcatenationConfigurationTypeDef(BaseModel): + State: ArtifactsConcatenationStateType + +class AudioArtifactsConfigurationTypeDef(BaseModel): + MuxType: AudioMuxTypeType + +class ContentArtifactsConfigurationTypeDef(BaseModel): + State: ArtifactsStateType + MuxType: Optional[Literal["ContentOnly"]] = None + +class VideoArtifactsConfigurationTypeDef(BaseModel): + State: ArtifactsStateType + MuxType: Optional[Literal["VideoOnly"]] = None + +class ChannelDefinitionTypeDef(BaseModel): + ChannelId: int + ParticipantRole: Optional[ParticipantRoleType] = None + +class S3BucketSinkConfigurationTypeDef(BaseModel): + Destination: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class S3RecordingSinkRuntimeConfigurationTypeDef(BaseModel): + Destination: str + RecordingFileFormat: RecordingFileFormatType + +class KinesisVideoStreamConfigurationTypeDef(BaseModel): + Region: str + DataRetentionInHours: Optional[int] = None + +class MediaStreamSinkTypeDef(BaseModel): + SinkArn: str + SinkType: Literal["KinesisVideoStreamPool"] + ReservedStreamCapacity: int + MediaStreamType: MediaStreamTypeType + +class MediaStreamSourceTypeDef(BaseModel): + SourceType: Literal["ChimeSdkMeeting"] + SourceArn: str + +class DeleteMediaCapturePipelineRequestRequestTypeDef(BaseModel): + MediaPipelineId: str + +class DeleteMediaInsightsPipelineConfigurationRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteMediaPipelineKinesisVideoStreamPoolRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteMediaPipelineRequestRequestTypeDef(BaseModel): + MediaPipelineId: str + +class TimestampRangeOutputTypeDef(BaseModel): + StartTimestamp: datetime + EndTimestamp: datetime + +class GetMediaCapturePipelineRequestRequestTypeDef(BaseModel): + MediaPipelineId: str + +class GetMediaInsightsPipelineConfigurationRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetMediaPipelineKinesisVideoStreamPoolRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetMediaPipelineRequestRequestTypeDef(BaseModel): + MediaPipelineId: str + +class GetSpeakerSearchTaskRequestRequestTypeDef(BaseModel): + Identifier: str + SpeakerSearchTaskId: str + +class SpeakerSearchTaskTypeDef(BaseModel): + SpeakerSearchTaskId: Optional[str] = None + SpeakerSearchTaskStatus: Optional[MediaPipelineTaskStatusType] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class GetVoiceToneAnalysisTaskRequestRequestTypeDef(BaseModel): + Identifier: str + VoiceToneAnalysisTaskId: str + +class VoiceToneAnalysisTaskTypeDef(BaseModel): + VoiceToneAnalysisTaskId: Optional[str] = None + VoiceToneAnalysisTaskStatus: Optional[MediaPipelineTaskStatusType] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class HorizontalLayoutConfigurationTypeDef(BaseModel): + TileOrder: Optional[TileOrderType] = None + TilePosition: Optional[HorizontalTilePositionType] = None + TileCount: Optional[int] = None + TileAspectRatio: Optional[str] = None + +class PresenterOnlyConfigurationTypeDef(BaseModel): + PresenterPosition: Optional[PresenterPositionType] = None + +class VerticalLayoutConfigurationTypeDef(BaseModel): + TileOrder: Optional[TileOrderType] = None + TilePosition: Optional[VerticalTilePositionType] = None + TileCount: Optional[int] = None + TileAspectRatio: Optional[str] = None + +class VideoAttributeTypeDef(BaseModel): + CornerRadius: Optional[int] = None + BorderColor: Optional[BorderColorType] = None + HighlightColor: Optional[HighlightColorType] = None + BorderThickness: Optional[int] = None + +class IssueDetectionConfigurationTypeDef(BaseModel): + RuleName: str + +class KeywordMatchConfigurationOutputTypeDef(BaseModel): + RuleName: str + Keywords: List[str] + Negate: Optional[bool] = None + +class KeywordMatchConfigurationTypeDef(BaseModel): + RuleName: str + Keywords: Sequence[str] + Negate: Optional[bool] = None + +class KinesisDataStreamSinkConfigurationTypeDef(BaseModel): + InsightsTarget: Optional[str] = None + +class KinesisVideoStreamConfigurationUpdateTypeDef(BaseModel): + DataRetentionInHours: Optional[int] = None + +class KinesisVideoStreamPoolSummaryTypeDef(BaseModel): + PoolName: Optional[str] = None + PoolId: Optional[str] = None + PoolArn: Optional[str] = None + +class RecordingStreamConfigurationTypeDef(BaseModel): + StreamArn: Optional[str] = None + +class KinesisVideoStreamSourceTaskConfigurationTypeDef(BaseModel): + StreamArn: str + ChannelId: int + FragmentNumber: Optional[str] = None + +class LambdaFunctionSinkConfigurationTypeDef(BaseModel): + InsightsTarget: Optional[str] = None + +class ListMediaCapturePipelinesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MediaCapturePipelineSummaryTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + +class ListMediaInsightsPipelineConfigurationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MediaInsightsPipelineConfigurationSummaryTypeDef(BaseModel): + MediaInsightsPipelineConfigurationName: Optional[str] = None + MediaInsightsPipelineConfigurationId: Optional[str] = None + MediaInsightsPipelineConfigurationArn: Optional[str] = None + +class ListMediaPipelineKinesisVideoStreamPoolsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMediaPipelinesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MediaPipelineSummaryTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class LiveConnectorRTMPConfigurationTypeDef(BaseModel): + Url: str + AudioChannels: Optional[AudioChannelsOptionType] = None + AudioSampleRate: Optional[str] = None + +class S3RecordingSinkConfigurationTypeDef(BaseModel): + Destination: Optional[str] = None + RecordingFileFormat: Optional[RecordingFileFormatType] = None + +class SnsTopicSinkConfigurationTypeDef(BaseModel): + InsightsTarget: Optional[str] = None + +class SqsQueueSinkConfigurationTypeDef(BaseModel): + InsightsTarget: Optional[str] = None + +class VoiceAnalyticsProcessorConfigurationTypeDef(BaseModel): + SpeakerSearchStatus: Optional[VoiceAnalyticsConfigurationStatusType] = None + VoiceToneAnalysisStatus: Optional[VoiceAnalyticsConfigurationStatusType] = None + +class VoiceEnhancementSinkConfigurationTypeDef(BaseModel): + Disabled: Optional[bool] = None + +class MediaInsightsPipelineElementStatusTypeDef(BaseModel): + Type: Optional[MediaInsightsPipelineConfigurationElementTypeType] = None + Status: Optional[MediaPipelineElementStatusType] = None + +class SentimentConfigurationTypeDef(BaseModel): + RuleName: str + SentimentType: Literal["NEGATIVE"] + TimePeriod: int + +class SelectedVideoStreamsOutputTypeDef(BaseModel): + AttendeeIds: Optional[List[str]] = None + ExternalUserIds: Optional[List[str]] = None + +class SelectedVideoStreamsTypeDef(BaseModel): + AttendeeIds: Optional[Sequence[str]] = None + ExternalUserIds: Optional[Sequence[str]] = None + +class StopSpeakerSearchTaskRequestRequestTypeDef(BaseModel): + Identifier: str + SpeakerSearchTaskId: str + +class StopVoiceToneAnalysisTaskRequestRequestTypeDef(BaseModel): + Identifier: str + VoiceToneAnalysisTaskId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateMediaInsightsPipelineStatusRequestRequestTypeDef(BaseModel): + Identifier: str + UpdateStatus: MediaPipelineStatusUpdateType + +class AmazonTranscribeCallAnalyticsProcessorConfigurationOutputTypeDef(BaseModel): + LanguageCode: CallAnalyticsLanguageCodeType + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + LanguageModelName: Optional[str] = None + EnablePartialResultsStabilization: Optional[bool] = None + PartialResultsStability: Optional[PartialResultsStabilityType] = None + ContentIdentificationType: Optional[Literal["PII"]] = None + ContentRedactionType: Optional[Literal["PII"]] = None + PiiEntityTypes: Optional[str] = None + FilterPartialResults: Optional[bool] = None + PostCallAnalyticsSettings: Optional[PostCallAnalyticsSettingsTypeDef] = None + CallAnalyticsStreamCategories: Optional[List[str]] = None + +class AmazonTranscribeCallAnalyticsProcessorConfigurationTypeDef(BaseModel): + LanguageCode: CallAnalyticsLanguageCodeType + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + LanguageModelName: Optional[str] = None + EnablePartialResultsStabilization: Optional[bool] = None + PartialResultsStability: Optional[PartialResultsStabilityType] = None + ContentIdentificationType: Optional[Literal["PII"]] = None + ContentRedactionType: Optional[Literal["PII"]] = None + PiiEntityTypes: Optional[str] = None + FilterPartialResults: Optional[bool] = None + PostCallAnalyticsSettings: Optional[PostCallAnalyticsSettingsTypeDef] = None + CallAnalyticsStreamCategories: Optional[Sequence[str]] = None + +class ArtifactsConcatenationConfigurationTypeDef(BaseModel): + Audio: AudioConcatenationConfigurationTypeDef + Video: VideoConcatenationConfigurationTypeDef + Content: ContentConcatenationConfigurationTypeDef + DataChannel: DataChannelConcatenationConfigurationTypeDef + TranscriptionMessages: TranscriptionMessagesConcatenationConfigurationTypeDef + MeetingEvents: MeetingEventsConcatenationConfigurationTypeDef + CompositedVideo: CompositedVideoConcatenationConfigurationTypeDef + +class StreamChannelDefinitionOutputTypeDef(BaseModel): + NumberOfChannels: int + ChannelDefinitions: Optional[List[ChannelDefinitionTypeDef]] = None + +class StreamChannelDefinitionTypeDef(BaseModel): + NumberOfChannels: int + ChannelDefinitions: Optional[Sequence[ChannelDefinitionTypeDef]] = None + +class ConcatenationSinkTypeDef(BaseModel): + Type: Literal["S3Bucket"] + S3BucketSinkConfiguration: S3BucketSinkConfigurationTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMediaPipelineKinesisVideoStreamPoolRequestRequestTypeDef(BaseModel): + StreamConfiguration: KinesisVideoStreamConfigurationTypeDef + PoolName: str + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class KinesisVideoStreamPoolConfigurationTypeDef(BaseModel): + PoolArn: Optional[str] = None + PoolName: Optional[str] = None + PoolId: Optional[str] = None + PoolStatus: Optional[KinesisVideoStreamPoolStatusType] = None + PoolSize: Optional[int] = None + StreamConfiguration: Optional[KinesisVideoStreamConfigurationTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class CreateMediaStreamPipelineRequestRequestTypeDef(BaseModel): + Sources: Sequence[MediaStreamSourceTypeDef] + Sinks: Sequence[MediaStreamSinkTypeDef] + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MediaStreamPipelineTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + Status: Optional[MediaPipelineStatusType] = None + Sources: Optional[List[MediaStreamSourceTypeDef]] = None + Sinks: Optional[List[MediaStreamSinkTypeDef]] = None + +class FragmentSelectorOutputTypeDef(BaseModel): + FragmentSelectorType: FragmentSelectorTypeType + TimestampRange: TimestampRangeOutputTypeDef + +class GetSpeakerSearchTaskResponseTypeDef(BaseModel): + SpeakerSearchTask: SpeakerSearchTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartSpeakerSearchTaskResponseTypeDef(BaseModel): + SpeakerSearchTask: SpeakerSearchTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceToneAnalysisTaskResponseTypeDef(BaseModel): + VoiceToneAnalysisTask: VoiceToneAnalysisTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartVoiceToneAnalysisTaskResponseTypeDef(BaseModel): + VoiceToneAnalysisTask: VoiceToneAnalysisTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GridViewConfigurationTypeDef(BaseModel): + ContentShareLayout: ContentShareLayoutOptionType + PresenterOnlyConfiguration: Optional[PresenterOnlyConfigurationTypeDef] = None + ActiveSpeakerOnlyConfiguration: Optional[ActiveSpeakerOnlyConfigurationTypeDef] = None + HorizontalLayoutConfiguration: Optional[HorizontalLayoutConfigurationTypeDef] = None + VerticalLayoutConfiguration: Optional[VerticalLayoutConfigurationTypeDef] = None + VideoAttribute: Optional[VideoAttributeTypeDef] = None + CanvasOrientation: Optional[CanvasOrientationType] = None + +class UpdateMediaPipelineKinesisVideoStreamPoolRequestRequestTypeDef(BaseModel): + Identifier: str + StreamConfiguration: Optional[KinesisVideoStreamConfigurationUpdateTypeDef] = None + +class ListMediaPipelineKinesisVideoStreamPoolsResponseTypeDef(BaseModel): + KinesisVideoStreamPools: List[KinesisVideoStreamPoolSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartSpeakerSearchTaskRequestRequestTypeDef(BaseModel): + Identifier: str + VoiceProfileDomainArn: str + KinesisVideoStreamSourceTaskConfiguration: Optional[ KinesisVideoStreamSourceTaskConfigurationTypeDef ] = None + ClientRequestToken: Optional[str] = None + +class StartVoiceToneAnalysisTaskRequestRequestTypeDef(BaseModel): + Identifier: str + LanguageCode: Literal["en-US"] + KinesisVideoStreamSourceTaskConfiguration: Optional[ KinesisVideoStreamSourceTaskConfigurationTypeDef ] = None + ClientRequestToken: Optional[str] = None + +class ListMediaCapturePipelinesResponseTypeDef(BaseModel): + MediaCapturePipelines: List[MediaCapturePipelineSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMediaInsightsPipelineConfigurationsResponseTypeDef(BaseModel): + MediaInsightsPipelineConfigurations: List[ MediaInsightsPipelineConfigurationSummaryTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMediaPipelinesResponseTypeDef(BaseModel): + MediaPipelines: List[MediaPipelineSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LiveConnectorSinkConfigurationTypeDef(BaseModel): + SinkType: Literal["RTMP"] + RTMPConfiguration: LiveConnectorRTMPConfigurationTypeDef + +class RealTimeAlertRuleOutputTypeDef(BaseModel): + Type: RealTimeAlertRuleTypeType + KeywordMatchConfiguration: Optional[KeywordMatchConfigurationOutputTypeDef] = None + SentimentConfiguration: Optional[SentimentConfigurationTypeDef] = None + IssueDetectionConfiguration: Optional[IssueDetectionConfigurationTypeDef] = None + +class RealTimeAlertRuleTypeDef(BaseModel): + Type: RealTimeAlertRuleTypeType + KeywordMatchConfiguration: Optional[KeywordMatchConfigurationTypeDef] = None + SentimentConfiguration: Optional[SentimentConfigurationTypeDef] = None + IssueDetectionConfiguration: Optional[IssueDetectionConfigurationTypeDef] = None + +class SourceConfigurationOutputTypeDef(BaseModel): + SelectedVideoStreams: Optional[SelectedVideoStreamsOutputTypeDef] = None + +class SourceConfigurationTypeDef(BaseModel): + SelectedVideoStreams: Optional[SelectedVideoStreamsTypeDef] = None + +class TimestampRangeTypeDef(BaseModel): + StartTimestamp: TimestampTypeDef + EndTimestamp: TimestampTypeDef + +class MediaInsightsPipelineConfigurationElementOutputTypeDef(BaseModel): + Type: MediaInsightsPipelineConfigurationElementTypeType + AmazonTranscribeCallAnalyticsProcessorConfiguration: Optional[ AmazonTranscribeCallAnalyticsProcessorConfigurationOutputTypeDef ] = None + AmazonTranscribeProcessorConfiguration: Optional[ AmazonTranscribeProcessorConfigurationTypeDef ] = None + KinesisDataStreamSinkConfiguration: Optional[ KinesisDataStreamSinkConfigurationTypeDef ] = None + S3RecordingSinkConfiguration: Optional[S3RecordingSinkConfigurationTypeDef] = None + VoiceAnalyticsProcessorConfiguration: Optional[ VoiceAnalyticsProcessorConfigurationTypeDef ] = None + LambdaFunctionSinkConfiguration: Optional[LambdaFunctionSinkConfigurationTypeDef] = None + SqsQueueSinkConfiguration: Optional[SqsQueueSinkConfigurationTypeDef] = None + SnsTopicSinkConfiguration: Optional[SnsTopicSinkConfigurationTypeDef] = None + VoiceEnhancementSinkConfiguration: Optional[VoiceEnhancementSinkConfigurationTypeDef] = None + +class MediaInsightsPipelineConfigurationElementTypeDef(BaseModel): + Type: MediaInsightsPipelineConfigurationElementTypeType + AmazonTranscribeCallAnalyticsProcessorConfiguration: Optional[ AmazonTranscribeCallAnalyticsProcessorConfigurationTypeDef ] = None + AmazonTranscribeProcessorConfiguration: Optional[ AmazonTranscribeProcessorConfigurationTypeDef ] = None + KinesisDataStreamSinkConfiguration: Optional[ KinesisDataStreamSinkConfigurationTypeDef ] = None + S3RecordingSinkConfiguration: Optional[S3RecordingSinkConfigurationTypeDef] = None + VoiceAnalyticsProcessorConfiguration: Optional[ VoiceAnalyticsProcessorConfigurationTypeDef ] = None + LambdaFunctionSinkConfiguration: Optional[LambdaFunctionSinkConfigurationTypeDef] = None + SqsQueueSinkConfiguration: Optional[SqsQueueSinkConfigurationTypeDef] = None + SnsTopicSinkConfiguration: Optional[SnsTopicSinkConfigurationTypeDef] = None + VoiceEnhancementSinkConfiguration: Optional[VoiceEnhancementSinkConfigurationTypeDef] = None + +class ChimeSdkMeetingConcatenationConfigurationTypeDef(BaseModel): + ArtifactsConfiguration: ArtifactsConcatenationConfigurationTypeDef + +class StreamConfigurationOutputTypeDef(BaseModel): + StreamArn: str + StreamChannelDefinition: StreamChannelDefinitionOutputTypeDef + FragmentNumber: Optional[str] = None + +class StreamConfigurationTypeDef(BaseModel): + StreamArn: str + StreamChannelDefinition: StreamChannelDefinitionTypeDef + FragmentNumber: Optional[str] = None + +class CreateMediaPipelineKinesisVideoStreamPoolResponseTypeDef(BaseModel): + KinesisVideoStreamPoolConfiguration: KinesisVideoStreamPoolConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMediaPipelineKinesisVideoStreamPoolResponseTypeDef(BaseModel): + KinesisVideoStreamPoolConfiguration: KinesisVideoStreamPoolConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMediaPipelineKinesisVideoStreamPoolResponseTypeDef(BaseModel): + KinesisVideoStreamPoolConfiguration: KinesisVideoStreamPoolConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMediaStreamPipelineResponseTypeDef(BaseModel): + MediaStreamPipeline: MediaStreamPipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KinesisVideoStreamRecordingSourceRuntimeConfigurationOutputTypeDef(BaseModel): + Streams: List[RecordingStreamConfigurationTypeDef] + FragmentSelector: FragmentSelectorOutputTypeDef + +class CompositedVideoArtifactsConfigurationTypeDef(BaseModel): + GridViewConfiguration: GridViewConfigurationTypeDef + Layout: Optional[Literal["GridView"]] = None + Resolution: Optional[ResolutionOptionType] = None + +class RealTimeAlertConfigurationOutputTypeDef(BaseModel): + Disabled: Optional[bool] = None + Rules: Optional[List[RealTimeAlertRuleOutputTypeDef]] = None + +class RealTimeAlertConfigurationTypeDef(BaseModel): + Disabled: Optional[bool] = None + Rules: Optional[Sequence[RealTimeAlertRuleTypeDef]] = None + +class FragmentSelectorTypeDef(BaseModel): + FragmentSelectorType: FragmentSelectorTypeType + TimestampRange: TimestampRangeTypeDef + +class MediaCapturePipelineSourceConfigurationTypeDef(BaseModel): + MediaPipelineArn: str + ChimeSdkMeetingConfiguration: ChimeSdkMeetingConcatenationConfigurationTypeDef + +class KinesisVideoStreamSourceRuntimeConfigurationOutputTypeDef(BaseModel): + Streams: List[StreamConfigurationOutputTypeDef] + MediaEncoding: Literal["pcm"] + MediaSampleRate: int + +class KinesisVideoStreamSourceRuntimeConfigurationTypeDef(BaseModel): + Streams: Sequence[StreamConfigurationTypeDef] + MediaEncoding: Literal["pcm"] + MediaSampleRate: int + +class ArtifactsConfigurationTypeDef(BaseModel): + Audio: AudioArtifactsConfigurationTypeDef + Video: VideoArtifactsConfigurationTypeDef + Content: ContentArtifactsConfigurationTypeDef + CompositedVideo: Optional[CompositedVideoArtifactsConfigurationTypeDef] = None + +class ChimeSdkMeetingLiveConnectorConfigurationOutputTypeDef(BaseModel): + Arn: str + MuxType: LiveConnectorMuxTypeType + CompositedVideo: Optional[CompositedVideoArtifactsConfigurationTypeDef] = None + SourceConfiguration: Optional[SourceConfigurationOutputTypeDef] = None + +class ChimeSdkMeetingLiveConnectorConfigurationTypeDef(BaseModel): + Arn: str + MuxType: LiveConnectorMuxTypeType + CompositedVideo: Optional[CompositedVideoArtifactsConfigurationTypeDef] = None + SourceConfiguration: Optional[SourceConfigurationTypeDef] = None + +class MediaInsightsPipelineConfigurationTypeDef(BaseModel): + MediaInsightsPipelineConfigurationName: Optional[str] = None + MediaInsightsPipelineConfigurationArn: Optional[str] = None + ResourceAccessRoleArn: Optional[str] = None + RealTimeAlertConfiguration: Optional[RealTimeAlertConfigurationOutputTypeDef] = None + Elements: Optional[List[MediaInsightsPipelineConfigurationElementOutputTypeDef]] = None + MediaInsightsPipelineConfigurationId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class KinesisVideoStreamRecordingSourceRuntimeConfigurationTypeDef(BaseModel): + Streams: Sequence[RecordingStreamConfigurationTypeDef] + FragmentSelector: FragmentSelectorTypeDef + +class CreateMediaInsightsPipelineConfigurationRequestRequestTypeDef(BaseModel): + MediaInsightsPipelineConfigurationName: str + ResourceAccessRoleArn: str + Elements: Sequence[MediaInsightsPipelineConfigurationElementUnionTypeDef] + RealTimeAlertConfiguration: Optional[RealTimeAlertConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + +class UpdateMediaInsightsPipelineConfigurationRequestRequestTypeDef(BaseModel): + Identifier: str + ResourceAccessRoleArn: str + Elements: Sequence[MediaInsightsPipelineConfigurationElementUnionTypeDef] + RealTimeAlertConfiguration: Optional[RealTimeAlertConfigurationTypeDef] = None + +class ConcatenationSourceTypeDef(BaseModel): + Type: Literal["MediaCapturePipeline"] + MediaCapturePipelineSourceConfiguration: MediaCapturePipelineSourceConfigurationTypeDef + +class MediaInsightsPipelineTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + MediaInsightsPipelineConfigurationArn: Optional[str] = None + Status: Optional[MediaPipelineStatusType] = None + KinesisVideoStreamSourceRuntimeConfiguration: Optional[ KinesisVideoStreamSourceRuntimeConfigurationOutputTypeDef ] = None + MediaInsightsRuntimeMetadata: Optional[Dict[str, str]] = None + KinesisVideoStreamRecordingSourceRuntimeConfiguration: Optional[ KinesisVideoStreamRecordingSourceRuntimeConfigurationOutputTypeDef ] = None + S3RecordingSinkRuntimeConfiguration: Optional[ S3RecordingSinkRuntimeConfigurationTypeDef ] = None + CreatedTimestamp: Optional[datetime] = None + ElementStatuses: Optional[List[MediaInsightsPipelineElementStatusTypeDef]] = None + +class ChimeSdkMeetingConfigurationOutputTypeDef(BaseModel): + SourceConfiguration: Optional[SourceConfigurationOutputTypeDef] = None + ArtifactsConfiguration: Optional[ArtifactsConfigurationTypeDef] = None + +class ChimeSdkMeetingConfigurationTypeDef(BaseModel): + SourceConfiguration: Optional[SourceConfigurationTypeDef] = None + ArtifactsConfiguration: Optional[ArtifactsConfigurationTypeDef] = None + +class LiveConnectorSourceConfigurationOutputTypeDef(BaseModel): + SourceType: Literal["ChimeSdkMeeting"] + ChimeSdkMeetingLiveConnectorConfiguration: ChimeSdkMeetingLiveConnectorConfigurationOutputTypeDef + +class LiveConnectorSourceConfigurationTypeDef(BaseModel): + SourceType: Literal["ChimeSdkMeeting"] + ChimeSdkMeetingLiveConnectorConfiguration: ChimeSdkMeetingLiveConnectorConfigurationTypeDef + +class CreateMediaInsightsPipelineConfigurationResponseTypeDef(BaseModel): + MediaInsightsPipelineConfiguration: MediaInsightsPipelineConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMediaInsightsPipelineConfigurationResponseTypeDef(BaseModel): + MediaInsightsPipelineConfiguration: MediaInsightsPipelineConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMediaInsightsPipelineConfigurationResponseTypeDef(BaseModel): + MediaInsightsPipelineConfiguration: MediaInsightsPipelineConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMediaInsightsPipelineRequestRequestTypeDef(BaseModel): + MediaInsightsPipelineConfigurationArn: str + KinesisVideoStreamSourceRuntimeConfiguration: Optional[ KinesisVideoStreamSourceRuntimeConfigurationTypeDef ] = None + MediaInsightsRuntimeMetadata: Optional[Mapping[str, str]] = None + KinesisVideoStreamRecordingSourceRuntimeConfiguration: Optional[ KinesisVideoStreamRecordingSourceRuntimeConfigurationTypeDef ] = None + S3RecordingSinkRuntimeConfiguration: Optional[ S3RecordingSinkRuntimeConfigurationTypeDef ] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + +class CreateMediaConcatenationPipelineRequestRequestTypeDef(BaseModel): + Sources: Sequence[ConcatenationSourceTypeDef] + Sinks: Sequence[ConcatenationSinkTypeDef] + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MediaConcatenationPipelineTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + Sources: Optional[List[ConcatenationSourceTypeDef]] = None + Sinks: Optional[List[ConcatenationSinkTypeDef]] = None + Status: Optional[MediaPipelineStatusType] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class CreateMediaInsightsPipelineResponseTypeDef(BaseModel): + MediaInsightsPipeline: MediaInsightsPipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MediaCapturePipelineTypeDef(BaseModel): + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + SourceType: Optional[Literal["ChimeSdkMeeting"]] = None + SourceArn: Optional[str] = None + Status: Optional[MediaPipelineStatusType] = None + SinkType: Optional[Literal["S3Bucket"]] = None + SinkArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + ChimeSdkMeetingConfiguration: Optional[ChimeSdkMeetingConfigurationOutputTypeDef] = None + +class CreateMediaCapturePipelineRequestRequestTypeDef(BaseModel): + SourceType: Literal["ChimeSdkMeeting"] + SourceArn: str + SinkType: Literal["S3Bucket"] + SinkArn: str + ClientRequestToken: Optional[str] = None + ChimeSdkMeetingConfiguration: Optional[ChimeSdkMeetingConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MediaLiveConnectorPipelineTypeDef(BaseModel): + Sources: Optional[List[LiveConnectorSourceConfigurationOutputTypeDef]] = None + Sinks: Optional[List[LiveConnectorSinkConfigurationTypeDef]] = None + MediaPipelineId: Optional[str] = None + MediaPipelineArn: Optional[str] = None + Status: Optional[MediaPipelineStatusType] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class CreateMediaConcatenationPipelineResponseTypeDef(BaseModel): + MediaConcatenationPipeline: MediaConcatenationPipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMediaCapturePipelineResponseTypeDef(BaseModel): + MediaCapturePipeline: MediaCapturePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMediaCapturePipelineResponseTypeDef(BaseModel): + MediaCapturePipeline: MediaCapturePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMediaLiveConnectorPipelineResponseTypeDef(BaseModel): + MediaLiveConnectorPipeline: MediaLiveConnectorPipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MediaPipelineTypeDef(BaseModel): + MediaCapturePipeline: Optional[MediaCapturePipelineTypeDef] = None + MediaLiveConnectorPipeline: Optional[MediaLiveConnectorPipelineTypeDef] = None + MediaConcatenationPipeline: Optional[MediaConcatenationPipelineTypeDef] = None + MediaInsightsPipeline: Optional[MediaInsightsPipelineTypeDef] = None + MediaStreamPipeline: Optional[MediaStreamPipelineTypeDef] = None + +class CreateMediaLiveConnectorPipelineRequestRequestTypeDef(BaseModel): + Sources: Sequence[LiveConnectorSourceConfigurationUnionTypeDef] + Sinks: Sequence[LiveConnectorSinkConfigurationTypeDef] + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetMediaPipelineResponseTypeDef(BaseModel): + MediaPipeline: MediaPipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_constants.py b/aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_constants.py new file mode 100644 index 00000000..9f4ea2fc --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_media_pipelines_constants.py @@ -0,0 +1,477 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActiveSpeakerPositionType = Literal["BottomLeft", "BottomRight", "TopLeft", "TopRight"] +ArtifactsConcatenationStateType = Literal["Disabled", "Enabled"] +ArtifactsStateType = Literal["Disabled", "Enabled"] +AudioArtifactsConcatenationStateType = Literal["Enabled"] +AudioChannelsOptionType = Literal["Mono", "Stereo"] +AudioMuxTypeType = Literal["AudioOnly", "AudioWithActiveSpeakerVideo", "AudioWithCompositedVideo"] +BorderColorType = Literal["Black", "Blue", "Green", "Red", "White", "Yellow"] +CallAnalyticsLanguageCodeType = Literal["de-DE", "en-AU", "en-GB", "en-US", "es-US", "fr-CA", "fr-FR", "it-IT", "pt-BR"] +CanvasOrientationType = Literal["Landscape", "Portrait"] +ConcatenationSinkTypeType = Literal["S3Bucket"] +ConcatenationSourceTypeType = Literal["MediaCapturePipeline"] +ContentMuxTypeType = Literal["ContentOnly"] +ContentRedactionOutputType = Literal["redacted", "redacted_and_unredacted"] +ContentShareLayoutOptionType = Literal["ActiveSpeakerOnly", "Horizontal", "PresenterOnly", "Vertical"] +ContentTypeType = Literal["PII"] +FragmentSelectorTypeType = Literal["ProducerTimestamp", "ServerTimestamp"] +HighlightColorType = Literal["Black", "Blue", "Green", "Red", "White", "Yellow"] +HorizontalTilePositionType = Literal["Bottom", "Top"] +KinesisVideoStreamPoolStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +LayoutOptionType = Literal["GridView"] +LiveConnectorMuxTypeType = Literal["AudioWithActiveSpeakerVideo", "AudioWithCompositedVideo"] +LiveConnectorSinkTypeType = Literal["RTMP"] +LiveConnectorSourceTypeType = Literal["ChimeSdkMeeting"] +MediaEncodingType = Literal["pcm"] +MediaInsightsPipelineConfigurationElementTypeType = Literal["AmazonTranscribeCallAnalyticsProcessor", + "AmazonTranscribeProcessor", + "KinesisDataStreamSink", + "LambdaFunctionSink", + "S3RecordingSink", + "SnsTopicSink", + "SqsQueueSink", + "VoiceAnalyticsProcessor", + "VoiceEnhancementSink",] +MediaPipelineElementStatusType = Literal["Failed", + "InProgress", + "Initializing", + "NotStarted", + "NotSupported", + "Paused", + "Stopped", + "Stopping",] +MediaPipelineSinkTypeType = Literal["S3Bucket"] +MediaPipelineSourceTypeType = Literal["ChimeSdkMeeting"] +MediaPipelineStatusType = Literal["Failed", "InProgress", "Initializing", "NotStarted", "Paused", "Stopped", "Stopping"] +MediaPipelineStatusUpdateType = Literal["Pause", "Resume"] +MediaPipelineTaskStatusType = Literal["Failed", "InProgress", "Initializing", "NotStarted", "Stopped", "Stopping"] +MediaStreamPipelineSinkTypeType = Literal["KinesisVideoStreamPool"] +MediaStreamTypeType = Literal["IndividualAudio", "MixedAudio"] +PartialResultsStabilityType = Literal["high", "low", "medium"] +ParticipantRoleType = Literal["AGENT", "CUSTOMER"] +PresenterPositionType = Literal["BottomLeft", "BottomRight", "TopLeft", "TopRight"] +RealTimeAlertRuleTypeType = Literal["IssueDetection", "KeywordMatch", "Sentiment"] +RecordingFileFormatType = Literal["Opus", "Wav"] +ResolutionOptionType = Literal["FHD", "HD"] +SentimentTypeType = Literal["NEGATIVE"] +TileOrderType = Literal["JoinSequence", "SpeakerSequence"] +VerticalTilePositionType = Literal["Left", "Right"] +VideoMuxTypeType = Literal["VideoOnly"] +VocabularyFilterMethodType = Literal["mask", "remove", "tag"] +VoiceAnalyticsConfigurationStatusType = Literal["Disabled", "Enabled"] +VoiceAnalyticsLanguageCodeType = Literal["en-US"] +ChimeSDKMediaPipelinesServiceName = Literal["chime-sdk-media-pipelines"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +MediaInsightsPipelineConfigurationElementUnionTypeDef = Union[ 'MediaInsightsPipelineConfigurationElementTypeDef', 'MediaInsightsPipelineConfigurationElementOutputTypeDef', ] +RealTimeAlertConfigurationUnionTypeDef = Union[ 'RealTimeAlertConfigurationTypeDef', 'RealTimeAlertConfigurationOutputTypeDef' ] +KinesisVideoStreamSourceRuntimeConfigurationUnionTypeDef = Union[ 'KinesisVideoStreamSourceRuntimeConfigurationTypeDef', 'KinesisVideoStreamSourceRuntimeConfigurationOutputTypeDef', ] +KinesisVideoStreamRecordingSourceRuntimeConfigurationUnionTypeDef = Union[ 'KinesisVideoStreamRecordingSourceRuntimeConfigurationTypeDef', 'KinesisVideoStreamRecordingSourceRuntimeConfigurationOutputTypeDef', ] +ChimeSdkMeetingConfigurationUnionTypeDef = Union[ 'ChimeSdkMeetingConfigurationTypeDef', 'ChimeSdkMeetingConfigurationOutputTypeDef' ] +LiveConnectorSourceConfigurationUnionTypeDef = Union[ 'LiveConnectorSourceConfigurationTypeDef', 'LiveConnectorSourceConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/chime_sdk_meetings_classes.py b/aws_resource_validator/pydantic_models/chime_sdk_meetings_classes.py new file mode 100644 index 00000000..8a06448d --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_meetings_classes.py @@ -0,0 +1,243 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chime_sdk_meetings_constants import * + +class AttendeeCapabilitiesTypeDef(BaseModel): + Audio: MediaCapabilitiesType + Video: MediaCapabilitiesType + Content: MediaCapabilitiesType + +class AttendeeFeaturesTypeDef(BaseModel): + MaxCount: Optional[int] = None + +class AttendeeIdItemTypeDef(BaseModel): + AttendeeId: str + +class AudioFeaturesTypeDef(BaseModel): + EchoReduction: Optional[MeetingFeatureStatusType] = None + +class CreateAttendeeErrorTypeDef(BaseModel): + ExternalUserId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ContentFeaturesTypeDef(BaseModel): + MaxResolution: Optional[ContentResolutionType] = None + +class NotificationsConfigurationTypeDef(BaseModel): + LambdaFunctionArn: Optional[str] = None + SnsTopicArn: Optional[str] = None + SqsQueueArn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + +class DeleteMeetingRequestRequestTypeDef(BaseModel): + MeetingId: str + +class EngineTranscribeMedicalSettingsTypeDef(BaseModel): + LanguageCode: Literal["en-US"] + Specialty: TranscribeMedicalSpecialtyType + Type: TranscribeMedicalTypeType + VocabularyName: Optional[str] = None + Region: Optional[TranscribeMedicalRegionType] = None + ContentIdentificationType: Optional[Literal["PHI"]] = None + +class EngineTranscribeSettingsTypeDef(BaseModel): + LanguageCode: Optional[TranscribeLanguageCodeType] = None + VocabularyFilterMethod: Optional[TranscribeVocabularyFilterMethodType] = None + VocabularyFilterName: Optional[str] = None + VocabularyName: Optional[str] = None + Region: Optional[TranscribeRegionType] = None + EnablePartialResultsStabilization: Optional[bool] = None + PartialResultsStability: Optional[TranscribePartialResultsStabilityType] = None + ContentIdentificationType: Optional[Literal["PII"]] = None + ContentRedactionType: Optional[Literal["PII"]] = None + PiiEntityTypes: Optional[str] = None + LanguageModelName: Optional[str] = None + IdentifyLanguage: Optional[bool] = None + LanguageOptions: Optional[str] = None + PreferredLanguage: Optional[TranscribeLanguageCodeType] = None + VocabularyNames: Optional[str] = None + VocabularyFilterNames: Optional[str] = None + +class GetAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + +class GetMeetingRequestRequestTypeDef(BaseModel): + MeetingId: str + +class ListAttendeesRequestRequestTypeDef(BaseModel): + MeetingId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class MediaPlacementTypeDef(BaseModel): + AudioHostUrl: Optional[str] = None + AudioFallbackUrl: Optional[str] = None + SignalingUrl: Optional[str] = None + TurnControlUrl: Optional[str] = None + ScreenDataUrl: Optional[str] = None + ScreenViewingUrl: Optional[str] = None + ScreenSharingUrl: Optional[str] = None + EventIngestionUrl: Optional[str] = None + +class VideoFeaturesTypeDef(BaseModel): + MaxResolution: Optional[VideoResolutionType] = None + +class StopMeetingTranscriptionRequestRequestTypeDef(BaseModel): + MeetingId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class AttendeeTypeDef(BaseModel): + ExternalUserId: Optional[str] = None + AttendeeId: Optional[str] = None + JoinToken: Optional[str] = None + Capabilities: Optional[AttendeeCapabilitiesTypeDef] = None + +class CreateAttendeeRequestItemTypeDef(BaseModel): + ExternalUserId: str + Capabilities: Optional[AttendeeCapabilitiesTypeDef] = None + +class CreateAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + ExternalUserId: str + Capabilities: Optional[AttendeeCapabilitiesTypeDef] = None + +class UpdateAttendeeCapabilitiesRequestRequestTypeDef(BaseModel): + MeetingId: str + AttendeeId: str + Capabilities: AttendeeCapabilitiesTypeDef + +class BatchUpdateAttendeeCapabilitiesExceptRequestRequestTypeDef(BaseModel): + MeetingId: str + ExcludedAttendeeIds: Sequence[AttendeeIdItemTypeDef] + Capabilities: AttendeeCapabilitiesTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class TranscriptionConfigurationTypeDef(BaseModel): + EngineTranscribeSettings: Optional[EngineTranscribeSettingsTypeDef] = None + EngineTranscribeMedicalSettings: Optional[EngineTranscribeMedicalSettingsTypeDef] = None + +class MeetingFeaturesConfigurationTypeDef(BaseModel): + Audio: Optional[AudioFeaturesTypeDef] = None + Video: Optional[VideoFeaturesTypeDef] = None + Content: Optional[ContentFeaturesTypeDef] = None + Attendee: Optional[AttendeeFeaturesTypeDef] = None + +class BatchCreateAttendeeResponseTypeDef(BaseModel): + Attendees: List[AttendeeTypeDef] + Errors: List[CreateAttendeeErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAttendeeResponseTypeDef(BaseModel): + Attendee: AttendeeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAttendeeResponseTypeDef(BaseModel): + Attendee: AttendeeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttendeesResponseTypeDef(BaseModel): + Attendees: List[AttendeeTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAttendeeCapabilitiesResponseTypeDef(BaseModel): + Attendee: AttendeeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateAttendeeRequestRequestTypeDef(BaseModel): + MeetingId: str + Attendees: Sequence[CreateAttendeeRequestItemTypeDef] + +class StartMeetingTranscriptionRequestRequestTypeDef(BaseModel): + MeetingId: str + TranscriptionConfiguration: TranscriptionConfigurationTypeDef + +class CreateMeetingRequestRequestTypeDef(BaseModel): + ClientRequestToken: str + MediaRegion: str + ExternalMeetingId: str + MeetingHostId: Optional[str] = None + NotificationsConfiguration: Optional[NotificationsConfigurationTypeDef] = None + MeetingFeatures: Optional[MeetingFeaturesConfigurationTypeDef] = None + PrimaryMeetingId: Optional[str] = None + TenantIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateMeetingWithAttendeesRequestRequestTypeDef(BaseModel): + ClientRequestToken: str + MediaRegion: str + ExternalMeetingId: str + Attendees: Sequence[CreateAttendeeRequestItemTypeDef] + MeetingHostId: Optional[str] = None + MeetingFeatures: Optional[MeetingFeaturesConfigurationTypeDef] = None + NotificationsConfiguration: Optional[NotificationsConfigurationTypeDef] = None + PrimaryMeetingId: Optional[str] = None + TenantIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MeetingTypeDef(BaseModel): + MeetingId: Optional[str] = None + MeetingHostId: Optional[str] = None + ExternalMeetingId: Optional[str] = None + MediaRegion: Optional[str] = None + MediaPlacement: Optional[MediaPlacementTypeDef] = None + MeetingFeatures: Optional[MeetingFeaturesConfigurationTypeDef] = None + PrimaryMeetingId: Optional[str] = None + TenantIds: Optional[List[str]] = None + MeetingArn: Optional[str] = None + +class CreateMeetingResponseTypeDef(BaseModel): + Meeting: MeetingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMeetingWithAttendeesResponseTypeDef(BaseModel): + Meeting: MeetingTypeDef + Attendees: List[AttendeeTypeDef] + Errors: List[CreateAttendeeErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMeetingResponseTypeDef(BaseModel): + Meeting: MeetingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chime_sdk_meetings_constants.py b/aws_resource_validator/pydantic_models/chime_sdk_meetings_constants.py new file mode 100644 index 00000000..0c98451d --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_meetings_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ContentResolutionType = Literal["FHD", "None", "UHD"] +MediaCapabilitiesType = Literal["None", "Receive", "Send", "SendReceive"] +MeetingFeatureStatusType = Literal["AVAILABLE", "UNAVAILABLE"] +TranscribeContentIdentificationTypeType = Literal["PII"] +TranscribeContentRedactionTypeType = Literal["PII"] +TranscribeLanguageCodeType = Literal["de-DE", + "en-AU", + "en-GB", + "en-US", + "es-US", + "fr-CA", + "fr-FR", + "hi-IN", + "it-IT", + "ja-JP", + "ko-KR", + "pt-BR", + "th-TH", + "zh-CN",] +TranscribeMedicalContentIdentificationTypeType = Literal["PHI"] +TranscribeMedicalLanguageCodeType = Literal["en-US"] +TranscribeMedicalRegionType = Literal["ap-southeast-2", "auto", "ca-central-1", "eu-west-1", "us-east-1", "us-east-2", "us-west-2"] +TranscribeMedicalSpecialtyType = Literal["CARDIOLOGY", "NEUROLOGY", "ONCOLOGY", "PRIMARYCARE", "RADIOLOGY", "UROLOGY"] +TranscribeMedicalTypeType = Literal["CONVERSATION", "DICTATION"] +TranscribePartialResultsStabilityType = Literal["high", "low", "medium"] +TranscribeRegionType = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-2", + "auto", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-gov-west-1", + "us-west-2",] +TranscribeVocabularyFilterMethodType = Literal["mask", "remove", "tag"] +VideoResolutionType = Literal["FHD", "HD", "None"] +ChimeSDKMeetingsServiceName = Literal["chime-sdk-meetings"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "il-central-1", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/chime_sdk_messaging_classes.py b/aws_resource_validator/pydantic_models/chime_sdk_messaging_classes.py new file mode 100644 index 00000000..8a7857bf --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_messaging_classes.py @@ -0,0 +1,713 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chime_sdk_messaging_constants import * + +class AppInstanceUserMembershipSummaryTypeDef(BaseModel): + Type: Optional[ChannelMembershipTypeType] = None + ReadMarkerTimestamp: Optional[datetime] = None + SubChannelId: Optional[str] = None + +class AssociateChannelFlowRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelFlowArn: str + ChimeBearer: str + +class IdentityTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class BatchCreateChannelMembershipErrorTypeDef(BaseModel): + MemberArn: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class BatchCreateChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArns: Sequence[str] + ChimeBearer: str + Type: Optional[ChannelMembershipTypeType] = None + SubChannelId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ChannelAssociatedWithFlowSummaryTypeDef(BaseModel): + Name: Optional[str] = None + ChannelArn: Optional[str] = None + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + +class ChannelSummaryTypeDef(BaseModel): + Name: Optional[str] = None + ChannelArn: Optional[str] = None + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + LastMessageTimestamp: Optional[datetime] = None + +class PushNotificationPreferencesTypeDef(BaseModel): + AllowNotifications: AllowNotificationsType + FilterRule: Optional[str] = None + +class MessageAttributeValueTypeDef(BaseModel): + StringValues: Optional[Sequence[str]] = None + +class PushNotificationConfigurationTypeDef(BaseModel): + Title: Optional[str] = None + Body: Optional[str] = None + Type: Optional[PushNotificationTypeType] = None + +class ChannelMessageStatusStructureTypeDef(BaseModel): + Value: Optional[ChannelMessageStatusType] = None + Detail: Optional[str] = None + +class TargetTypeDef(BaseModel): + MemberArn: Optional[str] = None + +class ElasticChannelConfigurationTypeDef(BaseModel): + MaximumSubChannels: int + TargetMembershipsPerSubChannel: int + MinimumMembershipPercentage: int + +class ExpirationSettingsTypeDef(BaseModel): + ExpirationDays: int + ExpirationCriterion: ExpirationCriterionType + +class CreateChannelBanRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + Type: ChannelMembershipTypeType + ChimeBearer: str + SubChannelId: Optional[str] = None + +class CreateChannelModeratorRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelModeratorArn: str + ChimeBearer: str + +class DeleteChannelBanRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + +class DeleteChannelFlowRequestRequestTypeDef(BaseModel): + ChannelFlowArn: str + +class DeleteChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + SubChannelId: Optional[str] = None + +class DeleteChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: str + SubChannelId: Optional[str] = None + +class DeleteChannelModeratorRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelModeratorArn: str + ChimeBearer: str + +class DeleteChannelRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + +class DeleteMessagingStreamingConfigurationsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class DescribeChannelBanRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + +class DescribeChannelFlowRequestRequestTypeDef(BaseModel): + ChannelFlowArn: str + +class DescribeChannelMembershipForAppInstanceUserRequestRequestTypeDef(BaseModel): + ChannelArn: str + AppInstanceUserArn: str + ChimeBearer: str + +class DescribeChannelMembershipRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + SubChannelId: Optional[str] = None + +class DescribeChannelModeratedByAppInstanceUserRequestRequestTypeDef(BaseModel): + ChannelArn: str + AppInstanceUserArn: str + ChimeBearer: str + +class DescribeChannelModeratorRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelModeratorArn: str + ChimeBearer: str + +class DescribeChannelRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + +class DisassociateChannelFlowRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChannelFlowArn: str + ChimeBearer: str + +class GetChannelMembershipPreferencesRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + +class GetChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: str + SubChannelId: Optional[str] = None + +class GetChannelMessageStatusRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: str + SubChannelId: Optional[str] = None + +class MessagingSessionEndpointTypeDef(BaseModel): + Url: Optional[str] = None + +class GetMessagingStreamingConfigurationsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + +class StreamingConfigurationTypeDef(BaseModel): + DataType: MessagingDataTypeType + ResourceArn: str + +class LambdaConfigurationTypeDef(BaseModel): + ResourceArn: str + InvocationType: Literal["ASYNC"] + +class ListChannelBansRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelFlowsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelMembershipsForAppInstanceUserRequestRequestTypeDef(BaseModel): + ChimeBearer: str + AppInstanceUserArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelMembershipsRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + Type: Optional[ChannelMembershipTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SubChannelId: Optional[str] = None + +class ListChannelModeratorsRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelsAssociatedWithChannelFlowRequestRequestTypeDef(BaseModel): + ChannelFlowArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelsModeratedByAppInstanceUserRequestRequestTypeDef(BaseModel): + ChimeBearer: str + AppInstanceUserArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + ChimeBearer: str + Privacy: Optional[ChannelPrivacyType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSubChannelsRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SubChannelSummaryTypeDef(BaseModel): + SubChannelId: Optional[str] = None + MembershipCount: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class RedactChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + ChimeBearer: str + SubChannelId: Optional[str] = None + +class SearchFieldTypeDef(BaseModel): + Key: Literal["MEMBERS"] + Values: Sequence[str] + Operator: SearchFieldOperatorType + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + MessageId: str + Content: str + ChimeBearer: str + Metadata: Optional[str] = None + SubChannelId: Optional[str] = None + ContentType: Optional[str] = None + +class UpdateChannelReadMarkerRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + +class UpdateChannelRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + Name: Optional[str] = None + Mode: Optional[ChannelModeType] = None + Metadata: Optional[str] = None + +class BatchChannelMembershipsTypeDef(BaseModel): + InvitedBy: Optional[IdentityTypeDef] = None + Type: Optional[ChannelMembershipTypeType] = None + Members: Optional[List[IdentityTypeDef]] = None + ChannelArn: Optional[str] = None + SubChannelId: Optional[str] = None + +class ChannelBanSummaryTypeDef(BaseModel): + Member: Optional[IdentityTypeDef] = None + +class ChannelBanTypeDef(BaseModel): + Member: Optional[IdentityTypeDef] = None + ChannelArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + CreatedBy: Optional[IdentityTypeDef] = None + +class ChannelMembershipSummaryTypeDef(BaseModel): + Member: Optional[IdentityTypeDef] = None + +class ChannelMembershipTypeDef(BaseModel): + InvitedBy: Optional[IdentityTypeDef] = None + Type: Optional[ChannelMembershipTypeType] = None + Member: Optional[IdentityTypeDef] = None + ChannelArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + SubChannelId: Optional[str] = None + +class ChannelModeratorSummaryTypeDef(BaseModel): + Moderator: Optional[IdentityTypeDef] = None + +class ChannelModeratorTypeDef(BaseModel): + Moderator: Optional[IdentityTypeDef] = None + ChannelArn: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + CreatedBy: Optional[IdentityTypeDef] = None + +class ChannelFlowCallbackResponseTypeDef(BaseModel): + ChannelArn: str + CallbackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelBanResponseTypeDef(BaseModel): + ChannelArn: str + Member: IdentityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelFlowResponseTypeDef(BaseModel): + ChannelFlowArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelMembershipResponseTypeDef(BaseModel): + ChannelArn: str + Member: IdentityTypeDef + SubChannelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelModeratorResponseTypeDef(BaseModel): + ChannelArn: str + ChannelModerator: IdentityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelResponseTypeDef(BaseModel): + ChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class RedactChannelMessageResponseTypeDef(BaseModel): + ChannelArn: str + MessageId: str + SubChannelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelFlowResponseTypeDef(BaseModel): + ChannelFlowArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelReadMarkerResponseTypeDef(BaseModel): + ChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + ChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsAssociatedWithChannelFlowResponseTypeDef(BaseModel): + Channels: List[ChannelAssociatedWithFlowSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelMembershipForAppInstanceUserSummaryTypeDef(BaseModel): + ChannelSummary: Optional[ChannelSummaryTypeDef] = None + AppInstanceUserMembershipSummary: Optional[AppInstanceUserMembershipSummaryTypeDef] = None + +class ChannelModeratedByAppInstanceUserSummaryTypeDef(BaseModel): + ChannelSummary: Optional[ChannelSummaryTypeDef] = None + +class ListChannelsResponseTypeDef(BaseModel): + Channels: List[ChannelSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchChannelsResponseTypeDef(BaseModel): + Channels: List[ChannelSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelMembershipPreferencesTypeDef(BaseModel): + PushNotifications: Optional[PushNotificationPreferencesTypeDef] = None + +class ChannelMessageCallbackTypeDef(BaseModel): + MessageId: str + Content: Optional[str] = None + Metadata: Optional[str] = None + PushNotification: Optional[PushNotificationConfigurationTypeDef] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + SubChannelId: Optional[str] = None + ContentType: Optional[str] = None + +class GetChannelMessageStatusResponseTypeDef(BaseModel): + Status: ChannelMessageStatusStructureTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SendChannelMessageResponseTypeDef(BaseModel): + ChannelArn: str + MessageId: str + Status: ChannelMessageStatusStructureTypeDef + SubChannelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelMessageResponseTypeDef(BaseModel): + ChannelArn: str + MessageId: str + Status: ChannelMessageStatusStructureTypeDef + SubChannelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelMessageSummaryTypeDef(BaseModel): + MessageId: Optional[str] = None + Content: Optional[str] = None + Metadata: Optional[str] = None + Type: Optional[ChannelMessageTypeType] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + LastEditedTimestamp: Optional[datetime] = None + Sender: Optional[IdentityTypeDef] = None + Redacted: Optional[bool] = None + Status: Optional[ChannelMessageStatusStructureTypeDef] = None + MessageAttributes: Optional[Dict[str, MessageAttributeValueTypeDef]] = None + ContentType: Optional[str] = None + Target: Optional[List[TargetTypeDef]] = None + +class ChannelMessageTypeDef(BaseModel): + ChannelArn: Optional[str] = None + MessageId: Optional[str] = None + Content: Optional[str] = None + Metadata: Optional[str] = None + Type: Optional[ChannelMessageTypeType] = None + CreatedTimestamp: Optional[datetime] = None + LastEditedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Sender: Optional[IdentityTypeDef] = None + Redacted: Optional[bool] = None + Persistence: Optional[ChannelMessagePersistenceTypeType] = None + Status: Optional[ChannelMessageStatusStructureTypeDef] = None + MessageAttributes: Optional[Dict[str, MessageAttributeValueTypeDef]] = None + SubChannelId: Optional[str] = None + ContentType: Optional[str] = None + Target: Optional[List[TargetTypeDef]] = None + +class SendChannelMessageRequestRequestTypeDef(BaseModel): + ChannelArn: str + Content: str + Type: ChannelMessageTypeType + Persistence: ChannelMessagePersistenceTypeType + ClientRequestToken: str + ChimeBearer: str + Metadata: Optional[str] = None + PushNotification: Optional[PushNotificationConfigurationTypeDef] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + SubChannelId: Optional[str] = None + ContentType: Optional[str] = None + Target: Optional[Sequence[TargetTypeDef]] = None + +class ChannelTypeDef(BaseModel): + Name: Optional[str] = None + ChannelArn: Optional[str] = None + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + CreatedBy: Optional[IdentityTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + LastMessageTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + ChannelFlowArn: Optional[str] = None + ElasticChannelConfiguration: Optional[ElasticChannelConfigurationTypeDef] = None + ExpirationSettings: Optional[ExpirationSettingsTypeDef] = None + +class PutChannelExpirationSettingsRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: Optional[str] = None + ExpirationSettings: Optional[ExpirationSettingsTypeDef] = None + +class PutChannelExpirationSettingsResponseTypeDef(BaseModel): + ChannelArn: str + ExpirationSettings: ExpirationSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + Name: str + ClientRequestToken: str + ChimeBearer: str + Mode: Optional[ChannelModeType] = None + Privacy: Optional[ChannelPrivacyType] = None + Metadata: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ChannelId: Optional[str] = None + MemberArns: Optional[Sequence[str]] = None + ModeratorArns: Optional[Sequence[str]] = None + ElasticChannelConfiguration: Optional[ElasticChannelConfigurationTypeDef] = None + ExpirationSettings: Optional[ExpirationSettingsTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class GetMessagingSessionEndpointResponseTypeDef(BaseModel): + Endpoint: MessagingSessionEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMessagingStreamingConfigurationsResponseTypeDef(BaseModel): + StreamingConfigurations: List[StreamingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutMessagingStreamingConfigurationsRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + StreamingConfigurations: Sequence[StreamingConfigurationTypeDef] + +class PutMessagingStreamingConfigurationsResponseTypeDef(BaseModel): + StreamingConfigurations: List[StreamingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ProcessorConfigurationTypeDef(BaseModel): + Lambda: LambdaConfigurationTypeDef + +class ListChannelMessagesRequestRequestTypeDef(BaseModel): + ChannelArn: str + ChimeBearer: str + SortOrder: Optional[SortOrderType] = None + NotBefore: Optional[TimestampTypeDef] = None + NotAfter: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SubChannelId: Optional[str] = None + +class ListSubChannelsResponseTypeDef(BaseModel): + ChannelArn: str + SubChannels: List[SubChannelSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchChannelsRequestRequestTypeDef(BaseModel): + Fields: Sequence[SearchFieldTypeDef] + ChimeBearer: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class BatchCreateChannelMembershipResponseTypeDef(BaseModel): + BatchChannelMemberships: BatchChannelMembershipsTypeDef + Errors: List[BatchCreateChannelMembershipErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelBansResponseTypeDef(BaseModel): + ChannelArn: str + NextToken: str + ChannelBans: List[ChannelBanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelBanResponseTypeDef(BaseModel): + ChannelBan: ChannelBanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelMembershipsResponseTypeDef(BaseModel): + ChannelArn: str + ChannelMemberships: List[ChannelMembershipSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelMembershipResponseTypeDef(BaseModel): + ChannelMembership: ChannelMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelModeratorsResponseTypeDef(BaseModel): + ChannelArn: str + NextToken: str + ChannelModerators: List[ChannelModeratorSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelModeratorResponseTypeDef(BaseModel): + ChannelModerator: ChannelModeratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelMembershipForAppInstanceUserResponseTypeDef(BaseModel): + ChannelMembership: ChannelMembershipForAppInstanceUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelMembershipsForAppInstanceUserResponseTypeDef(BaseModel): + ChannelMemberships: List[ChannelMembershipForAppInstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelModeratedByAppInstanceUserResponseTypeDef(BaseModel): + Channel: ChannelModeratedByAppInstanceUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsModeratedByAppInstanceUserResponseTypeDef(BaseModel): + Channels: List[ChannelModeratedByAppInstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelMembershipPreferencesResponseTypeDef(BaseModel): + ChannelArn: str + Member: IdentityTypeDef + Preferences: ChannelMembershipPreferencesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutChannelMembershipPreferencesRequestRequestTypeDef(BaseModel): + ChannelArn: str + MemberArn: str + ChimeBearer: str + Preferences: ChannelMembershipPreferencesTypeDef + +class PutChannelMembershipPreferencesResponseTypeDef(BaseModel): + ChannelArn: str + Member: IdentityTypeDef + Preferences: ChannelMembershipPreferencesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelFlowCallbackRequestRequestTypeDef(BaseModel): + CallbackId: str + ChannelArn: str + ChannelMessage: ChannelMessageCallbackTypeDef + DeleteResource: Optional[bool] = None + +class ListChannelMessagesResponseTypeDef(BaseModel): + ChannelArn: str + NextToken: str + ChannelMessages: List[ChannelMessageSummaryTypeDef] + SubChannelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelMessageResponseTypeDef(BaseModel): + ChannelMessage: ChannelMessageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelResponseTypeDef(BaseModel): + Channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProcessorTypeDef(BaseModel): + Name: str + Configuration: ProcessorConfigurationTypeDef + ExecutionOrder: int + FallbackAction: FallbackActionType + +class ChannelFlowSummaryTypeDef(BaseModel): + ChannelFlowArn: Optional[str] = None + Name: Optional[str] = None + Processors: Optional[List[ProcessorTypeDef]] = None + +class ChannelFlowTypeDef(BaseModel): + ChannelFlowArn: Optional[str] = None + Processors: Optional[List[ProcessorTypeDef]] = None + Name: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class CreateChannelFlowRequestRequestTypeDef(BaseModel): + AppInstanceArn: str + Processors: Sequence[ProcessorTypeDef] + Name: str + ClientRequestToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateChannelFlowRequestRequestTypeDef(BaseModel): + ChannelFlowArn: str + Processors: Sequence[ProcessorTypeDef] + Name: str + +class ListChannelFlowsResponseTypeDef(BaseModel): + ChannelFlows: List[ChannelFlowSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelFlowResponseTypeDef(BaseModel): + ChannelFlow: ChannelFlowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chime_sdk_messaging_constants.py b/aws_resource_validator/pydantic_models/chime_sdk_messaging_constants.py new file mode 100644 index 00000000..0626d201 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_messaging_constants.py @@ -0,0 +1,420 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AllowNotificationsType = Literal["ALL", "FILTERED", "NONE"] +ChannelMembershipTypeType = Literal["DEFAULT", "HIDDEN"] +ChannelMessagePersistenceTypeType = Literal["NON_PERSISTENT", "PERSISTENT"] +ChannelMessageStatusType = Literal["DENIED", "FAILED", "PENDING", "SENT"] +ChannelMessageTypeType = Literal["CONTROL", "STANDARD"] +ChannelModeType = Literal["RESTRICTED", "UNRESTRICTED"] +ChannelPrivacyType = Literal["PRIVATE", "PUBLIC"] +ErrorCodeType = Literal["AccessDenied", + "BadRequest", + "Conflict", + "Forbidden", + "NotFound", + "PhoneNumberAssociationsExist", + "PreconditionFailed", + "ResourceLimitExceeded", + "ServiceFailure", + "ServiceUnavailable", + "Throttled", + "Throttling", + "Unauthorized", + "Unprocessable", + "VoiceConnectorGroupAssociationsExist",] +ExpirationCriterionType = Literal["CREATED_TIMESTAMP", "LAST_MESSAGE_TIMESTAMP"] +FallbackActionType = Literal["ABORT", "CONTINUE"] +InvocationTypeType = Literal["ASYNC"] +MessagingDataTypeType = Literal["Channel", "ChannelMessage"] +PushNotificationTypeType = Literal["DEFAULT", "VOIP"] +SearchFieldKeyType = Literal["MEMBERS"] +SearchFieldOperatorType = Literal["EQUALS", "INCLUDES"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +ChimeSDKMessagingServiceName = Literal["chime-sdk-messaging"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["eu-central-1", "us-east-1"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/chime_sdk_voice_classes.py b/aws_resource_validator/pydantic_models/chime_sdk_voice_classes.py new file mode 100644 index 00000000..cf4a8230 --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_voice_classes.py @@ -0,0 +1,1037 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.chime_sdk_voice_constants import * + +class AddressTypeDef(BaseModel): + streetName: Optional[str] = None + streetSuffix: Optional[str] = None + postDirectional: Optional[str] = None + preDirectional: Optional[str] = None + streetNumber: Optional[str] = None + city: Optional[str] = None + state: Optional[str] = None + postalCode: Optional[str] = None + postalCodePlus4: Optional[str] = None + country: Optional[str] = None + +class AssociatePhoneNumbersWithVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + E164PhoneNumbers: Sequence[str] + ForceAssociate: Optional[bool] = None + +class PhoneNumberErrorTypeDef(BaseModel): + PhoneNumberId: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociatePhoneNumbersWithVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + E164PhoneNumbers: Sequence[str] + ForceAssociate: Optional[bool] = None + +class BatchDeletePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberIds: Sequence[str] + +class UpdatePhoneNumberRequestItemTypeDef(BaseModel): + PhoneNumberId: str + ProductType: Optional[PhoneNumberProductTypeType] = None + CallingName: Optional[str] = None + Name: Optional[str] = None + +class CallDetailsTypeDef(BaseModel): + VoiceConnectorId: Optional[str] = None + TransactionId: Optional[str] = None + IsCaller: Optional[bool] = None + +class CandidateAddressTypeDef(BaseModel): + streetInfo: Optional[str] = None + streetNumber: Optional[str] = None + city: Optional[str] = None + state: Optional[str] = None + postalCode: Optional[str] = None + postalCodePlus4: Optional[str] = None + country: Optional[str] = None + +class CreatePhoneNumberOrderRequestRequestTypeDef(BaseModel): + ProductType: PhoneNumberProductTypeType + E164PhoneNumbers: Sequence[str] + Name: Optional[str] = None + +class GeoMatchParamsTypeDef(BaseModel): + Country: str + AreaCode: str + +class CreateSipMediaApplicationCallRequestRequestTypeDef(BaseModel): + FromPhoneNumber: str + ToPhoneNumber: str + SipMediaApplicationId: str + SipHeaders: Optional[Mapping[str, str]] = None + ArgumentsMap: Optional[Mapping[str, str]] = None + +class SipMediaApplicationCallTypeDef(BaseModel): + TransactionId: Optional[str] = None + +class SipMediaApplicationEndpointTypeDef(BaseModel): + LambdaArn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class SipRuleTargetApplicationTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + Priority: Optional[int] = None + AwsRegion: Optional[str] = None + +class VoiceConnectorItemTypeDef(BaseModel): + VoiceConnectorId: str + Priority: int + +class VoiceConnectorTypeDef(BaseModel): + VoiceConnectorId: Optional[str] = None + AwsRegion: Optional[VoiceConnectorAwsRegionType] = None + Name: Optional[str] = None + OutboundHostName: Optional[str] = None + RequireEncryption: Optional[bool] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + VoiceConnectorArn: Optional[str] = None + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + KmsKeyArn: str + +class CreateVoiceProfileRequestRequestTypeDef(BaseModel): + SpeakerSearchTaskId: str + +class VoiceProfileTypeDef(BaseModel): + VoiceProfileId: Optional[str] = None + VoiceProfileArn: Optional[str] = None + VoiceProfileDomainId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + ExpirationTimestamp: Optional[datetime] = None + +class CredentialTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + +class DNISEmergencyCallingConfigurationTypeDef(BaseModel): + EmergencyPhoneNumber: str + CallingCountry: str + TestPhoneNumber: Optional[str] = None + +class DeletePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class DeleteProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ProxySessionId: str + +class DeleteSipMediaApplicationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class DeleteSipRuleRequestRequestTypeDef(BaseModel): + SipRuleId: str + +class DeleteVoiceConnectorEmergencyCallingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + +class DeleteVoiceConnectorOriginationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorProxyRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorStreamingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceConnectorTerminationCredentialsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Usernames: Sequence[str] + +class DeleteVoiceConnectorTerminationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class DeleteVoiceProfileDomainRequestRequestTypeDef(BaseModel): + VoiceProfileDomainId: str + +class DeleteVoiceProfileRequestRequestTypeDef(BaseModel): + VoiceProfileId: str + +class DisassociatePhoneNumbersFromVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + E164PhoneNumbers: Sequence[str] + +class DisassociatePhoneNumbersFromVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + E164PhoneNumbers: Sequence[str] + +class VoiceConnectorSettingsTypeDef(BaseModel): + CdrBucket: Optional[str] = None + +class GetPhoneNumberOrderRequestRequestTypeDef(BaseModel): + PhoneNumberOrderId: str + +class GetPhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class GetProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ProxySessionId: str + +class GetSipMediaApplicationAlexaSkillConfigurationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class SipMediaApplicationAlexaSkillConfigurationOutputTypeDef(BaseModel): + AlexaSkillStatus: AlexaSkillStatusType + AlexaSkillIds: List[str] + +class GetSipMediaApplicationLoggingConfigurationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class SipMediaApplicationLoggingConfigurationTypeDef(BaseModel): + EnableSipMediaApplicationMessageLogs: Optional[bool] = None + +class GetSipMediaApplicationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + +class GetSipRuleRequestRequestTypeDef(BaseModel): + SipRuleId: str + +class GetSpeakerSearchTaskRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + SpeakerSearchTaskId: str + +class GetVoiceConnectorEmergencyCallingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + +class GetVoiceConnectorLoggingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class LoggingConfigurationTypeDef(BaseModel): + EnableSIPLogs: Optional[bool] = None + EnableMediaMetricLogs: Optional[bool] = None + +class GetVoiceConnectorOriginationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorProxyRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class ProxyTypeDef(BaseModel): + DefaultSessionExpiryMinutes: Optional[int] = None + Disabled: Optional[bool] = None + FallBackPhoneNumber: Optional[str] = None + PhoneNumberCountries: Optional[List[str]] = None + +class GetVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorStreamingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class GetVoiceConnectorTerminationHealthRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class TerminationHealthTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + Source: Optional[str] = None + +class GetVoiceConnectorTerminationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class TerminationOutputTypeDef(BaseModel): + CpsLimit: Optional[int] = None + DefaultPhoneNumber: Optional[str] = None + CallingRegions: Optional[List[str]] = None + CidrAllowedList: Optional[List[str]] = None + Disabled: Optional[bool] = None + +class GetVoiceProfileDomainRequestRequestTypeDef(BaseModel): + VoiceProfileDomainId: str + +class GetVoiceProfileRequestRequestTypeDef(BaseModel): + VoiceProfileId: str + +class GetVoiceToneAnalysisTaskRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + VoiceToneAnalysisTaskId: str + IsCaller: bool + +class ListPhoneNumberOrdersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPhoneNumbersRequestRequestTypeDef(BaseModel): + Status: Optional[str] = None + ProductType: Optional[PhoneNumberProductTypeType] = None + FilterName: Optional[PhoneNumberAssociationNameType] = None + FilterValue: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListProxySessionsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Status: Optional[ProxySessionStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListSipMediaApplicationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSipRulesRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSupportedPhoneNumberCountriesRequestRequestTypeDef(BaseModel): + ProductType: PhoneNumberProductTypeType + +class PhoneNumberCountryTypeDef(BaseModel): + CountryCode: Optional[str] = None + SupportedPhoneNumberTypes: Optional[List[PhoneNumberTypeType]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListVoiceConnectorGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListVoiceConnectorTerminationCredentialsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + +class ListVoiceConnectorsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListVoiceProfileDomainsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class VoiceProfileDomainSummaryTypeDef(BaseModel): + VoiceProfileDomainId: Optional[str] = None + VoiceProfileDomainArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class ListVoiceProfilesRequestRequestTypeDef(BaseModel): + VoiceProfileDomainId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class VoiceProfileSummaryTypeDef(BaseModel): + VoiceProfileId: Optional[str] = None + VoiceProfileArn: Optional[str] = None + VoiceProfileDomainId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + ExpirationTimestamp: Optional[datetime] = None + +class MediaInsightsConfigurationTypeDef(BaseModel): + Disabled: Optional[bool] = None + ConfigurationArn: Optional[str] = None + +class OrderedPhoneNumberTypeDef(BaseModel): + E164PhoneNumber: Optional[str] = None + Status: Optional[OrderedPhoneNumberStatusType] = None + +class OriginationRouteTypeDef(BaseModel): + Host: Optional[str] = None + Port: Optional[int] = None + Protocol: Optional[OriginationRouteProtocolType] = None + Priority: Optional[int] = None + Weight: Optional[int] = None + +class ParticipantTypeDef(BaseModel): + PhoneNumber: Optional[str] = None + ProxyPhoneNumber: Optional[str] = None + +class PhoneNumberAssociationTypeDef(BaseModel): + Value: Optional[str] = None + Name: Optional[PhoneNumberAssociationNameType] = None + AssociatedTimestamp: Optional[datetime] = None + +class PhoneNumberCapabilitiesTypeDef(BaseModel): + InboundCall: Optional[bool] = None + OutboundCall: Optional[bool] = None + InboundSMS: Optional[bool] = None + OutboundSMS: Optional[bool] = None + InboundMMS: Optional[bool] = None + OutboundMMS: Optional[bool] = None + +class SipMediaApplicationAlexaSkillConfigurationTypeDef(BaseModel): + AlexaSkillStatus: AlexaSkillStatusType + AlexaSkillIds: Sequence[str] + +class PutVoiceConnectorProxyRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + DefaultSessionExpiryMinutes: int + PhoneNumberPoolCountries: Sequence[str] + FallBackPhoneNumber: Optional[str] = None + Disabled: Optional[bool] = None + +class TerminationTypeDef(BaseModel): + CpsLimit: Optional[int] = None + DefaultPhoneNumber: Optional[str] = None + CallingRegions: Optional[Sequence[str]] = None + CidrAllowedList: Optional[Sequence[str]] = None + Disabled: Optional[bool] = None + +class RestorePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class SearchAvailablePhoneNumbersRequestRequestTypeDef(BaseModel): + AreaCode: Optional[str] = None + City: Optional[str] = None + Country: Optional[str] = None + State: Optional[str] = None + TollFreePrefix: Optional[str] = None + PhoneNumberType: Optional[PhoneNumberTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SpeakerSearchResultTypeDef(BaseModel): + ConfidenceScore: Optional[float] = None + VoiceProfileId: Optional[str] = None + +class StartSpeakerSearchTaskRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + TransactionId: str + VoiceProfileDomainId: str + ClientRequestToken: Optional[str] = None + CallLeg: Optional[CallLegTypeType] = None + +class StartVoiceToneAnalysisTaskRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + TransactionId: str + LanguageCode: Literal["en-US"] + ClientRequestToken: Optional[str] = None + +class StopSpeakerSearchTaskRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + SpeakerSearchTaskId: str + +class StopVoiceToneAnalysisTaskRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + VoiceToneAnalysisTaskId: str + +class StreamingNotificationTargetTypeDef(BaseModel): + NotificationTarget: Optional[NotificationTargetType] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdatePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + ProductType: Optional[PhoneNumberProductTypeType] = None + CallingName: Optional[str] = None + Name: Optional[str] = None + +class UpdatePhoneNumberSettingsRequestRequestTypeDef(BaseModel): + CallingName: str + +class UpdateProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ProxySessionId: str + Capabilities: Sequence[CapabilityType] + ExpiryMinutes: Optional[int] = None + +class UpdateSipMediaApplicationCallRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + TransactionId: str + Arguments: Mapping[str, str] + +class UpdateVoiceConnectorRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Name: str + RequireEncryption: bool + +class UpdateVoiceProfileDomainRequestRequestTypeDef(BaseModel): + VoiceProfileDomainId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateVoiceProfileRequestRequestTypeDef(BaseModel): + VoiceProfileId: str + SpeakerSearchTaskId: str + +class ValidateE911AddressRequestRequestTypeDef(BaseModel): + AwsAccountId: str + StreetNumber: str + StreetInfo: str + City: str + State: str + Country: str + PostalCode: str + +class AssociatePhoneNumbersWithVoiceConnectorGroupResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociatePhoneNumbersWithVoiceConnectorResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeletePhoneNumberResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdatePhoneNumberResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociatePhoneNumbersFromVoiceConnectorGroupResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociatePhoneNumbersFromVoiceConnectorResponseTypeDef(BaseModel): + PhoneNumberErrors: List[PhoneNumberErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetPhoneNumberSettingsResponseTypeDef(BaseModel): + CallingName: str + CallingNameUpdatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListAvailableVoiceConnectorRegionsResponseTypeDef(BaseModel): + VoiceConnectorRegions: List[VoiceConnectorAwsRegionType] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceConnectorTerminationCredentialsResponseTypeDef(BaseModel): + Usernames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchAvailablePhoneNumbersResponseTypeDef(BaseModel): + E164PhoneNumbers: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchUpdatePhoneNumberRequestRequestTypeDef(BaseModel): + UpdatePhoneNumberRequestItems: Sequence[UpdatePhoneNumberRequestItemTypeDef] + +class VoiceToneAnalysisTaskTypeDef(BaseModel): + VoiceToneAnalysisTaskId: Optional[str] = None + VoiceToneAnalysisTaskStatus: Optional[str] = None + CallDetails: Optional[CallDetailsTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + StartedTimestamp: Optional[datetime] = None + StatusMessage: Optional[str] = None + +class ValidateE911AddressResponseTypeDef(BaseModel): + ValidationResult: int + AddressExternalId: str + Address: AddressTypeDef + CandidateAddressList: List[CandidateAddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProxySessionRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + ParticipantPhoneNumbers: Sequence[str] + Capabilities: Sequence[CapabilityType] + Name: Optional[str] = None + ExpiryMinutes: Optional[int] = None + NumberSelectionBehavior: Optional[NumberSelectionBehaviorType] = None + GeoMatchLevel: Optional[GeoMatchLevelType] = None + GeoMatchParams: Optional[GeoMatchParamsTypeDef] = None + +class CreateSipMediaApplicationCallResponseTypeDef(BaseModel): + SipMediaApplicationCall: SipMediaApplicationCallTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSipMediaApplicationCallResponseTypeDef(BaseModel): + SipMediaApplicationCall: SipMediaApplicationCallTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SipMediaApplicationTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + AwsRegion: Optional[str] = None + Name: Optional[str] = None + Endpoints: Optional[List[SipMediaApplicationEndpointTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + SipMediaApplicationArn: Optional[str] = None + +class UpdateSipMediaApplicationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + Name: Optional[str] = None + Endpoints: Optional[Sequence[SipMediaApplicationEndpointTypeDef]] = None + +class CreateSipMediaApplicationRequestRequestTypeDef(BaseModel): + AwsRegion: str + Name: str + Endpoints: Sequence[SipMediaApplicationEndpointTypeDef] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVoiceConnectorRequestRequestTypeDef(BaseModel): + Name: str + RequireEncryption: bool + AwsRegion: Optional[VoiceConnectorAwsRegionType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateSipRuleRequestRequestTypeDef(BaseModel): + Name: str + TriggerType: SipRuleTriggerTypeType + TriggerValue: str + Disabled: Optional[bool] = None + TargetApplications: Optional[Sequence[SipRuleTargetApplicationTypeDef]] = None + +class SipRuleTypeDef(BaseModel): + SipRuleId: Optional[str] = None + Name: Optional[str] = None + Disabled: Optional[bool] = None + TriggerType: Optional[SipRuleTriggerTypeType] = None + TriggerValue: Optional[str] = None + TargetApplications: Optional[List[SipRuleTargetApplicationTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class UpdateSipRuleRequestRequestTypeDef(BaseModel): + SipRuleId: str + Name: str + Disabled: Optional[bool] = None + TargetApplications: Optional[Sequence[SipRuleTargetApplicationTypeDef]] = None + +class CreateVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + Name: str + VoiceConnectorItems: Optional[Sequence[VoiceConnectorItemTypeDef]] = None + +class UpdateVoiceConnectorGroupRequestRequestTypeDef(BaseModel): + VoiceConnectorGroupId: str + Name: str + VoiceConnectorItems: Sequence[VoiceConnectorItemTypeDef] + +class VoiceConnectorGroupTypeDef(BaseModel): + VoiceConnectorGroupId: Optional[str] = None + Name: Optional[str] = None + VoiceConnectorItems: Optional[List[VoiceConnectorItemTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + VoiceConnectorGroupArn: Optional[str] = None + +class CreateVoiceConnectorResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceConnectorsResponseTypeDef(BaseModel): + VoiceConnectors: List[VoiceConnectorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateVoiceConnectorResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVoiceProfileDomainRequestRequestTypeDef(BaseModel): + Name: str + ServerSideEncryptionConfiguration: ServerSideEncryptionConfigurationTypeDef + Description: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class VoiceProfileDomainTypeDef(BaseModel): + VoiceProfileDomainId: Optional[str] = None + VoiceProfileDomainArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + ServerSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class CreateVoiceProfileResponseTypeDef(BaseModel): + VoiceProfile: VoiceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceProfileResponseTypeDef(BaseModel): + VoiceProfile: VoiceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVoiceProfileResponseTypeDef(BaseModel): + VoiceProfile: VoiceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorTerminationCredentialsRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Credentials: Optional[Sequence[CredentialTypeDef]] = None + +class EmergencyCallingConfigurationOutputTypeDef(BaseModel): + DNIS: Optional[List[DNISEmergencyCallingConfigurationTypeDef]] = None + +class EmergencyCallingConfigurationTypeDef(BaseModel): + DNIS: Optional[Sequence[DNISEmergencyCallingConfigurationTypeDef]] = None + +class GetGlobalSettingsResponseTypeDef(BaseModel): + VoiceConnector: VoiceConnectorSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGlobalSettingsRequestRequestTypeDef(BaseModel): + VoiceConnector: Optional[VoiceConnectorSettingsTypeDef] = None + +class GetSipMediaApplicationAlexaSkillConfigurationResponseTypeDef(BaseModel): + SipMediaApplicationAlexaSkillConfiguration: SipMediaApplicationAlexaSkillConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutSipMediaApplicationAlexaSkillConfigurationResponseTypeDef(BaseModel): + SipMediaApplicationAlexaSkillConfiguration: SipMediaApplicationAlexaSkillConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSipMediaApplicationLoggingConfigurationResponseTypeDef(BaseModel): + SipMediaApplicationLoggingConfiguration: SipMediaApplicationLoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutSipMediaApplicationLoggingConfigurationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + SipMediaApplicationLoggingConfiguration: Optional[ SipMediaApplicationLoggingConfigurationTypeDef ] = None + +class PutSipMediaApplicationLoggingConfigurationResponseTypeDef(BaseModel): + SipMediaApplicationLoggingConfiguration: SipMediaApplicationLoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorLoggingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + LoggingConfiguration: LoggingConfigurationTypeDef + +class PutVoiceConnectorLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorProxyResponseTypeDef(BaseModel): + Proxy: ProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorProxyResponseTypeDef(BaseModel): + Proxy: ProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorTerminationHealthResponseTypeDef(BaseModel): + TerminationHealth: TerminationHealthTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorTerminationResponseTypeDef(BaseModel): + Termination: TerminationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorTerminationResponseTypeDef(BaseModel): + Termination: TerminationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSipMediaApplicationsRequestListSipMediaApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSipRulesRequestListSipRulesPaginateTypeDef(BaseModel): + SipMediaApplicationId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSupportedPhoneNumberCountriesResponseTypeDef(BaseModel): + PhoneNumberCountries: List[PhoneNumberCountryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceProfileDomainsResponseTypeDef(BaseModel): + VoiceProfileDomains: List[VoiceProfileDomainSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListVoiceProfilesResponseTypeDef(BaseModel): + VoiceProfiles: List[VoiceProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PhoneNumberOrderTypeDef(BaseModel): + PhoneNumberOrderId: Optional[str] = None + ProductType: Optional[PhoneNumberProductTypeType] = None + Status: Optional[PhoneNumberOrderStatusType] = None + OrderType: Optional[PhoneNumberOrderTypeType] = None + OrderedPhoneNumbers: Optional[List[OrderedPhoneNumberTypeDef]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class OriginationOutputTypeDef(BaseModel): + Routes: Optional[List[OriginationRouteTypeDef]] = None + Disabled: Optional[bool] = None + +class OriginationTypeDef(BaseModel): + Routes: Optional[Sequence[OriginationRouteTypeDef]] = None + Disabled: Optional[bool] = None + +class ProxySessionTypeDef(BaseModel): + VoiceConnectorId: Optional[str] = None + ProxySessionId: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ProxySessionStatusType] = None + ExpiryMinutes: Optional[int] = None + Capabilities: Optional[List[CapabilityType]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + EndedTimestamp: Optional[datetime] = None + Participants: Optional[List[ParticipantTypeDef]] = None + NumberSelectionBehavior: Optional[NumberSelectionBehaviorType] = None + GeoMatchLevel: Optional[GeoMatchLevelType] = None + GeoMatchParams: Optional[GeoMatchParamsTypeDef] = None + +class PhoneNumberTypeDef(BaseModel): + PhoneNumberId: Optional[str] = None + E164PhoneNumber: Optional[str] = None + Country: Optional[str] = None + Type: Optional[PhoneNumberTypeType] = None + ProductType: Optional[PhoneNumberProductTypeType] = None + Status: Optional[PhoneNumberStatusType] = None + Capabilities: Optional[PhoneNumberCapabilitiesTypeDef] = None + Associations: Optional[List[PhoneNumberAssociationTypeDef]] = None + CallingName: Optional[str] = None + CallingNameStatus: Optional[CallingNameStatusType] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + DeletionTimestamp: Optional[datetime] = None + OrderId: Optional[str] = None + Name: Optional[str] = None + +class PutSipMediaApplicationAlexaSkillConfigurationRequestRequestTypeDef(BaseModel): + SipMediaApplicationId: str + SipMediaApplicationAlexaSkillConfiguration: Optional[ SipMediaApplicationAlexaSkillConfigurationTypeDef ] = None + +class PutVoiceConnectorTerminationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Termination: TerminationTypeDef + +class SpeakerSearchDetailsTypeDef(BaseModel): + Results: Optional[List[SpeakerSearchResultTypeDef]] = None + VoiceprintGenerationStatus: Optional[str] = None + +class StreamingConfigurationOutputTypeDef(BaseModel): + DataRetentionInHours: int + Disabled: bool + StreamingNotificationTargets: Optional[List[StreamingNotificationTargetTypeDef]] = None + MediaInsightsConfiguration: Optional[MediaInsightsConfigurationTypeDef] = None + +class StreamingConfigurationTypeDef(BaseModel): + DataRetentionInHours: int + Disabled: bool + StreamingNotificationTargets: Optional[Sequence[StreamingNotificationTargetTypeDef]] = None + MediaInsightsConfiguration: Optional[MediaInsightsConfigurationTypeDef] = None + +class GetVoiceToneAnalysisTaskResponseTypeDef(BaseModel): + VoiceToneAnalysisTask: VoiceToneAnalysisTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartVoiceToneAnalysisTaskResponseTypeDef(BaseModel): + VoiceToneAnalysisTask: VoiceToneAnalysisTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSipMediaApplicationResponseTypeDef(BaseModel): + SipMediaApplication: SipMediaApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSipMediaApplicationResponseTypeDef(BaseModel): + SipMediaApplication: SipMediaApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSipMediaApplicationsResponseTypeDef(BaseModel): + SipMediaApplications: List[SipMediaApplicationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateSipMediaApplicationResponseTypeDef(BaseModel): + SipMediaApplication: SipMediaApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSipRuleResponseTypeDef(BaseModel): + SipRule: SipRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSipRuleResponseTypeDef(BaseModel): + SipRule: SipRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSipRulesResponseTypeDef(BaseModel): + SipRules: List[SipRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateSipRuleResponseTypeDef(BaseModel): + SipRule: SipRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVoiceConnectorGroupResponseTypeDef(BaseModel): + VoiceConnectorGroup: VoiceConnectorGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorGroupResponseTypeDef(BaseModel): + VoiceConnectorGroup: VoiceConnectorGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVoiceConnectorGroupsResponseTypeDef(BaseModel): + VoiceConnectorGroups: List[VoiceConnectorGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateVoiceConnectorGroupResponseTypeDef(BaseModel): + VoiceConnectorGroup: VoiceConnectorGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVoiceProfileDomainResponseTypeDef(BaseModel): + VoiceProfileDomain: VoiceProfileDomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceProfileDomainResponseTypeDef(BaseModel): + VoiceProfileDomain: VoiceProfileDomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVoiceProfileDomainResponseTypeDef(BaseModel): + VoiceProfileDomain: VoiceProfileDomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceConnectorEmergencyCallingConfigurationResponseTypeDef(BaseModel): + EmergencyCallingConfiguration: EmergencyCallingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorEmergencyCallingConfigurationResponseTypeDef(BaseModel): + EmergencyCallingConfiguration: EmergencyCallingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorEmergencyCallingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + EmergencyCallingConfiguration: EmergencyCallingConfigurationTypeDef + +class CreatePhoneNumberOrderResponseTypeDef(BaseModel): + PhoneNumberOrder: PhoneNumberOrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPhoneNumberOrderResponseTypeDef(BaseModel): + PhoneNumberOrder: PhoneNumberOrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPhoneNumberOrdersResponseTypeDef(BaseModel): + PhoneNumberOrders: List[PhoneNumberOrderTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetVoiceConnectorOriginationResponseTypeDef(BaseModel): + Origination: OriginationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorOriginationResponseTypeDef(BaseModel): + Origination: OriginationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorOriginationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + Origination: OriginationTypeDef + +class CreateProxySessionResponseTypeDef(BaseModel): + ProxySession: ProxySessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProxySessionResponseTypeDef(BaseModel): + ProxySession: ProxySessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProxySessionsResponseTypeDef(BaseModel): + ProxySessions: List[ProxySessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateProxySessionResponseTypeDef(BaseModel): + ProxySession: ProxySessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPhoneNumberResponseTypeDef(BaseModel): + PhoneNumber: PhoneNumberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPhoneNumbersResponseTypeDef(BaseModel): + PhoneNumbers: List[PhoneNumberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RestorePhoneNumberResponseTypeDef(BaseModel): + PhoneNumber: PhoneNumberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePhoneNumberResponseTypeDef(BaseModel): + PhoneNumber: PhoneNumberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SpeakerSearchTaskTypeDef(BaseModel): + SpeakerSearchTaskId: Optional[str] = None + SpeakerSearchTaskStatus: Optional[str] = None + CallDetails: Optional[CallDetailsTypeDef] = None + SpeakerSearchDetails: Optional[SpeakerSearchDetailsTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + StartedTimestamp: Optional[datetime] = None + StatusMessage: Optional[str] = None + +class GetVoiceConnectorStreamingConfigurationResponseTypeDef(BaseModel): + StreamingConfiguration: StreamingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorStreamingConfigurationResponseTypeDef(BaseModel): + StreamingConfiguration: StreamingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutVoiceConnectorStreamingConfigurationRequestRequestTypeDef(BaseModel): + VoiceConnectorId: str + StreamingConfiguration: StreamingConfigurationTypeDef + +class GetSpeakerSearchTaskResponseTypeDef(BaseModel): + SpeakerSearchTask: SpeakerSearchTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartSpeakerSearchTaskResponseTypeDef(BaseModel): + SpeakerSearchTask: SpeakerSearchTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/chime_sdk_voice_constants.py b/aws_resource_validator/pydantic_models/chime_sdk_voice_constants.py new file mode 100644 index 00000000..420d54ae --- /dev/null +++ b/aws_resource_validator/pydantic_models/chime_sdk_voice_constants.py @@ -0,0 +1,479 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlexaSkillStatusType = Literal["ACTIVE", "INACTIVE"] +CallLegTypeType = Literal["Callee", "Caller"] +CallingNameStatusType = Literal["Unassigned", "UpdateFailed", "UpdateInProgress", "UpdateSucceeded"] +CapabilityType = Literal["SMS", "Voice"] +ErrorCodeType = Literal["AccessDenied", + "BadRequest", + "Conflict", + "Forbidden", + "Gone", + "NotFound", + "PhoneNumberAssociationsExist", + "PreconditionFailed", + "ResourceLimitExceeded", + "ServiceFailure", + "ServiceUnavailable", + "Throttled", + "Throttling", + "Unauthorized", + "Unprocessable", + "VoiceConnectorGroupAssociationsExist",] +GeoMatchLevelType = Literal["AreaCode", "Country"] +LanguageCodeType = Literal["en-US"] +ListSipMediaApplicationsPaginatorName = Literal["list_sip_media_applications"] +ListSipRulesPaginatorName = Literal["list_sip_rules"] +NotificationTargetType = Literal["EventBridge", "SNS", "SQS"] +NumberSelectionBehaviorType = Literal["AvoidSticky", "PreferSticky"] +OrderedPhoneNumberStatusType = Literal["Acquired", "Failed", "Processing"] +OriginationRouteProtocolType = Literal["TCP", "UDP"] +PhoneNumberAssociationNameType = Literal["SipRuleId", "VoiceConnectorGroupId", "VoiceConnectorId"] +PhoneNumberOrderStatusType = Literal["CancelRequested", + "Cancelled", + "ChangeRequested", + "Exception", + "FOC", + "Failed", + "Partial", + "PendingDocuments", + "Processing", + "Submitted", + "Successful",] +PhoneNumberOrderTypeType = Literal["New", "Porting"] +PhoneNumberProductTypeType = Literal["SipMediaApplicationDialIn", "VoiceConnector"] +PhoneNumberStatusType = Literal["AcquireFailed", + "AcquireInProgress", + "Assigned", + "Cancelled", + "DeleteFailed", + "DeleteInProgress", + "PortinCancelRequested", + "PortinInProgress", + "ReleaseFailed", + "ReleaseInProgress", + "Unassigned",] +PhoneNumberTypeType = Literal["Local", "TollFree"] +ProxySessionStatusType = Literal["Closed", "InProgress", "Open"] +SipRuleTriggerTypeType = Literal["RequestUriHostname", "ToPhoneNumber"] +VoiceConnectorAwsRegionType = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +ChimeSDKVoiceServiceName = Literal["chime-sdk-voice"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_sip_media_applications", "list_sip_rules"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +SipMediaApplicationAlexaSkillConfigurationUnionTypeDef = Union[ 'SipMediaApplicationAlexaSkillConfigurationTypeDef', 'SipMediaApplicationAlexaSkillConfigurationOutputTypeDef', ] +TerminationUnionTypeDef = Union['TerminationTypeDef', 'TerminationOutputTypeDef'] +EmergencyCallingConfigurationUnionTypeDef = Union[ 'EmergencyCallingConfigurationTypeDef', 'EmergencyCallingConfigurationOutputTypeDef' ] +OriginationUnionTypeDef = Union['OriginationTypeDef', 'OriginationOutputTypeDef'] +StreamingConfigurationUnionTypeDef = Union[ 'StreamingConfigurationTypeDef', 'StreamingConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/cleanrooms_classes.py b/aws_resource_validator/pydantic_models/cleanrooms_classes.py new file mode 100644 index 00000000..f76ba3d6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cleanrooms_classes.py @@ -0,0 +1,1207 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cleanrooms_constants import * + +class AggregateColumnTypeDef(BaseModel): + columnNames: List[str] + function: AggregateFunctionNameType + +class AggregationConstraintTypeDef(BaseModel): + columnName: str + minimum: int + type: Literal["COUNT_DISTINCT"] + +class AnalysisParameterTypeDef(BaseModel): + name: str + type: ParameterTypeType + defaultValue: Optional[str] = None + +class AnalysisRuleListTypeDef(BaseModel): + joinColumns: List[str] + listColumns: List[str] + allowedJoinOperators: Optional[List[JoinOperatorType]] = None + +class AnalysisSchemaTypeDef(BaseModel): + referencedTables: Optional[List[str]] = None + +class AnalysisSourceTypeDef(BaseModel): + text: Optional[str] = None + +class AnalysisTemplateSummaryTypeDef(BaseModel): + arn: str + createTime: datetime + id: str + name: str + updateTime: datetime + membershipArn: str + membershipId: str + collaborationArn: str + collaborationId: str + description: Optional[str] = None + +class AnalysisTemplateValidationStatusReasonTypeDef(BaseModel): + message: str + +class BatchGetCollaborationAnalysisTemplateErrorTypeDef(BaseModel): + arn: str + code: str + message: str + +class BatchGetCollaborationAnalysisTemplateInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + analysisTemplateArns: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchGetSchemaAnalysisRuleErrorTypeDef(BaseModel): + name: str + type: AnalysisRuleTypeType + code: str + message: str + +class SchemaAnalysisRuleRequestTypeDef(BaseModel): + name: str + type: AnalysisRuleTypeType + +class BatchGetSchemaErrorTypeDef(BaseModel): + name: str + code: str + message: str + +class BatchGetSchemaInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + names: Sequence[str] + +class CollaborationAnalysisTemplateSummaryTypeDef(BaseModel): + arn: str + createTime: datetime + id: str + name: str + updateTime: datetime + collaborationArn: str + collaborationId: str + creatorAccountId: str + description: Optional[str] = None + +class CollaborationConfiguredAudienceModelAssociationSummaryTypeDef(BaseModel): + arn: str + createTime: datetime + id: str + name: str + updateTime: datetime + collaborationArn: str + collaborationId: str + creatorAccountId: str + description: Optional[str] = None + +class CollaborationConfiguredAudienceModelAssociationTypeDef(BaseModel): + id: str + arn: str + collaborationId: str + collaborationArn: str + configuredAudienceModelArn: str + name: str + creatorAccountId: str + createTime: datetime + updateTime: datetime + description: Optional[str] = None + +class CollaborationPrivacyBudgetTemplateSummaryTypeDef(BaseModel): + id: str + arn: str + collaborationId: str + collaborationArn: str + creatorAccountId: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + createTime: datetime + updateTime: datetime + +class CollaborationSummaryTypeDef(BaseModel): + id: str + arn: str + name: str + creatorAccountId: str + creatorDisplayName: str + createTime: datetime + updateTime: datetime + memberStatus: MemberStatusType + membershipId: Optional[str] = None + membershipArn: Optional[str] = None + +class DataEncryptionMetadataTypeDef(BaseModel): + allowCleartext: bool + allowDuplicates: bool + allowJoinsOnColumnsWithDifferentNames: bool + preserveNulls: bool + +class ColumnTypeDef(BaseModel): + name: str + type: str + +class ConfiguredAudienceModelAssociationSummaryTypeDef(BaseModel): + membershipId: str + membershipArn: str + collaborationArn: str + collaborationId: str + createTime: datetime + updateTime: datetime + id: str + arn: str + name: str + configuredAudienceModelArn: str + description: Optional[str] = None + +class ConfiguredAudienceModelAssociationTypeDef(BaseModel): + id: str + arn: str + configuredAudienceModelArn: str + membershipId: str + membershipArn: str + collaborationId: str + collaborationArn: str + name: str + manageResourcePolicies: bool + createTime: datetime + updateTime: datetime + description: Optional[str] = None + +class ConfiguredTableAssociationSummaryTypeDef(BaseModel): + configuredTableId: str + membershipId: str + membershipArn: str + name: str + createTime: datetime + updateTime: datetime + id: str + arn: str + +class ConfiguredTableAssociationTypeDef(BaseModel): + arn: str + id: str + configuredTableId: str + configuredTableArn: str + membershipId: str + membershipArn: str + roleArn: str + name: str + createTime: datetime + updateTime: datetime + description: Optional[str] = None + +class ConfiguredTableSummaryTypeDef(BaseModel): + id: str + arn: str + name: str + createTime: datetime + updateTime: datetime + analysisRuleTypes: List[ConfiguredTableAnalysisRuleTypeType] + analysisMethod: Literal["DIRECT_QUERY"] + +class CreateConfiguredAudienceModelAssociationInputRequestTypeDef(BaseModel): + membershipIdentifier: str + configuredAudienceModelArn: str + configuredAudienceModelAssociationName: str + manageResourcePolicies: bool + tags: Optional[Mapping[str, str]] = None + description: Optional[str] = None + +class CreateConfiguredTableAssociationInputRequestTypeDef(BaseModel): + name: str + membershipIdentifier: str + configuredTableIdentifier: str + roleArn: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteAnalysisTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + analysisTemplateIdentifier: str + +class DeleteCollaborationInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + +class DeleteConfiguredAudienceModelAssociationInputRequestTypeDef(BaseModel): + configuredAudienceModelAssociationIdentifier: str + membershipIdentifier: str + +class DeleteConfiguredTableAnalysisRuleInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + analysisRuleType: ConfiguredTableAnalysisRuleTypeType + +class DeleteConfiguredTableAssociationInputRequestTypeDef(BaseModel): + configuredTableAssociationIdentifier: str + membershipIdentifier: str + +class DeleteConfiguredTableInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + +class DeleteMemberInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + accountId: str + +class DeleteMembershipInputRequestTypeDef(BaseModel): + membershipIdentifier: str + +class DeletePrivacyBudgetTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + privacyBudgetTemplateIdentifier: str + +class DifferentialPrivacyColumnTypeDef(BaseModel): + name: str + +class DifferentialPrivacySensitivityParametersTypeDef(BaseModel): + aggregationType: DifferentialPrivacyAggregationTypeType + aggregationExpression: str + userContributionLimit: int + minColumnValue: Optional[float] = None + maxColumnValue: Optional[float] = None + +class DifferentialPrivacyPreviewAggregationTypeDef(BaseModel): + type: DifferentialPrivacyAggregationTypeType + maxCount: int + +class DifferentialPrivacyPreviewParametersInputTypeDef(BaseModel): + epsilon: int + usersNoisePerQuery: int + +class DifferentialPrivacyPrivacyBudgetAggregationTypeDef(BaseModel): + type: DifferentialPrivacyAggregationTypeType + maxCount: int + remainingCount: int + +class DifferentialPrivacyTemplateParametersInputTypeDef(BaseModel): + epsilon: int + usersNoisePerQuery: int + +class DifferentialPrivacyTemplateParametersOutputTypeDef(BaseModel): + epsilon: int + usersNoisePerQuery: int + +class DifferentialPrivacyTemplateUpdateParametersTypeDef(BaseModel): + epsilon: Optional[int] = None + usersNoisePerQuery: Optional[int] = None + +class GetAnalysisTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + analysisTemplateIdentifier: str + +class GetCollaborationAnalysisTemplateInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + analysisTemplateArn: str + +class GetCollaborationConfiguredAudienceModelAssociationInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + configuredAudienceModelAssociationIdentifier: str + +class GetCollaborationInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + +class GetCollaborationPrivacyBudgetTemplateInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + privacyBudgetTemplateIdentifier: str + +class GetConfiguredAudienceModelAssociationInputRequestTypeDef(BaseModel): + configuredAudienceModelAssociationIdentifier: str + membershipIdentifier: str + +class GetConfiguredTableAnalysisRuleInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + analysisRuleType: ConfiguredTableAnalysisRuleTypeType + +class GetConfiguredTableAssociationInputRequestTypeDef(BaseModel): + configuredTableAssociationIdentifier: str + membershipIdentifier: str + +class GetConfiguredTableInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + +class GetMembershipInputRequestTypeDef(BaseModel): + membershipIdentifier: str + +class GetPrivacyBudgetTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + privacyBudgetTemplateIdentifier: str + +class GetProtectedQueryInputRequestTypeDef(BaseModel): + membershipIdentifier: str + protectedQueryIdentifier: str + +class GetSchemaAnalysisRuleInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + name: str + type: AnalysisRuleTypeType + +class GetSchemaInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + name: str + +class GlueTableReferenceTypeDef(BaseModel): + tableName: str + databaseName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAnalysisTemplatesInputRequestTypeDef(BaseModel): + membershipIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListCollaborationAnalysisTemplatesInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListCollaborationConfiguredAudienceModelAssociationsInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListCollaborationPrivacyBudgetTemplatesInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListCollaborationPrivacyBudgetsInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListCollaborationsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + memberStatus: Optional[FilterableMemberStatusType] = None + +class ListConfiguredAudienceModelAssociationsInputRequestTypeDef(BaseModel): + membershipIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListConfiguredTableAssociationsInputRequestTypeDef(BaseModel): + membershipIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListConfiguredTablesInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListMembersInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListMembershipsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + status: Optional[MembershipStatusType] = None + +class ListPrivacyBudgetTemplatesInputRequestTypeDef(BaseModel): + membershipIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PrivacyBudgetTemplateSummaryTypeDef(BaseModel): + id: str + arn: str + membershipId: str + membershipArn: str + collaborationId: str + collaborationArn: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + createTime: datetime + updateTime: datetime + +class ListPrivacyBudgetsInputRequestTypeDef(BaseModel): + membershipIdentifier: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListProtectedQueriesInputRequestTypeDef(BaseModel): + membershipIdentifier: str + status: Optional[ProtectedQueryStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ProtectedQuerySummaryTypeDef(BaseModel): + id: str + membershipId: str + membershipArn: str + createTime: datetime + status: ProtectedQueryStatusType + +class ListSchemasInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + schemaType: Optional[Literal["TABLE"]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SchemaSummaryTypeDef(BaseModel): + name: str + type: Literal["TABLE"] + creatorAccountId: str + createTime: datetime + updateTime: datetime + collaborationId: str + collaborationArn: str + analysisRuleTypes: List[AnalysisRuleTypeType] + analysisMethod: Optional[Literal["DIRECT_QUERY"]] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class MembershipQueryComputePaymentConfigTypeDef(BaseModel): + isResponsible: bool + +class ProtectedQueryS3OutputConfigurationTypeDef(BaseModel): + resultFormat: ResultFormatType + bucket: str + keyPrefix: Optional[str] = None + +class QueryComputePaymentConfigTypeDef(BaseModel): + isResponsible: bool + +class ProtectedQueryErrorTypeDef(BaseModel): + message: str + code: str + +class ProtectedQueryS3OutputTypeDef(BaseModel): + location: str + +class ProtectedQuerySingleMemberOutputTypeDef(BaseModel): + accountId: str + +class ProtectedQuerySQLParametersTypeDef(BaseModel): + queryString: Optional[str] = None + analysisTemplateArn: Optional[str] = None + parameters: Optional[Dict[str, str]] = None + +class ProtectedQueryStatisticsTypeDef(BaseModel): + totalDurationInMillis: Optional[int] = None + +class SchemaStatusReasonTypeDef(BaseModel): + code: SchemaStatusReasonCodeType + message: str + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAnalysisTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + analysisTemplateIdentifier: str + description: Optional[str] = None + +class UpdateCollaborationInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + name: Optional[str] = None + description: Optional[str] = None + +class UpdateConfiguredAudienceModelAssociationInputRequestTypeDef(BaseModel): + configuredAudienceModelAssociationIdentifier: str + membershipIdentifier: str + description: Optional[str] = None + name: Optional[str] = None + +class UpdateConfiguredTableAssociationInputRequestTypeDef(BaseModel): + configuredTableAssociationIdentifier: str + membershipIdentifier: str + description: Optional[str] = None + roleArn: Optional[str] = None + +class UpdateConfiguredTableInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + name: Optional[str] = None + description: Optional[str] = None + +class UpdateProtectedQueryInputRequestTypeDef(BaseModel): + membershipIdentifier: str + protectedQueryIdentifier: str + targetStatus: Literal["CANCELLED"] + +class AnalysisRuleAggregationTypeDef(BaseModel): + aggregateColumns: List[AggregateColumnTypeDef] + joinColumns: List[str] + dimensionColumns: List[str] + scalarFunctions: List[ScalarFunctionsType] + outputConstraints: List[AggregationConstraintTypeDef] + joinRequired: Optional[Literal["QUERY_RUNNER"]] = None + allowedJoinOperators: Optional[List[JoinOperatorType]] = None + +class CreateAnalysisTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + name: str + format: Literal["SQL"] + source: AnalysisSourceTypeDef + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + analysisParameters: Optional[Sequence[AnalysisParameterTypeDef]] = None + +class AnalysisTemplateValidationStatusDetailTypeDef(BaseModel): + type: Literal["DIFFERENTIAL_PRIVACY"] + status: AnalysisTemplateValidationStatusType + reasons: Optional[List[AnalysisTemplateValidationStatusReasonTypeDef]] = None + +class ListAnalysisTemplatesOutputTypeDef(BaseModel): + nextToken: str + analysisTemplateSummaries: List[AnalysisTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetSchemaAnalysisRuleInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + schemaAnalysisRuleRequests: Sequence[SchemaAnalysisRuleRequestTypeDef] + +class ListCollaborationAnalysisTemplatesOutputTypeDef(BaseModel): + nextToken: str + collaborationAnalysisTemplateSummaries: List[CollaborationAnalysisTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCollaborationConfiguredAudienceModelAssociationsOutputTypeDef(BaseModel): + collaborationConfiguredAudienceModelAssociationSummaries: List[ CollaborationConfiguredAudienceModelAssociationSummaryTypeDef ] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCollaborationConfiguredAudienceModelAssociationOutputTypeDef(BaseModel): + collaborationConfiguredAudienceModelAssociation: CollaborationConfiguredAudienceModelAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCollaborationPrivacyBudgetTemplatesOutputTypeDef(BaseModel): + nextToken: str + collaborationPrivacyBudgetTemplateSummaries: List[ CollaborationPrivacyBudgetTemplateSummaryTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCollaborationsOutputTypeDef(BaseModel): + nextToken: str + collaborationList: List[CollaborationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CollaborationTypeDef(BaseModel): + id: str + arn: str + name: str + creatorAccountId: str + creatorDisplayName: str + createTime: datetime + updateTime: datetime + memberStatus: MemberStatusType + queryLogStatus: CollaborationQueryLogStatusType + description: Optional[str] = None + membershipId: Optional[str] = None + membershipArn: Optional[str] = None + dataEncryptionMetadata: Optional[DataEncryptionMetadataTypeDef] = None + +class ListConfiguredAudienceModelAssociationsOutputTypeDef(BaseModel): + configuredAudienceModelAssociationSummaries: List[ ConfiguredAudienceModelAssociationSummaryTypeDef ] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfiguredAudienceModelAssociationOutputTypeDef(BaseModel): + configuredAudienceModelAssociation: ConfiguredAudienceModelAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfiguredAudienceModelAssociationOutputTypeDef(BaseModel): + configuredAudienceModelAssociation: ConfiguredAudienceModelAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfiguredAudienceModelAssociationOutputTypeDef(BaseModel): + configuredAudienceModelAssociation: ConfiguredAudienceModelAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfiguredTableAssociationsOutputTypeDef(BaseModel): + configuredTableAssociationSummaries: List[ConfiguredTableAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfiguredTableAssociationOutputTypeDef(BaseModel): + configuredTableAssociation: ConfiguredTableAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfiguredTableAssociationOutputTypeDef(BaseModel): + configuredTableAssociation: ConfiguredTableAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfiguredTableAssociationOutputTypeDef(BaseModel): + configuredTableAssociation: ConfiguredTableAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfiguredTablesOutputTypeDef(BaseModel): + configuredTableSummaries: List[ConfiguredTableSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DifferentialPrivacyConfigurationTypeDef(BaseModel): + columns: List[DifferentialPrivacyColumnTypeDef] + +class DifferentialPrivacyParametersTypeDef(BaseModel): + sensitivityParameters: List[DifferentialPrivacySensitivityParametersTypeDef] + +class DifferentialPrivacyPrivacyImpactTypeDef(BaseModel): + aggregations: List[DifferentialPrivacyPreviewAggregationTypeDef] + +class PreviewPrivacyImpactParametersInputTypeDef(BaseModel): + differentialPrivacy: Optional[DifferentialPrivacyPreviewParametersInputTypeDef] = None + +class DifferentialPrivacyPrivacyBudgetTypeDef(BaseModel): + aggregations: List[DifferentialPrivacyPrivacyBudgetAggregationTypeDef] + epsilon: int + +class PrivacyBudgetTemplateParametersInputTypeDef(BaseModel): + differentialPrivacy: Optional[DifferentialPrivacyTemplateParametersInputTypeDef] = None + +class PrivacyBudgetTemplateParametersOutputTypeDef(BaseModel): + differentialPrivacy: Optional[DifferentialPrivacyTemplateParametersOutputTypeDef] = None + +class PrivacyBudgetTemplateUpdateParametersTypeDef(BaseModel): + differentialPrivacy: Optional[DifferentialPrivacyTemplateUpdateParametersTypeDef] = None + +class TableReferenceTypeDef(BaseModel): + glue: Optional[GlueTableReferenceTypeDef] = None + +class ListAnalysisTemplatesInputListAnalysisTemplatesPaginateTypeDef(BaseModel): + membershipIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCollaborationConfiguredAudienceModelAssociationsInputListCollaborationConfiguredAudienceModelAssociationsPaginateTypeDef(BaseModel): + collaborationIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCollaborationPrivacyBudgetTemplatesInputListCollaborationPrivacyBudgetTemplatesPaginateTypeDef(BaseModel): + collaborationIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCollaborationPrivacyBudgetsInputListCollaborationPrivacyBudgetsPaginateTypeDef(BaseModel): + collaborationIdentifier: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCollaborationsInputListCollaborationsPaginateTypeDef(BaseModel): + memberStatus: Optional[FilterableMemberStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfiguredAudienceModelAssociationsInputListConfiguredAudienceModelAssociationsPaginateTypeDef(BaseModel): + membershipIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfiguredTableAssociationsInputListConfiguredTableAssociationsPaginateTypeDef(BaseModel): + membershipIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfiguredTablesInputListConfiguredTablesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembersInputListMembersPaginateTypeDef(BaseModel): + collaborationIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembershipsInputListMembershipsPaginateTypeDef(BaseModel): + status: Optional[MembershipStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrivacyBudgetTemplatesInputListPrivacyBudgetTemplatesPaginateTypeDef(BaseModel): + membershipIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrivacyBudgetsInputListPrivacyBudgetsPaginateTypeDef(BaseModel): + membershipIdentifier: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProtectedQueriesInputListProtectedQueriesPaginateTypeDef(BaseModel): + membershipIdentifier: str + status: Optional[ProtectedQueryStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemasInputListSchemasPaginateTypeDef(BaseModel): + collaborationIdentifier: str + schemaType: Optional[Literal["TABLE"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrivacyBudgetTemplatesOutputTypeDef(BaseModel): + nextToken: str + privacyBudgetTemplateSummaries: List[PrivacyBudgetTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListProtectedQueriesOutputTypeDef(BaseModel): + nextToken: str + protectedQueries: List[ProtectedQuerySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchemasOutputTypeDef(BaseModel): + schemaSummaries: List[SchemaSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MembershipPaymentConfigurationTypeDef(BaseModel): + queryCompute: MembershipQueryComputePaymentConfigTypeDef + +class MembershipProtectedQueryOutputConfigurationTypeDef(BaseModel): + s3: Optional[ProtectedQueryS3OutputConfigurationTypeDef] = None + +class ProtectedQueryOutputConfigurationTypeDef(BaseModel): + s3: Optional[ProtectedQueryS3OutputConfigurationTypeDef] = None + +class PaymentConfigurationTypeDef(BaseModel): + queryCompute: QueryComputePaymentConfigTypeDef + +class ProtectedQueryOutputTypeDef(BaseModel): + s3: Optional[ProtectedQueryS3OutputTypeDef] = None + memberList: Optional[List[ProtectedQuerySingleMemberOutputTypeDef]] = None + +class SchemaStatusDetailTypeDef(BaseModel): + status: SchemaStatusType + reasons: Optional[List[SchemaStatusReasonTypeDef]] = None + analysisRuleType: Optional[AnalysisRuleTypeType] = None + configurations: Optional[List[Literal["DIFFERENTIAL_PRIVACY"]]] = None + +class AnalysisTemplateTypeDef(BaseModel): + id: str + arn: str + collaborationId: str + collaborationArn: str + membershipId: str + membershipArn: str + name: str + createTime: datetime + updateTime: datetime + schema: AnalysisSchemaTypeDef + format: Literal["SQL"] + source: AnalysisSourceTypeDef + description: Optional[str] = None + analysisParameters: Optional[List[AnalysisParameterTypeDef]] = None + validations: Optional[List[AnalysisTemplateValidationStatusDetailTypeDef]] = None + +class CollaborationAnalysisTemplateTypeDef(BaseModel): + id: str + arn: str + collaborationId: str + collaborationArn: str + creatorAccountId: str + name: str + createTime: datetime + updateTime: datetime + schema: AnalysisSchemaTypeDef + format: Literal["SQL"] + source: AnalysisSourceTypeDef + description: Optional[str] = None + analysisParameters: Optional[List[AnalysisParameterTypeDef]] = None + validations: Optional[List[AnalysisTemplateValidationStatusDetailTypeDef]] = None + +class CreateCollaborationOutputTypeDef(BaseModel): + collaboration: CollaborationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCollaborationOutputTypeDef(BaseModel): + collaboration: CollaborationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCollaborationOutputTypeDef(BaseModel): + collaboration: CollaborationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisRuleCustomTypeDef(BaseModel): + allowedAnalyses: List[str] + allowedAnalysisProviders: Optional[List[str]] = None + differentialPrivacy: Optional[DifferentialPrivacyConfigurationTypeDef] = None + +class PrivacyImpactTypeDef(BaseModel): + differentialPrivacy: Optional[DifferentialPrivacyPrivacyImpactTypeDef] = None + +class PreviewPrivacyImpactInputRequestTypeDef(BaseModel): + membershipIdentifier: str + parameters: PreviewPrivacyImpactParametersInputTypeDef + +class PrivacyBudgetTypeDef(BaseModel): + differentialPrivacy: Optional[DifferentialPrivacyPrivacyBudgetTypeDef] = None + +class CreatePrivacyBudgetTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + autoRefresh: PrivacyBudgetTemplateAutoRefreshType + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + parameters: PrivacyBudgetTemplateParametersInputTypeDef + tags: Optional[Mapping[str, str]] = None + +class CollaborationPrivacyBudgetTemplateTypeDef(BaseModel): + id: str + arn: str + collaborationId: str + collaborationArn: str + creatorAccountId: str + createTime: datetime + updateTime: datetime + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + autoRefresh: PrivacyBudgetTemplateAutoRefreshType + parameters: PrivacyBudgetTemplateParametersOutputTypeDef + +class PrivacyBudgetTemplateTypeDef(BaseModel): + id: str + arn: str + membershipId: str + membershipArn: str + collaborationId: str + collaborationArn: str + createTime: datetime + updateTime: datetime + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + autoRefresh: PrivacyBudgetTemplateAutoRefreshType + parameters: PrivacyBudgetTemplateParametersOutputTypeDef + +class UpdatePrivacyBudgetTemplateInputRequestTypeDef(BaseModel): + membershipIdentifier: str + privacyBudgetTemplateIdentifier: str + privacyBudgetType: Literal["DIFFERENTIAL_PRIVACY"] + parameters: Optional[PrivacyBudgetTemplateUpdateParametersTypeDef] = None + +class ConfiguredTableTypeDef(BaseModel): + id: str + arn: str + name: str + tableReference: TableReferenceTypeDef + createTime: datetime + updateTime: datetime + analysisRuleTypes: List[ConfiguredTableAnalysisRuleTypeType] + analysisMethod: Literal["DIRECT_QUERY"] + allowedColumns: List[str] + description: Optional[str] = None + +class CreateConfiguredTableInputRequestTypeDef(BaseModel): + name: str + tableReference: TableReferenceTypeDef + allowedColumns: Sequence[str] + analysisMethod: Literal["DIRECT_QUERY"] + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class MembershipSummaryTypeDef(BaseModel): + id: str + arn: str + collaborationArn: str + collaborationId: str + collaborationCreatorAccountId: str + collaborationCreatorDisplayName: str + collaborationName: str + createTime: datetime + updateTime: datetime + status: MembershipStatusType + memberAbilities: List[MemberAbilityType] + paymentConfiguration: MembershipPaymentConfigurationTypeDef + +class MembershipProtectedQueryResultConfigurationTypeDef(BaseModel): + outputConfiguration: MembershipProtectedQueryOutputConfigurationTypeDef + roleArn: Optional[str] = None + +class ProtectedQueryResultConfigurationTypeDef(BaseModel): + outputConfiguration: ProtectedQueryOutputConfigurationTypeDef + +class MemberSpecificationTypeDef(BaseModel): + accountId: str + memberAbilities: Sequence[MemberAbilityType] + displayName: str + paymentConfiguration: Optional[PaymentConfigurationTypeDef] = None + +class MemberSummaryTypeDef(BaseModel): + accountId: str + status: MemberStatusType + displayName: str + abilities: List[MemberAbilityType] + createTime: datetime + updateTime: datetime + paymentConfiguration: PaymentConfigurationTypeDef + membershipId: Optional[str] = None + membershipArn: Optional[str] = None + +class ProtectedQueryResultTypeDef(BaseModel): + output: ProtectedQueryOutputTypeDef + +class SchemaTypeDef(BaseModel): + columns: List[ColumnTypeDef] + partitionKeys: List[ColumnTypeDef] + analysisRuleTypes: List[AnalysisRuleTypeType] + creatorAccountId: str + name: str + collaborationId: str + collaborationArn: str + description: str + createTime: datetime + updateTime: datetime + type: Literal["TABLE"] + schemaStatusDetails: List[SchemaStatusDetailTypeDef] + analysisMethod: Optional[Literal["DIRECT_QUERY"]] = None + +class CreateAnalysisTemplateOutputTypeDef(BaseModel): + analysisTemplate: AnalysisTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnalysisTemplateOutputTypeDef(BaseModel): + analysisTemplate: AnalysisTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnalysisTemplateOutputTypeDef(BaseModel): + analysisTemplate: AnalysisTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetCollaborationAnalysisTemplateOutputTypeDef(BaseModel): + collaborationAnalysisTemplates: List[CollaborationAnalysisTemplateTypeDef] + errors: List[BatchGetCollaborationAnalysisTemplateErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCollaborationAnalysisTemplateOutputTypeDef(BaseModel): + collaborationAnalysisTemplate: CollaborationAnalysisTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisRulePolicyV1TypeDef(BaseModel): + list: Optional[AnalysisRuleListTypeDef] = None + aggregation: Optional[AnalysisRuleAggregationTypeDef] = None + custom: Optional[AnalysisRuleCustomTypeDef] = None + +class ConfiguredTableAnalysisRulePolicyV1TypeDef(BaseModel): + list: Optional[AnalysisRuleListTypeDef] = None + aggregation: Optional[AnalysisRuleAggregationTypeDef] = None + custom: Optional[AnalysisRuleCustomTypeDef] = None + +class PreviewPrivacyImpactOutputTypeDef(BaseModel): + privacyImpact: PrivacyImpactTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CollaborationPrivacyBudgetSummaryTypeDef(BaseModel): + id: str + privacyBudgetTemplateId: str + privacyBudgetTemplateArn: str + collaborationId: str + collaborationArn: str + creatorAccountId: str + type: Literal["DIFFERENTIAL_PRIVACY"] + createTime: datetime + updateTime: datetime + budget: PrivacyBudgetTypeDef + +class PrivacyBudgetSummaryTypeDef(BaseModel): + id: str + privacyBudgetTemplateId: str + privacyBudgetTemplateArn: str + membershipId: str + membershipArn: str + collaborationId: str + collaborationArn: str + type: Literal["DIFFERENTIAL_PRIVACY"] + createTime: datetime + updateTime: datetime + budget: PrivacyBudgetTypeDef + +class GetCollaborationPrivacyBudgetTemplateOutputTypeDef(BaseModel): + collaborationPrivacyBudgetTemplate: CollaborationPrivacyBudgetTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePrivacyBudgetTemplateOutputTypeDef(BaseModel): + privacyBudgetTemplate: PrivacyBudgetTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPrivacyBudgetTemplateOutputTypeDef(BaseModel): + privacyBudgetTemplate: PrivacyBudgetTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePrivacyBudgetTemplateOutputTypeDef(BaseModel): + privacyBudgetTemplate: PrivacyBudgetTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfiguredTableOutputTypeDef(BaseModel): + configuredTable: ConfiguredTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfiguredTableOutputTypeDef(BaseModel): + configuredTable: ConfiguredTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfiguredTableOutputTypeDef(BaseModel): + configuredTable: ConfiguredTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMembershipsOutputTypeDef(BaseModel): + nextToken: str + membershipSummaries: List[MembershipSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMembershipInputRequestTypeDef(BaseModel): + collaborationIdentifier: str + queryLogStatus: MembershipQueryLogStatusType + tags: Optional[Mapping[str, str]] = None + defaultResultConfiguration: Optional[ MembershipProtectedQueryResultConfigurationTypeDef ] = None + paymentConfiguration: Optional[MembershipPaymentConfigurationTypeDef] = None + +class MembershipTypeDef(BaseModel): + id: str + arn: str + collaborationArn: str + collaborationId: str + collaborationCreatorAccountId: str + collaborationCreatorDisplayName: str + collaborationName: str + createTime: datetime + updateTime: datetime + status: MembershipStatusType + memberAbilities: List[MemberAbilityType] + queryLogStatus: MembershipQueryLogStatusType + paymentConfiguration: MembershipPaymentConfigurationTypeDef + defaultResultConfiguration: Optional[ MembershipProtectedQueryResultConfigurationTypeDef ] = None + +class UpdateMembershipInputRequestTypeDef(BaseModel): + membershipIdentifier: str + queryLogStatus: Optional[MembershipQueryLogStatusType] = None + defaultResultConfiguration: Optional[ MembershipProtectedQueryResultConfigurationTypeDef ] = None + +class StartProtectedQueryInputRequestTypeDef(BaseModel): + type: Literal["SQL"] + membershipIdentifier: str + sqlParameters: ProtectedQuerySQLParametersTypeDef + resultConfiguration: Optional[ProtectedQueryResultConfigurationTypeDef] = None + +class CreateCollaborationInputRequestTypeDef(BaseModel): + members: Sequence[MemberSpecificationTypeDef] + name: str + description: str + creatorMemberAbilities: Sequence[MemberAbilityType] + creatorDisplayName: str + queryLogStatus: CollaborationQueryLogStatusType + dataEncryptionMetadata: Optional[DataEncryptionMetadataTypeDef] = None + tags: Optional[Mapping[str, str]] = None + creatorPaymentConfiguration: Optional[PaymentConfigurationTypeDef] = None + +class ListMembersOutputTypeDef(BaseModel): + nextToken: str + memberSummaries: List[MemberSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ProtectedQueryTypeDef(BaseModel): + id: str + membershipId: str + membershipArn: str + createTime: datetime + status: ProtectedQueryStatusType + sqlParameters: Optional[ProtectedQuerySQLParametersTypeDef] = None + resultConfiguration: Optional[ProtectedQueryResultConfigurationTypeDef] = None + statistics: Optional[ProtectedQueryStatisticsTypeDef] = None + result: Optional[ProtectedQueryResultTypeDef] = None + error: Optional[ProtectedQueryErrorTypeDef] = None + differentialPrivacy: Optional[DifferentialPrivacyParametersTypeDef] = None + +class BatchGetSchemaOutputTypeDef(BaseModel): + schemas: List[SchemaTypeDef] + errors: List[BatchGetSchemaErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaOutputTypeDef(BaseModel): + schema: SchemaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisRulePolicyTypeDef(BaseModel): + v1: Optional[AnalysisRulePolicyV1TypeDef] = None + +class ConfiguredTableAnalysisRulePolicyTypeDef(BaseModel): + v1: Optional[ConfiguredTableAnalysisRulePolicyV1TypeDef] = None + +class ListCollaborationPrivacyBudgetsOutputTypeDef(BaseModel): + collaborationPrivacyBudgetSummaries: List[CollaborationPrivacyBudgetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPrivacyBudgetsOutputTypeDef(BaseModel): + privacyBudgetSummaries: List[PrivacyBudgetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMembershipOutputTypeDef(BaseModel): + membership: MembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMembershipOutputTypeDef(BaseModel): + membership: MembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMembershipOutputTypeDef(BaseModel): + membership: MembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProtectedQueryOutputTypeDef(BaseModel): + protectedQuery: ProtectedQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartProtectedQueryOutputTypeDef(BaseModel): + protectedQuery: ProtectedQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProtectedQueryOutputTypeDef(BaseModel): + protectedQuery: ProtectedQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisRuleTypeDef(BaseModel): + collaborationId: str + type: AnalysisRuleTypeType + name: str + createTime: datetime + updateTime: datetime + policy: AnalysisRulePolicyTypeDef + +class ConfiguredTableAnalysisRuleTypeDef(BaseModel): + configuredTableId: str + configuredTableArn: str + policy: ConfiguredTableAnalysisRulePolicyTypeDef + type: ConfiguredTableAnalysisRuleTypeType + createTime: datetime + updateTime: datetime + +class CreateConfiguredTableAnalysisRuleInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + analysisRuleType: ConfiguredTableAnalysisRuleTypeType + analysisRulePolicy: ConfiguredTableAnalysisRulePolicyTypeDef + +class UpdateConfiguredTableAnalysisRuleInputRequestTypeDef(BaseModel): + configuredTableIdentifier: str + analysisRuleType: ConfiguredTableAnalysisRuleTypeType + analysisRulePolicy: ConfiguredTableAnalysisRulePolicyTypeDef + +class BatchGetSchemaAnalysisRuleOutputTypeDef(BaseModel): + analysisRules: List[AnalysisRuleTypeDef] + errors: List[BatchGetSchemaAnalysisRuleErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaAnalysisRuleOutputTypeDef(BaseModel): + analysisRule: AnalysisRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfiguredTableAnalysisRuleOutputTypeDef(BaseModel): + analysisRule: ConfiguredTableAnalysisRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfiguredTableAnalysisRuleOutputTypeDef(BaseModel): + analysisRule: ConfiguredTableAnalysisRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfiguredTableAnalysisRuleOutputTypeDef(BaseModel): + analysisRule: ConfiguredTableAnalysisRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cleanrooms_constants.py b/aws_resource_validator/pydantic_models/cleanrooms_constants.py new file mode 100644 index 00000000..b59a5428 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cleanrooms_constants.py @@ -0,0 +1,506 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregateFunctionNameType = Literal["AVG", "COUNT", "COUNT_DISTINCT", "SUM", "SUM_DISTINCT"] +AggregationTypeType = Literal["COUNT_DISTINCT"] +AnalysisFormatType = Literal["SQL"] +AnalysisMethodType = Literal["DIRECT_QUERY"] +AnalysisRuleTypeType = Literal["AGGREGATION", "CUSTOM", "LIST"] +AnalysisTemplateValidationStatusType = Literal["INVALID", "UNABLE_TO_VALIDATE", "VALID"] +AnalysisTemplateValidationTypeType = Literal["DIFFERENTIAL_PRIVACY"] +CollaborationQueryLogStatusType = Literal["DISABLED", "ENABLED"] +ConfiguredTableAnalysisRuleTypeType = Literal["AGGREGATION", "CUSTOM", "LIST"] +DifferentialPrivacyAggregationTypeType = Literal["AVG", "COUNT", "COUNT_DISTINCT", "STDDEV", "SUM"] +FilterableMemberStatusType = Literal["ACTIVE", "INVITED"] +JoinOperatorType = Literal["AND", "OR"] +JoinRequiredOptionType = Literal["QUERY_RUNNER"] +ListAnalysisTemplatesPaginatorName = Literal["list_analysis_templates"] +ListCollaborationAnalysisTemplatesPaginatorName = Literal["list_collaboration_analysis_templates"] +ListCollaborationConfiguredAudienceModelAssociationsPaginatorName = Literal["list_collaboration_configured_audience_model_associations"] +ListCollaborationPrivacyBudgetTemplatesPaginatorName = Literal["list_collaboration_privacy_budget_templates"] +ListCollaborationPrivacyBudgetsPaginatorName = Literal["list_collaboration_privacy_budgets"] +ListCollaborationsPaginatorName = Literal["list_collaborations"] +ListConfiguredAudienceModelAssociationsPaginatorName = Literal["list_configured_audience_model_associations"] +ListConfiguredTableAssociationsPaginatorName = Literal["list_configured_table_associations"] +ListConfiguredTablesPaginatorName = Literal["list_configured_tables"] +ListMembersPaginatorName = Literal["list_members"] +ListMembershipsPaginatorName = Literal["list_memberships"] +ListPrivacyBudgetTemplatesPaginatorName = Literal["list_privacy_budget_templates"] +ListPrivacyBudgetsPaginatorName = Literal["list_privacy_budgets"] +ListProtectedQueriesPaginatorName = Literal["list_protected_queries"] +ListSchemasPaginatorName = Literal["list_schemas"] +MemberAbilityType = Literal["CAN_QUERY", "CAN_RECEIVE_RESULTS"] +MemberStatusType = Literal["ACTIVE", "INVITED", "LEFT", "REMOVED"] +MembershipQueryLogStatusType = Literal["DISABLED", "ENABLED"] +MembershipStatusType = Literal["ACTIVE", "COLLABORATION_DELETED", "REMOVED"] +ParameterTypeType = Literal["BIGINT", + "BOOLEAN", + "CHAR", + "DATE", + "DECIMAL", + "DOUBLE_PRECISION", + "INTEGER", + "REAL", + "SMALLINT", + "TIME", + "TIMESTAMP", + "TIMESTAMPTZ", + "TIMETZ", + "VARBYTE", + "VARCHAR",] +PrivacyBudgetTemplateAutoRefreshType = Literal["CALENDAR_MONTH", "NONE"] +PrivacyBudgetTypeType = Literal["DIFFERENTIAL_PRIVACY"] +ProtectedQueryStatusType = Literal["CANCELLED", "CANCELLING", "FAILED", "STARTED", "SUBMITTED", "SUCCESS", "TIMED_OUT"] +ProtectedQueryTypeType = Literal["SQL"] +ResultFormatType = Literal["CSV", "PARQUET"] +ScalarFunctionsType = Literal["ABS", + "CAST", + "CEILING", + "COALESCE", + "CONVERT", + "CURRENT_DATE", + "DATEADD", + "EXTRACT", + "FLOOR", + "GETDATE", + "LN", + "LOG", + "LOWER", + "ROUND", + "RTRIM", + "SQRT", + "SUBSTRING", + "TO_CHAR", + "TO_DATE", + "TO_NUMBER", + "TO_TIMESTAMP", + "TRIM", + "TRUNC", + "UPPER",] +SchemaConfigurationType = Literal["DIFFERENTIAL_PRIVACY"] +SchemaStatusReasonCodeType = Literal["ANALYSIS_PROVIDERS_NOT_CONFIGURED", + "ANALYSIS_RULE_MISSING", + "ANALYSIS_TEMPLATES_NOT_CONFIGURED", + "DIFFERENTIAL_PRIVACY_POLICY_NOT_CONFIGURED",] +SchemaStatusType = Literal["NOT_READY", "READY"] +SchemaTypeType = Literal["TABLE"] +TargetProtectedQueryStatusType = Literal["CANCELLED"] +CleanRoomsServiceServiceName = Literal["cleanrooms"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_analysis_templates", + "list_collaboration_analysis_templates", + "list_collaboration_configured_audience_model_associations", + "list_collaboration_privacy_budget_templates", + "list_collaboration_privacy_budgets", + "list_collaborations", + "list_configured_audience_model_associations", + "list_configured_table_associations", + "list_configured_tables", + "list_members", + "list_memberships", + "list_privacy_budget_templates", + "list_privacy_budgets", + "list_protected_queries", + "list_schemas",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cleanroomsml_classes.py b/aws_resource_validator/pydantic_models/cleanroomsml_classes.py new file mode 100644 index 00000000..75fedde2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cleanroomsml_classes.py @@ -0,0 +1,390 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cleanroomsml_constants import * + +class S3ConfigMapTypeDef(BaseModel): + s3Uri: str + +class AudienceSizeTypeDef(BaseModel): + type: AudienceSizeTypeType + value: int + +class StatusDetailsTypeDef(BaseModel): + message: Optional[str] = None + statusCode: Optional[str] = None + +class AudienceGenerationJobSummaryTypeDef(BaseModel): + audienceGenerationJobArn: str + configuredAudienceModelArn: str + createTime: datetime + name: str + status: AudienceGenerationJobStatusType + updateTime: datetime + collaborationId: Optional[str] = None + description: Optional[str] = None + startedBy: Optional[str] = None + +class AudienceModelSummaryTypeDef(BaseModel): + audienceModelArn: str + createTime: datetime + name: str + status: AudienceModelStatusType + trainingDatasetArn: str + updateTime: datetime + description: Optional[str] = None + +class AudienceSizeConfigTypeDef(BaseModel): + audienceSizeBins: Sequence[int] + audienceSizeType: AudienceSizeTypeType + +class ColumnSchemaTypeDef(BaseModel): + columnName: str + columnTypes: Sequence[ColumnTypeType] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class GlueDataSourceTypeDef(BaseModel): + databaseName: str + tableName: str + catalogId: Optional[str] = None + +class DeleteAudienceGenerationJobRequestRequestTypeDef(BaseModel): + audienceGenerationJobArn: str + +class DeleteAudienceModelRequestRequestTypeDef(BaseModel): + audienceModelArn: str + +class DeleteConfiguredAudienceModelPolicyRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + +class DeleteConfiguredAudienceModelRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + +class DeleteTrainingDatasetRequestRequestTypeDef(BaseModel): + trainingDatasetArn: str + +class GetAudienceGenerationJobRequestRequestTypeDef(BaseModel): + audienceGenerationJobArn: str + +class GetAudienceModelRequestRequestTypeDef(BaseModel): + audienceModelArn: str + +class GetConfiguredAudienceModelPolicyRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + +class GetConfiguredAudienceModelRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + +class GetTrainingDatasetRequestRequestTypeDef(BaseModel): + trainingDatasetArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAudienceExportJobsRequestRequestTypeDef(BaseModel): + audienceGenerationJobArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAudienceGenerationJobsRequestRequestTypeDef(BaseModel): + collaborationId: Optional[str] = None + configuredAudienceModelArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAudienceModelsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListConfiguredAudienceModelsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTrainingDatasetsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TrainingDatasetSummaryTypeDef(BaseModel): + createTime: datetime + name: str + status: Literal["ACTIVE"] + trainingDatasetArn: str + updateTime: datetime + description: Optional[str] = None + +class PutConfiguredAudienceModelPolicyRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + configuredAudienceModelPolicy: str + policyExistenceCondition: Optional[PolicyExistenceConditionType] = None + previousPolicyHash: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AudienceDestinationTypeDef(BaseModel): + s3Destination: S3ConfigMapTypeDef + +class AudienceGenerationJobDataSourceTypeDef(BaseModel): + dataSource: S3ConfigMapTypeDef + roleArn: str + +class RelevanceMetricTypeDef(BaseModel): + audienceSize: AudienceSizeTypeDef + score: Optional[float] = None + +class StartAudienceExportJobRequestRequestTypeDef(BaseModel): + audienceGenerationJobArn: str + audienceSize: AudienceSizeTypeDef + name: str + description: Optional[str] = None + +class AudienceExportJobSummaryTypeDef(BaseModel): + audienceGenerationJobArn: str + audienceSize: AudienceSizeTypeDef + createTime: datetime + name: str + status: AudienceExportJobStatusType + updateTime: datetime + description: Optional[str] = None + outputLocation: Optional[str] = None + statusDetails: Optional[StatusDetailsTypeDef] = None + +class CreateAudienceModelRequestRequestTypeDef(BaseModel): + name: str + trainingDatasetArn: str + description: Optional[str] = None + kmsKeyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + trainingDataEndTime: Optional[TimestampTypeDef] = None + trainingDataStartTime: Optional[TimestampTypeDef] = None + +class CreateAudienceModelResponseTypeDef(BaseModel): + audienceModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfiguredAudienceModelResponseTypeDef(BaseModel): + configuredAudienceModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrainingDatasetResponseTypeDef(BaseModel): + trainingDatasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAudienceModelResponseTypeDef(BaseModel): + audienceModelArn: str + createTime: datetime + description: str + kmsKeyArn: str + name: str + status: AudienceModelStatusType + statusDetails: StatusDetailsTypeDef + tags: Dict[str, str] + trainingDataEndTime: datetime + trainingDataStartTime: datetime + trainingDatasetArn: str + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfiguredAudienceModelPolicyResponseTypeDef(BaseModel): + configuredAudienceModelArn: str + configuredAudienceModelPolicy: str + policyHash: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAudienceGenerationJobsResponseTypeDef(BaseModel): + audienceGenerationJobs: List[AudienceGenerationJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAudienceModelsResponseTypeDef(BaseModel): + audienceModels: List[AudienceModelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutConfiguredAudienceModelPolicyResponseTypeDef(BaseModel): + configuredAudienceModelPolicy: str + policyHash: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAudienceGenerationJobResponseTypeDef(BaseModel): + audienceGenerationJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfiguredAudienceModelResponseTypeDef(BaseModel): + configuredAudienceModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceTypeDef(BaseModel): + glueDataSource: GlueDataSourceTypeDef + +class ListAudienceExportJobsRequestListAudienceExportJobsPaginateTypeDef(BaseModel): + audienceGenerationJobArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAudienceGenerationJobsRequestListAudienceGenerationJobsPaginateTypeDef(BaseModel): + collaborationId: Optional[str] = None + configuredAudienceModelArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAudienceModelsRequestListAudienceModelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfiguredAudienceModelsRequestListConfiguredAudienceModelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrainingDatasetsRequestListTrainingDatasetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrainingDatasetsResponseTypeDef(BaseModel): + nextToken: str + trainingDatasets: List[TrainingDatasetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConfiguredAudienceModelOutputConfigTypeDef(BaseModel): + destination: AudienceDestinationTypeDef + roleArn: str + +class StartAudienceGenerationJobRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + name: str + seedAudience: AudienceGenerationJobDataSourceTypeDef + collaborationId: Optional[str] = None + description: Optional[str] = None + includeSeedInOutput: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + +class AudienceQualityMetricsTypeDef(BaseModel): + relevanceMetrics: List[RelevanceMetricTypeDef] + recallMetric: Optional[float] = None + +class ListAudienceExportJobsResponseTypeDef(BaseModel): + audienceExportJobs: List[AudienceExportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetInputConfigTypeDef(BaseModel): + dataSource: DataSourceTypeDef + schema: Sequence[ColumnSchemaTypeDef] + +class ConfiguredAudienceModelSummaryTypeDef(BaseModel): + audienceModelArn: str + configuredAudienceModelArn: str + createTime: datetime + name: str + outputConfig: ConfiguredAudienceModelOutputConfigTypeDef + status: Literal["ACTIVE"] + updateTime: datetime + description: Optional[str] = None + +class CreateConfiguredAudienceModelRequestRequestTypeDef(BaseModel): + audienceModelArn: str + name: str + outputConfig: ConfiguredAudienceModelOutputConfigTypeDef + sharedAudienceMetrics: Sequence[SharedAudienceMetricsType] + audienceSizeConfig: Optional[AudienceSizeConfigTypeDef] = None + childResourceTagOnCreatePolicy: Optional[TagOnCreatePolicyType] = None + description: Optional[str] = None + minMatchingSeedSize: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class GetConfiguredAudienceModelResponseTypeDef(BaseModel): + audienceModelArn: str + audienceSizeConfig: AudienceSizeConfigTypeDef + childResourceTagOnCreatePolicy: TagOnCreatePolicyType + configuredAudienceModelArn: str + createTime: datetime + description: str + minMatchingSeedSize: int + name: str + outputConfig: ConfiguredAudienceModelOutputConfigTypeDef + sharedAudienceMetrics: List[SharedAudienceMetricsType] + status: Literal["ACTIVE"] + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfiguredAudienceModelRequestRequestTypeDef(BaseModel): + configuredAudienceModelArn: str + audienceModelArn: Optional[str] = None + audienceSizeConfig: Optional[AudienceSizeConfigTypeDef] = None + description: Optional[str] = None + minMatchingSeedSize: Optional[int] = None + outputConfig: Optional[ConfiguredAudienceModelOutputConfigTypeDef] = None + sharedAudienceMetrics: Optional[Sequence[SharedAudienceMetricsType]] = None + +class GetAudienceGenerationJobResponseTypeDef(BaseModel): + audienceGenerationJobArn: str + collaborationId: str + configuredAudienceModelArn: str + createTime: datetime + description: str + includeSeedInOutput: bool + metrics: AudienceQualityMetricsTypeDef + name: str + seedAudience: AudienceGenerationJobDataSourceTypeDef + startedBy: str + status: AudienceGenerationJobStatusType + statusDetails: StatusDetailsTypeDef + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetTypeDef(BaseModel): + inputConfig: DatasetInputConfigTypeDef + type: Literal["INTERACTIONS"] + +class ListConfiguredAudienceModelsResponseTypeDef(BaseModel): + configuredAudienceModels: List[ConfiguredAudienceModelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrainingDatasetRequestRequestTypeDef(BaseModel): + name: str + roleArn: str + trainingData: Sequence[DatasetTypeDef] + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetTrainingDatasetResponseTypeDef(BaseModel): + createTime: datetime + description: str + name: str + roleArn: str + status: Literal["ACTIVE"] + tags: Dict[str, str] + trainingData: List[DatasetTypeDef] + trainingDatasetArn: str + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cleanroomsml_constants.py b/aws_resource_validator/pydantic_models/cleanroomsml_constants.py new file mode 100644 index 00000000..06a97703 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cleanroomsml_constants.py @@ -0,0 +1,429 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AudienceExportJobStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATE_IN_PROGRESS", "CREATE_PENDING"] +AudienceGenerationJobStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_PENDING", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_PENDING",] +AudienceModelStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_PENDING", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_PENDING",] +AudienceSizeTypeType = Literal["ABSOLUTE", "PERCENTAGE"] +ColumnTypeType = Literal["CATEGORICAL_FEATURE", "ITEM_ID", "NUMERICAL_FEATURE", "TIMESTAMP", "USER_ID"] +ConfiguredAudienceModelStatusType = Literal["ACTIVE"] +DatasetTypeType = Literal["INTERACTIONS"] +ListAudienceExportJobsPaginatorName = Literal["list_audience_export_jobs"] +ListAudienceGenerationJobsPaginatorName = Literal["list_audience_generation_jobs"] +ListAudienceModelsPaginatorName = Literal["list_audience_models"] +ListConfiguredAudienceModelsPaginatorName = Literal["list_configured_audience_models"] +ListTrainingDatasetsPaginatorName = Literal["list_training_datasets"] +PolicyExistenceConditionType = Literal["POLICY_MUST_EXIST", "POLICY_MUST_NOT_EXIST"] +SharedAudienceMetricsType = Literal["ALL", "NONE"] +TagOnCreatePolicyType = Literal["FROM_PARENT_RESOURCE", "NONE"] +TrainingDatasetStatusType = Literal["ACTIVE"] +CleanRoomsMLServiceName = Literal["cleanroomsml"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_audience_export_jobs", + "list_audience_generation_jobs", + "list_audience_models", + "list_configured_audience_models", + "list_training_datasets",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/cloud9_classes.py b/aws_resource_validator/pydantic_models/cloud9_classes.py new file mode 100644 index 00000000..17d9d492 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloud9_classes.py @@ -0,0 +1,160 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloud9_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateEnvironmentMembershipRequestRequestTypeDef(BaseModel): + environmentId: str + userArn: str + permissions: MemberPermissionsType + +class EnvironmentMemberTypeDef(BaseModel): + permissions: PermissionsType + userId: str + userArn: str + environmentId: str + lastAccess: Optional[datetime] = None + +class DeleteEnvironmentMembershipRequestRequestTypeDef(BaseModel): + environmentId: str + userArn: str + +class DeleteEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeEnvironmentMembershipsRequestRequestTypeDef(BaseModel): + userArn: Optional[str] = None + environmentId: Optional[str] = None + permissions: Optional[Sequence[PermissionsType]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeEnvironmentStatusRequestRequestTypeDef(BaseModel): + environmentId: str + +class DescribeEnvironmentsRequestRequestTypeDef(BaseModel): + environmentIds: Sequence[str] + +class EnvironmentLifecycleTypeDef(BaseModel): + status: Optional[EnvironmentLifecycleStatusType] = None + reason: Optional[str] = None + failureResource: Optional[str] = None + +class ListEnvironmentsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateEnvironmentMembershipRequestRequestTypeDef(BaseModel): + environmentId: str + userArn: str + permissions: MemberPermissionsType + +class UpdateEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + name: Optional[str] = None + description: Optional[str] = None + managedCredentialsAction: Optional[ManagedCredentialsActionType] = None + +class CreateEnvironmentEC2RequestRequestTypeDef(BaseModel): + name: str + instanceType: str + imageId: str + description: Optional[str] = None + clientRequestToken: Optional[str] = None + subnetId: Optional[str] = None + automaticStopTimeMinutes: Optional[int] = None + ownerArn: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + connectionType: Optional[ConnectionTypeType] = None + dryRun: Optional[bool] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateEnvironmentEC2ResultTypeDef(BaseModel): + environmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEnvironmentStatusResultTypeDef(BaseModel): + status: EnvironmentStatusType + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsResultTypeDef(BaseModel): + nextToken: str + environmentIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentMembershipResultTypeDef(BaseModel): + membership: EnvironmentMemberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEnvironmentMembershipsResultTypeDef(BaseModel): + memberships: List[EnvironmentMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentMembershipResultTypeDef(BaseModel): + membership: EnvironmentMemberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEnvironmentMembershipsRequestDescribeEnvironmentMembershipsPaginateTypeDef(BaseModel): + userArn: Optional[str] = None + environmentId: Optional[str] = None + permissions: Optional[Sequence[PermissionsType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsRequestListEnvironmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class EnvironmentTypeDef(BaseModel): + type: EnvironmentTypeType + arn: str + ownerArn: str + id: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + connectionType: Optional[ConnectionTypeType] = None + lifecycle: Optional[EnvironmentLifecycleTypeDef] = None + managedCredentialsStatus: Optional[ManagedCredentialsStatusType] = None + +class DescribeEnvironmentsResultTypeDef(BaseModel): + environments: List[EnvironmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloud9_constants.py b/aws_resource_validator/pydantic_models/cloud9_constants.py new file mode 100644 index 00000000..12750fa8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloud9_constants.py @@ -0,0 +1,434 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConnectionTypeType = Literal["CONNECT_SSH", "CONNECT_SSM"] +DescribeEnvironmentMembershipsPaginatorName = Literal["describe_environment_memberships"] +EnvironmentLifecycleStatusType = Literal["CREATED", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING"] +EnvironmentStatusType = Literal["connecting", "creating", "deleting", "error", "ready", "stopped", "stopping"] +EnvironmentTypeType = Literal["ec2", "ssh"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +ManagedCredentialsActionType = Literal["DISABLE", "ENABLE"] +ManagedCredentialsStatusType = Literal["DISABLED_BY_COLLABORATOR", + "DISABLED_BY_DEFAULT", + "DISABLED_BY_OWNER", + "ENABLED_BY_OWNER", + "ENABLED_ON_CREATE", + "FAILED_REMOVAL_BY_COLLABORATOR", + "FAILED_REMOVAL_BY_OWNER", + "PENDING_REMOVAL_BY_COLLABORATOR", + "PENDING_REMOVAL_BY_OWNER", + "PENDING_START_REMOVAL_BY_COLLABORATOR", + "PENDING_START_REMOVAL_BY_OWNER",] +MemberPermissionsType = Literal["read-only", "read-write"] +PermissionsType = Literal["owner", "read-only", "read-write"] +Cloud9ServiceName = Literal["cloud9"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_environment_memberships", "list_environments"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cloudcontrol_classes.py b/aws_resource_validator/pydantic_models/cloudcontrol_classes.py new file mode 100644 index 00000000..dcee77a3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudcontrol_classes.py @@ -0,0 +1,147 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudcontrol_constants import * + +class CancelResourceRequestInputRequestTypeDef(BaseModel): + RequestToken: str + +class ProgressEventTypeDef(BaseModel): + TypeName: Optional[str] = None + Identifier: Optional[str] = None + RequestToken: Optional[str] = None + Operation: Optional[OperationType] = None + OperationStatus: Optional[OperationStatusType] = None + EventTime: Optional[datetime] = None + ResourceModel: Optional[str] = None + StatusMessage: Optional[str] = None + ErrorCode: Optional[HandlerErrorCodeType] = None + RetryAfter: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateResourceInputRequestTypeDef(BaseModel): + TypeName: str + DesiredState: str + TypeVersionId: Optional[str] = None + RoleArn: Optional[str] = None + ClientToken: Optional[str] = None + +class DeleteResourceInputRequestTypeDef(BaseModel): + TypeName: str + Identifier: str + TypeVersionId: Optional[str] = None + RoleArn: Optional[str] = None + ClientToken: Optional[str] = None + +class GetResourceInputRequestTypeDef(BaseModel): + TypeName: str + Identifier: str + TypeVersionId: Optional[str] = None + RoleArn: Optional[str] = None + +class ResourceDescriptionTypeDef(BaseModel): + Identifier: Optional[str] = None + Properties: Optional[str] = None + +class GetResourceRequestStatusInputRequestTypeDef(BaseModel): + RequestToken: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ResourceRequestStatusFilterTypeDef(BaseModel): + Operations: Optional[Sequence[OperationType]] = None + OperationStatuses: Optional[Sequence[OperationStatusType]] = None + +class ListResourcesInputRequestTypeDef(BaseModel): + TypeName: str + TypeVersionId: Optional[str] = None + RoleArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ResourceModel: Optional[str] = None + +class UpdateResourceInputRequestTypeDef(BaseModel): + TypeName: str + Identifier: str + PatchDocument: str + TypeVersionId: Optional[str] = None + RoleArn: Optional[str] = None + ClientToken: Optional[str] = None + +class CancelResourceRequestOutputTypeDef(BaseModel): + ProgressEvent: ProgressEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceOutputTypeDef(BaseModel): + ProgressEvent: ProgressEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourceOutputTypeDef(BaseModel): + ProgressEvent: ProgressEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceRequestStatusOutputTypeDef(BaseModel): + ProgressEvent: ProgressEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceRequestsOutputTypeDef(BaseModel): + ResourceRequestStatusSummaries: List[ProgressEventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResourceOutputTypeDef(BaseModel): + ProgressEvent: ProgressEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceOutputTypeDef(BaseModel): + TypeName: str + ResourceDescription: ResourceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesOutputTypeDef(BaseModel): + TypeName: str + ResourceDescriptions: List[ResourceDescriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceRequestStatusInputResourceRequestSuccessWaitTypeDef(BaseModel): + RequestToken: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ListResourcesInputListResourcesPaginateTypeDef(BaseModel): + TypeName: str + TypeVersionId: Optional[str] = None + RoleArn: Optional[str] = None + ResourceModel: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceRequestsInputListResourceRequestsPaginateTypeDef(BaseModel): + ResourceRequestStatusFilter: Optional[ResourceRequestStatusFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceRequestsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ResourceRequestStatusFilter: Optional[ResourceRequestStatusFilterTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/cloudcontrol_constants.py b/aws_resource_validator/pydantic_models/cloudcontrol_constants.py new file mode 100644 index 00000000..47bb502d --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudcontrol_constants.py @@ -0,0 +1,438 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +HandlerErrorCodeType = Literal["AccessDenied", + "AlreadyExists", + "GeneralServiceException", + "InternalFailure", + "InvalidCredentials", + "InvalidRequest", + "NetworkFailure", + "NotFound", + "NotStabilized", + "NotUpdatable", + "ResourceConflict", + "ServiceInternalError", + "ServiceLimitExceeded", + "ServiceTimeout", + "Throttling",] +ListResourceRequestsPaginatorName = Literal["list_resource_requests"] +ListResourcesPaginatorName = Literal["list_resources"] +OperationStatusType = Literal["CANCEL_COMPLETE", "CANCEL_IN_PROGRESS", "FAILED", "IN_PROGRESS", "PENDING", "SUCCESS"] +OperationType = Literal["CREATE", "DELETE", "UPDATE"] +ResourceRequestSuccessWaiterName = Literal["resource_request_success"] +CloudControlApiServiceName = Literal["cloudcontrol"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_resource_requests", "list_resources"] +WaiterName = Literal["resource_request_success"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/clouddirectory_classes.py b/aws_resource_validator/pydantic_models/clouddirectory_classes.py new file mode 100644 index 00000000..aba84a58 --- /dev/null +++ b/aws_resource_validator/pydantic_models/clouddirectory_classes.py @@ -0,0 +1,1243 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.clouddirectory_constants import * + +class ObjectReferenceTypeDef(BaseModel): + Selector: Optional[str] = None + +class SchemaFacetTypeDef(BaseModel): + SchemaArn: Optional[str] = None + FacetName: Optional[str] = None + +class ApplySchemaRequestRequestTypeDef(BaseModel): + PublishedSchemaArn: str + DirectoryArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TypedLinkSchemaAndFacetNameTypeDef(BaseModel): + SchemaArn: str + TypedLinkName: str + +class AttributeKeyTypeDef(BaseModel): + SchemaArn: str + FacetName: str + Name: str + +class TypedAttributeValuePaginatorTypeDef(BaseModel): + StringValue: Optional[str] = None + BinaryValue: Optional[bytes] = None + BooleanValue: Optional[bool] = None + NumberValue: Optional[str] = None + DatetimeValue: Optional[datetime] = None + +class BatchAttachObjectResponseTypeDef(BaseModel): + attachedObjectIdentifier: Optional[str] = None + +class BatchAttachToIndexResponseTypeDef(BaseModel): + AttachedObjectIdentifier: Optional[str] = None + +class BatchCreateIndexResponseTypeDef(BaseModel): + ObjectIdentifier: Optional[str] = None + +class BatchCreateObjectResponseTypeDef(BaseModel): + ObjectIdentifier: Optional[str] = None + +class BatchDetachFromIndexResponseTypeDef(BaseModel): + DetachedObjectIdentifier: Optional[str] = None + +class BatchDetachObjectResponseTypeDef(BaseModel): + detachedObjectIdentifier: Optional[str] = None + +class BatchListObjectChildrenResponseTypeDef(BaseModel): + Children: Optional[Dict[str, str]] = None + NextToken: Optional[str] = None + +class PathToObjectIdentifiersTypeDef(BaseModel): + Path: Optional[str] = None + ObjectIdentifiers: Optional[List[str]] = None + +class ObjectIdentifierAndLinkNameTupleTypeDef(BaseModel): + ObjectIdentifier: Optional[str] = None + LinkName: Optional[str] = None + +class BatchListObjectPoliciesResponseTypeDef(BaseModel): + AttachedPolicyIds: Optional[List[str]] = None + NextToken: Optional[str] = None + +class BatchListPolicyAttachmentsResponseTypeDef(BaseModel): + ObjectIdentifiers: Optional[List[str]] = None + NextToken: Optional[str] = None + +class BatchReadExceptionTypeDef(BaseModel): + Type: Optional[BatchReadExceptionTypeType] = None + Message: Optional[str] = None + +class BatchUpdateObjectAttributesResponseTypeDef(BaseModel): + ObjectIdentifier: Optional[str] = None + +class CreateDirectoryRequestRequestTypeDef(BaseModel): + Name: str + SchemaArn: str + +class CreateSchemaRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteDirectoryRequestRequestTypeDef(BaseModel): + DirectoryArn: str + +class DeleteFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + +class DeleteSchemaRequestRequestTypeDef(BaseModel): + SchemaArn: str + +class DeleteTypedLinkFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + +class DirectoryTypeDef(BaseModel): + Name: Optional[str] = None + DirectoryArn: Optional[str] = None + State: Optional[DirectoryStateType] = None + CreationDateTime: Optional[datetime] = None + +class DisableDirectoryRequestRequestTypeDef(BaseModel): + DirectoryArn: str + +class EnableDirectoryRequestRequestTypeDef(BaseModel): + DirectoryArn: str + +class RulePaginatorTypeDef(BaseModel): + Type: Optional[RuleTypeType] = None + Parameters: Optional[Dict[str, str]] = None + +class RuleTypeDef(BaseModel): + Type: Optional[RuleTypeType] = None + Parameters: Optional[Mapping[str, str]] = None + +class FacetAttributeReferenceTypeDef(BaseModel): + TargetFacetName: str + TargetAttributeName: str + +class FacetTypeDef(BaseModel): + Name: Optional[str] = None + ObjectType: Optional[ObjectTypeType] = None + FacetStyle: Optional[FacetStyleType] = None + +class GetAppliedSchemaVersionRequestRequestTypeDef(BaseModel): + SchemaArn: str + +class GetDirectoryRequestRequestTypeDef(BaseModel): + DirectoryArn: str + +class GetFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + +class GetSchemaAsJsonRequestRequestTypeDef(BaseModel): + SchemaArn: str + +class GetTypedLinkFacetInformationRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAppliedSchemaArnsRequestRequestTypeDef(BaseModel): + DirectoryArn: str + SchemaArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDevelopmentSchemaArnsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDirectoriesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + state: Optional[DirectoryStateType] = None + +class ListFacetAttributesRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFacetNamesRequestRequestTypeDef(BaseModel): + SchemaArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListManagedSchemaArnsRequestRequestTypeDef(BaseModel): + SchemaArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPublishedSchemaArnsRequestRequestTypeDef(BaseModel): + SchemaArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ListTypedLinkFacetAttributesRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTypedLinkFacetNamesRequestRequestTypeDef(BaseModel): + SchemaArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PolicyAttachmentTypeDef(BaseModel): + PolicyId: Optional[str] = None + ObjectIdentifier: Optional[str] = None + PolicyType: Optional[str] = None + +class PublishSchemaRequestRequestTypeDef(BaseModel): + DevelopmentSchemaArn: str + Version: str + MinorVersion: Optional[str] = None + Name: Optional[str] = None + +class PutSchemaFromJsonRequestRequestTypeDef(BaseModel): + SchemaArn: str + Document: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateSchemaRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + +class UpgradeAppliedSchemaRequestRequestTypeDef(BaseModel): + PublishedSchemaArn: str + DirectoryArn: str + DryRun: Optional[bool] = None + +class UpgradePublishedSchemaRequestRequestTypeDef(BaseModel): + DevelopmentSchemaArn: str + PublishedSchemaArn: str + MinorVersion: str + DryRun: Optional[bool] = None + +class AttachObjectRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ParentReference: ObjectReferenceTypeDef + ChildReference: ObjectReferenceTypeDef + LinkName: str + +class AttachPolicyRequestRequestTypeDef(BaseModel): + DirectoryArn: str + PolicyReference: ObjectReferenceTypeDef + ObjectReference: ObjectReferenceTypeDef + +class AttachToIndexRequestRequestTypeDef(BaseModel): + DirectoryArn: str + IndexReference: ObjectReferenceTypeDef + TargetReference: ObjectReferenceTypeDef + +class BatchAttachObjectTypeDef(BaseModel): + ParentReference: ObjectReferenceTypeDef + ChildReference: ObjectReferenceTypeDef + LinkName: str + +class BatchAttachPolicyTypeDef(BaseModel): + PolicyReference: ObjectReferenceTypeDef + ObjectReference: ObjectReferenceTypeDef + +class BatchAttachToIndexTypeDef(BaseModel): + IndexReference: ObjectReferenceTypeDef + TargetReference: ObjectReferenceTypeDef + +class BatchDeleteObjectTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + +class BatchDetachFromIndexTypeDef(BaseModel): + IndexReference: ObjectReferenceTypeDef + TargetReference: ObjectReferenceTypeDef + +class BatchDetachObjectTypeDef(BaseModel): + ParentReference: ObjectReferenceTypeDef + LinkName: str + BatchReferenceName: Optional[str] = None + +class BatchDetachPolicyTypeDef(BaseModel): + PolicyReference: ObjectReferenceTypeDef + ObjectReference: ObjectReferenceTypeDef + +class BatchGetObjectInformationTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + +class BatchListAttachedIndicesTypeDef(BaseModel): + TargetReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchListObjectChildrenTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchListObjectParentPathsTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchListObjectParentsTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchListObjectPoliciesTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchListPolicyAttachmentsTypeDef(BaseModel): + PolicyReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchLookupPolicyTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DeleteObjectRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + +class DetachFromIndexRequestRequestTypeDef(BaseModel): + DirectoryArn: str + IndexReference: ObjectReferenceTypeDef + TargetReference: ObjectReferenceTypeDef + +class DetachObjectRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ParentReference: ObjectReferenceTypeDef + LinkName: str + +class DetachPolicyRequestRequestTypeDef(BaseModel): + DirectoryArn: str + PolicyReference: ObjectReferenceTypeDef + ObjectReference: ObjectReferenceTypeDef + +class GetObjectInformationRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListAttachedIndicesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + TargetReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListObjectChildrenRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListObjectParentPathsRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListObjectParentsRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + IncludeAllLinksToEachParent: Optional[bool] = None + +class ListObjectPoliciesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListPolicyAttachmentsRequestRequestTypeDef(BaseModel): + DirectoryArn: str + PolicyReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class LookupPolicyRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchGetObjectAttributesTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + SchemaFacet: SchemaFacetTypeDef + AttributeNames: Sequence[str] + +class BatchGetObjectInformationResponseTypeDef(BaseModel): + SchemaFacets: Optional[List[SchemaFacetTypeDef]] = None + ObjectIdentifier: Optional[str] = None + +class BatchListObjectAttributesTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + FacetFilter: Optional[SchemaFacetTypeDef] = None + +class BatchRemoveFacetFromObjectTypeDef(BaseModel): + SchemaFacet: SchemaFacetTypeDef + ObjectReference: ObjectReferenceTypeDef + +class GetObjectAttributesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + SchemaFacet: SchemaFacetTypeDef + AttributeNames: Sequence[str] + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListObjectAttributesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + FacetFilter: Optional[SchemaFacetTypeDef] = None + +class RemoveFacetFromObjectRequestRequestTypeDef(BaseModel): + DirectoryArn: str + SchemaFacet: SchemaFacetTypeDef + ObjectReference: ObjectReferenceTypeDef + +class ApplySchemaResponseTypeDef(BaseModel): + AppliedSchemaArn: str + DirectoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachObjectResponseTypeDef(BaseModel): + AttachedObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachToIndexResponseTypeDef(BaseModel): + AttachedObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDirectoryResponseTypeDef(BaseModel): + DirectoryArn: str + Name: str + ObjectIdentifier: str + AppliedSchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIndexResponseTypeDef(BaseModel): + ObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateObjectResponseTypeDef(BaseModel): + ObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSchemaResponseTypeDef(BaseModel): + SchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDirectoryResponseTypeDef(BaseModel): + DirectoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSchemaResponseTypeDef(BaseModel): + SchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetachFromIndexResponseTypeDef(BaseModel): + DetachedObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetachObjectResponseTypeDef(BaseModel): + DetachedObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableDirectoryResponseTypeDef(BaseModel): + DirectoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnableDirectoryResponseTypeDef(BaseModel): + DirectoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppliedSchemaVersionResponseTypeDef(BaseModel): + AppliedSchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectInformationResponseTypeDef(BaseModel): + SchemaFacets: List[SchemaFacetTypeDef] + ObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaAsJsonResponseTypeDef(BaseModel): + Name: str + Document: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTypedLinkFacetInformationResponseTypeDef(BaseModel): + IdentityAttributeOrder: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppliedSchemaArnsResponseTypeDef(BaseModel): + SchemaArns: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevelopmentSchemaArnsResponseTypeDef(BaseModel): + SchemaArns: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFacetNamesResponseTypeDef(BaseModel): + FacetNames: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListManagedSchemaArnsResponseTypeDef(BaseModel): + SchemaArns: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListObjectChildrenResponseTypeDef(BaseModel): + Children: Dict[str, str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListObjectPoliciesResponseTypeDef(BaseModel): + AttachedPolicyIds: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPolicyAttachmentsResponseTypeDef(BaseModel): + ObjectIdentifiers: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPublishedSchemaArnsResponseTypeDef(BaseModel): + SchemaArns: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTypedLinkFacetNamesResponseTypeDef(BaseModel): + FacetNames: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PublishSchemaResponseTypeDef(BaseModel): + PublishedSchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSchemaFromJsonResponseTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateObjectAttributesResponseTypeDef(BaseModel): + ObjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSchemaResponseTypeDef(BaseModel): + SchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpgradeAppliedSchemaResponseTypeDef(BaseModel): + UpgradedSchemaArn: str + DirectoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpgradePublishedSchemaResponseTypeDef(BaseModel): + UpgradedSchemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreateIndexTypeDef(BaseModel): + OrderedIndexedAttributeList: Sequence[AttributeKeyTypeDef] + IsUnique: bool + ParentReference: Optional[ObjectReferenceTypeDef] = None + LinkName: Optional[str] = None + BatchReferenceName: Optional[str] = None + +class CreateIndexRequestRequestTypeDef(BaseModel): + DirectoryArn: str + OrderedIndexedAttributeList: Sequence[AttributeKeyTypeDef] + IsUnique: bool + ParentReference: Optional[ObjectReferenceTypeDef] = None + LinkName: Optional[str] = None + +class AttributeKeyAndValuePaginatorTypeDef(BaseModel): + Key: AttributeKeyTypeDef + Value: TypedAttributeValuePaginatorTypeDef + +class AttributeNameAndValuePaginatorTypeDef(BaseModel): + AttributeName: str + Value: TypedAttributeValuePaginatorTypeDef + +class TypedAttributeValueRangePaginatorTypeDef(BaseModel): + StartMode: RangeModeType + EndMode: RangeModeType + StartValue: Optional[TypedAttributeValuePaginatorTypeDef] = None + EndValue: Optional[TypedAttributeValuePaginatorTypeDef] = None + +class BatchListObjectParentPathsResponseTypeDef(BaseModel): + PathToObjectIdentifiersList: Optional[List[PathToObjectIdentifiersTypeDef]] = None + NextToken: Optional[str] = None + +class ListObjectParentPathsResponseTypeDef(BaseModel): + PathToObjectIdentifiersList: List[PathToObjectIdentifiersTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchListObjectParentsResponseTypeDef(BaseModel): + ParentLinks: Optional[List[ObjectIdentifierAndLinkNameTupleTypeDef]] = None + NextToken: Optional[str] = None + +class ListObjectParentsResponseTypeDef(BaseModel): + Parents: Dict[str, str] + NextToken: str + ParentLinks: List[ObjectIdentifierAndLinkNameTupleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDirectoryResponseTypeDef(BaseModel): + Directory: DirectoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDirectoriesResponseTypeDef(BaseModel): + Directories: List[DirectoryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FacetAttributeDefinitionPaginatorTypeDef(BaseModel): + Type: FacetAttributeTypeType + DefaultValue: Optional[TypedAttributeValuePaginatorTypeDef] = None + IsImmutable: Optional[bool] = None + Rules: Optional[Dict[str, RulePaginatorTypeDef]] = None + +class TypedLinkAttributeDefinitionPaginatorTypeDef(BaseModel): + Name: str + Type: FacetAttributeTypeType + RequiredBehavior: RequiredAttributeBehaviorType + DefaultValue: Optional[TypedAttributeValuePaginatorTypeDef] = None + IsImmutable: Optional[bool] = None + Rules: Optional[Dict[str, RulePaginatorTypeDef]] = None + +class GetFacetResponseTypeDef(BaseModel): + Facet: FacetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppliedSchemaArnsRequestListAppliedSchemaArnsPaginateTypeDef(BaseModel): + DirectoryArn: str + SchemaArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachedIndicesRequestListAttachedIndicesPaginateTypeDef(BaseModel): + DirectoryArn: str + TargetReference: ObjectReferenceTypeDef + ConsistencyLevel: Optional[ConsistencyLevelType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevelopmentSchemaArnsRequestListDevelopmentSchemaArnsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDirectoriesRequestListDirectoriesPaginateTypeDef(BaseModel): + state: Optional[DirectoryStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFacetAttributesRequestListFacetAttributesPaginateTypeDef(BaseModel): + SchemaArn: str + Name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFacetNamesRequestListFacetNamesPaginateTypeDef(BaseModel): + SchemaArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedSchemaArnsRequestListManagedSchemaArnsPaginateTypeDef(BaseModel): + SchemaArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectAttributesRequestListObjectAttributesPaginateTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + ConsistencyLevel: Optional[ConsistencyLevelType] = None + FacetFilter: Optional[SchemaFacetTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectParentPathsRequestListObjectParentPathsPaginateTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectPoliciesRequestListObjectPoliciesPaginateTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + ConsistencyLevel: Optional[ConsistencyLevelType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyAttachmentsRequestListPolicyAttachmentsPaginateTypeDef(BaseModel): + DirectoryArn: str + PolicyReference: ObjectReferenceTypeDef + ConsistencyLevel: Optional[ConsistencyLevelType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPublishedSchemaArnsRequestListPublishedSchemaArnsPaginateTypeDef(BaseModel): + SchemaArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTypedLinkFacetAttributesRequestListTypedLinkFacetAttributesPaginateTypeDef(BaseModel): + SchemaArn: str + Name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTypedLinkFacetNamesRequestListTypedLinkFacetNamesPaginateTypeDef(BaseModel): + SchemaArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LookupPolicyRequestLookupPolicyPaginateTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class PolicyToPathTypeDef(BaseModel): + Path: Optional[str] = None + Policies: Optional[List[PolicyAttachmentTypeDef]] = None + +class TypedAttributeValueTypeDef(BaseModel): + StringValue: Optional[str] = None + BinaryValue: Optional[BlobTypeDef] = None + BooleanValue: Optional[bool] = None + NumberValue: Optional[str] = None + DatetimeValue: Optional[TimestampTypeDef] = None + +class IndexAttachmentPaginatorTypeDef(BaseModel): + IndexedAttributes: Optional[List[AttributeKeyAndValuePaginatorTypeDef]] = None + ObjectIdentifier: Optional[str] = None + +class ListObjectAttributesResponsePaginatorTypeDef(BaseModel): + Attributes: List[AttributeKeyAndValuePaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TypedLinkSpecifierPaginatorTypeDef(BaseModel): + TypedLinkFacet: TypedLinkSchemaAndFacetNameTypeDef + SourceObjectReference: ObjectReferenceTypeDef + TargetObjectReference: ObjectReferenceTypeDef + IdentityAttributeValues: List[AttributeNameAndValuePaginatorTypeDef] + +class ObjectAttributeRangePaginatorTypeDef(BaseModel): + AttributeKey: Optional[AttributeKeyTypeDef] = None + Range: Optional[TypedAttributeValueRangePaginatorTypeDef] = None + +class TypedLinkAttributeRangePaginatorTypeDef(BaseModel): + Range: TypedAttributeValueRangePaginatorTypeDef + AttributeName: Optional[str] = None + +class FacetAttributePaginatorTypeDef(BaseModel): + Name: str + AttributeDefinition: Optional[FacetAttributeDefinitionPaginatorTypeDef] = None + AttributeReference: Optional[FacetAttributeReferenceTypeDef] = None + RequiredBehavior: Optional[RequiredAttributeBehaviorType] = None + +class ListTypedLinkFacetAttributesResponsePaginatorTypeDef(BaseModel): + Attributes: List[TypedLinkAttributeDefinitionPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchLookupPolicyResponseTypeDef(BaseModel): + PolicyToPathList: Optional[List[PolicyToPathTypeDef]] = None + NextToken: Optional[str] = None + +class LookupPolicyResponseTypeDef(BaseModel): + PolicyToPathList: List[PolicyToPathTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttributeKeyAndValueTypeDef(BaseModel): + Key: AttributeKeyTypeDef + Value: TypedAttributeValueTypeDef + +class AttributeNameAndValueTypeDef(BaseModel): + AttributeName: str + Value: TypedAttributeValueTypeDef + +class FacetAttributeDefinitionTypeDef(BaseModel): + Type: FacetAttributeTypeType + DefaultValue: Optional[TypedAttributeValueTypeDef] = None + IsImmutable: Optional[bool] = None + Rules: Optional[Mapping[str, RuleTypeDef]] = None + +class LinkAttributeActionTypeDef(BaseModel): + AttributeActionType: Optional[UpdateActionTypeType] = None + AttributeUpdateValue: Optional[TypedAttributeValueTypeDef] = None + +class ObjectAttributeActionTypeDef(BaseModel): + ObjectAttributeActionType: Optional[UpdateActionTypeType] = None + ObjectAttributeUpdateValue: Optional[TypedAttributeValueTypeDef] = None + +class TypedAttributeValueRangeTypeDef(BaseModel): + StartMode: RangeModeType + EndMode: RangeModeType + StartValue: Optional[TypedAttributeValueTypeDef] = None + EndValue: Optional[TypedAttributeValueTypeDef] = None + +class TypedLinkAttributeDefinitionTypeDef(BaseModel): + Name: str + Type: FacetAttributeTypeType + RequiredBehavior: RequiredAttributeBehaviorType + DefaultValue: Optional[TypedAttributeValueTypeDef] = None + IsImmutable: Optional[bool] = None + Rules: Optional[Mapping[str, RuleTypeDef]] = None + +class ListAttachedIndicesResponsePaginatorTypeDef(BaseModel): + IndexAttachments: List[IndexAttachmentPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIndexResponsePaginatorTypeDef(BaseModel): + IndexAttachments: List[IndexAttachmentPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIncomingTypedLinksResponsePaginatorTypeDef(BaseModel): + LinkSpecifiers: List[TypedLinkSpecifierPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOutgoingTypedLinksResponsePaginatorTypeDef(BaseModel): + TypedLinkSpecifiers: List[TypedLinkSpecifierPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIndexRequestListIndexPaginateTypeDef(BaseModel): + DirectoryArn: str + IndexReference: ObjectReferenceTypeDef + RangesOnIndexedValues: Optional[Sequence[ObjectAttributeRangePaginatorTypeDef]] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIncomingTypedLinksRequestListIncomingTypedLinksPaginateTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + FilterAttributeRanges: Optional[Sequence[TypedLinkAttributeRangePaginatorTypeDef]] = None + FilterTypedLink: Optional[TypedLinkSchemaAndFacetNameTypeDef] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOutgoingTypedLinksRequestListOutgoingTypedLinksPaginateTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + FilterAttributeRanges: Optional[Sequence[TypedLinkAttributeRangePaginatorTypeDef]] = None + FilterTypedLink: Optional[TypedLinkSchemaAndFacetNameTypeDef] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFacetAttributesResponsePaginatorTypeDef(BaseModel): + Attributes: List[FacetAttributePaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddFacetToObjectRequestRequestTypeDef(BaseModel): + DirectoryArn: str + SchemaFacet: SchemaFacetTypeDef + ObjectReference: ObjectReferenceTypeDef + ObjectAttributeList: Optional[Sequence[AttributeKeyAndValueTypeDef]] = None + +class BatchAddFacetToObjectTypeDef(BaseModel): + SchemaFacet: SchemaFacetTypeDef + ObjectAttributeList: Sequence[AttributeKeyAndValueTypeDef] + ObjectReference: ObjectReferenceTypeDef + +class BatchCreateObjectTypeDef(BaseModel): + SchemaFacet: Sequence[SchemaFacetTypeDef] + ObjectAttributeList: Sequence[AttributeKeyAndValueTypeDef] + ParentReference: Optional[ObjectReferenceTypeDef] = None + LinkName: Optional[str] = None + BatchReferenceName: Optional[str] = None + +class BatchGetLinkAttributesResponseTypeDef(BaseModel): + Attributes: Optional[List[AttributeKeyAndValueTypeDef]] = None + +class BatchGetObjectAttributesResponseTypeDef(BaseModel): + Attributes: Optional[List[AttributeKeyAndValueTypeDef]] = None + +class BatchListObjectAttributesResponseTypeDef(BaseModel): + Attributes: Optional[List[AttributeKeyAndValueTypeDef]] = None + NextToken: Optional[str] = None + +class CreateObjectRequestRequestTypeDef(BaseModel): + DirectoryArn: str + SchemaFacets: Sequence[SchemaFacetTypeDef] + ObjectAttributeList: Optional[Sequence[AttributeKeyAndValueTypeDef]] = None + ParentReference: Optional[ObjectReferenceTypeDef] = None + LinkName: Optional[str] = None + +class GetLinkAttributesResponseTypeDef(BaseModel): + Attributes: List[AttributeKeyAndValueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectAttributesResponseTypeDef(BaseModel): + Attributes: List[AttributeKeyAndValueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IndexAttachmentTypeDef(BaseModel): + IndexedAttributes: Optional[List[AttributeKeyAndValueTypeDef]] = None + ObjectIdentifier: Optional[str] = None + +class ListObjectAttributesResponseTypeDef(BaseModel): + Attributes: List[AttributeKeyAndValueTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachTypedLinkRequestRequestTypeDef(BaseModel): + DirectoryArn: str + SourceObjectReference: ObjectReferenceTypeDef + TargetObjectReference: ObjectReferenceTypeDef + TypedLinkFacet: TypedLinkSchemaAndFacetNameTypeDef + Attributes: Sequence[AttributeNameAndValueTypeDef] + +class BatchAttachTypedLinkTypeDef(BaseModel): + SourceObjectReference: ObjectReferenceTypeDef + TargetObjectReference: ObjectReferenceTypeDef + TypedLinkFacet: TypedLinkSchemaAndFacetNameTypeDef + Attributes: Sequence[AttributeNameAndValueTypeDef] + +class TypedLinkSpecifierTypeDef(BaseModel): + TypedLinkFacet: TypedLinkSchemaAndFacetNameTypeDef + SourceObjectReference: ObjectReferenceTypeDef + TargetObjectReference: ObjectReferenceTypeDef + IdentityAttributeValues: List[AttributeNameAndValueTypeDef] + +class FacetAttributeTypeDef(BaseModel): + Name: str + AttributeDefinition: Optional[FacetAttributeDefinitionTypeDef] = None + AttributeReference: Optional[FacetAttributeReferenceTypeDef] = None + RequiredBehavior: Optional[RequiredAttributeBehaviorType] = None + +class LinkAttributeUpdateTypeDef(BaseModel): + AttributeKey: Optional[AttributeKeyTypeDef] = None + AttributeAction: Optional[LinkAttributeActionTypeDef] = None + +class ObjectAttributeUpdateTypeDef(BaseModel): + ObjectAttributeKey: Optional[AttributeKeyTypeDef] = None + ObjectAttributeAction: Optional[ObjectAttributeActionTypeDef] = None + +class ObjectAttributeRangeTypeDef(BaseModel): + AttributeKey: Optional[AttributeKeyTypeDef] = None + Range: Optional[TypedAttributeValueRangeTypeDef] = None + +class TypedLinkAttributeRangeTypeDef(BaseModel): + Range: TypedAttributeValueRangeTypeDef + AttributeName: Optional[str] = None + +class ListTypedLinkFacetAttributesResponseTypeDef(BaseModel): + Attributes: List[TypedLinkAttributeDefinitionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TypedLinkFacetAttributeUpdateTypeDef(BaseModel): + Attribute: TypedLinkAttributeDefinitionTypeDef + Action: UpdateActionTypeType + +class TypedLinkFacetTypeDef(BaseModel): + Name: str + Attributes: Sequence[TypedLinkAttributeDefinitionTypeDef] + IdentityAttributeOrder: Sequence[str] + +class BatchListAttachedIndicesResponseTypeDef(BaseModel): + IndexAttachments: Optional[List[IndexAttachmentTypeDef]] = None + NextToken: Optional[str] = None + +class BatchListIndexResponseTypeDef(BaseModel): + IndexAttachments: Optional[List[IndexAttachmentTypeDef]] = None + NextToken: Optional[str] = None + +class ListAttachedIndicesResponseTypeDef(BaseModel): + IndexAttachments: List[IndexAttachmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIndexResponseTypeDef(BaseModel): + IndexAttachments: List[IndexAttachmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachTypedLinkResponseTypeDef(BaseModel): + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchAttachTypedLinkResponseTypeDef(BaseModel): + TypedLinkSpecifier: Optional[TypedLinkSpecifierTypeDef] = None + +class BatchDetachTypedLinkTypeDef(BaseModel): + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + +class BatchGetLinkAttributesTypeDef(BaseModel): + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + AttributeNames: Sequence[str] + +class BatchListIncomingTypedLinksResponseTypeDef(BaseModel): + LinkSpecifiers: Optional[List[TypedLinkSpecifierTypeDef]] = None + NextToken: Optional[str] = None + +class BatchListOutgoingTypedLinksResponseTypeDef(BaseModel): + TypedLinkSpecifiers: Optional[List[TypedLinkSpecifierTypeDef]] = None + NextToken: Optional[str] = None + +class DetachTypedLinkRequestRequestTypeDef(BaseModel): + DirectoryArn: str + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + +class GetLinkAttributesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + AttributeNames: Sequence[str] + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListIncomingTypedLinksResponseTypeDef(BaseModel): + LinkSpecifiers: List[TypedLinkSpecifierTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOutgoingTypedLinksResponseTypeDef(BaseModel): + TypedLinkSpecifiers: List[TypedLinkSpecifierTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + Attributes: Optional[Sequence[FacetAttributeTypeDef]] = None + ObjectType: Optional[ObjectTypeType] = None + FacetStyle: Optional[FacetStyleType] = None + +class FacetAttributeUpdateTypeDef(BaseModel): + Attribute: Optional[FacetAttributeTypeDef] = None + Action: Optional[UpdateActionTypeType] = None + +class ListFacetAttributesResponseTypeDef(BaseModel): + Attributes: List[FacetAttributeTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateLinkAttributesTypeDef(BaseModel): + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + AttributeUpdates: Sequence[LinkAttributeUpdateTypeDef] + +class UpdateLinkAttributesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + TypedLinkSpecifier: TypedLinkSpecifierTypeDef + AttributeUpdates: Sequence[LinkAttributeUpdateTypeDef] + +class BatchUpdateObjectAttributesTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + AttributeUpdates: Sequence[ObjectAttributeUpdateTypeDef] + +class UpdateObjectAttributesRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + AttributeUpdates: Sequence[ObjectAttributeUpdateTypeDef] + +class BatchListIndexTypeDef(BaseModel): + IndexReference: ObjectReferenceTypeDef + RangesOnIndexedValues: Optional[Sequence[ObjectAttributeRangeTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListIndexRequestRequestTypeDef(BaseModel): + DirectoryArn: str + IndexReference: ObjectReferenceTypeDef + RangesOnIndexedValues: Optional[Sequence[ObjectAttributeRangeTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class BatchListIncomingTypedLinksTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + FilterAttributeRanges: Optional[Sequence[TypedLinkAttributeRangeTypeDef]] = None + FilterTypedLink: Optional[TypedLinkSchemaAndFacetNameTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchListOutgoingTypedLinksTypeDef(BaseModel): + ObjectReference: ObjectReferenceTypeDef + FilterAttributeRanges: Optional[Sequence[TypedLinkAttributeRangeTypeDef]] = None + FilterTypedLink: Optional[TypedLinkSchemaAndFacetNameTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIncomingTypedLinksRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + FilterAttributeRanges: Optional[Sequence[TypedLinkAttributeRangeTypeDef]] = None + FilterTypedLink: Optional[TypedLinkSchemaAndFacetNameTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class ListOutgoingTypedLinksRequestRequestTypeDef(BaseModel): + DirectoryArn: str + ObjectReference: ObjectReferenceTypeDef + FilterAttributeRanges: Optional[Sequence[TypedLinkAttributeRangeTypeDef]] = None + FilterTypedLink: Optional[TypedLinkSchemaAndFacetNameTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class UpdateTypedLinkFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + AttributeUpdates: Sequence[TypedLinkFacetAttributeUpdateTypeDef] + IdentityAttributeOrder: Sequence[str] + +class CreateTypedLinkFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Facet: TypedLinkFacetTypeDef + +class BatchWriteOperationResponseTypeDef(BaseModel): + CreateObject: Optional[BatchCreateObjectResponseTypeDef] = None + AttachObject: Optional[BatchAttachObjectResponseTypeDef] = None + DetachObject: Optional[BatchDetachObjectResponseTypeDef] = None + UpdateObjectAttributes: Optional[BatchUpdateObjectAttributesResponseTypeDef] = None + DeleteObject: Optional[Dict[str, Any]] = None + AddFacetToObject: Optional[Dict[str, Any]] = None + RemoveFacetFromObject: Optional[Dict[str, Any]] = None + AttachPolicy: Optional[Dict[str, Any]] = None + DetachPolicy: Optional[Dict[str, Any]] = None + CreateIndex: Optional[BatchCreateIndexResponseTypeDef] = None + AttachToIndex: Optional[BatchAttachToIndexResponseTypeDef] = None + DetachFromIndex: Optional[BatchDetachFromIndexResponseTypeDef] = None + AttachTypedLink: Optional[BatchAttachTypedLinkResponseTypeDef] = None + DetachTypedLink: Optional[Dict[str, Any]] = None + UpdateLinkAttributes: Optional[Dict[str, Any]] = None + +class BatchReadSuccessfulResponseTypeDef(BaseModel): + ListObjectAttributes: Optional[BatchListObjectAttributesResponseTypeDef] = None + ListObjectChildren: Optional[BatchListObjectChildrenResponseTypeDef] = None + GetObjectInformation: Optional[BatchGetObjectInformationResponseTypeDef] = None + GetObjectAttributes: Optional[BatchGetObjectAttributesResponseTypeDef] = None + ListAttachedIndices: Optional[BatchListAttachedIndicesResponseTypeDef] = None + ListObjectParentPaths: Optional[BatchListObjectParentPathsResponseTypeDef] = None + ListObjectPolicies: Optional[BatchListObjectPoliciesResponseTypeDef] = None + ListPolicyAttachments: Optional[BatchListPolicyAttachmentsResponseTypeDef] = None + LookupPolicy: Optional[BatchLookupPolicyResponseTypeDef] = None + ListIndex: Optional[BatchListIndexResponseTypeDef] = None + ListOutgoingTypedLinks: Optional[BatchListOutgoingTypedLinksResponseTypeDef] = None + ListIncomingTypedLinks: Optional[BatchListIncomingTypedLinksResponseTypeDef] = None + GetLinkAttributes: Optional[BatchGetLinkAttributesResponseTypeDef] = None + ListObjectParents: Optional[BatchListObjectParentsResponseTypeDef] = None + +class UpdateFacetRequestRequestTypeDef(BaseModel): + SchemaArn: str + Name: str + AttributeUpdates: Optional[Sequence[FacetAttributeUpdateTypeDef]] = None + ObjectType: Optional[ObjectTypeType] = None + +class BatchWriteOperationTypeDef(BaseModel): + CreateObject: Optional[BatchCreateObjectTypeDef] = None + AttachObject: Optional[BatchAttachObjectTypeDef] = None + DetachObject: Optional[BatchDetachObjectTypeDef] = None + UpdateObjectAttributes: Optional[BatchUpdateObjectAttributesTypeDef] = None + DeleteObject: Optional[BatchDeleteObjectTypeDef] = None + AddFacetToObject: Optional[BatchAddFacetToObjectTypeDef] = None + RemoveFacetFromObject: Optional[BatchRemoveFacetFromObjectTypeDef] = None + AttachPolicy: Optional[BatchAttachPolicyTypeDef] = None + DetachPolicy: Optional[BatchDetachPolicyTypeDef] = None + CreateIndex: Optional[BatchCreateIndexTypeDef] = None + AttachToIndex: Optional[BatchAttachToIndexTypeDef] = None + DetachFromIndex: Optional[BatchDetachFromIndexTypeDef] = None + AttachTypedLink: Optional[BatchAttachTypedLinkTypeDef] = None + DetachTypedLink: Optional[BatchDetachTypedLinkTypeDef] = None + UpdateLinkAttributes: Optional[BatchUpdateLinkAttributesTypeDef] = None + +class BatchReadOperationTypeDef(BaseModel): + ListObjectAttributes: Optional[BatchListObjectAttributesTypeDef] = None + ListObjectChildren: Optional[BatchListObjectChildrenTypeDef] = None + ListAttachedIndices: Optional[BatchListAttachedIndicesTypeDef] = None + ListObjectParentPaths: Optional[BatchListObjectParentPathsTypeDef] = None + GetObjectInformation: Optional[BatchGetObjectInformationTypeDef] = None + GetObjectAttributes: Optional[BatchGetObjectAttributesTypeDef] = None + ListObjectParents: Optional[BatchListObjectParentsTypeDef] = None + ListObjectPolicies: Optional[BatchListObjectPoliciesTypeDef] = None + ListPolicyAttachments: Optional[BatchListPolicyAttachmentsTypeDef] = None + LookupPolicy: Optional[BatchLookupPolicyTypeDef] = None + ListIndex: Optional[BatchListIndexTypeDef] = None + ListOutgoingTypedLinks: Optional[BatchListOutgoingTypedLinksTypeDef] = None + ListIncomingTypedLinks: Optional[BatchListIncomingTypedLinksTypeDef] = None + GetLinkAttributes: Optional[BatchGetLinkAttributesTypeDef] = None + +class BatchWriteResponseTypeDef(BaseModel): + Responses: List[BatchWriteOperationResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchReadOperationResponseTypeDef(BaseModel): + SuccessfulResponse: Optional[BatchReadSuccessfulResponseTypeDef] = None + ExceptionResponse: Optional[BatchReadExceptionTypeDef] = None + +class BatchWriteRequestRequestTypeDef(BaseModel): + DirectoryArn: str + Operations: Sequence[BatchWriteOperationTypeDef] + +class BatchReadRequestRequestTypeDef(BaseModel): + DirectoryArn: str + Operations: Sequence[BatchReadOperationTypeDef] + ConsistencyLevel: Optional[ConsistencyLevelType] = None + +class BatchReadResponseTypeDef(BaseModel): + Responses: List[BatchReadOperationResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/clouddirectory_constants.py b/aws_resource_validator/pydantic_models/clouddirectory_constants.py new file mode 100644 index 00000000..5877ee24 --- /dev/null +++ b/aws_resource_validator/pydantic_models/clouddirectory_constants.py @@ -0,0 +1,459 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BatchReadExceptionTypeType = Literal["AccessDeniedException", + "CannotListParentOfRootException", + "DirectoryNotEnabledException", + "FacetValidationException", + "InternalServiceException", + "InvalidArnException", + "InvalidNextTokenException", + "LimitExceededException", + "NotIndexException", + "NotNodeException", + "NotPolicyException", + "ResourceNotFoundException", + "ValidationException",] +ConsistencyLevelType = Literal["EVENTUAL", "SERIALIZABLE"] +DirectoryStateType = Literal["DELETED", "DISABLED", "ENABLED"] +FacetAttributeTypeType = Literal["BINARY", "BOOLEAN", "DATETIME", "NUMBER", "STRING", "VARIANT"] +FacetStyleType = Literal["DYNAMIC", "STATIC"] +ListAppliedSchemaArnsPaginatorName = Literal["list_applied_schema_arns"] +ListAttachedIndicesPaginatorName = Literal["list_attached_indices"] +ListDevelopmentSchemaArnsPaginatorName = Literal["list_development_schema_arns"] +ListDirectoriesPaginatorName = Literal["list_directories"] +ListFacetAttributesPaginatorName = Literal["list_facet_attributes"] +ListFacetNamesPaginatorName = Literal["list_facet_names"] +ListIncomingTypedLinksPaginatorName = Literal["list_incoming_typed_links"] +ListIndexPaginatorName = Literal["list_index"] +ListManagedSchemaArnsPaginatorName = Literal["list_managed_schema_arns"] +ListObjectAttributesPaginatorName = Literal["list_object_attributes"] +ListObjectParentPathsPaginatorName = Literal["list_object_parent_paths"] +ListObjectPoliciesPaginatorName = Literal["list_object_policies"] +ListOutgoingTypedLinksPaginatorName = Literal["list_outgoing_typed_links"] +ListPolicyAttachmentsPaginatorName = Literal["list_policy_attachments"] +ListPublishedSchemaArnsPaginatorName = Literal["list_published_schema_arns"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListTypedLinkFacetAttributesPaginatorName = Literal["list_typed_link_facet_attributes"] +ListTypedLinkFacetNamesPaginatorName = Literal["list_typed_link_facet_names"] +LookupPolicyPaginatorName = Literal["lookup_policy"] +ObjectTypeType = Literal["INDEX", "LEAF_NODE", "NODE", "POLICY"] +RangeModeType = Literal["EXCLUSIVE", "FIRST", "INCLUSIVE", "LAST", "LAST_BEFORE_MISSING_VALUES"] +RequiredAttributeBehaviorType = Literal["NOT_REQUIRED", "REQUIRED_ALWAYS"] +RuleTypeType = Literal["BINARY_LENGTH", "NUMBER_COMPARISON", "STRING_FROM_SET", "STRING_LENGTH"] +UpdateActionTypeType = Literal["CREATE_OR_UPDATE", "DELETE"] +CloudDirectoryServiceName = Literal["clouddirectory"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applied_schema_arns", + "list_attached_indices", + "list_development_schema_arns", + "list_directories", + "list_facet_attributes", + "list_facet_names", + "list_incoming_typed_links", + "list_index", + "list_managed_schema_arns", + "list_object_attributes", + "list_object_parent_paths", + "list_object_policies", + "list_outgoing_typed_links", + "list_policy_attachments", + "list_published_schema_arns", + "list_tags_for_resource", + "list_typed_link_facet_attributes", + "list_typed_link_facet_names", + "lookup_policy",] +RegionName = Literal["ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/cloudformation_classes.py b/aws_resource_validator/pydantic_models/cloudformation_classes.py new file mode 100644 index 00000000..98dd6bb4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudformation_classes.py @@ -0,0 +1,1721 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudformation_constants import * + +class AccountGateResultTypeDef(BaseModel): + Status: Optional[AccountGateStatusType] = None + StatusReason: Optional[str] = None + +class AccountLimitTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[int] = None + +class LoggingConfigTypeDef(BaseModel): + LogRoleArn: str + LogGroupName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AutoDeploymentTypeDef(BaseModel): + Enabled: Optional[bool] = None + RetainStacksOnAccountRemoval: Optional[bool] = None + +class TypeConfigurationIdentifierTypeDef(BaseModel): + TypeArn: Optional[str] = None + TypeConfigurationAlias: Optional[str] = None + TypeConfigurationArn: Optional[str] = None + Type: Optional[ThirdPartyTypeType] = None + TypeName: Optional[str] = None + +class TypeConfigurationDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + Alias: Optional[str] = None + Configuration: Optional[str] = None + LastUpdated: Optional[datetime] = None + TypeArn: Optional[str] = None + TypeName: Optional[str] = None + IsDefaultConfiguration: Optional[bool] = None + +class CancelUpdateStackInputRequestTypeDef(BaseModel): + StackName: str + ClientRequestToken: Optional[str] = None + +class CancelUpdateStackInputStackCancelUpdateTypeDef(BaseModel): + ClientRequestToken: Optional[str] = None + +class ChangeSetHookResourceTargetDetailsTypeDef(BaseModel): + LogicalResourceId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceAction: Optional[ChangeActionType] = None + +class ChangeSetSummaryTypeDef(BaseModel): + StackId: Optional[str] = None + StackName: Optional[str] = None + ChangeSetId: Optional[str] = None + ChangeSetName: Optional[str] = None + ExecutionStatus: Optional[ExecutionStatusType] = None + Status: Optional[ChangeSetStatusType] = None + StatusReason: Optional[str] = None + CreationTime: Optional[datetime] = None + Description: Optional[str] = None + IncludeNestedStacks: Optional[bool] = None + ParentChangeSetId: Optional[str] = None + RootChangeSetId: Optional[str] = None + ImportExistingResources: Optional[bool] = None + +class ContinueUpdateRollbackInputRequestTypeDef(BaseModel): + StackName: str + RoleARN: Optional[str] = None + ResourcesToSkip: Optional[Sequence[str]] = None + ClientRequestToken: Optional[str] = None + +class ParameterTypeDef(BaseModel): + ParameterKey: Optional[str] = None + ParameterValue: Optional[str] = None + UsePreviousValue: Optional[bool] = None + ResolvedValue: Optional[str] = None + +class ResourceToImportTypeDef(BaseModel): + ResourceType: str + LogicalResourceId: str + ResourceIdentifier: Mapping[str, str] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResourceDefinitionTypeDef(BaseModel): + ResourceType: str + ResourceIdentifier: Mapping[str, str] + LogicalResourceId: Optional[str] = None + +class TemplateConfigurationTypeDef(BaseModel): + DeletionPolicy: Optional[GeneratedTemplateDeletionPolicyType] = None + UpdateReplacePolicy: Optional[GeneratedTemplateUpdateReplacePolicyType] = None + +class DeploymentTargetsTypeDef(BaseModel): + Accounts: Optional[Sequence[str]] = None + AccountsUrl: Optional[str] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + AccountFilterType: Optional[AccountFilterTypeType] = None + +class StackSetOperationPreferencesTypeDef(BaseModel): + RegionConcurrencyType: Optional[RegionConcurrencyTypeType] = None + RegionOrder: Optional[Sequence[str]] = None + FailureToleranceCount: Optional[int] = None + FailureTolerancePercentage: Optional[int] = None + MaxConcurrentCount: Optional[int] = None + MaxConcurrentPercentage: Optional[int] = None + ConcurrencyMode: Optional[ConcurrencyModeType] = None + +class ManagedExecutionTypeDef(BaseModel): + Active: Optional[bool] = None + +class DeactivateTypeInputRequestTypeDef(BaseModel): + TypeName: Optional[str] = None + Type: Optional[ThirdPartyTypeType] = None + Arn: Optional[str] = None + +class DeleteChangeSetInputRequestTypeDef(BaseModel): + ChangeSetName: str + StackName: Optional[str] = None + +class DeleteGeneratedTemplateInputRequestTypeDef(BaseModel): + GeneratedTemplateName: str + +class DeleteStackInputRequestTypeDef(BaseModel): + StackName: str + RetainResources: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + ClientRequestToken: Optional[str] = None + DeletionMode: Optional[DeletionModeType] = None + +class DeleteStackInputStackDeleteTypeDef(BaseModel): + RetainResources: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + ClientRequestToken: Optional[str] = None + DeletionMode: Optional[DeletionModeType] = None + +class DeleteStackSetInputRequestTypeDef(BaseModel): + StackSetName: str + CallAs: Optional[CallAsType] = None + +class DeploymentTargetsOutputTypeDef(BaseModel): + Accounts: Optional[List[str]] = None + AccountsUrl: Optional[str] = None + OrganizationalUnitIds: Optional[List[str]] = None + AccountFilterType: Optional[AccountFilterTypeType] = None + +class DeregisterTypeInputRequestTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + VersionId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAccountLimitsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class DescribeChangeSetHooksInputRequestTypeDef(BaseModel): + ChangeSetName: str + StackName: Optional[str] = None + NextToken: Optional[str] = None + LogicalResourceId: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeChangeSetInputRequestTypeDef(BaseModel): + ChangeSetName: str + StackName: Optional[str] = None + NextToken: Optional[str] = None + IncludePropertyValues: Optional[bool] = None + +class DescribeGeneratedTemplateInputRequestTypeDef(BaseModel): + GeneratedTemplateName: str + +class TemplateProgressTypeDef(BaseModel): + ResourcesSucceeded: Optional[int] = None + ResourcesFailed: Optional[int] = None + ResourcesProcessing: Optional[int] = None + ResourcesPending: Optional[int] = None + +class DescribeOrganizationsAccessInputRequestTypeDef(BaseModel): + CallAs: Optional[CallAsType] = None + +class DescribePublisherInputRequestTypeDef(BaseModel): + PublisherId: Optional[str] = None + +class DescribeResourceScanInputRequestTypeDef(BaseModel): + ResourceScanId: str + +class DescribeStackDriftDetectionStatusInputRequestTypeDef(BaseModel): + StackDriftDetectionId: str + +class DescribeStackEventsInputRequestTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + +class StackEventTypeDef(BaseModel): + StackId: str + EventId: str + StackName: str + Timestamp: datetime + LogicalResourceId: Optional[str] = None + PhysicalResourceId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceStatus: Optional[ResourceStatusType] = None + ResourceStatusReason: Optional[str] = None + ResourceProperties: Optional[str] = None + ClientRequestToken: Optional[str] = None + HookType: Optional[str] = None + HookStatus: Optional[HookStatusType] = None + HookStatusReason: Optional[str] = None + HookInvocationPoint: Optional[Literal["PRE_PROVISION"]] = None + HookFailureMode: Optional[HookFailureModeType] = None + DetailedStatus: Optional[DetailedStatusType] = None + +class DescribeStackInstanceInputRequestTypeDef(BaseModel): + StackSetName: str + StackInstanceAccount: str + StackInstanceRegion: str + CallAs: Optional[CallAsType] = None + +class DescribeStackResourceDriftsInputRequestTypeDef(BaseModel): + StackName: str + StackResourceDriftStatusFilters: Optional[Sequence[StackResourceDriftStatusType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeStackResourceInputRequestTypeDef(BaseModel): + StackName: str + LogicalResourceId: str + +class DescribeStackResourcesInputRequestTypeDef(BaseModel): + StackName: Optional[str] = None + LogicalResourceId: Optional[str] = None + PhysicalResourceId: Optional[str] = None + +class DescribeStackSetInputRequestTypeDef(BaseModel): + StackSetName: str + CallAs: Optional[CallAsType] = None + +class DescribeStackSetOperationInputRequestTypeDef(BaseModel): + StackSetName: str + OperationId: str + CallAs: Optional[CallAsType] = None + +class DescribeStacksInputRequestTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + +class DescribeTypeInputRequestTypeDef(BaseModel): + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + Arn: Optional[str] = None + VersionId: Optional[str] = None + PublisherId: Optional[str] = None + PublicVersionNumber: Optional[str] = None + +class RequiredActivatedTypeTypeDef(BaseModel): + TypeNameAlias: Optional[str] = None + OriginalTypeName: Optional[str] = None + PublisherId: Optional[str] = None + SupportedMajorVersions: Optional[List[int]] = None + +class DescribeTypeRegistrationInputRequestTypeDef(BaseModel): + RegistrationToken: str + +class DetectStackDriftInputRequestTypeDef(BaseModel): + StackName: str + LogicalResourceIds: Optional[Sequence[str]] = None + +class DetectStackResourceDriftInputRequestTypeDef(BaseModel): + StackName: str + LogicalResourceId: str + +class ExecuteChangeSetInputRequestTypeDef(BaseModel): + ChangeSetName: str + StackName: Optional[str] = None + ClientRequestToken: Optional[str] = None + DisableRollback: Optional[bool] = None + RetainExceptOnCreate: Optional[bool] = None + +class ExportTypeDef(BaseModel): + ExportingStackId: Optional[str] = None + Name: Optional[str] = None + Value: Optional[str] = None + +class GetGeneratedTemplateInputRequestTypeDef(BaseModel): + GeneratedTemplateName: str + Format: Optional[TemplateFormatType] = None + +class GetStackPolicyInputRequestTypeDef(BaseModel): + StackName: str + +class GetTemplateInputRequestTypeDef(BaseModel): + StackName: Optional[str] = None + ChangeSetName: Optional[str] = None + TemplateStage: Optional[TemplateStageType] = None + +class TemplateSummaryConfigTypeDef(BaseModel): + TreatUnrecognizedResourceTypesAsWarnings: Optional[bool] = None + +class ResourceIdentifierSummaryTypeDef(BaseModel): + ResourceType: Optional[str] = None + LogicalResourceIds: Optional[List[str]] = None + ResourceIdentifiers: Optional[List[str]] = None + +class WarningsTypeDef(BaseModel): + UnrecognizedResourceTypes: Optional[List[str]] = None + +class ListChangeSetsInputRequestTypeDef(BaseModel): + StackName: str + NextToken: Optional[str] = None + +class ListExportsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListGeneratedTemplatesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TemplateSummaryTypeDef(BaseModel): + GeneratedTemplateId: Optional[str] = None + GeneratedTemplateName: Optional[str] = None + Status: Optional[GeneratedTemplateStatusType] = None + StatusReason: Optional[str] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + NumberOfResources: Optional[int] = None + +class ListImportsInputRequestTypeDef(BaseModel): + ExportName: str + NextToken: Optional[str] = None + +class ScannedResourceIdentifierTypeDef(BaseModel): + ResourceType: str + ResourceIdentifier: Mapping[str, str] + +class ScannedResourceTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceIdentifier: Optional[Dict[str, str]] = None + ManagedByStack: Optional[bool] = None + +class ListResourceScanResourcesInputRequestTypeDef(BaseModel): + ResourceScanId: str + ResourceIdentifier: Optional[str] = None + ResourceTypePrefix: Optional[str] = None + TagKey: Optional[str] = None + TagValue: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListResourceScansInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResourceScanSummaryTypeDef(BaseModel): + ResourceScanId: Optional[str] = None + Status: Optional[ResourceScanStatusType] = None + StatusReason: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + PercentageCompleted: Optional[float] = None + +class ListStackInstanceResourceDriftsInputRequestTypeDef(BaseModel): + StackSetName: str + StackInstanceAccount: str + StackInstanceRegion: str + OperationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StackInstanceResourceDriftStatuses: Optional[Sequence[StackResourceDriftStatusType]] = None + CallAs: Optional[CallAsType] = None + +class StackInstanceFilterTypeDef(BaseModel): + Name: Optional[StackInstanceFilterNameType] = None + Values: Optional[str] = None + +class ListStackResourcesInputRequestTypeDef(BaseModel): + StackName: str + NextToken: Optional[str] = None + +class ListStackSetAutoDeploymentTargetsInputRequestTypeDef(BaseModel): + StackSetName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CallAs: Optional[CallAsType] = None + +class StackSetAutoDeploymentTargetSummaryTypeDef(BaseModel): + OrganizationalUnitId: Optional[str] = None + Regions: Optional[List[str]] = None + +class OperationResultFilterTypeDef(BaseModel): + Name: Optional[Literal["OPERATION_RESULT_STATUS"]] = None + Values: Optional[str] = None + +class ListStackSetOperationsInputRequestTypeDef(BaseModel): + StackSetName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CallAs: Optional[CallAsType] = None + +class ListStackSetsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[StackSetStatusType] = None + CallAs: Optional[CallAsType] = None + +class ListStacksInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + StackStatusFilter: Optional[Sequence[StackStatusType]] = None + +class ListTypeRegistrationsInputRequestTypeDef(BaseModel): + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + TypeArn: Optional[str] = None + RegistrationStatusFilter: Optional[RegistrationStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTypeVersionsInputRequestTypeDef(BaseModel): + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + Arn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DeprecatedStatus: Optional[DeprecatedStatusType] = None + PublisherId: Optional[str] = None + +class TypeVersionSummaryTypeDef(BaseModel): + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + VersionId: Optional[str] = None + IsDefaultVersion: Optional[bool] = None + Arn: Optional[str] = None + TimeCreated: Optional[datetime] = None + Description: Optional[str] = None + PublicVersionNumber: Optional[str] = None + +class TypeFiltersTypeDef(BaseModel): + Category: Optional[CategoryType] = None + PublisherId: Optional[str] = None + TypeNamePrefix: Optional[str] = None + +class TypeSummaryTypeDef(BaseModel): + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + DefaultVersionId: Optional[str] = None + TypeArn: Optional[str] = None + LastUpdated: Optional[datetime] = None + Description: Optional[str] = None + PublisherId: Optional[str] = None + OriginalTypeName: Optional[str] = None + PublicVersionNumber: Optional[str] = None + LatestPublicVersion: Optional[str] = None + PublisherIdentity: Optional[IdentityProviderType] = None + PublisherName: Optional[str] = None + IsActivated: Optional[bool] = None + +class ModuleInfoTypeDef(BaseModel): + TypeHierarchy: Optional[str] = None + LogicalIdHierarchy: Optional[str] = None + +class OutputTypeDef(BaseModel): + OutputKey: Optional[str] = None + OutputValue: Optional[str] = None + Description: Optional[str] = None + ExportName: Optional[str] = None + +class ParameterConstraintsTypeDef(BaseModel): + AllowedValues: Optional[List[str]] = None + +class PhysicalResourceIdContextKeyValuePairTypeDef(BaseModel): + Key: str + Value: str + +class PropertyDifferenceTypeDef(BaseModel): + PropertyPath: str + ExpectedValue: str + ActualValue: str + DifferenceType: DifferenceTypeType + +class PublishTypeInputRequestTypeDef(BaseModel): + Type: Optional[ThirdPartyTypeType] = None + Arn: Optional[str] = None + TypeName: Optional[str] = None + PublicVersionNumber: Optional[str] = None + +class RecordHandlerProgressInputRequestTypeDef(BaseModel): + BearerToken: str + OperationStatus: OperationStatusType + CurrentOperationStatus: Optional[OperationStatusType] = None + StatusMessage: Optional[str] = None + ErrorCode: Optional[HandlerErrorCodeType] = None + ResourceModel: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class RegisterPublisherInputRequestTypeDef(BaseModel): + AcceptTermsAndConditions: Optional[bool] = None + ConnectionArn: Optional[str] = None + +class ResourceTargetDefinitionTypeDef(BaseModel): + Attribute: Optional[ResourceAttributeType] = None + Name: Optional[str] = None + RequiresRecreation: Optional[RequiresRecreationType] = None + Path: Optional[str] = None + BeforeValue: Optional[str] = None + AfterValue: Optional[str] = None + AttributeChangeType: Optional[AttributeChangeTypeType] = None + +class RollbackTriggerTypeDef(BaseModel): + Arn: str + Type: str + +class RollbackStackInputRequestTypeDef(BaseModel): + StackName: str + RoleARN: Optional[str] = None + ClientRequestToken: Optional[str] = None + RetainExceptOnCreate: Optional[bool] = None + +class SetStackPolicyInputRequestTypeDef(BaseModel): + StackName: str + StackPolicyBody: Optional[str] = None + StackPolicyURL: Optional[str] = None + +class SetTypeConfigurationInputRequestTypeDef(BaseModel): + Configuration: str + TypeArn: Optional[str] = None + ConfigurationAlias: Optional[str] = None + TypeName: Optional[str] = None + Type: Optional[ThirdPartyTypeType] = None + +class SetTypeDefaultVersionInputRequestTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[RegistryTypeType] = None + TypeName: Optional[str] = None + VersionId: Optional[str] = None + +class SignalResourceInputRequestTypeDef(BaseModel): + StackName: str + LogicalResourceId: str + UniqueId: str + Status: ResourceSignalStatusType + +class StackDriftInformationSummaryTypeDef(BaseModel): + StackDriftStatus: StackDriftStatusType + LastCheckTimestamp: Optional[datetime] = None + +class StackDriftInformationTypeDef(BaseModel): + StackDriftStatus: StackDriftStatusType + LastCheckTimestamp: Optional[datetime] = None + +class StackInstanceComprehensiveStatusTypeDef(BaseModel): + DetailedStatus: Optional[StackInstanceDetailedStatusType] = None + +class StackResourceDriftInformationTypeDef(BaseModel): + StackResourceDriftStatus: StackResourceDriftStatusType + LastCheckTimestamp: Optional[datetime] = None + +class StackResourceDriftInformationSummaryTypeDef(BaseModel): + StackResourceDriftStatus: StackResourceDriftStatusType + LastCheckTimestamp: Optional[datetime] = None + +class StackSetDriftDetectionDetailsTypeDef(BaseModel): + DriftStatus: Optional[StackSetDriftStatusType] = None + DriftDetectionStatus: Optional[StackSetDriftDetectionStatusType] = None + LastDriftCheckTimestamp: Optional[datetime] = None + TotalStackInstancesCount: Optional[int] = None + DriftedStackInstancesCount: Optional[int] = None + InSyncStackInstancesCount: Optional[int] = None + InProgressStackInstancesCount: Optional[int] = None + FailedStackInstancesCount: Optional[int] = None + +class StackSetOperationPreferencesExtraOutputTypeDef(BaseModel): + RegionConcurrencyType: Optional[RegionConcurrencyTypeType] = None + RegionOrder: Optional[List[str]] = None + FailureToleranceCount: Optional[int] = None + FailureTolerancePercentage: Optional[int] = None + MaxConcurrentCount: Optional[int] = None + MaxConcurrentPercentage: Optional[int] = None + ConcurrencyMode: Optional[ConcurrencyModeType] = None + +class StackSetOperationPreferencesOutputTypeDef(BaseModel): + RegionConcurrencyType: Optional[RegionConcurrencyTypeType] = None + RegionOrder: Optional[List[str]] = None + FailureToleranceCount: Optional[int] = None + FailureTolerancePercentage: Optional[int] = None + MaxConcurrentCount: Optional[int] = None + MaxConcurrentPercentage: Optional[int] = None + ConcurrencyMode: Optional[ConcurrencyModeType] = None + +class StackSetOperationStatusDetailsTypeDef(BaseModel): + FailedStackInstancesCount: Optional[int] = None + +class StartResourceScanInputRequestTypeDef(BaseModel): + ClientRequestToken: Optional[str] = None + +class StopStackSetOperationInputRequestTypeDef(BaseModel): + StackSetName: str + OperationId: str + CallAs: Optional[CallAsType] = None + +class TemplateParameterTypeDef(BaseModel): + ParameterKey: Optional[str] = None + DefaultValue: Optional[str] = None + NoEcho: Optional[bool] = None + Description: Optional[str] = None + +class TestTypeInputRequestTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[ThirdPartyTypeType] = None + TypeName: Optional[str] = None + VersionId: Optional[str] = None + LogDeliveryBucket: Optional[str] = None + +class UpdateTerminationProtectionInputRequestTypeDef(BaseModel): + EnableTerminationProtection: bool + StackName: str + +class ValidateTemplateInputRequestTypeDef(BaseModel): + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + +class WarningPropertyTypeDef(BaseModel): + PropertyPath: Optional[str] = None + Required: Optional[bool] = None + Description: Optional[str] = None + +class StackSetOperationResultSummaryTypeDef(BaseModel): + Account: Optional[str] = None + Region: Optional[str] = None + Status: Optional[StackSetOperationResultStatusType] = None + StatusReason: Optional[str] = None + AccountGateResult: Optional[AccountGateResultTypeDef] = None + OrganizationalUnitId: Optional[str] = None + +class ActivateTypeInputRequestTypeDef(BaseModel): + Type: Optional[ThirdPartyTypeType] = None + PublicTypeArn: Optional[str] = None + PublisherId: Optional[str] = None + TypeName: Optional[str] = None + TypeNameAlias: Optional[str] = None + AutoUpdate: Optional[bool] = None + LoggingConfig: Optional[LoggingConfigTypeDef] = None + ExecutionRoleArn: Optional[str] = None + VersionBump: Optional[VersionBumpType] = None + MajorVersion: Optional[int] = None + +class RegisterTypeInputRequestTypeDef(BaseModel): + TypeName: str + SchemaHandlerPackage: str + Type: Optional[RegistryTypeType] = None + LoggingConfig: Optional[LoggingConfigTypeDef] = None + ExecutionRoleArn: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class ActivateTypeOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChangeSetOutputTypeDef(BaseModel): + Id: str + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGeneratedTemplateOutputTypeDef(BaseModel): + GeneratedTemplateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStackInstancesOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStackOutputTypeDef(BaseModel): + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStackSetOutputTypeDef(BaseModel): + StackSetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteStackInstancesOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountLimitsOutputTypeDef(BaseModel): + AccountLimits: List[AccountLimitTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOrganizationsAccessOutputTypeDef(BaseModel): + Status: OrganizationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePublisherOutputTypeDef(BaseModel): + PublisherId: str + PublisherStatus: PublisherStatusType + IdentityProvider: IdentityProviderType + PublisherProfile: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourceScanOutputTypeDef(BaseModel): + ResourceScanId: str + Status: ResourceScanStatusType + StatusReason: str + StartTime: datetime + EndTime: datetime + PercentageCompleted: float + ResourceTypes: List[str] + ResourcesScanned: int + ResourcesRead: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStackDriftDetectionStatusOutputTypeDef(BaseModel): + StackId: str + StackDriftDetectionId: str + StackDriftStatus: StackDriftStatusType + DetectionStatus: StackDriftDetectionStatusType + DetectionStatusReason: str + DriftedStackResourceCount: int + Timestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTypeRegistrationOutputTypeDef(BaseModel): + ProgressStatus: RegistrationStatusType + Description: str + TypeArn: str + TypeVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectStackDriftOutputTypeDef(BaseModel): + StackDriftDetectionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectStackSetDriftOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EstimateTemplateCostOutputTypeDef(BaseModel): + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGeneratedTemplateOutputTypeDef(BaseModel): + Status: GeneratedTemplateStatusType + TemplateBody: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetStackPolicyOutputTypeDef(BaseModel): + StackPolicyBody: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateOutputTypeDef(BaseModel): + TemplateBody: Dict[str, Any] + StagesAvailable: List["TemplateStageType"] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportStacksToStackSetOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImportsOutputTypeDef(BaseModel): + Imports: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTypeRegistrationsOutputTypeDef(BaseModel): + RegistrationTokenList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModuleInfoResponseTypeDef(BaseModel): + TypeHierarchy: str + LogicalIdHierarchy: str + ResponseMetadata: ResponseMetadataTypeDef + +class PublishTypeOutputTypeDef(BaseModel): + PublicTypeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterPublisherOutputTypeDef(BaseModel): + PublisherId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTypeOutputTypeDef(BaseModel): + RegistrationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackStackOutputTypeDef(BaseModel): + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetTypeConfigurationOutputTypeDef(BaseModel): + ConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StackDriftInformationResponseTypeDef(BaseModel): + StackDriftStatus: StackDriftStatusType + LastCheckTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StackResourceDriftInformationResponseTypeDef(BaseModel): + StackResourceDriftStatus: StackResourceDriftStatusType + LastCheckTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StackResourceDriftInformationSummaryResponseTypeDef(BaseModel): + StackResourceDriftStatus: StackResourceDriftStatusType + LastCheckTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartResourceScanOutputTypeDef(BaseModel): + ResourceScanId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestTypeOutputTypeDef(BaseModel): + TypeVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGeneratedTemplateOutputTypeDef(BaseModel): + GeneratedTemplateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStackInstancesOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStackOutputTypeDef(BaseModel): + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStackSetOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTerminationProtectionOutputTypeDef(BaseModel): + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDescribeTypeConfigurationsErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + TypeConfigurationIdentifier: Optional[TypeConfigurationIdentifierTypeDef] = None + +class BatchDescribeTypeConfigurationsInputRequestTypeDef(BaseModel): + TypeConfigurationIdentifiers: Sequence[TypeConfigurationIdentifierTypeDef] + +class ChangeSetHookTargetDetailsTypeDef(BaseModel): + TargetType: Optional[Literal["RESOURCE"]] = None + ResourceTargetDetails: Optional[ChangeSetHookResourceTargetDetailsTypeDef] = None + +class ListChangeSetsOutputTypeDef(BaseModel): + Summaries: List[ChangeSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EstimateTemplateCostInputRequestTypeDef(BaseModel): + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + +class CreateGeneratedTemplateInputRequestTypeDef(BaseModel): + GeneratedTemplateName: str + Resources: Optional[Sequence[ResourceDefinitionTypeDef]] = None + StackName: Optional[str] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + +class UpdateGeneratedTemplateInputRequestTypeDef(BaseModel): + GeneratedTemplateName: str + NewGeneratedTemplateName: Optional[str] = None + AddResources: Optional[Sequence[ResourceDefinitionTypeDef]] = None + RemoveResources: Optional[Sequence[str]] = None + RefreshAllResources: Optional[bool] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + +class CreateStackInstancesInputRequestTypeDef(BaseModel): + StackSetName: str + Regions: Sequence[str] + Accounts: Optional[Sequence[str]] = None + DeploymentTargets: Optional[DeploymentTargetsTypeDef] = None + ParameterOverrides: Optional[Sequence[ParameterTypeDef]] = None + OperationPreferences: Optional[StackSetOperationPreferencesTypeDef] = None + OperationId: Optional[str] = None + CallAs: Optional[CallAsType] = None + +class DeleteStackInstancesInputRequestTypeDef(BaseModel): + StackSetName: str + Regions: Sequence[str] + RetainStacks: bool + Accounts: Optional[Sequence[str]] = None + DeploymentTargets: Optional[DeploymentTargetsTypeDef] = None + OperationPreferences: Optional[StackSetOperationPreferencesTypeDef] = None + OperationId: Optional[str] = None + CallAs: Optional[CallAsType] = None + +class DetectStackSetDriftInputRequestTypeDef(BaseModel): + StackSetName: str + OperationPreferences: Optional[StackSetOperationPreferencesTypeDef] = None + OperationId: Optional[str] = None + CallAs: Optional[CallAsType] = None + +class ImportStacksToStackSetInputRequestTypeDef(BaseModel): + StackSetName: str + StackIds: Optional[Sequence[str]] = None + StackIdsUrl: Optional[str] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + OperationPreferences: Optional[StackSetOperationPreferencesTypeDef] = None + OperationId: Optional[str] = None + CallAs: Optional[CallAsType] = None + +class UpdateStackInstancesInputRequestTypeDef(BaseModel): + StackSetName: str + Regions: Sequence[str] + Accounts: Optional[Sequence[str]] = None + DeploymentTargets: Optional[DeploymentTargetsTypeDef] = None + ParameterOverrides: Optional[Sequence[ParameterTypeDef]] = None + OperationPreferences: Optional[StackSetOperationPreferencesTypeDef] = None + OperationId: Optional[str] = None + CallAs: Optional[CallAsType] = None + +class CreateStackSetInputRequestTypeDef(BaseModel): + StackSetName: str + Description: Optional[str] = None + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + StackId: Optional[str] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AdministrationRoleARN: Optional[str] = None + ExecutionRoleName: Optional[str] = None + PermissionModel: Optional[PermissionModelsType] = None + AutoDeployment: Optional[AutoDeploymentTypeDef] = None + CallAs: Optional[CallAsType] = None + ClientRequestToken: Optional[str] = None + ManagedExecution: Optional[ManagedExecutionTypeDef] = None + +class StackSetSummaryTypeDef(BaseModel): + StackSetName: Optional[str] = None + StackSetId: Optional[str] = None + Description: Optional[str] = None + Status: Optional[StackSetStatusType] = None + AutoDeployment: Optional[AutoDeploymentTypeDef] = None + PermissionModel: Optional[PermissionModelsType] = None + DriftStatus: Optional[StackDriftStatusType] = None + LastDriftCheckTimestamp: Optional[datetime] = None + ManagedExecution: Optional[ManagedExecutionTypeDef] = None + +class UpdateStackSetInputRequestTypeDef(BaseModel): + StackSetName: str + Description: Optional[str] = None + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + UsePreviousTemplate: Optional[bool] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + OperationPreferences: Optional[StackSetOperationPreferencesTypeDef] = None + AdministrationRoleARN: Optional[str] = None + ExecutionRoleName: Optional[str] = None + DeploymentTargets: Optional[DeploymentTargetsTypeDef] = None + PermissionModel: Optional[PermissionModelsType] = None + AutoDeployment: Optional[AutoDeploymentTypeDef] = None + OperationId: Optional[str] = None + Accounts: Optional[Sequence[str]] = None + Regions: Optional[Sequence[str]] = None + CallAs: Optional[CallAsType] = None + ManagedExecution: Optional[ManagedExecutionTypeDef] = None + +class DescribeAccountLimitsInputDescribeAccountLimitsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeChangeSetInputDescribeChangeSetPaginateTypeDef(BaseModel): + ChangeSetName: str + StackName: Optional[str] = None + IncludePropertyValues: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStackEventsInputDescribeStackEventsPaginateTypeDef(BaseModel): + StackName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStacksInputDescribeStacksPaginateTypeDef(BaseModel): + StackName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChangeSetsInputListChangeSetsPaginateTypeDef(BaseModel): + StackName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExportsInputListExportsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGeneratedTemplatesInputListGeneratedTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportsInputListImportsPaginateTypeDef(BaseModel): + ExportName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceScanResourcesInputListResourceScanResourcesPaginateTypeDef(BaseModel): + ResourceScanId: str + ResourceIdentifier: Optional[str] = None + ResourceTypePrefix: Optional[str] = None + TagKey: Optional[str] = None + TagValue: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceScansInputListResourceScansPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStackResourcesInputListStackResourcesPaginateTypeDef(BaseModel): + StackName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStackSetOperationsInputListStackSetOperationsPaginateTypeDef(BaseModel): + StackSetName: str + CallAs: Optional[CallAsType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStackSetsInputListStackSetsPaginateTypeDef(BaseModel): + Status: Optional[StackSetStatusType] = None + CallAs: Optional[CallAsType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStacksInputListStacksPaginateTypeDef(BaseModel): + StackStatusFilter: Optional[Sequence[StackStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeChangeSetInputChangeSetCreateCompleteWaitTypeDef(BaseModel): + ChangeSetName: str + StackName: Optional[str] = None + NextToken: Optional[str] = None + IncludePropertyValues: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStacksInputStackCreateCompleteWaitTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStacksInputStackDeleteCompleteWaitTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStacksInputStackExistsWaitTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStacksInputStackImportCompleteWaitTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStacksInputStackRollbackCompleteWaitTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStacksInputStackUpdateCompleteWaitTypeDef(BaseModel): + StackName: Optional[str] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTypeRegistrationInputTypeRegistrationCompleteWaitTypeDef(BaseModel): + RegistrationToken: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStackEventsOutputTypeDef(BaseModel): + StackEvents: List[StackEventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeTypeOutputTypeDef(BaseModel): + Arn: str + Type: RegistryTypeType + TypeName: str + DefaultVersionId: str + IsDefaultVersion: bool + TypeTestsStatus: TypeTestsStatusType + TypeTestsStatusDescription: str + Description: str + Schema: str + ProvisioningType: ProvisioningTypeType + DeprecatedStatus: DeprecatedStatusType + LoggingConfig: LoggingConfigTypeDef + RequiredActivatedTypes: List[RequiredActivatedTypeTypeDef] + ExecutionRoleArn: str + Visibility: VisibilityType + SourceUrl: str + DocumentationUrl: str + LastUpdated: datetime + TimeCreated: datetime + ConfigurationSchema: str + PublisherId: str + OriginalTypeName: str + OriginalTypeArn: str + PublicVersionNumber: str + LatestPublicVersion: str + IsActivated: bool + AutoUpdate: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListExportsOutputTypeDef(BaseModel): + Exports: List[ExportTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTemplateSummaryInputRequestTypeDef(BaseModel): + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + StackName: Optional[str] = None + StackSetName: Optional[str] = None + CallAs: Optional[CallAsType] = None + TemplateSummaryConfig: Optional[TemplateSummaryConfigTypeDef] = None + +class ListGeneratedTemplatesOutputTypeDef(BaseModel): + Summaries: List[TemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceScanRelatedResourcesInputListResourceScanRelatedResourcesPaginateTypeDef(BaseModel): + ResourceScanId: str + Resources: Sequence[ScannedResourceIdentifierTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceScanRelatedResourcesInputRequestTypeDef(BaseModel): + ResourceScanId: str + Resources: Sequence[ScannedResourceIdentifierTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListResourceScanRelatedResourcesOutputTypeDef(BaseModel): + RelatedResources: List[ScannedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceScanResourcesOutputTypeDef(BaseModel): + Resources: List[ScannedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceScansOutputTypeDef(BaseModel): + ResourceScanSummaries: List[ResourceScanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStackInstancesInputListStackInstancesPaginateTypeDef(BaseModel): + StackSetName: str + Filters: Optional[Sequence[StackInstanceFilterTypeDef]] = None + StackInstanceAccount: Optional[str] = None + StackInstanceRegion: Optional[str] = None + CallAs: Optional[CallAsType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStackInstancesInputRequestTypeDef(BaseModel): + StackSetName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[StackInstanceFilterTypeDef]] = None + StackInstanceAccount: Optional[str] = None + StackInstanceRegion: Optional[str] = None + CallAs: Optional[CallAsType] = None + +class ListStackSetAutoDeploymentTargetsOutputTypeDef(BaseModel): + Summaries: List[StackSetAutoDeploymentTargetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStackSetOperationResultsInputListStackSetOperationResultsPaginateTypeDef(BaseModel): + StackSetName: str + OperationId: str + CallAs: Optional[CallAsType] = None + Filters: Optional[Sequence[OperationResultFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStackSetOperationResultsInputRequestTypeDef(BaseModel): + StackSetName: str + OperationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CallAs: Optional[CallAsType] = None + Filters: Optional[Sequence[OperationResultFilterTypeDef]] = None + +class ListTypeVersionsOutputTypeDef(BaseModel): + TypeVersionSummaries: List[TypeVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTypesInputListTypesPaginateTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + ProvisioningType: Optional[ProvisioningTypeType] = None + DeprecatedStatus: Optional[DeprecatedStatusType] = None + Type: Optional[RegistryTypeType] = None + Filters: Optional[TypeFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTypesInputRequestTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + ProvisioningType: Optional[ProvisioningTypeType] = None + DeprecatedStatus: Optional[DeprecatedStatusType] = None + Type: Optional[RegistryTypeType] = None + Filters: Optional[TypeFiltersTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTypesOutputTypeDef(BaseModel): + TypeSummaries: List[TypeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ParameterDeclarationTypeDef(BaseModel): + ParameterKey: Optional[str] = None + DefaultValue: Optional[str] = None + ParameterType: Optional[str] = None + NoEcho: Optional[bool] = None + Description: Optional[str] = None + ParameterConstraints: Optional[ParameterConstraintsTypeDef] = None + +class StackInstanceResourceDriftsSummaryTypeDef(BaseModel): + StackId: str + LogicalResourceId: str + ResourceType: str + StackResourceDriftStatus: StackResourceDriftStatusType + Timestamp: datetime + PhysicalResourceId: Optional[str] = None + PhysicalResourceIdContext: Optional[ List[PhysicalResourceIdContextKeyValuePairTypeDef] ] = None + PropertyDifferences: Optional[List[PropertyDifferenceTypeDef]] = None + +class StackResourceDriftTypeDef(BaseModel): + StackId: str + LogicalResourceId: str + ResourceType: str + StackResourceDriftStatus: StackResourceDriftStatusType + Timestamp: datetime + PhysicalResourceId: Optional[str] = None + PhysicalResourceIdContext: Optional[ List[PhysicalResourceIdContextKeyValuePairTypeDef] ] = None + ExpectedProperties: Optional[str] = None + ActualProperties: Optional[str] = None + PropertyDifferences: Optional[List[PropertyDifferenceTypeDef]] = None + ModuleInfo: Optional[ModuleInfoTypeDef] = None + +class ResourceChangeDetailTypeDef(BaseModel): + Target: Optional[ResourceTargetDefinitionTypeDef] = None + Evaluation: Optional[EvaluationTypeType] = None + ChangeSource: Optional[ChangeSourceType] = None + CausingEntity: Optional[str] = None + +class RollbackConfigurationExtraOutputTypeDef(BaseModel): + RollbackTriggers: Optional[List[RollbackTriggerTypeDef]] = None + MonitoringTimeInMinutes: Optional[int] = None + +class RollbackConfigurationOutputTypeDef(BaseModel): + RollbackTriggers: Optional[List[RollbackTriggerTypeDef]] = None + MonitoringTimeInMinutes: Optional[int] = None + +class RollbackConfigurationResponseTypeDef(BaseModel): + RollbackTriggers: List[RollbackTriggerTypeDef] + MonitoringTimeInMinutes: int + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackConfigurationTypeDef(BaseModel): + RollbackTriggers: Optional[Sequence[RollbackTriggerTypeDef]] = None + MonitoringTimeInMinutes: Optional[int] = None + +class StackSummaryTypeDef(BaseModel): + StackName: str + CreationTime: datetime + StackStatus: StackStatusType + StackId: Optional[str] = None + TemplateDescription: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + DeletionTime: Optional[datetime] = None + StackStatusReason: Optional[str] = None + ParentId: Optional[str] = None + RootId: Optional[str] = None + DriftInformation: Optional[StackDriftInformationSummaryTypeDef] = None + +class StackInstanceSummaryTypeDef(BaseModel): + StackSetId: Optional[str] = None + Region: Optional[str] = None + Account: Optional[str] = None + StackId: Optional[str] = None + Status: Optional[StackInstanceStatusType] = None + StatusReason: Optional[str] = None + StackInstanceStatus: Optional[StackInstanceComprehensiveStatusTypeDef] = None + OrganizationalUnitId: Optional[str] = None + DriftStatus: Optional[StackDriftStatusType] = None + LastDriftCheckTimestamp: Optional[datetime] = None + LastOperationId: Optional[str] = None + +class StackInstanceTypeDef(BaseModel): + StackSetId: Optional[str] = None + Region: Optional[str] = None + Account: Optional[str] = None + StackId: Optional[str] = None + ParameterOverrides: Optional[List[ParameterTypeDef]] = None + Status: Optional[StackInstanceStatusType] = None + StackInstanceStatus: Optional[StackInstanceComprehensiveStatusTypeDef] = None + StatusReason: Optional[str] = None + OrganizationalUnitId: Optional[str] = None + DriftStatus: Optional[StackDriftStatusType] = None + LastDriftCheckTimestamp: Optional[datetime] = None + LastOperationId: Optional[str] = None + +class StackResourceDetailTypeDef(BaseModel): + LogicalResourceId: str + ResourceType: str + LastUpdatedTimestamp: datetime + ResourceStatus: ResourceStatusType + StackName: Optional[str] = None + StackId: Optional[str] = None + PhysicalResourceId: Optional[str] = None + ResourceStatusReason: Optional[str] = None + Description: Optional[str] = None + Metadata: Optional[str] = None + DriftInformation: Optional[StackResourceDriftInformationTypeDef] = None + ModuleInfo: Optional[ModuleInfoTypeDef] = None + +class StackResourceTypeDef(BaseModel): + LogicalResourceId: str + ResourceType: str + Timestamp: datetime + ResourceStatus: ResourceStatusType + StackName: Optional[str] = None + StackId: Optional[str] = None + PhysicalResourceId: Optional[str] = None + ResourceStatusReason: Optional[str] = None + Description: Optional[str] = None + DriftInformation: Optional[StackResourceDriftInformationTypeDef] = None + ModuleInfo: Optional[ModuleInfoTypeDef] = None + +class StackResourceSummaryTypeDef(BaseModel): + LogicalResourceId: str + ResourceType: str + LastUpdatedTimestamp: datetime + ResourceStatus: ResourceStatusType + PhysicalResourceId: Optional[str] = None + ResourceStatusReason: Optional[str] = None + DriftInformation: Optional[StackResourceDriftInformationSummaryTypeDef] = None + ModuleInfo: Optional[ModuleInfoTypeDef] = None + +class StackSetTypeDef(BaseModel): + StackSetName: Optional[str] = None + StackSetId: Optional[str] = None + Description: Optional[str] = None + Status: Optional[StackSetStatusType] = None + TemplateBody: Optional[str] = None + Parameters: Optional[List[ParameterTypeDef]] = None + Capabilities: Optional[List[CapabilityType]] = None + Tags: Optional[List[TagTypeDef]] = None + StackSetARN: Optional[str] = None + AdministrationRoleARN: Optional[str] = None + ExecutionRoleName: Optional[str] = None + StackSetDriftDetectionDetails: Optional[StackSetDriftDetectionDetailsTypeDef] = None + AutoDeployment: Optional[AutoDeploymentTypeDef] = None + PermissionModel: Optional[PermissionModelsType] = None + OrganizationalUnitIds: Optional[List[str]] = None + ManagedExecution: Optional[ManagedExecutionTypeDef] = None + Regions: Optional[List[str]] = None + +class StackSetOperationSummaryTypeDef(BaseModel): + OperationId: Optional[str] = None + Action: Optional[StackSetOperationActionType] = None + Status: Optional[StackSetOperationStatusType] = None + CreationTimestamp: Optional[datetime] = None + EndTimestamp: Optional[datetime] = None + StatusReason: Optional[str] = None + StatusDetails: Optional[StackSetOperationStatusDetailsTypeDef] = None + OperationPreferences: Optional[StackSetOperationPreferencesOutputTypeDef] = None + +class StackSetOperationTypeDef(BaseModel): + OperationId: Optional[str] = None + StackSetId: Optional[str] = None + Action: Optional[StackSetOperationActionType] = None + Status: Optional[StackSetOperationStatusType] = None + OperationPreferences: Optional[StackSetOperationPreferencesOutputTypeDef] = None + RetainStacks: Optional[bool] = None + AdministrationRoleARN: Optional[str] = None + ExecutionRoleName: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + EndTimestamp: Optional[datetime] = None + DeploymentTargets: Optional[DeploymentTargetsOutputTypeDef] = None + StackSetDriftDetectionDetails: Optional[StackSetDriftDetectionDetailsTypeDef] = None + StatusReason: Optional[str] = None + StatusDetails: Optional[StackSetOperationStatusDetailsTypeDef] = None + +class ValidateTemplateOutputTypeDef(BaseModel): + Parameters: List[TemplateParameterTypeDef] + Description: str + Capabilities: List[CapabilityType] + CapabilitiesReason: str + DeclaredTransforms: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class WarningDetailTypeDef(BaseModel): + Type: Optional[WarningTypeType] = None + Properties: Optional[List[WarningPropertyTypeDef]] = None + +class ListStackSetOperationResultsOutputTypeDef(BaseModel): + Summaries: List[StackSetOperationResultSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchDescribeTypeConfigurationsOutputTypeDef(BaseModel): + Errors: List[BatchDescribeTypeConfigurationsErrorTypeDef] + UnprocessedTypeConfigurations: List[TypeConfigurationIdentifierTypeDef] + TypeConfigurations: List[TypeConfigurationDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeSetHookTypeDef(BaseModel): + InvocationPoint: Optional[Literal["PRE_PROVISION"]] = None + FailureMode: Optional[HookFailureModeType] = None + TypeName: Optional[str] = None + TypeVersionId: Optional[str] = None + TypeConfigurationVersionId: Optional[str] = None + TargetDetails: Optional[ChangeSetHookTargetDetailsTypeDef] = None + +class ListStackSetsOutputTypeDef(BaseModel): + Summaries: List[StackSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTemplateSummaryOutputTypeDef(BaseModel): + Parameters: List[ParameterDeclarationTypeDef] + Description: str + Capabilities: List[CapabilityType] + CapabilitiesReason: str + ResourceTypes: List[str] + Version: str + Metadata: str + DeclaredTransforms: List[str] + ResourceIdentifierSummaries: List[ResourceIdentifierSummaryTypeDef] + Warnings: WarningsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStackInstanceResourceDriftsOutputTypeDef(BaseModel): + Summaries: List[StackInstanceResourceDriftsSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStackResourceDriftsOutputTypeDef(BaseModel): + StackResourceDrifts: List[StackResourceDriftTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DetectStackResourceDriftOutputTypeDef(BaseModel): + StackResourceDrift: StackResourceDriftTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceChangeTypeDef(BaseModel): + PolicyAction: Optional[PolicyActionType] = None + Action: Optional[ChangeActionType] = None + LogicalResourceId: Optional[str] = None + PhysicalResourceId: Optional[str] = None + ResourceType: Optional[str] = None + Replacement: Optional[ReplacementType] = None + Scope: Optional[List[ResourceAttributeType]] = None + Details: Optional[List[ResourceChangeDetailTypeDef]] = None + ChangeSetId: Optional[str] = None + ModuleInfo: Optional[ModuleInfoTypeDef] = None + BeforeContext: Optional[str] = None + AfterContext: Optional[str] = None + +class StackTypeDef(BaseModel): + StackName: str + CreationTime: datetime + StackStatus: StackStatusType + StackId: Optional[str] = None + ChangeSetId: Optional[str] = None + Description: Optional[str] = None + Parameters: Optional[List[ParameterTypeDef]] = None + DeletionTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + RollbackConfiguration: Optional[RollbackConfigurationOutputTypeDef] = None + StackStatusReason: Optional[str] = None + DisableRollback: Optional[bool] = None + NotificationARNs: Optional[List[str]] = None + TimeoutInMinutes: Optional[int] = None + Capabilities: Optional[List[CapabilityType]] = None + Outputs: Optional[List[OutputTypeDef]] = None + RoleARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + EnableTerminationProtection: Optional[bool] = None + ParentId: Optional[str] = None + RootId: Optional[str] = None + DriftInformation: Optional[StackDriftInformationTypeDef] = None + RetainExceptOnCreate: Optional[bool] = None + DeletionMode: Optional[DeletionModeType] = None + DetailedStatus: Optional[DetailedStatusType] = None + +class CreateChangeSetInputRequestTypeDef(BaseModel): + StackName: str + ChangeSetName: str + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + UsePreviousTemplate: Optional[bool] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + ResourceTypes: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + RollbackConfiguration: Optional[RollbackConfigurationTypeDef] = None + NotificationARNs: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + ChangeSetType: Optional[ChangeSetTypeType] = None + ResourcesToImport: Optional[Sequence[ResourceToImportTypeDef]] = None + IncludeNestedStacks: Optional[bool] = None + OnStackFailure: Optional[OnStackFailureType] = None + ImportExistingResources: Optional[bool] = None + +class CreateStackInputRequestTypeDef(BaseModel): + StackName: str + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + DisableRollback: Optional[bool] = None + RollbackConfiguration: Optional[RollbackConfigurationTypeDef] = None + TimeoutInMinutes: Optional[int] = None + NotificationARNs: Optional[Sequence[str]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + ResourceTypes: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + OnFailure: Optional[OnFailureType] = None + StackPolicyBody: Optional[str] = None + StackPolicyURL: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + EnableTerminationProtection: Optional[bool] = None + RetainExceptOnCreate: Optional[bool] = None + +class CreateStackInputServiceResourceCreateStackTypeDef(BaseModel): + StackName: str + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + DisableRollback: Optional[bool] = None + RollbackConfiguration: Optional[RollbackConfigurationTypeDef] = None + TimeoutInMinutes: Optional[int] = None + NotificationARNs: Optional[Sequence[str]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + ResourceTypes: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + OnFailure: Optional[OnFailureType] = None + StackPolicyBody: Optional[str] = None + StackPolicyURL: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + EnableTerminationProtection: Optional[bool] = None + RetainExceptOnCreate: Optional[bool] = None + +class UpdateStackInputRequestTypeDef(BaseModel): + StackName: str + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + UsePreviousTemplate: Optional[bool] = None + StackPolicyDuringUpdateBody: Optional[str] = None + StackPolicyDuringUpdateURL: Optional[str] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + ResourceTypes: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + RollbackConfiguration: Optional[RollbackConfigurationTypeDef] = None + StackPolicyBody: Optional[str] = None + StackPolicyURL: Optional[str] = None + NotificationARNs: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DisableRollback: Optional[bool] = None + ClientRequestToken: Optional[str] = None + RetainExceptOnCreate: Optional[bool] = None + +class UpdateStackInputStackUpdateTypeDef(BaseModel): + TemplateBody: Optional[str] = None + TemplateURL: Optional[str] = None + UsePreviousTemplate: Optional[bool] = None + StackPolicyDuringUpdateBody: Optional[str] = None + StackPolicyDuringUpdateURL: Optional[str] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + Capabilities: Optional[Sequence[CapabilityType]] = None + ResourceTypes: Optional[Sequence[str]] = None + RoleARN: Optional[str] = None + RollbackConfiguration: Optional[RollbackConfigurationTypeDef] = None + StackPolicyBody: Optional[str] = None + StackPolicyURL: Optional[str] = None + NotificationARNs: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DisableRollback: Optional[bool] = None + ClientRequestToken: Optional[str] = None + RetainExceptOnCreate: Optional[bool] = None + +class ListStacksOutputTypeDef(BaseModel): + StackSummaries: List[StackSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStackInstancesOutputTypeDef(BaseModel): + Summaries: List[StackInstanceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStackInstanceOutputTypeDef(BaseModel): + StackInstance: StackInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStackResourceOutputTypeDef(BaseModel): + StackResourceDetail: StackResourceDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStackResourcesOutputTypeDef(BaseModel): + StackResources: List[StackResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStackResourcesOutputTypeDef(BaseModel): + StackResourceSummaries: List[StackResourceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStackSetOutputTypeDef(BaseModel): + StackSet: StackSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStackSetOperationsOutputTypeDef(BaseModel): + Summaries: List[StackSetOperationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStackSetOperationOutputTypeDef(BaseModel): + StackSetOperation: StackSetOperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceDetailTypeDef(BaseModel): + ResourceType: Optional[str] = None + LogicalResourceId: Optional[str] = None + ResourceIdentifier: Optional[Dict[str, str]] = None + ResourceStatus: Optional[GeneratedTemplateResourceStatusType] = None + ResourceStatusReason: Optional[str] = None + Warnings: Optional[List[WarningDetailTypeDef]] = None + +class DescribeChangeSetHooksOutputTypeDef(BaseModel): + ChangeSetId: str + ChangeSetName: str + Hooks: List[ChangeSetHookTypeDef] + Status: ChangeSetHooksStatusType + StackId: str + StackName: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ChangeTypeDef(BaseModel): + Type: Optional[Literal["Resource"]] = None + HookInvocationCount: Optional[int] = None + ResourceChange: Optional[ResourceChangeTypeDef] = None + +class DescribeStacksOutputTypeDef(BaseModel): + Stacks: List[StackTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeGeneratedTemplateOutputTypeDef(BaseModel): + GeneratedTemplateId: str + GeneratedTemplateName: str + Resources: List[ResourceDetailTypeDef] + Status: GeneratedTemplateStatusType + StatusReason: str + CreationTime: datetime + LastUpdatedTime: datetime + Progress: TemplateProgressTypeDef + StackId: str + TemplateConfiguration: TemplateConfigurationTypeDef + TotalWarnings: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChangeSetOutputTypeDef(BaseModel): + ChangeSetName: str + ChangeSetId: str + StackId: str + StackName: str + Description: str + Parameters: List[ParameterTypeDef] + CreationTime: datetime + ExecutionStatus: ExecutionStatusType + Status: ChangeSetStatusType + StatusReason: str + NotificationARNs: List[str] + RollbackConfiguration: RollbackConfigurationOutputTypeDef + Capabilities: List[CapabilityType] + Tags: List[TagTypeDef] + Changes: List[ChangeTypeDef] + IncludeNestedStacks: bool + ParentChangeSetId: str + RootChangeSetId: str + OnStackFailure: OnStackFailureType + ImportExistingResources: bool + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/cloudformation_constants.py b/aws_resource_validator/pydantic_models/cloudformation_constants.py new file mode 100644 index 00000000..162fb654 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudformation_constants.py @@ -0,0 +1,646 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountFilterTypeType = Literal["DIFFERENCE", "INTERSECTION", "NONE", "UNION"] +AccountGateStatusType = Literal["FAILED", "SKIPPED", "SUCCEEDED"] +AttributeChangeTypeType = Literal["Add", "Modify", "Remove"] +CallAsType = Literal["DELEGATED_ADMIN", "SELF"] +CapabilityType = Literal["CAPABILITY_AUTO_EXPAND", "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM"] +CategoryType = Literal["ACTIVATED", "AWS_TYPES", "REGISTERED", "THIRD_PARTY"] +ChangeActionType = Literal["Add", "Dynamic", "Import", "Modify", "Remove"] +ChangeSetCreateCompleteWaiterName = Literal["change_set_create_complete"] +ChangeSetHooksStatusType = Literal["PLANNED", "PLANNING", "UNAVAILABLE"] +ChangeSetStatusType = Literal["CREATE_COMPLETE", + "CREATE_IN_PROGRESS", + "CREATE_PENDING", + "DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_PENDING", + "FAILED",] +ChangeSetTypeType = Literal["CREATE", "IMPORT", "UPDATE"] +ChangeSourceType = Literal["Automatic", + "DirectModification", + "ParameterReference", + "ResourceAttribute", + "ResourceReference",] +ChangeTypeType = Literal["Resource"] +ConcurrencyModeType = Literal["SOFT_FAILURE_TOLERANCE", "STRICT_FAILURE_TOLERANCE"] +DeletionModeType = Literal["FORCE_DELETE_STACK", "STANDARD"] +DeprecatedStatusType = Literal["DEPRECATED", "LIVE"] +DescribeAccountLimitsPaginatorName = Literal["describe_account_limits"] +DescribeChangeSetPaginatorName = Literal["describe_change_set"] +DescribeStackEventsPaginatorName = Literal["describe_stack_events"] +DescribeStacksPaginatorName = Literal["describe_stacks"] +DetailedStatusType = Literal["CONFIGURATION_COMPLETE", "VALIDATION_FAILED"] +DifferenceTypeType = Literal["ADD", "NOT_EQUAL", "REMOVE"] +EvaluationTypeType = Literal["Dynamic", "Static"] +ExecutionStatusType = Literal["AVAILABLE", + "EXECUTE_COMPLETE", + "EXECUTE_FAILED", + "EXECUTE_IN_PROGRESS", + "OBSOLETE", + "UNAVAILABLE",] +GeneratedTemplateDeletionPolicyType = Literal["DELETE", "RETAIN"] +GeneratedTemplateResourceStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS", "PENDING"] +GeneratedTemplateStatusType = Literal["COMPLETE", + "CREATE_IN_PROGRESS", + "CREATE_PENDING", + "DELETE_IN_PROGRESS", + "DELETE_PENDING", + "FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_PENDING",] +GeneratedTemplateUpdateReplacePolicyType = Literal["DELETE", "RETAIN"] +HandlerErrorCodeType = Literal["AccessDenied", + "AlreadyExists", + "GeneralServiceException", + "HandlerInternalFailure", + "InternalFailure", + "InvalidCredentials", + "InvalidRequest", + "InvalidTypeConfiguration", + "NetworkFailure", + "NonCompliant", + "NotFound", + "NotStabilized", + "NotUpdatable", + "ResourceConflict", + "ServiceInternalError", + "ServiceLimitExceeded", + "Throttling", + "Unknown", + "UnsupportedTarget",] +HookFailureModeType = Literal["FAIL", "WARN"] +HookInvocationPointType = Literal["PRE_PROVISION"] +HookStatusType = Literal["HOOK_COMPLETE_FAILED", "HOOK_COMPLETE_SUCCEEDED", "HOOK_FAILED", "HOOK_IN_PROGRESS"] +HookTargetTypeType = Literal["RESOURCE"] +IdentityProviderType = Literal["AWS_Marketplace", "Bitbucket", "GitHub"] +ListChangeSetsPaginatorName = Literal["list_change_sets"] +ListExportsPaginatorName = Literal["list_exports"] +ListGeneratedTemplatesPaginatorName = Literal["list_generated_templates"] +ListImportsPaginatorName = Literal["list_imports"] +ListResourceScanRelatedResourcesPaginatorName = Literal["list_resource_scan_related_resources"] +ListResourceScanResourcesPaginatorName = Literal["list_resource_scan_resources"] +ListResourceScansPaginatorName = Literal["list_resource_scans"] +ListStackInstancesPaginatorName = Literal["list_stack_instances"] +ListStackResourcesPaginatorName = Literal["list_stack_resources"] +ListStackSetOperationResultsPaginatorName = Literal["list_stack_set_operation_results"] +ListStackSetOperationsPaginatorName = Literal["list_stack_set_operations"] +ListStackSetsPaginatorName = Literal["list_stack_sets"] +ListStacksPaginatorName = Literal["list_stacks"] +ListTypesPaginatorName = Literal["list_types"] +OnFailureType = Literal["DELETE", "DO_NOTHING", "ROLLBACK"] +OnStackFailureType = Literal["DELETE", "DO_NOTHING", "ROLLBACK"] +OperationResultFilterNameType = Literal["OPERATION_RESULT_STATUS"] +OperationStatusType = Literal["FAILED", "IN_PROGRESS", "PENDING", "SUCCESS"] +OrganizationStatusType = Literal["DISABLED", "DISABLED_PERMANENTLY", "ENABLED"] +PermissionModelsType = Literal["SELF_MANAGED", "SERVICE_MANAGED"] +PolicyActionType = Literal["Delete", "ReplaceAndDelete", "ReplaceAndRetain", "ReplaceAndSnapshot", "Retain", "Snapshot"] +ProvisioningTypeType = Literal["FULLY_MUTABLE", "IMMUTABLE", "NON_PROVISIONABLE"] +PublisherStatusType = Literal["UNVERIFIED", "VERIFIED"] +RegionConcurrencyTypeType = Literal["PARALLEL", "SEQUENTIAL"] +RegistrationStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS"] +RegistryTypeType = Literal["HOOK", "MODULE", "RESOURCE"] +ReplacementType = Literal["Conditional", "False", "True"] +RequiresRecreationType = Literal["Always", "Conditionally", "Never"] +ResourceAttributeType = Literal["CreationPolicy", + "DeletionPolicy", + "Metadata", + "Properties", + "Tags", + "UpdatePolicy", + "UpdateReplacePolicy",] +ResourceScanStatusType = Literal["COMPLETE", "EXPIRED", "FAILED", "IN_PROGRESS"] +ResourceSignalStatusType = Literal["FAILURE", "SUCCESS"] +ResourceStatusType = Literal["CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_SKIPPED", + "IMPORT_COMPLETE", + "IMPORT_FAILED", + "IMPORT_IN_PROGRESS", + "IMPORT_ROLLBACK_COMPLETE", + "IMPORT_ROLLBACK_FAILED", + "IMPORT_ROLLBACK_IN_PROGRESS", + "ROLLBACK_COMPLETE", + "ROLLBACK_FAILED", + "ROLLBACK_IN_PROGRESS", + "UPDATE_COMPLETE", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_ROLLBACK_COMPLETE", + "UPDATE_ROLLBACK_FAILED", + "UPDATE_ROLLBACK_IN_PROGRESS",] +StackCreateCompleteWaiterName = Literal["stack_create_complete"] +StackDeleteCompleteWaiterName = Literal["stack_delete_complete"] +StackDriftDetectionStatusType = Literal["DETECTION_COMPLETE", "DETECTION_FAILED", "DETECTION_IN_PROGRESS"] +StackDriftStatusType = Literal["DRIFTED", "IN_SYNC", "NOT_CHECKED", "UNKNOWN"] +StackExistsWaiterName = Literal["stack_exists"] +StackImportCompleteWaiterName = Literal["stack_import_complete"] +StackInstanceDetailedStatusType = Literal["CANCELLED", + "FAILED", + "FAILED_IMPORT", + "INOPERABLE", + "PENDING", + "RUNNING", + "SKIPPED_SUSPENDED_ACCOUNT", + "SUCCEEDED",] +StackInstanceFilterNameType = Literal["DETAILED_STATUS", "DRIFT_STATUS", "LAST_OPERATION_ID"] +StackInstanceStatusType = Literal["CURRENT", "INOPERABLE", "OUTDATED"] +StackResourceDriftStatusType = Literal["DELETED", "IN_SYNC", "MODIFIED", "NOT_CHECKED"] +StackRollbackCompleteWaiterName = Literal["stack_rollback_complete"] +StackSetDriftDetectionStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "PARTIAL_SUCCESS", "STOPPED"] +StackSetDriftStatusType = Literal["DRIFTED", "IN_SYNC", "NOT_CHECKED"] +StackSetOperationActionType = Literal["CREATE", "DELETE", "DETECT_DRIFT", "UPDATE"] +StackSetOperationResultStatusType = Literal["CANCELLED", "FAILED", "PENDING", "RUNNING", "SUCCEEDED"] +StackSetOperationStatusType = Literal["FAILED", "QUEUED", "RUNNING", "STOPPED", "STOPPING", "SUCCEEDED"] +StackSetStatusType = Literal["ACTIVE", "DELETED"] +StackStatusType = Literal["CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "IMPORT_COMPLETE", + "IMPORT_IN_PROGRESS", + "IMPORT_ROLLBACK_COMPLETE", + "IMPORT_ROLLBACK_FAILED", + "IMPORT_ROLLBACK_IN_PROGRESS", + "REVIEW_IN_PROGRESS", + "ROLLBACK_COMPLETE", + "ROLLBACK_FAILED", + "ROLLBACK_IN_PROGRESS", + "UPDATE_COMPLETE", + "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_ROLLBACK_COMPLETE", + "UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS", + "UPDATE_ROLLBACK_FAILED", + "UPDATE_ROLLBACK_IN_PROGRESS",] +StackUpdateCompleteWaiterName = Literal["stack_update_complete"] +TemplateFormatType = Literal["JSON", "YAML"] +TemplateStageType = Literal["Original", "Processed"] +ThirdPartyTypeType = Literal["HOOK", "MODULE", "RESOURCE"] +TypeRegistrationCompleteWaiterName = Literal["type_registration_complete"] +TypeTestsStatusType = Literal["FAILED", "IN_PROGRESS", "NOT_TESTED", "PASSED"] +VersionBumpType = Literal["MAJOR", "MINOR"] +VisibilityType = Literal["PRIVATE", "PUBLIC"] +WarningTypeType = Literal["MUTUALLY_EXCLUSIVE_PROPERTIES", "MUTUALLY_EXCLUSIVE_TYPES", "UNSUPPORTED_PROPERTIES"] +CloudFormationServiceName = Literal["cloudformation"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_account_limits", + "describe_change_set", + "describe_stack_events", + "describe_stacks", + "list_change_sets", + "list_exports", + "list_generated_templates", + "list_imports", + "list_resource_scan_related_resources", + "list_resource_scan_resources", + "list_resource_scans", + "list_stack_instances", + "list_stack_resources", + "list_stack_set_operation_results", + "list_stack_set_operations", + "list_stack_sets", + "list_stacks", + "list_types",] +WaiterName = Literal["change_set_create_complete", + "stack_create_complete", + "stack_delete_complete", + "stack_exists", + "stack_import_complete", + "stack_rollback_complete", + "stack_update_complete", + "type_registration_complete",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +DeploymentTargetsUnionTypeDef = Union['DeploymentTargetsTypeDef', 'DeploymentTargetsOutputTypeDef'] +StackSetOperationPreferencesUnionTypeDef = Union[ 'StackSetOperationPreferencesTypeDef', 'StackSetOperationPreferencesExtraOutputTypeDef' ] +RollbackConfigurationUnionTypeDef = Union[ 'RollbackConfigurationTypeDef', 'RollbackConfigurationExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/cloudfront_classes.py b/aws_resource_validator/pydantic_models/cloudfront_classes.py new file mode 100644 index 00000000..a07767c9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudfront_classes.py @@ -0,0 +1,2207 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudfront_constants import * + +class AliasICPRecordalTypeDef(BaseModel): + CNAME: Optional[str] = None + ICPRecordalStatus: Optional[ICPRecordalStatusType] = None + +class AliasesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class AliasesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class CachedMethodsOutputTypeDef(BaseModel): + Quantity: int + Items: List[MethodType] + +class CachedMethodsTypeDef(BaseModel): + Quantity: int + Items: Sequence[MethodType] + +class AssociateAliasRequestRequestTypeDef(BaseModel): + TargetDistributionId: str + Alias: str + +class TrustedKeyGroupsOutputTypeDef(BaseModel): + Enabled: bool + Quantity: int + Items: Optional[List[str]] = None + +class TrustedSignersOutputTypeDef(BaseModel): + Enabled: bool + Quantity: int + Items: Optional[List[str]] = None + +class TrustedKeyGroupsTypeDef(BaseModel): + Enabled: bool + Quantity: int + Items: Optional[Sequence[str]] = None + +class TrustedSignersTypeDef(BaseModel): + Enabled: bool + Quantity: int + Items: Optional[Sequence[str]] = None + +class CookieNamesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class CookieNamesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class HeadersOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class HeadersTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class QueryStringNamesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class QueryStringNamesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class CloudFrontOriginAccessIdentityConfigTypeDef(BaseModel): + CallerReference: str + Comment: str + +class CloudFrontOriginAccessIdentitySummaryTypeDef(BaseModel): + Id: str + S3CanonicalUserId: str + Comment: str + +class ConflictingAliasTypeDef(BaseModel): + Alias: Optional[str] = None + DistributionId: Optional[str] = None + AccountId: Optional[str] = None + +class ContentTypeProfileTypeDef(BaseModel): + Format: Literal["URLEncoded"] + ContentType: str + ProfileId: Optional[str] = None + +class StagingDistributionDnsNamesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class StagingDistributionDnsNamesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class ContinuousDeploymentSingleHeaderConfigTypeDef(BaseModel): + Header: str + Value: str + +class SessionStickinessConfigTypeDef(BaseModel): + IdleTTL: int + MaximumTTL: int + +class CopyDistributionRequestRequestTypeDef(BaseModel): + PrimaryDistributionId: str + CallerReference: str + Staging: Optional[bool] = None + IfMatch: Optional[str] = None + Enabled: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class KeyGroupConfigTypeDef(BaseModel): + Name: str + Items: Sequence[str] + Comment: Optional[str] = None + +class ImportSourceTypeDef(BaseModel): + SourceType: Literal["S3"] + SourceARN: str + +class KeyValueStoreTypeDef(BaseModel): + Name: str + Id: str + Comment: str + ARN: str + LastModifiedTime: datetime + Status: Optional[str] = None + +class OriginAccessControlConfigTypeDef(BaseModel): + Name: str + SigningProtocol: Literal["sigv4"] + SigningBehavior: OriginAccessControlSigningBehaviorsType + OriginAccessControlOriginType: OriginAccessControlOriginTypesType + Description: Optional[str] = None + +class PublicKeyConfigTypeDef(BaseModel): + CallerReference: str + Name: str + EncodedKey: str + Comment: Optional[str] = None + +class CustomErrorResponseTypeDef(BaseModel): + ErrorCode: int + ResponsePagePath: Optional[str] = None + ResponseCode: Optional[str] = None + ErrorCachingMinTTL: Optional[int] = None + +class OriginCustomHeaderTypeDef(BaseModel): + HeaderName: str + HeaderValue: str + +class OriginSslProtocolsOutputTypeDef(BaseModel): + Quantity: int + Items: List[SslProtocolType] + +class OriginSslProtocolsTypeDef(BaseModel): + Quantity: int + Items: Sequence[SslProtocolType] + +class DeleteCachePolicyRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteCloudFrontOriginAccessIdentityRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteContinuousDeploymentPolicyRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteDistributionRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteFieldLevelEncryptionConfigRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteFieldLevelEncryptionProfileRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteFunctionRequestRequestTypeDef(BaseModel): + Name: str + IfMatch: str + +class DeleteKeyGroupRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteKeyValueStoreRequestRequestTypeDef(BaseModel): + Name: str + IfMatch: str + +class DeleteMonitoringSubscriptionRequestRequestTypeDef(BaseModel): + DistributionId: str + +class DeleteOriginAccessControlRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteOriginRequestPolicyRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeletePublicKeyRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteRealtimeLogConfigRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + ARN: Optional[str] = None + +class DeleteResponseHeadersPolicyRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DeleteStreamingDistributionRequestRequestTypeDef(BaseModel): + Id: str + IfMatch: Optional[str] = None + +class DescribeFunctionRequestRequestTypeDef(BaseModel): + Name: str + Stage: Optional[FunctionStageType] = None + +class DescribeKeyValueStoreRequestRequestTypeDef(BaseModel): + Name: str + +class LoggingConfigTypeDef(BaseModel): + Enabled: bool + IncludeCookies: bool + Bucket: str + Prefix: str + +class ViewerCertificateTypeDef(BaseModel): + CloudFrontDefaultCertificate: Optional[bool] = None + IAMCertificateId: Optional[str] = None + ACMCertificateArn: Optional[str] = None + SSLSupportMethod: Optional[SSLSupportMethodType] = None + MinimumProtocolVersion: Optional[MinimumProtocolVersionType] = None + Certificate: Optional[str] = None + CertificateSource: Optional[CertificateSourceType] = None + +class DistributionIdListTypeDef(BaseModel): + Marker: str + MaxItems: int + IsTruncated: bool + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[str]] = None + +class FieldPatternsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class FieldPatternsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class KinesisStreamConfigTypeDef(BaseModel): + RoleARN: str + StreamARN: str + +class QueryStringCacheKeysOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class QueryStringCacheKeysTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class FunctionAssociationTypeDef(BaseModel): + FunctionARN: str + EventType: EventTypeType + +class FunctionMetadataTypeDef(BaseModel): + FunctionARN: str + LastModifiedTime: datetime + Stage: Optional[FunctionStageType] = None + CreatedTime: Optional[datetime] = None + +class GeoRestrictionOutputTypeDef(BaseModel): + RestrictionType: GeoRestrictionTypeType + Quantity: int + Items: Optional[List[str]] = None + +class GeoRestrictionTypeDef(BaseModel): + RestrictionType: GeoRestrictionTypeType + Quantity: int + Items: Optional[Sequence[str]] = None + +class GetCachePolicyConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetCachePolicyRequestRequestTypeDef(BaseModel): + Id: str + +class GetCloudFrontOriginAccessIdentityConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetCloudFrontOriginAccessIdentityRequestRequestTypeDef(BaseModel): + Id: str + +class GetContinuousDeploymentPolicyConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetContinuousDeploymentPolicyRequestRequestTypeDef(BaseModel): + Id: str + +class GetDistributionConfigRequestRequestTypeDef(BaseModel): + Id: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetDistributionRequestRequestTypeDef(BaseModel): + Id: str + +class GetFieldLevelEncryptionConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetFieldLevelEncryptionProfileConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetFieldLevelEncryptionProfileRequestRequestTypeDef(BaseModel): + Id: str + +class GetFieldLevelEncryptionRequestRequestTypeDef(BaseModel): + Id: str + +class GetFunctionRequestRequestTypeDef(BaseModel): + Name: str + Stage: Optional[FunctionStageType] = None + +class GetInvalidationRequestRequestTypeDef(BaseModel): + DistributionId: str + Id: str + +class GetKeyGroupConfigRequestRequestTypeDef(BaseModel): + Id: str + +class KeyGroupConfigOutputTypeDef(BaseModel): + Name: str + Items: List[str] + Comment: Optional[str] = None + +class GetKeyGroupRequestRequestTypeDef(BaseModel): + Id: str + +class GetMonitoringSubscriptionRequestRequestTypeDef(BaseModel): + DistributionId: str + +class GetOriginAccessControlConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetOriginAccessControlRequestRequestTypeDef(BaseModel): + Id: str + +class GetOriginRequestPolicyConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetOriginRequestPolicyRequestRequestTypeDef(BaseModel): + Id: str + +class GetPublicKeyConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetPublicKeyRequestRequestTypeDef(BaseModel): + Id: str + +class GetRealtimeLogConfigRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + ARN: Optional[str] = None + +class GetResponseHeadersPolicyConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetResponseHeadersPolicyRequestRequestTypeDef(BaseModel): + Id: str + +class GetStreamingDistributionConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetStreamingDistributionRequestRequestTypeDef(BaseModel): + Id: str + +class PathsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class PathsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class InvalidationSummaryTypeDef(BaseModel): + Id: str + CreateTime: datetime + Status: str + +class KeyPairIdsTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class KeyValueStoreAssociationTypeDef(BaseModel): + KeyValueStoreARN: str + +class LambdaFunctionAssociationTypeDef(BaseModel): + LambdaFunctionARN: str + EventType: EventTypeType + IncludeBody: Optional[bool] = None + +class ListCachePoliciesRequestRequestTypeDef(BaseModel): + Type: Optional[CachePolicyTypeType] = None + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListCloudFrontOriginAccessIdentitiesRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListConflictingAliasesRequestRequestTypeDef(BaseModel): + DistributionId: str + Alias: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListContinuousDeploymentPoliciesRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListDistributionsByCachePolicyIdRequestRequestTypeDef(BaseModel): + CachePolicyId: str + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListDistributionsByKeyGroupRequestRequestTypeDef(BaseModel): + KeyGroupId: str + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListDistributionsByOriginRequestPolicyIdRequestRequestTypeDef(BaseModel): + OriginRequestPolicyId: str + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListDistributionsByRealtimeLogConfigRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + RealtimeLogConfigName: Optional[str] = None + RealtimeLogConfigArn: Optional[str] = None + +class ListDistributionsByResponseHeadersPolicyIdRequestRequestTypeDef(BaseModel): + ResponseHeadersPolicyId: str + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListDistributionsByWebACLIdRequestRequestTypeDef(BaseModel): + WebACLId: str + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListDistributionsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListFieldLevelEncryptionConfigsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListFieldLevelEncryptionProfilesRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListFunctionsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + Stage: Optional[FunctionStageType] = None + +class ListInvalidationsRequestRequestTypeDef(BaseModel): + DistributionId: str + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListKeyGroupsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListKeyValueStoresRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + Status: Optional[str] = None + +class ListOriginAccessControlsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListOriginRequestPoliciesRequestRequestTypeDef(BaseModel): + Type: Optional[OriginRequestPolicyTypeType] = None + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListPublicKeysRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListRealtimeLogConfigsRequestRequestTypeDef(BaseModel): + MaxItems: Optional[str] = None + Marker: Optional[str] = None + +class ListResponseHeadersPoliciesRequestRequestTypeDef(BaseModel): + Type: Optional[ResponseHeadersPolicyTypeType] = None + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListStreamingDistributionsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + Resource: str + +class RealtimeMetricsSubscriptionConfigTypeDef(BaseModel): + RealtimeMetricsSubscriptionStatus: RealtimeMetricsSubscriptionStatusType + +class OriginAccessControlSummaryTypeDef(BaseModel): + Id: str + Description: str + Name: str + SigningProtocol: Literal["sigv4"] + SigningBehavior: OriginAccessControlSigningBehaviorsType + OriginAccessControlOriginType: OriginAccessControlOriginTypesType + +class StatusCodesOutputTypeDef(BaseModel): + Quantity: int + Items: List[int] + +class StatusCodesTypeDef(BaseModel): + Quantity: int + Items: Sequence[int] + +class OriginGroupMemberTypeDef(BaseModel): + OriginId: str + +class OriginShieldTypeDef(BaseModel): + Enabled: bool + OriginShieldRegion: Optional[str] = None + +class S3OriginConfigTypeDef(BaseModel): + OriginAccessIdentity: str + +class PublicKeySummaryTypeDef(BaseModel): + Id: str + Name: str + CreatedTime: datetime + EncodedKey: str + Comment: Optional[str] = None + +class PublishFunctionRequestRequestTypeDef(BaseModel): + Name: str + IfMatch: str + +class QueryArgProfileTypeDef(BaseModel): + QueryArg: str + ProfileId: str + +class ResponseHeadersPolicyAccessControlAllowHeadersOutputTypeDef(BaseModel): + Quantity: int + Items: List[str] + +class ResponseHeadersPolicyAccessControlAllowHeadersTypeDef(BaseModel): + Quantity: int + Items: Sequence[str] + +class ResponseHeadersPolicyAccessControlAllowMethodsOutputTypeDef(BaseModel): + Quantity: int + Items: List[ResponseHeadersPolicyAccessControlAllowMethodsValuesType] + +class ResponseHeadersPolicyAccessControlAllowMethodsTypeDef(BaseModel): + Quantity: int + Items: Sequence[ResponseHeadersPolicyAccessControlAllowMethodsValuesType] + +class ResponseHeadersPolicyAccessControlAllowOriginsOutputTypeDef(BaseModel): + Quantity: int + Items: List[str] + +class ResponseHeadersPolicyAccessControlAllowOriginsTypeDef(BaseModel): + Quantity: int + Items: Sequence[str] + +class ResponseHeadersPolicyAccessControlExposeHeadersOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[str]] = None + +class ResponseHeadersPolicyAccessControlExposeHeadersTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[str]] = None + +class ResponseHeadersPolicyServerTimingHeadersConfigTypeDef(BaseModel): + Enabled: bool + SamplingRate: Optional[float] = None + +class ResponseHeadersPolicyContentSecurityPolicyTypeDef(BaseModel): + Override: bool + ContentSecurityPolicy: str + +class ResponseHeadersPolicyContentTypeOptionsTypeDef(BaseModel): + Override: bool + +class ResponseHeadersPolicyCustomHeaderTypeDef(BaseModel): + Header: str + Value: str + Override: bool + +class ResponseHeadersPolicyFrameOptionsTypeDef(BaseModel): + Override: bool + FrameOption: FrameOptionsListType + +class ResponseHeadersPolicyReferrerPolicyTypeDef(BaseModel): + Override: bool + ReferrerPolicy: ReferrerPolicyListType + +class ResponseHeadersPolicyRemoveHeaderTypeDef(BaseModel): + Header: str + +class ResponseHeadersPolicyStrictTransportSecurityTypeDef(BaseModel): + Override: bool + AccessControlMaxAgeSec: int + IncludeSubdomains: Optional[bool] = None + Preload: Optional[bool] = None + +class ResponseHeadersPolicyXSSProtectionTypeDef(BaseModel): + Override: bool + Protection: bool + ModeBlock: Optional[bool] = None + ReportUri: Optional[str] = None + +class S3OriginTypeDef(BaseModel): + DomainName: str + OriginAccessIdentity: str + +class StreamingLoggingConfigTypeDef(BaseModel): + Enabled: bool + Bucket: str + Prefix: str + +class TagKeysTypeDef(BaseModel): + Items: Optional[Sequence[str]] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class UpdateDistributionWithStagingConfigRequestRequestTypeDef(BaseModel): + Id: str + StagingDistributionId: Optional[str] = None + IfMatch: Optional[str] = None + +class UpdateKeyValueStoreRequestRequestTypeDef(BaseModel): + Name: str + Comment: str + IfMatch: str + +class AllowedMethodsOutputTypeDef(BaseModel): + Quantity: int + Items: List[MethodType] + CachedMethods: Optional[CachedMethodsOutputTypeDef] = None + +class AllowedMethodsTypeDef(BaseModel): + Quantity: int + Items: Sequence[MethodType] + CachedMethods: Optional[CachedMethodsTypeDef] = None + +class TestFunctionRequestRequestTypeDef(BaseModel): + Name: str + IfMatch: str + EventObject: BlobTypeDef + Stage: Optional[FunctionStageType] = None + +class CachePolicyCookiesConfigOutputTypeDef(BaseModel): + CookieBehavior: CachePolicyCookieBehaviorType + Cookies: Optional[CookieNamesOutputTypeDef] = None + +class CookiePreferenceOutputTypeDef(BaseModel): + Forward: ItemSelectionType + WhitelistedNames: Optional[CookieNamesOutputTypeDef] = None + +class OriginRequestPolicyCookiesConfigOutputTypeDef(BaseModel): + CookieBehavior: OriginRequestPolicyCookieBehaviorType + Cookies: Optional[CookieNamesOutputTypeDef] = None + +class CachePolicyCookiesConfigTypeDef(BaseModel): + CookieBehavior: CachePolicyCookieBehaviorType + Cookies: Optional[CookieNamesTypeDef] = None + +class CookiePreferenceTypeDef(BaseModel): + Forward: ItemSelectionType + WhitelistedNames: Optional[CookieNamesTypeDef] = None + +class OriginRequestPolicyCookiesConfigTypeDef(BaseModel): + CookieBehavior: OriginRequestPolicyCookieBehaviorType + Cookies: Optional[CookieNamesTypeDef] = None + +class CachePolicyHeadersConfigOutputTypeDef(BaseModel): + HeaderBehavior: CachePolicyHeaderBehaviorType + Headers: Optional[HeadersOutputTypeDef] = None + +class OriginRequestPolicyHeadersConfigOutputTypeDef(BaseModel): + HeaderBehavior: OriginRequestPolicyHeaderBehaviorType + Headers: Optional[HeadersOutputTypeDef] = None + +class CachePolicyHeadersConfigTypeDef(BaseModel): + HeaderBehavior: CachePolicyHeaderBehaviorType + Headers: Optional[HeadersTypeDef] = None + +class OriginRequestPolicyHeadersConfigTypeDef(BaseModel): + HeaderBehavior: OriginRequestPolicyHeaderBehaviorType + Headers: Optional[HeadersTypeDef] = None + +class CachePolicyQueryStringsConfigOutputTypeDef(BaseModel): + QueryStringBehavior: CachePolicyQueryStringBehaviorType + QueryStrings: Optional[QueryStringNamesOutputTypeDef] = None + +class OriginRequestPolicyQueryStringsConfigOutputTypeDef(BaseModel): + QueryStringBehavior: OriginRequestPolicyQueryStringBehaviorType + QueryStrings: Optional[QueryStringNamesOutputTypeDef] = None + +class CachePolicyQueryStringsConfigTypeDef(BaseModel): + QueryStringBehavior: CachePolicyQueryStringBehaviorType + QueryStrings: Optional[QueryStringNamesTypeDef] = None + +class OriginRequestPolicyQueryStringsConfigTypeDef(BaseModel): + QueryStringBehavior: OriginRequestPolicyQueryStringBehaviorType + QueryStrings: Optional[QueryStringNamesTypeDef] = None + +class CloudFrontOriginAccessIdentityTypeDef(BaseModel): + Id: str + S3CanonicalUserId: str + CloudFrontOriginAccessIdentityConfig: Optional[ CloudFrontOriginAccessIdentityConfigTypeDef ] = None + +class CreateCloudFrontOriginAccessIdentityRequestRequestTypeDef(BaseModel): + CloudFrontOriginAccessIdentityConfig: CloudFrontOriginAccessIdentityConfigTypeDef + +class UpdateCloudFrontOriginAccessIdentityRequestRequestTypeDef(BaseModel): + CloudFrontOriginAccessIdentityConfig: CloudFrontOriginAccessIdentityConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class CloudFrontOriginAccessIdentityListTypeDef(BaseModel): + Marker: str + MaxItems: int + IsTruncated: bool + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[CloudFrontOriginAccessIdentitySummaryTypeDef]] = None + +class ConflictingAliasesListTypeDef(BaseModel): + NextMarker: Optional[str] = None + MaxItems: Optional[int] = None + Quantity: Optional[int] = None + Items: Optional[List[ConflictingAliasTypeDef]] = None + +class ContentTypeProfilesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[ContentTypeProfileTypeDef]] = None + +class ContentTypeProfilesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[ContentTypeProfileTypeDef]] = None + +class ContinuousDeploymentSingleWeightConfigTypeDef(BaseModel): + Weight: float + SessionStickinessConfig: Optional[SessionStickinessConfigTypeDef] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCloudFrontOriginAccessIdentityConfigResultTypeDef(BaseModel): + CloudFrontOriginAccessIdentityConfig: CloudFrontOriginAccessIdentityConfigTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFunctionResultTypeDef(BaseModel): + FunctionCode: StreamingBody + ETag: str + ContentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKeyGroupRequestRequestTypeDef(BaseModel): + KeyGroupConfig: KeyGroupConfigTypeDef + +class UpdateKeyGroupRequestRequestTypeDef(BaseModel): + KeyGroupConfig: KeyGroupConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class CreateKeyValueStoreRequestRequestTypeDef(BaseModel): + Name: str + Comment: Optional[str] = None + ImportSource: Optional[ImportSourceTypeDef] = None + +class CreateKeyValueStoreResultTypeDef(BaseModel): + KeyValueStore: KeyValueStoreTypeDef + ETag: str + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyValueStoreResultTypeDef(BaseModel): + KeyValueStore: KeyValueStoreTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class KeyValueStoreListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[KeyValueStoreTypeDef]] = None + +class UpdateKeyValueStoreResultTypeDef(BaseModel): + KeyValueStore: KeyValueStoreTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOriginAccessControlRequestRequestTypeDef(BaseModel): + OriginAccessControlConfig: OriginAccessControlConfigTypeDef + +class GetOriginAccessControlConfigResultTypeDef(BaseModel): + OriginAccessControlConfig: OriginAccessControlConfigTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class OriginAccessControlTypeDef(BaseModel): + Id: str + OriginAccessControlConfig: Optional[OriginAccessControlConfigTypeDef] = None + +class UpdateOriginAccessControlRequestRequestTypeDef(BaseModel): + OriginAccessControlConfig: OriginAccessControlConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class CreatePublicKeyRequestRequestTypeDef(BaseModel): + PublicKeyConfig: PublicKeyConfigTypeDef + +class GetPublicKeyConfigResultTypeDef(BaseModel): + PublicKeyConfig: PublicKeyConfigTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class PublicKeyTypeDef(BaseModel): + Id: str + CreatedTime: datetime + PublicKeyConfig: PublicKeyConfigTypeDef + +class UpdatePublicKeyRequestRequestTypeDef(BaseModel): + PublicKeyConfig: PublicKeyConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class CustomErrorResponsesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[CustomErrorResponseTypeDef]] = None + +class CustomErrorResponsesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[CustomErrorResponseTypeDef]] = None + +class CustomHeadersOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[OriginCustomHeaderTypeDef]] = None + +class CustomHeadersTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[OriginCustomHeaderTypeDef]] = None + +class CustomOriginConfigOutputTypeDef(BaseModel): + HTTPPort: int + HTTPSPort: int + OriginProtocolPolicy: OriginProtocolPolicyType + OriginSslProtocols: Optional[OriginSslProtocolsOutputTypeDef] = None + OriginReadTimeout: Optional[int] = None + OriginKeepaliveTimeout: Optional[int] = None + +class CustomOriginConfigTypeDef(BaseModel): + HTTPPort: int + HTTPSPort: int + OriginProtocolPolicy: OriginProtocolPolicyType + OriginSslProtocols: Optional[OriginSslProtocolsTypeDef] = None + OriginReadTimeout: Optional[int] = None + OriginKeepaliveTimeout: Optional[int] = None + +class ListDistributionsByCachePolicyIdResultTypeDef(BaseModel): + DistributionIdList: DistributionIdListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributionsByKeyGroupResultTypeDef(BaseModel): + DistributionIdList: DistributionIdListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributionsByOriginRequestPolicyIdResultTypeDef(BaseModel): + DistributionIdList: DistributionIdListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributionsByResponseHeadersPolicyIdResultTypeDef(BaseModel): + DistributionIdList: DistributionIdListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EncryptionEntityOutputTypeDef(BaseModel): + PublicKeyId: str + ProviderId: str + FieldPatterns: FieldPatternsOutputTypeDef + +class EncryptionEntityTypeDef(BaseModel): + PublicKeyId: str + ProviderId: str + FieldPatterns: FieldPatternsTypeDef + +class EndPointTypeDef(BaseModel): + StreamType: str + KinesisStreamConfig: Optional[KinesisStreamConfigTypeDef] = None + +class FunctionAssociationsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[FunctionAssociationTypeDef]] = None + +class FunctionAssociationsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[FunctionAssociationTypeDef]] = None + +class RestrictionsOutputTypeDef(BaseModel): + GeoRestriction: GeoRestrictionOutputTypeDef + +class RestrictionsTypeDef(BaseModel): + GeoRestriction: GeoRestrictionTypeDef + +class GetDistributionRequestDistributionDeployedWaitTypeDef(BaseModel): + Id: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetInvalidationRequestInvalidationCompletedWaitTypeDef(BaseModel): + DistributionId: str + Id: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingDistributionRequestStreamingDistributionDeployedWaitTypeDef(BaseModel): + Id: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetKeyGroupConfigResultTypeDef(BaseModel): + KeyGroupConfig: KeyGroupConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class KeyGroupTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + KeyGroupConfig: KeyGroupConfigOutputTypeDef + +class InvalidationBatchOutputTypeDef(BaseModel): + Paths: PathsOutputTypeDef + CallerReference: str + +class InvalidationBatchTypeDef(BaseModel): + Paths: PathsTypeDef + CallerReference: str + +class InvalidationListTypeDef(BaseModel): + Marker: str + MaxItems: int + IsTruncated: bool + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[InvalidationSummaryTypeDef]] = None + +class KGKeyPairIdsTypeDef(BaseModel): + KeyGroupId: Optional[str] = None + KeyPairIds: Optional[KeyPairIdsTypeDef] = None + +class SignerTypeDef(BaseModel): + AwsAccountNumber: Optional[str] = None + KeyPairIds: Optional[KeyPairIdsTypeDef] = None + +class KeyValueStoreAssociationsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[KeyValueStoreAssociationTypeDef]] = None + +class KeyValueStoreAssociationsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[KeyValueStoreAssociationTypeDef]] = None + +class LambdaFunctionAssociationsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[LambdaFunctionAssociationTypeDef]] = None + +class LambdaFunctionAssociationsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[LambdaFunctionAssociationTypeDef]] = None + +class ListCloudFrontOriginAccessIdentitiesRequestListCloudFrontOriginAccessIdentitiesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDistributionsRequestListDistributionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInvalidationsRequestListInvalidationsPaginateTypeDef(BaseModel): + DistributionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeyValueStoresRequestListKeyValueStoresPaginateTypeDef(BaseModel): + Status: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamingDistributionsRequestListStreamingDistributionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class MonitoringSubscriptionTypeDef(BaseModel): + RealtimeMetricsSubscriptionConfig: Optional[RealtimeMetricsSubscriptionConfigTypeDef] = None + +class OriginAccessControlListTypeDef(BaseModel): + Marker: str + MaxItems: int + IsTruncated: bool + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[OriginAccessControlSummaryTypeDef]] = None + +class OriginGroupFailoverCriteriaOutputTypeDef(BaseModel): + StatusCodes: StatusCodesOutputTypeDef + +class OriginGroupFailoverCriteriaTypeDef(BaseModel): + StatusCodes: StatusCodesTypeDef + +class OriginGroupMembersOutputTypeDef(BaseModel): + Quantity: int + Items: List[OriginGroupMemberTypeDef] + +class OriginGroupMembersTypeDef(BaseModel): + Quantity: int + Items: Sequence[OriginGroupMemberTypeDef] + +class PublicKeyListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[PublicKeySummaryTypeDef]] = None + +class QueryArgProfilesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[QueryArgProfileTypeDef]] = None + +class QueryArgProfilesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[QueryArgProfileTypeDef]] = None + +class ResponseHeadersPolicyCorsConfigOutputTypeDef(BaseModel): + AccessControlAllowOrigins: ResponseHeadersPolicyAccessControlAllowOriginsOutputTypeDef + AccessControlAllowHeaders: ResponseHeadersPolicyAccessControlAllowHeadersOutputTypeDef + AccessControlAllowMethods: ResponseHeadersPolicyAccessControlAllowMethodsOutputTypeDef + AccessControlAllowCredentials: bool + OriginOverride: bool + AccessControlExposeHeaders: Optional[ ResponseHeadersPolicyAccessControlExposeHeadersOutputTypeDef ] = None + AccessControlMaxAgeSec: Optional[int] = None + +class ResponseHeadersPolicyCorsConfigTypeDef(BaseModel): + AccessControlAllowOrigins: ResponseHeadersPolicyAccessControlAllowOriginsTypeDef + AccessControlAllowHeaders: ResponseHeadersPolicyAccessControlAllowHeadersTypeDef + AccessControlAllowMethods: ResponseHeadersPolicyAccessControlAllowMethodsTypeDef + AccessControlAllowCredentials: bool + OriginOverride: bool + AccessControlExposeHeaders: Optional[ ResponseHeadersPolicyAccessControlExposeHeadersTypeDef ] = None + AccessControlMaxAgeSec: Optional[int] = None + +class ResponseHeadersPolicyCustomHeadersConfigOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[ResponseHeadersPolicyCustomHeaderTypeDef]] = None + +class ResponseHeadersPolicyCustomHeadersConfigTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[ResponseHeadersPolicyCustomHeaderTypeDef]] = None + +class ResponseHeadersPolicyRemoveHeadersConfigOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[ResponseHeadersPolicyRemoveHeaderTypeDef]] = None + +class ResponseHeadersPolicyRemoveHeadersConfigTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[ResponseHeadersPolicyRemoveHeaderTypeDef]] = None + +class ResponseHeadersPolicySecurityHeadersConfigTypeDef(BaseModel): + XSSProtection: Optional[ResponseHeadersPolicyXSSProtectionTypeDef] = None + FrameOptions: Optional[ResponseHeadersPolicyFrameOptionsTypeDef] = None + ReferrerPolicy: Optional[ResponseHeadersPolicyReferrerPolicyTypeDef] = None + ContentSecurityPolicy: Optional[ResponseHeadersPolicyContentSecurityPolicyTypeDef] = None + ContentTypeOptions: Optional[ResponseHeadersPolicyContentTypeOptionsTypeDef] = None + StrictTransportSecurity: Optional[ResponseHeadersPolicyStrictTransportSecurityTypeDef] = None + +class StreamingDistributionSummaryTypeDef(BaseModel): + Id: str + ARN: str + Status: str + LastModifiedTime: datetime + DomainName: str + S3Origin: S3OriginTypeDef + Aliases: AliasesOutputTypeDef + TrustedSigners: TrustedSignersOutputTypeDef + Comment: str + PriceClass: PriceClassType + Enabled: bool + +class StreamingDistributionConfigOutputTypeDef(BaseModel): + CallerReference: str + S3Origin: S3OriginTypeDef + Comment: str + TrustedSigners: TrustedSignersOutputTypeDef + Enabled: bool + Aliases: Optional[AliasesOutputTypeDef] = None + Logging: Optional[StreamingLoggingConfigTypeDef] = None + PriceClass: Optional[PriceClassType] = None + +class StreamingDistributionConfigTypeDef(BaseModel): + CallerReference: str + S3Origin: S3OriginTypeDef + Comment: str + TrustedSigners: TrustedSignersTypeDef + Enabled: bool + Aliases: Optional[AliasesTypeDef] = None + Logging: Optional[StreamingLoggingConfigTypeDef] = None + PriceClass: Optional[PriceClassType] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + Resource: str + TagKeys: TagKeysTypeDef + +class TagsOutputTypeDef(BaseModel): + Items: Optional[List[TagTypeDef]] = None + +class TagsTypeDef(BaseModel): + Items: Optional[Sequence[TagTypeDef]] = None + +class ForwardedValuesOutputTypeDef(BaseModel): + QueryString: bool + Cookies: CookiePreferenceOutputTypeDef + Headers: Optional[HeadersOutputTypeDef] = None + QueryStringCacheKeys: Optional[QueryStringCacheKeysOutputTypeDef] = None + +class ForwardedValuesTypeDef(BaseModel): + QueryString: bool + Cookies: CookiePreferenceTypeDef + Headers: Optional[HeadersTypeDef] = None + QueryStringCacheKeys: Optional[QueryStringCacheKeysTypeDef] = None + +class ParametersInCacheKeyAndForwardedToOriginOutputTypeDef(BaseModel): + EnableAcceptEncodingGzip: bool + HeadersConfig: CachePolicyHeadersConfigOutputTypeDef + CookiesConfig: CachePolicyCookiesConfigOutputTypeDef + QueryStringsConfig: CachePolicyQueryStringsConfigOutputTypeDef + EnableAcceptEncodingBrotli: Optional[bool] = None + +class OriginRequestPolicyConfigOutputTypeDef(BaseModel): + Name: str + HeadersConfig: OriginRequestPolicyHeadersConfigOutputTypeDef + CookiesConfig: OriginRequestPolicyCookiesConfigOutputTypeDef + QueryStringsConfig: OriginRequestPolicyQueryStringsConfigOutputTypeDef + Comment: Optional[str] = None + +class ParametersInCacheKeyAndForwardedToOriginTypeDef(BaseModel): + EnableAcceptEncodingGzip: bool + HeadersConfig: CachePolicyHeadersConfigTypeDef + CookiesConfig: CachePolicyCookiesConfigTypeDef + QueryStringsConfig: CachePolicyQueryStringsConfigTypeDef + EnableAcceptEncodingBrotli: Optional[bool] = None + +class OriginRequestPolicyConfigTypeDef(BaseModel): + Name: str + HeadersConfig: OriginRequestPolicyHeadersConfigTypeDef + CookiesConfig: OriginRequestPolicyCookiesConfigTypeDef + QueryStringsConfig: OriginRequestPolicyQueryStringsConfigTypeDef + Comment: Optional[str] = None + +class CreateCloudFrontOriginAccessIdentityResultTypeDef(BaseModel): + CloudFrontOriginAccessIdentity: CloudFrontOriginAccessIdentityTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCloudFrontOriginAccessIdentityResultTypeDef(BaseModel): + CloudFrontOriginAccessIdentity: CloudFrontOriginAccessIdentityTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCloudFrontOriginAccessIdentityResultTypeDef(BaseModel): + CloudFrontOriginAccessIdentity: CloudFrontOriginAccessIdentityTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCloudFrontOriginAccessIdentitiesResultTypeDef(BaseModel): + CloudFrontOriginAccessIdentityList: CloudFrontOriginAccessIdentityListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConflictingAliasesResultTypeDef(BaseModel): + ConflictingAliasesList: ConflictingAliasesListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ContentTypeProfileConfigOutputTypeDef(BaseModel): + ForwardWhenContentTypeIsUnknown: bool + ContentTypeProfiles: Optional[ContentTypeProfilesOutputTypeDef] = None + +class ContentTypeProfileConfigTypeDef(BaseModel): + ForwardWhenContentTypeIsUnknown: bool + ContentTypeProfiles: Optional[ContentTypeProfilesTypeDef] = None + +class TrafficConfigTypeDef(BaseModel): + Type: ContinuousDeploymentPolicyTypeType + SingleWeightConfig: Optional[ContinuousDeploymentSingleWeightConfigTypeDef] = None + SingleHeaderConfig: Optional[ContinuousDeploymentSingleHeaderConfigTypeDef] = None + +class ListKeyValueStoresResultTypeDef(BaseModel): + KeyValueStoreList: KeyValueStoreListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOriginAccessControlResultTypeDef(BaseModel): + OriginAccessControl: OriginAccessControlTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOriginAccessControlResultTypeDef(BaseModel): + OriginAccessControl: OriginAccessControlTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateOriginAccessControlResultTypeDef(BaseModel): + OriginAccessControl: OriginAccessControlTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePublicKeyResultTypeDef(BaseModel): + PublicKey: PublicKeyTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPublicKeyResultTypeDef(BaseModel): + PublicKey: PublicKeyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePublicKeyResultTypeDef(BaseModel): + PublicKey: PublicKeyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class OriginOutputTypeDef(BaseModel): + Id: str + DomainName: str + OriginPath: Optional[str] = None + CustomHeaders: Optional[CustomHeadersOutputTypeDef] = None + S3OriginConfig: Optional[S3OriginConfigTypeDef] = None + CustomOriginConfig: Optional[CustomOriginConfigOutputTypeDef] = None + ConnectionAttempts: Optional[int] = None + ConnectionTimeout: Optional[int] = None + OriginShield: Optional[OriginShieldTypeDef] = None + OriginAccessControlId: Optional[str] = None + +class OriginTypeDef(BaseModel): + Id: str + DomainName: str + OriginPath: Optional[str] = None + CustomHeaders: Optional[CustomHeadersTypeDef] = None + S3OriginConfig: Optional[S3OriginConfigTypeDef] = None + CustomOriginConfig: Optional[CustomOriginConfigTypeDef] = None + ConnectionAttempts: Optional[int] = None + ConnectionTimeout: Optional[int] = None + OriginShield: Optional[OriginShieldTypeDef] = None + OriginAccessControlId: Optional[str] = None + +class EncryptionEntitiesOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[EncryptionEntityOutputTypeDef]] = None + +class EncryptionEntitiesTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[EncryptionEntityTypeDef]] = None + +class CreateRealtimeLogConfigRequestRequestTypeDef(BaseModel): + EndPoints: Sequence[EndPointTypeDef] + Fields: Sequence[str] + Name: str + SamplingRate: int + +class RealtimeLogConfigTypeDef(BaseModel): + ARN: str + Name: str + SamplingRate: int + EndPoints: List[EndPointTypeDef] + Fields: List[str] + +class UpdateRealtimeLogConfigRequestRequestTypeDef(BaseModel): + EndPoints: Optional[Sequence[EndPointTypeDef]] = None + Fields: Optional[Sequence[str]] = None + Name: Optional[str] = None + ARN: Optional[str] = None + SamplingRate: Optional[int] = None + +class CreateKeyGroupResultTypeDef(BaseModel): + KeyGroup: KeyGroupTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyGroupResultTypeDef(BaseModel): + KeyGroup: KeyGroupTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class KeyGroupSummaryTypeDef(BaseModel): + KeyGroup: KeyGroupTypeDef + +class UpdateKeyGroupResultTypeDef(BaseModel): + KeyGroup: KeyGroupTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class InvalidationTypeDef(BaseModel): + Id: str + Status: str + CreateTime: datetime + InvalidationBatch: InvalidationBatchOutputTypeDef + +class CreateInvalidationRequestRequestTypeDef(BaseModel): + DistributionId: str + InvalidationBatch: InvalidationBatchTypeDef + +class ListInvalidationsResultTypeDef(BaseModel): + InvalidationList: InvalidationListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ActiveTrustedKeyGroupsTypeDef(BaseModel): + Enabled: bool + Quantity: int + Items: Optional[List[KGKeyPairIdsTypeDef]] = None + +class ActiveTrustedSignersTypeDef(BaseModel): + Enabled: bool + Quantity: int + Items: Optional[List[SignerTypeDef]] = None + +class FunctionConfigOutputTypeDef(BaseModel): + Comment: str + Runtime: FunctionRuntimeType + KeyValueStoreAssociations: Optional[KeyValueStoreAssociationsOutputTypeDef] = None + +class FunctionConfigTypeDef(BaseModel): + Comment: str + Runtime: FunctionRuntimeType + KeyValueStoreAssociations: Optional[KeyValueStoreAssociationsTypeDef] = None + +class CreateMonitoringSubscriptionRequestRequestTypeDef(BaseModel): + DistributionId: str + MonitoringSubscription: MonitoringSubscriptionTypeDef + +class CreateMonitoringSubscriptionResultTypeDef(BaseModel): + MonitoringSubscription: MonitoringSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMonitoringSubscriptionResultTypeDef(BaseModel): + MonitoringSubscription: MonitoringSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOriginAccessControlsResultTypeDef(BaseModel): + OriginAccessControlList: OriginAccessControlListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OriginGroupOutputTypeDef(BaseModel): + Id: str + FailoverCriteria: OriginGroupFailoverCriteriaOutputTypeDef + Members: OriginGroupMembersOutputTypeDef + +class OriginGroupTypeDef(BaseModel): + Id: str + FailoverCriteria: OriginGroupFailoverCriteriaTypeDef + Members: OriginGroupMembersTypeDef + +class ListPublicKeysResultTypeDef(BaseModel): + PublicKeyList: PublicKeyListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class QueryArgProfileConfigOutputTypeDef(BaseModel): + ForwardWhenQueryArgProfileIsUnknown: bool + QueryArgProfiles: Optional[QueryArgProfilesOutputTypeDef] = None + +class QueryArgProfileConfigTypeDef(BaseModel): + ForwardWhenQueryArgProfileIsUnknown: bool + QueryArgProfiles: Optional[QueryArgProfilesTypeDef] = None + +class ResponseHeadersPolicyConfigOutputTypeDef(BaseModel): + Name: str + Comment: Optional[str] = None + CorsConfig: Optional[ResponseHeadersPolicyCorsConfigOutputTypeDef] = None + SecurityHeadersConfig: Optional[ResponseHeadersPolicySecurityHeadersConfigTypeDef] = None + ServerTimingHeadersConfig: Optional[ ResponseHeadersPolicyServerTimingHeadersConfigTypeDef ] = None + CustomHeadersConfig: Optional[ResponseHeadersPolicyCustomHeadersConfigOutputTypeDef] = None + RemoveHeadersConfig: Optional[ResponseHeadersPolicyRemoveHeadersConfigOutputTypeDef] = None + +class ResponseHeadersPolicyConfigTypeDef(BaseModel): + Name: str + Comment: Optional[str] = None + CorsConfig: Optional[ResponseHeadersPolicyCorsConfigTypeDef] = None + SecurityHeadersConfig: Optional[ResponseHeadersPolicySecurityHeadersConfigTypeDef] = None + ServerTimingHeadersConfig: Optional[ ResponseHeadersPolicyServerTimingHeadersConfigTypeDef ] = None + CustomHeadersConfig: Optional[ResponseHeadersPolicyCustomHeadersConfigTypeDef] = None + RemoveHeadersConfig: Optional[ResponseHeadersPolicyRemoveHeadersConfigTypeDef] = None + +class StreamingDistributionListTypeDef(BaseModel): + Marker: str + MaxItems: int + IsTruncated: bool + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[StreamingDistributionSummaryTypeDef]] = None + +class GetStreamingDistributionConfigResultTypeDef(BaseModel): + StreamingDistributionConfig: StreamingDistributionConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamingDistributionRequestRequestTypeDef(BaseModel): + StreamingDistributionConfig: StreamingDistributionConfigTypeDef + +class UpdateStreamingDistributionRequestRequestTypeDef(BaseModel): + StreamingDistributionConfig: StreamingDistributionConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class ListTagsForResourceResultTypeDef(BaseModel): + Tags: TagsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StreamingDistributionConfigWithTagsTypeDef(BaseModel): + StreamingDistributionConfig: StreamingDistributionConfigTypeDef + Tags: TagsTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + Resource: str + Tags: TagsTypeDef + +class CacheBehaviorOutputTypeDef(BaseModel): + PathPattern: str + TargetOriginId: str + ViewerProtocolPolicy: ViewerProtocolPolicyType + TrustedSigners: Optional[TrustedSignersOutputTypeDef] = None + TrustedKeyGroups: Optional[TrustedKeyGroupsOutputTypeDef] = None + AllowedMethods: Optional[AllowedMethodsOutputTypeDef] = None + SmoothStreaming: Optional[bool] = None + Compress: Optional[bool] = None + LambdaFunctionAssociations: Optional[LambdaFunctionAssociationsOutputTypeDef] = None + FunctionAssociations: Optional[FunctionAssociationsOutputTypeDef] = None + FieldLevelEncryptionId: Optional[str] = None + RealtimeLogConfigArn: Optional[str] = None + CachePolicyId: Optional[str] = None + OriginRequestPolicyId: Optional[str] = None + ResponseHeadersPolicyId: Optional[str] = None + ForwardedValues: Optional[ForwardedValuesOutputTypeDef] = None + MinTTL: Optional[int] = None + DefaultTTL: Optional[int] = None + MaxTTL: Optional[int] = None + +class DefaultCacheBehaviorOutputTypeDef(BaseModel): + TargetOriginId: str + ViewerProtocolPolicy: ViewerProtocolPolicyType + TrustedSigners: Optional[TrustedSignersOutputTypeDef] = None + TrustedKeyGroups: Optional[TrustedKeyGroupsOutputTypeDef] = None + AllowedMethods: Optional[AllowedMethodsOutputTypeDef] = None + SmoothStreaming: Optional[bool] = None + Compress: Optional[bool] = None + LambdaFunctionAssociations: Optional[LambdaFunctionAssociationsOutputTypeDef] = None + FunctionAssociations: Optional[FunctionAssociationsOutputTypeDef] = None + FieldLevelEncryptionId: Optional[str] = None + RealtimeLogConfigArn: Optional[str] = None + CachePolicyId: Optional[str] = None + OriginRequestPolicyId: Optional[str] = None + ResponseHeadersPolicyId: Optional[str] = None + ForwardedValues: Optional[ForwardedValuesOutputTypeDef] = None + MinTTL: Optional[int] = None + DefaultTTL: Optional[int] = None + MaxTTL: Optional[int] = None + +class CacheBehaviorTypeDef(BaseModel): + PathPattern: str + TargetOriginId: str + ViewerProtocolPolicy: ViewerProtocolPolicyType + TrustedSigners: Optional[TrustedSignersTypeDef] = None + TrustedKeyGroups: Optional[TrustedKeyGroupsTypeDef] = None + AllowedMethods: Optional[AllowedMethodsTypeDef] = None + SmoothStreaming: Optional[bool] = None + Compress: Optional[bool] = None + LambdaFunctionAssociations: Optional[LambdaFunctionAssociationsTypeDef] = None + FunctionAssociations: Optional[FunctionAssociationsTypeDef] = None + FieldLevelEncryptionId: Optional[str] = None + RealtimeLogConfigArn: Optional[str] = None + CachePolicyId: Optional[str] = None + OriginRequestPolicyId: Optional[str] = None + ResponseHeadersPolicyId: Optional[str] = None + ForwardedValues: Optional[ForwardedValuesTypeDef] = None + MinTTL: Optional[int] = None + DefaultTTL: Optional[int] = None + MaxTTL: Optional[int] = None + +class DefaultCacheBehaviorTypeDef(BaseModel): + TargetOriginId: str + ViewerProtocolPolicy: ViewerProtocolPolicyType + TrustedSigners: Optional[TrustedSignersTypeDef] = None + TrustedKeyGroups: Optional[TrustedKeyGroupsTypeDef] = None + AllowedMethods: Optional[AllowedMethodsTypeDef] = None + SmoothStreaming: Optional[bool] = None + Compress: Optional[bool] = None + LambdaFunctionAssociations: Optional[LambdaFunctionAssociationsTypeDef] = None + FunctionAssociations: Optional[FunctionAssociationsTypeDef] = None + FieldLevelEncryptionId: Optional[str] = None + RealtimeLogConfigArn: Optional[str] = None + CachePolicyId: Optional[str] = None + OriginRequestPolicyId: Optional[str] = None + ResponseHeadersPolicyId: Optional[str] = None + ForwardedValues: Optional[ForwardedValuesTypeDef] = None + MinTTL: Optional[int] = None + DefaultTTL: Optional[int] = None + MaxTTL: Optional[int] = None + +class CachePolicyConfigOutputTypeDef(BaseModel): + Name: str + MinTTL: int + Comment: Optional[str] = None + DefaultTTL: Optional[int] = None + MaxTTL: Optional[int] = None + ParametersInCacheKeyAndForwardedToOrigin: Optional[ ParametersInCacheKeyAndForwardedToOriginOutputTypeDef ] = None + +class GetOriginRequestPolicyConfigResultTypeDef(BaseModel): + OriginRequestPolicyConfig: OriginRequestPolicyConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class OriginRequestPolicyTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + OriginRequestPolicyConfig: OriginRequestPolicyConfigOutputTypeDef + +class CachePolicyConfigTypeDef(BaseModel): + Name: str + MinTTL: int + Comment: Optional[str] = None + DefaultTTL: Optional[int] = None + MaxTTL: Optional[int] = None + ParametersInCacheKeyAndForwardedToOrigin: Optional[ ParametersInCacheKeyAndForwardedToOriginTypeDef ] = None + +class CreateOriginRequestPolicyRequestRequestTypeDef(BaseModel): + OriginRequestPolicyConfig: OriginRequestPolicyConfigTypeDef + +class UpdateOriginRequestPolicyRequestRequestTypeDef(BaseModel): + OriginRequestPolicyConfig: OriginRequestPolicyConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class ContinuousDeploymentPolicyConfigOutputTypeDef(BaseModel): + StagingDistributionDnsNames: StagingDistributionDnsNamesOutputTypeDef + Enabled: bool + TrafficConfig: Optional[TrafficConfigTypeDef] = None + +class ContinuousDeploymentPolicyConfigTypeDef(BaseModel): + StagingDistributionDnsNames: StagingDistributionDnsNamesTypeDef + Enabled: bool + TrafficConfig: Optional[TrafficConfigTypeDef] = None + +class OriginsOutputTypeDef(BaseModel): + Quantity: int + Items: List[OriginOutputTypeDef] + +class OriginsTypeDef(BaseModel): + Quantity: int + Items: Sequence[OriginTypeDef] + +class FieldLevelEncryptionProfileConfigOutputTypeDef(BaseModel): + Name: str + CallerReference: str + EncryptionEntities: EncryptionEntitiesOutputTypeDef + Comment: Optional[str] = None + +class FieldLevelEncryptionProfileSummaryTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + Name: str + EncryptionEntities: EncryptionEntitiesOutputTypeDef + Comment: Optional[str] = None + +class FieldLevelEncryptionProfileConfigTypeDef(BaseModel): + Name: str + CallerReference: str + EncryptionEntities: EncryptionEntitiesTypeDef + Comment: Optional[str] = None + +class CreateRealtimeLogConfigResultTypeDef(BaseModel): + RealtimeLogConfig: RealtimeLogConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRealtimeLogConfigResultTypeDef(BaseModel): + RealtimeLogConfig: RealtimeLogConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RealtimeLogConfigsTypeDef(BaseModel): + MaxItems: int + IsTruncated: bool + Marker: str + Items: Optional[List[RealtimeLogConfigTypeDef]] = None + NextMarker: Optional[str] = None + +class UpdateRealtimeLogConfigResultTypeDef(BaseModel): + RealtimeLogConfig: RealtimeLogConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KeyGroupListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[KeyGroupSummaryTypeDef]] = None + +class CreateInvalidationResultTypeDef(BaseModel): + Location: str + Invalidation: InvalidationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInvalidationResultTypeDef(BaseModel): + Invalidation: InvalidationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StreamingDistributionTypeDef(BaseModel): + Id: str + ARN: str + Status: str + DomainName: str + ActiveTrustedSigners: ActiveTrustedSignersTypeDef + StreamingDistributionConfig: StreamingDistributionConfigOutputTypeDef + LastModifiedTime: Optional[datetime] = None + +class FunctionSummaryTypeDef(BaseModel): + Name: str + FunctionConfig: FunctionConfigOutputTypeDef + FunctionMetadata: FunctionMetadataTypeDef + Status: Optional[str] = None + +class CreateFunctionRequestRequestTypeDef(BaseModel): + Name: str + FunctionConfig: FunctionConfigTypeDef + FunctionCode: BlobTypeDef + +class UpdateFunctionRequestRequestTypeDef(BaseModel): + Name: str + IfMatch: str + FunctionConfig: FunctionConfigTypeDef + FunctionCode: BlobTypeDef + +class OriginGroupsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[OriginGroupOutputTypeDef]] = None + +class OriginGroupsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[OriginGroupTypeDef]] = None + +class FieldLevelEncryptionConfigOutputTypeDef(BaseModel): + CallerReference: str + Comment: Optional[str] = None + QueryArgProfileConfig: Optional[QueryArgProfileConfigOutputTypeDef] = None + ContentTypeProfileConfig: Optional[ContentTypeProfileConfigOutputTypeDef] = None + +class FieldLevelEncryptionSummaryTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + Comment: Optional[str] = None + QueryArgProfileConfig: Optional[QueryArgProfileConfigOutputTypeDef] = None + ContentTypeProfileConfig: Optional[ContentTypeProfileConfigOutputTypeDef] = None + +class FieldLevelEncryptionConfigTypeDef(BaseModel): + CallerReference: str + Comment: Optional[str] = None + QueryArgProfileConfig: Optional[QueryArgProfileConfigTypeDef] = None + ContentTypeProfileConfig: Optional[ContentTypeProfileConfigTypeDef] = None + +class GetResponseHeadersPolicyConfigResultTypeDef(BaseModel): + ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResponseHeadersPolicyTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfigOutputTypeDef + +class CreateResponseHeadersPolicyRequestRequestTypeDef(BaseModel): + ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfigTypeDef + +class UpdateResponseHeadersPolicyRequestRequestTypeDef(BaseModel): + ResponseHeadersPolicyConfig: ResponseHeadersPolicyConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class ListStreamingDistributionsResultTypeDef(BaseModel): + StreamingDistributionList: StreamingDistributionListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamingDistributionWithTagsRequestRequestTypeDef(BaseModel): + StreamingDistributionConfigWithTags: StreamingDistributionConfigWithTagsTypeDef + +class CacheBehaviorsOutputTypeDef(BaseModel): + Quantity: int + Items: Optional[List[CacheBehaviorOutputTypeDef]] = None + +class CacheBehaviorsTypeDef(BaseModel): + Quantity: int + Items: Optional[Sequence[CacheBehaviorTypeDef]] = None + +class CachePolicyTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + CachePolicyConfig: CachePolicyConfigOutputTypeDef + +class GetCachePolicyConfigResultTypeDef(BaseModel): + CachePolicyConfig: CachePolicyConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOriginRequestPolicyResultTypeDef(BaseModel): + OriginRequestPolicy: OriginRequestPolicyTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOriginRequestPolicyResultTypeDef(BaseModel): + OriginRequestPolicy: OriginRequestPolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class OriginRequestPolicySummaryTypeDef(BaseModel): + Type: OriginRequestPolicyTypeType + OriginRequestPolicy: OriginRequestPolicyTypeDef + +class UpdateOriginRequestPolicyResultTypeDef(BaseModel): + OriginRequestPolicy: OriginRequestPolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCachePolicyRequestRequestTypeDef(BaseModel): + CachePolicyConfig: CachePolicyConfigTypeDef + +class UpdateCachePolicyRequestRequestTypeDef(BaseModel): + CachePolicyConfig: CachePolicyConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class ContinuousDeploymentPolicyTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + ContinuousDeploymentPolicyConfig: ContinuousDeploymentPolicyConfigOutputTypeDef + +class GetContinuousDeploymentPolicyConfigResultTypeDef(BaseModel): + ContinuousDeploymentPolicyConfig: ContinuousDeploymentPolicyConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContinuousDeploymentPolicyRequestRequestTypeDef(BaseModel): + ContinuousDeploymentPolicyConfig: ContinuousDeploymentPolicyConfigTypeDef + +class UpdateContinuousDeploymentPolicyRequestRequestTypeDef(BaseModel): + ContinuousDeploymentPolicyConfig: ContinuousDeploymentPolicyConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class FieldLevelEncryptionProfileTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + FieldLevelEncryptionProfileConfig: FieldLevelEncryptionProfileConfigOutputTypeDef + +class GetFieldLevelEncryptionProfileConfigResultTypeDef(BaseModel): + FieldLevelEncryptionProfileConfig: FieldLevelEncryptionProfileConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class FieldLevelEncryptionProfileListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[FieldLevelEncryptionProfileSummaryTypeDef]] = None + +class CreateFieldLevelEncryptionProfileRequestRequestTypeDef(BaseModel): + FieldLevelEncryptionProfileConfig: FieldLevelEncryptionProfileConfigTypeDef + +class UpdateFieldLevelEncryptionProfileRequestRequestTypeDef(BaseModel): + FieldLevelEncryptionProfileConfig: FieldLevelEncryptionProfileConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class ListRealtimeLogConfigsResultTypeDef(BaseModel): + RealtimeLogConfigs: RealtimeLogConfigsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyGroupsResultTypeDef(BaseModel): + KeyGroupList: KeyGroupListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamingDistributionResultTypeDef(BaseModel): + StreamingDistribution: StreamingDistributionTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamingDistributionWithTagsResultTypeDef(BaseModel): + StreamingDistribution: StreamingDistributionTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetStreamingDistributionResultTypeDef(BaseModel): + StreamingDistribution: StreamingDistributionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStreamingDistributionResultTypeDef(BaseModel): + StreamingDistribution: StreamingDistributionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFunctionResultTypeDef(BaseModel): + FunctionSummary: FunctionSummaryTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFunctionResultTypeDef(BaseModel): + FunctionSummary: FunctionSummaryTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[FunctionSummaryTypeDef]] = None + +class PublishFunctionResultTypeDef(BaseModel): + FunctionSummary: FunctionSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TestResultTypeDef(BaseModel): + FunctionSummary: Optional[FunctionSummaryTypeDef] = None + ComputeUtilization: Optional[str] = None + FunctionExecutionLogs: Optional[List[str]] = None + FunctionErrorMessage: Optional[str] = None + FunctionOutput: Optional[str] = None + +class UpdateFunctionResultTypeDef(BaseModel): + FunctionSummary: FunctionSummaryTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class FieldLevelEncryptionTypeDef(BaseModel): + Id: str + LastModifiedTime: datetime + FieldLevelEncryptionConfig: FieldLevelEncryptionConfigOutputTypeDef + +class GetFieldLevelEncryptionConfigResultTypeDef(BaseModel): + FieldLevelEncryptionConfig: FieldLevelEncryptionConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class FieldLevelEncryptionListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[FieldLevelEncryptionSummaryTypeDef]] = None + +class CreateFieldLevelEncryptionConfigRequestRequestTypeDef(BaseModel): + FieldLevelEncryptionConfig: FieldLevelEncryptionConfigTypeDef + +class UpdateFieldLevelEncryptionConfigRequestRequestTypeDef(BaseModel): + FieldLevelEncryptionConfig: FieldLevelEncryptionConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class CreateResponseHeadersPolicyResultTypeDef(BaseModel): + ResponseHeadersPolicy: ResponseHeadersPolicyTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResponseHeadersPolicyResultTypeDef(BaseModel): + ResponseHeadersPolicy: ResponseHeadersPolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResponseHeadersPolicySummaryTypeDef(BaseModel): + Type: ResponseHeadersPolicyTypeType + ResponseHeadersPolicy: ResponseHeadersPolicyTypeDef + +class UpdateResponseHeadersPolicyResultTypeDef(BaseModel): + ResponseHeadersPolicy: ResponseHeadersPolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class DistributionConfigOutputTypeDef(BaseModel): + CallerReference: str + Origins: OriginsOutputTypeDef + DefaultCacheBehavior: DefaultCacheBehaviorOutputTypeDef + Comment: str + Enabled: bool + Aliases: Optional[AliasesOutputTypeDef] = None + DefaultRootObject: Optional[str] = None + OriginGroups: Optional[OriginGroupsOutputTypeDef] = None + CacheBehaviors: Optional[CacheBehaviorsOutputTypeDef] = None + CustomErrorResponses: Optional[CustomErrorResponsesOutputTypeDef] = None + Logging: Optional[LoggingConfigTypeDef] = None + PriceClass: Optional[PriceClassType] = None + ViewerCertificate: Optional[ViewerCertificateTypeDef] = None + Restrictions: Optional[RestrictionsOutputTypeDef] = None + WebACLId: Optional[str] = None + HttpVersion: Optional[HttpVersionType] = None + IsIPV6Enabled: Optional[bool] = None + ContinuousDeploymentPolicyId: Optional[str] = None + Staging: Optional[bool] = None + +class DistributionSummaryTypeDef(BaseModel): + Id: str + ARN: str + Status: str + LastModifiedTime: datetime + DomainName: str + Aliases: AliasesOutputTypeDef + Origins: OriginsOutputTypeDef + DefaultCacheBehavior: DefaultCacheBehaviorOutputTypeDef + CacheBehaviors: CacheBehaviorsOutputTypeDef + CustomErrorResponses: CustomErrorResponsesOutputTypeDef + Comment: str + PriceClass: PriceClassType + Enabled: bool + ViewerCertificate: ViewerCertificateTypeDef + Restrictions: RestrictionsOutputTypeDef + WebACLId: str + HttpVersion: HttpVersionType + IsIPV6Enabled: bool + Staging: bool + OriginGroups: Optional[OriginGroupsOutputTypeDef] = None + AliasICPRecordals: Optional[List[AliasICPRecordalTypeDef]] = None + +class DistributionConfigTypeDef(BaseModel): + CallerReference: str + Origins: OriginsTypeDef + DefaultCacheBehavior: DefaultCacheBehaviorTypeDef + Comment: str + Enabled: bool + Aliases: Optional[AliasesTypeDef] = None + DefaultRootObject: Optional[str] = None + OriginGroups: Optional[OriginGroupsTypeDef] = None + CacheBehaviors: Optional[CacheBehaviorsTypeDef] = None + CustomErrorResponses: Optional[CustomErrorResponsesTypeDef] = None + Logging: Optional[LoggingConfigTypeDef] = None + PriceClass: Optional[PriceClassType] = None + ViewerCertificate: Optional[ViewerCertificateTypeDef] = None + Restrictions: Optional[RestrictionsTypeDef] = None + WebACLId: Optional[str] = None + HttpVersion: Optional[HttpVersionType] = None + IsIPV6Enabled: Optional[bool] = None + ContinuousDeploymentPolicyId: Optional[str] = None + Staging: Optional[bool] = None + +class CachePolicySummaryTypeDef(BaseModel): + Type: CachePolicyTypeType + CachePolicy: CachePolicyTypeDef + +class CreateCachePolicyResultTypeDef(BaseModel): + CachePolicy: CachePolicyTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCachePolicyResultTypeDef(BaseModel): + CachePolicy: CachePolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCachePolicyResultTypeDef(BaseModel): + CachePolicy: CachePolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class OriginRequestPolicyListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[OriginRequestPolicySummaryTypeDef]] = None + +class ContinuousDeploymentPolicySummaryTypeDef(BaseModel): + ContinuousDeploymentPolicy: ContinuousDeploymentPolicyTypeDef + +class CreateContinuousDeploymentPolicyResultTypeDef(BaseModel): + ContinuousDeploymentPolicy: ContinuousDeploymentPolicyTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContinuousDeploymentPolicyResultTypeDef(BaseModel): + ContinuousDeploymentPolicy: ContinuousDeploymentPolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContinuousDeploymentPolicyResultTypeDef(BaseModel): + ContinuousDeploymentPolicy: ContinuousDeploymentPolicyTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFieldLevelEncryptionProfileResultTypeDef(BaseModel): + FieldLevelEncryptionProfile: FieldLevelEncryptionProfileTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFieldLevelEncryptionProfileResultTypeDef(BaseModel): + FieldLevelEncryptionProfile: FieldLevelEncryptionProfileTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFieldLevelEncryptionProfileResultTypeDef(BaseModel): + FieldLevelEncryptionProfile: FieldLevelEncryptionProfileTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFieldLevelEncryptionProfilesResultTypeDef(BaseModel): + FieldLevelEncryptionProfileList: FieldLevelEncryptionProfileListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionsResultTypeDef(BaseModel): + FunctionList: FunctionListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TestFunctionResultTypeDef(BaseModel): + TestResult: TestResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFieldLevelEncryptionConfigResultTypeDef(BaseModel): + FieldLevelEncryption: FieldLevelEncryptionTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFieldLevelEncryptionResultTypeDef(BaseModel): + FieldLevelEncryption: FieldLevelEncryptionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFieldLevelEncryptionConfigResultTypeDef(BaseModel): + FieldLevelEncryption: FieldLevelEncryptionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFieldLevelEncryptionConfigsResultTypeDef(BaseModel): + FieldLevelEncryptionList: FieldLevelEncryptionListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResponseHeadersPolicyListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[ResponseHeadersPolicySummaryTypeDef]] = None + +class DistributionTypeDef(BaseModel): + Id: str + ARN: str + Status: str + LastModifiedTime: datetime + InProgressInvalidationBatches: int + DomainName: str + DistributionConfig: DistributionConfigOutputTypeDef + ActiveTrustedSigners: Optional[ActiveTrustedSignersTypeDef] = None + ActiveTrustedKeyGroups: Optional[ActiveTrustedKeyGroupsTypeDef] = None + AliasICPRecordals: Optional[List[AliasICPRecordalTypeDef]] = None + +class GetDistributionConfigResultTypeDef(BaseModel): + DistributionConfig: DistributionConfigOutputTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class DistributionListTypeDef(BaseModel): + Marker: str + MaxItems: int + IsTruncated: bool + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[DistributionSummaryTypeDef]] = None + +class CreateDistributionRequestRequestTypeDef(BaseModel): + DistributionConfig: DistributionConfigTypeDef + +class DistributionConfigWithTagsTypeDef(BaseModel): + DistributionConfig: DistributionConfigTypeDef + Tags: TagsTypeDef + +class UpdateDistributionRequestRequestTypeDef(BaseModel): + DistributionConfig: DistributionConfigTypeDef + Id: str + IfMatch: Optional[str] = None + +class CachePolicyListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[CachePolicySummaryTypeDef]] = None + +class ListOriginRequestPoliciesResultTypeDef(BaseModel): + OriginRequestPolicyList: OriginRequestPolicyListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ContinuousDeploymentPolicyListTypeDef(BaseModel): + MaxItems: int + Quantity: int + NextMarker: Optional[str] = None + Items: Optional[List[ContinuousDeploymentPolicySummaryTypeDef]] = None + +class ListResponseHeadersPoliciesResultTypeDef(BaseModel): + ResponseHeadersPolicyList: ResponseHeadersPolicyListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyDistributionResultTypeDef(BaseModel): + Distribution: DistributionTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDistributionResultTypeDef(BaseModel): + Distribution: DistributionTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDistributionWithTagsResultTypeDef(BaseModel): + Distribution: DistributionTypeDef + Location: str + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDistributionResultTypeDef(BaseModel): + Distribution: DistributionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDistributionResultTypeDef(BaseModel): + Distribution: DistributionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDistributionWithStagingConfigResultTypeDef(BaseModel): + Distribution: DistributionTypeDef + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributionsByRealtimeLogConfigResultTypeDef(BaseModel): + DistributionList: DistributionListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributionsByWebACLIdResultTypeDef(BaseModel): + DistributionList: DistributionListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributionsResultTypeDef(BaseModel): + DistributionList: DistributionListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDistributionWithTagsRequestRequestTypeDef(BaseModel): + DistributionConfigWithTags: DistributionConfigWithTagsTypeDef + +class ListCachePoliciesResultTypeDef(BaseModel): + CachePolicyList: CachePolicyListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListContinuousDeploymentPoliciesResultTypeDef(BaseModel): + ContinuousDeploymentPolicyList: ContinuousDeploymentPolicyListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloudfront_constants.py b/aws_resource_validator/pydantic_models/cloudfront_constants.py new file mode 100644 index 00000000..7c548fc3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudfront_constants.py @@ -0,0 +1,467 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CachePolicyCookieBehaviorType = Literal["all", "allExcept", "none", "whitelist"] +CachePolicyHeaderBehaviorType = Literal["none", "whitelist"] +CachePolicyQueryStringBehaviorType = Literal["all", "allExcept", "none", "whitelist"] +CachePolicyTypeType = Literal["custom", "managed"] +CertificateSourceType = Literal["acm", "cloudfront", "iam"] +ContinuousDeploymentPolicyTypeType = Literal["SingleHeader", "SingleWeight"] +DistributionDeployedWaiterName = Literal["distribution_deployed"] +EventTypeType = Literal["origin-request", "origin-response", "viewer-request", "viewer-response"] +FormatType = Literal["URLEncoded"] +FrameOptionsListType = Literal["DENY", "SAMEORIGIN"] +FunctionRuntimeType = Literal["cloudfront-js-1.0", "cloudfront-js-2.0"] +FunctionStageType = Literal["DEVELOPMENT", "LIVE"] +GeoRestrictionTypeType = Literal["blacklist", "none", "whitelist"] +HttpVersionType = Literal["http1.1", "http2", "http2and3", "http3"] +ICPRecordalStatusType = Literal["APPROVED", "PENDING", "SUSPENDED"] +ImportSourceTypeType = Literal["S3"] +InvalidationCompletedWaiterName = Literal["invalidation_completed"] +ItemSelectionType = Literal["all", "none", "whitelist"] +ListCloudFrontOriginAccessIdentitiesPaginatorName = Literal["list_cloud_front_origin_access_identities"] +ListDistributionsPaginatorName = Literal["list_distributions"] +ListInvalidationsPaginatorName = Literal["list_invalidations"] +ListKeyValueStoresPaginatorName = Literal["list_key_value_stores"] +ListStreamingDistributionsPaginatorName = Literal["list_streaming_distributions"] +MethodType = Literal["DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT"] +MinimumProtocolVersionType = Literal["SSLv3", "TLSv1", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1_2016"] +OriginAccessControlOriginTypesType = Literal["lambda", "mediapackagev2", "mediastore", "s3"] +OriginAccessControlSigningBehaviorsType = Literal["always", "never", "no-override"] +OriginAccessControlSigningProtocolsType = Literal["sigv4"] +OriginProtocolPolicyType = Literal["http-only", "https-only", "match-viewer"] +OriginRequestPolicyCookieBehaviorType = Literal["all", "allExcept", "none", "whitelist"] +OriginRequestPolicyHeaderBehaviorType = Literal["allExcept", "allViewer", "allViewerAndWhitelistCloudFront", "none", "whitelist"] +OriginRequestPolicyQueryStringBehaviorType = Literal["all", "allExcept", "none", "whitelist"] +OriginRequestPolicyTypeType = Literal["custom", "managed"] +PriceClassType = Literal["PriceClass_100", "PriceClass_200", "PriceClass_All"] +RealtimeMetricsSubscriptionStatusType = Literal["Disabled", "Enabled"] +ReferrerPolicyListType = Literal["no-referrer", + "no-referrer-when-downgrade", + "origin", + "origin-when-cross-origin", + "same-origin", + "strict-origin", + "strict-origin-when-cross-origin", + "unsafe-url",] +ResponseHeadersPolicyAccessControlAllowMethodsValuesType = Literal["ALL", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT"] +ResponseHeadersPolicyTypeType = Literal["custom", "managed"] +SSLSupportMethodType = Literal["sni-only", "static-ip", "vip"] +SslProtocolType = Literal["SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"] +StreamingDistributionDeployedWaiterName = Literal["streaming_distribution_deployed"] +ViewerProtocolPolicyType = Literal["allow-all", "https-only", "redirect-to-https"] +CloudFrontServiceName = Literal["cloudfront"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_cloud_front_origin_access_identities", + "list_distributions", + "list_invalidations", + "list_key_value_stores", + "list_streaming_distributions",] +WaiterName = Literal["distribution_deployed", "invalidation_completed", "streaming_distribution_deployed"] +BlobTypeDef = Union[str, bytes, IO[Any] +KeyGroupConfigUnionTypeDef = Union['KeyGroupConfigTypeDef', 'KeyGroupConfigOutputTypeDef'] +InvalidationBatchUnionTypeDef = Union['InvalidationBatchTypeDef', 'InvalidationBatchOutputTypeDef'] +StreamingDistributionConfigUnionTypeDef = Union[ 'StreamingDistributionConfigTypeDef', 'StreamingDistributionConfigOutputTypeDef' ] +TagsUnionTypeDef = Union['TagsTypeDef', 'TagsOutputTypeDef'] +OriginRequestPolicyConfigUnionTypeDef = Union[ 'OriginRequestPolicyConfigTypeDef', 'OriginRequestPolicyConfigOutputTypeDef' ] +FunctionConfigUnionTypeDef = Union['FunctionConfigTypeDef', 'FunctionConfigOutputTypeDef'] +ResponseHeadersPolicyConfigUnionTypeDef = Union[ 'ResponseHeadersPolicyConfigTypeDef', 'ResponseHeadersPolicyConfigOutputTypeDef' ] +CachePolicyConfigUnionTypeDef = Union['CachePolicyConfigTypeDef', 'CachePolicyConfigOutputTypeDef'] +ContinuousDeploymentPolicyConfigUnionTypeDef = Union[ 'ContinuousDeploymentPolicyConfigTypeDef', 'ContinuousDeploymentPolicyConfigOutputTypeDef' ] +FieldLevelEncryptionProfileConfigUnionTypeDef = Union[ 'FieldLevelEncryptionProfileConfigTypeDef', 'FieldLevelEncryptionProfileConfigOutputTypeDef' ] +FieldLevelEncryptionConfigUnionTypeDef = Union[ 'FieldLevelEncryptionConfigTypeDef', 'FieldLevelEncryptionConfigOutputTypeDef' ] +DistributionConfigUnionTypeDef = Union['DistributionConfigTypeDef', 'DistributionConfigOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_classes.py b/aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_classes.py new file mode 100644 index 00000000..0f2ddddb --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_classes.py @@ -0,0 +1,110 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudfront_keyvaluestore_constants import * + +class DeleteKeyRequestListItemTypeDef(BaseModel): + Key: str + +class DeleteKeyRequestRequestTypeDef(BaseModel): + KvsARN: str + Key: str + IfMatch: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeKeyValueStoreRequestRequestTypeDef(BaseModel): + KvsARN: str + +class GetKeyRequestRequestTypeDef(BaseModel): + KvsARN: str + Key: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListKeysRequestRequestTypeDef(BaseModel): + KvsARN: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListKeysResponseListItemTypeDef(BaseModel): + Key: str + Value: str + +class PutKeyRequestListItemTypeDef(BaseModel): + Key: str + Value: str + +class PutKeyRequestRequestTypeDef(BaseModel): + Key: str + Value: str + KvsARN: str + IfMatch: str + +class DeleteKeyResponseTypeDef(BaseModel): + ItemCount: int + TotalSizeInBytes: int + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyValueStoreResponseTypeDef(BaseModel): + ItemCount: int + TotalSizeInBytes: int + KvsARN: str + Created: datetime + ETag: str + LastModified: datetime + Status: str + FailureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyResponseTypeDef(BaseModel): + Key: str + Value: str + ItemCount: int + TotalSizeInBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class PutKeyResponseTypeDef(BaseModel): + ItemCount: int + TotalSizeInBytes: int + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKeysResponseTypeDef(BaseModel): + ItemCount: int + TotalSizeInBytes: int + ETag: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeysRequestListKeysPaginateTypeDef(BaseModel): + KvsARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeysResponseTypeDef(BaseModel): + NextToken: str + Items: List[ListKeysResponseListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKeysRequestRequestTypeDef(BaseModel): + KvsARN: str + IfMatch: str + Puts: Optional[Sequence[PutKeyRequestListItemTypeDef]] = None + Deletes: Optional[Sequence[DeleteKeyRequestListItemTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_constants.py b/aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_constants.py new file mode 100644 index 00000000..2a10e472 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudfront_keyvaluestore_constants.py @@ -0,0 +1,393 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListKeysPaginatorName = Literal["list_keys"] +CloudFrontKeyValueStoreServiceName = Literal["cloudfront-keyvaluestore"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_keys"] diff --git a/aws_resource_validator/pydantic_models/cloudhsm_classes.py b/aws_resource_validator/pydantic_models/cloudhsm_classes.py new file mode 100644 index 00000000..a22aa75b --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudhsm_classes.py @@ -0,0 +1,234 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudhsm_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateHapgRequestRequestTypeDef(BaseModel): + Label: str + +class CreateHsmRequestRequestTypeDef(BaseModel): + SubnetId: str + SshKey: str + IamRoleArn: str + SubscriptionType: Literal["PRODUCTION"] + EniIp: Optional[str] = None + ExternalId: Optional[str] = None + ClientToken: Optional[str] = None + SyslogIp: Optional[str] = None + +class CreateLunaClientRequestRequestTypeDef(BaseModel): + Certificate: str + Label: Optional[str] = None + +class DeleteHapgRequestRequestTypeDef(BaseModel): + HapgArn: str + +class DeleteHsmRequestRequestTypeDef(BaseModel): + HsmArn: str + +class DeleteLunaClientRequestRequestTypeDef(BaseModel): + ClientArn: str + +class DescribeHapgRequestRequestTypeDef(BaseModel): + HapgArn: str + +class DescribeHsmRequestRequestTypeDef(BaseModel): + HsmArn: Optional[str] = None + HsmSerialNumber: Optional[str] = None + +class DescribeLunaClientRequestRequestTypeDef(BaseModel): + ClientArn: Optional[str] = None + CertificateFingerprint: Optional[str] = None + +class GetConfigRequestRequestTypeDef(BaseModel): + ClientArn: str + ClientVersion: ClientVersionType + HapgList: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListHapgsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListHsmsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListLunaClientsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ModifyHapgRequestRequestTypeDef(BaseModel): + HapgArn: str + Label: Optional[str] = None + PartitionSerialList: Optional[Sequence[str]] = None + +class ModifyHsmRequestRequestTypeDef(BaseModel): + HsmArn: str + SubnetId: Optional[str] = None + EniIp: Optional[str] = None + IamRoleArn: Optional[str] = None + ExternalId: Optional[str] = None + SyslogIp: Optional[str] = None + +class ModifyLunaClientRequestRequestTypeDef(BaseModel): + ClientArn: str + Certificate: str + +class RemoveTagsFromResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeyList: Sequence[str] + +class AddTagsToResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagList: Sequence[TagTypeDef] + +class AddTagsToResourceResponseTypeDef(BaseModel): + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHapgResponseTypeDef(BaseModel): + HapgArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHsmResponseTypeDef(BaseModel): + HsmArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLunaClientResponseTypeDef(BaseModel): + ClientArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteHapgResponseTypeDef(BaseModel): + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteHsmResponseTypeDef(BaseModel): + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLunaClientResponseTypeDef(BaseModel): + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHapgResponseTypeDef(BaseModel): + HapgArn: str + HapgSerial: str + HsmsLastActionFailed: List[str] + HsmsPendingDeletion: List[str] + HsmsPendingRegistration: List[str] + Label: str + LastModifiedTimestamp: str + PartitionSerialList: List[str] + State: CloudHsmObjectStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHsmResponseTypeDef(BaseModel): + HsmArn: str + Status: HsmStatusType + StatusDetails: str + AvailabilityZone: str + EniId: str + EniIp: str + SubscriptionType: Literal["PRODUCTION"] + SubscriptionStartDate: str + SubscriptionEndDate: str + VpcId: str + SubnetId: str + IamRoleArn: str + SerialNumber: str + VendorName: str + HsmType: str + SoftwareVersion: str + SshPublicKey: str + SshKeyLastUpdated: str + ServerCertUri: str + ServerCertLastUpdated: str + Partitions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLunaClientResponseTypeDef(BaseModel): + ClientArn: str + Certificate: str + CertificateFingerprint: str + LastModifiedTimestamp: str + Label: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfigResponseTypeDef(BaseModel): + ConfigType: str + ConfigFile: str + ConfigCred: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAvailableZonesResponseTypeDef(BaseModel): + AZList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListHapgsResponseTypeDef(BaseModel): + HapgList: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListHsmsResponseTypeDef(BaseModel): + HsmList: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLunaClientsResponseTypeDef(BaseModel): + ClientList: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyHapgResponseTypeDef(BaseModel): + HapgArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyHsmResponseTypeDef(BaseModel): + HsmArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyLunaClientResponseTypeDef(BaseModel): + ClientArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveTagsFromResourceResponseTypeDef(BaseModel): + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListHapgsRequestListHapgsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHsmsRequestListHsmsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLunaClientsRequestListLunaClientsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/cloudhsm_constants.py b/aws_resource_validator/pydantic_models/cloudhsm_constants.py new file mode 100644 index 00000000..c2817511 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudhsm_constants.py @@ -0,0 +1,397 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ClientVersionType = Literal["5.1", "5.3"] +CloudHsmObjectStateType = Literal["DEGRADED", "READY", "UPDATING"] +HsmStatusType = Literal["DEGRADED", "PENDING", "RUNNING", "SUSPENDED", "TERMINATED", "TERMINATING", "UPDATING"] +ListHapgsPaginatorName = Literal["list_hapgs"] +ListHsmsPaginatorName = Literal["list_hsms"] +ListLunaClientsPaginatorName = Literal["list_luna_clients"] +SubscriptionTypeType = Literal["PRODUCTION"] +CloudHSMServiceName = Literal["cloudhsm"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_hapgs", "list_hsms", "list_luna_clients"] +RegionName = Literal["us-east-1"] diff --git a/aws_resource_validator/pydantic_models/cloudhsmv2_classes.py b/aws_resource_validator/pydantic_models/cloudhsmv2_classes.py new file mode 100644 index 00000000..ed95f5b9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudhsmv2_classes.py @@ -0,0 +1,255 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudhsmv2_constants import * + +class BackupRetentionPolicyTypeDef(BaseModel): + Type: Optional[Literal["DAYS"]] = None + Value: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CertificatesTypeDef(BaseModel): + ClusterCsr: Optional[str] = None + HsmCertificate: Optional[str] = None + AwsHardwareCertificate: Optional[str] = None + ManufacturerHardwareCertificate: Optional[str] = None + ClusterCertificate: Optional[str] = None + +class HsmTypeDef(BaseModel): + HsmId: str + AvailabilityZone: Optional[str] = None + ClusterId: Optional[str] = None + SubnetId: Optional[str] = None + EniId: Optional[str] = None + EniIp: Optional[str] = None + State: Optional[HsmStateType] = None + StateMessage: Optional[str] = None + +class DestinationBackupTypeDef(BaseModel): + CreateTimestamp: Optional[datetime] = None + SourceRegion: Optional[str] = None + SourceBackup: Optional[str] = None + SourceCluster: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateHsmRequestRequestTypeDef(BaseModel): + ClusterId: str + AvailabilityZone: str + IpAddress: Optional[str] = None + +class DeleteBackupRequestRequestTypeDef(BaseModel): + BackupId: str + +class DeleteClusterRequestRequestTypeDef(BaseModel): + ClusterId: str + +class DeleteHsmRequestRequestTypeDef(BaseModel): + ClusterId: str + HsmId: Optional[str] = None + EniId: Optional[str] = None + EniIp: Optional[str] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeBackupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Mapping[str, Sequence[str]]] = None + Shared: Optional[bool] = None + SortAscending: Optional[bool] = None + +class DescribeClustersRequestRequestTypeDef(BaseModel): + Filters: Optional[Mapping[str, Sequence[str]]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class InitializeClusterRequestRequestTypeDef(BaseModel): + ClusterId: str + SignedCert: str + TrustAnchor: str + +class ListTagsRequestRequestTypeDef(BaseModel): + ResourceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ModifyBackupAttributesRequestRequestTypeDef(BaseModel): + BackupId: str + NeverExpires: bool + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: Optional[str] = None + Policy: Optional[str] = None + +class RestoreBackupRequestRequestTypeDef(BaseModel): + BackupId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + TagKeyList: Sequence[str] + +class ModifyClusterRequestRequestTypeDef(BaseModel): + BackupRetentionPolicy: BackupRetentionPolicyTypeDef + ClusterId: str + +class BackupTypeDef(BaseModel): + BackupId: str + BackupArn: Optional[str] = None + BackupState: Optional[BackupStateType] = None + ClusterId: Optional[str] = None + CreateTimestamp: Optional[datetime] = None + CopyTimestamp: Optional[datetime] = None + NeverExpires: Optional[bool] = None + SourceRegion: Optional[str] = None + SourceBackup: Optional[str] = None + SourceCluster: Optional[str] = None + DeleteTimestamp: Optional[datetime] = None + TagList: Optional[List[TagTypeDef]] = None + HsmType: Optional[str] = None + Mode: Optional[ClusterModeType] = None + +class CopyBackupToRegionRequestRequestTypeDef(BaseModel): + DestinationRegion: str + BackupId: str + TagList: Optional[Sequence[TagTypeDef]] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + HsmType: str + SubnetIds: Sequence[str] + BackupRetentionPolicy: Optional[BackupRetentionPolicyTypeDef] = None + SourceBackupId: Optional[str] = None + TagList: Optional[Sequence[TagTypeDef]] = None + Mode: Optional[ClusterModeType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + TagList: Sequence[TagTypeDef] + +class ClusterTypeDef(BaseModel): + BackupPolicy: Optional[Literal["DEFAULT"]] = None + BackupRetentionPolicy: Optional[BackupRetentionPolicyTypeDef] = None + ClusterId: Optional[str] = None + CreateTimestamp: Optional[datetime] = None + Hsms: Optional[List[HsmTypeDef]] = None + HsmType: Optional[str] = None + PreCoPassword: Optional[str] = None + SecurityGroup: Optional[str] = None + SourceBackupId: Optional[str] = None + State: Optional[ClusterStateType] = None + StateMessage: Optional[str] = None + SubnetMapping: Optional[Dict[str, str]] = None + VpcId: Optional[str] = None + Certificates: Optional[CertificatesTypeDef] = None + TagList: Optional[List[TagTypeDef]] = None + Mode: Optional[ClusterModeType] = None + +class CopyBackupToRegionResponseTypeDef(BaseModel): + DestinationBackup: DestinationBackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHsmResponseTypeDef(BaseModel): + Hsm: HsmTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteHsmResponseTypeDef(BaseModel): + HsmId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourcePolicyResponseTypeDef(BaseModel): + ResourceArn: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitializeClusterResponseTypeDef(BaseModel): + State: ClusterStateType + StateMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutResourcePolicyResponseTypeDef(BaseModel): + ResourceArn: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupsRequestDescribeBackupsPaginateTypeDef(BaseModel): + Filters: Optional[Mapping[str, Sequence[str]]] = None + Shared: Optional[bool] = None + SortAscending: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClustersRequestDescribeClustersPaginateTypeDef(BaseModel): + Filters: Optional[Mapping[str, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsRequestListTagsPaginateTypeDef(BaseModel): + ResourceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DeleteBackupResponseTypeDef(BaseModel): + Backup: BackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupsResponseTypeDef(BaseModel): + Backups: List[BackupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyBackupAttributesResponseTypeDef(BaseModel): + Backup: BackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreBackupResponseTypeDef(BaseModel): + Backup: BackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClustersResponseTypeDef(BaseModel): + Clusters: List[ClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloudhsmv2_constants.py b/aws_resource_validator/pydantic_models/cloudhsmv2_constants.py new file mode 100644 index 00000000..73508444 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudhsmv2_constants.py @@ -0,0 +1,443 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BackupPolicyType = Literal["DEFAULT"] +BackupRetentionTypeType = Literal["DAYS"] +BackupStateType = Literal["CREATE_IN_PROGRESS", "DELETED", "PENDING_DELETION", "READY"] +ClusterModeType = Literal["FIPS", "NON_FIPS"] +ClusterStateType = Literal["ACTIVE", + "CREATE_IN_PROGRESS", + "DEGRADED", + "DELETED", + "DELETE_IN_PROGRESS", + "INITIALIZED", + "INITIALIZE_IN_PROGRESS", + "UNINITIALIZED", + "UPDATE_IN_PROGRESS",] +DescribeBackupsPaginatorName = Literal["describe_backups"] +DescribeClustersPaginatorName = Literal["describe_clusters"] +HsmStateType = Literal["ACTIVE", "CREATE_IN_PROGRESS", "DEGRADED", "DELETED", "DELETE_IN_PROGRESS"] +ListTagsPaginatorName = Literal["list_tags"] +CloudHSMV2ServiceName = Literal["cloudhsmv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_backups", "describe_clusters", "list_tags"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cloudsearch_classes.py b/aws_resource_validator/pydantic_models/cloudsearch_classes.py new file mode 100644 index 00000000..3eea220f --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudsearch_classes.py @@ -0,0 +1,415 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudsearch_constants import * + +class OptionStatusTypeDef(BaseModel): + CreationDate: datetime + UpdateDate: datetime + State: OptionStateType + UpdateVersion: Optional[int] = None + PendingDeletion: Optional[bool] = None + +class AnalysisOptionsTypeDef(BaseModel): + Synonyms: Optional[str] = None + Stopwords: Optional[str] = None + StemmingDictionary: Optional[str] = None + JapaneseTokenizationDictionary: Optional[str] = None + AlgorithmicStemming: Optional[AlgorithmicStemmingType] = None + +class BuildSuggestersRequestRequestTypeDef(BaseModel): + DomainName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DateArrayOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceFields: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + +class DateOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceField: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + SortEnabled: Optional[bool] = None + +class ExpressionTypeDef(BaseModel): + ExpressionName: str + ExpressionValue: str + +class DeleteAnalysisSchemeRequestRequestTypeDef(BaseModel): + DomainName: str + AnalysisSchemeName: str + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DeleteExpressionRequestRequestTypeDef(BaseModel): + DomainName: str + ExpressionName: str + +class DeleteIndexFieldRequestRequestTypeDef(BaseModel): + DomainName: str + IndexFieldName: str + +class DeleteSuggesterRequestRequestTypeDef(BaseModel): + DomainName: str + SuggesterName: str + +class DescribeAnalysisSchemesRequestRequestTypeDef(BaseModel): + DomainName: str + AnalysisSchemeNames: Optional[Sequence[str]] = None + Deployed: Optional[bool] = None + +class DescribeAvailabilityOptionsRequestRequestTypeDef(BaseModel): + DomainName: str + Deployed: Optional[bool] = None + +class DescribeDomainEndpointOptionsRequestRequestTypeDef(BaseModel): + DomainName: str + Deployed: Optional[bool] = None + +class DescribeDomainsRequestRequestTypeDef(BaseModel): + DomainNames: Optional[Sequence[str]] = None + +class DescribeExpressionsRequestRequestTypeDef(BaseModel): + DomainName: str + ExpressionNames: Optional[Sequence[str]] = None + Deployed: Optional[bool] = None + +class DescribeIndexFieldsRequestRequestTypeDef(BaseModel): + DomainName: str + FieldNames: Optional[Sequence[str]] = None + Deployed: Optional[bool] = None + +class DescribeScalingParametersRequestRequestTypeDef(BaseModel): + DomainName: str + +class DescribeServiceAccessPoliciesRequestRequestTypeDef(BaseModel): + DomainName: str + Deployed: Optional[bool] = None + +class DescribeSuggestersRequestRequestTypeDef(BaseModel): + DomainName: str + SuggesterNames: Optional[Sequence[str]] = None + Deployed: Optional[bool] = None + +class DocumentSuggesterOptionsTypeDef(BaseModel): + SourceField: str + FuzzyMatching: Optional[SuggesterFuzzyMatchingType] = None + SortExpression: Optional[str] = None + +class DomainEndpointOptionsTypeDef(BaseModel): + EnforceHTTPS: Optional[bool] = None + TLSSecurityPolicy: Optional[TLSSecurityPolicyType] = None + +class LimitsTypeDef(BaseModel): + MaximumReplicationCount: int + MaximumPartitionCount: int + +class ServiceEndpointTypeDef(BaseModel): + Endpoint: Optional[str] = None + +class DoubleArrayOptionsTypeDef(BaseModel): + DefaultValue: Optional[float] = None + SourceFields: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + +class DoubleOptionsTypeDef(BaseModel): + DefaultValue: Optional[float] = None + SourceField: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + SortEnabled: Optional[bool] = None + +class IndexDocumentsRequestRequestTypeDef(BaseModel): + DomainName: str + +class IntArrayOptionsTypeDef(BaseModel): + DefaultValue: Optional[int] = None + SourceFields: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + +class IntOptionsTypeDef(BaseModel): + DefaultValue: Optional[int] = None + SourceField: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + SortEnabled: Optional[bool] = None + +class LatLonOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceField: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + SortEnabled: Optional[bool] = None + +class LiteralArrayOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceFields: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + +class LiteralOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceField: Optional[str] = None + FacetEnabled: Optional[bool] = None + SearchEnabled: Optional[bool] = None + ReturnEnabled: Optional[bool] = None + SortEnabled: Optional[bool] = None + +class TextArrayOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceFields: Optional[str] = None + ReturnEnabled: Optional[bool] = None + HighlightEnabled: Optional[bool] = None + AnalysisScheme: Optional[str] = None + +class TextOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + SourceField: Optional[str] = None + ReturnEnabled: Optional[bool] = None + SortEnabled: Optional[bool] = None + HighlightEnabled: Optional[bool] = None + AnalysisScheme: Optional[str] = None + +class ScalingParametersTypeDef(BaseModel): + DesiredInstanceType: Optional[PartitionInstanceTypeType] = None + DesiredReplicationCount: Optional[int] = None + DesiredPartitionCount: Optional[int] = None + +class UpdateAvailabilityOptionsRequestRequestTypeDef(BaseModel): + DomainName: str + MultiAZ: bool + +class UpdateServiceAccessPoliciesRequestRequestTypeDef(BaseModel): + DomainName: str + AccessPolicies: str + +class AccessPoliciesStatusTypeDef(BaseModel): + Options: str + Status: OptionStatusTypeDef + +class AvailabilityOptionsStatusTypeDef(BaseModel): + Options: bool + Status: OptionStatusTypeDef + +class AnalysisSchemeTypeDef(BaseModel): + AnalysisSchemeName: str + AnalysisSchemeLanguage: AnalysisSchemeLanguageType + AnalysisOptions: Optional[AnalysisOptionsTypeDef] = None + +class BuildSuggestersResponseTypeDef(BaseModel): + FieldNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class IndexDocumentsResponseTypeDef(BaseModel): + FieldNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainNamesResponseTypeDef(BaseModel): + DomainNames: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DefineExpressionRequestRequestTypeDef(BaseModel): + DomainName: str + Expression: ExpressionTypeDef + +class ExpressionStatusTypeDef(BaseModel): + Options: ExpressionTypeDef + Status: OptionStatusTypeDef + +class SuggesterTypeDef(BaseModel): + SuggesterName: str + DocumentSuggesterOptions: DocumentSuggesterOptionsTypeDef + +class DomainEndpointOptionsStatusTypeDef(BaseModel): + Options: DomainEndpointOptionsTypeDef + Status: OptionStatusTypeDef + +class UpdateDomainEndpointOptionsRequestRequestTypeDef(BaseModel): + DomainName: str + DomainEndpointOptions: DomainEndpointOptionsTypeDef + +class DomainStatusTypeDef(BaseModel): + DomainId: str + DomainName: str + RequiresIndexDocuments: bool + ARN: Optional[str] = None + Created: Optional[bool] = None + Deleted: Optional[bool] = None + DocService: Optional[ServiceEndpointTypeDef] = None + SearchService: Optional[ServiceEndpointTypeDef] = None + Processing: Optional[bool] = None + SearchInstanceType: Optional[str] = None + SearchPartitionCount: Optional[int] = None + SearchInstanceCount: Optional[int] = None + Limits: Optional[LimitsTypeDef] = None + +class IndexFieldTypeDef(BaseModel): + IndexFieldName: str + IndexFieldType: IndexFieldTypeType + IntOptions: Optional[IntOptionsTypeDef] = None + DoubleOptions: Optional[DoubleOptionsTypeDef] = None + LiteralOptions: Optional[LiteralOptionsTypeDef] = None + TextOptions: Optional[TextOptionsTypeDef] = None + DateOptions: Optional[DateOptionsTypeDef] = None + LatLonOptions: Optional[LatLonOptionsTypeDef] = None + IntArrayOptions: Optional[IntArrayOptionsTypeDef] = None + DoubleArrayOptions: Optional[DoubleArrayOptionsTypeDef] = None + LiteralArrayOptions: Optional[LiteralArrayOptionsTypeDef] = None + TextArrayOptions: Optional[TextArrayOptionsTypeDef] = None + DateArrayOptions: Optional[DateArrayOptionsTypeDef] = None + +class ScalingParametersStatusTypeDef(BaseModel): + Options: ScalingParametersTypeDef + Status: OptionStatusTypeDef + +class UpdateScalingParametersRequestRequestTypeDef(BaseModel): + DomainName: str + ScalingParameters: ScalingParametersTypeDef + +class DescribeServiceAccessPoliciesResponseTypeDef(BaseModel): + AccessPolicies: AccessPoliciesStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceAccessPoliciesResponseTypeDef(BaseModel): + AccessPolicies: AccessPoliciesStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAvailabilityOptionsResponseTypeDef(BaseModel): + AvailabilityOptions: AvailabilityOptionsStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAvailabilityOptionsResponseTypeDef(BaseModel): + AvailabilityOptions: AvailabilityOptionsStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisSchemeStatusTypeDef(BaseModel): + Options: AnalysisSchemeTypeDef + Status: OptionStatusTypeDef + +class DefineAnalysisSchemeRequestRequestTypeDef(BaseModel): + DomainName: str + AnalysisScheme: AnalysisSchemeTypeDef + +class DefineExpressionResponseTypeDef(BaseModel): + Expression: ExpressionStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteExpressionResponseTypeDef(BaseModel): + Expression: ExpressionStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExpressionsResponseTypeDef(BaseModel): + Expressions: List[ExpressionStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DefineSuggesterRequestRequestTypeDef(BaseModel): + DomainName: str + Suggester: SuggesterTypeDef + +class SuggesterStatusTypeDef(BaseModel): + Options: SuggesterTypeDef + Status: OptionStatusTypeDef + +class DescribeDomainEndpointOptionsResponseTypeDef(BaseModel): + DomainEndpointOptions: DomainEndpointOptionsStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainEndpointOptionsResponseTypeDef(BaseModel): + DomainEndpointOptions: DomainEndpointOptionsStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainResponseTypeDef(BaseModel): + DomainStatus: DomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainResponseTypeDef(BaseModel): + DomainStatus: DomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainsResponseTypeDef(BaseModel): + DomainStatusList: List[DomainStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DefineIndexFieldRequestRequestTypeDef(BaseModel): + DomainName: str + IndexField: IndexFieldTypeDef + +class IndexFieldStatusTypeDef(BaseModel): + Options: IndexFieldTypeDef + Status: OptionStatusTypeDef + +class DescribeScalingParametersResponseTypeDef(BaseModel): + ScalingParameters: ScalingParametersStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateScalingParametersResponseTypeDef(BaseModel): + ScalingParameters: ScalingParametersStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DefineAnalysisSchemeResponseTypeDef(BaseModel): + AnalysisScheme: AnalysisSchemeStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAnalysisSchemeResponseTypeDef(BaseModel): + AnalysisScheme: AnalysisSchemeStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAnalysisSchemesResponseTypeDef(BaseModel): + AnalysisSchemes: List[AnalysisSchemeStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DefineSuggesterResponseTypeDef(BaseModel): + Suggester: SuggesterStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSuggesterResponseTypeDef(BaseModel): + Suggester: SuggesterStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSuggestersResponseTypeDef(BaseModel): + Suggesters: List[SuggesterStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DefineIndexFieldResponseTypeDef(BaseModel): + IndexField: IndexFieldStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIndexFieldResponseTypeDef(BaseModel): + IndexField: IndexFieldStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIndexFieldsResponseTypeDef(BaseModel): + IndexFields: List[IndexFieldStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloudsearch_constants.py b/aws_resource_validator/pydantic_models/cloudsearch_constants.py new file mode 100644 index 00000000..cef0ee3f --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudsearch_constants.py @@ -0,0 +1,465 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlgorithmicStemmingType = Literal["full", "light", "minimal", "none"] +AnalysisSchemeLanguageType = Literal["ar", + "bg", + "ca", + "cs", + "da", + "de", + "el", + "en", + "es", + "eu", + "fa", + "fi", + "fr", + "ga", + "gl", + "he", + "hi", + "hu", + "hy", + "id", + "it", + "ja", + "ko", + "lv", + "mul", + "nl", + "no", + "pt", + "ro", + "ru", + "sv", + "th", + "tr", + "zh-Hans", + "zh-Hant",] +IndexFieldTypeType = Literal["date", + "date-array", + "double", + "double-array", + "int", + "int-array", + "latlon", + "literal", + "literal-array", + "text", + "text-array",] +OptionStateType = Literal["Active", "FailedToValidate", "Processing", "RequiresIndexDocuments"] +PartitionInstanceTypeType = Literal["search.2xlarge", + "search.large", + "search.m1.large", + "search.m1.small", + "search.m2.2xlarge", + "search.m2.xlarge", + "search.m3.2xlarge", + "search.m3.large", + "search.m3.medium", + "search.m3.xlarge", + "search.medium", + "search.previousgeneration.2xlarge", + "search.previousgeneration.large", + "search.previousgeneration.small", + "search.previousgeneration.xlarge", + "search.small", + "search.xlarge",] +SuggesterFuzzyMatchingType = Literal["high", "low", "none"] +TLSSecurityPolicyType = Literal["Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07"] +CloudSearchServiceName = Literal["cloudsearch"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "sa-east-1", + "us-east-1", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cloudsearchdomain_classes.py b/aws_resource_validator/pydantic_models/cloudsearchdomain_classes.py new file mode 100644 index 00000000..bef634f6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudsearchdomain_classes.py @@ -0,0 +1,114 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudsearchdomain_constants import * + +class BucketTypeDef(BaseModel): + value: Optional[str] = None + count: Optional[int] = None + +class DocumentServiceWarningTypeDef(BaseModel): + message: Optional[str] = None + +class FieldStatsTypeDef(BaseModel): + min: Optional[str] = None + max: Optional[str] = None + count: Optional[int] = None + missing: Optional[int] = None + sum: Optional[float] = None + sumOfSquares: Optional[float] = None + mean: Optional[str] = None + stddev: Optional[float] = None + +class HitTypeDef(BaseModel): + id: Optional[str] = None + fields: Optional[Dict[str, List[str]]] = None + exprs: Optional[Dict[str, str]] = None + highlights: Optional[Dict[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class SearchRequestRequestTypeDef(BaseModel): + query: str + cursor: Optional[str] = None + expr: Optional[str] = None + facet: Optional[str] = None + filterQuery: Optional[str] = None + highlight: Optional[str] = None + partial: Optional[bool] = None + queryOptions: Optional[str] = None + queryParser: Optional[QueryParserType] = None + returnFields: Optional[str] = None + size: Optional[int] = None + sort: Optional[str] = None + start: Optional[int] = None + stats: Optional[str] = None + +class SearchStatusTypeDef(BaseModel): + timems: Optional[int] = None + rid: Optional[str] = None + +class SuggestionMatchTypeDef(BaseModel): + suggestion: Optional[str] = None + score: Optional[int] = None + id: Optional[str] = None + +class SuggestRequestRequestTypeDef(BaseModel): + query: str + suggester: str + size: Optional[int] = None + +class SuggestStatusTypeDef(BaseModel): + timems: Optional[int] = None + rid: Optional[str] = None + +class UploadDocumentsRequestRequestTypeDef(BaseModel): + documents: BlobTypeDef + contentType: ContentTypeType + +class BucketInfoTypeDef(BaseModel): + buckets: Optional[List[BucketTypeDef]] = None + +class HitsTypeDef(BaseModel): + found: Optional[int] = None + start: Optional[int] = None + cursor: Optional[str] = None + hit: Optional[List[HitTypeDef]] = None + +class UploadDocumentsResponseTypeDef(BaseModel): + status: str + adds: int + deletes: int + warnings: List[DocumentServiceWarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SuggestModelTypeDef(BaseModel): + query: Optional[str] = None + found: Optional[int] = None + suggestions: Optional[List[SuggestionMatchTypeDef]] = None + +class SearchResponseTypeDef(BaseModel): + status: SearchStatusTypeDef + hits: HitsTypeDef + facets: Dict[str, BucketInfoTypeDef] + stats: Dict[str, FieldStatsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SuggestResponseTypeDef(BaseModel): + status: SuggestStatusTypeDef + suggest: SuggestModelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloudsearchdomain_constants.py b/aws_resource_validator/pydantic_models/cloudsearchdomain_constants.py new file mode 100644 index 00000000..001e7921 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudsearchdomain_constants.py @@ -0,0 +1,391 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ContentTypeType = Literal["application/json", "application/xml"] +QueryParserType = Literal["dismax", "lucene", "simple", "structured"] +CloudSearchDomainServiceName = Literal["cloudsearchdomain"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/cloudtrail_classes.py b/aws_resource_validator/pydantic_models/cloudtrail_classes.py new file mode 100644 index 00000000..c86c793c --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudtrail_classes.py @@ -0,0 +1,796 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudtrail_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class AdvancedFieldSelectorOutputTypeDef(BaseModel): + Field: str + Equals: Optional[List[str]] = None + StartsWith: Optional[List[str]] = None + EndsWith: Optional[List[str]] = None + NotEquals: Optional[List[str]] = None + NotStartsWith: Optional[List[str]] = None + NotEndsWith: Optional[List[str]] = None + +class AdvancedFieldSelectorTypeDef(BaseModel): + Field: str + Equals: Optional[Sequence[str]] = None + StartsWith: Optional[Sequence[str]] = None + EndsWith: Optional[Sequence[str]] = None + NotEquals: Optional[Sequence[str]] = None + NotStartsWith: Optional[Sequence[str]] = None + NotEndsWith: Optional[Sequence[str]] = None + +class CancelQueryRequestRequestTypeDef(BaseModel): + QueryId: str + EventDataStore: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ChannelTypeDef(BaseModel): + ChannelArn: Optional[str] = None + Name: Optional[str] = None + +class DestinationTypeDef(BaseModel): + Type: DestinationTypeType + Location: str + +class DataResourceOutputTypeDef(BaseModel): + Type: Optional[str] = None + Values: Optional[List[str]] = None + +class DataResourceTypeDef(BaseModel): + Type: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class DeleteChannelRequestRequestTypeDef(BaseModel): + Channel: str + +class DeleteEventDataStoreRequestRequestTypeDef(BaseModel): + EventDataStore: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteTrailRequestRequestTypeDef(BaseModel): + Name: str + +class DeregisterOrganizationDelegatedAdminRequestRequestTypeDef(BaseModel): + DelegatedAdminAccountId: str + +class DescribeQueryRequestRequestTypeDef(BaseModel): + EventDataStore: Optional[str] = None + QueryId: Optional[str] = None + QueryAlias: Optional[str] = None + +class QueryStatisticsForDescribeQueryTypeDef(BaseModel): + EventsMatched: Optional[int] = None + EventsScanned: Optional[int] = None + BytesScanned: Optional[int] = None + ExecutionTimeInMillis: Optional[int] = None + CreationTime: Optional[datetime] = None + +class DescribeTrailsRequestRequestTypeDef(BaseModel): + trailNameList: Optional[Sequence[str]] = None + includeShadowTrails: Optional[bool] = None + +class TrailTypeDef(BaseModel): + Name: Optional[str] = None + S3BucketName: Optional[str] = None + S3KeyPrefix: Optional[str] = None + SnsTopicName: Optional[str] = None + SnsTopicARN: Optional[str] = None + IncludeGlobalServiceEvents: Optional[bool] = None + IsMultiRegionTrail: Optional[bool] = None + HomeRegion: Optional[str] = None + TrailARN: Optional[str] = None + LogFileValidationEnabled: Optional[bool] = None + CloudWatchLogsLogGroupArn: Optional[str] = None + CloudWatchLogsRoleArn: Optional[str] = None + KmsKeyId: Optional[str] = None + HasCustomEventSelectors: Optional[bool] = None + HasInsightSelectors: Optional[bool] = None + IsOrganizationTrail: Optional[bool] = None + +class DisableFederationRequestRequestTypeDef(BaseModel): + EventDataStore: str + +class EnableFederationRequestRequestTypeDef(BaseModel): + EventDataStore: str + FederationRoleArn: str + +class ResourceTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceName: Optional[str] = None + +class GetChannelRequestRequestTypeDef(BaseModel): + Channel: str + +class IngestionStatusTypeDef(BaseModel): + LatestIngestionSuccessTime: Optional[datetime] = None + LatestIngestionSuccessEventID: Optional[str] = None + LatestIngestionErrorCode: Optional[str] = None + LatestIngestionAttemptTime: Optional[datetime] = None + LatestIngestionAttemptEventID: Optional[str] = None + +class GetEventDataStoreRequestRequestTypeDef(BaseModel): + EventDataStore: str + +class PartitionKeyTypeDef(BaseModel): + Name: str + Type: str + +class GetEventSelectorsRequestRequestTypeDef(BaseModel): + TrailName: str + +class GetImportRequestRequestTypeDef(BaseModel): + ImportId: str + +class ImportStatisticsTypeDef(BaseModel): + PrefixesFound: Optional[int] = None + PrefixesCompleted: Optional[int] = None + FilesCompleted: Optional[int] = None + EventsCompleted: Optional[int] = None + FailedEntries: Optional[int] = None + +class GetInsightSelectorsRequestRequestTypeDef(BaseModel): + TrailName: Optional[str] = None + EventDataStore: Optional[str] = None + +class InsightSelectorTypeDef(BaseModel): + InsightType: Optional[InsightTypeType] = None + +class GetQueryResultsRequestRequestTypeDef(BaseModel): + QueryId: str + EventDataStore: Optional[str] = None + NextToken: Optional[str] = None + MaxQueryResults: Optional[int] = None + +class QueryStatisticsTypeDef(BaseModel): + ResultsCount: Optional[int] = None + TotalResultsCount: Optional[int] = None + BytesScanned: Optional[int] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetTrailRequestRequestTypeDef(BaseModel): + Name: str + +class GetTrailStatusRequestRequestTypeDef(BaseModel): + Name: str + +class ImportFailureListItemTypeDef(BaseModel): + Location: Optional[str] = None + Status: Optional[ImportFailureStatusType] = None + ErrorType: Optional[str] = None + ErrorMessage: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + +class S3ImportSourceTypeDef(BaseModel): + S3LocationUri: str + S3BucketRegion: str + S3BucketAccessRoleArn: str + +class ImportsListItemTypeDef(BaseModel): + ImportId: Optional[str] = None + ImportStatus: Optional[ImportStatusType] = None + Destinations: Optional[List[str]] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEventDataStoresRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListImportFailuresRequestRequestTypeDef(BaseModel): + ImportId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListImportsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + Destination: Optional[str] = None + ImportStatus: Optional[ImportStatusType] = None + NextToken: Optional[str] = None + +class PublicKeyTypeDef(BaseModel): + Value: Optional[bytes] = None + ValidityStartTime: Optional[datetime] = None + ValidityEndTime: Optional[datetime] = None + Fingerprint: Optional[str] = None + +class QueryTypeDef(BaseModel): + QueryId: Optional[str] = None + QueryStatus: Optional[QueryStatusType] = None + CreationTime: Optional[datetime] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + ResourceIdList: Sequence[str] + NextToken: Optional[str] = None + +class ListTrailsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class TrailInfoTypeDef(BaseModel): + TrailARN: Optional[str] = None + Name: Optional[str] = None + HomeRegion: Optional[str] = None + +class LookupAttributeTypeDef(BaseModel): + AttributeKey: LookupAttributeKeyType + AttributeValue: str + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourcePolicy: str + +class RegisterOrganizationDelegatedAdminRequestRequestTypeDef(BaseModel): + MemberAccountId: str + +class RestoreEventDataStoreRequestRequestTypeDef(BaseModel): + EventDataStore: str + +class StartEventDataStoreIngestionRequestRequestTypeDef(BaseModel): + EventDataStore: str + +class StartLoggingRequestRequestTypeDef(BaseModel): + Name: str + +class StartQueryRequestRequestTypeDef(BaseModel): + QueryStatement: Optional[str] = None + DeliveryS3Uri: Optional[str] = None + QueryAlias: Optional[str] = None + QueryParameters: Optional[Sequence[str]] = None + +class StopEventDataStoreIngestionRequestRequestTypeDef(BaseModel): + EventDataStore: str + +class StopImportRequestRequestTypeDef(BaseModel): + ImportId: str + +class StopLoggingRequestRequestTypeDef(BaseModel): + Name: str + +class UpdateTrailRequestRequestTypeDef(BaseModel): + Name: str + S3BucketName: Optional[str] = None + S3KeyPrefix: Optional[str] = None + SnsTopicName: Optional[str] = None + IncludeGlobalServiceEvents: Optional[bool] = None + IsMultiRegionTrail: Optional[bool] = None + EnableLogFileValidation: Optional[bool] = None + CloudWatchLogsLogGroupArn: Optional[str] = None + CloudWatchLogsRoleArn: Optional[str] = None + KmsKeyId: Optional[str] = None + IsOrganizationTrail: Optional[bool] = None + +class AddTagsRequestRequestTypeDef(BaseModel): + ResourceId: str + TagsList: Sequence[TagTypeDef] + +class CreateTrailRequestRequestTypeDef(BaseModel): + Name: str + S3BucketName: str + S3KeyPrefix: Optional[str] = None + SnsTopicName: Optional[str] = None + IncludeGlobalServiceEvents: Optional[bool] = None + IsMultiRegionTrail: Optional[bool] = None + EnableLogFileValidation: Optional[bool] = None + CloudWatchLogsLogGroupArn: Optional[str] = None + CloudWatchLogsRoleArn: Optional[str] = None + KmsKeyId: Optional[str] = None + IsOrganizationTrail: Optional[bool] = None + TagsList: Optional[Sequence[TagTypeDef]] = None + +class RemoveTagsRequestRequestTypeDef(BaseModel): + ResourceId: str + TagsList: Sequence[TagTypeDef] + +class ResourceTagTypeDef(BaseModel): + ResourceId: Optional[str] = None + TagsList: Optional[List[TagTypeDef]] = None + +class AdvancedEventSelectorOutputTypeDef(BaseModel): + FieldSelectors: List[AdvancedFieldSelectorOutputTypeDef] + Name: Optional[str] = None + +class AdvancedEventSelectorTypeDef(BaseModel): + FieldSelectors: Sequence[AdvancedFieldSelectorTypeDef] + Name: Optional[str] = None + +class CancelQueryResponseTypeDef(BaseModel): + QueryId: str + QueryStatus: QueryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrailResponseTypeDef(BaseModel): + Name: str + S3BucketName: str + S3KeyPrefix: str + SnsTopicName: str + SnsTopicARN: str + IncludeGlobalServiceEvents: bool + IsMultiRegionTrail: bool + TrailARN: str + LogFileValidationEnabled: bool + CloudWatchLogsLogGroupArn: str + CloudWatchLogsRoleArn: str + KmsKeyId: str + IsOrganizationTrail: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableFederationResponseTypeDef(BaseModel): + EventDataStoreArn: str + FederationStatus: FederationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EnableFederationResponseTypeDef(BaseModel): + EventDataStoreArn: str + FederationStatus: FederationStatusType + FederationRoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + ResourceArn: str + ResourcePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrailStatusResponseTypeDef(BaseModel): + IsLogging: bool + LatestDeliveryError: str + LatestNotificationError: str + LatestDeliveryTime: datetime + LatestNotificationTime: datetime + StartLoggingTime: datetime + StopLoggingTime: datetime + LatestCloudWatchLogsDeliveryError: str + LatestCloudWatchLogsDeliveryTime: datetime + LatestDigestDeliveryTime: datetime + LatestDigestDeliveryError: str + LatestDeliveryAttemptTime: str + LatestNotificationAttemptTime: str + LatestNotificationAttemptSucceeded: str + LatestDeliveryAttemptSucceeded: str + TimeLoggingStarted: str + TimeLoggingStopped: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListInsightsMetricDataResponseTypeDef(BaseModel): + EventSource: str + EventName: str + InsightType: InsightTypeType + ErrorCode: str + Timestamps: List[datetime] + Values: List[float] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutResourcePolicyResponseTypeDef(BaseModel): + ResourceArn: str + ResourcePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartQueryResponseTypeDef(BaseModel): + QueryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrailResponseTypeDef(BaseModel): + Name: str + S3BucketName: str + S3KeyPrefix: str + SnsTopicName: str + SnsTopicARN: str + IncludeGlobalServiceEvents: bool + IsMultiRegionTrail: bool + TrailARN: str + LogFileValidationEnabled: bool + CloudWatchLogsLogGroupArn: str + CloudWatchLogsRoleArn: str + KmsKeyId: str + IsOrganizationTrail: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsResponseTypeDef(BaseModel): + Channels: List[ChannelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateChannelRequestRequestTypeDef(BaseModel): + Name: str + Source: str + Destinations: Sequence[DestinationTypeDef] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateChannelResponseTypeDef(BaseModel): + ChannelArn: str + Name: str + Source: str + Destinations: List[DestinationTypeDef] + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelRequestRequestTypeDef(BaseModel): + Channel: str + Destinations: Optional[Sequence[DestinationTypeDef]] = None + Name: Optional[str] = None + +class UpdateChannelResponseTypeDef(BaseModel): + ChannelArn: str + Name: str + Source: str + Destinations: List[DestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EventSelectorOutputTypeDef(BaseModel): + ReadWriteType: Optional[ReadWriteTypeType] = None + IncludeManagementEvents: Optional[bool] = None + DataResources: Optional[List[DataResourceOutputTypeDef]] = None + ExcludeManagementEventSources: Optional[List[str]] = None + +class EventSelectorTypeDef(BaseModel): + ReadWriteType: Optional[ReadWriteTypeType] = None + IncludeManagementEvents: Optional[bool] = None + DataResources: Optional[Sequence[DataResourceTypeDef]] = None + ExcludeManagementEventSources: Optional[Sequence[str]] = None + +class DescribeQueryResponseTypeDef(BaseModel): + QueryId: str + QueryString: str + QueryStatus: QueryStatusType + QueryStatistics: QueryStatisticsForDescribeQueryTypeDef + ErrorMessage: str + DeliveryS3Uri: str + DeliveryStatus: DeliveryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrailsResponseTypeDef(BaseModel): + trailList: List[TrailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrailResponseTypeDef(BaseModel): + Trail: TrailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EventTypeDef(BaseModel): + EventId: Optional[str] = None + EventName: Optional[str] = None + ReadOnly: Optional[str] = None + AccessKeyId: Optional[str] = None + EventTime: Optional[datetime] = None + EventSource: Optional[str] = None + Username: Optional[str] = None + Resources: Optional[List[ResourceTypeDef]] = None + CloudTrailEvent: Optional[str] = None + +class GetInsightSelectorsResponseTypeDef(BaseModel): + TrailARN: str + InsightSelectors: List[InsightSelectorTypeDef] + EventDataStoreArn: str + InsightsDestination: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutInsightSelectorsRequestRequestTypeDef(BaseModel): + InsightSelectors: Sequence[InsightSelectorTypeDef] + TrailName: Optional[str] = None + EventDataStore: Optional[str] = None + InsightsDestination: Optional[str] = None + +class PutInsightSelectorsResponseTypeDef(BaseModel): + TrailARN: str + InsightSelectors: List[InsightSelectorTypeDef] + EventDataStoreArn: str + InsightsDestination: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryResultsResponseTypeDef(BaseModel): + QueryStatus: QueryStatusType + QueryStatistics: QueryStatisticsTypeDef + QueryResultRows: List[List[Dict[str, str]]] + ErrorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListImportFailuresResponseTypeDef(BaseModel): + Failures: List[ImportFailureListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ImportSourceTypeDef(BaseModel): + S3: S3ImportSourceTypeDef + +class ListImportsResponseTypeDef(BaseModel): + Imports: List[ImportsListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListImportFailuresRequestListImportFailuresPaginateTypeDef(BaseModel): + ImportId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportsRequestListImportsPaginateTypeDef(BaseModel): + Destination: Optional[str] = None + ImportStatus: Optional[ImportStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsRequestListTagsPaginateTypeDef(BaseModel): + ResourceIdList: Sequence[str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrailsRequestListTrailsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInsightsMetricDataRequestRequestTypeDef(BaseModel): + EventSource: str + EventName: str + InsightType: InsightTypeType + ErrorCode: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Period: Optional[int] = None + DataType: Optional[InsightsMetricDataTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPublicKeysRequestListPublicKeysPaginateTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPublicKeysRequestRequestTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + +class ListQueriesRequestRequestTypeDef(BaseModel): + EventDataStore: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + QueryStatus: Optional[QueryStatusType] = None + +class ListPublicKeysResponseTypeDef(BaseModel): + PublicKeyList: List[PublicKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListQueriesResponseTypeDef(BaseModel): + Queries: List[QueryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrailsResponseTypeDef(BaseModel): + Trails: List[TrailInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LookupEventsRequestLookupEventsPaginateTypeDef(BaseModel): + LookupAttributes: Optional[Sequence[LookupAttributeTypeDef]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + EventCategory: Optional[Literal["insight"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LookupEventsRequestRequestTypeDef(BaseModel): + LookupAttributes: Optional[Sequence[LookupAttributeTypeDef]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + EventCategory: Optional[Literal["insight"]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsResponseTypeDef(BaseModel): + ResourceTagList: List[ResourceTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateEventDataStoreResponseTypeDef(BaseModel): + EventDataStoreArn: str + Name: str + Status: EventDataStoreStatusType + AdvancedEventSelectors: List[AdvancedEventSelectorOutputTypeDef] + MultiRegionEnabled: bool + OrganizationEnabled: bool + RetentionPeriod: int + TerminationProtectionEnabled: bool + TagsList: List[TagTypeDef] + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + KmsKeyId: str + BillingMode: BillingModeType + ResponseMetadata: ResponseMetadataTypeDef + +class EventDataStoreTypeDef(BaseModel): + EventDataStoreArn: Optional[str] = None + Name: Optional[str] = None + TerminationProtectionEnabled: Optional[bool] = None + Status: Optional[EventDataStoreStatusType] = None + AdvancedEventSelectors: Optional[List[AdvancedEventSelectorOutputTypeDef]] = None + MultiRegionEnabled: Optional[bool] = None + OrganizationEnabled: Optional[bool] = None + RetentionPeriod: Optional[int] = None + CreatedTimestamp: Optional[datetime] = None + UpdatedTimestamp: Optional[datetime] = None + +class GetEventDataStoreResponseTypeDef(BaseModel): + EventDataStoreArn: str + Name: str + Status: EventDataStoreStatusType + AdvancedEventSelectors: List[AdvancedEventSelectorOutputTypeDef] + MultiRegionEnabled: bool + OrganizationEnabled: bool + RetentionPeriod: int + TerminationProtectionEnabled: bool + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + KmsKeyId: str + BillingMode: BillingModeType + FederationStatus: FederationStatusType + FederationRoleArn: str + PartitionKeys: List[PartitionKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreEventDataStoreResponseTypeDef(BaseModel): + EventDataStoreArn: str + Name: str + Status: EventDataStoreStatusType + AdvancedEventSelectors: List[AdvancedEventSelectorOutputTypeDef] + MultiRegionEnabled: bool + OrganizationEnabled: bool + RetentionPeriod: int + TerminationProtectionEnabled: bool + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + KmsKeyId: str + BillingMode: BillingModeType + ResponseMetadata: ResponseMetadataTypeDef + +class SourceConfigTypeDef(BaseModel): + ApplyToAllRegions: Optional[bool] = None + AdvancedEventSelectors: Optional[List[AdvancedEventSelectorOutputTypeDef]] = None + +class UpdateEventDataStoreResponseTypeDef(BaseModel): + EventDataStoreArn: str + Name: str + Status: EventDataStoreStatusType + AdvancedEventSelectors: List[AdvancedEventSelectorOutputTypeDef] + MultiRegionEnabled: bool + OrganizationEnabled: bool + RetentionPeriod: int + TerminationProtectionEnabled: bool + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + KmsKeyId: str + BillingMode: BillingModeType + FederationStatus: FederationStatusType + FederationRoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventSelectorsResponseTypeDef(BaseModel): + TrailARN: str + EventSelectors: List[EventSelectorOutputTypeDef] + AdvancedEventSelectors: List[AdvancedEventSelectorOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutEventSelectorsResponseTypeDef(BaseModel): + TrailARN: str + EventSelectors: List[EventSelectorOutputTypeDef] + AdvancedEventSelectors: List[AdvancedEventSelectorOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LookupEventsResponseTypeDef(BaseModel): + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetImportResponseTypeDef(BaseModel): + ImportId: str + Destinations: List[str] + ImportSource: ImportSourceTypeDef + StartEventTime: datetime + EndEventTime: datetime + ImportStatus: ImportStatusType + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + ImportStatistics: ImportStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportRequestRequestTypeDef(BaseModel): + Destinations: Optional[Sequence[str]] = None + ImportSource: Optional[ImportSourceTypeDef] = None + StartEventTime: Optional[TimestampTypeDef] = None + EndEventTime: Optional[TimestampTypeDef] = None + ImportId: Optional[str] = None + +class StartImportResponseTypeDef(BaseModel): + ImportId: str + Destinations: List[str] + ImportSource: ImportSourceTypeDef + StartEventTime: datetime + EndEventTime: datetime + ImportStatus: ImportStatusType + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopImportResponseTypeDef(BaseModel): + ImportId: str + ImportSource: ImportSourceTypeDef + Destinations: List[str] + ImportStatus: ImportStatusType + CreatedTimestamp: datetime + UpdatedTimestamp: datetime + StartEventTime: datetime + EndEventTime: datetime + ImportStatistics: ImportStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventDataStoresResponseTypeDef(BaseModel): + EventDataStores: List[EventDataStoreTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetChannelResponseTypeDef(BaseModel): + ChannelArn: str + Name: str + Source: str + SourceConfig: SourceConfigTypeDef + Destinations: List[DestinationTypeDef] + IngestionStatus: IngestionStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventDataStoreRequestRequestTypeDef(BaseModel): + Name: str + AdvancedEventSelectors: Optional[Sequence[AdvancedEventSelectorUnionTypeDef]] = None + MultiRegionEnabled: Optional[bool] = None + OrganizationEnabled: Optional[bool] = None + RetentionPeriod: Optional[int] = None + TerminationProtectionEnabled: Optional[bool] = None + TagsList: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + StartIngestion: Optional[bool] = None + BillingMode: Optional[BillingModeType] = None + +class UpdateEventDataStoreRequestRequestTypeDef(BaseModel): + EventDataStore: str + Name: Optional[str] = None + AdvancedEventSelectors: Optional[Sequence[AdvancedEventSelectorUnionTypeDef]] = None + MultiRegionEnabled: Optional[bool] = None + OrganizationEnabled: Optional[bool] = None + RetentionPeriod: Optional[int] = None + TerminationProtectionEnabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + BillingMode: Optional[BillingModeType] = None + +class PutEventSelectorsRequestRequestTypeDef(BaseModel): + TrailName: str + EventSelectors: Optional[Sequence[EventSelectorUnionTypeDef]] = None + AdvancedEventSelectors: Optional[Sequence[AdvancedEventSelectorUnionTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/cloudtrail_constants.py b/aws_resource_validator/pydantic_models/cloudtrail_constants.py new file mode 100644 index 00000000..b68f377e --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudtrail_constants.py @@ -0,0 +1,476 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BillingModeType = Literal["EXTENDABLE_RETENTION_PRICING", "FIXED_RETENTION_PRICING"] +DeliveryStatusType = Literal["ACCESS_DENIED", + "ACCESS_DENIED_SIGNING_FILE", + "CANCELLED", + "FAILED", + "FAILED_SIGNING_FILE", + "PENDING", + "RESOURCE_NOT_FOUND", + "SUCCESS", + "UNKNOWN",] +DestinationTypeType = Literal["AWS_SERVICE", "EVENT_DATA_STORE"] +EventCategoryType = Literal["insight"] +EventDataStoreStatusType = Literal["CREATED", + "ENABLED", + "PENDING_DELETION", + "STARTING_INGESTION", + "STOPPED_INGESTION", + "STOPPING_INGESTION",] +FederationStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING"] +ImportFailureStatusType = Literal["FAILED", "RETRY", "SUCCEEDED"] +ImportStatusType = Literal["COMPLETED", "FAILED", "INITIALIZING", "IN_PROGRESS", "STOPPED"] +InsightTypeType = Literal["ApiCallRateInsight", "ApiErrorRateInsight"] +InsightsMetricDataTypeType = Literal["FillWithZeros", "NonZeroData"] +ListImportFailuresPaginatorName = Literal["list_import_failures"] +ListImportsPaginatorName = Literal["list_imports"] +ListPublicKeysPaginatorName = Literal["list_public_keys"] +ListTagsPaginatorName = Literal["list_tags"] +ListTrailsPaginatorName = Literal["list_trails"] +LookupAttributeKeyType = Literal["AccessKeyId", + "EventId", + "EventName", + "EventSource", + "ReadOnly", + "ResourceName", + "ResourceType", + "Username",] +LookupEventsPaginatorName = Literal["lookup_events"] +QueryStatusType = Literal["CANCELLED", "FAILED", "FINISHED", "QUEUED", "RUNNING", "TIMED_OUT"] +ReadWriteTypeType = Literal["All", "ReadOnly", "WriteOnly"] +CloudTrailServiceName = Literal["cloudtrail"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_import_failures", + "list_imports", + "list_public_keys", + "list_tags", + "list_trails", + "lookup_events",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AdvancedEventSelectorUnionTypeDef = Union[ 'AdvancedEventSelectorTypeDef', 'AdvancedEventSelectorOutputTypeDef' ] +EventSelectorUnionTypeDef = Union['EventSelectorTypeDef', 'EventSelectorOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/cloudtrail_data_classes.py b/aws_resource_validator/pydantic_models/cloudtrail_data_classes.py new file mode 100644 index 00000000..1b79bdc6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudtrail_data_classes.py @@ -0,0 +1,44 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudtrail_data_constants import * + +class AuditEventResultEntryTypeDef(BaseModel): + eventID: str + id: str + +class AuditEventTypeDef(BaseModel): + eventData: str + id: str + eventDataChecksum: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ResultErrorEntryTypeDef(BaseModel): + errorCode: str + errorMessage: str + id: str + +class PutAuditEventsRequestRequestTypeDef(BaseModel): + auditEvents: Sequence[AuditEventTypeDef] + channelArn: str + externalId: Optional[str] = None + +class PutAuditEventsResponseTypeDef(BaseModel): + failed: List[ResultErrorEntryTypeDef] + successful: List[AuditEventResultEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloudtrail_data_constants.py b/aws_resource_validator/pydantic_models/cloudtrail_data_constants.py new file mode 100644 index 00000000..b8f3f6a8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudtrail_data_constants.py @@ -0,0 +1,410 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CloudTrailDataServiceServiceName = Literal["cloudtrail-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cloudwatch_classes.py b/aws_resource_validator/pydantic_models/cloudwatch_classes.py new file mode 100644 index 00000000..9841cdd8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudwatch_classes.py @@ -0,0 +1,910 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cloudwatch_constants import * + +class AlarmHistoryItemTypeDef(BaseModel): + AlarmName: Optional[str] = None + AlarmType: Optional[AlarmTypeType] = None + Timestamp: Optional[datetime] = None + HistoryItemType: Optional[HistoryItemTypeType] = None + HistorySummary: Optional[str] = None + HistoryData: Optional[str] = None + +class RangeTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + +class DimensionTypeDef(BaseModel): + Name: str + Value: str + +class MetricCharacteristicsTypeDef(BaseModel): + PeriodicSpikes: Optional[bool] = None + +class CloudwatchEventStateTypeDef(BaseModel): + timestamp: str + value: str + reason: Optional[str] = None + reasonData: Optional[str] = None + actionsSuppressedBy: Optional[str] = None + actionsSuppressedReason: Optional[str] = None + +class CloudwatchEventMetricStatsMetricTypeDef(BaseModel): + metricName: str + namespace: str + dimensions: Dict[str, str] + +class CompositeAlarmTypeDef(BaseModel): + ActionsEnabled: Optional[bool] = None + AlarmActions: Optional[List[str]] = None + AlarmArn: Optional[str] = None + AlarmConfigurationUpdatedTimestamp: Optional[datetime] = None + AlarmDescription: Optional[str] = None + AlarmName: Optional[str] = None + AlarmRule: Optional[str] = None + InsufficientDataActions: Optional[List[str]] = None + OKActions: Optional[List[str]] = None + StateReason: Optional[str] = None + StateReasonData: Optional[str] = None + StateUpdatedTimestamp: Optional[datetime] = None + StateValue: Optional[StateValueType] = None + StateTransitionedTimestamp: Optional[datetime] = None + ActionsSuppressedBy: Optional[ActionsSuppressedByType] = None + ActionsSuppressedReason: Optional[str] = None + ActionsSuppressor: Optional[str] = None + ActionsSuppressorWaitPeriod: Optional[int] = None + ActionsSuppressorExtensionPeriod: Optional[int] = None + +class DashboardEntryTypeDef(BaseModel): + DashboardName: Optional[str] = None + DashboardArn: Optional[str] = None + LastModified: Optional[datetime] = None + Size: Optional[int] = None + +class DashboardValidationMessageTypeDef(BaseModel): + DataPath: Optional[str] = None + Message: Optional[str] = None + +class DatapointTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + SampleCount: Optional[float] = None + Average: Optional[float] = None + Sum: Optional[float] = None + Minimum: Optional[float] = None + Maximum: Optional[float] = None + Unit: Optional[StandardUnitType] = None + ExtendedStatistics: Optional[Dict[str, float]] = None + +class DeleteAlarmsInputRequestTypeDef(BaseModel): + AlarmNames: Sequence[str] + +class DeleteDashboardsInputRequestTypeDef(BaseModel): + DashboardNames: Sequence[str] + +class DeleteInsightRulesInputRequestTypeDef(BaseModel): + RuleNames: Sequence[str] + +class PartialFailureTypeDef(BaseModel): + FailureResource: Optional[str] = None + ExceptionType: Optional[str] = None + FailureCode: Optional[str] = None + FailureDescription: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteMetricStreamInputRequestTypeDef(BaseModel): + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeAlarmsInputRequestTypeDef(BaseModel): + AlarmNames: Optional[Sequence[str]] = None + AlarmNamePrefix: Optional[str] = None + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + ChildrenOfAlarmName: Optional[str] = None + ParentsOfAlarmName: Optional[str] = None + StateValue: Optional[StateValueType] = None + ActionPrefix: Optional[str] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInsightRulesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class InsightRuleTypeDef(BaseModel): + Name: str + State: str + Schema: str + Definition: str + ManagedRule: Optional[bool] = None + +class DimensionFilterTypeDef(BaseModel): + Name: str + Value: Optional[str] = None + +class DisableAlarmActionsInputRequestTypeDef(BaseModel): + AlarmNames: Sequence[str] + +class DisableInsightRulesInputRequestTypeDef(BaseModel): + RuleNames: Sequence[str] + +class EnableAlarmActionsInputRequestTypeDef(BaseModel): + AlarmNames: Sequence[str] + +class EnableInsightRulesInputRequestTypeDef(BaseModel): + RuleNames: Sequence[str] + +class GetDashboardInputRequestTypeDef(BaseModel): + DashboardName: str + +class InsightRuleMetricDatapointTypeDef(BaseModel): + Timestamp: datetime + UniqueContributors: Optional[float] = None + MaxContributorValue: Optional[float] = None + SampleCount: Optional[float] = None + Average: Optional[float] = None + Sum: Optional[float] = None + Minimum: Optional[float] = None + Maximum: Optional[float] = None + +class LabelOptionsTypeDef(BaseModel): + Timezone: Optional[str] = None + +class MessageDataTypeDef(BaseModel): + Code: Optional[str] = None + Value: Optional[str] = None + +class GetMetricStreamInputRequestTypeDef(BaseModel): + Name: str + +class MetricStreamFilterTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricNames: Optional[List[str]] = None + +class GetMetricWidgetImageInputRequestTypeDef(BaseModel): + MetricWidget: str + OutputFormat: Optional[str] = None + +class InsightRuleContributorDatapointTypeDef(BaseModel): + Timestamp: datetime + ApproximateValue: float + +class ListDashboardsInputRequestTypeDef(BaseModel): + DashboardNamePrefix: Optional[str] = None + NextToken: Optional[str] = None + +class ListManagedInsightRulesInputRequestTypeDef(BaseModel): + ResourceARN: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMetricStreamsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MetricStreamEntryTypeDef(BaseModel): + Arn: Optional[str] = None + CreationDate: Optional[datetime] = None + LastUpdateDate: Optional[datetime] = None + Name: Optional[str] = None + FirehoseArn: Optional[str] = None + State: Optional[str] = None + OutputFormat: Optional[MetricStreamOutputFormatType] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ManagedRuleStateTypeDef(BaseModel): + RuleName: str + State: str + +class StatisticSetTypeDef(BaseModel): + SampleCount: float + Sum: float + Minimum: float + Maximum: float + +class MetricStreamStatisticsMetricTypeDef(BaseModel): + Namespace: str + MetricName: str + +class PutDashboardInputRequestTypeDef(BaseModel): + DashboardName: str + DashboardBody: str + +class SetAlarmStateInputAlarmSetStateTypeDef(BaseModel): + StateValue: StateValueType + StateReason: str + StateReasonData: Optional[str] = None + +class SetAlarmStateInputRequestTypeDef(BaseModel): + AlarmName: str + StateValue: StateValueType + StateReason: str + StateReasonData: Optional[str] = None + +class StartMetricStreamsInputRequestTypeDef(BaseModel): + Names: Sequence[str] + +class StopMetricStreamsInputRequestTypeDef(BaseModel): + Names: Sequence[str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class AnomalyDetectorConfigurationTypeDef(BaseModel): + ExcludedTimeRanges: Optional[List[RangeTypeDef]] = None + MetricTimezone: Optional[str] = None + +class DescribeAlarmsForMetricInputRequestTypeDef(BaseModel): + MetricName: str + Namespace: str + Statistic: Optional[StatisticType] = None + ExtendedStatistic: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Period: Optional[int] = None + Unit: Optional[StandardUnitType] = None + +class DescribeAnomalyDetectorsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + AnomalyDetectorTypes: Optional[Sequence[AnomalyDetectorTypeType]] = None + +class MetricPaginatorTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + +class MetricTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + +class SingleMetricAnomalyDetectorPaginatorTypeDef(BaseModel): + AccountId: Optional[str] = None + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + Stat: Optional[str] = None + +class SingleMetricAnomalyDetectorTypeDef(BaseModel): + AccountId: Optional[str] = None + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Stat: Optional[str] = None + +class CloudwatchEventMetricStatsTypeDef(BaseModel): + period: str + stat: str + metric: Optional[CloudwatchEventMetricStatsMetricTypeDef] = None + +class DeleteInsightRulesOutputTypeDef(BaseModel): + Failures: List[PartialFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAlarmHistoryOutputTypeDef(BaseModel): + AlarmHistoryItems: List[AlarmHistoryItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableInsightRulesOutputTypeDef(BaseModel): + Failures: List[PartialFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnableInsightRulesOutputTypeDef(BaseModel): + Failures: List[PartialFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDashboardOutputTypeDef(BaseModel): + DashboardArn: str + DashboardBody: str + DashboardName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMetricStatisticsOutputTypeDef(BaseModel): + Label: str + Datapoints: List[DatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMetricWidgetImageOutputTypeDef(BaseModel): + MetricWidgetImage: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class ListDashboardsOutputTypeDef(BaseModel): + DashboardEntries: List[DashboardEntryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutDashboardOutputTypeDef(BaseModel): + DashboardValidationMessages: List[DashboardValidationMessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutManagedInsightRulesOutputTypeDef(BaseModel): + Failures: List[PartialFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutMetricStreamOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAlarmHistoryInputAlarmDescribeHistoryTypeDef(BaseModel): + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + HistoryItemType: Optional[HistoryItemTypeType] = None + StartDate: Optional[TimestampTypeDef] = None + EndDate: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + ScanBy: Optional[ScanByType] = None + +class DescribeAlarmHistoryInputRequestTypeDef(BaseModel): + AlarmName: Optional[str] = None + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + HistoryItemType: Optional[HistoryItemTypeType] = None + StartDate: Optional[TimestampTypeDef] = None + EndDate: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + ScanBy: Optional[ScanByType] = None + +class GetInsightRuleReportInputRequestTypeDef(BaseModel): + RuleName: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Period: int + MaxContributorCount: Optional[int] = None + Metrics: Optional[Sequence[str]] = None + OrderBy: Optional[str] = None + +class GetMetricStatisticsInputMetricGetStatisticsTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Period: int + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Statistics: Optional[Sequence[StatisticType]] = None + ExtendedStatistics: Optional[Sequence[str]] = None + Unit: Optional[StandardUnitType] = None + +class GetMetricStatisticsInputRequestTypeDef(BaseModel): + Namespace: str + MetricName: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Period: int + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Statistics: Optional[Sequence[StatisticType]] = None + ExtendedStatistics: Optional[Sequence[str]] = None + Unit: Optional[StandardUnitType] = None + +class DescribeAlarmHistoryInputDescribeAlarmHistoryPaginateTypeDef(BaseModel): + AlarmName: Optional[str] = None + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + HistoryItemType: Optional[HistoryItemTypeType] = None + StartDate: Optional[TimestampTypeDef] = None + EndDate: Optional[TimestampTypeDef] = None + ScanBy: Optional[ScanByType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAlarmsInputDescribeAlarmsPaginateTypeDef(BaseModel): + AlarmNames: Optional[Sequence[str]] = None + AlarmNamePrefix: Optional[str] = None + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + ChildrenOfAlarmName: Optional[str] = None + ParentsOfAlarmName: Optional[str] = None + StateValue: Optional[StateValueType] = None + ActionPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAnomalyDetectorsInputDescribeAnomalyDetectorsPaginateTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + AnomalyDetectorTypes: Optional[Sequence[AnomalyDetectorTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDashboardsInputListDashboardsPaginateTypeDef(BaseModel): + DashboardNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAlarmsInputAlarmExistsWaitTypeDef(BaseModel): + AlarmNames: Optional[Sequence[str]] = None + AlarmNamePrefix: Optional[str] = None + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + ChildrenOfAlarmName: Optional[str] = None + ParentsOfAlarmName: Optional[str] = None + StateValue: Optional[StateValueType] = None + ActionPrefix: Optional[str] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeAlarmsInputCompositeAlarmExistsWaitTypeDef(BaseModel): + AlarmNames: Optional[Sequence[str]] = None + AlarmNamePrefix: Optional[str] = None + AlarmTypes: Optional[Sequence[AlarmTypeType]] = None + ChildrenOfAlarmName: Optional[str] = None + ParentsOfAlarmName: Optional[str] = None + StateValue: Optional[StateValueType] = None + ActionPrefix: Optional[str] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInsightRulesOutputTypeDef(BaseModel): + NextToken: str + InsightRules: List[InsightRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMetricsInputListMetricsPaginateTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionFilterTypeDef]] = None + RecentlyActive: Optional[Literal["PT3H"]] = None + IncludeLinkedAccounts: Optional[bool] = None + OwningAccount: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMetricsInputRequestTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionFilterTypeDef]] = None + NextToken: Optional[str] = None + RecentlyActive: Optional[Literal["PT3H"]] = None + IncludeLinkedAccounts: Optional[bool] = None + OwningAccount: Optional[str] = None + +class MetricDataResultTypeDef(BaseModel): + Id: Optional[str] = None + Label: Optional[str] = None + Timestamps: Optional[List[datetime]] = None + Values: Optional[List[float]] = None + StatusCode: Optional[StatusCodeType] = None + Messages: Optional[List[MessageDataTypeDef]] = None + +class InsightRuleContributorTypeDef(BaseModel): + Keys: List[str] + ApproximateAggregateValue: float + Datapoints: List[InsightRuleContributorDatapointTypeDef] + +class ListMetricStreamsOutputTypeDef(BaseModel): + NextToken: str + Entries: List[MetricStreamEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ManagedRuleTypeDef(BaseModel): + TemplateName: str + ResourceARN: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class PutCompositeAlarmInputRequestTypeDef(BaseModel): + AlarmName: str + AlarmRule: str + ActionsEnabled: Optional[bool] = None + AlarmActions: Optional[Sequence[str]] = None + AlarmDescription: Optional[str] = None + InsufficientDataActions: Optional[Sequence[str]] = None + OKActions: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ActionsSuppressor: Optional[str] = None + ActionsSuppressorWaitPeriod: Optional[int] = None + ActionsSuppressorExtensionPeriod: Optional[int] = None + +class PutInsightRuleInputRequestTypeDef(BaseModel): + RuleName: str + RuleDefinition: str + RuleState: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class ManagedRuleDescriptionTypeDef(BaseModel): + TemplateName: Optional[str] = None + ResourceARN: Optional[str] = None + RuleState: Optional[ManagedRuleStateTypeDef] = None + +class MetricDatumTypeDef(BaseModel): + MetricName: str + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Timestamp: Optional[TimestampTypeDef] = None + Value: Optional[float] = None + StatisticValues: Optional[StatisticSetTypeDef] = None + Values: Optional[Sequence[float]] = None + Counts: Optional[Sequence[float]] = None + Unit: Optional[StandardUnitType] = None + StorageResolution: Optional[int] = None + +class MetricStreamStatisticsConfigurationTypeDef(BaseModel): + IncludeMetrics: List[MetricStreamStatisticsMetricTypeDef] + AdditionalStatistics: List[str] + +class ListMetricsOutputPaginatorTypeDef(BaseModel): + Metrics: List[MetricPaginatorTypeDef] + NextToken: str + OwningAccounts: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricStatPaginatorTypeDef(BaseModel): + Metric: MetricPaginatorTypeDef + Period: int + Stat: str + Unit: Optional[StandardUnitType] = None + +class ListMetricsOutputTypeDef(BaseModel): + Metrics: List[MetricTypeDef] + NextToken: str + OwningAccounts: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricStatTypeDef(BaseModel): + Metric: MetricTypeDef + Period: int + Stat: str + Unit: Optional[StandardUnitType] = None + +class CloudwatchEventMetricTypeDef(BaseModel): + id: str + returnData: bool + metricStat: Optional[CloudwatchEventMetricStatsTypeDef] = None + expression: Optional[str] = None + label: Optional[str] = None + period: Optional[int] = None + +class GetMetricDataOutputTypeDef(BaseModel): + MetricDataResults: List[MetricDataResultTypeDef] + NextToken: str + Messages: List[MessageDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInsightRuleReportOutputTypeDef(BaseModel): + KeyLabels: List[str] + AggregationStatistic: str + AggregateValue: float + ApproximateUniqueCount: int + Contributors: List[InsightRuleContributorTypeDef] + MetricDatapoints: List[InsightRuleMetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutManagedInsightRulesInputRequestTypeDef(BaseModel): + ManagedRules: Sequence[ManagedRuleTypeDef] + +class ListManagedInsightRulesOutputTypeDef(BaseModel): + ManagedRules: List[ManagedRuleDescriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutMetricDataInputRequestTypeDef(BaseModel): + Namespace: str + MetricData: Sequence[MetricDatumTypeDef] + +class GetMetricStreamOutputTypeDef(BaseModel): + Arn: str + Name: str + IncludeFilters: List[MetricStreamFilterTypeDef] + ExcludeFilters: List[MetricStreamFilterTypeDef] + FirehoseArn: str + RoleArn: str + State: str + CreationDate: datetime + LastUpdateDate: datetime + OutputFormat: MetricStreamOutputFormatType + StatisticsConfigurations: List[MetricStreamStatisticsConfigurationTypeDef] + IncludeLinkedAccountsMetrics: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutMetricStreamInputRequestTypeDef(BaseModel): + Name: str + FirehoseArn: str + RoleArn: str + OutputFormat: MetricStreamOutputFormatType + IncludeFilters: Optional[Sequence[MetricStreamFilterTypeDef]] = None + ExcludeFilters: Optional[Sequence[MetricStreamFilterTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StatisticsConfigurations: Optional[ Sequence[MetricStreamStatisticsConfigurationTypeDef] ] = None + IncludeLinkedAccountsMetrics: Optional[bool] = None + +class MetricDataQueryPaginatorTypeDef(BaseModel): + Id: str + MetricStat: Optional[MetricStatPaginatorTypeDef] = None + Expression: Optional[str] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + Period: Optional[int] = None + AccountId: Optional[str] = None + +class MetricDataQueryTypeDef(BaseModel): + Id: str + MetricStat: Optional[MetricStatTypeDef] = None + Expression: Optional[str] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + Period: Optional[int] = None + AccountId: Optional[str] = None + +class CloudwatchEventDetailConfigurationTypeDef(BaseModel): + id: Optional[str] = None + description: Optional[str] = None + metrics: Optional[List[CloudwatchEventMetricTypeDef]] = None + actionsSuppressor: Optional[str] = None + actionsSuppressorWaitPeriod: Optional[int] = None + actionsSuppressorExtensionPeriod: Optional[int] = None + threshold: Optional[int] = None + evaluationPeriods: Optional[int] = None + alarmRule: Optional[str] = None + alarmName: Optional[str] = None + treatMissingData: Optional[str] = None + comparisonOperator: Optional[str] = None + timestamp: Optional[str] = None + actionsEnabled: Optional[bool] = None + okActions: Optional[List[str]] = None + alarmActions: Optional[List[str]] = None + insufficientDataActions: Optional[List[str]] = None + +class GetMetricDataInputGetMetricDataPaginateTypeDef(BaseModel): + MetricDataQueries: Sequence[MetricDataQueryPaginatorTypeDef] + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + ScanBy: Optional[ScanByType] = None + LabelOptions: Optional[LabelOptionsTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class MetricAlarmPaginatorTypeDef(BaseModel): + AlarmName: Optional[str] = None + AlarmArn: Optional[str] = None + AlarmDescription: Optional[str] = None + AlarmConfigurationUpdatedTimestamp: Optional[datetime] = None + ActionsEnabled: Optional[bool] = None + OKActions: Optional[List[str]] = None + AlarmActions: Optional[List[str]] = None + InsufficientDataActions: Optional[List[str]] = None + StateValue: Optional[StateValueType] = None + StateReason: Optional[str] = None + StateReasonData: Optional[str] = None + StateUpdatedTimestamp: Optional[datetime] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Statistic: Optional[StatisticType] = None + ExtendedStatistic: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + Period: Optional[int] = None + Unit: Optional[StandardUnitType] = None + EvaluationPeriods: Optional[int] = None + DatapointsToAlarm: Optional[int] = None + Threshold: Optional[float] = None + ComparisonOperator: Optional[ComparisonOperatorType] = None + TreatMissingData: Optional[str] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + Metrics: Optional[List[MetricDataQueryPaginatorTypeDef]] = None + ThresholdMetricId: Optional[str] = None + EvaluationState: Optional[Literal["PARTIAL_DATA"]] = None + StateTransitionedTimestamp: Optional[datetime] = None + +class MetricMathAnomalyDetectorPaginatorTypeDef(BaseModel): + MetricDataQueries: Optional[List[MetricDataQueryPaginatorTypeDef]] = None + +class GetMetricDataInputRequestTypeDef(BaseModel): + MetricDataQueries: Sequence[MetricDataQueryTypeDef] + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + NextToken: Optional[str] = None + ScanBy: Optional[ScanByType] = None + MaxDatapoints: Optional[int] = None + LabelOptions: Optional[LabelOptionsTypeDef] = None + +class MetricAlarmTypeDef(BaseModel): + AlarmName: Optional[str] = None + AlarmArn: Optional[str] = None + AlarmDescription: Optional[str] = None + AlarmConfigurationUpdatedTimestamp: Optional[datetime] = None + ActionsEnabled: Optional[bool] = None + OKActions: Optional[List[str]] = None + AlarmActions: Optional[List[str]] = None + InsufficientDataActions: Optional[List[str]] = None + StateValue: Optional[StateValueType] = None + StateReason: Optional[str] = None + StateReasonData: Optional[str] = None + StateUpdatedTimestamp: Optional[datetime] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Statistic: Optional[StatisticType] = None + ExtendedStatistic: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + Period: Optional[int] = None + Unit: Optional[StandardUnitType] = None + EvaluationPeriods: Optional[int] = None + DatapointsToAlarm: Optional[int] = None + Threshold: Optional[float] = None + ComparisonOperator: Optional[ComparisonOperatorType] = None + TreatMissingData: Optional[str] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + Metrics: Optional[List[MetricDataQueryTypeDef]] = None + ThresholdMetricId: Optional[str] = None + EvaluationState: Optional[Literal["PARTIAL_DATA"]] = None + StateTransitionedTimestamp: Optional[datetime] = None + +class MetricMathAnomalyDetectorTypeDef(BaseModel): + MetricDataQueries: Optional[Sequence[MetricDataQueryTypeDef]] = None + +class PutMetricAlarmInputMetricPutAlarmTypeDef(BaseModel): + AlarmName: str + EvaluationPeriods: int + ComparisonOperator: ComparisonOperatorType + AlarmDescription: Optional[str] = None + ActionsEnabled: Optional[bool] = None + OKActions: Optional[Sequence[str]] = None + AlarmActions: Optional[Sequence[str]] = None + InsufficientDataActions: Optional[Sequence[str]] = None + Statistic: Optional[StatisticType] = None + ExtendedStatistic: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Period: Optional[int] = None + Unit: Optional[StandardUnitType] = None + DatapointsToAlarm: Optional[int] = None + Threshold: Optional[float] = None + TreatMissingData: Optional[str] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + Metrics: Optional[Sequence[MetricDataQueryTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ThresholdMetricId: Optional[str] = None + +class PutMetricAlarmInputRequestTypeDef(BaseModel): + AlarmName: str + EvaluationPeriods: int + ComparisonOperator: ComparisonOperatorType + AlarmDescription: Optional[str] = None + ActionsEnabled: Optional[bool] = None + OKActions: Optional[Sequence[str]] = None + AlarmActions: Optional[Sequence[str]] = None + InsufficientDataActions: Optional[Sequence[str]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Statistic: Optional[StatisticType] = None + ExtendedStatistic: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Period: Optional[int] = None + Unit: Optional[StandardUnitType] = None + DatapointsToAlarm: Optional[int] = None + Threshold: Optional[float] = None + TreatMissingData: Optional[str] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + Metrics: Optional[Sequence[MetricDataQueryTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ThresholdMetricId: Optional[str] = None + +class CloudwatchEventDetailTypeDef(BaseModel): + alarmName: str + state: CloudwatchEventStateTypeDef + operation: Optional[str] = None + configuration: Optional[CloudwatchEventDetailConfigurationTypeDef] = None + previousConfiguration: Optional[CloudwatchEventDetailConfigurationTypeDef] = None + previousState: Optional[CloudwatchEventStateTypeDef] = None + +class DescribeAlarmsOutputPaginatorTypeDef(BaseModel): + CompositeAlarms: List[CompositeAlarmTypeDef] + MetricAlarms: List[MetricAlarmPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AnomalyDetectorPaginatorTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + Stat: Optional[str] = None + Configuration: Optional[AnomalyDetectorConfigurationTypeDef] = None + StateValue: Optional[AnomalyDetectorStateValueType] = None + MetricCharacteristics: Optional[MetricCharacteristicsTypeDef] = None + SingleMetricAnomalyDetector: Optional[SingleMetricAnomalyDetectorPaginatorTypeDef] = None + MetricMathAnomalyDetector: Optional[MetricMathAnomalyDetectorPaginatorTypeDef] = None + +class DescribeAlarmsForMetricOutputTypeDef(BaseModel): + MetricAlarms: List[MetricAlarmTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAlarmsOutputTypeDef(BaseModel): + CompositeAlarms: List[CompositeAlarmTypeDef] + MetricAlarms: List[MetricAlarmTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricStatAlarmTypeDef(BaseModel): + Metric: MetricAlarmTypeDef + Period: int + Stat: str + Unit: Optional[StandardUnitType] = None + +class AnomalyDetectorTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + Stat: Optional[str] = None + Configuration: Optional[AnomalyDetectorConfigurationTypeDef] = None + StateValue: Optional[AnomalyDetectorStateValueType] = None + MetricCharacteristics: Optional[MetricCharacteristicsTypeDef] = None + SingleMetricAnomalyDetector: Optional[SingleMetricAnomalyDetectorTypeDef] = None + MetricMathAnomalyDetector: Optional[MetricMathAnomalyDetectorTypeDef] = None + +class DeleteAnomalyDetectorInputRequestTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Stat: Optional[str] = None + SingleMetricAnomalyDetector: Optional[SingleMetricAnomalyDetectorTypeDef] = None + MetricMathAnomalyDetector: Optional[MetricMathAnomalyDetectorTypeDef] = None + +class PutAnomalyDetectorInputRequestTypeDef(BaseModel): + Namespace: Optional[str] = None + MetricName: Optional[str] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Stat: Optional[str] = None + Configuration: Optional[AnomalyDetectorConfigurationTypeDef] = None + MetricCharacteristics: Optional[MetricCharacteristicsTypeDef] = None + SingleMetricAnomalyDetector: Optional[SingleMetricAnomalyDetectorTypeDef] = None + MetricMathAnomalyDetector: Optional[MetricMathAnomalyDetectorTypeDef] = None + +class CloudwatchEventTypeDef(BaseModel): + version: str + id: str + source: str + account: str + time: str + region: str + resources: List[str] + detail: CloudwatchEventDetailTypeDef + +class DescribeAnomalyDetectorsOutputPaginatorTypeDef(BaseModel): + AnomalyDetectors: List[AnomalyDetectorPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricDataQueryAlarmTypeDef(BaseModel): + Id: str + MetricStat: Optional[MetricStatAlarmTypeDef] = None + Expression: Optional[str] = None + Label: Optional[str] = None + ReturnData: Optional[bool] = None + Period: Optional[int] = None + AccountId: Optional[str] = None + +class DescribeAnomalyDetectorsOutputTypeDef(BaseModel): + AnomalyDetectors: List[AnomalyDetectorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cloudwatch_constants.py b/aws_resource_validator/pydantic_models/cloudwatch_constants.py new file mode 100644 index 00000000..2957a96e --- /dev/null +++ b/aws_resource_validator/pydantic_models/cloudwatch_constants.py @@ -0,0 +1,487 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionsSuppressedByType = Literal["Alarm", "ExtensionPeriod", "WaitPeriod"] +AlarmExistsWaiterName = Literal["alarm_exists"] +AlarmTypeType = Literal["CompositeAlarm", "MetricAlarm"] +AnomalyDetectorStateValueType = Literal["PENDING_TRAINING", "TRAINED", "TRAINED_INSUFFICIENT_DATA"] +AnomalyDetectorTypeType = Literal["METRIC_MATH", "SINGLE_METRIC"] +ComparisonOperatorType = Literal["GreaterThanOrEqualToThreshold", + "GreaterThanThreshold", + "GreaterThanUpperThreshold", + "LessThanLowerOrGreaterThanUpperThreshold", + "LessThanLowerThreshold", + "LessThanOrEqualToThreshold", + "LessThanThreshold",] +CompositeAlarmExistsWaiterName = Literal["composite_alarm_exists"] +DescribeAlarmHistoryPaginatorName = Literal["describe_alarm_history"] +DescribeAlarmsPaginatorName = Literal["describe_alarms"] +DescribeAnomalyDetectorsPaginatorName = Literal["describe_anomaly_detectors"] +EvaluationStateType = Literal["PARTIAL_DATA"] +GetMetricDataPaginatorName = Literal["get_metric_data"] +HistoryItemTypeType = Literal["Action", "ConfigurationUpdate", "StateUpdate"] +ListDashboardsPaginatorName = Literal["list_dashboards"] +ListMetricsPaginatorName = Literal["list_metrics"] +MetricStreamOutputFormatType = Literal["json", "opentelemetry0.7", "opentelemetry1.0"] +RecentlyActiveType = Literal["PT3H"] +ScanByType = Literal["TimestampAscending", "TimestampDescending"] +StandardUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +StateValueType = Literal["ALARM", "INSUFFICIENT_DATA", "OK"] +StatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +StatusCodeType = Literal["Complete", "Forbidden", "InternalError", "PartialData"] +CloudWatchServiceName = Literal["cloudwatch"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_alarm_history", + "describe_alarms", + "describe_anomaly_detectors", + "get_metric_data", + "list_dashboards", + "list_metrics",] +WaiterName = Literal["alarm_exists", "composite_alarm_exists"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/codeartifact_classes.py b/aws_resource_validator/pydantic_models/codeartifact_classes.py new file mode 100644 index 00000000..0f99433b --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeartifact_classes.py @@ -0,0 +1,854 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codeartifact_constants import * + +class AssetSummaryTypeDef(BaseModel): + name: str + size: Optional[int] = None + hashes: Optional[Dict[HashAlgorithmType, str]] = None + +class AssociateExternalConnectionRequestRequestTypeDef(BaseModel): + domain: str + repository: str + externalConnection: str + domainOwner: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociatedPackageTypeDef(BaseModel): + format: Optional[PackageFormatType] = None + namespace: Optional[str] = None + package: Optional[str] = None + associationType: Optional[PackageGroupAssociationTypeType] = None + +class CopyPackageVersionsRequestRequestTypeDef(BaseModel): + domain: str + sourceRepository: str + destinationRepository: str + format: PackageFormatType + package: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + versions: Optional[Sequence[str]] = None + versionRevisions: Optional[Mapping[str, str]] = None + allowOverwrite: Optional[bool] = None + includeFromUpstream: Optional[bool] = None + +class PackageVersionErrorTypeDef(BaseModel): + errorCode: Optional[PackageVersionErrorCodeType] = None + errorMessage: Optional[str] = None + +class SuccessfulPackageVersionInfoTypeDef(BaseModel): + revision: Optional[str] = None + status: Optional[PackageVersionStatusType] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class DomainDescriptionTypeDef(BaseModel): + name: Optional[str] = None + owner: Optional[str] = None + arn: Optional[str] = None + status: Optional[DomainStatusType] = None + createdTime: Optional[datetime] = None + encryptionKey: Optional[str] = None + repositoryCount: Optional[int] = None + assetSizeBytes: Optional[int] = None + s3BucketArn: Optional[str] = None + +class UpstreamRepositoryTypeDef(BaseModel): + repositoryName: str + +class DeleteDomainPermissionsPolicyRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + policyRevision: Optional[str] = None + +class ResourcePolicyTypeDef(BaseModel): + resourceArn: Optional[str] = None + revision: Optional[str] = None + document: Optional[str] = None + +class DeleteDomainRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + +class DeletePackageGroupRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + +class DeletePackageRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + +class DeletePackageVersionsRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + versions: Sequence[str] + domainOwner: Optional[str] = None + namespace: Optional[str] = None + expectedStatus: Optional[PackageVersionStatusType] = None + +class DeleteRepositoryPermissionsPolicyRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + policyRevision: Optional[str] = None + +class DeleteRepositoryRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + +class DescribeDomainRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + +class DescribePackageGroupRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + +class DescribePackageRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + +class DescribePackageVersionRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + +class DescribeRepositoryRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + +class DisassociateExternalConnectionRequestRequestTypeDef(BaseModel): + domain: str + repository: str + externalConnection: str + domainOwner: Optional[str] = None + +class DisposePackageVersionsRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + versions: Sequence[str] + domainOwner: Optional[str] = None + namespace: Optional[str] = None + versionRevisions: Optional[Mapping[str, str]] = None + expectedStatus: Optional[PackageVersionStatusType] = None + +class DomainEntryPointTypeDef(BaseModel): + repositoryName: Optional[str] = None + externalConnectionName: Optional[str] = None + +class DomainSummaryTypeDef(BaseModel): + name: Optional[str] = None + owner: Optional[str] = None + arn: Optional[str] = None + status: Optional[DomainStatusType] = None + createdTime: Optional[datetime] = None + encryptionKey: Optional[str] = None + +class GetAssociatedPackageGroupRequestRequestTypeDef(BaseModel): + domain: str + format: PackageFormatType + package: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + +class GetAuthorizationTokenRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + durationSeconds: Optional[int] = None + +class GetDomainPermissionsPolicyRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + +class GetPackageVersionAssetRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + asset: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + packageVersionRevision: Optional[str] = None + +class GetPackageVersionReadmeRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + +class GetRepositoryEndpointRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + domainOwner: Optional[str] = None + +class GetRepositoryPermissionsPolicyRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + +class LicenseInfoTypeDef(BaseModel): + name: Optional[str] = None + url: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAllowedRepositoriesForGroupRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + originRestrictionType: PackageGroupOriginRestrictionTypeType + domainOwner: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAssociatedPackagesRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + preview: Optional[bool] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListPackageGroupsRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + prefix: Optional[str] = None + +class ListPackageVersionAssetsRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListPackageVersionDependenciesRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + nextToken: Optional[str] = None + +class PackageDependencyTypeDef(BaseModel): + namespace: Optional[str] = None + package: Optional[str] = None + dependencyType: Optional[str] = None + versionRequirement: Optional[str] = None + +class ListPackageVersionsRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + status: Optional[PackageVersionStatusType] = None + sortBy: Optional[Literal["PUBLISHED_TIME"]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + originType: Optional[PackageVersionOriginTypeType] = None + +class ListPackagesRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + format: Optional[PackageFormatType] = None + namespace: Optional[str] = None + packagePrefix: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + publish: Optional[AllowPublishType] = None + upstream: Optional[AllowUpstreamType] = None + +class ListRepositoriesInDomainRequestRequestTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + administratorAccount: Optional[str] = None + repositoryPrefix: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RepositorySummaryTypeDef(BaseModel): + name: Optional[str] = None + administratorAccount: Optional[str] = None + domainName: Optional[str] = None + domainOwner: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + createdTime: Optional[datetime] = None + +class ListRepositoriesRequestRequestTypeDef(BaseModel): + repositoryPrefix: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSubPackageGroupsRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PackageGroupAllowedRepositoryTypeDef(BaseModel): + repositoryName: Optional[str] = None + originRestrictionType: Optional[PackageGroupOriginRestrictionTypeType] = None + +class PackageGroupReferenceTypeDef(BaseModel): + arn: Optional[str] = None + pattern: Optional[str] = None + +class PackageOriginRestrictionsTypeDef(BaseModel): + publish: AllowPublishType + upstream: AllowUpstreamType + +class PutDomainPermissionsPolicyRequestRequestTypeDef(BaseModel): + domain: str + policyDocument: str + domainOwner: Optional[str] = None + policyRevision: Optional[str] = None + +class PutRepositoryPermissionsPolicyRequestRequestTypeDef(BaseModel): + domain: str + repository: str + policyDocument: str + domainOwner: Optional[str] = None + policyRevision: Optional[str] = None + +class RepositoryExternalConnectionInfoTypeDef(BaseModel): + externalConnectionName: Optional[str] = None + packageFormat: Optional[PackageFormatType] = None + status: Optional[Literal["Available"]] = None + +class UpstreamRepositoryInfoTypeDef(BaseModel): + repositoryName: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdatePackageGroupRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + contactInfo: Optional[str] = None + description: Optional[str] = None + +class UpdatePackageVersionsStatusRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + versions: Sequence[str] + targetStatus: PackageVersionStatusType + domainOwner: Optional[str] = None + namespace: Optional[str] = None + versionRevisions: Optional[Mapping[str, str]] = None + expectedStatus: Optional[PackageVersionStatusType] = None + +class GetAuthorizationTokenResultTypeDef(BaseModel): + authorizationToken: str + expiration: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPackageVersionAssetResultTypeDef(BaseModel): + asset: StreamingBody + assetName: str + packageVersion: str + packageVersionRevision: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPackageVersionReadmeResultTypeDef(BaseModel): + format: PackageFormatType + namespace: str + package: str + version: str + versionRevision: str + readme: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryEndpointResultTypeDef(BaseModel): + repositoryEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAllowedRepositoriesForGroupResultTypeDef(BaseModel): + allowedRepositories: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackageVersionAssetsResultTypeDef(BaseModel): + format: PackageFormatType + namespace: str + package: str + version: str + versionRevision: str + nextToken: str + assets: List[AssetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PublishPackageVersionResultTypeDef(BaseModel): + format: PackageFormatType + namespace: str + package: str + version: str + versionRevision: str + status: PackageVersionStatusType + asset: AssetSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedPackagesResultTypeDef(BaseModel): + packages: List[AssociatedPackageTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PublishPackageVersionRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + assetContent: BlobTypeDef + assetName: str + assetSHA256: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + unfinished: Optional[bool] = None + +class CopyPackageVersionsResultTypeDef(BaseModel): + successfulVersions: Dict[str, SuccessfulPackageVersionInfoTypeDef] + failedVersions: Dict[str, PackageVersionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePackageVersionsResultTypeDef(BaseModel): + successfulVersions: Dict[str, SuccessfulPackageVersionInfoTypeDef] + failedVersions: Dict[str, PackageVersionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisposePackageVersionsResultTypeDef(BaseModel): + successfulVersions: Dict[str, SuccessfulPackageVersionInfoTypeDef] + failedVersions: Dict[str, PackageVersionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePackageVersionsStatusResultTypeDef(BaseModel): + successfulVersions: Dict[str, SuccessfulPackageVersionInfoTypeDef] + failedVersions: Dict[str, PackageVersionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainRequestRequestTypeDef(BaseModel): + domain: str + encryptionKey: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePackageGroupRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + contactInfo: Optional[str] = None + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResultTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateDomainResultTypeDef(BaseModel): + domain: DomainDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainResultTypeDef(BaseModel): + domain: DomainDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainResultTypeDef(BaseModel): + domain: DomainDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + description: Optional[str] = None + upstreams: Optional[Sequence[UpstreamRepositoryTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateRepositoryRequestRequestTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + description: Optional[str] = None + upstreams: Optional[Sequence[UpstreamRepositoryTypeDef]] = None + +class DeleteDomainPermissionsPolicyResultTypeDef(BaseModel): + policy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryPermissionsPolicyResultTypeDef(BaseModel): + policy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainPermissionsPolicyResultTypeDef(BaseModel): + policy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryPermissionsPolicyResultTypeDef(BaseModel): + policy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDomainPermissionsPolicyResultTypeDef(BaseModel): + policy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutRepositoryPermissionsPolicyResultTypeDef(BaseModel): + policy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PackageVersionOriginTypeDef(BaseModel): + domainEntryPoint: Optional[DomainEntryPointTypeDef] = None + originType: Optional[PackageVersionOriginTypeType] = None + +class ListDomainsResultTypeDef(BaseModel): + domains: List[DomainSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAllowedRepositoriesForGroupRequestListAllowedRepositoriesForGroupPaginateTypeDef(BaseModel): + domain: str + packageGroup: str + originRestrictionType: PackageGroupOriginRestrictionTypeType + domainOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedPackagesRequestListAssociatedPackagesPaginateTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + preview: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsRequestListDomainsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackageGroupsRequestListPackageGroupsPaginateTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + prefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackageVersionAssetsRequestListPackageVersionAssetsPaginateTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + packageVersion: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackageVersionsRequestListPackageVersionsPaginateTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + domainOwner: Optional[str] = None + namespace: Optional[str] = None + status: Optional[PackageVersionStatusType] = None + sortBy: Optional[Literal["PUBLISHED_TIME"]] = None + originType: Optional[PackageVersionOriginTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackagesRequestListPackagesPaginateTypeDef(BaseModel): + domain: str + repository: str + domainOwner: Optional[str] = None + format: Optional[PackageFormatType] = None + namespace: Optional[str] = None + packagePrefix: Optional[str] = None + publish: Optional[AllowPublishType] = None + upstream: Optional[AllowUpstreamType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRepositoriesInDomainRequestListRepositoriesInDomainPaginateTypeDef(BaseModel): + domain: str + domainOwner: Optional[str] = None + administratorAccount: Optional[str] = None + repositoryPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRepositoriesRequestListRepositoriesPaginateTypeDef(BaseModel): + repositoryPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubPackageGroupsRequestListSubPackageGroupsPaginateTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackageVersionDependenciesResultTypeDef(BaseModel): + format: PackageFormatType + namespace: str + package: str + version: str + versionRevision: str + nextToken: str + dependencies: List[PackageDependencyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoriesInDomainResultTypeDef(BaseModel): + repositories: List[RepositorySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoriesResultTypeDef(BaseModel): + repositories: List[RepositorySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePackageGroupOriginConfigurationRequestRequestTypeDef(BaseModel): + domain: str + packageGroup: str + domainOwner: Optional[str] = None + restrictions: Optional[ Mapping[PackageGroupOriginRestrictionTypeType, PackageGroupOriginRestrictionModeType] = None + addAllowedRepositories: Optional[Sequence[PackageGroupAllowedRepositoryTypeDef]] = None + removeAllowedRepositories: Optional[Sequence[PackageGroupAllowedRepositoryTypeDef]] = None + +class PackageGroupOriginRestrictionTypeDef(BaseModel): + mode: Optional[PackageGroupOriginRestrictionModeType] = None + effectiveMode: Optional[PackageGroupOriginRestrictionModeType] = None + inheritedFrom: Optional[PackageGroupReferenceTypeDef] = None + repositoriesCount: Optional[int] = None + +class PackageOriginConfigurationTypeDef(BaseModel): + restrictions: Optional[PackageOriginRestrictionsTypeDef] = None + +class PutPackageOriginConfigurationRequestRequestTypeDef(BaseModel): + domain: str + repository: str + format: PackageFormatType + package: str + restrictions: PackageOriginRestrictionsTypeDef + domainOwner: Optional[str] = None + namespace: Optional[str] = None + +class RepositoryDescriptionTypeDef(BaseModel): + name: Optional[str] = None + administratorAccount: Optional[str] = None + domainName: Optional[str] = None + domainOwner: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + upstreams: Optional[List[UpstreamRepositoryInfoTypeDef]] = None + externalConnections: Optional[List[RepositoryExternalConnectionInfoTypeDef]] = None + createdTime: Optional[datetime] = None + +class PackageVersionDescriptionTypeDef(BaseModel): + format: Optional[PackageFormatType] = None + namespace: Optional[str] = None + packageName: Optional[str] = None + displayName: Optional[str] = None + version: Optional[str] = None + summary: Optional[str] = None + homePage: Optional[str] = None + sourceCodeRepository: Optional[str] = None + publishedTime: Optional[datetime] = None + licenses: Optional[List[LicenseInfoTypeDef]] = None + revision: Optional[str] = None + status: Optional[PackageVersionStatusType] = None + origin: Optional[PackageVersionOriginTypeDef] = None + +class PackageVersionSummaryTypeDef(BaseModel): + version: str + status: PackageVersionStatusType + revision: Optional[str] = None + origin: Optional[PackageVersionOriginTypeDef] = None + +class PackageGroupOriginConfigurationTypeDef(BaseModel): + restrictions: Optional[ Dict[PackageGroupOriginRestrictionTypeType, PackageGroupOriginRestrictionTypeDef] = None + +class PackageDescriptionTypeDef(BaseModel): + format: Optional[PackageFormatType] = None + namespace: Optional[str] = None + name: Optional[str] = None + originConfiguration: Optional[PackageOriginConfigurationTypeDef] = None + +class PackageSummaryTypeDef(BaseModel): + format: Optional[PackageFormatType] = None + namespace: Optional[str] = None + package: Optional[str] = None + originConfiguration: Optional[PackageOriginConfigurationTypeDef] = None + +class PutPackageOriginConfigurationResultTypeDef(BaseModel): + originConfiguration: PackageOriginConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateExternalConnectionResultTypeDef(BaseModel): + repository: RepositoryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryResultTypeDef(BaseModel): + repository: RepositoryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryResultTypeDef(BaseModel): + repository: RepositoryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRepositoryResultTypeDef(BaseModel): + repository: RepositoryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateExternalConnectionResultTypeDef(BaseModel): + repository: RepositoryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRepositoryResultTypeDef(BaseModel): + repository: RepositoryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackageVersionResultTypeDef(BaseModel): + packageVersion: PackageVersionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackageVersionsResultTypeDef(BaseModel): + defaultDisplayVersion: str + format: PackageFormatType + namespace: str + package: str + versions: List[PackageVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PackageGroupDescriptionTypeDef(BaseModel): + arn: Optional[str] = None + pattern: Optional[str] = None + domainName: Optional[str] = None + domainOwner: Optional[str] = None + createdTime: Optional[datetime] = None + contactInfo: Optional[str] = None + description: Optional[str] = None + originConfiguration: Optional[PackageGroupOriginConfigurationTypeDef] = None + parent: Optional[PackageGroupReferenceTypeDef] = None + +class PackageGroupSummaryTypeDef(BaseModel): + arn: Optional[str] = None + pattern: Optional[str] = None + domainName: Optional[str] = None + domainOwner: Optional[str] = None + createdTime: Optional[datetime] = None + contactInfo: Optional[str] = None + description: Optional[str] = None + originConfiguration: Optional[PackageGroupOriginConfigurationTypeDef] = None + parent: Optional[PackageGroupReferenceTypeDef] = None + +class DescribePackageResultTypeDef(BaseModel): + package: PackageDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePackageResultTypeDef(BaseModel): + deletedPackage: PackageSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackagesResultTypeDef(BaseModel): + packages: List[PackageSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePackageGroupResultTypeDef(BaseModel): + packageGroup: PackageGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePackageGroupResultTypeDef(BaseModel): + packageGroup: PackageGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackageGroupResultTypeDef(BaseModel): + packageGroup: PackageGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssociatedPackageGroupResultTypeDef(BaseModel): + packageGroup: PackageGroupDescriptionTypeDef + associationType: PackageGroupAssociationTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePackageGroupOriginConfigurationResultTypeDef(BaseModel): + packageGroup: PackageGroupDescriptionTypeDef + allowedRepositoryUpdates: Dict[ PackageGroupOriginRestrictionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePackageGroupResultTypeDef(BaseModel): + packageGroup: PackageGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackageGroupsResultTypeDef(BaseModel): + packageGroups: List[PackageGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubPackageGroupsResultTypeDef(BaseModel): + packageGroups: List[PackageGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codeartifact_constants.py b/aws_resource_validator/pydantic_models/codeartifact_constants.py new file mode 100644 index 00000000..904d356e --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeartifact_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AllowPublishType = Literal["ALLOW", "BLOCK"] +AllowUpstreamType = Literal["ALLOW", "BLOCK"] +DomainStatusType = Literal["Active", "Deleted"] +ExternalConnectionStatusType = Literal["Available"] +HashAlgorithmType = Literal["MD5", "SHA-1", "SHA-256", "SHA-512"] +ListAllowedRepositoriesForGroupPaginatorName = Literal["list_allowed_repositories_for_group"] +ListAssociatedPackagesPaginatorName = Literal["list_associated_packages"] +ListDomainsPaginatorName = Literal["list_domains"] +ListPackageGroupsPaginatorName = Literal["list_package_groups"] +ListPackageVersionAssetsPaginatorName = Literal["list_package_version_assets"] +ListPackageVersionsPaginatorName = Literal["list_package_versions"] +ListPackagesPaginatorName = Literal["list_packages"] +ListRepositoriesInDomainPaginatorName = Literal["list_repositories_in_domain"] +ListRepositoriesPaginatorName = Literal["list_repositories"] +ListSubPackageGroupsPaginatorName = Literal["list_sub_package_groups"] +PackageFormatType = Literal["cargo", "generic", "maven", "npm", "nuget", "pypi", "ruby", "swift"] +PackageGroupAllowedRepositoryUpdateTypeType = Literal["ADDED", "REMOVED"] +PackageGroupAssociationTypeType = Literal["STRONG", "WEAK"] +PackageGroupOriginRestrictionModeType = Literal["ALLOW", "ALLOW_SPECIFIC_REPOSITORIES", "BLOCK", "INHERIT"] +PackageGroupOriginRestrictionTypeType = Literal["EXTERNAL_UPSTREAM", "INTERNAL_UPSTREAM", "PUBLISH"] +PackageVersionErrorCodeType = Literal["ALREADY_EXISTS", + "MISMATCHED_REVISION", + "MISMATCHED_STATUS", + "NOT_ALLOWED", + "NOT_FOUND", + "SKIPPED",] +PackageVersionOriginTypeType = Literal["EXTERNAL", "INTERNAL", "UNKNOWN"] +PackageVersionSortTypeType = Literal["PUBLISHED_TIME"] +PackageVersionStatusType = Literal["Archived", "Deleted", "Disposed", "Published", "Unfinished", "Unlisted"] +CodeArtifactServiceName = Literal["codeartifact"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_allowed_repositories_for_group", + "list_associated_packages", + "list_domains", + "list_package_groups", + "list_package_version_assets", + "list_package_versions", + "list_packages", + "list_repositories", + "list_repositories_in_domain", + "list_sub_package_groups",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/codebuild_classes.py b/aws_resource_validator/pydantic_models/codebuild_classes.py new file mode 100644 index 00000000..a60ec9e5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codebuild_classes.py @@ -0,0 +1,1095 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codebuild_constants import * + +class BatchDeleteBuildsInputRequestTypeDef(BaseModel): + ids: Sequence[str] + +class BuildNotDeletedTypeDef(BaseModel): + id: Optional[str] = None + statusCode: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchGetBuildBatchesInputRequestTypeDef(BaseModel): + ids: Sequence[str] + +class BatchGetBuildsInputRequestTypeDef(BaseModel): + ids: Sequence[str] + +class BatchGetFleetsInputRequestTypeDef(BaseModel): + names: Sequence[str] + +class BatchGetProjectsInputRequestTypeDef(BaseModel): + names: Sequence[str] + +class BatchGetReportGroupsInputRequestTypeDef(BaseModel): + reportGroupArns: Sequence[str] + +class BatchGetReportsInputRequestTypeDef(BaseModel): + reportArns: Sequence[str] + +class BatchRestrictionsOutputTypeDef(BaseModel): + maximumBuildsAllowed: Optional[int] = None + computeTypesAllowed: Optional[List[str]] = None + +class BatchRestrictionsTypeDef(BaseModel): + maximumBuildsAllowed: Optional[int] = None + computeTypesAllowed: Optional[Sequence[str]] = None + +class BuildArtifactsTypeDef(BaseModel): + location: Optional[str] = None + sha256sum: Optional[str] = None + md5sum: Optional[str] = None + overrideArtifactName: Optional[bool] = None + encryptionDisabled: Optional[bool] = None + artifactIdentifier: Optional[str] = None + bucketOwnerAccess: Optional[BucketOwnerAccessType] = None + +class BuildBatchFilterTypeDef(BaseModel): + status: Optional[StatusTypeType] = None + +class PhaseContextTypeDef(BaseModel): + statusCode: Optional[str] = None + message: Optional[str] = None + +class ProjectCacheOutputTypeDef(BaseModel): + type: CacheTypeType + location: Optional[str] = None + modes: Optional[List[CacheModeType]] = None + +class ProjectFileSystemLocationTypeDef(BaseModel): + type: Optional[Literal["EFS"]] = None + location: Optional[str] = None + mountPoint: Optional[str] = None + identifier: Optional[str] = None + mountOptions: Optional[str] = None + +class ProjectSourceVersionTypeDef(BaseModel): + sourceIdentifier: str + sourceVersion: str + +class VpcConfigOutputTypeDef(BaseModel): + vpcId: Optional[str] = None + subnets: Optional[List[str]] = None + securityGroupIds: Optional[List[str]] = None + +class BuildStatusConfigTypeDef(BaseModel): + context: Optional[str] = None + targetUrl: Optional[str] = None + +class ResolvedArtifactTypeDef(BaseModel): + type: Optional[ArtifactsTypeType] = None + location: Optional[str] = None + identifier: Optional[str] = None + +class DebugSessionTypeDef(BaseModel): + sessionEnabled: Optional[bool] = None + sessionTarget: Optional[str] = None + +class ExportedEnvironmentVariableTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class NetworkInterfaceTypeDef(BaseModel): + subnetId: Optional[str] = None + networkInterfaceId: Optional[str] = None + +class CloudWatchLogsConfigTypeDef(BaseModel): + status: LogsConfigStatusTypeType + groupName: Optional[str] = None + streamName: Optional[str] = None + +class CodeCoverageReportSummaryTypeDef(BaseModel): + lineCoveragePercentage: Optional[float] = None + linesCovered: Optional[int] = None + linesMissed: Optional[int] = None + branchCoveragePercentage: Optional[float] = None + branchesCovered: Optional[int] = None + branchesMissed: Optional[int] = None + +class CodeCoverageTypeDef(BaseModel): + id: Optional[str] = None + reportARN: Optional[str] = None + filePath: Optional[str] = None + lineCoveragePercentage: Optional[float] = None + linesCovered: Optional[int] = None + linesMissed: Optional[int] = None + branchCoveragePercentage: Optional[float] = None + branchesCovered: Optional[int] = None + branchesMissed: Optional[int] = None + expired: Optional[datetime] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class VpcConfigTypeDef(BaseModel): + vpcId: Optional[str] = None + subnets: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + +class ProjectArtifactsTypeDef(BaseModel): + type: ArtifactsTypeType + location: Optional[str] = None + path: Optional[str] = None + namespaceType: Optional[ArtifactNamespaceType] = None + name: Optional[str] = None + packaging: Optional[ArtifactPackagingType] = None + overrideArtifactName: Optional[bool] = None + encryptionDisabled: Optional[bool] = None + artifactIdentifier: Optional[str] = None + bucketOwnerAccess: Optional[BucketOwnerAccessType] = None + +class ProjectCacheTypeDef(BaseModel): + type: CacheTypeType + location: Optional[str] = None + modes: Optional[Sequence[CacheModeType]] = None + +class ScopeConfigurationTypeDef(BaseModel): + name: str + scope: WebhookScopeTypeType + domain: Optional[str] = None + +class WebhookFilterTypeDef(BaseModel): + type: WebhookFilterTypeType + pattern: str + excludeMatchedPattern: Optional[bool] = None + +class DeleteBuildBatchInputRequestTypeDef(BaseModel): + id: str + +class DeleteFleetInputRequestTypeDef(BaseModel): + arn: str + +class DeleteProjectInputRequestTypeDef(BaseModel): + name: str + +class DeleteReportGroupInputRequestTypeDef(BaseModel): + arn: str + deleteReports: Optional[bool] = None + +class DeleteReportInputRequestTypeDef(BaseModel): + arn: str + +class DeleteResourcePolicyInputRequestTypeDef(BaseModel): + resourceArn: str + +class DeleteSourceCredentialsInputRequestTypeDef(BaseModel): + arn: str + +class DeleteWebhookInputRequestTypeDef(BaseModel): + projectName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeCodeCoveragesInputRequestTypeDef(BaseModel): + reportArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[ReportCodeCoverageSortByTypeType] = None + minLineCoveragePercentage: Optional[float] = None + maxLineCoveragePercentage: Optional[float] = None + +class TestCaseFilterTypeDef(BaseModel): + status: Optional[str] = None + keyword: Optional[str] = None + +class TestCaseTypeDef(BaseModel): + reportArn: Optional[str] = None + testRawDataPath: Optional[str] = None + prefix: Optional[str] = None + name: Optional[str] = None + status: Optional[str] = None + durationInNanoSeconds: Optional[int] = None + message: Optional[str] = None + expired: Optional[datetime] = None + +class EnvironmentImageTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + versions: Optional[List[str]] = None + +class EnvironmentVariableTypeDef(BaseModel): + name: str + value: str + type: Optional[EnvironmentVariableTypeType] = None + +class FleetStatusTypeDef(BaseModel): + statusCode: Optional[FleetStatusCodeType] = None + context: Optional[FleetContextCodeType] = None + message: Optional[str] = None + +class GetReportGroupTrendInputRequestTypeDef(BaseModel): + reportGroupArn: str + trendField: ReportGroupTrendFieldTypeType + numOfReports: Optional[int] = None + +class ReportGroupTrendStatsTypeDef(BaseModel): + average: Optional[str] = None + max: Optional[str] = None + min: Optional[str] = None + +class ReportWithRawDataTypeDef(BaseModel): + reportArn: Optional[str] = None + data: Optional[str] = None + +class GetResourcePolicyInputRequestTypeDef(BaseModel): + resourceArn: str + +class GitSubmodulesConfigTypeDef(BaseModel): + fetchSubmodules: bool + +class ImportSourceCredentialsInputRequestTypeDef(BaseModel): + token: str + serverType: ServerTypeType + authType: AuthTypeType + username: Optional[str] = None + shouldOverwrite: Optional[bool] = None + +class InvalidateProjectCacheInputRequestTypeDef(BaseModel): + projectName: str + +class ListBuildsForProjectInputRequestTypeDef(BaseModel): + projectName: str + sortOrder: Optional[SortOrderTypeType] = None + nextToken: Optional[str] = None + +class ListBuildsInputRequestTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + nextToken: Optional[str] = None + +class ListFleetsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[FleetSortByTypeType] = None + +class ListProjectsInputRequestTypeDef(BaseModel): + sortBy: Optional[ProjectSortByTypeType] = None + sortOrder: Optional[SortOrderTypeType] = None + nextToken: Optional[str] = None + +class ListReportGroupsInputRequestTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[ReportGroupSortByTypeType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ReportFilterTypeDef(BaseModel): + status: Optional[ReportStatusTypeType] = None + +class ListSharedProjectsInputRequestTypeDef(BaseModel): + sortBy: Optional[SharedResourceSortByTypeType] = None + sortOrder: Optional[SortOrderTypeType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSharedReportGroupsInputRequestTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[SharedResourceSortByTypeType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SourceCredentialsInfoTypeDef(BaseModel): + arn: Optional[str] = None + serverType: Optional[ServerTypeType] = None + authType: Optional[AuthTypeType] = None + resource: Optional[str] = None + +class S3LogsConfigTypeDef(BaseModel): + status: LogsConfigStatusTypeType + location: Optional[str] = None + encryptionDisabled: Optional[bool] = None + bucketOwnerAccess: Optional[BucketOwnerAccessType] = None + +class ProjectBadgeTypeDef(BaseModel): + badgeEnabled: Optional[bool] = None + badgeRequestUrl: Optional[str] = None + +class ProjectFleetTypeDef(BaseModel): + fleetArn: Optional[str] = None + +class RegistryCredentialTypeDef(BaseModel): + credential: str + credentialProvider: Literal["SECRETS_MANAGER"] + +class SourceAuthTypeDef(BaseModel): + type: SourceAuthTypeType + resource: Optional[str] = None + +class PutResourcePolicyInputRequestTypeDef(BaseModel): + policy: str + resourceArn: str + +class S3ReportExportConfigTypeDef(BaseModel): + bucket: Optional[str] = None + bucketOwner: Optional[str] = None + path: Optional[str] = None + packaging: Optional[ReportPackagingTypeType] = None + encryptionKey: Optional[str] = None + encryptionDisabled: Optional[bool] = None + +class TestReportSummaryTypeDef(BaseModel): + total: int + statusCounts: Dict[str, int] + durationInNanoSeconds: int + +class RetryBuildBatchInputRequestTypeDef(BaseModel): + id: Optional[str] = None + idempotencyToken: Optional[str] = None + retryType: Optional[RetryBuildBatchTypeType] = None + +class RetryBuildInputRequestTypeDef(BaseModel): + id: Optional[str] = None + idempotencyToken: Optional[str] = None + +class TargetTrackingScalingConfigurationTypeDef(BaseModel): + metricType: Optional[Literal["FLEET_UTILIZATION_RATE"]] = None + targetValue: Optional[float] = None + +class StopBuildBatchInputRequestTypeDef(BaseModel): + id: str + +class StopBuildInputRequestTypeDef(BaseModel): + id: str + +class UpdateProjectVisibilityInputRequestTypeDef(BaseModel): + projectArn: str + projectVisibility: ProjectVisibilityTypeType + resourceAccessRole: Optional[str] = None + +class BatchDeleteBuildsOutputTypeDef(BaseModel): + buildsDeleted: List[str] + buildsNotDeleted: List[BuildNotDeletedTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBuildBatchOutputTypeDef(BaseModel): + statusCode: str + buildsDeleted: List[str] + buildsNotDeleted: List[BuildNotDeletedTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSourceCredentialsOutputTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyOutputTypeDef(BaseModel): + policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportSourceCredentialsOutputTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuildBatchesForProjectOutputTypeDef(BaseModel): + ids: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuildBatchesOutputTypeDef(BaseModel): + ids: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuildsForProjectOutputTypeDef(BaseModel): + ids: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuildsOutputTypeDef(BaseModel): + ids: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetsOutputTypeDef(BaseModel): + nextToken: str + fleets: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsOutputTypeDef(BaseModel): + nextToken: str + projects: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportGroupsOutputTypeDef(BaseModel): + nextToken: str + reportGroups: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportsForReportGroupOutputTypeDef(BaseModel): + nextToken: str + reports: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportsOutputTypeDef(BaseModel): + nextToken: str + reports: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSharedProjectsOutputTypeDef(BaseModel): + nextToken: str + projects: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSharedReportGroupsOutputTypeDef(BaseModel): + nextToken: str + reportGroups: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyOutputTypeDef(BaseModel): + resourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectVisibilityOutputTypeDef(BaseModel): + projectArn: str + publicProjectAlias: str + projectVisibility: ProjectVisibilityTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ProjectBuildBatchConfigOutputTypeDef(BaseModel): + serviceRole: Optional[str] = None + combineArtifacts: Optional[bool] = None + restrictions: Optional[BatchRestrictionsOutputTypeDef] = None + timeoutInMins: Optional[int] = None + batchReportMode: Optional[BatchReportModeTypeType] = None + +class ProjectBuildBatchConfigTypeDef(BaseModel): + serviceRole: Optional[str] = None + combineArtifacts: Optional[bool] = None + restrictions: Optional[BatchRestrictionsTypeDef] = None + timeoutInMins: Optional[int] = None + batchReportMode: Optional[BatchReportModeTypeType] = None + +class ListBuildBatchesForProjectInputRequestTypeDef(BaseModel): + projectName: Optional[str] = None + filter: Optional[BuildBatchFilterTypeDef] = None + maxResults: Optional[int] = None + sortOrder: Optional[SortOrderTypeType] = None + nextToken: Optional[str] = None + +class ListBuildBatchesInputRequestTypeDef(BaseModel): + filter: Optional[BuildBatchFilterTypeDef] = None + maxResults: Optional[int] = None + sortOrder: Optional[SortOrderTypeType] = None + nextToken: Optional[str] = None + +class BuildBatchPhaseTypeDef(BaseModel): + phaseType: Optional[BuildBatchPhaseTypeType] = None + phaseStatus: Optional[StatusTypeType] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + durationInSeconds: Optional[int] = None + contexts: Optional[List[PhaseContextTypeDef]] = None + +class BuildPhaseTypeDef(BaseModel): + phaseType: Optional[BuildPhaseTypeType] = None + phaseStatus: Optional[StatusTypeType] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + durationInSeconds: Optional[int] = None + contexts: Optional[List[PhaseContextTypeDef]] = None + +class BuildSummaryTypeDef(BaseModel): + arn: Optional[str] = None + requestedOn: Optional[datetime] = None + buildStatus: Optional[StatusTypeType] = None + primaryArtifact: Optional[ResolvedArtifactTypeDef] = None + secondaryArtifacts: Optional[List[ResolvedArtifactTypeDef]] = None + +class DescribeCodeCoveragesOutputTypeDef(BaseModel): + nextToken: str + codeCoverages: List[CodeCoverageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWebhookInputRequestTypeDef(BaseModel): + projectName: str + branchFilter: Optional[str] = None + filterGroups: Optional[Sequence[Sequence[WebhookFilterTypeDef]]] = None + buildType: Optional[WebhookBuildTypeType] = None + manualCreation: Optional[bool] = None + scopeConfiguration: Optional[ScopeConfigurationTypeDef] = None + +class UpdateWebhookInputRequestTypeDef(BaseModel): + projectName: str + branchFilter: Optional[str] = None + rotateSecret: Optional[bool] = None + filterGroups: Optional[Sequence[Sequence[WebhookFilterTypeDef]]] = None + buildType: Optional[WebhookBuildTypeType] = None + +class WebhookTypeDef(BaseModel): + url: Optional[str] = None + payloadUrl: Optional[str] = None + secret: Optional[str] = None + branchFilter: Optional[str] = None + filterGroups: Optional[List[List[WebhookFilterTypeDef]]] = None + buildType: Optional[WebhookBuildTypeType] = None + manualCreation: Optional[bool] = None + lastModifiedSecret: Optional[datetime] = None + scopeConfiguration: Optional[ScopeConfigurationTypeDef] = None + +class DescribeCodeCoveragesInputDescribeCodeCoveragesPaginateTypeDef(BaseModel): + reportArn: str + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[ReportCodeCoverageSortByTypeType] = None + minLineCoveragePercentage: Optional[float] = None + maxLineCoveragePercentage: Optional[float] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBuildBatchesForProjectInputListBuildBatchesForProjectPaginateTypeDef(BaseModel): + projectName: Optional[str] = None + filter: Optional[BuildBatchFilterTypeDef] = None + sortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBuildBatchesInputListBuildBatchesPaginateTypeDef(BaseModel): + filter: Optional[BuildBatchFilterTypeDef] = None + sortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBuildsForProjectInputListBuildsForProjectPaginateTypeDef(BaseModel): + projectName: str + sortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBuildsInputListBuildsPaginateTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsInputListProjectsPaginateTypeDef(BaseModel): + sortBy: Optional[ProjectSortByTypeType] = None + sortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReportGroupsInputListReportGroupsPaginateTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[ReportGroupSortByTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSharedProjectsInputListSharedProjectsPaginateTypeDef(BaseModel): + sortBy: Optional[SharedResourceSortByTypeType] = None + sortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSharedReportGroupsInputListSharedReportGroupsPaginateTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + sortBy: Optional[SharedResourceSortByTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTestCasesInputDescribeTestCasesPaginateTypeDef(BaseModel): + reportArn: str + filter: Optional[TestCaseFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTestCasesInputRequestTypeDef(BaseModel): + reportArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[TestCaseFilterTypeDef] = None + +class DescribeTestCasesOutputTypeDef(BaseModel): + nextToken: str + testCases: List[TestCaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentLanguageTypeDef(BaseModel): + language: Optional[LanguageTypeType] = None + images: Optional[List[EnvironmentImageTypeDef]] = None + +class GetReportGroupTrendOutputTypeDef(BaseModel): + stats: ReportGroupTrendStatsTypeDef + rawData: List[ReportWithRawDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReportsForReportGroupInputListReportsForReportGroupPaginateTypeDef(BaseModel): + reportGroupArn: str + sortOrder: Optional[SortOrderTypeType] = None + filter: Optional[ReportFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReportsForReportGroupInputRequestTypeDef(BaseModel): + reportGroupArn: str + nextToken: Optional[str] = None + sortOrder: Optional[SortOrderTypeType] = None + maxResults: Optional[int] = None + filter: Optional[ReportFilterTypeDef] = None + +class ListReportsInputListReportsPaginateTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + filter: Optional[ReportFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReportsInputRequestTypeDef(BaseModel): + sortOrder: Optional[SortOrderTypeType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[ReportFilterTypeDef] = None + +class ListSourceCredentialsOutputTypeDef(BaseModel): + sourceCredentialsInfos: List[SourceCredentialsInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LogsConfigTypeDef(BaseModel): + cloudWatchLogs: Optional[CloudWatchLogsConfigTypeDef] = None + s3Logs: Optional[S3LogsConfigTypeDef] = None + +class LogsLocationTypeDef(BaseModel): + groupName: Optional[str] = None + streamName: Optional[str] = None + deepLink: Optional[str] = None + s3DeepLink: Optional[str] = None + cloudWatchLogsArn: Optional[str] = None + s3LogsArn: Optional[str] = None + cloudWatchLogs: Optional[CloudWatchLogsConfigTypeDef] = None + s3Logs: Optional[S3LogsConfigTypeDef] = None + +class ProjectEnvironmentOutputTypeDef(BaseModel): + type: EnvironmentTypeType + image: str + computeType: ComputeTypeType + fleet: Optional[ProjectFleetTypeDef] = None + environmentVariables: Optional[List[EnvironmentVariableTypeDef]] = None + privilegedMode: Optional[bool] = None + certificate: Optional[str] = None + registryCredential: Optional[RegistryCredentialTypeDef] = None + imagePullCredentialsType: Optional[ImagePullCredentialsTypeType] = None + +class ProjectEnvironmentTypeDef(BaseModel): + type: EnvironmentTypeType + image: str + computeType: ComputeTypeType + fleet: Optional[ProjectFleetTypeDef] = None + environmentVariables: Optional[Sequence[EnvironmentVariableTypeDef]] = None + privilegedMode: Optional[bool] = None + certificate: Optional[str] = None + registryCredential: Optional[RegistryCredentialTypeDef] = None + imagePullCredentialsType: Optional[ImagePullCredentialsTypeType] = None + +class ProjectSourceTypeDef(BaseModel): + type: SourceTypeType + location: Optional[str] = None + gitCloneDepth: Optional[int] = None + gitSubmodulesConfig: Optional[GitSubmodulesConfigTypeDef] = None + buildspec: Optional[str] = None + auth: Optional[SourceAuthTypeDef] = None + reportBuildStatus: Optional[bool] = None + buildStatusConfig: Optional[BuildStatusConfigTypeDef] = None + insecureSsl: Optional[bool] = None + sourceIdentifier: Optional[str] = None + +class ReportExportConfigTypeDef(BaseModel): + exportConfigType: Optional[ReportExportConfigTypeType] = None + s3Destination: Optional[S3ReportExportConfigTypeDef] = None + +class ScalingConfigurationInputTypeDef(BaseModel): + scalingType: Optional[Literal["TARGET_TRACKING_SCALING"]] = None + targetTrackingScalingConfigs: Optional[ Sequence[TargetTrackingScalingConfigurationTypeDef] ] = None + maxCapacity: Optional[int] = None + +class ScalingConfigurationOutputTypeDef(BaseModel): + scalingType: Optional[Literal["TARGET_TRACKING_SCALING"]] = None + targetTrackingScalingConfigs: Optional[ List[TargetTrackingScalingConfigurationTypeDef] ] = None + maxCapacity: Optional[int] = None + desiredCapacity: Optional[int] = None + +class BuildGroupTypeDef(BaseModel): + identifier: Optional[str] = None + dependsOn: Optional[List[str]] = None + ignoreFailure: Optional[bool] = None + currentBuildSummary: Optional[BuildSummaryTypeDef] = None + priorBuildSummaryList: Optional[List[BuildSummaryTypeDef]] = None + +class CreateWebhookOutputTypeDef(BaseModel): + webhook: WebhookTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebhookOutputTypeDef(BaseModel): + webhook: WebhookTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentPlatformTypeDef(BaseModel): + platform: Optional[PlatformTypeType] = None + languages: Optional[List[EnvironmentLanguageTypeDef]] = None + +class BuildTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + buildNumber: Optional[int] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + currentPhase: Optional[str] = None + buildStatus: Optional[StatusTypeType] = None + sourceVersion: Optional[str] = None + resolvedSourceVersion: Optional[str] = None + projectName: Optional[str] = None + phases: Optional[List[BuildPhaseTypeDef]] = None + source: Optional[ProjectSourceTypeDef] = None + secondarySources: Optional[List[ProjectSourceTypeDef]] = None + secondarySourceVersions: Optional[List[ProjectSourceVersionTypeDef]] = None + artifacts: Optional[BuildArtifactsTypeDef] = None + secondaryArtifacts: Optional[List[BuildArtifactsTypeDef]] = None + cache: Optional[ProjectCacheOutputTypeDef] = None + environment: Optional[ProjectEnvironmentOutputTypeDef] = None + serviceRole: Optional[str] = None + logs: Optional[LogsLocationTypeDef] = None + timeoutInMinutes: Optional[int] = None + queuedTimeoutInMinutes: Optional[int] = None + buildComplete: Optional[bool] = None + initiator: Optional[str] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + networkInterface: Optional[NetworkInterfaceTypeDef] = None + encryptionKey: Optional[str] = None + exportedEnvironmentVariables: Optional[List[ExportedEnvironmentVariableTypeDef]] = None + reportArns: Optional[List[str]] = None + fileSystemLocations: Optional[List[ProjectFileSystemLocationTypeDef]] = None + debugSession: Optional[DebugSessionTypeDef] = None + buildBatchArn: Optional[str] = None + +class CreateProjectInputRequestTypeDef(BaseModel): + name: str + source: ProjectSourceTypeDef + artifacts: ProjectArtifactsTypeDef + environment: ProjectEnvironmentTypeDef + serviceRole: str + description: Optional[str] = None + secondarySources: Optional[Sequence[ProjectSourceTypeDef]] = None + sourceVersion: Optional[str] = None + secondarySourceVersions: Optional[Sequence[ProjectSourceVersionTypeDef]] = None + secondaryArtifacts: Optional[Sequence[ProjectArtifactsTypeDef]] = None + cache: Optional[ProjectCacheTypeDef] = None + timeoutInMinutes: Optional[int] = None + queuedTimeoutInMinutes: Optional[int] = None + encryptionKey: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + badgeEnabled: Optional[bool] = None + logsConfig: Optional[LogsConfigTypeDef] = None + fileSystemLocations: Optional[Sequence[ProjectFileSystemLocationTypeDef]] = None + buildBatchConfig: Optional[ProjectBuildBatchConfigTypeDef] = None + concurrentBuildLimit: Optional[int] = None + +class ProjectTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + source: Optional[ProjectSourceTypeDef] = None + secondarySources: Optional[List[ProjectSourceTypeDef]] = None + sourceVersion: Optional[str] = None + secondarySourceVersions: Optional[List[ProjectSourceVersionTypeDef]] = None + artifacts: Optional[ProjectArtifactsTypeDef] = None + secondaryArtifacts: Optional[List[ProjectArtifactsTypeDef]] = None + cache: Optional[ProjectCacheOutputTypeDef] = None + environment: Optional[ProjectEnvironmentOutputTypeDef] = None + serviceRole: Optional[str] = None + timeoutInMinutes: Optional[int] = None + queuedTimeoutInMinutes: Optional[int] = None + encryptionKey: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + created: Optional[datetime] = None + lastModified: Optional[datetime] = None + webhook: Optional[WebhookTypeDef] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + badge: Optional[ProjectBadgeTypeDef] = None + logsConfig: Optional[LogsConfigTypeDef] = None + fileSystemLocations: Optional[List[ProjectFileSystemLocationTypeDef]] = None + buildBatchConfig: Optional[ProjectBuildBatchConfigOutputTypeDef] = None + concurrentBuildLimit: Optional[int] = None + projectVisibility: Optional[ProjectVisibilityTypeType] = None + publicProjectAlias: Optional[str] = None + resourceAccessRole: Optional[str] = None + +class StartBuildBatchInputRequestTypeDef(BaseModel): + projectName: str + secondarySourcesOverride: Optional[Sequence[ProjectSourceTypeDef]] = None + secondarySourcesVersionOverride: Optional[Sequence[ProjectSourceVersionTypeDef]] = None + sourceVersion: Optional[str] = None + artifactsOverride: Optional[ProjectArtifactsTypeDef] = None + secondaryArtifactsOverride: Optional[Sequence[ProjectArtifactsTypeDef]] = None + environmentVariablesOverride: Optional[Sequence[EnvironmentVariableTypeDef]] = None + sourceTypeOverride: Optional[SourceTypeType] = None + sourceLocationOverride: Optional[str] = None + sourceAuthOverride: Optional[SourceAuthTypeDef] = None + gitCloneDepthOverride: Optional[int] = None + gitSubmodulesConfigOverride: Optional[GitSubmodulesConfigTypeDef] = None + buildspecOverride: Optional[str] = None + insecureSslOverride: Optional[bool] = None + reportBuildBatchStatusOverride: Optional[bool] = None + environmentTypeOverride: Optional[EnvironmentTypeType] = None + imageOverride: Optional[str] = None + computeTypeOverride: Optional[ComputeTypeType] = None + certificateOverride: Optional[str] = None + cacheOverride: Optional[ProjectCacheTypeDef] = None + serviceRoleOverride: Optional[str] = None + privilegedModeOverride: Optional[bool] = None + buildTimeoutInMinutesOverride: Optional[int] = None + queuedTimeoutInMinutesOverride: Optional[int] = None + encryptionKeyOverride: Optional[str] = None + idempotencyToken: Optional[str] = None + logsConfigOverride: Optional[LogsConfigTypeDef] = None + registryCredentialOverride: Optional[RegistryCredentialTypeDef] = None + imagePullCredentialsTypeOverride: Optional[ImagePullCredentialsTypeType] = None + buildBatchConfigOverride: Optional[ProjectBuildBatchConfigTypeDef] = None + debugSessionEnabled: Optional[bool] = None + +class StartBuildInputRequestTypeDef(BaseModel): + projectName: str + secondarySourcesOverride: Optional[Sequence[ProjectSourceTypeDef]] = None + secondarySourcesVersionOverride: Optional[Sequence[ProjectSourceVersionTypeDef]] = None + sourceVersion: Optional[str] = None + artifactsOverride: Optional[ProjectArtifactsTypeDef] = None + secondaryArtifactsOverride: Optional[Sequence[ProjectArtifactsTypeDef]] = None + environmentVariablesOverride: Optional[Sequence[EnvironmentVariableTypeDef]] = None + sourceTypeOverride: Optional[SourceTypeType] = None + sourceLocationOverride: Optional[str] = None + sourceAuthOverride: Optional[SourceAuthTypeDef] = None + gitCloneDepthOverride: Optional[int] = None + gitSubmodulesConfigOverride: Optional[GitSubmodulesConfigTypeDef] = None + buildspecOverride: Optional[str] = None + insecureSslOverride: Optional[bool] = None + reportBuildStatusOverride: Optional[bool] = None + buildStatusConfigOverride: Optional[BuildStatusConfigTypeDef] = None + environmentTypeOverride: Optional[EnvironmentTypeType] = None + imageOverride: Optional[str] = None + computeTypeOverride: Optional[ComputeTypeType] = None + certificateOverride: Optional[str] = None + cacheOverride: Optional[ProjectCacheTypeDef] = None + serviceRoleOverride: Optional[str] = None + privilegedModeOverride: Optional[bool] = None + timeoutInMinutesOverride: Optional[int] = None + queuedTimeoutInMinutesOverride: Optional[int] = None + encryptionKeyOverride: Optional[str] = None + idempotencyToken: Optional[str] = None + logsConfigOverride: Optional[LogsConfigTypeDef] = None + registryCredentialOverride: Optional[RegistryCredentialTypeDef] = None + imagePullCredentialsTypeOverride: Optional[ImagePullCredentialsTypeType] = None + debugSessionEnabled: Optional[bool] = None + fleetOverride: Optional[ProjectFleetTypeDef] = None + +class UpdateProjectInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + source: Optional[ProjectSourceTypeDef] = None + secondarySources: Optional[Sequence[ProjectSourceTypeDef]] = None + sourceVersion: Optional[str] = None + secondarySourceVersions: Optional[Sequence[ProjectSourceVersionTypeDef]] = None + artifacts: Optional[ProjectArtifactsTypeDef] = None + secondaryArtifacts: Optional[Sequence[ProjectArtifactsTypeDef]] = None + cache: Optional[ProjectCacheTypeDef] = None + environment: Optional[ProjectEnvironmentTypeDef] = None + serviceRole: Optional[str] = None + timeoutInMinutes: Optional[int] = None + queuedTimeoutInMinutes: Optional[int] = None + encryptionKey: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + badgeEnabled: Optional[bool] = None + logsConfig: Optional[LogsConfigTypeDef] = None + fileSystemLocations: Optional[Sequence[ProjectFileSystemLocationTypeDef]] = None + buildBatchConfig: Optional[ProjectBuildBatchConfigTypeDef] = None + concurrentBuildLimit: Optional[int] = None + +class CreateReportGroupInputRequestTypeDef(BaseModel): + name: str + type: ReportTypeType + exportConfig: ReportExportConfigTypeDef + tags: Optional[Sequence[TagTypeDef]] = None + +class ReportGroupTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[ReportTypeType] = None + exportConfig: Optional[ReportExportConfigTypeDef] = None + created: Optional[datetime] = None + lastModified: Optional[datetime] = None + tags: Optional[List[TagTypeDef]] = None + status: Optional[ReportGroupStatusTypeType] = None + +class ReportTypeDef(BaseModel): + arn: Optional[str] = None + type: Optional[ReportTypeType] = None + name: Optional[str] = None + reportGroupArn: Optional[str] = None + executionId: Optional[str] = None + status: Optional[ReportStatusTypeType] = None + created: Optional[datetime] = None + expired: Optional[datetime] = None + exportConfig: Optional[ReportExportConfigTypeDef] = None + truncated: Optional[bool] = None + testSummary: Optional[TestReportSummaryTypeDef] = None + codeCoverageSummary: Optional[CodeCoverageReportSummaryTypeDef] = None + +class UpdateReportGroupInputRequestTypeDef(BaseModel): + arn: str + exportConfig: Optional[ReportExportConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateFleetInputRequestTypeDef(BaseModel): + name: str + baseCapacity: int + environmentType: EnvironmentTypeType + computeType: ComputeTypeType + scalingConfiguration: Optional[ScalingConfigurationInputTypeDef] = None + overflowBehavior: Optional[FleetOverflowBehaviorType] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + fleetServiceRole: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateFleetInputRequestTypeDef(BaseModel): + arn: str + baseCapacity: Optional[int] = None + environmentType: Optional[EnvironmentTypeType] = None + computeType: Optional[ComputeTypeType] = None + scalingConfiguration: Optional[ScalingConfigurationInputTypeDef] = None + overflowBehavior: Optional[FleetOverflowBehaviorType] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + fleetServiceRole: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class FleetTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + id: Optional[str] = None + created: Optional[datetime] = None + lastModified: Optional[datetime] = None + status: Optional[FleetStatusTypeDef] = None + baseCapacity: Optional[int] = None + environmentType: Optional[EnvironmentTypeType] = None + computeType: Optional[ComputeTypeType] = None + scalingConfiguration: Optional[ScalingConfigurationOutputTypeDef] = None + overflowBehavior: Optional[FleetOverflowBehaviorType] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + fleetServiceRole: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + +class BuildBatchTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + currentPhase: Optional[str] = None + buildBatchStatus: Optional[StatusTypeType] = None + sourceVersion: Optional[str] = None + resolvedSourceVersion: Optional[str] = None + projectName: Optional[str] = None + phases: Optional[List[BuildBatchPhaseTypeDef]] = None + source: Optional[ProjectSourceTypeDef] = None + secondarySources: Optional[List[ProjectSourceTypeDef]] = None + secondarySourceVersions: Optional[List[ProjectSourceVersionTypeDef]] = None + artifacts: Optional[BuildArtifactsTypeDef] = None + secondaryArtifacts: Optional[List[BuildArtifactsTypeDef]] = None + cache: Optional[ProjectCacheOutputTypeDef] = None + environment: Optional[ProjectEnvironmentOutputTypeDef] = None + serviceRole: Optional[str] = None + logConfig: Optional[LogsConfigTypeDef] = None + buildTimeoutInMinutes: Optional[int] = None + queuedTimeoutInMinutes: Optional[int] = None + complete: Optional[bool] = None + initiator: Optional[str] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + encryptionKey: Optional[str] = None + buildBatchNumber: Optional[int] = None + fileSystemLocations: Optional[List[ProjectFileSystemLocationTypeDef]] = None + buildBatchConfig: Optional[ProjectBuildBatchConfigOutputTypeDef] = None + buildGroups: Optional[List[BuildGroupTypeDef]] = None + debugSessionEnabled: Optional[bool] = None + +class ListCuratedEnvironmentImagesOutputTypeDef(BaseModel): + platforms: List[EnvironmentPlatformTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetBuildsOutputTypeDef(BaseModel): + builds: List[BuildTypeDef] + buildsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RetryBuildOutputTypeDef(BaseModel): + build: BuildTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartBuildOutputTypeDef(BaseModel): + build: BuildTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopBuildOutputTypeDef(BaseModel): + build: BuildTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetProjectsOutputTypeDef(BaseModel): + projects: List[ProjectTypeDef] + projectsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectOutputTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectOutputTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetReportGroupsOutputTypeDef(BaseModel): + reportGroups: List[ReportGroupTypeDef] + reportGroupsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReportGroupOutputTypeDef(BaseModel): + reportGroup: ReportGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReportGroupOutputTypeDef(BaseModel): + reportGroup: ReportGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetReportsOutputTypeDef(BaseModel): + reports: List[ReportTypeDef] + reportsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetFleetsOutputTypeDef(BaseModel): + fleets: List[FleetTypeDef] + fleetsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetOutputTypeDef(BaseModel): + fleet: FleetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetOutputTypeDef(BaseModel): + fleet: FleetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetBuildBatchesOutputTypeDef(BaseModel): + buildBatches: List[BuildBatchTypeDef] + buildBatchesNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RetryBuildBatchOutputTypeDef(BaseModel): + buildBatch: BuildBatchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartBuildBatchOutputTypeDef(BaseModel): + buildBatch: BuildBatchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopBuildBatchOutputTypeDef(BaseModel): + buildBatch: BuildBatchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codebuild_constants.py b/aws_resource_validator/pydantic_models/codebuild_constants.py new file mode 100644 index 00000000..4436cf16 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codebuild_constants.py @@ -0,0 +1,562 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ArtifactNamespaceType = Literal["BUILD_ID", "NONE"] +ArtifactPackagingType = Literal["NONE", "ZIP"] +ArtifactsTypeType = Literal["CODEPIPELINE", "NO_ARTIFACTS", "S3"] +AuthTypeType = Literal["BASIC_AUTH", "CODECONNECTIONS", "OAUTH", "PERSONAL_ACCESS_TOKEN"] +BatchReportModeTypeType = Literal["REPORT_AGGREGATED_BATCH", "REPORT_INDIVIDUAL_BUILDS"] +BucketOwnerAccessType = Literal["FULL", "NONE", "READ_ONLY"] +BuildBatchPhaseTypeType = Literal["COMBINE_ARTIFACTS", + "DOWNLOAD_BATCHSPEC", + "FAILED", + "IN_PROGRESS", + "STOPPED", + "SUBMITTED", + "SUCCEEDED",] +BuildPhaseTypeType = Literal["BUILD", + "COMPLETED", + "DOWNLOAD_SOURCE", + "FINALIZING", + "INSTALL", + "POST_BUILD", + "PRE_BUILD", + "PROVISIONING", + "QUEUED", + "SUBMITTED", + "UPLOAD_ARTIFACTS",] +CacheModeType = Literal["LOCAL_CUSTOM_CACHE", "LOCAL_DOCKER_LAYER_CACHE", "LOCAL_SOURCE_CACHE"] +CacheTypeType = Literal["LOCAL", "NO_CACHE", "S3"] +ComputeTypeType = Literal["BUILD_GENERAL1_2XLARGE", + "BUILD_GENERAL1_LARGE", + "BUILD_GENERAL1_MEDIUM", + "BUILD_GENERAL1_SMALL", + "BUILD_GENERAL1_XLARGE", + "BUILD_LAMBDA_10GB", + "BUILD_LAMBDA_1GB", + "BUILD_LAMBDA_2GB", + "BUILD_LAMBDA_4GB", + "BUILD_LAMBDA_8GB",] +CredentialProviderTypeType = Literal["SECRETS_MANAGER"] +DescribeCodeCoveragesPaginatorName = Literal["describe_code_coverages"] +DescribeTestCasesPaginatorName = Literal["describe_test_cases"] +EnvironmentTypeType = Literal["ARM_CONTAINER", + "ARM_LAMBDA_CONTAINER", + "LINUX_CONTAINER", + "LINUX_GPU_CONTAINER", + "LINUX_LAMBDA_CONTAINER", + "WINDOWS_CONTAINER", + "WINDOWS_SERVER_2019_CONTAINER",] +EnvironmentVariableTypeType = Literal["PARAMETER_STORE", "PLAINTEXT", "SECRETS_MANAGER"] +FileSystemTypeType = Literal["EFS"] +FleetContextCodeType = Literal["ACTION_REQUIRED", "CREATE_FAILED", "UPDATE_FAILED"] +FleetOverflowBehaviorType = Literal["ON_DEMAND", "QUEUE"] +FleetScalingMetricTypeType = Literal["FLEET_UTILIZATION_RATE"] +FleetScalingTypeType = Literal["TARGET_TRACKING_SCALING"] +FleetSortByTypeType = Literal["CREATED_TIME", "LAST_MODIFIED_TIME", "NAME"] +FleetStatusCodeType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATING", + "DELETING", + "PENDING_DELETION", + "ROTATING", + "UPDATE_ROLLBACK_FAILED", + "UPDATING",] +ImagePullCredentialsTypeType = Literal["CODEBUILD", "SERVICE_ROLE"] +LanguageTypeType = Literal["ANDROID", "BASE", "DOCKER", "DOTNET", "GOLANG", "JAVA", "NODE_JS", "PHP", "PYTHON", "RUBY"] +ListBuildBatchesForProjectPaginatorName = Literal["list_build_batches_for_project"] +ListBuildBatchesPaginatorName = Literal["list_build_batches"] +ListBuildsForProjectPaginatorName = Literal["list_builds_for_project"] +ListBuildsPaginatorName = Literal["list_builds"] +ListProjectsPaginatorName = Literal["list_projects"] +ListReportGroupsPaginatorName = Literal["list_report_groups"] +ListReportsForReportGroupPaginatorName = Literal["list_reports_for_report_group"] +ListReportsPaginatorName = Literal["list_reports"] +ListSharedProjectsPaginatorName = Literal["list_shared_projects"] +ListSharedReportGroupsPaginatorName = Literal["list_shared_report_groups"] +LogsConfigStatusTypeType = Literal["DISABLED", "ENABLED"] +PlatformTypeType = Literal["AMAZON_LINUX", "DEBIAN", "UBUNTU", "WINDOWS_SERVER"] +ProjectSortByTypeType = Literal["CREATED_TIME", "LAST_MODIFIED_TIME", "NAME"] +ProjectVisibilityTypeType = Literal["PRIVATE", "PUBLIC_READ"] +ReportCodeCoverageSortByTypeType = Literal["FILE_PATH", "LINE_COVERAGE_PERCENTAGE"] +ReportExportConfigTypeType = Literal["NO_EXPORT", "S3"] +ReportGroupSortByTypeType = Literal["CREATED_TIME", "LAST_MODIFIED_TIME", "NAME"] +ReportGroupStatusTypeType = Literal["ACTIVE", "DELETING"] +ReportGroupTrendFieldTypeType = Literal["BRANCHES_COVERED", + "BRANCHES_MISSED", + "BRANCH_COVERAGE", + "DURATION", + "LINES_COVERED", + "LINES_MISSED", + "LINE_COVERAGE", + "PASS_RATE", + "TOTAL",] +ReportPackagingTypeType = Literal["NONE", "ZIP"] +ReportStatusTypeType = Literal["DELETING", "FAILED", "GENERATING", "INCOMPLETE", "SUCCEEDED"] +ReportTypeType = Literal["CODE_COVERAGE", "TEST"] +RetryBuildBatchTypeType = Literal["RETRY_ALL_BUILDS", "RETRY_FAILED_BUILDS"] +ServerTypeType = Literal["BITBUCKET", "GITHUB", "GITHUB_ENTERPRISE", "GITLAB", "GITLAB_SELF_MANAGED"] +SharedResourceSortByTypeType = Literal["ARN", "MODIFIED_TIME"] +SortOrderTypeType = Literal["ASCENDING", "DESCENDING"] +SourceAuthTypeType = Literal["CODECONNECTIONS", "OAUTH"] +SourceTypeType = Literal["BITBUCKET", + "CODECOMMIT", + "CODEPIPELINE", + "GITHUB", + "GITHUB_ENTERPRISE", + "GITLAB", + "GITLAB_SELF_MANAGED", + "NO_SOURCE", + "S3",] +StatusTypeType = Literal["FAILED", "FAULT", "IN_PROGRESS", "STOPPED", "SUCCEEDED", "TIMED_OUT"] +WebhookBuildTypeType = Literal["BUILD", "BUILD_BATCH"] +WebhookFilterTypeType = Literal["ACTOR_ACCOUNT_ID", + "BASE_REF", + "COMMIT_MESSAGE", + "EVENT", + "FILE_PATH", + "HEAD_REF", + "RELEASE_NAME", + "TAG_NAME", + "WORKFLOW_NAME",] +WebhookScopeTypeType = Literal["GITHUB_GLOBAL", "GITHUB_ORGANIZATION"] +CodeBuildServiceName = Literal["codebuild"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_code_coverages", + "describe_test_cases", + "list_build_batches", + "list_build_batches_for_project", + "list_builds", + "list_builds_for_project", + "list_projects", + "list_report_groups", + "list_reports", + "list_reports_for_report_group", + "list_shared_projects", + "list_shared_report_groups",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +VpcConfigUnionTypeDef = Union['VpcConfigTypeDef', 'VpcConfigOutputTypeDef'] +ProjectCacheUnionTypeDef = Union['ProjectCacheTypeDef', 'ProjectCacheOutputTypeDef'] +ProjectBuildBatchConfigUnionTypeDef = Union[ 'ProjectBuildBatchConfigTypeDef', 'ProjectBuildBatchConfigOutputTypeDef' ] +ProjectEnvironmentUnionTypeDef = Union['ProjectEnvironmentTypeDef', 'ProjectEnvironmentOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/codecatalyst_classes.py b/aws_resource_validator/pydantic_models/codecatalyst_classes.py new file mode 100644 index 00000000..c4e4fc04 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codecatalyst_classes.py @@ -0,0 +1,700 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codecatalyst_constants import * + +class AccessTokenSummaryTypeDef(BaseModel): + id: str + name: str + expiresTime: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class IdeConfigurationTypeDef(BaseModel): + runtime: Optional[str] = None + name: Optional[str] = None + +class PersistentStorageConfigurationTypeDef(BaseModel): + sizeInGiB: int + +class RepositoryInputTypeDef(BaseModel): + repositoryName: str + branchName: Optional[str] = None + +class CreateProjectRequestRequestTypeDef(BaseModel): + spaceName: str + displayName: str + description: Optional[str] = None + +class CreateSourceRepositoryBranchRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + sourceRepositoryName: str + name: str + headCommitId: Optional[str] = None + +class CreateSourceRepositoryRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + name: str + description: Optional[str] = None + +class DeleteAccessTokenRequestRequestTypeDef(BaseModel): + id: str + +class DeleteDevEnvironmentRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + +class DeleteProjectRequestRequestTypeDef(BaseModel): + spaceName: str + name: str + +class DeleteSourceRepositoryRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + name: str + +class DeleteSpaceRequestRequestTypeDef(BaseModel): + name: str + +class DevEnvironmentAccessDetailsTypeDef(BaseModel): + streamUrl: str + tokenValue: str + +class DevEnvironmentRepositorySummaryTypeDef(BaseModel): + repositoryName: str + branchName: Optional[str] = None + +class ExecuteCommandSessionConfigurationTypeDef(BaseModel): + command: str + arguments: Optional[Sequence[str]] = None + +class DevEnvironmentSessionSummaryTypeDef(BaseModel): + spaceName: str + projectName: str + devEnvironmentId: str + startedTime: datetime + id: str + +class IdeTypeDef(BaseModel): + runtime: Optional[str] = None + name: Optional[str] = None + +class PersistentStorageTypeDef(BaseModel): + sizeInGiB: int + +class EmailAddressTypeDef(BaseModel): + email: Optional[str] = None + verified: Optional[bool] = None + +class EventPayloadTypeDef(BaseModel): + contentType: Optional[str] = None + data: Optional[str] = None + +class ProjectInformationTypeDef(BaseModel): + name: Optional[str] = None + projectId: Optional[str] = None + +class UserIdentityTypeDef(BaseModel): + userType: UserTypeType + principalId: str + userName: Optional[str] = None + awsAccountId: Optional[str] = None + +class FilterTypeDef(BaseModel): + key: str + values: Sequence[str] + comparisonOperator: Optional[str] = None + +class GetDevEnvironmentRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + +class GetProjectRequestRequestTypeDef(BaseModel): + spaceName: str + name: str + +class GetSourceRepositoryCloneUrlsRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + sourceRepositoryName: str + +class GetSourceRepositoryRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + name: str + +class GetSpaceRequestRequestTypeDef(BaseModel): + name: str + +class GetSubscriptionRequestRequestTypeDef(BaseModel): + spaceName: str + +class GetUserDetailsRequestRequestTypeDef(BaseModel): + id: Optional[str] = None + userName: Optional[str] = None + +class GetWorkflowRequestRequestTypeDef(BaseModel): + spaceName: str + id: str + projectName: str + +class WorkflowDefinitionTypeDef(BaseModel): + path: str + +class GetWorkflowRunRequestRequestTypeDef(BaseModel): + spaceName: str + id: str + projectName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccessTokensRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDevEnvironmentSessionsRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + devEnvironmentId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ProjectListFilterTypeDef(BaseModel): + key: FilterKeyType + values: Sequence[str] + comparisonOperator: Optional[ComparisonOperatorType] = None + +class ProjectSummaryTypeDef(BaseModel): + name: str + displayName: Optional[str] = None + description: Optional[str] = None + +class ListSourceRepositoriesItemTypeDef(BaseModel): + id: str + name: str + lastUpdatedTime: datetime + createdTime: datetime + description: Optional[str] = None + +class ListSourceRepositoriesRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListSourceRepositoryBranchesItemTypeDef(BaseModel): + ref: Optional[str] = None + name: Optional[str] = None + lastUpdatedTime: Optional[datetime] = None + headCommitId: Optional[str] = None + +class ListSourceRepositoryBranchesRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + sourceRepositoryName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListSpacesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class SpaceSummaryTypeDef(BaseModel): + name: str + regionName: str + displayName: Optional[str] = None + description: Optional[str] = None + +class ListWorkflowRunsRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + workflowId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + sortBy: Optional[Sequence[Mapping[str, Any]]] = None + +class WorkflowRunSummaryTypeDef(BaseModel): + id: str + workflowId: str + workflowName: str + status: WorkflowRunStatusType + startTime: datetime + lastUpdatedTime: datetime + statusReasons: Optional[List[Dict[str, Any]]] = None + endTime: Optional[datetime] = None + +class ListWorkflowsRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + sortBy: Optional[Sequence[Mapping[str, Any]]] = None + +class StartWorkflowRunRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + workflowId: str + clientToken: Optional[str] = None + +class StopDevEnvironmentRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + +class StopDevEnvironmentSessionRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + sessionId: str + +class UpdateProjectRequestRequestTypeDef(BaseModel): + spaceName: str + name: str + description: Optional[str] = None + +class UpdateSpaceRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + +class WorkflowDefinitionSummaryTypeDef(BaseModel): + path: str + +class CreateAccessTokenRequestRequestTypeDef(BaseModel): + name: str + expiresTime: Optional[TimestampTypeDef] = None + +class ListEventLogsRequestRequestTypeDef(BaseModel): + spaceName: str + startTime: TimestampTypeDef + endTime: TimestampTypeDef + eventName: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class CreateAccessTokenResponseTypeDef(BaseModel): + secret: str + name: str + expiresTime: datetime + accessTokenId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDevEnvironmentResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + vpcConnectionName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResponseTypeDef(BaseModel): + spaceName: str + name: str + displayName: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSourceRepositoryBranchResponseTypeDef(BaseModel): + ref: str + name: str + lastUpdatedTime: datetime + headCommitId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSourceRepositoryResponseTypeDef(BaseModel): + spaceName: str + projectName: str + name: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDevEnvironmentResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectResponseTypeDef(BaseModel): + spaceName: str + name: str + displayName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSourceRepositoryResponseTypeDef(BaseModel): + spaceName: str + projectName: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSpaceResponseTypeDef(BaseModel): + name: str + displayName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProjectResponseTypeDef(BaseModel): + spaceName: str + name: str + displayName: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSourceRepositoryCloneUrlsResponseTypeDef(BaseModel): + https: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSourceRepositoryResponseTypeDef(BaseModel): + spaceName: str + projectName: str + name: str + description: str + lastUpdatedTime: datetime + createdTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetSpaceResponseTypeDef(BaseModel): + name: str + regionName: str + displayName: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionResponseTypeDef(BaseModel): + subscriptionType: str + awsAccountName: str + pendingSubscriptionType: str + pendingSubscriptionStartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowRunResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + workflowId: str + status: WorkflowRunStatusType + statusReasons: List[Dict[str, Any]] + startTime: datetime + endTime: datetime + lastUpdatedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessTokensResponseTypeDef(BaseModel): + items: List[AccessTokenSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDevEnvironmentResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + status: DevEnvironmentStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartWorkflowRunResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + workflowId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopDevEnvironmentResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + status: DevEnvironmentStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopDevEnvironmentSessionResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + sessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectResponseTypeDef(BaseModel): + spaceName: str + name: str + displayName: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSpaceResponseTypeDef(BaseModel): + name: str + displayName: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifySessionResponseTypeDef(BaseModel): + identity: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDevEnvironmentRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + ides: Optional[Sequence[IdeConfigurationTypeDef]] = None + instanceType: Optional[InstanceTypeType] = None + inactivityTimeoutMinutes: Optional[int] = None + +class UpdateDevEnvironmentRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + alias: Optional[str] = None + ides: Optional[Sequence[IdeConfigurationTypeDef]] = None + instanceType: Optional[InstanceTypeType] = None + inactivityTimeoutMinutes: Optional[int] = None + clientToken: Optional[str] = None + +class UpdateDevEnvironmentResponseTypeDef(BaseModel): + id: str + spaceName: str + projectName: str + alias: str + ides: List[IdeConfigurationTypeDef] + instanceType: InstanceTypeType + inactivityTimeoutMinutes: int + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDevEnvironmentRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + instanceType: InstanceTypeType + persistentStorage: PersistentStorageConfigurationTypeDef + repositories: Optional[Sequence[RepositoryInputTypeDef]] = None + clientToken: Optional[str] = None + alias: Optional[str] = None + ides: Optional[Sequence[IdeConfigurationTypeDef]] = None + inactivityTimeoutMinutes: Optional[int] = None + vpcConnectionName: Optional[str] = None + +class StartDevEnvironmentSessionResponseTypeDef(BaseModel): + accessDetails: DevEnvironmentAccessDetailsTypeDef + sessionId: str + spaceName: str + projectName: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DevEnvironmentSessionConfigurationTypeDef(BaseModel): + sessionType: DevEnvironmentSessionTypeType + executeCommandSessionConfiguration: Optional[ ExecuteCommandSessionConfigurationTypeDef ] = None + +class ListDevEnvironmentSessionsResponseTypeDef(BaseModel): + items: List[DevEnvironmentSessionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DevEnvironmentSummaryTypeDef(BaseModel): + id: str + lastUpdatedTime: datetime + creatorId: str + status: DevEnvironmentStatusType + repositories: List[DevEnvironmentRepositorySummaryTypeDef] + instanceType: InstanceTypeType + inactivityTimeoutMinutes: int + persistentStorage: PersistentStorageTypeDef + spaceName: Optional[str] = None + projectName: Optional[str] = None + statusReason: Optional[str] = None + alias: Optional[str] = None + ides: Optional[List[IdeTypeDef]] = None + vpcConnectionName: Optional[str] = None + +class GetDevEnvironmentResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + lastUpdatedTime: datetime + creatorId: str + status: DevEnvironmentStatusType + statusReason: str + repositories: List[DevEnvironmentRepositorySummaryTypeDef] + alias: str + ides: List[IdeTypeDef] + instanceType: InstanceTypeType + inactivityTimeoutMinutes: int + persistentStorage: PersistentStorageTypeDef + vpcConnectionName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserDetailsResponseTypeDef(BaseModel): + userId: str + userName: str + displayName: str + primaryEmail: EmailAddressTypeDef + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventLogEntryTypeDef(BaseModel): + id: str + eventName: str + eventType: str + eventCategory: str + eventSource: str + eventTime: datetime + operationType: OperationTypeType + userIdentity: UserIdentityTypeDef + projectInformation: Optional[ProjectInformationTypeDef] = None + requestId: Optional[str] = None + requestPayload: Optional[EventPayloadTypeDef] = None + responsePayload: Optional[EventPayloadTypeDef] = None + errorCode: Optional[str] = None + sourceIpAddress: Optional[str] = None + userAgent: Optional[str] = None + +class ListDevEnvironmentsRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: Optional[str] = None + filters: Optional[Sequence[FilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetWorkflowResponseTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + name: str + sourceRepositoryName: str + sourceBranchName: str + definition: WorkflowDefinitionTypeDef + createdTime: datetime + lastUpdatedTime: datetime + runMode: WorkflowRunModeType + status: WorkflowStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessTokensRequestListAccessTokensPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevEnvironmentSessionsRequestListDevEnvironmentSessionsPaginateTypeDef(BaseModel): + spaceName: str + projectName: str + devEnvironmentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevEnvironmentsRequestListDevEnvironmentsPaginateTypeDef(BaseModel): + spaceName: str + projectName: Optional[str] = None + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventLogsRequestListEventLogsPaginateTypeDef(BaseModel): + spaceName: str + startTime: TimestampTypeDef + endTime: TimestampTypeDef + eventName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSourceRepositoriesRequestListSourceRepositoriesPaginateTypeDef(BaseModel): + spaceName: str + projectName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSourceRepositoryBranchesRequestListSourceRepositoryBranchesPaginateTypeDef(BaseModel): + spaceName: str + projectName: str + sourceRepositoryName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpacesRequestListSpacesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowRunsRequestListWorkflowRunsPaginateTypeDef(BaseModel): + spaceName: str + projectName: str + workflowId: Optional[str] = None + sortBy: Optional[Sequence[Mapping[str, Any]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowsRequestListWorkflowsPaginateTypeDef(BaseModel): + spaceName: str + projectName: str + sortBy: Optional[Sequence[Mapping[str, Any]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + spaceName: str + filters: Optional[Sequence[ProjectListFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + spaceName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[ProjectListFilterTypeDef]] = None + +class ListProjectsResponseTypeDef(BaseModel): + nextToken: str + items: List[ProjectSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSourceRepositoriesResponseTypeDef(BaseModel): + items: List[ListSourceRepositoriesItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSourceRepositoryBranchesResponseTypeDef(BaseModel): + nextToken: str + items: List[ListSourceRepositoryBranchesItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSpacesResponseTypeDef(BaseModel): + nextToken: str + items: List[SpaceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowRunsResponseTypeDef(BaseModel): + nextToken: str + items: List[WorkflowRunSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class WorkflowSummaryTypeDef(BaseModel): + id: str + name: str + sourceRepositoryName: str + sourceBranchName: str + definition: WorkflowDefinitionSummaryTypeDef + createdTime: datetime + lastUpdatedTime: datetime + runMode: WorkflowRunModeType + status: WorkflowStatusType + +class StartDevEnvironmentSessionRequestRequestTypeDef(BaseModel): + spaceName: str + projectName: str + id: str + sessionConfiguration: DevEnvironmentSessionConfigurationTypeDef + +class ListDevEnvironmentsResponseTypeDef(BaseModel): + items: List[DevEnvironmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventLogsResponseTypeDef(BaseModel): + nextToken: str + items: List[EventLogEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowsResponseTypeDef(BaseModel): + nextToken: str + items: List[WorkflowSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codecatalyst_constants.py b/aws_resource_validator/pydantic_models/codecatalyst_constants.py new file mode 100644 index 00000000..89be9f28 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codecatalyst_constants.py @@ -0,0 +1,434 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ComparisonOperatorType = Literal["BEGINS_WITH", "EQ", "GE", "GT", "LE", "LT"] +DevEnvironmentSessionTypeType = Literal["SSH", "SSM"] +DevEnvironmentStatusType = Literal["DELETED", "DELETING", "FAILED", "PENDING", "RUNNING", "STARTING", "STOPPED", "STOPPING"] +FilterKeyType = Literal["hasAccessTo", "name"] +InstanceTypeType = Literal["dev.standard1.large", "dev.standard1.medium", "dev.standard1.small", "dev.standard1.xlarge"] +ListAccessTokensPaginatorName = Literal["list_access_tokens"] +ListDevEnvironmentSessionsPaginatorName = Literal["list_dev_environment_sessions"] +ListDevEnvironmentsPaginatorName = Literal["list_dev_environments"] +ListEventLogsPaginatorName = Literal["list_event_logs"] +ListProjectsPaginatorName = Literal["list_projects"] +ListSourceRepositoriesPaginatorName = Literal["list_source_repositories"] +ListSourceRepositoryBranchesPaginatorName = Literal["list_source_repository_branches"] +ListSpacesPaginatorName = Literal["list_spaces"] +ListWorkflowRunsPaginatorName = Literal["list_workflow_runs"] +ListWorkflowsPaginatorName = Literal["list_workflows"] +OperationTypeType = Literal["MUTATION", "READONLY"] +UserTypeType = Literal["AWS_ACCOUNT", "UNKNOWN", "USER"] +WorkflowRunModeType = Literal["PARALLEL", "QUEUED", "SUPERSEDED"] +WorkflowRunStatusType = Literal["ABANDONED", + "CANCELLED", + "FAILED", + "IN_PROGRESS", + "NOT_RUN", + "PROVISIONING", + "STOPPED", + "STOPPING", + "SUCCEEDED", + "SUPERSEDED", + "VALIDATING",] +WorkflowStatusType = Literal["ACTIVE", "INVALID"] +CodeCatalystServiceName = Literal["codecatalyst"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_access_tokens", + "list_dev_environment_sessions", + "list_dev_environments", + "list_event_logs", + "list_projects", + "list_source_repositories", + "list_source_repository_branches", + "list_spaces", + "list_workflow_runs", + "list_workflows",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/codecommit_classes.py b/aws_resource_validator/pydantic_models/codecommit_classes.py new file mode 100644 index 00000000..a929265c --- /dev/null +++ b/aws_resource_validator/pydantic_models/codecommit_classes.py @@ -0,0 +1,1227 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codecommit_constants import * + +class ApprovalRuleEventMetadataTypeDef(BaseModel): + approvalRuleName: Optional[str] = None + approvalRuleId: Optional[str] = None + approvalRuleContent: Optional[str] = None + +class ApprovalRuleOverriddenEventMetadataTypeDef(BaseModel): + revisionId: Optional[str] = None + overrideStatus: Optional[OverrideStatusType] = None + +class ApprovalRuleTemplateTypeDef(BaseModel): + approvalRuleTemplateId: Optional[str] = None + approvalRuleTemplateName: Optional[str] = None + approvalRuleTemplateDescription: Optional[str] = None + approvalRuleTemplateContent: Optional[str] = None + ruleContentSha256: Optional[str] = None + lastModifiedDate: Optional[datetime] = None + creationDate: Optional[datetime] = None + lastModifiedUser: Optional[str] = None + +class OriginApprovalRuleTemplateTypeDef(BaseModel): + approvalRuleTemplateId: Optional[str] = None + approvalRuleTemplateName: Optional[str] = None + +class ApprovalStateChangedEventMetadataTypeDef(BaseModel): + revisionId: Optional[str] = None + approvalStatus: Optional[ApprovalStateType] = None + +class ApprovalTypeDef(BaseModel): + userArn: Optional[str] = None + approvalState: Optional[ApprovalStateType] = None + +class AssociateApprovalRuleTemplateWithRepositoryInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + repositoryName: str + +class BatchAssociateApprovalRuleTemplateWithRepositoriesErrorTypeDef(BaseModel): + repositoryName: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class BatchAssociateApprovalRuleTemplateWithRepositoriesInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + repositoryNames: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchDescribeMergeConflictsErrorTypeDef(BaseModel): + filePath: str + exceptionName: str + message: str + +class BatchDescribeMergeConflictsInputRequestTypeDef(BaseModel): + repositoryName: str + destinationCommitSpecifier: str + sourceCommitSpecifier: str + mergeOption: MergeOptionTypeEnumType + maxMergeHunks: Optional[int] = None + maxConflictFiles: Optional[int] = None + filePaths: Optional[Sequence[str]] = None + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + nextToken: Optional[str] = None + +class BatchDisassociateApprovalRuleTemplateFromRepositoriesErrorTypeDef(BaseModel): + repositoryName: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class BatchDisassociateApprovalRuleTemplateFromRepositoriesInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + repositoryNames: Sequence[str] + +class BatchGetCommitsErrorTypeDef(BaseModel): + commitId: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class BatchGetCommitsInputRequestTypeDef(BaseModel): + commitIds: Sequence[str] + repositoryName: str + +class BatchGetRepositoriesErrorTypeDef(BaseModel): + repositoryId: Optional[str] = None + repositoryName: Optional[str] = None + errorCode: Optional[BatchGetRepositoriesErrorCodeEnumType] = None + errorMessage: Optional[str] = None + +class BatchGetRepositoriesInputRequestTypeDef(BaseModel): + repositoryNames: Sequence[str] + +class RepositoryMetadataTypeDef(BaseModel): + accountId: Optional[str] = None + repositoryId: Optional[str] = None + repositoryName: Optional[str] = None + repositoryDescription: Optional[str] = None + defaultBranch: Optional[str] = None + lastModifiedDate: Optional[datetime] = None + creationDate: Optional[datetime] = None + cloneUrlHttp: Optional[str] = None + cloneUrlSsh: Optional[str] = None + Arn: Optional[str] = None + kmsKeyId: Optional[str] = None + +class BlobMetadataTypeDef(BaseModel): + blobId: Optional[str] = None + path: Optional[str] = None + mode: Optional[str] = None + +class BranchInfoTypeDef(BaseModel): + branchName: Optional[str] = None + commitId: Optional[str] = None + +class CommentTypeDef(BaseModel): + commentId: Optional[str] = None + content: Optional[str] = None + inReplyTo: Optional[str] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + authorArn: Optional[str] = None + deleted: Optional[bool] = None + clientRequestToken: Optional[str] = None + callerReactions: Optional[List[str]] = None + reactionCounts: Optional[Dict[str, int]] = None + +class LocationTypeDef(BaseModel): + filePath: Optional[str] = None + filePosition: Optional[int] = None + relativeFileVersion: Optional[RelativeFileVersionEnumType] = None + +class UserInfoTypeDef(BaseModel): + name: Optional[str] = None + email: Optional[str] = None + date: Optional[str] = None + +class FileModesTypeDef(BaseModel): + source: Optional[FileModeTypeEnumType] = None + destination: Optional[FileModeTypeEnumType] = None + base: Optional[FileModeTypeEnumType] = None + +class FileSizesTypeDef(BaseModel): + source: Optional[int] = None + destination: Optional[int] = None + base: Optional[int] = None + +class IsBinaryFileTypeDef(BaseModel): + source: Optional[bool] = None + destination: Optional[bool] = None + base: Optional[bool] = None + +class MergeOperationsTypeDef(BaseModel): + source: Optional[ChangeTypeEnumType] = None + destination: Optional[ChangeTypeEnumType] = None + +class ObjectTypesTypeDef(BaseModel): + source: Optional[ObjectTypeEnumType] = None + destination: Optional[ObjectTypeEnumType] = None + base: Optional[ObjectTypeEnumType] = None + +class DeleteFileEntryTypeDef(BaseModel): + filePath: str + +class SetFileModeEntryTypeDef(BaseModel): + filePath: str + fileMode: FileModeTypeEnumType + +class CreateApprovalRuleTemplateInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + approvalRuleTemplateContent: str + approvalRuleTemplateDescription: Optional[str] = None + +class CreateBranchInputRequestTypeDef(BaseModel): + repositoryName: str + branchName: str + commitId: str + +class FileMetadataTypeDef(BaseModel): + absolutePath: Optional[str] = None + blobId: Optional[str] = None + fileMode: Optional[FileModeTypeEnumType] = None + +class CreatePullRequestApprovalRuleInputRequestTypeDef(BaseModel): + pullRequestId: str + approvalRuleName: str + approvalRuleContent: str + +class TargetTypeDef(BaseModel): + repositoryName: str + sourceReference: str + destinationReference: Optional[str] = None + +class CreateRepositoryInputRequestTypeDef(BaseModel): + repositoryName: str + repositoryDescription: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + kmsKeyId: Optional[str] = None + +class DeleteApprovalRuleTemplateInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + +class DeleteBranchInputRequestTypeDef(BaseModel): + repositoryName: str + branchName: str + +class DeleteCommentContentInputRequestTypeDef(BaseModel): + commentId: str + +class DeleteFileInputRequestTypeDef(BaseModel): + repositoryName: str + branchName: str + filePath: str + parentCommitId: str + keepEmptyFolders: Optional[bool] = None + commitMessage: Optional[str] = None + name: Optional[str] = None + email: Optional[str] = None + +class DeletePullRequestApprovalRuleInputRequestTypeDef(BaseModel): + pullRequestId: str + approvalRuleName: str + +class DeleteRepositoryInputRequestTypeDef(BaseModel): + repositoryName: str + +class DescribeMergeConflictsInputRequestTypeDef(BaseModel): + repositoryName: str + destinationCommitSpecifier: str + sourceCommitSpecifier: str + mergeOption: MergeOptionTypeEnumType + filePath: str + maxMergeHunks: Optional[int] = None + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + nextToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribePullRequestEventsInputRequestTypeDef(BaseModel): + pullRequestId: str + pullRequestEventType: Optional[PullRequestEventTypeType] = None + actorArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DisassociateApprovalRuleTemplateFromRepositoryInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + repositoryName: str + +class EvaluatePullRequestApprovalRulesInputRequestTypeDef(BaseModel): + pullRequestId: str + revisionId: str + +class EvaluationTypeDef(BaseModel): + approved: Optional[bool] = None + overridden: Optional[bool] = None + approvalRulesSatisfied: Optional[List[str]] = None + approvalRulesNotSatisfied: Optional[List[str]] = None + +class FileTypeDef(BaseModel): + blobId: Optional[str] = None + absolutePath: Optional[str] = None + relativePath: Optional[str] = None + fileMode: Optional[FileModeTypeEnumType] = None + +class FolderTypeDef(BaseModel): + treeId: Optional[str] = None + absolutePath: Optional[str] = None + relativePath: Optional[str] = None + +class GetApprovalRuleTemplateInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + +class GetBlobInputRequestTypeDef(BaseModel): + repositoryName: str + blobId: str + +class GetBranchInputRequestTypeDef(BaseModel): + repositoryName: Optional[str] = None + branchName: Optional[str] = None + +class GetCommentInputRequestTypeDef(BaseModel): + commentId: str + +class GetCommentReactionsInputRequestTypeDef(BaseModel): + commentId: str + reactionUserArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetCommentsForComparedCommitInputRequestTypeDef(BaseModel): + repositoryName: str + afterCommitId: str + beforeCommitId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetCommentsForPullRequestInputRequestTypeDef(BaseModel): + pullRequestId: str + repositoryName: Optional[str] = None + beforeCommitId: Optional[str] = None + afterCommitId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetCommitInputRequestTypeDef(BaseModel): + repositoryName: str + commitId: str + +class GetDifferencesInputRequestTypeDef(BaseModel): + repositoryName: str + afterCommitSpecifier: str + beforeCommitSpecifier: Optional[str] = None + beforePath: Optional[str] = None + afterPath: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetFileInputRequestTypeDef(BaseModel): + repositoryName: str + filePath: str + commitSpecifier: Optional[str] = None + +class GetFolderInputRequestTypeDef(BaseModel): + repositoryName: str + folderPath: str + commitSpecifier: Optional[str] = None + +class SubModuleTypeDef(BaseModel): + commitId: Optional[str] = None + absolutePath: Optional[str] = None + relativePath: Optional[str] = None + +class SymbolicLinkTypeDef(BaseModel): + blobId: Optional[str] = None + absolutePath: Optional[str] = None + relativePath: Optional[str] = None + fileMode: Optional[FileModeTypeEnumType] = None + +class GetMergeCommitInputRequestTypeDef(BaseModel): + repositoryName: str + sourceCommitSpecifier: str + destinationCommitSpecifier: str + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + +class GetMergeConflictsInputRequestTypeDef(BaseModel): + repositoryName: str + destinationCommitSpecifier: str + sourceCommitSpecifier: str + mergeOption: MergeOptionTypeEnumType + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + maxConflictFiles: Optional[int] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + nextToken: Optional[str] = None + +class GetMergeOptionsInputRequestTypeDef(BaseModel): + repositoryName: str + sourceCommitSpecifier: str + destinationCommitSpecifier: str + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + +class GetPullRequestApprovalStatesInputRequestTypeDef(BaseModel): + pullRequestId: str + revisionId: str + +class GetPullRequestInputRequestTypeDef(BaseModel): + pullRequestId: str + +class GetPullRequestOverrideStateInputRequestTypeDef(BaseModel): + pullRequestId: str + revisionId: str + +class GetRepositoryInputRequestTypeDef(BaseModel): + repositoryName: str + +class GetRepositoryTriggersInputRequestTypeDef(BaseModel): + repositoryName: str + +class RepositoryTriggerTypeDef(BaseModel): + name: str + destinationArn: str + events: List[RepositoryTriggerEventEnumType] + customData: Optional[str] = None + branches: Optional[List[str]] = None + +class ListApprovalRuleTemplatesInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssociatedApprovalRuleTemplatesForRepositoryInputRequestTypeDef(BaseModel): + repositoryName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListBranchesInputRequestTypeDef(BaseModel): + repositoryName: str + nextToken: Optional[str] = None + +class ListFileCommitHistoryRequestRequestTypeDef(BaseModel): + repositoryName: str + filePath: str + commitSpecifier: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListPullRequestsInputRequestTypeDef(BaseModel): + repositoryName: str + authorArn: Optional[str] = None + pullRequestStatus: Optional[PullRequestStatusEnumType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListRepositoriesForApprovalRuleTemplateInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListRepositoriesInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + sortBy: Optional[SortByEnumType] = None + order: Optional[OrderEnumType] = None + +class RepositoryNameIdPairTypeDef(BaseModel): + repositoryName: Optional[str] = None + repositoryId: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + nextToken: Optional[str] = None + +class MergeBranchesByFastForwardInputRequestTypeDef(BaseModel): + repositoryName: str + sourceCommitSpecifier: str + destinationCommitSpecifier: str + targetBranch: Optional[str] = None + +class MergeHunkDetailTypeDef(BaseModel): + startLine: Optional[int] = None + endLine: Optional[int] = None + hunkContent: Optional[str] = None + +class MergeMetadataTypeDef(BaseModel): + isMerged: Optional[bool] = None + mergedBy: Optional[str] = None + mergeCommitId: Optional[str] = None + mergeOption: Optional[MergeOptionTypeEnumType] = None + +class MergePullRequestByFastForwardInputRequestTypeDef(BaseModel): + pullRequestId: str + repositoryName: str + sourceCommitId: Optional[str] = None + +class OverridePullRequestApprovalRulesInputRequestTypeDef(BaseModel): + pullRequestId: str + revisionId: str + overrideStatus: OverrideStatusType + +class PostCommentReplyInputRequestTypeDef(BaseModel): + inReplyTo: str + content: str + clientRequestToken: Optional[str] = None + +class PullRequestCreatedEventMetadataTypeDef(BaseModel): + repositoryName: Optional[str] = None + sourceCommitId: Optional[str] = None + destinationCommitId: Optional[str] = None + mergeBase: Optional[str] = None + +class PullRequestSourceReferenceUpdatedEventMetadataTypeDef(BaseModel): + repositoryName: Optional[str] = None + beforeCommitId: Optional[str] = None + afterCommitId: Optional[str] = None + mergeBase: Optional[str] = None + +class PullRequestStatusChangedEventMetadataTypeDef(BaseModel): + pullRequestStatus: Optional[PullRequestStatusEnumType] = None + +class PutCommentReactionInputRequestTypeDef(BaseModel): + commentId: str + reactionValue: str + +class SourceFileSpecifierTypeDef(BaseModel): + filePath: str + isMove: Optional[bool] = None + +class ReactionValueFormatsTypeDef(BaseModel): + emoji: Optional[str] = None + shortCode: Optional[str] = None + unicode: Optional[str] = None + +class RepositoryTriggerExecutionFailureTypeDef(BaseModel): + trigger: Optional[str] = None + failureMessage: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateApprovalRuleTemplateContentInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + newRuleContent: str + existingRuleContentSha256: Optional[str] = None + +class UpdateApprovalRuleTemplateDescriptionInputRequestTypeDef(BaseModel): + approvalRuleTemplateName: str + approvalRuleTemplateDescription: str + +class UpdateApprovalRuleTemplateNameInputRequestTypeDef(BaseModel): + oldApprovalRuleTemplateName: str + newApprovalRuleTemplateName: str + +class UpdateCommentInputRequestTypeDef(BaseModel): + commentId: str + content: str + +class UpdateDefaultBranchInputRequestTypeDef(BaseModel): + repositoryName: str + defaultBranchName: str + +class UpdatePullRequestApprovalRuleContentInputRequestTypeDef(BaseModel): + pullRequestId: str + approvalRuleName: str + newRuleContent: str + existingRuleContentSha256: Optional[str] = None + +class UpdatePullRequestApprovalStateInputRequestTypeDef(BaseModel): + pullRequestId: str + revisionId: str + approvalState: ApprovalStateType + +class UpdatePullRequestDescriptionInputRequestTypeDef(BaseModel): + pullRequestId: str + description: str + +class UpdatePullRequestStatusInputRequestTypeDef(BaseModel): + pullRequestId: str + pullRequestStatus: PullRequestStatusEnumType + +class UpdatePullRequestTitleInputRequestTypeDef(BaseModel): + pullRequestId: str + title: str + +class UpdateRepositoryDescriptionInputRequestTypeDef(BaseModel): + repositoryName: str + repositoryDescription: Optional[str] = None + +class UpdateRepositoryEncryptionKeyInputRequestTypeDef(BaseModel): + repositoryName: str + kmsKeyId: str + +class UpdateRepositoryNameInputRequestTypeDef(BaseModel): + oldName: str + newName: str + +class ApprovalRuleTypeDef(BaseModel): + approvalRuleId: Optional[str] = None + approvalRuleName: Optional[str] = None + approvalRuleContent: Optional[str] = None + ruleContentSha256: Optional[str] = None + lastModifiedDate: Optional[datetime] = None + creationDate: Optional[datetime] = None + lastModifiedUser: Optional[str] = None + originApprovalRuleTemplate: Optional[OriginApprovalRuleTemplateTypeDef] = None + +class BatchAssociateApprovalRuleTemplateWithRepositoriesOutputTypeDef(BaseModel): + associatedRepositoryNames: List[str] + errors: List[BatchAssociateApprovalRuleTemplateWithRepositoriesErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApprovalRuleTemplateOutputTypeDef(BaseModel): + approvalRuleTemplate: ApprovalRuleTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUnreferencedMergeCommitOutputTypeDef(BaseModel): + commitId: str + treeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApprovalRuleTemplateOutputTypeDef(BaseModel): + approvalRuleTemplateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFileOutputTypeDef(BaseModel): + commitId: str + blobId: str + treeId: str + filePath: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePullRequestApprovalRuleOutputTypeDef(BaseModel): + approvalRuleId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryOutputTypeDef(BaseModel): + repositoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetApprovalRuleTemplateOutputTypeDef(BaseModel): + approvalRuleTemplate: ApprovalRuleTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlobOutputTypeDef(BaseModel): + content: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class GetFileOutputTypeDef(BaseModel): + commitId: str + blobId: str + filePath: str + fileMode: FileModeTypeEnumType + fileSize: int + fileContent: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class GetMergeCommitOutputTypeDef(BaseModel): + sourceCommitId: str + destinationCommitId: str + baseCommitId: str + mergedCommitId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMergeOptionsOutputTypeDef(BaseModel): + mergeOptions: List[MergeOptionTypeEnumType] + sourceCommitId: str + destinationCommitId: str + baseCommitId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPullRequestApprovalStatesOutputTypeDef(BaseModel): + approvals: List[ApprovalTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPullRequestOverrideStateOutputTypeDef(BaseModel): + overridden: bool + overrider: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApprovalRuleTemplatesOutputTypeDef(BaseModel): + approvalRuleTemplateNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedApprovalRuleTemplatesForRepositoryOutputTypeDef(BaseModel): + approvalRuleTemplateNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBranchesOutputTypeDef(BaseModel): + branches: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPullRequestsOutputTypeDef(BaseModel): + pullRequestIds: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoriesForApprovalRuleTemplateOutputTypeDef(BaseModel): + repositoryNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MergeBranchesByFastForwardOutputTypeDef(BaseModel): + commitId: str + treeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class MergeBranchesBySquashOutputTypeDef(BaseModel): + commitId: str + treeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class MergeBranchesByThreeWayOutputTypeDef(BaseModel): + commitId: str + treeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutFileOutputTypeDef(BaseModel): + commitId: str + blobId: str + treeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutRepositoryTriggersOutputTypeDef(BaseModel): + configurationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApprovalRuleTemplateContentOutputTypeDef(BaseModel): + approvalRuleTemplate: ApprovalRuleTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApprovalRuleTemplateDescriptionOutputTypeDef(BaseModel): + approvalRuleTemplate: ApprovalRuleTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApprovalRuleTemplateNameOutputTypeDef(BaseModel): + approvalRuleTemplate: ApprovalRuleTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRepositoryEncryptionKeyOutputTypeDef(BaseModel): + repositoryId: str + kmsKeyId: str + originalKmsKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateApprovalRuleTemplateFromRepositoriesOutputTypeDef(BaseModel): + disassociatedRepositoryNames: List[str] + errors: List[BatchDisassociateApprovalRuleTemplateFromRepositoriesErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetRepositoriesOutputTypeDef(BaseModel): + repositories: List[RepositoryMetadataTypeDef] + repositoriesNotFound: List[str] + errors: List[BatchGetRepositoriesErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryOutputTypeDef(BaseModel): + repositoryMetadata: RepositoryMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryOutputTypeDef(BaseModel): + repositoryMetadata: RepositoryMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DifferenceTypeDef(BaseModel): + beforeBlob: Optional[BlobMetadataTypeDef] = None + afterBlob: Optional[BlobMetadataTypeDef] = None + changeType: Optional[ChangeTypeEnumType] = None + +class PutFileInputRequestTypeDef(BaseModel): + repositoryName: str + branchName: str + fileContent: BlobTypeDef + filePath: str + fileMode: Optional[FileModeTypeEnumType] = None + parentCommitId: Optional[str] = None + commitMessage: Optional[str] = None + name: Optional[str] = None + email: Optional[str] = None + +class ReplaceContentEntryTypeDef(BaseModel): + filePath: str + replacementType: ReplacementTypeEnumType + content: Optional[BlobTypeDef] = None + fileMode: Optional[FileModeTypeEnumType] = None + +class DeleteBranchOutputTypeDef(BaseModel): + deletedBranch: BranchInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBranchOutputTypeDef(BaseModel): + branch: BranchInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCommentContentOutputTypeDef(BaseModel): + comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCommentOutputTypeDef(BaseModel): + comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PostCommentReplyOutputTypeDef(BaseModel): + comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCommentOutputTypeDef(BaseModel): + comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CommentsForComparedCommitTypeDef(BaseModel): + repositoryName: Optional[str] = None + beforeCommitId: Optional[str] = None + afterCommitId: Optional[str] = None + beforeBlobId: Optional[str] = None + afterBlobId: Optional[str] = None + location: Optional[LocationTypeDef] = None + comments: Optional[List[CommentTypeDef]] = None + +class CommentsForPullRequestTypeDef(BaseModel): + pullRequestId: Optional[str] = None + repositoryName: Optional[str] = None + beforeCommitId: Optional[str] = None + afterCommitId: Optional[str] = None + beforeBlobId: Optional[str] = None + afterBlobId: Optional[str] = None + location: Optional[LocationTypeDef] = None + comments: Optional[List[CommentTypeDef]] = None + +class PostCommentForComparedCommitInputRequestTypeDef(BaseModel): + repositoryName: str + afterCommitId: str + content: str + beforeCommitId: Optional[str] = None + location: Optional[LocationTypeDef] = None + clientRequestToken: Optional[str] = None + +class PostCommentForComparedCommitOutputTypeDef(BaseModel): + repositoryName: str + beforeCommitId: str + afterCommitId: str + beforeBlobId: str + afterBlobId: str + location: LocationTypeDef + comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PostCommentForPullRequestInputRequestTypeDef(BaseModel): + pullRequestId: str + repositoryName: str + beforeCommitId: str + afterCommitId: str + content: str + location: Optional[LocationTypeDef] = None + clientRequestToken: Optional[str] = None + +class PostCommentForPullRequestOutputTypeDef(BaseModel): + repositoryName: str + pullRequestId: str + beforeCommitId: str + afterCommitId: str + beforeBlobId: str + afterBlobId: str + location: LocationTypeDef + comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CommitTypeDef(BaseModel): + commitId: Optional[str] = None + treeId: Optional[str] = None + parents: Optional[List[str]] = None + message: Optional[str] = None + author: Optional[UserInfoTypeDef] = None + committer: Optional[UserInfoTypeDef] = None + additionalData: Optional[str] = None + +class ConflictMetadataTypeDef(BaseModel): + filePath: Optional[str] = None + fileSizes: Optional[FileSizesTypeDef] = None + fileModes: Optional[FileModesTypeDef] = None + objectTypes: Optional[ObjectTypesTypeDef] = None + numberOfConflicts: Optional[int] = None + isBinaryFile: Optional[IsBinaryFileTypeDef] = None + contentConflict: Optional[bool] = None + fileModeConflict: Optional[bool] = None + objectTypeConflict: Optional[bool] = None + mergeOperations: Optional[MergeOperationsTypeDef] = None + +class CreateCommitOutputTypeDef(BaseModel): + commitId: str + treeId: str + filesAdded: List[FileMetadataTypeDef] + filesUpdated: List[FileMetadataTypeDef] + filesDeleted: List[FileMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePullRequestInputRequestTypeDef(BaseModel): + title: str + targets: Sequence[TargetTypeDef] + description: Optional[str] = None + clientRequestToken: Optional[str] = None + +class DescribePullRequestEventsInputDescribePullRequestEventsPaginateTypeDef(BaseModel): + pullRequestId: str + pullRequestEventType: Optional[PullRequestEventTypeType] = None + actorArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCommentsForComparedCommitInputGetCommentsForComparedCommitPaginateTypeDef(BaseModel): + repositoryName: str + afterCommitId: str + beforeCommitId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCommentsForPullRequestInputGetCommentsForPullRequestPaginateTypeDef(BaseModel): + pullRequestId: str + repositoryName: Optional[str] = None + beforeCommitId: Optional[str] = None + afterCommitId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDifferencesInputGetDifferencesPaginateTypeDef(BaseModel): + repositoryName: str + afterCommitSpecifier: str + beforeCommitSpecifier: Optional[str] = None + beforePath: Optional[str] = None + afterPath: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBranchesInputListBranchesPaginateTypeDef(BaseModel): + repositoryName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPullRequestsInputListPullRequestsPaginateTypeDef(BaseModel): + repositoryName: str + authorArn: Optional[str] = None + pullRequestStatus: Optional[PullRequestStatusEnumType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRepositoriesInputListRepositoriesPaginateTypeDef(BaseModel): + sortBy: Optional[SortByEnumType] = None + order: Optional[OrderEnumType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class EvaluatePullRequestApprovalRulesOutputTypeDef(BaseModel): + evaluation: EvaluationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFolderOutputTypeDef(BaseModel): + commitId: str + folderPath: str + treeId: str + subFolders: List[FolderTypeDef] + files: List[FileTypeDef] + symbolicLinks: List[SymbolicLinkTypeDef] + subModules: List[SubModuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryTriggersOutputTypeDef(BaseModel): + configurationId: str + triggers: List[RepositoryTriggerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRepositoryTriggersInputRequestTypeDef(BaseModel): + repositoryName: str + triggers: Sequence[RepositoryTriggerTypeDef] + +class TestRepositoryTriggersInputRequestTypeDef(BaseModel): + repositoryName: str + triggers: Sequence[RepositoryTriggerTypeDef] + +class ListRepositoriesOutputTypeDef(BaseModel): + repositories: List[RepositoryNameIdPairTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MergeHunkTypeDef(BaseModel): + isConflict: Optional[bool] = None + source: Optional[MergeHunkDetailTypeDef] = None + destination: Optional[MergeHunkDetailTypeDef] = None + base: Optional[MergeHunkDetailTypeDef] = None + +class PullRequestMergedStateChangedEventMetadataTypeDef(BaseModel): + repositoryName: Optional[str] = None + destinationReference: Optional[str] = None + mergeMetadata: Optional[MergeMetadataTypeDef] = None + +class PullRequestTargetTypeDef(BaseModel): + repositoryName: Optional[str] = None + sourceReference: Optional[str] = None + destinationReference: Optional[str] = None + destinationCommit: Optional[str] = None + sourceCommit: Optional[str] = None + mergeBase: Optional[str] = None + mergeMetadata: Optional[MergeMetadataTypeDef] = None + +class PutFileEntryTypeDef(BaseModel): + filePath: str + fileMode: Optional[FileModeTypeEnumType] = None + fileContent: Optional[BlobTypeDef] = None + sourceFile: Optional[SourceFileSpecifierTypeDef] = None + +class ReactionForCommentTypeDef(BaseModel): + reaction: Optional[ReactionValueFormatsTypeDef] = None + reactionUsers: Optional[List[str]] = None + reactionsFromDeletedUsersCount: Optional[int] = None + +class TestRepositoryTriggersOutputTypeDef(BaseModel): + successfulExecutions: List[str] + failedExecutions: List[RepositoryTriggerExecutionFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePullRequestApprovalRuleOutputTypeDef(BaseModel): + approvalRule: ApprovalRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePullRequestApprovalRuleContentOutputTypeDef(BaseModel): + approvalRule: ApprovalRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDifferencesOutputTypeDef(BaseModel): + differences: List[DifferenceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConflictResolutionTypeDef(BaseModel): + replaceContents: Optional[Sequence[ReplaceContentEntryTypeDef]] = None + deleteFiles: Optional[Sequence[DeleteFileEntryTypeDef]] = None + setFileModes: Optional[Sequence[SetFileModeEntryTypeDef]] = None + +class GetCommentsForComparedCommitOutputTypeDef(BaseModel): + commentsForComparedCommitData: List[CommentsForComparedCommitTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCommentsForPullRequestOutputTypeDef(BaseModel): + commentsForPullRequestData: List[CommentsForPullRequestTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetCommitsOutputTypeDef(BaseModel): + commits: List[CommitTypeDef] + errors: List[BatchGetCommitsErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FileVersionTypeDef(BaseModel): + commit: Optional[CommitTypeDef] = None + blobId: Optional[str] = None + path: Optional[str] = None + revisionChildren: Optional[List[str]] = None + +class GetCommitOutputTypeDef(BaseModel): + commit: CommitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMergeConflictsOutputTypeDef(BaseModel): + mergeable: bool + destinationCommitId: str + sourceCommitId: str + baseCommitId: str + conflictMetadataList: List[ConflictMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConflictTypeDef(BaseModel): + conflictMetadata: Optional[ConflictMetadataTypeDef] = None + mergeHunks: Optional[List[MergeHunkTypeDef]] = None + +class DescribeMergeConflictsOutputTypeDef(BaseModel): + conflictMetadata: ConflictMetadataTypeDef + mergeHunks: List[MergeHunkTypeDef] + nextToken: str + destinationCommitId: str + sourceCommitId: str + baseCommitId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PullRequestEventTypeDef(BaseModel): + pullRequestId: Optional[str] = None + eventDate: Optional[datetime] = None + pullRequestEventType: Optional[PullRequestEventTypeType] = None + actorArn: Optional[str] = None + pullRequestCreatedEventMetadata: Optional[PullRequestCreatedEventMetadataTypeDef] = None + pullRequestStatusChangedEventMetadata: Optional[ PullRequestStatusChangedEventMetadataTypeDef ] = None + pullRequestSourceReferenceUpdatedEventMetadata: Optional[ PullRequestSourceReferenceUpdatedEventMetadataTypeDef ] = None + pullRequestMergedStateChangedEventMetadata: Optional[ PullRequestMergedStateChangedEventMetadataTypeDef ] = None + approvalRuleEventMetadata: Optional[ApprovalRuleEventMetadataTypeDef] = None + approvalStateChangedEventMetadata: Optional[ApprovalStateChangedEventMetadataTypeDef] = None + approvalRuleOverriddenEventMetadata: Optional[ ApprovalRuleOverriddenEventMetadataTypeDef ] = None + +class PullRequestTypeDef(BaseModel): + pullRequestId: Optional[str] = None + title: Optional[str] = None + description: Optional[str] = None + lastActivityDate: Optional[datetime] = None + creationDate: Optional[datetime] = None + pullRequestStatus: Optional[PullRequestStatusEnumType] = None + authorArn: Optional[str] = None + pullRequestTargets: Optional[List[PullRequestTargetTypeDef]] = None + clientRequestToken: Optional[str] = None + revisionId: Optional[str] = None + approvalRules: Optional[List[ApprovalRuleTypeDef]] = None + +class CreateCommitInputRequestTypeDef(BaseModel): + repositoryName: str + branchName: str + parentCommitId: Optional[str] = None + authorName: Optional[str] = None + email: Optional[str] = None + commitMessage: Optional[str] = None + keepEmptyFolders: Optional[bool] = None + putFiles: Optional[Sequence[PutFileEntryTypeDef]] = None + deleteFiles: Optional[Sequence[DeleteFileEntryTypeDef]] = None + setFileModes: Optional[Sequence[SetFileModeEntryTypeDef]] = None + +class GetCommentReactionsOutputTypeDef(BaseModel): + reactionsForComment: List[ReactionForCommentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUnreferencedMergeCommitInputRequestTypeDef(BaseModel): + repositoryName: str + sourceCommitSpecifier: str + destinationCommitSpecifier: str + mergeOption: MergeOptionTypeEnumType + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + authorName: Optional[str] = None + email: Optional[str] = None + commitMessage: Optional[str] = None + keepEmptyFolders: Optional[bool] = None + conflictResolution: Optional[ConflictResolutionTypeDef] = None + +class MergeBranchesBySquashInputRequestTypeDef(BaseModel): + repositoryName: str + sourceCommitSpecifier: str + destinationCommitSpecifier: str + targetBranch: Optional[str] = None + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + authorName: Optional[str] = None + email: Optional[str] = None + commitMessage: Optional[str] = None + keepEmptyFolders: Optional[bool] = None + conflictResolution: Optional[ConflictResolutionTypeDef] = None + +class MergeBranchesByThreeWayInputRequestTypeDef(BaseModel): + repositoryName: str + sourceCommitSpecifier: str + destinationCommitSpecifier: str + targetBranch: Optional[str] = None + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + authorName: Optional[str] = None + email: Optional[str] = None + commitMessage: Optional[str] = None + keepEmptyFolders: Optional[bool] = None + conflictResolution: Optional[ConflictResolutionTypeDef] = None + +class MergePullRequestBySquashInputRequestTypeDef(BaseModel): + pullRequestId: str + repositoryName: str + sourceCommitId: Optional[str] = None + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + commitMessage: Optional[str] = None + authorName: Optional[str] = None + email: Optional[str] = None + keepEmptyFolders: Optional[bool] = None + conflictResolution: Optional[ConflictResolutionTypeDef] = None + +class MergePullRequestByThreeWayInputRequestTypeDef(BaseModel): + pullRequestId: str + repositoryName: str + sourceCommitId: Optional[str] = None + conflictDetailLevel: Optional[ConflictDetailLevelTypeEnumType] = None + conflictResolutionStrategy: Optional[ConflictResolutionStrategyTypeEnumType] = None + commitMessage: Optional[str] = None + authorName: Optional[str] = None + email: Optional[str] = None + keepEmptyFolders: Optional[bool] = None + conflictResolution: Optional[ConflictResolutionTypeDef] = None + +class ListFileCommitHistoryResponseTypeDef(BaseModel): + revisionDag: List[FileVersionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDescribeMergeConflictsOutputTypeDef(BaseModel): + conflicts: List[ConflictTypeDef] + nextToken: str + errors: List[BatchDescribeMergeConflictsErrorTypeDef] + destinationCommitId: str + sourceCommitId: str + baseCommitId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePullRequestEventsOutputTypeDef(BaseModel): + pullRequestEvents: List[PullRequestEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePullRequestOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPullRequestOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MergePullRequestByFastForwardOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MergePullRequestBySquashOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MergePullRequestByThreeWayOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePullRequestDescriptionOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePullRequestStatusOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePullRequestTitleOutputTypeDef(BaseModel): + pullRequest: PullRequestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codecommit_constants.py b/aws_resource_validator/pydantic_models/codecommit_constants.py new file mode 100644 index 00000000..b14f5045 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codecommit_constants.py @@ -0,0 +1,458 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApprovalStateType = Literal["APPROVE", "REVOKE"] +BatchGetRepositoriesErrorCodeEnumType = Literal["EncryptionIntegrityChecksFailedException", + "EncryptionKeyAccessDeniedException", + "EncryptionKeyDisabledException", + "EncryptionKeyNotFoundException", + "EncryptionKeyUnavailableException", + "RepositoryDoesNotExistException",] +ChangeTypeEnumType = Literal["A", "D", "M"] +ConflictDetailLevelTypeEnumType = Literal["FILE_LEVEL", "LINE_LEVEL"] +ConflictResolutionStrategyTypeEnumType = Literal["ACCEPT_DESTINATION", "ACCEPT_SOURCE", "AUTOMERGE", "NONE"] +DescribePullRequestEventsPaginatorName = Literal["describe_pull_request_events"] +FileModeTypeEnumType = Literal["EXECUTABLE", "NORMAL", "SYMLINK"] +GetCommentsForComparedCommitPaginatorName = Literal["get_comments_for_compared_commit"] +GetCommentsForPullRequestPaginatorName = Literal["get_comments_for_pull_request"] +GetDifferencesPaginatorName = Literal["get_differences"] +ListBranchesPaginatorName = Literal["list_branches"] +ListPullRequestsPaginatorName = Literal["list_pull_requests"] +ListRepositoriesPaginatorName = Literal["list_repositories"] +MergeOptionTypeEnumType = Literal["FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"] +ObjectTypeEnumType = Literal["DIRECTORY", "FILE", "GIT_LINK", "SYMBOLIC_LINK"] +OrderEnumType = Literal["ascending", "descending"] +OverrideStatusType = Literal["OVERRIDE", "REVOKE"] +PullRequestEventTypeType = Literal["PULL_REQUEST_APPROVAL_RULE_CREATED", + "PULL_REQUEST_APPROVAL_RULE_DELETED", + "PULL_REQUEST_APPROVAL_RULE_OVERRIDDEN", + "PULL_REQUEST_APPROVAL_RULE_UPDATED", + "PULL_REQUEST_APPROVAL_STATE_CHANGED", + "PULL_REQUEST_CREATED", + "PULL_REQUEST_MERGE_STATE_CHANGED", + "PULL_REQUEST_SOURCE_REFERENCE_UPDATED", + "PULL_REQUEST_STATUS_CHANGED",] +PullRequestStatusEnumType = Literal["CLOSED", "OPEN"] +RelativeFileVersionEnumType = Literal["AFTER", "BEFORE"] +ReplacementTypeEnumType = Literal["KEEP_BASE", "KEEP_DESTINATION", "KEEP_SOURCE", "USE_NEW_CONTENT"] +RepositoryTriggerEventEnumType = Literal["all", "createReference", "deleteReference", "updateReference"] +SortByEnumType = Literal["lastModifiedDate", "repositoryName"] +CodeCommitServiceName = Literal["codecommit"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_pull_request_events", + "get_comments_for_compared_commit", + "get_comments_for_pull_request", + "get_differences", + "list_branches", + "list_pull_requests", + "list_repositories",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/codeconnections_classes.py b/aws_resource_validator/pydantic_models/codeconnections_classes.py new file mode 100644 index 00000000..e283364a --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeconnections_classes.py @@ -0,0 +1,352 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codeconnections_constants import * + +class ConnectionTypeDef(BaseModel): + ConnectionName: Optional[str] = None + ConnectionArn: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + OwnerAccountId: Optional[str] = None + ConnectionStatus: Optional[ConnectionStatusType] = None + HostArn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class VpcConfigurationTypeDef(BaseModel): + VpcId: str + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + TlsCertificate: Optional[str] = None + +class RepositoryLinkInfoTypeDef(BaseModel): + ConnectionArn: str + OwnerId: str + ProviderType: ProviderTypeType + RepositoryLinkArn: str + RepositoryLinkId: str + RepositoryName: str + EncryptionKeyArn: Optional[str] = None + +class CreateSyncConfigurationInputRequestTypeDef(BaseModel): + Branch: str + ConfigFile: str + RepositoryLinkId: str + ResourceName: str + RoleArn: str + SyncType: Literal["CFN_STACK_SYNC"] + PublishDeploymentStatus: Optional[PublishDeploymentStatusType] = None + TriggerResourceUpdateOn: Optional[TriggerResourceUpdateOnType] = None + +class SyncConfigurationTypeDef(BaseModel): + Branch: str + OwnerId: str + ProviderType: ProviderTypeType + RepositoryLinkId: str + RepositoryName: str + ResourceName: str + RoleArn: str + SyncType: Literal["CFN_STACK_SYNC"] + ConfigFile: Optional[str] = None + PublishDeploymentStatus: Optional[PublishDeploymentStatusType] = None + TriggerResourceUpdateOn: Optional[TriggerResourceUpdateOnType] = None + +class DeleteConnectionInputRequestTypeDef(BaseModel): + ConnectionArn: str + +class DeleteHostInputRequestTypeDef(BaseModel): + HostArn: str + +class DeleteRepositoryLinkInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + +class DeleteSyncConfigurationInputRequestTypeDef(BaseModel): + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + +class GetConnectionInputRequestTypeDef(BaseModel): + ConnectionArn: str + +class GetHostInputRequestTypeDef(BaseModel): + HostArn: str + +class GetRepositoryLinkInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + +class GetRepositorySyncStatusInputRequestTypeDef(BaseModel): + Branch: str + RepositoryLinkId: str + SyncType: Literal["CFN_STACK_SYNC"] + +class GetResourceSyncStatusInputRequestTypeDef(BaseModel): + ResourceName: str + SyncType: Literal["CFN_STACK_SYNC"] + +class RevisionTypeDef(BaseModel): + Branch: str + Directory: str + OwnerId: str + RepositoryName: str + ProviderType: ProviderTypeType + Sha: str + +class GetSyncBlockerSummaryInputRequestTypeDef(BaseModel): + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + +class GetSyncConfigurationInputRequestTypeDef(BaseModel): + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + +class ListConnectionsInputRequestTypeDef(BaseModel): + ProviderTypeFilter: Optional[ProviderTypeType] = None + HostArnFilter: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHostsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRepositoryLinksInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRepositorySyncDefinitionsInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + SyncType: Literal["CFN_STACK_SYNC"] + +class RepositorySyncDefinitionTypeDef(BaseModel): + Branch: str + Directory: str + Parent: str + Target: str + +class ListSyncConfigurationsInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + SyncType: Literal["CFN_STACK_SYNC"] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class RepositorySyncEventTypeDef(BaseModel): + Event: str + Time: datetime + Type: str + ExternalId: Optional[str] = None + +class ResourceSyncEventTypeDef(BaseModel): + Event: str + Time: datetime + Type: str + ExternalId: Optional[str] = None + +class SyncBlockerContextTypeDef(BaseModel): + Key: str + Value: str + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateRepositoryLinkInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + ConnectionArn: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + +class UpdateSyncBlockerInputRequestTypeDef(BaseModel): + Id: str + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + ResolvedReason: str + +class UpdateSyncConfigurationInputRequestTypeDef(BaseModel): + ResourceName: str + SyncType: Literal["CFN_STACK_SYNC"] + Branch: Optional[str] = None + ConfigFile: Optional[str] = None + RepositoryLinkId: Optional[str] = None + RoleArn: Optional[str] = None + PublishDeploymentStatus: Optional[PublishDeploymentStatusType] = None + TriggerResourceUpdateOn: Optional[TriggerResourceUpdateOnType] = None + +class CreateConnectionInputRequestTypeDef(BaseModel): + ConnectionName: str + ProviderType: Optional[ProviderTypeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + HostArn: Optional[str] = None + +class CreateRepositoryLinkInputRequestTypeDef(BaseModel): + ConnectionArn: str + OwnerId: str + RepositoryName: str + EncryptionKeyArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateConnectionOutputTypeDef(BaseModel): + ConnectionArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHostOutputTypeDef(BaseModel): + HostArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectionOutputTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectionsOutputTypeDef(BaseModel): + Connections: List[ConnectionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHostInputRequestTypeDef(BaseModel): + Name: str + ProviderType: ProviderTypeType + ProviderEndpoint: str + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetHostOutputTypeDef(BaseModel): + Name: str + Status: str + ProviderType: ProviderTypeType + ProviderEndpoint: str + VpcConfiguration: VpcConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HostTypeDef(BaseModel): + Name: Optional[str] = None + HostArn: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + ProviderEndpoint: Optional[str] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + +class UpdateHostInputRequestTypeDef(BaseModel): + HostArn: str + ProviderEndpoint: Optional[str] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + +class CreateRepositoryLinkOutputTypeDef(BaseModel): + RepositoryLinkInfo: RepositoryLinkInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryLinkOutputTypeDef(BaseModel): + RepositoryLinkInfo: RepositoryLinkInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoryLinksOutputTypeDef(BaseModel): + RepositoryLinks: List[RepositoryLinkInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRepositoryLinkOutputTypeDef(BaseModel): + RepositoryLinkInfo: RepositoryLinkInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSyncConfigurationOutputTypeDef(BaseModel): + SyncConfiguration: SyncConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSyncConfigurationOutputTypeDef(BaseModel): + SyncConfiguration: SyncConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSyncConfigurationsOutputTypeDef(BaseModel): + SyncConfigurations: List[SyncConfigurationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSyncConfigurationOutputTypeDef(BaseModel): + SyncConfiguration: SyncConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositorySyncDefinitionsOutputTypeDef(BaseModel): + RepositorySyncDefinitions: List[RepositorySyncDefinitionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RepositorySyncAttemptTypeDef(BaseModel): + StartedAt: datetime + Status: RepositorySyncStatusType + Events: List[RepositorySyncEventTypeDef] + +class ResourceSyncAttemptTypeDef(BaseModel): + Events: List[ResourceSyncEventTypeDef] + InitialRevision: RevisionTypeDef + StartedAt: datetime + Status: ResourceSyncStatusType + TargetRevision: RevisionTypeDef + Target: str + +class SyncBlockerTypeDef(BaseModel): + Id: str + Type: Literal["AUTOMATED"] + Status: BlockerStatusType + CreatedReason: str + CreatedAt: datetime + Contexts: Optional[List[SyncBlockerContextTypeDef]] = None + ResolvedReason: Optional[str] = None + ResolvedAt: Optional[datetime] = None + +class ListHostsOutputTypeDef(BaseModel): + Hosts: List[HostTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositorySyncStatusOutputTypeDef(BaseModel): + LatestSync: RepositorySyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceSyncStatusOutputTypeDef(BaseModel): + DesiredState: RevisionTypeDef + LatestSuccessfulSync: ResourceSyncAttemptTypeDef + LatestSync: ResourceSyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SyncBlockerSummaryTypeDef(BaseModel): + ResourceName: str + ParentResourceName: Optional[str] = None + LatestBlockers: Optional[List[SyncBlockerTypeDef]] = None + +class UpdateSyncBlockerOutputTypeDef(BaseModel): + ResourceName: str + ParentResourceName: str + SyncBlocker: SyncBlockerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSyncBlockerSummaryOutputTypeDef(BaseModel): + SyncBlockerSummary: SyncBlockerSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codeconnections_constants.py b/aws_resource_validator/pydantic_models/codeconnections_constants.py new file mode 100644 index 00000000..c68e2e7d --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeconnections_constants.py @@ -0,0 +1,403 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BlockerStatusType = Literal["ACTIVE", "RESOLVED"] +BlockerTypeType = Literal["AUTOMATED"] +ConnectionStatusType = Literal["AVAILABLE", "ERROR", "PENDING"] +ProviderTypeType = Literal["Bitbucket", "GitHub", "GitHubEnterpriseServer", "GitLab", "GitLabSelfManaged"] +PublishDeploymentStatusType = Literal["DISABLED", "ENABLED"] +RepositorySyncStatusType = Literal["FAILED", "INITIATED", "IN_PROGRESS", "QUEUED", "SUCCEEDED"] +ResourceSyncStatusType = Literal["FAILED", "INITIATED", "IN_PROGRESS", "SUCCEEDED"] +SyncConfigurationTypeType = Literal["CFN_STACK_SYNC"] +TriggerResourceUpdateOnType = Literal["ANY_CHANGE", "FILE_CHANGE"] +CodeConnectionsServiceName = Literal["codeconnections"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/codedeploy_classes.py b/aws_resource_validator/pydantic_models/codedeploy_classes.py new file mode 100644 index 00000000..97d52b6c --- /dev/null +++ b/aws_resource_validator/pydantic_models/codedeploy_classes.py @@ -0,0 +1,857 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codedeploy_constants import * + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class AlarmTypeDef(BaseModel): + name: Optional[str] = None + +class AppSpecContentTypeDef(BaseModel): + content: Optional[str] = None + sha256: Optional[str] = None + +class ApplicationInfoTypeDef(BaseModel): + applicationId: Optional[str] = None + applicationName: Optional[str] = None + createTime: Optional[datetime] = None + linkedToGitHub: Optional[bool] = None + gitHubAccountName: Optional[str] = None + computePlatform: Optional[ComputePlatformType] = None + +class AutoRollbackConfigurationOutputTypeDef(BaseModel): + enabled: Optional[bool] = None + events: Optional[List[AutoRollbackEventType]] = None + +class AutoRollbackConfigurationTypeDef(BaseModel): + enabled: Optional[bool] = None + events: Optional[Sequence[AutoRollbackEventType]] = None + +class AutoScalingGroupTypeDef(BaseModel): + name: Optional[str] = None + hook: Optional[str] = None + terminationHook: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchGetApplicationsInputRequestTypeDef(BaseModel): + applicationNames: Sequence[str] + +class BatchGetDeploymentGroupsInputRequestTypeDef(BaseModel): + applicationName: str + deploymentGroupNames: Sequence[str] + +class BatchGetDeploymentInstancesInputRequestTypeDef(BaseModel): + deploymentId: str + instanceIds: Sequence[str] + +class BatchGetDeploymentTargetsInputRequestTypeDef(BaseModel): + deploymentId: str + targetIds: Sequence[str] + +class BatchGetDeploymentsInputRequestTypeDef(BaseModel): + deploymentIds: Sequence[str] + +class BatchGetOnPremisesInstancesInputRequestTypeDef(BaseModel): + instanceNames: Sequence[str] + +class BlueInstanceTerminationOptionTypeDef(BaseModel): + action: Optional[InstanceActionType] = None + terminationWaitTimeInMinutes: Optional[int] = None + +class DeploymentReadyOptionTypeDef(BaseModel): + actionOnTimeout: Optional[DeploymentReadyActionType] = None + waitTimeInMinutes: Optional[int] = None + +class GreenFleetProvisioningOptionTypeDef(BaseModel): + action: Optional[GreenFleetProvisioningActionType] = None + +class ContinueDeploymentInputRequestTypeDef(BaseModel): + deploymentId: Optional[str] = None + deploymentWaitType: Optional[DeploymentWaitTypeType] = None + +class MinimumHealthyHostsTypeDef(BaseModel): + type: Optional[MinimumHealthyHostsTypeType] = None + value: Optional[int] = None + +class DeploymentStyleTypeDef(BaseModel): + deploymentType: Optional[DeploymentTypeType] = None + deploymentOption: Optional[DeploymentOptionType] = None + +class EC2TagFilterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Type: Optional[EC2TagFilterTypeType] = None + +class ECSServiceTypeDef(BaseModel): + serviceName: Optional[str] = None + clusterName: Optional[str] = None + +class TagFilterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Type: Optional[TagFilterTypeType] = None + +class DeleteApplicationInputRequestTypeDef(BaseModel): + applicationName: str + +class DeleteDeploymentConfigInputRequestTypeDef(BaseModel): + deploymentConfigName: str + +class DeleteDeploymentGroupInputRequestTypeDef(BaseModel): + applicationName: str + deploymentGroupName: str + +class DeleteGitHubAccountTokenInputRequestTypeDef(BaseModel): + tokenName: Optional[str] = None + +class DeleteResourcesByExternalIdInputRequestTypeDef(BaseModel): + externalId: Optional[str] = None + +class LastDeploymentInfoTypeDef(BaseModel): + deploymentId: Optional[str] = None + status: Optional[DeploymentStatusType] = None + endTime: Optional[datetime] = None + createTime: Optional[datetime] = None + +class TriggerConfigOutputTypeDef(BaseModel): + triggerName: Optional[str] = None + triggerTargetArn: Optional[str] = None + triggerEvents: Optional[List[TriggerEventTypeType]] = None + +class DeploymentOverviewTypeDef(BaseModel): + Pending: Optional[int] = None + InProgress: Optional[int] = None + Succeeded: Optional[int] = None + Failed: Optional[int] = None + Skipped: Optional[int] = None + Ready: Optional[int] = None + +class ErrorInformationTypeDef(BaseModel): + code: Optional[ErrorCodeType] = None + message: Optional[str] = None + +class RelatedDeploymentsTypeDef(BaseModel): + autoUpdateOutdatedInstancesRootDeploymentId: Optional[str] = None + autoUpdateOutdatedInstancesDeploymentIds: Optional[List[str]] = None + +class RollbackInfoTypeDef(BaseModel): + rollbackDeploymentId: Optional[str] = None + rollbackTriggeringDeploymentId: Optional[str] = None + rollbackMessage: Optional[str] = None + +class DeregisterOnPremisesInstanceInputRequestTypeDef(BaseModel): + instanceName: str + +class DiagnosticsTypeDef(BaseModel): + errorCode: Optional[LifecycleErrorCodeType] = None + scriptName: Optional[str] = None + message: Optional[str] = None + logTail: Optional[str] = None + +class TargetGroupInfoTypeDef(BaseModel): + name: Optional[str] = None + +class ELBInfoTypeDef(BaseModel): + name: Optional[str] = None + +class GenericRevisionInfoTypeDef(BaseModel): + description: Optional[str] = None + deploymentGroups: Optional[List[str]] = None + firstUsedTime: Optional[datetime] = None + lastUsedTime: Optional[datetime] = None + registerTime: Optional[datetime] = None + +class GetApplicationInputRequestTypeDef(BaseModel): + applicationName: str + +class GetDeploymentConfigInputRequestTypeDef(BaseModel): + deploymentConfigName: str + +class GetDeploymentGroupInputRequestTypeDef(BaseModel): + applicationName: str + deploymentGroupName: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetDeploymentInputRequestTypeDef(BaseModel): + deploymentId: str + +class GetDeploymentInstanceInputRequestTypeDef(BaseModel): + deploymentId: str + instanceId: str + +class GetDeploymentTargetInputRequestTypeDef(BaseModel): + deploymentId: str + targetId: str + +class GetOnPremisesInstanceInputRequestTypeDef(BaseModel): + instanceName: str + +class GitHubLocationTypeDef(BaseModel): + repository: Optional[str] = None + commitId: Optional[str] = None + +class LambdaFunctionInfoTypeDef(BaseModel): + functionName: Optional[str] = None + functionAlias: Optional[str] = None + currentVersion: Optional[str] = None + targetVersion: Optional[str] = None + targetVersionWeight: Optional[float] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationRevisionsInputRequestTypeDef(BaseModel): + applicationName: str + sortBy: Optional[ApplicationRevisionSortByType] = None + sortOrder: Optional[SortOrderType] = None + s3Bucket: Optional[str] = None + s3KeyPrefix: Optional[str] = None + deployed: Optional[ListStateFilterActionType] = None + nextToken: Optional[str] = None + +class ListApplicationsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListDeploymentConfigsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListDeploymentGroupsInputRequestTypeDef(BaseModel): + applicationName: str + nextToken: Optional[str] = None + +class ListDeploymentInstancesInputRequestTypeDef(BaseModel): + deploymentId: str + nextToken: Optional[str] = None + instanceStatusFilter: Optional[Sequence[InstanceStatusType]] = None + instanceTypeFilter: Optional[Sequence[InstanceTypeType]] = None + +class ListDeploymentTargetsInputRequestTypeDef(BaseModel): + deploymentId: str + nextToken: Optional[str] = None + targetFilters: Optional[Mapping[TargetFilterNameType, Sequence[str]]] = None + +class ListGitHubAccountTokenNamesInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + +class MinimumHealthyHostsPerZoneTypeDef(BaseModel): + type: Optional[MinimumHealthyHostsPerZoneTypeType] = None + value: Optional[int] = None + +class PutLifecycleEventHookExecutionStatusInputRequestTypeDef(BaseModel): + deploymentId: Optional[str] = None + lifecycleEventHookExecutionId: Optional[str] = None + status: Optional[LifecycleEventStatusType] = None + +class RawStringTypeDef(BaseModel): + content: Optional[str] = None + sha256: Optional[str] = None + +class RegisterOnPremisesInstanceInputRequestTypeDef(BaseModel): + instanceName: str + iamSessionArn: Optional[str] = None + iamUserArn: Optional[str] = None + +class S3LocationTypeDef(BaseModel): + bucket: Optional[str] = None + key: Optional[str] = None + bundleType: Optional[BundleTypeType] = None + version: Optional[str] = None + eTag: Optional[str] = None + +class SkipWaitTimeForInstanceTerminationInputRequestTypeDef(BaseModel): + deploymentId: Optional[str] = None + +class StopDeploymentInputRequestTypeDef(BaseModel): + deploymentId: str + autoRollbackEnabled: Optional[bool] = None + +class TrafficRouteOutputTypeDef(BaseModel): + listenerArns: Optional[List[str]] = None + +class TrafficRouteTypeDef(BaseModel): + listenerArns: Optional[Sequence[str]] = None + +class TimeBasedCanaryTypeDef(BaseModel): + canaryPercentage: Optional[int] = None + canaryInterval: Optional[int] = None + +class TimeBasedLinearTypeDef(BaseModel): + linearPercentage: Optional[int] = None + linearInterval: Optional[int] = None + +class TriggerConfigTypeDef(BaseModel): + triggerName: Optional[str] = None + triggerTargetArn: Optional[str] = None + triggerEvents: Optional[Sequence[TriggerEventTypeType]] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateApplicationInputRequestTypeDef(BaseModel): + applicationName: Optional[str] = None + newApplicationName: Optional[str] = None + +class AddTagsToOnPremisesInstancesInputRequestTypeDef(BaseModel): + tags: Sequence[TagTypeDef] + instanceNames: Sequence[str] + +class CreateApplicationInputRequestTypeDef(BaseModel): + applicationName: str + computePlatform: Optional[ComputePlatformType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class InstanceInfoTypeDef(BaseModel): + instanceName: Optional[str] = None + iamSessionArn: Optional[str] = None + iamUserArn: Optional[str] = None + instanceArn: Optional[str] = None + registerTime: Optional[datetime] = None + deregisterTime: Optional[datetime] = None + tags: Optional[List[TagTypeDef]] = None + +class RemoveTagsFromOnPremisesInstancesInputRequestTypeDef(BaseModel): + tags: Sequence[TagTypeDef] + instanceNames: Sequence[str] + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class AlarmConfigurationOutputTypeDef(BaseModel): + enabled: Optional[bool] = None + ignorePollAlarmFailure: Optional[bool] = None + alarms: Optional[List[AlarmTypeDef]] = None + +class AlarmConfigurationTypeDef(BaseModel): + enabled: Optional[bool] = None + ignorePollAlarmFailure: Optional[bool] = None + alarms: Optional[Sequence[AlarmTypeDef]] = None + +class BatchGetApplicationsOutputTypeDef(BaseModel): + applicationsInfo: List[ApplicationInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationOutputTypeDef(BaseModel): + applicationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentConfigOutputTypeDef(BaseModel): + deploymentConfigId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentGroupOutputTypeDef(BaseModel): + deploymentGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentOutputTypeDef(BaseModel): + deploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDeploymentGroupOutputTypeDef(BaseModel): + hooksNotCleanedUp: List[AutoScalingGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGitHubAccountTokenOutputTypeDef(BaseModel): + tokenName: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationOutputTypeDef(BaseModel): + application: ApplicationInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsOutputTypeDef(BaseModel): + applications: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentConfigsOutputTypeDef(BaseModel): + deploymentConfigsList: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentGroupsOutputTypeDef(BaseModel): + applicationName: str + deploymentGroups: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentInstancesOutputTypeDef(BaseModel): + instancesList: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentTargetsOutputTypeDef(BaseModel): + targetIds: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentsOutputTypeDef(BaseModel): + deployments: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGitHubAccountTokenNamesOutputTypeDef(BaseModel): + tokenNameList: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOnPremisesInstancesOutputTypeDef(BaseModel): + instanceNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutLifecycleEventHookExecutionStatusOutputTypeDef(BaseModel): + lifecycleEventHookExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopDeploymentOutputTypeDef(BaseModel): + status: StopStatusType + statusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDeploymentGroupOutputTypeDef(BaseModel): + hooksNotCleanedUp: List[AutoScalingGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BlueGreenDeploymentConfigurationTypeDef(BaseModel): + terminateBlueInstancesOnDeploymentSuccess: Optional[ BlueInstanceTerminationOptionTypeDef ] = None + deploymentReadyOption: Optional[DeploymentReadyOptionTypeDef] = None + greenFleetProvisioningOption: Optional[GreenFleetProvisioningOptionTypeDef] = None + +class EC2TagSetOutputTypeDef(BaseModel): + ec2TagSetList: Optional[List[List[EC2TagFilterTypeDef]]] = None + +class EC2TagSetTypeDef(BaseModel): + ec2TagSetList: Optional[Sequence[Sequence[EC2TagFilterTypeDef]]] = None + +class ListOnPremisesInstancesInputRequestTypeDef(BaseModel): + registrationStatus: Optional[RegistrationStatusType] = None + tagFilters: Optional[Sequence[TagFilterTypeDef]] = None + nextToken: Optional[str] = None + +class OnPremisesTagSetOutputTypeDef(BaseModel): + onPremisesTagSetList: Optional[List[List[TagFilterTypeDef]]] = None + +class OnPremisesTagSetTypeDef(BaseModel): + onPremisesTagSetList: Optional[Sequence[Sequence[TagFilterTypeDef]]] = None + +class LifecycleEventTypeDef(BaseModel): + lifecycleEventName: Optional[str] = None + diagnostics: Optional[DiagnosticsTypeDef] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + status: Optional[LifecycleEventStatusType] = None + +class ECSTaskSetTypeDef(BaseModel): + identifer: Optional[str] = None + desiredCount: Optional[int] = None + pendingCount: Optional[int] = None + runningCount: Optional[int] = None + status: Optional[str] = None + trafficWeight: Optional[float] = None + targetGroup: Optional[TargetGroupInfoTypeDef] = None + taskSetLabel: Optional[TargetLabelType] = None + +class GetDeploymentInputDeploymentSuccessfulWaitTypeDef(BaseModel): + deploymentId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ListApplicationRevisionsInputListApplicationRevisionsPaginateTypeDef(BaseModel): + applicationName: str + sortBy: Optional[ApplicationRevisionSortByType] = None + sortOrder: Optional[SortOrderType] = None + s3Bucket: Optional[str] = None + s3KeyPrefix: Optional[str] = None + deployed: Optional[ListStateFilterActionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsInputListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentConfigsInputListDeploymentConfigsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentGroupsInputListDeploymentGroupsPaginateTypeDef(BaseModel): + applicationName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentInstancesInputListDeploymentInstancesPaginateTypeDef(BaseModel): + deploymentId: str + instanceStatusFilter: Optional[Sequence[InstanceStatusType]] = None + instanceTypeFilter: Optional[Sequence[InstanceTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentTargetsInputListDeploymentTargetsPaginateTypeDef(BaseModel): + deploymentId: str + targetFilters: Optional[Mapping[TargetFilterNameType, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGitHubAccountTokenNamesInputListGitHubAccountTokenNamesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOnPremisesInstancesInputListOnPremisesInstancesPaginateTypeDef(BaseModel): + registrationStatus: Optional[RegistrationStatusType] = None + tagFilters: Optional[Sequence[TagFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ZonalConfigTypeDef(BaseModel): + firstZoneMonitorDurationInSeconds: Optional[int] = None + monitorDurationInSeconds: Optional[int] = None + minimumHealthyHostsPerZone: Optional[MinimumHealthyHostsPerZoneTypeDef] = None + +class RevisionLocationTypeDef(BaseModel): + revisionType: Optional[RevisionLocationTypeType] = None + s3Location: Optional[S3LocationTypeDef] = None + gitHubLocation: Optional[GitHubLocationTypeDef] = None + string: Optional[RawStringTypeDef] = None + appSpecContent: Optional[AppSpecContentTypeDef] = None + +class TargetGroupPairInfoOutputTypeDef(BaseModel): + targetGroups: Optional[List[TargetGroupInfoTypeDef]] = None + prodTrafficRoute: Optional[TrafficRouteOutputTypeDef] = None + testTrafficRoute: Optional[TrafficRouteOutputTypeDef] = None + +class TargetGroupPairInfoTypeDef(BaseModel): + targetGroups: Optional[Sequence[TargetGroupInfoTypeDef]] = None + prodTrafficRoute: Optional[TrafficRouteTypeDef] = None + testTrafficRoute: Optional[TrafficRouteTypeDef] = None + +class TrafficRoutingConfigTypeDef(BaseModel): + type: Optional[TrafficRoutingTypeType] = None + timeBasedCanary: Optional[TimeBasedCanaryTypeDef] = None + timeBasedLinear: Optional[TimeBasedLinearTypeDef] = None + +class TimeRangeTypeDef(BaseModel): + start: Optional[TimestampTypeDef] = None + end: Optional[TimestampTypeDef] = None + +class BatchGetOnPremisesInstancesOutputTypeDef(BaseModel): + instanceInfos: List[InstanceInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetOnPremisesInstanceOutputTypeDef(BaseModel): + instanceInfo: InstanceInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TargetInstancesOutputTypeDef(BaseModel): + tagFilters: Optional[List[EC2TagFilterTypeDef]] = None + autoScalingGroups: Optional[List[str]] = None + ec2TagSet: Optional[EC2TagSetOutputTypeDef] = None + +class TargetInstancesTypeDef(BaseModel): + tagFilters: Optional[Sequence[EC2TagFilterTypeDef]] = None + autoScalingGroups: Optional[Sequence[str]] = None + ec2TagSet: Optional[EC2TagSetTypeDef] = None + +class CloudFormationTargetTypeDef(BaseModel): + deploymentId: Optional[str] = None + targetId: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleEvents: Optional[List[LifecycleEventTypeDef]] = None + status: Optional[TargetStatusType] = None + resourceType: Optional[str] = None + targetVersionWeight: Optional[float] = None + +class InstanceSummaryTypeDef(BaseModel): + deploymentId: Optional[str] = None + instanceId: Optional[str] = None + status: Optional[InstanceStatusType] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleEvents: Optional[List[LifecycleEventTypeDef]] = None + instanceType: Optional[InstanceTypeType] = None + +class InstanceTargetTypeDef(BaseModel): + deploymentId: Optional[str] = None + targetId: Optional[str] = None + targetArn: Optional[str] = None + status: Optional[TargetStatusType] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleEvents: Optional[List[LifecycleEventTypeDef]] = None + instanceLabel: Optional[TargetLabelType] = None + +class LambdaTargetTypeDef(BaseModel): + deploymentId: Optional[str] = None + targetId: Optional[str] = None + targetArn: Optional[str] = None + status: Optional[TargetStatusType] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleEvents: Optional[List[LifecycleEventTypeDef]] = None + lambdaFunctionInfo: Optional[LambdaFunctionInfoTypeDef] = None + +class ECSTargetTypeDef(BaseModel): + deploymentId: Optional[str] = None + targetId: Optional[str] = None + targetArn: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleEvents: Optional[List[LifecycleEventTypeDef]] = None + status: Optional[TargetStatusType] = None + taskSetsInfo: Optional[List[ECSTaskSetTypeDef]] = None + +class BatchGetApplicationRevisionsInputRequestTypeDef(BaseModel): + applicationName: str + revisions: Sequence[RevisionLocationTypeDef] + +class GetApplicationRevisionInputRequestTypeDef(BaseModel): + applicationName: str + revision: RevisionLocationTypeDef + +class GetApplicationRevisionOutputTypeDef(BaseModel): + applicationName: str + revision: RevisionLocationTypeDef + revisionInfo: GenericRevisionInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationRevisionsOutputTypeDef(BaseModel): + revisions: List[RevisionLocationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterApplicationRevisionInputRequestTypeDef(BaseModel): + applicationName: str + revision: RevisionLocationTypeDef + description: Optional[str] = None + +class RevisionInfoTypeDef(BaseModel): + revisionLocation: Optional[RevisionLocationTypeDef] = None + genericRevisionInfo: Optional[GenericRevisionInfoTypeDef] = None + +class LoadBalancerInfoOutputTypeDef(BaseModel): + elbInfoList: Optional[List[ELBInfoTypeDef]] = None + targetGroupInfoList: Optional[List[TargetGroupInfoTypeDef]] = None + targetGroupPairInfoList: Optional[List[TargetGroupPairInfoOutputTypeDef]] = None + +class LoadBalancerInfoTypeDef(BaseModel): + elbInfoList: Optional[Sequence[ELBInfoTypeDef]] = None + targetGroupInfoList: Optional[Sequence[TargetGroupInfoTypeDef]] = None + targetGroupPairInfoList: Optional[Sequence[TargetGroupPairInfoTypeDef]] = None + +class CreateDeploymentConfigInputRequestTypeDef(BaseModel): + deploymentConfigName: str + minimumHealthyHosts: Optional[MinimumHealthyHostsTypeDef] = None + trafficRoutingConfig: Optional[TrafficRoutingConfigTypeDef] = None + computePlatform: Optional[ComputePlatformType] = None + zonalConfig: Optional[ZonalConfigTypeDef] = None + +class DeploymentConfigInfoTypeDef(BaseModel): + deploymentConfigId: Optional[str] = None + deploymentConfigName: Optional[str] = None + minimumHealthyHosts: Optional[MinimumHealthyHostsTypeDef] = None + createTime: Optional[datetime] = None + computePlatform: Optional[ComputePlatformType] = None + trafficRoutingConfig: Optional[TrafficRoutingConfigTypeDef] = None + zonalConfig: Optional[ZonalConfigTypeDef] = None + +class ListDeploymentsInputListDeploymentsPaginateTypeDef(BaseModel): + applicationName: Optional[str] = None + deploymentGroupName: Optional[str] = None + externalId: Optional[str] = None + includeOnlyStatuses: Optional[Sequence[DeploymentStatusType]] = None + createTimeRange: Optional[TimeRangeTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsInputRequestTypeDef(BaseModel): + applicationName: Optional[str] = None + deploymentGroupName: Optional[str] = None + externalId: Optional[str] = None + includeOnlyStatuses: Optional[Sequence[DeploymentStatusType]] = None + createTimeRange: Optional[TimeRangeTypeDef] = None + nextToken: Optional[str] = None + +class CreateDeploymentInputRequestTypeDef(BaseModel): + applicationName: str + deploymentGroupName: Optional[str] = None + revision: Optional[RevisionLocationTypeDef] = None + deploymentConfigName: Optional[str] = None + description: Optional[str] = None + ignoreApplicationStopFailures: Optional[bool] = None + targetInstances: Optional[TargetInstancesTypeDef] = None + autoRollbackConfiguration: Optional[AutoRollbackConfigurationTypeDef] = None + updateOutdatedInstancesOnly: Optional[bool] = None + fileExistsBehavior: Optional[FileExistsBehaviorType] = None + overrideAlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class BatchGetDeploymentInstancesOutputTypeDef(BaseModel): + instancesSummary: List[InstanceSummaryTypeDef] + errorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentInstanceOutputTypeDef(BaseModel): + instanceSummary: InstanceSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentTargetTypeDef(BaseModel): + deploymentTargetType: Optional[DeploymentTargetTypeType] = None + instanceTarget: Optional[InstanceTargetTypeDef] = None + lambdaTarget: Optional[LambdaTargetTypeDef] = None + ecsTarget: Optional[ECSTargetTypeDef] = None + cloudFormationTarget: Optional[CloudFormationTargetTypeDef] = None + +class BatchGetApplicationRevisionsOutputTypeDef(BaseModel): + applicationName: str + errorMessage: str + revisions: List[RevisionInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentGroupInfoTypeDef(BaseModel): + applicationName: Optional[str] = None + deploymentGroupId: Optional[str] = None + deploymentGroupName: Optional[str] = None + deploymentConfigName: Optional[str] = None + ec2TagFilters: Optional[List[EC2TagFilterTypeDef]] = None + onPremisesInstanceTagFilters: Optional[List[TagFilterTypeDef]] = None + autoScalingGroups: Optional[List[AutoScalingGroupTypeDef]] = None + serviceRoleArn: Optional[str] = None + targetRevision: Optional[RevisionLocationTypeDef] = None + triggerConfigurations: Optional[List[TriggerConfigOutputTypeDef]] = None + alarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + autoRollbackConfiguration: Optional[AutoRollbackConfigurationOutputTypeDef] = None + deploymentStyle: Optional[DeploymentStyleTypeDef] = None + outdatedInstancesStrategy: Optional[OutdatedInstancesStrategyType] = None + blueGreenDeploymentConfiguration: Optional[BlueGreenDeploymentConfigurationTypeDef] = None + loadBalancerInfo: Optional[LoadBalancerInfoOutputTypeDef] = None + lastSuccessfulDeployment: Optional[LastDeploymentInfoTypeDef] = None + lastAttemptedDeployment: Optional[LastDeploymentInfoTypeDef] = None + ec2TagSet: Optional[EC2TagSetOutputTypeDef] = None + onPremisesTagSet: Optional[OnPremisesTagSetOutputTypeDef] = None + computePlatform: Optional[ComputePlatformType] = None + ecsServices: Optional[List[ECSServiceTypeDef]] = None + terminationHookEnabled: Optional[bool] = None + +class DeploymentInfoTypeDef(BaseModel): + applicationName: Optional[str] = None + deploymentGroupName: Optional[str] = None + deploymentConfigName: Optional[str] = None + deploymentId: Optional[str] = None + previousRevision: Optional[RevisionLocationTypeDef] = None + revision: Optional[RevisionLocationTypeDef] = None + status: Optional[DeploymentStatusType] = None + errorInformation: Optional[ErrorInformationTypeDef] = None + createTime: Optional[datetime] = None + startTime: Optional[datetime] = None + completeTime: Optional[datetime] = None + deploymentOverview: Optional[DeploymentOverviewTypeDef] = None + description: Optional[str] = None + creator: Optional[DeploymentCreatorType] = None + ignoreApplicationStopFailures: Optional[bool] = None + autoRollbackConfiguration: Optional[AutoRollbackConfigurationOutputTypeDef] = None + updateOutdatedInstancesOnly: Optional[bool] = None + rollbackInfo: Optional[RollbackInfoTypeDef] = None + deploymentStyle: Optional[DeploymentStyleTypeDef] = None + targetInstances: Optional[TargetInstancesOutputTypeDef] = None + instanceTerminationWaitTimeStarted: Optional[bool] = None + blueGreenDeploymentConfiguration: Optional[BlueGreenDeploymentConfigurationTypeDef] = None + loadBalancerInfo: Optional[LoadBalancerInfoOutputTypeDef] = None + additionalDeploymentStatusInfo: Optional[str] = None + fileExistsBehavior: Optional[FileExistsBehaviorType] = None + deploymentStatusMessages: Optional[List[str]] = None + computePlatform: Optional[ComputePlatformType] = None + externalId: Optional[str] = None + relatedDeployments: Optional[RelatedDeploymentsTypeDef] = None + overrideAlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + +class CreateDeploymentGroupInputRequestTypeDef(BaseModel): + applicationName: str + deploymentGroupName: str + serviceRoleArn: str + deploymentConfigName: Optional[str] = None + ec2TagFilters: Optional[Sequence[EC2TagFilterTypeDef]] = None + onPremisesInstanceTagFilters: Optional[Sequence[TagFilterTypeDef]] = None + autoScalingGroups: Optional[Sequence[str]] = None + triggerConfigurations: Optional[Sequence[TriggerConfigUnionTypeDef]] = None + alarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + autoRollbackConfiguration: Optional[AutoRollbackConfigurationTypeDef] = None + outdatedInstancesStrategy: Optional[OutdatedInstancesStrategyType] = None + deploymentStyle: Optional[DeploymentStyleTypeDef] = None + blueGreenDeploymentConfiguration: Optional[BlueGreenDeploymentConfigurationTypeDef] = None + loadBalancerInfo: Optional[LoadBalancerInfoTypeDef] = None + ec2TagSet: Optional[EC2TagSetTypeDef] = None + ecsServices: Optional[Sequence[ECSServiceTypeDef]] = None + onPremisesTagSet: Optional[OnPremisesTagSetTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + terminationHookEnabled: Optional[bool] = None + +class UpdateDeploymentGroupInputRequestTypeDef(BaseModel): + applicationName: str + currentDeploymentGroupName: str + newDeploymentGroupName: Optional[str] = None + deploymentConfigName: Optional[str] = None + ec2TagFilters: Optional[Sequence[EC2TagFilterTypeDef]] = None + onPremisesInstanceTagFilters: Optional[Sequence[TagFilterTypeDef]] = None + autoScalingGroups: Optional[Sequence[str]] = None + serviceRoleArn: Optional[str] = None + triggerConfigurations: Optional[Sequence[TriggerConfigUnionTypeDef]] = None + alarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + autoRollbackConfiguration: Optional[AutoRollbackConfigurationTypeDef] = None + outdatedInstancesStrategy: Optional[OutdatedInstancesStrategyType] = None + deploymentStyle: Optional[DeploymentStyleTypeDef] = None + blueGreenDeploymentConfiguration: Optional[BlueGreenDeploymentConfigurationTypeDef] = None + loadBalancerInfo: Optional[LoadBalancerInfoTypeDef] = None + ec2TagSet: Optional[EC2TagSetTypeDef] = None + ecsServices: Optional[Sequence[ECSServiceTypeDef]] = None + onPremisesTagSet: Optional[OnPremisesTagSetTypeDef] = None + terminationHookEnabled: Optional[bool] = None + +class GetDeploymentConfigOutputTypeDef(BaseModel): + deploymentConfigInfo: DeploymentConfigInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetDeploymentTargetsOutputTypeDef(BaseModel): + deploymentTargets: List[DeploymentTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentTargetOutputTypeDef(BaseModel): + deploymentTarget: DeploymentTargetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetDeploymentGroupsOutputTypeDef(BaseModel): + deploymentGroupsInfo: List[DeploymentGroupInfoTypeDef] + errorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentGroupOutputTypeDef(BaseModel): + deploymentGroupInfo: DeploymentGroupInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetDeploymentsOutputTypeDef(BaseModel): + deploymentsInfo: List[DeploymentInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentOutputTypeDef(BaseModel): + deploymentInfo: DeploymentInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codedeploy_constants.py b/aws_resource_validator/pydantic_models/codedeploy_constants.py new file mode 100644 index 00000000..0654b263 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codedeploy_constants.py @@ -0,0 +1,545 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationRevisionSortByType = Literal["firstUsedTime", "lastUsedTime", "registerTime"] +AutoRollbackEventType = Literal["DEPLOYMENT_FAILURE", "DEPLOYMENT_STOP_ON_ALARM", "DEPLOYMENT_STOP_ON_REQUEST"] +BundleTypeType = Literal["JSON", "YAML", "tar", "tgz", "zip"] +ComputePlatformType = Literal["ECS", "Lambda", "Server"] +DeploymentCreatorType = Literal["CloudFormation", + "CloudFormationRollback", + "CodeDeploy", + "CodeDeployAutoUpdate", + "autoscaling", + "autoscalingTermination", + "codeDeployRollback", + "user",] +DeploymentOptionType = Literal["WITHOUT_TRAFFIC_CONTROL", "WITH_TRAFFIC_CONTROL"] +DeploymentReadyActionType = Literal["CONTINUE_DEPLOYMENT", "STOP_DEPLOYMENT"] +DeploymentStatusType = Literal["Baking", "Created", "Failed", "InProgress", "Queued", "Ready", "Stopped", "Succeeded"] +DeploymentSuccessfulWaiterName = Literal["deployment_successful"] +DeploymentTargetTypeType = Literal["CloudFormationTarget", "ECSTarget", "InstanceTarget", "LambdaTarget"] +DeploymentTypeType = Literal["BLUE_GREEN", "IN_PLACE"] +DeploymentWaitTypeType = Literal["READY_WAIT", "TERMINATION_WAIT"] +EC2TagFilterTypeType = Literal["KEY_AND_VALUE", "KEY_ONLY", "VALUE_ONLY"] +ErrorCodeType = Literal["AGENT_ISSUE", + "ALARM_ACTIVE", + "APPLICATION_MISSING", + "AUTOSCALING_VALIDATION_ERROR", + "AUTO_SCALING_CONFIGURATION", + "AUTO_SCALING_IAM_ROLE_PERMISSIONS", + "CLOUDFORMATION_STACK_FAILURE", + "CODEDEPLOY_RESOURCE_CANNOT_BE_FOUND", + "CUSTOMER_APPLICATION_UNHEALTHY", + "DEPLOYMENT_GROUP_MISSING", + "ECS_UPDATE_ERROR", + "ELASTIC_LOAD_BALANCING_INVALID", + "ELB_INVALID_INSTANCE", + "HEALTH_CONSTRAINTS", + "HEALTH_CONSTRAINTS_INVALID", + "HOOK_EXECUTION_FAILURE", + "IAM_ROLE_MISSING", + "IAM_ROLE_PERMISSIONS", + "INTERNAL_ERROR", + "INVALID_ECS_SERVICE", + "INVALID_LAMBDA_CONFIGURATION", + "INVALID_LAMBDA_FUNCTION", + "INVALID_REVISION", + "MANUAL_STOP", + "MISSING_BLUE_GREEN_DEPLOYMENT_CONFIGURATION", + "MISSING_ELB_INFORMATION", + "MISSING_GITHUB_TOKEN", + "NO_EC2_SUBSCRIPTION", + "NO_INSTANCES", + "OVER_MAX_INSTANCES", + "RESOURCE_LIMIT_EXCEEDED", + "REVISION_MISSING", + "THROTTLED", + "TIMEOUT",] +FileExistsBehaviorType = Literal["DISALLOW", "OVERWRITE", "RETAIN"] +GreenFleetProvisioningActionType = Literal["COPY_AUTO_SCALING_GROUP", "DISCOVER_EXISTING"] +InstanceActionType = Literal["KEEP_ALIVE", "TERMINATE"] +InstanceStatusType = Literal["Failed", "InProgress", "Pending", "Ready", "Skipped", "Succeeded", "Unknown"] +InstanceTypeType = Literal["Blue", "Green"] +LifecycleErrorCodeType = Literal["ScriptFailed", + "ScriptMissing", + "ScriptNotExecutable", + "ScriptTimedOut", + "Success", + "UnknownError",] +LifecycleEventStatusType = Literal["Failed", "InProgress", "Pending", "Skipped", "Succeeded", "Unknown"] +ListApplicationRevisionsPaginatorName = Literal["list_application_revisions"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListDeploymentConfigsPaginatorName = Literal["list_deployment_configs"] +ListDeploymentGroupsPaginatorName = Literal["list_deployment_groups"] +ListDeploymentInstancesPaginatorName = Literal["list_deployment_instances"] +ListDeploymentTargetsPaginatorName = Literal["list_deployment_targets"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListGitHubAccountTokenNamesPaginatorName = Literal["list_git_hub_account_token_names"] +ListOnPremisesInstancesPaginatorName = Literal["list_on_premises_instances"] +ListStateFilterActionType = Literal["exclude", "ignore", "include"] +MinimumHealthyHostsPerZoneTypeType = Literal["FLEET_PERCENT", "HOST_COUNT"] +MinimumHealthyHostsTypeType = Literal["FLEET_PERCENT", "HOST_COUNT"] +OutdatedInstancesStrategyType = Literal["IGNORE", "UPDATE"] +RegistrationStatusType = Literal["Deregistered", "Registered"] +RevisionLocationTypeType = Literal["AppSpecContent", "GitHub", "S3", "String"] +SortOrderType = Literal["ascending", "descending"] +StopStatusType = Literal["Pending", "Succeeded"] +TagFilterTypeType = Literal["KEY_AND_VALUE", "KEY_ONLY", "VALUE_ONLY"] +TargetFilterNameType = Literal["ServerInstanceLabel", "TargetStatus"] +TargetLabelType = Literal["Blue", "Green"] +TargetStatusType = Literal["Failed", "InProgress", "Pending", "Ready", "Skipped", "Succeeded", "Unknown"] +TrafficRoutingTypeType = Literal["AllAtOnce", "TimeBasedCanary", "TimeBasedLinear"] +TriggerEventTypeType = Literal["DeploymentFailure", + "DeploymentReady", + "DeploymentRollback", + "DeploymentStart", + "DeploymentStop", + "DeploymentSuccess", + "InstanceFailure", + "InstanceReady", + "InstanceStart", + "InstanceSuccess",] +CodeDeployServiceName = Literal["codedeploy"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_application_revisions", + "list_applications", + "list_deployment_configs", + "list_deployment_groups", + "list_deployment_instances", + "list_deployment_targets", + "list_deployments", + "list_git_hub_account_token_names", + "list_on_premises_instances",] +WaiterName = Literal["deployment_successful"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AutoRollbackConfigurationUnionTypeDef = Union[ 'AutoRollbackConfigurationTypeDef', 'AutoRollbackConfigurationOutputTypeDef' ] +TriggerConfigUnionTypeDef = Union['TriggerConfigTypeDef', 'TriggerConfigOutputTypeDef'] +AlarmConfigurationUnionTypeDef = Union['AlarmConfigurationTypeDef', 'AlarmConfigurationOutputTypeDef'] +EC2TagSetUnionTypeDef = Union['EC2TagSetTypeDef', 'EC2TagSetOutputTypeDef'] +OnPremisesTagSetUnionTypeDef = Union['OnPremisesTagSetTypeDef', 'OnPremisesTagSetOutputTypeDef'] +TargetInstancesUnionTypeDef = Union['TargetInstancesTypeDef', 'TargetInstancesOutputTypeDef'] +LoadBalancerInfoUnionTypeDef = Union['LoadBalancerInfoTypeDef', 'LoadBalancerInfoOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/codeguru_reviewer_classes.py b/aws_resource_validator/pydantic_models/codeguru_reviewer_classes.py new file mode 100644 index 00000000..d3be205c --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeguru_reviewer_classes.py @@ -0,0 +1,332 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codeguru_reviewer_constants import * + +class KMSKeyDetailsTypeDef(BaseModel): + KMSKeyId: Optional[str] = None + EncryptionOption: Optional[EncryptionOptionType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BranchDiffSourceCodeTypeTypeDef(BaseModel): + SourceBranchName: str + DestinationBranchName: str + +class CodeArtifactsTypeDef(BaseModel): + SourceCodeArtifactsObjectKey: str + BuildArtifactsObjectKey: Optional[str] = None + +class CodeCommitRepositoryTypeDef(BaseModel): + Name: str + +class MetricsSummaryTypeDef(BaseModel): + MeteredLinesOfCodeCount: Optional[int] = None + SuppressedLinesOfCodeCount: Optional[int] = None + FindingsCount: Optional[int] = None + +class MetricsTypeDef(BaseModel): + MeteredLinesOfCodeCount: Optional[int] = None + SuppressedLinesOfCodeCount: Optional[int] = None + FindingsCount: Optional[int] = None + +class CommitDiffSourceCodeTypeTypeDef(BaseModel): + SourceCommit: Optional[str] = None + DestinationCommit: Optional[str] = None + MergeBaseCommit: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeCodeReviewRequestRequestTypeDef(BaseModel): + CodeReviewArn: str + +class DescribeRecommendationFeedbackRequestRequestTypeDef(BaseModel): + CodeReviewArn: str + RecommendationId: str + UserId: Optional[str] = None + +class RecommendationFeedbackTypeDef(BaseModel): + CodeReviewArn: Optional[str] = None + RecommendationId: Optional[str] = None + Reactions: Optional[List[ReactionType]] = None + UserId: Optional[str] = None + CreatedTimeStamp: Optional[datetime] = None + LastUpdatedTimeStamp: Optional[datetime] = None + +class DescribeRepositoryAssociationRequestRequestTypeDef(BaseModel): + AssociationArn: str + +class DisassociateRepositoryRequestRequestTypeDef(BaseModel): + AssociationArn: str + +class EventInfoTypeDef(BaseModel): + Name: Optional[str] = None + State: Optional[str] = None + +class ListCodeReviewsRequestRequestTypeDef(BaseModel): + Type: TypeType + ProviderTypes: Optional[Sequence[ProviderTypeType]] = None + States: Optional[Sequence[JobStateType]] = None + RepositoryNames: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRecommendationFeedbackRequestRequestTypeDef(BaseModel): + CodeReviewArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + UserIds: Optional[Sequence[str]] = None + RecommendationIds: Optional[Sequence[str]] = None + +class RecommendationFeedbackSummaryTypeDef(BaseModel): + RecommendationId: Optional[str] = None + Reactions: Optional[List[ReactionType]] = None + UserId: Optional[str] = None + +class ListRecommendationsRequestRequestTypeDef(BaseModel): + CodeReviewArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRepositoryAssociationsRequestRequestTypeDef(BaseModel): + ProviderTypes: Optional[Sequence[ProviderTypeType]] = None + States: Optional[Sequence[RepositoryAssociationStateType]] = None + Names: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RepositoryAssociationSummaryTypeDef(BaseModel): + AssociationArn: Optional[str] = None + ConnectionArn: Optional[str] = None + LastUpdatedTimeStamp: Optional[datetime] = None + AssociationId: Optional[str] = None + Name: Optional[str] = None + Owner: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + State: Optional[RepositoryAssociationStateType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PutRecommendationFeedbackRequestRequestTypeDef(BaseModel): + CodeReviewArn: str + RecommendationId: str + Reactions: Sequence[ReactionType] + +class RuleMetadataTypeDef(BaseModel): + RuleId: Optional[str] = None + RuleName: Optional[str] = None + ShortDescription: Optional[str] = None + LongDescription: Optional[str] = None + RuleTags: Optional[List[str]] = None + +class RepositoryHeadSourceCodeTypeTypeDef(BaseModel): + BranchName: str + +class S3RepositoryTypeDef(BaseModel): + Name: str + BucketName: str + +class ThirdPartySourceRepositoryTypeDef(BaseModel): + Name: str + ConnectionArn: str + Owner: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + TagKeys: Sequence[str] + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class S3RepositoryDetailsTypeDef(BaseModel): + BucketName: Optional[str] = None + CodeArtifacts: Optional[CodeArtifactsTypeDef] = None + +class DescribeCodeReviewRequestCodeReviewCompletedWaitTypeDef(BaseModel): + CodeReviewArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeRepositoryAssociationRequestRepositoryAssociationSucceededWaitTypeDef(BaseModel): + AssociationArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeRecommendationFeedbackResponseTypeDef(BaseModel): + RecommendationFeedback: RecommendationFeedbackTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RequestMetadataTypeDef(BaseModel): + RequestId: Optional[str] = None + Requester: Optional[str] = None + EventInfo: Optional[EventInfoTypeDef] = None + VendorName: Optional[VendorNameType] = None + +class ListRecommendationFeedbackResponseTypeDef(BaseModel): + RecommendationFeedbackSummaries: List[RecommendationFeedbackSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoryAssociationsRequestListRepositoryAssociationsPaginateTypeDef(BaseModel): + ProviderTypes: Optional[Sequence[ProviderTypeType]] = None + States: Optional[Sequence[RepositoryAssociationStateType]] = None + Names: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRepositoryAssociationsResponseTypeDef(BaseModel): + RepositoryAssociationSummaries: List[RepositoryAssociationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationSummaryTypeDef(BaseModel): + FilePath: Optional[str] = None + RecommendationId: Optional[str] = None + StartLine: Optional[int] = None + EndLine: Optional[int] = None + Description: Optional[str] = None + RecommendationCategory: Optional[RecommendationCategoryType] = None + RuleMetadata: Optional[RuleMetadataTypeDef] = None + Severity: Optional[SeverityType] = None + +class RepositoryTypeDef(BaseModel): + CodeCommit: Optional[CodeCommitRepositoryTypeDef] = None + Bitbucket: Optional[ThirdPartySourceRepositoryTypeDef] = None + GitHubEnterpriseServer: Optional[ThirdPartySourceRepositoryTypeDef] = None + S3Bucket: Optional[S3RepositoryTypeDef] = None + +class RepositoryAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + AssociationArn: Optional[str] = None + ConnectionArn: Optional[str] = None + Name: Optional[str] = None + Owner: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + State: Optional[RepositoryAssociationStateType] = None + StateReason: Optional[str] = None + LastUpdatedTimeStamp: Optional[datetime] = None + CreatedTimeStamp: Optional[datetime] = None + KMSKeyDetails: Optional[KMSKeyDetailsTypeDef] = None + S3RepositoryDetails: Optional[S3RepositoryDetailsTypeDef] = None + +class S3BucketRepositoryTypeDef(BaseModel): + Name: str + Details: Optional[S3RepositoryDetailsTypeDef] = None + +class ListRecommendationsResponseTypeDef(BaseModel): + RecommendationSummaries: List[RecommendationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateRepositoryRequestRequestTypeDef(BaseModel): + Repository: RepositoryTypeDef + ClientRequestToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + KMSKeyDetails: Optional[KMSKeyDetailsTypeDef] = None + +class AssociateRepositoryResponseTypeDef(BaseModel): + RepositoryAssociation: RepositoryAssociationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRepositoryAssociationResponseTypeDef(BaseModel): + RepositoryAssociation: RepositoryAssociationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateRepositoryResponseTypeDef(BaseModel): + RepositoryAssociation: RepositoryAssociationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SourceCodeTypeTypeDef(BaseModel): + CommitDiff: Optional[CommitDiffSourceCodeTypeTypeDef] = None + RepositoryHead: Optional[RepositoryHeadSourceCodeTypeTypeDef] = None + BranchDiff: Optional[BranchDiffSourceCodeTypeTypeDef] = None + S3BucketRepository: Optional[S3BucketRepositoryTypeDef] = None + RequestMetadata: Optional[RequestMetadataTypeDef] = None + +class CodeReviewSummaryTypeDef(BaseModel): + Name: Optional[str] = None + CodeReviewArn: Optional[str] = None + RepositoryName: Optional[str] = None + Owner: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + State: Optional[JobStateType] = None + CreatedTimeStamp: Optional[datetime] = None + LastUpdatedTimeStamp: Optional[datetime] = None + Type: Optional[TypeType] = None + PullRequestId: Optional[str] = None + MetricsSummary: Optional[MetricsSummaryTypeDef] = None + SourceCodeType: Optional[SourceCodeTypeTypeDef] = None + +class CodeReviewTypeDef(BaseModel): + Name: Optional[str] = None + CodeReviewArn: Optional[str] = None + RepositoryName: Optional[str] = None + Owner: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + State: Optional[JobStateType] = None + StateReason: Optional[str] = None + CreatedTimeStamp: Optional[datetime] = None + LastUpdatedTimeStamp: Optional[datetime] = None + Type: Optional[TypeType] = None + PullRequestId: Optional[str] = None + SourceCodeType: Optional[SourceCodeTypeTypeDef] = None + AssociationArn: Optional[str] = None + Metrics: Optional[MetricsTypeDef] = None + AnalysisTypes: Optional[List[AnalysisTypeType]] = None + ConfigFileState: Optional[ConfigFileStateType] = None + +class RepositoryAnalysisTypeDef(BaseModel): + RepositoryHead: Optional[RepositoryHeadSourceCodeTypeTypeDef] = None + SourceCodeType: Optional[SourceCodeTypeTypeDef] = None + +class ListCodeReviewsResponseTypeDef(BaseModel): + CodeReviewSummaries: List[CodeReviewSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCodeReviewResponseTypeDef(BaseModel): + CodeReview: CodeReviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCodeReviewResponseTypeDef(BaseModel): + CodeReview: CodeReviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CodeReviewTypeTypeDef(BaseModel): + RepositoryAnalysis: RepositoryAnalysisTypeDef + AnalysisTypes: Optional[Sequence[AnalysisTypeType]] = None + +class CreateCodeReviewRequestRequestTypeDef(BaseModel): + Name: str + RepositoryAssociationArn: str + Type: CodeReviewTypeTypeDef + ClientRequestToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/codeguru_reviewer_constants.py b/aws_resource_validator/pydantic_models/codeguru_reviewer_constants.py new file mode 100644 index 00000000..dfbd3915 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeguru_reviewer_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnalysisTypeType = Literal["CodeQuality", "Security"] +CodeReviewCompletedWaiterName = Literal["code_review_completed"] +ConfigFileStateType = Literal["Absent", "Present", "PresentWithErrors"] +EncryptionOptionType = Literal["AWS_OWNED_CMK", "CUSTOMER_MANAGED_CMK"] +JobStateType = Literal["Completed", "Deleting", "Failed", "Pending"] +ListRepositoryAssociationsPaginatorName = Literal["list_repository_associations"] +ProviderTypeType = Literal["Bitbucket", "CodeCommit", "GitHub", "GitHubEnterpriseServer", "S3Bucket"] +ReactionType = Literal["ThumbsDown", "ThumbsUp"] +RecommendationCategoryType = Literal["AWSBestPractices", + "AWSCloudFormationIssues", + "CodeInconsistencies", + "CodeMaintenanceIssues", + "ConcurrencyIssues", + "DuplicateCode", + "InputValidations", + "JavaBestPractices", + "PythonBestPractices", + "ResourceLeaks", + "SecurityIssues",] +RepositoryAssociationStateType = Literal["Associated", "Associating", "Disassociated", "Disassociating", "Failed"] +RepositoryAssociationSucceededWaiterName = Literal["repository_association_succeeded"] +SeverityType = Literal["Critical", "High", "Info", "Low", "Medium"] +TypeType = Literal["PullRequest", "RepositoryAnalysis"] +VendorNameType = Literal["GitHub", "GitLab", "NativeS3"] +CodeGuruReviewerServiceName = Literal["codeguru-reviewer"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_repository_associations"] +WaiterName = Literal["code_review_completed", "repository_association_succeeded"] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/codeguru_security_classes.py b/aws_resource_validator/pydantic_models/codeguru_security_classes.py new file mode 100644 index 00000000..b51a340c --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeguru_security_classes.py @@ -0,0 +1,256 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codeguru_security_constants import * + +class FindingMetricsValuePerSeverityTypeDef(BaseModel): + critical: Optional[float] = None + high: Optional[float] = None + info: Optional[float] = None + low: Optional[float] = None + medium: Optional[float] = None + +class BatchGetFindingsErrorTypeDef(BaseModel): + errorCode: ErrorCodeType + findingId: str + message: str + scanName: str + +class FindingIdentifierTypeDef(BaseModel): + findingId: str + scanName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CategoryWithFindingNumTypeDef(BaseModel): + categoryName: Optional[str] = None + findingNumber: Optional[int] = None + +class CodeLineTypeDef(BaseModel): + content: Optional[str] = None + number: Optional[int] = None + +class ResourceIdTypeDef(BaseModel): + codeArtifactId: Optional[str] = None + +class CreateUploadUrlRequestRequestTypeDef(BaseModel): + scanName: str + +class EncryptionConfigTypeDef(BaseModel): + kmsKeyArn: Optional[str] = None + +class ResourceTypeDef(BaseModel): + id: Optional[str] = None + subResourceId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetFindingsRequestRequestTypeDef(BaseModel): + scanName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[StatusType] = None + +class GetScanRequestRequestTypeDef(BaseModel): + scanName: str + runId: Optional[str] = None + +class ListScansRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ScanSummaryTypeDef(BaseModel): + createdAt: datetime + runId: str + scanName: str + scanState: ScanStateType + scanNameArn: Optional[str] = None + updatedAt: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ScanNameWithFindingNumTypeDef(BaseModel): + findingNumber: Optional[int] = None + scanName: Optional[str] = None + +class RecommendationTypeDef(BaseModel): + text: Optional[str] = None + url: Optional[str] = None + +class SuggestedFixTypeDef(BaseModel): + code: Optional[str] = None + description: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AccountFindingsMetricTypeDef(BaseModel): + closedFindings: Optional[FindingMetricsValuePerSeverityTypeDef] = None + date: Optional[datetime] = None + meanTimeToClose: Optional[FindingMetricsValuePerSeverityTypeDef] = None + newFindings: Optional[FindingMetricsValuePerSeverityTypeDef] = None + openFindings: Optional[FindingMetricsValuePerSeverityTypeDef] = None + +class BatchGetFindingsRequestRequestTypeDef(BaseModel): + findingIdentifiers: Sequence[FindingIdentifierTypeDef] + +class CreateUploadUrlResponseTypeDef(BaseModel): + codeArtifactId: str + requestHeaders: Dict[str, str] + s3Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetScanResponseTypeDef(BaseModel): + analysisType: AnalysisTypeType + createdAt: datetime + errorMessage: str + numberOfRevisions: int + runId: str + scanName: str + scanNameArn: str + scanState: ScanStateType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class FilePathTypeDef(BaseModel): + codeSnippet: Optional[List[CodeLineTypeDef]] = None + endLine: Optional[int] = None + name: Optional[str] = None + path: Optional[str] = None + startLine: Optional[int] = None + +class CreateScanRequestRequestTypeDef(BaseModel): + resourceId: ResourceIdTypeDef + scanName: str + analysisType: Optional[AnalysisTypeType] = None + clientToken: Optional[str] = None + scanType: Optional[ScanTypeType] = None + tags: Optional[Mapping[str, str]] = None + +class CreateScanResponseTypeDef(BaseModel): + resourceId: ResourceIdTypeDef + runId: str + scanName: str + scanNameArn: str + scanState: ScanStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountConfigurationResponseTypeDef(BaseModel): + encryptionConfig: EncryptionConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountConfigurationRequestRequestTypeDef(BaseModel): + encryptionConfig: EncryptionConfigTypeDef + +class UpdateAccountConfigurationResponseTypeDef(BaseModel): + encryptionConfig: EncryptionConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingsRequestGetFindingsPaginateTypeDef(BaseModel): + scanName: str + status: Optional[StatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScansRequestListScansPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetMetricsSummaryRequestRequestTypeDef(BaseModel): + date: TimestampTypeDef + +class ListFindingsMetricsRequestListFindingsMetricsPaginateTypeDef(BaseModel): + endDate: TimestampTypeDef + startDate: TimestampTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsMetricsRequestRequestTypeDef(BaseModel): + endDate: TimestampTypeDef + startDate: TimestampTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListScansResponseTypeDef(BaseModel): + nextToken: str + summaries: List[ScanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricsSummaryTypeDef(BaseModel): + categoriesWithMostFindings: Optional[List[CategoryWithFindingNumTypeDef]] = None + date: Optional[datetime] = None + openFindings: Optional[FindingMetricsValuePerSeverityTypeDef] = None + scansWithMostOpenCriticalFindings: Optional[List[ScanNameWithFindingNumTypeDef]] = None + scansWithMostOpenFindings: Optional[List[ScanNameWithFindingNumTypeDef]] = None + +class RemediationTypeDef(BaseModel): + recommendation: Optional[RecommendationTypeDef] = None + suggestedFixes: Optional[List[SuggestedFixTypeDef]] = None + +class ListFindingsMetricsResponseTypeDef(BaseModel): + findingsMetrics: List[AccountFindingsMetricTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class VulnerabilityTypeDef(BaseModel): + filePath: Optional[FilePathTypeDef] = None + id: Optional[str] = None + itemCount: Optional[int] = None + referenceUrls: Optional[List[str]] = None + relatedVulnerabilities: Optional[List[str]] = None + +class GetMetricsSummaryResponseTypeDef(BaseModel): + metricsSummary: MetricsSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FindingTypeDef(BaseModel): + createdAt: Optional[datetime] = None + description: Optional[str] = None + detectorId: Optional[str] = None + detectorName: Optional[str] = None + detectorTags: Optional[List[str]] = None + generatorId: Optional[str] = None + id: Optional[str] = None + remediation: Optional[RemediationTypeDef] = None + resource: Optional[ResourceTypeDef] = None + ruleId: Optional[str] = None + severity: Optional[SeverityType] = None + status: Optional[StatusType] = None + title: Optional[str] = None + type: Optional[str] = None + updatedAt: Optional[datetime] = None + vulnerability: Optional[VulnerabilityTypeDef] = None + +class BatchGetFindingsResponseTypeDef(BaseModel): + failedFindings: List[BatchGetFindingsErrorTypeDef] + findings: List[FindingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingsResponseTypeDef(BaseModel): + findings: List[FindingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codeguru_security_constants.py b/aws_resource_validator/pydantic_models/codeguru_security_constants.py new file mode 100644 index 00000000..7b6e9fa7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeguru_security_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnalysisTypeType = Literal["All", "Security"] +ErrorCodeType = Literal["DUPLICATE_IDENTIFIER", + "INTERNAL_ERROR", + "INVALID_FINDING_ID", + "INVALID_SCAN_NAME", + "ITEM_DOES_NOT_EXIST",] +GetFindingsPaginatorName = Literal["get_findings"] +ListFindingsMetricsPaginatorName = Literal["list_findings_metrics"] +ListScansPaginatorName = Literal["list_scans"] +ScanStateType = Literal["Failed", "InProgress", "Successful"] +ScanTypeType = Literal["Express", "Standard"] +SeverityType = Literal["Critical", "High", "Info", "Low", "Medium"] +StatusType = Literal["All", "Closed", "Open"] +CodeGuruSecurityServiceName = Literal["codeguru-security"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_findings", "list_findings_metrics", "list_scans"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/codeguruprofiler_classes.py b/aws_resource_validator/pydantic_models/codeguruprofiler_classes.py new file mode 100644 index 00000000..5f158558 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeguruprofiler_classes.py @@ -0,0 +1,341 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codeguruprofiler_constants import * + +class ChannelTypeDef(BaseModel): + eventPublishers: Sequence[Literal["AnomalyDetection"]] + uri: str + id: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AgentConfigurationTypeDef(BaseModel): + periodInSeconds: int + shouldProfile: bool + agentParameters: Optional[Dict[AgentParameterFieldType, str]] = None + +class AgentOrchestrationConfigTypeDef(BaseModel): + profilingEnabled: bool + +class AggregatedProfileTimeTypeDef(BaseModel): + period: Optional[AggregationPeriodType] = None + start: Optional[datetime] = None + +class UserFeedbackTypeDef(BaseModel): + type: FeedbackTypeType + +class MetricTypeDef(BaseModel): + frameName: str + threadStates: List[str] + type: Literal["AggregatedRelativeTotalTime"] + +class FrameMetricTypeDef(BaseModel): + frameName: str + threadStates: Sequence[str] + type: Literal["AggregatedRelativeTotalTime"] + +class TimestampStructureTypeDef(BaseModel): + value: datetime + +class ConfigureAgentRequestRequestTypeDef(BaseModel): + profilingGroupName: str + fleetInstanceId: Optional[str] = None + metadata: Optional[Mapping[MetadataFieldType, str]] = None + +class DeleteProfilingGroupRequestRequestTypeDef(BaseModel): + profilingGroupName: str + +class DescribeProfilingGroupRequestRequestTypeDef(BaseModel): + profilingGroupName: str + +class FindingsReportSummaryTypeDef(BaseModel): + id: Optional[str] = None + profileEndTime: Optional[datetime] = None + profileStartTime: Optional[datetime] = None + profilingGroupName: Optional[str] = None + totalNumberOfFindings: Optional[int] = None + +class GetFindingsReportAccountSummaryRequestRequestTypeDef(BaseModel): + dailyReportsOnly: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetNotificationConfigurationRequestRequestTypeDef(BaseModel): + profilingGroupName: str + +class GetPolicyRequestRequestTypeDef(BaseModel): + profilingGroupName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ProfileTimeTypeDef(BaseModel): + start: Optional[datetime] = None + +class ListProfilingGroupsRequestRequestTypeDef(BaseModel): + includeDescription: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MatchTypeDef(BaseModel): + frameAddress: Optional[str] = None + targetFramesIndex: Optional[int] = None + thresholdBreachValue: Optional[float] = None + +class PatternTypeDef(BaseModel): + countersToAggregate: Optional[List[str]] = None + description: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + resolutionSteps: Optional[str] = None + targetFrames: Optional[List[List[str]]] = None + thresholdPercent: Optional[float] = None + +class PutPermissionRequestRequestTypeDef(BaseModel): + actionGroup: Literal["agentPermissions"] + principals: Sequence[str] + profilingGroupName: str + revisionId: Optional[str] = None + +class RemoveNotificationChannelRequestRequestTypeDef(BaseModel): + channelId: str + profilingGroupName: str + +class RemovePermissionRequestRequestTypeDef(BaseModel): + actionGroup: Literal["agentPermissions"] + profilingGroupName: str + revisionId: str + +class SubmitFeedbackRequestRequestTypeDef(BaseModel): + anomalyInstanceId: str + profilingGroupName: str + type: FeedbackTypeType + comment: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AddNotificationChannelsRequestRequestTypeDef(BaseModel): + channels: Sequence[ChannelTypeDef] + profilingGroupName: str + +class NotificationConfigurationTypeDef(BaseModel): + channels: Optional[List[ChannelTypeDef]] = None + +class GetPolicyResponseTypeDef(BaseModel): + policy: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileResponseTypeDef(BaseModel): + contentEncoding: str + contentType: str + profile: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutPermissionResponseTypeDef(BaseModel): + policy: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemovePermissionResponseTypeDef(BaseModel): + policy: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigureAgentResponseTypeDef(BaseModel): + configuration: AgentConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfilingGroupRequestRequestTypeDef(BaseModel): + clientToken: str + profilingGroupName: str + agentOrchestrationConfig: Optional[AgentOrchestrationConfigTypeDef] = None + computePlatform: Optional[ComputePlatformType] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateProfilingGroupRequestRequestTypeDef(BaseModel): + agentOrchestrationConfig: AgentOrchestrationConfigTypeDef + profilingGroupName: str + +class ProfilingStatusTypeDef(BaseModel): + latestAgentOrchestratedAt: Optional[datetime] = None + latestAgentProfileReportedAt: Optional[datetime] = None + latestAggregatedProfile: Optional[AggregatedProfileTimeTypeDef] = None + +class AnomalyInstanceTypeDef(BaseModel): + id: str + startTime: datetime + endTime: Optional[datetime] = None + userFeedback: Optional[UserFeedbackTypeDef] = None + +class FrameMetricDatumTypeDef(BaseModel): + frameMetric: FrameMetricTypeDef + values: List[float] + +class BatchGetFrameMetricDataRequestRequestTypeDef(BaseModel): + profilingGroupName: str + endTime: Optional[TimestampTypeDef] = None + frameMetrics: Optional[Sequence[FrameMetricTypeDef]] = None + period: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + targetResolution: Optional[AggregationPeriodType] = None + +class GetProfileRequestRequestTypeDef(BaseModel): + profilingGroupName: str + accept: Optional[str] = None + endTime: Optional[TimestampTypeDef] = None + maxDepth: Optional[int] = None + period: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + +class GetRecommendationsRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + profilingGroupName: str + startTime: TimestampTypeDef + locale: Optional[str] = None + +class ListFindingsReportsRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + profilingGroupName: str + startTime: TimestampTypeDef + dailyReportsOnly: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListProfileTimesRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + period: AggregationPeriodType + profilingGroupName: str + startTime: TimestampTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + orderBy: Optional[OrderByType] = None + +class PostAgentProfileRequestRequestTypeDef(BaseModel): + agentProfile: BlobTypeDef + contentType: str + profilingGroupName: str + profileToken: Optional[str] = None + +class GetFindingsReportAccountSummaryResponseTypeDef(BaseModel): + nextToken: str + reportSummaries: List[FindingsReportSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFindingsReportsResponseTypeDef(BaseModel): + findingsReportSummaries: List[FindingsReportSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfileTimesRequestListProfileTimesPaginateTypeDef(BaseModel): + endTime: TimestampTypeDef + period: AggregationPeriodType + profilingGroupName: str + startTime: TimestampTypeDef + orderBy: Optional[OrderByType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfileTimesResponseTypeDef(BaseModel): + nextToken: str + profileTimes: List[ProfileTimeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationTypeDef(BaseModel): + allMatchesCount: int + allMatchesSum: float + endTime: datetime + pattern: PatternTypeDef + startTime: datetime + topMatches: List[MatchTypeDef] + +class AddNotificationChannelsResponseTypeDef(BaseModel): + notificationConfiguration: NotificationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNotificationConfigurationResponseTypeDef(BaseModel): + notificationConfiguration: NotificationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveNotificationChannelResponseTypeDef(BaseModel): + notificationConfiguration: NotificationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProfilingGroupDescriptionTypeDef(BaseModel): + agentOrchestrationConfig: Optional[AgentOrchestrationConfigTypeDef] = None + arn: Optional[str] = None + computePlatform: Optional[ComputePlatformType] = None + createdAt: Optional[datetime] = None + name: Optional[str] = None + profilingStatus: Optional[ProfilingStatusTypeDef] = None + tags: Optional[Dict[str, str]] = None + updatedAt: Optional[datetime] = None + +class AnomalyTypeDef(BaseModel): + instances: List[AnomalyInstanceTypeDef] + metric: MetricTypeDef + reason: str + +class BatchGetFrameMetricDataResponseTypeDef(BaseModel): + endTime: datetime + endTimes: List[TimestampStructureTypeDef] + frameMetricData: List[FrameMetricDatumTypeDef] + resolution: AggregationPeriodType + startTime: datetime + unprocessedEndTimes: Dict[str, List[TimestampStructureTypeDef]] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfilingGroupResponseTypeDef(BaseModel): + profilingGroup: ProfilingGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProfilingGroupResponseTypeDef(BaseModel): + profilingGroup: ProfilingGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfilingGroupsResponseTypeDef(BaseModel): + nextToken: str + profilingGroupNames: List[str] + profilingGroups: List[ProfilingGroupDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfilingGroupResponseTypeDef(BaseModel): + profilingGroup: ProfilingGroupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationsResponseTypeDef(BaseModel): + anomalies: List[AnomalyTypeDef] + profileEndTime: datetime + profileStartTime: datetime + profilingGroupName: str + recommendations: List[RecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codeguruprofiler_constants.py b/aws_resource_validator/pydantic_models/codeguruprofiler_constants.py new file mode 100644 index 00000000..e8eb21fb --- /dev/null +++ b/aws_resource_validator/pydantic_models/codeguruprofiler_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionGroupType = Literal["agentPermissions"] +AgentParameterFieldType = Literal["MaxStackDepth", + "MemoryUsageLimitPercent", + "MinimumTimeForReportingInMilliseconds", + "ReportingIntervalInMilliseconds", + "SamplingIntervalInMilliseconds",] +AggregationPeriodType = Literal["P1D", "PT1H", "PT5M"] +ComputePlatformType = Literal["AWSLambda", "Default"] +EventPublisherType = Literal["AnomalyDetection"] +FeedbackTypeType = Literal["Negative", "Positive"] +ListProfileTimesPaginatorName = Literal["list_profile_times"] +MetadataFieldType = Literal["AgentId", + "AwsRequestId", + "ComputePlatform", + "ExecutionEnvironment", + "LambdaFunctionArn", + "LambdaMemoryLimitInMB", + "LambdaPreviousExecutionTimeInMilliseconds", + "LambdaRemainingTimeInMilliseconds", + "LambdaTimeGapBetweenInvokesInMilliseconds",] +MetricTypeType = Literal["AggregatedRelativeTotalTime"] +OrderByType = Literal["TimestampAscending", "TimestampDescending"] +CodeGuruProfilerServiceName = Literal["codeguruprofiler"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_profile_times"] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/codepipeline_classes.py b/aws_resource_validator/pydantic_models/codepipeline_classes.py new file mode 100644 index 00000000..84890091 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codepipeline_classes.py @@ -0,0 +1,948 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codepipeline_constants import * + +class AWSSessionCredentialsTypeDef(BaseModel): + accessKeyId: str + secretAccessKey: str + sessionToken: str + +class AcknowledgeJobInputRequestTypeDef(BaseModel): + jobId: str + nonce: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AcknowledgeThirdPartyJobInputRequestTypeDef(BaseModel): + jobId: str + nonce: str + clientToken: str + +class ActionConfigurationPropertyTypeDef(BaseModel): + name: str + required: bool + key: bool + secret: bool + queryable: Optional[bool] = None + description: Optional[str] = None + type: Optional[ActionConfigurationPropertyTypeType] = None + +class ActionConfigurationTypeDef(BaseModel): + configuration: Optional[Dict[str, str]] = None + +class ActionContextTypeDef(BaseModel): + name: Optional[str] = None + actionExecutionId: Optional[str] = None + +class ActionTypeIdTypeDef(BaseModel): + category: ActionCategoryType + owner: ActionOwnerType + provider: str + version: str + +class InputArtifactTypeDef(BaseModel): + name: str + +class OutputArtifactTypeDef(BaseModel): + name: str + +class LatestInPipelineExecutionFilterTypeDef(BaseModel): + pipelineExecutionId: str + startTimeRange: StartTimeRangeType + +class ErrorDetailsTypeDef(BaseModel): + code: Optional[str] = None + message: Optional[str] = None + +class ActionRevisionOutputTypeDef(BaseModel): + revisionId: str + revisionChangeId: str + created: datetime + +class ActionTypeArtifactDetailsTypeDef(BaseModel): + minimumCount: int + maximumCount: int + +class ActionTypeIdentifierTypeDef(BaseModel): + category: ActionCategoryType + owner: str + provider: str + version: str + +class ActionTypePermissionsOutputTypeDef(BaseModel): + allowedAccounts: List[str] + +class ActionTypePropertyTypeDef(BaseModel): + name: str + optional: bool + key: bool + noEcho: bool + queryable: Optional[bool] = None + description: Optional[str] = None + +class ActionTypeUrlsTypeDef(BaseModel): + configurationUrl: Optional[str] = None + entityUrlTemplate: Optional[str] = None + executionUrlTemplate: Optional[str] = None + revisionUrlTemplate: Optional[str] = None + +class ActionTypePermissionsTypeDef(BaseModel): + allowedAccounts: Sequence[str] + +class ActionTypeSettingsTypeDef(BaseModel): + thirdPartyConfigurationUrl: Optional[str] = None + entityUrlTemplate: Optional[str] = None + executionUrlTemplate: Optional[str] = None + revisionUrlTemplate: Optional[str] = None + +class ArtifactDetailsTypeDef(BaseModel): + minimumCount: int + maximumCount: int + +class ApprovalResultTypeDef(BaseModel): + summary: str + status: ApprovalStatusType + +class S3LocationTypeDef(BaseModel): + bucket: Optional[str] = None + key: Optional[str] = None + +class S3ArtifactLocationTypeDef(BaseModel): + bucketName: str + objectKey: str + +class ArtifactRevisionTypeDef(BaseModel): + name: Optional[str] = None + revisionId: Optional[str] = None + revisionChangeIdentifier: Optional[str] = None + revisionSummary: Optional[str] = None + created: Optional[datetime] = None + revisionUrl: Optional[str] = None + +class EncryptionKeyTypeDef(BaseModel): + id: str + type: Literal["KMS"] + +class BlockerDeclarationTypeDef(BaseModel): + name: str + type: Literal["Schedule"] + +class TagTypeDef(BaseModel): + key: str + value: str + +class DeleteCustomActionTypeInputRequestTypeDef(BaseModel): + category: ActionCategoryType + provider: str + version: str + +class DeletePipelineInputRequestTypeDef(BaseModel): + name: str + +class DeleteWebhookInputRequestTypeDef(BaseModel): + name: str + +class DeregisterWebhookWithThirdPartyInputRequestTypeDef(BaseModel): + webhookName: Optional[str] = None + +class DisableStageTransitionInputRequestTypeDef(BaseModel): + pipelineName: str + stageName: str + transitionType: StageTransitionTypeType + reason: str + +class EnableStageTransitionInputRequestTypeDef(BaseModel): + pipelineName: str + stageName: str + transitionType: StageTransitionTypeType + +class ExecutionDetailsTypeDef(BaseModel): + summary: Optional[str] = None + externalExecutionId: Optional[str] = None + percentComplete: Optional[int] = None + +class ExecutionTriggerTypeDef(BaseModel): + triggerType: Optional[TriggerTypeType] = None + triggerDetail: Optional[str] = None + +class JobWorkerExecutorConfigurationOutputTypeDef(BaseModel): + pollingAccounts: Optional[List[str]] = None + pollingServicePrincipals: Optional[List[str]] = None + +class LambdaExecutorConfigurationTypeDef(BaseModel): + lambdaFunctionArn: str + +class JobWorkerExecutorConfigurationTypeDef(BaseModel): + pollingAccounts: Optional[Sequence[str]] = None + pollingServicePrincipals: Optional[Sequence[str]] = None + +class FailureConditionsTypeDef(BaseModel): + result: Optional[Literal["ROLLBACK"]] = None + +class FailureDetailsTypeDef(BaseModel): + type: FailureTypeType + message: str + externalExecutionId: Optional[str] = None + +class GetActionTypeInputRequestTypeDef(BaseModel): + category: ActionCategoryType + owner: str + provider: str + version: str + +class GetJobDetailsInputRequestTypeDef(BaseModel): + jobId: str + +class GetPipelineExecutionInputRequestTypeDef(BaseModel): + pipelineName: str + pipelineExecutionId: str + +class GetPipelineInputRequestTypeDef(BaseModel): + name: str + version: Optional[int] = None + +class PipelineMetadataTypeDef(BaseModel): + pipelineArn: Optional[str] = None + created: Optional[datetime] = None + updated: Optional[datetime] = None + pollingDisabledAt: Optional[datetime] = None + +class GetPipelineStateInputRequestTypeDef(BaseModel): + name: str + +class GetThirdPartyJobDetailsInputRequestTypeDef(BaseModel): + jobId: str + clientToken: str + +class GitBranchFilterCriteriaOutputTypeDef(BaseModel): + includes: Optional[List[str]] = None + excludes: Optional[List[str]] = None + +class GitBranchFilterCriteriaTypeDef(BaseModel): + includes: Optional[Sequence[str]] = None + excludes: Optional[Sequence[str]] = None + +class GitFilePathFilterCriteriaOutputTypeDef(BaseModel): + includes: Optional[List[str]] = None + excludes: Optional[List[str]] = None + +class GitFilePathFilterCriteriaTypeDef(BaseModel): + includes: Optional[Sequence[str]] = None + excludes: Optional[Sequence[str]] = None + +class GitTagFilterCriteriaOutputTypeDef(BaseModel): + includes: Optional[List[str]] = None + excludes: Optional[List[str]] = None + +class GitTagFilterCriteriaTypeDef(BaseModel): + includes: Optional[Sequence[str]] = None + excludes: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListActionTypesInputRequestTypeDef(BaseModel): + actionOwnerFilter: Optional[ActionOwnerType] = None + nextToken: Optional[str] = None + regionFilter: Optional[str] = None + +class ListPipelinesInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PipelineSummaryTypeDef(BaseModel): + name: Optional[str] = None + version: Optional[int] = None + pipelineType: Optional[PipelineTypeType] = None + executionMode: Optional[ExecutionModeType] = None + created: Optional[datetime] = None + updated: Optional[datetime] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListWebhooksInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class StageContextTypeDef(BaseModel): + name: Optional[str] = None + +class PipelineVariableDeclarationTypeDef(BaseModel): + name: str + defaultValue: Optional[str] = None + description: Optional[str] = None + +class SucceededInStageFilterTypeDef(BaseModel): + stageName: Optional[str] = None + +class PipelineRollbackMetadataTypeDef(BaseModel): + rollbackTargetPipelineExecutionId: Optional[str] = None + +class SourceRevisionTypeDef(BaseModel): + actionName: str + revisionId: Optional[str] = None + revisionSummary: Optional[str] = None + revisionUrl: Optional[str] = None + +class StopExecutionTriggerTypeDef(BaseModel): + reason: Optional[str] = None + +class ResolvedPipelineVariableTypeDef(BaseModel): + name: Optional[str] = None + resolvedValue: Optional[str] = None + +class PipelineVariableTypeDef(BaseModel): + name: str + value: str + +class ThirdPartyJobTypeDef(BaseModel): + clientId: Optional[str] = None + jobId: Optional[str] = None + +class RegisterWebhookWithThirdPartyInputRequestTypeDef(BaseModel): + webhookName: Optional[str] = None + +class RetryStageExecutionInputRequestTypeDef(BaseModel): + pipelineName: str + stageName: str + pipelineExecutionId: str + retryMode: StageRetryModeType + +class RollbackStageInputRequestTypeDef(BaseModel): + pipelineName: str + stageName: str + targetPipelineExecutionId: str + +class SourceRevisionOverrideTypeDef(BaseModel): + actionName: str + revisionType: SourceRevisionTypeType + revisionValue: str + +class StageExecutionTypeDef(BaseModel): + pipelineExecutionId: str + status: StageExecutionStatusType + type: Optional[ExecutionTypeType] = None + +class TransitionStateTypeDef(BaseModel): + enabled: Optional[bool] = None + lastChangedBy: Optional[str] = None + lastChangedAt: Optional[datetime] = None + disabledReason: Optional[str] = None + +class StopPipelineExecutionInputRequestTypeDef(BaseModel): + pipelineName: str + pipelineExecutionId: str + abandon: Optional[bool] = None + reason: Optional[str] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class WebhookAuthConfigurationTypeDef(BaseModel): + AllowedIPRange: Optional[str] = None + SecretToken: Optional[str] = None + +class WebhookFilterRuleTypeDef(BaseModel): + jsonPath: str + matchEquals: Optional[str] = None + +class AcknowledgeJobOutputTypeDef(BaseModel): + status: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class AcknowledgeThirdPartyJobOutputTypeDef(BaseModel): + status: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class PutActionRevisionOutputTypeDef(BaseModel): + newRevision: bool + pipelineExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutApprovalResultOutputTypeDef(BaseModel): + approvedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class RetryStageExecutionOutputTypeDef(BaseModel): + pipelineExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackStageOutputTypeDef(BaseModel): + pipelineExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartPipelineExecutionOutputTypeDef(BaseModel): + pipelineExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopPipelineExecutionOutputTypeDef(BaseModel): + pipelineExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PollForJobsInputRequestTypeDef(BaseModel): + actionTypeId: ActionTypeIdTypeDef + maxBatchSize: Optional[int] = None + queryParam: Optional[Mapping[str, str]] = None + +class PollForThirdPartyJobsInputRequestTypeDef(BaseModel): + actionTypeId: ActionTypeIdTypeDef + maxBatchSize: Optional[int] = None + +class ActionDeclarationOutputTypeDef(BaseModel): + name: str + actionTypeId: ActionTypeIdTypeDef + runOrder: Optional[int] = None + configuration: Optional[Dict[str, str]] = None + outputArtifacts: Optional[List[OutputArtifactTypeDef]] = None + inputArtifacts: Optional[List[InputArtifactTypeDef]] = None + roleArn: Optional[str] = None + region: Optional[str] = None + namespace: Optional[str] = None + timeoutInMinutes: Optional[int] = None + +class ActionDeclarationTypeDef(BaseModel): + name: str + actionTypeId: ActionTypeIdTypeDef + runOrder: Optional[int] = None + configuration: Optional[Mapping[str, str]] = None + outputArtifacts: Optional[Sequence[OutputArtifactTypeDef]] = None + inputArtifacts: Optional[Sequence[InputArtifactTypeDef]] = None + roleArn: Optional[str] = None + region: Optional[str] = None + namespace: Optional[str] = None + timeoutInMinutes: Optional[int] = None + +class ActionExecutionFilterTypeDef(BaseModel): + pipelineExecutionId: Optional[str] = None + latestInPipelineExecution: Optional[LatestInPipelineExecutionFilterTypeDef] = None + +class ActionExecutionResultTypeDef(BaseModel): + externalExecutionId: Optional[str] = None + externalExecutionSummary: Optional[str] = None + externalExecutionUrl: Optional[str] = None + errorDetails: Optional[ErrorDetailsTypeDef] = None + +class ActionExecutionTypeDef(BaseModel): + actionExecutionId: Optional[str] = None + status: Optional[ActionExecutionStatusType] = None + summary: Optional[str] = None + lastStatusChange: Optional[datetime] = None + token: Optional[str] = None + lastUpdatedBy: Optional[str] = None + externalExecutionId: Optional[str] = None + externalExecutionUrl: Optional[str] = None + percentComplete: Optional[int] = None + errorDetails: Optional[ErrorDetailsTypeDef] = None + +class ActionRevisionTypeDef(BaseModel): + revisionId: str + revisionChangeId: str + created: TimestampTypeDef + +class CurrentRevisionTypeDef(BaseModel): + revision: str + changeIdentifier: str + created: Optional[TimestampTypeDef] = None + revisionSummary: Optional[str] = None + +class ActionTypeTypeDef(BaseModel): + id: ActionTypeIdTypeDef + inputArtifactDetails: ArtifactDetailsTypeDef + outputArtifactDetails: ArtifactDetailsTypeDef + settings: Optional[ActionTypeSettingsTypeDef] = None + actionConfigurationProperties: Optional[List[ActionConfigurationPropertyTypeDef]] = None + +class PutApprovalResultInputRequestTypeDef(BaseModel): + pipelineName: str + stageName: str + actionName: str + result: ApprovalResultTypeDef + token: str + +class ArtifactDetailTypeDef(BaseModel): + name: Optional[str] = None + s3location: Optional[S3LocationTypeDef] = None + +class ArtifactLocationTypeDef(BaseModel): + type: Optional[Literal["S3"]] = None + s3Location: Optional[S3ArtifactLocationTypeDef] = None + +class ArtifactStoreTypeDef(BaseModel): + type: Literal["S3"] + location: str + encryptionKey: Optional[EncryptionKeyTypeDef] = None + +class CreateCustomActionTypeInputRequestTypeDef(BaseModel): + category: ActionCategoryType + provider: str + version: str + inputArtifactDetails: ArtifactDetailsTypeDef + outputArtifactDetails: ArtifactDetailsTypeDef + settings: Optional[ActionTypeSettingsTypeDef] = None + configurationProperties: Optional[Sequence[ActionConfigurationPropertyTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: List[TagTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class ExecutorConfigurationOutputTypeDef(BaseModel): + lambdaExecutorConfiguration: Optional[LambdaExecutorConfigurationTypeDef] = None + jobWorkerExecutorConfiguration: Optional[JobWorkerExecutorConfigurationOutputTypeDef] = None + +class ExecutorConfigurationTypeDef(BaseModel): + lambdaExecutorConfiguration: Optional[LambdaExecutorConfigurationTypeDef] = None + jobWorkerExecutorConfiguration: Optional[JobWorkerExecutorConfigurationTypeDef] = None + +class PutJobFailureResultInputRequestTypeDef(BaseModel): + jobId: str + failureDetails: FailureDetailsTypeDef + +class PutThirdPartyJobFailureResultInputRequestTypeDef(BaseModel): + jobId: str + clientToken: str + failureDetails: FailureDetailsTypeDef + +class GitPullRequestFilterOutputTypeDef(BaseModel): + events: Optional[List[GitPullRequestEventTypeType]] = None + branches: Optional[GitBranchFilterCriteriaOutputTypeDef] = None + filePaths: Optional[GitFilePathFilterCriteriaOutputTypeDef] = None + +class GitPullRequestFilterTypeDef(BaseModel): + events: Optional[Sequence[GitPullRequestEventTypeType]] = None + branches: Optional[GitBranchFilterCriteriaTypeDef] = None + filePaths: Optional[GitFilePathFilterCriteriaTypeDef] = None + +class GitPushFilterOutputTypeDef(BaseModel): + tags: Optional[GitTagFilterCriteriaOutputTypeDef] = None + branches: Optional[GitBranchFilterCriteriaOutputTypeDef] = None + filePaths: Optional[GitFilePathFilterCriteriaOutputTypeDef] = None + +class GitPushFilterTypeDef(BaseModel): + tags: Optional[GitTagFilterCriteriaTypeDef] = None + branches: Optional[GitBranchFilterCriteriaTypeDef] = None + filePaths: Optional[GitFilePathFilterCriteriaTypeDef] = None + +class ListActionTypesInputListActionTypesPaginateTypeDef(BaseModel): + actionOwnerFilter: Optional[ActionOwnerType] = None + regionFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelinesInputListPipelinesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceInputListTagsForResourcePaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWebhooksInputListWebhooksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelinesOutputTypeDef(BaseModel): + pipelines: List[PipelineSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PipelineContextTypeDef(BaseModel): + pipelineName: Optional[str] = None + stage: Optional[StageContextTypeDef] = None + action: Optional[ActionContextTypeDef] = None + pipelineArn: Optional[str] = None + pipelineExecutionId: Optional[str] = None + +class PipelineExecutionFilterTypeDef(BaseModel): + succeededInStage: Optional[SucceededInStageFilterTypeDef] = None + +class PipelineExecutionSummaryTypeDef(BaseModel): + pipelineExecutionId: Optional[str] = None + status: Optional[PipelineExecutionStatusType] = None + statusSummary: Optional[str] = None + startTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + sourceRevisions: Optional[List[SourceRevisionTypeDef]] = None + trigger: Optional[ExecutionTriggerTypeDef] = None + stopTrigger: Optional[StopExecutionTriggerTypeDef] = None + executionMode: Optional[ExecutionModeType] = None + executionType: Optional[ExecutionTypeType] = None + rollbackMetadata: Optional[PipelineRollbackMetadataTypeDef] = None + +class PipelineExecutionTypeDef(BaseModel): + pipelineName: Optional[str] = None + pipelineVersion: Optional[int] = None + pipelineExecutionId: Optional[str] = None + status: Optional[PipelineExecutionStatusType] = None + statusSummary: Optional[str] = None + artifactRevisions: Optional[List[ArtifactRevisionTypeDef]] = None + variables: Optional[List[ResolvedPipelineVariableTypeDef]] = None + trigger: Optional[ExecutionTriggerTypeDef] = None + executionMode: Optional[ExecutionModeType] = None + executionType: Optional[ExecutionTypeType] = None + rollbackMetadata: Optional[PipelineRollbackMetadataTypeDef] = None + +class PollForThirdPartyJobsOutputTypeDef(BaseModel): + jobs: List[ThirdPartyJobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartPipelineExecutionInputRequestTypeDef(BaseModel): + name: str + variables: Optional[Sequence[PipelineVariableTypeDef]] = None + clientRequestToken: Optional[str] = None + sourceRevisions: Optional[Sequence[SourceRevisionOverrideTypeDef]] = None + +class WebhookDefinitionExtraOutputTypeDef(BaseModel): + name: str + targetPipeline: str + targetAction: str + filters: List[WebhookFilterRuleTypeDef] + authentication: WebhookAuthenticationTypeType + authenticationConfiguration: WebhookAuthConfigurationTypeDef + +class WebhookDefinitionOutputTypeDef(BaseModel): + name: str + targetPipeline: str + targetAction: str + filters: List[WebhookFilterRuleTypeDef] + authentication: WebhookAuthenticationTypeType + authenticationConfiguration: WebhookAuthConfigurationTypeDef + +class WebhookDefinitionTypeDef(BaseModel): + name: str + targetPipeline: str + targetAction: str + filters: Sequence[WebhookFilterRuleTypeDef] + authentication: WebhookAuthenticationTypeType + authenticationConfiguration: WebhookAuthConfigurationTypeDef + +class StageDeclarationOutputTypeDef(BaseModel): + name: str + actions: List[ActionDeclarationOutputTypeDef] + blockers: Optional[List[BlockerDeclarationTypeDef]] = None + onFailure: Optional[FailureConditionsTypeDef] = None + +class StageDeclarationTypeDef(BaseModel): + name: str + actions: Sequence[ActionDeclarationTypeDef] + blockers: Optional[Sequence[BlockerDeclarationTypeDef]] = None + onFailure: Optional[FailureConditionsTypeDef] = None + +class ListActionExecutionsInputListActionExecutionsPaginateTypeDef(BaseModel): + pipelineName: str + filter: Optional[ActionExecutionFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListActionExecutionsInputRequestTypeDef(BaseModel): + pipelineName: str + filter: Optional[ActionExecutionFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ActionStateTypeDef(BaseModel): + actionName: Optional[str] = None + currentRevision: Optional[ActionRevisionOutputTypeDef] = None + latestExecution: Optional[ActionExecutionTypeDef] = None + entityUrl: Optional[str] = None + revisionUrl: Optional[str] = None + +class PutActionRevisionInputRequestTypeDef(BaseModel): + pipelineName: str + stageName: str + actionName: str + actionRevision: ActionRevisionTypeDef + +class PutJobSuccessResultInputRequestTypeDef(BaseModel): + jobId: str + currentRevision: Optional[CurrentRevisionTypeDef] = None + continuationToken: Optional[str] = None + executionDetails: Optional[ExecutionDetailsTypeDef] = None + outputVariables: Optional[Mapping[str, str]] = None + +class PutThirdPartyJobSuccessResultInputRequestTypeDef(BaseModel): + jobId: str + clientToken: str + currentRevision: Optional[CurrentRevisionTypeDef] = None + continuationToken: Optional[str] = None + executionDetails: Optional[ExecutionDetailsTypeDef] = None + +class CreateCustomActionTypeOutputTypeDef(BaseModel): + actionType: ActionTypeTypeDef + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListActionTypesOutputTypeDef(BaseModel): + actionTypes: List[ActionTypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ActionExecutionInputTypeDef(BaseModel): + actionTypeId: Optional[ActionTypeIdTypeDef] = None + configuration: Optional[Dict[str, str]] = None + resolvedConfiguration: Optional[Dict[str, str]] = None + roleArn: Optional[str] = None + region: Optional[str] = None + inputArtifacts: Optional[List[ArtifactDetailTypeDef]] = None + namespace: Optional[str] = None + +class ActionExecutionOutputTypeDef(BaseModel): + outputArtifacts: Optional[List[ArtifactDetailTypeDef]] = None + executionResult: Optional[ActionExecutionResultTypeDef] = None + outputVariables: Optional[Dict[str, str]] = None + +class ArtifactTypeDef(BaseModel): + name: Optional[str] = None + revision: Optional[str] = None + location: Optional[ArtifactLocationTypeDef] = None + +class ActionTypeExecutorOutputTypeDef(BaseModel): + configuration: ExecutorConfigurationOutputTypeDef + type: ExecutorTypeType + policyStatementsTemplate: Optional[str] = None + jobTimeout: Optional[int] = None + +class ActionTypeExecutorTypeDef(BaseModel): + configuration: ExecutorConfigurationTypeDef + type: ExecutorTypeType + policyStatementsTemplate: Optional[str] = None + jobTimeout: Optional[int] = None + +class GitConfigurationOutputTypeDef(BaseModel): + sourceActionName: str + push: Optional[List[GitPushFilterOutputTypeDef]] = None + pullRequest: Optional[List[GitPullRequestFilterOutputTypeDef]] = None + +class GitConfigurationTypeDef(BaseModel): + sourceActionName: str + push: Optional[Sequence[GitPushFilterTypeDef]] = None + pullRequest: Optional[Sequence[GitPullRequestFilterTypeDef]] = None + +class ListPipelineExecutionsInputListPipelineExecutionsPaginateTypeDef(BaseModel): + pipelineName: str + filter: Optional[PipelineExecutionFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelineExecutionsInputRequestTypeDef(BaseModel): + pipelineName: str + maxResults: Optional[int] = None + filter: Optional[PipelineExecutionFilterTypeDef] = None + nextToken: Optional[str] = None + +class ListPipelineExecutionsOutputTypeDef(BaseModel): + pipelineExecutionSummaries: List[PipelineExecutionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPipelineExecutionOutputTypeDef(BaseModel): + pipelineExecution: PipelineExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebhookItemTypeDef(BaseModel): + definition: WebhookDefinitionOutputTypeDef + url: str + errorMessage: Optional[str] = None + errorCode: Optional[str] = None + lastTriggered: Optional[datetime] = None + arn: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + +class PutWebhookInputRequestTypeDef(BaseModel): + webhook: WebhookDefinitionTypeDef + tags: Optional[Sequence[TagTypeDef]] = None + +class StageStateTypeDef(BaseModel): + stageName: Optional[str] = None + inboundExecution: Optional[StageExecutionTypeDef] = None + inboundExecutions: Optional[List[StageExecutionTypeDef]] = None + inboundTransitionState: Optional[TransitionStateTypeDef] = None + actionStates: Optional[List[ActionStateTypeDef]] = None + latestExecution: Optional[StageExecutionTypeDef] = None + +class ActionExecutionDetailTypeDef(BaseModel): + pipelineExecutionId: Optional[str] = None + actionExecutionId: Optional[str] = None + pipelineVersion: Optional[int] = None + stageName: Optional[str] = None + actionName: Optional[str] = None + startTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + updatedBy: Optional[str] = None + status: Optional[ActionExecutionStatusType] = None + input: Optional[ActionExecutionInputTypeDef] = None + output: Optional[ActionExecutionOutputTypeDef] = None + +class JobDataTypeDef(BaseModel): + actionTypeId: Optional[ActionTypeIdTypeDef] = None + actionConfiguration: Optional[ActionConfigurationTypeDef] = None + pipelineContext: Optional[PipelineContextTypeDef] = None + inputArtifacts: Optional[List[ArtifactTypeDef]] = None + outputArtifacts: Optional[List[ArtifactTypeDef]] = None + artifactCredentials: Optional[AWSSessionCredentialsTypeDef] = None + continuationToken: Optional[str] = None + encryptionKey: Optional[EncryptionKeyTypeDef] = None + +class ThirdPartyJobDataTypeDef(BaseModel): + actionTypeId: Optional[ActionTypeIdTypeDef] = None + actionConfiguration: Optional[ActionConfigurationTypeDef] = None + pipelineContext: Optional[PipelineContextTypeDef] = None + inputArtifacts: Optional[List[ArtifactTypeDef]] = None + outputArtifacts: Optional[List[ArtifactTypeDef]] = None + artifactCredentials: Optional[AWSSessionCredentialsTypeDef] = None + continuationToken: Optional[str] = None + encryptionKey: Optional[EncryptionKeyTypeDef] = None + +class ActionTypeDeclarationOutputTypeDef(BaseModel): + executor: ActionTypeExecutorOutputTypeDef + id: ActionTypeIdentifierTypeDef + inputArtifactDetails: ActionTypeArtifactDetailsTypeDef + outputArtifactDetails: ActionTypeArtifactDetailsTypeDef + description: Optional[str] = None + permissions: Optional[ActionTypePermissionsOutputTypeDef] = None + properties: Optional[List[ActionTypePropertyTypeDef]] = None + urls: Optional[ActionTypeUrlsTypeDef] = None + +class ActionTypeDeclarationTypeDef(BaseModel): + executor: ActionTypeExecutorTypeDef + id: ActionTypeIdentifierTypeDef + inputArtifactDetails: ActionTypeArtifactDetailsTypeDef + outputArtifactDetails: ActionTypeArtifactDetailsTypeDef + description: Optional[str] = None + permissions: Optional[ActionTypePermissionsTypeDef] = None + properties: Optional[Sequence[ActionTypePropertyTypeDef]] = None + urls: Optional[ActionTypeUrlsTypeDef] = None + +class PipelineTriggerDeclarationOutputTypeDef(BaseModel): + providerType: Literal["CodeStarSourceConnection"] + gitConfiguration: GitConfigurationOutputTypeDef + +class PipelineTriggerDeclarationTypeDef(BaseModel): + providerType: Literal["CodeStarSourceConnection"] + gitConfiguration: GitConfigurationTypeDef + +class ListWebhooksOutputTypeDef(BaseModel): + webhooks: List[ListWebhookItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutWebhookOutputTypeDef(BaseModel): + webhook: ListWebhookItemTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPipelineStateOutputTypeDef(BaseModel): + pipelineName: str + pipelineVersion: int + stageStates: List[StageStateTypeDef] + created: datetime + updated: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListActionExecutionsOutputTypeDef(BaseModel): + actionExecutionDetails: List[ActionExecutionDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobDetailsTypeDef(BaseModel): + id: Optional[str] = None + data: Optional[JobDataTypeDef] = None + accountId: Optional[str] = None + +class JobTypeDef(BaseModel): + id: Optional[str] = None + data: Optional[JobDataTypeDef] = None + nonce: Optional[str] = None + accountId: Optional[str] = None + +class ThirdPartyJobDetailsTypeDef(BaseModel): + id: Optional[str] = None + data: Optional[ThirdPartyJobDataTypeDef] = None + nonce: Optional[str] = None + +class GetActionTypeOutputTypeDef(BaseModel): + actionType: ActionTypeDeclarationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateActionTypeInputRequestTypeDef(BaseModel): + actionType: ActionTypeDeclarationTypeDef + +class PipelineDeclarationOutputTypeDef(BaseModel): + name: str + roleArn: str + stages: List[StageDeclarationOutputTypeDef] + artifactStore: Optional[ArtifactStoreTypeDef] = None + artifactStores: Optional[Dict[str, ArtifactStoreTypeDef]] = None + version: Optional[int] = None + executionMode: Optional[ExecutionModeType] = None + pipelineType: Optional[PipelineTypeType] = None + variables: Optional[List[PipelineVariableDeclarationTypeDef]] = None + triggers: Optional[List[PipelineTriggerDeclarationOutputTypeDef]] = None + +class PipelineDeclarationTypeDef(BaseModel): + name: str + roleArn: str + stages: Sequence[StageDeclarationTypeDef] + artifactStore: Optional[ArtifactStoreTypeDef] = None + artifactStores: Optional[Mapping[str, ArtifactStoreTypeDef]] = None + version: Optional[int] = None + executionMode: Optional[ExecutionModeType] = None + pipelineType: Optional[PipelineTypeType] = None + variables: Optional[Sequence[PipelineVariableDeclarationTypeDef]] = None + triggers: Optional[Sequence[PipelineTriggerDeclarationTypeDef]] = None + +class GetJobDetailsOutputTypeDef(BaseModel): + jobDetails: JobDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PollForJobsOutputTypeDef(BaseModel): + jobs: List[JobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetThirdPartyJobDetailsOutputTypeDef(BaseModel): + jobDetails: ThirdPartyJobDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePipelineOutputTypeDef(BaseModel): + pipeline: PipelineDeclarationOutputTypeDef + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPipelineOutputTypeDef(BaseModel): + pipeline: PipelineDeclarationOutputTypeDef + metadata: PipelineMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineOutputTypeDef(BaseModel): + pipeline: PipelineDeclarationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePipelineInputRequestTypeDef(BaseModel): + pipeline: PipelineDeclarationTypeDef + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdatePipelineInputRequestTypeDef(BaseModel): + pipeline: PipelineDeclarationTypeDef + diff --git a/aws_resource_validator/pydantic_models/codepipeline_constants.py b/aws_resource_validator/pydantic_models/codepipeline_constants.py new file mode 100644 index 00000000..f414934b --- /dev/null +++ b/aws_resource_validator/pydantic_models/codepipeline_constants.py @@ -0,0 +1,481 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionCategoryType = Literal["Approval", "Build", "Deploy", "Invoke", "Source", "Test"] +ActionConfigurationPropertyTypeType = Literal["Boolean", "Number", "String"] +ActionExecutionStatusType = Literal["Abandoned", "Failed", "InProgress", "Succeeded"] +ActionOwnerType = Literal["AWS", "Custom", "ThirdParty"] +ApprovalStatusType = Literal["Approved", "Rejected"] +ArtifactLocationTypeType = Literal["S3"] +ArtifactStoreTypeType = Literal["S3"] +BlockerTypeType = Literal["Schedule"] +EncryptionKeyTypeType = Literal["KMS"] +ExecutionModeType = Literal["PARALLEL", "QUEUED", "SUPERSEDED"] +ExecutionTypeType = Literal["ROLLBACK", "STANDARD"] +ExecutorTypeType = Literal["JobWorker", "Lambda"] +FailureTypeType = Literal["ConfigurationError", + "JobFailed", + "PermissionError", + "RevisionOutOfSync", + "RevisionUnavailable", + "SystemUnavailable",] +GitPullRequestEventTypeType = Literal["CLOSED", "OPEN", "UPDATED"] +JobStatusType = Literal["Created", "Dispatched", "Failed", "InProgress", "Queued", "Succeeded", "TimedOut"] +ListActionExecutionsPaginatorName = Literal["list_action_executions"] +ListActionTypesPaginatorName = Literal["list_action_types"] +ListPipelineExecutionsPaginatorName = Literal["list_pipeline_executions"] +ListPipelinesPaginatorName = Literal["list_pipelines"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListWebhooksPaginatorName = Literal["list_webhooks"] +PipelineExecutionStatusType = Literal["Cancelled", "Failed", "InProgress", "Stopped", "Stopping", "Succeeded", "Superseded"] +PipelineTriggerProviderTypeType = Literal["CodeStarSourceConnection"] +PipelineTypeType = Literal["V1", "V2"] +ResultType = Literal["ROLLBACK"] +SourceRevisionTypeType = Literal["COMMIT_ID", "IMAGE_DIGEST", "S3_OBJECT_KEY", "S3_OBJECT_VERSION_ID"] +StageExecutionStatusType = Literal["Cancelled", "Failed", "InProgress", "Stopped", "Stopping", "Succeeded"] +StageRetryModeType = Literal["ALL_ACTIONS", "FAILED_ACTIONS"] +StageTransitionTypeType = Literal["Inbound", "Outbound"] +StartTimeRangeType = Literal["All", "Latest"] +TriggerTypeType = Literal["AutomatedRollback", + "CloudWatchEvent", + "CreatePipeline", + "ManualRollback", + "PollForSourceChanges", + "PutActionRevision", + "StartPipelineExecution", + "Webhook", + "WebhookV2",] +WebhookAuthenticationTypeType = Literal["GITHUB_HMAC", "IP", "UNAUTHENTICATED"] +CodePipelineServiceName = Literal["codepipeline"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_action_executions", + "list_action_types", + "list_pipeline_executions", + "list_pipelines", + "list_tags_for_resource", + "list_webhooks",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ActionRevisionUnionTypeDef = Union['ActionRevisionTypeDef', 'ActionRevisionOutputTypeDef'] +WebhookDefinitionUnionTypeDef = Union['WebhookDefinitionTypeDef', 'WebhookDefinitionExtraOutputTypeDef'] +ActionTypeDeclarationUnionTypeDef = Union[ 'ActionTypeDeclarationTypeDef', 'ActionTypeDeclarationOutputTypeDef' ] +PipelineDeclarationUnionTypeDef = Union[ 'PipelineDeclarationTypeDef', 'PipelineDeclarationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/codestar_classes.py b/aws_resource_validator/pydantic_models/codestar_classes.py new file mode 100644 index 00000000..342d3806 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codestar_classes.py @@ -0,0 +1,278 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codestar_constants import * + +class AssociateTeamMemberRequestRequestTypeDef(BaseModel): + projectId: str + userArn: str + projectRole: str + clientRequestToken: Optional[str] = None + remoteAccessAllowed: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CodeCommitCodeDestinationTypeDef(BaseModel): + name: str + +class GitHubCodeDestinationTypeDef(BaseModel): + name: str + type: str + owner: str + privateRepository: bool + issuesEnabled: bool + token: str + description: Optional[str] = None + +class S3LocationTypeDef(BaseModel): + bucketName: Optional[str] = None + bucketKey: Optional[str] = None + +class CreateUserProfileRequestRequestTypeDef(BaseModel): + userArn: str + displayName: str + emailAddress: str + sshPublicKey: Optional[str] = None + +class DeleteProjectRequestRequestTypeDef(BaseModel): + id: str + clientRequestToken: Optional[str] = None + deleteStack: Optional[bool] = None + +class DeleteUserProfileRequestRequestTypeDef(BaseModel): + userArn: str + +class DescribeProjectRequestRequestTypeDef(BaseModel): + id: str + +class ProjectStatusTypeDef(BaseModel): + state: str + reason: Optional[str] = None + +class DescribeUserProfileRequestRequestTypeDef(BaseModel): + userArn: str + +class DisassociateTeamMemberRequestRequestTypeDef(BaseModel): + projectId: str + userArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ProjectSummaryTypeDef(BaseModel): + projectId: Optional[str] = None + projectArn: Optional[str] = None + +class ListResourcesRequestRequestTypeDef(BaseModel): + projectId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ResourceTypeDef(BaseModel): + id: str + +class ListTagsForProjectRequestRequestTypeDef(BaseModel): + id: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTeamMembersRequestRequestTypeDef(BaseModel): + projectId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TeamMemberTypeDef(BaseModel): + userArn: str + projectRole: str + remoteAccessAllowed: Optional[bool] = None + +class ListUserProfilesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class UserProfileSummaryTypeDef(BaseModel): + userArn: Optional[str] = None + displayName: Optional[str] = None + emailAddress: Optional[str] = None + sshPublicKey: Optional[str] = None + +class TagProjectRequestRequestTypeDef(BaseModel): + id: str + tags: Mapping[str, str] + +class UntagProjectRequestRequestTypeDef(BaseModel): + id: str + tags: Sequence[str] + +class UpdateProjectRequestRequestTypeDef(BaseModel): + id: str + name: Optional[str] = None + description: Optional[str] = None + +class UpdateTeamMemberRequestRequestTypeDef(BaseModel): + projectId: str + userArn: str + projectRole: Optional[str] = None + remoteAccessAllowed: Optional[bool] = None + +class UpdateUserProfileRequestRequestTypeDef(BaseModel): + userArn: str + displayName: Optional[str] = None + emailAddress: Optional[str] = None + sshPublicKey: Optional[str] = None + +class AssociateTeamMemberResultTypeDef(BaseModel): + clientRequestToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResultTypeDef(BaseModel): + id: str + arn: str + clientRequestToken: str + projectTemplateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserProfileResultTypeDef(BaseModel): + userArn: str + displayName: str + emailAddress: str + sshPublicKey: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectResultTypeDef(BaseModel): + stackId: str + projectArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteUserProfileResultTypeDef(BaseModel): + userArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserProfileResultTypeDef(BaseModel): + userArn: str + displayName: str + emailAddress: str + sshPublicKey: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForProjectResultTypeDef(BaseModel): + tags: Dict[str, str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagProjectResultTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTeamMemberResultTypeDef(BaseModel): + userArn: str + projectRole: str + remoteAccessAllowed: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserProfileResultTypeDef(BaseModel): + userArn: str + displayName: str + emailAddress: str + sshPublicKey: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CodeDestinationTypeDef(BaseModel): + codeCommit: Optional[CodeCommitCodeDestinationTypeDef] = None + gitHub: Optional[GitHubCodeDestinationTypeDef] = None + +class CodeSourceTypeDef(BaseModel): + s3: S3LocationTypeDef + +class ToolchainSourceTypeDef(BaseModel): + s3: S3LocationTypeDef + +class DescribeProjectResultTypeDef(BaseModel): + name: str + id: str + arn: str + description: str + clientRequestToken: str + createdTimeStamp: datetime + stackId: str + projectTemplateId: str + status: ProjectStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourcesRequestListResourcesPaginateTypeDef(BaseModel): + projectId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTeamMembersRequestListTeamMembersPaginateTypeDef(BaseModel): + projectId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserProfilesRequestListUserProfilesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsResultTypeDef(BaseModel): + projects: List[ProjectSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesResultTypeDef(BaseModel): + resources: List[ResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTeamMembersResultTypeDef(BaseModel): + teamMembers: List[TeamMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserProfilesResultTypeDef(BaseModel): + userProfiles: List[UserProfileSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CodeTypeDef(BaseModel): + source: CodeSourceTypeDef + destination: CodeDestinationTypeDef + +class ToolchainTypeDef(BaseModel): + source: ToolchainSourceTypeDef + roleArn: Optional[str] = None + stackParameters: Optional[Mapping[str, str]] = None + +class CreateProjectRequestRequestTypeDef(BaseModel): + name: str + id: str + description: Optional[str] = None + clientRequestToken: Optional[str] = None + sourceCode: Optional[Sequence[CodeTypeDef]] = None + toolchain: Optional[ToolchainTypeDef] = None + tags: Optional[Mapping[str, str]] = None + diff --git a/aws_resource_validator/pydantic_models/codestar_connections_classes.py b/aws_resource_validator/pydantic_models/codestar_connections_classes.py new file mode 100644 index 00000000..94eae6de --- /dev/null +++ b/aws_resource_validator/pydantic_models/codestar_connections_classes.py @@ -0,0 +1,352 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codestar_connections_constants import * + +class ConnectionTypeDef(BaseModel): + ConnectionName: Optional[str] = None + ConnectionArn: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + OwnerAccountId: Optional[str] = None + ConnectionStatus: Optional[ConnectionStatusType] = None + HostArn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class VpcConfigurationTypeDef(BaseModel): + VpcId: str + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + TlsCertificate: Optional[str] = None + +class RepositoryLinkInfoTypeDef(BaseModel): + ConnectionArn: str + OwnerId: str + ProviderType: ProviderTypeType + RepositoryLinkArn: str + RepositoryLinkId: str + RepositoryName: str + EncryptionKeyArn: Optional[str] = None + +class CreateSyncConfigurationInputRequestTypeDef(BaseModel): + Branch: str + ConfigFile: str + RepositoryLinkId: str + ResourceName: str + RoleArn: str + SyncType: Literal["CFN_STACK_SYNC"] + PublishDeploymentStatus: Optional[PublishDeploymentStatusType] = None + TriggerResourceUpdateOn: Optional[TriggerResourceUpdateOnType] = None + +class SyncConfigurationTypeDef(BaseModel): + Branch: str + OwnerId: str + ProviderType: ProviderTypeType + RepositoryLinkId: str + RepositoryName: str + ResourceName: str + RoleArn: str + SyncType: Literal["CFN_STACK_SYNC"] + ConfigFile: Optional[str] = None + PublishDeploymentStatus: Optional[PublishDeploymentStatusType] = None + TriggerResourceUpdateOn: Optional[TriggerResourceUpdateOnType] = None + +class DeleteConnectionInputRequestTypeDef(BaseModel): + ConnectionArn: str + +class DeleteHostInputRequestTypeDef(BaseModel): + HostArn: str + +class DeleteRepositoryLinkInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + +class DeleteSyncConfigurationInputRequestTypeDef(BaseModel): + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + +class GetConnectionInputRequestTypeDef(BaseModel): + ConnectionArn: str + +class GetHostInputRequestTypeDef(BaseModel): + HostArn: str + +class GetRepositoryLinkInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + +class GetRepositorySyncStatusInputRequestTypeDef(BaseModel): + Branch: str + RepositoryLinkId: str + SyncType: Literal["CFN_STACK_SYNC"] + +class GetResourceSyncStatusInputRequestTypeDef(BaseModel): + ResourceName: str + SyncType: Literal["CFN_STACK_SYNC"] + +class RevisionTypeDef(BaseModel): + Branch: str + Directory: str + OwnerId: str + RepositoryName: str + ProviderType: ProviderTypeType + Sha: str + +class GetSyncBlockerSummaryInputRequestTypeDef(BaseModel): + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + +class GetSyncConfigurationInputRequestTypeDef(BaseModel): + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + +class ListConnectionsInputRequestTypeDef(BaseModel): + ProviderTypeFilter: Optional[ProviderTypeType] = None + HostArnFilter: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHostsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRepositoryLinksInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRepositorySyncDefinitionsInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + SyncType: Literal["CFN_STACK_SYNC"] + +class RepositorySyncDefinitionTypeDef(BaseModel): + Branch: str + Directory: str + Parent: str + Target: str + +class ListSyncConfigurationsInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + SyncType: Literal["CFN_STACK_SYNC"] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class RepositorySyncEventTypeDef(BaseModel): + Event: str + Time: datetime + Type: str + ExternalId: Optional[str] = None + +class ResourceSyncEventTypeDef(BaseModel): + Event: str + Time: datetime + Type: str + ExternalId: Optional[str] = None + +class SyncBlockerContextTypeDef(BaseModel): + Key: str + Value: str + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateRepositoryLinkInputRequestTypeDef(BaseModel): + RepositoryLinkId: str + ConnectionArn: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + +class UpdateSyncBlockerInputRequestTypeDef(BaseModel): + Id: str + SyncType: Literal["CFN_STACK_SYNC"] + ResourceName: str + ResolvedReason: str + +class UpdateSyncConfigurationInputRequestTypeDef(BaseModel): + ResourceName: str + SyncType: Literal["CFN_STACK_SYNC"] + Branch: Optional[str] = None + ConfigFile: Optional[str] = None + RepositoryLinkId: Optional[str] = None + RoleArn: Optional[str] = None + PublishDeploymentStatus: Optional[PublishDeploymentStatusType] = None + TriggerResourceUpdateOn: Optional[TriggerResourceUpdateOnType] = None + +class CreateConnectionInputRequestTypeDef(BaseModel): + ConnectionName: str + ProviderType: Optional[ProviderTypeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + HostArn: Optional[str] = None + +class CreateRepositoryLinkInputRequestTypeDef(BaseModel): + ConnectionArn: str + OwnerId: str + RepositoryName: str + EncryptionKeyArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateConnectionOutputTypeDef(BaseModel): + ConnectionArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHostOutputTypeDef(BaseModel): + HostArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectionOutputTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectionsOutputTypeDef(BaseModel): + Connections: List[ConnectionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHostInputRequestTypeDef(BaseModel): + Name: str + ProviderType: ProviderTypeType + ProviderEndpoint: str + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetHostOutputTypeDef(BaseModel): + Name: str + Status: str + ProviderType: ProviderTypeType + ProviderEndpoint: str + VpcConfiguration: VpcConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HostTypeDef(BaseModel): + Name: Optional[str] = None + HostArn: Optional[str] = None + ProviderType: Optional[ProviderTypeType] = None + ProviderEndpoint: Optional[str] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + +class UpdateHostInputRequestTypeDef(BaseModel): + HostArn: str + ProviderEndpoint: Optional[str] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + +class CreateRepositoryLinkOutputTypeDef(BaseModel): + RepositoryLinkInfo: RepositoryLinkInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryLinkOutputTypeDef(BaseModel): + RepositoryLinkInfo: RepositoryLinkInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoryLinksOutputTypeDef(BaseModel): + RepositoryLinks: List[RepositoryLinkInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRepositoryLinkOutputTypeDef(BaseModel): + RepositoryLinkInfo: RepositoryLinkInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSyncConfigurationOutputTypeDef(BaseModel): + SyncConfiguration: SyncConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSyncConfigurationOutputTypeDef(BaseModel): + SyncConfiguration: SyncConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSyncConfigurationsOutputTypeDef(BaseModel): + SyncConfigurations: List[SyncConfigurationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSyncConfigurationOutputTypeDef(BaseModel): + SyncConfiguration: SyncConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositorySyncDefinitionsOutputTypeDef(BaseModel): + RepositorySyncDefinitions: List[RepositorySyncDefinitionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RepositorySyncAttemptTypeDef(BaseModel): + StartedAt: datetime + Status: RepositorySyncStatusType + Events: List[RepositorySyncEventTypeDef] + +class ResourceSyncAttemptTypeDef(BaseModel): + Events: List[ResourceSyncEventTypeDef] + InitialRevision: RevisionTypeDef + StartedAt: datetime + Status: ResourceSyncStatusType + TargetRevision: RevisionTypeDef + Target: str + +class SyncBlockerTypeDef(BaseModel): + Id: str + Type: Literal["AUTOMATED"] + Status: BlockerStatusType + CreatedReason: str + CreatedAt: datetime + Contexts: Optional[List[SyncBlockerContextTypeDef]] = None + ResolvedReason: Optional[str] = None + ResolvedAt: Optional[datetime] = None + +class ListHostsOutputTypeDef(BaseModel): + Hosts: List[HostTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositorySyncStatusOutputTypeDef(BaseModel): + LatestSync: RepositorySyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceSyncStatusOutputTypeDef(BaseModel): + DesiredState: RevisionTypeDef + LatestSuccessfulSync: ResourceSyncAttemptTypeDef + LatestSync: ResourceSyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SyncBlockerSummaryTypeDef(BaseModel): + ResourceName: str + ParentResourceName: Optional[str] = None + LatestBlockers: Optional[List[SyncBlockerTypeDef]] = None + +class UpdateSyncBlockerOutputTypeDef(BaseModel): + ResourceName: str + ParentResourceName: str + SyncBlocker: SyncBlockerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSyncBlockerSummaryOutputTypeDef(BaseModel): + SyncBlockerSummary: SyncBlockerSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/codestar_connections_constants.py b/aws_resource_validator/pydantic_models/codestar_connections_constants.py new file mode 100644 index 00000000..8e816c89 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codestar_connections_constants.py @@ -0,0 +1,419 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BlockerStatusType = Literal["ACTIVE", "RESOLVED"] +BlockerTypeType = Literal["AUTOMATED"] +ConnectionStatusType = Literal["AVAILABLE", "ERROR", "PENDING"] +ProviderTypeType = Literal["Bitbucket", "GitHub", "GitHubEnterpriseServer", "GitLab", "GitLabSelfManaged"] +PublishDeploymentStatusType = Literal["DISABLED", "ENABLED"] +RepositorySyncStatusType = Literal["FAILED", "INITIATED", "IN_PROGRESS", "QUEUED", "SUCCEEDED"] +ResourceSyncStatusType = Literal["FAILED", "INITIATED", "IN_PROGRESS", "SUCCEEDED"] +SyncConfigurationTypeType = Literal["CFN_STACK_SYNC"] +TriggerResourceUpdateOnType = Literal["ANY_CHANGE", "FILE_CHANGE"] +CodeStarconnectionsServiceName = Literal["codestar-connections"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/codestar_constants.py b/aws_resource_validator/pydantic_models/codestar_constants.py new file mode 100644 index 00000000..07ed8983 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codestar_constants.py @@ -0,0 +1,406 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListProjectsPaginatorName = Literal["list_projects"] +ListResourcesPaginatorName = Literal["list_resources"] +ListTeamMembersPaginatorName = Literal["list_team_members"] +ListUserProfilesPaginatorName = Literal["list_user_profiles"] +CodeStarServiceName = Literal["codestar"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_projects", "list_resources", "list_team_members", "list_user_profiles"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/codestar_notifications_classes.py b/aws_resource_validator/pydantic_models/codestar_notifications_classes.py new file mode 100644 index 00000000..e0e4b3e9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codestar_notifications_classes.py @@ -0,0 +1,184 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.codestar_notifications_constants import * + +class TargetTypeDef(BaseModel): + TargetType: Optional[str] = None + TargetAddress: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteNotificationRuleRequestRequestTypeDef(BaseModel): + Arn: str + +class DeleteTargetRequestRequestTypeDef(BaseModel): + TargetAddress: str + ForceUnsubscribeAll: Optional[bool] = None + +class DescribeNotificationRuleRequestRequestTypeDef(BaseModel): + Arn: str + +class EventTypeSummaryTypeDef(BaseModel): + EventTypeId: Optional[str] = None + ServiceName: Optional[str] = None + EventTypeName: Optional[str] = None + ResourceType: Optional[str] = None + +class TargetSummaryTypeDef(BaseModel): + TargetAddress: Optional[str] = None + TargetType: Optional[str] = None + TargetStatus: Optional[TargetStatusType] = None + +class ListEventTypesFilterTypeDef(BaseModel): + Name: ListEventTypesFilterNameType + Value: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListNotificationRulesFilterTypeDef(BaseModel): + Name: ListNotificationRulesFilterNameType + Value: str + +class NotificationRuleSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + Arn: str + +class ListTargetsFilterTypeDef(BaseModel): + Name: ListTargetsFilterNameType + Value: str + +class TagResourceRequestRequestTypeDef(BaseModel): + Arn: str + Tags: Mapping[str, str] + +class UnsubscribeRequestRequestTypeDef(BaseModel): + Arn: str + TargetAddress: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + Arn: str + TagKeys: Sequence[str] + +class CreateNotificationRuleRequestRequestTypeDef(BaseModel): + Name: str + EventTypeIds: Sequence[str] + Resource: str + Targets: Sequence[TargetTypeDef] + DetailType: DetailTypeType + ClientRequestToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + Status: Optional[NotificationRuleStatusType] = None + +class SubscribeRequestRequestTypeDef(BaseModel): + Arn: str + Target: TargetTypeDef + ClientRequestToken: Optional[str] = None + +class UpdateNotificationRuleRequestRequestTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + Status: Optional[NotificationRuleStatusType] = None + EventTypeIds: Optional[Sequence[str]] = None + Targets: Optional[Sequence[TargetTypeDef]] = None + DetailType: Optional[DetailTypeType] = None + +class CreateNotificationRuleResultTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNotificationRuleResultTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResultTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SubscribeResultTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceResultTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UnsubscribeResultTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventTypesResultTypeDef(BaseModel): + EventTypes: List[EventTypeSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNotificationRuleResultTypeDef(BaseModel): + Arn: str + Name: str + EventTypes: List[EventTypeSummaryTypeDef] + Resource: str + Targets: List[TargetSummaryTypeDef] + DetailType: DetailTypeType + CreatedBy: str + Status: NotificationRuleStatusType + CreatedTimestamp: datetime + LastModifiedTimestamp: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetsResultTypeDef(BaseModel): + Targets: List[TargetSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventTypesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ListEventTypesFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEventTypesRequestListEventTypesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ListEventTypesFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotificationRulesRequestListNotificationRulesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ListNotificationRulesFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotificationRulesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ListNotificationRulesFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListNotificationRulesResultTypeDef(BaseModel): + NextToken: str + NotificationRules: List[NotificationRuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetsRequestListTargetsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ListTargetsFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ListTargetsFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + diff --git a/aws_resource_validator/pydantic_models/codestar_notifications_constants.py b/aws_resource_validator/pydantic_models/codestar_notifications_constants.py new file mode 100644 index 00000000..c6787985 --- /dev/null +++ b/aws_resource_validator/pydantic_models/codestar_notifications_constants.py @@ -0,0 +1,416 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DetailTypeType = Literal["BASIC", "FULL"] +ListEventTypesFilterNameType = Literal["RESOURCE_TYPE", "SERVICE_NAME"] +ListEventTypesPaginatorName = Literal["list_event_types"] +ListNotificationRulesFilterNameType = Literal["CREATED_BY", "EVENT_TYPE_ID", "RESOURCE", "TARGET_ADDRESS"] +ListNotificationRulesPaginatorName = Literal["list_notification_rules"] +ListTargetsFilterNameType = Literal["TARGET_ADDRESS", "TARGET_STATUS", "TARGET_TYPE"] +ListTargetsPaginatorName = Literal["list_targets"] +NotificationRuleStatusType = Literal["DISABLED", "ENABLED"] +TargetStatusType = Literal["ACTIVE", "DEACTIVATED", "INACTIVE", "PENDING", "UNREACHABLE"] +CodeStarNotificationsServiceName = Literal["codestar-notifications"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_event_types", "list_notification_rules", "list_targets"] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cognito_identity_classes.py b/aws_resource_validator/pydantic_models/cognito_identity_classes.py new file mode 100644 index 00000000..bcc98cda --- /dev/null +++ b/aws_resource_validator/pydantic_models/cognito_identity_classes.py @@ -0,0 +1,285 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cognito_identity_constants import * + +class CognitoIdentityProviderTypeDef(BaseModel): + ProviderName: Optional[str] = None + ClientId: Optional[str] = None + ServerSideTokenCheck: Optional[bool] = None + +class CredentialsTypeDef(BaseModel): + AccessKeyId: Optional[str] = None + SecretKey: Optional[str] = None + SessionToken: Optional[str] = None + Expiration: Optional[datetime] = None + +class DeleteIdentitiesInputRequestTypeDef(BaseModel): + IdentityIdsToDelete: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UnprocessedIdentityIdTypeDef(BaseModel): + IdentityId: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + +class DeleteIdentityPoolInputRequestTypeDef(BaseModel): + IdentityPoolId: str + +class DescribeIdentityInputRequestTypeDef(BaseModel): + IdentityId: str + +class DescribeIdentityPoolInputRequestTypeDef(BaseModel): + IdentityPoolId: str + +class GetCredentialsForIdentityInputRequestTypeDef(BaseModel): + IdentityId: str + Logins: Optional[Mapping[str, str]] = None + CustomRoleArn: Optional[str] = None + +class GetIdInputRequestTypeDef(BaseModel): + IdentityPoolId: str + AccountId: Optional[str] = None + Logins: Optional[Mapping[str, str]] = None + +class GetIdentityPoolRolesInputRequestTypeDef(BaseModel): + IdentityPoolId: str + +class GetOpenIdTokenForDeveloperIdentityInputRequestTypeDef(BaseModel): + IdentityPoolId: str + Logins: Mapping[str, str] + IdentityId: Optional[str] = None + PrincipalTags: Optional[Mapping[str, str]] = None + TokenDuration: Optional[int] = None + +class GetOpenIdTokenInputRequestTypeDef(BaseModel): + IdentityId: str + Logins: Optional[Mapping[str, str]] = None + +class GetPrincipalTagAttributeMapInputRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityProviderName: str + +class IdentityDescriptionTypeDef(BaseModel): + IdentityId: Optional[str] = None + Logins: Optional[List[str]] = None + CreationDate: Optional[datetime] = None + LastModifiedDate: Optional[datetime] = None + +class IdentityPoolShortDescriptionTypeDef(BaseModel): + IdentityPoolId: Optional[str] = None + IdentityPoolName: Optional[str] = None + +class ListIdentitiesInputRequestTypeDef(BaseModel): + IdentityPoolId: str + MaxResults: int + NextToken: Optional[str] = None + HideDisabled: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListIdentityPoolsInputRequestTypeDef(BaseModel): + MaxResults: int + NextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class LookupDeveloperIdentityInputRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: Optional[str] = None + DeveloperUserIdentifier: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MappingRuleTypeDef(BaseModel): + Claim: str + MatchType: MappingRuleMatchTypeType + Value: str + RoleARN: str + +class MergeDeveloperIdentitiesInputRequestTypeDef(BaseModel): + SourceUserIdentifier: str + DestinationUserIdentifier: str + DeveloperProviderName: str + IdentityPoolId: str + +class SetPrincipalTagAttributeMapInputRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityProviderName: str + UseDefaults: Optional[bool] = None + PrincipalTags: Optional[Mapping[str, str]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UnlinkDeveloperIdentityInputRequestTypeDef(BaseModel): + IdentityId: str + IdentityPoolId: str + DeveloperProviderName: str + DeveloperUserIdentifier: str + +class UnlinkIdentityInputRequestTypeDef(BaseModel): + IdentityId: str + Logins: Mapping[str, str] + LoginsToRemove: Sequence[str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class CreateIdentityPoolInputRequestTypeDef(BaseModel): + IdentityPoolName: str + AllowUnauthenticatedIdentities: bool + AllowClassicFlow: Optional[bool] = None + SupportedLoginProviders: Optional[Mapping[str, str]] = None + DeveloperProviderName: Optional[str] = None + OpenIdConnectProviderARNs: Optional[Sequence[str]] = None + CognitoIdentityProviders: Optional[Sequence[CognitoIdentityProviderTypeDef]] = None + SamlProviderARNs: Optional[Sequence[str]] = None + IdentityPoolTags: Optional[Mapping[str, str]] = None + +class IdentityPoolRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityPoolName: str + AllowUnauthenticatedIdentities: bool + AllowClassicFlow: Optional[bool] = None + SupportedLoginProviders: Optional[Mapping[str, str]] = None + DeveloperProviderName: Optional[str] = None + OpenIdConnectProviderARNs: Optional[Sequence[str]] = None + CognitoIdentityProviders: Optional[Sequence[CognitoIdentityProviderTypeDef]] = None + SamlProviderARNs: Optional[Sequence[str]] = None + IdentityPoolTags: Optional[Mapping[str, str]] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCredentialsForIdentityResponseTypeDef(BaseModel): + IdentityId: str + Credentials: CredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdResponseTypeDef(BaseModel): + IdentityId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOpenIdTokenForDeveloperIdentityResponseTypeDef(BaseModel): + IdentityId: str + Token: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOpenIdTokenResponseTypeDef(BaseModel): + IdentityId: str + Token: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPrincipalTagAttributeMapResponseTypeDef(BaseModel): + IdentityPoolId: str + IdentityProviderName: str + UseDefaults: bool + PrincipalTags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class IdentityDescriptionResponseTypeDef(BaseModel): + IdentityId: str + Logins: List[str] + CreationDate: datetime + LastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class IdentityPoolTypeDef(BaseModel): + IdentityPoolId: str + IdentityPoolName: str + AllowUnauthenticatedIdentities: bool + AllowClassicFlow: bool + SupportedLoginProviders: Dict[str, str] + DeveloperProviderName: str + OpenIdConnectProviderARNs: List[str] + CognitoIdentityProviders: List[CognitoIdentityProviderTypeDef] + SamlProviderARNs: List[str] + IdentityPoolTags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class LookupDeveloperIdentityResponseTypeDef(BaseModel): + IdentityId: str + DeveloperUserIdentifierList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MergeDeveloperIdentitiesResponseTypeDef(BaseModel): + IdentityId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetPrincipalTagAttributeMapResponseTypeDef(BaseModel): + IdentityPoolId: str + IdentityProviderName: str + UseDefaults: bool + PrincipalTags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIdentitiesResponseTypeDef(BaseModel): + UnprocessedIdentityIds: List[UnprocessedIdentityIdTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdentitiesResponseTypeDef(BaseModel): + IdentityPoolId: str + Identities: List[IdentityDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIdentityPoolsResponseTypeDef(BaseModel): + IdentityPools: List[IdentityPoolShortDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIdentityPoolsInputListIdentityPoolsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class RulesConfigurationTypeOutputTypeDef(BaseModel): + Rules: List[MappingRuleTypeDef] + +class RulesConfigurationTypeTypeDef(BaseModel): + Rules: Sequence[MappingRuleTypeDef] + +class RoleMappingOutputTypeDef(BaseModel): + Type: RoleMappingTypeType + AmbiguousRoleResolution: Optional[AmbiguousRoleResolutionTypeType] = None + RulesConfiguration: Optional[RulesConfigurationTypeOutputTypeDef] = None + +class RoleMappingTypeDef(BaseModel): + Type: RoleMappingTypeType + AmbiguousRoleResolution: Optional[AmbiguousRoleResolutionTypeType] = None + RulesConfiguration: Optional[RulesConfigurationTypeTypeDef] = None + +class GetIdentityPoolRolesResponseTypeDef(BaseModel): + IdentityPoolId: str + Roles: Dict[str, str] + RoleMappings: Dict[str, RoleMappingOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetIdentityPoolRolesInputRequestTypeDef(BaseModel): + IdentityPoolId: str + Roles: Mapping[str, str] + RoleMappings: Optional[Mapping[str, RoleMappingUnionTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/cognito_identity_constants.py b/aws_resource_validator/pydantic_models/cognito_identity_constants.py new file mode 100644 index 00000000..8f66161b --- /dev/null +++ b/aws_resource_validator/pydantic_models/cognito_identity_constants.py @@ -0,0 +1,433 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AmbiguousRoleResolutionTypeType = Literal["AuthenticatedRole", "Deny"] +ErrorCodeType = Literal["AccessDenied", "InternalServerError"] +ListIdentityPoolsPaginatorName = Literal["list_identity_pools"] +MappingRuleMatchTypeType = Literal["Contains", "Equals", "NotEqual", "StartsWith"] +RoleMappingTypeType = Literal["Rules", "Token"] +CognitoIdentityServiceName = Literal["cognito-identity"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_identity_pools"] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +RoleMappingUnionTypeDef = Union['RoleMappingTypeDef', 'RoleMappingOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/cognito_idp_classes.py b/aws_resource_validator/pydantic_models/cognito_idp_classes.py new file mode 100644 index 00000000..767cbb7e --- /dev/null +++ b/aws_resource_validator/pydantic_models/cognito_idp_classes.py @@ -0,0 +1,1421 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cognito_idp_constants import * + +class RecoveryOptionTypeTypeDef(BaseModel): + Priority: int + Name: RecoveryOptionNameTypeType + +class AccountTakeoverActionTypeTypeDef(BaseModel): + Notify: bool + EventAction: AccountTakeoverEventActionTypeType + +class AdminAddUserToGroupRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + GroupName: str + +class AdminConfirmSignUpRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + ClientMetadata: Optional[Mapping[str, str]] = None + +class MessageTemplateTypeTypeDef(BaseModel): + SMSMessage: Optional[str] = None + EmailMessage: Optional[str] = None + EmailSubject: Optional[str] = None + +class AttributeTypeTypeDef(BaseModel): + Name: str + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AdminDeleteUserAttributesRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + UserAttributeNames: Sequence[str] + +class AdminDeleteUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + +class ProviderUserIdentifierTypeTypeDef(BaseModel): + ProviderName: Optional[str] = None + ProviderAttributeName: Optional[str] = None + ProviderAttributeValue: Optional[str] = None + +class AdminDisableUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + +class AdminEnableUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + +class AdminForgetDeviceRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + DeviceKey: str + +class AdminGetDeviceRequestRequestTypeDef(BaseModel): + DeviceKey: str + UserPoolId: str + Username: str + +class AdminGetUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + +class MFAOptionTypeTypeDef(BaseModel): + DeliveryMedium: Optional[DeliveryMediumTypeType] = None + AttributeName: Optional[str] = None + +class AnalyticsMetadataTypeTypeDef(BaseModel): + AnalyticsEndpointId: Optional[str] = None + +class AdminListDevicesRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + Limit: Optional[int] = None + PaginationToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class AdminListGroupsForUserRequestRequestTypeDef(BaseModel): + Username: str + UserPoolId: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GroupTypeTypeDef(BaseModel): + GroupName: Optional[str] = None + UserPoolId: Optional[str] = None + Description: Optional[str] = None + RoleArn: Optional[str] = None + Precedence: Optional[int] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + +class AdminListUserAuthEventsRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class AdminRemoveUserFromGroupRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + GroupName: str + +class AdminResetUserPasswordRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + ClientMetadata: Optional[Mapping[str, str]] = None + +class SMSMfaSettingsTypeTypeDef(BaseModel): + Enabled: Optional[bool] = None + PreferredMfa: Optional[bool] = None + +class SoftwareTokenMfaSettingsTypeTypeDef(BaseModel): + Enabled: Optional[bool] = None + PreferredMfa: Optional[bool] = None + +class AdminSetUserPasswordRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + Password: str + Permanent: Optional[bool] = None + +class AdminUpdateAuthEventFeedbackRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + EventId: str + FeedbackValue: FeedbackValueTypeType + +class AdminUpdateDeviceStatusRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + DeviceKey: str + DeviceRememberedStatus: Optional[DeviceRememberedStatusTypeType] = None + +class AdminUserGlobalSignOutRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + +class AnalyticsConfigurationTypeTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ApplicationArn: Optional[str] = None + RoleArn: Optional[str] = None + ExternalId: Optional[str] = None + UserDataShared: Optional[bool] = None + +class AssociateSoftwareTokenRequestRequestTypeDef(BaseModel): + AccessToken: Optional[str] = None + Session: Optional[str] = None + +class ChallengeResponseTypeTypeDef(BaseModel): + ChallengeName: Optional[ChallengeNameType] = None + ChallengeResponse: Optional[ChallengeResponseType] = None + +class EventContextDataTypeTypeDef(BaseModel): + IpAddress: Optional[str] = None + DeviceName: Optional[str] = None + Timezone: Optional[str] = None + City: Optional[str] = None + Country: Optional[str] = None + +class EventFeedbackTypeTypeDef(BaseModel): + FeedbackValue: FeedbackValueTypeType + Provider: str + FeedbackDate: Optional[datetime] = None + +class EventRiskTypeTypeDef(BaseModel): + RiskDecision: Optional[RiskDecisionTypeType] = None + RiskLevel: Optional[RiskLevelTypeType] = None + CompromisedCredentialsDetected: Optional[bool] = None + +class NewDeviceMetadataTypeTypeDef(BaseModel): + DeviceKey: Optional[str] = None + DeviceGroupKey: Optional[str] = None + +class ChangePasswordRequestRequestTypeDef(BaseModel): + PreviousPassword: str + ProposedPassword: str + AccessToken: str + +class CloudWatchLogsConfigurationTypeTypeDef(BaseModel): + LogGroupArn: Optional[str] = None + +class CodeDeliveryDetailsTypeTypeDef(BaseModel): + Destination: Optional[str] = None + DeliveryMedium: Optional[DeliveryMediumTypeType] = None + AttributeName: Optional[str] = None + +class CompromisedCredentialsActionsTypeTypeDef(BaseModel): + EventAction: CompromisedCredentialsEventActionTypeType + +class DeviceSecretVerifierConfigTypeTypeDef(BaseModel): + PasswordVerifier: Optional[str] = None + Salt: Optional[str] = None + +class UserContextDataTypeTypeDef(BaseModel): + IpAddress: Optional[str] = None + EncodedData: Optional[str] = None + +class HttpHeaderTypeDef(BaseModel): + headerName: Optional[str] = None + headerValue: Optional[str] = None + +class CreateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + UserPoolId: str + Description: Optional[str] = None + RoleArn: Optional[str] = None + Precedence: Optional[int] = None + +class CreateIdentityProviderRequestRequestTypeDef(BaseModel): + UserPoolId: str + ProviderName: str + ProviderType: IdentityProviderTypeTypeType + ProviderDetails: Mapping[str, str] + AttributeMapping: Optional[Mapping[str, str]] = None + IdpIdentifiers: Optional[Sequence[str]] = None + +class IdentityProviderTypeTypeDef(BaseModel): + UserPoolId: Optional[str] = None + ProviderName: Optional[str] = None + ProviderType: Optional[IdentityProviderTypeTypeType] = None + ProviderDetails: Optional[Dict[str, str]] = None + AttributeMapping: Optional[Dict[str, str]] = None + IdpIdentifiers: Optional[List[str]] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + +class ResourceServerScopeTypeTypeDef(BaseModel): + ScopeName: str + ScopeDescription: str + +class CreateUserImportJobRequestRequestTypeDef(BaseModel): + JobName: str + UserPoolId: str + CloudWatchLogsRoleArn: str + +class UserImportJobTypeTypeDef(BaseModel): + JobName: Optional[str] = None + JobId: Optional[str] = None + UserPoolId: Optional[str] = None + PreSignedUrl: Optional[str] = None + CreationDate: Optional[datetime] = None + StartDate: Optional[datetime] = None + CompletionDate: Optional[datetime] = None + Status: Optional[UserImportJobStatusTypeType] = None + CloudWatchLogsRoleArn: Optional[str] = None + ImportedUsers: Optional[int] = None + SkippedUsers: Optional[int] = None + FailedUsers: Optional[int] = None + CompletionMessage: Optional[str] = None + +class TokenValidityUnitsTypeTypeDef(BaseModel): + AccessToken: Optional[TimeUnitsTypeType] = None + IdToken: Optional[TimeUnitsTypeType] = None + RefreshToken: Optional[TimeUnitsTypeType] = None + +class CustomDomainConfigTypeTypeDef(BaseModel): + CertificateArn: str + +class DeviceConfigurationTypeTypeDef(BaseModel): + ChallengeRequiredOnNewDevice: Optional[bool] = None + DeviceOnlyRememberedOnUserPrompt: Optional[bool] = None + +class EmailConfigurationTypeTypeDef(BaseModel): + SourceArn: Optional[str] = None + ReplyToEmailAddress: Optional[str] = None + EmailSendingAccount: Optional[EmailSendingAccountTypeType] = None + From: Optional[str] = None + ConfigurationSet: Optional[str] = None + +class SmsConfigurationTypeTypeDef(BaseModel): + SnsCallerArn: str + ExternalId: Optional[str] = None + SnsRegion: Optional[str] = None + +class UserAttributeUpdateSettingsTypeTypeDef(BaseModel): + AttributesRequireVerificationBeforeUpdate: Optional[ Sequence[VerifiedAttributeTypeType] ] = None + +class UserPoolAddOnsTypeTypeDef(BaseModel): + AdvancedSecurityMode: AdvancedSecurityModeTypeType + +class UsernameConfigurationTypeTypeDef(BaseModel): + CaseSensitive: bool + +class VerificationMessageTemplateTypeTypeDef(BaseModel): + SmsMessage: Optional[str] = None + EmailMessage: Optional[str] = None + EmailSubject: Optional[str] = None + EmailMessageByLink: Optional[str] = None + EmailSubjectByLink: Optional[str] = None + DefaultEmailOption: Optional[DefaultEmailOptionTypeType] = None + +class CustomEmailLambdaVersionConfigTypeTypeDef(BaseModel): + LambdaVersion: Literal["V1_0"] + LambdaArn: str + +class CustomSMSLambdaVersionConfigTypeTypeDef(BaseModel): + LambdaVersion: Literal["V1_0"] + LambdaArn: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + GroupName: str + UserPoolId: str + +class DeleteIdentityProviderRequestRequestTypeDef(BaseModel): + UserPoolId: str + ProviderName: str + +class DeleteResourceServerRequestRequestTypeDef(BaseModel): + UserPoolId: str + Identifier: str + +class DeleteUserAttributesRequestRequestTypeDef(BaseModel): + UserAttributeNames: Sequence[str] + AccessToken: str + +class DeleteUserPoolClientRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: str + +class DeleteUserPoolDomainRequestRequestTypeDef(BaseModel): + Domain: str + UserPoolId: str + +class DeleteUserPoolRequestRequestTypeDef(BaseModel): + UserPoolId: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + AccessToken: str + +class DescribeIdentityProviderRequestRequestTypeDef(BaseModel): + UserPoolId: str + ProviderName: str + +class DescribeResourceServerRequestRequestTypeDef(BaseModel): + UserPoolId: str + Identifier: str + +class DescribeRiskConfigurationRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: Optional[str] = None + +class DescribeUserImportJobRequestRequestTypeDef(BaseModel): + UserPoolId: str + JobId: str + +class DescribeUserPoolClientRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: str + +class DescribeUserPoolDomainRequestRequestTypeDef(BaseModel): + Domain: str + +class DescribeUserPoolRequestRequestTypeDef(BaseModel): + UserPoolId: str + +class ForgetDeviceRequestRequestTypeDef(BaseModel): + DeviceKey: str + AccessToken: Optional[str] = None + +class GetCSVHeaderRequestRequestTypeDef(BaseModel): + UserPoolId: str + +class GetDeviceRequestRequestTypeDef(BaseModel): + DeviceKey: str + AccessToken: Optional[str] = None + +class GetGroupRequestRequestTypeDef(BaseModel): + GroupName: str + UserPoolId: str + +class GetIdentityProviderByIdentifierRequestRequestTypeDef(BaseModel): + UserPoolId: str + IdpIdentifier: str + +class GetLogDeliveryConfigurationRequestRequestTypeDef(BaseModel): + UserPoolId: str + +class GetSigningCertificateRequestRequestTypeDef(BaseModel): + UserPoolId: str + +class GetUICustomizationRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: Optional[str] = None + +class UICustomizationTypeTypeDef(BaseModel): + UserPoolId: Optional[str] = None + ClientId: Optional[str] = None + ImageUrl: Optional[str] = None + CSS: Optional[str] = None + CSSVersion: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + +class GetUserAttributeVerificationCodeRequestRequestTypeDef(BaseModel): + AccessToken: str + AttributeName: str + ClientMetadata: Optional[Mapping[str, str]] = None + +class GetUserPoolMfaConfigRequestRequestTypeDef(BaseModel): + UserPoolId: str + +class SoftwareTokenMfaConfigTypeTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class GetUserRequestRequestTypeDef(BaseModel): + AccessToken: str + +class GlobalSignOutRequestRequestTypeDef(BaseModel): + AccessToken: str + +class PreTokenGenerationVersionConfigTypeTypeDef(BaseModel): + LambdaVersion: PreTokenGenerationLambdaVersionTypeType + LambdaArn: str + +class ListDevicesRequestRequestTypeDef(BaseModel): + AccessToken: str + Limit: Optional[int] = None + PaginationToken: Optional[str] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + UserPoolId: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListIdentityProvidersRequestRequestTypeDef(BaseModel): + UserPoolId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ProviderDescriptionTypeDef(BaseModel): + ProviderName: Optional[str] = None + ProviderType: Optional[IdentityProviderTypeTypeType] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + +class ListResourceServersRequestRequestTypeDef(BaseModel): + UserPoolId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListUserImportJobsRequestRequestTypeDef(BaseModel): + UserPoolId: str + MaxResults: int + PaginationToken: Optional[str] = None + +class ListUserPoolClientsRequestRequestTypeDef(BaseModel): + UserPoolId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UserPoolClientDescriptionTypeDef(BaseModel): + ClientId: Optional[str] = None + UserPoolId: Optional[str] = None + ClientName: Optional[str] = None + +class ListUserPoolsRequestRequestTypeDef(BaseModel): + MaxResults: int + NextToken: Optional[str] = None + +class ListUsersInGroupRequestRequestTypeDef(BaseModel): + UserPoolId: str + GroupName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + UserPoolId: str + AttributesToGet: Optional[Sequence[str]] = None + Limit: Optional[int] = None + PaginationToken: Optional[str] = None + Filter: Optional[str] = None + +class NotifyEmailTypeTypeDef(BaseModel): + Subject: str + HtmlBody: Optional[str] = None + TextBody: Optional[str] = None + +class NumberAttributeConstraintsTypeTypeDef(BaseModel): + MinValue: Optional[str] = None + MaxValue: Optional[str] = None + +class PasswordPolicyTypeTypeDef(BaseModel): + MinimumLength: Optional[int] = None + RequireUppercase: Optional[bool] = None + RequireLowercase: Optional[bool] = None + RequireNumbers: Optional[bool] = None + RequireSymbols: Optional[bool] = None + TemporaryPasswordValidityDays: Optional[int] = None + +class RevokeTokenRequestRequestTypeDef(BaseModel): + Token: str + ClientId: str + ClientSecret: Optional[str] = None + +class RiskExceptionConfigurationTypeOutputTypeDef(BaseModel): + BlockedIPRangeList: Optional[List[str]] = None + SkippedIPRangeList: Optional[List[str]] = None + +class RiskExceptionConfigurationTypeTypeDef(BaseModel): + BlockedIPRangeList: Optional[Sequence[str]] = None + SkippedIPRangeList: Optional[Sequence[str]] = None + +class StringAttributeConstraintsTypeTypeDef(BaseModel): + MinLength: Optional[str] = None + MaxLength: Optional[str] = None + +class StartUserImportJobRequestRequestTypeDef(BaseModel): + UserPoolId: str + JobId: str + +class StopUserImportJobRequestRequestTypeDef(BaseModel): + UserPoolId: str + JobId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAuthEventFeedbackRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + EventId: str + FeedbackToken: str + FeedbackValue: FeedbackValueTypeType + +class UpdateDeviceStatusRequestRequestTypeDef(BaseModel): + AccessToken: str + DeviceKey: str + DeviceRememberedStatus: Optional[DeviceRememberedStatusTypeType] = None + +class UpdateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + UserPoolId: str + Description: Optional[str] = None + RoleArn: Optional[str] = None + Precedence: Optional[int] = None + +class UpdateIdentityProviderRequestRequestTypeDef(BaseModel): + UserPoolId: str + ProviderName: str + ProviderDetails: Optional[Mapping[str, str]] = None + AttributeMapping: Optional[Mapping[str, str]] = None + IdpIdentifiers: Optional[Sequence[str]] = None + +class UserAttributeUpdateSettingsTypeOutputTypeDef(BaseModel): + AttributesRequireVerificationBeforeUpdate: Optional[List[VerifiedAttributeTypeType]] = None + +class VerifySoftwareTokenRequestRequestTypeDef(BaseModel): + UserCode: str + AccessToken: Optional[str] = None + Session: Optional[str] = None + FriendlyDeviceName: Optional[str] = None + +class VerifyUserAttributeRequestRequestTypeDef(BaseModel): + AccessToken: str + AttributeName: str + Code: str + +class AccountRecoverySettingTypeOutputTypeDef(BaseModel): + RecoveryMechanisms: Optional[List[RecoveryOptionTypeTypeDef]] = None + +class AccountRecoverySettingTypeTypeDef(BaseModel): + RecoveryMechanisms: Optional[Sequence[RecoveryOptionTypeTypeDef]] = None + +class AccountTakeoverActionsTypeTypeDef(BaseModel): + LowAction: Optional[AccountTakeoverActionTypeTypeDef] = None + MediumAction: Optional[AccountTakeoverActionTypeTypeDef] = None + HighAction: Optional[AccountTakeoverActionTypeTypeDef] = None + +class AdminCreateUserConfigTypeTypeDef(BaseModel): + AllowAdminCreateUserOnly: Optional[bool] = None + UnusedAccountValidityDays: Optional[int] = None + InviteMessageTemplate: Optional[MessageTemplateTypeTypeDef] = None + +class AdminCreateUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + UserAttributes: Optional[Sequence[AttributeTypeTypeDef]] = None + ValidationData: Optional[Sequence[AttributeTypeTypeDef]] = None + TemporaryPassword: Optional[str] = None + ForceAliasCreation: Optional[bool] = None + MessageAction: Optional[MessageActionTypeType] = None + DesiredDeliveryMediums: Optional[Sequence[DeliveryMediumTypeType]] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class AdminUpdateUserAttributesRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + UserAttributes: Sequence[AttributeTypeTypeDef] + ClientMetadata: Optional[Mapping[str, str]] = None + +class DeviceTypeTypeDef(BaseModel): + DeviceKey: Optional[str] = None + DeviceAttributes: Optional[List[AttributeTypeTypeDef]] = None + DeviceCreateDate: Optional[datetime] = None + DeviceLastModifiedDate: Optional[datetime] = None + DeviceLastAuthenticatedDate: Optional[datetime] = None + +class UpdateUserAttributesRequestRequestTypeDef(BaseModel): + UserAttributes: Sequence[AttributeTypeTypeDef] + AccessToken: str + ClientMetadata: Optional[Mapping[str, str]] = None + +class AssociateSoftwareTokenResponseTypeDef(BaseModel): + SecretCode: str + Session: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmDeviceResponseTypeDef(BaseModel): + UserConfirmationNecessary: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserPoolDomainResponseTypeDef(BaseModel): + CloudFrontDomain: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCSVHeaderResponseTypeDef(BaseModel): + UserPoolId: str + CSVHeader: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSigningCertificateResponseTypeDef(BaseModel): + Certificate: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserPoolDomainResponseTypeDef(BaseModel): + CloudFrontDomain: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifySoftwareTokenResponseTypeDef(BaseModel): + Status: VerifySoftwareTokenResponseTypeType + Session: str + ResponseMetadata: ResponseMetadataTypeDef + +class AdminDisableProviderForUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + User: ProviderUserIdentifierTypeTypeDef + +class AdminLinkProviderForUserRequestRequestTypeDef(BaseModel): + UserPoolId: str + DestinationUser: ProviderUserIdentifierTypeTypeDef + SourceUser: ProviderUserIdentifierTypeTypeDef + +class AdminGetUserResponseTypeDef(BaseModel): + Username: str + UserAttributes: List[AttributeTypeTypeDef] + UserCreateDate: datetime + UserLastModifiedDate: datetime + Enabled: bool + UserStatus: UserStatusTypeType + MFAOptions: List[MFAOptionTypeTypeDef] + PreferredMfaSetting: str + UserMFASettingList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class AdminSetUserSettingsRequestRequestTypeDef(BaseModel): + UserPoolId: str + Username: str + MFAOptions: Sequence[MFAOptionTypeTypeDef] + +class GetUserResponseTypeDef(BaseModel): + Username: str + UserAttributes: List[AttributeTypeTypeDef] + MFAOptions: List[MFAOptionTypeTypeDef] + PreferredMfaSetting: str + UserMFASettingList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class SetUserSettingsRequestRequestTypeDef(BaseModel): + AccessToken: str + MFAOptions: Sequence[MFAOptionTypeTypeDef] + +class UserTypeTypeDef(BaseModel): + Username: Optional[str] = None + Attributes: Optional[List[AttributeTypeTypeDef]] = None + UserCreateDate: Optional[datetime] = None + UserLastModifiedDate: Optional[datetime] = None + Enabled: Optional[bool] = None + UserStatus: Optional[UserStatusTypeType] = None + MFAOptions: Optional[List[MFAOptionTypeTypeDef]] = None + +class AdminListGroupsForUserRequestAdminListGroupsForUserPaginateTypeDef(BaseModel): + Username: str + UserPoolId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class AdminListUserAuthEventsRequestAdminListUserAuthEventsPaginateTypeDef(BaseModel): + UserPoolId: str + Username: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + UserPoolId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIdentityProvidersRequestListIdentityProvidersPaginateTypeDef(BaseModel): + UserPoolId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceServersRequestListResourceServersPaginateTypeDef(BaseModel): + UserPoolId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserPoolClientsRequestListUserPoolClientsPaginateTypeDef(BaseModel): + UserPoolId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserPoolsRequestListUserPoolsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersInGroupRequestListUsersInGroupPaginateTypeDef(BaseModel): + UserPoolId: str + GroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + UserPoolId: str + AttributesToGet: Optional[Sequence[str]] = None + Filter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class AdminListGroupsForUserResponseTypeDef(BaseModel): + Groups: List[GroupTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateGroupResponseTypeDef(BaseModel): + Group: GroupTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupResponseTypeDef(BaseModel): + Group: GroupTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsResponseTypeDef(BaseModel): + Groups: List[GroupTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateGroupResponseTypeDef(BaseModel): + Group: GroupTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AdminSetUserMFAPreferenceRequestRequestTypeDef(BaseModel): + Username: str + UserPoolId: str + SMSMfaSettings: Optional[SMSMfaSettingsTypeTypeDef] = None + SoftwareTokenMfaSettings: Optional[SoftwareTokenMfaSettingsTypeTypeDef] = None + +class SetUserMFAPreferenceRequestRequestTypeDef(BaseModel): + AccessToken: str + SMSMfaSettings: Optional[SMSMfaSettingsTypeTypeDef] = None + SoftwareTokenMfaSettings: Optional[SoftwareTokenMfaSettingsTypeTypeDef] = None + +class AuthEventTypeTypeDef(BaseModel): + EventId: Optional[str] = None + EventType: Optional[EventTypeType] = None + CreationDate: Optional[datetime] = None + EventResponse: Optional[EventResponseTypeType] = None + EventRisk: Optional[EventRiskTypeTypeDef] = None + ChallengeResponses: Optional[List[ChallengeResponseTypeTypeDef]] = None + EventContextData: Optional[EventContextDataTypeTypeDef] = None + EventFeedback: Optional[EventFeedbackTypeTypeDef] = None + +class AuthenticationResultTypeTypeDef(BaseModel): + AccessToken: Optional[str] = None + ExpiresIn: Optional[int] = None + TokenType: Optional[str] = None + RefreshToken: Optional[str] = None + IdToken: Optional[str] = None + NewDeviceMetadata: Optional[NewDeviceMetadataTypeTypeDef] = None + +class SetUICustomizationRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: Optional[str] = None + CSS: Optional[str] = None + ImageFile: Optional[BlobTypeDef] = None + +class LogConfigurationTypeTypeDef(BaseModel): + LogLevel: Literal["ERROR"] + EventSource: Literal["userNotification"] + CloudWatchLogsConfiguration: Optional[CloudWatchLogsConfigurationTypeTypeDef] = None + +class ForgotPasswordResponseTypeDef(BaseModel): + CodeDeliveryDetails: CodeDeliveryDetailsTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserAttributeVerificationCodeResponseTypeDef(BaseModel): + CodeDeliveryDetails: CodeDeliveryDetailsTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResendConfirmationCodeResponseTypeDef(BaseModel): + CodeDeliveryDetails: CodeDeliveryDetailsTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SignUpResponseTypeDef(BaseModel): + UserConfirmed: bool + CodeDeliveryDetails: CodeDeliveryDetailsTypeTypeDef + UserSub: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserAttributesResponseTypeDef(BaseModel): + CodeDeliveryDetailsList: List[CodeDeliveryDetailsTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CompromisedCredentialsRiskConfigurationTypeOutputTypeDef(BaseModel): + Actions: CompromisedCredentialsActionsTypeTypeDef + EventFilter: Optional[List[EventFilterTypeType]] = None + +class CompromisedCredentialsRiskConfigurationTypeTypeDef(BaseModel): + Actions: CompromisedCredentialsActionsTypeTypeDef + EventFilter: Optional[Sequence[EventFilterTypeType]] = None + +class ConfirmDeviceRequestRequestTypeDef(BaseModel): + AccessToken: str + DeviceKey: str + DeviceSecretVerifierConfig: Optional[DeviceSecretVerifierConfigTypeTypeDef] = None + DeviceName: Optional[str] = None + +class ConfirmForgotPasswordRequestRequestTypeDef(BaseModel): + ClientId: str + Username: str + ConfirmationCode: str + Password: str + SecretHash: Optional[str] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class ConfirmSignUpRequestRequestTypeDef(BaseModel): + ClientId: str + Username: str + ConfirmationCode: str + SecretHash: Optional[str] = None + ForceAliasCreation: Optional[bool] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class ForgotPasswordRequestRequestTypeDef(BaseModel): + ClientId: str + Username: str + SecretHash: Optional[str] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class InitiateAuthRequestRequestTypeDef(BaseModel): + AuthFlow: AuthFlowTypeType + ClientId: str + AuthParameters: Optional[Mapping[str, str]] = None + ClientMetadata: Optional[Mapping[str, str]] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + +class ResendConfirmationCodeRequestRequestTypeDef(BaseModel): + ClientId: str + Username: str + SecretHash: Optional[str] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class RespondToAuthChallengeRequestRequestTypeDef(BaseModel): + ClientId: str + ChallengeName: ChallengeNameTypeType + Session: Optional[str] = None + ChallengeResponses: Optional[Mapping[str, str]] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class SignUpRequestRequestTypeDef(BaseModel): + ClientId: str + Username: str + Password: str + SecretHash: Optional[str] = None + UserAttributes: Optional[Sequence[AttributeTypeTypeDef]] = None + ValidationData: Optional[Sequence[AttributeTypeTypeDef]] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + UserContextData: Optional[UserContextDataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class ContextDataTypeTypeDef(BaseModel): + IpAddress: str + ServerName: str + ServerPath: str + HttpHeaders: Sequence[HttpHeaderTypeDef] + EncodedData: Optional[str] = None + +class CreateIdentityProviderResponseTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIdentityProviderResponseTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityProviderByIdentifierResponseTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdentityProviderResponseTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceServerRequestRequestTypeDef(BaseModel): + UserPoolId: str + Identifier: str + Name: str + Scopes: Optional[Sequence[ResourceServerScopeTypeTypeDef]] = None + +class ResourceServerTypeTypeDef(BaseModel): + UserPoolId: Optional[str] = None + Identifier: Optional[str] = None + Name: Optional[str] = None + Scopes: Optional[List[ResourceServerScopeTypeTypeDef]] = None + +class UpdateResourceServerRequestRequestTypeDef(BaseModel): + UserPoolId: str + Identifier: str + Name: str + Scopes: Optional[Sequence[ResourceServerScopeTypeTypeDef]] = None + +class CreateUserImportJobResponseTypeDef(BaseModel): + UserImportJob: UserImportJobTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserImportJobResponseTypeDef(BaseModel): + UserImportJob: UserImportJobTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserImportJobsResponseTypeDef(BaseModel): + UserImportJobs: List[UserImportJobTypeTypeDef] + PaginationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartUserImportJobResponseTypeDef(BaseModel): + UserImportJob: UserImportJobTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopUserImportJobResponseTypeDef(BaseModel): + UserImportJob: UserImportJobTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserPoolClientRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientName: str + GenerateSecret: Optional[bool] = None + RefreshTokenValidity: Optional[int] = None + AccessTokenValidity: Optional[int] = None + IdTokenValidity: Optional[int] = None + TokenValidityUnits: Optional[TokenValidityUnitsTypeTypeDef] = None + ReadAttributes: Optional[Sequence[str]] = None + WriteAttributes: Optional[Sequence[str]] = None + ExplicitAuthFlows: Optional[Sequence[ExplicitAuthFlowsTypeType]] = None + SupportedIdentityProviders: Optional[Sequence[str]] = None + CallbackURLs: Optional[Sequence[str]] = None + LogoutURLs: Optional[Sequence[str]] = None + DefaultRedirectURI: Optional[str] = None + AllowedOAuthFlows: Optional[Sequence[OAuthFlowTypeType]] = None + AllowedOAuthScopes: Optional[Sequence[str]] = None + AllowedOAuthFlowsUserPoolClient: Optional[bool] = None + AnalyticsConfiguration: Optional[AnalyticsConfigurationTypeTypeDef] = None + PreventUserExistenceErrors: Optional[PreventUserExistenceErrorTypesType] = None + EnableTokenRevocation: Optional[bool] = None + EnablePropagateAdditionalUserContextData: Optional[bool] = None + AuthSessionValidity: Optional[int] = None + +class UpdateUserPoolClientRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: str + ClientName: Optional[str] = None + RefreshTokenValidity: Optional[int] = None + AccessTokenValidity: Optional[int] = None + IdTokenValidity: Optional[int] = None + TokenValidityUnits: Optional[TokenValidityUnitsTypeTypeDef] = None + ReadAttributes: Optional[Sequence[str]] = None + WriteAttributes: Optional[Sequence[str]] = None + ExplicitAuthFlows: Optional[Sequence[ExplicitAuthFlowsTypeType]] = None + SupportedIdentityProviders: Optional[Sequence[str]] = None + CallbackURLs: Optional[Sequence[str]] = None + LogoutURLs: Optional[Sequence[str]] = None + DefaultRedirectURI: Optional[str] = None + AllowedOAuthFlows: Optional[Sequence[OAuthFlowTypeType]] = None + AllowedOAuthScopes: Optional[Sequence[str]] = None + AllowedOAuthFlowsUserPoolClient: Optional[bool] = None + AnalyticsConfiguration: Optional[AnalyticsConfigurationTypeTypeDef] = None + PreventUserExistenceErrors: Optional[PreventUserExistenceErrorTypesType] = None + EnableTokenRevocation: Optional[bool] = None + EnablePropagateAdditionalUserContextData: Optional[bool] = None + AuthSessionValidity: Optional[int] = None + +class UserPoolClientTypeTypeDef(BaseModel): + UserPoolId: Optional[str] = None + ClientName: Optional[str] = None + ClientId: Optional[str] = None + ClientSecret: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + RefreshTokenValidity: Optional[int] = None + AccessTokenValidity: Optional[int] = None + IdTokenValidity: Optional[int] = None + TokenValidityUnits: Optional[TokenValidityUnitsTypeTypeDef] = None + ReadAttributes: Optional[List[str]] = None + WriteAttributes: Optional[List[str]] = None + ExplicitAuthFlows: Optional[List[ExplicitAuthFlowsTypeType]] = None + SupportedIdentityProviders: Optional[List[str]] = None + CallbackURLs: Optional[List[str]] = None + LogoutURLs: Optional[List[str]] = None + DefaultRedirectURI: Optional[str] = None + AllowedOAuthFlows: Optional[List[OAuthFlowTypeType]] = None + AllowedOAuthScopes: Optional[List[str]] = None + AllowedOAuthFlowsUserPoolClient: Optional[bool] = None + AnalyticsConfiguration: Optional[AnalyticsConfigurationTypeTypeDef] = None + PreventUserExistenceErrors: Optional[PreventUserExistenceErrorTypesType] = None + EnableTokenRevocation: Optional[bool] = None + EnablePropagateAdditionalUserContextData: Optional[bool] = None + AuthSessionValidity: Optional[int] = None + +class CreateUserPoolDomainRequestRequestTypeDef(BaseModel): + Domain: str + UserPoolId: str + CustomDomainConfig: Optional[CustomDomainConfigTypeTypeDef] = None + +class DomainDescriptionTypeTypeDef(BaseModel): + UserPoolId: Optional[str] = None + AWSAccountId: Optional[str] = None + Domain: Optional[str] = None + S3Bucket: Optional[str] = None + CloudFrontDistribution: Optional[str] = None + Version: Optional[str] = None + Status: Optional[DomainStatusTypeType] = None + CustomDomainConfig: Optional[CustomDomainConfigTypeTypeDef] = None + +class UpdateUserPoolDomainRequestRequestTypeDef(BaseModel): + Domain: str + UserPoolId: str + CustomDomainConfig: CustomDomainConfigTypeTypeDef + +class SmsMfaConfigTypeTypeDef(BaseModel): + SmsAuthenticationMessage: Optional[str] = None + SmsConfiguration: Optional[SmsConfigurationTypeTypeDef] = None + +class GetUICustomizationResponseTypeDef(BaseModel): + UICustomization: UICustomizationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetUICustomizationResponseTypeDef(BaseModel): + UICustomization: UICustomizationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LambdaConfigTypeTypeDef(BaseModel): + PreSignUp: Optional[str] = None + CustomMessage: Optional[str] = None + PostConfirmation: Optional[str] = None + PreAuthentication: Optional[str] = None + PostAuthentication: Optional[str] = None + DefineAuthChallenge: Optional[str] = None + CreateAuthChallenge: Optional[str] = None + VerifyAuthChallengeResponse: Optional[str] = None + PreTokenGeneration: Optional[str] = None + UserMigration: Optional[str] = None + PreTokenGenerationConfig: Optional[PreTokenGenerationVersionConfigTypeTypeDef] = None + CustomSMSSender: Optional[CustomSMSLambdaVersionConfigTypeTypeDef] = None + CustomEmailSender: Optional[CustomEmailLambdaVersionConfigTypeTypeDef] = None + KMSKeyID: Optional[str] = None + +class ListIdentityProvidersResponseTypeDef(BaseModel): + Providers: List[ProviderDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUserPoolClientsResponseTypeDef(BaseModel): + UserPoolClients: List[UserPoolClientDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class NotifyConfigurationTypeTypeDef(BaseModel): + SourceArn: str + From: Optional[str] = None + ReplyTo: Optional[str] = None + BlockEmail: Optional[NotifyEmailTypeTypeDef] = None + NoActionEmail: Optional[NotifyEmailTypeTypeDef] = None + MfaEmail: Optional[NotifyEmailTypeTypeDef] = None + +class UserPoolPolicyTypeTypeDef(BaseModel): + PasswordPolicy: Optional[PasswordPolicyTypeTypeDef] = None + +class SchemaAttributeTypeTypeDef(BaseModel): + Name: Optional[str] = None + AttributeDataType: Optional[AttributeDataTypeType] = None + DeveloperOnlyAttribute: Optional[bool] = None + Mutable: Optional[bool] = None + Required: Optional[bool] = None + NumberAttributeConstraints: Optional[NumberAttributeConstraintsTypeTypeDef] = None + StringAttributeConstraints: Optional[StringAttributeConstraintsTypeTypeDef] = None + +class AdminGetDeviceResponseTypeDef(BaseModel): + Device: DeviceTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AdminListDevicesResponseTypeDef(BaseModel): + Devices: List[DeviceTypeTypeDef] + PaginationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeviceResponseTypeDef(BaseModel): + Device: DeviceTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicesResponseTypeDef(BaseModel): + Devices: List[DeviceTypeTypeDef] + PaginationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AdminCreateUserResponseTypeDef(BaseModel): + User: UserTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersInGroupResponseTypeDef(BaseModel): + Users: List[UserTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUsersResponseTypeDef(BaseModel): + Users: List[UserTypeTypeDef] + PaginationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AdminListUserAuthEventsResponseTypeDef(BaseModel): + AuthEvents: List[AuthEventTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AdminInitiateAuthResponseTypeDef(BaseModel): + ChallengeName: ChallengeNameTypeType + Session: str + ChallengeParameters: Dict[str, str] + AuthenticationResult: AuthenticationResultTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AdminRespondToAuthChallengeResponseTypeDef(BaseModel): + ChallengeName: ChallengeNameTypeType + Session: str + ChallengeParameters: Dict[str, str] + AuthenticationResult: AuthenticationResultTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateAuthResponseTypeDef(BaseModel): + ChallengeName: ChallengeNameTypeType + Session: str + ChallengeParameters: Dict[str, str] + AuthenticationResult: AuthenticationResultTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RespondToAuthChallengeResponseTypeDef(BaseModel): + ChallengeName: ChallengeNameTypeType + Session: str + ChallengeParameters: Dict[str, str] + AuthenticationResult: AuthenticationResultTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LogDeliveryConfigurationTypeTypeDef(BaseModel): + UserPoolId: str + LogConfigurations: List[LogConfigurationTypeTypeDef] + +class SetLogDeliveryConfigurationRequestRequestTypeDef(BaseModel): + UserPoolId: str + LogConfigurations: Sequence[LogConfigurationTypeTypeDef] + +class AdminInitiateAuthRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: str + AuthFlow: AuthFlowTypeType + AuthParameters: Optional[Mapping[str, str]] = None + ClientMetadata: Optional[Mapping[str, str]] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + ContextData: Optional[ContextDataTypeTypeDef] = None + +class AdminRespondToAuthChallengeRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: str + ChallengeName: ChallengeNameTypeType + ChallengeResponses: Optional[Mapping[str, str]] = None + Session: Optional[str] = None + AnalyticsMetadata: Optional[AnalyticsMetadataTypeTypeDef] = None + ContextData: Optional[ContextDataTypeTypeDef] = None + ClientMetadata: Optional[Mapping[str, str]] = None + +class CreateResourceServerResponseTypeDef(BaseModel): + ResourceServer: ResourceServerTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourceServerResponseTypeDef(BaseModel): + ResourceServer: ResourceServerTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceServersResponseTypeDef(BaseModel): + ResourceServers: List[ResourceServerTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateResourceServerResponseTypeDef(BaseModel): + ResourceServer: ResourceServerTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserPoolClientResponseTypeDef(BaseModel): + UserPoolClient: UserPoolClientTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserPoolClientResponseTypeDef(BaseModel): + UserPoolClient: UserPoolClientTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserPoolClientResponseTypeDef(BaseModel): + UserPoolClient: UserPoolClientTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserPoolDomainResponseTypeDef(BaseModel): + DomainDescription: DomainDescriptionTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserPoolMfaConfigResponseTypeDef(BaseModel): + SmsMfaConfiguration: SmsMfaConfigTypeTypeDef + SoftwareTokenMfaConfiguration: SoftwareTokenMfaConfigTypeTypeDef + MfaConfiguration: UserPoolMfaTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class SetUserPoolMfaConfigRequestRequestTypeDef(BaseModel): + UserPoolId: str + SmsMfaConfiguration: Optional[SmsMfaConfigTypeTypeDef] = None + SoftwareTokenMfaConfiguration: Optional[SoftwareTokenMfaConfigTypeTypeDef] = None + MfaConfiguration: Optional[UserPoolMfaTypeType] = None + +class SetUserPoolMfaConfigResponseTypeDef(BaseModel): + SmsMfaConfiguration: SmsMfaConfigTypeTypeDef + SoftwareTokenMfaConfiguration: SoftwareTokenMfaConfigTypeTypeDef + MfaConfiguration: UserPoolMfaTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UserPoolDescriptionTypeTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + LambdaConfig: Optional[LambdaConfigTypeTypeDef] = None + Status: Optional[StatusTypeType] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + +class AccountTakeoverRiskConfigurationTypeTypeDef(BaseModel): + Actions: AccountTakeoverActionsTypeTypeDef + NotifyConfiguration: Optional[NotifyConfigurationTypeTypeDef] = None + +class UpdateUserPoolRequestRequestTypeDef(BaseModel): + UserPoolId: str + Policies: Optional[UserPoolPolicyTypeTypeDef] = None + DeletionProtection: Optional[DeletionProtectionTypeType] = None + LambdaConfig: Optional[LambdaConfigTypeTypeDef] = None + AutoVerifiedAttributes: Optional[Sequence[VerifiedAttributeTypeType]] = None + SmsVerificationMessage: Optional[str] = None + EmailVerificationMessage: Optional[str] = None + EmailVerificationSubject: Optional[str] = None + VerificationMessageTemplate: Optional[VerificationMessageTemplateTypeTypeDef] = None + SmsAuthenticationMessage: Optional[str] = None + UserAttributeUpdateSettings: Optional[UserAttributeUpdateSettingsTypeTypeDef] = None + MfaConfiguration: Optional[UserPoolMfaTypeType] = None + DeviceConfiguration: Optional[DeviceConfigurationTypeTypeDef] = None + EmailConfiguration: Optional[EmailConfigurationTypeTypeDef] = None + SmsConfiguration: Optional[SmsConfigurationTypeTypeDef] = None + UserPoolTags: Optional[Mapping[str, str]] = None + AdminCreateUserConfig: Optional[AdminCreateUserConfigTypeTypeDef] = None + UserPoolAddOns: Optional[UserPoolAddOnsTypeTypeDef] = None + AccountRecoverySetting: Optional[AccountRecoverySettingTypeTypeDef] = None + +class AddCustomAttributesRequestRequestTypeDef(BaseModel): + UserPoolId: str + CustomAttributes: Sequence[SchemaAttributeTypeTypeDef] + +class CreateUserPoolRequestRequestTypeDef(BaseModel): + PoolName: str + Policies: Optional[UserPoolPolicyTypeTypeDef] = None + DeletionProtection: Optional[DeletionProtectionTypeType] = None + LambdaConfig: Optional[LambdaConfigTypeTypeDef] = None + AutoVerifiedAttributes: Optional[Sequence[VerifiedAttributeTypeType]] = None + AliasAttributes: Optional[Sequence[AliasAttributeTypeType]] = None + UsernameAttributes: Optional[Sequence[UsernameAttributeTypeType]] = None + SmsVerificationMessage: Optional[str] = None + EmailVerificationMessage: Optional[str] = None + EmailVerificationSubject: Optional[str] = None + VerificationMessageTemplate: Optional[VerificationMessageTemplateTypeTypeDef] = None + SmsAuthenticationMessage: Optional[str] = None + MfaConfiguration: Optional[UserPoolMfaTypeType] = None + UserAttributeUpdateSettings: Optional[UserAttributeUpdateSettingsTypeTypeDef] = None + DeviceConfiguration: Optional[DeviceConfigurationTypeTypeDef] = None + EmailConfiguration: Optional[EmailConfigurationTypeTypeDef] = None + SmsConfiguration: Optional[SmsConfigurationTypeTypeDef] = None + UserPoolTags: Optional[Mapping[str, str]] = None + AdminCreateUserConfig: Optional[AdminCreateUserConfigTypeTypeDef] = None + Schema: Optional[Sequence[SchemaAttributeTypeTypeDef]] = None + UserPoolAddOns: Optional[UserPoolAddOnsTypeTypeDef] = None + UsernameConfiguration: Optional[UsernameConfigurationTypeTypeDef] = None + AccountRecoverySetting: Optional[AccountRecoverySettingTypeTypeDef] = None + +class UserPoolTypeTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Policies: Optional[UserPoolPolicyTypeTypeDef] = None + DeletionProtection: Optional[DeletionProtectionTypeType] = None + LambdaConfig: Optional[LambdaConfigTypeTypeDef] = None + Status: Optional[StatusTypeType] = None + LastModifiedDate: Optional[datetime] = None + CreationDate: Optional[datetime] = None + SchemaAttributes: Optional[List[SchemaAttributeTypeTypeDef]] = None + AutoVerifiedAttributes: Optional[List[VerifiedAttributeTypeType]] = None + AliasAttributes: Optional[List[AliasAttributeTypeType]] = None + UsernameAttributes: Optional[List[UsernameAttributeTypeType]] = None + SmsVerificationMessage: Optional[str] = None + EmailVerificationMessage: Optional[str] = None + EmailVerificationSubject: Optional[str] = None + VerificationMessageTemplate: Optional[VerificationMessageTemplateTypeTypeDef] = None + SmsAuthenticationMessage: Optional[str] = None + UserAttributeUpdateSettings: Optional[UserAttributeUpdateSettingsTypeOutputTypeDef] = None + MfaConfiguration: Optional[UserPoolMfaTypeType] = None + DeviceConfiguration: Optional[DeviceConfigurationTypeTypeDef] = None + EstimatedNumberOfUsers: Optional[int] = None + EmailConfiguration: Optional[EmailConfigurationTypeTypeDef] = None + SmsConfiguration: Optional[SmsConfigurationTypeTypeDef] = None + UserPoolTags: Optional[Dict[str, str]] = None + SmsConfigurationFailure: Optional[str] = None + EmailConfigurationFailure: Optional[str] = None + Domain: Optional[str] = None + CustomDomain: Optional[str] = None + AdminCreateUserConfig: Optional[AdminCreateUserConfigTypeTypeDef] = None + UserPoolAddOns: Optional[UserPoolAddOnsTypeTypeDef] = None + UsernameConfiguration: Optional[UsernameConfigurationTypeTypeDef] = None + Arn: Optional[str] = None + AccountRecoverySetting: Optional[AccountRecoverySettingTypeOutputTypeDef] = None + +class GetLogDeliveryConfigurationResponseTypeDef(BaseModel): + LogDeliveryConfiguration: LogDeliveryConfigurationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetLogDeliveryConfigurationResponseTypeDef(BaseModel): + LogDeliveryConfiguration: LogDeliveryConfigurationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserPoolsResponseTypeDef(BaseModel): + UserPools: List[UserPoolDescriptionTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RiskConfigurationTypeTypeDef(BaseModel): + UserPoolId: Optional[str] = None + ClientId: Optional[str] = None + CompromisedCredentialsRiskConfiguration: Optional[ CompromisedCredentialsRiskConfigurationTypeOutputTypeDef ] = None + AccountTakeoverRiskConfiguration: Optional[ AccountTakeoverRiskConfigurationTypeTypeDef ] = None + RiskExceptionConfiguration: Optional[RiskExceptionConfigurationTypeOutputTypeDef] = None + LastModifiedDate: Optional[datetime] = None + +class SetRiskConfigurationRequestRequestTypeDef(BaseModel): + UserPoolId: str + ClientId: Optional[str] = None + CompromisedCredentialsRiskConfiguration: Optional[ CompromisedCredentialsRiskConfigurationTypeTypeDef ] = None + AccountTakeoverRiskConfiguration: Optional[ AccountTakeoverRiskConfigurationTypeTypeDef ] = None + RiskExceptionConfiguration: Optional[RiskExceptionConfigurationTypeTypeDef] = None + +class CreateUserPoolResponseTypeDef(BaseModel): + UserPool: UserPoolTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserPoolResponseTypeDef(BaseModel): + UserPool: UserPoolTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRiskConfigurationResponseTypeDef(BaseModel): + RiskConfiguration: RiskConfigurationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetRiskConfigurationResponseTypeDef(BaseModel): + RiskConfiguration: RiskConfigurationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cognito_idp_constants.py b/aws_resource_validator/pydantic_models/cognito_idp_constants.py new file mode 100644 index 00000000..1953909f --- /dev/null +++ b/aws_resource_validator/pydantic_models/cognito_idp_constants.py @@ -0,0 +1,518 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountTakeoverEventActionTypeType = Literal["BLOCK", "MFA_IF_CONFIGURED", "MFA_REQUIRED", "NO_ACTION"] +AdminListGroupsForUserPaginatorName = Literal["admin_list_groups_for_user"] +AdminListUserAuthEventsPaginatorName = Literal["admin_list_user_auth_events"] +AdvancedSecurityModeTypeType = Literal["AUDIT", "ENFORCED", "OFF"] +AliasAttributeTypeType = Literal["email", "phone_number", "preferred_username"] +AttributeDataTypeType = Literal["Boolean", "DateTime", "Number", "String"] +AuthFlowTypeType = Literal["ADMIN_NO_SRP_AUTH", + "ADMIN_USER_PASSWORD_AUTH", + "CUSTOM_AUTH", + "REFRESH_TOKEN", + "REFRESH_TOKEN_AUTH", + "USER_PASSWORD_AUTH", + "USER_SRP_AUTH",] +ChallengeNameType = Literal["Mfa", "Password"] +ChallengeNameTypeType = Literal["ADMIN_NO_SRP_AUTH", + "CUSTOM_CHALLENGE", + "DEVICE_PASSWORD_VERIFIER", + "DEVICE_SRP_AUTH", + "MFA_SETUP", + "NEW_PASSWORD_REQUIRED", + "PASSWORD_VERIFIER", + "SELECT_MFA_TYPE", + "SMS_MFA", + "SOFTWARE_TOKEN_MFA",] +ChallengeResponseType = Literal["Failure", "Success"] +CompromisedCredentialsEventActionTypeType = Literal["BLOCK", "NO_ACTION"] +CustomEmailSenderLambdaVersionTypeType = Literal["V1_0"] +CustomSMSSenderLambdaVersionTypeType = Literal["V1_0"] +DefaultEmailOptionTypeType = Literal["CONFIRM_WITH_CODE", "CONFIRM_WITH_LINK"] +DeletionProtectionTypeType = Literal["ACTIVE", "INACTIVE"] +DeliveryMediumTypeType = Literal["EMAIL", "SMS"] +DeviceRememberedStatusTypeType = Literal["not_remembered", "remembered"] +DomainStatusTypeType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +EmailSendingAccountTypeType = Literal["COGNITO_DEFAULT", "DEVELOPER"] +EventFilterTypeType = Literal["PASSWORD_CHANGE", "SIGN_IN", "SIGN_UP"] +EventResponseTypeType = Literal["Fail", "InProgress", "Pass"] +EventSourceNameType = Literal["userNotification"] +EventTypeType = Literal["ForgotPassword", "PasswordChange", "ResendCode", "SignIn", "SignUp"] +ExplicitAuthFlowsTypeType = Literal["ADMIN_NO_SRP_AUTH", + "ALLOW_ADMIN_USER_PASSWORD_AUTH", + "ALLOW_CUSTOM_AUTH", + "ALLOW_REFRESH_TOKEN_AUTH", + "ALLOW_USER_PASSWORD_AUTH", + "ALLOW_USER_SRP_AUTH", + "CUSTOM_AUTH_FLOW_ONLY", + "USER_PASSWORD_AUTH",] +FeedbackValueTypeType = Literal["Invalid", "Valid"] +IdentityProviderTypeTypeType = Literal["Facebook", "Google", "LoginWithAmazon", "OIDC", "SAML", "SignInWithApple"] +ListGroupsPaginatorName = Literal["list_groups"] +ListIdentityProvidersPaginatorName = Literal["list_identity_providers"] +ListResourceServersPaginatorName = Literal["list_resource_servers"] +ListUserPoolClientsPaginatorName = Literal["list_user_pool_clients"] +ListUserPoolsPaginatorName = Literal["list_user_pools"] +ListUsersInGroupPaginatorName = Literal["list_users_in_group"] +ListUsersPaginatorName = Literal["list_users"] +LogLevelType = Literal["ERROR"] +MessageActionTypeType = Literal["RESEND", "SUPPRESS"] +OAuthFlowTypeType = Literal["client_credentials", "code", "implicit"] +PreTokenGenerationLambdaVersionTypeType = Literal["V1_0", "V2_0"] +PreventUserExistenceErrorTypesType = Literal["ENABLED", "LEGACY"] +RecoveryOptionNameTypeType = Literal["admin_only", "verified_email", "verified_phone_number"] +RiskDecisionTypeType = Literal["AccountTakeover", "Block", "NoRisk"] +RiskLevelTypeType = Literal["High", "Low", "Medium"] +StatusTypeType = Literal["Disabled", "Enabled"] +TimeUnitsTypeType = Literal["days", "hours", "minutes", "seconds"] +UserImportJobStatusTypeType = Literal["Created", "Expired", "Failed", "InProgress", "Pending", "Stopped", "Stopping", "Succeeded"] +UserPoolMfaTypeType = Literal["OFF", "ON", "OPTIONAL"] +UserStatusTypeType = Literal["ARCHIVED", + "COMPROMISED", + "CONFIRMED", + "EXTERNAL_PROVIDER", + "FORCE_CHANGE_PASSWORD", + "RESET_REQUIRED", + "UNCONFIRMED", + "UNKNOWN",] +UsernameAttributeTypeType = Literal["email", "phone_number"] +VerifiedAttributeTypeType = Literal["email", "phone_number"] +VerifySoftwareTokenResponseTypeType = Literal["ERROR", "SUCCESS"] +CognitoIdentityProviderServiceName = Literal["cognito-idp"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["admin_list_groups_for_user", + "admin_list_user_auth_events", + "list_groups", + "list_identity_providers", + "list_resource_servers", + "list_user_pool_clients", + "list_user_pools", + "list_users", + "list_users_in_group",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +RiskExceptionConfigurationTypeUnionTypeDef = Union[ 'RiskExceptionConfigurationTypeTypeDef', 'RiskExceptionConfigurationTypeOutputTypeDef' ] +UserAttributeUpdateSettingsTypeUnionTypeDef = Union[ 'UserAttributeUpdateSettingsTypeTypeDef', 'UserAttributeUpdateSettingsTypeOutputTypeDef' ] +AccountRecoverySettingTypeUnionTypeDef = Union[ 'AccountRecoverySettingTypeTypeDef', 'AccountRecoverySettingTypeOutputTypeDef' ] +CompromisedCredentialsRiskConfigurationTypeUnionTypeDef = Union[ 'CompromisedCredentialsRiskConfigurationTypeTypeDef', 'CompromisedCredentialsRiskConfigurationTypeOutputTypeDef', ] diff --git a/aws_resource_validator/pydantic_models/cognito_sync_classes.py b/aws_resource_validator/pydantic_models/cognito_sync_classes.py new file mode 100644 index 00000000..4bc59eb0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cognito_sync_classes.py @@ -0,0 +1,230 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cognito_sync_constants import * + +class BulkPublishRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CognitoStreamsTypeDef(BaseModel): + StreamName: Optional[str] = None + RoleArn: Optional[str] = None + StreamingStatus: Optional[StreamingStatusType] = None + +class DatasetTypeDef(BaseModel): + IdentityId: Optional[str] = None + DatasetName: Optional[str] = None + CreationDate: Optional[datetime] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + DataStorage: Optional[int] = None + NumRecords: Optional[int] = None + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + DatasetName: str + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + DatasetName: str + +class DescribeIdentityPoolUsageRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + +class IdentityPoolUsageTypeDef(BaseModel): + IdentityPoolId: Optional[str] = None + SyncSessionsCount: Optional[int] = None + DataStorage: Optional[int] = None + LastModifiedDate: Optional[datetime] = None + +class DescribeIdentityUsageRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + +class IdentityUsageTypeDef(BaseModel): + IdentityId: Optional[str] = None + IdentityPoolId: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + DatasetCount: Optional[int] = None + DataStorage: Optional[int] = None + +class GetBulkPublishDetailsRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + +class GetCognitoEventsRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + +class GetIdentityPoolConfigurationRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + +class PushSyncTypeDef(BaseModel): + ApplicationArns: Optional[List[str]] = None + RoleArn: Optional[str] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIdentityPoolUsageRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRecordsRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + DatasetName: str + LastSyncCount: Optional[int] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SyncSessionToken: Optional[str] = None + +class RecordTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + SyncCount: Optional[int] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + DeviceLastModifiedDate: Optional[datetime] = None + +class RegisterDeviceRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + Platform: PlatformType + Token: str + +class SetCognitoEventsRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + Events: Mapping[str, str] + +class SubscribeToDatasetRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + DatasetName: str + DeviceId: str + +class UnsubscribeFromDatasetRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + DatasetName: str + DeviceId: str + +class BulkPublishResponseTypeDef(BaseModel): + IdentityPoolId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetBulkPublishDetailsResponseTypeDef(BaseModel): + IdentityPoolId: str + BulkPublishStartTime: datetime + BulkPublishCompleteTime: datetime + BulkPublishStatus: BulkPublishStatusType + FailureMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCognitoEventsResponseTypeDef(BaseModel): + Events: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterDeviceResponseTypeDef(BaseModel): + DeviceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDatasetResponseTypeDef(BaseModel): + Dataset: DatasetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetResponseTypeDef(BaseModel): + Dataset: DatasetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponseTypeDef(BaseModel): + Datasets: List[DatasetTypeDef] + Count: int + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIdentityPoolUsageResponseTypeDef(BaseModel): + IdentityPoolUsage: IdentityPoolUsageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdentityPoolUsageResponseTypeDef(BaseModel): + IdentityPoolUsages: List[IdentityPoolUsageTypeDef] + MaxResults: int + Count: int + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIdentityUsageResponseTypeDef(BaseModel): + IdentityUsage: IdentityUsageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityPoolConfigurationResponseTypeDef(BaseModel): + IdentityPoolId: str + PushSync: PushSyncTypeDef + CognitoStreams: CognitoStreamsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetIdentityPoolConfigurationRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + PushSync: Optional[PushSyncTypeDef] = None + CognitoStreams: Optional[CognitoStreamsTypeDef] = None + +class SetIdentityPoolConfigurationResponseTypeDef(BaseModel): + IdentityPoolId: str + PushSync: PushSyncTypeDef + CognitoStreams: CognitoStreamsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecordsResponseTypeDef(BaseModel): + Records: List[RecordTypeDef] + NextToken: str + Count: int + DatasetSyncCount: int + LastModifiedBy: str + MergedDatasetNames: List[str] + DatasetExists: bool + DatasetDeletedAfterRequestedSyncCount: bool + SyncSessionToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRecordsResponseTypeDef(BaseModel): + Records: List[RecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RecordPatchTypeDef(BaseModel): + Op: OperationType + Key: str + SyncCount: int + Value: Optional[str] = None + DeviceLastModifiedDate: Optional[TimestampTypeDef] = None + +class UpdateRecordsRequestRequestTypeDef(BaseModel): + IdentityPoolId: str + IdentityId: str + DatasetName: str + SyncSessionToken: str + DeviceId: Optional[str] = None + RecordPatches: Optional[Sequence[RecordPatchTypeDef]] = None + ClientContext: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/cognito_sync_constants.py b/aws_resource_validator/pydantic_models/cognito_sync_constants.py new file mode 100644 index 00000000..f2e50381 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cognito_sync_constants.py @@ -0,0 +1,404 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BulkPublishStatusType = Literal["FAILED", "IN_PROGRESS", "NOT_STARTED", "SUCCEEDED"] +OperationType = Literal["remove", "replace"] +PlatformType = Literal["ADM", "APNS", "APNS_SANDBOX", "GCM"] +StreamingStatusType = Literal["DISABLED", "ENABLED"] +CognitoSyncServiceName = Literal["cognito-sync"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/comprehend_classes.py b/aws_resource_validator/pydantic_models/comprehend_classes.py new file mode 100644 index 00000000..e246792c --- /dev/null +++ b/aws_resource_validator/pydantic_models/comprehend_classes.py @@ -0,0 +1,1803 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.comprehend_constants import * + +class AugmentedManifestsListItemPaginatorTypeDef(BaseModel): + S3Uri: str + AttributeNames: List[str] + Split: Optional[SplitType] = None + AnnotationDataS3Uri: Optional[str] = None + SourceDocumentsS3Uri: Optional[str] = None + DocumentType: Optional[AugmentedManifestsDocumentTypeFormatType] = None + +class AugmentedManifestsListItemTypeDef(BaseModel): + S3Uri: str + AttributeNames: Sequence[str] + Split: Optional[SplitType] = None + AnnotationDataS3Uri: Optional[str] = None + SourceDocumentsS3Uri: Optional[str] = None + DocumentType: Optional[AugmentedManifestsDocumentTypeFormatType] = None + +class DominantLanguageTypeDef(BaseModel): + LanguageCode: Optional[str] = None + Score: Optional[float] = None + +class BatchDetectDominantLanguageRequestRequestTypeDef(BaseModel): + TextList: Sequence[str] + +class BatchItemErrorTypeDef(BaseModel): + Index: Optional[int] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchDetectEntitiesRequestRequestTypeDef(BaseModel): + TextList: Sequence[str] + LanguageCode: LanguageCodeType + +class KeyPhraseTypeDef(BaseModel): + Score: Optional[float] = None + Text: Optional[str] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + +class BatchDetectKeyPhrasesRequestRequestTypeDef(BaseModel): + TextList: Sequence[str] + LanguageCode: LanguageCodeType + +class SentimentScoreTypeDef(BaseModel): + Positive: Optional[float] = None + Negative: Optional[float] = None + Neutral: Optional[float] = None + Mixed: Optional[float] = None + +class BatchDetectSentimentRequestRequestTypeDef(BaseModel): + TextList: Sequence[str] + LanguageCode: LanguageCodeType + +class BatchDetectSyntaxRequestRequestTypeDef(BaseModel): + TextList: Sequence[str] + LanguageCode: SyntaxLanguageCodeType + +class BatchDetectTargetedSentimentRequestRequestTypeDef(BaseModel): + TextList: Sequence[str] + LanguageCode: LanguageCodeType + +class ChildBlockTypeDef(BaseModel): + ChildBlockId: Optional[str] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + +class RelationshipsListItemTypeDef(BaseModel): + Ids: Optional[List[str]] = None + Type: Optional[Literal["CHILD"]] = None + +class BoundingBoxTypeDef(BaseModel): + Height: Optional[float] = None + Left: Optional[float] = None + Top: Optional[float] = None + Width: Optional[float] = None + +class ClassifierEvaluationMetricsTypeDef(BaseModel): + Accuracy: Optional[float] = None + Precision: Optional[float] = None + Recall: Optional[float] = None + F1Score: Optional[float] = None + MicroPrecision: Optional[float] = None + MicroRecall: Optional[float] = None + MicroF1Score: Optional[float] = None + HammingLoss: Optional[float] = None + +class DocumentReaderConfigTypeDef(BaseModel): + DocumentReadAction: DocumentReadActionType + DocumentReadMode: Optional[DocumentReadModeType] = None + FeatureTypes: Optional[Sequence[DocumentReadFeatureTypesType]] = None + +class DocumentClassTypeDef(BaseModel): + Name: Optional[str] = None + Score: Optional[float] = None + Page: Optional[int] = None + +class DocumentLabelTypeDef(BaseModel): + Name: Optional[str] = None + Score: Optional[float] = None + Page: Optional[int] = None + +class DocumentTypeListItemTypeDef(BaseModel): + Page: Optional[int] = None + Type: Optional[DocumentTypeType] = None + +class ErrorsListItemTypeDef(BaseModel): + Page: Optional[int] = None + ErrorCode: Optional[PageBasedErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class WarningsListItemTypeDef(BaseModel): + Page: Optional[int] = None + WarnCode: Optional[PageBasedWarningCodeType] = None + WarnMessage: Optional[str] = None + +class ContainsPiiEntitiesRequestRequestTypeDef(BaseModel): + Text: str + LanguageCode: LanguageCodeType + +class EntityLabelTypeDef(BaseModel): + Name: Optional[PiiEntityTypeType] = None + Score: Optional[float] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class DocumentClassifierOutputDataConfigTypeDef(BaseModel): + S3Uri: Optional[str] = None + KmsKeyId: Optional[str] = None + FlywheelStatsS3Prefix: Optional[str] = None + +class VpcConfigTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + Subnets: Sequence[str] + +class DatasetAugmentedManifestsListItemTypeDef(BaseModel): + AttributeNames: Sequence[str] + S3Uri: str + AnnotationDataS3Uri: Optional[str] = None + SourceDocumentsS3Uri: Optional[str] = None + DocumentType: Optional[AugmentedManifestsDocumentTypeFormatType] = None + +class DatasetDocumentClassifierInputDataConfigTypeDef(BaseModel): + S3Uri: str + LabelDelimiter: Optional[str] = None + +class DatasetEntityRecognizerAnnotationsTypeDef(BaseModel): + S3Uri: str + +class DatasetEntityRecognizerDocumentsTypeDef(BaseModel): + S3Uri: str + InputFormat: Optional[InputFormatType] = None + +class DatasetEntityRecognizerEntityListTypeDef(BaseModel): + S3Uri: str + +class DatasetPropertiesTypeDef(BaseModel): + DatasetArn: Optional[str] = None + DatasetName: Optional[str] = None + DatasetType: Optional[DatasetTypeType] = None + DatasetS3Uri: Optional[str] = None + Description: Optional[str] = None + Status: Optional[DatasetStatusType] = None + Message: Optional[str] = None + NumberOfDocuments: Optional[int] = None + CreationTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class DeleteDocumentClassifierRequestRequestTypeDef(BaseModel): + DocumentClassifierArn: str + +class DeleteEndpointRequestRequestTypeDef(BaseModel): + EndpointArn: str + +class DeleteEntityRecognizerRequestRequestTypeDef(BaseModel): + EntityRecognizerArn: str + +class DeleteFlywheelRequestRequestTypeDef(BaseModel): + FlywheelArn: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + PolicyRevisionId: Optional[str] = None + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + DatasetArn: str + +class DescribeDocumentClassificationJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeDocumentClassifierRequestRequestTypeDef(BaseModel): + DocumentClassifierArn: str + +class DescribeDominantLanguageDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeEndpointRequestRequestTypeDef(BaseModel): + EndpointArn: str + +class EndpointPropertiesTypeDef(BaseModel): + EndpointArn: Optional[str] = None + Status: Optional[EndpointStatusType] = None + Message: Optional[str] = None + ModelArn: Optional[str] = None + DesiredModelArn: Optional[str] = None + DesiredInferenceUnits: Optional[int] = None + CurrentInferenceUnits: Optional[int] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + DataAccessRoleArn: Optional[str] = None + DesiredDataAccessRoleArn: Optional[str] = None + FlywheelArn: Optional[str] = None + +class DescribeEntitiesDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeEntityRecognizerRequestRequestTypeDef(BaseModel): + EntityRecognizerArn: str + +class DescribeEventsDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeFlywheelIterationRequestRequestTypeDef(BaseModel): + FlywheelArn: str + FlywheelIterationId: str + +class DescribeFlywheelRequestRequestTypeDef(BaseModel): + FlywheelArn: str + +class DescribeKeyPhrasesDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribePiiEntitiesDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DescribeSentimentDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeTargetedSentimentDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeTopicsDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DetectDominantLanguageRequestRequestTypeDef(BaseModel): + Text: str + +class DetectKeyPhrasesRequestRequestTypeDef(BaseModel): + Text: str + LanguageCode: LanguageCodeType + +class DetectPiiEntitiesRequestRequestTypeDef(BaseModel): + Text: str + LanguageCode: LanguageCodeType + +class PiiEntityTypeDef(BaseModel): + Score: Optional[float] = None + Type: Optional[PiiEntityTypeType] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + +class DetectSentimentRequestRequestTypeDef(BaseModel): + Text: str + LanguageCode: LanguageCodeType + +class DetectSyntaxRequestRequestTypeDef(BaseModel): + Text: str + LanguageCode: SyntaxLanguageCodeType + +class DetectTargetedSentimentRequestRequestTypeDef(BaseModel): + Text: str + LanguageCode: LanguageCodeType + +class TextSegmentTypeDef(BaseModel): + Text: str + +class DocumentClassificationConfigTypeDef(BaseModel): + Mode: DocumentClassifierModeType + Labels: Optional[Sequence[str]] = None + +class OutputDataConfigTypeDef(BaseModel): + S3Uri: str + KmsKeyId: Optional[str] = None + +class VpcConfigPaginatorTypeDef(BaseModel): + SecurityGroupIds: List[str] + Subnets: List[str] + +class DocumentClassifierDocumentsTypeDef(BaseModel): + S3Uri: str + TestS3Uri: Optional[str] = None + +class DocumentReaderConfigPaginatorTypeDef(BaseModel): + DocumentReadAction: DocumentReadActionType + DocumentReadMode: Optional[DocumentReadModeType] = None + FeatureTypes: Optional[List[DocumentReadFeatureTypesType]] = None + +class DocumentClassifierSummaryTypeDef(BaseModel): + DocumentClassifierName: Optional[str] = None + NumberOfVersions: Optional[int] = None + LatestVersionCreatedAt: Optional[datetime] = None + LatestVersionName: Optional[str] = None + LatestVersionStatus: Optional[ModelStatusType] = None + +class ExtractedCharactersListItemTypeDef(BaseModel): + Page: Optional[int] = None + Count: Optional[int] = None + +class EntityTypesListItemTypeDef(BaseModel): + Type: str + +class EntityRecognizerAnnotationsTypeDef(BaseModel): + S3Uri: str + TestS3Uri: Optional[str] = None + +class EntityRecognizerDocumentsTypeDef(BaseModel): + S3Uri: str + TestS3Uri: Optional[str] = None + InputFormat: Optional[InputFormatType] = None + +class EntityRecognizerEntityListTypeDef(BaseModel): + S3Uri: str + +class EntityRecognizerEvaluationMetricsTypeDef(BaseModel): + Precision: Optional[float] = None + Recall: Optional[float] = None + F1Score: Optional[float] = None + +class EntityTypesEvaluationMetricsTypeDef(BaseModel): + Precision: Optional[float] = None + Recall: Optional[float] = None + F1Score: Optional[float] = None + +class EntityRecognizerOutputDataConfigTypeDef(BaseModel): + FlywheelStatsS3Prefix: Optional[str] = None + +class EntityRecognizerSummaryTypeDef(BaseModel): + RecognizerName: Optional[str] = None + NumberOfVersions: Optional[int] = None + LatestVersionCreatedAt: Optional[datetime] = None + LatestVersionName: Optional[str] = None + LatestVersionStatus: Optional[ModelStatusType] = None + +class FlywheelModelEvaluationMetricsTypeDef(BaseModel): + AverageF1Score: Optional[float] = None + AveragePrecision: Optional[float] = None + AverageRecall: Optional[float] = None + AverageAccuracy: Optional[float] = None + +class FlywheelSummaryTypeDef(BaseModel): + FlywheelArn: Optional[str] = None + ActiveModelArn: Optional[str] = None + DataLakeS3Uri: Optional[str] = None + Status: Optional[FlywheelStatusType] = None + ModelType: Optional[ModelTypeType] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LatestFlywheelIteration: Optional[str] = None + +class PointTypeDef(BaseModel): + X: Optional[float] = None + Y: Optional[float] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDocumentClassifierSummariesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEntityRecognizerSummariesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PartOfSpeechTagTypeDef(BaseModel): + Tag: Optional[PartOfSpeechTagTypeType] = None + Score: Optional[float] = None + +class PiiOutputDataConfigTypeDef(BaseModel): + S3Uri: str + KmsKeyId: Optional[str] = None + +class RedactionConfigTypeDef(BaseModel): + PiiEntityTypes: Optional[List[PiiEntityTypeType]] = None + MaskMode: Optional[PiiEntitiesDetectionMaskModeType] = None + MaskCharacter: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourcePolicy: str + PolicyRevisionId: Optional[str] = None + +class StartFlywheelIterationRequestRequestTypeDef(BaseModel): + FlywheelArn: str + ClientRequestToken: Optional[str] = None + +class StopDominantLanguageDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopEntitiesDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopEventsDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopKeyPhrasesDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopPiiEntitiesDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopSentimentDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopTargetedSentimentDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopTrainingDocumentClassifierRequestRequestTypeDef(BaseModel): + DocumentClassifierArn: str + +class StopTrainingEntityRecognizerRequestRequestTypeDef(BaseModel): + EntityRecognizerArn: str + +class ToxicContentTypeDef(BaseModel): + Name: Optional[ToxicContentTypeType] = None + Score: Optional[float] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateEndpointRequestRequestTypeDef(BaseModel): + EndpointArn: str + DesiredModelArn: Optional[str] = None + DesiredInferenceUnits: Optional[int] = None + DesiredDataAccessRoleArn: Optional[str] = None + FlywheelArn: Optional[str] = None + +class BatchDetectDominantLanguageItemResultTypeDef(BaseModel): + Index: Optional[int] = None + Languages: Optional[List[DominantLanguageTypeDef]] = None + +class CreateDatasetResponseTypeDef(BaseModel): + DatasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDocumentClassifierResponseTypeDef(BaseModel): + DocumentClassifierArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointResponseTypeDef(BaseModel): + EndpointArn: str + ModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEntityRecognizerResponseTypeDef(BaseModel): + EntityRecognizerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlywheelResponseTypeDef(BaseModel): + FlywheelArn: str + ActiveModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourcePolicyResponseTypeDef(BaseModel): + ResourcePolicy: str + CreationTime: datetime + LastModifiedTime: datetime + PolicyRevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectDominantLanguageResponseTypeDef(BaseModel): + Languages: List[DominantLanguageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportModelResponseTypeDef(BaseModel): + ModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + PolicyRevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDocumentClassificationJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + DocumentClassifierArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDominantLanguageDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartEntitiesDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + EntityRecognizerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartEventsDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartFlywheelIterationResponseTypeDef(BaseModel): + FlywheelArn: str + FlywheelIterationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartKeyPhrasesDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartPiiEntitiesDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartSentimentDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartTargetedSentimentDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartTopicsDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobArn: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopDominantLanguageDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopEntitiesDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopEventsDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopKeyPhrasesDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopPiiEntitiesDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopSentimentDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopTargetedSentimentDetectionJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEndpointResponseTypeDef(BaseModel): + DesiredModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectKeyPhrasesItemResultTypeDef(BaseModel): + Index: Optional[int] = None + KeyPhrases: Optional[List[KeyPhraseTypeDef]] = None + +class DetectKeyPhrasesResponseTypeDef(BaseModel): + KeyPhrases: List[KeyPhraseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectSentimentItemResultTypeDef(BaseModel): + Index: Optional[int] = None + Sentiment: Optional[SentimentTypeType] = None + SentimentScore: Optional[SentimentScoreTypeDef] = None + +class DetectSentimentResponseTypeDef(BaseModel): + Sentiment: SentimentTypeType + SentimentScore: SentimentScoreTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MentionSentimentTypeDef(BaseModel): + Sentiment: Optional[SentimentTypeType] = None + SentimentScore: Optional[SentimentScoreTypeDef] = None + +class BlockReferenceTypeDef(BaseModel): + BlockId: Optional[str] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + ChildBlocks: Optional[List[ChildBlockTypeDef]] = None + +class ClassifierMetadataTypeDef(BaseModel): + NumberOfLabels: Optional[int] = None + NumberOfTrainedDocuments: Optional[int] = None + NumberOfTestDocuments: Optional[int] = None + EvaluationMetrics: Optional[ClassifierEvaluationMetricsTypeDef] = None + +class ClassifyDocumentRequestRequestTypeDef(BaseModel): + EndpointArn: str + Text: Optional[str] = None + Bytes: Optional[BlobTypeDef] = None + DocumentReaderConfig: Optional[DocumentReaderConfigTypeDef] = None + +class DetectEntitiesRequestRequestTypeDef(BaseModel): + Text: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + EndpointArn: Optional[str] = None + Bytes: Optional[BlobTypeDef] = None + DocumentReaderConfig: Optional[DocumentReaderConfigTypeDef] = None + +class InputDataConfigTypeDef(BaseModel): + S3Uri: str + InputFormat: Optional[InputFormatType] = None + DocumentReaderConfig: Optional[DocumentReaderConfigTypeDef] = None + +class ContainsPiiEntitiesResponseTypeDef(BaseModel): + Labels: List[EntityLabelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointRequestRequestTypeDef(BaseModel): + EndpointName: str + DesiredInferenceUnits: int + ModelArn: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataAccessRoleArn: Optional[str] = None + FlywheelArn: Optional[str] = None + +class ImportModelRequestRequestTypeDef(BaseModel): + SourceModelArn: str + ModelName: Optional[str] = None + VersionName: Optional[str] = None + ModelKmsKeyId: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class DataSecurityConfigTypeDef(BaseModel): + ModelKmsKeyId: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + DataLakeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class UpdateDataSecurityConfigTypeDef(BaseModel): + ModelKmsKeyId: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class DatasetEntityRecognizerInputDataConfigTypeDef(BaseModel): + Documents: DatasetEntityRecognizerDocumentsTypeDef + Annotations: Optional[DatasetEntityRecognizerAnnotationsTypeDef] = None + EntityList: Optional[DatasetEntityRecognizerEntityListTypeDef] = None + +class DatasetFilterTypeDef(BaseModel): + Status: Optional[DatasetStatusType] = None + DatasetType: Optional[DatasetTypeType] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + +class DocumentClassificationJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class DocumentClassifierFilterTypeDef(BaseModel): + Status: Optional[ModelStatusType] = None + DocumentClassifierName: Optional[str] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class DominantLanguageDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class EndpointFilterTypeDef(BaseModel): + ModelArn: Optional[str] = None + Status: Optional[EndpointStatusType] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class EntitiesDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class EntityRecognizerFilterTypeDef(BaseModel): + Status: Optional[ModelStatusType] = None + RecognizerName: Optional[str] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class EventsDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class FlywheelFilterTypeDef(BaseModel): + Status: Optional[FlywheelStatusType] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + +class FlywheelIterationFilterTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + +class KeyPhrasesDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class PiiEntitiesDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class SentimentDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class TargetedSentimentDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class TopicsDetectionJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class DescribeDatasetResponseTypeDef(BaseModel): + DatasetProperties: DatasetPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponseTypeDef(BaseModel): + DatasetPropertiesList: List[DatasetPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointResponseTypeDef(BaseModel): + EndpointProperties: EndpointPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEndpointsResponseTypeDef(BaseModel): + EndpointPropertiesList: List[EndpointPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectPiiEntitiesResponseTypeDef(BaseModel): + Entities: List[PiiEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetectToxicContentRequestRequestTypeDef(BaseModel): + TextSegments: Sequence[TextSegmentTypeDef] + LanguageCode: LanguageCodeType + +class DocumentClassifierInputDataConfigTypeDef(BaseModel): + DataFormat: Optional[DocumentClassifierDataFormatType] = None + S3Uri: Optional[str] = None + TestS3Uri: Optional[str] = None + LabelDelimiter: Optional[str] = None + AugmentedManifests: Optional[Sequence[AugmentedManifestsListItemTypeDef]] = None + DocumentType: Optional[DocumentClassifierDocumentTypeFormatType] = None + Documents: Optional[DocumentClassifierDocumentsTypeDef] = None + DocumentReaderConfig: Optional[DocumentReaderConfigTypeDef] = None + +class DocumentClassifierInputDataConfigPaginatorTypeDef(BaseModel): + DataFormat: Optional[DocumentClassifierDataFormatType] = None + S3Uri: Optional[str] = None + TestS3Uri: Optional[str] = None + LabelDelimiter: Optional[str] = None + AugmentedManifests: Optional[List[AugmentedManifestsListItemPaginatorTypeDef]] = None + DocumentType: Optional[DocumentClassifierDocumentTypeFormatType] = None + Documents: Optional[DocumentClassifierDocumentsTypeDef] = None + DocumentReaderConfig: Optional[DocumentReaderConfigPaginatorTypeDef] = None + +class InputDataConfigPaginatorTypeDef(BaseModel): + S3Uri: str + InputFormat: Optional[InputFormatType] = None + DocumentReaderConfig: Optional[DocumentReaderConfigPaginatorTypeDef] = None + +class ListDocumentClassifierSummariesResponseTypeDef(BaseModel): + DocumentClassifierSummariesList: List[DocumentClassifierSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentMetadataTypeDef(BaseModel): + Pages: Optional[int] = None + ExtractedCharacters: Optional[List[ExtractedCharactersListItemTypeDef]] = None + +class EntityRecognitionConfigTypeDef(BaseModel): + EntityTypes: Sequence[EntityTypesListItemTypeDef] + +class EntityRecognizerInputDataConfigPaginatorTypeDef(BaseModel): + EntityTypes: List[EntityTypesListItemTypeDef] + DataFormat: Optional[EntityRecognizerDataFormatType] = None + Documents: Optional[EntityRecognizerDocumentsTypeDef] = None + Annotations: Optional[EntityRecognizerAnnotationsTypeDef] = None + EntityList: Optional[EntityRecognizerEntityListTypeDef] = None + AugmentedManifests: Optional[List[AugmentedManifestsListItemPaginatorTypeDef]] = None + +class EntityRecognizerInputDataConfigTypeDef(BaseModel): + EntityTypes: Sequence[EntityTypesListItemTypeDef] + DataFormat: Optional[EntityRecognizerDataFormatType] = None + Documents: Optional[EntityRecognizerDocumentsTypeDef] = None + Annotations: Optional[EntityRecognizerAnnotationsTypeDef] = None + EntityList: Optional[EntityRecognizerEntityListTypeDef] = None + AugmentedManifests: Optional[Sequence[AugmentedManifestsListItemTypeDef]] = None + +class EntityRecognizerMetadataEntityTypesListItemTypeDef(BaseModel): + Type: Optional[str] = None + EvaluationMetrics: Optional[EntityTypesEvaluationMetricsTypeDef] = None + NumberOfTrainMentions: Optional[int] = None + +class ListEntityRecognizerSummariesResponseTypeDef(BaseModel): + EntityRecognizerSummariesList: List[EntityRecognizerSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FlywheelIterationPropertiesTypeDef(BaseModel): + FlywheelArn: Optional[str] = None + FlywheelIterationId: Optional[str] = None + CreationTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Status: Optional[FlywheelIterationStatusType] = None + Message: Optional[str] = None + EvaluatedModelArn: Optional[str] = None + EvaluatedModelMetrics: Optional[FlywheelModelEvaluationMetricsTypeDef] = None + TrainedModelArn: Optional[str] = None + TrainedModelMetrics: Optional[FlywheelModelEvaluationMetricsTypeDef] = None + EvaluationManifestS3Prefix: Optional[str] = None + +class ListFlywheelsResponseTypeDef(BaseModel): + FlywheelSummaryList: List[FlywheelSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GeometryTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Polygon: Optional[List[PointTypeDef]] = None + +class SyntaxTokenTypeDef(BaseModel): + TokenId: Optional[int] = None + Text: Optional[str] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + PartOfSpeech: Optional[PartOfSpeechTagTypeDef] = None + +class ToxicLabelsTypeDef(BaseModel): + Labels: Optional[List[ToxicContentTypeDef]] = None + Toxicity: Optional[float] = None + +class BatchDetectDominantLanguageResponseTypeDef(BaseModel): + ResultList: List[BatchDetectDominantLanguageItemResultTypeDef] + ErrorList: List[BatchItemErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectKeyPhrasesResponseTypeDef(BaseModel): + ResultList: List[BatchDetectKeyPhrasesItemResultTypeDef] + ErrorList: List[BatchItemErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectSentimentResponseTypeDef(BaseModel): + ResultList: List[BatchDetectSentimentItemResultTypeDef] + ErrorList: List[BatchItemErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TargetedSentimentMentionTypeDef(BaseModel): + Score: Optional[float] = None + GroupScore: Optional[float] = None + Text: Optional[str] = None + Type: Optional[TargetedSentimentEntityTypeType] = None + MentionSentiment: Optional[MentionSentimentTypeDef] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + +class EntityTypeDef(BaseModel): + Score: Optional[float] = None + Type: Optional[EntityTypeType] = None + Text: Optional[str] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + BlockReferences: Optional[List[BlockReferenceTypeDef]] = None + +class DocumentClassificationJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + DocumentClassifierArn: Optional[str] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + FlywheelArn: Optional[str] = None + +class DominantLanguageDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class EntitiesDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + EntityRecognizerArn: Optional[str] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + FlywheelArn: Optional[str] = None + +class EventsDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + TargetEventTypes: Optional[List[str]] = None + +class KeyPhrasesDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class PiiEntitiesDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[PiiOutputDataConfigTypeDef] = None + RedactionConfig: Optional[RedactionConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + Mode: Optional[PiiEntitiesDetectionModeType] = None + +class SentimentDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class StartDocumentClassificationJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + JobName: Optional[str] = None + DocumentClassifierArn: Optional[str] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + FlywheelArn: Optional[str] = None + +class StartDominantLanguageDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartEntitiesDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: LanguageCodeType + JobName: Optional[str] = None + EntityRecognizerArn: Optional[str] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + FlywheelArn: Optional[str] = None + +class StartEventsDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: LanguageCodeType + TargetEventTypes: Sequence[str] + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartKeyPhrasesDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: LanguageCodeType + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartPiiEntitiesDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + Mode: PiiEntitiesDetectionModeType + DataAccessRoleArn: str + LanguageCode: LanguageCodeType + RedactionConfig: Optional[RedactionConfigTypeDef] = None + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartSentimentDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: LanguageCodeType + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartTargetedSentimentDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: LanguageCodeType + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartTopicsDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + JobName: Optional[str] = None + NumberOfTopics: Optional[int] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TargetedSentimentDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class TopicsDetectionJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + NumberOfTopics: Optional[int] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class UpdateFlywheelRequestRequestTypeDef(BaseModel): + FlywheelArn: str + ActiveModelArn: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + DataSecurityConfig: Optional[UpdateDataSecurityConfigTypeDef] = None + +class DatasetInputDataConfigTypeDef(BaseModel): + AugmentedManifests: Optional[Sequence[DatasetAugmentedManifestsListItemTypeDef]] = None + DataFormat: Optional[DatasetDataFormatType] = None + DocumentClassifierInputDataConfig: Optional[ DatasetDocumentClassifierInputDataConfigTypeDef ] = None + EntityRecognizerInputDataConfig: Optional[ DatasetEntityRecognizerInputDataConfigTypeDef ] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + FlywheelArn: Optional[str] = None + Filter: Optional[DatasetFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDocumentClassificationJobsRequestListDocumentClassificationJobsPaginateTypeDef(BaseModel): + Filter: Optional[DocumentClassificationJobFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDocumentClassificationJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[DocumentClassificationJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDocumentClassifiersRequestListDocumentClassifiersPaginateTypeDef(BaseModel): + Filter: Optional[DocumentClassifierFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDocumentClassifiersRequestRequestTypeDef(BaseModel): + Filter: Optional[DocumentClassifierFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDominantLanguageDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[DominantLanguageDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEndpointsRequestListEndpointsPaginateTypeDef(BaseModel): + Filter: Optional[EndpointFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEndpointsRequestRequestTypeDef(BaseModel): + Filter: Optional[EndpointFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEntitiesDetectionJobsRequestListEntitiesDetectionJobsPaginateTypeDef(BaseModel): + Filter: Optional[EntitiesDetectionJobFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEntitiesDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[EntitiesDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEntityRecognizersRequestListEntityRecognizersPaginateTypeDef(BaseModel): + Filter: Optional[EntityRecognizerFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEntityRecognizersRequestRequestTypeDef(BaseModel): + Filter: Optional[EntityRecognizerFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEventsDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[EventsDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFlywheelsRequestRequestTypeDef(BaseModel): + Filter: Optional[FlywheelFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFlywheelIterationHistoryRequestRequestTypeDef(BaseModel): + FlywheelArn: str + Filter: Optional[FlywheelIterationFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListKeyPhrasesDetectionJobsRequestListKeyPhrasesDetectionJobsPaginateTypeDef(BaseModel): + Filter: Optional[KeyPhrasesDetectionJobFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeyPhrasesDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[KeyPhrasesDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPiiEntitiesDetectionJobsRequestListPiiEntitiesDetectionJobsPaginateTypeDef(BaseModel): + Filter: Optional[PiiEntitiesDetectionJobFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPiiEntitiesDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[PiiEntitiesDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListSentimentDetectionJobsRequestListSentimentDetectionJobsPaginateTypeDef(BaseModel): + Filter: Optional[SentimentDetectionJobFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSentimentDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[SentimentDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTargetedSentimentDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[TargetedSentimentDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTopicsDetectionJobsRequestListTopicsDetectionJobsPaginateTypeDef(BaseModel): + Filter: Optional[TopicsDetectionJobFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTopicsDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[TopicsDetectionJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class CreateDocumentClassifierRequestRequestTypeDef(BaseModel): + DocumentClassifierName: str + DataAccessRoleArn: str + InputDataConfig: DocumentClassifierInputDataConfigTypeDef + LanguageCode: LanguageCodeType + VersionName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + OutputDataConfig: Optional[DocumentClassifierOutputDataConfigTypeDef] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Mode: Optional[DocumentClassifierModeType] = None + ModelKmsKeyId: Optional[str] = None + ModelPolicy: Optional[str] = None + +class DocumentClassifierPropertiesTypeDef(BaseModel): + DocumentClassifierArn: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + Status: Optional[ModelStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + TrainingStartTime: Optional[datetime] = None + TrainingEndTime: Optional[datetime] = None + InputDataConfig: Optional[DocumentClassifierInputDataConfigTypeDef] = None + OutputDataConfig: Optional[DocumentClassifierOutputDataConfigTypeDef] = None + ClassifierMetadata: Optional[ClassifierMetadataTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Mode: Optional[DocumentClassifierModeType] = None + ModelKmsKeyId: Optional[str] = None + VersionName: Optional[str] = None + SourceModelArn: Optional[str] = None + FlywheelArn: Optional[str] = None + +class DocumentClassifierPropertiesPaginatorTypeDef(BaseModel): + DocumentClassifierArn: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + Status: Optional[ModelStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + TrainingStartTime: Optional[datetime] = None + TrainingEndTime: Optional[datetime] = None + InputDataConfig: Optional[DocumentClassifierInputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[DocumentClassifierOutputDataConfigTypeDef] = None + ClassifierMetadata: Optional[ClassifierMetadataTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + Mode: Optional[DocumentClassifierModeType] = None + ModelKmsKeyId: Optional[str] = None + VersionName: Optional[str] = None + SourceModelArn: Optional[str] = None + FlywheelArn: Optional[str] = None + +class DocumentClassificationJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + DocumentClassifierArn: Optional[str] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + FlywheelArn: Optional[str] = None + +class DominantLanguageDetectionJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + +class EntitiesDetectionJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + EntityRecognizerArn: Optional[str] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + FlywheelArn: Optional[str] = None + +class KeyPhrasesDetectionJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + +class PiiEntitiesDetectionJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[PiiOutputDataConfigTypeDef] = None + RedactionConfig: Optional[RedactionConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + Mode: Optional[PiiEntitiesDetectionModeType] = None + +class SentimentDetectionJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + +class TopicsDetectionJobPropertiesPaginatorTypeDef(BaseModel): + JobId: Optional[str] = None + JobArn: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigPaginatorTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + NumberOfTopics: Optional[int] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + +class ClassifyDocumentResponseTypeDef(BaseModel): + Classes: List[DocumentClassTypeDef] + Labels: List[DocumentLabelTypeDef] + DocumentMetadata: DocumentMetadataTypeDef + DocumentType: List[DocumentTypeListItemTypeDef] + Errors: List[ErrorsListItemTypeDef] + Warnings: List[WarningsListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TaskConfigTypeDef(BaseModel): + LanguageCode: LanguageCodeType + DocumentClassificationConfig: Optional[DocumentClassificationConfigTypeDef] = None + EntityRecognitionConfig: Optional[EntityRecognitionConfigTypeDef] = None + +class CreateEntityRecognizerRequestRequestTypeDef(BaseModel): + RecognizerName: str + DataAccessRoleArn: str + InputDataConfig: EntityRecognizerInputDataConfigTypeDef + LanguageCode: LanguageCodeType + VersionName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + ModelKmsKeyId: Optional[str] = None + ModelPolicy: Optional[str] = None + +class EntityRecognizerMetadataTypeDef(BaseModel): + NumberOfTrainedDocuments: Optional[int] = None + NumberOfTestDocuments: Optional[int] = None + EvaluationMetrics: Optional[EntityRecognizerEvaluationMetricsTypeDef] = None + EntityTypes: Optional[List[EntityRecognizerMetadataEntityTypesListItemTypeDef]] = None + +class DescribeFlywheelIterationResponseTypeDef(BaseModel): + FlywheelIterationProperties: FlywheelIterationPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFlywheelIterationHistoryResponseTypeDef(BaseModel): + FlywheelIterationPropertiesList: List[FlywheelIterationPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BlockTypeDef(BaseModel): + Id: Optional[str] = None + BlockType: Optional[BlockTypeType] = None + Text: Optional[str] = None + Page: Optional[int] = None + Geometry: Optional[GeometryTypeDef] = None + Relationships: Optional[List[RelationshipsListItemTypeDef]] = None + +class BatchDetectSyntaxItemResultTypeDef(BaseModel): + Index: Optional[int] = None + SyntaxTokens: Optional[List[SyntaxTokenTypeDef]] = None + +class DetectSyntaxResponseTypeDef(BaseModel): + SyntaxTokens: List[SyntaxTokenTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetectToxicContentResponseTypeDef(BaseModel): + ResultList: List[ToxicLabelsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TargetedSentimentEntityTypeDef(BaseModel): + DescriptiveMentionIndex: Optional[List[int]] = None + Mentions: Optional[List[TargetedSentimentMentionTypeDef]] = None + +class BatchDetectEntitiesItemResultTypeDef(BaseModel): + Index: Optional[int] = None + Entities: Optional[List[EntityTypeDef]] = None + +class DescribeDocumentClassificationJobResponseTypeDef(BaseModel): + DocumentClassificationJobProperties: DocumentClassificationJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDocumentClassificationJobsResponseTypeDef(BaseModel): + DocumentClassificationJobPropertiesList: List[DocumentClassificationJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDominantLanguageDetectionJobResponseTypeDef(BaseModel): + DominantLanguageDetectionJobProperties: DominantLanguageDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDominantLanguageDetectionJobsResponseTypeDef(BaseModel): + DominantLanguageDetectionJobPropertiesList: List[ DominantLanguageDetectionJobPropertiesTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEntitiesDetectionJobResponseTypeDef(BaseModel): + EntitiesDetectionJobProperties: EntitiesDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntitiesDetectionJobsResponseTypeDef(BaseModel): + EntitiesDetectionJobPropertiesList: List[EntitiesDetectionJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventsDetectionJobResponseTypeDef(BaseModel): + EventsDetectionJobProperties: EventsDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventsDetectionJobsResponseTypeDef(BaseModel): + EventsDetectionJobPropertiesList: List[EventsDetectionJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyPhrasesDetectionJobResponseTypeDef(BaseModel): + KeyPhrasesDetectionJobProperties: KeyPhrasesDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyPhrasesDetectionJobsResponseTypeDef(BaseModel): + KeyPhrasesDetectionJobPropertiesList: List[KeyPhrasesDetectionJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePiiEntitiesDetectionJobResponseTypeDef(BaseModel): + PiiEntitiesDetectionJobProperties: PiiEntitiesDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPiiEntitiesDetectionJobsResponseTypeDef(BaseModel): + PiiEntitiesDetectionJobPropertiesList: List[PiiEntitiesDetectionJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSentimentDetectionJobResponseTypeDef(BaseModel): + SentimentDetectionJobProperties: SentimentDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSentimentDetectionJobsResponseTypeDef(BaseModel): + SentimentDetectionJobPropertiesList: List[SentimentDetectionJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTargetedSentimentDetectionJobResponseTypeDef(BaseModel): + TargetedSentimentDetectionJobProperties: TargetedSentimentDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetedSentimentDetectionJobsResponseTypeDef(BaseModel): + TargetedSentimentDetectionJobPropertiesList: List[ TargetedSentimentDetectionJobPropertiesTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTopicsDetectionJobResponseTypeDef(BaseModel): + TopicsDetectionJobProperties: TopicsDetectionJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTopicsDetectionJobsResponseTypeDef(BaseModel): + TopicsDetectionJobPropertiesList: List[TopicsDetectionJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetRequestRequestTypeDef(BaseModel): + FlywheelArn: str + DatasetName: str + InputDataConfig: DatasetInputDataConfigTypeDef + DatasetType: Optional[DatasetTypeType] = None + Description: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeDocumentClassifierResponseTypeDef(BaseModel): + DocumentClassifierProperties: DocumentClassifierPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDocumentClassifiersResponseTypeDef(BaseModel): + DocumentClassifierPropertiesList: List[DocumentClassifierPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDocumentClassifiersResponsePaginatorTypeDef(BaseModel): + DocumentClassifierPropertiesList: List[DocumentClassifierPropertiesPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDocumentClassificationJobsResponsePaginatorTypeDef(BaseModel): + DocumentClassificationJobPropertiesList: List[ DocumentClassificationJobPropertiesPaginatorTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDominantLanguageDetectionJobsResponsePaginatorTypeDef(BaseModel): + DominantLanguageDetectionJobPropertiesList: List[ DominantLanguageDetectionJobPropertiesPaginatorTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntitiesDetectionJobsResponsePaginatorTypeDef(BaseModel): + EntitiesDetectionJobPropertiesList: List[EntitiesDetectionJobPropertiesPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyPhrasesDetectionJobsResponsePaginatorTypeDef(BaseModel): + KeyPhrasesDetectionJobPropertiesList: List[ KeyPhrasesDetectionJobPropertiesPaginatorTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPiiEntitiesDetectionJobsResponsePaginatorTypeDef(BaseModel): + PiiEntitiesDetectionJobPropertiesList: List[ PiiEntitiesDetectionJobPropertiesPaginatorTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSentimentDetectionJobsResponsePaginatorTypeDef(BaseModel): + SentimentDetectionJobPropertiesList: List[ SentimentDetectionJobPropertiesPaginatorTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTopicsDetectionJobsResponsePaginatorTypeDef(BaseModel): + TopicsDetectionJobPropertiesList: List[TopicsDetectionJobPropertiesPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlywheelRequestRequestTypeDef(BaseModel): + FlywheelName: str + DataAccessRoleArn: str + DataLakeS3Uri: str + ActiveModelArn: Optional[str] = None + TaskConfig: Optional[TaskConfigTypeDef] = None + ModelType: Optional[ModelTypeType] = None + DataSecurityConfig: Optional[DataSecurityConfigTypeDef] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class FlywheelPropertiesTypeDef(BaseModel): + FlywheelArn: Optional[str] = None + ActiveModelArn: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + TaskConfig: Optional[TaskConfigTypeDef] = None + DataLakeS3Uri: Optional[str] = None + DataSecurityConfig: Optional[DataSecurityConfigTypeDef] = None + Status: Optional[FlywheelStatusType] = None + ModelType: Optional[ModelTypeType] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LatestFlywheelIteration: Optional[str] = None + +class EntityRecognizerPropertiesPaginatorTypeDef(BaseModel): + EntityRecognizerArn: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + Status: Optional[ModelStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + TrainingStartTime: Optional[datetime] = None + TrainingEndTime: Optional[datetime] = None + InputDataConfig: Optional[EntityRecognizerInputDataConfigPaginatorTypeDef] = None + RecognizerMetadata: Optional[EntityRecognizerMetadataTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigPaginatorTypeDef] = None + ModelKmsKeyId: Optional[str] = None + VersionName: Optional[str] = None + SourceModelArn: Optional[str] = None + FlywheelArn: Optional[str] = None + OutputDataConfig: Optional[EntityRecognizerOutputDataConfigTypeDef] = None + +class EntityRecognizerPropertiesTypeDef(BaseModel): + EntityRecognizerArn: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + Status: Optional[ModelStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + TrainingStartTime: Optional[datetime] = None + TrainingEndTime: Optional[datetime] = None + InputDataConfig: Optional[EntityRecognizerInputDataConfigTypeDef] = None + RecognizerMetadata: Optional[EntityRecognizerMetadataTypeDef] = None + DataAccessRoleArn: Optional[str] = None + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + ModelKmsKeyId: Optional[str] = None + VersionName: Optional[str] = None + SourceModelArn: Optional[str] = None + FlywheelArn: Optional[str] = None + OutputDataConfig: Optional[EntityRecognizerOutputDataConfigTypeDef] = None + +class DetectEntitiesResponseTypeDef(BaseModel): + Entities: List[EntityTypeDef] + DocumentMetadata: DocumentMetadataTypeDef + DocumentType: List[DocumentTypeListItemTypeDef] + Blocks: List[BlockTypeDef] + Errors: List[ErrorsListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectSyntaxResponseTypeDef(BaseModel): + ResultList: List[BatchDetectSyntaxItemResultTypeDef] + ErrorList: List[BatchItemErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectTargetedSentimentItemResultTypeDef(BaseModel): + Index: Optional[int] = None + Entities: Optional[List[TargetedSentimentEntityTypeDef]] = None + +class DetectTargetedSentimentResponseTypeDef(BaseModel): + Entities: List[TargetedSentimentEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectEntitiesResponseTypeDef(BaseModel): + ResultList: List[BatchDetectEntitiesItemResultTypeDef] + ErrorList: List[BatchItemErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFlywheelResponseTypeDef(BaseModel): + FlywheelProperties: FlywheelPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlywheelResponseTypeDef(BaseModel): + FlywheelProperties: FlywheelPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntityRecognizersResponsePaginatorTypeDef(BaseModel): + EntityRecognizerPropertiesList: List[EntityRecognizerPropertiesPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEntityRecognizerResponseTypeDef(BaseModel): + EntityRecognizerProperties: EntityRecognizerPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntityRecognizersResponseTypeDef(BaseModel): + EntityRecognizerPropertiesList: List[EntityRecognizerPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDetectTargetedSentimentResponseTypeDef(BaseModel): + ResultList: List[BatchDetectTargetedSentimentItemResultTypeDef] + ErrorList: List[BatchItemErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/comprehend_constants.py b/aws_resource_validator/pydantic_models/comprehend_constants.py new file mode 100644 index 00000000..bc20efed --- /dev/null +++ b/aws_resource_validator/pydantic_models/comprehend_constants.py @@ -0,0 +1,560 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AugmentedManifestsDocumentTypeFormatType = Literal["PLAIN_TEXT_DOCUMENT", "SEMI_STRUCTURED_DOCUMENT"] +BlockTypeType = Literal["LINE", "WORD"] +DatasetDataFormatType = Literal["AUGMENTED_MANIFEST", "COMPREHEND_CSV"] +DatasetStatusType = Literal["COMPLETED", "CREATING", "FAILED"] +DatasetTypeType = Literal["TEST", "TRAIN"] +DocumentClassifierDataFormatType = Literal["AUGMENTED_MANIFEST", "COMPREHEND_CSV"] +DocumentClassifierDocumentTypeFormatType = Literal["PLAIN_TEXT_DOCUMENT", "SEMI_STRUCTURED_DOCUMENT"] +DocumentClassifierModeType = Literal["MULTI_CLASS", "MULTI_LABEL"] +DocumentReadActionType = Literal["TEXTRACT_ANALYZE_DOCUMENT", "TEXTRACT_DETECT_DOCUMENT_TEXT"] +DocumentReadFeatureTypesType = Literal["FORMS", "TABLES"] +DocumentReadModeType = Literal["FORCE_DOCUMENT_READ_ACTION", "SERVICE_DEFAULT"] +DocumentTypeType = Literal["IMAGE", + "MS_WORD", + "NATIVE_PDF", + "PLAIN_TEXT", + "SCANNED_PDF", + "TEXTRACT_ANALYZE_DOCUMENT_JSON", + "TEXTRACT_DETECT_DOCUMENT_TEXT_JSON",] +EndpointStatusType = Literal["CREATING", "DELETING", "FAILED", "IN_SERVICE", "UPDATING"] +EntityRecognizerDataFormatType = Literal["AUGMENTED_MANIFEST", "COMPREHEND_CSV"] +EntityTypeType = Literal["COMMERCIAL_ITEM", + "DATE", + "EVENT", + "LOCATION", + "ORGANIZATION", + "OTHER", + "PERSON", + "QUANTITY", + "TITLE",] +FlywheelIterationStatusType = Literal["COMPLETED", "EVALUATING", "FAILED", "STOPPED", "STOP_REQUESTED", "TRAINING"] +FlywheelStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +InputFormatType = Literal["ONE_DOC_PER_FILE", "ONE_DOC_PER_LINE"] +JobStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "STOPPED", "STOP_REQUESTED", "SUBMITTED"] +LanguageCodeType = Literal["ar", "de", "en", "es", "fr", "hi", "it", "ja", "ko", "pt", "zh", "zh-TW"] +ListDocumentClassificationJobsPaginatorName = Literal["list_document_classification_jobs"] +ListDocumentClassifiersPaginatorName = Literal["list_document_classifiers"] +ListDominantLanguageDetectionJobsPaginatorName = Literal["list_dominant_language_detection_jobs"] +ListEndpointsPaginatorName = Literal["list_endpoints"] +ListEntitiesDetectionJobsPaginatorName = Literal["list_entities_detection_jobs"] +ListEntityRecognizersPaginatorName = Literal["list_entity_recognizers"] +ListKeyPhrasesDetectionJobsPaginatorName = Literal["list_key_phrases_detection_jobs"] +ListPiiEntitiesDetectionJobsPaginatorName = Literal["list_pii_entities_detection_jobs"] +ListSentimentDetectionJobsPaginatorName = Literal["list_sentiment_detection_jobs"] +ListTopicsDetectionJobsPaginatorName = Literal["list_topics_detection_jobs"] +ModelStatusType = Literal["DELETING", + "IN_ERROR", + "STOPPED", + "STOP_REQUESTED", + "SUBMITTED", + "TRAINED", + "TRAINED_WITH_WARNING", + "TRAINING",] +ModelTypeType = Literal["DOCUMENT_CLASSIFIER", "ENTITY_RECOGNIZER"] +PageBasedErrorCodeType = Literal["INTERNAL_SERVER_ERROR", + "PAGE_CHARACTERS_EXCEEDED", + "PAGE_SIZE_EXCEEDED", + "TEXTRACT_BAD_PAGE", + "TEXTRACT_PROVISIONED_THROUGHPUT_EXCEEDED",] +PageBasedWarningCodeType = Literal["INFERENCING_NATIVE_DOCUMENT_WITH_PLAINTEXT_TRAINED_MODEL", + "INFERENCING_PLAINTEXT_WITH_NATIVE_TRAINED_MODEL",] +PartOfSpeechTagTypeType = Literal["ADJ", + "ADP", + "ADV", + "AUX", + "CCONJ", + "CONJ", + "DET", + "INTJ", + "NOUN", + "NUM", + "O", + "PART", + "PRON", + "PROPN", + "PUNCT", + "SCONJ", + "SYM", + "VERB",] +PiiEntitiesDetectionMaskModeType = Literal["MASK", "REPLACE_WITH_PII_ENTITY_TYPE"] +PiiEntitiesDetectionModeType = Literal["ONLY_OFFSETS", "ONLY_REDACTION"] +PiiEntityTypeType = Literal["ADDRESS", + "AGE", + "ALL", + "AWS_ACCESS_KEY", + "AWS_SECRET_KEY", + "BANK_ACCOUNT_NUMBER", + "BANK_ROUTING", + "CA_HEALTH_NUMBER", + "CA_SOCIAL_INSURANCE_NUMBER", + "CREDIT_DEBIT_CVV", + "CREDIT_DEBIT_EXPIRY", + "CREDIT_DEBIT_NUMBER", + "DATE_TIME", + "DRIVER_ID", + "EMAIL", + "INTERNATIONAL_BANK_ACCOUNT_NUMBER", + "IN_AADHAAR", + "IN_NREGA", + "IN_PERMANENT_ACCOUNT_NUMBER", + "IN_VOTER_NUMBER", + "IP_ADDRESS", + "LICENSE_PLATE", + "MAC_ADDRESS", + "NAME", + "PASSPORT_NUMBER", + "PASSWORD", + "PHONE", + "PIN", + "SSN", + "SWIFT_CODE", + "UK_NATIONAL_HEALTH_SERVICE_NUMBER", + "UK_NATIONAL_INSURANCE_NUMBER", + "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", + "URL", + "USERNAME", + "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", + "VEHICLE_IDENTIFICATION_NUMBER",] +RelationshipTypeType = Literal["CHILD"] +SentimentTypeType = Literal["MIXED", "NEGATIVE", "NEUTRAL", "POSITIVE"] +SplitType = Literal["TEST", "TRAIN"] +SyntaxLanguageCodeType = Literal["de", "en", "es", "fr", "it", "pt"] +TargetedSentimentEntityTypeType = Literal["ATTRIBUTE", + "BOOK", + "BRAND", + "COMMERCIAL_ITEM", + "DATE", + "EVENT", + "FACILITY", + "GAME", + "LOCATION", + "MOVIE", + "MUSIC", + "ORGANIZATION", + "OTHER", + "PERSON", + "PERSONAL_TITLE", + "QUANTITY", + "SOFTWARE",] +ToxicContentTypeType = Literal["GRAPHIC", + "HARASSMENT_OR_ABUSE", + "HATE_SPEECH", + "INSULT", + "PROFANITY", + "SEXUAL", + "VIOLENCE_OR_THREAT",] +ComprehendServiceName = Literal["comprehend"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_document_classification_jobs", + "list_document_classifiers", + "list_dominant_language_detection_jobs", + "list_endpoints", + "list_entities_detection_jobs", + "list_entity_recognizers", + "list_key_phrases_detection_jobs", + "list_pii_entities_detection_jobs", + "list_sentiment_detection_jobs", + "list_topics_detection_jobs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/comprehendmedical_classes.py b/aws_resource_validator/pydantic_models/comprehendmedical_classes.py new file mode 100644 index 00000000..4e87e24e --- /dev/null +++ b/aws_resource_validator/pydantic_models/comprehendmedical_classes.py @@ -0,0 +1,430 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.comprehendmedical_constants import * + +class TraitTypeDef(BaseModel): + Name: Optional[AttributeNameType] = None + Score: Optional[float] = None + +class CharactersTypeDef(BaseModel): + OriginalTextCharacters: Optional[int] = None + +class InputDataConfigTypeDef(BaseModel): + S3Bucket: str + S3Key: Optional[str] = None + +class OutputDataConfigTypeDef(BaseModel): + S3Bucket: str + S3Key: Optional[str] = None + +class DescribeEntitiesDetectionV2JobRequestRequestTypeDef(BaseModel): + JobId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeICD10CMInferenceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribePHIDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeRxNormInferenceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeSNOMEDCTInferenceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DetectEntitiesRequestRequestTypeDef(BaseModel): + Text: str + +class DetectEntitiesV2RequestRequestTypeDef(BaseModel): + Text: str + +class DetectPHIRequestRequestTypeDef(BaseModel): + Text: str + +class ICD10CMTraitTypeDef(BaseModel): + Name: Optional[ICD10CMTraitNameType] = None + Score: Optional[float] = None + +class ICD10CMConceptTypeDef(BaseModel): + Description: Optional[str] = None + Code: Optional[str] = None + Score: Optional[float] = None + +class InferICD10CMRequestRequestTypeDef(BaseModel): + Text: str + +class InferRxNormRequestRequestTypeDef(BaseModel): + Text: str + +class InferSNOMEDCTRequestRequestTypeDef(BaseModel): + Text: str + +class SNOMEDCTDetailsTypeDef(BaseModel): + Edition: Optional[str] = None + Language: Optional[str] = None + VersionDate: Optional[str] = None + +class RxNormTraitTypeDef(BaseModel): + Name: Optional[RxNormTraitNameType] = None + Score: Optional[float] = None + +class RxNormConceptTypeDef(BaseModel): + Description: Optional[str] = None + Code: Optional[str] = None + Score: Optional[float] = None + +class SNOMEDCTConceptTypeDef(BaseModel): + Description: Optional[str] = None + Code: Optional[str] = None + Score: Optional[float] = None + +class SNOMEDCTTraitTypeDef(BaseModel): + Name: Optional[SNOMEDCTTraitNameType] = None + Score: Optional[float] = None + +class StopEntitiesDetectionV2JobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopICD10CMInferenceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopPHIDetectionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopRxNormInferenceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class StopSNOMEDCTInferenceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class AttributeTypeDef(BaseModel): + Type: Optional[EntitySubTypeType] = None + Score: Optional[float] = None + RelationshipScore: Optional[float] = None + RelationshipType: Optional[RelationshipTypeType] = None + Id: Optional[int] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Text: Optional[str] = None + Category: Optional[EntityTypeType] = None + Traits: Optional[List[TraitTypeDef]] = None + +class ComprehendMedicalAsyncJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmitTimeBefore: Optional[TimestampTypeDef] = None + SubmitTimeAfter: Optional[TimestampTypeDef] = None + +class ComprehendMedicalAsyncJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + Message: Optional[str] = None + SubmitTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ExpirationTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + LanguageCode: Optional[Literal["en"]] = None + DataAccessRoleArn: Optional[str] = None + ManifestFilePath: Optional[str] = None + KMSKey: Optional[str] = None + ModelVersion: Optional[str] = None + +class StartEntitiesDetectionV2JobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: Literal["en"] + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + KMSKey: Optional[str] = None + +class StartICD10CMInferenceJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: Literal["en"] + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + KMSKey: Optional[str] = None + +class StartPHIDetectionJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: Literal["en"] + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + KMSKey: Optional[str] = None + +class StartRxNormInferenceJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: Literal["en"] + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + KMSKey: Optional[str] = None + +class StartSNOMEDCTInferenceJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + LanguageCode: Literal["en"] + JobName: Optional[str] = None + ClientRequestToken: Optional[str] = None + KMSKey: Optional[str] = None + +class StartEntitiesDetectionV2JobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartICD10CMInferenceJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartPHIDetectionJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartRxNormInferenceJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSNOMEDCTInferenceJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopEntitiesDetectionV2JobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopICD10CMInferenceJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopPHIDetectionJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopRxNormInferenceJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopSNOMEDCTInferenceJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ICD10CMAttributeTypeDef(BaseModel): + Type: Optional[ICD10CMAttributeTypeType] = None + Score: Optional[float] = None + RelationshipScore: Optional[float] = None + Id: Optional[int] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Text: Optional[str] = None + Traits: Optional[List[ICD10CMTraitTypeDef]] = None + Category: Optional[ICD10CMEntityTypeType] = None + RelationshipType: Optional[ICD10CMRelationshipTypeType] = None + +class RxNormAttributeTypeDef(BaseModel): + Type: Optional[RxNormAttributeTypeType] = None + Score: Optional[float] = None + RelationshipScore: Optional[float] = None + Id: Optional[int] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Text: Optional[str] = None + Traits: Optional[List[RxNormTraitTypeDef]] = None + +class SNOMEDCTAttributeTypeDef(BaseModel): + Category: Optional[SNOMEDCTEntityCategoryType] = None + Type: Optional[SNOMEDCTAttributeTypeType] = None + Score: Optional[float] = None + RelationshipScore: Optional[float] = None + RelationshipType: Optional[SNOMEDCTRelationshipTypeType] = None + Id: Optional[int] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Text: Optional[str] = None + Traits: Optional[List[SNOMEDCTTraitTypeDef]] = None + SNOMEDCTConcepts: Optional[List[SNOMEDCTConceptTypeDef]] = None + +class EntityTypeDef(BaseModel): + Id: Optional[int] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Score: Optional[float] = None + Text: Optional[str] = None + Category: Optional[EntityTypeType] = None + Type: Optional[EntitySubTypeType] = None + Traits: Optional[List[TraitTypeDef]] = None + Attributes: Optional[List[AttributeTypeDef]] = None + +class UnmappedAttributeTypeDef(BaseModel): + Type: Optional[EntityTypeType] = None + Attribute: Optional[AttributeTypeDef] = None + +class ListEntitiesDetectionV2JobsRequestRequestTypeDef(BaseModel): + Filter: Optional[ComprehendMedicalAsyncJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListICD10CMInferenceJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[ComprehendMedicalAsyncJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPHIDetectionJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[ComprehendMedicalAsyncJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRxNormInferenceJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[ComprehendMedicalAsyncJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListSNOMEDCTInferenceJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[ComprehendMedicalAsyncJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeEntitiesDetectionV2JobResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobProperties: ComprehendMedicalAsyncJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeICD10CMInferenceJobResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobProperties: ComprehendMedicalAsyncJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePHIDetectionJobResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobProperties: ComprehendMedicalAsyncJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRxNormInferenceJobResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobProperties: ComprehendMedicalAsyncJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSNOMEDCTInferenceJobResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobProperties: ComprehendMedicalAsyncJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntitiesDetectionV2JobsResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobPropertiesList: List[ComprehendMedicalAsyncJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListICD10CMInferenceJobsResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobPropertiesList: List[ComprehendMedicalAsyncJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPHIDetectionJobsResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobPropertiesList: List[ComprehendMedicalAsyncJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRxNormInferenceJobsResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobPropertiesList: List[ComprehendMedicalAsyncJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSNOMEDCTInferenceJobsResponseTypeDef(BaseModel): + ComprehendMedicalAsyncJobPropertiesList: List[ComprehendMedicalAsyncJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ICD10CMEntityTypeDef(BaseModel): + Id: Optional[int] = None + Text: Optional[str] = None + Category: Optional[Literal["MEDICAL_CONDITION"]] = None + Type: Optional[ICD10CMEntityTypeType] = None + Score: Optional[float] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Attributes: Optional[List[ICD10CMAttributeTypeDef]] = None + Traits: Optional[List[ICD10CMTraitTypeDef]] = None + ICD10CMConcepts: Optional[List[ICD10CMConceptTypeDef]] = None + +class RxNormEntityTypeDef(BaseModel): + Id: Optional[int] = None + Text: Optional[str] = None + Category: Optional[Literal["MEDICATION"]] = None + Type: Optional[RxNormEntityTypeType] = None + Score: Optional[float] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Attributes: Optional[List[RxNormAttributeTypeDef]] = None + Traits: Optional[List[RxNormTraitTypeDef]] = None + RxNormConcepts: Optional[List[RxNormConceptTypeDef]] = None + +class SNOMEDCTEntityTypeDef(BaseModel): + Id: Optional[int] = None + Text: Optional[str] = None + Category: Optional[SNOMEDCTEntityCategoryType] = None + Type: Optional[SNOMEDCTEntityTypeType] = None + Score: Optional[float] = None + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Attributes: Optional[List[SNOMEDCTAttributeTypeDef]] = None + Traits: Optional[List[SNOMEDCTTraitTypeDef]] = None + SNOMEDCTConcepts: Optional[List[SNOMEDCTConceptTypeDef]] = None + +class DetectPHIResponseTypeDef(BaseModel): + Entities: List[EntityTypeDef] + PaginationToken: str + ModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectEntitiesResponseTypeDef(BaseModel): + Entities: List[EntityTypeDef] + UnmappedAttributes: List[UnmappedAttributeTypeDef] + PaginationToken: str + ModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectEntitiesV2ResponseTypeDef(BaseModel): + Entities: List[EntityTypeDef] + UnmappedAttributes: List[UnmappedAttributeTypeDef] + PaginationToken: str + ModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class InferICD10CMResponseTypeDef(BaseModel): + Entities: List[ICD10CMEntityTypeDef] + PaginationToken: str + ModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class InferRxNormResponseTypeDef(BaseModel): + Entities: List[RxNormEntityTypeDef] + PaginationToken: str + ModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class InferSNOMEDCTResponseTypeDef(BaseModel): + Entities: List[SNOMEDCTEntityTypeDef] + PaginationToken: str + ModelVersion: str + SNOMEDCTDetails: SNOMEDCTDetailsTypeDef + Characters: CharactersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/comprehendmedical_constants.py b/aws_resource_validator/pydantic_models/comprehendmedical_constants.py new file mode 100644 index 00000000..92e08f05 --- /dev/null +++ b/aws_resource_validator/pydantic_models/comprehendmedical_constants.py @@ -0,0 +1,521 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttributeNameType = Literal["DIAGNOSIS", + "FUTURE", + "HYPOTHETICAL", + "LOW_CONFIDENCE", + "NEGATION", + "PAST_HISTORY", + "PERTAINS_TO_FAMILY", + "SIGN", + "SYMPTOM",] +EntitySubTypeType = Literal["ACUITY", + "ADDRESS", + "AGE", + "ALCOHOL_CONSUMPTION", + "ALLERGIES", + "AMOUNT", + "BRAND_NAME", + "CONTACT_POINT", + "DATE", + "DIRECTION", + "DOSAGE", + "DURATION", + "DX_NAME", + "EMAIL", + "FORM", + "FREQUENCY", + "GENDER", + "GENERIC_NAME", + "ID", + "IDENTIFIER", + "NAME", + "PHONE_OR_FAX", + "PROCEDURE_NAME", + "PROFESSION", + "QUALITY", + "QUANTITY", + "RACE_ETHNICITY", + "RATE", + "REC_DRUG_USE", + "ROUTE_OR_MODE", + "STRENGTH", + "SYSTEM_ORGAN_SITE", + "TEST_NAME", + "TEST_UNIT", + "TEST_UNITS", + "TEST_VALUE", + "TIME_EXPRESSION", + "TIME_TO_DX_NAME", + "TIME_TO_MEDICATION_NAME", + "TIME_TO_PROCEDURE_NAME", + "TIME_TO_TEST_NAME", + "TIME_TO_TREATMENT_NAME", + "TOBACCO_USE", + "TREATMENT_NAME", + "URL",] +EntityTypeType = Literal["ANATOMY", + "BEHAVIORAL_ENVIRONMENTAL_SOCIAL", + "MEDICAL_CONDITION", + "MEDICATION", + "PROTECTED_HEALTH_INFORMATION", + "TEST_TREATMENT_PROCEDURE", + "TIME_EXPRESSION",] +ICD10CMAttributeTypeType = Literal["ACUITY", + "DIRECTION", + "QUALITY", + "QUANTITY", + "SYSTEM_ORGAN_SITE", + "TIME_EXPRESSION", + "TIME_TO_DX_NAME",] +ICD10CMEntityCategoryType = Literal["MEDICAL_CONDITION"] +ICD10CMEntityTypeType = Literal["DX_NAME", "TIME_EXPRESSION"] +ICD10CMRelationshipTypeType = Literal["OVERLAP", "QUALITY", "SYSTEM_ORGAN_SITE"] +ICD10CMTraitNameType = Literal["DIAGNOSIS", + "HYPOTHETICAL", + "LOW_CONFIDENCE", + "NEGATION", + "PERTAINS_TO_FAMILY", + "SIGN", + "SYMPTOM",] +JobStatusType = Literal["COMPLETED", + "FAILED", + "IN_PROGRESS", + "PARTIAL_SUCCESS", + "STOPPED", + "STOP_REQUESTED", + "SUBMITTED",] +LanguageCodeType = Literal["en"] +RelationshipTypeType = Literal["ACUITY", + "ADMINISTERED_VIA", + "AMOUNT", + "DIRECTION", + "DOSAGE", + "DURATION", + "EVERY", + "FOR", + "FORM", + "FREQUENCY", + "NEGATIVE", + "OVERLAP", + "QUALITY", + "RATE", + "ROUTE_OR_MODE", + "STRENGTH", + "SYSTEM_ORGAN_SITE", + "TEST_UNIT", + "TEST_UNITS", + "TEST_VALUE", + "USAGE", + "WITH_DOSAGE",] +RxNormAttributeTypeType = Literal["DOSAGE", "DURATION", "FORM", "FREQUENCY", "RATE", "ROUTE_OR_MODE", "STRENGTH"] +RxNormEntityCategoryType = Literal["MEDICATION"] +RxNormEntityTypeType = Literal["BRAND_NAME", "GENERIC_NAME"] +RxNormTraitNameType = Literal["NEGATION", "PAST_HISTORY"] +SNOMEDCTAttributeTypeType = Literal["ACUITY", "DIRECTION", "QUALITY", "SYSTEM_ORGAN_SITE", "TEST_UNIT", "TEST_VALUE"] +SNOMEDCTEntityCategoryType = Literal["ANATOMY", "MEDICAL_CONDITION", "TEST_TREATMENT_PROCEDURE"] +SNOMEDCTEntityTypeType = Literal["DX_NAME", "PROCEDURE_NAME", "TEST_NAME", "TREATMENT_NAME"] +SNOMEDCTRelationshipTypeType = Literal["ACUITY", "DIRECTION", "QUALITY", "SYSTEM_ORGAN_SITE", "TEST_UNIT", "TEST_UNITS", "TEST_VALUE"] +SNOMEDCTTraitNameType = Literal["DIAGNOSIS", + "FUTURE", + "HYPOTHETICAL", + "LOW_CONFIDENCE", + "NEGATION", + "PAST_HISTORY", + "PERTAINS_TO_FAMILY", + "SIGN", + "SYMPTOM",] +ComprehendMedicalServiceName = Literal["comprehendmedical"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-southeast-2", + "ca-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/compute_optimizer_classes.py b/aws_resource_validator/pydantic_models/compute_optimizer_classes.py new file mode 100644 index 00000000..7f83f4bf --- /dev/null +++ b/aws_resource_validator/pydantic_models/compute_optimizer_classes.py @@ -0,0 +1,910 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.compute_optimizer_constants import * + +class AccountEnrollmentStatusTypeDef(BaseModel): + accountId: Optional[str] = None + status: Optional[StatusType] = None + statusReason: Optional[str] = None + lastUpdatedTimestamp: Optional[datetime] = None + +class AutoScalingGroupConfigurationTypeDef(BaseModel): + desiredCapacity: Optional[int] = None + minSize: Optional[int] = None + maxSize: Optional[int] = None + instanceType: Optional[str] = None + +class AutoScalingGroupEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class UtilizationMetricTypeDef(BaseModel): + name: Optional[MetricNameType] = None + statistic: Optional[MetricStatisticType] = None + value: Optional[float] = None + +class MemorySizeConfigurationTypeDef(BaseModel): + memory: Optional[int] = None + memoryReservation: Optional[int] = None + +class CurrentPerformanceRiskRatingsTypeDef(BaseModel): + high: Optional[int] = None + medium: Optional[int] = None + low: Optional[int] = None + veryLow: Optional[int] = None + +class CustomizableMetricParametersTypeDef(BaseModel): + threshold: Optional[CustomizableMetricThresholdType] = None + headroom: Optional[CustomizableMetricHeadroomType] = None + +class DBStorageConfigurationTypeDef(BaseModel): + storageType: Optional[str] = None + allocatedStorage: Optional[int] = None + iops: Optional[int] = None + maxAllocatedStorage: Optional[int] = None + storageThroughput: Optional[int] = None + +class ScopeTypeDef(BaseModel): + name: Optional[ScopeNameType] = None + value: Optional[str] = None + +class JobFilterTypeDef(BaseModel): + name: Optional[JobFilterNameType] = None + values: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class EBSSavingsEstimationModeTypeDef(BaseModel): + source: Optional[EBSSavingsEstimationModeSourceType] = None + +class EBSEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class EBSFilterTypeDef(BaseModel): + name: Optional[Literal["Finding"]] = None + values: Optional[Sequence[str]] = None + +class EBSUtilizationMetricTypeDef(BaseModel): + name: Optional[EBSMetricNameType] = None + statistic: Optional[MetricStatisticType] = None + value: Optional[float] = None + +class ECSSavingsEstimationModeTypeDef(BaseModel): + source: Optional[ECSSavingsEstimationModeSourceType] = None + +class ECSEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class ECSServiceProjectedMetricTypeDef(BaseModel): + name: Optional[ECSServiceMetricNameType] = None + timestamps: Optional[List[datetime]] = None + upperBoundValues: Optional[List[float]] = None + lowerBoundValues: Optional[List[float]] = None + +class ECSServiceProjectedUtilizationMetricTypeDef(BaseModel): + name: Optional[ECSServiceMetricNameType] = None + statistic: Optional[ECSServiceMetricStatisticType] = None + lowerBoundValue: Optional[float] = None + upperBoundValue: Optional[float] = None + +class ECSServiceRecommendationFilterTypeDef(BaseModel): + name: Optional[ECSServiceRecommendationFilterNameType] = None + values: Optional[Sequence[str]] = None + +class ECSServiceUtilizationMetricTypeDef(BaseModel): + name: Optional[ECSServiceMetricNameType] = None + statistic: Optional[ECSServiceMetricStatisticType] = None + value: Optional[float] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class EffectivePreferredResourceTypeDef(BaseModel): + name: Optional[Literal["Ec2InstanceTypes"]] = None + includeList: Optional[List[str]] = None + effectiveIncludeList: Optional[List[str]] = None + excludeList: Optional[List[str]] = None + +class ExternalMetricsPreferenceTypeDef(BaseModel): + source: Optional[ExternalMetricsSourceType] = None + +class InstanceSavingsEstimationModeTypeDef(BaseModel): + source: Optional[InstanceSavingsEstimationModeSourceType] = None + +class EnrollmentFilterTypeDef(BaseModel): + name: Optional[Literal["Status"]] = None + values: Optional[Sequence[str]] = None + +class EstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class FilterTypeDef(BaseModel): + name: Optional[FilterNameType] = None + values: Optional[Sequence[str]] = None + +class RecommendationPreferencesTypeDef(BaseModel): + cpuVendorArchitectures: Optional[Sequence[CpuVendorArchitectureType]] = None + +class S3DestinationConfigTypeDef(BaseModel): + bucket: Optional[str] = None + keyPrefix: Optional[str] = None + +class S3DestinationTypeDef(BaseModel): + bucket: Optional[str] = None + key: Optional[str] = None + metadataKey: Optional[str] = None + +class LambdaFunctionRecommendationFilterTypeDef(BaseModel): + name: Optional[LambdaFunctionRecommendationFilterNameType] = None + values: Optional[Sequence[str]] = None + +class LicenseRecommendationFilterTypeDef(BaseModel): + name: Optional[LicenseRecommendationFilterNameType] = None + values: Optional[Sequence[str]] = None + +class RDSDBRecommendationFilterTypeDef(BaseModel): + name: Optional[RDSDBRecommendationFilterNameType] = None + values: Optional[Sequence[str]] = None + +class ExternalMetricStatusTypeDef(BaseModel): + statusCode: Optional[ExternalMetricStatusCodeType] = None + statusReason: Optional[str] = None + +class GetRecommendationErrorTypeDef(BaseModel): + identifier: Optional[str] = None + code: Optional[str] = None + message: Optional[str] = None + +class GetEffectiveRecommendationPreferencesRequestRequestTypeDef(BaseModel): + resourceArn: str + +class GetRecommendationSummariesRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GpuTypeDef(BaseModel): + gpuCount: Optional[int] = None + gpuMemorySizeInMiB: Optional[int] = None + +class InstanceEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class RecommendationSourceTypeDef(BaseModel): + recommendationSourceArn: Optional[str] = None + recommendationSourceType: Optional[RecommendationSourceTypeType] = None + +class LambdaSavingsEstimationModeTypeDef(BaseModel): + source: Optional[LambdaSavingsEstimationModeSourceType] = None + +class LambdaEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class LambdaFunctionMemoryProjectedMetricTypeDef(BaseModel): + name: Optional[Literal["Duration"]] = None + statistic: Optional[LambdaFunctionMemoryMetricStatisticType] = None + value: Optional[float] = None + +class LambdaFunctionUtilizationMetricTypeDef(BaseModel): + name: Optional[LambdaFunctionMetricNameType] = None + statistic: Optional[LambdaFunctionMetricStatisticType] = None + value: Optional[float] = None + +class MetricSourceTypeDef(BaseModel): + provider: Optional[Literal["CloudWatchApplicationInsights"]] = None + providerArn: Optional[str] = None + +class PreferredResourceTypeDef(BaseModel): + name: Optional[Literal["Ec2InstanceTypes"]] = None + includeList: Optional[Sequence[str]] = None + excludeList: Optional[Sequence[str]] = None + +class ProjectedMetricTypeDef(BaseModel): + name: Optional[MetricNameType] = None + timestamps: Optional[List[datetime]] = None + values: Optional[List[float]] = None + +class RDSDBUtilizationMetricTypeDef(BaseModel): + name: Optional[RDSDBMetricNameType] = None + statistic: Optional[RDSDBMetricStatisticType] = None + value: Optional[float] = None + +class RDSDatabaseProjectedMetricTypeDef(BaseModel): + name: Optional[RDSDBMetricNameType] = None + timestamps: Optional[List[datetime]] = None + values: Optional[List[float]] = None + +class RDSSavingsEstimationModeTypeDef(BaseModel): + source: Optional[RDSSavingsEstimationModeSourceType] = None + +class RDSInstanceEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class RDSStorageEstimatedMonthlySavingsTypeDef(BaseModel): + currency: Optional[CurrencyType] = None + value: Optional[float] = None + +class ReasonCodeSummaryTypeDef(BaseModel): + name: Optional[FindingReasonCodeType] = None + value: Optional[float] = None + +class UpdateEnrollmentStatusRequestRequestTypeDef(BaseModel): + status: StatusType + includeMemberAccounts: Optional[bool] = None + +class VolumeConfigurationTypeDef(BaseModel): + volumeType: Optional[str] = None + volumeSize: Optional[int] = None + volumeBaselineIOPS: Optional[int] = None + volumeBurstIOPS: Optional[int] = None + volumeBaselineThroughput: Optional[int] = None + volumeBurstThroughput: Optional[int] = None + rootVolume: Optional[bool] = None + +class AutoScalingGroupSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[AutoScalingGroupEstimatedMonthlySavingsTypeDef] = None + +class ContainerConfigurationTypeDef(BaseModel): + containerName: Optional[str] = None + memorySizeConfiguration: Optional[MemorySizeConfigurationTypeDef] = None + cpu: Optional[int] = None + +class ContainerRecommendationTypeDef(BaseModel): + containerName: Optional[str] = None + memorySizeConfiguration: Optional[MemorySizeConfigurationTypeDef] = None + cpu: Optional[int] = None + +class UtilizationPreferenceTypeDef(BaseModel): + metricName: Optional[CustomizableMetricNameType] = None + metricParameters: Optional[CustomizableMetricParametersTypeDef] = None + +class DeleteRecommendationPreferencesRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + recommendationPreferenceNames: Sequence[RecommendationPreferenceNameType] + scope: Optional[ScopeTypeDef] = None + +class GetRecommendationPreferencesRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + scope: Optional[ScopeTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeRecommendationExportJobsRequestRequestTypeDef(BaseModel): + jobIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[JobFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeRecommendationExportJobsRequestDescribeRecommendationExportJobsPaginateTypeDef(BaseModel): + jobIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[JobFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRecommendationPreferencesRequestGetRecommendationPreferencesPaginateTypeDef(BaseModel): + resourceType: ResourceTypeType + scope: Optional[ScopeTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRecommendationSummariesRequestGetRecommendationSummariesPaginateTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetEnrollmentStatusResponseTypeDef(BaseModel): + status: StatusType + statusReason: str + memberAccountsEnrolled: bool + lastUpdatedTimestamp: datetime + numberOfMemberAccountsOptedIn: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnrollmentStatusesForOrganizationResponseTypeDef(BaseModel): + accountEnrollmentStatuses: List[AccountEnrollmentStatusTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnrollmentStatusResponseTypeDef(BaseModel): + status: StatusType + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class EBSEffectiveRecommendationPreferencesTypeDef(BaseModel): + savingsEstimationMode: Optional[EBSSavingsEstimationModeTypeDef] = None + +class EBSSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[EBSEstimatedMonthlySavingsTypeDef] = None + +class GetEBSVolumeRecommendationsRequestRequestTypeDef(BaseModel): + volumeArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[EBSFilterTypeDef]] = None + accountIds: Optional[Sequence[str]] = None + +class ECSEffectiveRecommendationPreferencesTypeDef(BaseModel): + savingsEstimationMode: Optional[ECSSavingsEstimationModeTypeDef] = None + +class ECSSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[ECSEstimatedMonthlySavingsTypeDef] = None + +class ECSServiceRecommendedOptionProjectedMetricTypeDef(BaseModel): + recommendedCpuUnits: Optional[int] = None + recommendedMemorySize: Optional[int] = None + projectedMetrics: Optional[List[ECSServiceProjectedMetricTypeDef]] = None + +class GetECSServiceRecommendationsRequestRequestTypeDef(BaseModel): + serviceArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[ECSServiceRecommendationFilterTypeDef]] = None + accountIds: Optional[Sequence[str]] = None + +class GetEnrollmentStatusesForOrganizationRequestGetEnrollmentStatusesForOrganizationPaginateTypeDef(BaseModel): + filters: Optional[Sequence[EnrollmentFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetEnrollmentStatusesForOrganizationRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[EnrollmentFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class InferredWorkloadSavingTypeDef(BaseModel): + inferredWorkloadTypes: Optional[List[InferredWorkloadTypeType]] = None + estimatedMonthlySavings: Optional[EstimatedMonthlySavingsTypeDef] = None + +class SavingsOpportunityTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[EstimatedMonthlySavingsTypeDef] = None + +class GetAutoScalingGroupRecommendationsRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + autoScalingGroupArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class GetEC2InstanceRecommendationsRequestRequestTypeDef(BaseModel): + instanceArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + accountIds: Optional[Sequence[str]] = None + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class ExportAutoScalingGroupRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[FilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableAutoScalingGroupFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class ExportEBSVolumeRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[EBSFilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableVolumeFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + +class ExportEC2InstanceRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[FilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableInstanceFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class ExportECSServiceRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[ECSServiceRecommendationFilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableECSServiceFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + +class ExportAutoScalingGroupRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportDestinationTypeDef(BaseModel): + s3: Optional[S3DestinationTypeDef] = None + +class ExportEBSVolumeRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportEC2InstanceRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportECSServiceRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportLambdaFunctionRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportLicenseRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportRDSDatabaseRecommendationsResponseTypeDef(BaseModel): + jobId: str + s3Destination: S3DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportLambdaFunctionRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[LambdaFunctionRecommendationFilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableLambdaFunctionFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + +class GetLambdaFunctionRecommendationsRequestGetLambdaFunctionRecommendationsPaginateTypeDef(BaseModel): + functionArns: Optional[Sequence[str]] = None + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[LambdaFunctionRecommendationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetLambdaFunctionRecommendationsRequestRequestTypeDef(BaseModel): + functionArns: Optional[Sequence[str]] = None + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[LambdaFunctionRecommendationFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ExportLicenseRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[LicenseRecommendationFilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableLicenseFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + +class GetLicenseRecommendationsRequestRequestTypeDef(BaseModel): + resourceArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[LicenseRecommendationFilterTypeDef]] = None + accountIds: Optional[Sequence[str]] = None + +class ExportRDSDatabaseRecommendationsRequestRequestTypeDef(BaseModel): + s3DestinationConfig: S3DestinationConfigTypeDef + accountIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[RDSDBRecommendationFilterTypeDef]] = None + fieldsToExport: Optional[Sequence[ExportableRDSDBFieldType]] = None + fileFormat: Optional[Literal["Csv"]] = None + includeMemberAccounts: Optional[bool] = None + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class GetRDSDatabaseRecommendationsRequestRequestTypeDef(BaseModel): + resourceArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[RDSDBRecommendationFilterTypeDef]] = None + accountIds: Optional[Sequence[str]] = None + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class GetEC2RecommendationProjectedMetricsRequestRequestTypeDef(BaseModel): + instanceArn: str + stat: MetricStatisticType + period: int + startTime: TimestampTypeDef + endTime: TimestampTypeDef + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class GetECSServiceRecommendationProjectedMetricsRequestRequestTypeDef(BaseModel): + serviceArn: str + stat: MetricStatisticType + period: int + startTime: TimestampTypeDef + endTime: TimestampTypeDef + +class GetRDSDatabaseRecommendationProjectedMetricsRequestRequestTypeDef(BaseModel): + resourceArn: str + stat: MetricStatisticType + period: int + startTime: TimestampTypeDef + endTime: TimestampTypeDef + recommendationPreferences: Optional[RecommendationPreferencesTypeDef] = None + +class GpuInfoTypeDef(BaseModel): + gpus: Optional[List[GpuTypeDef]] = None + +class InstanceSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[InstanceEstimatedMonthlySavingsTypeDef] = None + +class LambdaEffectiveRecommendationPreferencesTypeDef(BaseModel): + savingsEstimationMode: Optional[LambdaSavingsEstimationModeTypeDef] = None + +class LambdaSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[LambdaEstimatedMonthlySavingsTypeDef] = None + +class LicenseConfigurationTypeDef(BaseModel): + numberOfCores: Optional[int] = None + instanceType: Optional[str] = None + operatingSystem: Optional[str] = None + licenseEdition: Optional[LicenseEditionType] = None + licenseName: Optional[Literal["SQLServer"]] = None + licenseModel: Optional[LicenseModelType] = None + licenseVersion: Optional[str] = None + metricsSource: Optional[List[MetricSourceTypeDef]] = None + +class RecommendedOptionProjectedMetricTypeDef(BaseModel): + recommendedInstanceType: Optional[str] = None + rank: Optional[int] = None + projectedMetrics: Optional[List[ProjectedMetricTypeDef]] = None + +class RDSDatabaseRecommendedOptionProjectedMetricTypeDef(BaseModel): + recommendedDBInstanceClass: Optional[str] = None + rank: Optional[int] = None + projectedMetrics: Optional[List[RDSDatabaseProjectedMetricTypeDef]] = None + +class RDSEffectiveRecommendationPreferencesTypeDef(BaseModel): + cpuVendorArchitectures: Optional[List[CpuVendorArchitectureType]] = None + enhancedInfrastructureMetrics: Optional[EnhancedInfrastructureMetricsType] = None + lookBackPeriod: Optional[LookBackPeriodPreferenceType] = None + savingsEstimationMode: Optional[RDSSavingsEstimationModeTypeDef] = None + +class RDSInstanceSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[RDSInstanceEstimatedMonthlySavingsTypeDef] = None + +class RDSStorageSavingsOpportunityAfterDiscountsTypeDef(BaseModel): + savingsOpportunityPercentage: Optional[float] = None + estimatedMonthlySavings: Optional[RDSStorageEstimatedMonthlySavingsTypeDef] = None + +class SummaryTypeDef(BaseModel): + name: Optional[FindingType] = None + value: Optional[float] = None + reasonCodeSummaries: Optional[List[ReasonCodeSummaryTypeDef]] = None + +class ServiceConfigurationTypeDef(BaseModel): + memory: Optional[int] = None + cpu: Optional[int] = None + containerConfigurations: Optional[List[ContainerConfigurationTypeDef]] = None + autoScalingConfiguration: Optional[AutoScalingConfigurationType] = None + taskDefinitionArn: Optional[str] = None + +class EffectiveRecommendationPreferencesTypeDef(BaseModel): + cpuVendorArchitectures: Optional[List[CpuVendorArchitectureType]] = None + enhancedInfrastructureMetrics: Optional[EnhancedInfrastructureMetricsType] = None + inferredWorkloadTypes: Optional[InferredWorkloadTypesPreferenceType] = None + externalMetricsPreference: Optional[ExternalMetricsPreferenceTypeDef] = None + lookBackPeriod: Optional[LookBackPeriodPreferenceType] = None + utilizationPreferences: Optional[List[UtilizationPreferenceTypeDef]] = None + preferredResources: Optional[List[EffectivePreferredResourceTypeDef]] = None + savingsEstimationMode: Optional[InstanceSavingsEstimationModeTypeDef] = None + +class GetEffectiveRecommendationPreferencesResponseTypeDef(BaseModel): + enhancedInfrastructureMetrics: EnhancedInfrastructureMetricsType + externalMetricsPreference: ExternalMetricsPreferenceTypeDef + lookBackPeriod: LookBackPeriodPreferenceType + utilizationPreferences: List[UtilizationPreferenceTypeDef] + preferredResources: List[EffectivePreferredResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRecommendationPreferencesRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + scope: Optional[ScopeTypeDef] = None + enhancedInfrastructureMetrics: Optional[EnhancedInfrastructureMetricsType] = None + inferredWorkloadTypes: Optional[InferredWorkloadTypesPreferenceType] = None + externalMetricsPreference: Optional[ExternalMetricsPreferenceTypeDef] = None + lookBackPeriod: Optional[LookBackPeriodPreferenceType] = None + utilizationPreferences: Optional[Sequence[UtilizationPreferenceTypeDef]] = None + preferredResources: Optional[Sequence[PreferredResourceTypeDef]] = None + savingsEstimationMode: Optional[SavingsEstimationModeType] = None + +class RecommendationPreferencesDetailTypeDef(BaseModel): + scope: Optional[ScopeTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + enhancedInfrastructureMetrics: Optional[EnhancedInfrastructureMetricsType] = None + inferredWorkloadTypes: Optional[InferredWorkloadTypesPreferenceType] = None + externalMetricsPreference: Optional[ExternalMetricsPreferenceTypeDef] = None + lookBackPeriod: Optional[LookBackPeriodPreferenceType] = None + utilizationPreferences: Optional[List[UtilizationPreferenceTypeDef]] = None + preferredResources: Optional[List[EffectivePreferredResourceTypeDef]] = None + savingsEstimationMode: Optional[SavingsEstimationModeType] = None + +class GetECSServiceRecommendationProjectedMetricsResponseTypeDef(BaseModel): + recommendedOptionProjectedMetrics: List[ ECSServiceRecommendedOptionProjectedMetricTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class ECSServiceRecommendationOptionTypeDef(BaseModel): + memory: Optional[int] = None + cpu: Optional[int] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[ECSSavingsOpportunityAfterDiscountsTypeDef] = None + projectedUtilizationMetrics: Optional[ List[ECSServiceProjectedUtilizationMetricTypeDef] ] = None + containerRecommendations: Optional[List[ContainerRecommendationTypeDef]] = None + +class LicenseRecommendationOptionTypeDef(BaseModel): + rank: Optional[int] = None + operatingSystem: Optional[str] = None + licenseEdition: Optional[LicenseEditionType] = None + licenseModel: Optional[LicenseModelType] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + +class VolumeRecommendationOptionTypeDef(BaseModel): + configuration: Optional[VolumeConfigurationTypeDef] = None + performanceRisk: Optional[float] = None + rank: Optional[int] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[EBSSavingsOpportunityAfterDiscountsTypeDef] = None + +class RecommendationExportJobTypeDef(BaseModel): + jobId: Optional[str] = None + destination: Optional[ExportDestinationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + status: Optional[JobStatusType] = None + creationTimestamp: Optional[datetime] = None + lastUpdatedTimestamp: Optional[datetime] = None + failureReason: Optional[str] = None + +class AutoScalingGroupRecommendationOptionTypeDef(BaseModel): + configuration: Optional[AutoScalingGroupConfigurationTypeDef] = None + instanceGpuInfo: Optional[GpuInfoTypeDef] = None + projectedUtilizationMetrics: Optional[List[UtilizationMetricTypeDef]] = None + performanceRisk: Optional[float] = None + rank: Optional[int] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[ AutoScalingGroupSavingsOpportunityAfterDiscountsTypeDef ] = None + migrationEffort: Optional[MigrationEffortType] = None + +class InstanceRecommendationOptionTypeDef(BaseModel): + instanceType: Optional[str] = None + instanceGpuInfo: Optional[GpuInfoTypeDef] = None + projectedUtilizationMetrics: Optional[List[UtilizationMetricTypeDef]] = None + platformDifferences: Optional[List[PlatformDifferenceType]] = None + performanceRisk: Optional[float] = None + rank: Optional[int] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[ InstanceSavingsOpportunityAfterDiscountsTypeDef ] = None + migrationEffort: Optional[MigrationEffortType] = None + +class LambdaFunctionMemoryRecommendationOptionTypeDef(BaseModel): + rank: Optional[int] = None + memorySize: Optional[int] = None + projectedUtilizationMetrics: Optional[ List[LambdaFunctionMemoryProjectedMetricTypeDef] ] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[ LambdaSavingsOpportunityAfterDiscountsTypeDef ] = None + +class GetEC2RecommendationProjectedMetricsResponseTypeDef(BaseModel): + recommendedOptionProjectedMetrics: List[RecommendedOptionProjectedMetricTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRDSDatabaseRecommendationProjectedMetricsResponseTypeDef(BaseModel): + recommendedOptionProjectedMetrics: List[ RDSDatabaseRecommendedOptionProjectedMetricTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class RDSDBInstanceRecommendationOptionTypeDef(BaseModel): + dbInstanceClass: Optional[str] = None + projectedUtilizationMetrics: Optional[List[RDSDBUtilizationMetricTypeDef]] = None + performanceRisk: Optional[float] = None + rank: Optional[int] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[ RDSInstanceSavingsOpportunityAfterDiscountsTypeDef ] = None + +class RDSDBStorageRecommendationOptionTypeDef(BaseModel): + storageConfiguration: Optional[DBStorageConfigurationTypeDef] = None + rank: Optional[int] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + savingsOpportunityAfterDiscounts: Optional[ RDSStorageSavingsOpportunityAfterDiscountsTypeDef ] = None + +class RecommendationSummaryTypeDef(BaseModel): + summaries: Optional[List[SummaryTypeDef]] = None + recommendationResourceType: Optional[RecommendationSourceTypeType] = None + accountId: Optional[str] = None + savingsOpportunity: Optional[SavingsOpportunityTypeDef] = None + currentPerformanceRiskRatings: Optional[CurrentPerformanceRiskRatingsTypeDef] = None + inferredWorkloadSavings: Optional[List[InferredWorkloadSavingTypeDef]] = None + +class GetRecommendationPreferencesResponseTypeDef(BaseModel): + nextToken: str + recommendationPreferencesDetails: List[RecommendationPreferencesDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ECSServiceRecommendationTypeDef(BaseModel): + serviceArn: Optional[str] = None + accountId: Optional[str] = None + currentServiceConfiguration: Optional[ServiceConfigurationTypeDef] = None + utilizationMetrics: Optional[List[ECSServiceUtilizationMetricTypeDef]] = None + lookbackPeriodInDays: Optional[float] = None + launchType: Optional[ECSServiceLaunchTypeType] = None + lastRefreshTimestamp: Optional[datetime] = None + finding: Optional[ECSServiceRecommendationFindingType] = None + findingReasonCodes: Optional[List[ECSServiceRecommendationFindingReasonCodeType]] = None + serviceRecommendationOptions: Optional[List[ECSServiceRecommendationOptionTypeDef]] = None + currentPerformanceRisk: Optional[CurrentPerformanceRiskType] = None + effectiveRecommendationPreferences: Optional[ ECSEffectiveRecommendationPreferencesTypeDef ] = None + tags: Optional[List[TagTypeDef]] = None + +class LicenseRecommendationTypeDef(BaseModel): + resourceArn: Optional[str] = None + accountId: Optional[str] = None + currentLicenseConfiguration: Optional[LicenseConfigurationTypeDef] = None + lookbackPeriodInDays: Optional[float] = None + lastRefreshTimestamp: Optional[datetime] = None + finding: Optional[LicenseFindingType] = None + findingReasonCodes: Optional[List[LicenseFindingReasonCodeType]] = None + licenseRecommendationOptions: Optional[List[LicenseRecommendationOptionTypeDef]] = None + tags: Optional[List[TagTypeDef]] = None + +class VolumeRecommendationTypeDef(BaseModel): + volumeArn: Optional[str] = None + accountId: Optional[str] = None + currentConfiguration: Optional[VolumeConfigurationTypeDef] = None + finding: Optional[EBSFindingType] = None + utilizationMetrics: Optional[List[EBSUtilizationMetricTypeDef]] = None + lookBackPeriodInDays: Optional[float] = None + volumeRecommendationOptions: Optional[List[VolumeRecommendationOptionTypeDef]] = None + lastRefreshTimestamp: Optional[datetime] = None + currentPerformanceRisk: Optional[CurrentPerformanceRiskType] = None + effectiveRecommendationPreferences: Optional[ EBSEffectiveRecommendationPreferencesTypeDef ] = None + tags: Optional[List[TagTypeDef]] = None + +class DescribeRecommendationExportJobsResponseTypeDef(BaseModel): + recommendationExportJobs: List[RecommendationExportJobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AutoScalingGroupRecommendationTypeDef(BaseModel): + accountId: Optional[str] = None + autoScalingGroupArn: Optional[str] = None + autoScalingGroupName: Optional[str] = None + finding: Optional[FindingType] = None + utilizationMetrics: Optional[List[UtilizationMetricTypeDef]] = None + lookBackPeriodInDays: Optional[float] = None + currentConfiguration: Optional[AutoScalingGroupConfigurationTypeDef] = None + currentInstanceGpuInfo: Optional[GpuInfoTypeDef] = None + recommendationOptions: Optional[List[AutoScalingGroupRecommendationOptionTypeDef]] = None + lastRefreshTimestamp: Optional[datetime] = None + currentPerformanceRisk: Optional[CurrentPerformanceRiskType] = None + effectiveRecommendationPreferences: Optional[ EffectiveRecommendationPreferencesTypeDef ] = None + inferredWorkloadTypes: Optional[List[InferredWorkloadTypeType]] = None + +class InstanceRecommendationTypeDef(BaseModel): + instanceArn: Optional[str] = None + accountId: Optional[str] = None + instanceName: Optional[str] = None + currentInstanceType: Optional[str] = None + finding: Optional[FindingType] = None + findingReasonCodes: Optional[List[InstanceRecommendationFindingReasonCodeType]] = None + utilizationMetrics: Optional[List[UtilizationMetricTypeDef]] = None + lookBackPeriodInDays: Optional[float] = None + recommendationOptions: Optional[List[InstanceRecommendationOptionTypeDef]] = None + recommendationSources: Optional[List[RecommendationSourceTypeDef]] = None + lastRefreshTimestamp: Optional[datetime] = None + currentPerformanceRisk: Optional[CurrentPerformanceRiskType] = None + effectiveRecommendationPreferences: Optional[ EffectiveRecommendationPreferencesTypeDef ] = None + inferredWorkloadTypes: Optional[List[InferredWorkloadTypeType]] = None + instanceState: Optional[InstanceStateType] = None + tags: Optional[List[TagTypeDef]] = None + externalMetricStatus: Optional[ExternalMetricStatusTypeDef] = None + currentInstanceGpuInfo: Optional[GpuInfoTypeDef] = None + idle: Optional[InstanceIdleType] = None + +class LambdaFunctionRecommendationTypeDef(BaseModel): + functionArn: Optional[str] = None + functionVersion: Optional[str] = None + accountId: Optional[str] = None + currentMemorySize: Optional[int] = None + numberOfInvocations: Optional[int] = None + utilizationMetrics: Optional[List[LambdaFunctionUtilizationMetricTypeDef]] = None + lookbackPeriodInDays: Optional[float] = None + lastRefreshTimestamp: Optional[datetime] = None + finding: Optional[LambdaFunctionRecommendationFindingType] = None + findingReasonCodes: Optional[List[LambdaFunctionRecommendationFindingReasonCodeType]] = None + memorySizeRecommendationOptions: Optional[ List[LambdaFunctionMemoryRecommendationOptionTypeDef] ] = None + currentPerformanceRisk: Optional[CurrentPerformanceRiskType] = None + effectiveRecommendationPreferences: Optional[ LambdaEffectiveRecommendationPreferencesTypeDef ] = None + tags: Optional[List[TagTypeDef]] = None + +class RDSDBRecommendationTypeDef(BaseModel): + resourceArn: Optional[str] = None + accountId: Optional[str] = None + engine: Optional[str] = None + engineVersion: Optional[str] = None + currentDBInstanceClass: Optional[str] = None + currentStorageConfiguration: Optional[DBStorageConfigurationTypeDef] = None + idle: Optional[IdleType] = None + instanceFinding: Optional[RDSInstanceFindingType] = None + storageFinding: Optional[RDSStorageFindingType] = None + instanceFindingReasonCodes: Optional[List[RDSInstanceFindingReasonCodeType]] = None + storageFindingReasonCodes: Optional[List[RDSStorageFindingReasonCodeType]] = None + instanceRecommendationOptions: Optional[ List[RDSDBInstanceRecommendationOptionTypeDef] ] = None + storageRecommendationOptions: Optional[List[RDSDBStorageRecommendationOptionTypeDef]] = None + utilizationMetrics: Optional[List[RDSDBUtilizationMetricTypeDef]] = None + effectiveRecommendationPreferences: Optional[ RDSEffectiveRecommendationPreferencesTypeDef ] = None + lookbackPeriodInDays: Optional[float] = None + lastRefreshTimestamp: Optional[datetime] = None + tags: Optional[List[TagTypeDef]] = None + +class GetRecommendationSummariesResponseTypeDef(BaseModel): + nextToken: str + recommendationSummaries: List[RecommendationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetECSServiceRecommendationsResponseTypeDef(BaseModel): + nextToken: str + ecsServiceRecommendations: List[ECSServiceRecommendationTypeDef] + errors: List[GetRecommendationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLicenseRecommendationsResponseTypeDef(BaseModel): + nextToken: str + licenseRecommendations: List[LicenseRecommendationTypeDef] + errors: List[GetRecommendationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEBSVolumeRecommendationsResponseTypeDef(BaseModel): + nextToken: str + volumeRecommendations: List[VolumeRecommendationTypeDef] + errors: List[GetRecommendationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetAutoScalingGroupRecommendationsResponseTypeDef(BaseModel): + nextToken: str + autoScalingGroupRecommendations: List[AutoScalingGroupRecommendationTypeDef] + errors: List[GetRecommendationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEC2InstanceRecommendationsResponseTypeDef(BaseModel): + nextToken: str + instanceRecommendations: List[InstanceRecommendationTypeDef] + errors: List[GetRecommendationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLambdaFunctionRecommendationsResponseTypeDef(BaseModel): + nextToken: str + lambdaFunctionRecommendations: List[LambdaFunctionRecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRDSDatabaseRecommendationsResponseTypeDef(BaseModel): + nextToken: str + rdsDBRecommendations: List[RDSDBRecommendationTypeDef] + errors: List[GetRecommendationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/compute_optimizer_constants.py b/aws_resource_validator/pydantic_models/compute_optimizer_constants.py new file mode 100644 index 00000000..620d1384 --- /dev/null +++ b/aws_resource_validator/pydantic_models/compute_optimizer_constants.py @@ -0,0 +1,925 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AutoScalingConfigurationType = Literal["TargetTrackingScalingCpu", "TargetTrackingScalingMemory"] +CpuVendorArchitectureType = Literal["AWS_ARM64", "CURRENT"] +CurrencyType = Literal["CNY", "USD"] +CurrentPerformanceRiskType = Literal["High", "Low", "Medium", "VeryLow"] +CustomizableMetricHeadroomType = Literal["PERCENT_0", "PERCENT_10", "PERCENT_20", "PERCENT_30"] +CustomizableMetricNameType = Literal["CpuUtilization", "MemoryUtilization"] +CustomizableMetricThresholdType = Literal["P90", "P95", "P99_5"] +DescribeRecommendationExportJobsPaginatorName = Literal["describe_recommendation_export_jobs"] +EBSFilterNameType = Literal["Finding"] +EBSFindingType = Literal["NotOptimized", "Optimized"] +EBSMetricNameType = Literal["VolumeReadBytesPerSecond", + "VolumeReadOpsPerSecond", + "VolumeWriteBytesPerSecond", + "VolumeWriteOpsPerSecond",] +EBSSavingsEstimationModeSourceType = Literal["CostExplorerRightsizing", "CostOptimizationHub", "PublicPricing"] +ECSSavingsEstimationModeSourceType = Literal["CostExplorerRightsizing", "CostOptimizationHub", "PublicPricing"] +ECSServiceLaunchTypeType = Literal["EC2", "Fargate"] +ECSServiceMetricNameType = Literal["Cpu", "Memory"] +ECSServiceMetricStatisticType = Literal["Average", "Maximum"] +ECSServiceRecommendationFilterNameType = Literal["Finding", "FindingReasonCode"] +ECSServiceRecommendationFindingReasonCodeType = Literal["CPUOverprovisioned", "CPUUnderprovisioned", "MemoryOverprovisioned", "MemoryUnderprovisioned"] +ECSServiceRecommendationFindingType = Literal["Optimized", "Overprovisioned", "Underprovisioned"] +EnhancedInfrastructureMetricsType = Literal["Active", "Inactive"] +EnrollmentFilterNameType = Literal["Status"] +ExportableAutoScalingGroupFieldType = Literal["AccountId", + "AutoScalingGroupArn", + "AutoScalingGroupName", + "CurrentConfigurationDesiredCapacity", + "CurrentConfigurationInstanceType", + "CurrentConfigurationMaxSize", + "CurrentConfigurationMinSize", + "CurrentInstanceGpuInfo", + "CurrentMemory", + "CurrentNetwork", + "CurrentOnDemandPrice", + "CurrentPerformanceRisk", + "CurrentStandardOneYearNoUpfrontReservedPrice", + "CurrentStandardThreeYearNoUpfrontReservedPrice", + "CurrentStorage", + "CurrentVCpus", + "EffectiveRecommendationPreferencesCpuVendorArchitectures", + "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", + "EffectiveRecommendationPreferencesInferredWorkloadTypes", + "EffectiveRecommendationPreferencesLookBackPeriod", + "EffectiveRecommendationPreferencesPreferredResources", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "Finding", + "InferredWorkloadTypes", + "LastRefreshTimestamp", + "LookbackPeriodInDays", + "RecommendationOptionsConfigurationDesiredCapacity", + "RecommendationOptionsConfigurationInstanceType", + "RecommendationOptionsConfigurationMaxSize", + "RecommendationOptionsConfigurationMinSize", + "RecommendationOptionsEstimatedMonthlySavingsCurrency", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValue", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "RecommendationOptionsInstanceGpuInfo", + "RecommendationOptionsMemory", + "RecommendationOptionsMigrationEffort", + "RecommendationOptionsNetwork", + "RecommendationOptionsOnDemandPrice", + "RecommendationOptionsPerformanceRisk", + "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", + "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum", + "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum", + "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsSavingsOpportunityPercentage", + "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice", + "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice", + "RecommendationOptionsStorage", + "RecommendationOptionsVcpus", + "UtilizationMetricsCpuMaximum", + "UtilizationMetricsDiskReadBytesPerSecondMaximum", + "UtilizationMetricsDiskReadOpsPerSecondMaximum", + "UtilizationMetricsDiskWriteBytesPerSecondMaximum", + "UtilizationMetricsDiskWriteOpsPerSecondMaximum", + "UtilizationMetricsEbsReadBytesPerSecondMaximum", + "UtilizationMetricsEbsReadOpsPerSecondMaximum", + "UtilizationMetricsEbsWriteBytesPerSecondMaximum", + "UtilizationMetricsEbsWriteOpsPerSecondMaximum", + "UtilizationMetricsGpuMemoryPercentageMaximum", + "UtilizationMetricsGpuPercentageMaximum", + "UtilizationMetricsMemoryMaximum", + "UtilizationMetricsNetworkInBytesPerSecondMaximum", + "UtilizationMetricsNetworkOutBytesPerSecondMaximum", + "UtilizationMetricsNetworkPacketsInPerSecondMaximum", + "UtilizationMetricsNetworkPacketsOutPerSecondMaximum",] +ExportableECSServiceFieldType = Literal["AccountId", + "CurrentPerformanceRisk", + "CurrentServiceConfigurationAutoScalingConfiguration", + "CurrentServiceConfigurationCpu", + "CurrentServiceConfigurationMemory", + "CurrentServiceConfigurationTaskDefinitionArn", + "CurrentServiceContainerConfigurations", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "Finding", + "FindingReasonCodes", + "LastRefreshTimestamp", + "LaunchType", + "LookbackPeriodInDays", + "RecommendationOptionsContainerRecommendations", + "RecommendationOptionsCpu", + "RecommendationOptionsEstimatedMonthlySavingsCurrency", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValue", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "RecommendationOptionsMemory", + "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", + "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsSavingsOpportunityPercentage", + "ServiceArn", + "Tags", + "UtilizationMetricsCpuMaximum", + "UtilizationMetricsMemoryMaximum",] +ExportableInstanceFieldType = Literal["AccountId", + "CurrentInstanceGpuInfo", + "CurrentInstanceType", + "CurrentMemory", + "CurrentNetwork", + "CurrentOnDemandPrice", + "CurrentPerformanceRisk", + "CurrentStandardOneYearNoUpfrontReservedPrice", + "CurrentStandardThreeYearNoUpfrontReservedPrice", + "CurrentStorage", + "CurrentVCpus", + "EffectiveRecommendationPreferencesCpuVendorArchitectures", + "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", + "EffectiveRecommendationPreferencesExternalMetricsSource", + "EffectiveRecommendationPreferencesInferredWorkloadTypes", + "EffectiveRecommendationPreferencesLookBackPeriod", + "EffectiveRecommendationPreferencesPreferredResources", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "EffectiveRecommendationPreferencesUtilizationPreferences", + "ExternalMetricStatusCode", + "ExternalMetricStatusReason", + "Finding", + "FindingReasonCodes", + "Idle", + "InferredWorkloadTypes", + "InstanceArn", + "InstanceName", + "InstanceState", + "LastRefreshTimestamp", + "LookbackPeriodInDays", + "RecommendationOptionsEstimatedMonthlySavingsCurrency", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValue", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "RecommendationOptionsInstanceGpuInfo", + "RecommendationOptionsInstanceType", + "RecommendationOptionsMemory", + "RecommendationOptionsMigrationEffort", + "RecommendationOptionsNetwork", + "RecommendationOptionsOnDemandPrice", + "RecommendationOptionsPerformanceRisk", + "RecommendationOptionsPlatformDifferences", + "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum", + "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum", + "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum", + "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsSavingsOpportunityPercentage", + "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice", + "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice", + "RecommendationOptionsStorage", + "RecommendationOptionsVcpus", + "RecommendationsSourcesRecommendationSourceArn", + "RecommendationsSourcesRecommendationSourceType", + "Tags", + "UtilizationMetricsCpuMaximum", + "UtilizationMetricsDiskReadBytesPerSecondMaximum", + "UtilizationMetricsDiskReadOpsPerSecondMaximum", + "UtilizationMetricsDiskWriteBytesPerSecondMaximum", + "UtilizationMetricsDiskWriteOpsPerSecondMaximum", + "UtilizationMetricsEbsReadBytesPerSecondMaximum", + "UtilizationMetricsEbsReadOpsPerSecondMaximum", + "UtilizationMetricsEbsWriteBytesPerSecondMaximum", + "UtilizationMetricsEbsWriteOpsPerSecondMaximum", + "UtilizationMetricsGpuMemoryPercentageMaximum", + "UtilizationMetricsGpuPercentageMaximum", + "UtilizationMetricsMemoryMaximum", + "UtilizationMetricsNetworkInBytesPerSecondMaximum", + "UtilizationMetricsNetworkOutBytesPerSecondMaximum", + "UtilizationMetricsNetworkPacketsInPerSecondMaximum", + "UtilizationMetricsNetworkPacketsOutPerSecondMaximum",] +ExportableLambdaFunctionFieldType = Literal["AccountId", + "CurrentConfigurationMemorySize", + "CurrentConfigurationTimeout", + "CurrentCostAverage", + "CurrentCostTotal", + "CurrentPerformanceRisk", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "Finding", + "FindingReasonCodes", + "FunctionArn", + "FunctionVersion", + "LastRefreshTimestamp", + "LookbackPeriodInDays", + "NumberOfInvocations", + "RecommendationOptionsConfigurationMemorySize", + "RecommendationOptionsCostHigh", + "RecommendationOptionsCostLow", + "RecommendationOptionsEstimatedMonthlySavingsCurrency", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValue", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "RecommendationOptionsProjectedUtilizationMetricsDurationExpected", + "RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound", + "RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsSavingsOpportunityPercentage", + "Tags", + "UtilizationMetricsDurationAverage", + "UtilizationMetricsDurationMaximum", + "UtilizationMetricsMemoryAverage", + "UtilizationMetricsMemoryMaximum",] +ExportableLicenseFieldType = Literal["AccountId", + "CurrentLicenseConfigurationInstanceType", + "CurrentLicenseConfigurationLicenseEdition", + "CurrentLicenseConfigurationLicenseModel", + "CurrentLicenseConfigurationLicenseName", + "CurrentLicenseConfigurationLicenseVersion", + "CurrentLicenseConfigurationMetricsSource", + "CurrentLicenseConfigurationNumberOfCores", + "CurrentLicenseConfigurationOperatingSystem", + "Finding", + "FindingReasonCodes", + "LastRefreshTimestamp", + "LookbackPeriodInDays", + "RecommendationOptionsEstimatedMonthlySavingsCurrency", + "RecommendationOptionsEstimatedMonthlySavingsValue", + "RecommendationOptionsLicenseEdition", + "RecommendationOptionsLicenseModel", + "RecommendationOptionsOperatingSystem", + "RecommendationOptionsSavingsOpportunityPercentage", + "ResourceArn", + "Tags",] +ExportableRDSDBFieldType = Literal["AccountId", + "CurrentDBInstanceClass", + "CurrentInstanceOnDemandHourlyPrice", + "CurrentStorageConfigurationAllocatedStorage", + "CurrentStorageConfigurationIOPS", + "CurrentStorageConfigurationMaxAllocatedStorage", + "CurrentStorageConfigurationStorageThroughput", + "CurrentStorageConfigurationStorageType", + "CurrentStorageOnDemandMonthlyPrice", + "EffectiveRecommendationPreferencesCpuVendorArchitectures", + "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics", + "EffectiveRecommendationPreferencesLookBackPeriod", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "Engine", + "EngineVersion", + "Idle", + "InstanceFinding", + "InstanceFindingReasonCodes", + "InstanceRecommendationOptionsDBInstanceClass", + "InstanceRecommendationOptionsEstimatedMonthlySavingsCurrency", + "InstanceRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "InstanceRecommendationOptionsEstimatedMonthlySavingsValue", + "InstanceRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "InstanceRecommendationOptionsInstanceOnDemandHourlyPrice", + "InstanceRecommendationOptionsPerformanceRisk", + "InstanceRecommendationOptionsProjectedUtilizationMetricsCpuMaximum", + "InstanceRecommendationOptionsRank", + "InstanceRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "InstanceRecommendationOptionsSavingsOpportunityPercentage", + "LastRefreshTimestamp", + "LookbackPeriodInDays", + "MultiAZDBInstance", + "ResourceArn", + "StorageFinding", + "StorageFindingReasonCodes", + "StorageRecommendationOptionsAllocatedStorage", + "StorageRecommendationOptionsEstimatedMonthlySavingsCurrency", + "StorageRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "StorageRecommendationOptionsEstimatedMonthlySavingsValue", + "StorageRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "StorageRecommendationOptionsIOPS", + "StorageRecommendationOptionsMaxAllocatedStorage", + "StorageRecommendationOptionsOnDemandMonthlyPrice", + "StorageRecommendationOptionsRank", + "StorageRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "StorageRecommendationOptionsSavingsOpportunityPercentage", + "StorageRecommendationOptionsStorageThroughput", + "StorageRecommendationOptionsStorageType", + "Tags", + "UtilizationMetricsCpuMaximum", + "UtilizationMetricsDatabaseConnectionsMaximum", + "UtilizationMetricsEBSVolumeReadIOPSMaximum", + "UtilizationMetricsEBSVolumeReadThroughputMaximum", + "UtilizationMetricsEBSVolumeStorageSpaceUtilizationMaximum", + "UtilizationMetricsEBSVolumeWriteIOPSMaximum", + "UtilizationMetricsEBSVolumeWriteThroughputMaximum", + "UtilizationMetricsMemoryMaximum", + "UtilizationMetricsNetworkReceiveThroughputMaximum", + "UtilizationMetricsNetworkTransmitThroughputMaximum",] +ExportableVolumeFieldType = Literal["AccountId", + "CurrentConfigurationRootVolume", + "CurrentConfigurationVolumeBaselineIOPS", + "CurrentConfigurationVolumeBaselineThroughput", + "CurrentConfigurationVolumeBurstIOPS", + "CurrentConfigurationVolumeBurstThroughput", + "CurrentConfigurationVolumeSize", + "CurrentConfigurationVolumeType", + "CurrentMonthlyPrice", + "CurrentPerformanceRisk", + "EffectiveRecommendationPreferencesSavingsEstimationMode", + "Finding", + "LastRefreshTimestamp", + "LookbackPeriodInDays", + "RecommendationOptionsConfigurationVolumeBaselineIOPS", + "RecommendationOptionsConfigurationVolumeBaselineThroughput", + "RecommendationOptionsConfigurationVolumeBurstIOPS", + "RecommendationOptionsConfigurationVolumeBurstThroughput", + "RecommendationOptionsConfigurationVolumeSize", + "RecommendationOptionsConfigurationVolumeType", + "RecommendationOptionsEstimatedMonthlySavingsCurrency", + "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts", + "RecommendationOptionsEstimatedMonthlySavingsValue", + "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts", + "RecommendationOptionsMonthlyPrice", + "RecommendationOptionsPerformanceRisk", + "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage", + "RecommendationOptionsSavingsOpportunityPercentage", + "RootVolume", + "Tags", + "UtilizationMetricsVolumeReadBytesPerSecondMaximum", + "UtilizationMetricsVolumeReadOpsPerSecondMaximum", + "UtilizationMetricsVolumeWriteBytesPerSecondMaximum", + "UtilizationMetricsVolumeWriteOpsPerSecondMaximum", + "VolumeArn",] +ExternalMetricStatusCodeType = Literal["DATADOG_INTEGRATION_ERROR", + "DYNATRACE_INTEGRATION_ERROR", + "INSTANA_INTEGRATION_ERROR", + "INSUFFICIENT_DATADOG_METRICS", + "INSUFFICIENT_DYNATRACE_METRICS", + "INSUFFICIENT_INSTANA_METRICS", + "INSUFFICIENT_NEWRELIC_METRICS", + "INTEGRATION_SUCCESS", + "NEWRELIC_INTEGRATION_ERROR", + "NO_EXTERNAL_METRIC_SET",] +ExternalMetricsSourceType = Literal["Datadog", "Dynatrace", "Instana", "NewRelic"] +FileFormatType = Literal["Csv"] +FilterNameType = Literal["Finding", "FindingReasonCodes", "InferredWorkloadTypes", "RecommendationSourceType"] +FindingReasonCodeType = Literal["MemoryOverprovisioned", "MemoryUnderprovisioned"] +FindingType = Literal["NotOptimized", "Optimized", "Overprovisioned", "Underprovisioned"] +GetEnrollmentStatusesForOrganizationPaginatorName = Literal["get_enrollment_statuses_for_organization"] +GetLambdaFunctionRecommendationsPaginatorName = Literal["get_lambda_function_recommendations"] +GetRecommendationPreferencesPaginatorName = Literal["get_recommendation_preferences"] +GetRecommendationSummariesPaginatorName = Literal["get_recommendation_summaries"] +IdleType = Literal["False", "True"] +InferredWorkloadTypeType = Literal["AmazonEmr", + "ApacheCassandra", + "ApacheHadoop", + "Kafka", + "Memcached", + "Nginx", + "PostgreSql", + "Redis", + "SQLServer",] +InferredWorkloadTypesPreferenceType = Literal["Active", "Inactive"] +InstanceIdleType = Literal["False", "True"] +InstanceRecommendationFindingReasonCodeType = Literal["CPUOverprovisioned", + "CPUUnderprovisioned", + "DiskIOPSOverprovisioned", + "DiskIOPSUnderprovisioned", + "DiskThroughputOverprovisioned", + "DiskThroughputUnderprovisioned", + "EBSIOPSOverprovisioned", + "EBSIOPSUnderprovisioned", + "EBSThroughputOverprovisioned", + "EBSThroughputUnderprovisioned", + "GPUMemoryOverprovisioned", + "GPUMemoryUnderprovisioned", + "GPUOverprovisioned", + "GPUUnderprovisioned", + "MemoryOverprovisioned", + "MemoryUnderprovisioned", + "NetworkBandwidthOverprovisioned", + "NetworkBandwidthUnderprovisioned", + "NetworkPPSOverprovisioned", + "NetworkPPSUnderprovisioned",] +InstanceSavingsEstimationModeSourceType = Literal["CostExplorerRightsizing", "CostOptimizationHub", "PublicPricing"] +InstanceStateType = Literal["pending", "running", "shutting-down", "stopped", "stopping", "terminated"] +JobFilterNameType = Literal["JobStatus", "ResourceType"] +JobStatusType = Literal["Complete", "Failed", "InProgress", "Queued"] +LambdaFunctionMemoryMetricNameType = Literal["Duration"] +LambdaFunctionMemoryMetricStatisticType = Literal["Expected", "LowerBound", "UpperBound"] +LambdaFunctionMetricNameType = Literal["Duration", "Memory"] +LambdaFunctionMetricStatisticType = Literal["Average", "Maximum"] +LambdaFunctionRecommendationFilterNameType = Literal["Finding", "FindingReasonCode"] +LambdaFunctionRecommendationFindingReasonCodeType = Literal["Inconclusive", "InsufficientData", "MemoryOverprovisioned", "MemoryUnderprovisioned"] +LambdaFunctionRecommendationFindingType = Literal["NotOptimized", "Optimized", "Unavailable"] +LambdaSavingsEstimationModeSourceType = Literal["CostExplorerRightsizing", "CostOptimizationHub", "PublicPricing"] +LicenseEditionType = Literal["Enterprise", "Free", "NoLicenseEditionFound", "Standard"] +LicenseFindingReasonCodeType = Literal["CloudWatchApplicationInsightsError", + "InvalidCloudWatchApplicationInsightsSetup", + "LicenseOverprovisioned", + "Optimized",] +LicenseFindingType = Literal["InsufficientMetrics", "NotOptimized", "Optimized"] +LicenseModelType = Literal["BringYourOwnLicense", "LicenseIncluded"] +LicenseNameType = Literal["SQLServer"] +LicenseRecommendationFilterNameType = Literal["Finding", "FindingReasonCode", "LicenseName"] +LookBackPeriodPreferenceType = Literal["DAYS_14", "DAYS_32", "DAYS_93"] +MetricNameType = Literal["Cpu", + "DISK_READ_BYTES_PER_SECOND", + "DISK_READ_OPS_PER_SECOND", + "DISK_WRITE_BYTES_PER_SECOND", + "DISK_WRITE_OPS_PER_SECOND", + "EBS_READ_BYTES_PER_SECOND", + "EBS_READ_OPS_PER_SECOND", + "EBS_WRITE_BYTES_PER_SECOND", + "EBS_WRITE_OPS_PER_SECOND", + "GPU_MEMORY_PERCENTAGE", + "GPU_PERCENTAGE", + "Memory", + "NETWORK_IN_BYTES_PER_SECOND", + "NETWORK_OUT_BYTES_PER_SECOND", + "NETWORK_PACKETS_IN_PER_SECOND", + "NETWORK_PACKETS_OUT_PER_SECOND",] +MetricSourceProviderType = Literal["CloudWatchApplicationInsights"] +MetricStatisticType = Literal["Average", "Maximum"] +MigrationEffortType = Literal["High", "Low", "Medium", "VeryLow"] +PlatformDifferenceType = Literal["Architecture", + "Hypervisor", + "InstanceStoreAvailability", + "NetworkInterface", + "StorageInterface", + "VirtualizationType",] +PreferredResourceNameType = Literal["Ec2InstanceTypes"] +RDSDBMetricNameType = Literal["CPU", + "DatabaseConnections", + "EBSVolumeReadIOPS", + "EBSVolumeReadThroughput", + "EBSVolumeStorageSpaceUtilization", + "EBSVolumeWriteIOPS", + "EBSVolumeWriteThroughput", + "Memory", + "NetworkReceiveThroughput", + "NetworkTransmitThroughput",] +RDSDBMetricStatisticType = Literal["Average", "Maximum", "Minimum"] +RDSDBRecommendationFilterNameType = Literal["Idle", + "InstanceFinding", + "InstanceFindingReasonCode", + "StorageFinding", + "StorageFindingReasonCode",] +RDSInstanceFindingReasonCodeType = Literal["CPUOverprovisioned", + "CPUUnderprovisioned", + "EBSIOPSOverprovisioned", + "EBSThroughputOverprovisioned", + "EBSThroughputUnderprovisioned", + "NetworkBandwidthOverprovisioned", + "NetworkBandwidthUnderprovisioned", + "NewEngineVersionAvailable", + "NewGenerationDBInstanceClassAvailable",] +RDSInstanceFindingType = Literal["Optimized", "Overprovisioned", "Underprovisioned"] +RDSSavingsEstimationModeSourceType = Literal["CostExplorerRightsizing", "CostOptimizationHub", "PublicPricing"] +RDSStorageFindingReasonCodeType = Literal["EBSVolumeAllocatedStorageUnderprovisioned", + "EBSVolumeIOPSOverprovisioned", + "EBSVolumeThroughputOverprovisioned", + "EBSVolumeThroughputUnderprovisioned", + "NewGenerationStorageTypeAvailable",] +RDSStorageFindingType = Literal["Optimized", "Overprovisioned", "Underprovisioned"] +RecommendationPreferenceNameType = Literal["EnhancedInfrastructureMetrics", + "ExternalMetricsPreference", + "InferredWorkloadTypes", + "LookBackPeriodPreference", + "PreferredResources", + "UtilizationPreferences",] +RecommendationSourceTypeType = Literal["AutoScalingGroup", + "EbsVolume", + "Ec2Instance", + "EcsService", + "LambdaFunction", + "License", + "RdsDBInstance", + "RdsDBInstanceStorage",] +ResourceTypeType = Literal["AutoScalingGroup", + "EbsVolume", + "Ec2Instance", + "EcsService", + "LambdaFunction", + "License", + "NotApplicable", + "RdsDBInstance",] +SavingsEstimationModeType = Literal["AfterDiscounts", "BeforeDiscounts"] +ScopeNameType = Literal["AccountId", "Organization", "ResourceArn"] +StatusType = Literal["Active", "Failed", "Inactive", "Pending"] +ComputeOptimizerServiceName = Literal["compute-optimizer"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_recommendation_export_jobs", + "get_enrollment_statuses_for_organization", + "get_lambda_function_recommendations", + "get_recommendation_preferences", + "get_recommendation_summaries",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/config_classes.py b/aws_resource_validator/pydantic_models/config_classes.py new file mode 100644 index 00000000..7a901d63 --- /dev/null +++ b/aws_resource_validator/pydantic_models/config_classes.py @@ -0,0 +1,1757 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.config_constants import * + +class AccountAggregationSourceExtraOutputTypeDef(BaseModel): + AccountIds: List[str] + AllAwsRegions: Optional[bool] = None + AwsRegions: Optional[List[str]] = None + +class AccountAggregationSourceOutputTypeDef(BaseModel): + AccountIds: List[str] + AllAwsRegions: Optional[bool] = None + AwsRegions: Optional[List[str]] = None + +class AccountAggregationSourceTypeDef(BaseModel): + AccountIds: Sequence[str] + AllAwsRegions: Optional[bool] = None + AwsRegions: Optional[Sequence[str]] = None + +class AggregateConformancePackComplianceTypeDef(BaseModel): + ComplianceType: Optional[ConformancePackComplianceTypeType] = None + CompliantRuleCount: Optional[int] = None + NonCompliantRuleCount: Optional[int] = None + TotalRuleCount: Optional[int] = None + +class AggregateConformancePackComplianceCountTypeDef(BaseModel): + CompliantConformancePackCount: Optional[int] = None + NonCompliantConformancePackCount: Optional[int] = None + +class AggregateConformancePackComplianceFiltersTypeDef(BaseModel): + ConformancePackName: Optional[str] = None + ComplianceType: Optional[ConformancePackComplianceTypeType] = None + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class AggregateConformancePackComplianceSummaryFiltersTypeDef(BaseModel): + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class AggregateResourceIdentifierTypeDef(BaseModel): + SourceAccountId: str + SourceRegion: str + ResourceId: str + ResourceType: ResourceTypeType + ResourceName: Optional[str] = None + +class AggregatedSourceStatusTypeDef(BaseModel): + SourceId: Optional[str] = None + SourceType: Optional[AggregatedSourceTypeType] = None + AwsRegion: Optional[str] = None + LastUpdateStatus: Optional[AggregatedSourceStatusTypeType] = None + LastUpdateTime: Optional[datetime] = None + LastErrorCode: Optional[str] = None + LastErrorMessage: Optional[str] = None + +class AggregationAuthorizationTypeDef(BaseModel): + AggregationAuthorizationArn: Optional[str] = None + AuthorizedAccountId: Optional[str] = None + AuthorizedAwsRegion: Optional[str] = None + CreationTime: Optional[datetime] = None + +class BaseConfigurationItemTypeDef(BaseModel): + version: Optional[str] = None + accountId: Optional[str] = None + configurationItemCaptureTime: Optional[datetime] = None + configurationItemStatus: Optional[ConfigurationItemStatusType] = None + configurationStateId: Optional[str] = None + arn: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + resourceId: Optional[str] = None + resourceName: Optional[str] = None + awsRegion: Optional[str] = None + availabilityZone: Optional[str] = None + resourceCreationTime: Optional[datetime] = None + configuration: Optional[str] = None + supplementaryConfiguration: Optional[Dict[str, str]] = None + recordingFrequency: Optional[RecordingFrequencyType] = None + configurationItemDeliveryTime: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ResourceKeyTypeDef(BaseModel): + resourceType: ResourceTypeType + resourceId: str + +class ComplianceContributorCountTypeDef(BaseModel): + CappedCount: Optional[int] = None + CapExceeded: Optional[bool] = None + +class ConfigExportDeliveryInfoTypeDef(BaseModel): + lastStatus: Optional[DeliveryStatusType] = None + lastErrorCode: Optional[str] = None + lastErrorMessage: Optional[str] = None + lastAttemptTime: Optional[datetime] = None + lastSuccessfulTime: Optional[datetime] = None + nextDeliveryTime: Optional[datetime] = None + +class ConfigRuleComplianceFiltersTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + ComplianceType: Optional[ComplianceTypeType] = None + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class ConfigRuleComplianceSummaryFiltersTypeDef(BaseModel): + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class ConfigRuleEvaluationStatusTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + ConfigRuleArn: Optional[str] = None + ConfigRuleId: Optional[str] = None + LastSuccessfulInvocationTime: Optional[datetime] = None + LastFailedInvocationTime: Optional[datetime] = None + LastSuccessfulEvaluationTime: Optional[datetime] = None + LastFailedEvaluationTime: Optional[datetime] = None + FirstActivatedTime: Optional[datetime] = None + LastDeactivatedTime: Optional[datetime] = None + LastErrorCode: Optional[str] = None + LastErrorMessage: Optional[str] = None + FirstEvaluationStarted: Optional[bool] = None + LastDebugLogDeliveryStatus: Optional[str] = None + LastDebugLogDeliveryStatusReason: Optional[str] = None + LastDebugLogDeliveryTime: Optional[datetime] = None + +class EvaluationModeConfigurationTypeDef(BaseModel): + Mode: Optional[EvaluationModeType] = None + +class ScopeExtraOutputTypeDef(BaseModel): + ComplianceResourceTypes: Optional[List[str]] = None + TagKey: Optional[str] = None + TagValue: Optional[str] = None + ComplianceResourceId: Optional[str] = None + +class ScopeOutputTypeDef(BaseModel): + ComplianceResourceTypes: Optional[List[str]] = None + TagKey: Optional[str] = None + TagValue: Optional[str] = None + ComplianceResourceId: Optional[str] = None + +class ScopeTypeDef(BaseModel): + ComplianceResourceTypes: Optional[Sequence[str]] = None + TagKey: Optional[str] = None + TagValue: Optional[str] = None + ComplianceResourceId: Optional[str] = None + +class ConfigSnapshotDeliveryPropertiesTypeDef(BaseModel): + deliveryFrequency: Optional[MaximumExecutionFrequencyType] = None + +class ConfigStreamDeliveryInfoTypeDef(BaseModel): + lastStatus: Optional[DeliveryStatusType] = None + lastErrorCode: Optional[str] = None + lastErrorMessage: Optional[str] = None + lastStatusChangeTime: Optional[datetime] = None + +class OrganizationAggregationSourceOutputTypeDef(BaseModel): + RoleArn: str + AwsRegions: Optional[List[str]] = None + AllAwsRegions: Optional[bool] = None + +class RelationshipTypeDef(BaseModel): + resourceType: Optional[ResourceTypeType] = None + resourceId: Optional[str] = None + resourceName: Optional[str] = None + relationshipName: Optional[str] = None + +class ConfigurationRecorderStatusTypeDef(BaseModel): + name: Optional[str] = None + lastStartTime: Optional[datetime] = None + lastStopTime: Optional[datetime] = None + recording: Optional[bool] = None + lastStatus: Optional[RecorderStatusType] = None + lastErrorCode: Optional[str] = None + lastErrorMessage: Optional[str] = None + lastStatusChangeTime: Optional[datetime] = None + +class ConformancePackComplianceFiltersTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + ComplianceType: Optional[ConformancePackComplianceTypeType] = None + +class ConformancePackComplianceScoreTypeDef(BaseModel): + Score: Optional[str] = None + ConformancePackName: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + +class ConformancePackComplianceScoresFiltersTypeDef(BaseModel): + ConformancePackNames: Sequence[str] + +class ConformancePackComplianceSummaryTypeDef(BaseModel): + ConformancePackName: str + ConformancePackComplianceStatus: ConformancePackComplianceTypeType + +class ConformancePackInputParameterTypeDef(BaseModel): + ParameterName: str + ParameterValue: str + +class TemplateSSMDocumentDetailsTypeDef(BaseModel): + DocumentName: str + DocumentVersion: Optional[str] = None + +class ConformancePackEvaluationFiltersTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + ComplianceType: Optional[ConformancePackComplianceTypeType] = None + ResourceType: Optional[str] = None + ResourceIds: Optional[Sequence[str]] = None + +class ConformancePackRuleComplianceTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + ComplianceType: Optional[ConformancePackComplianceTypeType] = None + Controls: Optional[List[str]] = None + +class ConformancePackStatusDetailTypeDef(BaseModel): + ConformancePackName: str + ConformancePackId: str + ConformancePackArn: str + ConformancePackState: ConformancePackStateType + StackArn: str + LastUpdateRequestedTime: datetime + ConformancePackStatusReason: Optional[str] = None + LastUpdateCompletedTime: Optional[datetime] = None + +class CustomPolicyDetailsTypeDef(BaseModel): + PolicyRuntime: str + PolicyText: str + EnableDebugLogDelivery: Optional[bool] = None + +class DeleteAggregationAuthorizationRequestRequestTypeDef(BaseModel): + AuthorizedAccountId: str + AuthorizedAwsRegion: str + +class DeleteConfigRuleRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + +class DeleteConfigurationAggregatorRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + +class DeleteConfigurationRecorderRequestRequestTypeDef(BaseModel): + ConfigurationRecorderName: str + +class DeleteConformancePackRequestRequestTypeDef(BaseModel): + ConformancePackName: str + +class DeleteDeliveryChannelRequestRequestTypeDef(BaseModel): + DeliveryChannelName: str + +class DeleteEvaluationResultsRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + +class DeleteOrganizationConfigRuleRequestRequestTypeDef(BaseModel): + OrganizationConfigRuleName: str + +class DeleteOrganizationConformancePackRequestRequestTypeDef(BaseModel): + OrganizationConformancePackName: str + +class DeletePendingAggregationRequestRequestRequestTypeDef(BaseModel): + RequesterAccountId: str + RequesterAwsRegion: str + +class DeleteRemediationConfigurationRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ResourceType: Optional[str] = None + +class RemediationExceptionResourceKeyTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + +class DeleteResourceConfigRequestRequestTypeDef(BaseModel): + ResourceType: str + ResourceId: str + +class DeleteRetentionConfigurationRequestRequestTypeDef(BaseModel): + RetentionConfigurationName: str + +class DeleteStoredQueryRequestRequestTypeDef(BaseModel): + QueryName: str + +class DeliverConfigSnapshotRequestRequestTypeDef(BaseModel): + deliveryChannelName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAggregationAuthorizationsRequestRequestTypeDef(BaseModel): + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeComplianceByConfigRuleRequestRequestTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + NextToken: Optional[str] = None + +class DescribeComplianceByResourceRequestRequestTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeConfigRuleEvaluationStatusRequestRequestTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeConfigRulesFiltersTypeDef(BaseModel): + EvaluationMode: Optional[EvaluationModeType] = None + +class DescribeConfigurationAggregatorSourcesStatusRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + UpdateStatus: Optional[Sequence[AggregatedSourceStatusTypeType]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeConfigurationAggregatorsRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeConfigurationRecorderStatusRequestRequestTypeDef(BaseModel): + ConfigurationRecorderNames: Optional[Sequence[str]] = None + +class DescribeConfigurationRecordersRequestRequestTypeDef(BaseModel): + ConfigurationRecorderNames: Optional[Sequence[str]] = None + +class DescribeConformancePackStatusRequestRequestTypeDef(BaseModel): + ConformancePackNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeConformancePacksRequestRequestTypeDef(BaseModel): + ConformancePackNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeDeliveryChannelStatusRequestRequestTypeDef(BaseModel): + DeliveryChannelNames: Optional[Sequence[str]] = None + +class DescribeDeliveryChannelsRequestRequestTypeDef(BaseModel): + DeliveryChannelNames: Optional[Sequence[str]] = None + +class DescribeOrganizationConfigRuleStatusesRequestRequestTypeDef(BaseModel): + OrganizationConfigRuleNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class OrganizationConfigRuleStatusTypeDef(BaseModel): + OrganizationConfigRuleName: str + OrganizationRuleStatus: OrganizationRuleStatusType + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + +class DescribeOrganizationConfigRulesRequestRequestTypeDef(BaseModel): + OrganizationConfigRuleNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeOrganizationConformancePackStatusesRequestRequestTypeDef(BaseModel): + OrganizationConformancePackNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class OrganizationConformancePackStatusTypeDef(BaseModel): + OrganizationConformancePackName: str + Status: OrganizationResourceStatusType + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + +class DescribeOrganizationConformancePacksRequestRequestTypeDef(BaseModel): + OrganizationConformancePackNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribePendingAggregationRequestsRequestRequestTypeDef(BaseModel): + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class PendingAggregationRequestTypeDef(BaseModel): + RequesterAccountId: Optional[str] = None + RequesterAwsRegion: Optional[str] = None + +class DescribeRemediationConfigurationsRequestRequestTypeDef(BaseModel): + ConfigRuleNames: Sequence[str] + +class RemediationExceptionTypeDef(BaseModel): + ConfigRuleName: str + ResourceType: str + ResourceId: str + Message: Optional[str] = None + ExpirationTime: Optional[datetime] = None + +class DescribeRetentionConfigurationsRequestRequestTypeDef(BaseModel): + RetentionConfigurationNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class RetentionConfigurationTypeDef(BaseModel): + Name: str + RetentionPeriodInDays: int + +class EvaluationContextTypeDef(BaseModel): + EvaluationContextIdentifier: Optional[str] = None + +class EvaluationOutputTypeDef(BaseModel): + ComplianceResourceType: str + ComplianceResourceId: str + ComplianceType: ComplianceTypeType + OrderingTimestamp: datetime + Annotation: Optional[str] = None + +class EvaluationResultQualifierTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + EvaluationMode: Optional[EvaluationModeType] = None + +class EvaluationStatusTypeDef(BaseModel): + Status: ResourceEvaluationStatusType + FailureReason: Optional[str] = None + +class ExclusionByResourceTypesOutputTypeDef(BaseModel): + resourceTypes: Optional[List[ResourceTypeType]] = None + +class ExclusionByResourceTypesTypeDef(BaseModel): + resourceTypes: Optional[Sequence[ResourceTypeType]] = None + +class SsmControlsTypeDef(BaseModel): + ConcurrentExecutionRatePercentage: Optional[int] = None + ErrorPercentage: Optional[int] = None + +class FieldInfoTypeDef(BaseModel): + Name: Optional[str] = None + +class GetAggregateComplianceDetailsByConfigRuleRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + ConfigRuleName: str + AccountId: str + AwsRegion: str + ComplianceType: Optional[ComplianceTypeType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ResourceCountFiltersTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + AccountId: Optional[str] = None + Region: Optional[str] = None + +class GroupedResourceCountTypeDef(BaseModel): + GroupName: str + ResourceCount: int + +class GetComplianceDetailsByConfigRuleRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetComplianceDetailsByResourceRequestRequestTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + NextToken: Optional[str] = None + ResourceEvaluationId: Optional[str] = None + +class GetComplianceSummaryByResourceTypeRequestRequestTypeDef(BaseModel): + ResourceTypes: Optional[Sequence[str]] = None + +class GetConformancePackComplianceSummaryRequestRequestTypeDef(BaseModel): + ConformancePackNames: Sequence[str] + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetCustomRulePolicyRequestRequestTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + +class GetDiscoveredResourceCountsRequestRequestTypeDef(BaseModel): + resourceTypes: Optional[Sequence[str]] = None + limit: Optional[int] = None + nextToken: Optional[str] = None + +class ResourceCountTypeDef(BaseModel): + resourceType: Optional[ResourceTypeType] = None + count: Optional[int] = None + +class StatusDetailFiltersTypeDef(BaseModel): + AccountId: Optional[str] = None + MemberAccountRuleStatus: Optional[MemberAccountRuleStatusType] = None + +class MemberAccountStatusTypeDef(BaseModel): + AccountId: str + ConfigRuleName: str + MemberAccountRuleStatus: MemberAccountRuleStatusType + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + +class OrganizationResourceDetailedStatusFiltersTypeDef(BaseModel): + AccountId: Optional[str] = None + Status: Optional[OrganizationResourceDetailedStatusType] = None + +class OrganizationConformancePackDetailedStatusTypeDef(BaseModel): + AccountId: str + ConformancePackName: str + Status: OrganizationResourceDetailedStatusType + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + +class GetOrganizationCustomRulePolicyRequestRequestTypeDef(BaseModel): + OrganizationConfigRuleName: str + +class GetResourceEvaluationSummaryRequestRequestTypeDef(BaseModel): + ResourceEvaluationId: str + +class ResourceDetailsTypeDef(BaseModel): + ResourceId: str + ResourceType: str + ResourceConfiguration: str + ResourceConfigurationSchemaType: Optional[Literal["CFN_RESOURCE_SCHEMA"]] = None + +class GetStoredQueryRequestRequestTypeDef(BaseModel): + QueryName: str + +class StoredQueryTypeDef(BaseModel): + QueryName: str + QueryId: Optional[str] = None + QueryArn: Optional[str] = None + Description: Optional[str] = None + Expression: Optional[str] = None + +class ResourceFiltersTypeDef(BaseModel): + AccountId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceName: Optional[str] = None + Region: Optional[str] = None + +class ListDiscoveredResourcesRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + resourceIds: Optional[Sequence[str]] = None + resourceName: Optional[str] = None + limit: Optional[int] = None + includeDeletedResources: Optional[bool] = None + nextToken: Optional[str] = None + +class ResourceIdentifierTypeDef(BaseModel): + resourceType: Optional[ResourceTypeType] = None + resourceId: Optional[str] = None + resourceName: Optional[str] = None + resourceDeletionTime: Optional[datetime] = None + +class ResourceEvaluationTypeDef(BaseModel): + ResourceEvaluationId: Optional[str] = None + EvaluationMode: Optional[EvaluationModeType] = None + EvaluationStartTimestamp: Optional[datetime] = None + +class ListStoredQueriesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class StoredQueryMetadataTypeDef(BaseModel): + QueryId: str + QueryArn: str + QueryName: str + Description: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class OrganizationAggregationSourceExtraOutputTypeDef(BaseModel): + RoleArn: str + AwsRegions: Optional[List[str]] = None + AllAwsRegions: Optional[bool] = None + +class OrganizationAggregationSourceTypeDef(BaseModel): + RoleArn: str + AwsRegions: Optional[Sequence[str]] = None + AllAwsRegions: Optional[bool] = None + +class OrganizationCustomPolicyRuleMetadataNoPolicyTypeDef(BaseModel): + Description: Optional[str] = None + OrganizationConfigRuleTriggerTypes: Optional[ List[OrganizationConfigRuleTriggerTypeNoSNType] ] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[List[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + PolicyRuntime: Optional[str] = None + DebugLogDeliveryAccounts: Optional[List[str]] = None + +class OrganizationCustomRuleMetadataOutputTypeDef(BaseModel): + LambdaFunctionArn: str + OrganizationConfigRuleTriggerTypes: List[OrganizationConfigRuleTriggerTypeType] + Description: Optional[str] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[List[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + +class OrganizationManagedRuleMetadataOutputTypeDef(BaseModel): + RuleIdentifier: str + Description: Optional[str] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[List[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + +class OrganizationCustomPolicyRuleMetadataTypeDef(BaseModel): + PolicyRuntime: str + PolicyText: str + Description: Optional[str] = None + OrganizationConfigRuleTriggerTypes: Optional[ Sequence[OrganizationConfigRuleTriggerTypeNoSNType] ] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[Sequence[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + DebugLogDeliveryAccounts: Optional[Sequence[str]] = None + +class OrganizationCustomRuleMetadataExtraOutputTypeDef(BaseModel): + LambdaFunctionArn: str + OrganizationConfigRuleTriggerTypes: List[OrganizationConfigRuleTriggerTypeType] + Description: Optional[str] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[List[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + +class OrganizationCustomRuleMetadataTypeDef(BaseModel): + LambdaFunctionArn: str + OrganizationConfigRuleTriggerTypes: Sequence[OrganizationConfigRuleTriggerTypeType] + Description: Optional[str] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[Sequence[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + +class OrganizationManagedRuleMetadataExtraOutputTypeDef(BaseModel): + RuleIdentifier: str + Description: Optional[str] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[List[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + +class OrganizationManagedRuleMetadataTypeDef(BaseModel): + RuleIdentifier: str + Description: Optional[str] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ResourceTypesScope: Optional[Sequence[str]] = None + ResourceIdScope: Optional[str] = None + TagKeyScope: Optional[str] = None + TagValueScope: Optional[str] = None + +class PutResourceConfigRequestRequestTypeDef(BaseModel): + ResourceType: str + SchemaVersionId: str + ResourceId: str + Configuration: str + ResourceName: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class PutRetentionConfigurationRequestRequestTypeDef(BaseModel): + RetentionPeriodInDays: int + +class RecordingStrategyTypeDef(BaseModel): + useOnly: Optional[RecordingStrategyTypeType] = None + +class RecordingModeOverrideOutputTypeDef(BaseModel): + resourceTypes: List[ResourceTypeType] + recordingFrequency: RecordingFrequencyType + description: Optional[str] = None + +class RecordingModeOverrideTypeDef(BaseModel): + resourceTypes: Sequence[ResourceTypeType] + recordingFrequency: RecordingFrequencyType + description: Optional[str] = None + +class RemediationExecutionStepTypeDef(BaseModel): + Name: Optional[str] = None + State: Optional[RemediationExecutionStepStateType] = None + ErrorMessage: Optional[str] = None + StartTime: Optional[datetime] = None + StopTime: Optional[datetime] = None + +class ResourceValueTypeDef(BaseModel): + Value: Literal["RESOURCE_ID"] + +class StaticValueOutputTypeDef(BaseModel): + Values: List[str] + +class StaticValueTypeDef(BaseModel): + Values: Sequence[str] + +class SelectAggregateResourceConfigRequestRequestTypeDef(BaseModel): + Expression: str + ConfigurationAggregatorName: str + Limit: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SelectResourceConfigRequestRequestTypeDef(BaseModel): + Expression: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class SourceDetailTypeDef(BaseModel): + EventSource: Optional[Literal["aws.config"]] = None + MessageType: Optional[MessageTypeType] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + +class StartConfigRulesEvaluationRequestRequestTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + +class StartConfigurationRecorderRequestRequestTypeDef(BaseModel): + ConfigurationRecorderName: str + +class StopConfigurationRecorderRequestRequestTypeDef(BaseModel): + ConfigurationRecorderName: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AggregateComplianceByConformancePackTypeDef(BaseModel): + ConformancePackName: Optional[str] = None + Compliance: Optional[AggregateConformancePackComplianceTypeDef] = None + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class AggregateConformancePackComplianceSummaryTypeDef(BaseModel): + ComplianceSummary: Optional[AggregateConformancePackComplianceCountTypeDef] = None + GroupName: Optional[str] = None + +class DescribeAggregateComplianceByConformancePacksRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[AggregateConformancePackComplianceFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetAggregateConformancePackComplianceSummaryRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[AggregateConformancePackComplianceSummaryFiltersTypeDef] = None + GroupByKey: Optional[AggregateConformancePackComplianceSummaryGroupKeyType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class BatchGetAggregateResourceConfigRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + ResourceIdentifiers: Sequence[AggregateResourceIdentifierTypeDef] + +class GetAggregateResourceConfigRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + ResourceIdentifier: AggregateResourceIdentifierTypeDef + +class BatchGetAggregateResourceConfigResponseTypeDef(BaseModel): + BaseConfigurationItems: List[BaseConfigurationItemTypeDef] + UnprocessedResourceIdentifiers: List[AggregateResourceIdentifierTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeliverConfigSnapshotResponseTypeDef(BaseModel): + configSnapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAggregationAuthorizationsResponseTypeDef(BaseModel): + AggregationAuthorizations: List[AggregationAuthorizationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeConfigurationAggregatorSourcesStatusResponseTypeDef(BaseModel): + AggregatedSourceStatusList: List[AggregatedSourceStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomRulePolicyResponseTypeDef(BaseModel): + PolicyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOrganizationCustomRulePolicyResponseTypeDef(BaseModel): + PolicyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAggregateDiscoveredResourcesResponseTypeDef(BaseModel): + ResourceIdentifiers: List[AggregateResourceIdentifierTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutAggregationAuthorizationResponseTypeDef(BaseModel): + AggregationAuthorization: AggregationAuthorizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutConformancePackResponseTypeDef(BaseModel): + ConformancePackArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutOrganizationConfigRuleResponseTypeDef(BaseModel): + OrganizationConfigRuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutOrganizationConformancePackResponseTypeDef(BaseModel): + OrganizationConformancePackArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutStoredQueryResponseTypeDef(BaseModel): + QueryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartResourceEvaluationResponseTypeDef(BaseModel): + ResourceEvaluationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetResourceConfigRequestRequestTypeDef(BaseModel): + resourceKeys: Sequence[ResourceKeyTypeDef] + +class BatchGetResourceConfigResponseTypeDef(BaseModel): + baseConfigurationItems: List[BaseConfigurationItemTypeDef] + unprocessedResourceKeys: List[ResourceKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRemediationExecutionStatusRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ResourceKeys: Optional[Sequence[ResourceKeyTypeDef]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class StartRemediationExecutionRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ResourceKeys: Sequence[ResourceKeyTypeDef] + +class StartRemediationExecutionResponseTypeDef(BaseModel): + FailureMessage: str + FailedItems: List[ResourceKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ComplianceSummaryTypeDef(BaseModel): + CompliantResourceCount: Optional[ComplianceContributorCountTypeDef] = None + NonCompliantResourceCount: Optional[ComplianceContributorCountTypeDef] = None + ComplianceSummaryTimestamp: Optional[datetime] = None + +class ComplianceTypeDef(BaseModel): + ComplianceType: Optional[ComplianceTypeType] = None + ComplianceContributorCount: Optional[ComplianceContributorCountTypeDef] = None + +class DescribeAggregateComplianceByConfigRulesRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[ConfigRuleComplianceFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetAggregateConfigRuleComplianceSummaryRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[ConfigRuleComplianceSummaryFiltersTypeDef] = None + GroupByKey: Optional[ConfigRuleComplianceSummaryGroupKeyType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeConfigRuleEvaluationStatusResponseTypeDef(BaseModel): + ConfigRulesEvaluationStatus: List[ConfigRuleEvaluationStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeliveryChannelTypeDef(BaseModel): + name: Optional[str] = None + s3BucketName: Optional[str] = None + s3KeyPrefix: Optional[str] = None + s3KmsKeyArn: Optional[str] = None + snsTopicARN: Optional[str] = None + configSnapshotDeliveryProperties: Optional[ConfigSnapshotDeliveryPropertiesTypeDef] = None + +class DeliveryChannelStatusTypeDef(BaseModel): + name: Optional[str] = None + configSnapshotDeliveryInfo: Optional[ConfigExportDeliveryInfoTypeDef] = None + configHistoryDeliveryInfo: Optional[ConfigExportDeliveryInfoTypeDef] = None + configStreamDeliveryInfo: Optional[ConfigStreamDeliveryInfoTypeDef] = None + +class ConfigurationAggregatorTypeDef(BaseModel): + ConfigurationAggregatorName: Optional[str] = None + ConfigurationAggregatorArn: Optional[str] = None + AccountAggregationSources: Optional[List[AccountAggregationSourceOutputTypeDef]] = None + OrganizationAggregationSource: Optional[OrganizationAggregationSourceOutputTypeDef] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + CreatedBy: Optional[str] = None + +class ConfigurationItemTypeDef(BaseModel): + version: Optional[str] = None + accountId: Optional[str] = None + configurationItemCaptureTime: Optional[datetime] = None + configurationItemStatus: Optional[ConfigurationItemStatusType] = None + configurationStateId: Optional[str] = None + configurationItemMD5Hash: Optional[str] = None + arn: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + resourceId: Optional[str] = None + resourceName: Optional[str] = None + awsRegion: Optional[str] = None + availabilityZone: Optional[str] = None + resourceCreationTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + relatedEvents: Optional[List[str]] = None + relationships: Optional[List[RelationshipTypeDef]] = None + configuration: Optional[str] = None + supplementaryConfiguration: Optional[Dict[str, str]] = None + recordingFrequency: Optional[RecordingFrequencyType] = None + configurationItemDeliveryTime: Optional[datetime] = None + +class DescribeConfigurationRecorderStatusResponseTypeDef(BaseModel): + ConfigurationRecordersStatus: List[ConfigurationRecorderStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConformancePackComplianceRequestRequestTypeDef(BaseModel): + ConformancePackName: str + Filters: Optional[ConformancePackComplianceFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListConformancePackComplianceScoresResponseTypeDef(BaseModel): + ConformancePackComplianceScores: List[ConformancePackComplianceScoreTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListConformancePackComplianceScoresRequestRequestTypeDef(BaseModel): + Filters: Optional[ConformancePackComplianceScoresFiltersTypeDef] = None + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[Literal["SCORE"]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetConformancePackComplianceSummaryResponseTypeDef(BaseModel): + ConformancePackComplianceSummaryList: List[ConformancePackComplianceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class OrganizationConformancePackTypeDef(BaseModel): + OrganizationConformancePackName: str + OrganizationConformancePackArn: str + LastUpdateTime: datetime + DeliveryS3Bucket: Optional[str] = None + DeliveryS3KeyPrefix: Optional[str] = None + ConformancePackInputParameters: Optional[List[ConformancePackInputParameterTypeDef]] = None + ExcludedAccounts: Optional[List[str]] = None + +class PutOrganizationConformancePackRequestRequestTypeDef(BaseModel): + OrganizationConformancePackName: str + TemplateS3Uri: Optional[str] = None + TemplateBody: Optional[str] = None + DeliveryS3Bucket: Optional[str] = None + DeliveryS3KeyPrefix: Optional[str] = None + ConformancePackInputParameters: Optional[ Sequence[ConformancePackInputParameterTypeDef] ] = None + ExcludedAccounts: Optional[Sequence[str]] = None + +class ConformancePackDetailTypeDef(BaseModel): + ConformancePackName: str + ConformancePackArn: str + ConformancePackId: str + DeliveryS3Bucket: Optional[str] = None + DeliveryS3KeyPrefix: Optional[str] = None + ConformancePackInputParameters: Optional[List[ConformancePackInputParameterTypeDef]] = None + LastUpdateRequestedTime: Optional[datetime] = None + CreatedBy: Optional[str] = None + TemplateSSMDocumentDetails: Optional[TemplateSSMDocumentDetailsTypeDef] = None + +class PutConformancePackRequestRequestTypeDef(BaseModel): + ConformancePackName: str + TemplateS3Uri: Optional[str] = None + TemplateBody: Optional[str] = None + DeliveryS3Bucket: Optional[str] = None + DeliveryS3KeyPrefix: Optional[str] = None + ConformancePackInputParameters: Optional[ Sequence[ConformancePackInputParameterTypeDef] ] = None + TemplateSSMDocumentDetails: Optional[TemplateSSMDocumentDetailsTypeDef] = None + +class GetConformancePackComplianceDetailsRequestRequestTypeDef(BaseModel): + ConformancePackName: str + Filters: Optional[ConformancePackEvaluationFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeConformancePackComplianceResponseTypeDef(BaseModel): + ConformancePackName: str + ConformancePackRuleComplianceList: List[ConformancePackRuleComplianceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeConformancePackStatusResponseTypeDef(BaseModel): + ConformancePackStatusDetails: List[ConformancePackStatusDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeleteRemediationExceptionsRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ResourceKeys: Sequence[RemediationExceptionResourceKeyTypeDef] + +class DescribeRemediationExceptionsRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ResourceKeys: Optional[Sequence[RemediationExceptionResourceKeyTypeDef]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class FailedDeleteRemediationExceptionsBatchTypeDef(BaseModel): + FailureMessage: Optional[str] = None + FailedItems: Optional[List[RemediationExceptionResourceKeyTypeDef]] = None + +class DescribeAggregateComplianceByConfigRulesRequestDescribeAggregateComplianceByConfigRulesPaginateTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[ConfigRuleComplianceFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAggregateComplianceByConformancePacksRequestDescribeAggregateComplianceByConformancePacksPaginateTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[AggregateConformancePackComplianceFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeComplianceByConfigRuleRequestDescribeComplianceByConfigRulePaginateTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeComplianceByResourceRequestDescribeComplianceByResourcePaginateTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConfigRuleEvaluationStatusRequestDescribeConfigRuleEvaluationStatusPaginateTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConfigurationAggregatorSourcesStatusRequestDescribeConfigurationAggregatorSourcesStatusPaginateTypeDef(BaseModel): + ConfigurationAggregatorName: str + UpdateStatus: Optional[Sequence[AggregatedSourceStatusTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConfigurationAggregatorsRequestDescribeConfigurationAggregatorsPaginateTypeDef(BaseModel): + ConfigurationAggregatorNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConformancePackStatusRequestDescribeConformancePackStatusPaginateTypeDef(BaseModel): + ConformancePackNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConformancePacksRequestDescribeConformancePacksPaginateTypeDef(BaseModel): + ConformancePackNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrganizationConfigRuleStatusesRequestDescribeOrganizationConfigRuleStatusesPaginateTypeDef(BaseModel): + OrganizationConfigRuleNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrganizationConfigRulesRequestDescribeOrganizationConfigRulesPaginateTypeDef(BaseModel): + OrganizationConfigRuleNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrganizationConformancePackStatusesRequestDescribeOrganizationConformancePackStatusesPaginateTypeDef(BaseModel): + OrganizationConformancePackNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrganizationConformancePacksRequestDescribeOrganizationConformancePacksPaginateTypeDef(BaseModel): + OrganizationConformancePackNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePendingAggregationRequestsRequestDescribePendingAggregationRequestsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRemediationExecutionStatusRequestDescribeRemediationExecutionStatusPaginateTypeDef(BaseModel): + ConfigRuleName: str + ResourceKeys: Optional[Sequence[ResourceKeyTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRetentionConfigurationsRequestDescribeRetentionConfigurationsPaginateTypeDef(BaseModel): + RetentionConfigurationNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAggregateComplianceDetailsByConfigRuleRequestGetAggregateComplianceDetailsByConfigRulePaginateTypeDef(BaseModel): + ConfigurationAggregatorName: str + ConfigRuleName: str + AccountId: str + AwsRegion: str + ComplianceType: Optional[ComplianceTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetComplianceDetailsByConfigRuleRequestGetComplianceDetailsByConfigRulePaginateTypeDef(BaseModel): + ConfigRuleName: str + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetComplianceDetailsByResourceRequestGetComplianceDetailsByResourcePaginateTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ComplianceTypes: Optional[Sequence[ComplianceTypeType]] = None + ResourceEvaluationId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetConformancePackComplianceSummaryRequestGetConformancePackComplianceSummaryPaginateTypeDef(BaseModel): + ConformancePackNames: Sequence[str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDiscoveredResourcesRequestListDiscoveredResourcesPaginateTypeDef(BaseModel): + resourceType: ResourceTypeType + resourceIds: Optional[Sequence[str]] = None + resourceName: Optional[str] = None + includeDeletedResources: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SelectAggregateResourceConfigRequestSelectAggregateResourceConfigPaginateTypeDef(BaseModel): + Expression: str + ConfigurationAggregatorName: str + MaxResults: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SelectResourceConfigRequestSelectResourceConfigPaginateTypeDef(BaseModel): + Expression: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConfigRulesRequestDescribeConfigRulesPaginateTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + Filters: Optional[DescribeConfigRulesFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConfigRulesRequestRequestTypeDef(BaseModel): + ConfigRuleNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Filters: Optional[DescribeConfigRulesFiltersTypeDef] = None + +class DescribeOrganizationConfigRuleStatusesResponseTypeDef(BaseModel): + OrganizationConfigRuleStatuses: List[OrganizationConfigRuleStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOrganizationConformancePackStatusesResponseTypeDef(BaseModel): + OrganizationConformancePackStatuses: List[OrganizationConformancePackStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribePendingAggregationRequestsResponseTypeDef(BaseModel): + PendingAggregationRequests: List[PendingAggregationRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRemediationExceptionsResponseTypeDef(BaseModel): + RemediationExceptions: List[RemediationExceptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FailedRemediationExceptionBatchTypeDef(BaseModel): + FailureMessage: Optional[str] = None + FailedItems: Optional[List[RemediationExceptionTypeDef]] = None + +class DescribeRetentionConfigurationsResponseTypeDef(BaseModel): + RetentionConfigurations: List[RetentionConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutRetentionConfigurationResponseTypeDef(BaseModel): + RetentionConfiguration: RetentionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutEvaluationsResponseTypeDef(BaseModel): + FailedEvaluations: List[EvaluationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluationResultIdentifierTypeDef(BaseModel): + EvaluationResultQualifier: Optional[EvaluationResultQualifierTypeDef] = None + OrderingTimestamp: Optional[datetime] = None + ResourceEvaluationId: Optional[str] = None + +class EvaluationTypeDef(BaseModel): + ComplianceResourceType: str + ComplianceResourceId: str + ComplianceType: ComplianceTypeType + OrderingTimestamp: TimestampTypeDef + Annotation: Optional[str] = None + +class ExternalEvaluationTypeDef(BaseModel): + ComplianceResourceType: str + ComplianceResourceId: str + ComplianceType: ComplianceTypeType + OrderingTimestamp: TimestampTypeDef + Annotation: Optional[str] = None + +class GetResourceConfigHistoryRequestGetResourceConfigHistoryPaginateTypeDef(BaseModel): + resourceType: ResourceTypeType + resourceId: str + laterTime: Optional[TimestampTypeDef] = None + earlierTime: Optional[TimestampTypeDef] = None + chronologicalOrder: Optional[ChronologicalOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourceConfigHistoryRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + resourceId: str + laterTime: Optional[TimestampTypeDef] = None + earlierTime: Optional[TimestampTypeDef] = None + chronologicalOrder: Optional[ChronologicalOrderType] = None + limit: Optional[int] = None + nextToken: Optional[str] = None + +class PutRemediationExceptionsRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ResourceKeys: Sequence[RemediationExceptionResourceKeyTypeDef] + Message: Optional[str] = None + ExpirationTime: Optional[TimestampTypeDef] = None + +class TimeWindowTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + +class ExecutionControlsTypeDef(BaseModel): + SsmControls: Optional[SsmControlsTypeDef] = None + +class QueryInfoTypeDef(BaseModel): + SelectFields: Optional[List[FieldInfoTypeDef]] = None + +class GetAggregateDiscoveredResourceCountsRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + Filters: Optional[ResourceCountFiltersTypeDef] = None + GroupByKey: Optional[ResourceCountGroupKeyType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetAggregateDiscoveredResourceCountsResponseTypeDef(BaseModel): + TotalDiscoveredResources: int + GroupByKey: str + GroupedResourceCounts: List[GroupedResourceCountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDiscoveredResourceCountsResponseTypeDef(BaseModel): + totalDiscoveredResources: int + resourceCounts: List[ResourceCountTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOrganizationConfigRuleDetailedStatusRequestGetOrganizationConfigRuleDetailedStatusPaginateTypeDef(BaseModel): + OrganizationConfigRuleName: str + Filters: Optional[StatusDetailFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetOrganizationConfigRuleDetailedStatusRequestRequestTypeDef(BaseModel): + OrganizationConfigRuleName: str + Filters: Optional[StatusDetailFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetOrganizationConfigRuleDetailedStatusResponseTypeDef(BaseModel): + OrganizationConfigRuleDetailedStatus: List[MemberAccountStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetOrganizationConformancePackDetailedStatusRequestGetOrganizationConformancePackDetailedStatusPaginateTypeDef(BaseModel): + OrganizationConformancePackName: str + Filters: Optional[OrganizationResourceDetailedStatusFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetOrganizationConformancePackDetailedStatusRequestRequestTypeDef(BaseModel): + OrganizationConformancePackName: str + Filters: Optional[OrganizationResourceDetailedStatusFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GetOrganizationConformancePackDetailedStatusResponseTypeDef(BaseModel): + OrganizationConformancePackDetailedStatuses: List[ OrganizationConformancePackDetailedStatusTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetResourceEvaluationSummaryResponseTypeDef(BaseModel): + ResourceEvaluationId: str + EvaluationMode: EvaluationModeType + EvaluationStatus: EvaluationStatusTypeDef + EvaluationStartTimestamp: datetime + Compliance: ComplianceTypeType + EvaluationContext: EvaluationContextTypeDef + ResourceDetails: ResourceDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartResourceEvaluationRequestRequestTypeDef(BaseModel): + ResourceDetails: ResourceDetailsTypeDef + EvaluationMode: EvaluationModeType + EvaluationContext: Optional[EvaluationContextTypeDef] = None + EvaluationTimeout: Optional[int] = None + ClientToken: Optional[str] = None + +class GetStoredQueryResponseTypeDef(BaseModel): + StoredQuery: StoredQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAggregateDiscoveredResourcesRequestListAggregateDiscoveredResourcesPaginateTypeDef(BaseModel): + ConfigurationAggregatorName: str + ResourceType: ResourceTypeType + Filters: Optional[ResourceFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAggregateDiscoveredResourcesRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + ResourceType: ResourceTypeType + Filters: Optional[ResourceFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListDiscoveredResourcesResponseTypeDef(BaseModel): + resourceIdentifiers: List[ResourceIdentifierTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceEvaluationsResponseTypeDef(BaseModel): + ResourceEvaluations: List[ResourceEvaluationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStoredQueriesResponseTypeDef(BaseModel): + StoredQueryMetadata: List[StoredQueryMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutAggregationAuthorizationRequestRequestTypeDef(BaseModel): + AuthorizedAccountId: str + AuthorizedAwsRegion: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class PutStoredQueryRequestRequestTypeDef(BaseModel): + StoredQuery: StoredQueryTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class OrganizationConfigRuleTypeDef(BaseModel): + OrganizationConfigRuleName: str + OrganizationConfigRuleArn: str + OrganizationManagedRuleMetadata: Optional[ OrganizationManagedRuleMetadataOutputTypeDef ] = None + OrganizationCustomRuleMetadata: Optional[OrganizationCustomRuleMetadataOutputTypeDef] = None + ExcludedAccounts: Optional[List[str]] = None + LastUpdateTime: Optional[datetime] = None + OrganizationCustomPolicyRuleMetadata: Optional[ OrganizationCustomPolicyRuleMetadataNoPolicyTypeDef ] = None + +class PutOrganizationConfigRuleRequestRequestTypeDef(BaseModel): + OrganizationConfigRuleName: str + OrganizationManagedRuleMetadata: Optional[OrganizationManagedRuleMetadataTypeDef] = None + OrganizationCustomRuleMetadata: Optional[OrganizationCustomRuleMetadataTypeDef] = None + ExcludedAccounts: Optional[Sequence[str]] = None + OrganizationCustomPolicyRuleMetadata: Optional[ OrganizationCustomPolicyRuleMetadataTypeDef ] = None + +class RecordingGroupOutputTypeDef(BaseModel): + allSupported: Optional[bool] = None + includeGlobalResourceTypes: Optional[bool] = None + resourceTypes: Optional[List[ResourceTypeType]] = None + exclusionByResourceTypes: Optional[ExclusionByResourceTypesOutputTypeDef] = None + recordingStrategy: Optional[RecordingStrategyTypeDef] = None + +class RecordingGroupTypeDef(BaseModel): + allSupported: Optional[bool] = None + includeGlobalResourceTypes: Optional[bool] = None + resourceTypes: Optional[Sequence[ResourceTypeType]] = None + exclusionByResourceTypes: Optional[ExclusionByResourceTypesTypeDef] = None + recordingStrategy: Optional[RecordingStrategyTypeDef] = None + +class RecordingModeOutputTypeDef(BaseModel): + recordingFrequency: RecordingFrequencyType + recordingModeOverrides: Optional[List[RecordingModeOverrideOutputTypeDef]] = None + +class RecordingModeTypeDef(BaseModel): + recordingFrequency: RecordingFrequencyType + recordingModeOverrides: Optional[Sequence[RecordingModeOverrideTypeDef]] = None + +class RemediationExecutionStatusTypeDef(BaseModel): + ResourceKey: Optional[ResourceKeyTypeDef] = None + State: Optional[RemediationExecutionStateType] = None + StepDetails: Optional[List[RemediationExecutionStepTypeDef]] = None + InvocationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class RemediationParameterValueOutputTypeDef(BaseModel): + ResourceValue: Optional[ResourceValueTypeDef] = None + StaticValue: Optional[StaticValueOutputTypeDef] = None + +class RemediationParameterValueTypeDef(BaseModel): + ResourceValue: Optional[ResourceValueTypeDef] = None + StaticValue: Optional[StaticValueTypeDef] = None + +class SourceExtraOutputTypeDef(BaseModel): + Owner: OwnerType + SourceIdentifier: Optional[str] = None + SourceDetails: Optional[List[SourceDetailTypeDef]] = None + CustomPolicyDetails: Optional[CustomPolicyDetailsTypeDef] = None + +class SourceOutputTypeDef(BaseModel): + Owner: OwnerType + SourceIdentifier: Optional[str] = None + SourceDetails: Optional[List[SourceDetailTypeDef]] = None + CustomPolicyDetails: Optional[CustomPolicyDetailsTypeDef] = None + +class SourceTypeDef(BaseModel): + Owner: OwnerType + SourceIdentifier: Optional[str] = None + SourceDetails: Optional[Sequence[SourceDetailTypeDef]] = None + CustomPolicyDetails: Optional[CustomPolicyDetailsTypeDef] = None + +class PutConfigurationAggregatorRequestRequestTypeDef(BaseModel): + ConfigurationAggregatorName: str + AccountAggregationSources: Optional[Sequence[AccountAggregationSourceUnionTypeDef]] = None + OrganizationAggregationSource: Optional[OrganizationAggregationSourceTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeAggregateComplianceByConformancePacksResponseTypeDef(BaseModel): + AggregateComplianceByConformancePacks: List[AggregateComplianceByConformancePackTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetAggregateConformancePackComplianceSummaryResponseTypeDef(BaseModel): + AggregateConformancePackComplianceSummaries: List[ AggregateConformancePackComplianceSummaryTypeDef ] + GroupByKey: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AggregateComplianceCountTypeDef(BaseModel): + GroupName: Optional[str] = None + ComplianceSummary: Optional[ComplianceSummaryTypeDef] = None + +class ComplianceSummaryByResourceTypeTypeDef(BaseModel): + ResourceType: Optional[str] = None + ComplianceSummary: Optional[ComplianceSummaryTypeDef] = None + +class GetComplianceSummaryByConfigRuleResponseTypeDef(BaseModel): + ComplianceSummary: ComplianceSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AggregateComplianceByConfigRuleTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + Compliance: Optional[ComplianceTypeDef] = None + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class ComplianceByConfigRuleTypeDef(BaseModel): + ConfigRuleName: Optional[str] = None + Compliance: Optional[ComplianceTypeDef] = None + +class ComplianceByResourceTypeDef(BaseModel): + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + Compliance: Optional[ComplianceTypeDef] = None + +class DescribeDeliveryChannelsResponseTypeDef(BaseModel): + DeliveryChannels: List[DeliveryChannelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeliveryChannelRequestRequestTypeDef(BaseModel): + DeliveryChannel: DeliveryChannelTypeDef + +class DescribeDeliveryChannelStatusResponseTypeDef(BaseModel): + DeliveryChannelsStatus: List[DeliveryChannelStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationAggregatorsResponseTypeDef(BaseModel): + ConfigurationAggregators: List[ConfigurationAggregatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutConfigurationAggregatorResponseTypeDef(BaseModel): + ConfigurationAggregator: ConfigurationAggregatorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAggregateResourceConfigResponseTypeDef(BaseModel): + ConfigurationItem: ConfigurationItemTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceConfigHistoryResponseTypeDef(BaseModel): + configurationItems: List[ConfigurationItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationConformancePacksResponseTypeDef(BaseModel): + OrganizationConformancePacks: List[OrganizationConformancePackTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeConformancePacksResponseTypeDef(BaseModel): + ConformancePackDetails: List[ConformancePackDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeleteRemediationExceptionsResponseTypeDef(BaseModel): + FailedBatches: List[FailedDeleteRemediationExceptionsBatchTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRemediationExceptionsResponseTypeDef(BaseModel): + FailedBatches: List[FailedRemediationExceptionBatchTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AggregateEvaluationResultTypeDef(BaseModel): + EvaluationResultIdentifier: Optional[EvaluationResultIdentifierTypeDef] = None + ComplianceType: Optional[ComplianceTypeType] = None + ResultRecordedTime: Optional[datetime] = None + ConfigRuleInvokedTime: Optional[datetime] = None + Annotation: Optional[str] = None + AccountId: Optional[str] = None + AwsRegion: Optional[str] = None + +class ConformancePackEvaluationResultTypeDef(BaseModel): + ComplianceType: ConformancePackComplianceTypeType + EvaluationResultIdentifier: EvaluationResultIdentifierTypeDef + ConfigRuleInvokedTime: datetime + ResultRecordedTime: datetime + Annotation: Optional[str] = None + +class EvaluationResultTypeDef(BaseModel): + EvaluationResultIdentifier: Optional[EvaluationResultIdentifierTypeDef] = None + ComplianceType: Optional[ComplianceTypeType] = None + ResultRecordedTime: Optional[datetime] = None + ConfigRuleInvokedTime: Optional[datetime] = None + Annotation: Optional[str] = None + ResultToken: Optional[str] = None + +class PutExternalEvaluationRequestRequestTypeDef(BaseModel): + ConfigRuleName: str + ExternalEvaluation: ExternalEvaluationTypeDef + +class ResourceEvaluationFiltersTypeDef(BaseModel): + EvaluationMode: Optional[EvaluationModeType] = None + TimeWindow: Optional[TimeWindowTypeDef] = None + EvaluationContextIdentifier: Optional[str] = None + +class SelectAggregateResourceConfigResponseTypeDef(BaseModel): + Results: List[str] + QueryInfo: QueryInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SelectResourceConfigResponseTypeDef(BaseModel): + Results: List[str] + QueryInfo: QueryInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOrganizationConfigRulesResponseTypeDef(BaseModel): + OrganizationConfigRules: List[OrganizationConfigRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ConfigurationRecorderOutputTypeDef(BaseModel): + name: Optional[str] = None + roleARN: Optional[str] = None + recordingGroup: Optional[RecordingGroupOutputTypeDef] = None + recordingMode: Optional[RecordingModeOutputTypeDef] = None + +class ConfigurationRecorderTypeDef(BaseModel): + name: Optional[str] = None + roleARN: Optional[str] = None + recordingGroup: Optional[RecordingGroupTypeDef] = None + recordingMode: Optional[RecordingModeTypeDef] = None + +class DescribeRemediationExecutionStatusResponseTypeDef(BaseModel): + RemediationExecutionStatuses: List[RemediationExecutionStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RemediationConfigurationOutputTypeDef(BaseModel): + ConfigRuleName: str + TargetType: Literal["SSM_DOCUMENT"] + TargetId: str + TargetVersion: Optional[str] = None + Parameters: Optional[Dict[str, RemediationParameterValueOutputTypeDef]] = None + ResourceType: Optional[str] = None + Automatic: Optional[bool] = None + ExecutionControls: Optional[ExecutionControlsTypeDef] = None + MaximumAutomaticAttempts: Optional[int] = None + RetryAttemptSeconds: Optional[int] = None + Arn: Optional[str] = None + CreatedByService: Optional[str] = None + +class RemediationConfigurationTypeDef(BaseModel): + ConfigRuleName: str + TargetType: Literal["SSM_DOCUMENT"] + TargetId: str + TargetVersion: Optional[str] = None + Parameters: Optional[Mapping[str, RemediationParameterValueTypeDef]] = None + ResourceType: Optional[str] = None + Automatic: Optional[bool] = None + ExecutionControls: Optional[ExecutionControlsTypeDef] = None + MaximumAutomaticAttempts: Optional[int] = None + RetryAttemptSeconds: Optional[int] = None + Arn: Optional[str] = None + CreatedByService: Optional[str] = None + +class ConfigRuleExtraOutputTypeDef(BaseModel): + Source: SourceExtraOutputTypeDef + ConfigRuleName: Optional[str] = None + ConfigRuleArn: Optional[str] = None + ConfigRuleId: Optional[str] = None + Description: Optional[str] = None + Scope: Optional[ScopeExtraOutputTypeDef] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ConfigRuleState: Optional[ConfigRuleStateType] = None + CreatedBy: Optional[str] = None + EvaluationModes: Optional[List[EvaluationModeConfigurationTypeDef]] = None + +class ConfigRuleOutputTypeDef(BaseModel): + Source: SourceOutputTypeDef + ConfigRuleName: Optional[str] = None + ConfigRuleArn: Optional[str] = None + ConfigRuleId: Optional[str] = None + Description: Optional[str] = None + Scope: Optional[ScopeOutputTypeDef] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ConfigRuleState: Optional[ConfigRuleStateType] = None + CreatedBy: Optional[str] = None + EvaluationModes: Optional[List[EvaluationModeConfigurationTypeDef]] = None + +class ConfigRuleTypeDef(BaseModel): + Source: SourceTypeDef + ConfigRuleName: Optional[str] = None + ConfigRuleArn: Optional[str] = None + ConfigRuleId: Optional[str] = None + Description: Optional[str] = None + Scope: Optional[ScopeTypeDef] = None + InputParameters: Optional[str] = None + MaximumExecutionFrequency: Optional[MaximumExecutionFrequencyType] = None + ConfigRuleState: Optional[ConfigRuleStateType] = None + CreatedBy: Optional[str] = None + EvaluationModes: Optional[Sequence[EvaluationModeConfigurationTypeDef]] = None + +class GetAggregateConfigRuleComplianceSummaryResponseTypeDef(BaseModel): + GroupByKey: str + AggregateComplianceCounts: List[AggregateComplianceCountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetComplianceSummaryByResourceTypeResponseTypeDef(BaseModel): + ComplianceSummariesByResourceType: List[ComplianceSummaryByResourceTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAggregateComplianceByConfigRulesResponseTypeDef(BaseModel): + AggregateComplianceByConfigRules: List[AggregateComplianceByConfigRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeComplianceByConfigRuleResponseTypeDef(BaseModel): + ComplianceByConfigRules: List[ComplianceByConfigRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeComplianceByResourceResponseTypeDef(BaseModel): + ComplianceByResources: List[ComplianceByResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetAggregateComplianceDetailsByConfigRuleResponseTypeDef(BaseModel): + AggregateEvaluationResults: List[AggregateEvaluationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetConformancePackComplianceDetailsResponseTypeDef(BaseModel): + ConformancePackName: str + ConformancePackRuleEvaluationResults: List[ConformancePackEvaluationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetComplianceDetailsByConfigRuleResponseTypeDef(BaseModel): + EvaluationResults: List[EvaluationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetComplianceDetailsByResourceResponseTypeDef(BaseModel): + EvaluationResults: List[EvaluationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutEvaluationsRequestRequestTypeDef(BaseModel): + ResultToken: str + Evaluations: Optional[Sequence[EvaluationUnionTypeDef]] = None + TestMode: Optional[bool] = None + +class ListResourceEvaluationsRequestListResourceEvaluationsPaginateTypeDef(BaseModel): + Filters: Optional[ResourceEvaluationFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceEvaluationsRequestRequestTypeDef(BaseModel): + Filters: Optional[ResourceEvaluationFiltersTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeConfigurationRecordersResponseTypeDef(BaseModel): + ConfigurationRecorders: List[ConfigurationRecorderOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutConfigurationRecorderRequestRequestTypeDef(BaseModel): + ConfigurationRecorder: ConfigurationRecorderTypeDef + +class DescribeRemediationConfigurationsResponseTypeDef(BaseModel): + RemediationConfigurations: List[RemediationConfigurationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FailedRemediationBatchTypeDef(BaseModel): + FailureMessage: Optional[str] = None + FailedItems: Optional[List[RemediationConfigurationOutputTypeDef]] = None + +class DescribeConfigRulesResponseTypeDef(BaseModel): + ConfigRules: List[ConfigRuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutConfigRuleRequestRequestTypeDef(BaseModel): + ConfigRule: ConfigRuleTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class PutRemediationConfigurationsResponseTypeDef(BaseModel): + FailedBatches: List[FailedRemediationBatchTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRemediationConfigurationsRequestRequestTypeDef(BaseModel): + RemediationConfigurations: Sequence[RemediationConfigurationUnionTypeDef] + diff --git a/aws_resource_validator/pydantic_models/config_constants.py b/aws_resource_validator/pydantic_models/config_constants.py new file mode 100644 index 00000000..a1113846 --- /dev/null +++ b/aws_resource_validator/pydantic_models/config_constants.py @@ -0,0 +1,981 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregateConformancePackComplianceSummaryGroupKeyType = Literal["ACCOUNT_ID", "AWS_REGION"] +AggregatedSourceStatusTypeType = Literal["FAILED", "OUTDATED", "SUCCEEDED"] +AggregatedSourceTypeType = Literal["ACCOUNT", "ORGANIZATION"] +ChronologicalOrderType = Literal["Forward", "Reverse"] +ComplianceTypeType = Literal["COMPLIANT", "INSUFFICIENT_DATA", "NON_COMPLIANT", "NOT_APPLICABLE"] +ConfigRuleComplianceSummaryGroupKeyType = Literal["ACCOUNT_ID", "AWS_REGION"] +ConfigRuleStateType = Literal["ACTIVE", "DELETING", "DELETING_RESULTS", "EVALUATING"] +ConfigurationItemStatusType = Literal["OK", + "ResourceDeleted", + "ResourceDeletedNotRecorded", + "ResourceDiscovered", + "ResourceNotRecorded",] +ConformancePackComplianceTypeType = Literal["COMPLIANT", "INSUFFICIENT_DATA", "NON_COMPLIANT"] +ConformancePackStateType = Literal["CREATE_COMPLETE", "CREATE_FAILED", "CREATE_IN_PROGRESS", "DELETE_FAILED", "DELETE_IN_PROGRESS"] +DeliveryStatusType = Literal["Failure", "Not_Applicable", "Success"] +DescribeAggregateComplianceByConfigRulesPaginatorName = Literal["describe_aggregate_compliance_by_config_rules"] +DescribeAggregateComplianceByConformancePacksPaginatorName = Literal["describe_aggregate_compliance_by_conformance_packs"] +DescribeAggregationAuthorizationsPaginatorName = Literal["describe_aggregation_authorizations"] +DescribeComplianceByConfigRulePaginatorName = Literal["describe_compliance_by_config_rule"] +DescribeComplianceByResourcePaginatorName = Literal["describe_compliance_by_resource"] +DescribeConfigRuleEvaluationStatusPaginatorName = Literal["describe_config_rule_evaluation_status"] +DescribeConfigRulesPaginatorName = Literal["describe_config_rules"] +DescribeConfigurationAggregatorSourcesStatusPaginatorName = Literal["describe_configuration_aggregator_sources_status"] +DescribeConfigurationAggregatorsPaginatorName = Literal["describe_configuration_aggregators"] +DescribeConformancePackStatusPaginatorName = Literal["describe_conformance_pack_status"] +DescribeConformancePacksPaginatorName = Literal["describe_conformance_packs"] +DescribeOrganizationConfigRuleStatusesPaginatorName = Literal["describe_organization_config_rule_statuses"] +DescribeOrganizationConfigRulesPaginatorName = Literal["describe_organization_config_rules"] +DescribeOrganizationConformancePackStatusesPaginatorName = Literal["describe_organization_conformance_pack_statuses"] +DescribeOrganizationConformancePacksPaginatorName = Literal["describe_organization_conformance_packs"] +DescribePendingAggregationRequestsPaginatorName = Literal["describe_pending_aggregation_requests"] +DescribeRemediationExecutionStatusPaginatorName = Literal["describe_remediation_execution_status"] +DescribeRetentionConfigurationsPaginatorName = Literal["describe_retention_configurations"] +EvaluationModeType = Literal["DETECTIVE", "PROACTIVE"] +EventSourceType = Literal["aws.config"] +GetAggregateComplianceDetailsByConfigRulePaginatorName = Literal["get_aggregate_compliance_details_by_config_rule"] +GetComplianceDetailsByConfigRulePaginatorName = Literal["get_compliance_details_by_config_rule"] +GetComplianceDetailsByResourcePaginatorName = Literal["get_compliance_details_by_resource"] +GetConformancePackComplianceSummaryPaginatorName = Literal["get_conformance_pack_compliance_summary"] +GetOrganizationConfigRuleDetailedStatusPaginatorName = Literal["get_organization_config_rule_detailed_status"] +GetOrganizationConformancePackDetailedStatusPaginatorName = Literal["get_organization_conformance_pack_detailed_status"] +GetResourceConfigHistoryPaginatorName = Literal["get_resource_config_history"] +ListAggregateDiscoveredResourcesPaginatorName = Literal["list_aggregate_discovered_resources"] +ListDiscoveredResourcesPaginatorName = Literal["list_discovered_resources"] +ListResourceEvaluationsPaginatorName = Literal["list_resource_evaluations"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +MaximumExecutionFrequencyType = Literal["One_Hour", "Six_Hours", "Three_Hours", "Twelve_Hours", "TwentyFour_Hours"] +MemberAccountRuleStatusType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_SUCCESSFUL", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_SUCCESSFUL", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL",] +MessageTypeType = Literal["ConfigurationItemChangeNotification", + "ConfigurationSnapshotDeliveryCompleted", + "OversizedConfigurationItemChangeNotification", + "ScheduledNotification",] +OrganizationConfigRuleTriggerTypeNoSNType = Literal["ConfigurationItemChangeNotification", "OversizedConfigurationItemChangeNotification"] +OrganizationConfigRuleTriggerTypeType = Literal["ConfigurationItemChangeNotification", + "OversizedConfigurationItemChangeNotification", + "ScheduledNotification",] +OrganizationResourceDetailedStatusType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_SUCCESSFUL", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_SUCCESSFUL", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL",] +OrganizationResourceStatusType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_SUCCESSFUL", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_SUCCESSFUL", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL",] +OrganizationRuleStatusType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_SUCCESSFUL", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DELETE_SUCCESSFUL", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL",] +OwnerType = Literal["AWS", "CUSTOM_LAMBDA", "CUSTOM_POLICY"] +RecorderStatusType = Literal["Failure", "Pending", "Success"] +RecordingFrequencyType = Literal["CONTINUOUS", "DAILY"] +RecordingStrategyTypeType = Literal["ALL_SUPPORTED_RESOURCE_TYPES", "EXCLUSION_BY_RESOURCE_TYPES", "INCLUSION_BY_RESOURCE_TYPES"] +RemediationExecutionStateType = Literal["FAILED", "IN_PROGRESS", "QUEUED", "SUCCEEDED"] +RemediationExecutionStepStateType = Literal["FAILED", "PENDING", "SUCCEEDED"] +RemediationTargetTypeType = Literal["SSM_DOCUMENT"] +ResourceConfigurationSchemaTypeType = Literal["CFN_RESOURCE_SCHEMA"] +ResourceCountGroupKeyType = Literal["ACCOUNT_ID", "AWS_REGION", "RESOURCE_TYPE"] +ResourceEvaluationStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +ResourceTypeType = Literal["AWS::ACM::Certificate", + "AWS::ACMPCA::CertificateAuthority", + "AWS::ACMPCA::CertificateAuthorityActivation", + "AWS::APS::RuleGroupsNamespace", + "AWS::AccessAnalyzer::Analyzer", + "AWS::AmazonMQ::Broker", + "AWS::Amplify::App", + "AWS::Amplify::Branch", + "AWS::ApiGateway::RestApi", + "AWS::ApiGateway::Stage", + "AWS::ApiGatewayV2::Api", + "AWS::ApiGatewayV2::Stage", + "AWS::AppConfig::Application", + "AWS::AppConfig::ConfigurationProfile", + "AWS::AppConfig::DeploymentStrategy", + "AWS::AppConfig::Environment", + "AWS::AppConfig::HostedConfigurationVersion", + "AWS::AppFlow::Flow", + "AWS::AppIntegrations::EventIntegration", + "AWS::AppMesh::GatewayRoute", + "AWS::AppMesh::Mesh", + "AWS::AppMesh::Route", + "AWS::AppMesh::VirtualGateway", + "AWS::AppMesh::VirtualNode", + "AWS::AppMesh::VirtualRouter", + "AWS::AppMesh::VirtualService", + "AWS::AppRunner::Service", + "AWS::AppRunner::VpcConnector", + "AWS::AppStream::Application", + "AWS::AppStream::DirectoryConfig", + "AWS::AppStream::Fleet", + "AWS::AppStream::Stack", + "AWS::AppSync::GraphQLApi", + "AWS::Athena::DataCatalog", + "AWS::Athena::PreparedStatement", + "AWS::Athena::WorkGroup", + "AWS::AuditManager::Assessment", + "AWS::AutoScaling::AutoScalingGroup", + "AWS::AutoScaling::LaunchConfiguration", + "AWS::AutoScaling::ScalingPolicy", + "AWS::AutoScaling::ScheduledAction", + "AWS::AutoScaling::WarmPool", + "AWS::Backup::BackupPlan", + "AWS::Backup::BackupSelection", + "AWS::Backup::BackupVault", + "AWS::Backup::RecoveryPoint", + "AWS::Backup::ReportPlan", + "AWS::Batch::ComputeEnvironment", + "AWS::Batch::JobQueue", + "AWS::Batch::SchedulingPolicy", + "AWS::Budgets::BudgetsAction", + "AWS::Cassandra::Keyspace", + "AWS::Cloud9::EnvironmentEC2", + "AWS::CloudFormation::Stack", + "AWS::CloudFront::Distribution", + "AWS::CloudFront::StreamingDistribution", + "AWS::CloudTrail::Trail", + "AWS::CloudWatch::Alarm", + "AWS::CloudWatch::MetricStream", + "AWS::CodeArtifact::Repository", + "AWS::CodeBuild::Project", + "AWS::CodeBuild::ReportGroup", + "AWS::CodeDeploy::Application", + "AWS::CodeDeploy::DeploymentConfig", + "AWS::CodeDeploy::DeploymentGroup", + "AWS::CodeGuruProfiler::ProfilingGroup", + "AWS::CodeGuruReviewer::RepositoryAssociation", + "AWS::CodePipeline::Pipeline", + "AWS::Cognito::UserPool", + "AWS::Cognito::UserPoolClient", + "AWS::Cognito::UserPoolGroup", + "AWS::Config::ConformancePackCompliance", + "AWS::Config::ResourceCompliance", + "AWS::Connect::Instance", + "AWS::Connect::PhoneNumber", + "AWS::Connect::QuickConnect", + "AWS::CustomerProfiles::Domain", + "AWS::CustomerProfiles::ObjectType", + "AWS::DMS::Certificate", + "AWS::DMS::Endpoint", + "AWS::DMS::EventSubscription", + "AWS::DMS::ReplicationSubnetGroup", + "AWS::DataSync::LocationEFS", + "AWS::DataSync::LocationFSxLustre", + "AWS::DataSync::LocationFSxWindows", + "AWS::DataSync::LocationHDFS", + "AWS::DataSync::LocationNFS", + "AWS::DataSync::LocationObjectStorage", + "AWS::DataSync::LocationS3", + "AWS::DataSync::LocationSMB", + "AWS::DataSync::Task", + "AWS::Detective::Graph", + "AWS::DeviceFarm::InstanceProfile", + "AWS::DeviceFarm::Project", + "AWS::DeviceFarm::TestGridProject", + "AWS::DynamoDB::Table", + "AWS::EC2::CapacityReservation", + "AWS::EC2::CarrierGateway", + "AWS::EC2::ClientVpnEndpoint", + "AWS::EC2::CustomerGateway", + "AWS::EC2::DHCPOptions", + "AWS::EC2::EC2Fleet", + "AWS::EC2::EIP", + "AWS::EC2::EgressOnlyInternetGateway", + "AWS::EC2::FlowLog", + "AWS::EC2::Host", + "AWS::EC2::IPAM", + "AWS::EC2::IPAMPool", + "AWS::EC2::IPAMScope", + "AWS::EC2::Instance", + "AWS::EC2::InternetGateway", + "AWS::EC2::LaunchTemplate", + "AWS::EC2::NatGateway", + "AWS::EC2::NetworkAcl", + "AWS::EC2::NetworkInsightsAccessScope", + "AWS::EC2::NetworkInsightsAccessScopeAnalysis", + "AWS::EC2::NetworkInsightsAnalysis", + "AWS::EC2::NetworkInsightsPath", + "AWS::EC2::NetworkInterface", + "AWS::EC2::PrefixList", + "AWS::EC2::RegisteredHAInstance", + "AWS::EC2::RouteTable", + "AWS::EC2::SecurityGroup", + "AWS::EC2::SpotFleet", + "AWS::EC2::Subnet", + "AWS::EC2::SubnetRouteTableAssociation", + "AWS::EC2::TrafficMirrorFilter", + "AWS::EC2::TrafficMirrorSession", + "AWS::EC2::TrafficMirrorTarget", + "AWS::EC2::TransitGateway", + "AWS::EC2::TransitGatewayAttachment", + "AWS::EC2::TransitGatewayConnect", + "AWS::EC2::TransitGatewayMulticastDomain", + "AWS::EC2::TransitGatewayRouteTable", + "AWS::EC2::VPC", + "AWS::EC2::VPCEndpoint", + "AWS::EC2::VPCEndpointService", + "AWS::EC2::VPCPeeringConnection", + "AWS::EC2::VPNConnection", + "AWS::EC2::VPNGateway", + "AWS::EC2::Volume", + "AWS::ECR::PublicRepository", + "AWS::ECR::PullThroughCacheRule", + "AWS::ECR::RegistryPolicy", + "AWS::ECR::Repository", + "AWS::ECS::CapacityProvider", + "AWS::ECS::Cluster", + "AWS::ECS::Service", + "AWS::ECS::TaskDefinition", + "AWS::ECS::TaskSet", + "AWS::EFS::AccessPoint", + "AWS::EFS::FileSystem", + "AWS::EKS::Addon", + "AWS::EKS::Cluster", + "AWS::EKS::FargateProfile", + "AWS::EKS::IdentityProviderConfig", + "AWS::EMR::SecurityConfiguration", + "AWS::ElasticBeanstalk::Application", + "AWS::ElasticBeanstalk::ApplicationVersion", + "AWS::ElasticBeanstalk::Environment", + "AWS::ElasticLoadBalancing::LoadBalancer", + "AWS::ElasticLoadBalancingV2::Listener", + "AWS::ElasticLoadBalancingV2::LoadBalancer", + "AWS::Elasticsearch::Domain", + "AWS::EventSchemas::Discoverer", + "AWS::EventSchemas::Registry", + "AWS::EventSchemas::RegistryPolicy", + "AWS::EventSchemas::Schema", + "AWS::Events::ApiDestination", + "AWS::Events::Archive", + "AWS::Events::Connection", + "AWS::Events::Endpoint", + "AWS::Events::EventBus", + "AWS::Events::Rule", + "AWS::Evidently::Launch", + "AWS::Evidently::Project", + "AWS::FIS::ExperimentTemplate", + "AWS::Forecast::Dataset", + "AWS::Forecast::DatasetGroup", + "AWS::FraudDetector::EntityType", + "AWS::FraudDetector::Label", + "AWS::FraudDetector::Outcome", + "AWS::FraudDetector::Variable", + "AWS::GlobalAccelerator::Accelerator", + "AWS::GlobalAccelerator::EndpointGroup", + "AWS::GlobalAccelerator::Listener", + "AWS::Glue::Classifier", + "AWS::Glue::Job", + "AWS::Glue::MLTransform", + "AWS::Grafana::Workspace", + "AWS::GreengrassV2::ComponentVersion", + "AWS::GroundStation::Config", + "AWS::GroundStation::DataflowEndpointGroup", + "AWS::GroundStation::MissionProfile", + "AWS::GuardDuty::Detector", + "AWS::GuardDuty::Filter", + "AWS::GuardDuty::IPSet", + "AWS::GuardDuty::ThreatIntelSet", + "AWS::HealthLake::FHIRDatastore", + "AWS::IAM::Group", + "AWS::IAM::InstanceProfile", + "AWS::IAM::Policy", + "AWS::IAM::Role", + "AWS::IAM::SAMLProvider", + "AWS::IAM::ServerCertificate", + "AWS::IAM::User", + "AWS::IVS::Channel", + "AWS::IVS::PlaybackKeyPair", + "AWS::IVS::RecordingConfiguration", + "AWS::ImageBuilder::ContainerRecipe", + "AWS::ImageBuilder::DistributionConfiguration", + "AWS::ImageBuilder::ImagePipeline", + "AWS::ImageBuilder::ImageRecipe", + "AWS::ImageBuilder::InfrastructureConfiguration", + "AWS::InspectorV2::Filter", + "AWS::IoT::AccountAuditConfiguration", + "AWS::IoT::Authorizer", + "AWS::IoT::CACertificate", + "AWS::IoT::CustomMetric", + "AWS::IoT::Dimension", + "AWS::IoT::FleetMetric", + "AWS::IoT::JobTemplate", + "AWS::IoT::MitigationAction", + "AWS::IoT::Policy", + "AWS::IoT::ProvisioningTemplate", + "AWS::IoT::RoleAlias", + "AWS::IoT::ScheduledAudit", + "AWS::IoT::SecurityProfile", + "AWS::IoTAnalytics::Channel", + "AWS::IoTAnalytics::Dataset", + "AWS::IoTAnalytics::Datastore", + "AWS::IoTAnalytics::Pipeline", + "AWS::IoTEvents::AlarmModel", + "AWS::IoTEvents::DetectorModel", + "AWS::IoTEvents::Input", + "AWS::IoTSiteWise::AssetModel", + "AWS::IoTSiteWise::Dashboard", + "AWS::IoTSiteWise::Gateway", + "AWS::IoTSiteWise::Portal", + "AWS::IoTSiteWise::Project", + "AWS::IoTTwinMaker::ComponentType", + "AWS::IoTTwinMaker::Entity", + "AWS::IoTTwinMaker::Scene", + "AWS::IoTTwinMaker::SyncJob", + "AWS::IoTTwinMaker::Workspace", + "AWS::IoTWireless::FuotaTask", + "AWS::IoTWireless::MulticastGroup", + "AWS::IoTWireless::ServiceProfile", + "AWS::KMS::Alias", + "AWS::KMS::Key", + "AWS::KafkaConnect::Connector", + "AWS::Kendra::Index", + "AWS::Kinesis::Stream", + "AWS::Kinesis::StreamConsumer", + "AWS::KinesisAnalyticsV2::Application", + "AWS::KinesisFirehose::DeliveryStream", + "AWS::KinesisVideo::SignalingChannel", + "AWS::KinesisVideo::Stream", + "AWS::Lambda::CodeSigningConfig", + "AWS::Lambda::Function", + "AWS::Lex::Bot", + "AWS::Lex::BotAlias", + "AWS::Lightsail::Bucket", + "AWS::Lightsail::Certificate", + "AWS::Lightsail::Disk", + "AWS::Lightsail::StaticIp", + "AWS::Logs::Destination", + "AWS::LookoutMetrics::Alert", + "AWS::LookoutVision::Project", + "AWS::M2::Environment", + "AWS::MSK::BatchScramSecret", + "AWS::MSK::Cluster", + "AWS::MSK::Configuration", + "AWS::MediaConnect::FlowEntitlement", + "AWS::MediaConnect::FlowSource", + "AWS::MediaConnect::FlowVpcInterface", + "AWS::MediaPackage::PackagingConfiguration", + "AWS::MediaPackage::PackagingGroup", + "AWS::MediaTailor::PlaybackConfiguration", + "AWS::NetworkFirewall::Firewall", + "AWS::NetworkFirewall::FirewallPolicy", + "AWS::NetworkFirewall::RuleGroup", + "AWS::NetworkManager::ConnectPeer", + "AWS::NetworkManager::CustomerGatewayAssociation", + "AWS::NetworkManager::Device", + "AWS::NetworkManager::GlobalNetwork", + "AWS::NetworkManager::Link", + "AWS::NetworkManager::LinkAssociation", + "AWS::NetworkManager::Site", + "AWS::NetworkManager::TransitGatewayRegistration", + "AWS::OpenSearch::Domain", + "AWS::Panorama::Package", + "AWS::Personalize::Dataset", + "AWS::Personalize::DatasetGroup", + "AWS::Personalize::Schema", + "AWS::Personalize::Solution", + "AWS::Pinpoint::App", + "AWS::Pinpoint::ApplicationSettings", + "AWS::Pinpoint::Campaign", + "AWS::Pinpoint::EmailChannel", + "AWS::Pinpoint::EmailTemplate", + "AWS::Pinpoint::EventStream", + "AWS::Pinpoint::InAppTemplate", + "AWS::Pinpoint::Segment", + "AWS::QLDB::Ledger", + "AWS::QuickSight::DataSource", + "AWS::QuickSight::Template", + "AWS::QuickSight::Theme", + "AWS::RDS::DBCluster", + "AWS::RDS::DBClusterSnapshot", + "AWS::RDS::DBInstance", + "AWS::RDS::DBSecurityGroup", + "AWS::RDS::DBSnapshot", + "AWS::RDS::DBSubnetGroup", + "AWS::RDS::EventSubscription", + "AWS::RDS::GlobalCluster", + "AWS::RDS::OptionGroup", + "AWS::RUM::AppMonitor", + "AWS::Redshift::Cluster", + "AWS::Redshift::ClusterParameterGroup", + "AWS::Redshift::ClusterSecurityGroup", + "AWS::Redshift::ClusterSnapshot", + "AWS::Redshift::ClusterSubnetGroup", + "AWS::Redshift::EndpointAccess", + "AWS::Redshift::EventSubscription", + "AWS::Redshift::ScheduledAction", + "AWS::ResilienceHub::App", + "AWS::ResilienceHub::ResiliencyPolicy", + "AWS::ResourceExplorer2::Index", + "AWS::RoboMaker::RobotApplication", + "AWS::RoboMaker::RobotApplicationVersion", + "AWS::RoboMaker::SimulationApplication", + "AWS::Route53::HostedZone", + "AWS::Route53RecoveryControl::Cluster", + "AWS::Route53RecoveryControl::ControlPanel", + "AWS::Route53RecoveryControl::RoutingControl", + "AWS::Route53RecoveryControl::SafetyRule", + "AWS::Route53RecoveryReadiness::Cell", + "AWS::Route53RecoveryReadiness::ReadinessCheck", + "AWS::Route53RecoveryReadiness::RecoveryGroup", + "AWS::Route53RecoveryReadiness::ResourceSet", + "AWS::Route53Resolver::FirewallDomainList", + "AWS::Route53Resolver::FirewallRuleGroup", + "AWS::Route53Resolver::FirewallRuleGroupAssociation", + "AWS::Route53Resolver::ResolverEndpoint", + "AWS::Route53Resolver::ResolverQueryLoggingConfig", + "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation", + "AWS::Route53Resolver::ResolverRule", + "AWS::Route53Resolver::ResolverRuleAssociation", + "AWS::S3::AccessPoint", + "AWS::S3::AccountPublicAccessBlock", + "AWS::S3::Bucket", + "AWS::S3::MultiRegionAccessPoint", + "AWS::S3::StorageLens", + "AWS::SES::ConfigurationSet", + "AWS::SES::ContactList", + "AWS::SES::ReceiptFilter", + "AWS::SES::ReceiptRuleSet", + "AWS::SES::Template", + "AWS::SNS::Topic", + "AWS::SQS::Queue", + "AWS::SSM::AssociationCompliance", + "AWS::SSM::Document", + "AWS::SSM::FileData", + "AWS::SSM::ManagedInstanceInventory", + "AWS::SSM::PatchCompliance", + "AWS::SageMaker::AppImageConfig", + "AWS::SageMaker::CodeRepository", + "AWS::SageMaker::Domain", + "AWS::SageMaker::FeatureGroup", + "AWS::SageMaker::Image", + "AWS::SageMaker::Model", + "AWS::SageMaker::NotebookInstanceLifecycleConfig", + "AWS::SageMaker::Workteam", + "AWS::SecretsManager::Secret", + "AWS::ServiceCatalog::CloudFormationProduct", + "AWS::ServiceCatalog::CloudFormationProvisionedProduct", + "AWS::ServiceCatalog::Portfolio", + "AWS::ServiceDiscovery::HttpNamespace", + "AWS::ServiceDiscovery::Instance", + "AWS::ServiceDiscovery::PublicDnsNamespace", + "AWS::ServiceDiscovery::Service", + "AWS::Shield::Protection", + "AWS::ShieldRegional::Protection", + "AWS::Signer::SigningProfile", + "AWS::StepFunctions::Activity", + "AWS::StepFunctions::StateMachine", + "AWS::Transfer::Agreement", + "AWS::Transfer::Certificate", + "AWS::Transfer::Connector", + "AWS::Transfer::Workflow", + "AWS::WAF::RateBasedRule", + "AWS::WAF::Rule", + "AWS::WAF::RuleGroup", + "AWS::WAF::WebACL", + "AWS::WAFRegional::RateBasedRule", + "AWS::WAFRegional::Rule", + "AWS::WAFRegional::RuleGroup", + "AWS::WAFRegional::WebACL", + "AWS::WAFv2::IPSet", + "AWS::WAFv2::ManagedRuleSet", + "AWS::WAFv2::RegexPatternSet", + "AWS::WAFv2::RuleGroup", + "AWS::WAFv2::WebACL", + "AWS::WorkSpaces::ConnectionAlias", + "AWS::WorkSpaces::Workspace", + "AWS::XRay::EncryptionConfig",] +ResourceValueTypeType = Literal["RESOURCE_ID"] +SelectAggregateResourceConfigPaginatorName = Literal["select_aggregate_resource_config"] +SelectResourceConfigPaginatorName = Literal["select_resource_config"] +SortByType = Literal["SCORE"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +ConfigServiceServiceName = Literal["config"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_aggregate_compliance_by_config_rules", + "describe_aggregate_compliance_by_conformance_packs", + "describe_aggregation_authorizations", + "describe_compliance_by_config_rule", + "describe_compliance_by_resource", + "describe_config_rule_evaluation_status", + "describe_config_rules", + "describe_configuration_aggregator_sources_status", + "describe_configuration_aggregators", + "describe_conformance_pack_status", + "describe_conformance_packs", + "describe_organization_config_rule_statuses", + "describe_organization_config_rules", + "describe_organization_conformance_pack_statuses", + "describe_organization_conformance_packs", + "describe_pending_aggregation_requests", + "describe_remediation_execution_status", + "describe_retention_configurations", + "get_aggregate_compliance_details_by_config_rule", + "get_compliance_details_by_config_rule", + "get_compliance_details_by_resource", + "get_conformance_pack_compliance_summary", + "get_organization_config_rule_detailed_status", + "get_organization_conformance_pack_detailed_status", + "get_resource_config_history", + "list_aggregate_discovered_resources", + "list_discovered_resources", + "list_resource_evaluations", + "list_tags_for_resource", + "select_aggregate_resource_config", + "select_resource_config",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AccountAggregationSourceUnionTypeDef = Union[ 'AccountAggregationSourceTypeDef', 'AccountAggregationSourceExtraOutputTypeDef' ] +OrganizationAggregationSourceUnionTypeDef = Union[ 'OrganizationAggregationSourceTypeDef', 'OrganizationAggregationSourceExtraOutputTypeDef' ] +OrganizationCustomRuleMetadataUnionTypeDef = Union[ 'OrganizationCustomRuleMetadataTypeDef', 'OrganizationCustomRuleMetadataExtraOutputTypeDef' ] +OrganizationManagedRuleMetadataUnionTypeDef = Union[ 'OrganizationManagedRuleMetadataTypeDef', 'OrganizationManagedRuleMetadataExtraOutputTypeDef' ] +EvaluationUnionTypeDef = Union['EvaluationTypeDef', 'EvaluationOutputTypeDef'] +ConfigurationRecorderUnionTypeDef = Union[ 'ConfigurationRecorderTypeDef', 'ConfigurationRecorderOutputTypeDef' ] +RemediationConfigurationUnionTypeDef = Union[ 'RemediationConfigurationTypeDef', 'RemediationConfigurationOutputTypeDef' ] +ConfigRuleUnionTypeDef = Union['ConfigRuleTypeDef', 'ConfigRuleExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/connect_classes.py b/aws_resource_validator/pydantic_models/connect_classes.py new file mode 100644 index 00000000..411f9c68 --- /dev/null +++ b/aws_resource_validator/pydantic_models/connect_classes.py @@ -0,0 +1,4343 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.connect_constants import * + +class ActionSummaryTypeDef(BaseModel): + ActionType: ActionTypeType + +class ActivateEvaluationFormRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + EvaluationFormVersion: int + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DistributionTypeDef(BaseModel): + Region: str + Percentage: int + +class QueueReferenceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + +class AgentHierarchyGroupTypeDef(BaseModel): + Arn: Optional[str] = None + +class AgentHierarchyGroupsTypeDef(BaseModel): + L1Ids: Optional[Sequence[str]] = None + L2Ids: Optional[Sequence[str]] = None + L3Ids: Optional[Sequence[str]] = None + L4Ids: Optional[Sequence[str]] = None + L5Ids: Optional[Sequence[str]] = None + +class DeviceInfoTypeDef(BaseModel): + PlatformName: Optional[str] = None + PlatformVersion: Optional[str] = None + OperatingSystem: Optional[str] = None + +class ParticipantCapabilitiesTypeDef(BaseModel): + Video: Optional[Literal["SEND"]] = None + +class AudioQualityMetricsInfoTypeDef(BaseModel): + QualityScore: Optional[float] = None + PotentialQualityIssues: Optional[List[str]] = None + +class AgentStatusReferenceTypeDef(BaseModel): + StatusStartTimestamp: Optional[datetime] = None + StatusArn: Optional[str] = None + StatusName: Optional[str] = None + +class AgentStatusSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[AgentStatusTypeType] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class AgentStatusTypeDef(BaseModel): + AgentStatusARN: Optional[str] = None + AgentStatusId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Type: Optional[AgentStatusTypeType] = None + DisplayOrder: Optional[int] = None + State: Optional[AgentStatusStateType] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class AgentsCriteriaTypeDef(BaseModel): + AgentIds: Optional[List[str]] = None + +class AnalyticsDataAssociationResultTypeDef(BaseModel): + DataSetId: Optional[str] = None + TargetAccountId: Optional[str] = None + ResourceShareId: Optional[str] = None + ResourceShareArn: Optional[str] = None + +class AnswerMachineDetectionConfigTypeDef(BaseModel): + EnableAnswerMachineDetection: Optional[bool] = None + AwaitAnswerMachinePrompt: Optional[bool] = None + +class ApplicationExtraOutputTypeDef(BaseModel): + Namespace: Optional[str] = None + ApplicationPermissions: Optional[List[str]] = None + +class ApplicationOutputTypeDef(BaseModel): + Namespace: Optional[str] = None + ApplicationPermissions: Optional[List[str]] = None + +class ApplicationTypeDef(BaseModel): + Namespace: Optional[str] = None + ApplicationPermissions: Optional[Sequence[str]] = None + +class AssociateAnalyticsDataSetRequestRequestTypeDef(BaseModel): + InstanceId: str + DataSetId: str + TargetAccountId: Optional[str] = None + +class AssociateApprovedOriginRequestRequestTypeDef(BaseModel): + InstanceId: str + Origin: str + +class LexBotTypeDef(BaseModel): + Name: str + LexRegion: str + +class LexV2BotTypeDef(BaseModel): + AliasArn: Optional[str] = None + +class AssociateDefaultVocabularyRequestRequestTypeDef(BaseModel): + InstanceId: str + LanguageCode: VocabularyLanguageCodeType + VocabularyId: Optional[str] = None + +class AssociateFlowRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceId: str + FlowId: str + ResourceType: Literal["SMS_PHONE_NUMBER"] + +class AssociateLambdaFunctionRequestRequestTypeDef(BaseModel): + InstanceId: str + FunctionArn: str + +class AssociatePhoneNumberContactFlowRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + InstanceId: str + ContactFlowId: str + +class AssociateQueueQuickConnectsRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + QuickConnectIds: Sequence[str] + +class AssociateSecurityKeyRequestRequestTypeDef(BaseModel): + InstanceId: str + Key: str + +class AssociateTrafficDistributionGroupUserRequestRequestTypeDef(BaseModel): + TrafficDistributionGroupId: str + UserId: str + InstanceId: str + +class UserProficiencyTypeDef(BaseModel): + AttributeName: str + AttributeValue: str + Level: float + +class AttachedFileErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + FileId: Optional[str] = None + +class CreatedByInfoTypeDef(BaseModel): + ConnectUserArn: Optional[str] = None + AWSIdentityArn: Optional[str] = None + +class AttachmentReferenceTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + Status: Optional[ReferenceStatusType] = None + +class AttendeeTypeDef(BaseModel): + AttendeeId: Optional[str] = None + JoinToken: Optional[str] = None + +class HierarchyGroupConditionTypeDef(BaseModel): + Value: Optional[str] = None + HierarchyGroupMatchType: Optional[HierarchyGroupMatchTypeType] = None + +class TagConditionTypeDef(BaseModel): + TagKey: Optional[str] = None + TagValue: Optional[str] = None + +class AttributeTypeDef(BaseModel): + AttributeType: Optional[InstanceAttributeTypeType] = None + Value: Optional[str] = None + +class AudioFeaturesTypeDef(BaseModel): + EchoReduction: Optional[MeetingFeatureStatusType] = None + +class AuthenticationProfileSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + IsDefault: Optional[bool] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class AuthenticationProfileTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + AllowedIps: Optional[List[str]] = None + BlockedIps: Optional[List[str]] = None + IsDefault: Optional[bool] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + PeriodicSessionDuration: Optional[int] = None + MaxSessionDuration: Optional[int] = None + +class AvailableNumberSummaryTypeDef(BaseModel): + PhoneNumber: Optional[str] = None + PhoneNumberCountryCode: Optional[PhoneNumberCountryCodeType] = None + PhoneNumberType: Optional[PhoneNumberTypeType] = None + +class BatchAssociateAnalyticsDataSetRequestRequestTypeDef(BaseModel): + InstanceId: str + DataSetIds: Sequence[str] + TargetAccountId: Optional[str] = None + +class ErrorResultTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchDisassociateAnalyticsDataSetRequestRequestTypeDef(BaseModel): + InstanceId: str + DataSetIds: Sequence[str] + TargetAccountId: Optional[str] = None + +class BatchGetAttachedFileMetadataRequestRequestTypeDef(BaseModel): + FileIds: Sequence[str] + InstanceId: str + AssociatedResourceArn: str + +class BatchGetFlowAssociationRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceIds: Sequence[str] + ResourceType: Optional[Literal["VOICE_PHONE_NUMBER"]] = None + +class FlowAssociationSummaryTypeDef(BaseModel): + ResourceId: Optional[str] = None + FlowId: Optional[str] = None + ResourceType: Optional[Literal["VOICE_PHONE_NUMBER"]] = None + +class FailedRequestTypeDef(BaseModel): + RequestIdentifier: Optional[str] = None + FailureReasonCode: Optional[FailureReasonCodeType] = None + FailureReasonMessage: Optional[str] = None + +class SuccessfulRequestTypeDef(BaseModel): + RequestIdentifier: Optional[str] = None + ContactId: Optional[str] = None + +class CampaignTypeDef(BaseModel): + CampaignId: Optional[str] = None + +class ChatEventTypeDef(BaseModel): + Type: ChatEventTypeType + ContentType: Optional[str] = None + Content: Optional[str] = None + +class ChatMessageTypeDef(BaseModel): + ContentType: str + Content: str + +class ChatStreamingConfigurationTypeDef(BaseModel): + StreamingEndpointArn: str + +class ClaimPhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumber: str + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + PhoneNumberDescription: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + ClientToken: Optional[str] = None + +class PhoneNumberStatusTypeDef(BaseModel): + Status: Optional[PhoneNumberWorkflowStatusType] = None + Message: Optional[str] = None + +class CompleteAttachedFileUploadRequestRequestTypeDef(BaseModel): + InstanceId: str + FileId: str + AssociatedResourceArn: str + +class EndpointTypeDef(BaseModel): + Type: Optional[EndpointTypeType] = None + Address: Optional[str] = None + +class ContactFilterTypeDef(BaseModel): + ContactStates: Optional[Sequence[ContactStateType]] = None + +class StringConditionTypeDef(BaseModel): + FieldName: Optional[str] = None + Value: Optional[str] = None + ComparisonType: Optional[StringComparisonTypeType] = None + +class ContactFlowModuleSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + State: Optional[ContactFlowModuleStateType] = None + +class ContactFlowModuleTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Content: Optional[str] = None + Description: Optional[str] = None + State: Optional[ContactFlowModuleStateType] = None + Status: Optional[ContactFlowModuleStatusType] = None + Tags: Optional[Dict[str, str]] = None + +class ContactFlowSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + ContactFlowType: Optional[ContactFlowTypeType] = None + ContactFlowState: Optional[ContactFlowStateType] = None + ContactFlowStatus: Optional[ContactFlowStatusType] = None + +class ContactFlowTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ContactFlowTypeType] = None + State: Optional[ContactFlowStateType] = None + Status: Optional[ContactFlowStatusType] = None + Description: Optional[str] = None + Content: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ContactSearchSummaryAgentInfoTypeDef(BaseModel): + Id: Optional[str] = None + ConnectedToAgentTimestamp: Optional[datetime] = None + +class ContactSearchSummaryQueueInfoTypeDef(BaseModel): + Id: Optional[str] = None + EnqueueTimestamp: Optional[datetime] = None + +class CustomerVoiceActivityTypeDef(BaseModel): + GreetingStartTimestamp: Optional[datetime] = None + GreetingEndTimestamp: Optional[datetime] = None + +class DisconnectDetailsTypeDef(BaseModel): + PotentialDisconnectIssue: Optional[str] = None + +class QueueInfoTypeDef(BaseModel): + Id: Optional[str] = None + EnqueueTimestamp: Optional[datetime] = None + +class SegmentAttributeValueTypeDef(BaseModel): + ValueString: Optional[str] = None + +class WisdomInfoTypeDef(BaseModel): + SessionArn: Optional[str] = None + +class CreateAgentStatusRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + State: AgentStatusStateType + Description: Optional[str] = None + DisplayOrder: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateContactFlowModuleRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + Content: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + ClientToken: Optional[str] = None + +class CreateContactFlowRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + Type: ContactFlowTypeType + Content: str + Description: Optional[str] = None + Status: Optional[ContactFlowStatusType] = None + Tags: Optional[Mapping[str, str]] = None + +class EvaluationFormScoringStrategyTypeDef(BaseModel): + Mode: EvaluationFormScoringModeType + Status: EvaluationFormScoringStatusType + +class CreateInstanceRequestRequestTypeDef(BaseModel): + IdentityManagementType: DirectoryTypeType + InboundCallsEnabled: bool + OutboundCallsEnabled: bool + ClientToken: Optional[str] = None + InstanceAlias: Optional[str] = None + DirectoryId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateIntegrationAssociationRequestRequestTypeDef(BaseModel): + InstanceId: str + IntegrationType: IntegrationTypeType + IntegrationArn: str + SourceApplicationUrl: Optional[str] = None + SourceApplicationName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Tags: Optional[Mapping[str, str]] = None + +class ParticipantDetailsToAddTypeDef(BaseModel): + ParticipantRole: Optional[ParticipantRoleType] = None + DisplayName: Optional[str] = None + +class ParticipantTokenCredentialsTypeDef(BaseModel): + ParticipantToken: Optional[str] = None + Expiry: Optional[str] = None + +class CreatePersistentContactAssociationRequestRequestTypeDef(BaseModel): + InstanceId: str + InitialContactId: str + RehydrationType: RehydrationTypeType + SourceContactId: str + ClientToken: Optional[str] = None + +class PredefinedAttributeValuesTypeDef(BaseModel): + StringList: Optional[Sequence[str]] = None + +class CreatePromptRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + S3Uri: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class OutboundCallerConfigTypeDef(BaseModel): + OutboundCallerIdName: Optional[str] = None + OutboundCallerIdNumberId: Optional[str] = None + OutboundFlowId: Optional[str] = None + +class RuleTriggerEventSourceTypeDef(BaseModel): + EventSourceName: EventSourceNameType + IntegrationAssociationId: Optional[str] = None + +class CreateTrafficDistributionGroupRequestRequestTypeDef(BaseModel): + Name: str + InstanceId: str + Description: Optional[str] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateUseCaseRequestRequestTypeDef(BaseModel): + InstanceId: str + IntegrationAssociationId: str + UseCaseType: UseCaseTypeType + Tags: Optional[Mapping[str, str]] = None + +class CreateUserHierarchyGroupRequestRequestTypeDef(BaseModel): + Name: str + InstanceId: str + ParentGroupId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UserIdentityInfoTypeDef(BaseModel): + FirstName: Optional[str] = None + LastName: Optional[str] = None + Email: Optional[str] = None + SecondaryEmail: Optional[str] = None + Mobile: Optional[str] = None + +class UserPhoneConfigTypeDef(BaseModel): + PhoneType: PhoneTypeType + AutoAccept: Optional[bool] = None + AfterContactWorkTimeLimit: Optional[int] = None + DeskPhoneNumber: Optional[str] = None + +class ViewInputContentTypeDef(BaseModel): + Template: Optional[str] = None + Actions: Optional[Sequence[str]] = None + +class CreateViewVersionRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + VersionDescription: Optional[str] = None + ViewContentSha256: Optional[str] = None + +class CreateVocabularyRequestRequestTypeDef(BaseModel): + InstanceId: str + VocabularyName: str + LanguageCode: VocabularyLanguageCodeType + Content: str + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CredentialsTypeDef(BaseModel): + AccessToken: Optional[str] = None + AccessTokenExpiration: Optional[datetime] = None + RefreshToken: Optional[str] = None + RefreshTokenExpiration: Optional[datetime] = None + +class CrossChannelBehaviorTypeDef(BaseModel): + BehaviorType: BehaviorTypeType + +class CurrentMetricTypeDef(BaseModel): + Name: Optional[CurrentMetricNameType] = None + Unit: Optional[UnitType] = None + +class CurrentMetricSortCriteriaTypeDef(BaseModel): + SortByMetric: Optional[CurrentMetricNameType] = None + SortOrder: Optional[SortOrderType] = None + +class DateReferenceTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class DeactivateEvaluationFormRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + EvaluationFormVersion: int + +class DefaultVocabularyTypeDef(BaseModel): + InstanceId: str + LanguageCode: VocabularyLanguageCodeType + VocabularyId: str + VocabularyName: str + +class DeleteAttachedFileRequestRequestTypeDef(BaseModel): + InstanceId: str + FileId: str + AssociatedResourceArn: str + +class DeleteContactEvaluationRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationId: str + +class DeleteContactFlowModuleRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowModuleId: str + +class DeleteContactFlowRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowId: str + +class DeleteEvaluationFormRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + EvaluationFormVersion: Optional[int] = None + +class DeleteHoursOfOperationRequestRequestTypeDef(BaseModel): + InstanceId: str + HoursOfOperationId: str + +class DeleteInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class DeleteIntegrationAssociationRequestRequestTypeDef(BaseModel): + InstanceId: str + IntegrationAssociationId: str + +class DeletePredefinedAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + +class DeletePromptRequestRequestTypeDef(BaseModel): + InstanceId: str + PromptId: str + +class DeleteQueueRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + +class DeleteQuickConnectRequestRequestTypeDef(BaseModel): + InstanceId: str + QuickConnectId: str + +class DeleteRoutingProfileRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + +class DeleteRuleRequestRequestTypeDef(BaseModel): + InstanceId: str + RuleId: str + +class DeleteSecurityProfileRequestRequestTypeDef(BaseModel): + InstanceId: str + SecurityProfileId: str + +class DeleteTaskTemplateRequestRequestTypeDef(BaseModel): + InstanceId: str + TaskTemplateId: str + +class DeleteTrafficDistributionGroupRequestRequestTypeDef(BaseModel): + TrafficDistributionGroupId: str + +class DeleteUseCaseRequestRequestTypeDef(BaseModel): + InstanceId: str + IntegrationAssociationId: str + UseCaseId: str + +class DeleteUserHierarchyGroupRequestRequestTypeDef(BaseModel): + HierarchyGroupId: str + InstanceId: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + InstanceId: str + UserId: str + +class DeleteViewRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + +class DeleteViewVersionRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + ViewVersion: int + +class DeleteVocabularyRequestRequestTypeDef(BaseModel): + InstanceId: str + VocabularyId: str + +class DescribeAgentStatusRequestRequestTypeDef(BaseModel): + InstanceId: str + AgentStatusId: str + +class DescribeAuthenticationProfileRequestRequestTypeDef(BaseModel): + AuthenticationProfileId: str + InstanceId: str + +class DescribeContactEvaluationRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationId: str + +class DescribeContactFlowModuleRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowModuleId: str + +class DescribeContactFlowRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowId: str + +class DescribeContactRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + +class DescribeEvaluationFormRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + EvaluationFormVersion: Optional[int] = None + +class DescribeHoursOfOperationRequestRequestTypeDef(BaseModel): + InstanceId: str + HoursOfOperationId: str + +class DescribeInstanceAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + AttributeType: InstanceAttributeTypeType + +class DescribeInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class DescribeInstanceStorageConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + AssociationId: str + ResourceType: InstanceStorageResourceTypeType + +class DescribePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class DescribePredefinedAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + +class DescribePromptRequestRequestTypeDef(BaseModel): + InstanceId: str + PromptId: str + +class PromptTypeDef(BaseModel): + PromptARN: Optional[str] = None + PromptId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class DescribeQueueRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + +class DescribeQuickConnectRequestRequestTypeDef(BaseModel): + InstanceId: str + QuickConnectId: str + +class DescribeRoutingProfileRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + +class DescribeRuleRequestRequestTypeDef(BaseModel): + InstanceId: str + RuleId: str + +class DescribeSecurityProfileRequestRequestTypeDef(BaseModel): + SecurityProfileId: str + InstanceId: str + +class SecurityProfileTypeDef(BaseModel): + Id: Optional[str] = None + OrganizationResourceId: Optional[str] = None + Arn: Optional[str] = None + SecurityProfileName: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + AllowedAccessControlTags: Optional[Dict[str, str]] = None + TagRestrictedResources: Optional[List[str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + HierarchyRestrictedResources: Optional[List[str]] = None + AllowedAccessControlHierarchyGroupId: Optional[str] = None + +class DescribeTrafficDistributionGroupRequestRequestTypeDef(BaseModel): + TrafficDistributionGroupId: str + +class TrafficDistributionGroupTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + InstanceArn: Optional[str] = None + Status: Optional[TrafficDistributionGroupStatusType] = None + Tags: Optional[Dict[str, str]] = None + IsDefault: Optional[bool] = None + +class DescribeUserHierarchyGroupRequestRequestTypeDef(BaseModel): + HierarchyGroupId: str + InstanceId: str + +class DescribeUserHierarchyStructureRequestRequestTypeDef(BaseModel): + InstanceId: str + +class DescribeUserRequestRequestTypeDef(BaseModel): + UserId: str + InstanceId: str + +class DescribeViewRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + +class DescribeVocabularyRequestRequestTypeDef(BaseModel): + InstanceId: str + VocabularyId: str + +class VocabularyTypeDef(BaseModel): + Name: str + Id: str + Arn: str + LanguageCode: VocabularyLanguageCodeType + State: VocabularyStateType + LastModifiedTime: datetime + FailureReason: Optional[str] = None + Content: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class RoutingProfileReferenceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + +class DisassociateAnalyticsDataSetRequestRequestTypeDef(BaseModel): + InstanceId: str + DataSetId: str + TargetAccountId: Optional[str] = None + +class DisassociateApprovedOriginRequestRequestTypeDef(BaseModel): + InstanceId: str + Origin: str + +class DisassociateFlowRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceId: str + ResourceType: Literal["SMS_PHONE_NUMBER"] + +class DisassociateInstanceStorageConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + AssociationId: str + ResourceType: InstanceStorageResourceTypeType + +class DisassociateLambdaFunctionRequestRequestTypeDef(BaseModel): + InstanceId: str + FunctionArn: str + +class DisassociateLexBotRequestRequestTypeDef(BaseModel): + InstanceId: str + BotName: str + LexRegion: str + +class DisassociatePhoneNumberContactFlowRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + InstanceId: str + +class DisassociateQueueQuickConnectsRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + QuickConnectIds: Sequence[str] + +class RoutingProfileQueueReferenceTypeDef(BaseModel): + QueueId: str + Channel: ChannelType + +class DisassociateSecurityKeyRequestRequestTypeDef(BaseModel): + InstanceId: str + AssociationId: str + +class DisassociateTrafficDistributionGroupUserRequestRequestTypeDef(BaseModel): + TrafficDistributionGroupId: str + UserId: str + InstanceId: str + +class UserProficiencyDisassociateTypeDef(BaseModel): + AttributeName: str + AttributeValue: str + +class DisconnectReasonTypeDef(BaseModel): + Code: Optional[str] = None + +class DismissUserContactRequestRequestTypeDef(BaseModel): + UserId: str + InstanceId: str + ContactId: str + +class DownloadUrlMetadataTypeDef(BaseModel): + Url: Optional[str] = None + UrlExpiry: Optional[str] = None + +class EmailReferenceTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class EncryptionConfigTypeDef(BaseModel): + EncryptionType: Literal["KMS"] + KeyId: str + +class EvaluationAnswerDataTypeDef(BaseModel): + StringValue: Optional[str] = None + NumericValue: Optional[float] = None + NotApplicable: Optional[bool] = None + +class NumericQuestionPropertyValueAutomationTypeDef(BaseModel): + Label: NumericQuestionPropertyAutomationLabelType + +class EvaluationFormNumericQuestionOptionTypeDef(BaseModel): + MinValue: int + MaxValue: int + Score: Optional[int] = None + AutomaticFail: Optional[bool] = None + +class EvaluationFormSectionOutputTypeDef(BaseModel): + Title: str + RefId: str + Items: List["EvaluationFormItemOutputTypeDef"] + Instructions: Optional[str] = None + Weight: Optional[float] = None + +class EvaluationFormSectionTypeDef(BaseModel): + Title: str + RefId: str + Items: Sequence["EvaluationFormItemTypeDef"] + Instructions: Optional[str] = None + Weight: Optional[float] = None + +class SingleSelectQuestionRuleCategoryAutomationTypeDef(BaseModel): + Category: str + Condition: SingleSelectQuestionRuleCategoryAutomationConditionType + OptionRefId: str + +class EvaluationFormSingleSelectQuestionOptionTypeDef(BaseModel): + RefId: str + Text: str + Score: Optional[int] = None + AutomaticFail: Optional[bool] = None + +class EvaluationFormSummaryTypeDef(BaseModel): + EvaluationFormId: str + EvaluationFormArn: str + Title: str + CreatedTime: datetime + CreatedBy: str + LastModifiedTime: datetime + LastModifiedBy: str + LatestVersion: int + LastActivatedTime: Optional[datetime] = None + LastActivatedBy: Optional[str] = None + ActiveVersion: Optional[int] = None + +class EvaluationFormVersionSummaryTypeDef(BaseModel): + EvaluationFormArn: str + EvaluationFormId: str + EvaluationFormVersion: int + Locked: bool + Status: EvaluationFormVersionStatusType + CreatedTime: datetime + CreatedBy: str + LastModifiedTime: datetime + LastModifiedBy: str + +class EvaluationScoreTypeDef(BaseModel): + Percentage: Optional[float] = None + NotApplicable: Optional[bool] = None + AutomaticFail: Optional[bool] = None + +class EvaluationNoteTypeDef(BaseModel): + Value: Optional[str] = None + +class EventBridgeActionDefinitionTypeDef(BaseModel): + Name: str + +class ExpiryTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + ExpiryTimestamp: Optional[datetime] = None + +class FieldValueUnionOutputTypeDef(BaseModel): + BooleanValue: Optional[bool] = None + DoubleValue: Optional[float] = None + EmptyValue: Optional[Dict[str, Any]] = None + StringValue: Optional[str] = None + +class FieldValueUnionTypeDef(BaseModel): + BooleanValue: Optional[bool] = None + DoubleValue: Optional[float] = None + EmptyValue: Optional[Mapping[str, Any]] = None + StringValue: Optional[str] = None + +class FilterV2TypeDef(BaseModel): + FilterKey: Optional[str] = None + FilterValues: Optional[Sequence[str]] = None + +class FiltersTypeDef(BaseModel): + Queues: Optional[Sequence[str]] = None + Channels: Optional[Sequence[ChannelType]] = None + RoutingProfiles: Optional[Sequence[str]] = None + RoutingStepExpressions: Optional[Sequence[str]] = None + +class GetAttachedFileRequestRequestTypeDef(BaseModel): + InstanceId: str + FileId: str + AssociatedResourceArn: str + UrlExpiryInSeconds: Optional[int] = None + +class GetContactAttributesRequestRequestTypeDef(BaseModel): + InstanceId: str + InitialContactId: str + +class GetFederationTokenRequestRequestTypeDef(BaseModel): + InstanceId: str + +class GetFlowAssociationRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceId: str + ResourceType: Literal["SMS_PHONE_NUMBER"] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class IntervalDetailsTypeDef(BaseModel): + TimeZone: Optional[str] = None + IntervalPeriod: Optional[IntervalPeriodType] = None + +class GetPromptFileRequestRequestTypeDef(BaseModel): + InstanceId: str + PromptId: str + +class GetTaskTemplateRequestRequestTypeDef(BaseModel): + InstanceId: str + TaskTemplateId: str + SnapshotVersion: Optional[str] = None + +class GetTrafficDistributionRequestRequestTypeDef(BaseModel): + Id: str + +class HierarchyGroupSummaryReferenceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + +class HierarchyGroupSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class HierarchyLevelTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class HierarchyLevelUpdateTypeDef(BaseModel): + Name: str + +class ThresholdTypeDef(BaseModel): + Comparison: Optional[Literal["LT"]] = None + ThresholdValue: Optional[float] = None + +class HoursOfOperationTimeSliceTypeDef(BaseModel): + Hours: int + Minutes: int + +class HoursOfOperationSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ImportPhoneNumberRequestRequestTypeDef(BaseModel): + InstanceId: str + SourcePhoneNumberArn: str + PhoneNumberDescription: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + ClientToken: Optional[str] = None + +class InstanceStatusReasonTypeDef(BaseModel): + Message: Optional[str] = None + +class KinesisFirehoseConfigTypeDef(BaseModel): + FirehoseArn: str + +class KinesisStreamConfigTypeDef(BaseModel): + StreamArn: str + +class InstanceSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + IdentityManagementType: Optional[DirectoryTypeType] = None + InstanceAlias: Optional[str] = None + CreatedTime: Optional[datetime] = None + ServiceRole: Optional[str] = None + InstanceStatus: Optional[InstanceStatusType] = None + InboundCallsEnabled: Optional[bool] = None + OutboundCallsEnabled: Optional[bool] = None + InstanceAccessUrl: Optional[str] = None + +class IntegrationAssociationSummaryTypeDef(BaseModel): + IntegrationAssociationId: Optional[str] = None + IntegrationAssociationArn: Optional[str] = None + InstanceId: Optional[str] = None + IntegrationType: Optional[IntegrationTypeType] = None + IntegrationArn: Optional[str] = None + SourceApplicationUrl: Optional[str] = None + SourceApplicationName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + +class TaskTemplateFieldIdentifierTypeDef(BaseModel): + Name: Optional[str] = None + +class ListAgentStatusRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + AgentStatusTypes: Optional[Sequence[AgentStatusTypeType]] = None + +class ListAnalyticsDataAssociationsRequestRequestTypeDef(BaseModel): + InstanceId: str + DataSetId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListApprovedOriginsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAuthenticationProfilesRequestRequestTypeDef(BaseModel): + InstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListBotsRequestRequestTypeDef(BaseModel): + InstanceId: str + LexVersion: LexVersionType + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListContactEvaluationsRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + NextToken: Optional[str] = None + +class ListContactFlowModulesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ContactFlowModuleState: Optional[ContactFlowModuleStateType] = None + +class ListContactFlowsRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowTypes: Optional[Sequence[ContactFlowTypeType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListContactReferencesRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + ReferenceTypes: Sequence[ReferenceTypeType] + NextToken: Optional[str] = None + +class ListDefaultVocabulariesRequestRequestTypeDef(BaseModel): + InstanceId: str + LanguageCode: Optional[VocabularyLanguageCodeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEvaluationFormVersionsRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEvaluationFormsRequestRequestTypeDef(BaseModel): + InstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFlowAssociationsRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceType: Optional[Literal["VOICE_PHONE_NUMBER"]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListHoursOfOperationsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInstanceAttributesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInstanceStorageConfigsRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceType: InstanceStorageResourceTypeType + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInstancesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIntegrationAssociationsRequestRequestTypeDef(BaseModel): + InstanceId: str + IntegrationType: Optional[IntegrationTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + IntegrationArn: Optional[str] = None + +class ListLambdaFunctionsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListLexBotsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPhoneNumbersRequestRequestTypeDef(BaseModel): + InstanceId: str + PhoneNumberTypes: Optional[Sequence[PhoneNumberTypeType]] = None + PhoneNumberCountryCodes: Optional[Sequence[PhoneNumberCountryCodeType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PhoneNumberSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + PhoneNumber: Optional[str] = None + PhoneNumberType: Optional[PhoneNumberTypeType] = None + PhoneNumberCountryCode: Optional[PhoneNumberCountryCodeType] = None + +class ListPhoneNumbersSummaryTypeDef(BaseModel): + PhoneNumberId: Optional[str] = None + PhoneNumberArn: Optional[str] = None + PhoneNumber: Optional[str] = None + PhoneNumberCountryCode: Optional[PhoneNumberCountryCodeType] = None + PhoneNumberType: Optional[PhoneNumberTypeType] = None + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + PhoneNumberDescription: Optional[str] = None + SourcePhoneNumberArn: Optional[str] = None + +class ListPhoneNumbersV2RequestRequestTypeDef(BaseModel): + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PhoneNumberCountryCodes: Optional[Sequence[PhoneNumberCountryCodeType]] = None + PhoneNumberTypes: Optional[Sequence[PhoneNumberTypeType]] = None + PhoneNumberPrefix: Optional[str] = None + +class ListPredefinedAttributesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PredefinedAttributeSummaryTypeDef(BaseModel): + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListPromptsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PromptSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListQueueQuickConnectsRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QuickConnectSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + QuickConnectType: Optional[QuickConnectTypeType] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListQueuesRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueTypes: Optional[Sequence[QueueTypeType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QueueSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + QueueType: Optional[QueueTypeType] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListQuickConnectsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + QuickConnectTypes: Optional[Sequence[QuickConnectTypeType]] = None + +class ListRealtimeContactAnalysisSegmentsV2RequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + OutputType: RealTimeContactAnalysisOutputTypeType + SegmentTypes: Sequence[RealTimeContactAnalysisSegmentTypeType] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRoutingProfileQueuesRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RoutingProfileQueueConfigSummaryTypeDef(BaseModel): + QueueId: str + QueueArn: str + QueueName: str + Priority: int + Delay: int + Channel: ChannelType + +class ListRoutingProfilesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RoutingProfileSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListRulesRequestRequestTypeDef(BaseModel): + InstanceId: str + PublishStatus: Optional[RulePublishStatusType] = None + EventSourceName: Optional[EventSourceNameType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSecurityKeysRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SecurityKeyTypeDef(BaseModel): + AssociationId: Optional[str] = None + Key: Optional[str] = None + CreationTime: Optional[datetime] = None + +class ListSecurityProfileApplicationsRequestRequestTypeDef(BaseModel): + SecurityProfileId: str + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListSecurityProfilePermissionsRequestRequestTypeDef(BaseModel): + SecurityProfileId: str + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListSecurityProfilesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SecurityProfileSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTaskTemplatesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[TaskTemplateStatusType] = None + Name: Optional[str] = None + +class TaskTemplateMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Status: Optional[TaskTemplateStatusType] = None + LastModifiedTime: Optional[datetime] = None + CreatedTime: Optional[datetime] = None + +class ListTrafficDistributionGroupUsersRequestRequestTypeDef(BaseModel): + TrafficDistributionGroupId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TrafficDistributionGroupUserSummaryTypeDef(BaseModel): + UserId: Optional[str] = None + +class ListTrafficDistributionGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + InstanceId: Optional[str] = None + +class TrafficDistributionGroupSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + InstanceArn: Optional[str] = None + Status: Optional[TrafficDistributionGroupStatusType] = None + IsDefault: Optional[bool] = None + +class ListUseCasesRequestRequestTypeDef(BaseModel): + InstanceId: str + IntegrationAssociationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class UseCaseTypeDef(BaseModel): + UseCaseId: Optional[str] = None + UseCaseArn: Optional[str] = None + UseCaseType: Optional[UseCaseTypeType] = None + +class ListUserHierarchyGroupsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListUserProficienciesRequestRequestTypeDef(BaseModel): + InstanceId: str + UserId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class UserSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Username: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class ListViewVersionsRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ViewVersionSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Description: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ViewTypeType] = None + Version: Optional[int] = None + VersionDescription: Optional[str] = None + +class ListViewsRequestRequestTypeDef(BaseModel): + InstanceId: str + Type: Optional[ViewTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ViewSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ViewTypeType] = None + Status: Optional[ViewStatusType] = None + Description: Optional[str] = None + +class MediaPlacementTypeDef(BaseModel): + AudioHostUrl: Optional[str] = None + AudioFallbackUrl: Optional[str] = None + SignalingUrl: Optional[str] = None + TurnControlUrl: Optional[str] = None + EventIngestionUrl: Optional[str] = None + +class MetricFilterV2OutputTypeDef(BaseModel): + MetricFilterKey: Optional[str] = None + MetricFilterValues: Optional[List[str]] = None + Negate: Optional[bool] = None + +class MetricFilterV2TypeDef(BaseModel): + MetricFilterKey: Optional[str] = None + MetricFilterValues: Optional[Sequence[str]] = None + Negate: Optional[bool] = None + +class MetricIntervalTypeDef(BaseModel): + Interval: Optional[IntervalPeriodType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class ThresholdV2TypeDef(BaseModel): + Comparison: Optional[str] = None + ThresholdValue: Optional[float] = None + +class MonitorContactRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + UserId: str + AllowedMonitorCapabilities: Optional[Sequence[MonitorCapabilityType]] = None + ClientToken: Optional[str] = None + +class ParticipantDetailsTypeDef(BaseModel): + DisplayName: str + +class NotificationRecipientTypeOutputTypeDef(BaseModel): + UserTags: Optional[Dict[str, str]] = None + UserIds: Optional[List[str]] = None + +class NotificationRecipientTypeTypeDef(BaseModel): + UserTags: Optional[Mapping[str, str]] = None + UserIds: Optional[Sequence[str]] = None + +class NumberReferenceTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class ParticipantTimerValueTypeDef(BaseModel): + ParticipantTimerAction: Optional[Literal["Unset"]] = None + ParticipantTimerDurationInMinutes: Optional[int] = None + +class PauseContactRequestRequestTypeDef(BaseModel): + ContactId: str + InstanceId: str + ContactFlowId: Optional[str] = None + +class PersistentChatTypeDef(BaseModel): + RehydrationType: Optional[RehydrationTypeType] = None + SourceContactId: Optional[str] = None + +class PhoneNumberQuickConnectConfigTypeDef(BaseModel): + PhoneNumber: str + +class PredefinedAttributeValuesOutputTypeDef(BaseModel): + StringList: Optional[List[str]] = None + +class PredefinedAttributeValuesExtraOutputTypeDef(BaseModel): + StringList: Optional[List[str]] = None + +class PutUserStatusRequestRequestTypeDef(BaseModel): + UserId: str + InstanceId: str + AgentStatusId: str + +class QueueQuickConnectConfigTypeDef(BaseModel): + QueueId: str + ContactFlowId: str + +class UserQuickConnectConfigTypeDef(BaseModel): + UserId: str + ContactFlowId: str + +class RealTimeContactAnalysisAttachmentTypeDef(BaseModel): + AttachmentName: str + AttachmentId: str + ContentType: Optional[str] = None + Status: Optional[ArtifactStatusType] = None + +class RealTimeContactAnalysisCharacterIntervalTypeDef(BaseModel): + BeginOffsetChar: int + EndOffsetChar: int + +class RealTimeContactAnalysisTimeDataTypeDef(BaseModel): + AbsoluteTime: Optional[datetime] = None + +class StringReferenceTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class UrlReferenceTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class ReferenceTypeDef(BaseModel): + Value: str + Type: ReferenceTypeType + +class ReleasePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + ClientToken: Optional[str] = None + +class ReplicateInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + ReplicaRegion: str + ReplicaAlias: str + ClientToken: Optional[str] = None + +class TagSearchConditionTypeDef(BaseModel): + tagKey: Optional[str] = None + tagValue: Optional[str] = None + tagKeyComparisonType: Optional[StringComparisonTypeType] = None + tagValueComparisonType: Optional[StringComparisonTypeType] = None + +class ResumeContactRecordingRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + InitialContactId: str + +class ResumeContactRequestRequestTypeDef(BaseModel): + ContactId: str + InstanceId: str + ContactFlowId: Optional[str] = None + +class SubmitAutoEvaluationActionDefinitionTypeDef(BaseModel): + EvaluationFormId: str + +class SearchAvailablePhoneNumbersRequestRequestTypeDef(BaseModel): + PhoneNumberCountryCode: PhoneNumberCountryCodeType + PhoneNumberType: PhoneNumberTypeType + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + PhoneNumberPrefix: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SortTypeDef(BaseModel): + FieldName: SortableFieldNameType + Order: SortOrderType + +class SearchPredefinedAttributesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchCriteria: Optional["PredefinedAttributeSearchCriteriaTypeDef"] = None + +class TagSetTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class SecurityProfileSearchSummaryTypeDef(BaseModel): + Id: Optional[str] = None + OrganizationResourceId: Optional[str] = None + Arn: Optional[str] = None + SecurityProfileName: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class SearchVocabulariesRequestRequestTypeDef(BaseModel): + InstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + State: Optional[VocabularyStateType] = None + NameStartsWith: Optional[str] = None + LanguageCode: Optional[VocabularyLanguageCodeType] = None + +class VocabularySummaryTypeDef(BaseModel): + Name: str + Id: str + Arn: str + LanguageCode: VocabularyLanguageCodeType + State: VocabularyStateType + LastModifiedTime: datetime + FailureReason: Optional[str] = None + +class SearchableContactAttributesCriteriaTypeDef(BaseModel): + Key: str + Values: Sequence[str] + +class SignInDistributionTypeDef(BaseModel): + Region: str + Enabled: bool + +class UploadUrlMetadataTypeDef(BaseModel): + Url: Optional[str] = None + UrlExpiry: Optional[str] = None + HeadersToInclude: Optional[Dict[str, str]] = None + +class StartContactEvaluationRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + EvaluationFormId: str + ClientToken: Optional[str] = None + +class VoiceRecordingConfigurationTypeDef(BaseModel): + VoiceRecordingTrack: Optional[VoiceRecordingTrackType] = None + +class StopContactRecordingRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + InitialContactId: str + +class StopContactStreamingRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + StreamingId: str + +class SuspendContactRecordingRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + InitialContactId: str + +class TagContactRequestRequestTypeDef(BaseModel): + ContactId: str + InstanceId: str + Tags: Mapping[str, str] + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TranscriptCriteriaTypeDef(BaseModel): + ParticipantRole: ParticipantRoleType + SearchText: Sequence[str] + MatchType: SearchContactsMatchTypeType + +class TransferContactRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + ContactFlowId: str + QueueId: Optional[str] = None + UserId: Optional[str] = None + ClientToken: Optional[str] = None + +class UntagContactRequestRequestTypeDef(BaseModel): + ContactId: str + InstanceId: str + TagKeys: Sequence[str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAgentStatusRequestRequestTypeDef(BaseModel): + InstanceId: str + AgentStatusId: str + Name: Optional[str] = None + Description: Optional[str] = None + State: Optional[AgentStatusStateType] = None + DisplayOrder: Optional[int] = None + ResetOrderNumber: Optional[bool] = None + +class UpdateAuthenticationProfileRequestRequestTypeDef(BaseModel): + AuthenticationProfileId: str + InstanceId: str + Name: Optional[str] = None + Description: Optional[str] = None + AllowedIps: Optional[Sequence[str]] = None + BlockedIps: Optional[Sequence[str]] = None + PeriodicSessionDuration: Optional[int] = None + +class UpdateContactAttributesRequestRequestTypeDef(BaseModel): + InitialContactId: str + InstanceId: str + Attributes: Mapping[str, str] + +class UpdateContactFlowContentRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowId: str + Content: str + +class UpdateContactFlowMetadataRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowId: str + Name: Optional[str] = None + Description: Optional[str] = None + ContactFlowState: Optional[ContactFlowStateType] = None + +class UpdateContactFlowModuleContentRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowModuleId: str + Content: str + +class UpdateContactFlowModuleMetadataRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowModuleId: str + Name: Optional[str] = None + Description: Optional[str] = None + State: Optional[ContactFlowModuleStateType] = None + +class UpdateContactFlowNameRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateContactRoutingDataRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + QueueTimeAdjustmentSeconds: Optional[int] = None + QueuePriority: Optional[int] = None + +class UpdateInstanceAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + AttributeType: InstanceAttributeTypeType + Value: str + +class UpdatePhoneNumberMetadataRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + PhoneNumberDescription: Optional[str] = None + ClientToken: Optional[str] = None + +class UpdatePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + ClientToken: Optional[str] = None + +class UpdatePromptRequestRequestTypeDef(BaseModel): + InstanceId: str + PromptId: str + Name: Optional[str] = None + Description: Optional[str] = None + S3Uri: Optional[str] = None + +class UpdateQueueHoursOfOperationRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + HoursOfOperationId: str + +class UpdateQueueMaxContactsRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + MaxContacts: Optional[int] = None + +class UpdateQueueNameRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateQueueStatusRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + Status: QueueStatusType + +class UpdateQuickConnectNameRequestRequestTypeDef(BaseModel): + InstanceId: str + QuickConnectId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateRoutingProfileAgentAvailabilityTimerRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + AgentAvailabilityTimer: AgentAvailabilityTimerType + +class UpdateRoutingProfileDefaultOutboundQueueRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + DefaultOutboundQueueId: str + +class UpdateRoutingProfileNameRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateUserHierarchyGroupNameRequestRequestTypeDef(BaseModel): + Name: str + HierarchyGroupId: str + InstanceId: str + +class UpdateUserHierarchyRequestRequestTypeDef(BaseModel): + UserId: str + InstanceId: str + HierarchyGroupId: Optional[str] = None + +class UpdateUserRoutingProfileRequestRequestTypeDef(BaseModel): + RoutingProfileId: str + UserId: str + InstanceId: str + +class UpdateUserSecurityProfilesRequestRequestTypeDef(BaseModel): + SecurityProfileIds: Sequence[str] + UserId: str + InstanceId: str + +class UpdateViewMetadataRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UserReferenceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + +class UserIdentityInfoLiteTypeDef(BaseModel): + FirstName: Optional[str] = None + LastName: Optional[str] = None + +class ViewContentTypeDef(BaseModel): + InputSchema: Optional[str] = None + Template: Optional[str] = None + Actions: Optional[List[str]] = None + +class RuleSummaryTypeDef(BaseModel): + Name: str + RuleId: str + RuleArn: str + EventSourceName: EventSourceNameType + PublishStatus: RulePublishStatusType + ActionSummaries: List[ActionSummaryTypeDef] + CreatedTime: datetime + LastUpdatedTime: datetime + +class ActivateEvaluationFormResponseTypeDef(BaseModel): + EvaluationFormId: str + EvaluationFormArn: str + EvaluationFormVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateAnalyticsDataSetResponseTypeDef(BaseModel): + DataSetId: str + TargetAccountId: str + ResourceShareId: str + ResourceShareArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateInstanceStorageConfigResponseTypeDef(BaseModel): + AssociationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateSecurityKeyResponseTypeDef(BaseModel): + AssociationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClaimPhoneNumberResponseTypeDef(BaseModel): + PhoneNumberId: str + PhoneNumberArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAgentStatusResponseTypeDef(BaseModel): + AgentStatusARN: str + AgentStatusId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContactFlowModuleResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContactFlowResponseTypeDef(BaseModel): + ContactFlowId: str + ContactFlowArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEvaluationFormResponseTypeDef(BaseModel): + EvaluationFormId: str + EvaluationFormArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHoursOfOperationResponseTypeDef(BaseModel): + HoursOfOperationId: str + HoursOfOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIntegrationAssociationResponseTypeDef(BaseModel): + IntegrationAssociationId: str + IntegrationAssociationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePersistentContactAssociationResponseTypeDef(BaseModel): + ContinuedFromContactId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePromptResponseTypeDef(BaseModel): + PromptARN: str + PromptId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQueueResponseTypeDef(BaseModel): + QueueArn: str + QueueId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQuickConnectResponseTypeDef(BaseModel): + QuickConnectARN: str + QuickConnectId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRoutingProfileResponseTypeDef(BaseModel): + RoutingProfileArn: str + RoutingProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleResponseTypeDef(BaseModel): + RuleArn: str + RuleId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityProfileResponseTypeDef(BaseModel): + SecurityProfileId: str + SecurityProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTaskTemplateResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrafficDistributionGroupResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUseCaseResponseTypeDef(BaseModel): + UseCaseId: str + UseCaseArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserHierarchyGroupResponseTypeDef(BaseModel): + HierarchyGroupId: str + HierarchyGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + UserId: str + UserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVocabularyResponseTypeDef(BaseModel): + VocabularyArn: str + VocabularyId: str + State: VocabularyStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeactivateEvaluationFormResponseTypeDef(BaseModel): + EvaluationFormId: str + EvaluationFormArn: str + EvaluationFormVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVocabularyResponseTypeDef(BaseModel): + VocabularyArn: str + VocabularyId: str + State: VocabularyStateType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetContactAttributesResponseTypeDef(BaseModel): + Attributes: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetFlowAssociationResponseTypeDef(BaseModel): + ResourceId: str + FlowId: str + ResourceType: Literal["SMS_PHONE_NUMBER"] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPromptFileResponseTypeDef(BaseModel): + PromptPresignedUrl: str + LastModifiedTime: datetime + LastModifiedRegion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportPhoneNumberResponseTypeDef(BaseModel): + PhoneNumberId: str + PhoneNumberArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApprovedOriginsResponseTypeDef(BaseModel): + Origins: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListLambdaFunctionsResponseTypeDef(BaseModel): + LambdaFunctions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSecurityProfilePermissionsResponseTypeDef(BaseModel): + Permissions: List[str] + LastModifiedTime: datetime + LastModifiedRegion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class MonitorContactResponseTypeDef(BaseModel): + ContactId: str + ContactArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicateInstanceResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendChatIntegrationEventResponseTypeDef(BaseModel): + InitialContactId: str + NewChatCreated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class StartChatContactResponseTypeDef(BaseModel): + ContactId: str + ParticipantId: str + ParticipantToken: str + ContinuedFromContactId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartContactEvaluationResponseTypeDef(BaseModel): + EvaluationId: str + EvaluationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartContactStreamingResponseTypeDef(BaseModel): + StreamingId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartOutboundVoiceContactResponseTypeDef(BaseModel): + ContactId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartTaskContactResponseTypeDef(BaseModel): + ContactId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitContactEvaluationResponseTypeDef(BaseModel): + EvaluationId: str + EvaluationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class TransferContactResponseTypeDef(BaseModel): + ContactId: str + ContactArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContactEvaluationResponseTypeDef(BaseModel): + EvaluationId: str + EvaluationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEvaluationFormResponseTypeDef(BaseModel): + EvaluationFormId: str + EvaluationFormArn: str + EvaluationFormVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePhoneNumberResponseTypeDef(BaseModel): + PhoneNumberId: str + PhoneNumberArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePromptResponseTypeDef(BaseModel): + PromptARN: str + PromptId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AgentConfigOutputTypeDef(BaseModel): + Distributions: List[DistributionTypeDef] + +class AgentConfigTypeDef(BaseModel): + Distributions: Sequence[DistributionTypeDef] + +class TelephonyConfigOutputTypeDef(BaseModel): + Distributions: List[DistributionTypeDef] + +class TelephonyConfigTypeDef(BaseModel): + Distributions: Sequence[DistributionTypeDef] + +class AgentContactReferenceTypeDef(BaseModel): + ContactId: Optional[str] = None + Channel: Optional[ChannelType] = None + InitiationMethod: Optional[ContactInitiationMethodType] = None + AgentContactState: Optional[ContactStateType] = None + StateStartTimestamp: Optional[datetime] = None + ConnectedToAgentTimestamp: Optional[datetime] = None + Queue: Optional[QueueReferenceTypeDef] = None + +class HierarchyGroupsTypeDef(BaseModel): + Level1: Optional[AgentHierarchyGroupTypeDef] = None + Level2: Optional[AgentHierarchyGroupTypeDef] = None + Level3: Optional[AgentHierarchyGroupTypeDef] = None + Level4: Optional[AgentHierarchyGroupTypeDef] = None + Level5: Optional[AgentHierarchyGroupTypeDef] = None + +class AllowedCapabilitiesTypeDef(BaseModel): + Customer: Optional[ParticipantCapabilitiesTypeDef] = None + Agent: Optional[ParticipantCapabilitiesTypeDef] = None + +class CustomerTypeDef(BaseModel): + DeviceInfo: Optional[DeviceInfoTypeDef] = None + Capabilities: Optional[ParticipantCapabilitiesTypeDef] = None + +class AgentQualityMetricsTypeDef(BaseModel): + Audio: Optional[AudioQualityMetricsInfoTypeDef] = None + +class CustomerQualityMetricsTypeDef(BaseModel): + Audio: Optional[AudioQualityMetricsInfoTypeDef] = None + +class ListAgentStatusResponseTypeDef(BaseModel): + AgentStatusSummaryList: List[AgentStatusSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeAgentStatusResponseTypeDef(BaseModel): + AgentStatus: AgentStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MatchCriteriaTypeDef(BaseModel): + AgentsCriteria: Optional[AgentsCriteriaTypeDef] = None + +class ListAnalyticsDataAssociationsResponseTypeDef(BaseModel): + Results: List[AnalyticsDataAssociationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSecurityProfileApplicationsResponseTypeDef(BaseModel): + Applications: List[ApplicationOutputTypeDef] + LastModifiedTime: datetime + LastModifiedRegion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateLexBotRequestRequestTypeDef(BaseModel): + InstanceId: str + LexBot: LexBotTypeDef + +class ListLexBotsResponseTypeDef(BaseModel): + LexBots: List[LexBotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateBotRequestRequestTypeDef(BaseModel): + InstanceId: str + LexBot: Optional[LexBotTypeDef] = None + LexV2Bot: Optional[LexV2BotTypeDef] = None + +class DisassociateBotRequestRequestTypeDef(BaseModel): + InstanceId: str + LexBot: Optional[LexBotTypeDef] = None + LexV2Bot: Optional[LexV2BotTypeDef] = None + +class LexBotConfigTypeDef(BaseModel): + LexBot: Optional[LexBotTypeDef] = None + LexV2Bot: Optional[LexV2BotTypeDef] = None + +class AssociateUserProficienciesRequestRequestTypeDef(BaseModel): + InstanceId: str + UserId: str + UserProficiencies: Sequence[UserProficiencyTypeDef] + +class ListUserProficienciesResponseTypeDef(BaseModel): + UserProficiencyList: List[UserProficiencyTypeDef] + LastModifiedTime: datetime + LastModifiedRegion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateUserProficienciesRequestRequestTypeDef(BaseModel): + InstanceId: str + UserId: str + UserProficiencies: Sequence[UserProficiencyTypeDef] + +class AttachedFileTypeDef(BaseModel): + CreationTime: str + FileArn: str + FileId: str + FileName: str + FileSizeInBytes: int + FileStatus: FileStatusTypeType + CreatedBy: Optional[CreatedByInfoTypeDef] = None + FileUseCaseType: Optional[Literal["ATTACHMENT"]] = None + AssociatedResourceArn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class StartAttachedFileUploadRequestRequestTypeDef(BaseModel): + InstanceId: str + FileName: str + FileSizeInBytes: int + FileUseCaseType: Literal["ATTACHMENT"] + AssociatedResourceArn: str + ClientToken: Optional[str] = None + UrlExpiryInSeconds: Optional[int] = None + CreatedBy: Optional[CreatedByInfoTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class AttributeAndConditionTypeDef(BaseModel): + TagConditions: Optional[Sequence[TagConditionTypeDef]] = None + HierarchyGroupCondition: Optional[HierarchyGroupConditionTypeDef] = None + +class ControlPlaneTagFilterTypeDef(BaseModel): + OrConditions: Optional[Sequence[Sequence[TagConditionTypeDef]]] = None + AndConditions: Optional[Sequence[TagConditionTypeDef]] = None + TagCondition: Optional[TagConditionTypeDef] = None + +class DescribeInstanceAttributeResponseTypeDef(BaseModel): + Attribute: AttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceAttributesResponseTypeDef(BaseModel): + Attributes: List[AttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MeetingFeaturesConfigurationTypeDef(BaseModel): + Audio: Optional[AudioFeaturesTypeDef] = None + +class ListAuthenticationProfilesResponseTypeDef(BaseModel): + AuthenticationProfileSummaryList: List[AuthenticationProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeAuthenticationProfileResponseTypeDef(BaseModel): + AuthenticationProfile: AuthenticationProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchAvailablePhoneNumbersResponseTypeDef(BaseModel): + AvailableNumbersList: List[AvailableNumberSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchAssociateAnalyticsDataSetResponseTypeDef(BaseModel): + Created: List[AnalyticsDataAssociationResultTypeDef] + Errors: List[ErrorResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateAnalyticsDataSetResponseTypeDef(BaseModel): + Deleted: List[str] + Errors: List[ErrorResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetFlowAssociationResponseTypeDef(BaseModel): + FlowAssociationSummaryList: List[FlowAssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFlowAssociationsResponseTypeDef(BaseModel): + FlowAssociationSummaryList: List[FlowAssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchPutContactResponseTypeDef(BaseModel): + SuccessfulRequestList: List[SuccessfulRequestTypeDef] + FailedRequestList: List[FailedRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartContactStreamingRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + ChatStreamingConfiguration: ChatStreamingConfigurationTypeDef + ClientToken: str + +class ClaimedPhoneNumberSummaryTypeDef(BaseModel): + PhoneNumberId: Optional[str] = None + PhoneNumberArn: Optional[str] = None + PhoneNumber: Optional[str] = None + PhoneNumberCountryCode: Optional[PhoneNumberCountryCodeType] = None + PhoneNumberType: Optional[PhoneNumberTypeType] = None + PhoneNumberDescription: Optional[str] = None + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + PhoneNumberStatus: Optional[PhoneNumberStatusTypeDef] = None + SourcePhoneNumberArn: Optional[str] = None + +class ContactDataRequestTypeDef(BaseModel): + SystemEndpoint: Optional[EndpointTypeDef] = None + CustomerEndpoint: Optional[EndpointTypeDef] = None + RequestIdentifier: Optional[str] = None + QueueId: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + Campaign: Optional[CampaignTypeDef] = None + +class UserDataFiltersTypeDef(BaseModel): + Queues: Optional[Sequence[str]] = None + ContactFilter: Optional[ContactFilterTypeDef] = None + RoutingProfiles: Optional[Sequence[str]] = None + Agents: Optional[Sequence[str]] = None + UserHierarchyGroups: Optional[Sequence[str]] = None + +class ContactFlowModuleSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class ContactFlowSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + TypeCondition: Optional[ContactFlowTypeType] = None + StateCondition: Optional[ContactFlowStateType] = None + StatusCondition: Optional[ContactFlowStatusType] = None + +class HoursOfOperationSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class PredefinedAttributeSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class PromptSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class QueueSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + QueueTypeCondition: Optional[Literal["STANDARD"]] = None + +class QuickConnectSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class RoutingProfileSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class SecurityProfileSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + +class UserSearchCriteriaTypeDef(BaseModel): + OrConditions: Optional[Sequence[Dict[str, Any]]] = None + AndConditions: Optional[Sequence[Dict[str, Any]]] = None + StringCondition: Optional[StringConditionTypeDef] = None + HierarchyGroupCondition: Optional[HierarchyGroupConditionTypeDef] = None + +class ListContactFlowModulesResponseTypeDef(BaseModel): + ContactFlowModulesSummaryList: List[ContactFlowModuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeContactFlowModuleResponseTypeDef(BaseModel): + ContactFlowModule: ContactFlowModuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchContactFlowModulesResponseTypeDef(BaseModel): + ContactFlowModules: List[ContactFlowModuleTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListContactFlowsResponseTypeDef(BaseModel): + ContactFlowSummaryList: List[ContactFlowSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeContactFlowResponseTypeDef(BaseModel): + ContactFlow: ContactFlowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchContactFlowsResponseTypeDef(BaseModel): + ContactFlows: List[ContactFlowTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ContactSearchSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + InitialContactId: Optional[str] = None + PreviousContactId: Optional[str] = None + InitiationMethod: Optional[ContactInitiationMethodType] = None + Channel: Optional[ChannelType] = None + QueueInfo: Optional[ContactSearchSummaryQueueInfoTypeDef] = None + AgentInfo: Optional[ContactSearchSummaryAgentInfoTypeDef] = None + InitiationTimestamp: Optional[datetime] = None + DisconnectTimestamp: Optional[datetime] = None + ScheduledTimestamp: Optional[datetime] = None + +class CreateEvaluationFormRequestRequestTypeDef(BaseModel): + InstanceId: str + Title: str + Items: Sequence[EvaluationFormItemUnionTypeDef] + Description: Optional[str] = None + ScoringStrategy: Optional[EvaluationFormScoringStrategyTypeDef] = None + ClientToken: Optional[str] = None + +class EvaluationFormContentTypeDef(BaseModel): + EvaluationFormVersion: int + EvaluationFormId: str + EvaluationFormArn: str + Title: str + Items: List["EvaluationFormItemOutputTypeDef"] + Description: Optional[str] = None + ScoringStrategy: Optional[EvaluationFormScoringStrategyTypeDef] = None + +class EvaluationFormTypeDef(BaseModel): + EvaluationFormId: str + EvaluationFormVersion: int + Locked: bool + EvaluationFormArn: str + Title: str + Status: EvaluationFormVersionStatusType + Items: List["EvaluationFormItemOutputTypeDef"] + CreatedTime: datetime + CreatedBy: str + LastModifiedTime: datetime + LastModifiedBy: str + Description: Optional[str] = None + ScoringStrategy: Optional[EvaluationFormScoringStrategyTypeDef] = None + Tags: Optional[Dict[str, str]] = None + +class UpdateEvaluationFormRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + EvaluationFormVersion: int + Title: str + Items: Sequence[EvaluationFormItemUnionTypeDef] + CreateNewVersion: Optional[bool] = None + Description: Optional[str] = None + ScoringStrategy: Optional[EvaluationFormScoringStrategyTypeDef] = None + ClientToken: Optional[str] = None + +class CreateParticipantRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + ParticipantDetails: ParticipantDetailsToAddTypeDef + ClientToken: Optional[str] = None + +class CreateParticipantResponseTypeDef(BaseModel): + ParticipantCredentials: ParticipantTokenCredentialsTypeDef + ParticipantId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePredefinedAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + Values: PredefinedAttributeValuesTypeDef + +class UpdatePredefinedAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + Values: Optional[PredefinedAttributeValuesTypeDef] = None + +class CreateQueueRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + HoursOfOperationId: str + Description: Optional[str] = None + OutboundCallerConfig: Optional[OutboundCallerConfigTypeDef] = None + MaxContacts: Optional[int] = None + QuickConnectIds: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class QueueTypeDef(BaseModel): + Name: Optional[str] = None + QueueArn: Optional[str] = None + QueueId: Optional[str] = None + Description: Optional[str] = None + OutboundCallerConfig: Optional[OutboundCallerConfigTypeDef] = None + HoursOfOperationId: Optional[str] = None + MaxContacts: Optional[int] = None + Status: Optional[QueueStatusType] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class UpdateQueueOutboundCallerConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + QueueId: str + OutboundCallerConfig: OutboundCallerConfigTypeDef + +class UpdateUserIdentityInfoRequestRequestTypeDef(BaseModel): + IdentityInfo: UserIdentityInfoTypeDef + UserId: str + InstanceId: str + +class CreateUserRequestRequestTypeDef(BaseModel): + Username: str + PhoneConfig: UserPhoneConfigTypeDef + SecurityProfileIds: Sequence[str] + RoutingProfileId: str + InstanceId: str + Password: Optional[str] = None + IdentityInfo: Optional[UserIdentityInfoTypeDef] = None + DirectoryUserId: Optional[str] = None + HierarchyGroupId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateUserPhoneConfigRequestRequestTypeDef(BaseModel): + PhoneConfig: UserPhoneConfigTypeDef + UserId: str + InstanceId: str + +class UserTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Username: Optional[str] = None + IdentityInfo: Optional[UserIdentityInfoTypeDef] = None + PhoneConfig: Optional[UserPhoneConfigTypeDef] = None + DirectoryUserId: Optional[str] = None + SecurityProfileIds: Optional[List[str]] = None + RoutingProfileId: Optional[str] = None + HierarchyGroupId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class CreateViewRequestRequestTypeDef(BaseModel): + InstanceId: str + Status: ViewStatusType + Content: ViewInputContentTypeDef + Name: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateViewContentRequestRequestTypeDef(BaseModel): + InstanceId: str + ViewId: str + Status: ViewStatusType + Content: ViewInputContentTypeDef + +class GetFederationTokenResponseTypeDef(BaseModel): + Credentials: CredentialsTypeDef + SignInUrl: str + UserArn: str + UserId: str + ResponseMetadata: ResponseMetadataTypeDef + +class MediaConcurrencyTypeDef(BaseModel): + Channel: ChannelType + Concurrency: int + CrossChannelBehavior: Optional[CrossChannelBehaviorTypeDef] = None + +class CurrentMetricDataTypeDef(BaseModel): + Metric: Optional[CurrentMetricTypeDef] = None + Value: Optional[float] = None + +class ListDefaultVocabulariesResponseTypeDef(BaseModel): + DefaultVocabularyList: List[DefaultVocabularyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribePromptResponseTypeDef(BaseModel): + Prompt: PromptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchPromptsResponseTypeDef(BaseModel): + Prompts: List[PromptTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSecurityProfileResponseTypeDef(BaseModel): + SecurityProfile: SecurityProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrafficDistributionGroupResponseTypeDef(BaseModel): + TrafficDistributionGroup: TrafficDistributionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVocabularyResponseTypeDef(BaseModel): + Vocabulary: VocabularyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DimensionsTypeDef(BaseModel): + Queue: Optional[QueueReferenceTypeDef] = None + Channel: Optional[ChannelType] = None + RoutingProfile: Optional[RoutingProfileReferenceTypeDef] = None + RoutingStepExpression: Optional[str] = None + +class DisassociateRoutingProfileQueuesRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + QueueReferences: Sequence[RoutingProfileQueueReferenceTypeDef] + +class RoutingProfileQueueConfigTypeDef(BaseModel): + QueueReference: RoutingProfileQueueReferenceTypeDef + Priority: int + Delay: int + +class DisassociateUserProficienciesRequestRequestTypeDef(BaseModel): + InstanceId: str + UserId: str + UserProficiencies: Sequence[UserProficiencyDisassociateTypeDef] + +class StopContactRequestRequestTypeDef(BaseModel): + ContactId: str + InstanceId: str + DisconnectReason: Optional[DisconnectReasonTypeDef] = None + +class GetAttachedFileResponseTypeDef(BaseModel): + FileArn: str + FileId: str + CreationTime: str + FileStatus: FileStatusTypeType + FileName: str + FileSizeInBytes: int + AssociatedResourceArn: str + FileUseCaseType: Literal["ATTACHMENT"] + CreatedBy: CreatedByInfoTypeDef + DownloadUrlMetadata: DownloadUrlMetadataTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class KinesisVideoStreamConfigTypeDef(BaseModel): + Prefix: str + RetentionPeriodHours: int + EncryptionConfig: EncryptionConfigTypeDef + +class S3ConfigTypeDef(BaseModel): + BucketName: str + BucketPrefix: str + EncryptionConfig: Optional[EncryptionConfigTypeDef] = None + +class EvaluationAnswerInputTypeDef(BaseModel): + Value: Optional[EvaluationAnswerDataTypeDef] = None + +class EvaluationAnswerOutputTypeDef(BaseModel): + Value: Optional[EvaluationAnswerDataTypeDef] = None + SystemSuggestedValue: Optional[EvaluationAnswerDataTypeDef] = None + +class EvaluationFormNumericQuestionAutomationTypeDef(BaseModel): + PropertyValue: Optional[NumericQuestionPropertyValueAutomationTypeDef] = None + +class EvaluationFormSingleSelectQuestionAutomationOptionTypeDef(BaseModel): + RuleCategory: Optional[SingleSelectQuestionRuleCategoryAutomationTypeDef] = None + +class ListEvaluationFormsResponseTypeDef(BaseModel): + EvaluationFormSummaryList: List[EvaluationFormSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEvaluationFormVersionsResponseTypeDef(BaseModel): + EvaluationFormVersionSummaryList: List[EvaluationFormVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EvaluationMetadataTypeDef(BaseModel): + ContactId: str + EvaluatorArn: str + ContactAgentId: Optional[str] = None + Score: Optional[EvaluationScoreTypeDef] = None + +class EvaluationSummaryTypeDef(BaseModel): + EvaluationId: str + EvaluationArn: str + EvaluationFormTitle: str + EvaluationFormId: str + Status: EvaluationStatusType + EvaluatorArn: str + CreatedTime: datetime + LastModifiedTime: datetime + Score: Optional[EvaluationScoreTypeDef] = None + +class StepTypeDef(BaseModel): + Expiry: Optional[ExpiryTypeDef] = None + Expression: Optional["ExpressionTypeDef"] = None + Status: Optional[RoutingCriteriaStepStatusType] = None + +class FieldValueOutputTypeDef(BaseModel): + Id: str + Value: FieldValueUnionOutputTypeDef + +class FieldValueTypeDef(BaseModel): + Id: str + Value: FieldValueUnionTypeDef + +class GetCurrentMetricDataRequestRequestTypeDef(BaseModel): + InstanceId: str + Filters: FiltersTypeDef + CurrentMetrics: Sequence[CurrentMetricTypeDef] + Groupings: Optional[Sequence[GroupingType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortCriteria: Optional[Sequence[CurrentMetricSortCriteriaTypeDef]] = None + +class ListAgentStatusRequestListAgentStatusesPaginateTypeDef(BaseModel): + InstanceId: str + AgentStatusTypes: Optional[Sequence[AgentStatusTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApprovedOriginsRequestListApprovedOriginsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuthenticationProfilesRequestListAuthenticationProfilesPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBotsRequestListBotsPaginateTypeDef(BaseModel): + InstanceId: str + LexVersion: LexVersionType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContactEvaluationsRequestListContactEvaluationsPaginateTypeDef(BaseModel): + InstanceId: str + ContactId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContactFlowModulesRequestListContactFlowModulesPaginateTypeDef(BaseModel): + InstanceId: str + ContactFlowModuleState: Optional[ContactFlowModuleStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContactFlowsRequestListContactFlowsPaginateTypeDef(BaseModel): + InstanceId: str + ContactFlowTypes: Optional[Sequence[ContactFlowTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContactReferencesRequestListContactReferencesPaginateTypeDef(BaseModel): + InstanceId: str + ContactId: str + ReferenceTypes: Sequence[ReferenceTypeType] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDefaultVocabulariesRequestListDefaultVocabulariesPaginateTypeDef(BaseModel): + InstanceId: str + LanguageCode: Optional[VocabularyLanguageCodeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEvaluationFormVersionsRequestListEvaluationFormVersionsPaginateTypeDef(BaseModel): + InstanceId: str + EvaluationFormId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEvaluationFormsRequestListEvaluationFormsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowAssociationsRequestListFlowAssociationsPaginateTypeDef(BaseModel): + InstanceId: str + ResourceType: Optional[Literal["VOICE_PHONE_NUMBER"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHoursOfOperationsRequestListHoursOfOperationsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceAttributesRequestListInstanceAttributesPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceStorageConfigsRequestListInstanceStorageConfigsPaginateTypeDef(BaseModel): + InstanceId: str + ResourceType: InstanceStorageResourceTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstancesRequestListInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIntegrationAssociationsRequestListIntegrationAssociationsPaginateTypeDef(BaseModel): + InstanceId: str + IntegrationType: Optional[IntegrationTypeType] = None + IntegrationArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLambdaFunctionsRequestListLambdaFunctionsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLexBotsRequestListLexBotsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPhoneNumbersRequestListPhoneNumbersPaginateTypeDef(BaseModel): + InstanceId: str + PhoneNumberTypes: Optional[Sequence[PhoneNumberTypeType]] = None + PhoneNumberCountryCodes: Optional[Sequence[PhoneNumberCountryCodeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPhoneNumbersV2RequestListPhoneNumbersV2PaginateTypeDef(BaseModel): + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + PhoneNumberCountryCodes: Optional[Sequence[PhoneNumberCountryCodeType]] = None + PhoneNumberTypes: Optional[Sequence[PhoneNumberTypeType]] = None + PhoneNumberPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPredefinedAttributesRequestListPredefinedAttributesPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPromptsRequestListPromptsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueueQuickConnectsRequestListQueueQuickConnectsPaginateTypeDef(BaseModel): + InstanceId: str + QueueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueuesRequestListQueuesPaginateTypeDef(BaseModel): + InstanceId: str + QueueTypes: Optional[Sequence[QueueTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQuickConnectsRequestListQuickConnectsPaginateTypeDef(BaseModel): + InstanceId: str + QuickConnectTypes: Optional[Sequence[QuickConnectTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoutingProfileQueuesRequestListRoutingProfileQueuesPaginateTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoutingProfilesRequestListRoutingProfilesPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesRequestListRulesPaginateTypeDef(BaseModel): + InstanceId: str + PublishStatus: Optional[RulePublishStatusType] = None + EventSourceName: Optional[EventSourceNameType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityKeysRequestListSecurityKeysPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityProfileApplicationsRequestListSecurityProfileApplicationsPaginateTypeDef(BaseModel): + SecurityProfileId: str + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityProfilePermissionsRequestListSecurityProfilePermissionsPaginateTypeDef(BaseModel): + SecurityProfileId: str + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityProfilesRequestListSecurityProfilesPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTaskTemplatesRequestListTaskTemplatesPaginateTypeDef(BaseModel): + InstanceId: str + Status: Optional[TaskTemplateStatusType] = None + Name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrafficDistributionGroupsRequestListTrafficDistributionGroupsPaginateTypeDef(BaseModel): + InstanceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUseCasesRequestListUseCasesPaginateTypeDef(BaseModel): + InstanceId: str + IntegrationAssociationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserHierarchyGroupsRequestListUserHierarchyGroupsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserProficienciesRequestListUserProficienciesPaginateTypeDef(BaseModel): + InstanceId: str + UserId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListViewVersionsRequestListViewVersionsPaginateTypeDef(BaseModel): + InstanceId: str + ViewId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListViewsRequestListViewsPaginateTypeDef(BaseModel): + InstanceId: str + Type: Optional[ViewTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchAvailablePhoneNumbersRequestSearchAvailablePhoneNumbersPaginateTypeDef(BaseModel): + PhoneNumberCountryCode: PhoneNumberCountryCodeType + PhoneNumberType: PhoneNumberTypeType + TargetArn: Optional[str] = None + InstanceId: Optional[str] = None + PhoneNumberPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchVocabulariesRequestSearchVocabulariesPaginateTypeDef(BaseModel): + InstanceId: str + State: Optional[VocabularyStateType] = None + NameStartsWith: Optional[str] = None + LanguageCode: Optional[VocabularyLanguageCodeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchContactsTimeRangeTypeDef(BaseModel): + Type: SearchContactsTimeRangeTypeType + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class UpdateContactScheduleRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + ScheduledTime: TimestampTypeDef + +class HierarchyPathReferenceTypeDef(BaseModel): + LevelOne: Optional[HierarchyGroupSummaryReferenceTypeDef] = None + LevelTwo: Optional[HierarchyGroupSummaryReferenceTypeDef] = None + LevelThree: Optional[HierarchyGroupSummaryReferenceTypeDef] = None + LevelFour: Optional[HierarchyGroupSummaryReferenceTypeDef] = None + LevelFive: Optional[HierarchyGroupSummaryReferenceTypeDef] = None + +class HierarchyPathTypeDef(BaseModel): + LevelOne: Optional[HierarchyGroupSummaryTypeDef] = None + LevelTwo: Optional[HierarchyGroupSummaryTypeDef] = None + LevelThree: Optional[HierarchyGroupSummaryTypeDef] = None + LevelFour: Optional[HierarchyGroupSummaryTypeDef] = None + LevelFive: Optional[HierarchyGroupSummaryTypeDef] = None + +class ListUserHierarchyGroupsResponseTypeDef(BaseModel): + UserHierarchyGroupSummaryList: List[HierarchyGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class HierarchyStructureTypeDef(BaseModel): + LevelOne: Optional[HierarchyLevelTypeDef] = None + LevelTwo: Optional[HierarchyLevelTypeDef] = None + LevelThree: Optional[HierarchyLevelTypeDef] = None + LevelFour: Optional[HierarchyLevelTypeDef] = None + LevelFive: Optional[HierarchyLevelTypeDef] = None + +class HierarchyStructureUpdateTypeDef(BaseModel): + LevelOne: Optional[HierarchyLevelUpdateTypeDef] = None + LevelTwo: Optional[HierarchyLevelUpdateTypeDef] = None + LevelThree: Optional[HierarchyLevelUpdateTypeDef] = None + LevelFour: Optional[HierarchyLevelUpdateTypeDef] = None + LevelFive: Optional[HierarchyLevelUpdateTypeDef] = None + +class HistoricalMetricTypeDef(BaseModel): + Name: Optional[HistoricalMetricNameType] = None + Threshold: Optional[ThresholdTypeDef] = None + Statistic: Optional[StatisticType] = None + Unit: Optional[UnitType] = None + +class HoursOfOperationConfigTypeDef(BaseModel): + Day: HoursOfOperationDaysType + StartTime: HoursOfOperationTimeSliceTypeDef + EndTime: HoursOfOperationTimeSliceTypeDef + +class ListHoursOfOperationsResponseTypeDef(BaseModel): + HoursOfOperationSummaryList: List[HoursOfOperationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + IdentityManagementType: Optional[DirectoryTypeType] = None + InstanceAlias: Optional[str] = None + CreatedTime: Optional[datetime] = None + ServiceRole: Optional[str] = None + InstanceStatus: Optional[InstanceStatusType] = None + StatusReason: Optional[InstanceStatusReasonTypeDef] = None + InboundCallsEnabled: Optional[bool] = None + OutboundCallsEnabled: Optional[bool] = None + InstanceAccessUrl: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ListInstancesResponseTypeDef(BaseModel): + InstanceSummaryList: List[InstanceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIntegrationAssociationsResponseTypeDef(BaseModel): + IntegrationAssociationSummaryList: List[IntegrationAssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InvisibleFieldInfoTypeDef(BaseModel): + Id: Optional[TaskTemplateFieldIdentifierTypeDef] = None + +class ReadOnlyFieldInfoTypeDef(BaseModel): + Id: Optional[TaskTemplateFieldIdentifierTypeDef] = None + +class RequiredFieldInfoTypeDef(BaseModel): + Id: Optional[TaskTemplateFieldIdentifierTypeDef] = None + +class TaskTemplateDefaultFieldValueTypeDef(BaseModel): + Id: Optional[TaskTemplateFieldIdentifierTypeDef] = None + DefaultValue: Optional[str] = None + +class TaskTemplateFieldOutputTypeDef(BaseModel): + Id: TaskTemplateFieldIdentifierTypeDef + Description: Optional[str] = None + Type: Optional[TaskTemplateFieldTypeType] = None + SingleSelectOptions: Optional[List[str]] = None + +class TaskTemplateFieldTypeDef(BaseModel): + Id: TaskTemplateFieldIdentifierTypeDef + Description: Optional[str] = None + Type: Optional[TaskTemplateFieldTypeType] = None + SingleSelectOptions: Optional[Sequence[str]] = None + +class ListPhoneNumbersResponseTypeDef(BaseModel): + PhoneNumberSummaryList: List[PhoneNumberSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPhoneNumbersV2ResponseTypeDef(BaseModel): + ListPhoneNumbersSummaryList: List[ListPhoneNumbersSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPredefinedAttributesResponseTypeDef(BaseModel): + PredefinedAttributeSummaryList: List[PredefinedAttributeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPromptsResponseTypeDef(BaseModel): + PromptSummaryList: List[PromptSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListQueueQuickConnectsResponseTypeDef(BaseModel): + QuickConnectSummaryList: List[QuickConnectSummaryTypeDef] + LastModifiedTime: datetime + LastModifiedRegion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListQuickConnectsResponseTypeDef(BaseModel): + QuickConnectSummaryList: List[QuickConnectSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListQueuesResponseTypeDef(BaseModel): + QueueSummaryList: List[QueueSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRoutingProfileQueuesResponseTypeDef(BaseModel): + RoutingProfileQueueConfigSummaryList: List[RoutingProfileQueueConfigSummaryTypeDef] + LastModifiedTime: datetime + LastModifiedRegion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRoutingProfilesResponseTypeDef(BaseModel): + RoutingProfileSummaryList: List[RoutingProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSecurityKeysResponseTypeDef(BaseModel): + SecurityKeys: List[SecurityKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSecurityProfilesResponseTypeDef(BaseModel): + SecurityProfileSummaryList: List[SecurityProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTaskTemplatesResponseTypeDef(BaseModel): + TaskTemplates: List[TaskTemplateMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrafficDistributionGroupUsersResponseTypeDef(BaseModel): + TrafficDistributionGroupUserSummaryList: List[TrafficDistributionGroupUserSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrafficDistributionGroupsResponseTypeDef(BaseModel): + TrafficDistributionGroupSummaryList: List[TrafficDistributionGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUseCasesResponseTypeDef(BaseModel): + UseCaseSummaryList: List[UseCaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUsersResponseTypeDef(BaseModel): + UserSummaryList: List[UserSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListViewVersionsResponseTypeDef(BaseModel): + ViewVersionSummaryList: List[ViewVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListViewsResponseTypeDef(BaseModel): + ViewsSummaryList: List[ViewSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MetricV2OutputTypeDef(BaseModel): + Name: Optional[str] = None + Threshold: Optional[List[ThresholdV2TypeDef]] = None + MetricFilters: Optional[List[MetricFilterV2OutputTypeDef]] = None + +class MetricV2TypeDef(BaseModel): + Name: Optional[str] = None + Threshold: Optional[Sequence[ThresholdV2TypeDef]] = None + MetricFilters: Optional[Sequence[MetricFilterV2TypeDef]] = None + +class NewSessionDetailsTypeDef(BaseModel): + SupportedMessagingContentTypes: Optional[Sequence[str]] = None + ParticipantDetails: Optional[ParticipantDetailsTypeDef] = None + Attributes: Optional[Mapping[str, str]] = None + StreamingConfiguration: Optional[ChatStreamingConfigurationTypeDef] = None + +class SendNotificationActionDefinitionOutputTypeDef(BaseModel): + DeliveryMethod: Literal["EMAIL"] + Content: str + ContentType: Literal["PLAIN_TEXT"] + Recipient: NotificationRecipientTypeOutputTypeDef + Subject: Optional[str] = None + +class SendNotificationActionDefinitionTypeDef(BaseModel): + DeliveryMethod: Literal["EMAIL"] + Content: str + ContentType: Literal["PLAIN_TEXT"] + Recipient: NotificationRecipientTypeTypeDef + Subject: Optional[str] = None + +class ParticipantTimerConfigurationTypeDef(BaseModel): + ParticipantRole: TimerEligibleParticipantRolesType + TimerType: ParticipantTimerTypeType + TimerValue: ParticipantTimerValueTypeDef + +class StartChatContactRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactFlowId: str + ParticipantDetails: ParticipantDetailsTypeDef + Attributes: Optional[Mapping[str, str]] = None + InitialMessage: Optional[ChatMessageTypeDef] = None + ClientToken: Optional[str] = None + ChatDurationInMinutes: Optional[int] = None + SupportedMessagingContentTypes: Optional[Sequence[str]] = None + PersistentChat: Optional[PersistentChatTypeDef] = None + RelatedContactId: Optional[str] = None + SegmentAttributes: Optional[Mapping[str, SegmentAttributeValueTypeDef]] = None + +class PredefinedAttributeTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[PredefinedAttributeValuesOutputTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class QuickConnectConfigTypeDef(BaseModel): + QuickConnectType: QuickConnectTypeType + UserConfig: Optional[UserQuickConnectConfigTypeDef] = None + QueueConfig: Optional[QueueQuickConnectConfigTypeDef] = None + PhoneConfig: Optional[PhoneNumberQuickConnectConfigTypeDef] = None + +class RealTimeContactAnalysisTranscriptItemRedactionTypeDef(BaseModel): + CharacterOffsets: Optional[List[RealTimeContactAnalysisCharacterIntervalTypeDef]] = None + +class RealTimeContactAnalysisTranscriptItemWithCharacterOffsetsTypeDef(BaseModel): + Id: str + CharacterOffsets: Optional[RealTimeContactAnalysisCharacterIntervalTypeDef] = None + +class RealTimeContactAnalysisTranscriptItemWithContentTypeDef(BaseModel): + Id: str + Content: Optional[str] = None + CharacterOffsets: Optional[RealTimeContactAnalysisCharacterIntervalTypeDef] = None + +class RealTimeContactAnalysisSegmentAttachmentsTypeDef(BaseModel): + Id: str + ParticipantId: str + ParticipantRole: ParticipantRoleType + Attachments: List[RealTimeContactAnalysisAttachmentTypeDef] + Time: RealTimeContactAnalysisTimeDataTypeDef + DisplayName: Optional[str] = None + +class RealTimeContactAnalysisSegmentEventTypeDef(BaseModel): + Id: str + EventType: str + Time: RealTimeContactAnalysisTimeDataTypeDef + ParticipantId: Optional[str] = None + ParticipantRole: Optional[ParticipantRoleType] = None + DisplayName: Optional[str] = None + +class ReferenceSummaryTypeDef(BaseModel): + Url: Optional[UrlReferenceTypeDef] = None + Attachment: Optional[AttachmentReferenceTypeDef] = None + String: Optional[StringReferenceTypeDef] = None + Number: Optional[NumberReferenceTypeDef] = None + Date: Optional[DateReferenceTypeDef] = None + Email: Optional[EmailReferenceTypeDef] = None + +class StartOutboundVoiceContactRequestRequestTypeDef(BaseModel): + DestinationPhoneNumber: str + ContactFlowId: str + InstanceId: str + Name: Optional[str] = None + Description: Optional[str] = None + References: Optional[Mapping[str, ReferenceTypeDef]] = None + RelatedContactId: Optional[str] = None + ClientToken: Optional[str] = None + SourcePhoneNumber: Optional[str] = None + QueueId: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + AnswerMachineDetectionConfig: Optional[AnswerMachineDetectionConfigTypeDef] = None + CampaignId: Optional[str] = None + TrafficType: Optional[TrafficTypeType] = None + +class StartTaskContactRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + PreviousContactId: Optional[str] = None + ContactFlowId: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + References: Optional[Mapping[str, ReferenceTypeDef]] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + ScheduledTime: Optional[TimestampTypeDef] = None + TaskTemplateId: Optional[str] = None + QuickConnectId: Optional[str] = None + RelatedContactId: Optional[str] = None + +class TaskActionDefinitionOutputTypeDef(BaseModel): + Name: str + ContactFlowId: str + Description: Optional[str] = None + References: Optional[Dict[str, ReferenceTypeDef]] = None + +class TaskActionDefinitionTypeDef(BaseModel): + Name: str + ContactFlowId: str + Description: Optional[str] = None + References: Optional[Mapping[str, ReferenceTypeDef]] = None + +class UpdateContactRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + Name: Optional[str] = None + Description: Optional[str] = None + References: Optional[Mapping[str, ReferenceTypeDef]] = None + +class ResourceTagsSearchCriteriaTypeDef(BaseModel): + TagSearchCondition: Optional[TagSearchConditionTypeDef] = None + +class SearchResourceTagsResponseTypeDef(BaseModel): + Tags: List[TagSetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchSecurityProfilesResponseTypeDef(BaseModel): + SecurityProfiles: List[SecurityProfileSearchSummaryTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchVocabulariesResponseTypeDef(BaseModel): + VocabularySummaryList: List[VocabularySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchableContactAttributesTypeDef(BaseModel): + Criteria: Sequence[SearchableContactAttributesCriteriaTypeDef] + MatchType: Optional[SearchContactsMatchTypeType] = None + +class SignInConfigOutputTypeDef(BaseModel): + Distributions: List[SignInDistributionTypeDef] + +class SignInConfigTypeDef(BaseModel): + Distributions: Sequence[SignInDistributionTypeDef] + +class StartAttachedFileUploadResponseTypeDef(BaseModel): + FileArn: str + FileId: str + CreationTime: str + FileStatus: FileStatusTypeType + CreatedBy: CreatedByInfoTypeDef + UploadUrlMetadata: UploadUrlMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartContactRecordingRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + InitialContactId: str + VoiceRecordingConfiguration: VoiceRecordingConfigurationTypeDef + +class TranscriptTypeDef(BaseModel): + Criteria: Sequence[TranscriptCriteriaTypeDef] + MatchType: Optional[SearchContactsMatchTypeType] = None + +class UserSearchSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + DirectoryUserId: Optional[str] = None + HierarchyGroupId: Optional[str] = None + Id: Optional[str] = None + IdentityInfo: Optional[UserIdentityInfoLiteTypeDef] = None + PhoneConfig: Optional[UserPhoneConfigTypeDef] = None + RoutingProfileId: Optional[str] = None + SecurityProfileIds: Optional[List[str]] = None + Tags: Optional[Dict[str, str]] = None + Username: Optional[str] = None + +class ViewTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ViewStatusType] = None + Type: Optional[ViewTypeType] = None + Description: Optional[str] = None + Version: Optional[int] = None + VersionDescription: Optional[str] = None + Content: Optional[ViewContentTypeDef] = None + Tags: Optional[Dict[str, str]] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + ViewContentSha256: Optional[str] = None + +class ListRulesResponseTypeDef(BaseModel): + RuleSummaryList: List[RuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AgentInfoTypeDef(BaseModel): + Id: Optional[str] = None + ConnectedToAgentTimestamp: Optional[datetime] = None + AgentPauseDurationInSeconds: Optional[int] = None + HierarchyGroups: Optional[HierarchyGroupsTypeDef] = None + DeviceInfo: Optional[DeviceInfoTypeDef] = None + Capabilities: Optional[ParticipantCapabilitiesTypeDef] = None + +class StartWebRTCContactRequestRequestTypeDef(BaseModel): + ContactFlowId: str + InstanceId: str + ParticipantDetails: ParticipantDetailsTypeDef + Attributes: Optional[Mapping[str, str]] = None + ClientToken: Optional[str] = None + AllowedCapabilities: Optional[AllowedCapabilitiesTypeDef] = None + RelatedContactId: Optional[str] = None + References: Optional[Mapping[str, ReferenceTypeDef]] = None + Description: Optional[str] = None + +class QualityMetricsTypeDef(BaseModel): + Agent: Optional[AgentQualityMetricsTypeDef] = None + Customer: Optional[CustomerQualityMetricsTypeDef] = None + +class AttributeConditionTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + ProficiencyLevel: Optional[float] = None + MatchCriteria: Optional[MatchCriteriaTypeDef] = None + ComparisonOperator: Optional[str] = None + +class CreateSecurityProfileRequestRequestTypeDef(BaseModel): + SecurityProfileName: str + InstanceId: str + Description: Optional[str] = None + Permissions: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + AllowedAccessControlTags: Optional[Mapping[str, str]] = None + TagRestrictedResources: Optional[Sequence[str]] = None + Applications: Optional[Sequence[ApplicationUnionTypeDef]] = None + HierarchyRestrictedResources: Optional[Sequence[str]] = None + AllowedAccessControlHierarchyGroupId: Optional[str] = None + +class UpdateSecurityProfileRequestRequestTypeDef(BaseModel): + SecurityProfileId: str + InstanceId: str + Description: Optional[str] = None + Permissions: Optional[Sequence[str]] = None + AllowedAccessControlTags: Optional[Mapping[str, str]] = None + TagRestrictedResources: Optional[Sequence[str]] = None + Applications: Optional[Sequence[ApplicationUnionTypeDef]] = None + HierarchyRestrictedResources: Optional[Sequence[str]] = None + AllowedAccessControlHierarchyGroupId: Optional[str] = None + +class ListBotsResponseTypeDef(BaseModel): + LexBots: List[LexBotConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGetAttachedFileMetadataResponseTypeDef(BaseModel): + Files: List[AttachedFileTypeDef] + Errors: List[AttachedFileErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ControlPlaneUserAttributeFilterTypeDef(BaseModel): + OrConditions: Optional[Sequence[AttributeAndConditionTypeDef]] = None + AndCondition: Optional[AttributeAndConditionTypeDef] = None + TagCondition: Optional[TagConditionTypeDef] = None + HierarchyGroupCondition: Optional[HierarchyGroupConditionTypeDef] = None + +class ContactFlowModuleSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class ContactFlowSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class HoursOfOperationSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class PromptSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class QueueSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class QuickConnectSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class RoutingProfileSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class SecurityProfilesSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + +class MeetingTypeDef(BaseModel): + MediaRegion: Optional[str] = None + MediaPlacement: Optional[MediaPlacementTypeDef] = None + MeetingFeatures: Optional[MeetingFeaturesConfigurationTypeDef] = None + MeetingId: Optional[str] = None + +class DescribePhoneNumberResponseTypeDef(BaseModel): + ClaimedPhoneNumberSummary: ClaimedPhoneNumberSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutContactRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactDataRequestList: Sequence[ContactDataRequestTypeDef] + ClientToken: Optional[str] = None + +class GetCurrentUserDataRequestRequestTypeDef(BaseModel): + InstanceId: str + Filters: UserDataFiltersTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SearchPredefinedAttributesRequestSearchPredefinedAttributesPaginateTypeDef(BaseModel): + InstanceId: str + SearchCriteria: Optional[PredefinedAttributeSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchContactsResponseTypeDef(BaseModel): + Contacts: List[ContactSearchSummaryTypeDef] + TotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeEvaluationFormResponseTypeDef(BaseModel): + EvaluationForm: EvaluationFormTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeQueueResponseTypeDef(BaseModel): + Queue: QueueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchQueuesResponseTypeDef(BaseModel): + Queues: List[QueueTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RoutingProfileTypeDef(BaseModel): + InstanceId: Optional[str] = None + Name: Optional[str] = None + RoutingProfileArn: Optional[str] = None + RoutingProfileId: Optional[str] = None + Description: Optional[str] = None + MediaConcurrencies: Optional[List[MediaConcurrencyTypeDef]] = None + DefaultOutboundQueueId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + NumberOfAssociatedQueues: Optional[int] = None + NumberOfAssociatedUsers: Optional[int] = None + AgentAvailabilityTimer: Optional[AgentAvailabilityTimerType] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + IsDefault: Optional[bool] = None + AssociatedQueueIds: Optional[List[str]] = None + +class UpdateRoutingProfileConcurrencyRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + MediaConcurrencies: Sequence[MediaConcurrencyTypeDef] + +class CurrentMetricResultTypeDef(BaseModel): + Dimensions: Optional[DimensionsTypeDef] = None + Collections: Optional[List[CurrentMetricDataTypeDef]] = None + +class AssociateRoutingProfileQueuesRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + QueueConfigs: Sequence[RoutingProfileQueueConfigTypeDef] + +class CreateRoutingProfileRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + Description: str + DefaultOutboundQueueId: str + MediaConcurrencies: Sequence[MediaConcurrencyTypeDef] + QueueConfigs: Optional[Sequence[RoutingProfileQueueConfigTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + AgentAvailabilityTimer: Optional[AgentAvailabilityTimerType] = None + +class UpdateRoutingProfileQueuesRequestRequestTypeDef(BaseModel): + InstanceId: str + RoutingProfileId: str + QueueConfigs: Sequence[RoutingProfileQueueConfigTypeDef] + +class InstanceStorageConfigTypeDef(BaseModel): + StorageType: StorageTypeType + AssociationId: Optional[str] = None + S3Config: Optional[S3ConfigTypeDef] = None + KinesisVideoStreamConfig: Optional[KinesisVideoStreamConfigTypeDef] = None + KinesisStreamConfig: Optional[KinesisStreamConfigTypeDef] = None + KinesisFirehoseConfig: Optional[KinesisFirehoseConfigTypeDef] = None + +class SubmitContactEvaluationRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationId: str + Answers: Optional[Mapping[str, EvaluationAnswerInputTypeDef]] = None + Notes: Optional[Mapping[str, EvaluationNoteTypeDef]] = None + +class UpdateContactEvaluationRequestRequestTypeDef(BaseModel): + InstanceId: str + EvaluationId: str + Answers: Optional[Mapping[str, EvaluationAnswerInputTypeDef]] = None + Notes: Optional[Mapping[str, EvaluationNoteTypeDef]] = None + +class EvaluationFormNumericQuestionPropertiesOutputTypeDef(BaseModel): + MinValue: int + MaxValue: int + Options: Optional[List[EvaluationFormNumericQuestionOptionTypeDef]] = None + Automation: Optional[EvaluationFormNumericQuestionAutomationTypeDef] = None + +class EvaluationFormNumericQuestionPropertiesTypeDef(BaseModel): + MinValue: int + MaxValue: int + Options: Optional[Sequence[EvaluationFormNumericQuestionOptionTypeDef]] = None + Automation: Optional[EvaluationFormNumericQuestionAutomationTypeDef] = None + +class EvaluationFormSingleSelectQuestionAutomationOutputTypeDef(BaseModel): + Options: List[EvaluationFormSingleSelectQuestionAutomationOptionTypeDef] + DefaultOptionRefId: Optional[str] = None + +class EvaluationFormSingleSelectQuestionAutomationTypeDef(BaseModel): + Options: Sequence[EvaluationFormSingleSelectQuestionAutomationOptionTypeDef] + DefaultOptionRefId: Optional[str] = None + +class EvaluationTypeDef(BaseModel): + EvaluationId: str + EvaluationArn: str + Metadata: EvaluationMetadataTypeDef + Answers: Dict[str, EvaluationAnswerOutputTypeDef] + Notes: Dict[str, EvaluationNoteTypeDef] + Status: EvaluationStatusType + CreatedTime: datetime + LastModifiedTime: datetime + Scores: Optional[Dict[str, EvaluationScoreTypeDef]] = None + Tags: Optional[Dict[str, str]] = None + +class ListContactEvaluationsResponseTypeDef(BaseModel): + EvaluationSummaryList: List[EvaluationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RoutingCriteriaTypeDef(BaseModel): + Steps: Optional[List[StepTypeDef]] = None + ActivationTimestamp: Optional[datetime] = None + Index: Optional[int] = None + +class CreateCaseActionDefinitionOutputTypeDef(BaseModel): + Fields: List[FieldValueOutputTypeDef] + TemplateId: str + +class UpdateCaseActionDefinitionOutputTypeDef(BaseModel): + Fields: List[FieldValueOutputTypeDef] + +class CreateCaseActionDefinitionTypeDef(BaseModel): + Fields: Sequence[FieldValueTypeDef] + TemplateId: str + +class UpdateCaseActionDefinitionTypeDef(BaseModel): + Fields: Sequence[FieldValueTypeDef] + +class UserDataTypeDef(BaseModel): + User: Optional[UserReferenceTypeDef] = None + RoutingProfile: Optional[RoutingProfileReferenceTypeDef] = None + HierarchyPath: Optional[HierarchyPathReferenceTypeDef] = None + Status: Optional[AgentStatusReferenceTypeDef] = None + AvailableSlotsByChannel: Optional[Dict[ChannelType, int]] = None + MaxSlotsByChannel: Optional[Dict[ChannelType, int]] = None + ActiveSlotsByChannel: Optional[Dict[ChannelType, int]] = None + Contacts: Optional[List[AgentContactReferenceTypeDef]] = None + NextStatus: Optional[str] = None + +class HierarchyGroupTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + LevelId: Optional[str] = None + HierarchyPath: Optional[HierarchyPathTypeDef] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class DescribeUserHierarchyStructureResponseTypeDef(BaseModel): + HierarchyStructure: HierarchyStructureTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserHierarchyStructureRequestRequestTypeDef(BaseModel): + HierarchyStructure: HierarchyStructureUpdateTypeDef + InstanceId: str + +class GetMetricDataRequestGetMetricDataPaginateTypeDef(BaseModel): + InstanceId: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Filters: FiltersTypeDef + HistoricalMetrics: Sequence[HistoricalMetricTypeDef] + Groupings: Optional[Sequence[GroupingType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetMetricDataRequestRequestTypeDef(BaseModel): + InstanceId: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Filters: FiltersTypeDef + HistoricalMetrics: Sequence[HistoricalMetricTypeDef] + Groupings: Optional[Sequence[GroupingType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class HistoricalMetricDataTypeDef(BaseModel): + Metric: Optional[HistoricalMetricTypeDef] = None + Value: Optional[float] = None + +class CreateHoursOfOperationRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + TimeZone: str + Config: Sequence[HoursOfOperationConfigTypeDef] + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class HoursOfOperationTypeDef(BaseModel): + HoursOfOperationId: Optional[str] = None + HoursOfOperationArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + TimeZone: Optional[str] = None + Config: Optional[List[HoursOfOperationConfigTypeDef]] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class UpdateHoursOfOperationRequestRequestTypeDef(BaseModel): + InstanceId: str + HoursOfOperationId: str + Name: Optional[str] = None + Description: Optional[str] = None + TimeZone: Optional[str] = None + Config: Optional[Sequence[HoursOfOperationConfigTypeDef]] = None + +class DescribeInstanceResponseTypeDef(BaseModel): + Instance: InstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TaskTemplateConstraintsOutputTypeDef(BaseModel): + RequiredFields: Optional[List[RequiredFieldInfoTypeDef]] = None + ReadOnlyFields: Optional[List[ReadOnlyFieldInfoTypeDef]] = None + InvisibleFields: Optional[List[InvisibleFieldInfoTypeDef]] = None + +class TaskTemplateConstraintsTypeDef(BaseModel): + RequiredFields: Optional[Sequence[RequiredFieldInfoTypeDef]] = None + ReadOnlyFields: Optional[Sequence[ReadOnlyFieldInfoTypeDef]] = None + InvisibleFields: Optional[Sequence[InvisibleFieldInfoTypeDef]] = None + +class TaskTemplateDefaultsOutputTypeDef(BaseModel): + DefaultFieldValues: Optional[List[TaskTemplateDefaultFieldValueTypeDef]] = None + +class TaskTemplateDefaultsTypeDef(BaseModel): + DefaultFieldValues: Optional[Sequence[TaskTemplateDefaultFieldValueTypeDef]] = None + +class MetricDataV2TypeDef(BaseModel): + Metric: Optional[MetricV2OutputTypeDef] = None + Value: Optional[float] = None + +class SendChatIntegrationEventRequestRequestTypeDef(BaseModel): + SourceId: str + DestinationId: str + Event: ChatEventTypeDef + Subtype: Optional[str] = None + NewSessionDetails: Optional[NewSessionDetailsTypeDef] = None + +class ChatParticipantRoleConfigTypeDef(BaseModel): + ParticipantTimerConfigList: Sequence[ParticipantTimerConfigurationTypeDef] + +class DescribePredefinedAttributeResponseTypeDef(BaseModel): + PredefinedAttribute: PredefinedAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchPredefinedAttributesResponseTypeDef(BaseModel): + PredefinedAttributes: List[PredefinedAttributeTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateQuickConnectRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + QuickConnectConfig: QuickConnectConfigTypeDef + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class QuickConnectTypeDef(BaseModel): + QuickConnectARN: Optional[str] = None + QuickConnectId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + QuickConnectConfig: Optional[QuickConnectConfigTypeDef] = None + Tags: Optional[Dict[str, str]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedRegion: Optional[str] = None + +class UpdateQuickConnectConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + QuickConnectId: str + QuickConnectConfig: QuickConnectConfigTypeDef + +class RealTimeContactAnalysisSegmentTranscriptTypeDef(BaseModel): + Id: str + ParticipantId: str + ParticipantRole: ParticipantRoleType + Content: str + Time: RealTimeContactAnalysisTimeDataTypeDef + DisplayName: Optional[str] = None + ContentType: Optional[str] = None + Redaction: Optional[RealTimeContactAnalysisTranscriptItemRedactionTypeDef] = None + Sentiment: Optional[RealTimeContactAnalysisSentimentLabelType] = None + +class RealTimeContactAnalysisPointOfInterestTypeDef(BaseModel): + TranscriptItems: Optional[ List[RealTimeContactAnalysisTranscriptItemWithCharacterOffsetsTypeDef] ] = None + +class RealTimeContactAnalysisIssueDetectedTypeDef(BaseModel): + TranscriptItems: List[RealTimeContactAnalysisTranscriptItemWithContentTypeDef] + +class ListContactReferencesResponseTypeDef(BaseModel): + ReferenceSummaryList: List[ReferenceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchResourceTagsRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceTypes: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchCriteria: Optional[ResourceTagsSearchCriteriaTypeDef] = None + +class SearchResourceTagsRequestSearchResourceTagsPaginateTypeDef(BaseModel): + InstanceId: str + ResourceTypes: Optional[Sequence[str]] = None + SearchCriteria: Optional[ResourceTagsSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTrafficDistributionResponseTypeDef(BaseModel): + TelephonyConfig: TelephonyConfigOutputTypeDef + Id: str + Arn: str + SignInConfig: SignInConfigOutputTypeDef + AgentConfig: AgentConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrafficDistributionRequestRequestTypeDef(BaseModel): + Id: str + TelephonyConfig: Optional[TelephonyConfigTypeDef] = None + SignInConfig: Optional[SignInConfigTypeDef] = None + AgentConfig: Optional[AgentConfigTypeDef] = None + +class ContactAnalysisTypeDef(BaseModel): + Transcript: Optional[TranscriptTypeDef] = None + +class SearchUsersResponseTypeDef(BaseModel): + Users: List[UserSearchSummaryTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateViewResponseTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateViewVersionResponseTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeViewResponseTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateViewContentResponseTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExpressionTypeDef(BaseModel): + AttributeCondition: Optional[AttributeConditionTypeDef] = None + AndExpression: Optional[List[Dict[str, Any]]] = None + OrExpression: Optional[List[Dict[str, Any]]] = None + +class UserSearchFilterTypeDef(BaseModel): + TagFilter: Optional[ControlPlaneTagFilterTypeDef] = None + UserAttributeFilter: Optional[ControlPlaneUserAttributeFilterTypeDef] = None + +class SearchContactFlowModulesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[ContactFlowModuleSearchFilterTypeDef] = None + SearchCriteria: Optional["ContactFlowModuleSearchCriteriaTypeDef"] = None + +class SearchContactFlowModulesRequestSearchContactFlowModulesPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[ContactFlowModuleSearchFilterTypeDef] = None + SearchCriteria: Optional[ContactFlowModuleSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchContactFlowsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[ContactFlowSearchFilterTypeDef] = None + SearchCriteria: Optional["ContactFlowSearchCriteriaTypeDef"] = None + +class SearchContactFlowsRequestSearchContactFlowsPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[ContactFlowSearchFilterTypeDef] = None + SearchCriteria: Optional[ContactFlowSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchHoursOfOperationsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[HoursOfOperationSearchFilterTypeDef] = None + SearchCriteria: Optional["HoursOfOperationSearchCriteriaTypeDef"] = None + +class SearchHoursOfOperationsRequestSearchHoursOfOperationsPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[HoursOfOperationSearchFilterTypeDef] = None + SearchCriteria: Optional[HoursOfOperationSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchPromptsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[PromptSearchFilterTypeDef] = None + SearchCriteria: Optional["PromptSearchCriteriaTypeDef"] = None + +class SearchPromptsRequestSearchPromptsPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[PromptSearchFilterTypeDef] = None + SearchCriteria: Optional[PromptSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchQueuesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[QueueSearchFilterTypeDef] = None + SearchCriteria: Optional["QueueSearchCriteriaTypeDef"] = None + +class SearchQueuesRequestSearchQueuesPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[QueueSearchFilterTypeDef] = None + SearchCriteria: Optional[QueueSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchQuickConnectsRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[QuickConnectSearchFilterTypeDef] = None + SearchCriteria: Optional["QuickConnectSearchCriteriaTypeDef"] = None + +class SearchQuickConnectsRequestSearchQuickConnectsPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[QuickConnectSearchFilterTypeDef] = None + SearchCriteria: Optional[QuickConnectSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchRoutingProfilesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[RoutingProfileSearchFilterTypeDef] = None + SearchCriteria: Optional["RoutingProfileSearchCriteriaTypeDef"] = None + +class SearchRoutingProfilesRequestSearchRoutingProfilesPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[RoutingProfileSearchFilterTypeDef] = None + SearchCriteria: Optional[RoutingProfileSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchSecurityProfilesRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchCriteria: Optional["SecurityProfileSearchCriteriaTypeDef"] = None + SearchFilter: Optional[SecurityProfilesSearchFilterTypeDef] = None + +class SearchSecurityProfilesRequestSearchSecurityProfilesPaginateTypeDef(BaseModel): + InstanceId: str + SearchCriteria: Optional[SecurityProfileSearchCriteriaTypeDef] = None + SearchFilter: Optional[SecurityProfilesSearchFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ConnectionDataTypeDef(BaseModel): + Attendee: Optional[AttendeeTypeDef] = None + Meeting: Optional[MeetingTypeDef] = None + +class DescribeRoutingProfileResponseTypeDef(BaseModel): + RoutingProfile: RoutingProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchRoutingProfilesResponseTypeDef(BaseModel): + RoutingProfiles: List[RoutingProfileTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCurrentMetricDataResponseTypeDef(BaseModel): + MetricResults: List[CurrentMetricResultTypeDef] + DataSnapshotTime: datetime + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateInstanceStorageConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + ResourceType: InstanceStorageResourceTypeType + StorageConfig: InstanceStorageConfigTypeDef + +class DescribeInstanceStorageConfigResponseTypeDef(BaseModel): + StorageConfig: InstanceStorageConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceStorageConfigsResponseTypeDef(BaseModel): + StorageConfigs: List[InstanceStorageConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateInstanceStorageConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + AssociationId: str + ResourceType: InstanceStorageResourceTypeType + StorageConfig: InstanceStorageConfigTypeDef + +class EvaluationFormSingleSelectQuestionPropertiesOutputTypeDef(BaseModel): + Options: List[EvaluationFormSingleSelectQuestionOptionTypeDef] + DisplayAs: Optional[EvaluationFormSingleSelectQuestionDisplayModeType] = None + Automation: Optional[EvaluationFormSingleSelectQuestionAutomationOutputTypeDef] = None + +class EvaluationFormSingleSelectQuestionPropertiesTypeDef(BaseModel): + Options: Sequence[EvaluationFormSingleSelectQuestionOptionTypeDef] + DisplayAs: Optional[EvaluationFormSingleSelectQuestionDisplayModeType] = None + Automation: Optional[EvaluationFormSingleSelectQuestionAutomationTypeDef] = None + +class DescribeContactEvaluationResponseTypeDef(BaseModel): + Evaluation: EvaluationTypeDef + EvaluationForm: EvaluationFormContentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ContactTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + InitialContactId: Optional[str] = None + PreviousContactId: Optional[str] = None + InitiationMethod: Optional[ContactInitiationMethodType] = None + Name: Optional[str] = None + Description: Optional[str] = None + Channel: Optional[ChannelType] = None + QueueInfo: Optional[QueueInfoTypeDef] = None + AgentInfo: Optional[AgentInfoTypeDef] = None + InitiationTimestamp: Optional[datetime] = None + DisconnectTimestamp: Optional[datetime] = None + LastUpdateTimestamp: Optional[datetime] = None + LastPausedTimestamp: Optional[datetime] = None + LastResumedTimestamp: Optional[datetime] = None + TotalPauseCount: Optional[int] = None + TotalPauseDurationInSeconds: Optional[int] = None + ScheduledTimestamp: Optional[datetime] = None + RelatedContactId: Optional[str] = None + WisdomInfo: Optional[WisdomInfoTypeDef] = None + QueueTimeAdjustmentSeconds: Optional[int] = None + QueuePriority: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + ConnectedToSystemTimestamp: Optional[datetime] = None + RoutingCriteria: Optional[RoutingCriteriaTypeDef] = None + Customer: Optional[CustomerTypeDef] = None + Campaign: Optional[CampaignTypeDef] = None + AnsweringMachineDetectionStatus: Optional[AnsweringMachineDetectionStatusType] = None + CustomerVoiceActivity: Optional[CustomerVoiceActivityTypeDef] = None + QualityMetrics: Optional[QualityMetricsTypeDef] = None + DisconnectDetails: Optional[DisconnectDetailsTypeDef] = None + SegmentAttributes: Optional[Dict[str, SegmentAttributeValueTypeDef]] = None + +class RuleActionOutputTypeDef(BaseModel): + ActionType: ActionTypeType + TaskAction: Optional[TaskActionDefinitionOutputTypeDef] = None + EventBridgeAction: Optional[EventBridgeActionDefinitionTypeDef] = None + AssignContactCategoryAction: Optional[Dict[str, Any]] = None + SendNotificationAction: Optional[SendNotificationActionDefinitionOutputTypeDef] = None + CreateCaseAction: Optional[CreateCaseActionDefinitionOutputTypeDef] = None + UpdateCaseAction: Optional[UpdateCaseActionDefinitionOutputTypeDef] = None + EndAssociatedTasksAction: Optional[Dict[str, Any]] = None + SubmitAutoEvaluationAction: Optional[SubmitAutoEvaluationActionDefinitionTypeDef] = None + +class RuleActionTypeDef(BaseModel): + ActionType: ActionTypeType + TaskAction: Optional[TaskActionDefinitionTypeDef] = None + EventBridgeAction: Optional[EventBridgeActionDefinitionTypeDef] = None + AssignContactCategoryAction: Optional[Mapping[str, Any]] = None + SendNotificationAction: Optional[SendNotificationActionDefinitionTypeDef] = None + CreateCaseAction: Optional[CreateCaseActionDefinitionTypeDef] = None + UpdateCaseAction: Optional[UpdateCaseActionDefinitionTypeDef] = None + EndAssociatedTasksAction: Optional[Mapping[str, Any]] = None + SubmitAutoEvaluationAction: Optional[SubmitAutoEvaluationActionDefinitionTypeDef] = None + +class GetCurrentUserDataResponseTypeDef(BaseModel): + UserDataList: List[UserDataTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeUserHierarchyGroupResponseTypeDef(BaseModel): + HierarchyGroup: HierarchyGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HistoricalMetricResultTypeDef(BaseModel): + Dimensions: Optional[DimensionsTypeDef] = None + Collections: Optional[List[HistoricalMetricDataTypeDef]] = None + +class DescribeHoursOfOperationResponseTypeDef(BaseModel): + HoursOfOperation: HoursOfOperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchHoursOfOperationsResponseTypeDef(BaseModel): + HoursOfOperations: List[HoursOfOperationTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTaskTemplateResponseTypeDef(BaseModel): + InstanceId: str + Id: str + Arn: str + Name: str + Description: str + ContactFlowId: str + Constraints: TaskTemplateConstraintsOutputTypeDef + Defaults: TaskTemplateDefaultsOutputTypeDef + Fields: List[TaskTemplateFieldOutputTypeDef] + Status: TaskTemplateStatusType + LastModifiedTime: datetime + CreatedTime: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTaskTemplateResponseTypeDef(BaseModel): + InstanceId: str + Id: str + Arn: str + Name: str + Description: str + ContactFlowId: str + Constraints: TaskTemplateConstraintsOutputTypeDef + Defaults: TaskTemplateDefaultsOutputTypeDef + Fields: List[TaskTemplateFieldOutputTypeDef] + Status: TaskTemplateStatusType + LastModifiedTime: datetime + CreatedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTaskTemplateRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + Fields: Sequence[TaskTemplateFieldUnionTypeDef] + Description: Optional[str] = None + ContactFlowId: Optional[str] = None + Constraints: Optional[TaskTemplateConstraintsTypeDef] = None + Defaults: Optional[TaskTemplateDefaultsTypeDef] = None + Status: Optional[TaskTemplateStatusType] = None + ClientToken: Optional[str] = None + +class UpdateTaskTemplateRequestRequestTypeDef(BaseModel): + TaskTemplateId: str + InstanceId: str + Name: Optional[str] = None + Description: Optional[str] = None + ContactFlowId: Optional[str] = None + Constraints: Optional[TaskTemplateConstraintsTypeDef] = None + Defaults: Optional[TaskTemplateDefaultsTypeDef] = None + Status: Optional[TaskTemplateStatusType] = None + Fields: Optional[Sequence[TaskTemplateFieldUnionTypeDef]] = None + +class MetricResultV2TypeDef(BaseModel): + Dimensions: Optional[Dict[str, str]] = None + MetricInterval: Optional[MetricIntervalTypeDef] = None + Collections: Optional[List[MetricDataV2TypeDef]] = None + +class GetMetricDataV2RequestRequestTypeDef(BaseModel): + ResourceArn: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Filters: Sequence[FilterV2TypeDef] + Metrics: Sequence[MetricV2UnionTypeDef] + Interval: Optional[IntervalDetailsTypeDef] = None + Groupings: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class UpdateParticipantRoleConfigChannelInfoTypeDef(BaseModel): + Chat: Optional[ChatParticipantRoleConfigTypeDef] = None + +class DescribeQuickConnectResponseTypeDef(BaseModel): + QuickConnect: QuickConnectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchQuickConnectsResponseTypeDef(BaseModel): + QuickConnects: List[QuickConnectTypeDef] + ApproximateTotalCount: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RealTimeContactAnalysisCategoryDetailsTypeDef(BaseModel): + PointsOfInterest: List[RealTimeContactAnalysisPointOfInterestTypeDef] + +class RealTimeContactAnalysisSegmentIssuesTypeDef(BaseModel): + IssuesDetected: List[RealTimeContactAnalysisIssueDetectedTypeDef] + +class SearchCriteriaTypeDef(BaseModel): + AgentIds: Optional[Sequence[str]] = None + AgentHierarchyGroups: Optional[AgentHierarchyGroupsTypeDef] = None + Channels: Optional[Sequence[ChannelType]] = None + ContactAnalysis: Optional[ContactAnalysisTypeDef] = None + InitiationMethods: Optional[Sequence[ContactInitiationMethodType]] = None + QueueIds: Optional[Sequence[str]] = None + SearchableContactAttributes: Optional[SearchableContactAttributesTypeDef] = None + +class SearchUsersRequestRequestTypeDef(BaseModel): + InstanceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SearchFilter: Optional[UserSearchFilterTypeDef] = None + SearchCriteria: Optional["UserSearchCriteriaTypeDef"] = None + +class SearchUsersRequestSearchUsersPaginateTypeDef(BaseModel): + InstanceId: str + SearchFilter: Optional[UserSearchFilterTypeDef] = None + SearchCriteria: Optional[UserSearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class StartWebRTCContactResponseTypeDef(BaseModel): + ConnectionData: ConnectionDataTypeDef + ContactId: str + ParticipantId: str + ParticipantToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluationFormQuestionTypePropertiesOutputTypeDef(BaseModel): + Numeric: Optional[EvaluationFormNumericQuestionPropertiesOutputTypeDef] = None + SingleSelect: Optional[EvaluationFormSingleSelectQuestionPropertiesOutputTypeDef] = None + +class EvaluationFormQuestionTypePropertiesTypeDef(BaseModel): + Numeric: Optional[EvaluationFormNumericQuestionPropertiesTypeDef] = None + SingleSelect: Optional[EvaluationFormSingleSelectQuestionPropertiesTypeDef] = None + +class DescribeContactResponseTypeDef(BaseModel): + Contact: ContactTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RuleTypeDef(BaseModel): + Name: str + RuleId: str + RuleArn: str + TriggerEventSource: RuleTriggerEventSourceTypeDef + Function: str + Actions: List[RuleActionOutputTypeDef] + PublishStatus: RulePublishStatusType + CreatedTime: datetime + LastUpdatedTime: datetime + LastUpdatedBy: str + Tags: Optional[Dict[str, str]] = None + +class GetMetricDataResponseTypeDef(BaseModel): + MetricResults: List[HistoricalMetricResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetMetricDataV2ResponseTypeDef(BaseModel): + MetricResults: List[MetricResultV2TypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateParticipantRoleConfigRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + ChannelConfiguration: UpdateParticipantRoleConfigChannelInfoTypeDef + +class RealTimeContactAnalysisSegmentCategoriesTypeDef(BaseModel): + MatchedDetails: Dict[str, RealTimeContactAnalysisCategoryDetailsTypeDef] + +class SearchContactsRequestRequestTypeDef(BaseModel): + InstanceId: str + TimeRange: SearchContactsTimeRangeTypeDef + SearchCriteria: Optional[SearchCriteriaTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Sort: Optional[SortTypeDef] = None + +class SearchContactsRequestSearchContactsPaginateTypeDef(BaseModel): + InstanceId: str + TimeRange: SearchContactsTimeRangeTypeDef + SearchCriteria: Optional[SearchCriteriaTypeDef] = None + Sort: Optional[SortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class EvaluationFormQuestionOutputTypeDef(BaseModel): + Title: str + RefId: str + QuestionType: EvaluationFormQuestionTypeType + Instructions: Optional[str] = None + NotApplicableEnabled: Optional[bool] = None + QuestionTypeProperties: Optional[EvaluationFormQuestionTypePropertiesOutputTypeDef] = None + Weight: Optional[float] = None + +class EvaluationFormQuestionTypeDef(BaseModel): + Title: str + RefId: str + QuestionType: EvaluationFormQuestionTypeType + Instructions: Optional[str] = None + NotApplicableEnabled: Optional[bool] = None + QuestionTypeProperties: Optional[EvaluationFormQuestionTypePropertiesTypeDef] = None + Weight: Optional[float] = None + +class DescribeRuleResponseTypeDef(BaseModel): + Rule: RuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + TriggerEventSource: RuleTriggerEventSourceTypeDef + Function: str + Actions: Sequence[RuleActionUnionTypeDef] + PublishStatus: RulePublishStatusType + ClientToken: Optional[str] = None + +class UpdateRuleRequestRequestTypeDef(BaseModel): + RuleId: str + InstanceId: str + Name: str + Function: str + Actions: Sequence[RuleActionUnionTypeDef] + PublishStatus: RulePublishStatusType + +class RealtimeContactAnalysisSegmentTypeDef(BaseModel): + Transcript: Optional[RealTimeContactAnalysisSegmentTranscriptTypeDef] = None + Categories: Optional[RealTimeContactAnalysisSegmentCategoriesTypeDef] = None + Issues: Optional[RealTimeContactAnalysisSegmentIssuesTypeDef] = None + Event: Optional[RealTimeContactAnalysisSegmentEventTypeDef] = None + Attachments: Optional[RealTimeContactAnalysisSegmentAttachmentsTypeDef] = None + +class EvaluationFormItemOutputTypeDef(BaseModel): + Section: Optional[Dict[str, Any]] = None + Question: Optional[EvaluationFormQuestionOutputTypeDef] = None + +class EvaluationFormItemTypeDef(BaseModel): + Section: Optional[Dict[str, Any]] = None + Question: Optional[EvaluationFormQuestionTypeDef] = None + +class ListRealtimeContactAnalysisSegmentsV2ResponseTypeDef(BaseModel): + Channel: RealTimeContactAnalysisSupportedChannelType + Status: RealTimeContactAnalysisStatusType + Segments: List[RealtimeContactAnalysisSegmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/connect_constants.py b/aws_resource_validator/pydantic_models/connect_constants.py new file mode 100644 index 00000000..cc6acad0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/connect_constants.py @@ -0,0 +1,1043 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionTypeType = Literal["ASSIGN_CONTACT_CATEGORY", + "CREATE_CASE", + "CREATE_TASK", + "END_ASSOCIATED_TASKS", + "GENERATE_EVENTBRIDGE_EVENT", + "SEND_NOTIFICATION", + "SUBMIT_AUTO_EVALUATION", + "UPDATE_CASE",] +AgentAvailabilityTimerType = Literal["TIME_SINCE_LAST_ACTIVITY", "TIME_SINCE_LAST_INBOUND"] +AgentStatusStateType = Literal["DISABLED", "ENABLED"] +AgentStatusTypeType = Literal["CUSTOM", "OFFLINE", "ROUTABLE"] +AnsweringMachineDetectionStatusType = Literal["AMD_ERROR", + "AMD_NOT_APPLICABLE", + "AMD_UNANSWERED", + "AMD_UNRESOLVED", + "ANSWERED", + "ERROR", + "FAX_MACHINE_DETECTED", + "HUMAN_ANSWERED", + "SIT_TONE_BUSY", + "SIT_TONE_DETECTED", + "SIT_TONE_INVALID_NUMBER", + "UNDETECTED", + "VOICEMAIL_BEEP", + "VOICEMAIL_NO_BEEP",] +ArtifactStatusType = Literal["APPROVED", "IN_PROGRESS", "REJECTED"] +BehaviorTypeType = Literal["ROUTE_ANY_CHANNEL", "ROUTE_CURRENT_CHANNEL_ONLY"] +ChannelType = Literal["CHAT", "TASK", "VOICE"] +ChatEventTypeType = Literal["DISCONNECT", "EVENT", "MESSAGE"] +ComparisonType = Literal["LT"] +ContactFlowModuleStateType = Literal["ACTIVE", "ARCHIVED"] +ContactFlowModuleStatusType = Literal["PUBLISHED", "SAVED"] +ContactFlowStateType = Literal["ACTIVE", "ARCHIVED"] +ContactFlowStatusType = Literal["PUBLISHED", "SAVED"] +ContactFlowTypeType = Literal["AGENT_HOLD", + "AGENT_TRANSFER", + "AGENT_WHISPER", + "CONTACT_FLOW", + "CUSTOMER_HOLD", + "CUSTOMER_QUEUE", + "CUSTOMER_WHISPER", + "OUTBOUND_WHISPER", + "QUEUE_TRANSFER",] +ContactInitiationMethodType = Literal["API", + "CALLBACK", + "DISCONNECT", + "EXTERNAL_OUTBOUND", + "INBOUND", + "MONITOR", + "OUTBOUND", + "QUEUE_TRANSFER", + "TRANSFER",] +ContactStateType = Literal["CONNECTED", + "CONNECTED_ONHOLD", + "CONNECTING", + "ENDED", + "ERROR", + "INCOMING", + "MISSED", + "PENDING", + "REJECTED",] +CurrentMetricNameType = Literal["AGENTS_AFTER_CONTACT_WORK", + "AGENTS_AVAILABLE", + "AGENTS_ERROR", + "AGENTS_NON_PRODUCTIVE", + "AGENTS_ONLINE", + "AGENTS_ON_CALL", + "AGENTS_ON_CONTACT", + "AGENTS_STAFFED", + "CONTACTS_IN_QUEUE", + "CONTACTS_SCHEDULED", + "OLDEST_CONTACT_AGE", + "SLOTS_ACTIVE", + "SLOTS_AVAILABLE",] +DirectoryTypeType = Literal["CONNECT_MANAGED", "EXISTING_DIRECTORY", "SAML"] +EncryptionTypeType = Literal["KMS"] +EndpointTypeType = Literal["CONTACT_FLOW", "TELEPHONE_NUMBER", "VOIP"] +EvaluationFormQuestionTypeType = Literal["NUMERIC", "SINGLESELECT", "TEXT"] +EvaluationFormScoringModeType = Literal["QUESTION_ONLY", "SECTION_ONLY"] +EvaluationFormScoringStatusType = Literal["DISABLED", "ENABLED"] +EvaluationFormSingleSelectQuestionDisplayModeType = Literal["DROPDOWN", "RADIO"] +EvaluationFormVersionStatusType = Literal["ACTIVE", "DRAFT"] +EvaluationStatusType = Literal["DRAFT", "SUBMITTED"] +EventSourceNameType = Literal["OnCaseCreate", + "OnCaseUpdate", + "OnContactEvaluationSubmit", + "OnMetricDataUpdate", + "OnPostCallAnalysisAvailable", + "OnPostChatAnalysisAvailable", + "OnRealTimeCallAnalysisAvailable", + "OnRealTimeChatAnalysisAvailable", + "OnSalesforceCaseCreate", + "OnZendeskTicketCreate", + "OnZendeskTicketStatusUpdate",] +FailureReasonCodeType = Literal["IDEMPOTENCY_EXCEPTION", + "INTERNAL_ERROR", + "INVALID_ATTRIBUTE_KEY", + "INVALID_CUSTOMER_ENDPOINT", + "INVALID_QUEUE", + "INVALID_SYSTEM_ENDPOINT", + "MISSING_CAMPAIGN", + "MISSING_CUSTOMER_ENDPOINT", + "MISSING_QUEUE_ID_AND_SYSTEM_ENDPOINT", + "REQUEST_THROTTLED",] +FileStatusTypeType = Literal["APPROVED", "FAILED", "PROCESSING", "REJECTED"] +FileUseCaseTypeType = Literal["ATTACHMENT"] +FlowAssociationResourceTypeType = Literal["SMS_PHONE_NUMBER"] +GetMetricDataPaginatorName = Literal["get_metric_data"] +GroupingType = Literal["CHANNEL", "QUEUE", "ROUTING_PROFILE", "ROUTING_STEP_EXPRESSION"] +HierarchyGroupMatchTypeType = Literal["EXACT", "WITH_CHILD_GROUPS"] +HistoricalMetricNameType = Literal["ABANDON_TIME", + "AFTER_CONTACT_WORK_TIME", + "API_CONTACTS_HANDLED", + "CALLBACK_CONTACTS_HANDLED", + "CONTACTS_ABANDONED", + "CONTACTS_AGENT_HUNG_UP_FIRST", + "CONTACTS_CONSULTED", + "CONTACTS_HANDLED", + "CONTACTS_HANDLED_INCOMING", + "CONTACTS_HANDLED_OUTBOUND", + "CONTACTS_HOLD_ABANDONS", + "CONTACTS_MISSED", + "CONTACTS_QUEUED", + "CONTACTS_TRANSFERRED_IN", + "CONTACTS_TRANSFERRED_IN_FROM_QUEUE", + "CONTACTS_TRANSFERRED_OUT", + "CONTACTS_TRANSFERRED_OUT_FROM_QUEUE", + "HANDLE_TIME", + "HOLD_TIME", + "INTERACTION_AND_HOLD_TIME", + "INTERACTION_TIME", + "OCCUPANCY", + "QUEUED_TIME", + "QUEUE_ANSWER_TIME", + "SERVICE_LEVEL",] +HoursOfOperationDaysType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +InstanceAttributeTypeType = Literal["AUTO_RESOLVE_BEST_VOICES", + "CONTACTFLOW_LOGS", + "CONTACT_LENS", + "EARLY_MEDIA", + "ENHANCED_CHAT_MONITORING", + "ENHANCED_CONTACT_MONITORING", + "HIGH_VOLUME_OUTBOUND", + "INBOUND_CALLS", + "MULTI_PARTY_CONFERENCE", + "OUTBOUND_CALLS", + "USE_CUSTOM_TTS_VOICES",] +InstanceStatusType = Literal["ACTIVE", "CREATION_FAILED", "CREATION_IN_PROGRESS"] +InstanceStorageResourceTypeType = Literal["AGENT_EVENTS", + "ATTACHMENTS", + "CALL_RECORDINGS", + "CHAT_TRANSCRIPTS", + "CONTACT_EVALUATIONS", + "CONTACT_TRACE_RECORDS", + "MEDIA_STREAMS", + "REAL_TIME_CONTACT_ANALYSIS_CHAT_SEGMENTS", + "REAL_TIME_CONTACT_ANALYSIS_SEGMENTS", + "REAL_TIME_CONTACT_ANALYSIS_VOICE_SEGMENTS", + "SCHEDULED_REPORTS", + "SCREEN_RECORDINGS",] +IntegrationTypeType = Literal["APPLICATION", + "CASES_DOMAIN", + "EVENT", + "FILE_SCANNER", + "PINPOINT_APP", + "VOICE_ID", + "WISDOM_ASSISTANT", + "WISDOM_KNOWLEDGE_BASE", + "WISDOM_QUICK_RESPONSES",] +IntervalPeriodType = Literal["DAY", "FIFTEEN_MIN", "HOUR", "THIRTY_MIN", "TOTAL", "WEEK"] +LexVersionType = Literal["V1", "V2"] +ListAgentStatusesPaginatorName = Literal["list_agent_statuses"] +ListApprovedOriginsPaginatorName = Literal["list_approved_origins"] +ListAuthenticationProfilesPaginatorName = Literal["list_authentication_profiles"] +ListBotsPaginatorName = Literal["list_bots"] +ListContactEvaluationsPaginatorName = Literal["list_contact_evaluations"] +ListContactFlowModulesPaginatorName = Literal["list_contact_flow_modules"] +ListContactFlowsPaginatorName = Literal["list_contact_flows"] +ListContactReferencesPaginatorName = Literal["list_contact_references"] +ListDefaultVocabulariesPaginatorName = Literal["list_default_vocabularies"] +ListEvaluationFormVersionsPaginatorName = Literal["list_evaluation_form_versions"] +ListEvaluationFormsPaginatorName = Literal["list_evaluation_forms"] +ListFlowAssociationResourceTypeType = Literal["VOICE_PHONE_NUMBER"] +ListFlowAssociationsPaginatorName = Literal["list_flow_associations"] +ListHoursOfOperationsPaginatorName = Literal["list_hours_of_operations"] +ListInstanceAttributesPaginatorName = Literal["list_instance_attributes"] +ListInstanceStorageConfigsPaginatorName = Literal["list_instance_storage_configs"] +ListInstancesPaginatorName = Literal["list_instances"] +ListIntegrationAssociationsPaginatorName = Literal["list_integration_associations"] +ListLambdaFunctionsPaginatorName = Literal["list_lambda_functions"] +ListLexBotsPaginatorName = Literal["list_lex_bots"] +ListPhoneNumbersPaginatorName = Literal["list_phone_numbers"] +ListPhoneNumbersV2PaginatorName = Literal["list_phone_numbers_v2"] +ListPredefinedAttributesPaginatorName = Literal["list_predefined_attributes"] +ListPromptsPaginatorName = Literal["list_prompts"] +ListQueueQuickConnectsPaginatorName = Literal["list_queue_quick_connects"] +ListQueuesPaginatorName = Literal["list_queues"] +ListQuickConnectsPaginatorName = Literal["list_quick_connects"] +ListRoutingProfileQueuesPaginatorName = Literal["list_routing_profile_queues"] +ListRoutingProfilesPaginatorName = Literal["list_routing_profiles"] +ListRulesPaginatorName = Literal["list_rules"] +ListSecurityKeysPaginatorName = Literal["list_security_keys"] +ListSecurityProfileApplicationsPaginatorName = Literal["list_security_profile_applications"] +ListSecurityProfilePermissionsPaginatorName = Literal["list_security_profile_permissions"] +ListSecurityProfilesPaginatorName = Literal["list_security_profiles"] +ListTaskTemplatesPaginatorName = Literal["list_task_templates"] +ListTrafficDistributionGroupUsersPaginatorName = Literal["list_traffic_distribution_group_users"] +ListTrafficDistributionGroupsPaginatorName = Literal["list_traffic_distribution_groups"] +ListUseCasesPaginatorName = Literal["list_use_cases"] +ListUserHierarchyGroupsPaginatorName = Literal["list_user_hierarchy_groups"] +ListUserProficienciesPaginatorName = Literal["list_user_proficiencies"] +ListUsersPaginatorName = Literal["list_users"] +ListViewVersionsPaginatorName = Literal["list_view_versions"] +ListViewsPaginatorName = Literal["list_views"] +MeetingFeatureStatusType = Literal["AVAILABLE", "UNAVAILABLE"] +MonitorCapabilityType = Literal["BARGE", "SILENT_MONITOR"] +NotificationContentTypeType = Literal["PLAIN_TEXT"] +NotificationDeliveryTypeType = Literal["EMAIL"] +NumericQuestionPropertyAutomationLabelType = Literal["AGENT_INTERACTION_DURATION", + "CONTACT_DURATION", + "CUSTOMER_HOLD_TIME", + "NON_TALK_TIME", + "NON_TALK_TIME_PERCENTAGE", + "NUMBER_OF_INTERRUPTIONS", + "OVERALL_AGENT_SENTIMENT_SCORE", + "OVERALL_CUSTOMER_SENTIMENT_SCORE",] +ParticipantRoleType = Literal["AGENT", "CUSTOMER", "CUSTOM_BOT", "SUPERVISOR", "SYSTEM"] +ParticipantTimerActionType = Literal["Unset"] +ParticipantTimerTypeType = Literal["DISCONNECT_NONCUSTOMER", "IDLE"] +PhoneNumberCountryCodeType = Literal["AD", + "AE", + "AF", + "AG", + "AI", + "AL", + "AM", + "AN", + "AO", + "AQ", + "AR", + "AS", + "AT", + "AU", + "AW", + "AZ", + "BA", + "BB", + "BD", + "BE", + "BF", + "BG", + "BH", + "BI", + "BJ", + "BL", + "BM", + "BN", + "BO", + "BR", + "BS", + "BT", + "BW", + "BY", + "BZ", + "CA", + "CC", + "CD", + "CF", + "CG", + "CH", + "CI", + "CK", + "CL", + "CM", + "CN", + "CO", + "CR", + "CU", + "CV", + "CW", + "CX", + "CY", + "CZ", + "DE", + "DJ", + "DK", + "DM", + "DO", + "DZ", + "EC", + "EE", + "EG", + "EH", + "ER", + "ES", + "ET", + "FI", + "FJ", + "FK", + "FM", + "FO", + "FR", + "GA", + "GB", + "GD", + "GE", + "GG", + "GH", + "GI", + "GL", + "GM", + "GN", + "GQ", + "GR", + "GT", + "GU", + "GW", + "GY", + "HK", + "HN", + "HR", + "HT", + "HU", + "ID", + "IE", + "IL", + "IM", + "IN", + "IO", + "IQ", + "IR", + "IS", + "IT", + "JE", + "JM", + "JO", + "JP", + "KE", + "KG", + "KH", + "KI", + "KM", + "KN", + "KP", + "KR", + "KW", + "KY", + "KZ", + "LA", + "LB", + "LC", + "LI", + "LK", + "LR", + "LS", + "LT", + "LU", + "LV", + "LY", + "MA", + "MC", + "MD", + "ME", + "MF", + "MG", + "MH", + "MK", + "ML", + "MM", + "MN", + "MO", + "MP", + "MR", + "MS", + "MT", + "MU", + "MV", + "MW", + "MX", + "MY", + "MZ", + "NA", + "NC", + "NE", + "NG", + "NI", + "NL", + "NO", + "NP", + "NR", + "NU", + "NZ", + "OM", + "PA", + "PE", + "PF", + "PG", + "PH", + "PK", + "PL", + "PM", + "PN", + "PR", + "PT", + "PW", + "PY", + "QA", + "RE", + "RO", + "RS", + "RU", + "RW", + "SA", + "SB", + "SC", + "SD", + "SE", + "SG", + "SH", + "SI", + "SJ", + "SK", + "SL", + "SM", + "SN", + "SO", + "SR", + "ST", + "SV", + "SX", + "SY", + "SZ", + "TC", + "TD", + "TG", + "TH", + "TJ", + "TK", + "TL", + "TM", + "TN", + "TO", + "TR", + "TT", + "TV", + "TW", + "TZ", + "UA", + "UG", + "US", + "UY", + "UZ", + "VA", + "VC", + "VE", + "VG", + "VI", + "VN", + "VU", + "WF", + "WS", + "YE", + "YT", + "ZA", + "ZM", + "ZW",] +PhoneNumberTypeType = Literal["DID", "SHARED", "SHORT_CODE", "THIRD_PARTY_DID", "THIRD_PARTY_TF", "TOLL_FREE", "UIFN"] +PhoneNumberWorkflowStatusType = Literal["CLAIMED", "FAILED", "IN_PROGRESS"] +PhoneTypeType = Literal["DESK_PHONE", "SOFT_PHONE"] +QueueStatusType = Literal["DISABLED", "ENABLED"] +QueueTypeType = Literal["AGENT", "STANDARD"] +QuickConnectTypeType = Literal["PHONE_NUMBER", "QUEUE", "USER"] +RealTimeContactAnalysisOutputTypeType = Literal["Raw", "Redacted"] +RealTimeContactAnalysisSegmentTypeType = Literal["Attachments", "Categories", "Event", "Issues", "Transcript"] +RealTimeContactAnalysisSentimentLabelType = Literal["NEGATIVE", "NEUTRAL", "POSITIVE"] +RealTimeContactAnalysisStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +RealTimeContactAnalysisSupportedChannelType = Literal["CHAT", "VOICE"] +ReferenceStatusType = Literal["APPROVED", "REJECTED"] +ReferenceTypeType = Literal["ATTACHMENT", "DATE", "EMAIL", "NUMBER", "STRING", "URL"] +RehydrationTypeType = Literal["ENTIRE_PAST_SESSION", "FROM_SEGMENT"] +RoutingCriteriaStepStatusType = Literal["ACTIVE", "EXPIRED", "INACTIVE", "JOINED"] +RulePublishStatusType = Literal["DRAFT", "PUBLISHED"] +SearchAvailablePhoneNumbersPaginatorName = Literal["search_available_phone_numbers"] +SearchContactFlowModulesPaginatorName = Literal["search_contact_flow_modules"] +SearchContactFlowsPaginatorName = Literal["search_contact_flows"] +SearchContactsMatchTypeType = Literal["MATCH_ALL", "MATCH_ANY"] +SearchContactsPaginatorName = Literal["search_contacts"] +SearchContactsTimeRangeTypeType = Literal["CONNECTED_TO_AGENT_TIMESTAMP", + "DISCONNECT_TIMESTAMP", + "INITIATION_TIMESTAMP", + "SCHEDULED_TIMESTAMP",] +SearchHoursOfOperationsPaginatorName = Literal["search_hours_of_operations"] +SearchPredefinedAttributesPaginatorName = Literal["search_predefined_attributes"] +SearchPromptsPaginatorName = Literal["search_prompts"] +SearchQueuesPaginatorName = Literal["search_queues"] +SearchQuickConnectsPaginatorName = Literal["search_quick_connects"] +SearchResourceTagsPaginatorName = Literal["search_resource_tags"] +SearchRoutingProfilesPaginatorName = Literal["search_routing_profiles"] +SearchSecurityProfilesPaginatorName = Literal["search_security_profiles"] +SearchUsersPaginatorName = Literal["search_users"] +SearchVocabulariesPaginatorName = Literal["search_vocabularies"] +SearchableQueueTypeType = Literal["STANDARD"] +SingleSelectQuestionRuleCategoryAutomationConditionType = Literal["NOT_PRESENT", "PRESENT"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +SortableFieldNameType = Literal["CHANNEL", + "CONNECTED_TO_AGENT_TIMESTAMP", + "DISCONNECT_TIMESTAMP", + "INITIATION_METHOD", + "INITIATION_TIMESTAMP", + "SCHEDULED_TIMESTAMP",] +SourceTypeType = Literal["CASES", "SALESFORCE", "ZENDESK"] +StatisticType = Literal["AVG", "MAX", "SUM"] +StorageTypeType = Literal["KINESIS_FIREHOSE", "KINESIS_STREAM", "KINESIS_VIDEO_STREAM", "S3"] +StringComparisonTypeType = Literal["CONTAINS", "EXACT", "STARTS_WITH"] +TaskTemplateFieldTypeType = Literal["BOOLEAN", + "DATE_TIME", + "DESCRIPTION", + "EMAIL", + "NAME", + "NUMBER", + "QUICK_CONNECT", + "SCHEDULED_TIME", + "SINGLE_SELECT", + "TEXT", + "TEXT_AREA", + "URL",] +TaskTemplateStatusType = Literal["ACTIVE", "INACTIVE"] +TimerEligibleParticipantRolesType = Literal["AGENT", "CUSTOMER"] +TrafficDistributionGroupStatusType = Literal["ACTIVE", + "CREATION_FAILED", + "CREATION_IN_PROGRESS", + "DELETION_FAILED", + "PENDING_DELETION", + "UPDATE_IN_PROGRESS",] +TrafficTypeType = Literal["CAMPAIGN", "GENERAL"] +UnitType = Literal["COUNT", "PERCENT", "SECONDS"] +UseCaseTypeType = Literal["CONNECT_CAMPAIGNS", "RULES_EVALUATION"] +VideoCapabilityType = Literal["SEND"] +ViewStatusType = Literal["PUBLISHED", "SAVED"] +ViewTypeType = Literal["AWS_MANAGED", "CUSTOMER_MANAGED"] +VocabularyLanguageCodeType = Literal["ar-AE", + "de-CH", + "de-DE", + "en-AB", + "en-AU", + "en-GB", + "en-IE", + "en-IN", + "en-NZ", + "en-US", + "en-WL", + "en-ZA", + "es-ES", + "es-US", + "fr-CA", + "fr-FR", + "hi-IN", + "it-IT", + "ja-JP", + "ko-KR", + "pt-BR", + "pt-PT", + "zh-CN",] +VocabularyStateType = Literal["ACTIVE", "CREATION_FAILED", "CREATION_IN_PROGRESS", "DELETE_IN_PROGRESS"] +VoiceRecordingTrackType = Literal["ALL", "FROM_AGENT", "TO_AGENT"] +ConnectServiceName = Literal["connect"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_metric_data", + "list_agent_statuses", + "list_approved_origins", + "list_authentication_profiles", + "list_bots", + "list_contact_evaluations", + "list_contact_flow_modules", + "list_contact_flows", + "list_contact_references", + "list_default_vocabularies", + "list_evaluation_form_versions", + "list_evaluation_forms", + "list_flow_associations", + "list_hours_of_operations", + "list_instance_attributes", + "list_instance_storage_configs", + "list_instances", + "list_integration_associations", + "list_lambda_functions", + "list_lex_bots", + "list_phone_numbers", + "list_phone_numbers_v2", + "list_predefined_attributes", + "list_prompts", + "list_queue_quick_connects", + "list_queues", + "list_quick_connects", + "list_routing_profile_queues", + "list_routing_profiles", + "list_rules", + "list_security_keys", + "list_security_profile_applications", + "list_security_profile_permissions", + "list_security_profiles", + "list_task_templates", + "list_traffic_distribution_group_users", + "list_traffic_distribution_groups", + "list_use_cases", + "list_user_hierarchy_groups", + "list_user_proficiencies", + "list_users", + "list_view_versions", + "list_views", + "search_available_phone_numbers", + "search_contact_flow_modules", + "search_contact_flows", + "search_contacts", + "search_hours_of_operations", + "search_predefined_attributes", + "search_prompts", + "search_queues", + "search_quick_connects", + "search_resource_tags", + "search_routing_profiles", + "search_security_profiles", + "search_users", + "search_vocabularies",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +EvaluationFormItemUnionTypeDef = Union[ "'EvaluationFormItemTypeDef'", "'EvaluationFormItemOutputTypeDef'" ] +TimestampTypeDef = Union[datetime, str] +ApplicationUnionTypeDef = Union['ApplicationTypeDef', 'ApplicationExtraOutputTypeDef'] +PredefinedAttributeValuesUnionTypeDef = Union[ 'PredefinedAttributeValuesTypeDef', 'PredefinedAttributeValuesExtraOutputTypeDef' ] +AgentConfigUnionTypeDef = Union['AgentConfigTypeDef', 'AgentConfigOutputTypeDef'] +TelephonyConfigUnionTypeDef = Union['TelephonyConfigTypeDef', 'TelephonyConfigOutputTypeDef'] +TaskTemplateFieldUnionTypeDef = Union['TaskTemplateFieldTypeDef', 'TaskTemplateFieldOutputTypeDef'] +MetricV2UnionTypeDef = Union['MetricV2TypeDef', 'MetricV2OutputTypeDef'] +SignInConfigUnionTypeDef = Union['SignInConfigTypeDef', 'SignInConfigOutputTypeDef'] +TaskTemplateConstraintsUnionTypeDef = Union[ 'TaskTemplateConstraintsTypeDef', 'TaskTemplateConstraintsOutputTypeDef' ] +TaskTemplateDefaultsUnionTypeDef = Union[ 'TaskTemplateDefaultsTypeDef', 'TaskTemplateDefaultsOutputTypeDef' ] +RuleActionUnionTypeDef = Union['RuleActionTypeDef', 'RuleActionOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/connect_contact_lens_classes.py b/aws_resource_validator/pydantic_models/connect_contact_lens_classes.py new file mode 100644 index 00000000..b89428f2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/connect_contact_lens_classes.py @@ -0,0 +1,63 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.connect_contact_lens_constants import * + +class PointOfInterestTypeDef(BaseModel): + BeginOffsetMillis: int + EndOffsetMillis: int + +class CharacterOffsetsTypeDef(BaseModel): + BeginOffsetChar: int + EndOffsetChar: int + +class ListRealtimeContactAnalysisSegmentsRequestRequestTypeDef(BaseModel): + InstanceId: str + ContactId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CategoryDetailsTypeDef(BaseModel): + PointsOfInterest: List[PointOfInterestTypeDef] + +class IssueDetectedTypeDef(BaseModel): + CharacterOffsets: CharacterOffsetsTypeDef + +class CategoriesTypeDef(BaseModel): + MatchedCategories: List[str] + MatchedDetails: Dict[str, CategoryDetailsTypeDef] + +class TranscriptTypeDef(BaseModel): + Id: str + ParticipantId: str + ParticipantRole: str + Content: str + BeginOffsetMillis: int + EndOffsetMillis: int + Sentiment: SentimentValueType + IssuesDetected: Optional[List[IssueDetectedTypeDef]] = None + +class RealtimeContactAnalysisSegmentTypeDef(BaseModel): + Transcript: Optional[TranscriptTypeDef] = None + Categories: Optional[CategoriesTypeDef] = None + +class ListRealtimeContactAnalysisSegmentsResponseTypeDef(BaseModel): + Segments: List[RealtimeContactAnalysisSegmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/connect_contact_lens_constants.py b/aws_resource_validator/pydantic_models/connect_contact_lens_constants.py new file mode 100644 index 00000000..eda5fde7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/connect_contact_lens_constants.py @@ -0,0 +1,399 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +SentimentValueType = Literal["NEGATIVE", "NEUTRAL", "POSITIVE"] +ConnectContactLensServiceName = Literal["connect-contact-lens"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/connectcampaigns_classes.py b/aws_resource_validator/pydantic_models/connectcampaigns_classes.py new file mode 100644 index 00000000..b56ad02d --- /dev/null +++ b/aws_resource_validator/pydantic_models/connectcampaigns_classes.py @@ -0,0 +1,244 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.connectcampaigns_constants import * + +class AgentlessDialerConfigTypeDef(BaseModel): + dialingCapacity: Optional[float] = None + +class AnswerMachineDetectionConfigTypeDef(BaseModel): + enableAnswerMachineDetection: bool + awaitAnswerMachinePrompt: Optional[bool] = None + +class InstanceIdFilterTypeDef(BaseModel): + value: str + operator: Literal["Eq"] + +class CampaignSummaryTypeDef(BaseModel): + id: str + arn: str + name: str + connectInstanceId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteCampaignRequestRequestTypeDef(BaseModel): + id: str + +class DeleteConnectInstanceConfigRequestRequestTypeDef(BaseModel): + connectInstanceId: str + +class DeleteInstanceOnboardingJobRequestRequestTypeDef(BaseModel): + connectInstanceId: str + +class DescribeCampaignRequestRequestTypeDef(BaseModel): + id: str + +class PredictiveDialerConfigTypeDef(BaseModel): + bandwidthAllocation: float + dialingCapacity: Optional[float] = None + +class ProgressiveDialerConfigTypeDef(BaseModel): + bandwidthAllocation: float + dialingCapacity: Optional[float] = None + +class EncryptionConfigTypeDef(BaseModel): + enabled: bool + encryptionType: Optional[Literal["KMS"]] = None + keyArn: Optional[str] = None + +class FailedCampaignStateResponseTypeDef(BaseModel): + campaignId: Optional[str] = None + failureCode: Optional[GetCampaignStateBatchFailureCodeType] = None + +class FailedRequestTypeDef(BaseModel): + clientToken: Optional[str] = None + id: Optional[str] = None + failureCode: Optional[FailureCodeType] = None + +class GetCampaignStateBatchRequestRequestTypeDef(BaseModel): + campaignIds: Sequence[str] + +class SuccessfulCampaignStateResponseTypeDef(BaseModel): + campaignId: Optional[str] = None + state: Optional[CampaignStateType] = None + +class GetCampaignStateRequestRequestTypeDef(BaseModel): + id: str + +class GetConnectInstanceConfigRequestRequestTypeDef(BaseModel): + connectInstanceId: str + +class GetInstanceOnboardingJobStatusRequestRequestTypeDef(BaseModel): + connectInstanceId: str + +class InstanceOnboardingJobStatusTypeDef(BaseModel): + connectInstanceId: str + status: InstanceOnboardingJobStatusCodeType + failureCode: Optional[InstanceOnboardingJobFailureCodeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + arn: str + +class PauseCampaignRequestRequestTypeDef(BaseModel): + id: str + +class SuccessfulRequestTypeDef(BaseModel): + clientToken: Optional[str] = None + id: Optional[str] = None + +class ResumeCampaignRequestRequestTypeDef(BaseModel): + id: str + +class StartCampaignRequestRequestTypeDef(BaseModel): + id: str + +class StopCampaignRequestRequestTypeDef(BaseModel): + id: str + +class TagResourceRequestRequestTypeDef(BaseModel): + arn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + arn: str + tagKeys: Sequence[str] + +class UpdateCampaignNameRequestRequestTypeDef(BaseModel): + id: str + name: str + +class OutboundCallConfigTypeDef(BaseModel): + connectContactFlowId: str + connectSourcePhoneNumber: Optional[str] = None + connectQueueId: Optional[str] = None + answerMachineDetectionConfig: Optional[AnswerMachineDetectionConfigTypeDef] = None + +class UpdateCampaignOutboundCallConfigRequestRequestTypeDef(BaseModel): + id: str + connectContactFlowId: Optional[str] = None + connectSourcePhoneNumber: Optional[str] = None + answerMachineDetectionConfig: Optional[AnswerMachineDetectionConfigTypeDef] = None + +class CampaignFiltersTypeDef(BaseModel): + instanceIdFilter: Optional[InstanceIdFilterTypeDef] = None + +class CreateCampaignResponseTypeDef(BaseModel): + id: str + arn: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCampaignStateResponseTypeDef(BaseModel): + state: CampaignStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListCampaignsResponseTypeDef(BaseModel): + nextToken: str + campaignSummaryList: List[CampaignSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DialRequestTypeDef(BaseModel): + clientToken: str + phoneNumber: str + expirationTime: TimestampTypeDef + attributes: Mapping[str, str] + +class DialerConfigTypeDef(BaseModel): + progressiveDialerConfig: Optional[ProgressiveDialerConfigTypeDef] = None + predictiveDialerConfig: Optional[PredictiveDialerConfigTypeDef] = None + agentlessDialerConfig: Optional[AgentlessDialerConfigTypeDef] = None + +class InstanceConfigTypeDef(BaseModel): + connectInstanceId: str + serviceLinkedRoleArn: str + encryptionConfig: EncryptionConfigTypeDef + +class StartInstanceOnboardingJobRequestRequestTypeDef(BaseModel): + connectInstanceId: str + encryptionConfig: EncryptionConfigTypeDef + +class GetCampaignStateBatchResponseTypeDef(BaseModel): + successfulRequests: List[SuccessfulCampaignStateResponseTypeDef] + failedRequests: List[FailedCampaignStateResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceOnboardingJobStatusResponseTypeDef(BaseModel): + connectInstanceOnboardingJobStatus: InstanceOnboardingJobStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartInstanceOnboardingJobResponseTypeDef(BaseModel): + connectInstanceOnboardingJobStatus: InstanceOnboardingJobStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDialRequestBatchResponseTypeDef(BaseModel): + successfulRequests: List[SuccessfulRequestTypeDef] + failedRequests: List[FailedRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCampaignsRequestListCampaignsPaginateTypeDef(BaseModel): + filters: Optional[CampaignFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCampaignsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filters: Optional[CampaignFiltersTypeDef] = None + +class PutDialRequestBatchRequestRequestTypeDef(BaseModel): + id: str + dialRequests: Sequence[DialRequestTypeDef] + +class CampaignTypeDef(BaseModel): + id: str + arn: str + name: str + connectInstanceId: str + dialerConfig: DialerConfigTypeDef + outboundCallConfig: OutboundCallConfigTypeDef + tags: Optional[Dict[str, str]] = None + +class CreateCampaignRequestRequestTypeDef(BaseModel): + name: str + connectInstanceId: str + dialerConfig: DialerConfigTypeDef + outboundCallConfig: OutboundCallConfigTypeDef + tags: Optional[Mapping[str, str]] = None + +class UpdateCampaignDialerConfigRequestRequestTypeDef(BaseModel): + id: str + dialerConfig: DialerConfigTypeDef + +class GetConnectInstanceConfigResponseTypeDef(BaseModel): + connectInstanceConfig: InstanceConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCampaignResponseTypeDef(BaseModel): + campaign: CampaignTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/connectcampaigns_constants.py b/aws_resource_validator/pydantic_models/connectcampaigns_constants.py new file mode 100644 index 00000000..8323ad3a --- /dev/null +++ b/aws_resource_validator/pydantic_models/connectcampaigns_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CampaignStateType = Literal["Failed", "Initialized", "Paused", "Running", "Stopped"] +EncryptionTypeType = Literal["KMS"] +FailureCodeType = Literal["InvalidInput", "RequestThrottled", "UnknownError"] +GetCampaignStateBatchFailureCodeType = Literal["ResourceNotFound", "UnknownError"] +InstanceIdFilterOperatorType = Literal["Eq"] +InstanceOnboardingJobFailureCodeType = Literal["EVENT_BRIDGE_ACCESS_DENIED", + "EVENT_BRIDGE_MANAGED_RULE_LIMIT_EXCEEDED", + "IAM_ACCESS_DENIED", + "INTERNAL_FAILURE", + "KMS_ACCESS_DENIED", + "KMS_KEY_NOT_FOUND",] +InstanceOnboardingJobStatusCodeType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +ListCampaignsPaginatorName = Literal["list_campaigns"] +ConnectCampaignServiceServiceName = Literal["connectcampaigns"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_campaigns"] +RegionName = Literal["ap-southeast-2", "ca-central-1", "eu-central-1", "eu-west-2", "us-east-1", "us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/connectcases_classes.py b/aws_resource_validator/pydantic_models/connectcases_classes.py new file mode 100644 index 00000000..685130ed --- /dev/null +++ b/aws_resource_validator/pydantic_models/connectcases_classes.py @@ -0,0 +1,607 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.connectcases_constants import * + +class AuditEventFieldValueUnionTypeDef(BaseModel): + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + emptyValue: Optional[Dict[str, Any]] = None + stringValue: Optional[str] = None + userArnValue: Optional[str] = None + +class UserUnionTypeDef(BaseModel): + userArn: Optional[str] = None + +class FieldIdentifierTypeDef(BaseModel): + id: str + +class FieldErrorTypeDef(BaseModel): + errorCode: str + id: str + message: Optional[str] = None + +class GetFieldResponseTypeDef(BaseModel): + fieldArn: str + fieldId: str + name: str + namespace: FieldNamespaceType + type: FieldTypeType + createdTime: Optional[datetime] = None + deleted: Optional[bool] = None + description: Optional[str] = None + lastModifiedTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class FieldOptionTypeDef(BaseModel): + active: bool + name: str + value: str + +class FieldOptionErrorTypeDef(BaseModel): + errorCode: str + message: str + value: str + +class CaseSummaryTypeDef(BaseModel): + caseId: str + templateId: str + +class CommentContentTypeDef(BaseModel): + body: str + contentType: Literal["Text/Plain"] + +class ContactContentTypeDef(BaseModel): + channel: str + connectedToSystemTime: datetime + contactArn: str + +class ContactFilterTypeDef(BaseModel): + channel: Optional[Sequence[str]] = None + contactArn: Optional[str] = None + +class ContactTypeDef(BaseModel): + contactArn: str + +class CreateDomainRequestRequestTypeDef(BaseModel): + name: str + +class CreateFieldRequestRequestTypeDef(BaseModel): + domainId: str + name: str + type: FieldTypeType + description: Optional[str] = None + +class LayoutConfigurationTypeDef(BaseModel): + defaultLayout: Optional[str] = None + +class RequiredFieldTypeDef(BaseModel): + fieldId: str + +class DeleteDomainRequestRequestTypeDef(BaseModel): + domainId: str + +class DeleteFieldRequestRequestTypeDef(BaseModel): + domainId: str + fieldId: str + +class DeleteLayoutRequestRequestTypeDef(BaseModel): + domainId: str + layoutId: str + +class DeleteTemplateRequestRequestTypeDef(BaseModel): + domainId: str + templateId: str + +class DomainSummaryTypeDef(BaseModel): + domainArn: str + domainId: str + name: str + +class RelatedItemEventIncludedDataTypeDef(BaseModel): + includeContent: bool + +class FieldItemTypeDef(BaseModel): + id: str + +class FieldSummaryTypeDef(BaseModel): + fieldArn: str + fieldId: str + name: str + namespace: FieldNamespaceType + type: FieldTypeType + +class FieldValueUnionExtraOutputTypeDef(BaseModel): + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + emptyValue: Optional[Dict[str, Any]] = None + stringValue: Optional[str] = None + userArnValue: Optional[str] = None + +class FieldValueUnionOutputTypeDef(BaseModel): + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + emptyValue: Optional[Dict[str, Any]] = None + stringValue: Optional[str] = None + userArnValue: Optional[str] = None + +class FieldValueUnionTypeDef(BaseModel): + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + emptyValue: Optional[Mapping[str, Any]] = None + stringValue: Optional[str] = None + userArnValue: Optional[str] = None + +class FileContentTypeDef(BaseModel): + fileArn: str + +class FileFilterTypeDef(BaseModel): + fileArn: Optional[str] = None + +class GetCaseAuditEventsRequestRequestTypeDef(BaseModel): + caseId: str + domainId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetCaseEventConfigurationRequestRequestTypeDef(BaseModel): + domainId: str + +class GetDomainRequestRequestTypeDef(BaseModel): + domainId: str + +class GetLayoutRequestRequestTypeDef(BaseModel): + domainId: str + layoutId: str + +class GetTemplateRequestRequestTypeDef(BaseModel): + domainId: str + templateId: str + +class LayoutSummaryTypeDef(BaseModel): + layoutArn: str + layoutId: str + name: str + +class ListCasesForContactRequestRequestTypeDef(BaseModel): + contactArn: str + domainId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFieldOptionsRequestRequestTypeDef(BaseModel): + domainId: str + fieldId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + values: Optional[Sequence[str]] = None + +class ListFieldsRequestRequestTypeDef(BaseModel): + domainId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLayoutsRequestRequestTypeDef(BaseModel): + domainId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + arn: str + +class ListTemplatesRequestRequestTypeDef(BaseModel): + domainId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[Sequence[TemplateStatusType]] = None + +class TemplateSummaryTypeDef(BaseModel): + name: str + status: TemplateStatusType + templateArn: str + templateId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class SortTypeDef(BaseModel): + fieldId: str + sortOrder: OrderType + +class TagResourceRequestRequestTypeDef(BaseModel): + arn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + arn: str + tagKeys: Sequence[str] + +class UpdateFieldRequestRequestTypeDef(BaseModel): + domainId: str + fieldId: str + description: Optional[str] = None + name: Optional[str] = None + +class AuditEventFieldTypeDef(BaseModel): + eventFieldId: str + newValue: AuditEventFieldValueUnionTypeDef + oldValue: Optional[AuditEventFieldValueUnionTypeDef] = None + +class AuditEventPerformedByTypeDef(BaseModel): + iamPrincipalArn: str + user: Optional[UserUnionTypeDef] = None + +class BatchGetFieldRequestRequestTypeDef(BaseModel): + domainId: str + fields: Sequence[FieldIdentifierTypeDef] + +class CaseEventIncludedDataOutputTypeDef(BaseModel): + fields: List[FieldIdentifierTypeDef] + +class CaseEventIncludedDataTypeDef(BaseModel): + fields: Sequence[FieldIdentifierTypeDef] + +class GetCaseRequestRequestTypeDef(BaseModel): + caseId: str + domainId: str + fields: Sequence[FieldIdentifierTypeDef] + nextToken: Optional[str] = None + +class BatchGetFieldResponseTypeDef(BaseModel): + errors: List[FieldErrorTypeDef] + fields: List[GetFieldResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCaseResponseTypeDef(BaseModel): + caseArn: str + caseId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainResponseTypeDef(BaseModel): + domainArn: str + domainId: str + domainStatus: DomainStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFieldResponseTypeDef(BaseModel): + fieldArn: str + fieldId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLayoutResponseTypeDef(BaseModel): + layoutArn: str + layoutId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRelatedItemResponseTypeDef(BaseModel): + relatedItemArn: str + relatedItemId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateResponseTypeDef(BaseModel): + templateArn: str + templateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainResponseTypeDef(BaseModel): + createdTime: datetime + domainArn: str + domainId: str + domainStatus: DomainStatusType + name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutFieldOptionsRequestRequestTypeDef(BaseModel): + domainId: str + fieldId: str + options: Sequence[FieldOptionTypeDef] + +class ListFieldOptionsResponseTypeDef(BaseModel): + nextToken: str + options: List[FieldOptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutFieldOptionsResponseTypeDef(BaseModel): + errors: List[FieldOptionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCasesForContactResponseTypeDef(BaseModel): + cases: List[CaseSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateRequestRequestTypeDef(BaseModel): + domainId: str + name: str + description: Optional[str] = None + layoutConfiguration: Optional[LayoutConfigurationTypeDef] = None + requiredFields: Optional[Sequence[RequiredFieldTypeDef]] = None + status: Optional[TemplateStatusType] = None + +class GetTemplateResponseTypeDef(BaseModel): + createdTime: datetime + deleted: bool + description: str + lastModifiedTime: datetime + layoutConfiguration: LayoutConfigurationTypeDef + name: str + requiredFields: List[RequiredFieldTypeDef] + status: TemplateStatusType + tags: Dict[str, str] + templateArn: str + templateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTemplateRequestRequestTypeDef(BaseModel): + domainId: str + templateId: str + description: Optional[str] = None + layoutConfiguration: Optional[LayoutConfigurationTypeDef] = None + name: Optional[str] = None + requiredFields: Optional[Sequence[RequiredFieldTypeDef]] = None + status: Optional[TemplateStatusType] = None + +class ListDomainsResponseTypeDef(BaseModel): + domains: List[DomainSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FieldGroupOutputTypeDef(BaseModel): + fields: List[FieldItemTypeDef] + name: Optional[str] = None + +class FieldGroupTypeDef(BaseModel): + fields: Sequence[FieldItemTypeDef] + name: Optional[str] = None + +class ListFieldsResponseTypeDef(BaseModel): + fields: List[FieldSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FieldValueExtraOutputTypeDef(BaseModel): + id: str + value: FieldValueUnionExtraOutputTypeDef + +class FieldValueOutputTypeDef(BaseModel): + id: str + value: FieldValueUnionOutputTypeDef + +class FieldValueTypeDef(BaseModel): + id: str + value: FieldValueUnionTypeDef + +class RelatedItemContentTypeDef(BaseModel): + comment: Optional[CommentContentTypeDef] = None + contact: Optional[ContactContentTypeDef] = None + file: Optional[FileContentTypeDef] = None + +class RelatedItemInputContentTypeDef(BaseModel): + comment: Optional[CommentContentTypeDef] = None + contact: Optional[ContactTypeDef] = None + file: Optional[FileContentTypeDef] = None + +class RelatedItemTypeFilterTypeDef(BaseModel): + comment: Optional[Mapping[str, Any]] = None + contact: Optional[ContactFilterTypeDef] = None + file: Optional[FileFilterTypeDef] = None + +class ListLayoutsResponseTypeDef(BaseModel): + layouts: List[LayoutSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplatesResponseTypeDef(BaseModel): + nextToken: str + templates: List[TemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchCasesRequestRequestTypeDef(BaseModel): + domainId: str + fields: Optional[Sequence[FieldIdentifierTypeDef]] = None + filter: Optional["CaseFilterTypeDef"] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + searchTerm: Optional[str] = None + sorts: Optional[Sequence[SortTypeDef]] = None + +class AuditEventTypeDef(BaseModel): + eventId: str + fields: List[AuditEventFieldTypeDef] + performedTime: datetime + type: AuditEventTypeType + performedBy: Optional[AuditEventPerformedByTypeDef] = None + relatedItemType: Optional[RelatedItemTypeType] = None + +class EventIncludedDataOutputTypeDef(BaseModel): + caseData: Optional[CaseEventIncludedDataOutputTypeDef] = None + relatedItemData: Optional[RelatedItemEventIncludedDataTypeDef] = None + +class EventIncludedDataTypeDef(BaseModel): + caseData: Optional[CaseEventIncludedDataTypeDef] = None + relatedItemData: Optional[RelatedItemEventIncludedDataTypeDef] = None + +class SectionOutputTypeDef(BaseModel): + fieldGroup: Optional[FieldGroupOutputTypeDef] = None + +class SectionTypeDef(BaseModel): + fieldGroup: Optional[FieldGroupTypeDef] = None + +class GetCaseResponseTypeDef(BaseModel): + fields: List[FieldValueOutputTypeDef] + nextToken: str + tags: Dict[str, str] + templateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchCasesResponseItemTypeDef(BaseModel): + caseId: str + fields: List[FieldValueOutputTypeDef] + templateId: str + tags: Optional[Dict[str, str]] = None + +class FieldFilterTypeDef(BaseModel): + contains: Optional[FieldValueTypeDef] = None + equalTo: Optional[FieldValueTypeDef] = None + greaterThan: Optional[FieldValueTypeDef] = None + greaterThanOrEqualTo: Optional[FieldValueTypeDef] = None + lessThan: Optional[FieldValueTypeDef] = None + lessThanOrEqualTo: Optional[FieldValueTypeDef] = None + +class SearchRelatedItemsResponseItemTypeDef(BaseModel): + associationTime: datetime + content: RelatedItemContentTypeDef + relatedItemId: str + type: RelatedItemTypeType + performedBy: Optional[UserUnionTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateRelatedItemRequestRequestTypeDef(BaseModel): + caseId: str + content: RelatedItemInputContentTypeDef + domainId: str + type: RelatedItemTypeType + performedBy: Optional[UserUnionTypeDef] = None + +class SearchRelatedItemsRequestRequestTypeDef(BaseModel): + caseId: str + domainId: str + filters: Optional[Sequence[RelatedItemTypeFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchRelatedItemsRequestSearchRelatedItemsPaginateTypeDef(BaseModel): + caseId: str + domainId: str + filters: Optional[Sequence[RelatedItemTypeFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCaseAuditEventsResponseTypeDef(BaseModel): + auditEvents: List[AuditEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventBridgeConfigurationOutputTypeDef(BaseModel): + enabled: bool + includedData: Optional[EventIncludedDataOutputTypeDef] = None + +class EventBridgeConfigurationTypeDef(BaseModel): + enabled: bool + includedData: Optional[EventIncludedDataTypeDef] = None + +class LayoutSectionsOutputTypeDef(BaseModel): + sections: Optional[List[SectionOutputTypeDef]] = None + +class LayoutSectionsTypeDef(BaseModel): + sections: Optional[Sequence[SectionTypeDef]] = None + +class SearchCasesResponseTypeDef(BaseModel): + cases: List[SearchCasesResponseItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CaseFilterTypeDef(BaseModel): + andAll: Optional[Sequence[Dict[str, Any]]] = None + field: Optional[FieldFilterTypeDef] = None + not: Optional[Dict[str, Any]] = None + orAll: Optional[Sequence[Dict[str, Any]]] = None + +class CreateCaseRequestRequestTypeDef(BaseModel): + domainId: str + fields: Sequence[FieldValueExtraUnionTypeDef] + templateId: str + clientToken: Optional[str] = None + performedBy: Optional[UserUnionTypeDef] = None + +class UpdateCaseRequestRequestTypeDef(BaseModel): + caseId: str + domainId: str + fields: Sequence[FieldValueExtraUnionTypeDef] + performedBy: Optional[UserUnionTypeDef] = None + +class SearchRelatedItemsResponseTypeDef(BaseModel): + nextToken: str + relatedItems: List[SearchRelatedItemsResponseItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCaseEventConfigurationResponseTypeDef(BaseModel): + eventBridge: EventBridgeConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutCaseEventConfigurationRequestRequestTypeDef(BaseModel): + domainId: str + eventBridge: EventBridgeConfigurationTypeDef + +class BasicLayoutOutputTypeDef(BaseModel): + moreInfo: Optional[LayoutSectionsOutputTypeDef] = None + topPanel: Optional[LayoutSectionsOutputTypeDef] = None + +class BasicLayoutTypeDef(BaseModel): + moreInfo: Optional[LayoutSectionsTypeDef] = None + topPanel: Optional[LayoutSectionsTypeDef] = None + +class SearchCasesRequestSearchCasesPaginateTypeDef(BaseModel): + domainId: str + fields: Optional[Sequence[FieldIdentifierTypeDef]] = None + filter: Optional[CaseFilterTypeDef] = None + searchTerm: Optional[str] = None + sorts: Optional[Sequence[SortTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LayoutContentOutputTypeDef(BaseModel): + basic: Optional[BasicLayoutOutputTypeDef] = None + +class LayoutContentTypeDef(BaseModel): + basic: Optional[BasicLayoutTypeDef] = None + +class GetLayoutResponseTypeDef(BaseModel): + content: LayoutContentOutputTypeDef + createdTime: datetime + deleted: bool + lastModifiedTime: datetime + layoutArn: str + layoutId: str + name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLayoutRequestRequestTypeDef(BaseModel): + content: LayoutContentTypeDef + domainId: str + name: str + +class UpdateLayoutRequestRequestTypeDef(BaseModel): + domainId: str + layoutId: str + content: Optional[LayoutContentTypeDef] = None + name: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/connectcases_constants.py b/aws_resource_validator/pydantic_models/connectcases_constants.py new file mode 100644 index 00000000..486117c1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/connectcases_constants.py @@ -0,0 +1,418 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuditEventTypeType = Literal["Case.Created", "Case.Updated", "RelatedItem.Created"] +CommentBodyTextTypeType = Literal["Text/Plain"] +DomainStatusType = Literal["Active", "CreationFailed", "CreationInProgress"] +FieldNamespaceType = Literal["Custom", "System"] +FieldTypeType = Literal["Boolean", "DateTime", "Number", "SingleSelect", "Text", "Url", "User"] +OrderType = Literal["Asc", "Desc"] +RelatedItemTypeType = Literal["Comment", "Contact", "File"] +SearchCasesPaginatorName = Literal["search_cases"] +SearchRelatedItemsPaginatorName = Literal["search_related_items"] +TemplateStatusType = Literal["Active", "Inactive"] +ConnectCasesServiceName = Literal["connectcases"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["search_cases", "search_related_items"] +RegionName = Literal["ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +FieldValueExtraUnionTypeDef = Union['FieldValueTypeDef', 'FieldValueExtraOutputTypeDef'] +EventBridgeConfigurationUnionTypeDef = Union[ 'EventBridgeConfigurationTypeDef', 'EventBridgeConfigurationOutputTypeDef' ] +LayoutContentUnionTypeDef = Union['LayoutContentTypeDef', 'LayoutContentOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/connectparticipant_classes.py b/aws_resource_validator/pydantic_models/connectparticipant_classes.py new file mode 100644 index 00000000..28bf8c85 --- /dev/null +++ b/aws_resource_validator/pydantic_models/connectparticipant_classes.py @@ -0,0 +1,164 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.connectparticipant_constants import * + +class AttachmentItemTypeDef(BaseModel): + ContentType: Optional[str] = None + AttachmentId: Optional[str] = None + AttachmentName: Optional[str] = None + Status: Optional[ArtifactStatusType] = None + +class CompleteAttachmentUploadRequestRequestTypeDef(BaseModel): + AttachmentIds: Sequence[str] + ClientToken: str + ConnectionToken: str + +class ConnectionCredentialsTypeDef(BaseModel): + ConnectionToken: Optional[str] = None + Expiry: Optional[str] = None + +class CreateParticipantConnectionRequestRequestTypeDef(BaseModel): + ParticipantToken: str + Type: Optional[Sequence[ConnectionTypeType]] = None + ConnectParticipant: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class WebsocketTypeDef(BaseModel): + Url: Optional[str] = None + ConnectionExpiry: Optional[str] = None + +class DescribeViewRequestRequestTypeDef(BaseModel): + ViewToken: str + ConnectionToken: str + +class DisconnectParticipantRequestRequestTypeDef(BaseModel): + ConnectionToken: str + ClientToken: Optional[str] = None + +class GetAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + ConnectionToken: str + +class StartPositionTypeDef(BaseModel): + Id: Optional[str] = None + AbsoluteTime: Optional[str] = None + MostRecent: Optional[int] = None + +class ReceiptTypeDef(BaseModel): + DeliveredTimestamp: Optional[str] = None + ReadTimestamp: Optional[str] = None + RecipientParticipantId: Optional[str] = None + +class SendEventRequestRequestTypeDef(BaseModel): + ContentType: str + ConnectionToken: str + Content: Optional[str] = None + ClientToken: Optional[str] = None + +class SendMessageRequestRequestTypeDef(BaseModel): + ContentType: str + Content: str + ConnectionToken: str + ClientToken: Optional[str] = None + +class StartAttachmentUploadRequestRequestTypeDef(BaseModel): + ContentType: str + AttachmentSizeInBytes: int + AttachmentName: str + ClientToken: str + ConnectionToken: str + +class UploadMetadataTypeDef(BaseModel): + Url: Optional[str] = None + UrlExpiry: Optional[str] = None + HeadersToInclude: Optional[Dict[str, str]] = None + +class ViewContentTypeDef(BaseModel): + InputSchema: Optional[str] = None + Template: Optional[str] = None + Actions: Optional[List[str]] = None + +class GetAttachmentResponseTypeDef(BaseModel): + Url: str + UrlExpiry: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendEventResponseTypeDef(BaseModel): + Id: str + AbsoluteTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendMessageResponseTypeDef(BaseModel): + Id: str + AbsoluteTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateParticipantConnectionResponseTypeDef(BaseModel): + Websocket: WebsocketTypeDef + ConnectionCredentials: ConnectionCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTranscriptRequestRequestTypeDef(BaseModel): + ConnectionToken: str + ContactId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ScanDirection: Optional[ScanDirectionType] = None + SortOrder: Optional[SortKeyType] = None + StartPosition: Optional[StartPositionTypeDef] = None + +class MessageMetadataTypeDef(BaseModel): + MessageId: Optional[str] = None + Receipts: Optional[List[ReceiptTypeDef]] = None + +class StartAttachmentUploadResponseTypeDef(BaseModel): + AttachmentId: str + UploadMetadata: UploadMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ViewTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Version: Optional[int] = None + Content: Optional[ViewContentTypeDef] = None + +class ItemTypeDef(BaseModel): + AbsoluteTime: Optional[str] = None + Content: Optional[str] = None + ContentType: Optional[str] = None + Id: Optional[str] = None + Type: Optional[ChatItemTypeType] = None + ParticipantId: Optional[str] = None + DisplayName: Optional[str] = None + ParticipantRole: Optional[ParticipantRoleType] = None + Attachments: Optional[List[AttachmentItemTypeDef]] = None + MessageMetadata: Optional[MessageMetadataTypeDef] = None + RelatedContactId: Optional[str] = None + ContactId: Optional[str] = None + +class DescribeViewResponseTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTranscriptResponseTypeDef(BaseModel): + InitialContactId: str + Transcript: List[ItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/connectparticipant_constants.py b/aws_resource_validator/pydantic_models/connectparticipant_constants.py new file mode 100644 index 00000000..f65adedf --- /dev/null +++ b/aws_resource_validator/pydantic_models/connectparticipant_constants.py @@ -0,0 +1,419 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ArtifactStatusType = Literal["APPROVED", "IN_PROGRESS", "REJECTED"] +ChatItemTypeType = Literal["ATTACHMENT", + "CHAT_ENDED", + "CONNECTION_ACK", + "EVENT", + "MESSAGE", + "MESSAGE_DELIVERED", + "MESSAGE_READ", + "PARTICIPANT_JOINED", + "PARTICIPANT_LEFT", + "TRANSFER_FAILED", + "TRANSFER_SUCCEEDED", + "TYPING",] +ConnectionTypeType = Literal["CONNECTION_CREDENTIALS", "WEBSOCKET"] +ParticipantRoleType = Literal["AGENT", "CUSTOMER", "CUSTOM_BOT", "SUPERVISOR", "SYSTEM"] +ScanDirectionType = Literal["BACKWARD", "FORWARD"] +SortKeyType = Literal["ASCENDING", "DESCENDING"] +ConnectParticipantServiceName = Literal["connectparticipant"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/controlcatalog_classes.py b/aws_resource_validator/pydantic_models/controlcatalog_classes.py new file mode 100644 index 00000000..8ee58764 --- /dev/null +++ b/aws_resource_validator/pydantic_models/controlcatalog_classes.py @@ -0,0 +1,109 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.controlcatalog_constants import * + +class AssociatedDomainSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class AssociatedObjectiveSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class ObjectiveResourceFilterTypeDef(BaseModel): + Arn: Optional[str] = None + +class DomainResourceFilterTypeDef(BaseModel): + Arn: Optional[str] = None + +class DomainSummaryTypeDef(BaseModel): + Arn: str + CreateTime: datetime + Description: str + LastUpdateTime: datetime + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ObjectiveSummaryTypeDef(BaseModel): + Arn: str + CreateTime: datetime + Description: str + Domain: AssociatedDomainSummaryTypeDef + LastUpdateTime: datetime + Name: str + +class CommonControlSummaryTypeDef(BaseModel): + Arn: str + CreateTime: datetime + Description: str + Domain: AssociatedDomainSummaryTypeDef + LastUpdateTime: datetime + Name: str + Objective: AssociatedObjectiveSummaryTypeDef + +class CommonControlFilterTypeDef(BaseModel): + Objectives: Optional[Sequence[ObjectiveResourceFilterTypeDef]] = None + +class ObjectiveFilterTypeDef(BaseModel): + Domains: Optional[Sequence[DomainResourceFilterTypeDef]] = None + +class ListDomainsRequestListDomainsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsResponseTypeDef(BaseModel): + Domains: List[DomainSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListObjectivesResponseTypeDef(BaseModel): + NextToken: str + Objectives: List[ObjectiveSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCommonControlsResponseTypeDef(BaseModel): + CommonControls: List[CommonControlSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCommonControlsRequestListCommonControlsPaginateTypeDef(BaseModel): + CommonControlFilter: Optional[CommonControlFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCommonControlsRequestRequestTypeDef(BaseModel): + CommonControlFilter: Optional[CommonControlFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListObjectivesRequestListObjectivesPaginateTypeDef(BaseModel): + ObjectiveFilter: Optional[ObjectiveFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectivesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ObjectiveFilter: Optional[ObjectiveFilterTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/controlcatalog_constants.py b/aws_resource_validator/pydantic_models/controlcatalog_constants.py new file mode 100644 index 00000000..ec5ddd88 --- /dev/null +++ b/aws_resource_validator/pydantic_models/controlcatalog_constants.py @@ -0,0 +1,400 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListCommonControlsPaginatorName = Literal["list_common_controls"] +ListDomainsPaginatorName = Literal["list_domains"] +ListObjectivesPaginatorName = Literal["list_objectives"] +ControlCatalogServiceName = Literal["controlcatalog"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_common_controls", "list_domains", "list_objectives"] diff --git a/aws_resource_validator/pydantic_models/controltower_classes.py b/aws_resource_validator/pydantic_models/controltower_classes.py new file mode 100644 index 00000000..9ac0537b --- /dev/null +++ b/aws_resource_validator/pydantic_models/controltower_classes.py @@ -0,0 +1,407 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.controltower_constants import * + +class BaselineOperationTypeDef(BaseModel): + endTime: Optional[datetime] = None + operationIdentifier: Optional[str] = None + operationType: Optional[BaselineOperationTypeType] = None + startTime: Optional[datetime] = None + status: Optional[BaselineOperationStatusType] = None + statusMessage: Optional[str] = None + +class BaselineSummaryTypeDef(BaseModel): + arn: str + name: str + description: Optional[str] = None + +class ControlOperationFilterTypeDef(BaseModel): + controlIdentifiers: Optional[Sequence[str]] = None + controlOperationTypes: Optional[Sequence[ControlOperationTypeType]] = None + enabledControlIdentifiers: Optional[Sequence[str]] = None + statuses: Optional[Sequence[ControlOperationStatusType]] = None + targetIdentifiers: Optional[Sequence[str]] = None + +class ControlOperationSummaryTypeDef(BaseModel): + controlIdentifier: Optional[str] = None + enabledControlIdentifier: Optional[str] = None + endTime: Optional[datetime] = None + operationIdentifier: Optional[str] = None + operationType: Optional[ControlOperationTypeType] = None + startTime: Optional[datetime] = None + status: Optional[ControlOperationStatusType] = None + statusMessage: Optional[str] = None + targetIdentifier: Optional[str] = None + +class ControlOperationTypeDef(BaseModel): + controlIdentifier: Optional[str] = None + enabledControlIdentifier: Optional[str] = None + endTime: Optional[datetime] = None + operationIdentifier: Optional[str] = None + operationType: Optional[ControlOperationTypeType] = None + startTime: Optional[datetime] = None + status: Optional[ControlOperationStatusType] = None + statusMessage: Optional[str] = None + targetIdentifier: Optional[str] = None + +class CreateLandingZoneInputRequestTypeDef(BaseModel): + manifest: Mapping[str, Any] + version: str + tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteLandingZoneInputRequestTypeDef(BaseModel): + landingZoneIdentifier: str + +class DisableBaselineInputRequestTypeDef(BaseModel): + enabledBaselineIdentifier: str + +class DisableControlInputRequestTypeDef(BaseModel): + controlIdentifier: str + targetIdentifier: str + +class DriftStatusSummaryTypeDef(BaseModel): + driftStatus: Optional[DriftStatusType] = None + +class EnabledBaselineParameterTypeDef(BaseModel): + key: str + value: Mapping[str, Any] + +class EnabledControlParameterTypeDef(BaseModel): + key: str + value: Mapping[str, Any] + +class EnabledBaselineParameterSummaryTypeDef(BaseModel): + key: str + value: Dict[str, Any] + +class EnablementStatusSummaryTypeDef(BaseModel): + lastOperationIdentifier: Optional[str] = None + status: Optional[EnablementStatusType] = None + +class EnabledBaselineFilterTypeDef(BaseModel): + baselineIdentifiers: Optional[Sequence[str]] = None + targetIdentifiers: Optional[Sequence[str]] = None + +class EnabledControlParameterSummaryTypeDef(BaseModel): + key: str + value: Dict[str, Any] + +class RegionTypeDef(BaseModel): + name: Optional[str] = None + +class EnabledControlFilterTypeDef(BaseModel): + controlIdentifiers: Optional[Sequence[str]] = None + driftStatuses: Optional[Sequence[DriftStatusType]] = None + statuses: Optional[Sequence[EnablementStatusType]] = None + +class GetBaselineInputRequestTypeDef(BaseModel): + baselineIdentifier: str + +class GetBaselineOperationInputRequestTypeDef(BaseModel): + operationIdentifier: str + +class GetControlOperationInputRequestTypeDef(BaseModel): + operationIdentifier: str + +class GetEnabledBaselineInputRequestTypeDef(BaseModel): + enabledBaselineIdentifier: str + +class GetEnabledControlInputRequestTypeDef(BaseModel): + enabledControlIdentifier: str + +class GetLandingZoneInputRequestTypeDef(BaseModel): + landingZoneIdentifier: str + +class GetLandingZoneOperationInputRequestTypeDef(BaseModel): + operationIdentifier: str + +class LandingZoneOperationDetailTypeDef(BaseModel): + endTime: Optional[datetime] = None + operationIdentifier: Optional[str] = None + operationType: Optional[LandingZoneOperationTypeType] = None + startTime: Optional[datetime] = None + status: Optional[LandingZoneOperationStatusType] = None + statusMessage: Optional[str] = None + +class LandingZoneDriftStatusSummaryTypeDef(BaseModel): + status: Optional[LandingZoneDriftStatusType] = None + +class LandingZoneOperationFilterTypeDef(BaseModel): + statuses: Optional[Sequence[LandingZoneOperationStatusType]] = None + types: Optional[Sequence[LandingZoneOperationTypeType]] = None + +class LandingZoneOperationSummaryTypeDef(BaseModel): + operationIdentifier: Optional[str] = None + operationType: Optional[LandingZoneOperationTypeType] = None + status: Optional[LandingZoneOperationStatusType] = None + +class LandingZoneSummaryTypeDef(BaseModel): + arn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBaselinesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLandingZonesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class ResetEnabledBaselineInputRequestTypeDef(BaseModel): + enabledBaselineIdentifier: str + +class ResetLandingZoneInputRequestTypeDef(BaseModel): + landingZoneIdentifier: str + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateLandingZoneInputRequestTypeDef(BaseModel): + landingZoneIdentifier: str + manifest: Mapping[str, Any] + version: str + +class ListControlOperationsInputRequestTypeDef(BaseModel): + filter: Optional[ControlOperationFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class CreateLandingZoneOutputTypeDef(BaseModel): + arn: str + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLandingZoneOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableBaselineOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableControlOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnableBaselineOutputTypeDef(BaseModel): + arn: str + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnableControlOutputTypeDef(BaseModel): + arn: str + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBaselineOperationOutputTypeDef(BaseModel): + baselineOperation: BaselineOperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBaselineOutputTypeDef(BaseModel): + arn: str + description: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetControlOperationOutputTypeDef(BaseModel): + controlOperation: ControlOperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBaselinesOutputTypeDef(BaseModel): + baselines: List[BaselineSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListControlOperationsOutputTypeDef(BaseModel): + controlOperations: List[ControlOperationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ResetEnabledBaselineOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetLandingZoneOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnabledBaselineOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnabledControlOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLandingZoneOutputTypeDef(BaseModel): + operationIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnableBaselineInputRequestTypeDef(BaseModel): + baselineIdentifier: str + baselineVersion: str + targetIdentifier: str + parameters: Optional[Sequence[EnabledBaselineParameterTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateEnabledBaselineInputRequestTypeDef(BaseModel): + baselineVersion: str + enabledBaselineIdentifier: str + parameters: Optional[Sequence[EnabledBaselineParameterTypeDef]] = None + +class EnableControlInputRequestTypeDef(BaseModel): + controlIdentifier: str + targetIdentifier: str + parameters: Optional[Sequence[EnabledControlParameterTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateEnabledControlInputRequestTypeDef(BaseModel): + enabledControlIdentifier: str + parameters: Sequence[EnabledControlParameterTypeDef] + +class EnabledBaselineDetailsTypeDef(BaseModel): + arn: str + baselineIdentifier: str + statusSummary: EnablementStatusSummaryTypeDef + targetIdentifier: str + baselineVersion: Optional[str] = None + parameters: Optional[List[EnabledBaselineParameterSummaryTypeDef]] = None + +class EnabledBaselineSummaryTypeDef(BaseModel): + arn: str + baselineIdentifier: str + statusSummary: EnablementStatusSummaryTypeDef + targetIdentifier: str + baselineVersion: Optional[str] = None + +class EnabledControlSummaryTypeDef(BaseModel): + arn: Optional[str] = None + controlIdentifier: Optional[str] = None + driftStatusSummary: Optional[DriftStatusSummaryTypeDef] = None + statusSummary: Optional[EnablementStatusSummaryTypeDef] = None + targetIdentifier: Optional[str] = None + +class ListEnabledBaselinesInputRequestTypeDef(BaseModel): + filter: Optional[EnabledBaselineFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class EnabledControlDetailsTypeDef(BaseModel): + arn: Optional[str] = None + controlIdentifier: Optional[str] = None + driftStatusSummary: Optional[DriftStatusSummaryTypeDef] = None + parameters: Optional[List[EnabledControlParameterSummaryTypeDef]] = None + statusSummary: Optional[EnablementStatusSummaryTypeDef] = None + targetIdentifier: Optional[str] = None + targetRegions: Optional[List[RegionTypeDef]] = None + +class ListEnabledControlsInputRequestTypeDef(BaseModel): + filter: Optional[EnabledControlFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + targetIdentifier: Optional[str] = None + +class GetLandingZoneOperationOutputTypeDef(BaseModel): + operationDetails: LandingZoneOperationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LandingZoneDetailTypeDef(BaseModel): + manifest: Dict[str, Any] + version: str + arn: Optional[str] = None + driftStatus: Optional[LandingZoneDriftStatusSummaryTypeDef] = None + latestAvailableVersion: Optional[str] = None + status: Optional[LandingZoneStatusType] = None + +class ListLandingZoneOperationsInputRequestTypeDef(BaseModel): + filter: Optional[LandingZoneOperationFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLandingZoneOperationsOutputTypeDef(BaseModel): + landingZoneOperations: List[LandingZoneOperationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLandingZonesOutputTypeDef(BaseModel): + landingZones: List[LandingZoneSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBaselinesInputListBaselinesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListControlOperationsInputListControlOperationsPaginateTypeDef(BaseModel): + filter: Optional[ControlOperationFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnabledBaselinesInputListEnabledBaselinesPaginateTypeDef(BaseModel): + filter: Optional[EnabledBaselineFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnabledControlsInputListEnabledControlsPaginateTypeDef(BaseModel): + filter: Optional[EnabledControlFilterTypeDef] = None + targetIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLandingZoneOperationsInputListLandingZoneOperationsPaginateTypeDef(BaseModel): + filter: Optional[LandingZoneOperationFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLandingZonesInputListLandingZonesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetEnabledBaselineOutputTypeDef(BaseModel): + enabledBaselineDetails: EnabledBaselineDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnabledBaselinesOutputTypeDef(BaseModel): + enabledBaselines: List[EnabledBaselineSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnabledControlsOutputTypeDef(BaseModel): + enabledControls: List[EnabledControlSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnabledControlOutputTypeDef(BaseModel): + enabledControlDetails: EnabledControlDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLandingZoneOutputTypeDef(BaseModel): + landingZone: LandingZoneDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/controltower_constants.py b/aws_resource_validator/pydantic_models/controltower_constants.py new file mode 100644 index 00000000..bf927136 --- /dev/null +++ b/aws_resource_validator/pydantic_models/controltower_constants.py @@ -0,0 +1,450 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BaselineOperationStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +BaselineOperationTypeType = Literal["DISABLE_BASELINE", "ENABLE_BASELINE", "RESET_ENABLED_BASELINE", "UPDATE_ENABLED_BASELINE"] +ControlOperationStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +ControlOperationTypeType = Literal["DISABLE_CONTROL", "ENABLE_CONTROL", "UPDATE_ENABLED_CONTROL"] +DriftStatusType = Literal["DRIFTED", "IN_SYNC", "NOT_CHECKING", "UNKNOWN"] +EnablementStatusType = Literal["FAILED", "SUCCEEDED", "UNDER_CHANGE"] +LandingZoneDriftStatusType = Literal["DRIFTED", "IN_SYNC"] +LandingZoneOperationStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +LandingZoneOperationTypeType = Literal["CREATE", "DELETE", "RESET", "UPDATE"] +LandingZoneStatusType = Literal["ACTIVE", "FAILED", "PROCESSING"] +ListBaselinesPaginatorName = Literal["list_baselines"] +ListControlOperationsPaginatorName = Literal["list_control_operations"] +ListEnabledBaselinesPaginatorName = Literal["list_enabled_baselines"] +ListEnabledControlsPaginatorName = Literal["list_enabled_controls"] +ListLandingZoneOperationsPaginatorName = Literal["list_landing_zone_operations"] +ListLandingZonesPaginatorName = Literal["list_landing_zones"] +ControlTowerServiceName = Literal["controltower"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_baselines", + "list_control_operations", + "list_enabled_baselines", + "list_enabled_controls", + "list_landing_zone_operations", + "list_landing_zones",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/cost_optimization_hub_classes.py b/aws_resource_validator/pydantic_models/cost_optimization_hub_classes.py new file mode 100644 index 00000000..50d73f30 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cost_optimization_hub_classes.py @@ -0,0 +1,449 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cost_optimization_hub_constants import * + +class AccountEnrollmentStatusTypeDef(BaseModel): + accountId: Optional[str] = None + status: Optional[EnrollmentStatusType] = None + lastUpdatedTimestamp: Optional[datetime] = None + createdTimestamp: Optional[datetime] = None + +class BlockStoragePerformanceConfigurationTypeDef(BaseModel): + iops: Optional[float] = None + throughput: Optional[float] = None + +class ComputeConfigurationTypeDef(BaseModel): + vCpu: Optional[float] = None + memorySizeInMB: Optional[int] = None + architecture: Optional[str] = None + platform: Optional[str] = None + +class ComputeSavingsPlansConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + hourlyCommitment: Optional[str] = None + +class DbInstanceConfigurationTypeDef(BaseModel): + dbInstanceClass: Optional[str] = None + +class StorageConfigurationTypeDef(BaseModel): + type: Optional[str] = None + sizeInGb: Optional[float] = None + +class InstanceConfigurationTypeDef(BaseModel): + type: Optional[str] = None + +class Ec2InstanceSavingsPlansConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + hourlyCommitment: Optional[str] = None + instanceFamily: Optional[str] = None + savingsPlansRegion: Optional[str] = None + +class Ec2ReservedInstancesConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + service: Optional[str] = None + normalizedUnitsToPurchase: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + numberOfInstancesToPurchase: Optional[str] = None + offeringClass: Optional[str] = None + instanceFamily: Optional[str] = None + instanceType: Optional[str] = None + reservedInstancesRegion: Optional[str] = None + currentGeneration: Optional[str] = None + platform: Optional[str] = None + tenancy: Optional[str] = None + sizeFlexEligible: Optional[bool] = None + upfrontCost: Optional[str] = None + monthlyRecurringCost: Optional[str] = None + +class ElastiCacheReservedInstancesConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + service: Optional[str] = None + normalizedUnitsToPurchase: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + numberOfInstancesToPurchase: Optional[str] = None + instanceFamily: Optional[str] = None + instanceType: Optional[str] = None + reservedInstancesRegion: Optional[str] = None + currentGeneration: Optional[str] = None + sizeFlexEligible: Optional[bool] = None + upfrontCost: Optional[str] = None + monthlyRecurringCost: Optional[str] = None + +class EstimatedDiscountsTypeDef(BaseModel): + savingsPlansDiscount: Optional[float] = None + reservedInstancesDiscount: Optional[float] = None + otherDiscount: Optional[float] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class GetRecommendationRequestRequestTypeDef(BaseModel): + recommendationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEnrollmentStatusesRequestRequestTypeDef(BaseModel): + includeOrganizationInfo: Optional[bool] = None + accountId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RecommendationSummaryTypeDef(BaseModel): + group: Optional[str] = None + estimatedMonthlySavings: Optional[float] = None + recommendationCount: Optional[int] = None + +class OrderByTypeDef(BaseModel): + dimension: Optional[str] = None + order: Optional[OrderType] = None + +class OpenSearchReservedInstancesConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + service: Optional[str] = None + normalizedUnitsToPurchase: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + numberOfInstancesToPurchase: Optional[str] = None + instanceType: Optional[str] = None + reservedInstancesRegion: Optional[str] = None + currentGeneration: Optional[str] = None + sizeFlexEligible: Optional[bool] = None + upfrontCost: Optional[str] = None + monthlyRecurringCost: Optional[str] = None + +class RdsDbInstanceStorageConfigurationTypeDef(BaseModel): + storageType: Optional[str] = None + allocatedStorageInGb: Optional[float] = None + iops: Optional[float] = None + storageThroughput: Optional[float] = None + +class RdsReservedInstancesConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + service: Optional[str] = None + normalizedUnitsToPurchase: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + numberOfInstancesToPurchase: Optional[str] = None + instanceFamily: Optional[str] = None + instanceType: Optional[str] = None + reservedInstancesRegion: Optional[str] = None + sizeFlexEligible: Optional[bool] = None + currentGeneration: Optional[str] = None + upfrontCost: Optional[str] = None + monthlyRecurringCost: Optional[str] = None + licenseModel: Optional[str] = None + databaseEdition: Optional[str] = None + databaseEngine: Optional[str] = None + deploymentOption: Optional[str] = None + +class RedshiftReservedInstancesConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + service: Optional[str] = None + normalizedUnitsToPurchase: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + numberOfInstancesToPurchase: Optional[str] = None + instanceFamily: Optional[str] = None + instanceType: Optional[str] = None + reservedInstancesRegion: Optional[str] = None + sizeFlexEligible: Optional[bool] = None + currentGeneration: Optional[str] = None + upfrontCost: Optional[str] = None + monthlyRecurringCost: Optional[str] = None + +class ReservedInstancesPricingTypeDef(BaseModel): + estimatedOnDemandCost: Optional[float] = None + monthlyReservationEligibleCost: Optional[float] = None + savingsPercentage: Optional[float] = None + estimatedMonthlyAmortizedReservationCost: Optional[float] = None + +class UsageTypeDef(BaseModel): + usageType: Optional[str] = None + usageAmount: Optional[float] = None + operation: Optional[str] = None + productCode: Optional[str] = None + unit: Optional[str] = None + +class SageMakerSavingsPlansConfigurationTypeDef(BaseModel): + accountScope: Optional[str] = None + term: Optional[str] = None + paymentOption: Optional[str] = None + hourlyCommitment: Optional[str] = None + +class SavingsPlansPricingTypeDef(BaseModel): + monthlySavingsPlansEligibleCost: Optional[float] = None + estimatedMonthlyCommitment: Optional[float] = None + savingsPercentage: Optional[float] = None + estimatedOnDemandCost: Optional[float] = None + +class UpdateEnrollmentStatusRequestRequestTypeDef(BaseModel): + status: EnrollmentStatusType + includeMemberAccounts: Optional[bool] = None + +class UpdatePreferencesRequestRequestTypeDef(BaseModel): + savingsEstimationMode: Optional[SavingsEstimationModeType] = None + memberAccountDiscountVisibility: Optional[MemberAccountDiscountVisibilityType] = None + +class EcsServiceConfigurationTypeDef(BaseModel): + compute: Optional[ComputeConfigurationTypeDef] = None + +class LambdaFunctionConfigurationTypeDef(BaseModel): + compute: Optional[ComputeConfigurationTypeDef] = None + +class RdsDbInstanceConfigurationTypeDef(BaseModel): + instance: Optional[DbInstanceConfigurationTypeDef] = None + +class EbsVolumeConfigurationTypeDef(BaseModel): + storage: Optional[StorageConfigurationTypeDef] = None + performance: Optional[BlockStoragePerformanceConfigurationTypeDef] = None + attachmentState: Optional[str] = None + +class Ec2AutoScalingGroupConfigurationTypeDef(BaseModel): + instance: Optional[InstanceConfigurationTypeDef] = None + +class Ec2InstanceConfigurationTypeDef(BaseModel): + instance: Optional[InstanceConfigurationTypeDef] = None + +class ResourcePricingTypeDef(BaseModel): + estimatedCostBeforeDiscounts: Optional[float] = None + estimatedNetUnusedAmortizedCommitments: Optional[float] = None + estimatedDiscounts: Optional[EstimatedDiscountsTypeDef] = None + estimatedCostAfterDiscounts: Optional[float] = None + +class FilterTypeDef(BaseModel): + restartNeeded: Optional[bool] = None + rollbackPossible: Optional[bool] = None + implementationEfforts: Optional[Sequence[ImplementationEffortType]] = None + accountIds: Optional[Sequence[str]] = None + regions: Optional[Sequence[str]] = None + resourceTypes: Optional[Sequence[ResourceTypeType]] = None + actionTypes: Optional[Sequence[ActionTypeType]] = None + tags: Optional[Sequence[TagTypeDef]] = None + resourceIds: Optional[Sequence[str]] = None + resourceArns: Optional[Sequence[str]] = None + recommendationIds: Optional[Sequence[str]] = None + +class RecommendationTypeDef(BaseModel): + recommendationId: Optional[str] = None + accountId: Optional[str] = None + region: Optional[str] = None + resourceId: Optional[str] = None + resourceArn: Optional[str] = None + currentResourceType: Optional[str] = None + recommendedResourceType: Optional[str] = None + estimatedMonthlySavings: Optional[float] = None + estimatedSavingsPercentage: Optional[float] = None + estimatedMonthlyCost: Optional[float] = None + currencyCode: Optional[str] = None + implementationEffort: Optional[str] = None + restartNeeded: Optional[bool] = None + actionType: Optional[str] = None + rollbackPossible: Optional[bool] = None + currentResourceSummary: Optional[str] = None + recommendedResourceSummary: Optional[str] = None + lastRefreshTimestamp: Optional[datetime] = None + recommendationLookbackPeriodInDays: Optional[int] = None + source: Optional[SourceType] = None + tags: Optional[List[TagTypeDef]] = None + +class GetPreferencesResponseTypeDef(BaseModel): + savingsEstimationMode: SavingsEstimationModeType + memberAccountDiscountVisibility: MemberAccountDiscountVisibilityType + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnrollmentStatusesResponseTypeDef(BaseModel): + items: List[AccountEnrollmentStatusTypeDef] + includeMemberAccounts: bool + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnrollmentStatusResponseTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePreferencesResponseTypeDef(BaseModel): + savingsEstimationMode: SavingsEstimationModeType + memberAccountDiscountVisibility: MemberAccountDiscountVisibilityType + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnrollmentStatusesRequestListEnrollmentStatusesPaginateTypeDef(BaseModel): + includeOrganizationInfo: Optional[bool] = None + accountId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationSummariesResponseTypeDef(BaseModel): + estimatedTotalDedupedSavings: float + items: List[RecommendationSummaryTypeDef] + groupBy: str + currencyCode: str + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedInstancesCostCalculationTypeDef(BaseModel): + pricing: Optional[ReservedInstancesPricingTypeDef] = None + +class SavingsPlansCostCalculationTypeDef(BaseModel): + pricing: Optional[SavingsPlansPricingTypeDef] = None + +class ResourceCostCalculationTypeDef(BaseModel): + usages: Optional[List[UsageTypeDef]] = None + pricing: Optional[ResourcePricingTypeDef] = None + +class ListRecommendationSummariesRequestListRecommendationSummariesPaginateTypeDef(BaseModel): + groupBy: str + filter: Optional[FilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationSummariesRequestRequestTypeDef(BaseModel): + groupBy: str + filter: Optional[FilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRecommendationsRequestListRecommendationsPaginateTypeDef(BaseModel): + filter: Optional[FilterTypeDef] = None + orderBy: Optional[OrderByTypeDef] = None + includeAllRecommendations: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationsRequestRequestTypeDef(BaseModel): + filter: Optional[FilterTypeDef] = None + orderBy: Optional[OrderByTypeDef] = None + includeAllRecommendations: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRecommendationsResponseTypeDef(BaseModel): + items: List[RecommendationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class Ec2ReservedInstancesTypeDef(BaseModel): + configuration: Optional[Ec2ReservedInstancesConfigurationTypeDef] = None + costCalculation: Optional[ReservedInstancesCostCalculationTypeDef] = None + +class ElastiCacheReservedInstancesTypeDef(BaseModel): + configuration: Optional[ElastiCacheReservedInstancesConfigurationTypeDef] = None + costCalculation: Optional[ReservedInstancesCostCalculationTypeDef] = None + +class OpenSearchReservedInstancesTypeDef(BaseModel): + configuration: Optional[OpenSearchReservedInstancesConfigurationTypeDef] = None + costCalculation: Optional[ReservedInstancesCostCalculationTypeDef] = None + +class RdsReservedInstancesTypeDef(BaseModel): + configuration: Optional[RdsReservedInstancesConfigurationTypeDef] = None + costCalculation: Optional[ReservedInstancesCostCalculationTypeDef] = None + +class RedshiftReservedInstancesTypeDef(BaseModel): + configuration: Optional[RedshiftReservedInstancesConfigurationTypeDef] = None + costCalculation: Optional[ReservedInstancesCostCalculationTypeDef] = None + +class ComputeSavingsPlansTypeDef(BaseModel): + configuration: Optional[ComputeSavingsPlansConfigurationTypeDef] = None + costCalculation: Optional[SavingsPlansCostCalculationTypeDef] = None + +class Ec2InstanceSavingsPlansTypeDef(BaseModel): + configuration: Optional[Ec2InstanceSavingsPlansConfigurationTypeDef] = None + costCalculation: Optional[SavingsPlansCostCalculationTypeDef] = None + +class SageMakerSavingsPlansTypeDef(BaseModel): + configuration: Optional[SageMakerSavingsPlansConfigurationTypeDef] = None + costCalculation: Optional[SavingsPlansCostCalculationTypeDef] = None + +class EbsVolumeTypeDef(BaseModel): + configuration: Optional[EbsVolumeConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class Ec2AutoScalingGroupTypeDef(BaseModel): + configuration: Optional[Ec2AutoScalingGroupConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class Ec2InstanceTypeDef(BaseModel): + configuration: Optional[Ec2InstanceConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class EcsServiceTypeDef(BaseModel): + configuration: Optional[EcsServiceConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class LambdaFunctionTypeDef(BaseModel): + configuration: Optional[LambdaFunctionConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class RdsDbInstanceStorageTypeDef(BaseModel): + configuration: Optional[RdsDbInstanceStorageConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class RdsDbInstanceTypeDef(BaseModel): + configuration: Optional[RdsDbInstanceConfigurationTypeDef] = None + costCalculation: Optional[ResourceCostCalculationTypeDef] = None + +class ResourceDetailsTypeDef(BaseModel): + lambdaFunction: Optional[LambdaFunctionTypeDef] = None + ecsService: Optional[EcsServiceTypeDef] = None + ec2Instance: Optional[Ec2InstanceTypeDef] = None + ebsVolume: Optional[EbsVolumeTypeDef] = None + ec2AutoScalingGroup: Optional[Ec2AutoScalingGroupTypeDef] = None + ec2ReservedInstances: Optional[Ec2ReservedInstancesTypeDef] = None + rdsReservedInstances: Optional[RdsReservedInstancesTypeDef] = None + elastiCacheReservedInstances: Optional[ElastiCacheReservedInstancesTypeDef] = None + openSearchReservedInstances: Optional[OpenSearchReservedInstancesTypeDef] = None + redshiftReservedInstances: Optional[RedshiftReservedInstancesTypeDef] = None + ec2InstanceSavingsPlans: Optional[Ec2InstanceSavingsPlansTypeDef] = None + computeSavingsPlans: Optional[ComputeSavingsPlansTypeDef] = None + sageMakerSavingsPlans: Optional[SageMakerSavingsPlansTypeDef] = None + rdsDbInstance: Optional[RdsDbInstanceTypeDef] = None + rdsDbInstanceStorage: Optional[RdsDbInstanceStorageTypeDef] = None + +class GetRecommendationResponseTypeDef(BaseModel): + recommendationId: str + resourceId: str + resourceArn: str + accountId: str + currencyCode: str + recommendationLookbackPeriodInDays: int + costCalculationLookbackPeriodInDays: int + estimatedSavingsPercentage: float + estimatedSavingsOverCostCalculationLookbackPeriod: float + currentResourceType: ResourceTypeType + recommendedResourceType: ResourceTypeType + region: str + source: SourceType + lastRefreshTimestamp: datetime + estimatedMonthlySavings: float + estimatedMonthlyCost: float + implementationEffort: ImplementationEffortType + restartNeeded: bool + actionType: ActionTypeType + rollbackPossible: bool + currentResourceDetails: ResourceDetailsTypeDef + recommendedResourceDetails: ResourceDetailsTypeDef + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/cost_optimization_hub_constants.py b/aws_resource_validator/pydantic_models/cost_optimization_hub_constants.py new file mode 100644 index 00000000..3250610c --- /dev/null +++ b/aws_resource_validator/pydantic_models/cost_optimization_hub_constants.py @@ -0,0 +1,431 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionTypeType = Literal["MigrateToGraviton", + "PurchaseReservedInstances", + "PurchaseSavingsPlans", + "Rightsize", + "Stop", + "Upgrade",] +EnrollmentStatusType = Literal["Active", "Inactive"] +ImplementationEffortType = Literal["High", "Low", "Medium", "VeryHigh", "VeryLow"] +ListEnrollmentStatusesPaginatorName = Literal["list_enrollment_statuses"] +ListRecommendationSummariesPaginatorName = Literal["list_recommendation_summaries"] +ListRecommendationsPaginatorName = Literal["list_recommendations"] +MemberAccountDiscountVisibilityType = Literal["All", "None"] +OrderType = Literal["Asc", "Desc"] +ResourceTypeType = Literal["ComputeSavingsPlans", + "EbsVolume", + "Ec2AutoScalingGroup", + "Ec2Instance", + "Ec2InstanceSavingsPlans", + "Ec2ReservedInstances", + "EcsService", + "ElastiCacheReservedInstances", + "LambdaFunction", + "OpenSearchReservedInstances", + "RdsDbInstance", + "RdsDbInstanceStorage", + "RdsReservedInstances", + "RedshiftReservedInstances", + "SageMakerSavingsPlans",] +SavingsEstimationModeType = Literal["AfterDiscounts", "BeforeDiscounts"] +SourceType = Literal["ComputeOptimizer", "CostExplorer"] +CostOptimizationHubServiceName = Literal["cost-optimization-hub"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_enrollment_statuses", "list_recommendation_summaries", "list_recommendations"] +RegionName = Literal["us-east-1"] diff --git a/aws_resource_validator/pydantic_models/cur_classes.py b/aws_resource_validator/pydantic_models/cur_classes.py new file mode 100644 index 00000000..ea682331 --- /dev/null +++ b/aws_resource_validator/pydantic_models/cur_classes.py @@ -0,0 +1,120 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.cur_constants import * + +class DeleteReportDefinitionRequestRequestTypeDef(BaseModel): + ReportName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeReportDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ReportName: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ReportStatusTypeDef(BaseModel): + lastDelivery: Optional[str] = None + lastStatus: Optional[LastStatusType] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ReportName: str + TagKeys: Sequence[str] + +class DeleteReportDefinitionResponseTypeDef(BaseModel): + ResponseMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReportDefinitionsRequestDescribeReportDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ReportName: str + Tags: Sequence[TagTypeDef] + +class ReportDefinitionExtraOutputTypeDef(BaseModel): + ReportName: str + TimeUnit: TimeUnitType + Format: ReportFormatType + Compression: CompressionFormatType + AdditionalSchemaElements: List[SchemaElementType] + S3Bucket: str + S3Prefix: str + S3Region: AWSRegionType + AdditionalArtifacts: Optional[List[AdditionalArtifactType]] = None + RefreshClosedReports: Optional[bool] = None + ReportVersioning: Optional[ReportVersioningType] = None + BillingViewArn: Optional[str] = None + ReportStatus: Optional[ReportStatusTypeDef] = None + +class ReportDefinitionOutputTypeDef(BaseModel): + ReportName: str + TimeUnit: TimeUnitType + Format: ReportFormatType + Compression: CompressionFormatType + AdditionalSchemaElements: List[SchemaElementType] + S3Bucket: str + S3Prefix: str + S3Region: AWSRegionType + AdditionalArtifacts: Optional[List[AdditionalArtifactType]] = None + RefreshClosedReports: Optional[bool] = None + ReportVersioning: Optional[ReportVersioningType] = None + BillingViewArn: Optional[str] = None + ReportStatus: Optional[ReportStatusTypeDef] = None + +class ReportDefinitionTypeDef(BaseModel): + ReportName: str + TimeUnit: TimeUnitType + Format: ReportFormatType + Compression: CompressionFormatType + AdditionalSchemaElements: Sequence[SchemaElementType] + S3Bucket: str + S3Prefix: str + S3Region: AWSRegionType + AdditionalArtifacts: Optional[Sequence[AdditionalArtifactType]] = None + RefreshClosedReports: Optional[bool] = None + ReportVersioning: Optional[ReportVersioningType] = None + BillingViewArn: Optional[str] = None + ReportStatus: Optional[ReportStatusTypeDef] = None + +class DescribeReportDefinitionsResponseTypeDef(BaseModel): + ReportDefinitions: List[ReportDefinitionExtraOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyReportDefinitionRequestRequestTypeDef(BaseModel): + ReportName: str + ReportDefinition: ReportDefinitionTypeDef + +class PutReportDefinitionRequestRequestTypeDef(BaseModel): + ReportDefinition: ReportDefinitionTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/cur_constants.py b/aws_resource_validator/pydantic_models/cur_constants.py new file mode 100644 index 00000000..d8240f9c --- /dev/null +++ b/aws_resource_validator/pydantic_models/cur_constants.py @@ -0,0 +1,438 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AWSRegionType = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "cn-north-1", + "cn-northwest-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +AdditionalArtifactType = Literal["ATHENA", "QUICKSIGHT", "REDSHIFT"] +CompressionFormatType = Literal["GZIP", "Parquet", "ZIP"] +DescribeReportDefinitionsPaginatorName = Literal["describe_report_definitions"] +LastStatusType = Literal["ERROR_NO_BUCKET", "ERROR_PERMISSIONS", "SUCCESS"] +ReportFormatType = Literal["Parquet", "textORcsv"] +ReportVersioningType = Literal["CREATE_NEW_REPORT", "OVERWRITE_REPORT"] +SchemaElementType = Literal["MANUAL_DISCOUNT_COMPATIBILITY", "RESOURCES", "SPLIT_COST_ALLOCATION_DATA"] +TimeUnitType = Literal["DAILY", "HOURLY", "MONTHLY"] +CostandUsageReportServiceServiceName = Literal["cur"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_report_definitions"] +RegionName = Literal["us-east-1"] +ReportDefinitionUnionTypeDef = Union['ReportDefinitionTypeDef', 'ReportDefinitionExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/customer_profiles_classes.py b/aws_resource_validator/pydantic_models/customer_profiles_classes.py new file mode 100644 index 00000000..8740e438 --- /dev/null +++ b/aws_resource_validator/pydantic_models/customer_profiles_classes.py @@ -0,0 +1,1135 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.customer_profiles_constants import * + +class AddProfileKeyRequestRequestTypeDef(BaseModel): + ProfileId: str + KeyName: str + Values: Sequence[str] + DomainName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AdditionalSearchKeyTypeDef(BaseModel): + KeyName: str + Values: Sequence[str] + +class AddressTypeDef(BaseModel): + Address1: Optional[str] = None + Address2: Optional[str] = None + Address3: Optional[str] = None + Address4: Optional[str] = None + City: Optional[str] = None + County: Optional[str] = None + State: Optional[str] = None + Province: Optional[str] = None + Country: Optional[str] = None + PostalCode: Optional[str] = None + +class AppflowIntegrationWorkflowAttributesTypeDef(BaseModel): + SourceConnectorType: SourceConnectorTypeType + ConnectorProfileName: str + RoleArn: Optional[str] = None + +class AppflowIntegrationWorkflowMetricsTypeDef(BaseModel): + RecordsProcessed: int + StepsCompleted: int + TotalSteps: int + +class AppflowIntegrationWorkflowStepTypeDef(BaseModel): + FlowName: str + Status: StatusType + ExecutionMessage: str + RecordsProcessed: int + BatchRecordsStartTime: str + BatchRecordsEndTime: str + CreatedAt: datetime + LastUpdatedAt: datetime + +class AttributeItemTypeDef(BaseModel): + Name: str + +class AttributeTypesSelectorOutputTypeDef(BaseModel): + AttributeMatchingModel: AttributeMatchingModelType + Address: Optional[List[str]] = None + PhoneNumber: Optional[List[str]] = None + EmailAddress: Optional[List[str]] = None + +class AttributeTypesSelectorTypeDef(BaseModel): + AttributeMatchingModel: AttributeMatchingModelType + Address: Optional[Sequence[str]] = None + PhoneNumber: Optional[Sequence[str]] = None + EmailAddress: Optional[Sequence[str]] = None + +class ConflictResolutionTypeDef(BaseModel): + ConflictResolvingModel: ConflictResolvingModelType + SourceName: Optional[str] = None + +class ConsolidationOutputTypeDef(BaseModel): + MatchingAttributesList: List[List[str]] + +class ConsolidationTypeDef(BaseModel): + MatchingAttributesList: Sequence[Sequence[str]] + +class RangeTypeDef(BaseModel): + Value: int + Unit: Literal["DAYS"] + +class ThresholdTypeDef(BaseModel): + Value: str + Operator: OperatorType + +class ConnectorOperatorTypeDef(BaseModel): + Marketo: Optional[MarketoConnectorOperatorType] = None + S3: Optional[S3ConnectorOperatorType] = None + Salesforce: Optional[SalesforceConnectorOperatorType] = None + ServiceNow: Optional[ServiceNowConnectorOperatorType] = None + Zendesk: Optional[ZendeskConnectorOperatorType] = None + +class CreateEventStreamRequestRequestTypeDef(BaseModel): + DomainName: str + Uri: str + EventStreamName: str + Tags: Optional[Mapping[str, str]] = None + +class DeleteCalculatedAttributeDefinitionRequestRequestTypeDef(BaseModel): + DomainName: str + CalculatedAttributeName: str + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DeleteEventStreamRequestRequestTypeDef(BaseModel): + DomainName: str + EventStreamName: str + +class DeleteIntegrationRequestRequestTypeDef(BaseModel): + DomainName: str + Uri: str + +class DeleteProfileKeyRequestRequestTypeDef(BaseModel): + ProfileId: str + KeyName: str + Values: Sequence[str] + DomainName: str + +class DeleteProfileObjectRequestRequestTypeDef(BaseModel): + ProfileId: str + ProfileObjectUniqueKey: str + ObjectTypeName: str + DomainName: str + +class DeleteProfileObjectTypeRequestRequestTypeDef(BaseModel): + DomainName: str + ObjectTypeName: str + +class DeleteProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + DomainName: str + +class DeleteWorkflowRequestRequestTypeDef(BaseModel): + DomainName: str + WorkflowId: str + +class DestinationSummaryTypeDef(BaseModel): + Uri: str + Status: EventStreamDestinationStatusType + UnhealthySince: Optional[datetime] = None + +class DetectProfileObjectTypeRequestRequestTypeDef(BaseModel): + Objects: Sequence[str] + DomainName: str + +class ObjectTypeFieldTypeDef(BaseModel): + Source: Optional[str] = None + Target: Optional[str] = None + ContentType: Optional[FieldContentTypeType] = None + +class ObjectTypeKeyOutputTypeDef(BaseModel): + StandardIdentifiers: Optional[List[StandardIdentifierType]] = None + FieldNames: Optional[List[str]] = None + +class DomainStatsTypeDef(BaseModel): + ProfileCount: Optional[int] = None + MeteringProfileCount: Optional[int] = None + ObjectCount: Optional[int] = None + TotalSize: Optional[int] = None + +class EventStreamDestinationDetailsTypeDef(BaseModel): + Uri: str + Status: EventStreamDestinationStatusType + UnhealthySince: Optional[datetime] = None + Message: Optional[str] = None + +class S3ExportingConfigTypeDef(BaseModel): + S3BucketName: str + S3KeyName: Optional[str] = None + +class S3ExportingLocationTypeDef(BaseModel): + S3BucketName: Optional[str] = None + S3KeyName: Optional[str] = None + +class FieldSourceProfileIdsTypeDef(BaseModel): + AccountNumber: Optional[str] = None + AdditionalInformation: Optional[str] = None + PartyType: Optional[str] = None + BusinessName: Optional[str] = None + FirstName: Optional[str] = None + MiddleName: Optional[str] = None + LastName: Optional[str] = None + BirthDate: Optional[str] = None + Gender: Optional[str] = None + PhoneNumber: Optional[str] = None + MobilePhoneNumber: Optional[str] = None + HomePhoneNumber: Optional[str] = None + BusinessPhoneNumber: Optional[str] = None + EmailAddress: Optional[str] = None + PersonalEmailAddress: Optional[str] = None + BusinessEmailAddress: Optional[str] = None + Address: Optional[str] = None + ShippingAddress: Optional[str] = None + MailingAddress: Optional[str] = None + BillingAddress: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + +class FoundByKeyValueTypeDef(BaseModel): + KeyName: Optional[str] = None + Values: Optional[List[str]] = None + +class GetCalculatedAttributeDefinitionRequestRequestTypeDef(BaseModel): + DomainName: str + CalculatedAttributeName: str + +class GetCalculatedAttributeForProfileRequestRequestTypeDef(BaseModel): + DomainName: str + ProfileId: str + CalculatedAttributeName: str + +class GetDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class GetEventStreamRequestRequestTypeDef(BaseModel): + DomainName: str + EventStreamName: str + +class GetIdentityResolutionJobRequestRequestTypeDef(BaseModel): + DomainName: str + JobId: str + +class JobStatsTypeDef(BaseModel): + NumberOfProfilesReviewed: Optional[int] = None + NumberOfMatchesFound: Optional[int] = None + NumberOfMergesDone: Optional[int] = None + +class GetIntegrationRequestRequestTypeDef(BaseModel): + DomainName: str + Uri: str + +class GetMatchesRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MatchItemTypeDef(BaseModel): + MatchId: Optional[str] = None + ProfileIds: Optional[List[str]] = None + ConfidenceScore: Optional[float] = None + +class GetProfileObjectTypeRequestRequestTypeDef(BaseModel): + DomainName: str + ObjectTypeName: str + +class GetProfileObjectTypeTemplateRequestRequestTypeDef(BaseModel): + TemplateId: str + +class GetSimilarProfilesRequestRequestTypeDef(BaseModel): + DomainName: str + MatchType: MatchTypeType + SearchKey: str + SearchValue: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetWorkflowRequestRequestTypeDef(BaseModel): + DomainName: str + WorkflowId: str + +class GetWorkflowStepsRequestRequestTypeDef(BaseModel): + DomainName: str + WorkflowId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class IncrementalPullConfigTypeDef(BaseModel): + DatetimeTypeFieldName: Optional[str] = None + +class JobScheduleTypeDef(BaseModel): + DayOfTheWeek: JobScheduleDayOfTheWeekType + Time: str + +class ListAccountIntegrationsRequestRequestTypeDef(BaseModel): + Uri: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + IncludeHidden: Optional[bool] = None + +class ListIntegrationItemTypeDef(BaseModel): + DomainName: str + Uri: str + CreatedAt: datetime + LastUpdatedAt: datetime + ObjectTypeName: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + ObjectTypeNames: Optional[Dict[str, str]] = None + WorkflowId: Optional[str] = None + IsUnstructured: Optional[bool] = None + +class ListCalculatedAttributeDefinitionItemTypeDef(BaseModel): + CalculatedAttributeName: Optional[str] = None + DisplayName: Optional[str] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class ListCalculatedAttributeDefinitionsRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCalculatedAttributeForProfileItemTypeDef(BaseModel): + CalculatedAttributeName: Optional[str] = None + DisplayName: Optional[str] = None + IsDataPartial: Optional[str] = None + Value: Optional[str] = None + +class ListCalculatedAttributesForProfileRequestRequestTypeDef(BaseModel): + DomainName: str + ProfileId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDomainItemTypeDef(BaseModel): + DomainName: str + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Optional[Dict[str, str]] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEventStreamsRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIdentityResolutionJobsRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIntegrationsRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + IncludeHidden: Optional[bool] = None + +class ListProfileObjectTypeItemTypeDef(BaseModel): + ObjectTypeName: str + Description: str + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + MaxProfileObjectCount: Optional[int] = None + MaxAvailableProfileObjectCount: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + +class ListProfileObjectTypeTemplateItemTypeDef(BaseModel): + TemplateId: Optional[str] = None + SourceName: Optional[str] = None + SourceObject: Optional[str] = None + +class ListProfileObjectTypeTemplatesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProfileObjectTypesRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProfileObjectsItemTypeDef(BaseModel): + ObjectTypeName: Optional[str] = None + ProfileObjectUniqueKey: Optional[str] = None + Object: Optional[str] = None + +class ObjectFilterTypeDef(BaseModel): + KeyName: str + Values: Sequence[str] + +class ListRuleBasedMatchesRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListWorkflowsItemTypeDef(BaseModel): + WorkflowType: Literal["APPFLOW_INTEGRATION"] + WorkflowId: str + Status: StatusType + StatusDescription: str + CreatedAt: datetime + LastUpdatedAt: datetime + +class MarketoSourcePropertiesTypeDef(BaseModel): + Object: str + +class MatchingRuleOutputTypeDef(BaseModel): + Rule: List[str] + +class MatchingRuleTypeDef(BaseModel): + Rule: Sequence[str] + +class ObjectTypeKeyTypeDef(BaseModel): + StandardIdentifiers: Optional[Sequence[StandardIdentifierType]] = None + FieldNames: Optional[Sequence[str]] = None + +class PutProfileObjectRequestRequestTypeDef(BaseModel): + ObjectTypeName: str + Object: str + DomainName: str + +class S3SourcePropertiesTypeDef(BaseModel): + BucketName: str + BucketPrefix: Optional[str] = None + +class SalesforceSourcePropertiesTypeDef(BaseModel): + Object: str + EnableDynamicFieldUpdate: Optional[bool] = None + IncludeDeletedRecords: Optional[bool] = None + +class ServiceNowSourcePropertiesTypeDef(BaseModel): + Object: str + +class ZendeskSourcePropertiesTypeDef(BaseModel): + Object: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAddressTypeDef(BaseModel): + Address1: Optional[str] = None + Address2: Optional[str] = None + Address3: Optional[str] = None + Address4: Optional[str] = None + City: Optional[str] = None + County: Optional[str] = None + State: Optional[str] = None + Province: Optional[str] = None + Country: Optional[str] = None + PostalCode: Optional[str] = None + +class AddProfileKeyResponseTypeDef(BaseModel): + KeyName: str + Values: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventStreamResponseTypeDef(BaseModel): + EventStreamArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIntegrationWorkflowResponseTypeDef(BaseModel): + WorkflowId: str + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileResponseTypeDef(BaseModel): + ProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIntegrationResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProfileKeyResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProfileObjectResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProfileObjectTypeResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProfileResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAutoMergingPreviewResponseTypeDef(BaseModel): + DomainName: str + NumberOfMatchesInSample: int + NumberOfProfilesInSample: int + NumberOfProfilesWillBeMerged: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetCalculatedAttributeForProfileResponseTypeDef(BaseModel): + CalculatedAttributeName: str + DisplayName: str + IsDataPartial: str + Value: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntegrationResponseTypeDef(BaseModel): + DomainName: str + Uri: str + ObjectTypeName: str + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ObjectTypeNames: Dict[str, str] + WorkflowId: str + IsUnstructured: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetSimilarProfilesResponseTypeDef(BaseModel): + ProfileIds: List[str] + MatchId: str + MatchType: MatchTypeType + RuleLevel: int + ConfidenceScore: float + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRuleBasedMatchesResponseTypeDef(BaseModel): + MatchIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class MergeProfilesResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutIntegrationResponseTypeDef(BaseModel): + DomainName: str + Uri: str + ObjectTypeName: str + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ObjectTypeNames: Dict[str, str] + WorkflowId: str + IsUnstructured: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutProfileObjectResponseTypeDef(BaseModel): + ProfileObjectUniqueKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfileResponseTypeDef(BaseModel): + ProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchProfilesRequestRequestTypeDef(BaseModel): + DomainName: str + KeyName: str + Values: Sequence[str] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + AdditionalSearchKeys: Optional[Sequence[AdditionalSearchKeyTypeDef]] = None + LogicalOperator: Optional[LogicalOperatorType] = None + +class CreateProfileRequestRequestTypeDef(BaseModel): + DomainName: str + AccountNumber: Optional[str] = None + AdditionalInformation: Optional[str] = None + PartyType: Optional[PartyTypeType] = None + BusinessName: Optional[str] = None + FirstName: Optional[str] = None + MiddleName: Optional[str] = None + LastName: Optional[str] = None + BirthDate: Optional[str] = None + Gender: Optional[GenderType] = None + PhoneNumber: Optional[str] = None + MobilePhoneNumber: Optional[str] = None + HomePhoneNumber: Optional[str] = None + BusinessPhoneNumber: Optional[str] = None + EmailAddress: Optional[str] = None + PersonalEmailAddress: Optional[str] = None + BusinessEmailAddress: Optional[str] = None + Address: Optional[AddressTypeDef] = None + ShippingAddress: Optional[AddressTypeDef] = None + MailingAddress: Optional[AddressTypeDef] = None + BillingAddress: Optional[AddressTypeDef] = None + Attributes: Optional[Mapping[str, str]] = None + PartyTypeString: Optional[str] = None + GenderString: Optional[str] = None + +class WorkflowAttributesTypeDef(BaseModel): + AppflowIntegration: Optional[AppflowIntegrationWorkflowAttributesTypeDef] = None + +class WorkflowMetricsTypeDef(BaseModel): + AppflowIntegration: Optional[AppflowIntegrationWorkflowMetricsTypeDef] = None + +class WorkflowStepItemTypeDef(BaseModel): + AppflowIntegration: Optional[AppflowIntegrationWorkflowStepTypeDef] = None + +class AttributeDetailsOutputTypeDef(BaseModel): + Attributes: List[AttributeItemTypeDef] + Expression: str + +class AttributeDetailsTypeDef(BaseModel): + Attributes: Sequence[AttributeItemTypeDef] + Expression: str + +class AutoMergingOutputTypeDef(BaseModel): + Enabled: bool + Consolidation: Optional[ConsolidationOutputTypeDef] = None + ConflictResolution: Optional[ConflictResolutionTypeDef] = None + MinAllowedConfidenceScoreForMerging: Optional[float] = None + +class AutoMergingTypeDef(BaseModel): + Enabled: bool + Consolidation: Optional[ConsolidationTypeDef] = None + ConflictResolution: Optional[ConflictResolutionTypeDef] = None + MinAllowedConfidenceScoreForMerging: Optional[float] = None + +class GetAutoMergingPreviewRequestRequestTypeDef(BaseModel): + DomainName: str + Consolidation: ConsolidationTypeDef + ConflictResolution: ConflictResolutionTypeDef + MinAllowedConfidenceScoreForMerging: Optional[float] = None + +class BatchTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class ListWorkflowsRequestRequestTypeDef(BaseModel): + DomainName: str + WorkflowType: Optional[Literal["APPFLOW_INTEGRATION"]] = None + Status: Optional[StatusType] = None + QueryStartDate: Optional[TimestampTypeDef] = None + QueryEndDate: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ScheduledTriggerPropertiesTypeDef(BaseModel): + ScheduleExpression: str + DataPullMode: Optional[DataPullModeType] = None + ScheduleStartTime: Optional[TimestampTypeDef] = None + ScheduleEndTime: Optional[TimestampTypeDef] = None + Timezone: Optional[str] = None + ScheduleOffset: Optional[int] = None + FirstExecutionFrom: Optional[TimestampTypeDef] = None + +class ConditionsTypeDef(BaseModel): + Range: Optional[RangeTypeDef] = None + ObjectCount: Optional[int] = None + Threshold: Optional[ThresholdTypeDef] = None + +class TaskTypeDef(BaseModel): + SourceFields: Sequence[str] + TaskType: TaskTypeType + ConnectorOperator: Optional[ConnectorOperatorTypeDef] = None + DestinationField: Optional[str] = None + TaskProperties: Optional[Mapping[OperatorPropertiesKeysType, str]] = None + +class EventStreamSummaryTypeDef(BaseModel): + DomainName: str + EventStreamName: str + EventStreamArn: str + State: EventStreamStateType + StoppedSince: Optional[datetime] = None + DestinationSummary: Optional[DestinationSummaryTypeDef] = None + Tags: Optional[Dict[str, str]] = None + +class DetectedProfileObjectTypeTypeDef(BaseModel): + SourceLastUpdatedTimestampFormat: Optional[str] = None + Fields: Optional[Dict[str, ObjectTypeFieldTypeDef]] = None + Keys: Optional[Dict[str, List[ObjectTypeKeyOutputTypeDef]]] = None + +class GetProfileObjectTypeResponseTypeDef(BaseModel): + ObjectTypeName: str + Description: str + TemplateId: str + ExpirationDays: int + EncryptionKey: str + AllowProfileCreation: bool + SourceLastUpdatedTimestampFormat: str + MaxAvailableProfileObjectCount: int + MaxProfileObjectCount: int + Fields: Dict[str, ObjectTypeFieldTypeDef] + Keys: Dict[str, List[ObjectTypeKeyOutputTypeDef]] + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileObjectTypeTemplateResponseTypeDef(BaseModel): + TemplateId: str + SourceName: str + SourceObject: str + AllowProfileCreation: bool + SourceLastUpdatedTimestampFormat: str + Fields: Dict[str, ObjectTypeFieldTypeDef] + Keys: Dict[str, List[ObjectTypeKeyOutputTypeDef]] + ResponseMetadata: ResponseMetadataTypeDef + +class PutProfileObjectTypeResponseTypeDef(BaseModel): + ObjectTypeName: str + Description: str + TemplateId: str + ExpirationDays: int + EncryptionKey: str + AllowProfileCreation: bool + SourceLastUpdatedTimestampFormat: str + MaxProfileObjectCount: int + MaxAvailableProfileObjectCount: int + Fields: Dict[str, ObjectTypeFieldTypeDef] + Keys: Dict[str, List[ObjectTypeKeyOutputTypeDef]] + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventStreamResponseTypeDef(BaseModel): + DomainName: str + EventStreamArn: str + CreatedAt: datetime + State: EventStreamStateType + StoppedSince: datetime + DestinationDetails: EventStreamDestinationDetailsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportingConfigTypeDef(BaseModel): + S3Exporting: Optional[S3ExportingConfigTypeDef] = None + +class ExportingLocationTypeDef(BaseModel): + S3Exporting: Optional[S3ExportingLocationTypeDef] = None + +class MergeProfilesRequestRequestTypeDef(BaseModel): + DomainName: str + MainProfileId: str + ProfileIdsToBeMerged: Sequence[str] + FieldSourceProfileIds: Optional[FieldSourceProfileIdsTypeDef] = None + +class ProfileTypeDef(BaseModel): + ProfileId: Optional[str] = None + AccountNumber: Optional[str] = None + AdditionalInformation: Optional[str] = None + PartyType: Optional[PartyTypeType] = None + BusinessName: Optional[str] = None + FirstName: Optional[str] = None + MiddleName: Optional[str] = None + LastName: Optional[str] = None + BirthDate: Optional[str] = None + Gender: Optional[GenderType] = None + PhoneNumber: Optional[str] = None + MobilePhoneNumber: Optional[str] = None + HomePhoneNumber: Optional[str] = None + BusinessPhoneNumber: Optional[str] = None + EmailAddress: Optional[str] = None + PersonalEmailAddress: Optional[str] = None + BusinessEmailAddress: Optional[str] = None + Address: Optional[AddressTypeDef] = None + ShippingAddress: Optional[AddressTypeDef] = None + MailingAddress: Optional[AddressTypeDef] = None + BillingAddress: Optional[AddressTypeDef] = None + Attributes: Optional[Dict[str, str]] = None + FoundByItems: Optional[List[FoundByKeyValueTypeDef]] = None + PartyTypeString: Optional[str] = None + GenderString: Optional[str] = None + +class GetMatchesResponseTypeDef(BaseModel): + MatchGenerationDate: datetime + PotentialMatches: int + Matches: List[MatchItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAccountIntegrationsResponseTypeDef(BaseModel): + Items: List[ListIntegrationItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIntegrationsResponseTypeDef(BaseModel): + Items: List[ListIntegrationItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCalculatedAttributeDefinitionsResponseTypeDef(BaseModel): + Items: List[ListCalculatedAttributeDefinitionItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCalculatedAttributesForProfileResponseTypeDef(BaseModel): + Items: List[ListCalculatedAttributeForProfileItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDomainsResponseTypeDef(BaseModel): + Items: List[ListDomainItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEventStreamsRequestListEventStreamsPaginateTypeDef(BaseModel): + DomainName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfileObjectTypesResponseTypeDef(BaseModel): + Items: List[ListProfileObjectTypeItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProfileObjectTypeTemplatesResponseTypeDef(BaseModel): + Items: List[ListProfileObjectTypeTemplateItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProfileObjectsResponseTypeDef(BaseModel): + Items: List[ListProfileObjectsItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProfileObjectsRequestRequestTypeDef(BaseModel): + DomainName: str + ObjectTypeName: str + ProfileId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ObjectFilter: Optional[ObjectFilterTypeDef] = None + +class ListWorkflowsResponseTypeDef(BaseModel): + Items: List[ListWorkflowsItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SourceConnectorPropertiesTypeDef(BaseModel): + Marketo: Optional[MarketoSourcePropertiesTypeDef] = None + S3: Optional[S3SourcePropertiesTypeDef] = None + Salesforce: Optional[SalesforceSourcePropertiesTypeDef] = None + ServiceNow: Optional[ServiceNowSourcePropertiesTypeDef] = None + Zendesk: Optional[ZendeskSourcePropertiesTypeDef] = None + +class UpdateProfileRequestRequestTypeDef(BaseModel): + DomainName: str + ProfileId: str + AdditionalInformation: Optional[str] = None + AccountNumber: Optional[str] = None + PartyType: Optional[PartyTypeType] = None + BusinessName: Optional[str] = None + FirstName: Optional[str] = None + MiddleName: Optional[str] = None + LastName: Optional[str] = None + BirthDate: Optional[str] = None + Gender: Optional[GenderType] = None + PhoneNumber: Optional[str] = None + MobilePhoneNumber: Optional[str] = None + HomePhoneNumber: Optional[str] = None + BusinessPhoneNumber: Optional[str] = None + EmailAddress: Optional[str] = None + PersonalEmailAddress: Optional[str] = None + BusinessEmailAddress: Optional[str] = None + Address: Optional[UpdateAddressTypeDef] = None + ShippingAddress: Optional[UpdateAddressTypeDef] = None + MailingAddress: Optional[UpdateAddressTypeDef] = None + BillingAddress: Optional[UpdateAddressTypeDef] = None + Attributes: Optional[Mapping[str, str]] = None + PartyTypeString: Optional[str] = None + GenderString: Optional[str] = None + +class GetWorkflowResponseTypeDef(BaseModel): + WorkflowId: str + WorkflowType: Literal["APPFLOW_INTEGRATION"] + Status: StatusType + ErrorDescription: str + StartDate: datetime + LastUpdatedAt: datetime + Attributes: WorkflowAttributesTypeDef + Metrics: WorkflowMetricsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowStepsResponseTypeDef(BaseModel): + WorkflowId: str + WorkflowType: Literal["APPFLOW_INTEGRATION"] + Items: List[WorkflowStepItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TriggerPropertiesTypeDef(BaseModel): + Scheduled: Optional[ScheduledTriggerPropertiesTypeDef] = None + +class CreateCalculatedAttributeDefinitionRequestRequestTypeDef(BaseModel): + DomainName: str + CalculatedAttributeName: str + AttributeDetails: AttributeDetailsTypeDef + Statistic: StatisticType + DisplayName: Optional[str] = None + Description: Optional[str] = None + Conditions: Optional[ConditionsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateCalculatedAttributeDefinitionResponseTypeDef(BaseModel): + CalculatedAttributeName: str + DisplayName: str + Description: str + AttributeDetails: AttributeDetailsOutputTypeDef + Conditions: ConditionsTypeDef + Statistic: StatisticType + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCalculatedAttributeDefinitionResponseTypeDef(BaseModel): + CalculatedAttributeName: str + DisplayName: str + Description: str + CreatedAt: datetime + LastUpdatedAt: datetime + Statistic: StatisticType + Conditions: ConditionsTypeDef + AttributeDetails: AttributeDetailsOutputTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCalculatedAttributeDefinitionRequestRequestTypeDef(BaseModel): + DomainName: str + CalculatedAttributeName: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + Conditions: Optional[ConditionsTypeDef] = None + +class UpdateCalculatedAttributeDefinitionResponseTypeDef(BaseModel): + CalculatedAttributeName: str + DisplayName: str + Description: str + CreatedAt: datetime + LastUpdatedAt: datetime + Statistic: StatisticType + Conditions: ConditionsTypeDef + AttributeDetails: AttributeDetailsOutputTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventStreamsResponseTypeDef(BaseModel): + Items: List[EventStreamSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DetectProfileObjectTypeResponseTypeDef(BaseModel): + DetectedProfileObjectTypes: List[DetectedProfileObjectTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MatchingRequestTypeDef(BaseModel): + Enabled: bool + JobSchedule: Optional[JobScheduleTypeDef] = None + AutoMerging: Optional[AutoMergingTypeDef] = None + ExportingConfig: Optional[ExportingConfigTypeDef] = None + +class MatchingResponseTypeDef(BaseModel): + Enabled: Optional[bool] = None + JobSchedule: Optional[JobScheduleTypeDef] = None + AutoMerging: Optional[AutoMergingOutputTypeDef] = None + ExportingConfig: Optional[ExportingConfigTypeDef] = None + +class RuleBasedMatchingRequestTypeDef(BaseModel): + Enabled: bool + MatchingRules: Optional[Sequence[MatchingRuleTypeDef]] = None + MaxAllowedRuleLevelForMerging: Optional[int] = None + MaxAllowedRuleLevelForMatching: Optional[int] = None + AttributeTypesSelector: Optional[AttributeTypesSelectorTypeDef] = None + ConflictResolution: Optional[ConflictResolutionTypeDef] = None + ExportingConfig: Optional[ExportingConfigTypeDef] = None + +class RuleBasedMatchingResponseTypeDef(BaseModel): + Enabled: Optional[bool] = None + MatchingRules: Optional[List[MatchingRuleOutputTypeDef]] = None + Status: Optional[RuleBasedMatchingStatusType] = None + MaxAllowedRuleLevelForMerging: Optional[int] = None + MaxAllowedRuleLevelForMatching: Optional[int] = None + AttributeTypesSelector: Optional[AttributeTypesSelectorOutputTypeDef] = None + ConflictResolution: Optional[ConflictResolutionTypeDef] = None + ExportingConfig: Optional[ExportingConfigTypeDef] = None + +class GetIdentityResolutionJobResponseTypeDef(BaseModel): + DomainName: str + JobId: str + Status: IdentityResolutionJobStatusType + Message: str + JobStartTime: datetime + JobEndTime: datetime + LastUpdatedAt: datetime + JobExpirationTime: datetime + AutoMerging: AutoMergingOutputTypeDef + ExportingLocation: ExportingLocationTypeDef + JobStats: JobStatsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IdentityResolutionJobTypeDef(BaseModel): + DomainName: Optional[str] = None + JobId: Optional[str] = None + Status: Optional[IdentityResolutionJobStatusType] = None + JobStartTime: Optional[datetime] = None + JobEndTime: Optional[datetime] = None + JobStats: Optional[JobStatsTypeDef] = None + ExportingLocation: Optional[ExportingLocationTypeDef] = None + Message: Optional[str] = None + +class SearchProfilesResponseTypeDef(BaseModel): + Items: List[ProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutProfileObjectTypeRequestRequestTypeDef(BaseModel): + DomainName: str + ObjectTypeName: str + Description: str + TemplateId: Optional[str] = None + ExpirationDays: Optional[int] = None + EncryptionKey: Optional[str] = None + AllowProfileCreation: Optional[bool] = None + SourceLastUpdatedTimestampFormat: Optional[str] = None + MaxProfileObjectCount: Optional[int] = None + Fields: Optional[Mapping[str, ObjectTypeFieldTypeDef]] = None + Keys: Optional[Mapping[str, Sequence[ObjectTypeKeyUnionTypeDef]]] = None + Tags: Optional[Mapping[str, str]] = None + +class SourceFlowConfigTypeDef(BaseModel): + ConnectorType: SourceConnectorTypeType + SourceConnectorProperties: SourceConnectorPropertiesTypeDef + ConnectorProfileName: Optional[str] = None + IncrementalPullConfig: Optional[IncrementalPullConfigTypeDef] = None + +class TriggerConfigTypeDef(BaseModel): + TriggerType: TriggerTypeType + TriggerProperties: Optional[TriggerPropertiesTypeDef] = None + +class CreateDomainRequestRequestTypeDef(BaseModel): + DomainName: str + DefaultExpirationDays: int + DefaultEncryptionKey: Optional[str] = None + DeadLetterQueueUrl: Optional[str] = None + Matching: Optional[MatchingRequestTypeDef] = None + RuleBasedMatching: Optional[RuleBasedMatchingRequestTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateDomainRequestRequestTypeDef(BaseModel): + DomainName: str + DefaultExpirationDays: Optional[int] = None + DefaultEncryptionKey: Optional[str] = None + DeadLetterQueueUrl: Optional[str] = None + Matching: Optional[MatchingRequestTypeDef] = None + RuleBasedMatching: Optional[RuleBasedMatchingRequestTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateDomainResponseTypeDef(BaseModel): + DomainName: str + DefaultExpirationDays: int + DefaultEncryptionKey: str + DeadLetterQueueUrl: str + Matching: MatchingResponseTypeDef + RuleBasedMatching: RuleBasedMatchingResponseTypeDef + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainResponseTypeDef(BaseModel): + DomainName: str + DefaultExpirationDays: int + DefaultEncryptionKey: str + DeadLetterQueueUrl: str + Stats: DomainStatsTypeDef + Matching: MatchingResponseTypeDef + RuleBasedMatching: RuleBasedMatchingResponseTypeDef + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainResponseTypeDef(BaseModel): + DomainName: str + DefaultExpirationDays: int + DefaultEncryptionKey: str + DeadLetterQueueUrl: str + Matching: MatchingResponseTypeDef + RuleBasedMatching: RuleBasedMatchingResponseTypeDef + CreatedAt: datetime + LastUpdatedAt: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdentityResolutionJobsResponseTypeDef(BaseModel): + IdentityResolutionJobsList: List[IdentityResolutionJobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FlowDefinitionTypeDef(BaseModel): + FlowName: str + KmsArn: str + SourceFlowConfig: SourceFlowConfigTypeDef + Tasks: Sequence[TaskTypeDef] + TriggerConfig: TriggerConfigTypeDef + Description: Optional[str] = None + +class AppflowIntegrationTypeDef(BaseModel): + FlowDefinition: FlowDefinitionTypeDef + Batches: Optional[Sequence[BatchTypeDef]] = None + +class PutIntegrationRequestRequestTypeDef(BaseModel): + DomainName: str + Uri: Optional[str] = None + ObjectTypeName: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + FlowDefinition: Optional[FlowDefinitionTypeDef] = None + ObjectTypeNames: Optional[Mapping[str, str]] = None + +class IntegrationConfigTypeDef(BaseModel): + AppflowIntegration: Optional[AppflowIntegrationTypeDef] = None + +class CreateIntegrationWorkflowRequestRequestTypeDef(BaseModel): + DomainName: str + WorkflowType: Literal["APPFLOW_INTEGRATION"] + IntegrationConfig: IntegrationConfigTypeDef + ObjectTypeName: str + RoleArn: str + Tags: Optional[Mapping[str, str]] = None + diff --git a/aws_resource_validator/pydantic_models/customer_profiles_constants.py b/aws_resource_validator/pydantic_models/customer_profiles_constants.py new file mode 100644 index 00000000..25e3ac14 --- /dev/null +++ b/aws_resource_validator/pydantic_models/customer_profiles_constants.py @@ -0,0 +1,550 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttributeMatchingModelType = Literal["MANY_TO_MANY", "ONE_TO_ONE"] +ConflictResolvingModelType = Literal["RECENCY", "SOURCE"] +DataPullModeType = Literal["Complete", "Incremental"] +EventStreamDestinationStatusType = Literal["HEALTHY", "UNHEALTHY"] +EventStreamStateType = Literal["RUNNING", "STOPPED"] +FieldContentTypeType = Literal["EMAIL_ADDRESS", "NAME", "NUMBER", "PHONE_NUMBER", "STRING"] +GenderType = Literal["FEMALE", "MALE", "UNSPECIFIED"] +IdentityResolutionJobStatusType = Literal["COMPLETED", "FAILED", "FIND_MATCHING", "MERGING", "PARTIAL_SUCCESS", "PENDING", "PREPROCESSING"] +JobScheduleDayOfTheWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +ListEventStreamsPaginatorName = Literal["list_event_streams"] +LogicalOperatorType = Literal["AND", "OR"] +MarketoConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "GREATER_THAN", + "LESS_THAN", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +MatchTypeType = Literal["ML_BASED_MATCHING", "RULE_BASED_MATCHING"] +OperatorPropertiesKeysType = Literal["CONCAT_FORMAT", + "DATA_TYPE", + "DESTINATION_DATA_TYPE", + "LOWER_BOUND", + "MASK_LENGTH", + "MASK_VALUE", + "MATH_OPERATION_FIELDS_ORDER", + "SOURCE_DATA_TYPE", + "SUBFIELD_CATEGORY_MAP", + "TRUNCATE_LENGTH", + "UPPER_BOUND", + "VALIDATION_ACTION", + "VALUE", + "VALUES",] +OperatorType = Literal["EQUAL_TO", "GREATER_THAN", "LESS_THAN", "NOT_EQUAL_TO"] +PartyTypeType = Literal["BUSINESS", "INDIVIDUAL", "OTHER"] +RuleBasedMatchingStatusType = Literal["ACTIVE", "IN_PROGRESS", "PENDING"] +S3ConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SalesforceConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +ServiceNowConnectorOperatorType = Literal["ADDITION", + "BETWEEN", + "CONTAINS", + "DIVISION", + "EQUAL_TO", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN", + "LESS_THAN_OR_EQUAL_TO", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NOT_EQUAL_TO", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +SourceConnectorTypeType = Literal["Marketo", "S3", "Salesforce", "Servicenow", "Zendesk"] +StandardIdentifierType = Literal["ASSET", "CASE", "LOOKUP_ONLY", "NEW_ONLY", "ORDER", "PROFILE", "SECONDARY", "UNIQUE"] +StatisticType = Literal["AVERAGE", + "COUNT", + "FIRST_OCCURRENCE", + "LAST_OCCURRENCE", + "MAXIMUM", + "MAX_OCCURRENCE", + "MINIMUM", + "SUM",] +StatusType = Literal["CANCELLED", "COMPLETE", "FAILED", "IN_PROGRESS", "NOT_STARTED", "RETRY", "SPLIT"] +TaskTypeType = Literal["Arithmetic", "Filter", "Map", "Mask", "Merge", "Truncate", "Validate"] +TriggerTypeType = Literal["Event", "OnDemand", "Scheduled"] +UnitType = Literal["DAYS"] +WorkflowTypeType = Literal["APPFLOW_INTEGRATION"] +ZendeskConnectorOperatorType = Literal["ADDITION", + "DIVISION", + "GREATER_THAN", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "MULTIPLICATION", + "NO_OP", + "PROJECTION", + "SUBTRACTION", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NUMERIC",] +CustomerProfilesServiceName = Literal["customer-profiles"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_event_streams"] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ConsolidationUnionTypeDef = Union['ConsolidationTypeDef', 'ConsolidationOutputTypeDef'] +ObjectTypeKeyUnionTypeDef = Union['ObjectTypeKeyTypeDef', 'ObjectTypeKeyOutputTypeDef'] +AttributeDetailsUnionTypeDef = Union['AttributeDetailsTypeDef', 'AttributeDetailsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/databrew_classes.py b/aws_resource_validator/pydantic_models/databrew_classes.py new file mode 100644 index 00000000..4eb1595b --- /dev/null +++ b/aws_resource_validator/pydantic_models/databrew_classes.py @@ -0,0 +1,1022 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.databrew_constants import * + +class AllowedStatisticsTypeDef(BaseModel): + Statistics: Sequence[str] + +class BatchDeleteRecipeVersionRequestRequestTypeDef(BaseModel): + Name: str + RecipeVersions: Sequence[str] + +class RecipeVersionErrorDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + RecipeVersion: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ColumnSelectorTypeDef(BaseModel): + Regex: Optional[str] = None + Name: Optional[str] = None + +class ConditionExpressionTypeDef(BaseModel): + Condition: str + TargetColumn: str + Value: Optional[str] = None + +class JobSampleTypeDef(BaseModel): + Mode: Optional[SampleModeType] = None + Size: Optional[int] = None + +class S3LocationTypeDef(BaseModel): + Bucket: str + Key: Optional[str] = None + BucketOwner: Optional[str] = None + +class ValidationConfigurationTypeDef(BaseModel): + RulesetArn: str + ValidationMode: Optional[Literal["CHECK_ALL"]] = None + +class SampleTypeDef(BaseModel): + Type: SampleTypeType + Size: Optional[int] = None + +class RecipeReferenceTypeDef(BaseModel): + Name: str + RecipeVersion: Optional[str] = None + +class CreateScheduleRequestRequestTypeDef(BaseModel): + CronExpression: str + Name: str + JobNames: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class CsvOptionsTypeDef(BaseModel): + Delimiter: Optional[str] = None + HeaderRow: Optional[bool] = None + +class CsvOutputOptionsTypeDef(BaseModel): + Delimiter: Optional[str] = None + +class DatetimeOptionsTypeDef(BaseModel): + Format: str + TimezoneOffset: Optional[str] = None + LocaleCode: Optional[str] = None + +class FilterExpressionPaginatorTypeDef(BaseModel): + Expression: str + ValuesMap: Dict[str, str] + +class FilterExpressionTypeDef(BaseModel): + Expression: str + ValuesMap: Mapping[str, str] + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteJobRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteProjectRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteRecipeVersionRequestRequestTypeDef(BaseModel): + Name: str + RecipeVersion: str + +class DeleteRulesetRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteScheduleRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeJobRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeJobRunRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + +class DescribeProjectRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeRecipeRequestRequestTypeDef(BaseModel): + Name: str + RecipeVersion: Optional[str] = None + +class DescribeRulesetRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeScheduleRequestRequestTypeDef(BaseModel): + Name: str + +class ExcelOptionsPaginatorTypeDef(BaseModel): + SheetNames: Optional[List[str]] = None + SheetIndexes: Optional[List[int]] = None + HeaderRow: Optional[bool] = None + +class ExcelOptionsTypeDef(BaseModel): + SheetNames: Optional[Sequence[str]] = None + SheetIndexes: Optional[Sequence[int]] = None + HeaderRow: Optional[bool] = None + +class FilesLimitTypeDef(BaseModel): + MaxFiles: int + OrderedBy: Optional[Literal["LAST_MODIFIED_DATE"]] = None + Order: Optional[OrderType] = None + +class JsonOptionsTypeDef(BaseModel): + MultiLine: Optional[bool] = None + +class MetadataTypeDef(BaseModel): + SourceArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListJobRunsRequestRequestTypeDef(BaseModel): + Name: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + DatasetName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ProjectName: Optional[str] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRecipeVersionsRequestRequestTypeDef(BaseModel): + Name: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRecipesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + RecipeVersion: Optional[str] = None + +class ListRulesetsRequestRequestTypeDef(BaseModel): + TargetArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RulesetItemTypeDef(BaseModel): + Name: str + TargetArn: str + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + Description: Optional[str] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + ResourceArn: Optional[str] = None + RuleCount: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + +class ListSchedulesRequestRequestTypeDef(BaseModel): + JobName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ScheduleTypeDef(BaseModel): + Name: str + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + JobNames: Optional[List[str]] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + ResourceArn: Optional[str] = None + CronExpression: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PublishRecipeRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + +class RecipeActionPaginatorTypeDef(BaseModel): + Operation: str + Parameters: Optional[Dict[str, str]] = None + +class RecipeActionTypeDef(BaseModel): + Operation: str + Parameters: Optional[Mapping[str, str]] = None + +class ThresholdTypeDef(BaseModel): + Value: float + Type: Optional[ThresholdTypeType] = None + Unit: Optional[ThresholdUnitType] = None + +class ViewFrameTypeDef(BaseModel): + StartColumnIndex: int + ColumnRange: Optional[int] = None + HiddenColumns: Optional[Sequence[str]] = None + StartRowIndex: Optional[int] = None + RowRange: Optional[int] = None + Analytics: Optional[AnalyticsModeType] = None + +class StartJobRunRequestRequestTypeDef(BaseModel): + Name: str + +class StartProjectSessionRequestRequestTypeDef(BaseModel): + Name: str + AssumeControl: Optional[bool] = None + +class StatisticOverrideTypeDef(BaseModel): + Statistic: str + Parameters: Mapping[str, str] + +class StopJobRunRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateScheduleRequestRequestTypeDef(BaseModel): + CronExpression: str + Name: str + JobNames: Optional[Sequence[str]] = None + +class EntityDetectorConfigurationTypeDef(BaseModel): + EntityTypes: Sequence[str] + AllowedStatistics: Optional[Sequence[AllowedStatisticsTypeDef]] = None + +class BatchDeleteRecipeVersionResponseTypeDef(BaseModel): + Name: str + Errors: List[RecipeVersionErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileJobResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecipeJobResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecipeResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRulesetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScheduleResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDatasetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteJobResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRecipeVersionResponseTypeDef(BaseModel): + Name: str + RecipeVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRulesetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteScheduleResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScheduleResponseTypeDef(BaseModel): + CreateDate: datetime + CreatedBy: str + JobNames: List[str] + LastModifiedBy: str + LastModifiedDate: datetime + ResourceArn: str + CronExpression: str + Tags: Dict[str, str] + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PublishRecipeResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendProjectSessionActionResponseTypeDef(BaseModel): + Result: str + Name: str + ActionId: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartJobRunResponseTypeDef(BaseModel): + RunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartProjectSessionResponseTypeDef(BaseModel): + Name: str + ClientSessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopJobRunResponseTypeDef(BaseModel): + RunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatasetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfileJobResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectResponseTypeDef(BaseModel): + LastModifiedDate: datetime + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRecipeJobResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRecipeResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRulesetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateScheduleResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataCatalogInputDefinitionTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + TempDirectory: Optional[S3LocationTypeDef] = None + +class DatabaseInputDefinitionTypeDef(BaseModel): + GlueConnectionName: str + DatabaseTableName: Optional[str] = None + TempDirectory: Optional[S3LocationTypeDef] = None + QueryString: Optional[str] = None + +class DatabaseTableOutputOptionsTypeDef(BaseModel): + TableName: str + TempDirectory: Optional[S3LocationTypeDef] = None + +class S3TableOutputOptionsTypeDef(BaseModel): + Location: S3LocationTypeDef + +class CreateProjectRequestRequestTypeDef(BaseModel): + DatasetName: str + Name: str + RecipeName: str + RoleArn: str + Sample: Optional[SampleTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class DescribeProjectResponseTypeDef(BaseModel): + CreateDate: datetime + CreatedBy: str + DatasetName: str + LastModifiedDate: datetime + LastModifiedBy: str + Name: str + RecipeName: str + ResourceArn: str + Sample: SampleTypeDef + RoleArn: str + Tags: Dict[str, str] + SessionStatus: SessionStatusType + OpenedBy: str + OpenDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ProjectTypeDef(BaseModel): + Name: str + RecipeName: str + AccountId: Optional[str] = None + CreateDate: Optional[datetime] = None + CreatedBy: Optional[str] = None + DatasetName: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + ResourceArn: Optional[str] = None + Sample: Optional[SampleTypeDef] = None + Tags: Optional[Dict[str, str]] = None + RoleArn: Optional[str] = None + OpenedBy: Optional[str] = None + OpenDate: Optional[datetime] = None + +class UpdateProjectRequestRequestTypeDef(BaseModel): + RoleArn: str + Name: str + Sample: Optional[SampleTypeDef] = None + +class OutputFormatOptionsTypeDef(BaseModel): + Csv: Optional[CsvOutputOptionsTypeDef] = None + +class DatasetParameterPaginatorTypeDef(BaseModel): + Name: str + Type: ParameterTypeType + DatetimeOptions: Optional[DatetimeOptionsTypeDef] = None + CreateColumn: Optional[bool] = None + Filter: Optional[FilterExpressionPaginatorTypeDef] = None + +class DatasetParameterTypeDef(BaseModel): + Name: str + Type: ParameterTypeType + DatetimeOptions: Optional[DatetimeOptionsTypeDef] = None + CreateColumn: Optional[bool] = None + Filter: Optional[FilterExpressionTypeDef] = None + +class FormatOptionsPaginatorTypeDef(BaseModel): + Json: Optional[JsonOptionsTypeDef] = None + Excel: Optional[ExcelOptionsPaginatorTypeDef] = None + Csv: Optional[CsvOptionsTypeDef] = None + +class FormatOptionsTypeDef(BaseModel): + Json: Optional[JsonOptionsTypeDef] = None + Excel: Optional[ExcelOptionsTypeDef] = None + Csv: Optional[CsvOptionsTypeDef] = None + +class ListDatasetsRequestListDatasetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobRunsRequestListJobRunsPaginateTypeDef(BaseModel): + Name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + DatasetName: Optional[str] = None + ProjectName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecipeVersionsRequestListRecipeVersionsPaginateTypeDef(BaseModel): + Name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecipesRequestListRecipesPaginateTypeDef(BaseModel): + RecipeVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesetsRequestListRulesetsPaginateTypeDef(BaseModel): + TargetArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchedulesRequestListSchedulesPaginateTypeDef(BaseModel): + JobName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesetsResponseTypeDef(BaseModel): + Rulesets: List[RulesetItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchedulesResponseTypeDef(BaseModel): + Schedules: List[ScheduleTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecipeStepPaginatorTypeDef(BaseModel): + Action: RecipeActionPaginatorTypeDef + ConditionExpressions: Optional[List[ConditionExpressionTypeDef]] = None + +class RecipeStepTypeDef(BaseModel): + Action: RecipeActionTypeDef + ConditionExpressions: Optional[Sequence[ConditionExpressionTypeDef]] = None + +class RuleTypeDef(BaseModel): + Name: str + CheckExpression: str + Disabled: Optional[bool] = None + SubstitutionMap: Optional[Mapping[str, str]] = None + Threshold: Optional[ThresholdTypeDef] = None + ColumnSelectors: Optional[Sequence[ColumnSelectorTypeDef]] = None + +class StatisticsConfigurationTypeDef(BaseModel): + IncludedStatistics: Optional[Sequence[str]] = None + Overrides: Optional[Sequence[StatisticOverrideTypeDef]] = None + +class InputTypeDef(BaseModel): + S3InputDefinition: Optional[S3LocationTypeDef] = None + DataCatalogInputDefinition: Optional[DataCatalogInputDefinitionTypeDef] = None + DatabaseInputDefinition: Optional[DatabaseInputDefinitionTypeDef] = None + Metadata: Optional[MetadataTypeDef] = None + +class DatabaseOutputTypeDef(BaseModel): + GlueConnectionName: str + DatabaseOptions: DatabaseTableOutputOptionsTypeDef + DatabaseOutputMode: Optional[Literal["NEW_TABLE"]] = None + +class DataCatalogOutputTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + S3Options: Optional[S3TableOutputOptionsTypeDef] = None + DatabaseOptions: Optional[DatabaseTableOutputOptionsTypeDef] = None + Overwrite: Optional[bool] = None + +class ListProjectsResponseTypeDef(BaseModel): + Projects: List[ProjectTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OutputPaginatorTypeDef(BaseModel): + Location: S3LocationTypeDef + CompressionFormat: Optional[CompressionFormatType] = None + Format: Optional[OutputFormatType] = None + PartitionColumns: Optional[List[str]] = None + Overwrite: Optional[bool] = None + FormatOptions: Optional[OutputFormatOptionsTypeDef] = None + MaxOutputFiles: Optional[int] = None + +class OutputTypeDef(BaseModel): + Location: S3LocationTypeDef + CompressionFormat: Optional[CompressionFormatType] = None + Format: Optional[OutputFormatType] = None + PartitionColumns: Optional[Sequence[str]] = None + Overwrite: Optional[bool] = None + FormatOptions: Optional[OutputFormatOptionsTypeDef] = None + MaxOutputFiles: Optional[int] = None + +class PathOptionsPaginatorTypeDef(BaseModel): + LastModifiedDateCondition: Optional[FilterExpressionPaginatorTypeDef] = None + FilesLimit: Optional[FilesLimitTypeDef] = None + Parameters: Optional[Dict[str, DatasetParameterPaginatorTypeDef]] = None + +class PathOptionsTypeDef(BaseModel): + LastModifiedDateCondition: Optional[FilterExpressionTypeDef] = None + FilesLimit: Optional[FilesLimitTypeDef] = None + Parameters: Optional[Mapping[str, DatasetParameterTypeDef]] = None + +class RecipePaginatorTypeDef(BaseModel): + Name: str + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + ProjectName: Optional[str] = None + PublishedBy: Optional[str] = None + PublishedDate: Optional[datetime] = None + Description: Optional[str] = None + ResourceArn: Optional[str] = None + Steps: Optional[List[RecipeStepPaginatorTypeDef]] = None + Tags: Optional[Dict[str, str]] = None + RecipeVersion: Optional[str] = None + +class CreateRecipeRequestRequestTypeDef(BaseModel): + Name: str + Steps: Sequence[RecipeStepTypeDef] + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class DescribeRecipeResponseTypeDef(BaseModel): + CreatedBy: str + CreateDate: datetime + LastModifiedBy: str + LastModifiedDate: datetime + ProjectName: str + PublishedBy: str + PublishedDate: datetime + Description: str + Name: str + Steps: List[RecipeStepTypeDef] + Tags: Dict[str, str] + ResourceArn: str + RecipeVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecipeTypeDef(BaseModel): + Name: str + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + ProjectName: Optional[str] = None + PublishedBy: Optional[str] = None + PublishedDate: Optional[datetime] = None + Description: Optional[str] = None + ResourceArn: Optional[str] = None + Steps: Optional[List[RecipeStepTypeDef]] = None + Tags: Optional[Dict[str, str]] = None + RecipeVersion: Optional[str] = None + +class SendProjectSessionActionRequestRequestTypeDef(BaseModel): + Name: str + Preview: Optional[bool] = None + RecipeStep: Optional[RecipeStepTypeDef] = None + StepIndex: Optional[int] = None + ClientSessionId: Optional[str] = None + ViewFrame: Optional[ViewFrameTypeDef] = None + +class UpdateRecipeRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Steps: Optional[Sequence[RecipeStepTypeDef]] = None + +class CreateRulesetRequestRequestTypeDef(BaseModel): + Name: str + TargetArn: str + Rules: Sequence[RuleTypeDef] + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class DescribeRulesetResponseTypeDef(BaseModel): + Name: str + Description: str + TargetArn: str + Rules: List[RuleTypeDef] + CreateDate: datetime + CreatedBy: str + LastModifiedBy: str + LastModifiedDate: datetime + ResourceArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRulesetRequestRequestTypeDef(BaseModel): + Name: str + Rules: Sequence[RuleTypeDef] + Description: Optional[str] = None + +class ColumnStatisticsConfigurationTypeDef(BaseModel): + Statistics: StatisticsConfigurationTypeDef + Selectors: Optional[Sequence[ColumnSelectorTypeDef]] = None + +class JobPaginatorTypeDef(BaseModel): + Name: str + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + DatasetName: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + EncryptionMode: Optional[EncryptionModeType] = None + Type: Optional[JobTypeType] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LogSubscription: Optional[LogSubscriptionType] = None + MaxCapacity: Optional[int] = None + MaxRetries: Optional[int] = None + Outputs: Optional[List[OutputPaginatorTypeDef]] = None + DataCatalogOutputs: Optional[List[DataCatalogOutputTypeDef]] = None + DatabaseOutputs: Optional[List[DatabaseOutputTypeDef]] = None + ProjectName: Optional[str] = None + RecipeReference: Optional[RecipeReferenceTypeDef] = None + ResourceArn: Optional[str] = None + RoleArn: Optional[str] = None + Timeout: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + JobSample: Optional[JobSampleTypeDef] = None + ValidationConfigurations: Optional[List[ValidationConfigurationTypeDef]] = None + +class JobRunPaginatorTypeDef(BaseModel): + Attempt: Optional[int] = None + CompletedOn: Optional[datetime] = None + DatasetName: Optional[str] = None + ErrorMessage: Optional[str] = None + ExecutionTime: Optional[int] = None + JobName: Optional[str] = None + RunId: Optional[str] = None + State: Optional[JobRunStateType] = None + LogSubscription: Optional[LogSubscriptionType] = None + LogGroupName: Optional[str] = None + Outputs: Optional[List[OutputPaginatorTypeDef]] = None + DataCatalogOutputs: Optional[List[DataCatalogOutputTypeDef]] = None + DatabaseOutputs: Optional[List[DatabaseOutputTypeDef]] = None + RecipeReference: Optional[RecipeReferenceTypeDef] = None + StartedBy: Optional[str] = None + StartedOn: Optional[datetime] = None + JobSample: Optional[JobSampleTypeDef] = None + ValidationConfigurations: Optional[List[ValidationConfigurationTypeDef]] = None + +class CreateRecipeJobRequestRequestTypeDef(BaseModel): + Name: str + RoleArn: str + DatasetName: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + EncryptionMode: Optional[EncryptionModeType] = None + LogSubscription: Optional[LogSubscriptionType] = None + MaxCapacity: Optional[int] = None + MaxRetries: Optional[int] = None + Outputs: Optional[Sequence[OutputTypeDef]] = None + DataCatalogOutputs: Optional[Sequence[DataCatalogOutputTypeDef]] = None + DatabaseOutputs: Optional[Sequence[DatabaseOutputTypeDef]] = None + ProjectName: Optional[str] = None + RecipeReference: Optional[RecipeReferenceTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + Timeout: Optional[int] = None + +class JobRunTypeDef(BaseModel): + Attempt: Optional[int] = None + CompletedOn: Optional[datetime] = None + DatasetName: Optional[str] = None + ErrorMessage: Optional[str] = None + ExecutionTime: Optional[int] = None + JobName: Optional[str] = None + RunId: Optional[str] = None + State: Optional[JobRunStateType] = None + LogSubscription: Optional[LogSubscriptionType] = None + LogGroupName: Optional[str] = None + Outputs: Optional[List[OutputTypeDef]] = None + DataCatalogOutputs: Optional[List[DataCatalogOutputTypeDef]] = None + DatabaseOutputs: Optional[List[DatabaseOutputTypeDef]] = None + RecipeReference: Optional[RecipeReferenceTypeDef] = None + StartedBy: Optional[str] = None + StartedOn: Optional[datetime] = None + JobSample: Optional[JobSampleTypeDef] = None + ValidationConfigurations: Optional[List[ValidationConfigurationTypeDef]] = None + +class JobTypeDef(BaseModel): + Name: str + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + DatasetName: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + EncryptionMode: Optional[EncryptionModeType] = None + Type: Optional[JobTypeType] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LogSubscription: Optional[LogSubscriptionType] = None + MaxCapacity: Optional[int] = None + MaxRetries: Optional[int] = None + Outputs: Optional[List[OutputTypeDef]] = None + DataCatalogOutputs: Optional[List[DataCatalogOutputTypeDef]] = None + DatabaseOutputs: Optional[List[DatabaseOutputTypeDef]] = None + ProjectName: Optional[str] = None + RecipeReference: Optional[RecipeReferenceTypeDef] = None + ResourceArn: Optional[str] = None + RoleArn: Optional[str] = None + Timeout: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + JobSample: Optional[JobSampleTypeDef] = None + ValidationConfigurations: Optional[List[ValidationConfigurationTypeDef]] = None + +class UpdateRecipeJobRequestRequestTypeDef(BaseModel): + Name: str + RoleArn: str + EncryptionKeyArn: Optional[str] = None + EncryptionMode: Optional[EncryptionModeType] = None + LogSubscription: Optional[LogSubscriptionType] = None + MaxCapacity: Optional[int] = None + MaxRetries: Optional[int] = None + Outputs: Optional[Sequence[OutputTypeDef]] = None + DataCatalogOutputs: Optional[Sequence[DataCatalogOutputTypeDef]] = None + DatabaseOutputs: Optional[Sequence[DatabaseOutputTypeDef]] = None + Timeout: Optional[int] = None + +class DatasetPaginatorTypeDef(BaseModel): + Name: str + Input: InputTypeDef + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + Format: Optional[InputFormatType] = None + FormatOptions: Optional[FormatOptionsPaginatorTypeDef] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + Source: Optional[SourceType] = None + PathOptions: Optional[PathOptionsPaginatorTypeDef] = None + Tags: Optional[Dict[str, str]] = None + ResourceArn: Optional[str] = None + +class CreateDatasetRequestRequestTypeDef(BaseModel): + Name: str + Input: InputTypeDef + Format: Optional[InputFormatType] = None + FormatOptions: Optional[FormatOptionsTypeDef] = None + PathOptions: Optional[PathOptionsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class DatasetTypeDef(BaseModel): + Name: str + Input: InputTypeDef + AccountId: Optional[str] = None + CreatedBy: Optional[str] = None + CreateDate: Optional[datetime] = None + Format: Optional[InputFormatType] = None + FormatOptions: Optional[FormatOptionsTypeDef] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + Source: Optional[SourceType] = None + PathOptions: Optional[PathOptionsTypeDef] = None + Tags: Optional[Dict[str, str]] = None + ResourceArn: Optional[str] = None + +class DescribeDatasetResponseTypeDef(BaseModel): + CreatedBy: str + CreateDate: datetime + Name: str + Format: InputFormatType + FormatOptions: FormatOptionsTypeDef + Input: InputTypeDef + LastModifiedDate: datetime + LastModifiedBy: str + Source: SourceType + PathOptions: PathOptionsTypeDef + Tags: Dict[str, str] + ResourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatasetRequestRequestTypeDef(BaseModel): + Name: str + Input: InputTypeDef + Format: Optional[InputFormatType] = None + FormatOptions: Optional[FormatOptionsTypeDef] = None + PathOptions: Optional[PathOptionsTypeDef] = None + +class ListRecipeVersionsResponsePaginatorTypeDef(BaseModel): + NextToken: str + Recipes: List[RecipePaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecipesResponsePaginatorTypeDef(BaseModel): + Recipes: List[RecipePaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecipeVersionsResponseTypeDef(BaseModel): + NextToken: str + Recipes: List[RecipeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecipesResponseTypeDef(BaseModel): + Recipes: List[RecipeTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProfileConfigurationTypeDef(BaseModel): + DatasetStatisticsConfiguration: Optional[StatisticsConfigurationTypeDef] = None + ProfileColumns: Optional[Sequence[ColumnSelectorTypeDef]] = None + ColumnStatisticsConfigurations: Optional[ Sequence[ColumnStatisticsConfigurationTypeDef] ] = None + EntityDetectorConfiguration: Optional[EntityDetectorConfigurationTypeDef] = None + +class ListJobsResponsePaginatorTypeDef(BaseModel): + Jobs: List[JobPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobRunsResponsePaginatorTypeDef(BaseModel): + JobRuns: List[JobRunPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobRunsResponseTypeDef(BaseModel): + JobRuns: List[JobRunTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponsePaginatorTypeDef(BaseModel): + Datasets: List[DatasetPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponseTypeDef(BaseModel): + Datasets: List[DatasetTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileJobRequestRequestTypeDef(BaseModel): + DatasetName: str + Name: str + OutputLocation: S3LocationTypeDef + RoleArn: str + EncryptionKeyArn: Optional[str] = None + EncryptionMode: Optional[EncryptionModeType] = None + LogSubscription: Optional[LogSubscriptionType] = None + MaxCapacity: Optional[int] = None + MaxRetries: Optional[int] = None + Configuration: Optional[ProfileConfigurationTypeDef] = None + ValidationConfigurations: Optional[Sequence[ValidationConfigurationTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + Timeout: Optional[int] = None + JobSample: Optional[JobSampleTypeDef] = None + +class DescribeJobResponseTypeDef(BaseModel): + CreateDate: datetime + CreatedBy: str + DatasetName: str + EncryptionKeyArn: str + EncryptionMode: EncryptionModeType + Name: str + Type: JobTypeType + LastModifiedBy: str + LastModifiedDate: datetime + LogSubscription: LogSubscriptionType + MaxCapacity: int + MaxRetries: int + Outputs: List[OutputTypeDef] + DataCatalogOutputs: List[DataCatalogOutputTypeDef] + DatabaseOutputs: List[DatabaseOutputTypeDef] + ProjectName: str + ProfileConfiguration: ProfileConfigurationTypeDef + ValidationConfigurations: List[ValidationConfigurationTypeDef] + RecipeReference: RecipeReferenceTypeDef + ResourceArn: str + RoleArn: str + Tags: Dict[str, str] + Timeout: int + JobSample: JobSampleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobRunResponseTypeDef(BaseModel): + Attempt: int + CompletedOn: datetime + DatasetName: str + ErrorMessage: str + ExecutionTime: int + JobName: str + ProfileConfiguration: ProfileConfigurationTypeDef + ValidationConfigurations: List[ValidationConfigurationTypeDef] + RunId: str + State: JobRunStateType + LogSubscription: LogSubscriptionType + LogGroupName: str + Outputs: List[OutputTypeDef] + DataCatalogOutputs: List[DataCatalogOutputTypeDef] + DatabaseOutputs: List[DatabaseOutputTypeDef] + RecipeReference: RecipeReferenceTypeDef + StartedBy: str + StartedOn: datetime + JobSample: JobSampleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfileJobRequestRequestTypeDef(BaseModel): + Name: str + OutputLocation: S3LocationTypeDef + RoleArn: str + Configuration: Optional[ProfileConfigurationTypeDef] = None + EncryptionKeyArn: Optional[str] = None + EncryptionMode: Optional[EncryptionModeType] = None + LogSubscription: Optional[LogSubscriptionType] = None + MaxCapacity: Optional[int] = None + MaxRetries: Optional[int] = None + ValidationConfigurations: Optional[Sequence[ValidationConfigurationTypeDef]] = None + Timeout: Optional[int] = None + JobSample: Optional[JobSampleTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/databrew_constants.py b/aws_resource_validator/pydantic_models/databrew_constants.py new file mode 100644 index 00000000..3b08a1a5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/databrew_constants.py @@ -0,0 +1,451 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnalyticsModeType = Literal["DISABLE", "ENABLE"] +CompressionFormatType = Literal["BROTLI", "BZIP2", "DEFLATE", "GZIP", "LZ4", "LZO", "SNAPPY", "ZLIB", "ZSTD"] +DatabaseOutputModeType = Literal["NEW_TABLE"] +EncryptionModeType = Literal["SSE-KMS", "SSE-S3"] +InputFormatType = Literal["CSV", "EXCEL", "JSON", "ORC", "PARQUET"] +JobRunStateType = Literal["FAILED", "RUNNING", "STARTING", "STOPPED", "STOPPING", "SUCCEEDED", "TIMEOUT"] +JobTypeType = Literal["PROFILE", "RECIPE"] +ListDatasetsPaginatorName = Literal["list_datasets"] +ListJobRunsPaginatorName = Literal["list_job_runs"] +ListJobsPaginatorName = Literal["list_jobs"] +ListProjectsPaginatorName = Literal["list_projects"] +ListRecipeVersionsPaginatorName = Literal["list_recipe_versions"] +ListRecipesPaginatorName = Literal["list_recipes"] +ListRulesetsPaginatorName = Literal["list_rulesets"] +ListSchedulesPaginatorName = Literal["list_schedules"] +LogSubscriptionType = Literal["DISABLE", "ENABLE"] +OrderType = Literal["ASCENDING", "DESCENDING"] +OrderedByType = Literal["LAST_MODIFIED_DATE"] +OutputFormatType = Literal["AVRO", "CSV", "GLUEPARQUET", "JSON", "ORC", "PARQUET", "TABLEAUHYPER", "XML"] +ParameterTypeType = Literal["Datetime", "Number", "String"] +SampleModeType = Literal["CUSTOM_ROWS", "FULL_DATASET"] +SampleTypeType = Literal["FIRST_N", "LAST_N", "RANDOM"] +SessionStatusType = Literal["ASSIGNED", + "FAILED", + "INITIALIZING", + "PROVISIONING", + "READY", + "RECYCLING", + "ROTATING", + "TERMINATED", + "TERMINATING", + "UPDATING",] +SourceType = Literal["DATA-CATALOG", "DATABASE", "S3"] +ThresholdTypeType = Literal["GREATER_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN", "LESS_THAN_OR_EQUAL"] +ThresholdUnitType = Literal["COUNT", "PERCENTAGE"] +ValidationModeType = Literal["CHECK_ALL"] +GlueDataBrewServiceName = Literal["databrew"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_datasets", + "list_job_runs", + "list_jobs", + "list_projects", + "list_recipe_versions", + "list_recipes", + "list_rulesets", + "list_schedules",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/dataexchange_classes.py b/aws_resource_validator/pydantic_models/dataexchange_classes.py new file mode 100644 index 00000000..f9b70ecf --- /dev/null +++ b/aws_resource_validator/pydantic_models/dataexchange_classes.py @@ -0,0 +1,874 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.dataexchange_constants import * + +class ApiGatewayApiAssetTypeDef(BaseModel): + ApiDescription: Optional[str] = None + ApiEndpoint: Optional[str] = None + ApiId: Optional[str] = None + ApiKey: Optional[str] = None + ApiName: Optional[str] = None + ApiSpecificationDownloadUrl: Optional[str] = None + ApiSpecificationDownloadUrlExpiresAt: Optional[datetime] = None + ProtocolType: Optional[Literal["REST"]] = None + Stage: Optional[str] = None + +class AssetDestinationEntryTypeDef(BaseModel): + AssetId: str + Bucket: str + Key: Optional[str] = None + +class RedshiftDataShareAssetTypeDef(BaseModel): + Arn: str + +class S3SnapshotAssetTypeDef(BaseModel): + Size: float + +class AssetSourceEntryTypeDef(BaseModel): + Bucket: str + Key: str + +class AutoExportRevisionDestinationEntryTypeDef(BaseModel): + Bucket: str + KeyPattern: Optional[str] = None + +class ExportServerSideEncryptionTypeDef(BaseModel): + Type: ServerSideEncryptionTypesType + KmsKeyArn: Optional[str] = None + +class CancelJobRequestRequestTypeDef(BaseModel): + JobId: str + +class CreateDataSetRequestRequestTypeDef(BaseModel): + AssetType: AssetTypeType + Description: str + Name: str + Tags: Optional[Mapping[str, str]] = None + +class OriginDetailsTypeDef(BaseModel): + ProductId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateRevisionRequestRequestTypeDef(BaseModel): + DataSetId: str + Comment: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class LFTagPaginatorTypeDef(BaseModel): + TagKey: str + TagValues: List[str] + +class LFTagTypeDef(BaseModel): + TagKey: str + TagValues: Sequence[str] + +class DeleteAssetRequestRequestTypeDef(BaseModel): + AssetId: str + DataSetId: str + RevisionId: str + +class DeleteDataSetRequestRequestTypeDef(BaseModel): + DataSetId: str + +class DeleteEventActionRequestRequestTypeDef(BaseModel): + EventActionId: str + +class DeleteRevisionRequestRequestTypeDef(BaseModel): + DataSetId: str + RevisionId: str + +class ImportAssetFromSignedUrlJobErrorDetailsTypeDef(BaseModel): + AssetName: str + +class RevisionPublishedTypeDef(BaseModel): + DataSetId: str + +class ExportAssetToSignedUrlRequestDetailsTypeDef(BaseModel): + AssetId: str + DataSetId: str + RevisionId: str + +class ExportAssetToSignedUrlResponseDetailsTypeDef(BaseModel): + AssetId: str + DataSetId: str + RevisionId: str + SignedUrl: Optional[str] = None + SignedUrlExpiresAt: Optional[datetime] = None + +class RevisionDestinationEntryTypeDef(BaseModel): + Bucket: str + RevisionId: str + KeyPattern: Optional[str] = None + +class GetAssetRequestRequestTypeDef(BaseModel): + AssetId: str + DataSetId: str + RevisionId: str + +class GetDataSetRequestRequestTypeDef(BaseModel): + DataSetId: str + +class GetEventActionRequestRequestTypeDef(BaseModel): + EventActionId: str + +class GetJobRequestRequestTypeDef(BaseModel): + JobId: str + +class GetRevisionRequestRequestTypeDef(BaseModel): + DataSetId: str + RevisionId: str + +class ImportAssetFromApiGatewayApiRequestDetailsTypeDef(BaseModel): + ApiId: str + ApiName: str + ApiSpecificationMd5Hash: str + DataSetId: str + ProtocolType: Literal["REST"] + RevisionId: str + Stage: str + ApiDescription: Optional[str] = None + ApiKey: Optional[str] = None + +class ImportAssetFromApiGatewayApiResponseDetailsTypeDef(BaseModel): + ApiId: str + ApiName: str + ApiSpecificationMd5Hash: str + ApiSpecificationUploadUrl: str + ApiSpecificationUploadUrlExpiresAt: datetime + DataSetId: str + ProtocolType: Literal["REST"] + RevisionId: str + Stage: str + ApiDescription: Optional[str] = None + ApiKey: Optional[str] = None + +class ImportAssetFromSignedUrlRequestDetailsTypeDef(BaseModel): + AssetName: str + DataSetId: str + Md5Hash: str + RevisionId: str + +class ImportAssetFromSignedUrlResponseDetailsTypeDef(BaseModel): + AssetName: str + DataSetId: str + RevisionId: str + Md5Hash: Optional[str] = None + SignedUrl: Optional[str] = None + SignedUrlExpiresAt: Optional[datetime] = None + +class RedshiftDataShareAssetSourceEntryTypeDef(BaseModel): + DataShareArn: str + +class KmsKeyToGrantTypeDef(BaseModel): + KmsKeyArn: str + +class LakeFormationTagPolicyDetailsTypeDef(BaseModel): + Database: Optional[str] = None + Table: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDataSetRevisionsRequestRequestTypeDef(BaseModel): + DataSetId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RevisionEntryTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + DataSetId: str + Id: str + UpdatedAt: datetime + Comment: Optional[str] = None + Finalized: Optional[bool] = None + SourceId: Optional[str] = None + RevocationComment: Optional[str] = None + Revoked: Optional[bool] = None + RevokedAt: Optional[datetime] = None + +class ListDataSetsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Origin: Optional[str] = None + +class ListEventActionsRequestRequestTypeDef(BaseModel): + EventSourceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + DataSetId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + RevisionId: Optional[str] = None + +class ListRevisionAssetsRequestRequestTypeDef(BaseModel): + DataSetId: str + RevisionId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class RedshiftDataShareDetailsTypeDef(BaseModel): + Arn: str + Database: str + Function: Optional[str] = None + Table: Optional[str] = None + Schema: Optional[str] = None + View: Optional[str] = None + +class RevokeRevisionRequestRequestTypeDef(BaseModel): + DataSetId: str + RevisionId: str + RevocationComment: str + +class S3DataAccessDetailsTypeDef(BaseModel): + KeyPrefixes: Optional[Sequence[str]] = None + Keys: Optional[Sequence[str]] = None + +class SchemaChangeDetailsTypeDef(BaseModel): + Name: str + Type: SchemaChangeTypeType + Description: Optional[str] = None + +class SendApiAssetRequestRequestTypeDef(BaseModel): + AssetId: str + DataSetId: str + RevisionId: str + Body: Optional[str] = None + QueryStringParameters: Optional[Mapping[str, str]] = None + RequestHeaders: Optional[Mapping[str, str]] = None + Method: Optional[str] = None + Path: Optional[str] = None + +class StartJobRequestRequestTypeDef(BaseModel): + JobId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAssetRequestRequestTypeDef(BaseModel): + AssetId: str + DataSetId: str + Name: str + RevisionId: str + +class UpdateDataSetRequestRequestTypeDef(BaseModel): + DataSetId: str + Description: Optional[str] = None + Name: Optional[str] = None + +class UpdateRevisionRequestRequestTypeDef(BaseModel): + DataSetId: str + RevisionId: str + Comment: Optional[str] = None + Finalized: Optional[bool] = None + +class ImportAssetsFromS3RequestDetailsTypeDef(BaseModel): + AssetSources: Sequence[AssetSourceEntryTypeDef] + DataSetId: str + RevisionId: str + +class ImportAssetsFromS3ResponseDetailsTypeDef(BaseModel): + AssetSources: List[AssetSourceEntryTypeDef] + DataSetId: str + RevisionId: str + +class AutoExportRevisionToS3RequestDetailsTypeDef(BaseModel): + RevisionDestination: AutoExportRevisionDestinationEntryTypeDef + Encryption: Optional[ExportServerSideEncryptionTypeDef] = None + +class ExportAssetsToS3RequestDetailsTypeDef(BaseModel): + AssetDestinations: Sequence[AssetDestinationEntryTypeDef] + DataSetId: str + RevisionId: str + Encryption: Optional[ExportServerSideEncryptionTypeDef] = None + +class ExportAssetsToS3ResponseDetailsTypeDef(BaseModel): + AssetDestinations: List[AssetDestinationEntryTypeDef] + DataSetId: str + RevisionId: str + Encryption: Optional[ExportServerSideEncryptionTypeDef] = None + +class DataSetEntryTypeDef(BaseModel): + Arn: str + AssetType: AssetTypeType + CreatedAt: datetime + Description: str + Id: str + Name: str + Origin: OriginType + UpdatedAt: datetime + OriginDetails: Optional[OriginDetailsTypeDef] = None + SourceId: Optional[str] = None + +class CreateDataSetResponseTypeDef(BaseModel): + Arn: str + AssetType: AssetTypeType + CreatedAt: datetime + Description: str + Id: str + Name: str + Origin: OriginType + OriginDetails: OriginDetailsTypeDef + SourceId: str + Tags: Dict[str, str] + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRevisionResponseTypeDef(BaseModel): + Arn: str + Comment: str + CreatedAt: datetime + DataSetId: str + Finalized: bool + Id: str + SourceId: str + Tags: Dict[str, str] + UpdatedAt: datetime + RevocationComment: str + Revoked: bool + RevokedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataSetResponseTypeDef(BaseModel): + Arn: str + AssetType: AssetTypeType + CreatedAt: datetime + Description: str + Id: str + Name: str + Origin: OriginType + OriginDetails: OriginDetailsTypeDef + SourceId: str + Tags: Dict[str, str] + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetRevisionResponseTypeDef(BaseModel): + Arn: str + Comment: str + CreatedAt: datetime + DataSetId: str + Finalized: bool + Id: str + SourceId: str + Tags: Dict[str, str] + UpdatedAt: datetime + RevocationComment: str + Revoked: bool + RevokedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeRevisionResponseTypeDef(BaseModel): + Arn: str + Comment: str + CreatedAt: datetime + DataSetId: str + Finalized: bool + Id: str + SourceId: str + UpdatedAt: datetime + RevocationComment: str + Revoked: bool + RevokedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class SendApiAssetResponseTypeDef(BaseModel): + Body: str + ResponseHeaders: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSetResponseTypeDef(BaseModel): + Arn: str + AssetType: AssetTypeType + CreatedAt: datetime + Description: str + Id: str + Name: str + Origin: OriginType + OriginDetails: OriginDetailsTypeDef + SourceId: str + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRevisionResponseTypeDef(BaseModel): + Arn: str + Comment: str + CreatedAt: datetime + DataSetId: str + Finalized: bool + Id: str + SourceId: str + UpdatedAt: datetime + RevocationComment: str + Revoked: bool + RevokedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DataUpdateRequestDetailsTypeDef(BaseModel): + DataUpdatedAt: Optional[TimestampTypeDef] = None + +class DeprecationRequestDetailsTypeDef(BaseModel): + DeprecationAt: TimestampTypeDef + +class DatabaseLFTagPolicyAndPermissionsPaginatorTypeDef(BaseModel): + Expression: List[LFTagPaginatorTypeDef] + Permissions: List[Literal["DESCRIBE"]] + +class DatabaseLFTagPolicyPaginatorTypeDef(BaseModel): + Expression: List[LFTagPaginatorTypeDef] + +class TableLFTagPolicyAndPermissionsPaginatorTypeDef(BaseModel): + Expression: List[LFTagPaginatorTypeDef] + Permissions: List[TableTagPolicyLFPermissionType] + +class TableLFTagPolicyPaginatorTypeDef(BaseModel): + Expression: List[LFTagPaginatorTypeDef] + +class DatabaseLFTagPolicyAndPermissionsTypeDef(BaseModel): + Expression: Sequence[LFTagTypeDef] + Permissions: Sequence[Literal["DESCRIBE"]] + +class DatabaseLFTagPolicyTypeDef(BaseModel): + Expression: List[LFTagTypeDef] + +class TableLFTagPolicyAndPermissionsTypeDef(BaseModel): + Expression: Sequence[LFTagTypeDef] + Permissions: Sequence[TableTagPolicyLFPermissionType] + +class TableLFTagPolicyTypeDef(BaseModel): + Expression: List[LFTagTypeDef] + +class DetailsTypeDef(BaseModel): + ImportAssetFromSignedUrlJobErrorDetails: Optional[ ImportAssetFromSignedUrlJobErrorDetailsTypeDef ] = None + ImportAssetsFromS3JobErrorDetails: Optional[List[AssetSourceEntryTypeDef]] = None + +class EventTypeDef(BaseModel): + RevisionPublished: Optional[RevisionPublishedTypeDef] = None + +class ExportRevisionsToS3RequestDetailsTypeDef(BaseModel): + DataSetId: str + RevisionDestinations: Sequence[RevisionDestinationEntryTypeDef] + Encryption: Optional[ExportServerSideEncryptionTypeDef] = None + +class ExportRevisionsToS3ResponseDetailsTypeDef(BaseModel): + DataSetId: str + RevisionDestinations: List[RevisionDestinationEntryTypeDef] + Encryption: Optional[ExportServerSideEncryptionTypeDef] = None + EventActionArn: Optional[str] = None + +class ImportAssetsFromRedshiftDataSharesRequestDetailsTypeDef(BaseModel): + AssetSources: Sequence[RedshiftDataShareAssetSourceEntryTypeDef] + DataSetId: str + RevisionId: str + +class ImportAssetsFromRedshiftDataSharesResponseDetailsTypeDef(BaseModel): + AssetSources: List[RedshiftDataShareAssetSourceEntryTypeDef] + DataSetId: str + RevisionId: str + +class S3DataAccessAssetSourceEntryPaginatorTypeDef(BaseModel): + Bucket: str + KeyPrefixes: Optional[List[str]] = None + Keys: Optional[List[str]] = None + KmsKeysToGrant: Optional[List[KmsKeyToGrantTypeDef]] = None + +class S3DataAccessAssetSourceEntryTypeDef(BaseModel): + Bucket: str + KeyPrefixes: Optional[Sequence[str]] = None + Keys: Optional[Sequence[str]] = None + KmsKeysToGrant: Optional[Sequence[KmsKeyToGrantTypeDef]] = None + +class S3DataAccessAssetTypeDef(BaseModel): + Bucket: str + KeyPrefixes: Optional[List[str]] = None + Keys: Optional[List[str]] = None + S3AccessPointAlias: Optional[str] = None + S3AccessPointArn: Optional[str] = None + KmsKeysToGrant: Optional[List[KmsKeyToGrantTypeDef]] = None + +class ListDataSetRevisionsRequestListDataSetRevisionsPaginateTypeDef(BaseModel): + DataSetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSetsRequestListDataSetsPaginateTypeDef(BaseModel): + Origin: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventActionsRequestListEventActionsPaginateTypeDef(BaseModel): + EventSourceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + DataSetId: Optional[str] = None + RevisionId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRevisionAssetsRequestListRevisionAssetsPaginateTypeDef(BaseModel): + DataSetId: str + RevisionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSetRevisionsResponseTypeDef(BaseModel): + NextToken: str + Revisions: List[RevisionEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ScopeDetailsTypeDef(BaseModel): + LakeFormationTagPolicies: Optional[Sequence[LakeFormationTagPolicyDetailsTypeDef]] = None + RedshiftDataShares: Optional[Sequence[RedshiftDataShareDetailsTypeDef]] = None + S3DataAccesses: Optional[Sequence[S3DataAccessDetailsTypeDef]] = None + +class SchemaChangeRequestDetailsTypeDef(BaseModel): + SchemaChangeAt: TimestampTypeDef + Changes: Optional[Sequence[SchemaChangeDetailsTypeDef]] = None + +class ActionTypeDef(BaseModel): + ExportRevisionToS3: Optional[AutoExportRevisionToS3RequestDetailsTypeDef] = None + +class ListDataSetsResponseTypeDef(BaseModel): + DataSets: List[DataSetEntryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportAssetsFromLakeFormationTagPolicyResponseDetailsPaginatorTypeDef(BaseModel): + CatalogId: str + RoleArn: str + DataSetId: str + RevisionId: str + Database: Optional[DatabaseLFTagPolicyAndPermissionsPaginatorTypeDef] = None + Table: Optional[TableLFTagPolicyAndPermissionsPaginatorTypeDef] = None + +class LFResourceDetailsPaginatorTypeDef(BaseModel): + Database: Optional[DatabaseLFTagPolicyPaginatorTypeDef] = None + Table: Optional[TableLFTagPolicyPaginatorTypeDef] = None + +class ImportAssetsFromLakeFormationTagPolicyRequestDetailsTypeDef(BaseModel): + CatalogId: str + RoleArn: str + DataSetId: str + RevisionId: str + Database: Optional[DatabaseLFTagPolicyAndPermissionsTypeDef] = None + Table: Optional[TableLFTagPolicyAndPermissionsTypeDef] = None + +class ImportAssetsFromLakeFormationTagPolicyResponseDetailsTypeDef(BaseModel): + CatalogId: str + RoleArn: str + DataSetId: str + RevisionId: str + Database: Optional[DatabaseLFTagPolicyAndPermissionsTypeDef] = None + Table: Optional[TableLFTagPolicyAndPermissionsTypeDef] = None + +class LFResourceDetailsTypeDef(BaseModel): + Database: Optional[DatabaseLFTagPolicyTypeDef] = None + Table: Optional[TableLFTagPolicyTypeDef] = None + +class JobErrorTypeDef(BaseModel): + Code: CodeType + Message: str + Details: Optional[DetailsTypeDef] = None + LimitName: Optional[JobErrorLimitNameType] = None + LimitValue: Optional[float] = None + ResourceId: Optional[str] = None + ResourceType: Optional[JobErrorResourceTypesType] = None + +class CreateS3DataAccessFromS3BucketResponseDetailsPaginatorTypeDef(BaseModel): + AssetSource: S3DataAccessAssetSourceEntryPaginatorTypeDef + DataSetId: str + RevisionId: str + +class CreateS3DataAccessFromS3BucketRequestDetailsTypeDef(BaseModel): + AssetSource: S3DataAccessAssetSourceEntryTypeDef + DataSetId: str + RevisionId: str + +class CreateS3DataAccessFromS3BucketResponseDetailsTypeDef(BaseModel): + AssetSource: S3DataAccessAssetSourceEntryTypeDef + DataSetId: str + RevisionId: str + +class NotificationDetailsTypeDef(BaseModel): + DataUpdate: Optional[DataUpdateRequestDetailsTypeDef] = None + Deprecation: Optional[DeprecationRequestDetailsTypeDef] = None + SchemaChange: Optional[SchemaChangeRequestDetailsTypeDef] = None + +class CreateEventActionRequestRequestTypeDef(BaseModel): + Action: ActionTypeDef + Event: EventTypeDef + +class CreateEventActionResponseTypeDef(BaseModel): + Action: ActionTypeDef + Arn: str + CreatedAt: datetime + Event: EventTypeDef + Id: str + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EventActionEntryTypeDef(BaseModel): + Action: ActionTypeDef + Arn: str + CreatedAt: datetime + Event: EventTypeDef + Id: str + UpdatedAt: datetime + +class GetEventActionResponseTypeDef(BaseModel): + Action: ActionTypeDef + Arn: str + CreatedAt: datetime + Event: EventTypeDef + Id: str + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventActionRequestRequestTypeDef(BaseModel): + EventActionId: str + Action: Optional[ActionTypeDef] = None + +class UpdateEventActionResponseTypeDef(BaseModel): + Action: ActionTypeDef + Arn: str + CreatedAt: datetime + Event: EventTypeDef + Id: str + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class LFTagPolicyDetailsPaginatorTypeDef(BaseModel): + CatalogId: str + ResourceType: LFResourceTypeType + ResourceDetails: LFResourceDetailsPaginatorTypeDef + +class LFTagPolicyDetailsTypeDef(BaseModel): + CatalogId: str + ResourceType: LFResourceTypeType + ResourceDetails: LFResourceDetailsTypeDef + +class ResponseDetailsPaginatorTypeDef(BaseModel): + ExportAssetToSignedUrl: Optional[ExportAssetToSignedUrlResponseDetailsTypeDef] = None + ExportAssetsToS3: Optional[ExportAssetsToS3ResponseDetailsTypeDef] = None + ExportRevisionsToS3: Optional[ExportRevisionsToS3ResponseDetailsTypeDef] = None + ImportAssetFromSignedUrl: Optional[ImportAssetFromSignedUrlResponseDetailsTypeDef] = None + ImportAssetsFromS3: Optional[ImportAssetsFromS3ResponseDetailsTypeDef] = None + ImportAssetsFromRedshiftDataShares: Optional[ ImportAssetsFromRedshiftDataSharesResponseDetailsTypeDef ] = None + ImportAssetFromApiGatewayApi: Optional[ ImportAssetFromApiGatewayApiResponseDetailsTypeDef ] = None + CreateS3DataAccessFromS3Bucket: Optional[ CreateS3DataAccessFromS3BucketResponseDetailsPaginatorTypeDef ] = None + ImportAssetsFromLakeFormationTagPolicy: Optional[ ImportAssetsFromLakeFormationTagPolicyResponseDetailsPaginatorTypeDef ] = None + +class RequestDetailsTypeDef(BaseModel): + ExportAssetToSignedUrl: Optional[ExportAssetToSignedUrlRequestDetailsTypeDef] = None + ExportAssetsToS3: Optional[ExportAssetsToS3RequestDetailsTypeDef] = None + ExportRevisionsToS3: Optional[ExportRevisionsToS3RequestDetailsTypeDef] = None + ImportAssetFromSignedUrl: Optional[ImportAssetFromSignedUrlRequestDetailsTypeDef] = None + ImportAssetsFromS3: Optional[ImportAssetsFromS3RequestDetailsTypeDef] = None + ImportAssetsFromRedshiftDataShares: Optional[ ImportAssetsFromRedshiftDataSharesRequestDetailsTypeDef ] = None + ImportAssetFromApiGatewayApi: Optional[ ImportAssetFromApiGatewayApiRequestDetailsTypeDef ] = None + CreateS3DataAccessFromS3Bucket: Optional[ CreateS3DataAccessFromS3BucketRequestDetailsTypeDef ] = None + ImportAssetsFromLakeFormationTagPolicy: Optional[ ImportAssetsFromLakeFormationTagPolicyRequestDetailsTypeDef ] = None + +class ResponseDetailsTypeDef(BaseModel): + ExportAssetToSignedUrl: Optional[ExportAssetToSignedUrlResponseDetailsTypeDef] = None + ExportAssetsToS3: Optional[ExportAssetsToS3ResponseDetailsTypeDef] = None + ExportRevisionsToS3: Optional[ExportRevisionsToS3ResponseDetailsTypeDef] = None + ImportAssetFromSignedUrl: Optional[ImportAssetFromSignedUrlResponseDetailsTypeDef] = None + ImportAssetsFromS3: Optional[ImportAssetsFromS3ResponseDetailsTypeDef] = None + ImportAssetsFromRedshiftDataShares: Optional[ ImportAssetsFromRedshiftDataSharesResponseDetailsTypeDef ] = None + ImportAssetFromApiGatewayApi: Optional[ ImportAssetFromApiGatewayApiResponseDetailsTypeDef ] = None + CreateS3DataAccessFromS3Bucket: Optional[ CreateS3DataAccessFromS3BucketResponseDetailsTypeDef ] = None + ImportAssetsFromLakeFormationTagPolicy: Optional[ ImportAssetsFromLakeFormationTagPolicyResponseDetailsTypeDef ] = None + +class SendDataSetNotificationRequestRequestTypeDef(BaseModel): + DataSetId: str + Type: NotificationTypeType + Scope: Optional[ScopeDetailsTypeDef] = None + ClientToken: Optional[str] = None + Comment: Optional[str] = None + Details: Optional[NotificationDetailsTypeDef] = None + +class ListEventActionsResponseTypeDef(BaseModel): + EventActions: List[EventActionEntryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LakeFormationDataPermissionDetailsPaginatorTypeDef(BaseModel): + LFTagPolicy: Optional[LFTagPolicyDetailsPaginatorTypeDef] = None + +class LakeFormationDataPermissionDetailsTypeDef(BaseModel): + LFTagPolicy: Optional[LFTagPolicyDetailsTypeDef] = None + +class JobEntryPaginatorTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Details: ResponseDetailsPaginatorTypeDef + Id: str + State: StateType + Type: TypeType + UpdatedAt: datetime + Errors: Optional[List[JobErrorTypeDef]] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + Details: RequestDetailsTypeDef + Type: TypeType + +class CreateJobResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Details: ResponseDetailsTypeDef + Errors: List[JobErrorTypeDef] + Id: str + State: StateType + Type: TypeType + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Details: ResponseDetailsTypeDef + Errors: List[JobErrorTypeDef] + Id: str + State: StateType + Type: TypeType + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class JobEntryTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Details: ResponseDetailsTypeDef + Id: str + State: StateType + Type: TypeType + UpdatedAt: datetime + Errors: Optional[List[JobErrorTypeDef]] = None + +class LakeFormationDataPermissionAssetPaginatorTypeDef(BaseModel): + LakeFormationDataPermissionDetails: LakeFormationDataPermissionDetailsPaginatorTypeDef + LakeFormationDataPermissionType: Literal["LFTagPolicy"] + Permissions: List[LFPermissionType] + RoleArn: Optional[str] = None + +class LakeFormationDataPermissionAssetTypeDef(BaseModel): + LakeFormationDataPermissionDetails: LakeFormationDataPermissionDetailsTypeDef + LakeFormationDataPermissionType: Literal["LFTagPolicy"] + Permissions: List[LFPermissionType] + RoleArn: Optional[str] = None + +class ListJobsResponsePaginatorTypeDef(BaseModel): + Jobs: List[JobEntryPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsResponseTypeDef(BaseModel): + Jobs: List[JobEntryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetDetailsPaginatorTypeDef(BaseModel): + S3SnapshotAsset: Optional[S3SnapshotAssetTypeDef] = None + RedshiftDataShareAsset: Optional[RedshiftDataShareAssetTypeDef] = None + ApiGatewayApiAsset: Optional[ApiGatewayApiAssetTypeDef] = None + S3DataAccessAsset: Optional[S3DataAccessAssetTypeDef] = None + LakeFormationDataPermissionAsset: Optional[ LakeFormationDataPermissionAssetPaginatorTypeDef ] = None + +class AssetDetailsTypeDef(BaseModel): + S3SnapshotAsset: Optional[S3SnapshotAssetTypeDef] = None + RedshiftDataShareAsset: Optional[RedshiftDataShareAssetTypeDef] = None + ApiGatewayApiAsset: Optional[ApiGatewayApiAssetTypeDef] = None + S3DataAccessAsset: Optional[S3DataAccessAssetTypeDef] = None + LakeFormationDataPermissionAsset: Optional[LakeFormationDataPermissionAssetTypeDef] = None + +class AssetEntryPaginatorTypeDef(BaseModel): + Arn: str + AssetDetails: AssetDetailsPaginatorTypeDef + AssetType: AssetTypeType + CreatedAt: datetime + DataSetId: str + Id: str + Name: str + RevisionId: str + UpdatedAt: datetime + SourceId: Optional[str] = None + +class AssetEntryTypeDef(BaseModel): + Arn: str + AssetDetails: AssetDetailsTypeDef + AssetType: AssetTypeType + CreatedAt: datetime + DataSetId: str + Id: str + Name: str + RevisionId: str + UpdatedAt: datetime + SourceId: Optional[str] = None + +class GetAssetResponseTypeDef(BaseModel): + Arn: str + AssetDetails: AssetDetailsTypeDef + AssetType: AssetTypeType + CreatedAt: datetime + DataSetId: str + Id: str + Name: str + RevisionId: str + SourceId: str + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssetResponseTypeDef(BaseModel): + Arn: str + AssetDetails: AssetDetailsTypeDef + AssetType: AssetTypeType + CreatedAt: datetime + DataSetId: str + Id: str + Name: str + RevisionId: str + SourceId: str + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListRevisionAssetsResponsePaginatorTypeDef(BaseModel): + Assets: List[AssetEntryPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRevisionAssetsResponseTypeDef(BaseModel): + Assets: List[AssetEntryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/dataexchange_constants.py b/aws_resource_validator/pydantic_models/dataexchange_constants.py new file mode 100644 index 00000000..dbc12c3c --- /dev/null +++ b/aws_resource_validator/pydantic_models/dataexchange_constants.py @@ -0,0 +1,448 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssetTypeType = Literal["API_GATEWAY_API", + "LAKE_FORMATION_DATA_PERMISSION", + "REDSHIFT_DATA_SHARE", + "S3_DATA_ACCESS", + "S3_SNAPSHOT",] +CodeType = Literal["ACCESS_DENIED_EXCEPTION", + "INTERNAL_SERVER_EXCEPTION", + "MALWARE_DETECTED", + "MALWARE_SCAN_ENCRYPTED_FILE", + "RESOURCE_NOT_FOUND_EXCEPTION", + "SERVICE_QUOTA_EXCEEDED_EXCEPTION", + "VALIDATION_EXCEPTION",] +DatabaseLFTagPolicyPermissionType = Literal["DESCRIBE"] +JobErrorLimitNameType = Literal["AWS Lake Formation data permission assets per revision", + "Amazon Redshift datashare assets per revision", + "Amazon S3 data access assets per revision", + "Asset size in GB", + "Assets per revision",] +JobErrorResourceTypesType = Literal["ASSET", "DATA_SET", "REVISION"] +LFPermissionType = Literal["DESCRIBE", "SELECT"] +LFResourceTypeType = Literal["DATABASE", "TABLE"] +LakeFormationDataPermissionTypeType = Literal["LFTagPolicy"] +ListDataSetRevisionsPaginatorName = Literal["list_data_set_revisions"] +ListDataSetsPaginatorName = Literal["list_data_sets"] +ListEventActionsPaginatorName = Literal["list_event_actions"] +ListJobsPaginatorName = Literal["list_jobs"] +ListRevisionAssetsPaginatorName = Literal["list_revision_assets"] +NotificationTypeType = Literal["DATA_DELAY", "DATA_UPDATE", "DEPRECATION", "SCHEMA_CHANGE"] +OriginType = Literal["ENTITLED", "OWNED"] +ProtocolTypeType = Literal["REST"] +SchemaChangeTypeType = Literal["ADD", "MODIFY", "REMOVE"] +ServerSideEncryptionTypesType = Literal["AES256", "aws:kms"] +StateType = Literal["CANCELLED", "COMPLETED", "ERROR", "IN_PROGRESS", "TIMED_OUT", "WAITING"] +TableTagPolicyLFPermissionType = Literal["DESCRIBE", "SELECT"] +TypeType = Literal["CREATE_S3_DATA_ACCESS_FROM_S3_BUCKET", + "EXPORT_ASSETS_TO_S3", + "EXPORT_ASSET_TO_SIGNED_URL", + "EXPORT_REVISIONS_TO_S3", + "IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY", + "IMPORT_ASSETS_FROM_REDSHIFT_DATA_SHARES", + "IMPORT_ASSETS_FROM_S3", + "IMPORT_ASSET_FROM_API_GATEWAY_API", + "IMPORT_ASSET_FROM_SIGNED_URL",] +DataExchangeServiceName = Literal["dataexchange"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_data_set_revisions", + "list_data_sets", + "list_event_actions", + "list_jobs", + "list_revision_assets",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/datapipeline_classes.py b/aws_resource_validator/pydantic_models/datapipeline_classes.py new file mode 100644 index 00000000..3b976313 --- /dev/null +++ b/aws_resource_validator/pydantic_models/datapipeline_classes.py @@ -0,0 +1,261 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.datapipeline_constants import * + +class ParameterValueTypeDef(BaseModel): + id: str + stringValue: str + +class TagTypeDef(BaseModel): + key: str + value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeactivatePipelineInputRequestTypeDef(BaseModel): + pipelineId: str + cancelActive: Optional[bool] = None + +class DeletePipelineInputRequestTypeDef(BaseModel): + pipelineId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeObjectsInputRequestTypeDef(BaseModel): + pipelineId: str + objectIds: Sequence[str] + evaluateExpressions: Optional[bool] = None + marker: Optional[str] = None + +class DescribePipelinesInputRequestTypeDef(BaseModel): + pipelineIds: Sequence[str] + +class EvaluateExpressionInputRequestTypeDef(BaseModel): + pipelineId: str + objectId: str + expression: str + +class FieldTypeDef(BaseModel): + key: str + stringValue: Optional[str] = None + refValue: Optional[str] = None + +class GetPipelineDefinitionInputRequestTypeDef(BaseModel): + pipelineId: str + version: Optional[str] = None + +class InstanceIdentityTypeDef(BaseModel): + document: Optional[str] = None + signature: Optional[str] = None + +class ListPipelinesInputRequestTypeDef(BaseModel): + marker: Optional[str] = None + +class PipelineIdNameTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class OperatorTypeDef(BaseModel): + type: Optional[OperatorTypeType] = None + values: Optional[Sequence[str]] = None + +class ParameterAttributeTypeDef(BaseModel): + key: str + stringValue: str + +class ValidationErrorTypeDef(BaseModel): + id: Optional[str] = None + errors: Optional[List[str]] = None + +class ValidationWarningTypeDef(BaseModel): + id: Optional[str] = None + warnings: Optional[List[str]] = None + +class RemoveTagsInputRequestTypeDef(BaseModel): + pipelineId: str + tagKeys: Sequence[str] + +class ReportTaskRunnerHeartbeatInputRequestTypeDef(BaseModel): + taskrunnerId: str + workerGroup: Optional[str] = None + hostname: Optional[str] = None + +class SetStatusInputRequestTypeDef(BaseModel): + pipelineId: str + objectIds: Sequence[str] + status: str + +class SetTaskStatusInputRequestTypeDef(BaseModel): + taskId: str + taskStatus: TaskStatusType + errorId: Optional[str] = None + errorMessage: Optional[str] = None + errorStackTrace: Optional[str] = None + +class ActivatePipelineInputRequestTypeDef(BaseModel): + pipelineId: str + parameterValues: Optional[Sequence[ParameterValueTypeDef]] = None + startTimestamp: Optional[TimestampTypeDef] = None + +class AddTagsInputRequestTypeDef(BaseModel): + pipelineId: str + tags: Sequence[TagTypeDef] + +class CreatePipelineInputRequestTypeDef(BaseModel): + name: str + uniqueId: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePipelineOutputTypeDef(BaseModel): + pipelineId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluateExpressionOutputTypeDef(BaseModel): + evaluatedExpression: str + ResponseMetadata: ResponseMetadataTypeDef + +class QueryObjectsOutputTypeDef(BaseModel): + ids: List[str] + marker: str + hasMoreResults: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReportTaskProgressOutputTypeDef(BaseModel): + canceled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReportTaskRunnerHeartbeatOutputTypeDef(BaseModel): + terminate: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeObjectsInputDescribeObjectsPaginateTypeDef(BaseModel): + pipelineId: str + objectIds: Sequence[str] + evaluateExpressions: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelinesInputListPipelinesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PipelineDescriptionTypeDef(BaseModel): + pipelineId: str + name: str + fields: List[FieldTypeDef] + description: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + +class PipelineObjectTypeDef(BaseModel): + id: str + name: str + fields: List[FieldTypeDef] + +class ReportTaskProgressInputRequestTypeDef(BaseModel): + taskId: str + fields: Optional[Sequence[FieldTypeDef]] = None + +class PollForTaskInputRequestTypeDef(BaseModel): + workerGroup: str + hostname: Optional[str] = None + instanceIdentity: Optional[InstanceIdentityTypeDef] = None + +class ListPipelinesOutputTypeDef(BaseModel): + pipelineIdList: List[PipelineIdNameTypeDef] + marker: str + hasMoreResults: bool + ResponseMetadata: ResponseMetadataTypeDef + +class SelectorTypeDef(BaseModel): + fieldName: Optional[str] = None + operator: Optional[OperatorTypeDef] = None + +class ParameterObjectTypeDef(BaseModel): + id: str + attributes: List[ParameterAttributeTypeDef] + +class PutPipelineDefinitionOutputTypeDef(BaseModel): + validationErrors: List[ValidationErrorTypeDef] + validationWarnings: List[ValidationWarningTypeDef] + errored: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ValidatePipelineDefinitionOutputTypeDef(BaseModel): + validationErrors: List[ValidationErrorTypeDef] + validationWarnings: List[ValidationWarningTypeDef] + errored: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePipelinesOutputTypeDef(BaseModel): + pipelineDescriptionList: List[PipelineDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeObjectsOutputTypeDef(BaseModel): + pipelineObjects: List[PipelineObjectTypeDef] + marker: str + hasMoreResults: bool + ResponseMetadata: ResponseMetadataTypeDef + +class TaskObjectTypeDef(BaseModel): + taskId: Optional[str] = None + pipelineId: Optional[str] = None + attemptId: Optional[str] = None + objects: Optional[Dict[str, PipelineObjectTypeDef]] = None + +class QueryTypeDef(BaseModel): + selectors: Optional[Sequence[SelectorTypeDef]] = None + +class GetPipelineDefinitionOutputTypeDef(BaseModel): + pipelineObjects: List[PipelineObjectTypeDef] + parameterObjects: List[ParameterObjectTypeDef] + parameterValues: List[ParameterValueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutPipelineDefinitionInputRequestTypeDef(BaseModel): + pipelineId: str + pipelineObjects: Sequence[PipelineObjectTypeDef] + parameterObjects: Optional[Sequence[ParameterObjectTypeDef]] = None + parameterValues: Optional[Sequence[ParameterValueTypeDef]] = None + +class ValidatePipelineDefinitionInputRequestTypeDef(BaseModel): + pipelineId: str + pipelineObjects: Sequence[PipelineObjectTypeDef] + parameterObjects: Optional[Sequence[ParameterObjectTypeDef]] = None + parameterValues: Optional[Sequence[ParameterValueTypeDef]] = None + +class PollForTaskOutputTypeDef(BaseModel): + taskObject: TaskObjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class QueryObjectsInputQueryObjectsPaginateTypeDef(BaseModel): + pipelineId: str + sphere: str + query: Optional[QueryTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class QueryObjectsInputRequestTypeDef(BaseModel): + pipelineId: str + sphere: str + query: Optional[QueryTypeDef] = None + marker: Optional[str] = None + limit: Optional[int] = None + diff --git a/aws_resource_validator/pydantic_models/datapipeline_constants.py b/aws_resource_validator/pydantic_models/datapipeline_constants.py new file mode 100644 index 00000000..4ed80a94 --- /dev/null +++ b/aws_resource_validator/pydantic_models/datapipeline_constants.py @@ -0,0 +1,396 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeObjectsPaginatorName = Literal["describe_objects"] +ListPipelinesPaginatorName = Literal["list_pipelines"] +OperatorTypeType = Literal["BETWEEN", "EQ", "GE", "LE", "REF_EQ"] +QueryObjectsPaginatorName = Literal["query_objects"] +TaskStatusType = Literal["FAILED", "FALSE", "FINISHED"] +DataPipelineServiceName = Literal["datapipeline"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_objects", "list_pipelines", "query_objects"] +RegionName = Literal["ap-northeast-1", "ap-southeast-2", "eu-west-1", "us-east-1", "us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/datasync_classes.py b/aws_resource_validator/pydantic_models/datasync_classes.py new file mode 100644 index 00000000..462eea43 --- /dev/null +++ b/aws_resource_validator/pydantic_models/datasync_classes.py @@ -0,0 +1,1002 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.datasync_constants import * + +class CredentialsTypeDef(BaseModel): + Username: str + Password: str + +class DiscoveryServerConfigurationTypeDef(BaseModel): + ServerHostname: str + ServerPort: Optional[int] = None + +class TagListEntryTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class PlatformTypeDef(BaseModel): + Version: Optional[str] = None + +class AzureBlobSasConfigurationTypeDef(BaseModel): + Token: str + +class CancelTaskExecutionRequestRequestTypeDef(BaseModel): + TaskExecutionArn: str + +class CapacityTypeDef(BaseModel): + Used: Optional[int] = None + Provisioned: Optional[int] = None + LogicalUsed: Optional[int] = None + ClusterCloudStorageUsed: Optional[int] = None + +class Ec2ConfigTypeDef(BaseModel): + SubnetArn: str + SecurityGroupArns: Sequence[str] + +class HdfsNameNodeTypeDef(BaseModel): + Hostname: str + Port: int + +class QopConfigurationTypeDef(BaseModel): + RpcProtection: Optional[HdfsRpcProtectionType] = None + DataTransferProtection: Optional[HdfsDataTransferProtectionType] = None + +class NfsMountOptionsTypeDef(BaseModel): + Version: Optional[NfsVersionType] = None + +class OnPremConfigTypeDef(BaseModel): + AgentArns: Sequence[str] + +class S3ConfigTypeDef(BaseModel): + BucketAccessRoleArn: str + +class SmbMountOptionsTypeDef(BaseModel): + Version: Optional[SmbVersionType] = None + +class FilterRuleTypeDef(BaseModel): + FilterType: Optional[Literal["SIMPLE_PATTERN"]] = None + Value: Optional[str] = None + +class OptionsTypeDef(BaseModel): + VerifyMode: Optional[VerifyModeType] = None + OverwriteMode: Optional[OverwriteModeType] = None + Atime: Optional[AtimeType] = None + Mtime: Optional[MtimeType] = None + Uid: Optional[UidType] = None + Gid: Optional[GidType] = None + PreserveDeletedFiles: Optional[PreserveDeletedFilesType] = None + PreserveDevices: Optional[PreserveDevicesType] = None + PosixPermissions: Optional[PosixPermissionsType] = None + BytesPerSecond: Optional[int] = None + TaskQueueing: Optional[TaskQueueingType] = None + LogLevel: Optional[LogLevelType] = None + TransferMode: Optional[TransferModeType] = None + SecurityDescriptorCopyFlags: Optional[SmbSecurityDescriptorCopyFlagsType] = None + ObjectTags: Optional[ObjectTagsType] = None + +class TaskScheduleTypeDef(BaseModel): + ScheduleExpression: str + Status: Optional[ScheduleStatusType] = None + +class DeleteAgentRequestRequestTypeDef(BaseModel): + AgentArn: str + +class DeleteLocationRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DeleteTaskRequestRequestTypeDef(BaseModel): + TaskArn: str + +class DescribeAgentRequestRequestTypeDef(BaseModel): + AgentArn: str + +class PrivateLinkConfigTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + PrivateLinkEndpoint: Optional[str] = None + SubnetArns: Optional[List[str]] = None + SecurityGroupArns: Optional[List[str]] = None + +class DescribeDiscoveryJobRequestRequestTypeDef(BaseModel): + DiscoveryJobArn: str + +class DescribeLocationAzureBlobRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationEfsRequestRequestTypeDef(BaseModel): + LocationArn: str + +class Ec2ConfigOutputTypeDef(BaseModel): + SubnetArn: str + SecurityGroupArns: List[str] + +class DescribeLocationFsxLustreRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationFsxOntapRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationFsxOpenZfsRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationFsxWindowsRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationHdfsRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationNfsRequestRequestTypeDef(BaseModel): + LocationArn: str + +class OnPremConfigOutputTypeDef(BaseModel): + AgentArns: List[str] + +class DescribeLocationObjectStorageRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationS3RequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeLocationSmbRequestRequestTypeDef(BaseModel): + LocationArn: str + +class DescribeStorageSystemRequestRequestTypeDef(BaseModel): + StorageSystemArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeStorageSystemResourcesRequestRequestTypeDef(BaseModel): + DiscoveryJobArn: str + ResourceType: DiscoveryResourceTypeType + ResourceIds: Optional[Sequence[str]] = None + Filter: Optional[Mapping[Literal["SVM"], Sequence[str]]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTaskExecutionRequestRequestTypeDef(BaseModel): + TaskExecutionArn: str + +class ReportResultTypeDef(BaseModel): + Status: Optional[PhaseStatusType] = None + ErrorCode: Optional[str] = None + ErrorDetail: Optional[str] = None + +class TaskExecutionResultDetailTypeDef(BaseModel): + PrepareDuration: Optional[int] = None + PrepareStatus: Optional[PhaseStatusType] = None + TotalDuration: Optional[int] = None + TransferDuration: Optional[int] = None + TransferStatus: Optional[PhaseStatusType] = None + VerifyDuration: Optional[int] = None + VerifyStatus: Optional[PhaseStatusType] = None + ErrorCode: Optional[str] = None + ErrorDetail: Optional[str] = None + +class DescribeTaskRequestRequestTypeDef(BaseModel): + TaskArn: str + +class TaskScheduleDetailsTypeDef(BaseModel): + StatusUpdateTime: Optional[datetime] = None + DisabledReason: Optional[str] = None + DisabledBy: Optional[ScheduleDisabledByType] = None + +class DiscoveryJobListEntryTypeDef(BaseModel): + DiscoveryJobArn: Optional[str] = None + Status: Optional[DiscoveryJobStatusType] = None + +class GenerateRecommendationsRequestRequestTypeDef(BaseModel): + DiscoveryJobArn: str + ResourceIds: Sequence[str] + ResourceType: DiscoveryResourceTypeType + +class IOPSTypeDef(BaseModel): + Read: Optional[float] = None + Write: Optional[float] = None + Other: Optional[float] = None + Total: Optional[float] = None + +class LatencyTypeDef(BaseModel): + Read: Optional[float] = None + Write: Optional[float] = None + Other: Optional[float] = None + +class ListAgentsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDiscoveryJobsRequestRequestTypeDef(BaseModel): + StorageSystemArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LocationFilterTypeDef(BaseModel): + Name: LocationFilterNameType + Values: Sequence[str] + Operator: OperatorType + +class LocationListEntryTypeDef(BaseModel): + LocationArn: Optional[str] = None + LocationUri: Optional[str] = None + +class ListStorageSystemsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class StorageSystemListEntryTypeDef(BaseModel): + StorageSystemArn: Optional[str] = None + Name: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTaskExecutionsRequestRequestTypeDef(BaseModel): + TaskArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TaskExecutionListEntryTypeDef(BaseModel): + TaskExecutionArn: Optional[str] = None + Status: Optional[TaskExecutionStatusType] = None + +class TaskFilterTypeDef(BaseModel): + Name: TaskFilterNameType + Values: Sequence[str] + Operator: OperatorType + +class TaskListEntryTypeDef(BaseModel): + TaskArn: Optional[str] = None + Status: Optional[TaskStatusType] = None + Name: Optional[str] = None + +class MaxP95PerformanceTypeDef(BaseModel): + IopsRead: Optional[float] = None + IopsWrite: Optional[float] = None + IopsOther: Optional[float] = None + IopsTotal: Optional[float] = None + ThroughputRead: Optional[float] = None + ThroughputWrite: Optional[float] = None + ThroughputOther: Optional[float] = None + ThroughputTotal: Optional[float] = None + LatencyRead: Optional[float] = None + LatencyWrite: Optional[float] = None + LatencyOther: Optional[float] = None + +class RecommendationTypeDef(BaseModel): + StorageType: Optional[str] = None + StorageConfiguration: Optional[Dict[str, str]] = None + EstimatedMonthlyStorageCost: Optional[str] = None + +class ThroughputTypeDef(BaseModel): + Read: Optional[float] = None + Write: Optional[float] = None + Other: Optional[float] = None + Total: Optional[float] = None + +class RemoveStorageSystemRequestRequestTypeDef(BaseModel): + StorageSystemArn: str + +class ReportDestinationS3TypeDef(BaseModel): + S3BucketArn: str + BucketAccessRoleArn: str + Subdirectory: Optional[str] = None + +class ReportOverrideTypeDef(BaseModel): + ReportLevel: Optional[ReportLevelType] = None + +class S3ManifestConfigTypeDef(BaseModel): + ManifestObjectPath: str + BucketAccessRoleArn: str + S3BucketArn: str + ManifestObjectVersionId: Optional[str] = None + +class StopDiscoveryJobRequestRequestTypeDef(BaseModel): + DiscoveryJobArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Keys: Sequence[str] + +class UpdateAgentRequestRequestTypeDef(BaseModel): + AgentArn: str + Name: Optional[str] = None + +class UpdateDiscoveryJobRequestRequestTypeDef(BaseModel): + DiscoveryJobArn: str + CollectionDurationMinutes: int + +class UpdateStorageSystemRequestRequestTypeDef(BaseModel): + StorageSystemArn: str + ServerConfiguration: Optional[DiscoveryServerConfigurationTypeDef] = None + AgentArns: Optional[Sequence[str]] = None + Name: Optional[str] = None + CloudWatchLogGroupArn: Optional[str] = None + Credentials: Optional[CredentialsTypeDef] = None + +class AddStorageSystemRequestRequestTypeDef(BaseModel): + ServerConfiguration: DiscoveryServerConfigurationTypeDef + SystemType: Literal["NetAppONTAP"] + AgentArns: Sequence[str] + ClientToken: str + Credentials: CredentialsTypeDef + CloudWatchLogGroupArn: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + Name: Optional[str] = None + +class CreateAgentRequestRequestTypeDef(BaseModel): + ActivationKey: str + AgentName: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + VpcEndpointId: Optional[str] = None + SubnetArns: Optional[Sequence[str]] = None + SecurityGroupArns: Optional[Sequence[str]] = None + +class CreateLocationFsxLustreRequestRequestTypeDef(BaseModel): + FsxFilesystemArn: str + SecurityGroupArns: Sequence[str] + Subdirectory: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class CreateLocationFsxWindowsRequestRequestTypeDef(BaseModel): + FsxFilesystemArn: str + SecurityGroupArns: Sequence[str] + User: str + Password: str + Subdirectory: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + Domain: Optional[str] = None + +class StartDiscoveryJobRequestRequestTypeDef(BaseModel): + StorageSystemArn: str + CollectionDurationMinutes: int + ClientToken: str + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagListEntryTypeDef] + +class AddStorageSystemResponseTypeDef(BaseModel): + StorageSystemArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAgentResponseTypeDef(BaseModel): + AgentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationAzureBlobResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationEfsResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationFsxLustreResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationFsxOntapResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationFsxOpenZfsResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationFsxWindowsResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationHdfsResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationNfsResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationObjectStorageResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationS3ResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationSmbResponseTypeDef(BaseModel): + LocationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTaskResponseTypeDef(BaseModel): + TaskArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDiscoveryJobResponseTypeDef(BaseModel): + StorageSystemArn: str + DiscoveryJobArn: str + CollectionDurationMinutes: int + Status: DiscoveryJobStatusType + JobStartTime: datetime + JobEndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationAzureBlobResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + AuthenticationType: Literal["SAS"] + BlobType: Literal["BLOCK"] + AccessTier: AzureAccessTierType + AgentArns: List[str] + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationFsxLustreResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + SecurityGroupArns: List[str] + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationFsxWindowsResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + SecurityGroupArns: List[str] + CreationTime: datetime + User: str + Domain: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationObjectStorageResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + AccessKey: str + ServerPort: int + ServerProtocol: ObjectStorageServerProtocolType + AgentArns: List[str] + CreationTime: datetime + ServerCertificate: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStorageSystemResponseTypeDef(BaseModel): + StorageSystemArn: str + ServerConfiguration: DiscoveryServerConfigurationTypeDef + SystemType: Literal["NetAppONTAP"] + AgentArns: List[str] + Name: str + ErrorMessage: str + ConnectivityStatus: StorageSystemConnectivityStatusType + CloudWatchLogGroupArn: str + CreationTime: datetime + SecretsManagerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartDiscoveryJobResponseTypeDef(BaseModel): + DiscoveryJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartTaskExecutionResponseTypeDef(BaseModel): + TaskExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AgentListEntryTypeDef(BaseModel): + AgentArn: Optional[str] = None + Name: Optional[str] = None + Status: Optional[AgentStatusType] = None + Platform: Optional[PlatformTypeDef] = None + +class CreateLocationAzureBlobRequestRequestTypeDef(BaseModel): + ContainerUrl: str + AuthenticationType: Literal["SAS"] + AgentArns: Sequence[str] + SasConfiguration: Optional[AzureBlobSasConfigurationTypeDef] = None + BlobType: Optional[Literal["BLOCK"]] = None + AccessTier: Optional[AzureAccessTierType] = None + Subdirectory: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class UpdateLocationAzureBlobRequestRequestTypeDef(BaseModel): + LocationArn: str + Subdirectory: Optional[str] = None + AuthenticationType: Optional[Literal["SAS"]] = None + SasConfiguration: Optional[AzureBlobSasConfigurationTypeDef] = None + BlobType: Optional[Literal["BLOCK"]] = None + AccessTier: Optional[AzureAccessTierType] = None + AgentArns: Optional[Sequence[str]] = None + +class CreateLocationObjectStorageRequestRequestTypeDef(BaseModel): + ServerHostname: str + BucketName: str + AgentArns: Sequence[str] + ServerPort: Optional[int] = None + ServerProtocol: Optional[ObjectStorageServerProtocolType] = None + Subdirectory: Optional[str] = None + AccessKey: Optional[str] = None + SecretKey: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + ServerCertificate: Optional[BlobTypeDef] = None + +class UpdateLocationObjectStorageRequestRequestTypeDef(BaseModel): + LocationArn: str + ServerPort: Optional[int] = None + ServerProtocol: Optional[ObjectStorageServerProtocolType] = None + Subdirectory: Optional[str] = None + AccessKey: Optional[str] = None + SecretKey: Optional[str] = None + AgentArns: Optional[Sequence[str]] = None + ServerCertificate: Optional[BlobTypeDef] = None + +class CreateLocationEfsRequestRequestTypeDef(BaseModel): + EfsFilesystemArn: str + Ec2Config: Ec2ConfigTypeDef + Subdirectory: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + AccessPointArn: Optional[str] = None + FileSystemAccessRoleArn: Optional[str] = None + InTransitEncryption: Optional[EfsInTransitEncryptionType] = None + +class CreateLocationHdfsRequestRequestTypeDef(BaseModel): + NameNodes: Sequence[HdfsNameNodeTypeDef] + AuthenticationType: HdfsAuthenticationTypeType + AgentArns: Sequence[str] + Subdirectory: Optional[str] = None + BlockSize: Optional[int] = None + ReplicationFactor: Optional[int] = None + KmsKeyProviderUri: Optional[str] = None + QopConfiguration: Optional[QopConfigurationTypeDef] = None + SimpleUser: Optional[str] = None + KerberosPrincipal: Optional[str] = None + KerberosKeytab: Optional[BlobTypeDef] = None + KerberosKrb5Conf: Optional[BlobTypeDef] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class DescribeLocationHdfsResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + NameNodes: List[HdfsNameNodeTypeDef] + BlockSize: int + ReplicationFactor: int + KmsKeyProviderUri: str + QopConfiguration: QopConfigurationTypeDef + AuthenticationType: HdfsAuthenticationTypeType + SimpleUser: str + KerberosPrincipal: str + AgentArns: List[str] + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLocationHdfsRequestRequestTypeDef(BaseModel): + LocationArn: str + Subdirectory: Optional[str] = None + NameNodes: Optional[Sequence[HdfsNameNodeTypeDef]] = None + BlockSize: Optional[int] = None + ReplicationFactor: Optional[int] = None + KmsKeyProviderUri: Optional[str] = None + QopConfiguration: Optional[QopConfigurationTypeDef] = None + AuthenticationType: Optional[HdfsAuthenticationTypeType] = None + SimpleUser: Optional[str] = None + KerberosPrincipal: Optional[str] = None + KerberosKeytab: Optional[BlobTypeDef] = None + KerberosKrb5Conf: Optional[BlobTypeDef] = None + AgentArns: Optional[Sequence[str]] = None + +class FsxProtocolNfsTypeDef(BaseModel): + MountOptions: Optional[NfsMountOptionsTypeDef] = None + +class CreateLocationNfsRequestRequestTypeDef(BaseModel): + Subdirectory: str + ServerHostname: str + OnPremConfig: OnPremConfigTypeDef + MountOptions: Optional[NfsMountOptionsTypeDef] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class UpdateLocationNfsRequestRequestTypeDef(BaseModel): + LocationArn: str + Subdirectory: Optional[str] = None + OnPremConfig: Optional[OnPremConfigTypeDef] = None + MountOptions: Optional[NfsMountOptionsTypeDef] = None + +class CreateLocationS3RequestRequestTypeDef(BaseModel): + S3BucketArn: str + S3Config: S3ConfigTypeDef + Subdirectory: Optional[str] = None + S3StorageClass: Optional[S3StorageClassType] = None + AgentArns: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class DescribeLocationS3ResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + S3StorageClass: S3StorageClassType + S3Config: S3ConfigTypeDef + AgentArns: List[str] + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocationSmbRequestRequestTypeDef(BaseModel): + Subdirectory: str + ServerHostname: str + User: str + Password: str + AgentArns: Sequence[str] + Domain: Optional[str] = None + MountOptions: Optional[SmbMountOptionsTypeDef] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class DescribeLocationSmbResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + AgentArns: List[str] + User: str + Domain: str + MountOptions: SmbMountOptionsTypeDef + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class FsxProtocolSmbTypeDef(BaseModel): + Password: str + User: str + Domain: Optional[str] = None + MountOptions: Optional[SmbMountOptionsTypeDef] = None + +class UpdateLocationSmbRequestRequestTypeDef(BaseModel): + LocationArn: str + Subdirectory: Optional[str] = None + User: Optional[str] = None + Domain: Optional[str] = None + Password: Optional[str] = None + AgentArns: Optional[Sequence[str]] = None + MountOptions: Optional[SmbMountOptionsTypeDef] = None + +class UpdateTaskExecutionRequestRequestTypeDef(BaseModel): + TaskExecutionArn: str + Options: OptionsTypeDef + +class DescribeAgentResponseTypeDef(BaseModel): + AgentArn: str + Name: str + Status: AgentStatusType + LastConnectionTime: datetime + CreationTime: datetime + EndpointType: EndpointTypeType + PrivateLinkConfig: PrivateLinkConfigTypeDef + Platform: PlatformTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationEfsResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + Ec2Config: Ec2ConfigOutputTypeDef + CreationTime: datetime + AccessPointArn: str + FileSystemAccessRoleArn: str + InTransitEncryption: EfsInTransitEncryptionType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationNfsResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + OnPremConfig: OnPremConfigOutputTypeDef + MountOptions: NfsMountOptionsTypeDef + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListAgentsRequestListAgentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDiscoveryJobsRequestListDiscoveryJobsPaginateTypeDef(BaseModel): + StorageSystemArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStorageSystemsRequestListStorageSystemsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTaskExecutionsRequestListTaskExecutionsPaginateTypeDef(BaseModel): + TaskArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStorageSystemResourceMetricsRequestDescribeStorageSystemResourceMetricsPaginateTypeDef(BaseModel): + DiscoveryJobArn: str + ResourceType: DiscoveryResourceTypeType + ResourceId: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStorageSystemResourceMetricsRequestRequestTypeDef(BaseModel): + DiscoveryJobArn: str + ResourceType: DiscoveryResourceTypeType + ResourceId: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDiscoveryJobsResponseTypeDef(BaseModel): + DiscoveryJobs: List[DiscoveryJobListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListLocationsRequestListLocationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[LocationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLocationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[LocationFilterTypeDef]] = None + +class ListLocationsResponseTypeDef(BaseModel): + Locations: List[LocationListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStorageSystemsResponseTypeDef(BaseModel): + StorageSystems: List[StorageSystemListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTaskExecutionsResponseTypeDef(BaseModel): + TaskExecutions: List[TaskExecutionListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTasksRequestListTasksPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[TaskFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTasksRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[TaskFilterTypeDef]] = None + +class ListTasksResponseTypeDef(BaseModel): + Tasks: List[TaskListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class NetAppONTAPClusterTypeDef(BaseModel): + CifsShareCount: Optional[int] = None + NfsExportedVolumes: Optional[int] = None + ResourceId: Optional[str] = None + ClusterName: Optional[str] = None + MaxP95Performance: Optional[MaxP95PerformanceTypeDef] = None + ClusterBlockStorageSize: Optional[int] = None + ClusterBlockStorageUsed: Optional[int] = None + ClusterBlockStorageLogicalUsed: Optional[int] = None + Recommendations: Optional[List[RecommendationTypeDef]] = None + RecommendationStatus: Optional[RecommendationStatusType] = None + LunCount: Optional[int] = None + ClusterCloudStorageUsed: Optional[int] = None + +class NetAppONTAPSVMTypeDef(BaseModel): + ClusterUuid: Optional[str] = None + ResourceId: Optional[str] = None + SvmName: Optional[str] = None + CifsShareCount: Optional[int] = None + EnabledProtocols: Optional[List[str]] = None + TotalCapacityUsed: Optional[int] = None + TotalCapacityProvisioned: Optional[int] = None + TotalLogicalCapacityUsed: Optional[int] = None + MaxP95Performance: Optional[MaxP95PerformanceTypeDef] = None + Recommendations: Optional[List[RecommendationTypeDef]] = None + NfsExportedVolumes: Optional[int] = None + RecommendationStatus: Optional[RecommendationStatusType] = None + TotalSnapshotCapacityUsed: Optional[int] = None + LunCount: Optional[int] = None + +class NetAppONTAPVolumeTypeDef(BaseModel): + VolumeName: Optional[str] = None + ResourceId: Optional[str] = None + CifsShareCount: Optional[int] = None + SecurityStyle: Optional[str] = None + SvmUuid: Optional[str] = None + SvmName: Optional[str] = None + CapacityUsed: Optional[int] = None + CapacityProvisioned: Optional[int] = None + LogicalCapacityUsed: Optional[int] = None + NfsExported: Optional[bool] = None + SnapshotCapacityUsed: Optional[int] = None + MaxP95Performance: Optional[MaxP95PerformanceTypeDef] = None + Recommendations: Optional[List[RecommendationTypeDef]] = None + RecommendationStatus: Optional[RecommendationStatusType] = None + LunCount: Optional[int] = None + +class P95MetricsTypeDef(BaseModel): + IOPS: Optional[IOPSTypeDef] = None + Throughput: Optional[ThroughputTypeDef] = None + Latency: Optional[LatencyTypeDef] = None + +class ReportDestinationTypeDef(BaseModel): + S3: Optional[ReportDestinationS3TypeDef] = None + +class ReportOverridesTypeDef(BaseModel): + Transferred: Optional[ReportOverrideTypeDef] = None + Verified: Optional[ReportOverrideTypeDef] = None + Deleted: Optional[ReportOverrideTypeDef] = None + Skipped: Optional[ReportOverrideTypeDef] = None + +class SourceManifestConfigTypeDef(BaseModel): + S3: S3ManifestConfigTypeDef + +class ListAgentsResponseTypeDef(BaseModel): + Agents: List[AgentListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FsxProtocolTypeDef(BaseModel): + NFS: Optional[FsxProtocolNfsTypeDef] = None + SMB: Optional[FsxProtocolSmbTypeDef] = None + +class ResourceDetailsTypeDef(BaseModel): + NetAppONTAPSVMs: Optional[List[NetAppONTAPSVMTypeDef]] = None + NetAppONTAPVolumes: Optional[List[NetAppONTAPVolumeTypeDef]] = None + NetAppONTAPClusters: Optional[List[NetAppONTAPClusterTypeDef]] = None + +class ResourceMetricsTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + P95Metrics: Optional[P95MetricsTypeDef] = None + Capacity: Optional[CapacityTypeDef] = None + ResourceId: Optional[str] = None + ResourceType: Optional[DiscoveryResourceTypeType] = None + +class TaskReportConfigTypeDef(BaseModel): + Destination: Optional[ReportDestinationTypeDef] = None + OutputType: Optional[ReportOutputTypeType] = None + ReportLevel: Optional[ReportLevelType] = None + ObjectVersionIds: Optional[ObjectVersionIdsType] = None + Overrides: Optional[ReportOverridesTypeDef] = None + +class ManifestConfigTypeDef(BaseModel): + Action: Optional[Literal["TRANSFER"]] = None + Format: Optional[Literal["CSV"]] = None + Source: Optional[SourceManifestConfigTypeDef] = None + +class CreateLocationFsxOntapRequestRequestTypeDef(BaseModel): + Protocol: FsxProtocolTypeDef + SecurityGroupArns: Sequence[str] + StorageVirtualMachineArn: str + Subdirectory: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class CreateLocationFsxOpenZfsRequestRequestTypeDef(BaseModel): + FsxFilesystemArn: str + Protocol: FsxProtocolTypeDef + SecurityGroupArns: Sequence[str] + Subdirectory: Optional[str] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class DescribeLocationFsxOntapResponseTypeDef(BaseModel): + CreationTime: datetime + LocationArn: str + LocationUri: str + Protocol: FsxProtocolTypeDef + SecurityGroupArns: List[str] + StorageVirtualMachineArn: str + FsxFilesystemArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocationFsxOpenZfsResponseTypeDef(BaseModel): + LocationArn: str + LocationUri: str + SecurityGroupArns: List[str] + Protocol: FsxProtocolTypeDef + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStorageSystemResourcesResponseTypeDef(BaseModel): + ResourceDetails: ResourceDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStorageSystemResourceMetricsResponseTypeDef(BaseModel): + Metrics: List[ResourceMetricsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTaskRequestRequestTypeDef(BaseModel): + SourceLocationArn: str + DestinationLocationArn: str + CloudWatchLogGroupArn: Optional[str] = None + Name: Optional[str] = None + Options: Optional[OptionsTypeDef] = None + Excludes: Optional[Sequence[FilterRuleTypeDef]] = None + Schedule: Optional[TaskScheduleTypeDef] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + Includes: Optional[Sequence[FilterRuleTypeDef]] = None + ManifestConfig: Optional[ManifestConfigTypeDef] = None + TaskReportConfig: Optional[TaskReportConfigTypeDef] = None + +class DescribeTaskExecutionResponseTypeDef(BaseModel): + TaskExecutionArn: str + Status: TaskExecutionStatusType + Options: OptionsTypeDef + Excludes: List[FilterRuleTypeDef] + Includes: List[FilterRuleTypeDef] + ManifestConfig: ManifestConfigTypeDef + StartTime: datetime + EstimatedFilesToTransfer: int + EstimatedBytesToTransfer: int + FilesTransferred: int + BytesWritten: int + BytesTransferred: int + BytesCompressed: int + Result: TaskExecutionResultDetailTypeDef + TaskReportConfig: TaskReportConfigTypeDef + FilesDeleted: int + FilesSkipped: int + FilesVerified: int + ReportResult: ReportResultTypeDef + EstimatedFilesToDelete: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTaskResponseTypeDef(BaseModel): + TaskArn: str + Status: TaskStatusType + Name: str + CurrentTaskExecutionArn: str + SourceLocationArn: str + DestinationLocationArn: str + CloudWatchLogGroupArn: str + SourceNetworkInterfaceArns: List[str] + DestinationNetworkInterfaceArns: List[str] + Options: OptionsTypeDef + Excludes: List[FilterRuleTypeDef] + Schedule: TaskScheduleTypeDef + ErrorCode: str + ErrorDetail: str + CreationTime: datetime + Includes: List[FilterRuleTypeDef] + ManifestConfig: ManifestConfigTypeDef + TaskReportConfig: TaskReportConfigTypeDef + ScheduleDetails: TaskScheduleDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartTaskExecutionRequestRequestTypeDef(BaseModel): + TaskArn: str + OverrideOptions: Optional[OptionsTypeDef] = None + Includes: Optional[Sequence[FilterRuleTypeDef]] = None + Excludes: Optional[Sequence[FilterRuleTypeDef]] = None + ManifestConfig: Optional[ManifestConfigTypeDef] = None + TaskReportConfig: Optional[TaskReportConfigTypeDef] = None + Tags: Optional[Sequence[TagListEntryTypeDef]] = None + +class UpdateTaskRequestRequestTypeDef(BaseModel): + TaskArn: str + Options: Optional[OptionsTypeDef] = None + Excludes: Optional[Sequence[FilterRuleTypeDef]] = None + Schedule: Optional[TaskScheduleTypeDef] = None + Name: Optional[str] = None + CloudWatchLogGroupArn: Optional[str] = None + Includes: Optional[Sequence[FilterRuleTypeDef]] = None + ManifestConfig: Optional[ManifestConfigTypeDef] = None + TaskReportConfig: Optional[TaskReportConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/datasync_constants.py b/aws_resource_validator/pydantic_models/datasync_constants.py new file mode 100644 index 00000000..d21f910b --- /dev/null +++ b/aws_resource_validator/pydantic_models/datasync_constants.py @@ -0,0 +1,516 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgentStatusType = Literal["OFFLINE", "ONLINE"] +AtimeType = Literal["BEST_EFFORT", "NONE"] +AzureAccessTierType = Literal["ARCHIVE", "COOL", "HOT"] +AzureBlobAuthenticationTypeType = Literal["SAS"] +AzureBlobTypeType = Literal["BLOCK"] +DescribeStorageSystemResourceMetricsPaginatorName = Literal["describe_storage_system_resource_metrics"] +DiscoveryJobStatusType = Literal["COMPLETED", "COMPLETED_WITH_ISSUES", "FAILED", "RUNNING", "STOPPED", "TERMINATED", "WARNING"] +DiscoveryResourceFilterType = Literal["SVM"] +DiscoveryResourceTypeType = Literal["CLUSTER", "SVM", "VOLUME"] +DiscoverySystemTypeType = Literal["NetAppONTAP"] +EfsInTransitEncryptionType = Literal["NONE", "TLS1_2"] +EndpointTypeType = Literal["FIPS", "PRIVATE_LINK", "PUBLIC"] +FilterTypeType = Literal["SIMPLE_PATTERN"] +GidType = Literal["BOTH", "INT_VALUE", "NAME", "NONE"] +HdfsAuthenticationTypeType = Literal["KERBEROS", "SIMPLE"] +HdfsDataTransferProtectionType = Literal["AUTHENTICATION", "DISABLED", "INTEGRITY", "PRIVACY"] +HdfsRpcProtectionType = Literal["AUTHENTICATION", "DISABLED", "INTEGRITY", "PRIVACY"] +ListAgentsPaginatorName = Literal["list_agents"] +ListDiscoveryJobsPaginatorName = Literal["list_discovery_jobs"] +ListLocationsPaginatorName = Literal["list_locations"] +ListStorageSystemsPaginatorName = Literal["list_storage_systems"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListTaskExecutionsPaginatorName = Literal["list_task_executions"] +ListTasksPaginatorName = Literal["list_tasks"] +LocationFilterNameType = Literal["CreationTime", "LocationType", "LocationUri"] +LogLevelType = Literal["BASIC", "OFF", "TRANSFER"] +ManifestActionType = Literal["TRANSFER"] +ManifestFormatType = Literal["CSV"] +MtimeType = Literal["NONE", "PRESERVE"] +NfsVersionType = Literal["AUTOMATIC", "NFS3", "NFS4_0", "NFS4_1"] +ObjectStorageServerProtocolType = Literal["HTTP", "HTTPS"] +ObjectTagsType = Literal["NONE", "PRESERVE"] +ObjectVersionIdsType = Literal["INCLUDE", "NONE"] +OperatorType = Literal["BeginsWith", + "Contains", + "Equals", + "GreaterThan", + "GreaterThanOrEqual", + "In", + "LessThan", + "LessThanOrEqual", + "NotContains", + "NotEquals",] +OverwriteModeType = Literal["ALWAYS", "NEVER"] +PhaseStatusType = Literal["ERROR", "PENDING", "SUCCESS"] +PosixPermissionsType = Literal["NONE", "PRESERVE"] +PreserveDeletedFilesType = Literal["PRESERVE", "REMOVE"] +PreserveDevicesType = Literal["NONE", "PRESERVE"] +RecommendationStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "NONE"] +ReportLevelType = Literal["ERRORS_ONLY", "SUCCESSES_AND_ERRORS"] +ReportOutputTypeType = Literal["STANDARD", "SUMMARY_ONLY"] +S3StorageClassType = Literal["DEEP_ARCHIVE", + "GLACIER", + "GLACIER_INSTANT_RETRIEVAL", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "OUTPOSTS", + "STANDARD", + "STANDARD_IA",] +ScheduleDisabledByType = Literal["SERVICE", "USER"] +ScheduleStatusType = Literal["DISABLED", "ENABLED"] +SmbSecurityDescriptorCopyFlagsType = Literal["NONE", "OWNER_DACL", "OWNER_DACL_SACL"] +SmbVersionType = Literal["AUTOMATIC", "SMB1", "SMB2", "SMB2_0", "SMB3"] +StorageSystemConnectivityStatusType = Literal["FAIL", "PASS", "UNKNOWN"] +TaskExecutionStatusType = Literal["CANCELLING", + "ERROR", + "LAUNCHING", + "PREPARING", + "QUEUED", + "SUCCESS", + "TRANSFERRING", + "VERIFYING",] +TaskFilterNameType = Literal["CreationTime", "LocationId"] +TaskQueueingType = Literal["DISABLED", "ENABLED"] +TaskStatusType = Literal["AVAILABLE", "CREATING", "QUEUED", "RUNNING", "UNAVAILABLE"] +TransferModeType = Literal["ALL", "CHANGED"] +UidType = Literal["BOTH", "INT_VALUE", "NAME", "NONE"] +VerifyModeType = Literal["NONE", "ONLY_FILES_TRANSFERRED", "POINT_IN_TIME_CONSISTENT"] +DataSyncServiceName = Literal["datasync"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_storage_system_resource_metrics", + "list_agents", + "list_discovery_jobs", + "list_locations", + "list_storage_systems", + "list_tags_for_resource", + "list_task_executions", + "list_tasks",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +Ec2ConfigUnionTypeDef = Union['Ec2ConfigTypeDef', 'Ec2ConfigOutputTypeDef'] +OnPremConfigUnionTypeDef = Union['OnPremConfigTypeDef', 'OnPremConfigOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/datazone_classes.py b/aws_resource_validator/pydantic_models/datazone_classes.py new file mode 100644 index 00000000..c6c5809d --- /dev/null +++ b/aws_resource_validator/pydantic_models/datazone_classes.py @@ -0,0 +1,2834 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.datazone_constants import * + +class AcceptChoiceTypeDef(BaseModel): + predictionTarget: str + editedValue: Optional[str] = None + predictionChoice: Optional[int] = None + +class AcceptRuleTypeDef(BaseModel): + rule: Optional[AcceptRuleBehaviorType] = None + threshold: Optional[float] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AcceptSubscriptionRequestInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + decisionComment: Optional[str] = None + +class AwsConsoleLinkParametersTypeDef(BaseModel): + uri: Optional[str] = None + +class FormOutputTypeDef(BaseModel): + formName: str + content: Optional[str] = None + typeName: Optional[str] = None + typeRevision: Optional[str] = None + +class TimeSeriesDataPointSummaryFormOutputTypeDef(BaseModel): + formName: str + timestamp: datetime + typeIdentifier: str + contentSummary: Optional[str] = None + id: Optional[str] = None + typeRevision: Optional[str] = None + +class AssetListingDetailsTypeDef(BaseModel): + listingId: str + listingStatus: ListingStatusType + +class DetailedGlossaryTermTypeDef(BaseModel): + name: Optional[str] = None + shortDescription: Optional[str] = None + +class AssetRevisionTypeDef(BaseModel): + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + domainId: Optional[str] = None + id: Optional[str] = None + revision: Optional[str] = None + +class AssetTargetNameMapTypeDef(BaseModel): + assetId: str + targetName: str + +class FormEntryOutputTypeDef(BaseModel): + typeName: str + typeRevision: str + required: Optional[bool] = None + +class AssociateEnvironmentRoleInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + environmentRoleArn: str + +class BusinessNameGenerationConfigurationTypeDef(BaseModel): + enabled: Optional[bool] = None + +class CancelMetadataGenerationRunInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class CancelSubscriptionInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class CloudFormationPropertiesTypeDef(BaseModel): + templateUrl: str + +class ConfigurableActionParameterTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class FormInputTypeDef(BaseModel): + formName: str + content: Optional[str] = None + typeIdentifier: Optional[str] = None + typeRevision: Optional[str] = None + +class FormEntryInputTypeDef(BaseModel): + typeIdentifier: str + typeRevision: str + required: Optional[bool] = None + +class RecommendationConfigurationTypeDef(BaseModel): + enableBusinessNameGeneration: Optional[bool] = None + +class ScheduleConfigurationTypeDef(BaseModel): + schedule: Optional[str] = None + timezone: Optional[TimezoneType] = None + +class DataSourceErrorMessageTypeDef(BaseModel): + errorType: DataSourceErrorTypeType + errorDetail: Optional[str] = None + +class SingleSignOnTypeDef(BaseModel): + type: Optional[AuthTypeType] = None + userAssignment: Optional[UserAssignmentType] = None + +class EnvironmentParameterTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class CustomParameterTypeDef(BaseModel): + fieldType: str + keyName: str + defaultValue: Optional[str] = None + description: Optional[str] = None + isEditable: Optional[bool] = None + isOptional: Optional[bool] = None + +class DeploymentPropertiesTypeDef(BaseModel): + endTimeoutMinutes: Optional[int] = None + startTimeoutMinutes: Optional[int] = None + +class ResourceTypeDef(BaseModel): + type: str + value: str + name: Optional[str] = None + provider: Optional[str] = None + +class ModelTypeDef(BaseModel): + smithy: Optional[str] = None + +class CreateGlossaryInputRequestTypeDef(BaseModel): + domainIdentifier: str + name: str + owningProjectIdentifier: str + clientToken: Optional[str] = None + description: Optional[str] = None + status: Optional[GlossaryStatusType] = None + +class TermRelationsTypeDef(BaseModel): + classifies: Optional[Sequence[str]] = None + isA: Optional[Sequence[str]] = None + +class TermRelationsOutputTypeDef(BaseModel): + classifies: Optional[List[str]] = None + isA: Optional[List[str]] = None + +class CreateGroupProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + groupIdentifier: str + clientToken: Optional[str] = None + +class CreateListingChangeSetInputRequestTypeDef(BaseModel): + action: ChangeActionType + domainIdentifier: str + entityIdentifier: str + entityType: Literal["ASSET"] + clientToken: Optional[str] = None + entityRevision: Optional[str] = None + +class CreateProjectInputRequestTypeDef(BaseModel): + domainIdentifier: str + name: str + description: Optional[str] = None + glossaryTerms: Optional[Sequence[str]] = None + +class MemberTypeDef(BaseModel): + groupIdentifier: Optional[str] = None + userIdentifier: Optional[str] = None + +class ProjectDeletionErrorTypeDef(BaseModel): + code: Optional[str] = None + message: Optional[str] = None + +class SubscribedListingInputTypeDef(BaseModel): + identifier: str + +class SubscriptionTargetFormTypeDef(BaseModel): + content: str + formName: str + +class CreateUserProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + userIdentifier: str + clientToken: Optional[str] = None + userType: Optional[UserTypeType] = None + +class DataProductItemTypeDef(BaseModel): + domainId: Optional[str] = None + itemId: Optional[str] = None + +class RunStatisticsForAssetsTypeDef(BaseModel): + added: Optional[int] = None + failed: Optional[int] = None + skipped: Optional[int] = None + unchanged: Optional[int] = None + updated: Optional[int] = None + +class DeleteAssetInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteAssetTypeInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteDataSourceInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + clientToken: Optional[str] = None + retainPermissionsOnRevokeFailure: Optional[bool] = None + +class DeleteDomainInputRequestTypeDef(BaseModel): + identifier: str + clientToken: Optional[str] = None + skipDeletionCheck: Optional[bool] = None + +class DeleteEnvironmentActionInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + identifier: str + +class DeleteEnvironmentBlueprintConfigurationInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentBlueprintIdentifier: str + +class DeleteEnvironmentInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteEnvironmentProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteFormTypeInputRequestTypeDef(BaseModel): + domainIdentifier: str + formTypeIdentifier: str + +class DeleteGlossaryInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteGlossaryTermInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteListingInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteProjectInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + skipDeletionCheck: Optional[bool] = None + +class DeleteSubscriptionGrantInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteSubscriptionRequestInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class DeleteSubscriptionTargetInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + identifier: str + +class DeleteTimeSeriesDataPointsInputRequestTypeDef(BaseModel): + domainIdentifier: str + entityIdentifier: str + entityType: TimeSeriesEntityTypeType + formName: str + clientToken: Optional[str] = None + +class EnvironmentErrorTypeDef(BaseModel): + message: str + code: Optional[str] = None + +class DisassociateEnvironmentRoleInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + environmentRoleArn: str + +class DomainSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + id: str + managedAccountId: str + name: str + status: DomainStatusType + description: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + portalUrl: Optional[str] = None + +class EnvironmentBlueprintConfigurationItemTypeDef(BaseModel): + domainId: str + environmentBlueprintId: str + createdAt: Optional[datetime] = None + enabledRegions: Optional[List[str]] = None + manageAccessRoleArn: Optional[str] = None + provisioningRoleArn: Optional[str] = None + regionalParameters: Optional[Dict[str, Dict[str, str]]] = None + updatedAt: Optional[datetime] = None + +class EnvironmentProfileSummaryTypeDef(BaseModel): + createdBy: str + domainId: str + environmentBlueprintId: str + id: str + name: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + projectId: Optional[str] = None + updatedAt: Optional[datetime] = None + +class EnvironmentSummaryTypeDef(BaseModel): + createdBy: str + domainId: str + name: str + projectId: str + provider: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + environmentProfileId: Optional[str] = None + id: Optional[str] = None + status: Optional[EnvironmentStatusType] = None + updatedAt: Optional[datetime] = None + +class FailureCauseTypeDef(BaseModel): + message: Optional[str] = None + +class FilterTypeDef(BaseModel): + attribute: str + value: str + +class FilterExpressionTypeDef(BaseModel): + expression: str + type: FilterExpressionTypeType + +class ImportTypeDef(BaseModel): + name: str + revision: str + +class GetAssetInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + revision: Optional[str] = None + +class GetAssetTypeInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + revision: Optional[str] = None + +class GetDataSourceInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetDataSourceRunInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetDomainInputRequestTypeDef(BaseModel): + identifier: str + +class GetEnvironmentActionInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + identifier: str + +class GetEnvironmentBlueprintConfigurationInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentBlueprintIdentifier: str + +class GetEnvironmentBlueprintInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetEnvironmentInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetEnvironmentProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetFormTypeInputRequestTypeDef(BaseModel): + domainIdentifier: str + formTypeIdentifier: str + revision: Optional[str] = None + +class GetGlossaryInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetGlossaryTermInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetGroupProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + groupIdentifier: str + +class GetIamPortalLoginUrlInputRequestTypeDef(BaseModel): + domainIdentifier: str + +class LineageNodeReferenceTypeDef(BaseModel): + eventTimestamp: Optional[datetime] = None + id: Optional[str] = None + +class GetListingInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + listingRevision: Optional[str] = None + +class GetMetadataGenerationRunInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class MetadataGenerationRunTargetTypeDef(BaseModel): + identifier: str + type: Literal["ASSET"] + revision: Optional[str] = None + +class GetProjectInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetSubscriptionGrantInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetSubscriptionInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetSubscriptionRequestDetailsInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + +class GetSubscriptionTargetInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + identifier: str + +class GetTimeSeriesDataPointInputRequestTypeDef(BaseModel): + domainIdentifier: str + entityIdentifier: str + entityType: TimeSeriesEntityTypeType + formName: str + identifier: str + +class TimeSeriesDataPointFormOutputTypeDef(BaseModel): + formName: str + timestamp: datetime + typeIdentifier: str + content: Optional[str] = None + id: Optional[str] = None + typeRevision: Optional[str] = None + +class GetUserProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + userIdentifier: str + type: Optional[UserProfileTypeType] = None + +class GlossaryItemTypeDef(BaseModel): + domainId: str + id: str + name: str + owningProjectId: str + status: GlossaryStatusType + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class SelfGrantStatusDetailTypeDef(BaseModel): + databaseName: str + status: SelfGrantStatusType + failureCause: Optional[str] = None + schemaName: Optional[str] = None + +class ListingRevisionInputTypeDef(BaseModel): + identifier: str + revision: str + +class ListingRevisionTypeDef(BaseModel): + id: str + revision: str + +class GroupDetailsTypeDef(BaseModel): + groupId: str + +class GroupProfileSummaryTypeDef(BaseModel): + domainId: Optional[str] = None + groupName: Optional[str] = None + id: Optional[str] = None + status: Optional[GroupProfileStatusType] = None + +class IamUserProfileDetailsTypeDef(BaseModel): + arn: Optional[str] = None + +class LineageNodeSummaryTypeDef(BaseModel): + domainId: str + id: str + typeName: str + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + eventTimestamp: Optional[datetime] = None + name: Optional[str] = None + sourceIdentifier: Optional[str] = None + typeRevision: Optional[str] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssetRevisionsInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDataSourceRunActivitiesInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[DataAssetActivityStatusType] = None + +class ListDataSourceRunsInputRequestTypeDef(BaseModel): + dataSourceIdentifier: str + domainIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[DataSourceRunStatusType] = None + +class ListDataSourcesInputRequestTypeDef(BaseModel): + domainIdentifier: str + projectIdentifier: str + environmentIdentifier: Optional[str] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + status: Optional[DataSourceStatusType] = None + type: Optional[str] = None + +class ListDomainsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[DomainStatusType] = None + +class ListEnvironmentActionsInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEnvironmentBlueprintConfigurationsInputRequestTypeDef(BaseModel): + domainIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEnvironmentBlueprintsInputRequestTypeDef(BaseModel): + domainIdentifier: str + managed: Optional[bool] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + +class ListEnvironmentProfilesInputRequestTypeDef(BaseModel): + domainIdentifier: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + environmentBlueprintIdentifier: Optional[str] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + projectIdentifier: Optional[str] = None + +class ListEnvironmentsInputRequestTypeDef(BaseModel): + domainIdentifier: str + projectIdentifier: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + environmentBlueprintIdentifier: Optional[str] = None + environmentProfileIdentifier: Optional[str] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + provider: Optional[str] = None + status: Optional[EnvironmentStatusType] = None + +class ListMetadataGenerationRunsInputRequestTypeDef(BaseModel): + domainIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[MetadataGenerationRunStatusType] = None + type: Optional[Literal["BUSINESS_DESCRIPTIONS"]] = None + +class ListProjectMembershipsInputRequestTypeDef(BaseModel): + domainIdentifier: str + projectIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[Literal["NAME"]] = None + sortOrder: Optional[SortOrderType] = None + +class ListProjectsInputRequestTypeDef(BaseModel): + domainIdentifier: str + groupIdentifier: Optional[str] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + userIdentifier: Optional[str] = None + +class ListSubscriptionGrantsInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + subscribedListingId: Optional[str] = None + subscriptionId: Optional[str] = None + subscriptionTargetId: Optional[str] = None + +class ListSubscriptionRequestsInputRequestTypeDef(BaseModel): + domainIdentifier: str + approverProjectId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + owningProjectId: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + status: Optional[SubscriptionRequestStatusType] = None + subscribedListingId: Optional[str] = None + +class ListSubscriptionTargetsInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + +class ListSubscriptionsInputRequestTypeDef(BaseModel): + domainIdentifier: str + approverProjectId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + owningProjectId: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + status: Optional[SubscriptionStatusType] = None + subscribedListingId: Optional[str] = None + subscriptionRequestIdentifier: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class UserDetailsTypeDef(BaseModel): + userId: str + +class NotificationResourceTypeDef(BaseModel): + id: str + type: Literal["PROJECT"] + name: Optional[str] = None + +class PutEnvironmentBlueprintConfigurationInputRequestTypeDef(BaseModel): + domainIdentifier: str + enabledRegions: Sequence[str] + environmentBlueprintIdentifier: str + manageAccessRoleArn: Optional[str] = None + provisioningRoleArn: Optional[str] = None + regionalParameters: Optional[Mapping[str, Mapping[str, str]]] = None + +class RedshiftClusterStorageTypeDef(BaseModel): + clusterName: str + +class RedshiftCredentialConfigurationTypeDef(BaseModel): + secretManagerArn: str + +class RedshiftServerlessStorageTypeDef(BaseModel): + workgroupName: str + +class RejectChoiceTypeDef(BaseModel): + predictionTarget: str + predictionChoices: Optional[Sequence[int]] = None + +class RejectRuleTypeDef(BaseModel): + rule: Optional[RejectRuleBehaviorType] = None + threshold: Optional[float] = None + +class RejectSubscriptionRequestInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + decisionComment: Optional[str] = None + +class RevokeSubscriptionInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + retainPermissions: Optional[bool] = None + +class SearchGroupProfilesInputRequestTypeDef(BaseModel): + domainIdentifier: str + groupType: GroupSearchTypeType + maxResults: Optional[int] = None + nextToken: Optional[str] = None + searchText: Optional[str] = None + +class SearchInItemTypeDef(BaseModel): + attribute: str + +class SearchSortTypeDef(BaseModel): + attribute: str + order: Optional[SortOrderType] = None + +class SearchUserProfilesInputRequestTypeDef(BaseModel): + domainIdentifier: str + userType: UserSearchTypeType + maxResults: Optional[int] = None + nextToken: Optional[str] = None + searchText: Optional[str] = None + +class SsoUserProfileDetailsTypeDef(BaseModel): + firstName: Optional[str] = None + lastName: Optional[str] = None + username: Optional[str] = None + +class StartDataSourceRunInputRequestTypeDef(BaseModel): + dataSourceIdentifier: str + domainIdentifier: str + clientToken: Optional[str] = None + +class SubscribedProjectInputTypeDef(BaseModel): + identifier: Optional[str] = None + +class SubscribedProjectTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TermRelationsExtraOutputTypeDef(BaseModel): + classifies: Optional[List[str]] = None + isA: Optional[List[str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateEnvironmentInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + description: Optional[str] = None + glossaryTerms: Optional[Sequence[str]] = None + name: Optional[str] = None + +class UpdateGlossaryInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + clientToken: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + status: Optional[GlossaryStatusType] = None + +class UpdateGroupProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + groupIdentifier: str + status: GroupProfileStatusType + +class UpdateProjectInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + description: Optional[str] = None + glossaryTerms: Optional[Sequence[str]] = None + name: Optional[str] = None + +class UpdateSubscriptionRequestInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + requestReason: str + +class UpdateUserProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + status: UserProfileStatusType + userIdentifier: str + type: Optional[UserProfileTypeType] = None + +class AcceptPredictionsInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + acceptChoices: Optional[Sequence[AcceptChoiceTypeDef]] = None + acceptRule: Optional[AcceptRuleTypeDef] = None + clientToken: Optional[str] = None + revision: Optional[str] = None + +class AcceptPredictionsOutputTypeDef(BaseModel): + assetId: str + domainId: str + revision: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFormTypeOutputTypeDef(BaseModel): + description: str + domainId: str + name: str + originDomainId: str + originProjectId: str + owningProjectId: str + revision: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGlossaryOutputTypeDef(BaseModel): + description: str + domainId: str + id: str + name: str + owningProjectId: str + status: GlossaryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupProfileOutputTypeDef(BaseModel): + domainId: str + groupName: str + id: str + status: GroupProfileStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateListingChangeSetOutputTypeDef(BaseModel): + listingId: str + listingRevision: str + status: ListingStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainOutputTypeDef(BaseModel): + status: DomainStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentBlueprintConfigurationOutputTypeDef(BaseModel): + createdAt: datetime + domainId: str + enabledRegions: List[str] + environmentBlueprintId: str + manageAccessRoleArn: str + provisioningRoleArn: str + regionalParameters: Dict[str, Dict[str, str]] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetGlossaryOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + id: str + name: str + owningProjectId: str + status: GlossaryStatusType + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupProfileOutputTypeDef(BaseModel): + domainId: str + groupName: str + id: str + status: GroupProfileStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetIamPortalLoginUrlOutputTypeDef(BaseModel): + authCodeUrl: str + userProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutEnvironmentBlueprintConfigurationOutputTypeDef(BaseModel): + createdAt: datetime + domainId: str + enabledRegions: List[str] + environmentBlueprintId: str + manageAccessRoleArn: str + provisioningRoleArn: str + regionalParameters: Dict[str, Dict[str, str]] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class RejectPredictionsOutputTypeDef(BaseModel): + assetId: str + assetRevision: str + domainId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMetadataGenerationRunOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + owningProjectId: str + status: MetadataGenerationRunStatusType + type: Literal["BUSINESS_DESCRIPTIONS"] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGlossaryOutputTypeDef(BaseModel): + description: str + domainId: str + id: str + name: str + owningProjectId: str + status: GlossaryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGroupProfileOutputTypeDef(BaseModel): + domainId: str + groupName: str + id: str + status: GroupProfileStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ActionParametersTypeDef(BaseModel): + awsConsoleLink: Optional[AwsConsoleLinkParametersTypeDef] = None + +class AssetItemAdditionalAttributesTypeDef(BaseModel): + formsOutput: Optional[List[FormOutputTypeDef]] = None + latestTimeSeriesDataPointFormsOutput: Optional[ List[TimeSeriesDataPointSummaryFormOutputTypeDef] ] = None + readOnlyFormsOutput: Optional[List[FormOutputTypeDef]] = None + +class AssetListingItemAdditionalAttributesTypeDef(BaseModel): + forms: Optional[str] = None + latestTimeSeriesDataPointForms: Optional[ List[TimeSeriesDataPointSummaryFormOutputTypeDef] ] = None + +class ListTimeSeriesDataPointsOutputTypeDef(BaseModel): + items: List[TimeSeriesDataPointSummaryFormOutputTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssetOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + externalIdentifier: str + firstRevisionCreatedAt: datetime + firstRevisionCreatedBy: str + formsOutput: List[FormOutputTypeDef] + glossaryTerms: List[str] + id: str + latestTimeSeriesDataPointFormsOutput: List[TimeSeriesDataPointSummaryFormOutputTypeDef] + listing: AssetListingDetailsTypeDef + name: str + owningProjectId: str + readOnlyFormsOutput: List[FormOutputTypeDef] + revision: str + typeIdentifier: str + typeRevision: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetListingTypeDef(BaseModel): + assetId: Optional[str] = None + assetRevision: Optional[str] = None + assetType: Optional[str] = None + createdAt: Optional[datetime] = None + forms: Optional[str] = None + glossaryTerms: Optional[List[DetailedGlossaryTermTypeDef]] = None + latestTimeSeriesDataPointForms: Optional[ List[TimeSeriesDataPointSummaryFormOutputTypeDef] ] = None + owningProjectId: Optional[str] = None + +class SubscribedAssetListingTypeDef(BaseModel): + entityId: Optional[str] = None + entityRevision: Optional[str] = None + entityType: Optional[str] = None + forms: Optional[str] = None + glossaryTerms: Optional[List[DetailedGlossaryTermTypeDef]] = None + +class ListAssetRevisionsOutputTypeDef(BaseModel): + items: List[AssetRevisionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetTypeItemTypeDef(BaseModel): + domainId: str + formsOutput: Dict[str, FormEntryOutputTypeDef] + name: str + owningProjectId: str + revision: str + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + originDomainId: Optional[str] = None + originProjectId: Optional[str] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class CreateAssetTypeOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + formsOutput: Dict[str, FormEntryOutputTypeDef] + name: str + originDomainId: str + originProjectId: str + owningProjectId: str + revision: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssetTypeOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + formsOutput: Dict[str, FormEntryOutputTypeDef] + name: str + originDomainId: str + originProjectId: str + owningProjectId: str + revision: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class LineageNodeTypeItemTypeDef(BaseModel): + domainId: str + formsOutput: Dict[str, FormEntryOutputTypeDef] + revision: str + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class PostLineageEventInputRequestTypeDef(BaseModel): + domainIdentifier: str + event: BlobTypeDef + clientToken: Optional[str] = None + +class PredictionConfigurationTypeDef(BaseModel): + businessNameGeneration: Optional[BusinessNameGenerationConfigurationTypeDef] = None + +class ProvisioningPropertiesTypeDef(BaseModel): + cloudFormation: Optional[CloudFormationPropertiesTypeDef] = None + +class ConfigurableEnvironmentActionTypeDef(BaseModel): + parameters: List[ConfigurableActionParameterTypeDef] + type: str + auth: Optional[ConfigurableActionTypeAuthorizationType] = None + +class CreateAssetTypeInputRequestTypeDef(BaseModel): + domainIdentifier: str + formsInput: Mapping[str, FormEntryInputTypeDef] + name: str + owningProjectIdentifier: str + description: Optional[str] = None + +class DataSourceRunActivityTypeDef(BaseModel): + createdAt: datetime + dataAssetStatus: DataAssetActivityStatusType + dataSourceRunId: str + database: str + projectId: str + technicalName: str + updatedAt: datetime + dataAssetId: Optional[str] = None + errorMessage: Optional[DataSourceErrorMessageTypeDef] = None + technicalDescription: Optional[str] = None + +class DataSourceSummaryTypeDef(BaseModel): + dataSourceId: str + domainId: str + environmentId: str + name: str + status: DataSourceStatusType + type: str + createdAt: Optional[datetime] = None + enableSetting: Optional[EnableSettingType] = None + lastRunAssetCount: Optional[int] = None + lastRunAt: Optional[datetime] = None + lastRunErrorMessage: Optional[DataSourceErrorMessageTypeDef] = None + lastRunStatus: Optional[DataSourceRunStatusType] = None + schedule: Optional[ScheduleConfigurationTypeDef] = None + updatedAt: Optional[datetime] = None + +class CreateDomainInputRequestTypeDef(BaseModel): + domainExecutionRole: str + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + kmsKeyIdentifier: Optional[str] = None + singleSignOn: Optional[SingleSignOnTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateDomainOutputTypeDef(BaseModel): + arn: str + description: str + domainExecutionRole: str + id: str + kmsKeyIdentifier: str + name: str + portalUrl: str + singleSignOn: SingleSignOnTypeDef + status: DomainStatusType + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainOutputTypeDef(BaseModel): + arn: str + createdAt: datetime + description: str + domainExecutionRole: str + id: str + kmsKeyIdentifier: str + lastUpdatedAt: datetime + name: str + portalUrl: str + singleSignOn: SingleSignOnTypeDef + status: DomainStatusType + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainInputRequestTypeDef(BaseModel): + identifier: str + clientToken: Optional[str] = None + description: Optional[str] = None + domainExecutionRole: Optional[str] = None + name: Optional[str] = None + singleSignOn: Optional[SingleSignOnTypeDef] = None + +class UpdateDomainOutputTypeDef(BaseModel): + description: str + domainExecutionRole: str + id: str + lastUpdatedAt: datetime + name: str + singleSignOn: SingleSignOnTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentProfileIdentifier: str + name: str + projectIdentifier: str + description: Optional[str] = None + environmentAccountIdentifier: Optional[str] = None + environmentAccountRegion: Optional[str] = None + environmentBlueprintIdentifier: Optional[str] = None + glossaryTerms: Optional[Sequence[str]] = None + userParameters: Optional[Sequence[EnvironmentParameterTypeDef]] = None + +class CreateEnvironmentProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentBlueprintIdentifier: str + name: str + projectIdentifier: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + description: Optional[str] = None + userParameters: Optional[Sequence[EnvironmentParameterTypeDef]] = None + +class UpdateEnvironmentProfileInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + userParameters: Optional[Sequence[EnvironmentParameterTypeDef]] = None + +class CreateEnvironmentProfileOutputTypeDef(BaseModel): + awsAccountId: str + awsAccountRegion: str + createdAt: datetime + createdBy: str + description: str + domainId: str + environmentBlueprintId: str + id: str + name: str + projectId: str + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentProfileOutputTypeDef(BaseModel): + awsAccountId: str + awsAccountRegion: str + createdAt: datetime + createdBy: str + description: str + domainId: str + environmentBlueprintId: str + id: str + name: str + projectId: str + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentProfileOutputTypeDef(BaseModel): + awsAccountId: str + awsAccountRegion: str + createdAt: datetime + createdBy: str + description: str + domainId: str + environmentBlueprintId: str + id: str + name: str + projectId: str + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFormTypeInputRequestTypeDef(BaseModel): + domainIdentifier: str + model: ModelTypeDef + name: str + owningProjectIdentifier: str + description: Optional[str] = None + status: Optional[FormTypeStatusType] = None + +class CreateGlossaryTermInputRequestTypeDef(BaseModel): + domainIdentifier: str + glossaryIdentifier: str + name: str + clientToken: Optional[str] = None + longDescription: Optional[str] = None + shortDescription: Optional[str] = None + status: Optional[GlossaryTermStatusType] = None + termRelations: Optional[TermRelationsTypeDef] = None + +class UpdateGlossaryTermInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + glossaryIdentifier: Optional[str] = None + longDescription: Optional[str] = None + name: Optional[str] = None + shortDescription: Optional[str] = None + status: Optional[GlossaryTermStatusType] = None + termRelations: Optional[TermRelationsTypeDef] = None + +class CreateGlossaryTermOutputTypeDef(BaseModel): + domainId: str + glossaryId: str + id: str + longDescription: str + name: str + shortDescription: str + status: GlossaryTermStatusType + termRelations: TermRelationsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGlossaryTermOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + glossaryId: str + id: str + longDescription: str + name: str + shortDescription: str + status: GlossaryTermStatusType + termRelations: TermRelationsOutputTypeDef + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GlossaryTermItemTypeDef(BaseModel): + domainId: str + glossaryId: str + id: str + name: str + status: GlossaryTermStatusType + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + longDescription: Optional[str] = None + shortDescription: Optional[str] = None + termRelations: Optional[TermRelationsOutputTypeDef] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class UpdateGlossaryTermOutputTypeDef(BaseModel): + domainId: str + glossaryId: str + id: str + longDescription: str + name: str + shortDescription: str + status: GlossaryTermStatusType + termRelations: TermRelationsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectMembershipInputRequestTypeDef(BaseModel): + designation: UserDesignationType + domainIdentifier: str + member: MemberTypeDef + projectIdentifier: str + +class DeleteProjectMembershipInputRequestTypeDef(BaseModel): + domainIdentifier: str + member: MemberTypeDef + projectIdentifier: str + +class CreateProjectOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + failureReasons: List[ProjectDeletionErrorTypeDef] + glossaryTerms: List[str] + id: str + lastUpdatedAt: datetime + name: str + projectStatus: ProjectStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetProjectOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + failureReasons: List[ProjectDeletionErrorTypeDef] + glossaryTerms: List[str] + id: str + lastUpdatedAt: datetime + name: str + projectStatus: ProjectStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ProjectSummaryTypeDef(BaseModel): + createdBy: str + domainId: str + id: str + name: str + createdAt: Optional[datetime] = None + description: Optional[str] = None + failureReasons: Optional[List[ProjectDeletionErrorTypeDef]] = None + projectStatus: Optional[ProjectStatusType] = None + updatedAt: Optional[datetime] = None + +class UpdateProjectOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + failureReasons: List[ProjectDeletionErrorTypeDef] + glossaryTerms: List[str] + id: str + lastUpdatedAt: datetime + name: str + projectStatus: ProjectStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriptionTargetInputRequestTypeDef(BaseModel): + applicableAssetTypes: Sequence[str] + authorizedPrincipals: Sequence[str] + domainIdentifier: str + environmentIdentifier: str + manageAccessRole: str + name: str + subscriptionTargetConfig: Sequence[SubscriptionTargetFormTypeDef] + type: str + clientToken: Optional[str] = None + provider: Optional[str] = None + +class CreateSubscriptionTargetOutputTypeDef(BaseModel): + applicableAssetTypes: List[str] + authorizedPrincipals: List[str] + createdAt: datetime + createdBy: str + domainId: str + environmentId: str + id: str + manageAccessRole: str + name: str + projectId: str + provider: str + subscriptionTargetConfig: List[SubscriptionTargetFormTypeDef] + type: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionTargetOutputTypeDef(BaseModel): + applicableAssetTypes: List[str] + authorizedPrincipals: List[str] + createdAt: datetime + createdBy: str + domainId: str + environmentId: str + id: str + manageAccessRole: str + name: str + projectId: str + provider: str + subscriptionTargetConfig: List[SubscriptionTargetFormTypeDef] + type: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubscriptionTargetSummaryTypeDef(BaseModel): + applicableAssetTypes: List[str] + authorizedPrincipals: List[str] + createdAt: datetime + createdBy: str + domainId: str + environmentId: str + id: str + manageAccessRole: str + name: str + projectId: str + provider: str + subscriptionTargetConfig: List[SubscriptionTargetFormTypeDef] + type: str + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class UpdateSubscriptionTargetInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + identifier: str + applicableAssetTypes: Optional[Sequence[str]] = None + authorizedPrincipals: Optional[Sequence[str]] = None + manageAccessRole: Optional[str] = None + name: Optional[str] = None + provider: Optional[str] = None + subscriptionTargetConfig: Optional[Sequence[SubscriptionTargetFormTypeDef]] = None + +class UpdateSubscriptionTargetOutputTypeDef(BaseModel): + applicableAssetTypes: List[str] + authorizedPrincipals: List[str] + createdAt: datetime + createdBy: str + domainId: str + environmentId: str + id: str + manageAccessRole: str + name: str + projectId: str + provider: str + subscriptionTargetConfig: List[SubscriptionTargetFormTypeDef] + type: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataProductSummaryTypeDef(BaseModel): + domainId: str + id: str + name: str + owningProjectId: str + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + dataProductItems: Optional[List[DataProductItemTypeDef]] = None + description: Optional[str] = None + glossaryTerms: Optional[List[str]] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class DataSourceRunSummaryTypeDef(BaseModel): + createdAt: datetime + dataSourceId: str + id: str + projectId: str + status: DataSourceRunStatusType + type: DataSourceRunTypeType + updatedAt: datetime + errorMessage: Optional[DataSourceErrorMessageTypeDef] = None + runStatisticsForAssets: Optional[RunStatisticsForAssetsTypeDef] = None + startedAt: Optional[datetime] = None + stoppedAt: Optional[datetime] = None + +class GetDataSourceRunOutputTypeDef(BaseModel): + createdAt: datetime + dataSourceConfigurationSnapshot: str + dataSourceId: str + domainId: str + errorMessage: DataSourceErrorMessageTypeDef + id: str + projectId: str + runStatisticsForAssets: RunStatisticsForAssetsTypeDef + startedAt: datetime + status: DataSourceRunStatusType + stoppedAt: datetime + type: DataSourceRunTypeType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataSourceRunOutputTypeDef(BaseModel): + createdAt: datetime + dataSourceConfigurationSnapshot: str + dataSourceId: str + domainId: str + errorMessage: DataSourceErrorMessageTypeDef + id: str + projectId: str + runStatisticsForAssets: RunStatisticsForAssetsTypeDef + startedAt: datetime + status: DataSourceRunStatusType + stoppedAt: datetime + type: DataSourceRunTypeType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentTypeDef(BaseModel): + deploymentId: Optional[str] = None + deploymentStatus: Optional[DeploymentStatusType] = None + deploymentType: Optional[DeploymentTypeType] = None + failureReason: Optional[EnvironmentErrorTypeDef] = None + isDeploymentComplete: Optional[bool] = None + messages: Optional[List[str]] = None + +class ListDomainsOutputTypeDef(BaseModel): + items: List[DomainSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentBlueprintConfigurationsOutputTypeDef(BaseModel): + items: List[EnvironmentBlueprintConfigurationItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentProfilesOutputTypeDef(BaseModel): + items: List[EnvironmentProfileSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsOutputTypeDef(BaseModel): + items: List[EnvironmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubscribedAssetTypeDef(BaseModel): + assetId: str + assetRevision: str + status: SubscriptionGrantStatusType + failureCause: Optional[FailureCauseTypeDef] = None + failureTimestamp: Optional[datetime] = None + grantedTimestamp: Optional[datetime] = None + targetName: Optional[str] = None + +class UpdateSubscriptionGrantStatusInputRequestTypeDef(BaseModel): + assetIdentifier: str + domainIdentifier: str + identifier: str + status: SubscriptionGrantStatusType + failureCause: Optional[FailureCauseTypeDef] = None + targetName: Optional[str] = None + +class FilterClauseTypeDef(BaseModel): + and: Optional[Sequence[Dict[str, Any]]] = None + filter: Optional[FilterTypeDef] = None + or: Optional[Sequence[Dict[str, Any]]] = None + +class RelationalFilterConfigurationOutputTypeDef(BaseModel): + databaseName: str + filterExpressions: Optional[List[FilterExpressionTypeDef]] = None + schemaName: Optional[str] = None + +class RelationalFilterConfigurationTypeDef(BaseModel): + databaseName: str + filterExpressions: Optional[Sequence[FilterExpressionTypeDef]] = None + schemaName: Optional[str] = None + +class FormTypeDataTypeDef(BaseModel): + domainId: str + name: str + revision: str + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + imports: Optional[List[ImportTypeDef]] = None + model: Optional[ModelTypeDef] = None + originDomainId: Optional[str] = None + originProjectId: Optional[str] = None + owningProjectId: Optional[str] = None + status: Optional[FormTypeStatusType] = None + +class GetFormTypeOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + imports: List[ImportTypeDef] + model: ModelTypeDef + name: str + originDomainId: str + originProjectId: str + owningProjectId: str + revision: str + status: FormTypeStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetLineageNodeInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + eventTimestamp: Optional[TimestampTypeDef] = None + +class ListLineageNodeHistoryInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + direction: Optional[EdgeDirectionType] = None + eventTimestampGTE: Optional[TimestampTypeDef] = None + eventTimestampLTE: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortOrder: Optional[SortOrderType] = None + +class ListNotificationsInputRequestTypeDef(BaseModel): + domainIdentifier: str + type: NotificationTypeType + afterTimestamp: Optional[TimestampTypeDef] = None + beforeTimestamp: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + subjects: Optional[Sequence[str]] = None + taskStatus: Optional[TaskStatusType] = None + +class ListTimeSeriesDataPointsInputRequestTypeDef(BaseModel): + domainIdentifier: str + entityIdentifier: str + entityType: TimeSeriesEntityTypeType + formName: str + endedAt: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + startedAt: Optional[TimestampTypeDef] = None + +class TimeSeriesDataPointFormInputTypeDef(BaseModel): + formName: str + timestamp: TimestampTypeDef + typeIdentifier: str + content: Optional[str] = None + typeRevision: Optional[str] = None + +class GetLineageNodeOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + downstreamNodes: List[LineageNodeReferenceTypeDef] + eventTimestamp: datetime + formsOutput: List[FormOutputTypeDef] + id: str + name: str + sourceIdentifier: str + typeName: str + typeRevision: str + updatedAt: datetime + updatedBy: str + upstreamNodes: List[LineageNodeReferenceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMetadataGenerationRunOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + owningProjectId: str + status: MetadataGenerationRunStatusType + target: MetadataGenerationRunTargetTypeDef + type: Literal["BUSINESS_DESCRIPTIONS"] + ResponseMetadata: ResponseMetadataTypeDef + +class MetadataGenerationRunItemTypeDef(BaseModel): + domainId: str + id: str + owningProjectId: str + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + status: Optional[MetadataGenerationRunStatusType] = None + target: Optional[MetadataGenerationRunTargetTypeDef] = None + type: Optional[Literal["BUSINESS_DESCRIPTIONS"]] = None + +class StartMetadataGenerationRunInputRequestTypeDef(BaseModel): + domainIdentifier: str + owningProjectIdentifier: str + target: MetadataGenerationRunTargetTypeDef + type: Literal["BUSINESS_DESCRIPTIONS"] + clientToken: Optional[str] = None + +class GetTimeSeriesDataPointOutputTypeDef(BaseModel): + domainId: str + entityId: str + entityType: TimeSeriesEntityTypeType + form: TimeSeriesDataPointFormOutputTypeDef + formName: str + ResponseMetadata: ResponseMetadataTypeDef + +class PostTimeSeriesDataPointsOutputTypeDef(BaseModel): + domainId: str + entityId: str + entityType: TimeSeriesEntityTypeType + forms: List[TimeSeriesDataPointFormOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GlueSelfGrantStatusOutputTypeDef(BaseModel): + selfGrantStatusDetails: List[SelfGrantStatusDetailTypeDef] + +class RedshiftSelfGrantStatusOutputTypeDef(BaseModel): + selfGrantStatusDetails: List[SelfGrantStatusDetailTypeDef] + +class GrantedEntityInputTypeDef(BaseModel): + listing: Optional[ListingRevisionInputTypeDef] = None + +class GrantedEntityTypeDef(BaseModel): + listing: Optional[ListingRevisionTypeDef] = None + +class SearchGroupProfilesOutputTypeDef(BaseModel): + items: List[GroupProfileSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLineageNodeHistoryOutputTypeDef(BaseModel): + nextToken: str + nodes: List[LineageNodeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetRevisionsInputListAssetRevisionsPaginateTypeDef(BaseModel): + domainIdentifier: str + identifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourceRunActivitiesInputListDataSourceRunActivitiesPaginateTypeDef(BaseModel): + domainIdentifier: str + identifier: str + status: Optional[DataAssetActivityStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourceRunsInputListDataSourceRunsPaginateTypeDef(BaseModel): + dataSourceIdentifier: str + domainIdentifier: str + status: Optional[DataSourceRunStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourcesInputListDataSourcesPaginateTypeDef(BaseModel): + domainIdentifier: str + projectIdentifier: str + environmentIdentifier: Optional[str] = None + name: Optional[str] = None + status: Optional[DataSourceStatusType] = None + type: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsInputListDomainsPaginateTypeDef(BaseModel): + status: Optional[DomainStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentActionsInputListEnvironmentActionsPaginateTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentBlueprintConfigurationsInputListEnvironmentBlueprintConfigurationsPaginateTypeDef(BaseModel): + domainIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentBlueprintsInputListEnvironmentBlueprintsPaginateTypeDef(BaseModel): + domainIdentifier: str + managed: Optional[bool] = None + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentProfilesInputListEnvironmentProfilesPaginateTypeDef(BaseModel): + domainIdentifier: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + environmentBlueprintIdentifier: Optional[str] = None + name: Optional[str] = None + projectIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsInputListEnvironmentsPaginateTypeDef(BaseModel): + domainIdentifier: str + projectIdentifier: str + awsAccountId: Optional[str] = None + awsAccountRegion: Optional[str] = None + environmentBlueprintIdentifier: Optional[str] = None + environmentProfileIdentifier: Optional[str] = None + name: Optional[str] = None + provider: Optional[str] = None + status: Optional[EnvironmentStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLineageNodeHistoryInputListLineageNodeHistoryPaginateTypeDef(BaseModel): + domainIdentifier: str + identifier: str + direction: Optional[EdgeDirectionType] = None + eventTimestampGTE: Optional[TimestampTypeDef] = None + eventTimestampLTE: Optional[TimestampTypeDef] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMetadataGenerationRunsInputListMetadataGenerationRunsPaginateTypeDef(BaseModel): + domainIdentifier: str + status: Optional[MetadataGenerationRunStatusType] = None + type: Optional[Literal["BUSINESS_DESCRIPTIONS"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotificationsInputListNotificationsPaginateTypeDef(BaseModel): + domainIdentifier: str + type: NotificationTypeType + afterTimestamp: Optional[TimestampTypeDef] = None + beforeTimestamp: Optional[TimestampTypeDef] = None + subjects: Optional[Sequence[str]] = None + taskStatus: Optional[TaskStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectMembershipsInputListProjectMembershipsPaginateTypeDef(BaseModel): + domainIdentifier: str + projectIdentifier: str + sortBy: Optional[Literal["NAME"]] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsInputListProjectsPaginateTypeDef(BaseModel): + domainIdentifier: str + groupIdentifier: Optional[str] = None + name: Optional[str] = None + userIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionGrantsInputListSubscriptionGrantsPaginateTypeDef(BaseModel): + domainIdentifier: str + environmentId: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + subscribedListingId: Optional[str] = None + subscriptionId: Optional[str] = None + subscriptionTargetId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionRequestsInputListSubscriptionRequestsPaginateTypeDef(BaseModel): + domainIdentifier: str + approverProjectId: Optional[str] = None + owningProjectId: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + status: Optional[SubscriptionRequestStatusType] = None + subscribedListingId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionTargetsInputListSubscriptionTargetsPaginateTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionsInputListSubscriptionsPaginateTypeDef(BaseModel): + domainIdentifier: str + approverProjectId: Optional[str] = None + owningProjectId: Optional[str] = None + sortBy: Optional[SortKeyType] = None + sortOrder: Optional[SortOrderType] = None + status: Optional[SubscriptionStatusType] = None + subscribedListingId: Optional[str] = None + subscriptionRequestIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTimeSeriesDataPointsInputListTimeSeriesDataPointsPaginateTypeDef(BaseModel): + domainIdentifier: str + entityIdentifier: str + entityType: TimeSeriesEntityTypeType + formName: str + endedAt: Optional[TimestampTypeDef] = None + startedAt: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchGroupProfilesInputSearchGroupProfilesPaginateTypeDef(BaseModel): + domainIdentifier: str + groupType: GroupSearchTypeType + searchText: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchUserProfilesInputSearchUserProfilesPaginateTypeDef(BaseModel): + domainIdentifier: str + userType: UserSearchTypeType + searchText: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class MemberDetailsTypeDef(BaseModel): + group: Optional[GroupDetailsTypeDef] = None + user: Optional[UserDetailsTypeDef] = None + +class TopicTypeDef(BaseModel): + resource: NotificationResourceTypeDef + role: NotificationRoleType + subject: str + +class RedshiftStorageTypeDef(BaseModel): + redshiftClusterSource: Optional[RedshiftClusterStorageTypeDef] = None + redshiftServerlessSource: Optional[RedshiftServerlessStorageTypeDef] = None + +class RejectPredictionsInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + clientToken: Optional[str] = None + rejectChoices: Optional[Sequence[RejectChoiceTypeDef]] = None + rejectRule: Optional[RejectRuleTypeDef] = None + revision: Optional[str] = None + +class SearchInputRequestTypeDef(BaseModel): + domainIdentifier: str + searchScope: InventorySearchScopeType + additionalAttributes: Optional[Sequence[SearchOutputAdditionalAttributeType]] = None + filters: Optional["FilterClauseTypeDef"] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + owningProjectIdentifier: Optional[str] = None + searchIn: Optional[Sequence[SearchInItemTypeDef]] = None + searchText: Optional[str] = None + sort: Optional[SearchSortTypeDef] = None + +class SearchListingsInputRequestTypeDef(BaseModel): + domainIdentifier: str + additionalAttributes: Optional[Sequence[SearchOutputAdditionalAttributeType]] = None + filters: Optional["FilterClauseTypeDef"] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + searchIn: Optional[Sequence[SearchInItemTypeDef]] = None + searchText: Optional[str] = None + sort: Optional[SearchSortTypeDef] = None + +class SearchTypesInputRequestTypeDef(BaseModel): + domainIdentifier: str + managed: bool + searchScope: TypesSearchScopeType + filters: Optional["FilterClauseTypeDef"] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + searchIn: Optional[Sequence[SearchInItemTypeDef]] = None + searchText: Optional[str] = None + sort: Optional[SearchSortTypeDef] = None + +class UserProfileDetailsTypeDef(BaseModel): + iam: Optional[IamUserProfileDetailsTypeDef] = None + sso: Optional[SsoUserProfileDetailsTypeDef] = None + +class SubscribedPrincipalInputTypeDef(BaseModel): + project: Optional[SubscribedProjectInputTypeDef] = None + +class SubscribedPrincipalTypeDef(BaseModel): + project: Optional[SubscribedProjectTypeDef] = None + +class CreateEnvironmentActionInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + name: str + parameters: ActionParametersTypeDef + description: Optional[str] = None + +class CreateEnvironmentActionOutputTypeDef(BaseModel): + description: str + domainId: str + environmentId: str + id: str + name: str + parameters: ActionParametersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentActionSummaryTypeDef(BaseModel): + domainId: str + environmentId: str + id: str + name: str + parameters: ActionParametersTypeDef + description: Optional[str] = None + +class GetEnvironmentActionOutputTypeDef(BaseModel): + description: str + domainId: str + environmentId: str + id: str + name: str + parameters: ActionParametersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentActionInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + identifier: str + description: Optional[str] = None + name: Optional[str] = None + parameters: Optional[ActionParametersTypeDef] = None + +class UpdateEnvironmentActionOutputTypeDef(BaseModel): + description: str + domainId: str + environmentId: str + id: str + name: str + parameters: ActionParametersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssetItemTypeDef(BaseModel): + domainId: str + identifier: str + name: str + owningProjectId: str + typeIdentifier: str + typeRevision: str + additionalAttributes: Optional[AssetItemAdditionalAttributesTypeDef] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + externalIdentifier: Optional[str] = None + firstRevisionCreatedAt: Optional[datetime] = None + firstRevisionCreatedBy: Optional[str] = None + glossaryTerms: Optional[List[str]] = None + +class AssetListingItemTypeDef(BaseModel): + additionalAttributes: Optional[AssetListingItemAdditionalAttributesTypeDef] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + entityId: Optional[str] = None + entityRevision: Optional[str] = None + entityType: Optional[str] = None + glossaryTerms: Optional[List[DetailedGlossaryTermTypeDef]] = None + listingCreatedBy: Optional[str] = None + listingId: Optional[str] = None + listingRevision: Optional[str] = None + listingUpdatedBy: Optional[str] = None + name: Optional[str] = None + owningProjectId: Optional[str] = None + +class ListingItemTypeDef(BaseModel): + assetListing: Optional[AssetListingTypeDef] = None + +class SubscribedListingItemTypeDef(BaseModel): + assetListing: Optional[SubscribedAssetListingTypeDef] = None + +class CreateAssetInputRequestTypeDef(BaseModel): + domainIdentifier: str + name: str + owningProjectIdentifier: str + typeIdentifier: str + clientToken: Optional[str] = None + description: Optional[str] = None + externalIdentifier: Optional[str] = None + formsInput: Optional[Sequence[FormInputTypeDef]] = None + glossaryTerms: Optional[Sequence[str]] = None + predictionConfiguration: Optional[PredictionConfigurationTypeDef] = None + typeRevision: Optional[str] = None + +class CreateAssetOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + externalIdentifier: str + firstRevisionCreatedAt: datetime + firstRevisionCreatedBy: str + formsOutput: List[FormOutputTypeDef] + glossaryTerms: List[str] + id: str + latestTimeSeriesDataPointFormsOutput: List[TimeSeriesDataPointSummaryFormOutputTypeDef] + listing: AssetListingDetailsTypeDef + name: str + owningProjectId: str + predictionConfiguration: PredictionConfigurationTypeDef + readOnlyFormsOutput: List[FormOutputTypeDef] + revision: str + typeIdentifier: str + typeRevision: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssetRevisionInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + formsInput: Optional[Sequence[FormInputTypeDef]] = None + glossaryTerms: Optional[Sequence[str]] = None + predictionConfiguration: Optional[PredictionConfigurationTypeDef] = None + typeRevision: Optional[str] = None + +class CreateAssetRevisionOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + externalIdentifier: str + firstRevisionCreatedAt: datetime + firstRevisionCreatedBy: str + formsOutput: List[FormOutputTypeDef] + glossaryTerms: List[str] + id: str + latestTimeSeriesDataPointFormsOutput: List[TimeSeriesDataPointSummaryFormOutputTypeDef] + listing: AssetListingDetailsTypeDef + name: str + owningProjectId: str + predictionConfiguration: PredictionConfigurationTypeDef + readOnlyFormsOutput: List[FormOutputTypeDef] + revision: str + typeIdentifier: str + typeRevision: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentBlueprintSummaryTypeDef(BaseModel): + id: str + name: str + provider: str + provisioningProperties: ProvisioningPropertiesTypeDef + createdAt: Optional[datetime] = None + description: Optional[str] = None + updatedAt: Optional[datetime] = None + +class GetEnvironmentBlueprintOutputTypeDef(BaseModel): + createdAt: datetime + deploymentProperties: DeploymentPropertiesTypeDef + description: str + glossaryTerms: List[str] + id: str + name: str + provider: str + provisioningProperties: ProvisioningPropertiesTypeDef + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourceRunActivitiesOutputTypeDef(BaseModel): + items: List[DataSourceRunActivityTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourcesOutputTypeDef(BaseModel): + items: List[DataSourceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsOutputTypeDef(BaseModel): + items: List[ProjectSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscriptionTargetsOutputTypeDef(BaseModel): + items: List[SubscriptionTargetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourceRunsOutputTypeDef(BaseModel): + items: List[DataSourceRunSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentOutputTypeDef(BaseModel): + awsAccountId: str + awsAccountRegion: str + createdAt: datetime + createdBy: str + deploymentProperties: DeploymentPropertiesTypeDef + description: str + domainId: str + environmentActions: List[ConfigurableEnvironmentActionTypeDef] + environmentBlueprintId: str + environmentProfileId: str + glossaryTerms: List[str] + id: str + lastDeployment: DeploymentTypeDef + name: str + projectId: str + provider: str + provisionedResources: List[ResourceTypeDef] + provisioningProperties: ProvisioningPropertiesTypeDef + status: EnvironmentStatusType + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentOutputTypeDef(BaseModel): + awsAccountId: str + awsAccountRegion: str + createdAt: datetime + createdBy: str + deploymentProperties: DeploymentPropertiesTypeDef + description: str + domainId: str + environmentActions: List[ConfigurableEnvironmentActionTypeDef] + environmentBlueprintId: str + environmentProfileId: str + glossaryTerms: List[str] + id: str + lastDeployment: DeploymentTypeDef + name: str + projectId: str + provider: str + provisionedResources: List[ResourceTypeDef] + provisioningProperties: ProvisioningPropertiesTypeDef + status: EnvironmentStatusType + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentOutputTypeDef(BaseModel): + awsAccountId: str + awsAccountRegion: str + createdAt: datetime + createdBy: str + deploymentProperties: DeploymentPropertiesTypeDef + description: str + domainId: str + environmentActions: List[ConfigurableEnvironmentActionTypeDef] + environmentBlueprintId: str + environmentProfileId: str + glossaryTerms: List[str] + id: str + lastDeployment: DeploymentTypeDef + name: str + projectId: str + provider: str + provisionedResources: List[ResourceTypeDef] + provisioningProperties: ProvisioningPropertiesTypeDef + status: EnvironmentStatusType + updatedAt: datetime + userParameters: List[CustomParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchInputSearchPaginateTypeDef(BaseModel): + domainIdentifier: str + searchScope: InventorySearchScopeType + additionalAttributes: Optional[Sequence[SearchOutputAdditionalAttributeType]] = None + filters: Optional[FilterClauseTypeDef] = None + owningProjectIdentifier: Optional[str] = None + searchIn: Optional[Sequence[SearchInItemTypeDef]] = None + searchText: Optional[str] = None + sort: Optional[SearchSortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchListingsInputSearchListingsPaginateTypeDef(BaseModel): + domainIdentifier: str + additionalAttributes: Optional[Sequence[SearchOutputAdditionalAttributeType]] = None + filters: Optional[FilterClauseTypeDef] = None + searchIn: Optional[Sequence[SearchInItemTypeDef]] = None + searchText: Optional[str] = None + sort: Optional[SearchSortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchTypesInputSearchTypesPaginateTypeDef(BaseModel): + domainIdentifier: str + managed: bool + searchScope: TypesSearchScopeType + filters: Optional[FilterClauseTypeDef] = None + searchIn: Optional[Sequence[SearchInItemTypeDef]] = None + searchText: Optional[str] = None + sort: Optional[SearchSortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GlueRunConfigurationOutputTypeDef(BaseModel): + relationalFilterConfigurations: List[RelationalFilterConfigurationOutputTypeDef] + accountId: Optional[str] = None + autoImportDataQualityResult: Optional[bool] = None + dataAccessRole: Optional[str] = None + region: Optional[str] = None + +class GlueRunConfigurationInputTypeDef(BaseModel): + relationalFilterConfigurations: Sequence[RelationalFilterConfigurationTypeDef] + autoImportDataQualityResult: Optional[bool] = None + dataAccessRole: Optional[str] = None + +class SearchTypesResultItemTypeDef(BaseModel): + assetTypeItem: Optional[AssetTypeItemTypeDef] = None + formTypeItem: Optional[FormTypeDataTypeDef] = None + lineageNodeTypeItem: Optional[LineageNodeTypeItemTypeDef] = None + +class PostTimeSeriesDataPointsInputRequestTypeDef(BaseModel): + domainIdentifier: str + entityIdentifier: str + entityType: TimeSeriesEntityTypeType + forms: Sequence[TimeSeriesDataPointFormInputTypeDef] + clientToken: Optional[str] = None + +class ListMetadataGenerationRunsOutputTypeDef(BaseModel): + items: List[MetadataGenerationRunItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SelfGrantStatusOutputTypeDef(BaseModel): + glueSelfGrantStatus: Optional[GlueSelfGrantStatusOutputTypeDef] = None + redshiftSelfGrantStatus: Optional[RedshiftSelfGrantStatusOutputTypeDef] = None + +class CreateSubscriptionGrantInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + grantedEntity: GrantedEntityInputTypeDef + subscriptionTargetIdentifier: str + assetTargetNames: Optional[Sequence[AssetTargetNameMapTypeDef]] = None + clientToken: Optional[str] = None + +class CreateSubscriptionGrantOutputTypeDef(BaseModel): + assets: List[SubscribedAssetTypeDef] + createdAt: datetime + createdBy: str + domainId: str + grantedEntity: GrantedEntityTypeDef + id: str + status: SubscriptionGrantOverallStatusType + subscriptionId: str + subscriptionTargetId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSubscriptionGrantOutputTypeDef(BaseModel): + assets: List[SubscribedAssetTypeDef] + createdAt: datetime + createdBy: str + domainId: str + grantedEntity: GrantedEntityTypeDef + id: str + status: SubscriptionGrantOverallStatusType + subscriptionId: str + subscriptionTargetId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionGrantOutputTypeDef(BaseModel): + assets: List[SubscribedAssetTypeDef] + createdAt: datetime + createdBy: str + domainId: str + grantedEntity: GrantedEntityTypeDef + id: str + status: SubscriptionGrantOverallStatusType + subscriptionId: str + subscriptionTargetId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubscriptionGrantSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + grantedEntity: GrantedEntityTypeDef + id: str + status: SubscriptionGrantOverallStatusType + subscriptionTargetId: str + updatedAt: datetime + assets: Optional[List[SubscribedAssetTypeDef]] = None + subscriptionId: Optional[str] = None + updatedBy: Optional[str] = None + +class UpdateSubscriptionGrantStatusOutputTypeDef(BaseModel): + assets: List[SubscribedAssetTypeDef] + createdAt: datetime + createdBy: str + domainId: str + grantedEntity: GrantedEntityTypeDef + id: str + status: SubscriptionGrantOverallStatusType + subscriptionId: str + subscriptionTargetId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProjectMemberTypeDef(BaseModel): + designation: UserDesignationType + memberDetails: MemberDetailsTypeDef + +class NotificationOutputTypeDef(BaseModel): + actionLink: str + creationTimestamp: datetime + domainIdentifier: str + identifier: str + lastUpdatedTimestamp: datetime + message: str + title: str + topic: TopicTypeDef + type: NotificationTypeType + metadata: Optional[Dict[str, str]] = None + status: Optional[TaskStatusType] = None + +class RedshiftRunConfigurationInputTypeDef(BaseModel): + redshiftCredentialConfiguration: RedshiftCredentialConfigurationTypeDef + redshiftStorage: RedshiftStorageTypeDef + relationalFilterConfigurations: Sequence[RelationalFilterConfigurationTypeDef] + dataAccessRole: Optional[str] = None + +class RedshiftRunConfigurationOutputTypeDef(BaseModel): + redshiftCredentialConfiguration: RedshiftCredentialConfigurationTypeDef + redshiftStorage: RedshiftStorageTypeDef + relationalFilterConfigurations: List[RelationalFilterConfigurationOutputTypeDef] + accountId: Optional[str] = None + dataAccessRole: Optional[str] = None + region: Optional[str] = None + +class CreateUserProfileOutputTypeDef(BaseModel): + details: UserProfileDetailsTypeDef + domainId: str + id: str + status: UserProfileStatusType + type: UserProfileTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserProfileOutputTypeDef(BaseModel): + details: UserProfileDetailsTypeDef + domainId: str + id: str + status: UserProfileStatusType + type: UserProfileTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserProfileOutputTypeDef(BaseModel): + details: UserProfileDetailsTypeDef + domainId: str + id: str + status: UserProfileStatusType + type: UserProfileTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UserProfileSummaryTypeDef(BaseModel): + details: Optional[UserProfileDetailsTypeDef] = None + domainId: Optional[str] = None + id: Optional[str] = None + status: Optional[UserProfileStatusType] = None + type: Optional[UserProfileTypeType] = None + +class CreateSubscriptionRequestInputRequestTypeDef(BaseModel): + domainIdentifier: str + requestReason: str + subscribedListings: Sequence[SubscribedListingInputTypeDef] + subscribedPrincipals: Sequence[SubscribedPrincipalInputTypeDef] + clientToken: Optional[str] = None + +class ListEnvironmentActionsOutputTypeDef(BaseModel): + items: List[EnvironmentActionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchInventoryResultItemTypeDef(BaseModel): + assetItem: Optional[AssetItemTypeDef] = None + dataProductItem: Optional[DataProductSummaryTypeDef] = None + glossaryItem: Optional[GlossaryItemTypeDef] = None + glossaryTermItem: Optional[GlossaryTermItemTypeDef] = None + +class SearchResultItemTypeDef(BaseModel): + assetListing: Optional[AssetListingItemTypeDef] = None + +class GetListingOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + domainId: str + id: str + item: ListingItemTypeDef + listingRevision: str + name: str + status: ListingStatusType + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubscribedListingTypeDef(BaseModel): + description: str + id: str + item: SubscribedListingItemTypeDef + name: str + ownerProjectId: str + ownerProjectName: Optional[str] = None + revision: Optional[str] = None + +class ListEnvironmentBlueprintsOutputTypeDef(BaseModel): + items: List[EnvironmentBlueprintSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchTypesOutputTypeDef(BaseModel): + items: List[SearchTypesResultItemTypeDef] + nextToken: str + totalMatchCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscriptionGrantsOutputTypeDef(BaseModel): + items: List[SubscriptionGrantSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectMembershipsOutputTypeDef(BaseModel): + members: List[ProjectMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListNotificationsOutputTypeDef(BaseModel): + nextToken: str + notifications: List[NotificationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceConfigurationInputTypeDef(BaseModel): + glueRunConfiguration: Optional[GlueRunConfigurationInputTypeDef] = None + redshiftRunConfiguration: Optional[RedshiftRunConfigurationInputTypeDef] = None + +class DataSourceConfigurationOutputTypeDef(BaseModel): + glueRunConfiguration: Optional[GlueRunConfigurationOutputTypeDef] = None + redshiftRunConfiguration: Optional[RedshiftRunConfigurationOutputTypeDef] = None + +class SearchUserProfilesOutputTypeDef(BaseModel): + items: List[UserProfileSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchOutputTypeDef(BaseModel): + items: List[SearchInventoryResultItemTypeDef] + nextToken: str + totalMatchCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class SearchListingsOutputTypeDef(BaseModel): + items: List[SearchResultItemTypeDef] + nextToken: str + totalMatchCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptSubscriptionRequestOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + decisionComment: str + domainId: str + id: str + requestReason: str + reviewerId: str + status: SubscriptionRequestStatusType + subscribedListings: List[SubscribedListingTypeDef] + subscribedPrincipals: List[SubscribedPrincipalTypeDef] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelSubscriptionOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + retainPermissions: bool + status: SubscriptionStatusType + subscribedListing: SubscribedListingTypeDef + subscribedPrincipal: SubscribedPrincipalTypeDef + subscriptionRequestId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriptionRequestOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + decisionComment: str + domainId: str + id: str + requestReason: str + reviewerId: str + status: SubscriptionRequestStatusType + subscribedListings: List[SubscribedListingTypeDef] + subscribedPrincipals: List[SubscribedPrincipalTypeDef] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + retainPermissions: bool + status: SubscriptionStatusType + subscribedListing: SubscribedListingTypeDef + subscribedPrincipal: SubscribedPrincipalTypeDef + subscriptionRequestId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionRequestDetailsOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + decisionComment: str + domainId: str + id: str + requestReason: str + reviewerId: str + status: SubscriptionRequestStatusType + subscribedListings: List[SubscribedListingTypeDef] + subscribedPrincipals: List[SubscribedPrincipalTypeDef] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class RejectSubscriptionRequestOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + decisionComment: str + domainId: str + id: str + requestReason: str + reviewerId: str + status: SubscriptionRequestStatusType + subscribedListings: List[SubscribedListingTypeDef] + subscribedPrincipals: List[SubscribedPrincipalTypeDef] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeSubscriptionOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + retainPermissions: bool + status: SubscriptionStatusType + subscribedListing: SubscribedListingTypeDef + subscribedPrincipal: SubscribedPrincipalTypeDef + subscriptionRequestId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubscriptionRequestSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + requestReason: str + status: SubscriptionRequestStatusType + subscribedListings: List[SubscribedListingTypeDef] + subscribedPrincipals: List[SubscribedPrincipalTypeDef] + updatedAt: datetime + decisionComment: Optional[str] = None + reviewerId: Optional[str] = None + updatedBy: Optional[str] = None + +class SubscriptionSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + domainId: str + id: str + status: SubscriptionStatusType + subscribedListing: SubscribedListingTypeDef + subscribedPrincipal: SubscribedPrincipalTypeDef + updatedAt: datetime + retainPermissions: Optional[bool] = None + subscriptionRequestId: Optional[str] = None + updatedBy: Optional[str] = None + +class UpdateSubscriptionRequestOutputTypeDef(BaseModel): + createdAt: datetime + createdBy: str + decisionComment: str + domainId: str + id: str + requestReason: str + reviewerId: str + status: SubscriptionRequestStatusType + subscribedListings: List[SubscribedListingTypeDef] + subscribedPrincipals: List[SubscribedPrincipalTypeDef] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceInputRequestTypeDef(BaseModel): + domainIdentifier: str + environmentIdentifier: str + name: str + projectIdentifier: str + type: str + assetFormsInput: Optional[Sequence[FormInputTypeDef]] = None + clientToken: Optional[str] = None + configuration: Optional[DataSourceConfigurationInputTypeDef] = None + description: Optional[str] = None + enableSetting: Optional[EnableSettingType] = None + publishOnImport: Optional[bool] = None + recommendation: Optional[RecommendationConfigurationTypeDef] = None + schedule: Optional[ScheduleConfigurationTypeDef] = None + +class UpdateDataSourceInputRequestTypeDef(BaseModel): + domainIdentifier: str + identifier: str + assetFormsInput: Optional[Sequence[FormInputTypeDef]] = None + configuration: Optional[DataSourceConfigurationInputTypeDef] = None + description: Optional[str] = None + enableSetting: Optional[EnableSettingType] = None + name: Optional[str] = None + publishOnImport: Optional[bool] = None + recommendation: Optional[RecommendationConfigurationTypeDef] = None + retainPermissionsOnRevokeFailure: Optional[bool] = None + schedule: Optional[ScheduleConfigurationTypeDef] = None + +class CreateDataSourceOutputTypeDef(BaseModel): + assetFormsOutput: List[FormOutputTypeDef] + configuration: DataSourceConfigurationOutputTypeDef + createdAt: datetime + description: str + domainId: str + enableSetting: EnableSettingType + environmentId: str + errorMessage: DataSourceErrorMessageTypeDef + id: str + lastRunAt: datetime + lastRunErrorMessage: DataSourceErrorMessageTypeDef + lastRunStatus: DataSourceRunStatusType + name: str + projectId: str + publishOnImport: bool + recommendation: RecommendationConfigurationTypeDef + schedule: ScheduleConfigurationTypeDef + status: DataSourceStatusType + type: str + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSourceOutputTypeDef(BaseModel): + assetFormsOutput: List[FormOutputTypeDef] + configuration: DataSourceConfigurationOutputTypeDef + createdAt: datetime + description: str + domainId: str + enableSetting: EnableSettingType + environmentId: str + errorMessage: DataSourceErrorMessageTypeDef + id: str + lastRunAt: datetime + lastRunErrorMessage: DataSourceErrorMessageTypeDef + lastRunStatus: DataSourceRunStatusType + name: str + projectId: str + publishOnImport: bool + retainPermissionsOnRevokeFailure: bool + schedule: ScheduleConfigurationTypeDef + selfGrantStatus: SelfGrantStatusOutputTypeDef + status: DataSourceStatusType + type: str + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataSourceOutputTypeDef(BaseModel): + assetFormsOutput: List[FormOutputTypeDef] + configuration: DataSourceConfigurationOutputTypeDef + createdAt: datetime + description: str + domainId: str + enableSetting: EnableSettingType + environmentId: str + errorMessage: DataSourceErrorMessageTypeDef + id: str + lastRunAssetCount: int + lastRunAt: datetime + lastRunErrorMessage: DataSourceErrorMessageTypeDef + lastRunStatus: DataSourceRunStatusType + name: str + projectId: str + publishOnImport: bool + recommendation: RecommendationConfigurationTypeDef + schedule: ScheduleConfigurationTypeDef + selfGrantStatus: SelfGrantStatusOutputTypeDef + status: DataSourceStatusType + type: str + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceOutputTypeDef(BaseModel): + assetFormsOutput: List[FormOutputTypeDef] + configuration: DataSourceConfigurationOutputTypeDef + createdAt: datetime + description: str + domainId: str + enableSetting: EnableSettingType + environmentId: str + errorMessage: DataSourceErrorMessageTypeDef + id: str + lastRunAt: datetime + lastRunErrorMessage: DataSourceErrorMessageTypeDef + lastRunStatus: DataSourceRunStatusType + name: str + projectId: str + publishOnImport: bool + recommendation: RecommendationConfigurationTypeDef + retainPermissionsOnRevokeFailure: bool + schedule: ScheduleConfigurationTypeDef + selfGrantStatus: SelfGrantStatusOutputTypeDef + status: DataSourceStatusType + type: str + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscriptionRequestsOutputTypeDef(BaseModel): + items: List[SubscriptionRequestSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscriptionsOutputTypeDef(BaseModel): + items: List[SubscriptionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/datazone_constants.py b/aws_resource_validator/pydantic_models/datazone_constants.py new file mode 100644 index 00000000..41ef2759 --- /dev/null +++ b/aws_resource_validator/pydantic_models/datazone_constants.py @@ -0,0 +1,647 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceptRuleBehaviorType = Literal["ALL", "NONE"] +AuthTypeType = Literal["DISABLED", "IAM_IDC"] +ChangeActionType = Literal["PUBLISH", "UNPUBLISH"] +ConfigurableActionTypeAuthorizationType = Literal["HTTPS", "IAM"] +DataAssetActivityStatusType = Literal["FAILED", + "PUBLISHING_FAILED", + "SKIPPED_ALREADY_IMPORTED", + "SKIPPED_ARCHIVED", + "SKIPPED_NO_ACCESS", + "SUCCEEDED_CREATED", + "SUCCEEDED_UPDATED", + "UNCHANGED",] +DataSourceErrorTypeType = Literal["ACCESS_DENIED_EXCEPTION", + "CONFLICT_EXCEPTION", + "INTERNAL_SERVER_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "SERVICE_QUOTA_EXCEEDED_EXCEPTION", + "THROTTLING_EXCEPTION", + "VALIDATION_EXCEPTION",] +DataSourceRunStatusType = Literal["FAILED", "PARTIALLY_SUCCEEDED", "REQUESTED", "RUNNING", "SUCCESS"] +DataSourceRunTypeType = Literal["PRIORITIZED", "SCHEDULED"] +DataSourceStatusType = Literal["CREATING", + "DELETING", + "FAILED_CREATION", + "FAILED_DELETION", + "FAILED_UPDATE", + "READY", + "RUNNING", + "UPDATING",] +DeploymentStatusType = Literal["FAILED", "IN_PROGRESS", "PENDING_DEPLOYMENT", "SUCCESSFUL"] +DeploymentTypeType = Literal["CREATE", "DELETE", "UPDATE"] +DomainStatusType = Literal["AVAILABLE", "CREATING", "CREATION_FAILED", "DELETED", "DELETING", "DELETION_FAILED"] +EdgeDirectionType = Literal["DOWNSTREAM", "UPSTREAM"] +EnableSettingType = Literal["DISABLED", "ENABLED"] +EntityTypeType = Literal["ASSET"] +EnvironmentStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATING", + "DELETED", + "DELETE_FAILED", + "DELETING", + "DISABLED", + "EXPIRED", + "INACCESSIBLE", + "SUSPENDED", + "UPDATE_FAILED", + "UPDATING", + "VALIDATION_FAILED",] +FilterExpressionTypeType = Literal["EXCLUDE", "INCLUDE"] +FormTypeStatusType = Literal["DISABLED", "ENABLED"] +GlossaryStatusType = Literal["DISABLED", "ENABLED"] +GlossaryTermStatusType = Literal["DISABLED", "ENABLED"] +GroupProfileStatusType = Literal["ASSIGNED", "NOT_ASSIGNED"] +GroupSearchTypeType = Literal["DATAZONE_SSO_GROUP", "SSO_GROUP"] +InventorySearchScopeType = Literal["ASSET", "GLOSSARY", "GLOSSARY_TERM"] +ListAssetRevisionsPaginatorName = Literal["list_asset_revisions"] +ListDataSourceRunActivitiesPaginatorName = Literal["list_data_source_run_activities"] +ListDataSourceRunsPaginatorName = Literal["list_data_source_runs"] +ListDataSourcesPaginatorName = Literal["list_data_sources"] +ListDomainsPaginatorName = Literal["list_domains"] +ListEnvironmentActionsPaginatorName = Literal["list_environment_actions"] +ListEnvironmentBlueprintConfigurationsPaginatorName = Literal["list_environment_blueprint_configurations"] +ListEnvironmentBlueprintsPaginatorName = Literal["list_environment_blueprints"] +ListEnvironmentProfilesPaginatorName = Literal["list_environment_profiles"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +ListLineageNodeHistoryPaginatorName = Literal["list_lineage_node_history"] +ListMetadataGenerationRunsPaginatorName = Literal["list_metadata_generation_runs"] +ListNotificationsPaginatorName = Literal["list_notifications"] +ListProjectMembershipsPaginatorName = Literal["list_project_memberships"] +ListProjectsPaginatorName = Literal["list_projects"] +ListSubscriptionGrantsPaginatorName = Literal["list_subscription_grants"] +ListSubscriptionRequestsPaginatorName = Literal["list_subscription_requests"] +ListSubscriptionTargetsPaginatorName = Literal["list_subscription_targets"] +ListSubscriptionsPaginatorName = Literal["list_subscriptions"] +ListTimeSeriesDataPointsPaginatorName = Literal["list_time_series_data_points"] +ListingStatusType = Literal["ACTIVE", "CREATING", "INACTIVE"] +MetadataGenerationRunStatusType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "SUBMITTED", "SUCCEEDED"] +MetadataGenerationRunTypeType = Literal["BUSINESS_DESCRIPTIONS"] +MetadataGenerationTargetTypeType = Literal["ASSET"] +NotificationResourceTypeType = Literal["PROJECT"] +NotificationRoleType = Literal["DOMAIN_OWNER", "PROJECT_CONTRIBUTOR", "PROJECT_OWNER", "PROJECT_SUBSCRIBER", "PROJECT_VIEWER"] +NotificationTypeType = Literal["EVENT", "TASK"] +ProjectStatusType = Literal["ACTIVE", "DELETE_FAILED", "DELETING"] +RejectRuleBehaviorType = Literal["ALL", "NONE"] +SearchGroupProfilesPaginatorName = Literal["search_group_profiles"] +SearchListingsPaginatorName = Literal["search_listings"] +SearchOutputAdditionalAttributeType = Literal["FORMS", "TIME_SERIES_DATA_POINT_FORMS"] +SearchPaginatorName = Literal["search"] +SearchTypesPaginatorName = Literal["search_types"] +SearchUserProfilesPaginatorName = Literal["search_user_profiles"] +SelfGrantStatusType = Literal["GRANTED", + "GRANT_FAILED", + "GRANT_IN_PROGRESS", + "GRANT_PENDING", + "REVOKE_FAILED", + "REVOKE_IN_PROGRESS", + "REVOKE_PENDING",] +SortFieldProjectType = Literal["NAME"] +SortKeyType = Literal["CREATED_AT", "UPDATED_AT"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +SubscriptionGrantOverallStatusType = Literal["COMPLETED", + "GRANT_AND_REVOKE_FAILED", + "GRANT_FAILED", + "INACCESSIBLE", + "IN_PROGRESS", + "PENDING", + "REVOKE_FAILED",] +SubscriptionGrantStatusType = Literal["GRANTED", + "GRANT_FAILED", + "GRANT_IN_PROGRESS", + "GRANT_PENDING", + "REVOKED", + "REVOKE_FAILED", + "REVOKE_IN_PROGRESS", + "REVOKE_PENDING",] +SubscriptionRequestStatusType = Literal["ACCEPTED", "PENDING", "REJECTED"] +SubscriptionStatusType = Literal["APPROVED", "CANCELLED", "REVOKED"] +TaskStatusType = Literal["ACTIVE", "INACTIVE"] +TimeSeriesEntityTypeType = Literal["ASSET", "LISTING"] +TimezoneType = Literal["AFRICA_JOHANNESBURG", + "AMERICA_MONTREAL", + "AMERICA_SAO_PAULO", + "ASIA_BAHRAIN", + "ASIA_BANGKOK", + "ASIA_CALCUTTA", + "ASIA_DUBAI", + "ASIA_HONG_KONG", + "ASIA_JAKARTA", + "ASIA_KUALA_LUMPUR", + "ASIA_SEOUL", + "ASIA_SHANGHAI", + "ASIA_SINGAPORE", + "ASIA_TAIPEI", + "ASIA_TOKYO", + "AUSTRALIA_MELBOURNE", + "AUSTRALIA_SYDNEY", + "CANADA_CENTRAL", + "CET", + "CST6CDT", + "ETC_GMT", + "ETC_GMT0", + "ETC_GMT_ADD_0", + "ETC_GMT_ADD_1", + "ETC_GMT_ADD_10", + "ETC_GMT_ADD_11", + "ETC_GMT_ADD_12", + "ETC_GMT_ADD_2", + "ETC_GMT_ADD_3", + "ETC_GMT_ADD_4", + "ETC_GMT_ADD_5", + "ETC_GMT_ADD_6", + "ETC_GMT_ADD_7", + "ETC_GMT_ADD_8", + "ETC_GMT_ADD_9", + "ETC_GMT_NEG_0", + "ETC_GMT_NEG_1", + "ETC_GMT_NEG_10", + "ETC_GMT_NEG_11", + "ETC_GMT_NEG_12", + "ETC_GMT_NEG_13", + "ETC_GMT_NEG_14", + "ETC_GMT_NEG_2", + "ETC_GMT_NEG_3", + "ETC_GMT_NEG_4", + "ETC_GMT_NEG_5", + "ETC_GMT_NEG_6", + "ETC_GMT_NEG_7", + "ETC_GMT_NEG_8", + "ETC_GMT_NEG_9", + "EUROPE_DUBLIN", + "EUROPE_LONDON", + "EUROPE_PARIS", + "EUROPE_STOCKHOLM", + "EUROPE_ZURICH", + "ISRAEL", + "MEXICO_GENERAL", + "MST7MDT", + "PACIFIC_AUCKLAND", + "US_CENTRAL", + "US_EASTERN", + "US_MOUNTAIN", + "US_PACIFIC", + "UTC",] +TypesSearchScopeType = Literal["ASSET_TYPE", "FORM_TYPE", "LINEAGE_NODE_TYPE"] +UserAssignmentType = Literal["AUTOMATIC", "MANUAL"] +UserDesignationType = Literal["PROJECT_CONTRIBUTOR", "PROJECT_OWNER"] +UserProfileStatusType = Literal["ACTIVATED", "ASSIGNED", "DEACTIVATED", "NOT_ASSIGNED"] +UserProfileTypeType = Literal["IAM", "SSO"] +UserSearchTypeType = Literal["DATAZONE_IAM_USER", "DATAZONE_SSO_USER", "DATAZONE_USER", "SSO_USER"] +UserTypeType = Literal["IAM_ROLE", "IAM_USER", "SSO_USER"] +DataZoneServiceName = Literal["datazone"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_asset_revisions", + "list_data_source_run_activities", + "list_data_source_runs", + "list_data_sources", + "list_domains", + "list_environment_actions", + "list_environment_blueprint_configurations", + "list_environment_blueprints", + "list_environment_profiles", + "list_environments", + "list_lineage_node_history", + "list_metadata_generation_runs", + "list_notifications", + "list_project_memberships", + "list_projects", + "list_subscription_grants", + "list_subscription_requests", + "list_subscription_targets", + "list_subscriptions", + "list_time_series_data_points", + "search", + "search_group_profiles", + "search_listings", + "search_types", + "search_user_profiles",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +TermRelationsUnionTypeDef = Union['TermRelationsTypeDef', 'TermRelationsExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/dax_classes.py b/aws_resource_validator/pydantic_models/dax_classes.py new file mode 100644 index 00000000..6ebb04c1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/dax_classes.py @@ -0,0 +1,357 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.dax_constants import * + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + URL: Optional[str] = None + +class NotificationConfigurationTypeDef(BaseModel): + TopicArn: Optional[str] = None + TopicStatus: Optional[str] = None + +class ParameterGroupStatusTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + NodeIdsToReboot: Optional[List[str]] = None + +class SSEDescriptionTypeDef(BaseModel): + Status: Optional[SSEStatusType] = None + +class SecurityGroupMembershipTypeDef(BaseModel): + SecurityGroupIdentifier: Optional[str] = None + Status: Optional[str] = None + +class SSESpecificationTypeDef(BaseModel): + Enabled: bool + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + Description: Optional[str] = None + +class ParameterGroupTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + Description: Optional[str] = None + +class CreateSubnetGroupRequestRequestTypeDef(BaseModel): + SubnetGroupName: str + SubnetIds: Sequence[str] + Description: Optional[str] = None + +class DecreaseReplicationFactorRequestRequestTypeDef(BaseModel): + ClusterName: str + NewReplicationFactor: int + AvailabilityZones: Optional[Sequence[str]] = None + NodeIdsToRemove: Optional[Sequence[str]] = None + +class DeleteClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + +class DeleteParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + +class DeleteSubnetGroupRequestRequestTypeDef(BaseModel): + SubnetGroupName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeClustersRequestRequestTypeDef(BaseModel): + ClusterNames: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeDefaultParametersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class EventTypeDef(BaseModel): + SourceName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + Date: Optional[datetime] = None + +class DescribeParameterGroupsRequestRequestTypeDef(BaseModel): + ParameterGroupNames: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeParametersRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + Source: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeSubnetGroupsRequestRequestTypeDef(BaseModel): + SubnetGroupNames: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class IncreaseReplicationFactorRequestRequestTypeDef(BaseModel): + ClusterName: str + NewReplicationFactor: int + AvailabilityZones: Optional[Sequence[str]] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + ResourceName: str + NextToken: Optional[str] = None + +class NodeTypeSpecificValueTypeDef(BaseModel): + NodeType: Optional[str] = None + Value: Optional[str] = None + +class ParameterNameValueTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + +class RebootNodeRequestRequestTypeDef(BaseModel): + ClusterName: str + NodeId: str + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceName: str + TagKeys: Sequence[str] + +class UpdateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + Description: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + NotificationTopicArn: Optional[str] = None + NotificationTopicStatus: Optional[str] = None + ParameterGroupName: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class UpdateSubnetGroupRequestRequestTypeDef(BaseModel): + SubnetGroupName: str + Description: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + +class NodeTypeDef(BaseModel): + NodeId: Optional[str] = None + Endpoint: Optional[EndpointTypeDef] = None + NodeCreateTime: Optional[datetime] = None + AvailabilityZone: Optional[str] = None + NodeStatus: Optional[str] = None + ParameterGroupStatus: Optional[str] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + NodeType: str + ReplicationFactor: int + IamRoleArn: str + Description: Optional[str] = None + AvailabilityZones: Optional[Sequence[str]] = None + SubnetGroupName: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + PreferredMaintenanceWindow: Optional[str] = None + NotificationTopicArn: Optional[str] = None + ParameterGroupName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + ClusterEndpointEncryptionType: Optional[ClusterEndpointEncryptionTypeType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceName: str + Tags: Sequence[TagTypeDef] + +class DeleteParameterGroupResponseTypeDef(BaseModel): + DeletionMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSubnetGroupResponseTypeDef(BaseModel): + DeletionMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UntagResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateParameterGroupResponseTypeDef(BaseModel): + ParameterGroup: ParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeParameterGroupsResponseTypeDef(BaseModel): + NextToken: str + ParameterGroups: List[ParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateParameterGroupResponseTypeDef(BaseModel): + ParameterGroup: ParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClustersRequestDescribeClustersPaginateTypeDef(BaseModel): + ClusterNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDefaultParametersRequestDescribeDefaultParametersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeParameterGroupsRequestDescribeParameterGroupsPaginateTypeDef(BaseModel): + ParameterGroupNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeParametersRequestDescribeParametersPaginateTypeDef(BaseModel): + ParameterGroupName: str + Source: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSubnetGroupsRequestDescribeSubnetGroupsPaginateTypeDef(BaseModel): + SubnetGroupNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsRequestListTagsPaginateTypeDef(BaseModel): + ResourceName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsRequestDescribeEventsPaginateTypeDef(BaseModel): + SourceName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsRequestRequestTypeDef(BaseModel): + SourceName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeEventsResponseTypeDef(BaseModel): + NextToken: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterType: Optional[ParameterTypeType] = None + ParameterValue: Optional[str] = None + NodeTypeSpecificValues: Optional[List[NodeTypeSpecificValueTypeDef]] = None + Description: Optional[str] = None + Source: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[IsModifiableType] = None + ChangeType: Optional[ChangeTypeType] = None + +class UpdateParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + ParameterNameValues: Sequence[ParameterNameValueTypeDef] + +class SubnetGroupTypeDef(BaseModel): + SubnetGroupName: Optional[str] = None + Description: Optional[str] = None + VpcId: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + +class ClusterTypeDef(BaseModel): + ClusterName: Optional[str] = None + Description: Optional[str] = None + ClusterArn: Optional[str] = None + TotalNodes: Optional[int] = None + ActiveNodes: Optional[int] = None + NodeType: Optional[str] = None + Status: Optional[str] = None + ClusterDiscoveryEndpoint: Optional[EndpointTypeDef] = None + NodeIdsToRemove: Optional[List[str]] = None + Nodes: Optional[List[NodeTypeDef]] = None + PreferredMaintenanceWindow: Optional[str] = None + NotificationConfiguration: Optional[NotificationConfigurationTypeDef] = None + SubnetGroup: Optional[str] = None + SecurityGroups: Optional[List[SecurityGroupMembershipTypeDef]] = None + IamRoleArn: Optional[str] = None + ParameterGroup: Optional[ParameterGroupStatusTypeDef] = None + SSEDescription: Optional[SSEDescriptionTypeDef] = None + ClusterEndpointEncryptionType: Optional[ClusterEndpointEncryptionTypeType] = None + +class DescribeDefaultParametersResponseTypeDef(BaseModel): + NextToken: str + Parameters: List[ParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeParametersResponseTypeDef(BaseModel): + NextToken: str + Parameters: List[ParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubnetGroupResponseTypeDef(BaseModel): + SubnetGroup: SubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSubnetGroupsResponseTypeDef(BaseModel): + NextToken: str + SubnetGroups: List[SubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSubnetGroupResponseTypeDef(BaseModel): + SubnetGroup: SubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DecreaseReplicationFactorResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClustersResponseTypeDef(BaseModel): + NextToken: str + Clusters: List[ClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IncreaseReplicationFactorResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootNodeResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/dax_constants.py b/aws_resource_validator/pydantic_models/dax_constants.py new file mode 100644 index 00000000..0887ebff --- /dev/null +++ b/aws_resource_validator/pydantic_models/dax_constants.py @@ -0,0 +1,422 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChangeTypeType = Literal["IMMEDIATE", "REQUIRES_REBOOT"] +ClusterEndpointEncryptionTypeType = Literal["NONE", "TLS"] +DescribeClustersPaginatorName = Literal["describe_clusters"] +DescribeDefaultParametersPaginatorName = Literal["describe_default_parameters"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeParameterGroupsPaginatorName = Literal["describe_parameter_groups"] +DescribeParametersPaginatorName = Literal["describe_parameters"] +DescribeSubnetGroupsPaginatorName = Literal["describe_subnet_groups"] +IsModifiableType = Literal["CONDITIONAL", "FALSE", "TRUE"] +ListTagsPaginatorName = Literal["list_tags"] +ParameterTypeType = Literal["DEFAULT", "NODE_TYPE_SPECIFIC"] +SSEStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING"] +SourceTypeType = Literal["CLUSTER", "PARAMETER_GROUP", "SUBNET_GROUP"] +DAXServiceName = Literal["dax"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_clusters", + "describe_default_parameters", + "describe_events", + "describe_parameter_groups", + "describe_parameters", + "describe_subnet_groups", + "list_tags",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/deadline_classes.py b/aws_resource_validator/pydantic_models/deadline_classes.py new file mode 100644 index 00000000..93e9c355 --- /dev/null +++ b/aws_resource_validator/pydantic_models/deadline_classes.py @@ -0,0 +1,2140 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.deadline_constants import * + +class AcceleratorCountRangeTypeDef(BaseModel): + min: int + max: Optional[int] = None + +class AcceleratorTotalMemoryMiBRangeTypeDef(BaseModel): + min: int + max: Optional[int] = None + +class AssignedEnvironmentEnterSessionActionDefinitionTypeDef(BaseModel): + environmentId: str + +class AssignedEnvironmentExitSessionActionDefinitionTypeDef(BaseModel): + environmentId: str + +class AssignedSyncInputJobAttachmentsSessionActionDefinitionTypeDef(BaseModel): + stepId: Optional[str] = None + +class LogConfigurationTypeDef(BaseModel): + logDriver: str + error: Optional[str] = None + options: Optional[Dict[str, str]] = None + parameters: Optional[Dict[str, str]] = None + +class TaskParameterValueTypeDef(BaseModel): + float: Optional[str] = None + int: Optional[str] = None + path: Optional[str] = None + string: Optional[str] = None + +class AssociateMemberToFarmRequestRequestTypeDef(BaseModel): + farmId: str + identityStoreId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + +class AssociateMemberToFleetRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + identityStoreId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + +class AssociateMemberToJobRequestRequestTypeDef(BaseModel): + farmId: str + identityStoreId: str + jobId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + queueId: str + +class AssociateMemberToQueueRequestRequestTypeDef(BaseModel): + farmId: str + identityStoreId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + queueId: str + +class AssumeFleetRoleForReadRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + +class AwsCredentialsTypeDef(BaseModel): + accessKeyId: str + expiration: datetime + secretAccessKey: str + sessionToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssumeFleetRoleForWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + +class AssumeQueueRoleForReadRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + +class AssumeQueueRoleForUserRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + +class AssumeQueueRoleForWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + queueId: str + workerId: str + +class ManifestPropertiesTypeDef(BaseModel): + rootPath: str + rootPathFormat: PathFormatType + fileSystemLocationName: Optional[str] = None + inputManifestHash: Optional[str] = None + inputManifestPath: Optional[str] = None + outputRelativeDirectories: Optional[List[str]] = None + +class BudgetActionToAddTypeDef(BaseModel): + thresholdPercentage: float + type: BudgetActionTypeType + description: Optional[str] = None + +class BudgetActionToRemoveTypeDef(BaseModel): + thresholdPercentage: float + type: BudgetActionTypeType + +class ConsumedUsagesTypeDef(BaseModel): + approximateDollarUsage: float + +class UsageTrackingResourceTypeDef(BaseModel): + queueId: Optional[str] = None + +class S3LocationTypeDef(BaseModel): + bucketName: str + key: str + +class CreateFarmRequestRequestTypeDef(BaseModel): + displayName: str + clientToken: Optional[str] = None + description: Optional[str] = None + kmsKeyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class JobParameterTypeDef(BaseModel): + float: Optional[str] = None + int: Optional[str] = None + path: Optional[str] = None + string: Optional[str] = None + +class CreateLicenseEndpointRequestRequestTypeDef(BaseModel): + securityGroupIds: Sequence[str] + subnetIds: Sequence[str] + vpcId: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateMonitorRequestRequestTypeDef(BaseModel): + displayName: str + identityCenterInstanceArn: str + roleArn: str + subdomain: str + clientToken: Optional[str] = None + +class CreateQueueEnvironmentRequestRequestTypeDef(BaseModel): + farmId: str + priority: int + queueId: str + template: str + templateType: EnvironmentTemplateTypeType + clientToken: Optional[str] = None + +class CreateQueueFleetAssociationRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + queueId: str + +class JobAttachmentSettingsTypeDef(BaseModel): + rootPrefix: str + s3BucketName: str + +class FileSystemLocationTypeDef(BaseModel): + name: str + path: str + type: FileSystemLocationTypeType + +class FleetAmountCapabilityTypeDef(BaseModel): + min: float + name: str + max: Optional[float] = None + +class FleetAttributeCapabilityPaginatorTypeDef(BaseModel): + name: str + values: List[str] + +class MemoryMiBRangeTypeDef(BaseModel): + min: int + max: Optional[int] = None + +class VCpuCountRangeTypeDef(BaseModel): + min: int + max: Optional[int] = None + +class FleetAttributeCapabilityTypeDef(BaseModel): + name: str + values: Sequence[str] + +class DeleteBudgetRequestRequestTypeDef(BaseModel): + budgetId: str + farmId: str + +class DeleteFarmRequestRequestTypeDef(BaseModel): + farmId: str + +class DeleteFleetRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + clientToken: Optional[str] = None + +class DeleteLicenseEndpointRequestRequestTypeDef(BaseModel): + licenseEndpointId: str + +class DeleteMeteredProductRequestRequestTypeDef(BaseModel): + licenseEndpointId: str + productId: str + +class DeleteMonitorRequestRequestTypeDef(BaseModel): + monitorId: str + +class DeleteQueueEnvironmentRequestRequestTypeDef(BaseModel): + farmId: str + queueEnvironmentId: str + queueId: str + +class DeleteQueueFleetAssociationRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + queueId: str + +class DeleteQueueRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + +class DeleteStorageProfileRequestRequestTypeDef(BaseModel): + farmId: str + storageProfileId: str + +class DeleteWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + +class DependencyCountsTypeDef(BaseModel): + consumersResolved: int + consumersUnresolved: int + dependenciesResolved: int + dependenciesUnresolved: int + +class DisassociateMemberFromFarmRequestRequestTypeDef(BaseModel): + farmId: str + principalId: str + +class DisassociateMemberFromFleetRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + principalId: str + +class DisassociateMemberFromJobRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + principalId: str + queueId: str + +class DisassociateMemberFromQueueRequestRequestTypeDef(BaseModel): + farmId: str + principalId: str + queueId: str + +class Ec2EbsVolumeTypeDef(BaseModel): + iops: Optional[int] = None + sizeGiB: Optional[int] = None + throughputMiB: Optional[int] = None + +class EnvironmentDetailsEntityTypeDef(BaseModel): + environmentId: str + jobId: str + schemaVersion: str + template: Dict[str, Any] + +class EnvironmentDetailsErrorTypeDef(BaseModel): + code: JobEntityErrorCodeType + environmentId: str + jobId: str + message: str + +class EnvironmentDetailsIdentifiersTypeDef(BaseModel): + environmentId: str + jobId: str + +class EnvironmentEnterSessionActionDefinitionSummaryTypeDef(BaseModel): + environmentId: str + +class EnvironmentEnterSessionActionDefinitionTypeDef(BaseModel): + environmentId: str + +class EnvironmentExitSessionActionDefinitionSummaryTypeDef(BaseModel): + environmentId: str + +class EnvironmentExitSessionActionDefinitionTypeDef(BaseModel): + environmentId: str + +class FarmMemberTypeDef(BaseModel): + farmId: str + identityStoreId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + +class FarmSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + displayName: str + farmId: str + kmsKeyArn: Optional[str] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class FieldSortExpressionTypeDef(BaseModel): + name: str + sortOrder: SortOrderType + +class FleetMemberTypeDef(BaseModel): + farmId: str + fleetId: str + identityStoreId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + +class GetBudgetRequestRequestTypeDef(BaseModel): + budgetId: str + farmId: str + +class ResponseBudgetActionTypeDef(BaseModel): + thresholdPercentage: float + type: BudgetActionTypeType + description: Optional[str] = None + +class GetFarmRequestRequestTypeDef(BaseModel): + farmId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetFleetRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + +class JobAttachmentDetailsErrorTypeDef(BaseModel): + code: JobEntityErrorCodeType + jobId: str + message: str + +class JobDetailsErrorTypeDef(BaseModel): + code: JobEntityErrorCodeType + jobId: str + message: str + +class StepDetailsErrorTypeDef(BaseModel): + code: JobEntityErrorCodeType + jobId: str + message: str + stepId: str + +class GetJobRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + +class GetLicenseEndpointRequestRequestTypeDef(BaseModel): + licenseEndpointId: str + +class GetMonitorRequestRequestTypeDef(BaseModel): + monitorId: str + +class GetQueueEnvironmentRequestRequestTypeDef(BaseModel): + farmId: str + queueEnvironmentId: str + queueId: str + +class GetQueueFleetAssociationRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + queueId: str + +class GetQueueRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + +class GetSessionActionRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + sessionActionId: str + +class GetSessionRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + sessionId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetSessionsStatisticsAggregationRequestRequestTypeDef(BaseModel): + aggregationId: str + farmId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetStepRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + +class GetStorageProfileForQueueRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + storageProfileId: str + +class GetStorageProfileRequestRequestTypeDef(BaseModel): + farmId: str + storageProfileId: str + +class GetTaskRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + taskId: str + +class GetWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + +class IpAddressesTypeDef(BaseModel): + ipV4Addresses: Optional[Sequence[str]] = None + ipV6Addresses: Optional[Sequence[str]] = None + +class IpAddressesPaginatorTypeDef(BaseModel): + ipV4Addresses: Optional[List[str]] = None + ipV6Addresses: Optional[List[str]] = None + +class JobAttachmentDetailsIdentifiersTypeDef(BaseModel): + jobId: str + +class PathMappingRuleTypeDef(BaseModel): + destinationPath: str + sourcePath: str + sourcePathFormat: PathFormatType + +class JobDetailsIdentifiersTypeDef(BaseModel): + jobId: str + +class StepDetailsIdentifiersTypeDef(BaseModel): + jobId: str + stepId: str + +class StepDetailsEntityTypeDef(BaseModel): + dependencies: List[str] + jobId: str + schemaVersion: str + stepId: str + template: Dict[str, Any] + +class JobMemberTypeDef(BaseModel): + farmId: str + identityStoreId: str + jobId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + queueId: str + +class PosixUserTypeDef(BaseModel): + group: str + user: str + +class WindowsUserTypeDef(BaseModel): + passwordArn: str + user: str + +class JobSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + jobId: str + lifecycleStatus: JobLifecycleStatusType + lifecycleStatusMessage: str + name: str + priority: int + endedAt: Optional[datetime] = None + maxFailedTasksCount: Optional[int] = None + maxRetriesPerTask: Optional[int] = None + startedAt: Optional[datetime] = None + targetTaskRunStatus: Optional[JobTargetTaskRunStatusType] = None + taskRunStatus: Optional[TaskRunStatusType] = None + taskRunStatusCounts: Optional[Dict[TaskRunStatusType, int]] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class LicenseEndpointSummaryTypeDef(BaseModel): + licenseEndpointId: Optional[str] = None + status: Optional[LicenseEndpointStatusType] = None + statusMessage: Optional[str] = None + vpcId: Optional[str] = None + +class ListAvailableMeteredProductsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MeteredProductSummaryTypeDef(BaseModel): + family: str + port: int + productId: str + vendor: str + +class ListBudgetsRequestRequestTypeDef(BaseModel): + farmId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[BudgetStatusType] = None + +class ListFarmMembersRequestRequestTypeDef(BaseModel): + farmId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFarmsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + principalId: Optional[str] = None + +class ListFleetMembersRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFleetsRequestRequestTypeDef(BaseModel): + farmId: str + displayName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + principalId: Optional[str] = None + status: Optional[FleetStatusType] = None + +class ListJobMembersRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + principalId: Optional[str] = None + +class ListLicenseEndpointsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListMeteredProductsRequestRequestTypeDef(BaseModel): + licenseEndpointId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListMonitorsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MonitorSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + displayName: str + identityCenterApplicationArn: str + identityCenterInstanceArn: str + monitorId: str + roleArn: str + subdomain: str + url: str + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class ListQueueEnvironmentsRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QueueEnvironmentSummaryTypeDef(BaseModel): + name: str + priority: int + queueEnvironmentId: str + +class ListQueueFleetAssociationsRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + queueId: Optional[str] = None + +class QueueFleetAssociationSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + fleetId: str + queueId: str + status: QueueFleetAssociationStatusType + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class ListQueueMembersRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QueueMemberTypeDef(BaseModel): + farmId: str + identityStoreId: str + membershipLevel: MembershipLevelType + principalId: str + principalType: PrincipalTypeType + queueId: str + +class ListQueuesRequestRequestTypeDef(BaseModel): + farmId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + principalId: Optional[str] = None + status: Optional[QueueStatusType] = None + +class QueueSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + defaultBudgetAction: DefaultQueueBudgetActionType + displayName: str + farmId: str + queueId: str + status: QueueStatusType + blockedReason: Optional[QueueBlockedReasonType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class ListSessionActionsRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sessionId: Optional[str] = None + taskId: Optional[str] = None + +class ListSessionsForWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkerSessionSummaryTypeDef(BaseModel): + jobId: str + lifecycleStatus: SessionLifecycleStatusType + queueId: str + sessionId: str + startedAt: datetime + endedAt: Optional[datetime] = None + targetLifecycleStatus: Optional[Literal["ENDED"]] = None + +class ListSessionsRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SessionSummaryTypeDef(BaseModel): + fleetId: str + lifecycleStatus: SessionLifecycleStatusType + sessionId: str + startedAt: datetime + workerId: str + endedAt: Optional[datetime] = None + targetLifecycleStatus: Optional[Literal["ENDED"]] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class ListStepConsumersRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StepConsumerTypeDef(BaseModel): + status: DependencyConsumerResolutionStatusType + stepId: str + +class ListStepDependenciesRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StepDependencyTypeDef(BaseModel): + status: DependencyConsumerResolutionStatusType + stepId: str + +class ListStepsRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListStorageProfilesForQueueRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StorageProfileSummaryTypeDef(BaseModel): + displayName: str + osFamily: StorageProfileOperatingSystemFamilyType + storageProfileId: str + +class ListStorageProfilesRequestRequestTypeDef(BaseModel): + farmId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTasksRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListWorkersRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ParameterFilterExpressionTypeDef(BaseModel): + name: str + operator: ComparisonOperatorType + value: str + +class ParameterSortExpressionTypeDef(BaseModel): + name: str + sortOrder: SortOrderType + +class StepParameterTypeDef(BaseModel): + name: str + type: StepParameterTypeType + +class PutMeteredProductRequestRequestTypeDef(BaseModel): + licenseEndpointId: str + productId: str + +class SearchTermFilterExpressionTypeDef(BaseModel): + searchTerm: str + +class StringFilterExpressionTypeDef(BaseModel): + name: str + operator: ComparisonOperatorType + value: str + +class SearchGroupedFilterExpressionsTypeDef(BaseModel): + filters: Sequence["SearchFilterExpressionTypeDef"] + operator: LogicalOperatorType + +class UserJobsFirstTypeDef(BaseModel): + userIdentityId: str + +class ServiceManagedEc2InstanceMarketOptionsTypeDef(BaseModel): + type: Ec2MarketTypeType + +class SyncInputJobAttachmentsSessionActionDefinitionSummaryTypeDef(BaseModel): + stepId: Optional[str] = None + +class TaskRunSessionActionDefinitionSummaryTypeDef(BaseModel): + stepId: str + taskId: str + +class SyncInputJobAttachmentsSessionActionDefinitionTypeDef(BaseModel): + stepId: Optional[str] = None + +class SessionsStatisticsResourcesTypeDef(BaseModel): + fleetIds: Optional[Sequence[str]] = None + queueIds: Optional[Sequence[str]] = None + +class StatsTypeDef(BaseModel): + avg: Optional[float] = None + max: Optional[float] = None + min: Optional[float] = None + sum: Optional[float] = None + +class StepAmountCapabilityTypeDef(BaseModel): + name: str + max: Optional[float] = None + min: Optional[float] = None + value: Optional[float] = None + +class StepAttributeCapabilityTypeDef(BaseModel): + name: str + allOf: Optional[List[str]] = None + anyOf: Optional[List[str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Optional[Mapping[str, str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateFarmRequestRequestTypeDef(BaseModel): + farmId: str + description: Optional[str] = None + displayName: Optional[str] = None + +class UpdateJobRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + clientToken: Optional[str] = None + lifecycleStatus: Optional[Literal["ARCHIVED"]] = None + maxFailedTasksCount: Optional[int] = None + maxRetriesPerTask: Optional[int] = None + priority: Optional[int] = None + targetTaskRunStatus: Optional[JobTargetTaskRunStatusType] = None + +class UpdateMonitorRequestRequestTypeDef(BaseModel): + monitorId: str + displayName: Optional[str] = None + roleArn: Optional[str] = None + subdomain: Optional[str] = None + +class UpdateQueueEnvironmentRequestRequestTypeDef(BaseModel): + farmId: str + queueEnvironmentId: str + queueId: str + clientToken: Optional[str] = None + priority: Optional[int] = None + template: Optional[str] = None + templateType: Optional[EnvironmentTemplateTypeType] = None + +class UpdateQueueFleetAssociationRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + queueId: str + status: UpdateQueueFleetAssociationStatusType + +class UpdateSessionRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + sessionId: str + targetLifecycleStatus: Literal["ENDED"] + clientToken: Optional[str] = None + +class UpdateStepRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + targetTaskRunStatus: StepTargetTaskRunStatusType + clientToken: Optional[str] = None + +class UpdateTaskRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + targetRunStatus: TaskTargetRunStatusType + taskId: str + clientToken: Optional[str] = None + +class WorkerAmountCapabilityTypeDef(BaseModel): + name: str + value: float + +class WorkerAttributeCapabilityTypeDef(BaseModel): + name: str + values: Sequence[str] + +class AssignedTaskRunSessionActionDefinitionTypeDef(BaseModel): + parameters: Dict[str, TaskParameterValueTypeDef] + stepId: str + taskId: str + +class TaskRunSessionActionDefinitionTypeDef(BaseModel): + parameters: Dict[str, TaskParameterValueTypeDef] + stepId: str + taskId: str + +class TaskSearchSummaryTypeDef(BaseModel): + endedAt: Optional[datetime] = None + failureRetryCount: Optional[int] = None + jobId: Optional[str] = None + parameters: Optional[Dict[str, TaskParameterValueTypeDef]] = None + queueId: Optional[str] = None + runStatus: Optional[TaskRunStatusType] = None + startedAt: Optional[datetime] = None + stepId: Optional[str] = None + targetRunStatus: Optional[TaskTargetRunStatusType] = None + taskId: Optional[str] = None + +class TaskSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + runStatus: TaskRunStatusType + taskId: str + endedAt: Optional[datetime] = None + failureRetryCount: Optional[int] = None + latestSessionActionId: Optional[str] = None + parameters: Optional[Dict[str, TaskParameterValueTypeDef]] = None + startedAt: Optional[datetime] = None + targetRunStatus: Optional[TaskTargetRunStatusType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class AssumeFleetRoleForReadResponseTypeDef(BaseModel): + credentials: AwsCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssumeFleetRoleForWorkerResponseTypeDef(BaseModel): + credentials: AwsCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssumeQueueRoleForReadResponseTypeDef(BaseModel): + credentials: AwsCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssumeQueueRoleForUserResponseTypeDef(BaseModel): + credentials: AwsCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssumeQueueRoleForWorkerResponseTypeDef(BaseModel): + credentials: AwsCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyJobTemplateResponseTypeDef(BaseModel): + templateType: JobTemplateTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBudgetResponseTypeDef(BaseModel): + budgetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFarmResponseTypeDef(BaseModel): + farmId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetResponseTypeDef(BaseModel): + fleetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobResponseTypeDef(BaseModel): + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseEndpointResponseTypeDef(BaseModel): + licenseEndpointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMonitorResponseTypeDef(BaseModel): + identityCenterApplicationArn: str + monitorId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQueueEnvironmentResponseTypeDef(BaseModel): + queueEnvironmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQueueResponseTypeDef(BaseModel): + queueId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStorageProfileResponseTypeDef(BaseModel): + storageProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkerResponseTypeDef(BaseModel): + workerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFarmResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + description: str + displayName: str + farmId: str + kmsKeyArn: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLicenseEndpointResponseTypeDef(BaseModel): + dnsName: str + licenseEndpointId: str + securityGroupIds: List[str] + status: LicenseEndpointStatusType + statusMessage: str + subnetIds: List[str] + vpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMonitorResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + displayName: str + identityCenterApplicationArn: str + identityCenterInstanceArn: str + monitorId: str + roleArn: str + subdomain: str + updatedAt: datetime + updatedBy: str + url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueueEnvironmentResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + name: str + priority: int + queueEnvironmentId: str + template: str + templateType: EnvironmentTemplateTypeType + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueueFleetAssociationResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + fleetId: str + queueId: str + status: QueueFleetAssociationStatusType + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTaskResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + endedAt: datetime + failureRetryCount: int + latestSessionActionId: str + parameters: Dict[str, TaskParameterValueTypeDef] + runStatus: TaskRunStatusType + startedAt: datetime + targetRunStatus: TaskTargetRunStatusType + taskId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartSessionsStatisticsAggregationResponseTypeDef(BaseModel): + aggregationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkerResponseTypeDef(BaseModel): + log: LogConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AttachmentsTypeDef(BaseModel): + manifests: List[ManifestPropertiesTypeDef] + fileSystem: Optional[JobAttachmentsFileSystemType] = None + +class BudgetSummaryTypeDef(BaseModel): + approximateDollarLimit: float + budgetId: str + createdAt: datetime + createdBy: str + displayName: str + status: BudgetStatusType + usageTrackingResource: UsageTrackingResourceTypeDef + usages: ConsumedUsagesTypeDef + description: Optional[str] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class CopyJobTemplateRequestRequestTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + targetS3Location: S3LocationTypeDef + +class JobSearchSummaryTypeDef(BaseModel): + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + endedAt: Optional[datetime] = None + jobId: Optional[str] = None + jobParameters: Optional[Dict[str, JobParameterTypeDef]] = None + lifecycleStatus: Optional[JobLifecycleStatusType] = None + lifecycleStatusMessage: Optional[str] = None + maxFailedTasksCount: Optional[int] = None + maxRetriesPerTask: Optional[int] = None + name: Optional[str] = None + priority: Optional[int] = None + queueId: Optional[str] = None + startedAt: Optional[datetime] = None + targetTaskRunStatus: Optional[JobTargetTaskRunStatusType] = None + taskRunStatus: Optional[TaskRunStatusType] = None + taskRunStatusCounts: Optional[Dict[TaskRunStatusType, int]] = None + +class CreateStorageProfileRequestRequestTypeDef(BaseModel): + displayName: str + farmId: str + osFamily: StorageProfileOperatingSystemFamilyType + clientToken: Optional[str] = None + fileSystemLocations: Optional[Sequence[FileSystemLocationTypeDef]] = None + +class GetStorageProfileForQueueResponseTypeDef(BaseModel): + displayName: str + fileSystemLocations: List[FileSystemLocationTypeDef] + osFamily: StorageProfileOperatingSystemFamilyType + storageProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetStorageProfileResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + displayName: str + fileSystemLocations: List[FileSystemLocationTypeDef] + osFamily: StorageProfileOperatingSystemFamilyType + storageProfileId: str + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStorageProfileRequestRequestTypeDef(BaseModel): + farmId: str + storageProfileId: str + clientToken: Optional[str] = None + displayName: Optional[str] = None + fileSystemLocationsToAdd: Optional[Sequence[FileSystemLocationTypeDef]] = None + fileSystemLocationsToRemove: Optional[Sequence[FileSystemLocationTypeDef]] = None + osFamily: Optional[StorageProfileOperatingSystemFamilyType] = None + +class CustomerManagedWorkerCapabilitiesPaginatorTypeDef(BaseModel): + cpuArchitectureType: CpuArchitectureTypeType + memoryMiB: MemoryMiBRangeTypeDef + osFamily: CustomerManagedFleetOperatingSystemFamilyType + vCpuCount: VCpuCountRangeTypeDef + acceleratorCount: Optional[AcceleratorCountRangeTypeDef] = None + acceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBRangeTypeDef] = None + acceleratorTypes: Optional[List[Literal["gpu"]]] = None + customAmounts: Optional[List[FleetAmountCapabilityTypeDef]] = None + customAttributes: Optional[List[FleetAttributeCapabilityPaginatorTypeDef]] = None + +class CustomerManagedWorkerCapabilitiesTypeDef(BaseModel): + cpuArchitectureType: CpuArchitectureTypeType + memoryMiB: MemoryMiBRangeTypeDef + osFamily: CustomerManagedFleetOperatingSystemFamilyType + vCpuCount: VCpuCountRangeTypeDef + acceleratorCount: Optional[AcceleratorCountRangeTypeDef] = None + acceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBRangeTypeDef] = None + acceleratorTypes: Optional[Sequence[Literal["gpu"]]] = None + customAmounts: Optional[Sequence[FleetAmountCapabilityTypeDef]] = None + customAttributes: Optional[Sequence[FleetAttributeCapabilityTypeDef]] = None + +class FleetCapabilitiesTypeDef(BaseModel): + amounts: Optional[List[FleetAmountCapabilityTypeDef]] = None + attributes: Optional[List[FleetAttributeCapabilityTypeDef]] = None + +class DateTimeFilterExpressionTypeDef(BaseModel): + dateTime: TimestampTypeDef + name: str + operator: ComparisonOperatorType + +class FixedBudgetScheduleTypeDef(BaseModel): + endTime: TimestampTypeDef + startTime: TimestampTypeDef + +class UpdatedSessionActionInfoTypeDef(BaseModel): + completedStatus: Optional[CompletedStatusType] = None + endedAt: Optional[TimestampTypeDef] = None + processExitCode: Optional[int] = None + progressMessage: Optional[str] = None + progressPercent: Optional[float] = None + startedAt: Optional[TimestampTypeDef] = None + updatedAt: Optional[TimestampTypeDef] = None + +class StepSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + lifecycleStatus: StepLifecycleStatusType + name: str + stepId: str + taskRunStatus: TaskRunStatusType + taskRunStatusCounts: Dict[TaskRunStatusType, int] + dependencyCounts: Optional[DependencyCountsTypeDef] = None + endedAt: Optional[datetime] = None + lifecycleStatusMessage: Optional[str] = None + startedAt: Optional[datetime] = None + targetTaskRunStatus: Optional[StepTargetTaskRunStatusType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class ServiceManagedEc2InstanceCapabilitiesPaginatorTypeDef(BaseModel): + cpuArchitectureType: CpuArchitectureTypeType + memoryMiB: MemoryMiBRangeTypeDef + osFamily: ServiceManagedFleetOperatingSystemFamilyType + vCpuCount: VCpuCountRangeTypeDef + allowedInstanceTypes: Optional[List[str]] = None + customAmounts: Optional[List[FleetAmountCapabilityTypeDef]] = None + customAttributes: Optional[List[FleetAttributeCapabilityPaginatorTypeDef]] = None + excludedInstanceTypes: Optional[List[str]] = None + rootEbsVolume: Optional[Ec2EbsVolumeTypeDef] = None + +class ServiceManagedEc2InstanceCapabilitiesTypeDef(BaseModel): + cpuArchitectureType: CpuArchitectureTypeType + memoryMiB: MemoryMiBRangeTypeDef + osFamily: ServiceManagedFleetOperatingSystemFamilyType + vCpuCount: VCpuCountRangeTypeDef + allowedInstanceTypes: Optional[Sequence[str]] = None + customAmounts: Optional[Sequence[FleetAmountCapabilityTypeDef]] = None + customAttributes: Optional[Sequence[FleetAttributeCapabilityTypeDef]] = None + excludedInstanceTypes: Optional[Sequence[str]] = None + rootEbsVolume: Optional[Ec2EbsVolumeTypeDef] = None + +class ListFarmMembersResponseTypeDef(BaseModel): + members: List[FarmMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFarmsResponseTypeDef(BaseModel): + farms: List[FarmSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetMembersResponseTypeDef(BaseModel): + members: List[FleetMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFleetRequestFleetActiveWaitTypeDef(BaseModel): + farmId: str + fleetId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetJobRequestJobCreateCompleteWaitTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetLicenseEndpointRequestLicenseEndpointDeletedWaitTypeDef(BaseModel): + licenseEndpointId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetLicenseEndpointRequestLicenseEndpointValidWaitTypeDef(BaseModel): + licenseEndpointId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetQueueFleetAssociationRequestQueueFleetAssociationStoppedWaitTypeDef(BaseModel): + farmId: str + fleetId: str + queueId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetQueueRequestQueueSchedulingBlockedWaitTypeDef(BaseModel): + farmId: str + queueId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetQueueRequestQueueSchedulingWaitTypeDef(BaseModel): + farmId: str + queueId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetJobEntityErrorTypeDef(BaseModel): + environmentDetails: Optional[EnvironmentDetailsErrorTypeDef] = None + jobAttachmentDetails: Optional[JobAttachmentDetailsErrorTypeDef] = None + jobDetails: Optional[JobDetailsErrorTypeDef] = None + stepDetails: Optional[StepDetailsErrorTypeDef] = None + +class GetSessionsStatisticsAggregationRequestGetSessionsStatisticsAggregationPaginateTypeDef(BaseModel): + aggregationId: str + farmId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAvailableMeteredProductsRequestListAvailableMeteredProductsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBudgetsRequestListBudgetsPaginateTypeDef(BaseModel): + farmId: str + status: Optional[BudgetStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFarmMembersRequestListFarmMembersPaginateTypeDef(BaseModel): + farmId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFarmsRequestListFarmsPaginateTypeDef(BaseModel): + principalId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetMembersRequestListFleetMembersPaginateTypeDef(BaseModel): + farmId: str + fleetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetsRequestListFleetsPaginateTypeDef(BaseModel): + farmId: str + displayName: Optional[str] = None + principalId: Optional[str] = None + status: Optional[FleetStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobMembersRequestListJobMembersPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + farmId: str + queueId: str + principalId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLicenseEndpointsRequestListLicenseEndpointsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMeteredProductsRequestListMeteredProductsPaginateTypeDef(BaseModel): + licenseEndpointId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitorsRequestListMonitorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueueEnvironmentsRequestListQueueEnvironmentsPaginateTypeDef(BaseModel): + farmId: str + queueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueueFleetAssociationsRequestListQueueFleetAssociationsPaginateTypeDef(BaseModel): + farmId: str + fleetId: Optional[str] = None + queueId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueueMembersRequestListQueueMembersPaginateTypeDef(BaseModel): + farmId: str + queueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueuesRequestListQueuesPaginateTypeDef(BaseModel): + farmId: str + principalId: Optional[str] = None + status: Optional[QueueStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSessionActionsRequestListSessionActionsPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + sessionId: Optional[str] = None + taskId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSessionsForWorkerRequestListSessionsForWorkerPaginateTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSessionsRequestListSessionsPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStepConsumersRequestListStepConsumersPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStepDependenciesRequestListStepDependenciesPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStepsRequestListStepsPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStorageProfilesForQueueRequestListStorageProfilesForQueuePaginateTypeDef(BaseModel): + farmId: str + queueId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStorageProfilesRequestListStorageProfilesPaginateTypeDef(BaseModel): + farmId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTasksRequestListTasksPaginateTypeDef(BaseModel): + farmId: str + jobId: str + queueId: str + stepId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkersRequestListWorkersPaginateTypeDef(BaseModel): + farmId: str + fleetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class HostPropertiesRequestTypeDef(BaseModel): + hostName: Optional[str] = None + ipAddresses: Optional[IpAddressesTypeDef] = None + +class HostPropertiesResponseTypeDef(BaseModel): + ec2InstanceArn: Optional[str] = None + ec2InstanceType: Optional[str] = None + hostName: Optional[str] = None + ipAddresses: Optional[IpAddressesTypeDef] = None + +class HostPropertiesResponsePaginatorTypeDef(BaseModel): + ec2InstanceArn: Optional[str] = None + ec2InstanceType: Optional[str] = None + hostName: Optional[str] = None + ipAddresses: Optional[IpAddressesPaginatorTypeDef] = None + +class JobEntityIdentifiersUnionTypeDef(BaseModel): + environmentDetails: Optional[EnvironmentDetailsIdentifiersTypeDef] = None + jobAttachmentDetails: Optional[JobAttachmentDetailsIdentifiersTypeDef] = None + jobDetails: Optional[JobDetailsIdentifiersTypeDef] = None + stepDetails: Optional[StepDetailsIdentifiersTypeDef] = None + +class ListJobMembersResponseTypeDef(BaseModel): + members: List[JobMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobRunAsUserTypeDef(BaseModel): + runAs: RunAsType + posix: Optional[PosixUserTypeDef] = None + windows: Optional[WindowsUserTypeDef] = None + +class ListJobsResponseTypeDef(BaseModel): + jobs: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseEndpointsResponseTypeDef(BaseModel): + licenseEndpoints: List[LicenseEndpointSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAvailableMeteredProductsResponseTypeDef(BaseModel): + meteredProducts: List[MeteredProductSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMeteredProductsResponseTypeDef(BaseModel): + meteredProducts: List[MeteredProductSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMonitorsResponseTypeDef(BaseModel): + monitors: List[MonitorSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueueEnvironmentsResponseTypeDef(BaseModel): + environments: List[QueueEnvironmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueueFleetAssociationsResponseTypeDef(BaseModel): + nextToken: str + queueFleetAssociations: List[QueueFleetAssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueueMembersResponseTypeDef(BaseModel): + members: List[QueueMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueuesResponseTypeDef(BaseModel): + nextToken: str + queues: List[QueueSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSessionsForWorkerResponseTypeDef(BaseModel): + nextToken: str + sessions: List[WorkerSessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSessionsResponseTypeDef(BaseModel): + nextToken: str + sessions: List[SessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStepConsumersResponseTypeDef(BaseModel): + consumers: List[StepConsumerTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStepDependenciesResponseTypeDef(BaseModel): + dependencies: List[StepDependencyTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStorageProfilesForQueueResponseTypeDef(BaseModel): + nextToken: str + storageProfiles: List[StorageProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStorageProfilesResponseTypeDef(BaseModel): + nextToken: str + storageProfiles: List[StorageProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ParameterSpaceTypeDef(BaseModel): + parameters: List[StepParameterTypeDef] + combination: Optional[str] = None + +class SearchSortExpressionTypeDef(BaseModel): + fieldSort: Optional[FieldSortExpressionTypeDef] = None + parameterSort: Optional[ParameterSortExpressionTypeDef] = None + userJobsFirst: Optional[UserJobsFirstTypeDef] = None + +class SessionActionDefinitionSummaryTypeDef(BaseModel): + envEnter: Optional[EnvironmentEnterSessionActionDefinitionSummaryTypeDef] = None + envExit: Optional[EnvironmentExitSessionActionDefinitionSummaryTypeDef] = None + syncInputJobAttachments: Optional[ SyncInputJobAttachmentsSessionActionDefinitionSummaryTypeDef ] = None + taskRun: Optional[TaskRunSessionActionDefinitionSummaryTypeDef] = None + +class StartSessionsStatisticsAggregationRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + farmId: str + groupBy: Sequence[UsageGroupByFieldType] + resourceIds: SessionsStatisticsResourcesTypeDef + startTime: TimestampTypeDef + statistics: Sequence[UsageStatisticType] + period: Optional[PeriodType] = None + timezone: Optional[str] = None + +class StatisticsTypeDef(BaseModel): + costInUsd: StatsTypeDef + count: int + runtimeInSeconds: StatsTypeDef + aggregationEndTime: Optional[datetime] = None + aggregationStartTime: Optional[datetime] = None + fleetId: Optional[str] = None + instanceType: Optional[str] = None + jobId: Optional[str] = None + jobName: Optional[str] = None + licenseProduct: Optional[str] = None + queueId: Optional[str] = None + usageType: Optional[UsageTypeType] = None + userId: Optional[str] = None + +class StepRequiredCapabilitiesTypeDef(BaseModel): + amounts: List[StepAmountCapabilityTypeDef] + attributes: List[StepAttributeCapabilityTypeDef] + +class WorkerCapabilitiesTypeDef(BaseModel): + amounts: Sequence[WorkerAmountCapabilityTypeDef] + attributes: Sequence[WorkerAttributeCapabilityTypeDef] + +class AssignedSessionActionDefinitionTypeDef(BaseModel): + envEnter: Optional[AssignedEnvironmentEnterSessionActionDefinitionTypeDef] = None + envExit: Optional[AssignedEnvironmentExitSessionActionDefinitionTypeDef] = None + syncInputJobAttachments: Optional[ AssignedSyncInputJobAttachmentsSessionActionDefinitionTypeDef ] = None + taskRun: Optional[AssignedTaskRunSessionActionDefinitionTypeDef] = None + +class SessionActionDefinitionTypeDef(BaseModel): + envEnter: Optional[EnvironmentEnterSessionActionDefinitionTypeDef] = None + envExit: Optional[EnvironmentExitSessionActionDefinitionTypeDef] = None + syncInputJobAttachments: Optional[ SyncInputJobAttachmentsSessionActionDefinitionTypeDef ] = None + taskRun: Optional[TaskRunSessionActionDefinitionTypeDef] = None + +class SearchTasksResponseTypeDef(BaseModel): + nextItemOffset: int + tasks: List[TaskSearchSummaryTypeDef] + totalResults: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListTasksResponseTypeDef(BaseModel): + nextToken: str + tasks: List[TaskSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobRequestRequestTypeDef(BaseModel): + farmId: str + priority: int + queueId: str + template: str + templateType: JobTemplateTypeType + attachments: Optional[AttachmentsTypeDef] = None + clientToken: Optional[str] = None + maxFailedTasksCount: Optional[int] = None + maxRetriesPerTask: Optional[int] = None + parameters: Optional[Mapping[str, JobParameterTypeDef]] = None + storageProfileId: Optional[str] = None + targetTaskRunStatus: Optional[CreateJobTargetTaskRunStatusType] = None + +class GetJobResponseTypeDef(BaseModel): + attachments: AttachmentsTypeDef + createdAt: datetime + createdBy: str + description: str + endedAt: datetime + jobId: str + lifecycleStatus: JobLifecycleStatusType + lifecycleStatusMessage: str + maxFailedTasksCount: int + maxRetriesPerTask: int + name: str + parameters: Dict[str, JobParameterTypeDef] + priority: int + startedAt: datetime + storageProfileId: str + targetTaskRunStatus: JobTargetTaskRunStatusType + taskRunStatus: TaskRunStatusType + taskRunStatusCounts: Dict[TaskRunStatusType, int] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobAttachmentDetailsEntityTypeDef(BaseModel): + attachments: AttachmentsTypeDef + jobId: str + +class ListBudgetsResponseTypeDef(BaseModel): + budgets: List[BudgetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchJobsResponseTypeDef(BaseModel): + jobs: List[JobSearchSummaryTypeDef] + nextItemOffset: int + totalResults: int + ResponseMetadata: ResponseMetadataTypeDef + +class CustomerManagedFleetConfigurationPaginatorTypeDef(BaseModel): + mode: AutoScalingModeType + workerCapabilities: CustomerManagedWorkerCapabilitiesPaginatorTypeDef + storageProfileId: Optional[str] = None + +class CustomerManagedFleetConfigurationTypeDef(BaseModel): + mode: AutoScalingModeType + workerCapabilities: CustomerManagedWorkerCapabilitiesTypeDef + storageProfileId: Optional[str] = None + +class SearchFilterExpressionTypeDef(BaseModel): + dateTimeFilter: Optional[DateTimeFilterExpressionTypeDef] = None + groupFilter: Optional[Dict[str, Any]] = None + parameterFilter: Optional[ParameterFilterExpressionTypeDef] = None + searchTermFilter: Optional[SearchTermFilterExpressionTypeDef] = None + stringFilter: Optional[StringFilterExpressionTypeDef] = None + +class BudgetScheduleTypeDef(BaseModel): + fixed: Optional[FixedBudgetScheduleTypeDef] = None + +class UpdateWorkerScheduleRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + updatedSessionActions: Optional[Mapping[str, UpdatedSessionActionInfoTypeDef]] = None + +class ListStepsResponseTypeDef(BaseModel): + nextToken: str + steps: List[StepSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceManagedEc2FleetConfigurationPaginatorTypeDef(BaseModel): + instanceCapabilities: ServiceManagedEc2InstanceCapabilitiesPaginatorTypeDef + instanceMarketOptions: ServiceManagedEc2InstanceMarketOptionsTypeDef + +class ServiceManagedEc2FleetConfigurationTypeDef(BaseModel): + instanceCapabilities: ServiceManagedEc2InstanceCapabilitiesTypeDef + instanceMarketOptions: ServiceManagedEc2InstanceMarketOptionsTypeDef + +class CreateWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + clientToken: Optional[str] = None + hostProperties: Optional[HostPropertiesRequestTypeDef] = None + +class GetSessionResponseTypeDef(BaseModel): + endedAt: datetime + fleetId: str + hostProperties: HostPropertiesResponseTypeDef + lifecycleStatus: SessionLifecycleStatusType + log: LogConfigurationTypeDef + sessionId: str + startedAt: datetime + targetLifecycleStatus: Literal["ENDED"] + updatedAt: datetime + updatedBy: str + workerId: str + workerLog: LogConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkerResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + farmId: str + fleetId: str + hostProperties: HostPropertiesResponseTypeDef + log: LogConfigurationTypeDef + status: WorkerStatusType + updatedAt: datetime + updatedBy: str + workerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class WorkerSearchSummaryTypeDef(BaseModel): + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + fleetId: Optional[str] = None + hostProperties: Optional[HostPropertiesResponseTypeDef] = None + status: Optional[WorkerStatusType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + workerId: Optional[str] = None + +class WorkerSummaryTypeDef(BaseModel): + createdAt: datetime + createdBy: str + farmId: str + fleetId: str + status: WorkerStatusType + workerId: str + hostProperties: Optional[HostPropertiesResponseTypeDef] = None + log: Optional[LogConfigurationTypeDef] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class WorkerSummaryPaginatorTypeDef(BaseModel): + createdAt: datetime + createdBy: str + farmId: str + fleetId: str + status: WorkerStatusType + workerId: str + hostProperties: Optional[HostPropertiesResponsePaginatorTypeDef] = None + log: Optional[LogConfigurationTypeDef] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class BatchGetJobEntityRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + identifiers: Sequence[JobEntityIdentifiersUnionTypeDef] + workerId: str + +class CreateQueueRequestRequestTypeDef(BaseModel): + displayName: str + farmId: str + allowedStorageProfileIds: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + defaultBudgetAction: Optional[DefaultQueueBudgetActionType] = None + description: Optional[str] = None + jobAttachmentSettings: Optional[JobAttachmentSettingsTypeDef] = None + jobRunAsUser: Optional[JobRunAsUserTypeDef] = None + requiredFileSystemLocationNames: Optional[Sequence[str]] = None + roleArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetQueueResponseTypeDef(BaseModel): + allowedStorageProfileIds: List[str] + blockedReason: QueueBlockedReasonType + createdAt: datetime + createdBy: str + defaultBudgetAction: DefaultQueueBudgetActionType + description: str + displayName: str + farmId: str + jobAttachmentSettings: JobAttachmentSettingsTypeDef + jobRunAsUser: JobRunAsUserTypeDef + queueId: str + requiredFileSystemLocationNames: List[str] + roleArn: str + status: QueueStatusType + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobDetailsEntityTypeDef(BaseModel): + jobId: str + logGroupName: str + schemaVersion: str + jobAttachmentSettings: Optional[JobAttachmentSettingsTypeDef] = None + jobRunAsUser: Optional[JobRunAsUserTypeDef] = None + parameters: Optional[Dict[str, JobParameterTypeDef]] = None + pathMappingRules: Optional[List[PathMappingRuleTypeDef]] = None + queueRoleArn: Optional[str] = None + +class UpdateQueueRequestRequestTypeDef(BaseModel): + farmId: str + queueId: str + allowedStorageProfileIdsToAdd: Optional[Sequence[str]] = None + allowedStorageProfileIdsToRemove: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + defaultBudgetAction: Optional[DefaultQueueBudgetActionType] = None + description: Optional[str] = None + displayName: Optional[str] = None + jobAttachmentSettings: Optional[JobAttachmentSettingsTypeDef] = None + jobRunAsUser: Optional[JobRunAsUserTypeDef] = None + requiredFileSystemLocationNamesToAdd: Optional[Sequence[str]] = None + requiredFileSystemLocationNamesToRemove: Optional[Sequence[str]] = None + roleArn: Optional[str] = None + +class StepSearchSummaryTypeDef(BaseModel): + createdAt: Optional[datetime] = None + endedAt: Optional[datetime] = None + jobId: Optional[str] = None + lifecycleStatus: Optional[StepLifecycleStatusType] = None + lifecycleStatusMessage: Optional[str] = None + name: Optional[str] = None + parameterSpace: Optional[ParameterSpaceTypeDef] = None + queueId: Optional[str] = None + startedAt: Optional[datetime] = None + stepId: Optional[str] = None + targetTaskRunStatus: Optional[StepTargetTaskRunStatusType] = None + taskRunStatus: Optional[TaskRunStatusType] = None + taskRunStatusCounts: Optional[Dict[TaskRunStatusType, int]] = None + +class SearchJobsRequestRequestTypeDef(BaseModel): + farmId: str + itemOffset: int + queueIds: Sequence[str] + filterExpressions: Optional["SearchGroupedFilterExpressionsTypeDef"] = None + pageSize: Optional[int] = None + sortExpressions: Optional[Sequence[SearchSortExpressionTypeDef]] = None + +class SearchStepsRequestRequestTypeDef(BaseModel): + farmId: str + itemOffset: int + queueIds: Sequence[str] + filterExpressions: Optional["SearchGroupedFilterExpressionsTypeDef"] = None + jobId: Optional[str] = None + pageSize: Optional[int] = None + sortExpressions: Optional[Sequence[SearchSortExpressionTypeDef]] = None + +class SearchTasksRequestRequestTypeDef(BaseModel): + farmId: str + itemOffset: int + queueIds: Sequence[str] + filterExpressions: Optional["SearchGroupedFilterExpressionsTypeDef"] = None + jobId: Optional[str] = None + pageSize: Optional[int] = None + sortExpressions: Optional[Sequence[SearchSortExpressionTypeDef]] = None + +class SearchWorkersRequestRequestTypeDef(BaseModel): + farmId: str + fleetIds: Sequence[str] + itemOffset: int + filterExpressions: Optional["SearchGroupedFilterExpressionsTypeDef"] = None + pageSize: Optional[int] = None + sortExpressions: Optional[Sequence[SearchSortExpressionTypeDef]] = None + +class SessionActionSummaryTypeDef(BaseModel): + definition: SessionActionDefinitionSummaryTypeDef + sessionActionId: str + status: SessionActionStatusType + endedAt: Optional[datetime] = None + progressPercent: Optional[float] = None + startedAt: Optional[datetime] = None + workerUpdatedAt: Optional[datetime] = None + +class GetSessionsStatisticsAggregationResponseTypeDef(BaseModel): + nextToken: str + statistics: List[StatisticsTypeDef] + status: SessionsStatisticsAggregationStatusType + statusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetStepResponseTypeDef(BaseModel): + createdAt: datetime + createdBy: str + dependencyCounts: DependencyCountsTypeDef + description: str + endedAt: datetime + lifecycleStatus: StepLifecycleStatusType + lifecycleStatusMessage: str + name: str + parameterSpace: ParameterSpaceTypeDef + requiredCapabilities: StepRequiredCapabilitiesTypeDef + startedAt: datetime + stepId: str + targetTaskRunStatus: StepTargetTaskRunStatusType + taskRunStatus: TaskRunStatusType + taskRunStatusCounts: Dict[TaskRunStatusType, int] + updatedAt: datetime + updatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkerRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + workerId: str + capabilities: Optional[WorkerCapabilitiesTypeDef] = None + hostProperties: Optional[HostPropertiesRequestTypeDef] = None + status: Optional[UpdatedWorkerStatusType] = None + +class AssignedSessionActionTypeDef(BaseModel): + definition: AssignedSessionActionDefinitionTypeDef + sessionActionId: str + +class GetSessionActionResponseTypeDef(BaseModel): + definition: SessionActionDefinitionTypeDef + endedAt: datetime + processExitCode: int + progressMessage: str + progressPercent: float + sessionActionId: str + sessionId: str + startedAt: datetime + status: SessionActionStatusType + workerUpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBudgetRequestRequestTypeDef(BaseModel): + actions: Sequence[BudgetActionToAddTypeDef] + approximateDollarLimit: float + displayName: str + farmId: str + schedule: BudgetScheduleTypeDef + usageTrackingResource: UsageTrackingResourceTypeDef + clientToken: Optional[str] = None + description: Optional[str] = None + +class GetBudgetResponseTypeDef(BaseModel): + actions: List[ResponseBudgetActionTypeDef] + approximateDollarLimit: float + budgetId: str + createdAt: datetime + createdBy: str + description: str + displayName: str + queueStoppedAt: datetime + schedule: BudgetScheduleTypeDef + status: BudgetStatusType + updatedAt: datetime + updatedBy: str + usageTrackingResource: UsageTrackingResourceTypeDef + usages: ConsumedUsagesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBudgetRequestRequestTypeDef(BaseModel): + budgetId: str + farmId: str + actionsToAdd: Optional[Sequence[BudgetActionToAddTypeDef]] = None + actionsToRemove: Optional[Sequence[BudgetActionToRemoveTypeDef]] = None + approximateDollarLimit: Optional[float] = None + clientToken: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + schedule: Optional[BudgetScheduleTypeDef] = None + status: Optional[BudgetStatusType] = None + +class FleetConfigurationPaginatorTypeDef(BaseModel): + customerManaged: Optional[CustomerManagedFleetConfigurationPaginatorTypeDef] = None + serviceManagedEc2: Optional[ServiceManagedEc2FleetConfigurationPaginatorTypeDef] = None + +class FleetConfigurationTypeDef(BaseModel): + customerManaged: Optional[CustomerManagedFleetConfigurationTypeDef] = None + serviceManagedEc2: Optional[ServiceManagedEc2FleetConfigurationTypeDef] = None + +class SearchWorkersResponseTypeDef(BaseModel): + nextItemOffset: int + totalResults: int + workers: List[WorkerSearchSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkersResponseTypeDef(BaseModel): + nextToken: str + workers: List[WorkerSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkersResponsePaginatorTypeDef(BaseModel): + nextToken: str + workers: List[WorkerSummaryPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class JobEntityTypeDef(BaseModel): + environmentDetails: Optional[EnvironmentDetailsEntityTypeDef] = None + jobAttachmentDetails: Optional[JobAttachmentDetailsEntityTypeDef] = None + jobDetails: Optional[JobDetailsEntityTypeDef] = None + stepDetails: Optional[StepDetailsEntityTypeDef] = None + +class SearchStepsResponseTypeDef(BaseModel): + nextItemOffset: int + steps: List[StepSearchSummaryTypeDef] + totalResults: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListSessionActionsResponseTypeDef(BaseModel): + nextToken: str + sessionActions: List[SessionActionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssignedSessionTypeDef(BaseModel): + jobId: str + logConfiguration: LogConfigurationTypeDef + queueId: str + sessionActions: List[AssignedSessionActionTypeDef] + +class FleetSummaryPaginatorTypeDef(BaseModel): + configuration: FleetConfigurationPaginatorTypeDef + createdAt: datetime + createdBy: str + displayName: str + farmId: str + fleetId: str + maxWorkerCount: int + minWorkerCount: int + status: FleetStatusType + workerCount: int + autoScalingStatus: Optional[AutoScalingStatusType] = None + targetWorkerCount: Optional[int] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class CreateFleetRequestRequestTypeDef(BaseModel): + configuration: FleetConfigurationTypeDef + displayName: str + farmId: str + maxWorkerCount: int + roleArn: str + clientToken: Optional[str] = None + description: Optional[str] = None + minWorkerCount: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class FleetSummaryTypeDef(BaseModel): + configuration: FleetConfigurationTypeDef + createdAt: datetime + createdBy: str + displayName: str + farmId: str + fleetId: str + maxWorkerCount: int + minWorkerCount: int + status: FleetStatusType + workerCount: int + autoScalingStatus: Optional[AutoScalingStatusType] = None + targetWorkerCount: Optional[int] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class GetFleetResponseTypeDef(BaseModel): + autoScalingStatus: AutoScalingStatusType + capabilities: FleetCapabilitiesTypeDef + configuration: FleetConfigurationTypeDef + createdAt: datetime + createdBy: str + description: str + displayName: str + farmId: str + fleetId: str + maxWorkerCount: int + minWorkerCount: int + roleArn: str + status: FleetStatusType + targetWorkerCount: int + updatedAt: datetime + updatedBy: str + workerCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetRequestRequestTypeDef(BaseModel): + farmId: str + fleetId: str + clientToken: Optional[str] = None + configuration: Optional[FleetConfigurationTypeDef] = None + description: Optional[str] = None + displayName: Optional[str] = None + maxWorkerCount: Optional[int] = None + minWorkerCount: Optional[int] = None + roleArn: Optional[str] = None + +class BatchGetJobEntityResponseTypeDef(BaseModel): + entities: List[JobEntityTypeDef] + errors: List[GetJobEntityErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkerScheduleResponseTypeDef(BaseModel): + assignedSessions: Dict[str, AssignedSessionTypeDef] + cancelSessionActions: Dict[str, List[str]] + desiredWorkerStatus: Literal["STOPPED"] + updateIntervalSeconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetsResponsePaginatorTypeDef(BaseModel): + fleets: List[FleetSummaryPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetsResponseTypeDef(BaseModel): + fleets: List[FleetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/deadline_constants.py b/aws_resource_validator/pydantic_models/deadline_constants.py new file mode 100644 index 00000000..30d754cd --- /dev/null +++ b/aws_resource_validator/pydantic_models/deadline_constants.py @@ -0,0 +1,554 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceleratorTypeType = Literal["gpu"] +AutoScalingModeType = Literal["EVENT_BASED_AUTO_SCALING", "NO_SCALING"] +AutoScalingStatusType = Literal["GROWING", "SHRINKING", "STEADY"] +BudgetActionTypeType = Literal["STOP_SCHEDULING_AND_CANCEL_TASKS", "STOP_SCHEDULING_AND_COMPLETE_TASKS"] +BudgetStatusType = Literal["ACTIVE", "INACTIVE"] +ComparisonOperatorType = Literal["EQUAL", "GREATER_THAN", "GREATER_THAN_EQUAL_TO", "LESS_THAN", "LESS_THAN_EQUAL_TO", "NOT_EQUAL"] +CompletedStatusType = Literal["CANCELED", "FAILED", "INTERRUPTED", "NEVER_ATTEMPTED", "SUCCEEDED"] +CpuArchitectureTypeType = Literal["arm64", "x86_64"] +CreateJobTargetTaskRunStatusType = Literal["READY", "SUSPENDED"] +CustomerManagedFleetOperatingSystemFamilyType = Literal["LINUX", "MACOS", "WINDOWS"] +DefaultQueueBudgetActionType = Literal["NONE", "STOP_SCHEDULING_AND_CANCEL_TASKS", "STOP_SCHEDULING_AND_COMPLETE_TASKS"] +DependencyConsumerResolutionStatusType = Literal["RESOLVED", "UNRESOLVED"] +DesiredWorkerStatusType = Literal["STOPPED"] +Ec2MarketTypeType = Literal["on-demand", "spot"] +EnvironmentTemplateTypeType = Literal["JSON", "YAML"] +FileSystemLocationTypeType = Literal["LOCAL", "SHARED"] +FleetActiveWaiterName = Literal["fleet_active"] +FleetStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATE_IN_PROGRESS", "UPDATE_FAILED", "UPDATE_IN_PROGRESS"] +GetSessionsStatisticsAggregationPaginatorName = Literal["get_sessions_statistics_aggregation"] +JobAttachmentsFileSystemType = Literal["COPIED", "VIRTUAL"] +JobCreateCompleteWaiterName = Literal["job_create_complete"] +JobEntityErrorCodeType = Literal["AccessDeniedException", + "ConflictException", + "InternalServerException", + "MaxPayloadSizeExceeded", + "ResourceNotFoundException", + "ValidationException",] +JobLifecycleStatusType = Literal["ARCHIVED", + "CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCEEDED", + "UPLOAD_FAILED", + "UPLOAD_IN_PROGRESS",] +JobTargetTaskRunStatusType = Literal["CANCELED", "FAILED", "PENDING", "READY", "SUCCEEDED", "SUSPENDED"] +JobTemplateTypeType = Literal["JSON", "YAML"] +LicenseEndpointDeletedWaiterName = Literal["license_endpoint_deleted"] +LicenseEndpointStatusType = Literal["CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "NOT_READY", "READY"] +LicenseEndpointValidWaiterName = Literal["license_endpoint_valid"] +ListAvailableMeteredProductsPaginatorName = Literal["list_available_metered_products"] +ListBudgetsPaginatorName = Literal["list_budgets"] +ListFarmMembersPaginatorName = Literal["list_farm_members"] +ListFarmsPaginatorName = Literal["list_farms"] +ListFleetMembersPaginatorName = Literal["list_fleet_members"] +ListFleetsPaginatorName = Literal["list_fleets"] +ListJobMembersPaginatorName = Literal["list_job_members"] +ListJobsPaginatorName = Literal["list_jobs"] +ListLicenseEndpointsPaginatorName = Literal["list_license_endpoints"] +ListMeteredProductsPaginatorName = Literal["list_metered_products"] +ListMonitorsPaginatorName = Literal["list_monitors"] +ListQueueEnvironmentsPaginatorName = Literal["list_queue_environments"] +ListQueueFleetAssociationsPaginatorName = Literal["list_queue_fleet_associations"] +ListQueueMembersPaginatorName = Literal["list_queue_members"] +ListQueuesPaginatorName = Literal["list_queues"] +ListSessionActionsPaginatorName = Literal["list_session_actions"] +ListSessionsForWorkerPaginatorName = Literal["list_sessions_for_worker"] +ListSessionsPaginatorName = Literal["list_sessions"] +ListStepConsumersPaginatorName = Literal["list_step_consumers"] +ListStepDependenciesPaginatorName = Literal["list_step_dependencies"] +ListStepsPaginatorName = Literal["list_steps"] +ListStorageProfilesForQueuePaginatorName = Literal["list_storage_profiles_for_queue"] +ListStorageProfilesPaginatorName = Literal["list_storage_profiles"] +ListTasksPaginatorName = Literal["list_tasks"] +ListWorkersPaginatorName = Literal["list_workers"] +LogicalOperatorType = Literal["AND", "OR"] +MembershipLevelType = Literal["CONTRIBUTOR", "MANAGER", "OWNER", "VIEWER"] +PathFormatType = Literal["posix", "windows"] +PeriodType = Literal["DAILY", "HOURLY", "MONTHLY", "WEEKLY"] +PrincipalTypeType = Literal["GROUP", "USER"] +QueueBlockedReasonType = Literal["BUDGET_THRESHOLD_REACHED", "NO_BUDGET_CONFIGURED"] +QueueFleetAssociationStatusType = Literal["ACTIVE", "STOPPED", "STOP_SCHEDULING_AND_CANCEL_TASKS", "STOP_SCHEDULING_AND_COMPLETE_TASKS"] +QueueFleetAssociationStoppedWaiterName = Literal["queue_fleet_association_stopped"] +QueueSchedulingBlockedWaiterName = Literal["queue_scheduling_blocked"] +QueueSchedulingWaiterName = Literal["queue_scheduling"] +QueueStatusType = Literal["IDLE", "SCHEDULING", "SCHEDULING_BLOCKED"] +RunAsType = Literal["QUEUE_CONFIGURED_USER", "WORKER_AGENT_USER"] +ServiceManagedFleetOperatingSystemFamilyType = Literal["LINUX", "WINDOWS"] +SessionActionStatusType = Literal["ASSIGNED", + "CANCELED", + "CANCELING", + "FAILED", + "INTERRUPTED", + "NEVER_ATTEMPTED", + "RECLAIMED", + "RECLAIMING", + "RUNNING", + "SCHEDULED", + "SUCCEEDED",] +SessionLifecycleStatusType = Literal["ENDED", "STARTED", "UPDATE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_SUCCEEDED"] +SessionLifecycleTargetStatusType = Literal["ENDED"] +SessionsStatisticsAggregationStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "TIMEOUT"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +StepLifecycleStatusType = Literal["CREATE_COMPLETE", "UPDATE_FAILED", "UPDATE_IN_PROGRESS", "UPDATE_SUCCEEDED"] +StepParameterTypeType = Literal["FLOAT", "INT", "PATH", "STRING"] +StepTargetTaskRunStatusType = Literal["CANCELED", "FAILED", "PENDING", "READY", "SUCCEEDED", "SUSPENDED"] +StorageProfileOperatingSystemFamilyType = Literal["LINUX", "MACOS", "WINDOWS"] +TaskRunStatusType = Literal["ASSIGNED", + "CANCELED", + "FAILED", + "INTERRUPTING", + "NOT_COMPATIBLE", + "PENDING", + "READY", + "RUNNING", + "SCHEDULED", + "STARTING", + "SUCCEEDED", + "SUSPENDED",] +TaskTargetRunStatusType = Literal["CANCELED", "FAILED", "PENDING", "READY", "SUCCEEDED", "SUSPENDED"] +UpdateJobLifecycleStatusType = Literal["ARCHIVED"] +UpdateQueueFleetAssociationStatusType = Literal["ACTIVE", "STOP_SCHEDULING_AND_CANCEL_TASKS", "STOP_SCHEDULING_AND_COMPLETE_TASKS"] +UpdatedWorkerStatusType = Literal["STARTED", "STOPPED", "STOPPING"] +UsageGroupByFieldType = Literal["FLEET_ID", "INSTANCE_TYPE", "JOB_ID", "LICENSE_PRODUCT", "QUEUE_ID", "USAGE_TYPE", "USER_ID"] +UsageStatisticType = Literal["AVG", "MAX", "MIN", "SUM"] +UsageTypeType = Literal["COMPUTE", "LICENSE"] +WorkerStatusType = Literal["CREATED", + "IDLE", + "NOT_COMPATIBLE", + "NOT_RESPONDING", + "RUNNING", + "STARTED", + "STOPPED", + "STOPPING",] +DeadlineCloudServiceName = Literal["deadline"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_sessions_statistics_aggregation", + "list_available_metered_products", + "list_budgets", + "list_farm_members", + "list_farms", + "list_fleet_members", + "list_fleets", + "list_job_members", + "list_jobs", + "list_license_endpoints", + "list_metered_products", + "list_monitors", + "list_queue_environments", + "list_queue_fleet_associations", + "list_queue_members", + "list_queues", + "list_session_actions", + "list_sessions", + "list_sessions_for_worker", + "list_step_consumers", + "list_step_dependencies", + "list_steps", + "list_storage_profiles", + "list_storage_profiles_for_queue", + "list_tasks", + "list_workers",] +WaiterName = Literal["fleet_active", + "job_create_complete", + "license_endpoint_deleted", + "license_endpoint_valid", + "queue_fleet_association_stopped", + "queue_scheduling", + "queue_scheduling_blocked",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/detective_classes.py b/aws_resource_validator/pydantic_models/detective_classes.py new file mode 100644 index 00000000..3d3adea2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/detective_classes.py @@ -0,0 +1,367 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.detective_constants import * + +class AcceptInvitationRequestRequestTypeDef(BaseModel): + GraphArn: str + +class AccountTypeDef(BaseModel): + AccountId: str + EmailAddress: str + +class AdministratorTypeDef(BaseModel): + AccountId: Optional[str] = None + GraphArn: Optional[str] = None + DelegationTime: Optional[datetime] = None + +class BatchGetGraphMemberDatasourcesRequestRequestTypeDef(BaseModel): + GraphArn: str + AccountIds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class UnprocessedAccountTypeDef(BaseModel): + AccountId: Optional[str] = None + Reason: Optional[str] = None + +class BatchGetMembershipDatasourcesRequestRequestTypeDef(BaseModel): + GraphArns: Sequence[str] + +class UnprocessedGraphTypeDef(BaseModel): + GraphArn: Optional[str] = None + Reason: Optional[str] = None + +class CreateGraphRequestRequestTypeDef(BaseModel): + Tags: Optional[Mapping[str, str]] = None + +class TimestampForCollectionTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + +class DatasourcePackageUsageInfoTypeDef(BaseModel): + VolumeUsageInBytes: Optional[int] = None + VolumeUsageUpdateTime: Optional[datetime] = None + +class DeleteGraphRequestRequestTypeDef(BaseModel): + GraphArn: str + +class DeleteMembersRequestRequestTypeDef(BaseModel): + GraphArn: str + AccountIds: Sequence[str] + +class DescribeOrganizationConfigurationRequestRequestTypeDef(BaseModel): + GraphArn: str + +class DisassociateMembershipRequestRequestTypeDef(BaseModel): + GraphArn: str + +class EnableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + AccountId: str + +class StringFilterTypeDef(BaseModel): + Value: str + +class FlaggedIpAddressDetailTypeDef(BaseModel): + IpAddress: Optional[str] = None + Reason: Optional[Literal["AWS_THREAT_INTELLIGENCE"]] = None + +class GetInvestigationRequestRequestTypeDef(BaseModel): + GraphArn: str + InvestigationId: str + +class GetMembersRequestRequestTypeDef(BaseModel): + GraphArn: str + AccountIds: Sequence[str] + +class GraphTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + +class ImpossibleTravelDetailTypeDef(BaseModel): + StartingIpAddress: Optional[str] = None + EndingIpAddress: Optional[str] = None + StartingLocation: Optional[str] = None + EndingLocation: Optional[str] = None + HourlyTimeDelta: Optional[int] = None + +class NewAsoDetailTypeDef(BaseModel): + Aso: Optional[str] = None + IsNewForEntireAccount: Optional[bool] = None + +class NewGeolocationDetailTypeDef(BaseModel): + Location: Optional[str] = None + IpAddress: Optional[str] = None + IsNewForEntireAccount: Optional[bool] = None + +class NewUserAgentDetailTypeDef(BaseModel): + UserAgent: Optional[str] = None + IsNewForEntireAccount: Optional[bool] = None + +class RelatedFindingDetailTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[str] = None + IpAddress: Optional[str] = None + +class RelatedFindingGroupDetailTypeDef(BaseModel): + Id: Optional[str] = None + +class TTPsObservedDetailTypeDef(BaseModel): + Tactic: Optional[str] = None + Technique: Optional[str] = None + Procedure: Optional[str] = None + IpAddress: Optional[str] = None + APIName: Optional[str] = None + APISuccessCount: Optional[int] = None + APIFailureCount: Optional[int] = None + +class InvestigationDetailTypeDef(BaseModel): + InvestigationId: Optional[str] = None + Severity: Optional[SeverityType] = None + Status: Optional[StatusType] = None + State: Optional[StateType] = None + CreatedTime: Optional[datetime] = None + EntityArn: Optional[str] = None + EntityType: Optional[EntityTypeType] = None + +class ListDatasourcePackagesRequestRequestTypeDef(BaseModel): + GraphArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListGraphsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIndicatorsRequestRequestTypeDef(BaseModel): + GraphArn: str + InvestigationId: str + IndicatorType: Optional[IndicatorTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SortCriteriaTypeDef(BaseModel): + Field: Optional[FieldType] = None + SortOrder: Optional[SortOrderType] = None + +class ListInvitationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMembersRequestRequestTypeDef(BaseModel): + GraphArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListOrganizationAdminAccountsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class RejectInvitationRequestRequestTypeDef(BaseModel): + GraphArn: str + +class StartMonitoringMemberRequestRequestTypeDef(BaseModel): + GraphArn: str + AccountId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDatasourcePackagesRequestRequestTypeDef(BaseModel): + GraphArn: str + DatasourcePackages: Sequence[DatasourcePackageType] + +class UpdateInvestigationStateRequestRequestTypeDef(BaseModel): + GraphArn: str + InvestigationId: str + State: StateType + +class UpdateOrganizationConfigurationRequestRequestTypeDef(BaseModel): + GraphArn: str + AutoEnable: Optional[bool] = None + +class CreateMembersRequestRequestTypeDef(BaseModel): + GraphArn: str + Accounts: Sequence[AccountTypeDef] + Message: Optional[str] = None + DisableEmailNotification: Optional[bool] = None + +class CreateGraphResponseTypeDef(BaseModel): + GraphArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationConfigurationResponseTypeDef(BaseModel): + AutoEnable: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetInvestigationResponseTypeDef(BaseModel): + GraphArn: str + InvestigationId: str + EntityArn: str + EntityType: EntityTypeType + CreatedTime: datetime + ScopeStartTime: datetime + ScopeEndTime: datetime + Status: StatusType + Severity: SeverityType + State: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationAdminAccountsResponseTypeDef(BaseModel): + Administrators: List[AdministratorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartInvestigationResponseTypeDef(BaseModel): + InvestigationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMembersResponseTypeDef(BaseModel): + AccountIds: List[str] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DatasourcePackageIngestDetailTypeDef(BaseModel): + DatasourcePackageIngestState: Optional[DatasourcePackageIngestStateType] = None + LastIngestStateChange: Optional[ Dict[DatasourcePackageIngestStateType, TimestampForCollectionTypeDef] = None + +class MembershipDatasourcesTypeDef(BaseModel): + AccountId: Optional[str] = None + GraphArn: Optional[str] = None + DatasourcePackageIngestHistory: Optional[ Dict[ DatasourcePackageType = None + +class MemberDetailTypeDef(BaseModel): + AccountId: Optional[str] = None + EmailAddress: Optional[str] = None + GraphArn: Optional[str] = None + MasterId: Optional[str] = None + AdministratorId: Optional[str] = None + Status: Optional[MemberStatusType] = None + DisabledReason: Optional[MemberDisabledReasonType] = None + InvitedTime: Optional[datetime] = None + UpdatedTime: Optional[datetime] = None + VolumeUsageInBytes: Optional[int] = None + VolumeUsageUpdatedTime: Optional[datetime] = None + PercentOfGraphUtilization: Optional[float] = None + PercentOfGraphUtilizationUpdatedTime: Optional[datetime] = None + InvitationType: Optional[InvitationTypeType] = None + VolumeUsageByDatasourcePackage: Optional[ Dict[DatasourcePackageType, DatasourcePackageUsageInfoTypeDef] = None + DatasourcePackageIngestStates: Optional[ Dict[DatasourcePackageType, DatasourcePackageIngestStateType] = None + +class DateFilterTypeDef(BaseModel): + StartInclusive: TimestampTypeDef + EndInclusive: TimestampTypeDef + +class StartInvestigationRequestRequestTypeDef(BaseModel): + GraphArn: str + EntityArn: str + ScopeStartTime: TimestampTypeDef + ScopeEndTime: TimestampTypeDef + +class ListGraphsResponseTypeDef(BaseModel): + GraphList: List[GraphTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IndicatorDetailTypeDef(BaseModel): + TTPsObservedDetail: Optional[TTPsObservedDetailTypeDef] = None + ImpossibleTravelDetail: Optional[ImpossibleTravelDetailTypeDef] = None + FlaggedIpAddressDetail: Optional[FlaggedIpAddressDetailTypeDef] = None + NewGeolocationDetail: Optional[NewGeolocationDetailTypeDef] = None + NewAsoDetail: Optional[NewAsoDetailTypeDef] = None + NewUserAgentDetail: Optional[NewUserAgentDetailTypeDef] = None + RelatedFindingDetail: Optional[RelatedFindingDetailTypeDef] = None + RelatedFindingGroupDetail: Optional[RelatedFindingGroupDetailTypeDef] = None + +class ListInvestigationsResponseTypeDef(BaseModel): + InvestigationDetails: List[InvestigationDetailTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasourcePackagesResponseTypeDef(BaseModel): + DatasourcePackages: Dict[DatasourcePackageType, DatasourcePackageIngestDetailTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetGraphMemberDatasourcesResponseTypeDef(BaseModel): + MemberDatasources: List[MembershipDatasourcesTypeDef] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetMembershipDatasourcesResponseTypeDef(BaseModel): + MembershipDatasources: List[MembershipDatasourcesTypeDef] + UnprocessedGraphs: List[UnprocessedGraphTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMembersResponseTypeDef(BaseModel): + Members: List[MemberDetailTypeDef] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMembersResponseTypeDef(BaseModel): + MemberDetails: List[MemberDetailTypeDef] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListInvitationsResponseTypeDef(BaseModel): + Invitations: List[MemberDetailTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMembersResponseTypeDef(BaseModel): + MemberDetails: List[MemberDetailTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FilterCriteriaTypeDef(BaseModel): + Severity: Optional[StringFilterTypeDef] = None + Status: Optional[StringFilterTypeDef] = None + State: Optional[StringFilterTypeDef] = None + EntityArn: Optional[StringFilterTypeDef] = None + CreatedTime: Optional[DateFilterTypeDef] = None + +class IndicatorTypeDef(BaseModel): + IndicatorType: Optional[IndicatorTypeType] = None + IndicatorDetail: Optional[IndicatorDetailTypeDef] = None + +class ListInvestigationsRequestRequestTypeDef(BaseModel): + GraphArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + SortCriteria: Optional[SortCriteriaTypeDef] = None + +class ListIndicatorsResponseTypeDef(BaseModel): + GraphArn: str + InvestigationId: str + NextToken: str + Indicators: List[IndicatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/detective_constants.py b/aws_resource_validator/pydantic_models/detective_constants.py new file mode 100644 index 00000000..f754c7ed --- /dev/null +++ b/aws_resource_validator/pydantic_models/detective_constants.py @@ -0,0 +1,434 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DatasourcePackageIngestStateType = Literal["DISABLED", "STARTED", "STOPPED"] +DatasourcePackageType = Literal["ASFF_SECURITYHUB_FINDING", "DETECTIVE_CORE", "EKS_AUDIT"] +EntityTypeType = Literal["IAM_ROLE", "IAM_USER"] +FieldType = Literal["CREATED_TIME", "SEVERITY", "STATUS"] +IndicatorTypeType = Literal["FLAGGED_IP_ADDRESS", + "IMPOSSIBLE_TRAVEL", + "NEW_ASO", + "NEW_GEOLOCATION", + "NEW_USER_AGENT", + "RELATED_FINDING", + "RELATED_FINDING_GROUP", + "TTP_OBSERVED",] +InvitationTypeType = Literal["INVITATION", "ORGANIZATION"] +MemberDisabledReasonType = Literal["VOLUME_TOO_HIGH", "VOLUME_UNKNOWN"] +MemberStatusType = Literal["ACCEPTED_BUT_DISABLED", "ENABLED", "INVITED", "VERIFICATION_FAILED", "VERIFICATION_IN_PROGRESS"] +ReasonType = Literal["AWS_THREAT_INTELLIGENCE"] +SeverityType = Literal["CRITICAL", "HIGH", "INFORMATIONAL", "LOW", "MEDIUM"] +SortOrderType = Literal["ASC", "DESC"] +StateType = Literal["ACTIVE", "ARCHIVED"] +StatusType = Literal["FAILED", "RUNNING", "SUCCESSFUL"] +DetectiveServiceName = Literal["detective"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/devicefarm_classes.py b/aws_resource_validator/pydantic_models/devicefarm_classes.py new file mode 100644 index 00000000..fc3b4477 --- /dev/null +++ b/aws_resource_validator/pydantic_models/devicefarm_classes.py @@ -0,0 +1,1181 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.devicefarm_constants import * + +class TrialMinutesTypeDef(BaseModel): + total: Optional[float] = None + remaining: Optional[float] = None + +class ArtifactTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[ArtifactTypeType] = None + extension: Optional[str] = None + url: Optional[str] = None + +class CPUTypeDef(BaseModel): + frequency: Optional[str] = None + architecture: Optional[str] = None + clock: Optional[float] = None + +class CountersTypeDef(BaseModel): + total: Optional[int] = None + passed: Optional[int] = None + failed: Optional[int] = None + warned: Optional[int] = None + errored: Optional[int] = None + stopped: Optional[int] = None + skipped: Optional[int] = None + +class RuleTypeDef(BaseModel): + attribute: Optional[DeviceAttributeType] = None + operator: Optional[RuleOperatorType] = None + value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateInstanceProfileRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + packageCleanup: Optional[bool] = None + excludeAppPackagesFromCleanup: Optional[Sequence[str]] = None + rebootAfterUse: Optional[bool] = None + +class InstanceProfileTypeDef(BaseModel): + arn: Optional[str] = None + packageCleanup: Optional[bool] = None + excludeAppPackagesFromCleanup: Optional[List[str]] = None + rebootAfterUse: Optional[bool] = None + name: Optional[str] = None + description: Optional[str] = None + +class CreateNetworkProfileRequestRequestTypeDef(BaseModel): + projectArn: str + name: str + description: Optional[str] = None + type: Optional[NetworkProfileTypeType] = None + uplinkBandwidthBits: Optional[int] = None + downlinkBandwidthBits: Optional[int] = None + uplinkDelayMs: Optional[int] = None + downlinkDelayMs: Optional[int] = None + uplinkJitterMs: Optional[int] = None + downlinkJitterMs: Optional[int] = None + uplinkLossPercent: Optional[int] = None + downlinkLossPercent: Optional[int] = None + +class NetworkProfileTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + type: Optional[NetworkProfileTypeType] = None + uplinkBandwidthBits: Optional[int] = None + downlinkBandwidthBits: Optional[int] = None + uplinkDelayMs: Optional[int] = None + downlinkDelayMs: Optional[int] = None + uplinkJitterMs: Optional[int] = None + downlinkJitterMs: Optional[int] = None + uplinkLossPercent: Optional[int] = None + downlinkLossPercent: Optional[int] = None + +class VpcConfigTypeDef(BaseModel): + securityGroupIds: Sequence[str] + subnetIds: Sequence[str] + vpcId: str + +class CreateRemoteAccessSessionConfigurationTypeDef(BaseModel): + billingMethod: Optional[BillingMethodType] = None + vpceConfigurationArns: Optional[Sequence[str]] = None + +class TestGridVpcConfigTypeDef(BaseModel): + securityGroupIds: Sequence[str] + subnetIds: Sequence[str] + vpcId: str + +class CreateTestGridUrlRequestRequestTypeDef(BaseModel): + projectArn: str + expiresInSeconds: int + +class CreateUploadRequestRequestTypeDef(BaseModel): + projectArn: str + name: str + type: UploadTypeType + contentType: Optional[str] = None + +class UploadTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + created: Optional[datetime] = None + type: Optional[UploadTypeType] = None + status: Optional[UploadStatusType] = None + url: Optional[str] = None + metadata: Optional[str] = None + contentType: Optional[str] = None + message: Optional[str] = None + category: Optional[UploadCategoryType] = None + +class CreateVPCEConfigurationRequestRequestTypeDef(BaseModel): + vpceConfigurationName: str + vpceServiceName: str + serviceDnsName: str + vpceConfigurationDescription: Optional[str] = None + +class VPCEConfigurationTypeDef(BaseModel): + arn: Optional[str] = None + vpceConfigurationName: Optional[str] = None + vpceServiceName: Optional[str] = None + serviceDnsName: Optional[str] = None + vpceConfigurationDescription: Optional[str] = None + +class CustomerArtifactPathsOutputTypeDef(BaseModel): + iosPaths: Optional[List[str]] = None + androidPaths: Optional[List[str]] = None + deviceHostPaths: Optional[List[str]] = None + +class CustomerArtifactPathsTypeDef(BaseModel): + iosPaths: Optional[Sequence[str]] = None + androidPaths: Optional[Sequence[str]] = None + deviceHostPaths: Optional[Sequence[str]] = None + +class DeleteDevicePoolRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteInstanceProfileRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteNetworkProfileRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteProjectRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteRemoteAccessSessionRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteRunRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteTestGridProjectRequestRequestTypeDef(BaseModel): + projectArn: str + +class DeleteUploadRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteVPCEConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class DeviceFilterExtraOutputTypeDef(BaseModel): + attribute: DeviceFilterAttributeType + operator: RuleOperatorType + values: List[str] + +class DeviceFilterOutputTypeDef(BaseModel): + attribute: DeviceFilterAttributeType + operator: RuleOperatorType + values: List[str] + +class DeviceFilterTypeDef(BaseModel): + attribute: DeviceFilterAttributeType + operator: RuleOperatorType + values: Sequence[str] + +class DeviceMinutesTypeDef(BaseModel): + total: Optional[float] = None + metered: Optional[float] = None + unmetered: Optional[float] = None + +class IncompatibilityMessageTypeDef(BaseModel): + message: Optional[str] = None + type: Optional[DeviceAttributeType] = None + +class ResolutionTypeDef(BaseModel): + width: Optional[int] = None + height: Optional[int] = None + +class ExecutionConfigurationTypeDef(BaseModel): + jobTimeoutMinutes: Optional[int] = None + accountsCleanup: Optional[bool] = None + appPackagesCleanup: Optional[bool] = None + videoCapture: Optional[bool] = None + skipAppResign: Optional[bool] = None + +class GetDeviceInstanceRequestRequestTypeDef(BaseModel): + arn: str + +class ScheduleRunTestTypeDef(BaseModel): + type: TestTypeType + testPackageArn: Optional[str] = None + testSpecArn: Optional[str] = None + filter: Optional[str] = None + parameters: Optional[Mapping[str, str]] = None + +class GetDevicePoolRequestRequestTypeDef(BaseModel): + arn: str + +class GetDeviceRequestRequestTypeDef(BaseModel): + arn: str + +class GetInstanceProfileRequestRequestTypeDef(BaseModel): + arn: str + +class GetJobRequestRequestTypeDef(BaseModel): + arn: str + +class GetNetworkProfileRequestRequestTypeDef(BaseModel): + arn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetOfferingStatusRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class GetProjectRequestRequestTypeDef(BaseModel): + arn: str + +class GetRemoteAccessSessionRequestRequestTypeDef(BaseModel): + arn: str + +class GetRunRequestRequestTypeDef(BaseModel): + arn: str + +class GetSuiteRequestRequestTypeDef(BaseModel): + arn: str + +class GetTestGridProjectRequestRequestTypeDef(BaseModel): + projectArn: str + +class GetTestGridSessionRequestRequestTypeDef(BaseModel): + projectArn: Optional[str] = None + sessionId: Optional[str] = None + sessionArn: Optional[str] = None + +class TestGridSessionTypeDef(BaseModel): + arn: Optional[str] = None + status: Optional[TestGridSessionStatusType] = None + created: Optional[datetime] = None + ended: Optional[datetime] = None + billingMinutes: Optional[float] = None + seleniumProperties: Optional[str] = None + +class GetTestRequestRequestTypeDef(BaseModel): + arn: str + +class GetUploadRequestRequestTypeDef(BaseModel): + arn: str + +class GetVPCEConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class InstallToRemoteAccessSessionRequestRequestTypeDef(BaseModel): + remoteAccessSessionArn: str + appArn: str + +class ListArtifactsRequestRequestTypeDef(BaseModel): + arn: str + type: ArtifactCategoryType + nextToken: Optional[str] = None + +class ListDeviceInstancesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDevicePoolsRequestRequestTypeDef(BaseModel): + arn: str + type: Optional[DevicePoolTypeType] = None + nextToken: Optional[str] = None + +class ListInstanceProfilesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class ListNetworkProfilesRequestRequestTypeDef(BaseModel): + arn: str + type: Optional[NetworkProfileTypeType] = None + nextToken: Optional[str] = None + +class ListOfferingPromotionsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class OfferingPromotionTypeDef(BaseModel): + id: Optional[str] = None + description: Optional[str] = None + +class ListOfferingTransactionsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListOfferingsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + arn: Optional[str] = None + nextToken: Optional[str] = None + +class ListRemoteAccessSessionsRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class ListRunsRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class ListSamplesRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class SampleTypeDef(BaseModel): + arn: Optional[str] = None + type: Optional[SampleTypeType] = None + url: Optional[str] = None + +class ListSuitesRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ListTestGridProjectsRequestRequestTypeDef(BaseModel): + maxResult: Optional[int] = None + nextToken: Optional[str] = None + +class ListTestGridSessionActionsRequestRequestTypeDef(BaseModel): + sessionArn: str + maxResult: Optional[int] = None + nextToken: Optional[str] = None + +class TestGridSessionActionTypeDef(BaseModel): + action: Optional[str] = None + started: Optional[datetime] = None + duration: Optional[int] = None + statusCode: Optional[str] = None + requestMethod: Optional[str] = None + +class ListTestGridSessionArtifactsRequestRequestTypeDef(BaseModel): + sessionArn: str + type: Optional[TestGridSessionArtifactCategoryType] = None + maxResult: Optional[int] = None + nextToken: Optional[str] = None + +class TestGridSessionArtifactTypeDef(BaseModel): + filename: Optional[str] = None + type: Optional[TestGridSessionArtifactTypeType] = None + url: Optional[str] = None + +class ListTestsRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class ListUniqueProblemsRequestRequestTypeDef(BaseModel): + arn: str + nextToken: Optional[str] = None + +class ListUploadsRequestRequestTypeDef(BaseModel): + arn: str + type: Optional[UploadTypeType] = None + nextToken: Optional[str] = None + +class ListVPCEConfigurationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class LocationTypeDef(BaseModel): + latitude: float + longitude: float + +class MonetaryAmountTypeDef(BaseModel): + amount: Optional[float] = None + currencyCode: Optional[Literal["USD"]] = None + +class ProblemDetailTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + +class VpcConfigOutputTypeDef(BaseModel): + securityGroupIds: List[str] + subnetIds: List[str] + vpcId: str + +class PurchaseOfferingRequestRequestTypeDef(BaseModel): + offeringId: str + quantity: int + offeringPromotionId: Optional[str] = None + +class RadiosTypeDef(BaseModel): + wifi: Optional[bool] = None + bluetooth: Optional[bool] = None + nfc: Optional[bool] = None + gps: Optional[bool] = None + +class RenewOfferingRequestRequestTypeDef(BaseModel): + offeringId: str + quantity: int + +class StopJobRequestRequestTypeDef(BaseModel): + arn: str + +class StopRemoteAccessSessionRequestRequestTypeDef(BaseModel): + arn: str + +class StopRunRequestRequestTypeDef(BaseModel): + arn: str + +class TestGridVpcConfigOutputTypeDef(BaseModel): + securityGroupIds: List[str] + subnetIds: List[str] + vpcId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateDeviceInstanceRequestRequestTypeDef(BaseModel): + arn: str + profileArn: Optional[str] = None + labels: Optional[Sequence[str]] = None + +class UpdateInstanceProfileRequestRequestTypeDef(BaseModel): + arn: str + name: Optional[str] = None + description: Optional[str] = None + packageCleanup: Optional[bool] = None + excludeAppPackagesFromCleanup: Optional[Sequence[str]] = None + rebootAfterUse: Optional[bool] = None + +class UpdateNetworkProfileRequestRequestTypeDef(BaseModel): + arn: str + name: Optional[str] = None + description: Optional[str] = None + type: Optional[NetworkProfileTypeType] = None + uplinkBandwidthBits: Optional[int] = None + downlinkBandwidthBits: Optional[int] = None + uplinkDelayMs: Optional[int] = None + downlinkDelayMs: Optional[int] = None + uplinkJitterMs: Optional[int] = None + downlinkJitterMs: Optional[int] = None + uplinkLossPercent: Optional[int] = None + downlinkLossPercent: Optional[int] = None + +class UpdateUploadRequestRequestTypeDef(BaseModel): + arn: str + name: Optional[str] = None + contentType: Optional[str] = None + editContent: Optional[bool] = None + +class UpdateVPCEConfigurationRequestRequestTypeDef(BaseModel): + arn: str + vpceConfigurationName: Optional[str] = None + vpceServiceName: Optional[str] = None + serviceDnsName: Optional[str] = None + vpceConfigurationDescription: Optional[str] = None + +class VpcConfigExtraOutputTypeDef(BaseModel): + securityGroupIds: List[str] + subnetIds: List[str] + vpcId: str + +class AccountSettingsTypeDef(BaseModel): + awsAccountNumber: Optional[str] = None + unmeteredDevices: Optional[Dict[DevicePlatformType, int]] = None + unmeteredRemoteAccessDevices: Optional[Dict[DevicePlatformType, int]] = None + maxJobTimeoutMinutes: Optional[int] = None + trialMinutes: Optional[TrialMinutesTypeDef] = None + maxSlots: Optional[Dict[str, int]] = None + defaultJobTimeoutMinutes: Optional[int] = None + skipAppResign: Optional[bool] = None + +class CreateDevicePoolRequestRequestTypeDef(BaseModel): + projectArn: str + name: str + rules: Sequence[RuleTypeDef] + description: Optional[str] = None + maxDevices: Optional[int] = None + +class DevicePoolTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + type: Optional[DevicePoolTypeType] = None + rules: Optional[List[RuleTypeDef]] = None + maxDevices: Optional[int] = None + +class UpdateDevicePoolRequestRequestTypeDef(BaseModel): + arn: str + name: Optional[str] = None + description: Optional[str] = None + rules: Optional[Sequence[RuleTypeDef]] = None + maxDevices: Optional[int] = None + clearMaxDevices: Optional[bool] = None + +class CreateTestGridUrlResultTypeDef(BaseModel): + url: str + expires: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListArtifactsResultTypeDef(BaseModel): + artifacts: List[ArtifactTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceProfileResultTypeDef(BaseModel): + instanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeviceInstanceTypeDef(BaseModel): + arn: Optional[str] = None + deviceArn: Optional[str] = None + labels: Optional[List[str]] = None + status: Optional[InstanceStatusType] = None + udid: Optional[str] = None + instanceProfile: Optional[InstanceProfileTypeDef] = None + +class GetInstanceProfileResultTypeDef(BaseModel): + instanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceProfilesResultTypeDef(BaseModel): + instanceProfiles: List[InstanceProfileTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInstanceProfileResultTypeDef(BaseModel): + instanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkProfileResultTypeDef(BaseModel): + networkProfile: NetworkProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkProfileResultTypeDef(BaseModel): + networkProfile: NetworkProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListNetworkProfilesResultTypeDef(BaseModel): + networkProfiles: List[NetworkProfileTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNetworkProfileResultTypeDef(BaseModel): + networkProfile: NetworkProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectRequestRequestTypeDef(BaseModel): + name: str + defaultJobTimeoutMinutes: Optional[int] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + +class UpdateProjectRequestRequestTypeDef(BaseModel): + arn: str + name: Optional[str] = None + defaultJobTimeoutMinutes: Optional[int] = None + vpcConfig: Optional[VpcConfigTypeDef] = None + +class CreateRemoteAccessSessionRequestRequestTypeDef(BaseModel): + projectArn: str + deviceArn: str + instanceArn: Optional[str] = None + sshPublicKey: Optional[str] = None + remoteDebugEnabled: Optional[bool] = None + remoteRecordEnabled: Optional[bool] = None + remoteRecordAppArn: Optional[str] = None + name: Optional[str] = None + clientId: Optional[str] = None + configuration: Optional[CreateRemoteAccessSessionConfigurationTypeDef] = None + interactionMode: Optional[InteractionModeType] = None + skipAppResign: Optional[bool] = None + +class CreateTestGridProjectRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + vpcConfig: Optional[TestGridVpcConfigTypeDef] = None + +class UpdateTestGridProjectRequestRequestTypeDef(BaseModel): + projectArn: str + name: Optional[str] = None + description: Optional[str] = None + vpcConfig: Optional[TestGridVpcConfigTypeDef] = None + +class CreateUploadResultTypeDef(BaseModel): + upload: UploadTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUploadResultTypeDef(BaseModel): + upload: UploadTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InstallToRemoteAccessSessionResultTypeDef(BaseModel): + appUpload: UploadTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUploadsResultTypeDef(BaseModel): + uploads: List[UploadTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUploadResultTypeDef(BaseModel): + upload: UploadTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVPCEConfigurationResultTypeDef(BaseModel): + vpceConfiguration: VPCEConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVPCEConfigurationResultTypeDef(BaseModel): + vpceConfiguration: VPCEConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVPCEConfigurationsResultTypeDef(BaseModel): + vpceConfigurations: List[VPCEConfigurationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVPCEConfigurationResultTypeDef(BaseModel): + vpceConfiguration: VPCEConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeviceSelectionResultTypeDef(BaseModel): + filters: Optional[List[DeviceFilterOutputTypeDef]] = None + matchedDevicesCount: Optional[int] = None + maxDevices: Optional[int] = None + +class DeviceSelectionConfigurationTypeDef(BaseModel): + filters: Sequence[DeviceFilterTypeDef] + maxDevices: int + +class SuiteTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[TestTypeType] = None + created: Optional[datetime] = None + status: Optional[ExecutionStatusType] = None + result: Optional[ExecutionResultType] = None + started: Optional[datetime] = None + stopped: Optional[datetime] = None + counters: Optional[CountersTypeDef] = None + message: Optional[str] = None + deviceMinutes: Optional[DeviceMinutesTypeDef] = None + +class TestTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[TestTypeType] = None + created: Optional[datetime] = None + status: Optional[ExecutionStatusType] = None + result: Optional[ExecutionResultType] = None + started: Optional[datetime] = None + stopped: Optional[datetime] = None + counters: Optional[CountersTypeDef] = None + message: Optional[str] = None + deviceMinutes: Optional[DeviceMinutesTypeDef] = None + +class GetOfferingStatusRequestGetOfferingStatusPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListArtifactsRequestListArtifactsPaginateTypeDef(BaseModel): + arn: str + type: ArtifactCategoryType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceInstancesRequestListDeviceInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevicePoolsRequestListDevicePoolsPaginateTypeDef(BaseModel): + arn: str + type: Optional[DevicePoolTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNetworkProfilesRequestListNetworkProfilesPaginateTypeDef(BaseModel): + arn: str + type: Optional[NetworkProfileTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOfferingPromotionsRequestListOfferingPromotionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOfferingTransactionsRequestListOfferingTransactionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOfferingsRequestListOfferingsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + arn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRemoteAccessSessionsRequestListRemoteAccessSessionsPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRunsRequestListRunsPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSamplesRequestListSamplesPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSuitesRequestListSuitesPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTestsRequestListTestsPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUniqueProblemsRequestListUniqueProblemsPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUploadsRequestListUploadsPaginateTypeDef(BaseModel): + arn: str + type: Optional[UploadTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVPCEConfigurationsRequestListVPCEConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTestGridSessionResultTypeDef(BaseModel): + testGridSession: TestGridSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestGridSessionsResultTypeDef(BaseModel): + testGridSessions: List[TestGridSessionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOfferingPromotionsResultTypeDef(BaseModel): + offeringPromotions: List[OfferingPromotionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSamplesResultTypeDef(BaseModel): + samples: List[SampleTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class ListTestGridSessionActionsResultTypeDef(BaseModel): + actions: List[TestGridSessionActionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestGridSessionArtifactsResultTypeDef(BaseModel): + artifacts: List[TestGridSessionArtifactTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestGridSessionsRequestRequestTypeDef(BaseModel): + projectArn: str + status: Optional[TestGridSessionStatusType] = None + creationTimeAfter: Optional[TimestampTypeDef] = None + creationTimeBefore: Optional[TimestampTypeDef] = None + endTimeAfter: Optional[TimestampTypeDef] = None + endTimeBefore: Optional[TimestampTypeDef] = None + maxResult: Optional[int] = None + nextToken: Optional[str] = None + +class RecurringChargeTypeDef(BaseModel): + cost: Optional[MonetaryAmountTypeDef] = None + frequency: Optional[Literal["MONTHLY"]] = None + +class ProjectTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + defaultJobTimeoutMinutes: Optional[int] = None + created: Optional[datetime] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class ScheduleRunConfigurationTypeDef(BaseModel): + extraDataPackageArn: Optional[str] = None + networkProfileArn: Optional[str] = None + locale: Optional[str] = None + location: Optional[LocationTypeDef] = None + vpceConfigurationArns: Optional[Sequence[str]] = None + customerArtifactPaths: Optional[CustomerArtifactPathsTypeDef] = None + radios: Optional[RadiosTypeDef] = None + auxiliaryApps: Optional[Sequence[str]] = None + billingMethod: Optional[BillingMethodType] = None + +class TestGridProjectTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + vpcConfig: Optional[TestGridVpcConfigOutputTypeDef] = None + created: Optional[datetime] = None + +class GetAccountSettingsResultTypeDef(BaseModel): + accountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDevicePoolResultTypeDef(BaseModel): + devicePool: DevicePoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevicePoolResultTypeDef(BaseModel): + devicePool: DevicePoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicePoolsResultTypeDef(BaseModel): + devicePools: List[DevicePoolTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDevicePoolResultTypeDef(BaseModel): + devicePool: DevicePoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeviceTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + manufacturer: Optional[str] = None + model: Optional[str] = None + modelId: Optional[str] = None + formFactor: Optional[DeviceFormFactorType] = None + platform: Optional[DevicePlatformType] = None + os: Optional[str] = None + cpu: Optional[CPUTypeDef] = None + resolution: Optional[ResolutionTypeDef] = None + heapSize: Optional[int] = None + memory: Optional[int] = None + image: Optional[str] = None + carrier: Optional[str] = None + radio: Optional[str] = None + remoteAccessEnabled: Optional[bool] = None + remoteDebugEnabled: Optional[bool] = None + fleetType: Optional[str] = None + fleetName: Optional[str] = None + instances: Optional[List[DeviceInstanceTypeDef]] = None + availability: Optional[DeviceAvailabilityType] = None + +class GetDeviceInstanceResultTypeDef(BaseModel): + deviceInstance: DeviceInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeviceInstancesResultTypeDef(BaseModel): + deviceInstances: List[DeviceInstanceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDeviceInstanceResultTypeDef(BaseModel): + deviceInstance: DeviceInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RunTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[TestTypeType] = None + platform: Optional[DevicePlatformType] = None + created: Optional[datetime] = None + status: Optional[ExecutionStatusType] = None + result: Optional[ExecutionResultType] = None + started: Optional[datetime] = None + stopped: Optional[datetime] = None + counters: Optional[CountersTypeDef] = None + message: Optional[str] = None + totalJobs: Optional[int] = None + completedJobs: Optional[int] = None + billingMethod: Optional[BillingMethodType] = None + deviceMinutes: Optional[DeviceMinutesTypeDef] = None + networkProfile: Optional[NetworkProfileTypeDef] = None + parsingResultUrl: Optional[str] = None + resultCode: Optional[ExecutionResultCodeType] = None + seed: Optional[int] = None + appUpload: Optional[str] = None + eventCount: Optional[int] = None + jobTimeoutMinutes: Optional[int] = None + devicePoolArn: Optional[str] = None + locale: Optional[str] = None + radios: Optional[RadiosTypeDef] = None + location: Optional[LocationTypeDef] = None + customerArtifactPaths: Optional[CustomerArtifactPathsOutputTypeDef] = None + webUrl: Optional[str] = None + skipAppResign: Optional[bool] = None + testSpecArn: Optional[str] = None + deviceSelectionResult: Optional[DeviceSelectionResultTypeDef] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class ListDevicesRequestListDevicesPaginateTypeDef(BaseModel): + arn: Optional[str] = None + filters: Optional[Sequence[DeviceFilterUnionTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevicesRequestRequestTypeDef(BaseModel): + arn: Optional[str] = None + nextToken: Optional[str] = None + filters: Optional[Sequence[DeviceFilterUnionTypeDef]] = None + +class GetSuiteResultTypeDef(BaseModel): + suite: SuiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSuitesResultTypeDef(BaseModel): + suites: List[SuiteTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTestResultTypeDef(BaseModel): + test: TestTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestsResultTypeDef(BaseModel): + tests: List[TestTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OfferingTypeDef(BaseModel): + id: Optional[str] = None + description: Optional[str] = None + type: Optional[Literal["RECURRING"]] = None + platform: Optional[DevicePlatformType] = None + recurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class CreateProjectResultTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProjectResultTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsResultTypeDef(BaseModel): + projects: List[ProjectTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectResultTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevicePoolCompatibilityRequestRequestTypeDef(BaseModel): + devicePoolArn: str + appArn: Optional[str] = None + testType: Optional[TestTypeType] = None + test: Optional[ScheduleRunTestTypeDef] = None + configuration: Optional[ScheduleRunConfigurationTypeDef] = None + +class ScheduleRunRequestRequestTypeDef(BaseModel): + projectArn: str + test: ScheduleRunTestTypeDef + appArn: Optional[str] = None + devicePoolArn: Optional[str] = None + deviceSelectionConfiguration: Optional[DeviceSelectionConfigurationTypeDef] = None + name: Optional[str] = None + configuration: Optional[ScheduleRunConfigurationTypeDef] = None + executionConfiguration: Optional[ExecutionConfigurationTypeDef] = None + +class CreateTestGridProjectResultTypeDef(BaseModel): + testGridProject: TestGridProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTestGridProjectResultTypeDef(BaseModel): + testGridProject: TestGridProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestGridProjectsResultTypeDef(BaseModel): + testGridProjects: List[TestGridProjectTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTestGridProjectResultTypeDef(BaseModel): + testGridProject: TestGridProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DevicePoolCompatibilityResultTypeDef(BaseModel): + device: Optional[DeviceTypeDef] = None + compatible: Optional[bool] = None + incompatibilityMessages: Optional[List[IncompatibilityMessageTypeDef]] = None + +class GetDeviceResultTypeDef(BaseModel): + device: DeviceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JobTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[TestTypeType] = None + created: Optional[datetime] = None + status: Optional[ExecutionStatusType] = None + result: Optional[ExecutionResultType] = None + started: Optional[datetime] = None + stopped: Optional[datetime] = None + counters: Optional[CountersTypeDef] = None + message: Optional[str] = None + device: Optional[DeviceTypeDef] = None + instanceArn: Optional[str] = None + deviceMinutes: Optional[DeviceMinutesTypeDef] = None + videoEndpoint: Optional[str] = None + videoCapture: Optional[bool] = None + +class ListDevicesResultTypeDef(BaseModel): + devices: List[DeviceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProblemTypeDef(BaseModel): + run: Optional[ProblemDetailTypeDef] = None + job: Optional[ProblemDetailTypeDef] = None + suite: Optional[ProblemDetailTypeDef] = None + test: Optional[ProblemDetailTypeDef] = None + device: Optional[DeviceTypeDef] = None + result: Optional[ExecutionResultType] = None + message: Optional[str] = None + +class RemoteAccessSessionTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + created: Optional[datetime] = None + status: Optional[ExecutionStatusType] = None + result: Optional[ExecutionResultType] = None + message: Optional[str] = None + started: Optional[datetime] = None + stopped: Optional[datetime] = None + device: Optional[DeviceTypeDef] = None + instanceArn: Optional[str] = None + remoteDebugEnabled: Optional[bool] = None + remoteRecordEnabled: Optional[bool] = None + remoteRecordAppArn: Optional[str] = None + hostAddress: Optional[str] = None + clientId: Optional[str] = None + billingMethod: Optional[BillingMethodType] = None + deviceMinutes: Optional[DeviceMinutesTypeDef] = None + endpoint: Optional[str] = None + deviceUdid: Optional[str] = None + interactionMode: Optional[InteractionModeType] = None + skipAppResign: Optional[bool] = None + vpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class GetRunResultTypeDef(BaseModel): + run: RunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRunsResultTypeDef(BaseModel): + runs: List[RunTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduleRunResultTypeDef(BaseModel): + run: RunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopRunResultTypeDef(BaseModel): + run: RunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOfferingsResultTypeDef(BaseModel): + offerings: List[OfferingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OfferingStatusTypeDef(BaseModel): + type: Optional[OfferingTransactionTypeType] = None + offering: Optional[OfferingTypeDef] = None + quantity: Optional[int] = None + effectiveOn: Optional[datetime] = None + +class GetDevicePoolCompatibilityResultTypeDef(BaseModel): + compatibleDevices: List[DevicePoolCompatibilityResultTypeDef] + incompatibleDevices: List[DevicePoolCompatibilityResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobResultTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsResultTypeDef(BaseModel): + jobs: List[JobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopJobResultTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UniqueProblemTypeDef(BaseModel): + message: Optional[str] = None + problems: Optional[List[ProblemTypeDef]] = None + +class CreateRemoteAccessSessionResultTypeDef(BaseModel): + remoteAccessSession: RemoteAccessSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRemoteAccessSessionResultTypeDef(BaseModel): + remoteAccessSession: RemoteAccessSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRemoteAccessSessionsResultTypeDef(BaseModel): + remoteAccessSessions: List[RemoteAccessSessionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopRemoteAccessSessionResultTypeDef(BaseModel): + remoteAccessSession: RemoteAccessSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOfferingStatusResultTypeDef(BaseModel): + current: Dict[str, OfferingStatusTypeDef] + nextPeriod: Dict[str, OfferingStatusTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OfferingTransactionTypeDef(BaseModel): + offeringStatus: Optional[OfferingStatusTypeDef] = None + transactionId: Optional[str] = None + offeringPromotionId: Optional[str] = None + createdOn: Optional[datetime] = None + cost: Optional[MonetaryAmountTypeDef] = None + +class ListUniqueProblemsResultTypeDef(BaseModel): + uniqueProblems: Dict[ExecutionResultType, List[UniqueProblemTypeDef]] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOfferingTransactionsResultTypeDef(BaseModel): + offeringTransactions: List[OfferingTransactionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseOfferingResultTypeDef(BaseModel): + offeringTransaction: OfferingTransactionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RenewOfferingResultTypeDef(BaseModel): + offeringTransaction: OfferingTransactionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/devicefarm_constants.py b/aws_resource_validator/pydantic_models/devicefarm_constants.py new file mode 100644 index 00000000..a5b3e7d7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/devicefarm_constants.py @@ -0,0 +1,605 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ArtifactCategoryType = Literal["FILE", "LOG", "SCREENSHOT"] +ArtifactTypeType = Literal["APPIUM_JAVA_OUTPUT", + "APPIUM_JAVA_XML_OUTPUT", + "APPIUM_PYTHON_OUTPUT", + "APPIUM_PYTHON_XML_OUTPUT", + "APPIUM_SERVER_OUTPUT", + "APPLICATION_CRASH_REPORT", + "AUTOMATION_OUTPUT", + "CALABASH_JAVA_XML_OUTPUT", + "CALABASH_JSON_OUTPUT", + "CALABASH_PRETTY_OUTPUT", + "CALABASH_STANDARD_OUTPUT", + "CUSTOMER_ARTIFACT", + "CUSTOMER_ARTIFACT_LOG", + "DEVICE_LOG", + "EXERCISER_MONKEY_OUTPUT", + "EXPLORER_EVENT_LOG", + "EXPLORER_SUMMARY_LOG", + "INSTRUMENTATION_OUTPUT", + "MESSAGE_LOG", + "RESULT_LOG", + "SCREENSHOT", + "SERVICE_LOG", + "TESTSPEC_OUTPUT", + "UNKNOWN", + "VIDEO", + "VIDEO_LOG", + "WEBKIT_LOG", + "XCTEST_LOG",] +BillingMethodType = Literal["METERED", "UNMETERED"] +CurrencyCodeType = Literal["USD"] +DeviceAttributeType = Literal["APPIUM_VERSION", + "ARN", + "AVAILABILITY", + "FLEET_TYPE", + "FORM_FACTOR", + "INSTANCE_ARN", + "INSTANCE_LABELS", + "MANUFACTURER", + "MODEL", + "OS_VERSION", + "PLATFORM", + "REMOTE_ACCESS_ENABLED", + "REMOTE_DEBUG_ENABLED",] +DeviceAvailabilityType = Literal["AVAILABLE", "BUSY", "HIGHLY_AVAILABLE", "TEMPORARY_NOT_AVAILABLE"] +DeviceFilterAttributeType = Literal["ARN", + "AVAILABILITY", + "FLEET_TYPE", + "FORM_FACTOR", + "INSTANCE_ARN", + "INSTANCE_LABELS", + "MANUFACTURER", + "MODEL", + "OS_VERSION", + "PLATFORM", + "REMOTE_ACCESS_ENABLED", + "REMOTE_DEBUG_ENABLED",] +DeviceFormFactorType = Literal["PHONE", "TABLET"] +DevicePlatformType = Literal["ANDROID", "IOS"] +DevicePoolTypeType = Literal["CURATED", "PRIVATE"] +ExecutionResultCodeType = Literal["PARSING_FAILED", "VPC_ENDPOINT_SETUP_FAILED"] +ExecutionResultType = Literal["ERRORED", "FAILED", "PASSED", "PENDING", "SKIPPED", "STOPPED", "WARNED"] +ExecutionStatusType = Literal["COMPLETED", + "PENDING", + "PENDING_CONCURRENCY", + "PENDING_DEVICE", + "PREPARING", + "PROCESSING", + "RUNNING", + "SCHEDULING", + "STOPPING",] +GetOfferingStatusPaginatorName = Literal["get_offering_status"] +InstanceStatusType = Literal["AVAILABLE", "IN_USE", "NOT_AVAILABLE", "PREPARING"] +InteractionModeType = Literal["INTERACTIVE", "NO_VIDEO", "VIDEO_ONLY"] +ListArtifactsPaginatorName = Literal["list_artifacts"] +ListDeviceInstancesPaginatorName = Literal["list_device_instances"] +ListDevicePoolsPaginatorName = Literal["list_device_pools"] +ListDevicesPaginatorName = Literal["list_devices"] +ListInstanceProfilesPaginatorName = Literal["list_instance_profiles"] +ListJobsPaginatorName = Literal["list_jobs"] +ListNetworkProfilesPaginatorName = Literal["list_network_profiles"] +ListOfferingPromotionsPaginatorName = Literal["list_offering_promotions"] +ListOfferingTransactionsPaginatorName = Literal["list_offering_transactions"] +ListOfferingsPaginatorName = Literal["list_offerings"] +ListProjectsPaginatorName = Literal["list_projects"] +ListRemoteAccessSessionsPaginatorName = Literal["list_remote_access_sessions"] +ListRunsPaginatorName = Literal["list_runs"] +ListSamplesPaginatorName = Literal["list_samples"] +ListSuitesPaginatorName = Literal["list_suites"] +ListTestsPaginatorName = Literal["list_tests"] +ListUniqueProblemsPaginatorName = Literal["list_unique_problems"] +ListUploadsPaginatorName = Literal["list_uploads"] +ListVPCEConfigurationsPaginatorName = Literal["list_vpce_configurations"] +NetworkProfileTypeType = Literal["CURATED", "PRIVATE"] +OfferingTransactionTypeType = Literal["PURCHASE", "RENEW", "SYSTEM"] +OfferingTypeType = Literal["RECURRING"] +RecurringChargeFrequencyType = Literal["MONTHLY"] +RuleOperatorType = Literal["CONTAINS", + "EQUALS", + "GREATER_THAN", + "GREATER_THAN_OR_EQUALS", + "IN", + "LESS_THAN", + "LESS_THAN_OR_EQUALS", + "NOT_IN",] +SampleTypeType = Literal["CPU", + "MEMORY", + "NATIVE_AVG_DRAWTIME", + "NATIVE_FPS", + "NATIVE_FRAMES", + "NATIVE_MAX_DRAWTIME", + "NATIVE_MIN_DRAWTIME", + "OPENGL_AVG_DRAWTIME", + "OPENGL_FPS", + "OPENGL_FRAMES", + "OPENGL_MAX_DRAWTIME", + "OPENGL_MIN_DRAWTIME", + "RX", + "RX_RATE", + "THREADS", + "TX", + "TX_RATE",] +TestGridSessionArtifactCategoryType = Literal["LOG", "VIDEO"] +TestGridSessionArtifactTypeType = Literal["SELENIUM_LOG", "UNKNOWN", "VIDEO"] +TestGridSessionStatusType = Literal["ACTIVE", "CLOSED", "ERRORED"] +TestTypeType = Literal["APPIUM_JAVA_JUNIT", + "APPIUM_JAVA_TESTNG", + "APPIUM_NODE", + "APPIUM_PYTHON", + "APPIUM_RUBY", + "APPIUM_WEB_JAVA_JUNIT", + "APPIUM_WEB_JAVA_TESTNG", + "APPIUM_WEB_NODE", + "APPIUM_WEB_PYTHON", + "APPIUM_WEB_RUBY", + "BUILTIN_EXPLORER", + "BUILTIN_FUZZ", + "CALABASH", + "INSTRUMENTATION", + "REMOTE_ACCESS_RECORD", + "REMOTE_ACCESS_REPLAY", + "UIAUTOMATION", + "UIAUTOMATOR", + "WEB_PERFORMANCE_PROFILE", + "XCTEST", + "XCTEST_UI",] +UploadCategoryType = Literal["CURATED", "PRIVATE"] +UploadStatusType = Literal["FAILED", "INITIALIZED", "PROCESSING", "SUCCEEDED"] +UploadTypeType = Literal["ANDROID_APP", + "APPIUM_JAVA_JUNIT_TEST_PACKAGE", + "APPIUM_JAVA_JUNIT_TEST_SPEC", + "APPIUM_JAVA_TESTNG_TEST_PACKAGE", + "APPIUM_JAVA_TESTNG_TEST_SPEC", + "APPIUM_NODE_TEST_PACKAGE", + "APPIUM_NODE_TEST_SPEC", + "APPIUM_PYTHON_TEST_PACKAGE", + "APPIUM_PYTHON_TEST_SPEC", + "APPIUM_RUBY_TEST_PACKAGE", + "APPIUM_RUBY_TEST_SPEC", + "APPIUM_WEB_JAVA_JUNIT_TEST_PACKAGE", + "APPIUM_WEB_JAVA_JUNIT_TEST_SPEC", + "APPIUM_WEB_JAVA_TESTNG_TEST_PACKAGE", + "APPIUM_WEB_JAVA_TESTNG_TEST_SPEC", + "APPIUM_WEB_NODE_TEST_PACKAGE", + "APPIUM_WEB_NODE_TEST_SPEC", + "APPIUM_WEB_PYTHON_TEST_PACKAGE", + "APPIUM_WEB_PYTHON_TEST_SPEC", + "APPIUM_WEB_RUBY_TEST_PACKAGE", + "APPIUM_WEB_RUBY_TEST_SPEC", + "CALABASH_TEST_PACKAGE", + "EXTERNAL_DATA", + "INSTRUMENTATION_TEST_PACKAGE", + "INSTRUMENTATION_TEST_SPEC", + "IOS_APP", + "UIAUTOMATION_TEST_PACKAGE", + "UIAUTOMATOR_TEST_PACKAGE", + "WEB_APP", + "XCTEST_TEST_PACKAGE", + "XCTEST_UI_TEST_PACKAGE", + "XCTEST_UI_TEST_SPEC",] +DeviceFarmServiceName = Literal["devicefarm"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_offering_status", + "list_artifacts", + "list_device_instances", + "list_device_pools", + "list_devices", + "list_instance_profiles", + "list_jobs", + "list_network_profiles", + "list_offering_promotions", + "list_offering_transactions", + "list_offerings", + "list_projects", + "list_remote_access_sessions", + "list_runs", + "list_samples", + "list_suites", + "list_tests", + "list_unique_problems", + "list_uploads", + "list_vpce_configurations",] +RegionName = Literal["us-west-2"] +TimestampTypeDef = Union[datetime, str] +DeviceFilterUnionTypeDef = Union['DeviceFilterTypeDef', 'DeviceFilterExtraOutputTypeDef'] +TestGridVpcConfigUnionTypeDef = Union['TestGridVpcConfigTypeDef', 'TestGridVpcConfigOutputTypeDef'] +VpcConfigUnionTypeDef = Union['VpcConfigTypeDef', 'VpcConfigExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/devops_guru_classes.py b/aws_resource_validator/pydantic_models/devops_guru_classes.py new file mode 100644 index 00000000..0522fbf6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/devops_guru_classes.py @@ -0,0 +1,868 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.devops_guru_constants import * + +class AccountInsightHealthTypeDef(BaseModel): + OpenProactiveInsights: Optional[int] = None + OpenReactiveInsights: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AmazonCodeGuruProfilerIntegrationTypeDef(BaseModel): + Status: Optional[EventSourceOptInStatusType] = None + +class AnomalyReportedTimeRangeTypeDef(BaseModel): + OpenTime: datetime + CloseTime: Optional[datetime] = None + +class AnomalyResourceTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + +class AnomalySourceMetadataTypeDef(BaseModel): + Source: Optional[str] = None + SourceResourceName: Optional[str] = None + SourceResourceType: Optional[str] = None + +class AnomalyTimeRangeTypeDef(BaseModel): + StartTime: datetime + EndTime: Optional[datetime] = None + +class CloudFormationCollectionFilterTypeDef(BaseModel): + StackNames: Optional[List[str]] = None + +class CloudFormationCollectionTypeDef(BaseModel): + StackNames: Optional[List[str]] = None + +class CloudFormationCostEstimationResourceCollectionFilterTypeDef(BaseModel): + StackNames: Optional[List[str]] = None + +class InsightHealthTypeDef(BaseModel): + OpenProactiveInsights: Optional[int] = None + OpenReactiveInsights: Optional[int] = None + MeanTimeToRecoverInMilliseconds: Optional[int] = None + +class TimestampMetricValuePairTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + MetricValue: Optional[float] = None + +class CloudWatchMetricsDimensionTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class TagCostEstimationResourceCollectionFilterTypeDef(BaseModel): + AppBoundaryKey: str + TagValues: List[str] + +class CostEstimationTimeRangeTypeDef(BaseModel): + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class DeleteInsightRequestRequestTypeDef(BaseModel): + Id: str + +class DescribeAnomalyRequestRequestTypeDef(BaseModel): + Id: str + AccountId: Optional[str] = None + +class DescribeFeedbackRequestRequestTypeDef(BaseModel): + InsightId: Optional[str] = None + +class InsightFeedbackTypeDef(BaseModel): + Id: Optional[str] = None + Feedback: Optional[InsightFeedbackOptionType] = None + +class DescribeInsightRequestRequestTypeDef(BaseModel): + Id: str + AccountId: Optional[str] = None + +class DescribeOrganizationHealthRequestRequestTypeDef(BaseModel): + AccountIds: Optional[Sequence[str]] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeOrganizationResourceCollectionHealthRequestRequestTypeDef(BaseModel): + OrganizationResourceCollectionType: OrganizationResourceCollectionTypeType + AccountIds: Optional[Sequence[str]] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeResourceCollectionHealthRequestRequestTypeDef(BaseModel): + ResourceCollectionType: ResourceCollectionTypeType + NextToken: Optional[str] = None + +class EventResourceTypeDef(BaseModel): + Type: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + +class GetCostEstimationRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ServiceResourceCostTypeDef(BaseModel): + Type: Optional[str] = None + State: Optional[CostEstimationServiceResourceStateType] = None + Count: Optional[int] = None + UnitCost: Optional[float] = None + Cost: Optional[float] = None + +class GetResourceCollectionRequestRequestTypeDef(BaseModel): + ResourceCollectionType: ResourceCollectionTypeType + NextToken: Optional[str] = None + +class InsightTimeRangeTypeDef(BaseModel): + StartTime: datetime + EndTime: Optional[datetime] = None + +class KMSServerSideEncryptionIntegrationConfigTypeDef(BaseModel): + KMSKeyId: Optional[str] = None + OptInStatus: Optional[OptInStatusType] = None + Type: Optional[ServerSideEncryptionTypeType] = None + +class KMSServerSideEncryptionIntegrationTypeDef(BaseModel): + KMSKeyId: Optional[str] = None + OptInStatus: Optional[OptInStatusType] = None + Type: Optional[ServerSideEncryptionTypeType] = None + +class ServiceCollectionTypeDef(BaseModel): + ServiceNames: Optional[Sequence[ServiceNameType]] = None + +class ListAnomalousLogGroupsRequestRequestTypeDef(BaseModel): + InsightId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInsightsOngoingStatusFilterTypeDef(BaseModel): + Type: InsightTypeType + +class ListMonitoredResourcesFiltersTypeDef(BaseModel): + ResourcePermission: ResourcePermissionType + ResourceTypeFilters: Sequence[ResourceTypeFilterType] + +class ListNotificationChannelsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListRecommendationsRequestRequestTypeDef(BaseModel): + InsightId: str + NextToken: Optional[str] = None + Locale: Optional[LocaleType] = None + AccountId: Optional[str] = None + +class LogAnomalyClassTypeDef(BaseModel): + LogStreamName: Optional[str] = None + LogAnomalyType: Optional[LogAnomalyTypeType] = None + LogAnomalyToken: Optional[str] = None + LogEventId: Optional[str] = None + Explanation: Optional[str] = None + NumberOfLogLinesOccurrences: Optional[int] = None + LogEventTimestamp: Optional[datetime] = None + +class LogsAnomalyDetectionIntegrationConfigTypeDef(BaseModel): + OptInStatus: Optional[OptInStatusType] = None + +class LogsAnomalyDetectionIntegrationTypeDef(BaseModel): + OptInStatus: Optional[OptInStatusType] = None + +class NotificationFilterConfigPaginatorTypeDef(BaseModel): + Severities: Optional[List[InsightSeverityType]] = None + MessageTypes: Optional[List[NotificationMessageTypeType]] = None + +class SnsChannelConfigTypeDef(BaseModel): + TopicArn: Optional[str] = None + +class NotificationFilterConfigTypeDef(BaseModel): + Severities: Optional[Sequence[InsightSeverityType]] = None + MessageTypes: Optional[Sequence[NotificationMessageTypeType]] = None + +class OpsCenterIntegrationConfigTypeDef(BaseModel): + OptInStatus: Optional[OptInStatusType] = None + +class OpsCenterIntegrationTypeDef(BaseModel): + OptInStatus: Optional[OptInStatusType] = None + +class PerformanceInsightsMetricDimensionGroupTypeDef(BaseModel): + Group: Optional[str] = None + Dimensions: Optional[List[str]] = None + Limit: Optional[int] = None + +class PerformanceInsightsStatTypeDef(BaseModel): + Type: Optional[str] = None + Value: Optional[float] = None + +class PerformanceInsightsReferenceScalarTypeDef(BaseModel): + Value: Optional[float] = None + +class PredictionTimeRangeTypeDef(BaseModel): + StartTime: datetime + EndTime: Optional[datetime] = None + +class RecommendationRelatedAnomalyResourceTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + +class RecommendationRelatedCloudWatchMetricsSourceDetailTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + +class RecommendationRelatedEventResourceTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + +class RemoveNotificationChannelRequestRequestTypeDef(BaseModel): + Id: str + +class TagCollectionFilterTypeDef(BaseModel): + AppBoundaryKey: str + TagValues: List[str] + +class TagCollectionTypeDef(BaseModel): + AppBoundaryKey: str + TagValues: List[str] + +class ServiceInsightHealthTypeDef(BaseModel): + OpenProactiveInsights: Optional[int] = None + OpenReactiveInsights: Optional[int] = None + +class UpdateCloudFormationCollectionFilterTypeDef(BaseModel): + StackNames: Optional[Sequence[str]] = None + +class UpdateTagCollectionFilterTypeDef(BaseModel): + AppBoundaryKey: str + TagValues: Sequence[str] + +class AccountHealthTypeDef(BaseModel): + AccountId: Optional[str] = None + Insight: Optional[AccountInsightHealthTypeDef] = None + +class AddNotificationChannelResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountHealthResponseTypeDef(BaseModel): + OpenReactiveInsights: int + OpenProactiveInsights: int + MetricsAnalyzed: int + ResourceHours: int + AnalyzedResourceCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountOverviewResponseTypeDef(BaseModel): + ReactiveInsights: int + ProactiveInsights: int + MeanTimeToRecoverInMilliseconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationHealthResponseTypeDef(BaseModel): + OpenReactiveInsights: int + OpenProactiveInsights: int + MetricsAnalyzed: int + ResourceHours: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationOverviewResponseTypeDef(BaseModel): + ReactiveInsights: int + ProactiveInsights: int + ResponseMetadata: ResponseMetadataTypeDef + +class EventSourcesConfigTypeDef(BaseModel): + AmazonCodeGuruProfiler: Optional[AmazonCodeGuruProfilerIntegrationTypeDef] = None + +class CloudFormationHealthTypeDef(BaseModel): + StackName: Optional[str] = None + Insight: Optional[InsightHealthTypeDef] = None + AnalyzedResourceCount: Optional[int] = None + +class TagHealthTypeDef(BaseModel): + AppBoundaryKey: Optional[str] = None + TagValue: Optional[str] = None + Insight: Optional[InsightHealthTypeDef] = None + AnalyzedResourceCount: Optional[int] = None + +class CloudWatchMetricsDataSummaryTypeDef(BaseModel): + TimestampMetricValuePairList: Optional[List[TimestampMetricValuePairTypeDef]] = None + StatusCode: Optional[CloudWatchMetricDataStatusCodeType] = None + +class CostEstimationResourceCollectionFilterTypeDef(BaseModel): + CloudFormation: Optional[CloudFormationCostEstimationResourceCollectionFilterTypeDef] = None + Tags: Optional[List[TagCostEstimationResourceCollectionFilterTypeDef]] = None + +class DescribeAccountOverviewRequestRequestTypeDef(BaseModel): + FromTime: TimestampTypeDef + ToTime: Optional[TimestampTypeDef] = None + +class DescribeOrganizationOverviewRequestRequestTypeDef(BaseModel): + FromTime: TimestampTypeDef + ToTime: Optional[TimestampTypeDef] = None + AccountIds: Optional[Sequence[str]] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + +class EndTimeRangeTypeDef(BaseModel): + FromTime: Optional[TimestampTypeDef] = None + ToTime: Optional[TimestampTypeDef] = None + +class EventTimeRangeTypeDef(BaseModel): + FromTime: TimestampTypeDef + ToTime: TimestampTypeDef + +class StartTimeRangeTypeDef(BaseModel): + FromTime: Optional[TimestampTypeDef] = None + ToTime: Optional[TimestampTypeDef] = None + +class DescribeFeedbackResponseTypeDef(BaseModel): + InsightFeedback: InsightFeedbackTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutFeedbackRequestRequestTypeDef(BaseModel): + InsightFeedback: Optional[InsightFeedbackTypeDef] = None + +class DescribeOrganizationResourceCollectionHealthRequestDescribeOrganizationResourceCollectionHealthPaginateTypeDef(BaseModel): + OrganizationResourceCollectionType: OrganizationResourceCollectionTypeType + AccountIds: Optional[Sequence[str]] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeResourceCollectionHealthRequestDescribeResourceCollectionHealthPaginateTypeDef(BaseModel): + ResourceCollectionType: ResourceCollectionTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCostEstimationRequestGetCostEstimationPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourceCollectionRequestGetResourceCollectionPaginateTypeDef(BaseModel): + ResourceCollectionType: ResourceCollectionTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnomalousLogGroupsRequestListAnomalousLogGroupsPaginateTypeDef(BaseModel): + InsightId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotificationChannelsRequestListNotificationChannelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationsRequestListRecommendationsPaginateTypeDef(BaseModel): + InsightId: str + Locale: Optional[LocaleType] = None + AccountId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnomaliesForInsightFiltersTypeDef(BaseModel): + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + +class ListMonitoredResourcesRequestListMonitoredResourcesPaginateTypeDef(BaseModel): + Filters: Optional[ListMonitoredResourcesFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitoredResourcesRequestRequestTypeDef(BaseModel): + Filters: Optional[ListMonitoredResourcesFiltersTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LogAnomalyShowcaseTypeDef(BaseModel): + LogAnomalyClasses: Optional[List[LogAnomalyClassTypeDef]] = None + +class NotificationChannelConfigPaginatorTypeDef(BaseModel): + Sns: SnsChannelConfigTypeDef + Filters: Optional[NotificationFilterConfigPaginatorTypeDef] = None + +class NotificationChannelConfigTypeDef(BaseModel): + Sns: SnsChannelConfigTypeDef + Filters: Optional[NotificationFilterConfigTypeDef] = None + +class UpdateServiceIntegrationConfigTypeDef(BaseModel): + OpsCenter: Optional[OpsCenterIntegrationConfigTypeDef] = None + LogsAnomalyDetection: Optional[LogsAnomalyDetectionIntegrationConfigTypeDef] = None + KMSServerSideEncryption: Optional[KMSServerSideEncryptionIntegrationConfigTypeDef] = None + +class ServiceIntegrationConfigTypeDef(BaseModel): + OpsCenter: Optional[OpsCenterIntegrationTypeDef] = None + LogsAnomalyDetection: Optional[LogsAnomalyDetectionIntegrationTypeDef] = None + KMSServerSideEncryption: Optional[KMSServerSideEncryptionIntegrationTypeDef] = None + +class PerformanceInsightsMetricQueryTypeDef(BaseModel): + Metric: Optional[str] = None + GroupBy: Optional[PerformanceInsightsMetricDimensionGroupTypeDef] = None + Filter: Optional[Dict[str, str]] = None + +class RecommendationRelatedAnomalySourceDetailTypeDef(BaseModel): + CloudWatchMetrics: Optional[ List[RecommendationRelatedCloudWatchMetricsSourceDetailTypeDef] ] = None + +class RecommendationRelatedEventTypeDef(BaseModel): + Name: Optional[str] = None + Resources: Optional[List[RecommendationRelatedEventResourceTypeDef]] = None + +class ResourceCollectionFilterTypeDef(BaseModel): + CloudFormation: Optional[CloudFormationCollectionFilterTypeDef] = None + Tags: Optional[List[TagCollectionFilterTypeDef]] = None + +class ResourceCollectionTypeDef(BaseModel): + CloudFormation: Optional[CloudFormationCollectionTypeDef] = None + Tags: Optional[List[TagCollectionTypeDef]] = None + +class ServiceHealthTypeDef(BaseModel): + ServiceName: Optional[ServiceNameType] = None + Insight: Optional[ServiceInsightHealthTypeDef] = None + AnalyzedResourceCount: Optional[int] = None + +class UpdateResourceCollectionFilterTypeDef(BaseModel): + CloudFormation: Optional[UpdateCloudFormationCollectionFilterTypeDef] = None + Tags: Optional[Sequence[UpdateTagCollectionFilterTypeDef]] = None + +class DescribeEventSourcesConfigResponseTypeDef(BaseModel): + EventSources: EventSourcesConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventSourcesConfigRequestRequestTypeDef(BaseModel): + EventSources: Optional[EventSourcesConfigTypeDef] = None + +class CloudWatchMetricsDetailTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Dimensions: Optional[List[CloudWatchMetricsDimensionTypeDef]] = None + Stat: Optional[CloudWatchMetricsStatType] = None + Unit: Optional[str] = None + Period: Optional[int] = None + MetricDataSummary: Optional[CloudWatchMetricsDataSummaryTypeDef] = None + +class GetCostEstimationResponseTypeDef(BaseModel): + ResourceCollection: CostEstimationResourceCollectionFilterTypeDef + Status: CostEstimationStatusType + Costs: List[ServiceResourceCostTypeDef] + TimeRange: CostEstimationTimeRangeTypeDef + TotalCost: float + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartCostEstimationRequestRequestTypeDef(BaseModel): + ResourceCollection: CostEstimationResourceCollectionFilterTypeDef + ClientToken: Optional[str] = None + +class ListInsightsClosedStatusFilterTypeDef(BaseModel): + Type: InsightTypeType + EndTimeRange: EndTimeRangeTypeDef + +class ListInsightsAnyStatusFilterTypeDef(BaseModel): + Type: InsightTypeType + StartTimeRange: StartTimeRangeTypeDef + +class ListAnomaliesForInsightRequestListAnomaliesForInsightPaginateTypeDef(BaseModel): + InsightId: str + StartTimeRange: Optional[StartTimeRangeTypeDef] = None + AccountId: Optional[str] = None + Filters: Optional[ListAnomaliesForInsightFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnomaliesForInsightRequestRequestTypeDef(BaseModel): + InsightId: str + StartTimeRange: Optional[StartTimeRangeTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + Filters: Optional[ListAnomaliesForInsightFiltersTypeDef] = None + +class AnomalousLogGroupTypeDef(BaseModel): + LogGroupName: Optional[str] = None + ImpactStartTime: Optional[datetime] = None + ImpactEndTime: Optional[datetime] = None + NumberOfLogLinesScanned: Optional[int] = None + LogAnomalyShowcases: Optional[List[LogAnomalyShowcaseTypeDef]] = None + +class NotificationChannelPaginatorTypeDef(BaseModel): + Id: Optional[str] = None + Config: Optional[NotificationChannelConfigPaginatorTypeDef] = None + +class AddNotificationChannelRequestRequestTypeDef(BaseModel): + Config: NotificationChannelConfigTypeDef + +class NotificationChannelTypeDef(BaseModel): + Id: Optional[str] = None + Config: Optional[NotificationChannelConfigTypeDef] = None + +class UpdateServiceIntegrationRequestRequestTypeDef(BaseModel): + ServiceIntegration: UpdateServiceIntegrationConfigTypeDef + +class DescribeServiceIntegrationResponseTypeDef(BaseModel): + ServiceIntegration: ServiceIntegrationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PerformanceInsightsReferenceMetricTypeDef(BaseModel): + MetricQuery: Optional[PerformanceInsightsMetricQueryTypeDef] = None + +class RecommendationRelatedAnomalyTypeDef(BaseModel): + Resources: Optional[List[RecommendationRelatedAnomalyResourceTypeDef]] = None + SourceDetails: Optional[List[RecommendationRelatedAnomalySourceDetailTypeDef]] = None + AnomalyId: Optional[str] = None + +class GetResourceCollectionResponseTypeDef(BaseModel): + ResourceCollection: ResourceCollectionFilterTypeDef + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventTypeDef(BaseModel): + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + Id: Optional[str] = None + Time: Optional[datetime] = None + EventSource: Optional[str] = None + Name: Optional[str] = None + DataSource: Optional[EventDataSourceType] = None + EventClass: Optional[EventClassType] = None + Resources: Optional[List[EventResourceTypeDef]] = None + +class ListEventsFiltersTypeDef(BaseModel): + InsightId: Optional[str] = None + EventTimeRange: Optional[EventTimeRangeTypeDef] = None + EventClass: Optional[EventClassType] = None + EventSource: Optional[str] = None + DataSource: Optional[EventDataSourceType] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + +class MonitoredResourceIdentifierTypeDef(BaseModel): + MonitoredResourceName: Optional[str] = None + Type: Optional[str] = None + ResourcePermission: Optional[ResourcePermissionType] = None + LastUpdated: Optional[datetime] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + +class ProactiveInsightSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Severity: Optional[InsightSeverityType] = None + Status: Optional[InsightStatusType] = None + InsightTimeRange: Optional[InsightTimeRangeTypeDef] = None + PredictionTimeRange: Optional[PredictionTimeRangeTypeDef] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + AssociatedResourceArns: Optional[List[str]] = None + +class ProactiveInsightTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Severity: Optional[InsightSeverityType] = None + Status: Optional[InsightStatusType] = None + InsightTimeRange: Optional[InsightTimeRangeTypeDef] = None + PredictionTimeRange: Optional[PredictionTimeRangeTypeDef] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + SsmOpsItemId: Optional[str] = None + Description: Optional[str] = None + +class ProactiveOrganizationInsightSummaryTypeDef(BaseModel): + Id: Optional[str] = None + AccountId: Optional[str] = None + OrganizationalUnitId: Optional[str] = None + Name: Optional[str] = None + Severity: Optional[InsightSeverityType] = None + Status: Optional[InsightStatusType] = None + InsightTimeRange: Optional[InsightTimeRangeTypeDef] = None + PredictionTimeRange: Optional[PredictionTimeRangeTypeDef] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + +class ReactiveInsightSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Severity: Optional[InsightSeverityType] = None + Status: Optional[InsightStatusType] = None + InsightTimeRange: Optional[InsightTimeRangeTypeDef] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + AssociatedResourceArns: Optional[List[str]] = None + +class ReactiveInsightTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Severity: Optional[InsightSeverityType] = None + Status: Optional[InsightStatusType] = None + InsightTimeRange: Optional[InsightTimeRangeTypeDef] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + SsmOpsItemId: Optional[str] = None + Description: Optional[str] = None + +class ReactiveOrganizationInsightSummaryTypeDef(BaseModel): + Id: Optional[str] = None + AccountId: Optional[str] = None + OrganizationalUnitId: Optional[str] = None + Name: Optional[str] = None + Severity: Optional[InsightSeverityType] = None + Status: Optional[InsightStatusType] = None + InsightTimeRange: Optional[InsightTimeRangeTypeDef] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + +class SearchInsightsFiltersTypeDef(BaseModel): + Severities: Optional[Sequence[InsightSeverityType]] = None + Statuses: Optional[Sequence[InsightStatusType]] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + +class SearchOrganizationInsightsFiltersTypeDef(BaseModel): + Severities: Optional[Sequence[InsightSeverityType]] = None + Statuses: Optional[Sequence[InsightStatusType]] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + ServiceCollection: Optional[ServiceCollectionTypeDef] = None + +class DescribeOrganizationResourceCollectionHealthResponseTypeDef(BaseModel): + CloudFormation: List[CloudFormationHealthTypeDef] + Service: List[ServiceHealthTypeDef] + Account: List[AccountHealthTypeDef] + NextToken: str + Tags: List[TagHealthTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourceCollectionHealthResponseTypeDef(BaseModel): + CloudFormation: List[CloudFormationHealthTypeDef] + Service: List[ServiceHealthTypeDef] + NextToken: str + Tags: List[TagHealthTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResourceCollectionRequestRequestTypeDef(BaseModel): + Action: UpdateResourceCollectionActionType + ResourceCollection: UpdateResourceCollectionFilterTypeDef + +class ListInsightsStatusFilterTypeDef(BaseModel): + Ongoing: Optional[ListInsightsOngoingStatusFilterTypeDef] = None + Closed: Optional[ListInsightsClosedStatusFilterTypeDef] = None + Any: Optional[ListInsightsAnyStatusFilterTypeDef] = None + +class ListAnomalousLogGroupsResponseTypeDef(BaseModel): + InsightId: str + AnomalousLogGroups: List[AnomalousLogGroupTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListNotificationChannelsResponsePaginatorTypeDef(BaseModel): + Channels: List[NotificationChannelPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListNotificationChannelsResponseTypeDef(BaseModel): + Channels: List[NotificationChannelTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PerformanceInsightsReferenceComparisonValuesTypeDef(BaseModel): + ReferenceScalar: Optional[PerformanceInsightsReferenceScalarTypeDef] = None + ReferenceMetric: Optional[PerformanceInsightsReferenceMetricTypeDef] = None + +class RecommendationTypeDef(BaseModel): + Description: Optional[str] = None + Link: Optional[str] = None + Name: Optional[str] = None + Reason: Optional[str] = None + RelatedEvents: Optional[List[RecommendationRelatedEventTypeDef]] = None + RelatedAnomalies: Optional[List[RecommendationRelatedAnomalyTypeDef]] = None + Category: Optional[str] = None + +class ListEventsResponseTypeDef(BaseModel): + Events: List[EventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventsRequestListEventsPaginateTypeDef(BaseModel): + Filters: ListEventsFiltersTypeDef + AccountId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventsRequestRequestTypeDef(BaseModel): + Filters: ListEventsFiltersTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccountId: Optional[str] = None + +class ListMonitoredResourcesResponseTypeDef(BaseModel): + MonitoredResourceIdentifiers: List[MonitoredResourceIdentifierTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListInsightsResponseTypeDef(BaseModel): + ProactiveInsights: List[ProactiveInsightSummaryTypeDef] + ReactiveInsights: List[ReactiveInsightSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchInsightsResponseTypeDef(BaseModel): + ProactiveInsights: List[ProactiveInsightSummaryTypeDef] + ReactiveInsights: List[ReactiveInsightSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchOrganizationInsightsResponseTypeDef(BaseModel): + ProactiveInsights: List[ProactiveInsightSummaryTypeDef] + ReactiveInsights: List[ReactiveInsightSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInsightResponseTypeDef(BaseModel): + ProactiveInsight: ProactiveInsightTypeDef + ReactiveInsight: ReactiveInsightTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationInsightsResponseTypeDef(BaseModel): + ProactiveInsights: List[ProactiveOrganizationInsightSummaryTypeDef] + ReactiveInsights: List[ReactiveOrganizationInsightSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchInsightsRequestRequestTypeDef(BaseModel): + StartTimeRange: StartTimeRangeTypeDef + Type: InsightTypeType + Filters: Optional[SearchInsightsFiltersTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SearchInsightsRequestSearchInsightsPaginateTypeDef(BaseModel): + StartTimeRange: StartTimeRangeTypeDef + Type: InsightTypeType + Filters: Optional[SearchInsightsFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchOrganizationInsightsRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + StartTimeRange: StartTimeRangeTypeDef + Type: InsightTypeType + Filters: Optional[SearchOrganizationInsightsFiltersTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SearchOrganizationInsightsRequestSearchOrganizationInsightsPaginateTypeDef(BaseModel): + AccountIds: Sequence[str] + StartTimeRange: StartTimeRangeTypeDef + Type: InsightTypeType + Filters: Optional[SearchOrganizationInsightsFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInsightsRequestListInsightsPaginateTypeDef(BaseModel): + StatusFilter: ListInsightsStatusFilterTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInsightsRequestRequestTypeDef(BaseModel): + StatusFilter: ListInsightsStatusFilterTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOrganizationInsightsRequestListOrganizationInsightsPaginateTypeDef(BaseModel): + StatusFilter: ListInsightsStatusFilterTypeDef + AccountIds: Optional[Sequence[str]] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationInsightsRequestRequestTypeDef(BaseModel): + StatusFilter: ListInsightsStatusFilterTypeDef + MaxResults: Optional[int] = None + AccountIds: Optional[Sequence[str]] = None + OrganizationalUnitIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class PerformanceInsightsReferenceDataTypeDef(BaseModel): + Name: Optional[str] = None + ComparisonValues: Optional[PerformanceInsightsReferenceComparisonValuesTypeDef] = None + +class ListRecommendationsResponseTypeDef(BaseModel): + Recommendations: List[RecommendationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PerformanceInsightsMetricsDetailTypeDef(BaseModel): + MetricDisplayName: Optional[str] = None + Unit: Optional[str] = None + MetricQuery: Optional[PerformanceInsightsMetricQueryTypeDef] = None + ReferenceData: Optional[List[PerformanceInsightsReferenceDataTypeDef]] = None + StatsAtAnomaly: Optional[List[PerformanceInsightsStatTypeDef]] = None + StatsAtBaseline: Optional[List[PerformanceInsightsStatTypeDef]] = None + +class AnomalySourceDetailsTypeDef(BaseModel): + CloudWatchMetrics: Optional[List[CloudWatchMetricsDetailTypeDef]] = None + PerformanceInsightsMetrics: Optional[List[PerformanceInsightsMetricsDetailTypeDef]] = None + +class ProactiveAnomalySummaryTypeDef(BaseModel): + Id: Optional[str] = None + Severity: Optional[AnomalySeverityType] = None + Status: Optional[AnomalyStatusType] = None + UpdateTime: Optional[datetime] = None + AnomalyTimeRange: Optional[AnomalyTimeRangeTypeDef] = None + AnomalyReportedTimeRange: Optional[AnomalyReportedTimeRangeTypeDef] = None + PredictionTimeRange: Optional[PredictionTimeRangeTypeDef] = None + SourceDetails: Optional[AnomalySourceDetailsTypeDef] = None + AssociatedInsightId: Optional[str] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + Limit: Optional[float] = None + SourceMetadata: Optional[AnomalySourceMetadataTypeDef] = None + AnomalyResources: Optional[List[AnomalyResourceTypeDef]] = None + Description: Optional[str] = None + +class ProactiveAnomalyTypeDef(BaseModel): + Id: Optional[str] = None + Severity: Optional[AnomalySeverityType] = None + Status: Optional[AnomalyStatusType] = None + UpdateTime: Optional[datetime] = None + AnomalyTimeRange: Optional[AnomalyTimeRangeTypeDef] = None + AnomalyReportedTimeRange: Optional[AnomalyReportedTimeRangeTypeDef] = None + PredictionTimeRange: Optional[PredictionTimeRangeTypeDef] = None + SourceDetails: Optional[AnomalySourceDetailsTypeDef] = None + AssociatedInsightId: Optional[str] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + Limit: Optional[float] = None + SourceMetadata: Optional[AnomalySourceMetadataTypeDef] = None + AnomalyResources: Optional[List[AnomalyResourceTypeDef]] = None + Description: Optional[str] = None + +class ReactiveAnomalySummaryTypeDef(BaseModel): + Id: Optional[str] = None + Severity: Optional[AnomalySeverityType] = None + Status: Optional[AnomalyStatusType] = None + AnomalyTimeRange: Optional[AnomalyTimeRangeTypeDef] = None + AnomalyReportedTimeRange: Optional[AnomalyReportedTimeRangeTypeDef] = None + SourceDetails: Optional[AnomalySourceDetailsTypeDef] = None + AssociatedInsightId: Optional[str] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + Type: Optional[AnomalyTypeType] = None + Name: Optional[str] = None + Description: Optional[str] = None + CausalAnomalyId: Optional[str] = None + AnomalyResources: Optional[List[AnomalyResourceTypeDef]] = None + +class ReactiveAnomalyTypeDef(BaseModel): + Id: Optional[str] = None + Severity: Optional[AnomalySeverityType] = None + Status: Optional[AnomalyStatusType] = None + AnomalyTimeRange: Optional[AnomalyTimeRangeTypeDef] = None + AnomalyReportedTimeRange: Optional[AnomalyReportedTimeRangeTypeDef] = None + SourceDetails: Optional[AnomalySourceDetailsTypeDef] = None + AssociatedInsightId: Optional[str] = None + ResourceCollection: Optional[ResourceCollectionTypeDef] = None + Type: Optional[AnomalyTypeType] = None + Name: Optional[str] = None + Description: Optional[str] = None + CausalAnomalyId: Optional[str] = None + AnomalyResources: Optional[List[AnomalyResourceTypeDef]] = None + +class ListAnomaliesForInsightResponseTypeDef(BaseModel): + ProactiveAnomalies: List[ProactiveAnomalySummaryTypeDef] + ReactiveAnomalies: List[ReactiveAnomalySummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAnomalyResponseTypeDef(BaseModel): + ProactiveAnomaly: ProactiveAnomalyTypeDef + ReactiveAnomaly: ReactiveAnomalyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/devops_guru_constants.py b/aws_resource_validator/pydantic_models/devops_guru_constants.py new file mode 100644 index 00000000..fd94e92b --- /dev/null +++ b/aws_resource_validator/pydantic_models/devops_guru_constants.py @@ -0,0 +1,529 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnomalySeverityType = Literal["HIGH", "LOW", "MEDIUM"] +AnomalyStatusType = Literal["CLOSED", "ONGOING"] +AnomalyTypeType = Literal["CAUSAL", "CONTEXTUAL"] +CloudWatchMetricDataStatusCodeType = Literal["Complete", "InternalError", "PartialData"] +CloudWatchMetricsStatType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum", "p50", "p90", "p99"] +CostEstimationServiceResourceStateType = Literal["ACTIVE", "INACTIVE"] +CostEstimationStatusType = Literal["COMPLETED", "ONGOING"] +DescribeOrganizationResourceCollectionHealthPaginatorName = Literal["describe_organization_resource_collection_health"] +DescribeResourceCollectionHealthPaginatorName = Literal["describe_resource_collection_health"] +EventClassType = Literal["CONFIG_CHANGE", "DEPLOYMENT", "INFRASTRUCTURE", "SCHEMA_CHANGE", "SECURITY_CHANGE"] +EventDataSourceType = Literal["AWS_CLOUD_TRAIL", "AWS_CODE_DEPLOY"] +EventSourceOptInStatusType = Literal["DISABLED", "ENABLED"] +GetCostEstimationPaginatorName = Literal["get_cost_estimation"] +GetResourceCollectionPaginatorName = Literal["get_resource_collection"] +InsightFeedbackOptionType = Literal["ALERT_TOO_SENSITIVE", + "DATA_INCORRECT", + "DATA_NOISY_ANOMALY", + "RECOMMENDATION_USEFUL", + "VALID_COLLECTION",] +InsightSeverityType = Literal["HIGH", "LOW", "MEDIUM"] +InsightStatusType = Literal["CLOSED", "ONGOING"] +InsightTypeType = Literal["PROACTIVE", "REACTIVE"] +ListAnomaliesForInsightPaginatorName = Literal["list_anomalies_for_insight"] +ListAnomalousLogGroupsPaginatorName = Literal["list_anomalous_log_groups"] +ListEventsPaginatorName = Literal["list_events"] +ListInsightsPaginatorName = Literal["list_insights"] +ListMonitoredResourcesPaginatorName = Literal["list_monitored_resources"] +ListNotificationChannelsPaginatorName = Literal["list_notification_channels"] +ListOrganizationInsightsPaginatorName = Literal["list_organization_insights"] +ListRecommendationsPaginatorName = Literal["list_recommendations"] +LocaleType = Literal["DE_DE", + "EN_GB", + "EN_US", + "ES_ES", + "FR_FR", + "IT_IT", + "JA_JP", + "KO_KR", + "PT_BR", + "ZH_CN", + "ZH_TW",] +LogAnomalyTypeType = Literal["BLOCK_FORMAT", + "FORMAT", + "HTTP_CODE", + "KEYWORD", + "KEYWORD_TOKEN", + "NEW_FIELD_NAME", + "NUMERICAL_NAN", + "NUMERICAL_POINT",] +NotificationMessageTypeType = Literal["CLOSED_INSIGHT", "NEW_ASSOCIATION", "NEW_INSIGHT", "NEW_RECOMMENDATION", "SEVERITY_UPGRADED"] +OptInStatusType = Literal["DISABLED", "ENABLED"] +OrganizationResourceCollectionTypeType = Literal["AWS_ACCOUNT", "AWS_CLOUD_FORMATION", "AWS_SERVICE", "AWS_TAGS"] +ResourceCollectionTypeType = Literal["AWS_CLOUD_FORMATION", "AWS_SERVICE", "AWS_TAGS"] +ResourcePermissionType = Literal["FULL_PERMISSION", "MISSING_PERMISSION"] +ResourceTypeFilterType = Literal["CLOUDFRONT_DISTRIBUTION", + "DYNAMODB_TABLE", + "EC2_NAT_GATEWAY", + "ECS_CLUSTER", + "ECS_SERVICE", + "EKS_CLUSTER", + "ELASTICACHE_CACHE_CLUSTER", + "ELASTICSEARCH_DOMAIN", + "ELASTIC_BEANSTALK_ENVIRONMENT", + "ELASTIC_LOAD_BALANCER_LOAD_BALANCER", + "ELASTIC_LOAD_BALANCING_V2_LOAD_BALANCER", + "ELASTIC_LOAD_BALANCING_V2_TARGET_GROUP", + "KINESIS_STREAM", + "LAMBDA_FUNCTION", + "LOG_GROUPS", + "OPEN_SEARCH_SERVICE_DOMAIN", + "RDS_DB_CLUSTER", + "RDS_DB_INSTANCE", + "REDSHIFT_CLUSTER", + "ROUTE53_HEALTH_CHECK", + "ROUTE53_HOSTED_ZONE", + "S3_BUCKET", + "SAGEMAKER_ENDPOINT", + "SNS_TOPIC", + "SQS_QUEUE", + "STEP_FUNCTIONS_ACTIVITY", + "STEP_FUNCTIONS_STATE_MACHINE",] +SearchInsightsPaginatorName = Literal["search_insights"] +SearchOrganizationInsightsPaginatorName = Literal["search_organization_insights"] +ServerSideEncryptionTypeType = Literal["AWS_OWNED_KMS_KEY", "CUSTOMER_MANAGED_KEY"] +ServiceNameType = Literal["API_GATEWAY", + "APPLICATION_ELB", + "AUTO_SCALING_GROUP", + "CLOUD_FRONT", + "DYNAMO_DB", + "EC2", + "ECS", + "EKS", + "ELASTIC_BEANSTALK", + "ELASTI_CACHE", + "ELB", + "ES", + "KINESIS", + "LAMBDA", + "NAT_GATEWAY", + "NETWORK_ELB", + "RDS", + "REDSHIFT", + "ROUTE_53", + "S3", + "SAGE_MAKER", + "SNS", + "SQS", + "STEP_FUNCTIONS", + "SWF",] +UpdateResourceCollectionActionType = Literal["ADD", "REMOVE"] +DevOpsGuruServiceName = Literal["devops-guru"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_organization_resource_collection_health", + "describe_resource_collection_health", + "get_cost_estimation", + "get_resource_collection", + "list_anomalies_for_insight", + "list_anomalous_log_groups", + "list_events", + "list_insights", + "list_monitored_resources", + "list_notification_channels", + "list_organization_insights", + "list_recommendations", + "search_insights", + "search_organization_insights",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/directconnect_classes.py b/aws_resource_validator/pydantic_models/directconnect_classes.py new file mode 100644 index 00000000..9ad421b4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/directconnect_classes.py @@ -0,0 +1,881 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.directconnect_constants import * + +class RouteFilterPrefixTypeDef(BaseModel): + cidr: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AllocateConnectionOnInterconnectRequestRequestTypeDef(BaseModel): + bandwidth: str + connectionName: str + ownerAccount: str + interconnectId: str + vlan: int + +class TagTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class AssociateConnectionWithLagRequestRequestTypeDef(BaseModel): + connectionId: str + lagId: str + +class AssociateHostedConnectionRequestRequestTypeDef(BaseModel): + connectionId: str + parentConnectionId: str + +class AssociateMacSecKeyRequestRequestTypeDef(BaseModel): + connectionId: str + secretARN: Optional[str] = None + ckn: Optional[str] = None + cak: Optional[str] = None + +class MacSecKeyTypeDef(BaseModel): + secretARN: Optional[str] = None + ckn: Optional[str] = None + state: Optional[str] = None + startOn: Optional[str] = None + +class AssociateVirtualInterfaceRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + connectionId: str + +class AssociatedGatewayTypeDef(BaseModel): + id: Optional[str] = None + type: Optional[GatewayTypeType] = None + ownerAccount: Optional[str] = None + region: Optional[str] = None + +class BGPPeerTypeDef(BaseModel): + bgpPeerId: Optional[str] = None + asn: Optional[int] = None + authKey: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + bgpPeerState: Optional[BGPPeerStateType] = None + bgpStatus: Optional[BGPStatusType] = None + awsDeviceV2: Optional[str] = None + awsLogicalDeviceId: Optional[str] = None + +class ConfirmConnectionRequestRequestTypeDef(BaseModel): + connectionId: str + +class ConfirmCustomerAgreementRequestRequestTypeDef(BaseModel): + agreementName: Optional[str] = None + +class ConfirmPrivateVirtualInterfaceRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + virtualGatewayId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + +class ConfirmPublicVirtualInterfaceRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + +class ConfirmTransitVirtualInterfaceRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + directConnectGatewayId: str + +class NewBGPPeerTypeDef(BaseModel): + asn: Optional[int] = None + authKey: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + +class CreateDirectConnectGatewayRequestRequestTypeDef(BaseModel): + directConnectGatewayName: str + amazonSideAsn: Optional[int] = None + +class DirectConnectGatewayTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + directConnectGatewayName: Optional[str] = None + amazonSideAsn: Optional[int] = None + ownerAccount: Optional[str] = None + directConnectGatewayState: Optional[DirectConnectGatewayStateType] = None + stateChangeError: Optional[str] = None + +class CustomerAgreementTypeDef(BaseModel): + agreementName: Optional[str] = None + status: Optional[str] = None + +class DeleteBGPPeerRequestRequestTypeDef(BaseModel): + virtualInterfaceId: Optional[str] = None + asn: Optional[int] = None + customerAddress: Optional[str] = None + bgpPeerId: Optional[str] = None + +class DeleteConnectionRequestRequestTypeDef(BaseModel): + connectionId: str + +class DeleteDirectConnectGatewayAssociationProposalRequestRequestTypeDef(BaseModel): + proposalId: str + +class DeleteDirectConnectGatewayAssociationRequestRequestTypeDef(BaseModel): + associationId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + virtualGatewayId: Optional[str] = None + +class DeleteDirectConnectGatewayRequestRequestTypeDef(BaseModel): + directConnectGatewayId: str + +class DeleteInterconnectRequestRequestTypeDef(BaseModel): + interconnectId: str + +class DeleteLagRequestRequestTypeDef(BaseModel): + lagId: str + +class DeleteVirtualInterfaceRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + +class DescribeConnectionLoaRequestRequestTypeDef(BaseModel): + connectionId: str + providerName: Optional[str] = None + loaContentType: Optional[Literal["application/pdf"]] = None + +class LoaTypeDef(BaseModel): + loaContent: Optional[bytes] = None + loaContentType: Optional[Literal["application/pdf"]] = None + +class DescribeConnectionsOnInterconnectRequestRequestTypeDef(BaseModel): + interconnectId: str + +class DescribeConnectionsRequestRequestTypeDef(BaseModel): + connectionId: Optional[str] = None + +class DescribeDirectConnectGatewayAssociationProposalsRequestRequestTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + proposalId: Optional[str] = None + associatedGatewayId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeDirectConnectGatewayAssociationsRequestRequestTypeDef(BaseModel): + associationId: Optional[str] = None + associatedGatewayId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + virtualGatewayId: Optional[str] = None + +class DescribeDirectConnectGatewayAttachmentsRequestRequestTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + virtualInterfaceId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DirectConnectGatewayAttachmentTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + virtualInterfaceId: Optional[str] = None + virtualInterfaceRegion: Optional[str] = None + virtualInterfaceOwnerAccount: Optional[str] = None + attachmentState: Optional[DirectConnectGatewayAttachmentStateType] = None + attachmentType: Optional[DirectConnectGatewayAttachmentTypeType] = None + stateChangeError: Optional[str] = None + +class DescribeDirectConnectGatewaysRequestRequestTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeHostedConnectionsRequestRequestTypeDef(BaseModel): + connectionId: str + +class DescribeInterconnectLoaRequestRequestTypeDef(BaseModel): + interconnectId: str + providerName: Optional[str] = None + loaContentType: Optional[Literal["application/pdf"]] = None + +class DescribeInterconnectsRequestRequestTypeDef(BaseModel): + interconnectId: Optional[str] = None + +class DescribeLagsRequestRequestTypeDef(BaseModel): + lagId: Optional[str] = None + +class DescribeLoaRequestRequestTypeDef(BaseModel): + connectionId: str + providerName: Optional[str] = None + loaContentType: Optional[Literal["application/pdf"]] = None + +class DescribeRouterConfigurationRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + routerTypeIdentifier: Optional[str] = None + +class RouterTypeTypeDef(BaseModel): + vendor: Optional[str] = None + platform: Optional[str] = None + software: Optional[str] = None + xsltTemplateName: Optional[str] = None + xsltTemplateNameForMacSec: Optional[str] = None + routerTypeIdentifier: Optional[str] = None + +class DescribeTagsRequestRequestTypeDef(BaseModel): + resourceArns: Sequence[str] + +class DescribeVirtualInterfacesRequestRequestTypeDef(BaseModel): + connectionId: Optional[str] = None + virtualInterfaceId: Optional[str] = None + +class DisassociateConnectionFromLagRequestRequestTypeDef(BaseModel): + connectionId: str + lagId: str + +class DisassociateMacSecKeyRequestRequestTypeDef(BaseModel): + connectionId: str + secretARN: str + +class ListVirtualInterfaceTestHistoryRequestRequestTypeDef(BaseModel): + testId: Optional[str] = None + virtualInterfaceId: Optional[str] = None + bgpPeers: Optional[Sequence[str]] = None + status: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class VirtualInterfaceTestHistoryTypeDef(BaseModel): + testId: Optional[str] = None + virtualInterfaceId: Optional[str] = None + bgpPeers: Optional[List[str]] = None + status: Optional[str] = None + ownerAccount: Optional[str] = None + testDurationInMinutes: Optional[int] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class LocationTypeDef(BaseModel): + locationCode: Optional[str] = None + locationName: Optional[str] = None + region: Optional[str] = None + availablePortSpeeds: Optional[List[str]] = None + availableProviders: Optional[List[str]] = None + availableMacSecPortSpeeds: Optional[List[str]] = None + +class StartBgpFailoverTestRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + bgpPeers: Optional[Sequence[str]] = None + testDurationInMinutes: Optional[int] = None + +class StopBgpFailoverTestRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateConnectionRequestRequestTypeDef(BaseModel): + connectionId: str + connectionName: Optional[str] = None + encryptionMode: Optional[str] = None + +class UpdateDirectConnectGatewayRequestRequestTypeDef(BaseModel): + directConnectGatewayId: str + newDirectConnectGatewayName: str + +class UpdateLagRequestRequestTypeDef(BaseModel): + lagId: str + lagName: Optional[str] = None + minimumLinks: Optional[int] = None + encryptionMode: Optional[str] = None + +class UpdateVirtualInterfaceAttributesRequestRequestTypeDef(BaseModel): + virtualInterfaceId: str + mtu: Optional[int] = None + enableSiteLink: Optional[bool] = None + virtualInterfaceName: Optional[str] = None + +class VirtualGatewayTypeDef(BaseModel): + virtualGatewayId: Optional[str] = None + virtualGatewayState: Optional[str] = None + +class AcceptDirectConnectGatewayAssociationProposalRequestRequestTypeDef(BaseModel): + directConnectGatewayId: str + proposalId: str + associatedGatewayOwnerAccount: str + overrideAllowedPrefixesToDirectConnectGateway: Optional[ Sequence[RouteFilterPrefixTypeDef] ] = None + +class CreateDirectConnectGatewayAssociationProposalRequestRequestTypeDef(BaseModel): + directConnectGatewayId: str + directConnectGatewayOwnerAccount: str + gatewayId: str + addAllowedPrefixesToDirectConnectGateway: Optional[Sequence[RouteFilterPrefixTypeDef]] = None + removeAllowedPrefixesToDirectConnectGateway: Optional[ Sequence[RouteFilterPrefixTypeDef] ] = None + +class CreateDirectConnectGatewayAssociationRequestRequestTypeDef(BaseModel): + directConnectGatewayId: str + gatewayId: Optional[str] = None + addAllowedPrefixesToDirectConnectGateway: Optional[Sequence[RouteFilterPrefixTypeDef]] = None + virtualGatewayId: Optional[str] = None + +class UpdateDirectConnectGatewayAssociationRequestRequestTypeDef(BaseModel): + associationId: Optional[str] = None + addAllowedPrefixesToDirectConnectGateway: Optional[Sequence[RouteFilterPrefixTypeDef]] = None + removeAllowedPrefixesToDirectConnectGateway: Optional[ Sequence[RouteFilterPrefixTypeDef] ] = None + +class ConfirmConnectionResponseTypeDef(BaseModel): + connectionState: ConnectionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmCustomerAgreementResponseTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmPrivateVirtualInterfaceResponseTypeDef(BaseModel): + virtualInterfaceState: VirtualInterfaceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmPublicVirtualInterfaceResponseTypeDef(BaseModel): + virtualInterfaceState: VirtualInterfaceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmTransitVirtualInterfaceResponseTypeDef(BaseModel): + virtualInterfaceState: VirtualInterfaceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInterconnectResponseTypeDef(BaseModel): + interconnectState: InterconnectStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVirtualInterfaceResponseTypeDef(BaseModel): + virtualInterfaceState: VirtualInterfaceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class LoaResponseTypeDef(BaseModel): + loaContent: bytes + loaContentType: Literal["application/pdf"] + ResponseMetadata: ResponseMetadataTypeDef + +class AllocateHostedConnectionRequestRequestTypeDef(BaseModel): + connectionId: str + ownerAccount: str + bandwidth: str + connectionName: str + vlan: int + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateConnectionRequestRequestTypeDef(BaseModel): + location: str + bandwidth: str + connectionName: str + lagId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + providerName: Optional[str] = None + requestMACSec: Optional[bool] = None + +class CreateInterconnectRequestRequestTypeDef(BaseModel): + interconnectName: str + bandwidth: str + location: str + lagId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + providerName: Optional[str] = None + +class CreateLagRequestRequestTypeDef(BaseModel): + numberOfConnections: int + location: str + connectionsBandwidth: str + lagName: str + connectionId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + childConnectionTags: Optional[Sequence[TagTypeDef]] = None + providerName: Optional[str] = None + requestMACSec: Optional[bool] = None + +class InterconnectResponseTypeDef(BaseModel): + interconnectId: str + interconnectName: str + interconnectState: InterconnectStateType + region: str + location: str + bandwidth: str + loaIssueTime: datetime + lagId: str + awsDevice: str + jumboFrameCapable: bool + awsDeviceV2: str + awsLogicalDeviceId: str + hasLogicalRedundancy: HasLogicalRedundancyType + tags: List[TagTypeDef] + providerName: str + ResponseMetadata: ResponseMetadataTypeDef + +class InterconnectTypeDef(BaseModel): + interconnectId: Optional[str] = None + interconnectName: Optional[str] = None + interconnectState: Optional[InterconnectStateType] = None + region: Optional[str] = None + location: Optional[str] = None + bandwidth: Optional[str] = None + loaIssueTime: Optional[datetime] = None + lagId: Optional[str] = None + awsDevice: Optional[str] = None + jumboFrameCapable: Optional[bool] = None + awsDeviceV2: Optional[str] = None + awsLogicalDeviceId: Optional[str] = None + hasLogicalRedundancy: Optional[HasLogicalRedundancyType] = None + tags: Optional[List[TagTypeDef]] = None + providerName: Optional[str] = None + +class NewPrivateVirtualInterfaceAllocationTypeDef(BaseModel): + virtualInterfaceName: str + vlan: int + asn: int + mtu: Optional[int] = None + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + customerAddress: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class NewPrivateVirtualInterfaceTypeDef(BaseModel): + virtualInterfaceName: str + vlan: int + asn: int + mtu: Optional[int] = None + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + virtualGatewayId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + enableSiteLink: Optional[bool] = None + +class NewPublicVirtualInterfaceAllocationTypeDef(BaseModel): + virtualInterfaceName: str + vlan: int + asn: int + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + routeFilterPrefixes: Optional[Sequence[RouteFilterPrefixTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class NewPublicVirtualInterfaceTypeDef(BaseModel): + virtualInterfaceName: str + vlan: int + asn: int + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + routeFilterPrefixes: Optional[Sequence[RouteFilterPrefixTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class NewTransitVirtualInterfaceAllocationTypeDef(BaseModel): + virtualInterfaceName: Optional[str] = None + vlan: Optional[int] = None + asn: Optional[int] = None + mtu: Optional[int] = None + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class NewTransitVirtualInterfaceTypeDef(BaseModel): + virtualInterfaceName: Optional[str] = None + vlan: Optional[int] = None + asn: Optional[int] = None + mtu: Optional[int] = None + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + directConnectGatewayId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + enableSiteLink: Optional[bool] = None + +class ResourceTagTypeDef(BaseModel): + resourceArn: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class AssociateMacSecKeyResponseTypeDef(BaseModel): + connectionId: str + macSecKeys: List[MacSecKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectionResponseTypeDef(BaseModel): + ownerAccount: str + connectionId: str + connectionName: str + connectionState: ConnectionStateType + region: str + location: str + bandwidth: str + vlan: int + partnerName: str + loaIssueTime: datetime + lagId: str + awsDevice: str + jumboFrameCapable: bool + awsDeviceV2: str + awsLogicalDeviceId: str + hasLogicalRedundancy: HasLogicalRedundancyType + tags: List[TagTypeDef] + providerName: str + macSecCapable: bool + portEncryptionStatus: str + encryptionMode: str + macSecKeys: List[MacSecKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectionTypeDef(BaseModel): + ownerAccount: Optional[str] = None + connectionId: Optional[str] = None + connectionName: Optional[str] = None + connectionState: Optional[ConnectionStateType] = None + region: Optional[str] = None + location: Optional[str] = None + bandwidth: Optional[str] = None + vlan: Optional[int] = None + partnerName: Optional[str] = None + loaIssueTime: Optional[datetime] = None + lagId: Optional[str] = None + awsDevice: Optional[str] = None + jumboFrameCapable: Optional[bool] = None + awsDeviceV2: Optional[str] = None + awsLogicalDeviceId: Optional[str] = None + hasLogicalRedundancy: Optional[HasLogicalRedundancyType] = None + tags: Optional[List[TagTypeDef]] = None + providerName: Optional[str] = None + macSecCapable: Optional[bool] = None + portEncryptionStatus: Optional[str] = None + encryptionMode: Optional[str] = None + macSecKeys: Optional[List[MacSecKeyTypeDef]] = None + +class DisassociateMacSecKeyResponseTypeDef(BaseModel): + connectionId: str + macSecKeys: List[MacSecKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DirectConnectGatewayAssociationProposalTypeDef(BaseModel): + proposalId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + directConnectGatewayOwnerAccount: Optional[str] = None + proposalState: Optional[DirectConnectGatewayAssociationProposalStateType] = None + associatedGateway: Optional[AssociatedGatewayTypeDef] = None + existingAllowedPrefixesToDirectConnectGateway: Optional[ List[RouteFilterPrefixTypeDef] ] = None + requestedAllowedPrefixesToDirectConnectGateway: Optional[ List[RouteFilterPrefixTypeDef] ] = None + +class DirectConnectGatewayAssociationTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + directConnectGatewayOwnerAccount: Optional[str] = None + associationState: Optional[DirectConnectGatewayAssociationStateType] = None + stateChangeError: Optional[str] = None + associatedGateway: Optional[AssociatedGatewayTypeDef] = None + associationId: Optional[str] = None + allowedPrefixesToDirectConnectGateway: Optional[List[RouteFilterPrefixTypeDef]] = None + virtualGatewayId: Optional[str] = None + virtualGatewayRegion: Optional[str] = None + virtualGatewayOwnerAccount: Optional[str] = None + +class VirtualInterfaceResponseTypeDef(BaseModel): + ownerAccount: str + virtualInterfaceId: str + location: str + connectionId: str + virtualInterfaceType: str + virtualInterfaceName: str + vlan: int + asn: int + amazonSideAsn: int + authKey: str + amazonAddress: str + customerAddress: str + addressFamily: AddressFamilyType + virtualInterfaceState: VirtualInterfaceStateType + customerRouterConfig: str + mtu: int + jumboFrameCapable: bool + virtualGatewayId: str + directConnectGatewayId: str + routeFilterPrefixes: List[RouteFilterPrefixTypeDef] + bgpPeers: List[BGPPeerTypeDef] + region: str + awsDeviceV2: str + awsLogicalDeviceId: str + tags: List[TagTypeDef] + siteLinkEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class VirtualInterfaceTypeDef(BaseModel): + ownerAccount: Optional[str] = None + virtualInterfaceId: Optional[str] = None + location: Optional[str] = None + connectionId: Optional[str] = None + virtualInterfaceType: Optional[str] = None + virtualInterfaceName: Optional[str] = None + vlan: Optional[int] = None + asn: Optional[int] = None + amazonSideAsn: Optional[int] = None + authKey: Optional[str] = None + amazonAddress: Optional[str] = None + customerAddress: Optional[str] = None + addressFamily: Optional[AddressFamilyType] = None + virtualInterfaceState: Optional[VirtualInterfaceStateType] = None + customerRouterConfig: Optional[str] = None + mtu: Optional[int] = None + jumboFrameCapable: Optional[bool] = None + virtualGatewayId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + routeFilterPrefixes: Optional[List[RouteFilterPrefixTypeDef]] = None + bgpPeers: Optional[List[BGPPeerTypeDef]] = None + region: Optional[str] = None + awsDeviceV2: Optional[str] = None + awsLogicalDeviceId: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + siteLinkEnabled: Optional[bool] = None + +class CreateBGPPeerRequestRequestTypeDef(BaseModel): + virtualInterfaceId: Optional[str] = None + newBGPPeer: Optional[NewBGPPeerTypeDef] = None + +class CreateDirectConnectGatewayResultTypeDef(BaseModel): + directConnectGateway: DirectConnectGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDirectConnectGatewayResultTypeDef(BaseModel): + directConnectGateway: DirectConnectGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDirectConnectGatewaysResultTypeDef(BaseModel): + directConnectGateways: List[DirectConnectGatewayTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDirectConnectGatewayResponseTypeDef(BaseModel): + directConnectGateway: DirectConnectGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomerMetadataResponseTypeDef(BaseModel): + agreements: List[CustomerAgreementTypeDef] + nniPartnerType: NniPartnerTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectionLoaResponseTypeDef(BaseModel): + loa: LoaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInterconnectLoaResponseTypeDef(BaseModel): + loa: LoaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDirectConnectGatewayAssociationsRequestDescribeDirectConnectGatewayAssociationsPaginateTypeDef(BaseModel): + associationId: Optional[str] = None + associatedGatewayId: Optional[str] = None + directConnectGatewayId: Optional[str] = None + virtualGatewayId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDirectConnectGatewayAttachmentsRequestDescribeDirectConnectGatewayAttachmentsPaginateTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + virtualInterfaceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDirectConnectGatewaysRequestDescribeDirectConnectGatewaysPaginateTypeDef(BaseModel): + directConnectGatewayId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDirectConnectGatewayAttachmentsResultTypeDef(BaseModel): + directConnectGatewayAttachments: List[DirectConnectGatewayAttachmentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRouterConfigurationResponseTypeDef(BaseModel): + customerRouterConfig: str + router: RouterTypeTypeDef + virtualInterfaceId: str + virtualInterfaceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualInterfaceTestHistoryResponseTypeDef(BaseModel): + virtualInterfaceTestHistory: List[VirtualInterfaceTestHistoryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartBgpFailoverTestResponseTypeDef(BaseModel): + virtualInterfaceTest: VirtualInterfaceTestHistoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopBgpFailoverTestResponseTypeDef(BaseModel): + virtualInterfaceTest: VirtualInterfaceTestHistoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LocationsTypeDef(BaseModel): + locations: List[LocationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VirtualGatewaysTypeDef(BaseModel): + virtualGateways: List[VirtualGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InterconnectsTypeDef(BaseModel): + interconnects: List[InterconnectTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AllocatePrivateVirtualInterfaceRequestRequestTypeDef(BaseModel): + connectionId: str + ownerAccount: str + newPrivateVirtualInterfaceAllocation: NewPrivateVirtualInterfaceAllocationTypeDef + +class CreatePrivateVirtualInterfaceRequestRequestTypeDef(BaseModel): + connectionId: str + newPrivateVirtualInterface: NewPrivateVirtualInterfaceTypeDef + +class AllocatePublicVirtualInterfaceRequestRequestTypeDef(BaseModel): + connectionId: str + ownerAccount: str + newPublicVirtualInterfaceAllocation: NewPublicVirtualInterfaceAllocationTypeDef + +class CreatePublicVirtualInterfaceRequestRequestTypeDef(BaseModel): + connectionId: str + newPublicVirtualInterface: NewPublicVirtualInterfaceTypeDef + +class AllocateTransitVirtualInterfaceRequestRequestTypeDef(BaseModel): + connectionId: str + ownerAccount: str + newTransitVirtualInterfaceAllocation: NewTransitVirtualInterfaceAllocationTypeDef + +class CreateTransitVirtualInterfaceRequestRequestTypeDef(BaseModel): + connectionId: str + newTransitVirtualInterface: NewTransitVirtualInterfaceTypeDef + +class DescribeTagsResponseTypeDef(BaseModel): + resourceTags: List[ResourceTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectionsTypeDef(BaseModel): + connections: List[ConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LagResponseTypeDef(BaseModel): + connectionsBandwidth: str + numberOfConnections: int + lagId: str + ownerAccount: str + lagName: str + lagState: LagStateType + location: str + region: str + minimumLinks: int + awsDevice: str + awsDeviceV2: str + awsLogicalDeviceId: str + connections: List[ConnectionTypeDef] + allowsHostedConnections: bool + jumboFrameCapable: bool + hasLogicalRedundancy: HasLogicalRedundancyType + tags: List[TagTypeDef] + providerName: str + macSecCapable: bool + encryptionMode: str + macSecKeys: List[MacSecKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LagTypeDef(BaseModel): + connectionsBandwidth: Optional[str] = None + numberOfConnections: Optional[int] = None + lagId: Optional[str] = None + ownerAccount: Optional[str] = None + lagName: Optional[str] = None + lagState: Optional[LagStateType] = None + location: Optional[str] = None + region: Optional[str] = None + minimumLinks: Optional[int] = None + awsDevice: Optional[str] = None + awsDeviceV2: Optional[str] = None + awsLogicalDeviceId: Optional[str] = None + connections: Optional[List[ConnectionTypeDef]] = None + allowsHostedConnections: Optional[bool] = None + jumboFrameCapable: Optional[bool] = None + hasLogicalRedundancy: Optional[HasLogicalRedundancyType] = None + tags: Optional[List[TagTypeDef]] = None + providerName: Optional[str] = None + macSecCapable: Optional[bool] = None + encryptionMode: Optional[str] = None + macSecKeys: Optional[List[MacSecKeyTypeDef]] = None + +class CreateDirectConnectGatewayAssociationProposalResultTypeDef(BaseModel): + directConnectGatewayAssociationProposal: DirectConnectGatewayAssociationProposalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDirectConnectGatewayAssociationProposalResultTypeDef(BaseModel): + directConnectGatewayAssociationProposal: DirectConnectGatewayAssociationProposalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDirectConnectGatewayAssociationProposalsResultTypeDef(BaseModel): + directConnectGatewayAssociationProposals: List[ DirectConnectGatewayAssociationProposalTypeDef ] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptDirectConnectGatewayAssociationProposalResultTypeDef(BaseModel): + directConnectGatewayAssociation: DirectConnectGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDirectConnectGatewayAssociationResultTypeDef(BaseModel): + directConnectGatewayAssociation: DirectConnectGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDirectConnectGatewayAssociationResultTypeDef(BaseModel): + directConnectGatewayAssociation: DirectConnectGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDirectConnectGatewayAssociationsResultTypeDef(BaseModel): + directConnectGatewayAssociations: List[DirectConnectGatewayAssociationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDirectConnectGatewayAssociationResultTypeDef(BaseModel): + directConnectGatewayAssociation: DirectConnectGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AllocateTransitVirtualInterfaceResultTypeDef(BaseModel): + virtualInterface: VirtualInterfaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBGPPeerResponseTypeDef(BaseModel): + virtualInterface: VirtualInterfaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitVirtualInterfaceResultTypeDef(BaseModel): + virtualInterface: VirtualInterfaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBGPPeerResponseTypeDef(BaseModel): + virtualInterface: VirtualInterfaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VirtualInterfacesTypeDef(BaseModel): + virtualInterfaces: List[VirtualInterfaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LagsTypeDef(BaseModel): + lags: List[LagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/directconnect_constants.py b/aws_resource_validator/pydantic_models/directconnect_constants.py new file mode 100644 index 00000000..df9d4e02 --- /dev/null +++ b/aws_resource_validator/pydantic_models/directconnect_constants.py @@ -0,0 +1,466 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AddressFamilyType = Literal["ipv4", "ipv6"] +BGPPeerStateType = Literal["available", "deleted", "deleting", "pending", "verifying"] +BGPStatusType = Literal["down", "unknown", "up"] +ConnectionStateType = Literal["available", + "deleted", + "deleting", + "down", + "ordering", + "pending", + "rejected", + "requested", + "unknown",] +DescribeDirectConnectGatewayAssociationsPaginatorName = Literal["describe_direct_connect_gateway_associations"] +DescribeDirectConnectGatewayAttachmentsPaginatorName = Literal["describe_direct_connect_gateway_attachments"] +DescribeDirectConnectGatewaysPaginatorName = Literal["describe_direct_connect_gateways"] +DirectConnectGatewayAssociationProposalStateType = Literal["accepted", "deleted", "requested"] +DirectConnectGatewayAssociationStateType = Literal["associated", "associating", "disassociated", "disassociating", "updating"] +DirectConnectGatewayAttachmentStateType = Literal["attached", "attaching", "detached", "detaching"] +DirectConnectGatewayAttachmentTypeType = Literal["PrivateVirtualInterface", "TransitVirtualInterface"] +DirectConnectGatewayStateType = Literal["available", "deleted", "deleting", "pending"] +GatewayTypeType = Literal["transitGateway", "virtualPrivateGateway"] +HasLogicalRedundancyType = Literal["no", "unknown", "yes"] +InterconnectStateType = Literal["available", "deleted", "deleting", "down", "pending", "requested", "unknown"] +LagStateType = Literal["available", "deleted", "deleting", "down", "pending", "requested", "unknown"] +LoaContentTypeType = Literal["application/pdf"] +NniPartnerTypeType = Literal["nonPartner", "v1", "v2"] +VirtualInterfaceStateType = Literal["available", + "confirming", + "deleted", + "deleting", + "down", + "pending", + "rejected", + "unknown", + "verifying",] +DirectConnectServiceName = Literal["directconnect"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_direct_connect_gateway_associations", + "describe_direct_connect_gateway_attachments", + "describe_direct_connect_gateways",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/discovery_classes.py b/aws_resource_validator/pydantic_models/discovery_classes.py new file mode 100644 index 00000000..f9f071a1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/discovery_classes.py @@ -0,0 +1,466 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.discovery_constants import * + +class AgentConfigurationStatusTypeDef(BaseModel): + agentId: Optional[str] = None + operationSucceeded: Optional[bool] = None + description: Optional[str] = None + +class AgentNetworkInfoTypeDef(BaseModel): + ipAddress: Optional[str] = None + macAddress: Optional[str] = None + +class AssociateConfigurationItemsToApplicationRequestRequestTypeDef(BaseModel): + applicationConfigurationId: str + configurationIds: Sequence[str] + +class BatchDeleteAgentErrorTypeDef(BaseModel): + agentId: str + errorMessage: str + errorCode: DeleteAgentErrorCodeType + +class DeleteAgentTypeDef(BaseModel): + agentId: str + force: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeletionWarningTypeDef(BaseModel): + configurationId: Optional[str] = None + warningCode: Optional[int] = None + warningText: Optional[str] = None + +class FailedConfigurationTypeDef(BaseModel): + configurationId: Optional[str] = None + errorStatusCode: Optional[int] = None + errorMessage: Optional[str] = None + +class BatchDeleteImportDataErrorTypeDef(BaseModel): + importTaskId: Optional[str] = None + errorCode: Optional[BatchDeleteImportDataErrorCodeType] = None + errorDescription: Optional[str] = None + +class BatchDeleteImportDataRequestRequestTypeDef(BaseModel): + importTaskIds: Sequence[str] + deleteHistory: Optional[bool] = None + +class ConfigurationTagTypeDef(BaseModel): + configurationType: Optional[ConfigurationItemTypeType] = None + configurationId: Optional[str] = None + key: Optional[str] = None + value: Optional[str] = None + timeOfCreation: Optional[datetime] = None + +class ContinuousExportDescriptionTypeDef(BaseModel): + exportId: Optional[str] = None + status: Optional[ContinuousExportStatusType] = None + statusDetail: Optional[str] = None + s3Bucket: Optional[str] = None + startTime: Optional[datetime] = None + stopTime: Optional[datetime] = None + dataSource: Optional[Literal["AGENT"]] = None + schemaStorageConfig: Optional[Dict[str, str]] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class CustomerAgentInfoTypeDef(BaseModel): + activeAgents: int + healthyAgents: int + blackListedAgents: int + shutdownAgents: int + unhealthyAgents: int + totalAgents: int + unknownAgents: int + +class CustomerAgentlessCollectorInfoTypeDef(BaseModel): + activeAgentlessCollectors: int + healthyAgentlessCollectors: int + denyListedAgentlessCollectors: int + shutdownAgentlessCollectors: int + unhealthyAgentlessCollectors: int + totalAgentlessCollectors: int + unknownAgentlessCollectors: int + +class CustomerConnectorInfoTypeDef(BaseModel): + activeConnectors: int + healthyConnectors: int + blackListedConnectors: int + shutdownConnectors: int + unhealthyConnectors: int + totalConnectors: int + unknownConnectors: int + +class CustomerMeCollectorInfoTypeDef(BaseModel): + activeMeCollectors: int + healthyMeCollectors: int + denyListedMeCollectors: int + shutdownMeCollectors: int + unhealthyMeCollectors: int + totalMeCollectors: int + unknownMeCollectors: int + +class DeleteApplicationsRequestRequestTypeDef(BaseModel): + configurationIds: Sequence[str] + +class FilterTypeDef(BaseModel): + name: str + values: Sequence[str] + condition: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeBatchDeleteConfigurationTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class DescribeConfigurationsRequestRequestTypeDef(BaseModel): + configurationIds: Sequence[str] + +class DescribeContinuousExportsRequestRequestTypeDef(BaseModel): + exportIds: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeExportConfigurationsRequestRequestTypeDef(BaseModel): + exportIds: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ExportInfoTypeDef(BaseModel): + exportId: str + exportStatus: ExportStatusType + statusMessage: str + exportRequestTime: datetime + configurationsDownloadUrl: Optional[str] = None + isTruncated: Optional[bool] = None + requestedStartTime: Optional[datetime] = None + requestedEndTime: Optional[datetime] = None + +class ExportFilterTypeDef(BaseModel): + name: str + values: Sequence[str] + condition: str + +class ImportTaskFilterTypeDef(BaseModel): + name: Optional[ImportTaskFilterNameType] = None + values: Optional[Sequence[str]] = None + +class ImportTaskTypeDef(BaseModel): + importTaskId: Optional[str] = None + clientRequestToken: Optional[str] = None + name: Optional[str] = None + importUrl: Optional[str] = None + status: Optional[ImportStatusType] = None + importRequestTime: Optional[datetime] = None + importCompletionTime: Optional[datetime] = None + importDeletedTime: Optional[datetime] = None + serverImportSuccess: Optional[int] = None + serverImportFailure: Optional[int] = None + applicationImportSuccess: Optional[int] = None + applicationImportFailure: Optional[int] = None + errorsAndFailedEntriesZip: Optional[str] = None + +class TagFilterTypeDef(BaseModel): + name: str + values: Sequence[str] + +class DisassociateConfigurationItemsFromApplicationRequestRequestTypeDef(BaseModel): + applicationConfigurationId: str + configurationIds: Sequence[str] + +class ReservedInstanceOptionsTypeDef(BaseModel): + purchasingOption: PurchasingOptionType + offeringClass: OfferingClassType + termLength: TermLengthType + +class UsageMetricBasisTypeDef(BaseModel): + name: Optional[str] = None + percentageAdjust: Optional[float] = None + +class OrderByElementTypeDef(BaseModel): + fieldName: str + sortOrder: Optional[OrderStringType] = None + +class ListServerNeighborsRequestRequestTypeDef(BaseModel): + configurationId: str + portInformationNeeded: Optional[bool] = None + neighborConfigurationIds: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class NeighborConnectionDetailTypeDef(BaseModel): + sourceServerId: str + destinationServerId: str + connectionsCount: int + destinationPort: Optional[int] = None + transportProtocol: Optional[str] = None + +class StartBatchDeleteConfigurationTaskRequestRequestTypeDef(BaseModel): + configurationType: Literal["SERVER"] + configurationIds: Sequence[str] + +class StartDataCollectionByAgentIdsRequestRequestTypeDef(BaseModel): + agentIds: Sequence[str] + +class StartImportTaskRequestRequestTypeDef(BaseModel): + name: str + importUrl: str + clientRequestToken: Optional[str] = None + +class StopContinuousExportRequestRequestTypeDef(BaseModel): + exportId: str + +class StopDataCollectionByAgentIdsRequestRequestTypeDef(BaseModel): + agentIds: Sequence[str] + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + configurationId: str + name: Optional[str] = None + description: Optional[str] = None + +class AgentInfoTypeDef(BaseModel): + agentId: Optional[str] = None + hostName: Optional[str] = None + agentNetworkInfoList: Optional[List[AgentNetworkInfoTypeDef]] = None + connectorId: Optional[str] = None + version: Optional[str] = None + health: Optional[AgentStatusType] = None + lastHealthPingTime: Optional[str] = None + collectionStatus: Optional[str] = None + agentType: Optional[str] = None + registeredTime: Optional[str] = None + +class BatchDeleteAgentsRequestRequestTypeDef(BaseModel): + deleteAgents: Sequence[DeleteAgentTypeDef] + +class BatchDeleteAgentsResponseTypeDef(BaseModel): + errors: List[BatchDeleteAgentErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationResponseTypeDef(BaseModel): + configurationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationsResponseTypeDef(BaseModel): + configurations: List[Dict[str, str]] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportConfigurationsResponseTypeDef(BaseModel): + exportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationsResponseTypeDef(BaseModel): + configurations: List[Dict[str, str]] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartBatchDeleteConfigurationTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartContinuousExportResponseTypeDef(BaseModel): + exportId: str + s3Bucket: str + startTime: datetime + dataSource: Literal["AGENT"] + schemaStorageConfig: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataCollectionByAgentIdsResponseTypeDef(BaseModel): + agentsConfigurationStatus: List[AgentConfigurationStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartExportTaskResponseTypeDef(BaseModel): + exportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopContinuousExportResponseTypeDef(BaseModel): + startTime: datetime + stopTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopDataCollectionByAgentIdsResponseTypeDef(BaseModel): + agentsConfigurationStatus: List[AgentConfigurationStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteConfigurationTaskTypeDef(BaseModel): + taskId: Optional[str] = None + status: Optional[BatchDeleteConfigurationTaskStatusType] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + configurationType: Optional[Literal["SERVER"]] = None + requestedConfigurations: Optional[List[str]] = None + deletedConfigurations: Optional[List[str]] = None + failedConfigurations: Optional[List[FailedConfigurationTypeDef]] = None + deletionWarnings: Optional[List[DeletionWarningTypeDef]] = None + +class BatchDeleteImportDataResponseTypeDef(BaseModel): + errors: List[BatchDeleteImportDataErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTagsResponseTypeDef(BaseModel): + tags: List[ConfigurationTagTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContinuousExportsResponseTypeDef(BaseModel): + descriptions: List[ContinuousExportDescriptionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTagsRequestRequestTypeDef(BaseModel): + configurationIds: Sequence[str] + tags: Sequence[TagTypeDef] + +class DeleteTagsRequestRequestTypeDef(BaseModel): + configurationIds: Sequence[str] + tags: Optional[Sequence[TagTypeDef]] = None + +class GetDiscoverySummaryResponseTypeDef(BaseModel): + servers: int + applications: int + serversMappedToApplications: int + serversMappedtoTags: int + agentSummary: CustomerAgentInfoTypeDef + connectorSummary: CustomerConnectorInfoTypeDef + meCollectorSummary: CustomerMeCollectorInfoTypeDef + agentlessCollectorSummary: CustomerAgentlessCollectorInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAgentsRequestRequestTypeDef(BaseModel): + agentIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeAgentsRequestDescribeAgentsPaginateTypeDef(BaseModel): + agentIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeContinuousExportsRequestDescribeContinuousExportsPaginateTypeDef(BaseModel): + exportIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeExportConfigurationsRequestDescribeExportConfigurationsPaginateTypeDef(BaseModel): + exportIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeExportConfigurationsResponseTypeDef(BaseModel): + exportsInfo: List[ExportInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExportTasksResponseTypeDef(BaseModel): + exportsInfo: List[ExportInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExportTasksRequestDescribeExportTasksPaginateTypeDef(BaseModel): + exportIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[ExportFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeExportTasksRequestRequestTypeDef(BaseModel): + exportIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[ExportFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeImportTasksRequestDescribeImportTasksPaginateTypeDef(BaseModel): + filters: Optional[Sequence[ImportTaskFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImportTasksRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[ImportTaskFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeImportTasksResponseTypeDef(BaseModel): + nextToken: str + tasks: List[ImportTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportTaskResponseTypeDef(BaseModel): + task: ImportTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTagsRequestDescribeTagsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[TagFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTagsRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[TagFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class Ec2RecommendationsExportPreferencesTypeDef(BaseModel): + enabled: Optional[bool] = None + cpuPerformanceMetricBasis: Optional[UsageMetricBasisTypeDef] = None + ramPerformanceMetricBasis: Optional[UsageMetricBasisTypeDef] = None + tenancy: Optional[TenancyType] = None + excludedInstanceTypes: Optional[Sequence[str]] = None + preferredRegion: Optional[str] = None + reservedInstanceOptions: Optional[ReservedInstanceOptionsTypeDef] = None + +class ListConfigurationsRequestListConfigurationsPaginateTypeDef(BaseModel): + configurationType: ConfigurationItemTypeType + filters: Optional[Sequence[FilterTypeDef]] = None + orderBy: Optional[Sequence[OrderByElementTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationsRequestRequestTypeDef(BaseModel): + configurationType: ConfigurationItemTypeType + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + orderBy: Optional[Sequence[OrderByElementTypeDef]] = None + +class ListServerNeighborsResponseTypeDef(BaseModel): + neighbors: List[NeighborConnectionDetailTypeDef] + nextToken: str + knownDependencyCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAgentsResponseTypeDef(BaseModel): + agentsInfo: List[AgentInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBatchDeleteConfigurationTaskResponseTypeDef(BaseModel): + task: BatchDeleteConfigurationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportPreferencesTypeDef(BaseModel): + ec2RecommendationsPreferences: Optional[Ec2RecommendationsExportPreferencesTypeDef] = None + +class StartExportTaskRequestRequestTypeDef(BaseModel): + exportDataFormat: Optional[Sequence[Literal["CSV"]]] = None + filters: Optional[Sequence[ExportFilterTypeDef]] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + preferences: Optional[ExportPreferencesTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/discovery_constants.py b/aws_resource_validator/pydantic_models/discovery_constants.py new file mode 100644 index 00000000..dd875f15 --- /dev/null +++ b/aws_resource_validator/pydantic_models/discovery_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgentStatusType = Literal["BLACKLISTED", "HEALTHY", "RUNNING", "SHUTDOWN", "UNHEALTHY", "UNKNOWN"] +BatchDeleteConfigurationTaskStatusType = Literal["COMPLETED", "DELETING", "FAILED", "INITIALIZING", "VALIDATING"] +BatchDeleteImportDataErrorCodeType = Literal["INTERNAL_SERVER_ERROR", "NOT_FOUND", "OVER_LIMIT"] +ConfigurationItemTypeType = Literal["APPLICATION", "CONNECTION", "PROCESS", "SERVER"] +ContinuousExportStatusType = Literal["ACTIVE", + "ERROR", + "INACTIVE", + "START_FAILED", + "START_IN_PROGRESS", + "STOP_FAILED", + "STOP_IN_PROGRESS",] +DataSourceType = Literal["AGENT"] +DeleteAgentErrorCodeType = Literal["AGENT_IN_USE", "INTERNAL_SERVER_ERROR", "NOT_FOUND"] +DeletionConfigurationItemTypeType = Literal["SERVER"] +DescribeAgentsPaginatorName = Literal["describe_agents"] +DescribeContinuousExportsPaginatorName = Literal["describe_continuous_exports"] +DescribeExportConfigurationsPaginatorName = Literal["describe_export_configurations"] +DescribeExportTasksPaginatorName = Literal["describe_export_tasks"] +DescribeImportTasksPaginatorName = Literal["describe_import_tasks"] +DescribeTagsPaginatorName = Literal["describe_tags"] +ExportDataFormatType = Literal["CSV"] +ExportStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +ImportStatusType = Literal["DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_FAILED_LIMIT_EXCEEDED", + "DELETE_IN_PROGRESS", + "IMPORT_COMPLETE", + "IMPORT_COMPLETE_WITH_ERRORS", + "IMPORT_FAILED", + "IMPORT_FAILED_RECORD_LIMIT_EXCEEDED", + "IMPORT_FAILED_SERVER_LIMIT_EXCEEDED", + "IMPORT_IN_PROGRESS", + "INTERNAL_ERROR",] +ImportTaskFilterNameType = Literal["IMPORT_TASK_ID", "NAME", "STATUS"] +ListConfigurationsPaginatorName = Literal["list_configurations"] +OfferingClassType = Literal["CONVERTIBLE", "STANDARD"] +OrderStringType = Literal["ASC", "DESC"] +PurchasingOptionType = Literal["ALL_UPFRONT", "NO_UPFRONT", "PARTIAL_UPFRONT"] +TenancyType = Literal["DEDICATED", "SHARED"] +TermLengthType = Literal["ONE_YEAR", "THREE_YEAR"] +ApplicationDiscoveryServiceServiceName = Literal["discovery"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_agents", + "describe_continuous_exports", + "describe_export_configurations", + "describe_export_tasks", + "describe_import_tasks", + "describe_tags", + "list_configurations",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/dlm_classes.py b/aws_resource_validator/pydantic_models/dlm_classes.py new file mode 100644 index 00000000..a330305b --- /dev/null +++ b/aws_resource_validator/pydantic_models/dlm_classes.py @@ -0,0 +1,244 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.dlm_constants import * + +class RetentionArchiveTierTypeDef(BaseModel): + Count: Optional[int] = None + Interval: Optional[int] = None + IntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class CrossRegionCopyTargetTypeDef(BaseModel): + TargetRegion: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ScriptTypeDef(BaseModel): + ExecutionHandler: str + Stages: Optional[Sequence[StageValuesType]] = None + ExecutionHandlerService: Optional[Literal["AWS_SYSTEMS_MANAGER"]] = None + ExecuteOperationOnScriptFailure: Optional[bool] = None + ExecutionTimeout: Optional[int] = None + MaximumRetryCount: Optional[int] = None + +class CrossRegionCopyRetainRuleTypeDef(BaseModel): + Interval: Optional[int] = None + IntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class EncryptionConfigurationTypeDef(BaseModel): + Encrypted: bool + CmkArn: Optional[str] = None + +class CrossRegionCopyDeprecateRuleTypeDef(BaseModel): + Interval: Optional[int] = None + IntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class DeleteLifecyclePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + +class DeprecateRuleTypeDef(BaseModel): + Count: Optional[int] = None + Interval: Optional[int] = None + IntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class EventParametersTypeDef(BaseModel): + EventType: Literal["shareSnapshot"] + SnapshotOwner: Sequence[str] + DescriptionRegex: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class FastRestoreRuleTypeDef(BaseModel): + AvailabilityZones: Sequence[str] + Count: Optional[int] = None + Interval: Optional[int] = None + IntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class GetLifecyclePoliciesRequestRequestTypeDef(BaseModel): + PolicyIds: Optional[Sequence[str]] = None + State: Optional[GettablePolicyStateValuesType] = None + ResourceTypes: Optional[Sequence[ResourceTypeValuesType]] = None + TargetTags: Optional[Sequence[str]] = None + TagsToAdd: Optional[Sequence[str]] = None + DefaultPolicyType: Optional[DefaultPoliciesTypeValuesType] = None + +class LifecyclePolicySummaryTypeDef(BaseModel): + PolicyId: Optional[str] = None + Description: Optional[str] = None + State: Optional[GettablePolicyStateValuesType] = None + Tags: Optional[Dict[str, str]] = None + PolicyType: Optional[PolicyTypeValuesType] = None + DefaultPolicy: Optional[bool] = None + +class GetLifecyclePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class RetainRuleTypeDef(BaseModel): + Count: Optional[int] = None + Interval: Optional[int] = None + IntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class ShareRuleTypeDef(BaseModel): + TargetAccounts: Sequence[str] + UnshareInterval: Optional[int] = None + UnshareIntervalUnit: Optional[RetentionIntervalUnitValuesType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class ArchiveRetainRuleTypeDef(BaseModel): + RetentionArchiveTier: RetentionArchiveTierTypeDef + +class CreateLifecyclePolicyResponseTypeDef(BaseModel): + PolicyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleTypeDef(BaseModel): + Location: Optional[LocationValuesType] = None + Interval: Optional[int] = None + IntervalUnit: Optional[Literal["HOURS"]] = None + Times: Optional[Sequence[str]] = None + CronExpression: Optional[str] = None + Scripts: Optional[Sequence[ScriptTypeDef]] = None + +class CrossRegionCopyActionTypeDef(BaseModel): + Target: str + EncryptionConfiguration: EncryptionConfigurationTypeDef + RetainRule: Optional[CrossRegionCopyRetainRuleTypeDef] = None + +class CrossRegionCopyRuleTypeDef(BaseModel): + Encrypted: bool + TargetRegion: Optional[str] = None + Target: Optional[str] = None + CmkArn: Optional[str] = None + CopyTags: Optional[bool] = None + RetainRule: Optional[CrossRegionCopyRetainRuleTypeDef] = None + DeprecateRule: Optional[CrossRegionCopyDeprecateRuleTypeDef] = None + +class EventSourceTypeDef(BaseModel): + Type: Literal["MANAGED_CWE"] + Parameters: Optional[EventParametersTypeDef] = None + +class ExclusionsTypeDef(BaseModel): + ExcludeBootVolumes: Optional[bool] = None + ExcludeVolumeTypes: Optional[Sequence[str]] = None + ExcludeTags: Optional[Sequence[TagTypeDef]] = None + +class ParametersTypeDef(BaseModel): + ExcludeBootVolume: Optional[bool] = None + NoReboot: Optional[bool] = None + ExcludeDataVolumeTags: Optional[Sequence[TagTypeDef]] = None + +class GetLifecyclePoliciesResponseTypeDef(BaseModel): + Policies: List[LifecyclePolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ArchiveRuleTypeDef(BaseModel): + RetainRule: ArchiveRetainRuleTypeDef + +class ActionTypeDef(BaseModel): + Name: str + CrossRegionCopy: Sequence[CrossRegionCopyActionTypeDef] + +class ScheduleTypeDef(BaseModel): + Name: Optional[str] = None + CopyTags: Optional[bool] = None + TagsToAdd: Optional[Sequence[TagTypeDef]] = None + VariableTags: Optional[Sequence[TagTypeDef]] = None + CreateRule: Optional[CreateRuleTypeDef] = None + RetainRule: Optional[RetainRuleTypeDef] = None + FastRestoreRule: Optional[FastRestoreRuleTypeDef] = None + CrossRegionCopyRules: Optional[Sequence[CrossRegionCopyRuleTypeDef]] = None + ShareRules: Optional[Sequence[ShareRuleTypeDef]] = None + DeprecateRule: Optional[DeprecateRuleTypeDef] = None + ArchiveRule: Optional[ArchiveRuleTypeDef] = None + +class PolicyDetailsTypeDef(BaseModel): + PolicyType: Optional[PolicyTypeValuesType] = None + ResourceTypes: Optional[Sequence[ResourceTypeValuesType]] = None + ResourceLocations: Optional[Sequence[ResourceLocationValuesType]] = None + TargetTags: Optional[Sequence[TagTypeDef]] = None + Schedules: Optional[Sequence[ScheduleTypeDef]] = None + Parameters: Optional[ParametersTypeDef] = None + EventSource: Optional[EventSourceTypeDef] = None + Actions: Optional[Sequence[ActionTypeDef]] = None + PolicyLanguage: Optional[PolicyLanguageValuesType] = None + ResourceType: Optional[ResourceTypeValuesType] = None + CreateInterval: Optional[int] = None + RetainInterval: Optional[int] = None + CopyTags: Optional[bool] = None + CrossRegionCopyTargets: Optional[Sequence[CrossRegionCopyTargetTypeDef]] = None + ExtendDeletion: Optional[bool] = None + Exclusions: Optional[ExclusionsTypeDef] = None + +class CreateLifecyclePolicyRequestRequestTypeDef(BaseModel): + ExecutionRoleArn: str + Description: str + State: SettablePolicyStateValuesType + PolicyDetails: Optional[PolicyDetailsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + DefaultPolicy: Optional[DefaultPolicyTypeValuesType] = None + CreateInterval: Optional[int] = None + RetainInterval: Optional[int] = None + CopyTags: Optional[bool] = None + ExtendDeletion: Optional[bool] = None + CrossRegionCopyTargets: Optional[Sequence[CrossRegionCopyTargetTypeDef]] = None + Exclusions: Optional[ExclusionsTypeDef] = None + +class LifecyclePolicyTypeDef(BaseModel): + PolicyId: Optional[str] = None + Description: Optional[str] = None + State: Optional[GettablePolicyStateValuesType] = None + StatusMessage: Optional[str] = None + ExecutionRoleArn: Optional[str] = None + DateCreated: Optional[datetime] = None + DateModified: Optional[datetime] = None + PolicyDetails: Optional[PolicyDetailsTypeDef] = None + Tags: Optional[Dict[str, str]] = None + PolicyArn: Optional[str] = None + DefaultPolicy: Optional[bool] = None + +class UpdateLifecyclePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + ExecutionRoleArn: Optional[str] = None + State: Optional[SettablePolicyStateValuesType] = None + Description: Optional[str] = None + PolicyDetails: Optional[PolicyDetailsTypeDef] = None + CreateInterval: Optional[int] = None + RetainInterval: Optional[int] = None + CopyTags: Optional[bool] = None + ExtendDeletion: Optional[bool] = None + CrossRegionCopyTargets: Optional[Sequence[CrossRegionCopyTargetTypeDef]] = None + Exclusions: Optional[ExclusionsTypeDef] = None + +class GetLifecyclePolicyResponseTypeDef(BaseModel): + Policy: LifecyclePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/dlm_constants.py b/aws_resource_validator/pydantic_models/dlm_constants.py new file mode 100644 index 00000000..5265ebbb --- /dev/null +++ b/aws_resource_validator/pydantic_models/dlm_constants.py @@ -0,0 +1,430 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DefaultPoliciesTypeValuesType = Literal["ALL", "INSTANCE", "VOLUME"] +DefaultPolicyTypeValuesType = Literal["INSTANCE", "VOLUME"] +EventSourceValuesType = Literal["MANAGED_CWE"] +EventTypeValuesType = Literal["shareSnapshot"] +ExecutionHandlerServiceValuesType = Literal["AWS_SYSTEMS_MANAGER"] +GettablePolicyStateValuesType = Literal["DISABLED", "ENABLED", "ERROR"] +IntervalUnitValuesType = Literal["HOURS"] +LocationValuesType = Literal["CLOUD", "OUTPOST_LOCAL"] +PolicyLanguageValuesType = Literal["SIMPLIFIED", "STANDARD"] +PolicyTypeValuesType = Literal["EBS_SNAPSHOT_MANAGEMENT", "EVENT_BASED_POLICY", "IMAGE_MANAGEMENT"] +ResourceLocationValuesType = Literal["CLOUD", "OUTPOST"] +ResourceTypeValuesType = Literal["INSTANCE", "VOLUME"] +RetentionIntervalUnitValuesType = Literal["DAYS", "MONTHS", "WEEKS", "YEARS"] +SettablePolicyStateValuesType = Literal["DISABLED", "ENABLED"] +StageValuesType = Literal["POST", "PRE"] +DLMServiceName = Literal["dlm"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/dms_classes.py b/aws_resource_validator/pydantic_models/dms_classes.py new file mode 100644 index 00000000..0bfdfc99 --- /dev/null +++ b/aws_resource_validator/pydantic_models/dms_classes.py @@ -0,0 +1,2331 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.dms_constants import * + +class AccountQuotaTypeDef(BaseModel): + AccountQuotaName: Optional[str] = None + Used: Optional[int] = None + Max: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + ResourceArn: Optional[str] = None + +class ApplyPendingMaintenanceActionMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: str + ApplyAction: str + OptInType: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class BatchStartRecommendationsErrorEntryTypeDef(BaseModel): + DatabaseId: Optional[str] = None + Message: Optional[str] = None + Code: Optional[str] = None + +class CancelReplicationTaskAssessmentRunMessageRequestTypeDef(BaseModel): + ReplicationTaskAssessmentRunArn: str + +class CertificateTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + CertificateCreationDate: Optional[datetime] = None + CertificatePem: Optional[str] = None + CertificateWallet: Optional[bytes] = None + CertificateArn: Optional[str] = None + CertificateOwner: Optional[str] = None + ValidFromDate: Optional[datetime] = None + ValidToDate: Optional[datetime] = None + SigningAlgorithm: Optional[str] = None + KeyLength: Optional[int] = None + +class CollectorHealthCheckTypeDef(BaseModel): + CollectorStatus: Optional[CollectorStatusType] = None + LocalCollectorS3Access: Optional[bool] = None + WebCollectorS3Access: Optional[bool] = None + WebCollectorGrantedRoleBasedAccess: Optional[bool] = None + +class InventoryDataTypeDef(BaseModel): + NumberOfDatabases: Optional[int] = None + NumberOfSchemas: Optional[int] = None + +class CollectorShortInfoResponseTypeDef(BaseModel): + CollectorReferencedId: Optional[str] = None + CollectorName: Optional[str] = None + +class ComputeConfigOutputTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + DnsNameServers: Optional[str] = None + KmsKeyId: Optional[str] = None + MaxCapacityUnits: Optional[int] = None + MinCapacityUnits: Optional[int] = None + MultiAZ: Optional[bool] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSubnetGroupId: Optional[str] = None + VpcSecurityGroupIds: Optional[List[str]] = None + +class ComputeConfigTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + DnsNameServers: Optional[str] = None + KmsKeyId: Optional[str] = None + MaxCapacityUnits: Optional[int] = None + MinCapacityUnits: Optional[int] = None + MultiAZ: Optional[bool] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSubnetGroupId: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + +class ConnectionTypeDef(BaseModel): + ReplicationInstanceArn: Optional[str] = None + EndpointArn: Optional[str] = None + Status: Optional[str] = None + LastFailureMessage: Optional[str] = None + EndpointIdentifier: Optional[str] = None + ReplicationInstanceIdentifier: Optional[str] = None + +class DmsTransferSettingsTypeDef(BaseModel): + ServiceAccessRoleArn: Optional[str] = None + BucketName: Optional[str] = None + +class DocDbSettingsTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + NestingLevel: Optional[NestingLevelValueType] = None + ExtractDocId: Optional[bool] = None + DocsToInvestigate: Optional[int] = None + KmsKeyId: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + UseUpdateLookUp: Optional[bool] = None + ReplicateShardCollections: Optional[bool] = None + +class DynamoDbSettingsTypeDef(BaseModel): + ServiceAccessRoleArn: str + +class ElasticsearchSettingsTypeDef(BaseModel): + ServiceAccessRoleArn: str + EndpointUri: str + FullLoadErrorPercentage: Optional[int] = None + ErrorRetryDuration: Optional[int] = None + UseNewMappingType: Optional[bool] = None + +class GcpMySQLSettingsTypeDef(BaseModel): + AfterConnectScript: Optional[str] = None + CleanSourceMetadataOnMismatch: Optional[bool] = None + DatabaseName: Optional[str] = None + EventsPollInterval: Optional[int] = None + TargetDbType: Optional[TargetDbTypeType] = None + MaxFileSize: Optional[int] = None + ParallelLoadThreads: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + ServerName: Optional[str] = None + ServerTimezone: Optional[str] = None + Username: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + +class IBMDb2SettingsTypeDef(BaseModel): + DatabaseName: Optional[str] = None + Password: Optional[str] = None + Port: Optional[int] = None + ServerName: Optional[str] = None + SetDataCaptureChanges: Optional[bool] = None + CurrentLsn: Optional[str] = None + MaxKBytesPerRead: Optional[int] = None + Username: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + LoadTimeout: Optional[int] = None + WriteBufferSize: Optional[int] = None + MaxFileSize: Optional[int] = None + KeepCsvFiles: Optional[bool] = None + +class KafkaSettingsTypeDef(BaseModel): + Broker: Optional[str] = None + Topic: Optional[str] = None + MessageFormat: Optional[MessageFormatValueType] = None + IncludeTransactionDetails: Optional[bool] = None + IncludePartitionValue: Optional[bool] = None + PartitionIncludeSchemaTable: Optional[bool] = None + IncludeTableAlterOperations: Optional[bool] = None + IncludeControlDetails: Optional[bool] = None + MessageMaxBytes: Optional[int] = None + IncludeNullAndEmpty: Optional[bool] = None + SecurityProtocol: Optional[KafkaSecurityProtocolType] = None + SslClientCertificateArn: Optional[str] = None + SslClientKeyArn: Optional[str] = None + SslClientKeyPassword: Optional[str] = None + SslCaCertificateArn: Optional[str] = None + SaslUsername: Optional[str] = None + SaslPassword: Optional[str] = None + NoHexPrefix: Optional[bool] = None + SaslMechanism: Optional[KafkaSaslMechanismType] = None + SslEndpointIdentificationAlgorithm: Optional[ KafkaSslEndpointIdentificationAlgorithmType ] = None + +class KinesisSettingsTypeDef(BaseModel): + StreamArn: Optional[str] = None + MessageFormat: Optional[MessageFormatValueType] = None + ServiceAccessRoleArn: Optional[str] = None + IncludeTransactionDetails: Optional[bool] = None + IncludePartitionValue: Optional[bool] = None + PartitionIncludeSchemaTable: Optional[bool] = None + IncludeTableAlterOperations: Optional[bool] = None + IncludeControlDetails: Optional[bool] = None + IncludeNullAndEmpty: Optional[bool] = None + NoHexPrefix: Optional[bool] = None + +class MicrosoftSQLServerSettingsTypeDef(BaseModel): + Port: Optional[int] = None + BcpPacketSize: Optional[int] = None + DatabaseName: Optional[str] = None + ControlTablesFileGroup: Optional[str] = None + Password: Optional[str] = None + QuerySingleAlwaysOnNode: Optional[bool] = None + ReadBackupOnly: Optional[bool] = None + SafeguardPolicy: Optional[SafeguardPolicyType] = None + ServerName: Optional[str] = None + Username: Optional[str] = None + UseBcpFullLoad: Optional[bool] = None + UseThirdPartyBackupDevice: Optional[bool] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + TrimSpaceInChar: Optional[bool] = None + TlogAccessMode: Optional[TlogAccessModeType] = None + ForceLobLookup: Optional[bool] = None + +class MongoDbSettingsTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + AuthType: Optional[AuthTypeValueType] = None + AuthMechanism: Optional[AuthMechanismValueType] = None + NestingLevel: Optional[NestingLevelValueType] = None + ExtractDocId: Optional[str] = None + DocsToInvestigate: Optional[str] = None + AuthSource: Optional[str] = None + KmsKeyId: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + UseUpdateLookUp: Optional[bool] = None + ReplicateShardCollections: Optional[bool] = None + +class MySQLSettingsTypeDef(BaseModel): + AfterConnectScript: Optional[str] = None + CleanSourceMetadataOnMismatch: Optional[bool] = None + DatabaseName: Optional[str] = None + EventsPollInterval: Optional[int] = None + TargetDbType: Optional[TargetDbTypeType] = None + MaxFileSize: Optional[int] = None + ParallelLoadThreads: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + ServerName: Optional[str] = None + ServerTimezone: Optional[str] = None + Username: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + ExecuteTimeout: Optional[int] = None + +class NeptuneSettingsTypeDef(BaseModel): + S3BucketName: str + S3BucketFolder: str + ServiceAccessRoleArn: Optional[str] = None + ErrorRetryDuration: Optional[int] = None + MaxFileSize: Optional[int] = None + MaxRetryCount: Optional[int] = None + IamAuthEnabled: Optional[bool] = None + +class OracleSettingsTypeDef(BaseModel): + AddSupplementalLogging: Optional[bool] = None + ArchivedLogDestId: Optional[int] = None + AdditionalArchivedLogDestId: Optional[int] = None + ExtraArchivedLogDestIds: Optional[Sequence[int]] = None + AllowSelectNestedTables: Optional[bool] = None + ParallelAsmReadThreads: Optional[int] = None + ReadAheadBlocks: Optional[int] = None + AccessAlternateDirectly: Optional[bool] = None + UseAlternateFolderForOnline: Optional[bool] = None + OraclePathPrefix: Optional[str] = None + UsePathPrefix: Optional[str] = None + ReplacePathPrefix: Optional[bool] = None + EnableHomogenousTablespace: Optional[bool] = None + DirectPathNoLog: Optional[bool] = None + ArchivedLogsOnly: Optional[bool] = None + AsmPassword: Optional[str] = None + AsmServer: Optional[str] = None + AsmUser: Optional[str] = None + CharLengthSemantics: Optional[CharLengthSemanticsType] = None + DatabaseName: Optional[str] = None + DirectPathParallelLoad: Optional[bool] = None + FailTasksOnLobTruncation: Optional[bool] = None + NumberDatatypeScale: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + ReadTableSpaceName: Optional[bool] = None + RetryInterval: Optional[int] = None + SecurityDbEncryption: Optional[str] = None + SecurityDbEncryptionName: Optional[str] = None + ServerName: Optional[str] = None + SpatialDataOptionToGeoJsonFunctionName: Optional[str] = None + StandbyDelayTime: Optional[int] = None + Username: Optional[str] = None + UseBFile: Optional[bool] = None + UseDirectPathFullLoad: Optional[bool] = None + UseLogminerReader: Optional[bool] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + SecretsManagerOracleAsmAccessRoleArn: Optional[str] = None + SecretsManagerOracleAsmSecretId: Optional[str] = None + TrimSpaceInChar: Optional[bool] = None + ConvertTimestampWithZoneToUTC: Optional[bool] = None + OpenTransactionWindow: Optional[int] = None + +class PostgreSQLSettingsTypeDef(BaseModel): + AfterConnectScript: Optional[str] = None + CaptureDdls: Optional[bool] = None + MaxFileSize: Optional[int] = None + DatabaseName: Optional[str] = None + DdlArtifactsSchema: Optional[str] = None + ExecuteTimeout: Optional[int] = None + FailTasksOnLobTruncation: Optional[bool] = None + HeartbeatEnable: Optional[bool] = None + HeartbeatSchema: Optional[str] = None + HeartbeatFrequency: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + ServerName: Optional[str] = None + Username: Optional[str] = None + SlotName: Optional[str] = None + PluginName: Optional[PluginNameValueType] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + TrimSpaceInChar: Optional[bool] = None + MapBooleanAsBoolean: Optional[bool] = None + MapJsonbAsClob: Optional[bool] = None + MapLongVarcharAs: Optional[LongVarcharMappingTypeType] = None + DatabaseMode: Optional[DatabaseModeType] = None + BabelfishDatabaseName: Optional[str] = None + +class RedisSettingsTypeDef(BaseModel): + ServerName: str + Port: int + SslSecurityProtocol: Optional[SslSecurityProtocolValueType] = None + AuthType: Optional[RedisAuthTypeValueType] = None + AuthUserName: Optional[str] = None + AuthPassword: Optional[str] = None + SslCaCertificateArn: Optional[str] = None + +class RedshiftSettingsTypeDef(BaseModel): + AcceptAnyDate: Optional[bool] = None + AfterConnectScript: Optional[str] = None + BucketFolder: Optional[str] = None + BucketName: Optional[str] = None + CaseSensitiveNames: Optional[bool] = None + CompUpdate: Optional[bool] = None + ConnectionTimeout: Optional[int] = None + DatabaseName: Optional[str] = None + DateFormat: Optional[str] = None + EmptyAsNull: Optional[bool] = None + EncryptionMode: Optional[EncryptionModeValueType] = None + ExplicitIds: Optional[bool] = None + FileTransferUploadStreams: Optional[int] = None + LoadTimeout: Optional[int] = None + MaxFileSize: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + RemoveQuotes: Optional[bool] = None + ReplaceInvalidChars: Optional[str] = None + ReplaceChars: Optional[str] = None + ServerName: Optional[str] = None + ServiceAccessRoleArn: Optional[str] = None + ServerSideEncryptionKmsKeyId: Optional[str] = None + TimeFormat: Optional[str] = None + TrimBlanks: Optional[bool] = None + TruncateColumns: Optional[bool] = None + Username: Optional[str] = None + WriteBufferSize: Optional[int] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + MapBooleanAsBoolean: Optional[bool] = None + +class S3SettingsTypeDef(BaseModel): + ServiceAccessRoleArn: Optional[str] = None + ExternalTableDefinition: Optional[str] = None + CsvRowDelimiter: Optional[str] = None + CsvDelimiter: Optional[str] = None + BucketFolder: Optional[str] = None + BucketName: Optional[str] = None + CompressionType: Optional[CompressionTypeValueType] = None + EncryptionMode: Optional[EncryptionModeValueType] = None + ServerSideEncryptionKmsKeyId: Optional[str] = None + DataFormat: Optional[DataFormatValueType] = None + EncodingType: Optional[EncodingTypeValueType] = None + DictPageSizeLimit: Optional[int] = None + RowGroupLength: Optional[int] = None + DataPageSize: Optional[int] = None + ParquetVersion: Optional[ParquetVersionValueType] = None + EnableStatistics: Optional[bool] = None + IncludeOpForFullLoad: Optional[bool] = None + CdcInsertsOnly: Optional[bool] = None + TimestampColumnName: Optional[str] = None + ParquetTimestampInMillisecond: Optional[bool] = None + CdcInsertsAndUpdates: Optional[bool] = None + DatePartitionEnabled: Optional[bool] = None + DatePartitionSequence: Optional[DatePartitionSequenceValueType] = None + DatePartitionDelimiter: Optional[DatePartitionDelimiterValueType] = None + UseCsvNoSupValue: Optional[bool] = None + CsvNoSupValue: Optional[str] = None + PreserveTransactions: Optional[bool] = None + CdcPath: Optional[str] = None + UseTaskStartTimeForFullLoadTimestamp: Optional[bool] = None + CannedAclForObjects: Optional[CannedAclForObjectsValueType] = None + AddColumnName: Optional[bool] = None + CdcMaxBatchInterval: Optional[int] = None + CdcMinFileSize: Optional[int] = None + CsvNullValue: Optional[str] = None + IgnoreHeaderRows: Optional[int] = None + MaxFileSize: Optional[int] = None + Rfc4180: Optional[bool] = None + DatePartitionTimezone: Optional[str] = None + AddTrailingPaddingCharacter: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + GlueCatalogGeneration: Optional[bool] = None + +class SybaseSettingsTypeDef(BaseModel): + DatabaseName: Optional[str] = None + Password: Optional[str] = None + Port: Optional[int] = None + ServerName: Optional[str] = None + Username: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + +class TimestreamSettingsTypeDef(BaseModel): + DatabaseName: str + MemoryDuration: int + MagneticDuration: int + CdcInsertsAndUpdates: Optional[bool] = None + EnableMagneticStoreWrites: Optional[bool] = None + +class EventSubscriptionTypeDef(BaseModel): + CustomerAwsId: Optional[str] = None + CustSubscriptionId: Optional[str] = None + SnsTopicArn: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + SourceType: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + EventCategoriesList: Optional[List[str]] = None + Enabled: Optional[bool] = None + +class CreateFleetAdvisorCollectorRequestRequestTypeDef(BaseModel): + CollectorName: str + ServiceAccessRoleArn: str + S3BucketName: str + Description: Optional[str] = None + +class InstanceProfileTypeDef(BaseModel): + InstanceProfileArn: Optional[str] = None + AvailabilityZone: Optional[str] = None + KmsKeyArn: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + NetworkType: Optional[str] = None + InstanceProfileName: Optional[str] = None + Description: Optional[str] = None + InstanceProfileCreationTime: Optional[datetime] = None + SubnetGroupIdentifier: Optional[str] = None + VpcSecurityGroups: Optional[List[str]] = None + +class DataProviderDescriptorDefinitionTypeDef(BaseModel): + DataProviderIdentifier: str + SecretsManagerSecretId: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + +class SCApplicationAttributesTypeDef(BaseModel): + S3BucketPath: Optional[str] = None + S3BucketRoleArn: Optional[str] = None + +class DataProviderDescriptorTypeDef(BaseModel): + SecretsManagerSecretId: Optional[str] = None + SecretsManagerAccessRoleArn: Optional[str] = None + DataProviderName: Optional[str] = None + DataProviderArn: Optional[str] = None + +class DocDbDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + +class MariaDbDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + +class MicrosoftSqlServerDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + +class MongoDbDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + AuthType: Optional[AuthTypeValueType] = None + AuthSource: Optional[str] = None + AuthMechanism: Optional[AuthMechanismValueType] = None + +class MySqlDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + +class OracleDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + AsmServer: Optional[str] = None + SecretsManagerOracleAsmSecretId: Optional[str] = None + SecretsManagerOracleAsmAccessRoleArn: Optional[str] = None + SecretsManagerSecurityDbEncryptionSecretId: Optional[str] = None + SecretsManagerSecurityDbEncryptionAccessRoleArn: Optional[str] = None + +class PostgreSqlDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + CertificateArn: Optional[str] = None + +class RedshiftDataProviderSettingsTypeDef(BaseModel): + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + +class DatabaseInstanceSoftwareDetailsResponseTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + EngineEdition: Optional[str] = None + ServicePack: Optional[str] = None + SupportLevel: Optional[str] = None + OsArchitecture: Optional[int] = None + Tooltip: Optional[str] = None + +class ServerShortInfoResponseTypeDef(BaseModel): + ServerId: Optional[str] = None + IpAddress: Optional[str] = None + ServerName: Optional[str] = None + +class DatabaseShortInfoResponseTypeDef(BaseModel): + DatabaseId: Optional[str] = None + DatabaseName: Optional[str] = None + DatabaseIpAddress: Optional[str] = None + DatabaseEngine: Optional[str] = None + +class DefaultErrorDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class DeleteCertificateMessageRequestTypeDef(BaseModel): + CertificateArn: str + +class DeleteCollectorRequestRequestTypeDef(BaseModel): + CollectorReferencedId: str + +class DeleteConnectionMessageRequestTypeDef(BaseModel): + EndpointArn: str + ReplicationInstanceArn: str + +class DeleteDataProviderMessageRequestTypeDef(BaseModel): + DataProviderIdentifier: str + +class DeleteEndpointMessageRequestTypeDef(BaseModel): + EndpointArn: str + +class DeleteEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + +class DeleteFleetAdvisorDatabasesRequestRequestTypeDef(BaseModel): + DatabaseIds: Sequence[str] + +class DeleteInstanceProfileMessageRequestTypeDef(BaseModel): + InstanceProfileIdentifier: str + +class DeleteMigrationProjectMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + +class DeleteReplicationConfigMessageRequestTypeDef(BaseModel): + ReplicationConfigArn: str + +class DeleteReplicationInstanceMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: str + +class DeleteReplicationSubnetGroupMessageRequestTypeDef(BaseModel): + ReplicationSubnetGroupIdentifier: str + +class DeleteReplicationTaskAssessmentRunMessageRequestTypeDef(BaseModel): + ReplicationTaskAssessmentRunArn: str + +class DeleteReplicationTaskMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + +class DescribeApplicableIndividualAssessmentsMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: Optional[str] = None + ReplicationInstanceArn: Optional[str] = None + SourceEngineName: Optional[str] = None + TargetEngineName: Optional[str] = None + MigrationType: Optional[MigrationTypeValueType] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeConversionConfigurationMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + +class DescribeEndpointSettingsMessageRequestTypeDef(BaseModel): + EngineName: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class EndpointSettingTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[EndpointSettingTypeValueType] = None + EnumValues: Optional[List[str]] = None + Sensitive: Optional[bool] = None + Units: Optional[str] = None + Applicability: Optional[str] = None + IntValueMin: Optional[int] = None + IntValueMax: Optional[int] = None + DefaultValue: Optional[str] = None + +class SupportedEndpointTypeTypeDef(BaseModel): + EngineName: Optional[str] = None + SupportsCDC: Optional[bool] = None + EndpointType: Optional[ReplicationEndpointTypeValueType] = None + ReplicationInstanceEngineMinimumVersion: Optional[str] = None + EngineDisplayName: Optional[str] = None + +class DescribeEngineVersionsMessageRequestTypeDef(BaseModel): + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class EngineVersionTypeDef(BaseModel): + Version: Optional[str] = None + Lifecycle: Optional[str] = None + ReleaseStatus: Optional[ReleaseStatusValuesType] = None + LaunchDate: Optional[datetime] = None + AutoUpgradeDate: Optional[datetime] = None + DeprecationDate: Optional[datetime] = None + ForceUpgradeDate: Optional[datetime] = None + AvailableUpgrades: Optional[List[str]] = None + +class EventCategoryGroupTypeDef(BaseModel): + SourceType: Optional[str] = None + EventCategories: Optional[List[str]] = None + +class EventTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[Literal["replication-instance"]] = None + Message: Optional[str] = None + EventCategories: Optional[List[str]] = None + Date: Optional[datetime] = None + +class DescribeFleetAdvisorLsaAnalysisRequestRequestTypeDef(BaseModel): + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class FleetAdvisorLsaAnalysisResponseTypeDef(BaseModel): + LsaAnalysisId: Optional[str] = None + Status: Optional[str] = None + +class FleetAdvisorSchemaObjectResponseTypeDef(BaseModel): + SchemaId: Optional[str] = None + ObjectType: Optional[str] = None + NumberOfObjects: Optional[int] = None + CodeLineCount: Optional[int] = None + CodeSize: Optional[int] = None + +class DescribeOrderableReplicationInstancesMessageRequestTypeDef(BaseModel): + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class OrderableReplicationInstanceTypeDef(BaseModel): + EngineVersion: Optional[str] = None + ReplicationInstanceClass: Optional[str] = None + StorageType: Optional[str] = None + MinAllocatedStorage: Optional[int] = None + MaxAllocatedStorage: Optional[int] = None + DefaultAllocatedStorage: Optional[int] = None + IncludedAllocatedStorage: Optional[int] = None + AvailabilityZones: Optional[List[str]] = None + ReleaseStatus: Optional[ReleaseStatusValuesType] = None + +class LimitationTypeDef(BaseModel): + DatabaseId: Optional[str] = None + EngineName: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Impact: Optional[str] = None + Type: Optional[str] = None + +class DescribeRefreshSchemasStatusMessageRequestTypeDef(BaseModel): + EndpointArn: str + +class RefreshSchemasStatusTypeDef(BaseModel): + EndpointArn: Optional[str] = None + ReplicationInstanceArn: Optional[str] = None + Status: Optional[RefreshSchemasStatusTypeValueType] = None + LastRefreshDate: Optional[datetime] = None + LastFailureMessage: Optional[str] = None + +class DescribeReplicationInstanceTaskLogsMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class ReplicationInstanceTaskLogTypeDef(BaseModel): + ReplicationTaskName: Optional[str] = None + ReplicationTaskArn: Optional[str] = None + ReplicationInstanceTaskLogSize: Optional[int] = None + +class TableStatisticsTypeDef(BaseModel): + SchemaName: Optional[str] = None + TableName: Optional[str] = None + Inserts: Optional[int] = None + Deletes: Optional[int] = None + Updates: Optional[int] = None + Ddls: Optional[int] = None + AppliedInserts: Optional[int] = None + AppliedDeletes: Optional[int] = None + AppliedUpdates: Optional[int] = None + AppliedDdls: Optional[int] = None + FullLoadRows: Optional[int] = None + FullLoadCondtnlChkFailedRows: Optional[int] = None + FullLoadErrorRows: Optional[int] = None + FullLoadStartTime: Optional[datetime] = None + FullLoadEndTime: Optional[datetime] = None + FullLoadReloaded: Optional[bool] = None + LastUpdateTime: Optional[datetime] = None + TableState: Optional[str] = None + ValidationPendingRecords: Optional[int] = None + ValidationFailedRecords: Optional[int] = None + ValidationSuspendedRecords: Optional[int] = None + ValidationState: Optional[str] = None + ValidationStateDetails: Optional[str] = None + +class DescribeReplicationTaskAssessmentResultsMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class ReplicationTaskAssessmentResultTypeDef(BaseModel): + ReplicationTaskIdentifier: Optional[str] = None + ReplicationTaskArn: Optional[str] = None + ReplicationTaskLastAssessmentDate: Optional[datetime] = None + AssessmentStatus: Optional[str] = None + AssessmentResultsFile: Optional[str] = None + AssessmentResults: Optional[str] = None + S3ObjectUrl: Optional[str] = None + +class ReplicationTaskIndividualAssessmentTypeDef(BaseModel): + ReplicationTaskIndividualAssessmentArn: Optional[str] = None + ReplicationTaskAssessmentRunArn: Optional[str] = None + IndividualAssessmentName: Optional[str] = None + Status: Optional[str] = None + ReplicationTaskIndividualAssessmentStartDate: Optional[datetime] = None + +class DescribeSchemasMessageRequestTypeDef(BaseModel): + EndpointArn: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class OracleSettingsOutputTypeDef(BaseModel): + AddSupplementalLogging: Optional[bool] = None + ArchivedLogDestId: Optional[int] = None + AdditionalArchivedLogDestId: Optional[int] = None + ExtraArchivedLogDestIds: Optional[List[int]] = None + AllowSelectNestedTables: Optional[bool] = None + ParallelAsmReadThreads: Optional[int] = None + ReadAheadBlocks: Optional[int] = None + AccessAlternateDirectly: Optional[bool] = None + UseAlternateFolderForOnline: Optional[bool] = None + OraclePathPrefix: Optional[str] = None + UsePathPrefix: Optional[str] = None + ReplacePathPrefix: Optional[bool] = None + EnableHomogenousTablespace: Optional[bool] = None + DirectPathNoLog: Optional[bool] = None + ArchivedLogsOnly: Optional[bool] = None + AsmPassword: Optional[str] = None + AsmServer: Optional[str] = None + AsmUser: Optional[str] = None + CharLengthSemantics: Optional[CharLengthSemanticsType] = None + DatabaseName: Optional[str] = None + DirectPathParallelLoad: Optional[bool] = None + FailTasksOnLobTruncation: Optional[bool] = None + NumberDatatypeScale: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + ReadTableSpaceName: Optional[bool] = None + RetryInterval: Optional[int] = None + SecurityDbEncryption: Optional[str] = None + SecurityDbEncryptionName: Optional[str] = None + ServerName: Optional[str] = None + SpatialDataOptionToGeoJsonFunctionName: Optional[str] = None + StandbyDelayTime: Optional[int] = None + Username: Optional[str] = None + UseBFile: Optional[bool] = None + UseDirectPathFullLoad: Optional[bool] = None + UseLogminerReader: Optional[bool] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + SecretsManagerOracleAsmAccessRoleArn: Optional[str] = None + SecretsManagerOracleAsmSecretId: Optional[str] = None + TrimSpaceInChar: Optional[bool] = None + ConvertTimestampWithZoneToUTC: Optional[bool] = None + OpenTransactionWindow: Optional[int] = None + +class ExportMetadataModelAssessmentMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + SelectionRules: str + FileName: Optional[str] = None + AssessmentReportTypes: Optional[Sequence[AssessmentReportTypeType]] = None + +class ExportMetadataModelAssessmentResultEntryTypeDef(BaseModel): + S3ObjectKey: Optional[str] = None + ObjectURL: Optional[str] = None + +class ExportSqlDetailsTypeDef(BaseModel): + S3ObjectKey: Optional[str] = None + ObjectURL: Optional[str] = None + +class ListTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceArnList: Optional[Sequence[str]] = None + +class ModifyConversionConfigurationMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + ConversionConfiguration: str + +class ModifyEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: Optional[str] = None + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class ModifyInstanceProfileMessageRequestTypeDef(BaseModel): + InstanceProfileIdentifier: str + AvailabilityZone: Optional[str] = None + KmsKeyArn: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + NetworkType: Optional[str] = None + InstanceProfileName: Optional[str] = None + Description: Optional[str] = None + SubnetGroupIdentifier: Optional[str] = None + VpcSecurityGroups: Optional[Sequence[str]] = None + +class ModifyReplicationInstanceMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: str + AllocatedStorage: Optional[int] = None + ApplyImmediately: Optional[bool] = None + ReplicationInstanceClass: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + PreferredMaintenanceWindow: Optional[str] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + ReplicationInstanceIdentifier: Optional[str] = None + NetworkType: Optional[str] = None + +class ModifyReplicationSubnetGroupMessageRequestTypeDef(BaseModel): + ReplicationSubnetGroupIdentifier: str + SubnetIds: Sequence[str] + ReplicationSubnetGroupDescription: Optional[str] = None + +class MoveReplicationTaskMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + TargetReplicationInstanceArn: str + +class OracleSettingsExtraOutputTypeDef(BaseModel): + AddSupplementalLogging: Optional[bool] = None + ArchivedLogDestId: Optional[int] = None + AdditionalArchivedLogDestId: Optional[int] = None + ExtraArchivedLogDestIds: Optional[List[int]] = None + AllowSelectNestedTables: Optional[bool] = None + ParallelAsmReadThreads: Optional[int] = None + ReadAheadBlocks: Optional[int] = None + AccessAlternateDirectly: Optional[bool] = None + UseAlternateFolderForOnline: Optional[bool] = None + OraclePathPrefix: Optional[str] = None + UsePathPrefix: Optional[str] = None + ReplacePathPrefix: Optional[bool] = None + EnableHomogenousTablespace: Optional[bool] = None + DirectPathNoLog: Optional[bool] = None + ArchivedLogsOnly: Optional[bool] = None + AsmPassword: Optional[str] = None + AsmServer: Optional[str] = None + AsmUser: Optional[str] = None + CharLengthSemantics: Optional[CharLengthSemanticsType] = None + DatabaseName: Optional[str] = None + DirectPathParallelLoad: Optional[bool] = None + FailTasksOnLobTruncation: Optional[bool] = None + NumberDatatypeScale: Optional[int] = None + Password: Optional[str] = None + Port: Optional[int] = None + ReadTableSpaceName: Optional[bool] = None + RetryInterval: Optional[int] = None + SecurityDbEncryption: Optional[str] = None + SecurityDbEncryptionName: Optional[str] = None + ServerName: Optional[str] = None + SpatialDataOptionToGeoJsonFunctionName: Optional[str] = None + StandbyDelayTime: Optional[int] = None + Username: Optional[str] = None + UseBFile: Optional[bool] = None + UseDirectPathFullLoad: Optional[bool] = None + UseLogminerReader: Optional[bool] = None + SecretsManagerAccessRoleArn: Optional[str] = None + SecretsManagerSecretId: Optional[str] = None + SecretsManagerOracleAsmAccessRoleArn: Optional[str] = None + SecretsManagerOracleAsmSecretId: Optional[str] = None + TrimSpaceInChar: Optional[bool] = None + ConvertTimestampWithZoneToUTC: Optional[bool] = None + OpenTransactionWindow: Optional[int] = None + +class PendingMaintenanceActionTypeDef(BaseModel): + Action: Optional[str] = None + AutoAppliedAfterDate: Optional[datetime] = None + ForcedApplyDate: Optional[datetime] = None + OptInStatus: Optional[str] = None + CurrentApplyDate: Optional[datetime] = None + Description: Optional[str] = None + +class ProvisionDataTypeDef(BaseModel): + ProvisionState: Optional[str] = None + ProvisionedCapacityUnits: Optional[int] = None + DateProvisioned: Optional[datetime] = None + IsNewProvisioningAvailable: Optional[bool] = None + DateNewProvisioningDataAvailable: Optional[datetime] = None + ReasonForNewProvisioningData: Optional[str] = None + +class RdsConfigurationTypeDef(BaseModel): + EngineEdition: Optional[str] = None + InstanceType: Optional[str] = None + InstanceVcpu: Optional[float] = None + InstanceMemory: Optional[float] = None + StorageType: Optional[str] = None + StorageSize: Optional[int] = None + StorageIops: Optional[int] = None + DeploymentOption: Optional[str] = None + EngineVersion: Optional[str] = None + +class RdsRequirementsTypeDef(BaseModel): + EngineEdition: Optional[str] = None + InstanceVcpu: Optional[float] = None + InstanceMemory: Optional[float] = None + StorageSize: Optional[int] = None + StorageIops: Optional[int] = None + DeploymentOption: Optional[str] = None + EngineVersion: Optional[str] = None + +class RebootReplicationInstanceMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: str + ForceFailover: Optional[bool] = None + ForcePlannedFailover: Optional[bool] = None + +class RecommendationSettingsTypeDef(BaseModel): + InstanceSizingType: str + WorkloadType: str + +class RefreshSchemasMessageRequestTypeDef(BaseModel): + EndpointArn: str + ReplicationInstanceArn: str + +class TableToReloadTypeDef(BaseModel): + SchemaName: str + TableName: str + +class RemoveTagsFromResourceMessageRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class ReplicationPendingModifiedValuesTypeDef(BaseModel): + ReplicationInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + NetworkType: Optional[str] = None + +class VpcSecurityGroupMembershipTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class ReplicationStatsTypeDef(BaseModel): + FullLoadProgressPercent: Optional[int] = None + ElapsedTimeMillis: Optional[int] = None + TablesLoaded: Optional[int] = None + TablesLoading: Optional[int] = None + TablesQueued: Optional[int] = None + TablesErrored: Optional[int] = None + FreshStartDate: Optional[datetime] = None + StartDate: Optional[datetime] = None + StopDate: Optional[datetime] = None + FullLoadStartDate: Optional[datetime] = None + FullLoadFinishDate: Optional[datetime] = None + +class ReplicationTaskAssessmentRunProgressTypeDef(BaseModel): + IndividualAssessmentCount: Optional[int] = None + IndividualAssessmentCompletedCount: Optional[int] = None + +class ReplicationTaskStatsTypeDef(BaseModel): + FullLoadProgressPercent: Optional[int] = None + ElapsedTimeMillis: Optional[int] = None + TablesLoaded: Optional[int] = None + TablesLoading: Optional[int] = None + TablesQueued: Optional[int] = None + TablesErrored: Optional[int] = None + FreshStartDate: Optional[datetime] = None + StartDate: Optional[datetime] = None + StopDate: Optional[datetime] = None + FullLoadStartDate: Optional[datetime] = None + FullLoadFinishDate: Optional[datetime] = None + +class SchemaShortInfoResponseTypeDef(BaseModel): + SchemaId: Optional[str] = None + SchemaName: Optional[str] = None + DatabaseId: Optional[str] = None + DatabaseName: Optional[str] = None + DatabaseIpAddress: Optional[str] = None + +class StartExtensionPackAssociationMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + +class StartMetadataModelAssessmentMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + SelectionRules: str + +class StartMetadataModelConversionMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + SelectionRules: str + +class StartMetadataModelExportAsScriptMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + SelectionRules: str + Origin: OriginTypeValueType + FileName: Optional[str] = None + +class StartMetadataModelExportToTargetMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + SelectionRules: str + OverwriteExtensionPack: Optional[bool] = None + +class StartMetadataModelImportMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + SelectionRules: str + Origin: OriginTypeValueType + Refresh: Optional[bool] = None + +class StartReplicationTaskAssessmentMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + +class StartReplicationTaskAssessmentRunMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + ServiceAccessRoleArn: str + ResultLocationBucket: str + AssessmentRunName: str + ResultLocationFolder: Optional[str] = None + ResultEncryptionMode: Optional[str] = None + ResultKmsKeyArn: Optional[str] = None + IncludeOnly: Optional[Sequence[str]] = None + Exclude: Optional[Sequence[str]] = None + +class StopReplicationMessageRequestTypeDef(BaseModel): + ReplicationConfigArn: str + +class StopReplicationTaskMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + +class TestConnectionMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: str + EndpointArn: str + +class UpdateSubscriptionsToEventBridgeMessageRequestTypeDef(BaseModel): + ForceMove: Optional[bool] = None + +class AddTagsToResourceMessageRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: str + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + SourceIds: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateInstanceProfileMessageRequestTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + KmsKeyArn: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + NetworkType: Optional[str] = None + InstanceProfileName: Optional[str] = None + Description: Optional[str] = None + SubnetGroupIdentifier: Optional[str] = None + VpcSecurityGroups: Optional[Sequence[str]] = None + +class CreateReplicationInstanceMessageRequestTypeDef(BaseModel): + ReplicationInstanceIdentifier: str + ReplicationInstanceClass: str + AllocatedStorage: Optional[int] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + AvailabilityZone: Optional[str] = None + ReplicationSubnetGroupIdentifier: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + DnsNameServers: Optional[str] = None + ResourceIdentifier: Optional[str] = None + NetworkType: Optional[str] = None + +class CreateReplicationSubnetGroupMessageRequestTypeDef(BaseModel): + ReplicationSubnetGroupIdentifier: str + ReplicationSubnetGroupDescription: str + SubnetIds: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateFleetAdvisorCollectorResponseTypeDef(BaseModel): + CollectorReferencedId: str + CollectorName: str + Description: str + ServiceAccessRoleArn: str + S3BucketName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFleetAdvisorDatabasesResponseTypeDef(BaseModel): + DatabaseIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAttributesResponseTypeDef(BaseModel): + AccountQuotas: List[AccountQuotaTypeDef] + UniqueAccountIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicableIndividualAssessmentsResponseTypeDef(BaseModel): + IndividualAssessmentNames: List[str] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConversionConfigurationResponseTypeDef(BaseModel): + MigrationProjectIdentifier: str + ConversionConfiguration: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSchemasResponseTypeDef(BaseModel): + Marker: str + Schemas: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyConversionConfigurationResponseTypeDef(BaseModel): + MigrationProjectIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReloadReplicationTablesResponseTypeDef(BaseModel): + ReplicationConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReloadTablesResponseTypeDef(BaseModel): + ReplicationTaskArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RunFleetAdvisorLsaAnalysisResponseTypeDef(BaseModel): + LsaAnalysisId: str + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartExtensionPackAssociationResponseTypeDef(BaseModel): + RequestIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMetadataModelAssessmentResponseTypeDef(BaseModel): + RequestIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMetadataModelConversionResponseTypeDef(BaseModel): + RequestIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMetadataModelExportAsScriptResponseTypeDef(BaseModel): + RequestIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMetadataModelExportToTargetResponseTypeDef(BaseModel): + RequestIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMetadataModelImportResponseTypeDef(BaseModel): + RequestIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSubscriptionsToEventBridgeResponseTypeDef(BaseModel): + Result: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + SubnetStatus: Optional[str] = None + +class BatchStartRecommendationsResponseTypeDef(BaseModel): + ErrorEntries: List[BatchStartRecommendationsErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportCertificateMessageRequestTypeDef(BaseModel): + CertificateIdentifier: str + CertificatePem: Optional[str] = None + CertificateWallet: Optional[BlobTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DeleteCertificateResponseTypeDef(BaseModel): + Certificate: CertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCertificatesResponseTypeDef(BaseModel): + Marker: str + Certificates: List[CertificateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportCertificateResponseTypeDef(BaseModel): + Certificate: CertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CollectorResponseTypeDef(BaseModel): + CollectorReferencedId: Optional[str] = None + CollectorName: Optional[str] = None + CollectorVersion: Optional[str] = None + VersionStatus: Optional[VersionStatusType] = None + Description: Optional[str] = None + S3BucketName: Optional[str] = None + ServiceAccessRoleArn: Optional[str] = None + CollectorHealthCheck: Optional[CollectorHealthCheckTypeDef] = None + LastDataReceived: Optional[str] = None + RegisteredDate: Optional[str] = None + CreatedDate: Optional[str] = None + ModifiedDate: Optional[str] = None + InventoryData: Optional[InventoryDataTypeDef] = None + +class ReplicationConfigTypeDef(BaseModel): + ReplicationConfigIdentifier: Optional[str] = None + ReplicationConfigArn: Optional[str] = None + SourceEndpointArn: Optional[str] = None + TargetEndpointArn: Optional[str] = None + ReplicationType: Optional[MigrationTypeValueType] = None + ComputeConfig: Optional[ComputeConfigOutputTypeDef] = None + ReplicationSettings: Optional[str] = None + SupplementalSettings: Optional[str] = None + TableMappings: Optional[str] = None + ReplicationConfigCreateTime: Optional[datetime] = None + ReplicationConfigUpdateTime: Optional[datetime] = None + +class CreateReplicationConfigMessageRequestTypeDef(BaseModel): + ReplicationConfigIdentifier: str + SourceEndpointArn: str + TargetEndpointArn: str + ComputeConfig: ComputeConfigTypeDef + ReplicationType: MigrationTypeValueType + TableMappings: str + ReplicationSettings: Optional[str] = None + SupplementalSettings: Optional[str] = None + ResourceIdentifier: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ModifyReplicationConfigMessageRequestTypeDef(BaseModel): + ReplicationConfigArn: str + ReplicationConfigIdentifier: Optional[str] = None + ReplicationType: Optional[MigrationTypeValueType] = None + TableMappings: Optional[str] = None + ReplicationSettings: Optional[str] = None + SupplementalSettings: Optional[str] = None + ComputeConfig: Optional[ComputeConfigTypeDef] = None + SourceEndpointArn: Optional[str] = None + TargetEndpointArn: Optional[str] = None + +class DeleteConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectionsResponseTypeDef(BaseModel): + Marker: str + Connections: List[ConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TestConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointMessageRequestTypeDef(BaseModel): + EndpointIdentifier: str + EndpointType: ReplicationEndpointTypeValueType + EngineName: str + Username: Optional[str] = None + Password: Optional[str] = None + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + ExtraConnectionAttributes: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CertificateArn: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + ServiceAccessRoleArn: Optional[str] = None + ExternalTableDefinition: Optional[str] = None + DynamoDbSettings: Optional[DynamoDbSettingsTypeDef] = None + S3Settings: Optional[S3SettingsTypeDef] = None + DmsTransferSettings: Optional[DmsTransferSettingsTypeDef] = None + MongoDbSettings: Optional[MongoDbSettingsTypeDef] = None + KinesisSettings: Optional[KinesisSettingsTypeDef] = None + KafkaSettings: Optional[KafkaSettingsTypeDef] = None + ElasticsearchSettings: Optional[ElasticsearchSettingsTypeDef] = None + NeptuneSettings: Optional[NeptuneSettingsTypeDef] = None + RedshiftSettings: Optional[RedshiftSettingsTypeDef] = None + PostgreSQLSettings: Optional[PostgreSQLSettingsTypeDef] = None + MySQLSettings: Optional[MySQLSettingsTypeDef] = None + OracleSettings: Optional[OracleSettingsTypeDef] = None + SybaseSettings: Optional[SybaseSettingsTypeDef] = None + MicrosoftSQLServerSettings: Optional[MicrosoftSQLServerSettingsTypeDef] = None + IBMDb2Settings: Optional[IBMDb2SettingsTypeDef] = None + ResourceIdentifier: Optional[str] = None + DocDbSettings: Optional[DocDbSettingsTypeDef] = None + RedisSettings: Optional[RedisSettingsTypeDef] = None + GcpMySQLSettings: Optional[GcpMySQLSettingsTypeDef] = None + TimestreamSettings: Optional[TimestreamSettingsTypeDef] = None + +class ModifyEndpointMessageRequestTypeDef(BaseModel): + EndpointArn: str + EndpointIdentifier: Optional[str] = None + EndpointType: Optional[ReplicationEndpointTypeValueType] = None + EngineName: Optional[str] = None + Username: Optional[str] = None + Password: Optional[str] = None + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + ExtraConnectionAttributes: Optional[str] = None + CertificateArn: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + ServiceAccessRoleArn: Optional[str] = None + ExternalTableDefinition: Optional[str] = None + DynamoDbSettings: Optional[DynamoDbSettingsTypeDef] = None + S3Settings: Optional[S3SettingsTypeDef] = None + DmsTransferSettings: Optional[DmsTransferSettingsTypeDef] = None + MongoDbSettings: Optional[MongoDbSettingsTypeDef] = None + KinesisSettings: Optional[KinesisSettingsTypeDef] = None + KafkaSettings: Optional[KafkaSettingsTypeDef] = None + ElasticsearchSettings: Optional[ElasticsearchSettingsTypeDef] = None + NeptuneSettings: Optional[NeptuneSettingsTypeDef] = None + RedshiftSettings: Optional[RedshiftSettingsTypeDef] = None + PostgreSQLSettings: Optional[PostgreSQLSettingsTypeDef] = None + MySQLSettings: Optional[MySQLSettingsTypeDef] = None + OracleSettings: Optional[OracleSettingsTypeDef] = None + SybaseSettings: Optional[SybaseSettingsTypeDef] = None + MicrosoftSQLServerSettings: Optional[MicrosoftSQLServerSettingsTypeDef] = None + IBMDb2Settings: Optional[IBMDb2SettingsTypeDef] = None + DocDbSettings: Optional[DocDbSettingsTypeDef] = None + RedisSettings: Optional[RedisSettingsTypeDef] = None + ExactSettings: Optional[bool] = None + GcpMySQLSettings: Optional[GcpMySQLSettingsTypeDef] = None + TimestreamSettings: Optional[TimestreamSettingsTypeDef] = None + +class CreateEventSubscriptionResponseTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventSubscriptionResponseTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventSubscriptionsResponseTypeDef(BaseModel): + Marker: str + EventSubscriptionsList: List[EventSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEventSubscriptionResponseTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceProfileResponseTypeDef(BaseModel): + InstanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInstanceProfileResponseTypeDef(BaseModel): + InstanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInstanceProfilesResponseTypeDef(BaseModel): + Marker: str + InstanceProfiles: List[InstanceProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstanceProfileResponseTypeDef(BaseModel): + InstanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMigrationProjectMessageRequestTypeDef(BaseModel): + SourceDataProviderDescriptors: Sequence[DataProviderDescriptorDefinitionTypeDef] + TargetDataProviderDescriptors: Sequence[DataProviderDescriptorDefinitionTypeDef] + InstanceProfileIdentifier: str + MigrationProjectName: Optional[str] = None + TransformationRules: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SchemaConversionApplicationAttributes: Optional[SCApplicationAttributesTypeDef] = None + +class ModifyMigrationProjectMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + MigrationProjectName: Optional[str] = None + SourceDataProviderDescriptors: Optional[ Sequence[DataProviderDescriptorDefinitionTypeDef] ] = None + TargetDataProviderDescriptors: Optional[ Sequence[DataProviderDescriptorDefinitionTypeDef] ] = None + InstanceProfileIdentifier: Optional[str] = None + TransformationRules: Optional[str] = None + Description: Optional[str] = None + SchemaConversionApplicationAttributes: Optional[SCApplicationAttributesTypeDef] = None + +class CreateReplicationTaskMessageRequestTypeDef(BaseModel): + ReplicationTaskIdentifier: str + SourceEndpointArn: str + TargetEndpointArn: str + ReplicationInstanceArn: str + MigrationType: MigrationTypeValueType + TableMappings: str + ReplicationTaskSettings: Optional[str] = None + CdcStartTime: Optional[TimestampTypeDef] = None + CdcStartPosition: Optional[str] = None + CdcStopPosition: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TaskData: Optional[str] = None + ResourceIdentifier: Optional[str] = None + +class ModifyReplicationTaskMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + ReplicationTaskIdentifier: Optional[str] = None + MigrationType: Optional[MigrationTypeValueType] = None + TableMappings: Optional[str] = None + ReplicationTaskSettings: Optional[str] = None + CdcStartTime: Optional[TimestampTypeDef] = None + CdcStartPosition: Optional[str] = None + CdcStopPosition: Optional[str] = None + TaskData: Optional[str] = None + +class StartReplicationMessageRequestTypeDef(BaseModel): + ReplicationConfigArn: str + StartReplicationType: str + CdcStartTime: Optional[TimestampTypeDef] = None + CdcStartPosition: Optional[str] = None + CdcStopPosition: Optional[str] = None + +class StartReplicationTaskMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + StartReplicationTaskType: StartReplicationTaskTypeValueType + CdcStartTime: Optional[TimestampTypeDef] = None + CdcStartPosition: Optional[str] = None + CdcStopPosition: Optional[str] = None + +class MigrationProjectTypeDef(BaseModel): + MigrationProjectName: Optional[str] = None + MigrationProjectArn: Optional[str] = None + MigrationProjectCreationTime: Optional[datetime] = None + SourceDataProviderDescriptors: Optional[List[DataProviderDescriptorTypeDef]] = None + TargetDataProviderDescriptors: Optional[List[DataProviderDescriptorTypeDef]] = None + InstanceProfileArn: Optional[str] = None + InstanceProfileName: Optional[str] = None + TransformationRules: Optional[str] = None + Description: Optional[str] = None + SchemaConversionApplicationAttributes: Optional[SCApplicationAttributesTypeDef] = None + +class DataProviderSettingsTypeDef(BaseModel): + RedshiftSettings: Optional[RedshiftDataProviderSettingsTypeDef] = None + PostgreSqlSettings: Optional[PostgreSqlDataProviderSettingsTypeDef] = None + MySqlSettings: Optional[MySqlDataProviderSettingsTypeDef] = None + OracleSettings: Optional[OracleDataProviderSettingsTypeDef] = None + MicrosoftSqlServerSettings: Optional[MicrosoftSqlServerDataProviderSettingsTypeDef] = None + DocDbSettings: Optional[DocDbDataProviderSettingsTypeDef] = None + MariaDbSettings: Optional[MariaDbDataProviderSettingsTypeDef] = None + MongoDbSettings: Optional[MongoDbDataProviderSettingsTypeDef] = None + +class DatabaseResponseTypeDef(BaseModel): + DatabaseId: Optional[str] = None + DatabaseName: Optional[str] = None + IpAddress: Optional[str] = None + NumberOfSchemas: Optional[int] = None + Server: Optional[ServerShortInfoResponseTypeDef] = None + SoftwareDetails: Optional[DatabaseInstanceSoftwareDetailsResponseTypeDef] = None + Collectors: Optional[List[CollectorShortInfoResponseTypeDef]] = None + +class ErrorDetailsTypeDef(BaseModel): + defaultErrorDetails: Optional[DefaultErrorDetailsTypeDef] = None + +class DescribeCertificatesMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeConnectionsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDataProvidersMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEndpointTypesMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEndpointsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventCategoriesMessageRequestTypeDef(BaseModel): + SourceType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeEventSubscriptionsMessageRequestTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventsMessageRequestTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[Literal["replication-instance"]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeExtensionPackAssociationsMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeFleetAdvisorCollectorsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFleetAdvisorDatabasesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFleetAdvisorSchemaObjectSummaryRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFleetAdvisorSchemasRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceProfilesMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeMetadataModelAssessmentsMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeMetadataModelConversionsMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeMetadataModelExportsAsScriptMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeMetadataModelExportsToTargetMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeMetadataModelImportsMessageRequestTypeDef(BaseModel): + MigrationProjectIdentifier: str + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeMigrationProjectsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribePendingMaintenanceActionsMessageRequestTypeDef(BaseModel): + ReplicationInstanceArn: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeRecommendationLimitationsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeRecommendationsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeReplicationConfigsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReplicationInstancesMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReplicationSubnetGroupsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReplicationTableStatisticsMessageRequestTypeDef(BaseModel): + ReplicationConfigArn: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeReplicationTaskAssessmentRunsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReplicationTaskIndividualAssessmentsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReplicationTasksMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WithoutSettings: Optional[bool] = None + +class DescribeReplicationsMessageRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeTableStatisticsMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeCertificatesMessageDescribeCertificatesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConnectionsMessageDescribeConnectionsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEndpointTypesMessageDescribeEndpointTypesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEndpointsMessageDescribeEndpointsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventSubscriptionsMessageDescribeEventSubscriptionsPaginateTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[Literal["replication-instance"]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrderableReplicationInstancesMessageDescribeOrderableReplicationInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationInstancesMessageDescribeReplicationInstancesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationSubnetGroupsMessageDescribeReplicationSubnetGroupsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationTaskAssessmentResultsMessageDescribeReplicationTaskAssessmentResultsPaginateTypeDef(BaseModel): + ReplicationTaskArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationTasksMessageDescribeReplicationTasksPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + WithoutSettings: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSchemasMessageDescribeSchemasPaginateTypeDef(BaseModel): + EndpointArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTableStatisticsMessageDescribeTableStatisticsPaginateTypeDef(BaseModel): + ReplicationTaskArn: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConnectionsMessageTestConnectionSucceedsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEndpointsMessageEndpointDeletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationInstancesMessageReplicationInstanceAvailableWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationInstancesMessageReplicationInstanceDeletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationTasksMessageReplicationTaskDeletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WithoutSettings: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationTasksMessageReplicationTaskReadyWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WithoutSettings: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationTasksMessageReplicationTaskRunningWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WithoutSettings: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationTasksMessageReplicationTaskStoppedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WithoutSettings: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEndpointSettingsResponseTypeDef(BaseModel): + Marker: str + EndpointSettings: List[EndpointSettingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointTypesResponseTypeDef(BaseModel): + Marker: str + SupportedEndpointTypes: List[SupportedEndpointTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEngineVersionsResponseTypeDef(BaseModel): + EngineVersions: List[EngineVersionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventCategoriesResponseTypeDef(BaseModel): + EventCategoryGroupList: List[EventCategoryGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventsResponseTypeDef(BaseModel): + Marker: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetAdvisorLsaAnalysisResponseTypeDef(BaseModel): + Analysis: List[FleetAdvisorLsaAnalysisResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFleetAdvisorSchemaObjectSummaryResponseTypeDef(BaseModel): + FleetAdvisorSchemaObjects: List[FleetAdvisorSchemaObjectResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOrderableReplicationInstancesResponseTypeDef(BaseModel): + OrderableReplicationInstances: List[OrderableReplicationInstanceTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRecommendationLimitationsResponseTypeDef(BaseModel): + Limitations: List[LimitationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRefreshSchemasStatusResponseTypeDef(BaseModel): + RefreshSchemasStatus: RefreshSchemasStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RefreshSchemasResponseTypeDef(BaseModel): + RefreshSchemasStatus: RefreshSchemasStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationInstanceTaskLogsResponseTypeDef(BaseModel): + ReplicationInstanceArn: str + ReplicationInstanceTaskLogs: List[ReplicationInstanceTaskLogTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationTableStatisticsResponseTypeDef(BaseModel): + ReplicationConfigArn: str + Marker: str + ReplicationTableStatistics: List[TableStatisticsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTableStatisticsResponseTypeDef(BaseModel): + ReplicationTaskArn: str + TableStatistics: List[TableStatisticsTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationTaskAssessmentResultsResponseTypeDef(BaseModel): + Marker: str + BucketName: str + ReplicationTaskAssessmentResults: List[ReplicationTaskAssessmentResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationTaskIndividualAssessmentsResponseTypeDef(BaseModel): + Marker: str + ReplicationTaskIndividualAssessments: List[ReplicationTaskIndividualAssessmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointTypeDef(BaseModel): + EndpointIdentifier: Optional[str] = None + EndpointType: Optional[ReplicationEndpointTypeValueType] = None + EngineName: Optional[str] = None + EngineDisplayName: Optional[str] = None + Username: Optional[str] = None + ServerName: Optional[str] = None + Port: Optional[int] = None + DatabaseName: Optional[str] = None + ExtraConnectionAttributes: Optional[str] = None + Status: Optional[str] = None + KmsKeyId: Optional[str] = None + EndpointArn: Optional[str] = None + CertificateArn: Optional[str] = None + SslMode: Optional[DmsSslModeValueType] = None + ServiceAccessRoleArn: Optional[str] = None + ExternalTableDefinition: Optional[str] = None + ExternalId: Optional[str] = None + DynamoDbSettings: Optional[DynamoDbSettingsTypeDef] = None + S3Settings: Optional[S3SettingsTypeDef] = None + DmsTransferSettings: Optional[DmsTransferSettingsTypeDef] = None + MongoDbSettings: Optional[MongoDbSettingsTypeDef] = None + KinesisSettings: Optional[KinesisSettingsTypeDef] = None + KafkaSettings: Optional[KafkaSettingsTypeDef] = None + ElasticsearchSettings: Optional[ElasticsearchSettingsTypeDef] = None + NeptuneSettings: Optional[NeptuneSettingsTypeDef] = None + RedshiftSettings: Optional[RedshiftSettingsTypeDef] = None + PostgreSQLSettings: Optional[PostgreSQLSettingsTypeDef] = None + MySQLSettings: Optional[MySQLSettingsTypeDef] = None + OracleSettings: Optional[OracleSettingsOutputTypeDef] = None + SybaseSettings: Optional[SybaseSettingsTypeDef] = None + MicrosoftSQLServerSettings: Optional[MicrosoftSQLServerSettingsTypeDef] = None + IBMDb2Settings: Optional[IBMDb2SettingsTypeDef] = None + DocDbSettings: Optional[DocDbSettingsTypeDef] = None + RedisSettings: Optional[RedisSettingsTypeDef] = None + GcpMySQLSettings: Optional[GcpMySQLSettingsTypeDef] = None + TimestreamSettings: Optional[TimestreamSettingsTypeDef] = None + +class ExportMetadataModelAssessmentResponseTypeDef(BaseModel): + PdfReport: ExportMetadataModelAssessmentResultEntryTypeDef + CsvReport: ExportMetadataModelAssessmentResultEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResourcePendingMaintenanceActionsTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + PendingMaintenanceActionDetails: Optional[List[PendingMaintenanceActionTypeDef]] = None + +class RdsRecommendationTypeDef(BaseModel): + RequirementsToTarget: Optional[RdsRequirementsTypeDef] = None + TargetConfiguration: Optional[RdsConfigurationTypeDef] = None + +class StartRecommendationsRequestEntryTypeDef(BaseModel): + DatabaseId: str + Settings: RecommendationSettingsTypeDef + +class StartRecommendationsRequestRequestTypeDef(BaseModel): + DatabaseId: str + Settings: RecommendationSettingsTypeDef + +class ReloadReplicationTablesMessageRequestTypeDef(BaseModel): + ReplicationConfigArn: str + TablesToReload: Sequence[TableToReloadTypeDef] + ReloadOption: Optional[ReloadOptionValueType] = None + +class ReloadTablesMessageRequestTypeDef(BaseModel): + ReplicationTaskArn: str + TablesToReload: Sequence[TableToReloadTypeDef] + ReloadOption: Optional[ReloadOptionValueType] = None + +class ReplicationTypeDef(BaseModel): + ReplicationConfigIdentifier: Optional[str] = None + ReplicationConfigArn: Optional[str] = None + SourceEndpointArn: Optional[str] = None + TargetEndpointArn: Optional[str] = None + ReplicationType: Optional[MigrationTypeValueType] = None + Status: Optional[str] = None + ProvisionData: Optional[ProvisionDataTypeDef] = None + StopReason: Optional[str] = None + FailureMessages: Optional[List[str]] = None + ReplicationStats: Optional[ReplicationStatsTypeDef] = None + StartReplicationType: Optional[str] = None + CdcStartTime: Optional[datetime] = None + CdcStartPosition: Optional[str] = None + CdcStopPosition: Optional[str] = None + RecoveryCheckpoint: Optional[str] = None + ReplicationCreateTime: Optional[datetime] = None + ReplicationUpdateTime: Optional[datetime] = None + ReplicationLastStopTime: Optional[datetime] = None + ReplicationDeprovisionTime: Optional[datetime] = None + +class ReplicationTaskAssessmentRunTypeDef(BaseModel): + ReplicationTaskAssessmentRunArn: Optional[str] = None + ReplicationTaskArn: Optional[str] = None + Status: Optional[str] = None + ReplicationTaskAssessmentRunCreationDate: Optional[datetime] = None + AssessmentProgress: Optional[ReplicationTaskAssessmentRunProgressTypeDef] = None + LastFailureMessage: Optional[str] = None + ServiceAccessRoleArn: Optional[str] = None + ResultLocationBucket: Optional[str] = None + ResultLocationFolder: Optional[str] = None + ResultEncryptionMode: Optional[str] = None + ResultKmsKeyArn: Optional[str] = None + AssessmentRunName: Optional[str] = None + +class ReplicationTaskTypeDef(BaseModel): + ReplicationTaskIdentifier: Optional[str] = None + SourceEndpointArn: Optional[str] = None + TargetEndpointArn: Optional[str] = None + ReplicationInstanceArn: Optional[str] = None + MigrationType: Optional[MigrationTypeValueType] = None + TableMappings: Optional[str] = None + ReplicationTaskSettings: Optional[str] = None + Status: Optional[str] = None + LastFailureMessage: Optional[str] = None + StopReason: Optional[str] = None + ReplicationTaskCreationDate: Optional[datetime] = None + ReplicationTaskStartDate: Optional[datetime] = None + CdcStartPosition: Optional[str] = None + CdcStopPosition: Optional[str] = None + RecoveryCheckpoint: Optional[str] = None + ReplicationTaskArn: Optional[str] = None + ReplicationTaskStats: Optional[ReplicationTaskStatsTypeDef] = None + TaskData: Optional[str] = None + TargetReplicationInstanceArn: Optional[str] = None + +class SchemaResponseTypeDef(BaseModel): + CodeLineCount: Optional[int] = None + CodeSize: Optional[int] = None + Complexity: Optional[str] = None + Server: Optional[ServerShortInfoResponseTypeDef] = None + DatabaseInstance: Optional[DatabaseShortInfoResponseTypeDef] = None + SchemaId: Optional[str] = None + SchemaName: Optional[str] = None + OriginalSchema: Optional[SchemaShortInfoResponseTypeDef] = None + Similarity: Optional[float] = None + +class ReplicationSubnetGroupTypeDef(BaseModel): + ReplicationSubnetGroupIdentifier: Optional[str] = None + ReplicationSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + SupportedNetworkTypes: Optional[List[str]] = None + +class DescribeFleetAdvisorCollectorsResponseTypeDef(BaseModel): + Collectors: List[CollectorResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateReplicationConfigResponseTypeDef(BaseModel): + ReplicationConfig: ReplicationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteReplicationConfigResponseTypeDef(BaseModel): + ReplicationConfig: ReplicationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationConfigsResponseTypeDef(BaseModel): + Marker: str + ReplicationConfigs: List[ReplicationConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReplicationConfigResponseTypeDef(BaseModel): + ReplicationConfig: ReplicationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMigrationProjectResponseTypeDef(BaseModel): + MigrationProject: MigrationProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMigrationProjectResponseTypeDef(BaseModel): + MigrationProject: MigrationProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMigrationProjectsResponseTypeDef(BaseModel): + Marker: str + MigrationProjects: List[MigrationProjectTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyMigrationProjectResponseTypeDef(BaseModel): + MigrationProject: MigrationProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataProviderMessageRequestTypeDef(BaseModel): + Engine: str + Settings: DataProviderSettingsTypeDef + DataProviderName: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DataProviderTypeDef(BaseModel): + DataProviderName: Optional[str] = None + DataProviderArn: Optional[str] = None + DataProviderCreationTime: Optional[datetime] = None + Description: Optional[str] = None + Engine: Optional[str] = None + Settings: Optional[DataProviderSettingsTypeDef] = None + +class ModifyDataProviderMessageRequestTypeDef(BaseModel): + DataProviderIdentifier: str + DataProviderName: Optional[str] = None + Description: Optional[str] = None + Engine: Optional[str] = None + ExactSettings: Optional[bool] = None + Settings: Optional[DataProviderSettingsTypeDef] = None + +class DescribeFleetAdvisorDatabasesResponseTypeDef(BaseModel): + Databases: List[DatabaseResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SchemaConversionRequestTypeDef(BaseModel): + Status: Optional[str] = None + RequestIdentifier: Optional[str] = None + MigrationProjectArn: Optional[str] = None + Error: Optional[ErrorDetailsTypeDef] = None + ExportSqlDetails: Optional[ExportSqlDetailsTypeDef] = None + +class CreateEndpointResponseTypeDef(BaseModel): + Endpoint: EndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEndpointResponseTypeDef(BaseModel): + Endpoint: EndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointsResponseTypeDef(BaseModel): + Marker: str + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEndpointResponseTypeDef(BaseModel): + Endpoint: EndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplyPendingMaintenanceActionResponseTypeDef(BaseModel): + ResourcePendingMaintenanceActions: ResourcePendingMaintenanceActionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePendingMaintenanceActionsResponseTypeDef(BaseModel): + PendingMaintenanceActions: List[ResourcePendingMaintenanceActionsTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationDataTypeDef(BaseModel): + RdsEngine: Optional[RdsRecommendationTypeDef] = None + +class BatchStartRecommendationsRequestRequestTypeDef(BaseModel): + Data: Optional[Sequence[StartRecommendationsRequestEntryTypeDef]] = None + +class DescribeReplicationsResponseTypeDef(BaseModel): + Marker: str + Replications: List[ReplicationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplicationResponseTypeDef(BaseModel): + Replication: ReplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopReplicationResponseTypeDef(BaseModel): + Replication: ReplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelReplicationTaskAssessmentRunResponseTypeDef(BaseModel): + ReplicationTaskAssessmentRun: ReplicationTaskAssessmentRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteReplicationTaskAssessmentRunResponseTypeDef(BaseModel): + ReplicationTaskAssessmentRun: ReplicationTaskAssessmentRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationTaskAssessmentRunsResponseTypeDef(BaseModel): + Marker: str + ReplicationTaskAssessmentRuns: List[ReplicationTaskAssessmentRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplicationTaskAssessmentRunResponseTypeDef(BaseModel): + ReplicationTaskAssessmentRun: ReplicationTaskAssessmentRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReplicationTaskResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteReplicationTaskResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationTasksResponseTypeDef(BaseModel): + Marker: str + ReplicationTasks: List[ReplicationTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReplicationTaskResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MoveReplicationTaskResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplicationTaskAssessmentResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplicationTaskResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopReplicationTaskResponseTypeDef(BaseModel): + ReplicationTask: ReplicationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetAdvisorSchemasResponseTypeDef(BaseModel): + FleetAdvisorSchemas: List[SchemaResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateReplicationSubnetGroupResponseTypeDef(BaseModel): + ReplicationSubnetGroup: ReplicationSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationSubnetGroupsResponseTypeDef(BaseModel): + Marker: str + ReplicationSubnetGroups: List[ReplicationSubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReplicationSubnetGroupResponseTypeDef(BaseModel): + ReplicationSubnetGroup: ReplicationSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationInstanceTypeDef(BaseModel): + ReplicationInstanceIdentifier: Optional[str] = None + ReplicationInstanceClass: Optional[str] = None + ReplicationInstanceStatus: Optional[str] = None + AllocatedStorage: Optional[int] = None + InstanceCreateTime: Optional[datetime] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + AvailabilityZone: Optional[str] = None + ReplicationSubnetGroup: Optional[ReplicationSubnetGroupTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[ReplicationPendingModifiedValuesTypeDef] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + KmsKeyId: Optional[str] = None + ReplicationInstanceArn: Optional[str] = None + ReplicationInstancePublicIpAddress: Optional[str] = None + ReplicationInstancePrivateIpAddress: Optional[str] = None + ReplicationInstancePublicIpAddresses: Optional[List[str]] = None + ReplicationInstancePrivateIpAddresses: Optional[List[str]] = None + ReplicationInstanceIpv6Addresses: Optional[List[str]] = None + PubliclyAccessible: Optional[bool] = None + SecondaryAvailabilityZone: Optional[str] = None + FreeUntil: Optional[datetime] = None + DnsNameServers: Optional[str] = None + NetworkType: Optional[str] = None + +class CreateDataProviderResponseTypeDef(BaseModel): + DataProvider: DataProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataProviderResponseTypeDef(BaseModel): + DataProvider: DataProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataProvidersResponseTypeDef(BaseModel): + Marker: str + DataProviders: List[DataProviderTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDataProviderResponseTypeDef(BaseModel): + DataProvider: DataProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExtensionPackAssociationsResponseTypeDef(BaseModel): + Marker: str + Requests: List[SchemaConversionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMetadataModelAssessmentsResponseTypeDef(BaseModel): + Marker: str + Requests: List[SchemaConversionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMetadataModelConversionsResponseTypeDef(BaseModel): + Marker: str + Requests: List[SchemaConversionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMetadataModelExportsAsScriptResponseTypeDef(BaseModel): + Marker: str + Requests: List[SchemaConversionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMetadataModelExportsToTargetResponseTypeDef(BaseModel): + Marker: str + Requests: List[SchemaConversionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMetadataModelImportsResponseTypeDef(BaseModel): + Marker: str + Requests: List[SchemaConversionRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationTypeDef(BaseModel): + DatabaseId: Optional[str] = None + EngineName: Optional[str] = None + CreatedDate: Optional[str] = None + Status: Optional[str] = None + Preferred: Optional[bool] = None + Settings: Optional[RecommendationSettingsTypeDef] = None + Data: Optional[RecommendationDataTypeDef] = None + +class CreateReplicationInstanceResponseTypeDef(BaseModel): + ReplicationInstance: ReplicationInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteReplicationInstanceResponseTypeDef(BaseModel): + ReplicationInstance: ReplicationInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationInstancesResponseTypeDef(BaseModel): + Marker: str + ReplicationInstances: List[ReplicationInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReplicationInstanceResponseTypeDef(BaseModel): + ReplicationInstance: ReplicationInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootReplicationInstanceResponseTypeDef(BaseModel): + ReplicationInstance: ReplicationInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRecommendationsResponseTypeDef(BaseModel): + Recommendations: List[RecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/dms_constants.py b/aws_resource_validator/pydantic_models/dms_constants.py new file mode 100644 index 00000000..45f1f346 --- /dev/null +++ b/aws_resource_validator/pydantic_models/dms_constants.py @@ -0,0 +1,521 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssessmentReportTypeType = Literal["csv", "pdf"] +AuthMechanismValueType = Literal["default", "mongodb_cr", "scram_sha_1"] +AuthTypeValueType = Literal["no", "password"] +CannedAclForObjectsValueType = Literal["authenticated-read", + "aws-exec-read", + "bucket-owner-full-control", + "bucket-owner-read", + "none", + "private", + "public-read", + "public-read-write",] +CharLengthSemanticsType = Literal["byte", "char", "default"] +CollectorStatusType = Literal["ACTIVE", "UNREGISTERED"] +CompressionTypeValueType = Literal["gzip", "none"] +DataFormatValueType = Literal["csv", "parquet"] +DatabaseModeType = Literal["babelfish", "default"] +DatePartitionDelimiterValueType = Literal["DASH", "NONE", "SLASH", "UNDERSCORE"] +DatePartitionSequenceValueType = Literal["DDMMYYYY", "MMYYYYDD", "YYYYMM", "YYYYMMDD", "YYYYMMDDHH"] +DescribeCertificatesPaginatorName = Literal["describe_certificates"] +DescribeConnectionsPaginatorName = Literal["describe_connections"] +DescribeEndpointTypesPaginatorName = Literal["describe_endpoint_types"] +DescribeEndpointsPaginatorName = Literal["describe_endpoints"] +DescribeEventSubscriptionsPaginatorName = Literal["describe_event_subscriptions"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeOrderableReplicationInstancesPaginatorName = Literal["describe_orderable_replication_instances"] +DescribeReplicationInstancesPaginatorName = Literal["describe_replication_instances"] +DescribeReplicationSubnetGroupsPaginatorName = Literal["describe_replication_subnet_groups"] +DescribeReplicationTaskAssessmentResultsPaginatorName = Literal["describe_replication_task_assessment_results"] +DescribeReplicationTasksPaginatorName = Literal["describe_replication_tasks"] +DescribeSchemasPaginatorName = Literal["describe_schemas"] +DescribeTableStatisticsPaginatorName = Literal["describe_table_statistics"] +DmsSslModeValueType = Literal["none", "require", "verify-ca", "verify-full"] +EncodingTypeValueType = Literal["plain", "plain-dictionary", "rle-dictionary"] +EncryptionModeValueType = Literal["sse-kms", "sse-s3"] +EndpointDeletedWaiterName = Literal["endpoint_deleted"] +EndpointSettingTypeValueType = Literal["boolean", "enum", "integer", "string"] +KafkaSaslMechanismType = Literal["plain", "scram-sha-512"] +KafkaSecurityProtocolType = Literal["plaintext", "sasl-ssl", "ssl-authentication", "ssl-encryption"] +KafkaSslEndpointIdentificationAlgorithmType = Literal["https", "none"] +LongVarcharMappingTypeType = Literal["clob", "nclob", "wstring"] +MessageFormatValueType = Literal["json", "json-unformatted"] +MigrationTypeValueType = Literal["cdc", "full-load", "full-load-and-cdc"] +NestingLevelValueType = Literal["none", "one"] +OriginTypeValueType = Literal["SOURCE", "TARGET"] +ParquetVersionValueType = Literal["parquet-1-0", "parquet-2-0"] +PluginNameValueType = Literal["no-preference", "pglogical", "test-decoding"] +RedisAuthTypeValueType = Literal["auth-role", "auth-token", "none"] +RefreshSchemasStatusTypeValueType = Literal["failed", "refreshing", "successful"] +ReleaseStatusValuesType = Literal["beta", "prod"] +ReloadOptionValueType = Literal["data-reload", "validate-only"] +ReplicationEndpointTypeValueType = Literal["source", "target"] +ReplicationInstanceAvailableWaiterName = Literal["replication_instance_available"] +ReplicationInstanceDeletedWaiterName = Literal["replication_instance_deleted"] +ReplicationTaskDeletedWaiterName = Literal["replication_task_deleted"] +ReplicationTaskReadyWaiterName = Literal["replication_task_ready"] +ReplicationTaskRunningWaiterName = Literal["replication_task_running"] +ReplicationTaskStoppedWaiterName = Literal["replication_task_stopped"] +SafeguardPolicyType = Literal["exclusive-automatic-truncation", + "rely-on-sql-server-replication-agent", + "shared-automatic-truncation",] +SourceTypeType = Literal["replication-instance"] +SslSecurityProtocolValueType = Literal["plaintext", "ssl-encryption"] +StartReplicationTaskTypeValueType = Literal["reload-target", "resume-processing", "start-replication"] +TargetDbTypeType = Literal["multiple-databases", "specific-database"] +TestConnectionSucceedsWaiterName = Literal["test_connection_succeeds"] +TlogAccessModeType = Literal["BackupOnly", "PreferBackup", "PreferTlog", "TlogOnly"] +VersionStatusType = Literal["OUTDATED", "UNSUPPORTED", "UP_TO_DATE"] +DatabaseMigrationServiceServiceName = Literal["dms"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_certificates", + "describe_connections", + "describe_endpoint_types", + "describe_endpoints", + "describe_event_subscriptions", + "describe_events", + "describe_orderable_replication_instances", + "describe_replication_instances", + "describe_replication_subnet_groups", + "describe_replication_task_assessment_results", + "describe_replication_tasks", + "describe_schemas", + "describe_table_statistics",] +WaiterName = Literal["endpoint_deleted", + "replication_instance_available", + "replication_instance_deleted", + "replication_task_deleted", + "replication_task_ready", + "replication_task_running", + "replication_task_stopped", + "test_connection_succeeds",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +ComputeConfigUnionTypeDef = Union['ComputeConfigTypeDef', 'ComputeConfigOutputTypeDef'] +OracleSettingsUnionTypeDef = Union['OracleSettingsTypeDef', 'OracleSettingsExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/docdb_classes.py b/aws_resource_validator/pydantic_models/docdb_classes.py new file mode 100644 index 00000000..664c558b --- /dev/null +++ b/aws_resource_validator/pydantic_models/docdb_classes.py @@ -0,0 +1,981 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.docdb_constants import * + +class AddSourceIdentifierToSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SourceIdentifier: str + +class EventSubscriptionTypeDef(BaseModel): + CustomerAwsId: Optional[str] = None + CustSubscriptionId: Optional[str] = None + SnsTopicArn: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + SourceType: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + EventCategoriesList: Optional[List[str]] = None + Enabled: Optional[bool] = None + EventSubscriptionArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ApplyPendingMaintenanceActionMessageRequestTypeDef(BaseModel): + ResourceIdentifier: str + ApplyAction: str + OptInType: str + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class CertificateDetailsTypeDef(BaseModel): + CAIdentifier: Optional[str] = None + ValidTill: Optional[datetime] = None + +class CertificateTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + CertificateType: Optional[str] = None + Thumbprint: Optional[str] = None + ValidFrom: Optional[datetime] = None + ValidTill: Optional[datetime] = None + CertificateArn: Optional[str] = None + +class CloudwatchLogsExportConfigurationTypeDef(BaseModel): + EnableLogTypes: Optional[Sequence[str]] = None + DisableLogTypes: Optional[Sequence[str]] = None + +class DBClusterParameterGroupTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + DBClusterParameterGroupArn: Optional[str] = None + +class DBClusterSnapshotTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + DBClusterSnapshotIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[datetime] = None + Engine: Optional[str] = None + Status: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + SnapshotType: Optional[str] = None + PercentProgress: Optional[int] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DBClusterSnapshotArn: Optional[str] = None + SourceDBClusterSnapshotArn: Optional[str] = None + StorageType: Optional[str] = None + +class CreateGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + SourceDBClusterIdentifier: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DeletionProtection: Optional[bool] = None + DatabaseName: Optional[str] = None + StorageEncrypted: Optional[bool] = None + +class DBClusterMemberTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + IsClusterWriter: Optional[bool] = None + DBClusterParameterGroupStatus: Optional[str] = None + PromotionTier: Optional[int] = None + +class ParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + ApplyType: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + ApplyMethod: Optional[ApplyMethodType] = None + +class DBClusterRoleTypeDef(BaseModel): + RoleArn: Optional[str] = None + Status: Optional[str] = None + +class DBClusterSnapshotAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[str]] = None + +class VpcSecurityGroupMembershipTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class UpgradeTargetTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Description: Optional[str] = None + AutoUpgrade: Optional[bool] = None + IsMajorVersionUpgrade: Optional[bool] = None + +class DBInstanceStatusInfoTypeDef(BaseModel): + StatusType: Optional[str] = None + Normal: Optional[bool] = None + Status: Optional[str] = None + Message: Optional[str] = None + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + HostedZoneId: Optional[str] = None + +class DeleteDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SkipFinalSnapshot: Optional[bool] = None + FinalDBSnapshotIdentifier: Optional[str] = None + +class DeleteDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + +class DeleteDBClusterSnapshotMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + +class DeleteDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + +class DeleteDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + +class DeleteEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + +class DeleteGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + +class FilterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeDBClusterSnapshotAttributesMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class EventCategoriesMapTypeDef(BaseModel): + SourceType: Optional[str] = None + EventCategories: Optional[List[str]] = None + +class EventTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + EventCategories: Optional[List[str]] = None + Date: Optional[datetime] = None + SourceArn: Optional[str] = None + +class FailoverDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + TargetDBInstanceIdentifier: Optional[str] = None + +class GlobalClusterMemberTypeDef(BaseModel): + DBClusterArn: Optional[str] = None + Readers: Optional[List[str]] = None + IsWriter: Optional[bool] = None + +class ModifyDBClusterSnapshotAttributeMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + AttributeName: str + ValuesToAdd: Optional[Sequence[str]] = None + ValuesToRemove: Optional[Sequence[str]] = None + +class ModifyDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBInstanceClass: Optional[str] = None + ApplyImmediately: Optional[bool] = None + PreferredMaintenanceWindow: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + NewDBInstanceIdentifier: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + PromotionTier: Optional[int] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + CertificateRotationRestart: Optional[bool] = None + +class ModifyDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + SubnetIds: Sequence[str] + DBSubnetGroupDescription: Optional[str] = None + +class ModifyEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: Optional[str] = None + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class ModifyGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + NewGlobalClusterIdentifier: Optional[str] = None + DeletionProtection: Optional[bool] = None + +class PendingCloudwatchLogsExportsTypeDef(BaseModel): + LogTypesToEnable: Optional[List[str]] = None + LogTypesToDisable: Optional[List[str]] = None + +class PendingMaintenanceActionTypeDef(BaseModel): + Action: Optional[str] = None + AutoAppliedAfterDate: Optional[datetime] = None + ForcedApplyDate: Optional[datetime] = None + OptInStatus: Optional[str] = None + CurrentApplyDate: Optional[datetime] = None + Description: Optional[str] = None + +class RebootDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + ForceFailover: Optional[bool] = None + +class RemoveFromGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + DbClusterIdentifier: str + +class RemoveSourceIdentifierFromSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SourceIdentifier: str + +class RemoveTagsFromResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + TagKeys: Sequence[str] + +class StartDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class StopDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class SwitchoverGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + TargetDbClusterIdentifier: str + +class AddSourceIdentifierToSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupNameMessageTypeDef(BaseModel): + DBClusterParameterGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EventSubscriptionsMessageTypeDef(BaseModel): + Marker: str + EventSubscriptionsList: List[EventSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveSourceIdentifierFromSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsToResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Tags: Sequence[TagTypeDef] + +class CopyDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + SourceDBClusterParameterGroupIdentifier: str + TargetDBClusterParameterGroupIdentifier: str + TargetDBClusterParameterGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CopyDBClusterSnapshotMessageRequestTypeDef(BaseModel): + SourceDBClusterSnapshotIdentifier: str + TargetDBClusterSnapshotIdentifier: str + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + CopyTags: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SourceRegion: Optional[str] = None + +class CreateDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + Engine: str + AvailabilityZones: Optional[Sequence[str]] = None + BackupRetentionPeriod: Optional[int] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + DBSubnetGroupName: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + MasterUserPassword: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DeletionProtection: Optional[bool] = None + GlobalClusterIdentifier: Optional[str] = None + StorageType: Optional[str] = None + SourceRegion: Optional[str] = None + +class CreateDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + DBParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBClusterSnapshotMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + DBClusterIdentifier: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBInstanceClass: str + Engine: str + DBClusterIdentifier: str + AvailabilityZone: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CopyTagsToSnapshot: Optional[bool] = None + PromotionTier: Optional[int] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + +class CreateDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + DBSubnetGroupDescription: str + SubnetIds: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: str + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + SourceIds: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class RestoreDBClusterFromSnapshotMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SnapshotIdentifier: str + Engine: str + AvailabilityZones: Optional[Sequence[str]] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + DBSubnetGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DeletionProtection: Optional[bool] = None + DBClusterParameterGroupName: Optional[str] = None + StorageType: Optional[str] = None + +class TagListMessageTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OrderableDBInstanceOptionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + Vpc: Optional[bool] = None + StorageType: Optional[str] = None + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + SubnetStatus: Optional[str] = None + +class CertificateMessageTypeDef(BaseModel): + Certificates: List[CertificateTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + NewDBClusterIdentifier: Optional[str] = None + ApplyImmediately: Optional[bool] = None + BackupRetentionPeriod: Optional[int] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Port: Optional[int] = None + MasterUserPassword: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + CloudwatchLogsExportConfiguration: Optional[CloudwatchLogsExportConfigurationTypeDef] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + DeletionProtection: Optional[bool] = None + StorageType: Optional[str] = None + +class CopyDBClusterParameterGroupResultTypeDef(BaseModel): + DBClusterParameterGroup: DBClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterParameterGroupResultTypeDef(BaseModel): + DBClusterParameterGroup: DBClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupsMessageTypeDef(BaseModel): + Marker: str + DBClusterParameterGroups: List[DBClusterParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CopyDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterSnapshotMessageTypeDef(BaseModel): + Marker: str + DBClusterSnapshots: List[DBClusterSnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupDetailsTypeDef(BaseModel): + Parameters: List[ParameterTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class EngineDefaultsTypeDef(BaseModel): + DBParameterGroupFamily: Optional[str] = None + Marker: Optional[str] = None + Parameters: Optional[List[ParameterTypeDef]] = None + +class ModifyDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + Parameters: Sequence[ParameterTypeDef] + +class ResetDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + ResetAllParameters: Optional[bool] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + +class DBClusterSnapshotAttributesResultTypeDef(BaseModel): + DBClusterSnapshotIdentifier: Optional[str] = None + DBClusterSnapshotAttributes: Optional[List[DBClusterSnapshotAttributeTypeDef]] = None + +class DBClusterTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + BackupRetentionPeriod: Optional[int] = None + DBClusterIdentifier: Optional[str] = None + DBClusterParameterGroup: Optional[str] = None + DBSubnetGroup: Optional[str] = None + Status: Optional[str] = None + PercentProgress: Optional[str] = None + EarliestRestorableTime: Optional[datetime] = None + Endpoint: Optional[str] = None + ReaderEndpoint: Optional[str] = None + MultiAZ: Optional[bool] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + LatestRestorableTime: Optional[datetime] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSourceIdentifier: Optional[str] = None + ReadReplicaIdentifiers: Optional[List[str]] = None + DBClusterMembers: Optional[List[DBClusterMemberTypeDef]] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + HostedZoneId: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterResourceId: Optional[str] = None + DBClusterArn: Optional[str] = None + AssociatedRoles: Optional[List[DBClusterRoleTypeDef]] = None + CloneGroupId: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + EnabledCloudwatchLogsExports: Optional[List[str]] = None + DeletionProtection: Optional[bool] = None + StorageType: Optional[str] = None + +class DBEngineVersionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + DBEngineDescription: Optional[str] = None + DBEngineVersionDescription: Optional[str] = None + ValidUpgradeTarget: Optional[List[UpgradeTargetTypeDef]] = None + ExportableLogTypes: Optional[List[str]] = None + SupportsLogExportsToCloudwatchLogs: Optional[bool] = None + SupportedCACertificateIdentifiers: Optional[List[str]] = None + SupportsCertificateRotationWithoutRestart: Optional[bool] = None + +class DescribeCertificatesMessageRequestTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterParameterGroupsMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterParametersMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterSnapshotsMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + +class DescribeDBClustersMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBEngineVersionsMessageRequestTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + DefaultOnly: Optional[bool] = None + ListSupportedCharacterSets: Optional[bool] = None + ListSupportedTimezones: Optional[bool] = None + +class DescribeDBInstancesMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBSubnetGroupsMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEngineDefaultClusterParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventCategoriesMessageRequestTypeDef(BaseModel): + SourceType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeEventSubscriptionsMessageRequestTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeGlobalClustersMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeOrderableDBInstanceOptionsMessageRequestTypeDef(BaseModel): + Engine: str + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + Vpc: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribePendingMaintenanceActionsMessageRequestTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class ListTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeCertificatesMessageDescribeCertificatesPaginateTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterParameterGroupsMessageDescribeDBClusterParameterGroupsPaginateTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterParametersMessageDescribeDBClusterParametersPaginateTypeDef(BaseModel): + DBClusterParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterSnapshotsMessageDescribeDBClusterSnapshotsPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClustersMessageDescribeDBClustersPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBEngineVersionsMessageDescribeDBEngineVersionsPaginateTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DefaultOnly: Optional[bool] = None + ListSupportedCharacterSets: Optional[bool] = None + ListSupportedTimezones: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBInstancesMessageDescribeDBInstancesPaginateTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBSubnetGroupsMessageDescribeDBSubnetGroupsPaginateTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventSubscriptionsMessageDescribeEventSubscriptionsPaginateTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGlobalClustersMessageDescribeGlobalClustersPaginateTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrderableDBInstanceOptionsMessageDescribeOrderableDBInstanceOptionsPaginateTypeDef(BaseModel): + Engine: str + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + Vpc: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBInstancesMessageDBInstanceAvailableWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBInstancesMessageDBInstanceDeletedWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageRequestTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class RestoreDBClusterToPointInTimeMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SourceDBClusterIdentifier: str + RestoreType: Optional[str] = None + RestoreToTime: Optional[TimestampTypeDef] = None + UseLatestRestorableTime: Optional[bool] = None + Port: Optional[int] = None + DBSubnetGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DeletionProtection: Optional[bool] = None + StorageType: Optional[str] = None + +class EventCategoriesMessageTypeDef(BaseModel): + EventCategoriesMapList: List[EventCategoriesMapTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EventsMessageTypeDef(BaseModel): + Marker: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalClusterTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + GlobalClusterResourceId: Optional[str] = None + GlobalClusterArn: Optional[str] = None + Status: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DatabaseName: Optional[str] = None + StorageEncrypted: Optional[bool] = None + DeletionProtection: Optional[bool] = None + GlobalClusterMembers: Optional[List[GlobalClusterMemberTypeDef]] = None + +class PendingModifiedValuesTypeDef(BaseModel): + DBInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUserPassword: Optional[str] = None + Port: Optional[int] = None + BackupRetentionPeriod: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + DBInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + PendingCloudwatchLogsExports: Optional[PendingCloudwatchLogsExportsTypeDef] = None + +class ResourcePendingMaintenanceActionsTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + PendingMaintenanceActionDetails: Optional[List[PendingMaintenanceActionTypeDef]] = None + +class OrderableDBInstanceOptionsMessageTypeDef(BaseModel): + OrderableDBInstanceOptions: List[OrderableDBInstanceOptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBSubnetGroupTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + DBSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + DBSubnetGroupArn: Optional[str] = None + +class DescribeEngineDefaultClusterParametersResultTypeDef(BaseModel): + EngineDefaults: EngineDefaultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBClusterSnapshotAttributesResultTypeDef(BaseModel): + DBClusterSnapshotAttributesResult: DBClusterSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterSnapshotAttributeResultTypeDef(BaseModel): + DBClusterSnapshotAttributesResult: DBClusterSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterMessageTypeDef(BaseModel): + Marker: str + DBClusters: List[DBClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterFromSnapshotResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterToPointInTimeResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBEngineVersionMessageTypeDef(BaseModel): + Marker: str + DBEngineVersions: List[DBEngineVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalClustersMessageTypeDef(BaseModel): + Marker: str + GlobalClusters: List[GlobalClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFromGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SwitchoverGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplyPendingMaintenanceActionResultTypeDef(BaseModel): + ResourcePendingMaintenanceActions: ResourcePendingMaintenanceActionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PendingMaintenanceActionsMessageTypeDef(BaseModel): + PendingMaintenanceActions: List[ResourcePendingMaintenanceActionsTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBSubnetGroupResultTypeDef(BaseModel): + DBSubnetGroup: DBSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + Engine: Optional[str] = None + DBInstanceStatus: Optional[str] = None + Endpoint: Optional[EndpointTypeDef] = None + InstanceCreateTime: Optional[datetime] = None + PreferredBackupWindow: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroup: Optional[DBSubnetGroupTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[PendingModifiedValuesTypeDef] = None + LatestRestorableTime: Optional[datetime] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + PubliclyAccessible: Optional[bool] = None + StatusInfos: Optional[List[DBInstanceStatusInfoTypeDef]] = None + DBClusterIdentifier: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbiResourceId: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + PromotionTier: Optional[int] = None + DBInstanceArn: Optional[str] = None + EnabledCloudwatchLogsExports: Optional[List[str]] = None + CertificateDetails: Optional[CertificateDetailsTypeDef] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + +class DBSubnetGroupMessageTypeDef(BaseModel): + Marker: str + DBSubnetGroups: List[DBSubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBSubnetGroupResultTypeDef(BaseModel): + DBSubnetGroup: DBSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceMessageTypeDef(BaseModel): + Marker: str + DBInstances: List[DBInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/docdb_constants.py b/aws_resource_validator/pydantic_models/docdb_constants.py new file mode 100644 index 00000000..61546b81 --- /dev/null +++ b/aws_resource_validator/pydantic_models/docdb_constants.py @@ -0,0 +1,465 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplyMethodType = Literal["immediate", "pending-reboot"] +DBInstanceAvailableWaiterName = Literal["db_instance_available"] +DBInstanceDeletedWaiterName = Literal["db_instance_deleted"] +DescribeCertificatesPaginatorName = Literal["describe_certificates"] +DescribeDBClusterParameterGroupsPaginatorName = Literal["describe_db_cluster_parameter_groups"] +DescribeDBClusterParametersPaginatorName = Literal["describe_db_cluster_parameters"] +DescribeDBClusterSnapshotsPaginatorName = Literal["describe_db_cluster_snapshots"] +DescribeDBClustersPaginatorName = Literal["describe_db_clusters"] +DescribeDBEngineVersionsPaginatorName = Literal["describe_db_engine_versions"] +DescribeDBInstancesPaginatorName = Literal["describe_db_instances"] +DescribeDBSubnetGroupsPaginatorName = Literal["describe_db_subnet_groups"] +DescribeEventSubscriptionsPaginatorName = Literal["describe_event_subscriptions"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeGlobalClustersPaginatorName = Literal["describe_global_clusters"] +DescribeOrderableDBInstanceOptionsPaginatorName = Literal["describe_orderable_db_instance_options"] +DescribePendingMaintenanceActionsPaginatorName = Literal["describe_pending_maintenance_actions"] +SourceTypeType = Literal["db-cluster", + "db-cluster-snapshot", + "db-instance", + "db-parameter-group", + "db-security-group", + "db-snapshot",] +DocDBServiceName = Literal["docdb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_certificates", + "describe_db_cluster_parameter_groups", + "describe_db_cluster_parameters", + "describe_db_cluster_snapshots", + "describe_db_clusters", + "describe_db_engine_versions", + "describe_db_instances", + "describe_db_subnet_groups", + "describe_event_subscriptions", + "describe_events", + "describe_global_clusters", + "describe_orderable_db_instance_options", + "describe_pending_maintenance_actions",] +WaiterName = Literal["db_instance_available", "db_instance_deleted"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/docdb_elastic_classes.py b/aws_resource_validator/pydantic_models/docdb_elastic_classes.py new file mode 100644 index 00000000..6e75ed28 --- /dev/null +++ b/aws_resource_validator/pydantic_models/docdb_elastic_classes.py @@ -0,0 +1,232 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.docdb_elastic_constants import * + +class ClusterInListTypeDef(BaseModel): + clusterArn: str + clusterName: str + status: StatusType + +class ClusterSnapshotInListTypeDef(BaseModel): + clusterArn: str + snapshotArn: str + snapshotCreationTime: str + snapshotName: str + status: StatusType + +class ClusterSnapshotTypeDef(BaseModel): + adminUserName: str + clusterArn: str + clusterCreationTime: str + kmsKeyId: str + snapshotArn: str + snapshotCreationTime: str + snapshotName: str + status: StatusType + subnetIds: List[str] + vpcSecurityGroupIds: List[str] + snapshotType: Optional[SnapshotTypeType] = None + +class ShardTypeDef(BaseModel): + createTime: str + shardId: str + status: StatusType + +class CopyClusterSnapshotInputRequestTypeDef(BaseModel): + snapshotArn: str + targetSnapshotName: str + copyTags: Optional[bool] = None + kmsKeyId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateClusterInputRequestTypeDef(BaseModel): + adminUserName: str + adminUserPassword: str + authType: AuthType + clusterName: str + shardCapacity: int + shardCount: int + backupRetentionPeriod: Optional[int] = None + clientToken: Optional[str] = None + kmsKeyId: Optional[str] = None + preferredBackupWindow: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + shardInstanceCount: Optional[int] = None + subnetIds: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + vpcSecurityGroupIds: Optional[Sequence[str]] = None + +class CreateClusterSnapshotInputRequestTypeDef(BaseModel): + clusterArn: str + snapshotName: str + tags: Optional[Mapping[str, str]] = None + +class DeleteClusterInputRequestTypeDef(BaseModel): + clusterArn: str + +class DeleteClusterSnapshotInputRequestTypeDef(BaseModel): + snapshotArn: str + +class GetClusterInputRequestTypeDef(BaseModel): + clusterArn: str + +class GetClusterSnapshotInputRequestTypeDef(BaseModel): + snapshotArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListClusterSnapshotsInputRequestTypeDef(BaseModel): + clusterArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + snapshotType: Optional[str] = None + +class ListClustersInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RestoreClusterFromSnapshotInputRequestTypeDef(BaseModel): + clusterName: str + snapshotArn: str + kmsKeyId: Optional[str] = None + shardCapacity: Optional[int] = None + shardInstanceCount: Optional[int] = None + subnetIds: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + vpcSecurityGroupIds: Optional[Sequence[str]] = None + +class StartClusterInputRequestTypeDef(BaseModel): + clusterArn: str + +class StopClusterInputRequestTypeDef(BaseModel): + clusterArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateClusterInputRequestTypeDef(BaseModel): + clusterArn: str + adminUserPassword: Optional[str] = None + authType: Optional[AuthType] = None + backupRetentionPeriod: Optional[int] = None + clientToken: Optional[str] = None + preferredBackupWindow: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + shardCapacity: Optional[int] = None + shardCount: Optional[int] = None + shardInstanceCount: Optional[int] = None + subnetIds: Optional[Sequence[str]] = None + vpcSecurityGroupIds: Optional[Sequence[str]] = None + +class ClusterTypeDef(BaseModel): + adminUserName: str + authType: AuthType + clusterArn: str + clusterEndpoint: str + clusterName: str + createTime: str + kmsKeyId: str + preferredMaintenanceWindow: str + shardCapacity: int + shardCount: int + status: StatusType + subnetIds: List[str] + vpcSecurityGroupIds: List[str] + backupRetentionPeriod: Optional[int] = None + preferredBackupWindow: Optional[str] = None + shardInstanceCount: Optional[int] = None + shards: Optional[List[ShardTypeDef]] = None + +class CopyClusterSnapshotOutputTypeDef(BaseModel): + snapshot: ClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterSnapshotOutputTypeDef(BaseModel): + snapshot: ClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterSnapshotOutputTypeDef(BaseModel): + snapshot: ClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetClusterSnapshotOutputTypeDef(BaseModel): + snapshot: ClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListClusterSnapshotsOutputTypeDef(BaseModel): + nextToken: str + snapshots: List[ClusterSnapshotInListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersOutputTypeDef(BaseModel): + clusters: List[ClusterInListTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListClusterSnapshotsInputListClusterSnapshotsPaginateTypeDef(BaseModel): + clusterArn: Optional[str] = None + snapshotType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersInputListClustersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateClusterOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetClusterOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreClusterFromSnapshotOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartClusterOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopClusterOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterOutputTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/docdb_elastic_constants.py b/aws_resource_validator/pydantic_models/docdb_elastic_constants.py new file mode 100644 index 00000000..efa3fb1b --- /dev/null +++ b/aws_resource_validator/pydantic_models/docdb_elastic_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthType = Literal["PLAIN_TEXT", "SECRET_ARN"] +ListClusterSnapshotsPaginatorName = Literal["list_cluster_snapshots"] +ListClustersPaginatorName = Literal["list_clusters"] +SnapshotTypeType = Literal["AUTOMATED", "MANUAL"] +StatusType = Literal["ACTIVE", + "COPYING", + "CREATING", + "DELETING", + "INACCESSIBLE_ENCRYPTION_CREDS", + "INACCESSIBLE_SECRET_ARN", + "INACCESSIBLE_VPC_ENDPOINT", + "INCOMPATIBLE_NETWORK", + "INVALID_SECURITY_GROUP_ID", + "INVALID_SUBNET_ID", + "IP_ADDRESS_LIMIT_EXCEEDED", + "MERGING", + "MODIFYING", + "SPLITTING", + "STARTING", + "STOPPED", + "STOPPING", + "UPDATING", + "VPC_ENDPOINT_LIMIT_EXCEEDED",] +DocDBElasticServiceName = Literal["docdb-elastic"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_cluster_snapshots", "list_clusters"] diff --git a/aws_resource_validator/pydantic_models/drs_classes.py b/aws_resource_validator/pydantic_models/drs_classes.py new file mode 100644 index 00000000..651057e9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/drs_classes.py @@ -0,0 +1,938 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.drs_constants import * + +class AccountTypeDef(BaseModel): + accountID: Optional[str] = None + +class AssociateSourceNetworkStackRequestRequestTypeDef(BaseModel): + cfnStackName: str + sourceNetworkID: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CPUTypeDef(BaseModel): + cores: Optional[int] = None + modelName: Optional[str] = None + +class ProductCodeTypeDef(BaseModel): + productCodeId: Optional[str] = None + productCodeMode: Optional[ProductCodeModeType] = None + +class CreateExtendedSourceServerRequestRequestTypeDef(BaseModel): + sourceServerArn: str + tags: Optional[Mapping[str, str]] = None + +class LicensingTypeDef(BaseModel): + osByol: Optional[bool] = None + +class PITPolicyRuleTypeDef(BaseModel): + interval: int + retentionDuration: int + units: PITPolicyRuleUnitsType + enabled: Optional[bool] = None + ruleID: Optional[int] = None + +class CreateSourceNetworkRequestRequestTypeDef(BaseModel): + originAccountID: str + originRegion: str + vpcID: str + tags: Optional[Mapping[str, str]] = None + +class DataReplicationErrorTypeDef(BaseModel): + error: Optional[DataReplicationErrorStringType] = None + rawError: Optional[str] = None + +class DataReplicationInfoReplicatedDiskTypeDef(BaseModel): + backloggedStorageBytes: Optional[int] = None + deviceName: Optional[str] = None + replicatedStorageBytes: Optional[int] = None + rescannedStorageBytes: Optional[int] = None + totalStorageBytes: Optional[int] = None + volumeStatus: Optional[VolumeStatusType] = None + +class DataReplicationInitiationStepTypeDef(BaseModel): + name: Optional[DataReplicationInitiationStepNameType] = None + status: Optional[DataReplicationInitiationStepStatusType] = None + +class DeleteJobRequestRequestTypeDef(BaseModel): + jobID: str + +class DeleteLaunchActionRequestRequestTypeDef(BaseModel): + actionId: str + resourceId: str + +class DeleteLaunchConfigurationTemplateRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateID: str + +class DeleteRecoveryInstanceRequestRequestTypeDef(BaseModel): + recoveryInstanceID: str + +class DeleteReplicationConfigurationTemplateRequestRequestTypeDef(BaseModel): + replicationConfigurationTemplateID: str + +class DeleteSourceNetworkRequestRequestTypeDef(BaseModel): + sourceNetworkID: str + +class DeleteSourceServerRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeJobLogItemsRequestRequestTypeDef(BaseModel): + jobID: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeJobsRequestFiltersTypeDef(BaseModel): + fromDate: Optional[str] = None + jobIDs: Optional[Sequence[str]] = None + toDate: Optional[str] = None + +class DescribeLaunchConfigurationTemplatesRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateIDs: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeRecoveryInstancesRequestFiltersTypeDef(BaseModel): + recoveryInstanceIDs: Optional[Sequence[str]] = None + sourceServerIDs: Optional[Sequence[str]] = None + +class DescribeRecoverySnapshotsRequestFiltersTypeDef(BaseModel): + fromDateTime: Optional[str] = None + toDateTime: Optional[str] = None + +class RecoverySnapshotTypeDef(BaseModel): + expectedTimestamp: str + snapshotID: str + sourceServerID: str + ebsSnapshots: Optional[List[str]] = None + timestamp: Optional[str] = None + +class DescribeReplicationConfigurationTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + replicationConfigurationTemplateIDs: Optional[Sequence[str]] = None + +class DescribeSourceNetworksRequestFiltersTypeDef(BaseModel): + originAccountID: Optional[str] = None + originRegion: Optional[str] = None + sourceNetworkIDs: Optional[Sequence[str]] = None + +class DescribeSourceServersRequestFiltersTypeDef(BaseModel): + hardwareId: Optional[str] = None + sourceServerIDs: Optional[Sequence[str]] = None + stagingAccountIDs: Optional[Sequence[str]] = None + +class DisconnectRecoveryInstanceRequestRequestTypeDef(BaseModel): + recoveryInstanceID: str + +class DisconnectSourceServerRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class DiskTypeDef(BaseModel): + bytes: Optional[int] = None + deviceName: Optional[str] = None + +class SourceNetworkDataTypeDef(BaseModel): + sourceNetworkID: Optional[str] = None + sourceVpc: Optional[str] = None + stackName: Optional[str] = None + targetVpc: Optional[str] = None + +class ExportSourceNetworkCfnTemplateRequestRequestTypeDef(BaseModel): + sourceNetworkID: str + +class GetFailbackReplicationConfigurationRequestRequestTypeDef(BaseModel): + recoveryInstanceID: str + +class GetLaunchConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class GetReplicationConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class IdentificationHintsTypeDef(BaseModel): + awsInstanceID: Optional[str] = None + fqdn: Optional[str] = None + hostname: Optional[str] = None + vmWareUuid: Optional[str] = None + +class LaunchActionParameterTypeDef(BaseModel): + type: Optional[LaunchActionParameterTypeType] = None + value: Optional[str] = None + +class LaunchActionsRequestFiltersTypeDef(BaseModel): + actionIds: Optional[Sequence[str]] = None + +class LaunchIntoInstancePropertiesTypeDef(BaseModel): + launchIntoEC2InstanceID: Optional[str] = None + +class LifeCycleLastLaunchInitiatedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + jobID: Optional[str] = None + type: Optional[LastLaunchTypeType] = None + +class ListExtensibleSourceServersRequestRequestTypeDef(BaseModel): + stagingAccountID: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StagingSourceServerTypeDef(BaseModel): + arn: Optional[str] = None + hostname: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListStagingAccountsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class NetworkInterfaceTypeDef(BaseModel): + ips: Optional[List[str]] = None + isPrimary: Optional[bool] = None + macAddress: Optional[str] = None + +class OSTypeDef(BaseModel): + fullString: Optional[str] = None + +class ParticipatingResourceIDTypeDef(BaseModel): + sourceNetworkID: Optional[str] = None + +class RecoveryInstanceDataReplicationErrorTypeDef(BaseModel): + error: Optional[FailbackReplicationErrorType] = None + rawError: Optional[str] = None + +class RecoveryInstanceDataReplicationInfoReplicatedDiskTypeDef(BaseModel): + backloggedStorageBytes: Optional[int] = None + deviceName: Optional[str] = None + replicatedStorageBytes: Optional[int] = None + rescannedStorageBytes: Optional[int] = None + totalStorageBytes: Optional[int] = None + +class RecoveryInstanceDataReplicationInitiationStepTypeDef(BaseModel): + name: Optional[RecoveryInstanceDataReplicationInitiationStepNameType] = None + status: Optional[RecoveryInstanceDataReplicationInitiationStepStatusType] = None + +class RecoveryInstanceDiskTypeDef(BaseModel): + bytes: Optional[int] = None + ebsVolumeID: Optional[str] = None + internalDeviceName: Optional[str] = None + +class RecoveryInstanceFailbackTypeDef(BaseModel): + agentLastSeenByServiceDateTime: Optional[str] = None + elapsedReplicationDuration: Optional[str] = None + failbackClientID: Optional[str] = None + failbackClientLastSeenByServiceDateTime: Optional[str] = None + failbackInitiationTime: Optional[str] = None + failbackJobID: Optional[str] = None + failbackLaunchType: Optional[FailbackLaunchTypeType] = None + failbackToOriginalServer: Optional[bool] = None + firstByteDateTime: Optional[str] = None + state: Optional[FailbackStateType] = None + +class RecoveryLifeCycleTypeDef(BaseModel): + apiCallDateTime: Optional[datetime] = None + jobID: Optional[str] = None + lastRecoveryResult: Optional[RecoveryResultType] = None + +class ReplicationConfigurationReplicatedDiskTypeDef(BaseModel): + deviceName: Optional[str] = None + iops: Optional[int] = None + isBootDisk: Optional[bool] = None + optimizedStagingDiskType: Optional[ ReplicationConfigurationReplicatedDiskStagingDiskTypeType ] = None + stagingDiskType: Optional[ReplicationConfigurationReplicatedDiskStagingDiskTypeType] = None + throughput: Optional[int] = None + +class RetryDataReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class ReverseReplicationRequestRequestTypeDef(BaseModel): + recoveryInstanceID: str + +class SourceCloudPropertiesTypeDef(BaseModel): + originAccountID: Optional[str] = None + originAvailabilityZone: Optional[str] = None + originRegion: Optional[str] = None + sourceOutpostArn: Optional[str] = None + +class StagingAreaTypeDef(BaseModel): + errorMessage: Optional[str] = None + stagingAccountID: Optional[str] = None + stagingSourceServerArn: Optional[str] = None + status: Optional[ExtensionStatusType] = None + +class StartFailbackLaunchRequestRequestTypeDef(BaseModel): + recoveryInstanceIDs: Sequence[str] + tags: Optional[Mapping[str, str]] = None + +class StartRecoveryRequestSourceServerTypeDef(BaseModel): + sourceServerID: str + recoverySnapshotID: Optional[str] = None + +class StartReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class StartSourceNetworkRecoveryRequestNetworkEntryTypeDef(BaseModel): + sourceNetworkID: str + cfnStackName: Optional[str] = None + +class StartSourceNetworkReplicationRequestRequestTypeDef(BaseModel): + sourceNetworkID: str + +class StopFailbackRequestRequestTypeDef(BaseModel): + recoveryInstanceID: str + +class StopReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + +class StopSourceNetworkReplicationRequestRequestTypeDef(BaseModel): + sourceNetworkID: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TerminateRecoveryInstancesRequestRequestTypeDef(BaseModel): + recoveryInstanceIDs: Sequence[str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateFailbackReplicationConfigurationRequestRequestTypeDef(BaseModel): + recoveryInstanceID: str + bandwidthThrottling: Optional[int] = None + name: Optional[str] = None + usePrivateIP: Optional[bool] = None + +class CreateSourceNetworkResponseTypeDef(BaseModel): + sourceNetworkID: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportSourceNetworkCfnTemplateResponseTypeDef(BaseModel): + s3DestinationUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFailbackReplicationConfigurationResponseTypeDef(BaseModel): + bandwidthThrottling: int + name: str + recoveryInstanceID: str + usePrivateIP: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListStagingAccountsResponseTypeDef(BaseModel): + accounts: List[AccountTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ReverseReplicationResponseTypeDef(BaseModel): + reversedDirectionSourceServerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConversionPropertiesTypeDef(BaseModel): + dataTimestamp: Optional[str] = None + forceUefi: Optional[bool] = None + rootVolumeName: Optional[str] = None + volumeToConversionMap: Optional[Dict[str, Dict[str, str]]] = None + volumeToProductCodes: Optional[Dict[str, List[ProductCodeTypeDef]]] = None + volumeToVolumeSize: Optional[Dict[str, int]] = None + +class CreateLaunchConfigurationTemplateRequestRequestTypeDef(BaseModel): + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + exportBucketArn: Optional[str] = None + launchDisposition: Optional[LaunchDispositionType] = None + launchIntoSourceInstance: Optional[bool] = None + licensing: Optional[LicensingTypeDef] = None + postLaunchEnabled: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class LaunchConfigurationTemplateTypeDef(BaseModel): + arn: Optional[str] = None + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + exportBucketArn: Optional[str] = None + launchConfigurationTemplateID: Optional[str] = None + launchDisposition: Optional[LaunchDispositionType] = None + launchIntoSourceInstance: Optional[bool] = None + licensing: Optional[LicensingTypeDef] = None + postLaunchEnabled: Optional[bool] = None + tags: Optional[Dict[str, str]] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class UpdateLaunchConfigurationTemplateRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateID: str + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + exportBucketArn: Optional[str] = None + launchDisposition: Optional[LaunchDispositionType] = None + launchIntoSourceInstance: Optional[bool] = None + licensing: Optional[LicensingTypeDef] = None + postLaunchEnabled: Optional[bool] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class CreateReplicationConfigurationTemplateRequestRequestTypeDef(BaseModel): + associateDefaultSecurityGroup: bool + bandwidthThrottling: int + createPublicIP: bool + dataPlaneRouting: ReplicationConfigurationDataPlaneRoutingType + defaultLargeStagingDiskType: ReplicationConfigurationDefaultLargeStagingDiskTypeType + ebsEncryption: ReplicationConfigurationEbsEncryptionType + pitPolicy: Sequence[PITPolicyRuleTypeDef] + replicationServerInstanceType: str + replicationServersSecurityGroupsIDs: Sequence[str] + stagingAreaSubnetId: str + stagingAreaTags: Mapping[str, str] + useDedicatedReplicationServer: bool + autoReplicateNewDisks: Optional[bool] = None + ebsEncryptionKeyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ReplicationConfigurationTemplateResponseTypeDef(BaseModel): + arn: str + associateDefaultSecurityGroup: bool + autoReplicateNewDisks: bool + bandwidthThrottling: int + createPublicIP: bool + dataPlaneRouting: ReplicationConfigurationDataPlaneRoutingType + defaultLargeStagingDiskType: ReplicationConfigurationDefaultLargeStagingDiskTypeType + ebsEncryption: ReplicationConfigurationEbsEncryptionType + ebsEncryptionKeyArn: str + pitPolicy: List[PITPolicyRuleTypeDef] + replicationConfigurationTemplateID: str + replicationServerInstanceType: str + replicationServersSecurityGroupsIDs: List[str] + stagingAreaSubnetId: str + stagingAreaTags: Dict[str, str] + tags: Dict[str, str] + useDedicatedReplicationServer: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationConfigurationTemplateTypeDef(BaseModel): + replicationConfigurationTemplateID: str + arn: Optional[str] = None + associateDefaultSecurityGroup: Optional[bool] = None + autoReplicateNewDisks: Optional[bool] = None + bandwidthThrottling: Optional[int] = None + createPublicIP: Optional[bool] = None + dataPlaneRouting: Optional[ReplicationConfigurationDataPlaneRoutingType] = None + defaultLargeStagingDiskType: Optional[ ReplicationConfigurationDefaultLargeStagingDiskTypeType ] = None + ebsEncryption: Optional[ReplicationConfigurationEbsEncryptionType] = None + ebsEncryptionKeyArn: Optional[str] = None + pitPolicy: Optional[List[PITPolicyRuleTypeDef]] = None + replicationServerInstanceType: Optional[str] = None + replicationServersSecurityGroupsIDs: Optional[List[str]] = None + stagingAreaSubnetId: Optional[str] = None + stagingAreaTags: Optional[Dict[str, str]] = None + tags: Optional[Dict[str, str]] = None + useDedicatedReplicationServer: Optional[bool] = None + +class UpdateReplicationConfigurationTemplateRequestRequestTypeDef(BaseModel): + replicationConfigurationTemplateID: str + arn: Optional[str] = None + associateDefaultSecurityGroup: Optional[bool] = None + autoReplicateNewDisks: Optional[bool] = None + bandwidthThrottling: Optional[int] = None + createPublicIP: Optional[bool] = None + dataPlaneRouting: Optional[ReplicationConfigurationDataPlaneRoutingType] = None + defaultLargeStagingDiskType: Optional[ ReplicationConfigurationDefaultLargeStagingDiskTypeType ] = None + ebsEncryption: Optional[ReplicationConfigurationEbsEncryptionType] = None + ebsEncryptionKeyArn: Optional[str] = None + pitPolicy: Optional[Sequence[PITPolicyRuleTypeDef]] = None + replicationServerInstanceType: Optional[str] = None + replicationServersSecurityGroupsIDs: Optional[Sequence[str]] = None + stagingAreaSubnetId: Optional[str] = None + stagingAreaTags: Optional[Mapping[str, str]] = None + useDedicatedReplicationServer: Optional[bool] = None + +class DataReplicationInitiationTypeDef(BaseModel): + nextAttemptDateTime: Optional[str] = None + startDateTime: Optional[str] = None + steps: Optional[List[DataReplicationInitiationStepTypeDef]] = None + +class DescribeJobLogItemsRequestDescribeJobLogItemsPaginateTypeDef(BaseModel): + jobID: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLaunchConfigurationTemplatesRequestDescribeLaunchConfigurationTemplatesPaginateTypeDef(BaseModel): + launchConfigurationTemplateIDs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationConfigurationTemplatesRequestDescribeReplicationConfigurationTemplatesPaginateTypeDef(BaseModel): + replicationConfigurationTemplateIDs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExtensibleSourceServersRequestListExtensibleSourceServersPaginateTypeDef(BaseModel): + stagingAccountID: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStagingAccountsRequestListStagingAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeJobsRequestDescribeJobsPaginateTypeDef(BaseModel): + filters: Optional[DescribeJobsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeJobsRequestRequestTypeDef(BaseModel): + filters: Optional[DescribeJobsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeRecoveryInstancesRequestDescribeRecoveryInstancesPaginateTypeDef(BaseModel): + filters: Optional[DescribeRecoveryInstancesRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRecoveryInstancesRequestRequestTypeDef(BaseModel): + filters: Optional[DescribeRecoveryInstancesRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeRecoverySnapshotsRequestDescribeRecoverySnapshotsPaginateTypeDef(BaseModel): + sourceServerID: str + filters: Optional[DescribeRecoverySnapshotsRequestFiltersTypeDef] = None + order: Optional[RecoverySnapshotsOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRecoverySnapshotsRequestRequestTypeDef(BaseModel): + sourceServerID: str + filters: Optional[DescribeRecoverySnapshotsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + order: Optional[RecoverySnapshotsOrderType] = None + +class DescribeRecoverySnapshotsResponseTypeDef(BaseModel): + items: List[RecoverySnapshotTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSourceNetworksRequestDescribeSourceNetworksPaginateTypeDef(BaseModel): + filters: Optional[DescribeSourceNetworksRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSourceNetworksRequestRequestTypeDef(BaseModel): + filters: Optional[DescribeSourceNetworksRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeSourceServersRequestDescribeSourceServersPaginateTypeDef(BaseModel): + filters: Optional[DescribeSourceServersRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSourceServersRequestRequestTypeDef(BaseModel): + filters: Optional[DescribeSourceServersRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class EventResourceDataTypeDef(BaseModel): + sourceNetworkData: Optional[SourceNetworkDataTypeDef] = None + +class LaunchActionTypeDef(BaseModel): + actionCode: Optional[str] = None + actionId: Optional[str] = None + actionVersion: Optional[str] = None + active: Optional[bool] = None + category: Optional[LaunchActionCategoryType] = None + description: Optional[str] = None + name: Optional[str] = None + optional: Optional[bool] = None + order: Optional[int] = None + parameters: Optional[Dict[str, LaunchActionParameterTypeDef]] = None + type: Optional[LaunchActionTypeType] = None + +class PutLaunchActionRequestRequestTypeDef(BaseModel): + actionCode: str + actionId: str + actionVersion: str + active: bool + category: LaunchActionCategoryType + description: str + name: str + optional: bool + order: int + resourceId: str + parameters: Optional[Mapping[str, LaunchActionParameterTypeDef]] = None + +class PutLaunchActionResponseTypeDef(BaseModel): + actionCode: str + actionId: str + actionVersion: str + active: bool + category: LaunchActionCategoryType + description: str + name: str + optional: bool + order: int + parameters: Dict[str, LaunchActionParameterTypeDef] + resourceId: str + type: LaunchActionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ListLaunchActionsRequestListLaunchActionsPaginateTypeDef(BaseModel): + resourceId: str + filters: Optional[LaunchActionsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLaunchActionsRequestRequestTypeDef(BaseModel): + resourceId: str + filters: Optional[LaunchActionsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class LaunchConfigurationTypeDef(BaseModel): + copyPrivateIp: bool + copyTags: bool + ec2LaunchTemplateID: str + launchDisposition: LaunchDispositionType + launchIntoInstanceProperties: LaunchIntoInstancePropertiesTypeDef + licensing: LicensingTypeDef + name: str + postLaunchEnabled: bool + sourceServerID: str + targetInstanceTypeRightSizingMethod: TargetInstanceTypeRightSizingMethodType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLaunchConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + launchDisposition: Optional[LaunchDispositionType] = None + launchIntoInstanceProperties: Optional[LaunchIntoInstancePropertiesTypeDef] = None + licensing: Optional[LicensingTypeDef] = None + name: Optional[str] = None + postLaunchEnabled: Optional[bool] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class LifeCycleLastLaunchTypeDef(BaseModel): + initiated: Optional[LifeCycleLastLaunchInitiatedTypeDef] = None + status: Optional[LaunchStatusType] = None + +class ListExtensibleSourceServersResponseTypeDef(BaseModel): + items: List[StagingSourceServerTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SourcePropertiesTypeDef(BaseModel): + cpus: Optional[List[CPUTypeDef]] = None + disks: Optional[List[DiskTypeDef]] = None + identificationHints: Optional[IdentificationHintsTypeDef] = None + lastUpdatedDateTime: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + os: Optional[OSTypeDef] = None + ramBytes: Optional[int] = None + recommendedInstanceType: Optional[str] = None + supportsNitroInstances: Optional[bool] = None + +class ParticipatingResourceTypeDef(BaseModel): + launchStatus: Optional[LaunchStatusType] = None + participatingResourceID: Optional[ParticipatingResourceIDTypeDef] = None + +class RecoveryInstanceDataReplicationInitiationTypeDef(BaseModel): + startDateTime: Optional[str] = None + steps: Optional[List[RecoveryInstanceDataReplicationInitiationStepTypeDef]] = None + +class RecoveryInstancePropertiesTypeDef(BaseModel): + cpus: Optional[List[CPUTypeDef]] = None + disks: Optional[List[RecoveryInstanceDiskTypeDef]] = None + identificationHints: Optional[IdentificationHintsTypeDef] = None + lastUpdatedDateTime: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + os: Optional[OSTypeDef] = None + ramBytes: Optional[int] = None + +class SourceNetworkTypeDef(BaseModel): + arn: Optional[str] = None + cfnStackName: Optional[str] = None + lastRecovery: Optional[RecoveryLifeCycleTypeDef] = None + launchedVpcID: Optional[str] = None + replicationStatus: Optional[ReplicationStatusType] = None + replicationStatusDetails: Optional[str] = None + sourceAccountID: Optional[str] = None + sourceNetworkID: Optional[str] = None + sourceRegion: Optional[str] = None + sourceVpcID: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ReplicationConfigurationTypeDef(BaseModel): + associateDefaultSecurityGroup: bool + autoReplicateNewDisks: bool + bandwidthThrottling: int + createPublicIP: bool + dataPlaneRouting: ReplicationConfigurationDataPlaneRoutingType + defaultLargeStagingDiskType: ReplicationConfigurationDefaultLargeStagingDiskTypeType + ebsEncryption: ReplicationConfigurationEbsEncryptionType + ebsEncryptionKeyArn: str + name: str + pitPolicy: List[PITPolicyRuleTypeDef] + replicatedDisks: List[ReplicationConfigurationReplicatedDiskTypeDef] + replicationServerInstanceType: str + replicationServersSecurityGroupsIDs: List[str] + sourceServerID: str + stagingAreaSubnetId: str + stagingAreaTags: Dict[str, str] + useDedicatedReplicationServer: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReplicationConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + associateDefaultSecurityGroup: Optional[bool] = None + autoReplicateNewDisks: Optional[bool] = None + bandwidthThrottling: Optional[int] = None + createPublicIP: Optional[bool] = None + dataPlaneRouting: Optional[ReplicationConfigurationDataPlaneRoutingType] = None + defaultLargeStagingDiskType: Optional[ ReplicationConfigurationDefaultLargeStagingDiskTypeType ] = None + ebsEncryption: Optional[ReplicationConfigurationEbsEncryptionType] = None + ebsEncryptionKeyArn: Optional[str] = None + name: Optional[str] = None + pitPolicy: Optional[Sequence[PITPolicyRuleTypeDef]] = None + replicatedDisks: Optional[Sequence[ReplicationConfigurationReplicatedDiskTypeDef]] = None + replicationServerInstanceType: Optional[str] = None + replicationServersSecurityGroupsIDs: Optional[Sequence[str]] = None + stagingAreaSubnetId: Optional[str] = None + stagingAreaTags: Optional[Mapping[str, str]] = None + useDedicatedReplicationServer: Optional[bool] = None + +class StartRecoveryRequestRequestTypeDef(BaseModel): + sourceServers: Sequence[StartRecoveryRequestSourceServerTypeDef] + isDrill: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + +class StartSourceNetworkRecoveryRequestRequestTypeDef(BaseModel): + sourceNetworks: Sequence[StartSourceNetworkRecoveryRequestNetworkEntryTypeDef] + deployAsNew: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + +class CreateLaunchConfigurationTemplateResponseTypeDef(BaseModel): + launchConfigurationTemplate: LaunchConfigurationTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLaunchConfigurationTemplatesResponseTypeDef(BaseModel): + items: List[LaunchConfigurationTemplateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLaunchConfigurationTemplateResponseTypeDef(BaseModel): + launchConfigurationTemplate: LaunchConfigurationTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplicationConfigurationTemplatesResponseTypeDef(BaseModel): + items: List[ReplicationConfigurationTemplateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataReplicationInfoTypeDef(BaseModel): + dataReplicationError: Optional[DataReplicationErrorTypeDef] = None + dataReplicationInitiation: Optional[DataReplicationInitiationTypeDef] = None + dataReplicationState: Optional[DataReplicationStateType] = None + etaDateTime: Optional[str] = None + lagDuration: Optional[str] = None + replicatedDisks: Optional[List[DataReplicationInfoReplicatedDiskTypeDef]] = None + stagingAvailabilityZone: Optional[str] = None + stagingOutpostArn: Optional[str] = None + +class JobLogEventDataTypeDef(BaseModel): + conversionProperties: Optional[ConversionPropertiesTypeDef] = None + conversionServerID: Optional[str] = None + eventResourceData: Optional[EventResourceDataTypeDef] = None + rawError: Optional[str] = None + sourceServerID: Optional[str] = None + targetInstanceID: Optional[str] = None + +class LaunchActionRunTypeDef(BaseModel): + action: Optional[LaunchActionTypeDef] = None + failureReason: Optional[str] = None + runId: Optional[str] = None + status: Optional[LaunchActionRunStatusType] = None + +class ListLaunchActionsResponseTypeDef(BaseModel): + items: List[LaunchActionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LifeCycleTypeDef(BaseModel): + addedToServiceDateTime: Optional[str] = None + elapsedReplicationDuration: Optional[str] = None + firstByteDateTime: Optional[str] = None + lastLaunch: Optional[LifeCycleLastLaunchTypeDef] = None + lastSeenByServiceDateTime: Optional[str] = None + +class RecoveryInstanceDataReplicationInfoTypeDef(BaseModel): + dataReplicationError: Optional[RecoveryInstanceDataReplicationErrorTypeDef] = None + dataReplicationInitiation: Optional[RecoveryInstanceDataReplicationInitiationTypeDef] = None + dataReplicationState: Optional[RecoveryInstanceDataReplicationStateType] = None + etaDateTime: Optional[str] = None + lagDuration: Optional[str] = None + replicatedDisks: Optional[ List[RecoveryInstanceDataReplicationInfoReplicatedDiskTypeDef] ] = None + stagingAvailabilityZone: Optional[str] = None + stagingOutpostArn: Optional[str] = None + +class DescribeSourceNetworksResponseTypeDef(BaseModel): + items: List[SourceNetworkTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSourceNetworkReplicationResponseTypeDef(BaseModel): + sourceNetwork: SourceNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopSourceNetworkReplicationResponseTypeDef(BaseModel): + sourceNetwork: SourceNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JobLogTypeDef(BaseModel): + event: Optional[JobLogEventType] = None + eventData: Optional[JobLogEventDataTypeDef] = None + logDateTime: Optional[str] = None + +class LaunchActionsStatusTypeDef(BaseModel): + runs: Optional[List[LaunchActionRunTypeDef]] = None + ssmAgentDiscoveryDatetime: Optional[str] = None + +class SourceServerResponseTypeDef(BaseModel): + agentVersion: str + arn: str + dataReplicationInfo: DataReplicationInfoTypeDef + lastLaunchResult: LastLaunchResultType + lifeCycle: LifeCycleTypeDef + recoveryInstanceId: str + replicationDirection: ReplicationDirectionType + reversedDirectionSourceServerArn: str + sourceCloudProperties: SourceCloudPropertiesTypeDef + sourceNetworkID: str + sourceProperties: SourcePropertiesTypeDef + sourceServerID: str + stagingArea: StagingAreaTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SourceServerTypeDef(BaseModel): + agentVersion: Optional[str] = None + arn: Optional[str] = None + dataReplicationInfo: Optional[DataReplicationInfoTypeDef] = None + lastLaunchResult: Optional[LastLaunchResultType] = None + lifeCycle: Optional[LifeCycleTypeDef] = None + recoveryInstanceId: Optional[str] = None + replicationDirection: Optional[ReplicationDirectionType] = None + reversedDirectionSourceServerArn: Optional[str] = None + sourceCloudProperties: Optional[SourceCloudPropertiesTypeDef] = None + sourceNetworkID: Optional[str] = None + sourceProperties: Optional[SourcePropertiesTypeDef] = None + sourceServerID: Optional[str] = None + stagingArea: Optional[StagingAreaTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class RecoveryInstanceTypeDef(BaseModel): + agentVersion: Optional[str] = None + arn: Optional[str] = None + dataReplicationInfo: Optional[RecoveryInstanceDataReplicationInfoTypeDef] = None + ec2InstanceID: Optional[str] = None + ec2InstanceState: Optional[EC2InstanceStateType] = None + failback: Optional[RecoveryInstanceFailbackTypeDef] = None + isDrill: Optional[bool] = None + jobID: Optional[str] = None + originAvailabilityZone: Optional[str] = None + originEnvironment: Optional[OriginEnvironmentType] = None + pointInTimeSnapshotDateTime: Optional[str] = None + recoveryInstanceID: Optional[str] = None + recoveryInstanceProperties: Optional[RecoveryInstancePropertiesTypeDef] = None + sourceOutpostArn: Optional[str] = None + sourceServerID: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class DescribeJobLogItemsResponseTypeDef(BaseModel): + items: List[JobLogTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ParticipatingServerTypeDef(BaseModel): + launchActionsStatus: Optional[LaunchActionsStatusTypeDef] = None + launchStatus: Optional[LaunchStatusType] = None + recoveryInstanceID: Optional[str] = None + sourceServerID: Optional[str] = None + +class CreateExtendedSourceServerResponseTypeDef(BaseModel): + sourceServer: SourceServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSourceServersResponseTypeDef(BaseModel): + items: List[SourceServerTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplicationResponseTypeDef(BaseModel): + sourceServer: SourceServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopReplicationResponseTypeDef(BaseModel): + sourceServer: SourceServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRecoveryInstancesResponseTypeDef(BaseModel): + items: List[RecoveryInstanceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobTypeDef(BaseModel): + jobID: str + arn: Optional[str] = None + creationDateTime: Optional[str] = None + endDateTime: Optional[str] = None + initiatedBy: Optional[InitiatedByType] = None + participatingResources: Optional[List[ParticipatingResourceTypeDef]] = None + participatingServers: Optional[List[ParticipatingServerTypeDef]] = None + status: Optional[JobStatusType] = None + tags: Optional[Dict[str, str]] = None + type: Optional[JobTypeType] = None + +class AssociateSourceNetworkStackResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobsResponseTypeDef(BaseModel): + items: List[JobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFailbackLaunchResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartRecoveryResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartSourceNetworkRecoveryResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateRecoveryInstancesResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/drs_constants.py b/aws_resource_validator/pydantic_models/drs_constants.py new file mode 100644 index 00000000..1a5763e5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/drs_constants.py @@ -0,0 +1,613 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DataReplicationErrorStringType = Literal["AGENT_NOT_SEEN", + "FAILED_TO_ATTACH_STAGING_DISKS", + "FAILED_TO_AUTHENTICATE_WITH_SERVICE", + "FAILED_TO_BOOT_REPLICATION_SERVER", + "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", + "FAILED_TO_CREATE_SECURITY_GROUP", + "FAILED_TO_CREATE_STAGING_DISKS", + "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", + "FAILED_TO_LAUNCH_REPLICATION_SERVER", + "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", + "FAILED_TO_START_DATA_TRANSFER", + "NOT_CONVERGING", + "SNAPSHOTS_FAILURE", + "UNSTABLE_NETWORK",] +DataReplicationInitiationStepNameType = Literal["ATTACH_STAGING_DISKS", + "AUTHENTICATE_WITH_SERVICE", + "BOOT_REPLICATION_SERVER", + "CONNECT_AGENT_TO_REPLICATION_SERVER", + "CREATE_SECURITY_GROUP", + "CREATE_STAGING_DISKS", + "DOWNLOAD_REPLICATION_SOFTWARE", + "LAUNCH_REPLICATION_SERVER", + "PAIR_REPLICATION_SERVER_WITH_AGENT", + "START_DATA_TRANSFER", + "WAIT",] +DataReplicationInitiationStepStatusType = Literal["FAILED", "IN_PROGRESS", "NOT_STARTED", "SKIPPED", "SUCCEEDED"] +DataReplicationStateType = Literal["BACKLOG", + "CONTINUOUS", + "CREATING_SNAPSHOT", + "DISCONNECTED", + "INITIAL_SYNC", + "INITIATING", + "PAUSED", + "RESCAN", + "STALLED", + "STOPPED",] +DescribeJobLogItemsPaginatorName = Literal["describe_job_log_items"] +DescribeJobsPaginatorName = Literal["describe_jobs"] +DescribeLaunchConfigurationTemplatesPaginatorName = Literal["describe_launch_configuration_templates"] +DescribeRecoveryInstancesPaginatorName = Literal["describe_recovery_instances"] +DescribeRecoverySnapshotsPaginatorName = Literal["describe_recovery_snapshots"] +DescribeReplicationConfigurationTemplatesPaginatorName = Literal["describe_replication_configuration_templates"] +DescribeSourceNetworksPaginatorName = Literal["describe_source_networks"] +DescribeSourceServersPaginatorName = Literal["describe_source_servers"] +EC2InstanceStateType = Literal["NOT_FOUND", "PENDING", "RUNNING", "SHUTTING-DOWN", "STOPPED", "STOPPING", "TERMINATED"] +ExtensionStatusType = Literal["EXTENDED", "EXTENSION_ERROR", "NOT_EXTENDED"] +FailbackLaunchTypeType = Literal["DRILL", "RECOVERY"] +FailbackReplicationErrorType = Literal["AGENT_NOT_SEEN", + "FAILBACK_CLIENT_NOT_SEEN", + "FAILED_GETTING_REPLICATION_STATE", + "FAILED_TO_ATTACH_STAGING_DISKS", + "FAILED_TO_AUTHENTICATE_WITH_SERVICE", + "FAILED_TO_BOOT_REPLICATION_SERVER", + "FAILED_TO_CONFIGURE_REPLICATION_SOFTWARE", + "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", + "FAILED_TO_CREATE_SECURITY_GROUP", + "FAILED_TO_CREATE_STAGING_DISKS", + "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", + "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE_TO_FAILBACK_CLIENT", + "FAILED_TO_ESTABLISH_AGENT_REPLICATOR_SOFTWARE_COMMUNICATION", + "FAILED_TO_ESTABLISH_RECOVERY_INSTANCE_COMMUNICATION", + "FAILED_TO_LAUNCH_REPLICATION_SERVER", + "FAILED_TO_PAIR_AGENT_WITH_REPLICATION_SOFTWARE", + "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", + "FAILED_TO_START_DATA_TRANSFER", + "NOT_CONVERGING", + "SNAPSHOTS_FAILURE", + "UNSTABLE_NETWORK",] +FailbackStateType = Literal["FAILBACK_COMPLETED", + "FAILBACK_ERROR", + "FAILBACK_IN_PROGRESS", + "FAILBACK_LAUNCH_STATE_NOT_AVAILABLE", + "FAILBACK_NOT_READY_FOR_LAUNCH", + "FAILBACK_NOT_STARTED", + "FAILBACK_READY_FOR_LAUNCH",] +InitiatedByType = Literal["ASSOCIATE_NETWORK_RECOVERY", + "CREATE_NETWORK_RECOVERY", + "DIAGNOSTIC", + "FAILBACK", + "START_DRILL", + "START_RECOVERY", + "TARGET_ACCOUNT", + "TERMINATE_RECOVERY_INSTANCES", + "UPDATE_NETWORK_RECOVERY",] +JobLogEventType = Literal["CLEANUP_END", + "CLEANUP_FAIL", + "CLEANUP_START", + "CONVERSION_END", + "CONVERSION_FAIL", + "CONVERSION_START", + "DEPLOY_NETWORK_CONFIGURATION_END", + "DEPLOY_NETWORK_CONFIGURATION_FAILED", + "DEPLOY_NETWORK_CONFIGURATION_START", + "JOB_CANCEL", + "JOB_END", + "JOB_START", + "LAUNCH_FAILED", + "LAUNCH_START", + "NETWORK_RECOVERY_FAIL", + "SERVER_SKIPPED", + "SNAPSHOT_END", + "SNAPSHOT_FAIL", + "SNAPSHOT_START", + "UPDATE_LAUNCH_TEMPLATE_END", + "UPDATE_LAUNCH_TEMPLATE_FAILED", + "UPDATE_LAUNCH_TEMPLATE_START", + "UPDATE_NETWORK_CONFIGURATION_END", + "UPDATE_NETWORK_CONFIGURATION_FAILED", + "UPDATE_NETWORK_CONFIGURATION_START", + "USING_PREVIOUS_SNAPSHOT", + "USING_PREVIOUS_SNAPSHOT_FAILED",] +JobStatusType = Literal["COMPLETED", "PENDING", "STARTED"] +JobTypeType = Literal["CREATE_CONVERTED_SNAPSHOT", "LAUNCH", "TERMINATE"] +LastLaunchResultType = Literal["FAILED", "NOT_STARTED", "PENDING", "SUCCEEDED"] +LastLaunchTypeType = Literal["DRILL", "RECOVERY"] +LaunchActionCategoryType = Literal["CONFIGURATION", "MONITORING", "OTHER", "SECURITY", "VALIDATION"] +LaunchActionParameterTypeType = Literal["DYNAMIC", "SSM_STORE"] +LaunchActionRunStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +LaunchActionTypeType = Literal["SSM_AUTOMATION", "SSM_COMMAND"] +LaunchDispositionType = Literal["STARTED", "STOPPED"] +LaunchStatusType = Literal["FAILED", "IN_PROGRESS", "LAUNCHED", "PENDING", "TERMINATED"] +ListExtensibleSourceServersPaginatorName = Literal["list_extensible_source_servers"] +ListLaunchActionsPaginatorName = Literal["list_launch_actions"] +ListStagingAccountsPaginatorName = Literal["list_staging_accounts"] +OriginEnvironmentType = Literal["AWS", "ON_PREMISES"] +PITPolicyRuleUnitsType = Literal["DAY", "HOUR", "MINUTE"] +ProductCodeModeType = Literal["DISABLED", "ENABLED"] +RecoveryInstanceDataReplicationInitiationStepNameType = Literal["ATTACH_STAGING_DISKS", + "AUTHENTICATE_WITH_SERVICE", + "BOOT_REPLICATION_SERVER", + "COMPLETE_VOLUME_MAPPING", + "CONFIGURE_REPLICATION_SOFTWARE", + "CONNECT_AGENT_TO_REPLICATION_SERVER", + "CREATE_SECURITY_GROUP", + "CREATE_STAGING_DISKS", + "DOWNLOAD_REPLICATION_SOFTWARE", + "DOWNLOAD_REPLICATION_SOFTWARE_TO_FAILBACK_CLIENT", + "ESTABLISH_AGENT_REPLICATOR_SOFTWARE_COMMUNICATION", + "ESTABLISH_RECOVERY_INSTANCE_COMMUNICATION", + "LAUNCH_REPLICATION_SERVER", + "LINK_FAILBACK_CLIENT_WITH_RECOVERY_INSTANCE", + "PAIR_AGENT_WITH_REPLICATION_SOFTWARE", + "PAIR_REPLICATION_SERVER_WITH_AGENT", + "START_DATA_TRANSFER", + "WAIT",] +RecoveryInstanceDataReplicationInitiationStepStatusType = Literal["FAILED", "IN_PROGRESS", "NOT_STARTED", "SKIPPED", "SUCCEEDED"] +RecoveryInstanceDataReplicationStateType = Literal["BACKLOG", + "CONTINUOUS", + "CREATING_SNAPSHOT", + "DISCONNECTED", + "INITIAL_SYNC", + "INITIATING", + "NOT_STARTED", + "PAUSED", + "REPLICATION_STATE_NOT_AVAILABLE", + "RESCAN", + "STALLED", + "STOPPED",] +RecoveryResultType = Literal["ASSOCIATE_FAIL", + "ASSOCIATE_SUCCESS", + "FAIL", + "IN_PROGRESS", + "NOT_STARTED", + "PARTIAL_SUCCESS", + "SUCCESS",] +RecoverySnapshotsOrderType = Literal["ASC", "DESC"] +ReplicationConfigurationDataPlaneRoutingType = Literal["PRIVATE_IP", "PUBLIC_IP"] +ReplicationConfigurationDefaultLargeStagingDiskTypeType = Literal["AUTO", "GP2", "GP3", "ST1"] +ReplicationConfigurationEbsEncryptionType = Literal["CUSTOM", "DEFAULT", "NONE"] +ReplicationConfigurationReplicatedDiskStagingDiskTypeType = Literal["AUTO", "GP2", "GP3", "IO1", "SC1", "ST1", "STANDARD"] +ReplicationDirectionType = Literal["FAILBACK", "FAILOVER"] +ReplicationStatusType = Literal["ERROR", "IN_PROGRESS", "PROTECTED", "STOPPED"] +TargetInstanceTypeRightSizingMethodType = Literal["BASIC", "IN_AWS", "NONE"] +VolumeStatusType = Literal["CONTAINS_MARKETPLACE_PRODUCT_CODES", + "MISSING_VOLUME_ATTRIBUTES", + "MISSING_VOLUME_ATTRIBUTES_AND_PRECHECK_UNAVAILABLE", + "PENDING", + "REGULAR",] +drsServiceName = Literal["drs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_job_log_items", + "describe_jobs", + "describe_launch_configuration_templates", + "describe_recovery_instances", + "describe_recovery_snapshots", + "describe_replication_configuration_templates", + "describe_source_networks", + "describe_source_servers", + "list_extensible_source_servers", + "list_launch_actions", + "list_staging_accounts",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/ds_classes.py b/aws_resource_validator/pydantic_models/ds_classes.py new file mode 100644 index 00000000..894c6e1e --- /dev/null +++ b/aws_resource_validator/pydantic_models/ds_classes.py @@ -0,0 +1,873 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ds_constants import * + +class AcceptSharedDirectoryRequestRequestTypeDef(BaseModel): + SharedDirectoryId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class SharedDirectoryTypeDef(BaseModel): + OwnerAccountId: Optional[str] = None + OwnerDirectoryId: Optional[str] = None + ShareMethod: Optional[ShareMethodType] = None + SharedAccountId: Optional[str] = None + SharedDirectoryId: Optional[str] = None + ShareStatus: Optional[ShareStatusType] = None + ShareNotes: Optional[str] = None + CreatedDateTime: Optional[datetime] = None + LastUpdatedDateTime: Optional[datetime] = None + +class IpRouteTypeDef(BaseModel): + CidrIp: Optional[str] = None + Description: Optional[str] = None + +class DirectoryVpcSettingsTypeDef(BaseModel): + VpcId: str + SubnetIds: Sequence[str] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AttributeTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class CancelSchemaExtensionRequestRequestTypeDef(BaseModel): + DirectoryId: str + SchemaExtensionId: str + +class CertificateInfoTypeDef(BaseModel): + CertificateId: Optional[str] = None + CommonName: Optional[str] = None + State: Optional[CertificateStateType] = None + ExpiryDateTime: Optional[datetime] = None + Type: Optional[CertificateTypeType] = None + +class ClientCertAuthSettingsTypeDef(BaseModel): + OCSPUrl: Optional[str] = None + +class ClientAuthenticationSettingInfoTypeDef(BaseModel): + Type: Optional[ClientAuthenticationTypeType] = None + Status: Optional[ClientAuthenticationStatusType] = None + LastUpdatedDateTime: Optional[datetime] = None + +class ConditionalForwarderTypeDef(BaseModel): + RemoteDomainName: Optional[str] = None + DnsIpAddrs: Optional[List[str]] = None + ReplicationScope: Optional[Literal["Domain"]] = None + +class DirectoryConnectSettingsTypeDef(BaseModel): + VpcId: str + SubnetIds: Sequence[str] + CustomerDnsIps: Sequence[str] + CustomerUserName: str + +class CreateAliasRequestRequestTypeDef(BaseModel): + DirectoryId: str + Alias: str + +class CreateConditionalForwarderRequestRequestTypeDef(BaseModel): + DirectoryId: str + RemoteDomainName: str + DnsIpAddrs: Sequence[str] + +class CreateLogSubscriptionRequestRequestTypeDef(BaseModel): + DirectoryId: str + LogGroupName: str + +class CreateSnapshotRequestRequestTypeDef(BaseModel): + DirectoryId: str + Name: Optional[str] = None + +class CreateTrustRequestRequestTypeDef(BaseModel): + DirectoryId: str + RemoteDomainName: str + TrustPassword: str + TrustDirection: TrustDirectionType + TrustType: Optional[TrustTypeType] = None + ConditionalForwarderIpAddrs: Optional[Sequence[str]] = None + SelectiveAuth: Optional[SelectiveAuthType] = None + +class DeleteConditionalForwarderRequestRequestTypeDef(BaseModel): + DirectoryId: str + RemoteDomainName: str + +class DeleteDirectoryRequestRequestTypeDef(BaseModel): + DirectoryId: str + +class DeleteLogSubscriptionRequestRequestTypeDef(BaseModel): + DirectoryId: str + +class DeleteSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + +class DeleteTrustRequestRequestTypeDef(BaseModel): + TrustId: str + DeleteAssociatedConditionalForwarder: Optional[bool] = None + +class DeregisterCertificateRequestRequestTypeDef(BaseModel): + DirectoryId: str + CertificateId: str + +class DeregisterEventTopicRequestRequestTypeDef(BaseModel): + DirectoryId: str + TopicName: str + +class DescribeCertificateRequestRequestTypeDef(BaseModel): + DirectoryId: str + CertificateId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeClientAuthenticationSettingsRequestRequestTypeDef(BaseModel): + DirectoryId: str + Type: Optional[ClientAuthenticationTypeType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeConditionalForwardersRequestRequestTypeDef(BaseModel): + DirectoryId: str + RemoteDomainNames: Optional[Sequence[str]] = None + +class DescribeDirectoriesRequestRequestTypeDef(BaseModel): + DirectoryIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeDomainControllersRequestRequestTypeDef(BaseModel): + DirectoryId: str + DomainControllerIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DomainControllerTypeDef(BaseModel): + DirectoryId: Optional[str] = None + DomainControllerId: Optional[str] = None + DnsIpAddr: Optional[str] = None + VpcId: Optional[str] = None + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + Status: Optional[DomainControllerStatusType] = None + StatusReason: Optional[str] = None + LaunchTime: Optional[datetime] = None + StatusLastUpdatedDateTime: Optional[datetime] = None + +class DescribeEventTopicsRequestRequestTypeDef(BaseModel): + DirectoryId: Optional[str] = None + TopicNames: Optional[Sequence[str]] = None + +class EventTopicTypeDef(BaseModel): + DirectoryId: Optional[str] = None + TopicName: Optional[str] = None + TopicArn: Optional[str] = None + CreatedDateTime: Optional[datetime] = None + Status: Optional[TopicStatusType] = None + +class DescribeLDAPSSettingsRequestRequestTypeDef(BaseModel): + DirectoryId: str + Type: Optional[Literal["Client"]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class LDAPSSettingInfoTypeDef(BaseModel): + LDAPSStatus: Optional[LDAPSStatusType] = None + LDAPSStatusReason: Optional[str] = None + LastUpdatedDateTime: Optional[datetime] = None + +class DescribeRegionsRequestRequestTypeDef(BaseModel): + DirectoryId: str + RegionName: Optional[str] = None + NextToken: Optional[str] = None + +class DescribeSettingsRequestRequestTypeDef(BaseModel): + DirectoryId: str + Status: Optional[DirectoryConfigurationStatusType] = None + NextToken: Optional[str] = None + +class SettingEntryTypeDef(BaseModel): + Type: Optional[str] = None + Name: Optional[str] = None + AllowedValues: Optional[str] = None + AppliedValue: Optional[str] = None + RequestedValue: Optional[str] = None + RequestStatus: Optional[DirectoryConfigurationStatusType] = None + RequestDetailedStatus: Optional[Dict[str, DirectoryConfigurationStatusType]] = None + RequestStatusMessage: Optional[str] = None + LastUpdatedDateTime: Optional[datetime] = None + LastRequestedDateTime: Optional[datetime] = None + DataType: Optional[str] = None + +class DescribeSharedDirectoriesRequestRequestTypeDef(BaseModel): + OwnerDirectoryId: str + SharedDirectoryIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeSnapshotsRequestRequestTypeDef(BaseModel): + DirectoryId: Optional[str] = None + SnapshotIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class SnapshotTypeDef(BaseModel): + DirectoryId: Optional[str] = None + SnapshotId: Optional[str] = None + Type: Optional[SnapshotTypeType] = None + Name: Optional[str] = None + Status: Optional[SnapshotStatusType] = None + StartTime: Optional[datetime] = None + +class DescribeTrustsRequestRequestTypeDef(BaseModel): + DirectoryId: Optional[str] = None + TrustIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class TrustTypeDef(BaseModel): + DirectoryId: Optional[str] = None + TrustId: Optional[str] = None + RemoteDomainName: Optional[str] = None + TrustType: Optional[TrustTypeType] = None + TrustDirection: Optional[TrustDirectionType] = None + TrustState: Optional[TrustStateType] = None + CreatedDateTime: Optional[datetime] = None + LastUpdatedDateTime: Optional[datetime] = None + StateLastUpdatedDateTime: Optional[datetime] = None + TrustStateReason: Optional[str] = None + SelectiveAuth: Optional[SelectiveAuthType] = None + +class DescribeUpdateDirectoryRequestRequestTypeDef(BaseModel): + DirectoryId: str + UpdateType: Literal["OS"] + RegionName: Optional[str] = None + NextToken: Optional[str] = None + +class DirectoryConnectSettingsDescriptionTypeDef(BaseModel): + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + CustomerUserName: Optional[str] = None + SecurityGroupId: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + ConnectIps: Optional[List[str]] = None + +class DirectoryVpcSettingsDescriptionTypeDef(BaseModel): + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + SecurityGroupId: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + +class RadiusSettingsOutputTypeDef(BaseModel): + RadiusServers: Optional[List[str]] = None + RadiusPort: Optional[int] = None + RadiusTimeout: Optional[int] = None + RadiusRetries: Optional[int] = None + SharedSecret: Optional[str] = None + AuthenticationProtocol: Optional[RadiusAuthenticationProtocolType] = None + DisplayLabel: Optional[str] = None + UseSameUsername: Optional[bool] = None + +class RegionsInfoTypeDef(BaseModel): + PrimaryRegion: Optional[str] = None + AdditionalRegions: Optional[List[str]] = None + +class DirectoryLimitsTypeDef(BaseModel): + CloudOnlyDirectoriesLimit: Optional[int] = None + CloudOnlyDirectoriesCurrentCount: Optional[int] = None + CloudOnlyDirectoriesLimitReached: Optional[bool] = None + CloudOnlyMicrosoftADLimit: Optional[int] = None + CloudOnlyMicrosoftADCurrentCount: Optional[int] = None + CloudOnlyMicrosoftADLimitReached: Optional[bool] = None + ConnectedDirectoriesLimit: Optional[int] = None + ConnectedDirectoriesCurrentCount: Optional[int] = None + ConnectedDirectoriesLimitReached: Optional[bool] = None + +class DirectoryVpcSettingsExtraOutputTypeDef(BaseModel): + VpcId: str + SubnetIds: List[str] + +class DirectoryVpcSettingsOutputTypeDef(BaseModel): + VpcId: str + SubnetIds: List[str] + +class DisableClientAuthenticationRequestRequestTypeDef(BaseModel): + DirectoryId: str + Type: ClientAuthenticationTypeType + +class DisableLDAPSRequestRequestTypeDef(BaseModel): + DirectoryId: str + Type: Literal["Client"] + +class DisableRadiusRequestRequestTypeDef(BaseModel): + DirectoryId: str + +class DisableSsoRequestRequestTypeDef(BaseModel): + DirectoryId: str + UserName: Optional[str] = None + Password: Optional[str] = None + +class EnableClientAuthenticationRequestRequestTypeDef(BaseModel): + DirectoryId: str + Type: ClientAuthenticationTypeType + +class EnableLDAPSRequestRequestTypeDef(BaseModel): + DirectoryId: str + Type: Literal["Client"] + +class RadiusSettingsTypeDef(BaseModel): + RadiusServers: Optional[Sequence[str]] = None + RadiusPort: Optional[int] = None + RadiusTimeout: Optional[int] = None + RadiusRetries: Optional[int] = None + SharedSecret: Optional[str] = None + AuthenticationProtocol: Optional[RadiusAuthenticationProtocolType] = None + DisplayLabel: Optional[str] = None + UseSameUsername: Optional[bool] = None + +class EnableSsoRequestRequestTypeDef(BaseModel): + DirectoryId: str + UserName: Optional[str] = None + Password: Optional[str] = None + +class GetSnapshotLimitsRequestRequestTypeDef(BaseModel): + DirectoryId: str + +class SnapshotLimitsTypeDef(BaseModel): + ManualSnapshotsLimit: Optional[int] = None + ManualSnapshotsCurrentCount: Optional[int] = None + ManualSnapshotsLimitReached: Optional[bool] = None + +class IpRouteInfoTypeDef(BaseModel): + DirectoryId: Optional[str] = None + CidrIp: Optional[str] = None + IpRouteStatusMsg: Optional[IpRouteStatusMsgType] = None + AddedDateTime: Optional[datetime] = None + IpRouteStatusReason: Optional[str] = None + Description: Optional[str] = None + +class ListCertificatesRequestRequestTypeDef(BaseModel): + DirectoryId: str + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListIpRoutesRequestRequestTypeDef(BaseModel): + DirectoryId: str + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListLogSubscriptionsRequestRequestTypeDef(BaseModel): + DirectoryId: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class LogSubscriptionTypeDef(BaseModel): + DirectoryId: Optional[str] = None + LogGroupName: Optional[str] = None + SubscriptionCreatedDateTime: Optional[datetime] = None + +class ListSchemaExtensionsRequestRequestTypeDef(BaseModel): + DirectoryId: str + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class SchemaExtensionInfoTypeDef(BaseModel): + DirectoryId: Optional[str] = None + SchemaExtensionId: Optional[str] = None + Description: Optional[str] = None + SchemaExtensionStatus: Optional[SchemaExtensionStatusType] = None + SchemaExtensionStatusReason: Optional[str] = None + StartDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class OSUpdateSettingsTypeDef(BaseModel): + OSVersion: Optional[OSVersionType] = None + +class RadiusSettingsExtraOutputTypeDef(BaseModel): + RadiusServers: Optional[List[str]] = None + RadiusPort: Optional[int] = None + RadiusTimeout: Optional[int] = None + RadiusRetries: Optional[int] = None + SharedSecret: Optional[str] = None + AuthenticationProtocol: Optional[RadiusAuthenticationProtocolType] = None + DisplayLabel: Optional[str] = None + UseSameUsername: Optional[bool] = None + +class RegisterEventTopicRequestRequestTypeDef(BaseModel): + DirectoryId: str + TopicName: str + +class RejectSharedDirectoryRequestRequestTypeDef(BaseModel): + SharedDirectoryId: str + +class RemoveIpRoutesRequestRequestTypeDef(BaseModel): + DirectoryId: str + CidrIps: Sequence[str] + +class RemoveRegionRequestRequestTypeDef(BaseModel): + DirectoryId: str + +class RemoveTagsFromResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + TagKeys: Sequence[str] + +class ResetUserPasswordRequestRequestTypeDef(BaseModel): + DirectoryId: str + UserName: str + NewPassword: str + +class RestoreFromSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + +class SettingTypeDef(BaseModel): + Name: str + Value: str + +class ShareTargetTypeDef(BaseModel): + Id: str + Type: Literal["ACCOUNT"] + +class StartSchemaExtensionRequestRequestTypeDef(BaseModel): + DirectoryId: str + CreateSnapshotBeforeSchemaExtension: bool + LdifContent: str + Description: str + +class UnshareTargetTypeDef(BaseModel): + Id: str + Type: Literal["ACCOUNT"] + +class UpdateConditionalForwarderRequestRequestTypeDef(BaseModel): + DirectoryId: str + RemoteDomainName: str + DnsIpAddrs: Sequence[str] + +class UpdateNumberOfDomainControllersRequestRequestTypeDef(BaseModel): + DirectoryId: str + DesiredNumber: int + +class UpdateTrustRequestRequestTypeDef(BaseModel): + TrustId: str + SelectiveAuth: Optional[SelectiveAuthType] = None + +class VerifyTrustRequestRequestTypeDef(BaseModel): + TrustId: str + +class ConnectDirectoryResultTypeDef(BaseModel): + DirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAliasResultTypeDef(BaseModel): + DirectoryId: str + Alias: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDirectoryResultTypeDef(BaseModel): + DirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMicrosoftADResultTypeDef(BaseModel): + DirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSnapshotResultTypeDef(BaseModel): + SnapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrustResultTypeDef(BaseModel): + TrustId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDirectoryResultTypeDef(BaseModel): + DirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotResultTypeDef(BaseModel): + SnapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrustResultTypeDef(BaseModel): + TrustId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterCertificateResultTypeDef(BaseModel): + CertificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RejectSharedDirectoryResultTypeDef(BaseModel): + SharedDirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ShareDirectoryResultTypeDef(BaseModel): + SharedDirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSchemaExtensionResultTypeDef(BaseModel): + SchemaExtensionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UnshareDirectoryResultTypeDef(BaseModel): + SharedDirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSettingsResultTypeDef(BaseModel): + DirectoryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrustResultTypeDef(BaseModel): + RequestId: str + TrustId: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyTrustResultTypeDef(BaseModel): + TrustId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptSharedDirectoryResultTypeDef(BaseModel): + SharedDirectory: SharedDirectoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSharedDirectoriesResultTypeDef(BaseModel): + SharedDirectories: List[SharedDirectoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AddIpRoutesRequestRequestTypeDef(BaseModel): + DirectoryId: str + IpRoutes: Sequence[IpRouteTypeDef] + UpdateSecurityGroupForDirectoryControllers: Optional[bool] = None + +class AddRegionRequestRequestTypeDef(BaseModel): + DirectoryId: str + RegionName: str + VPCSettings: DirectoryVpcSettingsTypeDef + +class AddTagsToResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + Tags: Sequence[TagTypeDef] + +class CreateDirectoryRequestRequestTypeDef(BaseModel): + Name: str + Password: str + Size: DirectorySizeType + ShortName: Optional[str] = None + Description: Optional[str] = None + VpcSettings: Optional[DirectoryVpcSettingsTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateMicrosoftADRequestRequestTypeDef(BaseModel): + Name: str + Password: str + VpcSettings: DirectoryVpcSettingsTypeDef + ShortName: Optional[str] = None + Description: Optional[str] = None + Edition: Optional[DirectoryEditionType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResultTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ComputerTypeDef(BaseModel): + ComputerId: Optional[str] = None + ComputerName: Optional[str] = None + ComputerAttributes: Optional[List[AttributeTypeDef]] = None + +class CreateComputerRequestRequestTypeDef(BaseModel): + DirectoryId: str + ComputerName: str + Password: str + OrganizationalUnitDistinguishedName: Optional[str] = None + ComputerAttributes: Optional[Sequence[AttributeTypeDef]] = None + +class ListCertificatesResultTypeDef(BaseModel): + CertificatesInfo: List[CertificateInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CertificateTypeDef(BaseModel): + CertificateId: Optional[str] = None + State: Optional[CertificateStateType] = None + StateReason: Optional[str] = None + CommonName: Optional[str] = None + RegisteredDateTime: Optional[datetime] = None + ExpiryDateTime: Optional[datetime] = None + Type: Optional[CertificateTypeType] = None + ClientCertAuthSettings: Optional[ClientCertAuthSettingsTypeDef] = None + +class RegisterCertificateRequestRequestTypeDef(BaseModel): + DirectoryId: str + CertificateData: str + Type: Optional[CertificateTypeType] = None + ClientCertAuthSettings: Optional[ClientCertAuthSettingsTypeDef] = None + +class DescribeClientAuthenticationSettingsResultTypeDef(BaseModel): + ClientAuthenticationSettingsInfo: List[ClientAuthenticationSettingInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeConditionalForwardersResultTypeDef(BaseModel): + ConditionalForwarders: List[ConditionalForwarderTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectDirectoryRequestRequestTypeDef(BaseModel): + Name: str + Password: str + Size: DirectorySizeType + ConnectSettings: DirectoryConnectSettingsTypeDef + ShortName: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeClientAuthenticationSettingsRequestDescribeClientAuthenticationSettingsPaginateTypeDef(BaseModel): + DirectoryId: str + Type: Optional[ClientAuthenticationTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDirectoriesRequestDescribeDirectoriesPaginateTypeDef(BaseModel): + DirectoryIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDomainControllersRequestDescribeDomainControllersPaginateTypeDef(BaseModel): + DirectoryId: str + DomainControllerIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLDAPSSettingsRequestDescribeLDAPSSettingsPaginateTypeDef(BaseModel): + DirectoryId: str + Type: Optional[Literal["Client"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegionsRequestDescribeRegionsPaginateTypeDef(BaseModel): + DirectoryId: str + RegionName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSharedDirectoriesRequestDescribeSharedDirectoriesPaginateTypeDef(BaseModel): + OwnerDirectoryId: str + SharedDirectoryIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotsRequestDescribeSnapshotsPaginateTypeDef(BaseModel): + DirectoryId: Optional[str] = None + SnapshotIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTrustsRequestDescribeTrustsPaginateTypeDef(BaseModel): + DirectoryId: Optional[str] = None + TrustIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUpdateDirectoryRequestDescribeUpdateDirectoryPaginateTypeDef(BaseModel): + DirectoryId: str + UpdateType: Literal["OS"] + RegionName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCertificatesRequestListCertificatesPaginateTypeDef(BaseModel): + DirectoryId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIpRoutesRequestListIpRoutesPaginateTypeDef(BaseModel): + DirectoryId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLogSubscriptionsRequestListLogSubscriptionsPaginateTypeDef(BaseModel): + DirectoryId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemaExtensionsRequestListSchemaExtensionsPaginateTypeDef(BaseModel): + DirectoryId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDomainControllersResultTypeDef(BaseModel): + DomainControllers: List[DomainControllerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeEventTopicsResultTypeDef(BaseModel): + EventTopics: List[EventTopicTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLDAPSSettingsResultTypeDef(BaseModel): + LDAPSSettingsInfo: List[LDAPSSettingInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSettingsResultTypeDef(BaseModel): + DirectoryId: str + SettingEntries: List[SettingEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSnapshotsResultTypeDef(BaseModel): + Snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeTrustsResultTypeDef(BaseModel): + Trusts: List[TrustTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class OwnerDirectoryDescriptionTypeDef(BaseModel): + DirectoryId: Optional[str] = None + AccountId: Optional[str] = None + DnsIpAddrs: Optional[List[str]] = None + VpcSettings: Optional[DirectoryVpcSettingsDescriptionTypeDef] = None + RadiusSettings: Optional[RadiusSettingsOutputTypeDef] = None + RadiusStatus: Optional[RadiusStatusType] = None + +class GetDirectoryLimitsResultTypeDef(BaseModel): + DirectoryLimits: DirectoryLimitsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegionDescriptionTypeDef(BaseModel): + DirectoryId: Optional[str] = None + RegionName: Optional[str] = None + RegionType: Optional[RegionTypeType] = None + Status: Optional[DirectoryStageType] = None + VpcSettings: Optional[DirectoryVpcSettingsOutputTypeDef] = None + DesiredNumberOfDomainControllers: Optional[int] = None + LaunchTime: Optional[datetime] = None + StatusLastUpdatedDateTime: Optional[datetime] = None + LastUpdatedDateTime: Optional[datetime] = None + +class EnableRadiusRequestRequestTypeDef(BaseModel): + DirectoryId: str + RadiusSettings: RadiusSettingsTypeDef + +class UpdateRadiusRequestRequestTypeDef(BaseModel): + DirectoryId: str + RadiusSettings: RadiusSettingsTypeDef + +class GetSnapshotLimitsResultTypeDef(BaseModel): + SnapshotLimits: SnapshotLimitsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListIpRoutesResultTypeDef(BaseModel): + IpRoutesInfo: List[IpRouteInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListLogSubscriptionsResultTypeDef(BaseModel): + LogSubscriptions: List[LogSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSchemaExtensionsResultTypeDef(BaseModel): + SchemaExtensionsInfo: List[SchemaExtensionInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateDirectorySetupRequestRequestTypeDef(BaseModel): + DirectoryId: str + UpdateType: Literal["OS"] + OSUpdateSettings: Optional[OSUpdateSettingsTypeDef] = None + CreateSnapshotBeforeUpdate: Optional[bool] = None + +class UpdateValueTypeDef(BaseModel): + OSUpdateSettings: Optional[OSUpdateSettingsTypeDef] = None + +class UpdateSettingsRequestRequestTypeDef(BaseModel): + DirectoryId: str + Settings: Sequence[SettingTypeDef] + +class ShareDirectoryRequestRequestTypeDef(BaseModel): + DirectoryId: str + ShareTarget: ShareTargetTypeDef + ShareMethod: ShareMethodType + ShareNotes: Optional[str] = None + +class UnshareDirectoryRequestRequestTypeDef(BaseModel): + DirectoryId: str + UnshareTarget: UnshareTargetTypeDef + +class CreateComputerResultTypeDef(BaseModel): + Computer: ComputerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCertificateResultTypeDef(BaseModel): + Certificate: CertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DirectoryDescriptionTypeDef(BaseModel): + DirectoryId: Optional[str] = None + Name: Optional[str] = None + ShortName: Optional[str] = None + Size: Optional[DirectorySizeType] = None + Edition: Optional[DirectoryEditionType] = None + Alias: Optional[str] = None + AccessUrl: Optional[str] = None + Description: Optional[str] = None + DnsIpAddrs: Optional[List[str]] = None + Stage: Optional[DirectoryStageType] = None + ShareStatus: Optional[ShareStatusType] = None + ShareMethod: Optional[ShareMethodType] = None + ShareNotes: Optional[str] = None + LaunchTime: Optional[datetime] = None + StageLastUpdatedDateTime: Optional[datetime] = None + Type: Optional[DirectoryTypeType] = None + VpcSettings: Optional[DirectoryVpcSettingsDescriptionTypeDef] = None + ConnectSettings: Optional[DirectoryConnectSettingsDescriptionTypeDef] = None + RadiusSettings: Optional[RadiusSettingsOutputTypeDef] = None + RadiusStatus: Optional[RadiusStatusType] = None + StageReason: Optional[str] = None + SsoEnabled: Optional[bool] = None + DesiredNumberOfDomainControllers: Optional[int] = None + OwnerDirectoryDescription: Optional[OwnerDirectoryDescriptionTypeDef] = None + RegionsInfo: Optional[RegionsInfoTypeDef] = None + OsVersion: Optional[OSVersionType] = None + +class DescribeRegionsResultTypeDef(BaseModel): + RegionsDescription: List[RegionDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateInfoEntryTypeDef(BaseModel): + Region: Optional[str] = None + Status: Optional[UpdateStatusType] = None + StatusReason: Optional[str] = None + InitiatedBy: Optional[str] = None + NewValue: Optional[UpdateValueTypeDef] = None + PreviousValue: Optional[UpdateValueTypeDef] = None + StartTime: Optional[datetime] = None + LastUpdatedDateTime: Optional[datetime] = None + +class DescribeDirectoriesResultTypeDef(BaseModel): + DirectoryDescriptions: List[DirectoryDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeUpdateDirectoryResultTypeDef(BaseModel): + UpdateActivities: List[UpdateInfoEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/ds_constants.py b/aws_resource_validator/pydantic_models/ds_constants.py new file mode 100644 index 00000000..93267d4e --- /dev/null +++ b/aws_resource_validator/pydantic_models/ds_constants.py @@ -0,0 +1,530 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CertificateStateType = Literal["DeregisterFailed", + "Deregistered", + "Deregistering", + "RegisterFailed", + "Registered", + "Registering",] +CertificateTypeType = Literal["ClientCertAuth", "ClientLDAPS"] +ClientAuthenticationStatusType = Literal["Disabled", "Enabled"] +ClientAuthenticationTypeType = Literal["SmartCard", "SmartCardOrPassword"] +DescribeClientAuthenticationSettingsPaginatorName = Literal["describe_client_authentication_settings"] +DescribeDirectoriesPaginatorName = Literal["describe_directories"] +DescribeDomainControllersPaginatorName = Literal["describe_domain_controllers"] +DescribeLDAPSSettingsPaginatorName = Literal["describe_ldaps_settings"] +DescribeRegionsPaginatorName = Literal["describe_regions"] +DescribeSharedDirectoriesPaginatorName = Literal["describe_shared_directories"] +DescribeSnapshotsPaginatorName = Literal["describe_snapshots"] +DescribeTrustsPaginatorName = Literal["describe_trusts"] +DescribeUpdateDirectoryPaginatorName = Literal["describe_update_directory"] +DirectoryConfigurationStatusType = Literal["Default", "Failed", "Requested", "Updated", "Updating"] +DirectoryEditionType = Literal["Enterprise", "Standard"] +DirectorySizeType = Literal["Large", "Small"] +DirectoryStageType = Literal["Active", + "Created", + "Creating", + "Deleted", + "Deleting", + "Failed", + "Impaired", + "Inoperable", + "Requested", + "RestoreFailed", + "Restoring",] +DirectoryTypeType = Literal["ADConnector", "MicrosoftAD", "SharedMicrosoftAD", "SimpleAD"] +DomainControllerStatusType = Literal["Active", "Creating", "Deleted", "Deleting", "Failed", "Impaired", "Restoring"] +IpRouteStatusMsgType = Literal["AddFailed", "Added", "Adding", "RemoveFailed", "Removed", "Removing"] +LDAPSStatusType = Literal["Disabled", "EnableFailed", "Enabled", "Enabling"] +LDAPSTypeType = Literal["Client"] +ListCertificatesPaginatorName = Literal["list_certificates"] +ListIpRoutesPaginatorName = Literal["list_ip_routes"] +ListLogSubscriptionsPaginatorName = Literal["list_log_subscriptions"] +ListSchemaExtensionsPaginatorName = Literal["list_schema_extensions"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +OSVersionType = Literal["SERVER_2012", "SERVER_2019"] +RadiusAuthenticationProtocolType = Literal["CHAP", "MS-CHAPv1", "MS-CHAPv2", "PAP"] +RadiusStatusType = Literal["Completed", "Creating", "Failed"] +RegionTypeType = Literal["Additional", "Primary"] +ReplicationScopeType = Literal["Domain"] +SchemaExtensionStatusType = Literal["CancelInProgress", + "Cancelled", + "Completed", + "CreatingSnapshot", + "Failed", + "Initializing", + "Replicating", + "RollbackInProgress", + "UpdatingSchema",] +SelectiveAuthType = Literal["Disabled", "Enabled"] +ShareMethodType = Literal["HANDSHAKE", "ORGANIZATIONS"] +ShareStatusType = Literal["Deleted", + "Deleting", + "PendingAcceptance", + "RejectFailed", + "Rejected", + "Rejecting", + "ShareFailed", + "Shared", + "Sharing",] +SnapshotStatusType = Literal["Completed", "Creating", "Failed"] +SnapshotTypeType = Literal["Auto", "Manual"] +TargetTypeType = Literal["ACCOUNT"] +TopicStatusType = Literal["Deleted", "Failed", "Registered", "Topic not found"] +TrustDirectionType = Literal["One-Way: Incoming", "One-Way: Outgoing", "Two-Way"] +TrustStateType = Literal["Created", + "Creating", + "Deleted", + "Deleting", + "Failed", + "UpdateFailed", + "Updated", + "Updating", + "Verified", + "VerifyFailed", + "Verifying",] +TrustTypeType = Literal["External", "Forest"] +UpdateStatusType = Literal["UpdateFailed", "Updated", "Updating"] +UpdateTypeType = Literal["OS"] +DirectoryServiceServiceName = Literal["ds"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_client_authentication_settings", + "describe_directories", + "describe_domain_controllers", + "describe_ldaps_settings", + "describe_regions", + "describe_shared_directories", + "describe_snapshots", + "describe_trusts", + "describe_update_directory", + "list_certificates", + "list_ip_routes", + "list_log_subscriptions", + "list_schema_extensions", + "list_tags_for_resource",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +DirectoryVpcSettingsUnionTypeDef = Union[ 'DirectoryVpcSettingsTypeDef', 'DirectoryVpcSettingsExtraOutputTypeDef' ] +RadiusSettingsUnionTypeDef = Union['RadiusSettingsTypeDef', 'RadiusSettingsExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/dynamodb_classes.py b/aws_resource_validator/pydantic_models/dynamodb_classes.py new file mode 100644 index 00000000..1485e6ff --- /dev/null +++ b/aws_resource_validator/pydantic_models/dynamodb_classes.py @@ -0,0 +1,1672 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.dynamodb_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ArchivalSummaryTypeDef(BaseModel): + ArchivalDateTime: Optional[datetime] = None + ArchivalReason: Optional[str] = None + ArchivalBackupArn: Optional[str] = None + +class AttributeDefinitionTypeDef(BaseModel): + AttributeName: str + AttributeType: ScalarAttributeTypeType + +class AttributeValueTypeDef(BaseModel): + S: Optional[str] = None + N: Optional[str] = None + B: Optional[bytes] = None + SS: Optional[Sequence[str]] = None + NS: Optional[Sequence[str]] = None + BS: Optional[Sequence[bytes]] = None + M: Optional[Mapping[str, Any]] = None + L: Optional[Sequence[Any]] = None + NULL: Optional[bool] = None + BOOL: Optional[bool] = None + +class AutoScalingTargetTrackingScalingPolicyConfigurationDescriptionTypeDef(BaseModel): + TargetValue: float + DisableScaleIn: Optional[bool] = None + ScaleInCooldown: Optional[int] = None + ScaleOutCooldown: Optional[int] = None + +class AutoScalingTargetTrackingScalingPolicyConfigurationUpdateTypeDef(BaseModel): + TargetValue: float + DisableScaleIn: Optional[bool] = None + ScaleInCooldown: Optional[int] = None + ScaleOutCooldown: Optional[int] = None + +class BackupDetailsTypeDef(BaseModel): + BackupArn: str + BackupName: str + BackupStatus: BackupStatusType + BackupType: BackupTypeType + BackupCreationDateTime: datetime + BackupSizeBytes: Optional[int] = None + BackupExpiryDateTime: Optional[datetime] = None + +class BackupSummaryTypeDef(BaseModel): + TableName: Optional[str] = None + TableId: Optional[str] = None + TableArn: Optional[str] = None + BackupArn: Optional[str] = None + BackupName: Optional[str] = None + BackupCreationDateTime: Optional[datetime] = None + BackupExpiryDateTime: Optional[datetime] = None + BackupStatus: Optional[BackupStatusType] = None + BackupType: Optional[BackupTypeType] = None + BackupSizeBytes: Optional[int] = None + +class BillingModeSummaryTypeDef(BaseModel): + BillingMode: Optional[BillingModeType] = None + LastUpdateToPayPerRequestDateTime: Optional[datetime] = None + +class CapacityTypeDef(BaseModel): + ReadCapacityUnits: Optional[float] = None + WriteCapacityUnits: Optional[float] = None + CapacityUnits: Optional[float] = None + +class PointInTimeRecoveryDescriptionTypeDef(BaseModel): + PointInTimeRecoveryStatus: Optional[PointInTimeRecoveryStatusType] = None + EarliestRestorableDateTime: Optional[datetime] = None + LatestRestorableDateTime: Optional[datetime] = None + +class ContributorInsightsSummaryTypeDef(BaseModel): + TableName: Optional[str] = None + IndexName: Optional[str] = None + ContributorInsightsStatus: Optional[ContributorInsightsStatusType] = None + +class CreateBackupInputRequestTypeDef(BaseModel): + TableName: str + BackupName: str + +class KeySchemaElementTypeDef(BaseModel): + AttributeName: str + KeyType: KeyTypeType + +class OnDemandThroughputTypeDef(BaseModel): + MaxReadRequestUnits: Optional[int] = None + MaxWriteRequestUnits: Optional[int] = None + +class ProjectionTypeDef(BaseModel): + ProjectionType: Optional[ProjectionTypeType] = None + NonKeyAttributes: Optional[Sequence[str]] = None + +class ProvisionedThroughputTypeDef(BaseModel): + ReadCapacityUnits: int + WriteCapacityUnits: int + +class ReplicaTypeDef(BaseModel): + RegionName: Optional[str] = None + +class CreateReplicaActionTypeDef(BaseModel): + RegionName: str + +class OnDemandThroughputOverrideTypeDef(BaseModel): + MaxReadRequestUnits: Optional[int] = None + +class ProvisionedThroughputOverrideTypeDef(BaseModel): + ReadCapacityUnits: Optional[int] = None + +class SSESpecificationTypeDef(BaseModel): + Enabled: Optional[bool] = None + SSEType: Optional[SSETypeType] = None + KMSMasterKeyId: Optional[str] = None + +class StreamSpecificationTypeDef(BaseModel): + StreamEnabled: bool + StreamViewType: Optional[StreamViewTypeType] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CsvOptionsOutputTypeDef(BaseModel): + Delimiter: Optional[str] = None + HeaderList: Optional[List[str]] = None + +class CsvOptionsTypeDef(BaseModel): + Delimiter: Optional[str] = None + HeaderList: Optional[Sequence[str]] = None + +class DeleteBackupInputRequestTypeDef(BaseModel): + BackupArn: str + +class DeleteGlobalSecondaryIndexActionTypeDef(BaseModel): + IndexName: str + +class DeleteReplicaActionTypeDef(BaseModel): + RegionName: str + +class DeleteReplicationGroupMemberActionTypeDef(BaseModel): + RegionName: str + +class DeleteResourcePolicyInputRequestTypeDef(BaseModel): + ResourceArn: str + ExpectedRevisionId: Optional[str] = None + +class DeleteTableInputRequestTypeDef(BaseModel): + TableName: str + +class DescribeBackupInputRequestTypeDef(BaseModel): + BackupArn: str + +class DescribeContinuousBackupsInputRequestTypeDef(BaseModel): + TableName: str + +class DescribeContributorInsightsInputRequestTypeDef(BaseModel): + TableName: str + IndexName: Optional[str] = None + +class FailureExceptionTypeDef(BaseModel): + ExceptionName: Optional[str] = None + ExceptionDescription: Optional[str] = None + +class EndpointTypeDef(BaseModel): + Address: str + CachePeriodInMinutes: int + +class DescribeExportInputRequestTypeDef(BaseModel): + ExportArn: str + +class DescribeGlobalTableInputRequestTypeDef(BaseModel): + GlobalTableName: str + +class DescribeGlobalTableSettingsInputRequestTypeDef(BaseModel): + GlobalTableName: str + +class DescribeImportInputRequestTypeDef(BaseModel): + ImportArn: str + +class DescribeKinesisStreamingDestinationInputRequestTypeDef(BaseModel): + TableName: str + +class KinesisDataStreamDestinationTypeDef(BaseModel): + StreamArn: Optional[str] = None + DestinationStatus: Optional[DestinationStatusType] = None + DestinationStatusDescription: Optional[str] = None + ApproximateCreationDateTimePrecision: Optional[ ApproximateCreationDateTimePrecisionType ] = None + +class DescribeTableInputRequestTypeDef(BaseModel): + TableName: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeTableReplicaAutoScalingInputRequestTypeDef(BaseModel): + TableName: str + +class DescribeTimeToLiveInputRequestTypeDef(BaseModel): + TableName: str + +class TimeToLiveDescriptionTypeDef(BaseModel): + TimeToLiveStatus: Optional[TimeToLiveStatusType] = None + AttributeName: Optional[str] = None + +class EnableKinesisStreamingConfigurationTypeDef(BaseModel): + ApproximateCreationDateTimePrecision: Optional[ ApproximateCreationDateTimePrecisionType ] = None + +class IncrementalExportSpecificationOutputTypeDef(BaseModel): + ExportFromTime: Optional[datetime] = None + ExportToTime: Optional[datetime] = None + ExportViewType: Optional[ExportViewTypeType] = None + +class ExportSummaryTypeDef(BaseModel): + ExportArn: Optional[str] = None + ExportStatus: Optional[ExportStatusType] = None + ExportType: Optional[ExportTypeType] = None + +class GetResourcePolicyInputRequestTypeDef(BaseModel): + ResourceArn: str + +class ProjectionExtraOutputTypeDef(BaseModel): + ProjectionType: Optional[ProjectionTypeType] = None + NonKeyAttributes: Optional[List[str]] = None + +class ProvisionedThroughputDescriptionTypeDef(BaseModel): + LastIncreaseDateTime: Optional[datetime] = None + LastDecreaseDateTime: Optional[datetime] = None + NumberOfDecreasesToday: Optional[int] = None + ReadCapacityUnits: Optional[int] = None + WriteCapacityUnits: Optional[int] = None + +class ProjectionOutputTypeDef(BaseModel): + ProjectionType: Optional[ProjectionTypeType] = None + NonKeyAttributes: Optional[List[str]] = None + +class S3BucketSourceTypeDef(BaseModel): + S3Bucket: str + S3BucketOwner: Optional[str] = None + S3KeyPrefix: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListContributorInsightsInputRequestTypeDef(BaseModel): + TableName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListExportsInputRequestTypeDef(BaseModel): + TableArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListGlobalTablesInputRequestTypeDef(BaseModel): + ExclusiveStartGlobalTableName: Optional[str] = None + Limit: Optional[int] = None + RegionName: Optional[str] = None + +class ListImportsInputRequestTypeDef(BaseModel): + TableArn: Optional[str] = None + PageSize: Optional[int] = None + NextToken: Optional[str] = None + +class ListTablesInputRequestTypeDef(BaseModel): + ExclusiveStartTableName: Optional[str] = None + Limit: Optional[int] = None + +class ListTagsOfResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + +class PointInTimeRecoverySpecificationTypeDef(BaseModel): + PointInTimeRecoveryEnabled: bool + +class PutResourcePolicyInputRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + ExpectedRevisionId: Optional[str] = None + ConfirmRemoveSelfResourceAccess: Optional[bool] = None + +class TableClassSummaryTypeDef(BaseModel): + TableClass: Optional[TableClassType] = None + LastUpdateDateTime: Optional[datetime] = None + +class RestoreSummaryTypeDef(BaseModel): + RestoreDateTime: datetime + RestoreInProgress: bool + SourceBackupArn: Optional[str] = None + SourceTableArn: Optional[str] = None + +class SSEDescriptionTypeDef(BaseModel): + Status: Optional[SSEStatusType] = None + SSEType: Optional[SSETypeType] = None + KMSMasterKeyArn: Optional[str] = None + InaccessibleEncryptionDateTime: Optional[datetime] = None + +class TableBatchWriterRequestTypeDef(BaseModel): + overwrite_by_pkeys: Optional[List[str]] = None + +class TimeToLiveSpecificationTypeDef(BaseModel): + Enabled: bool + AttributeName: str + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateContributorInsightsInputRequestTypeDef(BaseModel): + TableName: str + ContributorInsightsAction: ContributorInsightsActionType + IndexName: Optional[str] = None + +class UpdateKinesisStreamingConfigurationTypeDef(BaseModel): + ApproximateCreationDateTimePrecision: Optional[ ApproximateCreationDateTimePrecisionType ] = None + +class ArchivalSummaryResponseTypeDef(BaseModel): + ArchivalDateTime: datetime + ArchivalReason: str + ArchivalBackupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class BillingModeSummaryResponseTypeDef(BaseModel): + BillingMode: BillingModeType + LastUpdateToPayPerRequestDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourcePolicyOutputTypeDef(BaseModel): + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLimitsOutputTypeDef(BaseModel): + AccountMaxReadCapacityUnits: int + AccountMaxWriteCapacityUnits: int + TableMaxReadCapacityUnits: int + TableMaxWriteCapacityUnits: int + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyOutputTypeDef(BaseModel): + Policy: str + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTablesOutputTypeDef(BaseModel): + TableNames: List[str] + LastEvaluatedTableName: str + ResponseMetadata: ResponseMetadataTypeDef + +class OnDemandThroughputResponseTypeDef(BaseModel): + MaxReadRequestUnits: int + MaxWriteRequestUnits: int + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionedThroughputDescriptionResponseTypeDef(BaseModel): + LastIncreaseDateTime: datetime + LastDecreaseDateTime: datetime + NumberOfDecreasesToday: int + ReadCapacityUnits: int + WriteCapacityUnits: int + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyOutputTypeDef(BaseModel): + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreSummaryResponseTypeDef(BaseModel): + SourceBackupArn: str + SourceTableArn: str + RestoreDateTime: datetime + RestoreInProgress: bool + ResponseMetadata: ResponseMetadataTypeDef + +class SSEDescriptionResponseTypeDef(BaseModel): + Status: SSEStatusType + SSEType: SSETypeType + KMSMasterKeyArn: str + InaccessibleEncryptionDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StreamSpecificationResponseTypeDef(BaseModel): + StreamEnabled: bool + StreamViewType: StreamViewTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class TableClassSummaryResponseTypeDef(BaseModel): + TableClass: TableClassType + LastUpdateDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContributorInsightsOutputTypeDef(BaseModel): + TableName: str + IndexName: str + ContributorInsightsStatus: ContributorInsightsStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class BatchStatementErrorTypeDef(BaseModel): + Code: Optional[BatchStatementErrorCodeEnumType] = None + Message: Optional[str] = None + Item: Optional[Dict[str, AttributeValueTypeDef]] = None + +class DeleteRequestOutputTypeDef(BaseModel): + Key: Dict[str, AttributeValueTypeDef] + +class ItemCollectionMetricsTypeDef(BaseModel): + ItemCollectionKey: Optional[Dict[str, AttributeValueTypeDef]] = None + SizeEstimateRangeGB: Optional[List[float]] = None + +class ItemResponseTypeDef(BaseModel): + Item: Optional[Dict[str, AttributeValueTypeDef]] = None + +class KeysAndAttributesOutputTypeDef(BaseModel): + Keys: List[Dict[str, AttributeValueTypeDef]] + AttributesToGet: Optional[List[str]] = None + ConsistentRead: Optional[bool] = None + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Dict[str, str]] = None + +class PutRequestOutputTypeDef(BaseModel): + Item: Dict[str, AttributeValueTypeDef] + +class AttributeValueUpdateTableTypeDef(BaseModel): + Value: Optional[TableAttributeValueTypeDef] = None + Action: Optional[AttributeActionType] = None + +class ConditionTableTypeDef(BaseModel): + ComparisonOperator: ComparisonOperatorType + AttributeValueList: Optional[Sequence[TableAttributeValueTypeDef]] = None + +class DeleteRequestServiceResourceOutputTypeDef(BaseModel): + Key: Dict[str, TableAttributeValueTypeDef] + +class DeleteRequestServiceResourceTypeDef(BaseModel): + Key: Mapping[str, TableAttributeValueTypeDef] + +class ExpectedAttributeValueTableTypeDef(BaseModel): + Value: Optional[TableAttributeValueTypeDef] = None + Exists: Optional[bool] = None + ComparisonOperator: Optional[ComparisonOperatorType] = None + AttributeValueList: Optional[Sequence[TableAttributeValueTypeDef]] = None + +class GetItemInputTableGetItemTypeDef(BaseModel): + Key: Mapping[str, TableAttributeValueTypeDef] + AttributesToGet: Optional[Sequence[str]] = None + ConsistentRead: Optional[bool] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + +class ItemCollectionMetricsServiceResourceTypeDef(BaseModel): + ItemCollectionKey: Optional[Dict[str, TableAttributeValueTypeDef]] = None + SizeEstimateRangeGB: Optional[List[float]] = None + +class ItemCollectionMetricsTableTypeDef(BaseModel): + ItemCollectionKey: Optional[Dict[str, TableAttributeValueTypeDef]] = None + SizeEstimateRangeGB: Optional[List[float]] = None + +class KeysAndAttributesServiceResourceOutputTypeDef(BaseModel): + Keys: List[Dict[str, TableAttributeValueTypeDef]] + AttributesToGet: Optional[List[str]] = None + ConsistentRead: Optional[bool] = None + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Dict[str, str]] = None + +class KeysAndAttributesServiceResourceTypeDef(BaseModel): + Keys: Sequence[Mapping[str, TableAttributeValueTypeDef]] + AttributesToGet: Optional[Sequence[str]] = None + ConsistentRead: Optional[bool] = None + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + +class PutRequestServiceResourceOutputTypeDef(BaseModel): + Item: Dict[str, TableAttributeValueTypeDef] + +class PutRequestServiceResourceTypeDef(BaseModel): + Item: Mapping[str, TableAttributeValueTypeDef] + +class AutoScalingPolicyDescriptionTypeDef(BaseModel): + PolicyName: Optional[str] = None + TargetTrackingScalingPolicyConfiguration: Optional[ AutoScalingTargetTrackingScalingPolicyConfigurationDescriptionTypeDef ] = None + +class AutoScalingPolicyUpdateTypeDef(BaseModel): + TargetTrackingScalingPolicyConfiguration: AutoScalingTargetTrackingScalingPolicyConfigurationUpdateTypeDef + PolicyName: Optional[str] = None + +class CreateBackupOutputTypeDef(BaseModel): + BackupDetails: BackupDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBackupsOutputTypeDef(BaseModel): + BackupSummaries: List[BackupSummaryTypeDef] + LastEvaluatedBackupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConsumedCapacityTypeDef(BaseModel): + TableName: Optional[str] = None + CapacityUnits: Optional[float] = None + ReadCapacityUnits: Optional[float] = None + WriteCapacityUnits: Optional[float] = None + Table: Optional[CapacityTypeDef] = None + LocalSecondaryIndexes: Optional[Dict[str, CapacityTypeDef]] = None + GlobalSecondaryIndexes: Optional[Dict[str, CapacityTypeDef]] = None + +class ContinuousBackupsDescriptionTypeDef(BaseModel): + ContinuousBackupsStatus: ContinuousBackupsStatusType + PointInTimeRecoveryDescription: Optional[PointInTimeRecoveryDescriptionTypeDef] = None + +class ListContributorInsightsOutputTypeDef(BaseModel): + ContributorInsightsSummaries: List[ContributorInsightsSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LocalSecondaryIndexTypeDef(BaseModel): + IndexName: str + KeySchema: Sequence[KeySchemaElementTypeDef] + Projection: ProjectionTypeDef + +class CreateGlobalSecondaryIndexActionTypeDef(BaseModel): + IndexName: str + KeySchema: Sequence[KeySchemaElementTypeDef] + Projection: ProjectionTypeDef + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class GlobalSecondaryIndexTypeDef(BaseModel): + IndexName: str + KeySchema: Sequence[KeySchemaElementTypeDef] + Projection: ProjectionTypeDef + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class SourceTableDetailsTypeDef(BaseModel): + TableName: str + TableId: str + KeySchema: List[KeySchemaElementTypeDef] + TableCreationDateTime: datetime + ProvisionedThroughput: ProvisionedThroughputTypeDef + TableArn: Optional[str] = None + TableSizeBytes: Optional[int] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + ItemCount: Optional[int] = None + BillingMode: Optional[BillingModeType] = None + +class UpdateGlobalSecondaryIndexActionTypeDef(BaseModel): + IndexName: str + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class CreateGlobalTableInputRequestTypeDef(BaseModel): + GlobalTableName: str + ReplicationGroup: Sequence[ReplicaTypeDef] + +class GlobalTableTypeDef(BaseModel): + GlobalTableName: Optional[str] = None + ReplicationGroup: Optional[List[ReplicaTypeDef]] = None + +class ReplicaGlobalSecondaryIndexDescriptionTypeDef(BaseModel): + IndexName: Optional[str] = None + ProvisionedThroughputOverride: Optional[ProvisionedThroughputOverrideTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputOverrideTypeDef] = None + +class ReplicaGlobalSecondaryIndexTypeDef(BaseModel): + IndexName: str + ProvisionedThroughputOverride: Optional[ProvisionedThroughputOverrideTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputOverrideTypeDef] = None + +class ListTagsOfResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class InputFormatOptionsOutputTypeDef(BaseModel): + Csv: Optional[CsvOptionsOutputTypeDef] = None + +class InputFormatOptionsTypeDef(BaseModel): + Csv: Optional[CsvOptionsTypeDef] = None + +class ReplicaUpdateTypeDef(BaseModel): + Create: Optional[CreateReplicaActionTypeDef] = None + Delete: Optional[DeleteReplicaActionTypeDef] = None + +class DescribeContributorInsightsOutputTypeDef(BaseModel): + TableName: str + IndexName: str + ContributorInsightsRuleList: List[str] + ContributorInsightsStatus: ContributorInsightsStatusType + LastUpdateDateTime: datetime + FailureException: FailureExceptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointsResponseTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKinesisStreamingDestinationOutputTypeDef(BaseModel): + TableName: str + KinesisDataStreamDestinations: List[KinesisDataStreamDestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTableInputTableExistsWaitTypeDef(BaseModel): + TableName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTableInputTableNotExistsWaitTypeDef(BaseModel): + TableName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTimeToLiveOutputTypeDef(BaseModel): + TimeToLiveDescription: TimeToLiveDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KinesisStreamingDestinationInputRequestTypeDef(BaseModel): + TableName: str + StreamArn: str + EnableKinesisStreamingConfiguration: Optional[ EnableKinesisStreamingConfigurationTypeDef ] = None + +class KinesisStreamingDestinationOutputTypeDef(BaseModel): + TableName: str + StreamArn: str + DestinationStatus: DestinationStatusType + EnableKinesisStreamingConfiguration: EnableKinesisStreamingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportDescriptionTypeDef(BaseModel): + ExportArn: Optional[str] = None + ExportStatus: Optional[ExportStatusType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ExportManifest: Optional[str] = None + TableArn: Optional[str] = None + TableId: Optional[str] = None + ExportTime: Optional[datetime] = None + ClientToken: Optional[str] = None + S3Bucket: Optional[str] = None + S3BucketOwner: Optional[str] = None + S3Prefix: Optional[str] = None + S3SseAlgorithm: Optional[S3SseAlgorithmType] = None + S3SseKmsKeyId: Optional[str] = None + FailureCode: Optional[str] = None + FailureMessage: Optional[str] = None + ExportFormat: Optional[ExportFormatType] = None + BilledSizeBytes: Optional[int] = None + ItemCount: Optional[int] = None + ExportType: Optional[ExportTypeType] = None + IncrementalExportSpecification: Optional[IncrementalExportSpecificationOutputTypeDef] = None + +class ListExportsOutputTypeDef(BaseModel): + ExportSummaries: List[ExportSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class IncrementalExportSpecificationTypeDef(BaseModel): + ExportFromTime: Optional[TimestampTypeDef] = None + ExportToTime: Optional[TimestampTypeDef] = None + ExportViewType: Optional[ExportViewTypeType] = None + +class ListBackupsInputRequestTypeDef(BaseModel): + TableName: Optional[str] = None + Limit: Optional[int] = None + TimeRangeLowerBound: Optional[TimestampTypeDef] = None + TimeRangeUpperBound: Optional[TimestampTypeDef] = None + ExclusiveStartBackupArn: Optional[str] = None + BackupType: Optional[BackupTypeFilterType] = None + +class LocalSecondaryIndexDescriptionTypeDef(BaseModel): + IndexName: Optional[str] = None + KeySchema: Optional[List[KeySchemaElementTypeDef]] = None + Projection: Optional[ProjectionExtraOutputTypeDef] = None + IndexSizeBytes: Optional[int] = None + ItemCount: Optional[int] = None + IndexArn: Optional[str] = None + +class GlobalSecondaryIndexDescriptionTypeDef(BaseModel): + IndexName: Optional[str] = None + KeySchema: Optional[List[KeySchemaElementTypeDef]] = None + Projection: Optional[ProjectionExtraOutputTypeDef] = None + IndexStatus: Optional[IndexStatusType] = None + Backfilling: Optional[bool] = None + ProvisionedThroughput: Optional[ProvisionedThroughputDescriptionTypeDef] = None + IndexSizeBytes: Optional[int] = None + ItemCount: Optional[int] = None + IndexArn: Optional[str] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class GlobalSecondaryIndexInfoTypeDef(BaseModel): + IndexName: Optional[str] = None + KeySchema: Optional[List[KeySchemaElementTypeDef]] = None + Projection: Optional[ProjectionOutputTypeDef] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class GlobalSecondaryIndexOutputTypeDef(BaseModel): + IndexName: str + KeySchema: List[KeySchemaElementTypeDef] + Projection: ProjectionOutputTypeDef + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class LocalSecondaryIndexInfoTypeDef(BaseModel): + IndexName: Optional[str] = None + KeySchema: Optional[List[KeySchemaElementTypeDef]] = None + Projection: Optional[ProjectionOutputTypeDef] = None + +class ImportSummaryTypeDef(BaseModel): + ImportArn: Optional[str] = None + ImportStatus: Optional[ImportStatusType] = None + TableArn: Optional[str] = None + S3BucketSource: Optional[S3BucketSourceTypeDef] = None + CloudWatchLogGroupArn: Optional[str] = None + InputFormat: Optional[InputFormatType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class ListBackupsInputListBackupsPaginateTypeDef(BaseModel): + TableName: Optional[str] = None + TimeRangeLowerBound: Optional[TimestampTypeDef] = None + TimeRangeUpperBound: Optional[TimestampTypeDef] = None + BackupType: Optional[BackupTypeFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTablesInputListTablesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsOfResourceInputListTagsOfResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class UpdateContinuousBackupsInputRequestTypeDef(BaseModel): + TableName: str + PointInTimeRecoverySpecification: PointInTimeRecoverySpecificationTypeDef + +class UpdateTimeToLiveInputRequestTypeDef(BaseModel): + TableName: str + TimeToLiveSpecification: TimeToLiveSpecificationTypeDef + +class UpdateTimeToLiveOutputTypeDef(BaseModel): + TimeToLiveSpecification: TimeToLiveSpecificationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKinesisStreamingDestinationInputRequestTypeDef(BaseModel): + TableName: str + StreamArn: str + UpdateKinesisStreamingConfiguration: Optional[ UpdateKinesisStreamingConfigurationTypeDef ] = None + +class UpdateKinesisStreamingDestinationOutputTypeDef(BaseModel): + TableName: str + StreamArn: str + DestinationStatus: DestinationStatusType + UpdateKinesisStreamingConfiguration: UpdateKinesisStreamingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchStatementResponseTypeDef(BaseModel): + Error: Optional[BatchStatementErrorTypeDef] = None + TableName: Optional[str] = None + Item: Optional[Dict[str, AttributeValueTypeDef]] = None + +class WriteRequestOutputTypeDef(BaseModel): + PutRequest: Optional[PutRequestOutputTypeDef] = None + DeleteRequest: Optional[DeleteRequestOutputTypeDef] = None + +class AttributeValueUpdateTypeDef(BaseModel): + Value: Optional[UniversalAttributeValueTypeDef] = None + Action: Optional[AttributeActionType] = None + +class BatchStatementRequestTypeDef(BaseModel): + Statement: str + Parameters: Optional[Sequence[UniversalAttributeValueTypeDef]] = None + ConsistentRead: Optional[bool] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class ConditionCheckTypeDef(BaseModel): + Key: Mapping[str, UniversalAttributeValueTypeDef] + TableName: str + ConditionExpression: str + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class ConditionTypeDef(BaseModel): + ComparisonOperator: ComparisonOperatorType + AttributeValueList: Optional[Sequence[UniversalAttributeValueTypeDef]] = None + +class DeleteRequestTypeDef(BaseModel): + Key: Mapping[str, UniversalAttributeValueTypeDef] + +class DeleteTypeDef(BaseModel): + Key: Mapping[str, UniversalAttributeValueTypeDef] + TableName: str + ConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class ExecuteStatementInputRequestTypeDef(BaseModel): + Statement: str + Parameters: Optional[Sequence[UniversalAttributeValueTypeDef]] = None + ConsistentRead: Optional[bool] = None + NextToken: Optional[str] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + Limit: Optional[int] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class ExpectedAttributeValueTypeDef(BaseModel): + Value: Optional[UniversalAttributeValueTypeDef] = None + Exists: Optional[bool] = None + ComparisonOperator: Optional[ComparisonOperatorType] = None + AttributeValueList: Optional[Sequence[UniversalAttributeValueTypeDef]] = None + +class GetItemInputRequestTypeDef(BaseModel): + TableName: str + Key: Mapping[str, UniversalAttributeValueTypeDef] + AttributesToGet: Optional[Sequence[str]] = None + ConsistentRead: Optional[bool] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + +class GetTypeDef(BaseModel): + Key: Mapping[str, UniversalAttributeValueTypeDef] + TableName: str + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + +class KeysAndAttributesTypeDef(BaseModel): + Keys: Sequence[Mapping[str, UniversalAttributeValueTypeDef]] + AttributesToGet: Optional[Sequence[str]] = None + ConsistentRead: Optional[bool] = None + ProjectionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + +class ParameterizedStatementTypeDef(BaseModel): + Statement: str + Parameters: Optional[Sequence[UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class PutRequestTypeDef(BaseModel): + Item: Mapping[str, UniversalAttributeValueTypeDef] + +class PutTypeDef(BaseModel): + Item: Mapping[str, UniversalAttributeValueTypeDef] + TableName: str + ConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class UpdateTypeDef(BaseModel): + Key: Mapping[str, UniversalAttributeValueTypeDef] + UpdateExpression: str + TableName: str + ConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class QueryInputTableQueryTypeDef(BaseModel): + IndexName: Optional[str] = None + Select: Optional[SelectType] = None + AttributesToGet: Optional[Sequence[str]] = None + Limit: Optional[int] = None + ConsistentRead: Optional[bool] = None + KeyConditions: Optional[Mapping[str, ConditionTableTypeDef]] = None + QueryFilter: Optional[Mapping[str, ConditionTableTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ScanIndexForward: Optional[bool] = None + ExclusiveStartKey: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ProjectionExpression: Optional[str] = None + FilterExpression: Optional[ConditionBaseImportTypeDef] = None + KeyConditionExpression: Optional[ConditionBaseImportTypeDef] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + +class ScanInputTableScanTypeDef(BaseModel): + IndexName: Optional[str] = None + AttributesToGet: Optional[Sequence[str]] = None + Limit: Optional[int] = None + Select: Optional[SelectType] = None + ScanFilter: Optional[Mapping[str, ConditionTableTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ExclusiveStartKey: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + TotalSegments: Optional[int] = None + Segment: Optional[int] = None + ProjectionExpression: Optional[str] = None + FilterExpression: Optional[ConditionBaseImportTypeDef] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + ConsistentRead: Optional[bool] = None + +class DeleteItemInputTableDeleteItemTypeDef(BaseModel): + Key: Mapping[str, TableAttributeValueTypeDef] + Expected: Optional[Mapping[str, ExpectedAttributeValueTableTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ReturnValues: Optional[ReturnValueType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + ConditionExpression: Optional[ConditionBaseImportTypeDef] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class PutItemInputTablePutItemTypeDef(BaseModel): + Item: Mapping[str, TableAttributeValueTypeDef] + Expected: Optional[Mapping[str, ExpectedAttributeValueTableTypeDef]] = None + ReturnValues: Optional[ReturnValueType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ConditionExpression: Optional[ConditionBaseImportTypeDef] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class UpdateItemInputTableUpdateItemTypeDef(BaseModel): + Key: Mapping[str, TableAttributeValueTypeDef] + AttributeUpdates: Optional[Mapping[str, AttributeValueUpdateTableTypeDef]] = None + Expected: Optional[Mapping[str, ExpectedAttributeValueTableTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ReturnValues: Optional[ReturnValueType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + UpdateExpression: Optional[str] = None + ConditionExpression: Optional[ConditionBaseImportTypeDef] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, TableAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class WriteRequestServiceResourceOutputTypeDef(BaseModel): + PutRequest: Optional[PutRequestServiceResourceOutputTypeDef] = None + DeleteRequest: Optional[DeleteRequestServiceResourceOutputTypeDef] = None + +class WriteRequestServiceResourceTypeDef(BaseModel): + PutRequest: Optional[PutRequestServiceResourceTypeDef] = None + DeleteRequest: Optional[DeleteRequestServiceResourceTypeDef] = None + +class AutoScalingSettingsDescriptionTypeDef(BaseModel): + MinimumUnits: Optional[int] = None + MaximumUnits: Optional[int] = None + AutoScalingDisabled: Optional[bool] = None + AutoScalingRoleArn: Optional[str] = None + ScalingPolicies: Optional[List[AutoScalingPolicyDescriptionTypeDef]] = None + +class AutoScalingSettingsUpdateTypeDef(BaseModel): + MinimumUnits: Optional[int] = None + MaximumUnits: Optional[int] = None + AutoScalingDisabled: Optional[bool] = None + AutoScalingRoleArn: Optional[str] = None + ScalingPolicyUpdate: Optional[AutoScalingPolicyUpdateTypeDef] = None + +class BatchGetItemOutputServiceResourceTypeDef(BaseModel): + Responses: Dict[str, List[Dict[str, TableAttributeValueTypeDef]]] + UnprocessedKeys: Dict[str, KeysAndAttributesServiceResourceOutputTypeDef] + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetItemOutputTypeDef(BaseModel): + Responses: Dict[str, List[Dict[str, AttributeValueTypeDef]]] + UnprocessedKeys: Dict[str, KeysAndAttributesOutputTypeDef] + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteItemOutputTableTypeDef(BaseModel): + Attributes: Dict[str, TableAttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ItemCollectionMetrics: ItemCollectionMetricsTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteItemOutputTypeDef(BaseModel): + Attributes: Dict[str, AttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ItemCollectionMetrics: ItemCollectionMetricsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteStatementOutputTypeDef(BaseModel): + Items: List[Dict[str, AttributeValueTypeDef]] + ConsumedCapacity: ConsumedCapacityTypeDef + LastEvaluatedKey: Dict[str, AttributeValueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ExecuteTransactionOutputTypeDef(BaseModel): + Responses: List[ItemResponseTypeDef] + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetItemOutputTableTypeDef(BaseModel): + ConsumedCapacity: ConsumedCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + Item: Optional[Dict[str, TableAttributeValueTypeDef]] = None + +class GetItemOutputTypeDef(BaseModel): + ConsumedCapacity: ConsumedCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + Item: Optional[Dict[str, AttributeValueTypeDef]] = None + +class PutItemOutputTableTypeDef(BaseModel): + Attributes: Dict[str, TableAttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ItemCollectionMetrics: ItemCollectionMetricsTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutItemOutputTypeDef(BaseModel): + Attributes: Dict[str, AttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ItemCollectionMetrics: ItemCollectionMetricsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class QueryOutputTableTypeDef(BaseModel): + Items: List[Dict[str, TableAttributeValueTypeDef]] + Count: int + ScannedCount: int + LastEvaluatedKey: Dict[str, TableAttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class QueryOutputTypeDef(BaseModel): + Items: List[Dict[str, AttributeValueTypeDef]] + Count: int + ScannedCount: int + LastEvaluatedKey: Dict[str, AttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ScanOutputTableTypeDef(BaseModel): + Items: List[Dict[str, TableAttributeValueTypeDef]] + Count: int + ScannedCount: int + LastEvaluatedKey: Dict[str, TableAttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ScanOutputTypeDef(BaseModel): + Items: List[Dict[str, AttributeValueTypeDef]] + Count: int + ScannedCount: int + LastEvaluatedKey: Dict[str, AttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TransactGetItemsOutputTypeDef(BaseModel): + ConsumedCapacity: List[ConsumedCapacityTypeDef] + Responses: List[ItemResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TransactWriteItemsOutputTypeDef(BaseModel): + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ItemCollectionMetrics: Dict[str, List[ItemCollectionMetricsTypeDef]] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateItemOutputTableTypeDef(BaseModel): + Attributes: Dict[str, TableAttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ItemCollectionMetrics: ItemCollectionMetricsTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateItemOutputTypeDef(BaseModel): + Attributes: Dict[str, AttributeValueTypeDef] + ConsumedCapacity: ConsumedCapacityTypeDef + ItemCollectionMetrics: ItemCollectionMetricsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContinuousBackupsOutputTypeDef(BaseModel): + ContinuousBackupsDescription: ContinuousBackupsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContinuousBackupsOutputTypeDef(BaseModel): + ContinuousBackupsDescription: ContinuousBackupsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TableCreationParametersTypeDef(BaseModel): + TableName: str + AttributeDefinitions: Sequence[AttributeDefinitionTypeDef] + KeySchema: Sequence[KeySchemaElementTypeDef] + BillingMode: Optional[BillingModeType] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + GlobalSecondaryIndexes: Optional[Sequence[GlobalSecondaryIndexTypeDef]] = None + +class GlobalSecondaryIndexUpdateTypeDef(BaseModel): + Update: Optional[UpdateGlobalSecondaryIndexActionTypeDef] = None + Create: Optional[CreateGlobalSecondaryIndexActionTypeDef] = None + Delete: Optional[DeleteGlobalSecondaryIndexActionTypeDef] = None + +class ListGlobalTablesOutputTypeDef(BaseModel): + GlobalTables: List[GlobalTableTypeDef] + LastEvaluatedGlobalTableName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicaDescriptionTypeDef(BaseModel): + RegionName: Optional[str] = None + ReplicaStatus: Optional[ReplicaStatusType] = None + ReplicaStatusDescription: Optional[str] = None + ReplicaStatusPercentProgress: Optional[str] = None + KMSMasterKeyId: Optional[str] = None + ProvisionedThroughputOverride: Optional[ProvisionedThroughputOverrideTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputOverrideTypeDef] = None + GlobalSecondaryIndexes: Optional[List[ReplicaGlobalSecondaryIndexDescriptionTypeDef]] = None + ReplicaInaccessibleDateTime: Optional[datetime] = None + ReplicaTableClassSummary: Optional[TableClassSummaryTypeDef] = None + +class CreateReplicationGroupMemberActionTypeDef(BaseModel): + RegionName: str + KMSMasterKeyId: Optional[str] = None + ProvisionedThroughputOverride: Optional[ProvisionedThroughputOverrideTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputOverrideTypeDef] = None + GlobalSecondaryIndexes: Optional[Sequence[ReplicaGlobalSecondaryIndexTypeDef]] = None + TableClassOverride: Optional[TableClassType] = None + +class UpdateReplicationGroupMemberActionTypeDef(BaseModel): + RegionName: str + KMSMasterKeyId: Optional[str] = None + ProvisionedThroughputOverride: Optional[ProvisionedThroughputOverrideTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputOverrideTypeDef] = None + GlobalSecondaryIndexes: Optional[Sequence[ReplicaGlobalSecondaryIndexTypeDef]] = None + TableClassOverride: Optional[TableClassType] = None + +class UpdateGlobalTableInputRequestTypeDef(BaseModel): + GlobalTableName: str + ReplicaUpdates: Sequence[ReplicaUpdateTypeDef] + +class DescribeExportOutputTypeDef(BaseModel): + ExportDescription: ExportDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTableToPointInTimeOutputTypeDef(BaseModel): + ExportDescription: ExportDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTableToPointInTimeInputRequestTypeDef(BaseModel): + TableArn: str + S3Bucket: str + ExportTime: Optional[TimestampTypeDef] = None + ClientToken: Optional[str] = None + S3BucketOwner: Optional[str] = None + S3Prefix: Optional[str] = None + S3SseAlgorithm: Optional[S3SseAlgorithmType] = None + S3SseKmsKeyId: Optional[str] = None + ExportFormat: Optional[ExportFormatType] = None + ExportType: Optional[ExportTypeType] = None + IncrementalExportSpecification: Optional[IncrementalExportSpecificationTypeDef] = None + +class TableCreationParametersOutputTypeDef(BaseModel): + TableName: str + AttributeDefinitions: List[AttributeDefinitionTypeDef] + KeySchema: List[KeySchemaElementTypeDef] + BillingMode: Optional[BillingModeType] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + GlobalSecondaryIndexes: Optional[List[GlobalSecondaryIndexOutputTypeDef]] = None + +class SourceTableFeatureDetailsTypeDef(BaseModel): + LocalSecondaryIndexes: Optional[List[LocalSecondaryIndexInfoTypeDef]] = None + GlobalSecondaryIndexes: Optional[List[GlobalSecondaryIndexInfoTypeDef]] = None + StreamDescription: Optional[StreamSpecificationTypeDef] = None + TimeToLiveDescription: Optional[TimeToLiveDescriptionTypeDef] = None + SSEDescription: Optional[SSEDescriptionTypeDef] = None + +class ListImportsOutputTypeDef(BaseModel): + ImportSummaryList: List[ImportSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchExecuteStatementOutputTypeDef(BaseModel): + Responses: List[BatchStatementResponseTypeDef] + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchWriteItemOutputTypeDef(BaseModel): + UnprocessedItems: Dict[str, List[WriteRequestOutputTypeDef]] + ItemCollectionMetrics: Dict[str, List[ItemCollectionMetricsTypeDef]] + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchExecuteStatementInputRequestTypeDef(BaseModel): + Statements: Sequence[BatchStatementRequestTypeDef] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + +class QueryInputQueryPaginateTypeDef(BaseModel): + TableName: str + IndexName: Optional[str] = None + Select: Optional[SelectType] = None + AttributesToGet: Optional[Sequence[str]] = None + ConsistentRead: Optional[bool] = None + KeyConditions: Optional[Mapping[str, ConditionTypeDef]] = None + QueryFilter: Optional[Mapping[str, ConditionTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ScanIndexForward: Optional[bool] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ProjectionExpression: Optional[str] = None + FilterExpression: Optional[str] = None + KeyConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class QueryInputRequestTypeDef(BaseModel): + TableName: str + IndexName: Optional[str] = None + Select: Optional[SelectType] = None + AttributesToGet: Optional[Sequence[str]] = None + Limit: Optional[int] = None + ConsistentRead: Optional[bool] = None + KeyConditions: Optional[Mapping[str, ConditionTypeDef]] = None + QueryFilter: Optional[Mapping[str, ConditionTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ScanIndexForward: Optional[bool] = None + ExclusiveStartKey: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ProjectionExpression: Optional[str] = None + FilterExpression: Optional[str] = None + KeyConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + +class ScanInputRequestTypeDef(BaseModel): + TableName: str + IndexName: Optional[str] = None + AttributesToGet: Optional[Sequence[str]] = None + Limit: Optional[int] = None + Select: Optional[SelectType] = None + ScanFilter: Optional[Mapping[str, ConditionTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ExclusiveStartKey: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + TotalSegments: Optional[int] = None + Segment: Optional[int] = None + ProjectionExpression: Optional[str] = None + FilterExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ConsistentRead: Optional[bool] = None + +class ScanInputScanPaginateTypeDef(BaseModel): + TableName: str + IndexName: Optional[str] = None + AttributesToGet: Optional[Sequence[str]] = None + Select: Optional[SelectType] = None + ScanFilter: Optional[Mapping[str, ConditionTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + TotalSegments: Optional[int] = None + Segment: Optional[int] = None + ProjectionExpression: Optional[str] = None + FilterExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ConsistentRead: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DeleteItemInputRequestTypeDef(BaseModel): + TableName: str + Key: Mapping[str, UniversalAttributeValueTypeDef] + Expected: Optional[Mapping[str, ExpectedAttributeValueTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ReturnValues: Optional[ReturnValueType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + ConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class PutItemInputRequestTypeDef(BaseModel): + TableName: str + Item: Mapping[str, UniversalAttributeValueTypeDef] + Expected: Optional[Mapping[str, ExpectedAttributeValueTypeDef]] = None + ReturnValues: Optional[ReturnValueType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class UpdateItemInputRequestTypeDef(BaseModel): + TableName: str + Key: Mapping[str, UniversalAttributeValueTypeDef] + AttributeUpdates: Optional[Mapping[str, AttributeValueUpdateTypeDef]] = None + Expected: Optional[Mapping[str, ExpectedAttributeValueTypeDef]] = None + ConditionalOperator: Optional[ConditionalOperatorType] = None + ReturnValues: Optional[ReturnValueType] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + UpdateExpression: Optional[str] = None + ConditionExpression: Optional[str] = None + ExpressionAttributeNames: Optional[Mapping[str, str]] = None + ExpressionAttributeValues: Optional[Mapping[str, UniversalAttributeValueTypeDef]] = None + ReturnValuesOnConditionCheckFailure: Optional[ReturnValuesOnConditionCheckFailureType] = None + +class TransactGetItemTypeDef(BaseModel): + Get: GetTypeDef + +class ExecuteTransactionInputRequestTypeDef(BaseModel): + TransactStatements: Sequence[ParameterizedStatementTypeDef] + ClientRequestToken: Optional[str] = None + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + +class WriteRequestTypeDef(BaseModel): + PutRequest: Optional[PutRequestTypeDef] = None + DeleteRequest: Optional[DeleteRequestTypeDef] = None + +class TransactWriteItemTypeDef(BaseModel): + ConditionCheck: Optional[ConditionCheckTypeDef] = None + Put: Optional[PutTypeDef] = None + Delete: Optional[DeleteTypeDef] = None + Update: Optional[UpdateTypeDef] = None + +class BatchGetItemInputServiceResourceBatchGetItemTypeDef(BaseModel): + RequestItems: Mapping[str, KeysAndAttributesServiceResourceUnionTypeDef] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + +class BatchWriteItemOutputServiceResourceTypeDef(BaseModel): + UnprocessedItems: Dict[str, List[WriteRequestServiceResourceOutputTypeDef]] + ItemCollectionMetrics: Dict[str, List[ItemCollectionMetricsServiceResourceTypeDef]] + ConsumedCapacity: List[ConsumedCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicaGlobalSecondaryIndexAutoScalingDescriptionTypeDef(BaseModel): + IndexName: Optional[str] = None + IndexStatus: Optional[IndexStatusType] = None + ProvisionedReadCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + ProvisionedWriteCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + +class ReplicaGlobalSecondaryIndexSettingsDescriptionTypeDef(BaseModel): + IndexName: str + IndexStatus: Optional[IndexStatusType] = None + ProvisionedReadCapacityUnits: Optional[int] = None + ProvisionedReadCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + ProvisionedWriteCapacityUnits: Optional[int] = None + ProvisionedWriteCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + +class GlobalSecondaryIndexAutoScalingUpdateTypeDef(BaseModel): + IndexName: Optional[str] = None + ProvisionedWriteCapacityAutoScalingUpdate: Optional[AutoScalingSettingsUpdateTypeDef] = None + +class GlobalTableGlobalSecondaryIndexSettingsUpdateTypeDef(BaseModel): + IndexName: str + ProvisionedWriteCapacityUnits: Optional[int] = None + ProvisionedWriteCapacityAutoScalingSettingsUpdate: Optional[ AutoScalingSettingsUpdateTypeDef ] = None + +class ReplicaGlobalSecondaryIndexAutoScalingUpdateTypeDef(BaseModel): + IndexName: Optional[str] = None + ProvisionedReadCapacityAutoScalingUpdate: Optional[AutoScalingSettingsUpdateTypeDef] = None + +class ReplicaGlobalSecondaryIndexSettingsUpdateTypeDef(BaseModel): + IndexName: str + ProvisionedReadCapacityUnits: Optional[int] = None + ProvisionedReadCapacityAutoScalingSettingsUpdate: Optional[ AutoScalingSettingsUpdateTypeDef ] = None + +class ImportTableInputRequestTypeDef(BaseModel): + S3BucketSource: S3BucketSourceTypeDef + InputFormat: InputFormatType + TableCreationParameters: TableCreationParametersTypeDef + ClientToken: Optional[str] = None + InputFormatOptions: Optional[InputFormatOptionsTypeDef] = None + InputCompressionType: Optional[InputCompressionTypeType] = None + +class GlobalTableDescriptionTypeDef(BaseModel): + ReplicationGroup: Optional[List[ReplicaDescriptionTypeDef]] = None + GlobalTableArn: Optional[str] = None + CreationDateTime: Optional[datetime] = None + GlobalTableStatus: Optional[GlobalTableStatusType] = None + GlobalTableName: Optional[str] = None + +class TableDescriptionTypeDef(BaseModel): + AttributeDefinitions: Optional[List[AttributeDefinitionTypeDef]] = None + TableName: Optional[str] = None + KeySchema: Optional[List[KeySchemaElementTypeDef]] = None + TableStatus: Optional[TableStatusType] = None + CreationDateTime: Optional[datetime] = None + ProvisionedThroughput: Optional[ProvisionedThroughputDescriptionTypeDef] = None + TableSizeBytes: Optional[int] = None + ItemCount: Optional[int] = None + TableArn: Optional[str] = None + TableId: Optional[str] = None + BillingModeSummary: Optional[BillingModeSummaryTypeDef] = None + LocalSecondaryIndexes: Optional[List[LocalSecondaryIndexDescriptionTypeDef]] = None + GlobalSecondaryIndexes: Optional[List[GlobalSecondaryIndexDescriptionTypeDef]] = None + StreamSpecification: Optional[StreamSpecificationTypeDef] = None + LatestStreamLabel: Optional[str] = None + LatestStreamArn: Optional[str] = None + GlobalTableVersion: Optional[str] = None + Replicas: Optional[List[ReplicaDescriptionTypeDef]] = None + RestoreSummary: Optional[RestoreSummaryTypeDef] = None + SSEDescription: Optional[SSEDescriptionTypeDef] = None + ArchivalSummary: Optional[ArchivalSummaryTypeDef] = None + TableClassSummary: Optional[TableClassSummaryTypeDef] = None + DeletionProtectionEnabled: Optional[bool] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class ReplicationGroupUpdateTypeDef(BaseModel): + Create: Optional[CreateReplicationGroupMemberActionTypeDef] = None + Update: Optional[UpdateReplicationGroupMemberActionTypeDef] = None + Delete: Optional[DeleteReplicationGroupMemberActionTypeDef] = None + +class CreateTableInputRequestTypeDef(BaseModel): + AttributeDefinitions: Sequence[AttributeDefinitionTypeDef] + TableName: str + KeySchema: Sequence[KeySchemaElementTypeDef] + LocalSecondaryIndexes: Optional[Sequence[LocalSecondaryIndexTypeDef]] = None + GlobalSecondaryIndexes: Optional[Sequence[GlobalSecondaryIndexUnionTypeDef]] = None + BillingMode: Optional[BillingModeType] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + StreamSpecification: Optional[StreamSpecificationTypeDef] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TableClass: Optional[TableClassType] = None + DeletionProtectionEnabled: Optional[bool] = None + ResourcePolicy: Optional[str] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class CreateTableInputServiceResourceCreateTableTypeDef(BaseModel): + AttributeDefinitions: Sequence[AttributeDefinitionTypeDef] + TableName: str + KeySchema: Sequence[KeySchemaElementTypeDef] + LocalSecondaryIndexes: Optional[Sequence[LocalSecondaryIndexTypeDef]] = None + GlobalSecondaryIndexes: Optional[Sequence[GlobalSecondaryIndexUnionTypeDef]] = None + BillingMode: Optional[BillingModeType] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + StreamSpecification: Optional[StreamSpecificationTypeDef] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TableClass: Optional[TableClassType] = None + DeletionProtectionEnabled: Optional[bool] = None + ResourcePolicy: Optional[str] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class RestoreTableFromBackupInputRequestTypeDef(BaseModel): + TargetTableName: str + BackupArn: str + BillingModeOverride: Optional[BillingModeType] = None + GlobalSecondaryIndexOverride: Optional[Sequence[GlobalSecondaryIndexUnionTypeDef]] = None + LocalSecondaryIndexOverride: Optional[Sequence[LocalSecondaryIndexTypeDef]] = None + ProvisionedThroughputOverride: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputTypeDef] = None + SSESpecificationOverride: Optional[SSESpecificationTypeDef] = None + +class RestoreTableToPointInTimeInputRequestTypeDef(BaseModel): + TargetTableName: str + SourceTableArn: Optional[str] = None + SourceTableName: Optional[str] = None + UseLatestRestorableTime: Optional[bool] = None + RestoreDateTime: Optional[TimestampTypeDef] = None + BillingModeOverride: Optional[BillingModeType] = None + GlobalSecondaryIndexOverride: Optional[Sequence[GlobalSecondaryIndexUnionTypeDef]] = None + LocalSecondaryIndexOverride: Optional[Sequence[LocalSecondaryIndexTypeDef]] = None + ProvisionedThroughputOverride: Optional[ProvisionedThroughputTypeDef] = None + OnDemandThroughputOverride: Optional[OnDemandThroughputTypeDef] = None + SSESpecificationOverride: Optional[SSESpecificationTypeDef] = None + +class ImportTableDescriptionTypeDef(BaseModel): + ImportArn: Optional[str] = None + ImportStatus: Optional[ImportStatusType] = None + TableArn: Optional[str] = None + TableId: Optional[str] = None + ClientToken: Optional[str] = None + S3BucketSource: Optional[S3BucketSourceTypeDef] = None + ErrorCount: Optional[int] = None + CloudWatchLogGroupArn: Optional[str] = None + InputFormat: Optional[InputFormatType] = None + InputFormatOptions: Optional[InputFormatOptionsOutputTypeDef] = None + InputCompressionType: Optional[InputCompressionTypeType] = None + TableCreationParameters: Optional[TableCreationParametersOutputTypeDef] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ProcessedSizeBytes: Optional[int] = None + ProcessedItemCount: Optional[int] = None + ImportedItemCount: Optional[int] = None + FailureCode: Optional[str] = None + FailureMessage: Optional[str] = None + +class BackupDescriptionTypeDef(BaseModel): + BackupDetails: Optional[BackupDetailsTypeDef] = None + SourceTableDetails: Optional[SourceTableDetailsTypeDef] = None + SourceTableFeatureDetails: Optional[SourceTableFeatureDetailsTypeDef] = None + +class TransactGetItemsInputRequestTypeDef(BaseModel): + TransactItems: Sequence[TransactGetItemTypeDef] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + +class BatchGetItemInputRequestTypeDef(BaseModel): + RequestItems: Mapping[str, KeysAndAttributesUnionTypeDef] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + +class TransactWriteItemsInputRequestTypeDef(BaseModel): + TransactItems: Sequence[TransactWriteItemTypeDef] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + ClientRequestToken: Optional[str] = None + +class BatchWriteItemInputServiceResourceBatchWriteItemTypeDef(BaseModel): + RequestItems: Mapping[str, Sequence[WriteRequestServiceResourceUnionTypeDef]] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + +class ReplicaAutoScalingDescriptionTypeDef(BaseModel): + RegionName: Optional[str] = None + GlobalSecondaryIndexes: Optional[ List[ReplicaGlobalSecondaryIndexAutoScalingDescriptionTypeDef] ] = None + ReplicaProvisionedReadCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + ReplicaProvisionedWriteCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + ReplicaStatus: Optional[ReplicaStatusType] = None + +class ReplicaSettingsDescriptionTypeDef(BaseModel): + RegionName: str + ReplicaStatus: Optional[ReplicaStatusType] = None + ReplicaBillingModeSummary: Optional[BillingModeSummaryTypeDef] = None + ReplicaProvisionedReadCapacityUnits: Optional[int] = None + ReplicaProvisionedReadCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + ReplicaProvisionedWriteCapacityUnits: Optional[int] = None + ReplicaProvisionedWriteCapacityAutoScalingSettings: Optional[ AutoScalingSettingsDescriptionTypeDef ] = None + ReplicaGlobalSecondaryIndexSettings: Optional[ List[ReplicaGlobalSecondaryIndexSettingsDescriptionTypeDef] ] = None + ReplicaTableClassSummary: Optional[TableClassSummaryTypeDef] = None + +class ReplicaAutoScalingUpdateTypeDef(BaseModel): + RegionName: str + ReplicaGlobalSecondaryIndexUpdates: Optional[ Sequence[ReplicaGlobalSecondaryIndexAutoScalingUpdateTypeDef] ] = None + ReplicaProvisionedReadCapacityAutoScalingUpdate: Optional[ AutoScalingSettingsUpdateTypeDef ] = None + +class ReplicaSettingsUpdateTypeDef(BaseModel): + RegionName: str + ReplicaProvisionedReadCapacityUnits: Optional[int] = None + ReplicaProvisionedReadCapacityAutoScalingSettingsUpdate: Optional[ AutoScalingSettingsUpdateTypeDef ] = None + ReplicaGlobalSecondaryIndexSettingsUpdate: Optional[ Sequence[ReplicaGlobalSecondaryIndexSettingsUpdateTypeDef] ] = None + ReplicaTableClass: Optional[TableClassType] = None + +class CreateGlobalTableOutputTypeDef(BaseModel): + GlobalTableDescription: GlobalTableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGlobalTableOutputTypeDef(BaseModel): + GlobalTableDescription: GlobalTableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGlobalTableOutputTypeDef(BaseModel): + GlobalTableDescription: GlobalTableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTableOutputTypeDef(BaseModel): + TableDescription: TableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTableOutputTypeDef(BaseModel): + TableDescription: TableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTableOutputTypeDef(BaseModel): + Table: TableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreTableFromBackupOutputTypeDef(BaseModel): + TableDescription: TableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreTableToPointInTimeOutputTypeDef(BaseModel): + TableDescription: TableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableOutputTypeDef(BaseModel): + TableDescription: TableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableInputRequestTypeDef(BaseModel): + TableName: str + AttributeDefinitions: Optional[Sequence[AttributeDefinitionTypeDef]] = None + BillingMode: Optional[BillingModeType] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + GlobalSecondaryIndexUpdates: Optional[Sequence[GlobalSecondaryIndexUpdateTypeDef]] = None + StreamSpecification: Optional[StreamSpecificationTypeDef] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + ReplicaUpdates: Optional[Sequence[ReplicationGroupUpdateTypeDef]] = None + TableClass: Optional[TableClassType] = None + DeletionProtectionEnabled: Optional[bool] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class UpdateTableInputTableUpdateTypeDef(BaseModel): + AttributeDefinitions: Optional[Sequence[AttributeDefinitionTypeDef]] = None + BillingMode: Optional[BillingModeType] = None + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + GlobalSecondaryIndexUpdates: Optional[Sequence[GlobalSecondaryIndexUpdateTypeDef]] = None + StreamSpecification: Optional[StreamSpecificationTypeDef] = None + SSESpecification: Optional[SSESpecificationTypeDef] = None + ReplicaUpdates: Optional[Sequence[ReplicationGroupUpdateTypeDef]] = None + TableClass: Optional[TableClassType] = None + DeletionProtectionEnabled: Optional[bool] = None + OnDemandThroughput: Optional[OnDemandThroughputTypeDef] = None + +class DescribeImportOutputTypeDef(BaseModel): + ImportTableDescription: ImportTableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportTableOutputTypeDef(BaseModel): + ImportTableDescription: ImportTableDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackupOutputTypeDef(BaseModel): + BackupDescription: BackupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupOutputTypeDef(BaseModel): + BackupDescription: BackupDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchWriteItemInputRequestTypeDef(BaseModel): + RequestItems: Mapping[str, Sequence[WriteRequestUnionTypeDef]] + ReturnConsumedCapacity: Optional[ReturnConsumedCapacityType] = None + ReturnItemCollectionMetrics: Optional[ReturnItemCollectionMetricsType] = None + +class TableAutoScalingDescriptionTypeDef(BaseModel): + TableName: Optional[str] = None + TableStatus: Optional[TableStatusType] = None + Replicas: Optional[List[ReplicaAutoScalingDescriptionTypeDef]] = None + +class DescribeGlobalTableSettingsOutputTypeDef(BaseModel): + GlobalTableName: str + ReplicaSettings: List[ReplicaSettingsDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGlobalTableSettingsOutputTypeDef(BaseModel): + GlobalTableName: str + ReplicaSettings: List[ReplicaSettingsDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableReplicaAutoScalingInputRequestTypeDef(BaseModel): + TableName: str + GlobalSecondaryIndexUpdates: Optional[ Sequence[GlobalSecondaryIndexAutoScalingUpdateTypeDef] ] = None + ProvisionedWriteCapacityAutoScalingUpdate: Optional[AutoScalingSettingsUpdateTypeDef] = None + ReplicaUpdates: Optional[Sequence[ReplicaAutoScalingUpdateTypeDef]] = None + +class UpdateGlobalTableSettingsInputRequestTypeDef(BaseModel): + GlobalTableName: str + GlobalTableBillingMode: Optional[BillingModeType] = None + GlobalTableProvisionedWriteCapacityUnits: Optional[int] = None + GlobalTableProvisionedWriteCapacityAutoScalingSettingsUpdate: Optional[ AutoScalingSettingsUpdateTypeDef ] = None + GlobalTableGlobalSecondaryIndexSettingsUpdate: Optional[ Sequence[GlobalTableGlobalSecondaryIndexSettingsUpdateTypeDef] ] = None + ReplicaSettingsUpdate: Optional[Sequence[ReplicaSettingsUpdateTypeDef]] = None + +class DescribeTableReplicaAutoScalingOutputTypeDef(BaseModel): + TableAutoScalingDescription: TableAutoScalingDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableReplicaAutoScalingOutputTypeDef(BaseModel): + TableAutoScalingDescription: TableAutoScalingDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/dynamodb_constants.py b/aws_resource_validator/pydantic_models/dynamodb_constants.py new file mode 100644 index 00000000..8bd681d1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/dynamodb_constants.py @@ -0,0 +1,524 @@ +from decimal import Decimal +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO, Set +from datetime import datetime +from boto3.dynamodb.conditions import ConditionBase + +ApproximateCreationDateTimePrecisionType = Literal["MICROSECOND", "MILLISECOND"] +AttributeActionType = Literal["ADD", "DELETE", "PUT"] +BackupStatusType = Literal["AVAILABLE", "CREATING", "DELETED"] +BackupTypeFilterType = Literal["ALL", "AWS_BACKUP", "SYSTEM", "USER"] +BackupTypeType = Literal["AWS_BACKUP", "SYSTEM", "USER"] +BatchStatementErrorCodeEnumType = Literal["AccessDenied", + "ConditionalCheckFailed", + "DuplicateItem", + "InternalServerError", + "ItemCollectionSizeLimitExceeded", + "ProvisionedThroughputExceeded", + "RequestLimitExceeded", + "ResourceNotFound", + "ThrottlingError", + "TransactionConflict", + "ValidationError",] +BillingModeType = Literal["PAY_PER_REQUEST", "PROVISIONED"] +ComparisonOperatorType = Literal["BEGINS_WITH", + "BETWEEN", + "CONTAINS", + "EQ", + "GE", + "GT", + "IN", + "LE", + "LT", + "NE", + "NOT_CONTAINS", + "NOT_NULL", + "NULL",] +ConditionalOperatorType = Literal["AND", "OR"] +ContinuousBackupsStatusType = Literal["DISABLED", "ENABLED"] +ContributorInsightsActionType = Literal["DISABLE", "ENABLE"] +ContributorInsightsStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING", "FAILED"] +DestinationStatusType = Literal["ACTIVE", "DISABLED", "DISABLING", "ENABLE_FAILED", "ENABLING", "UPDATING"] +ExportFormatType = Literal["DYNAMODB_JSON", "ION"] +ExportStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +ExportTypeType = Literal["FULL_EXPORT", "INCREMENTAL_EXPORT"] +ExportViewTypeType = Literal["NEW_AND_OLD_IMAGES", "NEW_IMAGE"] +GlobalTableStatusType = Literal["ACTIVE", "CREATING", "DELETING", "UPDATING"] +ImportStatusType = Literal["CANCELLED", "CANCELLING", "COMPLETED", "FAILED", "IN_PROGRESS"] +IndexStatusType = Literal["ACTIVE", "CREATING", "DELETING", "UPDATING"] +InputCompressionTypeType = Literal["GZIP", "NONE", "ZSTD"] +InputFormatType = Literal["CSV", "DYNAMODB_JSON", "ION"] +KeyTypeType = Literal["HASH", "RANGE"] +ListBackupsPaginatorName = Literal["list_backups"] +ListTablesPaginatorName = Literal["list_tables"] +ListTagsOfResourcePaginatorName = Literal["list_tags_of_resource"] +PointInTimeRecoveryStatusType = Literal["DISABLED", "ENABLED"] +ProjectionTypeType = Literal["ALL", "INCLUDE", "KEYS_ONLY"] +QueryPaginatorName = Literal["query"] +ReplicaStatusType = Literal["ACTIVE", + "CREATING", + "CREATION_FAILED", + "DELETING", + "INACCESSIBLE_ENCRYPTION_CREDENTIALS", + "REGION_DISABLED", + "UPDATING",] +ReturnConsumedCapacityType = Literal["INDEXES", "NONE", "TOTAL"] +ReturnItemCollectionMetricsType = Literal["NONE", "SIZE"] +ReturnValueType = Literal["ALL_NEW", "ALL_OLD", "NONE", "UPDATED_NEW", "UPDATED_OLD"] +ReturnValuesOnConditionCheckFailureType = Literal["ALL_OLD", "NONE"] +S3SseAlgorithmType = Literal["AES256", "KMS"] +SSEStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING", "UPDATING"] +SSETypeType = Literal["AES256", "KMS"] +ScalarAttributeTypeType = Literal["B", "N", "S"] +ScanPaginatorName = Literal["scan"] +SelectType = Literal["ALL_ATTRIBUTES", "ALL_PROJECTED_ATTRIBUTES", "COUNT", "SPECIFIC_ATTRIBUTES"] +StreamViewTypeType = Literal["KEYS_ONLY", "NEW_AND_OLD_IMAGES", "NEW_IMAGE", "OLD_IMAGE"] +TableClassType = Literal["STANDARD", "STANDARD_INFREQUENT_ACCESS"] +TableExistsWaiterName = Literal["table_exists"] +TableNotExistsWaiterName = Literal["table_not_exists"] +TableStatusType = Literal["ACTIVE", + "ARCHIVED", + "ARCHIVING", + "CREATING", + "DELETING", + "INACCESSIBLE_ENCRYPTION_CREDENTIALS", + "UPDATING",] +TimeToLiveStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING"] +DynamoDBServiceName = Literal["dynamodb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_backups", "list_tables", "list_tags_of_resource", "query", "scan"] +WaiterName = Literal["table_exists", "table_not_exists"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TableAttributeValueTypeDef = Union[ bytes, bytearray, str, int, Decimal, bool, Set[int]] +ConditionBaseImportTypeDef = Union[str, ConditionBase] +TimestampTypeDef = Union[datetime, str] +UniversalAttributeValueTypeDef = Union[ 'AttributeValueTypeDef', bytes, bytearray, str, int, Decimal, bool, Set[int]] +KeysAndAttributesServiceResourceUnionTypeDef = Union[ 'KeysAndAttributesServiceResourceTypeDef', 'KeysAndAttributesServiceResourceOutputTypeDef' ] +InputFormatOptionsUnionTypeDef = Union['InputFormatOptionsTypeDef', 'InputFormatOptionsOutputTypeDef'] +IncrementalExportSpecificationUnionTypeDef = Union[ 'IncrementalExportSpecificationTypeDef', 'IncrementalExportSpecificationOutputTypeDef' ] +GlobalSecondaryIndexUnionTypeDef = Union[ 'GlobalSecondaryIndexTypeDef', 'GlobalSecondaryIndexOutputTypeDef' ] +KeysAndAttributesUnionTypeDef = Union['KeysAndAttributesTypeDef', 'KeysAndAttributesOutputTypeDef'] +WriteRequestServiceResourceUnionTypeDef = Union[ 'WriteRequestServiceResourceTypeDef', 'WriteRequestServiceResourceOutputTypeDef' ] +TableCreationParametersUnionTypeDef = Union[ 'TableCreationParametersTypeDef', 'TableCreationParametersOutputTypeDef' ] +WriteRequestUnionTypeDef = Union['WriteRequestTypeDef', 'WriteRequestOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/dynamodbstreams_classes.py b/aws_resource_validator/pydantic_models/dynamodbstreams_classes.py new file mode 100644 index 00000000..deb93e98 --- /dev/null +++ b/aws_resource_validator/pydantic_models/dynamodbstreams_classes.py @@ -0,0 +1,121 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.dynamodbstreams_constants import * + +class AttributeValueTypeDef(BaseModel): + S: Optional[str] = None + N: Optional[str] = None + B: Optional[bytes] = None + SS: Optional[List[str]] = None + NS: Optional[List[str]] = None + BS: Optional[List[bytes]] = None + M: Optional[Dict[str, Dict[str, Any]]] = None + L: Optional[List[Dict[str, Any]]] = None + NULL: Optional[bool] = None + BOOL: Optional[bool] = None + +class DescribeStreamInputRequestTypeDef(BaseModel): + StreamArn: str + Limit: Optional[int] = None + ExclusiveStartShardId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetRecordsInputRequestTypeDef(BaseModel): + ShardIterator: str + Limit: Optional[int] = None + +class GetShardIteratorInputRequestTypeDef(BaseModel): + StreamArn: str + ShardId: str + ShardIteratorType: ShardIteratorTypeType + SequenceNumber: Optional[str] = None + +class IdentityTypeDef(BaseModel): + PrincipalId: Optional[str] = None + Type: Optional[str] = None + +class KeySchemaElementTypeDef(BaseModel): + AttributeName: str + KeyType: KeyTypeType + +class ListStreamsInputRequestTypeDef(BaseModel): + TableName: Optional[str] = None + Limit: Optional[int] = None + ExclusiveStartStreamArn: Optional[str] = None + +class StreamTypeDef(BaseModel): + StreamArn: Optional[str] = None + TableName: Optional[str] = None + StreamLabel: Optional[str] = None + +class StreamRecordTypeDef(BaseModel): + ApproximateCreationDateTime: Optional[datetime] = None + Keys: Optional[Dict[str, "AttributeValueTypeDef"]] = None + NewImage: Optional[Dict[str, "AttributeValueTypeDef"]] = None + OldImage: Optional[Dict[str, "AttributeValueTypeDef"]] = None + SequenceNumber: Optional[str] = None + SizeBytes: Optional[int] = None + StreamViewType: Optional[StreamViewTypeType] = None + +class SequenceNumberRangeTypeDef(BaseModel): + StartingSequenceNumber: Optional[str] = None + EndingSequenceNumber: Optional[str] = None + +class GetShardIteratorOutputTypeDef(BaseModel): + ShardIterator: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamsOutputTypeDef(BaseModel): + Streams: List[StreamTypeDef] + LastEvaluatedStreamArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecordTypeDef(BaseModel): + eventID: Optional[str] = None + eventName: Optional[OperationTypeType] = None + eventVersion: Optional[str] = None + eventSource: Optional[str] = None + awsRegion: Optional[str] = None + dynamodb: Optional[StreamRecordTypeDef] = None + userIdentity: Optional[IdentityTypeDef] = None + +class ShardTypeDef(BaseModel): + ShardId: Optional[str] = None + SequenceNumberRange: Optional[SequenceNumberRangeTypeDef] = None + ParentShardId: Optional[str] = None + +class GetRecordsOutputTypeDef(BaseModel): + Records: List[RecordTypeDef] + NextShardIterator: str + ResponseMetadata: ResponseMetadataTypeDef + +class StreamDescriptionTypeDef(BaseModel): + StreamArn: Optional[str] = None + StreamLabel: Optional[str] = None + StreamStatus: Optional[StreamStatusType] = None + StreamViewType: Optional[StreamViewTypeType] = None + CreationRequestDateTime: Optional[datetime] = None + TableName: Optional[str] = None + KeySchema: Optional[List[KeySchemaElementTypeDef]] = None + Shards: Optional[List[ShardTypeDef]] = None + LastEvaluatedShardId: Optional[str] = None + +class DescribeStreamOutputTypeDef(BaseModel): + StreamDescription: StreamDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/dynamodbstreams_constants.py b/aws_resource_validator/pydantic_models/dynamodbstreams_constants.py new file mode 100644 index 00000000..18424ef2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/dynamodbstreams_constants.py @@ -0,0 +1,421 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +KeyTypeType = Literal["HASH", "RANGE"] +OperationTypeType = Literal["INSERT", "MODIFY", "REMOVE"] +ShardIteratorTypeType = Literal["AFTER_SEQUENCE_NUMBER", "AT_SEQUENCE_NUMBER", "LATEST", "TRIM_HORIZON"] +StreamStatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING"] +StreamViewTypeType = Literal["KEYS_ONLY", "NEW_AND_OLD_IMAGES", "NEW_IMAGE", "OLD_IMAGE"] +DynamoDBStreamsServiceName = Literal["dynamodbstreams"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/ebs_classes.py b/aws_resource_validator/pydantic_models/ebs_classes.py new file mode 100644 index 00000000..3d7aa384 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ebs_classes.py @@ -0,0 +1,123 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ebs_constants import * + +class BlockTypeDef(BaseModel): + BlockIndex: Optional[int] = None + BlockToken: Optional[str] = None + +class ChangedBlockTypeDef(BaseModel): + BlockIndex: Optional[int] = None + FirstBlockToken: Optional[str] = None + SecondBlockToken: Optional[str] = None + +class CompleteSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + ChangedBlocksCount: int + Checksum: Optional[str] = None + ChecksumAlgorithm: Optional[Literal["SHA256"]] = None + ChecksumAggregationMethod: Optional[Literal["LINEAR"]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetSnapshotBlockRequestRequestTypeDef(BaseModel): + SnapshotId: str + BlockIndex: int + BlockToken: str + +class ListChangedBlocksRequestRequestTypeDef(BaseModel): + SecondSnapshotId: str + FirstSnapshotId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StartingBlockIndex: Optional[int] = None + +class ListSnapshotBlocksRequestRequestTypeDef(BaseModel): + SnapshotId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StartingBlockIndex: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class PutSnapshotBlockRequestRequestTypeDef(BaseModel): + SnapshotId: str + BlockIndex: int + BlockData: BlobTypeDef + DataLength: int + Checksum: str + ChecksumAlgorithm: Literal["SHA256"] + Progress: Optional[int] = None + +class CompleteSnapshotResponseTypeDef(BaseModel): + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetSnapshotBlockResponseTypeDef(BaseModel): + DataLength: int + BlockData: StreamingBody + Checksum: str + ChecksumAlgorithm: Literal["SHA256"] + ResponseMetadata: ResponseMetadataTypeDef + +class ListChangedBlocksResponseTypeDef(BaseModel): + ChangedBlocks: List[ChangedBlockTypeDef] + ExpiryTime: datetime + VolumeSize: int + BlockSize: int + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSnapshotBlocksResponseTypeDef(BaseModel): + Blocks: List[BlockTypeDef] + ExpiryTime: datetime + VolumeSize: int + BlockSize: int + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSnapshotBlockResponseTypeDef(BaseModel): + Checksum: str + ChecksumAlgorithm: Literal["SHA256"] + ResponseMetadata: ResponseMetadataTypeDef + +class StartSnapshotRequestRequestTypeDef(BaseModel): + VolumeSize: int + ParentSnapshotId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyArn: Optional[str] = None + Timeout: Optional[int] = None + +class StartSnapshotResponseTypeDef(BaseModel): + Description: str + SnapshotId: str + OwnerId: str + Status: StatusType + StartTime: datetime + VolumeSize: int + BlockSize: int + Tags: List[TagTypeDef] + ParentSnapshotId: str + KmsKeyArn: str + SseType: SSETypeType + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ebs_constants.py b/aws_resource_validator/pydantic_models/ebs_constants.py new file mode 100644 index 00000000..3bf9c54f --- /dev/null +++ b/aws_resource_validator/pydantic_models/ebs_constants.py @@ -0,0 +1,421 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChecksumAggregationMethodType = Literal["LINEAR"] +ChecksumAlgorithmType = Literal["SHA256"] +SSETypeType = Literal["none", "sse-ebs", "sse-kms"] +StatusType = Literal["completed", "error", "pending"] +EBSServiceName = Literal["ebs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any]] diff --git a/aws_resource_validator/pydantic_models/ec2_classes.py b/aws_resource_validator/pydantic_models/ec2_classes.py new file mode 100644 index 00000000..308c4771 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ec2_classes.py @@ -0,0 +1,14251 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ec2_constants import * + +class AcceleratorCountRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class AcceleratorCountTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class AcceleratorTotalMemoryMiBRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class AcceleratorTotalMemoryMiBTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class AddressTransferTypeDef(BaseModel): + PublicIp: Optional[str] = None + AllocationId: Optional[str] = None + TransferAccountId: Optional[str] = None + TransferOfferExpirationTimestamp: Optional[datetime] = None + TransferOfferAcceptedTimestamp: Optional[datetime] = None + AddressTransferStatus: Optional[AddressTransferStatusType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TargetConfigurationRequestTypeDef(BaseModel): + OfferingId: str + InstanceCount: Optional[int] = None + +class AcceptTransitGatewayMulticastDomainAssociationsRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class AcceptTransitGatewayPeeringAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class AcceptTransitGatewayVpcAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class AcceptVpcEndpointConnectionsRequestRequestTypeDef(BaseModel): + ServiceId: str + VpcEndpointIds: Sequence[str] + DryRun: Optional[bool] = None + +class AcceptVpcPeeringConnectionRequestRequestTypeDef(BaseModel): + VpcPeeringConnectionId: str + DryRun: Optional[bool] = None + +class AcceptVpcPeeringConnectionRequestVpcPeeringConnectionAcceptTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class AccountAttributeValueTypeDef(BaseModel): + AttributeValue: Optional[str] = None + +class ActiveInstanceTypeDef(BaseModel): + InstanceId: Optional[str] = None + InstanceType: Optional[str] = None + SpotInstanceRequestId: Optional[str] = None + InstanceHealth: Optional[InstanceHealthStatusType] = None + +class AddIpamOperatingRegionTypeDef(BaseModel): + RegionName: Optional[str] = None + +class AddPrefixListEntryTypeDef(BaseModel): + Cidr: str + Description: Optional[str] = None + +class AddedPrincipalTypeDef(BaseModel): + PrincipalType: Optional[PrincipalTypeType] = None + Principal: Optional[str] = None + ServicePermissionId: Optional[str] = None + ServiceId: Optional[str] = None + +class AnalysisComponentTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + +class RuleGroupTypePairTypeDef(BaseModel): + RuleGroupArn: Optional[str] = None + RuleGroupType: Optional[str] = None + +class RuleOptionTypeDef(BaseModel): + Keyword: Optional[str] = None + Settings: Optional[List[str]] = None + +class PtrUpdateStatusTypeDef(BaseModel): + Value: Optional[str] = None + Status: Optional[str] = None + Reason: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class AdvertiseByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + Asn: Optional[str] = None + DryRun: Optional[bool] = None + NetworkBorderGroup: Optional[str] = None + +class AllocateIpamPoolCidrRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Cidr: Optional[str] = None + NetmaskLength: Optional[int] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + PreviewNextCidr: Optional[bool] = None + AllowedCidrs: Optional[Sequence[str]] = None + DisallowedCidrs: Optional[Sequence[str]] = None + +class IpamPoolAllocationTypeDef(BaseModel): + Cidr: Optional[str] = None + IpamPoolAllocationId: Optional[str] = None + Description: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[IpamPoolAllocationResourceTypeType] = None + ResourceRegion: Optional[str] = None + ResourceOwner: Optional[str] = None + +class AlternatePathHintTypeDef(BaseModel): + ComponentId: Optional[str] = None + ComponentArn: Optional[str] = None + +class PortRangeTypeDef(BaseModel): + From: Optional[int] = None + To: Optional[int] = None + +class AnalysisLoadBalancerListenerTypeDef(BaseModel): + LoadBalancerPort: Optional[int] = None + InstancePort: Optional[int] = None + +class AnalysisRouteTableRouteTypeDef(BaseModel): + DestinationCidr: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + NatGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + Origin: Optional[str] = None + TransitGatewayId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + State: Optional[str] = None + CarrierGatewayId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + LocalGatewayId: Optional[str] = None + +class ApplySecurityGroupsToClientVpnTargetNetworkRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + VpcId: str + SecurityGroupIds: Sequence[str] + DryRun: Optional[bool] = None + +class AsnAssociationTypeDef(BaseModel): + Asn: Optional[str] = None + Cidr: Optional[str] = None + StatusMessage: Optional[str] = None + State: Optional[AsnAssociationStateType] = None + +class AsnAuthorizationContextTypeDef(BaseModel): + Message: str + Signature: str + +class AssignIpv6AddressesRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[str]] = None + Ipv6PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[Sequence[str]] = None + +class AssignPrivateIpAddressesRequestNetworkInterfaceAssignPrivateIpAddressesTypeDef(BaseModel): + AllowReassignment: Optional[bool] = None + PrivateIpAddresses: Optional[Sequence[str]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[str]] = None + Ipv4PrefixCount: Optional[int] = None + +class AssignPrivateIpAddressesRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + AllowReassignment: Optional[bool] = None + PrivateIpAddresses: Optional[Sequence[str]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[str]] = None + Ipv4PrefixCount: Optional[int] = None + +class AssignedPrivateIpAddressTypeDef(BaseModel): + PrivateIpAddress: Optional[str] = None + +class Ipv4PrefixSpecificationTypeDef(BaseModel): + Ipv4Prefix: Optional[str] = None + +class AssignPrivateNatGatewayAddressRequestRequestTypeDef(BaseModel): + NatGatewayId: str + PrivateIpAddresses: Optional[Sequence[str]] = None + PrivateIpAddressCount: Optional[int] = None + DryRun: Optional[bool] = None + +class NatGatewayAddressTypeDef(BaseModel): + AllocationId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + PrivateIp: Optional[str] = None + PublicIp: Optional[str] = None + AssociationId: Optional[str] = None + IsPrimary: Optional[bool] = None + FailureMessage: Optional[str] = None + Status: Optional[NatGatewayAddressStatusType] = None + +class AssociateAddressRequestClassicAddressAssociateTypeDef(BaseModel): + AllocationId: Optional[str] = None + InstanceId: Optional[str] = None + AllowReassociation: Optional[bool] = None + DryRun: Optional[bool] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class AssociateAddressRequestRequestTypeDef(BaseModel): + AllocationId: Optional[str] = None + InstanceId: Optional[str] = None + PublicIp: Optional[str] = None + AllowReassociation: Optional[bool] = None + DryRun: Optional[bool] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class AssociateAddressRequestVpcAddressAssociateTypeDef(BaseModel): + InstanceId: Optional[str] = None + PublicIp: Optional[str] = None + AllowReassociation: Optional[bool] = None + DryRun: Optional[bool] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class AssociateClientVpnTargetNetworkRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + SubnetId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class AssociationStatusTypeDef(BaseModel): + Code: Optional[AssociationStatusCodeType] = None + Message: Optional[str] = None + +class AssociateDhcpOptionsRequestDhcpOptionsAssociateWithVpcTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class AssociateDhcpOptionsRequestRequestTypeDef(BaseModel): + DhcpOptionsId: str + VpcId: str + DryRun: Optional[bool] = None + +class AssociateDhcpOptionsRequestVpcAssociateDhcpOptionsTypeDef(BaseModel): + DhcpOptionsId: str + DryRun: Optional[bool] = None + +class AssociateEnclaveCertificateIamRoleRequestRequestTypeDef(BaseModel): + CertificateArn: str + RoleArn: str + DryRun: Optional[bool] = None + +class IamInstanceProfileSpecificationTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class AssociateIpamByoasnRequestRequestTypeDef(BaseModel): + Asn: str + Cidr: str + DryRun: Optional[bool] = None + +class AssociateNatGatewayAddressRequestRequestTypeDef(BaseModel): + NatGatewayId: str + AllocationIds: Sequence[str] + PrivateIpAddresses: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class AssociateRouteTableRequestRequestTypeDef(BaseModel): + RouteTableId: str + DryRun: Optional[bool] = None + SubnetId: Optional[str] = None + GatewayId: Optional[str] = None + +class AssociateRouteTableRequestRouteTableAssociateWithSubnetTypeDef(BaseModel): + DryRun: Optional[bool] = None + SubnetId: Optional[str] = None + GatewayId: Optional[str] = None + +class RouteTableAssociationStateTypeDef(BaseModel): + State: Optional[RouteTableAssociationStateCodeType] = None + StatusMessage: Optional[str] = None + +class AssociateSubnetCidrBlockRequestRequestTypeDef(BaseModel): + SubnetId: str + Ipv6CidrBlock: Optional[str] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + +class AssociateTransitGatewayMulticastDomainRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + TransitGatewayAttachmentId: str + SubnetIds: Sequence[str] + DryRun: Optional[bool] = None + +class AssociateTransitGatewayPolicyTableRequestRequestTypeDef(BaseModel): + TransitGatewayPolicyTableId: str + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class TransitGatewayPolicyTableAssociationTypeDef(BaseModel): + TransitGatewayPolicyTableId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + State: Optional[TransitGatewayAssociationStateType] = None + +class AssociateTransitGatewayRouteTableRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class TransitGatewayAssociationTypeDef(BaseModel): + TransitGatewayRouteTableId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + State: Optional[TransitGatewayAssociationStateType] = None + +class AssociateTrunkInterfaceRequestRequestTypeDef(BaseModel): + BranchInterfaceId: str + TrunkInterfaceId: str + VlanId: Optional[int] = None + GreKey: Optional[int] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class AssociateVpcCidrBlockRequestRequestTypeDef(BaseModel): + VpcId: str + AmazonProvidedIpv6CidrBlock: Optional[bool] = None + CidrBlock: Optional[str] = None + Ipv6CidrBlockNetworkBorderGroup: Optional[str] = None + Ipv6Pool: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + Ipv4IpamPoolId: Optional[str] = None + Ipv4NetmaskLength: Optional[int] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + +class AssociatedRoleTypeDef(BaseModel): + AssociatedRoleArn: Optional[str] = None + CertificateS3BucketName: Optional[str] = None + CertificateS3ObjectKey: Optional[str] = None + EncryptionKmsKeyId: Optional[str] = None + +class AssociatedTargetNetworkTypeDef(BaseModel): + NetworkId: Optional[str] = None + NetworkType: Optional[Literal["vpc"]] = None + +class AttachClassicLinkVpcRequestInstanceAttachClassicLinkVpcTypeDef(BaseModel): + Groups: Sequence[str] + VpcId: str + DryRun: Optional[bool] = None + +class AttachClassicLinkVpcRequestRequestTypeDef(BaseModel): + Groups: Sequence[str] + InstanceId: str + VpcId: str + DryRun: Optional[bool] = None + +class AttachClassicLinkVpcRequestVpcAttachClassicLinkInstanceTypeDef(BaseModel): + Groups: Sequence[str] + InstanceId: str + DryRun: Optional[bool] = None + +class AttachInternetGatewayRequestInternetGatewayAttachToVpcTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class AttachInternetGatewayRequestRequestTypeDef(BaseModel): + InternetGatewayId: str + VpcId: str + DryRun: Optional[bool] = None + +class AttachInternetGatewayRequestVpcAttachInternetGatewayTypeDef(BaseModel): + InternetGatewayId: str + DryRun: Optional[bool] = None + +class AttachVerifiedAccessTrustProviderRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceId: str + VerifiedAccessTrustProviderId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class AttachVolumeRequestInstanceAttachVolumeTypeDef(BaseModel): + Device: str + VolumeId: str + DryRun: Optional[bool] = None + +class AttachVolumeRequestRequestTypeDef(BaseModel): + Device: str + InstanceId: str + VolumeId: str + DryRun: Optional[bool] = None + +class AttachVolumeRequestVolumeAttachToInstanceTypeDef(BaseModel): + Device: str + InstanceId: str + DryRun: Optional[bool] = None + +class AttachVpnGatewayRequestRequestTypeDef(BaseModel): + VpcId: str + VpnGatewayId: str + DryRun: Optional[bool] = None + +class VpcAttachmentTypeDef(BaseModel): + State: Optional[AttachmentStatusType] = None + VpcId: Optional[str] = None + +class AttachmentEnaSrdUdpSpecificationTypeDef(BaseModel): + EnaSrdUdpEnabled: Optional[bool] = None + +class AttributeBooleanValueTypeDef(BaseModel): + Value: Optional[bool] = None + +class AttributeValueTypeDef(BaseModel): + Value: Optional[str] = None + +class ClientVpnAuthorizationRuleStatusTypeDef(BaseModel): + Code: Optional[ClientVpnAuthorizationRuleStatusCodeType] = None + Message: Optional[str] = None + +class AuthorizeClientVpnIngressRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + TargetNetworkCidr: str + AccessGroupId: Optional[str] = None + AuthorizeAllGroups: Optional[bool] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class AvailabilityZoneMessageTypeDef(BaseModel): + Message: Optional[str] = None + +class InstanceCapacityTypeDef(BaseModel): + AvailableCapacity: Optional[int] = None + InstanceType: Optional[str] = None + TotalCapacity: Optional[int] = None + +class BaselineEbsBandwidthMbpsRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class BaselineEbsBandwidthMbpsTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class EbsBlockDeviceTypeDef(BaseModel): + DeleteOnTermination: Optional[bool] = None + Iops: Optional[int] = None + SnapshotId: Optional[str] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[VolumeTypeType] = None + KmsKeyId: Optional[str] = None + Throughput: Optional[int] = None + OutpostArn: Optional[str] = None + Encrypted: Optional[bool] = None + +class BundleTaskErrorTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class ByoasnTypeDef(BaseModel): + Asn: Optional[str] = None + IpamId: Optional[str] = None + StatusMessage: Optional[str] = None + State: Optional[AsnStateType] = None + +class CancelBundleTaskRequestRequestTypeDef(BaseModel): + BundleId: str + DryRun: Optional[bool] = None + +class CancelCapacityReservationFleetErrorTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class CancelCapacityReservationFleetsRequestRequestTypeDef(BaseModel): + CapacityReservationFleetIds: Sequence[str] + DryRun: Optional[bool] = None + +class CapacityReservationFleetCancellationStateTypeDef(BaseModel): + CurrentFleetState: Optional[CapacityReservationFleetStateType] = None + PreviousFleetState: Optional[CapacityReservationFleetStateType] = None + CapacityReservationFleetId: Optional[str] = None + +class CancelCapacityReservationRequestRequestTypeDef(BaseModel): + CapacityReservationId: str + DryRun: Optional[bool] = None + +class CancelConversionRequestRequestTypeDef(BaseModel): + ConversionTaskId: str + DryRun: Optional[bool] = None + ReasonMessage: Optional[str] = None + +class CancelExportTaskRequestRequestTypeDef(BaseModel): + ExportTaskId: str + +class CancelImageLaunchPermissionRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class CancelImportTaskRequestRequestTypeDef(BaseModel): + CancelReason: Optional[str] = None + DryRun: Optional[bool] = None + ImportTaskId: Optional[str] = None + +class CancelReservedInstancesListingRequestRequestTypeDef(BaseModel): + ReservedInstancesListingId: str + +class CancelSpotFleetRequestsErrorTypeDef(BaseModel): + Code: Optional[CancelBatchErrorCodeType] = None + Message: Optional[str] = None + +class CancelSpotFleetRequestsRequestRequestTypeDef(BaseModel): + SpotFleetRequestIds: Sequence[str] + TerminateInstances: bool + DryRun: Optional[bool] = None + +class CancelSpotFleetRequestsSuccessItemTypeDef(BaseModel): + CurrentSpotFleetRequestState: Optional[BatchStateType] = None + PreviousSpotFleetRequestState: Optional[BatchStateType] = None + SpotFleetRequestId: Optional[str] = None + +class CancelSpotInstanceRequestsRequestRequestTypeDef(BaseModel): + SpotInstanceRequestIds: Sequence[str] + DryRun: Optional[bool] = None + +class CancelledSpotInstanceRequestTypeDef(BaseModel): + SpotInstanceRequestId: Optional[str] = None + State: Optional[CancelSpotInstanceRequestStateType] = None + +class CapacityAllocationTypeDef(BaseModel): + AllocationType: Optional[Literal["used"]] = None + Count: Optional[int] = None + +class CapacityBlockOfferingTypeDef(BaseModel): + CapacityBlockOfferingId: Optional[str] = None + InstanceType: Optional[str] = None + AvailabilityZone: Optional[str] = None + InstanceCount: Optional[int] = None + StartDate: Optional[datetime] = None + EndDate: Optional[datetime] = None + CapacityBlockDurationHours: Optional[int] = None + UpfrontFee: Optional[str] = None + CurrencyCode: Optional[str] = None + Tenancy: Optional[CapacityReservationTenancyType] = None + +class FleetCapacityReservationTypeDef(BaseModel): + CapacityReservationId: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + InstancePlatform: Optional[CapacityReservationInstancePlatformType] = None + AvailabilityZone: Optional[str] = None + TotalInstanceCount: Optional[int] = None + FulfilledCapacity: Optional[float] = None + EbsOptimized: Optional[bool] = None + CreateDate: Optional[datetime] = None + Weight: Optional[float] = None + Priority: Optional[int] = None + +class CapacityReservationGroupTypeDef(BaseModel): + GroupArn: Optional[str] = None + OwnerId: Optional[str] = None + +class CapacityReservationOptionsRequestTypeDef(BaseModel): + UsageStrategy: Optional[Literal["use-capacity-reservations-first"]] = None + +class CapacityReservationOptionsTypeDef(BaseModel): + UsageStrategy: Optional[Literal["use-capacity-reservations-first"]] = None + +class CapacityReservationTargetResponseTypeDef(BaseModel): + CapacityReservationId: Optional[str] = None + CapacityReservationResourceGroupArn: Optional[str] = None + +class CapacityReservationTargetTypeDef(BaseModel): + CapacityReservationId: Optional[str] = None + CapacityReservationResourceGroupArn: Optional[str] = None + +class CertificateAuthenticationRequestTypeDef(BaseModel): + ClientRootCertificateChainArn: Optional[str] = None + +class CertificateAuthenticationTypeDef(BaseModel): + ClientRootCertificateChain: Optional[str] = None + +class CidrAuthorizationContextTypeDef(BaseModel): + Message: str + Signature: str + +class CidrBlockTypeDef(BaseModel): + CidrBlock: Optional[str] = None + +class ClassicLinkDnsSupportTypeDef(BaseModel): + ClassicLinkDnsSupported: Optional[bool] = None + VpcId: Optional[str] = None + +class GroupIdentifierTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + +class ClassicLoadBalancerTypeDef(BaseModel): + Name: Optional[str] = None + +class ClientCertificateRevocationListStatusTypeDef(BaseModel): + Code: Optional[ClientCertificateRevocationListStatusCodeType] = None + Message: Optional[str] = None + +class ClientConnectOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + LambdaFunctionArn: Optional[str] = None + +class ClientVpnEndpointAttributeStatusTypeDef(BaseModel): + Code: Optional[ClientVpnEndpointAttributeStatusCodeType] = None + Message: Optional[str] = None + +class ClientLoginBannerOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + BannerText: Optional[str] = None + +class ClientLoginBannerResponseOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + BannerText: Optional[str] = None + +class DirectoryServiceAuthenticationRequestTypeDef(BaseModel): + DirectoryId: Optional[str] = None + +class FederatedAuthenticationRequestTypeDef(BaseModel): + SAMLProviderArn: Optional[str] = None + SelfServiceSAMLProviderArn: Optional[str] = None + +class DirectoryServiceAuthenticationTypeDef(BaseModel): + DirectoryId: Optional[str] = None + +class FederatedAuthenticationTypeDef(BaseModel): + SamlProviderArn: Optional[str] = None + SelfServiceSamlProviderArn: Optional[str] = None + +class ClientVpnConnectionStatusTypeDef(BaseModel): + Code: Optional[ClientVpnConnectionStatusCodeType] = None + Message: Optional[str] = None + +class ClientVpnEndpointStatusTypeDef(BaseModel): + Code: Optional[ClientVpnEndpointStatusCodeType] = None + Message: Optional[str] = None + +class ConnectionLogResponseOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + CloudwatchLogGroup: Optional[str] = None + CloudwatchLogStream: Optional[str] = None + +class ClientVpnRouteStatusTypeDef(BaseModel): + Code: Optional[ClientVpnRouteStatusCodeType] = None + Message: Optional[str] = None + +class CloudWatchLogOptionsSpecificationTypeDef(BaseModel): + LogEnabled: Optional[bool] = None + LogGroupArn: Optional[str] = None + LogOutputFormat: Optional[str] = None + +class CloudWatchLogOptionsTypeDef(BaseModel): + LogEnabled: Optional[bool] = None + LogGroupArn: Optional[str] = None + LogOutputFormat: Optional[str] = None + +class CoipAddressUsageTypeDef(BaseModel): + AllocationId: Optional[str] = None + AwsAccountId: Optional[str] = None + AwsService: Optional[str] = None + CoIp: Optional[str] = None + +class CoipCidrTypeDef(BaseModel): + Cidr: Optional[str] = None + CoipPoolId: Optional[str] = None + LocalGatewayRouteTableId: Optional[str] = None + +class ConfirmProductInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + ProductCode: str + DryRun: Optional[bool] = None + +class ConnectionLogOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + CloudwatchLogGroup: Optional[str] = None + CloudwatchLogStream: Optional[str] = None + +class ConnectionNotificationTypeDef(BaseModel): + ConnectionNotificationId: Optional[str] = None + ServiceId: Optional[str] = None + VpcEndpointId: Optional[str] = None + ConnectionNotificationType: Optional[Literal["Topic"]] = None + ConnectionNotificationArn: Optional[str] = None + ConnectionEvents: Optional[List[str]] = None + ConnectionNotificationState: Optional[ConnectionNotificationStateType] = None + +class ConnectionTrackingConfigurationTypeDef(BaseModel): + TcpEstablishedTimeout: Optional[int] = None + UdpStreamTimeout: Optional[int] = None + UdpTimeout: Optional[int] = None + +class ConnectionTrackingSpecificationRequestTypeDef(BaseModel): + TcpEstablishedTimeout: Optional[int] = None + UdpStreamTimeout: Optional[int] = None + UdpTimeout: Optional[int] = None + +class ConnectionTrackingSpecificationResponseTypeDef(BaseModel): + TcpEstablishedTimeout: Optional[int] = None + UdpStreamTimeout: Optional[int] = None + UdpTimeout: Optional[int] = None + +class ConnectionTrackingSpecificationTypeDef(BaseModel): + TcpEstablishedTimeout: Optional[int] = None + UdpTimeout: Optional[int] = None + UdpStreamTimeout: Optional[int] = None + +class CopyFpgaImageRequestRequestTypeDef(BaseModel): + SourceFpgaImageId: str + SourceRegion: str + DryRun: Optional[bool] = None + Description: Optional[str] = None + Name: Optional[str] = None + ClientToken: Optional[str] = None + +class CpuOptionsRequestTypeDef(BaseModel): + CoreCount: Optional[int] = None + ThreadsPerCore: Optional[int] = None + AmdSevSnp: Optional[AmdSevSnpSpecificationType] = None + +class CpuOptionsTypeDef(BaseModel): + CoreCount: Optional[int] = None + ThreadsPerCore: Optional[int] = None + AmdSevSnp: Optional[AmdSevSnpSpecificationType] = None + +class ReservationFleetInstanceSpecificationTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + InstancePlatform: Optional[CapacityReservationInstancePlatformType] = None + Weight: Optional[float] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + EbsOptimized: Optional[bool] = None + Priority: Optional[int] = None + +class CreateClientVpnRouteRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + DestinationCidrBlock: str + TargetVpcSubnetId: str + Description: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class CreateCoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + CoipPoolId: str + DryRun: Optional[bool] = None + +class CreateDefaultSubnetRequestRequestTypeDef(BaseModel): + AvailabilityZone: str + DryRun: Optional[bool] = None + Ipv6Native: Optional[bool] = None + +class CreateDefaultVpcRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class NewDhcpConfigurationTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class TargetCapacitySpecificationRequestTypeDef(BaseModel): + TotalTargetCapacity: int + OnDemandTargetCapacity: Optional[int] = None + SpotTargetCapacity: Optional[int] = None + DefaultTargetCapacityType: Optional[DefaultTargetCapacityTypeType] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + +class DestinationOptionsRequestTypeDef(BaseModel): + FileFormat: Optional[DestinationFileFormatType] = None + HiveCompatiblePartitions: Optional[bool] = None + PerHourPartition: Optional[bool] = None + +class StorageLocationTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + +class InstanceEventWindowTimeRangeRequestTypeDef(BaseModel): + StartWeekDay: Optional[WeekDayType] = None + StartHour: Optional[int] = None + EndWeekDay: Optional[WeekDayType] = None + EndHour: Optional[int] = None + +class ExportToS3TaskSpecificationTypeDef(BaseModel): + ContainerFormat: Optional[Literal["ova"]] = None + DiskImageFormat: Optional[DiskImageFormatType] = None + S3Bucket: Optional[str] = None + S3Prefix: Optional[str] = None + +class IpamPoolSourceResourceRequestTypeDef(BaseModel): + ResourceId: Optional[str] = None + ResourceType: Optional[Literal["vpc"]] = None + ResourceRegion: Optional[str] = None + ResourceOwner: Optional[str] = None + +class RequestIpamResourceTagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class CreateLocalGatewayRouteRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + DestinationCidrBlock: Optional[str] = None + LocalGatewayVirtualInterfaceGroupId: Optional[str] = None + DryRun: Optional[bool] = None + NetworkInterfaceId: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + +class LocalGatewayRouteTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + LocalGatewayVirtualInterfaceGroupId: Optional[str] = None + Type: Optional[LocalGatewayRouteTypeType] = None + State: Optional[LocalGatewayRouteStateType] = None + LocalGatewayRouteTableId: Optional[str] = None + LocalGatewayRouteTableArn: Optional[str] = None + OwnerId: Optional[str] = None + SubnetId: Optional[str] = None + CoipPoolId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + +class IcmpTypeCodeTypeDef(BaseModel): + Code: Optional[int] = None + Type: Optional[int] = None + +class CreateNetworkInterfacePermissionRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + Permission: InterfacePermissionTypeType + AwsAccountId: Optional[str] = None + AwsService: Optional[str] = None + DryRun: Optional[bool] = None + +class InstanceIpv6AddressTypeDef(BaseModel): + Ipv6Address: Optional[str] = None + IsPrimaryIpv6: Optional[bool] = None + +class Ipv4PrefixSpecificationRequestTypeDef(BaseModel): + Ipv4Prefix: Optional[str] = None + +class Ipv6PrefixSpecificationRequestTypeDef(BaseModel): + Ipv6Prefix: Optional[str] = None + +class PrivateIpAddressSpecificationTypeDef(BaseModel): + Primary: Optional[bool] = None + PrivateIpAddress: Optional[str] = None + +class PriceScheduleSpecificationTypeDef(BaseModel): + CurrencyCode: Optional[Literal["USD"]] = None + Price: Optional[float] = None + Term: Optional[int] = None + +class CreateRouteRequestRequestTypeDef(BaseModel): + RouteTableId: str + DestinationCidrBlock: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DryRun: Optional[bool] = None + VpcEndpointId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + NatGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + LocalGatewayId: Optional[str] = None + CarrierGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + +class CreateRouteRequestRouteTableCreateRouteTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DryRun: Optional[bool] = None + VpcEndpointId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + NatGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + LocalGatewayId: Optional[str] = None + CarrierGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + +class InstanceSpecificationTypeDef(BaseModel): + InstanceId: str + ExcludeBootVolume: Optional[bool] = None + ExcludeDataVolumeIds: Optional[Sequence[str]] = None + +class CreateSpotDatafeedSubscriptionRequestRequestTypeDef(BaseModel): + Bucket: str + DryRun: Optional[bool] = None + Prefix: Optional[str] = None + +class S3ObjectTagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class TrafficMirrorPortRangeRequestTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class TransitGatewayConnectRequestBgpOptionsTypeDef(BaseModel): + PeerAsn: Optional[int] = None + +class CreateTransitGatewayConnectRequestOptionsTypeDef(BaseModel): + Protocol: Literal["gre"] + +class CreateTransitGatewayMulticastDomainRequestOptionsTypeDef(BaseModel): + Igmpv2Support: Optional[Igmpv2SupportValueType] = None + StaticSourcesSupport: Optional[StaticSourcesSupportValueType] = None + AutoAcceptSharedAssociations: Optional[AutoAcceptSharedAssociationsValueType] = None + +class CreateTransitGatewayPeeringAttachmentRequestOptionsTypeDef(BaseModel): + DynamicRouting: Optional[DynamicRoutingValueType] = None + +class CreateTransitGatewayPrefixListReferenceRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + PrefixListId: str + TransitGatewayAttachmentId: Optional[str] = None + Blackhole: Optional[bool] = None + DryRun: Optional[bool] = None + +class TransitGatewayRequestOptionsTypeDef(BaseModel): + AmazonSideAsn: Optional[int] = None + AutoAcceptSharedAttachments: Optional[AutoAcceptSharedAttachmentsValueType] = None + DefaultRouteTableAssociation: Optional[DefaultRouteTableAssociationValueType] = None + DefaultRouteTablePropagation: Optional[DefaultRouteTablePropagationValueType] = None + VpnEcmpSupport: Optional[VpnEcmpSupportValueType] = None + DnsSupport: Optional[DnsSupportValueType] = None + SecurityGroupReferencingSupport: Optional[SecurityGroupReferencingSupportValueType] = None + MulticastSupport: Optional[MulticastSupportValueType] = None + TransitGatewayCidrBlocks: Optional[Sequence[str]] = None + +class CreateTransitGatewayRouteRequestRequestTypeDef(BaseModel): + DestinationCidrBlock: str + TransitGatewayRouteTableId: str + TransitGatewayAttachmentId: Optional[str] = None + Blackhole: Optional[bool] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayVpcAttachmentRequestOptionsTypeDef(BaseModel): + DnsSupport: Optional[DnsSupportValueType] = None + SecurityGroupReferencingSupport: Optional[SecurityGroupReferencingSupportValueType] = None + Ipv6Support: Optional[Ipv6SupportValueType] = None + ApplianceModeSupport: Optional[ApplianceModeSupportValueType] = None + +class CreateVerifiedAccessEndpointEniOptionsTypeDef(BaseModel): + NetworkInterfaceId: Optional[str] = None + Protocol: Optional[VerifiedAccessEndpointProtocolType] = None + Port: Optional[int] = None + +class CreateVerifiedAccessEndpointLoadBalancerOptionsTypeDef(BaseModel): + Protocol: Optional[VerifiedAccessEndpointProtocolType] = None + Port: Optional[int] = None + LoadBalancerArn: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + +class VerifiedAccessSseSpecificationRequestTypeDef(BaseModel): + CustomerManagedKeyEnabled: Optional[bool] = None + KmsKeyArn: Optional[str] = None + +class CreateVerifiedAccessTrustProviderDeviceOptionsTypeDef(BaseModel): + TenantId: Optional[str] = None + PublicSigningKeyUrl: Optional[str] = None + +class CreateVerifiedAccessTrustProviderOidcOptionsTypeDef(BaseModel): + Issuer: Optional[str] = None + AuthorizationEndpoint: Optional[str] = None + TokenEndpoint: Optional[str] = None + UserInfoEndpoint: Optional[str] = None + ClientId: Optional[str] = None + ClientSecret: Optional[str] = None + Scope: Optional[str] = None + +class CreateVolumePermissionTypeDef(BaseModel): + Group: Optional[Literal["all"]] = None + UserId: Optional[str] = None + +class CreateVpcEndpointConnectionNotificationRequestRequestTypeDef(BaseModel): + ConnectionNotificationArn: str + ConnectionEvents: Sequence[str] + DryRun: Optional[bool] = None + ServiceId: Optional[str] = None + VpcEndpointId: Optional[str] = None + ClientToken: Optional[str] = None + +class DnsOptionsSpecificationTypeDef(BaseModel): + DnsRecordIpType: Optional[DnsRecordIpTypeType] = None + PrivateDnsOnlyForInboundResolverEndpoint: Optional[bool] = None + +class SubnetConfigurationTypeDef(BaseModel): + SubnetId: Optional[str] = None + Ipv4: Optional[str] = None + Ipv6: Optional[str] = None + +class CreateVpnConnectionRouteRequestRequestTypeDef(BaseModel): + DestinationCidrBlock: str + VpnConnectionId: str + +class CreditSpecificationRequestTypeDef(BaseModel): + CpuCredits: str + +class CreditSpecificationTypeDef(BaseModel): + CpuCredits: Optional[str] = None + +class DataQueryTypeDef(BaseModel): + Id: Optional[str] = None + Source: Optional[str] = None + Destination: Optional[str] = None + Metric: Optional[Literal["aggregate-latency"]] = None + Statistic: Optional[Literal["p50"]] = None + Period: Optional[PeriodTypeType] = None + +class MetricPointTypeDef(BaseModel): + StartDate: Optional[datetime] = None + EndDate: Optional[datetime] = None + Value: Optional[float] = None + Status: Optional[str] = None + +class DeleteCarrierGatewayRequestRequestTypeDef(BaseModel): + CarrierGatewayId: str + DryRun: Optional[bool] = None + +class DeleteClientVpnEndpointRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + DryRun: Optional[bool] = None + +class DeleteClientVpnRouteRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + DestinationCidrBlock: str + TargetVpcSubnetId: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteCoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + CoipPoolId: str + DryRun: Optional[bool] = None + +class DeleteCoipPoolRequestRequestTypeDef(BaseModel): + CoipPoolId: str + DryRun: Optional[bool] = None + +class DeleteCustomerGatewayRequestRequestTypeDef(BaseModel): + CustomerGatewayId: str + DryRun: Optional[bool] = None + +class DeleteDhcpOptionsRequestDhcpOptionsDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteDhcpOptionsRequestRequestTypeDef(BaseModel): + DhcpOptionsId: str + DryRun: Optional[bool] = None + +class DeleteEgressOnlyInternetGatewayRequestRequestTypeDef(BaseModel): + EgressOnlyInternetGatewayId: str + DryRun: Optional[bool] = None + +class DeleteFleetErrorTypeDef(BaseModel): + Code: Optional[DeleteFleetErrorCodeType] = None + Message: Optional[str] = None + +class DeleteFleetSuccessItemTypeDef(BaseModel): + CurrentFleetState: Optional[FleetStateCodeType] = None + PreviousFleetState: Optional[FleetStateCodeType] = None + FleetId: Optional[str] = None + +class DeleteFleetsRequestRequestTypeDef(BaseModel): + FleetIds: Sequence[str] + TerminateInstances: bool + DryRun: Optional[bool] = None + +class DeleteFlowLogsRequestRequestTypeDef(BaseModel): + FlowLogIds: Sequence[str] + DryRun: Optional[bool] = None + +class DeleteFpgaImageRequestRequestTypeDef(BaseModel): + FpgaImageId: str + DryRun: Optional[bool] = None + +class DeleteInstanceConnectEndpointRequestRequestTypeDef(BaseModel): + InstanceConnectEndpointId: str + DryRun: Optional[bool] = None + +class DeleteInstanceEventWindowRequestRequestTypeDef(BaseModel): + InstanceEventWindowId: str + DryRun: Optional[bool] = None + ForceDelete: Optional[bool] = None + +class InstanceEventWindowStateChangeTypeDef(BaseModel): + InstanceEventWindowId: Optional[str] = None + State: Optional[InstanceEventWindowStateType] = None + +class DeleteInternetGatewayRequestInternetGatewayDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteInternetGatewayRequestRequestTypeDef(BaseModel): + InternetGatewayId: str + DryRun: Optional[bool] = None + +class DeleteIpamPoolRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Cascade: Optional[bool] = None + +class DeleteIpamRequestRequestTypeDef(BaseModel): + IpamId: str + DryRun: Optional[bool] = None + Cascade: Optional[bool] = None + +class DeleteIpamResourceDiscoveryRequestRequestTypeDef(BaseModel): + IpamResourceDiscoveryId: str + DryRun: Optional[bool] = None + +class DeleteIpamScopeRequestRequestTypeDef(BaseModel): + IpamScopeId: str + DryRun: Optional[bool] = None + +class DeleteKeyPairRequestKeyPairDeleteTypeDef(BaseModel): + KeyPairId: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteKeyPairRequestKeyPairInfoDeleteTypeDef(BaseModel): + KeyPairId: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteKeyPairRequestRequestTypeDef(BaseModel): + KeyName: Optional[str] = None + KeyPairId: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteLaunchTemplateRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + +class DeleteLaunchTemplateVersionsRequestRequestTypeDef(BaseModel): + Versions: Sequence[str] + DryRun: Optional[bool] = None + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + +class ResponseErrorTypeDef(BaseModel): + Code: Optional[LaunchTemplateErrorCodeType] = None + Message: Optional[str] = None + +class DeleteLaunchTemplateVersionsResponseSuccessItemTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + VersionNumber: Optional[int] = None + +class DeleteLocalGatewayRouteRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + DestinationCidrBlock: Optional[str] = None + DryRun: Optional[bool] = None + DestinationPrefixListId: Optional[str] = None + +class DeleteLocalGatewayRouteTableRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + DryRun: Optional[bool] = None + +class DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociationId: str + DryRun: Optional[bool] = None + +class DeleteLocalGatewayRouteTableVpcAssociationRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociationId: str + DryRun: Optional[bool] = None + +class DeleteManagedPrefixListRequestRequestTypeDef(BaseModel): + PrefixListId: str + DryRun: Optional[bool] = None + +class DeleteNatGatewayRequestRequestTypeDef(BaseModel): + NatGatewayId: str + DryRun: Optional[bool] = None + +class DeleteNetworkAclEntryRequestNetworkAclDeleteEntryTypeDef(BaseModel): + Egress: bool + RuleNumber: int + DryRun: Optional[bool] = None + +class DeleteNetworkAclEntryRequestRequestTypeDef(BaseModel): + Egress: bool + NetworkAclId: str + RuleNumber: int + DryRun: Optional[bool] = None + +class DeleteNetworkAclRequestNetworkAclDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteNetworkAclRequestRequestTypeDef(BaseModel): + NetworkAclId: str + DryRun: Optional[bool] = None + +class DeleteNetworkInsightsAccessScopeAnalysisRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: str + DryRun: Optional[bool] = None + +class DeleteNetworkInsightsAccessScopeRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeId: str + DryRun: Optional[bool] = None + +class DeleteNetworkInsightsAnalysisRequestRequestTypeDef(BaseModel): + NetworkInsightsAnalysisId: str + DryRun: Optional[bool] = None + +class DeleteNetworkInsightsPathRequestRequestTypeDef(BaseModel): + NetworkInsightsPathId: str + DryRun: Optional[bool] = None + +class DeleteNetworkInterfacePermissionRequestRequestTypeDef(BaseModel): + NetworkInterfacePermissionId: str + Force: Optional[bool] = None + DryRun: Optional[bool] = None + +class DeleteNetworkInterfaceRequestNetworkInterfaceDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteNetworkInterfaceRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + DryRun: Optional[bool] = None + +class DeletePlacementGroupRequestPlacementGroupDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeletePlacementGroupRequestRequestTypeDef(BaseModel): + GroupName: str + DryRun: Optional[bool] = None + +class DeletePublicIpv4PoolRequestRequestTypeDef(BaseModel): + PoolId: str + DryRun: Optional[bool] = None + NetworkBorderGroup: Optional[str] = None + +class DeleteQueuedReservedInstancesErrorTypeDef(BaseModel): + Code: Optional[DeleteQueuedReservedInstancesErrorCodeType] = None + Message: Optional[str] = None + +class DeleteQueuedReservedInstancesRequestRequestTypeDef(BaseModel): + ReservedInstancesIds: Sequence[str] + DryRun: Optional[bool] = None + +class SuccessfulQueuedPurchaseDeletionTypeDef(BaseModel): + ReservedInstancesId: Optional[str] = None + +class DeleteRouteRequestRequestTypeDef(BaseModel): + RouteTableId: str + DestinationCidrBlock: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteRouteRequestRouteDeleteTypeDef(BaseModel): + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteRouteTableRequestRequestTypeDef(BaseModel): + RouteTableId: str + DryRun: Optional[bool] = None + +class DeleteRouteTableRequestRouteTableDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteSecurityGroupRequestRequestTypeDef(BaseModel): + GroupId: Optional[str] = None + GroupName: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteSecurityGroupRequestSecurityGroupDeleteTypeDef(BaseModel): + GroupName: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + DryRun: Optional[bool] = None + +class DeleteSnapshotRequestSnapshotDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteSpotDatafeedSubscriptionRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteSubnetCidrReservationRequestRequestTypeDef(BaseModel): + SubnetCidrReservationId: str + DryRun: Optional[bool] = None + +class DeleteSubnetRequestRequestTypeDef(BaseModel): + SubnetId: str + DryRun: Optional[bool] = None + +class DeleteSubnetRequestSubnetDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteTagsRequestTagDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteTrafficMirrorFilterRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterId: str + DryRun: Optional[bool] = None + +class DeleteTrafficMirrorFilterRuleRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterRuleId: str + DryRun: Optional[bool] = None + +class DeleteTrafficMirrorSessionRequestRequestTypeDef(BaseModel): + TrafficMirrorSessionId: str + DryRun: Optional[bool] = None + +class DeleteTrafficMirrorTargetRequestRequestTypeDef(BaseModel): + TrafficMirrorTargetId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayConnectPeerRequestRequestTypeDef(BaseModel): + TransitGatewayConnectPeerId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayConnectRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayMulticastDomainRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayPeeringAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayPolicyTableRequestRequestTypeDef(BaseModel): + TransitGatewayPolicyTableId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayPrefixListReferenceRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + PrefixListId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayRouteRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + DestinationCidrBlock: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayRouteTableAnnouncementRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncementId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayRouteTableRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + DryRun: Optional[bool] = None + +class DeleteTransitGatewayVpcAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class DeleteVerifiedAccessEndpointRequestRequestTypeDef(BaseModel): + VerifiedAccessEndpointId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteVerifiedAccessGroupRequestRequestTypeDef(BaseModel): + VerifiedAccessGroupId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DeleteVerifiedAccessInstanceRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceId: str + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class DeleteVerifiedAccessTrustProviderRequestRequestTypeDef(BaseModel): + VerifiedAccessTrustProviderId: str + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class DeleteVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + DryRun: Optional[bool] = None + +class DeleteVolumeRequestVolumeDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteVpcEndpointConnectionNotificationsRequestRequestTypeDef(BaseModel): + ConnectionNotificationIds: Sequence[str] + DryRun: Optional[bool] = None + +class DeleteVpcEndpointServiceConfigurationsRequestRequestTypeDef(BaseModel): + ServiceIds: Sequence[str] + DryRun: Optional[bool] = None + +class DeleteVpcEndpointsRequestRequestTypeDef(BaseModel): + VpcEndpointIds: Sequence[str] + DryRun: Optional[bool] = None + +class DeleteVpcPeeringConnectionRequestRequestTypeDef(BaseModel): + VpcPeeringConnectionId: str + DryRun: Optional[bool] = None + +class DeleteVpcPeeringConnectionRequestVpcPeeringConnectionDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteVpcRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class DeleteVpcRequestVpcDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeleteVpnConnectionRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + DryRun: Optional[bool] = None + +class DeleteVpnConnectionRouteRequestRequestTypeDef(BaseModel): + DestinationCidrBlock: str + VpnConnectionId: str + +class DeleteVpnGatewayRequestRequestTypeDef(BaseModel): + VpnGatewayId: str + DryRun: Optional[bool] = None + +class DeprovisionByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + DryRun: Optional[bool] = None + +class DeprovisionIpamByoasnRequestRequestTypeDef(BaseModel): + IpamId: str + Asn: str + DryRun: Optional[bool] = None + +class DeprovisionIpamPoolCidrRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Cidr: Optional[str] = None + +class DeprovisionPublicIpv4PoolCidrRequestRequestTypeDef(BaseModel): + PoolId: str + Cidr: str + DryRun: Optional[bool] = None + +class DeregisterImageRequestImageDeregisterTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DeregisterImageRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class DeregisterInstanceTagAttributeRequestTypeDef(BaseModel): + IncludeAllTagsOfInstance: Optional[bool] = None + InstanceTagKeys: Optional[Sequence[str]] = None + +class InstanceTagNotificationAttributeTypeDef(BaseModel): + InstanceTagKeys: Optional[List[str]] = None + IncludeAllTagsOfInstance: Optional[bool] = None + +class DeregisterTransitGatewayMulticastGroupMembersRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + GroupIpAddress: Optional[str] = None + NetworkInterfaceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class TransitGatewayMulticastDeregisteredGroupMembersTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + DeregisteredNetworkInterfaceIds: Optional[List[str]] = None + GroupIpAddress: Optional[str] = None + +class DeregisterTransitGatewayMulticastGroupSourcesRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + GroupIpAddress: Optional[str] = None + NetworkInterfaceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class TransitGatewayMulticastDeregisteredGroupSourcesTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + DeregisteredNetworkInterfaceIds: Optional[List[str]] = None + GroupIpAddress: Optional[str] = None + +class DescribeAccountAttributesRequestRequestTypeDef(BaseModel): + AttributeNames: Optional[Sequence[AccountAttributeNameType]] = None + DryRun: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAddressTransfersRequestRequestTypeDef(BaseModel): + AllocationIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class DescribeAddressesAttributeRequestRequestTypeDef(BaseModel): + AllocationIds: Optional[Sequence[str]] = None + Attribute: Optional[Literal["domain-name"]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class DescribeAggregateIdFormatRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class IdFormatTypeDef(BaseModel): + Deadline: Optional[datetime] = None + Resource: Optional[str] = None + UseLongIds: Optional[bool] = None + +class SubscriptionTypeDef(BaseModel): + Source: Optional[str] = None + Destination: Optional[str] = None + Metric: Optional[Literal["aggregate-latency"]] = None + Statistic: Optional[Literal["p50"]] = None + Period: Optional[PeriodTypeType] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeByoipCidrsRequestRequestTypeDef(BaseModel): + MaxResults: int + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + +class DescribeConversionTasksRequestRequestTypeDef(BaseModel): + ConversionTaskIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class FastLaunchLaunchTemplateSpecificationResponseTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class FastLaunchSnapshotConfigurationResponseTypeDef(BaseModel): + TargetResourceCount: Optional[int] = None + +class DescribeFastSnapshotRestoreSuccessItemTypeDef(BaseModel): + SnapshotId: Optional[str] = None + AvailabilityZone: Optional[str] = None + State: Optional[FastSnapshotRestoreStateCodeType] = None + StateTransitionReason: Optional[str] = None + OwnerId: Optional[str] = None + OwnerAlias: Optional[str] = None + EnablingTime: Optional[datetime] = None + OptimizingTime: Optional[datetime] = None + EnabledTime: Optional[datetime] = None + DisablingTime: Optional[datetime] = None + DisabledTime: Optional[datetime] = None + +class DescribeFpgaImageAttributeRequestRequestTypeDef(BaseModel): + FpgaImageId: str + Attribute: FpgaImageAttributeNameType + DryRun: Optional[bool] = None + +class HostOfferingTypeDef(BaseModel): + CurrencyCode: Optional[Literal["USD"]] = None + Duration: Optional[int] = None + HourlyPrice: Optional[str] = None + InstanceFamily: Optional[str] = None + OfferingId: Optional[str] = None + PaymentOption: Optional[PaymentOptionType] = None + UpfrontPrice: Optional[str] = None + +class DescribeIdFormatRequestRequestTypeDef(BaseModel): + Resource: Optional[str] = None + +class DescribeIdentityIdFormatRequestRequestTypeDef(BaseModel): + PrincipalArn: str + Resource: Optional[str] = None + +class DescribeImageAttributeRequestImageDescribeAttributeTypeDef(BaseModel): + Attribute: ImageAttributeNameType + DryRun: Optional[bool] = None + +class DescribeImageAttributeRequestRequestTypeDef(BaseModel): + Attribute: ImageAttributeNameType + ImageId: str + DryRun: Optional[bool] = None + +class DescribeInstanceAttributeRequestInstanceDescribeAttributeTypeDef(BaseModel): + Attribute: InstanceAttributeNameType + DryRun: Optional[bool] = None + +class DescribeInstanceAttributeRequestRequestTypeDef(BaseModel): + Attribute: InstanceAttributeNameType + InstanceId: str + DryRun: Optional[bool] = None + +class InstanceCreditSpecificationTypeDef(BaseModel): + InstanceId: Optional[str] = None + CpuCredits: Optional[str] = None + +class DescribeInstanceEventNotificationAttributesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class InstanceTopologyTypeDef(BaseModel): + InstanceId: Optional[str] = None + InstanceType: Optional[str] = None + GroupName: Optional[str] = None + NetworkNodes: Optional[List[str]] = None + AvailabilityZone: Optional[str] = None + ZoneId: Optional[str] = None + +class InstanceTypeOfferingTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + LocationType: Optional[LocationTypeType] = None + Location: Optional[str] = None + +class DescribeIpamByoasnRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LockedSnapshotsInfoTypeDef(BaseModel): + OwnerId: Optional[str] = None + SnapshotId: Optional[str] = None + LockState: Optional[LockStateType] = None + LockDuration: Optional[int] = None + CoolOffPeriod: Optional[int] = None + CoolOffPeriodExpiresOn: Optional[datetime] = None + LockCreatedOn: Optional[datetime] = None + LockDurationStartTime: Optional[datetime] = None + LockExpiresOn: Optional[datetime] = None + +class MacHostTypeDef(BaseModel): + HostId: Optional[str] = None + MacOSLatestSupportedVersions: Optional[List[str]] = None + +class MovingAddressStatusTypeDef(BaseModel): + MoveStatus: Optional[MoveStatusType] = None + PublicIp: Optional[str] = None + +class DescribeNetworkInterfaceAttributeRequestNetworkInterfaceDescribeAttributeTypeDef(BaseModel): + Attribute: Optional[NetworkInterfaceAttributeType] = None + DryRun: Optional[bool] = None + +class DescribeNetworkInterfaceAttributeRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + Attribute: Optional[NetworkInterfaceAttributeType] = None + DryRun: Optional[bool] = None + +class PrefixListTypeDef(BaseModel): + Cidrs: Optional[List[str]] = None + PrefixListId: Optional[str] = None + PrefixListName: Optional[str] = None + +class DescribePrincipalIdFormatRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Resources: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RegionTypeDef(BaseModel): + Endpoint: Optional[str] = None + RegionName: Optional[str] = None + OptInStatus: Optional[str] = None + +class ScheduledInstanceRecurrenceRequestTypeDef(BaseModel): + Frequency: Optional[str] = None + Interval: Optional[int] = None + OccurrenceDays: Optional[Sequence[int]] = None + OccurrenceRelativeToEnd: Optional[bool] = None + OccurrenceUnit: Optional[str] = None + +class DescribeSecurityGroupReferencesRequestRequestTypeDef(BaseModel): + GroupId: Sequence[str] + DryRun: Optional[bool] = None + +class SecurityGroupReferenceTypeDef(BaseModel): + GroupId: Optional[str] = None + ReferencingVpcId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + TransitGatewayId: Optional[str] = None + +class DescribeSnapshotAttributeRequestRequestTypeDef(BaseModel): + Attribute: SnapshotAttributeNameType + SnapshotId: str + DryRun: Optional[bool] = None + +class DescribeSnapshotAttributeRequestSnapshotDescribeAttributeTypeDef(BaseModel): + Attribute: SnapshotAttributeNameType + DryRun: Optional[bool] = None + +class ProductCodeTypeDef(BaseModel): + ProductCodeId: Optional[str] = None + ProductCodeType: Optional[ProductCodeValuesType] = None + +class DescribeSpotDatafeedSubscriptionRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DescribeSpotFleetInstancesRequestRequestTypeDef(BaseModel): + SpotFleetRequestId: str + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeSpotFleetRequestsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SpotFleetRequestIds: Optional[Sequence[str]] = None + +class SpotPriceTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + ProductDescription: Optional[RIProductDescriptionType] = None + SpotPrice: Optional[str] = None + Timestamp: Optional[datetime] = None + +class DescribeStaleSecurityGroupsRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class StoreImageTaskResultTypeDef(BaseModel): + AmiId: Optional[str] = None + TaskStartTime: Optional[datetime] = None + Bucket: Optional[str] = None + S3objectKey: Optional[str] = None + ProgressPercentage: Optional[int] = None + StoreTaskState: Optional[str] = None + StoreTaskFailureReason: Optional[str] = None + +class TagDescriptionTypeDef(BaseModel): + Key: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + Value: Optional[str] = None + +class DescribeVolumeAttributeRequestRequestTypeDef(BaseModel): + Attribute: VolumeAttributeNameType + VolumeId: str + DryRun: Optional[bool] = None + +class DescribeVolumeAttributeRequestVolumeDescribeAttributeTypeDef(BaseModel): + Attribute: VolumeAttributeNameType + DryRun: Optional[bool] = None + +class VolumeModificationTypeDef(BaseModel): + VolumeId: Optional[str] = None + ModificationState: Optional[VolumeModificationStateType] = None + StatusMessage: Optional[str] = None + TargetSize: Optional[int] = None + TargetIops: Optional[int] = None + TargetVolumeType: Optional[VolumeTypeType] = None + TargetThroughput: Optional[int] = None + TargetMultiAttachEnabled: Optional[bool] = None + OriginalSize: Optional[int] = None + OriginalIops: Optional[int] = None + OriginalVolumeType: Optional[VolumeTypeType] = None + OriginalThroughput: Optional[int] = None + OriginalMultiAttachEnabled: Optional[bool] = None + Progress: Optional[int] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class DescribeVpcAttributeRequestRequestTypeDef(BaseModel): + Attribute: VpcAttributeNameType + VpcId: str + DryRun: Optional[bool] = None + +class DescribeVpcAttributeRequestVpcDescribeAttributeTypeDef(BaseModel): + Attribute: VpcAttributeNameType + DryRun: Optional[bool] = None + +class DescribeVpcClassicLinkDnsSupportRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + VpcIds: Optional[Sequence[str]] = None + +class DestinationOptionsResponseTypeDef(BaseModel): + FileFormat: Optional[DestinationFileFormatType] = None + HiveCompatiblePartitions: Optional[bool] = None + PerHourPartition: Optional[bool] = None + +class DetachClassicLinkVpcRequestInstanceDetachClassicLinkVpcTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class DetachClassicLinkVpcRequestRequestTypeDef(BaseModel): + InstanceId: str + VpcId: str + DryRun: Optional[bool] = None + +class DetachClassicLinkVpcRequestVpcDetachClassicLinkInstanceTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + +class DetachInternetGatewayRequestInternetGatewayDetachFromVpcTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class DetachInternetGatewayRequestRequestTypeDef(BaseModel): + InternetGatewayId: str + VpcId: str + DryRun: Optional[bool] = None + +class DetachInternetGatewayRequestVpcDetachInternetGatewayTypeDef(BaseModel): + InternetGatewayId: str + DryRun: Optional[bool] = None + +class DetachNetworkInterfaceRequestNetworkInterfaceDetachTypeDef(BaseModel): + AttachmentId: str + DryRun: Optional[bool] = None + Force: Optional[bool] = None + +class DetachNetworkInterfaceRequestRequestTypeDef(BaseModel): + AttachmentId: str + DryRun: Optional[bool] = None + Force: Optional[bool] = None + +class DetachVerifiedAccessTrustProviderRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceId: str + VerifiedAccessTrustProviderId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DetachVolumeRequestInstanceDetachVolumeTypeDef(BaseModel): + VolumeId: str + Device: Optional[str] = None + Force: Optional[bool] = None + DryRun: Optional[bool] = None + +class DetachVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + Device: Optional[str] = None + Force: Optional[bool] = None + InstanceId: Optional[str] = None + DryRun: Optional[bool] = None + +class DetachVolumeRequestVolumeDetachFromInstanceTypeDef(BaseModel): + Device: Optional[str] = None + Force: Optional[bool] = None + InstanceId: Optional[str] = None + DryRun: Optional[bool] = None + +class DetachVpnGatewayRequestRequestTypeDef(BaseModel): + VpcId: str + VpnGatewayId: str + DryRun: Optional[bool] = None + +class DeviceOptionsTypeDef(BaseModel): + TenantId: Optional[str] = None + PublicSigningKeyUrl: Optional[str] = None + +class DisableAddressTransferRequestRequestTypeDef(BaseModel): + AllocationId: str + DryRun: Optional[bool] = None + +class DisableAwsNetworkPerformanceMetricSubscriptionRequestRequestTypeDef(BaseModel): + Source: Optional[str] = None + Destination: Optional[str] = None + Metric: Optional[Literal["aggregate-latency"]] = None + Statistic: Optional[Literal["p50"]] = None + DryRun: Optional[bool] = None + +class DisableEbsEncryptionByDefaultRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DisableFastLaunchRequestRequestTypeDef(BaseModel): + ImageId: str + Force: Optional[bool] = None + DryRun: Optional[bool] = None + +class DisableFastSnapshotRestoreStateErrorTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class DisableFastSnapshotRestoreSuccessItemTypeDef(BaseModel): + SnapshotId: Optional[str] = None + AvailabilityZone: Optional[str] = None + State: Optional[FastSnapshotRestoreStateCodeType] = None + StateTransitionReason: Optional[str] = None + OwnerId: Optional[str] = None + OwnerAlias: Optional[str] = None + EnablingTime: Optional[datetime] = None + OptimizingTime: Optional[datetime] = None + EnabledTime: Optional[datetime] = None + DisablingTime: Optional[datetime] = None + DisabledTime: Optional[datetime] = None + +class DisableFastSnapshotRestoresRequestRequestTypeDef(BaseModel): + AvailabilityZones: Sequence[str] + SourceSnapshotIds: Sequence[str] + DryRun: Optional[bool] = None + +class DisableImageBlockPublicAccessRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DisableImageDeprecationRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class DisableImageDeregistrationProtectionRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class DisableImageRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class DisableIpamOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + DelegatedAdminAccountId: str + DryRun: Optional[bool] = None + +class DisableSerialConsoleAccessRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DisableSnapshotBlockPublicAccessRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DisableTransitGatewayRouteTablePropagationRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + TransitGatewayAttachmentId: Optional[str] = None + DryRun: Optional[bool] = None + TransitGatewayRouteTableAnnouncementId: Optional[str] = None + +class TransitGatewayPropagationTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + TransitGatewayRouteTableId: Optional[str] = None + State: Optional[TransitGatewayPropagationStateType] = None + TransitGatewayRouteTableAnnouncementId: Optional[str] = None + +class DisableVgwRoutePropagationRequestRequestTypeDef(BaseModel): + GatewayId: str + RouteTableId: str + DryRun: Optional[bool] = None + +class DisableVpcClassicLinkDnsSupportRequestRequestTypeDef(BaseModel): + VpcId: Optional[str] = None + +class DisableVpcClassicLinkRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class DisableVpcClassicLinkRequestVpcDisableClassicLinkTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DisassociateAddressRequestClassicAddressDisassociateTypeDef(BaseModel): + AssociationId: Optional[str] = None + PublicIp: Optional[str] = None + DryRun: Optional[bool] = None + +class DisassociateAddressRequestNetworkInterfaceAssociationDeleteTypeDef(BaseModel): + PublicIp: Optional[str] = None + DryRun: Optional[bool] = None + +class DisassociateAddressRequestRequestTypeDef(BaseModel): + AssociationId: Optional[str] = None + PublicIp: Optional[str] = None + DryRun: Optional[bool] = None + +class DisassociateClientVpnTargetNetworkRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + AssociationId: str + DryRun: Optional[bool] = None + +class DisassociateEnclaveCertificateIamRoleRequestRequestTypeDef(BaseModel): + CertificateArn: str + RoleArn: str + DryRun: Optional[bool] = None + +class DisassociateIamInstanceProfileRequestRequestTypeDef(BaseModel): + AssociationId: str + +class DisassociateIpamByoasnRequestRequestTypeDef(BaseModel): + Asn: str + Cidr: str + DryRun: Optional[bool] = None + +class DisassociateIpamResourceDiscoveryRequestRequestTypeDef(BaseModel): + IpamResourceDiscoveryAssociationId: str + DryRun: Optional[bool] = None + +class DisassociateNatGatewayAddressRequestRequestTypeDef(BaseModel): + NatGatewayId: str + AssociationIds: Sequence[str] + MaxDrainDurationSeconds: Optional[int] = None + DryRun: Optional[bool] = None + +class DisassociateRouteTableRequestRequestTypeDef(BaseModel): + AssociationId: str + DryRun: Optional[bool] = None + +class DisassociateRouteTableRequestRouteTableAssociationDeleteTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class DisassociateRouteTableRequestServiceResourceDisassociateRouteTableTypeDef(BaseModel): + AssociationId: str + DryRun: Optional[bool] = None + +class DisassociateSubnetCidrBlockRequestRequestTypeDef(BaseModel): + AssociationId: str + +class DisassociateTransitGatewayMulticastDomainRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + TransitGatewayAttachmentId: str + SubnetIds: Sequence[str] + DryRun: Optional[bool] = None + +class DisassociateTransitGatewayPolicyTableRequestRequestTypeDef(BaseModel): + TransitGatewayPolicyTableId: str + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class DisassociateTransitGatewayRouteTableRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class DisassociateTrunkInterfaceRequestRequestTypeDef(BaseModel): + AssociationId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DisassociateVpcCidrBlockRequestRequestTypeDef(BaseModel): + AssociationId: str + +class DiskImageDescriptionTypeDef(BaseModel): + Checksum: Optional[str] = None + Format: Optional[DiskImageFormatType] = None + ImportManifestUrl: Optional[str] = None + Size: Optional[int] = None + +class DiskImageDetailTypeDef(BaseModel): + Bytes: int + Format: DiskImageFormatType + ImportManifestUrl: str + +class VolumeDetailTypeDef(BaseModel): + Size: int + +class DiskImageVolumeDescriptionTypeDef(BaseModel): + Id: Optional[str] = None + Size: Optional[int] = None + +class DiskInfoTypeDef(BaseModel): + SizeInGB: Optional[int] = None + Count: Optional[int] = None + Type: Optional[DiskTypeType] = None + +class DnsEntryTypeDef(BaseModel): + DnsName: Optional[str] = None + HostedZoneId: Optional[str] = None + +class DnsOptionsTypeDef(BaseModel): + DnsRecordIpType: Optional[DnsRecordIpTypeType] = None + PrivateDnsOnlyForInboundResolverEndpoint: Optional[bool] = None + +class DnsServersOptionsModifyStructureTypeDef(BaseModel): + CustomDnsServers: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class EbsOptimizedInfoTypeDef(BaseModel): + BaselineBandwidthInMbps: Optional[int] = None + BaselineThroughputInMBps: Optional[float] = None + BaselineIops: Optional[int] = None + MaximumBandwidthInMbps: Optional[int] = None + MaximumThroughputInMBps: Optional[float] = None + MaximumIops: Optional[int] = None + +class EbsInstanceBlockDeviceSpecificationTypeDef(BaseModel): + DeleteOnTermination: Optional[bool] = None + VolumeId: Optional[str] = None + +class EbsInstanceBlockDeviceTypeDef(BaseModel): + AttachTime: Optional[datetime] = None + DeleteOnTermination: Optional[bool] = None + Status: Optional[AttachmentStatusType] = None + VolumeId: Optional[str] = None + AssociatedResource: Optional[str] = None + VolumeOwnerId: Optional[str] = None + +class EfaInfoTypeDef(BaseModel): + MaximumEfaInterfaces: Optional[int] = None + +class InternetGatewayAttachmentTypeDef(BaseModel): + State: Optional[AttachmentStatusType] = None + VpcId: Optional[str] = None + +class ElasticGpuAssociationTypeDef(BaseModel): + ElasticGpuId: Optional[str] = None + ElasticGpuAssociationId: Optional[str] = None + ElasticGpuAssociationState: Optional[str] = None + ElasticGpuAssociationTime: Optional[str] = None + +class ElasticGpuHealthTypeDef(BaseModel): + Status: Optional[ElasticGpuStatusType] = None + +class ElasticGpuSpecificationResponseTypeDef(BaseModel): + Type: Optional[str] = None + +class ElasticGpuSpecificationTypeDef(BaseModel): + Type: str + +class ElasticInferenceAcceleratorAssociationTypeDef(BaseModel): + ElasticInferenceAcceleratorArn: Optional[str] = None + ElasticInferenceAcceleratorAssociationId: Optional[str] = None + ElasticInferenceAcceleratorAssociationState: Optional[str] = None + ElasticInferenceAcceleratorAssociationTime: Optional[datetime] = None + +class ElasticInferenceAcceleratorTypeDef(BaseModel): + Type: str + Count: Optional[int] = None + +class EnaSrdUdpSpecificationRequestTypeDef(BaseModel): + EnaSrdUdpEnabled: Optional[bool] = None + +class EnaSrdUdpSpecificationTypeDef(BaseModel): + EnaSrdUdpEnabled: Optional[bool] = None + +class EnableAddressTransferRequestRequestTypeDef(BaseModel): + AllocationId: str + TransferAccountId: str + DryRun: Optional[bool] = None + +class EnableAwsNetworkPerformanceMetricSubscriptionRequestRequestTypeDef(BaseModel): + Source: Optional[str] = None + Destination: Optional[str] = None + Metric: Optional[Literal["aggregate-latency"]] = None + Statistic: Optional[Literal["p50"]] = None + DryRun: Optional[bool] = None + +class EnableEbsEncryptionByDefaultRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class FastLaunchLaunchTemplateSpecificationRequestTypeDef(BaseModel): + Version: str + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + +class FastLaunchSnapshotConfigurationRequestTypeDef(BaseModel): + TargetResourceCount: Optional[int] = None + +class EnableFastSnapshotRestoreStateErrorTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class EnableFastSnapshotRestoreSuccessItemTypeDef(BaseModel): + SnapshotId: Optional[str] = None + AvailabilityZone: Optional[str] = None + State: Optional[FastSnapshotRestoreStateCodeType] = None + StateTransitionReason: Optional[str] = None + OwnerId: Optional[str] = None + OwnerAlias: Optional[str] = None + EnablingTime: Optional[datetime] = None + OptimizingTime: Optional[datetime] = None + EnabledTime: Optional[datetime] = None + DisablingTime: Optional[datetime] = None + DisabledTime: Optional[datetime] = None + +class EnableFastSnapshotRestoresRequestRequestTypeDef(BaseModel): + AvailabilityZones: Sequence[str] + SourceSnapshotIds: Sequence[str] + DryRun: Optional[bool] = None + +class EnableImageBlockPublicAccessRequestRequestTypeDef(BaseModel): + ImageBlockPublicAccessState: Literal["block-new-sharing"] + DryRun: Optional[bool] = None + +class EnableImageDeregistrationProtectionRequestRequestTypeDef(BaseModel): + ImageId: str + WithCooldown: Optional[bool] = None + DryRun: Optional[bool] = None + +class EnableImageRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class EnableIpamOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + DelegatedAdminAccountId: str + DryRun: Optional[bool] = None + +class EnableReachabilityAnalyzerOrganizationSharingRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class EnableSerialConsoleAccessRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class EnableSnapshotBlockPublicAccessRequestRequestTypeDef(BaseModel): + State: SnapshotBlockPublicAccessStateType + DryRun: Optional[bool] = None + +class EnableTransitGatewayRouteTablePropagationRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + TransitGatewayAttachmentId: Optional[str] = None + DryRun: Optional[bool] = None + TransitGatewayRouteTableAnnouncementId: Optional[str] = None + +class EnableVgwRoutePropagationRequestRequestTypeDef(BaseModel): + GatewayId: str + RouteTableId: str + DryRun: Optional[bool] = None + +class EnableVolumeIORequestRequestTypeDef(BaseModel): + VolumeId: str + DryRun: Optional[bool] = None + +class EnableVolumeIORequestVolumeEnableIoTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class EnableVpcClassicLinkDnsSupportRequestRequestTypeDef(BaseModel): + VpcId: Optional[str] = None + +class EnableVpcClassicLinkRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + +class EnableVpcClassicLinkRequestVpcEnableClassicLinkTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class EnclaveOptionsRequestTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class EnclaveOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class EventInformationTypeDef(BaseModel): + EventDescription: Optional[str] = None + EventSubType: Optional[str] = None + InstanceId: Optional[str] = None + +class TransitGatewayRouteTableRouteTypeDef(BaseModel): + DestinationCidr: Optional[str] = None + State: Optional[str] = None + RouteOrigin: Optional[str] = None + PrefixListId: Optional[str] = None + AttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[str] = None + +class ExportClientVpnClientCertificateRevocationListRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + DryRun: Optional[bool] = None + +class ExportClientVpnClientConfigurationRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + DryRun: Optional[bool] = None + +class ExportTaskS3LocationRequestTypeDef(BaseModel): + S3Bucket: str + S3Prefix: Optional[str] = None + +class ExportTaskS3LocationTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Prefix: Optional[str] = None + +class ExportToS3TaskTypeDef(BaseModel): + ContainerFormat: Optional[Literal["ova"]] = None + DiskImageFormat: Optional[DiskImageFormatType] = None + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + +class InstanceExportDetailsTypeDef(BaseModel): + InstanceId: Optional[str] = None + TargetEnvironment: Optional[ExportEnvironmentType] = None + +class FilterPortRangeTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class TargetCapacitySpecificationTypeDef(BaseModel): + TotalTargetCapacity: Optional[int] = None + OnDemandTargetCapacity: Optional[int] = None + SpotTargetCapacity: Optional[int] = None + DefaultTargetCapacityType: Optional[DefaultTargetCapacityTypeType] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + +class FleetLaunchTemplateSpecificationRequestTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class FleetLaunchTemplateSpecificationTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class PlacementTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Affinity: Optional[str] = None + GroupName: Optional[str] = None + PartitionNumber: Optional[int] = None + HostId: Optional[str] = None + Tenancy: Optional[TenancyType] = None + SpreadDomain: Optional[str] = None + HostResourceGroupArn: Optional[str] = None + GroupId: Optional[str] = None + +class PlacementResponseTypeDef(BaseModel): + GroupName: Optional[str] = None + +class FleetSpotCapacityRebalanceRequestTypeDef(BaseModel): + ReplacementStrategy: Optional[FleetReplacementStrategyType] = None + TerminationDelay: Optional[int] = None + +class FleetSpotCapacityRebalanceTypeDef(BaseModel): + ReplacementStrategy: Optional[FleetReplacementStrategyType] = None + TerminationDelay: Optional[int] = None + +class FpgaDeviceMemoryInfoTypeDef(BaseModel): + SizeInMiB: Optional[int] = None + +class LoadPermissionTypeDef(BaseModel): + UserId: Optional[str] = None + Group: Optional[Literal["all"]] = None + +class FpgaImageStateTypeDef(BaseModel): + Code: Optional[FpgaImageStateCodeType] = None + Message: Optional[str] = None + +class PciIdTypeDef(BaseModel): + DeviceId: Optional[str] = None + VendorId: Optional[str] = None + SubsystemId: Optional[str] = None + SubsystemVendorId: Optional[str] = None + +class GetAssociatedEnclaveCertificateIamRolesRequestRequestTypeDef(BaseModel): + CertificateArn: str + DryRun: Optional[bool] = None + +class GetAssociatedIpv6PoolCidrsRequestRequestTypeDef(BaseModel): + PoolId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class Ipv6CidrAssociationTypeDef(BaseModel): + Ipv6Cidr: Optional[str] = None + AssociatedResource: Optional[str] = None + +class GetCapacityReservationUsageRequestRequestTypeDef(BaseModel): + CapacityReservationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class InstanceUsageTypeDef(BaseModel): + AccountId: Optional[str] = None + UsedInstanceCount: Optional[int] = None + +class GetConsoleOutputRequestInstanceConsoleOutputTypeDef(BaseModel): + DryRun: Optional[bool] = None + Latest: Optional[bool] = None + +class GetConsoleOutputRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + Latest: Optional[bool] = None + +class GetConsoleScreenshotRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + WakeUp: Optional[bool] = None + +class GetDefaultCreditSpecificationRequestRequestTypeDef(BaseModel): + InstanceFamily: UnlimitedSupportedInstanceFamilyType + DryRun: Optional[bool] = None + +class InstanceFamilyCreditSpecificationTypeDef(BaseModel): + InstanceFamily: Optional[UnlimitedSupportedInstanceFamilyType] = None + CpuCredits: Optional[str] = None + +class GetEbsDefaultKmsKeyIdRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class GetEbsEncryptionByDefaultRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class GetGroupsForCapacityReservationRequestRequestTypeDef(BaseModel): + CapacityReservationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class GetHostReservationPurchasePreviewRequestRequestTypeDef(BaseModel): + HostIdSet: Sequence[str] + OfferingId: str + +class PurchaseTypeDef(BaseModel): + CurrencyCode: Optional[Literal["USD"]] = None + Duration: Optional[int] = None + HostIdSet: Optional[List[str]] = None + HostReservationId: Optional[str] = None + HourlyPrice: Optional[str] = None + InstanceFamily: Optional[str] = None + PaymentOption: Optional[PaymentOptionType] = None + UpfrontPrice: Optional[str] = None + +class GetImageBlockPublicAccessStateRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class GetInstanceMetadataDefaultsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class InstanceMetadataDefaultsResponseTypeDef(BaseModel): + HttpTokens: Optional[HttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[InstanceMetadataEndpointStateType] = None + InstanceMetadataTags: Optional[InstanceMetadataTagsStateType] = None + +class GetInstanceTpmEkPubRequestRequestTypeDef(BaseModel): + InstanceId: str + KeyType: EkPubKeyTypeType + KeyFormat: EkPubKeyFormatType + DryRun: Optional[bool] = None + +class InstanceTypeInfoFromInstanceRequirementsTypeDef(BaseModel): + InstanceType: Optional[str] = None + +class GetInstanceUefiDataRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + +class IpamAddressHistoryRecordTypeDef(BaseModel): + ResourceOwnerId: Optional[str] = None + ResourceRegion: Optional[str] = None + ResourceType: Optional[IpamAddressHistoryResourceTypeType] = None + ResourceId: Optional[str] = None + ResourceCidr: Optional[str] = None + ResourceName: Optional[str] = None + ResourceComplianceStatus: Optional[IpamComplianceStatusType] = None + ResourceOverlapStatus: Optional[IpamOverlapStatusType] = None + VpcId: Optional[str] = None + SampledStartTime: Optional[datetime] = None + SampledEndTime: Optional[datetime] = None + +class GetLaunchTemplateDataRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + +class GetManagedPrefixListAssociationsRequestRequestTypeDef(BaseModel): + PrefixListId: str + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PrefixListAssociationTypeDef(BaseModel): + ResourceId: Optional[str] = None + ResourceOwner: Optional[str] = None + +class GetManagedPrefixListEntriesRequestRequestTypeDef(BaseModel): + PrefixListId: str + DryRun: Optional[bool] = None + TargetVersion: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PrefixListEntryTypeDef(BaseModel): + Cidr: Optional[str] = None + Description: Optional[str] = None + +class GetNetworkInsightsAccessScopeAnalysisFindingsRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetNetworkInsightsAccessScopeContentRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeId: str + DryRun: Optional[bool] = None + +class GetPasswordDataRequestInstancePasswordDataTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class GetPasswordDataRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + +class ReservationValueTypeDef(BaseModel): + HourlyPrice: Optional[str] = None + RemainingTotalValue: Optional[str] = None + RemainingUpfrontValue: Optional[str] = None + +class GetSerialConsoleAccessStatusRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class GetSnapshotBlockPublicAccessStateRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class SpotPlacementScoreTypeDef(BaseModel): + Region: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + Score: Optional[int] = None + +class TransitGatewayAttachmentPropagationTypeDef(BaseModel): + TransitGatewayRouteTableId: Optional[str] = None + State: Optional[TransitGatewayPropagationStateType] = None + +class TransitGatewayRouteTableAssociationTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + State: Optional[TransitGatewayAssociationStateType] = None + +class TransitGatewayRouteTablePropagationTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + State: Optional[TransitGatewayPropagationStateType] = None + TransitGatewayRouteTableAnnouncementId: Optional[str] = None + +class GetVerifiedAccessEndpointPolicyRequestRequestTypeDef(BaseModel): + VerifiedAccessEndpointId: str + DryRun: Optional[bool] = None + +class GetVerifiedAccessGroupPolicyRequestRequestTypeDef(BaseModel): + VerifiedAccessGroupId: str + DryRun: Optional[bool] = None + +class GetVpnConnectionDeviceSampleConfigurationRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + VpnConnectionDeviceTypeId: str + InternetKeyExchangeVersion: Optional[str] = None + DryRun: Optional[bool] = None + +class GetVpnConnectionDeviceTypesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class VpnConnectionDeviceTypeTypeDef(BaseModel): + VpnConnectionDeviceTypeId: Optional[str] = None + Vendor: Optional[str] = None + Platform: Optional[str] = None + Software: Optional[str] = None + +class GetVpnTunnelReplacementStatusRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + VpnTunnelOutsideIpAddress: str + DryRun: Optional[bool] = None + +class MaintenanceDetailsTypeDef(BaseModel): + PendingMaintenance: Optional[str] = None + MaintenanceAutoAppliedAfter: Optional[datetime] = None + LastMaintenanceApplied: Optional[datetime] = None + +class GpuDeviceMemoryInfoTypeDef(BaseModel): + SizeInMiB: Optional[int] = None + +class HibernationOptionsRequestTypeDef(BaseModel): + Configured: Optional[bool] = None + +class HibernationOptionsTypeDef(BaseModel): + Configured: Optional[bool] = None + +class HostInstanceTypeDef(BaseModel): + InstanceId: Optional[str] = None + InstanceType: Optional[str] = None + OwnerId: Optional[str] = None + +class HostPropertiesTypeDef(BaseModel): + Cores: Optional[int] = None + InstanceType: Optional[str] = None + InstanceFamily: Optional[str] = None + Sockets: Optional[int] = None + TotalVCpus: Optional[int] = None + +class IKEVersionsListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class IKEVersionsRequestListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class IamInstanceProfileTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + +class LaunchPermissionTypeDef(BaseModel): + Group: Optional[Literal["all"]] = None + UserId: Optional[str] = None + OrganizationArn: Optional[str] = None + OrganizationalUnitArn: Optional[str] = None + +class UserBucketTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + +class ImageRecycleBinInfoTypeDef(BaseModel): + ImageId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + RecycleBinEnterTime: Optional[datetime] = None + RecycleBinExitTime: Optional[datetime] = None + +class StateReasonTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class ImportClientVpnClientCertificateRevocationListRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + CertificateRevocationList: str + DryRun: Optional[bool] = None + +class ImportImageLicenseConfigurationRequestTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class ImportImageLicenseConfigurationResponseTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class UserDataTypeDef(BaseModel): + Data: Optional[str] = None + +class InferenceDeviceMemoryInfoTypeDef(BaseModel): + SizeInMiB: Optional[int] = None + +class InstanceAttachmentEnaSrdUdpSpecificationTypeDef(BaseModel): + EnaSrdUdpEnabled: Optional[bool] = None + +class InstanceCountTypeDef(BaseModel): + InstanceCount: Optional[int] = None + State: Optional[ListingStateType] = None + +class InstanceCreditSpecificationRequestTypeDef(BaseModel): + InstanceId: str + CpuCredits: Optional[str] = None + +class InstanceEventWindowTimeRangeTypeDef(BaseModel): + StartWeekDay: Optional[WeekDayType] = None + StartHour: Optional[int] = None + EndWeekDay: Optional[WeekDayType] = None + EndHour: Optional[int] = None + +class InstanceIpv4PrefixTypeDef(BaseModel): + Ipv4Prefix: Optional[str] = None + +class InstanceIpv6AddressRequestTypeDef(BaseModel): + Ipv6Address: Optional[str] = None + +class InstanceIpv6PrefixTypeDef(BaseModel): + Ipv6Prefix: Optional[str] = None + +class InstanceMaintenanceOptionsRequestTypeDef(BaseModel): + AutoRecovery: Optional[InstanceAutoRecoveryStateType] = None + +class InstanceMaintenanceOptionsTypeDef(BaseModel): + AutoRecovery: Optional[InstanceAutoRecoveryStateType] = None + +class InstanceMetadataOptionsRequestTypeDef(BaseModel): + HttpTokens: Optional[HttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[InstanceMetadataEndpointStateType] = None + HttpProtocolIpv6: Optional[InstanceMetadataProtocolStateType] = None + InstanceMetadataTags: Optional[InstanceMetadataTagsStateType] = None + +class InstanceMetadataOptionsResponseTypeDef(BaseModel): + State: Optional[InstanceMetadataOptionsStateType] = None + HttpTokens: Optional[HttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[InstanceMetadataEndpointStateType] = None + HttpProtocolIpv6: Optional[InstanceMetadataProtocolStateType] = None + InstanceMetadataTags: Optional[InstanceMetadataTagsStateType] = None + +class MonitoringTypeDef(BaseModel): + State: Optional[MonitoringStateType] = None + +class InstanceNetworkInterfaceAssociationTypeDef(BaseModel): + CarrierIp: Optional[str] = None + CustomerOwnedIp: Optional[str] = None + IpOwnerId: Optional[str] = None + PublicDnsName: Optional[str] = None + PublicIp: Optional[str] = None + +class MemoryGiBPerVCpuTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class MemoryMiBTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class NetworkBandwidthGbpsTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class NetworkInterfaceCountTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class TotalLocalStorageGBTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class VCpuCountRangeTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class MemoryGiBPerVCpuRequestTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class MemoryMiBRequestTypeDef(BaseModel): + Min: int + Max: Optional[int] = None + +class NetworkBandwidthGbpsRequestTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class NetworkInterfaceCountRequestTypeDef(BaseModel): + Min: Optional[int] = None + Max: Optional[int] = None + +class TotalLocalStorageGBRequestTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class VCpuCountRangeRequestTypeDef(BaseModel): + Min: int + Max: Optional[int] = None + +class InstanceStateTypeDef(BaseModel): + Code: Optional[int] = None + Name: Optional[InstanceStateNameType] = None + +class InstanceStatusDetailsTypeDef(BaseModel): + ImpairedSince: Optional[datetime] = None + Name: Optional[Literal["reachability"]] = None + Status: Optional[StatusTypeType] = None + +class InstanceStatusEventTypeDef(BaseModel): + InstanceEventId: Optional[str] = None + Code: Optional[EventCodeType] = None + Description: Optional[str] = None + NotAfter: Optional[datetime] = None + NotBefore: Optional[datetime] = None + NotBeforeDeadline: Optional[datetime] = None + +class LicenseConfigurationTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class PrivateDnsNameOptionsResponseTypeDef(BaseModel): + HostnameType: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecord: Optional[bool] = None + EnableResourceNameDnsAAAARecord: Optional[bool] = None + +class MemoryInfoTypeDef(BaseModel): + SizeInMiB: Optional[int] = None + +class NitroTpmInfoTypeDef(BaseModel): + SupportedVersions: Optional[List[str]] = None + +class PlacementGroupInfoTypeDef(BaseModel): + SupportedStrategies: Optional[List[PlacementGroupStrategyType]] = None + +class ProcessorInfoTypeDef(BaseModel): + SupportedArchitectures: Optional[List[ArchitectureTypeType]] = None + SustainedClockSpeedInGhz: Optional[float] = None + SupportedFeatures: Optional[List[Literal["amd-sev-snp"]]] = None + Manufacturer: Optional[str] = None + +class VCpuInfoTypeDef(BaseModel): + DefaultVCpus: Optional[int] = None + DefaultCores: Optional[int] = None + DefaultThreadsPerCore: Optional[int] = None + ValidCores: Optional[List[int]] = None + ValidThreadsPerCore: Optional[List[int]] = None + +class IpRangeTypeDef(BaseModel): + CidrIp: Optional[str] = None + Description: Optional[str] = None + +class Ipv6RangeTypeDef(BaseModel): + CidrIpv6: Optional[str] = None + Description: Optional[str] = None + +class PrefixListIdTypeDef(BaseModel): + Description: Optional[str] = None + PrefixListId: Optional[str] = None + +class UserIdGroupPairTypeDef(BaseModel): + Description: Optional[str] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + PeeringStatus: Optional[str] = None + UserId: Optional[str] = None + VpcId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + +class IpamCidrAuthorizationContextTypeDef(BaseModel): + Message: Optional[str] = None + Signature: Optional[str] = None + +class IpamDiscoveryFailureReasonTypeDef(BaseModel): + Code: Optional[IpamDiscoveryFailureCodeType] = None + Message: Optional[str] = None + +class IpamPublicAddressSecurityGroupTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + +class IpamResourceTagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class IpamOperatingRegionTypeDef(BaseModel): + RegionName: Optional[str] = None + +class IpamPoolCidrFailureReasonTypeDef(BaseModel): + Code: Optional[IpamPoolCidrFailureCodeType] = None + Message: Optional[str] = None + +class IpamPoolSourceResourceTypeDef(BaseModel): + ResourceId: Optional[str] = None + ResourceType: Optional[Literal["vpc"]] = None + ResourceRegion: Optional[str] = None + ResourceOwner: Optional[str] = None + +class IpamPublicAddressTagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class Ipv4PrefixSpecificationResponseTypeDef(BaseModel): + Ipv4Prefix: Optional[str] = None + +class Ipv6CidrBlockTypeDef(BaseModel): + Ipv6CidrBlock: Optional[str] = None + +class PoolCidrBlockTypeDef(BaseModel): + Cidr: Optional[str] = None + +class Ipv6PrefixSpecificationResponseTypeDef(BaseModel): + Ipv6Prefix: Optional[str] = None + +class Ipv6PrefixSpecificationTypeDef(BaseModel): + Ipv6Prefix: Optional[str] = None + +class LastErrorTypeDef(BaseModel): + Message: Optional[str] = None + Code: Optional[str] = None + +class RunInstancesMonitoringEnabledTypeDef(BaseModel): + Enabled: bool + +class SpotPlacementTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + GroupName: Optional[str] = None + Tenancy: Optional[TenancyType] = None + +class LaunchTemplateEbsBlockDeviceRequestTypeDef(BaseModel): + Encrypted: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Iops: Optional[int] = None + KmsKeyId: Optional[str] = None + SnapshotId: Optional[str] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[VolumeTypeType] = None + Throughput: Optional[int] = None + +class LaunchTemplateEbsBlockDeviceTypeDef(BaseModel): + Encrypted: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Iops: Optional[int] = None + KmsKeyId: Optional[str] = None + SnapshotId: Optional[str] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[VolumeTypeType] = None + Throughput: Optional[int] = None + +class LaunchTemplateCpuOptionsRequestTypeDef(BaseModel): + CoreCount: Optional[int] = None + ThreadsPerCore: Optional[int] = None + AmdSevSnp: Optional[AmdSevSnpSpecificationType] = None + +class LaunchTemplateCpuOptionsTypeDef(BaseModel): + CoreCount: Optional[int] = None + ThreadsPerCore: Optional[int] = None + AmdSevSnp: Optional[AmdSevSnpSpecificationType] = None + +class LaunchTemplateElasticInferenceAcceleratorResponseTypeDef(BaseModel): + Type: Optional[str] = None + Count: Optional[int] = None + +class LaunchTemplateElasticInferenceAcceleratorTypeDef(BaseModel): + Type: str + Count: Optional[int] = None + +class LaunchTemplateEnaSrdUdpSpecificationTypeDef(BaseModel): + EnaSrdUdpEnabled: Optional[bool] = None + +class LaunchTemplateEnclaveOptionsRequestTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class LaunchTemplateEnclaveOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class LaunchTemplateHibernationOptionsRequestTypeDef(BaseModel): + Configured: Optional[bool] = None + +class LaunchTemplateHibernationOptionsTypeDef(BaseModel): + Configured: Optional[bool] = None + +class LaunchTemplateIamInstanceProfileSpecificationRequestTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class LaunchTemplateIamInstanceProfileSpecificationTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class LaunchTemplateInstanceMaintenanceOptionsRequestTypeDef(BaseModel): + AutoRecovery: Optional[LaunchTemplateAutoRecoveryStateType] = None + +class LaunchTemplateInstanceMaintenanceOptionsTypeDef(BaseModel): + AutoRecovery: Optional[LaunchTemplateAutoRecoveryStateType] = None + +class LaunchTemplateSpotMarketOptionsTypeDef(BaseModel): + MaxPrice: Optional[str] = None + SpotInstanceType: Optional[SpotInstanceTypeType] = None + BlockDurationMinutes: Optional[int] = None + ValidUntil: Optional[datetime] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + +class LaunchTemplateInstanceMetadataOptionsRequestTypeDef(BaseModel): + HttpTokens: Optional[LaunchTemplateHttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[LaunchTemplateInstanceMetadataEndpointStateType] = None + HttpProtocolIpv6: Optional[LaunchTemplateInstanceMetadataProtocolIpv6Type] = None + InstanceMetadataTags: Optional[LaunchTemplateInstanceMetadataTagsStateType] = None + +class LaunchTemplateInstanceMetadataOptionsTypeDef(BaseModel): + State: Optional[LaunchTemplateInstanceMetadataOptionsStateType] = None + HttpTokens: Optional[LaunchTemplateHttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[LaunchTemplateInstanceMetadataEndpointStateType] = None + HttpProtocolIpv6: Optional[LaunchTemplateInstanceMetadataProtocolIpv6Type] = None + InstanceMetadataTags: Optional[LaunchTemplateInstanceMetadataTagsStateType] = None + +class LaunchTemplateLicenseConfigurationRequestTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class LaunchTemplateLicenseConfigurationTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class LaunchTemplatePlacementRequestTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Affinity: Optional[str] = None + GroupName: Optional[str] = None + HostId: Optional[str] = None + Tenancy: Optional[TenancyType] = None + SpreadDomain: Optional[str] = None + HostResourceGroupArn: Optional[str] = None + PartitionNumber: Optional[int] = None + GroupId: Optional[str] = None + +class LaunchTemplatePlacementTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Affinity: Optional[str] = None + GroupName: Optional[str] = None + HostId: Optional[str] = None + Tenancy: Optional[TenancyType] = None + SpreadDomain: Optional[str] = None + HostResourceGroupArn: Optional[str] = None + PartitionNumber: Optional[int] = None + GroupId: Optional[str] = None + +class LaunchTemplatePrivateDnsNameOptionsRequestTypeDef(BaseModel): + HostnameType: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecord: Optional[bool] = None + EnableResourceNameDnsAAAARecord: Optional[bool] = None + +class LaunchTemplatePrivateDnsNameOptionsTypeDef(BaseModel): + HostnameType: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecord: Optional[bool] = None + EnableResourceNameDnsAAAARecord: Optional[bool] = None + +class LaunchTemplateSpecificationTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class LaunchTemplatesMonitoringRequestTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class LaunchTemplatesMonitoringTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class LicenseConfigurationRequestTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class ListImagesInRecycleBinRequestRequestTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class ListSnapshotsInRecycleBinRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SnapshotIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class SnapshotRecycleBinInfoTypeDef(BaseModel): + SnapshotId: Optional[str] = None + RecycleBinEnterTime: Optional[datetime] = None + RecycleBinExitTime: Optional[datetime] = None + Description: Optional[str] = None + VolumeId: Optional[str] = None + +class LoadPermissionRequestTypeDef(BaseModel): + Group: Optional[Literal["all"]] = None + UserId: Optional[str] = None + +class MediaDeviceMemoryInfoTypeDef(BaseModel): + SizeInMiB: Optional[int] = None + +class ModifyAddressAttributeRequestRequestTypeDef(BaseModel): + AllocationId: str + DomainName: Optional[str] = None + DryRun: Optional[bool] = None + +class ModifyAvailabilityZoneGroupRequestRequestTypeDef(BaseModel): + GroupName: str + OptInStatus: ModifyAvailabilityZoneOptInStatusType + DryRun: Optional[bool] = None + +class ModifyDefaultCreditSpecificationRequestRequestTypeDef(BaseModel): + InstanceFamily: UnlimitedSupportedInstanceFamilyType + CpuCredits: str + DryRun: Optional[bool] = None + +class ModifyEbsDefaultKmsKeyIdRequestRequestTypeDef(BaseModel): + KmsKeyId: str + DryRun: Optional[bool] = None + +class ModifyHostsRequestRequestTypeDef(BaseModel): + HostIds: Sequence[str] + AutoPlacement: Optional[AutoPlacementType] = None + HostRecovery: Optional[HostRecoveryType] = None + InstanceType: Optional[str] = None + InstanceFamily: Optional[str] = None + HostMaintenance: Optional[HostMaintenanceType] = None + +class ModifyIdFormatRequestRequestTypeDef(BaseModel): + Resource: str + UseLongIds: bool + +class ModifyIdentityIdFormatRequestRequestTypeDef(BaseModel): + PrincipalArn: str + Resource: str + UseLongIds: bool + +class SuccessfulInstanceCreditSpecificationItemTypeDef(BaseModel): + InstanceId: Optional[str] = None + +class ModifyInstanceMaintenanceOptionsRequestRequestTypeDef(BaseModel): + InstanceId: str + AutoRecovery: Optional[InstanceAutoRecoveryStateType] = None + DryRun: Optional[bool] = None + +class ModifyInstanceMetadataDefaultsRequestRequestTypeDef(BaseModel): + HttpTokens: Optional[MetadataDefaultHttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[DefaultInstanceMetadataEndpointStateType] = None + InstanceMetadataTags: Optional[DefaultInstanceMetadataTagsStateType] = None + DryRun: Optional[bool] = None + +class ModifyInstanceMetadataOptionsRequestRequestTypeDef(BaseModel): + InstanceId: str + HttpTokens: Optional[HttpTokensStateType] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpEndpoint: Optional[InstanceMetadataEndpointStateType] = None + DryRun: Optional[bool] = None + HttpProtocolIpv6: Optional[InstanceMetadataProtocolStateType] = None + InstanceMetadataTags: Optional[InstanceMetadataTagsStateType] = None + +class ModifyInstancePlacementRequestRequestTypeDef(BaseModel): + InstanceId: str + Affinity: Optional[AffinityType] = None + GroupName: Optional[str] = None + HostId: Optional[str] = None + Tenancy: Optional[HostTenancyType] = None + PartitionNumber: Optional[int] = None + HostResourceGroupArn: Optional[str] = None + GroupId: Optional[str] = None + +class RemoveIpamOperatingRegionTypeDef(BaseModel): + RegionName: Optional[str] = None + +class ModifyIpamResourceCidrRequestRequestTypeDef(BaseModel): + ResourceId: str + ResourceCidr: str + ResourceRegion: str + CurrentIpamScopeId: str + Monitored: bool + DryRun: Optional[bool] = None + DestinationIpamScopeId: Optional[str] = None + +class ModifyIpamScopeRequestRequestTypeDef(BaseModel): + IpamScopeId: str + DryRun: Optional[bool] = None + Description: Optional[str] = None + +class ModifyLaunchTemplateRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + DefaultVersion: Optional[str] = None + +class ModifyLocalGatewayRouteRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + DestinationCidrBlock: Optional[str] = None + LocalGatewayVirtualInterfaceGroupId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + DryRun: Optional[bool] = None + DestinationPrefixListId: Optional[str] = None + +class RemovePrefixListEntryTypeDef(BaseModel): + Cidr: str + +class NetworkInterfaceAttachmentChangesTypeDef(BaseModel): + AttachmentId: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + +class ModifyPrivateDnsNameOptionsRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + PrivateDnsHostnameType: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecord: Optional[bool] = None + EnableResourceNameDnsAAAARecord: Optional[bool] = None + +class ReservedInstancesConfigurationTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + InstanceCount: Optional[int] = None + InstanceType: Optional[InstanceTypeType] = None + Platform: Optional[str] = None + Scope: Optional[ScopeType] = None + +class ModifySnapshotTierRequestRequestTypeDef(BaseModel): + SnapshotId: str + StorageTier: Optional[Literal["archive"]] = None + DryRun: Optional[bool] = None + +class ModifyTrafficMirrorFilterNetworkServicesRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterId: str + AddNetworkServices: Optional[Sequence[Literal["amazon-dns"]]] = None + RemoveNetworkServices: Optional[Sequence[Literal["amazon-dns"]]] = None + DryRun: Optional[bool] = None + +class ModifyTrafficMirrorSessionRequestRequestTypeDef(BaseModel): + TrafficMirrorSessionId: str + TrafficMirrorTargetId: Optional[str] = None + TrafficMirrorFilterId: Optional[str] = None + PacketLength: Optional[int] = None + SessionNumber: Optional[int] = None + VirtualNetworkId: Optional[int] = None + Description: Optional[str] = None + RemoveFields: Optional[Sequence[TrafficMirrorSessionFieldType]] = None + DryRun: Optional[bool] = None + +class ModifyTransitGatewayOptionsTypeDef(BaseModel): + AddTransitGatewayCidrBlocks: Optional[Sequence[str]] = None + RemoveTransitGatewayCidrBlocks: Optional[Sequence[str]] = None + VpnEcmpSupport: Optional[VpnEcmpSupportValueType] = None + DnsSupport: Optional[DnsSupportValueType] = None + SecurityGroupReferencingSupport: Optional[SecurityGroupReferencingSupportValueType] = None + AutoAcceptSharedAttachments: Optional[AutoAcceptSharedAttachmentsValueType] = None + DefaultRouteTableAssociation: Optional[DefaultRouteTableAssociationValueType] = None + AssociationDefaultRouteTableId: Optional[str] = None + DefaultRouteTablePropagation: Optional[DefaultRouteTablePropagationValueType] = None + PropagationDefaultRouteTableId: Optional[str] = None + AmazonSideAsn: Optional[int] = None + +class ModifyTransitGatewayPrefixListReferenceRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + PrefixListId: str + TransitGatewayAttachmentId: Optional[str] = None + Blackhole: Optional[bool] = None + DryRun: Optional[bool] = None + +class ModifyTransitGatewayVpcAttachmentRequestOptionsTypeDef(BaseModel): + DnsSupport: Optional[DnsSupportValueType] = None + SecurityGroupReferencingSupport: Optional[SecurityGroupReferencingSupportValueType] = None + Ipv6Support: Optional[Ipv6SupportValueType] = None + ApplianceModeSupport: Optional[ApplianceModeSupportValueType] = None + +class ModifyVerifiedAccessEndpointEniOptionsTypeDef(BaseModel): + Protocol: Optional[VerifiedAccessEndpointProtocolType] = None + Port: Optional[int] = None + +class ModifyVerifiedAccessEndpointLoadBalancerOptionsTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + Protocol: Optional[VerifiedAccessEndpointProtocolType] = None + Port: Optional[int] = None + +class VerifiedAccessSseSpecificationResponseTypeDef(BaseModel): + CustomerManagedKeyEnabled: Optional[bool] = None + KmsKeyArn: Optional[str] = None + +class ModifyVerifiedAccessGroupRequestRequestTypeDef(BaseModel): + VerifiedAccessGroupId: str + VerifiedAccessInstanceId: Optional[str] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class ModifyVerifiedAccessInstanceRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceId: str + Description: Optional[str] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class ModifyVerifiedAccessTrustProviderDeviceOptionsTypeDef(BaseModel): + PublicSigningKeyUrl: Optional[str] = None + +class ModifyVerifiedAccessTrustProviderOidcOptionsTypeDef(BaseModel): + Issuer: Optional[str] = None + AuthorizationEndpoint: Optional[str] = None + TokenEndpoint: Optional[str] = None + UserInfoEndpoint: Optional[str] = None + ClientId: Optional[str] = None + ClientSecret: Optional[str] = None + Scope: Optional[str] = None + +class ModifyVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + DryRun: Optional[bool] = None + Size: Optional[int] = None + VolumeType: Optional[VolumeTypeType] = None + Iops: Optional[int] = None + Throughput: Optional[int] = None + MultiAttachEnabled: Optional[bool] = None + +class ModifyVpcEndpointConnectionNotificationRequestRequestTypeDef(BaseModel): + ConnectionNotificationId: str + DryRun: Optional[bool] = None + ConnectionNotificationArn: Optional[str] = None + ConnectionEvents: Optional[Sequence[str]] = None + +class ModifyVpcEndpointServiceConfigurationRequestRequestTypeDef(BaseModel): + ServiceId: str + DryRun: Optional[bool] = None + PrivateDnsName: Optional[str] = None + RemovePrivateDnsName: Optional[bool] = None + AcceptanceRequired: Optional[bool] = None + AddNetworkLoadBalancerArns: Optional[Sequence[str]] = None + RemoveNetworkLoadBalancerArns: Optional[Sequence[str]] = None + AddGatewayLoadBalancerArns: Optional[Sequence[str]] = None + RemoveGatewayLoadBalancerArns: Optional[Sequence[str]] = None + AddSupportedIpAddressTypes: Optional[Sequence[str]] = None + RemoveSupportedIpAddressTypes: Optional[Sequence[str]] = None + +class ModifyVpcEndpointServicePayerResponsibilityRequestRequestTypeDef(BaseModel): + ServiceId: str + PayerResponsibility: Literal["ServiceOwner"] + DryRun: Optional[bool] = None + +class ModifyVpcEndpointServicePermissionsRequestRequestTypeDef(BaseModel): + ServiceId: str + DryRun: Optional[bool] = None + AddAllowedPrincipals: Optional[Sequence[str]] = None + RemoveAllowedPrincipals: Optional[Sequence[str]] = None + +class PeeringConnectionOptionsRequestTypeDef(BaseModel): + AllowDnsResolutionFromRemoteVpc: Optional[bool] = None + AllowEgressFromLocalClassicLinkToRemoteVpc: Optional[bool] = None + AllowEgressFromLocalVpcToRemoteClassicLink: Optional[bool] = None + +class PeeringConnectionOptionsTypeDef(BaseModel): + AllowDnsResolutionFromRemoteVpc: Optional[bool] = None + AllowEgressFromLocalClassicLinkToRemoteVpc: Optional[bool] = None + AllowEgressFromLocalVpcToRemoteClassicLink: Optional[bool] = None + +class ModifyVpcTenancyRequestRequestTypeDef(BaseModel): + VpcId: str + InstanceTenancy: Literal["default"] + DryRun: Optional[bool] = None + +class ModifyVpnConnectionOptionsRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + LocalIpv4NetworkCidr: Optional[str] = None + RemoteIpv4NetworkCidr: Optional[str] = None + LocalIpv6NetworkCidr: Optional[str] = None + RemoteIpv6NetworkCidr: Optional[str] = None + DryRun: Optional[bool] = None + +class ModifyVpnConnectionRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + TransitGatewayId: Optional[str] = None + CustomerGatewayId: Optional[str] = None + VpnGatewayId: Optional[str] = None + DryRun: Optional[bool] = None + +class ModifyVpnTunnelCertificateRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + VpnTunnelOutsideIpAddress: str + DryRun: Optional[bool] = None + +class Phase1DHGroupNumbersRequestListValueTypeDef(BaseModel): + Value: Optional[int] = None + +class Phase1EncryptionAlgorithmsRequestListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class Phase1IntegrityAlgorithmsRequestListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class Phase2DHGroupNumbersRequestListValueTypeDef(BaseModel): + Value: Optional[int] = None + +class Phase2EncryptionAlgorithmsRequestListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class Phase2IntegrityAlgorithmsRequestListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class MonitorInstancesRequestInstanceMonitorTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class MonitorInstancesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + DryRun: Optional[bool] = None + +class MoveAddressToVpcRequestRequestTypeDef(BaseModel): + PublicIp: str + DryRun: Optional[bool] = None + +class MoveByoipCidrToIpamRequestRequestTypeDef(BaseModel): + Cidr: str + IpamPoolId: str + IpamPoolOwner: str + DryRun: Optional[bool] = None + +class ProvisionedBandwidthTypeDef(BaseModel): + ProvisionTime: Optional[datetime] = None + Provisioned: Optional[str] = None + RequestTime: Optional[datetime] = None + Requested: Optional[str] = None + Status: Optional[str] = None + +class NetworkAclAssociationTypeDef(BaseModel): + NetworkAclAssociationId: Optional[str] = None + NetworkAclId: Optional[str] = None + SubnetId: Optional[str] = None + +class NetworkCardInfoTypeDef(BaseModel): + NetworkCardIndex: Optional[int] = None + NetworkPerformance: Optional[str] = None + MaximumNetworkInterfaces: Optional[int] = None + BaselineBandwidthInGbps: Optional[float] = None + PeakBandwidthInGbps: Optional[float] = None + +class NetworkInterfaceAssociationTypeDef(BaseModel): + AllocationId: Optional[str] = None + AssociationId: Optional[str] = None + IpOwnerId: Optional[str] = None + PublicDnsName: Optional[str] = None + PublicIp: Optional[str] = None + CustomerOwnedIp: Optional[str] = None + CarrierIp: Optional[str] = None + +class NetworkInterfaceIpv6AddressTypeDef(BaseModel): + Ipv6Address: Optional[str] = None + IsPrimaryIpv6: Optional[bool] = None + +class NetworkInterfacePermissionStateTypeDef(BaseModel): + State: Optional[NetworkInterfacePermissionStateCodeType] = None + StatusMessage: Optional[str] = None + +class NeuronDeviceCoreInfoTypeDef(BaseModel): + Count: Optional[int] = None + Version: Optional[int] = None + +class NeuronDeviceMemoryInfoTypeDef(BaseModel): + SizeInMiB: Optional[int] = None + +class OidcOptionsTypeDef(BaseModel): + Issuer: Optional[str] = None + AuthorizationEndpoint: Optional[str] = None + TokenEndpoint: Optional[str] = None + UserInfoEndpoint: Optional[str] = None + ClientId: Optional[str] = None + ClientSecret: Optional[str] = None + Scope: Optional[str] = None + +class PacketHeaderStatementRequestTypeDef(BaseModel): + SourceAddresses: Optional[Sequence[str]] = None + DestinationAddresses: Optional[Sequence[str]] = None + SourcePorts: Optional[Sequence[str]] = None + DestinationPorts: Optional[Sequence[str]] = None + SourcePrefixLists: Optional[Sequence[str]] = None + DestinationPrefixLists: Optional[Sequence[str]] = None + Protocols: Optional[Sequence[ProtocolType]] = None + +class PacketHeaderStatementTypeDef(BaseModel): + SourceAddresses: Optional[List[str]] = None + DestinationAddresses: Optional[List[str]] = None + SourcePorts: Optional[List[str]] = None + DestinationPorts: Optional[List[str]] = None + SourcePrefixLists: Optional[List[str]] = None + DestinationPrefixLists: Optional[List[str]] = None + Protocols: Optional[List[ProtocolType]] = None + +class RequestFilterPortRangeTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class ResourceStatementRequestTypeDef(BaseModel): + Resources: Optional[Sequence[str]] = None + ResourceTypes: Optional[Sequence[str]] = None + +class ResourceStatementTypeDef(BaseModel): + Resources: Optional[List[str]] = None + ResourceTypes: Optional[List[str]] = None + +class PeeringAttachmentStatusTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class PeeringTgwInfoTypeDef(BaseModel): + TransitGatewayId: Optional[str] = None + CoreNetworkId: Optional[str] = None + OwnerId: Optional[str] = None + Region: Optional[str] = None + +class Phase1DHGroupNumbersListValueTypeDef(BaseModel): + Value: Optional[int] = None + +class Phase1EncryptionAlgorithmsListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class Phase1IntegrityAlgorithmsListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class Phase2DHGroupNumbersListValueTypeDef(BaseModel): + Value: Optional[int] = None + +class Phase2EncryptionAlgorithmsListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class Phase2IntegrityAlgorithmsListValueTypeDef(BaseModel): + Value: Optional[str] = None + +class PriceScheduleTypeDef(BaseModel): + Active: Optional[bool] = None + CurrencyCode: Optional[Literal["USD"]] = None + Price: Optional[float] = None + Term: Optional[int] = None + +class PricingDetailTypeDef(BaseModel): + Count: Optional[int] = None + Price: Optional[float] = None + +class PrivateDnsDetailsTypeDef(BaseModel): + PrivateDnsName: Optional[str] = None + +class PrivateDnsNameConfigurationTypeDef(BaseModel): + State: Optional[DnsNameStateType] = None + Type: Optional[str] = None + Value: Optional[str] = None + Name: Optional[str] = None + +class PrivateDnsNameOptionsOnLaunchTypeDef(BaseModel): + HostnameType: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecord: Optional[bool] = None + EnableResourceNameDnsAAAARecord: Optional[bool] = None + +class PrivateDnsNameOptionsRequestTypeDef(BaseModel): + HostnameType: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecord: Optional[bool] = None + EnableResourceNameDnsAAAARecord: Optional[bool] = None + +class PropagatingVgwTypeDef(BaseModel): + GatewayId: Optional[str] = None + +class ProvisionPublicIpv4PoolCidrRequestRequestTypeDef(BaseModel): + IpamPoolId: str + PoolId: str + NetmaskLength: int + DryRun: Optional[bool] = None + NetworkBorderGroup: Optional[str] = None + +class PublicIpv4PoolRangeTypeDef(BaseModel): + FirstAddress: Optional[str] = None + LastAddress: Optional[str] = None + AddressCount: Optional[int] = None + AvailableAddressCount: Optional[int] = None + +class PurchaseRequestTypeDef(BaseModel): + InstanceCount: int + PurchaseToken: str + +class ReservedInstanceLimitPriceTypeDef(BaseModel): + Amount: Optional[float] = None + CurrencyCode: Optional[Literal["USD"]] = None + +class RebootInstancesRequestInstanceRebootTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class RebootInstancesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + DryRun: Optional[bool] = None + +class RecurringChargeTypeDef(BaseModel): + Amount: Optional[float] = None + Frequency: Optional[Literal["Hourly"]] = None + +class ReferencedSecurityGroupTypeDef(BaseModel): + GroupId: Optional[str] = None + PeeringStatus: Optional[str] = None + UserId: Optional[str] = None + VpcId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + +class RegisterInstanceTagAttributeRequestTypeDef(BaseModel): + IncludeAllTagsOfInstance: Optional[bool] = None + InstanceTagKeys: Optional[Sequence[str]] = None + +class RegisterTransitGatewayMulticastGroupMembersRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + NetworkInterfaceIds: Sequence[str] + GroupIpAddress: Optional[str] = None + DryRun: Optional[bool] = None + +class TransitGatewayMulticastRegisteredGroupMembersTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + RegisteredNetworkInterfaceIds: Optional[List[str]] = None + GroupIpAddress: Optional[str] = None + +class RegisterTransitGatewayMulticastGroupSourcesRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + NetworkInterfaceIds: Sequence[str] + GroupIpAddress: Optional[str] = None + DryRun: Optional[bool] = None + +class TransitGatewayMulticastRegisteredGroupSourcesTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + RegisteredNetworkInterfaceIds: Optional[List[str]] = None + GroupIpAddress: Optional[str] = None + +class RejectTransitGatewayMulticastDomainAssociationsRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class RejectTransitGatewayPeeringAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class RejectTransitGatewayVpcAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + DryRun: Optional[bool] = None + +class RejectVpcEndpointConnectionsRequestRequestTypeDef(BaseModel): + ServiceId: str + VpcEndpointIds: Sequence[str] + DryRun: Optional[bool] = None + +class RejectVpcPeeringConnectionRequestRequestTypeDef(BaseModel): + VpcPeeringConnectionId: str + DryRun: Optional[bool] = None + +class RejectVpcPeeringConnectionRequestVpcPeeringConnectionRejectTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class ReleaseAddressRequestClassicAddressReleaseTypeDef(BaseModel): + AllocationId: Optional[str] = None + PublicIp: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + DryRun: Optional[bool] = None + +class ReleaseAddressRequestRequestTypeDef(BaseModel): + AllocationId: Optional[str] = None + PublicIp: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + DryRun: Optional[bool] = None + +class ReleaseAddressRequestVpcAddressReleaseTypeDef(BaseModel): + AllocationId: Optional[str] = None + PublicIp: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + DryRun: Optional[bool] = None + +class ReleaseHostsRequestRequestTypeDef(BaseModel): + HostIds: Sequence[str] + +class ReleaseIpamPoolAllocationRequestRequestTypeDef(BaseModel): + IpamPoolId: str + Cidr: str + IpamPoolAllocationId: str + DryRun: Optional[bool] = None + +class ReplaceNetworkAclAssociationRequestNetworkAclReplaceAssociationTypeDef(BaseModel): + AssociationId: str + DryRun: Optional[bool] = None + +class ReplaceNetworkAclAssociationRequestRequestTypeDef(BaseModel): + AssociationId: str + NetworkAclId: str + DryRun: Optional[bool] = None + +class ReplaceRouteRequestRequestTypeDef(BaseModel): + RouteTableId: str + DestinationCidrBlock: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DryRun: Optional[bool] = None + VpcEndpointId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + LocalTarget: Optional[bool] = None + NatGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + LocalGatewayId: Optional[str] = None + CarrierGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + +class ReplaceRouteRequestRouteReplaceTypeDef(BaseModel): + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DryRun: Optional[bool] = None + VpcEndpointId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + LocalTarget: Optional[bool] = None + NatGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + LocalGatewayId: Optional[str] = None + CarrierGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + +class ReplaceRouteTableAssociationRequestRequestTypeDef(BaseModel): + AssociationId: str + RouteTableId: str + DryRun: Optional[bool] = None + +class ReplaceRouteTableAssociationRequestRouteTableAssociationReplaceSubnetTypeDef(BaseModel): + RouteTableId: str + DryRun: Optional[bool] = None + +class ReplaceTransitGatewayRouteRequestRequestTypeDef(BaseModel): + DestinationCidrBlock: str + TransitGatewayRouteTableId: str + TransitGatewayAttachmentId: Optional[str] = None + Blackhole: Optional[bool] = None + DryRun: Optional[bool] = None + +class ReplaceVpnTunnelRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + VpnTunnelOutsideIpAddress: str + ApplyPendingMaintenance: Optional[bool] = None + DryRun: Optional[bool] = None + +class ReservedInstancesIdTypeDef(BaseModel): + ReservedInstancesId: Optional[str] = None + +class ResetAddressAttributeRequestRequestTypeDef(BaseModel): + AllocationId: str + Attribute: Literal["domain-name"] + DryRun: Optional[bool] = None + +class ResetEbsDefaultKmsKeyIdRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class ResetFpgaImageAttributeRequestRequestTypeDef(BaseModel): + FpgaImageId: str + DryRun: Optional[bool] = None + Attribute: Optional[Literal["loadPermission"]] = None + +class ResetImageAttributeRequestImageResetAttributeTypeDef(BaseModel): + Attribute: Literal["launchPermission"] + DryRun: Optional[bool] = None + +class ResetImageAttributeRequestRequestTypeDef(BaseModel): + Attribute: Literal["launchPermission"] + ImageId: str + DryRun: Optional[bool] = None + +class ResetInstanceAttributeRequestInstanceResetAttributeTypeDef(BaseModel): + Attribute: InstanceAttributeNameType + DryRun: Optional[bool] = None + +class ResetInstanceAttributeRequestInstanceResetKernelTypeDef(BaseModel): + Attribute: Optional[InstanceAttributeNameType] = None + DryRun: Optional[bool] = None + +class ResetInstanceAttributeRequestInstanceResetRamdiskTypeDef(BaseModel): + Attribute: Optional[InstanceAttributeNameType] = None + DryRun: Optional[bool] = None + +class ResetInstanceAttributeRequestInstanceResetSourceDestCheckTypeDef(BaseModel): + Attribute: Optional[InstanceAttributeNameType] = None + DryRun: Optional[bool] = None + +class ResetInstanceAttributeRequestRequestTypeDef(BaseModel): + Attribute: InstanceAttributeNameType + InstanceId: str + DryRun: Optional[bool] = None + +class ResetNetworkInterfaceAttributeRequestNetworkInterfaceResetAttributeTypeDef(BaseModel): + DryRun: Optional[bool] = None + SourceDestCheck: Optional[str] = None + +class ResetNetworkInterfaceAttributeRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + DryRun: Optional[bool] = None + SourceDestCheck: Optional[str] = None + +class ResetSnapshotAttributeRequestRequestTypeDef(BaseModel): + Attribute: SnapshotAttributeNameType + SnapshotId: str + DryRun: Optional[bool] = None + +class ResetSnapshotAttributeRequestSnapshotResetAttributeTypeDef(BaseModel): + Attribute: SnapshotAttributeNameType + DryRun: Optional[bool] = None + +class RestoreAddressToClassicRequestRequestTypeDef(BaseModel): + PublicIp: str + DryRun: Optional[bool] = None + +class RestoreImageFromRecycleBinRequestRequestTypeDef(BaseModel): + ImageId: str + DryRun: Optional[bool] = None + +class RestoreManagedPrefixListVersionRequestRequestTypeDef(BaseModel): + PrefixListId: str + PreviousVersion: int + CurrentVersion: int + DryRun: Optional[bool] = None + +class RestoreSnapshotFromRecycleBinRequestRequestTypeDef(BaseModel): + SnapshotId: str + DryRun: Optional[bool] = None + +class RestoreSnapshotTierRequestRequestTypeDef(BaseModel): + SnapshotId: str + TemporaryRestoreDays: Optional[int] = None + PermanentRestore: Optional[bool] = None + DryRun: Optional[bool] = None + +class RevokeClientVpnIngressRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + TargetNetworkCidr: str + AccessGroupId: Optional[str] = None + RevokeAllGroups: Optional[bool] = None + DryRun: Optional[bool] = None + +class RouteTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + InstanceOwnerId: Optional[str] = None + NatGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + LocalGatewayId: Optional[str] = None + CarrierGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + Origin: Optional[RouteOriginType] = None + State: Optional[RouteStateType] = None + VpcPeeringConnectionId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + +class S3StorageOutputTypeDef(BaseModel): + AWSAccessKeyId: Optional[str] = None + Bucket: Optional[str] = None + Prefix: Optional[str] = None + UploadPolicy: Optional[bytes] = None + UploadPolicySignature: Optional[str] = None + +class ScheduledInstanceRecurrenceTypeDef(BaseModel): + Frequency: Optional[str] = None + Interval: Optional[int] = None + OccurrenceDaySet: Optional[List[int]] = None + OccurrenceRelativeToEnd: Optional[bool] = None + OccurrenceUnit: Optional[str] = None + +class ScheduledInstancesEbsTypeDef(BaseModel): + DeleteOnTermination: Optional[bool] = None + Encrypted: Optional[bool] = None + Iops: Optional[int] = None + SnapshotId: Optional[str] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[str] = None + +class ScheduledInstancesIamInstanceProfileTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class ScheduledInstancesIpv6AddressTypeDef(BaseModel): + Ipv6Address: Optional[str] = None + +class ScheduledInstancesMonitoringTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class ScheduledInstancesPlacementTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + GroupName: Optional[str] = None + +class ScheduledInstancesPrivateIpAddressConfigTypeDef(BaseModel): + Primary: Optional[bool] = None + PrivateIpAddress: Optional[str] = None + +class TransitGatewayMulticastGroupTypeDef(BaseModel): + GroupIpAddress: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + SubnetId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + ResourceOwnerId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + GroupMember: Optional[bool] = None + GroupSource: Optional[bool] = None + MemberType: Optional[MembershipTypeType] = None + SourceType: Optional[MembershipTypeType] = None + +class SecurityGroupIdentifierTypeDef(BaseModel): + GroupId: Optional[str] = None + GroupName: Optional[str] = None + +class SecurityGroupRuleDescriptionTypeDef(BaseModel): + SecurityGroupRuleId: Optional[str] = None + Description: Optional[str] = None + +class SecurityGroupRuleRequestTypeDef(BaseModel): + IpProtocol: Optional[str] = None + FromPort: Optional[int] = None + ToPort: Optional[int] = None + CidrIpv4: Optional[str] = None + CidrIpv6: Optional[str] = None + PrefixListId: Optional[str] = None + ReferencedGroupId: Optional[str] = None + Description: Optional[str] = None + +class SendDiagnosticInterruptRequestRequestTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + +class ServiceTypeDetailTypeDef(BaseModel): + ServiceType: Optional[ServiceTypeType] = None + +class UserBucketDetailsTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + +class SpotCapacityRebalanceTypeDef(BaseModel): + ReplacementStrategy: Optional[ReplacementStrategyType] = None + TerminationDelay: Optional[int] = None + +class SpotInstanceStateFaultTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class SpotFleetMonitoringTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class SpotInstanceStatusTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + UpdateTime: Optional[datetime] = None + +class StartInstancesRequestInstanceStartTypeDef(BaseModel): + AdditionalInfo: Optional[str] = None + DryRun: Optional[bool] = None + +class StartInstancesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + AdditionalInfo: Optional[str] = None + DryRun: Optional[bool] = None + +class StartVpcEndpointServicePrivateDnsVerificationRequestRequestTypeDef(BaseModel): + ServiceId: str + DryRun: Optional[bool] = None + +class StopInstancesRequestInstanceStopTypeDef(BaseModel): + Hibernate: Optional[bool] = None + DryRun: Optional[bool] = None + Force: Optional[bool] = None + +class StopInstancesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + Hibernate: Optional[bool] = None + DryRun: Optional[bool] = None + Force: Optional[bool] = None + +class SubnetAssociationTypeDef(BaseModel): + SubnetId: Optional[str] = None + State: Optional[TransitGatewayMulitcastDomainAssociationStateType] = None + +class SubnetCidrBlockStateTypeDef(BaseModel): + State: Optional[SubnetCidrBlockStateCodeType] = None + StatusMessage: Optional[str] = None + +class TargetConfigurationTypeDef(BaseModel): + InstanceCount: Optional[int] = None + OfferingId: Optional[str] = None + +class TargetGroupTypeDef(BaseModel): + Arn: Optional[str] = None + +class TerminateClientVpnConnectionsRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + ConnectionId: Optional[str] = None + Username: Optional[str] = None + DryRun: Optional[bool] = None + +class TerminateInstancesRequestInstanceTerminateTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class TerminateInstancesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + DryRun: Optional[bool] = None + +class TrafficMirrorPortRangeTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class TransitGatewayAttachmentAssociationTypeDef(BaseModel): + TransitGatewayRouteTableId: Optional[str] = None + State: Optional[TransitGatewayAssociationStateType] = None + +class TransitGatewayAttachmentBgpConfigurationTypeDef(BaseModel): + TransitGatewayAsn: Optional[int] = None + PeerAsn: Optional[int] = None + TransitGatewayAddress: Optional[str] = None + PeerAddress: Optional[str] = None + BgpStatus: Optional[BgpStatusType] = None + +class TransitGatewayConnectOptionsTypeDef(BaseModel): + Protocol: Optional[Literal["gre"]] = None + +class TransitGatewayMulticastDomainOptionsTypeDef(BaseModel): + Igmpv2Support: Optional[Igmpv2SupportValueType] = None + StaticSourcesSupport: Optional[StaticSourcesSupportValueType] = None + AutoAcceptSharedAssociations: Optional[AutoAcceptSharedAssociationsValueType] = None + +class TransitGatewayOptionsTypeDef(BaseModel): + AmazonSideAsn: Optional[int] = None + TransitGatewayCidrBlocks: Optional[List[str]] = None + AutoAcceptSharedAttachments: Optional[AutoAcceptSharedAttachmentsValueType] = None + DefaultRouteTableAssociation: Optional[DefaultRouteTableAssociationValueType] = None + AssociationDefaultRouteTableId: Optional[str] = None + DefaultRouteTablePropagation: Optional[DefaultRouteTablePropagationValueType] = None + PropagationDefaultRouteTableId: Optional[str] = None + VpnEcmpSupport: Optional[VpnEcmpSupportValueType] = None + DnsSupport: Optional[DnsSupportValueType] = None + SecurityGroupReferencingSupport: Optional[SecurityGroupReferencingSupportValueType] = None + MulticastSupport: Optional[MulticastSupportValueType] = None + +class TransitGatewayPeeringAttachmentOptionsTypeDef(BaseModel): + DynamicRouting: Optional[DynamicRoutingValueType] = None + +class TransitGatewayPolicyRuleMetaDataTypeDef(BaseModel): + MetaDataKey: Optional[str] = None + MetaDataValue: Optional[str] = None + +class TransitGatewayPrefixListAttachmentTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + ResourceId: Optional[str] = None + +class TransitGatewayRouteAttachmentTypeDef(BaseModel): + ResourceId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + +class TransitGatewayVpcAttachmentOptionsTypeDef(BaseModel): + DnsSupport: Optional[DnsSupportValueType] = None + SecurityGroupReferencingSupport: Optional[SecurityGroupReferencingSupportValueType] = None + Ipv6Support: Optional[Ipv6SupportValueType] = None + ApplianceModeSupport: Optional[ApplianceModeSupportValueType] = None + +class UnassignIpv6AddressesRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + Ipv6Addresses: Optional[Sequence[str]] = None + Ipv6Prefixes: Optional[Sequence[str]] = None + +class UnassignPrivateIpAddressesRequestNetworkInterfaceUnassignPrivateIpAddressesTypeDef(BaseModel): + PrivateIpAddresses: Optional[Sequence[str]] = None + Ipv4Prefixes: Optional[Sequence[str]] = None + +class UnassignPrivateIpAddressesRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + PrivateIpAddresses: Optional[Sequence[str]] = None + Ipv4Prefixes: Optional[Sequence[str]] = None + +class UnassignPrivateNatGatewayAddressRequestRequestTypeDef(BaseModel): + NatGatewayId: str + PrivateIpAddresses: Sequence[str] + MaxDrainDurationSeconds: Optional[int] = None + DryRun: Optional[bool] = None + +class UnlockSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + DryRun: Optional[bool] = None + +class UnmonitorInstancesRequestInstanceUnmonitorTypeDef(BaseModel): + DryRun: Optional[bool] = None + +class UnmonitorInstancesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + DryRun: Optional[bool] = None + +class UnsuccessfulInstanceCreditSpecificationItemErrorTypeDef(BaseModel): + Code: Optional[UnsuccessfulInstanceCreditSpecificationErrorCodeType] = None + Message: Optional[str] = None + +class UnsuccessfulItemErrorTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class ValidationErrorTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class VerifiedAccessEndpointEniOptionsTypeDef(BaseModel): + NetworkInterfaceId: Optional[str] = None + Protocol: Optional[VerifiedAccessEndpointProtocolType] = None + Port: Optional[int] = None + +class VerifiedAccessEndpointLoadBalancerOptionsTypeDef(BaseModel): + Protocol: Optional[VerifiedAccessEndpointProtocolType] = None + Port: Optional[int] = None + LoadBalancerArn: Optional[str] = None + SubnetIds: Optional[List[str]] = None + +class VerifiedAccessEndpointStatusTypeDef(BaseModel): + Code: Optional[VerifiedAccessEndpointStatusCodeType] = None + Message: Optional[str] = None + +class VerifiedAccessTrustProviderCondensedTypeDef(BaseModel): + VerifiedAccessTrustProviderId: Optional[str] = None + Description: Optional[str] = None + TrustProviderType: Optional[TrustProviderTypeType] = None + UserTrustProviderType: Optional[UserTrustProviderTypeType] = None + DeviceTrustProviderType: Optional[DeviceTrustProviderTypeType] = None + +class VerifiedAccessLogCloudWatchLogsDestinationOptionsTypeDef(BaseModel): + Enabled: bool + LogGroup: Optional[str] = None + +class VerifiedAccessLogDeliveryStatusTypeDef(BaseModel): + Code: Optional[VerifiedAccessLogDeliveryStatusCodeType] = None + Message: Optional[str] = None + +class VerifiedAccessLogKinesisDataFirehoseDestinationOptionsTypeDef(BaseModel): + Enabled: bool + DeliveryStream: Optional[str] = None + +class VerifiedAccessLogS3DestinationOptionsTypeDef(BaseModel): + Enabled: bool + BucketName: Optional[str] = None + Prefix: Optional[str] = None + BucketOwner: Optional[str] = None + +class VgwTelemetryTypeDef(BaseModel): + AcceptedRouteCount: Optional[int] = None + LastStatusChange: Optional[datetime] = None + OutsideIpAddress: Optional[str] = None + Status: Optional[TelemetryStatusType] = None + StatusMessage: Optional[str] = None + CertificateArn: Optional[str] = None + +class VolumeAttachmentTypeDef(BaseModel): + AttachTime: Optional[datetime] = None + Device: Optional[str] = None + InstanceId: Optional[str] = None + State: Optional[VolumeAttachmentStateType] = None + VolumeId: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + AssociatedResource: Optional[str] = None + InstanceOwningService: Optional[str] = None + +class VolumeStatusActionTypeDef(BaseModel): + Code: Optional[str] = None + Description: Optional[str] = None + EventId: Optional[str] = None + EventType: Optional[str] = None + +class VolumeStatusAttachmentStatusTypeDef(BaseModel): + IoPerformance: Optional[str] = None + InstanceId: Optional[str] = None + +class VolumeStatusDetailsTypeDef(BaseModel): + Name: Optional[VolumeStatusNameType] = None + Status: Optional[str] = None + +class VolumeStatusEventTypeDef(BaseModel): + Description: Optional[str] = None + EventId: Optional[str] = None + EventType: Optional[str] = None + NotAfter: Optional[datetime] = None + NotBefore: Optional[datetime] = None + InstanceId: Optional[str] = None + +class VpcCidrBlockStateTypeDef(BaseModel): + State: Optional[VpcCidrBlockStateCodeType] = None + StatusMessage: Optional[str] = None + +class VpcPeeringConnectionOptionsDescriptionTypeDef(BaseModel): + AllowDnsResolutionFromRemoteVpc: Optional[bool] = None + AllowEgressFromLocalClassicLinkToRemoteVpc: Optional[bool] = None + AllowEgressFromLocalVpcToRemoteClassicLink: Optional[bool] = None + +class VpcPeeringConnectionStateReasonTypeDef(BaseModel): + Code: Optional[VpcPeeringConnectionStateReasonCodeType] = None + Message: Optional[str] = None + +class VpnStaticRouteTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + Source: Optional[Literal["Static"]] = None + State: Optional[VpnStateType] = None + +class WithdrawByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + DryRun: Optional[bool] = None + +class AcceptAddressTransferResultTypeDef(BaseModel): + AddressTransfer: AddressTransferTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptReservedInstancesExchangeQuoteResultTypeDef(BaseModel): + ExchangeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AllocateAddressResultTypeDef(BaseModel): + PublicIp: str + AllocationId: str + PublicIpv4Pool: str + NetworkBorderGroup: str + Domain: DomainTypeType + CustomerOwnedIp: str + CustomerOwnedIpv4Pool: str + CarrierIp: str + ResponseMetadata: ResponseMetadataTypeDef + +class AllocateHostsResultTypeDef(BaseModel): + HostIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ApplySecurityGroupsToClientVpnTargetNetworkResultTypeDef(BaseModel): + SecurityGroupIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class AssignIpv6AddressesResultTypeDef(BaseModel): + AssignedIpv6Addresses: List[str] + AssignedIpv6Prefixes: List[str] + NetworkInterfaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateAddressResultTypeDef(BaseModel): + AssociationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateEnclaveCertificateIamRoleResultTypeDef(BaseModel): + CertificateS3BucketName: str + CertificateS3ObjectKey: str + EncryptionKmsKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachClassicLinkVpcResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class AttachNetworkInterfaceResultTypeDef(BaseModel): + AttachmentId: str + NetworkCardIndex: int + ResponseMetadata: ResponseMetadataTypeDef + +class CancelCapacityReservationResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CancelImageLaunchPermissionResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CancelImportTaskResultTypeDef(BaseModel): + ImportTaskId: str + PreviousState: str + State: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmProductInstanceResultTypeDef(BaseModel): + OwnerId: str + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CopyFpgaImageResultTypeDef(BaseModel): + FpgaImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CopyImageResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFpgaImageResultTypeDef(BaseModel): + FpgaImageId: str + FpgaImageGlobalId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePublicIpv4PoolResultTypeDef(BaseModel): + PoolId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRestoreImageTaskResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRouteResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStoreImageTaskResultTypeDef(BaseModel): + ObjectKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEgressOnlyInternetGatewayResultTypeDef(BaseModel): + ReturnCode: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFpgaImageResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKeyPairResultTypeDef(BaseModel): + Return: bool + KeyPairId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNatGatewayResultTypeDef(BaseModel): + NatGatewayId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkInsightsAccessScopeAnalysisResultTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkInsightsAccessScopeResultTypeDef(BaseModel): + NetworkInsightsAccessScopeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkInsightsAnalysisResultTypeDef(BaseModel): + NetworkInsightsAnalysisId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkInsightsPathResultTypeDef(BaseModel): + NetworkInsightsPathId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkInterfacePermissionResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePublicIpv4PoolResultTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrafficMirrorFilterResultTypeDef(BaseModel): + TrafficMirrorFilterId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrafficMirrorFilterRuleResultTypeDef(BaseModel): + TrafficMirrorFilterRuleId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrafficMirrorSessionResultTypeDef(BaseModel): + TrafficMirrorSessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrafficMirrorTargetResultTypeDef(BaseModel): + TrafficMirrorTargetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcPeeringConnectionResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeprovisionPublicIpv4PoolCidrResultTypeDef(BaseModel): + PoolId: str + DeprovisionedAddresses: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddressTransfersResultTypeDef(BaseModel): + AddressTransfers: List[AddressTransferTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DetachClassicLinkVpcResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableAddressTransferResultTypeDef(BaseModel): + AddressTransfer: AddressTransferTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisableAwsNetworkPerformanceMetricSubscriptionResultTypeDef(BaseModel): + Output: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableEbsEncryptionByDefaultResultTypeDef(BaseModel): + EbsEncryptionByDefault: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableImageBlockPublicAccessResultTypeDef(BaseModel): + ImageBlockPublicAccessState: Literal["unblocked"] + ResponseMetadata: ResponseMetadataTypeDef + +class DisableImageDeprecationResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableImageDeregistrationProtectionResultTypeDef(BaseModel): + Return: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableImageResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableIpamOrganizationAdminAccountResultTypeDef(BaseModel): + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableSerialConsoleAccessResultTypeDef(BaseModel): + SerialConsoleAccessEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableSnapshotBlockPublicAccessResultTypeDef(BaseModel): + State: SnapshotBlockPublicAccessStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DisableVpcClassicLinkDnsSupportResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisableVpcClassicLinkResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateEnclaveCertificateIamRoleResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateTrunkInterfaceResultTypeDef(BaseModel): + Return: bool + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnableAddressTransferResultTypeDef(BaseModel): + AddressTransfer: AddressTransferTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnableAwsNetworkPerformanceMetricSubscriptionResultTypeDef(BaseModel): + Output: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableEbsEncryptionByDefaultResultTypeDef(BaseModel): + EbsEncryptionByDefault: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableImageBlockPublicAccessResultTypeDef(BaseModel): + ImageBlockPublicAccessState: Literal["block-new-sharing"] + ResponseMetadata: ResponseMetadataTypeDef + +class EnableImageDeprecationResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableImageDeregistrationProtectionResultTypeDef(BaseModel): + Return: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnableImageResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableIpamOrganizationAdminAccountResultTypeDef(BaseModel): + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableReachabilityAnalyzerOrganizationSharingResultTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableSerialConsoleAccessResultTypeDef(BaseModel): + SerialConsoleAccessEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableSnapshotBlockPublicAccessResultTypeDef(BaseModel): + State: SnapshotBlockPublicAccessStateType + ResponseMetadata: ResponseMetadataTypeDef + +class EnableVpcClassicLinkDnsSupportResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EnableVpcClassicLinkResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ExportClientVpnClientConfigurationResultTypeDef(BaseModel): + ClientConfiguration: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTransitGatewayRoutesResultTypeDef(BaseModel): + S3Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConsoleOutputResultTypeDef(BaseModel): + InstanceId: str + Output: str + Timestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetConsoleScreenshotResultTypeDef(BaseModel): + ImageData: str + InstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEbsDefaultKmsKeyIdResultTypeDef(BaseModel): + KmsKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEbsEncryptionByDefaultResultTypeDef(BaseModel): + EbsEncryptionByDefault: bool + SseType: SSETypeType + ResponseMetadata: ResponseMetadataTypeDef + +class GetFlowLogsIntegrationTemplateResultTypeDef(BaseModel): + Result: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImageBlockPublicAccessStateResultTypeDef(BaseModel): + ImageBlockPublicAccessState: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceTpmEkPubResultTypeDef(BaseModel): + InstanceId: str + KeyType: EkPubKeyTypeType + KeyFormat: EkPubKeyFormatType + KeyValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceUefiDataResultTypeDef(BaseModel): + InstanceId: str + UefiData: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPasswordDataResultTypeDef(BaseModel): + InstanceId: str + PasswordData: str + Timestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetSerialConsoleAccessStatusResultTypeDef(BaseModel): + SerialConsoleAccessEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetSnapshotBlockPublicAccessStateResultTypeDef(BaseModel): + State: SnapshotBlockPublicAccessStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetVerifiedAccessEndpointPolicyResultTypeDef(BaseModel): + PolicyEnabled: bool + PolicyDocument: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVerifiedAccessGroupPolicyResultTypeDef(BaseModel): + PolicyEnabled: bool + PolicyDocument: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVpnConnectionDeviceSampleConfigurationResultTypeDef(BaseModel): + VpnConnectionDeviceSampleConfiguration: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportClientVpnClientCertificateRevocationListResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class LockSnapshotResultTypeDef(BaseModel): + SnapshotId: str + LockState: LockStateType + LockDuration: int + CoolOffPeriod: int + CoolOffPeriodExpiresOn: datetime + LockCreatedOn: datetime + LockExpiresOn: datetime + LockDurationStartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyAvailabilityZoneGroupResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyCapacityReservationFleetResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyCapacityReservationResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClientVpnEndpointResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEbsDefaultKmsKeyIdResultTypeDef(BaseModel): + KmsKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyFleetResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstanceCapacityReservationAttributesResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstanceMaintenanceOptionsResultTypeDef(BaseModel): + InstanceId: str + AutoRecovery: InstanceAutoRecoveryStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstanceMetadataDefaultsResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstancePlacementResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyPrivateDnsNameOptionsResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReservedInstancesResultTypeDef(BaseModel): + ReservedInstancesModificationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifySecurityGroupRulesResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifySnapshotTierResultTypeDef(BaseModel): + SnapshotId: str + TieringStartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ModifySpotFleetRequestResponseTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpcEndpointConnectionNotificationResultTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpcEndpointResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpcEndpointServiceConfigurationResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpcEndpointServicePayerResponsibilityResultTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpcTenancyResultTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class MoveAddressToVpcResultTypeDef(BaseModel): + AllocationId: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseReservedInstancesOfferingResultTypeDef(BaseModel): + ReservedInstancesId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterImageResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RejectVpcPeeringConnectionResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReleaseIpamPoolAllocationResultTypeDef(BaseModel): + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReplaceNetworkAclAssociationResultTypeDef(BaseModel): + NewAssociationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReplaceVpnTunnelResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RequestSpotFleetResponseTypeDef(BaseModel): + SpotFleetRequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetEbsDefaultKmsKeyIdResultTypeDef(BaseModel): + KmsKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetFpgaImageAttributeResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreAddressToClassicResultTypeDef(BaseModel): + PublicIp: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreImageFromRecycleBinResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreSnapshotFromRecycleBinResultTypeDef(BaseModel): + SnapshotId: str + OutpostArn: str + Description: str + Encrypted: bool + OwnerId: str + Progress: str + StartTime: datetime + State: SnapshotStateType + VolumeId: str + VolumeSize: int + SseType: SSETypeType + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreSnapshotTierResultTypeDef(BaseModel): + SnapshotId: str + RestoreStartTime: datetime + RestoreDuration: int + IsPermanentRestore: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RunScheduledInstancesResultTypeDef(BaseModel): + InstanceIdSet: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartVpcEndpointServicePrivateDnsVerificationResultTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UnassignIpv6AddressesResultTypeDef(BaseModel): + NetworkInterfaceId: str + UnassignedIpv6Addresses: List[str] + UnassignedIpv6Prefixes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UnlockSnapshotResultTypeDef(BaseModel): + SnapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityGroupRuleDescriptionsEgressResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityGroupRuleDescriptionsIngressResultTypeDef(BaseModel): + Return: bool + ResponseMetadata: ResponseMetadataTypeDef + +class VolumeAttachmentResponseTypeDef(BaseModel): + AttachTime: datetime + Device: str + InstanceId: str + State: VolumeAttachmentStateType + VolumeId: str + DeleteOnTermination: bool + AssociatedResource: str + InstanceOwningService: str + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptReservedInstancesExchangeQuoteRequestRequestTypeDef(BaseModel): + ReservedInstanceIds: Sequence[str] + DryRun: Optional[bool] = None + TargetConfigurations: Optional[Sequence[TargetConfigurationRequestTypeDef]] = None + +class GetReservedInstancesExchangeQuoteRequestRequestTypeDef(BaseModel): + ReservedInstanceIds: Sequence[str] + DryRun: Optional[bool] = None + TargetConfigurations: Optional[Sequence[TargetConfigurationRequestTypeDef]] = None + +class AccountAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[AccountAttributeValueTypeDef]] = None + +class DescribeFleetInstancesResultTypeDef(BaseModel): + ActiveInstances: List[ActiveInstanceTypeDef] + FleetId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSpotFleetInstancesResponseTypeDef(BaseModel): + ActiveInstances: List[ActiveInstanceTypeDef] + SpotFleetRequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVpcEndpointServicePermissionsResultTypeDef(BaseModel): + AddedPrincipals: List[AddedPrincipalTypeDef] + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisLoadBalancerTargetTypeDef(BaseModel): + Address: Optional[str] = None + AvailabilityZone: Optional[str] = None + Instance: Optional[AnalysisComponentTypeDef] = None + Port: Optional[int] = None + +class RuleGroupRuleOptionsPairTypeDef(BaseModel): + RuleGroupArn: Optional[str] = None + RuleOptions: Optional[List[RuleOptionTypeDef]] = None + +class AddressAttributeTypeDef(BaseModel): + PublicIp: Optional[str] = None + AllocationId: Optional[str] = None + PtrRecord: Optional[str] = None + PtrRecordUpdate: Optional[PtrUpdateStatusTypeDef] = None + +class AddressTypeDef(BaseModel): + InstanceId: Optional[str] = None + PublicIp: Optional[str] = None + AllocationId: Optional[str] = None + AssociationId: Optional[str] = None + Domain: Optional[DomainTypeType] = None + NetworkInterfaceId: Optional[str] = None + NetworkInterfaceOwnerId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + PublicIpv4Pool: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + CustomerOwnedIp: Optional[str] = None + CustomerOwnedIpv4Pool: Optional[str] = None + CarrierIp: Optional[str] = None + +class AllowedPrincipalTypeDef(BaseModel): + PrincipalType: Optional[PrincipalTypeType] = None + Principal: Optional[str] = None + ServicePermissionId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ServiceId: Optional[str] = None + +class CarrierGatewayTypeDef(BaseModel): + CarrierGatewayId: Optional[str] = None + VpcId: Optional[str] = None + State: Optional[CarrierGatewayStateType] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ClientCreateTagsRequestTypeDef(BaseModel): + Resources: Sequence[str] + Tags: Sequence[TagTypeDef] + DryRun: Optional[bool] = None + +class ClientDeleteTagsRequestTypeDef(BaseModel): + Resources: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + DryRun: Optional[bool] = None + +class CoipPoolTypeDef(BaseModel): + PoolId: Optional[str] = None + PoolCidrs: Optional[List[str]] = None + LocalGatewayRouteTableId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + PoolArn: Optional[str] = None + +class CopySnapshotResultTypeDef(BaseModel): + SnapshotId: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityGroupResultTypeDef(BaseModel): + GroupId: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTagsRequestServiceResourceCreateTagsTypeDef(BaseModel): + Resources: Sequence[str] + Tags: Sequence[TagTypeDef] + DryRun: Optional[bool] = None + +class CustomerGatewayTypeDef(BaseModel): + BgpAsn: Optional[str] = None + CustomerGatewayId: Optional[str] = None + IpAddress: Optional[str] = None + CertificateArn: Optional[str] = None + State: Optional[str] = None + Type: Optional[str] = None + DeviceName: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + BgpAsnExtended: Optional[str] = None + +class Ec2InstanceConnectEndpointTypeDef(BaseModel): + OwnerId: Optional[str] = None + InstanceConnectEndpointId: Optional[str] = None + InstanceConnectEndpointArn: Optional[str] = None + State: Optional[Ec2InstanceConnectEndpointStateType] = None + StateMessage: Optional[str] = None + DnsName: Optional[str] = None + FipsDnsName: Optional[str] = None + NetworkInterfaceIds: Optional[List[str]] = None + VpcId: Optional[str] = None + AvailabilityZone: Optional[str] = None + CreatedAt: Optional[datetime] = None + SubnetId: Optional[str] = None + PreserveClientIp: Optional[bool] = None + SecurityGroupIds: Optional[List[str]] = None + Tags: Optional[List[TagTypeDef]] = None + +class HostReservationTypeDef(BaseModel): + Count: Optional[int] = None + CurrencyCode: Optional[Literal["USD"]] = None + Duration: Optional[int] = None + End: Optional[datetime] = None + HostIdSet: Optional[List[str]] = None + HostReservationId: Optional[str] = None + HourlyPrice: Optional[str] = None + InstanceFamily: Optional[str] = None + OfferingId: Optional[str] = None + PaymentOption: Optional[PaymentOptionType] = None + Start: Optional[datetime] = None + State: Optional[ReservationStateType] = None + UpfrontPrice: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ImportKeyPairResultTypeDef(BaseModel): + KeyFingerprint: str + KeyName: str + KeyPairId: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceCreateTagsRequestTypeDef(BaseModel): + Tags: Sequence[TagTypeDef] + DryRun: Optional[bool] = None + +class InstanceDeleteTagsRequestTypeDef(BaseModel): + Tags: Optional[Sequence[TagTypeDef]] = None + DryRun: Optional[bool] = None + +class InstanceEventWindowAssociationRequestTypeDef(BaseModel): + InstanceIds: Optional[Sequence[str]] = None + InstanceTags: Optional[Sequence[TagTypeDef]] = None + DedicatedHostIds: Optional[Sequence[str]] = None + +class InstanceEventWindowAssociationTargetTypeDef(BaseModel): + InstanceIds: Optional[List[str]] = None + Tags: Optional[List[TagTypeDef]] = None + DedicatedHostIds: Optional[List[str]] = None + +class InstanceEventWindowDisassociationRequestTypeDef(BaseModel): + InstanceIds: Optional[Sequence[str]] = None + InstanceTags: Optional[Sequence[TagTypeDef]] = None + DedicatedHostIds: Optional[Sequence[str]] = None + +class IpamResourceDiscoveryAssociationTypeDef(BaseModel): + OwnerId: Optional[str] = None + IpamResourceDiscoveryAssociationId: Optional[str] = None + IpamResourceDiscoveryAssociationArn: Optional[str] = None + IpamResourceDiscoveryId: Optional[str] = None + IpamId: Optional[str] = None + IpamArn: Optional[str] = None + IpamRegion: Optional[str] = None + IsDefault: Optional[bool] = None + ResourceDiscoveryStatus: Optional[IpamAssociatedResourceDiscoveryStatusType] = None + State: Optional[IpamResourceDiscoveryAssociationStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class IpamScopeTypeDef(BaseModel): + OwnerId: Optional[str] = None + IpamScopeId: Optional[str] = None + IpamScopeArn: Optional[str] = None + IpamArn: Optional[str] = None + IpamRegion: Optional[str] = None + IpamScopeType: Optional[IpamScopeTypeType] = None + IsDefault: Optional[bool] = None + Description: Optional[str] = None + PoolCount: Optional[int] = None + State: Optional[IpamScopeStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class KeyPairInfoTypeDef(BaseModel): + KeyPairId: Optional[str] = None + KeyFingerprint: Optional[str] = None + KeyName: Optional[str] = None + KeyType: Optional[KeyTypeType] = None + Tags: Optional[List[TagTypeDef]] = None + PublicKey: Optional[str] = None + CreateTime: Optional[datetime] = None + +class KeyPairTypeDef(BaseModel): + KeyFingerprint: str + KeyMaterial: str + KeyName: str + KeyPairId: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LaunchTemplateTagSpecificationRequestTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class LaunchTemplateTagSpecificationTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class LaunchTemplateTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + CreateTime: Optional[datetime] = None + CreatedBy: Optional[str] = None + DefaultVersionNumber: Optional[int] = None + LatestVersionNumber: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + +class LocalGatewayRouteTableVirtualInterfaceGroupAssociationTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociationId: Optional[str] = None + LocalGatewayVirtualInterfaceGroupId: Optional[str] = None + LocalGatewayId: Optional[str] = None + LocalGatewayRouteTableId: Optional[str] = None + LocalGatewayRouteTableArn: Optional[str] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class LocalGatewayRouteTableVpcAssociationTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociationId: Optional[str] = None + LocalGatewayRouteTableId: Optional[str] = None + LocalGatewayRouteTableArn: Optional[str] = None + LocalGatewayId: Optional[str] = None + VpcId: Optional[str] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class LocalGatewayTypeDef(BaseModel): + LocalGatewayId: Optional[str] = None + OutpostArn: Optional[str] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class LocalGatewayVirtualInterfaceGroupTypeDef(BaseModel): + LocalGatewayVirtualInterfaceGroupId: Optional[str] = None + LocalGatewayVirtualInterfaceIds: Optional[List[str]] = None + LocalGatewayId: Optional[str] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class LocalGatewayVirtualInterfaceTypeDef(BaseModel): + LocalGatewayVirtualInterfaceId: Optional[str] = None + LocalGatewayId: Optional[str] = None + Vlan: Optional[int] = None + LocalAddress: Optional[str] = None + PeerAddress: Optional[str] = None + LocalBgpAsn: Optional[int] = None + PeerBgpAsn: Optional[int] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ManagedPrefixListTypeDef(BaseModel): + PrefixListId: Optional[str] = None + AddressFamily: Optional[str] = None + State: Optional[PrefixListStateType] = None + StateMessage: Optional[str] = None + PrefixListArn: Optional[str] = None + PrefixListName: Optional[str] = None + MaxEntries: Optional[int] = None + Version: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + OwnerId: Optional[str] = None + +class NetworkInsightsAccessScopeAnalysisTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: Optional[str] = None + NetworkInsightsAccessScopeAnalysisArn: Optional[str] = None + NetworkInsightsAccessScopeId: Optional[str] = None + Status: Optional[AnalysisStatusType] = None + StatusMessage: Optional[str] = None + WarningMessage: Optional[str] = None + StartDate: Optional[datetime] = None + EndDate: Optional[datetime] = None + FindingsFound: Optional[FindingsFoundType] = None + AnalyzedEniCount: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + +class NetworkInsightsAccessScopeTypeDef(BaseModel): + NetworkInsightsAccessScopeId: Optional[str] = None + NetworkInsightsAccessScopeArn: Optional[str] = None + CreatedDate: Optional[datetime] = None + UpdatedDate: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class PlacementGroupTypeDef(BaseModel): + GroupName: Optional[str] = None + State: Optional[PlacementGroupStateType] = None + Strategy: Optional[PlacementStrategyType] = None + PartitionCount: Optional[int] = None + GroupId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + GroupArn: Optional[str] = None + SpreadLevel: Optional[SpreadLevelType] = None + +class ReplaceRootVolumeTaskTypeDef(BaseModel): + ReplaceRootVolumeTaskId: Optional[str] = None + InstanceId: Optional[str] = None + TaskState: Optional[ReplaceRootVolumeTaskStateType] = None + StartTime: Optional[str] = None + CompleteTime: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ImageId: Optional[str] = None + SnapshotId: Optional[str] = None + DeleteReplacedRootVolume: Optional[bool] = None + +class SecurityGroupForVpcTypeDef(BaseModel): + Description: Optional[str] = None + GroupName: Optional[str] = None + OwnerId: Optional[str] = None + GroupId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + PrimaryVpcId: Optional[str] = None + +class SnapshotInfoTypeDef(BaseModel): + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + Encrypted: Optional[bool] = None + VolumeId: Optional[str] = None + State: Optional[SnapshotStateType] = None + VolumeSize: Optional[int] = None + StartTime: Optional[datetime] = None + Progress: Optional[str] = None + OwnerId: Optional[str] = None + SnapshotId: Optional[str] = None + OutpostArn: Optional[str] = None + SseType: Optional[SSETypeType] = None + +class SnapshotResponseTypeDef(BaseModel): + DataEncryptionKeyId: str + Description: str + Encrypted: bool + KmsKeyId: str + OwnerId: str + Progress: str + SnapshotId: str + StartTime: datetime + State: SnapshotStateType + StateMessage: str + VolumeId: str + VolumeSize: int + OwnerAlias: str + OutpostArn: str + Tags: List[TagTypeDef] + StorageTier: StorageTierType + RestoreExpiryTime: datetime + SseType: SSETypeType + ResponseMetadata: ResponseMetadataTypeDef + +class SnapshotTierStatusTypeDef(BaseModel): + SnapshotId: Optional[str] = None + VolumeId: Optional[str] = None + Status: Optional[SnapshotStateType] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + StorageTier: Optional[StorageTierType] = None + LastTieringStartTime: Optional[datetime] = None + LastTieringProgress: Optional[int] = None + LastTieringOperationStatus: Optional[TieringOperationStatusType] = None + LastTieringOperationStatusDetail: Optional[str] = None + ArchivalCompleteTime: Optional[datetime] = None + RestoreExpiryTime: Optional[datetime] = None + +class SnapshotTypeDef(BaseModel): + DataEncryptionKeyId: Optional[str] = None + Description: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + OwnerId: Optional[str] = None + Progress: Optional[str] = None + SnapshotId: Optional[str] = None + StartTime: Optional[datetime] = None + State: Optional[SnapshotStateType] = None + StateMessage: Optional[str] = None + VolumeId: Optional[str] = None + VolumeSize: Optional[int] = None + OwnerAlias: Optional[str] = None + OutpostArn: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + StorageTier: Optional[StorageTierType] = None + RestoreExpiryTime: Optional[datetime] = None + SseType: Optional[SSETypeType] = None + +class SpotFleetTagSpecificationExtraOutputTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class SpotFleetTagSpecificationOutputTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class SpotFleetTagSpecificationTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class SubnetCidrReservationTypeDef(BaseModel): + SubnetCidrReservationId: Optional[str] = None + SubnetId: Optional[str] = None + Cidr: Optional[str] = None + ReservationType: Optional[SubnetCidrReservationTypeType] = None + OwnerId: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagSpecificationExtraOutputTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagSpecificationOutputTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagSpecificationTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TrafficMirrorSessionTypeDef(BaseModel): + TrafficMirrorSessionId: Optional[str] = None + TrafficMirrorTargetId: Optional[str] = None + TrafficMirrorFilterId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + OwnerId: Optional[str] = None + PacketLength: Optional[int] = None + SessionNumber: Optional[int] = None + VirtualNetworkId: Optional[int] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class TrafficMirrorTargetTypeDef(BaseModel): + TrafficMirrorTargetId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NetworkLoadBalancerArn: Optional[str] = None + Type: Optional[TrafficMirrorTargetTypeType] = None + Description: Optional[str] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + GatewayLoadBalancerEndpointId: Optional[str] = None + +class TransitGatewayPolicyTableTypeDef(BaseModel): + TransitGatewayPolicyTableId: Optional[str] = None + TransitGatewayId: Optional[str] = None + State: Optional[TransitGatewayPolicyTableStateType] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayRouteTableAnnouncementTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncementId: Optional[str] = None + TransitGatewayId: Optional[str] = None + CoreNetworkId: Optional[str] = None + PeerTransitGatewayId: Optional[str] = None + PeerCoreNetworkId: Optional[str] = None + PeeringAttachmentId: Optional[str] = None + AnnouncementDirection: Optional[TransitGatewayRouteTableAnnouncementDirectionType] = None + TransitGatewayRouteTableId: Optional[str] = None + State: Optional[TransitGatewayRouteTableAnnouncementStateType] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayRouteTableTypeDef(BaseModel): + TransitGatewayRouteTableId: Optional[str] = None + TransitGatewayId: Optional[str] = None + State: Optional[TransitGatewayRouteTableStateType] = None + DefaultAssociationRouteTable: Optional[bool] = None + DefaultPropagationRouteTable: Optional[bool] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TrunkInterfaceAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + BranchInterfaceId: Optional[str] = None + TrunkInterfaceId: Optional[str] = None + InterfaceProtocol: Optional[InterfaceProtocolTypeType] = None + VlanId: Optional[int] = None + GreKey: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + +class VpcClassicLinkTypeDef(BaseModel): + ClassicLinkEnabled: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + VpcId: Optional[str] = None + +class VpcCreateTagsRequestTypeDef(BaseModel): + Tags: Sequence[TagTypeDef] + DryRun: Optional[bool] = None + +class AllocateIpamPoolCidrResultTypeDef(BaseModel): + IpamPoolAllocation: IpamPoolAllocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIpamPoolAllocationsResultTypeDef(BaseModel): + IpamPoolAllocations: List[IpamPoolAllocationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AnalysisAclRuleTypeDef(BaseModel): + Cidr: Optional[str] = None + Egress: Optional[bool] = None + PortRange: Optional[PortRangeTypeDef] = None + Protocol: Optional[str] = None + RuleAction: Optional[str] = None + RuleNumber: Optional[int] = None + +class AnalysisPacketHeaderTypeDef(BaseModel): + DestinationAddresses: Optional[List[str]] = None + DestinationPortRanges: Optional[List[PortRangeTypeDef]] = None + Protocol: Optional[str] = None + SourceAddresses: Optional[List[str]] = None + SourcePortRanges: Optional[List[PortRangeTypeDef]] = None + +class AnalysisSecurityGroupRuleTypeDef(BaseModel): + Cidr: Optional[str] = None + Direction: Optional[str] = None + SecurityGroupId: Optional[str] = None + PortRange: Optional[PortRangeTypeDef] = None + PrefixListId: Optional[str] = None + Protocol: Optional[str] = None + +class FirewallStatefulRuleTypeDef(BaseModel): + RuleGroupArn: Optional[str] = None + Sources: Optional[List[str]] = None + Destinations: Optional[List[str]] = None + SourcePorts: Optional[List[PortRangeTypeDef]] = None + DestinationPorts: Optional[List[PortRangeTypeDef]] = None + Protocol: Optional[str] = None + RuleAction: Optional[str] = None + Direction: Optional[str] = None + +class FirewallStatelessRuleTypeDef(BaseModel): + RuleGroupArn: Optional[str] = None + Sources: Optional[List[str]] = None + Destinations: Optional[List[str]] = None + SourcePorts: Optional[List[PortRangeTypeDef]] = None + DestinationPorts: Optional[List[PortRangeTypeDef]] = None + Protocols: Optional[List[int]] = None + RuleAction: Optional[str] = None + Priority: Optional[int] = None + +class AssociateIpamByoasnResultTypeDef(BaseModel): + AsnAssociation: AsnAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ByoipCidrTypeDef(BaseModel): + Cidr: Optional[str] = None + Description: Optional[str] = None + AsnAssociations: Optional[List[AsnAssociationTypeDef]] = None + StatusMessage: Optional[str] = None + State: Optional[ByoipCidrStateType] = None + NetworkBorderGroup: Optional[str] = None + +class DisassociateIpamByoasnResultTypeDef(BaseModel): + AsnAssociation: AsnAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionIpamByoasnRequestRequestTypeDef(BaseModel): + IpamId: str + Asn: str + AsnAuthorizationContext: AsnAuthorizationContextTypeDef + DryRun: Optional[bool] = None + +class AssignPrivateIpAddressesResultTypeDef(BaseModel): + NetworkInterfaceId: str + AssignedPrivateIpAddresses: List[AssignedPrivateIpAddressTypeDef] + AssignedIpv4Prefixes: List[Ipv4PrefixSpecificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssignPrivateNatGatewayAddressResultTypeDef(BaseModel): + NatGatewayId: str + NatGatewayAddresses: List[NatGatewayAddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateNatGatewayAddressResultTypeDef(BaseModel): + NatGatewayId: str + NatGatewayAddresses: List[NatGatewayAddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateNatGatewayAddressResultTypeDef(BaseModel): + NatGatewayId: str + NatGatewayAddresses: List[NatGatewayAddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UnassignPrivateNatGatewayAddressResultTypeDef(BaseModel): + NatGatewayId: str + NatGatewayAddresses: List[NatGatewayAddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateClientVpnTargetNetworkResultTypeDef(BaseModel): + AssociationId: str + Status: AssociationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateClientVpnTargetNetworkResultTypeDef(BaseModel): + AssociationId: str + Status: AssociationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TargetNetworkTypeDef(BaseModel): + AssociationId: Optional[str] = None + VpcId: Optional[str] = None + TargetNetworkId: Optional[str] = None + ClientVpnEndpointId: Optional[str] = None + Status: Optional[AssociationStatusTypeDef] = None + SecurityGroups: Optional[List[str]] = None + +class AssociateIamInstanceProfileRequestRequestTypeDef(BaseModel): + IamInstanceProfile: IamInstanceProfileSpecificationTypeDef + InstanceId: str + +class ReplaceIamInstanceProfileAssociationRequestRequestTypeDef(BaseModel): + IamInstanceProfile: IamInstanceProfileSpecificationTypeDef + AssociationId: str + +class AssociateRouteTableResultTypeDef(BaseModel): + AssociationId: str + AssociationState: RouteTableAssociationStateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReplaceRouteTableAssociationResultTypeDef(BaseModel): + NewAssociationId: str + AssociationState: RouteTableAssociationStateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RouteTableAssociationTypeDef(BaseModel): + Main: Optional[bool] = None + RouteTableAssociationId: Optional[str] = None + RouteTableId: Optional[str] = None + SubnetId: Optional[str] = None + GatewayId: Optional[str] = None + AssociationState: Optional[RouteTableAssociationStateTypeDef] = None + +class AssociateTransitGatewayPolicyTableResultTypeDef(BaseModel): + Association: TransitGatewayPolicyTableAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateTransitGatewayPolicyTableResultTypeDef(BaseModel): + Association: TransitGatewayPolicyTableAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayPolicyTableAssociationsResultTypeDef(BaseModel): + Associations: List[TransitGatewayPolicyTableAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateTransitGatewayRouteTableResultTypeDef(BaseModel): + Association: TransitGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateTransitGatewayRouteTableResultTypeDef(BaseModel): + Association: TransitGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssociatedEnclaveCertificateIamRolesResultTypeDef(BaseModel): + AssociatedRoles: List[AssociatedRoleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AthenaIntegrationTypeDef(BaseModel): + IntegrationResultS3DestinationArn: str + PartitionLoadFrequency: PartitionLoadFrequencyType + PartitionStartDate: Optional[TimestampTypeDef] = None + PartitionEndDate: Optional[TimestampTypeDef] = None + +class ClientDataTypeDef(BaseModel): + Comment: Optional[str] = None + UploadEnd: Optional[TimestampTypeDef] = None + UploadSize: Optional[float] = None + UploadStart: Optional[TimestampTypeDef] = None + +class DescribeCapacityBlockOfferingsRequestRequestTypeDef(BaseModel): + InstanceType: str + InstanceCount: int + CapacityDurationHours: int + DryRun: Optional[bool] = None + StartDateRange: Optional[TimestampTypeDef] = None + EndDateRange: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeFleetHistoryRequestRequestTypeDef(BaseModel): + FleetId: str + StartTime: TimestampTypeDef + DryRun: Optional[bool] = None + EventType: Optional[FleetEventTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeSpotFleetRequestHistoryRequestRequestTypeDef(BaseModel): + SpotFleetRequestId: str + StartTime: TimestampTypeDef + DryRun: Optional[bool] = None + EventType: Optional[EventTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class EnableImageDeprecationRequestRequestTypeDef(BaseModel): + ImageId: str + DeprecateAt: TimestampTypeDef + DryRun: Optional[bool] = None + +class GetIpamAddressHistoryRequestRequestTypeDef(BaseModel): + Cidr: str + IpamScopeId: str + DryRun: Optional[bool] = None + VpcId: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LaunchTemplateSpotMarketOptionsRequestTypeDef(BaseModel): + MaxPrice: Optional[str] = None + SpotInstanceType: Optional[SpotInstanceTypeType] = None + BlockDurationMinutes: Optional[int] = None + ValidUntil: Optional[TimestampTypeDef] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + +class LockSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + LockMode: LockModeType + DryRun: Optional[bool] = None + CoolOffPeriod: Optional[int] = None + LockDuration: Optional[int] = None + ExpirationDate: Optional[TimestampTypeDef] = None + +class ModifyCapacityReservationFleetRequestRequestTypeDef(BaseModel): + CapacityReservationFleetId: str + TotalTargetCapacity: Optional[int] = None + EndDate: Optional[TimestampTypeDef] = None + DryRun: Optional[bool] = None + RemoveEndDate: Optional[bool] = None + +class ModifyCapacityReservationRequestRequestTypeDef(BaseModel): + CapacityReservationId: str + InstanceCount: Optional[int] = None + EndDate: Optional[TimestampTypeDef] = None + EndDateType: Optional[EndDateTypeType] = None + Accept: Optional[bool] = None + DryRun: Optional[bool] = None + AdditionalInfo: Optional[str] = None + +class ModifyInstanceEventStartTimeRequestRequestTypeDef(BaseModel): + InstanceId: str + InstanceEventId: str + NotBefore: TimestampTypeDef + DryRun: Optional[bool] = None + +class ReportInstanceStatusRequestInstanceReportStatusTypeDef(BaseModel): + ReasonCodes: Sequence[ReportInstanceReasonCodesType] + Status: ReportStatusTypeType + Description: Optional[str] = None + DryRun: Optional[bool] = None + EndTime: Optional[TimestampTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + +class ReportInstanceStatusRequestRequestTypeDef(BaseModel): + Instances: Sequence[str] + ReasonCodes: Sequence[ReportInstanceReasonCodesType] + Status: ReportStatusTypeType + Description: Optional[str] = None + DryRun: Optional[bool] = None + EndTime: Optional[TimestampTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + +class SlotDateTimeRangeRequestTypeDef(BaseModel): + EarliestTime: TimestampTypeDef + LatestTime: TimestampTypeDef + +class SlotStartTimeRangeRequestTypeDef(BaseModel): + EarliestTime: Optional[TimestampTypeDef] = None + LatestTime: Optional[TimestampTypeDef] = None + +class SpotMarketOptionsTypeDef(BaseModel): + MaxPrice: Optional[str] = None + SpotInstanceType: Optional[SpotInstanceTypeType] = None + BlockDurationMinutes: Optional[int] = None + ValidUntil: Optional[TimestampTypeDef] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + +class AttachVpnGatewayResultTypeDef(BaseModel): + VpcAttachment: VpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VpnGatewayTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + State: Optional[VpnStateType] = None + Type: Optional[Literal["ipsec.1"]] = None + VpcAttachments: Optional[List[VpcAttachmentTypeDef]] = None + VpnGatewayId: Optional[str] = None + AmazonSideAsn: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + +class AttachmentEnaSrdSpecificationTypeDef(BaseModel): + EnaSrdEnabled: Optional[bool] = None + EnaSrdUdpSpecification: Optional[AttachmentEnaSrdUdpSpecificationTypeDef] = None + +class DescribeVpcAttributeResultTypeDef(BaseModel): + VpcId: str + EnableDnsHostnames: AttributeBooleanValueTypeDef + EnableDnsSupport: AttributeBooleanValueTypeDef + EnableNetworkAddressUsageMetrics: AttributeBooleanValueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifySubnetAttributeRequestRequestTypeDef(BaseModel): + SubnetId: str + AssignIpv6AddressOnCreation: Optional[AttributeBooleanValueTypeDef] = None + MapPublicIpOnLaunch: Optional[AttributeBooleanValueTypeDef] = None + MapCustomerOwnedIpOnLaunch: Optional[AttributeBooleanValueTypeDef] = None + CustomerOwnedIpv4Pool: Optional[str] = None + EnableDns64: Optional[AttributeBooleanValueTypeDef] = None + PrivateDnsHostnameTypeOnLaunch: Optional[HostnameTypeType] = None + EnableResourceNameDnsARecordOnLaunch: Optional[AttributeBooleanValueTypeDef] = None + EnableResourceNameDnsAAAARecordOnLaunch: Optional[AttributeBooleanValueTypeDef] = None + EnableLniAtDeviceIndex: Optional[int] = None + DisableLniAtDeviceIndex: Optional[AttributeBooleanValueTypeDef] = None + +class ModifyVolumeAttributeRequestRequestTypeDef(BaseModel): + VolumeId: str + AutoEnableIO: Optional[AttributeBooleanValueTypeDef] = None + DryRun: Optional[bool] = None + +class ModifyVolumeAttributeRequestVolumeModifyAttributeTypeDef(BaseModel): + AutoEnableIO: Optional[AttributeBooleanValueTypeDef] = None + DryRun: Optional[bool] = None + +class ModifyVpcAttributeRequestRequestTypeDef(BaseModel): + VpcId: str + EnableDnsHostnames: Optional[AttributeBooleanValueTypeDef] = None + EnableDnsSupport: Optional[AttributeBooleanValueTypeDef] = None + EnableNetworkAddressUsageMetrics: Optional[AttributeBooleanValueTypeDef] = None + +class ModifyVpcAttributeRequestVpcModifyAttributeTypeDef(BaseModel): + EnableDnsHostnames: Optional[AttributeBooleanValueTypeDef] = None + EnableDnsSupport: Optional[AttributeBooleanValueTypeDef] = None + EnableNetworkAddressUsageMetrics: Optional[AttributeBooleanValueTypeDef] = None + +class DhcpConfigurationTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[List[AttributeValueTypeDef]] = None + +class AuthorizationRuleTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + Description: Optional[str] = None + GroupId: Optional[str] = None + AccessAll: Optional[bool] = None + DestinationCidr: Optional[str] = None + Status: Optional[ClientVpnAuthorizationRuleStatusTypeDef] = None + +class AuthorizeClientVpnIngressResultTypeDef(BaseModel): + Status: ClientVpnAuthorizationRuleStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeClientVpnIngressResultTypeDef(BaseModel): + Status: ClientVpnAuthorizationRuleStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AvailabilityZoneTypeDef(BaseModel): + State: Optional[AvailabilityZoneStateType] = None + OptInStatus: Optional[AvailabilityZoneOptInStatusType] = None + Messages: Optional[List[AvailabilityZoneMessageTypeDef]] = None + RegionName: Optional[str] = None + ZoneName: Optional[str] = None + ZoneId: Optional[str] = None + GroupName: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + ZoneType: Optional[str] = None + ParentZoneName: Optional[str] = None + ParentZoneId: Optional[str] = None + +class AvailableCapacityTypeDef(BaseModel): + AvailableInstanceCapacity: Optional[List[InstanceCapacityTypeDef]] = None + AvailableVCpus: Optional[int] = None + +class BlobAttributeValueTypeDef(BaseModel): + Value: Optional[BlobTypeDef] = None + +class S3StorageTypeDef(BaseModel): + AWSAccessKeyId: Optional[str] = None + Bucket: Optional[str] = None + Prefix: Optional[str] = None + UploadPolicy: Optional[BlobTypeDef] = None + UploadPolicySignature: Optional[str] = None + +class BlockDeviceMappingTypeDef(BaseModel): + DeviceName: Optional[str] = None + VirtualName: Optional[str] = None + Ebs: Optional[EbsBlockDeviceTypeDef] = None + NoDevice: Optional[str] = None + +class DeprovisionIpamByoasnResultTypeDef(BaseModel): + Byoasn: ByoasnTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpamByoasnResultTypeDef(BaseModel): + Byoasns: List[ByoasnTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ProvisionIpamByoasnResultTypeDef(BaseModel): + Byoasn: ByoasnTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailedCapacityReservationFleetCancellationResultTypeDef(BaseModel): + CapacityReservationFleetId: Optional[str] = None + CancelCapacityReservationFleetError: Optional[ CancelCapacityReservationFleetErrorTypeDef ] = None + +class CancelSpotFleetRequestsErrorItemTypeDef(BaseModel): + Error: Optional[CancelSpotFleetRequestsErrorTypeDef] = None + SpotFleetRequestId: Optional[str] = None + +class CancelSpotInstanceRequestsResultTypeDef(BaseModel): + CancelledSpotInstanceRequests: List[CancelledSpotInstanceRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CapacityReservationTypeDef(BaseModel): + CapacityReservationId: Optional[str] = None + OwnerId: Optional[str] = None + CapacityReservationArn: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + InstanceType: Optional[str] = None + InstancePlatform: Optional[CapacityReservationInstancePlatformType] = None + AvailabilityZone: Optional[str] = None + Tenancy: Optional[CapacityReservationTenancyType] = None + TotalInstanceCount: Optional[int] = None + AvailableInstanceCount: Optional[int] = None + EbsOptimized: Optional[bool] = None + EphemeralStorage: Optional[bool] = None + State: Optional[CapacityReservationStateType] = None + StartDate: Optional[datetime] = None + EndDate: Optional[datetime] = None + EndDateType: Optional[EndDateTypeType] = None + InstanceMatchCriteria: Optional[InstanceMatchCriteriaType] = None + CreateDate: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + OutpostArn: Optional[str] = None + CapacityReservationFleetId: Optional[str] = None + PlacementGroupArn: Optional[str] = None + CapacityAllocations: Optional[List[CapacityAllocationTypeDef]] = None + ReservationType: Optional[CapacityReservationTypeType] = None + +class DescribeCapacityBlockOfferingsResultTypeDef(BaseModel): + CapacityBlockOfferings: List[CapacityBlockOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CapacityReservationFleetTypeDef(BaseModel): + CapacityReservationFleetId: Optional[str] = None + CapacityReservationFleetArn: Optional[str] = None + State: Optional[CapacityReservationFleetStateType] = None + TotalTargetCapacity: Optional[int] = None + TotalFulfilledCapacity: Optional[float] = None + Tenancy: Optional[Literal["default"]] = None + EndDate: Optional[datetime] = None + CreateTime: Optional[datetime] = None + InstanceMatchCriteria: Optional[Literal["open"]] = None + AllocationStrategy: Optional[str] = None + InstanceTypeSpecifications: Optional[List[FleetCapacityReservationTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateCapacityReservationFleetResultTypeDef(BaseModel): + CapacityReservationFleetId: str + State: CapacityReservationFleetStateType + TotalTargetCapacity: int + TotalFulfilledCapacity: float + InstanceMatchCriteria: Literal["open"] + AllocationStrategy: str + CreateTime: datetime + EndDate: datetime + Tenancy: Literal["default"] + FleetCapacityReservations: List[FleetCapacityReservationTypeDef] + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupsForCapacityReservationResultTypeDef(BaseModel): + CapacityReservationGroups: List[CapacityReservationGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class OnDemandOptionsRequestTypeDef(BaseModel): + AllocationStrategy: Optional[FleetOnDemandAllocationStrategyType] = None + CapacityReservationOptions: Optional[CapacityReservationOptionsRequestTypeDef] = None + SingleInstanceType: Optional[bool] = None + SingleAvailabilityZone: Optional[bool] = None + MinTargetCapacity: Optional[int] = None + MaxTotalPrice: Optional[str] = None + +class OnDemandOptionsTypeDef(BaseModel): + AllocationStrategy: Optional[FleetOnDemandAllocationStrategyType] = None + CapacityReservationOptions: Optional[CapacityReservationOptionsTypeDef] = None + SingleInstanceType: Optional[bool] = None + SingleAvailabilityZone: Optional[bool] = None + MinTargetCapacity: Optional[int] = None + MaxTotalPrice: Optional[str] = None + +class CapacityReservationSpecificationResponseTypeDef(BaseModel): + CapacityReservationPreference: Optional[CapacityReservationPreferenceType] = None + CapacityReservationTarget: Optional[CapacityReservationTargetResponseTypeDef] = None + +class LaunchTemplateCapacityReservationSpecificationResponseTypeDef(BaseModel): + CapacityReservationPreference: Optional[CapacityReservationPreferenceType] = None + CapacityReservationTarget: Optional[CapacityReservationTargetResponseTypeDef] = None + +class CapacityReservationSpecificationTypeDef(BaseModel): + CapacityReservationPreference: Optional[CapacityReservationPreferenceType] = None + CapacityReservationTarget: Optional[CapacityReservationTargetTypeDef] = None + +class LaunchTemplateCapacityReservationSpecificationRequestTypeDef(BaseModel): + CapacityReservationPreference: Optional[CapacityReservationPreferenceType] = None + CapacityReservationTarget: Optional[CapacityReservationTargetTypeDef] = None + +class DescribeVpcClassicLinkDnsSupportResultTypeDef(BaseModel): + Vpcs: List[ClassicLinkDnsSupportTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ClassicLinkInstanceTypeDef(BaseModel): + Groups: Optional[List[GroupIdentifierTypeDef]] = None + InstanceId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + VpcId: Optional[str] = None + +class ClassicLoadBalancersConfigExtraOutputTypeDef(BaseModel): + ClassicLoadBalancers: Optional[List[ClassicLoadBalancerTypeDef]] = None + +class ClassicLoadBalancersConfigOutputTypeDef(BaseModel): + ClassicLoadBalancers: Optional[List[ClassicLoadBalancerTypeDef]] = None + +class ClassicLoadBalancersConfigTypeDef(BaseModel): + ClassicLoadBalancers: Optional[Sequence[ClassicLoadBalancerTypeDef]] = None + +class ExportClientVpnClientCertificateRevocationListResultTypeDef(BaseModel): + CertificateRevocationList: str + Status: ClientCertificateRevocationListStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClientConnectResponseOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + LambdaFunctionArn: Optional[str] = None + Status: Optional[ClientVpnEndpointAttributeStatusTypeDef] = None + +class ClientVpnAuthenticationRequestTypeDef(BaseModel): + Type: Optional[ClientVpnAuthenticationTypeType] = None + ActiveDirectory: Optional[DirectoryServiceAuthenticationRequestTypeDef] = None + MutualAuthentication: Optional[CertificateAuthenticationRequestTypeDef] = None + FederatedAuthentication: Optional[FederatedAuthenticationRequestTypeDef] = None + +class ClientVpnAuthenticationTypeDef(BaseModel): + Type: Optional[ClientVpnAuthenticationTypeType] = None + ActiveDirectory: Optional[DirectoryServiceAuthenticationTypeDef] = None + MutualAuthentication: Optional[CertificateAuthenticationTypeDef] = None + FederatedAuthentication: Optional[FederatedAuthenticationTypeDef] = None + +class ClientVpnConnectionTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + Timestamp: Optional[str] = None + ConnectionId: Optional[str] = None + Username: Optional[str] = None + ConnectionEstablishedTime: Optional[str] = None + IngressBytes: Optional[str] = None + EgressBytes: Optional[str] = None + IngressPackets: Optional[str] = None + EgressPackets: Optional[str] = None + ClientIp: Optional[str] = None + CommonName: Optional[str] = None + Status: Optional[ClientVpnConnectionStatusTypeDef] = None + ConnectionEndTime: Optional[str] = None + PostureComplianceStatuses: Optional[List[str]] = None + +class TerminateConnectionStatusTypeDef(BaseModel): + ConnectionId: Optional[str] = None + PreviousStatus: Optional[ClientVpnConnectionStatusTypeDef] = None + CurrentStatus: Optional[ClientVpnConnectionStatusTypeDef] = None + +class CreateClientVpnEndpointResultTypeDef(BaseModel): + ClientVpnEndpointId: str + Status: ClientVpnEndpointStatusTypeDef + DnsName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClientVpnEndpointResultTypeDef(BaseModel): + Status: ClientVpnEndpointStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClientVpnRouteTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + DestinationCidr: Optional[str] = None + TargetSubnet: Optional[str] = None + Type: Optional[str] = None + Origin: Optional[str] = None + Status: Optional[ClientVpnRouteStatusTypeDef] = None + Description: Optional[str] = None + +class CreateClientVpnRouteResultTypeDef(BaseModel): + Status: ClientVpnRouteStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClientVpnRouteResultTypeDef(BaseModel): + Status: ClientVpnRouteStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VpnTunnelLogOptionsSpecificationTypeDef(BaseModel): + CloudWatchLogOptions: Optional[CloudWatchLogOptionsSpecificationTypeDef] = None + +class VpnTunnelLogOptionsTypeDef(BaseModel): + CloudWatchLogOptions: Optional[CloudWatchLogOptionsTypeDef] = None + +class GetCoipPoolUsageResultTypeDef(BaseModel): + CoipPoolId: str + CoipAddressUsages: List[CoipAddressUsageTypeDef] + LocalGatewayRouteTableId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateCoipCidrResultTypeDef(BaseModel): + CoipCidr: CoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCoipCidrResultTypeDef(BaseModel): + CoipCidr: CoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcEndpointConnectionNotificationResultTypeDef(BaseModel): + ConnectionNotification: ConnectionNotificationTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcEndpointConnectionNotificationsResultTypeDef(BaseModel): + ConnectionNotificationSet: List[ConnectionNotificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyInstanceEventWindowRequestRequestTypeDef(BaseModel): + InstanceEventWindowId: str + DryRun: Optional[bool] = None + Name: Optional[str] = None + TimeRanges: Optional[Sequence[InstanceEventWindowTimeRangeRequestTypeDef]] = None + CronExpression: Optional[str] = None + +class ModifyIpamPoolRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Description: Optional[str] = None + AutoImport: Optional[bool] = None + AllocationMinNetmaskLength: Optional[int] = None + AllocationMaxNetmaskLength: Optional[int] = None + AllocationDefaultNetmaskLength: Optional[int] = None + ClearAllocationDefaultNetmaskLength: Optional[bool] = None + AddAllocationResourceTags: Optional[Sequence[RequestIpamResourceTagTypeDef]] = None + RemoveAllocationResourceTags: Optional[Sequence[RequestIpamResourceTagTypeDef]] = None + +class CreateLocalGatewayRouteResultTypeDef(BaseModel): + Route: LocalGatewayRouteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLocalGatewayRouteResultTypeDef(BaseModel): + Route: LocalGatewayRouteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyLocalGatewayRouteResultTypeDef(BaseModel): + Route: LocalGatewayRouteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchLocalGatewayRoutesResultTypeDef(BaseModel): + Routes: List[LocalGatewayRouteTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateNetworkAclEntryRequestNetworkAclCreateEntryTypeDef(BaseModel): + Egress: bool + Protocol: str + RuleAction: RuleActionType + RuleNumber: int + CidrBlock: Optional[str] = None + DryRun: Optional[bool] = None + IcmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + Ipv6CidrBlock: Optional[str] = None + PortRange: Optional[PortRangeTypeDef] = None + +class CreateNetworkAclEntryRequestRequestTypeDef(BaseModel): + Egress: bool + NetworkAclId: str + Protocol: str + RuleAction: RuleActionType + RuleNumber: int + CidrBlock: Optional[str] = None + DryRun: Optional[bool] = None + IcmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + Ipv6CidrBlock: Optional[str] = None + PortRange: Optional[PortRangeTypeDef] = None + +class NetworkAclEntryTypeDef(BaseModel): + CidrBlock: Optional[str] = None + Egress: Optional[bool] = None + IcmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + Ipv6CidrBlock: Optional[str] = None + PortRange: Optional[PortRangeTypeDef] = None + Protocol: Optional[str] = None + RuleAction: Optional[RuleActionType] = None + RuleNumber: Optional[int] = None + +class ReplaceNetworkAclEntryRequestNetworkAclReplaceEntryTypeDef(BaseModel): + Egress: bool + Protocol: str + RuleAction: RuleActionType + RuleNumber: int + CidrBlock: Optional[str] = None + DryRun: Optional[bool] = None + IcmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + Ipv6CidrBlock: Optional[str] = None + PortRange: Optional[PortRangeTypeDef] = None + +class ReplaceNetworkAclEntryRequestRequestTypeDef(BaseModel): + Egress: bool + NetworkAclId: str + Protocol: str + RuleAction: RuleActionType + RuleNumber: int + CidrBlock: Optional[str] = None + DryRun: Optional[bool] = None + IcmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + Ipv6CidrBlock: Optional[str] = None + PortRange: Optional[PortRangeTypeDef] = None + +class CreateReservedInstancesListingRequestRequestTypeDef(BaseModel): + ClientToken: str + InstanceCount: int + PriceSchedules: Sequence[PriceScheduleSpecificationTypeDef] + ReservedInstancesId: str + +class CreateStoreImageTaskRequestRequestTypeDef(BaseModel): + ImageId: str + Bucket: str + S3ObjectTags: Optional[Sequence[S3ObjectTagTypeDef]] = None + DryRun: Optional[bool] = None + +class ModifyTrafficMirrorFilterRuleRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterRuleId: str + TrafficDirection: Optional[TrafficDirectionType] = None + RuleNumber: Optional[int] = None + RuleAction: Optional[TrafficMirrorRuleActionType] = None + DestinationPortRange: Optional[TrafficMirrorPortRangeRequestTypeDef] = None + SourcePortRange: Optional[TrafficMirrorPortRangeRequestTypeDef] = None + Protocol: Optional[int] = None + DestinationCidrBlock: Optional[str] = None + SourceCidrBlock: Optional[str] = None + Description: Optional[str] = None + RemoveFields: Optional[Sequence[TrafficMirrorFilterRuleFieldType]] = None + DryRun: Optional[bool] = None + +class ModifyVerifiedAccessEndpointPolicyRequestRequestTypeDef(BaseModel): + VerifiedAccessEndpointId: str + PolicyEnabled: Optional[bool] = None + PolicyDocument: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationRequestTypeDef] = None + +class ModifyVerifiedAccessGroupPolicyRequestRequestTypeDef(BaseModel): + VerifiedAccessGroupId: str + PolicyEnabled: Optional[bool] = None + PolicyDocument: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationRequestTypeDef] = None + +class CreateVolumePermissionModificationsTypeDef(BaseModel): + Add: Optional[Sequence[CreateVolumePermissionTypeDef]] = None + Remove: Optional[Sequence[CreateVolumePermissionTypeDef]] = None + +class ModifyVpcEndpointRequestRequestTypeDef(BaseModel): + VpcEndpointId: str + DryRun: Optional[bool] = None + ResetPolicy: Optional[bool] = None + PolicyDocument: Optional[str] = None + AddRouteTableIds: Optional[Sequence[str]] = None + RemoveRouteTableIds: Optional[Sequence[str]] = None + AddSubnetIds: Optional[Sequence[str]] = None + RemoveSubnetIds: Optional[Sequence[str]] = None + AddSecurityGroupIds: Optional[Sequence[str]] = None + RemoveSecurityGroupIds: Optional[Sequence[str]] = None + IpAddressType: Optional[IpAddressTypeType] = None + DnsOptions: Optional[DnsOptionsSpecificationTypeDef] = None + PrivateDnsEnabled: Optional[bool] = None + SubnetConfigurations: Optional[Sequence[SubnetConfigurationTypeDef]] = None + +class GetAwsNetworkPerformanceDataRequestRequestTypeDef(BaseModel): + DataQueries: Optional[Sequence[DataQueryTypeDef]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DataResponseTypeDef(BaseModel): + Id: Optional[str] = None + Source: Optional[str] = None + Destination: Optional[str] = None + Metric: Optional[Literal["aggregate-latency"]] = None + Statistic: Optional[Literal["p50"]] = None + Period: Optional[PeriodTypeType] = None + MetricPoints: Optional[List[MetricPointTypeDef]] = None + +class DeleteFleetErrorItemTypeDef(BaseModel): + Error: Optional[DeleteFleetErrorTypeDef] = None + FleetId: Optional[str] = None + +class DeleteInstanceEventWindowResultTypeDef(BaseModel): + InstanceEventWindowState: InstanceEventWindowStateChangeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLaunchTemplateVersionsResponseErrorItemTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + VersionNumber: Optional[int] = None + ResponseError: Optional[ResponseErrorTypeDef] = None + +class FailedQueuedPurchaseDeletionTypeDef(BaseModel): + Error: Optional[DeleteQueuedReservedInstancesErrorTypeDef] = None + ReservedInstancesId: Optional[str] = None + +class DeregisterInstanceEventNotificationAttributesRequestRequestTypeDef(BaseModel): + InstanceTagAttribute: DeregisterInstanceTagAttributeRequestTypeDef + DryRun: Optional[bool] = None + +class DeregisterInstanceEventNotificationAttributesResultTypeDef(BaseModel): + InstanceTagAttribute: InstanceTagNotificationAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInstanceEventNotificationAttributesResultTypeDef(BaseModel): + InstanceTagAttribute: InstanceTagNotificationAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterInstanceEventNotificationAttributesResultTypeDef(BaseModel): + InstanceTagAttribute: InstanceTagNotificationAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterTransitGatewayMulticastGroupMembersResultTypeDef(BaseModel): + DeregisteredMulticastGroupMembers: TransitGatewayMulticastDeregisteredGroupMembersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterTransitGatewayMulticastGroupSourcesResultTypeDef(BaseModel): + DeregisteredMulticastGroupSources: TransitGatewayMulticastDeregisteredGroupSourcesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddressTransfersRequestDescribeAddressTransfersPaginateTypeDef(BaseModel): + AllocationIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAddressesAttributeRequestDescribeAddressesAttributePaginateTypeDef(BaseModel): + AllocationIds: Optional[Sequence[str]] = None + Attribute: Optional[Literal["domain-name"]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeByoipCidrsRequestDescribeByoipCidrsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCapacityBlockOfferingsRequestDescribeCapacityBlockOfferingsPaginateTypeDef(BaseModel): + InstanceType: str + InstanceCount: int + CapacityDurationHours: int + DryRun: Optional[bool] = None + StartDateRange: Optional[TimestampTypeDef] = None + EndDateRange: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePrincipalIdFormatRequestDescribePrincipalIdFormatPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Resources: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSpotFleetInstancesRequestDescribeSpotFleetInstancesPaginateTypeDef(BaseModel): + SpotFleetRequestId: str + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSpotFleetRequestsRequestDescribeSpotFleetRequestsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + SpotFleetRequestIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStaleSecurityGroupsRequestDescribeStaleSecurityGroupsPaginateTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcClassicLinkDnsSupportRequestDescribeVpcClassicLinkDnsSupportPaginateTypeDef(BaseModel): + VpcIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAssociatedIpv6PoolCidrsRequestGetAssociatedIpv6PoolCidrsPaginateTypeDef(BaseModel): + PoolId: str + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAwsNetworkPerformanceDataRequestGetAwsNetworkPerformanceDataPaginateTypeDef(BaseModel): + DataQueries: Optional[Sequence[DataQueryTypeDef]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetGroupsForCapacityReservationRequestGetGroupsForCapacityReservationPaginateTypeDef(BaseModel): + CapacityReservationId: str + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIpamAddressHistoryRequestGetIpamAddressHistoryPaginateTypeDef(BaseModel): + Cidr: str + IpamScopeId: str + DryRun: Optional[bool] = None + VpcId: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetManagedPrefixListAssociationsRequestGetManagedPrefixListAssociationsPaginateTypeDef(BaseModel): + PrefixListId: str + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetManagedPrefixListEntriesRequestGetManagedPrefixListEntriesPaginateTypeDef(BaseModel): + PrefixListId: str + DryRun: Optional[bool] = None + TargetVersion: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetNetworkInsightsAccessScopeAnalysisFindingsRequestGetNetworkInsightsAccessScopeAnalysisFindingsPaginateTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: str + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetVpnConnectionDeviceTypesRequestGetVpnConnectionDeviceTypesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImagesInRecycleBinRequestListImagesInRecycleBinPaginateTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSnapshotsInRecycleBinRequestListSnapshotsInRecycleBinPaginateTypeDef(BaseModel): + SnapshotIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAddressesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PublicIps: Optional[Sequence[str]] = None + AllocationIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class DescribeAvailabilityZonesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + ZoneNames: Optional[Sequence[str]] = None + ZoneIds: Optional[Sequence[str]] = None + AllAvailabilityZones: Optional[bool] = None + DryRun: Optional[bool] = None + +class DescribeAwsNetworkPerformanceMetricSubscriptionsRequestDescribeAwsNetworkPerformanceMetricSubscriptionsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAwsNetworkPerformanceMetricSubscriptionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeBundleTasksRequestRequestTypeDef(BaseModel): + BundleIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeCapacityReservationFleetsRequestRequestTypeDef(BaseModel): + CapacityReservationFleetIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeCapacityReservationsRequestDescribeCapacityReservationsPaginateTypeDef(BaseModel): + CapacityReservationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCapacityReservationsRequestRequestTypeDef(BaseModel): + CapacityReservationIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeCarrierGatewaysRequestDescribeCarrierGatewaysPaginateTypeDef(BaseModel): + CarrierGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCarrierGatewaysRequestRequestTypeDef(BaseModel): + CarrierGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeClassicLinkInstancesRequestDescribeClassicLinkInstancesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + InstanceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClassicLinkInstancesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + InstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeClientVpnAuthorizationRulesRequestDescribeClientVpnAuthorizationRulesPaginateTypeDef(BaseModel): + ClientVpnEndpointId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClientVpnAuthorizationRulesRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + +class DescribeClientVpnConnectionsRequestDescribeClientVpnConnectionsPaginateTypeDef(BaseModel): + ClientVpnEndpointId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClientVpnConnectionsRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class DescribeClientVpnEndpointsRequestDescribeClientVpnEndpointsPaginateTypeDef(BaseModel): + ClientVpnEndpointIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClientVpnEndpointsRequestRequestTypeDef(BaseModel): + ClientVpnEndpointIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeClientVpnRoutesRequestDescribeClientVpnRoutesPaginateTypeDef(BaseModel): + ClientVpnEndpointId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClientVpnRoutesRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeClientVpnTargetNetworksRequestDescribeClientVpnTargetNetworksPaginateTypeDef(BaseModel): + ClientVpnEndpointId: str + AssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClientVpnTargetNetworksRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + AssociationIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeCoipPoolsRequestDescribeCoipPoolsPaginateTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCoipPoolsRequestRequestTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeCustomerGatewaysRequestRequestTypeDef(BaseModel): + CustomerGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeDhcpOptionsRequestDescribeDhcpOptionsPaginateTypeDef(BaseModel): + DhcpOptionsIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDhcpOptionsRequestRequestTypeDef(BaseModel): + DhcpOptionsIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeEgressOnlyInternetGatewaysRequestDescribeEgressOnlyInternetGatewaysPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + EgressOnlyInternetGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEgressOnlyInternetGatewaysRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + EgressOnlyInternetGatewayIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeElasticGpusRequestRequestTypeDef(BaseModel): + ElasticGpuIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeExportImageTasksRequestDescribeExportImageTasksPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ExportImageTaskIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeExportImageTasksRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ExportImageTaskIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeExportTasksRequestRequestTypeDef(BaseModel): + ExportTaskIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeFastLaunchImagesRequestDescribeFastLaunchImagesPaginateTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFastLaunchImagesRequestRequestTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeFastSnapshotRestoresRequestDescribeFastSnapshotRestoresPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFastSnapshotRestoresRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeFleetInstancesRequestRequestTypeDef(BaseModel): + FleetId: str + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeFleetsRequestDescribeFleetsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + FleetIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + FleetIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeFlowLogsRequestDescribeFlowLogsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + FlowLogIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFlowLogsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + FlowLogIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFpgaImagesRequestDescribeFpgaImagesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + FpgaImageIds: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFpgaImagesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + FpgaImageIds: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeHostReservationOfferingsRequestDescribeHostReservationOfferingsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxDuration: Optional[int] = None + MinDuration: Optional[int] = None + OfferingId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeHostReservationOfferingsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxDuration: Optional[int] = None + MaxResults: Optional[int] = None + MinDuration: Optional[int] = None + NextToken: Optional[str] = None + OfferingId: Optional[str] = None + +class DescribeHostReservationsRequestDescribeHostReservationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + HostReservationIdSet: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeHostReservationsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + HostReservationIdSet: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeHostsRequestDescribeHostsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + HostIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeHostsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + HostIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeIamInstanceProfileAssociationsRequestDescribeIamInstanceProfileAssociationsPaginateTypeDef(BaseModel): + AssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIamInstanceProfileAssociationsRequestRequestTypeDef(BaseModel): + AssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeImagesRequestDescribeImagesPaginateTypeDef(BaseModel): + ExecutableUsers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImageIds: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + IncludeDeprecated: Optional[bool] = None + IncludeDisabled: Optional[bool] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImagesRequestRequestTypeDef(BaseModel): + ExecutableUsers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImageIds: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + IncludeDeprecated: Optional[bool] = None + IncludeDisabled: Optional[bool] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeImportImageTasksRequestDescribeImportImageTasksPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImportTaskIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImportImageTasksRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImportTaskIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeImportSnapshotTasksRequestDescribeImportSnapshotTasksPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImportTaskIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImportSnapshotTasksRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImportTaskIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceConnectEndpointsRequestDescribeInstanceConnectEndpointsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceConnectEndpointIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceConnectEndpointsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceConnectEndpointIds: Optional[Sequence[str]] = None + +class DescribeInstanceCreditSpecificationsRequestDescribeInstanceCreditSpecificationsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceCreditSpecificationsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceEventWindowsRequestDescribeInstanceEventWindowsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + InstanceEventWindowIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceEventWindowsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + InstanceEventWindowIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceStatusRequestDescribeInstanceStatusPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + IncludeAllInstances: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceStatusRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + IncludeAllInstances: Optional[bool] = None + +class DescribeInstanceTopologyRequestDescribeInstanceTopologyPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + InstanceIds: Optional[Sequence[str]] = None + GroupNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceTopologyRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + InstanceIds: Optional[Sequence[str]] = None + GroupNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeInstanceTypeOfferingsRequestDescribeInstanceTypeOfferingsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + LocationType: Optional[LocationTypeType] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceTypeOfferingsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + LocationType: Optional[LocationTypeType] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceTypesRequestDescribeInstanceTypesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + InstanceTypes: Optional[Sequence[InstanceTypeType]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceTypesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + InstanceTypes: Optional[Sequence[InstanceTypeType]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstancesRequestDescribeInstancesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstancesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInternetGatewaysRequestDescribeInternetGatewaysPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + InternetGatewayIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInternetGatewaysRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + InternetGatewayIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeIpamPoolsRequestDescribeIpamPoolsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IpamPoolIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpamPoolsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IpamPoolIds: Optional[Sequence[str]] = None + +class DescribeIpamResourceDiscoveriesRequestDescribeIpamResourceDiscoveriesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + IpamResourceDiscoveryIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpamResourceDiscoveriesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + IpamResourceDiscoveryIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeIpamResourceDiscoveryAssociationsRequestDescribeIpamResourceDiscoveryAssociationsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + IpamResourceDiscoveryAssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpamResourceDiscoveryAssociationsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + IpamResourceDiscoveryAssociationIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeIpamScopesRequestDescribeIpamScopesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IpamScopeIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpamScopesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IpamScopeIds: Optional[Sequence[str]] = None + +class DescribeIpamsRequestDescribeIpamsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IpamIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpamsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IpamIds: Optional[Sequence[str]] = None + +class DescribeIpv6PoolsRequestDescribeIpv6PoolsPaginateTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpv6PoolsRequestRequestTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeKeyPairsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + KeyNames: Optional[Sequence[str]] = None + KeyPairIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + IncludePublicKey: Optional[bool] = None + +class DescribeLaunchTemplateVersionsRequestDescribeLaunchTemplateVersionsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Versions: Optional[Sequence[str]] = None + MinVersion: Optional[str] = None + MaxVersion: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ResolveAlias: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLaunchTemplateVersionsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Versions: Optional[Sequence[str]] = None + MinVersion: Optional[str] = None + MaxVersion: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ResolveAlias: Optional[bool] = None + +class DescribeLaunchTemplatesRequestDescribeLaunchTemplatesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + LaunchTemplateIds: Optional[Sequence[str]] = None + LaunchTemplateNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLaunchTemplatesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + LaunchTemplateIds: Optional[Sequence[str]] = None + LaunchTemplateNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequestDescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsPaginateTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeLocalGatewayRouteTableVpcAssociationsRequestDescribeLocalGatewayRouteTableVpcAssociationsPaginateTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLocalGatewayRouteTableVpcAssociationsRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeLocalGatewayRouteTablesRequestDescribeLocalGatewayRouteTablesPaginateTypeDef(BaseModel): + LocalGatewayRouteTableIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLocalGatewayRouteTablesRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeLocalGatewayVirtualInterfaceGroupsRequestDescribeLocalGatewayVirtualInterfaceGroupsPaginateTypeDef(BaseModel): + LocalGatewayVirtualInterfaceGroupIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLocalGatewayVirtualInterfaceGroupsRequestRequestTypeDef(BaseModel): + LocalGatewayVirtualInterfaceGroupIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeLocalGatewayVirtualInterfacesRequestDescribeLocalGatewayVirtualInterfacesPaginateTypeDef(BaseModel): + LocalGatewayVirtualInterfaceIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLocalGatewayVirtualInterfacesRequestRequestTypeDef(BaseModel): + LocalGatewayVirtualInterfaceIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeLocalGatewaysRequestDescribeLocalGatewaysPaginateTypeDef(BaseModel): + LocalGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLocalGatewaysRequestRequestTypeDef(BaseModel): + LocalGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeLockedSnapshotsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SnapshotIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class DescribeMacHostsRequestDescribeMacHostsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + HostIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMacHostsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + HostIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeManagedPrefixListsRequestDescribeManagedPrefixListsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PrefixListIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeManagedPrefixListsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PrefixListIds: Optional[Sequence[str]] = None + +class DescribeMovingAddressesRequestDescribeMovingAddressesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PublicIps: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMovingAddressesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PublicIps: Optional[Sequence[str]] = None + +class DescribeNatGatewaysRequestDescribeNatGatewaysPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NatGatewayIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNatGatewaysRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NatGatewayIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class DescribeNetworkAclsRequestDescribeNetworkAclsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NetworkAclIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkAclsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NetworkAclIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeNetworkInsightsAccessScopeAnalysesRequestDescribeNetworkInsightsAccessScopeAnalysesPaginateTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisIds: Optional[Sequence[str]] = None + NetworkInsightsAccessScopeId: Optional[str] = None + AnalysisStartTimeBegin: Optional[TimestampTypeDef] = None + AnalysisStartTimeEnd: Optional[TimestampTypeDef] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkInsightsAccessScopeAnalysesRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisIds: Optional[Sequence[str]] = None + NetworkInsightsAccessScopeId: Optional[str] = None + AnalysisStartTimeBegin: Optional[TimestampTypeDef] = None + AnalysisStartTimeEnd: Optional[TimestampTypeDef] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + +class DescribeNetworkInsightsAccessScopesRequestDescribeNetworkInsightsAccessScopesPaginateTypeDef(BaseModel): + NetworkInsightsAccessScopeIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkInsightsAccessScopesRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + +class DescribeNetworkInsightsAnalysesRequestDescribeNetworkInsightsAnalysesPaginateTypeDef(BaseModel): + NetworkInsightsAnalysisIds: Optional[Sequence[str]] = None + NetworkInsightsPathId: Optional[str] = None + AnalysisStartTime: Optional[TimestampTypeDef] = None + AnalysisEndTime: Optional[TimestampTypeDef] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkInsightsAnalysesRequestRequestTypeDef(BaseModel): + NetworkInsightsAnalysisIds: Optional[Sequence[str]] = None + NetworkInsightsPathId: Optional[str] = None + AnalysisStartTime: Optional[TimestampTypeDef] = None + AnalysisEndTime: Optional[TimestampTypeDef] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + +class DescribeNetworkInsightsPathsRequestDescribeNetworkInsightsPathsPaginateTypeDef(BaseModel): + NetworkInsightsPathIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkInsightsPathsRequestRequestTypeDef(BaseModel): + NetworkInsightsPathIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + +class DescribeNetworkInterfacePermissionsRequestDescribeNetworkInterfacePermissionsPaginateTypeDef(BaseModel): + NetworkInterfacePermissionIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkInterfacePermissionsRequestRequestTypeDef(BaseModel): + NetworkInterfacePermissionIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeNetworkInterfacesRequestDescribeNetworkInterfacesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NetworkInterfaceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNetworkInterfacesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NetworkInterfaceIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribePlacementGroupsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + GroupNames: Optional[Sequence[str]] = None + GroupIds: Optional[Sequence[str]] = None + +class DescribePrefixListsRequestDescribePrefixListsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PrefixListIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePrefixListsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PrefixListIds: Optional[Sequence[str]] = None + +class DescribePublicIpv4PoolsRequestDescribePublicIpv4PoolsPaginateTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePublicIpv4PoolsRequestRequestTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeRegionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + RegionNames: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + AllRegions: Optional[bool] = None + +class DescribeReplaceRootVolumeTasksRequestDescribeReplaceRootVolumeTasksPaginateTypeDef(BaseModel): + ReplaceRootVolumeTaskIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplaceRootVolumeTasksRequestRequestTypeDef(BaseModel): + ReplaceRootVolumeTaskIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeReservedInstancesListingsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + ReservedInstancesId: Optional[str] = None + ReservedInstancesListingId: Optional[str] = None + +class DescribeReservedInstancesModificationsRequestDescribeReservedInstancesModificationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + ReservedInstancesModificationIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedInstancesModificationsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + ReservedInstancesModificationIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class DescribeReservedInstancesOfferingsRequestDescribeReservedInstancesOfferingsPaginateTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeMarketplace: Optional[bool] = None + InstanceType: Optional[InstanceTypeType] = None + MaxDuration: Optional[int] = None + MaxInstanceCount: Optional[int] = None + MinDuration: Optional[int] = None + OfferingClass: Optional[OfferingClassTypeType] = None + ProductDescription: Optional[RIProductDescriptionType] = None + ReservedInstancesOfferingIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + InstanceTenancy: Optional[TenancyType] = None + OfferingType: Optional[OfferingTypeValuesType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedInstancesOfferingsRequestRequestTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeMarketplace: Optional[bool] = None + InstanceType: Optional[InstanceTypeType] = None + MaxDuration: Optional[int] = None + MaxInstanceCount: Optional[int] = None + MinDuration: Optional[int] = None + OfferingClass: Optional[OfferingClassTypeType] = None + ProductDescription: Optional[RIProductDescriptionType] = None + ReservedInstancesOfferingIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + InstanceTenancy: Optional[TenancyType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + OfferingType: Optional[OfferingTypeValuesType] = None + +class DescribeReservedInstancesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + OfferingClass: Optional[OfferingClassTypeType] = None + ReservedInstancesIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + OfferingType: Optional[OfferingTypeValuesType] = None + +class DescribeRouteTablesRequestDescribeRouteTablesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + RouteTableIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRouteTablesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + RouteTableIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSecurityGroupRulesRequestDescribeSecurityGroupRulesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SecurityGroupRuleIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSecurityGroupRulesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SecurityGroupRuleIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSecurityGroupsRequestDescribeSecurityGroupsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + GroupIds: Optional[Sequence[str]] = None + GroupNames: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSecurityGroupsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + GroupIds: Optional[Sequence[str]] = None + GroupNames: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSnapshotTierStatusRequestDescribeSnapshotTierStatusPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotTierStatusRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSnapshotsRequestDescribeSnapshotsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + OwnerIds: Optional[Sequence[str]] = None + RestorableByUserIds: Optional[Sequence[str]] = None + SnapshotIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + OwnerIds: Optional[Sequence[str]] = None + RestorableByUserIds: Optional[Sequence[str]] = None + SnapshotIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class DescribeSpotInstanceRequestsRequestDescribeSpotInstanceRequestsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + SpotInstanceRequestIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSpotInstanceRequestsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + SpotInstanceRequestIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSpotPriceHistoryRequestDescribeSpotPriceHistoryPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + AvailabilityZone: Optional[str] = None + DryRun: Optional[bool] = None + EndTime: Optional[TimestampTypeDef] = None + InstanceTypes: Optional[Sequence[InstanceTypeType]] = None + ProductDescriptions: Optional[Sequence[str]] = None + StartTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSpotPriceHistoryRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + AvailabilityZone: Optional[str] = None + DryRun: Optional[bool] = None + EndTime: Optional[TimestampTypeDef] = None + InstanceTypes: Optional[Sequence[InstanceTypeType]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ProductDescriptions: Optional[Sequence[str]] = None + StartTime: Optional[TimestampTypeDef] = None + +class DescribeStoreImageTasksRequestDescribeStoreImageTasksPaginateTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStoreImageTasksRequestRequestTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSubnetsRequestDescribeSubnetsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SubnetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSubnetsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SubnetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeTagsRequestDescribeTagsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTagsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTrafficMirrorFilterRulesRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterRuleIds: Optional[Sequence[str]] = None + TrafficMirrorFilterId: Optional[str] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTrafficMirrorFiltersRequestDescribeTrafficMirrorFiltersPaginateTypeDef(BaseModel): + TrafficMirrorFilterIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTrafficMirrorFiltersRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTrafficMirrorSessionsRequestDescribeTrafficMirrorSessionsPaginateTypeDef(BaseModel): + TrafficMirrorSessionIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTrafficMirrorSessionsRequestRequestTypeDef(BaseModel): + TrafficMirrorSessionIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTrafficMirrorTargetsRequestDescribeTrafficMirrorTargetsPaginateTypeDef(BaseModel): + TrafficMirrorTargetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTrafficMirrorTargetsRequestRequestTypeDef(BaseModel): + TrafficMirrorTargetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeTransitGatewayAttachmentsRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayConnectPeersRequestDescribeTransitGatewayConnectPeersPaginateTypeDef(BaseModel): + TransitGatewayConnectPeerIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayConnectPeersRequestRequestTypeDef(BaseModel): + TransitGatewayConnectPeerIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayConnectsRequestDescribeTransitGatewayConnectsPaginateTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayConnectsRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayMulticastDomainsRequestDescribeTransitGatewayMulticastDomainsPaginateTypeDef(BaseModel): + TransitGatewayMulticastDomainIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayMulticastDomainsRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayPeeringAttachmentsRequestDescribeTransitGatewayPeeringAttachmentsPaginateTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayPeeringAttachmentsRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayPolicyTablesRequestDescribeTransitGatewayPolicyTablesPaginateTypeDef(BaseModel): + TransitGatewayPolicyTableIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayPolicyTablesRequestRequestTypeDef(BaseModel): + TransitGatewayPolicyTableIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayRouteTableAnnouncementsRequestDescribeTransitGatewayRouteTableAnnouncementsPaginateTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncementIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayRouteTableAnnouncementsRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncementIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayRouteTablesRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewayVpcAttachmentsRequestDescribeTransitGatewayVpcAttachmentsPaginateTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewayVpcAttachmentsRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTransitGatewaysRequestDescribeTransitGatewaysPaginateTypeDef(BaseModel): + TransitGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTransitGatewaysRequestRequestTypeDef(BaseModel): + TransitGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeTrunkInterfaceAssociationsRequestDescribeTrunkInterfaceAssociationsPaginateTypeDef(BaseModel): + AssociationIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTrunkInterfaceAssociationsRequestRequestTypeDef(BaseModel): + AssociationIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeVerifiedAccessEndpointsRequestDescribeVerifiedAccessEndpointsPaginateTypeDef(BaseModel): + VerifiedAccessEndpointIds: Optional[Sequence[str]] = None + VerifiedAccessInstanceId: Optional[str] = None + VerifiedAccessGroupId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVerifiedAccessEndpointsRequestRequestTypeDef(BaseModel): + VerifiedAccessEndpointIds: Optional[Sequence[str]] = None + VerifiedAccessInstanceId: Optional[str] = None + VerifiedAccessGroupId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeVerifiedAccessGroupsRequestDescribeVerifiedAccessGroupsPaginateTypeDef(BaseModel): + VerifiedAccessGroupIds: Optional[Sequence[str]] = None + VerifiedAccessInstanceId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVerifiedAccessGroupsRequestRequestTypeDef(BaseModel): + VerifiedAccessGroupIds: Optional[Sequence[str]] = None + VerifiedAccessInstanceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeVerifiedAccessInstanceLoggingConfigurationsRequestDescribeVerifiedAccessInstanceLoggingConfigurationsPaginateTypeDef(BaseModel): + VerifiedAccessInstanceIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVerifiedAccessInstanceLoggingConfigurationsRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeVerifiedAccessInstancesRequestDescribeVerifiedAccessInstancesPaginateTypeDef(BaseModel): + VerifiedAccessInstanceIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVerifiedAccessInstancesRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeVerifiedAccessTrustProvidersRequestDescribeVerifiedAccessTrustProvidersPaginateTypeDef(BaseModel): + VerifiedAccessTrustProviderIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVerifiedAccessTrustProvidersRequestRequestTypeDef(BaseModel): + VerifiedAccessTrustProviderIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class DescribeVolumeStatusRequestDescribeVolumeStatusPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVolumeStatusRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class DescribeVolumeStatusRequestVolumeDescribeStatusTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class DescribeVolumesModificationsRequestDescribeVolumesModificationsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + VolumeIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVolumesModificationsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + VolumeIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeVolumesRequestDescribeVolumesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVolumesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcClassicLinkRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + VpcIds: Optional[Sequence[str]] = None + +class DescribeVpcEndpointConnectionNotificationsRequestDescribeVpcEndpointConnectionNotificationsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + ConnectionNotificationId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcEndpointConnectionNotificationsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + ConnectionNotificationId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointConnectionsRequestDescribeVpcEndpointConnectionsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcEndpointConnectionsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointServiceConfigurationsRequestDescribeVpcEndpointServiceConfigurationsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + ServiceIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcEndpointServiceConfigurationsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + ServiceIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointServicePermissionsRequestDescribeVpcEndpointServicePermissionsPaginateTypeDef(BaseModel): + ServiceId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcEndpointServicePermissionsRequestRequestTypeDef(BaseModel): + ServiceId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointServicesRequestDescribeVpcEndpointServicesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + ServiceNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcEndpointServicesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + ServiceNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointsRequestDescribeVpcEndpointsPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + VpcEndpointIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcEndpointsRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + VpcEndpointIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcPeeringConnectionsRequestDescribeVpcPeeringConnectionsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + VpcPeeringConnectionIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcPeeringConnectionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + VpcPeeringConnectionIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeVpcsRequestDescribeVpcsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpcIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVpcsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpcIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeVpnConnectionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpnConnectionIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class DescribeVpnGatewaysRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpnGatewayIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class ExportTransitGatewayRoutesRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + S3Bucket: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class GetCoipPoolUsageRequestRequestTypeDef(BaseModel): + PoolId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetIpamDiscoveredAccountsRequestGetIpamDiscoveredAccountsPaginateTypeDef(BaseModel): + IpamResourceDiscoveryId: str + DiscoveryRegion: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIpamDiscoveredAccountsRequestRequestTypeDef(BaseModel): + IpamResourceDiscoveryId: str + DiscoveryRegion: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetIpamDiscoveredPublicAddressesRequestRequestTypeDef(BaseModel): + IpamResourceDiscoveryId: str + AddressRegion: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetIpamDiscoveredResourceCidrsRequestGetIpamDiscoveredResourceCidrsPaginateTypeDef(BaseModel): + IpamResourceDiscoveryId: str + ResourceRegion: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIpamDiscoveredResourceCidrsRequestRequestTypeDef(BaseModel): + IpamResourceDiscoveryId: str + ResourceRegion: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetIpamPoolAllocationsRequestGetIpamPoolAllocationsPaginateTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + IpamPoolAllocationId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIpamPoolAllocationsRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + IpamPoolAllocationId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetIpamPoolCidrsRequestGetIpamPoolCidrsPaginateTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIpamPoolCidrsRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetIpamResourceCidrsRequestGetIpamResourceCidrsPaginateTypeDef(BaseModel): + IpamScopeId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IpamPoolId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[IpamResourceTypeType] = None + ResourceTag: Optional[RequestIpamResourceTagTypeDef] = None + ResourceOwner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIpamResourceCidrsRequestRequestTypeDef(BaseModel): + IpamScopeId: str + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IpamPoolId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[IpamResourceTypeType] = None + ResourceTag: Optional[RequestIpamResourceTagTypeDef] = None + ResourceOwner: Optional[str] = None + +class GetSecurityGroupsForVpcRequestGetSecurityGroupsForVpcPaginateTypeDef(BaseModel): + VpcId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSecurityGroupsForVpcRequestRequestTypeDef(BaseModel): + VpcId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + +class GetSubnetCidrReservationsRequestRequestTypeDef(BaseModel): + SubnetId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetTransitGatewayAttachmentPropagationsRequestGetTransitGatewayAttachmentPropagationsPaginateTypeDef(BaseModel): + TransitGatewayAttachmentId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayAttachmentPropagationsRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetTransitGatewayMulticastDomainAssociationsRequestGetTransitGatewayMulticastDomainAssociationsPaginateTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayMulticastDomainAssociationsRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetTransitGatewayPolicyTableAssociationsRequestGetTransitGatewayPolicyTableAssociationsPaginateTypeDef(BaseModel): + TransitGatewayPolicyTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayPolicyTableAssociationsRequestRequestTypeDef(BaseModel): + TransitGatewayPolicyTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetTransitGatewayPolicyTableEntriesRequestRequestTypeDef(BaseModel): + TransitGatewayPolicyTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetTransitGatewayPrefixListReferencesRequestGetTransitGatewayPrefixListReferencesPaginateTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayPrefixListReferencesRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetTransitGatewayRouteTableAssociationsRequestGetTransitGatewayRouteTableAssociationsPaginateTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayRouteTableAssociationsRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class GetTransitGatewayRouteTablePropagationsRequestGetTransitGatewayRouteTablePropagationsPaginateTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayRouteTablePropagationsRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class SearchLocalGatewayRoutesRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class SearchLocalGatewayRoutesRequestSearchLocalGatewayRoutesPaginateTypeDef(BaseModel): + LocalGatewayRouteTableId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchTransitGatewayMulticastGroupsRequestRequestTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + +class SearchTransitGatewayMulticastGroupsRequestSearchTransitGatewayMulticastGroupsPaginateTypeDef(BaseModel): + TransitGatewayMulticastDomainId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchTransitGatewayRoutesRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + Filters: Sequence[FilterTypeDef] + MaxResults: Optional[int] = None + DryRun: Optional[bool] = None + +class DescribeAggregateIdFormatResultTypeDef(BaseModel): + UseLongIdsAggregated: bool + Statuses: List[IdFormatTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIdFormatResultTypeDef(BaseModel): + Statuses: List[IdFormatTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIdentityIdFormatResultTypeDef(BaseModel): + Statuses: List[IdFormatTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PrincipalIdFormatTypeDef(BaseModel): + Arn: Optional[str] = None + Statuses: Optional[List[IdFormatTypeDef]] = None + +class DescribeAwsNetworkPerformanceMetricSubscriptionsResultTypeDef(BaseModel): + Subscriptions: List[SubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeBundleTasksRequestBundleTaskCompleteWaitTypeDef(BaseModel): + BundleIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeConversionTasksRequestConversionTaskCancelledWaitTypeDef(BaseModel): + ConversionTaskIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeConversionTasksRequestConversionTaskCompletedWaitTypeDef(BaseModel): + ConversionTaskIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeConversionTasksRequestConversionTaskDeletedWaitTypeDef(BaseModel): + ConversionTaskIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeCustomerGatewaysRequestCustomerGatewayAvailableWaitTypeDef(BaseModel): + CustomerGatewayIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeExportTasksRequestExportTaskCancelledWaitTypeDef(BaseModel): + ExportTaskIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeExportTasksRequestExportTaskCompletedWaitTypeDef(BaseModel): + ExportTaskIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImagesRequestImageAvailableWaitTypeDef(BaseModel): + ExecutableUsers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImageIds: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + IncludeDeprecated: Optional[bool] = None + IncludeDisabled: Optional[bool] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImagesRequestImageExistsWaitTypeDef(BaseModel): + ExecutableUsers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImageIds: Optional[Sequence[str]] = None + Owners: Optional[Sequence[str]] = None + IncludeDeprecated: Optional[bool] = None + IncludeDisabled: Optional[bool] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImportSnapshotTasksRequestSnapshotImportedWaitTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ImportTaskIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstanceStatusRequestInstanceStatusOkWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + IncludeAllInstances: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstanceStatusRequestSystemStatusOkWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DryRun: Optional[bool] = None + IncludeAllInstances: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceExistsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceRunningWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceStoppedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceTerminatedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + InstanceIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInternetGatewaysRequestInternetGatewayExistsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + InternetGatewayIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeKeyPairsRequestKeyPairExistsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + KeyNames: Optional[Sequence[str]] = None + KeyPairIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + IncludePublicKey: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNatGatewaysRequestNatGatewayAvailableWaitTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NatGatewayIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNatGatewaysRequestNatGatewayDeletedWaitTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NatGatewayIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNetworkInterfacesRequestNetworkInterfaceAvailableWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + NetworkInterfaceIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeSecurityGroupsRequestSecurityGroupExistsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + GroupIds: Optional[Sequence[str]] = None + GroupNames: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeSnapshotsRequestSnapshotCompletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + OwnerIds: Optional[Sequence[str]] = None + RestorableByUserIds: Optional[Sequence[str]] = None + SnapshotIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeSpotInstanceRequestsRequestSpotInstanceRequestFulfilledWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + SpotInstanceRequestIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStoreImageTasksRequestStoreImageTaskCompleteWaitTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeSubnetsRequestSubnetAvailableWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SubnetIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVolumesRequestVolumeAvailableWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVolumesRequestVolumeDeletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVolumesRequestVolumeInUseWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VolumeIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVpcPeeringConnectionsRequestVpcPeeringConnectionDeletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + VpcPeeringConnectionIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVpcPeeringConnectionsRequestVpcPeeringConnectionExistsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + DryRun: Optional[bool] = None + VpcPeeringConnectionIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVpcsRequestVpcAvailableWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpcIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVpcsRequestVpcExistsWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpcIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVpnConnectionsRequestVpnConnectionAvailableWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpnConnectionIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVpnConnectionsRequestVpnConnectionDeletedWaitTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + VpnConnectionIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetPasswordDataRequestPasswordDataAvailableWaitTypeDef(BaseModel): + InstanceId: str + DryRun: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeFastLaunchImagesSuccessItemTypeDef(BaseModel): + ImageId: Optional[str] = None + ResourceType: Optional[Literal["snapshot"]] = None + SnapshotConfiguration: Optional[FastLaunchSnapshotConfigurationResponseTypeDef] = None + LaunchTemplate: Optional[FastLaunchLaunchTemplateSpecificationResponseTypeDef] = None + MaxParallelLaunches: Optional[int] = None + OwnerId: Optional[str] = None + State: Optional[FastLaunchStateCodeType] = None + StateTransitionReason: Optional[str] = None + StateTransitionTime: Optional[datetime] = None + +class DisableFastLaunchResultTypeDef(BaseModel): + ImageId: str + ResourceType: Literal["snapshot"] + SnapshotConfiguration: FastLaunchSnapshotConfigurationResponseTypeDef + LaunchTemplate: FastLaunchLaunchTemplateSpecificationResponseTypeDef + MaxParallelLaunches: int + OwnerId: str + State: FastLaunchStateCodeType + StateTransitionReason: str + StateTransitionTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EnableFastLaunchResultTypeDef(BaseModel): + ImageId: str + ResourceType: Literal["snapshot"] + SnapshotConfiguration: FastLaunchSnapshotConfigurationResponseTypeDef + LaunchTemplate: FastLaunchLaunchTemplateSpecificationResponseTypeDef + MaxParallelLaunches: int + OwnerId: str + State: FastLaunchStateCodeType + StateTransitionReason: str + StateTransitionTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFastSnapshotRestoresResultTypeDef(BaseModel): + FastSnapshotRestores: List[DescribeFastSnapshotRestoreSuccessItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeHostReservationOfferingsResultTypeDef(BaseModel): + OfferingSet: List[HostOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstanceCreditSpecificationsResultTypeDef(BaseModel): + InstanceCreditSpecifications: List[InstanceCreditSpecificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstanceTopologyResultTypeDef(BaseModel): + Instances: List[InstanceTopologyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstanceTypeOfferingsResultTypeDef(BaseModel): + InstanceTypeOfferings: List[InstanceTypeOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeLockedSnapshotsResultTypeDef(BaseModel): + Snapshots: List[LockedSnapshotsInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMacHostsResultTypeDef(BaseModel): + MacHosts: List[MacHostTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMovingAddressesResultTypeDef(BaseModel): + MovingAddressStatuses: List[MovingAddressStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribePrefixListsResultTypeDef(BaseModel): + PrefixLists: List[PrefixListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRegionsResultTypeDef(BaseModel): + Regions: List[RegionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSecurityGroupReferencesResultTypeDef(BaseModel): + SecurityGroupReferenceSet: List[SecurityGroupReferenceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotAttributeResultTypeDef(BaseModel): + CreateVolumePermissions: List[CreateVolumePermissionTypeDef] + ProductCodes: List[ProductCodeTypeDef] + SnapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVolumeAttributeResultTypeDef(BaseModel): + AutoEnableIO: AttributeBooleanValueTypeDef + ProductCodes: List[ProductCodeTypeDef] + VolumeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSpotPriceHistoryResultTypeDef(BaseModel): + SpotPriceHistory: List[SpotPriceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStoreImageTasksResultTypeDef(BaseModel): + StoreImageTaskResults: List[StoreImageTaskResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeTagsResultTypeDef(BaseModel): + Tags: List[TagDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeVolumesModificationsResultTypeDef(BaseModel): + VolumesModifications: List[VolumeModificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVolumeResultTypeDef(BaseModel): + VolumeModification: VolumeModificationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FlowLogTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + DeliverLogsErrorMessage: Optional[str] = None + DeliverLogsPermissionArn: Optional[str] = None + DeliverCrossAccountRole: Optional[str] = None + DeliverLogsStatus: Optional[str] = None + FlowLogId: Optional[str] = None + FlowLogStatus: Optional[str] = None + LogGroupName: Optional[str] = None + ResourceId: Optional[str] = None + TrafficType: Optional[TrafficTypeType] = None + LogDestinationType: Optional[LogDestinationTypeType] = None + LogDestination: Optional[str] = None + LogFormat: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + MaxAggregationInterval: Optional[int] = None + DestinationOptions: Optional[DestinationOptionsResponseTypeDef] = None + +class DisableFastSnapshotRestoreStateErrorItemTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Error: Optional[DisableFastSnapshotRestoreStateErrorTypeDef] = None + +class DisableTransitGatewayRouteTablePropagationResultTypeDef(BaseModel): + Propagation: TransitGatewayPropagationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnableTransitGatewayRouteTablePropagationResultTypeDef(BaseModel): + Propagation: TransitGatewayPropagationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DiskImageTypeDef(BaseModel): + Description: Optional[str] = None + Image: Optional[DiskImageDetailTypeDef] = None + Volume: Optional[VolumeDetailTypeDef] = None + +class ImportVolumeRequestRequestTypeDef(BaseModel): + AvailabilityZone: str + Image: DiskImageDetailTypeDef + Volume: VolumeDetailTypeDef + Description: Optional[str] = None + DryRun: Optional[bool] = None + +class ImportInstanceVolumeDetailItemTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + BytesConverted: Optional[int] = None + Description: Optional[str] = None + Image: Optional[DiskImageDescriptionTypeDef] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + Volume: Optional[DiskImageVolumeDescriptionTypeDef] = None + +class ImportVolumeTaskDetailsTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + BytesConverted: Optional[int] = None + Description: Optional[str] = None + Image: Optional[DiskImageDescriptionTypeDef] = None + Volume: Optional[DiskImageVolumeDescriptionTypeDef] = None + +class InstanceStorageInfoTypeDef(BaseModel): + TotalSizeInGB: Optional[int] = None + Disks: Optional[List[DiskInfoTypeDef]] = None + NvmeSupport: Optional[EphemeralNvmeSupportType] = None + EncryptionSupport: Optional[InstanceStorageEncryptionSupportType] = None + +class VpcEndpointConnectionTypeDef(BaseModel): + ServiceId: Optional[str] = None + VpcEndpointId: Optional[str] = None + VpcEndpointOwner: Optional[str] = None + VpcEndpointState: Optional[StateType] = None + CreationTimestamp: Optional[datetime] = None + DnsEntries: Optional[List[DnsEntryTypeDef]] = None + NetworkLoadBalancerArns: Optional[List[str]] = None + GatewayLoadBalancerArns: Optional[List[str]] = None + IpAddressType: Optional[IpAddressTypeType] = None + VpcEndpointConnectionId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ModifyClientVpnEndpointRequestRequestTypeDef(BaseModel): + ClientVpnEndpointId: str + ServerCertificateArn: Optional[str] = None + ConnectionLogOptions: Optional[ConnectionLogOptionsTypeDef] = None + DnsServers: Optional[DnsServersOptionsModifyStructureTypeDef] = None + VpnPort: Optional[int] = None + Description: Optional[str] = None + SplitTunnel: Optional[bool] = None + DryRun: Optional[bool] = None + SecurityGroupIds: Optional[Sequence[str]] = None + VpcId: Optional[str] = None + SelfServicePortal: Optional[SelfServicePortalType] = None + ClientConnectOptions: Optional[ClientConnectOptionsTypeDef] = None + SessionTimeoutHours: Optional[int] = None + ClientLoginBannerOptions: Optional[ClientLoginBannerOptionsTypeDef] = None + +class EbsInfoTypeDef(BaseModel): + EbsOptimizedSupport: Optional[EbsOptimizedSupportType] = None + EncryptionSupport: Optional[EbsEncryptionSupportType] = None + EbsOptimizedInfo: Optional[EbsOptimizedInfoTypeDef] = None + NvmeSupport: Optional[EbsNvmeSupportType] = None + +class InstanceBlockDeviceMappingSpecificationTypeDef(BaseModel): + DeviceName: Optional[str] = None + Ebs: Optional[EbsInstanceBlockDeviceSpecificationTypeDef] = None + NoDevice: Optional[str] = None + VirtualName: Optional[str] = None + +class InstanceBlockDeviceMappingTypeDef(BaseModel): + DeviceName: Optional[str] = None + Ebs: Optional[EbsInstanceBlockDeviceTypeDef] = None + +class EgressOnlyInternetGatewayTypeDef(BaseModel): + Attachments: Optional[List[InternetGatewayAttachmentTypeDef]] = None + EgressOnlyInternetGatewayId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class InternetGatewayTypeDef(BaseModel): + Attachments: Optional[List[InternetGatewayAttachmentTypeDef]] = None + InternetGatewayId: Optional[str] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ElasticGpusTypeDef(BaseModel): + ElasticGpuId: Optional[str] = None + AvailabilityZone: Optional[str] = None + ElasticGpuType: Optional[str] = None + ElasticGpuHealth: Optional[ElasticGpuHealthTypeDef] = None + ElasticGpuState: Optional[Literal["ATTACHED"]] = None + InstanceId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class EnaSrdSpecificationRequestTypeDef(BaseModel): + EnaSrdEnabled: Optional[bool] = None + EnaSrdUdpSpecification: Optional[EnaSrdUdpSpecificationRequestTypeDef] = None + +class EnaSrdSpecificationTypeDef(BaseModel): + EnaSrdEnabled: Optional[bool] = None + EnaSrdUdpSpecification: Optional[EnaSrdUdpSpecificationTypeDef] = None + +class EnableFastLaunchRequestRequestTypeDef(BaseModel): + ImageId: str + ResourceType: Optional[str] = None + SnapshotConfiguration: Optional[FastLaunchSnapshotConfigurationRequestTypeDef] = None + LaunchTemplate: Optional[FastLaunchLaunchTemplateSpecificationRequestTypeDef] = None + MaxParallelLaunches: Optional[int] = None + DryRun: Optional[bool] = None + +class EnableFastSnapshotRestoreStateErrorItemTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Error: Optional[EnableFastSnapshotRestoreStateErrorTypeDef] = None + +class HistoryRecordEntryTypeDef(BaseModel): + EventInformation: Optional[EventInformationTypeDef] = None + EventType: Optional[FleetEventTypeType] = None + Timestamp: Optional[datetime] = None + +class HistoryRecordTypeDef(BaseModel): + EventInformation: Optional[EventInformationTypeDef] = None + EventType: Optional[EventTypeType] = None + Timestamp: Optional[datetime] = None + +class ExportImageResultTypeDef(BaseModel): + Description: str + DiskImageFormat: DiskImageFormatType + ExportImageTaskId: str + ImageId: str + RoleName: str + Progress: str + S3ExportLocation: ExportTaskS3LocationTypeDef + Status: str + StatusMessage: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportImageTaskTypeDef(BaseModel): + Description: Optional[str] = None + ExportImageTaskId: Optional[str] = None + ImageId: Optional[str] = None + Progress: Optional[str] = None + S3ExportLocation: Optional[ExportTaskS3LocationTypeDef] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ExportTaskTypeDef(BaseModel): + Description: Optional[str] = None + ExportTaskId: Optional[str] = None + ExportToS3Task: Optional[ExportToS3TaskTypeDef] = None + InstanceExportDetails: Optional[InstanceExportDetailsTypeDef] = None + State: Optional[ExportTaskStateType] = None + StatusMessage: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class PathFilterTypeDef(BaseModel): + SourceAddress: Optional[str] = None + SourcePortRange: Optional[FilterPortRangeTypeDef] = None + DestinationAddress: Optional[str] = None + DestinationPortRange: Optional[FilterPortRangeTypeDef] = None + +class FleetSpotMaintenanceStrategiesRequestTypeDef(BaseModel): + CapacityRebalance: Optional[FleetSpotCapacityRebalanceRequestTypeDef] = None + +class FleetSpotMaintenanceStrategiesTypeDef(BaseModel): + CapacityRebalance: Optional[FleetSpotCapacityRebalanceTypeDef] = None + +class FpgaDeviceInfoTypeDef(BaseModel): + Name: Optional[str] = None + Manufacturer: Optional[str] = None + Count: Optional[int] = None + MemoryInfo: Optional[FpgaDeviceMemoryInfoTypeDef] = None + +class FpgaImageAttributeTypeDef(BaseModel): + FpgaImageId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LoadPermissions: Optional[List[LoadPermissionTypeDef]] = None + ProductCodes: Optional[List[ProductCodeTypeDef]] = None + +class FpgaImageTypeDef(BaseModel): + FpgaImageId: Optional[str] = None + FpgaImageGlobalId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + ShellVersion: Optional[str] = None + PciId: Optional[PciIdTypeDef] = None + State: Optional[FpgaImageStateTypeDef] = None + CreateTime: Optional[datetime] = None + UpdateTime: Optional[datetime] = None + OwnerId: Optional[str] = None + OwnerAlias: Optional[str] = None + ProductCodes: Optional[List[ProductCodeTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + Public: Optional[bool] = None + DataRetentionSupport: Optional[bool] = None + InstanceTypes: Optional[List[str]] = None + +class GetAssociatedIpv6PoolCidrsResultTypeDef(BaseModel): + Ipv6CidrAssociations: List[Ipv6CidrAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCapacityReservationUsageResultTypeDef(BaseModel): + CapacityReservationId: str + InstanceType: str + TotalInstanceCount: int + AvailableInstanceCount: int + State: CapacityReservationStateType + InstanceUsages: List[InstanceUsageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDefaultCreditSpecificationResultTypeDef(BaseModel): + InstanceFamilyCreditSpecification: InstanceFamilyCreditSpecificationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDefaultCreditSpecificationResultTypeDef(BaseModel): + InstanceFamilyCreditSpecification: InstanceFamilyCreditSpecificationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetHostReservationPurchasePreviewResultTypeDef(BaseModel): + CurrencyCode: Literal["USD"] + Purchase: List[PurchaseTypeDef] + TotalHourlyPrice: str + TotalUpfrontPrice: str + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseHostReservationResultTypeDef(BaseModel): + ClientToken: str + CurrencyCode: Literal["USD"] + Purchase: List[PurchaseTypeDef] + TotalHourlyPrice: str + TotalUpfrontPrice: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceMetadataDefaultsResultTypeDef(BaseModel): + AccountLevel: InstanceMetadataDefaultsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceTypesFromInstanceRequirementsResultTypeDef(BaseModel): + InstanceTypes: List[InstanceTypeInfoFromInstanceRequirementsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetIpamAddressHistoryResultTypeDef(BaseModel): + HistoryRecords: List[IpamAddressHistoryRecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetManagedPrefixListAssociationsResultTypeDef(BaseModel): + PrefixListAssociations: List[PrefixListAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetManagedPrefixListEntriesResultTypeDef(BaseModel): + Entries: List[PrefixListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ReservedInstanceReservationValueTypeDef(BaseModel): + ReservationValue: Optional[ReservationValueTypeDef] = None + ReservedInstanceId: Optional[str] = None + +class GetSpotPlacementScoresResultTypeDef(BaseModel): + SpotPlacementScores: List[SpotPlacementScoreTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTransitGatewayAttachmentPropagationsResultTypeDef(BaseModel): + TransitGatewayAttachmentPropagations: List[TransitGatewayAttachmentPropagationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTransitGatewayRouteTableAssociationsResultTypeDef(BaseModel): + Associations: List[TransitGatewayRouteTableAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTransitGatewayRouteTablePropagationsResultTypeDef(BaseModel): + TransitGatewayRouteTablePropagations: List[TransitGatewayRouteTablePropagationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetVpnConnectionDeviceTypesResultTypeDef(BaseModel): + VpnConnectionDeviceTypes: List[VpnConnectionDeviceTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetVpnTunnelReplacementStatusResultTypeDef(BaseModel): + VpnConnectionId: str + TransitGatewayId: str + CustomerGatewayId: str + VpnGatewayId: str + VpnTunnelOutsideIpAddress: str + MaintenanceDetails: MaintenanceDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GpuDeviceInfoTypeDef(BaseModel): + Name: Optional[str] = None + Manufacturer: Optional[str] = None + Count: Optional[int] = None + MemoryInfo: Optional[GpuDeviceMemoryInfoTypeDef] = None + +class IamInstanceProfileAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + InstanceId: Optional[str] = None + IamInstanceProfile: Optional[IamInstanceProfileTypeDef] = None + State: Optional[IamInstanceProfileAssociationStateType] = None + Timestamp: Optional[datetime] = None + +class LaunchPermissionModificationsTypeDef(BaseModel): + Add: Optional[Sequence[LaunchPermissionTypeDef]] = None + Remove: Optional[Sequence[LaunchPermissionTypeDef]] = None + +class ImageDiskContainerTypeDef(BaseModel): + Description: Optional[str] = None + DeviceName: Optional[str] = None + Format: Optional[str] = None + SnapshotId: Optional[str] = None + Url: Optional[str] = None + UserBucket: Optional[UserBucketTypeDef] = None + +class SnapshotDiskContainerTypeDef(BaseModel): + Description: Optional[str] = None + Format: Optional[str] = None + Url: Optional[str] = None + UserBucket: Optional[UserBucketTypeDef] = None + +class ListImagesInRecycleBinResultTypeDef(BaseModel): + Images: List[ImageRecycleBinInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LocalGatewayRouteTableTypeDef(BaseModel): + LocalGatewayRouteTableId: Optional[str] = None + LocalGatewayRouteTableArn: Optional[str] = None + LocalGatewayId: Optional[str] = None + OutpostArn: Optional[str] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + Mode: Optional[LocalGatewayRouteTableModeType] = None + StateReason: Optional[StateReasonTypeDef] = None + +class ImportInstanceLaunchSpecificationTypeDef(BaseModel): + AdditionalInfo: Optional[str] = None + Architecture: Optional[ArchitectureValuesType] = None + GroupIds: Optional[Sequence[str]] = None + GroupNames: Optional[Sequence[str]] = None + InstanceInitiatedShutdownBehavior: Optional[ShutdownBehaviorType] = None + InstanceType: Optional[InstanceTypeType] = None + Monitoring: Optional[bool] = None + Placement: Optional[PlacementTypeDef] = None + PrivateIpAddress: Optional[str] = None + SubnetId: Optional[str] = None + UserData: Optional[UserDataTypeDef] = None + +class InferenceDeviceInfoTypeDef(BaseModel): + Count: Optional[int] = None + Name: Optional[str] = None + Manufacturer: Optional[str] = None + MemoryInfo: Optional[InferenceDeviceMemoryInfoTypeDef] = None + +class InstanceAttachmentEnaSrdSpecificationTypeDef(BaseModel): + EnaSrdEnabled: Optional[bool] = None + EnaSrdUdpSpecification: Optional[InstanceAttachmentEnaSrdUdpSpecificationTypeDef] = None + +class ModifyInstanceCreditSpecificationRequestRequestTypeDef(BaseModel): + InstanceCreditSpecifications: Sequence[InstanceCreditSpecificationRequestTypeDef] + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class ModifyInstanceMetadataOptionsResultTypeDef(BaseModel): + InstanceId: str + InstanceMetadataOptions: InstanceMetadataOptionsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceMonitoringTypeDef(BaseModel): + InstanceId: Optional[str] = None + Monitoring: Optional[MonitoringTypeDef] = None + +class InstancePrivateIpAddressTypeDef(BaseModel): + Association: Optional[InstanceNetworkInterfaceAssociationTypeDef] = None + Primary: Optional[bool] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class InstanceRequirementsExtraOutputTypeDef(BaseModel): + VCpuCount: Optional[VCpuCountRangeTypeDef] = None + MemoryMiB: Optional[MemoryMiBTypeDef] = None + CpuManufacturers: Optional[List[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuTypeDef] = None + ExcludedInstanceTypes: Optional[List[str]] = None + InstanceGenerations: Optional[List[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[List[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsTypeDef] = None + AcceleratorTypes: Optional[List[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountTypeDef] = None + AcceleratorManufacturers: Optional[List[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[List[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsTypeDef] = None + AllowedInstanceTypes: Optional[List[str]] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + +class InstanceRequirementsOutputTypeDef(BaseModel): + VCpuCount: Optional[VCpuCountRangeTypeDef] = None + MemoryMiB: Optional[MemoryMiBTypeDef] = None + CpuManufacturers: Optional[List[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuTypeDef] = None + ExcludedInstanceTypes: Optional[List[str]] = None + InstanceGenerations: Optional[List[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[List[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsTypeDef] = None + AcceleratorTypes: Optional[List[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountTypeDef] = None + AcceleratorManufacturers: Optional[List[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[List[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsTypeDef] = None + AllowedInstanceTypes: Optional[List[str]] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + +class InstanceRequirementsTypeDef(BaseModel): + VCpuCount: Optional[VCpuCountRangeTypeDef] = None + MemoryMiB: Optional[MemoryMiBTypeDef] = None + CpuManufacturers: Optional[Sequence[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuTypeDef] = None + ExcludedInstanceTypes: Optional[Sequence[str]] = None + InstanceGenerations: Optional[Sequence[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[Sequence[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsTypeDef] = None + AcceleratorTypes: Optional[Sequence[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountTypeDef] = None + AcceleratorManufacturers: Optional[Sequence[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[Sequence[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsTypeDef] = None + AllowedInstanceTypes: Optional[Sequence[str]] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + +class InstanceRequirementsRequestTypeDef(BaseModel): + VCpuCount: VCpuCountRangeRequestTypeDef + MemoryMiB: MemoryMiBRequestTypeDef + CpuManufacturers: Optional[Sequence[CpuManufacturerType]] = None + MemoryGiBPerVCpu: Optional[MemoryGiBPerVCpuRequestTypeDef] = None + ExcludedInstanceTypes: Optional[Sequence[str]] = None + InstanceGenerations: Optional[Sequence[InstanceGenerationType]] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + BareMetal: Optional[BareMetalType] = None + BurstablePerformance: Optional[BurstablePerformanceType] = None + RequireHibernateSupport: Optional[bool] = None + NetworkInterfaceCount: Optional[NetworkInterfaceCountRequestTypeDef] = None + LocalStorage: Optional[LocalStorageType] = None + LocalStorageTypes: Optional[Sequence[LocalStorageTypeType]] = None + TotalLocalStorageGB: Optional[TotalLocalStorageGBRequestTypeDef] = None + BaselineEbsBandwidthMbps: Optional[BaselineEbsBandwidthMbpsRequestTypeDef] = None + AcceleratorTypes: Optional[Sequence[AcceleratorTypeType]] = None + AcceleratorCount: Optional[AcceleratorCountRequestTypeDef] = None + AcceleratorManufacturers: Optional[Sequence[AcceleratorManufacturerType]] = None + AcceleratorNames: Optional[Sequence[AcceleratorNameType]] = None + AcceleratorTotalMemoryMiB: Optional[AcceleratorTotalMemoryMiBRequestTypeDef] = None + NetworkBandwidthGbps: Optional[NetworkBandwidthGbpsRequestTypeDef] = None + AllowedInstanceTypes: Optional[Sequence[str]] = None + MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: Optional[int] = None + +class InstanceStateChangeTypeDef(BaseModel): + CurrentState: Optional[InstanceStateTypeDef] = None + InstanceId: Optional[str] = None + PreviousState: Optional[InstanceStateTypeDef] = None + +class InstanceStatusSummaryTypeDef(BaseModel): + Details: Optional[List[InstanceStatusDetailsTypeDef]] = None + Status: Optional[SummaryStatusType] = None + +class ModifyInstanceEventStartTimeResultTypeDef(BaseModel): + Event: InstanceStatusEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IpPermissionExtraExtraOutputTypeDef(BaseModel): + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + IpRanges: Optional[List[IpRangeTypeDef]] = None + Ipv6Ranges: Optional[List[Ipv6RangeTypeDef]] = None + PrefixListIds: Optional[List[PrefixListIdTypeDef]] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[List[UserIdGroupPairTypeDef]] = None + +class IpPermissionOutputTypeDef(BaseModel): + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + IpRanges: Optional[List[IpRangeTypeDef]] = None + Ipv6Ranges: Optional[List[Ipv6RangeTypeDef]] = None + PrefixListIds: Optional[List[PrefixListIdTypeDef]] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[List[UserIdGroupPairTypeDef]] = None + +class IpPermissionTypeDef(BaseModel): + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + IpRanges: Optional[Sequence[IpRangeTypeDef]] = None + Ipv6Ranges: Optional[Sequence[Ipv6RangeTypeDef]] = None + PrefixListIds: Optional[Sequence[PrefixListIdTypeDef]] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[Sequence[UserIdGroupPairTypeDef]] = None + +class StaleIpPermissionTypeDef(BaseModel): + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + IpRanges: Optional[List[str]] = None + PrefixListIds: Optional[List[str]] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[List[UserIdGroupPairTypeDef]] = None + +class ProvisionIpamPoolCidrRequestRequestTypeDef(BaseModel): + IpamPoolId: str + DryRun: Optional[bool] = None + Cidr: Optional[str] = None + CidrAuthorizationContext: Optional[IpamCidrAuthorizationContextTypeDef] = None + NetmaskLength: Optional[int] = None + ClientToken: Optional[str] = None + +class IpamDiscoveredAccountTypeDef(BaseModel): + AccountId: Optional[str] = None + DiscoveryRegion: Optional[str] = None + FailureReason: Optional[IpamDiscoveryFailureReasonTypeDef] = None + LastAttemptedDiscoveryTime: Optional[datetime] = None + LastSuccessfulDiscoveryTime: Optional[datetime] = None + +class IpamDiscoveredResourceCidrTypeDef(BaseModel): + IpamResourceDiscoveryId: Optional[str] = None + ResourceRegion: Optional[str] = None + ResourceId: Optional[str] = None + ResourceOwnerId: Optional[str] = None + ResourceCidr: Optional[str] = None + ResourceType: Optional[IpamResourceTypeType] = None + ResourceTags: Optional[List[IpamResourceTagTypeDef]] = None + IpUsage: Optional[float] = None + VpcId: Optional[str] = None + NetworkInterfaceAttachmentStatus: Optional[IpamNetworkInterfaceAttachmentStatusType] = None + SampleTime: Optional[datetime] = None + AvailabilityZoneId: Optional[str] = None + +class IpamResourceCidrTypeDef(BaseModel): + IpamId: Optional[str] = None + IpamScopeId: Optional[str] = None + IpamPoolId: Optional[str] = None + ResourceRegion: Optional[str] = None + ResourceOwnerId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceName: Optional[str] = None + ResourceCidr: Optional[str] = None + ResourceType: Optional[IpamResourceTypeType] = None + ResourceTags: Optional[List[IpamResourceTagTypeDef]] = None + IpUsage: Optional[float] = None + ComplianceStatus: Optional[IpamComplianceStatusType] = None + ManagementState: Optional[IpamManagementStateType] = None + OverlapStatus: Optional[IpamOverlapStatusType] = None + VpcId: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + +class IpamResourceDiscoveryTypeDef(BaseModel): + OwnerId: Optional[str] = None + IpamResourceDiscoveryId: Optional[str] = None + IpamResourceDiscoveryArn: Optional[str] = None + IpamResourceDiscoveryRegion: Optional[str] = None + Description: Optional[str] = None + OperatingRegions: Optional[List[IpamOperatingRegionTypeDef]] = None + IsDefault: Optional[bool] = None + State: Optional[IpamResourceDiscoveryStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class IpamTypeDef(BaseModel): + OwnerId: Optional[str] = None + IpamId: Optional[str] = None + IpamArn: Optional[str] = None + IpamRegion: Optional[str] = None + PublicDefaultScopeId: Optional[str] = None + PrivateDefaultScopeId: Optional[str] = None + ScopeCount: Optional[int] = None + Description: Optional[str] = None + OperatingRegions: Optional[List[IpamOperatingRegionTypeDef]] = None + State: Optional[IpamStateType] = None + Tags: Optional[List[TagTypeDef]] = None + DefaultResourceDiscoveryId: Optional[str] = None + DefaultResourceDiscoveryAssociationId: Optional[str] = None + ResourceDiscoveryAssociationCount: Optional[int] = None + StateMessage: Optional[str] = None + Tier: Optional[IpamTierType] = None + +class IpamPoolCidrTypeDef(BaseModel): + Cidr: Optional[str] = None + State: Optional[IpamPoolCidrStateType] = None + FailureReason: Optional[IpamPoolCidrFailureReasonTypeDef] = None + IpamPoolCidrId: Optional[str] = None + NetmaskLength: Optional[int] = None + +class IpamPoolTypeDef(BaseModel): + OwnerId: Optional[str] = None + IpamPoolId: Optional[str] = None + SourceIpamPoolId: Optional[str] = None + IpamPoolArn: Optional[str] = None + IpamScopeArn: Optional[str] = None + IpamScopeType: Optional[IpamScopeTypeType] = None + IpamArn: Optional[str] = None + IpamRegion: Optional[str] = None + Locale: Optional[str] = None + PoolDepth: Optional[int] = None + State: Optional[IpamPoolStateType] = None + StateMessage: Optional[str] = None + Description: Optional[str] = None + AutoImport: Optional[bool] = None + PubliclyAdvertisable: Optional[bool] = None + AddressFamily: Optional[AddressFamilyType] = None + AllocationMinNetmaskLength: Optional[int] = None + AllocationMaxNetmaskLength: Optional[int] = None + AllocationDefaultNetmaskLength: Optional[int] = None + AllocationResourceTags: Optional[List[IpamResourceTagTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + AwsService: Optional[Literal["ec2"]] = None + PublicIpSource: Optional[IpamPoolPublicIpSourceType] = None + SourceResource: Optional[IpamPoolSourceResourceTypeDef] = None + +class IpamPublicAddressTagsTypeDef(BaseModel): + EipTags: Optional[List[IpamPublicAddressTagTypeDef]] = None + +class Ipv6PoolTypeDef(BaseModel): + PoolId: Optional[str] = None + Description: Optional[str] = None + PoolCidrBlocks: Optional[List[PoolCidrBlockTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class LaunchTemplateBlockDeviceMappingRequestTypeDef(BaseModel): + DeviceName: Optional[str] = None + VirtualName: Optional[str] = None + Ebs: Optional[LaunchTemplateEbsBlockDeviceRequestTypeDef] = None + NoDevice: Optional[str] = None + +class LaunchTemplateBlockDeviceMappingTypeDef(BaseModel): + DeviceName: Optional[str] = None + VirtualName: Optional[str] = None + Ebs: Optional[LaunchTemplateEbsBlockDeviceTypeDef] = None + NoDevice: Optional[str] = None + +class LaunchTemplateEnaSrdSpecificationTypeDef(BaseModel): + EnaSrdEnabled: Optional[bool] = None + EnaSrdUdpSpecification: Optional[LaunchTemplateEnaSrdUdpSpecificationTypeDef] = None + +class LaunchTemplateInstanceMarketOptionsTypeDef(BaseModel): + MarketType: Optional[MarketTypeType] = None + SpotOptions: Optional[LaunchTemplateSpotMarketOptionsTypeDef] = None + +class ListSnapshotsInRecycleBinResultTypeDef(BaseModel): + Snapshots: List[SnapshotRecycleBinInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LoadPermissionModificationsTypeDef(BaseModel): + Add: Optional[Sequence[LoadPermissionRequestTypeDef]] = None + Remove: Optional[Sequence[LoadPermissionRequestTypeDef]] = None + +class MediaDeviceInfoTypeDef(BaseModel): + Count: Optional[int] = None + Name: Optional[str] = None + Manufacturer: Optional[str] = None + MemoryInfo: Optional[MediaDeviceMemoryInfoTypeDef] = None + +class ModifyIpamRequestRequestTypeDef(BaseModel): + IpamId: str + DryRun: Optional[bool] = None + Description: Optional[str] = None + AddOperatingRegions: Optional[Sequence[AddIpamOperatingRegionTypeDef]] = None + RemoveOperatingRegions: Optional[Sequence[RemoveIpamOperatingRegionTypeDef]] = None + Tier: Optional[IpamTierType] = None + +class ModifyIpamResourceDiscoveryRequestRequestTypeDef(BaseModel): + IpamResourceDiscoveryId: str + DryRun: Optional[bool] = None + Description: Optional[str] = None + AddOperatingRegions: Optional[Sequence[AddIpamOperatingRegionTypeDef]] = None + RemoveOperatingRegions: Optional[Sequence[RemoveIpamOperatingRegionTypeDef]] = None + +class ModifyManagedPrefixListRequestRequestTypeDef(BaseModel): + PrefixListId: str + DryRun: Optional[bool] = None + CurrentVersion: Optional[int] = None + PrefixListName: Optional[str] = None + AddEntries: Optional[Sequence[AddPrefixListEntryTypeDef]] = None + RemoveEntries: Optional[Sequence[RemovePrefixListEntryTypeDef]] = None + MaxEntries: Optional[int] = None + +class ModifyReservedInstancesRequestRequestTypeDef(BaseModel): + ReservedInstancesIds: Sequence[str] + TargetConfigurations: Sequence[ReservedInstancesConfigurationTypeDef] + ClientToken: Optional[str] = None + +class ReservedInstancesModificationResultTypeDef(BaseModel): + ReservedInstancesId: Optional[str] = None + TargetConfiguration: Optional[ReservedInstancesConfigurationTypeDef] = None + +class ModifyTransitGatewayRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + Description: Optional[str] = None + Options: Optional[ModifyTransitGatewayOptionsTypeDef] = None + DryRun: Optional[bool] = None + +class ModifyTransitGatewayVpcAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + AddSubnetIds: Optional[Sequence[str]] = None + RemoveSubnetIds: Optional[Sequence[str]] = None + Options: Optional[ModifyTransitGatewayVpcAttachmentRequestOptionsTypeDef] = None + DryRun: Optional[bool] = None + +class ModifyVerifiedAccessEndpointRequestRequestTypeDef(BaseModel): + VerifiedAccessEndpointId: str + VerifiedAccessGroupId: Optional[str] = None + LoadBalancerOptions: Optional[ModifyVerifiedAccessEndpointLoadBalancerOptionsTypeDef] = None + NetworkInterfaceOptions: Optional[ModifyVerifiedAccessEndpointEniOptionsTypeDef] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class ModifyVerifiedAccessEndpointPolicyResultTypeDef(BaseModel): + PolicyEnabled: bool + PolicyDocument: str + SseSpecification: VerifiedAccessSseSpecificationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVerifiedAccessGroupPolicyResultTypeDef(BaseModel): + PolicyEnabled: bool + PolicyDocument: str + SseSpecification: VerifiedAccessSseSpecificationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VerifiedAccessGroupTypeDef(BaseModel): + VerifiedAccessGroupId: Optional[str] = None + VerifiedAccessInstanceId: Optional[str] = None + Description: Optional[str] = None + Owner: Optional[str] = None + VerifiedAccessGroupArn: Optional[str] = None + CreationTime: Optional[str] = None + LastUpdatedTime: Optional[str] = None + DeletionTime: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationResponseTypeDef] = None + +class ModifyVerifiedAccessTrustProviderRequestRequestTypeDef(BaseModel): + VerifiedAccessTrustProviderId: str + OidcOptions: Optional[ModifyVerifiedAccessTrustProviderOidcOptionsTypeDef] = None + DeviceOptions: Optional[ModifyVerifiedAccessTrustProviderDeviceOptionsTypeDef] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationRequestTypeDef] = None + +class ModifyVpcPeeringConnectionOptionsRequestRequestTypeDef(BaseModel): + VpcPeeringConnectionId: str + AccepterPeeringConnectionOptions: Optional[PeeringConnectionOptionsRequestTypeDef] = None + DryRun: Optional[bool] = None + RequesterPeeringConnectionOptions: Optional[PeeringConnectionOptionsRequestTypeDef] = None + +class ModifyVpcPeeringConnectionOptionsResultTypeDef(BaseModel): + AccepterPeeringConnectionOptions: PeeringConnectionOptionsTypeDef + RequesterPeeringConnectionOptions: PeeringConnectionOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class NatGatewayTypeDef(BaseModel): + CreateTime: Optional[datetime] = None + DeleteTime: Optional[datetime] = None + FailureCode: Optional[str] = None + FailureMessage: Optional[str] = None + NatGatewayAddresses: Optional[List[NatGatewayAddressTypeDef]] = None + NatGatewayId: Optional[str] = None + ProvisionedBandwidth: Optional[ProvisionedBandwidthTypeDef] = None + State: Optional[NatGatewayStateType] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ConnectivityType: Optional[ConnectivityTypeType] = None + +class NetworkInfoTypeDef(BaseModel): + NetworkPerformance: Optional[str] = None + MaximumNetworkInterfaces: Optional[int] = None + MaximumNetworkCards: Optional[int] = None + DefaultNetworkCardIndex: Optional[int] = None + NetworkCards: Optional[List[NetworkCardInfoTypeDef]] = None + Ipv4AddressesPerInterface: Optional[int] = None + Ipv6AddressesPerInterface: Optional[int] = None + Ipv6Supported: Optional[bool] = None + EnaSupport: Optional[EnaSupportType] = None + EfaSupported: Optional[bool] = None + EfaInfo: Optional[EfaInfoTypeDef] = None + EncryptionInTransitSupported: Optional[bool] = None + EnaSrdSupported: Optional[bool] = None + +class NetworkInterfacePrivateIpAddressTypeDef(BaseModel): + Association: Optional[NetworkInterfaceAssociationTypeDef] = None + Primary: Optional[bool] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class NetworkInterfacePermissionTypeDef(BaseModel): + NetworkInterfacePermissionId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + AwsAccountId: Optional[str] = None + AwsService: Optional[str] = None + Permission: Optional[InterfacePermissionTypeType] = None + PermissionState: Optional[NetworkInterfacePermissionStateTypeDef] = None + +class NeuronDeviceInfoTypeDef(BaseModel): + Count: Optional[int] = None + Name: Optional[str] = None + CoreInfo: Optional[NeuronDeviceCoreInfoTypeDef] = None + MemoryInfo: Optional[NeuronDeviceMemoryInfoTypeDef] = None + +class VerifiedAccessTrustProviderTypeDef(BaseModel): + VerifiedAccessTrustProviderId: Optional[str] = None + Description: Optional[str] = None + TrustProviderType: Optional[TrustProviderTypeType] = None + UserTrustProviderType: Optional[UserTrustProviderTypeType] = None + DeviceTrustProviderType: Optional[DeviceTrustProviderTypeType] = None + OidcOptions: Optional[OidcOptionsTypeDef] = None + DeviceOptions: Optional[DeviceOptionsTypeDef] = None + PolicyReferenceName: Optional[str] = None + CreationTime: Optional[str] = None + LastUpdatedTime: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationResponseTypeDef] = None + +class PathRequestFilterTypeDef(BaseModel): + SourceAddress: Optional[str] = None + SourcePortRange: Optional[RequestFilterPortRangeTypeDef] = None + DestinationAddress: Optional[str] = None + DestinationPortRange: Optional[RequestFilterPortRangeTypeDef] = None + +class PathStatementRequestTypeDef(BaseModel): + PacketHeaderStatement: Optional[PacketHeaderStatementRequestTypeDef] = None + ResourceStatement: Optional[ResourceStatementRequestTypeDef] = None + +class ThroughResourcesStatementRequestTypeDef(BaseModel): + ResourceStatement: Optional[ResourceStatementRequestTypeDef] = None + +class PathStatementTypeDef(BaseModel): + PacketHeaderStatement: Optional[PacketHeaderStatementTypeDef] = None + ResourceStatement: Optional[ResourceStatementTypeDef] = None + +class ThroughResourcesStatementTypeDef(BaseModel): + ResourceStatement: Optional[ResourceStatementTypeDef] = None + +class ReservedInstancesListingTypeDef(BaseModel): + ClientToken: Optional[str] = None + CreateDate: Optional[datetime] = None + InstanceCounts: Optional[List[InstanceCountTypeDef]] = None + PriceSchedules: Optional[List[PriceScheduleTypeDef]] = None + ReservedInstancesId: Optional[str] = None + ReservedInstancesListingId: Optional[str] = None + Status: Optional[ListingStatusType] = None + StatusMessage: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + UpdateDate: Optional[datetime] = None + +class ProvisionPublicIpv4PoolCidrResultTypeDef(BaseModel): + PoolId: str + PoolAddressRange: PublicIpv4PoolRangeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PublicIpv4PoolTypeDef(BaseModel): + PoolId: Optional[str] = None + Description: Optional[str] = None + PoolAddressRanges: Optional[List[PublicIpv4PoolRangeTypeDef]] = None + TotalAddressCount: Optional[int] = None + TotalAvailableAddressCount: Optional[int] = None + NetworkBorderGroup: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class PurchaseScheduledInstancesRequestRequestTypeDef(BaseModel): + PurchaseRequests: Sequence[PurchaseRequestTypeDef] + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + +class PurchaseReservedInstancesOfferingRequestRequestTypeDef(BaseModel): + InstanceCount: int + ReservedInstancesOfferingId: str + DryRun: Optional[bool] = None + LimitPrice: Optional[ReservedInstanceLimitPriceTypeDef] = None + PurchaseTime: Optional[TimestampTypeDef] = None + +class ReservedInstancesOfferingTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + InstanceType: Optional[InstanceTypeType] = None + ProductDescription: Optional[RIProductDescriptionType] = None + ReservedInstancesOfferingId: Optional[str] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[Literal["USD"]] = None + InstanceTenancy: Optional[TenancyType] = None + Marketplace: Optional[bool] = None + OfferingClass: Optional[OfferingClassTypeType] = None + OfferingType: Optional[OfferingTypeValuesType] = None + PricingDetails: Optional[List[PricingDetailTypeDef]] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + Scope: Optional[ScopeType] = None + +class ReservedInstancesTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + Duration: Optional[int] = None + End: Optional[datetime] = None + FixedPrice: Optional[float] = None + InstanceCount: Optional[int] = None + InstanceType: Optional[InstanceTypeType] = None + ProductDescription: Optional[RIProductDescriptionType] = None + ReservedInstancesId: Optional[str] = None + Start: Optional[datetime] = None + State: Optional[ReservedInstanceStateType] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[Literal["USD"]] = None + InstanceTenancy: Optional[TenancyType] = None + OfferingClass: Optional[OfferingClassTypeType] = None + OfferingType: Optional[OfferingTypeValuesType] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + Scope: Optional[ScopeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class SecurityGroupRuleTypeDef(BaseModel): + SecurityGroupRuleId: Optional[str] = None + GroupId: Optional[str] = None + GroupOwnerId: Optional[str] = None + IsEgress: Optional[bool] = None + IpProtocol: Optional[str] = None + FromPort: Optional[int] = None + ToPort: Optional[int] = None + CidrIpv4: Optional[str] = None + CidrIpv6: Optional[str] = None + PrefixListId: Optional[str] = None + ReferencedGroupInfo: Optional[ReferencedSecurityGroupTypeDef] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class RegisterInstanceEventNotificationAttributesRequestRequestTypeDef(BaseModel): + InstanceTagAttribute: RegisterInstanceTagAttributeRequestTypeDef + DryRun: Optional[bool] = None + +class RegisterTransitGatewayMulticastGroupMembersResultTypeDef(BaseModel): + RegisteredMulticastGroupMembers: TransitGatewayMulticastRegisteredGroupMembersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTransitGatewayMulticastGroupSourcesResultTypeDef(BaseModel): + RegisteredMulticastGroupSources: TransitGatewayMulticastRegisteredGroupSourcesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StorageOutputTypeDef(BaseModel): + S3: Optional[S3StorageOutputTypeDef] = None + +class ScheduledInstanceAvailabilityTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + AvailableInstanceCount: Optional[int] = None + FirstSlotStartTime: Optional[datetime] = None + HourlyPrice: Optional[str] = None + InstanceType: Optional[str] = None + MaxTermDurationInDays: Optional[int] = None + MinTermDurationInDays: Optional[int] = None + NetworkPlatform: Optional[str] = None + Platform: Optional[str] = None + PurchaseToken: Optional[str] = None + Recurrence: Optional[ScheduledInstanceRecurrenceTypeDef] = None + SlotDurationInHours: Optional[int] = None + TotalScheduledInstanceHours: Optional[int] = None + +class ScheduledInstanceTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + CreateDate: Optional[datetime] = None + HourlyPrice: Optional[str] = None + InstanceCount: Optional[int] = None + InstanceType: Optional[str] = None + NetworkPlatform: Optional[str] = None + NextSlotStartTime: Optional[datetime] = None + Platform: Optional[str] = None + PreviousSlotEndTime: Optional[datetime] = None + Recurrence: Optional[ScheduledInstanceRecurrenceTypeDef] = None + ScheduledInstanceId: Optional[str] = None + SlotDurationInHours: Optional[int] = None + TermEndDate: Optional[datetime] = None + TermStartDate: Optional[datetime] = None + TotalScheduledInstanceHours: Optional[int] = None + +class ScheduledInstancesBlockDeviceMappingTypeDef(BaseModel): + DeviceName: Optional[str] = None + Ebs: Optional[ScheduledInstancesEbsTypeDef] = None + NoDevice: Optional[str] = None + VirtualName: Optional[str] = None + +class ScheduledInstancesNetworkInterfaceTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[Sequence[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[ScheduledInstancesIpv6AddressTypeDef]] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddressConfigs: Optional[ Sequence[ScheduledInstancesPrivateIpAddressConfigTypeDef] ] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + +class SearchTransitGatewayMulticastGroupsResultTypeDef(BaseModel): + MulticastGroups: List[TransitGatewayMulticastGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class VpcEndpointTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcEndpointType: Optional[VpcEndpointTypeType] = None + VpcId: Optional[str] = None + ServiceName: Optional[str] = None + State: Optional[StateType] = None + PolicyDocument: Optional[str] = None + RouteTableIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + Groups: Optional[List[SecurityGroupIdentifierTypeDef]] = None + IpAddressType: Optional[IpAddressTypeType] = None + DnsOptions: Optional[DnsOptionsTypeDef] = None + PrivateDnsEnabled: Optional[bool] = None + RequesterManaged: Optional[bool] = None + NetworkInterfaceIds: Optional[List[str]] = None + DnsEntries: Optional[List[DnsEntryTypeDef]] = None + CreationTimestamp: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + OwnerId: Optional[str] = None + LastError: Optional[LastErrorTypeDef] = None + +class SecurityGroupRuleUpdateTypeDef(BaseModel): + SecurityGroupRuleId: str + SecurityGroupRule: Optional[SecurityGroupRuleRequestTypeDef] = None + +class ServiceConfigurationTypeDef(BaseModel): + ServiceType: Optional[List[ServiceTypeDetailTypeDef]] = None + ServiceId: Optional[str] = None + ServiceName: Optional[str] = None + ServiceState: Optional[ServiceStateType] = None + AvailabilityZones: Optional[List[str]] = None + AcceptanceRequired: Optional[bool] = None + ManagesVpcEndpoints: Optional[bool] = None + NetworkLoadBalancerArns: Optional[List[str]] = None + GatewayLoadBalancerArns: Optional[List[str]] = None + SupportedIpAddressTypes: Optional[List[ServiceConnectivityTypeType]] = None + BaseEndpointDnsNames: Optional[List[str]] = None + PrivateDnsName: Optional[str] = None + PrivateDnsNameConfiguration: Optional[PrivateDnsNameConfigurationTypeDef] = None + PayerResponsibility: Optional[Literal["ServiceOwner"]] = None + Tags: Optional[List[TagTypeDef]] = None + +class ServiceDetailTypeDef(BaseModel): + ServiceName: Optional[str] = None + ServiceId: Optional[str] = None + ServiceType: Optional[List[ServiceTypeDetailTypeDef]] = None + AvailabilityZones: Optional[List[str]] = None + Owner: Optional[str] = None + BaseEndpointDnsNames: Optional[List[str]] = None + PrivateDnsName: Optional[str] = None + PrivateDnsNames: Optional[List[PrivateDnsDetailsTypeDef]] = None + VpcEndpointPolicySupported: Optional[bool] = None + AcceptanceRequired: Optional[bool] = None + ManagesVpcEndpoints: Optional[bool] = None + PayerResponsibility: Optional[Literal["ServiceOwner"]] = None + Tags: Optional[List[TagTypeDef]] = None + PrivateDnsNameVerificationState: Optional[DnsNameStateType] = None + SupportedIpAddressTypes: Optional[List[ServiceConnectivityTypeType]] = None + +class SnapshotDetailTypeDef(BaseModel): + Description: Optional[str] = None + DeviceName: Optional[str] = None + DiskImageSize: Optional[float] = None + Format: Optional[str] = None + Progress: Optional[str] = None + SnapshotId: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + Url: Optional[str] = None + UserBucket: Optional[UserBucketDetailsTypeDef] = None + +class SnapshotTaskDetailTypeDef(BaseModel): + Description: Optional[str] = None + DiskImageSize: Optional[float] = None + Encrypted: Optional[bool] = None + Format: Optional[str] = None + KmsKeyId: Optional[str] = None + Progress: Optional[str] = None + SnapshotId: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + Url: Optional[str] = None + UserBucket: Optional[UserBucketDetailsTypeDef] = None + +class SpotMaintenanceStrategiesTypeDef(BaseModel): + CapacityRebalance: Optional[SpotCapacityRebalanceTypeDef] = None + +class SpotDatafeedSubscriptionTypeDef(BaseModel): + Bucket: Optional[str] = None + Fault: Optional[SpotInstanceStateFaultTypeDef] = None + OwnerId: Optional[str] = None + Prefix: Optional[str] = None + State: Optional[DatafeedSubscriptionStateType] = None + +class TransitGatewayMulticastDomainAssociationTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + ResourceOwnerId: Optional[str] = None + Subnet: Optional[SubnetAssociationTypeDef] = None + +class TransitGatewayMulticastDomainAssociationsTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + ResourceOwnerId: Optional[str] = None + Subnets: Optional[List[SubnetAssociationTypeDef]] = None + +class SubnetIpv6CidrBlockAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + Ipv6CidrBlockState: Optional[SubnetCidrBlockStateTypeDef] = None + +class TargetReservationValueTypeDef(BaseModel): + ReservationValue: Optional[ReservationValueTypeDef] = None + TargetConfiguration: Optional[TargetConfigurationTypeDef] = None + +class TargetGroupsConfigExtraOutputTypeDef(BaseModel): + TargetGroups: Optional[List[TargetGroupTypeDef]] = None + +class TargetGroupsConfigOutputTypeDef(BaseModel): + TargetGroups: Optional[List[TargetGroupTypeDef]] = None + +class TargetGroupsConfigTypeDef(BaseModel): + TargetGroups: Optional[Sequence[TargetGroupTypeDef]] = None + +class TrafficMirrorFilterRuleTypeDef(BaseModel): + TrafficMirrorFilterRuleId: Optional[str] = None + TrafficMirrorFilterId: Optional[str] = None + TrafficDirection: Optional[TrafficDirectionType] = None + RuleNumber: Optional[int] = None + RuleAction: Optional[TrafficMirrorRuleActionType] = None + Protocol: Optional[int] = None + DestinationPortRange: Optional[TrafficMirrorPortRangeTypeDef] = None + SourcePortRange: Optional[TrafficMirrorPortRangeTypeDef] = None + DestinationCidrBlock: Optional[str] = None + SourceCidrBlock: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayAttachmentTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + TransitGatewayId: Optional[str] = None + TransitGatewayOwnerId: Optional[str] = None + ResourceOwnerId: Optional[str] = None + ResourceType: Optional[TransitGatewayAttachmentResourceTypeType] = None + ResourceId: Optional[str] = None + State: Optional[TransitGatewayAttachmentStateType] = None + Association: Optional[TransitGatewayAttachmentAssociationTypeDef] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayConnectPeerConfigurationTypeDef(BaseModel): + TransitGatewayAddress: Optional[str] = None + PeerAddress: Optional[str] = None + InsideCidrBlocks: Optional[List[str]] = None + Protocol: Optional[Literal["gre"]] = None + BgpConfigurations: Optional[List[TransitGatewayAttachmentBgpConfigurationTypeDef]] = None + +class TransitGatewayConnectTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + TransportTransitGatewayAttachmentId: Optional[str] = None + TransitGatewayId: Optional[str] = None + State: Optional[TransitGatewayAttachmentStateType] = None + CreationTime: Optional[datetime] = None + Options: Optional[TransitGatewayConnectOptionsTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayMulticastDomainTypeDef(BaseModel): + TransitGatewayMulticastDomainId: Optional[str] = None + TransitGatewayId: Optional[str] = None + TransitGatewayMulticastDomainArn: Optional[str] = None + OwnerId: Optional[str] = None + Options: Optional[TransitGatewayMulticastDomainOptionsTypeDef] = None + State: Optional[TransitGatewayMulticastDomainStateType] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayTypeDef(BaseModel): + TransitGatewayId: Optional[str] = None + TransitGatewayArn: Optional[str] = None + State: Optional[TransitGatewayStateType] = None + OwnerId: Optional[str] = None + Description: Optional[str] = None + CreationTime: Optional[datetime] = None + Options: Optional[TransitGatewayOptionsTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayPeeringAttachmentTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + AccepterTransitGatewayAttachmentId: Optional[str] = None + RequesterTgwInfo: Optional[PeeringTgwInfoTypeDef] = None + AccepterTgwInfo: Optional[PeeringTgwInfoTypeDef] = None + Options: Optional[TransitGatewayPeeringAttachmentOptionsTypeDef] = None + Status: Optional[PeeringAttachmentStatusTypeDef] = None + State: Optional[TransitGatewayAttachmentStateType] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TransitGatewayPolicyRuleTypeDef(BaseModel): + SourceCidrBlock: Optional[str] = None + SourcePortRange: Optional[str] = None + DestinationCidrBlock: Optional[str] = None + DestinationPortRange: Optional[str] = None + Protocol: Optional[str] = None + MetaData: Optional[TransitGatewayPolicyRuleMetaDataTypeDef] = None + +class TransitGatewayPrefixListReferenceTypeDef(BaseModel): + TransitGatewayRouteTableId: Optional[str] = None + PrefixListId: Optional[str] = None + PrefixListOwnerId: Optional[str] = None + State: Optional[TransitGatewayPrefixListReferenceStateType] = None + Blackhole: Optional[bool] = None + TransitGatewayAttachment: Optional[TransitGatewayPrefixListAttachmentTypeDef] = None + +class TransitGatewayRouteTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + PrefixListId: Optional[str] = None + TransitGatewayRouteTableAnnouncementId: Optional[str] = None + TransitGatewayAttachments: Optional[List[TransitGatewayRouteAttachmentTypeDef]] = None + Type: Optional[TransitGatewayRouteTypeType] = None + State: Optional[TransitGatewayRouteStateType] = None + +class TransitGatewayVpcAttachmentTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + TransitGatewayId: Optional[str] = None + VpcId: Optional[str] = None + VpcOwnerId: Optional[str] = None + State: Optional[TransitGatewayAttachmentStateType] = None + SubnetIds: Optional[List[str]] = None + CreationTime: Optional[datetime] = None + Options: Optional[TransitGatewayVpcAttachmentOptionsTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class UnsuccessfulInstanceCreditSpecificationItemTypeDef(BaseModel): + InstanceId: Optional[str] = None + Error: Optional[UnsuccessfulInstanceCreditSpecificationItemErrorTypeDef] = None + +class UnsuccessfulItemTypeDef(BaseModel): + Error: Optional[UnsuccessfulItemErrorTypeDef] = None + ResourceId: Optional[str] = None + +class ValidationWarningTypeDef(BaseModel): + Errors: Optional[List[ValidationErrorTypeDef]] = None + +class VerifiedAccessEndpointTypeDef(BaseModel): + VerifiedAccessInstanceId: Optional[str] = None + VerifiedAccessGroupId: Optional[str] = None + VerifiedAccessEndpointId: Optional[str] = None + ApplicationDomain: Optional[str] = None + EndpointType: Optional[VerifiedAccessEndpointTypeType] = None + AttachmentType: Optional[Literal["vpc"]] = None + DomainCertificateArn: Optional[str] = None + EndpointDomain: Optional[str] = None + DeviceValidationDomain: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + LoadBalancerOptions: Optional[VerifiedAccessEndpointLoadBalancerOptionsTypeDef] = None + NetworkInterfaceOptions: Optional[VerifiedAccessEndpointEniOptionsTypeDef] = None + Status: Optional[VerifiedAccessEndpointStatusTypeDef] = None + Description: Optional[str] = None + CreationTime: Optional[str] = None + LastUpdatedTime: Optional[str] = None + DeletionTime: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationResponseTypeDef] = None + +class VerifiedAccessInstanceTypeDef(BaseModel): + VerifiedAccessInstanceId: Optional[str] = None + Description: Optional[str] = None + VerifiedAccessTrustProviders: Optional[ List[VerifiedAccessTrustProviderCondensedTypeDef] ] = None + CreationTime: Optional[str] = None + LastUpdatedTime: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + FipsEnabled: Optional[bool] = None + +class VerifiedAccessLogCloudWatchLogsDestinationTypeDef(BaseModel): + Enabled: Optional[bool] = None + DeliveryStatus: Optional[VerifiedAccessLogDeliveryStatusTypeDef] = None + LogGroup: Optional[str] = None + +class VerifiedAccessLogKinesisDataFirehoseDestinationTypeDef(BaseModel): + Enabled: Optional[bool] = None + DeliveryStatus: Optional[VerifiedAccessLogDeliveryStatusTypeDef] = None + DeliveryStream: Optional[str] = None + +class VerifiedAccessLogS3DestinationTypeDef(BaseModel): + Enabled: Optional[bool] = None + DeliveryStatus: Optional[VerifiedAccessLogDeliveryStatusTypeDef] = None + BucketName: Optional[str] = None + Prefix: Optional[str] = None + BucketOwner: Optional[str] = None + +class VerifiedAccessLogOptionsTypeDef(BaseModel): + S3: Optional[VerifiedAccessLogS3DestinationOptionsTypeDef] = None + CloudWatchLogs: Optional[VerifiedAccessLogCloudWatchLogsDestinationOptionsTypeDef] = None + KinesisDataFirehose: Optional[ VerifiedAccessLogKinesisDataFirehoseDestinationOptionsTypeDef ] = None + LogVersion: Optional[str] = None + IncludeTrustContext: Optional[bool] = None + +class VolumeResponseTypeDef(BaseModel): + Attachments: List[VolumeAttachmentTypeDef] + AvailabilityZone: str + CreateTime: datetime + Encrypted: bool + KmsKeyId: str + OutpostArn: str + Size: int + SnapshotId: str + State: VolumeStateType + VolumeId: str + Iops: int + Tags: List[TagTypeDef] + VolumeType: VolumeTypeType + FastRestored: bool + MultiAttachEnabled: bool + Throughput: int + SseType: SSETypeType + ResponseMetadata: ResponseMetadataTypeDef + +class VolumeTypeDef(BaseModel): + Attachments: Optional[List[VolumeAttachmentTypeDef]] = None + AvailabilityZone: Optional[str] = None + CreateTime: Optional[datetime] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + OutpostArn: Optional[str] = None + Size: Optional[int] = None + SnapshotId: Optional[str] = None + State: Optional[VolumeStateType] = None + VolumeId: Optional[str] = None + Iops: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + VolumeType: Optional[VolumeTypeType] = None + FastRestored: Optional[bool] = None + MultiAttachEnabled: Optional[bool] = None + Throughput: Optional[int] = None + SseType: Optional[SSETypeType] = None + +class VolumeStatusInfoTypeDef(BaseModel): + Details: Optional[List[VolumeStatusDetailsTypeDef]] = None + Status: Optional[VolumeStatusInfoStatusType] = None + +class VpcCidrBlockAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + CidrBlock: Optional[str] = None + CidrBlockState: Optional[VpcCidrBlockStateTypeDef] = None + +class VpcIpv6CidrBlockAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + Ipv6CidrBlockState: Optional[VpcCidrBlockStateTypeDef] = None + NetworkBorderGroup: Optional[str] = None + Ipv6Pool: Optional[str] = None + +class VpcPeeringConnectionVpcInfoTypeDef(BaseModel): + CidrBlock: Optional[str] = None + Ipv6CidrBlockSet: Optional[List[Ipv6CidrBlockTypeDef]] = None + CidrBlockSet: Optional[List[CidrBlockTypeDef]] = None + OwnerId: Optional[str] = None + PeeringOptions: Optional[VpcPeeringConnectionOptionsDescriptionTypeDef] = None + VpcId: Optional[str] = None + Region: Optional[str] = None + +class DescribeAccountAttributesResultTypeDef(BaseModel): + AccountAttributes: List[AccountAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AdditionalDetailTypeDef(BaseModel): + AdditionalDetailType: Optional[str] = None + Component: Optional[AnalysisComponentTypeDef] = None + VpcEndpointService: Optional[AnalysisComponentTypeDef] = None + RuleOptions: Optional[List[RuleOptionTypeDef]] = None + RuleGroupTypePairs: Optional[List[RuleGroupTypePairTypeDef]] = None + RuleGroupRuleOptionsPairs: Optional[List[RuleGroupRuleOptionsPairTypeDef]] = None + ServiceName: Optional[str] = None + LoadBalancers: Optional[List[AnalysisComponentTypeDef]] = None + +class DescribeAddressesAttributeResultTypeDef(BaseModel): + Addresses: List[AddressAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyAddressAttributeResultTypeDef(BaseModel): + Address: AddressAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResetAddressAttributeResultTypeDef(BaseModel): + Address: AddressAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddressesResultTypeDef(BaseModel): + Addresses: List[AddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcEndpointServicePermissionsResultTypeDef(BaseModel): + AllowedPrincipals: List[AllowedPrincipalTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateCarrierGatewayResultTypeDef(BaseModel): + CarrierGateway: CarrierGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCarrierGatewayResultTypeDef(BaseModel): + CarrierGateway: CarrierGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCarrierGatewaysResultTypeDef(BaseModel): + CarrierGateways: List[CarrierGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateCoipPoolResultTypeDef(BaseModel): + CoipPool: CoipPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCoipPoolResultTypeDef(BaseModel): + CoipPool: CoipPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCoipPoolsResultTypeDef(BaseModel): + CoipPools: List[CoipPoolTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateCustomerGatewayResultTypeDef(BaseModel): + CustomerGateway: CustomerGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomerGatewaysResultTypeDef(BaseModel): + CustomerGateways: List[CustomerGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceConnectEndpointResultTypeDef(BaseModel): + InstanceConnectEndpoint: Ec2InstanceConnectEndpointTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInstanceConnectEndpointResultTypeDef(BaseModel): + InstanceConnectEndpoint: Ec2InstanceConnectEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInstanceConnectEndpointsResultTypeDef(BaseModel): + InstanceConnectEndpoints: List[Ec2InstanceConnectEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeHostReservationsResultTypeDef(BaseModel): + HostReservationSet: List[HostReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateInstanceEventWindowRequestRequestTypeDef(BaseModel): + InstanceEventWindowId: str + AssociationTarget: InstanceEventWindowAssociationRequestTypeDef + DryRun: Optional[bool] = None + +class InstanceEventWindowTypeDef(BaseModel): + InstanceEventWindowId: Optional[str] = None + TimeRanges: Optional[List[InstanceEventWindowTimeRangeTypeDef]] = None + Name: Optional[str] = None + CronExpression: Optional[str] = None + AssociationTarget: Optional[InstanceEventWindowAssociationTargetTypeDef] = None + State: Optional[InstanceEventWindowStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class DisassociateInstanceEventWindowRequestRequestTypeDef(BaseModel): + InstanceEventWindowId: str + AssociationTarget: InstanceEventWindowDisassociationRequestTypeDef + DryRun: Optional[bool] = None + +class AssociateIpamResourceDiscoveryResultTypeDef(BaseModel): + IpamResourceDiscoveryAssociation: IpamResourceDiscoveryAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpamResourceDiscoveryAssociationsResultTypeDef(BaseModel): + IpamResourceDiscoveryAssociations: List[IpamResourceDiscoveryAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DisassociateIpamResourceDiscoveryResultTypeDef(BaseModel): + IpamResourceDiscoveryAssociation: IpamResourceDiscoveryAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIpamScopeResultTypeDef(BaseModel): + IpamScope: IpamScopeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIpamScopeResultTypeDef(BaseModel): + IpamScope: IpamScopeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpamScopesResultTypeDef(BaseModel): + IpamScopes: List[IpamScopeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyIpamScopeResultTypeDef(BaseModel): + IpamScope: IpamScopeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyPairsResultTypeDef(BaseModel): + KeyPairs: List[KeyPairInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLaunchTemplateResultTypeDef(BaseModel): + LaunchTemplate: LaunchTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLaunchTemplatesResultTypeDef(BaseModel): + LaunchTemplates: List[LaunchTemplateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyLaunchTemplateResultTypeDef(BaseModel): + LaunchTemplate: LaunchTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResultTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociation: LocalGatewayRouteTableVirtualInterfaceGroupAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResultTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociation: LocalGatewayRouteTableVirtualInterfaceGroupAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResultTypeDef(BaseModel): + LocalGatewayRouteTableVirtualInterfaceGroupAssociations: List[ LocalGatewayRouteTableVirtualInterfaceGroupAssociationTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateLocalGatewayRouteTableVpcAssociationResultTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociation: LocalGatewayRouteTableVpcAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLocalGatewayRouteTableVpcAssociationResultTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociation: LocalGatewayRouteTableVpcAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocalGatewayRouteTableVpcAssociationsResultTypeDef(BaseModel): + LocalGatewayRouteTableVpcAssociations: List[LocalGatewayRouteTableVpcAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeLocalGatewaysResultTypeDef(BaseModel): + LocalGateways: List[LocalGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeLocalGatewayVirtualInterfaceGroupsResultTypeDef(BaseModel): + LocalGatewayVirtualInterfaceGroups: List[LocalGatewayVirtualInterfaceGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeLocalGatewayVirtualInterfacesResultTypeDef(BaseModel): + LocalGatewayVirtualInterfaces: List[LocalGatewayVirtualInterfaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateManagedPrefixListResultTypeDef(BaseModel): + PrefixList: ManagedPrefixListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteManagedPrefixListResultTypeDef(BaseModel): + PrefixList: ManagedPrefixListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeManagedPrefixListsResultTypeDef(BaseModel): + PrefixLists: List[ManagedPrefixListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyManagedPrefixListResultTypeDef(BaseModel): + PrefixList: ManagedPrefixListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreManagedPrefixListVersionResultTypeDef(BaseModel): + PrefixList: ManagedPrefixListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNetworkInsightsAccessScopeAnalysesResultTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalyses: List[NetworkInsightsAccessScopeAnalysisTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartNetworkInsightsAccessScopeAnalysisResultTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysis: NetworkInsightsAccessScopeAnalysisTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNetworkInsightsAccessScopesResultTypeDef(BaseModel): + NetworkInsightsAccessScopes: List[NetworkInsightsAccessScopeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreatePlacementGroupResultTypeDef(BaseModel): + PlacementGroup: PlacementGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePlacementGroupsResultTypeDef(BaseModel): + PlacementGroups: List[PlacementGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReplaceRootVolumeTaskResultTypeDef(BaseModel): + ReplaceRootVolumeTask: ReplaceRootVolumeTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReplaceRootVolumeTasksResultTypeDef(BaseModel): + ReplaceRootVolumeTasks: List[ReplaceRootVolumeTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetSecurityGroupsForVpcResultTypeDef(BaseModel): + SecurityGroupForVpcs: List[SecurityGroupForVpcTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateSnapshotsResultTypeDef(BaseModel): + Snapshots: List[SnapshotInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotTierStatusResultTypeDef(BaseModel): + SnapshotTierStatuses: List[SnapshotTierStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSnapshotsResultTypeDef(BaseModel): + Snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateSubnetCidrReservationResultTypeDef(BaseModel): + SubnetCidrReservation: SubnetCidrReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSubnetCidrReservationResultTypeDef(BaseModel): + DeletedSubnetCidrReservation: SubnetCidrReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubnetCidrReservationsResultTypeDef(BaseModel): + SubnetIpv4CidrReservations: List[SubnetCidrReservationTypeDef] + SubnetIpv6CidrReservations: List[SubnetCidrReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CopySnapshotRequestSnapshotCopyTypeDef(BaseModel): + SourceRegion: str + Description: Optional[str] = None + DestinationOutpostArn: Optional[str] = None + DestinationRegion: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + PresignedUrl: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateNetworkAclRequestVpcCreateNetworkAclTypeDef(BaseModel): + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateNetworkInterfaceRequestSubnetCreateNetworkInterfaceTypeDef(BaseModel): + Description: Optional[str] = None + DryRun: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[Sequence[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[Sequence[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + InterfaceType: Optional[NetworkInterfaceCreationTypeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + ClientToken: Optional[str] = None + EnablePrimaryIpv6: Optional[bool] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class CreateRouteTableRequestVpcCreateRouteTableTypeDef(BaseModel): + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateSecurityGroupRequestVpcCreateSecurityGroupTypeDef(BaseModel): + Description: str + GroupName: str + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateSnapshotRequestVolumeCreateSnapshotTypeDef(BaseModel): + Description: Optional[str] = None + OutpostArn: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateSubnetRequestVpcCreateSubnetTypeDef(BaseModel): + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + CidrBlock: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + OutpostArn: Optional[str] = None + DryRun: Optional[bool] = None + Ipv6Native: Optional[bool] = None + Ipv4IpamPoolId: Optional[str] = None + Ipv4NetmaskLength: Optional[int] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + +class CreateVpcPeeringConnectionRequestVpcRequestVpcPeeringConnectionTypeDef(BaseModel): + DryRun: Optional[bool] = None + PeerOwnerId: Optional[str] = None + PeerVpcId: Optional[str] = None + PeerRegion: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + +class CreateTrafficMirrorSessionResultTypeDef(BaseModel): + TrafficMirrorSession: TrafficMirrorSessionTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrafficMirrorSessionsResultTypeDef(BaseModel): + TrafficMirrorSessions: List[TrafficMirrorSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyTrafficMirrorSessionResultTypeDef(BaseModel): + TrafficMirrorSession: TrafficMirrorSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrafficMirrorTargetResultTypeDef(BaseModel): + TrafficMirrorTarget: TrafficMirrorTargetTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrafficMirrorTargetsResultTypeDef(BaseModel): + TrafficMirrorTargets: List[TrafficMirrorTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTransitGatewayPolicyTableResultTypeDef(BaseModel): + TransitGatewayPolicyTable: TransitGatewayPolicyTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayPolicyTableResultTypeDef(BaseModel): + TransitGatewayPolicyTable: TransitGatewayPolicyTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayPolicyTablesResultTypeDef(BaseModel): + TransitGatewayPolicyTables: List[TransitGatewayPolicyTableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTransitGatewayRouteTableAnnouncementResultTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncement: TransitGatewayRouteTableAnnouncementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayRouteTableAnnouncementResultTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncement: TransitGatewayRouteTableAnnouncementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayRouteTableAnnouncementsResultTypeDef(BaseModel): + TransitGatewayRouteTableAnnouncements: List[TransitGatewayRouteTableAnnouncementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTransitGatewayRouteTableResultTypeDef(BaseModel): + TransitGatewayRouteTable: TransitGatewayRouteTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayRouteTableResultTypeDef(BaseModel): + TransitGatewayRouteTable: TransitGatewayRouteTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayRouteTablesResultTypeDef(BaseModel): + TransitGatewayRouteTables: List[TransitGatewayRouteTableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateTrunkInterfaceResultTypeDef(BaseModel): + InterfaceAssociation: TrunkInterfaceAssociationTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrunkInterfaceAssociationsResultTypeDef(BaseModel): + InterfaceAssociations: List[TrunkInterfaceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeVpcClassicLinkResultTypeDef(BaseModel): + Vpcs: List[VpcClassicLinkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExplanationTypeDef(BaseModel): + Acl: Optional[AnalysisComponentTypeDef] = None + AclRule: Optional[AnalysisAclRuleTypeDef] = None + Address: Optional[str] = None + Addresses: Optional[List[str]] = None + AttachedTo: Optional[AnalysisComponentTypeDef] = None + AvailabilityZones: Optional[List[str]] = None + Cidrs: Optional[List[str]] = None + Component: Optional[AnalysisComponentTypeDef] = None + CustomerGateway: Optional[AnalysisComponentTypeDef] = None + Destination: Optional[AnalysisComponentTypeDef] = None + DestinationVpc: Optional[AnalysisComponentTypeDef] = None + Direction: Optional[str] = None + ExplanationCode: Optional[str] = None + IngressRouteTable: Optional[AnalysisComponentTypeDef] = None + InternetGateway: Optional[AnalysisComponentTypeDef] = None + LoadBalancerArn: Optional[str] = None + ClassicLoadBalancerListener: Optional[AnalysisLoadBalancerListenerTypeDef] = None + LoadBalancerListenerPort: Optional[int] = None + LoadBalancerTarget: Optional[AnalysisLoadBalancerTargetTypeDef] = None + LoadBalancerTargetGroup: Optional[AnalysisComponentTypeDef] = None + LoadBalancerTargetGroups: Optional[List[AnalysisComponentTypeDef]] = None + LoadBalancerTargetPort: Optional[int] = None + ElasticLoadBalancerListener: Optional[AnalysisComponentTypeDef] = None + MissingComponent: Optional[str] = None + NatGateway: Optional[AnalysisComponentTypeDef] = None + NetworkInterface: Optional[AnalysisComponentTypeDef] = None + PacketField: Optional[str] = None + VpcPeeringConnection: Optional[AnalysisComponentTypeDef] = None + Port: Optional[int] = None + PortRanges: Optional[List[PortRangeTypeDef]] = None + PrefixList: Optional[AnalysisComponentTypeDef] = None + Protocols: Optional[List[str]] = None + RouteTableRoute: Optional[AnalysisRouteTableRouteTypeDef] = None + RouteTable: Optional[AnalysisComponentTypeDef] = None + SecurityGroup: Optional[AnalysisComponentTypeDef] = None + SecurityGroupRule: Optional[AnalysisSecurityGroupRuleTypeDef] = None + SecurityGroups: Optional[List[AnalysisComponentTypeDef]] = None + SourceVpc: Optional[AnalysisComponentTypeDef] = None + State: Optional[str] = None + Subnet: Optional[AnalysisComponentTypeDef] = None + SubnetRouteTable: Optional[AnalysisComponentTypeDef] = None + Vpc: Optional[AnalysisComponentTypeDef] = None + VpcEndpoint: Optional[AnalysisComponentTypeDef] = None + VpnConnection: Optional[AnalysisComponentTypeDef] = None + VpnGateway: Optional[AnalysisComponentTypeDef] = None + TransitGateway: Optional[AnalysisComponentTypeDef] = None + TransitGatewayRouteTable: Optional[AnalysisComponentTypeDef] = None + TransitGatewayRouteTableRoute: Optional[TransitGatewayRouteTableRouteTypeDef] = None + TransitGatewayAttachment: Optional[AnalysisComponentTypeDef] = None + ComponentAccount: Optional[str] = None + ComponentRegion: Optional[str] = None + FirewallStatelessRule: Optional[FirewallStatelessRuleTypeDef] = None + FirewallStatefulRule: Optional[FirewallStatefulRuleTypeDef] = None + +class AdvertiseByoipCidrResultTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeprovisionByoipCidrResultTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeByoipCidrsResultTypeDef(BaseModel): + ByoipCidrs: List[ByoipCidrTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MoveByoipCidrToIpamResultTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionByoipCidrResultTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class WithdrawByoipCidrResultTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClientVpnTargetNetworksResultTypeDef(BaseModel): + ClientVpnTargetNetworks: List[TargetNetworkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RouteTableTypeDef(BaseModel): + Associations: Optional[List[RouteTableAssociationTypeDef]] = None + PropagatingVgws: Optional[List[PropagatingVgwTypeDef]] = None + RouteTableId: Optional[str] = None + Routes: Optional[List[RouteTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + VpcId: Optional[str] = None + OwnerId: Optional[str] = None + +class IntegrateServicesTypeDef(BaseModel): + AthenaIntegrations: Optional[Sequence[AthenaIntegrationTypeDef]] = None + +class LaunchTemplateInstanceMarketOptionsRequestTypeDef(BaseModel): + MarketType: Optional[MarketTypeType] = None + SpotOptions: Optional[LaunchTemplateSpotMarketOptionsRequestTypeDef] = None + +class DescribeScheduledInstanceAvailabilityRequestDescribeScheduledInstanceAvailabilityPaginateTypeDef(BaseModel): + FirstSlotStartTimeRange: SlotDateTimeRangeRequestTypeDef + Recurrence: ScheduledInstanceRecurrenceRequestTypeDef + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxSlotDurationInHours: Optional[int] = None + MinSlotDurationInHours: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScheduledInstanceAvailabilityRequestRequestTypeDef(BaseModel): + FirstSlotStartTimeRange: SlotDateTimeRangeRequestTypeDef + Recurrence: ScheduledInstanceRecurrenceRequestTypeDef + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + MaxSlotDurationInHours: Optional[int] = None + MinSlotDurationInHours: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeScheduledInstancesRequestDescribeScheduledInstancesPaginateTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + ScheduledInstanceIds: Optional[Sequence[str]] = None + SlotStartTimeRange: Optional[SlotStartTimeRangeRequestTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScheduledInstancesRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ScheduledInstanceIds: Optional[Sequence[str]] = None + SlotStartTimeRange: Optional[SlotStartTimeRangeRequestTypeDef] = None + +class InstanceMarketOptionsRequestTypeDef(BaseModel): + MarketType: Optional[MarketTypeType] = None + SpotOptions: Optional[SpotMarketOptionsTypeDef] = None + +class CreateVpnGatewayResultTypeDef(BaseModel): + VpnGateway: VpnGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpnGatewaysResultTypeDef(BaseModel): + VpnGateways: List[VpnGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkInterfaceAttachmentTypeDef(BaseModel): + AttachTime: Optional[datetime] = None + AttachmentId: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + DeviceIndex: Optional[int] = None + NetworkCardIndex: Optional[int] = None + InstanceId: Optional[str] = None + InstanceOwnerId: Optional[str] = None + Status: Optional[AttachmentStatusType] = None + EnaSrdSpecification: Optional[AttachmentEnaSrdSpecificationTypeDef] = None + +class DhcpOptionsTypeDef(BaseModel): + DhcpConfigurations: Optional[List[DhcpConfigurationTypeDef]] = None + DhcpOptionsId: Optional[str] = None + OwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribeClientVpnAuthorizationRulesResultTypeDef(BaseModel): + AuthorizationRules: List[AuthorizationRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeAvailabilityZonesResultTypeDef(BaseModel): + AvailabilityZones: List[AvailabilityZoneTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class HostTypeDef(BaseModel): + AutoPlacement: Optional[AutoPlacementType] = None + AvailabilityZone: Optional[str] = None + AvailableCapacity: Optional[AvailableCapacityTypeDef] = None + ClientToken: Optional[str] = None + HostId: Optional[str] = None + HostProperties: Optional[HostPropertiesTypeDef] = None + HostReservationId: Optional[str] = None + Instances: Optional[List[HostInstanceTypeDef]] = None + State: Optional[AllocationStateType] = None + AllocationTime: Optional[datetime] = None + ReleaseTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + HostRecovery: Optional[HostRecoveryType] = None + AllowsMultipleInstanceTypes: Optional[AllowsMultipleInstanceTypesType] = None + OwnerId: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + MemberOfServiceLinkedResourceGroup: Optional[bool] = None + OutpostArn: Optional[str] = None + HostMaintenance: Optional[HostMaintenanceType] = None + AssetId: Optional[str] = None + +class StorageTypeDef(BaseModel): + S3: Optional[S3StorageTypeDef] = None + +class CreateImageRequestInstanceCreateImageTypeDef(BaseModel): + Name: str + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + NoReboot: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + +class ImageAttributeTypeDef(BaseModel): + BlockDeviceMappings: List[BlockDeviceMappingTypeDef] + ImageId: str + LaunchPermissions: List[LaunchPermissionTypeDef] + ProductCodes: List[ProductCodeTypeDef] + Description: AttributeValueTypeDef + KernelId: AttributeValueTypeDef + RamdiskId: AttributeValueTypeDef + SriovNetSupport: AttributeValueTypeDef + BootMode: AttributeValueTypeDef + TpmSupport: AttributeValueTypeDef + UefiData: AttributeValueTypeDef + LastLaunchedTime: AttributeValueTypeDef + ImdsSupport: AttributeValueTypeDef + DeregistrationProtection: AttributeValueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImageTypeDef(BaseModel): + Architecture: Optional[ArchitectureValuesType] = None + CreationDate: Optional[str] = None + ImageId: Optional[str] = None + ImageLocation: Optional[str] = None + ImageType: Optional[ImageTypeValuesType] = None + Public: Optional[bool] = None + KernelId: Optional[str] = None + OwnerId: Optional[str] = None + Platform: Optional[Literal["windows"]] = None + PlatformDetails: Optional[str] = None + UsageOperation: Optional[str] = None + ProductCodes: Optional[List[ProductCodeTypeDef]] = None + RamdiskId: Optional[str] = None + State: Optional[ImageStateType] = None + BlockDeviceMappings: Optional[List[BlockDeviceMappingTypeDef]] = None + Description: Optional[str] = None + EnaSupport: Optional[bool] = None + Hypervisor: Optional[HypervisorTypeType] = None + ImageOwnerAlias: Optional[str] = None + Name: Optional[str] = None + RootDeviceName: Optional[str] = None + RootDeviceType: Optional[DeviceTypeType] = None + SriovNetSupport: Optional[str] = None + StateReason: Optional[StateReasonTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + VirtualizationType: Optional[VirtualizationTypeType] = None + BootMode: Optional[BootModeValuesType] = None + TpmSupport: Optional[Literal["v2.0"]] = None + DeprecationTime: Optional[str] = None + ImdsSupport: Optional[Literal["v2.0"]] = None + SourceInstanceId: Optional[str] = None + DeregistrationProtection: Optional[str] = None + LastLaunchedTime: Optional[str] = None + +class CancelCapacityReservationFleetsResultTypeDef(BaseModel): + SuccessfulFleetCancellations: List[CapacityReservationFleetCancellationStateTypeDef] + FailedFleetCancellations: List[FailedCapacityReservationFleetCancellationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CancelSpotFleetRequestsResponseTypeDef(BaseModel): + SuccessfulFleetRequests: List[CancelSpotFleetRequestsSuccessItemTypeDef] + UnsuccessfulFleetRequests: List[CancelSpotFleetRequestsErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCapacityReservationResultTypeDef(BaseModel): + CapacityReservation: CapacityReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCapacityReservationsResultTypeDef(BaseModel): + CapacityReservations: List[CapacityReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PurchaseCapacityBlockResultTypeDef(BaseModel): + CapacityReservation: CapacityReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCapacityReservationFleetsResultTypeDef(BaseModel): + CapacityReservationFleets: List[CapacityReservationFleetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyInstanceCapacityReservationAttributesRequestRequestTypeDef(BaseModel): + InstanceId: str + CapacityReservationSpecification: CapacityReservationSpecificationTypeDef + DryRun: Optional[bool] = None + +class DescribeClassicLinkInstancesResultTypeDef(BaseModel): + Instances: List[ClassicLinkInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ClientVpnEndpointTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + Description: Optional[str] = None + Status: Optional[ClientVpnEndpointStatusTypeDef] = None + CreationTime: Optional[str] = None + DeletionTime: Optional[str] = None + DnsName: Optional[str] = None + ClientCidrBlock: Optional[str] = None + DnsServers: Optional[List[str]] = None + SplitTunnel: Optional[bool] = None + VpnProtocol: Optional[Literal["openvpn"]] = None + TransportProtocol: Optional[TransportProtocolType] = None + VpnPort: Optional[int] = None + AssociatedTargetNetworks: Optional[List[AssociatedTargetNetworkTypeDef]] = None + ServerCertificateArn: Optional[str] = None + AuthenticationOptions: Optional[List[ClientVpnAuthenticationTypeDef]] = None + ConnectionLogOptions: Optional[ConnectionLogResponseOptionsTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + SecurityGroupIds: Optional[List[str]] = None + VpcId: Optional[str] = None + SelfServicePortalUrl: Optional[str] = None + ClientConnectOptions: Optional[ClientConnectResponseOptionsTypeDef] = None + SessionTimeoutHours: Optional[int] = None + ClientLoginBannerOptions: Optional[ClientLoginBannerResponseOptionsTypeDef] = None + +class DescribeClientVpnConnectionsResultTypeDef(BaseModel): + Connections: List[ClientVpnConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TerminateClientVpnConnectionsResultTypeDef(BaseModel): + ClientVpnEndpointId: str + Username: str + ConnectionStatuses: List[TerminateConnectionStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClientVpnRoutesResultTypeDef(BaseModel): + Routes: List[ClientVpnRouteTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVpnTunnelOptionsSpecificationTypeDef(BaseModel): + TunnelInsideCidr: Optional[str] = None + TunnelInsideIpv6Cidr: Optional[str] = None + PreSharedKey: Optional[str] = None + Phase1LifetimeSeconds: Optional[int] = None + Phase2LifetimeSeconds: Optional[int] = None + RekeyMarginTimeSeconds: Optional[int] = None + RekeyFuzzPercentage: Optional[int] = None + ReplayWindowSize: Optional[int] = None + DPDTimeoutSeconds: Optional[int] = None + DPDTimeoutAction: Optional[str] = None + Phase1EncryptionAlgorithms: Optional[ Sequence[Phase1EncryptionAlgorithmsRequestListValueTypeDef] ] = None + Phase2EncryptionAlgorithms: Optional[ Sequence[Phase2EncryptionAlgorithmsRequestListValueTypeDef] ] = None + Phase1IntegrityAlgorithms: Optional[ Sequence[Phase1IntegrityAlgorithmsRequestListValueTypeDef] ] = None + Phase2IntegrityAlgorithms: Optional[ Sequence[Phase2IntegrityAlgorithmsRequestListValueTypeDef] ] = None + Phase1DHGroupNumbers: Optional[Sequence[Phase1DHGroupNumbersRequestListValueTypeDef]] = None + Phase2DHGroupNumbers: Optional[Sequence[Phase2DHGroupNumbersRequestListValueTypeDef]] = None + IKEVersions: Optional[Sequence[IKEVersionsRequestListValueTypeDef]] = None + StartupAction: Optional[str] = None + LogOptions: Optional[VpnTunnelLogOptionsSpecificationTypeDef] = None + EnableTunnelLifecycleControl: Optional[bool] = None + +class VpnTunnelOptionsSpecificationTypeDef(BaseModel): + TunnelInsideCidr: Optional[str] = None + TunnelInsideIpv6Cidr: Optional[str] = None + PreSharedKey: Optional[str] = None + Phase1LifetimeSeconds: Optional[int] = None + Phase2LifetimeSeconds: Optional[int] = None + RekeyMarginTimeSeconds: Optional[int] = None + RekeyFuzzPercentage: Optional[int] = None + ReplayWindowSize: Optional[int] = None + DPDTimeoutSeconds: Optional[int] = None + DPDTimeoutAction: Optional[str] = None + Phase1EncryptionAlgorithms: Optional[ Sequence[Phase1EncryptionAlgorithmsRequestListValueTypeDef] ] = None + Phase2EncryptionAlgorithms: Optional[ Sequence[Phase2EncryptionAlgorithmsRequestListValueTypeDef] ] = None + Phase1IntegrityAlgorithms: Optional[ Sequence[Phase1IntegrityAlgorithmsRequestListValueTypeDef] ] = None + Phase2IntegrityAlgorithms: Optional[ Sequence[Phase2IntegrityAlgorithmsRequestListValueTypeDef] ] = None + Phase1DHGroupNumbers: Optional[Sequence[Phase1DHGroupNumbersRequestListValueTypeDef]] = None + Phase2DHGroupNumbers: Optional[Sequence[Phase2DHGroupNumbersRequestListValueTypeDef]] = None + IKEVersions: Optional[Sequence[IKEVersionsRequestListValueTypeDef]] = None + StartupAction: Optional[str] = None + LogOptions: Optional[VpnTunnelLogOptionsSpecificationTypeDef] = None + EnableTunnelLifecycleControl: Optional[bool] = None + +class TunnelOptionTypeDef(BaseModel): + OutsideIpAddress: Optional[str] = None + TunnelInsideCidr: Optional[str] = None + TunnelInsideIpv6Cidr: Optional[str] = None + PreSharedKey: Optional[str] = None + Phase1LifetimeSeconds: Optional[int] = None + Phase2LifetimeSeconds: Optional[int] = None + RekeyMarginTimeSeconds: Optional[int] = None + RekeyFuzzPercentage: Optional[int] = None + ReplayWindowSize: Optional[int] = None + DpdTimeoutSeconds: Optional[int] = None + DpdTimeoutAction: Optional[str] = None + Phase1EncryptionAlgorithms: Optional[List[Phase1EncryptionAlgorithmsListValueTypeDef]] = None + Phase2EncryptionAlgorithms: Optional[List[Phase2EncryptionAlgorithmsListValueTypeDef]] = None + Phase1IntegrityAlgorithms: Optional[List[Phase1IntegrityAlgorithmsListValueTypeDef]] = None + Phase2IntegrityAlgorithms: Optional[List[Phase2IntegrityAlgorithmsListValueTypeDef]] = None + Phase1DHGroupNumbers: Optional[List[Phase1DHGroupNumbersListValueTypeDef]] = None + Phase2DHGroupNumbers: Optional[List[Phase2DHGroupNumbersListValueTypeDef]] = None + IkeVersions: Optional[List[IKEVersionsListValueTypeDef]] = None + StartupAction: Optional[str] = None + LogOptions: Optional[VpnTunnelLogOptionsTypeDef] = None + EnableTunnelLifecycleControl: Optional[bool] = None + +class NetworkAclTypeDef(BaseModel): + Associations: Optional[List[NetworkAclAssociationTypeDef]] = None + Entries: Optional[List[NetworkAclEntryTypeDef]] = None + IsDefault: Optional[bool] = None + NetworkAclId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + VpcId: Optional[str] = None + OwnerId: Optional[str] = None + +class ModifySnapshotAttributeRequestRequestTypeDef(BaseModel): + SnapshotId: str + Attribute: Optional[SnapshotAttributeNameType] = None + CreateVolumePermission: Optional[CreateVolumePermissionModificationsTypeDef] = None + GroupNames: Optional[Sequence[str]] = None + OperationType: Optional[OperationTypeType] = None + UserIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class ModifySnapshotAttributeRequestSnapshotModifyAttributeTypeDef(BaseModel): + Attribute: Optional[SnapshotAttributeNameType] = None + CreateVolumePermission: Optional[CreateVolumePermissionModificationsTypeDef] = None + GroupNames: Optional[Sequence[str]] = None + OperationType: Optional[OperationTypeType] = None + UserIds: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class GetAwsNetworkPerformanceDataResultTypeDef(BaseModel): + DataResponses: List[DataResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeleteFleetsResultTypeDef(BaseModel): + SuccessfulFleetDeletions: List[DeleteFleetSuccessItemTypeDef] + UnsuccessfulFleetDeletions: List[DeleteFleetErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLaunchTemplateVersionsResultTypeDef(BaseModel): + SuccessfullyDeletedLaunchTemplateVersions: List[ DeleteLaunchTemplateVersionsResponseSuccessItemTypeDef ] + UnsuccessfullyDeletedLaunchTemplateVersions: List[ DeleteLaunchTemplateVersionsResponseErrorItemTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteQueuedReservedInstancesResultTypeDef(BaseModel): + SuccessfulQueuedPurchaseDeletions: List[SuccessfulQueuedPurchaseDeletionTypeDef] + FailedQueuedPurchaseDeletions: List[FailedQueuedPurchaseDeletionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePrincipalIdFormatResultTypeDef(BaseModel): + Principals: List[PrincipalIdFormatTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFastLaunchImagesResultTypeDef(BaseModel): + FastLaunchImages: List[DescribeFastLaunchImagesSuccessItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFlowLogsResultTypeDef(BaseModel): + FlowLogs: List[FlowLogTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DisableFastSnapshotRestoreErrorItemTypeDef(BaseModel): + SnapshotId: Optional[str] = None + FastSnapshotRestoreStateErrors: Optional[ List[DisableFastSnapshotRestoreStateErrorItemTypeDef] ] = None + +class ImportInstanceTaskDetailsTypeDef(BaseModel): + Description: Optional[str] = None + InstanceId: Optional[str] = None + Platform: Optional[Literal["windows"]] = None + Volumes: Optional[List[ImportInstanceVolumeDetailItemTypeDef]] = None + +class DescribeVpcEndpointConnectionsResultTypeDef(BaseModel): + VpcEndpointConnections: List[VpcEndpointConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyInstanceAttributeRequestInstanceModifyAttributeTypeDef(BaseModel): + SourceDestCheck: Optional[AttributeBooleanValueTypeDef] = None + Attribute: Optional[InstanceAttributeNameType] = None + BlockDeviceMappings: Optional[ Sequence[InstanceBlockDeviceMappingSpecificationTypeDef] ] = None + DisableApiTermination: Optional[AttributeBooleanValueTypeDef] = None + DryRun: Optional[bool] = None + EbsOptimized: Optional[AttributeBooleanValueTypeDef] = None + EnaSupport: Optional[AttributeBooleanValueTypeDef] = None + Groups: Optional[Sequence[str]] = None + InstanceInitiatedShutdownBehavior: Optional[AttributeValueTypeDef] = None + InstanceType: Optional[AttributeValueTypeDef] = None + Kernel: Optional[AttributeValueTypeDef] = None + Ramdisk: Optional[AttributeValueTypeDef] = None + SriovNetSupport: Optional[AttributeValueTypeDef] = None + UserData: Optional[BlobAttributeValueTypeDef] = None + Value: Optional[str] = None + DisableApiStop: Optional[AttributeBooleanValueTypeDef] = None + +class ModifyInstanceAttributeRequestRequestTypeDef(BaseModel): + InstanceId: str + SourceDestCheck: Optional[AttributeBooleanValueTypeDef] = None + Attribute: Optional[InstanceAttributeNameType] = None + BlockDeviceMappings: Optional[ Sequence[InstanceBlockDeviceMappingSpecificationTypeDef] ] = None + DisableApiTermination: Optional[AttributeBooleanValueTypeDef] = None + DryRun: Optional[bool] = None + EbsOptimized: Optional[AttributeBooleanValueTypeDef] = None + EnaSupport: Optional[AttributeBooleanValueTypeDef] = None + Groups: Optional[Sequence[str]] = None + InstanceInitiatedShutdownBehavior: Optional[AttributeValueTypeDef] = None + InstanceType: Optional[AttributeValueTypeDef] = None + Kernel: Optional[AttributeValueTypeDef] = None + Ramdisk: Optional[AttributeValueTypeDef] = None + SriovNetSupport: Optional[AttributeValueTypeDef] = None + UserData: Optional[BlobAttributeValueTypeDef] = None + Value: Optional[str] = None + DisableApiStop: Optional[AttributeBooleanValueTypeDef] = None + +class InstanceAttributeTypeDef(BaseModel): + Groups: List[GroupIdentifierTypeDef] + BlockDeviceMappings: List[InstanceBlockDeviceMappingTypeDef] + DisableApiTermination: AttributeBooleanValueTypeDef + EnaSupport: AttributeBooleanValueTypeDef + EnclaveOptions: EnclaveOptionsTypeDef + EbsOptimized: AttributeBooleanValueTypeDef + InstanceId: str + InstanceInitiatedShutdownBehavior: AttributeValueTypeDef + InstanceType: AttributeValueTypeDef + KernelId: AttributeValueTypeDef + ProductCodes: List[ProductCodeTypeDef] + RamdiskId: AttributeValueTypeDef + RootDeviceName: AttributeValueTypeDef + SourceDestCheck: AttributeBooleanValueTypeDef + SriovNetSupport: AttributeValueTypeDef + UserData: AttributeValueTypeDef + DisableApiStop: AttributeBooleanValueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEgressOnlyInternetGatewayResultTypeDef(BaseModel): + ClientToken: str + EgressOnlyInternetGateway: EgressOnlyInternetGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEgressOnlyInternetGatewaysResultTypeDef(BaseModel): + EgressOnlyInternetGateways: List[EgressOnlyInternetGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateInternetGatewayResultTypeDef(BaseModel): + InternetGateway: InternetGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInternetGatewaysResultTypeDef(BaseModel): + InternetGateways: List[InternetGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeElasticGpusResultTypeDef(BaseModel): + ElasticGpuSet: List[ElasticGpusTypeDef] + MaxResults: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceNetworkInterfaceSpecificationExtraOutputTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[List[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[List[InstanceIpv6AddressTypeDef]] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[List[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + AssociateCarrierIpAddress: Optional[bool] = None + InterfaceType: Optional[str] = None + NetworkCardIndex: Optional[int] = None + Ipv4Prefixes: Optional[List[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[List[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + PrimaryIpv6: Optional[bool] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationRequestTypeDef] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class InstanceNetworkInterfaceSpecificationOutputTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[List[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[List[InstanceIpv6AddressTypeDef]] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[List[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + AssociateCarrierIpAddress: Optional[bool] = None + InterfaceType: Optional[str] = None + NetworkCardIndex: Optional[int] = None + Ipv4Prefixes: Optional[List[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[List[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + PrimaryIpv6: Optional[bool] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationRequestTypeDef] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class InstanceNetworkInterfaceSpecificationTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[Sequence[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[Sequence[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + AssociateCarrierIpAddress: Optional[bool] = None + InterfaceType: Optional[str] = None + NetworkCardIndex: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[Sequence[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + PrimaryIpv6: Optional[bool] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationRequestTypeDef] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class LaunchTemplateInstanceNetworkInterfaceSpecificationRequestTypeDef(BaseModel): + AssociateCarrierIpAddress: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[Sequence[str]] = None + InterfaceType: Optional[str] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressRequestTypeDef]] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[Sequence[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + NetworkCardIndex: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[Sequence[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + PrimaryIpv6: Optional[bool] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationRequestTypeDef] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class AttachNetworkInterfaceRequestNetworkInterfaceAttachTypeDef(BaseModel): + DeviceIndex: int + InstanceId: str + DryRun: Optional[bool] = None + NetworkCardIndex: Optional[int] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationTypeDef] = None + +class AttachNetworkInterfaceRequestRequestTypeDef(BaseModel): + DeviceIndex: int + InstanceId: str + NetworkInterfaceId: str + DryRun: Optional[bool] = None + NetworkCardIndex: Optional[int] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationTypeDef] = None + +class ModifyNetworkInterfaceAttributeRequestNetworkInterfaceModifyAttributeTypeDef(BaseModel): + Attachment: Optional[NetworkInterfaceAttachmentChangesTypeDef] = None + Description: Optional[AttributeValueTypeDef] = None + DryRun: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + SourceDestCheck: Optional[AttributeBooleanValueTypeDef] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationTypeDef] = None + EnablePrimaryIpv6: Optional[bool] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + AssociatePublicIpAddress: Optional[bool] = None + +class ModifyNetworkInterfaceAttributeRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + Attachment: Optional[NetworkInterfaceAttachmentChangesTypeDef] = None + Description: Optional[AttributeValueTypeDef] = None + DryRun: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + SourceDestCheck: Optional[AttributeBooleanValueTypeDef] = None + EnaSrdSpecification: Optional[EnaSrdSpecificationTypeDef] = None + EnablePrimaryIpv6: Optional[bool] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + AssociatePublicIpAddress: Optional[bool] = None + +class EnableFastSnapshotRestoreErrorItemTypeDef(BaseModel): + SnapshotId: Optional[str] = None + FastSnapshotRestoreStateErrors: Optional[ List[EnableFastSnapshotRestoreStateErrorItemTypeDef] ] = None + +class DescribeFleetHistoryResultTypeDef(BaseModel): + HistoryRecords: List[HistoryRecordEntryTypeDef] + LastEvaluatedTime: datetime + FleetId: str + StartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSpotFleetRequestHistoryResponseTypeDef(BaseModel): + HistoryRecords: List[HistoryRecordTypeDef] + LastEvaluatedTime: datetime + SpotFleetRequestId: str + StartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeExportImageTasksResultTypeDef(BaseModel): + ExportImageTasks: List[ExportImageTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateInstanceExportTaskResultTypeDef(BaseModel): + ExportTask: ExportTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExportTasksResultTypeDef(BaseModel): + ExportTasks: List[ExportTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkInsightsPathTypeDef(BaseModel): + NetworkInsightsPathId: Optional[str] = None + NetworkInsightsPathArn: Optional[str] = None + CreatedDate: Optional[datetime] = None + Source: Optional[str] = None + Destination: Optional[str] = None + SourceArn: Optional[str] = None + DestinationArn: Optional[str] = None + SourceIp: Optional[str] = None + DestinationIp: Optional[str] = None + Protocol: Optional[ProtocolType] = None + DestinationPort: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + FilterAtSource: Optional[PathFilterTypeDef] = None + FilterAtDestination: Optional[PathFilterTypeDef] = None + +class SpotOptionsRequestTypeDef(BaseModel): + AllocationStrategy: Optional[SpotAllocationStrategyType] = None + MaintenanceStrategies: Optional[FleetSpotMaintenanceStrategiesRequestTypeDef] = None + InstanceInterruptionBehavior: Optional[SpotInstanceInterruptionBehaviorType] = None + InstancePoolsToUseCount: Optional[int] = None + SingleInstanceType: Optional[bool] = None + SingleAvailabilityZone: Optional[bool] = None + MinTargetCapacity: Optional[int] = None + MaxTotalPrice: Optional[str] = None + +class SpotOptionsTypeDef(BaseModel): + AllocationStrategy: Optional[SpotAllocationStrategyType] = None + MaintenanceStrategies: Optional[FleetSpotMaintenanceStrategiesTypeDef] = None + InstanceInterruptionBehavior: Optional[SpotInstanceInterruptionBehaviorType] = None + InstancePoolsToUseCount: Optional[int] = None + SingleInstanceType: Optional[bool] = None + SingleAvailabilityZone: Optional[bool] = None + MinTargetCapacity: Optional[int] = None + MaxTotalPrice: Optional[str] = None + +class FpgaInfoTypeDef(BaseModel): + Fpgas: Optional[List[FpgaDeviceInfoTypeDef]] = None + TotalFpgaMemoryInMiB: Optional[int] = None + +class DescribeFpgaImageAttributeResultTypeDef(BaseModel): + FpgaImageAttribute: FpgaImageAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyFpgaImageAttributeResultTypeDef(BaseModel): + FpgaImageAttribute: FpgaImageAttributeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFpgaImagesResultTypeDef(BaseModel): + FpgaImages: List[FpgaImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GpuInfoTypeDef(BaseModel): + Gpus: Optional[List[GpuDeviceInfoTypeDef]] = None + TotalGpuMemoryInMiB: Optional[int] = None + +class AssociateIamInstanceProfileResultTypeDef(BaseModel): + IamInstanceProfileAssociation: IamInstanceProfileAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIamInstanceProfileAssociationsResultTypeDef(BaseModel): + IamInstanceProfileAssociations: List[IamInstanceProfileAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DisassociateIamInstanceProfileResultTypeDef(BaseModel): + IamInstanceProfileAssociation: IamInstanceProfileAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReplaceIamInstanceProfileAssociationResultTypeDef(BaseModel): + IamInstanceProfileAssociation: IamInstanceProfileAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyImageAttributeRequestImageModifyAttributeTypeDef(BaseModel): + Attribute: Optional[str] = None + Description: Optional[AttributeValueTypeDef] = None + LaunchPermission: Optional[LaunchPermissionModificationsTypeDef] = None + OperationType: Optional[OperationTypeType] = None + ProductCodes: Optional[Sequence[str]] = None + UserGroups: Optional[Sequence[str]] = None + UserIds: Optional[Sequence[str]] = None + Value: Optional[str] = None + DryRun: Optional[bool] = None + OrganizationArns: Optional[Sequence[str]] = None + OrganizationalUnitArns: Optional[Sequence[str]] = None + ImdsSupport: Optional[AttributeValueTypeDef] = None + +class ModifyImageAttributeRequestRequestTypeDef(BaseModel): + ImageId: str + Attribute: Optional[str] = None + Description: Optional[AttributeValueTypeDef] = None + LaunchPermission: Optional[LaunchPermissionModificationsTypeDef] = None + OperationType: Optional[OperationTypeType] = None + ProductCodes: Optional[Sequence[str]] = None + UserGroups: Optional[Sequence[str]] = None + UserIds: Optional[Sequence[str]] = None + Value: Optional[str] = None + DryRun: Optional[bool] = None + OrganizationArns: Optional[Sequence[str]] = None + OrganizationalUnitArns: Optional[Sequence[str]] = None + ImdsSupport: Optional[AttributeValueTypeDef] = None + +class CreateLocalGatewayRouteTableResultTypeDef(BaseModel): + LocalGatewayRouteTable: LocalGatewayRouteTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLocalGatewayRouteTableResultTypeDef(BaseModel): + LocalGatewayRouteTable: LocalGatewayRouteTableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLocalGatewayRouteTablesResultTypeDef(BaseModel): + LocalGatewayRouteTables: List[LocalGatewayRouteTableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ImportInstanceRequestRequestTypeDef(BaseModel): + Platform: Literal["windows"] + Description: Optional[str] = None + DiskImages: Optional[Sequence[DiskImageTypeDef]] = None + DryRun: Optional[bool] = None + LaunchSpecification: Optional[ImportInstanceLaunchSpecificationTypeDef] = None + +class InferenceAcceleratorInfoTypeDef(BaseModel): + Accelerators: Optional[List[InferenceDeviceInfoTypeDef]] = None + TotalInferenceMemoryInMiB: Optional[int] = None + +class InstanceNetworkInterfaceAttachmentTypeDef(BaseModel): + AttachTime: Optional[datetime] = None + AttachmentId: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + DeviceIndex: Optional[int] = None + Status: Optional[AttachmentStatusType] = None + NetworkCardIndex: Optional[int] = None + EnaSrdSpecification: Optional[InstanceAttachmentEnaSrdSpecificationTypeDef] = None + +class MonitorInstancesResultTypeDef(BaseModel): + InstanceMonitorings: List[InstanceMonitoringTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UnmonitorInstancesResultTypeDef(BaseModel): + InstanceMonitorings: List[InstanceMonitoringTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LaunchTemplateOverridesExtraOutputTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + SpotPrice: Optional[str] = None + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + WeightedCapacity: Optional[float] = None + Priority: Optional[float] = None + InstanceRequirements: Optional[InstanceRequirementsExtraOutputTypeDef] = None + +class FleetLaunchTemplateOverridesTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + MaxPrice: Optional[str] = None + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + WeightedCapacity: Optional[float] = None + Priority: Optional[float] = None + Placement: Optional[PlacementResponseTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsOutputTypeDef] = None + ImageId: Optional[str] = None + +class LaunchTemplateOverridesOutputTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + SpotPrice: Optional[str] = None + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + WeightedCapacity: Optional[float] = None + Priority: Optional[float] = None + InstanceRequirements: Optional[InstanceRequirementsOutputTypeDef] = None + +class LaunchTemplateOverridesTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + SpotPrice: Optional[str] = None + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + WeightedCapacity: Optional[float] = None + Priority: Optional[float] = None + InstanceRequirements: Optional[InstanceRequirementsTypeDef] = None + +class FleetLaunchTemplateOverridesRequestTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + MaxPrice: Optional[str] = None + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + WeightedCapacity: Optional[float] = None + Priority: Optional[float] = None + Placement: Optional[PlacementTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsRequestTypeDef] = None + ImageId: Optional[str] = None + +class GetInstanceTypesFromInstanceRequirementsRequestGetInstanceTypesFromInstanceRequirementsPaginateTypeDef(BaseModel): + ArchitectureTypes: Sequence[ArchitectureTypeType] + VirtualizationTypes: Sequence[VirtualizationTypeType] + InstanceRequirements: InstanceRequirementsRequestTypeDef + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetInstanceTypesFromInstanceRequirementsRequestRequestTypeDef(BaseModel): + ArchitectureTypes: Sequence[ArchitectureTypeType] + VirtualizationTypes: Sequence[VirtualizationTypeType] + InstanceRequirements: InstanceRequirementsRequestTypeDef + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class InstanceRequirementsWithMetadataRequestTypeDef(BaseModel): + ArchitectureTypes: Optional[Sequence[ArchitectureTypeType]] = None + VirtualizationTypes: Optional[Sequence[VirtualizationTypeType]] = None + InstanceRequirements: Optional[InstanceRequirementsRequestTypeDef] = None + +class StartInstancesResultTypeDef(BaseModel): + StartingInstances: List[InstanceStateChangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopInstancesResultTypeDef(BaseModel): + StoppingInstances: List[InstanceStateChangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateInstancesResultTypeDef(BaseModel): + TerminatingInstances: List[InstanceStateChangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceStatusTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + OutpostArn: Optional[str] = None + Events: Optional[List[InstanceStatusEventTypeDef]] = None + InstanceId: Optional[str] = None + InstanceState: Optional[InstanceStateTypeDef] = None + InstanceStatus: Optional[InstanceStatusSummaryTypeDef] = None + SystemStatus: Optional[InstanceStatusSummaryTypeDef] = None + +class RevokeSecurityGroupEgressResultTypeDef(BaseModel): + Return: bool + UnknownIpPermissions: List[IpPermissionExtraExtraOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeSecurityGroupIngressResultTypeDef(BaseModel): + Return: bool + UnknownIpPermissions: List[IpPermissionExtraExtraOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SecurityGroupTypeDef(BaseModel): + Description: Optional[str] = None + GroupName: Optional[str] = None + IpPermissions: Optional[List[IpPermissionOutputTypeDef]] = None + OwnerId: Optional[str] = None + GroupId: Optional[str] = None + IpPermissionsEgress: Optional[List[IpPermissionOutputTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + VpcId: Optional[str] = None + +class AuthorizeSecurityGroupEgressRequestSecurityGroupAuthorizeEgressTypeDef(BaseModel): + DryRun: Optional[bool] = None + IpPermissions: Optional[Sequence[IpPermissionTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + ToPort: Optional[int] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + +class AuthorizeSecurityGroupIngressRequestSecurityGroupAuthorizeIngressTypeDef(BaseModel): + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + GroupName: Optional[str] = None + IpPermissions: Optional[Sequence[IpPermissionTypeDef]] = None + IpProtocol: Optional[str] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + ToPort: Optional[int] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + +class RevokeSecurityGroupEgressRequestSecurityGroupRevokeEgressTypeDef(BaseModel): + DryRun: Optional[bool] = None + IpPermissions: Optional[Sequence[IpPermissionTypeDef]] = None + SecurityGroupRuleIds: Optional[Sequence[str]] = None + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + ToPort: Optional[int] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + +class RevokeSecurityGroupIngressRequestSecurityGroupRevokeIngressTypeDef(BaseModel): + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + GroupName: Optional[str] = None + IpPermissions: Optional[Sequence[IpPermissionTypeDef]] = None + IpProtocol: Optional[str] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + ToPort: Optional[int] = None + DryRun: Optional[bool] = None + SecurityGroupRuleIds: Optional[Sequence[str]] = None + +class StaleSecurityGroupTypeDef(BaseModel): + Description: Optional[str] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + StaleIpPermissions: Optional[List[StaleIpPermissionTypeDef]] = None + StaleIpPermissionsEgress: Optional[List[StaleIpPermissionTypeDef]] = None + VpcId: Optional[str] = None + +class GetIpamDiscoveredAccountsResultTypeDef(BaseModel): + IpamDiscoveredAccounts: List[IpamDiscoveredAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetIpamDiscoveredResourceCidrsResultTypeDef(BaseModel): + IpamDiscoveredResourceCidrs: List[IpamDiscoveredResourceCidrTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetIpamResourceCidrsResultTypeDef(BaseModel): + IpamResourceCidrs: List[IpamResourceCidrTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyIpamResourceCidrResultTypeDef(BaseModel): + IpamResourceCidr: IpamResourceCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIpamResourceDiscoveryResultTypeDef(BaseModel): + IpamResourceDiscovery: IpamResourceDiscoveryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIpamResourceDiscoveryResultTypeDef(BaseModel): + IpamResourceDiscovery: IpamResourceDiscoveryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpamResourceDiscoveriesResultTypeDef(BaseModel): + IpamResourceDiscoveries: List[IpamResourceDiscoveryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyIpamResourceDiscoveryResultTypeDef(BaseModel): + IpamResourceDiscovery: IpamResourceDiscoveryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIpamResultTypeDef(BaseModel): + Ipam: IpamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIpamResultTypeDef(BaseModel): + Ipam: IpamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpamsResultTypeDef(BaseModel): + Ipams: List[IpamTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyIpamResultTypeDef(BaseModel): + Ipam: IpamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeprovisionIpamPoolCidrResultTypeDef(BaseModel): + IpamPoolCidr: IpamPoolCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIpamPoolCidrsResultTypeDef(BaseModel): + IpamPoolCidrs: List[IpamPoolCidrTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ProvisionIpamPoolCidrResultTypeDef(BaseModel): + IpamPoolCidr: IpamPoolCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIpamPoolResultTypeDef(BaseModel): + IpamPool: IpamPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIpamPoolResultTypeDef(BaseModel): + IpamPool: IpamPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpamPoolsResultTypeDef(BaseModel): + IpamPools: List[IpamPoolTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyIpamPoolResultTypeDef(BaseModel): + IpamPool: IpamPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IpamDiscoveredPublicAddressTypeDef(BaseModel): + IpamResourceDiscoveryId: Optional[str] = None + AddressRegion: Optional[str] = None + Address: Optional[str] = None + AddressOwnerId: Optional[str] = None + AddressAllocationId: Optional[str] = None + AssociationStatus: Optional[IpamPublicAddressAssociationStatusType] = None + AddressType: Optional[IpamPublicAddressTypeType] = None + Service: Optional[IpamPublicAddressAwsServiceType] = None + ServiceResource: Optional[str] = None + VpcId: Optional[str] = None + SubnetId: Optional[str] = None + PublicIpv4PoolId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NetworkInterfaceDescription: Optional[str] = None + InstanceId: Optional[str] = None + Tags: Optional[IpamPublicAddressTagsTypeDef] = None + NetworkBorderGroup: Optional[str] = None + SecurityGroups: Optional[List[IpamPublicAddressSecurityGroupTypeDef]] = None + SampleTime: Optional[datetime] = None + +class DescribeIpv6PoolsResultTypeDef(BaseModel): + Ipv6Pools: List[Ipv6PoolTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LaunchTemplateInstanceNetworkInterfaceSpecificationTypeDef(BaseModel): + AssociateCarrierIpAddress: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[List[str]] = None + InterfaceType: Optional[str] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[List[InstanceIpv6AddressTypeDef]] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[List[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + NetworkCardIndex: Optional[int] = None + Ipv4Prefixes: Optional[List[Ipv4PrefixSpecificationResponseTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[List[Ipv6PrefixSpecificationResponseTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + PrimaryIpv6: Optional[bool] = None + EnaSrdSpecification: Optional[LaunchTemplateEnaSrdSpecificationTypeDef] = None + ConnectionTrackingSpecification: Optional[ConnectionTrackingSpecificationTypeDef] = None + +class ModifyFpgaImageAttributeRequestRequestTypeDef(BaseModel): + FpgaImageId: str + DryRun: Optional[bool] = None + Attribute: Optional[FpgaImageAttributeNameType] = None + OperationType: Optional[OperationTypeType] = None + UserIds: Optional[Sequence[str]] = None + UserGroups: Optional[Sequence[str]] = None + ProductCodes: Optional[Sequence[str]] = None + LoadPermission: Optional[LoadPermissionModificationsTypeDef] = None + Description: Optional[str] = None + Name: Optional[str] = None + +class MediaAcceleratorInfoTypeDef(BaseModel): + Accelerators: Optional[List[MediaDeviceInfoTypeDef]] = None + TotalMediaMemoryInMiB: Optional[int] = None + +class ReservedInstancesModificationTypeDef(BaseModel): + ClientToken: Optional[str] = None + CreateDate: Optional[datetime] = None + EffectiveDate: Optional[datetime] = None + ModificationResults: Optional[List[ReservedInstancesModificationResultTypeDef]] = None + ReservedInstancesIds: Optional[List[ReservedInstancesIdTypeDef]] = None + ReservedInstancesModificationId: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + UpdateDate: Optional[datetime] = None + +class CreateVerifiedAccessGroupResultTypeDef(BaseModel): + VerifiedAccessGroup: VerifiedAccessGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVerifiedAccessGroupResultTypeDef(BaseModel): + VerifiedAccessGroup: VerifiedAccessGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVerifiedAccessGroupsResultTypeDef(BaseModel): + VerifiedAccessGroups: List[VerifiedAccessGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVerifiedAccessGroupResultTypeDef(BaseModel): + VerifiedAccessGroup: VerifiedAccessGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNatGatewayResultTypeDef(BaseModel): + ClientToken: str + NatGateway: NatGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNatGatewaysResultTypeDef(BaseModel): + NatGateways: List[NatGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateNetworkInterfacePermissionResultTypeDef(BaseModel): + InterfacePermission: NetworkInterfacePermissionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNetworkInterfacePermissionsResultTypeDef(BaseModel): + NetworkInterfacePermissions: List[NetworkInterfacePermissionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class NeuronInfoTypeDef(BaseModel): + NeuronDevices: Optional[List[NeuronDeviceInfoTypeDef]] = None + TotalNeuronDeviceMemoryInMiB: Optional[int] = None + +class CreateVerifiedAccessTrustProviderResultTypeDef(BaseModel): + VerifiedAccessTrustProvider: VerifiedAccessTrustProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVerifiedAccessTrustProviderResultTypeDef(BaseModel): + VerifiedAccessTrustProvider: VerifiedAccessTrustProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVerifiedAccessTrustProvidersResultTypeDef(BaseModel): + VerifiedAccessTrustProviders: List[VerifiedAccessTrustProviderTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVerifiedAccessTrustProviderResultTypeDef(BaseModel): + VerifiedAccessTrustProvider: VerifiedAccessTrustProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AccessScopePathRequestTypeDef(BaseModel): + Source: Optional[PathStatementRequestTypeDef] = None + Destination: Optional[PathStatementRequestTypeDef] = None + ThroughResources: Optional[Sequence[ThroughResourcesStatementRequestTypeDef]] = None + +class AccessScopePathTypeDef(BaseModel): + Source: Optional[PathStatementTypeDef] = None + Destination: Optional[PathStatementTypeDef] = None + ThroughResources: Optional[List[ThroughResourcesStatementTypeDef]] = None + +class CancelReservedInstancesListingResultTypeDef(BaseModel): + ReservedInstancesListings: List[ReservedInstancesListingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReservedInstancesListingResultTypeDef(BaseModel): + ReservedInstancesListings: List[ReservedInstancesListingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReservedInstancesListingsResultTypeDef(BaseModel): + ReservedInstancesListings: List[ReservedInstancesListingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePublicIpv4PoolsResultTypeDef(BaseModel): + PublicIpv4Pools: List[PublicIpv4PoolTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReservedInstancesOfferingsResultTypeDef(BaseModel): + ReservedInstancesOfferings: List[ReservedInstancesOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReservedInstancesResultTypeDef(BaseModel): + ReservedInstances: List[ReservedInstancesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizeSecurityGroupEgressResultTypeDef(BaseModel): + Return: bool + SecurityGroupRules: List[SecurityGroupRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizeSecurityGroupIngressResultTypeDef(BaseModel): + Return: bool + SecurityGroupRules: List[SecurityGroupRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSecurityGroupRulesResultTypeDef(BaseModel): + SecurityGroupRules: List[SecurityGroupRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BundleTaskTypeDef(BaseModel): + BundleId: Optional[str] = None + BundleTaskError: Optional[BundleTaskErrorTypeDef] = None + InstanceId: Optional[str] = None + Progress: Optional[str] = None + StartTime: Optional[datetime] = None + State: Optional[BundleTaskStateType] = None + Storage: Optional[StorageOutputTypeDef] = None + UpdateTime: Optional[datetime] = None + +class DescribeScheduledInstanceAvailabilityResultTypeDef(BaseModel): + ScheduledInstanceAvailabilitySet: List[ScheduledInstanceAvailabilityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeScheduledInstancesResultTypeDef(BaseModel): + ScheduledInstanceSet: List[ScheduledInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PurchaseScheduledInstancesResultTypeDef(BaseModel): + ScheduledInstanceSet: List[ScheduledInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduledInstancesLaunchSpecificationTypeDef(BaseModel): + ImageId: str + BlockDeviceMappings: Optional[Sequence[ScheduledInstancesBlockDeviceMappingTypeDef]] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[ScheduledInstancesIamInstanceProfileTypeDef] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[ScheduledInstancesMonitoringTypeDef] = None + NetworkInterfaces: Optional[Sequence[ScheduledInstancesNetworkInterfaceTypeDef]] = None + Placement: Optional[ScheduledInstancesPlacementTypeDef] = None + RamdiskId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + +class CreateVpcEndpointResultTypeDef(BaseModel): + VpcEndpoint: VpcEndpointTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcEndpointsResultTypeDef(BaseModel): + VpcEndpoints: List[VpcEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifySecurityGroupRulesRequestRequestTypeDef(BaseModel): + GroupId: str + SecurityGroupRules: Sequence[SecurityGroupRuleUpdateTypeDef] + DryRun: Optional[bool] = None + +class CreateVpcEndpointServiceConfigurationResultTypeDef(BaseModel): + ServiceConfiguration: ServiceConfigurationTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcEndpointServiceConfigurationsResultTypeDef(BaseModel): + ServiceConfigurations: List[ServiceConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeVpcEndpointServicesResultTypeDef(BaseModel): + ServiceNames: List[str] + ServiceDetails: List[ServiceDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ImportImageResultTypeDef(BaseModel): + Architecture: str + Description: str + Encrypted: bool + Hypervisor: str + ImageId: str + ImportTaskId: str + KmsKeyId: str + LicenseType: str + Platform: str + Progress: str + SnapshotDetails: List[SnapshotDetailTypeDef] + Status: str + StatusMessage: str + LicenseSpecifications: List[ImportImageLicenseConfigurationResponseTypeDef] + Tags: List[TagTypeDef] + UsageOperation: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportImageTaskTypeDef(BaseModel): + Architecture: Optional[str] = None + Description: Optional[str] = None + Encrypted: Optional[bool] = None + Hypervisor: Optional[str] = None + ImageId: Optional[str] = None + ImportTaskId: Optional[str] = None + KmsKeyId: Optional[str] = None + LicenseType: Optional[str] = None + Platform: Optional[str] = None + Progress: Optional[str] = None + SnapshotDetails: Optional[List[SnapshotDetailTypeDef]] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + LicenseSpecifications: Optional[List[ImportImageLicenseConfigurationResponseTypeDef]] = None + UsageOperation: Optional[str] = None + BootMode: Optional[BootModeValuesType] = None + +class ImportSnapshotResultTypeDef(BaseModel): + Description: str + ImportTaskId: str + SnapshotTaskDetail: SnapshotTaskDetailTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportSnapshotTaskTypeDef(BaseModel): + Description: Optional[str] = None + ImportTaskId: Optional[str] = None + SnapshotTaskDetail: Optional[SnapshotTaskDetailTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateSpotDatafeedSubscriptionResultTypeDef(BaseModel): + SpotDatafeedSubscription: SpotDatafeedSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSpotDatafeedSubscriptionResultTypeDef(BaseModel): + SpotDatafeedSubscription: SpotDatafeedSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayMulticastDomainAssociationsResultTypeDef(BaseModel): + MulticastDomainAssociations: List[TransitGatewayMulticastDomainAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AcceptTransitGatewayMulticastDomainAssociationsResultTypeDef(BaseModel): + Associations: TransitGatewayMulticastDomainAssociationsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateTransitGatewayMulticastDomainResultTypeDef(BaseModel): + Associations: TransitGatewayMulticastDomainAssociationsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateTransitGatewayMulticastDomainResultTypeDef(BaseModel): + Associations: TransitGatewayMulticastDomainAssociationsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RejectTransitGatewayMulticastDomainAssociationsResultTypeDef(BaseModel): + Associations: TransitGatewayMulticastDomainAssociationsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateSubnetCidrBlockResultTypeDef(BaseModel): + Ipv6CidrBlockAssociation: SubnetIpv6CidrBlockAssociationTypeDef + SubnetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateSubnetCidrBlockResultTypeDef(BaseModel): + Ipv6CidrBlockAssociation: SubnetIpv6CidrBlockAssociationTypeDef + SubnetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubnetTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + AvailableIpAddressCount: Optional[int] = None + CidrBlock: Optional[str] = None + DefaultForAz: Optional[bool] = None + EnableLniAtDeviceIndex: Optional[int] = None + MapPublicIpOnLaunch: Optional[bool] = None + MapCustomerOwnedIpOnLaunch: Optional[bool] = None + CustomerOwnedIpv4Pool: Optional[str] = None + State: Optional[SubnetStateType] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + OwnerId: Optional[str] = None + AssignIpv6AddressOnCreation: Optional[bool] = None + Ipv6CidrBlockAssociationSet: Optional[List[SubnetIpv6CidrBlockAssociationTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + SubnetArn: Optional[str] = None + OutpostArn: Optional[str] = None + EnableDns64: Optional[bool] = None + Ipv6Native: Optional[bool] = None + PrivateDnsNameOptionsOnLaunch: Optional[PrivateDnsNameOptionsOnLaunchTypeDef] = None + +class GetReservedInstancesExchangeQuoteResultTypeDef(BaseModel): + CurrencyCode: str + IsValidExchange: bool + OutputReservedInstancesWillExpireAt: datetime + PaymentDue: str + ReservedInstanceValueRollup: ReservationValueTypeDef + ReservedInstanceValueSet: List[ReservedInstanceReservationValueTypeDef] + TargetConfigurationValueRollup: ReservationValueTypeDef + TargetConfigurationValueSet: List[TargetReservationValueTypeDef] + ValidationFailureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class LoadBalancersConfigExtraOutputTypeDef(BaseModel): + ClassicLoadBalancersConfig: Optional[ClassicLoadBalancersConfigExtraOutputTypeDef] = None + TargetGroupsConfig: Optional[TargetGroupsConfigExtraOutputTypeDef] = None + +class LoadBalancersConfigOutputTypeDef(BaseModel): + ClassicLoadBalancersConfig: Optional[ClassicLoadBalancersConfigOutputTypeDef] = None + TargetGroupsConfig: Optional[TargetGroupsConfigOutputTypeDef] = None + +class LoadBalancersConfigTypeDef(BaseModel): + ClassicLoadBalancersConfig: Optional[ClassicLoadBalancersConfigTypeDef] = None + TargetGroupsConfig: Optional[TargetGroupsConfigTypeDef] = None + +class CreateTrafficMirrorFilterRuleResultTypeDef(BaseModel): + TrafficMirrorFilterRule: TrafficMirrorFilterRuleTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrafficMirrorFilterRulesResultTypeDef(BaseModel): + TrafficMirrorFilterRules: List[TrafficMirrorFilterRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyTrafficMirrorFilterRuleResultTypeDef(BaseModel): + TrafficMirrorFilterRule: TrafficMirrorFilterRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TrafficMirrorFilterTypeDef(BaseModel): + TrafficMirrorFilterId: Optional[str] = None + IngressFilterRules: Optional[List[TrafficMirrorFilterRuleTypeDef]] = None + EgressFilterRules: Optional[List[TrafficMirrorFilterRuleTypeDef]] = None + NetworkServices: Optional[List[Literal["amazon-dns"]]] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribeTransitGatewayAttachmentsResultTypeDef(BaseModel): + TransitGatewayAttachments: List[TransitGatewayAttachmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TransitGatewayConnectPeerTypeDef(BaseModel): + TransitGatewayAttachmentId: Optional[str] = None + TransitGatewayConnectPeerId: Optional[str] = None + State: Optional[TransitGatewayConnectPeerStateType] = None + CreationTime: Optional[datetime] = None + ConnectPeerConfiguration: Optional[TransitGatewayConnectPeerConfigurationTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateTransitGatewayConnectResultTypeDef(BaseModel): + TransitGatewayConnect: TransitGatewayConnectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayConnectResultTypeDef(BaseModel): + TransitGatewayConnect: TransitGatewayConnectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayConnectsResultTypeDef(BaseModel): + TransitGatewayConnects: List[TransitGatewayConnectTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTransitGatewayMulticastDomainResultTypeDef(BaseModel): + TransitGatewayMulticastDomain: TransitGatewayMulticastDomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayMulticastDomainResultTypeDef(BaseModel): + TransitGatewayMulticastDomain: TransitGatewayMulticastDomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayMulticastDomainsResultTypeDef(BaseModel): + TransitGatewayMulticastDomains: List[TransitGatewayMulticastDomainTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTransitGatewayResultTypeDef(BaseModel): + TransitGateway: TransitGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayResultTypeDef(BaseModel): + TransitGateway: TransitGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewaysResultTypeDef(BaseModel): + TransitGateways: List[TransitGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyTransitGatewayResultTypeDef(BaseModel): + TransitGateway: TransitGatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptTransitGatewayPeeringAttachmentResultTypeDef(BaseModel): + TransitGatewayPeeringAttachment: TransitGatewayPeeringAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitGatewayPeeringAttachmentResultTypeDef(BaseModel): + TransitGatewayPeeringAttachment: TransitGatewayPeeringAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayPeeringAttachmentResultTypeDef(BaseModel): + TransitGatewayPeeringAttachment: TransitGatewayPeeringAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayPeeringAttachmentsResultTypeDef(BaseModel): + TransitGatewayPeeringAttachments: List[TransitGatewayPeeringAttachmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RejectTransitGatewayPeeringAttachmentResultTypeDef(BaseModel): + TransitGatewayPeeringAttachment: TransitGatewayPeeringAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TransitGatewayPolicyTableEntryTypeDef(BaseModel): + PolicyRuleNumber: Optional[str] = None + PolicyRule: Optional[TransitGatewayPolicyRuleTypeDef] = None + TargetRouteTableId: Optional[str] = None + +class CreateTransitGatewayPrefixListReferenceResultTypeDef(BaseModel): + TransitGatewayPrefixListReference: TransitGatewayPrefixListReferenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayPrefixListReferenceResultTypeDef(BaseModel): + TransitGatewayPrefixListReference: TransitGatewayPrefixListReferenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayPrefixListReferencesResultTypeDef(BaseModel): + TransitGatewayPrefixListReferences: List[TransitGatewayPrefixListReferenceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyTransitGatewayPrefixListReferenceResultTypeDef(BaseModel): + TransitGatewayPrefixListReference: TransitGatewayPrefixListReferenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitGatewayRouteResultTypeDef(BaseModel): + Route: TransitGatewayRouteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayRouteResultTypeDef(BaseModel): + Route: TransitGatewayRouteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReplaceTransitGatewayRouteResultTypeDef(BaseModel): + Route: TransitGatewayRouteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchTransitGatewayRoutesResultTypeDef(BaseModel): + Routes: List[TransitGatewayRouteTypeDef] + AdditionalRoutesAvailable: bool + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptTransitGatewayVpcAttachmentResultTypeDef(BaseModel): + TransitGatewayVpcAttachment: TransitGatewayVpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitGatewayVpcAttachmentResultTypeDef(BaseModel): + TransitGatewayVpcAttachment: TransitGatewayVpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayVpcAttachmentResultTypeDef(BaseModel): + TransitGatewayVpcAttachment: TransitGatewayVpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayVpcAttachmentsResultTypeDef(BaseModel): + TransitGatewayVpcAttachments: List[TransitGatewayVpcAttachmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyTransitGatewayVpcAttachmentResultTypeDef(BaseModel): + TransitGatewayVpcAttachment: TransitGatewayVpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RejectTransitGatewayVpcAttachmentResultTypeDef(BaseModel): + TransitGatewayVpcAttachment: TransitGatewayVpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstanceCreditSpecificationResultTypeDef(BaseModel): + SuccessfulInstanceCreditSpecifications: List[ SuccessfulInstanceCreditSpecificationItemTypeDef ] + UnsuccessfulInstanceCreditSpecifications: List[ UnsuccessfulInstanceCreditSpecificationItemTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptVpcEndpointConnectionsResultTypeDef(BaseModel): + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowLogsResultTypeDef(BaseModel): + ClientToken: str + FlowLogIds: List[str] + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFlowLogsResultTypeDef(BaseModel): + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcEndpointConnectionNotificationsResultTypeDef(BaseModel): + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcEndpointServiceConfigurationsResultTypeDef(BaseModel): + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcEndpointsResultTypeDef(BaseModel): + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyHostsResultTypeDef(BaseModel): + Successful: List[str] + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RejectVpcEndpointConnectionsResultTypeDef(BaseModel): + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReleaseHostsResultTypeDef(BaseModel): + Successful: List[str] + Unsuccessful: List[UnsuccessfulItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLaunchTemplateResultTypeDef(BaseModel): + LaunchTemplate: LaunchTemplateTypeDef + Warning: ValidationWarningTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVerifiedAccessEndpointResultTypeDef(BaseModel): + VerifiedAccessEndpoint: VerifiedAccessEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVerifiedAccessEndpointResultTypeDef(BaseModel): + VerifiedAccessEndpoint: VerifiedAccessEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVerifiedAccessEndpointsResultTypeDef(BaseModel): + VerifiedAccessEndpoints: List[VerifiedAccessEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVerifiedAccessEndpointResultTypeDef(BaseModel): + VerifiedAccessEndpoint: VerifiedAccessEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AttachVerifiedAccessTrustProviderResultTypeDef(BaseModel): + VerifiedAccessTrustProvider: VerifiedAccessTrustProviderTypeDef + VerifiedAccessInstance: VerifiedAccessInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVerifiedAccessInstanceResultTypeDef(BaseModel): + VerifiedAccessInstance: VerifiedAccessInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVerifiedAccessInstanceResultTypeDef(BaseModel): + VerifiedAccessInstance: VerifiedAccessInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVerifiedAccessInstancesResultTypeDef(BaseModel): + VerifiedAccessInstances: List[VerifiedAccessInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DetachVerifiedAccessTrustProviderResultTypeDef(BaseModel): + VerifiedAccessTrustProvider: VerifiedAccessTrustProviderTypeDef + VerifiedAccessInstance: VerifiedAccessInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVerifiedAccessInstanceResultTypeDef(BaseModel): + VerifiedAccessInstance: VerifiedAccessInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VerifiedAccessLogsTypeDef(BaseModel): + S3: Optional[VerifiedAccessLogS3DestinationTypeDef] = None + CloudWatchLogs: Optional[VerifiedAccessLogCloudWatchLogsDestinationTypeDef] = None + KinesisDataFirehose: Optional[VerifiedAccessLogKinesisDataFirehoseDestinationTypeDef] = None + LogVersion: Optional[str] = None + IncludeTrustContext: Optional[bool] = None + +class ModifyVerifiedAccessInstanceLoggingConfigurationRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceId: str + AccessLogs: VerifiedAccessLogOptionsTypeDef + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class DescribeVolumesResultTypeDef(BaseModel): + Volumes: List[VolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class VolumeStatusItemTypeDef(BaseModel): + Actions: Optional[List[VolumeStatusActionTypeDef]] = None + AvailabilityZone: Optional[str] = None + OutpostArn: Optional[str] = None + Events: Optional[List[VolumeStatusEventTypeDef]] = None + VolumeId: Optional[str] = None + VolumeStatus: Optional[VolumeStatusInfoTypeDef] = None + AttachmentStatuses: Optional[List[VolumeStatusAttachmentStatusTypeDef]] = None + +class AssociateVpcCidrBlockResultTypeDef(BaseModel): + Ipv6CidrBlockAssociation: VpcIpv6CidrBlockAssociationTypeDef + CidrBlockAssociation: VpcCidrBlockAssociationTypeDef + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateVpcCidrBlockResultTypeDef(BaseModel): + Ipv6CidrBlockAssociation: VpcIpv6CidrBlockAssociationTypeDef + CidrBlockAssociation: VpcCidrBlockAssociationTypeDef + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class VpcTypeDef(BaseModel): + CidrBlock: Optional[str] = None + DhcpOptionsId: Optional[str] = None + State: Optional[VpcStateType] = None + VpcId: Optional[str] = None + OwnerId: Optional[str] = None + InstanceTenancy: Optional[TenancyType] = None + Ipv6CidrBlockAssociationSet: Optional[List[VpcIpv6CidrBlockAssociationTypeDef]] = None + CidrBlockAssociationSet: Optional[List[VpcCidrBlockAssociationTypeDef]] = None + IsDefault: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + +class VpcPeeringConnectionTypeDef(BaseModel): + AccepterVpcInfo: Optional[VpcPeeringConnectionVpcInfoTypeDef] = None + ExpirationTime: Optional[datetime] = None + RequesterVpcInfo: Optional[VpcPeeringConnectionVpcInfoTypeDef] = None + Status: Optional[VpcPeeringConnectionStateReasonTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + VpcPeeringConnectionId: Optional[str] = None + +class AssociateInstanceEventWindowResultTypeDef(BaseModel): + InstanceEventWindow: InstanceEventWindowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceEventWindowResultTypeDef(BaseModel): + InstanceEventWindow: InstanceEventWindowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInstanceEventWindowsResultTypeDef(BaseModel): + InstanceEventWindows: List[InstanceEventWindowTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DisassociateInstanceEventWindowResultTypeDef(BaseModel): + InstanceEventWindow: InstanceEventWindowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyInstanceEventWindowResultTypeDef(BaseModel): + InstanceEventWindow: InstanceEventWindowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptAddressTransferRequestRequestTypeDef(BaseModel): + Address: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class AllocateAddressRequestRequestTypeDef(BaseModel): + Domain: Optional[DomainTypeType] = None + Address: Optional[str] = None + PublicIpv4Pool: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + CustomerOwnedIpv4Pool: Optional[str] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class AllocateHostsRequestRequestTypeDef(BaseModel): + AvailabilityZone: str + AutoPlacement: Optional[AutoPlacementType] = None + ClientToken: Optional[str] = None + InstanceType: Optional[str] = None + InstanceFamily: Optional[str] = None + Quantity: Optional[int] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + HostRecovery: Optional[HostRecoveryType] = None + OutpostArn: Optional[str] = None + HostMaintenance: Optional[HostMaintenanceType] = None + AssetIds: Optional[Sequence[str]] = None + +class AssociateIpamResourceDiscoveryRequestRequestTypeDef(BaseModel): + IpamId: str + IpamResourceDiscoveryId: str + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CopyImageRequestRequestTypeDef(BaseModel): + Name: str + SourceImageId: str + SourceRegion: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DestinationOutpostArn: Optional[str] = None + DryRun: Optional[bool] = None + CopyImageTags: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CopySnapshotRequestRequestTypeDef(BaseModel): + SourceRegion: str + SourceSnapshotId: str + Description: Optional[str] = None + DestinationOutpostArn: Optional[str] = None + DestinationRegion: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + PresignedUrl: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateCapacityReservationFleetRequestRequestTypeDef(BaseModel): + InstanceTypeSpecifications: Sequence[ReservationFleetInstanceSpecificationTypeDef] + TotalTargetCapacity: int + AllocationStrategy: Optional[str] = None + ClientToken: Optional[str] = None + Tenancy: Optional[Literal["default"]] = None + EndDate: Optional[TimestampTypeDef] = None + InstanceMatchCriteria: Optional[Literal["open"]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateCapacityReservationRequestRequestTypeDef(BaseModel): + InstanceType: str + InstancePlatform: CapacityReservationInstancePlatformType + InstanceCount: int + ClientToken: Optional[str] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + Tenancy: Optional[CapacityReservationTenancyType] = None + EbsOptimized: Optional[bool] = None + EphemeralStorage: Optional[bool] = None + EndDate: Optional[TimestampTypeDef] = None + EndDateType: Optional[EndDateTypeType] = None + InstanceMatchCriteria: Optional[InstanceMatchCriteriaType] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + OutpostArn: Optional[str] = None + PlacementGroupArn: Optional[str] = None + +class CreateCarrierGatewayRequestRequestTypeDef(BaseModel): + VpcId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class CreateClientVpnEndpointRequestRequestTypeDef(BaseModel): + ClientCidrBlock: str + ServerCertificateArn: str + AuthenticationOptions: Sequence[ClientVpnAuthenticationRequestTypeDef] + ConnectionLogOptions: ConnectionLogOptionsTypeDef + DnsServers: Optional[Sequence[str]] = None + TransportProtocol: Optional[TransportProtocolType] = None + VpnPort: Optional[int] = None + Description: Optional[str] = None + SplitTunnel: Optional[bool] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + VpcId: Optional[str] = None + SelfServicePortal: Optional[SelfServicePortalType] = None + ClientConnectOptions: Optional[ClientConnectOptionsTypeDef] = None + SessionTimeoutHours: Optional[int] = None + ClientLoginBannerOptions: Optional[ClientLoginBannerOptionsTypeDef] = None + +class CreateCoipPoolRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateCustomerGatewayRequestRequestTypeDef(BaseModel): + Type: Literal["ipsec.1"] + BgpAsn: Optional[int] = None + PublicIp: Optional[str] = None + CertificateArn: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DeviceName: Optional[str] = None + IpAddress: Optional[str] = None + DryRun: Optional[bool] = None + BgpAsnExtended: Optional[int] = None + +class CreateDhcpOptionsRequestRequestTypeDef(BaseModel): + DhcpConfigurations: Sequence[NewDhcpConfigurationTypeDef] + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateDhcpOptionsRequestServiceResourceCreateDhcpOptionsTypeDef(BaseModel): + DhcpConfigurations: Sequence[NewDhcpConfigurationTypeDef] + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateEgressOnlyInternetGatewayRequestRequestTypeDef(BaseModel): + VpcId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateFlowLogsRequestRequestTypeDef(BaseModel): + ResourceIds: Sequence[str] + ResourceType: FlowLogsResourceTypeType + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + DeliverLogsPermissionArn: Optional[str] = None + DeliverCrossAccountRole: Optional[str] = None + LogGroupName: Optional[str] = None + TrafficType: Optional[TrafficTypeType] = None + LogDestinationType: Optional[LogDestinationTypeType] = None + LogDestination: Optional[str] = None + LogFormat: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + MaxAggregationInterval: Optional[int] = None + DestinationOptions: Optional[DestinationOptionsRequestTypeDef] = None + +class CreateFpgaImageRequestRequestTypeDef(BaseModel): + InputStorageLocation: StorageLocationTypeDef + DryRun: Optional[bool] = None + LogsStorageLocation: Optional[StorageLocationTypeDef] = None + Description: Optional[str] = None + Name: Optional[str] = None + ClientToken: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateImageRequestRequestTypeDef(BaseModel): + InstanceId: str + Name: str + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + NoReboot: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateInstanceConnectEndpointRequestRequestTypeDef(BaseModel): + SubnetId: str + DryRun: Optional[bool] = None + SecurityGroupIds: Optional[Sequence[str]] = None + PreserveClientIp: Optional[bool] = None + ClientToken: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateInstanceEventWindowRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Name: Optional[str] = None + TimeRanges: Optional[Sequence[InstanceEventWindowTimeRangeRequestTypeDef]] = None + CronExpression: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateInstanceExportTaskRequestRequestTypeDef(BaseModel): + ExportToS3Task: ExportToS3TaskSpecificationTypeDef + InstanceId: str + TargetEnvironment: ExportEnvironmentType + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateInternetGatewayRequestRequestTypeDef(BaseModel): + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateInternetGatewayRequestServiceResourceCreateInternetGatewayTypeDef(BaseModel): + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateIpamPoolRequestRequestTypeDef(BaseModel): + IpamScopeId: str + AddressFamily: AddressFamilyType + DryRun: Optional[bool] = None + Locale: Optional[str] = None + SourceIpamPoolId: Optional[str] = None + Description: Optional[str] = None + AutoImport: Optional[bool] = None + PubliclyAdvertisable: Optional[bool] = None + AllocationMinNetmaskLength: Optional[int] = None + AllocationMaxNetmaskLength: Optional[int] = None + AllocationDefaultNetmaskLength: Optional[int] = None + AllocationResourceTags: Optional[Sequence[RequestIpamResourceTagTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + AwsService: Optional[Literal["ec2"]] = None + PublicIpSource: Optional[IpamPoolPublicIpSourceType] = None + SourceResource: Optional[IpamPoolSourceResourceRequestTypeDef] = None + +class CreateIpamRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Description: Optional[str] = None + OperatingRegions: Optional[Sequence[AddIpamOperatingRegionTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + Tier: Optional[IpamTierType] = None + +class CreateIpamResourceDiscoveryRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + Description: Optional[str] = None + OperatingRegions: Optional[Sequence[AddIpamOperatingRegionTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateIpamScopeRequestRequestTypeDef(BaseModel): + IpamId: str + DryRun: Optional[bool] = None + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateKeyPairRequestRequestTypeDef(BaseModel): + KeyName: str + DryRun: Optional[bool] = None + KeyType: Optional[KeyTypeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + KeyFormat: Optional[KeyFormatType] = None + +class CreateKeyPairRequestServiceResourceCreateKeyPairTypeDef(BaseModel): + KeyName: str + DryRun: Optional[bool] = None + KeyType: Optional[KeyTypeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + KeyFormat: Optional[KeyFormatType] = None + +class CreateLocalGatewayRouteTableRequestRequestTypeDef(BaseModel): + LocalGatewayId: str + Mode: Optional[LocalGatewayRouteTableModeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + LocalGatewayVirtualInterfaceGroupId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateLocalGatewayRouteTableVpcAssociationRequestRequestTypeDef(BaseModel): + LocalGatewayRouteTableId: str + VpcId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateManagedPrefixListRequestRequestTypeDef(BaseModel): + PrefixListName: str + MaxEntries: int + AddressFamily: str + DryRun: Optional[bool] = None + Entries: Optional[Sequence[AddPrefixListEntryTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateNatGatewayRequestRequestTypeDef(BaseModel): + SubnetId: str + AllocationId: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ConnectivityType: Optional[ConnectivityTypeType] = None + PrivateIpAddress: Optional[str] = None + SecondaryAllocationIds: Optional[Sequence[str]] = None + SecondaryPrivateIpAddresses: Optional[Sequence[str]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + +class CreateNetworkAclRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateNetworkAclRequestServiceResourceCreateNetworkAclTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateNetworkInsightsPathRequestRequestTypeDef(BaseModel): + Source: str + Protocol: ProtocolType + ClientToken: str + SourceIp: Optional[str] = None + DestinationIp: Optional[str] = None + Destination: Optional[str] = None + DestinationPort: Optional[int] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + FilterAtSource: Optional[PathRequestFilterTypeDef] = None + FilterAtDestination: Optional[PathRequestFilterTypeDef] = None + +class CreateNetworkInterfaceRequestRequestTypeDef(BaseModel): + SubnetId: str + Description: Optional[str] = None + DryRun: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[Sequence[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[Sequence[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + InterfaceType: Optional[NetworkInterfaceCreationTypeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + EnablePrimaryIpv6: Optional[bool] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class CreateNetworkInterfaceRequestServiceResourceCreateNetworkInterfaceTypeDef(BaseModel): + SubnetId: str + Description: Optional[str] = None + DryRun: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[Sequence[PrivateIpAddressSpecificationTypeDef]] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + Ipv4Prefixes: Optional[Sequence[Ipv4PrefixSpecificationRequestTypeDef]] = None + Ipv4PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[Sequence[Ipv6PrefixSpecificationRequestTypeDef]] = None + Ipv6PrefixCount: Optional[int] = None + InterfaceType: Optional[NetworkInterfaceCreationTypeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + EnablePrimaryIpv6: Optional[bool] = None + ConnectionTrackingSpecification: Optional[ ConnectionTrackingSpecificationRequestTypeDef ] = None + +class CreatePlacementGroupRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + GroupName: Optional[str] = None + Strategy: Optional[PlacementStrategyType] = None + PartitionCount: Optional[int] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + SpreadLevel: Optional[SpreadLevelType] = None + +class CreatePlacementGroupRequestServiceResourceCreatePlacementGroupTypeDef(BaseModel): + DryRun: Optional[bool] = None + GroupName: Optional[str] = None + Strategy: Optional[PlacementStrategyType] = None + PartitionCount: Optional[int] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + SpreadLevel: Optional[SpreadLevelType] = None + +class CreatePublicIpv4PoolRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + NetworkBorderGroup: Optional[str] = None + +class CreateReplaceRootVolumeTaskRequestRequestTypeDef(BaseModel): + InstanceId: str + SnapshotId: Optional[str] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ImageId: Optional[str] = None + DeleteReplacedRootVolume: Optional[bool] = None + +class CreateRestoreImageTaskRequestRequestTypeDef(BaseModel): + Bucket: str + ObjectKey: str + Name: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateRouteTableRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateRouteTableRequestServiceResourceCreateRouteTableTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateSecurityGroupRequestRequestTypeDef(BaseModel): + Description: str + GroupName: str + VpcId: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateSecurityGroupRequestServiceResourceCreateSecurityGroupTypeDef(BaseModel): + Description: str + GroupName: str + VpcId: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateSnapshotRequestRequestTypeDef(BaseModel): + VolumeId: str + Description: Optional[str] = None + OutpostArn: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateSnapshotRequestServiceResourceCreateSnapshotTypeDef(BaseModel): + VolumeId: str + Description: Optional[str] = None + OutpostArn: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateSnapshotsRequestRequestTypeDef(BaseModel): + InstanceSpecification: InstanceSpecificationTypeDef + Description: Optional[str] = None + OutpostArn: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + CopyTagsFromSource: Optional[Literal["volume"]] = None + +class CreateSubnetCidrReservationRequestRequestTypeDef(BaseModel): + SubnetId: str + Cidr: str + ReservationType: SubnetCidrReservationTypeType + Description: Optional[str] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateSubnetRequestRequestTypeDef(BaseModel): + VpcId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + CidrBlock: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + OutpostArn: Optional[str] = None + DryRun: Optional[bool] = None + Ipv6Native: Optional[bool] = None + Ipv4IpamPoolId: Optional[str] = None + Ipv4NetmaskLength: Optional[int] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + +class CreateSubnetRequestServiceResourceCreateSubnetTypeDef(BaseModel): + VpcId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + CidrBlock: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + OutpostArn: Optional[str] = None + DryRun: Optional[bool] = None + Ipv6Native: Optional[bool] = None + Ipv4IpamPoolId: Optional[str] = None + Ipv4NetmaskLength: Optional[int] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + +class CreateTrafficMirrorFilterRequestRequestTypeDef(BaseModel): + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class CreateTrafficMirrorFilterRuleRequestRequestTypeDef(BaseModel): + TrafficMirrorFilterId: str + TrafficDirection: TrafficDirectionType + RuleNumber: int + RuleAction: TrafficMirrorRuleActionType + DestinationCidrBlock: str + SourceCidrBlock: str + DestinationPortRange: Optional[TrafficMirrorPortRangeRequestTypeDef] = None + SourcePortRange: Optional[TrafficMirrorPortRangeRequestTypeDef] = None + Protocol: Optional[int] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateTrafficMirrorSessionRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: str + TrafficMirrorTargetId: str + TrafficMirrorFilterId: str + SessionNumber: int + PacketLength: Optional[int] = None + VirtualNetworkId: Optional[int] = None + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class CreateTrafficMirrorTargetRequestRequestTypeDef(BaseModel): + NetworkInterfaceId: Optional[str] = None + NetworkLoadBalancerArn: Optional[str] = None + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + GatewayLoadBalancerEndpointId: Optional[str] = None + +class CreateTransitGatewayConnectPeerRequestRequestTypeDef(BaseModel): + TransitGatewayAttachmentId: str + PeerAddress: str + InsideCidrBlocks: Sequence[str] + TransitGatewayAddress: Optional[str] = None + BgpOptions: Optional[TransitGatewayConnectRequestBgpOptionsTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayConnectRequestRequestTypeDef(BaseModel): + TransportTransitGatewayAttachmentId: str + Options: CreateTransitGatewayConnectRequestOptionsTypeDef + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayMulticastDomainRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + Options: Optional[CreateTransitGatewayMulticastDomainRequestOptionsTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayPeeringAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + PeerTransitGatewayId: str + PeerAccountId: str + PeerRegion: str + Options: Optional[CreateTransitGatewayPeeringAttachmentRequestOptionsTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayPolicyTableRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayRequestRequestTypeDef(BaseModel): + Description: Optional[str] = None + Options: Optional[TransitGatewayRequestOptionsTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayRouteTableAnnouncementRequestRequestTypeDef(BaseModel): + TransitGatewayRouteTableId: str + PeeringAttachmentId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayRouteTableRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateTransitGatewayVpcAttachmentRequestRequestTypeDef(BaseModel): + TransitGatewayId: str + VpcId: str + SubnetIds: Sequence[str] + Options: Optional[CreateTransitGatewayVpcAttachmentRequestOptionsTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class CreateVerifiedAccessEndpointRequestRequestTypeDef(BaseModel): + VerifiedAccessGroupId: str + EndpointType: VerifiedAccessEndpointTypeType + AttachmentType: Literal["vpc"] + DomainCertificateArn: str + ApplicationDomain: str + EndpointDomainPrefix: str + SecurityGroupIds: Optional[Sequence[str]] = None + LoadBalancerOptions: Optional[CreateVerifiedAccessEndpointLoadBalancerOptionsTypeDef] = None + NetworkInterfaceOptions: Optional[CreateVerifiedAccessEndpointEniOptionsTypeDef] = None + Description: Optional[str] = None + PolicyDocument: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationRequestTypeDef] = None + +class CreateVerifiedAccessGroupRequestRequestTypeDef(BaseModel): + VerifiedAccessInstanceId: str + Description: Optional[str] = None + PolicyDocument: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationRequestTypeDef] = None + +class CreateVerifiedAccessInstanceRequestRequestTypeDef(BaseModel): + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + FIPSEnabled: Optional[bool] = None + +class CreateVerifiedAccessTrustProviderRequestRequestTypeDef(BaseModel): + TrustProviderType: TrustProviderTypeType + PolicyReferenceName: str + UserTrustProviderType: Optional[UserTrustProviderTypeType] = None + DeviceTrustProviderType: Optional[DeviceTrustProviderTypeType] = None + OidcOptions: Optional[CreateVerifiedAccessTrustProviderOidcOptionsTypeDef] = None + DeviceOptions: Optional[CreateVerifiedAccessTrustProviderDeviceOptionsTypeDef] = None + Description: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + SseSpecification: Optional[VerifiedAccessSseSpecificationRequestTypeDef] = None + +class CreateVolumeRequestRequestTypeDef(BaseModel): + AvailabilityZone: str + Encrypted: Optional[bool] = None + Iops: Optional[int] = None + KmsKeyId: Optional[str] = None + OutpostArn: Optional[str] = None + Size: Optional[int] = None + SnapshotId: Optional[str] = None + VolumeType: Optional[VolumeTypeType] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + MultiAttachEnabled: Optional[bool] = None + Throughput: Optional[int] = None + ClientToken: Optional[str] = None + +class CreateVolumeRequestServiceResourceCreateVolumeTypeDef(BaseModel): + AvailabilityZone: str + Encrypted: Optional[bool] = None + Iops: Optional[int] = None + KmsKeyId: Optional[str] = None + OutpostArn: Optional[str] = None + Size: Optional[int] = None + SnapshotId: Optional[str] = None + VolumeType: Optional[VolumeTypeType] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + MultiAttachEnabled: Optional[bool] = None + Throughput: Optional[int] = None + ClientToken: Optional[str] = None + +class CreateVpcEndpointRequestRequestTypeDef(BaseModel): + VpcId: str + ServiceName: str + DryRun: Optional[bool] = None + VpcEndpointType: Optional[VpcEndpointTypeType] = None + PolicyDocument: Optional[str] = None + RouteTableIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + IpAddressType: Optional[IpAddressTypeType] = None + DnsOptions: Optional[DnsOptionsSpecificationTypeDef] = None + ClientToken: Optional[str] = None + PrivateDnsEnabled: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + SubnetConfigurations: Optional[Sequence[SubnetConfigurationTypeDef]] = None + +class CreateVpcEndpointServiceConfigurationRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + AcceptanceRequired: Optional[bool] = None + PrivateDnsName: Optional[str] = None + NetworkLoadBalancerArns: Optional[Sequence[str]] = None + GatewayLoadBalancerArns: Optional[Sequence[str]] = None + SupportedIpAddressTypes: Optional[Sequence[str]] = None + ClientToken: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateVpcPeeringConnectionRequestRequestTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + PeerOwnerId: Optional[str] = None + PeerVpcId: Optional[str] = None + PeerRegion: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateVpcPeeringConnectionRequestServiceResourceCreateVpcPeeringConnectionTypeDef(BaseModel): + VpcId: str + DryRun: Optional[bool] = None + PeerOwnerId: Optional[str] = None + PeerVpcId: Optional[str] = None + PeerRegion: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateVpcRequestRequestTypeDef(BaseModel): + CidrBlock: Optional[str] = None + AmazonProvidedIpv6CidrBlock: Optional[bool] = None + Ipv6Pool: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + Ipv4IpamPoolId: Optional[str] = None + Ipv4NetmaskLength: Optional[int] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + DryRun: Optional[bool] = None + InstanceTenancy: Optional[TenancyType] = None + Ipv6CidrBlockNetworkBorderGroup: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateVpcRequestServiceResourceCreateVpcTypeDef(BaseModel): + CidrBlock: Optional[str] = None + AmazonProvidedIpv6CidrBlock: Optional[bool] = None + Ipv6Pool: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + Ipv4IpamPoolId: Optional[str] = None + Ipv4NetmaskLength: Optional[int] = None + Ipv6IpamPoolId: Optional[str] = None + Ipv6NetmaskLength: Optional[int] = None + DryRun: Optional[bool] = None + InstanceTenancy: Optional[TenancyType] = None + Ipv6CidrBlockNetworkBorderGroup: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateVpnGatewayRequestRequestTypeDef(BaseModel): + Type: Literal["ipsec.1"] + AvailabilityZone: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + AmazonSideAsn: Optional[int] = None + DryRun: Optional[bool] = None + +class ExportImageRequestRequestTypeDef(BaseModel): + DiskImageFormat: DiskImageFormatType + ImageId: str + S3ExportLocation: ExportTaskS3LocationRequestTypeDef + ClientToken: Optional[str] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + RoleName: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class ImportImageRequestRequestTypeDef(BaseModel): + Architecture: Optional[str] = None + ClientData: Optional[ClientDataTypeDef] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + DiskContainers: Optional[Sequence[ImageDiskContainerTypeDef]] = None + DryRun: Optional[bool] = None + Encrypted: Optional[bool] = None + Hypervisor: Optional[str] = None + KmsKeyId: Optional[str] = None + LicenseType: Optional[str] = None + Platform: Optional[str] = None + RoleName: Optional[str] = None + LicenseSpecifications: Optional[ Sequence[ImportImageLicenseConfigurationRequestTypeDef] ] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + UsageOperation: Optional[str] = None + BootMode: Optional[BootModeValuesType] = None + +class ImportKeyPairRequestRequestTypeDef(BaseModel): + KeyName: str + PublicKeyMaterial: BlobTypeDef + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class ImportKeyPairRequestServiceResourceImportKeyPairTypeDef(BaseModel): + KeyName: str + PublicKeyMaterial: BlobTypeDef + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class ImportSnapshotRequestRequestTypeDef(BaseModel): + ClientData: Optional[ClientDataTypeDef] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + DiskContainer: Optional[SnapshotDiskContainerTypeDef] = None + DryRun: Optional[bool] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + RoleName: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class ProvisionByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + CidrAuthorizationContext: Optional[CidrAuthorizationContextTypeDef] = None + PubliclyAdvertisable: Optional[bool] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + PoolTagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + MultiRegion: Optional[bool] = None + NetworkBorderGroup: Optional[str] = None + +class PurchaseCapacityBlockRequestRequestTypeDef(BaseModel): + CapacityBlockOfferingId: str + InstancePlatform: CapacityReservationInstancePlatformType + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class PurchaseHostReservationRequestRequestTypeDef(BaseModel): + HostIdSet: Sequence[str] + OfferingId: str + ClientToken: Optional[str] = None + CurrencyCode: Optional[Literal["USD"]] = None + LimitPrice: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class RegisterImageRequestRequestTypeDef(BaseModel): + Name: str + ImageLocation: Optional[str] = None + Architecture: Optional[ArchitectureValuesType] = None + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + EnaSupport: Optional[bool] = None + KernelId: Optional[str] = None + BillingProducts: Optional[Sequence[str]] = None + RamdiskId: Optional[str] = None + RootDeviceName: Optional[str] = None + SriovNetSupport: Optional[str] = None + VirtualizationType: Optional[str] = None + BootMode: Optional[BootModeValuesType] = None + TpmSupport: Optional[Literal["v2.0"]] = None + UefiData: Optional[str] = None + ImdsSupport: Optional[Literal["v2.0"]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class RegisterImageRequestServiceResourceRegisterImageTypeDef(BaseModel): + Name: str + ImageLocation: Optional[str] = None + Architecture: Optional[ArchitectureValuesType] = None + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + EnaSupport: Optional[bool] = None + KernelId: Optional[str] = None + BillingProducts: Optional[Sequence[str]] = None + RamdiskId: Optional[str] = None + RootDeviceName: Optional[str] = None + SriovNetSupport: Optional[str] = None + VirtualizationType: Optional[str] = None + BootMode: Optional[BootModeValuesType] = None + TpmSupport: Optional[Literal["v2.0"]] = None + UefiData: Optional[str] = None + ImdsSupport: Optional[Literal["v2.0"]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class StartNetworkInsightsAccessScopeAnalysisRequestRequestTypeDef(BaseModel): + NetworkInsightsAccessScopeId: str + ClientToken: str + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class StartNetworkInsightsAnalysisRequestRequestTypeDef(BaseModel): + NetworkInsightsPathId: str + ClientToken: str + AdditionalAccounts: Optional[Sequence[str]] = None + FilterInArns: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class PathComponentTypeDef(BaseModel): + SequenceNumber: Optional[int] = None + AclRule: Optional[AnalysisAclRuleTypeDef] = None + AttachedTo: Optional[AnalysisComponentTypeDef] = None + Component: Optional[AnalysisComponentTypeDef] = None + DestinationVpc: Optional[AnalysisComponentTypeDef] = None + OutboundHeader: Optional[AnalysisPacketHeaderTypeDef] = None + InboundHeader: Optional[AnalysisPacketHeaderTypeDef] = None + RouteTableRoute: Optional[AnalysisRouteTableRouteTypeDef] = None + SecurityGroupRule: Optional[AnalysisSecurityGroupRuleTypeDef] = None + SourceVpc: Optional[AnalysisComponentTypeDef] = None + Subnet: Optional[AnalysisComponentTypeDef] = None + Vpc: Optional[AnalysisComponentTypeDef] = None + AdditionalDetails: Optional[List[AdditionalDetailTypeDef]] = None + TransitGateway: Optional[AnalysisComponentTypeDef] = None + TransitGatewayRouteTableRoute: Optional[TransitGatewayRouteTableRouteTypeDef] = None + Explanations: Optional[List[ExplanationTypeDef]] = None + ElasticLoadBalancerListener: Optional[AnalysisComponentTypeDef] = None + FirewallStatelessRule: Optional[FirewallStatelessRuleTypeDef] = None + FirewallStatefulRule: Optional[FirewallStatefulRuleTypeDef] = None + ServiceName: Optional[str] = None + +class CreateRouteTableResultTypeDef(BaseModel): + RouteTable: RouteTableTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRouteTablesResultTypeDef(BaseModel): + RouteTables: List[RouteTableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetFlowLogsIntegrationTemplateRequestRequestTypeDef(BaseModel): + FlowLogId: str + ConfigDeliveryS3DestinationArn: str + IntegrateServices: IntegrateServicesTypeDef + DryRun: Optional[bool] = None + +class DescribeNetworkInterfaceAttributeResultTypeDef(BaseModel): + Attachment: NetworkInterfaceAttachmentTypeDef + Description: AttributeValueTypeDef + Groups: List[GroupIdentifierTypeDef] + NetworkInterfaceId: str + SourceDestCheck: AttributeBooleanValueTypeDef + AssociatePublicIpAddress: bool + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkInterfaceTypeDef(BaseModel): + Association: Optional[NetworkInterfaceAssociationTypeDef] = None + Attachment: Optional[NetworkInterfaceAttachmentTypeDef] = None + AvailabilityZone: Optional[str] = None + ConnectionTrackingConfiguration: Optional[ConnectionTrackingConfigurationTypeDef] = None + Description: Optional[str] = None + Groups: Optional[List[GroupIdentifierTypeDef]] = None + InterfaceType: Optional[NetworkInterfaceTypeType] = None + Ipv6Addresses: Optional[List[NetworkInterfaceIpv6AddressTypeDef]] = None + MacAddress: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + OutpostArn: Optional[str] = None + OwnerId: Optional[str] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[List[NetworkInterfacePrivateIpAddressTypeDef]] = None + Ipv4Prefixes: Optional[List[Ipv4PrefixSpecificationTypeDef]] = None + Ipv6Prefixes: Optional[List[Ipv6PrefixSpecificationTypeDef]] = None + RequesterId: Optional[str] = None + RequesterManaged: Optional[bool] = None + SourceDestCheck: Optional[bool] = None + Status: Optional[NetworkInterfaceStatusType] = None + SubnetId: Optional[str] = None + TagSet: Optional[List[TagTypeDef]] = None + VpcId: Optional[str] = None + DenyAllIgwTraffic: Optional[bool] = None + Ipv6Native: Optional[bool] = None + Ipv6Address: Optional[str] = None + +class CreateDhcpOptionsResultTypeDef(BaseModel): + DhcpOptions: DhcpOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDhcpOptionsResultTypeDef(BaseModel): + DhcpOptions: List[DhcpOptionsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeHostsResultTypeDef(BaseModel): + Hosts: List[HostTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BundleInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + Storage: StorageTypeDef + DryRun: Optional[bool] = None + +class DescribeImagesResultTypeDef(BaseModel): + Images: List[ImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeClientVpnEndpointsResultTypeDef(BaseModel): + ClientVpnEndpoints: List[ClientVpnEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVpnTunnelOptionsRequestRequestTypeDef(BaseModel): + VpnConnectionId: str + VpnTunnelOutsideIpAddress: str + TunnelOptions: ModifyVpnTunnelOptionsSpecificationTypeDef + DryRun: Optional[bool] = None + SkipTunnelReplacement: Optional[bool] = None + +class VpnConnectionOptionsSpecificationTypeDef(BaseModel): + EnableAcceleration: Optional[bool] = None + StaticRoutesOnly: Optional[bool] = None + TunnelInsideIpVersion: Optional[TunnelInsideIpVersionType] = None + TunnelOptions: Optional[Sequence[VpnTunnelOptionsSpecificationTypeDef]] = None + LocalIpv4NetworkCidr: Optional[str] = None + RemoteIpv4NetworkCidr: Optional[str] = None + LocalIpv6NetworkCidr: Optional[str] = None + RemoteIpv6NetworkCidr: Optional[str] = None + OutsideIpAddressType: Optional[str] = None + TransportTransitGatewayAttachmentId: Optional[str] = None + +class VpnConnectionOptionsTypeDef(BaseModel): + EnableAcceleration: Optional[bool] = None + StaticRoutesOnly: Optional[bool] = None + LocalIpv4NetworkCidr: Optional[str] = None + RemoteIpv4NetworkCidr: Optional[str] = None + LocalIpv6NetworkCidr: Optional[str] = None + RemoteIpv6NetworkCidr: Optional[str] = None + OutsideIpAddressType: Optional[str] = None + TransportTransitGatewayAttachmentId: Optional[str] = None + TunnelInsideIpVersion: Optional[TunnelInsideIpVersionType] = None + TunnelOptions: Optional[List[TunnelOptionTypeDef]] = None + +class CreateNetworkAclResultTypeDef(BaseModel): + NetworkAcl: NetworkAclTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNetworkAclsResultTypeDef(BaseModel): + NetworkAcls: List[NetworkAclTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DisableFastSnapshotRestoresResultTypeDef(BaseModel): + Successful: List[DisableFastSnapshotRestoreSuccessItemTypeDef] + Unsuccessful: List[DisableFastSnapshotRestoreErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConversionTaskTypeDef(BaseModel): + ConversionTaskId: Optional[str] = None + ExpirationTime: Optional[str] = None + ImportInstance: Optional[ImportInstanceTaskDetailsTypeDef] = None + ImportVolume: Optional[ImportVolumeTaskDetailsTypeDef] = None + State: Optional[ConversionTaskStateType] = None + StatusMessage: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class SpotFleetLaunchSpecificationExtraOutputTypeDef(BaseModel): + SecurityGroups: Optional[List[GroupIdentifierTypeDef]] = None + AddressingType: Optional[str] = None + BlockDeviceMappings: Optional[List[BlockDeviceMappingTypeDef]] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[SpotFleetMonitoringTypeDef] = None + NetworkInterfaces: Optional[ List[InstanceNetworkInterfaceSpecificationExtraOutputTypeDef] ] = None + Placement: Optional[SpotPlacementTypeDef] = None + RamdiskId: Optional[str] = None + SpotPrice: Optional[str] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + WeightedCapacity: Optional[float] = None + TagSpecifications: Optional[List[SpotFleetTagSpecificationExtraOutputTypeDef]] = None + InstanceRequirements: Optional[InstanceRequirementsExtraOutputTypeDef] = None + +class LaunchSpecificationTypeDef(BaseModel): + UserData: Optional[str] = None + SecurityGroups: Optional[List[GroupIdentifierTypeDef]] = None + AddressingType: Optional[str] = None + BlockDeviceMappings: Optional[List[BlockDeviceMappingTypeDef]] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + NetworkInterfaces: Optional[List[InstanceNetworkInterfaceSpecificationOutputTypeDef]] = None + Placement: Optional[SpotPlacementTypeDef] = None + RamdiskId: Optional[str] = None + SubnetId: Optional[str] = None + Monitoring: Optional[RunInstancesMonitoringEnabledTypeDef] = None + +class SpotFleetLaunchSpecificationOutputTypeDef(BaseModel): + SecurityGroups: Optional[List[GroupIdentifierTypeDef]] = None + AddressingType: Optional[str] = None + BlockDeviceMappings: Optional[List[BlockDeviceMappingTypeDef]] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[SpotFleetMonitoringTypeDef] = None + NetworkInterfaces: Optional[List[InstanceNetworkInterfaceSpecificationOutputTypeDef]] = None + Placement: Optional[SpotPlacementTypeDef] = None + RamdiskId: Optional[str] = None + SpotPrice: Optional[str] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + WeightedCapacity: Optional[float] = None + TagSpecifications: Optional[List[SpotFleetTagSpecificationOutputTypeDef]] = None + InstanceRequirements: Optional[InstanceRequirementsOutputTypeDef] = None + +class RequestSpotLaunchSpecificationTypeDef(BaseModel): + SecurityGroupIds: Optional[Sequence[str]] = None + SecurityGroups: Optional[Sequence[str]] = None + AddressingType: Optional[str] = None + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[RunInstancesMonitoringEnabledTypeDef] = None + NetworkInterfaces: Optional[Sequence[InstanceNetworkInterfaceSpecificationTypeDef]] = None + Placement: Optional[SpotPlacementTypeDef] = None + RamdiskId: Optional[str] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + +class RunInstancesRequestSubnetCreateInstancesTypeDef(BaseModel): + MaxCount: int + MinCount: int + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[RunInstancesMonitoringEnabledTypeDef] = None + Placement: Optional[PlacementTypeDef] = None + RamdiskId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SecurityGroups: Optional[Sequence[str]] = None + UserData: Optional[str] = None + AdditionalInfo: Optional[str] = None + ClientToken: Optional[str] = None + DisableApiTermination: Optional[bool] = None + DryRun: Optional[bool] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + InstanceInitiatedShutdownBehavior: Optional[ShutdownBehaviorType] = None + NetworkInterfaces: Optional[Sequence[InstanceNetworkInterfaceSpecificationTypeDef]] = None + PrivateIpAddress: Optional[str] = None + ElasticGpuSpecification: Optional[Sequence[ElasticGpuSpecificationTypeDef]] = None + ElasticInferenceAccelerators: Optional[Sequence[ElasticInferenceAcceleratorTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + InstanceMarketOptions: Optional[InstanceMarketOptionsRequestTypeDef] = None + CreditSpecification: Optional[CreditSpecificationRequestTypeDef] = None + CpuOptions: Optional[CpuOptionsRequestTypeDef] = None + CapacityReservationSpecification: Optional[CapacityReservationSpecificationTypeDef] = None + HibernationOptions: Optional[HibernationOptionsRequestTypeDef] = None + LicenseSpecifications: Optional[Sequence[LicenseConfigurationRequestTypeDef]] = None + MetadataOptions: Optional[InstanceMetadataOptionsRequestTypeDef] = None + EnclaveOptions: Optional[EnclaveOptionsRequestTypeDef] = None + PrivateDnsNameOptions: Optional[PrivateDnsNameOptionsRequestTypeDef] = None + MaintenanceOptions: Optional[InstanceMaintenanceOptionsRequestTypeDef] = None + DisableApiStop: Optional[bool] = None + EnablePrimaryIpv6: Optional[bool] = None + +class SpotFleetLaunchSpecificationTypeDef(BaseModel): + SecurityGroups: Optional[Sequence[GroupIdentifierTypeDef]] = None + AddressingType: Optional[str] = None + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[SpotFleetMonitoringTypeDef] = None + NetworkInterfaces: Optional[Sequence[InstanceNetworkInterfaceSpecificationTypeDef]] = None + Placement: Optional[SpotPlacementTypeDef] = None + RamdiskId: Optional[str] = None + SpotPrice: Optional[str] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + WeightedCapacity: Optional[float] = None + TagSpecifications: Optional[Sequence[SpotFleetTagSpecificationTypeDef]] = None + InstanceRequirements: Optional[InstanceRequirementsTypeDef] = None + +class RequestLaunchTemplateDataTypeDef(BaseModel): + KernelId: Optional[str] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[ LaunchTemplateIamInstanceProfileSpecificationRequestTypeDef ] = None + BlockDeviceMappings: Optional[ Sequence[LaunchTemplateBlockDeviceMappingRequestTypeDef] ] = None + NetworkInterfaces: Optional[ Sequence[LaunchTemplateInstanceNetworkInterfaceSpecificationRequestTypeDef] ] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KeyName: Optional[str] = None + Monitoring: Optional[LaunchTemplatesMonitoringRequestTypeDef] = None + Placement: Optional[LaunchTemplatePlacementRequestTypeDef] = None + RamDiskId: Optional[str] = None + DisableApiTermination: Optional[bool] = None + InstanceInitiatedShutdownBehavior: Optional[ShutdownBehaviorType] = None + UserData: Optional[str] = None + TagSpecifications: Optional[Sequence[LaunchTemplateTagSpecificationRequestTypeDef]] = None + ElasticGpuSpecifications: Optional[Sequence[ElasticGpuSpecificationTypeDef]] = None + ElasticInferenceAccelerators: Optional[ Sequence[LaunchTemplateElasticInferenceAcceleratorTypeDef] ] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SecurityGroups: Optional[Sequence[str]] = None + InstanceMarketOptions: Optional[LaunchTemplateInstanceMarketOptionsRequestTypeDef] = None + CreditSpecification: Optional[CreditSpecificationRequestTypeDef] = None + CpuOptions: Optional[LaunchTemplateCpuOptionsRequestTypeDef] = None + CapacityReservationSpecification: Optional[ LaunchTemplateCapacityReservationSpecificationRequestTypeDef ] = None + LicenseSpecifications: Optional[ Sequence[LaunchTemplateLicenseConfigurationRequestTypeDef] ] = None + HibernationOptions: Optional[LaunchTemplateHibernationOptionsRequestTypeDef] = None + MetadataOptions: Optional[LaunchTemplateInstanceMetadataOptionsRequestTypeDef] = None + EnclaveOptions: Optional[LaunchTemplateEnclaveOptionsRequestTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsRequestTypeDef] = None + PrivateDnsNameOptions: Optional[LaunchTemplatePrivateDnsNameOptionsRequestTypeDef] = None + MaintenanceOptions: Optional[LaunchTemplateInstanceMaintenanceOptionsRequestTypeDef] = None + DisableApiStop: Optional[bool] = None + +class EnableFastSnapshotRestoresResultTypeDef(BaseModel): + Successful: List[EnableFastSnapshotRestoreSuccessItemTypeDef] + Unsuccessful: List[EnableFastSnapshotRestoreErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkInsightsPathResultTypeDef(BaseModel): + NetworkInsightsPath: NetworkInsightsPathTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNetworkInsightsPathsResultTypeDef(BaseModel): + NetworkInsightsPaths: List[NetworkInsightsPathTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceNetworkInterfaceTypeDef(BaseModel): + Association: Optional[InstanceNetworkInterfaceAssociationTypeDef] = None + Attachment: Optional[InstanceNetworkInterfaceAttachmentTypeDef] = None + Description: Optional[str] = None + Groups: Optional[List[GroupIdentifierTypeDef]] = None + Ipv6Addresses: Optional[List[InstanceIpv6AddressTypeDef]] = None + MacAddress: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + OwnerId: Optional[str] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[List[InstancePrivateIpAddressTypeDef]] = None + SourceDestCheck: Optional[bool] = None + Status: Optional[NetworkInterfaceStatusType] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + InterfaceType: Optional[str] = None + Ipv4Prefixes: Optional[List[InstanceIpv4PrefixTypeDef]] = None + Ipv6Prefixes: Optional[List[InstanceIpv6PrefixTypeDef]] = None + ConnectionTrackingConfiguration: Optional[ ConnectionTrackingSpecificationResponseTypeDef ] = None + +class LaunchTemplateConfigExtraOutputTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[FleetLaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[List[LaunchTemplateOverridesExtraOutputTypeDef]] = None + +class FleetLaunchTemplateConfigTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[FleetLaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[List[FleetLaunchTemplateOverridesTypeDef]] = None + +class LaunchTemplateAndOverridesResponseTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[FleetLaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[FleetLaunchTemplateOverridesTypeDef] = None + +class LaunchTemplateConfigOutputTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[FleetLaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[List[LaunchTemplateOverridesOutputTypeDef]] = None + +class LaunchTemplateConfigTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[FleetLaunchTemplateSpecificationTypeDef] = None + Overrides: Optional[Sequence[LaunchTemplateOverridesTypeDef]] = None + +class FleetLaunchTemplateConfigRequestTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[FleetLaunchTemplateSpecificationRequestTypeDef] = None + Overrides: Optional[Sequence[FleetLaunchTemplateOverridesRequestTypeDef]] = None + +class GetSpotPlacementScoresRequestGetSpotPlacementScoresPaginateTypeDef(BaseModel): + TargetCapacity: int + InstanceTypes: Optional[Sequence[str]] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + SingleAvailabilityZone: Optional[bool] = None + RegionNames: Optional[Sequence[str]] = None + InstanceRequirementsWithMetadata: Optional[ InstanceRequirementsWithMetadataRequestTypeDef ] = None + DryRun: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSpotPlacementScoresRequestRequestTypeDef(BaseModel): + TargetCapacity: int + InstanceTypes: Optional[Sequence[str]] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + SingleAvailabilityZone: Optional[bool] = None + RegionNames: Optional[Sequence[str]] = None + InstanceRequirementsWithMetadata: Optional[ InstanceRequirementsWithMetadataRequestTypeDef ] = None + DryRun: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceStatusResultTypeDef(BaseModel): + InstanceStatuses: List[InstanceStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSecurityGroupsResultTypeDef(BaseModel): + SecurityGroups: List[SecurityGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AuthorizeSecurityGroupEgressRequestRequestTypeDef(BaseModel): + GroupId: str + DryRun: Optional[bool] = None + IpPermissions: Optional[Sequence[IpPermissionUnionTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + ToPort: Optional[int] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + +class AuthorizeSecurityGroupIngressRequestRequestTypeDef(BaseModel): + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + IpPermissions: Optional[Sequence[IpPermissionUnionTypeDef]] = None + IpProtocol: Optional[str] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + ToPort: Optional[int] = None + DryRun: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class RevokeSecurityGroupEgressRequestRequestTypeDef(BaseModel): + GroupId: str + DryRun: Optional[bool] = None + IpPermissions: Optional[Sequence[IpPermissionUnionTypeDef]] = None + SecurityGroupRuleIds: Optional[Sequence[str]] = None + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + IpProtocol: Optional[str] = None + ToPort: Optional[int] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + +class RevokeSecurityGroupIngressRequestRequestTypeDef(BaseModel): + CidrIp: Optional[str] = None + FromPort: Optional[int] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + IpPermissions: Optional[Sequence[IpPermissionUnionTypeDef]] = None + IpProtocol: Optional[str] = None + SourceSecurityGroupName: Optional[str] = None + SourceSecurityGroupOwnerId: Optional[str] = None + ToPort: Optional[int] = None + DryRun: Optional[bool] = None + SecurityGroupRuleIds: Optional[Sequence[str]] = None + +class UpdateSecurityGroupRuleDescriptionsEgressRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + IpPermissions: Optional[Sequence[IpPermissionUnionTypeDef]] = None + SecurityGroupRuleDescriptions: Optional[Sequence[SecurityGroupRuleDescriptionTypeDef]] = None + +class UpdateSecurityGroupRuleDescriptionsIngressRequestRequestTypeDef(BaseModel): + DryRun: Optional[bool] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + IpPermissions: Optional[Sequence[IpPermissionUnionTypeDef]] = None + SecurityGroupRuleDescriptions: Optional[Sequence[SecurityGroupRuleDescriptionTypeDef]] = None + +class DescribeStaleSecurityGroupsResultTypeDef(BaseModel): + StaleSecurityGroupSet: List[StaleSecurityGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetIpamDiscoveredPublicAddressesResultTypeDef(BaseModel): + IpamDiscoveredPublicAddresses: List[IpamDiscoveredPublicAddressTypeDef] + OldestSampleTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ResponseLaunchTemplateDataTypeDef(BaseModel): + KernelId: Optional[str] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[LaunchTemplateIamInstanceProfileSpecificationTypeDef] = None + BlockDeviceMappings: Optional[List[LaunchTemplateBlockDeviceMappingTypeDef]] = None + NetworkInterfaces: Optional[ List[LaunchTemplateInstanceNetworkInterfaceSpecificationTypeDef] ] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KeyName: Optional[str] = None + Monitoring: Optional[LaunchTemplatesMonitoringTypeDef] = None + Placement: Optional[LaunchTemplatePlacementTypeDef] = None + RamDiskId: Optional[str] = None + DisableApiTermination: Optional[bool] = None + InstanceInitiatedShutdownBehavior: Optional[ShutdownBehaviorType] = None + UserData: Optional[str] = None + TagSpecifications: Optional[List[LaunchTemplateTagSpecificationTypeDef]] = None + ElasticGpuSpecifications: Optional[List[ElasticGpuSpecificationResponseTypeDef]] = None + ElasticInferenceAccelerators: Optional[ List[LaunchTemplateElasticInferenceAcceleratorResponseTypeDef] ] = None + SecurityGroupIds: Optional[List[str]] = None + SecurityGroups: Optional[List[str]] = None + InstanceMarketOptions: Optional[LaunchTemplateInstanceMarketOptionsTypeDef] = None + CreditSpecification: Optional[CreditSpecificationTypeDef] = None + CpuOptions: Optional[LaunchTemplateCpuOptionsTypeDef] = None + CapacityReservationSpecification: Optional[ LaunchTemplateCapacityReservationSpecificationResponseTypeDef ] = None + LicenseSpecifications: Optional[List[LaunchTemplateLicenseConfigurationTypeDef]] = None + HibernationOptions: Optional[LaunchTemplateHibernationOptionsTypeDef] = None + MetadataOptions: Optional[LaunchTemplateInstanceMetadataOptionsTypeDef] = None + EnclaveOptions: Optional[LaunchTemplateEnclaveOptionsTypeDef] = None + InstanceRequirements: Optional[InstanceRequirementsOutputTypeDef] = None + PrivateDnsNameOptions: Optional[LaunchTemplatePrivateDnsNameOptionsTypeDef] = None + MaintenanceOptions: Optional[LaunchTemplateInstanceMaintenanceOptionsTypeDef] = None + DisableApiStop: Optional[bool] = None + +class DescribeReservedInstancesModificationsResultTypeDef(BaseModel): + ReservedInstancesModifications: List[ReservedInstancesModificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceTypeInfoTypeDef(BaseModel): + InstanceType: Optional[InstanceTypeType] = None + CurrentGeneration: Optional[bool] = None + FreeTierEligible: Optional[bool] = None + SupportedUsageClasses: Optional[List[UsageClassTypeType]] = None + SupportedRootDeviceTypes: Optional[List[RootDeviceTypeType]] = None + SupportedVirtualizationTypes: Optional[List[VirtualizationTypeType]] = None + BareMetal: Optional[bool] = None + Hypervisor: Optional[InstanceTypeHypervisorType] = None + ProcessorInfo: Optional[ProcessorInfoTypeDef] = None + VCpuInfo: Optional[VCpuInfoTypeDef] = None + MemoryInfo: Optional[MemoryInfoTypeDef] = None + InstanceStorageSupported: Optional[bool] = None + InstanceStorageInfo: Optional[InstanceStorageInfoTypeDef] = None + EbsInfo: Optional[EbsInfoTypeDef] = None + NetworkInfo: Optional[NetworkInfoTypeDef] = None + GpuInfo: Optional[GpuInfoTypeDef] = None + FpgaInfo: Optional[FpgaInfoTypeDef] = None + PlacementGroupInfo: Optional[PlacementGroupInfoTypeDef] = None + InferenceAcceleratorInfo: Optional[InferenceAcceleratorInfoTypeDef] = None + HibernationSupported: Optional[bool] = None + BurstablePerformanceSupported: Optional[bool] = None + DedicatedHostsSupported: Optional[bool] = None + AutoRecoverySupported: Optional[bool] = None + SupportedBootModes: Optional[List[BootModeTypeType]] = None + NitroEnclavesSupport: Optional[NitroEnclavesSupportType] = None + NitroTpmSupport: Optional[NitroTpmSupportType] = None + NitroTpmInfo: Optional[NitroTpmInfoTypeDef] = None + MediaAcceleratorInfo: Optional[MediaAcceleratorInfoTypeDef] = None + NeuronInfo: Optional[NeuronInfoTypeDef] = None + PhcSupport: Optional[PhcSupportType] = None + +class CreateNetworkInsightsAccessScopeRequestRequestTypeDef(BaseModel): + ClientToken: str + MatchPaths: Optional[Sequence[AccessScopePathRequestTypeDef]] = None + ExcludePaths: Optional[Sequence[AccessScopePathRequestTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + DryRun: Optional[bool] = None + +class NetworkInsightsAccessScopeContentTypeDef(BaseModel): + NetworkInsightsAccessScopeId: Optional[str] = None + MatchPaths: Optional[List[AccessScopePathTypeDef]] = None + ExcludePaths: Optional[List[AccessScopePathTypeDef]] = None + +class BundleInstanceResultTypeDef(BaseModel): + BundleTask: BundleTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelBundleTaskResultTypeDef(BaseModel): + BundleTask: BundleTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBundleTasksResultTypeDef(BaseModel): + BundleTasks: List[BundleTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RunScheduledInstancesRequestRequestTypeDef(BaseModel): + LaunchSpecification: ScheduledInstancesLaunchSpecificationTypeDef + ScheduledInstanceId: str + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + InstanceCount: Optional[int] = None + +class DescribeImportImageTasksResultTypeDef(BaseModel): + ImportImageTasks: List[ImportImageTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeImportSnapshotTasksResultTypeDef(BaseModel): + ImportSnapshotTasks: List[ImportSnapshotTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateDefaultSubnetResultTypeDef(BaseModel): + Subnet: SubnetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubnetResultTypeDef(BaseModel): + Subnet: SubnetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSubnetsResultTypeDef(BaseModel): + Subnets: List[SubnetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateTrafficMirrorFilterResultTypeDef(BaseModel): + TrafficMirrorFilter: TrafficMirrorFilterTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrafficMirrorFiltersResultTypeDef(BaseModel): + TrafficMirrorFilters: List[TrafficMirrorFilterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyTrafficMirrorFilterNetworkServicesResultTypeDef(BaseModel): + TrafficMirrorFilter: TrafficMirrorFilterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitGatewayConnectPeerResultTypeDef(BaseModel): + TransitGatewayConnectPeer: TransitGatewayConnectPeerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTransitGatewayConnectPeerResultTypeDef(BaseModel): + TransitGatewayConnectPeer: TransitGatewayConnectPeerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTransitGatewayConnectPeersResultTypeDef(BaseModel): + TransitGatewayConnectPeers: List[TransitGatewayConnectPeerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTransitGatewayPolicyTableEntriesResultTypeDef(BaseModel): + TransitGatewayPolicyTableEntries: List[TransitGatewayPolicyTableEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VerifiedAccessInstanceLoggingConfigurationTypeDef(BaseModel): + VerifiedAccessInstanceId: Optional[str] = None + AccessLogs: Optional[VerifiedAccessLogsTypeDef] = None + +class DescribeVolumeStatusResultTypeDef(BaseModel): + VolumeStatuses: List[VolumeStatusItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateDefaultVpcResultTypeDef(BaseModel): + Vpc: VpcTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcResultTypeDef(BaseModel): + Vpc: VpcTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcsResultTypeDef(BaseModel): + Vpcs: List[VpcTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AcceptVpcPeeringConnectionResultTypeDef(BaseModel): + VpcPeeringConnection: VpcPeeringConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcPeeringConnectionResultTypeDef(BaseModel): + VpcPeeringConnection: VpcPeeringConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcPeeringConnectionsResultTypeDef(BaseModel): + VpcPeeringConnections: List[VpcPeeringConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AccessScopeAnalysisFindingTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: Optional[str] = None + NetworkInsightsAccessScopeId: Optional[str] = None + FindingId: Optional[str] = None + FindingComponents: Optional[List[PathComponentTypeDef]] = None + +class NetworkInsightsAnalysisTypeDef(BaseModel): + NetworkInsightsAnalysisId: Optional[str] = None + NetworkInsightsAnalysisArn: Optional[str] = None + NetworkInsightsPathId: Optional[str] = None + AdditionalAccounts: Optional[List[str]] = None + FilterInArns: Optional[List[str]] = None + StartDate: Optional[datetime] = None + Status: Optional[AnalysisStatusType] = None + StatusMessage: Optional[str] = None + WarningMessage: Optional[str] = None + NetworkPathFound: Optional[bool] = None + ForwardPathComponents: Optional[List[PathComponentTypeDef]] = None + ReturnPathComponents: Optional[List[PathComponentTypeDef]] = None + Explanations: Optional[List[ExplanationTypeDef]] = None + AlternatePathHints: Optional[List[AlternatePathHintTypeDef]] = None + SuggestedAccounts: Optional[List[str]] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateNetworkInterfaceResultTypeDef(BaseModel): + NetworkInterface: NetworkInterfaceTypeDef + ClientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNetworkInterfacesResultTypeDef(BaseModel): + NetworkInterfaces: List[NetworkInterfaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateVpnConnectionRequestRequestTypeDef(BaseModel): + CustomerGatewayId: str + Type: str + VpnGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + DryRun: Optional[bool] = None + Options: Optional[VpnConnectionOptionsSpecificationTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class VpnConnectionTypeDef(BaseModel): + CustomerGatewayConfiguration: Optional[str] = None + CustomerGatewayId: Optional[str] = None + Category: Optional[str] = None + State: Optional[VpnStateType] = None + Type: Optional[Literal["ipsec.1"]] = None + VpnConnectionId: Optional[str] = None + VpnGatewayId: Optional[str] = None + TransitGatewayId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + CoreNetworkAttachmentArn: Optional[str] = None + GatewayAssociationState: Optional[GatewayAssociationStateType] = None + Options: Optional[VpnConnectionOptionsTypeDef] = None + Routes: Optional[List[VpnStaticRouteTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + VgwTelemetry: Optional[List[VgwTelemetryTypeDef]] = None + +class DescribeConversionTasksResultTypeDef(BaseModel): + ConversionTasks: List[ConversionTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportInstanceResultTypeDef(BaseModel): + ConversionTask: ConversionTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportVolumeResultTypeDef(BaseModel): + ConversionTask: ConversionTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SpotInstanceRequestTypeDef(BaseModel): + ActualBlockHourlyPrice: Optional[str] = None + AvailabilityZoneGroup: Optional[str] = None + BlockDurationMinutes: Optional[int] = None + CreateTime: Optional[datetime] = None + Fault: Optional[SpotInstanceStateFaultTypeDef] = None + InstanceId: Optional[str] = None + LaunchGroup: Optional[str] = None + LaunchSpecification: Optional[LaunchSpecificationTypeDef] = None + LaunchedAvailabilityZone: Optional[str] = None + ProductDescription: Optional[RIProductDescriptionType] = None + SpotInstanceRequestId: Optional[str] = None + SpotPrice: Optional[str] = None + State: Optional[SpotInstanceStateType] = None + Status: Optional[SpotInstanceStatusTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + Type: Optional[SpotInstanceTypeType] = None + ValidFrom: Optional[datetime] = None + ValidUntil: Optional[datetime] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + +class RunInstancesRequestRequestTypeDef(BaseModel): + MaxCount: int + MinCount: int + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[RunInstancesMonitoringEnabledTypeDef] = None + Placement: Optional[PlacementTypeDef] = None + RamdiskId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SecurityGroups: Optional[Sequence[str]] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + AdditionalInfo: Optional[str] = None + ClientToken: Optional[str] = None + DisableApiTermination: Optional[bool] = None + DryRun: Optional[bool] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + InstanceInitiatedShutdownBehavior: Optional[ShutdownBehaviorType] = None + NetworkInterfaces: Optional[ Sequence[InstanceNetworkInterfaceSpecificationUnionTypeDef] ] = None + PrivateIpAddress: Optional[str] = None + ElasticGpuSpecification: Optional[Sequence[ElasticGpuSpecificationTypeDef]] = None + ElasticInferenceAccelerators: Optional[Sequence[ElasticInferenceAcceleratorTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + InstanceMarketOptions: Optional[InstanceMarketOptionsRequestTypeDef] = None + CreditSpecification: Optional[CreditSpecificationRequestTypeDef] = None + CpuOptions: Optional[CpuOptionsRequestTypeDef] = None + CapacityReservationSpecification: Optional[CapacityReservationSpecificationTypeDef] = None + HibernationOptions: Optional[HibernationOptionsRequestTypeDef] = None + LicenseSpecifications: Optional[Sequence[LicenseConfigurationRequestTypeDef]] = None + MetadataOptions: Optional[InstanceMetadataOptionsRequestTypeDef] = None + EnclaveOptions: Optional[EnclaveOptionsRequestTypeDef] = None + PrivateDnsNameOptions: Optional[PrivateDnsNameOptionsRequestTypeDef] = None + MaintenanceOptions: Optional[InstanceMaintenanceOptionsRequestTypeDef] = None + DisableApiStop: Optional[bool] = None + EnablePrimaryIpv6: Optional[bool] = None + +class RunInstancesRequestServiceResourceCreateInstancesTypeDef(BaseModel): + MaxCount: int + MinCount: int + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + ImageId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[Sequence[InstanceIpv6AddressTypeDef]] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + Monitoring: Optional[RunInstancesMonitoringEnabledTypeDef] = None + Placement: Optional[PlacementTypeDef] = None + RamdiskId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SecurityGroups: Optional[Sequence[str]] = None + SubnetId: Optional[str] = None + UserData: Optional[str] = None + AdditionalInfo: Optional[str] = None + ClientToken: Optional[str] = None + DisableApiTermination: Optional[bool] = None + DryRun: Optional[bool] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[IamInstanceProfileSpecificationTypeDef] = None + InstanceInitiatedShutdownBehavior: Optional[ShutdownBehaviorType] = None + NetworkInterfaces: Optional[ Sequence[InstanceNetworkInterfaceSpecificationUnionTypeDef] ] = None + PrivateIpAddress: Optional[str] = None + ElasticGpuSpecification: Optional[Sequence[ElasticGpuSpecificationTypeDef]] = None + ElasticInferenceAccelerators: Optional[Sequence[ElasticInferenceAcceleratorTypeDef]] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + LaunchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + InstanceMarketOptions: Optional[InstanceMarketOptionsRequestTypeDef] = None + CreditSpecification: Optional[CreditSpecificationRequestTypeDef] = None + CpuOptions: Optional[CpuOptionsRequestTypeDef] = None + CapacityReservationSpecification: Optional[CapacityReservationSpecificationTypeDef] = None + HibernationOptions: Optional[HibernationOptionsRequestTypeDef] = None + LicenseSpecifications: Optional[Sequence[LicenseConfigurationRequestTypeDef]] = None + MetadataOptions: Optional[InstanceMetadataOptionsRequestTypeDef] = None + EnclaveOptions: Optional[EnclaveOptionsRequestTypeDef] = None + PrivateDnsNameOptions: Optional[PrivateDnsNameOptionsRequestTypeDef] = None + MaintenanceOptions: Optional[InstanceMaintenanceOptionsRequestTypeDef] = None + DisableApiStop: Optional[bool] = None + EnablePrimaryIpv6: Optional[bool] = None + +class RequestSpotInstancesRequestRequestTypeDef(BaseModel): + AvailabilityZoneGroup: Optional[str] = None + BlockDurationMinutes: Optional[int] = None + ClientToken: Optional[str] = None + DryRun: Optional[bool] = None + InstanceCount: Optional[int] = None + LaunchGroup: Optional[str] = None + LaunchSpecification: Optional[RequestSpotLaunchSpecificationTypeDef] = None + SpotPrice: Optional[str] = None + Type: Optional[SpotInstanceTypeType] = None + ValidFrom: Optional[TimestampTypeDef] = None + ValidUntil: Optional[TimestampTypeDef] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + +class CreateLaunchTemplateRequestRequestTypeDef(BaseModel): + LaunchTemplateName: str + LaunchTemplateData: RequestLaunchTemplateDataTypeDef + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + VersionDescription: Optional[str] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + +class CreateLaunchTemplateVersionRequestRequestTypeDef(BaseModel): + LaunchTemplateData: RequestLaunchTemplateDataTypeDef + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + SourceVersion: Optional[str] = None + VersionDescription: Optional[str] = None + ResolveAlias: Optional[bool] = None + +class InstanceTypeDef(BaseModel): + AmiLaunchIndex: Optional[int] = None + ImageId: Optional[str] = None + InstanceId: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LaunchTime: Optional[datetime] = None + Monitoring: Optional[MonitoringTypeDef] = None + Placement: Optional[PlacementTypeDef] = None + Platform: Optional[Literal["windows"]] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + ProductCodes: Optional[List[ProductCodeTypeDef]] = None + PublicDnsName: Optional[str] = None + PublicIpAddress: Optional[str] = None + RamdiskId: Optional[str] = None + State: Optional[InstanceStateTypeDef] = None + StateTransitionReason: Optional[str] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + Architecture: Optional[ArchitectureValuesType] = None + BlockDeviceMappings: Optional[List[InstanceBlockDeviceMappingTypeDef]] = None + ClientToken: Optional[str] = None + EbsOptimized: Optional[bool] = None + EnaSupport: Optional[bool] = None + Hypervisor: Optional[HypervisorTypeType] = None + IamInstanceProfile: Optional[IamInstanceProfileTypeDef] = None + InstanceLifecycle: Optional[InstanceLifecycleTypeType] = None + ElasticGpuAssociations: Optional[List[ElasticGpuAssociationTypeDef]] = None + ElasticInferenceAcceleratorAssociations: Optional[ List[ElasticInferenceAcceleratorAssociationTypeDef] ] = None + NetworkInterfaces: Optional[List[InstanceNetworkInterfaceTypeDef]] = None + OutpostArn: Optional[str] = None + RootDeviceName: Optional[str] = None + RootDeviceType: Optional[DeviceTypeType] = None + SecurityGroups: Optional[List[GroupIdentifierTypeDef]] = None + SourceDestCheck: Optional[bool] = None + SpotInstanceRequestId: Optional[str] = None + SriovNetSupport: Optional[str] = None + StateReason: Optional[StateReasonTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + VirtualizationType: Optional[VirtualizationTypeType] = None + CpuOptions: Optional[CpuOptionsTypeDef] = None + CapacityReservationId: Optional[str] = None + CapacityReservationSpecification: Optional[ CapacityReservationSpecificationResponseTypeDef ] = None + HibernationOptions: Optional[HibernationOptionsTypeDef] = None + Licenses: Optional[List[LicenseConfigurationTypeDef]] = None + MetadataOptions: Optional[InstanceMetadataOptionsResponseTypeDef] = None + EnclaveOptions: Optional[EnclaveOptionsTypeDef] = None + BootMode: Optional[BootModeValuesType] = None + PlatformDetails: Optional[str] = None + UsageOperation: Optional[str] = None + UsageOperationUpdateTime: Optional[datetime] = None + PrivateDnsNameOptions: Optional[PrivateDnsNameOptionsResponseTypeDef] = None + Ipv6Address: Optional[str] = None + TpmSupport: Optional[str] = None + MaintenanceOptions: Optional[InstanceMaintenanceOptionsTypeDef] = None + CurrentInstanceBootMode: Optional[InstanceBootModeValuesType] = None + +class SpotFleetRequestConfigDataExtraOutputTypeDef(BaseModel): + IamFleetRole: str + TargetCapacity: int + AllocationStrategy: Optional[AllocationStrategyType] = None + OnDemandAllocationStrategy: Optional[OnDemandAllocationStrategyType] = None + SpotMaintenanceStrategies: Optional[SpotMaintenanceStrategiesTypeDef] = None + ClientToken: Optional[str] = None + ExcessCapacityTerminationPolicy: Optional[ExcessCapacityTerminationPolicyType] = None + FulfilledCapacity: Optional[float] = None + OnDemandFulfilledCapacity: Optional[float] = None + LaunchSpecifications: Optional[List[SpotFleetLaunchSpecificationExtraOutputTypeDef]] = None + LaunchTemplateConfigs: Optional[List[LaunchTemplateConfigExtraOutputTypeDef]] = None + SpotPrice: Optional[str] = None + OnDemandTargetCapacity: Optional[int] = None + OnDemandMaxTotalPrice: Optional[str] = None + SpotMaxTotalPrice: Optional[str] = None + TerminateInstancesWithExpiration: Optional[bool] = None + Type: Optional[FleetTypeType] = None + ValidFrom: Optional[datetime] = None + ValidUntil: Optional[datetime] = None + ReplaceUnhealthyInstances: Optional[bool] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + LoadBalancersConfig: Optional[LoadBalancersConfigExtraOutputTypeDef] = None + InstancePoolsToUseCount: Optional[int] = None + Context: Optional[str] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + TagSpecifications: Optional[List[TagSpecificationExtraOutputTypeDef]] = None + +class CreateFleetErrorTypeDef(BaseModel): + LaunchTemplateAndOverrides: Optional[LaunchTemplateAndOverridesResponseTypeDef] = None + Lifecycle: Optional[InstanceLifecycleType] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class CreateFleetInstanceTypeDef(BaseModel): + LaunchTemplateAndOverrides: Optional[LaunchTemplateAndOverridesResponseTypeDef] = None + Lifecycle: Optional[InstanceLifecycleType] = None + InstanceIds: Optional[List[str]] = None + InstanceType: Optional[InstanceTypeType] = None + Platform: Optional[Literal["windows"]] = None + +class DescribeFleetErrorTypeDef(BaseModel): + LaunchTemplateAndOverrides: Optional[LaunchTemplateAndOverridesResponseTypeDef] = None + Lifecycle: Optional[InstanceLifecycleType] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class DescribeFleetsInstancesTypeDef(BaseModel): + LaunchTemplateAndOverrides: Optional[LaunchTemplateAndOverridesResponseTypeDef] = None + Lifecycle: Optional[InstanceLifecycleType] = None + InstanceIds: Optional[List[str]] = None + InstanceType: Optional[InstanceTypeType] = None + Platform: Optional[Literal["windows"]] = None + +class SpotFleetRequestConfigDataOutputTypeDef(BaseModel): + IamFleetRole: str + TargetCapacity: int + AllocationStrategy: Optional[AllocationStrategyType] = None + OnDemandAllocationStrategy: Optional[OnDemandAllocationStrategyType] = None + SpotMaintenanceStrategies: Optional[SpotMaintenanceStrategiesTypeDef] = None + ClientToken: Optional[str] = None + ExcessCapacityTerminationPolicy: Optional[ExcessCapacityTerminationPolicyType] = None + FulfilledCapacity: Optional[float] = None + OnDemandFulfilledCapacity: Optional[float] = None + LaunchSpecifications: Optional[List[SpotFleetLaunchSpecificationOutputTypeDef]] = None + LaunchTemplateConfigs: Optional[List[LaunchTemplateConfigOutputTypeDef]] = None + SpotPrice: Optional[str] = None + OnDemandTargetCapacity: Optional[int] = None + OnDemandMaxTotalPrice: Optional[str] = None + SpotMaxTotalPrice: Optional[str] = None + TerminateInstancesWithExpiration: Optional[bool] = None + Type: Optional[FleetTypeType] = None + ValidFrom: Optional[datetime] = None + ValidUntil: Optional[datetime] = None + ReplaceUnhealthyInstances: Optional[bool] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + LoadBalancersConfig: Optional[LoadBalancersConfigOutputTypeDef] = None + InstancePoolsToUseCount: Optional[int] = None + Context: Optional[str] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + TagSpecifications: Optional[List[TagSpecificationOutputTypeDef]] = None + +class SpotFleetRequestConfigDataTypeDef(BaseModel): + IamFleetRole: str + TargetCapacity: int + AllocationStrategy: Optional[AllocationStrategyType] = None + OnDemandAllocationStrategy: Optional[OnDemandAllocationStrategyType] = None + SpotMaintenanceStrategies: Optional[SpotMaintenanceStrategiesTypeDef] = None + ClientToken: Optional[str] = None + ExcessCapacityTerminationPolicy: Optional[ExcessCapacityTerminationPolicyType] = None + FulfilledCapacity: Optional[float] = None + OnDemandFulfilledCapacity: Optional[float] = None + LaunchSpecifications: Optional[Sequence[SpotFleetLaunchSpecificationTypeDef]] = None + LaunchTemplateConfigs: Optional[Sequence[LaunchTemplateConfigTypeDef]] = None + SpotPrice: Optional[str] = None + OnDemandTargetCapacity: Optional[int] = None + OnDemandMaxTotalPrice: Optional[str] = None + SpotMaxTotalPrice: Optional[str] = None + TerminateInstancesWithExpiration: Optional[bool] = None + Type: Optional[FleetTypeType] = None + ValidFrom: Optional[TimestampTypeDef] = None + ValidUntil: Optional[TimestampTypeDef] = None + ReplaceUnhealthyInstances: Optional[bool] = None + InstanceInterruptionBehavior: Optional[InstanceInterruptionBehaviorType] = None + LoadBalancersConfig: Optional[LoadBalancersConfigTypeDef] = None + InstancePoolsToUseCount: Optional[int] = None + Context: Optional[str] = None + TargetCapacityUnitType: Optional[TargetCapacityUnitTypeType] = None + TagSpecifications: Optional[Sequence[TagSpecificationTypeDef]] = None + +class CreateFleetRequestRequestTypeDef(BaseModel): + LaunchTemplateConfigs: Sequence[FleetLaunchTemplateConfigRequestTypeDef] + TargetCapacitySpecification: TargetCapacitySpecificationRequestTypeDef + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + SpotOptions: Optional[SpotOptionsRequestTypeDef] = None + OnDemandOptions: Optional[OnDemandOptionsRequestTypeDef] = None + ExcessCapacityTerminationPolicy: Optional[FleetExcessCapacityTerminationPolicyType] = None + TerminateInstancesWithExpiration: Optional[bool] = None + Type: Optional[FleetTypeType] = None + ValidFrom: Optional[TimestampTypeDef] = None + ValidUntil: Optional[TimestampTypeDef] = None + ReplaceUnhealthyInstances: Optional[bool] = None + TagSpecifications: Optional[Sequence[TagSpecificationUnionTypeDef]] = None + Context: Optional[str] = None + +class ModifyFleetRequestRequestTypeDef(BaseModel): + FleetId: str + DryRun: Optional[bool] = None + ExcessCapacityTerminationPolicy: Optional[FleetExcessCapacityTerminationPolicyType] = None + LaunchTemplateConfigs: Optional[Sequence[FleetLaunchTemplateConfigRequestTypeDef]] = None + TargetCapacitySpecification: Optional[TargetCapacitySpecificationRequestTypeDef] = None + Context: Optional[str] = None + +class GetLaunchTemplateDataResultTypeDef(BaseModel): + LaunchTemplateData: ResponseLaunchTemplateDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LaunchTemplateVersionTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + VersionNumber: Optional[int] = None + VersionDescription: Optional[str] = None + CreateTime: Optional[datetime] = None + CreatedBy: Optional[str] = None + DefaultVersion: Optional[bool] = None + LaunchTemplateData: Optional[ResponseLaunchTemplateDataTypeDef] = None + +class DescribeInstanceTypesResultTypeDef(BaseModel): + InstanceTypes: List[InstanceTypeInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateNetworkInsightsAccessScopeResultTypeDef(BaseModel): + NetworkInsightsAccessScope: NetworkInsightsAccessScopeTypeDef + NetworkInsightsAccessScopeContent: NetworkInsightsAccessScopeContentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkInsightsAccessScopeContentResultTypeDef(BaseModel): + NetworkInsightsAccessScopeContent: NetworkInsightsAccessScopeContentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVerifiedAccessInstanceLoggingConfigurationsResultTypeDef(BaseModel): + LoggingConfigurations: List[VerifiedAccessInstanceLoggingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyVerifiedAccessInstanceLoggingConfigurationResultTypeDef(BaseModel): + LoggingConfiguration: VerifiedAccessInstanceLoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkInsightsAccessScopeAnalysisFindingsResultTypeDef(BaseModel): + NetworkInsightsAccessScopeAnalysisId: str + AnalysisStatus: AnalysisStatusType + AnalysisFindings: List[AccessScopeAnalysisFindingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeNetworkInsightsAnalysesResultTypeDef(BaseModel): + NetworkInsightsAnalyses: List[NetworkInsightsAnalysisTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartNetworkInsightsAnalysisResultTypeDef(BaseModel): + NetworkInsightsAnalysis: NetworkInsightsAnalysisTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpnConnectionResultTypeDef(BaseModel): + VpnConnection: VpnConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpnConnectionsResultTypeDef(BaseModel): + VpnConnections: List[VpnConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpnConnectionOptionsResultTypeDef(BaseModel): + VpnConnection: VpnConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpnConnectionResultTypeDef(BaseModel): + VpnConnection: VpnConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpnTunnelCertificateResultTypeDef(BaseModel): + VpnConnection: VpnConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyVpnTunnelOptionsResultTypeDef(BaseModel): + VpnConnection: VpnConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSpotInstanceRequestsResultTypeDef(BaseModel): + SpotInstanceRequests: List[SpotInstanceRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RequestSpotInstancesResultTypeDef(BaseModel): + SpotInstanceRequests: List[SpotInstanceRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReservationResponseTypeDef(BaseModel): + Groups: List[GroupIdentifierTypeDef] + Instances: List[InstanceTypeDef] + OwnerId: str + RequesterId: str + ReservationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReservationTypeDef(BaseModel): + Groups: Optional[List[GroupIdentifierTypeDef]] = None + Instances: Optional[List[InstanceTypeDef]] = None + OwnerId: Optional[str] = None + RequesterId: Optional[str] = None + ReservationId: Optional[str] = None + +class CreateFleetResultTypeDef(BaseModel): + FleetId: str + Errors: List[CreateFleetErrorTypeDef] + Instances: List[CreateFleetInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FleetDataTypeDef(BaseModel): + ActivityStatus: Optional[FleetActivityStatusType] = None + CreateTime: Optional[datetime] = None + FleetId: Optional[str] = None + FleetState: Optional[FleetStateCodeType] = None + ClientToken: Optional[str] = None + ExcessCapacityTerminationPolicy: Optional[FleetExcessCapacityTerminationPolicyType] = None + FulfilledCapacity: Optional[float] = None + FulfilledOnDemandCapacity: Optional[float] = None + LaunchTemplateConfigs: Optional[List[FleetLaunchTemplateConfigTypeDef]] = None + TargetCapacitySpecification: Optional[TargetCapacitySpecificationTypeDef] = None + TerminateInstancesWithExpiration: Optional[bool] = None + Type: Optional[FleetTypeType] = None + ValidFrom: Optional[datetime] = None + ValidUntil: Optional[datetime] = None + ReplaceUnhealthyInstances: Optional[bool] = None + SpotOptions: Optional[SpotOptionsTypeDef] = None + OnDemandOptions: Optional[OnDemandOptionsTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + Errors: Optional[List[DescribeFleetErrorTypeDef]] = None + Instances: Optional[List[DescribeFleetsInstancesTypeDef]] = None + Context: Optional[str] = None + +class SpotFleetRequestConfigTypeDef(BaseModel): + ActivityStatus: Optional[ActivityStatusType] = None + CreateTime: Optional[datetime] = None + SpotFleetRequestConfig: Optional[SpotFleetRequestConfigDataOutputTypeDef] = None + SpotFleetRequestId: Optional[str] = None + SpotFleetRequestState: Optional[BatchStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class ModifySpotFleetRequestRequestRequestTypeDef(BaseModel): + SpotFleetRequestId: str + ExcessCapacityTerminationPolicy: Optional[ExcessCapacityTerminationPolicyType] = None + LaunchTemplateConfigs: Optional[Sequence[LaunchTemplateConfigUnionTypeDef]] = None + TargetCapacity: Optional[int] = None + OnDemandTargetCapacity: Optional[int] = None + Context: Optional[str] = None + +class RequestSpotFleetRequestRequestTypeDef(BaseModel): + SpotFleetRequestConfig: SpotFleetRequestConfigDataTypeDef + DryRun: Optional[bool] = None + +class CreateLaunchTemplateVersionResultTypeDef(BaseModel): + LaunchTemplateVersion: LaunchTemplateVersionTypeDef + Warning: ValidationWarningTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLaunchTemplateVersionsResultTypeDef(BaseModel): + LaunchTemplateVersions: List[LaunchTemplateVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstancesResultTypeDef(BaseModel): + Reservations: List[ReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFleetsResultTypeDef(BaseModel): + Fleets: List[FleetDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSpotFleetRequestsResponseTypeDef(BaseModel): + SpotFleetRequestConfigs: List[SpotFleetRequestConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/ec2_constants.py b/aws_resource_validator/pydantic_models/ec2_constants.py new file mode 100644 index 00000000..ffa141a7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ec2_constants.py @@ -0,0 +1,2306 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceleratorManufacturerType = Literal["amazon-web-services", "amd", "habana", "nvidia", "xilinx"] +AcceleratorNameType = Literal["a100", + "a10g", + "h100", + "inferentia", + "k520", + "k80", + "m60", + "radeon-pro-v520", + "t4", + "t4g", + "v100", + "vu9p",] +AcceleratorTypeType = Literal["fpga", "gpu", "inference"] +AccountAttributeNameType = Literal["default-vpc", "supported-platforms"] +ActivityStatusType = Literal["error", "fulfilled", "pending_fulfillment", "pending_termination"] +AddressAttributeNameType = Literal["domain-name"] +AddressFamilyType = Literal["ipv4", "ipv6"] +AddressTransferStatusType = Literal["accepted", "disabled", "pending"] +AffinityType = Literal["default", "host"] +AllocationStateType = Literal["available", + "pending", + "permanent-failure", + "released", + "released-permanent-failure", + "under-assessment",] +AllocationStrategyType = Literal["capacityOptimized", + "capacityOptimizedPrioritized", + "diversified", + "lowestPrice", + "priceCapacityOptimized",] +AllocationTypeType = Literal["used"] +AllowsMultipleInstanceTypesType = Literal["off", "on"] +AmdSevSnpSpecificationType = Literal["disabled", "enabled"] +AnalysisStatusType = Literal["failed", "running", "succeeded"] +ApplianceModeSupportValueType = Literal["disable", "enable"] +ArchitectureTypeType = Literal["arm64", "arm64_mac", "i386", "x86_64", "x86_64_mac"] +ArchitectureValuesType = Literal["arm64", "arm64_mac", "i386", "x86_64", "x86_64_mac"] +AsnAssociationStateType = Literal["associated", + "disassociated", + "failed-association", + "failed-disassociation", + "pending-association", + "pending-disassociation",] +AsnStateType = Literal["deprovisioned", + "failed-deprovision", + "failed-provision", + "pending-deprovision", + "pending-provision", + "provisioned",] +AssociatedNetworkTypeType = Literal["vpc"] +AssociationStatusCodeType = Literal["associated", "associating", "association-failed", "disassociated", "disassociating"] +AttachmentStatusType = Literal["attached", "attaching", "detached", "detaching"] +AutoAcceptSharedAssociationsValueType = Literal["disable", "enable"] +AutoAcceptSharedAttachmentsValueType = Literal["disable", "enable"] +AutoPlacementType = Literal["off", "on"] +AvailabilityZoneOptInStatusType = Literal["not-opted-in", "opt-in-not-required", "opted-in"] +AvailabilityZoneStateType = Literal["available", "constrained", "impaired", "information", "unavailable"] +BareMetalType = Literal["excluded", "included", "required"] +BatchStateType = Literal["active", + "cancelled", + "cancelled_running", + "cancelled_terminating", + "failed", + "modifying", + "submitted",] +BgpStatusType = Literal["down", "up"] +BootModeTypeType = Literal["legacy-bios", "uefi"] +BootModeValuesType = Literal["legacy-bios", "uefi", "uefi-preferred"] +BundleTaskCompleteWaiterName = Literal["bundle_task_complete"] +BundleTaskStateType = Literal["bundling", "cancelling", "complete", "failed", "pending", "storing", "waiting-for-shutdown"] +BurstablePerformanceType = Literal["excluded", "included", "required"] +ByoipCidrStateType = Literal["advertised", + "deprovisioned", + "failed-deprovision", + "failed-provision", + "pending-deprovision", + "pending-provision", + "provisioned", + "provisioned-not-publicly-advertisable",] +CancelBatchErrorCodeType = Literal["fleetRequestIdDoesNotExist", + "fleetRequestIdMalformed", + "fleetRequestNotInCancellableState", + "unexpectedError",] +CancelSpotInstanceRequestStateType = Literal["active", "cancelled", "closed", "completed", "open"] +CapacityReservationFleetStateType = Literal["active", + "cancelled", + "cancelling", + "expired", + "expiring", + "failed", + "modifying", + "partially_fulfilled", + "submitted",] +CapacityReservationInstancePlatformType = Literal["Linux with SQL Server Enterprise", + "Linux with SQL Server Standard", + "Linux with SQL Server Web", + "Linux/UNIX", + "RHEL with HA", + "RHEL with HA and SQL Server Enterprise", + "RHEL with HA and SQL Server Standard", + "RHEL with SQL Server Enterprise", + "RHEL with SQL Server Standard", + "RHEL with SQL Server Web", + "Red Hat Enterprise Linux", + "SUSE Linux", + "Ubuntu Pro", + "Windows", + "Windows with SQL Server", + "Windows with SQL Server Enterprise", + "Windows with SQL Server Standard", + "Windows with SQL Server Web",] +CapacityReservationPreferenceType = Literal["none", "open"] +CapacityReservationStateType = Literal["active", + "cancelled", + "expired", + "failed", + "payment-failed", + "payment-pending", + "pending", + "scheduled",] +CapacityReservationTenancyType = Literal["dedicated", "default"] +CapacityReservationTypeType = Literal["capacity-block", "default"] +CarrierGatewayStateType = Literal["available", "deleted", "deleting", "pending"] +ClientCertificateRevocationListStatusCodeType = Literal["active", "pending"] +ClientVpnAuthenticationTypeType = Literal["certificate-authentication", "directory-service-authentication", "federated-authentication"] +ClientVpnAuthorizationRuleStatusCodeType = Literal["active", "authorizing", "failed", "revoking"] +ClientVpnConnectionStatusCodeType = Literal["active", "failed-to-terminate", "terminated", "terminating"] +ClientVpnEndpointAttributeStatusCodeType = Literal["applied", "applying"] +ClientVpnEndpointStatusCodeType = Literal["available", "deleted", "deleting", "pending-associate"] +ClientVpnRouteStatusCodeType = Literal["active", "creating", "deleting", "failed"] +ConnectionNotificationStateType = Literal["Disabled", "Enabled"] +ConnectionNotificationTypeType = Literal["Topic"] +ConnectivityTypeType = Literal["private", "public"] +ContainerFormatType = Literal["ova"] +ConversionTaskCancelledWaiterName = Literal["conversion_task_cancelled"] +ConversionTaskCompletedWaiterName = Literal["conversion_task_completed"] +ConversionTaskDeletedWaiterName = Literal["conversion_task_deleted"] +ConversionTaskStateType = Literal["active", "cancelled", "cancelling", "completed"] +CopyTagsFromSourceType = Literal["volume"] +CpuManufacturerType = Literal["amazon-web-services", "amd", "intel"] +CurrencyCodeValuesType = Literal["USD"] +CustomerGatewayAvailableWaiterName = Literal["customer_gateway_available"] +DatafeedSubscriptionStateType = Literal["Active", "Inactive"] +DefaultInstanceMetadataEndpointStateType = Literal["disabled", "enabled", "no-preference"] +DefaultInstanceMetadataTagsStateType = Literal["disabled", "enabled", "no-preference"] +DefaultRouteTableAssociationValueType = Literal["disable", "enable"] +DefaultRouteTablePropagationValueType = Literal["disable", "enable"] +DefaultTargetCapacityTypeType = Literal["capacity-block", "on-demand", "spot"] +DeleteFleetErrorCodeType = Literal["fleetIdDoesNotExist", "fleetIdMalformed", "fleetNotInDeletableState", "unexpectedError"] +DeleteQueuedReservedInstancesErrorCodeType = Literal["reserved-instances-id-invalid", "reserved-instances-not-in-queued-state", "unexpected-error"] +DescribeAddressTransfersPaginatorName = Literal["describe_address_transfers"] +DescribeAddressesAttributePaginatorName = Literal["describe_addresses_attribute"] +DescribeAwsNetworkPerformanceMetricSubscriptionsPaginatorName = Literal["describe_aws_network_performance_metric_subscriptions"] +DescribeByoipCidrsPaginatorName = Literal["describe_byoip_cidrs"] +DescribeCapacityBlockOfferingsPaginatorName = Literal["describe_capacity_block_offerings"] +DescribeCapacityReservationFleetsPaginatorName = Literal["describe_capacity_reservation_fleets"] +DescribeCapacityReservationsPaginatorName = Literal["describe_capacity_reservations"] +DescribeCarrierGatewaysPaginatorName = Literal["describe_carrier_gateways"] +DescribeClassicLinkInstancesPaginatorName = Literal["describe_classic_link_instances"] +DescribeClientVpnAuthorizationRulesPaginatorName = Literal["describe_client_vpn_authorization_rules"] +DescribeClientVpnConnectionsPaginatorName = Literal["describe_client_vpn_connections"] +DescribeClientVpnEndpointsPaginatorName = Literal["describe_client_vpn_endpoints"] +DescribeClientVpnRoutesPaginatorName = Literal["describe_client_vpn_routes"] +DescribeClientVpnTargetNetworksPaginatorName = Literal["describe_client_vpn_target_networks"] +DescribeCoipPoolsPaginatorName = Literal["describe_coip_pools"] +DescribeDhcpOptionsPaginatorName = Literal["describe_dhcp_options"] +DescribeEgressOnlyInternetGatewaysPaginatorName = Literal["describe_egress_only_internet_gateways"] +DescribeExportImageTasksPaginatorName = Literal["describe_export_image_tasks"] +DescribeFastLaunchImagesPaginatorName = Literal["describe_fast_launch_images"] +DescribeFastSnapshotRestoresPaginatorName = Literal["describe_fast_snapshot_restores"] +DescribeFleetsPaginatorName = Literal["describe_fleets"] +DescribeFlowLogsPaginatorName = Literal["describe_flow_logs"] +DescribeFpgaImagesPaginatorName = Literal["describe_fpga_images"] +DescribeHostReservationOfferingsPaginatorName = Literal["describe_host_reservation_offerings"] +DescribeHostReservationsPaginatorName = Literal["describe_host_reservations"] +DescribeHostsPaginatorName = Literal["describe_hosts"] +DescribeIamInstanceProfileAssociationsPaginatorName = Literal["describe_iam_instance_profile_associations"] +DescribeImagesPaginatorName = Literal["describe_images"] +DescribeImportImageTasksPaginatorName = Literal["describe_import_image_tasks"] +DescribeImportSnapshotTasksPaginatorName = Literal["describe_import_snapshot_tasks"] +DescribeInstanceConnectEndpointsPaginatorName = Literal["describe_instance_connect_endpoints"] +DescribeInstanceCreditSpecificationsPaginatorName = Literal["describe_instance_credit_specifications"] +DescribeInstanceEventWindowsPaginatorName = Literal["describe_instance_event_windows"] +DescribeInstanceStatusPaginatorName = Literal["describe_instance_status"] +DescribeInstanceTopologyPaginatorName = Literal["describe_instance_topology"] +DescribeInstanceTypeOfferingsPaginatorName = Literal["describe_instance_type_offerings"] +DescribeInstanceTypesPaginatorName = Literal["describe_instance_types"] +DescribeInstancesPaginatorName = Literal["describe_instances"] +DescribeInternetGatewaysPaginatorName = Literal["describe_internet_gateways"] +DescribeIpamPoolsPaginatorName = Literal["describe_ipam_pools"] +DescribeIpamResourceDiscoveriesPaginatorName = Literal["describe_ipam_resource_discoveries"] +DescribeIpamResourceDiscoveryAssociationsPaginatorName = Literal["describe_ipam_resource_discovery_associations"] +DescribeIpamScopesPaginatorName = Literal["describe_ipam_scopes"] +DescribeIpamsPaginatorName = Literal["describe_ipams"] +DescribeIpv6PoolsPaginatorName = Literal["describe_ipv6_pools"] +DescribeLaunchTemplateVersionsPaginatorName = Literal["describe_launch_template_versions"] +DescribeLaunchTemplatesPaginatorName = Literal["describe_launch_templates"] +DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsPaginatorName = Literal["describe_local_gateway_route_table_virtual_interface_group_associations"] +DescribeLocalGatewayRouteTableVpcAssociationsPaginatorName = Literal["describe_local_gateway_route_table_vpc_associations"] +DescribeLocalGatewayRouteTablesPaginatorName = Literal["describe_local_gateway_route_tables"] +DescribeLocalGatewayVirtualInterfaceGroupsPaginatorName = Literal["describe_local_gateway_virtual_interface_groups"] +DescribeLocalGatewayVirtualInterfacesPaginatorName = Literal["describe_local_gateway_virtual_interfaces"] +DescribeLocalGatewaysPaginatorName = Literal["describe_local_gateways"] +DescribeMacHostsPaginatorName = Literal["describe_mac_hosts"] +DescribeManagedPrefixListsPaginatorName = Literal["describe_managed_prefix_lists"] +DescribeMovingAddressesPaginatorName = Literal["describe_moving_addresses"] +DescribeNatGatewaysPaginatorName = Literal["describe_nat_gateways"] +DescribeNetworkAclsPaginatorName = Literal["describe_network_acls"] +DescribeNetworkInsightsAccessScopeAnalysesPaginatorName = Literal["describe_network_insights_access_scope_analyses"] +DescribeNetworkInsightsAccessScopesPaginatorName = Literal["describe_network_insights_access_scopes"] +DescribeNetworkInsightsAnalysesPaginatorName = Literal["describe_network_insights_analyses"] +DescribeNetworkInsightsPathsPaginatorName = Literal["describe_network_insights_paths"] +DescribeNetworkInterfacePermissionsPaginatorName = Literal["describe_network_interface_permissions"] +DescribeNetworkInterfacesPaginatorName = Literal["describe_network_interfaces"] +DescribePrefixListsPaginatorName = Literal["describe_prefix_lists"] +DescribePrincipalIdFormatPaginatorName = Literal["describe_principal_id_format"] +DescribePublicIpv4PoolsPaginatorName = Literal["describe_public_ipv4_pools"] +DescribeReplaceRootVolumeTasksPaginatorName = Literal["describe_replace_root_volume_tasks"] +DescribeReservedInstancesModificationsPaginatorName = Literal["describe_reserved_instances_modifications"] +DescribeReservedInstancesOfferingsPaginatorName = Literal["describe_reserved_instances_offerings"] +DescribeRouteTablesPaginatorName = Literal["describe_route_tables"] +DescribeScheduledInstanceAvailabilityPaginatorName = Literal["describe_scheduled_instance_availability"] +DescribeScheduledInstancesPaginatorName = Literal["describe_scheduled_instances"] +DescribeSecurityGroupRulesPaginatorName = Literal["describe_security_group_rules"] +DescribeSecurityGroupsPaginatorName = Literal["describe_security_groups"] +DescribeSnapshotTierStatusPaginatorName = Literal["describe_snapshot_tier_status"] +DescribeSnapshotsPaginatorName = Literal["describe_snapshots"] +DescribeSpotFleetInstancesPaginatorName = Literal["describe_spot_fleet_instances"] +DescribeSpotFleetRequestsPaginatorName = Literal["describe_spot_fleet_requests"] +DescribeSpotInstanceRequestsPaginatorName = Literal["describe_spot_instance_requests"] +DescribeSpotPriceHistoryPaginatorName = Literal["describe_spot_price_history"] +DescribeStaleSecurityGroupsPaginatorName = Literal["describe_stale_security_groups"] +DescribeStoreImageTasksPaginatorName = Literal["describe_store_image_tasks"] +DescribeSubnetsPaginatorName = Literal["describe_subnets"] +DescribeTagsPaginatorName = Literal["describe_tags"] +DescribeTrafficMirrorFiltersPaginatorName = Literal["describe_traffic_mirror_filters"] +DescribeTrafficMirrorSessionsPaginatorName = Literal["describe_traffic_mirror_sessions"] +DescribeTrafficMirrorTargetsPaginatorName = Literal["describe_traffic_mirror_targets"] +DescribeTransitGatewayAttachmentsPaginatorName = Literal["describe_transit_gateway_attachments"] +DescribeTransitGatewayConnectPeersPaginatorName = Literal["describe_transit_gateway_connect_peers"] +DescribeTransitGatewayConnectsPaginatorName = Literal["describe_transit_gateway_connects"] +DescribeTransitGatewayMulticastDomainsPaginatorName = Literal["describe_transit_gateway_multicast_domains"] +DescribeTransitGatewayPeeringAttachmentsPaginatorName = Literal["describe_transit_gateway_peering_attachments"] +DescribeTransitGatewayPolicyTablesPaginatorName = Literal["describe_transit_gateway_policy_tables"] +DescribeTransitGatewayRouteTableAnnouncementsPaginatorName = Literal["describe_transit_gateway_route_table_announcements"] +DescribeTransitGatewayRouteTablesPaginatorName = Literal["describe_transit_gateway_route_tables"] +DescribeTransitGatewayVpcAttachmentsPaginatorName = Literal["describe_transit_gateway_vpc_attachments"] +DescribeTransitGatewaysPaginatorName = Literal["describe_transit_gateways"] +DescribeTrunkInterfaceAssociationsPaginatorName = Literal["describe_trunk_interface_associations"] +DescribeVerifiedAccessEndpointsPaginatorName = Literal["describe_verified_access_endpoints"] +DescribeVerifiedAccessGroupsPaginatorName = Literal["describe_verified_access_groups"] +DescribeVerifiedAccessInstanceLoggingConfigurationsPaginatorName = Literal["describe_verified_access_instance_logging_configurations"] +DescribeVerifiedAccessInstancesPaginatorName = Literal["describe_verified_access_instances"] +DescribeVerifiedAccessTrustProvidersPaginatorName = Literal["describe_verified_access_trust_providers"] +DescribeVolumeStatusPaginatorName = Literal["describe_volume_status"] +DescribeVolumesModificationsPaginatorName = Literal["describe_volumes_modifications"] +DescribeVolumesPaginatorName = Literal["describe_volumes"] +DescribeVpcClassicLinkDnsSupportPaginatorName = Literal["describe_vpc_classic_link_dns_support"] +DescribeVpcEndpointConnectionNotificationsPaginatorName = Literal["describe_vpc_endpoint_connection_notifications"] +DescribeVpcEndpointConnectionsPaginatorName = Literal["describe_vpc_endpoint_connections"] +DescribeVpcEndpointServiceConfigurationsPaginatorName = Literal["describe_vpc_endpoint_service_configurations"] +DescribeVpcEndpointServicePermissionsPaginatorName = Literal["describe_vpc_endpoint_service_permissions"] +DescribeVpcEndpointServicesPaginatorName = Literal["describe_vpc_endpoint_services"] +DescribeVpcEndpointsPaginatorName = Literal["describe_vpc_endpoints"] +DescribeVpcPeeringConnectionsPaginatorName = Literal["describe_vpc_peering_connections"] +DescribeVpcsPaginatorName = Literal["describe_vpcs"] +DestinationFileFormatType = Literal["parquet", "plain-text"] +DeviceTrustProviderTypeType = Literal["crowdstrike", "jamf", "jumpcloud"] +DeviceTypeType = Literal["ebs", "instance-store"] +DiskImageFormatType = Literal["RAW", "VHD", "VMDK"] +DiskTypeType = Literal["hdd", "ssd"] +DnsNameStateType = Literal["failed", "pendingVerification", "verified"] +DnsRecordIpTypeType = Literal["dualstack", "ipv4", "ipv6", "service-defined"] +DnsSupportValueType = Literal["disable", "enable"] +DomainTypeType = Literal["standard", "vpc"] +DynamicRoutingValueType = Literal["disable", "enable"] +EbsEncryptionSupportType = Literal["supported", "unsupported"] +EbsNvmeSupportType = Literal["required", "supported", "unsupported"] +EbsOptimizedSupportType = Literal["default", "supported", "unsupported"] +Ec2InstanceConnectEndpointStateType = Literal["create-complete", + "create-failed", + "create-in-progress", + "delete-complete", + "delete-failed", + "delete-in-progress",] +EkPubKeyFormatType = Literal["der", "tpmt"] +EkPubKeyTypeType = Literal["ecc-sec-p384", "rsa-2048"] +ElasticGpuStateType = Literal["ATTACHED"] +ElasticGpuStatusType = Literal["IMPAIRED", "OK"] +EnaSupportType = Literal["required", "supported", "unsupported"] +EndDateTypeType = Literal["limited", "unlimited"] +EphemeralNvmeSupportType = Literal["required", "supported", "unsupported"] +EventCodeType = Literal["instance-reboot", "instance-retirement", "instance-stop", "system-maintenance", "system-reboot"] +EventTypeType = Literal["error", "fleetRequestChange", "information", "instanceChange"] +ExcessCapacityTerminationPolicyType = Literal["default", "noTermination"] +ExportEnvironmentType = Literal["citrix", "microsoft", "vmware"] +ExportTaskCancelledWaiterName = Literal["export_task_cancelled"] +ExportTaskCompletedWaiterName = Literal["export_task_completed"] +ExportTaskStateType = Literal["active", "cancelled", "cancelling", "completed"] +FastLaunchResourceTypeType = Literal["snapshot"] +FastLaunchStateCodeType = Literal["disabling", "disabling-failed", "enabled", "enabled-failed", "enabling", "enabling-failed"] +FastSnapshotRestoreStateCodeType = Literal["disabled", "disabling", "enabled", "enabling", "optimizing"] +FindingsFoundType = Literal["false", "true", "unknown"] +FleetActivityStatusType = Literal["error", "fulfilled", "pending_fulfillment", "pending_termination"] +FleetCapacityReservationTenancyType = Literal["default"] +FleetCapacityReservationUsageStrategyType = Literal["use-capacity-reservations-first"] +FleetEventTypeType = Literal["fleet-change", "instance-change", "service-error"] +FleetExcessCapacityTerminationPolicyType = Literal["no-termination", "termination"] +FleetInstanceMatchCriteriaType = Literal["open"] +FleetOnDemandAllocationStrategyType = Literal["lowest-price", "prioritized"] +FleetReplacementStrategyType = Literal["launch", "launch-before-terminate"] +FleetStateCodeType = Literal["active", + "deleted", + "deleted_running", + "deleted_terminating", + "failed", + "modifying", + "submitted",] +FleetTypeType = Literal["instant", "maintain", "request"] +FlowLogsResourceTypeType = Literal["NetworkInterface", "Subnet", "TransitGateway", "TransitGatewayAttachment", "VPC"] +FpgaImageAttributeNameType = Literal["description", "loadPermission", "name", "productCodes"] +FpgaImageStateCodeType = Literal["available", "failed", "pending", "unavailable"] +GatewayAssociationStateType = Literal["associated", "associating", "disassociating", "not-associated"] +GatewayTypeType = Literal["ipsec.1"] +GetAssociatedIpv6PoolCidrsPaginatorName = Literal["get_associated_ipv6_pool_cidrs"] +GetAwsNetworkPerformanceDataPaginatorName = Literal["get_aws_network_performance_data"] +GetGroupsForCapacityReservationPaginatorName = Literal["get_groups_for_capacity_reservation"] +GetInstanceTypesFromInstanceRequirementsPaginatorName = Literal["get_instance_types_from_instance_requirements"] +GetIpamAddressHistoryPaginatorName = Literal["get_ipam_address_history"] +GetIpamDiscoveredAccountsPaginatorName = Literal["get_ipam_discovered_accounts"] +GetIpamDiscoveredResourceCidrsPaginatorName = Literal["get_ipam_discovered_resource_cidrs"] +GetIpamPoolAllocationsPaginatorName = Literal["get_ipam_pool_allocations"] +GetIpamPoolCidrsPaginatorName = Literal["get_ipam_pool_cidrs"] +GetIpamResourceCidrsPaginatorName = Literal["get_ipam_resource_cidrs"] +GetManagedPrefixListAssociationsPaginatorName = Literal["get_managed_prefix_list_associations"] +GetManagedPrefixListEntriesPaginatorName = Literal["get_managed_prefix_list_entries"] +GetNetworkInsightsAccessScopeAnalysisFindingsPaginatorName = Literal["get_network_insights_access_scope_analysis_findings"] +GetSecurityGroupsForVpcPaginatorName = Literal["get_security_groups_for_vpc"] +GetSpotPlacementScoresPaginatorName = Literal["get_spot_placement_scores"] +GetTransitGatewayAttachmentPropagationsPaginatorName = Literal["get_transit_gateway_attachment_propagations"] +GetTransitGatewayMulticastDomainAssociationsPaginatorName = Literal["get_transit_gateway_multicast_domain_associations"] +GetTransitGatewayPolicyTableAssociationsPaginatorName = Literal["get_transit_gateway_policy_table_associations"] +GetTransitGatewayPrefixListReferencesPaginatorName = Literal["get_transit_gateway_prefix_list_references"] +GetTransitGatewayRouteTableAssociationsPaginatorName = Literal["get_transit_gateway_route_table_associations"] +GetTransitGatewayRouteTablePropagationsPaginatorName = Literal["get_transit_gateway_route_table_propagations"] +GetVpnConnectionDeviceTypesPaginatorName = Literal["get_vpn_connection_device_types"] +HostMaintenanceType = Literal["off", "on"] +HostRecoveryType = Literal["off", "on"] +HostTenancyType = Literal["dedicated", "default", "host"] +HostnameTypeType = Literal["ip-name", "resource-name"] +HttpTokensStateType = Literal["optional", "required"] +HypervisorTypeType = Literal["ovm", "xen"] +IamInstanceProfileAssociationStateType = Literal["associated", "associating", "disassociated", "disassociating"] +Igmpv2SupportValueType = Literal["disable", "enable"] +ImageAttributeNameType = Literal["blockDeviceMapping", + "bootMode", + "deregistrationProtection", + "description", + "imdsSupport", + "kernel", + "lastLaunchedTime", + "launchPermission", + "productCodes", + "ramdisk", + "sriovNetSupport", + "tpmSupport", + "uefiData",] +ImageAvailableWaiterName = Literal["image_available"] +ImageBlockPublicAccessDisabledStateType = Literal["unblocked"] +ImageBlockPublicAccessEnabledStateType = Literal["block-new-sharing"] +ImageExistsWaiterName = Literal["image_exists"] +ImageStateType = Literal["available", "deregistered", "disabled", "error", "failed", "invalid", "pending", "transient"] +ImageTypeValuesType = Literal["kernel", "machine", "ramdisk"] +ImdsSupportValuesType = Literal["v2.0"] +InstanceAttributeNameType = Literal["blockDeviceMapping", + "disableApiStop", + "disableApiTermination", + "ebsOptimized", + "enaSupport", + "enclaveOptions", + "groupSet", + "instanceInitiatedShutdownBehavior", + "instanceType", + "kernel", + "productCodes", + "ramdisk", + "rootDeviceName", + "sourceDestCheck", + "sriovNetSupport", + "userData",] +InstanceAutoRecoveryStateType = Literal["default", "disabled"] +InstanceBootModeValuesType = Literal["legacy-bios", "uefi"] +InstanceEventWindowStateType = Literal["active", "creating", "deleted", "deleting"] +InstanceExistsWaiterName = Literal["instance_exists"] +InstanceGenerationType = Literal["current", "previous"] +InstanceHealthStatusType = Literal["healthy", "unhealthy"] +InstanceInterruptionBehaviorType = Literal["hibernate", "stop", "terminate"] +InstanceLifecycleType = Literal["on-demand", "spot"] +InstanceLifecycleTypeType = Literal["capacity-block", "scheduled", "spot"] +InstanceMatchCriteriaType = Literal["open", "targeted"] +InstanceMetadataEndpointStateType = Literal["disabled", "enabled"] +InstanceMetadataOptionsStateType = Literal["applied", "pending"] +InstanceMetadataProtocolStateType = Literal["disabled", "enabled"] +InstanceMetadataTagsStateType = Literal["disabled", "enabled"] +InstanceRunningWaiterName = Literal["instance_running"] +InstanceStateNameType = Literal["pending", "running", "shutting-down", "stopped", "stopping", "terminated"] +InstanceStatusOkWaiterName = Literal["instance_status_ok"] +InstanceStoppedWaiterName = Literal["instance_stopped"] +InstanceStorageEncryptionSupportType = Literal["required", "unsupported"] +InstanceTerminatedWaiterName = Literal["instance_terminated"] +InstanceTypeHypervisorType = Literal["nitro", "xen"] +InstanceTypeType = Literal["a1.2xlarge", + "a1.4xlarge", + "a1.large", + "a1.medium", + "a1.metal", + "a1.xlarge", + "c1.medium", + "c1.xlarge", + "c3.2xlarge", + "c3.4xlarge", + "c3.8xlarge", + "c3.large", + "c3.xlarge", + "c4.2xlarge", + "c4.4xlarge", + "c4.8xlarge", + "c4.large", + "c4.xlarge", + "c5.12xlarge", + "c5.18xlarge", + "c5.24xlarge", + "c5.2xlarge", + "c5.4xlarge", + "c5.9xlarge", + "c5.large", + "c5.metal", + "c5.xlarge", + "c5a.12xlarge", + "c5a.16xlarge", + "c5a.24xlarge", + "c5a.2xlarge", + "c5a.4xlarge", + "c5a.8xlarge", + "c5a.large", + "c5a.xlarge", + "c5ad.12xlarge", + "c5ad.16xlarge", + "c5ad.24xlarge", + "c5ad.2xlarge", + "c5ad.4xlarge", + "c5ad.8xlarge", + "c5ad.large", + "c5ad.xlarge", + "c5d.12xlarge", + "c5d.18xlarge", + "c5d.24xlarge", + "c5d.2xlarge", + "c5d.4xlarge", + "c5d.9xlarge", + "c5d.large", + "c5d.metal", + "c5d.xlarge", + "c5n.18xlarge", + "c5n.2xlarge", + "c5n.4xlarge", + "c5n.9xlarge", + "c5n.large", + "c5n.metal", + "c5n.xlarge", + "c6a.12xlarge", + "c6a.16xlarge", + "c6a.24xlarge", + "c6a.2xlarge", + "c6a.32xlarge", + "c6a.48xlarge", + "c6a.4xlarge", + "c6a.8xlarge", + "c6a.large", + "c6a.metal", + "c6a.xlarge", + "c6g.12xlarge", + "c6g.16xlarge", + "c6g.2xlarge", + "c6g.4xlarge", + "c6g.8xlarge", + "c6g.large", + "c6g.medium", + "c6g.metal", + "c6g.xlarge", + "c6gd.12xlarge", + "c6gd.16xlarge", + "c6gd.2xlarge", + "c6gd.4xlarge", + "c6gd.8xlarge", + "c6gd.large", + "c6gd.medium", + "c6gd.metal", + "c6gd.xlarge", + "c6gn.12xlarge", + "c6gn.16xlarge", + "c6gn.2xlarge", + "c6gn.4xlarge", + "c6gn.8xlarge", + "c6gn.large", + "c6gn.medium", + "c6gn.xlarge", + "c6i.12xlarge", + "c6i.16xlarge", + "c6i.24xlarge", + "c6i.2xlarge", + "c6i.32xlarge", + "c6i.4xlarge", + "c6i.8xlarge", + "c6i.large", + "c6i.metal", + "c6i.xlarge", + "c6id.12xlarge", + "c6id.16xlarge", + "c6id.24xlarge", + "c6id.2xlarge", + "c6id.32xlarge", + "c6id.4xlarge", + "c6id.8xlarge", + "c6id.large", + "c6id.metal", + "c6id.xlarge", + "c6in.12xlarge", + "c6in.16xlarge", + "c6in.24xlarge", + "c6in.2xlarge", + "c6in.32xlarge", + "c6in.4xlarge", + "c6in.8xlarge", + "c6in.large", + "c6in.metal", + "c6in.xlarge", + "c7a.12xlarge", + "c7a.16xlarge", + "c7a.24xlarge", + "c7a.2xlarge", + "c7a.32xlarge", + "c7a.48xlarge", + "c7a.4xlarge", + "c7a.8xlarge", + "c7a.large", + "c7a.medium", + "c7a.metal-48xl", + "c7a.xlarge", + "c7g.12xlarge", + "c7g.16xlarge", + "c7g.2xlarge", + "c7g.4xlarge", + "c7g.8xlarge", + "c7g.large", + "c7g.medium", + "c7g.metal", + "c7g.xlarge", + "c7gd.12xlarge", + "c7gd.16xlarge", + "c7gd.2xlarge", + "c7gd.4xlarge", + "c7gd.8xlarge", + "c7gd.large", + "c7gd.medium", + "c7gd.metal", + "c7gd.xlarge", + "c7gn.12xlarge", + "c7gn.16xlarge", + "c7gn.2xlarge", + "c7gn.4xlarge", + "c7gn.8xlarge", + "c7gn.large", + "c7gn.medium", + "c7gn.metal", + "c7gn.xlarge", + "c7i-flex.2xlarge", + "c7i-flex.4xlarge", + "c7i-flex.8xlarge", + "c7i-flex.large", + "c7i-flex.xlarge", + "c7i.12xlarge", + "c7i.16xlarge", + "c7i.24xlarge", + "c7i.2xlarge", + "c7i.48xlarge", + "c7i.4xlarge", + "c7i.8xlarge", + "c7i.large", + "c7i.metal-24xl", + "c7i.metal-48xl", + "c7i.xlarge", + "cc1.4xlarge", + "cc2.8xlarge", + "cg1.4xlarge", + "cr1.8xlarge", + "d2.2xlarge", + "d2.4xlarge", + "d2.8xlarge", + "d2.xlarge", + "d3.2xlarge", + "d3.4xlarge", + "d3.8xlarge", + "d3.xlarge", + "d3en.12xlarge", + "d3en.2xlarge", + "d3en.4xlarge", + "d3en.6xlarge", + "d3en.8xlarge", + "d3en.xlarge", + "dl1.24xlarge", + "dl2q.24xlarge", + "f1.16xlarge", + "f1.2xlarge", + "f1.4xlarge", + "g2.2xlarge", + "g2.8xlarge", + "g3.16xlarge", + "g3.4xlarge", + "g3.8xlarge", + "g3s.xlarge", + "g4ad.16xlarge", + "g4ad.2xlarge", + "g4ad.4xlarge", + "g4ad.8xlarge", + "g4ad.xlarge", + "g4dn.12xlarge", + "g4dn.16xlarge", + "g4dn.2xlarge", + "g4dn.4xlarge", + "g4dn.8xlarge", + "g4dn.metal", + "g4dn.xlarge", + "g5.12xlarge", + "g5.16xlarge", + "g5.24xlarge", + "g5.2xlarge", + "g5.48xlarge", + "g5.4xlarge", + "g5.8xlarge", + "g5.xlarge", + "g5g.16xlarge", + "g5g.2xlarge", + "g5g.4xlarge", + "g5g.8xlarge", + "g5g.metal", + "g5g.xlarge", + "g6.12xlarge", + "g6.16xlarge", + "g6.24xlarge", + "g6.2xlarge", + "g6.48xlarge", + "g6.4xlarge", + "g6.8xlarge", + "g6.xlarge", + "gr6.4xlarge", + "gr6.8xlarge", + "h1.16xlarge", + "h1.2xlarge", + "h1.4xlarge", + "h1.8xlarge", + "hi1.4xlarge", + "hpc6a.48xlarge", + "hpc6id.32xlarge", + "hpc7a.12xlarge", + "hpc7a.24xlarge", + "hpc7a.48xlarge", + "hpc7a.96xlarge", + "hpc7g.16xlarge", + "hpc7g.4xlarge", + "hpc7g.8xlarge", + "hs1.8xlarge", + "i2.2xlarge", + "i2.4xlarge", + "i2.8xlarge", + "i2.xlarge", + "i3.16xlarge", + "i3.2xlarge", + "i3.4xlarge", + "i3.8xlarge", + "i3.large", + "i3.metal", + "i3.xlarge", + "i3en.12xlarge", + "i3en.24xlarge", + "i3en.2xlarge", + "i3en.3xlarge", + "i3en.6xlarge", + "i3en.large", + "i3en.metal", + "i3en.xlarge", + "i4g.16xlarge", + "i4g.2xlarge", + "i4g.4xlarge", + "i4g.8xlarge", + "i4g.large", + "i4g.xlarge", + "i4i.12xlarge", + "i4i.16xlarge", + "i4i.24xlarge", + "i4i.2xlarge", + "i4i.32xlarge", + "i4i.4xlarge", + "i4i.8xlarge", + "i4i.large", + "i4i.metal", + "i4i.xlarge", + "im4gn.16xlarge", + "im4gn.2xlarge", + "im4gn.4xlarge", + "im4gn.8xlarge", + "im4gn.large", + "im4gn.xlarge", + "inf1.24xlarge", + "inf1.2xlarge", + "inf1.6xlarge", + "inf1.xlarge", + "inf2.24xlarge", + "inf2.48xlarge", + "inf2.8xlarge", + "inf2.xlarge", + "is4gen.2xlarge", + "is4gen.4xlarge", + "is4gen.8xlarge", + "is4gen.large", + "is4gen.medium", + "is4gen.xlarge", + "m1.large", + "m1.medium", + "m1.small", + "m1.xlarge", + "m2.2xlarge", + "m2.4xlarge", + "m2.xlarge", + "m3.2xlarge", + "m3.large", + "m3.medium", + "m3.xlarge", + "m4.10xlarge", + "m4.16xlarge", + "m4.2xlarge", + "m4.4xlarge", + "m4.large", + "m4.xlarge", + "m5.12xlarge", + "m5.16xlarge", + "m5.24xlarge", + "m5.2xlarge", + "m5.4xlarge", + "m5.8xlarge", + "m5.large", + "m5.metal", + "m5.xlarge", + "m5a.12xlarge", + "m5a.16xlarge", + "m5a.24xlarge", + "m5a.2xlarge", + "m5a.4xlarge", + "m5a.8xlarge", + "m5a.large", + "m5a.xlarge", + "m5ad.12xlarge", + "m5ad.16xlarge", + "m5ad.24xlarge", + "m5ad.2xlarge", + "m5ad.4xlarge", + "m5ad.8xlarge", + "m5ad.large", + "m5ad.xlarge", + "m5d.12xlarge", + "m5d.16xlarge", + "m5d.24xlarge", + "m5d.2xlarge", + "m5d.4xlarge", + "m5d.8xlarge", + "m5d.large", + "m5d.metal", + "m5d.xlarge", + "m5dn.12xlarge", + "m5dn.16xlarge", + "m5dn.24xlarge", + "m5dn.2xlarge", + "m5dn.4xlarge", + "m5dn.8xlarge", + "m5dn.large", + "m5dn.metal", + "m5dn.xlarge", + "m5n.12xlarge", + "m5n.16xlarge", + "m5n.24xlarge", + "m5n.2xlarge", + "m5n.4xlarge", + "m5n.8xlarge", + "m5n.large", + "m5n.metal", + "m5n.xlarge", + "m5zn.12xlarge", + "m5zn.2xlarge", + "m5zn.3xlarge", + "m5zn.6xlarge", + "m5zn.large", + "m5zn.metal", + "m5zn.xlarge", + "m6a.12xlarge", + "m6a.16xlarge", + "m6a.24xlarge", + "m6a.2xlarge", + "m6a.32xlarge", + "m6a.48xlarge", + "m6a.4xlarge", + "m6a.8xlarge", + "m6a.large", + "m6a.metal", + "m6a.xlarge", + "m6g.12xlarge", + "m6g.16xlarge", + "m6g.2xlarge", + "m6g.4xlarge", + "m6g.8xlarge", + "m6g.large", + "m6g.medium", + "m6g.metal", + "m6g.xlarge", + "m6gd.12xlarge", + "m6gd.16xlarge", + "m6gd.2xlarge", + "m6gd.4xlarge", + "m6gd.8xlarge", + "m6gd.large", + "m6gd.medium", + "m6gd.metal", + "m6gd.xlarge", + "m6i.12xlarge", + "m6i.16xlarge", + "m6i.24xlarge", + "m6i.2xlarge", + "m6i.32xlarge", + "m6i.4xlarge", + "m6i.8xlarge", + "m6i.large", + "m6i.metal", + "m6i.xlarge", + "m6id.12xlarge", + "m6id.16xlarge", + "m6id.24xlarge", + "m6id.2xlarge", + "m6id.32xlarge", + "m6id.4xlarge", + "m6id.8xlarge", + "m6id.large", + "m6id.metal", + "m6id.xlarge", + "m6idn.12xlarge", + "m6idn.16xlarge", + "m6idn.24xlarge", + "m6idn.2xlarge", + "m6idn.32xlarge", + "m6idn.4xlarge", + "m6idn.8xlarge", + "m6idn.large", + "m6idn.metal", + "m6idn.xlarge", + "m6in.12xlarge", + "m6in.16xlarge", + "m6in.24xlarge", + "m6in.2xlarge", + "m6in.32xlarge", + "m6in.4xlarge", + "m6in.8xlarge", + "m6in.large", + "m6in.metal", + "m6in.xlarge", + "m7a.12xlarge", + "m7a.16xlarge", + "m7a.24xlarge", + "m7a.2xlarge", + "m7a.32xlarge", + "m7a.48xlarge", + "m7a.4xlarge", + "m7a.8xlarge", + "m7a.large", + "m7a.medium", + "m7a.metal-48xl", + "m7a.xlarge", + "m7g.12xlarge", + "m7g.16xlarge", + "m7g.2xlarge", + "m7g.4xlarge", + "m7g.8xlarge", + "m7g.large", + "m7g.medium", + "m7g.metal", + "m7g.xlarge", + "m7gd.12xlarge", + "m7gd.16xlarge", + "m7gd.2xlarge", + "m7gd.4xlarge", + "m7gd.8xlarge", + "m7gd.large", + "m7gd.medium", + "m7gd.metal", + "m7gd.xlarge", + "m7i-flex.2xlarge", + "m7i-flex.4xlarge", + "m7i-flex.8xlarge", + "m7i-flex.large", + "m7i-flex.xlarge", + "m7i.12xlarge", + "m7i.16xlarge", + "m7i.24xlarge", + "m7i.2xlarge", + "m7i.48xlarge", + "m7i.4xlarge", + "m7i.8xlarge", + "m7i.large", + "m7i.metal-24xl", + "m7i.metal-48xl", + "m7i.xlarge", + "mac1.metal", + "mac2-m1ultra.metal", + "mac2-m2.metal", + "mac2-m2pro.metal", + "mac2.metal", + "p2.16xlarge", + "p2.8xlarge", + "p2.xlarge", + "p3.16xlarge", + "p3.2xlarge", + "p3.8xlarge", + "p3dn.24xlarge", + "p4d.24xlarge", + "p4de.24xlarge", + "p5.48xlarge", + "r3.2xlarge", + "r3.4xlarge", + "r3.8xlarge", + "r3.large", + "r3.xlarge", + "r4.16xlarge", + "r4.2xlarge", + "r4.4xlarge", + "r4.8xlarge", + "r4.large", + "r4.xlarge", + "r5.12xlarge", + "r5.16xlarge", + "r5.24xlarge", + "r5.2xlarge", + "r5.4xlarge", + "r5.8xlarge", + "r5.large", + "r5.metal", + "r5.xlarge", + "r5a.12xlarge", + "r5a.16xlarge", + "r5a.24xlarge", + "r5a.2xlarge", + "r5a.4xlarge", + "r5a.8xlarge", + "r5a.large", + "r5a.xlarge", + "r5ad.12xlarge", + "r5ad.16xlarge", + "r5ad.24xlarge", + "r5ad.2xlarge", + "r5ad.4xlarge", + "r5ad.8xlarge", + "r5ad.large", + "r5ad.xlarge", + "r5b.12xlarge", + "r5b.16xlarge", + "r5b.24xlarge", + "r5b.2xlarge", + "r5b.4xlarge", + "r5b.8xlarge", + "r5b.large", + "r5b.metal", + "r5b.xlarge", + "r5d.12xlarge", + "r5d.16xlarge", + "r5d.24xlarge", + "r5d.2xlarge", + "r5d.4xlarge", + "r5d.8xlarge", + "r5d.large", + "r5d.metal", + "r5d.xlarge", + "r5dn.12xlarge", + "r5dn.16xlarge", + "r5dn.24xlarge", + "r5dn.2xlarge", + "r5dn.4xlarge", + "r5dn.8xlarge", + "r5dn.large", + "r5dn.metal", + "r5dn.xlarge", + "r5n.12xlarge", + "r5n.16xlarge", + "r5n.24xlarge", + "r5n.2xlarge", + "r5n.4xlarge", + "r5n.8xlarge", + "r5n.large", + "r5n.metal", + "r5n.xlarge", + "r6a.12xlarge", + "r6a.16xlarge", + "r6a.24xlarge", + "r6a.2xlarge", + "r6a.32xlarge", + "r6a.48xlarge", + "r6a.4xlarge", + "r6a.8xlarge", + "r6a.large", + "r6a.metal", + "r6a.xlarge", + "r6g.12xlarge", + "r6g.16xlarge", + "r6g.2xlarge", + "r6g.4xlarge", + "r6g.8xlarge", + "r6g.large", + "r6g.medium", + "r6g.metal", + "r6g.xlarge", + "r6gd.12xlarge", + "r6gd.16xlarge", + "r6gd.2xlarge", + "r6gd.4xlarge", + "r6gd.8xlarge", + "r6gd.large", + "r6gd.medium", + "r6gd.metal", + "r6gd.xlarge", + "r6i.12xlarge", + "r6i.16xlarge", + "r6i.24xlarge", + "r6i.2xlarge", + "r6i.32xlarge", + "r6i.4xlarge", + "r6i.8xlarge", + "r6i.large", + "r6i.metal", + "r6i.xlarge", + "r6id.12xlarge", + "r6id.16xlarge", + "r6id.24xlarge", + "r6id.2xlarge", + "r6id.32xlarge", + "r6id.4xlarge", + "r6id.8xlarge", + "r6id.large", + "r6id.metal", + "r6id.xlarge", + "r6idn.12xlarge", + "r6idn.16xlarge", + "r6idn.24xlarge", + "r6idn.2xlarge", + "r6idn.32xlarge", + "r6idn.4xlarge", + "r6idn.8xlarge", + "r6idn.large", + "r6idn.metal", + "r6idn.xlarge", + "r6in.12xlarge", + "r6in.16xlarge", + "r6in.24xlarge", + "r6in.2xlarge", + "r6in.32xlarge", + "r6in.4xlarge", + "r6in.8xlarge", + "r6in.large", + "r6in.metal", + "r6in.xlarge", + "r7a.12xlarge", + "r7a.16xlarge", + "r7a.24xlarge", + "r7a.2xlarge", + "r7a.32xlarge", + "r7a.48xlarge", + "r7a.4xlarge", + "r7a.8xlarge", + "r7a.large", + "r7a.medium", + "r7a.metal-48xl", + "r7a.xlarge", + "r7g.12xlarge", + "r7g.16xlarge", + "r7g.2xlarge", + "r7g.4xlarge", + "r7g.8xlarge", + "r7g.large", + "r7g.medium", + "r7g.metal", + "r7g.xlarge", + "r7gd.12xlarge", + "r7gd.16xlarge", + "r7gd.2xlarge", + "r7gd.4xlarge", + "r7gd.8xlarge", + "r7gd.large", + "r7gd.medium", + "r7gd.metal", + "r7gd.xlarge", + "r7i.12xlarge", + "r7i.16xlarge", + "r7i.24xlarge", + "r7i.2xlarge", + "r7i.48xlarge", + "r7i.4xlarge", + "r7i.8xlarge", + "r7i.large", + "r7i.metal-24xl", + "r7i.metal-48xl", + "r7i.xlarge", + "r7iz.12xlarge", + "r7iz.16xlarge", + "r7iz.2xlarge", + "r7iz.32xlarge", + "r7iz.4xlarge", + "r7iz.8xlarge", + "r7iz.large", + "r7iz.metal-16xl", + "r7iz.metal-32xl", + "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", + "t1.micro", + "t2.2xlarge", + "t2.large", + "t2.medium", + "t2.micro", + "t2.nano", + "t2.small", + "t2.xlarge", + "t3.2xlarge", + "t3.large", + "t3.medium", + "t3.micro", + "t3.nano", + "t3.small", + "t3.xlarge", + "t3a.2xlarge", + "t3a.large", + "t3a.medium", + "t3a.micro", + "t3a.nano", + "t3a.small", + "t3a.xlarge", + "t4g.2xlarge", + "t4g.large", + "t4g.medium", + "t4g.micro", + "t4g.nano", + "t4g.small", + "t4g.xlarge", + "trn1.2xlarge", + "trn1.32xlarge", + "trn1n.32xlarge", + "u-12tb1.112xlarge", + "u-12tb1.metal", + "u-18tb1.112xlarge", + "u-18tb1.metal", + "u-24tb1.112xlarge", + "u-24tb1.metal", + "u-3tb1.56xlarge", + "u-6tb1.112xlarge", + "u-6tb1.56xlarge", + "u-6tb1.metal", + "u-9tb1.112xlarge", + "u-9tb1.metal", + "u7i-12tb.224xlarge", + "u7ib-12tb.224xlarge", + "u7in-16tb.224xlarge", + "u7in-24tb.224xlarge", + "u7in-32tb.224xlarge", + "vt1.24xlarge", + "vt1.3xlarge", + "vt1.6xlarge", + "x1.16xlarge", + "x1.32xlarge", + "x1e.16xlarge", + "x1e.2xlarge", + "x1e.32xlarge", + "x1e.4xlarge", + "x1e.8xlarge", + "x1e.xlarge", + "x2gd.12xlarge", + "x2gd.16xlarge", + "x2gd.2xlarge", + "x2gd.4xlarge", + "x2gd.8xlarge", + "x2gd.large", + "x2gd.medium", + "x2gd.metal", + "x2gd.xlarge", + "x2idn.16xlarge", + "x2idn.24xlarge", + "x2idn.32xlarge", + "x2idn.metal", + "x2iedn.16xlarge", + "x2iedn.24xlarge", + "x2iedn.2xlarge", + "x2iedn.32xlarge", + "x2iedn.4xlarge", + "x2iedn.8xlarge", + "x2iedn.metal", + "x2iedn.xlarge", + "x2iezn.12xlarge", + "x2iezn.2xlarge", + "x2iezn.4xlarge", + "x2iezn.6xlarge", + "x2iezn.8xlarge", + "x2iezn.metal", + "z1d.12xlarge", + "z1d.2xlarge", + "z1d.3xlarge", + "z1d.6xlarge", + "z1d.large", + "z1d.metal", + "z1d.xlarge",] +InterfacePermissionTypeType = Literal["EIP-ASSOCIATE", "INSTANCE-ATTACH"] +InterfaceProtocolTypeType = Literal["GRE", "VLAN"] +InternetGatewayExistsWaiterName = Literal["internet_gateway_exists"] +IpAddressTypeType = Literal["dualstack", "ipv4", "ipv6"] +IpamAddressHistoryResourceTypeType = Literal["eip", "instance", "network-interface", "subnet", "vpc"] +IpamAssociatedResourceDiscoveryStatusType = Literal["active", "not-found"] +IpamComplianceStatusType = Literal["compliant", "ignored", "noncompliant", "unmanaged"] +IpamDiscoveryFailureCodeType = Literal["assume-role-failure", "throttling-failure", "unauthorized-failure"] +IpamManagementStateType = Literal["ignored", "managed", "unmanaged"] +IpamNetworkInterfaceAttachmentStatusType = Literal["available", "in-use"] +IpamOverlapStatusType = Literal["ignored", "nonoverlapping", "overlapping"] +IpamPoolAllocationResourceTypeType = Literal["custom", "ec2-public-ipv4-pool", "ipam-pool", "subnet", "vpc"] +IpamPoolAwsServiceType = Literal["ec2"] +IpamPoolCidrFailureCodeType = Literal["cidr-not-available", "limit-exceeded"] +IpamPoolCidrStateType = Literal["deprovisioned", + "failed-deprovision", + "failed-import", + "failed-provision", + "pending-deprovision", + "pending-import", + "pending-provision", + "provisioned",] +IpamPoolPublicIpSourceType = Literal["amazon", "byoip"] +IpamPoolSourceResourceTypeType = Literal["vpc"] +IpamPoolStateType = Literal["create-complete", + "create-failed", + "create-in-progress", + "delete-complete", + "delete-failed", + "delete-in-progress", + "isolate-complete", + "isolate-in-progress", + "modify-complete", + "modify-failed", + "modify-in-progress", + "restore-in-progress",] +IpamPublicAddressAssociationStatusType = Literal["associated", "disassociated"] +IpamPublicAddressAwsServiceType = Literal["database-migration-service", + "elastic-container-service", + "global-accelerator", + "load-balancer", + "nat-gateway", + "other", + "redshift", + "relational-database-service", + "site-to-site-vpn",] +IpamPublicAddressTypeType = Literal["amazon-owned-eip", "byoip", "ec2-public-ip", "service-managed-byoip", "service-managed-ip"] +IpamResourceDiscoveryAssociationStateType = Literal["associate-complete", + "associate-failed", + "associate-in-progress", + "disassociate-complete", + "disassociate-failed", + "disassociate-in-progress", + "isolate-complete", + "isolate-in-progress", + "restore-in-progress",] +IpamResourceDiscoveryStateType = Literal["create-complete", + "create-failed", + "create-in-progress", + "delete-complete", + "delete-failed", + "delete-in-progress", + "isolate-complete", + "isolate-in-progress", + "modify-complete", + "modify-failed", + "modify-in-progress", + "restore-in-progress",] +IpamResourceTypeType = Literal["eip", "eni", "ipv6-pool", "public-ipv4-pool", "subnet", "vpc"] +IpamScopeStateType = Literal["create-complete", + "create-failed", + "create-in-progress", + "delete-complete", + "delete-failed", + "delete-in-progress", + "isolate-complete", + "isolate-in-progress", + "modify-complete", + "modify-failed", + "modify-in-progress", + "restore-in-progress",] +IpamScopeTypeType = Literal["private", "public"] +IpamStateType = Literal["create-complete", + "create-failed", + "create-in-progress", + "delete-complete", + "delete-failed", + "delete-in-progress", + "isolate-complete", + "isolate-in-progress", + "modify-complete", + "modify-failed", + "modify-in-progress", + "restore-in-progress",] +IpamTierType = Literal["advanced", "free"] +Ipv6SupportValueType = Literal["disable", "enable"] +KeyFormatType = Literal["pem", "ppk"] +KeyPairExistsWaiterName = Literal["key_pair_exists"] +KeyTypeType = Literal["ed25519", "rsa"] +LaunchTemplateAutoRecoveryStateType = Literal["default", "disabled"] +LaunchTemplateErrorCodeType = Literal["launchTemplateIdDoesNotExist", + "launchTemplateIdMalformed", + "launchTemplateNameDoesNotExist", + "launchTemplateNameMalformed", + "launchTemplateVersionDoesNotExist", + "unexpectedError",] +LaunchTemplateHttpTokensStateType = Literal["optional", "required"] +LaunchTemplateInstanceMetadataEndpointStateType = Literal["disabled", "enabled"] +LaunchTemplateInstanceMetadataOptionsStateType = Literal["applied", "pending"] +LaunchTemplateInstanceMetadataProtocolIpv6Type = Literal["disabled", "enabled"] +LaunchTemplateInstanceMetadataTagsStateType = Literal["disabled", "enabled"] +ListImagesInRecycleBinPaginatorName = Literal["list_images_in_recycle_bin"] +ListSnapshotsInRecycleBinPaginatorName = Literal["list_snapshots_in_recycle_bin"] +ListingStateType = Literal["available", "cancelled", "pending", "sold"] +ListingStatusType = Literal["active", "cancelled", "closed", "pending"] +LocalGatewayRouteStateType = Literal["active", "blackhole", "deleted", "deleting", "pending"] +LocalGatewayRouteTableModeType = Literal["coip", "direct-vpc-routing"] +LocalGatewayRouteTypeType = Literal["propagated", "static"] +LocalStorageType = Literal["excluded", "included", "required"] +LocalStorageTypeType = Literal["hdd", "ssd"] +LocationTypeType = Literal["availability-zone", "availability-zone-id", "outpost", "region"] +LockModeType = Literal["compliance", "governance"] +LockStateType = Literal["compliance", "compliance-cooloff", "expired", "governance"] +LogDestinationTypeType = Literal["cloud-watch-logs", "kinesis-data-firehose", "s3"] +MarketTypeType = Literal["capacity-block", "spot"] +MembershipTypeType = Literal["igmp", "static"] +MetadataDefaultHttpTokensStateType = Literal["no-preference", "optional", "required"] +MetricTypeType = Literal["aggregate-latency"] +ModifyAvailabilityZoneOptInStatusType = Literal["not-opted-in", "opted-in"] +MonitoringStateType = Literal["disabled", "disabling", "enabled", "pending"] +MoveStatusType = Literal["movingToVpc", "restoringToClassic"] +MulticastSupportValueType = Literal["disable", "enable"] +NatGatewayAddressStatusType = Literal["assigning", "associating", "disassociating", "failed", "succeeded", "unassigning"] +NatGatewayAvailableWaiterName = Literal["nat_gateway_available"] +NatGatewayDeletedWaiterName = Literal["nat_gateway_deleted"] +NatGatewayStateType = Literal["available", "deleted", "deleting", "failed", "pending"] +NetworkInterfaceAttributeType = Literal["associatePublicIpAddress", "attachment", "description", "groupSet", "sourceDestCheck"] +NetworkInterfaceAvailableWaiterName = Literal["network_interface_available"] +NetworkInterfaceCreationTypeType = Literal["branch", "efa", "trunk"] +NetworkInterfacePermissionStateCodeType = Literal["granted", "pending", "revoked", "revoking"] +NetworkInterfaceStatusType = Literal["associated", "attaching", "available", "detaching", "in-use"] +NetworkInterfaceTypeType = Literal["api_gateway_managed", + "aws_codestar_connections_managed", + "branch", + "efa", + "gateway_load_balancer", + "gateway_load_balancer_endpoint", + "global_accelerator_managed", + "interface", + "iot_rules_managed", + "lambda", + "load_balancer", + "natGateway", + "network_load_balancer", + "quicksight", + "transit_gateway", + "trunk", + "vpc_endpoint",] +NitroEnclavesSupportType = Literal["supported", "unsupported"] +NitroTpmSupportType = Literal["supported", "unsupported"] +OfferingClassTypeType = Literal["convertible", "standard"] +OfferingTypeValuesType = Literal["All Upfront", + "Heavy Utilization", + "Light Utilization", + "Medium Utilization", + "No Upfront", + "Partial Upfront",] +OnDemandAllocationStrategyType = Literal["lowestPrice", "prioritized"] +OperationTypeType = Literal["add", "remove"] +PartitionLoadFrequencyType = Literal["daily", "monthly", "none", "weekly"] +PasswordDataAvailableWaiterName = Literal["password_data_available"] +PayerResponsibilityType = Literal["ServiceOwner"] +PaymentOptionType = Literal["AllUpfront", "NoUpfront", "PartialUpfront"] +PeriodTypeType = Literal["fifteen-minutes", "five-minutes", "one-day", "one-hour", "one-week", "three-hours"] +PermissionGroupType = Literal["all"] +PhcSupportType = Literal["supported", "unsupported"] +PlacementGroupStateType = Literal["available", "deleted", "deleting", "pending"] +PlacementGroupStrategyType = Literal["cluster", "partition", "spread"] +PlacementStrategyType = Literal["cluster", "partition", "spread"] +PlatformValuesType = Literal["windows"] +PrefixListStateType = Literal["create-complete", + "create-failed", + "create-in-progress", + "delete-complete", + "delete-failed", + "delete-in-progress", + "modify-complete", + "modify-failed", + "modify-in-progress", + "restore-complete", + "restore-failed", + "restore-in-progress",] +PrincipalTypeType = Literal["Account", "All", "OrganizationUnit", "Role", "Service", "User"] +ProductCodeValuesType = Literal["devpay", "marketplace"] +ProtocolType = Literal["tcp", "udp"] +ProtocolValueType = Literal["gre"] +RIProductDescriptionType = Literal["Linux/UNIX", "Linux/UNIX (Amazon VPC)", "Windows", "Windows (Amazon VPC)"] +RecurringChargeFrequencyType = Literal["Hourly"] +ReplaceRootVolumeTaskStateType = Literal["failed", "failed-detached", "failing", "in-progress", "pending", "succeeded"] +ReplacementStrategyType = Literal["launch", "launch-before-terminate"] +ReportInstanceReasonCodesType = Literal["instance-stuck-in-state", + "not-accepting-credentials", + "other", + "password-not-available", + "performance-ebs-volume", + "performance-instance-store", + "performance-network", + "performance-other", + "unresponsive",] +ReportStatusTypeType = Literal["impaired", "ok"] +ReservationStateType = Literal["active", "payment-failed", "payment-pending", "retired"] +ReservedInstanceStateType = Literal["active", "payment-failed", "payment-pending", "queued", "queued-deleted", "retired"] +ResetFpgaImageAttributeNameType = Literal["loadPermission"] +ResetImageAttributeNameType = Literal["launchPermission"] +ResourceTypeType = Literal["capacity-reservation", + "capacity-reservation-fleet", + "carrier-gateway", + "client-vpn-endpoint", + "coip-pool", + "customer-gateway", + "dedicated-host", + "dhcp-options", + "egress-only-internet-gateway", + "elastic-gpu", + "elastic-ip", + "export-image-task", + "export-instance-task", + "fleet", + "fpga-image", + "host-reservation", + "image", + "import-image-task", + "import-snapshot-task", + "instance", + "instance-connect-endpoint", + "instance-event-window", + "internet-gateway", + "ipam", + "ipam-pool", + "ipam-resource-discovery", + "ipam-resource-discovery-association", + "ipam-scope", + "ipv4pool-ec2", + "ipv6pool-ec2", + "key-pair", + "launch-template", + "local-gateway", + "local-gateway-route-table", + "local-gateway-route-table-virtual-interface-group-association", + "local-gateway-route-table-vpc-association", + "local-gateway-virtual-interface", + "local-gateway-virtual-interface-group", + "natgateway", + "network-acl", + "network-insights-access-scope", + "network-insights-access-scope-analysis", + "network-insights-analysis", + "network-insights-path", + "network-interface", + "placement-group", + "prefix-list", + "replace-root-volume-task", + "reserved-instances", + "route-table", + "security-group", + "security-group-rule", + "snapshot", + "spot-fleet-request", + "spot-instances-request", + "subnet", + "subnet-cidr-reservation", + "traffic-mirror-filter", + "traffic-mirror-filter-rule", + "traffic-mirror-session", + "traffic-mirror-target", + "transit-gateway", + "transit-gateway-attachment", + "transit-gateway-connect-peer", + "transit-gateway-multicast-domain", + "transit-gateway-policy-table", + "transit-gateway-route-table", + "transit-gateway-route-table-announcement", + "verified-access-endpoint", + "verified-access-group", + "verified-access-instance", + "verified-access-policy", + "verified-access-trust-provider", + "volume", + "vpc", + "vpc-block-public-access-exclusion", + "vpc-encryption-control", + "vpc-endpoint", + "vpc-endpoint-connection", + "vpc-endpoint-connection-device-type", + "vpc-endpoint-service", + "vpc-endpoint-service-permission", + "vpc-flow-log", + "vpc-peering-connection", + "vpn-connection", + "vpn-connection-device-type", + "vpn-gateway",] +RootDeviceTypeType = Literal["ebs", "instance-store"] +RouteOriginType = Literal["CreateRoute", "CreateRouteTable", "EnableVgwRoutePropagation"] +RouteStateType = Literal["active", "blackhole"] +RouteTableAssociationStateCodeType = Literal["associated", "associating", "disassociated", "disassociating", "failed"] +RuleActionType = Literal["allow", "deny"] +SSETypeType = Literal["none", "sse-ebs", "sse-kms"] +ScopeType = Literal["Availability Zone", "Region"] +SearchLocalGatewayRoutesPaginatorName = Literal["search_local_gateway_routes"] +SearchTransitGatewayMulticastGroupsPaginatorName = Literal["search_transit_gateway_multicast_groups"] +SecurityGroupExistsWaiterName = Literal["security_group_exists"] +SecurityGroupReferencingSupportValueType = Literal["disable", "enable"] +SelfServicePortalType = Literal["disabled", "enabled"] +ServiceConnectivityTypeType = Literal["ipv4", "ipv6"] +ServiceStateType = Literal["Available", "Deleted", "Deleting", "Failed", "Pending"] +ServiceTypeType = Literal["Gateway", "GatewayLoadBalancer", "Interface"] +ShutdownBehaviorType = Literal["stop", "terminate"] +SnapshotAttributeNameType = Literal["createVolumePermission", "productCodes"] +SnapshotBlockPublicAccessStateType = Literal["block-all-sharing", "block-new-sharing", "unblocked"] +SnapshotCompletedWaiterName = Literal["snapshot_completed"] +SnapshotImportedWaiterName = Literal["snapshot_imported"] +SnapshotStateType = Literal["completed", "error", "pending", "recoverable", "recovering"] +SpotAllocationStrategyType = Literal["capacity-optimized", + "capacity-optimized-prioritized", + "diversified", + "lowest-price", + "price-capacity-optimized",] +SpotInstanceInterruptionBehaviorType = Literal["hibernate", "stop", "terminate"] +SpotInstanceRequestFulfilledWaiterName = Literal["spot_instance_request_fulfilled"] +SpotInstanceStateType = Literal["active", "cancelled", "closed", "disabled", "failed", "open"] +SpotInstanceTypeType = Literal["one-time", "persistent"] +SpreadLevelType = Literal["host", "rack"] +StateType = Literal["Available", + "Deleted", + "Deleting", + "Expired", + "Failed", + "Pending", + "PendingAcceptance", + "Rejected",] +StaticSourcesSupportValueType = Literal["disable", "enable"] +StatisticTypeType = Literal["p50"] +StatusNameType = Literal["reachability"] +StatusType = Literal["InClassic", "InVpc", "MoveInProgress"] +StatusTypeType = Literal["failed", "initializing", "insufficient-data", "passed"] +StorageTierType = Literal["archive", "standard"] +StoreImageTaskCompleteWaiterName = Literal["store_image_task_complete"] +SubnetAvailableWaiterName = Literal["subnet_available"] +SubnetCidrBlockStateCodeType = Literal["associated", "associating", "disassociated", "disassociating", "failed", "failing"] +SubnetCidrReservationTypeType = Literal["explicit", "prefix"] +SubnetStateType = Literal["available", "pending", "unavailable"] +SummaryStatusType = Literal["impaired", "initializing", "insufficient-data", "not-applicable", "ok"] +SupportedAdditionalProcessorFeatureType = Literal["amd-sev-snp"] +SystemStatusOkWaiterName = Literal["system_status_ok"] +TargetCapacityUnitTypeType = Literal["memory-mib", "units", "vcpu"] +TargetStorageTierType = Literal["archive"] +TelemetryStatusType = Literal["DOWN", "UP"] +TenancyType = Literal["dedicated", "default", "host"] +TieringOperationStatusType = Literal["archival-completed", + "archival-failed", + "archival-in-progress", + "permanent-restore-completed", + "permanent-restore-failed", + "permanent-restore-in-progress", + "temporary-restore-completed", + "temporary-restore-failed", + "temporary-restore-in-progress",] +TpmSupportValuesType = Literal["v2.0"] +TrafficDirectionType = Literal["egress", "ingress"] +TrafficMirrorFilterRuleFieldType = Literal["description", "destination-port-range", "protocol", "source-port-range"] +TrafficMirrorNetworkServiceType = Literal["amazon-dns"] +TrafficMirrorRuleActionType = Literal["accept", "reject"] +TrafficMirrorSessionFieldType = Literal["description", "packet-length", "virtual-network-id"] +TrafficMirrorTargetTypeType = Literal["gateway-load-balancer-endpoint", "network-interface", "network-load-balancer"] +TrafficTypeType = Literal["ACCEPT", "ALL", "REJECT"] +TransitGatewayAssociationStateType = Literal["associated", "associating", "disassociated", "disassociating"] +TransitGatewayAttachmentResourceTypeType = Literal["connect", "direct-connect-gateway", "peering", "tgw-peering", "vpc", "vpn"] +TransitGatewayAttachmentStateType = Literal["available", + "deleted", + "deleting", + "failed", + "failing", + "initiating", + "initiatingRequest", + "modifying", + "pending", + "pendingAcceptance", + "rejected", + "rejecting", + "rollingBack",] +TransitGatewayConnectPeerStateType = Literal["available", "deleted", "deleting", "pending"] +TransitGatewayMulitcastDomainAssociationStateType = Literal["associated", + "associating", + "disassociated", + "disassociating", + "failed", + "pendingAcceptance", + "rejected",] +TransitGatewayMulticastDomainStateType = Literal["available", "deleted", "deleting", "pending"] +TransitGatewayPolicyTableStateType = Literal["available", "deleted", "deleting", "pending"] +TransitGatewayPrefixListReferenceStateType = Literal["available", "deleting", "modifying", "pending"] +TransitGatewayPropagationStateType = Literal["disabled", "disabling", "enabled", "enabling"] +TransitGatewayRouteStateType = Literal["active", "blackhole", "deleted", "deleting", "pending"] +TransitGatewayRouteTableAnnouncementDirectionType = Literal["incoming", "outgoing"] +TransitGatewayRouteTableAnnouncementStateType = Literal["available", "deleted", "deleting", "failed", "failing", "pending"] +TransitGatewayRouteTableStateType = Literal["available", "deleted", "deleting", "pending"] +TransitGatewayRouteTypeType = Literal["propagated", "static"] +TransitGatewayStateType = Literal["available", "deleted", "deleting", "modifying", "pending"] +TransportProtocolType = Literal["tcp", "udp"] +TrustProviderTypeType = Literal["device", "user"] +TunnelInsideIpVersionType = Literal["ipv4", "ipv6"] +UnlimitedSupportedInstanceFamilyType = Literal["t2", "t3", "t3a", "t4g"] +UnsuccessfulInstanceCreditSpecificationErrorCodeType = Literal["IncorrectInstanceState", + "InstanceCreditSpecification.NotSupported", + "InvalidInstanceID.Malformed", + "InvalidInstanceID.NotFound",] +UsageClassTypeType = Literal["capacity-block", "on-demand", "spot"] +UserTrustProviderTypeType = Literal["iam-identity-center", "oidc"] +VerifiedAccessEndpointAttachmentTypeType = Literal["vpc"] +VerifiedAccessEndpointProtocolType = Literal["http", "https"] +VerifiedAccessEndpointStatusCodeType = Literal["active", "deleted", "deleting", "pending", "updating"] +VerifiedAccessEndpointTypeType = Literal["load-balancer", "network-interface"] +VerifiedAccessLogDeliveryStatusCodeType = Literal["failed", "success"] +VirtualizationTypeType = Literal["hvm", "paravirtual"] +VolumeAttachmentStateType = Literal["attached", "attaching", "busy", "detached", "detaching"] +VolumeAttributeNameType = Literal["autoEnableIO", "productCodes"] +VolumeAvailableWaiterName = Literal["volume_available"] +VolumeDeletedWaiterName = Literal["volume_deleted"] +VolumeInUseWaiterName = Literal["volume_in_use"] +VolumeModificationStateType = Literal["completed", "failed", "modifying", "optimizing"] +VolumeStateType = Literal["available", "creating", "deleted", "deleting", "error", "in-use"] +VolumeStatusInfoStatusType = Literal["impaired", "insufficient-data", "ok"] +VolumeStatusNameType = Literal["io-enabled", "io-performance"] +VolumeTypeType = Literal["gp2", "gp3", "io1", "io2", "sc1", "st1", "standard"] +VpcAttributeNameType = Literal["enableDnsHostnames", "enableDnsSupport", "enableNetworkAddressUsageMetrics"] +VpcAvailableWaiterName = Literal["vpc_available"] +VpcCidrBlockStateCodeType = Literal["associated", "associating", "disassociated", "disassociating", "failed", "failing"] +VpcEndpointTypeType = Literal["Gateway", "GatewayLoadBalancer", "Interface"] +VpcExistsWaiterName = Literal["vpc_exists"] +VpcPeeringConnectionDeletedWaiterName = Literal["vpc_peering_connection_deleted"] +VpcPeeringConnectionExistsWaiterName = Literal["vpc_peering_connection_exists"] +VpcPeeringConnectionStateReasonCodeType = Literal["active", + "deleted", + "deleting", + "expired", + "failed", + "initiating-request", + "pending-acceptance", + "provisioning", + "rejected",] +VpcStateType = Literal["available", "pending"] +VpcTenancyType = Literal["default"] +VpnConnectionAvailableWaiterName = Literal["vpn_connection_available"] +VpnConnectionDeletedWaiterName = Literal["vpn_connection_deleted"] +VpnEcmpSupportValueType = Literal["disable", "enable"] +VpnProtocolType = Literal["openvpn"] +VpnStateType = Literal["available", "deleted", "deleting", "pending"] +VpnStaticRouteSourceType = Literal["Static"] +WeekDayType = Literal["friday", "monday", "saturday", "sunday", "thursday", "tuesday", "wednesday"] +EC2ServiceName = Literal["ec2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_address_transfers", + "describe_addresses_attribute", + "describe_aws_network_performance_metric_subscriptions", + "describe_byoip_cidrs", + "describe_capacity_block_offerings", + "describe_capacity_reservation_fleets", + "describe_capacity_reservations", + "describe_carrier_gateways", + "describe_classic_link_instances", + "describe_client_vpn_authorization_rules", + "describe_client_vpn_connections", + "describe_client_vpn_endpoints", + "describe_client_vpn_routes", + "describe_client_vpn_target_networks", + "describe_coip_pools", + "describe_dhcp_options", + "describe_egress_only_internet_gateways", + "describe_export_image_tasks", + "describe_fast_launch_images", + "describe_fast_snapshot_restores", + "describe_fleets", + "describe_flow_logs", + "describe_fpga_images", + "describe_host_reservation_offerings", + "describe_host_reservations", + "describe_hosts", + "describe_iam_instance_profile_associations", + "describe_images", + "describe_import_image_tasks", + "describe_import_snapshot_tasks", + "describe_instance_connect_endpoints", + "describe_instance_credit_specifications", + "describe_instance_event_windows", + "describe_instance_status", + "describe_instance_topology", + "describe_instance_type_offerings", + "describe_instance_types", + "describe_instances", + "describe_internet_gateways", + "describe_ipam_pools", + "describe_ipam_resource_discoveries", + "describe_ipam_resource_discovery_associations", + "describe_ipam_scopes", + "describe_ipams", + "describe_ipv6_pools", + "describe_launch_template_versions", + "describe_launch_templates", + "describe_local_gateway_route_table_virtual_interface_group_associations", + "describe_local_gateway_route_table_vpc_associations", + "describe_local_gateway_route_tables", + "describe_local_gateway_virtual_interface_groups", + "describe_local_gateway_virtual_interfaces", + "describe_local_gateways", + "describe_mac_hosts", + "describe_managed_prefix_lists", + "describe_moving_addresses", + "describe_nat_gateways", + "describe_network_acls", + "describe_network_insights_access_scope_analyses", + "describe_network_insights_access_scopes", + "describe_network_insights_analyses", + "describe_network_insights_paths", + "describe_network_interface_permissions", + "describe_network_interfaces", + "describe_prefix_lists", + "describe_principal_id_format", + "describe_public_ipv4_pools", + "describe_replace_root_volume_tasks", + "describe_reserved_instances_modifications", + "describe_reserved_instances_offerings", + "describe_route_tables", + "describe_scheduled_instance_availability", + "describe_scheduled_instances", + "describe_security_group_rules", + "describe_security_groups", + "describe_snapshot_tier_status", + "describe_snapshots", + "describe_spot_fleet_instances", + "describe_spot_fleet_requests", + "describe_spot_instance_requests", + "describe_spot_price_history", + "describe_stale_security_groups", + "describe_store_image_tasks", + "describe_subnets", + "describe_tags", + "describe_traffic_mirror_filters", + "describe_traffic_mirror_sessions", + "describe_traffic_mirror_targets", + "describe_transit_gateway_attachments", + "describe_transit_gateway_connect_peers", + "describe_transit_gateway_connects", + "describe_transit_gateway_multicast_domains", + "describe_transit_gateway_peering_attachments", + "describe_transit_gateway_policy_tables", + "describe_transit_gateway_route_table_announcements", + "describe_transit_gateway_route_tables", + "describe_transit_gateway_vpc_attachments", + "describe_transit_gateways", + "describe_trunk_interface_associations", + "describe_verified_access_endpoints", + "describe_verified_access_groups", + "describe_verified_access_instance_logging_configurations", + "describe_verified_access_instances", + "describe_verified_access_trust_providers", + "describe_volume_status", + "describe_volumes", + "describe_volumes_modifications", + "describe_vpc_classic_link_dns_support", + "describe_vpc_endpoint_connection_notifications", + "describe_vpc_endpoint_connections", + "describe_vpc_endpoint_service_configurations", + "describe_vpc_endpoint_service_permissions", + "describe_vpc_endpoint_services", + "describe_vpc_endpoints", + "describe_vpc_peering_connections", + "describe_vpcs", + "get_associated_ipv6_pool_cidrs", + "get_aws_network_performance_data", + "get_groups_for_capacity_reservation", + "get_instance_types_from_instance_requirements", + "get_ipam_address_history", + "get_ipam_discovered_accounts", + "get_ipam_discovered_resource_cidrs", + "get_ipam_pool_allocations", + "get_ipam_pool_cidrs", + "get_ipam_resource_cidrs", + "get_managed_prefix_list_associations", + "get_managed_prefix_list_entries", + "get_network_insights_access_scope_analysis_findings", + "get_security_groups_for_vpc", + "get_spot_placement_scores", + "get_transit_gateway_attachment_propagations", + "get_transit_gateway_multicast_domain_associations", + "get_transit_gateway_policy_table_associations", + "get_transit_gateway_prefix_list_references", + "get_transit_gateway_route_table_associations", + "get_transit_gateway_route_table_propagations", + "get_vpn_connection_device_types", + "list_images_in_recycle_bin", + "list_snapshots_in_recycle_bin", + "search_local_gateway_routes", + "search_transit_gateway_multicast_groups",] +WaiterName = Literal["bundle_task_complete", + "conversion_task_cancelled", + "conversion_task_completed", + "conversion_task_deleted", + "customer_gateway_available", + "export_task_cancelled", + "export_task_completed", + "image_available", + "image_exists", + "instance_exists", + "instance_running", + "instance_status_ok", + "instance_stopped", + "instance_terminated", + "internet_gateway_exists", + "key_pair_exists", + "nat_gateway_available", + "nat_gateway_deleted", + "network_interface_available", + "password_data_available", + "security_group_exists", + "snapshot_completed", + "snapshot_imported", + "spot_instance_request_fulfilled", + "store_image_task_complete", + "subnet_available", + "system_status_ok", + "volume_available", + "volume_deleted", + "volume_in_use", + "vpc_available", + "vpc_exists", + "vpc_peering_connection_deleted", + "vpc_peering_connection_exists", + "vpn_connection_available", + "vpn_connection_deleted",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any]] +TagSpecificationUnionTypeDef = Union['TagSpecificationTypeDef', 'TagSpecificationExtraOutputTypeDef'] +IpPermissionUnionTypeDef = Union['IpPermissionTypeDef', 'IpPermissionExtraExtraOutputTypeDef'] +StorageUnionTypeDef = Union['StorageTypeDef', 'StorageOutputTypeDef'] +InstanceNetworkInterfaceSpecificationUnionTypeDef = Union[ 'InstanceNetworkInterfaceSpecificationTypeDef', 'InstanceNetworkInterfaceSpecificationExtraOutputTypeDef', ] +LaunchTemplateConfigUnionTypeDef = Union[ 'LaunchTemplateConfigTypeDef', 'LaunchTemplateConfigExtraOutputTypeDef' ] +SpotFleetRequestConfigDataUnionTypeDef = Union[ 'SpotFleetRequestConfigDataTypeDef', 'SpotFleetRequestConfigDataExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/ec2_instance_connect_classes.py b/aws_resource_validator/pydantic_models/ec2_instance_connect_classes.py new file mode 100644 index 00000000..6871389c --- /dev/null +++ b/aws_resource_validator/pydantic_models/ec2_instance_connect_classes.py @@ -0,0 +1,41 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ec2_instance_connect_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class SendSSHPublicKeyRequestRequestTypeDef(BaseModel): + InstanceId: str + InstanceOSUser: str + SSHPublicKey: str + AvailabilityZone: Optional[str] = None + +class SendSerialConsoleSSHPublicKeyRequestRequestTypeDef(BaseModel): + InstanceId: str + SSHPublicKey: str + SerialPort: Optional[int] = None + +class SendSSHPublicKeyResponseTypeDef(BaseModel): + RequestId: str + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class SendSerialConsoleSSHPublicKeyResponseTypeDef(BaseModel): + RequestId: str + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ec2_instance_connect_constants.py b/aws_resource_validator/pydantic_models/ec2_instance_connect_constants.py new file mode 100644 index 00000000..dff7dd58 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ec2_instance_connect_constants.py @@ -0,0 +1,393 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EC2InstanceConnectServiceName = Literal["ec2-instance-connect"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/ecr_classes.py b/aws_resource_validator/pydantic_models/ecr_classes.py new file mode 100644 index 00000000..9b3b5f00 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ecr_classes.py @@ -0,0 +1,787 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ecr_constants import * + +class AttributeTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class AuthorizationDataTypeDef(BaseModel): + authorizationToken: Optional[str] = None + expiresAt: Optional[datetime] = None + proxyEndpoint: Optional[str] = None + +class AwsEcrContainerImageDetailsTypeDef(BaseModel): + architecture: Optional[str] = None + author: Optional[str] = None + imageHash: Optional[str] = None + imageTags: Optional[List[str]] = None + platform: Optional[str] = None + pushedAt: Optional[datetime] = None + registry: Optional[str] = None + repositoryName: Optional[str] = None + +class BatchCheckLayerAvailabilityRequestRequestTypeDef(BaseModel): + repositoryName: str + layerDigests: Sequence[str] + registryId: Optional[str] = None + +class LayerFailureTypeDef(BaseModel): + layerDigest: Optional[str] = None + failureCode: Optional[LayerFailureCodeType] = None + failureReason: Optional[str] = None + +class LayerTypeDef(BaseModel): + layerDigest: Optional[str] = None + layerAvailability: Optional[LayerAvailabilityType] = None + layerSize: Optional[int] = None + mediaType: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ImageIdentifierTypeDef(BaseModel): + imageDigest: Optional[str] = None + imageTag: Optional[str] = None + +class BatchGetRepositoryScanningConfigurationRequestRequestTypeDef(BaseModel): + repositoryNames: Sequence[str] + +class RepositoryScanningConfigurationFailureTypeDef(BaseModel): + repositoryName: Optional[str] = None + failureCode: Optional[Literal["REPOSITORY_NOT_FOUND"]] = None + failureReason: Optional[str] = None + +class CompleteLayerUploadRequestRequestTypeDef(BaseModel): + repositoryName: str + uploadId: str + layerDigests: Sequence[str] + registryId: Optional[str] = None + +class CreatePullThroughCacheRuleRequestRequestTypeDef(BaseModel): + ecrRepositoryPrefix: str + upstreamRegistryUrl: str + registryId: Optional[str] = None + upstreamRegistry: Optional[UpstreamRegistryType] = None + credentialArn: Optional[str] = None + +class EncryptionConfigurationTypeDef(BaseModel): + encryptionType: EncryptionTypeType + kmsKey: Optional[str] = None + +class ImageScanningConfigurationTypeDef(BaseModel): + scanOnPush: Optional[bool] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CvssScoreAdjustmentTypeDef(BaseModel): + metric: Optional[str] = None + reason: Optional[str] = None + +class CvssScoreTypeDef(BaseModel): + baseScore: Optional[float] = None + scoringVector: Optional[str] = None + source: Optional[str] = None + version: Optional[str] = None + +class DeleteLifecyclePolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class DeletePullThroughCacheRuleRequestRequestTypeDef(BaseModel): + ecrRepositoryPrefix: str + registryId: Optional[str] = None + +class DeleteRepositoryPolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class DeleteRepositoryRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + force: Optional[bool] = None + +class ImageReplicationStatusTypeDef(BaseModel): + region: Optional[str] = None + registryId: Optional[str] = None + status: Optional[ReplicationStatusType] = None + failureCode: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class ImageScanStatusTypeDef(BaseModel): + status: Optional[ScanStatusType] = None + description: Optional[str] = None + +class DescribeImagesFilterTypeDef(BaseModel): + tagStatus: Optional[TagStatusType] = None + +class DescribePullThroughCacheRulesRequestRequestTypeDef(BaseModel): + registryId: Optional[str] = None + ecrRepositoryPrefixes: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PullThroughCacheRuleTypeDef(BaseModel): + ecrRepositoryPrefix: Optional[str] = None + upstreamRegistryUrl: Optional[str] = None + createdAt: Optional[datetime] = None + registryId: Optional[str] = None + credentialArn: Optional[str] = None + upstreamRegistry: Optional[UpstreamRegistryType] = None + updatedAt: Optional[datetime] = None + +class DescribeRepositoriesRequestRequestTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryNames: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetAuthorizationTokenRequestRequestTypeDef(BaseModel): + registryIds: Optional[Sequence[str]] = None + +class GetDownloadUrlForLayerRequestRequestTypeDef(BaseModel): + repositoryName: str + layerDigest: str + registryId: Optional[str] = None + +class LifecyclePolicyPreviewFilterTypeDef(BaseModel): + tagStatus: Optional[TagStatusType] = None + +class LifecyclePolicyPreviewSummaryTypeDef(BaseModel): + expiringImageTotalCount: Optional[int] = None + +class GetLifecyclePolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class GetRepositoryPolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class ImageScanFindingsSummaryTypeDef(BaseModel): + imageScanCompletedAt: Optional[datetime] = None + vulnerabilitySourceUpdatedAt: Optional[datetime] = None + findingSeverityCounts: Optional[Dict[FindingSeverityType, int]] = None + +class InitiateLayerUploadRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class LifecyclePolicyRuleActionTypeDef(BaseModel): + type: Optional[Literal["EXPIRE"]] = None + +class ListImagesFilterTypeDef(BaseModel): + tagStatus: Optional[TagStatusType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class VulnerablePackageTypeDef(BaseModel): + arch: Optional[str] = None + epoch: Optional[int] = None + filePath: Optional[str] = None + name: Optional[str] = None + packageManager: Optional[str] = None + release: Optional[str] = None + sourceLayerHash: Optional[str] = None + version: Optional[str] = None + +class PutImageRequestRequestTypeDef(BaseModel): + repositoryName: str + imageManifest: str + registryId: Optional[str] = None + imageManifestMediaType: Optional[str] = None + imageTag: Optional[str] = None + imageDigest: Optional[str] = None + +class PutImageTagMutabilityRequestRequestTypeDef(BaseModel): + repositoryName: str + imageTagMutability: ImageTagMutabilityType + registryId: Optional[str] = None + +class PutLifecyclePolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + lifecyclePolicyText: str + registryId: Optional[str] = None + +class PutRegistryPolicyRequestRequestTypeDef(BaseModel): + policyText: str + +class RecommendationTypeDef(BaseModel): + url: Optional[str] = None + text: Optional[str] = None + +class ScanningRepositoryFilterTypeDef(BaseModel): + filter: str + filterType: Literal["WILDCARD"] + +class ReplicationDestinationTypeDef(BaseModel): + region: str + registryId: str + +class RepositoryFilterTypeDef(BaseModel): + filter: str + filterType: Literal["PREFIX_MATCH"] + +class SetRepositoryPolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + policyText: str + registryId: Optional[str] = None + force: Optional[bool] = None + +class StartLifecyclePolicyPreviewRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + lifecyclePolicyText: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdatePullThroughCacheRuleRequestRequestTypeDef(BaseModel): + ecrRepositoryPrefix: str + credentialArn: str + registryId: Optional[str] = None + +class ValidatePullThroughCacheRuleRequestRequestTypeDef(BaseModel): + ecrRepositoryPrefix: str + registryId: Optional[str] = None + +class ImageScanFindingTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + uri: Optional[str] = None + severity: Optional[FindingSeverityType] = None + attributes: Optional[List[AttributeTypeDef]] = None + +class ResourceDetailsTypeDef(BaseModel): + awsEcrContainerImage: Optional[AwsEcrContainerImageDetailsTypeDef] = None + +class BatchCheckLayerAvailabilityResponseTypeDef(BaseModel): + layers: List[LayerTypeDef] + failures: List[LayerFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CompleteLayerUploadResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + uploadId: str + layerDigest: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePullThroughCacheRuleResponseTypeDef(BaseModel): + ecrRepositoryPrefix: str + upstreamRegistryUrl: str + createdAt: datetime + registryId: str + upstreamRegistry: UpstreamRegistryType + credentialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLifecyclePolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + lifecyclePolicyText: str + lastEvaluatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePullThroughCacheRuleResponseTypeDef(BaseModel): + ecrRepositoryPrefix: str + upstreamRegistryUrl: str + createdAt: datetime + registryId: str + credentialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegistryPolicyResponseTypeDef(BaseModel): + registryId: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryPolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAuthorizationTokenResponseTypeDef(BaseModel): + authorizationData: List[AuthorizationDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDownloadUrlForLayerResponseTypeDef(BaseModel): + downloadUrl: str + layerDigest: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLifecyclePolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + lifecyclePolicyText: str + lastEvaluatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegistryPolicyResponseTypeDef(BaseModel): + registryId: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryPolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateLayerUploadResponseTypeDef(BaseModel): + uploadId: str + partSize: int + ResponseMetadata: ResponseMetadataTypeDef + +class PutImageTagMutabilityResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + imageTagMutability: ImageTagMutabilityType + ResponseMetadata: ResponseMetadataTypeDef + +class PutLifecyclePolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + lifecyclePolicyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutRegistryPolicyResponseTypeDef(BaseModel): + registryId: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetRepositoryPolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartLifecyclePolicyPreviewResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + lifecyclePolicyText: str + status: LifecyclePolicyPreviewStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePullThroughCacheRuleResponseTypeDef(BaseModel): + ecrRepositoryPrefix: str + registryId: str + updatedAt: datetime + credentialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UploadLayerPartResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + uploadId: str + lastByteReceived: int + ResponseMetadata: ResponseMetadataTypeDef + +class ValidatePullThroughCacheRuleResponseTypeDef(BaseModel): + ecrRepositoryPrefix: str + registryId: str + upstreamRegistryUrl: str + credentialArn: str + isValid: bool + failure: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteImageRequestRequestTypeDef(BaseModel): + repositoryName: str + imageIds: Sequence[ImageIdentifierTypeDef] + registryId: Optional[str] = None + +class BatchGetImageRequestRequestTypeDef(BaseModel): + repositoryName: str + imageIds: Sequence[ImageIdentifierTypeDef] + registryId: Optional[str] = None + acceptedMediaTypes: Optional[Sequence[str]] = None + +class DescribeImageReplicationStatusRequestRequestTypeDef(BaseModel): + repositoryName: str + imageId: ImageIdentifierTypeDef + registryId: Optional[str] = None + +class DescribeImageScanFindingsRequestRequestTypeDef(BaseModel): + repositoryName: str + imageId: ImageIdentifierTypeDef + registryId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ImageFailureTypeDef(BaseModel): + imageId: Optional[ImageIdentifierTypeDef] = None + failureCode: Optional[ImageFailureCodeType] = None + failureReason: Optional[str] = None + +class ImageTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryName: Optional[str] = None + imageId: Optional[ImageIdentifierTypeDef] = None + imageManifest: Optional[str] = None + imageManifestMediaType: Optional[str] = None + +class ListImagesResponseTypeDef(BaseModel): + imageIds: List[ImageIdentifierTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImageScanRequestRequestTypeDef(BaseModel): + repositoryName: str + imageId: ImageIdentifierTypeDef + registryId: Optional[str] = None + +class UploadLayerPartRequestRequestTypeDef(BaseModel): + repositoryName: str + uploadId: str + partFirstByte: int + partLastByte: int + layerPartBlob: BlobTypeDef + registryId: Optional[str] = None + +class PutImageScanningConfigurationRequestRequestTypeDef(BaseModel): + repositoryName: str + imageScanningConfiguration: ImageScanningConfigurationTypeDef + registryId: Optional[str] = None + +class PutImageScanningConfigurationResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + imageScanningConfiguration: ImageScanningConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RepositoryTypeDef(BaseModel): + repositoryArn: Optional[str] = None + registryId: Optional[str] = None + repositoryName: Optional[str] = None + repositoryUri: Optional[str] = None + createdAt: Optional[datetime] = None + imageTagMutability: Optional[ImageTagMutabilityType] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationTypeDef] = None + encryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class CreateRepositoryRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + imageTagMutability: Optional[ImageTagMutabilityType] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationTypeDef] = None + encryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CvssScoreDetailsTypeDef(BaseModel): + adjustments: Optional[List[CvssScoreAdjustmentTypeDef]] = None + score: Optional[float] = None + scoreSource: Optional[str] = None + scoringVector: Optional[str] = None + version: Optional[str] = None + +class DescribeImageReplicationStatusResponseTypeDef(BaseModel): + repositoryName: str + imageId: ImageIdentifierTypeDef + replicationStatuses: List[ImageReplicationStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageScanFindingsRequestDescribeImageScanFindingsPaginateTypeDef(BaseModel): + repositoryName: str + imageId: ImageIdentifierTypeDef + registryId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePullThroughCacheRulesRequestDescribePullThroughCacheRulesPaginateTypeDef(BaseModel): + registryId: Optional[str] = None + ecrRepositoryPrefixes: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRepositoriesRequestDescribeRepositoriesPaginateTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImageScanFindingsRequestImageScanCompleteWaitTypeDef(BaseModel): + repositoryName: str + imageId: ImageIdentifierTypeDef + registryId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class StartImageScanResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + imageId: ImageIdentifierTypeDef + imageScanStatus: ImageScanStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImagesRequestDescribeImagesPaginateTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + filter: Optional[DescribeImagesFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImagesRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[DescribeImagesFilterTypeDef] = None + +class DescribePullThroughCacheRulesResponseTypeDef(BaseModel): + pullThroughCacheRules: List[PullThroughCacheRuleTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLifecyclePolicyPreviewRequestGetLifecyclePolicyPreviewPaginateTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + filter: Optional[LifecyclePolicyPreviewFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetLifecyclePolicyPreviewRequestLifecyclePolicyPreviewCompleteWaitTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[LifecyclePolicyPreviewFilterTypeDef] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetLifecyclePolicyPreviewRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[LifecyclePolicyPreviewFilterTypeDef] = None + +class ImageDetailTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryName: Optional[str] = None + imageDigest: Optional[str] = None + imageTags: Optional[List[str]] = None + imageSizeInBytes: Optional[int] = None + imagePushedAt: Optional[datetime] = None + imageScanStatus: Optional[ImageScanStatusTypeDef] = None + imageScanFindingsSummary: Optional[ImageScanFindingsSummaryTypeDef] = None + imageManifestMediaType: Optional[str] = None + artifactMediaType: Optional[str] = None + lastRecordedPullTime: Optional[datetime] = None + +class LifecyclePolicyPreviewResultTypeDef(BaseModel): + imageTags: Optional[List[str]] = None + imageDigest: Optional[str] = None + imagePushedAt: Optional[datetime] = None + action: Optional[LifecyclePolicyRuleActionTypeDef] = None + appliedRulePriority: Optional[int] = None + +class ListImagesRequestListImagesPaginateTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + filter: Optional[ListImagesFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImagesRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[ListImagesFilterTypeDef] = None + +class PackageVulnerabilityDetailsTypeDef(BaseModel): + cvss: Optional[List[CvssScoreTypeDef]] = None + referenceUrls: Optional[List[str]] = None + relatedVulnerabilities: Optional[List[str]] = None + source: Optional[str] = None + sourceUrl: Optional[str] = None + vendorCreatedAt: Optional[datetime] = None + vendorSeverity: Optional[str] = None + vendorUpdatedAt: Optional[datetime] = None + vulnerabilityId: Optional[str] = None + vulnerablePackages: Optional[List[VulnerablePackageTypeDef]] = None + +class RemediationTypeDef(BaseModel): + recommendation: Optional[RecommendationTypeDef] = None + +class RegistryScanningRuleOutputTypeDef(BaseModel): + scanFrequency: ScanFrequencyType + repositoryFilters: List[ScanningRepositoryFilterTypeDef] + +class RegistryScanningRuleTypeDef(BaseModel): + scanFrequency: ScanFrequencyType + repositoryFilters: Sequence[ScanningRepositoryFilterTypeDef] + +class RepositoryScanningConfigurationTypeDef(BaseModel): + repositoryArn: Optional[str] = None + repositoryName: Optional[str] = None + scanOnPush: Optional[bool] = None + scanFrequency: Optional[ScanFrequencyType] = None + appliedScanFilters: Optional[List[ScanningRepositoryFilterTypeDef]] = None + +class ReplicationRuleOutputTypeDef(BaseModel): + destinations: List[ReplicationDestinationTypeDef] + repositoryFilters: Optional[List[RepositoryFilterTypeDef]] = None + +class ReplicationRuleTypeDef(BaseModel): + destinations: Sequence[ReplicationDestinationTypeDef] + repositoryFilters: Optional[Sequence[RepositoryFilterTypeDef]] = None + +class ResourceTypeDef(BaseModel): + details: Optional[ResourceDetailsTypeDef] = None + id: Optional[str] = None + tags: Optional[Dict[str, str]] = None + type: Optional[str] = None + +class BatchDeleteImageResponseTypeDef(BaseModel): + imageIds: List[ImageIdentifierTypeDef] + failures: List[ImageFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetImageResponseTypeDef(BaseModel): + images: List[ImageTypeDef] + failures: List[ImageFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutImageResponseTypeDef(BaseModel): + image: ImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryResponseTypeDef(BaseModel): + repository: RepositoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryResponseTypeDef(BaseModel): + repository: RepositoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRepositoriesResponseTypeDef(BaseModel): + repositories: List[RepositoryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ScoreDetailsTypeDef(BaseModel): + cvss: Optional[CvssScoreDetailsTypeDef] = None + +class DescribeImagesResponseTypeDef(BaseModel): + imageDetails: List[ImageDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLifecyclePolicyPreviewResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + lifecyclePolicyText: str + status: LifecyclePolicyPreviewStatusType + nextToken: str + previewResults: List[LifecyclePolicyPreviewResultTypeDef] + summary: LifecyclePolicyPreviewSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegistryScanningConfigurationTypeDef(BaseModel): + scanType: Optional[ScanTypeType] = None + rules: Optional[List[RegistryScanningRuleOutputTypeDef]] = None + +class BatchGetRepositoryScanningConfigurationResponseTypeDef(BaseModel): + scanningConfigurations: List[RepositoryScanningConfigurationTypeDef] + failures: List[RepositoryScanningConfigurationFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationConfigurationOutputTypeDef(BaseModel): + rules: List[ReplicationRuleOutputTypeDef] + +class ReplicationConfigurationTypeDef(BaseModel): + rules: Sequence[ReplicationRuleTypeDef] + +class EnhancedImageScanFindingTypeDef(BaseModel): + awsAccountId: Optional[str] = None + description: Optional[str] = None + findingArn: Optional[str] = None + firstObservedAt: Optional[datetime] = None + lastObservedAt: Optional[datetime] = None + packageVulnerabilityDetails: Optional[PackageVulnerabilityDetailsTypeDef] = None + remediation: Optional[RemediationTypeDef] = None + resources: Optional[List[ResourceTypeDef]] = None + score: Optional[float] = None + scoreDetails: Optional[ScoreDetailsTypeDef] = None + severity: Optional[str] = None + status: Optional[str] = None + title: Optional[str] = None + type: Optional[str] = None + updatedAt: Optional[datetime] = None + +class GetRegistryScanningConfigurationResponseTypeDef(BaseModel): + registryId: str + scanningConfiguration: RegistryScanningConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutRegistryScanningConfigurationResponseTypeDef(BaseModel): + registryScanningConfiguration: RegistryScanningConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutRegistryScanningConfigurationRequestRequestTypeDef(BaseModel): + scanType: Optional[ScanTypeType] = None + rules: Optional[Sequence[RegistryScanningRuleUnionTypeDef]] = None + +class DescribeRegistryResponseTypeDef(BaseModel): + registryId: str + replicationConfiguration: ReplicationConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutReplicationConfigurationResponseTypeDef(BaseModel): + replicationConfiguration: ReplicationConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutReplicationConfigurationRequestRequestTypeDef(BaseModel): + replicationConfiguration: ReplicationConfigurationTypeDef + +class ImageScanFindingsTypeDef(BaseModel): + imageScanCompletedAt: Optional[datetime] = None + vulnerabilitySourceUpdatedAt: Optional[datetime] = None + findingSeverityCounts: Optional[Dict[FindingSeverityType, int]] = None + findings: Optional[List[ImageScanFindingTypeDef]] = None + enhancedFindings: Optional[List[EnhancedImageScanFindingTypeDef]] = None + +class DescribeImageScanFindingsResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + imageId: ImageIdentifierTypeDef + imageScanStatus: ImageScanStatusTypeDef + imageScanFindings: ImageScanFindingsTypeDef + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ecr_constants.py b/aws_resource_validator/pydantic_models/ecr_constants.py new file mode 100644 index 00000000..fb11796c --- /dev/null +++ b/aws_resource_validator/pydantic_models/ecr_constants.py @@ -0,0 +1,485 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeImageScanFindingsPaginatorName = Literal["describe_image_scan_findings"] +DescribeImagesPaginatorName = Literal["describe_images"] +DescribePullThroughCacheRulesPaginatorName = Literal["describe_pull_through_cache_rules"] +DescribeRepositoriesPaginatorName = Literal["describe_repositories"] +EncryptionTypeType = Literal["AES256", "KMS"] +FindingSeverityType = Literal["CRITICAL", "HIGH", "INFORMATIONAL", "LOW", "MEDIUM", "UNDEFINED"] +GetLifecyclePolicyPreviewPaginatorName = Literal["get_lifecycle_policy_preview"] +ImageActionTypeType = Literal["EXPIRE"] +ImageFailureCodeType = Literal["ImageNotFound", + "ImageReferencedByManifestList", + "ImageTagDoesNotMatchDigest", + "InvalidImageDigest", + "InvalidImageTag", + "KmsError", + "MissingDigestAndTag", + "UpstreamAccessDenied", + "UpstreamTooManyRequests", + "UpstreamUnavailable",] +ImageScanCompleteWaiterName = Literal["image_scan_complete"] +ImageTagMutabilityType = Literal["IMMUTABLE", "MUTABLE"] +LayerAvailabilityType = Literal["AVAILABLE", "UNAVAILABLE"] +LayerFailureCodeType = Literal["InvalidLayerDigest", "MissingLayerDigest"] +LifecyclePolicyPreviewCompleteWaiterName = Literal["lifecycle_policy_preview_complete"] +LifecyclePolicyPreviewStatusType = Literal["COMPLETE", "EXPIRED", "FAILED", "IN_PROGRESS"] +ListImagesPaginatorName = Literal["list_images"] +ReplicationStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS"] +RepositoryFilterTypeType = Literal["PREFIX_MATCH"] +ScanFrequencyType = Literal["CONTINUOUS_SCAN", "MANUAL", "SCAN_ON_PUSH"] +ScanStatusType = Literal["ACTIVE", + "COMPLETE", + "FAILED", + "FINDINGS_UNAVAILABLE", + "IN_PROGRESS", + "PENDING", + "SCAN_ELIGIBILITY_EXPIRED", + "UNSUPPORTED_IMAGE",] +ScanTypeType = Literal["BASIC", "ENHANCED"] +ScanningConfigurationFailureCodeType = Literal["REPOSITORY_NOT_FOUND"] +ScanningRepositoryFilterTypeType = Literal["WILDCARD"] +TagStatusType = Literal["ANY", "TAGGED", "UNTAGGED"] +UpstreamRegistryType = Literal["azure-container-registry", + "docker-hub", + "ecr-public", + "github-container-registry", + "gitlab-container-registry", + "k8s", + "quay",] +ECRServiceName = Literal["ecr"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_image_scan_findings", + "describe_images", + "describe_pull_through_cache_rules", + "describe_repositories", + "get_lifecycle_policy_preview", + "list_images",] +WaiterName = Literal["image_scan_complete", "lifecycle_policy_preview_complete"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +RegistryScanningRuleUnionTypeDef = Union[ 'RegistryScanningRuleTypeDef', 'RegistryScanningRuleOutputTypeDef' ] +ReplicationConfigurationUnionTypeDef = Union[ 'ReplicationConfigurationTypeDef', 'ReplicationConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/ecr_public_classes.py b/aws_resource_validator/pydantic_models/ecr_public_classes.py new file mode 100644 index 00000000..2d6b3b5e --- /dev/null +++ b/aws_resource_validator/pydantic_models/ecr_public_classes.py @@ -0,0 +1,351 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ecr_public_constants import * + +class AuthorizationDataTypeDef(BaseModel): + authorizationToken: Optional[str] = None + expiresAt: Optional[datetime] = None + +class BatchCheckLayerAvailabilityRequestRequestTypeDef(BaseModel): + repositoryName: str + layerDigests: Sequence[str] + registryId: Optional[str] = None + +class LayerFailureTypeDef(BaseModel): + layerDigest: Optional[str] = None + failureCode: Optional[LayerFailureCodeType] = None + failureReason: Optional[str] = None + +class LayerTypeDef(BaseModel): + layerDigest: Optional[str] = None + layerAvailability: Optional[LayerAvailabilityType] = None + layerSize: Optional[int] = None + mediaType: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ImageIdentifierTypeDef(BaseModel): + imageDigest: Optional[str] = None + imageTag: Optional[str] = None + +class CompleteLayerUploadRequestRequestTypeDef(BaseModel): + repositoryName: str + uploadId: str + layerDigests: Sequence[str] + registryId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class RepositoryCatalogDataTypeDef(BaseModel): + description: Optional[str] = None + architectures: Optional[List[str]] = None + operatingSystems: Optional[List[str]] = None + logoUrl: Optional[str] = None + aboutText: Optional[str] = None + usageText: Optional[str] = None + marketplaceCertified: Optional[bool] = None + +class RepositoryTypeDef(BaseModel): + repositoryArn: Optional[str] = None + registryId: Optional[str] = None + repositoryName: Optional[str] = None + repositoryUri: Optional[str] = None + createdAt: Optional[datetime] = None + +class DeleteRepositoryPolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class DeleteRepositoryRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + force: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeImageTagsRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ImageDetailTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryName: Optional[str] = None + imageDigest: Optional[str] = None + imageTags: Optional[List[str]] = None + imageSizeInBytes: Optional[int] = None + imagePushedAt: Optional[datetime] = None + imageManifestMediaType: Optional[str] = None + artifactMediaType: Optional[str] = None + +class DescribeRegistriesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeRepositoriesRequestRequestTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryNames: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RegistryCatalogDataTypeDef(BaseModel): + displayName: Optional[str] = None + +class GetRepositoryCatalogDataRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class GetRepositoryPolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class ReferencedImageDetailTypeDef(BaseModel): + imageDigest: Optional[str] = None + imageSizeInBytes: Optional[int] = None + imagePushedAt: Optional[datetime] = None + imageManifestMediaType: Optional[str] = None + artifactMediaType: Optional[str] = None + +class InitiateLayerUploadRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PutImageRequestRequestTypeDef(BaseModel): + repositoryName: str + imageManifest: str + registryId: Optional[str] = None + imageManifestMediaType: Optional[str] = None + imageTag: Optional[str] = None + imageDigest: Optional[str] = None + +class PutRegistryCatalogDataRequestRequestTypeDef(BaseModel): + displayName: Optional[str] = None + +class RegistryAliasTypeDef(BaseModel): + name: str + status: RegistryAliasStatusType + primaryRegistryAlias: bool + defaultRegistryAlias: bool + +class SetRepositoryPolicyRequestRequestTypeDef(BaseModel): + repositoryName: str + policyText: str + registryId: Optional[str] = None + force: Optional[bool] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class BatchCheckLayerAvailabilityResponseTypeDef(BaseModel): + layers: List[LayerTypeDef] + failures: List[LayerFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CompleteLayerUploadResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + uploadId: str + layerDigest: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryPolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAuthorizationTokenResponseTypeDef(BaseModel): + authorizationData: AuthorizationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryPolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateLayerUploadResponseTypeDef(BaseModel): + uploadId: str + partSize: int + ResponseMetadata: ResponseMetadataTypeDef + +class SetRepositoryPolicyResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + policyText: str + ResponseMetadata: ResponseMetadataTypeDef + +class UploadLayerPartResponseTypeDef(BaseModel): + registryId: str + repositoryName: str + uploadId: str + lastByteReceived: int + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteImageRequestRequestTypeDef(BaseModel): + repositoryName: str + imageIds: Sequence[ImageIdentifierTypeDef] + registryId: Optional[str] = None + +class DescribeImagesRequestRequestTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ImageFailureTypeDef(BaseModel): + imageId: Optional[ImageIdentifierTypeDef] = None + failureCode: Optional[ImageFailureCodeType] = None + failureReason: Optional[str] = None + +class ImageTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryName: Optional[str] = None + imageId: Optional[ImageIdentifierTypeDef] = None + imageManifest: Optional[str] = None + imageManifestMediaType: Optional[str] = None + +class RepositoryCatalogDataInputTypeDef(BaseModel): + description: Optional[str] = None + architectures: Optional[Sequence[str]] = None + operatingSystems: Optional[Sequence[str]] = None + logoImageBlob: Optional[BlobTypeDef] = None + aboutText: Optional[str] = None + usageText: Optional[str] = None + +class UploadLayerPartRequestRequestTypeDef(BaseModel): + repositoryName: str + uploadId: str + partFirstByte: int + partLastByte: int + layerPartBlob: BlobTypeDef + registryId: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class GetRepositoryCatalogDataResponseTypeDef(BaseModel): + catalogData: RepositoryCatalogDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutRepositoryCatalogDataResponseTypeDef(BaseModel): + catalogData: RepositoryCatalogDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryResponseTypeDef(BaseModel): + repository: RepositoryTypeDef + catalogData: RepositoryCatalogDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryResponseTypeDef(BaseModel): + repository: RepositoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRepositoriesResponseTypeDef(BaseModel): + repositories: List[RepositoryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageTagsRequestDescribeImageTagsPaginateTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImagesRequestDescribeImagesPaginateTypeDef(BaseModel): + repositoryName: str + registryId: Optional[str] = None + imageIds: Optional[Sequence[ImageIdentifierTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistriesRequestDescribeRegistriesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRepositoriesRequestDescribeRepositoriesPaginateTypeDef(BaseModel): + registryId: Optional[str] = None + repositoryNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeImagesResponseTypeDef(BaseModel): + imageDetails: List[ImageDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegistryCatalogDataResponseTypeDef(BaseModel): + registryCatalogData: RegistryCatalogDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutRegistryCatalogDataResponseTypeDef(BaseModel): + registryCatalogData: RegistryCatalogDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImageTagDetailTypeDef(BaseModel): + imageTag: Optional[str] = None + createdAt: Optional[datetime] = None + imageDetail: Optional[ReferencedImageDetailTypeDef] = None + +class RegistryTypeDef(BaseModel): + registryId: str + registryArn: str + registryUri: str + verified: bool + aliases: List[RegistryAliasTypeDef] + +class BatchDeleteImageResponseTypeDef(BaseModel): + imageIds: List[ImageIdentifierTypeDef] + failures: List[ImageFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutImageResponseTypeDef(BaseModel): + image: ImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryRequestRequestTypeDef(BaseModel): + repositoryName: str + catalogData: Optional[RepositoryCatalogDataInputTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class PutRepositoryCatalogDataRequestRequestTypeDef(BaseModel): + repositoryName: str + catalogData: RepositoryCatalogDataInputTypeDef + registryId: Optional[str] = None + +class DescribeImageTagsResponseTypeDef(BaseModel): + imageTagDetails: List[ImageTagDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRegistriesResponseTypeDef(BaseModel): + registries: List[RegistryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ecr_public_constants.py b/aws_resource_validator/pydantic_models/ecr_public_constants.py new file mode 100644 index 00000000..1969ea9d --- /dev/null +++ b/aws_resource_validator/pydantic_models/ecr_public_constants.py @@ -0,0 +1,405 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeImageTagsPaginatorName = Literal["describe_image_tags"] +DescribeImagesPaginatorName = Literal["describe_images"] +DescribeRegistriesPaginatorName = Literal["describe_registries"] +DescribeRepositoriesPaginatorName = Literal["describe_repositories"] +ImageFailureCodeType = Literal["ImageNotFound", + "ImageReferencedByManifestList", + "ImageTagDoesNotMatchDigest", + "InvalidImageDigest", + "InvalidImageTag", + "KmsError", + "MissingDigestAndTag",] +LayerAvailabilityType = Literal["AVAILABLE", "UNAVAILABLE"] +LayerFailureCodeType = Literal["InvalidLayerDigest", "MissingLayerDigest"] +RegistryAliasStatusType = Literal["ACTIVE", "PENDING", "REJECTED"] +ECRPublicServiceName = Literal["ecr-public"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_image_tags", "describe_images", "describe_registries", "describe_repositories"] +RegionName = Literal["us-east-1", "us-west-2"] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/ecs_classes.py b/aws_resource_validator/pydantic_models/ecs_classes.py new file mode 100644 index 00000000..cce4b1ae --- /dev/null +++ b/aws_resource_validator/pydantic_models/ecs_classes.py @@ -0,0 +1,1647 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ecs_constants import * + +class AttachmentStateChangeTypeDef(BaseModel): + attachmentArn: str + status: str + +class KeyValuePairTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class AttributeTypeDef(BaseModel): + name: str + value: Optional[str] = None + targetType: Optional[Literal["container-instance"]] = None + targetId: Optional[str] = None + +class ManagedScalingTypeDef(BaseModel): + status: Optional[ManagedScalingStatusType] = None + targetCapacity: Optional[int] = None + minimumScalingStepSize: Optional[int] = None + maximumScalingStepSize: Optional[int] = None + instanceWarmupPeriod: Optional[int] = None + +class AwsVpcConfigurationOutputTypeDef(BaseModel): + subnets: List[str] + securityGroups: Optional[List[str]] = None + assignPublicIp: Optional[AssignPublicIpType] = None + +class AwsVpcConfigurationTypeDef(BaseModel): + subnets: Sequence[str] + securityGroups: Optional[Sequence[str]] = None + assignPublicIp: Optional[AssignPublicIpType] = None + +class CapacityProviderStrategyItemTypeDef(BaseModel): + capacityProvider: str + weight: Optional[int] = None + base: Optional[int] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class ManagedStorageConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + fargateEphemeralStorageKmsKeyId: Optional[str] = None + +class ClusterServiceConnectDefaultsRequestTypeDef(BaseModel): + namespace: str + +class ClusterServiceConnectDefaultsTypeDef(BaseModel): + namespace: Optional[str] = None + +class ClusterSettingTypeDef(BaseModel): + name: Optional[Literal["containerInsights"]] = None + value: Optional[str] = None + +class ContainerDependencyTypeDef(BaseModel): + containerName: str + condition: ContainerConditionType + +class EnvironmentFileTypeDef(BaseModel): + value: str + type: Literal["s3"] + +class FirelensConfigurationOutputTypeDef(BaseModel): + type: FirelensConfigurationTypeType + options: Optional[Dict[str, str]] = None + +class HealthCheckOutputTypeDef(BaseModel): + command: List[str] + interval: Optional[int] = None + timeout: Optional[int] = None + retries: Optional[int] = None + startPeriod: Optional[int] = None + +class HostEntryTypeDef(BaseModel): + hostname: str + ipAddress: str + +class MountPointTypeDef(BaseModel): + sourceVolume: Optional[str] = None + containerPath: Optional[str] = None + readOnly: Optional[bool] = None + +class PortMappingTypeDef(BaseModel): + containerPort: Optional[int] = None + hostPort: Optional[int] = None + protocol: Optional[TransportProtocolType] = None + name: Optional[str] = None + appProtocol: Optional[ApplicationProtocolType] = None + containerPortRange: Optional[str] = None + +class RepositoryCredentialsTypeDef(BaseModel): + credentialsParameter: str + +class ResourceRequirementTypeDef(BaseModel): + value: str + type: ResourceTypeType + +class SecretTypeDef(BaseModel): + name: str + valueFrom: str + +class SystemControlTypeDef(BaseModel): + namespace: Optional[str] = None + value: Optional[str] = None + +class UlimitTypeDef(BaseModel): + name: UlimitNameType + softLimit: int + hardLimit: int + +class VolumeFromTypeDef(BaseModel): + sourceContainer: Optional[str] = None + readOnly: Optional[bool] = None + +class FirelensConfigurationTypeDef(BaseModel): + type: FirelensConfigurationTypeType + options: Optional[Mapping[str, str]] = None + +class HealthCheckTypeDef(BaseModel): + command: Sequence[str] + interval: Optional[int] = None + timeout: Optional[int] = None + retries: Optional[int] = None + startPeriod: Optional[int] = None + +class InstanceHealthCheckResultTypeDef(BaseModel): + type: Optional[Literal["CONTAINER_RUNTIME"]] = None + status: Optional[InstanceHealthCheckStateType] = None + lastUpdated: Optional[datetime] = None + lastStatusChange: Optional[datetime] = None + +class ResourceOutputTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + doubleValue: Optional[float] = None + longValue: Optional[int] = None + integerValue: Optional[int] = None + stringSetValue: Optional[List[str]] = None + +class VersionInfoTypeDef(BaseModel): + agentVersion: Optional[str] = None + agentHash: Optional[str] = None + dockerVersion: Optional[str] = None + +class NetworkBindingTypeDef(BaseModel): + bindIP: Optional[str] = None + containerPort: Optional[int] = None + hostPort: Optional[int] = None + protocol: Optional[TransportProtocolType] = None + containerPortRange: Optional[str] = None + hostPortRange: Optional[str] = None + +class ManagedAgentTypeDef(BaseModel): + lastStartedAt: Optional[datetime] = None + name: Optional[Literal["ExecuteCommandAgent"]] = None + reason: Optional[str] = None + lastStatus: Optional[str] = None + +class NetworkInterfaceTypeDef(BaseModel): + attachmentId: Optional[str] = None + privateIpv4Address: Optional[str] = None + ipv6Address: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeploymentControllerTypeDef(BaseModel): + type: DeploymentControllerTypeType + +class LoadBalancerTypeDef(BaseModel): + targetGroupArn: Optional[str] = None + loadBalancerName: Optional[str] = None + containerName: Optional[str] = None + containerPort: Optional[int] = None + +class PlacementConstraintTypeDef(BaseModel): + type: Optional[PlacementConstraintTypeType] = None + expression: Optional[str] = None + +class PlacementStrategyTypeDef(BaseModel): + type: Optional[PlacementStrategyTypeType] = None + field: Optional[str] = None + +class ServiceRegistryTypeDef(BaseModel): + registryArn: Optional[str] = None + port: Optional[int] = None + containerName: Optional[str] = None + containerPort: Optional[int] = None + +class ScaleTypeDef(BaseModel): + value: Optional[float] = None + unit: Optional[Literal["PERCENT"]] = None + +class DeleteAccountSettingRequestRequestTypeDef(BaseModel): + name: SettingNameType + principalArn: Optional[str] = None + +class SettingTypeDef(BaseModel): + name: Optional[SettingNameType] = None + value: Optional[str] = None + principalArn: Optional[str] = None + type: Optional[SettingTypeType] = None + +class DeleteCapacityProviderRequestRequestTypeDef(BaseModel): + capacityProvider: str + +class DeleteClusterRequestRequestTypeDef(BaseModel): + cluster: str + +class DeleteServiceRequestRequestTypeDef(BaseModel): + service: str + cluster: Optional[str] = None + force: Optional[bool] = None + +class DeleteTaskDefinitionsRequestRequestTypeDef(BaseModel): + taskDefinitions: Sequence[str] + +class FailureTypeDef(BaseModel): + arn: Optional[str] = None + reason: Optional[str] = None + detail: Optional[str] = None + +class DeleteTaskSetRequestRequestTypeDef(BaseModel): + cluster: str + service: str + taskSet: str + force: Optional[bool] = None + +class DeploymentAlarmsOutputTypeDef(BaseModel): + alarmNames: List[str] + enable: bool + rollback: bool + +class DeploymentAlarmsTypeDef(BaseModel): + alarmNames: Sequence[str] + enable: bool + rollback: bool + +class DeploymentCircuitBreakerTypeDef(BaseModel): + enable: bool + rollback: bool + +class DeploymentEphemeralStorageTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + +class ServiceConnectServiceResourceTypeDef(BaseModel): + discoveryName: Optional[str] = None + discoveryArn: Optional[str] = None + +class DeregisterContainerInstanceRequestRequestTypeDef(BaseModel): + containerInstance: str + cluster: Optional[str] = None + force: Optional[bool] = None + +class DeregisterTaskDefinitionRequestRequestTypeDef(BaseModel): + taskDefinition: str + +class DescribeCapacityProvidersRequestRequestTypeDef(BaseModel): + capacityProviders: Optional[Sequence[str]] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeClustersRequestRequestTypeDef(BaseModel): + clusters: Optional[Sequence[str]] = None + include: Optional[Sequence[ClusterFieldType]] = None + +class DescribeContainerInstancesRequestRequestTypeDef(BaseModel): + containerInstances: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[ContainerInstanceFieldType]] = None + +class DescribeServicesRequestRequestTypeDef(BaseModel): + services: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeTaskDefinitionRequestRequestTypeDef(BaseModel): + taskDefinition: str + include: Optional[Sequence[Literal["TAGS"]]] = None + +class DescribeTaskSetsRequestRequestTypeDef(BaseModel): + cluster: str + service: str + taskSets: Optional[Sequence[str]] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + +class DescribeTasksRequestRequestTypeDef(BaseModel): + tasks: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + +class DeviceOutputTypeDef(BaseModel): + hostPath: str + containerPath: Optional[str] = None + permissions: Optional[List[DeviceCgroupPermissionType]] = None + +class DeviceTypeDef(BaseModel): + hostPath: str + containerPath: Optional[str] = None + permissions: Optional[Sequence[DeviceCgroupPermissionType]] = None + +class DiscoverPollEndpointRequestRequestTypeDef(BaseModel): + containerInstance: Optional[str] = None + cluster: Optional[str] = None + +class DockerVolumeConfigurationOutputTypeDef(BaseModel): + scope: Optional[ScopeType] = None + autoprovision: Optional[bool] = None + driver: Optional[str] = None + driverOpts: Optional[Dict[str, str]] = None + labels: Optional[Dict[str, str]] = None + +class DockerVolumeConfigurationTypeDef(BaseModel): + scope: Optional[ScopeType] = None + autoprovision: Optional[bool] = None + driver: Optional[str] = None + driverOpts: Optional[Mapping[str, str]] = None + labels: Optional[Mapping[str, str]] = None + +class EFSAuthorizationConfigTypeDef(BaseModel): + accessPointId: Optional[str] = None + iam: Optional[EFSAuthorizationConfigIAMType] = None + +class EphemeralStorageTypeDef(BaseModel): + sizeInGiB: int + +class ExecuteCommandLogConfigurationTypeDef(BaseModel): + cloudWatchLogGroupName: Optional[str] = None + cloudWatchEncryptionEnabled: Optional[bool] = None + s3BucketName: Optional[str] = None + s3EncryptionEnabled: Optional[bool] = None + s3KeyPrefix: Optional[str] = None + +class ExecuteCommandRequestRequestTypeDef(BaseModel): + command: str + interactive: bool + task: str + cluster: Optional[str] = None + container: Optional[str] = None + +class SessionTypeDef(BaseModel): + sessionId: Optional[str] = None + streamUrl: Optional[str] = None + tokenValue: Optional[str] = None + +class FSxWindowsFileServerAuthorizationConfigTypeDef(BaseModel): + credentialsParameter: str + domain: str + +class GetTaskProtectionRequestRequestTypeDef(BaseModel): + cluster: str + tasks: Optional[Sequence[str]] = None + +class ProtectedTaskTypeDef(BaseModel): + taskArn: Optional[str] = None + protectionEnabled: Optional[bool] = None + expirationDate: Optional[datetime] = None + +class HostVolumePropertiesTypeDef(BaseModel): + sourcePath: Optional[str] = None + +class InferenceAcceleratorOverrideTypeDef(BaseModel): + deviceName: Optional[str] = None + deviceType: Optional[str] = None + +class InferenceAcceleratorTypeDef(BaseModel): + deviceName: str + deviceType: str + +class KernelCapabilitiesOutputTypeDef(BaseModel): + add: Optional[List[str]] = None + drop: Optional[List[str]] = None + +class KernelCapabilitiesTypeDef(BaseModel): + add: Optional[Sequence[str]] = None + drop: Optional[Sequence[str]] = None + +class TmpfsOutputTypeDef(BaseModel): + containerPath: str + size: int + mountOptions: Optional[List[str]] = None + +class TmpfsTypeDef(BaseModel): + containerPath: str + size: int + mountOptions: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccountSettingsRequestRequestTypeDef(BaseModel): + name: Optional[SettingNameType] = None + value: Optional[str] = None + principalArn: Optional[str] = None + effectiveSettings: Optional[bool] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAttributesRequestRequestTypeDef(BaseModel): + targetType: Literal["container-instance"] + cluster: Optional[str] = None + attributeName: Optional[str] = None + attributeValue: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListClustersRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListContainerInstancesRequestRequestTypeDef(BaseModel): + cluster: Optional[str] = None + filter: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + status: Optional[ContainerInstanceStatusType] = None + +class ListServicesByNamespaceRequestRequestTypeDef(BaseModel): + namespace: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListServicesRequestRequestTypeDef(BaseModel): + cluster: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + launchType: Optional[LaunchTypeType] = None + schedulingStrategy: Optional[SchedulingStrategyType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTaskDefinitionFamiliesRequestRequestTypeDef(BaseModel): + familyPrefix: Optional[str] = None + status: Optional[TaskDefinitionFamilyStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTaskDefinitionsRequestRequestTypeDef(BaseModel): + familyPrefix: Optional[str] = None + status: Optional[TaskDefinitionStatusType] = None + sort: Optional[SortOrderType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTasksRequestRequestTypeDef(BaseModel): + cluster: Optional[str] = None + containerInstance: Optional[str] = None + family: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + startedBy: Optional[str] = None + serviceName: Optional[str] = None + desiredStatus: Optional[DesiredStatusType] = None + launchType: Optional[LaunchTypeType] = None + +class ManagedAgentStateChangeTypeDef(BaseModel): + containerName: str + managedAgentName: Literal["ExecuteCommandAgent"] + status: str + reason: Optional[str] = None + +class PlatformDeviceTypeDef(BaseModel): + id: str + type: Literal["GPU"] + +class PutAccountSettingDefaultRequestRequestTypeDef(BaseModel): + name: SettingNameType + value: str + +class PutAccountSettingRequestRequestTypeDef(BaseModel): + name: SettingNameType + value: str + principalArn: Optional[str] = None + +class RuntimePlatformTypeDef(BaseModel): + cpuArchitecture: Optional[CPUArchitectureType] = None + operatingSystemFamily: Optional[OSFamilyType] = None + +class TaskDefinitionPlacementConstraintTypeDef(BaseModel): + type: Optional[Literal["memberOf"]] = None + expression: Optional[str] = None + +class ResourceTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + doubleValue: Optional[float] = None + longValue: Optional[int] = None + integerValue: Optional[int] = None + stringSetValue: Optional[Sequence[str]] = None + +class ServiceConnectClientAliasTypeDef(BaseModel): + port: int + dnsName: Optional[str] = None + +class TimeoutConfigurationTypeDef(BaseModel): + idleTimeoutSeconds: Optional[int] = None + perRequestTimeoutSeconds: Optional[int] = None + +class ServiceConnectTlsCertificateAuthorityTypeDef(BaseModel): + awsPcaAuthorityArn: Optional[str] = None + +class ServiceEventTypeDef(BaseModel): + id: Optional[str] = None + createdAt: Optional[datetime] = None + message: Optional[str] = None + +class StopTaskRequestRequestTypeDef(BaseModel): + task: str + cluster: Optional[str] = None + reason: Optional[str] = None + +class TaskEphemeralStorageTypeDef(BaseModel): + sizeInGiB: Optional[int] = None + kmsKeyId: Optional[str] = None + +class TaskManagedEBSVolumeTerminationPolicyTypeDef(BaseModel): + deleteOnTermination: bool + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateContainerAgentRequestRequestTypeDef(BaseModel): + containerInstance: str + cluster: Optional[str] = None + +class UpdateContainerInstancesStateRequestRequestTypeDef(BaseModel): + containerInstances: Sequence[str] + status: ContainerInstanceStatusType + cluster: Optional[str] = None + +class UpdateServicePrimaryTaskSetRequestRequestTypeDef(BaseModel): + cluster: str + service: str + primaryTaskSet: str + +class UpdateTaskProtectionRequestRequestTypeDef(BaseModel): + cluster: str + tasks: Sequence[str] + protectionEnabled: bool + expiresInMinutes: Optional[int] = None + +class SubmitAttachmentStateChangesRequestRequestTypeDef(BaseModel): + attachments: Sequence[AttachmentStateChangeTypeDef] + cluster: Optional[str] = None + +class AttachmentTypeDef(BaseModel): + id: Optional[str] = None + type: Optional[str] = None + status: Optional[str] = None + details: Optional[List[KeyValuePairTypeDef]] = None + +class ProxyConfigurationOutputTypeDef(BaseModel): + containerName: str + type: Optional[Literal["APPMESH"]] = None + properties: Optional[List[KeyValuePairTypeDef]] = None + +class ProxyConfigurationTypeDef(BaseModel): + containerName: str + type: Optional[Literal["APPMESH"]] = None + properties: Optional[Sequence[KeyValuePairTypeDef]] = None + +class DeleteAttributesRequestRequestTypeDef(BaseModel): + attributes: Sequence[AttributeTypeDef] + cluster: Optional[str] = None + +class PutAttributesRequestRequestTypeDef(BaseModel): + attributes: Sequence[AttributeTypeDef] + cluster: Optional[str] = None + +class AutoScalingGroupProviderTypeDef(BaseModel): + autoScalingGroupArn: str + managedScaling: Optional[ManagedScalingTypeDef] = None + managedTerminationProtection: Optional[ManagedTerminationProtectionType] = None + managedDraining: Optional[ManagedDrainingType] = None + +class AutoScalingGroupProviderUpdateTypeDef(BaseModel): + managedScaling: Optional[ManagedScalingTypeDef] = None + managedTerminationProtection: Optional[ManagedTerminationProtectionType] = None + managedDraining: Optional[ManagedDrainingType] = None + +class NetworkConfigurationOutputTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationOutputTypeDef] = None + +class NetworkConfigurationTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationTypeDef] = None + +class PutClusterCapacityProvidersRequestRequestTypeDef(BaseModel): + cluster: str + capacityProviders: Sequence[str] + defaultCapacityProviderStrategy: Sequence[CapacityProviderStrategyItemTypeDef] + +class EBSTagSpecificationOutputTypeDef(BaseModel): + resourceType: Literal["volume"] + tags: Optional[List[TagTypeDef]] = None + propagateTags: Optional[PropagateTagsType] = None + +class EBSTagSpecificationTypeDef(BaseModel): + resourceType: Literal["volume"] + tags: Optional[Sequence[TagTypeDef]] = None + propagateTags: Optional[PropagateTagsType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class UpdateClusterSettingsRequestRequestTypeDef(BaseModel): + cluster: str + settings: Sequence[ClusterSettingTypeDef] + +class ContainerOverrideOutputTypeDef(BaseModel): + name: Optional[str] = None + command: Optional[List[str]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + environmentFiles: Optional[List[EnvironmentFileTypeDef]] = None + cpu: Optional[int] = None + memory: Optional[int] = None + memoryReservation: Optional[int] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + +class ContainerOverrideTypeDef(BaseModel): + name: Optional[str] = None + command: Optional[Sequence[str]] = None + environment: Optional[Sequence[KeyValuePairTypeDef]] = None + environmentFiles: Optional[Sequence[EnvironmentFileTypeDef]] = None + cpu: Optional[int] = None + memory: Optional[int] = None + memoryReservation: Optional[int] = None + resourceRequirements: Optional[Sequence[ResourceRequirementTypeDef]] = None + +class LogConfigurationOutputTypeDef(BaseModel): + logDriver: LogDriverType + options: Optional[Dict[str, str]] = None + secretOptions: Optional[List[SecretTypeDef]] = None + +class LogConfigurationTypeDef(BaseModel): + logDriver: LogDriverType + options: Optional[Mapping[str, str]] = None + secretOptions: Optional[Sequence[SecretTypeDef]] = None + +class ContainerInstanceHealthStatusTypeDef(BaseModel): + overallStatus: Optional[InstanceHealthCheckStateType] = None + details: Optional[List[InstanceHealthCheckResultTypeDef]] = None + +class ContainerStateChangeTypeDef(BaseModel): + containerName: Optional[str] = None + imageDigest: Optional[str] = None + runtimeId: Optional[str] = None + exitCode: Optional[int] = None + networkBindings: Optional[Sequence[NetworkBindingTypeDef]] = None + reason: Optional[str] = None + status: Optional[str] = None + +class SubmitContainerStateChangeRequestRequestTypeDef(BaseModel): + cluster: Optional[str] = None + task: Optional[str] = None + containerName: Optional[str] = None + runtimeId: Optional[str] = None + status: Optional[str] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + networkBindings: Optional[Sequence[NetworkBindingTypeDef]] = None + +class ContainerTypeDef(BaseModel): + containerArn: Optional[str] = None + taskArn: Optional[str] = None + name: Optional[str] = None + image: Optional[str] = None + imageDigest: Optional[str] = None + runtimeId: Optional[str] = None + lastStatus: Optional[str] = None + exitCode: Optional[int] = None + reason: Optional[str] = None + networkBindings: Optional[List[NetworkBindingTypeDef]] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + healthStatus: Optional[HealthStatusType] = None + managedAgents: Optional[List[ManagedAgentTypeDef]] = None + cpu: Optional[str] = None + memory: Optional[str] = None + memoryReservation: Optional[str] = None + gpuIds: Optional[List[str]] = None + +class DeleteAttributesResponseTypeDef(BaseModel): + attributes: List[AttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DiscoverPollEndpointResponseTypeDef(BaseModel): + endpoint: str + telemetryEndpoint: str + serviceConnectEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttributesResponseTypeDef(BaseModel): + attributes: List[AttributeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersResponseTypeDef(BaseModel): + clusterArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListContainerInstancesResponseTypeDef(BaseModel): + containerInstanceArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesByNamespaceResponseTypeDef(BaseModel): + serviceArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesResponseTypeDef(BaseModel): + serviceArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTaskDefinitionFamiliesResponseTypeDef(BaseModel): + families: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTaskDefinitionsResponseTypeDef(BaseModel): + taskDefinitionArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTasksResponseTypeDef(BaseModel): + taskArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutAttributesResponseTypeDef(BaseModel): + attributes: List[AttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitAttachmentStateChangesResponseTypeDef(BaseModel): + acknowledgment: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitContainerStateChangeResponseTypeDef(BaseModel): + acknowledgment: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitTaskStateChangeResponseTypeDef(BaseModel): + acknowledgment: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTaskSetRequestRequestTypeDef(BaseModel): + cluster: str + service: str + taskSet: str + scale: ScaleTypeDef + +class DeleteAccountSettingResponseTypeDef(BaseModel): + setting: SettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountSettingsResponseTypeDef(BaseModel): + settings: List[SettingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccountSettingDefaultResponseTypeDef(BaseModel): + setting: SettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccountSettingResponseTypeDef(BaseModel): + setting: SettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentConfigurationOutputTypeDef(BaseModel): + deploymentCircuitBreaker: Optional[DeploymentCircuitBreakerTypeDef] = None + maximumPercent: Optional[int] = None + minimumHealthyPercent: Optional[int] = None + alarms: Optional[DeploymentAlarmsOutputTypeDef] = None + +class DeploymentConfigurationTypeDef(BaseModel): + deploymentCircuitBreaker: Optional[DeploymentCircuitBreakerTypeDef] = None + maximumPercent: Optional[int] = None + minimumHealthyPercent: Optional[int] = None + alarms: Optional[DeploymentAlarmsTypeDef] = None + +class DescribeServicesRequestServicesInactiveWaitTypeDef(BaseModel): + services: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeServicesRequestServicesStableWaitTypeDef(BaseModel): + services: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTasksRequestTasksRunningWaitTypeDef(BaseModel): + tasks: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTasksRequestTasksStoppedWaitTypeDef(BaseModel): + tasks: Sequence[str] + cluster: Optional[str] = None + include: Optional[Sequence[Literal["TAGS"]]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class EFSVolumeConfigurationTypeDef(BaseModel): + fileSystemId: str + rootDirectory: Optional[str] = None + transitEncryption: Optional[EFSTransitEncryptionType] = None + transitEncryptionPort: Optional[int] = None + authorizationConfig: Optional[EFSAuthorizationConfigTypeDef] = None + +class ExecuteCommandConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + logging: Optional[ExecuteCommandLoggingType] = None + logConfiguration: Optional[ExecuteCommandLogConfigurationTypeDef] = None + +class ExecuteCommandResponseTypeDef(BaseModel): + clusterArn: str + containerArn: str + containerName: str + interactive: bool + session: SessionTypeDef + taskArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class FSxWindowsFileServerVolumeConfigurationTypeDef(BaseModel): + fileSystemId: str + rootDirectory: str + authorizationConfig: FSxWindowsFileServerAuthorizationConfigTypeDef + +class GetTaskProtectionResponseTypeDef(BaseModel): + protectedTasks: List[ProtectedTaskTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTaskProtectionResponseTypeDef(BaseModel): + protectedTasks: List[ProtectedTaskTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LinuxParametersOutputTypeDef(BaseModel): + capabilities: Optional[KernelCapabilitiesOutputTypeDef] = None + devices: Optional[List[DeviceOutputTypeDef]] = None + initProcessEnabled: Optional[bool] = None + sharedMemorySize: Optional[int] = None + tmpfs: Optional[List[TmpfsOutputTypeDef]] = None + maxSwap: Optional[int] = None + swappiness: Optional[int] = None + +class LinuxParametersTypeDef(BaseModel): + capabilities: Optional[KernelCapabilitiesTypeDef] = None + devices: Optional[Sequence[DeviceTypeDef]] = None + initProcessEnabled: Optional[bool] = None + sharedMemorySize: Optional[int] = None + tmpfs: Optional[Sequence[TmpfsTypeDef]] = None + maxSwap: Optional[int] = None + swappiness: Optional[int] = None + +class ListAccountSettingsRequestListAccountSettingsPaginateTypeDef(BaseModel): + name: Optional[SettingNameType] = None + value: Optional[str] = None + principalArn: Optional[str] = None + effectiveSettings: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttributesRequestListAttributesPaginateTypeDef(BaseModel): + targetType: Literal["container-instance"] + cluster: Optional[str] = None + attributeName: Optional[str] = None + attributeValue: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersRequestListClustersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContainerInstancesRequestListContainerInstancesPaginateTypeDef(BaseModel): + cluster: Optional[str] = None + filter: Optional[str] = None + status: Optional[ContainerInstanceStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesByNamespaceRequestListServicesByNamespacePaginateTypeDef(BaseModel): + namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesRequestListServicesPaginateTypeDef(BaseModel): + cluster: Optional[str] = None + launchType: Optional[LaunchTypeType] = None + schedulingStrategy: Optional[SchedulingStrategyType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTaskDefinitionFamiliesRequestListTaskDefinitionFamiliesPaginateTypeDef(BaseModel): + familyPrefix: Optional[str] = None + status: Optional[TaskDefinitionFamilyStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTaskDefinitionsRequestListTaskDefinitionsPaginateTypeDef(BaseModel): + familyPrefix: Optional[str] = None + status: Optional[TaskDefinitionStatusType] = None + sort: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTasksRequestListTasksPaginateTypeDef(BaseModel): + cluster: Optional[str] = None + containerInstance: Optional[str] = None + family: Optional[str] = None + startedBy: Optional[str] = None + serviceName: Optional[str] = None + desiredStatus: Optional[DesiredStatusType] = None + launchType: Optional[LaunchTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ServiceConnectTlsConfigurationTypeDef(BaseModel): + issuerCertificateAuthority: ServiceConnectTlsCertificateAuthorityTypeDef + kmsKey: Optional[str] = None + roleArn: Optional[str] = None + +class CapacityProviderTypeDef(BaseModel): + capacityProviderArn: Optional[str] = None + name: Optional[str] = None + status: Optional[CapacityProviderStatusType] = None + autoScalingGroupProvider: Optional[AutoScalingGroupProviderTypeDef] = None + updateStatus: Optional[CapacityProviderUpdateStatusType] = None + updateStatusReason: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + +class CreateCapacityProviderRequestRequestTypeDef(BaseModel): + name: str + autoScalingGroupProvider: AutoScalingGroupProviderTypeDef + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateCapacityProviderRequestRequestTypeDef(BaseModel): + name: str + autoScalingGroupProvider: AutoScalingGroupProviderUpdateTypeDef + +class TaskSetTypeDef(BaseModel): + id: Optional[str] = None + taskSetArn: Optional[str] = None + serviceArn: Optional[str] = None + clusterArn: Optional[str] = None + startedBy: Optional[str] = None + externalId: Optional[str] = None + status: Optional[str] = None + taskDefinition: Optional[str] = None + computedDesiredCount: Optional[int] = None + pendingCount: Optional[int] = None + runningCount: Optional[int] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + launchType: Optional[LaunchTypeType] = None + capacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + platformVersion: Optional[str] = None + platformFamily: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + loadBalancers: Optional[List[LoadBalancerTypeDef]] = None + serviceRegistries: Optional[List[ServiceRegistryTypeDef]] = None + scale: Optional[ScaleTypeDef] = None + stabilityStatus: Optional[StabilityStatusType] = None + stabilityStatusAt: Optional[datetime] = None + tags: Optional[List[TagTypeDef]] = None + fargateEphemeralStorage: Optional[DeploymentEphemeralStorageTypeDef] = None + +class CreateTaskSetRequestRequestTypeDef(BaseModel): + service: str + cluster: str + taskDefinition: str + externalId: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + loadBalancers: Optional[Sequence[LoadBalancerTypeDef]] = None + serviceRegistries: Optional[Sequence[ServiceRegistryTypeDef]] = None + launchType: Optional[LaunchTypeType] = None + capacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + platformVersion: Optional[str] = None + scale: Optional[ScaleTypeDef] = None + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ServiceManagedEBSVolumeConfigurationOutputTypeDef(BaseModel): + roleArn: str + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + volumeType: Optional[str] = None + sizeInGiB: Optional[int] = None + snapshotId: Optional[str] = None + iops: Optional[int] = None + throughput: Optional[int] = None + tagSpecifications: Optional[List[EBSTagSpecificationOutputTypeDef]] = None + filesystemType: Optional[TaskFilesystemTypeType] = None + +class ServiceManagedEBSVolumeConfigurationTypeDef(BaseModel): + roleArn: str + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + volumeType: Optional[str] = None + sizeInGiB: Optional[int] = None + snapshotId: Optional[str] = None + iops: Optional[int] = None + throughput: Optional[int] = None + tagSpecifications: Optional[Sequence[EBSTagSpecificationTypeDef]] = None + filesystemType: Optional[TaskFilesystemTypeType] = None + +class TaskManagedEBSVolumeConfigurationTypeDef(BaseModel): + roleArn: str + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + volumeType: Optional[str] = None + sizeInGiB: Optional[int] = None + snapshotId: Optional[str] = None + iops: Optional[int] = None + throughput: Optional[int] = None + tagSpecifications: Optional[Sequence[EBSTagSpecificationTypeDef]] = None + terminationPolicy: Optional[TaskManagedEBSVolumeTerminationPolicyTypeDef] = None + filesystemType: Optional[TaskFilesystemTypeType] = None + +class TaskOverrideOutputTypeDef(BaseModel): + containerOverrides: Optional[List[ContainerOverrideOutputTypeDef]] = None + cpu: Optional[str] = None + inferenceAcceleratorOverrides: Optional[List[InferenceAcceleratorOverrideTypeDef]] = None + executionRoleArn: Optional[str] = None + memory: Optional[str] = None + taskRoleArn: Optional[str] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + +class TaskOverrideTypeDef(BaseModel): + containerOverrides: Optional[Sequence[ContainerOverrideTypeDef]] = None + cpu: Optional[str] = None + inferenceAcceleratorOverrides: Optional[Sequence[InferenceAcceleratorOverrideTypeDef]] = None + executionRoleArn: Optional[str] = None + memory: Optional[str] = None + taskRoleArn: Optional[str] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + +class ContainerInstanceTypeDef(BaseModel): + containerInstanceArn: Optional[str] = None + ec2InstanceId: Optional[str] = None + capacityProviderName: Optional[str] = None + version: Optional[int] = None + versionInfo: Optional[VersionInfoTypeDef] = None + remainingResources: Optional[List[ResourceOutputTypeDef]] = None + registeredResources: Optional[List[ResourceOutputTypeDef]] = None + status: Optional[str] = None + statusReason: Optional[str] = None + agentConnected: Optional[bool] = None + runningTasksCount: Optional[int] = None + pendingTasksCount: Optional[int] = None + agentUpdateStatus: Optional[AgentUpdateStatusType] = None + attributes: Optional[List[AttributeTypeDef]] = None + registeredAt: Optional[datetime] = None + attachments: Optional[List[AttachmentTypeDef]] = None + tags: Optional[List[TagTypeDef]] = None + healthStatus: Optional[ContainerInstanceHealthStatusTypeDef] = None + +class SubmitTaskStateChangeRequestRequestTypeDef(BaseModel): + cluster: Optional[str] = None + task: Optional[str] = None + status: Optional[str] = None + reason: Optional[str] = None + containers: Optional[Sequence[ContainerStateChangeTypeDef]] = None + attachments: Optional[Sequence[AttachmentStateChangeTypeDef]] = None + managedAgents: Optional[Sequence[ManagedAgentStateChangeTypeDef]] = None + pullStartedAt: Optional[TimestampTypeDef] = None + pullStoppedAt: Optional[TimestampTypeDef] = None + executionStoppedAt: Optional[TimestampTypeDef] = None + +class ClusterConfigurationTypeDef(BaseModel): + executeCommandConfiguration: Optional[ExecuteCommandConfigurationTypeDef] = None + managedStorageConfiguration: Optional[ManagedStorageConfigurationTypeDef] = None + +class VolumeOutputTypeDef(BaseModel): + name: Optional[str] = None + host: Optional[HostVolumePropertiesTypeDef] = None + dockerVolumeConfiguration: Optional[DockerVolumeConfigurationOutputTypeDef] = None + efsVolumeConfiguration: Optional[EFSVolumeConfigurationTypeDef] = None + fsxWindowsFileServerVolumeConfiguration: Optional[ FSxWindowsFileServerVolumeConfigurationTypeDef ] = None + configuredAtLaunch: Optional[bool] = None + +class VolumeTypeDef(BaseModel): + name: Optional[str] = None + host: Optional[HostVolumePropertiesTypeDef] = None + dockerVolumeConfiguration: Optional[DockerVolumeConfigurationTypeDef] = None + efsVolumeConfiguration: Optional[EFSVolumeConfigurationTypeDef] = None + fsxWindowsFileServerVolumeConfiguration: Optional[ FSxWindowsFileServerVolumeConfigurationTypeDef ] = None + configuredAtLaunch: Optional[bool] = None + +class ContainerDefinitionOutputTypeDef(BaseModel): + name: Optional[str] = None + image: Optional[str] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + cpu: Optional[int] = None + memory: Optional[int] = None + memoryReservation: Optional[int] = None + links: Optional[List[str]] = None + portMappings: Optional[List[PortMappingTypeDef]] = None + essential: Optional[bool] = None + entryPoint: Optional[List[str]] = None + command: Optional[List[str]] = None + environment: Optional[List[KeyValuePairTypeDef]] = None + environmentFiles: Optional[List[EnvironmentFileTypeDef]] = None + mountPoints: Optional[List[MountPointTypeDef]] = None + volumesFrom: Optional[List[VolumeFromTypeDef]] = None + linuxParameters: Optional[LinuxParametersOutputTypeDef] = None + secrets: Optional[List[SecretTypeDef]] = None + dependsOn: Optional[List[ContainerDependencyTypeDef]] = None + startTimeout: Optional[int] = None + stopTimeout: Optional[int] = None + hostname: Optional[str] = None + user: Optional[str] = None + workingDirectory: Optional[str] = None + disableNetworking: Optional[bool] = None + privileged: Optional[bool] = None + readonlyRootFilesystem: Optional[bool] = None + dnsServers: Optional[List[str]] = None + dnsSearchDomains: Optional[List[str]] = None + extraHosts: Optional[List[HostEntryTypeDef]] = None + dockerSecurityOptions: Optional[List[str]] = None + interactive: Optional[bool] = None + pseudoTerminal: Optional[bool] = None + dockerLabels: Optional[Dict[str, str]] = None + ulimits: Optional[List[UlimitTypeDef]] = None + logConfiguration: Optional[LogConfigurationOutputTypeDef] = None + healthCheck: Optional[HealthCheckOutputTypeDef] = None + systemControls: Optional[List[SystemControlTypeDef]] = None + resourceRequirements: Optional[List[ResourceRequirementTypeDef]] = None + firelensConfiguration: Optional[FirelensConfigurationOutputTypeDef] = None + credentialSpecs: Optional[List[str]] = None + +class ContainerDefinitionTypeDef(BaseModel): + name: Optional[str] = None + image: Optional[str] = None + repositoryCredentials: Optional[RepositoryCredentialsTypeDef] = None + cpu: Optional[int] = None + memory: Optional[int] = None + memoryReservation: Optional[int] = None + links: Optional[Sequence[str]] = None + portMappings: Optional[Sequence[PortMappingTypeDef]] = None + essential: Optional[bool] = None + entryPoint: Optional[Sequence[str]] = None + command: Optional[Sequence[str]] = None + environment: Optional[Sequence[KeyValuePairTypeDef]] = None + environmentFiles: Optional[Sequence[EnvironmentFileTypeDef]] = None + mountPoints: Optional[Sequence[MountPointTypeDef]] = None + volumesFrom: Optional[Sequence[VolumeFromTypeDef]] = None + linuxParameters: Optional[LinuxParametersTypeDef] = None + secrets: Optional[Sequence[SecretTypeDef]] = None + dependsOn: Optional[Sequence[ContainerDependencyTypeDef]] = None + startTimeout: Optional[int] = None + stopTimeout: Optional[int] = None + hostname: Optional[str] = None + user: Optional[str] = None + workingDirectory: Optional[str] = None + disableNetworking: Optional[bool] = None + privileged: Optional[bool] = None + readonlyRootFilesystem: Optional[bool] = None + dnsServers: Optional[Sequence[str]] = None + dnsSearchDomains: Optional[Sequence[str]] = None + extraHosts: Optional[Sequence[HostEntryTypeDef]] = None + dockerSecurityOptions: Optional[Sequence[str]] = None + interactive: Optional[bool] = None + pseudoTerminal: Optional[bool] = None + dockerLabels: Optional[Mapping[str, str]] = None + ulimits: Optional[Sequence[UlimitTypeDef]] = None + logConfiguration: Optional[LogConfigurationTypeDef] = None + healthCheck: Optional[HealthCheckTypeDef] = None + systemControls: Optional[Sequence[SystemControlTypeDef]] = None + resourceRequirements: Optional[Sequence[ResourceRequirementTypeDef]] = None + firelensConfiguration: Optional[FirelensConfigurationTypeDef] = None + credentialSpecs: Optional[Sequence[str]] = None + +class RegisterContainerInstanceRequestRequestTypeDef(BaseModel): + cluster: Optional[str] = None + instanceIdentityDocument: Optional[str] = None + instanceIdentityDocumentSignature: Optional[str] = None + totalResources: Optional[Sequence[ResourceUnionTypeDef]] = None + versionInfo: Optional[VersionInfoTypeDef] = None + containerInstanceArn: Optional[str] = None + attributes: Optional[Sequence[AttributeTypeDef]] = None + platformDevices: Optional[Sequence[PlatformDeviceTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ServiceConnectServiceOutputTypeDef(BaseModel): + portName: str + discoveryName: Optional[str] = None + clientAliases: Optional[List[ServiceConnectClientAliasTypeDef]] = None + ingressPortOverride: Optional[int] = None + timeout: Optional[TimeoutConfigurationTypeDef] = None + tls: Optional[ServiceConnectTlsConfigurationTypeDef] = None + +class ServiceConnectServiceTypeDef(BaseModel): + portName: str + discoveryName: Optional[str] = None + clientAliases: Optional[Sequence[ServiceConnectClientAliasTypeDef]] = None + ingressPortOverride: Optional[int] = None + timeout: Optional[TimeoutConfigurationTypeDef] = None + tls: Optional[ServiceConnectTlsConfigurationTypeDef] = None + +class CreateCapacityProviderResponseTypeDef(BaseModel): + capacityProvider: CapacityProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCapacityProviderResponseTypeDef(BaseModel): + capacityProvider: CapacityProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCapacityProvidersResponseTypeDef(BaseModel): + capacityProviders: List[CapacityProviderTypeDef] + failures: List[FailureTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCapacityProviderResponseTypeDef(BaseModel): + capacityProvider: CapacityProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTaskSetResponseTypeDef(BaseModel): + taskSet: TaskSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTaskSetResponseTypeDef(BaseModel): + taskSet: TaskSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTaskSetsResponseTypeDef(BaseModel): + taskSets: List[TaskSetTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServicePrimaryTaskSetResponseTypeDef(BaseModel): + taskSet: TaskSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTaskSetResponseTypeDef(BaseModel): + taskSet: TaskSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceVolumeConfigurationOutputTypeDef(BaseModel): + name: str + managedEBSVolume: Optional[ServiceManagedEBSVolumeConfigurationOutputTypeDef] = None + +class ServiceVolumeConfigurationTypeDef(BaseModel): + name: str + managedEBSVolume: Optional[ServiceManagedEBSVolumeConfigurationTypeDef] = None + +class TaskVolumeConfigurationTypeDef(BaseModel): + name: str + managedEBSVolume: Optional[TaskManagedEBSVolumeConfigurationTypeDef] = None + +class TaskTypeDef(BaseModel): + attachments: Optional[List[AttachmentTypeDef]] = None + attributes: Optional[List[AttributeTypeDef]] = None + availabilityZone: Optional[str] = None + capacityProviderName: Optional[str] = None + clusterArn: Optional[str] = None + connectivity: Optional[ConnectivityType] = None + connectivityAt: Optional[datetime] = None + containerInstanceArn: Optional[str] = None + containers: Optional[List[ContainerTypeDef]] = None + cpu: Optional[str] = None + createdAt: Optional[datetime] = None + desiredStatus: Optional[str] = None + enableExecuteCommand: Optional[bool] = None + executionStoppedAt: Optional[datetime] = None + group: Optional[str] = None + healthStatus: Optional[HealthStatusType] = None + inferenceAccelerators: Optional[List[InferenceAcceleratorTypeDef]] = None + lastStatus: Optional[str] = None + launchType: Optional[LaunchTypeType] = None + memory: Optional[str] = None + overrides: Optional[TaskOverrideOutputTypeDef] = None + platformVersion: Optional[str] = None + platformFamily: Optional[str] = None + pullStartedAt: Optional[datetime] = None + pullStoppedAt: Optional[datetime] = None + startedAt: Optional[datetime] = None + startedBy: Optional[str] = None + stopCode: Optional[TaskStopCodeType] = None + stoppedAt: Optional[datetime] = None + stoppedReason: Optional[str] = None + stoppingAt: Optional[datetime] = None + tags: Optional[List[TagTypeDef]] = None + taskArn: Optional[str] = None + taskDefinitionArn: Optional[str] = None + version: Optional[int] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + fargateEphemeralStorage: Optional[TaskEphemeralStorageTypeDef] = None + +class DeregisterContainerInstanceResponseTypeDef(BaseModel): + containerInstance: ContainerInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContainerInstancesResponseTypeDef(BaseModel): + containerInstances: List[ContainerInstanceTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterContainerInstanceResponseTypeDef(BaseModel): + containerInstance: ContainerInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContainerAgentResponseTypeDef(BaseModel): + containerInstance: ContainerInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContainerInstancesStateResponseTypeDef(BaseModel): + containerInstances: List[ContainerInstanceTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterTypeDef(BaseModel): + clusterArn: Optional[str] = None + clusterName: Optional[str] = None + configuration: Optional[ClusterConfigurationTypeDef] = None + status: Optional[str] = None + registeredContainerInstancesCount: Optional[int] = None + runningTasksCount: Optional[int] = None + pendingTasksCount: Optional[int] = None + activeServicesCount: Optional[int] = None + statistics: Optional[List[KeyValuePairTypeDef]] = None + tags: Optional[List[TagTypeDef]] = None + settings: Optional[List[ClusterSettingTypeDef]] = None + capacityProviders: Optional[List[str]] = None + defaultCapacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + attachments: Optional[List[AttachmentTypeDef]] = None + attachmentsStatus: Optional[str] = None + serviceConnectDefaults: Optional[ClusterServiceConnectDefaultsTypeDef] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + clusterName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + settings: Optional[Sequence[ClusterSettingTypeDef]] = None + configuration: Optional[ClusterConfigurationTypeDef] = None + capacityProviders: Optional[Sequence[str]] = None + defaultCapacityProviderStrategy: Optional[ Sequence[CapacityProviderStrategyItemTypeDef] ] = None + serviceConnectDefaults: Optional[ClusterServiceConnectDefaultsRequestTypeDef] = None + +class UpdateClusterRequestRequestTypeDef(BaseModel): + cluster: str + settings: Optional[Sequence[ClusterSettingTypeDef]] = None + configuration: Optional[ClusterConfigurationTypeDef] = None + serviceConnectDefaults: Optional[ClusterServiceConnectDefaultsRequestTypeDef] = None + +class TaskDefinitionTypeDef(BaseModel): + taskDefinitionArn: Optional[str] = None + containerDefinitions: Optional[List[ContainerDefinitionOutputTypeDef]] = None + family: Optional[str] = None + taskRoleArn: Optional[str] = None + executionRoleArn: Optional[str] = None + networkMode: Optional[NetworkModeType] = None + revision: Optional[int] = None + volumes: Optional[List[VolumeOutputTypeDef]] = None + status: Optional[TaskDefinitionStatusType] = None + requiresAttributes: Optional[List[AttributeTypeDef]] = None + placementConstraints: Optional[List[TaskDefinitionPlacementConstraintTypeDef]] = None + compatibilities: Optional[List[CompatibilityType]] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + requiresCompatibilities: Optional[List[CompatibilityType]] = None + cpu: Optional[str] = None + memory: Optional[str] = None + inferenceAccelerators: Optional[List[InferenceAcceleratorTypeDef]] = None + pidMode: Optional[PidModeType] = None + ipcMode: Optional[IpcModeType] = None + proxyConfiguration: Optional[ProxyConfigurationOutputTypeDef] = None + registeredAt: Optional[datetime] = None + deregisteredAt: Optional[datetime] = None + registeredBy: Optional[str] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + +class ServiceConnectConfigurationOutputTypeDef(BaseModel): + enabled: bool + namespace: Optional[str] = None + services: Optional[List[ServiceConnectServiceOutputTypeDef]] = None + logConfiguration: Optional[LogConfigurationOutputTypeDef] = None + +class ServiceConnectConfigurationTypeDef(BaseModel): + enabled: bool + namespace: Optional[str] = None + services: Optional[Sequence[ServiceConnectServiceTypeDef]] = None + logConfiguration: Optional[LogConfigurationTypeDef] = None + +class RunTaskRequestRequestTypeDef(BaseModel): + taskDefinition: str + capacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + cluster: Optional[str] = None + count: Optional[int] = None + enableECSManagedTags: Optional[bool] = None + enableExecuteCommand: Optional[bool] = None + group: Optional[str] = None + launchType: Optional[LaunchTypeType] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + overrides: Optional[TaskOverrideTypeDef] = None + placementConstraints: Optional[Sequence[PlacementConstraintTypeDef]] = None + placementStrategy: Optional[Sequence[PlacementStrategyTypeDef]] = None + platformVersion: Optional[str] = None + propagateTags: Optional[PropagateTagsType] = None + referenceId: Optional[str] = None + startedBy: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + clientToken: Optional[str] = None + volumeConfigurations: Optional[Sequence[TaskVolumeConfigurationTypeDef]] = None + +class StartTaskRequestRequestTypeDef(BaseModel): + containerInstances: Sequence[str] + taskDefinition: str + cluster: Optional[str] = None + enableECSManagedTags: Optional[bool] = None + enableExecuteCommand: Optional[bool] = None + group: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + overrides: Optional[TaskOverrideTypeDef] = None + propagateTags: Optional[PropagateTagsType] = None + referenceId: Optional[str] = None + startedBy: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + volumeConfigurations: Optional[Sequence[TaskVolumeConfigurationTypeDef]] = None + +class DescribeTasksResponseTypeDef(BaseModel): + tasks: List[TaskTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RunTaskResponseTypeDef(BaseModel): + tasks: List[TaskTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartTaskResponseTypeDef(BaseModel): + tasks: List[TaskTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopTaskResponseTypeDef(BaseModel): + task: TaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClustersResponseTypeDef(BaseModel): + clusters: List[ClusterTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutClusterCapacityProvidersResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterSettingsResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTaskDefinitionsResponseTypeDef(BaseModel): + taskDefinitions: List[TaskDefinitionTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterTaskDefinitionResponseTypeDef(BaseModel): + taskDefinition: TaskDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTaskDefinitionResponseTypeDef(BaseModel): + taskDefinition: TaskDefinitionTypeDef + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTaskDefinitionResponseTypeDef(BaseModel): + taskDefinition: TaskDefinitionTypeDef + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTaskDefinitionRequestRequestTypeDef(BaseModel): + family: str + containerDefinitions: Sequence[ContainerDefinitionUnionTypeDef] + taskRoleArn: Optional[str] = None + executionRoleArn: Optional[str] = None + networkMode: Optional[NetworkModeType] = None + volumes: Optional[Sequence[VolumeUnionTypeDef]] = None + placementConstraints: Optional[Sequence[TaskDefinitionPlacementConstraintTypeDef]] = None + requiresCompatibilities: Optional[Sequence[CompatibilityType]] = None + cpu: Optional[str] = None + memory: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + pidMode: Optional[PidModeType] = None + ipcMode: Optional[IpcModeType] = None + proxyConfiguration: Optional[ProxyConfigurationTypeDef] = None + inferenceAccelerators: Optional[Sequence[InferenceAcceleratorTypeDef]] = None + ephemeralStorage: Optional[EphemeralStorageTypeDef] = None + runtimePlatform: Optional[RuntimePlatformTypeDef] = None + +class DeploymentTypeDef(BaseModel): + id: Optional[str] = None + status: Optional[str] = None + taskDefinition: Optional[str] = None + desiredCount: Optional[int] = None + pendingCount: Optional[int] = None + runningCount: Optional[int] = None + failedTasks: Optional[int] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + capacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + launchType: Optional[LaunchTypeType] = None + platformVersion: Optional[str] = None + platformFamily: Optional[str] = None + networkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + rolloutState: Optional[DeploymentRolloutStateType] = None + rolloutStateReason: Optional[str] = None + serviceConnectConfiguration: Optional[ServiceConnectConfigurationOutputTypeDef] = None + serviceConnectResources: Optional[List[ServiceConnectServiceResourceTypeDef]] = None + volumeConfigurations: Optional[List[ServiceVolumeConfigurationOutputTypeDef]] = None + fargateEphemeralStorage: Optional[DeploymentEphemeralStorageTypeDef] = None + +class CreateServiceRequestRequestTypeDef(BaseModel): + serviceName: str + cluster: Optional[str] = None + taskDefinition: Optional[str] = None + loadBalancers: Optional[Sequence[LoadBalancerTypeDef]] = None + serviceRegistries: Optional[Sequence[ServiceRegistryTypeDef]] = None + desiredCount: Optional[int] = None + clientToken: Optional[str] = None + launchType: Optional[LaunchTypeType] = None + capacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + platformVersion: Optional[str] = None + role: Optional[str] = None + deploymentConfiguration: Optional[DeploymentConfigurationTypeDef] = None + placementConstraints: Optional[Sequence[PlacementConstraintTypeDef]] = None + placementStrategy: Optional[Sequence[PlacementStrategyTypeDef]] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + healthCheckGracePeriodSeconds: Optional[int] = None + schedulingStrategy: Optional[SchedulingStrategyType] = None + deploymentController: Optional[DeploymentControllerTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + enableECSManagedTags: Optional[bool] = None + propagateTags: Optional[PropagateTagsType] = None + enableExecuteCommand: Optional[bool] = None + serviceConnectConfiguration: Optional[ServiceConnectConfigurationTypeDef] = None + volumeConfigurations: Optional[Sequence[ServiceVolumeConfigurationUnionTypeDef]] = None + +class UpdateServiceRequestRequestTypeDef(BaseModel): + service: str + cluster: Optional[str] = None + desiredCount: Optional[int] = None + taskDefinition: Optional[str] = None + capacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + deploymentConfiguration: Optional[DeploymentConfigurationTypeDef] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + placementConstraints: Optional[Sequence[PlacementConstraintTypeDef]] = None + placementStrategy: Optional[Sequence[PlacementStrategyTypeDef]] = None + platformVersion: Optional[str] = None + forceNewDeployment: Optional[bool] = None + healthCheckGracePeriodSeconds: Optional[int] = None + enableExecuteCommand: Optional[bool] = None + enableECSManagedTags: Optional[bool] = None + loadBalancers: Optional[Sequence[LoadBalancerTypeDef]] = None + propagateTags: Optional[PropagateTagsType] = None + serviceRegistries: Optional[Sequence[ServiceRegistryTypeDef]] = None + serviceConnectConfiguration: Optional[ServiceConnectConfigurationTypeDef] = None + volumeConfigurations: Optional[Sequence[ServiceVolumeConfigurationUnionTypeDef]] = None + +class ServiceTypeDef(BaseModel): + serviceArn: Optional[str] = None + serviceName: Optional[str] = None + clusterArn: Optional[str] = None + loadBalancers: Optional[List[LoadBalancerTypeDef]] = None + serviceRegistries: Optional[List[ServiceRegistryTypeDef]] = None + status: Optional[str] = None + desiredCount: Optional[int] = None + runningCount: Optional[int] = None + pendingCount: Optional[int] = None + launchType: Optional[LaunchTypeType] = None + capacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + platformVersion: Optional[str] = None + platformFamily: Optional[str] = None + taskDefinition: Optional[str] = None + deploymentConfiguration: Optional[DeploymentConfigurationOutputTypeDef] = None + taskSets: Optional[List[TaskSetTypeDef]] = None + deployments: Optional[List[DeploymentTypeDef]] = None + roleArn: Optional[str] = None + events: Optional[List[ServiceEventTypeDef]] = None + createdAt: Optional[datetime] = None + placementConstraints: Optional[List[PlacementConstraintTypeDef]] = None + placementStrategy: Optional[List[PlacementStrategyTypeDef]] = None + networkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + healthCheckGracePeriodSeconds: Optional[int] = None + schedulingStrategy: Optional[SchedulingStrategyType] = None + deploymentController: Optional[DeploymentControllerTypeDef] = None + tags: Optional[List[TagTypeDef]] = None + createdBy: Optional[str] = None + enableECSManagedTags: Optional[bool] = None + propagateTags: Optional[PropagateTagsType] = None + enableExecuteCommand: Optional[bool] = None + +class CreateServiceResponseTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceResponseTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServicesResponseTypeDef(BaseModel): + services: List[ServiceTypeDef] + failures: List[FailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceResponseTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ecs_constants.py b/aws_resource_validator/pydantic_models/ecs_constants.py new file mode 100644 index 00000000..6cb32a46 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ecs_constants.py @@ -0,0 +1,561 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgentUpdateStatusType = Literal["FAILED", "PENDING", "STAGED", "STAGING", "UPDATED", "UPDATING"] +ApplicationProtocolType = Literal["grpc", "http", "http2"] +AssignPublicIpType = Literal["DISABLED", "ENABLED"] +CPUArchitectureType = Literal["ARM64", "X86_64"] +CapacityProviderFieldType = Literal["TAGS"] +CapacityProviderStatusType = Literal["ACTIVE", "INACTIVE"] +CapacityProviderUpdateStatusType = Literal["DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_COMPLETE", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +ClusterFieldType = Literal["ATTACHMENTS", "CONFIGURATIONS", "SETTINGS", "STATISTICS", "TAGS"] +ClusterSettingNameType = Literal["containerInsights"] +CompatibilityType = Literal["EC2", "EXTERNAL", "FARGATE"] +ConnectivityType = Literal["CONNECTED", "DISCONNECTED"] +ContainerConditionType = Literal["COMPLETE", "HEALTHY", "START", "SUCCESS"] +ContainerInstanceFieldType = Literal["CONTAINER_INSTANCE_HEALTH", "TAGS"] +ContainerInstanceStatusType = Literal["ACTIVE", "DEREGISTERING", "DRAINING", "REGISTERING", "REGISTRATION_FAILED"] +DeploymentControllerTypeType = Literal["CODE_DEPLOY", "ECS", "EXTERNAL"] +DeploymentRolloutStateType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +DesiredStatusType = Literal["PENDING", "RUNNING", "STOPPED"] +DeviceCgroupPermissionType = Literal["mknod", "read", "write"] +EBSResourceTypeType = Literal["volume"] +EFSAuthorizationConfigIAMType = Literal["DISABLED", "ENABLED"] +EFSTransitEncryptionType = Literal["DISABLED", "ENABLED"] +EnvironmentFileTypeType = Literal["s3"] +ExecuteCommandLoggingType = Literal["DEFAULT", "NONE", "OVERRIDE"] +FirelensConfigurationTypeType = Literal["fluentbit", "fluentd"] +HealthStatusType = Literal["HEALTHY", "UNHEALTHY", "UNKNOWN"] +InstanceHealthCheckStateType = Literal["IMPAIRED", "INITIALIZING", "INSUFFICIENT_DATA", "OK"] +InstanceHealthCheckTypeType = Literal["CONTAINER_RUNTIME"] +IpcModeType = Literal["host", "none", "task"] +LaunchTypeType = Literal["EC2", "EXTERNAL", "FARGATE"] +ListAccountSettingsPaginatorName = Literal["list_account_settings"] +ListAttributesPaginatorName = Literal["list_attributes"] +ListClustersPaginatorName = Literal["list_clusters"] +ListContainerInstancesPaginatorName = Literal["list_container_instances"] +ListServicesByNamespacePaginatorName = Literal["list_services_by_namespace"] +ListServicesPaginatorName = Literal["list_services"] +ListTaskDefinitionFamiliesPaginatorName = Literal["list_task_definition_families"] +ListTaskDefinitionsPaginatorName = Literal["list_task_definitions"] +ListTasksPaginatorName = Literal["list_tasks"] +LogDriverType = Literal["awsfirelens", "awslogs", "fluentd", "gelf", "journald", "json-file", "splunk", "syslog"] +ManagedAgentNameType = Literal["ExecuteCommandAgent"] +ManagedDrainingType = Literal["DISABLED", "ENABLED"] +ManagedScalingStatusType = Literal["DISABLED", "ENABLED"] +ManagedTerminationProtectionType = Literal["DISABLED", "ENABLED"] +NetworkModeType = Literal["awsvpc", "bridge", "host", "none"] +OSFamilyType = Literal["LINUX", + "WINDOWS_SERVER_2004_CORE", + "WINDOWS_SERVER_2016_FULL", + "WINDOWS_SERVER_2019_CORE", + "WINDOWS_SERVER_2019_FULL", + "WINDOWS_SERVER_2022_CORE", + "WINDOWS_SERVER_2022_FULL", + "WINDOWS_SERVER_20H2_CORE",] +PidModeType = Literal["host", "task"] +PlacementConstraintTypeType = Literal["distinctInstance", "memberOf"] +PlacementStrategyTypeType = Literal["binpack", "random", "spread"] +PlatformDeviceTypeType = Literal["GPU"] +PropagateTagsType = Literal["NONE", "SERVICE", "TASK_DEFINITION"] +ProxyConfigurationTypeType = Literal["APPMESH"] +ResourceTypeType = Literal["GPU", "InferenceAccelerator"] +ScaleUnitType = Literal["PERCENT"] +SchedulingStrategyType = Literal["DAEMON", "REPLICA"] +ScopeType = Literal["shared", "task"] +ServiceFieldType = Literal["TAGS"] +ServicesInactiveWaiterName = Literal["services_inactive"] +ServicesStableWaiterName = Literal["services_stable"] +SettingNameType = Literal["awsvpcTrunking", + "containerInsights", + "containerInstanceLongArnFormat", + "fargateFIPSMode", + "fargateTaskRetirementWaitPeriod", + "guardDutyActivate", + "serviceLongArnFormat", + "tagResourceAuthorization", + "taskLongArnFormat",] +SettingTypeType = Literal["aws_managed", "user"] +SortOrderType = Literal["ASC", "DESC"] +StabilityStatusType = Literal["STABILIZING", "STEADY_STATE"] +TargetTypeType = Literal["container-instance"] +TaskDefinitionFamilyStatusType = Literal["ACTIVE", "ALL", "INACTIVE"] +TaskDefinitionFieldType = Literal["TAGS"] +TaskDefinitionPlacementConstraintTypeType = Literal["memberOf"] +TaskDefinitionStatusType = Literal["ACTIVE", "DELETE_IN_PROGRESS", "INACTIVE"] +TaskFieldType = Literal["TAGS"] +TaskFilesystemTypeType = Literal["ext3", "ext4", "xfs"] +TaskSetFieldType = Literal["TAGS"] +TaskStopCodeType = Literal["EssentialContainerExited", + "ServiceSchedulerInitiated", + "SpotInterruption", + "TaskFailedToStart", + "TerminationNotice", + "UserInitiated",] +TasksRunningWaiterName = Literal["tasks_running"] +TasksStoppedWaiterName = Literal["tasks_stopped"] +TransportProtocolType = Literal["tcp", "udp"] +UlimitNameType = Literal["core", + "cpu", + "data", + "fsize", + "locks", + "memlock", + "msgqueue", + "nice", + "nofile", + "nproc", + "rss", + "rtprio", + "rttime", + "sigpending", + "stack",] +ECSServiceName = Literal["ecs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_account_settings", + "list_attributes", + "list_clusters", + "list_container_instances", + "list_services", + "list_services_by_namespace", + "list_task_definition_families", + "list_task_definitions", + "list_tasks",] +WaiterName = Literal["services_inactive", "services_stable", "tasks_running", "tasks_stopped"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ResourceUnionTypeDef = Union['ResourceTypeDef', 'ResourceOutputTypeDef'] +ProxyConfigurationUnionTypeDef = Union['ProxyConfigurationTypeDef', 'ProxyConfigurationOutputTypeDef'] +NetworkConfigurationUnionTypeDef = Union[ 'NetworkConfigurationTypeDef', 'NetworkConfigurationOutputTypeDef' ] +DeploymentConfigurationUnionTypeDef = Union[ 'DeploymentConfigurationTypeDef', 'DeploymentConfigurationOutputTypeDef' ] +TaskOverrideUnionTypeDef = Union['TaskOverrideTypeDef', 'TaskOverrideOutputTypeDef'] +VolumeUnionTypeDef = Union['VolumeTypeDef', 'VolumeOutputTypeDef'] +ContainerDefinitionUnionTypeDef = Union[ 'ContainerDefinitionTypeDef', 'ContainerDefinitionOutputTypeDef' ] +ServiceVolumeConfigurationUnionTypeDef = Union[ 'ServiceVolumeConfigurationTypeDef', 'ServiceVolumeConfigurationOutputTypeDef' ] +ServiceConnectConfigurationUnionTypeDef = Union[ 'ServiceConnectConfigurationTypeDef', 'ServiceConnectConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/efs_classes.py b/aws_resource_validator/pydantic_models/efs_classes.py new file mode 100644 index 00000000..53673622 --- /dev/null +++ b/aws_resource_validator/pydantic_models/efs_classes.py @@ -0,0 +1,419 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.efs_constants import * + +class PosixUserOutputTypeDef(BaseModel): + Uid: int + Gid: int + SecondaryGids: Optional[List[int]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class BackupPolicyTypeDef(BaseModel): + Status: StatusType + +class PosixUserTypeDef(BaseModel): + Uid: int + Gid: int + SecondaryGids: Optional[Sequence[int]] = None + +class CreateMountTargetRequestRequestTypeDef(BaseModel): + FileSystemId: str + SubnetId: str + IpAddress: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + +class DestinationToCreateTypeDef(BaseModel): + Region: Optional[str] = None + AvailabilityZoneName: Optional[str] = None + KmsKeyId: Optional[str] = None + FileSystemId: Optional[str] = None + +class CreationInfoTypeDef(BaseModel): + OwnerUid: int + OwnerGid: int + Permissions: str + +class DeleteAccessPointRequestRequestTypeDef(BaseModel): + AccessPointId: str + +class DeleteFileSystemPolicyRequestRequestTypeDef(BaseModel): + FileSystemId: str + +class DeleteFileSystemRequestRequestTypeDef(BaseModel): + FileSystemId: str + +class DeleteMountTargetRequestRequestTypeDef(BaseModel): + MountTargetId: str + +class DeleteReplicationConfigurationRequestRequestTypeDef(BaseModel): + SourceFileSystemId: str + +class DeleteTagsRequestRequestTypeDef(BaseModel): + FileSystemId: str + TagKeys: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAccessPointsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AccessPointId: Optional[str] = None + FileSystemId: Optional[str] = None + +class DescribeAccountPreferencesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResourceIdPreferenceTypeDef(BaseModel): + ResourceIdType: Optional[ResourceIdTypeType] = None + Resources: Optional[List[ResourceType]] = None + +class DescribeBackupPolicyRequestRequestTypeDef(BaseModel): + FileSystemId: str + +class DescribeFileSystemPolicyRequestRequestTypeDef(BaseModel): + FileSystemId: str + +class DescribeFileSystemsRequestRequestTypeDef(BaseModel): + MaxItems: Optional[int] = None + Marker: Optional[str] = None + CreationToken: Optional[str] = None + FileSystemId: Optional[str] = None + +class DescribeLifecycleConfigurationRequestRequestTypeDef(BaseModel): + FileSystemId: str + +class DescribeMountTargetSecurityGroupsRequestRequestTypeDef(BaseModel): + MountTargetId: str + +class DescribeMountTargetsRequestRequestTypeDef(BaseModel): + MaxItems: Optional[int] = None + Marker: Optional[str] = None + FileSystemId: Optional[str] = None + MountTargetId: Optional[str] = None + AccessPointId: Optional[str] = None + +class MountTargetDescriptionTypeDef(BaseModel): + MountTargetId: str + FileSystemId: str + SubnetId: str + LifeCycleState: LifeCycleStateType + OwnerId: Optional[str] = None + IpAddress: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + AvailabilityZoneName: Optional[str] = None + VpcId: Optional[str] = None + +class DescribeReplicationConfigurationsRequestRequestTypeDef(BaseModel): + FileSystemId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeTagsRequestRequestTypeDef(BaseModel): + FileSystemId: str + MaxItems: Optional[int] = None + Marker: Optional[str] = None + +class DestinationTypeDef(BaseModel): + Status: ReplicationStatusType + FileSystemId: str + Region: str + LastReplicatedTimestamp: Optional[datetime] = None + +class FileSystemProtectionDescriptionTypeDef(BaseModel): + ReplicationOverwriteProtection: Optional[ReplicationOverwriteProtectionType] = None + +class FileSystemSizeTypeDef(BaseModel): + Value: int + Timestamp: Optional[datetime] = None + ValueInIA: Optional[int] = None + ValueInStandard: Optional[int] = None + ValueInArchive: Optional[int] = None + +class LifecyclePolicyTypeDef(BaseModel): + TransitionToIA: Optional[TransitionToIARulesType] = None + TransitionToPrimaryStorageClass: Optional[Literal["AFTER_1_ACCESS"]] = None + TransitionToArchive: Optional[TransitionToArchiveRulesType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ModifyMountTargetSecurityGroupsRequestRequestTypeDef(BaseModel): + MountTargetId: str + SecurityGroups: Optional[Sequence[str]] = None + +class PosixUserExtraOutputTypeDef(BaseModel): + Uid: int + Gid: int + SecondaryGids: Optional[List[int]] = None + +class PutAccountPreferencesRequestRequestTypeDef(BaseModel): + ResourceIdType: ResourceIdTypeType + +class PutFileSystemPolicyRequestRequestTypeDef(BaseModel): + FileSystemId: str + Policy: str + BypassPolicyLockoutSafetyCheck: Optional[bool] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + TagKeys: Sequence[str] + +class UpdateFileSystemProtectionRequestRequestTypeDef(BaseModel): + FileSystemId: str + ReplicationOverwriteProtection: Optional[ReplicationOverwriteProtectionType] = None + +class UpdateFileSystemRequestRequestTypeDef(BaseModel): + FileSystemId: str + ThroughputMode: Optional[ThroughputModeType] = None + ProvisionedThroughputInMibps: Optional[float] = None + +class DescribeMountTargetSecurityGroupsResponseTypeDef(BaseModel): + SecurityGroups: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class FileSystemPolicyDescriptionTypeDef(BaseModel): + FileSystemId: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class FileSystemProtectionDescriptionResponseTypeDef(BaseModel): + ReplicationOverwriteProtection: ReplicationOverwriteProtectionType + ResponseMetadata: ResponseMetadataTypeDef + +class MountTargetDescriptionResponseTypeDef(BaseModel): + OwnerId: str + MountTargetId: str + FileSystemId: str + SubnetId: str + LifeCycleState: LifeCycleStateType + IpAddress: str + NetworkInterfaceId: str + AvailabilityZoneId: str + AvailabilityZoneName: str + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFileSystemRequestRequestTypeDef(BaseModel): + CreationToken: str + PerformanceMode: Optional[PerformanceModeType] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + ThroughputMode: Optional[ThroughputModeType] = None + ProvisionedThroughputInMibps: Optional[float] = None + AvailabilityZoneName: Optional[str] = None + Backup: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTagsRequestRequestTypeDef(BaseModel): + FileSystemId: str + Tags: Sequence[TagTypeDef] + +class DescribeTagsResponseTypeDef(BaseModel): + Marker: str + Tags: List[TagTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + Tags: Sequence[TagTypeDef] + +class BackupPolicyDescriptionTypeDef(BaseModel): + BackupPolicy: BackupPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBackupPolicyRequestRequestTypeDef(BaseModel): + FileSystemId: str + BackupPolicy: BackupPolicyTypeDef + +class CreateReplicationConfigurationRequestRequestTypeDef(BaseModel): + SourceFileSystemId: str + Destinations: Sequence[DestinationToCreateTypeDef] + +class RootDirectoryTypeDef(BaseModel): + Path: Optional[str] = None + CreationInfo: Optional[CreationInfoTypeDef] = None + +class DescribeAccessPointsRequestDescribeAccessPointsPaginateTypeDef(BaseModel): + AccessPointId: Optional[str] = None + FileSystemId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFileSystemsRequestDescribeFileSystemsPaginateTypeDef(BaseModel): + CreationToken: Optional[str] = None + FileSystemId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMountTargetsRequestDescribeMountTargetsPaginateTypeDef(BaseModel): + FileSystemId: Optional[str] = None + MountTargetId: Optional[str] = None + AccessPointId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTagsRequestDescribeTagsPaginateTypeDef(BaseModel): + FileSystemId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAccountPreferencesResponseTypeDef(BaseModel): + ResourceIdPreference: ResourceIdPreferenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutAccountPreferencesResponseTypeDef(BaseModel): + ResourceIdPreference: ResourceIdPreferenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMountTargetsResponseTypeDef(BaseModel): + Marker: str + MountTargets: List[MountTargetDescriptionTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationConfigurationDescriptionResponseTypeDef(BaseModel): + SourceFileSystemId: str + SourceFileSystemRegion: str + SourceFileSystemArn: str + OriginalSourceFileSystemArn: str + CreationTime: datetime + Destinations: List[DestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationConfigurationDescriptionTypeDef(BaseModel): + SourceFileSystemId: str + SourceFileSystemRegion: str + SourceFileSystemArn: str + OriginalSourceFileSystemArn: str + CreationTime: datetime + Destinations: List[DestinationTypeDef] + +class FileSystemDescriptionResponseTypeDef(BaseModel): + OwnerId: str + CreationToken: str + FileSystemId: str + FileSystemArn: str + CreationTime: datetime + LifeCycleState: LifeCycleStateType + Name: str + NumberOfMountTargets: int + SizeInBytes: FileSystemSizeTypeDef + PerformanceMode: PerformanceModeType + Encrypted: bool + KmsKeyId: str + ThroughputMode: ThroughputModeType + ProvisionedThroughputInMibps: float + AvailabilityZoneName: str + AvailabilityZoneId: str + Tags: List[TagTypeDef] + FileSystemProtection: FileSystemProtectionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FileSystemDescriptionTypeDef(BaseModel): + OwnerId: str + CreationToken: str + FileSystemId: str + CreationTime: datetime + LifeCycleState: LifeCycleStateType + NumberOfMountTargets: int + SizeInBytes: FileSystemSizeTypeDef + PerformanceMode: PerformanceModeType + Tags: List[TagTypeDef] + FileSystemArn: Optional[str] = None + Name: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + ThroughputMode: Optional[ThroughputModeType] = None + ProvisionedThroughputInMibps: Optional[float] = None + AvailabilityZoneName: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + FileSystemProtection: Optional[FileSystemProtectionDescriptionTypeDef] = None + +class LifecycleConfigurationDescriptionTypeDef(BaseModel): + LifecyclePolicies: List[LifecyclePolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutLifecycleConfigurationRequestRequestTypeDef(BaseModel): + FileSystemId: str + LifecyclePolicies: Sequence[LifecyclePolicyTypeDef] + +class AccessPointDescriptionResponseTypeDef(BaseModel): + ClientToken: str + Name: str + Tags: List[TagTypeDef] + AccessPointId: str + AccessPointArn: str + FileSystemId: str + PosixUser: PosixUserOutputTypeDef + RootDirectory: RootDirectoryTypeDef + OwnerId: str + LifeCycleState: LifeCycleStateType + ResponseMetadata: ResponseMetadataTypeDef + +class AccessPointDescriptionTypeDef(BaseModel): + ClientToken: Optional[str] = None + Name: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + AccessPointId: Optional[str] = None + AccessPointArn: Optional[str] = None + FileSystemId: Optional[str] = None + PosixUser: Optional[PosixUserOutputTypeDef] = None + RootDirectory: Optional[RootDirectoryTypeDef] = None + OwnerId: Optional[str] = None + LifeCycleState: Optional[LifeCycleStateType] = None + +class CreateAccessPointRequestRequestTypeDef(BaseModel): + ClientToken: str + FileSystemId: str + Tags: Optional[Sequence[TagTypeDef]] = None + PosixUser: Optional[PosixUserTypeDef] = None + RootDirectory: Optional[RootDirectoryTypeDef] = None + +class DescribeReplicationConfigurationsResponseTypeDef(BaseModel): + Replications: List[ReplicationConfigurationDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFileSystemsResponseTypeDef(BaseModel): + Marker: str + FileSystems: List[FileSystemDescriptionTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccessPointsResponseTypeDef(BaseModel): + AccessPoints: List[AccessPointDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/efs_constants.py b/aws_resource_validator/pydantic_models/efs_constants.py new file mode 100644 index 00000000..2ba8ee15 --- /dev/null +++ b/aws_resource_validator/pydantic_models/efs_constants.py @@ -0,0 +1,466 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeAccessPointsPaginatorName = Literal["describe_access_points"] +DescribeFileSystemsPaginatorName = Literal["describe_file_systems"] +DescribeMountTargetsPaginatorName = Literal["describe_mount_targets"] +DescribeReplicationConfigurationsPaginatorName = Literal["describe_replication_configurations"] +DescribeTagsPaginatorName = Literal["describe_tags"] +LifeCycleStateType = Literal["available", "creating", "deleted", "deleting", "error", "updating"] +PerformanceModeType = Literal["generalPurpose", "maxIO"] +ReplicationOverwriteProtectionType = Literal["DISABLED", "ENABLED", "REPLICATING"] +ReplicationStatusType = Literal["DELETING", "ENABLED", "ENABLING", "ERROR", "PAUSED", "PAUSING"] +ResourceIdTypeType = Literal["LONG_ID", "SHORT_ID"] +ResourceType = Literal["FILE_SYSTEM", "MOUNT_TARGET"] +StatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING"] +ThroughputModeType = Literal["bursting", "elastic", "provisioned"] +TransitionToArchiveRulesType = Literal["AFTER_14_DAYS", + "AFTER_180_DAYS", + "AFTER_1_DAY", + "AFTER_270_DAYS", + "AFTER_30_DAYS", + "AFTER_365_DAYS", + "AFTER_60_DAYS", + "AFTER_7_DAYS", + "AFTER_90_DAYS",] +TransitionToIARulesType = Literal["AFTER_14_DAYS", + "AFTER_180_DAYS", + "AFTER_1_DAY", + "AFTER_270_DAYS", + "AFTER_30_DAYS", + "AFTER_365_DAYS", + "AFTER_60_DAYS", + "AFTER_7_DAYS", + "AFTER_90_DAYS",] +TransitionToPrimaryStorageClassRulesType = Literal["AFTER_1_ACCESS"] +EFSServiceName = Literal["efs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_access_points", + "describe_file_systems", + "describe_mount_targets", + "describe_replication_configurations", + "describe_tags",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +PosixUserUnionTypeDef = Union['PosixUserTypeDef', 'PosixUserExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/eks_auth_classes.py b/aws_resource_validator/pydantic_models/eks_auth_classes.py new file mode 100644 index 00000000..ea756acc --- /dev/null +++ b/aws_resource_validator/pydantic_models/eks_auth_classes.py @@ -0,0 +1,50 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.eks_auth_constants import * + +class AssumeRoleForPodIdentityRequestRequestTypeDef(BaseModel): + clusterName: str + token: str + +class AssumedRoleUserTypeDef(BaseModel): + arn: str + assumeRoleId: str + +class CredentialsTypeDef(BaseModel): + sessionToken: str + secretAccessKey: str + accessKeyId: str + expiration: datetime + +class PodIdentityAssociationTypeDef(BaseModel): + associationArn: str + associationId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class SubjectTypeDef(BaseModel): + namespace: str + serviceAccount: str + +class AssumeRoleForPodIdentityResponseTypeDef(BaseModel): + subject: SubjectTypeDef + audience: str + podIdentityAssociation: PodIdentityAssociationTypeDef + assumedRoleUser: AssumedRoleUserTypeDef + credentials: CredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/eks_auth_constants.py b/aws_resource_validator/pydantic_models/eks_auth_constants.py new file mode 100644 index 00000000..8c3196c8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/eks_auth_constants.py @@ -0,0 +1,388 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EKSAuthServiceName = Literal["eks-auth"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/eks_classes.py b/aws_resource_validator/pydantic_models/eks_classes.py new file mode 100644 index 00000000..c8fdefcd --- /dev/null +++ b/aws_resource_validator/pydantic_models/eks_classes.py @@ -0,0 +1,1149 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.eks_constants import * + +class AccessConfigResponseTypeDef(BaseModel): + bootstrapClusterCreatorAdminPermissions: Optional[bool] = None + authenticationMode: Optional[AuthenticationModeType] = None + +class AccessEntryTypeDef(BaseModel): + clusterName: Optional[str] = None + principalArn: Optional[str] = None + kubernetesGroups: Optional[List[str]] = None + accessEntryArn: Optional[str] = None + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + username: Optional[str] = None + type: Optional[str] = None + +class AccessPolicyTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + +class AccessScopeExtraOutputTypeDef(BaseModel): + type: Optional[AccessScopeTypeType] = None + namespaces: Optional[List[str]] = None + +class AccessScopeOutputTypeDef(BaseModel): + type: Optional[AccessScopeTypeType] = None + namespaces: Optional[List[str]] = None + +class AccessScopeTypeDef(BaseModel): + type: Optional[AccessScopeTypeType] = None + namespaces: Optional[Sequence[str]] = None + +class AddonIssueTypeDef(BaseModel): + code: Optional[AddonIssueCodeType] = None + message: Optional[str] = None + resourceIds: Optional[List[str]] = None + +class MarketplaceInformationTypeDef(BaseModel): + productId: Optional[str] = None + productUrl: Optional[str] = None + +class AddonPodIdentityAssociationsTypeDef(BaseModel): + serviceAccount: str + roleArn: str + +class AddonPodIdentityConfigurationTypeDef(BaseModel): + serviceAccount: Optional[str] = None + recommendedManagedPolicies: Optional[List[str]] = None + +class CompatibilityTypeDef(BaseModel): + clusterVersion: Optional[str] = None + platformVersions: Optional[List[str]] = None + defaultVersion: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class OidcIdentityProviderConfigRequestTypeDef(BaseModel): + identityProviderConfigName: str + issuerUrl: str + clientId: str + usernameClaim: Optional[str] = None + usernamePrefix: Optional[str] = None + groupsClaim: Optional[str] = None + groupsPrefix: Optional[str] = None + requiredClaims: Optional[Mapping[str, str]] = None + +class AutoScalingGroupTypeDef(BaseModel): + name: Optional[str] = None + +class CertificateTypeDef(BaseModel): + data: Optional[str] = None + +class ClientStatTypeDef(BaseModel): + userAgent: Optional[str] = None + numberOfRequestsLast30Days: Optional[int] = None + lastRequestTime: Optional[datetime] = None + +class ClusterIssueTypeDef(BaseModel): + code: Optional[ClusterIssueCodeType] = None + message: Optional[str] = None + resourceIds: Optional[List[str]] = None + +class ConnectorConfigResponseTypeDef(BaseModel): + activationId: Optional[str] = None + activationCode: Optional[str] = None + activationExpiry: Optional[datetime] = None + provider: Optional[str] = None + roleArn: Optional[str] = None + +class KubernetesNetworkConfigResponseTypeDef(BaseModel): + serviceIpv4Cidr: Optional[str] = None + serviceIpv6Cidr: Optional[str] = None + ipFamily: Optional[IpFamilyType] = None + +class VpcConfigResponseTypeDef(BaseModel): + subnetIds: Optional[List[str]] = None + securityGroupIds: Optional[List[str]] = None + clusterSecurityGroupId: Optional[str] = None + vpcId: Optional[str] = None + endpointPublicAccess: Optional[bool] = None + endpointPrivateAccess: Optional[bool] = None + publicAccessCidrs: Optional[List[str]] = None + +class ConnectorConfigRequestTypeDef(BaseModel): + roleArn: str + provider: ConnectorConfigProviderType + +class ControlPlanePlacementRequestTypeDef(BaseModel): + groupName: Optional[str] = None + +class ControlPlanePlacementResponseTypeDef(BaseModel): + groupName: Optional[str] = None + +class CreateAccessConfigRequestTypeDef(BaseModel): + bootstrapClusterCreatorAdminPermissions: Optional[bool] = None + authenticationMode: Optional[AuthenticationModeType] = None + +class CreateAccessEntryRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + kubernetesGroups: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + clientRequestToken: Optional[str] = None + username: Optional[str] = None + type: Optional[str] = None + +class KubernetesNetworkConfigRequestTypeDef(BaseModel): + serviceIpv4Cidr: Optional[str] = None + ipFamily: Optional[IpFamilyType] = None + +class VpcConfigRequestTypeDef(BaseModel): + subnetIds: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + endpointPublicAccess: Optional[bool] = None + endpointPrivateAccess: Optional[bool] = None + publicAccessCidrs: Optional[Sequence[str]] = None + +class EksAnywhereSubscriptionTermTypeDef(BaseModel): + duration: Optional[int] = None + unit: Optional[Literal["MONTHS"]] = None + +class LaunchTemplateSpecificationTypeDef(BaseModel): + name: Optional[str] = None + version: Optional[str] = None + id: Optional[str] = None + +class NodegroupScalingConfigTypeDef(BaseModel): + minSize: Optional[int] = None + maxSize: Optional[int] = None + desiredSize: Optional[int] = None + +class NodegroupUpdateConfigTypeDef(BaseModel): + maxUnavailable: Optional[int] = None + maxUnavailablePercentage: Optional[int] = None + +class RemoteAccessConfigTypeDef(BaseModel): + ec2SshKey: Optional[str] = None + sourceSecurityGroups: Optional[Sequence[str]] = None + +class TaintTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + effect: Optional[TaintEffectType] = None + +class CreatePodIdentityAssociationRequestRequestTypeDef(BaseModel): + clusterName: str + namespace: str + serviceAccount: str + roleArn: str + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class PodIdentityAssociationTypeDef(BaseModel): + clusterName: Optional[str] = None + namespace: Optional[str] = None + serviceAccount: Optional[str] = None + roleArn: Optional[str] = None + associationArn: Optional[str] = None + associationId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + ownerArn: Optional[str] = None + +class DeleteAccessEntryRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + +class DeleteAddonRequestRequestTypeDef(BaseModel): + clusterName: str + addonName: str + preserve: Optional[bool] = None + +class DeleteClusterRequestRequestTypeDef(BaseModel): + name: str + +class DeleteEksAnywhereSubscriptionRequestRequestTypeDef(BaseModel): + id: str + +class DeleteFargateProfileRequestRequestTypeDef(BaseModel): + clusterName: str + fargateProfileName: str + +class DeleteNodegroupRequestRequestTypeDef(BaseModel): + clusterName: str + nodegroupName: str + +class DeletePodIdentityAssociationRequestRequestTypeDef(BaseModel): + clusterName: str + associationId: str + +class DeregisterClusterRequestRequestTypeDef(BaseModel): + name: str + +class DescribeAccessEntryRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + +class DescribeAddonConfigurationRequestRequestTypeDef(BaseModel): + addonName: str + addonVersion: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeAddonRequestRequestTypeDef(BaseModel): + clusterName: str + addonName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAddonVersionsRequestRequestTypeDef(BaseModel): + kubernetesVersion: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + addonName: Optional[str] = None + types: Optional[Sequence[str]] = None + publishers: Optional[Sequence[str]] = None + owners: Optional[Sequence[str]] = None + +class DescribeClusterRequestRequestTypeDef(BaseModel): + name: str + +class DescribeEksAnywhereSubscriptionRequestRequestTypeDef(BaseModel): + id: str + +class DescribeFargateProfileRequestRequestTypeDef(BaseModel): + clusterName: str + fargateProfileName: str + +class IdentityProviderConfigTypeDef(BaseModel): + type: str + name: str + +class DescribeInsightRequestRequestTypeDef(BaseModel): + clusterName: str + id: str + +class DescribeNodegroupRequestRequestTypeDef(BaseModel): + clusterName: str + nodegroupName: str + +class DescribePodIdentityAssociationRequestRequestTypeDef(BaseModel): + clusterName: str + associationId: str + +class DescribeUpdateRequestRequestTypeDef(BaseModel): + name: str + updateId: str + nodegroupName: Optional[str] = None + addonName: Optional[str] = None + +class DisassociateAccessPolicyRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + policyArn: str + +class ProviderTypeDef(BaseModel): + keyArn: Optional[str] = None + +class ErrorDetailTypeDef(BaseModel): + errorCode: Optional[ErrorCodeType] = None + errorMessage: Optional[str] = None + resourceIds: Optional[List[str]] = None + +class FargateProfileIssueTypeDef(BaseModel): + code: Optional[FargateProfileIssueCodeType] = None + message: Optional[str] = None + resourceIds: Optional[List[str]] = None + +class FargateProfileSelectorOutputTypeDef(BaseModel): + namespace: Optional[str] = None + labels: Optional[Dict[str, str]] = None + +class FargateProfileSelectorTypeDef(BaseModel): + namespace: Optional[str] = None + labels: Optional[Mapping[str, str]] = None + +class OidcIdentityProviderConfigTypeDef(BaseModel): + identityProviderConfigName: Optional[str] = None + identityProviderConfigArn: Optional[str] = None + clusterName: Optional[str] = None + issuerUrl: Optional[str] = None + clientId: Optional[str] = None + usernameClaim: Optional[str] = None + usernamePrefix: Optional[str] = None + groupsClaim: Optional[str] = None + groupsPrefix: Optional[str] = None + requiredClaims: Optional[Dict[str, str]] = None + tags: Optional[Dict[str, str]] = None + status: Optional[ConfigStatusType] = None + +class OIDCTypeDef(BaseModel): + issuer: Optional[str] = None + +class InsightStatusTypeDef(BaseModel): + status: Optional[InsightStatusValueType] = None + reason: Optional[str] = None + +class InsightsFilterTypeDef(BaseModel): + categories: Optional[Sequence[Literal["UPGRADE_READINESS"]]] = None + kubernetesVersions: Optional[Sequence[str]] = None + statuses: Optional[Sequence[InsightStatusValueType]] = None + +class IssueTypeDef(BaseModel): + code: Optional[NodegroupIssueCodeType] = None + message: Optional[str] = None + resourceIds: Optional[List[str]] = None + +class ListAccessEntriesRequestRequestTypeDef(BaseModel): + clusterName: str + associatedPolicyArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAccessPoliciesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAddonsRequestRequestTypeDef(BaseModel): + clusterName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAssociatedAccessPoliciesRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListClustersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + include: Optional[Sequence[str]] = None + +class ListEksAnywhereSubscriptionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + includeStatus: Optional[Sequence[EksAnywhereSubscriptionStatusType]] = None + +class ListFargateProfilesRequestRequestTypeDef(BaseModel): + clusterName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIdentityProviderConfigsRequestRequestTypeDef(BaseModel): + clusterName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListNodegroupsRequestRequestTypeDef(BaseModel): + clusterName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListPodIdentityAssociationsRequestRequestTypeDef(BaseModel): + clusterName: str + namespace: Optional[str] = None + serviceAccount: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PodIdentityAssociationSummaryTypeDef(BaseModel): + clusterName: Optional[str] = None + namespace: Optional[str] = None + serviceAccount: Optional[str] = None + associationArn: Optional[str] = None + associationId: Optional[str] = None + ownerArn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListUpdatesRequestRequestTypeDef(BaseModel): + name: str + nodegroupName: Optional[str] = None + addonName: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class LogSetupOutputTypeDef(BaseModel): + types: Optional[List[LogTypeType]] = None + enabled: Optional[bool] = None + +class LogSetupTypeDef(BaseModel): + types: Optional[Sequence[LogTypeType]] = None + enabled: Optional[bool] = None + +class RemoteAccessConfigOutputTypeDef(BaseModel): + ec2SshKey: Optional[str] = None + sourceSecurityGroups: Optional[List[str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAccessConfigRequestTypeDef(BaseModel): + authenticationMode: Optional[AuthenticationModeType] = None + +class UpdateAccessEntryRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + kubernetesGroups: Optional[Sequence[str]] = None + clientRequestToken: Optional[str] = None + username: Optional[str] = None + +class UpdateClusterVersionRequestRequestTypeDef(BaseModel): + name: str + version: str + clientRequestToken: Optional[str] = None + +class UpdateEksAnywhereSubscriptionRequestRequestTypeDef(BaseModel): + id: str + autoRenew: bool + clientRequestToken: Optional[str] = None + +class UpdateLabelsPayloadTypeDef(BaseModel): + addOrUpdateLabels: Optional[Mapping[str, str]] = None + removeLabels: Optional[Sequence[str]] = None + +class UpdateParamTypeDef(BaseModel): + type: Optional[UpdateParamTypeType] = None + value: Optional[str] = None + +class UpdatePodIdentityAssociationRequestRequestTypeDef(BaseModel): + clusterName: str + associationId: str + roleArn: Optional[str] = None + clientRequestToken: Optional[str] = None + +class AssociatedAccessPolicyTypeDef(BaseModel): + policyArn: Optional[str] = None + accessScope: Optional[AccessScopeOutputTypeDef] = None + associatedAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + +class AssociateAccessPolicyRequestRequestTypeDef(BaseModel): + clusterName: str + principalArn: str + policyArn: str + accessScope: AccessScopeTypeDef + +class AddonHealthTypeDef(BaseModel): + issues: Optional[List[AddonIssueTypeDef]] = None + +class CreateAddonRequestRequestTypeDef(BaseModel): + clusterName: str + addonName: str + addonVersion: Optional[str] = None + serviceAccountRoleArn: Optional[str] = None + resolveConflicts: Optional[ResolveConflictsType] = None + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + configurationValues: Optional[str] = None + podIdentityAssociations: Optional[Sequence[AddonPodIdentityAssociationsTypeDef]] = None + +class UpdateAddonRequestRequestTypeDef(BaseModel): + clusterName: str + addonName: str + addonVersion: Optional[str] = None + serviceAccountRoleArn: Optional[str] = None + resolveConflicts: Optional[ResolveConflictsType] = None + clientRequestToken: Optional[str] = None + configurationValues: Optional[str] = None + podIdentityAssociations: Optional[Sequence[AddonPodIdentityAssociationsTypeDef]] = None + +class AddonVersionInfoTypeDef(BaseModel): + addonVersion: Optional[str] = None + architecture: Optional[List[str]] = None + compatibilities: Optional[List[CompatibilityTypeDef]] = None + requiresConfiguration: Optional[bool] = None + requiresIamPermissions: Optional[bool] = None + +class CreateAccessEntryResponseTypeDef(BaseModel): + accessEntry: AccessEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccessEntryResponseTypeDef(BaseModel): + accessEntry: AccessEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddonConfigurationResponseTypeDef(BaseModel): + addonName: str + addonVersion: str + configurationSchema: str + podIdentityConfiguration: List[AddonPodIdentityConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessEntriesResponseTypeDef(BaseModel): + accessEntries: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessPoliciesResponseTypeDef(BaseModel): + accessPolicies: List[AccessPolicyTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAddonsResponseTypeDef(BaseModel): + addons: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersResponseTypeDef(BaseModel): + clusters: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFargateProfilesResponseTypeDef(BaseModel): + fargateProfileNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListNodegroupsResponseTypeDef(BaseModel): + nodegroups: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListUpdatesResponseTypeDef(BaseModel): + updateIds: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessEntryResponseTypeDef(BaseModel): + accessEntry: AccessEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateIdentityProviderConfigRequestRequestTypeDef(BaseModel): + clusterName: str + oidc: OidcIdentityProviderConfigRequestTypeDef + tags: Optional[Mapping[str, str]] = None + clientRequestToken: Optional[str] = None + +class NodegroupResourcesTypeDef(BaseModel): + autoScalingGroups: Optional[List[AutoScalingGroupTypeDef]] = None + remoteAccessSecurityGroup: Optional[str] = None + +class DeprecationDetailTypeDef(BaseModel): + usage: Optional[str] = None + replacedWith: Optional[str] = None + stopServingVersion: Optional[str] = None + startServingReplacementVersion: Optional[str] = None + clientStats: Optional[List[ClientStatTypeDef]] = None + +class ClusterHealthTypeDef(BaseModel): + issues: Optional[List[ClusterIssueTypeDef]] = None + +class RegisterClusterRequestRequestTypeDef(BaseModel): + name: str + connectorConfig: ConnectorConfigRequestTypeDef + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class OutpostConfigRequestTypeDef(BaseModel): + outpostArns: Sequence[str] + controlPlaneInstanceType: str + controlPlanePlacement: Optional[ControlPlanePlacementRequestTypeDef] = None + +class OutpostConfigResponseTypeDef(BaseModel): + outpostArns: List[str] + controlPlaneInstanceType: str + controlPlanePlacement: Optional[ControlPlanePlacementResponseTypeDef] = None + +class CreateEksAnywhereSubscriptionRequestRequestTypeDef(BaseModel): + name: str + term: EksAnywhereSubscriptionTermTypeDef + licenseQuantity: Optional[int] = None + licenseType: Optional[Literal["Cluster"]] = None + autoRenew: Optional[bool] = None + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class EksAnywhereSubscriptionTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + effectiveDate: Optional[datetime] = None + expirationDate: Optional[datetime] = None + licenseQuantity: Optional[int] = None + licenseType: Optional[Literal["Cluster"]] = None + term: Optional[EksAnywhereSubscriptionTermTypeDef] = None + status: Optional[str] = None + autoRenew: Optional[bool] = None + licenseArns: Optional[List[str]] = None + tags: Optional[Dict[str, str]] = None + +class UpdateNodegroupVersionRequestRequestTypeDef(BaseModel): + clusterName: str + nodegroupName: str + version: Optional[str] = None + releaseVersion: Optional[str] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + force: Optional[bool] = None + clientRequestToken: Optional[str] = None + +class CreateNodegroupRequestRequestTypeDef(BaseModel): + clusterName: str + nodegroupName: str + subnets: Sequence[str] + nodeRole: str + scalingConfig: Optional[NodegroupScalingConfigTypeDef] = None + diskSize: Optional[int] = None + instanceTypes: Optional[Sequence[str]] = None + amiType: Optional[AMITypesType] = None + remoteAccess: Optional[RemoteAccessConfigTypeDef] = None + labels: Optional[Mapping[str, str]] = None + taints: Optional[Sequence[TaintTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + clientRequestToken: Optional[str] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + updateConfig: Optional[NodegroupUpdateConfigTypeDef] = None + capacityType: Optional[CapacityTypesType] = None + version: Optional[str] = None + releaseVersion: Optional[str] = None + +class UpdateTaintsPayloadTypeDef(BaseModel): + addOrUpdateTaints: Optional[Sequence[TaintTypeDef]] = None + removeTaints: Optional[Sequence[TaintTypeDef]] = None + +class CreatePodIdentityAssociationResponseTypeDef(BaseModel): + association: PodIdentityAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePodIdentityAssociationResponseTypeDef(BaseModel): + association: PodIdentityAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePodIdentityAssociationResponseTypeDef(BaseModel): + association: PodIdentityAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePodIdentityAssociationResponseTypeDef(BaseModel): + association: PodIdentityAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddonRequestAddonActiveWaitTypeDef(BaseModel): + clusterName: str + addonName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeAddonRequestAddonDeletedWaitTypeDef(BaseModel): + clusterName: str + addonName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClusterRequestClusterActiveWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClusterRequestClusterDeletedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeFargateProfileRequestFargateProfileActiveWaitTypeDef(BaseModel): + clusterName: str + fargateProfileName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeFargateProfileRequestFargateProfileDeletedWaitTypeDef(BaseModel): + clusterName: str + fargateProfileName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNodegroupRequestNodegroupActiveWaitTypeDef(BaseModel): + clusterName: str + nodegroupName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNodegroupRequestNodegroupDeletedWaitTypeDef(BaseModel): + clusterName: str + nodegroupName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeAddonVersionsRequestDescribeAddonVersionsPaginateTypeDef(BaseModel): + kubernetesVersion: Optional[str] = None + addonName: Optional[str] = None + types: Optional[Sequence[str]] = None + publishers: Optional[Sequence[str]] = None + owners: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessEntriesRequestListAccessEntriesPaginateTypeDef(BaseModel): + clusterName: str + associatedPolicyArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessPoliciesRequestListAccessPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAddonsRequestListAddonsPaginateTypeDef(BaseModel): + clusterName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedAccessPoliciesRequestListAssociatedAccessPoliciesPaginateTypeDef(BaseModel): + clusterName: str + principalArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersRequestListClustersPaginateTypeDef(BaseModel): + include: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEksAnywhereSubscriptionsRequestListEksAnywhereSubscriptionsPaginateTypeDef(BaseModel): + includeStatus: Optional[Sequence[EksAnywhereSubscriptionStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFargateProfilesRequestListFargateProfilesPaginateTypeDef(BaseModel): + clusterName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIdentityProviderConfigsRequestListIdentityProviderConfigsPaginateTypeDef(BaseModel): + clusterName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNodegroupsRequestListNodegroupsPaginateTypeDef(BaseModel): + clusterName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPodIdentityAssociationsRequestListPodIdentityAssociationsPaginateTypeDef(BaseModel): + clusterName: str + namespace: Optional[str] = None + serviceAccount: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUpdatesRequestListUpdatesPaginateTypeDef(BaseModel): + name: str + nodegroupName: Optional[str] = None + addonName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIdentityProviderConfigRequestRequestTypeDef(BaseModel): + clusterName: str + identityProviderConfig: IdentityProviderConfigTypeDef + +class DisassociateIdentityProviderConfigRequestRequestTypeDef(BaseModel): + clusterName: str + identityProviderConfig: IdentityProviderConfigTypeDef + clientRequestToken: Optional[str] = None + +class ListIdentityProviderConfigsResponseTypeDef(BaseModel): + identityProviderConfigs: List[IdentityProviderConfigTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EncryptionConfigOutputTypeDef(BaseModel): + resources: Optional[List[str]] = None + provider: Optional[ProviderTypeDef] = None + +class EncryptionConfigTypeDef(BaseModel): + resources: Optional[Sequence[str]] = None + provider: Optional[ProviderTypeDef] = None + +class FargateProfileHealthTypeDef(BaseModel): + issues: Optional[List[FargateProfileIssueTypeDef]] = None + +class IdentityProviderConfigResponseTypeDef(BaseModel): + oidc: Optional[OidcIdentityProviderConfigTypeDef] = None + +class IdentityTypeDef(BaseModel): + oidc: Optional[OIDCTypeDef] = None + +class InsightResourceDetailTypeDef(BaseModel): + insightStatus: Optional[InsightStatusTypeDef] = None + kubernetesResourceUri: Optional[str] = None + arn: Optional[str] = None + +class InsightSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + category: Optional[Literal["UPGRADE_READINESS"]] = None + kubernetesVersion: Optional[str] = None + lastRefreshTime: Optional[datetime] = None + lastTransitionTime: Optional[datetime] = None + description: Optional[str] = None + insightStatus: Optional[InsightStatusTypeDef] = None + +class ListInsightsRequestListInsightsPaginateTypeDef(BaseModel): + clusterName: str + filter: Optional[InsightsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInsightsRequestRequestTypeDef(BaseModel): + clusterName: str + filter: Optional[InsightsFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class NodegroupHealthTypeDef(BaseModel): + issues: Optional[List[IssueTypeDef]] = None + +class ListPodIdentityAssociationsResponseTypeDef(BaseModel): + associations: List[PodIdentityAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingOutputTypeDef(BaseModel): + clusterLogging: Optional[List[LogSetupOutputTypeDef]] = None + +class LoggingTypeDef(BaseModel): + clusterLogging: Optional[Sequence[LogSetupTypeDef]] = None + +class UpdateTypeDef(BaseModel): + id: Optional[str] = None + status: Optional[UpdateStatusType] = None + type: Optional[UpdateTypeType] = None + params: Optional[List[UpdateParamTypeDef]] = None + createdAt: Optional[datetime] = None + errors: Optional[List[ErrorDetailTypeDef]] = None + +class AssociateAccessPolicyResponseTypeDef(BaseModel): + clusterName: str + principalArn: str + associatedAccessPolicy: AssociatedAccessPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedAccessPoliciesResponseTypeDef(BaseModel): + clusterName: str + principalArn: str + nextToken: str + associatedAccessPolicies: List[AssociatedAccessPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AddonTypeDef(BaseModel): + addonName: Optional[str] = None + clusterName: Optional[str] = None + status: Optional[AddonStatusType] = None + addonVersion: Optional[str] = None + health: Optional[AddonHealthTypeDef] = None + addonArn: Optional[str] = None + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + serviceAccountRoleArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + publisher: Optional[str] = None + owner: Optional[str] = None + marketplaceInformation: Optional[MarketplaceInformationTypeDef] = None + configurationValues: Optional[str] = None + podIdentityAssociations: Optional[List[str]] = None + +class AddonInfoTypeDef(BaseModel): + addonName: Optional[str] = None + type: Optional[str] = None + addonVersions: Optional[List[AddonVersionInfoTypeDef]] = None + publisher: Optional[str] = None + owner: Optional[str] = None + marketplaceInformation: Optional[MarketplaceInformationTypeDef] = None + +class InsightCategorySpecificSummaryTypeDef(BaseModel): + deprecationDetails: Optional[List[DeprecationDetailTypeDef]] = None + +class CreateEksAnywhereSubscriptionResponseTypeDef(BaseModel): + subscription: EksAnywhereSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEksAnywhereSubscriptionResponseTypeDef(BaseModel): + subscription: EksAnywhereSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEksAnywhereSubscriptionResponseTypeDef(BaseModel): + subscription: EksAnywhereSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEksAnywhereSubscriptionsResponseTypeDef(BaseModel): + subscriptions: List[EksAnywhereSubscriptionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEksAnywhereSubscriptionResponseTypeDef(BaseModel): + subscription: EksAnywhereSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNodegroupConfigRequestRequestTypeDef(BaseModel): + clusterName: str + nodegroupName: str + labels: Optional[UpdateLabelsPayloadTypeDef] = None + taints: Optional[UpdateTaintsPayloadTypeDef] = None + scalingConfig: Optional[NodegroupScalingConfigTypeDef] = None + updateConfig: Optional[NodegroupUpdateConfigTypeDef] = None + clientRequestToken: Optional[str] = None + +class FargateProfileTypeDef(BaseModel): + fargateProfileName: Optional[str] = None + fargateProfileArn: Optional[str] = None + clusterName: Optional[str] = None + createdAt: Optional[datetime] = None + podExecutionRoleArn: Optional[str] = None + subnets: Optional[List[str]] = None + selectors: Optional[List[FargateProfileSelectorOutputTypeDef]] = None + status: Optional[FargateProfileStatusType] = None + tags: Optional[Dict[str, str]] = None + health: Optional[FargateProfileHealthTypeDef] = None + +class CreateFargateProfileRequestRequestTypeDef(BaseModel): + fargateProfileName: str + clusterName: str + podExecutionRoleArn: str + subnets: Optional[Sequence[str]] = None + selectors: Optional[Sequence[FargateProfileSelectorUnionTypeDef]] = None + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DescribeIdentityProviderConfigResponseTypeDef(BaseModel): + identityProviderConfig: IdentityProviderConfigResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInsightsResponseTypeDef(BaseModel): + insights: List[InsightSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NodegroupTypeDef(BaseModel): + nodegroupName: Optional[str] = None + nodegroupArn: Optional[str] = None + clusterName: Optional[str] = None + version: Optional[str] = None + releaseVersion: Optional[str] = None + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + status: Optional[NodegroupStatusType] = None + capacityType: Optional[CapacityTypesType] = None + scalingConfig: Optional[NodegroupScalingConfigTypeDef] = None + instanceTypes: Optional[List[str]] = None + subnets: Optional[List[str]] = None + remoteAccess: Optional[RemoteAccessConfigOutputTypeDef] = None + amiType: Optional[AMITypesType] = None + nodeRole: Optional[str] = None + labels: Optional[Dict[str, str]] = None + taints: Optional[List[TaintTypeDef]] = None + resources: Optional[NodegroupResourcesTypeDef] = None + diskSize: Optional[int] = None + health: Optional[NodegroupHealthTypeDef] = None + updateConfig: Optional[NodegroupUpdateConfigTypeDef] = None + launchTemplate: Optional[LaunchTemplateSpecificationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class ClusterTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + version: Optional[str] = None + endpoint: Optional[str] = None + roleArn: Optional[str] = None + resourcesVpcConfig: Optional[VpcConfigResponseTypeDef] = None + kubernetesNetworkConfig: Optional[KubernetesNetworkConfigResponseTypeDef] = None + logging: Optional[LoggingOutputTypeDef] = None + identity: Optional[IdentityTypeDef] = None + status: Optional[ClusterStatusType] = None + certificateAuthority: Optional[CertificateTypeDef] = None + clientRequestToken: Optional[str] = None + platformVersion: Optional[str] = None + tags: Optional[Dict[str, str]] = None + encryptionConfig: Optional[List[EncryptionConfigOutputTypeDef]] = None + connectorConfig: Optional[ConnectorConfigResponseTypeDef] = None + id: Optional[str] = None + health: Optional[ClusterHealthTypeDef] = None + outpostConfig: Optional[OutpostConfigResponseTypeDef] = None + accessConfig: Optional[AccessConfigResponseTypeDef] = None + +class UpdateClusterConfigRequestRequestTypeDef(BaseModel): + name: str + resourcesVpcConfig: Optional[VpcConfigRequestTypeDef] = None + logging: Optional[LoggingTypeDef] = None + clientRequestToken: Optional[str] = None + accessConfig: Optional[UpdateAccessConfigRequestTypeDef] = None + +class AssociateEncryptionConfigResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateIdentityProviderConfigResponseTypeDef(BaseModel): + update: UpdateTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUpdateResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateIdentityProviderConfigResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAddonResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterConfigResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterVersionResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNodegroupConfigResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNodegroupVersionResponseTypeDef(BaseModel): + update: UpdateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAddonResponseTypeDef(BaseModel): + addon: AddonTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAddonResponseTypeDef(BaseModel): + addon: AddonTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddonResponseTypeDef(BaseModel): + addon: AddonTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddonVersionsResponseTypeDef(BaseModel): + addons: List[AddonInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InsightTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + category: Optional[Literal["UPGRADE_READINESS"]] = None + kubernetesVersion: Optional[str] = None + lastRefreshTime: Optional[datetime] = None + lastTransitionTime: Optional[datetime] = None + description: Optional[str] = None + insightStatus: Optional[InsightStatusTypeDef] = None + recommendation: Optional[str] = None + additionalInfo: Optional[Dict[str, str]] = None + resources: Optional[List[InsightResourceDetailTypeDef]] = None + categorySpecificSummary: Optional[InsightCategorySpecificSummaryTypeDef] = None + +class AssociateEncryptionConfigRequestRequestTypeDef(BaseModel): + clusterName: str + encryptionConfig: Sequence[EncryptionConfigUnionTypeDef] + clientRequestToken: Optional[str] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + name: str + roleArn: str + resourcesVpcConfig: VpcConfigRequestTypeDef + version: Optional[str] = None + kubernetesNetworkConfig: Optional[KubernetesNetworkConfigRequestTypeDef] = None + logging: Optional[LoggingTypeDef] = None + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + encryptionConfig: Optional[Sequence[EncryptionConfigUnionTypeDef]] = None + outpostConfig: Optional[OutpostConfigRequestTypeDef] = None + accessConfig: Optional[CreateAccessConfigRequestTypeDef] = None + bootstrapSelfManagedAddons: Optional[bool] = None + +class CreateFargateProfileResponseTypeDef(BaseModel): + fargateProfile: FargateProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFargateProfileResponseTypeDef(BaseModel): + fargateProfile: FargateProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFargateProfileResponseTypeDef(BaseModel): + fargateProfile: FargateProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNodegroupResponseTypeDef(BaseModel): + nodegroup: NodegroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNodegroupResponseTypeDef(BaseModel): + nodegroup: NodegroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNodegroupResponseTypeDef(BaseModel): + nodegroup: NodegroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterClusterResponseTypeDef(BaseModel): + cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInsightResponseTypeDef(BaseModel): + insight: InsightTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/eks_constants.py b/aws_resource_validator/pydantic_models/eks_constants.py new file mode 100644 index 00000000..2a6327a5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/eks_constants.py @@ -0,0 +1,635 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AMITypesType = Literal["AL2023_ARM_64_STANDARD", + "AL2023_x86_64_STANDARD", + "AL2_ARM_64", + "AL2_x86_64", + "AL2_x86_64_GPU", + "BOTTLEROCKET_ARM_64", + "BOTTLEROCKET_ARM_64_NVIDIA", + "BOTTLEROCKET_x86_64", + "BOTTLEROCKET_x86_64_NVIDIA", + "CUSTOM", + "WINDOWS_CORE_2019_x86_64", + "WINDOWS_CORE_2022_x86_64", + "WINDOWS_FULL_2019_x86_64", + "WINDOWS_FULL_2022_x86_64",] +AccessScopeTypeType = Literal["cluster", "namespace"] +AddonActiveWaiterName = Literal["addon_active"] +AddonDeletedWaiterName = Literal["addon_deleted"] +AddonIssueCodeType = Literal["AccessDenied", + "AddonPermissionFailure", + "AddonSubscriptionNeeded", + "AdmissionRequestDenied", + "ClusterUnreachable", + "ConfigurationConflict", + "InsufficientNumberOfReplicas", + "InternalFailure", + "K8sResourceNotFound", + "UnsupportedAddonModification",] +AddonStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATING", + "DEGRADED", + "DELETE_FAILED", + "DELETING", + "UPDATE_FAILED", + "UPDATING",] +AuthenticationModeType = Literal["API", "API_AND_CONFIG_MAP", "CONFIG_MAP"] +CapacityTypesType = Literal["CAPACITY_BLOCK", "ON_DEMAND", "SPOT"] +CategoryType = Literal["UPGRADE_READINESS"] +ClusterActiveWaiterName = Literal["cluster_active"] +ClusterDeletedWaiterName = Literal["cluster_deleted"] +ClusterIssueCodeType = Literal["AccessDenied", + "ClusterUnreachable", + "ConfigurationConflict", + "Ec2SecurityGroupNotFound", + "Ec2ServiceNotSubscribed", + "Ec2SubnetNotFound", + "IamRoleNotFound", + "InsufficientFreeAddresses", + "InternalFailure", + "KmsGrantRevoked", + "KmsKeyDisabled", + "KmsKeyMarkedForDeletion", + "KmsKeyNotFound", + "Other", + "ResourceLimitExceeded", + "ResourceNotFound", + "StsRegionalEndpointDisabled", + "UnsupportedVersion", + "VpcNotFound",] +ClusterStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "PENDING", "UPDATING"] +ConfigStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +ConnectorConfigProviderType = Literal["AKS", "ANTHOS", "EC2", "EKS_ANYWHERE", "GKE", "OPENSHIFT", "OTHER", "RANCHER", "TANZU"] +DescribeAddonVersionsPaginatorName = Literal["describe_addon_versions"] +EksAnywhereSubscriptionLicenseTypeType = Literal["Cluster"] +EksAnywhereSubscriptionStatusType = Literal["ACTIVE", "CREATING", "DELETING", "EXPIRED", "EXPIRING", "UPDATING"] +EksAnywhereSubscriptionTermUnitType = Literal["MONTHS"] +ErrorCodeType = Literal["AccessDenied", + "AdmissionRequestDenied", + "ClusterUnreachable", + "ConfigurationConflict", + "EniLimitReached", + "InsufficientFreeAddresses", + "InsufficientNumberOfReplicas", + "IpNotAvailable", + "K8sResourceNotFound", + "NodeCreationFailure", + "OperationNotPermitted", + "PodEvictionFailure", + "SecurityGroupNotFound", + "SubnetNotFound", + "Unknown", + "UnsupportedAddonModification", + "VpcIdNotFound",] +FargateProfileActiveWaiterName = Literal["fargate_profile_active"] +FargateProfileDeletedWaiterName = Literal["fargate_profile_deleted"] +FargateProfileIssueCodeType = Literal["AccessDenied", "ClusterUnreachable", "InternalFailure", "PodExecutionRoleAlreadyInUse"] +FargateProfileStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING"] +InsightStatusValueType = Literal["ERROR", "PASSING", "UNKNOWN", "WARNING"] +IpFamilyType = Literal["ipv4", "ipv6"] +ListAccessEntriesPaginatorName = Literal["list_access_entries"] +ListAccessPoliciesPaginatorName = Literal["list_access_policies"] +ListAddonsPaginatorName = Literal["list_addons"] +ListAssociatedAccessPoliciesPaginatorName = Literal["list_associated_access_policies"] +ListClustersPaginatorName = Literal["list_clusters"] +ListEksAnywhereSubscriptionsPaginatorName = Literal["list_eks_anywhere_subscriptions"] +ListFargateProfilesPaginatorName = Literal["list_fargate_profiles"] +ListIdentityProviderConfigsPaginatorName = Literal["list_identity_provider_configs"] +ListInsightsPaginatorName = Literal["list_insights"] +ListNodegroupsPaginatorName = Literal["list_nodegroups"] +ListPodIdentityAssociationsPaginatorName = Literal["list_pod_identity_associations"] +ListUpdatesPaginatorName = Literal["list_updates"] +LogTypeType = Literal["api", "audit", "authenticator", "controllerManager", "scheduler"] +NodegroupActiveWaiterName = Literal["nodegroup_active"] +NodegroupDeletedWaiterName = Literal["nodegroup_deleted"] +NodegroupIssueCodeType = Literal["AccessDenied", + "AmiIdNotFound", + "AsgInstanceLaunchFailures", + "AutoScalingGroupInstanceRefreshActive", + "AutoScalingGroupInvalidConfiguration", + "AutoScalingGroupNotFound", + "AutoScalingGroupOptInRequired", + "AutoScalingGroupRateLimitExceeded", + "ClusterUnreachable", + "Ec2LaunchTemplateDeletionFailure", + "Ec2LaunchTemplateInvalidConfiguration", + "Ec2LaunchTemplateMaxLimitExceeded", + "Ec2LaunchTemplateNotFound", + "Ec2LaunchTemplateVersionMaxLimitExceeded", + "Ec2LaunchTemplateVersionMismatch", + "Ec2SecurityGroupDeletionFailure", + "Ec2SecurityGroupNotFound", + "Ec2SubnetInvalidConfiguration", + "Ec2SubnetListTooLong", + "Ec2SubnetMissingIpv6Assignment", + "Ec2SubnetNotFound", + "IamInstanceProfileNotFound", + "IamLimitExceeded", + "IamNodeRoleNotFound", + "IamThrottling", + "InstanceLimitExceeded", + "InsufficientFreeAddresses", + "InternalFailure", + "KubernetesLabelInvalid", + "LimitExceeded", + "NodeCreationFailure", + "NodeTerminationFailure", + "PodEvictionFailure", + "SourceEc2LaunchTemplateNotFound", + "Unknown",] +NodegroupStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DEGRADED", "DELETE_FAILED", "DELETING", "UPDATING"] +ResolveConflictsType = Literal["NONE", "OVERWRITE", "PRESERVE"] +TaintEffectType = Literal["NO_EXECUTE", "NO_SCHEDULE", "PREFER_NO_SCHEDULE"] +UpdateParamTypeType = Literal["AddonVersion", + "AuthenticationMode", + "ClusterLogging", + "ConfigurationValues", + "DesiredSize", + "EncryptionConfig", + "EndpointPrivateAccess", + "EndpointPublicAccess", + "IdentityProviderConfig", + "LabelsToAdd", + "LabelsToRemove", + "LaunchTemplateName", + "LaunchTemplateVersion", + "MaxSize", + "MaxUnavailable", + "MaxUnavailablePercentage", + "MinSize", + "PlatformVersion", + "PodIdentityAssociations", + "PublicAccessCidrs", + "ReleaseVersion", + "ResolveConflicts", + "SecurityGroups", + "ServiceAccountRoleArn", + "Subnets", + "TaintsToAdd", + "TaintsToRemove", + "Version",] +UpdateStatusType = Literal["Cancelled", "Failed", "InProgress", "Successful"] +UpdateTypeType = Literal["AccessConfigUpdate", + "AddonUpdate", + "AssociateEncryptionConfig", + "AssociateIdentityProviderConfig", + "ConfigUpdate", + "DisassociateIdentityProviderConfig", + "EndpointAccessUpdate", + "LoggingUpdate", + "VersionUpdate", + "VpcConfigUpdate",] +EKSServiceName = Literal["eks"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_addon_versions", + "list_access_entries", + "list_access_policies", + "list_addons", + "list_associated_access_policies", + "list_clusters", + "list_eks_anywhere_subscriptions", + "list_fargate_profiles", + "list_identity_provider_configs", + "list_insights", + "list_nodegroups", + "list_pod_identity_associations", + "list_updates",] +WaiterName = Literal["addon_active", + "addon_deleted", + "cluster_active", + "cluster_deleted", + "fargate_profile_active", + "fargate_profile_deleted", + "nodegroup_active", + "nodegroup_deleted",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +AccessScopeUnionTypeDef = Union['AccessScopeTypeDef', 'AccessScopeExtraOutputTypeDef'] +FargateProfileSelectorUnionTypeDef = Union[ 'FargateProfileSelectorTypeDef', 'FargateProfileSelectorOutputTypeDef' ] +RemoteAccessConfigUnionTypeDef = Union['RemoteAccessConfigTypeDef', 'RemoteAccessConfigOutputTypeDef'] +EncryptionConfigUnionTypeDef = Union['EncryptionConfigTypeDef', 'EncryptionConfigOutputTypeDef'] +LoggingUnionTypeDef = Union['LoggingTypeDef', 'LoggingOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/elastic_inference_classes.py b/aws_resource_validator/pydantic_models/elastic_inference_classes.py new file mode 100644 index 00000000..3b12f1ba --- /dev/null +++ b/aws_resource_validator/pydantic_models/elastic_inference_classes.py @@ -0,0 +1,99 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.elastic_inference_constants import * + +class AcceleratorTypeOfferingTypeDef(BaseModel): + acceleratorType: Optional[str] = None + locationType: Optional[LocationTypeType] = None + location: Optional[str] = None + +class KeyValuePairTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[int] = None + +class MemoryInfoTypeDef(BaseModel): + sizeInMiB: Optional[int] = None + +class DescribeAcceleratorOfferingsRequestRequestTypeDef(BaseModel): + locationType: LocationTypeType + acceleratorTypes: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class FilterTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ElasticInferenceAcceleratorHealthTypeDef(BaseModel): + status: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AcceleratorTypeTypeDef(BaseModel): + acceleratorTypeName: Optional[str] = None + memoryInfo: Optional[MemoryInfoTypeDef] = None + throughputInfo: Optional[List[KeyValuePairTypeDef]] = None + +class DescribeAcceleratorOfferingsResponseTypeDef(BaseModel): + acceleratorTypeOfferings: List[AcceleratorTypeOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResultTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAcceleratorsRequestRequestTypeDef(BaseModel): + acceleratorIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeAcceleratorsRequestDescribeAcceleratorsPaginateTypeDef(BaseModel): + acceleratorIds: Optional[Sequence[str]] = None + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ElasticInferenceAcceleratorTypeDef(BaseModel): + acceleratorHealth: Optional[ElasticInferenceAcceleratorHealthTypeDef] = None + acceleratorType: Optional[str] = None + acceleratorId: Optional[str] = None + availabilityZone: Optional[str] = None + attachedResource: Optional[str] = None + +class DescribeAcceleratorTypesResponseTypeDef(BaseModel): + acceleratorTypes: List[AcceleratorTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAcceleratorsResponseTypeDef(BaseModel): + acceleratorSet: List[ElasticInferenceAcceleratorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/elastic_inference_constants.py b/aws_resource_validator/pydantic_models/elastic_inference_constants.py new file mode 100644 index 00000000..5a26885c --- /dev/null +++ b/aws_resource_validator/pydantic_models/elastic_inference_constants.py @@ -0,0 +1,392 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeAcceleratorsPaginatorName = Literal["describe_accelerators"] +LocationTypeType = Literal["availability-zone", "availability-zone-id", "region"] +ElasticInferenceServiceName = Literal["elastic-inference"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_accelerators"] +RegionName = Literal["ap-northeast-1", "ap-northeast-2", "eu-west-1", "us-east-1", "us-east-2", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/elasticache_classes.py b/aws_resource_validator/pydantic_models/elasticache_classes.py new file mode 100644 index 00000000..517f7b88 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elasticache_classes.py @@ -0,0 +1,1573 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.elasticache_constants import * + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AuthenticationModeTypeDef(BaseModel): + Type: Optional[InputAuthenticationTypeType] = None + Passwords: Optional[Sequence[str]] = None + +class AuthenticationTypeDef(BaseModel): + Type: Optional[AuthenticationTypeType] = None + PasswordCount: Optional[int] = None + +class AuthorizeCacheSecurityGroupIngressMessageRequestTypeDef(BaseModel): + CacheSecurityGroupName: str + EC2SecurityGroupName: str + EC2SecurityGroupOwnerId: str + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class BatchApplyUpdateActionMessageRequestTypeDef(BaseModel): + ServiceUpdateName: str + ReplicationGroupIds: Optional[Sequence[str]] = None + CacheClusterIds: Optional[Sequence[str]] = None + +class BatchStopUpdateActionMessageRequestTypeDef(BaseModel): + ServiceUpdateName: str + ReplicationGroupIds: Optional[Sequence[str]] = None + CacheClusterIds: Optional[Sequence[str]] = None + +class CacheParameterGroupStatusTypeDef(BaseModel): + CacheParameterGroupName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + CacheNodeIdsToReboot: Optional[List[str]] = None + +class CacheSecurityGroupMembershipTypeDef(BaseModel): + CacheSecurityGroupName: Optional[str] = None + Status: Optional[str] = None + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + +class NotificationConfigurationTypeDef(BaseModel): + TopicArn: Optional[str] = None + TopicStatus: Optional[str] = None + +class SecurityGroupMembershipTypeDef(BaseModel): + SecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class CacheEngineVersionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + CacheParameterGroupFamily: Optional[str] = None + CacheEngineDescription: Optional[str] = None + CacheEngineVersionDescription: Optional[str] = None + +class CacheNodeTypeSpecificValueTypeDef(BaseModel): + CacheNodeType: Optional[str] = None + Value: Optional[str] = None + +class CacheNodeUpdateStatusTypeDef(BaseModel): + CacheNodeId: Optional[str] = None + NodeUpdateStatus: Optional[NodeUpdateStatusType] = None + NodeDeletionDate: Optional[datetime] = None + NodeUpdateStartDate: Optional[datetime] = None + NodeUpdateEndDate: Optional[datetime] = None + NodeUpdateInitiatedBy: Optional[NodeUpdateInitiatedByType] = None + NodeUpdateInitiatedDate: Optional[datetime] = None + NodeUpdateStatusModifiedDate: Optional[datetime] = None + +class ParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + ChangeType: Optional[ChangeTypeType] = None + +class CacheParameterGroupTypeDef(BaseModel): + CacheParameterGroupName: Optional[str] = None + CacheParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + IsGlobal: Optional[bool] = None + ARN: Optional[str] = None + +class EC2SecurityGroupTypeDef(BaseModel): + Status: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + +class DataStorageTypeDef(BaseModel): + Unit: Literal["GB"] + Maximum: Optional[int] = None + Minimum: Optional[int] = None + +class ECPUPerSecondTypeDef(BaseModel): + Maximum: Optional[int] = None + Minimum: Optional[int] = None + +class CloudWatchLogsDestinationDetailsTypeDef(BaseModel): + LogGroup: Optional[str] = None + +class CompleteMigrationMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + Force: Optional[bool] = None + +class ConfigureShardTypeDef(BaseModel): + NodeGroupId: str + NewReplicaCount: int + PreferredAvailabilityZones: Optional[Sequence[str]] = None + PreferredOutpostArns: Optional[Sequence[str]] = None + +class CreateGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupIdSuffix: str + PrimaryReplicationGroupId: str + GlobalReplicationGroupDescription: Optional[str] = None + +class CustomerNodeEndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + +class DecreaseNodeGroupsInGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + NodeGroupCount: int + ApplyImmediately: bool + GlobalNodeGroupsToRemove: Optional[Sequence[str]] = None + GlobalNodeGroupsToRetain: Optional[Sequence[str]] = None + +class DeleteCacheClusterMessageRequestTypeDef(BaseModel): + CacheClusterId: str + FinalSnapshotIdentifier: Optional[str] = None + +class DeleteCacheParameterGroupMessageRequestTypeDef(BaseModel): + CacheParameterGroupName: str + +class DeleteCacheSecurityGroupMessageRequestTypeDef(BaseModel): + CacheSecurityGroupName: str + +class DeleteCacheSubnetGroupMessageRequestTypeDef(BaseModel): + CacheSubnetGroupName: str + +class DeleteGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + RetainPrimaryReplicationGroup: bool + +class DeleteReplicationGroupMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + RetainPrimaryCluster: Optional[bool] = None + FinalSnapshotIdentifier: Optional[str] = None + +class DeleteServerlessCacheRequestRequestTypeDef(BaseModel): + ServerlessCacheName: str + FinalSnapshotName: Optional[str] = None + +class DeleteServerlessCacheSnapshotRequestRequestTypeDef(BaseModel): + ServerlessCacheSnapshotName: str + +class DeleteSnapshotMessageRequestTypeDef(BaseModel): + SnapshotName: str + +class DeleteUserGroupMessageRequestTypeDef(BaseModel): + UserGroupId: str + +class DeleteUserMessageRequestTypeDef(BaseModel): + UserId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeCacheClustersMessageRequestTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + ShowCacheNodeInfo: Optional[bool] = None + ShowCacheClustersNotInReplicationGroups: Optional[bool] = None + +class DescribeCacheEngineVersionsMessageRequestTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + CacheParameterGroupFamily: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + DefaultOnly: Optional[bool] = None + +class DescribeCacheParameterGroupsMessageRequestTypeDef(BaseModel): + CacheParameterGroupName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeCacheParametersMessageRequestTypeDef(BaseModel): + CacheParameterGroupName: str + Source: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeCacheSecurityGroupsMessageRequestTypeDef(BaseModel): + CacheSecurityGroupName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeCacheSubnetGroupsMessageRequestTypeDef(BaseModel): + CacheSubnetGroupName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEngineDefaultParametersMessageRequestTypeDef(BaseModel): + CacheParameterGroupFamily: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeGlobalReplicationGroupsMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + ShowMemberInfo: Optional[bool] = None + +class DescribeReplicationGroupsMessageRequestTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReservedCacheNodesMessageRequestTypeDef(BaseModel): + ReservedCacheNodeId: Optional[str] = None + ReservedCacheNodesOfferingId: Optional[str] = None + CacheNodeType: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReservedCacheNodesOfferingsMessageRequestTypeDef(BaseModel): + ReservedCacheNodesOfferingId: Optional[str] = None + CacheNodeType: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeServerlessCacheSnapshotsRequestRequestTypeDef(BaseModel): + ServerlessCacheName: Optional[str] = None + ServerlessCacheSnapshotName: Optional[str] = None + SnapshotType: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeServerlessCachesRequestRequestTypeDef(BaseModel): + ServerlessCacheName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeServiceUpdatesMessageRequestTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ServiceUpdateStatus: Optional[Sequence[ServiceUpdateStatusType]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeSnapshotsMessageRequestTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + CacheClusterId: Optional[str] = None + SnapshotName: Optional[str] = None + SnapshotSource: Optional[str] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + ShowNodeGroupConfig: Optional[bool] = None + +class DescribeUserGroupsMessageRequestTypeDef(BaseModel): + UserGroupId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class KinesisFirehoseDestinationDetailsTypeDef(BaseModel): + DeliveryStream: Optional[str] = None + +class DisassociateGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + ReplicationGroupId: str + ReplicationGroupRegion: str + +class EventTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + Date: Optional[datetime] = None + +class ExportServerlessCacheSnapshotRequestRequestTypeDef(BaseModel): + ServerlessCacheSnapshotName: str + S3BucketName: str + +class FailoverGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + PrimaryRegion: str + PrimaryReplicationGroupId: str + +class GlobalNodeGroupTypeDef(BaseModel): + GlobalNodeGroupId: Optional[str] = None + Slots: Optional[str] = None + +class GlobalReplicationGroupInfoTypeDef(BaseModel): + GlobalReplicationGroupId: Optional[str] = None + GlobalReplicationGroupMemberRole: Optional[str] = None + +class GlobalReplicationGroupMemberTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + ReplicationGroupRegion: Optional[str] = None + Role: Optional[str] = None + AutomaticFailover: Optional[AutomaticFailoverStatusType] = None + Status: Optional[str] = None + +class ListAllowedNodeTypeModificationsMessageRequestTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + ReplicationGroupId: Optional[str] = None + +class ListTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + +class ParameterNameValueTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + +class ModifyCacheSubnetGroupMessageRequestTypeDef(BaseModel): + CacheSubnetGroupName: str + CacheSubnetGroupDescription: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + +class ModifyGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + ApplyImmediately: bool + CacheNodeType: Optional[str] = None + EngineVersion: Optional[str] = None + CacheParameterGroupName: Optional[str] = None + GlobalReplicationGroupDescription: Optional[str] = None + AutomaticFailoverEnabled: Optional[bool] = None + +class ReshardingConfigurationTypeDef(BaseModel): + NodeGroupId: Optional[str] = None + PreferredAvailabilityZones: Optional[Sequence[str]] = None + +class ModifyUserGroupMessageRequestTypeDef(BaseModel): + UserGroupId: str + UserIdsToAdd: Optional[Sequence[str]] = None + UserIdsToRemove: Optional[Sequence[str]] = None + +class NodeGroupConfigurationExtraOutputTypeDef(BaseModel): + NodeGroupId: Optional[str] = None + Slots: Optional[str] = None + ReplicaCount: Optional[int] = None + PrimaryAvailabilityZone: Optional[str] = None + ReplicaAvailabilityZones: Optional[List[str]] = None + PrimaryOutpostArn: Optional[str] = None + ReplicaOutpostArns: Optional[List[str]] = None + +class NodeGroupConfigurationOutputTypeDef(BaseModel): + NodeGroupId: Optional[str] = None + Slots: Optional[str] = None + ReplicaCount: Optional[int] = None + PrimaryAvailabilityZone: Optional[str] = None + ReplicaAvailabilityZones: Optional[List[str]] = None + PrimaryOutpostArn: Optional[str] = None + ReplicaOutpostArns: Optional[List[str]] = None + +class NodeGroupConfigurationTypeDef(BaseModel): + NodeGroupId: Optional[str] = None + Slots: Optional[str] = None + ReplicaCount: Optional[int] = None + PrimaryAvailabilityZone: Optional[str] = None + ReplicaAvailabilityZones: Optional[Sequence[str]] = None + PrimaryOutpostArn: Optional[str] = None + ReplicaOutpostArns: Optional[Sequence[str]] = None + +class NodeGroupMemberUpdateStatusTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + CacheNodeId: Optional[str] = None + NodeUpdateStatus: Optional[NodeUpdateStatusType] = None + NodeDeletionDate: Optional[datetime] = None + NodeUpdateStartDate: Optional[datetime] = None + NodeUpdateEndDate: Optional[datetime] = None + NodeUpdateInitiatedBy: Optional[NodeUpdateInitiatedByType] = None + NodeUpdateInitiatedDate: Optional[datetime] = None + NodeUpdateStatusModifiedDate: Optional[datetime] = None + +class ProcessedUpdateActionTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + CacheClusterId: Optional[str] = None + ServiceUpdateName: Optional[str] = None + UpdateActionStatus: Optional[UpdateActionStatusType] = None + +class RebalanceSlotsInGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + ApplyImmediately: bool + +class RebootCacheClusterMessageRequestTypeDef(BaseModel): + CacheClusterId: str + CacheNodeIdsToReboot: Sequence[str] + +class RecurringChargeTypeDef(BaseModel): + RecurringChargeAmount: Optional[float] = None + RecurringChargeFrequency: Optional[str] = None + +class RemoveTagsFromResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + TagKeys: Sequence[str] + +class UserGroupsUpdateStatusTypeDef(BaseModel): + UserGroupIdsToAdd: Optional[List[str]] = None + UserGroupIdsToRemove: Optional[List[str]] = None + +class SlotMigrationTypeDef(BaseModel): + ProgressPercentage: Optional[float] = None + +class RevokeCacheSecurityGroupIngressMessageRequestTypeDef(BaseModel): + CacheSecurityGroupName: str + EC2SecurityGroupName: str + EC2SecurityGroupOwnerId: str + +class ServerlessCacheConfigurationTypeDef(BaseModel): + ServerlessCacheName: Optional[str] = None + Engine: Optional[str] = None + MajorEngineVersion: Optional[str] = None + +class ServiceUpdateTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ServiceUpdateReleaseDate: Optional[datetime] = None + ServiceUpdateEndDate: Optional[datetime] = None + ServiceUpdateSeverity: Optional[ServiceUpdateSeverityType] = None + ServiceUpdateRecommendedApplyByDate: Optional[datetime] = None + ServiceUpdateStatus: Optional[ServiceUpdateStatusType] = None + ServiceUpdateDescription: Optional[str] = None + ServiceUpdateType: Optional[Literal["security-update"]] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + AutoUpdateAfterRecommendedApplyByDate: Optional[bool] = None + EstimatedUpdateTime: Optional[str] = None + +class SubnetOutpostTypeDef(BaseModel): + SubnetOutpostArn: Optional[str] = None + +class TestFailoverMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + NodeGroupId: str + +class UnprocessedUpdateActionTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + CacheClusterId: Optional[str] = None + ServiceUpdateName: Optional[str] = None + ErrorType: Optional[str] = None + ErrorMessage: Optional[str] = None + +class UserGroupPendingChangesTypeDef(BaseModel): + UserIdsToRemove: Optional[List[str]] = None + UserIdsToAdd: Optional[List[str]] = None + +class AddTagsToResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Tags: Sequence[TagTypeDef] + +class CopyServerlessCacheSnapshotRequestRequestTypeDef(BaseModel): + SourceServerlessCacheSnapshotName: str + TargetServerlessCacheSnapshotName: str + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CopySnapshotMessageRequestTypeDef(BaseModel): + SourceSnapshotName: str + TargetSnapshotName: str + TargetBucket: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCacheParameterGroupMessageRequestTypeDef(BaseModel): + CacheParameterGroupName: str + CacheParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCacheSecurityGroupMessageRequestTypeDef(BaseModel): + CacheSecurityGroupName: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCacheSubnetGroupMessageRequestTypeDef(BaseModel): + CacheSubnetGroupName: str + CacheSubnetGroupDescription: str + SubnetIds: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateServerlessCacheSnapshotRequestRequestTypeDef(BaseModel): + ServerlessCacheSnapshotName: str + ServerlessCacheName: str + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotMessageRequestTypeDef(BaseModel): + SnapshotName: str + ReplicationGroupId: Optional[str] = None + CacheClusterId: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateUserGroupMessageRequestTypeDef(BaseModel): + UserGroupId: str + Engine: str + UserIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class PurchaseReservedCacheNodesOfferingMessageRequestTypeDef(BaseModel): + ReservedCacheNodesOfferingId: str + ReservedCacheNodeId: Optional[str] = None + CacheNodeCount: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class AllowedNodeTypeModificationsMessageTypeDef(BaseModel): + ScaleUpModifications: List[str] + ScaleDownModifications: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CacheParameterGroupNameMessageTypeDef(BaseModel): + CacheParameterGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class TagListMessageTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserMessageRequestTypeDef(BaseModel): + UserId: str + UserName: str + Engine: str + AccessString: str + Passwords: Optional[Sequence[str]] = None + NoPasswordRequired: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AuthenticationMode: Optional[AuthenticationModeTypeDef] = None + +class ModifyUserMessageRequestTypeDef(BaseModel): + UserId: str + AccessString: Optional[str] = None + AppendAccessString: Optional[str] = None + Passwords: Optional[Sequence[str]] = None + NoPasswordRequired: Optional[bool] = None + AuthenticationMode: Optional[AuthenticationModeTypeDef] = None + +class UserResponseTypeDef(BaseModel): + UserId: str + UserName: str + Status: str + Engine: str + MinimumEngineVersion: str + AccessString: str + UserGroupIds: List[str] + Authentication: AuthenticationTypeDef + ARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UserTypeDef(BaseModel): + UserId: Optional[str] = None + UserName: Optional[str] = None + Status: Optional[str] = None + Engine: Optional[str] = None + MinimumEngineVersion: Optional[str] = None + AccessString: Optional[str] = None + UserGroupIds: Optional[List[str]] = None + Authentication: Optional[AuthenticationTypeDef] = None + ARN: Optional[str] = None + +class CacheNodeTypeDef(BaseModel): + CacheNodeId: Optional[str] = None + CacheNodeStatus: Optional[str] = None + CacheNodeCreateTime: Optional[datetime] = None + Endpoint: Optional[EndpointTypeDef] = None + ParameterGroupStatus: Optional[str] = None + SourceCacheNodeId: Optional[str] = None + CustomerAvailabilityZone: Optional[str] = None + CustomerOutpostArn: Optional[str] = None + +class NodeGroupMemberTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + CacheNodeId: Optional[str] = None + ReadEndpoint: Optional[EndpointTypeDef] = None + PreferredAvailabilityZone: Optional[str] = None + PreferredOutpostArn: Optional[str] = None + CurrentRole: Optional[str] = None + +class CacheEngineVersionMessageTypeDef(BaseModel): + Marker: str + CacheEngineVersions: List[CacheEngineVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CacheNodeTypeSpecificParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + CacheNodeTypeSpecificValues: Optional[List[CacheNodeTypeSpecificValueTypeDef]] = None + ChangeType: Optional[ChangeTypeType] = None + +class CacheParameterGroupsMessageTypeDef(BaseModel): + Marker: str + CacheParameterGroups: List[CacheParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCacheParameterGroupResultTypeDef(BaseModel): + CacheParameterGroup: CacheParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CacheSecurityGroupTypeDef(BaseModel): + OwnerId: Optional[str] = None + CacheSecurityGroupName: Optional[str] = None + Description: Optional[str] = None + EC2SecurityGroups: Optional[List[EC2SecurityGroupTypeDef]] = None + ARN: Optional[str] = None + +class CacheUsageLimitsTypeDef(BaseModel): + DataStorage: Optional[DataStorageTypeDef] = None + ECPUPerSecond: Optional[ECPUPerSecondTypeDef] = None + +class DecreaseReplicaCountMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + ApplyImmediately: bool + NewReplicaCount: Optional[int] = None + ReplicaConfiguration: Optional[Sequence[ConfigureShardTypeDef]] = None + ReplicasToRemove: Optional[Sequence[str]] = None + +class IncreaseReplicaCountMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + ApplyImmediately: bool + NewReplicaCount: Optional[int] = None + ReplicaConfiguration: Optional[Sequence[ConfigureShardTypeDef]] = None + +class StartMigrationMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + CustomerNodeEndpointList: Sequence[CustomerNodeEndpointTypeDef] + +class TestMigrationMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + CustomerNodeEndpointList: Sequence[CustomerNodeEndpointTypeDef] + +class DescribeCacheClustersMessageCacheClusterAvailableWaitTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + ShowCacheNodeInfo: Optional[bool] = None + ShowCacheClustersNotInReplicationGroups: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeCacheClustersMessageCacheClusterDeletedWaitTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + ShowCacheNodeInfo: Optional[bool] = None + ShowCacheClustersNotInReplicationGroups: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationGroupsMessageReplicationGroupAvailableWaitTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeReplicationGroupsMessageReplicationGroupDeletedWaitTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeCacheClustersMessageDescribeCacheClustersPaginateTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + ShowCacheNodeInfo: Optional[bool] = None + ShowCacheClustersNotInReplicationGroups: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCacheEngineVersionsMessageDescribeCacheEngineVersionsPaginateTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + CacheParameterGroupFamily: Optional[str] = None + DefaultOnly: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCacheParameterGroupsMessageDescribeCacheParameterGroupsPaginateTypeDef(BaseModel): + CacheParameterGroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCacheParametersMessageDescribeCacheParametersPaginateTypeDef(BaseModel): + CacheParameterGroupName: str + Source: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCacheSecurityGroupsMessageDescribeCacheSecurityGroupsPaginateTypeDef(BaseModel): + CacheSecurityGroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCacheSubnetGroupsMessageDescribeCacheSubnetGroupsPaginateTypeDef(BaseModel): + CacheSubnetGroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEngineDefaultParametersMessageDescribeEngineDefaultParametersPaginateTypeDef(BaseModel): + CacheParameterGroupFamily: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGlobalReplicationGroupsMessageDescribeGlobalReplicationGroupsPaginateTypeDef(BaseModel): + GlobalReplicationGroupId: Optional[str] = None + ShowMemberInfo: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationGroupsMessageDescribeReplicationGroupsPaginateTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedCacheNodesMessageDescribeReservedCacheNodesPaginateTypeDef(BaseModel): + ReservedCacheNodeId: Optional[str] = None + ReservedCacheNodesOfferingId: Optional[str] = None + CacheNodeType: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedCacheNodesOfferingsMessageDescribeReservedCacheNodesOfferingsPaginateTypeDef(BaseModel): + ReservedCacheNodesOfferingId: Optional[str] = None + CacheNodeType: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeServerlessCacheSnapshotsRequestDescribeServerlessCacheSnapshotsPaginateTypeDef(BaseModel): + ServerlessCacheName: Optional[str] = None + ServerlessCacheSnapshotName: Optional[str] = None + SnapshotType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeServerlessCachesRequestDescribeServerlessCachesPaginateTypeDef(BaseModel): + ServerlessCacheName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeServiceUpdatesMessageDescribeServiceUpdatesPaginateTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ServiceUpdateStatus: Optional[Sequence[ServiceUpdateStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotsMessageDescribeSnapshotsPaginateTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + CacheClusterId: Optional[str] = None + SnapshotName: Optional[str] = None + SnapshotSource: Optional[str] = None + ShowNodeGroupConfig: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUserGroupsMessageDescribeUserGroupsPaginateTypeDef(BaseModel): + UserGroupId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageRequestTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class TimeRangeFilterTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + +class DescribeUsersMessageDescribeUsersPaginateTypeDef(BaseModel): + Engine: Optional[str] = None + UserId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUsersMessageRequestTypeDef(BaseModel): + Engine: Optional[str] = None + UserId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DestinationDetailsTypeDef(BaseModel): + CloudWatchLogsDetails: Optional[CloudWatchLogsDestinationDetailsTypeDef] = None + KinesisFirehoseDetails: Optional[KinesisFirehoseDestinationDetailsTypeDef] = None + +class EventsMessageTypeDef(BaseModel): + Marker: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalReplicationGroupTypeDef(BaseModel): + GlobalReplicationGroupId: Optional[str] = None + GlobalReplicationGroupDescription: Optional[str] = None + Status: Optional[str] = None + CacheNodeType: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Members: Optional[List[GlobalReplicationGroupMemberTypeDef]] = None + ClusterEnabled: Optional[bool] = None + GlobalNodeGroups: Optional[List[GlobalNodeGroupTypeDef]] = None + AuthTokenEnabled: Optional[bool] = None + TransitEncryptionEnabled: Optional[bool] = None + AtRestEncryptionEnabled: Optional[bool] = None + ARN: Optional[str] = None + +class ModifyCacheParameterGroupMessageRequestTypeDef(BaseModel): + CacheParameterGroupName: str + ParameterNameValues: Sequence[ParameterNameValueTypeDef] + +class ResetCacheParameterGroupMessageRequestTypeDef(BaseModel): + CacheParameterGroupName: str + ResetAllParameters: Optional[bool] = None + ParameterNameValues: Optional[Sequence[ParameterNameValueTypeDef]] = None + +class ModifyReplicationGroupShardConfigurationMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + NodeGroupCount: int + ApplyImmediately: bool + ReshardingConfiguration: Optional[Sequence[ReshardingConfigurationTypeDef]] = None + NodeGroupsToRemove: Optional[Sequence[str]] = None + NodeGroupsToRetain: Optional[Sequence[str]] = None + +class RegionalConfigurationTypeDef(BaseModel): + ReplicationGroupId: str + ReplicationGroupRegion: str + ReshardingConfiguration: Sequence[ReshardingConfigurationTypeDef] + +class NodeSnapshotTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + NodeGroupId: Optional[str] = None + CacheNodeId: Optional[str] = None + NodeGroupConfiguration: Optional[NodeGroupConfigurationOutputTypeDef] = None + CacheSize: Optional[str] = None + CacheNodeCreateTime: Optional[datetime] = None + SnapshotCreateTime: Optional[datetime] = None + +class NodeGroupUpdateStatusTypeDef(BaseModel): + NodeGroupId: Optional[str] = None + NodeGroupMemberUpdateStatus: Optional[List[NodeGroupMemberUpdateStatusTypeDef]] = None + +class ReservedCacheNodeTypeDef(BaseModel): + ReservedCacheNodeId: Optional[str] = None + ReservedCacheNodesOfferingId: Optional[str] = None + CacheNodeType: Optional[str] = None + StartTime: Optional[datetime] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CacheNodeCount: Optional[int] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + State: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + ReservationARN: Optional[str] = None + +class ReservedCacheNodesOfferingTypeDef(BaseModel): + ReservedCacheNodesOfferingId: Optional[str] = None + CacheNodeType: Optional[str] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class ReshardingStatusTypeDef(BaseModel): + SlotMigration: Optional[SlotMigrationTypeDef] = None + +class ServerlessCacheSnapshotTypeDef(BaseModel): + ServerlessCacheSnapshotName: Optional[str] = None + ARN: Optional[str] = None + KmsKeyId: Optional[str] = None + SnapshotType: Optional[str] = None + Status: Optional[str] = None + CreateTime: Optional[datetime] = None + ExpiryTime: Optional[datetime] = None + BytesUsedForCache: Optional[str] = None + ServerlessCacheConfiguration: Optional[ServerlessCacheConfigurationTypeDef] = None + +class ServiceUpdatesMessageTypeDef(BaseModel): + Marker: str + ServiceUpdates: List[ServiceUpdateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + SubnetOutpost: Optional[SubnetOutpostTypeDef] = None + SupportedNetworkTypes: Optional[List[NetworkTypeType]] = None + +class UpdateActionResultsMessageTypeDef(BaseModel): + ProcessedUpdateActions: List[ProcessedUpdateActionTypeDef] + UnprocessedUpdateActions: List[UnprocessedUpdateActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UserGroupResponseTypeDef(BaseModel): + UserGroupId: str + Status: str + Engine: str + UserIds: List[str] + MinimumEngineVersion: str + PendingChanges: UserGroupPendingChangesTypeDef + ReplicationGroups: List[str] + ServerlessCaches: List[str] + ARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UserGroupTypeDef(BaseModel): + UserGroupId: Optional[str] = None + Status: Optional[str] = None + Engine: Optional[str] = None + UserIds: Optional[List[str]] = None + MinimumEngineVersion: Optional[str] = None + PendingChanges: Optional[UserGroupPendingChangesTypeDef] = None + ReplicationGroups: Optional[List[str]] = None + ServerlessCaches: Optional[List[str]] = None + ARN: Optional[str] = None + +class DescribeUsersResultTypeDef(BaseModel): + Users: List[UserTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class NodeGroupTypeDef(BaseModel): + NodeGroupId: Optional[str] = None + Status: Optional[str] = None + PrimaryEndpoint: Optional[EndpointTypeDef] = None + ReaderEndpoint: Optional[EndpointTypeDef] = None + Slots: Optional[str] = None + NodeGroupMembers: Optional[List[NodeGroupMemberTypeDef]] = None + +class CacheParameterGroupDetailsTypeDef(BaseModel): + Marker: str + Parameters: List[ParameterTypeDef] + CacheNodeTypeSpecificParameters: List[CacheNodeTypeSpecificParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EngineDefaultsTypeDef(BaseModel): + CacheParameterGroupFamily: Optional[str] = None + Marker: Optional[str] = None + Parameters: Optional[List[ParameterTypeDef]] = None + CacheNodeTypeSpecificParameters: Optional[List[CacheNodeTypeSpecificParameterTypeDef]] = None + +class AuthorizeCacheSecurityGroupIngressResultTypeDef(BaseModel): + CacheSecurityGroup: CacheSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CacheSecurityGroupMessageTypeDef(BaseModel): + Marker: str + CacheSecurityGroups: List[CacheSecurityGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCacheSecurityGroupResultTypeDef(BaseModel): + CacheSecurityGroup: CacheSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeCacheSecurityGroupIngressResultTypeDef(BaseModel): + CacheSecurityGroup: CacheSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServerlessCacheRequestRequestTypeDef(BaseModel): + ServerlessCacheName: str + Engine: str + Description: Optional[str] = None + MajorEngineVersion: Optional[str] = None + CacheUsageLimits: Optional[CacheUsageLimitsTypeDef] = None + KmsKeyId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SnapshotArnsToRestore: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + UserGroupId: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + SnapshotRetentionLimit: Optional[int] = None + DailySnapshotTime: Optional[str] = None + +class ModifyServerlessCacheRequestRequestTypeDef(BaseModel): + ServerlessCacheName: str + Description: Optional[str] = None + CacheUsageLimits: Optional[CacheUsageLimitsTypeDef] = None + RemoveUserGroup: Optional[bool] = None + UserGroupId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SnapshotRetentionLimit: Optional[int] = None + DailySnapshotTime: Optional[str] = None + +class ServerlessCacheTypeDef(BaseModel): + ServerlessCacheName: Optional[str] = None + Description: Optional[str] = None + CreateTime: Optional[datetime] = None + Status: Optional[str] = None + Engine: Optional[str] = None + MajorEngineVersion: Optional[str] = None + FullEngineVersion: Optional[str] = None + CacheUsageLimits: Optional[CacheUsageLimitsTypeDef] = None + KmsKeyId: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + Endpoint: Optional[EndpointTypeDef] = None + ReaderEndpoint: Optional[EndpointTypeDef] = None + ARN: Optional[str] = None + UserGroupId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + SnapshotRetentionLimit: Optional[int] = None + DailySnapshotTime: Optional[str] = None + +class DescribeUpdateActionsMessageDescribeUpdateActionsPaginateTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ReplicationGroupIds: Optional[Sequence[str]] = None + CacheClusterIds: Optional[Sequence[str]] = None + Engine: Optional[str] = None + ServiceUpdateStatus: Optional[Sequence[ServiceUpdateStatusType]] = None + ServiceUpdateTimeRange: Optional[TimeRangeFilterTypeDef] = None + UpdateActionStatus: Optional[Sequence[UpdateActionStatusType]] = None + ShowNodeLevelUpdateStatus: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUpdateActionsMessageRequestTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ReplicationGroupIds: Optional[Sequence[str]] = None + CacheClusterIds: Optional[Sequence[str]] = None + Engine: Optional[str] = None + ServiceUpdateStatus: Optional[Sequence[ServiceUpdateStatusType]] = None + ServiceUpdateTimeRange: Optional[TimeRangeFilterTypeDef] = None + UpdateActionStatus: Optional[Sequence[UpdateActionStatusType]] = None + ShowNodeLevelUpdateStatus: Optional[bool] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class LogDeliveryConfigurationRequestTypeDef(BaseModel): + LogType: Optional[LogTypeType] = None + DestinationType: Optional[DestinationTypeType] = None + DestinationDetails: Optional[DestinationDetailsTypeDef] = None + LogFormat: Optional[LogFormatType] = None + Enabled: Optional[bool] = None + +class LogDeliveryConfigurationTypeDef(BaseModel): + LogType: Optional[LogTypeType] = None + DestinationType: Optional[DestinationTypeType] = None + DestinationDetails: Optional[DestinationDetailsTypeDef] = None + LogFormat: Optional[LogFormatType] = None + Status: Optional[LogDeliveryConfigurationStatusType] = None + Message: Optional[str] = None + +class PendingLogDeliveryConfigurationTypeDef(BaseModel): + LogType: Optional[LogTypeType] = None + DestinationType: Optional[DestinationTypeType] = None + DestinationDetails: Optional[DestinationDetailsTypeDef] = None + LogFormat: Optional[LogFormatType] = None + +class CreateGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DecreaseNodeGroupsInGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGlobalReplicationGroupsResultTypeDef(BaseModel): + Marker: str + GlobalReplicationGroups: List[GlobalReplicationGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IncreaseNodeGroupsInGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebalanceSlotsInGlobalReplicationGroupResultTypeDef(BaseModel): + GlobalReplicationGroup: GlobalReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IncreaseNodeGroupsInGlobalReplicationGroupMessageRequestTypeDef(BaseModel): + GlobalReplicationGroupId: str + NodeGroupCount: int + ApplyImmediately: bool + RegionalConfigurations: Optional[Sequence[RegionalConfigurationTypeDef]] = None + +class SnapshotTypeDef(BaseModel): + SnapshotName: Optional[str] = None + ReplicationGroupId: Optional[str] = None + ReplicationGroupDescription: Optional[str] = None + CacheClusterId: Optional[str] = None + SnapshotStatus: Optional[str] = None + SnapshotSource: Optional[str] = None + CacheNodeType: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + NumCacheNodes: Optional[int] = None + PreferredAvailabilityZone: Optional[str] = None + PreferredOutpostArn: Optional[str] = None + CacheClusterCreateTime: Optional[datetime] = None + PreferredMaintenanceWindow: Optional[str] = None + TopicArn: Optional[str] = None + Port: Optional[int] = None + CacheParameterGroupName: Optional[str] = None + CacheSubnetGroupName: Optional[str] = None + VpcId: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + NumNodeGroups: Optional[int] = None + AutomaticFailover: Optional[AutomaticFailoverStatusType] = None + NodeSnapshots: Optional[List[NodeSnapshotTypeDef]] = None + KmsKeyId: Optional[str] = None + ARN: Optional[str] = None + DataTiering: Optional[DataTieringStatusType] = None + +class UpdateActionTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + CacheClusterId: Optional[str] = None + ServiceUpdateName: Optional[str] = None + ServiceUpdateReleaseDate: Optional[datetime] = None + ServiceUpdateSeverity: Optional[ServiceUpdateSeverityType] = None + ServiceUpdateStatus: Optional[ServiceUpdateStatusType] = None + ServiceUpdateRecommendedApplyByDate: Optional[datetime] = None + ServiceUpdateType: Optional[Literal["security-update"]] = None + UpdateActionAvailableDate: Optional[datetime] = None + UpdateActionStatus: Optional[UpdateActionStatusType] = None + NodesUpdated: Optional[str] = None + UpdateActionStatusModifiedDate: Optional[datetime] = None + SlaMet: Optional[SlaMetType] = None + NodeGroupUpdateStatus: Optional[List[NodeGroupUpdateStatusTypeDef]] = None + CacheNodeUpdateStatus: Optional[List[CacheNodeUpdateStatusTypeDef]] = None + EstimatedUpdateTime: Optional[str] = None + Engine: Optional[str] = None + +class PurchaseReservedCacheNodesOfferingResultTypeDef(BaseModel): + ReservedCacheNode: ReservedCacheNodeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedCacheNodeMessageTypeDef(BaseModel): + Marker: str + ReservedCacheNodes: List[ReservedCacheNodeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedCacheNodesOfferingMessageTypeDef(BaseModel): + Marker: str + ReservedCacheNodesOfferings: List[ReservedCacheNodesOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CopyServerlessCacheSnapshotResponseTypeDef(BaseModel): + ServerlessCacheSnapshot: ServerlessCacheSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServerlessCacheSnapshotResponseTypeDef(BaseModel): + ServerlessCacheSnapshot: ServerlessCacheSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServerlessCacheSnapshotResponseTypeDef(BaseModel): + ServerlessCacheSnapshot: ServerlessCacheSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServerlessCacheSnapshotsResponseTypeDef(BaseModel): + ServerlessCacheSnapshots: List[ServerlessCacheSnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ExportServerlessCacheSnapshotResponseTypeDef(BaseModel): + ServerlessCacheSnapshot: ServerlessCacheSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CacheSubnetGroupTypeDef(BaseModel): + CacheSubnetGroupName: Optional[str] = None + CacheSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + ARN: Optional[str] = None + SupportedNetworkTypes: Optional[List[NetworkTypeType]] = None + +class DescribeUserGroupsResultTypeDef(BaseModel): + UserGroups: List[UserGroupTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEngineDefaultParametersResultTypeDef(BaseModel): + EngineDefaults: EngineDefaultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServerlessCacheResponseTypeDef(BaseModel): + ServerlessCache: ServerlessCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServerlessCacheResponseTypeDef(BaseModel): + ServerlessCache: ServerlessCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServerlessCachesResponseTypeDef(BaseModel): + ServerlessCaches: List[ServerlessCacheTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyServerlessCacheResponseTypeDef(BaseModel): + ServerlessCache: ServerlessCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCacheClusterMessageRequestTypeDef(BaseModel): + CacheClusterId: str + ReplicationGroupId: Optional[str] = None + AZMode: Optional[AZModeType] = None + PreferredAvailabilityZone: Optional[str] = None + PreferredAvailabilityZones: Optional[Sequence[str]] = None + NumCacheNodes: Optional[int] = None + CacheNodeType: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + CacheParameterGroupName: Optional[str] = None + CacheSubnetGroupName: Optional[str] = None + CacheSecurityGroupNames: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SnapshotArns: Optional[Sequence[str]] = None + SnapshotName: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + Port: Optional[int] = None + NotificationTopicArn: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + AuthToken: Optional[str] = None + OutpostMode: Optional[OutpostModeType] = None + PreferredOutpostArn: Optional[str] = None + PreferredOutpostArns: Optional[Sequence[str]] = None + LogDeliveryConfigurations: Optional[Sequence[LogDeliveryConfigurationRequestTypeDef]] = None + TransitEncryptionEnabled: Optional[bool] = None + NetworkType: Optional[NetworkTypeType] = None + IpDiscovery: Optional[IpDiscoveryType] = None + +class CreateReplicationGroupMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + ReplicationGroupDescription: str + GlobalReplicationGroupId: Optional[str] = None + PrimaryClusterId: Optional[str] = None + AutomaticFailoverEnabled: Optional[bool] = None + MultiAZEnabled: Optional[bool] = None + NumCacheClusters: Optional[int] = None + PreferredCacheClusterAZs: Optional[Sequence[str]] = None + NumNodeGroups: Optional[int] = None + ReplicasPerNodeGroup: Optional[int] = None + NodeGroupConfiguration: Optional[Sequence[NodeGroupConfigurationUnionTypeDef]] = None + CacheNodeType: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + CacheParameterGroupName: Optional[str] = None + CacheSubnetGroupName: Optional[str] = None + CacheSecurityGroupNames: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SnapshotArns: Optional[Sequence[str]] = None + SnapshotName: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + Port: Optional[int] = None + NotificationTopicArn: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + AuthToken: Optional[str] = None + TransitEncryptionEnabled: Optional[bool] = None + AtRestEncryptionEnabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + UserGroupIds: Optional[Sequence[str]] = None + LogDeliveryConfigurations: Optional[Sequence[LogDeliveryConfigurationRequestTypeDef]] = None + DataTieringEnabled: Optional[bool] = None + NetworkType: Optional[NetworkTypeType] = None + IpDiscovery: Optional[IpDiscoveryType] = None + TransitEncryptionMode: Optional[TransitEncryptionModeType] = None + ClusterMode: Optional[ClusterModeType] = None + ServerlessCacheSnapshotName: Optional[str] = None + +class ModifyCacheClusterMessageRequestTypeDef(BaseModel): + CacheClusterId: str + NumCacheNodes: Optional[int] = None + CacheNodeIdsToRemove: Optional[Sequence[str]] = None + AZMode: Optional[AZModeType] = None + NewAvailabilityZones: Optional[Sequence[str]] = None + CacheSecurityGroupNames: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + PreferredMaintenanceWindow: Optional[str] = None + NotificationTopicArn: Optional[str] = None + CacheParameterGroupName: Optional[str] = None + NotificationTopicStatus: Optional[str] = None + ApplyImmediately: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + CacheNodeType: Optional[str] = None + AuthToken: Optional[str] = None + AuthTokenUpdateStrategy: Optional[AuthTokenUpdateStrategyTypeType] = None + LogDeliveryConfigurations: Optional[Sequence[LogDeliveryConfigurationRequestTypeDef]] = None + IpDiscovery: Optional[IpDiscoveryType] = None + +class ModifyReplicationGroupMessageRequestTypeDef(BaseModel): + ReplicationGroupId: str + ReplicationGroupDescription: Optional[str] = None + PrimaryClusterId: Optional[str] = None + SnapshottingClusterId: Optional[str] = None + AutomaticFailoverEnabled: Optional[bool] = None + MultiAZEnabled: Optional[bool] = None + NodeGroupId: Optional[str] = None + CacheSecurityGroupNames: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + PreferredMaintenanceWindow: Optional[str] = None + NotificationTopicArn: Optional[str] = None + CacheParameterGroupName: Optional[str] = None + NotificationTopicStatus: Optional[str] = None + ApplyImmediately: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + CacheNodeType: Optional[str] = None + AuthToken: Optional[str] = None + AuthTokenUpdateStrategy: Optional[AuthTokenUpdateStrategyTypeType] = None + UserGroupIdsToAdd: Optional[Sequence[str]] = None + UserGroupIdsToRemove: Optional[Sequence[str]] = None + RemoveUserGroups: Optional[bool] = None + LogDeliveryConfigurations: Optional[Sequence[LogDeliveryConfigurationRequestTypeDef]] = None + IpDiscovery: Optional[IpDiscoveryType] = None + TransitEncryptionEnabled: Optional[bool] = None + TransitEncryptionMode: Optional[TransitEncryptionModeType] = None + ClusterMode: Optional[ClusterModeType] = None + +class PendingModifiedValuesTypeDef(BaseModel): + NumCacheNodes: Optional[int] = None + CacheNodeIdsToRemove: Optional[List[str]] = None + EngineVersion: Optional[str] = None + CacheNodeType: Optional[str] = None + AuthTokenStatus: Optional[AuthTokenUpdateStatusType] = None + LogDeliveryConfigurations: Optional[List[PendingLogDeliveryConfigurationTypeDef]] = None + TransitEncryptionEnabled: Optional[bool] = None + TransitEncryptionMode: Optional[TransitEncryptionModeType] = None + +class ReplicationGroupPendingModifiedValuesTypeDef(BaseModel): + PrimaryClusterId: Optional[str] = None + AutomaticFailoverStatus: Optional[PendingAutomaticFailoverStatusType] = None + Resharding: Optional[ReshardingStatusTypeDef] = None + AuthTokenStatus: Optional[AuthTokenUpdateStatusType] = None + UserGroups: Optional[UserGroupsUpdateStatusTypeDef] = None + LogDeliveryConfigurations: Optional[List[PendingLogDeliveryConfigurationTypeDef]] = None + TransitEncryptionEnabled: Optional[bool] = None + TransitEncryptionMode: Optional[TransitEncryptionModeType] = None + ClusterMode: Optional[ClusterModeType] = None + +class CopySnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotsListMessageTypeDef(BaseModel): + Marker: str + Snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateActionsMessageTypeDef(BaseModel): + Marker: str + UpdateActions: List[UpdateActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CacheSubnetGroupMessageTypeDef(BaseModel): + Marker: str + CacheSubnetGroups: List[CacheSubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCacheSubnetGroupResultTypeDef(BaseModel): + CacheSubnetGroup: CacheSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyCacheSubnetGroupResultTypeDef(BaseModel): + CacheSubnetGroup: CacheSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CacheClusterTypeDef(BaseModel): + CacheClusterId: Optional[str] = None + ConfigurationEndpoint: Optional[EndpointTypeDef] = None + ClientDownloadLandingPage: Optional[str] = None + CacheNodeType: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + CacheClusterStatus: Optional[str] = None + NumCacheNodes: Optional[int] = None + PreferredAvailabilityZone: Optional[str] = None + PreferredOutpostArn: Optional[str] = None + CacheClusterCreateTime: Optional[datetime] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[PendingModifiedValuesTypeDef] = None + NotificationConfiguration: Optional[NotificationConfigurationTypeDef] = None + CacheSecurityGroups: Optional[List[CacheSecurityGroupMembershipTypeDef]] = None + CacheParameterGroup: Optional[CacheParameterGroupStatusTypeDef] = None + CacheSubnetGroupName: Optional[str] = None + CacheNodes: Optional[List[CacheNodeTypeDef]] = None + AutoMinorVersionUpgrade: Optional[bool] = None + SecurityGroups: Optional[List[SecurityGroupMembershipTypeDef]] = None + ReplicationGroupId: Optional[str] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + AuthTokenEnabled: Optional[bool] = None + AuthTokenLastModifiedDate: Optional[datetime] = None + TransitEncryptionEnabled: Optional[bool] = None + AtRestEncryptionEnabled: Optional[bool] = None + ARN: Optional[str] = None + ReplicationGroupLogDeliveryEnabled: Optional[bool] = None + LogDeliveryConfigurations: Optional[List[LogDeliveryConfigurationTypeDef]] = None + NetworkType: Optional[NetworkTypeType] = None + IpDiscovery: Optional[IpDiscoveryType] = None + TransitEncryptionMode: Optional[TransitEncryptionModeType] = None + +class ReplicationGroupTypeDef(BaseModel): + ReplicationGroupId: Optional[str] = None + Description: Optional[str] = None + GlobalReplicationGroupInfo: Optional[GlobalReplicationGroupInfoTypeDef] = None + Status: Optional[str] = None + PendingModifiedValues: Optional[ReplicationGroupPendingModifiedValuesTypeDef] = None + MemberClusters: Optional[List[str]] = None + NodeGroups: Optional[List[NodeGroupTypeDef]] = None + SnapshottingClusterId: Optional[str] = None + AutomaticFailover: Optional[AutomaticFailoverStatusType] = None + MultiAZ: Optional[MultiAZStatusType] = None + ConfigurationEndpoint: Optional[EndpointTypeDef] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + ClusterEnabled: Optional[bool] = None + CacheNodeType: Optional[str] = None + AuthTokenEnabled: Optional[bool] = None + AuthTokenLastModifiedDate: Optional[datetime] = None + TransitEncryptionEnabled: Optional[bool] = None + AtRestEncryptionEnabled: Optional[bool] = None + MemberClustersOutpostArns: Optional[List[str]] = None + KmsKeyId: Optional[str] = None + ARN: Optional[str] = None + UserGroupIds: Optional[List[str]] = None + LogDeliveryConfigurations: Optional[List[LogDeliveryConfigurationTypeDef]] = None + ReplicationGroupCreateTime: Optional[datetime] = None + DataTiering: Optional[DataTieringStatusType] = None + AutoMinorVersionUpgrade: Optional[bool] = None + NetworkType: Optional[NetworkTypeType] = None + IpDiscovery: Optional[IpDiscoveryType] = None + TransitEncryptionMode: Optional[TransitEncryptionModeType] = None + ClusterMode: Optional[ClusterModeType] = None + +class CacheClusterMessageTypeDef(BaseModel): + Marker: str + CacheClusters: List[CacheClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCacheClusterResultTypeDef(BaseModel): + CacheCluster: CacheClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCacheClusterResultTypeDef(BaseModel): + CacheCluster: CacheClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyCacheClusterResultTypeDef(BaseModel): + CacheCluster: CacheClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootCacheClusterResultTypeDef(BaseModel): + CacheCluster: CacheClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CompleteMigrationResponseTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReplicationGroupResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DecreaseReplicaCountResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteReplicationGroupResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IncreaseReplicaCountResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReplicationGroupResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyReplicationGroupShardConfigurationResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationGroupMessageTypeDef(BaseModel): + Marker: str + ReplicationGroups: List[ReplicationGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMigrationResponseTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TestFailoverResultTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TestMigrationResponseTypeDef(BaseModel): + ReplicationGroup: ReplicationGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/elasticache_constants.py b/aws_resource_validator/pydantic_models/elasticache_constants.py new file mode 100644 index 00000000..6abaf129 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elasticache_constants.py @@ -0,0 +1,520 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AZModeType = Literal["cross-az", "single-az"] +AuthTokenUpdateStatusType = Literal["ROTATING", "SETTING"] +AuthTokenUpdateStrategyTypeType = Literal["DELETE", "ROTATE", "SET"] +AuthenticationTypeType = Literal["iam", "no-password", "password"] +AutomaticFailoverStatusType = Literal["disabled", "disabling", "enabled", "enabling"] +CacheClusterAvailableWaiterName = Literal["cache_cluster_available"] +CacheClusterDeletedWaiterName = Literal["cache_cluster_deleted"] +ChangeTypeType = Literal["immediate", "requires-reboot"] +ClusterModeType = Literal["compatible", "disabled", "enabled"] +DataStorageUnitType = Literal["GB"] +DataTieringStatusType = Literal["disabled", "enabled"] +DescribeCacheClustersPaginatorName = Literal["describe_cache_clusters"] +DescribeCacheEngineVersionsPaginatorName = Literal["describe_cache_engine_versions"] +DescribeCacheParameterGroupsPaginatorName = Literal["describe_cache_parameter_groups"] +DescribeCacheParametersPaginatorName = Literal["describe_cache_parameters"] +DescribeCacheSecurityGroupsPaginatorName = Literal["describe_cache_security_groups"] +DescribeCacheSubnetGroupsPaginatorName = Literal["describe_cache_subnet_groups"] +DescribeEngineDefaultParametersPaginatorName = Literal["describe_engine_default_parameters"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeGlobalReplicationGroupsPaginatorName = Literal["describe_global_replication_groups"] +DescribeReplicationGroupsPaginatorName = Literal["describe_replication_groups"] +DescribeReservedCacheNodesOfferingsPaginatorName = Literal["describe_reserved_cache_nodes_offerings"] +DescribeReservedCacheNodesPaginatorName = Literal["describe_reserved_cache_nodes"] +DescribeServerlessCacheSnapshotsPaginatorName = Literal["describe_serverless_cache_snapshots"] +DescribeServerlessCachesPaginatorName = Literal["describe_serverless_caches"] +DescribeServiceUpdatesPaginatorName = Literal["describe_service_updates"] +DescribeSnapshotsPaginatorName = Literal["describe_snapshots"] +DescribeUpdateActionsPaginatorName = Literal["describe_update_actions"] +DescribeUserGroupsPaginatorName = Literal["describe_user_groups"] +DescribeUsersPaginatorName = Literal["describe_users"] +DestinationTypeType = Literal["cloudwatch-logs", "kinesis-firehose"] +InputAuthenticationTypeType = Literal["iam", "no-password-required", "password"] +IpDiscoveryType = Literal["ipv4", "ipv6"] +LogDeliveryConfigurationStatusType = Literal["active", "disabling", "enabling", "error", "modifying"] +LogFormatType = Literal["json", "text"] +LogTypeType = Literal["engine-log", "slow-log"] +MultiAZStatusType = Literal["disabled", "enabled"] +NetworkTypeType = Literal["dual_stack", "ipv4", "ipv6"] +NodeUpdateInitiatedByType = Literal["customer", "system"] +NodeUpdateStatusType = Literal["complete", "in-progress", "not-applied", "stopped", "stopping", "waiting-to-start"] +OutpostModeType = Literal["cross-outpost", "single-outpost"] +PendingAutomaticFailoverStatusType = Literal["disabled", "enabled"] +ReplicationGroupAvailableWaiterName = Literal["replication_group_available"] +ReplicationGroupDeletedWaiterName = Literal["replication_group_deleted"] +ServiceUpdateSeverityType = Literal["critical", "important", "low", "medium"] +ServiceUpdateStatusType = Literal["available", "cancelled", "expired"] +ServiceUpdateTypeType = Literal["security-update"] +SlaMetType = Literal["n/a", "no", "yes"] +SourceTypeType = Literal["cache-cluster", + "cache-parameter-group", + "cache-security-group", + "cache-subnet-group", + "replication-group", + "serverless-cache", + "serverless-cache-snapshot", + "user", + "user-group",] +TransitEncryptionModeType = Literal["preferred", "required"] +UpdateActionStatusType = Literal["complete", + "in-progress", + "not-applicable", + "not-applied", + "scheduled", + "scheduling", + "stopped", + "stopping", + "waiting-to-start",] +ElastiCacheServiceName = Literal["elasticache"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_cache_clusters", + "describe_cache_engine_versions", + "describe_cache_parameter_groups", + "describe_cache_parameters", + "describe_cache_security_groups", + "describe_cache_subnet_groups", + "describe_engine_default_parameters", + "describe_events", + "describe_global_replication_groups", + "describe_replication_groups", + "describe_reserved_cache_nodes", + "describe_reserved_cache_nodes_offerings", + "describe_serverless_cache_snapshots", + "describe_serverless_caches", + "describe_service_updates", + "describe_snapshots", + "describe_update_actions", + "describe_user_groups", + "describe_users",] +WaiterName = Literal["cache_cluster_available", + "cache_cluster_deleted", + "replication_group_available", + "replication_group_deleted",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +NodeGroupConfigurationUnionTypeDef = Union[ 'NodeGroupConfigurationTypeDef', 'NodeGroupConfigurationExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/elasticbeanstalk_classes.py b/aws_resource_validator/pydantic_models/elasticbeanstalk_classes.py new file mode 100644 index 00000000..8a8ac8f1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elasticbeanstalk_classes.py @@ -0,0 +1,897 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.elasticbeanstalk_constants import * + +class AbortEnvironmentUpdateMessageRequestTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class LatencyTypeDef(BaseModel): + P999: Optional[float] = None + P99: Optional[float] = None + P95: Optional[float] = None + P90: Optional[float] = None + P85: Optional[float] = None + P75: Optional[float] = None + P50: Optional[float] = None + P10: Optional[float] = None + +class StatusCodesTypeDef(BaseModel): + Status2xx: Optional[int] = None + Status3xx: Optional[int] = None + Status4xx: Optional[int] = None + Status5xx: Optional[int] = None + +class S3LocationTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + +class SourceBuildInformationTypeDef(BaseModel): + SourceType: SourceTypeType + SourceRepository: SourceRepositoryType + SourceLocation: str + +class MaxAgeRuleTypeDef(BaseModel): + Enabled: bool + MaxAgeInDays: Optional[int] = None + DeleteSourceFromS3: Optional[bool] = None + +class MaxCountRuleTypeDef(BaseModel): + Enabled: bool + MaxCount: Optional[int] = None + DeleteSourceFromS3: Optional[bool] = None + +class ApplyEnvironmentManagedActionRequestRequestTypeDef(BaseModel): + ActionId: str + EnvironmentName: Optional[str] = None + EnvironmentId: Optional[str] = None + +class AssociateEnvironmentOperationsRoleMessageRequestTypeDef(BaseModel): + EnvironmentName: str + OperationsRole: str + +class AutoScalingGroupTypeDef(BaseModel): + Name: Optional[str] = None + +class BuildConfigurationTypeDef(BaseModel): + CodeBuildServiceRole: str + Image: str + ArtifactName: Optional[str] = None + ComputeType: Optional[ComputeTypeType] = None + TimeoutInMinutes: Optional[int] = None + +class BuilderTypeDef(BaseModel): + ARN: Optional[str] = None + +class CPUUtilizationTypeDef(BaseModel): + User: Optional[float] = None + Nice: Optional[float] = None + System: Optional[float] = None + Idle: Optional[float] = None + IOWait: Optional[float] = None + IRQ: Optional[float] = None + SoftIRQ: Optional[float] = None + Privileged: Optional[float] = None + +class CheckDNSAvailabilityMessageRequestTypeDef(BaseModel): + CNAMEPrefix: str + +class ComposeEnvironmentsMessageRequestTypeDef(BaseModel): + ApplicationName: Optional[str] = None + GroupName: Optional[str] = None + VersionLabels: Optional[Sequence[str]] = None + +class OptionRestrictionRegexTypeDef(BaseModel): + Pattern: Optional[str] = None + Label: Optional[str] = None + +class ConfigurationOptionSettingTypeDef(BaseModel): + ResourceName: Optional[str] = None + Namespace: Optional[str] = None + OptionName: Optional[str] = None + Value: Optional[str] = None + +class ValidationMessageTypeDef(BaseModel): + Message: Optional[str] = None + Severity: Optional[ValidationSeverityType] = None + Namespace: Optional[str] = None + OptionName: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class SourceConfigurationTypeDef(BaseModel): + ApplicationName: Optional[str] = None + TemplateName: Optional[str] = None + +class EnvironmentTierTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + Version: Optional[str] = None + +class OptionSpecificationTypeDef(BaseModel): + ResourceName: Optional[str] = None + Namespace: Optional[str] = None + OptionName: Optional[str] = None + +class PlatformSummaryTypeDef(BaseModel): + PlatformArn: Optional[str] = None + PlatformOwner: Optional[str] = None + PlatformStatus: Optional[PlatformStatusType] = None + PlatformCategory: Optional[str] = None + OperatingSystemName: Optional[str] = None + OperatingSystemVersion: Optional[str] = None + SupportedTierList: Optional[List[str]] = None + SupportedAddonList: Optional[List[str]] = None + PlatformLifecycleState: Optional[str] = None + PlatformVersion: Optional[str] = None + PlatformBranchName: Optional[str] = None + PlatformBranchLifecycleState: Optional[str] = None + +class CustomAmiTypeDef(BaseModel): + VirtualizationType: Optional[str] = None + ImageId: Optional[str] = None + +class DeleteApplicationMessageRequestTypeDef(BaseModel): + ApplicationName: str + TerminateEnvByForce: Optional[bool] = None + +class DeleteApplicationVersionMessageRequestTypeDef(BaseModel): + ApplicationName: str + VersionLabel: str + DeleteSourceBundle: Optional[bool] = None + +class DeleteConfigurationTemplateMessageRequestTypeDef(BaseModel): + ApplicationName: str + TemplateName: str + +class DeleteEnvironmentConfigurationMessageRequestTypeDef(BaseModel): + ApplicationName: str + EnvironmentName: str + +class DeletePlatformVersionRequestRequestTypeDef(BaseModel): + PlatformArn: Optional[str] = None + +class DeploymentTypeDef(BaseModel): + VersionLabel: Optional[str] = None + DeploymentId: Optional[int] = None + Status: Optional[str] = None + DeploymentTime: Optional[datetime] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeApplicationVersionsMessageRequestTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabels: Optional[Sequence[str]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeApplicationsMessageRequestTypeDef(BaseModel): + ApplicationNames: Optional[Sequence[str]] = None + +class DescribeConfigurationSettingsMessageRequestTypeDef(BaseModel): + ApplicationName: str + TemplateName: Optional[str] = None + EnvironmentName: Optional[str] = None + +class DescribeEnvironmentHealthRequestRequestTypeDef(BaseModel): + EnvironmentName: Optional[str] = None + EnvironmentId: Optional[str] = None + AttributeNames: Optional[Sequence[EnvironmentHealthAttributeType]] = None + +class InstanceHealthSummaryTypeDef(BaseModel): + NoData: Optional[int] = None + Unknown: Optional[int] = None + Pending: Optional[int] = None + Ok: Optional[int] = None + Info: Optional[int] = None + Warning: Optional[int] = None + Degraded: Optional[int] = None + Severe: Optional[int] = None + +class DescribeEnvironmentManagedActionHistoryRequestRequestTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + NextToken: Optional[str] = None + MaxItems: Optional[int] = None + +class ManagedActionHistoryItemTypeDef(BaseModel): + ActionId: Optional[str] = None + ActionType: Optional[ActionTypeType] = None + ActionDescription: Optional[str] = None + FailureType: Optional[FailureTypeType] = None + Status: Optional[ActionHistoryStatusType] = None + FailureDescription: Optional[str] = None + ExecutedTime: Optional[datetime] = None + FinishedTime: Optional[datetime] = None + +class DescribeEnvironmentManagedActionsRequestRequestTypeDef(BaseModel): + EnvironmentName: Optional[str] = None + EnvironmentId: Optional[str] = None + Status: Optional[ActionStatusType] = None + +class ManagedActionTypeDef(BaseModel): + ActionId: Optional[str] = None + ActionDescription: Optional[str] = None + ActionType: Optional[ActionTypeType] = None + Status: Optional[ActionStatusType] = None + WindowStartTime: Optional[datetime] = None + +class DescribeEnvironmentResourcesMessageRequestTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeInstancesHealthRequestRequestTypeDef(BaseModel): + EnvironmentName: Optional[str] = None + EnvironmentId: Optional[str] = None + AttributeNames: Optional[Sequence[InstancesHealthAttributeType]] = None + NextToken: Optional[str] = None + +class DescribePlatformVersionRequestRequestTypeDef(BaseModel): + PlatformArn: Optional[str] = None + +class DisassociateEnvironmentOperationsRoleMessageRequestTypeDef(BaseModel): + EnvironmentName: str + +class EnvironmentLinkTypeDef(BaseModel): + LinkName: Optional[str] = None + EnvironmentName: Optional[str] = None + +class EnvironmentInfoDescriptionTypeDef(BaseModel): + InfoType: Optional[EnvironmentInfoTypeType] = None + Ec2InstanceId: Optional[str] = None + SampleTimestamp: Optional[datetime] = None + Message: Optional[str] = None + +class InstanceTypeDef(BaseModel): + Id: Optional[str] = None + +class LaunchConfigurationTypeDef(BaseModel): + Name: Optional[str] = None + +class LaunchTemplateTypeDef(BaseModel): + Id: Optional[str] = None + +class LoadBalancerTypeDef(BaseModel): + Name: Optional[str] = None + +class QueueTypeDef(BaseModel): + Name: Optional[str] = None + URL: Optional[str] = None + +class TriggerTypeDef(BaseModel): + Name: Optional[str] = None + +class EventDescriptionTypeDef(BaseModel): + EventDate: Optional[datetime] = None + Message: Optional[str] = None + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + TemplateName: Optional[str] = None + EnvironmentName: Optional[str] = None + PlatformArn: Optional[str] = None + RequestId: Optional[str] = None + Severity: Optional[EventSeverityType] = None + +class SolutionStackDescriptionTypeDef(BaseModel): + SolutionStackName: Optional[str] = None + PermittedFileTypes: Optional[List[str]] = None + +class SearchFilterTypeDef(BaseModel): + Attribute: Optional[str] = None + Operator: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class PlatformBranchSummaryTypeDef(BaseModel): + PlatformName: Optional[str] = None + BranchName: Optional[str] = None + LifecycleState: Optional[str] = None + BranchOrder: Optional[int] = None + SupportedTierList: Optional[List[str]] = None + +class PlatformFilterTypeDef(BaseModel): + Type: Optional[str] = None + Operator: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class ListTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceArn: str + +class ListenerTypeDef(BaseModel): + Protocol: Optional[str] = None + Port: Optional[int] = None + +class PlatformFrameworkTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + +class PlatformProgrammingLanguageTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + +class RebuildEnvironmentMessageRequestTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + +class RequestEnvironmentInfoMessageRequestTypeDef(BaseModel): + InfoType: EnvironmentInfoTypeType + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + +class ResourceQuotaTypeDef(BaseModel): + Maximum: Optional[int] = None + +class RestartAppServerMessageRequestTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + +class RetrieveEnvironmentInfoMessageRequestTypeDef(BaseModel): + InfoType: EnvironmentInfoTypeType + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + +class SwapEnvironmentCNAMEsMessageRequestTypeDef(BaseModel): + SourceEnvironmentId: Optional[str] = None + SourceEnvironmentName: Optional[str] = None + DestinationEnvironmentId: Optional[str] = None + DestinationEnvironmentName: Optional[str] = None + +class TerminateEnvironmentMessageRequestTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + TerminateResources: Optional[bool] = None + ForceTerminate: Optional[bool] = None + +class UpdateApplicationMessageRequestTypeDef(BaseModel): + ApplicationName: str + Description: Optional[str] = None + +class UpdateApplicationVersionMessageRequestTypeDef(BaseModel): + ApplicationName: str + VersionLabel: str + Description: Optional[str] = None + +class ApplyEnvironmentManagedActionResultTypeDef(BaseModel): + ActionId: str + ActionDescription: str + ActionType: ActionTypeType + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CheckDNSAvailabilityResultMessageTypeDef(BaseModel): + Available: bool + FullyQualifiedCNAME: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStorageLocationResultMessageTypeDef(BaseModel): + S3Bucket: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationMetricsTypeDef(BaseModel): + Duration: Optional[int] = None + RequestCount: Optional[int] = None + StatusCodes: Optional[StatusCodesTypeDef] = None + Latency: Optional[LatencyTypeDef] = None + +class ApplicationVersionDescriptionTypeDef(BaseModel): + ApplicationVersionArn: Optional[str] = None + ApplicationName: Optional[str] = None + Description: Optional[str] = None + VersionLabel: Optional[str] = None + SourceBuildInformation: Optional[SourceBuildInformationTypeDef] = None + BuildArn: Optional[str] = None + SourceBundle: Optional[S3LocationTypeDef] = None + DateCreated: Optional[datetime] = None + DateUpdated: Optional[datetime] = None + Status: Optional[ApplicationVersionStatusType] = None + +class ApplicationVersionLifecycleConfigTypeDef(BaseModel): + MaxCountRule: Optional[MaxCountRuleTypeDef] = None + MaxAgeRule: Optional[MaxAgeRuleTypeDef] = None + +class SystemStatusTypeDef(BaseModel): + CPUUtilization: Optional[CPUUtilizationTypeDef] = None + LoadAverage: Optional[List[float]] = None + +class ConfigurationOptionDescriptionTypeDef(BaseModel): + Namespace: Optional[str] = None + Name: Optional[str] = None + DefaultValue: Optional[str] = None + ChangeSeverity: Optional[str] = None + UserDefined: Optional[bool] = None + ValueType: Optional[ConfigurationOptionValueTypeType] = None + ValueOptions: Optional[List[str]] = None + MinValue: Optional[int] = None + MaxValue: Optional[int] = None + MaxLength: Optional[int] = None + Regex: Optional[OptionRestrictionRegexTypeDef] = None + +class ConfigurationSettingsDescriptionResponseTypeDef(BaseModel): + SolutionStackName: str + PlatformArn: str + ApplicationName: str + TemplateName: str + Description: str + EnvironmentName: str + DeploymentStatus: ConfigurationDeploymentStatusType + DateCreated: datetime + DateUpdated: datetime + OptionSettings: List[ConfigurationOptionSettingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationSettingsDescriptionTypeDef(BaseModel): + SolutionStackName: Optional[str] = None + PlatformArn: Optional[str] = None + ApplicationName: Optional[str] = None + TemplateName: Optional[str] = None + Description: Optional[str] = None + EnvironmentName: Optional[str] = None + DeploymentStatus: Optional[ConfigurationDeploymentStatusType] = None + DateCreated: Optional[datetime] = None + DateUpdated: Optional[datetime] = None + OptionSettings: Optional[List[ConfigurationOptionSettingTypeDef]] = None + +class ValidateConfigurationSettingsMessageRequestTypeDef(BaseModel): + ApplicationName: str + OptionSettings: Sequence[ConfigurationOptionSettingTypeDef] + TemplateName: Optional[str] = None + EnvironmentName: Optional[str] = None + +class ConfigurationSettingsValidationMessagesTypeDef(BaseModel): + Messages: List[ValidationMessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationVersionMessageRequestTypeDef(BaseModel): + ApplicationName: str + VersionLabel: str + Description: Optional[str] = None + SourceBuildInformation: Optional[SourceBuildInformationTypeDef] = None + SourceBundle: Optional[S3LocationTypeDef] = None + BuildConfiguration: Optional[BuildConfigurationTypeDef] = None + AutoCreateApplication: Optional[bool] = None + Process: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePlatformVersionRequestRequestTypeDef(BaseModel): + PlatformName: str + PlatformVersion: str + PlatformDefinitionBundle: S3LocationTypeDef + EnvironmentName: Optional[str] = None + OptionSettings: Optional[Sequence[ConfigurationOptionSettingTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ResourceTagsDescriptionMessageTypeDef(BaseModel): + ResourceArn: str + ResourceTags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceArn: str + TagsToAdd: Optional[Sequence[TagTypeDef]] = None + TagsToRemove: Optional[Sequence[str]] = None + +class CreateConfigurationTemplateMessageRequestTypeDef(BaseModel): + ApplicationName: str + TemplateName: str + SolutionStackName: Optional[str] = None + PlatformArn: Optional[str] = None + SourceConfiguration: Optional[SourceConfigurationTypeDef] = None + EnvironmentId: Optional[str] = None + Description: Optional[str] = None + OptionSettings: Optional[Sequence[ConfigurationOptionSettingTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEnvironmentMessageRequestTypeDef(BaseModel): + ApplicationName: str + EnvironmentName: Optional[str] = None + GroupName: Optional[str] = None + Description: Optional[str] = None + CNAMEPrefix: Optional[str] = None + Tier: Optional[EnvironmentTierTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + VersionLabel: Optional[str] = None + TemplateName: Optional[str] = None + SolutionStackName: Optional[str] = None + PlatformArn: Optional[str] = None + OptionSettings: Optional[Sequence[ConfigurationOptionSettingTypeDef]] = None + OptionsToRemove: Optional[Sequence[OptionSpecificationTypeDef]] = None + OperationsRole: Optional[str] = None + +class DescribeConfigurationOptionsMessageRequestTypeDef(BaseModel): + ApplicationName: Optional[str] = None + TemplateName: Optional[str] = None + EnvironmentName: Optional[str] = None + SolutionStackName: Optional[str] = None + PlatformArn: Optional[str] = None + Options: Optional[Sequence[OptionSpecificationTypeDef]] = None + +class UpdateConfigurationTemplateMessageRequestTypeDef(BaseModel): + ApplicationName: str + TemplateName: str + Description: Optional[str] = None + OptionSettings: Optional[Sequence[ConfigurationOptionSettingTypeDef]] = None + OptionsToRemove: Optional[Sequence[OptionSpecificationTypeDef]] = None + +class UpdateEnvironmentMessageRequestTypeDef(BaseModel): + ApplicationName: Optional[str] = None + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + GroupName: Optional[str] = None + Description: Optional[str] = None + Tier: Optional[EnvironmentTierTypeDef] = None + VersionLabel: Optional[str] = None + TemplateName: Optional[str] = None + SolutionStackName: Optional[str] = None + PlatformArn: Optional[str] = None + OptionSettings: Optional[Sequence[ConfigurationOptionSettingTypeDef]] = None + OptionsToRemove: Optional[Sequence[OptionSpecificationTypeDef]] = None + +class CreatePlatformVersionResultTypeDef(BaseModel): + PlatformSummary: PlatformSummaryTypeDef + Builder: BuilderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePlatformVersionResultTypeDef(BaseModel): + PlatformSummary: PlatformSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPlatformVersionsResultTypeDef(BaseModel): + PlatformSummaryList: List[PlatformSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeApplicationVersionsMessageDescribeApplicationVersionsPaginateTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabels: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEnvironmentManagedActionHistoryRequestDescribeEnvironmentManagedActionHistoryPaginateTypeDef(BaseModel): + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEnvironmentManagedActionHistoryResultTypeDef(BaseModel): + ManagedActionHistoryItems: List[ManagedActionHistoryItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeEnvironmentManagedActionsResultTypeDef(BaseModel): + ManagedActions: List[ManagedActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEnvironmentsMessageDescribeEnvironmentsPaginateTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + EnvironmentIds: Optional[Sequence[str]] = None + EnvironmentNames: Optional[Sequence[str]] = None + IncludeDeleted: Optional[bool] = None + IncludedDeletedBackTo: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEnvironmentsMessageRequestTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + EnvironmentIds: Optional[Sequence[str]] = None + EnvironmentNames: Optional[Sequence[str]] = None + IncludeDeleted: Optional[bool] = None + IncludedDeletedBackTo: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + TemplateName: Optional[str] = None + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + PlatformArn: Optional[str] = None + RequestId: Optional[str] = None + Severity: Optional[EventSeverityType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageRequestTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + TemplateName: Optional[str] = None + EnvironmentId: Optional[str] = None + EnvironmentName: Optional[str] = None + PlatformArn: Optional[str] = None + RequestId: Optional[str] = None + Severity: Optional[EventSeverityType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeEnvironmentsMessageEnvironmentExistsWaitTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + EnvironmentIds: Optional[Sequence[str]] = None + EnvironmentNames: Optional[Sequence[str]] = None + IncludeDeleted: Optional[bool] = None + IncludedDeletedBackTo: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEnvironmentsMessageEnvironmentTerminatedWaitTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + EnvironmentIds: Optional[Sequence[str]] = None + EnvironmentNames: Optional[Sequence[str]] = None + IncludeDeleted: Optional[bool] = None + IncludedDeletedBackTo: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEnvironmentsMessageEnvironmentUpdatedWaitTypeDef(BaseModel): + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + EnvironmentIds: Optional[Sequence[str]] = None + EnvironmentNames: Optional[Sequence[str]] = None + IncludeDeleted: Optional[bool] = None + IncludedDeletedBackTo: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class RetrieveEnvironmentInfoResultMessageTypeDef(BaseModel): + EnvironmentInfo: List[EnvironmentInfoDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentResourceDescriptionTypeDef(BaseModel): + EnvironmentName: Optional[str] = None + AutoScalingGroups: Optional[List[AutoScalingGroupTypeDef]] = None + Instances: Optional[List[InstanceTypeDef]] = None + LaunchConfigurations: Optional[List[LaunchConfigurationTypeDef]] = None + LaunchTemplates: Optional[List[LaunchTemplateTypeDef]] = None + LoadBalancers: Optional[List[LoadBalancerTypeDef]] = None + Triggers: Optional[List[TriggerTypeDef]] = None + Queues: Optional[List[QueueTypeDef]] = None + +class EventDescriptionsMessageTypeDef(BaseModel): + Events: List[EventDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAvailableSolutionStacksResultMessageTypeDef(BaseModel): + SolutionStacks: List[str] + SolutionStackDetails: List[SolutionStackDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPlatformBranchesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[SearchFilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class ListPlatformBranchesResultTypeDef(BaseModel): + PlatformBranchSummaryList: List[PlatformBranchSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPlatformVersionsRequestListPlatformVersionsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[PlatformFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlatformVersionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[PlatformFilterTypeDef]] = None + MaxRecords: Optional[int] = None + NextToken: Optional[str] = None + +class LoadBalancerDescriptionTypeDef(BaseModel): + LoadBalancerName: Optional[str] = None + Domain: Optional[str] = None + Listeners: Optional[List[ListenerTypeDef]] = None + +class PlatformDescriptionTypeDef(BaseModel): + PlatformArn: Optional[str] = None + PlatformOwner: Optional[str] = None + PlatformName: Optional[str] = None + PlatformVersion: Optional[str] = None + SolutionStackName: Optional[str] = None + PlatformStatus: Optional[PlatformStatusType] = None + DateCreated: Optional[datetime] = None + DateUpdated: Optional[datetime] = None + PlatformCategory: Optional[str] = None + Description: Optional[str] = None + Maintainer: Optional[str] = None + OperatingSystemName: Optional[str] = None + OperatingSystemVersion: Optional[str] = None + ProgrammingLanguages: Optional[List[PlatformProgrammingLanguageTypeDef]] = None + Frameworks: Optional[List[PlatformFrameworkTypeDef]] = None + CustomAmiList: Optional[List[CustomAmiTypeDef]] = None + SupportedTierList: Optional[List[str]] = None + SupportedAddonList: Optional[List[str]] = None + PlatformLifecycleState: Optional[str] = None + PlatformBranchName: Optional[str] = None + PlatformBranchLifecycleState: Optional[str] = None + +class ResourceQuotasTypeDef(BaseModel): + ApplicationQuota: Optional[ResourceQuotaTypeDef] = None + ApplicationVersionQuota: Optional[ResourceQuotaTypeDef] = None + EnvironmentQuota: Optional[ResourceQuotaTypeDef] = None + ConfigurationTemplateQuota: Optional[ResourceQuotaTypeDef] = None + CustomPlatformQuota: Optional[ResourceQuotaTypeDef] = None + +class DescribeEnvironmentHealthResultTypeDef(BaseModel): + EnvironmentName: str + HealthStatus: str + Status: EnvironmentHealthType + Color: str + Causes: List[str] + ApplicationMetrics: ApplicationMetricsTypeDef + InstancesHealth: InstanceHealthSummaryTypeDef + RefreshedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationVersionDescriptionMessageTypeDef(BaseModel): + ApplicationVersion: ApplicationVersionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationVersionDescriptionsMessageTypeDef(BaseModel): + ApplicationVersions: List[ApplicationVersionDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ApplicationResourceLifecycleConfigTypeDef(BaseModel): + ServiceRole: Optional[str] = None + VersionLifecycleConfig: Optional[ApplicationVersionLifecycleConfigTypeDef] = None + +class SingleInstanceHealthTypeDef(BaseModel): + InstanceId: Optional[str] = None + HealthStatus: Optional[str] = None + Color: Optional[str] = None + Causes: Optional[List[str]] = None + LaunchedAt: Optional[datetime] = None + ApplicationMetrics: Optional[ApplicationMetricsTypeDef] = None + System: Optional[SystemStatusTypeDef] = None + Deployment: Optional[DeploymentTypeDef] = None + AvailabilityZone: Optional[str] = None + InstanceType: Optional[str] = None + +class ConfigurationOptionsDescriptionTypeDef(BaseModel): + SolutionStackName: str + PlatformArn: str + Options: List[ConfigurationOptionDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationSettingsDescriptionsTypeDef(BaseModel): + ConfigurationSettings: List[ConfigurationSettingsDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentResourceDescriptionsMessageTypeDef(BaseModel): + EnvironmentResources: EnvironmentResourceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentResourcesDescriptionTypeDef(BaseModel): + LoadBalancer: Optional[LoadBalancerDescriptionTypeDef] = None + +class DescribePlatformVersionResultTypeDef(BaseModel): + PlatformDescription: PlatformDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAttributesResultTypeDef(BaseModel): + ResourceQuotas: ResourceQuotasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationDescriptionTypeDef(BaseModel): + ApplicationArn: Optional[str] = None + ApplicationName: Optional[str] = None + Description: Optional[str] = None + DateCreated: Optional[datetime] = None + DateUpdated: Optional[datetime] = None + Versions: Optional[List[str]] = None + ConfigurationTemplates: Optional[List[str]] = None + ResourceLifecycleConfig: Optional[ApplicationResourceLifecycleConfigTypeDef] = None + +class ApplicationResourceLifecycleDescriptionMessageTypeDef(BaseModel): + ApplicationName: str + ResourceLifecycleConfig: ApplicationResourceLifecycleConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationMessageRequestTypeDef(BaseModel): + ApplicationName: str + Description: Optional[str] = None + ResourceLifecycleConfig: Optional[ApplicationResourceLifecycleConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateApplicationResourceLifecycleMessageRequestTypeDef(BaseModel): + ApplicationName: str + ResourceLifecycleConfig: ApplicationResourceLifecycleConfigTypeDef + +class DescribeInstancesHealthResultTypeDef(BaseModel): + InstanceHealthList: List[SingleInstanceHealthTypeDef] + RefreshedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EnvironmentDescriptionResponseTypeDef(BaseModel): + EnvironmentName: str + EnvironmentId: str + ApplicationName: str + VersionLabel: str + SolutionStackName: str + PlatformArn: str + TemplateName: str + Description: str + EndpointURL: str + CNAME: str + DateCreated: datetime + DateUpdated: datetime + Status: EnvironmentStatusType + AbortableOperationInProgress: bool + Health: EnvironmentHealthType + HealthStatus: EnvironmentHealthStatusType + Resources: EnvironmentResourcesDescriptionTypeDef + Tier: EnvironmentTierTypeDef + EnvironmentLinks: List[EnvironmentLinkTypeDef] + EnvironmentArn: str + OperationsRole: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentDescriptionTypeDef(BaseModel): + EnvironmentName: Optional[str] = None + EnvironmentId: Optional[str] = None + ApplicationName: Optional[str] = None + VersionLabel: Optional[str] = None + SolutionStackName: Optional[str] = None + PlatformArn: Optional[str] = None + TemplateName: Optional[str] = None + Description: Optional[str] = None + EndpointURL: Optional[str] = None + CNAME: Optional[str] = None + DateCreated: Optional[datetime] = None + DateUpdated: Optional[datetime] = None + Status: Optional[EnvironmentStatusType] = None + AbortableOperationInProgress: Optional[bool] = None + Health: Optional[EnvironmentHealthType] = None + HealthStatus: Optional[EnvironmentHealthStatusType] = None + Resources: Optional[EnvironmentResourcesDescriptionTypeDef] = None + Tier: Optional[EnvironmentTierTypeDef] = None + EnvironmentLinks: Optional[List[EnvironmentLinkTypeDef]] = None + EnvironmentArn: Optional[str] = None + OperationsRole: Optional[str] = None + +class ApplicationDescriptionMessageTypeDef(BaseModel): + Application: ApplicationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationDescriptionsMessageTypeDef(BaseModel): + Applications: List[ApplicationDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentDescriptionsMessageTypeDef(BaseModel): + Environments: List[EnvironmentDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/elasticbeanstalk_constants.py b/aws_resource_validator/pydantic_models/elasticbeanstalk_constants.py new file mode 100644 index 00000000..42c60ae8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elasticbeanstalk_constants.py @@ -0,0 +1,487 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionHistoryStatusType = Literal["Completed", "Failed", "Unknown"] +ActionStatusType = Literal["Pending", "Running", "Scheduled", "Unknown"] +ActionTypeType = Literal["InstanceRefresh", "PlatformUpdate", "Unknown"] +ApplicationVersionStatusType = Literal["Building", "Failed", "Processed", "Processing", "Unprocessed"] +ComputeTypeType = Literal["BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_SMALL"] +ConfigurationDeploymentStatusType = Literal["deployed", "failed", "pending"] +ConfigurationOptionValueTypeType = Literal["List", "Scalar"] +DescribeApplicationVersionsPaginatorName = Literal["describe_application_versions"] +DescribeEnvironmentManagedActionHistoryPaginatorName = Literal["describe_environment_managed_action_history"] +DescribeEnvironmentsPaginatorName = Literal["describe_environments"] +DescribeEventsPaginatorName = Literal["describe_events"] +EnvironmentExistsWaiterName = Literal["environment_exists"] +EnvironmentHealthAttributeType = Literal["All", + "ApplicationMetrics", + "Causes", + "Color", + "HealthStatus", + "InstancesHealth", + "RefreshedAt", + "Status",] +EnvironmentHealthStatusType = Literal["Degraded", "Info", "NoData", "Ok", "Pending", "Severe", "Suspended", "Unknown", "Warning"] +EnvironmentHealthType = Literal["Green", "Grey", "Red", "Yellow"] +EnvironmentInfoTypeType = Literal["bundle", "tail"] +EnvironmentStatusType = Literal["Aborting", + "Launching", + "LinkingFrom", + "LinkingTo", + "Ready", + "Terminated", + "Terminating", + "Updating",] +EnvironmentTerminatedWaiterName = Literal["environment_terminated"] +EnvironmentUpdatedWaiterName = Literal["environment_updated"] +EventSeverityType = Literal["DEBUG", "ERROR", "FATAL", "INFO", "TRACE", "WARN"] +FailureTypeType = Literal["CancellationFailed", + "InternalFailure", + "InvalidEnvironmentState", + "PermissionsError", + "RollbackFailed", + "RollbackSuccessful", + "UpdateCancelled",] +InstancesHealthAttributeType = Literal["All", + "ApplicationMetrics", + "AvailabilityZone", + "Causes", + "Color", + "Deployment", + "HealthStatus", + "InstanceType", + "LaunchedAt", + "RefreshedAt", + "System",] +ListPlatformVersionsPaginatorName = Literal["list_platform_versions"] +PlatformStatusType = Literal["Creating", "Deleted", "Deleting", "Failed", "Ready"] +SourceRepositoryType = Literal["CodeCommit", "S3"] +SourceTypeType = Literal["Git", "Zip"] +ValidationSeverityType = Literal["error", "warning"] +ElasticBeanstalkServiceName = Literal["elasticbeanstalk"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_application_versions", + "describe_environment_managed_action_history", + "describe_environments", + "describe_events", + "list_platform_versions",] +WaiterName = Literal["environment_exists", "environment_terminated", "environment_updated"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/elastictranscoder_classes.py b/aws_resource_validator/pydantic_models/elastictranscoder_classes.py new file mode 100644 index 00000000..f5bbfb01 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elastictranscoder_classes.py @@ -0,0 +1,554 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.elastictranscoder_constants import * + +class EncryptionTypeDef(BaseModel): + Mode: Optional[str] = None + Key: Optional[str] = None + KeyMd5: Optional[str] = None + InitializationVector: Optional[str] = None + +class AudioCodecOptionsTypeDef(BaseModel): + Profile: Optional[str] = None + BitDepth: Optional[str] = None + BitOrder: Optional[str] = None + Signed: Optional[str] = None + +class CancelJobRequestRequestTypeDef(BaseModel): + Id: str + +class TimeSpanTypeDef(BaseModel): + StartTime: Optional[str] = None + Duration: Optional[str] = None + +class HlsContentProtectionTypeDef(BaseModel): + Method: Optional[str] = None + Key: Optional[str] = None + KeyMd5: Optional[str] = None + InitializationVector: Optional[str] = None + LicenseAcquisitionUrl: Optional[str] = None + KeyStoragePolicy: Optional[str] = None + +class PlayReadyDrmTypeDef(BaseModel): + Format: Optional[str] = None + Key: Optional[str] = None + KeyMd5: Optional[str] = None + KeyId: Optional[str] = None + InitializationVector: Optional[str] = None + LicenseAcquisitionUrl: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class NotificationsTypeDef(BaseModel): + Progressing: Optional[str] = None + Completed: Optional[str] = None + Warning: Optional[str] = None + Error: Optional[str] = None + +class WarningTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class ThumbnailsTypeDef(BaseModel): + Format: Optional[str] = None + Interval: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + MaxWidth: Optional[str] = None + MaxHeight: Optional[str] = None + SizingPolicy: Optional[str] = None + PaddingPolicy: Optional[str] = None + +class DeletePipelineRequestRequestTypeDef(BaseModel): + Id: str + +class DeletePresetRequestRequestTypeDef(BaseModel): + Id: str + +class DetectedPropertiesTypeDef(BaseModel): + Width: Optional[int] = None + Height: Optional[int] = None + FrameRate: Optional[str] = None + FileSize: Optional[int] = None + DurationMillis: Optional[int] = None + +class TimingTypeDef(BaseModel): + SubmitTimeMillis: Optional[int] = None + StartTimeMillis: Optional[int] = None + FinishTimeMillis: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListJobsByPipelineRequestRequestTypeDef(BaseModel): + PipelineId: str + Ascending: Optional[str] = None + PageToken: Optional[str] = None + +class ListJobsByStatusRequestRequestTypeDef(BaseModel): + Status: str + Ascending: Optional[str] = None + PageToken: Optional[str] = None + +class ListPipelinesRequestRequestTypeDef(BaseModel): + Ascending: Optional[str] = None + PageToken: Optional[str] = None + +class ListPresetsRequestRequestTypeDef(BaseModel): + Ascending: Optional[str] = None + PageToken: Optional[str] = None + +class PermissionExtraOutputTypeDef(BaseModel): + GranteeType: Optional[str] = None + Grantee: Optional[str] = None + Access: Optional[List[str]] = None + +class PermissionOutputTypeDef(BaseModel): + GranteeType: Optional[str] = None + Grantee: Optional[str] = None + Access: Optional[List[str]] = None + +class PermissionTypeDef(BaseModel): + GranteeType: Optional[str] = None + Grantee: Optional[str] = None + Access: Optional[Sequence[str]] = None + +class PresetWatermarkTypeDef(BaseModel): + Id: Optional[str] = None + MaxWidth: Optional[str] = None + MaxHeight: Optional[str] = None + SizingPolicy: Optional[str] = None + HorizontalAlign: Optional[str] = None + HorizontalOffset: Optional[str] = None + VerticalAlign: Optional[str] = None + VerticalOffset: Optional[str] = None + Opacity: Optional[str] = None + Target: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class ReadJobRequestRequestTypeDef(BaseModel): + Id: str + +class ReadPipelineRequestRequestTypeDef(BaseModel): + Id: str + +class ReadPresetRequestRequestTypeDef(BaseModel): + Id: str + +class TestRoleRequestRequestTypeDef(BaseModel): + Role: str + InputBucket: str + OutputBucket: str + Topics: Sequence[str] + +class UpdatePipelineStatusRequestRequestTypeDef(BaseModel): + Id: str + Status: str + +class ArtworkTypeDef(BaseModel): + InputKey: Optional[str] = None + MaxWidth: Optional[str] = None + MaxHeight: Optional[str] = None + SizingPolicy: Optional[str] = None + PaddingPolicy: Optional[str] = None + AlbumArtFormat: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + +class CaptionFormatTypeDef(BaseModel): + Format: Optional[str] = None + Pattern: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + +class CaptionSourceTypeDef(BaseModel): + Key: Optional[str] = None + Language: Optional[str] = None + TimeOffset: Optional[str] = None + Label: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + +class JobWatermarkTypeDef(BaseModel): + PresetWatermarkId: Optional[str] = None + InputKey: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + +class AudioParametersTypeDef(BaseModel): + Codec: Optional[str] = None + SampleRate: Optional[str] = None + BitRate: Optional[str] = None + Channels: Optional[str] = None + AudioPackingMode: Optional[str] = None + CodecOptions: Optional[AudioCodecOptionsTypeDef] = None + +class ClipTypeDef(BaseModel): + TimeSpan: Optional[TimeSpanTypeDef] = None + +class CreateJobPlaylistTypeDef(BaseModel): + Name: Optional[str] = None + Format: Optional[str] = None + OutputKeys: Optional[Sequence[str]] = None + HlsContentProtection: Optional[HlsContentProtectionTypeDef] = None + PlayReadyDrm: Optional[PlayReadyDrmTypeDef] = None + +class PlaylistTypeDef(BaseModel): + Name: Optional[str] = None + Format: Optional[str] = None + OutputKeys: Optional[List[str]] = None + HlsContentProtection: Optional[HlsContentProtectionTypeDef] = None + PlayReadyDrm: Optional[PlayReadyDrmTypeDef] = None + Status: Optional[str] = None + StatusDetail: Optional[str] = None + +class TestRoleResponseTypeDef(BaseModel): + Success: str + Messages: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineNotificationsRequestRequestTypeDef(BaseModel): + Id: str + Notifications: NotificationsTypeDef + +class ListJobsByPipelineRequestListJobsByPipelinePaginateTypeDef(BaseModel): + PipelineId: str + Ascending: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsByStatusRequestListJobsByStatusPaginateTypeDef(BaseModel): + Status: str + Ascending: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelinesRequestListPipelinesPaginateTypeDef(BaseModel): + Ascending: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPresetsRequestListPresetsPaginateTypeDef(BaseModel): + Ascending: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PipelineOutputConfigExtraOutputTypeDef(BaseModel): + Bucket: Optional[str] = None + StorageClass: Optional[str] = None + Permissions: Optional[List[PermissionExtraOutputTypeDef]] = None + +class PipelineOutputConfigOutputTypeDef(BaseModel): + Bucket: Optional[str] = None + StorageClass: Optional[str] = None + Permissions: Optional[List[PermissionOutputTypeDef]] = None + +class PipelineOutputConfigTypeDef(BaseModel): + Bucket: Optional[str] = None + StorageClass: Optional[str] = None + Permissions: Optional[Sequence[PermissionTypeDef]] = None + +class VideoParametersExtraOutputTypeDef(BaseModel): + Codec: Optional[str] = None + CodecOptions: Optional[Dict[str, str]] = None + KeyframesMaxDist: Optional[str] = None + FixedGOP: Optional[str] = None + BitRate: Optional[str] = None + FrameRate: Optional[str] = None + MaxFrameRate: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + MaxWidth: Optional[str] = None + MaxHeight: Optional[str] = None + DisplayAspectRatio: Optional[str] = None + SizingPolicy: Optional[str] = None + PaddingPolicy: Optional[str] = None + Watermarks: Optional[List[PresetWatermarkTypeDef]] = None + +class VideoParametersOutputTypeDef(BaseModel): + Codec: Optional[str] = None + CodecOptions: Optional[Dict[str, str]] = None + KeyframesMaxDist: Optional[str] = None + FixedGOP: Optional[str] = None + BitRate: Optional[str] = None + FrameRate: Optional[str] = None + MaxFrameRate: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + MaxWidth: Optional[str] = None + MaxHeight: Optional[str] = None + DisplayAspectRatio: Optional[str] = None + SizingPolicy: Optional[str] = None + PaddingPolicy: Optional[str] = None + Watermarks: Optional[List[PresetWatermarkTypeDef]] = None + +class VideoParametersTypeDef(BaseModel): + Codec: Optional[str] = None + CodecOptions: Optional[Mapping[str, str]] = None + KeyframesMaxDist: Optional[str] = None + FixedGOP: Optional[str] = None + BitRate: Optional[str] = None + FrameRate: Optional[str] = None + MaxFrameRate: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + MaxWidth: Optional[str] = None + MaxHeight: Optional[str] = None + DisplayAspectRatio: Optional[str] = None + SizingPolicy: Optional[str] = None + PaddingPolicy: Optional[str] = None + Watermarks: Optional[Sequence[PresetWatermarkTypeDef]] = None + +class ReadJobRequestJobCompleteWaitTypeDef(BaseModel): + Id: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class JobAlbumArtOutputTypeDef(BaseModel): + MergePolicy: Optional[str] = None + Artwork: Optional[List[ArtworkTypeDef]] = None + +class JobAlbumArtTypeDef(BaseModel): + MergePolicy: Optional[str] = None + Artwork: Optional[Sequence[ArtworkTypeDef]] = None + +class CaptionsOutputTypeDef(BaseModel): + MergePolicy: Optional[str] = None + CaptionSources: Optional[List[CaptionSourceTypeDef]] = None + CaptionFormats: Optional[List[CaptionFormatTypeDef]] = None + +class CaptionsTypeDef(BaseModel): + MergePolicy: Optional[str] = None + CaptionSources: Optional[Sequence[CaptionSourceTypeDef]] = None + CaptionFormats: Optional[Sequence[CaptionFormatTypeDef]] = None + +class InputCaptionsExtraOutputTypeDef(BaseModel): + MergePolicy: Optional[str] = None + CaptionSources: Optional[List[CaptionSourceTypeDef]] = None + +class InputCaptionsOutputTypeDef(BaseModel): + MergePolicy: Optional[str] = None + CaptionSources: Optional[List[CaptionSourceTypeDef]] = None + +class InputCaptionsTypeDef(BaseModel): + MergePolicy: Optional[str] = None + CaptionSources: Optional[Sequence[CaptionSourceTypeDef]] = None + +class PipelineTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Status: Optional[str] = None + InputBucket: Optional[str] = None + OutputBucket: Optional[str] = None + Role: Optional[str] = None + AwsKmsKeyArn: Optional[str] = None + Notifications: Optional[NotificationsTypeDef] = None + ContentConfig: Optional[PipelineOutputConfigOutputTypeDef] = None + ThumbnailConfig: Optional[PipelineOutputConfigOutputTypeDef] = None + +class CreatePipelineRequestRequestTypeDef(BaseModel): + Name: str + InputBucket: str + Role: str + OutputBucket: Optional[str] = None + AwsKmsKeyArn: Optional[str] = None + Notifications: Optional[NotificationsTypeDef] = None + ContentConfig: Optional[PipelineOutputConfigTypeDef] = None + ThumbnailConfig: Optional[PipelineOutputConfigTypeDef] = None + +class UpdatePipelineRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + InputBucket: Optional[str] = None + Role: Optional[str] = None + AwsKmsKeyArn: Optional[str] = None + Notifications: Optional[NotificationsTypeDef] = None + ContentConfig: Optional[PipelineOutputConfigTypeDef] = None + ThumbnailConfig: Optional[PipelineOutputConfigTypeDef] = None + +class PresetTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Container: Optional[str] = None + Audio: Optional[AudioParametersTypeDef] = None + Video: Optional[VideoParametersOutputTypeDef] = None + Thumbnails: Optional[ThumbnailsTypeDef] = None + Type: Optional[str] = None + +class CreatePresetRequestRequestTypeDef(BaseModel): + Name: str + Container: str + Description: Optional[str] = None + Video: Optional[VideoParametersTypeDef] = None + Audio: Optional[AudioParametersTypeDef] = None + Thumbnails: Optional[ThumbnailsTypeDef] = None + +class JobOutputTypeDef(BaseModel): + Id: Optional[str] = None + Key: Optional[str] = None + ThumbnailPattern: Optional[str] = None + ThumbnailEncryption: Optional[EncryptionTypeDef] = None + Rotate: Optional[str] = None + PresetId: Optional[str] = None + SegmentDuration: Optional[str] = None + Status: Optional[str] = None + StatusDetail: Optional[str] = None + Duration: Optional[int] = None + Width: Optional[int] = None + Height: Optional[int] = None + FrameRate: Optional[str] = None + FileSize: Optional[int] = None + DurationMillis: Optional[int] = None + Watermarks: Optional[List[JobWatermarkTypeDef]] = None + AlbumArt: Optional[JobAlbumArtOutputTypeDef] = None + Composition: Optional[List[ClipTypeDef]] = None + Captions: Optional[CaptionsOutputTypeDef] = None + Encryption: Optional[EncryptionTypeDef] = None + AppliedColorSpaceConversion: Optional[str] = None + +class CreateJobOutputTypeDef(BaseModel): + Key: Optional[str] = None + ThumbnailPattern: Optional[str] = None + ThumbnailEncryption: Optional[EncryptionTypeDef] = None + Rotate: Optional[str] = None + PresetId: Optional[str] = None + SegmentDuration: Optional[str] = None + Watermarks: Optional[Sequence[JobWatermarkTypeDef]] = None + AlbumArt: Optional[JobAlbumArtTypeDef] = None + Composition: Optional[Sequence[ClipTypeDef]] = None + Captions: Optional[CaptionsTypeDef] = None + Encryption: Optional[EncryptionTypeDef] = None + +class JobInputExtraOutputTypeDef(BaseModel): + Key: Optional[str] = None + FrameRate: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + Interlaced: Optional[str] = None + Container: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + TimeSpan: Optional[TimeSpanTypeDef] = None + InputCaptions: Optional[InputCaptionsExtraOutputTypeDef] = None + DetectedProperties: Optional[DetectedPropertiesTypeDef] = None + +class JobInputOutputTypeDef(BaseModel): + Key: Optional[str] = None + FrameRate: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + Interlaced: Optional[str] = None + Container: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + TimeSpan: Optional[TimeSpanTypeDef] = None + InputCaptions: Optional[InputCaptionsOutputTypeDef] = None + DetectedProperties: Optional[DetectedPropertiesTypeDef] = None + +class JobInputTypeDef(BaseModel): + Key: Optional[str] = None + FrameRate: Optional[str] = None + Resolution: Optional[str] = None + AspectRatio: Optional[str] = None + Interlaced: Optional[str] = None + Container: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + TimeSpan: Optional[TimeSpanTypeDef] = None + InputCaptions: Optional[InputCaptionsTypeDef] = None + DetectedProperties: Optional[DetectedPropertiesTypeDef] = None + +class CreatePipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + Warnings: List[WarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPipelinesResponseTypeDef(BaseModel): + Pipelines: List[PipelineTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReadPipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + Warnings: List[WarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineNotificationsResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + Warnings: List[WarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineStatusResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePresetResponseTypeDef(BaseModel): + Preset: PresetTypeDef + Warning: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPresetsResponseTypeDef(BaseModel): + Presets: List[PresetTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReadPresetResponseTypeDef(BaseModel): + Preset: PresetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JobTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + PipelineId: Optional[str] = None + Input: Optional[JobInputOutputTypeDef] = None + Inputs: Optional[List[JobInputOutputTypeDef]] = None + Output: Optional[JobOutputTypeDef] = None + Outputs: Optional[List[JobOutputTypeDef]] = None + OutputKeyPrefix: Optional[str] = None + Playlists: Optional[List[PlaylistTypeDef]] = None + Status: Optional[str] = None + UserMetadata: Optional[Dict[str, str]] = None + Timing: Optional[TimingTypeDef] = None + +class CreateJobResponseTypeDef(BaseModel): + Job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsByPipelineResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsByStatusResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReadJobResponseTypeDef(BaseModel): + Job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobRequestRequestTypeDef(BaseModel): + PipelineId: str + Input: Optional[JobInputTypeDef] = None + Inputs: Optional[Sequence[JobInputUnionTypeDef]] = None + Output: Optional[CreateJobOutputTypeDef] = None + Outputs: Optional[Sequence[CreateJobOutputTypeDef]] = None + OutputKeyPrefix: Optional[str] = None + Playlists: Optional[Sequence[CreateJobPlaylistTypeDef]] = None + UserMetadata: Optional[Mapping[str, str]] = None + diff --git a/aws_resource_validator/pydantic_models/elastictranscoder_constants.py b/aws_resource_validator/pydantic_models/elastictranscoder_constants.py new file mode 100644 index 00000000..ece8000d --- /dev/null +++ b/aws_resource_validator/pydantic_models/elastictranscoder_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +JobCompleteWaiterName = Literal["job_complete"] +ListJobsByPipelinePaginatorName = Literal["list_jobs_by_pipeline"] +ListJobsByStatusPaginatorName = Literal["list_jobs_by_status"] +ListPipelinesPaginatorName = Literal["list_pipelines"] +ListPresetsPaginatorName = Literal["list_presets"] +ElasticTranscoderServiceName = Literal["elastictranscoder"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_jobs_by_pipeline", "list_jobs_by_status", "list_pipelines", "list_presets"] +WaiterName = Literal["job_complete"] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-west-1", + "us-east-1", + "us-west-1", + "us-west-2",] +PipelineOutputConfigUnionTypeDef = Union[ 'PipelineOutputConfigTypeDef', 'PipelineOutputConfigExtraOutputTypeDef' ] +VideoParametersUnionTypeDef = Union['VideoParametersTypeDef', 'VideoParametersExtraOutputTypeDef'] +JobInputUnionTypeDef = Union['JobInputTypeDef', 'JobInputExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/elb_classes.py b/aws_resource_validator/pydantic_models/elb_classes.py new file mode 100644 index 00000000..fd3a8eef --- /dev/null +++ b/aws_resource_validator/pydantic_models/elb_classes.py @@ -0,0 +1,380 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.elb_constants import * + +class AccessLogTypeDef(BaseModel): + Enabled: bool + S3BucketName: Optional[str] = None + EmitInterval: Optional[int] = None + S3BucketPrefix: Optional[str] = None + +class AddAvailabilityZonesInputRequestTypeDef(BaseModel): + LoadBalancerName: str + AvailabilityZones: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class AdditionalAttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class AppCookieStickinessPolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + CookieName: Optional[str] = None + +class ApplySecurityGroupsToLoadBalancerInputRequestTypeDef(BaseModel): + LoadBalancerName: str + SecurityGroups: Sequence[str] + +class AttachLoadBalancerToSubnetsInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Subnets: Sequence[str] + +class BackendServerDescriptionTypeDef(BaseModel): + InstancePort: Optional[int] = None + PolicyNames: Optional[List[str]] = None + +class HealthCheckTypeDef(BaseModel): + Target: str + Interval: int + Timeout: int + UnhealthyThreshold: int + HealthyThreshold: int + +class ConnectionDrainingTypeDef(BaseModel): + Enabled: bool + Timeout: Optional[int] = None + +class ConnectionSettingsTypeDef(BaseModel): + IdleTimeout: int + +class ListenerTypeDef(BaseModel): + Protocol: str + LoadBalancerPort: int + InstancePort: int + InstanceProtocol: Optional[str] = None + SSLCertificateId: Optional[str] = None + +class CreateAppCookieStickinessPolicyInputRequestTypeDef(BaseModel): + LoadBalancerName: str + PolicyName: str + CookieName: str + +class CreateLBCookieStickinessPolicyInputRequestTypeDef(BaseModel): + LoadBalancerName: str + PolicyName: str + CookieExpirationPeriod: Optional[int] = None + +class PolicyAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValue: Optional[str] = None + +class CrossZoneLoadBalancingTypeDef(BaseModel): + Enabled: bool + +class DeleteAccessPointInputRequestTypeDef(BaseModel): + LoadBalancerName: str + +class DeleteLoadBalancerListenerInputRequestTypeDef(BaseModel): + LoadBalancerName: str + LoadBalancerPorts: Sequence[int] + +class DeleteLoadBalancerPolicyInputRequestTypeDef(BaseModel): + LoadBalancerName: str + PolicyName: str + +class InstanceTypeDef(BaseModel): + InstanceId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAccessPointsInputRequestTypeDef(BaseModel): + LoadBalancerNames: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeAccountLimitsInputRequestTypeDef(BaseModel): + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class LimitTypeDef(BaseModel): + Name: Optional[str] = None + Max: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class InstanceStateTypeDef(BaseModel): + InstanceId: Optional[str] = None + State: Optional[str] = None + ReasonCode: Optional[str] = None + Description: Optional[str] = None + +class DescribeLoadBalancerAttributesInputRequestTypeDef(BaseModel): + LoadBalancerName: str + +class DescribeLoadBalancerPoliciesInputRequestTypeDef(BaseModel): + LoadBalancerName: Optional[str] = None + PolicyNames: Optional[Sequence[str]] = None + +class DescribeLoadBalancerPolicyTypesInputRequestTypeDef(BaseModel): + PolicyTypeNames: Optional[Sequence[str]] = None + +class DescribeTagsInputRequestTypeDef(BaseModel): + LoadBalancerNames: Sequence[str] + +class DetachLoadBalancerFromSubnetsInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Subnets: Sequence[str] + +class LBCookieStickinessPolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + CookieExpirationPeriod: Optional[int] = None + +class SourceSecurityGroupTypeDef(BaseModel): + OwnerAlias: Optional[str] = None + GroupName: Optional[str] = None + +class PolicyAttributeDescriptionTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValue: Optional[str] = None + +class PolicyAttributeTypeDescriptionTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeType: Optional[str] = None + Description: Optional[str] = None + DefaultValue: Optional[str] = None + Cardinality: Optional[str] = None + +class RemoveAvailabilityZonesInputRequestTypeDef(BaseModel): + LoadBalancerName: str + AvailabilityZones: Sequence[str] + +class TagKeyOnlyTypeDef(BaseModel): + Key: Optional[str] = None + +class SetLoadBalancerListenerSSLCertificateInputRequestTypeDef(BaseModel): + LoadBalancerName: str + LoadBalancerPort: int + SSLCertificateId: str + +class SetLoadBalancerPoliciesForBackendServerInputRequestTypeDef(BaseModel): + LoadBalancerName: str + InstancePort: int + PolicyNames: Sequence[str] + +class SetLoadBalancerPoliciesOfListenerInputRequestTypeDef(BaseModel): + LoadBalancerName: str + LoadBalancerPort: int + PolicyNames: Sequence[str] + +class AddAvailabilityZonesOutputTypeDef(BaseModel): + AvailabilityZones: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ApplySecurityGroupsToLoadBalancerOutputTypeDef(BaseModel): + SecurityGroups: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class AttachLoadBalancerToSubnetsOutputTypeDef(BaseModel): + Subnets: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPointOutputTypeDef(BaseModel): + DNSName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetachLoadBalancerFromSubnetsOutputTypeDef(BaseModel): + Subnets: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveAvailabilityZonesOutputTypeDef(BaseModel): + AvailabilityZones: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsInputRequestTypeDef(BaseModel): + LoadBalancerNames: Sequence[str] + Tags: Sequence[TagTypeDef] + +class TagDescriptionTypeDef(BaseModel): + LoadBalancerName: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ConfigureHealthCheckInputRequestTypeDef(BaseModel): + LoadBalancerName: str + HealthCheck: HealthCheckTypeDef + +class ConfigureHealthCheckOutputTypeDef(BaseModel): + HealthCheck: HealthCheckTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPointInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Listeners: Sequence[ListenerTypeDef] + AvailabilityZones: Optional[Sequence[str]] = None + Subnets: Optional[Sequence[str]] = None + SecurityGroups: Optional[Sequence[str]] = None + Scheme: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateLoadBalancerListenerInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Listeners: Sequence[ListenerTypeDef] + +class ListenerDescriptionTypeDef(BaseModel): + Listener: Optional[ListenerTypeDef] = None + PolicyNames: Optional[List[str]] = None + +class CreateLoadBalancerPolicyInputRequestTypeDef(BaseModel): + LoadBalancerName: str + PolicyName: str + PolicyTypeName: str + PolicyAttributes: Optional[Sequence[PolicyAttributeTypeDef]] = None + +class LoadBalancerAttributesTypeDef(BaseModel): + CrossZoneLoadBalancing: Optional[CrossZoneLoadBalancingTypeDef] = None + AccessLog: Optional[AccessLogTypeDef] = None + ConnectionDraining: Optional[ConnectionDrainingTypeDef] = None + ConnectionSettings: Optional[ConnectionSettingsTypeDef] = None + AdditionalAttributes: Optional[List[AdditionalAttributeTypeDef]] = None + +class DeregisterEndPointsInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Instances: Sequence[InstanceTypeDef] + +class DeregisterEndPointsOutputTypeDef(BaseModel): + Instances: List[InstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndPointStateInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Instances: Optional[Sequence[InstanceTypeDef]] = None + +class RegisterEndPointsInputRequestTypeDef(BaseModel): + LoadBalancerName: str + Instances: Sequence[InstanceTypeDef] + +class RegisterEndPointsOutputTypeDef(BaseModel): + Instances: List[InstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccessPointsInputDescribeLoadBalancersPaginateTypeDef(BaseModel): + LoadBalancerNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAccountLimitsInputDescribeAccountLimitsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAccountLimitsOutputTypeDef(BaseModel): + Limits: List[LimitTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndPointStateInputAnyInstanceInServiceWaitTypeDef(BaseModel): + LoadBalancerName: str + Instances: Optional[Sequence[InstanceTypeDef]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEndPointStateInputInstanceDeregisteredWaitTypeDef(BaseModel): + LoadBalancerName: str + Instances: Optional[Sequence[InstanceTypeDef]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEndPointStateInputInstanceInServiceWaitTypeDef(BaseModel): + LoadBalancerName: str + Instances: Optional[Sequence[InstanceTypeDef]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEndPointStateOutputTypeDef(BaseModel): + InstanceStates: List[InstanceStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PoliciesTypeDef(BaseModel): + AppCookieStickinessPolicies: Optional[List[AppCookieStickinessPolicyTypeDef]] = None + LBCookieStickinessPolicies: Optional[List[LBCookieStickinessPolicyTypeDef]] = None + OtherPolicies: Optional[List[str]] = None + +class PolicyDescriptionTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyTypeName: Optional[str] = None + PolicyAttributeDescriptions: Optional[List[PolicyAttributeDescriptionTypeDef]] = None + +class PolicyTypeDescriptionTypeDef(BaseModel): + PolicyTypeName: Optional[str] = None + Description: Optional[str] = None + PolicyAttributeTypeDescriptions: Optional[List[PolicyAttributeTypeDescriptionTypeDef]] = None + +class RemoveTagsInputRequestTypeDef(BaseModel): + LoadBalancerNames: Sequence[str] + Tags: Sequence[TagKeyOnlyTypeDef] + +class DescribeTagsOutputTypeDef(BaseModel): + TagDescriptions: List[TagDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBalancerAttributesOutputTypeDef(BaseModel): + LoadBalancerAttributes: LoadBalancerAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyLoadBalancerAttributesInputRequestTypeDef(BaseModel): + LoadBalancerName: str + LoadBalancerAttributes: LoadBalancerAttributesTypeDef + +class ModifyLoadBalancerAttributesOutputTypeDef(BaseModel): + LoadBalancerName: str + LoadBalancerAttributes: LoadBalancerAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LoadBalancerDescriptionTypeDef(BaseModel): + LoadBalancerName: Optional[str] = None + DNSName: Optional[str] = None + CanonicalHostedZoneName: Optional[str] = None + CanonicalHostedZoneNameID: Optional[str] = None + ListenerDescriptions: Optional[List[ListenerDescriptionTypeDef]] = None + Policies: Optional[PoliciesTypeDef] = None + BackendServerDescriptions: Optional[List[BackendServerDescriptionTypeDef]] = None + AvailabilityZones: Optional[List[str]] = None + Subnets: Optional[List[str]] = None + VPCId: Optional[str] = None + Instances: Optional[List[InstanceTypeDef]] = None + HealthCheck: Optional[HealthCheckTypeDef] = None + SourceSecurityGroup: Optional[SourceSecurityGroupTypeDef] = None + SecurityGroups: Optional[List[str]] = None + CreatedTime: Optional[datetime] = None + Scheme: Optional[str] = None + +class DescribeLoadBalancerPoliciesOutputTypeDef(BaseModel): + PolicyDescriptions: List[PolicyDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBalancerPolicyTypesOutputTypeDef(BaseModel): + PolicyTypeDescriptions: List[PolicyTypeDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccessPointsOutputTypeDef(BaseModel): + LoadBalancerDescriptions: List[LoadBalancerDescriptionTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/elb_constants.py b/aws_resource_validator/pydantic_models/elb_constants.py new file mode 100644 index 00000000..e9ff1f14 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elb_constants.py @@ -0,0 +1,423 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnyInstanceInServiceWaiterName = Literal["any_instance_in_service"] +DescribeAccountLimitsPaginatorName = Literal["describe_account_limits"] +DescribeLoadBalancersPaginatorName = Literal["describe_load_balancers"] +InstanceDeregisteredWaiterName = Literal["instance_deregistered"] +InstanceInServiceWaiterName = Literal["instance_in_service"] +ElasticLoadBalancingServiceName = Literal["elb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_account_limits", "describe_load_balancers"] +WaiterName = Literal["any_instance_in_service", "instance_deregistered", "instance_in_service"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/elbv2_classes.py b/aws_resource_validator/pydantic_models/elbv2_classes.py new file mode 100644 index 00000000..4e5a5da1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elbv2_classes.py @@ -0,0 +1,875 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.elbv2_constants import * + +class AuthenticateCognitoActionConfigExtraOutputTypeDef(BaseModel): + UserPoolArn: str + UserPoolClientId: str + UserPoolDomain: str + SessionCookieName: Optional[str] = None + Scope: Optional[str] = None + SessionTimeout: Optional[int] = None + AuthenticationRequestExtraParams: Optional[Dict[str, str]] = None + OnUnauthenticatedRequest: Optional[ AuthenticateCognitoActionConditionalBehaviorEnumType ] = None + +class AuthenticateOidcActionConfigExtraOutputTypeDef(BaseModel): + Issuer: str + AuthorizationEndpoint: str + TokenEndpoint: str + UserInfoEndpoint: str + ClientId: str + ClientSecret: Optional[str] = None + SessionCookieName: Optional[str] = None + Scope: Optional[str] = None + SessionTimeout: Optional[int] = None + AuthenticationRequestExtraParams: Optional[Dict[str, str]] = None + OnUnauthenticatedRequest: Optional[AuthenticateOidcActionConditionalBehaviorEnumType] = None + UseExistingClientSecret: Optional[bool] = None + +class FixedResponseActionConfigTypeDef(BaseModel): + StatusCode: str + MessageBody: Optional[str] = None + ContentType: Optional[str] = None + +class RedirectActionConfigTypeDef(BaseModel): + StatusCode: RedirectActionStatusCodeEnumType + Protocol: Optional[str] = None + Port: Optional[str] = None + Host: Optional[str] = None + Path: Optional[str] = None + Query: Optional[str] = None + +class AuthenticateCognitoActionConfigOutputTypeDef(BaseModel): + UserPoolArn: str + UserPoolClientId: str + UserPoolDomain: str + SessionCookieName: Optional[str] = None + Scope: Optional[str] = None + SessionTimeout: Optional[int] = None + AuthenticationRequestExtraParams: Optional[Dict[str, str]] = None + OnUnauthenticatedRequest: Optional[ AuthenticateCognitoActionConditionalBehaviorEnumType ] = None + +class AuthenticateOidcActionConfigOutputTypeDef(BaseModel): + Issuer: str + AuthorizationEndpoint: str + TokenEndpoint: str + UserInfoEndpoint: str + ClientId: str + ClientSecret: Optional[str] = None + SessionCookieName: Optional[str] = None + Scope: Optional[str] = None + SessionTimeout: Optional[int] = None + AuthenticationRequestExtraParams: Optional[Dict[str, str]] = None + OnUnauthenticatedRequest: Optional[AuthenticateOidcActionConditionalBehaviorEnumType] = None + UseExistingClientSecret: Optional[bool] = None + +class AuthenticateCognitoActionConfigTypeDef(BaseModel): + UserPoolArn: str + UserPoolClientId: str + UserPoolDomain: str + SessionCookieName: Optional[str] = None + Scope: Optional[str] = None + SessionTimeout: Optional[int] = None + AuthenticationRequestExtraParams: Optional[Mapping[str, str]] = None + OnUnauthenticatedRequest: Optional[ AuthenticateCognitoActionConditionalBehaviorEnumType ] = None + +class AuthenticateOidcActionConfigTypeDef(BaseModel): + Issuer: str + AuthorizationEndpoint: str + TokenEndpoint: str + UserInfoEndpoint: str + ClientId: str + ClientSecret: Optional[str] = None + SessionCookieName: Optional[str] = None + Scope: Optional[str] = None + SessionTimeout: Optional[int] = None + AuthenticationRequestExtraParams: Optional[Mapping[str, str]] = None + OnUnauthenticatedRequest: Optional[AuthenticateOidcActionConditionalBehaviorEnumType] = None + UseExistingClientSecret: Optional[bool] = None + +class CertificateTypeDef(BaseModel): + CertificateArn: Optional[str] = None + IsDefault: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class RevocationContentTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + S3ObjectVersion: Optional[str] = None + RevocationType: Optional[Literal["CRL"]] = None + +class TrustStoreRevocationTypeDef(BaseModel): + TrustStoreArn: Optional[str] = None + RevocationId: Optional[int] = None + RevocationType: Optional[Literal["CRL"]] = None + NumberOfRevokedEntries: Optional[int] = None + +class AnomalyDetectionTypeDef(BaseModel): + Result: Optional[AnomalyResultEnumType] = None + MitigationInEffect: Optional[MitigationInEffectEnumType] = None + +class LoadBalancerAddressTypeDef(BaseModel): + IpAddress: Optional[str] = None + AllocationId: Optional[str] = None + PrivateIPv4Address: Optional[str] = None + IPv6Address: Optional[str] = None + +class CipherTypeDef(BaseModel): + Name: Optional[str] = None + Priority: Optional[int] = None + +class MutualAuthenticationAttributesTypeDef(BaseModel): + Mode: Optional[str] = None + TrustStoreArn: Optional[str] = None + IgnoreClientCertificateExpiry: Optional[bool] = None + +class SubnetMappingTypeDef(BaseModel): + SubnetId: Optional[str] = None + AllocationId: Optional[str] = None + PrivateIPv4Address: Optional[str] = None + IPv6Address: Optional[str] = None + +class MatcherTypeDef(BaseModel): + HttpCode: Optional[str] = None + GrpcCode: Optional[str] = None + +class TrustStoreTypeDef(BaseModel): + Name: Optional[str] = None + TrustStoreArn: Optional[str] = None + Status: Optional[TrustStoreStatusType] = None + NumberOfCaCertificates: Optional[int] = None + TotalRevokedEntries: Optional[int] = None + +class DeleteListenerInputRequestTypeDef(BaseModel): + ListenerArn: str + +class DeleteLoadBalancerInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + +class DeleteRuleInputRequestTypeDef(BaseModel): + RuleArn: str + +class DeleteTargetGroupInputRequestTypeDef(BaseModel): + TargetGroupArn: str + +class DeleteTrustStoreInputRequestTypeDef(BaseModel): + TrustStoreArn: str + +class TargetDescriptionTypeDef(BaseModel): + Id: str + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAccountLimitsInputRequestTypeDef(BaseModel): + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class LimitTypeDef(BaseModel): + Name: Optional[str] = None + Max: Optional[str] = None + +class DescribeListenerCertificatesInputRequestTypeDef(BaseModel): + ListenerArn: str + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeListenersInputRequestTypeDef(BaseModel): + LoadBalancerArn: Optional[str] = None + ListenerArns: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeLoadBalancerAttributesInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + +class LoadBalancerAttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeLoadBalancersInputRequestTypeDef(BaseModel): + LoadBalancerArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeRulesInputRequestTypeDef(BaseModel): + ListenerArn: Optional[str] = None + RuleArns: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeSSLPoliciesInputRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + LoadBalancerType: Optional[LoadBalancerTypeEnumType] = None + +class DescribeTagsInputRequestTypeDef(BaseModel): + ResourceArns: Sequence[str] + +class DescribeTargetGroupAttributesInputRequestTypeDef(BaseModel): + TargetGroupArn: str + +class TargetGroupAttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class DescribeTargetGroupsInputRequestTypeDef(BaseModel): + LoadBalancerArn: Optional[str] = None + TargetGroupArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeTrustStoreAssociationsInputRequestTypeDef(BaseModel): + TrustStoreArn: str + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class TrustStoreAssociationTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class DescribeTrustStoreRevocationTypeDef(BaseModel): + TrustStoreArn: Optional[str] = None + RevocationId: Optional[int] = None + RevocationType: Optional[Literal["CRL"]] = None + NumberOfRevokedEntries: Optional[int] = None + +class DescribeTrustStoreRevocationsInputRequestTypeDef(BaseModel): + TrustStoreArn: str + RevocationIds: Optional[Sequence[int]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class DescribeTrustStoresInputRequestTypeDef(BaseModel): + TrustStoreArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + +class TargetGroupStickinessConfigTypeDef(BaseModel): + Enabled: Optional[bool] = None + DurationSeconds: Optional[int] = None + +class TargetGroupTupleTypeDef(BaseModel): + TargetGroupArn: Optional[str] = None + Weight: Optional[int] = None + +class GetTrustStoreCaCertificatesBundleInputRequestTypeDef(BaseModel): + TrustStoreArn: str + +class GetTrustStoreRevocationContentInputRequestTypeDef(BaseModel): + TrustStoreArn: str + RevocationId: int + +class HostHeaderConditionConfigExtraOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class HostHeaderConditionConfigOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class HostHeaderConditionConfigTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + +class HttpHeaderConditionConfigExtraOutputTypeDef(BaseModel): + HttpHeaderName: Optional[str] = None + Values: Optional[List[str]] = None + +class HttpHeaderConditionConfigOutputTypeDef(BaseModel): + HttpHeaderName: Optional[str] = None + Values: Optional[List[str]] = None + +class HttpHeaderConditionConfigTypeDef(BaseModel): + HttpHeaderName: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class HttpRequestMethodConditionConfigExtraOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class HttpRequestMethodConditionConfigOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class HttpRequestMethodConditionConfigTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + +class LoadBalancerStateTypeDef(BaseModel): + Code: Optional[LoadBalancerStateEnumType] = None + Reason: Optional[str] = None + +class ModifyTrustStoreInputRequestTypeDef(BaseModel): + TrustStoreArn: str + CaCertificatesBundleS3Bucket: str + CaCertificatesBundleS3Key: str + CaCertificatesBundleS3ObjectVersion: Optional[str] = None + +class PathPatternConditionConfigExtraOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class PathPatternConditionConfigOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class PathPatternConditionConfigTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + +class QueryStringKeyValuePairTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class RemoveTagsInputRequestTypeDef(BaseModel): + ResourceArns: Sequence[str] + TagKeys: Sequence[str] + +class RemoveTrustStoreRevocationsInputRequestTypeDef(BaseModel): + TrustStoreArn: str + RevocationIds: Sequence[int] + +class SourceIpConditionConfigExtraOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class SourceIpConditionConfigOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class SourceIpConditionConfigTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + +class RulePriorityPairTypeDef(BaseModel): + RuleArn: Optional[str] = None + Priority: Optional[int] = None + +class SetIpAddressTypeInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + IpAddressType: IpAddressTypeType + +class SetSecurityGroupsInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + SecurityGroups: Sequence[str] + EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic: Optional[ EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnumType ] = None + +class TargetHealthTypeDef(BaseModel): + State: Optional[TargetHealthStateEnumType] = None + Reason: Optional[TargetHealthReasonEnumType] = None + Description: Optional[str] = None + +class AddListenerCertificatesInputRequestTypeDef(BaseModel): + ListenerArn: str + Certificates: Sequence[CertificateTypeDef] + +class RemoveListenerCertificatesInputRequestTypeDef(BaseModel): + ListenerArn: str + Certificates: Sequence[CertificateTypeDef] + +class AddListenerCertificatesOutputTypeDef(BaseModel): + Certificates: List[CertificateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeListenerCertificatesOutputTypeDef(BaseModel): + Certificates: List[CertificateTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrustStoreCaCertificatesBundleOutputTypeDef(BaseModel): + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrustStoreRevocationContentOutputTypeDef(BaseModel): + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetIpAddressTypeOutputTypeDef(BaseModel): + IpAddressType: IpAddressTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class SetSecurityGroupsOutputTypeDef(BaseModel): + SecurityGroupIds: List[str] + EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic: EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnumType + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsInputRequestTypeDef(BaseModel): + ResourceArns: Sequence[str] + Tags: Sequence[TagTypeDef] + +class CreateTrustStoreInputRequestTypeDef(BaseModel): + Name: str + CaCertificatesBundleS3Bucket: str + CaCertificatesBundleS3Key: str + CaCertificatesBundleS3ObjectVersion: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagDescriptionTypeDef(BaseModel): + ResourceArn: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class AddTrustStoreRevocationsInputRequestTypeDef(BaseModel): + TrustStoreArn: str + RevocationContents: Optional[Sequence[RevocationContentTypeDef]] = None + +class AddTrustStoreRevocationsOutputTypeDef(BaseModel): + TrustStoreRevocations: List[TrustStoreRevocationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AvailabilityZoneTypeDef(BaseModel): + ZoneName: Optional[str] = None + SubnetId: Optional[str] = None + OutpostId: Optional[str] = None + LoadBalancerAddresses: Optional[List[LoadBalancerAddressTypeDef]] = None + +class SslPolicyTypeDef(BaseModel): + SslProtocols: Optional[List[str]] = None + Ciphers: Optional[List[CipherTypeDef]] = None + Name: Optional[str] = None + SupportedLoadBalancerTypes: Optional[List[str]] = None + +class CreateLoadBalancerInputRequestTypeDef(BaseModel): + Name: str + Subnets: Optional[Sequence[str]] = None + SubnetMappings: Optional[Sequence[SubnetMappingTypeDef]] = None + SecurityGroups: Optional[Sequence[str]] = None + Scheme: Optional[LoadBalancerSchemeEnumType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Type: Optional[LoadBalancerTypeEnumType] = None + IpAddressType: Optional[IpAddressTypeType] = None + CustomerOwnedIpv4Pool: Optional[str] = None + +class SetSubnetsInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + Subnets: Optional[Sequence[str]] = None + SubnetMappings: Optional[Sequence[SubnetMappingTypeDef]] = None + IpAddressType: Optional[IpAddressTypeType] = None + +class CreateTargetGroupInputRequestTypeDef(BaseModel): + Name: str + Protocol: Optional[ProtocolEnumType] = None + ProtocolVersion: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + HealthCheckProtocol: Optional[ProtocolEnumType] = None + HealthCheckPort: Optional[str] = None + HealthCheckEnabled: Optional[bool] = None + HealthCheckPath: Optional[str] = None + HealthCheckIntervalSeconds: Optional[int] = None + HealthCheckTimeoutSeconds: Optional[int] = None + HealthyThresholdCount: Optional[int] = None + UnhealthyThresholdCount: Optional[int] = None + Matcher: Optional[MatcherTypeDef] = None + TargetType: Optional[TargetTypeEnumType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + IpAddressType: Optional[TargetGroupIpAddressTypeEnumType] = None + +class ModifyTargetGroupInputRequestTypeDef(BaseModel): + TargetGroupArn: str + HealthCheckProtocol: Optional[ProtocolEnumType] = None + HealthCheckPort: Optional[str] = None + HealthCheckPath: Optional[str] = None + HealthCheckEnabled: Optional[bool] = None + HealthCheckIntervalSeconds: Optional[int] = None + HealthCheckTimeoutSeconds: Optional[int] = None + HealthyThresholdCount: Optional[int] = None + UnhealthyThresholdCount: Optional[int] = None + Matcher: Optional[MatcherTypeDef] = None + +class TargetGroupTypeDef(BaseModel): + TargetGroupArn: Optional[str] = None + TargetGroupName: Optional[str] = None + Protocol: Optional[ProtocolEnumType] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + HealthCheckProtocol: Optional[ProtocolEnumType] = None + HealthCheckPort: Optional[str] = None + HealthCheckEnabled: Optional[bool] = None + HealthCheckIntervalSeconds: Optional[int] = None + HealthCheckTimeoutSeconds: Optional[int] = None + HealthyThresholdCount: Optional[int] = None + UnhealthyThresholdCount: Optional[int] = None + HealthCheckPath: Optional[str] = None + Matcher: Optional[MatcherTypeDef] = None + LoadBalancerArns: Optional[List[str]] = None + TargetType: Optional[TargetTypeEnumType] = None + ProtocolVersion: Optional[str] = None + IpAddressType: Optional[TargetGroupIpAddressTypeEnumType] = None + +class CreateTrustStoreOutputTypeDef(BaseModel): + TrustStores: List[TrustStoreTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrustStoresOutputTypeDef(BaseModel): + TrustStores: List[TrustStoreTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyTrustStoreOutputTypeDef(BaseModel): + TrustStores: List[TrustStoreTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterTargetsInputRequestTypeDef(BaseModel): + TargetGroupArn: str + Targets: Sequence[TargetDescriptionTypeDef] + +class DescribeTargetHealthInputRequestTypeDef(BaseModel): + TargetGroupArn: str + Targets: Optional[Sequence[TargetDescriptionTypeDef]] = None + Include: Optional[Sequence[DescribeTargetHealthInputIncludeEnumType]] = None + +class RegisterTargetsInputRequestTypeDef(BaseModel): + TargetGroupArn: str + Targets: Sequence[TargetDescriptionTypeDef] + +class DescribeAccountLimitsInputDescribeAccountLimitsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeListenerCertificatesInputDescribeListenerCertificatesPaginateTypeDef(BaseModel): + ListenerArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeListenersInputDescribeListenersPaginateTypeDef(BaseModel): + LoadBalancerArn: Optional[str] = None + ListenerArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLoadBalancersInputDescribeLoadBalancersPaginateTypeDef(BaseModel): + LoadBalancerArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRulesInputDescribeRulesPaginateTypeDef(BaseModel): + ListenerArn: Optional[str] = None + RuleArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSSLPoliciesInputDescribeSSLPoliciesPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + LoadBalancerType: Optional[LoadBalancerTypeEnumType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTargetGroupsInputDescribeTargetGroupsPaginateTypeDef(BaseModel): + LoadBalancerArn: Optional[str] = None + TargetGroupArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAccountLimitsOutputTypeDef(BaseModel): + Limits: List[LimitTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBalancerAttributesOutputTypeDef(BaseModel): + Attributes: List[LoadBalancerAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyLoadBalancerAttributesInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + Attributes: Sequence[LoadBalancerAttributeTypeDef] + +class ModifyLoadBalancerAttributesOutputTypeDef(BaseModel): + Attributes: List[LoadBalancerAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBalancersInputLoadBalancerAvailableWaitTypeDef(BaseModel): + LoadBalancerArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeLoadBalancersInputLoadBalancerExistsWaitTypeDef(BaseModel): + LoadBalancerArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeLoadBalancersInputLoadBalancersDeletedWaitTypeDef(BaseModel): + LoadBalancerArns: Optional[Sequence[str]] = None + Names: Optional[Sequence[str]] = None + Marker: Optional[str] = None + PageSize: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTargetHealthInputTargetDeregisteredWaitTypeDef(BaseModel): + TargetGroupArn: str + Targets: Optional[Sequence[TargetDescriptionTypeDef]] = None + Include: Optional[Sequence[DescribeTargetHealthInputIncludeEnumType]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTargetHealthInputTargetInServiceWaitTypeDef(BaseModel): + TargetGroupArn: str + Targets: Optional[Sequence[TargetDescriptionTypeDef]] = None + Include: Optional[Sequence[DescribeTargetHealthInputIncludeEnumType]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTargetGroupAttributesOutputTypeDef(BaseModel): + Attributes: List[TargetGroupAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyTargetGroupAttributesInputRequestTypeDef(BaseModel): + TargetGroupArn: str + Attributes: Sequence[TargetGroupAttributeTypeDef] + +class ModifyTargetGroupAttributesOutputTypeDef(BaseModel): + Attributes: List[TargetGroupAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrustStoreAssociationsOutputTypeDef(BaseModel): + TrustStoreAssociations: List[TrustStoreAssociationTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrustStoreRevocationsOutputTypeDef(BaseModel): + TrustStoreRevocations: List[DescribeTrustStoreRevocationTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ForwardActionConfigExtraOutputTypeDef(BaseModel): + TargetGroups: Optional[List[TargetGroupTupleTypeDef]] = None + TargetGroupStickinessConfig: Optional[TargetGroupStickinessConfigTypeDef] = None + +class ForwardActionConfigOutputTypeDef(BaseModel): + TargetGroups: Optional[List[TargetGroupTupleTypeDef]] = None + TargetGroupStickinessConfig: Optional[TargetGroupStickinessConfigTypeDef] = None + +class ForwardActionConfigTypeDef(BaseModel): + TargetGroups: Optional[Sequence[TargetGroupTupleTypeDef]] = None + TargetGroupStickinessConfig: Optional[TargetGroupStickinessConfigTypeDef] = None + +class QueryStringConditionConfigExtraOutputTypeDef(BaseModel): + Values: Optional[List[QueryStringKeyValuePairTypeDef]] = None + +class QueryStringConditionConfigOutputTypeDef(BaseModel): + Values: Optional[List[QueryStringKeyValuePairTypeDef]] = None + +class QueryStringConditionConfigTypeDef(BaseModel): + Values: Optional[Sequence[QueryStringKeyValuePairTypeDef]] = None + +class SetRulePrioritiesInputRequestTypeDef(BaseModel): + RulePriorities: Sequence[RulePriorityPairTypeDef] + +class TargetHealthDescriptionTypeDef(BaseModel): + Target: Optional[TargetDescriptionTypeDef] = None + HealthCheckPort: Optional[str] = None + TargetHealth: Optional[TargetHealthTypeDef] = None + AnomalyDetection: Optional[AnomalyDetectionTypeDef] = None + +class DescribeTagsOutputTypeDef(BaseModel): + TagDescriptions: List[TagDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LoadBalancerTypeDef(BaseModel): + LoadBalancerArn: Optional[str] = None + DNSName: Optional[str] = None + CanonicalHostedZoneId: Optional[str] = None + CreatedTime: Optional[datetime] = None + LoadBalancerName: Optional[str] = None + Scheme: Optional[LoadBalancerSchemeEnumType] = None + VpcId: Optional[str] = None + State: Optional[LoadBalancerStateTypeDef] = None + Type: Optional[LoadBalancerTypeEnumType] = None + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + SecurityGroups: Optional[List[str]] = None + IpAddressType: Optional[IpAddressTypeType] = None + CustomerOwnedIpv4Pool: Optional[str] = None + EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic: Optional[str] = None + +class SetSubnetsOutputTypeDef(BaseModel): + AvailabilityZones: List[AvailabilityZoneTypeDef] + IpAddressType: IpAddressTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSSLPoliciesOutputTypeDef(BaseModel): + SslPolicies: List[SslPolicyTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTargetGroupOutputTypeDef(BaseModel): + TargetGroups: List[TargetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTargetGroupsOutputTypeDef(BaseModel): + TargetGroups: List[TargetGroupTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyTargetGroupOutputTypeDef(BaseModel): + TargetGroups: List[TargetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ActionExtraOutputTypeDef(BaseModel): + Type: ActionTypeEnumType + TargetGroupArn: Optional[str] = None + AuthenticateOidcConfig: Optional[AuthenticateOidcActionConfigExtraOutputTypeDef] = None + AuthenticateCognitoConfig: Optional[AuthenticateCognitoActionConfigExtraOutputTypeDef] = None + Order: Optional[int] = None + RedirectConfig: Optional[RedirectActionConfigTypeDef] = None + FixedResponseConfig: Optional[FixedResponseActionConfigTypeDef] = None + ForwardConfig: Optional[ForwardActionConfigExtraOutputTypeDef] = None + +class ActionOutputTypeDef(BaseModel): + Type: ActionTypeEnumType + TargetGroupArn: Optional[str] = None + AuthenticateOidcConfig: Optional[AuthenticateOidcActionConfigOutputTypeDef] = None + AuthenticateCognitoConfig: Optional[AuthenticateCognitoActionConfigOutputTypeDef] = None + Order: Optional[int] = None + RedirectConfig: Optional[RedirectActionConfigTypeDef] = None + FixedResponseConfig: Optional[FixedResponseActionConfigTypeDef] = None + ForwardConfig: Optional[ForwardActionConfigOutputTypeDef] = None + +class ActionTypeDef(BaseModel): + Type: ActionTypeEnumType + TargetGroupArn: Optional[str] = None + AuthenticateOidcConfig: Optional[AuthenticateOidcActionConfigTypeDef] = None + AuthenticateCognitoConfig: Optional[AuthenticateCognitoActionConfigTypeDef] = None + Order: Optional[int] = None + RedirectConfig: Optional[RedirectActionConfigTypeDef] = None + FixedResponseConfig: Optional[FixedResponseActionConfigTypeDef] = None + ForwardConfig: Optional[ForwardActionConfigTypeDef] = None + +class RuleConditionExtraOutputTypeDef(BaseModel): + Field: Optional[str] = None + Values: Optional[List[str]] = None + HostHeaderConfig: Optional[HostHeaderConditionConfigExtraOutputTypeDef] = None + PathPatternConfig: Optional[PathPatternConditionConfigExtraOutputTypeDef] = None + HttpHeaderConfig: Optional[HttpHeaderConditionConfigExtraOutputTypeDef] = None + QueryStringConfig: Optional[QueryStringConditionConfigExtraOutputTypeDef] = None + HttpRequestMethodConfig: Optional[HttpRequestMethodConditionConfigExtraOutputTypeDef] = None + SourceIpConfig: Optional[SourceIpConditionConfigExtraOutputTypeDef] = None + +class RuleConditionOutputTypeDef(BaseModel): + Field: Optional[str] = None + Values: Optional[List[str]] = None + HostHeaderConfig: Optional[HostHeaderConditionConfigOutputTypeDef] = None + PathPatternConfig: Optional[PathPatternConditionConfigOutputTypeDef] = None + HttpHeaderConfig: Optional[HttpHeaderConditionConfigOutputTypeDef] = None + QueryStringConfig: Optional[QueryStringConditionConfigOutputTypeDef] = None + HttpRequestMethodConfig: Optional[HttpRequestMethodConditionConfigOutputTypeDef] = None + SourceIpConfig: Optional[SourceIpConditionConfigOutputTypeDef] = None + +class RuleConditionTypeDef(BaseModel): + Field: Optional[str] = None + Values: Optional[Sequence[str]] = None + HostHeaderConfig: Optional[HostHeaderConditionConfigTypeDef] = None + PathPatternConfig: Optional[PathPatternConditionConfigTypeDef] = None + HttpHeaderConfig: Optional[HttpHeaderConditionConfigTypeDef] = None + QueryStringConfig: Optional[QueryStringConditionConfigTypeDef] = None + HttpRequestMethodConfig: Optional[HttpRequestMethodConditionConfigTypeDef] = None + SourceIpConfig: Optional[SourceIpConditionConfigTypeDef] = None + +class DescribeTargetHealthOutputTypeDef(BaseModel): + TargetHealthDescriptions: List[TargetHealthDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoadBalancerOutputTypeDef(BaseModel): + LoadBalancers: List[LoadBalancerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBalancersOutputTypeDef(BaseModel): + LoadBalancers: List[LoadBalancerTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListenerTypeDef(BaseModel): + ListenerArn: Optional[str] = None + LoadBalancerArn: Optional[str] = None + Port: Optional[int] = None + Protocol: Optional[ProtocolEnumType] = None + Certificates: Optional[List[CertificateTypeDef]] = None + SslPolicy: Optional[str] = None + DefaultActions: Optional[List[ActionOutputTypeDef]] = None + AlpnPolicy: Optional[List[str]] = None + MutualAuthentication: Optional[MutualAuthenticationAttributesTypeDef] = None + +class RuleTypeDef(BaseModel): + RuleArn: Optional[str] = None + Priority: Optional[str] = None + Conditions: Optional[List[RuleConditionOutputTypeDef]] = None + Actions: Optional[List[ActionOutputTypeDef]] = None + IsDefault: Optional[bool] = None + +class CreateListenerOutputTypeDef(BaseModel): + Listeners: List[ListenerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeListenersOutputTypeDef(BaseModel): + Listeners: List[ListenerTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyListenerOutputTypeDef(BaseModel): + Listeners: List[ListenerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateListenerInputRequestTypeDef(BaseModel): + LoadBalancerArn: str + DefaultActions: Sequence[ActionUnionTypeDef] + Protocol: Optional[ProtocolEnumType] = None + Port: Optional[int] = None + SslPolicy: Optional[str] = None + Certificates: Optional[Sequence[CertificateTypeDef]] = None + AlpnPolicy: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + MutualAuthentication: Optional[MutualAuthenticationAttributesTypeDef] = None + +class ModifyListenerInputRequestTypeDef(BaseModel): + ListenerArn: str + Port: Optional[int] = None + Protocol: Optional[ProtocolEnumType] = None + SslPolicy: Optional[str] = None + Certificates: Optional[Sequence[CertificateTypeDef]] = None + DefaultActions: Optional[Sequence[ActionUnionTypeDef]] = None + AlpnPolicy: Optional[Sequence[str]] = None + MutualAuthentication: Optional[MutualAuthenticationAttributesTypeDef] = None + +class CreateRuleOutputTypeDef(BaseModel): + Rules: List[RuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRulesOutputTypeDef(BaseModel): + Rules: List[RuleTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyRuleOutputTypeDef(BaseModel): + Rules: List[RuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetRulePrioritiesOutputTypeDef(BaseModel): + Rules: List[RuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleInputRequestTypeDef(BaseModel): + ListenerArn: str + Conditions: Sequence[RuleConditionUnionTypeDef] + Priority: int + Actions: Sequence[ActionUnionTypeDef] + Tags: Optional[Sequence[TagTypeDef]] = None + +class ModifyRuleInputRequestTypeDef(BaseModel): + RuleArn: str + Conditions: Optional[Sequence[RuleConditionUnionTypeDef]] = None + Actions: Optional[Sequence[ActionUnionTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/elbv2_constants.py b/aws_resource_validator/pydantic_models/elbv2_constants.py new file mode 100644 index 00000000..98474788 --- /dev/null +++ b/aws_resource_validator/pydantic_models/elbv2_constants.py @@ -0,0 +1,482 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionTypeEnumType = Literal["authenticate-cognito", "authenticate-oidc", "fixed-response", "forward", "redirect"] +AnomalyResultEnumType = Literal["anomalous", "normal"] +AuthenticateCognitoActionConditionalBehaviorEnumType = Literal["allow", "authenticate", "deny"] +AuthenticateOidcActionConditionalBehaviorEnumType = Literal["allow", "authenticate", "deny"] +DescribeAccountLimitsPaginatorName = Literal["describe_account_limits"] +DescribeListenerCertificatesPaginatorName = Literal["describe_listener_certificates"] +DescribeListenersPaginatorName = Literal["describe_listeners"] +DescribeLoadBalancersPaginatorName = Literal["describe_load_balancers"] +DescribeRulesPaginatorName = Literal["describe_rules"] +DescribeSSLPoliciesPaginatorName = Literal["describe_ssl_policies"] +DescribeTargetGroupsPaginatorName = Literal["describe_target_groups"] +DescribeTargetHealthInputIncludeEnumType = Literal["All", "AnomalyDetection"] +EnforceSecurityGroupInboundRulesOnPrivateLinkTrafficEnumType = Literal["off", "on"] +IpAddressTypeType = Literal["dualstack", "dualstack-without-public-ipv4", "ipv4"] +LoadBalancerAvailableWaiterName = Literal["load_balancer_available"] +LoadBalancerExistsWaiterName = Literal["load_balancer_exists"] +LoadBalancerSchemeEnumType = Literal["internal", "internet-facing"] +LoadBalancerStateEnumType = Literal["active", "active_impaired", "failed", "provisioning"] +LoadBalancerTypeEnumType = Literal["application", "gateway", "network"] +LoadBalancersDeletedWaiterName = Literal["load_balancers_deleted"] +MitigationInEffectEnumType = Literal["no", "yes"] +ProtocolEnumType = Literal["GENEVE", "HTTP", "HTTPS", "TCP", "TCP_UDP", "TLS", "UDP"] +RedirectActionStatusCodeEnumType = Literal["HTTP_301", "HTTP_302"] +RevocationTypeType = Literal["CRL"] +TargetDeregisteredWaiterName = Literal["target_deregistered"] +TargetGroupIpAddressTypeEnumType = Literal["ipv4", "ipv6"] +TargetHealthReasonEnumType = Literal["Elb.InitialHealthChecking", + "Elb.InternalError", + "Elb.RegistrationInProgress", + "Target.DeregistrationInProgress", + "Target.FailedHealthChecks", + "Target.HealthCheckDisabled", + "Target.InvalidState", + "Target.IpUnusable", + "Target.NotInUse", + "Target.NotRegistered", + "Target.ResponseCodeMismatch", + "Target.Timeout",] +TargetHealthStateEnumType = Literal["draining", "healthy", "initial", "unavailable", "unhealthy", "unhealthy.draining", "unused"] +TargetInServiceWaiterName = Literal["target_in_service"] +TargetTypeEnumType = Literal["alb", "instance", "ip", "lambda"] +TrustStoreStatusType = Literal["ACTIVE", "CREATING"] +ElasticLoadBalancingv2ServiceName = Literal["elbv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_account_limits", + "describe_listener_certificates", + "describe_listeners", + "describe_load_balancers", + "describe_rules", + "describe_ssl_policies", + "describe_target_groups",] +WaiterName = Literal["load_balancer_available", + "load_balancer_exists", + "load_balancers_deleted", + "target_deregistered", + "target_in_service",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ActionUnionTypeDef = Union['ActionTypeDef', 'ActionExtraOutputTypeDef'] +RuleConditionUnionTypeDef = Union['RuleConditionTypeDef', 'RuleConditionExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/emr_classes.py b/aws_resource_validator/pydantic_models/emr_classes.py new file mode 100644 index 00000000..72485d98 --- /dev/null +++ b/aws_resource_validator/pydantic_models/emr_classes.py @@ -0,0 +1,1324 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.emr_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ApplicationOutputTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + Args: Optional[List[str]] = None + AdditionalInfo: Optional[Dict[str, str]] = None + +class ApplicationTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + Args: Optional[Sequence[str]] = None + AdditionalInfo: Optional[Mapping[str, str]] = None + +class ScalingConstraintsTypeDef(BaseModel): + MinCapacity: int + MaxCapacity: int + +class AutoScalingPolicyStateChangeReasonTypeDef(BaseModel): + Code: Optional[AutoScalingPolicyStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class AutoTerminationPolicyTypeDef(BaseModel): + IdleTimeout: Optional[int] = None + +class BlockPublicAccessConfigurationMetadataTypeDef(BaseModel): + CreationDateTime: datetime + CreatedByArn: str + +class PortRangeTypeDef(BaseModel): + MinRange: int + MaxRange: Optional[int] = None + +class ScriptBootstrapActionConfigOutputTypeDef(BaseModel): + Path: str + Args: Optional[List[str]] = None + +class ScriptBootstrapActionConfigTypeDef(BaseModel): + Path: str + Args: Optional[Sequence[str]] = None + +class CancelStepsInfoTypeDef(BaseModel): + StepId: Optional[str] = None + Status: Optional[CancelStepsRequestStatusType] = None + Reason: Optional[str] = None + +class CancelStepsInputRequestTypeDef(BaseModel): + ClusterId: str + StepIds: Sequence[str] + StepCancellationOption: Optional[StepCancellationOptionType] = None + +class MetricDimensionTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ClusterStateChangeReasonTypeDef(BaseModel): + Code: Optional[ClusterStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class ClusterTimelineTypeDef(BaseModel): + CreationDateTime: Optional[datetime] = None + ReadyDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + +class ErrorDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorData: Optional[List[Dict[str, str]]] = None + ErrorMessage: Optional[str] = None + +class Ec2InstanceAttributesTypeDef(BaseModel): + Ec2KeyName: Optional[str] = None + Ec2SubnetId: Optional[str] = None + RequestedEc2SubnetIds: Optional[List[str]] = None + Ec2AvailabilityZone: Optional[str] = None + RequestedEc2AvailabilityZones: Optional[List[str]] = None + IamInstanceProfile: Optional[str] = None + EmrManagedMasterSecurityGroup: Optional[str] = None + EmrManagedSlaveSecurityGroup: Optional[str] = None + ServiceAccessSecurityGroup: Optional[str] = None + AdditionalMasterSecurityGroups: Optional[List[str]] = None + AdditionalSlaveSecurityGroups: Optional[List[str]] = None + +class KerberosAttributesTypeDef(BaseModel): + Realm: str + KdcAdminPassword: str + CrossRealmTrustPrincipalPassword: Optional[str] = None + ADDomainJoinUser: Optional[str] = None + ADDomainJoinPassword: Optional[str] = None + +class PlacementGroupConfigTypeDef(BaseModel): + InstanceRole: InstanceRoleTypeType + PlacementStrategy: Optional[PlacementGroupStrategyType] = None + +class CommandTypeDef(BaseModel): + Name: Optional[str] = None + ScriptPath: Optional[str] = None + Args: Optional[List[str]] = None + +class ComputeLimitsTypeDef(BaseModel): + UnitType: ComputeLimitsUnitTypeType + MinimumCapacityUnits: int + MaximumCapacityUnits: int + MaximumOnDemandCapacityUnits: Optional[int] = None + MaximumCoreCapacityUnits: Optional[int] = None + +class ConfigurationExtraOutputTypeDef(BaseModel): + Classification: Optional[str] = None + Configurations: Optional[List[Dict[str, Any]]] = None + Properties: Optional[Dict[str, str]] = None + +class ConfigurationOutputTypeDef(BaseModel): + Classification: Optional[str] = None + Configurations: Optional[List[Dict[str, Any]]] = None + Properties: Optional[Dict[str, str]] = None + +class ConfigurationTypeDef(BaseModel): + Classification: Optional[str] = None + Configurations: Optional[Sequence[Dict[str, Any]]] = None + Properties: Optional[Mapping[str, str]] = None + +class CreateSecurityConfigurationInputRequestTypeDef(BaseModel): + Name: str + SecurityConfiguration: str + +class CreateStudioSessionMappingInputRequestTypeDef(BaseModel): + StudioId: str + IdentityType: IdentityTypeType + SessionPolicyArn: str + IdentityId: Optional[str] = None + IdentityName: Optional[str] = None + +class UsernamePasswordTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + +class DeleteSecurityConfigurationInputRequestTypeDef(BaseModel): + Name: str + +class DeleteStudioInputRequestTypeDef(BaseModel): + StudioId: str + +class DeleteStudioSessionMappingInputRequestTypeDef(BaseModel): + StudioId: str + IdentityType: IdentityTypeType + IdentityId: Optional[str] = None + IdentityName: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeClusterInputRequestTypeDef(BaseModel): + ClusterId: str + +class DescribeNotebookExecutionInputRequestTypeDef(BaseModel): + NotebookExecutionId: str + +class DescribeReleaseLabelInputRequestTypeDef(BaseModel): + ReleaseLabel: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OSReleaseTypeDef(BaseModel): + Label: Optional[str] = None + +class SimplifiedApplicationTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + +class DescribeSecurityConfigurationInputRequestTypeDef(BaseModel): + Name: str + +class DescribeStepInputRequestTypeDef(BaseModel): + ClusterId: str + StepId: str + +class DescribeStudioInputRequestTypeDef(BaseModel): + StudioId: str + +class VolumeSpecificationTypeDef(BaseModel): + VolumeType: str + SizeInGB: int + Iops: Optional[int] = None + Throughput: Optional[int] = None + +class EbsVolumeTypeDef(BaseModel): + Device: Optional[str] = None + VolumeId: Optional[str] = None + +class ExecutionEngineConfigTypeDef(BaseModel): + Id: str + Type: Optional[Literal["EMR"]] = None + MasterInstanceSecurityGroupId: Optional[str] = None + ExecutionRoleArn: Optional[str] = None + +class FailureDetailsTypeDef(BaseModel): + Reason: Optional[str] = None + Message: Optional[str] = None + LogFile: Optional[str] = None + +class GetAutoTerminationPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + +class GetClusterSessionCredentialsInputRequestTypeDef(BaseModel): + ClusterId: str + ExecutionRoleArn: Optional[str] = None + +class GetManagedScalingPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + +class GetStudioSessionMappingInputRequestTypeDef(BaseModel): + StudioId: str + IdentityType: IdentityTypeType + IdentityId: Optional[str] = None + IdentityName: Optional[str] = None + +class SessionMappingDetailTypeDef(BaseModel): + StudioId: Optional[str] = None + IdentityId: Optional[str] = None + IdentityName: Optional[str] = None + IdentityType: Optional[IdentityTypeType] = None + SessionPolicyArn: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class KeyValueTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class HadoopStepConfigTypeDef(BaseModel): + Jar: Optional[str] = None + Properties: Optional[Dict[str, str]] = None + MainClass: Optional[str] = None + Args: Optional[List[str]] = None + +class SpotProvisioningSpecificationTypeDef(BaseModel): + TimeoutDurationMinutes: int + TimeoutAction: SpotProvisioningTimeoutActionType + BlockDurationMinutes: Optional[int] = None + AllocationStrategy: Optional[SpotProvisioningAllocationStrategyType] = None + +class OnDemandResizingSpecificationTypeDef(BaseModel): + TimeoutDurationMinutes: int + +class SpotResizingSpecificationTypeDef(BaseModel): + TimeoutDurationMinutes: int + +class InstanceFleetStateChangeReasonTypeDef(BaseModel): + Code: Optional[InstanceFleetStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class InstanceFleetTimelineTypeDef(BaseModel): + CreationDateTime: Optional[datetime] = None + ReadyDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + +class InstanceGroupDetailTypeDef(BaseModel): + Market: MarketTypeType + InstanceRole: InstanceRoleTypeType + InstanceType: str + InstanceRequestCount: int + InstanceRunningCount: int + State: InstanceGroupStateType + CreationDateTime: datetime + InstanceGroupId: Optional[str] = None + Name: Optional[str] = None + BidPrice: Optional[str] = None + LastStateChangeReason: Optional[str] = None + StartDateTime: Optional[datetime] = None + ReadyDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + CustomAmiId: Optional[str] = None + +class InstanceGroupStateChangeReasonTypeDef(BaseModel): + Code: Optional[InstanceGroupStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class InstanceGroupTimelineTypeDef(BaseModel): + CreationDateTime: Optional[datetime] = None + ReadyDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + +class InstanceResizePolicyOutputTypeDef(BaseModel): + InstancesToTerminate: Optional[List[str]] = None + InstancesToProtect: Optional[List[str]] = None + InstanceTerminationTimeout: Optional[int] = None + +class InstanceResizePolicyTypeDef(BaseModel): + InstancesToTerminate: Optional[Sequence[str]] = None + InstancesToProtect: Optional[Sequence[str]] = None + InstanceTerminationTimeout: Optional[int] = None + +class InstanceStateChangeReasonTypeDef(BaseModel): + Code: Optional[InstanceStateChangeReasonCodeType] = None + Message: Optional[str] = None + +class InstanceTimelineTypeDef(BaseModel): + CreationDateTime: Optional[datetime] = None + ReadyDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + +class JobFlowExecutionStatusDetailTypeDef(BaseModel): + State: JobFlowExecutionStateType + CreationDateTime: datetime + StartDateTime: Optional[datetime] = None + ReadyDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + LastStateChangeReason: Optional[str] = None + +class PlacementTypeTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + AvailabilityZones: Optional[Sequence[str]] = None + +class PlacementTypeOutputTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBootstrapActionsInputRequestTypeDef(BaseModel): + ClusterId: str + Marker: Optional[str] = None + +class ListInstanceFleetsInputRequestTypeDef(BaseModel): + ClusterId: str + Marker: Optional[str] = None + +class ListInstanceGroupsInputRequestTypeDef(BaseModel): + ClusterId: str + Marker: Optional[str] = None + +class ListInstancesInputRequestTypeDef(BaseModel): + ClusterId: str + InstanceGroupId: Optional[str] = None + InstanceGroupTypes: Optional[Sequence[InstanceGroupTypeType]] = None + InstanceFleetId: Optional[str] = None + InstanceFleetType: Optional[InstanceFleetTypeType] = None + InstanceStates: Optional[Sequence[InstanceStateType]] = None + Marker: Optional[str] = None + +class ReleaseLabelFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Application: Optional[str] = None + +class ListSecurityConfigurationsInputRequestTypeDef(BaseModel): + Marker: Optional[str] = None + +class SecurityConfigurationSummaryTypeDef(BaseModel): + Name: Optional[str] = None + CreationDateTime: Optional[datetime] = None + +class ListStepsInputRequestTypeDef(BaseModel): + ClusterId: str + StepStates: Optional[Sequence[StepStateType]] = None + StepIds: Optional[Sequence[str]] = None + Marker: Optional[str] = None + +class ListStudioSessionMappingsInputRequestTypeDef(BaseModel): + StudioId: Optional[str] = None + IdentityType: Optional[IdentityTypeType] = None + Marker: Optional[str] = None + +class SessionMappingSummaryTypeDef(BaseModel): + StudioId: Optional[str] = None + IdentityId: Optional[str] = None + IdentityName: Optional[str] = None + IdentityType: Optional[IdentityTypeType] = None + SessionPolicyArn: Optional[str] = None + CreationTime: Optional[datetime] = None + +class ListStudiosInputRequestTypeDef(BaseModel): + Marker: Optional[str] = None + +class StudioSummaryTypeDef(BaseModel): + StudioId: Optional[str] = None + Name: Optional[str] = None + VpcId: Optional[str] = None + Description: Optional[str] = None + Url: Optional[str] = None + AuthMode: Optional[AuthModeType] = None + CreationTime: Optional[datetime] = None + +class ListSupportedInstanceTypesInputRequestTypeDef(BaseModel): + ReleaseLabel: str + Marker: Optional[str] = None + +class SupportedInstanceTypeTypeDef(BaseModel): + Type: Optional[str] = None + MemoryGB: Optional[float] = None + StorageGB: Optional[int] = None + VCPU: Optional[int] = None + Is64BitsOnly: Optional[bool] = None + InstanceFamilyId: Optional[str] = None + EbsOptimizedAvailable: Optional[bool] = None + EbsOptimizedByDefault: Optional[bool] = None + NumberOfDisks: Optional[int] = None + EbsStorageOnly: Optional[bool] = None + Architecture: Optional[str] = None + +class ModifyClusterInputRequestTypeDef(BaseModel): + ClusterId: str + StepConcurrencyLevel: Optional[int] = None + +class NotebookS3LocationForOutputTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + +class OutputNotebookS3LocationForOutputTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + +class NotebookS3LocationFromInputTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + +class OnDemandCapacityReservationOptionsTypeDef(BaseModel): + UsageStrategy: Optional[Literal["use-capacity-reservations-first"]] = None + CapacityReservationPreference: Optional[OnDemandCapacityReservationPreferenceType] = None + CapacityReservationResourceGroupArn: Optional[str] = None + +class OutputNotebookS3LocationFromInputTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + +class RemoveAutoScalingPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + InstanceGroupId: str + +class RemoveAutoTerminationPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + +class RemoveManagedScalingPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + +class RemoveTagsInputRequestTypeDef(BaseModel): + ResourceId: str + TagKeys: Sequence[str] + +class SupportedProductConfigTypeDef(BaseModel): + Name: Optional[str] = None + Args: Optional[Sequence[str]] = None + +class SimpleScalingPolicyConfigurationTypeDef(BaseModel): + ScalingAdjustment: int + AdjustmentType: Optional[AdjustmentTypeType] = None + CoolDown: Optional[int] = None + +class SetKeepJobFlowAliveWhenNoStepsInputRequestTypeDef(BaseModel): + JobFlowIds: Sequence[str] + KeepJobFlowAliveWhenNoSteps: bool + +class SetTerminationProtectionInputRequestTypeDef(BaseModel): + JobFlowIds: Sequence[str] + TerminationProtected: bool + +class SetUnhealthyNodeReplacementInputRequestTypeDef(BaseModel): + JobFlowIds: Sequence[str] + UnhealthyNodeReplacement: bool + +class SetVisibleToAllUsersInputRequestTypeDef(BaseModel): + JobFlowIds: Sequence[str] + VisibleToAllUsers: bool + +class StepExecutionStatusDetailTypeDef(BaseModel): + State: StepExecutionStateType + CreationDateTime: datetime + StartDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + LastStateChangeReason: Optional[str] = None + +class StepStateChangeReasonTypeDef(BaseModel): + Code: Optional[Literal["NONE"]] = None + Message: Optional[str] = None + +class StepTimelineTypeDef(BaseModel): + CreationDateTime: Optional[datetime] = None + StartDateTime: Optional[datetime] = None + EndDateTime: Optional[datetime] = None + +class StopNotebookExecutionInputRequestTypeDef(BaseModel): + NotebookExecutionId: str + +class TerminateJobFlowsInputRequestTypeDef(BaseModel): + JobFlowIds: Sequence[str] + +class UpdateStudioInputRequestTypeDef(BaseModel): + StudioId: str + Name: Optional[str] = None + Description: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + DefaultS3Location: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + +class UpdateStudioSessionMappingInputRequestTypeDef(BaseModel): + StudioId: str + IdentityType: IdentityTypeType + SessionPolicyArn: str + IdentityId: Optional[str] = None + IdentityName: Optional[str] = None + +class AddInstanceFleetOutputTypeDef(BaseModel): + ClusterId: str + InstanceFleetId: str + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddInstanceGroupsOutputTypeDef(BaseModel): + JobFlowId: str + InstanceGroupIds: List[str] + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddJobFlowStepsOutputTypeDef(BaseModel): + StepIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityConfigurationOutputTypeDef(BaseModel): + Name: str + CreationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStudioOutputTypeDef(BaseModel): + StudioId: str + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSecurityConfigurationOutputTypeDef(BaseModel): + Name: str + SecurityConfiguration: str + CreationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListReleaseLabelsOutputTypeDef(BaseModel): + ReleaseLabels: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModifyClusterOutputTypeDef(BaseModel): + StepConcurrencyLevel: int + ResponseMetadata: ResponseMetadataTypeDef + +class RunJobFlowOutputTypeDef(BaseModel): + JobFlowId: str + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartNotebookExecutionOutputTypeDef(BaseModel): + NotebookExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsInputRequestTypeDef(BaseModel): + ResourceId: str + Tags: Sequence[TagTypeDef] + +class CreateStudioInputRequestTypeDef(BaseModel): + Name: str + AuthMode: AuthModeType + VpcId: str + SubnetIds: Sequence[str] + ServiceRole: str + WorkspaceSecurityGroupId: str + EngineSecurityGroupId: str + DefaultS3Location: str + Description: Optional[str] = None + UserRole: Optional[str] = None + IdpAuthUrl: Optional[str] = None + IdpRelayStateParameterName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TrustedIdentityPropagationEnabled: Optional[bool] = None + IdcUserAssignment: Optional[IdcUserAssignmentType] = None + IdcInstanceArn: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + +class StudioTypeDef(BaseModel): + StudioId: Optional[str] = None + StudioArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + AuthMode: Optional[AuthModeType] = None + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + ServiceRole: Optional[str] = None + UserRole: Optional[str] = None + WorkspaceSecurityGroupId: Optional[str] = None + EngineSecurityGroupId: Optional[str] = None + Url: Optional[str] = None + CreationTime: Optional[datetime] = None + DefaultS3Location: Optional[str] = None + IdpAuthUrl: Optional[str] = None + IdpRelayStateParameterName: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + IdcInstanceArn: Optional[str] = None + TrustedIdentityPropagationEnabled: Optional[bool] = None + IdcUserAssignment: Optional[IdcUserAssignmentType] = None + EncryptionKeyArn: Optional[str] = None + +class AutoScalingPolicyStatusTypeDef(BaseModel): + State: Optional[AutoScalingPolicyStateType] = None + StateChangeReason: Optional[AutoScalingPolicyStateChangeReasonTypeDef] = None + +class GetAutoTerminationPolicyOutputTypeDef(BaseModel): + AutoTerminationPolicy: AutoTerminationPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAutoTerminationPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + AutoTerminationPolicy: Optional[AutoTerminationPolicyTypeDef] = None + +class BlockPublicAccessConfigurationOutputTypeDef(BaseModel): + BlockPublicSecurityGroupRules: bool + PermittedPublicSecurityGroupRuleRanges: Optional[List[PortRangeTypeDef]] = None + +class BlockPublicAccessConfigurationTypeDef(BaseModel): + BlockPublicSecurityGroupRules: bool + PermittedPublicSecurityGroupRuleRanges: Optional[Sequence[PortRangeTypeDef]] = None + +class BootstrapActionConfigOutputTypeDef(BaseModel): + Name: str + ScriptBootstrapAction: ScriptBootstrapActionConfigOutputTypeDef + +class BootstrapActionConfigTypeDef(BaseModel): + Name: str + ScriptBootstrapAction: ScriptBootstrapActionConfigTypeDef + +class CancelStepsOutputTypeDef(BaseModel): + CancelStepsInfoList: List[CancelStepsInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CloudWatchAlarmDefinitionOutputTypeDef(BaseModel): + ComparisonOperator: ComparisonOperatorType + MetricName: str + Period: int + Threshold: float + EvaluationPeriods: Optional[int] = None + Namespace: Optional[str] = None + Statistic: Optional[StatisticType] = None + Unit: Optional[UnitType] = None + Dimensions: Optional[List[MetricDimensionTypeDef]] = None + +class CloudWatchAlarmDefinitionTypeDef(BaseModel): + ComparisonOperator: ComparisonOperatorType + MetricName: str + Period: int + Threshold: float + EvaluationPeriods: Optional[int] = None + Namespace: Optional[str] = None + Statistic: Optional[StatisticType] = None + Unit: Optional[UnitType] = None + Dimensions: Optional[Sequence[MetricDimensionTypeDef]] = None + +class ClusterStatusTypeDef(BaseModel): + State: Optional[ClusterStateType] = None + StateChangeReason: Optional[ClusterStateChangeReasonTypeDef] = None + Timeline: Optional[ClusterTimelineTypeDef] = None + ErrorDetails: Optional[List[ErrorDetailTypeDef]] = None + +class ListBootstrapActionsOutputTypeDef(BaseModel): + BootstrapActions: List[CommandTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ManagedScalingPolicyTypeDef(BaseModel): + ComputeLimits: Optional[ComputeLimitsTypeDef] = None + +class CredentialsTypeDef(BaseModel): + UsernamePassword: Optional[UsernamePasswordTypeDef] = None + +class DescribeClusterInputClusterRunningWaitTypeDef(BaseModel): + ClusterId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClusterInputClusterTerminatedWaitTypeDef(BaseModel): + ClusterId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStepInputStepCompleteWaitTypeDef(BaseModel): + ClusterId: str + StepId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeJobFlowsInputRequestTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + JobFlowIds: Optional[Sequence[str]] = None + JobFlowStates: Optional[Sequence[JobFlowExecutionStateType]] = None + +class ListClustersInputRequestTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + ClusterStates: Optional[Sequence[ClusterStateType]] = None + Marker: Optional[str] = None + +class ListNotebookExecutionsInputRequestTypeDef(BaseModel): + EditorId: Optional[str] = None + Status: Optional[NotebookExecutionStatusType] = None + From: Optional[TimestampTypeDef] = None + To: Optional[TimestampTypeDef] = None + Marker: Optional[str] = None + ExecutionEngineId: Optional[str] = None + +class DescribeReleaseLabelOutputTypeDef(BaseModel): + ReleaseLabel: str + Applications: List[SimplifiedApplicationTypeDef] + AvailableOSReleases: List[OSReleaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EbsBlockDeviceConfigTypeDef(BaseModel): + VolumeSpecification: VolumeSpecificationTypeDef + VolumesPerInstance: Optional[int] = None + +class EbsBlockDeviceTypeDef(BaseModel): + VolumeSpecification: Optional[VolumeSpecificationTypeDef] = None + Device: Optional[str] = None + +class GetStudioSessionMappingOutputTypeDef(BaseModel): + SessionMapping: SessionMappingDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HadoopJarStepConfigOutputTypeDef(BaseModel): + Jar: str + Properties: Optional[List[KeyValueTypeDef]] = None + MainClass: Optional[str] = None + Args: Optional[List[str]] = None + +class HadoopJarStepConfigTypeDef(BaseModel): + Jar: str + Properties: Optional[Sequence[KeyValueTypeDef]] = None + MainClass: Optional[str] = None + Args: Optional[Sequence[str]] = None + +class InstanceFleetResizingSpecificationsTypeDef(BaseModel): + SpotResizeSpecification: Optional[SpotResizingSpecificationTypeDef] = None + OnDemandResizeSpecification: Optional[OnDemandResizingSpecificationTypeDef] = None + +class InstanceFleetStatusTypeDef(BaseModel): + State: Optional[InstanceFleetStateType] = None + StateChangeReason: Optional[InstanceFleetStateChangeReasonTypeDef] = None + Timeline: Optional[InstanceFleetTimelineTypeDef] = None + +class InstanceGroupStatusTypeDef(BaseModel): + State: Optional[InstanceGroupStateType] = None + StateChangeReason: Optional[InstanceGroupStateChangeReasonTypeDef] = None + Timeline: Optional[InstanceGroupTimelineTypeDef] = None + +class ShrinkPolicyOutputTypeDef(BaseModel): + DecommissionTimeout: Optional[int] = None + InstanceResizePolicy: Optional[InstanceResizePolicyOutputTypeDef] = None + +class ShrinkPolicyTypeDef(BaseModel): + DecommissionTimeout: Optional[int] = None + InstanceResizePolicy: Optional[InstanceResizePolicyTypeDef] = None + +class InstanceStatusTypeDef(BaseModel): + State: Optional[InstanceStateType] = None + StateChangeReason: Optional[InstanceStateChangeReasonTypeDef] = None + Timeline: Optional[InstanceTimelineTypeDef] = None + +class JobFlowInstancesDetailTypeDef(BaseModel): + MasterInstanceType: str + SlaveInstanceType: str + InstanceCount: int + MasterPublicDnsName: Optional[str] = None + MasterInstanceId: Optional[str] = None + InstanceGroups: Optional[List[InstanceGroupDetailTypeDef]] = None + NormalizedInstanceHours: Optional[int] = None + Ec2KeyName: Optional[str] = None + Ec2SubnetId: Optional[str] = None + Placement: Optional[PlacementTypeOutputTypeDef] = None + KeepJobFlowAliveWhenNoSteps: Optional[bool] = None + TerminationProtected: Optional[bool] = None + UnhealthyNodeReplacement: Optional[bool] = None + HadoopVersion: Optional[str] = None + +class ListBootstrapActionsInputListBootstrapActionsPaginateTypeDef(BaseModel): + ClusterId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersInputListClustersPaginateTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + ClusterStates: Optional[Sequence[ClusterStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceFleetsInputListInstanceFleetsPaginateTypeDef(BaseModel): + ClusterId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceGroupsInputListInstanceGroupsPaginateTypeDef(BaseModel): + ClusterId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstancesInputListInstancesPaginateTypeDef(BaseModel): + ClusterId: str + InstanceGroupId: Optional[str] = None + InstanceGroupTypes: Optional[Sequence[InstanceGroupTypeType]] = None + InstanceFleetId: Optional[str] = None + InstanceFleetType: Optional[InstanceFleetTypeType] = None + InstanceStates: Optional[Sequence[InstanceStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotebookExecutionsInputListNotebookExecutionsPaginateTypeDef(BaseModel): + EditorId: Optional[str] = None + Status: Optional[NotebookExecutionStatusType] = None + From: Optional[TimestampTypeDef] = None + To: Optional[TimestampTypeDef] = None + ExecutionEngineId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityConfigurationsInputListSecurityConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStepsInputListStepsPaginateTypeDef(BaseModel): + ClusterId: str + StepStates: Optional[Sequence[StepStateType]] = None + StepIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStudioSessionMappingsInputListStudioSessionMappingsPaginateTypeDef(BaseModel): + StudioId: Optional[str] = None + IdentityType: Optional[IdentityTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStudiosInputListStudiosPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReleaseLabelsInputRequestTypeDef(BaseModel): + Filters: Optional[ReleaseLabelFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListSecurityConfigurationsOutputTypeDef(BaseModel): + SecurityConfigurations: List[SecurityConfigurationSummaryTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStudioSessionMappingsOutputTypeDef(BaseModel): + SessionMappings: List[SessionMappingSummaryTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStudiosOutputTypeDef(BaseModel): + Studios: List[StudioSummaryTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSupportedInstanceTypesOutputTypeDef(BaseModel): + SupportedInstanceTypes: List[SupportedInstanceTypeTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class NotebookExecutionSummaryTypeDef(BaseModel): + NotebookExecutionId: Optional[str] = None + EditorId: Optional[str] = None + NotebookExecutionName: Optional[str] = None + Status: Optional[NotebookExecutionStatusType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + NotebookS3Location: Optional[NotebookS3LocationForOutputTypeDef] = None + ExecutionEngineId: Optional[str] = None + +class NotebookExecutionTypeDef(BaseModel): + NotebookExecutionId: Optional[str] = None + EditorId: Optional[str] = None + ExecutionEngine: Optional[ExecutionEngineConfigTypeDef] = None + NotebookExecutionName: Optional[str] = None + NotebookParams: Optional[str] = None + Status: Optional[NotebookExecutionStatusType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Arn: Optional[str] = None + OutputNotebookURI: Optional[str] = None + LastStateChangeReason: Optional[str] = None + NotebookInstanceSecurityGroupId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + NotebookS3Location: Optional[NotebookS3LocationForOutputTypeDef] = None + OutputNotebookS3Location: Optional[OutputNotebookS3LocationForOutputTypeDef] = None + OutputNotebookFormat: Optional[Literal["HTML"]] = None + EnvironmentVariables: Optional[Dict[str, str]] = None + +class OnDemandProvisioningSpecificationTypeDef(BaseModel): + AllocationStrategy: OnDemandProvisioningAllocationStrategyType + CapacityReservationOptions: Optional[OnDemandCapacityReservationOptionsTypeDef] = None + +class StartNotebookExecutionInputRequestTypeDef(BaseModel): + ExecutionEngine: ExecutionEngineConfigTypeDef + ServiceRole: str + EditorId: Optional[str] = None + RelativePath: Optional[str] = None + NotebookExecutionName: Optional[str] = None + NotebookParams: Optional[str] = None + NotebookInstanceSecurityGroupId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + NotebookS3Location: Optional[NotebookS3LocationFromInputTypeDef] = None + OutputNotebookS3Location: Optional[OutputNotebookS3LocationFromInputTypeDef] = None + OutputNotebookFormat: Optional[Literal["HTML"]] = None + EnvironmentVariables: Optional[Mapping[str, str]] = None + +class ScalingActionTypeDef(BaseModel): + SimpleScalingPolicyConfiguration: SimpleScalingPolicyConfigurationTypeDef + Market: Optional[MarketTypeType] = None + +class StepStatusTypeDef(BaseModel): + State: Optional[StepStateType] = None + StateChangeReason: Optional[StepStateChangeReasonTypeDef] = None + FailureDetails: Optional[FailureDetailsTypeDef] = None + Timeline: Optional[StepTimelineTypeDef] = None + +class DescribeStudioOutputTypeDef(BaseModel): + Studio: StudioTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlockPublicAccessConfigurationOutputTypeDef(BaseModel): + BlockPublicAccessConfiguration: BlockPublicAccessConfigurationOutputTypeDef + BlockPublicAccessConfigurationMetadata: BlockPublicAccessConfigurationMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBlockPublicAccessConfigurationInputRequestTypeDef(BaseModel): + BlockPublicAccessConfiguration: BlockPublicAccessConfigurationTypeDef + +class BootstrapActionDetailTypeDef(BaseModel): + BootstrapActionConfig: Optional[BootstrapActionConfigOutputTypeDef] = None + +class ScalingTriggerOutputTypeDef(BaseModel): + CloudWatchAlarmDefinition: CloudWatchAlarmDefinitionOutputTypeDef + +class ScalingTriggerTypeDef(BaseModel): + CloudWatchAlarmDefinition: CloudWatchAlarmDefinitionTypeDef + +class ClusterSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ClusterStatusTypeDef] = None + NormalizedInstanceHours: Optional[int] = None + ClusterArn: Optional[str] = None + OutpostArn: Optional[str] = None + +class ClusterTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ClusterStatusTypeDef] = None + Ec2InstanceAttributes: Optional[Ec2InstanceAttributesTypeDef] = None + InstanceCollectionType: Optional[InstanceCollectionTypeType] = None + LogUri: Optional[str] = None + LogEncryptionKmsKeyId: Optional[str] = None + RequestedAmiVersion: Optional[str] = None + RunningAmiVersion: Optional[str] = None + ReleaseLabel: Optional[str] = None + AutoTerminate: Optional[bool] = None + TerminationProtected: Optional[bool] = None + UnhealthyNodeReplacement: Optional[bool] = None + VisibleToAllUsers: Optional[bool] = None + Applications: Optional[List[ApplicationOutputTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + ServiceRole: Optional[str] = None + NormalizedInstanceHours: Optional[int] = None + MasterPublicDnsName: Optional[str] = None + Configurations: Optional[List["ConfigurationOutputTypeDef"]] = None + SecurityConfiguration: Optional[str] = None + AutoScalingRole: Optional[str] = None + ScaleDownBehavior: Optional[ScaleDownBehaviorType] = None + CustomAmiId: Optional[str] = None + EbsRootVolumeSize: Optional[int] = None + RepoUpgradeOnBoot: Optional[RepoUpgradeOnBootType] = None + KerberosAttributes: Optional[KerberosAttributesTypeDef] = None + ClusterArn: Optional[str] = None + OutpostArn: Optional[str] = None + StepConcurrencyLevel: Optional[int] = None + PlacementGroups: Optional[List[PlacementGroupConfigTypeDef]] = None + OSReleaseLabel: Optional[str] = None + EbsRootVolumeIops: Optional[int] = None + EbsRootVolumeThroughput: Optional[int] = None + +class GetManagedScalingPolicyOutputTypeDef(BaseModel): + ManagedScalingPolicy: ManagedScalingPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutManagedScalingPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + ManagedScalingPolicy: ManagedScalingPolicyTypeDef + +class GetClusterSessionCredentialsOutputTypeDef(BaseModel): + Credentials: CredentialsTypeDef + ExpiresAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EbsConfigurationTypeDef(BaseModel): + EbsBlockDeviceConfigs: Optional[Sequence[EbsBlockDeviceConfigTypeDef]] = None + EbsOptimized: Optional[bool] = None + +class InstanceTypeSpecificationTypeDef(BaseModel): + InstanceType: Optional[str] = None + WeightedCapacity: Optional[int] = None + BidPrice: Optional[str] = None + BidPriceAsPercentageOfOnDemandPrice: Optional[float] = None + Configurations: Optional[List["ConfigurationOutputTypeDef"]] = None + EbsBlockDevices: Optional[List[EbsBlockDeviceTypeDef]] = None + EbsOptimized: Optional[bool] = None + CustomAmiId: Optional[str] = None + Priority: Optional[float] = None + +class StepConfigOutputTypeDef(BaseModel): + Name: str + HadoopJarStep: HadoopJarStepConfigOutputTypeDef + ActionOnFailure: Optional[ActionOnFailureType] = None + +class StepConfigTypeDef(BaseModel): + Name: str + HadoopJarStep: HadoopJarStepConfigTypeDef + ActionOnFailure: Optional[ActionOnFailureType] = None + +class InstanceFleetModifyConfigTypeDef(BaseModel): + InstanceFleetId: str + TargetOnDemandCapacity: Optional[int] = None + TargetSpotCapacity: Optional[int] = None + ResizeSpecifications: Optional[InstanceFleetResizingSpecificationsTypeDef] = None + +class InstanceGroupModifyConfigTypeDef(BaseModel): + InstanceGroupId: str + InstanceCount: Optional[int] = None + EC2InstanceIdsToTerminate: Optional[Sequence[str]] = None + ShrinkPolicy: Optional[ShrinkPolicyTypeDef] = None + ReconfigurationType: Optional[ReconfigurationTypeType] = None + Configurations: Optional[Sequence["ConfigurationTypeDef"]] = None + +class InstanceTypeDef(BaseModel): + Id: Optional[str] = None + Ec2InstanceId: Optional[str] = None + PublicDnsName: Optional[str] = None + PublicIpAddress: Optional[str] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + Status: Optional[InstanceStatusTypeDef] = None + InstanceGroupId: Optional[str] = None + InstanceFleetId: Optional[str] = None + Market: Optional[MarketTypeType] = None + InstanceType: Optional[str] = None + EbsVolumes: Optional[List[EbsVolumeTypeDef]] = None + +class ListNotebookExecutionsOutputTypeDef(BaseModel): + NotebookExecutions: List[NotebookExecutionSummaryTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNotebookExecutionOutputTypeDef(BaseModel): + NotebookExecution: NotebookExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceFleetProvisioningSpecificationsTypeDef(BaseModel): + SpotSpecification: Optional[SpotProvisioningSpecificationTypeDef] = None + OnDemandSpecification: Optional[OnDemandProvisioningSpecificationTypeDef] = None + +class StepSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Config: Optional[HadoopStepConfigTypeDef] = None + ActionOnFailure: Optional[ActionOnFailureType] = None + Status: Optional[StepStatusTypeDef] = None + +class StepTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Config: Optional[HadoopStepConfigTypeDef] = None + ActionOnFailure: Optional[ActionOnFailureType] = None + Status: Optional[StepStatusTypeDef] = None + ExecutionRoleArn: Optional[str] = None + +class ScalingRuleOutputTypeDef(BaseModel): + Name: str + Action: ScalingActionTypeDef + Trigger: ScalingTriggerOutputTypeDef + Description: Optional[str] = None + +class ScalingRuleTypeDef(BaseModel): + Name: str + Action: ScalingActionTypeDef + Trigger: ScalingTriggerTypeDef + Description: Optional[str] = None + +class ListClustersOutputTypeDef(BaseModel): + Clusters: List[ClusterSummaryTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClusterOutputTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceTypeConfigTypeDef(BaseModel): + InstanceType: str + WeightedCapacity: Optional[int] = None + BidPrice: Optional[str] = None + BidPriceAsPercentageOfOnDemandPrice: Optional[float] = None + EbsConfiguration: Optional[EbsConfigurationTypeDef] = None + Configurations: Optional[Sequence["ConfigurationTypeDef"]] = None + CustomAmiId: Optional[str] = None + Priority: Optional[float] = None + +class StepDetailTypeDef(BaseModel): + StepConfig: StepConfigOutputTypeDef + ExecutionStatusDetail: StepExecutionStatusDetailTypeDef + +class ModifyInstanceFleetInputRequestTypeDef(BaseModel): + ClusterId: str + InstanceFleet: InstanceFleetModifyConfigTypeDef + +class ModifyInstanceGroupsInputRequestTypeDef(BaseModel): + ClusterId: Optional[str] = None + InstanceGroups: Optional[Sequence[InstanceGroupModifyConfigTypeDef]] = None + +class ListInstancesOutputTypeDef(BaseModel): + Instances: List[InstanceTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceFleetTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[InstanceFleetStatusTypeDef] = None + InstanceFleetType: Optional[InstanceFleetTypeType] = None + TargetOnDemandCapacity: Optional[int] = None + TargetSpotCapacity: Optional[int] = None + ProvisionedOnDemandCapacity: Optional[int] = None + ProvisionedSpotCapacity: Optional[int] = None + InstanceTypeSpecifications: Optional[List[InstanceTypeSpecificationTypeDef]] = None + LaunchSpecifications: Optional[InstanceFleetProvisioningSpecificationsTypeDef] = None + ResizeSpecifications: Optional[InstanceFleetResizingSpecificationsTypeDef] = None + +class ListStepsOutputTypeDef(BaseModel): + Steps: List[StepSummaryTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStepOutputTypeDef(BaseModel): + Step: StepTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AutoScalingPolicyDescriptionTypeDef(BaseModel): + Status: Optional[AutoScalingPolicyStatusTypeDef] = None + Constraints: Optional[ScalingConstraintsTypeDef] = None + Rules: Optional[List[ScalingRuleOutputTypeDef]] = None + +class AutoScalingPolicyTypeDef(BaseModel): + Constraints: ScalingConstraintsTypeDef + Rules: Sequence[ScalingRuleTypeDef] + +class InstanceFleetConfigTypeDef(BaseModel): + InstanceFleetType: InstanceFleetTypeType + Name: Optional[str] = None + TargetOnDemandCapacity: Optional[int] = None + TargetSpotCapacity: Optional[int] = None + InstanceTypeConfigs: Optional[Sequence[InstanceTypeConfigTypeDef]] = None + LaunchSpecifications: Optional[InstanceFleetProvisioningSpecificationsTypeDef] = None + ResizeSpecifications: Optional[InstanceFleetResizingSpecificationsTypeDef] = None + +class JobFlowDetailTypeDef(BaseModel): + JobFlowId: str + Name: str + ExecutionStatusDetail: JobFlowExecutionStatusDetailTypeDef + Instances: JobFlowInstancesDetailTypeDef + LogUri: Optional[str] = None + LogEncryptionKmsKeyId: Optional[str] = None + AmiVersion: Optional[str] = None + Steps: Optional[List[StepDetailTypeDef]] = None + BootstrapActions: Optional[List[BootstrapActionDetailTypeDef]] = None + SupportedProducts: Optional[List[str]] = None + VisibleToAllUsers: Optional[bool] = None + JobFlowRole: Optional[str] = None + ServiceRole: Optional[str] = None + AutoScalingRole: Optional[str] = None + ScaleDownBehavior: Optional[ScaleDownBehaviorType] = None + +class AddJobFlowStepsInputRequestTypeDef(BaseModel): + JobFlowId: str + Steps: Sequence[StepConfigUnionTypeDef] + ExecutionRoleArn: Optional[str] = None + +class ListInstanceFleetsOutputTypeDef(BaseModel): + InstanceFleets: List[InstanceFleetTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceGroupTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Market: Optional[MarketTypeType] = None + InstanceGroupType: Optional[InstanceGroupTypeType] = None + BidPrice: Optional[str] = None + InstanceType: Optional[str] = None + RequestedInstanceCount: Optional[int] = None + RunningInstanceCount: Optional[int] = None + Status: Optional[InstanceGroupStatusTypeDef] = None + Configurations: Optional[List["ConfigurationOutputTypeDef"]] = None + ConfigurationsVersion: Optional[int] = None + LastSuccessfullyAppliedConfigurations: Optional[List["ConfigurationOutputTypeDef"]] = None + LastSuccessfullyAppliedConfigurationsVersion: Optional[int] = None + EbsBlockDevices: Optional[List[EbsBlockDeviceTypeDef]] = None + EbsOptimized: Optional[bool] = None + ShrinkPolicy: Optional[ShrinkPolicyOutputTypeDef] = None + AutoScalingPolicy: Optional[AutoScalingPolicyDescriptionTypeDef] = None + CustomAmiId: Optional[str] = None + +class PutAutoScalingPolicyOutputTypeDef(BaseModel): + ClusterId: str + InstanceGroupId: str + AutoScalingPolicy: AutoScalingPolicyDescriptionTypeDef + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceGroupConfigTypeDef(BaseModel): + InstanceRole: InstanceRoleTypeType + InstanceType: str + InstanceCount: int + Name: Optional[str] = None + Market: Optional[MarketTypeType] = None + BidPrice: Optional[str] = None + Configurations: Optional[Sequence["ConfigurationTypeDef"]] = None + EbsConfiguration: Optional[EbsConfigurationTypeDef] = None + AutoScalingPolicy: Optional[AutoScalingPolicyTypeDef] = None + CustomAmiId: Optional[str] = None + +class PutAutoScalingPolicyInputRequestTypeDef(BaseModel): + ClusterId: str + InstanceGroupId: str + AutoScalingPolicy: AutoScalingPolicyTypeDef + +class AddInstanceFleetInputRequestTypeDef(BaseModel): + ClusterId: str + InstanceFleet: InstanceFleetConfigTypeDef + +class DescribeJobFlowsOutputTypeDef(BaseModel): + JobFlows: List[JobFlowDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceGroupsOutputTypeDef(BaseModel): + InstanceGroups: List[InstanceGroupTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddInstanceGroupsInputRequestTypeDef(BaseModel): + InstanceGroups: Sequence[InstanceGroupConfigTypeDef] + JobFlowId: str + +class JobFlowInstancesConfigTypeDef(BaseModel): + MasterInstanceType: Optional[str] = None + SlaveInstanceType: Optional[str] = None + InstanceCount: Optional[int] = None + InstanceGroups: Optional[Sequence[InstanceGroupConfigTypeDef]] = None + InstanceFleets: Optional[Sequence[InstanceFleetConfigTypeDef]] = None + Ec2KeyName: Optional[str] = None + Placement: Optional[PlacementTypeTypeDef] = None + KeepJobFlowAliveWhenNoSteps: Optional[bool] = None + TerminationProtected: Optional[bool] = None + UnhealthyNodeReplacement: Optional[bool] = None + HadoopVersion: Optional[str] = None + Ec2SubnetId: Optional[str] = None + Ec2SubnetIds: Optional[Sequence[str]] = None + EmrManagedMasterSecurityGroup: Optional[str] = None + EmrManagedSlaveSecurityGroup: Optional[str] = None + ServiceAccessSecurityGroup: Optional[str] = None + AdditionalMasterSecurityGroups: Optional[Sequence[str]] = None + AdditionalSlaveSecurityGroups: Optional[Sequence[str]] = None + +class RunJobFlowInputRequestTypeDef(BaseModel): + Name: str + Instances: JobFlowInstancesConfigTypeDef + LogUri: Optional[str] = None + LogEncryptionKmsKeyId: Optional[str] = None + AdditionalInfo: Optional[str] = None + AmiVersion: Optional[str] = None + ReleaseLabel: Optional[str] = None + Steps: Optional[Sequence[StepConfigUnionTypeDef]] = None + BootstrapActions: Optional[Sequence[BootstrapActionConfigUnionTypeDef]] = None + SupportedProducts: Optional[Sequence[str]] = None + NewSupportedProducts: Optional[Sequence[SupportedProductConfigTypeDef]] = None + Applications: Optional[Sequence[ApplicationUnionTypeDef]] = None + Configurations: Optional[Sequence[ConfigurationUnionTypeDef]] = None + VisibleToAllUsers: Optional[bool] = None + JobFlowRole: Optional[str] = None + ServiceRole: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SecurityConfiguration: Optional[str] = None + AutoScalingRole: Optional[str] = None + ScaleDownBehavior: Optional[ScaleDownBehaviorType] = None + CustomAmiId: Optional[str] = None + EbsRootVolumeSize: Optional[int] = None + RepoUpgradeOnBoot: Optional[RepoUpgradeOnBootType] = None + KerberosAttributes: Optional[KerberosAttributesTypeDef] = None + StepConcurrencyLevel: Optional[int] = None + ManagedScalingPolicy: Optional[ManagedScalingPolicyTypeDef] = None + PlacementGroupConfigs: Optional[Sequence[PlacementGroupConfigTypeDef]] = None + AutoTerminationPolicy: Optional[AutoTerminationPolicyTypeDef] = None + OSReleaseLabel: Optional[str] = None + EbsRootVolumeIops: Optional[int] = None + EbsRootVolumeThroughput: Optional[int] = None + diff --git a/aws_resource_validator/pydantic_models/emr_constants.py b/aws_resource_validator/pydantic_models/emr_constants.py new file mode 100644 index 00000000..8d501d0c --- /dev/null +++ b/aws_resource_validator/pydantic_models/emr_constants.py @@ -0,0 +1,573 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionOnFailureType = Literal["CANCEL_AND_WAIT", "CONTINUE", "TERMINATE_CLUSTER", "TERMINATE_JOB_FLOW"] +AdjustmentTypeType = Literal["CHANGE_IN_CAPACITY", "EXACT_CAPACITY", "PERCENT_CHANGE_IN_CAPACITY"] +AuthModeType = Literal["IAM", "SSO"] +AutoScalingPolicyStateChangeReasonCodeType = Literal["CLEANUP_FAILURE", "PROVISION_FAILURE", "USER_REQUEST"] +AutoScalingPolicyStateType = Literal["ATTACHED", "ATTACHING", "DETACHED", "DETACHING", "FAILED", "PENDING"] +CancelStepsRequestStatusType = Literal["FAILED", "SUBMITTED"] +ClusterRunningWaiterName = Literal["cluster_running"] +ClusterStateChangeReasonCodeType = Literal["ALL_STEPS_COMPLETED", + "BOOTSTRAP_FAILURE", + "INSTANCE_FAILURE", + "INSTANCE_FLEET_TIMEOUT", + "INTERNAL_ERROR", + "STEP_FAILURE", + "USER_REQUEST", + "VALIDATION_ERROR",] +ClusterStateType = Literal["BOOTSTRAPPING", + "RUNNING", + "STARTING", + "TERMINATED", + "TERMINATED_WITH_ERRORS", + "TERMINATING", + "WAITING",] +ClusterTerminatedWaiterName = Literal["cluster_terminated"] +ComparisonOperatorType = Literal["GREATER_THAN", "GREATER_THAN_OR_EQUAL", "LESS_THAN", "LESS_THAN_OR_EQUAL"] +ComputeLimitsUnitTypeType = Literal["InstanceFleetUnits", "Instances", "VCPU"] +ExecutionEngineTypeType = Literal["EMR"] +IdcUserAssignmentType = Literal["OPTIONAL", "REQUIRED"] +IdentityTypeType = Literal["GROUP", "USER"] +InstanceCollectionTypeType = Literal["INSTANCE_FLEET", "INSTANCE_GROUP"] +InstanceFleetStateChangeReasonCodeType = Literal["CLUSTER_TERMINATED", "INSTANCE_FAILURE", "INTERNAL_ERROR", "VALIDATION_ERROR"] +InstanceFleetStateType = Literal["BOOTSTRAPPING", "PROVISIONING", "RESIZING", "RUNNING", "SUSPENDED", "TERMINATED", "TERMINATING"] +InstanceFleetTypeType = Literal["CORE", "MASTER", "TASK"] +InstanceGroupStateChangeReasonCodeType = Literal["CLUSTER_TERMINATED", "INSTANCE_FAILURE", "INTERNAL_ERROR", "VALIDATION_ERROR"] +InstanceGroupStateType = Literal["ARRESTED", + "BOOTSTRAPPING", + "ENDED", + "PROVISIONING", + "RECONFIGURING", + "RESIZING", + "RUNNING", + "SHUTTING_DOWN", + "SUSPENDED", + "TERMINATED", + "TERMINATING",] +InstanceGroupTypeType = Literal["CORE", "MASTER", "TASK"] +InstanceRoleTypeType = Literal["CORE", "MASTER", "TASK"] +InstanceStateChangeReasonCodeType = Literal["BOOTSTRAP_FAILURE", + "CLUSTER_TERMINATED", + "INSTANCE_FAILURE", + "INTERNAL_ERROR", + "VALIDATION_ERROR",] +InstanceStateType = Literal["AWAITING_FULFILLMENT", "BOOTSTRAPPING", "PROVISIONING", "RUNNING", "TERMINATED"] +JobFlowExecutionStateType = Literal["BOOTSTRAPPING", + "COMPLETED", + "FAILED", + "RUNNING", + "SHUTTING_DOWN", + "STARTING", + "TERMINATED", + "WAITING",] +ListBootstrapActionsPaginatorName = Literal["list_bootstrap_actions"] +ListClustersPaginatorName = Literal["list_clusters"] +ListInstanceFleetsPaginatorName = Literal["list_instance_fleets"] +ListInstanceGroupsPaginatorName = Literal["list_instance_groups"] +ListInstancesPaginatorName = Literal["list_instances"] +ListNotebookExecutionsPaginatorName = Literal["list_notebook_executions"] +ListSecurityConfigurationsPaginatorName = Literal["list_security_configurations"] +ListStepsPaginatorName = Literal["list_steps"] +ListStudioSessionMappingsPaginatorName = Literal["list_studio_session_mappings"] +ListStudiosPaginatorName = Literal["list_studios"] +MarketTypeType = Literal["ON_DEMAND", "SPOT"] +NotebookExecutionStatusType = Literal["FAILED", + "FAILING", + "FINISHED", + "FINISHING", + "RUNNING", + "STARTING", + "START_PENDING", + "STOPPED", + "STOPPING", + "STOP_PENDING",] +OnDemandCapacityReservationPreferenceType = Literal["none", "open"] +OnDemandCapacityReservationUsageStrategyType = Literal["use-capacity-reservations-first"] +OnDemandProvisioningAllocationStrategyType = Literal["lowest-price", "prioritized"] +OutputNotebookFormatType = Literal["HTML"] +PlacementGroupStrategyType = Literal["CLUSTER", "NONE", "PARTITION", "SPREAD"] +ReconfigurationTypeType = Literal["MERGE", "OVERWRITE"] +RepoUpgradeOnBootType = Literal["NONE", "SECURITY"] +ScaleDownBehaviorType = Literal["TERMINATE_AT_INSTANCE_HOUR", "TERMINATE_AT_TASK_COMPLETION"] +SpotProvisioningAllocationStrategyType = Literal["capacity-optimized", + "capacity-optimized-prioritized", + "diversified", + "lowest-price", + "price-capacity-optimized",] +SpotProvisioningTimeoutActionType = Literal["SWITCH_TO_ON_DEMAND", "TERMINATE_CLUSTER"] +StatisticType = Literal["AVERAGE", "MAXIMUM", "MINIMUM", "SAMPLE_COUNT", "SUM"] +StepCancellationOptionType = Literal["SEND_INTERRUPT", "TERMINATE_PROCESS"] +StepCompleteWaiterName = Literal["step_complete"] +StepExecutionStateType = Literal["CANCELLED", "COMPLETED", "CONTINUE", "FAILED", "INTERRUPTED", "PENDING", "RUNNING"] +StepStateChangeReasonCodeType = Literal["NONE"] +StepStateType = Literal["CANCELLED", "CANCEL_PENDING", "COMPLETED", "FAILED", "INTERRUPTED", "PENDING", "RUNNING"] +UnitType = Literal["BITS", + "BITS_PER_SECOND", + "BYTES", + "BYTES_PER_SECOND", + "COUNT", + "COUNT_PER_SECOND", + "GIGA_BITS", + "GIGA_BITS_PER_SECOND", + "GIGA_BYTES", + "GIGA_BYTES_PER_SECOND", + "KILO_BITS", + "KILO_BITS_PER_SECOND", + "KILO_BYTES", + "KILO_BYTES_PER_SECOND", + "MEGA_BITS", + "MEGA_BITS_PER_SECOND", + "MEGA_BYTES", + "MEGA_BYTES_PER_SECOND", + "MICRO_SECONDS", + "MILLI_SECONDS", + "NONE", + "PERCENT", + "SECONDS", + "TERA_BITS", + "TERA_BITS_PER_SECOND", + "TERA_BYTES", + "TERA_BYTES_PER_SECOND",] +EMRServiceName = Literal["emr"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_bootstrap_actions", + "list_clusters", + "list_instance_fleets", + "list_instance_groups", + "list_instances", + "list_notebook_executions", + "list_security_configurations", + "list_steps", + "list_studio_session_mappings", + "list_studios",] +WaiterName = Literal["cluster_running", "cluster_terminated", "step_complete"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ConfigurationUnionTypeDef = Union["'ConfigurationTypeDef'", "'ConfigurationExtraOutputTypeDef'"] +TimestampTypeDef = Union[datetime, str] +ApplicationUnionTypeDef = Union['ApplicationTypeDef', 'ApplicationOutputTypeDef'] +BlockPublicAccessConfigurationUnionTypeDef = Union[ 'BlockPublicAccessConfigurationTypeDef', 'BlockPublicAccessConfigurationOutputTypeDef' ] +BootstrapActionConfigUnionTypeDef = Union[ 'BootstrapActionConfigTypeDef', 'BootstrapActionConfigOutputTypeDef' ] +StepConfigUnionTypeDef = Union['StepConfigTypeDef', 'StepConfigOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/emr_containers_classes.py b/aws_resource_validator/pydantic_models/emr_containers_classes.py new file mode 100644 index 00000000..b6b85c87 --- /dev/null +++ b/aws_resource_validator/pydantic_models/emr_containers_classes.py @@ -0,0 +1,585 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.emr_containers_constants import * + +class CancelJobRunRequestRequestTypeDef(BaseModel): + id: str + virtualClusterId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CertificateTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateData: Optional[str] = None + +class CloudWatchMonitoringConfigurationTypeDef(BaseModel): + logGroupName: str + logStreamNamePrefix: Optional[str] = None + +class ConfigurationPaginatorTypeDef(BaseModel): + classification: str + properties: Optional[Dict[str, str]] = None + configurations: Optional[List[Dict[str, Any]]] = None + +class ConfigurationTypeDef(BaseModel): + classification: str + properties: Optional[Mapping[str, str]] = None + configurations: Optional[Sequence[Dict[str, Any]]] = None + +class EksInfoTypeDef(BaseModel): + namespace: Optional[str] = None + +class ContainerLogRotationConfigurationTypeDef(BaseModel): + rotationSize: str + maxFilesToKeep: int + +class CredentialsTypeDef(BaseModel): + token: Optional[str] = None + +class DeleteJobTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DeleteManagedEndpointRequestRequestTypeDef(BaseModel): + id: str + virtualClusterId: str + +class DeleteVirtualClusterRequestRequestTypeDef(BaseModel): + id: str + +class DescribeJobRunRequestRequestTypeDef(BaseModel): + id: str + virtualClusterId: str + +class DescribeJobTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DescribeManagedEndpointRequestRequestTypeDef(BaseModel): + id: str + virtualClusterId: str + +class DescribeSecurityConfigurationRequestRequestTypeDef(BaseModel): + id: str + +class DescribeVirtualClusterRequestRequestTypeDef(BaseModel): + id: str + +class GetManagedEndpointSessionCredentialsRequestRequestTypeDef(BaseModel): + endpointIdentifier: str + virtualClusterIdentifier: str + executionRoleArn: str + credentialType: str + durationInSeconds: Optional[int] = None + logContext: Optional[str] = None + clientToken: Optional[str] = None + +class TLSCertificateConfigurationTypeDef(BaseModel): + certificateProviderType: Optional[Literal["PEM"]] = None + publicCertificateSecretArn: Optional[str] = None + privateCertificateSecretArn: Optional[str] = None + +class SparkSqlJobDriverTypeDef(BaseModel): + entryPoint: Optional[str] = None + sparkSqlParameters: Optional[str] = None + +class SparkSubmitJobDriverPaginatorTypeDef(BaseModel): + entryPoint: str + entryPointArguments: Optional[List[str]] = None + sparkSubmitParameters: Optional[str] = None + +class SparkSubmitJobDriverTypeDef(BaseModel): + entryPoint: str + entryPointArguments: Optional[Sequence[str]] = None + sparkSubmitParameters: Optional[str] = None + +class RetryPolicyConfigurationTypeDef(BaseModel): + maxAttempts: int + +class RetryPolicyExecutionTypeDef(BaseModel): + currentAttemptCount: int + +class TemplateParameterConfigurationTypeDef(BaseModel): + type: Optional[TemplateParameterDataTypeType] = None + defaultValue: Optional[str] = None + +class SecureNamespaceInfoTypeDef(BaseModel): + clusterId: Optional[str] = None + namespace: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class S3MonitoringConfigurationTypeDef(BaseModel): + logUri: str + +class ParametricCloudWatchMonitoringConfigurationTypeDef(BaseModel): + logGroupName: Optional[str] = None + logStreamNamePrefix: Optional[str] = None + +class ParametricS3MonitoringConfigurationTypeDef(BaseModel): + logUri: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CancelJobRunResponseTypeDef(BaseModel): + id: str + virtualClusterId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobTemplateResponseTypeDef(BaseModel): + id: str + name: str + arn: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateManagedEndpointResponseTypeDef(BaseModel): + id: str + name: str + arn: str + virtualClusterId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityConfigurationResponseTypeDef(BaseModel): + id: str + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVirtualClusterResponseTypeDef(BaseModel): + id: str + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteJobTemplateResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteManagedEndpointResponseTypeDef(BaseModel): + id: str + virtualClusterId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVirtualClusterResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartJobRunResponseTypeDef(BaseModel): + id: str + name: str + arn: str + virtualClusterId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ContainerInfoTypeDef(BaseModel): + eksInfo: Optional[EksInfoTypeDef] = None + +class GetManagedEndpointSessionCredentialsResponseTypeDef(BaseModel): + id: str + credentials: CredentialsTypeDef + expiresAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class InTransitEncryptionConfigurationTypeDef(BaseModel): + tlsCertificateConfiguration: Optional[TLSCertificateConfigurationTypeDef] = None + +class JobDriverPaginatorTypeDef(BaseModel): + sparkSubmitJobDriver: Optional[SparkSubmitJobDriverPaginatorTypeDef] = None + sparkSqlJobDriver: Optional[SparkSqlJobDriverTypeDef] = None + +class JobDriverTypeDef(BaseModel): + sparkSubmitJobDriver: Optional[SparkSubmitJobDriverTypeDef] = None + sparkSqlJobDriver: Optional[SparkSqlJobDriverTypeDef] = None + +class LakeFormationConfigurationTypeDef(BaseModel): + authorizedSessionTagValue: Optional[str] = None + secureNamespaceInfo: Optional[SecureNamespaceInfoTypeDef] = None + queryEngineRoleArn: Optional[str] = None + +class ListJobRunsRequestListJobRunsPaginateTypeDef(BaseModel): + virtualClusterId: str + createdBefore: Optional[TimestampTypeDef] = None + createdAfter: Optional[TimestampTypeDef] = None + name: Optional[str] = None + states: Optional[Sequence[JobRunStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobRunsRequestRequestTypeDef(BaseModel): + virtualClusterId: str + createdBefore: Optional[TimestampTypeDef] = None + createdAfter: Optional[TimestampTypeDef] = None + name: Optional[str] = None + states: Optional[Sequence[JobRunStateType]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobTemplatesRequestListJobTemplatesPaginateTypeDef(BaseModel): + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobTemplatesRequestRequestTypeDef(BaseModel): + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListManagedEndpointsRequestListManagedEndpointsPaginateTypeDef(BaseModel): + virtualClusterId: str + createdBefore: Optional[TimestampTypeDef] = None + createdAfter: Optional[TimestampTypeDef] = None + types: Optional[Sequence[str]] = None + states: Optional[Sequence[EndpointStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedEndpointsRequestRequestTypeDef(BaseModel): + virtualClusterId: str + createdBefore: Optional[TimestampTypeDef] = None + createdAfter: Optional[TimestampTypeDef] = None + types: Optional[Sequence[str]] = None + states: Optional[Sequence[EndpointStateType]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSecurityConfigurationsRequestListSecurityConfigurationsPaginateTypeDef(BaseModel): + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityConfigurationsRequestRequestTypeDef(BaseModel): + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListVirtualClustersRequestListVirtualClustersPaginateTypeDef(BaseModel): + containerProviderId: Optional[str] = None + containerProviderType: Optional[Literal["EKS"]] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + states: Optional[Sequence[VirtualClusterStateType]] = None + eksAccessEntryIntegrated: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualClustersRequestRequestTypeDef(BaseModel): + containerProviderId: Optional[str] = None + containerProviderType: Optional[Literal["EKS"]] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + states: Optional[Sequence[VirtualClusterStateType]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + eksAccessEntryIntegrated: Optional[bool] = None + +class MonitoringConfigurationTypeDef(BaseModel): + persistentAppUI: Optional[PersistentAppUIType] = None + cloudWatchMonitoringConfiguration: Optional[CloudWatchMonitoringConfigurationTypeDef] = None + s3MonitoringConfiguration: Optional[S3MonitoringConfigurationTypeDef] = None + containerLogRotationConfiguration: Optional[ContainerLogRotationConfigurationTypeDef] = None + +class ParametricMonitoringConfigurationTypeDef(BaseModel): + persistentAppUI: Optional[str] = None + cloudWatchMonitoringConfiguration: Optional[ ParametricCloudWatchMonitoringConfigurationTypeDef ] = None + s3MonitoringConfiguration: Optional[ParametricS3MonitoringConfigurationTypeDef] = None + +class ContainerProviderTypeDef(BaseModel): + type: Literal["EKS"] + id: str + info: Optional[ContainerInfoTypeDef] = None + +class EncryptionConfigurationTypeDef(BaseModel): + inTransitEncryptionConfiguration: Optional[InTransitEncryptionConfigurationTypeDef] = None + +class ConfigurationOverridesPaginatorTypeDef(BaseModel): + applicationConfiguration: Optional[List["ConfigurationPaginatorTypeDef"]] = None + monitoringConfiguration: Optional[MonitoringConfigurationTypeDef] = None + +class ConfigurationOverridesTypeDef(BaseModel): + applicationConfiguration: Optional[Sequence["ConfigurationTypeDef"]] = None + monitoringConfiguration: Optional[MonitoringConfigurationTypeDef] = None + +class ParametricConfigurationOverridesPaginatorTypeDef(BaseModel): + applicationConfiguration: Optional[List["ConfigurationPaginatorTypeDef"]] = None + monitoringConfiguration: Optional[ParametricMonitoringConfigurationTypeDef] = None + +class ParametricConfigurationOverridesTypeDef(BaseModel): + applicationConfiguration: Optional[Sequence["ConfigurationTypeDef"]] = None + monitoringConfiguration: Optional[ParametricMonitoringConfigurationTypeDef] = None + +class CreateVirtualClusterRequestRequestTypeDef(BaseModel): + name: str + containerProvider: ContainerProviderTypeDef + clientToken: str + tags: Optional[Mapping[str, str]] = None + securityConfigurationId: Optional[str] = None + +class VirtualClusterTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + arn: Optional[str] = None + state: Optional[VirtualClusterStateType] = None + containerProvider: Optional[ContainerProviderTypeDef] = None + createdAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + securityConfigurationId: Optional[str] = None + +class AuthorizationConfigurationTypeDef(BaseModel): + lakeFormationConfiguration: Optional[LakeFormationConfigurationTypeDef] = None + encryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class EndpointPaginatorTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + arn: Optional[str] = None + virtualClusterId: Optional[str] = None + type: Optional[str] = None + state: Optional[EndpointStateType] = None + releaseLabel: Optional[str] = None + executionRoleArn: Optional[str] = None + certificateArn: Optional[str] = None + certificateAuthority: Optional[CertificateTypeDef] = None + configurationOverrides: Optional[ConfigurationOverridesPaginatorTypeDef] = None + serverUrl: Optional[str] = None + createdAt: Optional[datetime] = None + securityGroup: Optional[str] = None + subnetIds: Optional[List[str]] = None + stateDetails: Optional[str] = None + failureReason: Optional[FailureReasonType] = None + tags: Optional[Dict[str, str]] = None + +class JobRunPaginatorTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + virtualClusterId: Optional[str] = None + arn: Optional[str] = None + state: Optional[JobRunStateType] = None + clientToken: Optional[str] = None + executionRoleArn: Optional[str] = None + releaseLabel: Optional[str] = None + configurationOverrides: Optional[ConfigurationOverridesPaginatorTypeDef] = None + jobDriver: Optional[JobDriverPaginatorTypeDef] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + finishedAt: Optional[datetime] = None + stateDetails: Optional[str] = None + failureReason: Optional[FailureReasonType] = None + tags: Optional[Dict[str, str]] = None + retryPolicyConfiguration: Optional[RetryPolicyConfigurationTypeDef] = None + retryPolicyExecution: Optional[RetryPolicyExecutionTypeDef] = None + +class CreateManagedEndpointRequestRequestTypeDef(BaseModel): + name: str + virtualClusterId: str + type: str + releaseLabel: str + executionRoleArn: str + clientToken: str + certificateArn: Optional[str] = None + configurationOverrides: Optional[ConfigurationOverridesTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class EndpointTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + arn: Optional[str] = None + virtualClusterId: Optional[str] = None + type: Optional[str] = None + state: Optional[EndpointStateType] = None + releaseLabel: Optional[str] = None + executionRoleArn: Optional[str] = None + certificateArn: Optional[str] = None + certificateAuthority: Optional[CertificateTypeDef] = None + configurationOverrides: Optional[ConfigurationOverridesTypeDef] = None + serverUrl: Optional[str] = None + createdAt: Optional[datetime] = None + securityGroup: Optional[str] = None + subnetIds: Optional[List[str]] = None + stateDetails: Optional[str] = None + failureReason: Optional[FailureReasonType] = None + tags: Optional[Dict[str, str]] = None + +class JobRunTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + virtualClusterId: Optional[str] = None + arn: Optional[str] = None + state: Optional[JobRunStateType] = None + clientToken: Optional[str] = None + executionRoleArn: Optional[str] = None + releaseLabel: Optional[str] = None + configurationOverrides: Optional[ConfigurationOverridesTypeDef] = None + jobDriver: Optional[JobDriverTypeDef] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + finishedAt: Optional[datetime] = None + stateDetails: Optional[str] = None + failureReason: Optional[FailureReasonType] = None + tags: Optional[Dict[str, str]] = None + retryPolicyConfiguration: Optional[RetryPolicyConfigurationTypeDef] = None + retryPolicyExecution: Optional[RetryPolicyExecutionTypeDef] = None + +class StartJobRunRequestRequestTypeDef(BaseModel): + virtualClusterId: str + clientToken: str + name: Optional[str] = None + executionRoleArn: Optional[str] = None + releaseLabel: Optional[str] = None + jobDriver: Optional[JobDriverTypeDef] = None + configurationOverrides: Optional[ConfigurationOverridesTypeDef] = None + tags: Optional[Mapping[str, str]] = None + jobTemplateId: Optional[str] = None + jobTemplateParameters: Optional[Mapping[str, str]] = None + retryPolicyConfiguration: Optional[RetryPolicyConfigurationTypeDef] = None + +class JobTemplateDataPaginatorTypeDef(BaseModel): + executionRoleArn: str + releaseLabel: str + jobDriver: JobDriverPaginatorTypeDef + configurationOverrides: Optional[ParametricConfigurationOverridesPaginatorTypeDef] = None + parameterConfiguration: Optional[Dict[str, TemplateParameterConfigurationTypeDef]] = None + jobTags: Optional[Dict[str, str]] = None + +class JobTemplateDataTypeDef(BaseModel): + executionRoleArn: str + releaseLabel: str + jobDriver: JobDriverTypeDef + configurationOverrides: Optional[ParametricConfigurationOverridesTypeDef] = None + parameterConfiguration: Optional[Mapping[str, TemplateParameterConfigurationTypeDef]] = None + jobTags: Optional[Mapping[str, str]] = None + +class DescribeVirtualClusterResponseTypeDef(BaseModel): + virtualCluster: VirtualClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualClustersResponseTypeDef(BaseModel): + virtualClusters: List[VirtualClusterTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SecurityConfigurationDataTypeDef(BaseModel): + authorizationConfiguration: Optional[AuthorizationConfigurationTypeDef] = None + +class ListManagedEndpointsResponsePaginatorTypeDef(BaseModel): + endpoints: List[EndpointPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobRunsResponsePaginatorTypeDef(BaseModel): + jobRuns: List[JobRunPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeManagedEndpointResponseTypeDef(BaseModel): + endpoint: EndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListManagedEndpointsResponseTypeDef(BaseModel): + endpoints: List[EndpointTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobRunResponseTypeDef(BaseModel): + jobRun: JobRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobRunsResponseTypeDef(BaseModel): + jobRuns: List[JobRunTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobTemplatePaginatorTypeDef(BaseModel): + jobTemplateData: JobTemplateDataPaginatorTypeDef + name: Optional[str] = None + id: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + kmsKeyArn: Optional[str] = None + decryptionError: Optional[str] = None + +class CreateJobTemplateRequestRequestTypeDef(BaseModel): + name: str + clientToken: str + jobTemplateData: JobTemplateDataTypeDef + tags: Optional[Mapping[str, str]] = None + kmsKeyArn: Optional[str] = None + +class JobTemplateTypeDef(BaseModel): + jobTemplateData: JobTemplateDataTypeDef + name: Optional[str] = None + id: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + kmsKeyArn: Optional[str] = None + decryptionError: Optional[str] = None + +class CreateSecurityConfigurationRequestRequestTypeDef(BaseModel): + clientToken: str + name: str + securityConfigurationData: SecurityConfigurationDataTypeDef + tags: Optional[Mapping[str, str]] = None + +class SecurityConfigurationTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + securityConfigurationData: Optional[SecurityConfigurationDataTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class ListJobTemplatesResponsePaginatorTypeDef(BaseModel): + templates: List[JobTemplatePaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobTemplateResponseTypeDef(BaseModel): + jobTemplate: JobTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobTemplatesResponseTypeDef(BaseModel): + templates: List[JobTemplateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSecurityConfigurationResponseTypeDef(BaseModel): + securityConfiguration: SecurityConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityConfigurationsResponseTypeDef(BaseModel): + securityConfigurations: List[SecurityConfigurationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/emr_containers_constants.py b/aws_resource_validator/pydantic_models/emr_containers_constants.py new file mode 100644 index 00000000..f59ec203 --- /dev/null +++ b/aws_resource_validator/pydantic_models/emr_containers_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CertificateProviderTypeType = Literal["PEM"] +ContainerProviderTypeType = Literal["EKS"] +EndpointStateType = Literal["ACTIVE", "CREATING", "TERMINATED", "TERMINATED_WITH_ERRORS", "TERMINATING"] +FailureReasonType = Literal["CLUSTER_UNAVAILABLE", "INTERNAL_ERROR", "USER_ERROR", "VALIDATION_ERROR"] +JobRunStateType = Literal["CANCELLED", "CANCEL_PENDING", "COMPLETED", "FAILED", "PENDING", "RUNNING", "SUBMITTED"] +ListJobRunsPaginatorName = Literal["list_job_runs"] +ListJobTemplatesPaginatorName = Literal["list_job_templates"] +ListManagedEndpointsPaginatorName = Literal["list_managed_endpoints"] +ListSecurityConfigurationsPaginatorName = Literal["list_security_configurations"] +ListVirtualClustersPaginatorName = Literal["list_virtual_clusters"] +PersistentAppUIType = Literal["DISABLED", "ENABLED"] +TemplateParameterDataTypeType = Literal["NUMBER", "STRING"] +VirtualClusterStateType = Literal["ARRESTED", "RUNNING", "TERMINATED", "TERMINATING"] +EMRContainersServiceName = Literal["emr-containers"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_job_runs", + "list_job_templates", + "list_managed_endpoints", + "list_security_configurations", + "list_virtual_clusters",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/emr_serverless_classes.py b/aws_resource_validator/pydantic_models/emr_serverless_classes.py new file mode 100644 index 00000000..d72d114c --- /dev/null +++ b/aws_resource_validator/pydantic_models/emr_serverless_classes.py @@ -0,0 +1,432 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.emr_serverless_constants import * + +class ApplicationSummaryTypeDef(BaseModel): + id: str + arn: str + releaseLabel: str + type: str + state: ApplicationStateType + createdAt: datetime + updatedAt: datetime + name: Optional[str] = None + stateDetails: Optional[str] = None + architecture: Optional[ArchitectureType] = None + +class AutoStartConfigTypeDef(BaseModel): + enabled: Optional[bool] = None + +class AutoStopConfigTypeDef(BaseModel): + enabled: Optional[bool] = None + idleTimeoutMinutes: Optional[int] = None + +class ImageConfigurationTypeDef(BaseModel): + imageUri: str + resolvedImageDigest: Optional[str] = None + +class InteractiveConfigurationTypeDef(BaseModel): + studioEnabled: Optional[bool] = None + livyEndpointEnabled: Optional[bool] = None + +class MaximumAllowedResourcesTypeDef(BaseModel): + cpu: str + memory: str + disk: Optional[str] = None + +class NetworkConfigurationOutputTypeDef(BaseModel): + subnetIds: Optional[List[str]] = None + securityGroupIds: Optional[List[str]] = None + +class CancelJobRunRequestRequestTypeDef(BaseModel): + applicationId: str + jobRunId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CloudWatchLoggingConfigurationOutputTypeDef(BaseModel): + enabled: bool + logGroupName: Optional[str] = None + logStreamNamePrefix: Optional[str] = None + encryptionKeyArn: Optional[str] = None + logTypes: Optional[Dict[str, List[str]]] = None + +class CloudWatchLoggingConfigurationTypeDef(BaseModel): + enabled: bool + logGroupName: Optional[str] = None + logStreamNamePrefix: Optional[str] = None + encryptionKeyArn: Optional[str] = None + logTypes: Optional[Mapping[str, Sequence[str]]] = None + +class ConfigurationOutputTypeDef(BaseModel): + classification: str + properties: Optional[Dict[str, str]] = None + configurations: Optional[List[Dict[str, Any]]] = None + +class ConfigurationTypeDef(BaseModel): + classification: str + properties: Optional[Mapping[str, str]] = None + configurations: Optional[Sequence[Dict[str, Any]]] = None + +class ImageConfigurationInputTypeDef(BaseModel): + imageUri: Optional[str] = None + +class NetworkConfigurationTypeDef(BaseModel): + subnetIds: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class GetApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class GetDashboardForJobRunRequestRequestTypeDef(BaseModel): + applicationId: str + jobRunId: str + attempt: Optional[int] = None + +class GetJobRunRequestRequestTypeDef(BaseModel): + applicationId: str + jobRunId: str + attempt: Optional[int] = None + +class HiveTypeDef(BaseModel): + query: str + initQueryFile: Optional[str] = None + parameters: Optional[str] = None + +class WorkerResourceConfigTypeDef(BaseModel): + cpu: str + memory: str + disk: Optional[str] = None + diskType: Optional[str] = None + +class SparkSubmitOutputTypeDef(BaseModel): + entryPoint: str + entryPointArguments: Optional[List[str]] = None + sparkSubmitParameters: Optional[str] = None + +class SparkSubmitTypeDef(BaseModel): + entryPoint: str + entryPointArguments: Optional[Sequence[str]] = None + sparkSubmitParameters: Optional[str] = None + +class JobRunAttemptSummaryTypeDef(BaseModel): + applicationId: str + id: str + arn: str + createdBy: str + jobCreatedAt: datetime + createdAt: datetime + updatedAt: datetime + executionRole: str + state: JobRunStateType + stateDetails: str + releaseLabel: str + name: Optional[str] = None + mode: Optional[JobRunModeType] = None + type: Optional[str] = None + attempt: Optional[int] = None + +class JobRunSummaryTypeDef(BaseModel): + applicationId: str + id: str + arn: str + createdBy: str + createdAt: datetime + updatedAt: datetime + executionRole: str + state: JobRunStateType + stateDetails: str + releaseLabel: str + name: Optional[str] = None + mode: Optional[JobRunModeType] = None + type: Optional[str] = None + attempt: Optional[int] = None + attemptCreatedAt: Optional[datetime] = None + attemptUpdatedAt: Optional[datetime] = None + +class ResourceUtilizationTypeDef(BaseModel): + vCPUHour: Optional[float] = None + memoryGBHour: Optional[float] = None + storageGBHour: Optional[float] = None + +class RetryPolicyTypeDef(BaseModel): + maxAttempts: Optional[int] = None + maxFailedAttemptsPerHour: Optional[int] = None + +class TotalResourceUtilizationTypeDef(BaseModel): + vCPUHour: Optional[float] = None + memoryGBHour: Optional[float] = None + storageGBHour: Optional[float] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + states: Optional[Sequence[ApplicationStateType]] = None + +class ListJobRunAttemptsRequestRequestTypeDef(BaseModel): + applicationId: str + jobRunId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ManagedPersistenceMonitoringConfigurationTypeDef(BaseModel): + enabled: Optional[bool] = None + encryptionKeyArn: Optional[str] = None + +class PrometheusMonitoringConfigurationTypeDef(BaseModel): + remoteWriteUrl: Optional[str] = None + +class S3MonitoringConfigurationTypeDef(BaseModel): + logUri: Optional[str] = None + encryptionKeyArn: Optional[str] = None + +class StartApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class StopApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class WorkerTypeSpecificationTypeDef(BaseModel): + imageConfiguration: Optional[ImageConfigurationTypeDef] = None + +class CancelJobRunResponseTypeDef(BaseModel): + applicationId: str + jobRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationResponseTypeDef(BaseModel): + applicationId: str + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDashboardForJobRunResponseTypeDef(BaseModel): + url: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + applications: List[ApplicationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartJobRunResponseTypeDef(BaseModel): + applicationId: str + jobRunId: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class WorkerTypeSpecificationInputTypeDef(BaseModel): + imageConfiguration: Optional[ImageConfigurationInputTypeDef] = None + +class InitialCapacityConfigTypeDef(BaseModel): + workerCount: int + workerConfiguration: Optional[WorkerResourceConfigTypeDef] = None + +class JobDriverOutputTypeDef(BaseModel): + sparkSubmit: Optional[SparkSubmitOutputTypeDef] = None + hive: Optional[HiveTypeDef] = None + +class JobDriverTypeDef(BaseModel): + sparkSubmit: Optional[SparkSubmitTypeDef] = None + hive: Optional[HiveTypeDef] = None + +class ListJobRunAttemptsResponseTypeDef(BaseModel): + jobRunAttempts: List[JobRunAttemptSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobRunsResponseTypeDef(BaseModel): + jobRuns: List[JobRunSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + states: Optional[Sequence[ApplicationStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobRunAttemptsRequestListJobRunAttemptsPaginateTypeDef(BaseModel): + applicationId: str + jobRunId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobRunsRequestListJobRunsPaginateTypeDef(BaseModel): + applicationId: str + createdAtAfter: Optional[TimestampTypeDef] = None + createdAtBefore: Optional[TimestampTypeDef] = None + states: Optional[Sequence[JobRunStateType]] = None + mode: Optional[JobRunModeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobRunsRequestRequestTypeDef(BaseModel): + applicationId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + createdAtAfter: Optional[TimestampTypeDef] = None + createdAtBefore: Optional[TimestampTypeDef] = None + states: Optional[Sequence[JobRunStateType]] = None + mode: Optional[JobRunModeType] = None + +class MonitoringConfigurationOutputTypeDef(BaseModel): + s3MonitoringConfiguration: Optional[S3MonitoringConfigurationTypeDef] = None + managedPersistenceMonitoringConfiguration: Optional[ ManagedPersistenceMonitoringConfigurationTypeDef ] = None + cloudWatchLoggingConfiguration: Optional[CloudWatchLoggingConfigurationOutputTypeDef] = None + prometheusMonitoringConfiguration: Optional[PrometheusMonitoringConfigurationTypeDef] = None + +class MonitoringConfigurationTypeDef(BaseModel): + s3MonitoringConfiguration: Optional[S3MonitoringConfigurationTypeDef] = None + managedPersistenceMonitoringConfiguration: Optional[ ManagedPersistenceMonitoringConfigurationTypeDef ] = None + cloudWatchLoggingConfiguration: Optional[CloudWatchLoggingConfigurationTypeDef] = None + prometheusMonitoringConfiguration: Optional[PrometheusMonitoringConfigurationTypeDef] = None + +class ApplicationTypeDef(BaseModel): + applicationId: str + arn: str + releaseLabel: str + type: str + state: ApplicationStateType + createdAt: datetime + updatedAt: datetime + name: Optional[str] = None + stateDetails: Optional[str] = None + initialCapacity: Optional[Dict[str, InitialCapacityConfigTypeDef]] = None + maximumCapacity: Optional[MaximumAllowedResourcesTypeDef] = None + tags: Optional[Dict[str, str]] = None + autoStartConfiguration: Optional[AutoStartConfigTypeDef] = None + autoStopConfiguration: Optional[AutoStopConfigTypeDef] = None + networkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + architecture: Optional[ArchitectureType] = None + imageConfiguration: Optional[ImageConfigurationTypeDef] = None + workerTypeSpecifications: Optional[Dict[str, WorkerTypeSpecificationTypeDef]] = None + runtimeConfiguration: Optional[List["ConfigurationOutputTypeDef"]] = None + monitoringConfiguration: Optional[MonitoringConfigurationOutputTypeDef] = None + interactiveConfiguration: Optional[InteractiveConfigurationTypeDef] = None + +class ConfigurationOverridesOutputTypeDef(BaseModel): + applicationConfiguration: Optional[List["ConfigurationOutputTypeDef"]] = None + monitoringConfiguration: Optional[MonitoringConfigurationOutputTypeDef] = None + +class ConfigurationOverridesTypeDef(BaseModel): + applicationConfiguration: Optional[Sequence["ConfigurationTypeDef"]] = None + monitoringConfiguration: Optional[MonitoringConfigurationTypeDef] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + releaseLabel: str + type: str + clientToken: str + name: Optional[str] = None + initialCapacity: Optional[Mapping[str, InitialCapacityConfigTypeDef]] = None + maximumCapacity: Optional[MaximumAllowedResourcesTypeDef] = None + tags: Optional[Mapping[str, str]] = None + autoStartConfiguration: Optional[AutoStartConfigTypeDef] = None + autoStopConfiguration: Optional[AutoStopConfigTypeDef] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + architecture: Optional[ArchitectureType] = None + imageConfiguration: Optional[ImageConfigurationInputTypeDef] = None + workerTypeSpecifications: Optional[Mapping[str, WorkerTypeSpecificationInputTypeDef]] = None + runtimeConfiguration: Optional[Sequence[ConfigurationUnionTypeDef]] = None + monitoringConfiguration: Optional[MonitoringConfigurationTypeDef] = None + interactiveConfiguration: Optional[InteractiveConfigurationTypeDef] = None + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + clientToken: str + initialCapacity: Optional[Mapping[str, InitialCapacityConfigTypeDef]] = None + maximumCapacity: Optional[MaximumAllowedResourcesTypeDef] = None + autoStartConfiguration: Optional[AutoStartConfigTypeDef] = None + autoStopConfiguration: Optional[AutoStopConfigTypeDef] = None + networkConfiguration: Optional[NetworkConfigurationTypeDef] = None + architecture: Optional[ArchitectureType] = None + imageConfiguration: Optional[ImageConfigurationInputTypeDef] = None + workerTypeSpecifications: Optional[Mapping[str, WorkerTypeSpecificationInputTypeDef]] = None + interactiveConfiguration: Optional[InteractiveConfigurationTypeDef] = None + releaseLabel: Optional[str] = None + runtimeConfiguration: Optional[Sequence[ConfigurationUnionTypeDef]] = None + monitoringConfiguration: Optional[MonitoringConfigurationTypeDef] = None + +class GetApplicationResponseTypeDef(BaseModel): + application: ApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationResponseTypeDef(BaseModel): + application: ApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JobRunTypeDef(BaseModel): + applicationId: str + jobRunId: str + arn: str + createdBy: str + createdAt: datetime + updatedAt: datetime + executionRole: str + state: JobRunStateType + stateDetails: str + releaseLabel: str + jobDriver: JobDriverOutputTypeDef + name: Optional[str] = None + configurationOverrides: Optional[ConfigurationOverridesOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + totalResourceUtilization: Optional[TotalResourceUtilizationTypeDef] = None + networkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + totalExecutionDurationSeconds: Optional[int] = None + executionTimeoutMinutes: Optional[int] = None + billedResourceUtilization: Optional[ResourceUtilizationTypeDef] = None + mode: Optional[JobRunModeType] = None + retryPolicy: Optional[RetryPolicyTypeDef] = None + attempt: Optional[int] = None + attemptCreatedAt: Optional[datetime] = None + attemptUpdatedAt: Optional[datetime] = None + +class StartJobRunRequestRequestTypeDef(BaseModel): + applicationId: str + clientToken: str + executionRoleArn: str + jobDriver: Optional[JobDriverTypeDef] = None + configurationOverrides: Optional[ConfigurationOverridesTypeDef] = None + tags: Optional[Mapping[str, str]] = None + executionTimeoutMinutes: Optional[int] = None + name: Optional[str] = None + mode: Optional[JobRunModeType] = None + retryPolicy: Optional[RetryPolicyTypeDef] = None + +class GetJobRunResponseTypeDef(BaseModel): + jobRun: JobRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/emr_serverless_constants.py b/aws_resource_validator/pydantic_models/emr_serverless_constants.py new file mode 100644 index 00000000..14693fb8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/emr_serverless_constants.py @@ -0,0 +1,436 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationStateType = Literal["CREATED", "CREATING", "STARTED", "STARTING", "STOPPED", "STOPPING", "TERMINATED"] +ArchitectureType = Literal["ARM64", "X86_64"] +JobRunModeType = Literal["BATCH", "STREAMING"] +JobRunStateType = Literal["CANCELLED", "CANCELLING", "FAILED", "PENDING", "RUNNING", "SCHEDULED", "SUBMITTED", "SUCCESS"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListJobRunAttemptsPaginatorName = Literal["list_job_run_attempts"] +ListJobRunsPaginatorName = Literal["list_job_runs"] +EMRServerlessServiceName = Literal["emr-serverless"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applications", "list_job_run_attempts", "list_job_runs"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ConfigurationUnionTypeDef = Union["'ConfigurationTypeDef'", "'ConfigurationOutputTypeDef'"] +TimestampTypeDef = Union[datetime, str] +NetworkConfigurationUnionTypeDef = Union[ 'NetworkConfigurationTypeDef', 'NetworkConfigurationOutputTypeDef' ] +JobDriverUnionTypeDef = Union['JobDriverTypeDef', 'JobDriverOutputTypeDef'] +MonitoringConfigurationUnionTypeDef = Union[ 'MonitoringConfigurationTypeDef', 'MonitoringConfigurationOutputTypeDef' ] +ConfigurationOverridesUnionTypeDef = Union[ 'ConfigurationOverridesTypeDef', 'ConfigurationOverridesOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/entityresolution_classes.py b/aws_resource_validator/pydantic_models/entityresolution_classes.py new file mode 100644 index 00000000..b513eb78 --- /dev/null +++ b/aws_resource_validator/pydantic_models/entityresolution_classes.py @@ -0,0 +1,665 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.entityresolution_constants import * + +class AddPolicyStatementInputRequestTypeDef(BaseModel): + action: Sequence[str] + arn: str + effect: StatementEffectType + principal: Sequence[str] + statementId: str + condition: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchDeleteUniqueIdInputRequestTypeDef(BaseModel): + uniqueIds: Sequence[str] + workflowName: str + inputSource: Optional[str] = None + +class DeleteUniqueIdErrorTypeDef(BaseModel): + errorType: DeleteUniqueIdErrorTypeType + uniqueId: str + +class DeletedUniqueIdTypeDef(BaseModel): + uniqueId: str + +class IdMappingWorkflowInputSourceTypeDef(BaseModel): + inputSourceARN: str + schemaName: Optional[str] = None + type: Optional[IdNamespaceTypeType] = None + +class IdMappingWorkflowOutputSourceTypeDef(BaseModel): + outputS3Path: str + KMSArn: Optional[str] = None + +class IdNamespaceInputSourceTypeDef(BaseModel): + inputSourceARN: str + schemaName: Optional[str] = None + +class IncrementalRunConfigTypeDef(BaseModel): + incrementalRunType: Optional[Literal["IMMEDIATE"]] = None + +class InputSourceTypeDef(BaseModel): + inputSourceARN: str + schemaName: str + applyNormalization: Optional[bool] = None + +class SchemaInputAttributeTypeDef(BaseModel): + fieldName: str + type: SchemaAttributeTypeType + groupName: Optional[str] = None + matchKey: Optional[str] = None + subType: Optional[str] = None + +class DeleteIdMappingWorkflowInputRequestTypeDef(BaseModel): + workflowName: str + +class DeleteIdNamespaceInputRequestTypeDef(BaseModel): + idNamespaceName: str + +class DeleteMatchingWorkflowInputRequestTypeDef(BaseModel): + workflowName: str + +class DeletePolicyStatementInputRequestTypeDef(BaseModel): + arn: str + statementId: str + +class DeleteSchemaMappingInputRequestTypeDef(BaseModel): + schemaName: str + +class ErrorDetailsTypeDef(BaseModel): + errorMessage: Optional[str] = None + +class GetIdMappingJobInputRequestTypeDef(BaseModel): + jobId: str + workflowName: str + +class IdMappingJobMetricsTypeDef(BaseModel): + inputRecords: Optional[int] = None + recordsNotProcessed: Optional[int] = None + totalRecordsProcessed: Optional[int] = None + +class IdMappingJobOutputSourceTypeDef(BaseModel): + outputS3Path: str + roleArn: str + KMSArn: Optional[str] = None + +class GetIdMappingWorkflowInputRequestTypeDef(BaseModel): + workflowName: str + +class GetIdNamespaceInputRequestTypeDef(BaseModel): + idNamespaceName: str + +class GetMatchIdInputRequestTypeDef(BaseModel): + record: Mapping[str, str] + workflowName: str + applyNormalization: Optional[bool] = None + +class GetMatchingJobInputRequestTypeDef(BaseModel): + jobId: str + workflowName: str + +class JobMetricsTypeDef(BaseModel): + inputRecords: Optional[int] = None + matchIDs: Optional[int] = None + recordsNotProcessed: Optional[int] = None + totalRecordsProcessed: Optional[int] = None + +class JobOutputSourceTypeDef(BaseModel): + outputS3Path: str + roleArn: str + KMSArn: Optional[str] = None + +class GetMatchingWorkflowInputRequestTypeDef(BaseModel): + workflowName: str + +class GetPolicyInputRequestTypeDef(BaseModel): + arn: str + +class GetProviderServiceInputRequestTypeDef(BaseModel): + providerName: str + providerServiceName: str + +class ProviderIdNameSpaceConfigurationTypeDef(BaseModel): + description: Optional[str] = None + providerSourceConfigurationDefinition: Optional[Dict[str, Any]] = None + providerTargetConfigurationDefinition: Optional[Dict[str, Any]] = None + +class ProviderIntermediateDataAccessConfigurationTypeDef(BaseModel): + awsAccountIds: Optional[List[str]] = None + requiredBucketActions: Optional[List[str]] = None + +class GetSchemaMappingInputRequestTypeDef(BaseModel): + schemaName: str + +class IdMappingWorkflowSummaryTypeDef(BaseModel): + createdAt: datetime + updatedAt: datetime + workflowArn: str + workflowName: str + +class NamespaceProviderPropertiesTypeDef(BaseModel): + providerServiceArn: str + providerConfiguration: Optional[Mapping[str, Any]] = None + +class IdNamespaceSummaryTypeDef(BaseModel): + createdAt: datetime + idNamespaceArn: str + idNamespaceName: str + type: IdNamespaceTypeType + updatedAt: datetime + description: Optional[str] = None + +class IntermediateSourceConfigurationTypeDef(BaseModel): + intermediateS3Path: str + +class JobSummaryTypeDef(BaseModel): + jobId: str + startTime: datetime + status: JobStatusType + endTime: Optional[datetime] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListIdMappingJobsInputRequestTypeDef(BaseModel): + workflowName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIdMappingWorkflowsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIdNamespacesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListMatchingJobsInputRequestTypeDef(BaseModel): + workflowName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListMatchingWorkflowsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MatchingWorkflowSummaryTypeDef(BaseModel): + createdAt: datetime + resolutionType: ResolutionTypeType + updatedAt: datetime + workflowArn: str + workflowName: str + +class ListProviderServicesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + providerName: Optional[str] = None + +class ProviderServiceSummaryTypeDef(BaseModel): + providerName: str + providerServiceArn: str + providerServiceDisplayName: str + providerServiceName: str + providerServiceType: ServiceTypeType + +class ListSchemaMappingsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SchemaMappingSummaryTypeDef(BaseModel): + createdAt: datetime + hasWorkflows: bool + schemaArn: str + schemaName: str + updatedAt: datetime + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class OutputAttributeTypeDef(BaseModel): + name: str + hashed: Optional[bool] = None + +class ProviderSchemaAttributeTypeDef(BaseModel): + fieldName: str + type: SchemaAttributeTypeType + hashing: Optional[bool] = None + subType: Optional[str] = None + +class ProviderMarketplaceConfigurationTypeDef(BaseModel): + assetId: str + dataSetId: str + listingId: str + revisionId: str + +class PutPolicyInputRequestTypeDef(BaseModel): + arn: str + policy: str + token: Optional[str] = None + +class RuleTypeDef(BaseModel): + matchingKeys: Sequence[str] + ruleName: str + +class StartMatchingJobInputRequestTypeDef(BaseModel): + workflowName: str + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AddPolicyStatementOutputTypeDef(BaseModel): + arn: str + policy: str + token: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIdMappingWorkflowOutputTypeDef(BaseModel): + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIdNamespaceOutputTypeDef(BaseModel): + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMatchingWorkflowOutputTypeDef(BaseModel): + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePolicyStatementOutputTypeDef(BaseModel): + arn: str + policy: str + token: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSchemaMappingOutputTypeDef(BaseModel): + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMatchIdOutputTypeDef(BaseModel): + matchId: str + matchRule: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyOutputTypeDef(BaseModel): + arn: str + policy: str + token: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutPolicyOutputTypeDef(BaseModel): + arn: str + policy: str + token: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMatchingJobOutputTypeDef(BaseModel): + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteUniqueIdOutputTypeDef(BaseModel): + deleted: List[DeletedUniqueIdTypeDef] + disconnectedUniqueIds: List[str] + errors: List[DeleteUniqueIdErrorTypeDef] + status: DeleteUniqueIdStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSchemaMappingInputRequestTypeDef(BaseModel): + mappedInputFields: Sequence[SchemaInputAttributeTypeDef] + schemaName: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateSchemaMappingOutputTypeDef(BaseModel): + description: str + mappedInputFields: List[SchemaInputAttributeTypeDef] + schemaArn: str + schemaName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaMappingOutputTypeDef(BaseModel): + createdAt: datetime + description: str + hasWorkflows: bool + mappedInputFields: List[SchemaInputAttributeTypeDef] + schemaArn: str + schemaName: str + tags: Dict[str, str] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSchemaMappingInputRequestTypeDef(BaseModel): + mappedInputFields: Sequence[SchemaInputAttributeTypeDef] + schemaName: str + description: Optional[str] = None + +class UpdateSchemaMappingOutputTypeDef(BaseModel): + description: str + mappedInputFields: List[SchemaInputAttributeTypeDef] + schemaArn: str + schemaName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdMappingJobOutputTypeDef(BaseModel): + endTime: datetime + errorDetails: ErrorDetailsTypeDef + jobId: str + metrics: IdMappingJobMetricsTypeDef + outputSourceConfig: List[IdMappingJobOutputSourceTypeDef] + startTime: datetime + status: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartIdMappingJobInputRequestTypeDef(BaseModel): + workflowName: str + outputSourceConfig: Optional[Sequence[IdMappingJobOutputSourceTypeDef]] = None + +class StartIdMappingJobOutputTypeDef(BaseModel): + jobId: str + outputSourceConfig: List[IdMappingJobOutputSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMatchingJobOutputTypeDef(BaseModel): + endTime: datetime + errorDetails: ErrorDetailsTypeDef + jobId: str + metrics: JobMetricsTypeDef + outputSourceConfig: List[JobOutputSourceTypeDef] + startTime: datetime + status: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdMappingWorkflowsOutputTypeDef(BaseModel): + nextToken: str + workflowSummaries: List[IdMappingWorkflowSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IdNamespaceIdMappingWorkflowPropertiesTypeDef(BaseModel): + idMappingType: Literal["PROVIDER"] + providerProperties: Optional[NamespaceProviderPropertiesTypeDef] = None + +class ListIdNamespacesOutputTypeDef(BaseModel): + idNamespaceSummaries: List[IdNamespaceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProviderPropertiesTypeDef(BaseModel): + providerServiceArn: str + intermediateSourceConfiguration: Optional[IntermediateSourceConfigurationTypeDef] = None + providerConfiguration: Optional[Mapping[str, Any]] = None + +class ListIdMappingJobsOutputTypeDef(BaseModel): + jobs: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMatchingJobsOutputTypeDef(BaseModel): + jobs: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdMappingJobsInputListIdMappingJobsPaginateTypeDef(BaseModel): + workflowName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIdMappingWorkflowsInputListIdMappingWorkflowsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIdNamespacesInputListIdNamespacesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMatchingJobsInputListMatchingJobsPaginateTypeDef(BaseModel): + workflowName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMatchingWorkflowsInputListMatchingWorkflowsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProviderServicesInputListProviderServicesPaginateTypeDef(BaseModel): + providerName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemaMappingsInputListSchemaMappingsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMatchingWorkflowsOutputTypeDef(BaseModel): + nextToken: str + workflowSummaries: List[MatchingWorkflowSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListProviderServicesOutputTypeDef(BaseModel): + nextToken: str + providerServiceSummaries: List[ProviderServiceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchemaMappingsOutputTypeDef(BaseModel): + nextToken: str + schemaList: List[SchemaMappingSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OutputSourceTypeDef(BaseModel): + output: Sequence[OutputAttributeTypeDef] + outputS3Path: str + KMSArn: Optional[str] = None + applyNormalization: Optional[bool] = None + +class ProviderComponentSchemaTypeDef(BaseModel): + providerSchemaAttributes: Optional[List[ProviderSchemaAttributeTypeDef]] = None + schemas: Optional[List[List[str]]] = None + +class ProviderEndpointConfigurationTypeDef(BaseModel): + marketplaceConfiguration: Optional[ProviderMarketplaceConfigurationTypeDef] = None + +class RuleBasedPropertiesTypeDef(BaseModel): + attributeMatchingModel: AttributeMatchingModelType + rules: Sequence[RuleTypeDef] + +class CreateIdNamespaceInputRequestTypeDef(BaseModel): + idNamespaceName: str + type: IdNamespaceTypeType + description: Optional[str] = None + idMappingWorkflowProperties: Optional[ Sequence[IdNamespaceIdMappingWorkflowPropertiesTypeDef] ] = None + inputSourceConfig: Optional[Sequence[IdNamespaceInputSourceTypeDef]] = None + roleArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateIdNamespaceOutputTypeDef(BaseModel): + createdAt: datetime + description: str + idMappingWorkflowProperties: List[IdNamespaceIdMappingWorkflowPropertiesTypeDef] + idNamespaceArn: str + idNamespaceName: str + inputSourceConfig: List[IdNamespaceInputSourceTypeDef] + roleArn: str + tags: Dict[str, str] + type: IdNamespaceTypeType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdNamespaceOutputTypeDef(BaseModel): + createdAt: datetime + description: str + idMappingWorkflowProperties: List[IdNamespaceIdMappingWorkflowPropertiesTypeDef] + idNamespaceArn: str + idNamespaceName: str + inputSourceConfig: List[IdNamespaceInputSourceTypeDef] + roleArn: str + tags: Dict[str, str] + type: IdNamespaceTypeType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdNamespaceInputRequestTypeDef(BaseModel): + idNamespaceName: str + description: Optional[str] = None + idMappingWorkflowProperties: Optional[ Sequence[IdNamespaceIdMappingWorkflowPropertiesTypeDef] ] = None + inputSourceConfig: Optional[Sequence[IdNamespaceInputSourceTypeDef]] = None + roleArn: Optional[str] = None + +class UpdateIdNamespaceOutputTypeDef(BaseModel): + createdAt: datetime + description: str + idMappingWorkflowProperties: List[IdNamespaceIdMappingWorkflowPropertiesTypeDef] + idNamespaceArn: str + idNamespaceName: str + inputSourceConfig: List[IdNamespaceInputSourceTypeDef] + roleArn: str + type: IdNamespaceTypeType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class IdMappingTechniquesTypeDef(BaseModel): + idMappingType: Literal["PROVIDER"] + providerProperties: Optional[ProviderPropertiesTypeDef] = None + +class GetProviderServiceOutputTypeDef(BaseModel): + anonymizedOutput: bool + providerComponentSchema: ProviderComponentSchemaTypeDef + providerConfigurationDefinition: Dict[str, Any] + providerEndpointConfiguration: ProviderEndpointConfigurationTypeDef + providerEntityOutputDefinition: Dict[str, Any] + providerIdNameSpaceConfiguration: ProviderIdNameSpaceConfigurationTypeDef + providerIntermediateDataAccessConfiguration: ProviderIntermediateDataAccessConfigurationTypeDef + providerJobConfiguration: Dict[str, Any] + providerName: str + providerServiceArn: str + providerServiceDisplayName: str + providerServiceName: str + providerServiceType: ServiceTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ResolutionTechniquesTypeDef(BaseModel): + resolutionType: ResolutionTypeType + providerProperties: Optional[ProviderPropertiesTypeDef] = None + ruleBasedProperties: Optional[RuleBasedPropertiesTypeDef] = None + +class CreateIdMappingWorkflowInputRequestTypeDef(BaseModel): + idMappingTechniques: IdMappingTechniquesTypeDef + inputSourceConfig: Sequence[IdMappingWorkflowInputSourceTypeDef] + roleArn: str + workflowName: str + description: Optional[str] = None + outputSourceConfig: Optional[Sequence[IdMappingWorkflowOutputSourceTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + +class CreateIdMappingWorkflowOutputTypeDef(BaseModel): + description: str + idMappingTechniques: IdMappingTechniquesTypeDef + inputSourceConfig: List[IdMappingWorkflowInputSourceTypeDef] + outputSourceConfig: List[IdMappingWorkflowOutputSourceTypeDef] + roleArn: str + workflowArn: str + workflowName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdMappingWorkflowOutputTypeDef(BaseModel): + createdAt: datetime + description: str + idMappingTechniques: IdMappingTechniquesTypeDef + inputSourceConfig: List[IdMappingWorkflowInputSourceTypeDef] + outputSourceConfig: List[IdMappingWorkflowOutputSourceTypeDef] + roleArn: str + tags: Dict[str, str] + updatedAt: datetime + workflowArn: str + workflowName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdMappingWorkflowInputRequestTypeDef(BaseModel): + idMappingTechniques: IdMappingTechniquesTypeDef + inputSourceConfig: Sequence[IdMappingWorkflowInputSourceTypeDef] + roleArn: str + workflowName: str + description: Optional[str] = None + outputSourceConfig: Optional[Sequence[IdMappingWorkflowOutputSourceTypeDef]] = None + +class UpdateIdMappingWorkflowOutputTypeDef(BaseModel): + description: str + idMappingTechniques: IdMappingTechniquesTypeDef + inputSourceConfig: List[IdMappingWorkflowInputSourceTypeDef] + outputSourceConfig: List[IdMappingWorkflowOutputSourceTypeDef] + roleArn: str + workflowArn: str + workflowName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMatchingWorkflowInputRequestTypeDef(BaseModel): + inputSourceConfig: Sequence[InputSourceTypeDef] + outputSourceConfig: Sequence[OutputSourceTypeDef] + resolutionTechniques: ResolutionTechniquesTypeDef + roleArn: str + workflowName: str + description: Optional[str] = None + incrementalRunConfig: Optional[IncrementalRunConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateMatchingWorkflowOutputTypeDef(BaseModel): + description: str + incrementalRunConfig: IncrementalRunConfigTypeDef + inputSourceConfig: List[InputSourceTypeDef] + outputSourceConfig: List[OutputSourceTypeDef] + resolutionTechniques: ResolutionTechniquesTypeDef + roleArn: str + workflowArn: str + workflowName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMatchingWorkflowOutputTypeDef(BaseModel): + createdAt: datetime + description: str + incrementalRunConfig: IncrementalRunConfigTypeDef + inputSourceConfig: List[InputSourceTypeDef] + outputSourceConfig: List[OutputSourceTypeDef] + resolutionTechniques: ResolutionTechniquesTypeDef + roleArn: str + tags: Dict[str, str] + updatedAt: datetime + workflowArn: str + workflowName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMatchingWorkflowInputRequestTypeDef(BaseModel): + inputSourceConfig: Sequence[InputSourceTypeDef] + outputSourceConfig: Sequence[OutputSourceTypeDef] + resolutionTechniques: ResolutionTechniquesTypeDef + roleArn: str + workflowName: str + description: Optional[str] = None + incrementalRunConfig: Optional[IncrementalRunConfigTypeDef] = None + +class UpdateMatchingWorkflowOutputTypeDef(BaseModel): + description: str + incrementalRunConfig: IncrementalRunConfigTypeDef + inputSourceConfig: List[InputSourceTypeDef] + outputSourceConfig: List[OutputSourceTypeDef] + resolutionTechniques: ResolutionTechniquesTypeDef + roleArn: str + workflowName: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/entityresolution_constants.py b/aws_resource_validator/pydantic_models/entityresolution_constants.py new file mode 100644 index 00000000..3c56756f --- /dev/null +++ b/aws_resource_validator/pydantic_models/entityresolution_constants.py @@ -0,0 +1,441 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttributeMatchingModelType = Literal["MANY_TO_MANY", "ONE_TO_ONE"] +DeleteUniqueIdErrorTypeType = Literal["SERVICE_ERROR", "VALIDATION_ERROR"] +DeleteUniqueIdStatusType = Literal["ACCEPTED", "COMPLETED"] +IdMappingTypeType = Literal["PROVIDER"] +IdNamespaceTypeType = Literal["SOURCE", "TARGET"] +IncrementalRunTypeType = Literal["IMMEDIATE"] +JobStatusType = Literal["FAILED", "QUEUED", "RUNNING", "SUCCEEDED"] +ListIdMappingJobsPaginatorName = Literal["list_id_mapping_jobs"] +ListIdMappingWorkflowsPaginatorName = Literal["list_id_mapping_workflows"] +ListIdNamespacesPaginatorName = Literal["list_id_namespaces"] +ListMatchingJobsPaginatorName = Literal["list_matching_jobs"] +ListMatchingWorkflowsPaginatorName = Literal["list_matching_workflows"] +ListProviderServicesPaginatorName = Literal["list_provider_services"] +ListSchemaMappingsPaginatorName = Literal["list_schema_mappings"] +ResolutionTypeType = Literal["ML_MATCHING", "PROVIDER", "RULE_MATCHING"] +SchemaAttributeTypeType = Literal["ADDRESS", + "ADDRESS_CITY", + "ADDRESS_COUNTRY", + "ADDRESS_POSTALCODE", + "ADDRESS_STATE", + "ADDRESS_STREET1", + "ADDRESS_STREET2", + "ADDRESS_STREET3", + "DATE", + "EMAIL_ADDRESS", + "NAME", + "NAME_FIRST", + "NAME_LAST", + "NAME_MIDDLE", + "PHONE", + "PHONE_COUNTRYCODE", + "PHONE_NUMBER", + "PROVIDER_ID", + "STRING", + "UNIQUE_ID",] +ServiceTypeType = Literal["ASSIGNMENT", "ID_MAPPING"] +StatementEffectType = Literal["Allow", "Deny"] +EntityResolutionServiceName = Literal["entityresolution"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_id_mapping_jobs", + "list_id_mapping_workflows", + "list_id_namespaces", + "list_matching_jobs", + "list_matching_workflows", + "list_provider_services", + "list_schema_mappings",] diff --git a/aws_resource_validator/pydantic_models/es_classes.py b/aws_resource_validator/pydantic_models/es_classes.py new file mode 100644 index 00000000..d8272ecf --- /dev/null +++ b/aws_resource_validator/pydantic_models/es_classes.py @@ -0,0 +1,982 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.es_constants import * + +class AcceptInboundCrossClusterSearchConnectionRequestRequestTypeDef(BaseModel): + CrossClusterSearchConnectionId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class OptionStatusTypeDef(BaseModel): + CreationDate: datetime + UpdateDate: datetime + State: OptionStateType + UpdateVersion: Optional[int] = None + PendingDeletion: Optional[bool] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AdditionalLimitTypeDef(BaseModel): + LimitName: Optional[str] = None + LimitValues: Optional[List[str]] = None + +class MasterUserOptionsTypeDef(BaseModel): + MasterUserARN: Optional[str] = None + MasterUserName: Optional[str] = None + MasterUserPassword: Optional[str] = None + +class AssociatePackageRequestRequestTypeDef(BaseModel): + PackageID: str + DomainName: str + +class AuthorizeVpcEndpointAccessRequestRequestTypeDef(BaseModel): + DomainName: str + Account: str + +class AuthorizedPrincipalTypeDef(BaseModel): + PrincipalType: Optional[PrincipalTypeType] = None + Principal: Optional[str] = None + +class ScheduledAutoTuneDetailsTypeDef(BaseModel): + Date: Optional[datetime] = None + ActionType: Optional[ScheduledAutoTuneActionTypeType] = None + Action: Optional[str] = None + Severity: Optional[ScheduledAutoTuneSeverityTypeType] = None + +class DurationTypeDef(BaseModel): + Value: Optional[int] = None + Unit: Optional[Literal["HOURS"]] = None + +class AutoTuneOptionsOutputTypeDef(BaseModel): + State: Optional[AutoTuneStateType] = None + ErrorMessage: Optional[str] = None + +class AutoTuneStatusTypeDef(BaseModel): + CreationDate: datetime + UpdateDate: datetime + State: AutoTuneStateType + UpdateVersion: Optional[int] = None + ErrorMessage: Optional[str] = None + PendingDeletion: Optional[bool] = None + +class CancelDomainConfigChangeRequestRequestTypeDef(BaseModel): + DomainName: str + DryRun: Optional[bool] = None + +class CancelledChangePropertyTypeDef(BaseModel): + PropertyName: Optional[str] = None + CancelledValue: Optional[str] = None + ActiveValue: Optional[str] = None + +class CancelElasticsearchServiceSoftwareUpdateRequestRequestTypeDef(BaseModel): + DomainName: str + +class ServiceSoftwareOptionsTypeDef(BaseModel): + CurrentVersion: Optional[str] = None + NewVersion: Optional[str] = None + UpdateAvailable: Optional[bool] = None + Cancellable: Optional[bool] = None + UpdateStatus: Optional[DeploymentStatusType] = None + Description: Optional[str] = None + AutomatedUpdateDate: Optional[datetime] = None + OptionalDeployment: Optional[bool] = None + +class ChangeProgressDetailsTypeDef(BaseModel): + ChangeId: Optional[str] = None + Message: Optional[str] = None + ConfigChangeStatus: Optional[ConfigChangeStatusType] = None + StartTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + InitiatedBy: Optional[InitiatedByType] = None + +class ChangeProgressStageTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + Description: Optional[str] = None + LastUpdated: Optional[datetime] = None + +class CognitoOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + UserPoolId: Optional[str] = None + IdentityPoolId: Optional[str] = None + RoleArn: Optional[str] = None + +class ColdStorageOptionsTypeDef(BaseModel): + Enabled: bool + +class CompatibleVersionsMapTypeDef(BaseModel): + SourceVersion: Optional[str] = None + TargetVersions: Optional[List[str]] = None + +class DomainEndpointOptionsTypeDef(BaseModel): + EnforceHTTPS: Optional[bool] = None + TLSSecurityPolicy: Optional[TLSSecurityPolicyType] = None + CustomEndpointEnabled: Optional[bool] = None + CustomEndpoint: Optional[str] = None + CustomEndpointCertificateArn: Optional[str] = None + +class EBSOptionsTypeDef(BaseModel): + EBSEnabled: Optional[bool] = None + VolumeType: Optional[VolumeTypeType] = None + VolumeSize: Optional[int] = None + Iops: Optional[int] = None + Throughput: Optional[int] = None + +class EncryptionAtRestOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + +class LogPublishingOptionTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[str] = None + Enabled: Optional[bool] = None + +class NodeToNodeEncryptionOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class SnapshotOptionsTypeDef(BaseModel): + AutomatedSnapshotStartHour: Optional[int] = None + +class VPCOptionsTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class DomainInformationTypeDef(BaseModel): + DomainName: str + OwnerId: Optional[str] = None + Region: Optional[str] = None + +class OutboundCrossClusterSearchConnectionStatusTypeDef(BaseModel): + StatusCode: Optional[OutboundCrossClusterSearchConnectionStatusCodeType] = None + Message: Optional[str] = None + +class PackageSourceTypeDef(BaseModel): + S3BucketName: Optional[str] = None + S3Key: Optional[str] = None + +class DeleteElasticsearchDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DeleteInboundCrossClusterSearchConnectionRequestRequestTypeDef(BaseModel): + CrossClusterSearchConnectionId: str + +class DeleteOutboundCrossClusterSearchConnectionRequestRequestTypeDef(BaseModel): + CrossClusterSearchConnectionId: str + +class DeletePackageRequestRequestTypeDef(BaseModel): + PackageID: str + +class DeleteVpcEndpointRequestRequestTypeDef(BaseModel): + VpcEndpointId: str + +class VpcEndpointSummaryTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcEndpointOwner: Optional[str] = None + DomainArn: Optional[str] = None + Status: Optional[VpcEndpointStatusType] = None + +class DescribeDomainAutoTunesRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeDomainChangeProgressRequestRequestTypeDef(BaseModel): + DomainName: str + ChangeId: Optional[str] = None + +class DescribeElasticsearchDomainConfigRequestRequestTypeDef(BaseModel): + DomainName: str + +class DescribeElasticsearchDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DescribeElasticsearchDomainsRequestRequestTypeDef(BaseModel): + DomainNames: Sequence[str] + +class DescribeElasticsearchInstanceTypeLimitsRequestRequestTypeDef(BaseModel): + InstanceType: ESPartitionInstanceTypeType + ElasticsearchVersion: str + DomainName: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class DescribePackagesFilterTypeDef(BaseModel): + Name: Optional[DescribePackagesFilterNameType] = None + Value: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeReservedElasticsearchInstanceOfferingsRequestRequestTypeDef(BaseModel): + ReservedElasticsearchInstanceOfferingId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeReservedElasticsearchInstancesRequestRequestTypeDef(BaseModel): + ReservedElasticsearchInstanceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointsRequestRequestTypeDef(BaseModel): + VpcEndpointIds: Sequence[str] + +class VpcEndpointErrorTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + ErrorCode: Optional[VpcEndpointErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class DissociatePackageRequestRequestTypeDef(BaseModel): + PackageID: str + DomainName: str + +class DomainInfoTypeDef(BaseModel): + DomainName: Optional[str] = None + EngineType: Optional[EngineTypeType] = None + +class ErrorDetailsTypeDef(BaseModel): + ErrorType: Optional[str] = None + ErrorMessage: Optional[str] = None + +class DryRunResultsTypeDef(BaseModel): + DeploymentType: Optional[str] = None + Message: Optional[str] = None + +class ZoneAwarenessConfigTypeDef(BaseModel): + AvailabilityZoneCount: Optional[int] = None + +class ModifyingPropertiesTypeDef(BaseModel): + Name: Optional[str] = None + ActiveValue: Optional[str] = None + PendingValue: Optional[str] = None + ValueType: Optional[PropertyValueTypeType] = None + +class VPCDerivedInfoTypeDef(BaseModel): + VPCId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + AvailabilityZones: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class GetCompatibleElasticsearchVersionsRequestRequestTypeDef(BaseModel): + DomainName: Optional[str] = None + +class GetPackageVersionHistoryRequestRequestTypeDef(BaseModel): + PackageID: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PackageVersionHistoryTypeDef(BaseModel): + PackageVersion: Optional[str] = None + CommitMessage: Optional[str] = None + CreatedAt: Optional[datetime] = None + +class GetUpgradeHistoryRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetUpgradeStatusRequestRequestTypeDef(BaseModel): + DomainName: str + +class InboundCrossClusterSearchConnectionStatusTypeDef(BaseModel): + StatusCode: Optional[InboundCrossClusterSearchConnectionStatusCodeType] = None + Message: Optional[str] = None + +class InstanceCountLimitsTypeDef(BaseModel): + MinimumInstanceCount: Optional[int] = None + MaximumInstanceCount: Optional[int] = None + +class ListDomainNamesRequestRequestTypeDef(BaseModel): + EngineType: Optional[EngineTypeType] = None + +class ListDomainsForPackageRequestRequestTypeDef(BaseModel): + PackageID: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListElasticsearchInstanceTypesRequestRequestTypeDef(BaseModel): + ElasticsearchVersion: str + DomainName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListElasticsearchVersionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPackagesForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + ARN: str + +class ListVpcEndpointAccessRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + +class ListVpcEndpointsForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + +class ListVpcEndpointsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class PurchaseReservedElasticsearchInstanceOfferingRequestRequestTypeDef(BaseModel): + ReservedElasticsearchInstanceOfferingId: str + ReservationName: str + InstanceCount: Optional[int] = None + +class RecurringChargeTypeDef(BaseModel): + RecurringChargeAmount: Optional[float] = None + RecurringChargeFrequency: Optional[str] = None + +class RejectInboundCrossClusterSearchConnectionRequestRequestTypeDef(BaseModel): + CrossClusterSearchConnectionId: str + +class RemoveTagsRequestRequestTypeDef(BaseModel): + ARN: str + TagKeys: Sequence[str] + +class RevokeVpcEndpointAccessRequestRequestTypeDef(BaseModel): + DomainName: str + Account: str + +class SAMLIdpTypeDef(BaseModel): + MetadataContent: str + EntityId: str + +class StartElasticsearchServiceSoftwareUpdateRequestRequestTypeDef(BaseModel): + DomainName: str + +class StorageTypeLimitTypeDef(BaseModel): + LimitName: Optional[str] = None + LimitValues: Optional[List[str]] = None + +class UpgradeElasticsearchDomainRequestRequestTypeDef(BaseModel): + DomainName: str + TargetVersion: str + PerformCheckOnly: Optional[bool] = None + +class UpgradeStepItemTypeDef(BaseModel): + UpgradeStep: Optional[UpgradeStepType] = None + UpgradeStepStatus: Optional[UpgradeStatusType] = None + Issues: Optional[List[str]] = None + ProgressPercent: Optional[float] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetUpgradeStatusResponseTypeDef(BaseModel): + UpgradeStep: UpgradeStepType + StepStatus: UpgradeStatusType + UpgradeName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListElasticsearchInstanceTypesResponseTypeDef(BaseModel): + ElasticsearchInstanceTypes: List[ESPartitionInstanceTypeType] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListElasticsearchVersionsResponseTypeDef(BaseModel): + ElasticsearchVersions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PurchaseReservedElasticsearchInstanceOfferingResponseTypeDef(BaseModel): + ReservedElasticsearchInstanceId: str + ReservationName: str + ResponseMetadata: ResponseMetadataTypeDef + +class AccessPoliciesStatusTypeDef(BaseModel): + Options: str + Status: OptionStatusTypeDef + +class AdvancedOptionsStatusTypeDef(BaseModel): + Options: Dict[str, str] + Status: OptionStatusTypeDef + +class ElasticsearchVersionStatusTypeDef(BaseModel): + Options: str + Status: OptionStatusTypeDef + +class AddTagsRequestRequestTypeDef(BaseModel): + ARN: str + TagList: Sequence[TagTypeDef] + +class ListTagsResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizeVpcEndpointAccessResponseTypeDef(BaseModel): + AuthorizedPrincipal: AuthorizedPrincipalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointAccessResponseTypeDef(BaseModel): + AuthorizedPrincipalList: List[AuthorizedPrincipalTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AutoTuneDetailsTypeDef(BaseModel): + ScheduledAutoTuneDetails: Optional[ScheduledAutoTuneDetailsTypeDef] = None + +class AutoTuneMaintenanceScheduleOutputTypeDef(BaseModel): + StartAt: Optional[datetime] = None + Duration: Optional[DurationTypeDef] = None + CronExpressionForRecurrence: Optional[str] = None + +class AutoTuneMaintenanceScheduleTypeDef(BaseModel): + StartAt: Optional[TimestampTypeDef] = None + Duration: Optional[DurationTypeDef] = None + CronExpressionForRecurrence: Optional[str] = None + +class CancelDomainConfigChangeResponseTypeDef(BaseModel): + DryRun: bool + CancelledChangeIds: List[str] + CancelledChangeProperties: List[CancelledChangePropertyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CancelElasticsearchServiceSoftwareUpdateResponseTypeDef(BaseModel): + ServiceSoftwareOptions: ServiceSoftwareOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartElasticsearchServiceSoftwareUpdateResponseTypeDef(BaseModel): + ServiceSoftwareOptions: ServiceSoftwareOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpgradeElasticsearchDomainResponseTypeDef(BaseModel): + DomainName: str + TargetVersion: str + PerformCheckOnly: bool + ChangeProgressDetails: ChangeProgressDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeProgressStatusDetailsTypeDef(BaseModel): + ChangeId: Optional[str] = None + StartTime: Optional[datetime] = None + Status: Optional[OverallChangeStatusType] = None + PendingProperties: Optional[List[str]] = None + CompletedProperties: Optional[List[str]] = None + TotalNumberOfStages: Optional[int] = None + ChangeProgressStages: Optional[List[ChangeProgressStageTypeDef]] = None + ConfigChangeStatus: Optional[ConfigChangeStatusType] = None + LastUpdatedTime: Optional[datetime] = None + InitiatedBy: Optional[InitiatedByType] = None + +class CognitoOptionsStatusTypeDef(BaseModel): + Options: CognitoOptionsTypeDef + Status: OptionStatusTypeDef + +class GetCompatibleElasticsearchVersionsResponseTypeDef(BaseModel): + CompatibleElasticsearchVersions: List[CompatibleVersionsMapTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DomainEndpointOptionsStatusTypeDef(BaseModel): + Options: DomainEndpointOptionsTypeDef + Status: OptionStatusTypeDef + +class EBSOptionsStatusTypeDef(BaseModel): + Options: EBSOptionsTypeDef + Status: OptionStatusTypeDef + +class EncryptionAtRestOptionsStatusTypeDef(BaseModel): + Options: EncryptionAtRestOptionsTypeDef + Status: OptionStatusTypeDef + +class LogPublishingOptionsStatusTypeDef(BaseModel): + Options: Optional[Dict[LogTypeType, LogPublishingOptionTypeDef]] = None + Status: Optional[OptionStatusTypeDef] = None + +class NodeToNodeEncryptionOptionsStatusTypeDef(BaseModel): + Options: NodeToNodeEncryptionOptionsTypeDef + Status: OptionStatusTypeDef + +class SnapshotOptionsStatusTypeDef(BaseModel): + Options: SnapshotOptionsTypeDef + Status: OptionStatusTypeDef + +class CreateVpcEndpointRequestRequestTypeDef(BaseModel): + DomainArn: str + VpcOptions: VPCOptionsTypeDef + ClientToken: Optional[str] = None + +class UpdateVpcEndpointRequestRequestTypeDef(BaseModel): + VpcEndpointId: str + VpcOptions: VPCOptionsTypeDef + +class CreateOutboundCrossClusterSearchConnectionRequestRequestTypeDef(BaseModel): + SourceDomainInfo: DomainInformationTypeDef + DestinationDomainInfo: DomainInformationTypeDef + ConnectionAlias: str + +class CreateOutboundCrossClusterSearchConnectionResponseTypeDef(BaseModel): + SourceDomainInfo: DomainInformationTypeDef + DestinationDomainInfo: DomainInformationTypeDef + ConnectionAlias: str + ConnectionStatus: OutboundCrossClusterSearchConnectionStatusTypeDef + CrossClusterSearchConnectionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class OutboundCrossClusterSearchConnectionTypeDef(BaseModel): + SourceDomainInfo: Optional[DomainInformationTypeDef] = None + DestinationDomainInfo: Optional[DomainInformationTypeDef] = None + CrossClusterSearchConnectionId: Optional[str] = None + ConnectionAlias: Optional[str] = None + ConnectionStatus: Optional[OutboundCrossClusterSearchConnectionStatusTypeDef] = None + +class CreatePackageRequestRequestTypeDef(BaseModel): + PackageName: str + PackageType: Literal["TXT-DICTIONARY"] + PackageSource: PackageSourceTypeDef + PackageDescription: Optional[str] = None + +class UpdatePackageRequestRequestTypeDef(BaseModel): + PackageID: str + PackageSource: PackageSourceTypeDef + PackageDescription: Optional[str] = None + CommitMessage: Optional[str] = None + +class DeleteVpcEndpointResponseTypeDef(BaseModel): + VpcEndpointSummary: VpcEndpointSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointsForDomainResponseTypeDef(BaseModel): + VpcEndpointSummaryList: List[VpcEndpointSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointsResponseTypeDef(BaseModel): + VpcEndpointSummaryList: List[VpcEndpointSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInboundCrossClusterSearchConnectionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeOutboundCrossClusterSearchConnectionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribePackagesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[DescribePackagesFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeReservedElasticsearchInstanceOfferingsRequestDescribeReservedElasticsearchInstanceOfferingsPaginateTypeDef(BaseModel): + ReservedElasticsearchInstanceOfferingId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedElasticsearchInstancesRequestDescribeReservedElasticsearchInstancesPaginateTypeDef(BaseModel): + ReservedElasticsearchInstanceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetUpgradeHistoryRequestGetUpgradeHistoryPaginateTypeDef(BaseModel): + DomainName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListElasticsearchInstanceTypesRequestListElasticsearchInstanceTypesPaginateTypeDef(BaseModel): + ElasticsearchVersion: str + DomainName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListElasticsearchVersionsRequestListElasticsearchVersionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainNamesResponseTypeDef(BaseModel): + DomainNames: List[DomainInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DomainPackageDetailsTypeDef(BaseModel): + PackageID: Optional[str] = None + PackageName: Optional[str] = None + PackageType: Optional[Literal["TXT-DICTIONARY"]] = None + LastUpdated: Optional[datetime] = None + DomainName: Optional[str] = None + DomainPackageStatus: Optional[DomainPackageStatusType] = None + PackageVersion: Optional[str] = None + ReferencePath: Optional[str] = None + ErrorDetails: Optional[ErrorDetailsTypeDef] = None + +class PackageDetailsTypeDef(BaseModel): + PackageID: Optional[str] = None + PackageName: Optional[str] = None + PackageType: Optional[Literal["TXT-DICTIONARY"]] = None + PackageDescription: Optional[str] = None + PackageStatus: Optional[PackageStatusType] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + AvailablePackageVersion: Optional[str] = None + ErrorDetails: Optional[ErrorDetailsTypeDef] = None + +class ElasticsearchClusterConfigTypeDef(BaseModel): + InstanceType: Optional[ESPartitionInstanceTypeType] = None + InstanceCount: Optional[int] = None + DedicatedMasterEnabled: Optional[bool] = None + ZoneAwarenessEnabled: Optional[bool] = None + ZoneAwarenessConfig: Optional[ZoneAwarenessConfigTypeDef] = None + DedicatedMasterType: Optional[ESPartitionInstanceTypeType] = None + DedicatedMasterCount: Optional[int] = None + WarmEnabled: Optional[bool] = None + WarmType: Optional[ESWarmPartitionInstanceTypeType] = None + WarmCount: Optional[int] = None + ColdStorageOptions: Optional[ColdStorageOptionsTypeDef] = None + +class VPCDerivedInfoStatusTypeDef(BaseModel): + Options: VPCDerivedInfoTypeDef + Status: OptionStatusTypeDef + +class VpcEndpointTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcEndpointOwner: Optional[str] = None + DomainArn: Optional[str] = None + VpcOptions: Optional[VPCDerivedInfoTypeDef] = None + Status: Optional[VpcEndpointStatusType] = None + Endpoint: Optional[str] = None + +class GetPackageVersionHistoryResponseTypeDef(BaseModel): + PackageID: str + PackageVersionHistoryList: List[PackageVersionHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InboundCrossClusterSearchConnectionTypeDef(BaseModel): + SourceDomainInfo: Optional[DomainInformationTypeDef] = None + DestinationDomainInfo: Optional[DomainInformationTypeDef] = None + CrossClusterSearchConnectionId: Optional[str] = None + ConnectionStatus: Optional[InboundCrossClusterSearchConnectionStatusTypeDef] = None + +class InstanceLimitsTypeDef(BaseModel): + InstanceCountLimits: Optional[InstanceCountLimitsTypeDef] = None + +class ReservedElasticsearchInstanceOfferingTypeDef(BaseModel): + ReservedElasticsearchInstanceOfferingId: Optional[str] = None + ElasticsearchInstanceType: Optional[ESPartitionInstanceTypeType] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + PaymentOption: Optional[ReservedElasticsearchInstancePaymentOptionType] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class ReservedElasticsearchInstanceTypeDef(BaseModel): + ReservationName: Optional[str] = None + ReservedElasticsearchInstanceId: Optional[str] = None + ReservedElasticsearchInstanceOfferingId: Optional[str] = None + ElasticsearchInstanceType: Optional[ESPartitionInstanceTypeType] = None + StartTime: Optional[datetime] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + ElasticsearchInstanceCount: Optional[int] = None + State: Optional[str] = None + PaymentOption: Optional[ReservedElasticsearchInstancePaymentOptionType] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class SAMLOptionsInputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Idp: Optional[SAMLIdpTypeDef] = None + MasterUserName: Optional[str] = None + MasterBackendRole: Optional[str] = None + SubjectKey: Optional[str] = None + RolesKey: Optional[str] = None + SessionTimeoutMinutes: Optional[int] = None + +class SAMLOptionsOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Idp: Optional[SAMLIdpTypeDef] = None + SubjectKey: Optional[str] = None + RolesKey: Optional[str] = None + SessionTimeoutMinutes: Optional[int] = None + +class StorageTypeTypeDef(BaseModel): + StorageTypeName: Optional[str] = None + StorageSubTypeName: Optional[str] = None + StorageTypeLimits: Optional[List[StorageTypeLimitTypeDef]] = None + +class UpgradeHistoryTypeDef(BaseModel): + UpgradeName: Optional[str] = None + StartTimestamp: Optional[datetime] = None + UpgradeStatus: Optional[UpgradeStatusType] = None + StepsList: Optional[List[UpgradeStepItemTypeDef]] = None + +class AutoTuneTypeDef(BaseModel): + AutoTuneType: Optional[Literal["SCHEDULED_ACTION"]] = None + AutoTuneDetails: Optional[AutoTuneDetailsTypeDef] = None + +class AutoTuneOptionsExtraOutputTypeDef(BaseModel): + DesiredState: Optional[AutoTuneDesiredStateType] = None + RollbackOnDisable: Optional[RollbackOnDisableType] = None + MaintenanceSchedules: Optional[List[AutoTuneMaintenanceScheduleOutputTypeDef]] = None + +class AutoTuneOptionsInputTypeDef(BaseModel): + DesiredState: Optional[AutoTuneDesiredStateType] = None + MaintenanceSchedules: Optional[Sequence[AutoTuneMaintenanceScheduleTypeDef]] = None + +class AutoTuneOptionsTypeDef(BaseModel): + DesiredState: Optional[AutoTuneDesiredStateType] = None + RollbackOnDisable: Optional[RollbackOnDisableType] = None + MaintenanceSchedules: Optional[Sequence[AutoTuneMaintenanceScheduleTypeDef]] = None + +class DescribeDomainChangeProgressResponseTypeDef(BaseModel): + ChangeProgressStatus: ChangeProgressStatusDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteOutboundCrossClusterSearchConnectionResponseTypeDef(BaseModel): + CrossClusterSearchConnection: OutboundCrossClusterSearchConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOutboundCrossClusterSearchConnectionsResponseTypeDef(BaseModel): + CrossClusterSearchConnections: List[OutboundCrossClusterSearchConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociatePackageResponseTypeDef(BaseModel): + DomainPackageDetails: DomainPackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DissociatePackageResponseTypeDef(BaseModel): + DomainPackageDetails: DomainPackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsForPackageResponseTypeDef(BaseModel): + DomainPackageDetailsList: List[DomainPackageDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPackagesForDomainResponseTypeDef(BaseModel): + DomainPackageDetailsList: List[DomainPackageDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreatePackageResponseTypeDef(BaseModel): + PackageDetails: PackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePackageResponseTypeDef(BaseModel): + PackageDetails: PackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackagesResponseTypeDef(BaseModel): + PackageDetailsList: List[PackageDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdatePackageResponseTypeDef(BaseModel): + PackageDetails: PackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ElasticsearchClusterConfigStatusTypeDef(BaseModel): + Options: ElasticsearchClusterConfigTypeDef + Status: OptionStatusTypeDef + +class CreateVpcEndpointResponseTypeDef(BaseModel): + VpcEndpoint: VpcEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcEndpointsResponseTypeDef(BaseModel): + VpcEndpoints: List[VpcEndpointTypeDef] + VpcEndpointErrors: List[VpcEndpointErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVpcEndpointResponseTypeDef(BaseModel): + VpcEndpoint: VpcEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptInboundCrossClusterSearchConnectionResponseTypeDef(BaseModel): + CrossClusterSearchConnection: InboundCrossClusterSearchConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInboundCrossClusterSearchConnectionResponseTypeDef(BaseModel): + CrossClusterSearchConnection: InboundCrossClusterSearchConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInboundCrossClusterSearchConnectionsResponseTypeDef(BaseModel): + CrossClusterSearchConnections: List[InboundCrossClusterSearchConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RejectInboundCrossClusterSearchConnectionResponseTypeDef(BaseModel): + CrossClusterSearchConnection: InboundCrossClusterSearchConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReservedElasticsearchInstanceOfferingsResponseTypeDef(BaseModel): + ReservedElasticsearchInstanceOfferings: List[ ReservedElasticsearchInstanceOfferingTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReservedElasticsearchInstancesResponseTypeDef(BaseModel): + ReservedElasticsearchInstances: List[ReservedElasticsearchInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AdvancedSecurityOptionsInputTypeDef(BaseModel): + Enabled: Optional[bool] = None + InternalUserDatabaseEnabled: Optional[bool] = None + MasterUserOptions: Optional[MasterUserOptionsTypeDef] = None + SAMLOptions: Optional[SAMLOptionsInputTypeDef] = None + AnonymousAuthEnabled: Optional[bool] = None + +class AdvancedSecurityOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + InternalUserDatabaseEnabled: Optional[bool] = None + SAMLOptions: Optional[SAMLOptionsOutputTypeDef] = None + AnonymousAuthDisableDate: Optional[datetime] = None + AnonymousAuthEnabled: Optional[bool] = None + +class LimitsTypeDef(BaseModel): + StorageTypes: Optional[List[StorageTypeTypeDef]] = None + InstanceLimits: Optional[InstanceLimitsTypeDef] = None + AdditionalLimits: Optional[List[AdditionalLimitTypeDef]] = None + +class GetUpgradeHistoryResponseTypeDef(BaseModel): + UpgradeHistories: List[UpgradeHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeDomainAutoTunesResponseTypeDef(BaseModel): + AutoTunes: List[AutoTuneTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AutoTuneOptionsStatusTypeDef(BaseModel): + Options: Optional[AutoTuneOptionsExtraOutputTypeDef] = None + Status: Optional[AutoTuneStatusTypeDef] = None + +class CreateElasticsearchDomainRequestRequestTypeDef(BaseModel): + DomainName: str + ElasticsearchVersion: Optional[str] = None + ElasticsearchClusterConfig: Optional[ElasticsearchClusterConfigTypeDef] = None + EBSOptions: Optional[EBSOptionsTypeDef] = None + AccessPolicies: Optional[str] = None + SnapshotOptions: Optional[SnapshotOptionsTypeDef] = None + VPCOptions: Optional[VPCOptionsTypeDef] = None + CognitoOptions: Optional[CognitoOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsTypeDef] = None + AdvancedOptions: Optional[Mapping[str, str]] = None + LogPublishingOptions: Optional[Mapping[LogTypeType, LogPublishingOptionTypeDef]] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsInputTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsInputTypeDef] = None + TagList: Optional[Sequence[TagTypeDef]] = None + +class UpdateElasticsearchDomainConfigRequestRequestTypeDef(BaseModel): + DomainName: str + ElasticsearchClusterConfig: Optional[ElasticsearchClusterConfigTypeDef] = None + EBSOptions: Optional[EBSOptionsTypeDef] = None + SnapshotOptions: Optional[SnapshotOptionsTypeDef] = None + VPCOptions: Optional[VPCOptionsTypeDef] = None + CognitoOptions: Optional[CognitoOptionsTypeDef] = None + AdvancedOptions: Optional[Mapping[str, str]] = None + AccessPolicies: Optional[str] = None + LogPublishingOptions: Optional[Mapping[LogTypeType, LogPublishingOptionTypeDef]] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsInputTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsTypeDef] = None + DryRun: Optional[bool] = None + +class AdvancedSecurityOptionsStatusTypeDef(BaseModel): + Options: AdvancedSecurityOptionsTypeDef + Status: OptionStatusTypeDef + +class ElasticsearchDomainStatusTypeDef(BaseModel): + DomainId: str + DomainName: str + ARN: str + ElasticsearchClusterConfig: ElasticsearchClusterConfigTypeDef + Created: Optional[bool] = None + Deleted: Optional[bool] = None + Endpoint: Optional[str] = None + Endpoints: Optional[Dict[str, str]] = None + Processing: Optional[bool] = None + UpgradeProcessing: Optional[bool] = None + ElasticsearchVersion: Optional[str] = None + EBSOptions: Optional[EBSOptionsTypeDef] = None + AccessPolicies: Optional[str] = None + SnapshotOptions: Optional[SnapshotOptionsTypeDef] = None + VPCOptions: Optional[VPCDerivedInfoTypeDef] = None + CognitoOptions: Optional[CognitoOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsTypeDef] = None + AdvancedOptions: Optional[Dict[str, str]] = None + LogPublishingOptions: Optional[Dict[LogTypeType, LogPublishingOptionTypeDef]] = None + ServiceSoftwareOptions: Optional[ServiceSoftwareOptionsTypeDef] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsOutputTypeDef] = None + ChangeProgressDetails: Optional[ChangeProgressDetailsTypeDef] = None + DomainProcessingStatus: Optional[DomainProcessingStatusTypeType] = None + ModifyingProperties: Optional[List[ModifyingPropertiesTypeDef]] = None + +class DescribeElasticsearchInstanceTypeLimitsResponseTypeDef(BaseModel): + LimitsByRole: Dict[str, LimitsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ElasticsearchDomainConfigTypeDef(BaseModel): + ElasticsearchVersion: Optional[ElasticsearchVersionStatusTypeDef] = None + ElasticsearchClusterConfig: Optional[ElasticsearchClusterConfigStatusTypeDef] = None + EBSOptions: Optional[EBSOptionsStatusTypeDef] = None + AccessPolicies: Optional[AccessPoliciesStatusTypeDef] = None + SnapshotOptions: Optional[SnapshotOptionsStatusTypeDef] = None + VPCOptions: Optional[VPCDerivedInfoStatusTypeDef] = None + CognitoOptions: Optional[CognitoOptionsStatusTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsStatusTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsStatusTypeDef] = None + AdvancedOptions: Optional[AdvancedOptionsStatusTypeDef] = None + LogPublishingOptions: Optional[LogPublishingOptionsStatusTypeDef] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsStatusTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsStatusTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsStatusTypeDef] = None + ChangeProgressDetails: Optional[ChangeProgressDetailsTypeDef] = None + ModifyingProperties: Optional[List[ModifyingPropertiesTypeDef]] = None + +class CreateElasticsearchDomainResponseTypeDef(BaseModel): + DomainStatus: ElasticsearchDomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteElasticsearchDomainResponseTypeDef(BaseModel): + DomainStatus: ElasticsearchDomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeElasticsearchDomainResponseTypeDef(BaseModel): + DomainStatus: ElasticsearchDomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeElasticsearchDomainsResponseTypeDef(BaseModel): + DomainStatusList: List[ElasticsearchDomainStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeElasticsearchDomainConfigResponseTypeDef(BaseModel): + DomainConfig: ElasticsearchDomainConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateElasticsearchDomainConfigResponseTypeDef(BaseModel): + DomainConfig: ElasticsearchDomainConfigTypeDef + DryRunResults: DryRunResultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/es_constants.py b/aws_resource_validator/pydantic_models/es_constants.py new file mode 100644 index 00000000..60a5ae33 --- /dev/null +++ b/aws_resource_validator/pydantic_models/es_constants.py @@ -0,0 +1,565 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AutoTuneDesiredStateType = Literal["DISABLED", "ENABLED"] +AutoTuneStateType = Literal["DISABLED", + "DISABLED_AND_ROLLBACK_COMPLETE", + "DISABLED_AND_ROLLBACK_ERROR", + "DISABLED_AND_ROLLBACK_IN_PROGRESS", + "DISABLED_AND_ROLLBACK_SCHEDULED", + "DISABLE_IN_PROGRESS", + "ENABLED", + "ENABLE_IN_PROGRESS", + "ERROR",] +AutoTuneTypeType = Literal["SCHEDULED_ACTION"] +ConfigChangeStatusType = Literal["ApplyingChanges", + "Cancelled", + "Completed", + "Initializing", + "Pending", + "PendingUserInput", + "Validating", + "ValidationFailed",] +DeploymentStatusType = Literal["COMPLETED", "ELIGIBLE", "IN_PROGRESS", "NOT_ELIGIBLE", "PENDING_UPDATE"] +DescribePackagesFilterNameType = Literal["PackageID", "PackageName", "PackageStatus"] +DescribeReservedElasticsearchInstanceOfferingsPaginatorName = Literal["describe_reserved_elasticsearch_instance_offerings"] +DescribeReservedElasticsearchInstancesPaginatorName = Literal["describe_reserved_elasticsearch_instances"] +DomainPackageStatusType = Literal["ACTIVE", "ASSOCIATING", "ASSOCIATION_FAILED", "DISSOCIATING", "DISSOCIATION_FAILED"] +DomainProcessingStatusTypeType = Literal["Active", + "Creating", + "Deleting", + "Isolated", + "Modifying", + "UpdatingServiceSoftware", + "UpgradingEngineVersion",] +ESPartitionInstanceTypeType = Literal["c4.2xlarge.elasticsearch", + "c4.4xlarge.elasticsearch", + "c4.8xlarge.elasticsearch", + "c4.large.elasticsearch", + "c4.xlarge.elasticsearch", + "c5.18xlarge.elasticsearch", + "c5.2xlarge.elasticsearch", + "c5.4xlarge.elasticsearch", + "c5.9xlarge.elasticsearch", + "c5.large.elasticsearch", + "c5.xlarge.elasticsearch", + "d2.2xlarge.elasticsearch", + "d2.4xlarge.elasticsearch", + "d2.8xlarge.elasticsearch", + "d2.xlarge.elasticsearch", + "i2.2xlarge.elasticsearch", + "i2.xlarge.elasticsearch", + "i3.16xlarge.elasticsearch", + "i3.2xlarge.elasticsearch", + "i3.4xlarge.elasticsearch", + "i3.8xlarge.elasticsearch", + "i3.large.elasticsearch", + "i3.xlarge.elasticsearch", + "m3.2xlarge.elasticsearch", + "m3.large.elasticsearch", + "m3.medium.elasticsearch", + "m3.xlarge.elasticsearch", + "m4.10xlarge.elasticsearch", + "m4.2xlarge.elasticsearch", + "m4.4xlarge.elasticsearch", + "m4.large.elasticsearch", + "m4.xlarge.elasticsearch", + "m5.12xlarge.elasticsearch", + "m5.2xlarge.elasticsearch", + "m5.4xlarge.elasticsearch", + "m5.large.elasticsearch", + "m5.xlarge.elasticsearch", + "r3.2xlarge.elasticsearch", + "r3.4xlarge.elasticsearch", + "r3.8xlarge.elasticsearch", + "r3.large.elasticsearch", + "r3.xlarge.elasticsearch", + "r4.16xlarge.elasticsearch", + "r4.2xlarge.elasticsearch", + "r4.4xlarge.elasticsearch", + "r4.8xlarge.elasticsearch", + "r4.large.elasticsearch", + "r4.xlarge.elasticsearch", + "r5.12xlarge.elasticsearch", + "r5.2xlarge.elasticsearch", + "r5.4xlarge.elasticsearch", + "r5.large.elasticsearch", + "r5.xlarge.elasticsearch", + "t2.medium.elasticsearch", + "t2.micro.elasticsearch", + "t2.small.elasticsearch", + "ultrawarm1.large.elasticsearch", + "ultrawarm1.medium.elasticsearch",] +ESWarmPartitionInstanceTypeType = Literal["ultrawarm1.large.elasticsearch", "ultrawarm1.medium.elasticsearch"] +EngineTypeType = Literal["Elasticsearch", "OpenSearch"] +GetUpgradeHistoryPaginatorName = Literal["get_upgrade_history"] +InboundCrossClusterSearchConnectionStatusCodeType = Literal["APPROVED", "DELETED", "DELETING", "PENDING_ACCEPTANCE", "REJECTED", "REJECTING"] +InitiatedByType = Literal["CUSTOMER", "SERVICE"] +ListElasticsearchInstanceTypesPaginatorName = Literal["list_elasticsearch_instance_types"] +ListElasticsearchVersionsPaginatorName = Literal["list_elasticsearch_versions"] +LogTypeType = Literal["AUDIT_LOGS", "ES_APPLICATION_LOGS", "INDEX_SLOW_LOGS", "SEARCH_SLOW_LOGS"] +OptionStateType = Literal["Active", "Processing", "RequiresIndexDocuments"] +OutboundCrossClusterSearchConnectionStatusCodeType = Literal["ACTIVE", + "DELETED", + "DELETING", + "PENDING_ACCEPTANCE", + "PROVISIONING", + "REJECTED", + "VALIDATING", + "VALIDATION_FAILED",] +OverallChangeStatusType = Literal["COMPLETED", "FAILED", "PENDING", "PROCESSING"] +PackageStatusType = Literal["AVAILABLE", + "COPYING", + "COPY_FAILED", + "DELETED", + "DELETE_FAILED", + "DELETING", + "VALIDATING", + "VALIDATION_FAILED",] +PackageTypeType = Literal["TXT-DICTIONARY"] +PrincipalTypeType = Literal["AWS_ACCOUNT", "AWS_SERVICE"] +PropertyValueTypeType = Literal["PLAIN_TEXT", "STRINGIFIED_JSON"] +ReservedElasticsearchInstancePaymentOptionType = Literal["ALL_UPFRONT", "NO_UPFRONT", "PARTIAL_UPFRONT"] +RollbackOnDisableType = Literal["DEFAULT_ROLLBACK", "NO_ROLLBACK"] +ScheduledAutoTuneActionTypeType = Literal["JVM_HEAP_SIZE_TUNING", "JVM_YOUNG_GEN_TUNING"] +ScheduledAutoTuneSeverityTypeType = Literal["HIGH", "LOW", "MEDIUM"] +TLSSecurityPolicyType = Literal["Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07", "Policy-Min-TLS-1-2-PFS-2023-10"] +TimeUnitType = Literal["HOURS"] +UpgradeStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED", "SUCCEEDED_WITH_ISSUES"] +UpgradeStepType = Literal["PRE_UPGRADE_CHECK", "SNAPSHOT", "UPGRADE"] +VolumeTypeType = Literal["gp2", "gp3", "io1", "standard"] +VpcEndpointErrorCodeType = Literal["ENDPOINT_NOT_FOUND", "SERVER_ERROR"] +VpcEndpointStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +ElasticsearchServiceServiceName = Literal["es"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_reserved_elasticsearch_instance_offerings", + "describe_reserved_elasticsearch_instances", + "get_upgrade_history", + "list_elasticsearch_instance_types", + "list_elasticsearch_versions",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AutoTuneOptionsUnionTypeDef = Union['AutoTuneOptionsTypeDef', 'AutoTuneOptionsExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/events_classes.py b/aws_resource_validator/pydantic_models/events_classes.py new file mode 100644 index 00000000..de1cc24a --- /dev/null +++ b/aws_resource_validator/pydantic_models/events_classes.py @@ -0,0 +1,1158 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.events_constants import * + +class ActivateEventSourceRequestRequestTypeDef(BaseModel): + Name: str + +class ApiDestinationTypeDef(BaseModel): + ApiDestinationArn: Optional[str] = None + Name: Optional[str] = None + ApiDestinationState: Optional[ApiDestinationStateType] = None + ConnectionArn: Optional[str] = None + InvocationEndpoint: Optional[str] = None + HttpMethod: Optional[ApiDestinationHttpMethodType] = None + InvocationRateLimitPerSecond: Optional[int] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class AppSyncParametersTypeDef(BaseModel): + GraphQLOperation: Optional[str] = None + +class ArchiveTypeDef(BaseModel): + ArchiveName: Optional[str] = None + EventSourceArn: Optional[str] = None + State: Optional[ArchiveStateType] = None + StateReason: Optional[str] = None + RetentionDays: Optional[int] = None + SizeBytes: Optional[int] = None + EventCount: Optional[int] = None + CreationTime: Optional[datetime] = None + +class AwsVpcConfigurationExtraOutputTypeDef(BaseModel): + Subnets: List[str] + SecurityGroups: Optional[List[str]] = None + AssignPublicIp: Optional[AssignPublicIpType] = None + +class AwsVpcConfigurationOutputTypeDef(BaseModel): + Subnets: List[str] + SecurityGroups: Optional[List[str]] = None + AssignPublicIp: Optional[AssignPublicIpType] = None + +class AwsVpcConfigurationTypeDef(BaseModel): + Subnets: Sequence[str] + SecurityGroups: Optional[Sequence[str]] = None + AssignPublicIp: Optional[AssignPublicIpType] = None + +class BatchArrayPropertiesTypeDef(BaseModel): + Size: Optional[int] = None + +class BatchRetryStrategyTypeDef(BaseModel): + Attempts: Optional[int] = None + +class CancelReplayRequestRequestTypeDef(BaseModel): + ReplayName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CapacityProviderStrategyItemTypeDef(BaseModel): + capacityProvider: str + weight: Optional[int] = None + base: Optional[int] = None + +class ConditionTypeDef(BaseModel): + Type: str + Key: str + Value: str + +class ConnectionApiKeyAuthResponseParametersTypeDef(BaseModel): + ApiKeyName: Optional[str] = None + +class ConnectionBasicAuthResponseParametersTypeDef(BaseModel): + Username: Optional[str] = None + +class ConnectionBodyParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + IsValueSecret: Optional[bool] = None + +class ConnectionHeaderParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + IsValueSecret: Optional[bool] = None + +class ConnectionQueryStringParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + IsValueSecret: Optional[bool] = None + +class ConnectionOAuthClientResponseParametersTypeDef(BaseModel): + ClientID: Optional[str] = None + +class ConnectionTypeDef(BaseModel): + ConnectionArn: Optional[str] = None + Name: Optional[str] = None + ConnectionState: Optional[ConnectionStateType] = None + StateReason: Optional[str] = None + AuthorizationType: Optional[ConnectionAuthorizationTypeType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LastAuthorizedTime: Optional[datetime] = None + +class CreateApiDestinationRequestRequestTypeDef(BaseModel): + Name: str + ConnectionArn: str + InvocationEndpoint: str + HttpMethod: ApiDestinationHttpMethodType + Description: Optional[str] = None + InvocationRateLimitPerSecond: Optional[int] = None + +class CreateArchiveRequestRequestTypeDef(BaseModel): + ArchiveName: str + EventSourceArn: str + Description: Optional[str] = None + EventPattern: Optional[str] = None + RetentionDays: Optional[int] = None + +class CreateConnectionApiKeyAuthRequestParametersTypeDef(BaseModel): + ApiKeyName: str + ApiKeyValue: str + +class CreateConnectionBasicAuthRequestParametersTypeDef(BaseModel): + Username: str + Password: str + +class CreateConnectionOAuthClientRequestParametersTypeDef(BaseModel): + ClientID: str + ClientSecret: str + +class EndpointEventBusTypeDef(BaseModel): + EventBusArn: str + +class ReplicationConfigTypeDef(BaseModel): + State: Optional[ReplicationStateType] = None + +class DeadLetterConfigTypeDef(BaseModel): + Arn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreatePartnerEventSourceRequestRequestTypeDef(BaseModel): + Name: str + Account: str + +class DeactivateEventSourceRequestRequestTypeDef(BaseModel): + Name: str + +class DeauthorizeConnectionRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteApiDestinationRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteArchiveRequestRequestTypeDef(BaseModel): + ArchiveName: str + +class DeleteConnectionRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteEndpointRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteEventBusRequestRequestTypeDef(BaseModel): + Name: str + +class DeletePartnerEventSourceRequestRequestTypeDef(BaseModel): + Name: str + Account: str + +class DeleteRuleRequestRequestTypeDef(BaseModel): + Name: str + EventBusName: Optional[str] = None + Force: Optional[bool] = None + +class DescribeApiDestinationRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeArchiveRequestRequestTypeDef(BaseModel): + ArchiveName: str + +class DescribeConnectionRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeEndpointRequestRequestTypeDef(BaseModel): + Name: str + HomeRegion: Optional[str] = None + +class DescribeEventBusRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + +class DescribeEventSourceRequestRequestTypeDef(BaseModel): + Name: str + +class DescribePartnerEventSourceRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeReplayRequestRequestTypeDef(BaseModel): + ReplayName: str + +class ReplayDestinationOutputTypeDef(BaseModel): + Arn: str + FilterArns: Optional[List[str]] = None + +class DescribeRuleRequestRequestTypeDef(BaseModel): + Name: str + EventBusName: Optional[str] = None + +class DisableRuleRequestRequestTypeDef(BaseModel): + Name: str + EventBusName: Optional[str] = None + +class PlacementConstraintTypeDef(BaseModel): + type: Optional[PlacementConstraintTypeType] = None + expression: Optional[str] = None + +class PlacementStrategyTypeDef(BaseModel): + type: Optional[PlacementStrategyTypeType] = None + field: Optional[str] = None + +class EnableRuleRequestRequestTypeDef(BaseModel): + Name: str + EventBusName: Optional[str] = None + +class EventBusTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Description: Optional[str] = None + Policy: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class EventSourceTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedBy: Optional[str] = None + CreationTime: Optional[datetime] = None + ExpirationTime: Optional[datetime] = None + Name: Optional[str] = None + State: Optional[EventSourceStateType] = None + +class PrimaryTypeDef(BaseModel): + HealthCheck: str + +class SecondaryTypeDef(BaseModel): + Route: str + +class HttpParametersExtraOutputTypeDef(BaseModel): + PathParameterValues: Optional[List[str]] = None + HeaderParameters: Optional[Dict[str, str]] = None + QueryStringParameters: Optional[Dict[str, str]] = None + +class HttpParametersOutputTypeDef(BaseModel): + PathParameterValues: Optional[List[str]] = None + HeaderParameters: Optional[Dict[str, str]] = None + QueryStringParameters: Optional[Dict[str, str]] = None + +class HttpParametersTypeDef(BaseModel): + PathParameterValues: Optional[Sequence[str]] = None + HeaderParameters: Optional[Mapping[str, str]] = None + QueryStringParameters: Optional[Mapping[str, str]] = None + +class InputTransformerExtraOutputTypeDef(BaseModel): + InputTemplate: str + InputPathsMap: Optional[Dict[str, str]] = None + +class InputTransformerOutputTypeDef(BaseModel): + InputTemplate: str + InputPathsMap: Optional[Dict[str, str]] = None + +class InputTransformerTypeDef(BaseModel): + InputTemplate: str + InputPathsMap: Optional[Mapping[str, str]] = None + +class KinesisParametersTypeDef(BaseModel): + PartitionKeyPath: str + +class ListApiDestinationsRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + ConnectionArn: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListArchivesRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + EventSourceArn: Optional[str] = None + State: Optional[ArchiveStateType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListConnectionsRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + ConnectionState: Optional[ConnectionStateType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListEndpointsRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + HomeRegion: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEventBusesRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListEventSourcesRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListPartnerEventSourceAccountsRequestRequestTypeDef(BaseModel): + EventSourceName: str + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class PartnerEventSourceAccountTypeDef(BaseModel): + Account: Optional[str] = None + CreationTime: Optional[datetime] = None + ExpirationTime: Optional[datetime] = None + State: Optional[EventSourceStateType] = None + +class ListPartnerEventSourcesRequestRequestTypeDef(BaseModel): + NamePrefix: str + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class PartnerEventSourceTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class ListReplaysRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + State: Optional[ReplayStateType] = None + EventSourceArn: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ReplayTypeDef(BaseModel): + ReplayName: Optional[str] = None + EventSourceArn: Optional[str] = None + State: Optional[ReplayStateType] = None + StateReason: Optional[str] = None + EventStartTime: Optional[datetime] = None + EventEndTime: Optional[datetime] = None + EventLastReplayedTime: Optional[datetime] = None + ReplayStartTime: Optional[datetime] = None + ReplayEndTime: Optional[datetime] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRuleNamesByTargetRequestRequestTypeDef(BaseModel): + TargetArn: str + EventBusName: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class ListRulesRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + EventBusName: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class RuleTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + EventPattern: Optional[str] = None + State: Optional[RuleStateType] = None + Description: Optional[str] = None + ScheduleExpression: Optional[str] = None + RoleArn: Optional[str] = None + ManagedBy: Optional[str] = None + EventBusName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListTargetsByRuleRequestRequestTypeDef(BaseModel): + Rule: str + EventBusName: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class PutEventsResultEntryTypeDef(BaseModel): + EventId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class PutPartnerEventsResultEntryTypeDef(BaseModel): + EventId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class PutTargetsResultEntryTypeDef(BaseModel): + TargetId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class RedshiftDataParametersExtraOutputTypeDef(BaseModel): + Database: str + SecretManagerArn: Optional[str] = None + DbUser: Optional[str] = None + Sql: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + Sqls: Optional[List[str]] = None + +class RedshiftDataParametersOutputTypeDef(BaseModel): + Database: str + SecretManagerArn: Optional[str] = None + DbUser: Optional[str] = None + Sql: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + Sqls: Optional[List[str]] = None + +class RedshiftDataParametersTypeDef(BaseModel): + Database: str + SecretManagerArn: Optional[str] = None + DbUser: Optional[str] = None + Sql: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + Sqls: Optional[Sequence[str]] = None + +class RemovePermissionRequestRequestTypeDef(BaseModel): + StatementId: Optional[str] = None + RemoveAllPermissions: Optional[bool] = None + EventBusName: Optional[str] = None + +class RemoveTargetsRequestRequestTypeDef(BaseModel): + Rule: str + Ids: Sequence[str] + EventBusName: Optional[str] = None + Force: Optional[bool] = None + +class RemoveTargetsResultEntryTypeDef(BaseModel): + TargetId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class ReplayDestinationTypeDef(BaseModel): + Arn: str + FilterArns: Optional[Sequence[str]] = None + +class RetryPolicyTypeDef(BaseModel): + MaximumRetryAttempts: Optional[int] = None + MaximumEventAgeInSeconds: Optional[int] = None + +class RunCommandTargetExtraOutputTypeDef(BaseModel): + Key: str + Values: List[str] + +class RunCommandTargetOutputTypeDef(BaseModel): + Key: str + Values: List[str] + +class RunCommandTargetTypeDef(BaseModel): + Key: str + Values: Sequence[str] + +class SageMakerPipelineParameterTypeDef(BaseModel): + Name: str + Value: str + +class SqsParametersTypeDef(BaseModel): + MessageGroupId: Optional[str] = None + +class TestEventPatternRequestRequestTypeDef(BaseModel): + EventPattern: str + Event: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateApiDestinationRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + ConnectionArn: Optional[str] = None + InvocationEndpoint: Optional[str] = None + HttpMethod: Optional[ApiDestinationHttpMethodType] = None + InvocationRateLimitPerSecond: Optional[int] = None + +class UpdateArchiveRequestRequestTypeDef(BaseModel): + ArchiveName: str + Description: Optional[str] = None + EventPattern: Optional[str] = None + RetentionDays: Optional[int] = None + +class UpdateConnectionApiKeyAuthRequestParametersTypeDef(BaseModel): + ApiKeyName: Optional[str] = None + ApiKeyValue: Optional[str] = None + +class UpdateConnectionBasicAuthRequestParametersTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + +class UpdateConnectionOAuthClientRequestParametersTypeDef(BaseModel): + ClientID: Optional[str] = None + ClientSecret: Optional[str] = None + +class NetworkConfigurationExtraOutputTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationExtraOutputTypeDef] = None + +class NetworkConfigurationOutputTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationOutputTypeDef] = None + +class NetworkConfigurationTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationTypeDef] = None + +class BatchParametersTypeDef(BaseModel): + JobDefinition: str + JobName: str + ArrayProperties: Optional[BatchArrayPropertiesTypeDef] = None + RetryStrategy: Optional[BatchRetryStrategyTypeDef] = None + +class CancelReplayResponseTypeDef(BaseModel): + ReplayArn: str + State: ReplayStateType + StateReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApiDestinationResponseTypeDef(BaseModel): + ApiDestinationArn: str + ApiDestinationState: ApiDestinationStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateArchiveResponseTypeDef(BaseModel): + ArchiveArn: str + State: ArchiveStateType + StateReason: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectionResponseTypeDef(BaseModel): + ConnectionArn: str + ConnectionState: ConnectionStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePartnerEventSourceResponseTypeDef(BaseModel): + EventSourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeauthorizeConnectionResponseTypeDef(BaseModel): + ConnectionArn: str + ConnectionState: ConnectionStateType + CreationTime: datetime + LastModifiedTime: datetime + LastAuthorizedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConnectionResponseTypeDef(BaseModel): + ConnectionArn: str + ConnectionState: ConnectionStateType + CreationTime: datetime + LastModifiedTime: datetime + LastAuthorizedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApiDestinationResponseTypeDef(BaseModel): + ApiDestinationArn: str + Name: str + Description: str + ApiDestinationState: ApiDestinationStateType + ConnectionArn: str + InvocationEndpoint: str + HttpMethod: ApiDestinationHttpMethodType + InvocationRateLimitPerSecond: int + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeArchiveResponseTypeDef(BaseModel): + ArchiveArn: str + ArchiveName: str + EventSourceArn: str + Description: str + EventPattern: str + State: ArchiveStateType + StateReason: str + RetentionDays: int + SizeBytes: int + EventCount: int + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventSourceResponseTypeDef(BaseModel): + Arn: str + CreatedBy: str + CreationTime: datetime + ExpirationTime: datetime + Name: str + State: EventSourceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePartnerEventSourceResponseTypeDef(BaseModel): + Arn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRuleResponseTypeDef(BaseModel): + Name: str + Arn: str + EventPattern: str + ScheduleExpression: str + State: RuleStateType + Description: str + RoleArn: str + ManagedBy: str + EventBusName: str + CreatedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListApiDestinationsResponseTypeDef(BaseModel): + ApiDestinations: List[ApiDestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListArchivesResponseTypeDef(BaseModel): + Archives: List[ArchiveTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRuleNamesByTargetResponseTypeDef(BaseModel): + RuleNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutRuleResponseTypeDef(BaseModel): + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplayResponseTypeDef(BaseModel): + ReplayArn: str + State: ReplayStateType + StateReason: str + ReplayStartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TestEventPatternResponseTypeDef(BaseModel): + Result: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApiDestinationResponseTypeDef(BaseModel): + ApiDestinationArn: str + ApiDestinationState: ApiDestinationStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateArchiveResponseTypeDef(BaseModel): + ArchiveArn: str + State: ArchiveStateType + StateReason: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectionResponseTypeDef(BaseModel): + ConnectionArn: str + ConnectionState: ConnectionStateType + CreationTime: datetime + LastModifiedTime: datetime + LastAuthorizedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutPermissionRequestRequestTypeDef(BaseModel): + EventBusName: Optional[str] = None + Action: Optional[str] = None + Principal: Optional[str] = None + StatementId: Optional[str] = None + Condition: Optional[ConditionTypeDef] = None + Policy: Optional[str] = None + +class ConnectionHttpParametersOutputTypeDef(BaseModel): + HeaderParameters: Optional[List[ConnectionHeaderParameterTypeDef]] = None + QueryStringParameters: Optional[List[ConnectionQueryStringParameterTypeDef]] = None + BodyParameters: Optional[List[ConnectionBodyParameterTypeDef]] = None + +class ConnectionHttpParametersTypeDef(BaseModel): + HeaderParameters: Optional[Sequence[ConnectionHeaderParameterTypeDef]] = None + QueryStringParameters: Optional[Sequence[ConnectionQueryStringParameterTypeDef]] = None + BodyParameters: Optional[Sequence[ConnectionBodyParameterTypeDef]] = None + +class ListConnectionsResponseTypeDef(BaseModel): + Connections: List[ConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateEventBusResponseTypeDef(BaseModel): + EventBusArn: str + Description: str + KmsKeyIdentifier: str + DeadLetterConfig: DeadLetterConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventBusResponseTypeDef(BaseModel): + Name: str + Arn: str + Description: str + KmsKeyIdentifier: str + DeadLetterConfig: DeadLetterConfigTypeDef + Policy: str + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventBusRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + KmsKeyIdentifier: Optional[str] = None + Description: Optional[str] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + +class UpdateEventBusResponseTypeDef(BaseModel): + Arn: str + Name: str + KmsKeyIdentifier: str + Description: str + DeadLetterConfig: DeadLetterConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventBusRequestRequestTypeDef(BaseModel): + Name: str + EventSourceName: Optional[str] = None + Description: Optional[str] = None + KmsKeyIdentifier: Optional[str] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRuleRequestRequestTypeDef(BaseModel): + Name: str + ScheduleExpression: Optional[str] = None + EventPattern: Optional[str] = None + State: Optional[RuleStateType] = None + Description: Optional[str] = None + RoleArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + EventBusName: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class DescribeReplayResponseTypeDef(BaseModel): + ReplayName: str + ReplayArn: str + Description: str + State: ReplayStateType + StateReason: str + EventSourceArn: str + Destination: ReplayDestinationOutputTypeDef + EventStartTime: datetime + EventEndTime: datetime + EventLastReplayedTime: datetime + ReplayStartTime: datetime + ReplayEndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventBusesResponseTypeDef(BaseModel): + EventBuses: List[EventBusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEventSourcesResponseTypeDef(BaseModel): + EventSources: List[EventSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FailoverConfigTypeDef(BaseModel): + Primary: PrimaryTypeDef + Secondary: SecondaryTypeDef + +class ListPartnerEventSourceAccountsResponseTypeDef(BaseModel): + PartnerEventSourceAccounts: List[PartnerEventSourceAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPartnerEventSourcesResponseTypeDef(BaseModel): + PartnerEventSources: List[PartnerEventSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListReplaysResponseTypeDef(BaseModel): + Replays: List[ReplayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRuleNamesByTargetRequestListRuleNamesByTargetPaginateTypeDef(BaseModel): + TargetArn: str + EventBusName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesRequestListRulesPaginateTypeDef(BaseModel): + NamePrefix: Optional[str] = None + EventBusName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetsByRuleRequestListTargetsByRulePaginateTypeDef(BaseModel): + Rule: str + EventBusName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesResponseTypeDef(BaseModel): + Rules: List[RuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutEventsRequestEntryTypeDef(BaseModel): + Time: Optional[TimestampTypeDef] = None + Source: Optional[str] = None + Resources: Optional[Sequence[str]] = None + DetailType: Optional[str] = None + Detail: Optional[str] = None + EventBusName: Optional[str] = None + TraceHeader: Optional[str] = None + +class PutPartnerEventsRequestEntryTypeDef(BaseModel): + Time: Optional[TimestampTypeDef] = None + Source: Optional[str] = None + Resources: Optional[Sequence[str]] = None + DetailType: Optional[str] = None + Detail: Optional[str] = None + +class PutEventsResponseTypeDef(BaseModel): + FailedEntryCount: int + Entries: List[PutEventsResultEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutPartnerEventsResponseTypeDef(BaseModel): + FailedEntryCount: int + Entries: List[PutPartnerEventsResultEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutTargetsResponseTypeDef(BaseModel): + FailedEntryCount: int + FailedEntries: List[PutTargetsResultEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveTargetsResponseTypeDef(BaseModel): + FailedEntryCount: int + FailedEntries: List[RemoveTargetsResultEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartReplayRequestRequestTypeDef(BaseModel): + ReplayName: str + EventSourceArn: str + EventStartTime: TimestampTypeDef + EventEndTime: TimestampTypeDef + Destination: ReplayDestinationTypeDef + Description: Optional[str] = None + +class RunCommandParametersExtraOutputTypeDef(BaseModel): + RunCommandTargets: List[RunCommandTargetExtraOutputTypeDef] + +class RunCommandParametersOutputTypeDef(BaseModel): + RunCommandTargets: List[RunCommandTargetOutputTypeDef] + +class RunCommandParametersTypeDef(BaseModel): + RunCommandTargets: Sequence[RunCommandTargetTypeDef] + +class SageMakerPipelineParametersExtraOutputTypeDef(BaseModel): + PipelineParameterList: Optional[List[SageMakerPipelineParameterTypeDef]] = None + +class SageMakerPipelineParametersOutputTypeDef(BaseModel): + PipelineParameterList: Optional[List[SageMakerPipelineParameterTypeDef]] = None + +class SageMakerPipelineParametersTypeDef(BaseModel): + PipelineParameterList: Optional[Sequence[SageMakerPipelineParameterTypeDef]] = None + +class EcsParametersExtraOutputTypeDef(BaseModel): + TaskDefinitionArn: str + TaskCount: Optional[int] = None + LaunchType: Optional[LaunchTypeType] = None + NetworkConfiguration: Optional[NetworkConfigurationExtraOutputTypeDef] = None + PlatformVersion: Optional[str] = None + Group: Optional[str] = None + CapacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + EnableECSManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + PlacementConstraints: Optional[List[PlacementConstraintTypeDef]] = None + PlacementStrategy: Optional[List[PlacementStrategyTypeDef]] = None + PropagateTags: Optional[Literal["TASK_DEFINITION"]] = None + ReferenceId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class EcsParametersOutputTypeDef(BaseModel): + TaskDefinitionArn: str + TaskCount: Optional[int] = None + LaunchType: Optional[LaunchTypeType] = None + NetworkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + PlatformVersion: Optional[str] = None + Group: Optional[str] = None + CapacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + EnableECSManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + PlacementConstraints: Optional[List[PlacementConstraintTypeDef]] = None + PlacementStrategy: Optional[List[PlacementStrategyTypeDef]] = None + PropagateTags: Optional[Literal["TASK_DEFINITION"]] = None + ReferenceId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class EcsParametersTypeDef(BaseModel): + TaskDefinitionArn: str + TaskCount: Optional[int] = None + LaunchType: Optional[LaunchTypeType] = None + NetworkConfiguration: Optional[NetworkConfigurationTypeDef] = None + PlatformVersion: Optional[str] = None + Group: Optional[str] = None + CapacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + EnableECSManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + PlacementConstraints: Optional[Sequence[PlacementConstraintTypeDef]] = None + PlacementStrategy: Optional[Sequence[PlacementStrategyTypeDef]] = None + PropagateTags: Optional[Literal["TASK_DEFINITION"]] = None + ReferenceId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ConnectionOAuthResponseParametersTypeDef(BaseModel): + ClientParameters: Optional[ConnectionOAuthClientResponseParametersTypeDef] = None + AuthorizationEndpoint: Optional[str] = None + HttpMethod: Optional[ConnectionOAuthHttpMethodType] = None + OAuthHttpParameters: Optional[ConnectionHttpParametersOutputTypeDef] = None + +class CreateConnectionOAuthRequestParametersTypeDef(BaseModel): + ClientParameters: CreateConnectionOAuthClientRequestParametersTypeDef + AuthorizationEndpoint: str + HttpMethod: ConnectionOAuthHttpMethodType + OAuthHttpParameters: Optional[ConnectionHttpParametersTypeDef] = None + +class UpdateConnectionOAuthRequestParametersTypeDef(BaseModel): + ClientParameters: Optional[UpdateConnectionOAuthClientRequestParametersTypeDef] = None + AuthorizationEndpoint: Optional[str] = None + HttpMethod: Optional[ConnectionOAuthHttpMethodType] = None + OAuthHttpParameters: Optional[ConnectionHttpParametersTypeDef] = None + +class RoutingConfigTypeDef(BaseModel): + FailoverConfig: FailoverConfigTypeDef + +class PutEventsRequestRequestTypeDef(BaseModel): + Entries: Sequence[PutEventsRequestEntryTypeDef] + EndpointId: Optional[str] = None + +class PutPartnerEventsRequestRequestTypeDef(BaseModel): + Entries: Sequence[PutPartnerEventsRequestEntryTypeDef] + +class TargetExtraOutputTypeDef(BaseModel): + Id: str + Arn: str + RoleArn: Optional[str] = None + Input: Optional[str] = None + InputPath: Optional[str] = None + InputTransformer: Optional[InputTransformerExtraOutputTypeDef] = None + KinesisParameters: Optional[KinesisParametersTypeDef] = None + RunCommandParameters: Optional[RunCommandParametersExtraOutputTypeDef] = None + EcsParameters: Optional[EcsParametersExtraOutputTypeDef] = None + BatchParameters: Optional[BatchParametersTypeDef] = None + SqsParameters: Optional[SqsParametersTypeDef] = None + HttpParameters: Optional[HttpParametersExtraOutputTypeDef] = None + RedshiftDataParameters: Optional[RedshiftDataParametersExtraOutputTypeDef] = None + SageMakerPipelineParameters: Optional[SageMakerPipelineParametersExtraOutputTypeDef] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + RetryPolicy: Optional[RetryPolicyTypeDef] = None + AppSyncParameters: Optional[AppSyncParametersTypeDef] = None + +class TargetOutputTypeDef(BaseModel): + Id: str + Arn: str + RoleArn: Optional[str] = None + Input: Optional[str] = None + InputPath: Optional[str] = None + InputTransformer: Optional[InputTransformerOutputTypeDef] = None + KinesisParameters: Optional[KinesisParametersTypeDef] = None + RunCommandParameters: Optional[RunCommandParametersOutputTypeDef] = None + EcsParameters: Optional[EcsParametersOutputTypeDef] = None + BatchParameters: Optional[BatchParametersTypeDef] = None + SqsParameters: Optional[SqsParametersTypeDef] = None + HttpParameters: Optional[HttpParametersOutputTypeDef] = None + RedshiftDataParameters: Optional[RedshiftDataParametersOutputTypeDef] = None + SageMakerPipelineParameters: Optional[SageMakerPipelineParametersOutputTypeDef] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + RetryPolicy: Optional[RetryPolicyTypeDef] = None + AppSyncParameters: Optional[AppSyncParametersTypeDef] = None + +class TargetTypeDef(BaseModel): + Id: str + Arn: str + RoleArn: Optional[str] = None + Input: Optional[str] = None + InputPath: Optional[str] = None + InputTransformer: Optional[InputTransformerTypeDef] = None + KinesisParameters: Optional[KinesisParametersTypeDef] = None + RunCommandParameters: Optional[RunCommandParametersTypeDef] = None + EcsParameters: Optional[EcsParametersTypeDef] = None + BatchParameters: Optional[BatchParametersTypeDef] = None + SqsParameters: Optional[SqsParametersTypeDef] = None + HttpParameters: Optional[HttpParametersTypeDef] = None + RedshiftDataParameters: Optional[RedshiftDataParametersTypeDef] = None + SageMakerPipelineParameters: Optional[SageMakerPipelineParametersTypeDef] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + RetryPolicy: Optional[RetryPolicyTypeDef] = None + AppSyncParameters: Optional[AppSyncParametersTypeDef] = None + +class ConnectionAuthResponseParametersTypeDef(BaseModel): + BasicAuthParameters: Optional[ConnectionBasicAuthResponseParametersTypeDef] = None + OAuthParameters: Optional[ConnectionOAuthResponseParametersTypeDef] = None + ApiKeyAuthParameters: Optional[ConnectionApiKeyAuthResponseParametersTypeDef] = None + InvocationHttpParameters: Optional[ConnectionHttpParametersOutputTypeDef] = None + +class CreateConnectionAuthRequestParametersTypeDef(BaseModel): + BasicAuthParameters: Optional[CreateConnectionBasicAuthRequestParametersTypeDef] = None + OAuthParameters: Optional[CreateConnectionOAuthRequestParametersTypeDef] = None + ApiKeyAuthParameters: Optional[CreateConnectionApiKeyAuthRequestParametersTypeDef] = None + InvocationHttpParameters: Optional[ConnectionHttpParametersTypeDef] = None + +class UpdateConnectionAuthRequestParametersTypeDef(BaseModel): + BasicAuthParameters: Optional[UpdateConnectionBasicAuthRequestParametersTypeDef] = None + OAuthParameters: Optional[UpdateConnectionOAuthRequestParametersTypeDef] = None + ApiKeyAuthParameters: Optional[UpdateConnectionApiKeyAuthRequestParametersTypeDef] = None + InvocationHttpParameters: Optional[ConnectionHttpParametersTypeDef] = None + +class CreateEndpointRequestRequestTypeDef(BaseModel): + Name: str + RoutingConfig: RoutingConfigTypeDef + EventBuses: Sequence[EndpointEventBusTypeDef] + Description: Optional[str] = None + ReplicationConfig: Optional[ReplicationConfigTypeDef] = None + RoleArn: Optional[str] = None + +class CreateEndpointResponseTypeDef(BaseModel): + Name: str + Arn: str + RoutingConfig: RoutingConfigTypeDef + ReplicationConfig: ReplicationConfigTypeDef + EventBuses: List[EndpointEventBusTypeDef] + RoleArn: str + State: EndpointStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointResponseTypeDef(BaseModel): + Name: str + Description: str + Arn: str + RoutingConfig: RoutingConfigTypeDef + ReplicationConfig: ReplicationConfigTypeDef + EventBuses: List[EndpointEventBusTypeDef] + RoleArn: str + EndpointId: str + EndpointUrl: str + State: EndpointStateType + StateReason: str + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Arn: Optional[str] = None + RoutingConfig: Optional[RoutingConfigTypeDef] = None + ReplicationConfig: Optional[ReplicationConfigTypeDef] = None + EventBuses: Optional[List[EndpointEventBusTypeDef]] = None + RoleArn: Optional[str] = None + EndpointId: Optional[str] = None + EndpointUrl: Optional[str] = None + State: Optional[EndpointStateType] = None + StateReason: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class UpdateEndpointRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + RoutingConfig: Optional[RoutingConfigTypeDef] = None + ReplicationConfig: Optional[ReplicationConfigTypeDef] = None + EventBuses: Optional[Sequence[EndpointEventBusTypeDef]] = None + RoleArn: Optional[str] = None + +class UpdateEndpointResponseTypeDef(BaseModel): + Name: str + Arn: str + RoutingConfig: RoutingConfigTypeDef + ReplicationConfig: ReplicationConfigTypeDef + EventBuses: List[EndpointEventBusTypeDef] + RoleArn: str + EndpointId: str + EndpointUrl: str + State: EndpointStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetsByRuleResponseTypeDef(BaseModel): + Targets: List[TargetOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeConnectionResponseTypeDef(BaseModel): + ConnectionArn: str + Name: str + Description: str + ConnectionState: ConnectionStateType + StateReason: str + AuthorizationType: ConnectionAuthorizationTypeType + SecretArn: str + AuthParameters: ConnectionAuthResponseParametersTypeDef + CreationTime: datetime + LastModifiedTime: datetime + LastAuthorizedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectionRequestRequestTypeDef(BaseModel): + Name: str + AuthorizationType: ConnectionAuthorizationTypeType + AuthParameters: CreateConnectionAuthRequestParametersTypeDef + Description: Optional[str] = None + +class UpdateConnectionRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + AuthorizationType: Optional[ConnectionAuthorizationTypeType] = None + AuthParameters: Optional[UpdateConnectionAuthRequestParametersTypeDef] = None + +class ListEndpointsResponseTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutTargetsRequestRequestTypeDef(BaseModel): + Rule: str + Targets: Sequence[TargetUnionTypeDef] + EventBusName: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/events_constants.py b/aws_resource_validator/pydantic_models/events_constants.py new file mode 100644 index 00000000..26ed5813 --- /dev/null +++ b/aws_resource_validator/pydantic_models/events_constants.py @@ -0,0 +1,449 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApiDestinationHttpMethodType = Literal["DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT"] +ApiDestinationStateType = Literal["ACTIVE", "INACTIVE"] +ArchiveStateType = Literal["CREATE_FAILED", "CREATING", "DISABLED", "ENABLED", "UPDATE_FAILED", "UPDATING"] +AssignPublicIpType = Literal["DISABLED", "ENABLED"] +ConnectionAuthorizationTypeType = Literal["API_KEY", "BASIC", "OAUTH_CLIENT_CREDENTIALS"] +ConnectionOAuthHttpMethodType = Literal["GET", "POST", "PUT"] +ConnectionStateType = Literal["AUTHORIZED", "AUTHORIZING", "CREATING", "DEAUTHORIZED", "DEAUTHORIZING", "DELETING", "UPDATING"] +EndpointStateType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +EventSourceStateType = Literal["ACTIVE", "DELETED", "PENDING"] +LaunchTypeType = Literal["EC2", "EXTERNAL", "FARGATE"] +ListRuleNamesByTargetPaginatorName = Literal["list_rule_names_by_target"] +ListRulesPaginatorName = Literal["list_rules"] +ListTargetsByRulePaginatorName = Literal["list_targets_by_rule"] +PlacementConstraintTypeType = Literal["distinctInstance", "memberOf"] +PlacementStrategyTypeType = Literal["binpack", "random", "spread"] +PropagateTagsType = Literal["TASK_DEFINITION"] +ReplayStateType = Literal["CANCELLED", "CANCELLING", "COMPLETED", "FAILED", "RUNNING", "STARTING"] +ReplicationStateType = Literal["DISABLED", "ENABLED"] +RuleStateType = Literal["DISABLED", "ENABLED", "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS"] +EventBridgeServiceName = Literal["events"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_rule_names_by_target", "list_rules", "list_targets_by_rule"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ReplayDestinationUnionTypeDef = Union['ReplayDestinationTypeDef', 'ReplayDestinationOutputTypeDef'] +TargetUnionTypeDef = Union['TargetTypeDef', 'TargetExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/evidently_classes.py b/aws_resource_validator/pydantic_models/evidently_classes.py new file mode 100644 index 00000000..9aa38b00 --- /dev/null +++ b/aws_resource_validator/pydantic_models/evidently_classes.py @@ -0,0 +1,727 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.evidently_constants import * + +class EvaluationRequestTypeDef(BaseModel): + entityId: str + feature: str + evaluationContext: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CloudWatchLogsDestinationConfigTypeDef(BaseModel): + logGroup: Optional[str] = None + +class CloudWatchLogsDestinationTypeDef(BaseModel): + logGroup: Optional[str] = None + +class OnlineAbConfigTypeDef(BaseModel): + controlTreatmentName: Optional[str] = None + treatmentWeights: Optional[Mapping[str, int]] = None + +class TreatmentConfigTypeDef(BaseModel): + feature: str + name: str + variation: str + description: Optional[str] = None + +class LaunchGroupConfigTypeDef(BaseModel): + feature: str + name: str + variation: str + description: Optional[str] = None + +class ProjectAppConfigResourceConfigTypeDef(BaseModel): + applicationId: Optional[str] = None + environmentId: Optional[str] = None + +class CreateSegmentRequestRequestTypeDef(BaseModel): + name: str + pattern: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class SegmentTypeDef(BaseModel): + arn: str + createdTime: datetime + lastUpdatedTime: datetime + name: str + pattern: str + description: Optional[str] = None + experimentCount: Optional[int] = None + launchCount: Optional[int] = None + tags: Optional[Dict[str, str]] = None + +class DeleteExperimentRequestRequestTypeDef(BaseModel): + experiment: str + project: str + +class DeleteFeatureRequestRequestTypeDef(BaseModel): + feature: str + project: str + +class DeleteLaunchRequestRequestTypeDef(BaseModel): + launch: str + project: str + +class DeleteProjectRequestRequestTypeDef(BaseModel): + project: str + +class DeleteSegmentRequestRequestTypeDef(BaseModel): + segment: str + +class EvaluateFeatureRequestRequestTypeDef(BaseModel): + entityId: str + feature: str + project: str + evaluationContext: Optional[str] = None + +class VariableValueTypeDef(BaseModel): + boolValue: Optional[bool] = None + doubleValue: Optional[float] = None + longValue: Optional[int] = None + stringValue: Optional[str] = None + +class EvaluationRuleTypeDef(BaseModel): + type: str + name: Optional[str] = None + +class ExperimentExecutionTypeDef(BaseModel): + endedTime: Optional[datetime] = None + startedTime: Optional[datetime] = None + +class ExperimentReportTypeDef(BaseModel): + content: Optional[str] = None + metricName: Optional[str] = None + reportName: Optional[Literal["BayesianInference"]] = None + treatmentName: Optional[str] = None + +class ExperimentResultsDataTypeDef(BaseModel): + metricName: Optional[str] = None + resultStat: Optional[ExperimentResultResponseTypeType] = None + treatmentName: Optional[str] = None + values: Optional[List[float]] = None + +class ExperimentScheduleTypeDef(BaseModel): + analysisCompleteTime: Optional[datetime] = None + +class OnlineAbDefinitionTypeDef(BaseModel): + controlTreatmentName: Optional[str] = None + treatmentWeights: Optional[Dict[str, int]] = None + +class TreatmentTypeDef(BaseModel): + name: str + description: Optional[str] = None + featureVariations: Optional[Dict[str, str]] = None + +class GetExperimentRequestRequestTypeDef(BaseModel): + experiment: str + project: str + +class GetFeatureRequestRequestTypeDef(BaseModel): + feature: str + project: str + +class GetLaunchRequestRequestTypeDef(BaseModel): + launch: str + project: str + +class GetProjectRequestRequestTypeDef(BaseModel): + project: str + +class GetSegmentRequestRequestTypeDef(BaseModel): + segment: str + +class LaunchExecutionTypeDef(BaseModel): + endedTime: Optional[datetime] = None + startedTime: Optional[datetime] = None + +class LaunchGroupTypeDef(BaseModel): + featureVariations: Dict[str, str] + name: str + description: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListExperimentsRequestRequestTypeDef(BaseModel): + project: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[ExperimentStatusType] = None + +class ListFeaturesRequestRequestTypeDef(BaseModel): + project: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLaunchesRequestRequestTypeDef(BaseModel): + project: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + status: Optional[LaunchStatusType] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ProjectSummaryTypeDef(BaseModel): + arn: str + createdTime: datetime + lastUpdatedTime: datetime + name: str + status: ProjectStatusType + activeExperimentCount: Optional[int] = None + activeLaunchCount: Optional[int] = None + description: Optional[str] = None + experimentCount: Optional[int] = None + featureCount: Optional[int] = None + launchCount: Optional[int] = None + tags: Optional[Dict[str, str]] = None + +class ListSegmentReferencesRequestRequestTypeDef(BaseModel): + segment: str + type: SegmentReferenceResourceTypeType + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RefResourceTypeDef(BaseModel): + name: str + type: str + arn: Optional[str] = None + endTime: Optional[str] = None + lastUpdatedOn: Optional[str] = None + startTime: Optional[str] = None + status: Optional[str] = None + +class ListSegmentsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MetricDefinitionConfigTypeDef(BaseModel): + entityIdKey: str + name: str + valueKey: str + eventPattern: Optional[str] = None + unitLabel: Optional[str] = None + +class MetricDefinitionTypeDef(BaseModel): + entityIdKey: Optional[str] = None + eventPattern: Optional[str] = None + name: Optional[str] = None + unitLabel: Optional[str] = None + valueKey: Optional[str] = None + +class ProjectAppConfigResourceTypeDef(BaseModel): + applicationId: str + configurationProfileId: str + environmentId: str + +class S3DestinationConfigTypeDef(BaseModel): + bucket: Optional[str] = None + prefix: Optional[str] = None + +class S3DestinationTypeDef(BaseModel): + bucket: Optional[str] = None + prefix: Optional[str] = None + +class PutProjectEventsResultEntryTypeDef(BaseModel): + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + eventId: Optional[str] = None + +class SegmentOverrideTypeDef(BaseModel): + evaluationOrder: int + segment: str + weights: Mapping[str, int] + +class SegmentOverridePaginatorTypeDef(BaseModel): + evaluationOrder: int + segment: str + weights: Dict[str, int] + +class StartLaunchRequestRequestTypeDef(BaseModel): + launch: str + project: str + +class StopExperimentRequestRequestTypeDef(BaseModel): + experiment: str + project: str + desiredState: Optional[ExperimentStopDesiredStateType] = None + reason: Optional[str] = None + +class StopLaunchRequestRequestTypeDef(BaseModel): + launch: str + project: str + desiredState: Optional[LaunchStopDesiredStateType] = None + reason: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TestSegmentPatternRequestRequestTypeDef(BaseModel): + pattern: str + payload: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class BatchEvaluateFeatureRequestRequestTypeDef(BaseModel): + project: str + requests: Sequence[EvaluationRequestTypeDef] + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartExperimentResponseTypeDef(BaseModel): + startedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopExperimentResponseTypeDef(BaseModel): + endedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopLaunchResponseTypeDef(BaseModel): + endedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TestSegmentPatternResponseTypeDef(BaseModel): + match: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectRequestRequestTypeDef(BaseModel): + project: str + appConfigResource: Optional[ProjectAppConfigResourceConfigTypeDef] = None + description: Optional[str] = None + +class CreateSegmentResponseTypeDef(BaseModel): + segment: SegmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentResponseTypeDef(BaseModel): + segment: SegmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSegmentsResponseTypeDef(BaseModel): + nextToken: str + segments: List[SegmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluateFeatureResponseTypeDef(BaseModel): + details: str + reason: str + value: VariableValueTypeDef + variation: str + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluationResultTypeDef(BaseModel): + entityId: str + feature: str + details: Optional[str] = None + project: Optional[str] = None + reason: Optional[str] = None + value: Optional[VariableValueTypeDef] = None + variation: Optional[str] = None + +class VariationConfigTypeDef(BaseModel): + name: str + value: VariableValueTypeDef + +class VariationTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[VariableValueTypeDef] = None + +class FeatureSummaryTypeDef(BaseModel): + arn: str + createdTime: datetime + evaluationStrategy: FeatureEvaluationStrategyType + lastUpdatedTime: datetime + name: str + status: FeatureStatusType + defaultVariation: Optional[str] = None + evaluationRules: Optional[List[EvaluationRuleTypeDef]] = None + project: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class EventTypeDef(BaseModel): + data: str + timestamp: TimestampTypeDef + type: EventTypeType + +class GetExperimentResultsRequestRequestTypeDef(BaseModel): + experiment: str + metricNames: Sequence[str] + project: str + treatmentNames: Sequence[str] + baseStat: Optional[Literal["Mean"]] = None + endTime: Optional[TimestampTypeDef] = None + period: Optional[int] = None + reportNames: Optional[Sequence[Literal["BayesianInference"]]] = None + resultStats: Optional[Sequence[ExperimentResultRequestTypeType]] = None + startTime: Optional[TimestampTypeDef] = None + +class StartExperimentRequestRequestTypeDef(BaseModel): + analysisCompleteTime: TimestampTypeDef + experiment: str + project: str + +class GetExperimentResultsResponseTypeDef(BaseModel): + details: str + reports: List[ExperimentReportTypeDef] + resultsData: List[ExperimentResultsDataTypeDef] + timestamps: List[datetime] + ResponseMetadata: ResponseMetadataTypeDef + +class ListExperimentsRequestListExperimentsPaginateTypeDef(BaseModel): + project: str + status: Optional[ExperimentStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFeaturesRequestListFeaturesPaginateTypeDef(BaseModel): + project: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLaunchesRequestListLaunchesPaginateTypeDef(BaseModel): + project: str + status: Optional[LaunchStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSegmentReferencesRequestListSegmentReferencesPaginateTypeDef(BaseModel): + segment: str + type: SegmentReferenceResourceTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSegmentsRequestListSegmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsResponseTypeDef(BaseModel): + nextToken: str + projects: List[ProjectSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSegmentReferencesResponseTypeDef(BaseModel): + nextToken: str + referencedBy: List[RefResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricGoalConfigTypeDef(BaseModel): + metricDefinition: MetricDefinitionConfigTypeDef + desiredChange: Optional[ChangeDirectionEnumType] = None + +class MetricMonitorConfigTypeDef(BaseModel): + metricDefinition: MetricDefinitionConfigTypeDef + +class MetricGoalTypeDef(BaseModel): + metricDefinition: MetricDefinitionTypeDef + desiredChange: Optional[ChangeDirectionEnumType] = None + +class MetricMonitorTypeDef(BaseModel): + metricDefinition: MetricDefinitionTypeDef + +class ProjectDataDeliveryConfigTypeDef(BaseModel): + cloudWatchLogs: Optional[CloudWatchLogsDestinationConfigTypeDef] = None + s3Destination: Optional[S3DestinationConfigTypeDef] = None + +class UpdateProjectDataDeliveryRequestRequestTypeDef(BaseModel): + project: str + cloudWatchLogs: Optional[CloudWatchLogsDestinationConfigTypeDef] = None + s3Destination: Optional[S3DestinationConfigTypeDef] = None + +class ProjectDataDeliveryTypeDef(BaseModel): + cloudWatchLogs: Optional[CloudWatchLogsDestinationTypeDef] = None + s3Destination: Optional[S3DestinationTypeDef] = None + +class PutProjectEventsResponseTypeDef(BaseModel): + eventResults: List[PutProjectEventsResultEntryTypeDef] + failedEventCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduledSplitConfigTypeDef(BaseModel): + groupWeights: Mapping[str, int] + startTime: TimestampTypeDef + segmentOverrides: Optional[Sequence[SegmentOverrideTypeDef]] = None + +class ScheduledSplitTypeDef(BaseModel): + startTime: datetime + groupWeights: Optional[Dict[str, int]] = None + segmentOverrides: Optional[List[SegmentOverrideTypeDef]] = None + +class ScheduledSplitPaginatorTypeDef(BaseModel): + startTime: datetime + groupWeights: Optional[Dict[str, int]] = None + segmentOverrides: Optional[List[SegmentOverridePaginatorTypeDef]] = None + +class BatchEvaluateFeatureResponseTypeDef(BaseModel): + results: List[EvaluationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFeatureRequestRequestTypeDef(BaseModel): + name: str + project: str + variations: Sequence[VariationConfigTypeDef] + defaultVariation: Optional[str] = None + description: Optional[str] = None + entityOverrides: Optional[Mapping[str, str]] = None + evaluationStrategy: Optional[FeatureEvaluationStrategyType] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateFeatureRequestRequestTypeDef(BaseModel): + feature: str + project: str + addOrUpdateVariations: Optional[Sequence[VariationConfigTypeDef]] = None + defaultVariation: Optional[str] = None + description: Optional[str] = None + entityOverrides: Optional[Mapping[str, str]] = None + evaluationStrategy: Optional[FeatureEvaluationStrategyType] = None + removeVariations: Optional[Sequence[str]] = None + +class FeatureTypeDef(BaseModel): + arn: str + createdTime: datetime + evaluationStrategy: FeatureEvaluationStrategyType + lastUpdatedTime: datetime + name: str + status: FeatureStatusType + valueType: VariationValueTypeType + variations: List[VariationTypeDef] + defaultVariation: Optional[str] = None + description: Optional[str] = None + entityOverrides: Optional[Dict[str, str]] = None + evaluationRules: Optional[List[EvaluationRuleTypeDef]] = None + project: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListFeaturesResponseTypeDef(BaseModel): + features: List[FeatureSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutProjectEventsRequestRequestTypeDef(BaseModel): + events: Sequence[EventTypeDef] + project: str + +class CreateExperimentRequestRequestTypeDef(BaseModel): + metricGoals: Sequence[MetricGoalConfigTypeDef] + name: str + project: str + treatments: Sequence[TreatmentConfigTypeDef] + description: Optional[str] = None + onlineAbConfig: Optional[OnlineAbConfigTypeDef] = None + randomizationSalt: Optional[str] = None + samplingRate: Optional[int] = None + segment: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateExperimentRequestRequestTypeDef(BaseModel): + experiment: str + project: str + description: Optional[str] = None + metricGoals: Optional[Sequence[MetricGoalConfigTypeDef]] = None + onlineAbConfig: Optional[OnlineAbConfigTypeDef] = None + randomizationSalt: Optional[str] = None + removeSegment: Optional[bool] = None + samplingRate: Optional[int] = None + segment: Optional[str] = None + treatments: Optional[Sequence[TreatmentConfigTypeDef]] = None + +class ExperimentTypeDef(BaseModel): + arn: str + createdTime: datetime + lastUpdatedTime: datetime + name: str + status: ExperimentStatusType + type: Literal["aws.evidently.onlineab"] + description: Optional[str] = None + execution: Optional[ExperimentExecutionTypeDef] = None + metricGoals: Optional[List[MetricGoalTypeDef]] = None + onlineAbDefinition: Optional[OnlineAbDefinitionTypeDef] = None + project: Optional[str] = None + randomizationSalt: Optional[str] = None + samplingRate: Optional[int] = None + schedule: Optional[ExperimentScheduleTypeDef] = None + segment: Optional[str] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + treatments: Optional[List[TreatmentTypeDef]] = None + +class CreateProjectRequestRequestTypeDef(BaseModel): + name: str + appConfigResource: Optional[ProjectAppConfigResourceConfigTypeDef] = None + dataDelivery: Optional[ProjectDataDeliveryConfigTypeDef] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ProjectTypeDef(BaseModel): + arn: str + createdTime: datetime + lastUpdatedTime: datetime + name: str + status: ProjectStatusType + activeExperimentCount: Optional[int] = None + activeLaunchCount: Optional[int] = None + appConfigResource: Optional[ProjectAppConfigResourceTypeDef] = None + dataDelivery: Optional[ProjectDataDeliveryTypeDef] = None + description: Optional[str] = None + experimentCount: Optional[int] = None + featureCount: Optional[int] = None + launchCount: Optional[int] = None + tags: Optional[Dict[str, str]] = None + +class ScheduledSplitsLaunchConfigTypeDef(BaseModel): + steps: Sequence[ScheduledSplitConfigTypeDef] + +class ScheduledSplitsLaunchDefinitionTypeDef(BaseModel): + steps: Optional[List[ScheduledSplitTypeDef]] = None + +class ScheduledSplitsLaunchDefinitionPaginatorTypeDef(BaseModel): + steps: Optional[List[ScheduledSplitPaginatorTypeDef]] = None + +class CreateFeatureResponseTypeDef(BaseModel): + feature: FeatureTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFeatureResponseTypeDef(BaseModel): + feature: FeatureTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFeatureResponseTypeDef(BaseModel): + feature: FeatureTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperimentResponseTypeDef(BaseModel): + experiment: ExperimentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetExperimentResponseTypeDef(BaseModel): + experiment: ExperimentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListExperimentsResponseTypeDef(BaseModel): + experiments: List[ExperimentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExperimentResponseTypeDef(BaseModel): + experiment: ExperimentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResponseTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProjectResponseTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectDataDeliveryResponseTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectResponseTypeDef(BaseModel): + project: ProjectTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLaunchRequestRequestTypeDef(BaseModel): + groups: Sequence[LaunchGroupConfigTypeDef] + name: str + project: str + description: Optional[str] = None + metricMonitors: Optional[Sequence[MetricMonitorConfigTypeDef]] = None + randomizationSalt: Optional[str] = None + scheduledSplitsConfig: Optional[ScheduledSplitsLaunchConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateLaunchRequestRequestTypeDef(BaseModel): + launch: str + project: str + description: Optional[str] = None + groups: Optional[Sequence[LaunchGroupConfigTypeDef]] = None + metricMonitors: Optional[Sequence[MetricMonitorConfigTypeDef]] = None + randomizationSalt: Optional[str] = None + scheduledSplitsConfig: Optional[ScheduledSplitsLaunchConfigTypeDef] = None + +class LaunchTypeDef(BaseModel): + arn: str + createdTime: datetime + lastUpdatedTime: datetime + name: str + status: LaunchStatusType + type: Literal["aws.evidently.splits"] + description: Optional[str] = None + execution: Optional[LaunchExecutionTypeDef] = None + groups: Optional[List[LaunchGroupTypeDef]] = None + metricMonitors: Optional[List[MetricMonitorTypeDef]] = None + project: Optional[str] = None + randomizationSalt: Optional[str] = None + scheduledSplitsDefinition: Optional[ScheduledSplitsLaunchDefinitionTypeDef] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class LaunchPaginatorTypeDef(BaseModel): + arn: str + createdTime: datetime + lastUpdatedTime: datetime + name: str + status: LaunchStatusType + type: Literal["aws.evidently.splits"] + description: Optional[str] = None + execution: Optional[LaunchExecutionTypeDef] = None + groups: Optional[List[LaunchGroupTypeDef]] = None + metricMonitors: Optional[List[MetricMonitorTypeDef]] = None + project: Optional[str] = None + randomizationSalt: Optional[str] = None + scheduledSplitsDefinition: Optional[ScheduledSplitsLaunchDefinitionPaginatorTypeDef] = None + statusReason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class CreateLaunchResponseTypeDef(BaseModel): + launch: LaunchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLaunchResponseTypeDef(BaseModel): + launch: LaunchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLaunchesResponseTypeDef(BaseModel): + launches: List[LaunchTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartLaunchResponseTypeDef(BaseModel): + launch: LaunchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLaunchResponseTypeDef(BaseModel): + launch: LaunchTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLaunchesResponsePaginatorTypeDef(BaseModel): + launches: List[LaunchPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/evidently_constants.py b/aws_resource_validator/pydantic_models/evidently_constants.py new file mode 100644 index 00000000..e13e8623 --- /dev/null +++ b/aws_resource_validator/pydantic_models/evidently_constants.py @@ -0,0 +1,431 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChangeDirectionEnumType = Literal["DECREASE", "INCREASE"] +EventTypeType = Literal["aws.evidently.custom", "aws.evidently.evaluation"] +ExperimentBaseStatType = Literal["Mean"] +ExperimentReportNameType = Literal["BayesianInference"] +ExperimentResultRequestTypeType = Literal["BaseStat", "ConfidenceInterval", "PValue", "TreatmentEffect"] +ExperimentResultResponseTypeType = Literal["ConfidenceIntervalLowerBound", + "ConfidenceIntervalUpperBound", + "Mean", + "PValue", + "TreatmentEffect",] +ExperimentStatusType = Literal["CANCELLED", "COMPLETED", "CREATED", "RUNNING", "UPDATING"] +ExperimentStopDesiredStateType = Literal["CANCELLED", "COMPLETED"] +ExperimentTypeType = Literal["aws.evidently.onlineab"] +FeatureEvaluationStrategyType = Literal["ALL_RULES", "DEFAULT_VARIATION"] +FeatureStatusType = Literal["AVAILABLE", "UPDATING"] +LaunchStatusType = Literal["CANCELLED", "COMPLETED", "CREATED", "RUNNING", "UPDATING"] +LaunchStopDesiredStateType = Literal["CANCELLED", "COMPLETED"] +LaunchTypeType = Literal["aws.evidently.splits"] +ListExperimentsPaginatorName = Literal["list_experiments"] +ListFeaturesPaginatorName = Literal["list_features"] +ListLaunchesPaginatorName = Literal["list_launches"] +ListProjectsPaginatorName = Literal["list_projects"] +ListSegmentReferencesPaginatorName = Literal["list_segment_references"] +ListSegmentsPaginatorName = Literal["list_segments"] +ProjectStatusType = Literal["AVAILABLE", "UPDATING"] +SegmentReferenceResourceTypeType = Literal["EXPERIMENT", "LAUNCH"] +VariationValueTypeType = Literal["BOOLEAN", "DOUBLE", "LONG", "STRING"] +CloudWatchEvidentlyServiceName = Literal["evidently"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_experiments", + "list_features", + "list_launches", + "list_projects", + "list_segment_references", + "list_segments",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/finspace_classes.py b/aws_resource_validator/pydantic_models/finspace_classes.py new file mode 100644 index 00000000..a28da82f --- /dev/null +++ b/aws_resource_validator/pydantic_models/finspace_classes.py @@ -0,0 +1,970 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.finspace_constants import * + +class AutoScalingConfigurationTypeDef(BaseModel): + minNodeCount: Optional[int] = None + maxNodeCount: Optional[int] = None + autoScalingMetric: Optional[Literal["CPU_UTILIZATION_PERCENTAGE"]] = None + metricTarget: Optional[float] = None + scaleInCooldownSeconds: Optional[float] = None + scaleOutCooldownSeconds: Optional[float] = None + +class CapacityConfigurationTypeDef(BaseModel): + nodeType: Optional[str] = None + nodeCount: Optional[int] = None + +class ChangeRequestTypeDef(BaseModel): + changeType: ChangeTypeType + dbPath: str + s3Path: Optional[str] = None + +class CodeConfigurationTypeDef(BaseModel): + s3Bucket: Optional[str] = None + s3Key: Optional[str] = None + s3ObjectVersion: Optional[str] = None + +class FederationParametersTypeDef(BaseModel): + samlMetadataDocument: Optional[str] = None + samlMetadataURL: Optional[str] = None + applicationCallBackURL: Optional[str] = None + federationURN: Optional[str] = None + federationProviderName: Optional[str] = None + attributeMap: Optional[Mapping[str, str]] = None + +class SuperuserParametersTypeDef(BaseModel): + emailAddress: str + firstName: str + lastName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ErrorInfoTypeDef(BaseModel): + errorMessage: Optional[str] = None + errorType: Optional[ErrorDetailsType] = None + +class KxCacheStorageConfigurationTypeDef(BaseModel): + type: str + size: int + +class KxCommandLineArgumentTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class KxSavedownStorageConfigurationTypeDef(BaseModel): + type: Optional[Literal["SDS01"]] = None + size: Optional[int] = None + volumeName: Optional[str] = None + +class KxScalingGroupConfigurationTypeDef(BaseModel): + scalingGroupName: str + memoryReservation: int + nodeCount: int + memoryLimit: Optional[int] = None + cpu: Optional[float] = None + +class TickerplantLogConfigurationTypeDef(BaseModel): + tickerplantLogVolumes: Optional[Sequence[str]] = None + +class VpcConfigurationTypeDef(BaseModel): + vpcId: Optional[str] = None + securityGroupIds: Optional[Sequence[str]] = None + subnetIds: Optional[Sequence[str]] = None + ipAddressType: Optional[Literal["IP_V4"]] = None + +class VolumeTypeDef(BaseModel): + volumeName: Optional[str] = None + volumeType: Optional[Literal["NAS_1"]] = None + +class CreateKxDatabaseRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + clientToken: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class KxDataviewSegmentConfigurationTypeDef(BaseModel): + dbPaths: Sequence[str] + volumeName: str + onDemand: Optional[bool] = None + +class CreateKxEnvironmentRequestRequestTypeDef(BaseModel): + name: str + kmsKeyId: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + +class CreateKxScalingGroupRequestRequestTypeDef(BaseModel): + clientToken: str + environmentId: str + scalingGroupName: str + hostType: str + availabilityZoneId: str + tags: Optional[Mapping[str, str]] = None + +class CreateKxUserRequestRequestTypeDef(BaseModel): + environmentId: str + userName: str + iamRole: str + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + +class KxNAS1ConfigurationTypeDef(BaseModel): + type: Optional[KxNAS1TypeType] = None + size: Optional[int] = None + +class CustomDNSServerTypeDef(BaseModel): + customDNSServerName: str + customDNSServerIP: str + +class DeleteEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + +class DeleteKxClusterNodeRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + nodeId: str + +class DeleteKxClusterRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + clientToken: Optional[str] = None + +class DeleteKxDatabaseRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + clientToken: str + +class DeleteKxDataviewRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + dataviewName: str + clientToken: str + +class DeleteKxEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + clientToken: Optional[str] = None + +class DeleteKxScalingGroupRequestRequestTypeDef(BaseModel): + environmentId: str + scalingGroupName: str + clientToken: Optional[str] = None + +class DeleteKxUserRequestRequestTypeDef(BaseModel): + userName: str + environmentId: str + clientToken: Optional[str] = None + +class DeleteKxVolumeRequestRequestTypeDef(BaseModel): + environmentId: str + volumeName: str + clientToken: Optional[str] = None + +class GetEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + +class GetKxChangesetRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + changesetId: str + +class GetKxClusterRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + +class GetKxConnectionStringRequestRequestTypeDef(BaseModel): + userArn: str + environmentId: str + clusterName: str + +class GetKxDatabaseRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + +class GetKxDataviewRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + dataviewName: str + +class GetKxEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + +class GetKxScalingGroupRequestRequestTypeDef(BaseModel): + environmentId: str + scalingGroupName: str + +class GetKxUserRequestRequestTypeDef(BaseModel): + userName: str + environmentId: str + +class GetKxVolumeRequestRequestTypeDef(BaseModel): + environmentId: str + volumeName: str + +class KxAttachedClusterTypeDef(BaseModel): + clusterName: Optional[str] = None + clusterType: Optional[KxClusterTypeType] = None + clusterStatus: Optional[KxClusterStatusType] = None + +class IcmpTypeCodeTypeDef(BaseModel): + type: int + code: int + +class KxChangesetListEntryTypeDef(BaseModel): + changesetId: Optional[str] = None + createdTimestamp: Optional[datetime] = None + activeFromTimestamp: Optional[datetime] = None + lastModifiedTimestamp: Optional[datetime] = None + status: Optional[ChangesetStatusType] = None + +class KxClusterCodeDeploymentConfigurationTypeDef(BaseModel): + deploymentStrategy: KxClusterCodeDeploymentStrategyType + +class KxDatabaseCacheConfigurationTypeDef(BaseModel): + cacheType: str + dbPaths: Sequence[str] + dataviewName: Optional[str] = None + +class KxDatabaseListEntryTypeDef(BaseModel): + databaseName: Optional[str] = None + createdTimestamp: Optional[datetime] = None + lastModifiedTimestamp: Optional[datetime] = None + +class KxDeploymentConfigurationTypeDef(BaseModel): + deploymentStrategy: KxDeploymentStrategyType + +class KxNodeTypeDef(BaseModel): + nodeId: Optional[str] = None + availabilityZoneId: Optional[str] = None + launchTime: Optional[datetime] = None + status: Optional[KxNodeStatusType] = None + +class KxScalingGroupTypeDef(BaseModel): + scalingGroupName: Optional[str] = None + hostType: Optional[str] = None + clusters: Optional[List[str]] = None + availabilityZoneId: Optional[str] = None + status: Optional[KxScalingGroupStatusType] = None + statusReason: Optional[str] = None + lastModifiedTimestamp: Optional[datetime] = None + createdTimestamp: Optional[datetime] = None + +class KxUserTypeDef(BaseModel): + userArn: Optional[str] = None + userName: Optional[str] = None + iamRole: Optional[str] = None + createTimestamp: Optional[datetime] = None + updateTimestamp: Optional[datetime] = None + +class KxVolumeTypeDef(BaseModel): + volumeName: Optional[str] = None + volumeType: Optional[Literal["NAS_1"]] = None + status: Optional[KxVolumeStatusType] = None + description: Optional[str] = None + statusReason: Optional[str] = None + azMode: Optional[KxAzModeType] = None + availabilityZoneIds: Optional[List[str]] = None + createdTimestamp: Optional[datetime] = None + lastModifiedTimestamp: Optional[datetime] = None + +class ListEnvironmentsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListKxChangesetsRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListKxClusterNodesRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListKxClustersRequestRequestTypeDef(BaseModel): + environmentId: str + clusterType: Optional[KxClusterTypeType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListKxDatabasesRequestRequestTypeDef(BaseModel): + environmentId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListKxDataviewsRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListKxEnvironmentsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListKxScalingGroupsRequestRequestTypeDef(BaseModel): + environmentId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListKxUsersRequestRequestTypeDef(BaseModel): + environmentId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListKxVolumesRequestRequestTypeDef(BaseModel): + environmentId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + volumeType: Optional[Literal["NAS_1"]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PortRangeTypeDef(BaseModel): + from: int + to: int + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateKxDatabaseRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + clientToken: str + description: Optional[str] = None + +class UpdateKxEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + name: Optional[str] = None + description: Optional[str] = None + clientToken: Optional[str] = None + +class UpdateKxUserRequestRequestTypeDef(BaseModel): + environmentId: str + userName: str + iamRole: str + clientToken: Optional[str] = None + +class CreateKxChangesetRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + changeRequests: Sequence[ChangeRequestTypeDef] + clientToken: str + +class EnvironmentTypeDef(BaseModel): + name: Optional[str] = None + environmentId: Optional[str] = None + awsAccountId: Optional[str] = None + status: Optional[EnvironmentStatusType] = None + environmentUrl: Optional[str] = None + description: Optional[str] = None + environmentArn: Optional[str] = None + sageMakerStudioDomainUrl: Optional[str] = None + kmsKeyId: Optional[str] = None + dedicatedServiceAccountId: Optional[str] = None + federationMode: Optional[FederationModeType] = None + federationParameters: Optional[FederationParametersTypeDef] = None + +class UpdateEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + name: Optional[str] = None + description: Optional[str] = None + federationMode: Optional[FederationModeType] = None + federationParameters: Optional[FederationParametersTypeDef] = None + +class CreateEnvironmentRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + kmsKeyId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + federationMode: Optional[FederationModeType] = None + federationParameters: Optional[FederationParametersTypeDef] = None + superuserParameters: Optional[SuperuserParametersTypeDef] = None + dataBundles: Optional[Sequence[str]] = None + +class CreateEnvironmentResponseTypeDef(BaseModel): + environmentId: str + environmentArn: str + environmentUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKxDatabaseResponseTypeDef(BaseModel): + databaseName: str + databaseArn: str + environmentId: str + description: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKxEnvironmentResponseTypeDef(BaseModel): + name: str + status: EnvironmentStatusType + environmentId: str + description: str + environmentArn: str + kmsKeyId: str + creationTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKxScalingGroupResponseTypeDef(BaseModel): + environmentId: str + scalingGroupName: str + hostType: str + availabilityZoneId: str + status: KxScalingGroupStatusType + lastModifiedTimestamp: datetime + createdTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKxUserResponseTypeDef(BaseModel): + userName: str + userArn: str + environmentId: str + iamRole: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxConnectionStringResponseTypeDef(BaseModel): + signedConnectionString: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxDatabaseResponseTypeDef(BaseModel): + databaseName: str + databaseArn: str + environmentId: str + description: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + lastCompletedChangesetId: str + numBytes: int + numChangesets: int + numFiles: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxScalingGroupResponseTypeDef(BaseModel): + scalingGroupName: str + scalingGroupArn: str + hostType: str + clusters: List[str] + availabilityZoneId: str + status: KxScalingGroupStatusType + statusReason: str + lastModifiedTimestamp: datetime + createdTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxUserResponseTypeDef(BaseModel): + userName: str + userArn: str + environmentId: str + iamRole: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxDatabaseResponseTypeDef(BaseModel): + databaseName: str + environmentId: str + description: str + lastModifiedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxUserResponseTypeDef(BaseModel): + userName: str + userArn: str + environmentId: str + iamRole: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKxChangesetResponseTypeDef(BaseModel): + changesetId: str + databaseName: str + environmentId: str + changeRequests: List[ChangeRequestTypeDef] + createdTimestamp: datetime + lastModifiedTimestamp: datetime + status: ChangesetStatusType + errorInfo: ErrorInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxChangesetResponseTypeDef(BaseModel): + changesetId: str + databaseName: str + environmentId: str + changeRequests: List[ChangeRequestTypeDef] + createdTimestamp: datetime + activeFromTimestamp: datetime + lastModifiedTimestamp: datetime + status: ChangesetStatusType + errorInfo: ErrorInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KxClusterTypeDef(BaseModel): + status: Optional[KxClusterStatusType] = None + statusReason: Optional[str] = None + clusterName: Optional[str] = None + clusterType: Optional[KxClusterTypeType] = None + clusterDescription: Optional[str] = None + releaseLabel: Optional[str] = None + volumes: Optional[List[VolumeTypeDef]] = None + initializationScript: Optional[str] = None + executionRole: Optional[str] = None + azMode: Optional[KxAzModeType] = None + availabilityZoneId: Optional[str] = None + lastModifiedTimestamp: Optional[datetime] = None + createdTimestamp: Optional[datetime] = None + +class CreateKxDataviewRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + dataviewName: str + azMode: KxAzModeType + clientToken: str + availabilityZoneId: Optional[str] = None + changesetId: Optional[str] = None + segmentConfigurations: Optional[Sequence[KxDataviewSegmentConfigurationTypeDef]] = None + autoUpdate: Optional[bool] = None + readWrite: Optional[bool] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateKxDataviewResponseTypeDef(BaseModel): + dataviewName: str + databaseName: str + environmentId: str + azMode: KxAzModeType + availabilityZoneId: str + changesetId: str + segmentConfigurations: List[KxDataviewSegmentConfigurationTypeDef] + description: str + autoUpdate: bool + readWrite: bool + createdTimestamp: datetime + lastModifiedTimestamp: datetime + status: KxDataviewStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class KxDataviewActiveVersionTypeDef(BaseModel): + changesetId: Optional[str] = None + segmentConfigurations: Optional[List[KxDataviewSegmentConfigurationTypeDef]] = None + attachedClusters: Optional[List[str]] = None + createdTimestamp: Optional[datetime] = None + versionId: Optional[str] = None + +class KxDataviewConfigurationTypeDef(BaseModel): + dataviewName: Optional[str] = None + dataviewVersionId: Optional[str] = None + changesetId: Optional[str] = None + segmentConfigurations: Optional[Sequence[KxDataviewSegmentConfigurationTypeDef]] = None + +class UpdateKxDataviewRequestRequestTypeDef(BaseModel): + environmentId: str + databaseName: str + dataviewName: str + clientToken: str + description: Optional[str] = None + changesetId: Optional[str] = None + segmentConfigurations: Optional[Sequence[KxDataviewSegmentConfigurationTypeDef]] = None + +class CreateKxVolumeRequestRequestTypeDef(BaseModel): + environmentId: str + volumeType: Literal["NAS_1"] + volumeName: str + azMode: KxAzModeType + availabilityZoneIds: Sequence[str] + clientToken: Optional[str] = None + description: Optional[str] = None + nas1Configuration: Optional[KxNAS1ConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateKxVolumeResponseTypeDef(BaseModel): + environmentId: str + volumeName: str + volumeType: Literal["NAS_1"] + volumeArn: str + nas1Configuration: KxNAS1ConfigurationTypeDef + status: KxVolumeStatusType + statusReason: str + azMode: KxAzModeType + description: str + availabilityZoneIds: List[str] + createdTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxVolumeRequestRequestTypeDef(BaseModel): + environmentId: str + volumeName: str + description: Optional[str] = None + clientToken: Optional[str] = None + nas1Configuration: Optional[KxNAS1ConfigurationTypeDef] = None + +class GetKxVolumeResponseTypeDef(BaseModel): + environmentId: str + volumeName: str + volumeType: Literal["NAS_1"] + volumeArn: str + nas1Configuration: KxNAS1ConfigurationTypeDef + status: KxVolumeStatusType + statusReason: str + createdTimestamp: datetime + description: str + azMode: KxAzModeType + availabilityZoneIds: List[str] + lastModifiedTimestamp: datetime + attachedClusters: List[KxAttachedClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxVolumeResponseTypeDef(BaseModel): + environmentId: str + volumeName: str + volumeType: Literal["NAS_1"] + volumeArn: str + nas1Configuration: KxNAS1ConfigurationTypeDef + status: KxVolumeStatusType + description: str + statusReason: str + createdTimestamp: datetime + azMode: KxAzModeType + availabilityZoneIds: List[str] + lastModifiedTimestamp: datetime + attachedClusters: List[KxAttachedClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxChangesetsResponseTypeDef(BaseModel): + kxChangesets: List[KxChangesetListEntryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxClusterCodeConfigurationRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + code: CodeConfigurationTypeDef + clientToken: Optional[str] = None + initializationScript: Optional[str] = None + commandLineArguments: Optional[Sequence[KxCommandLineArgumentTypeDef]] = None + deploymentConfiguration: Optional[KxClusterCodeDeploymentConfigurationTypeDef] = None + +class ListKxDatabasesResponseTypeDef(BaseModel): + kxDatabases: List[KxDatabaseListEntryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxClusterNodesResponseTypeDef(BaseModel): + nodes: List[KxNodeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxScalingGroupsResponseTypeDef(BaseModel): + scalingGroups: List[KxScalingGroupTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxUsersResponseTypeDef(BaseModel): + users: List[KxUserTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxVolumesResponseTypeDef(BaseModel): + kxVolumeSummaries: List[KxVolumeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxEnvironmentsRequestListKxEnvironmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class NetworkACLEntryTypeDef(BaseModel): + ruleNumber: int + protocol: str + ruleAction: RuleActionType + cidrBlock: str + portRange: Optional[PortRangeTypeDef] = None + icmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + +class GetEnvironmentResponseTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsResponseTypeDef(BaseModel): + environments: List[EnvironmentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentResponseTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxClustersResponseTypeDef(BaseModel): + kxClusterSummaries: List[KxClusterTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxDataviewResponseTypeDef(BaseModel): + databaseName: str + dataviewName: str + azMode: KxAzModeType + availabilityZoneId: str + changesetId: str + segmentConfigurations: List[KxDataviewSegmentConfigurationTypeDef] + activeVersions: List[KxDataviewActiveVersionTypeDef] + description: str + autoUpdate: bool + readWrite: bool + environmentId: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + status: KxDataviewStatusType + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class KxDataviewListEntryTypeDef(BaseModel): + environmentId: Optional[str] = None + databaseName: Optional[str] = None + dataviewName: Optional[str] = None + azMode: Optional[KxAzModeType] = None + availabilityZoneId: Optional[str] = None + changesetId: Optional[str] = None + segmentConfigurations: Optional[List[KxDataviewSegmentConfigurationTypeDef]] = None + activeVersions: Optional[List[KxDataviewActiveVersionTypeDef]] = None + status: Optional[KxDataviewStatusType] = None + description: Optional[str] = None + autoUpdate: Optional[bool] = None + readWrite: Optional[bool] = None + createdTimestamp: Optional[datetime] = None + lastModifiedTimestamp: Optional[datetime] = None + statusReason: Optional[str] = None + +class UpdateKxDataviewResponseTypeDef(BaseModel): + environmentId: str + databaseName: str + dataviewName: str + azMode: KxAzModeType + availabilityZoneId: str + changesetId: str + segmentConfigurations: List[KxDataviewSegmentConfigurationTypeDef] + activeVersions: List[KxDataviewActiveVersionTypeDef] + status: KxDataviewStatusType + autoUpdate: bool + readWrite: bool + description: str + createdTimestamp: datetime + lastModifiedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class KxDatabaseConfigurationTypeDef(BaseModel): + databaseName: str + cacheConfigurations: Optional[Sequence[KxDatabaseCacheConfigurationTypeDef]] = None + changesetId: Optional[str] = None + dataviewName: Optional[str] = None + dataviewConfiguration: Optional[KxDataviewConfigurationTypeDef] = None + +class TransitGatewayConfigurationTypeDef(BaseModel): + transitGatewayID: str + routableCIDRSpace: str + attachmentNetworkAclConfiguration: Optional[List[NetworkACLEntryTypeDef]] = None + +class ListKxDataviewsResponseTypeDef(BaseModel): + kxDataviews: List[KxDataviewListEntryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKxClusterRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + clusterType: KxClusterTypeType + releaseLabel: str + vpcConfiguration: VpcConfigurationTypeDef + azMode: KxAzModeType + clientToken: Optional[str] = None + tickerplantLogConfiguration: Optional[TickerplantLogConfigurationTypeDef] = None + databases: Optional[Sequence[KxDatabaseConfigurationTypeDef]] = None + cacheStorageConfigurations: Optional[Sequence[KxCacheStorageConfigurationTypeDef]] = None + autoScalingConfiguration: Optional[AutoScalingConfigurationTypeDef] = None + clusterDescription: Optional[str] = None + capacityConfiguration: Optional[CapacityConfigurationTypeDef] = None + initializationScript: Optional[str] = None + commandLineArguments: Optional[Sequence[KxCommandLineArgumentTypeDef]] = None + code: Optional[CodeConfigurationTypeDef] = None + executionRole: Optional[str] = None + savedownStorageConfiguration: Optional[KxSavedownStorageConfigurationTypeDef] = None + availabilityZoneId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + scalingGroupConfiguration: Optional[KxScalingGroupConfigurationTypeDef] = None + +class CreateKxClusterResponseTypeDef(BaseModel): + environmentId: str + status: KxClusterStatusType + statusReason: str + clusterName: str + clusterType: KxClusterTypeType + tickerplantLogConfiguration: TickerplantLogConfigurationTypeDef + volumes: List[VolumeTypeDef] + databases: List[KxDatabaseConfigurationTypeDef] + cacheStorageConfigurations: List[KxCacheStorageConfigurationTypeDef] + autoScalingConfiguration: AutoScalingConfigurationTypeDef + clusterDescription: str + capacityConfiguration: CapacityConfigurationTypeDef + releaseLabel: str + vpcConfiguration: VpcConfigurationTypeDef + initializationScript: str + commandLineArguments: List[KxCommandLineArgumentTypeDef] + code: CodeConfigurationTypeDef + executionRole: str + lastModifiedTimestamp: datetime + savedownStorageConfiguration: KxSavedownStorageConfigurationTypeDef + azMode: KxAzModeType + availabilityZoneId: str + createdTimestamp: datetime + scalingGroupConfiguration: KxScalingGroupConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKxClusterResponseTypeDef(BaseModel): + status: KxClusterStatusType + statusReason: str + clusterName: str + clusterType: KxClusterTypeType + tickerplantLogConfiguration: TickerplantLogConfigurationTypeDef + volumes: List[VolumeTypeDef] + databases: List[KxDatabaseConfigurationTypeDef] + cacheStorageConfigurations: List[KxCacheStorageConfigurationTypeDef] + autoScalingConfiguration: AutoScalingConfigurationTypeDef + clusterDescription: str + capacityConfiguration: CapacityConfigurationTypeDef + releaseLabel: str + vpcConfiguration: VpcConfigurationTypeDef + initializationScript: str + commandLineArguments: List[KxCommandLineArgumentTypeDef] + code: CodeConfigurationTypeDef + executionRole: str + lastModifiedTimestamp: datetime + savedownStorageConfiguration: KxSavedownStorageConfigurationTypeDef + azMode: KxAzModeType + availabilityZoneId: str + createdTimestamp: datetime + scalingGroupConfiguration: KxScalingGroupConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxClusterDatabasesRequestRequestTypeDef(BaseModel): + environmentId: str + clusterName: str + databases: Sequence[KxDatabaseConfigurationTypeDef] + clientToken: Optional[str] = None + deploymentConfiguration: Optional[KxDeploymentConfigurationTypeDef] = None + +class GetKxEnvironmentResponseTypeDef(BaseModel): + name: str + environmentId: str + awsAccountId: str + status: EnvironmentStatusType + tgwStatus: tgwStatusType + dnsStatus: dnsStatusType + errorMessage: str + description: str + environmentArn: str + kmsKeyId: str + dedicatedServiceAccountId: str + transitGatewayConfiguration: TransitGatewayConfigurationTypeDef + customDNSConfiguration: List[CustomDNSServerTypeDef] + creationTimestamp: datetime + updateTimestamp: datetime + availabilityZoneIds: List[str] + certificateAuthorityArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class KxEnvironmentTypeDef(BaseModel): + name: Optional[str] = None + environmentId: Optional[str] = None + awsAccountId: Optional[str] = None + status: Optional[EnvironmentStatusType] = None + tgwStatus: Optional[tgwStatusType] = None + dnsStatus: Optional[dnsStatusType] = None + errorMessage: Optional[str] = None + description: Optional[str] = None + environmentArn: Optional[str] = None + kmsKeyId: Optional[str] = None + dedicatedServiceAccountId: Optional[str] = None + transitGatewayConfiguration: Optional[TransitGatewayConfigurationTypeDef] = None + customDNSConfiguration: Optional[List[CustomDNSServerTypeDef]] = None + creationTimestamp: Optional[datetime] = None + updateTimestamp: Optional[datetime] = None + availabilityZoneIds: Optional[List[str]] = None + certificateAuthorityArn: Optional[str] = None + +class UpdateKxEnvironmentNetworkRequestRequestTypeDef(BaseModel): + environmentId: str + transitGatewayConfiguration: Optional[TransitGatewayConfigurationTypeDef] = None + customDNSConfiguration: Optional[Sequence[CustomDNSServerTypeDef]] = None + clientToken: Optional[str] = None + +class UpdateKxEnvironmentNetworkResponseTypeDef(BaseModel): + name: str + environmentId: str + awsAccountId: str + status: EnvironmentStatusType + tgwStatus: tgwStatusType + dnsStatus: dnsStatusType + errorMessage: str + description: str + environmentArn: str + kmsKeyId: str + dedicatedServiceAccountId: str + transitGatewayConfiguration: TransitGatewayConfigurationTypeDef + customDNSConfiguration: List[CustomDNSServerTypeDef] + creationTimestamp: datetime + updateTimestamp: datetime + availabilityZoneIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKxEnvironmentResponseTypeDef(BaseModel): + name: str + environmentId: str + awsAccountId: str + status: EnvironmentStatusType + tgwStatus: tgwStatusType + dnsStatus: dnsStatusType + errorMessage: str + description: str + environmentArn: str + kmsKeyId: str + dedicatedServiceAccountId: str + transitGatewayConfiguration: TransitGatewayConfigurationTypeDef + customDNSConfiguration: List[CustomDNSServerTypeDef] + creationTimestamp: datetime + updateTimestamp: datetime + availabilityZoneIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListKxEnvironmentsResponseTypeDef(BaseModel): + environments: List[KxEnvironmentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/finspace_constants.py b/aws_resource_validator/pydantic_models/finspace_constants.py new file mode 100644 index 00000000..f81c7ad5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/finspace_constants.py @@ -0,0 +1,462 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AutoScalingMetricType = Literal["CPU_UTILIZATION_PERCENTAGE"] +ChangeTypeType = Literal["DELETE", "PUT"] +ChangesetStatusType = Literal["COMPLETED", "FAILED", "PENDING", "PROCESSING"] +EnvironmentStatusType = Literal["CREATED", + "CREATE_REQUESTED", + "CREATING", + "DELETED", + "DELETE_REQUESTED", + "DELETING", + "FAILED_CREATION", + "FAILED_DELETION", + "FAILED_UPDATING_NETWORK", + "RETRY_DELETION", + "SUSPENDED", + "UPDATE_NETWORK_REQUESTED", + "UPDATING_NETWORK",] +ErrorDetailsType = Literal["A user recoverable error has occurred", + "An internal error has occurred.", + "Cancelled", + "Missing required permission to perform this request.", + "One or more inputs to this request were not found.", + "Service limits have been exceeded.", + "The inputs to this request are invalid.", + "The system temporarily lacks sufficient resources to process the request.",] +FederationModeType = Literal["FEDERATED", "LOCAL"] +IPAddressTypeType = Literal["IP_V4"] +KxAzModeType = Literal["MULTI", "SINGLE"] +KxClusterCodeDeploymentStrategyType = Literal["FORCE", "NO_RESTART", "ROLLING"] +KxClusterStatusType = Literal["CREATE_FAILED", + "CREATING", + "DELETED", + "DELETE_FAILED", + "DELETING", + "PENDING", + "RUNNING", + "UPDATING",] +KxClusterTypeType = Literal["GATEWAY", "GP", "HDB", "RDB", "TICKERPLANT"] +KxDataviewStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +KxDeploymentStrategyType = Literal["NO_RESTART", "ROLLING"] +KxNAS1TypeType = Literal["HDD_12", "SSD_1000", "SSD_250"] +KxNodeStatusType = Literal["PROVISIONING", "RUNNING"] +KxSavedownStorageTypeType = Literal["SDS01"] +KxScalingGroupStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETED", "DELETE_FAILED", "DELETING"] +KxVolumeStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATING", + "DELETED", + "DELETE_FAILED", + "DELETING", + "UPDATED", + "UPDATE_FAILED", + "UPDATING",] +KxVolumeTypeType = Literal["NAS_1"] +ListKxEnvironmentsPaginatorName = Literal["list_kx_environments"] +RuleActionType = Literal["allow", "deny"] +VolumeTypeType = Literal["NAS_1"] +dnsStatusType = Literal["FAILED_UPDATE", "NONE", "SUCCESSFULLY_UPDATED", "UPDATE_REQUESTED", "UPDATING"] +tgwStatusType = Literal["FAILED_UPDATE", "NONE", "SUCCESSFULLY_UPDATED", "UPDATE_REQUESTED", "UPDATING"] +finspaceServiceName = Literal["finspace"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_kx_environments"] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/finspace_data_classes.py b/aws_resource_validator/pydantic_models/finspace_data_classes.py new file mode 100644 index 00000000..abf576fd --- /dev/null +++ b/aws_resource_validator/pydantic_models/finspace_data_classes.py @@ -0,0 +1,569 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.finspace_data_constants import * + +class AssociateUserToPermissionGroupRequestRequestTypeDef(BaseModel): + permissionGroupId: str + userId: str + clientToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AwsCredentialsTypeDef(BaseModel): + accessKeyId: Optional[str] = None + secretAccessKey: Optional[str] = None + sessionToken: Optional[str] = None + expiration: Optional[int] = None + +class ChangesetErrorInfoTypeDef(BaseModel): + errorMessage: Optional[str] = None + errorCategory: Optional[ErrorCategoryType] = None + +class ColumnDefinitionTypeDef(BaseModel): + dataType: Optional[ColumnDataTypeType] = None + columnName: Optional[str] = None + columnDescription: Optional[str] = None + +class CreateChangesetRequestRequestTypeDef(BaseModel): + datasetId: str + changeType: ChangeTypeType + sourceParams: Mapping[str, str] + formatParams: Mapping[str, str] + clientToken: Optional[str] = None + +class DataViewDestinationTypeParamsTypeDef(BaseModel): + destinationType: str + s3DestinationExportFileFormat: Optional[ExportFileFormatType] = None + s3DestinationExportFileFormatOptions: Optional[Mapping[str, str]] = None + +class DatasetOwnerInfoTypeDef(BaseModel): + name: Optional[str] = None + phoneNumber: Optional[str] = None + email: Optional[str] = None + +class CreatePermissionGroupRequestRequestTypeDef(BaseModel): + name: str + applicationPermissions: Sequence[ApplicationPermissionType] + description: Optional[str] = None + clientToken: Optional[str] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + emailAddress: str + type: UserTypeType + firstName: Optional[str] = None + lastName: Optional[str] = None + apiAccess: Optional[ApiAccessType] = None + apiAccessPrincipalArn: Optional[str] = None + clientToken: Optional[str] = None + +class CredentialsTypeDef(BaseModel): + accessKeyId: Optional[str] = None + secretAccessKey: Optional[str] = None + sessionToken: Optional[str] = None + +class DataViewDestinationTypeParamsPaginatorTypeDef(BaseModel): + destinationType: str + s3DestinationExportFileFormat: Optional[ExportFileFormatType] = None + s3DestinationExportFileFormatOptions: Optional[Dict[str, str]] = None + +class DataViewErrorInfoTypeDef(BaseModel): + errorMessage: Optional[str] = None + errorCategory: Optional[ErrorCategoryType] = None + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + datasetId: str + clientToken: Optional[str] = None + +class DeletePermissionGroupRequestRequestTypeDef(BaseModel): + permissionGroupId: str + clientToken: Optional[str] = None + +class DisableUserRequestRequestTypeDef(BaseModel): + userId: str + clientToken: Optional[str] = None + +class DisassociateUserFromPermissionGroupRequestRequestTypeDef(BaseModel): + permissionGroupId: str + userId: str + clientToken: Optional[str] = None + +class EnableUserRequestRequestTypeDef(BaseModel): + userId: str + clientToken: Optional[str] = None + +class GetChangesetRequestRequestTypeDef(BaseModel): + datasetId: str + changesetId: str + +class GetDataViewRequestRequestTypeDef(BaseModel): + dataViewId: str + datasetId: str + +class GetDatasetRequestRequestTypeDef(BaseModel): + datasetId: str + +class GetExternalDataViewAccessDetailsRequestRequestTypeDef(BaseModel): + dataViewId: str + datasetId: str + +class S3LocationTypeDef(BaseModel): + bucket: str + key: str + +class GetPermissionGroupRequestRequestTypeDef(BaseModel): + permissionGroupId: str + +class PermissionGroupTypeDef(BaseModel): + permissionGroupId: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + applicationPermissions: Optional[List[ApplicationPermissionType]] = None + createTime: Optional[int] = None + lastModifiedTime: Optional[int] = None + membershipStatus: Optional[PermissionGroupMembershipStatusType] = None + +class GetProgrammaticAccessCredentialsRequestRequestTypeDef(BaseModel): + environmentId: str + durationInMinutes: Optional[int] = None + +class GetUserRequestRequestTypeDef(BaseModel): + userId: str + +class GetWorkingLocationRequestRequestTypeDef(BaseModel): + locationType: Optional[locationTypeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChangesetsRequestRequestTypeDef(BaseModel): + datasetId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDataViewsRequestRequestTypeDef(BaseModel): + datasetId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPermissionGroupsByUserRequestRequestTypeDef(BaseModel): + userId: str + maxResults: int + nextToken: Optional[str] = None + +class PermissionGroupByUserTypeDef(BaseModel): + permissionGroupId: Optional[str] = None + name: Optional[str] = None + membershipStatus: Optional[PermissionGroupMembershipStatusType] = None + +class ListPermissionGroupsRequestRequestTypeDef(BaseModel): + maxResults: int + nextToken: Optional[str] = None + +class ListUsersByPermissionGroupRequestRequestTypeDef(BaseModel): + permissionGroupId: str + maxResults: int + nextToken: Optional[str] = None + +class UserByPermissionGroupTypeDef(BaseModel): + userId: Optional[str] = None + status: Optional[UserStatusType] = None + firstName: Optional[str] = None + lastName: Optional[str] = None + emailAddress: Optional[str] = None + type: Optional[UserTypeType] = None + apiAccess: Optional[ApiAccessType] = None + apiAccessPrincipalArn: Optional[str] = None + membershipStatus: Optional[PermissionGroupMembershipStatusType] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + maxResults: int + nextToken: Optional[str] = None + +class UserTypeDef(BaseModel): + userId: Optional[str] = None + status: Optional[UserStatusType] = None + firstName: Optional[str] = None + lastName: Optional[str] = None + emailAddress: Optional[str] = None + type: Optional[UserTypeType] = None + apiAccess: Optional[ApiAccessType] = None + apiAccessPrincipalArn: Optional[str] = None + createTime: Optional[int] = None + lastEnabledTime: Optional[int] = None + lastDisabledTime: Optional[int] = None + lastModifiedTime: Optional[int] = None + lastLoginTime: Optional[int] = None + +class ResourcePermissionTypeDef(BaseModel): + permission: Optional[str] = None + +class ResetUserPasswordRequestRequestTypeDef(BaseModel): + userId: str + clientToken: Optional[str] = None + +class UpdateChangesetRequestRequestTypeDef(BaseModel): + datasetId: str + changesetId: str + sourceParams: Mapping[str, str] + formatParams: Mapping[str, str] + clientToken: Optional[str] = None + +class UpdatePermissionGroupRequestRequestTypeDef(BaseModel): + permissionGroupId: str + name: Optional[str] = None + description: Optional[str] = None + applicationPermissions: Optional[Sequence[ApplicationPermissionType]] = None + clientToken: Optional[str] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + userId: str + type: Optional[UserTypeType] = None + firstName: Optional[str] = None + lastName: Optional[str] = None + apiAccess: Optional[ApiAccessType] = None + apiAccessPrincipalArn: Optional[str] = None + clientToken: Optional[str] = None + +class AssociateUserToPermissionGroupResponseTypeDef(BaseModel): + statusCode: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChangesetResponseTypeDef(BaseModel): + datasetId: str + changesetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataViewResponseTypeDef(BaseModel): + datasetId: str + dataViewId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetResponseTypeDef(BaseModel): + datasetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePermissionGroupResponseTypeDef(BaseModel): + permissionGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + userId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDatasetResponseTypeDef(BaseModel): + datasetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePermissionGroupResponseTypeDef(BaseModel): + permissionGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableUserResponseTypeDef(BaseModel): + userId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateUserFromPermissionGroupResponseTypeDef(BaseModel): + statusCode: int + ResponseMetadata: ResponseMetadataTypeDef + +class EnableUserResponseTypeDef(BaseModel): + userId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserResponseTypeDef(BaseModel): + userId: str + status: UserStatusType + firstName: str + lastName: str + emailAddress: str + type: UserTypeType + apiAccess: ApiAccessType + apiAccessPrincipalArn: str + createTime: int + lastEnabledTime: int + lastDisabledTime: int + lastModifiedTime: int + lastLoginTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkingLocationResponseTypeDef(BaseModel): + s3Uri: str + s3Path: str + s3Bucket: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetUserPasswordResponseTypeDef(BaseModel): + userId: str + temporaryPassword: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChangesetResponseTypeDef(BaseModel): + changesetId: str + datasetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatasetResponseTypeDef(BaseModel): + datasetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePermissionGroupResponseTypeDef(BaseModel): + permissionGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserResponseTypeDef(BaseModel): + userId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChangesetSummaryTypeDef(BaseModel): + changesetId: Optional[str] = None + changesetArn: Optional[str] = None + datasetId: Optional[str] = None + changeType: Optional[ChangeTypeType] = None + sourceParams: Optional[Dict[str, str]] = None + formatParams: Optional[Dict[str, str]] = None + createTime: Optional[int] = None + status: Optional[IngestionStatusType] = None + errorInfo: Optional[ChangesetErrorInfoTypeDef] = None + activeUntilTimestamp: Optional[int] = None + activeFromTimestamp: Optional[int] = None + updatesChangesetId: Optional[str] = None + updatedByChangesetId: Optional[str] = None + +class GetChangesetResponseTypeDef(BaseModel): + changesetId: str + changesetArn: str + datasetId: str + changeType: ChangeTypeType + sourceParams: Dict[str, str] + formatParams: Dict[str, str] + createTime: int + status: IngestionStatusType + errorInfo: ChangesetErrorInfoTypeDef + activeUntilTimestamp: int + activeFromTimestamp: int + updatesChangesetId: str + updatedByChangesetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SchemaDefinitionPaginatorTypeDef(BaseModel): + columns: Optional[List[ColumnDefinitionTypeDef]] = None + primaryKeyColumns: Optional[List[str]] = None + +class SchemaDefinitionTypeDef(BaseModel): + columns: Optional[Sequence[ColumnDefinitionTypeDef]] = None + primaryKeyColumns: Optional[Sequence[str]] = None + +class CreateDataViewRequestRequestTypeDef(BaseModel): + datasetId: str + destinationTypeParams: DataViewDestinationTypeParamsTypeDef + clientToken: Optional[str] = None + autoUpdate: Optional[bool] = None + sortColumns: Optional[Sequence[str]] = None + partitionColumns: Optional[Sequence[str]] = None + asOfTimestamp: Optional[int] = None + +class GetProgrammaticAccessCredentialsResponseTypeDef(BaseModel): + credentials: CredentialsTypeDef + durationInMinutes: int + ResponseMetadata: ResponseMetadataTypeDef + +class DataViewSummaryPaginatorTypeDef(BaseModel): + dataViewId: Optional[str] = None + dataViewArn: Optional[str] = None + datasetId: Optional[str] = None + asOfTimestamp: Optional[int] = None + partitionColumns: Optional[List[str]] = None + sortColumns: Optional[List[str]] = None + status: Optional[DataViewStatusType] = None + errorInfo: Optional[DataViewErrorInfoTypeDef] = None + destinationTypeProperties: Optional[DataViewDestinationTypeParamsPaginatorTypeDef] = None + autoUpdate: Optional[bool] = None + createTime: Optional[int] = None + lastModifiedTime: Optional[int] = None + +class DataViewSummaryTypeDef(BaseModel): + dataViewId: Optional[str] = None + dataViewArn: Optional[str] = None + datasetId: Optional[str] = None + asOfTimestamp: Optional[int] = None + partitionColumns: Optional[List[str]] = None + sortColumns: Optional[List[str]] = None + status: Optional[DataViewStatusType] = None + errorInfo: Optional[DataViewErrorInfoTypeDef] = None + destinationTypeProperties: Optional[DataViewDestinationTypeParamsTypeDef] = None + autoUpdate: Optional[bool] = None + createTime: Optional[int] = None + lastModifiedTime: Optional[int] = None + +class GetDataViewResponseTypeDef(BaseModel): + autoUpdate: bool + partitionColumns: List[str] + datasetId: str + asOfTimestamp: int + errorInfo: DataViewErrorInfoTypeDef + lastModifiedTime: int + createTime: int + sortColumns: List[str] + dataViewId: str + dataViewArn: str + destinationTypeParams: DataViewDestinationTypeParamsTypeDef + status: DataViewStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetExternalDataViewAccessDetailsResponseTypeDef(BaseModel): + credentials: AwsCredentialsTypeDef + s3Location: S3LocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPermissionGroupResponseTypeDef(BaseModel): + permissionGroup: PermissionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionGroupsResponseTypeDef(BaseModel): + permissionGroups: List[PermissionGroupTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChangesetsRequestListChangesetsPaginateTypeDef(BaseModel): + datasetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataViewsRequestListDataViewsPaginateTypeDef(BaseModel): + datasetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetsRequestListDatasetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionGroupsRequestListPermissionGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionGroupsByUserResponseTypeDef(BaseModel): + permissionGroups: List[PermissionGroupByUserTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersByPermissionGroupResponseTypeDef(BaseModel): + users: List[UserByPermissionGroupTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersResponseTypeDef(BaseModel): + users: List[UserTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PermissionGroupParamsTypeDef(BaseModel): + permissionGroupId: Optional[str] = None + datasetPermissions: Optional[Sequence[ResourcePermissionTypeDef]] = None + +class ListChangesetsResponseTypeDef(BaseModel): + changesets: List[ChangesetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SchemaUnionPaginatorTypeDef(BaseModel): + tabularSchemaConfig: Optional[SchemaDefinitionPaginatorTypeDef] = None + +class SchemaUnionTypeDef(BaseModel): + tabularSchemaConfig: Optional[SchemaDefinitionTypeDef] = None + +class ListDataViewsResponsePaginatorTypeDef(BaseModel): + nextToken: str + dataViews: List[DataViewSummaryPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataViewsResponseTypeDef(BaseModel): + nextToken: str + dataViews: List[DataViewSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetPaginatorTypeDef(BaseModel): + datasetId: Optional[str] = None + datasetArn: Optional[str] = None + datasetTitle: Optional[str] = None + kind: Optional[DatasetKindType] = None + datasetDescription: Optional[str] = None + ownerInfo: Optional[DatasetOwnerInfoTypeDef] = None + createTime: Optional[int] = None + lastModifiedTime: Optional[int] = None + schemaDefinition: Optional[SchemaUnionPaginatorTypeDef] = None + alias: Optional[str] = None + +class CreateDatasetRequestRequestTypeDef(BaseModel): + datasetTitle: str + kind: DatasetKindType + permissionGroupParams: PermissionGroupParamsTypeDef + clientToken: Optional[str] = None + datasetDescription: Optional[str] = None + ownerInfo: Optional[DatasetOwnerInfoTypeDef] = None + alias: Optional[str] = None + schemaDefinition: Optional[SchemaUnionTypeDef] = None + +class DatasetTypeDef(BaseModel): + datasetId: Optional[str] = None + datasetArn: Optional[str] = None + datasetTitle: Optional[str] = None + kind: Optional[DatasetKindType] = None + datasetDescription: Optional[str] = None + ownerInfo: Optional[DatasetOwnerInfoTypeDef] = None + createTime: Optional[int] = None + lastModifiedTime: Optional[int] = None + schemaDefinition: Optional[SchemaUnionTypeDef] = None + alias: Optional[str] = None + +class GetDatasetResponseTypeDef(BaseModel): + datasetId: str + datasetArn: str + datasetTitle: str + kind: DatasetKindType + datasetDescription: str + createTime: int + lastModifiedTime: int + schemaDefinition: SchemaUnionTypeDef + alias: str + status: DatasetStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatasetRequestRequestTypeDef(BaseModel): + datasetId: str + datasetTitle: str + kind: DatasetKindType + clientToken: Optional[str] = None + datasetDescription: Optional[str] = None + alias: Optional[str] = None + schemaDefinition: Optional[SchemaUnionTypeDef] = None + +class ListDatasetsResponsePaginatorTypeDef(BaseModel): + datasets: List[DatasetPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponseTypeDef(BaseModel): + datasets: List[DatasetTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/finspace_data_constants.py b/aws_resource_validator/pydantic_models/finspace_data_constants.py new file mode 100644 index 00000000..febb4f33 --- /dev/null +++ b/aws_resource_validator/pydantic_models/finspace_data_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApiAccessType = Literal["DISABLED", "ENABLED"] +ApplicationPermissionType = Literal["AccessNotebooks", + "CreateDataset", + "GetTemporaryCredentials", + "ManageAttributeSets", + "ManageClusters", + "ManageUsersAndGroups", + "ViewAuditData",] +ChangeTypeType = Literal["APPEND", "MODIFY", "REPLACE"] +ColumnDataTypeType = Literal["BIGINT", + "BINARY", + "BOOLEAN", + "CHAR", + "DATE", + "DATETIME", + "DOUBLE", + "FLOAT", + "INTEGER", + "SMALLINT", + "STRING", + "TINYINT",] +DataViewStatusType = Literal["CANCELLED", + "FAILED", + "FAILED_CLEANUP_FAILED", + "PENDING", + "RUNNING", + "STARTING", + "SUCCESS", + "TIMEOUT",] +DatasetKindType = Literal["NON_TABULAR", "TABULAR"] +DatasetStatusType = Literal["FAILED", "PENDING", "RUNNING", "SUCCESS"] +ErrorCategoryType = Literal["ACCESS_DENIED", + "CANCELLED", + "INTERNAL_SERVICE_EXCEPTION", + "RESOURCE_NOT_FOUND", + "SERVICE_QUOTA_EXCEEDED", + "THROTTLING", + "USER_RECOVERABLE", + "VALIDATION",] +ExportFileFormatType = Literal["DELIMITED_TEXT", "PARQUET"] +IngestionStatusType = Literal["FAILED", "PENDING", "RUNNING", "STOP_REQUESTED", "SUCCESS"] +ListChangesetsPaginatorName = Literal["list_changesets"] +ListDataViewsPaginatorName = Literal["list_data_views"] +ListDatasetsPaginatorName = Literal["list_datasets"] +ListPermissionGroupsPaginatorName = Literal["list_permission_groups"] +ListUsersPaginatorName = Literal["list_users"] +PermissionGroupMembershipStatusType = Literal["ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"] +UserStatusType = Literal["CREATING", "DISABLED", "ENABLED"] +UserTypeType = Literal["APP_USER", "SUPER_USER"] +locationTypeType = Literal["INGESTION", "SAGEMAKER"] +FinSpaceDataServiceName = Literal["finspace-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_changesets", "list_data_views", "list_datasets", "list_permission_groups", "list_users"] +RegionName = Literal["ca-central-1", "eu-west-1", "us-east-1", "us-east-2", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/firehose_classes.py b/aws_resource_validator/pydantic_models/firehose_classes.py new file mode 100644 index 00000000..7719c79d --- /dev/null +++ b/aws_resource_validator/pydantic_models/firehose_classes.py @@ -0,0 +1,817 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.firehose_constants import * + +class AmazonOpenSearchServerlessBufferingHintsTypeDef(BaseModel): + IntervalInSeconds: Optional[int] = None + SizeInMBs: Optional[int] = None + +class AmazonOpenSearchServerlessRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class CloudWatchLoggingOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + LogGroupName: Optional[str] = None + LogStreamName: Optional[str] = None + +class VpcConfigurationTypeDef(BaseModel): + SubnetIds: Sequence[str] + RoleARN: str + SecurityGroupIds: Sequence[str] + +class VpcConfigurationDescriptionTypeDef(BaseModel): + SubnetIds: List[str] + RoleARN: str + SecurityGroupIds: List[str] + VpcId: str + +class AmazonopensearchserviceBufferingHintsTypeDef(BaseModel): + IntervalInSeconds: Optional[int] = None + SizeInMBs: Optional[int] = None + +class AmazonopensearchserviceRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class DocumentIdOptionsTypeDef(BaseModel): + DefaultDocumentIdFormat: DefaultDocumentIdFormatType + +class AuthenticationConfigurationTypeDef(BaseModel): + RoleARN: str + Connectivity: ConnectivityType + +class BufferingHintsTypeDef(BaseModel): + SizeInMBs: Optional[int] = None + IntervalInSeconds: Optional[int] = None + +class CopyCommandTypeDef(BaseModel): + DataTableName: str + DataTableColumns: Optional[str] = None + CopyOptions: Optional[str] = None + +class DeliveryStreamEncryptionConfigurationInputTypeDef(BaseModel): + KeyType: KeyTypeType + KeyARN: Optional[str] = None + +class KinesisStreamSourceConfigurationTypeDef(BaseModel): + KinesisStreamARN: str + RoleARN: str + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class SchemaConfigurationTypeDef(BaseModel): + RoleARN: Optional[str] = None + CatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + Region: Optional[str] = None + VersionId: Optional[str] = None + +class DeleteDeliveryStreamInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + AllowForceDelete: Optional[bool] = None + +class FailureDescriptionTypeDef(BaseModel): + Type: DeliveryStreamFailureTypeType + Details: str + +class DescribeDeliveryStreamInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + Limit: Optional[int] = None + ExclusiveStartDestinationId: Optional[str] = None + +class HiveJsonSerDeOutputTypeDef(BaseModel): + TimestampFormats: Optional[List[str]] = None + +class OpenXJsonSerDeOutputTypeDef(BaseModel): + ConvertDotsInJsonKeysToUnderscores: Optional[bool] = None + CaseInsensitive: Optional[bool] = None + ColumnToJsonKeyMappings: Optional[Dict[str, str]] = None + +class HiveJsonSerDeTypeDef(BaseModel): + TimestampFormats: Optional[Sequence[str]] = None + +class OpenXJsonSerDeTypeDef(BaseModel): + ConvertDotsInJsonKeysToUnderscores: Optional[bool] = None + CaseInsensitive: Optional[bool] = None + ColumnToJsonKeyMappings: Optional[Mapping[str, str]] = None + +class RetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class ElasticsearchBufferingHintsTypeDef(BaseModel): + IntervalInSeconds: Optional[int] = None + SizeInMBs: Optional[int] = None + +class ElasticsearchRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class KMSEncryptionConfigTypeDef(BaseModel): + AWSKMSKeyARN: str + +class HttpEndpointBufferingHintsTypeDef(BaseModel): + SizeInMBs: Optional[int] = None + IntervalInSeconds: Optional[int] = None + +class HttpEndpointCommonAttributeTypeDef(BaseModel): + AttributeName: str + AttributeValue: str + +class HttpEndpointConfigurationTypeDef(BaseModel): + Url: str + Name: Optional[str] = None + AccessKey: Optional[str] = None + +class HttpEndpointDescriptionTypeDef(BaseModel): + Url: Optional[str] = None + Name: Optional[str] = None + +class HttpEndpointRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class SecretsManagerConfigurationTypeDef(BaseModel): + Enabled: bool + SecretARN: Optional[str] = None + RoleARN: Optional[str] = None + +class KinesisStreamSourceDescriptionTypeDef(BaseModel): + KinesisStreamARN: Optional[str] = None + RoleARN: Optional[str] = None + DeliveryStartTimestamp: Optional[datetime] = None + +class ListDeliveryStreamsInputRequestTypeDef(BaseModel): + Limit: Optional[int] = None + DeliveryStreamType: Optional[DeliveryStreamTypeType] = None + ExclusiveStartDeliveryStreamName: Optional[str] = None + +class ListTagsForDeliveryStreamInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + ExclusiveStartTagKey: Optional[str] = None + Limit: Optional[int] = None + +class OrcSerDeOutputTypeDef(BaseModel): + StripeSizeBytes: Optional[int] = None + BlockSizeBytes: Optional[int] = None + RowIndexStride: Optional[int] = None + EnablePadding: Optional[bool] = None + PaddingTolerance: Optional[float] = None + Compression: Optional[OrcCompressionType] = None + BloomFilterColumns: Optional[List[str]] = None + BloomFilterFalsePositiveProbability: Optional[float] = None + DictionaryKeyThreshold: Optional[float] = None + FormatVersion: Optional[OrcFormatVersionType] = None + +class OrcSerDeTypeDef(BaseModel): + StripeSizeBytes: Optional[int] = None + BlockSizeBytes: Optional[int] = None + RowIndexStride: Optional[int] = None + EnablePadding: Optional[bool] = None + PaddingTolerance: Optional[float] = None + Compression: Optional[OrcCompressionType] = None + BloomFilterColumns: Optional[Sequence[str]] = None + BloomFilterFalsePositiveProbability: Optional[float] = None + DictionaryKeyThreshold: Optional[float] = None + FormatVersion: Optional[OrcFormatVersionType] = None + +class ParquetSerDeTypeDef(BaseModel): + BlockSizeBytes: Optional[int] = None + PageSizeBytes: Optional[int] = None + Compression: Optional[ParquetCompressionType] = None + EnableDictionaryCompression: Optional[bool] = None + MaxPaddingBytes: Optional[int] = None + WriterVersion: Optional[ParquetWriterVersionType] = None + +class ProcessorParameterTypeDef(BaseModel): + ParameterName: ProcessorParameterNameType + ParameterValue: str + +class PutRecordBatchResponseEntryTypeDef(BaseModel): + RecordId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class RedshiftRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class SnowflakeRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class SnowflakeRoleConfigurationTypeDef(BaseModel): + Enabled: Optional[bool] = None + SnowflakeRole: Optional[str] = None + +class SnowflakeVpcConfigurationTypeDef(BaseModel): + PrivateLinkVpceId: str + +class SplunkBufferingHintsTypeDef(BaseModel): + IntervalInSeconds: Optional[int] = None + SizeInMBs: Optional[int] = None + +class SplunkRetryOptionsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + +class StopDeliveryStreamEncryptionInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + +class UntagDeliveryStreamInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + TagKeys: Sequence[str] + +class MSKSourceConfigurationTypeDef(BaseModel): + MSKClusterARN: str + TopicName: str + AuthenticationConfiguration: AuthenticationConfigurationTypeDef + +class MSKSourceDescriptionTypeDef(BaseModel): + MSKClusterARN: Optional[str] = None + TopicName: Optional[str] = None + AuthenticationConfiguration: Optional[AuthenticationConfigurationTypeDef] = None + DeliveryStartTimestamp: Optional[datetime] = None + +class RecordTypeDef(BaseModel): + Data: BlobTypeDef + +class StartDeliveryStreamEncryptionInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + DeliveryStreamEncryptionConfigurationInput: Optional[ DeliveryStreamEncryptionConfigurationInputTypeDef ] = None + +class TagDeliveryStreamInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + Tags: Sequence[TagTypeDef] + +class CreateDeliveryStreamOutputTypeDef(BaseModel): + DeliveryStreamARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeliveryStreamsOutputTypeDef(BaseModel): + DeliveryStreamNames: List[str] + HasMoreDeliveryStreams: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForDeliveryStreamOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + HasMoreTags: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutRecordOutputTypeDef(BaseModel): + RecordId: str + Encrypted: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeliveryStreamEncryptionConfigurationTypeDef(BaseModel): + KeyARN: Optional[str] = None + KeyType: Optional[KeyTypeType] = None + Status: Optional[DeliveryStreamEncryptionStatusType] = None + FailureDescription: Optional[FailureDescriptionTypeDef] = None + +class DeserializerOutputTypeDef(BaseModel): + OpenXJsonSerDe: Optional[OpenXJsonSerDeOutputTypeDef] = None + HiveJsonSerDe: Optional[HiveJsonSerDeOutputTypeDef] = None + +class DeserializerTypeDef(BaseModel): + OpenXJsonSerDe: Optional[OpenXJsonSerDeTypeDef] = None + HiveJsonSerDe: Optional[HiveJsonSerDeTypeDef] = None + +class DynamicPartitioningConfigurationTypeDef(BaseModel): + RetryOptions: Optional[RetryOptionsTypeDef] = None + Enabled: Optional[bool] = None + +class EncryptionConfigurationTypeDef(BaseModel): + NoEncryptionConfig: Optional[Literal["NoEncryption"]] = None + KMSEncryptionConfig: Optional[KMSEncryptionConfigTypeDef] = None + +class HttpEndpointRequestConfigurationOutputTypeDef(BaseModel): + ContentEncoding: Optional[ContentEncodingType] = None + CommonAttributes: Optional[List[HttpEndpointCommonAttributeTypeDef]] = None + +class HttpEndpointRequestConfigurationTypeDef(BaseModel): + ContentEncoding: Optional[ContentEncodingType] = None + CommonAttributes: Optional[Sequence[HttpEndpointCommonAttributeTypeDef]] = None + +class SerializerOutputTypeDef(BaseModel): + ParquetSerDe: Optional[ParquetSerDeTypeDef] = None + OrcSerDe: Optional[OrcSerDeOutputTypeDef] = None + +class SerializerTypeDef(BaseModel): + ParquetSerDe: Optional[ParquetSerDeTypeDef] = None + OrcSerDe: Optional[OrcSerDeTypeDef] = None + +class ProcessorOutputTypeDef(BaseModel): + Type: ProcessorTypeType + Parameters: Optional[List[ProcessorParameterTypeDef]] = None + +class ProcessorTypeDef(BaseModel): + Type: ProcessorTypeType + Parameters: Optional[Sequence[ProcessorParameterTypeDef]] = None + +class PutRecordBatchOutputTypeDef(BaseModel): + FailedPutCount: int + Encrypted: bool + RequestResponses: List[PutRecordBatchResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SourceDescriptionTypeDef(BaseModel): + KinesisStreamSourceDescription: Optional[KinesisStreamSourceDescriptionTypeDef] = None + MSKSourceDescription: Optional[MSKSourceDescriptionTypeDef] = None + +class PutRecordBatchInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + Records: Sequence[RecordTypeDef] + +class PutRecordInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + Record: RecordTypeDef + +class InputFormatConfigurationOutputTypeDef(BaseModel): + Deserializer: Optional[DeserializerOutputTypeDef] = None + +class InputFormatConfigurationTypeDef(BaseModel): + Deserializer: Optional[DeserializerTypeDef] = None + +class S3DestinationConfigurationTypeDef(BaseModel): + RoleARN: str + BucketARN: str + Prefix: Optional[str] = None + ErrorOutputPrefix: Optional[str] = None + BufferingHints: Optional[BufferingHintsTypeDef] = None + CompressionFormat: Optional[CompressionFormatType] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + +class S3DestinationDescriptionTypeDef(BaseModel): + RoleARN: str + BucketARN: str + BufferingHints: BufferingHintsTypeDef + CompressionFormat: CompressionFormatType + EncryptionConfiguration: EncryptionConfigurationTypeDef + Prefix: Optional[str] = None + ErrorOutputPrefix: Optional[str] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + +class S3DestinationUpdateTypeDef(BaseModel): + RoleARN: Optional[str] = None + BucketARN: Optional[str] = None + Prefix: Optional[str] = None + ErrorOutputPrefix: Optional[str] = None + BufferingHints: Optional[BufferingHintsTypeDef] = None + CompressionFormat: Optional[CompressionFormatType] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + +class OutputFormatConfigurationOutputTypeDef(BaseModel): + Serializer: Optional[SerializerOutputTypeDef] = None + +class OutputFormatConfigurationTypeDef(BaseModel): + Serializer: Optional[SerializerTypeDef] = None + +class ProcessingConfigurationOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Processors: Optional[List[ProcessorOutputTypeDef]] = None + +class ProcessingConfigurationTypeDef(BaseModel): + Enabled: Optional[bool] = None + Processors: Optional[Sequence[ProcessorTypeDef]] = None + +class DataFormatConversionConfigurationOutputTypeDef(BaseModel): + SchemaConfiguration: Optional[SchemaConfigurationTypeDef] = None + InputFormatConfiguration: Optional[InputFormatConfigurationOutputTypeDef] = None + OutputFormatConfiguration: Optional[OutputFormatConfigurationOutputTypeDef] = None + Enabled: Optional[bool] = None + +class DataFormatConversionConfigurationTypeDef(BaseModel): + SchemaConfiguration: Optional[SchemaConfigurationTypeDef] = None + InputFormatConfiguration: Optional[InputFormatConfigurationTypeDef] = None + OutputFormatConfiguration: Optional[OutputFormatConfigurationTypeDef] = None + Enabled: Optional[bool] = None + +class AmazonOpenSearchServerlessDestinationDescriptionTypeDef(BaseModel): + RoleARN: Optional[str] = None + CollectionEndpoint: Optional[str] = None + IndexName: Optional[str] = None + BufferingHints: Optional[AmazonOpenSearchServerlessBufferingHintsTypeDef] = None + RetryOptions: Optional[AmazonOpenSearchServerlessRetryOptionsTypeDef] = None + S3BackupMode: Optional[AmazonOpenSearchServerlessS3BackupModeType] = None + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + VpcConfigurationDescription: Optional[VpcConfigurationDescriptionTypeDef] = None + +class AmazonopensearchserviceDestinationDescriptionTypeDef(BaseModel): + RoleARN: Optional[str] = None + DomainARN: Optional[str] = None + ClusterEndpoint: Optional[str] = None + IndexName: Optional[str] = None + TypeName: Optional[str] = None + IndexRotationPeriod: Optional[AmazonopensearchserviceIndexRotationPeriodType] = None + BufferingHints: Optional[AmazonopensearchserviceBufferingHintsTypeDef] = None + RetryOptions: Optional[AmazonopensearchserviceRetryOptionsTypeDef] = None + S3BackupMode: Optional[AmazonopensearchserviceS3BackupModeType] = None + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + VpcConfigurationDescription: Optional[VpcConfigurationDescriptionTypeDef] = None + DocumentIdOptions: Optional[DocumentIdOptionsTypeDef] = None + +class ElasticsearchDestinationDescriptionTypeDef(BaseModel): + RoleARN: Optional[str] = None + DomainARN: Optional[str] = None + ClusterEndpoint: Optional[str] = None + IndexName: Optional[str] = None + TypeName: Optional[str] = None + IndexRotationPeriod: Optional[ElasticsearchIndexRotationPeriodType] = None + BufferingHints: Optional[ElasticsearchBufferingHintsTypeDef] = None + RetryOptions: Optional[ElasticsearchRetryOptionsTypeDef] = None + S3BackupMode: Optional[ElasticsearchS3BackupModeType] = None + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + VpcConfigurationDescription: Optional[VpcConfigurationDescriptionTypeDef] = None + DocumentIdOptions: Optional[DocumentIdOptionsTypeDef] = None + +class HttpEndpointDestinationDescriptionTypeDef(BaseModel): + EndpointConfiguration: Optional[HttpEndpointDescriptionTypeDef] = None + BufferingHints: Optional[HttpEndpointBufferingHintsTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + RequestConfiguration: Optional[HttpEndpointRequestConfigurationOutputTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + RoleARN: Optional[str] = None + RetryOptions: Optional[HttpEndpointRetryOptionsTypeDef] = None + S3BackupMode: Optional[HttpEndpointS3BackupModeType] = None + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class RedshiftDestinationDescriptionTypeDef(BaseModel): + RoleARN: str + ClusterJDBCURL: str + CopyCommand: CopyCommandTypeDef + S3DestinationDescription: S3DestinationDescriptionTypeDef + Username: Optional[str] = None + RetryOptions: Optional[RedshiftRetryOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + S3BackupMode: Optional[RedshiftS3BackupModeType] = None + S3BackupDescription: Optional[S3DestinationDescriptionTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class SnowflakeDestinationDescriptionTypeDef(BaseModel): + AccountUrl: Optional[str] = None + User: Optional[str] = None + Database: Optional[str] = None + Schema: Optional[str] = None + Table: Optional[str] = None + SnowflakeRoleConfiguration: Optional[SnowflakeRoleConfigurationTypeDef] = None + DataLoadingOption: Optional[SnowflakeDataLoadingOptionType] = None + MetaDataColumnName: Optional[str] = None + ContentColumnName: Optional[str] = None + SnowflakeVpcConfiguration: Optional[SnowflakeVpcConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + RoleARN: Optional[str] = None + RetryOptions: Optional[SnowflakeRetryOptionsTypeDef] = None + S3BackupMode: Optional[SnowflakeS3BackupModeType] = None + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class SplunkDestinationDescriptionTypeDef(BaseModel): + HECEndpoint: Optional[str] = None + HECEndpointType: Optional[HECEndpointTypeType] = None + HECToken: Optional[str] = None + HECAcknowledgmentTimeoutInSeconds: Optional[int] = None + RetryOptions: Optional[SplunkRetryOptionsTypeDef] = None + S3BackupMode: Optional[SplunkS3BackupModeType] = None + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + BufferingHints: Optional[SplunkBufferingHintsTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class AmazonOpenSearchServerlessDestinationConfigurationTypeDef(BaseModel): + RoleARN: str + IndexName: str + S3Configuration: S3DestinationConfigurationTypeDef + CollectionEndpoint: Optional[str] = None + BufferingHints: Optional[AmazonOpenSearchServerlessBufferingHintsTypeDef] = None + RetryOptions: Optional[AmazonOpenSearchServerlessRetryOptionsTypeDef] = None + S3BackupMode: Optional[AmazonOpenSearchServerlessS3BackupModeType] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + +class AmazonOpenSearchServerlessDestinationUpdateTypeDef(BaseModel): + RoleARN: Optional[str] = None + CollectionEndpoint: Optional[str] = None + IndexName: Optional[str] = None + BufferingHints: Optional[AmazonOpenSearchServerlessBufferingHintsTypeDef] = None + RetryOptions: Optional[AmazonOpenSearchServerlessRetryOptionsTypeDef] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + +class AmazonopensearchserviceDestinationConfigurationTypeDef(BaseModel): + RoleARN: str + IndexName: str + S3Configuration: S3DestinationConfigurationTypeDef + DomainARN: Optional[str] = None + ClusterEndpoint: Optional[str] = None + TypeName: Optional[str] = None + IndexRotationPeriod: Optional[AmazonopensearchserviceIndexRotationPeriodType] = None + BufferingHints: Optional[AmazonopensearchserviceBufferingHintsTypeDef] = None + RetryOptions: Optional[AmazonopensearchserviceRetryOptionsTypeDef] = None + S3BackupMode: Optional[AmazonopensearchserviceS3BackupModeType] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + DocumentIdOptions: Optional[DocumentIdOptionsTypeDef] = None + +class AmazonopensearchserviceDestinationUpdateTypeDef(BaseModel): + RoleARN: Optional[str] = None + DomainARN: Optional[str] = None + ClusterEndpoint: Optional[str] = None + IndexName: Optional[str] = None + TypeName: Optional[str] = None + IndexRotationPeriod: Optional[AmazonopensearchserviceIndexRotationPeriodType] = None + BufferingHints: Optional[AmazonopensearchserviceBufferingHintsTypeDef] = None + RetryOptions: Optional[AmazonopensearchserviceRetryOptionsTypeDef] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + DocumentIdOptions: Optional[DocumentIdOptionsTypeDef] = None + +class ElasticsearchDestinationConfigurationTypeDef(BaseModel): + RoleARN: str + IndexName: str + S3Configuration: S3DestinationConfigurationTypeDef + DomainARN: Optional[str] = None + ClusterEndpoint: Optional[str] = None + TypeName: Optional[str] = None + IndexRotationPeriod: Optional[ElasticsearchIndexRotationPeriodType] = None + BufferingHints: Optional[ElasticsearchBufferingHintsTypeDef] = None + RetryOptions: Optional[ElasticsearchRetryOptionsTypeDef] = None + S3BackupMode: Optional[ElasticsearchS3BackupModeType] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + DocumentIdOptions: Optional[DocumentIdOptionsTypeDef] = None + +class ElasticsearchDestinationUpdateTypeDef(BaseModel): + RoleARN: Optional[str] = None + DomainARN: Optional[str] = None + ClusterEndpoint: Optional[str] = None + IndexName: Optional[str] = None + TypeName: Optional[str] = None + IndexRotationPeriod: Optional[ElasticsearchIndexRotationPeriodType] = None + BufferingHints: Optional[ElasticsearchBufferingHintsTypeDef] = None + RetryOptions: Optional[ElasticsearchRetryOptionsTypeDef] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + DocumentIdOptions: Optional[DocumentIdOptionsTypeDef] = None + +class HttpEndpointDestinationConfigurationTypeDef(BaseModel): + EndpointConfiguration: HttpEndpointConfigurationTypeDef + S3Configuration: S3DestinationConfigurationTypeDef + BufferingHints: Optional[HttpEndpointBufferingHintsTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + RequestConfiguration: Optional[HttpEndpointRequestConfigurationTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + RoleARN: Optional[str] = None + RetryOptions: Optional[HttpEndpointRetryOptionsTypeDef] = None + S3BackupMode: Optional[HttpEndpointS3BackupModeType] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class HttpEndpointDestinationUpdateTypeDef(BaseModel): + EndpointConfiguration: Optional[HttpEndpointConfigurationTypeDef] = None + BufferingHints: Optional[HttpEndpointBufferingHintsTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + RequestConfiguration: Optional[HttpEndpointRequestConfigurationTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + RoleARN: Optional[str] = None + RetryOptions: Optional[HttpEndpointRetryOptionsTypeDef] = None + S3BackupMode: Optional[HttpEndpointS3BackupModeType] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class RedshiftDestinationConfigurationTypeDef(BaseModel): + RoleARN: str + ClusterJDBCURL: str + CopyCommand: CopyCommandTypeDef + S3Configuration: S3DestinationConfigurationTypeDef + Username: Optional[str] = None + Password: Optional[str] = None + RetryOptions: Optional[RedshiftRetryOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + S3BackupMode: Optional[RedshiftS3BackupModeType] = None + S3BackupConfiguration: Optional[S3DestinationConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class RedshiftDestinationUpdateTypeDef(BaseModel): + RoleARN: Optional[str] = None + ClusterJDBCURL: Optional[str] = None + CopyCommand: Optional[CopyCommandTypeDef] = None + Username: Optional[str] = None + Password: Optional[str] = None + RetryOptions: Optional[RedshiftRetryOptionsTypeDef] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + S3BackupMode: Optional[RedshiftS3BackupModeType] = None + S3BackupUpdate: Optional[S3DestinationUpdateTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class SnowflakeDestinationConfigurationTypeDef(BaseModel): + AccountUrl: str + Database: str + Schema: str + Table: str + RoleARN: str + S3Configuration: S3DestinationConfigurationTypeDef + PrivateKey: Optional[str] = None + KeyPassphrase: Optional[str] = None + User: Optional[str] = None + SnowflakeRoleConfiguration: Optional[SnowflakeRoleConfigurationTypeDef] = None + DataLoadingOption: Optional[SnowflakeDataLoadingOptionType] = None + MetaDataColumnName: Optional[str] = None + ContentColumnName: Optional[str] = None + SnowflakeVpcConfiguration: Optional[SnowflakeVpcConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + RetryOptions: Optional[SnowflakeRetryOptionsTypeDef] = None + S3BackupMode: Optional[SnowflakeS3BackupModeType] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class SnowflakeDestinationUpdateTypeDef(BaseModel): + AccountUrl: Optional[str] = None + PrivateKey: Optional[str] = None + KeyPassphrase: Optional[str] = None + User: Optional[str] = None + Database: Optional[str] = None + Schema: Optional[str] = None + Table: Optional[str] = None + SnowflakeRoleConfiguration: Optional[SnowflakeRoleConfigurationTypeDef] = None + DataLoadingOption: Optional[SnowflakeDataLoadingOptionType] = None + MetaDataColumnName: Optional[str] = None + ContentColumnName: Optional[str] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + RoleARN: Optional[str] = None + RetryOptions: Optional[SnowflakeRetryOptionsTypeDef] = None + S3BackupMode: Optional[SnowflakeS3BackupModeType] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class SplunkDestinationConfigurationTypeDef(BaseModel): + HECEndpoint: str + HECEndpointType: HECEndpointTypeType + S3Configuration: S3DestinationConfigurationTypeDef + HECToken: Optional[str] = None + HECAcknowledgmentTimeoutInSeconds: Optional[int] = None + RetryOptions: Optional[SplunkRetryOptionsTypeDef] = None + S3BackupMode: Optional[SplunkS3BackupModeType] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + BufferingHints: Optional[SplunkBufferingHintsTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class SplunkDestinationUpdateTypeDef(BaseModel): + HECEndpoint: Optional[str] = None + HECEndpointType: Optional[HECEndpointTypeType] = None + HECToken: Optional[str] = None + HECAcknowledgmentTimeoutInSeconds: Optional[int] = None + RetryOptions: Optional[SplunkRetryOptionsTypeDef] = None + S3BackupMode: Optional[SplunkS3BackupModeType] = None + S3Update: Optional[S3DestinationUpdateTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + BufferingHints: Optional[SplunkBufferingHintsTypeDef] = None + SecretsManagerConfiguration: Optional[SecretsManagerConfigurationTypeDef] = None + +class ExtendedS3DestinationDescriptionTypeDef(BaseModel): + RoleARN: str + BucketARN: str + BufferingHints: BufferingHintsTypeDef + CompressionFormat: CompressionFormatType + EncryptionConfiguration: EncryptionConfigurationTypeDef + Prefix: Optional[str] = None + ErrorOutputPrefix: Optional[str] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationOutputTypeDef] = None + S3BackupMode: Optional[S3BackupModeType] = None + S3BackupDescription: Optional[S3DestinationDescriptionTypeDef] = None + DataFormatConversionConfiguration: Optional[ DataFormatConversionConfigurationOutputTypeDef ] = None + DynamicPartitioningConfiguration: Optional[DynamicPartitioningConfigurationTypeDef] = None + FileExtension: Optional[str] = None + CustomTimeZone: Optional[str] = None + +class ExtendedS3DestinationConfigurationTypeDef(BaseModel): + RoleARN: str + BucketARN: str + Prefix: Optional[str] = None + ErrorOutputPrefix: Optional[str] = None + BufferingHints: Optional[BufferingHintsTypeDef] = None + CompressionFormat: Optional[CompressionFormatType] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + S3BackupMode: Optional[S3BackupModeType] = None + S3BackupConfiguration: Optional[S3DestinationConfigurationTypeDef] = None + DataFormatConversionConfiguration: Optional[DataFormatConversionConfigurationTypeDef] = None + DynamicPartitioningConfiguration: Optional[DynamicPartitioningConfigurationTypeDef] = None + FileExtension: Optional[str] = None + CustomTimeZone: Optional[str] = None + +class ExtendedS3DestinationUpdateTypeDef(BaseModel): + RoleARN: Optional[str] = None + BucketARN: Optional[str] = None + Prefix: Optional[str] = None + ErrorOutputPrefix: Optional[str] = None + BufferingHints: Optional[BufferingHintsTypeDef] = None + CompressionFormat: Optional[CompressionFormatType] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[CloudWatchLoggingOptionsTypeDef] = None + ProcessingConfiguration: Optional[ProcessingConfigurationTypeDef] = None + S3BackupMode: Optional[S3BackupModeType] = None + S3BackupUpdate: Optional[S3DestinationUpdateTypeDef] = None + DataFormatConversionConfiguration: Optional[DataFormatConversionConfigurationTypeDef] = None + DynamicPartitioningConfiguration: Optional[DynamicPartitioningConfigurationTypeDef] = None + FileExtension: Optional[str] = None + CustomTimeZone: Optional[str] = None + +class DestinationDescriptionTypeDef(BaseModel): + DestinationId: str + S3DestinationDescription: Optional[S3DestinationDescriptionTypeDef] = None + ExtendedS3DestinationDescription: Optional[ExtendedS3DestinationDescriptionTypeDef] = None + RedshiftDestinationDescription: Optional[RedshiftDestinationDescriptionTypeDef] = None + ElasticsearchDestinationDescription: Optional[ ElasticsearchDestinationDescriptionTypeDef ] = None + AmazonopensearchserviceDestinationDescription: Optional[ AmazonopensearchserviceDestinationDescriptionTypeDef ] = None + SplunkDestinationDescription: Optional[SplunkDestinationDescriptionTypeDef] = None + HttpEndpointDestinationDescription: Optional[ HttpEndpointDestinationDescriptionTypeDef ] = None + SnowflakeDestinationDescription: Optional[SnowflakeDestinationDescriptionTypeDef] = None + AmazonOpenSearchServerlessDestinationDescription: Optional[ AmazonOpenSearchServerlessDestinationDescriptionTypeDef ] = None + +class CreateDeliveryStreamInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + DeliveryStreamType: Optional[DeliveryStreamTypeType] = None + KinesisStreamSourceConfiguration: Optional[KinesisStreamSourceConfigurationTypeDef] = None + DeliveryStreamEncryptionConfigurationInput: Optional[ DeliveryStreamEncryptionConfigurationInputTypeDef ] = None + S3DestinationConfiguration: Optional[S3DestinationConfigurationTypeDef] = None + ExtendedS3DestinationConfiguration: Optional[ ExtendedS3DestinationConfigurationTypeDef ] = None + RedshiftDestinationConfiguration: Optional[RedshiftDestinationConfigurationTypeDef] = None + ElasticsearchDestinationConfiguration: Optional[ ElasticsearchDestinationConfigurationTypeDef ] = None + AmazonopensearchserviceDestinationConfiguration: Optional[ AmazonopensearchserviceDestinationConfigurationTypeDef ] = None + SplunkDestinationConfiguration: Optional[SplunkDestinationConfigurationTypeDef] = None + HttpEndpointDestinationConfiguration: Optional[ HttpEndpointDestinationConfigurationTypeDef ] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AmazonOpenSearchServerlessDestinationConfiguration: Optional[ AmazonOpenSearchServerlessDestinationConfigurationTypeDef ] = None + MSKSourceConfiguration: Optional[MSKSourceConfigurationTypeDef] = None + SnowflakeDestinationConfiguration: Optional[SnowflakeDestinationConfigurationTypeDef] = None + +class UpdateDestinationInputRequestTypeDef(BaseModel): + DeliveryStreamName: str + CurrentDeliveryStreamVersionId: str + DestinationId: str + S3DestinationUpdate: Optional[S3DestinationUpdateTypeDef] = None + ExtendedS3DestinationUpdate: Optional[ExtendedS3DestinationUpdateTypeDef] = None + RedshiftDestinationUpdate: Optional[RedshiftDestinationUpdateTypeDef] = None + ElasticsearchDestinationUpdate: Optional[ElasticsearchDestinationUpdateTypeDef] = None + AmazonopensearchserviceDestinationUpdate: Optional[ AmazonopensearchserviceDestinationUpdateTypeDef ] = None + SplunkDestinationUpdate: Optional[SplunkDestinationUpdateTypeDef] = None + HttpEndpointDestinationUpdate: Optional[HttpEndpointDestinationUpdateTypeDef] = None + AmazonOpenSearchServerlessDestinationUpdate: Optional[ AmazonOpenSearchServerlessDestinationUpdateTypeDef ] = None + SnowflakeDestinationUpdate: Optional[SnowflakeDestinationUpdateTypeDef] = None + +class DeliveryStreamDescriptionTypeDef(BaseModel): + DeliveryStreamName: str + DeliveryStreamARN: str + DeliveryStreamStatus: DeliveryStreamStatusType + DeliveryStreamType: DeliveryStreamTypeType + VersionId: str + Destinations: List[DestinationDescriptionTypeDef] + HasMoreDestinations: bool + FailureDescription: Optional[FailureDescriptionTypeDef] = None + DeliveryStreamEncryptionConfiguration: Optional[ DeliveryStreamEncryptionConfigurationTypeDef ] = None + CreateTimestamp: Optional[datetime] = None + LastUpdateTimestamp: Optional[datetime] = None + Source: Optional[SourceDescriptionTypeDef] = None + +class DescribeDeliveryStreamOutputTypeDef(BaseModel): + DeliveryStreamDescription: DeliveryStreamDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/firehose_constants.py b/aws_resource_validator/pydantic_models/firehose_constants.py new file mode 100644 index 00000000..14cbe3a6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/firehose_constants.py @@ -0,0 +1,487 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AmazonOpenSearchServerlessS3BackupModeType = Literal["AllDocuments", "FailedDocumentsOnly"] +AmazonopensearchserviceIndexRotationPeriodType = Literal["NoRotation", "OneDay", "OneHour", "OneMonth", "OneWeek"] +AmazonopensearchserviceS3BackupModeType = Literal["AllDocuments", "FailedDocumentsOnly"] +CompressionFormatType = Literal["GZIP", "HADOOP_SNAPPY", "Snappy", "UNCOMPRESSED", "ZIP"] +ConnectivityType = Literal["PRIVATE", "PUBLIC"] +ContentEncodingType = Literal["GZIP", "NONE"] +DefaultDocumentIdFormatType = Literal["FIREHOSE_DEFAULT", "NO_DOCUMENT_ID"] +DeliveryStreamEncryptionStatusType = Literal["DISABLED", "DISABLING", "DISABLING_FAILED", "ENABLED", "ENABLING", "ENABLING_FAILED"] +DeliveryStreamFailureTypeType = Literal["CREATE_ENI_FAILED", + "CREATE_KMS_GRANT_FAILED", + "DELETE_ENI_FAILED", + "DISABLED_KMS_KEY", + "ENI_ACCESS_DENIED", + "INVALID_KMS_KEY", + "KMS_ACCESS_DENIED", + "KMS_KEY_NOT_FOUND", + "KMS_OPT_IN_REQUIRED", + "RETIRE_KMS_GRANT_FAILED", + "SECURITY_GROUP_ACCESS_DENIED", + "SECURITY_GROUP_NOT_FOUND", + "SUBNET_ACCESS_DENIED", + "SUBNET_NOT_FOUND", + "UNKNOWN_ERROR",] +DeliveryStreamStatusType = Literal["ACTIVE", "CREATING", "CREATING_FAILED", "DELETING", "DELETING_FAILED"] +DeliveryStreamTypeType = Literal["DirectPut", "KinesisStreamAsSource", "MSKAsSource"] +ElasticsearchIndexRotationPeriodType = Literal["NoRotation", "OneDay", "OneHour", "OneMonth", "OneWeek"] +ElasticsearchS3BackupModeType = Literal["AllDocuments", "FailedDocumentsOnly"] +HECEndpointTypeType = Literal["Event", "Raw"] +HttpEndpointS3BackupModeType = Literal["AllData", "FailedDataOnly"] +KeyTypeType = Literal["AWS_OWNED_CMK", "CUSTOMER_MANAGED_CMK"] +NoEncryptionConfigType = Literal["NoEncryption"] +OrcCompressionType = Literal["NONE", "SNAPPY", "ZLIB"] +OrcFormatVersionType = Literal["V0_11", "V0_12"] +ParquetCompressionType = Literal["GZIP", "SNAPPY", "UNCOMPRESSED"] +ParquetWriterVersionType = Literal["V1", "V2"] +ProcessorParameterNameType = Literal["BufferIntervalInSeconds", + "BufferSizeInMBs", + "CompressionFormat", + "DataMessageExtraction", + "Delimiter", + "JsonParsingEngine", + "LambdaArn", + "MetadataExtractionQuery", + "NumberOfRetries", + "RoleArn", + "SubRecordType",] +ProcessorTypeType = Literal["AppendDelimiterToRecord", + "CloudWatchLogProcessing", + "Decompression", + "Lambda", + "MetadataExtraction", + "RecordDeAggregation",] +RedshiftS3BackupModeType = Literal["Disabled", "Enabled"] +S3BackupModeType = Literal["Disabled", "Enabled"] +SnowflakeDataLoadingOptionType = Literal["JSON_MAPPING", "VARIANT_CONTENT_AND_METADATA_MAPPING", "VARIANT_CONTENT_MAPPING"] +SnowflakeS3BackupModeType = Literal["AllData", "FailedDataOnly"] +SplunkS3BackupModeType = Literal["AllEvents", "FailedEventsOnly"] +FirehoseServiceName = Literal["firehose"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/fis_classes.py b/aws_resource_validator/pydantic_models/fis_classes.py new file mode 100644 index 00000000..e40f29c2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/fis_classes.py @@ -0,0 +1,496 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.fis_constants import * + +class ActionParameterTypeDef(BaseModel): + description: Optional[str] = None + required: Optional[bool] = None + +class ActionTargetTypeDef(BaseModel): + resourceType: Optional[str] = None + +class CreateExperimentTemplateActionInputTypeDef(BaseModel): + actionId: str + description: Optional[str] = None + parameters: Optional[Mapping[str, str]] = None + targets: Optional[Mapping[str, str]] = None + startAfter: Optional[Sequence[str]] = None + +class CreateExperimentTemplateExperimentOptionsInputTypeDef(BaseModel): + accountTargeting: Optional[AccountTargetingType] = None + emptyTargetResolutionMode: Optional[EmptyTargetResolutionModeType] = None + +class ExperimentTemplateCloudWatchLogsLogConfigurationInputTypeDef(BaseModel): + logGroupArn: str + +class ExperimentTemplateS3LogConfigurationInputTypeDef(BaseModel): + bucketName: str + prefix: Optional[str] = None + +class CreateExperimentTemplateStopConditionInputTypeDef(BaseModel): + source: str + value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ExperimentTemplateTargetInputFilterTypeDef(BaseModel): + path: str + values: Sequence[str] + +class CreateTargetAccountConfigurationRequestRequestTypeDef(BaseModel): + experimentTemplateId: str + accountId: str + roleArn: str + clientToken: Optional[str] = None + description: Optional[str] = None + +class TargetAccountConfigurationTypeDef(BaseModel): + roleArn: Optional[str] = None + accountId: Optional[str] = None + description: Optional[str] = None + +class DeleteExperimentTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DeleteTargetAccountConfigurationRequestRequestTypeDef(BaseModel): + experimentTemplateId: str + accountId: str + +class ExperimentActionStateTypeDef(BaseModel): + status: Optional[ExperimentActionStatusType] = None + reason: Optional[str] = None + +class ExperimentCloudWatchLogsLogConfigurationTypeDef(BaseModel): + logGroupArn: Optional[str] = None + +class ExperimentS3LogConfigurationTypeDef(BaseModel): + bucketName: Optional[str] = None + prefix: Optional[str] = None + +class ExperimentOptionsTypeDef(BaseModel): + accountTargeting: Optional[AccountTargetingType] = None + emptyTargetResolutionMode: Optional[EmptyTargetResolutionModeType] = None + actionsMode: Optional[ActionsModeType] = None + +class ExperimentStateTypeDef(BaseModel): + status: Optional[ExperimentStatusType] = None + reason: Optional[str] = None + +class ExperimentStopConditionTypeDef(BaseModel): + source: Optional[str] = None + value: Optional[str] = None + +class ExperimentTargetAccountConfigurationSummaryTypeDef(BaseModel): + roleArn: Optional[str] = None + accountId: Optional[str] = None + description: Optional[str] = None + +class ExperimentTargetAccountConfigurationTypeDef(BaseModel): + roleArn: Optional[str] = None + accountId: Optional[str] = None + description: Optional[str] = None + +class ExperimentTargetFilterTypeDef(BaseModel): + path: Optional[str] = None + values: Optional[List[str]] = None + +class ExperimentTemplateActionTypeDef(BaseModel): + actionId: Optional[str] = None + description: Optional[str] = None + parameters: Optional[Dict[str, str]] = None + targets: Optional[Dict[str, str]] = None + startAfter: Optional[List[str]] = None + +class ExperimentTemplateCloudWatchLogsLogConfigurationTypeDef(BaseModel): + logGroupArn: Optional[str] = None + +class ExperimentTemplateExperimentOptionsTypeDef(BaseModel): + accountTargeting: Optional[AccountTargetingType] = None + emptyTargetResolutionMode: Optional[EmptyTargetResolutionModeType] = None + +class ExperimentTemplateS3LogConfigurationTypeDef(BaseModel): + bucketName: Optional[str] = None + prefix: Optional[str] = None + +class ExperimentTemplateStopConditionTypeDef(BaseModel): + source: Optional[str] = None + value: Optional[str] = None + +class ExperimentTemplateSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class ExperimentTemplateTargetFilterTypeDef(BaseModel): + path: Optional[str] = None + values: Optional[List[str]] = None + +class GetActionRequestRequestTypeDef(BaseModel): + id: str + +class GetExperimentRequestRequestTypeDef(BaseModel): + id: str + +class GetExperimentTargetAccountConfigurationRequestRequestTypeDef(BaseModel): + experimentId: str + accountId: str + +class GetExperimentTemplateRequestRequestTypeDef(BaseModel): + id: str + +class GetTargetAccountConfigurationRequestRequestTypeDef(BaseModel): + experimentTemplateId: str + accountId: str + +class GetTargetResourceTypeRequestRequestTypeDef(BaseModel): + resourceType: str + +class ListActionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListExperimentResolvedTargetsRequestRequestTypeDef(BaseModel): + experimentId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + targetName: Optional[str] = None + +class ResolvedTargetTypeDef(BaseModel): + resourceType: Optional[str] = None + targetName: Optional[str] = None + targetInformation: Optional[Dict[str, str]] = None + +class ListExperimentTargetAccountConfigurationsRequestRequestTypeDef(BaseModel): + experimentId: str + nextToken: Optional[str] = None + +class ListExperimentTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListExperimentsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + experimentTemplateId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTargetAccountConfigurationsRequestRequestTypeDef(BaseModel): + experimentTemplateId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TargetAccountConfigurationSummaryTypeDef(BaseModel): + roleArn: Optional[str] = None + accountId: Optional[str] = None + description: Optional[str] = None + +class ListTargetResourceTypesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TargetResourceTypeSummaryTypeDef(BaseModel): + resourceType: Optional[str] = None + description: Optional[str] = None + +class StartExperimentExperimentOptionsInputTypeDef(BaseModel): + actionsMode: Optional[ActionsModeType] = None + +class StopExperimentRequestRequestTypeDef(BaseModel): + id: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TargetResourceTypeParameterTypeDef(BaseModel): + description: Optional[str] = None + required: Optional[bool] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Optional[Sequence[str]] = None + +class UpdateExperimentTemplateActionInputItemTypeDef(BaseModel): + actionId: Optional[str] = None + description: Optional[str] = None + parameters: Optional[Mapping[str, str]] = None + targets: Optional[Mapping[str, str]] = None + startAfter: Optional[Sequence[str]] = None + +class UpdateExperimentTemplateExperimentOptionsInputTypeDef(BaseModel): + emptyTargetResolutionMode: Optional[EmptyTargetResolutionModeType] = None + +class UpdateExperimentTemplateStopConditionInputTypeDef(BaseModel): + source: str + value: Optional[str] = None + +class UpdateTargetAccountConfigurationRequestRequestTypeDef(BaseModel): + experimentTemplateId: str + accountId: str + roleArn: Optional[str] = None + description: Optional[str] = None + +class ActionSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + targets: Optional[Dict[str, ActionTargetTypeDef]] = None + tags: Optional[Dict[str, str]] = None + +class ActionTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + parameters: Optional[Dict[str, ActionParameterTypeDef]] = None + targets: Optional[Dict[str, ActionTargetTypeDef]] = None + tags: Optional[Dict[str, str]] = None + +class CreateExperimentTemplateLogConfigurationInputTypeDef(BaseModel): + logSchemaVersion: int + cloudWatchLogsConfiguration: Optional[ ExperimentTemplateCloudWatchLogsLogConfigurationInputTypeDef ] = None + s3Configuration: Optional[ExperimentTemplateS3LogConfigurationInputTypeDef] = None + +class UpdateExperimentTemplateLogConfigurationInputTypeDef(BaseModel): + cloudWatchLogsConfiguration: Optional[ ExperimentTemplateCloudWatchLogsLogConfigurationInputTypeDef ] = None + s3Configuration: Optional[ExperimentTemplateS3LogConfigurationInputTypeDef] = None + logSchemaVersion: Optional[int] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperimentTemplateTargetInputTypeDef(BaseModel): + resourceType: str + selectionMode: str + resourceArns: Optional[Sequence[str]] = None + resourceTags: Optional[Mapping[str, str]] = None + filters: Optional[Sequence[ExperimentTemplateTargetInputFilterTypeDef]] = None + parameters: Optional[Mapping[str, str]] = None + +class UpdateExperimentTemplateTargetInputTypeDef(BaseModel): + resourceType: str + selectionMode: str + resourceArns: Optional[Sequence[str]] = None + resourceTags: Optional[Mapping[str, str]] = None + filters: Optional[Sequence[ExperimentTemplateTargetInputFilterTypeDef]] = None + parameters: Optional[Mapping[str, str]] = None + +class CreateTargetAccountConfigurationResponseTypeDef(BaseModel): + targetAccountConfiguration: TargetAccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTargetAccountConfigurationResponseTypeDef(BaseModel): + targetAccountConfiguration: TargetAccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTargetAccountConfigurationResponseTypeDef(BaseModel): + targetAccountConfiguration: TargetAccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTargetAccountConfigurationResponseTypeDef(BaseModel): + targetAccountConfiguration: TargetAccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExperimentActionTypeDef(BaseModel): + actionId: Optional[str] = None + description: Optional[str] = None + parameters: Optional[Dict[str, str]] = None + targets: Optional[Dict[str, str]] = None + startAfter: Optional[List[str]] = None + state: Optional[ExperimentActionStateTypeDef] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class ExperimentLogConfigurationTypeDef(BaseModel): + cloudWatchLogsConfiguration: Optional[ExperimentCloudWatchLogsLogConfigurationTypeDef] = None + s3Configuration: Optional[ExperimentS3LogConfigurationTypeDef] = None + logSchemaVersion: Optional[int] = None + +class ExperimentSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + experimentTemplateId: Optional[str] = None + state: Optional[ExperimentStateTypeDef] = None + creationTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + experimentOptions: Optional[ExperimentOptionsTypeDef] = None + +class ListExperimentTargetAccountConfigurationsResponseTypeDef(BaseModel): + targetAccountConfigurations: List[ExperimentTargetAccountConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetExperimentTargetAccountConfigurationResponseTypeDef(BaseModel): + targetAccountConfiguration: ExperimentTargetAccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExperimentTargetTypeDef(BaseModel): + resourceType: Optional[str] = None + resourceArns: Optional[List[str]] = None + resourceTags: Optional[Dict[str, str]] = None + filters: Optional[List[ExperimentTargetFilterTypeDef]] = None + selectionMode: Optional[str] = None + parameters: Optional[Dict[str, str]] = None + +class ExperimentTemplateLogConfigurationTypeDef(BaseModel): + cloudWatchLogsConfiguration: Optional[ ExperimentTemplateCloudWatchLogsLogConfigurationTypeDef ] = None + s3Configuration: Optional[ExperimentTemplateS3LogConfigurationTypeDef] = None + logSchemaVersion: Optional[int] = None + +class ListExperimentTemplatesResponseTypeDef(BaseModel): + experimentTemplates: List[ExperimentTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExperimentTemplateTargetTypeDef(BaseModel): + resourceType: Optional[str] = None + resourceArns: Optional[List[str]] = None + resourceTags: Optional[Dict[str, str]] = None + filters: Optional[List[ExperimentTemplateTargetFilterTypeDef]] = None + selectionMode: Optional[str] = None + parameters: Optional[Dict[str, str]] = None + +class ListExperimentResolvedTargetsResponseTypeDef(BaseModel): + resolvedTargets: List[ResolvedTargetTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetAccountConfigurationsResponseTypeDef(BaseModel): + targetAccountConfigurations: List[TargetAccountConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetResourceTypesResponseTypeDef(BaseModel): + targetResourceTypes: List[TargetResourceTypeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartExperimentRequestRequestTypeDef(BaseModel): + clientToken: str + experimentTemplateId: str + experimentOptions: Optional[StartExperimentExperimentOptionsInputTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class TargetResourceTypeTypeDef(BaseModel): + resourceType: Optional[str] = None + description: Optional[str] = None + parameters: Optional[Dict[str, TargetResourceTypeParameterTypeDef]] = None + +class ListActionsResponseTypeDef(BaseModel): + actions: List[ActionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetActionResponseTypeDef(BaseModel): + action: ActionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperimentTemplateRequestRequestTypeDef(BaseModel): + clientToken: str + description: str + stopConditions: Sequence[CreateExperimentTemplateStopConditionInputTypeDef] + actions: Mapping[str, CreateExperimentTemplateActionInputTypeDef] + roleArn: str + targets: Optional[Mapping[str, CreateExperimentTemplateTargetInputTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + logConfiguration: Optional[CreateExperimentTemplateLogConfigurationInputTypeDef] = None + experimentOptions: Optional[CreateExperimentTemplateExperimentOptionsInputTypeDef] = None + +class UpdateExperimentTemplateRequestRequestTypeDef(BaseModel): + id: str + description: Optional[str] = None + stopConditions: Optional[Sequence[UpdateExperimentTemplateStopConditionInputTypeDef]] = None + targets: Optional[Mapping[str, UpdateExperimentTemplateTargetInputTypeDef]] = None + actions: Optional[Mapping[str, UpdateExperimentTemplateActionInputItemTypeDef]] = None + roleArn: Optional[str] = None + logConfiguration: Optional[UpdateExperimentTemplateLogConfigurationInputTypeDef] = None + experimentOptions: Optional[UpdateExperimentTemplateExperimentOptionsInputTypeDef] = None + +class ListExperimentsResponseTypeDef(BaseModel): + experiments: List[ExperimentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExperimentTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + experimentTemplateId: Optional[str] = None + roleArn: Optional[str] = None + state: Optional[ExperimentStateTypeDef] = None + targets: Optional[Dict[str, ExperimentTargetTypeDef]] = None + actions: Optional[Dict[str, ExperimentActionTypeDef]] = None + stopConditions: Optional[List[ExperimentStopConditionTypeDef]] = None + creationTime: Optional[datetime] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + logConfiguration: Optional[ExperimentLogConfigurationTypeDef] = None + experimentOptions: Optional[ExperimentOptionsTypeDef] = None + targetAccountConfigurationsCount: Optional[int] = None + +class ExperimentTemplateTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + targets: Optional[Dict[str, ExperimentTemplateTargetTypeDef]] = None + actions: Optional[Dict[str, ExperimentTemplateActionTypeDef]] = None + stopConditions: Optional[List[ExperimentTemplateStopConditionTypeDef]] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + roleArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + logConfiguration: Optional[ExperimentTemplateLogConfigurationTypeDef] = None + experimentOptions: Optional[ExperimentTemplateExperimentOptionsTypeDef] = None + targetAccountConfigurationsCount: Optional[int] = None + +class GetTargetResourceTypeResponseTypeDef(BaseModel): + targetResourceType: TargetResourceTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetExperimentResponseTypeDef(BaseModel): + experiment: ExperimentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartExperimentResponseTypeDef(BaseModel): + experiment: ExperimentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopExperimentResponseTypeDef(BaseModel): + experiment: ExperimentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperimentTemplateResponseTypeDef(BaseModel): + experimentTemplate: ExperimentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteExperimentTemplateResponseTypeDef(BaseModel): + experimentTemplate: ExperimentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetExperimentTemplateResponseTypeDef(BaseModel): + experimentTemplate: ExperimentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExperimentTemplateResponseTypeDef(BaseModel): + experimentTemplate: ExperimentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/fis_constants.py b/aws_resource_validator/pydantic_models/fis_constants.py new file mode 100644 index 00000000..85a047e2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/fis_constants.py @@ -0,0 +1,406 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountTargetingType = Literal["multi-account", "single-account"] +ActionsModeType = Literal["run-all", "skip-all"] +EmptyTargetResolutionModeType = Literal["fail", "skip"] +ExperimentActionStatusType = Literal["cancelled", + "completed", + "failed", + "initiating", + "pending", + "running", + "skipped", + "stopped", + "stopping",] +ExperimentStatusType = Literal["completed", "failed", "initiating", "pending", "running", "stopped", "stopping"] +FISServiceName = Literal["fis"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/fms_classes.py b/aws_resource_validator/pydantic_models/fms_classes.py new file mode 100644 index 00000000..51533e92 --- /dev/null +++ b/aws_resource_validator/pydantic_models/fms_classes.py @@ -0,0 +1,1029 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.fms_constants import * + +class AccountScopeOutputTypeDef(BaseModel): + Accounts: Optional[List[str]] = None + AllAccountsEnabled: Optional[bool] = None + ExcludeSpecifiedAccounts: Optional[bool] = None + +class AccountScopeTypeDef(BaseModel): + Accounts: Optional[Sequence[str]] = None + AllAccountsEnabled: Optional[bool] = None + ExcludeSpecifiedAccounts: Optional[bool] = None + +class ActionTargetTypeDef(BaseModel): + ResourceId: Optional[str] = None + Description: Optional[str] = None + +class AdminAccountSummaryTypeDef(BaseModel): + AdminAccount: Optional[str] = None + DefaultAdmin: Optional[bool] = None + Status: Optional[OrganizationStatusType] = None + +class OrganizationalUnitScopeOutputTypeDef(BaseModel): + OrganizationalUnits: Optional[List[str]] = None + AllOrganizationalUnitsEnabled: Optional[bool] = None + ExcludeSpecifiedOrganizationalUnits: Optional[bool] = None + +class PolicyTypeScopeOutputTypeDef(BaseModel): + PolicyTypes: Optional[List[SecurityServiceTypeType]] = None + AllPolicyTypesEnabled: Optional[bool] = None + +class RegionScopeOutputTypeDef(BaseModel): + Regions: Optional[List[str]] = None + AllRegionsEnabled: Optional[bool] = None + +class OrganizationalUnitScopeTypeDef(BaseModel): + OrganizationalUnits: Optional[Sequence[str]] = None + AllOrganizationalUnitsEnabled: Optional[bool] = None + ExcludeSpecifiedOrganizationalUnits: Optional[bool] = None + +class PolicyTypeScopeTypeDef(BaseModel): + PolicyTypes: Optional[Sequence[SecurityServiceTypeType]] = None + AllPolicyTypesEnabled: Optional[bool] = None + +class RegionScopeTypeDef(BaseModel): + Regions: Optional[Sequence[str]] = None + AllRegionsEnabled: Optional[bool] = None + +class AppTypeDef(BaseModel): + AppName: str + Protocol: str + Port: int + +class AssociateAdminAccountRequestRequestTypeDef(BaseModel): + AdminAccount: str + +class AssociateThirdPartyFirewallRequestRequestTypeDef(BaseModel): + ThirdPartyFirewall: ThirdPartyFirewallType + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AwsEc2NetworkInterfaceViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + ViolatingSecurityGroups: Optional[List[str]] = None + +class PartialMatchTypeDef(BaseModel): + Reference: Optional[str] = None + TargetViolationReasons: Optional[List[str]] = None + +class BatchAssociateResourceRequestRequestTypeDef(BaseModel): + ResourceSetIdentifier: str + Items: Sequence[str] + +class FailedItemTypeDef(BaseModel): + URI: Optional[str] = None + Reason: Optional[FailedItemReasonType] = None + +class BatchDisassociateResourceRequestRequestTypeDef(BaseModel): + ResourceSetIdentifier: str + Items: Sequence[str] + +class ComplianceViolatorTypeDef(BaseModel): + ResourceId: Optional[str] = None + ViolationReason: Optional[ViolationReasonType] = None + ResourceType: Optional[str] = None + Metadata: Optional[Dict[str, str]] = None + +class DeleteAppsListRequestRequestTypeDef(BaseModel): + ListId: str + +class DeletePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + DeleteAllPolicyResources: Optional[bool] = None + +class DeleteProtocolsListRequestRequestTypeDef(BaseModel): + ListId: str + +class DeleteResourceSetRequestRequestTypeDef(BaseModel): + Identifier: str + +class DisassociateThirdPartyFirewallRequestRequestTypeDef(BaseModel): + ThirdPartyFirewall: ThirdPartyFirewallType + +class DiscoveredResourceTypeDef(BaseModel): + URI: Optional[str] = None + AccountId: Optional[str] = None + Type: Optional[str] = None + Name: Optional[str] = None + +class DnsDuplicateRuleGroupViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + ViolationTargetDescription: Optional[str] = None + +class DnsRuleGroupLimitExceededViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + ViolationTargetDescription: Optional[str] = None + NumberOfRuleGroupsAlreadyAssociated: Optional[int] = None + +class DnsRuleGroupPriorityConflictViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + ViolationTargetDescription: Optional[str] = None + ConflictingPriority: Optional[int] = None + ConflictingPolicyId: Optional[str] = None + UnavailablePriorities: Optional[List[int]] = None + +class EvaluationResultTypeDef(BaseModel): + ComplianceStatus: Optional[PolicyComplianceStatusTypeType] = None + ViolatorCount: Optional[int] = None + EvaluationLimitExceeded: Optional[bool] = None + +class ExpectedRouteTypeDef(BaseModel): + IpV4Cidr: Optional[str] = None + PrefixListId: Optional[str] = None + IpV6Cidr: Optional[str] = None + ContributingSubnets: Optional[List[str]] = None + AllowedTargets: Optional[List[str]] = None + RouteTableId: Optional[str] = None + +class FMSPolicyUpdateFirewallCreationConfigActionTypeDef(BaseModel): + Description: Optional[str] = None + FirewallCreationConfig: Optional[str] = None + +class FirewallSubnetIsOutOfScopeViolationTypeDef(BaseModel): + FirewallSubnetId: Optional[str] = None + VpcId: Optional[str] = None + SubnetAvailabilityZone: Optional[str] = None + SubnetAvailabilityZoneId: Optional[str] = None + VpcEndpointId: Optional[str] = None + +class FirewallSubnetMissingVPCEndpointViolationTypeDef(BaseModel): + FirewallSubnetId: Optional[str] = None + VpcId: Optional[str] = None + SubnetAvailabilityZone: Optional[str] = None + SubnetAvailabilityZoneId: Optional[str] = None + +class GetAdminScopeRequestRequestTypeDef(BaseModel): + AdminAccount: str + +class GetAppsListRequestRequestTypeDef(BaseModel): + ListId: str + DefaultList: Optional[bool] = None + +class GetComplianceDetailRequestRequestTypeDef(BaseModel): + PolicyId: str + MemberAccount: str + +class GetPolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + +class GetProtocolsListRequestRequestTypeDef(BaseModel): + ListId: str + DefaultList: Optional[bool] = None + +class ProtocolsListDataOutputTypeDef(BaseModel): + ListName: str + ProtocolsList: List[str] + ListId: Optional[str] = None + ListUpdateToken: Optional[str] = None + CreateTime: Optional[datetime] = None + LastUpdateTime: Optional[datetime] = None + PreviousProtocolsList: Optional[Dict[str, List[str]]] = None + +class GetResourceSetRequestRequestTypeDef(BaseModel): + Identifier: str + +class ResourceSetOutputTypeDef(BaseModel): + Name: str + ResourceTypeList: List[str] + Id: Optional[str] = None + Description: Optional[str] = None + UpdateToken: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + ResourceSetStatus: Optional[ResourceSetStatusType] = None + +class GetThirdPartyFirewallAssociationStatusRequestRequestTypeDef(BaseModel): + ThirdPartyFirewall: ThirdPartyFirewallType + +class GetViolationDetailsRequestRequestTypeDef(BaseModel): + PolicyId: str + MemberAccount: str + ResourceId: str + ResourceType: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAdminAccountsForOrganizationRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAdminsManagingAccountRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAppsListsRequestRequestTypeDef(BaseModel): + MaxResults: int + DefaultLists: Optional[bool] = None + NextToken: Optional[str] = None + +class ListComplianceStatusRequestRequestTypeDef(BaseModel): + PolicyId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDiscoveredResourcesRequestRequestTypeDef(BaseModel): + MemberAccountIds: Sequence[str] + ResourceType: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMemberAccountsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPoliciesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PolicySummaryTypeDef(BaseModel): + PolicyArn: Optional[str] = None + PolicyId: Optional[str] = None + PolicyName: Optional[str] = None + ResourceType: Optional[str] = None + SecurityServiceType: Optional[SecurityServiceTypeType] = None + RemediationEnabled: Optional[bool] = None + DeleteUnusedFMManagedResources: Optional[bool] = None + PolicyStatus: Optional[CustomerPolicyStatusType] = None + +class ListProtocolsListsRequestRequestTypeDef(BaseModel): + MaxResults: int + DefaultLists: Optional[bool] = None + NextToken: Optional[str] = None + +class ProtocolsListDataSummaryTypeDef(BaseModel): + ListArn: Optional[str] = None + ListId: Optional[str] = None + ListName: Optional[str] = None + ProtocolsList: Optional[List[str]] = None + +class ListResourceSetResourcesRequestRequestTypeDef(BaseModel): + Identifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ResourceTypeDef(BaseModel): + URI: str + AccountId: Optional[str] = None + +class ListResourceSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResourceSetSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + ResourceSetStatus: Optional[ResourceSetStatusType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ListThirdPartyFirewallFirewallPoliciesRequestRequestTypeDef(BaseModel): + ThirdPartyFirewall: ThirdPartyFirewallType + MaxResults: int + NextToken: Optional[str] = None + +class ThirdPartyFirewallFirewallPolicyTypeDef(BaseModel): + FirewallPolicyId: Optional[str] = None + FirewallPolicyName: Optional[str] = None + +class NetworkAclIcmpTypeCodeTypeDef(BaseModel): + Code: Optional[int] = None + Type: Optional[int] = None + +class NetworkAclPortRangeTypeDef(BaseModel): + From: Optional[int] = None + To: Optional[int] = None + +class RouteTypeDef(BaseModel): + DestinationType: Optional[DestinationTypeType] = None + TargetType: Optional[TargetTypeType] = None + Destination: Optional[str] = None + Target: Optional[str] = None + +class NetworkFirewallMissingExpectedRTViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + VPC: Optional[str] = None + AvailabilityZone: Optional[str] = None + CurrentRouteTable: Optional[str] = None + ExpectedRouteTable: Optional[str] = None + +class NetworkFirewallMissingFirewallViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + VPC: Optional[str] = None + AvailabilityZone: Optional[str] = None + TargetViolationReason: Optional[str] = None + +class NetworkFirewallMissingSubnetViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + VPC: Optional[str] = None + AvailabilityZone: Optional[str] = None + TargetViolationReason: Optional[str] = None + +class StatefulEngineOptionsTypeDef(BaseModel): + RuleOrder: Optional[RuleOrderType] = None + StreamExceptionPolicy: Optional[StreamExceptionPolicyType] = None + +class StatelessRuleGroupTypeDef(BaseModel): + RuleGroupName: Optional[str] = None + ResourceId: Optional[str] = None + Priority: Optional[int] = None + +class NetworkFirewallPolicyTypeDef(BaseModel): + FirewallDeploymentModel: Optional[FirewallDeploymentModelType] = None + +class NetworkFirewallStatefulRuleGroupOverrideTypeDef(BaseModel): + Action: Optional[Literal["DROP_TO_ALERT"]] = None + +class ThirdPartyFirewallPolicyTypeDef(BaseModel): + FirewallDeploymentModel: Optional[FirewallDeploymentModelType] = None + +class ResourceTagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class PutNotificationChannelRequestRequestTypeDef(BaseModel): + SnsTopicArn: str + SnsRoleName: str + +class ThirdPartyFirewallMissingExpectedRouteTableViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + VPC: Optional[str] = None + AvailabilityZone: Optional[str] = None + CurrentRouteTable: Optional[str] = None + ExpectedRouteTable: Optional[str] = None + +class ThirdPartyFirewallMissingFirewallViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + VPC: Optional[str] = None + AvailabilityZone: Optional[str] = None + TargetViolationReason: Optional[str] = None + +class ThirdPartyFirewallMissingSubnetViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + VPC: Optional[str] = None + AvailabilityZone: Optional[str] = None + TargetViolationReason: Optional[str] = None + +class SecurityGroupRuleDescriptionTypeDef(BaseModel): + IPV4Range: Optional[str] = None + IPV6Range: Optional[str] = None + PrefixListId: Optional[str] = None + Protocol: Optional[str] = None + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class CreateNetworkAclActionTypeDef(BaseModel): + Description: Optional[str] = None + Vpc: Optional[ActionTargetTypeDef] = None + FMSCanRemediate: Optional[bool] = None + +class EC2AssociateRouteTableActionTypeDef(BaseModel): + RouteTableId: ActionTargetTypeDef + Description: Optional[str] = None + SubnetId: Optional[ActionTargetTypeDef] = None + GatewayId: Optional[ActionTargetTypeDef] = None + +class EC2CopyRouteTableActionTypeDef(BaseModel): + VpcId: ActionTargetTypeDef + RouteTableId: ActionTargetTypeDef + Description: Optional[str] = None + +class EC2CreateRouteActionTypeDef(BaseModel): + RouteTableId: ActionTargetTypeDef + Description: Optional[str] = None + DestinationCidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + VpcEndpointId: Optional[ActionTargetTypeDef] = None + GatewayId: Optional[ActionTargetTypeDef] = None + +class EC2CreateRouteTableActionTypeDef(BaseModel): + VpcId: ActionTargetTypeDef + Description: Optional[str] = None + +class EC2DeleteRouteActionTypeDef(BaseModel): + RouteTableId: ActionTargetTypeDef + Description: Optional[str] = None + DestinationCidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + +class EC2ReplaceRouteActionTypeDef(BaseModel): + RouteTableId: ActionTargetTypeDef + Description: Optional[str] = None + DestinationCidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + GatewayId: Optional[ActionTargetTypeDef] = None + +class EC2ReplaceRouteTableAssociationActionTypeDef(BaseModel): + AssociationId: ActionTargetTypeDef + RouteTableId: ActionTargetTypeDef + Description: Optional[str] = None + +class ReplaceNetworkAclAssociationActionTypeDef(BaseModel): + Description: Optional[str] = None + AssociationId: Optional[ActionTargetTypeDef] = None + NetworkAclId: Optional[ActionTargetTypeDef] = None + FMSCanRemediate: Optional[bool] = None + +class AdminScopeOutputTypeDef(BaseModel): + AccountScope: Optional[AccountScopeOutputTypeDef] = None + OrganizationalUnitScope: Optional[OrganizationalUnitScopeOutputTypeDef] = None + RegionScope: Optional[RegionScopeOutputTypeDef] = None + PolicyTypeScope: Optional[PolicyTypeScopeOutputTypeDef] = None + +class AdminScopeTypeDef(BaseModel): + AccountScope: Optional[AccountScopeTypeDef] = None + OrganizationalUnitScope: Optional[OrganizationalUnitScopeTypeDef] = None + RegionScope: Optional[RegionScopeTypeDef] = None + PolicyTypeScope: Optional[PolicyTypeScopeTypeDef] = None + +class AppsListDataOutputTypeDef(BaseModel): + ListName: str + AppsList: List[AppTypeDef] + ListId: Optional[str] = None + ListUpdateToken: Optional[str] = None + CreateTime: Optional[datetime] = None + LastUpdateTime: Optional[datetime] = None + PreviousAppsList: Optional[Dict[str, List[AppTypeDef]]] = None + +class AppsListDataSummaryTypeDef(BaseModel): + ListArn: Optional[str] = None + ListId: Optional[str] = None + ListName: Optional[str] = None + AppsList: Optional[List[AppTypeDef]] = None + +class AppsListDataTypeDef(BaseModel): + ListName: str + AppsList: Sequence[AppTypeDef] + ListId: Optional[str] = None + ListUpdateToken: Optional[str] = None + CreateTime: Optional[TimestampTypeDef] = None + LastUpdateTime: Optional[TimestampTypeDef] = None + PreviousAppsList: Optional[Mapping[str, Sequence[AppTypeDef]]] = None + +class GetProtectionStatusRequestRequestTypeDef(BaseModel): + PolicyId: str + MemberAccountId: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ProtocolsListDataTypeDef(BaseModel): + ListName: str + ProtocolsList: Sequence[str] + ListId: Optional[str] = None + ListUpdateToken: Optional[str] = None + CreateTime: Optional[TimestampTypeDef] = None + LastUpdateTime: Optional[TimestampTypeDef] = None + PreviousProtocolsList: Optional[Mapping[str, Sequence[str]]] = None + +class ResourceSetTypeDef(BaseModel): + Name: str + ResourceTypeList: Sequence[str] + Id: Optional[str] = None + Description: Optional[str] = None + UpdateToken: Optional[str] = None + LastUpdateTime: Optional[TimestampTypeDef] = None + ResourceSetStatus: Optional[ResourceSetStatusType] = None + +class AssociateThirdPartyFirewallResponseTypeDef(BaseModel): + ThirdPartyFirewallStatus: ThirdPartyFirewallAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateThirdPartyFirewallResponseTypeDef(BaseModel): + ThirdPartyFirewallStatus: ThirdPartyFirewallAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAdminAccountResponseTypeDef(BaseModel): + AdminAccount: str + RoleStatus: AccountRoleStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetNotificationChannelResponseTypeDef(BaseModel): + SnsTopicArn: str + SnsRoleName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProtectionStatusResponseTypeDef(BaseModel): + AdminAccountId: str + ServiceType: SecurityServiceTypeType + Data: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetThirdPartyFirewallAssociationStatusResponseTypeDef(BaseModel): + ThirdPartyFirewallStatus: ThirdPartyFirewallAssociationStatusType + MarketplaceOnboardingStatus: MarketplaceSubscriptionOnboardingStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListAdminAccountsForOrganizationResponseTypeDef(BaseModel): + AdminAccounts: List[AdminAccountSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAdminsManagingAccountResponseTypeDef(BaseModel): + AdminAccounts: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMemberAccountsResponseTypeDef(BaseModel): + MemberAccounts: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AwsEc2InstanceViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + AwsEc2NetworkInterfaceViolations: Optional[ List[AwsEc2NetworkInterfaceViolationTypeDef] ] = None + +class BatchAssociateResourceResponseTypeDef(BaseModel): + ResourceSetIdentifier: str + FailedItems: List[FailedItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateResourceResponseTypeDef(BaseModel): + ResourceSetIdentifier: str + FailedItems: List[FailedItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PolicyComplianceDetailTypeDef(BaseModel): + PolicyOwner: Optional[str] = None + PolicyId: Optional[str] = None + MemberAccount: Optional[str] = None + Violators: Optional[List[ComplianceViolatorTypeDef]] = None + EvaluationLimitExceeded: Optional[bool] = None + ExpiredAt: Optional[datetime] = None + IssueInfoMap: Optional[Dict[DependentServiceNameType, str]] = None + +class ListDiscoveredResourcesResponseTypeDef(BaseModel): + Items: List[DiscoveredResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PolicyComplianceStatusTypeDef(BaseModel): + PolicyOwner: Optional[str] = None + PolicyId: Optional[str] = None + PolicyName: Optional[str] = None + MemberAccount: Optional[str] = None + EvaluationResults: Optional[List[EvaluationResultTypeDef]] = None + LastUpdated: Optional[datetime] = None + IssueInfoMap: Optional[Dict[DependentServiceNameType, str]] = None + +class NetworkFirewallMissingExpectedRoutesViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + ExpectedRoutes: Optional[List[ExpectedRouteTypeDef]] = None + VpcId: Optional[str] = None + +class GetProtocolsListResponseTypeDef(BaseModel): + ProtocolsList: ProtocolsListDataOutputTypeDef + ProtocolsListArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutProtocolsListResponseTypeDef(BaseModel): + ProtocolsList: ProtocolsListDataOutputTypeDef + ProtocolsListArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceSetResponseTypeDef(BaseModel): + ResourceSet: ResourceSetOutputTypeDef + ResourceSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourceSetResponseTypeDef(BaseModel): + ResourceSet: ResourceSetOutputTypeDef + ResourceSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAdminAccountsForOrganizationRequestListAdminAccountsForOrganizationPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAdminsManagingAccountRequestListAdminsManagingAccountPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppsListsRequestListAppsListsPaginateTypeDef(BaseModel): + DefaultLists: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComplianceStatusRequestListComplianceStatusPaginateTypeDef(BaseModel): + PolicyId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMemberAccountsRequestListMemberAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesRequestListPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProtocolsListsRequestListProtocolsListsPaginateTypeDef(BaseModel): + DefaultLists: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThirdPartyFirewallFirewallPoliciesRequestListThirdPartyFirewallFirewallPoliciesPaginateTypeDef(BaseModel): + ThirdPartyFirewall: ThirdPartyFirewallType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesResponseTypeDef(BaseModel): + PolicyList: List[PolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProtocolsListsResponseTypeDef(BaseModel): + ProtocolsLists: List[ProtocolsListDataSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceSetResourcesResponseTypeDef(BaseModel): + Items: List[ResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceSetsResponseTypeDef(BaseModel): + ResourceSets: List[ResourceSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagList: Sequence[TagTypeDef] + +class ListThirdPartyFirewallFirewallPoliciesResponseTypeDef(BaseModel): + ThirdPartyFirewallFirewallPolicies: List[ThirdPartyFirewallFirewallPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class NetworkAclEntryTypeDef(BaseModel): + Protocol: str + RuleAction: NetworkAclRuleActionType + Egress: bool + IcmpTypeCode: Optional[NetworkAclIcmpTypeCodeTypeDef] = None + PortRange: Optional[NetworkAclPortRangeTypeDef] = None + CidrBlock: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + +class NetworkFirewallBlackHoleRouteDetectedViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + RouteTableId: Optional[str] = None + VpcId: Optional[str] = None + ViolatingRoutes: Optional[List[RouteTypeDef]] = None + +class NetworkFirewallInternetTrafficNotInspectedViolationTypeDef(BaseModel): + SubnetId: Optional[str] = None + SubnetAvailabilityZone: Optional[str] = None + RouteTableId: Optional[str] = None + ViolatingRoutes: Optional[List[RouteTypeDef]] = None + IsRouteTableUsedInDifferentAZ: Optional[bool] = None + CurrentFirewallSubnetRouteTable: Optional[str] = None + ExpectedFirewallEndpoint: Optional[str] = None + FirewallSubnetId: Optional[str] = None + ExpectedFirewallSubnetRoutes: Optional[List[ExpectedRouteTypeDef]] = None + ActualFirewallSubnetRoutes: Optional[List[RouteTypeDef]] = None + InternetGatewayId: Optional[str] = None + CurrentInternetGatewayRouteTable: Optional[str] = None + ExpectedInternetGatewayRoutes: Optional[List[ExpectedRouteTypeDef]] = None + ActualInternetGatewayRoutes: Optional[List[RouteTypeDef]] = None + VpcId: Optional[str] = None + +class NetworkFirewallInvalidRouteConfigurationViolationTypeDef(BaseModel): + AffectedSubnets: Optional[List[str]] = None + RouteTableId: Optional[str] = None + IsRouteTableUsedInDifferentAZ: Optional[bool] = None + ViolatingRoute: Optional[RouteTypeDef] = None + CurrentFirewallSubnetRouteTable: Optional[str] = None + ExpectedFirewallEndpoint: Optional[str] = None + ActualFirewallEndpoint: Optional[str] = None + ExpectedFirewallSubnetId: Optional[str] = None + ActualFirewallSubnetId: Optional[str] = None + ExpectedFirewallSubnetRoutes: Optional[List[ExpectedRouteTypeDef]] = None + ActualFirewallSubnetRoutes: Optional[List[RouteTypeDef]] = None + InternetGatewayId: Optional[str] = None + CurrentInternetGatewayRouteTable: Optional[str] = None + ExpectedInternetGatewayRoutes: Optional[List[ExpectedRouteTypeDef]] = None + ActualInternetGatewayRoutes: Optional[List[RouteTypeDef]] = None + VpcId: Optional[str] = None + +class NetworkFirewallUnexpectedFirewallRoutesViolationTypeDef(BaseModel): + FirewallSubnetId: Optional[str] = None + ViolatingRoutes: Optional[List[RouteTypeDef]] = None + RouteTableId: Optional[str] = None + FirewallEndpoint: Optional[str] = None + VpcId: Optional[str] = None + +class NetworkFirewallUnexpectedGatewayRoutesViolationTypeDef(BaseModel): + GatewayId: Optional[str] = None + ViolatingRoutes: Optional[List[RouteTypeDef]] = None + RouteTableId: Optional[str] = None + VpcId: Optional[str] = None + +class RouteHasOutOfScopeEndpointViolationTypeDef(BaseModel): + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + RouteTableId: Optional[str] = None + ViolatingRoutes: Optional[List[RouteTypeDef]] = None + SubnetAvailabilityZone: Optional[str] = None + SubnetAvailabilityZoneId: Optional[str] = None + CurrentFirewallSubnetRouteTable: Optional[str] = None + FirewallSubnetId: Optional[str] = None + FirewallSubnetRoutes: Optional[List[RouteTypeDef]] = None + InternetGatewayId: Optional[str] = None + CurrentInternetGatewayRouteTable: Optional[str] = None + InternetGatewayRoutes: Optional[List[RouteTypeDef]] = None + +class StatefulRuleGroupTypeDef(BaseModel): + RuleGroupName: Optional[str] = None + ResourceId: Optional[str] = None + Priority: Optional[int] = None + Override: Optional[NetworkFirewallStatefulRuleGroupOverrideTypeDef] = None + +class SecurityGroupRemediationActionTypeDef(BaseModel): + RemediationActionType: Optional[RemediationActionTypeType] = None + Description: Optional[str] = None + RemediationResult: Optional[SecurityGroupRuleDescriptionTypeDef] = None + IsDefaultAction: Optional[bool] = None + +class GetAdminScopeResponseTypeDef(BaseModel): + AdminScope: AdminScopeOutputTypeDef + Status: OrganizationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class PutAdminAccountRequestRequestTypeDef(BaseModel): + AdminAccount: str + AdminScope: Optional[AdminScopeTypeDef] = None + +class GetAppsListResponseTypeDef(BaseModel): + AppsList: AppsListDataOutputTypeDef + AppsListArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppsListResponseTypeDef(BaseModel): + AppsList: AppsListDataOutputTypeDef + AppsListArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppsListsResponseTypeDef(BaseModel): + AppsLists: List[AppsListDataSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutAppsListRequestRequestTypeDef(BaseModel): + AppsList: AppsListDataTypeDef + TagList: Optional[Sequence[TagTypeDef]] = None + +class PutProtocolsListRequestRequestTypeDef(BaseModel): + ProtocolsList: ProtocolsListDataTypeDef + TagList: Optional[Sequence[TagTypeDef]] = None + +class PutResourceSetRequestRequestTypeDef(BaseModel): + ResourceSet: ResourceSetTypeDef + TagList: Optional[Sequence[TagTypeDef]] = None + +class GetComplianceDetailResponseTypeDef(BaseModel): + PolicyComplianceDetail: PolicyComplianceDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListComplianceStatusResponseTypeDef(BaseModel): + PolicyComplianceStatusList: List[PolicyComplianceStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EntryDescriptionTypeDef(BaseModel): + EntryDetail: Optional[NetworkAclEntryTypeDef] = None + EntryRuleNumber: Optional[int] = None + EntryType: Optional[EntryTypeType] = None + +class NetworkAclEntrySetOutputTypeDef(BaseModel): + ForceRemediateForFirstEntries: bool + ForceRemediateForLastEntries: bool + FirstEntries: Optional[List[NetworkAclEntryTypeDef]] = None + LastEntries: Optional[List[NetworkAclEntryTypeDef]] = None + +class NetworkAclEntrySetTypeDef(BaseModel): + ForceRemediateForFirstEntries: bool + ForceRemediateForLastEntries: bool + FirstEntries: Optional[Sequence[NetworkAclEntryTypeDef]] = None + LastEntries: Optional[Sequence[NetworkAclEntryTypeDef]] = None + +class NetworkFirewallPolicyDescriptionTypeDef(BaseModel): + StatelessRuleGroups: Optional[List[StatelessRuleGroupTypeDef]] = None + StatelessDefaultActions: Optional[List[str]] = None + StatelessFragmentDefaultActions: Optional[List[str]] = None + StatelessCustomActions: Optional[List[str]] = None + StatefulRuleGroups: Optional[List[StatefulRuleGroupTypeDef]] = None + StatefulDefaultActions: Optional[List[str]] = None + StatefulEngineOptions: Optional[StatefulEngineOptionsTypeDef] = None + +class AwsVPCSecurityGroupViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + ViolationTargetDescription: Optional[str] = None + PartialMatches: Optional[List[PartialMatchTypeDef]] = None + PossibleSecurityGroupRemediationActions: Optional[ List[SecurityGroupRemediationActionTypeDef] ] = None + +class CreateNetworkAclEntriesActionTypeDef(BaseModel): + Description: Optional[str] = None + NetworkAclId: Optional[ActionTargetTypeDef] = None + NetworkAclEntriesToBeCreated: Optional[List[EntryDescriptionTypeDef]] = None + FMSCanRemediate: Optional[bool] = None + +class DeleteNetworkAclEntriesActionTypeDef(BaseModel): + Description: Optional[str] = None + NetworkAclId: Optional[ActionTargetTypeDef] = None + NetworkAclEntriesToBeDeleted: Optional[List[EntryDescriptionTypeDef]] = None + FMSCanRemediate: Optional[bool] = None + +class EntryViolationTypeDef(BaseModel): + ExpectedEntry: Optional[EntryDescriptionTypeDef] = None + ExpectedEvaluationOrder: Optional[str] = None + ActualEvaluationOrder: Optional[str] = None + EntryAtExpectedEvaluationOrder: Optional[EntryDescriptionTypeDef] = None + EntriesWithConflicts: Optional[List[EntryDescriptionTypeDef]] = None + EntryViolationReasons: Optional[List[EntryViolationReasonType]] = None + +class NetworkAclCommonPolicyOutputTypeDef(BaseModel): + NetworkAclEntrySet: NetworkAclEntrySetOutputTypeDef + +class NetworkAclCommonPolicyTypeDef(BaseModel): + NetworkAclEntrySet: NetworkAclEntrySetTypeDef + +class NetworkFirewallPolicyModifiedViolationTypeDef(BaseModel): + ViolationTarget: Optional[str] = None + CurrentPolicyDescription: Optional[NetworkFirewallPolicyDescriptionTypeDef] = None + ExpectedPolicyDescription: Optional[NetworkFirewallPolicyDescriptionTypeDef] = None + +class RemediationActionTypeDef(BaseModel): + Description: Optional[str] = None + EC2CreateRouteAction: Optional[EC2CreateRouteActionTypeDef] = None + EC2ReplaceRouteAction: Optional[EC2ReplaceRouteActionTypeDef] = None + EC2DeleteRouteAction: Optional[EC2DeleteRouteActionTypeDef] = None + EC2CopyRouteTableAction: Optional[EC2CopyRouteTableActionTypeDef] = None + EC2ReplaceRouteTableAssociationAction: Optional[ EC2ReplaceRouteTableAssociationActionTypeDef ] = None + EC2AssociateRouteTableAction: Optional[EC2AssociateRouteTableActionTypeDef] = None + EC2CreateRouteTableAction: Optional[EC2CreateRouteTableActionTypeDef] = None + FMSPolicyUpdateFirewallCreationConfigAction: Optional[ FMSPolicyUpdateFirewallCreationConfigActionTypeDef ] = None + CreateNetworkAclAction: Optional[CreateNetworkAclActionTypeDef] = None + ReplaceNetworkAclAssociationAction: Optional[ ReplaceNetworkAclAssociationActionTypeDef ] = None + CreateNetworkAclEntriesAction: Optional[CreateNetworkAclEntriesActionTypeDef] = None + DeleteNetworkAclEntriesAction: Optional[DeleteNetworkAclEntriesActionTypeDef] = None + +class InvalidNetworkAclEntriesViolationTypeDef(BaseModel): + Vpc: Optional[str] = None + Subnet: Optional[str] = None + SubnetAvailabilityZone: Optional[str] = None + CurrentAssociatedNetworkAcl: Optional[str] = None + EntryViolations: Optional[List[EntryViolationTypeDef]] = None + +class PolicyOptionOutputTypeDef(BaseModel): + NetworkFirewallPolicy: Optional[NetworkFirewallPolicyTypeDef] = None + ThirdPartyFirewallPolicy: Optional[ThirdPartyFirewallPolicyTypeDef] = None + NetworkAclCommonPolicy: Optional[NetworkAclCommonPolicyOutputTypeDef] = None + +class PolicyOptionTypeDef(BaseModel): + NetworkFirewallPolicy: Optional[NetworkFirewallPolicyTypeDef] = None + ThirdPartyFirewallPolicy: Optional[ThirdPartyFirewallPolicyTypeDef] = None + NetworkAclCommonPolicy: Optional[NetworkAclCommonPolicyTypeDef] = None + +class RemediationActionWithOrderTypeDef(BaseModel): + RemediationAction: Optional[RemediationActionTypeDef] = None + Order: Optional[int] = None + +class SecurityServicePolicyDataOutputTypeDef(BaseModel): + Type: SecurityServiceTypeType + ManagedServiceData: Optional[str] = None + PolicyOption: Optional[PolicyOptionOutputTypeDef] = None + +class SecurityServicePolicyDataTypeDef(BaseModel): + Type: SecurityServiceTypeType + ManagedServiceData: Optional[str] = None + PolicyOption: Optional[PolicyOptionTypeDef] = None + +class PossibleRemediationActionTypeDef(BaseModel): + OrderedRemediationActions: List[RemediationActionWithOrderTypeDef] + Description: Optional[str] = None + IsDefaultAction: Optional[bool] = None + +class PolicyOutputTypeDef(BaseModel): + PolicyName: str + SecurityServicePolicyData: SecurityServicePolicyDataOutputTypeDef + ResourceType: str + ExcludeResourceTags: bool + RemediationEnabled: bool + PolicyId: Optional[str] = None + PolicyUpdateToken: Optional[str] = None + ResourceTypeList: Optional[List[str]] = None + ResourceTags: Optional[List[ResourceTagTypeDef]] = None + DeleteUnusedFMManagedResources: Optional[bool] = None + IncludeMap: Optional[Dict[CustomerPolicyScopeIdTypeType, List[str]]] = None + ExcludeMap: Optional[Dict[CustomerPolicyScopeIdTypeType, List[str]]] = None + ResourceSetIds: Optional[List[str]] = None + PolicyDescription: Optional[str] = None + PolicyStatus: Optional[CustomerPolicyStatusType] = None + +class PolicyTypeDef(BaseModel): + PolicyName: str + SecurityServicePolicyData: SecurityServicePolicyDataTypeDef + ResourceType: str + ExcludeResourceTags: bool + RemediationEnabled: bool + PolicyId: Optional[str] = None + PolicyUpdateToken: Optional[str] = None + ResourceTypeList: Optional[Sequence[str]] = None + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + DeleteUnusedFMManagedResources: Optional[bool] = None + IncludeMap: Optional[Mapping[CustomerPolicyScopeIdTypeType, Sequence[str]]] = None + ExcludeMap: Optional[Mapping[CustomerPolicyScopeIdTypeType, Sequence[str]]] = None + ResourceSetIds: Optional[Sequence[str]] = None + PolicyDescription: Optional[str] = None + PolicyStatus: Optional[CustomerPolicyStatusType] = None + +class PossibleRemediationActionsTypeDef(BaseModel): + Description: Optional[str] = None + Actions: Optional[List[PossibleRemediationActionTypeDef]] = None + +class GetPolicyResponseTypeDef(BaseModel): + Policy: PolicyOutputTypeDef + PolicyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutPolicyResponseTypeDef(BaseModel): + Policy: PolicyOutputTypeDef + PolicyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutPolicyRequestRequestTypeDef(BaseModel): + Policy: PolicyTypeDef + TagList: Optional[Sequence[TagTypeDef]] = None + +class ResourceViolationTypeDef(BaseModel): + AwsVPCSecurityGroupViolation: Optional[AwsVPCSecurityGroupViolationTypeDef] = None + AwsEc2NetworkInterfaceViolation: Optional[AwsEc2NetworkInterfaceViolationTypeDef] = None + AwsEc2InstanceViolation: Optional[AwsEc2InstanceViolationTypeDef] = None + NetworkFirewallMissingFirewallViolation: Optional[ NetworkFirewallMissingFirewallViolationTypeDef ] = None + NetworkFirewallMissingSubnetViolation: Optional[ NetworkFirewallMissingSubnetViolationTypeDef ] = None + NetworkFirewallMissingExpectedRTViolation: Optional[ NetworkFirewallMissingExpectedRTViolationTypeDef ] = None + NetworkFirewallPolicyModifiedViolation: Optional[ NetworkFirewallPolicyModifiedViolationTypeDef ] = None + NetworkFirewallInternetTrafficNotInspectedViolation: Optional[ NetworkFirewallInternetTrafficNotInspectedViolationTypeDef ] = None + NetworkFirewallInvalidRouteConfigurationViolation: Optional[ NetworkFirewallInvalidRouteConfigurationViolationTypeDef ] = None + NetworkFirewallBlackHoleRouteDetectedViolation: Optional[ NetworkFirewallBlackHoleRouteDetectedViolationTypeDef ] = None + NetworkFirewallUnexpectedFirewallRoutesViolation: Optional[ NetworkFirewallUnexpectedFirewallRoutesViolationTypeDef ] = None + NetworkFirewallUnexpectedGatewayRoutesViolation: Optional[ NetworkFirewallUnexpectedGatewayRoutesViolationTypeDef ] = None + NetworkFirewallMissingExpectedRoutesViolation: Optional[ NetworkFirewallMissingExpectedRoutesViolationTypeDef ] = None + DnsRuleGroupPriorityConflictViolation: Optional[ DnsRuleGroupPriorityConflictViolationTypeDef ] = None + DnsDuplicateRuleGroupViolation: Optional[DnsDuplicateRuleGroupViolationTypeDef] = None + DnsRuleGroupLimitExceededViolation: Optional[ DnsRuleGroupLimitExceededViolationTypeDef ] = None + FirewallSubnetIsOutOfScopeViolation: Optional[ FirewallSubnetIsOutOfScopeViolationTypeDef ] = None + RouteHasOutOfScopeEndpointViolation: Optional[ RouteHasOutOfScopeEndpointViolationTypeDef ] = None + ThirdPartyFirewallMissingFirewallViolation: Optional[ ThirdPartyFirewallMissingFirewallViolationTypeDef ] = None + ThirdPartyFirewallMissingSubnetViolation: Optional[ ThirdPartyFirewallMissingSubnetViolationTypeDef ] = None + ThirdPartyFirewallMissingExpectedRouteTableViolation: Optional[ ThirdPartyFirewallMissingExpectedRouteTableViolationTypeDef ] = None + FirewallSubnetMissingVPCEndpointViolation: Optional[ FirewallSubnetMissingVPCEndpointViolationTypeDef ] = None + InvalidNetworkAclEntriesViolation: Optional[InvalidNetworkAclEntriesViolationTypeDef] = None + PossibleRemediationActions: Optional[PossibleRemediationActionsTypeDef] = None + +class ViolationDetailTypeDef(BaseModel): + PolicyId: str + MemberAccount: str + ResourceId: str + ResourceType: str + ResourceViolations: List[ResourceViolationTypeDef] + ResourceTags: Optional[List[TagTypeDef]] = None + ResourceDescription: Optional[str] = None + +class GetViolationDetailsResponseTypeDef(BaseModel): + ViolationDetail: ViolationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/fms_constants.py b/aws_resource_validator/pydantic_models/fms_constants.py new file mode 100644 index 00000000..d25503b3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/fms_constants.py @@ -0,0 +1,525 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountRoleStatusType = Literal["CREATING", "DELETED", "DELETING", "PENDING_DELETION", "READY"] +CustomerPolicyScopeIdTypeType = Literal["ACCOUNT", "ORG_UNIT"] +CustomerPolicyStatusType = Literal["ACTIVE", "OUT_OF_ADMIN_SCOPE"] +DependentServiceNameType = Literal["AWSCONFIG", "AWSSHIELD_ADVANCED", "AWSVPC", "AWSWAF"] +DestinationTypeType = Literal["IPV4", "IPV6", "PREFIX_LIST"] +EntryTypeType = Literal["CUSTOM_ENTRY", "FMS_MANAGED_FIRST_ENTRY", "FMS_MANAGED_LAST_ENTRY"] +EntryViolationReasonType = Literal["ENTRY_CONFLICT", "INCORRECT_ENTRY_ORDER", "MISSING_EXPECTED_ENTRY"] +FailedItemReasonType = Literal["NOT_VALID_ACCOUNT_ID", + "NOT_VALID_ARN", + "NOT_VALID_PARTITION", + "NOT_VALID_REGION", + "NOT_VALID_RESOURCE_TYPE", + "NOT_VALID_SERVICE",] +FirewallDeploymentModelType = Literal["CENTRALIZED", "DISTRIBUTED"] +ListAdminAccountsForOrganizationPaginatorName = Literal["list_admin_accounts_for_organization"] +ListAdminsManagingAccountPaginatorName = Literal["list_admins_managing_account"] +ListAppsListsPaginatorName = Literal["list_apps_lists"] +ListComplianceStatusPaginatorName = Literal["list_compliance_status"] +ListMemberAccountsPaginatorName = Literal["list_member_accounts"] +ListPoliciesPaginatorName = Literal["list_policies"] +ListProtocolsListsPaginatorName = Literal["list_protocols_lists"] +ListThirdPartyFirewallFirewallPoliciesPaginatorName = Literal["list_third_party_firewall_firewall_policies"] +MarketplaceSubscriptionOnboardingStatusType = Literal["COMPLETE", "NOT_COMPLETE", "NO_SUBSCRIPTION"] +NetworkAclRuleActionType = Literal["allow", "deny"] +NetworkFirewallOverrideActionType = Literal["DROP_TO_ALERT"] +OrganizationStatusType = Literal["OFFBOARDING", "OFFBOARDING_COMPLETE", "ONBOARDING", "ONBOARDING_COMPLETE"] +PolicyComplianceStatusTypeType = Literal["COMPLIANT", "NON_COMPLIANT"] +RemediationActionTypeType = Literal["MODIFY", "REMOVE"] +ResourceSetStatusType = Literal["ACTIVE", "OUT_OF_ADMIN_SCOPE"] +RuleOrderType = Literal["DEFAULT_ACTION_ORDER", "STRICT_ORDER"] +SecurityServiceTypeType = Literal["DNS_FIREWALL", + "IMPORT_NETWORK_FIREWALL", + "NETWORK_ACL_COMMON", + "NETWORK_FIREWALL", + "SECURITY_GROUPS_COMMON", + "SECURITY_GROUPS_CONTENT_AUDIT", + "SECURITY_GROUPS_USAGE_AUDIT", + "SHIELD_ADVANCED", + "THIRD_PARTY_FIREWALL", + "WAF", + "WAFV2",] +StreamExceptionPolicyType = Literal["CONTINUE", "DROP", "FMS_IGNORE", "REJECT"] +TargetTypeType = Literal["CARRIER_GATEWAY", + "EGRESS_ONLY_INTERNET_GATEWAY", + "GATEWAY", + "INSTANCE", + "LOCAL_GATEWAY", + "NAT_GATEWAY", + "NETWORK_INTERFACE", + "TRANSIT_GATEWAY", + "VPC_ENDPOINT", + "VPC_PEERING_CONNECTION",] +ThirdPartyFirewallAssociationStatusType = Literal["NOT_EXIST", "OFFBOARDING", "OFFBOARD_COMPLETE", "ONBOARDING", "ONBOARD_COMPLETE"] +ThirdPartyFirewallType = Literal["FORTIGATE_CLOUD_NATIVE_FIREWALL", "PALO_ALTO_NETWORKS_CLOUD_NGFW"] +ViolationReasonType = Literal["BLACK_HOLE_ROUTE_DETECTED", + "BLACK_HOLE_ROUTE_DETECTED_IN_FIREWALL_SUBNET", + "FIREWALL_SUBNET_IS_OUT_OF_SCOPE", + "FIREWALL_SUBNET_MISSING_EXPECTED_ROUTE", + "FIREWALL_SUBNET_MISSING_VPCE_ENDPOINT", + "FMS_CREATED_SECURITY_GROUP_EDITED", + "INTERNET_GATEWAY_MISSING_EXPECTED_ROUTE", + "INTERNET_TRAFFIC_NOT_INSPECTED", + "INVALID_NETWORK_ACL_ENTRY", + "INVALID_ROUTE_CONFIGURATION", + "MISSING_EXPECTED_ROUTE_TABLE", + "MISSING_FIREWALL", + "MISSING_FIREWALL_SUBNET_IN_AZ", + "MISSING_TARGET_GATEWAY", + "NETWORK_FIREWALL_POLICY_MODIFIED", + "RESOURCE_INCORRECT_WEB_ACL", + "RESOURCE_MISSING_DNS_FIREWALL", + "RESOURCE_MISSING_SECURITY_GROUP", + "RESOURCE_MISSING_SHIELD_PROTECTION", + "RESOURCE_MISSING_WEB_ACL", + "RESOURCE_MISSING_WEB_ACL_OR_SHIELD_PROTECTION", + "RESOURCE_VIOLATES_AUDIT_SECURITY_GROUP", + "ROUTE_HAS_OUT_OF_SCOPE_ENDPOINT", + "SECURITY_GROUP_REDUNDANT", + "SECURITY_GROUP_UNUSED", + "TRAFFIC_INSPECTION_CROSSES_AZ_BOUNDARY", + "UNEXPECTED_FIREWALL_ROUTES", + "UNEXPECTED_TARGET_GATEWAY_ROUTES", + "WEB_ACL_MISSING_RULE_GROUP",] +FMSServiceName = Literal["fms"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_admin_accounts_for_organization", + "list_admins_managing_account", + "list_apps_lists", + "list_compliance_status", + "list_member_accounts", + "list_policies", + "list_protocols_lists", + "list_third_party_firewall_firewall_policies",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AdminScopeUnionTypeDef = Union['AdminScopeTypeDef', 'AdminScopeOutputTypeDef'] +AppsListDataUnionTypeDef = Union['AppsListDataTypeDef', 'AppsListDataOutputTypeDef'] +ProtocolsListDataUnionTypeDef = Union['ProtocolsListDataTypeDef', 'ProtocolsListDataOutputTypeDef'] +ResourceSetUnionTypeDef = Union['ResourceSetTypeDef', 'ResourceSetOutputTypeDef'] +PolicyUnionTypeDef = Union['PolicyTypeDef', 'PolicyOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/forecast_classes.py b/aws_resource_validator/pydantic_models/forecast_classes.py new file mode 100644 index 00000000..0986f627 --- /dev/null +++ b/aws_resource_validator/pydantic_models/forecast_classes.py @@ -0,0 +1,1088 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.forecast_constants import * + +class ActionTypeDef(BaseModel): + AttributeName: str + Operation: OperationType + Value: float + +class AdditionalDatasetTypeDef(BaseModel): + Name: str + Configuration: Optional[Mapping[str, Sequence[str]]] = None + +class AttributeConfigTypeDef(BaseModel): + AttributeName: str + Transformations: Mapping[str, str] + +class BaselineMetricTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[float] = None + +class CategoricalParameterRangeTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class ContinuousParameterRangeTypeDef(BaseModel): + Name: str + MaxValue: float + MinValue: float + ScalingType: Optional[ScalingTypeType] = None + +class EncryptionConfigTypeDef(BaseModel): + RoleArn: str + KMSKeyArn: str + +class MonitorConfigTypeDef(BaseModel): + MonitorName: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class TimeAlignmentBoundaryTypeDef(BaseModel): + Month: Optional[MonthType] = None + DayOfMonth: Optional[int] = None + DayOfWeek: Optional[DayOfWeekType] = None + Hour: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ExplainabilityConfigTypeDef(BaseModel): + TimeSeriesGranularity: TimeSeriesGranularityType + TimePointGranularity: TimePointGranularityType + +class EvaluationParametersTypeDef(BaseModel): + NumberOfBacktestWindows: Optional[int] = None + BackTestWindowOffset: Optional[int] = None + +class S3ConfigTypeDef(BaseModel): + Path: str + RoleArn: str + KMSKeyArn: Optional[str] = None + +class DatasetGroupSummaryTypeDef(BaseModel): + DatasetGroupArn: Optional[str] = None + DatasetGroupName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class DatasetSummaryTypeDef(BaseModel): + DatasetArn: Optional[str] = None + DatasetName: Optional[str] = None + DatasetType: Optional[DatasetTypeType] = None + Domain: Optional[DomainType] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class DeleteDatasetGroupRequestRequestTypeDef(BaseModel): + DatasetGroupArn: str + +class DeleteDatasetImportJobRequestRequestTypeDef(BaseModel): + DatasetImportJobArn: str + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + DatasetArn: str + +class DeleteExplainabilityExportRequestRequestTypeDef(BaseModel): + ExplainabilityExportArn: str + +class DeleteExplainabilityRequestRequestTypeDef(BaseModel): + ExplainabilityArn: str + +class DeleteForecastExportJobRequestRequestTypeDef(BaseModel): + ForecastExportJobArn: str + +class DeleteForecastRequestRequestTypeDef(BaseModel): + ForecastArn: str + +class DeleteMonitorRequestRequestTypeDef(BaseModel): + MonitorArn: str + +class DeletePredictorBacktestExportJobRequestRequestTypeDef(BaseModel): + PredictorBacktestExportJobArn: str + +class DeletePredictorRequestRequestTypeDef(BaseModel): + PredictorArn: str + +class DeleteResourceTreeRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteWhatIfAnalysisRequestRequestTypeDef(BaseModel): + WhatIfAnalysisArn: str + +class DeleteWhatIfForecastExportRequestRequestTypeDef(BaseModel): + WhatIfForecastExportArn: str + +class DeleteWhatIfForecastRequestRequestTypeDef(BaseModel): + WhatIfForecastArn: str + +class DescribeAutoPredictorRequestRequestTypeDef(BaseModel): + PredictorArn: str + +class ExplainabilityInfoTypeDef(BaseModel): + ExplainabilityArn: Optional[str] = None + Status: Optional[str] = None + +class MonitorInfoTypeDef(BaseModel): + MonitorArn: Optional[str] = None + Status: Optional[str] = None + +class ReferencePredictorSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + State: Optional[StateType] = None + +class DescribeDatasetGroupRequestRequestTypeDef(BaseModel): + DatasetGroupArn: str + +class DescribeDatasetImportJobRequestRequestTypeDef(BaseModel): + DatasetImportJobArn: str + +class StatisticsTypeDef(BaseModel): + Count: Optional[int] = None + CountDistinct: Optional[int] = None + CountNull: Optional[int] = None + CountNan: Optional[int] = None + Min: Optional[str] = None + Max: Optional[str] = None + Avg: Optional[float] = None + Stddev: Optional[float] = None + CountLong: Optional[int] = None + CountDistinctLong: Optional[int] = None + CountNullLong: Optional[int] = None + CountNanLong: Optional[int] = None + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + DatasetArn: str + +class DescribeExplainabilityExportRequestRequestTypeDef(BaseModel): + ExplainabilityExportArn: str + +class DescribeExplainabilityRequestRequestTypeDef(BaseModel): + ExplainabilityArn: str + +class DescribeForecastExportJobRequestRequestTypeDef(BaseModel): + ForecastExportJobArn: str + +class DescribeForecastRequestRequestTypeDef(BaseModel): + ForecastArn: str + +class DescribeMonitorRequestRequestTypeDef(BaseModel): + MonitorArn: str + +class DescribePredictorBacktestExportJobRequestRequestTypeDef(BaseModel): + PredictorBacktestExportJobArn: str + +class DescribePredictorRequestRequestTypeDef(BaseModel): + PredictorArn: str + +class DescribeWhatIfAnalysisRequestRequestTypeDef(BaseModel): + WhatIfAnalysisArn: str + +class DescribeWhatIfForecastExportRequestRequestTypeDef(BaseModel): + WhatIfForecastExportArn: str + +class DescribeWhatIfForecastRequestRequestTypeDef(BaseModel): + WhatIfForecastArn: str + +class ErrorMetricTypeDef(BaseModel): + ForecastType: Optional[str] = None + WAPE: Optional[float] = None + RMSE: Optional[float] = None + MASE: Optional[float] = None + MAPE: Optional[float] = None + +class FeaturizationMethodTypeDef(BaseModel): + FeaturizationMethodName: Literal["filling"] + FeaturizationMethodParameters: Optional[Mapping[str, str]] = None + +class FilterTypeDef(BaseModel): + Key: str + Value: str + Condition: FilterConditionStringType + +class ForecastSummaryTypeDef(BaseModel): + ForecastArn: Optional[str] = None + ForecastName: Optional[str] = None + PredictorArn: Optional[str] = None + CreatedUsingAutoPredictor: Optional[bool] = None + DatasetGroupArn: Optional[str] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class GetAccuracyMetricsRequestRequestTypeDef(BaseModel): + PredictorArn: str + +class SupplementaryFeatureTypeDef(BaseModel): + Name: str + Value: str + +class IntegerParameterRangeTypeDef(BaseModel): + Name: str + MaxValue: int + MinValue: int + ScalingType: Optional[ScalingTypeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDatasetGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MonitorSummaryTypeDef(BaseModel): + MonitorArn: Optional[str] = None + MonitorName: Optional[str] = None + ResourceArn: Optional[str] = None + Status: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class WhatIfAnalysisSummaryTypeDef(BaseModel): + WhatIfAnalysisArn: Optional[str] = None + WhatIfAnalysisName: Optional[str] = None + ForecastArn: Optional[str] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class WhatIfForecastSummaryTypeDef(BaseModel): + WhatIfForecastArn: Optional[str] = None + WhatIfForecastName: Optional[str] = None + WhatIfAnalysisArn: Optional[str] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class MetricResultTypeDef(BaseModel): + MetricName: Optional[str] = None + MetricValue: Optional[float] = None + +class WeightedQuantileLossTypeDef(BaseModel): + Quantile: Optional[float] = None + LossValue: Optional[float] = None + +class MonitorDataSourceTypeDef(BaseModel): + DatasetImportJobArn: Optional[str] = None + ForecastArn: Optional[str] = None + PredictorArn: Optional[str] = None + +class PredictorEventTypeDef(BaseModel): + Detail: Optional[str] = None + Datetime: Optional[datetime] = None + +class TestWindowSummaryTypeDef(BaseModel): + TestWindowStart: Optional[datetime] = None + TestWindowEnd: Optional[datetime] = None + Status: Optional[str] = None + Message: Optional[str] = None + +class ResumeResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class SchemaAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeType: Optional[AttributeTypeType] = None + +class StopResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TimeSeriesConditionTypeDef(BaseModel): + AttributeName: str + AttributeValue: str + Condition: ConditionType + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDatasetGroupRequestRequestTypeDef(BaseModel): + DatasetGroupArn: str + DatasetArns: Sequence[str] + +class DataConfigTypeDef(BaseModel): + DatasetGroupArn: str + AttributeConfigs: Optional[Sequence[AttributeConfigTypeDef]] = None + AdditionalDatasets: Optional[Sequence[AdditionalDatasetTypeDef]] = None + +class PredictorBaselineTypeDef(BaseModel): + BaselineMetrics: Optional[List[BaselineMetricTypeDef]] = None + +class CreateDatasetGroupRequestRequestTypeDef(BaseModel): + DatasetGroupName: str + Domain: DomainType + DatasetArns: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateMonitorRequestRequestTypeDef(BaseModel): + MonitorName: str + ResourceArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateAutoPredictorResponseTypeDef(BaseModel): + PredictorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetGroupResponseTypeDef(BaseModel): + DatasetGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetImportJobResponseTypeDef(BaseModel): + DatasetImportJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetResponseTypeDef(BaseModel): + DatasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExplainabilityExportResponseTypeDef(BaseModel): + ExplainabilityExportArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExplainabilityResponseTypeDef(BaseModel): + ExplainabilityArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateForecastExportJobResponseTypeDef(BaseModel): + ForecastExportJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateForecastResponseTypeDef(BaseModel): + ForecastArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMonitorResponseTypeDef(BaseModel): + MonitorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePredictorBacktestExportJobResponseTypeDef(BaseModel): + PredictorBacktestExportJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePredictorResponseTypeDef(BaseModel): + PredictorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWhatIfAnalysisResponseTypeDef(BaseModel): + WhatIfAnalysisArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWhatIfForecastExportResponseTypeDef(BaseModel): + WhatIfForecastExportArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWhatIfForecastResponseTypeDef(BaseModel): + WhatIfForecastArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetGroupResponseTypeDef(BaseModel): + DatasetGroupName: str + DatasetGroupArn: str + DatasetArns: List[str] + Domain: DomainType + Status: str + CreationTime: datetime + LastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExplainabilitySummaryTypeDef(BaseModel): + ExplainabilityArn: Optional[str] = None + ExplainabilityName: Optional[str] = None + ResourceArn: Optional[str] = None + ExplainabilityConfig: Optional[ExplainabilityConfigTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class DataDestinationTypeDef(BaseModel): + S3Config: S3ConfigTypeDef + +class DataSourceTypeDef(BaseModel): + S3Config: S3ConfigTypeDef + +class ListDatasetGroupsResponseTypeDef(BaseModel): + DatasetGroups: List[DatasetGroupSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponseTypeDef(BaseModel): + Datasets: List[DatasetSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PredictorSummaryTypeDef(BaseModel): + PredictorArn: Optional[str] = None + PredictorName: Optional[str] = None + DatasetGroupArn: Optional[str] = None + IsAutoPredictor: Optional[bool] = None + ReferencePredictorSummary: Optional[ReferencePredictorSummaryTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class FeaturizationTypeDef(BaseModel): + AttributeName: str + FeaturizationPipeline: Optional[Sequence[FeaturizationMethodTypeDef]] = None + +class ListDatasetImportJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListExplainabilitiesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListExplainabilityExportsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListForecastExportJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListForecastsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListMonitorEvaluationsRequestRequestTypeDef(BaseModel): + MonitorArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListMonitorsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListPredictorBacktestExportJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListPredictorsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListWhatIfAnalysesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListWhatIfForecastExportsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListWhatIfForecastsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListForecastsResponseTypeDef(BaseModel): + Forecasts: List[ForecastSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InputDataConfigTypeDef(BaseModel): + DatasetGroupArn: str + SupplementaryFeatures: Optional[Sequence[SupplementaryFeatureTypeDef]] = None + +class ParameterRangesTypeDef(BaseModel): + CategoricalParameterRanges: Optional[Sequence[CategoricalParameterRangeTypeDef]] = None + ContinuousParameterRanges: Optional[Sequence[ContinuousParameterRangeTypeDef]] = None + IntegerParameterRanges: Optional[Sequence[IntegerParameterRangeTypeDef]] = None + +class ListDatasetGroupsRequestListDatasetGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetImportJobsRequestListDatasetImportJobsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetsRequestListDatasetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExplainabilitiesRequestListExplainabilitiesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExplainabilityExportsRequestListExplainabilityExportsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListForecastExportJobsRequestListForecastExportJobsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListForecastsRequestListForecastsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitorEvaluationsRequestListMonitorEvaluationsPaginateTypeDef(BaseModel): + MonitorArn: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitorsRequestListMonitorsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPredictorBacktestExportJobsRequestListPredictorBacktestExportJobsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPredictorsRequestListPredictorsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWhatIfAnalysesRequestListWhatIfAnalysesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWhatIfForecastExportsRequestListWhatIfForecastExportsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWhatIfForecastsRequestListWhatIfForecastsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitorsResponseTypeDef(BaseModel): + Monitors: List[MonitorSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWhatIfAnalysesResponseTypeDef(BaseModel): + WhatIfAnalyses: List[WhatIfAnalysisSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWhatIfForecastsResponseTypeDef(BaseModel): + WhatIfForecasts: List[WhatIfForecastSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricsTypeDef(BaseModel): + RMSE: Optional[float] = None + WeightedQuantileLosses: Optional[List[WeightedQuantileLossTypeDef]] = None + ErrorMetrics: Optional[List[ErrorMetricTypeDef]] = None + AverageWeightedQuantileLoss: Optional[float] = None + +class PredictorMonitorEvaluationTypeDef(BaseModel): + ResourceArn: Optional[str] = None + MonitorArn: Optional[str] = None + EvaluationTime: Optional[datetime] = None + EvaluationState: Optional[str] = None + WindowStartDatetime: Optional[datetime] = None + WindowEndDatetime: Optional[datetime] = None + PredictorEvent: Optional[PredictorEventTypeDef] = None + MonitorDataSource: Optional[MonitorDataSourceTypeDef] = None + MetricResults: Optional[List[MetricResultTypeDef]] = None + NumItemsEvaluated: Optional[int] = None + Message: Optional[str] = None + +class PredictorExecutionTypeDef(BaseModel): + AlgorithmArn: Optional[str] = None + TestWindows: Optional[List[TestWindowSummaryTypeDef]] = None + +class SchemaTypeDef(BaseModel): + Attributes: Optional[Sequence[SchemaAttributeTypeDef]] = None + +class TimeSeriesTransformationTypeDef(BaseModel): + Action: Optional[ActionTypeDef] = None + TimeSeriesConditions: Optional[Sequence[TimeSeriesConditionTypeDef]] = None + +class CreateAutoPredictorRequestRequestTypeDef(BaseModel): + PredictorName: str + ForecastHorizon: Optional[int] = None + ForecastTypes: Optional[Sequence[str]] = None + ForecastDimensions: Optional[Sequence[str]] = None + ForecastFrequency: Optional[str] = None + DataConfig: Optional[DataConfigTypeDef] = None + EncryptionConfig: Optional[EncryptionConfigTypeDef] = None + ReferencePredictorArn: Optional[str] = None + OptimizationMetric: Optional[OptimizationMetricType] = None + ExplainPredictor: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + MonitorConfig: Optional[MonitorConfigTypeDef] = None + TimeAlignmentBoundary: Optional[TimeAlignmentBoundaryTypeDef] = None + +class DescribeAutoPredictorResponseTypeDef(BaseModel): + PredictorArn: str + PredictorName: str + ForecastHorizon: int + ForecastTypes: List[str] + ForecastFrequency: str + ForecastDimensions: List[str] + DatasetImportJobArns: List[str] + DataConfig: DataConfigTypeDef + EncryptionConfig: EncryptionConfigTypeDef + ReferencePredictorSummary: ReferencePredictorSummaryTypeDef + EstimatedTimeRemainingInMinutes: int + Status: str + Message: str + CreationTime: datetime + LastModificationTime: datetime + OptimizationMetric: OptimizationMetricType + ExplainabilityInfo: ExplainabilityInfoTypeDef + MonitorInfo: MonitorInfoTypeDef + TimeAlignmentBoundary: TimeAlignmentBoundaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BaselineTypeDef(BaseModel): + PredictorBaseline: Optional[PredictorBaselineTypeDef] = None + +class ListExplainabilitiesResponseTypeDef(BaseModel): + Explainabilities: List[ExplainabilitySummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExplainabilityExportRequestRequestTypeDef(BaseModel): + ExplainabilityExportName: str + ExplainabilityArn: str + Destination: DataDestinationTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + Format: Optional[str] = None + +class CreateForecastExportJobRequestRequestTypeDef(BaseModel): + ForecastExportJobName: str + ForecastArn: str + Destination: DataDestinationTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + Format: Optional[str] = None + +class CreatePredictorBacktestExportJobRequestRequestTypeDef(BaseModel): + PredictorBacktestExportJobName: str + PredictorArn: str + Destination: DataDestinationTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + Format: Optional[str] = None + +class CreateWhatIfForecastExportRequestRequestTypeDef(BaseModel): + WhatIfForecastExportName: str + WhatIfForecastArns: Sequence[str] + Destination: DataDestinationTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + Format: Optional[str] = None + +class DescribeExplainabilityExportResponseTypeDef(BaseModel): + ExplainabilityExportArn: str + ExplainabilityExportName: str + ExplainabilityArn: str + Destination: DataDestinationTypeDef + Message: str + Status: str + CreationTime: datetime + LastModificationTime: datetime + Format: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeForecastExportJobResponseTypeDef(BaseModel): + ForecastExportJobArn: str + ForecastExportJobName: str + ForecastArn: str + Destination: DataDestinationTypeDef + Message: str + Status: str + CreationTime: datetime + LastModificationTime: datetime + Format: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePredictorBacktestExportJobResponseTypeDef(BaseModel): + PredictorBacktestExportJobArn: str + PredictorBacktestExportJobName: str + PredictorArn: str + Destination: DataDestinationTypeDef + Message: str + Status: str + CreationTime: datetime + LastModificationTime: datetime + Format: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWhatIfForecastExportResponseTypeDef(BaseModel): + WhatIfForecastExportArn: str + WhatIfForecastExportName: str + WhatIfForecastArns: List[str] + Destination: DataDestinationTypeDef + Message: str + Status: str + CreationTime: datetime + EstimatedTimeRemainingInMinutes: int + LastModificationTime: datetime + Format: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExplainabilityExportSummaryTypeDef(BaseModel): + ExplainabilityExportArn: Optional[str] = None + ExplainabilityExportName: Optional[str] = None + Destination: Optional[DataDestinationTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class ForecastExportJobSummaryTypeDef(BaseModel): + ForecastExportJobArn: Optional[str] = None + ForecastExportJobName: Optional[str] = None + Destination: Optional[DataDestinationTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class PredictorBacktestExportJobSummaryTypeDef(BaseModel): + PredictorBacktestExportJobArn: Optional[str] = None + PredictorBacktestExportJobName: Optional[str] = None + Destination: Optional[DataDestinationTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class WhatIfForecastExportSummaryTypeDef(BaseModel): + WhatIfForecastExportArn: Optional[str] = None + WhatIfForecastArns: Optional[List[str]] = None + WhatIfForecastExportName: Optional[str] = None + Destination: Optional[DataDestinationTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + +class CreateDatasetImportJobRequestRequestTypeDef(BaseModel): + DatasetImportJobName: str + DatasetArn: str + DataSource: DataSourceTypeDef + TimestampFormat: Optional[str] = None + TimeZone: Optional[str] = None + UseGeolocationForTimeZone: Optional[bool] = None + GeolocationFormat: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Format: Optional[str] = None + ImportMode: Optional[ImportModeType] = None + +class DatasetImportJobSummaryTypeDef(BaseModel): + DatasetImportJobArn: Optional[str] = None + DatasetImportJobName: Optional[str] = None + DataSource: Optional[DataSourceTypeDef] = None + Status: Optional[str] = None + Message: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + ImportMode: Optional[ImportModeType] = None + +class DescribeDatasetImportJobResponseTypeDef(BaseModel): + DatasetImportJobName: str + DatasetImportJobArn: str + DatasetArn: str + TimestampFormat: str + TimeZone: str + UseGeolocationForTimeZone: bool + GeolocationFormat: str + DataSource: DataSourceTypeDef + EstimatedTimeRemainingInMinutes: int + FieldStatistics: Dict[str, StatisticsTypeDef] + DataSize: float + Status: str + Message: str + CreationTime: datetime + LastModificationTime: datetime + Format: str + ImportMode: ImportModeType + ResponseMetadata: ResponseMetadataTypeDef + +class ListPredictorsResponseTypeDef(BaseModel): + Predictors: List[PredictorSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FeaturizationConfigTypeDef(BaseModel): + ForecastFrequency: str + ForecastDimensions: Optional[Sequence[str]] = None + Featurizations: Optional[Sequence[FeaturizationTypeDef]] = None + +class HyperParameterTuningJobConfigTypeDef(BaseModel): + ParameterRanges: Optional[ParameterRangesTypeDef] = None + +class WindowSummaryTypeDef(BaseModel): + TestWindowStart: Optional[datetime] = None + TestWindowEnd: Optional[datetime] = None + ItemCount: Optional[int] = None + EvaluationType: Optional[EvaluationTypeType] = None + Metrics: Optional[MetricsTypeDef] = None + +class ListMonitorEvaluationsResponseTypeDef(BaseModel): + NextToken: str + PredictorMonitorEvaluations: List[PredictorMonitorEvaluationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PredictorExecutionDetailsTypeDef(BaseModel): + PredictorExecutions: Optional[List[PredictorExecutionTypeDef]] = None + +class CreateDatasetRequestRequestTypeDef(BaseModel): + DatasetName: str + Domain: DomainType + DatasetType: DatasetTypeType + Schema: SchemaTypeDef + DataFrequency: Optional[str] = None + EncryptionConfig: Optional[EncryptionConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateExplainabilityRequestRequestTypeDef(BaseModel): + ExplainabilityName: str + ResourceArn: str + ExplainabilityConfig: ExplainabilityConfigTypeDef + DataSource: Optional[DataSourceTypeDef] = None + Schema: Optional[SchemaTypeDef] = None + EnableVisualization: Optional[bool] = None + StartDateTime: Optional[str] = None + EndDateTime: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeDatasetResponseTypeDef(BaseModel): + DatasetArn: str + DatasetName: str + Domain: DomainType + DatasetType: DatasetTypeType + DataFrequency: str + Schema: SchemaTypeDef + EncryptionConfig: EncryptionConfigTypeDef + Status: str + CreationTime: datetime + LastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExplainabilityResponseTypeDef(BaseModel): + ExplainabilityArn: str + ExplainabilityName: str + ResourceArn: str + ExplainabilityConfig: ExplainabilityConfigTypeDef + EnableVisualization: bool + DataSource: DataSourceTypeDef + Schema: SchemaTypeDef + StartDateTime: str + EndDateTime: str + EstimatedTimeRemainingInMinutes: int + Message: str + Status: str + CreationTime: datetime + LastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TimeSeriesIdentifiersTypeDef(BaseModel): + DataSource: Optional[DataSourceTypeDef] = None + Schema: Optional[SchemaTypeDef] = None + Format: Optional[str] = None + +class TimeSeriesReplacementsDataSourceTypeDef(BaseModel): + S3Config: S3ConfigTypeDef + Schema: SchemaTypeDef + Format: Optional[str] = None + TimestampFormat: Optional[str] = None + +class DescribeMonitorResponseTypeDef(BaseModel): + MonitorName: str + MonitorArn: str + ResourceArn: str + Status: str + LastEvaluationTime: datetime + LastEvaluationState: str + Baseline: BaselineTypeDef + Message: str + CreationTime: datetime + LastModificationTime: datetime + EstimatedEvaluationTimeRemainingInMinutes: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListExplainabilityExportsResponseTypeDef(BaseModel): + ExplainabilityExports: List[ExplainabilityExportSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListForecastExportJobsResponseTypeDef(BaseModel): + ForecastExportJobs: List[ForecastExportJobSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPredictorBacktestExportJobsResponseTypeDef(BaseModel): + PredictorBacktestExportJobs: List[PredictorBacktestExportJobSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWhatIfForecastExportsResponseTypeDef(BaseModel): + WhatIfForecastExports: List[WhatIfForecastExportSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetImportJobsResponseTypeDef(BaseModel): + DatasetImportJobs: List[DatasetImportJobSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePredictorRequestRequestTypeDef(BaseModel): + PredictorName: str + ForecastHorizon: int + InputDataConfig: InputDataConfigTypeDef + FeaturizationConfig: FeaturizationConfigTypeDef + AlgorithmArn: Optional[str] = None + ForecastTypes: Optional[Sequence[str]] = None + PerformAutoML: Optional[bool] = None + AutoMLOverrideStrategy: Optional[AutoMLOverrideStrategyType] = None + PerformHPO: Optional[bool] = None + TrainingParameters: Optional[Mapping[str, str]] = None + EvaluationParameters: Optional[EvaluationParametersTypeDef] = None + HPOConfig: Optional[HyperParameterTuningJobConfigTypeDef] = None + EncryptionConfig: Optional[EncryptionConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + OptimizationMetric: Optional[OptimizationMetricType] = None + +class EvaluationResultTypeDef(BaseModel): + AlgorithmArn: Optional[str] = None + TestWindows: Optional[List[WindowSummaryTypeDef]] = None + +class DescribePredictorResponseTypeDef(BaseModel): + PredictorArn: str + PredictorName: str + AlgorithmArn: str + AutoMLAlgorithmArns: List[str] + ForecastHorizon: int + ForecastTypes: List[str] + PerformAutoML: bool + AutoMLOverrideStrategy: AutoMLOverrideStrategyType + PerformHPO: bool + TrainingParameters: Dict[str, str] + EvaluationParameters: EvaluationParametersTypeDef + HPOConfig: HyperParameterTuningJobConfigTypeDef + InputDataConfig: InputDataConfigTypeDef + FeaturizationConfig: FeaturizationConfigTypeDef + EncryptionConfig: EncryptionConfigTypeDef + PredictorExecutionDetails: PredictorExecutionDetailsTypeDef + EstimatedTimeRemainingInMinutes: int + IsAutoPredictor: bool + DatasetImportJobArns: List[str] + Status: str + Message: str + CreationTime: datetime + LastModificationTime: datetime + OptimizationMetric: OptimizationMetricType + ResponseMetadata: ResponseMetadataTypeDef + +class TimeSeriesSelectorTypeDef(BaseModel): + TimeSeriesIdentifiers: Optional[TimeSeriesIdentifiersTypeDef] = None + +class CreateWhatIfForecastRequestRequestTypeDef(BaseModel): + WhatIfForecastName: str + WhatIfAnalysisArn: str + TimeSeriesTransformations: Optional[Sequence[TimeSeriesTransformationTypeDef]] = None + TimeSeriesReplacementsDataSource: Optional[TimeSeriesReplacementsDataSourceTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeWhatIfForecastResponseTypeDef(BaseModel): + WhatIfForecastName: str + WhatIfForecastArn: str + WhatIfAnalysisArn: str + EstimatedTimeRemainingInMinutes: int + Status: str + Message: str + CreationTime: datetime + LastModificationTime: datetime + TimeSeriesTransformations: List[TimeSeriesTransformationTypeDef] + TimeSeriesReplacementsDataSource: TimeSeriesReplacementsDataSourceTypeDef + ForecastTypes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccuracyMetricsResponseTypeDef(BaseModel): + PredictorEvaluationResults: List[EvaluationResultTypeDef] + IsAutoPredictor: bool + AutoMLOverrideStrategy: AutoMLOverrideStrategyType + OptimizationMetric: OptimizationMetricType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateForecastRequestRequestTypeDef(BaseModel): + ForecastName: str + PredictorArn: str + ForecastTypes: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TimeSeriesSelector: Optional[TimeSeriesSelectorTypeDef] = None + +class CreateWhatIfAnalysisRequestRequestTypeDef(BaseModel): + WhatIfAnalysisName: str + ForecastArn: str + TimeSeriesSelector: Optional[TimeSeriesSelectorTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeForecastResponseTypeDef(BaseModel): + ForecastArn: str + ForecastName: str + ForecastTypes: List[str] + PredictorArn: str + DatasetGroupArn: str + EstimatedTimeRemainingInMinutes: int + Status: str + Message: str + CreationTime: datetime + LastModificationTime: datetime + TimeSeriesSelector: TimeSeriesSelectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWhatIfAnalysisResponseTypeDef(BaseModel): + WhatIfAnalysisName: str + WhatIfAnalysisArn: str + ForecastArn: str + EstimatedTimeRemainingInMinutes: int + Status: str + Message: str + CreationTime: datetime + LastModificationTime: datetime + TimeSeriesSelector: TimeSeriesSelectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/forecast_constants.py b/aws_resource_validator/pydantic_models/forecast_constants.py new file mode 100644 index 00000000..61912236 --- /dev/null +++ b/aws_resource_validator/pydantic_models/forecast_constants.py @@ -0,0 +1,454 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttributeTypeType = Literal["float", "geolocation", "integer", "string", "timestamp"] +AutoMLOverrideStrategyType = Literal["AccuracyOptimized", "LatencyOptimized"] +ConditionType = Literal["EQUALS", "GREATER_THAN", "LESS_THAN", "NOT_EQUALS"] +DatasetTypeType = Literal["ITEM_METADATA", "RELATED_TIME_SERIES", "TARGET_TIME_SERIES"] +DayOfWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DomainType = Literal["CUSTOM", "EC2_CAPACITY", "INVENTORY_PLANNING", "METRICS", "RETAIL", "WEB_TRAFFIC", "WORK_FORCE"] +EvaluationTypeType = Literal["COMPUTED", "SUMMARY"] +FeaturizationMethodNameType = Literal["filling"] +FilterConditionStringType = Literal["IS", "IS_NOT"] +ImportModeType = Literal["FULL", "INCREMENTAL"] +ListDatasetGroupsPaginatorName = Literal["list_dataset_groups"] +ListDatasetImportJobsPaginatorName = Literal["list_dataset_import_jobs"] +ListDatasetsPaginatorName = Literal["list_datasets"] +ListExplainabilitiesPaginatorName = Literal["list_explainabilities"] +ListExplainabilityExportsPaginatorName = Literal["list_explainability_exports"] +ListForecastExportJobsPaginatorName = Literal["list_forecast_export_jobs"] +ListForecastsPaginatorName = Literal["list_forecasts"] +ListMonitorEvaluationsPaginatorName = Literal["list_monitor_evaluations"] +ListMonitorsPaginatorName = Literal["list_monitors"] +ListPredictorBacktestExportJobsPaginatorName = Literal["list_predictor_backtest_export_jobs"] +ListPredictorsPaginatorName = Literal["list_predictors"] +ListWhatIfAnalysesPaginatorName = Literal["list_what_if_analyses"] +ListWhatIfForecastExportsPaginatorName = Literal["list_what_if_forecast_exports"] +ListWhatIfForecastsPaginatorName = Literal["list_what_if_forecasts"] +MonthType = Literal["APRIL", + "AUGUST", + "DECEMBER", + "FEBRUARY", + "JANUARY", + "JULY", + "JUNE", + "MARCH", + "MAY", + "NOVEMBER", + "OCTOBER", + "SEPTEMBER",] +OperationType = Literal["ADD", "DIVIDE", "MULTIPLY", "SUBTRACT"] +OptimizationMetricType = Literal["AverageWeightedQuantileLoss", "MAPE", "MASE", "RMSE", "WAPE"] +ScalingTypeType = Literal["Auto", "Linear", "Logarithmic", "ReverseLogarithmic"] +StateType = Literal["Active", "Deleted"] +TimePointGranularityType = Literal["ALL", "SPECIFIC"] +TimeSeriesGranularityType = Literal["ALL", "SPECIFIC"] +ForecastServiceServiceName = Literal["forecast"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_dataset_groups", + "list_dataset_import_jobs", + "list_datasets", + "list_explainabilities", + "list_explainability_exports", + "list_forecast_export_jobs", + "list_forecasts", + "list_monitor_evaluations", + "list_monitors", + "list_predictor_backtest_export_jobs", + "list_predictors", + "list_what_if_analyses", + "list_what_if_forecast_exports", + "list_what_if_forecasts",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/forecastquery_classes.py b/aws_resource_validator/pydantic_models/forecastquery_classes.py new file mode 100644 index 00000000..2f0abfce --- /dev/null +++ b/aws_resource_validator/pydantic_models/forecastquery_classes.py @@ -0,0 +1,49 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.forecastquery_constants import * + +class DataPointTypeDef(BaseModel): + Timestamp: Optional[str] = None + Value: Optional[float] = None + +class QueryForecastRequestRequestTypeDef(BaseModel): + ForecastArn: str + Filters: Mapping[str, str] + StartDate: Optional[str] = None + EndDate: Optional[str] = None + NextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class QueryWhatIfForecastRequestRequestTypeDef(BaseModel): + WhatIfForecastArn: str + Filters: Mapping[str, str] + StartDate: Optional[str] = None + EndDate: Optional[str] = None + NextToken: Optional[str] = None + +class ForecastTypeDef(BaseModel): + Predictions: Optional[Dict[str, List[DataPointTypeDef]]] = None + +class QueryForecastResponseTypeDef(BaseModel): + Forecast: ForecastTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class QueryWhatIfForecastResponseTypeDef(BaseModel): + Forecast: ForecastTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/forecastquery_constants.py b/aws_resource_validator/pydantic_models/forecastquery_constants.py new file mode 100644 index 00000000..6291f18e --- /dev/null +++ b/aws_resource_validator/pydantic_models/forecastquery_constants.py @@ -0,0 +1,398 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ForecastQueryServiceServiceName = Literal["forecastquery"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/frauddetector_classes.py b/aws_resource_validator/pydantic_models/frauddetector_classes.py new file mode 100644 index 00000000..2a4810bc --- /dev/null +++ b/aws_resource_validator/pydantic_models/frauddetector_classes.py @@ -0,0 +1,1021 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.frauddetector_constants import * + +class ATIMetricDataPointTypeDef(BaseModel): + cr: Optional[float] = None + adr: Optional[float] = None + threshold: Optional[float] = None + atodr: Optional[float] = None + +class ATIModelPerformanceTypeDef(BaseModel): + asi: Optional[float] = None + +class AggregatedLogOddsMetricTypeDef(BaseModel): + variableNames: List[str] + aggregatedVariablesImportance: float + +class AggregatedVariablesImpactExplanationTypeDef(BaseModel): + eventVariableNames: Optional[List[str]] = None + relativeImpact: Optional[str] = None + logOddsImpact: Optional[float] = None + +class AllowDenyListTypeDef(BaseModel): + name: str + description: Optional[str] = None + variableType: Optional[str] = None + createdTime: Optional[str] = None + updatedTime: Optional[str] = None + arn: Optional[str] = None + +class BatchCreateVariableErrorTypeDef(BaseModel): + name: Optional[str] = None + code: Optional[int] = None + message: Optional[str] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class VariableEntryTypeDef(BaseModel): + name: Optional[str] = None + dataType: Optional[str] = None + dataSource: Optional[str] = None + defaultValue: Optional[str] = None + description: Optional[str] = None + variableType: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchGetVariableErrorTypeDef(BaseModel): + name: Optional[str] = None + code: Optional[int] = None + message: Optional[str] = None + +class BatchGetVariableRequestRequestTypeDef(BaseModel): + names: Sequence[str] + +class VariableTypeDef(BaseModel): + name: Optional[str] = None + dataType: Optional[DataTypeType] = None + dataSource: Optional[DataSourceType] = None + defaultValue: Optional[str] = None + description: Optional[str] = None + variableType: Optional[str] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class BatchImportTypeDef(BaseModel): + jobId: Optional[str] = None + status: Optional[AsyncJobStatusType] = None + failureReason: Optional[str] = None + startTime: Optional[str] = None + completionTime: Optional[str] = None + inputPath: Optional[str] = None + outputPath: Optional[str] = None + eventTypeName: Optional[str] = None + iamRoleArn: Optional[str] = None + arn: Optional[str] = None + processedRecordsCount: Optional[int] = None + failedRecordsCount: Optional[int] = None + totalRecordsCount: Optional[int] = None + +class BatchPredictionTypeDef(BaseModel): + jobId: Optional[str] = None + status: Optional[AsyncJobStatusType] = None + failureReason: Optional[str] = None + startTime: Optional[str] = None + completionTime: Optional[str] = None + lastHeartbeatTime: Optional[str] = None + inputPath: Optional[str] = None + outputPath: Optional[str] = None + eventTypeName: Optional[str] = None + detectorName: Optional[str] = None + detectorVersion: Optional[str] = None + iamRoleArn: Optional[str] = None + arn: Optional[str] = None + processedRecordsCount: Optional[int] = None + totalRecordsCount: Optional[int] = None + +class CancelBatchImportJobRequestRequestTypeDef(BaseModel): + jobId: str + +class CancelBatchPredictionJobRequestRequestTypeDef(BaseModel): + jobId: str + +class ModelVersionTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + arn: Optional[str] = None + +class RuleTypeDef(BaseModel): + detectorId: str + ruleId: str + ruleVersion: str + +class ExternalEventsDetailTypeDef(BaseModel): + dataLocation: str + dataAccessRoleArn: str + +class FieldValidationMessageTypeDef(BaseModel): + fieldName: Optional[str] = None + identifier: Optional[str] = None + title: Optional[str] = None + content: Optional[str] = None + type: Optional[str] = None + +class FileValidationMessageTypeDef(BaseModel): + title: Optional[str] = None + content: Optional[str] = None + type: Optional[str] = None + +class DeleteBatchImportJobRequestRequestTypeDef(BaseModel): + jobId: str + +class DeleteBatchPredictionJobRequestRequestTypeDef(BaseModel): + jobId: str + +class DeleteDetectorRequestRequestTypeDef(BaseModel): + detectorId: str + +class DeleteDetectorVersionRequestRequestTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + +class DeleteEntityTypeRequestRequestTypeDef(BaseModel): + name: str + +class DeleteEventRequestRequestTypeDef(BaseModel): + eventId: str + eventTypeName: str + deleteAuditHistory: Optional[bool] = None + +class DeleteEventTypeRequestRequestTypeDef(BaseModel): + name: str + +class DeleteEventsByEventTypeRequestRequestTypeDef(BaseModel): + eventTypeName: str + +class DeleteExternalModelRequestRequestTypeDef(BaseModel): + modelEndpoint: str + +class DeleteLabelRequestRequestTypeDef(BaseModel): + name: str + +class DeleteListRequestRequestTypeDef(BaseModel): + name: str + +class DeleteModelRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + +class DeleteModelVersionRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + +class DeleteOutcomeRequestRequestTypeDef(BaseModel): + name: str + +class DeleteVariableRequestRequestTypeDef(BaseModel): + name: str + +class DescribeDetectorRequestRequestTypeDef(BaseModel): + detectorId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DetectorVersionSummaryTypeDef(BaseModel): + detectorVersionId: Optional[str] = None + status: Optional[DetectorVersionStatusType] = None + description: Optional[str] = None + lastUpdatedTime: Optional[str] = None + +class DescribeModelVersionsRequestRequestTypeDef(BaseModel): + modelId: Optional[str] = None + modelVersionNumber: Optional[str] = None + modelType: Optional[ModelTypeEnumType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DetectorTypeDef(BaseModel): + detectorId: Optional[str] = None + description: Optional[str] = None + eventTypeName: Optional[str] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class EntityTypeDef(BaseModel): + entityType: str + entityId: str + +class EntityTypeTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class EvaluatedExternalModelTypeDef(BaseModel): + modelEndpoint: Optional[str] = None + useEventVariables: Optional[bool] = None + inputVariables: Optional[Dict[str, str]] = None + outputVariables: Optional[Dict[str, str]] = None + +class EvaluatedRuleTypeDef(BaseModel): + ruleId: Optional[str] = None + ruleVersion: Optional[str] = None + expression: Optional[str] = None + expressionWithValues: Optional[str] = None + outcomes: Optional[List[str]] = None + evaluated: Optional[bool] = None + matched: Optional[bool] = None + +class EventOrchestrationTypeDef(BaseModel): + eventBridgeEnabled: bool + +class EventPredictionSummaryTypeDef(BaseModel): + eventId: Optional[str] = None + eventTypeName: Optional[str] = None + eventTimestamp: Optional[str] = None + predictionTimestamp: Optional[str] = None + detectorId: Optional[str] = None + detectorVersionId: Optional[str] = None + +class IngestedEventStatisticsTypeDef(BaseModel): + numberOfEvents: Optional[int] = None + eventDataSizeInBytes: Optional[int] = None + leastRecentEvent: Optional[str] = None + mostRecentEvent: Optional[str] = None + lastUpdatedTime: Optional[str] = None + +class EventVariableSummaryTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + source: Optional[str] = None + +class ExternalModelSummaryTypeDef(BaseModel): + modelEndpoint: Optional[str] = None + modelSource: Optional[Literal["SAGEMAKER"]] = None + +class ModelInputConfigurationTypeDef(BaseModel): + useEventVariables: bool + eventTypeName: Optional[str] = None + format: Optional[ModelInputDataFormatType] = None + jsonInputTemplate: Optional[str] = None + csvInputTemplate: Optional[str] = None + +class ModelOutputConfigurationTypeDef(BaseModel): + format: ModelOutputDataFormatType + jsonKeyToVariableMap: Optional[Dict[str, str]] = None + csvIndexToVariableMap: Optional[Dict[str, str]] = None + +class FilterConditionTypeDef(BaseModel): + value: Optional[str] = None + +class GetBatchImportJobsRequestRequestTypeDef(BaseModel): + jobId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetBatchPredictionJobsRequestRequestTypeDef(BaseModel): + jobId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetDeleteEventsByEventTypeStatusRequestRequestTypeDef(BaseModel): + eventTypeName: str + +class GetDetectorVersionRequestRequestTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + +class GetDetectorsRequestRequestTypeDef(BaseModel): + detectorId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetEntityTypesRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetEventPredictionMetadataRequestRequestTypeDef(BaseModel): + eventId: str + eventTypeName: str + detectorId: str + detectorVersionId: str + predictionTimestamp: str + +class RuleResultTypeDef(BaseModel): + ruleId: Optional[str] = None + outcomes: Optional[List[str]] = None + +class GetEventRequestRequestTypeDef(BaseModel): + eventId: str + eventTypeName: str + +class GetEventTypesRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetExternalModelsRequestRequestTypeDef(BaseModel): + modelEndpoint: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class KMSKeyTypeDef(BaseModel): + kmsEncryptionKeyArn: Optional[str] = None + +class GetLabelsRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class LabelTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class GetListElementsRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetListsMetadataRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetModelVersionRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + +class GetModelsRequestRequestTypeDef(BaseModel): + modelId: Optional[str] = None + modelType: Optional[ModelTypeEnumType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ModelTypeDef(BaseModel): + modelId: Optional[str] = None + modelType: Optional[ModelTypeEnumType] = None + description: Optional[str] = None + eventTypeName: Optional[str] = None + createdTime: Optional[str] = None + lastUpdatedTime: Optional[str] = None + arn: Optional[str] = None + +class GetOutcomesRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class OutcomeTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class GetRulesRequestRequestTypeDef(BaseModel): + detectorId: str + ruleId: Optional[str] = None + ruleVersion: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RuleDetailTypeDef(BaseModel): + ruleId: Optional[str] = None + description: Optional[str] = None + detectorId: Optional[str] = None + ruleVersion: Optional[str] = None + expression: Optional[str] = None + language: Optional[Literal["DETECTORPL"]] = None + outcomes: Optional[List[str]] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class GetVariablesRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class IngestedEventsTimeWindowTypeDef(BaseModel): + startTime: str + endTime: str + +class LabelSchemaTypeDef(BaseModel): + labelMapper: Optional[Mapping[str, Sequence[str]]] = None + unlabeledEventsTreatment: Optional[UnlabeledEventsTreatmentType] = None + +class PredictionTimeRangeTypeDef(BaseModel): + startTime: str + endTime: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class LogOddsMetricTypeDef(BaseModel): + variableName: str + variableType: str + variableImportance: float + +class MetricDataPointTypeDef(BaseModel): + fpr: Optional[float] = None + precision: Optional[float] = None + tpr: Optional[float] = None + threshold: Optional[float] = None + +class OFIMetricDataPointTypeDef(BaseModel): + fpr: Optional[float] = None + precision: Optional[float] = None + tpr: Optional[float] = None + threshold: Optional[float] = None + +class UncertaintyRangeTypeDef(BaseModel): + lowerBoundValue: float + upperBoundValue: float + +class VariableImpactExplanationTypeDef(BaseModel): + eventVariableName: Optional[str] = None + relativeImpact: Optional[str] = None + logOddsImpact: Optional[float] = None + +class PutKMSEncryptionKeyRequestRequestTypeDef(BaseModel): + kmsEncryptionKeyArn: str + +class TFIMetricDataPointTypeDef(BaseModel): + fpr: Optional[float] = None + precision: Optional[float] = None + tpr: Optional[float] = None + threshold: Optional[float] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tagKeys: Sequence[str] + +class UpdateDetectorVersionMetadataRequestRequestTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + description: str + +class UpdateDetectorVersionStatusRequestRequestTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + status: DetectorVersionStatusType + +class UpdateEventLabelRequestRequestTypeDef(BaseModel): + eventId: str + eventTypeName: str + assignedLabel: str + labelTimestamp: str + +class UpdateListRequestRequestTypeDef(BaseModel): + name: str + elements: Optional[Sequence[str]] = None + description: Optional[str] = None + updateMode: Optional[ListUpdateModeType] = None + variableType: Optional[str] = None + +class UpdateModelRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + description: Optional[str] = None + +class UpdateModelVersionStatusRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + status: ModelVersionStatusType + +class UpdateVariableRequestRequestTypeDef(BaseModel): + name: str + defaultValue: Optional[str] = None + description: Optional[str] = None + variableType: Optional[str] = None + +class ATITrainingMetricsValueTypeDef(BaseModel): + metricDataPoints: Optional[List[ATIMetricDataPointTypeDef]] = None + modelPerformance: Optional[ATIModelPerformanceTypeDef] = None + +class AggregatedVariablesImportanceMetricsTypeDef(BaseModel): + logOddsMetrics: Optional[List[AggregatedLogOddsMetricTypeDef]] = None + +class CreateBatchImportJobRequestRequestTypeDef(BaseModel): + jobId: str + inputPath: str + outputPath: str + eventTypeName: str + iamRoleArn: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateBatchPredictionJobRequestRequestTypeDef(BaseModel): + jobId: str + inputPath: str + outputPath: str + eventTypeName: str + detectorName: str + iamRoleArn: str + detectorVersion: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateListRequestRequestTypeDef(BaseModel): + name: str + elements: Optional[Sequence[str]] = None + variableType: Optional[str] = None + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + eventTypeName: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRuleRequestRequestTypeDef(BaseModel): + ruleId: str + detectorId: str + expression: str + language: Literal["DETECTORPL"] + outcomes: Sequence[str] + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVariableRequestRequestTypeDef(BaseModel): + name: str + dataType: DataTypeType + dataSource: DataSourceType + defaultValue: str + description: Optional[str] = None + variableType: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class PutDetectorRequestRequestTypeDef(BaseModel): + detectorId: str + eventTypeName: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class PutEntityTypeRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class PutLabelRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class PutOutcomeRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tags: Sequence[TagTypeDef] + +class BatchCreateVariableRequestRequestTypeDef(BaseModel): + variableEntries: Sequence[VariableEntryTypeDef] + tags: Optional[Sequence[TagTypeDef]] = None + +class BatchCreateVariableResultTypeDef(BaseModel): + errors: List[BatchCreateVariableErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDetectorVersionResultTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + status: DetectorVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelVersionResultTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventsByEventTypeResultTypeDef(BaseModel): + eventTypeName: str + eventsDeletionStatus: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeleteEventsByEventTypeStatusResultTypeDef(BaseModel): + eventTypeName: str + eventsDeletionStatus: AsyncJobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetListElementsResultTypeDef(BaseModel): + elements: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetListsMetadataResultTypeDef(BaseModel): + lists: List[AllowDenyListTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResultTypeDef(BaseModel): + tags: List[TagTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelVersionResultTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetVariableResultTypeDef(BaseModel): + variables: List[VariableTypeDef] + errors: List[BatchGetVariableErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetVariablesResultTypeDef(BaseModel): + variables: List[VariableTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBatchImportJobsResultTypeDef(BaseModel): + batchImports: List[BatchImportTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBatchPredictionJobsResultTypeDef(BaseModel): + batchPredictions: List[BatchPredictionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModelEndpointDataBlobTypeDef(BaseModel): + byteBuffer: Optional[BlobTypeDef] = None + contentType: Optional[str] = None + +class ModelScoresTypeDef(BaseModel): + modelVersion: Optional[ModelVersionTypeDef] = None + scores: Optional[Dict[str, float]] = None + +class CreateDetectorVersionRequestRequestTypeDef(BaseModel): + detectorId: str + rules: Sequence[RuleTypeDef] + description: Optional[str] = None + externalModelEndpoints: Optional[Sequence[str]] = None + modelVersions: Optional[Sequence[ModelVersionTypeDef]] = None + ruleExecutionMode: Optional[RuleExecutionModeType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRuleResultTypeDef(BaseModel): + rule: RuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRuleRequestRequestTypeDef(BaseModel): + rule: RuleTypeDef + +class GetDetectorVersionResultTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + description: str + externalModelEndpoints: List[str] + modelVersions: List[ModelVersionTypeDef] + rules: List[RuleTypeDef] + status: DetectorVersionStatusType + lastUpdatedTime: str + createdTime: str + ruleExecutionMode: RuleExecutionModeType + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDetectorVersionRequestRequestTypeDef(BaseModel): + detectorId: str + detectorVersionId: str + externalModelEndpoints: Sequence[str] + rules: Sequence[RuleTypeDef] + description: Optional[str] = None + modelVersions: Optional[Sequence[ModelVersionTypeDef]] = None + ruleExecutionMode: Optional[RuleExecutionModeType] = None + +class UpdateRuleMetadataRequestRequestTypeDef(BaseModel): + rule: RuleTypeDef + description: str + +class UpdateRuleVersionRequestRequestTypeDef(BaseModel): + rule: RuleTypeDef + expression: str + language: Literal["DETECTORPL"] + outcomes: Sequence[str] + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateRuleVersionResultTypeDef(BaseModel): + rule: RuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DataValidationMetricsTypeDef(BaseModel): + fileLevelMessages: Optional[List[FileValidationMessageTypeDef]] = None + fieldLevelMessages: Optional[List[FieldValidationMessageTypeDef]] = None + +class DescribeDetectorResultTypeDef(BaseModel): + detectorId: str + detectorVersionSummaries: List[DetectorVersionSummaryTypeDef] + nextToken: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDetectorsResultTypeDef(BaseModel): + detectors: List[DetectorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventTypeDef(BaseModel): + eventId: Optional[str] = None + eventTypeName: Optional[str] = None + eventTimestamp: Optional[str] = None + eventVariables: Optional[Dict[str, str]] = None + currentLabel: Optional[str] = None + labelTimestamp: Optional[str] = None + entities: Optional[List[EntityTypeDef]] = None + +class SendEventRequestRequestTypeDef(BaseModel): + eventId: str + eventTypeName: str + eventTimestamp: str + eventVariables: Mapping[str, str] + entities: Sequence[EntityTypeDef] + assignedLabel: Optional[str] = None + labelTimestamp: Optional[str] = None + +class GetEntityTypesResultTypeDef(BaseModel): + entityTypes: List[EntityTypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutEventTypeRequestRequestTypeDef(BaseModel): + name: str + eventVariables: Sequence[str] + entityTypes: Sequence[str] + description: Optional[str] = None + labels: Optional[Sequence[str]] = None + eventIngestion: Optional[EventIngestionType] = None + tags: Optional[Sequence[TagTypeDef]] = None + eventOrchestration: Optional[EventOrchestrationTypeDef] = None + +class ListEventPredictionsResultTypeDef(BaseModel): + eventPredictionSummaries: List[EventPredictionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventTypeTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + eventVariables: Optional[List[str]] = None + labels: Optional[List[str]] = None + entityTypes: Optional[List[str]] = None + eventIngestion: Optional[EventIngestionType] = None + ingestedEventStatistics: Optional[IngestedEventStatisticsTypeDef] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + eventOrchestration: Optional[EventOrchestrationTypeDef] = None + +class ExternalModelOutputsTypeDef(BaseModel): + externalModel: Optional[ExternalModelSummaryTypeDef] = None + outputs: Optional[Dict[str, str]] = None + +class ExternalModelTypeDef(BaseModel): + modelEndpoint: Optional[str] = None + modelSource: Optional[Literal["SAGEMAKER"]] = None + invokeModelEndpointRoleArn: Optional[str] = None + inputConfiguration: Optional[ModelInputConfigurationTypeDef] = None + outputConfiguration: Optional[ModelOutputConfigurationTypeDef] = None + modelEndpointStatus: Optional[ModelEndpointStatusType] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + +class PutExternalModelRequestRequestTypeDef(BaseModel): + modelEndpoint: str + modelSource: Literal["SAGEMAKER"] + invokeModelEndpointRoleArn: str + inputConfiguration: ModelInputConfigurationTypeDef + outputConfiguration: ModelOutputConfigurationTypeDef + modelEndpointStatus: ModelEndpointStatusType + tags: Optional[Sequence[TagTypeDef]] = None + +class GetKMSEncryptionKeyResultTypeDef(BaseModel): + kmsKey: KMSKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLabelsResultTypeDef(BaseModel): + labels: List[LabelTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelsResultTypeDef(BaseModel): + nextToken: str + models: List[ModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetOutcomesResultTypeDef(BaseModel): + outcomes: List[OutcomeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRulesResultTypeDef(BaseModel): + ruleDetails: List[RuleDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IngestedEventsDetailTypeDef(BaseModel): + ingestedEventsTimeWindow: IngestedEventsTimeWindowTypeDef + +class TrainingDataSchemaTypeDef(BaseModel): + modelVariables: Sequence[str] + labelSchema: Optional[LabelSchemaTypeDef] = None + +class ListEventPredictionsRequestRequestTypeDef(BaseModel): + eventId: Optional[FilterConditionTypeDef] = None + eventType: Optional[FilterConditionTypeDef] = None + detectorId: Optional[FilterConditionTypeDef] = None + detectorVersionId: Optional[FilterConditionTypeDef] = None + predictionTimeRange: Optional[PredictionTimeRangeTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class VariableImportanceMetricsTypeDef(BaseModel): + logOddsMetrics: Optional[List[LogOddsMetricTypeDef]] = None + +class TrainingMetricsTypeDef(BaseModel): + auc: Optional[float] = None + metricDataPoints: Optional[List[MetricDataPointTypeDef]] = None + +class OFIModelPerformanceTypeDef(BaseModel): + auc: Optional[float] = None + uncertaintyRange: Optional[UncertaintyRangeTypeDef] = None + +class TFIModelPerformanceTypeDef(BaseModel): + auc: Optional[float] = None + uncertaintyRange: Optional[UncertaintyRangeTypeDef] = None + +class PredictionExplanationsTypeDef(BaseModel): + variableImpactExplanations: Optional[List[VariableImpactExplanationTypeDef]] = None + aggregatedVariablesImpactExplanations: Optional[ List[AggregatedVariablesImpactExplanationTypeDef] ] = None + +class GetEventPredictionRequestRequestTypeDef(BaseModel): + detectorId: str + eventId: str + eventTypeName: str + entities: Sequence[EntityTypeDef] + eventTimestamp: str + eventVariables: Mapping[str, str] + detectorVersionId: Optional[str] = None + externalModelEndpointDataBlobs: Optional[Mapping[str, ModelEndpointDataBlobTypeDef]] = None + +class GetEventResultTypeDef(BaseModel): + event: EventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventTypesResultTypeDef(BaseModel): + eventTypes: List[EventTypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventPredictionResultTypeDef(BaseModel): + modelScores: List[ModelScoresTypeDef] + ruleResults: List[RuleResultTypeDef] + externalModelOutputs: List[ExternalModelOutputsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetExternalModelsResultTypeDef(BaseModel): + externalModels: List[ExternalModelTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelVersionRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + majorVersionNumber: str + externalEventsDetail: Optional[ExternalEventsDetailTypeDef] = None + ingestedEventsDetail: Optional[IngestedEventsDetailTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelVersionRequestRequestTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + trainingDataSource: TrainingDataSourceEnumType + trainingDataSchema: TrainingDataSchemaTypeDef + externalEventsDetail: Optional[ExternalEventsDetailTypeDef] = None + ingestedEventsDetail: Optional[IngestedEventsDetailTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class GetModelVersionResultTypeDef(BaseModel): + modelId: str + modelType: ModelTypeEnumType + modelVersionNumber: str + trainingDataSource: TrainingDataSourceEnumType + trainingDataSchema: TrainingDataSchemaTypeDef + externalEventsDetail: ExternalEventsDetailTypeDef + ingestedEventsDetail: IngestedEventsDetailTypeDef + status: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class TrainingResultTypeDef(BaseModel): + dataValidationMetrics: Optional[DataValidationMetricsTypeDef] = None + trainingMetrics: Optional[TrainingMetricsTypeDef] = None + variableImportanceMetrics: Optional[VariableImportanceMetricsTypeDef] = None + +class OFITrainingMetricsValueTypeDef(BaseModel): + metricDataPoints: Optional[List[OFIMetricDataPointTypeDef]] = None + modelPerformance: Optional[OFIModelPerformanceTypeDef] = None + +class TFITrainingMetricsValueTypeDef(BaseModel): + metricDataPoints: Optional[List[TFIMetricDataPointTypeDef]] = None + modelPerformance: Optional[TFIModelPerformanceTypeDef] = None + +class ModelVersionEvaluationTypeDef(BaseModel): + outputVariableName: Optional[str] = None + evaluationScore: Optional[str] = None + predictionExplanations: Optional[PredictionExplanationsTypeDef] = None + +class TrainingMetricsV2TypeDef(BaseModel): + ofi: Optional[OFITrainingMetricsValueTypeDef] = None + tfi: Optional[TFITrainingMetricsValueTypeDef] = None + ati: Optional[ATITrainingMetricsValueTypeDef] = None + +class EvaluatedModelVersionTypeDef(BaseModel): + modelId: Optional[str] = None + modelVersion: Optional[str] = None + modelType: Optional[str] = None + evaluations: Optional[List[ModelVersionEvaluationTypeDef]] = None + +class TrainingResultV2TypeDef(BaseModel): + dataValidationMetrics: Optional[DataValidationMetricsTypeDef] = None + trainingMetricsV2: Optional[TrainingMetricsV2TypeDef] = None + variableImportanceMetrics: Optional[VariableImportanceMetricsTypeDef] = None + aggregatedVariablesImportanceMetrics: Optional[ AggregatedVariablesImportanceMetricsTypeDef ] = None + +class GetEventPredictionMetadataResultTypeDef(BaseModel): + eventId: str + eventTypeName: str + entityId: str + entityType: str + eventTimestamp: str + detectorId: str + detectorVersionId: str + detectorVersionStatus: str + eventVariables: List[EventVariableSummaryTypeDef] + rules: List[EvaluatedRuleTypeDef] + ruleExecutionMode: RuleExecutionModeType + outcomes: List[str] + evaluatedModelVersions: List[EvaluatedModelVersionTypeDef] + evaluatedExternalModels: List[EvaluatedExternalModelTypeDef] + predictionTimestamp: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModelVersionDetailTypeDef(BaseModel): + modelId: Optional[str] = None + modelType: Optional[ModelTypeEnumType] = None + modelVersionNumber: Optional[str] = None + status: Optional[str] = None + trainingDataSource: Optional[TrainingDataSourceEnumType] = None + trainingDataSchema: Optional[TrainingDataSchemaTypeDef] = None + externalEventsDetail: Optional[ExternalEventsDetailTypeDef] = None + ingestedEventsDetail: Optional[IngestedEventsDetailTypeDef] = None + trainingResult: Optional[TrainingResultTypeDef] = None + lastUpdatedTime: Optional[str] = None + createdTime: Optional[str] = None + arn: Optional[str] = None + trainingResultV2: Optional[TrainingResultV2TypeDef] = None + +class DescribeModelVersionsResultTypeDef(BaseModel): + modelVersionDetails: List[ModelVersionDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/frauddetector_constants.py b/aws_resource_validator/pydantic_models/frauddetector_constants.py new file mode 100644 index 00000000..ce4133fd --- /dev/null +++ b/aws_resource_validator/pydantic_models/frauddetector_constants.py @@ -0,0 +1,411 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AsyncJobStatusType = Literal["CANCELED", + "CANCEL_IN_PROGRESS", + "COMPLETE", + "FAILED", + "IN_PROGRESS", + "IN_PROGRESS_INITIALIZING",] +DataSourceType = Literal["EVENT", "EXTERNAL_MODEL_SCORE", "MODEL_SCORE"] +DataTypeType = Literal["BOOLEAN", "DATETIME", "FLOAT", "INTEGER", "STRING"] +DetectorVersionStatusType = Literal["ACTIVE", "DRAFT", "INACTIVE"] +EventIngestionType = Literal["DISABLED", "ENABLED"] +LanguageType = Literal["DETECTORPL"] +ListUpdateModeType = Literal["APPEND", "REMOVE", "REPLACE"] +ModelEndpointStatusType = Literal["ASSOCIATED", "DISSOCIATED"] +ModelInputDataFormatType = Literal["APPLICATION_JSON", "TEXT_CSV"] +ModelOutputDataFormatType = Literal["APPLICATION_JSONLINES", "TEXT_CSV"] +ModelSourceType = Literal["SAGEMAKER"] +ModelTypeEnumType = Literal["ACCOUNT_TAKEOVER_INSIGHTS", "ONLINE_FRAUD_INSIGHTS", "TRANSACTION_FRAUD_INSIGHTS"] +ModelVersionStatusType = Literal["ACTIVE", "INACTIVE", "TRAINING_CANCELLED"] +RuleExecutionModeType = Literal["ALL_MATCHED", "FIRST_MATCHED"] +TrainingDataSourceEnumType = Literal["EXTERNAL_EVENTS", "INGESTED_EVENTS"] +UnlabeledEventsTreatmentType = Literal["AUTO", "FRAUD", "IGNORE", "LEGIT"] +FraudDetectorServiceName = Literal["frauddetector"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-southeast-1", "ap-southeast-2", "eu-west-1", "us-east-1", "us-east-2", "us-west-2"] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/freetier_classes.py b/aws_resource_validator/pydantic_models/freetier_classes.py new file mode 100644 index 00000000..abe357f4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/freetier_classes.py @@ -0,0 +1,62 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.freetier_constants import * + +class DimensionValuesTypeDef(BaseModel): + Key: DimensionType + MatchOptions: Sequence[MatchOptionType] + Values: Sequence[str] + +class FreeTierUsageTypeDef(BaseModel): + actualUsageAmount: Optional[float] = None + description: Optional[str] = None + forecastedUsageAmount: Optional[float] = None + freeTierType: Optional[str] = None + limit: Optional[float] = None + operation: Optional[str] = None + region: Optional[str] = None + service: Optional[str] = None + unit: Optional[str] = None + usageType: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetFreeTierUsageRequestRequestTypeDef(BaseModel): + filter: Optional["ExpressionTypeDef"] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ExpressionTypeDef(BaseModel): + And: Optional[Sequence[Dict[str, Any]]] = None + Dimensions: Optional[DimensionValuesTypeDef] = None + Not: Optional[Dict[str, Any]] = None + Or: Optional[Sequence[Dict[str, Any]]] = None + +class GetFreeTierUsageResponseTypeDef(BaseModel): + freeTierUsages: List[FreeTierUsageTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFreeTierUsageRequestGetFreeTierUsagePaginateTypeDef(BaseModel): + filter: Optional[ExpressionTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/freetier_constants.py b/aws_resource_validator/pydantic_models/freetier_constants.py new file mode 100644 index 00000000..c3e66bfe --- /dev/null +++ b/aws_resource_validator/pydantic_models/freetier_constants.py @@ -0,0 +1,398 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DimensionType = Literal["DESCRIPTION", + "FREE_TIER_TYPE", + "OPERATION", + "REGION", + "SERVICE", + "USAGE_PERCENTAGE", + "USAGE_TYPE",] +GetFreeTierUsagePaginatorName = Literal["get_free_tier_usage"] +MatchOptionType = Literal["CONTAINS", "ENDS_WITH", "EQUALS", "GREATER_THAN_OR_EQUAL", "STARTS_WITH"] +FreeTierServiceName = Literal["freetier"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_free_tier_usage"] diff --git a/aws_resource_validator/pydantic_models/fsx_classes.py b/aws_resource_validator/pydantic_models/fsx_classes.py new file mode 100644 index 00000000..0f8dda57 --- /dev/null +++ b/aws_resource_validator/pydantic_models/fsx_classes.py @@ -0,0 +1,1298 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.fsx_constants import * + +class ActiveDirectoryBackupAttributesTypeDef(BaseModel): + DomainName: Optional[str] = None + ActiveDirectoryId: Optional[str] = None + ResourceARN: Optional[str] = None + +class AdministrativeActionFailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class AggregateConfigurationTypeDef(BaseModel): + Aggregates: Optional[List[str]] = None + TotalConstituents: Optional[int] = None + +class AliasTypeDef(BaseModel): + Name: Optional[str] = None + Lifecycle: Optional[AliasLifecycleType] = None + +class AssociateFileSystemAliasesRequestRequestTypeDef(BaseModel): + FileSystemId: str + Aliases: Sequence[str] + ClientRequestToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AutoExportPolicyOutputTypeDef(BaseModel): + Events: Optional[List[EventTypeType]] = None + +class AutoExportPolicyTypeDef(BaseModel): + Events: Optional[Sequence[EventTypeType]] = None + +class AutoImportPolicyOutputTypeDef(BaseModel): + Events: Optional[List[EventTypeType]] = None + +class AutoImportPolicyTypeDef(BaseModel): + Events: Optional[Sequence[EventTypeType]] = None + +class AutocommitPeriodTypeDef(BaseModel): + Type: AutocommitPeriodTypeType + Value: Optional[int] = None + +class BackupFailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CancelDataRepositoryTaskRequestRequestTypeDef(BaseModel): + TaskId: str + +class CompletionReportTypeDef(BaseModel): + Enabled: bool + Path: Optional[str] = None + Format: Optional[Literal["REPORT_CSV_20191124"]] = None + Scope: Optional[Literal["FAILED_FILES_ONLY"]] = None + +class CopySnapshotAndUpdateVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + SourceSnapshotARN: str + ClientRequestToken: Optional[str] = None + CopyStrategy: Optional[OpenZFSCopyStrategyType] = None + Options: Optional[Sequence[UpdateOpenZFSVolumeOptionType]] = None + +class CreateAggregateConfigurationTypeDef(BaseModel): + Aggregates: Optional[Sequence[str]] = None + ConstituentsPerAggregate: Optional[int] = None + +class FileCacheLustreMetadataConfigurationTypeDef(BaseModel): + StorageCapacity: int + +class CreateFileSystemLustreMetadataConfigurationTypeDef(BaseModel): + Mode: MetadataConfigurationModeType + Iops: Optional[int] = None + +class LustreLogCreateConfigurationTypeDef(BaseModel): + Level: LustreAccessAuditLogLevelType + Destination: Optional[str] = None + +class LustreRootSquashConfigurationTypeDef(BaseModel): + RootSquash: Optional[str] = None + NoSquashNids: Optional[Sequence[str]] = None + +class DiskIopsConfigurationTypeDef(BaseModel): + Mode: Optional[DiskIopsConfigurationModeType] = None + Iops: Optional[int] = None + +class SelfManagedActiveDirectoryConfigurationTypeDef(BaseModel): + DomainName: str + UserName: str + Password: str + DnsIps: Sequence[str] + OrganizationalUnitDistinguishedName: Optional[str] = None + FileSystemAdministratorsGroup: Optional[str] = None + +class WindowsAuditLogCreateConfigurationTypeDef(BaseModel): + FileAccessAuditLogLevel: WindowsAccessAuditLogLevelType + FileShareAccessAuditLogLevel: WindowsAccessAuditLogLevelType + AuditLogDestination: Optional[str] = None + +class TieringPolicyTypeDef(BaseModel): + CoolingPeriod: Optional[int] = None + Name: Optional[TieringPolicyNameType] = None + +class CreateOpenZFSOriginSnapshotConfigurationTypeDef(BaseModel): + SnapshotARN: str + CopyStrategy: OpenZFSCopyStrategyType + +class OpenZFSUserOrGroupQuotaTypeDef(BaseModel): + Type: OpenZFSQuotaTypeType + Id: int + StorageCapacityQuotaGiB: int + +class DataRepositoryFailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class DataRepositoryTaskFailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class DataRepositoryTaskFilterTypeDef(BaseModel): + Name: Optional[DataRepositoryTaskFilterNameType] = None + Values: Optional[Sequence[str]] = None + +class DataRepositoryTaskStatusTypeDef(BaseModel): + TotalCount: Optional[int] = None + SucceededCount: Optional[int] = None + FailedCount: Optional[int] = None + LastUpdatedTime: Optional[datetime] = None + ReleasedCapacity: Optional[int] = None + +class DeleteBackupRequestRequestTypeDef(BaseModel): + BackupId: str + ClientRequestToken: Optional[str] = None + +class DeleteDataRepositoryAssociationRequestRequestTypeDef(BaseModel): + AssociationId: str + ClientRequestToken: Optional[str] = None + DeleteDataInFileSystem: Optional[bool] = None + +class DeleteFileCacheRequestRequestTypeDef(BaseModel): + FileCacheId: str + ClientRequestToken: Optional[str] = None + +class DeleteSnapshotRequestRequestTypeDef(BaseModel): + SnapshotId: str + ClientRequestToken: Optional[str] = None + +class DeleteStorageVirtualMachineRequestRequestTypeDef(BaseModel): + StorageVirtualMachineId: str + ClientRequestToken: Optional[str] = None + +class DeleteVolumeOpenZFSConfigurationTypeDef(BaseModel): + Options: Optional[Sequence[Literal["DELETE_CHILD_VOLUMES_AND_SNAPSHOTS"]]] = None + +class FilterTypeDef(BaseModel): + Name: Optional[FilterNameType] = None + Values: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeFileCachesRequestRequestTypeDef(BaseModel): + FileCacheIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFileSystemAliasesRequestRequestTypeDef(BaseModel): + FileSystemId: str + ClientRequestToken: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFileSystemsRequestRequestTypeDef(BaseModel): + FileSystemIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SnapshotFilterTypeDef(BaseModel): + Name: Optional[SnapshotFilterNameType] = None + Values: Optional[Sequence[str]] = None + +class StorageVirtualMachineFilterTypeDef(BaseModel): + Name: Optional[Literal["file-system-id"]] = None + Values: Optional[Sequence[str]] = None + +class VolumeFilterTypeDef(BaseModel): + Name: Optional[VolumeFilterNameType] = None + Values: Optional[Sequence[str]] = None + +class DisassociateFileSystemAliasesRequestRequestTypeDef(BaseModel): + FileSystemId: str + Aliases: Sequence[str] + ClientRequestToken: Optional[str] = None + +class DurationSinceLastAccessTypeDef(BaseModel): + Unit: Optional[Literal["DAYS"]] = None + Value: Optional[int] = None + +class FileCacheFailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class FileCacheNFSConfigurationTypeDef(BaseModel): + Version: Literal["NFS3"] + DnsIps: Optional[Sequence[str]] = None + +class LustreLogConfigurationTypeDef(BaseModel): + Level: LustreAccessAuditLogLevelType + Destination: Optional[str] = None + +class FileSystemEndpointTypeDef(BaseModel): + DNSName: Optional[str] = None + IpAddresses: Optional[List[str]] = None + +class FileSystemFailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + +class FileSystemLustreMetadataConfigurationTypeDef(BaseModel): + Mode: MetadataConfigurationModeType + Iops: Optional[int] = None + +class LifecycleTransitionReasonTypeDef(BaseModel): + Message: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LustreRootSquashConfigurationOutputTypeDef(BaseModel): + RootSquash: Optional[str] = None + NoSquashNids: Optional[List[str]] = None + +class OpenZFSClientConfigurationOutputTypeDef(BaseModel): + Clients: str + Options: List[str] + +class OpenZFSClientConfigurationTypeDef(BaseModel): + Clients: str + Options: Sequence[str] + +class OpenZFSOriginSnapshotConfigurationTypeDef(BaseModel): + SnapshotARN: Optional[str] = None + CopyStrategy: Optional[OpenZFSCopyStrategyType] = None + +class ReleaseFileSystemNfsV3LocksRequestRequestTypeDef(BaseModel): + FileSystemId: str + ClientRequestToken: Optional[str] = None + +class RestoreVolumeFromSnapshotRequestRequestTypeDef(BaseModel): + VolumeId: str + SnapshotId: str + ClientRequestToken: Optional[str] = None + Options: Optional[Sequence[RestoreOpenZFSVolumeOptionType]] = None + +class RetentionPeriodTypeDef(BaseModel): + Type: RetentionPeriodTypeType + Value: Optional[int] = None + +class SelfManagedActiveDirectoryAttributesTypeDef(BaseModel): + DomainName: Optional[str] = None + OrganizationalUnitDistinguishedName: Optional[str] = None + FileSystemAdministratorsGroup: Optional[str] = None + UserName: Optional[str] = None + DnsIps: Optional[List[str]] = None + +class SelfManagedActiveDirectoryConfigurationUpdatesTypeDef(BaseModel): + UserName: Optional[str] = None + Password: Optional[str] = None + DnsIps: Optional[Sequence[str]] = None + DomainName: Optional[str] = None + OrganizationalUnitDistinguishedName: Optional[str] = None + FileSystemAdministratorsGroup: Optional[str] = None + +class StartMisconfiguredStateRecoveryRequestRequestTypeDef(BaseModel): + FileSystemId: str + ClientRequestToken: Optional[str] = None + +class SvmEndpointTypeDef(BaseModel): + DNSName: Optional[str] = None + IpAddresses: Optional[List[str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateFileCacheLustreConfigurationTypeDef(BaseModel): + WeeklyMaintenanceStartTime: Optional[str] = None + +class UpdateFileSystemLustreMetadataConfigurationTypeDef(BaseModel): + Iops: Optional[int] = None + Mode: Optional[MetadataConfigurationModeType] = None + +class UpdateSharedVpcConfigurationRequestRequestTypeDef(BaseModel): + EnableFsxRouteTableUpdatesFromParticipantAccounts: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class UpdateSnapshotRequestRequestTypeDef(BaseModel): + Name: str + SnapshotId: str + ClientRequestToken: Optional[str] = None + +class WindowsAuditLogConfigurationTypeDef(BaseModel): + FileAccessAuditLogLevel: WindowsAccessAuditLogLevelType + FileShareAccessAuditLogLevel: WindowsAccessAuditLogLevelType + AuditLogDestination: Optional[str] = None + +class AssociateFileSystemAliasesResponseTypeDef(BaseModel): + Aliases: List[AliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CancelDataRepositoryTaskResponseTypeDef(BaseModel): + Lifecycle: DataRepositoryTaskLifecycleType + TaskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CopySnapshotAndUpdateVolumeResponseTypeDef(BaseModel): + VolumeId: str + Lifecycle: VolumeLifecycleType + AdministrativeActions: List["AdministrativeActionTypeDef"] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFileSystemFromBackupResponseTypeDef(BaseModel): + FileSystem: "FileSystemTypeDef" + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFileSystemResponseTypeDef(BaseModel): + FileSystem: "FileSystemTypeDef" + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBackupResponseTypeDef(BaseModel): + BackupId: str + Lifecycle: BackupLifecycleType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataRepositoryAssociationResponseTypeDef(BaseModel): + AssociationId: str + Lifecycle: DataRepositoryLifecycleType + DeleteDataInFileSystem: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFileCacheResponseTypeDef(BaseModel): + FileCacheId: str + Lifecycle: FileCacheLifecycleType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotResponseTypeDef(BaseModel): + SnapshotId: str + Lifecycle: SnapshotLifecycleType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteStorageVirtualMachineResponseTypeDef(BaseModel): + StorageVirtualMachineId: str + Lifecycle: StorageVirtualMachineLifecycleType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFileSystemAliasesResponseTypeDef(BaseModel): + Aliases: List[AliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFileSystemsResponseTypeDef(BaseModel): + FileSystems: List["FileSystemTypeDef"] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSharedVpcConfigurationResponseTypeDef(BaseModel): + EnableFsxRouteTableUpdatesFromParticipantAccounts: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateFileSystemAliasesResponseTypeDef(BaseModel): + Aliases: List[AliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReleaseFileSystemNfsV3LocksResponseTypeDef(BaseModel): + FileSystem: "FileSystemTypeDef" + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreVolumeFromSnapshotResponseTypeDef(BaseModel): + VolumeId: str + Lifecycle: VolumeLifecycleType + AdministrativeActions: List["AdministrativeActionTypeDef"] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMisconfiguredStateRecoveryResponseTypeDef(BaseModel): + FileSystem: "FileSystemTypeDef" + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFileSystemResponseTypeDef(BaseModel): + FileSystem: "FileSystemTypeDef" + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSharedVpcConfigurationResponseTypeDef(BaseModel): + EnableFsxRouteTableUpdatesFromParticipantAccounts: str + ResponseMetadata: ResponseMetadataTypeDef + +class NFSDataRepositoryConfigurationTypeDef(BaseModel): + Version: Literal["NFS3"] + DnsIps: Optional[List[str]] = None + AutoExportPolicy: Optional[AutoExportPolicyOutputTypeDef] = None + +class S3DataRepositoryConfigurationOutputTypeDef(BaseModel): + AutoImportPolicy: Optional[AutoImportPolicyOutputTypeDef] = None + AutoExportPolicy: Optional[AutoExportPolicyOutputTypeDef] = None + +class S3DataRepositoryConfigurationTypeDef(BaseModel): + AutoImportPolicy: Optional[AutoImportPolicyTypeDef] = None + AutoExportPolicy: Optional[AutoExportPolicyTypeDef] = None + +class CopyBackupRequestRequestTypeDef(BaseModel): + SourceBackupId: str + ClientRequestToken: Optional[str] = None + SourceRegion: Optional[str] = None + KmsKeyId: Optional[str] = None + CopyTags: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateBackupRequestRequestTypeDef(BaseModel): + FileSystemId: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + VolumeId: Optional[str] = None + +class CreateSnapshotRequestRequestTypeDef(BaseModel): + Name: str + VolumeId: str + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DeleteFileSystemLustreConfigurationTypeDef(BaseModel): + SkipFinalBackup: Optional[bool] = None + FinalBackupTags: Optional[Sequence[TagTypeDef]] = None + +class DeleteFileSystemLustreResponseTypeDef(BaseModel): + FinalBackupId: Optional[str] = None + FinalBackupTags: Optional[List[TagTypeDef]] = None + +class DeleteFileSystemOpenZFSConfigurationTypeDef(BaseModel): + SkipFinalBackup: Optional[bool] = None + FinalBackupTags: Optional[Sequence[TagTypeDef]] = None + Options: Optional[Sequence[Literal["DELETE_CHILD_VOLUMES_AND_SNAPSHOTS"]]] = None + +class DeleteFileSystemOpenZFSResponseTypeDef(BaseModel): + FinalBackupId: Optional[str] = None + FinalBackupTags: Optional[List[TagTypeDef]] = None + +class DeleteFileSystemWindowsConfigurationTypeDef(BaseModel): + SkipFinalBackup: Optional[bool] = None + FinalBackupTags: Optional[Sequence[TagTypeDef]] = None + +class DeleteFileSystemWindowsResponseTypeDef(BaseModel): + FinalBackupId: Optional[str] = None + FinalBackupTags: Optional[List[TagTypeDef]] = None + +class DeleteVolumeOntapConfigurationTypeDef(BaseModel): + SkipFinalBackup: Optional[bool] = None + FinalBackupTags: Optional[Sequence[TagTypeDef]] = None + BypassSnaplockEnterpriseRetention: Optional[bool] = None + +class DeleteVolumeOntapResponseTypeDef(BaseModel): + FinalBackupId: Optional[str] = None + FinalBackupTags: Optional[List[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateFileCacheLustreConfigurationTypeDef(BaseModel): + PerUnitStorageThroughput: int + DeploymentType: Literal["CACHE_1"] + MetadataConfiguration: FileCacheLustreMetadataConfigurationTypeDef + WeeklyMaintenanceStartTime: Optional[str] = None + +class CreateFileSystemLustreConfigurationTypeDef(BaseModel): + WeeklyMaintenanceStartTime: Optional[str] = None + ImportPath: Optional[str] = None + ExportPath: Optional[str] = None + ImportedFileChunkSize: Optional[int] = None + DeploymentType: Optional[LustreDeploymentTypeType] = None + AutoImportPolicy: Optional[AutoImportPolicyTypeType] = None + PerUnitStorageThroughput: Optional[int] = None + DailyAutomaticBackupStartTime: Optional[str] = None + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + DriveCacheType: Optional[DriveCacheTypeType] = None + DataCompressionType: Optional[DataCompressionTypeType] = None + LogConfiguration: Optional[LustreLogCreateConfigurationTypeDef] = None + RootSquashConfiguration: Optional[LustreRootSquashConfigurationTypeDef] = None + MetadataConfiguration: Optional[CreateFileSystemLustreMetadataConfigurationTypeDef] = None + +class CreateFileSystemOntapConfigurationTypeDef(BaseModel): + DeploymentType: OntapDeploymentTypeType + AutomaticBackupRetentionDays: Optional[int] = None + DailyAutomaticBackupStartTime: Optional[str] = None + EndpointIpAddressRange: Optional[str] = None + FsxAdminPassword: Optional[str] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + PreferredSubnetId: Optional[str] = None + RouteTableIds: Optional[Sequence[str]] = None + ThroughputCapacity: Optional[int] = None + WeeklyMaintenanceStartTime: Optional[str] = None + HAPairs: Optional[int] = None + ThroughputCapacityPerHAPair: Optional[int] = None + +class OpenZFSFileSystemConfigurationTypeDef(BaseModel): + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + CopyTagsToVolumes: Optional[bool] = None + DailyAutomaticBackupStartTime: Optional[str] = None + DeploymentType: Optional[OpenZFSDeploymentTypeType] = None + ThroughputCapacity: Optional[int] = None + WeeklyMaintenanceStartTime: Optional[str] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + RootVolumeId: Optional[str] = None + PreferredSubnetId: Optional[str] = None + EndpointIpAddressRange: Optional[str] = None + RouteTableIds: Optional[List[str]] = None + EndpointIpAddress: Optional[str] = None + +class UpdateFileSystemOntapConfigurationTypeDef(BaseModel): + AutomaticBackupRetentionDays: Optional[int] = None + DailyAutomaticBackupStartTime: Optional[str] = None + FsxAdminPassword: Optional[str] = None + WeeklyMaintenanceStartTime: Optional[str] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + ThroughputCapacity: Optional[int] = None + AddRouteTableIds: Optional[Sequence[str]] = None + RemoveRouteTableIds: Optional[Sequence[str]] = None + ThroughputCapacityPerHAPair: Optional[int] = None + HAPairs: Optional[int] = None + +class UpdateFileSystemOpenZFSConfigurationTypeDef(BaseModel): + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + CopyTagsToVolumes: Optional[bool] = None + DailyAutomaticBackupStartTime: Optional[str] = None + ThroughputCapacity: Optional[int] = None + WeeklyMaintenanceStartTime: Optional[str] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + AddRouteTableIds: Optional[Sequence[str]] = None + RemoveRouteTableIds: Optional[Sequence[str]] = None + +class CreateSvmActiveDirectoryConfigurationTypeDef(BaseModel): + NetBiosName: str + SelfManagedActiveDirectoryConfiguration: Optional[ SelfManagedActiveDirectoryConfigurationTypeDef ] = None + +class CreateFileSystemWindowsConfigurationTypeDef(BaseModel): + ThroughputCapacity: int + ActiveDirectoryId: Optional[str] = None + SelfManagedActiveDirectoryConfiguration: Optional[ SelfManagedActiveDirectoryConfigurationTypeDef ] = None + DeploymentType: Optional[WindowsDeploymentTypeType] = None + PreferredSubnetId: Optional[str] = None + WeeklyMaintenanceStartTime: Optional[str] = None + DailyAutomaticBackupStartTime: Optional[str] = None + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + Aliases: Optional[Sequence[str]] = None + AuditLogConfiguration: Optional[WindowsAuditLogCreateConfigurationTypeDef] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + +class DataRepositoryConfigurationTypeDef(BaseModel): + Lifecycle: Optional[DataRepositoryLifecycleType] = None + ImportPath: Optional[str] = None + ExportPath: Optional[str] = None + ImportedFileChunkSize: Optional[int] = None + AutoImportPolicy: Optional[AutoImportPolicyTypeType] = None + FailureDetails: Optional[DataRepositoryFailureDetailsTypeDef] = None + +class DescribeDataRepositoryTasksRequestRequestTypeDef(BaseModel): + TaskIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[DataRepositoryTaskFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBackupsRequestRequestTypeDef(BaseModel): + BackupIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeDataRepositoryAssociationsRequestRequestTypeDef(BaseModel): + AssociationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBackupsRequestDescribeBackupsPaginateTypeDef(BaseModel): + BackupIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFileSystemsRequestDescribeFileSystemsPaginateTypeDef(BaseModel): + FileSystemIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotsRequestRequestTypeDef(BaseModel): + SnapshotIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[SnapshotFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IncludeShared: Optional[bool] = None + +class DescribeStorageVirtualMachinesRequestDescribeStorageVirtualMachinesPaginateTypeDef(BaseModel): + StorageVirtualMachineIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[StorageVirtualMachineFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStorageVirtualMachinesRequestRequestTypeDef(BaseModel): + StorageVirtualMachineIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[StorageVirtualMachineFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVolumesRequestDescribeVolumesPaginateTypeDef(BaseModel): + VolumeIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[VolumeFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVolumesRequestRequestTypeDef(BaseModel): + VolumeIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[VolumeFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ReleaseConfigurationTypeDef(BaseModel): + DurationSinceLastAccess: Optional[DurationSinceLastAccessTypeDef] = None + +class FileCacheDataRepositoryAssociationTypeDef(BaseModel): + FileCachePath: str + DataRepositoryPath: str + DataRepositorySubdirectories: Optional[Sequence[str]] = None + NFS: Optional[FileCacheNFSConfigurationTypeDef] = None + +class FileCacheLustreConfigurationTypeDef(BaseModel): + PerUnitStorageThroughput: Optional[int] = None + DeploymentType: Optional[Literal["CACHE_1"]] = None + MountName: Optional[str] = None + WeeklyMaintenanceStartTime: Optional[str] = None + MetadataConfiguration: Optional[FileCacheLustreMetadataConfigurationTypeDef] = None + LogConfiguration: Optional[LustreLogConfigurationTypeDef] = None + +class FileSystemEndpointsTypeDef(BaseModel): + Intercluster: Optional[FileSystemEndpointTypeDef] = None + Management: Optional[FileSystemEndpointTypeDef] = None + +class SnapshotTypeDef(BaseModel): + ResourceARN: Optional[str] = None + SnapshotId: Optional[str] = None + Name: Optional[str] = None + VolumeId: Optional[str] = None + CreationTime: Optional[datetime] = None + Lifecycle: Optional[SnapshotLifecycleType] = None + LifecycleTransitionReason: Optional[LifecycleTransitionReasonTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + AdministrativeActions: Optional[List["AdministrativeActionTypeDef"]] = None + +class OpenZFSNfsExportOutputTypeDef(BaseModel): + ClientConfigurations: List[OpenZFSClientConfigurationOutputTypeDef] + +class OpenZFSNfsExportTypeDef(BaseModel): + ClientConfigurations: Sequence[OpenZFSClientConfigurationTypeDef] + +class SnaplockRetentionPeriodTypeDef(BaseModel): + DefaultRetention: RetentionPeriodTypeDef + MinimumRetention: RetentionPeriodTypeDef + MaximumRetention: RetentionPeriodTypeDef + +class SvmActiveDirectoryConfigurationTypeDef(BaseModel): + NetBiosName: Optional[str] = None + SelfManagedActiveDirectoryConfiguration: Optional[ SelfManagedActiveDirectoryAttributesTypeDef ] = None + +class UpdateFileSystemWindowsConfigurationTypeDef(BaseModel): + WeeklyMaintenanceStartTime: Optional[str] = None + DailyAutomaticBackupStartTime: Optional[str] = None + AutomaticBackupRetentionDays: Optional[int] = None + ThroughputCapacity: Optional[int] = None + SelfManagedActiveDirectoryConfiguration: Optional[ SelfManagedActiveDirectoryConfigurationUpdatesTypeDef ] = None + AuditLogConfiguration: Optional[WindowsAuditLogCreateConfigurationTypeDef] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + +class UpdateSvmActiveDirectoryConfigurationTypeDef(BaseModel): + SelfManagedActiveDirectoryConfiguration: Optional[ SelfManagedActiveDirectoryConfigurationUpdatesTypeDef ] = None + NetBiosName: Optional[str] = None + +class SvmEndpointsTypeDef(BaseModel): + Iscsi: Optional[SvmEndpointTypeDef] = None + Management: Optional[SvmEndpointTypeDef] = None + Nfs: Optional[SvmEndpointTypeDef] = None + Smb: Optional[SvmEndpointTypeDef] = None + +class UpdateFileCacheRequestRequestTypeDef(BaseModel): + FileCacheId: str + ClientRequestToken: Optional[str] = None + LustreConfiguration: Optional[UpdateFileCacheLustreConfigurationTypeDef] = None + +class UpdateFileSystemLustreConfigurationTypeDef(BaseModel): + WeeklyMaintenanceStartTime: Optional[str] = None + DailyAutomaticBackupStartTime: Optional[str] = None + AutomaticBackupRetentionDays: Optional[int] = None + AutoImportPolicy: Optional[AutoImportPolicyTypeType] = None + DataCompressionType: Optional[DataCompressionTypeType] = None + LogConfiguration: Optional[LustreLogCreateConfigurationTypeDef] = None + RootSquashConfiguration: Optional[LustreRootSquashConfigurationTypeDef] = None + PerUnitStorageThroughput: Optional[int] = None + MetadataConfiguration: Optional[UpdateFileSystemLustreMetadataConfigurationTypeDef] = None + +class WindowsFileSystemConfigurationTypeDef(BaseModel): + ActiveDirectoryId: Optional[str] = None + SelfManagedActiveDirectoryConfiguration: Optional[ SelfManagedActiveDirectoryAttributesTypeDef ] = None + DeploymentType: Optional[WindowsDeploymentTypeType] = None + RemoteAdministrationEndpoint: Optional[str] = None + PreferredSubnetId: Optional[str] = None + PreferredFileServerIp: Optional[str] = None + ThroughputCapacity: Optional[int] = None + MaintenanceOperationsInProgress: Optional[List[FileSystemMaintenanceOperationType]] = None + WeeklyMaintenanceStartTime: Optional[str] = None + DailyAutomaticBackupStartTime: Optional[str] = None + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + Aliases: Optional[List[AliasTypeDef]] = None + AuditLogConfiguration: Optional[WindowsAuditLogConfigurationTypeDef] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + +class DataRepositoryAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + ResourceARN: Optional[str] = None + FileSystemId: Optional[str] = None + Lifecycle: Optional[DataRepositoryLifecycleType] = None + FailureDetails: Optional[DataRepositoryFailureDetailsTypeDef] = None + FileSystemPath: Optional[str] = None + DataRepositoryPath: Optional[str] = None + BatchImportMetaDataOnCreate: Optional[bool] = None + ImportedFileChunkSize: Optional[int] = None + S3: Optional[S3DataRepositoryConfigurationOutputTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + CreationTime: Optional[datetime] = None + FileCacheId: Optional[str] = None + FileCachePath: Optional[str] = None + DataRepositorySubdirectories: Optional[List[str]] = None + NFS: Optional[NFSDataRepositoryConfigurationTypeDef] = None + +class CreateDataRepositoryAssociationRequestRequestTypeDef(BaseModel): + FileSystemId: str + DataRepositoryPath: str + FileSystemPath: Optional[str] = None + BatchImportMetaDataOnCreate: Optional[bool] = None + ImportedFileChunkSize: Optional[int] = None + S3: Optional[S3DataRepositoryConfigurationTypeDef] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateDataRepositoryAssociationRequestRequestTypeDef(BaseModel): + AssociationId: str + ClientRequestToken: Optional[str] = None + ImportedFileChunkSize: Optional[int] = None + S3: Optional[S3DataRepositoryConfigurationTypeDef] = None + +class DeleteFileSystemRequestRequestTypeDef(BaseModel): + FileSystemId: str + ClientRequestToken: Optional[str] = None + WindowsConfiguration: Optional[DeleteFileSystemWindowsConfigurationTypeDef] = None + LustreConfiguration: Optional[DeleteFileSystemLustreConfigurationTypeDef] = None + OpenZFSConfiguration: Optional[DeleteFileSystemOpenZFSConfigurationTypeDef] = None + +class DeleteFileSystemResponseTypeDef(BaseModel): + FileSystemId: str + Lifecycle: FileSystemLifecycleType + WindowsResponse: DeleteFileSystemWindowsResponseTypeDef + LustreResponse: DeleteFileSystemLustreResponseTypeDef + OpenZFSResponse: DeleteFileSystemOpenZFSResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + ClientRequestToken: Optional[str] = None + OntapConfiguration: Optional[DeleteVolumeOntapConfigurationTypeDef] = None + OpenZFSConfiguration: Optional[DeleteVolumeOpenZFSConfigurationTypeDef] = None + +class DeleteVolumeResponseTypeDef(BaseModel): + VolumeId: str + Lifecycle: VolumeLifecycleType + OntapResponse: DeleteVolumeOntapResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStorageVirtualMachineRequestRequestTypeDef(BaseModel): + FileSystemId: str + Name: str + ActiveDirectoryConfiguration: Optional[CreateSvmActiveDirectoryConfigurationTypeDef] = None + ClientRequestToken: Optional[str] = None + SvmAdminPassword: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + RootVolumeSecurityStyle: Optional[StorageVirtualMachineRootVolumeSecurityStyleType] = None + +class LustreFileSystemConfigurationTypeDef(BaseModel): + WeeklyMaintenanceStartTime: Optional[str] = None + DataRepositoryConfiguration: Optional[DataRepositoryConfigurationTypeDef] = None + DeploymentType: Optional[LustreDeploymentTypeType] = None + PerUnitStorageThroughput: Optional[int] = None + MountName: Optional[str] = None + DailyAutomaticBackupStartTime: Optional[str] = None + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + DriveCacheType: Optional[DriveCacheTypeType] = None + DataCompressionType: Optional[DataCompressionTypeType] = None + LogConfiguration: Optional[LustreLogConfigurationTypeDef] = None + RootSquashConfiguration: Optional[LustreRootSquashConfigurationOutputTypeDef] = None + MetadataConfiguration: Optional[FileSystemLustreMetadataConfigurationTypeDef] = None + +class CreateDataRepositoryTaskRequestRequestTypeDef(BaseModel): + Type: DataRepositoryTaskTypeType + FileSystemId: str + Report: CompletionReportTypeDef + Paths: Optional[Sequence[str]] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CapacityToRelease: Optional[int] = None + ReleaseConfiguration: Optional[ReleaseConfigurationTypeDef] = None + +class DataRepositoryTaskTypeDef(BaseModel): + TaskId: str + Lifecycle: DataRepositoryTaskLifecycleType + Type: DataRepositoryTaskTypeType + CreationTime: datetime + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ResourceARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + FileSystemId: Optional[str] = None + Paths: Optional[List[str]] = None + FailureDetails: Optional[DataRepositoryTaskFailureDetailsTypeDef] = None + Status: Optional[DataRepositoryTaskStatusTypeDef] = None + Report: Optional[CompletionReportTypeDef] = None + CapacityToRelease: Optional[int] = None + FileCacheId: Optional[str] = None + ReleaseConfiguration: Optional[ReleaseConfigurationTypeDef] = None + +class CreateFileCacheRequestRequestTypeDef(BaseModel): + FileCacheType: Literal["LUSTRE"] + FileCacheTypeVersion: str + StorageCapacity: int + SubnetIds: Sequence[str] + ClientRequestToken: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CopyTagsToDataRepositoryAssociations: Optional[bool] = None + KmsKeyId: Optional[str] = None + LustreConfiguration: Optional[CreateFileCacheLustreConfigurationTypeDef] = None + DataRepositoryAssociations: Optional[ Sequence[FileCacheDataRepositoryAssociationTypeDef] ] = None + +class FileCacheCreatingTypeDef(BaseModel): + OwnerId: Optional[str] = None + CreationTime: Optional[datetime] = None + FileCacheId: Optional[str] = None + FileCacheType: Optional[Literal["LUSTRE"]] = None + FileCacheTypeVersion: Optional[str] = None + Lifecycle: Optional[FileCacheLifecycleType] = None + FailureDetails: Optional[FileCacheFailureDetailsTypeDef] = None + StorageCapacity: Optional[int] = None + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + NetworkInterfaceIds: Optional[List[str]] = None + DNSName: Optional[str] = None + KmsKeyId: Optional[str] = None + ResourceARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + CopyTagsToDataRepositoryAssociations: Optional[bool] = None + LustreConfiguration: Optional[FileCacheLustreConfigurationTypeDef] = None + DataRepositoryAssociationIds: Optional[List[str]] = None + +class FileCacheTypeDef(BaseModel): + OwnerId: Optional[str] = None + CreationTime: Optional[datetime] = None + FileCacheId: Optional[str] = None + FileCacheType: Optional[Literal["LUSTRE"]] = None + FileCacheTypeVersion: Optional[str] = None + Lifecycle: Optional[FileCacheLifecycleType] = None + FailureDetails: Optional[FileCacheFailureDetailsTypeDef] = None + StorageCapacity: Optional[int] = None + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + NetworkInterfaceIds: Optional[List[str]] = None + DNSName: Optional[str] = None + KmsKeyId: Optional[str] = None + ResourceARN: Optional[str] = None + LustreConfiguration: Optional[FileCacheLustreConfigurationTypeDef] = None + DataRepositoryAssociationIds: Optional[List[str]] = None + +class OntapFileSystemConfigurationTypeDef(BaseModel): + AutomaticBackupRetentionDays: Optional[int] = None + DailyAutomaticBackupStartTime: Optional[str] = None + DeploymentType: Optional[OntapDeploymentTypeType] = None + EndpointIpAddressRange: Optional[str] = None + Endpoints: Optional[FileSystemEndpointsTypeDef] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + PreferredSubnetId: Optional[str] = None + RouteTableIds: Optional[List[str]] = None + ThroughputCapacity: Optional[int] = None + WeeklyMaintenanceStartTime: Optional[str] = None + FsxAdminPassword: Optional[str] = None + HAPairs: Optional[int] = None + ThroughputCapacityPerHAPair: Optional[int] = None + +class CreateSnapshotResponseTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotsResponseTypeDef(BaseModel): + Snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateSnapshotResponseTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OpenZFSVolumeConfigurationTypeDef(BaseModel): + ParentVolumeId: Optional[str] = None + VolumePath: Optional[str] = None + StorageCapacityReservationGiB: Optional[int] = None + StorageCapacityQuotaGiB: Optional[int] = None + RecordSizeKiB: Optional[int] = None + DataCompressionType: Optional[OpenZFSDataCompressionTypeType] = None + CopyTagsToSnapshots: Optional[bool] = None + OriginSnapshot: Optional[OpenZFSOriginSnapshotConfigurationTypeDef] = None + ReadOnly: Optional[bool] = None + NfsExports: Optional[List[OpenZFSNfsExportOutputTypeDef]] = None + UserAndGroupQuotas: Optional[List[OpenZFSUserOrGroupQuotaTypeDef]] = None + RestoreToSnapshot: Optional[str] = None + DeleteIntermediateSnaphots: Optional[bool] = None + DeleteClonedVolumes: Optional[bool] = None + DeleteIntermediateData: Optional[bool] = None + SourceSnapshotARN: Optional[str] = None + DestinationSnapshot: Optional[str] = None + CopyStrategy: Optional[OpenZFSCopyStrategyType] = None + +class CreateOpenZFSVolumeConfigurationTypeDef(BaseModel): + ParentVolumeId: str + StorageCapacityReservationGiB: Optional[int] = None + StorageCapacityQuotaGiB: Optional[int] = None + RecordSizeKiB: Optional[int] = None + DataCompressionType: Optional[OpenZFSDataCompressionTypeType] = None + CopyTagsToSnapshots: Optional[bool] = None + OriginSnapshot: Optional[CreateOpenZFSOriginSnapshotConfigurationTypeDef] = None + ReadOnly: Optional[bool] = None + NfsExports: Optional[Sequence[OpenZFSNfsExportTypeDef]] = None + UserAndGroupQuotas: Optional[Sequence[OpenZFSUserOrGroupQuotaTypeDef]] = None + +class OpenZFSCreateRootVolumeConfigurationTypeDef(BaseModel): + RecordSizeKiB: Optional[int] = None + DataCompressionType: Optional[OpenZFSDataCompressionTypeType] = None + NfsExports: Optional[Sequence[OpenZFSNfsExportTypeDef]] = None + UserAndGroupQuotas: Optional[Sequence[OpenZFSUserOrGroupQuotaTypeDef]] = None + CopyTagsToSnapshots: Optional[bool] = None + ReadOnly: Optional[bool] = None + +class UpdateOpenZFSVolumeConfigurationTypeDef(BaseModel): + StorageCapacityReservationGiB: Optional[int] = None + StorageCapacityQuotaGiB: Optional[int] = None + RecordSizeKiB: Optional[int] = None + DataCompressionType: Optional[OpenZFSDataCompressionTypeType] = None + NfsExports: Optional[Sequence[OpenZFSNfsExportTypeDef]] = None + UserAndGroupQuotas: Optional[Sequence[OpenZFSUserOrGroupQuotaTypeDef]] = None + ReadOnly: Optional[bool] = None + +class CreateSnaplockConfigurationTypeDef(BaseModel): + SnaplockType: SnaplockTypeType + AuditLogVolume: Optional[bool] = None + AutocommitPeriod: Optional[AutocommitPeriodTypeDef] = None + PrivilegedDelete: Optional[PrivilegedDeleteType] = None + RetentionPeriod: Optional[SnaplockRetentionPeriodTypeDef] = None + VolumeAppendModeEnabled: Optional[bool] = None + +class SnaplockConfigurationTypeDef(BaseModel): + AuditLogVolume: Optional[bool] = None + AutocommitPeriod: Optional[AutocommitPeriodTypeDef] = None + PrivilegedDelete: Optional[PrivilegedDeleteType] = None + RetentionPeriod: Optional[SnaplockRetentionPeriodTypeDef] = None + SnaplockType: Optional[SnaplockTypeType] = None + VolumeAppendModeEnabled: Optional[bool] = None + +class UpdateSnaplockConfigurationTypeDef(BaseModel): + AuditLogVolume: Optional[bool] = None + AutocommitPeriod: Optional[AutocommitPeriodTypeDef] = None + PrivilegedDelete: Optional[PrivilegedDeleteType] = None + RetentionPeriod: Optional[SnaplockRetentionPeriodTypeDef] = None + VolumeAppendModeEnabled: Optional[bool] = None + +class UpdateStorageVirtualMachineRequestRequestTypeDef(BaseModel): + StorageVirtualMachineId: str + ActiveDirectoryConfiguration: Optional[UpdateSvmActiveDirectoryConfigurationTypeDef] = None + ClientRequestToken: Optional[str] = None + SvmAdminPassword: Optional[str] = None + +class StorageVirtualMachineTypeDef(BaseModel): + ActiveDirectoryConfiguration: Optional[SvmActiveDirectoryConfigurationTypeDef] = None + CreationTime: Optional[datetime] = None + Endpoints: Optional[SvmEndpointsTypeDef] = None + FileSystemId: Optional[str] = None + Lifecycle: Optional[StorageVirtualMachineLifecycleType] = None + Name: Optional[str] = None + ResourceARN: Optional[str] = None + StorageVirtualMachineId: Optional[str] = None + Subtype: Optional[StorageVirtualMachineSubtypeType] = None + UUID: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + LifecycleTransitionReason: Optional[LifecycleTransitionReasonTypeDef] = None + RootVolumeSecurityStyle: Optional[StorageVirtualMachineRootVolumeSecurityStyleType] = None + +class UpdateFileSystemRequestRequestTypeDef(BaseModel): + FileSystemId: str + ClientRequestToken: Optional[str] = None + StorageCapacity: Optional[int] = None + WindowsConfiguration: Optional[UpdateFileSystemWindowsConfigurationTypeDef] = None + LustreConfiguration: Optional[UpdateFileSystemLustreConfigurationTypeDef] = None + OntapConfiguration: Optional[UpdateFileSystemOntapConfigurationTypeDef] = None + OpenZFSConfiguration: Optional[UpdateFileSystemOpenZFSConfigurationTypeDef] = None + StorageType: Optional[StorageTypeType] = None + +class CreateDataRepositoryAssociationResponseTypeDef(BaseModel): + Association: DataRepositoryAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataRepositoryAssociationsResponseTypeDef(BaseModel): + Associations: List[DataRepositoryAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateDataRepositoryAssociationResponseTypeDef(BaseModel): + Association: DataRepositoryAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataRepositoryTaskResponseTypeDef(BaseModel): + DataRepositoryTask: DataRepositoryTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataRepositoryTasksResponseTypeDef(BaseModel): + DataRepositoryTasks: List[DataRepositoryTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateFileCacheResponseTypeDef(BaseModel): + FileCache: FileCacheCreatingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFileCachesResponseTypeDef(BaseModel): + FileCaches: List[FileCacheTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateFileCacheResponseTypeDef(BaseModel): + FileCache: FileCacheTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FileSystemTypeDef(BaseModel): + OwnerId: Optional[str] = None + CreationTime: Optional[datetime] = None + FileSystemId: Optional[str] = None + FileSystemType: Optional[FileSystemTypeType] = None + Lifecycle: Optional[FileSystemLifecycleType] = None + FailureDetails: Optional[FileSystemFailureDetailsTypeDef] = None + StorageCapacity: Optional[int] = None + StorageType: Optional[StorageTypeType] = None + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + NetworkInterfaceIds: Optional[List[str]] = None + DNSName: Optional[str] = None + KmsKeyId: Optional[str] = None + ResourceARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + WindowsConfiguration: Optional[WindowsFileSystemConfigurationTypeDef] = None + LustreConfiguration: Optional[LustreFileSystemConfigurationTypeDef] = None + AdministrativeActions: Optional[List["AdministrativeActionTypeDef"]] = None + OntapConfiguration: Optional[OntapFileSystemConfigurationTypeDef] = None + FileSystemTypeVersion: Optional[str] = None + OpenZFSConfiguration: Optional[OpenZFSFileSystemConfigurationTypeDef] = None + +class CreateFileSystemOpenZFSConfigurationTypeDef(BaseModel): + DeploymentType: OpenZFSDeploymentTypeType + ThroughputCapacity: int + AutomaticBackupRetentionDays: Optional[int] = None + CopyTagsToBackups: Optional[bool] = None + CopyTagsToVolumes: Optional[bool] = None + DailyAutomaticBackupStartTime: Optional[str] = None + WeeklyMaintenanceStartTime: Optional[str] = None + DiskIopsConfiguration: Optional[DiskIopsConfigurationTypeDef] = None + RootVolumeConfiguration: Optional[OpenZFSCreateRootVolumeConfigurationTypeDef] = None + PreferredSubnetId: Optional[str] = None + EndpointIpAddressRange: Optional[str] = None + RouteTableIds: Optional[Sequence[str]] = None + +class CreateOntapVolumeConfigurationTypeDef(BaseModel): + StorageVirtualMachineId: str + JunctionPath: Optional[str] = None + SecurityStyle: Optional[SecurityStyleType] = None + SizeInMegabytes: Optional[int] = None + StorageEfficiencyEnabled: Optional[bool] = None + TieringPolicy: Optional[TieringPolicyTypeDef] = None + OntapVolumeType: Optional[InputOntapVolumeTypeType] = None + SnapshotPolicy: Optional[str] = None + CopyTagsToBackups: Optional[bool] = None + SnaplockConfiguration: Optional[CreateSnaplockConfigurationTypeDef] = None + VolumeStyle: Optional[VolumeStyleType] = None + AggregateConfiguration: Optional[CreateAggregateConfigurationTypeDef] = None + SizeInBytes: Optional[int] = None + +class OntapVolumeConfigurationTypeDef(BaseModel): + FlexCacheEndpointType: Optional[FlexCacheEndpointTypeType] = None + JunctionPath: Optional[str] = None + SecurityStyle: Optional[SecurityStyleType] = None + SizeInMegabytes: Optional[int] = None + StorageEfficiencyEnabled: Optional[bool] = None + StorageVirtualMachineId: Optional[str] = None + StorageVirtualMachineRoot: Optional[bool] = None + TieringPolicy: Optional[TieringPolicyTypeDef] = None + UUID: Optional[str] = None + OntapVolumeType: Optional[OntapVolumeTypeType] = None + SnapshotPolicy: Optional[str] = None + CopyTagsToBackups: Optional[bool] = None + SnaplockConfiguration: Optional[SnaplockConfigurationTypeDef] = None + VolumeStyle: Optional[VolumeStyleType] = None + AggregateConfiguration: Optional[AggregateConfigurationTypeDef] = None + SizeInBytes: Optional[int] = None + +class UpdateOntapVolumeConfigurationTypeDef(BaseModel): + JunctionPath: Optional[str] = None + SecurityStyle: Optional[SecurityStyleType] = None + SizeInMegabytes: Optional[int] = None + StorageEfficiencyEnabled: Optional[bool] = None + TieringPolicy: Optional[TieringPolicyTypeDef] = None + SnapshotPolicy: Optional[str] = None + CopyTagsToBackups: Optional[bool] = None + SnaplockConfiguration: Optional[UpdateSnaplockConfigurationTypeDef] = None + SizeInBytes: Optional[int] = None + +class CreateStorageVirtualMachineResponseTypeDef(BaseModel): + StorageVirtualMachine: StorageVirtualMachineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStorageVirtualMachinesResponseTypeDef(BaseModel): + StorageVirtualMachines: List[StorageVirtualMachineTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateStorageVirtualMachineResponseTypeDef(BaseModel): + StorageVirtualMachine: StorageVirtualMachineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFileSystemFromBackupRequestRequestTypeDef(BaseModel): + BackupId: str + SubnetIds: Sequence[str] + ClientRequestToken: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + WindowsConfiguration: Optional[CreateFileSystemWindowsConfigurationTypeDef] = None + LustreConfiguration: Optional[CreateFileSystemLustreConfigurationTypeDef] = None + StorageType: Optional[StorageTypeType] = None + KmsKeyId: Optional[str] = None + FileSystemTypeVersion: Optional[str] = None + OpenZFSConfiguration: Optional[CreateFileSystemOpenZFSConfigurationTypeDef] = None + StorageCapacity: Optional[int] = None + +class CreateFileSystemRequestRequestTypeDef(BaseModel): + FileSystemType: FileSystemTypeType + StorageCapacity: int + SubnetIds: Sequence[str] + ClientRequestToken: Optional[str] = None + StorageType: Optional[StorageTypeType] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + WindowsConfiguration: Optional[CreateFileSystemWindowsConfigurationTypeDef] = None + LustreConfiguration: Optional[CreateFileSystemLustreConfigurationTypeDef] = None + OntapConfiguration: Optional[CreateFileSystemOntapConfigurationTypeDef] = None + FileSystemTypeVersion: Optional[str] = None + OpenZFSConfiguration: Optional[CreateFileSystemOpenZFSConfigurationTypeDef] = None + +class CreateVolumeFromBackupRequestRequestTypeDef(BaseModel): + BackupId: str + Name: str + ClientRequestToken: Optional[str] = None + OntapConfiguration: Optional[CreateOntapVolumeConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVolumeRequestRequestTypeDef(BaseModel): + VolumeType: VolumeTypeType + Name: str + ClientRequestToken: Optional[str] = None + OntapConfiguration: Optional[CreateOntapVolumeConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + OpenZFSConfiguration: Optional[CreateOpenZFSVolumeConfigurationTypeDef] = None + +class VolumeTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + FileSystemId: Optional[str] = None + Lifecycle: Optional[VolumeLifecycleType] = None + Name: Optional[str] = None + OntapConfiguration: Optional[OntapVolumeConfigurationTypeDef] = None + ResourceARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + VolumeId: Optional[str] = None + VolumeType: Optional[VolumeTypeType] = None + LifecycleTransitionReason: Optional[LifecycleTransitionReasonTypeDef] = None + AdministrativeActions: Optional[List["AdministrativeActionTypeDef"]] = None + OpenZFSConfiguration: Optional[OpenZFSVolumeConfigurationTypeDef] = None + +class UpdateVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + ClientRequestToken: Optional[str] = None + OntapConfiguration: Optional[UpdateOntapVolumeConfigurationTypeDef] = None + Name: Optional[str] = None + OpenZFSConfiguration: Optional[UpdateOpenZFSVolumeConfigurationTypeDef] = None + +class AdministrativeActionTypeDef(BaseModel): + AdministrativeActionType: Optional[AdministrativeActionTypeType] = None + ProgressPercent: Optional[int] = None + RequestTime: Optional[datetime] = None + Status: Optional[StatusType] = None + TargetFileSystemValues: Optional[Dict[str, Any]] = None + FailureDetails: Optional[AdministrativeActionFailureDetailsTypeDef] = None + TargetVolumeValues: Optional[Dict[str, Any]] = None + TargetSnapshotValues: Optional[Dict[str, Any]] = None + TotalTransferBytes: Optional[int] = None + RemainingTransferBytes: Optional[int] = None + +class BackupTypeDef(BaseModel): + BackupId: str + Lifecycle: BackupLifecycleType + Type: BackupTypeType + CreationTime: datetime + FileSystem: "FileSystemTypeDef" + FailureDetails: Optional[BackupFailureDetailsTypeDef] = None + ProgressPercent: Optional[int] = None + KmsKeyId: Optional[str] = None + ResourceARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + DirectoryInformation: Optional[ActiveDirectoryBackupAttributesTypeDef] = None + OwnerId: Optional[str] = None + SourceBackupId: Optional[str] = None + SourceBackupRegion: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + Volume: Optional[VolumeTypeDef] = None + +class CreateVolumeFromBackupResponseTypeDef(BaseModel): + Volume: VolumeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVolumeResponseTypeDef(BaseModel): + Volume: VolumeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVolumesResponseTypeDef(BaseModel): + Volumes: List[VolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateVolumeResponseTypeDef(BaseModel): + Volume: VolumeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyBackupResponseTypeDef(BaseModel): + Backup: BackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackupResponseTypeDef(BaseModel): + Backup: BackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupsResponseTypeDef(BaseModel): + Backups: List[BackupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/fsx_constants.py b/aws_resource_validator/pydantic_models/fsx_constants.py new file mode 100644 index 00000000..a303c853 --- /dev/null +++ b/aws_resource_validator/pydantic_models/fsx_constants.py @@ -0,0 +1,529 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdministrativeActionTypeType = Literal["DOWNLOAD_DATA_FROM_BACKUP", + "FILE_SYSTEM_ALIAS_ASSOCIATION", + "FILE_SYSTEM_ALIAS_DISASSOCIATION", + "FILE_SYSTEM_UPDATE", + "IOPS_OPTIMIZATION", + "MISCONFIGURED_STATE_RECOVERY", + "RELEASE_NFS_V3_LOCKS", + "SNAPSHOT_UPDATE", + "STORAGE_OPTIMIZATION", + "STORAGE_TYPE_OPTIMIZATION", + "THROUGHPUT_OPTIMIZATION", + "VOLUME_INITIALIZE_WITH_SNAPSHOT", + "VOLUME_RESTORE", + "VOLUME_UPDATE", + "VOLUME_UPDATE_WITH_SNAPSHOT",] +AliasLifecycleType = Literal["AVAILABLE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING"] +AutoImportPolicyTypeType = Literal["NEW", "NEW_CHANGED", "NEW_CHANGED_DELETED", "NONE"] +AutocommitPeriodTypeType = Literal["DAYS", "HOURS", "MINUTES", "MONTHS", "NONE", "YEARS"] +BackupLifecycleType = Literal["AVAILABLE", "COPYING", "CREATING", "DELETED", "FAILED", "PENDING", "TRANSFERRING"] +BackupTypeType = Literal["AUTOMATIC", "AWS_BACKUP", "USER_INITIATED"] +DataCompressionTypeType = Literal["LZ4", "NONE"] +DataRepositoryLifecycleType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED", "MISCONFIGURED", "UPDATING"] +DataRepositoryTaskFilterNameType = Literal["data-repository-association-id", "file-cache-id", "file-system-id", "task-lifecycle"] +DataRepositoryTaskLifecycleType = Literal["CANCELED", "CANCELING", "EXECUTING", "FAILED", "PENDING", "SUCCEEDED"] +DataRepositoryTaskTypeType = Literal["AUTO_RELEASE_DATA", + "EXPORT_TO_REPOSITORY", + "IMPORT_METADATA_FROM_REPOSITORY", + "RELEASE_DATA_FROM_FILESYSTEM",] +DeleteFileSystemOpenZFSOptionType = Literal["DELETE_CHILD_VOLUMES_AND_SNAPSHOTS"] +DeleteOpenZFSVolumeOptionType = Literal["DELETE_CHILD_VOLUMES_AND_SNAPSHOTS"] +DescribeBackupsPaginatorName = Literal["describe_backups"] +DescribeFileSystemsPaginatorName = Literal["describe_file_systems"] +DescribeStorageVirtualMachinesPaginatorName = Literal["describe_storage_virtual_machines"] +DescribeVolumesPaginatorName = Literal["describe_volumes"] +DiskIopsConfigurationModeType = Literal["AUTOMATIC", "USER_PROVISIONED"] +DriveCacheTypeType = Literal["NONE", "READ"] +EventTypeType = Literal["CHANGED", "DELETED", "NEW"] +FileCacheLifecycleType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED", "UPDATING"] +FileCacheLustreDeploymentTypeType = Literal["CACHE_1"] +FileCacheTypeType = Literal["LUSTRE"] +FileSystemLifecycleType = Literal["AVAILABLE", + "CREATING", + "DELETING", + "FAILED", + "MISCONFIGURED", + "MISCONFIGURED_UNAVAILABLE", + "UPDATING",] +FileSystemMaintenanceOperationType = Literal["BACKING_UP", "PATCHING"] +FileSystemTypeType = Literal["LUSTRE", "ONTAP", "OPENZFS", "WINDOWS"] +FilterNameType = Literal["backup-type", + "data-repository-type", + "file-cache-id", + "file-cache-type", + "file-system-id", + "file-system-type", + "volume-id",] +FlexCacheEndpointTypeType = Literal["CACHE", "NONE", "ORIGIN"] +InputOntapVolumeTypeType = Literal["DP", "RW"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +LustreAccessAuditLogLevelType = Literal["DISABLED", "ERROR_ONLY", "WARN_ERROR", "WARN_ONLY"] +LustreDeploymentTypeType = Literal["PERSISTENT_1", "PERSISTENT_2", "SCRATCH_1", "SCRATCH_2"] +MetadataConfigurationModeType = Literal["AUTOMATIC", "USER_PROVISIONED"] +NfsVersionType = Literal["NFS3"] +OntapDeploymentTypeType = Literal["MULTI_AZ_1", "MULTI_AZ_2", "SINGLE_AZ_1", "SINGLE_AZ_2"] +OntapVolumeTypeType = Literal["DP", "LS", "RW"] +OpenZFSCopyStrategyType = Literal["CLONE", "FULL_COPY", "INCREMENTAL_COPY"] +OpenZFSDataCompressionTypeType = Literal["LZ4", "NONE", "ZSTD"] +OpenZFSDeploymentTypeType = Literal["MULTI_AZ_1", "SINGLE_AZ_1", "SINGLE_AZ_2", "SINGLE_AZ_HA_1", "SINGLE_AZ_HA_2"] +OpenZFSQuotaTypeType = Literal["GROUP", "USER"] +PrivilegedDeleteType = Literal["DISABLED", "ENABLED", "PERMANENTLY_DISABLED"] +ReportFormatType = Literal["REPORT_CSV_20191124"] +ReportScopeType = Literal["FAILED_FILES_ONLY"] +ResourceTypeType = Literal["FILE_SYSTEM", "VOLUME"] +RestoreOpenZFSVolumeOptionType = Literal["DELETE_CLONED_VOLUMES", "DELETE_INTERMEDIATE_SNAPSHOTS"] +RetentionPeriodTypeType = Literal["DAYS", "HOURS", "INFINITE", "MINUTES", "MONTHS", "SECONDS", "UNSPECIFIED", "YEARS"] +SecurityStyleType = Literal["MIXED", "NTFS", "UNIX"] +SnaplockTypeType = Literal["COMPLIANCE", "ENTERPRISE"] +SnapshotFilterNameType = Literal["file-system-id", "volume-id"] +SnapshotLifecycleType = Literal["AVAILABLE", "CREATING", "DELETING", "PENDING"] +StatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "OPTIMIZING", "PENDING", "UPDATED_OPTIMIZING"] +StorageTypeType = Literal["HDD", "SSD"] +StorageVirtualMachineFilterNameType = Literal["file-system-id"] +StorageVirtualMachineLifecycleType = Literal["CREATED", "CREATING", "DELETING", "FAILED", "MISCONFIGURED", "PENDING"] +StorageVirtualMachineRootVolumeSecurityStyleType = Literal["MIXED", "NTFS", "UNIX"] +StorageVirtualMachineSubtypeType = Literal["DEFAULT", "DP_DESTINATION", "SYNC_DESTINATION", "SYNC_SOURCE"] +TieringPolicyNameType = Literal["ALL", "AUTO", "NONE", "SNAPSHOT_ONLY"] +UnitType = Literal["DAYS"] +UpdateOpenZFSVolumeOptionType = Literal["DELETE_CLONED_VOLUMES", "DELETE_INTERMEDIATE_DATA", "DELETE_INTERMEDIATE_SNAPSHOTS"] +VolumeFilterNameType = Literal["file-system-id", "storage-virtual-machine-id"] +VolumeLifecycleType = Literal["AVAILABLE", "CREATED", "CREATING", "DELETING", "FAILED", "MISCONFIGURED", "PENDING"] +VolumeStyleType = Literal["FLEXGROUP", "FLEXVOL"] +VolumeTypeType = Literal["ONTAP", "OPENZFS"] +WindowsAccessAuditLogLevelType = Literal["DISABLED", "FAILURE_ONLY", "SUCCESS_AND_FAILURE", "SUCCESS_ONLY"] +WindowsDeploymentTypeType = Literal["MULTI_AZ_1", "SINGLE_AZ_1", "SINGLE_AZ_2"] +FSxServiceName = Literal["fsx"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_backups", + "describe_file_systems", + "describe_storage_virtual_machines", + "describe_volumes", + "list_tags_for_resource",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +S3DataRepositoryConfigurationUnionTypeDef = Union[ 'S3DataRepositoryConfigurationTypeDef', 'S3DataRepositoryConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/gamelift_classes.py b/aws_resource_validator/pydantic_models/gamelift_classes.py new file mode 100644 index 00000000..dd42ca81 --- /dev/null +++ b/aws_resource_validator/pydantic_models/gamelift_classes.py @@ -0,0 +1,1759 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.gamelift_constants import * + +class AcceptMatchInputRequestTypeDef(BaseModel): + TicketId: str + PlayerIds: Sequence[str] + AcceptanceType: AcceptanceTypeType + +class RoutingStrategyTypeDef(BaseModel): + Type: Optional[RoutingStrategyTypeType] = None + FleetId: Optional[str] = None + Message: Optional[str] = None + +class AnywhereConfigurationTypeDef(BaseModel): + Cost: str + +class AttributeValueOutputTypeDef(BaseModel): + S: Optional[str] = None + N: Optional[float] = None + SL: Optional[List[str]] = None + SDM: Optional[Dict[str, float]] = None + +class AttributeValueTypeDef(BaseModel): + S: Optional[str] = None + N: Optional[float] = None + SL: Optional[Sequence[str]] = None + SDM: Optional[Mapping[str, float]] = None + +class AwsCredentialsTypeDef(BaseModel): + AccessKeyId: Optional[str] = None + SecretAccessKey: Optional[str] = None + SessionToken: Optional[str] = None + +class BuildTypeDef(BaseModel): + BuildId: Optional[str] = None + BuildArn: Optional[str] = None + Name: Optional[str] = None + Version: Optional[str] = None + Status: Optional[BuildStatusType] = None + SizeOnDisk: Optional[int] = None + OperatingSystem: Optional[OperatingSystemType] = None + CreationTime: Optional[datetime] = None + ServerSdkVersion: Optional[str] = None + +class CertificateConfigurationTypeDef(BaseModel): + CertificateType: CertificateTypeType + +class ClaimFilterOptionTypeDef(BaseModel): + InstanceStatuses: Optional[Sequence[FilterInstanceStatusType]] = None + +class GameServerTypeDef(BaseModel): + GameServerGroupName: Optional[str] = None + GameServerGroupArn: Optional[str] = None + GameServerId: Optional[str] = None + InstanceId: Optional[str] = None + ConnectionInfo: Optional[str] = None + GameServerData: Optional[str] = None + ClaimStatus: Optional[Literal["CLAIMED"]] = None + UtilizationStatus: Optional[GameServerUtilizationStatusType] = None + RegistrationTime: Optional[datetime] = None + LastClaimTime: Optional[datetime] = None + LastHealthCheckTime: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ConnectionPortRangeTypeDef(BaseModel): + FromPort: int + ToPort: int + +class ContainerPortMappingTypeDef(BaseModel): + ContainerPort: Optional[int] = None + ConnectionPort: Optional[int] = None + Protocol: Optional[IpProtocolType] = None + +class ContainerDependencyTypeDef(BaseModel): + ContainerName: str + Condition: ContainerDependencyConditionType + +class ContainerEnvironmentTypeDef(BaseModel): + Name: str + Value: str + +class ContainerHealthCheckTypeDef(BaseModel): + Command: Sequence[str] + Interval: Optional[int] = None + Timeout: Optional[int] = None + Retries: Optional[int] = None + StartPeriod: Optional[int] = None + +class ContainerMemoryLimitsTypeDef(BaseModel): + SoftLimit: Optional[int] = None + HardLimit: Optional[int] = None + +class ContainerHealthCheckOutputTypeDef(BaseModel): + Command: List[str] + Interval: Optional[int] = None + Timeout: Optional[int] = None + Retries: Optional[int] = None + StartPeriod: Optional[int] = None + +class ContainerGroupDefinitionPropertyTypeDef(BaseModel): + SchedulingStrategy: Optional[ContainerSchedulingStrategyType] = None + ContainerGroupDefinitionName: Optional[str] = None + +class ContainerGroupsPerInstanceTypeDef(BaseModel): + DesiredReplicaContainerGroupsPerInstance: Optional[int] = None + MaxReplicaContainerGroupsPerInstance: Optional[int] = None + +class ContainerPortRangeTypeDef(BaseModel): + FromPort: int + ToPort: int + Protocol: IpProtocolType + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class S3LocationTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + RoleArn: Optional[str] = None + ObjectVersion: Optional[str] = None + +class IpPermissionTypeDef(BaseModel): + FromPort: int + ToPort: int + IpRange: str + Protocol: IpProtocolType + +class LocationConfigurationTypeDef(BaseModel): + Location: str + +class ResourceCreationLimitPolicyTypeDef(BaseModel): + NewGameSessionsPerCreator: Optional[int] = None + PolicyPeriodInMinutes: Optional[int] = None + +class LocationStateTypeDef(BaseModel): + Location: Optional[str] = None + Status: Optional[FleetStatusType] = None + +class InstanceDefinitionTypeDef(BaseModel): + InstanceType: GameServerGroupInstanceTypeType + WeightedCapacity: Optional[str] = None + +class LaunchTemplateSpecificationTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class GamePropertyTypeDef(BaseModel): + Key: str + Value: str + +class FilterConfigurationTypeDef(BaseModel): + AllowedLocations: Optional[Sequence[str]] = None + +class GameSessionQueueDestinationTypeDef(BaseModel): + DestinationArn: Optional[str] = None + +class PlayerLatencyPolicyTypeDef(BaseModel): + MaximumIndividualPlayerLatencyMilliseconds: Optional[int] = None + PolicyDurationSeconds: Optional[int] = None + +class PriorityConfigurationTypeDef(BaseModel): + PriorityOrder: Optional[Sequence[PriorityTypeType]] = None + LocationOrder: Optional[Sequence[str]] = None + +class LocationModelTypeDef(BaseModel): + LocationName: Optional[str] = None + LocationArn: Optional[str] = None + +class MatchmakingRuleSetTypeDef(BaseModel): + RuleSetBody: str + RuleSetName: Optional[str] = None + RuleSetArn: Optional[str] = None + CreationTime: Optional[datetime] = None + +class CreatePlayerSessionInputRequestTypeDef(BaseModel): + GameSessionId: str + PlayerId: str + PlayerData: Optional[str] = None + +class PlayerSessionTypeDef(BaseModel): + PlayerSessionId: Optional[str] = None + PlayerId: Optional[str] = None + GameSessionId: Optional[str] = None + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + CreationTime: Optional[datetime] = None + TerminationTime: Optional[datetime] = None + Status: Optional[PlayerSessionStatusType] = None + IpAddress: Optional[str] = None + DnsName: Optional[str] = None + Port: Optional[int] = None + PlayerData: Optional[str] = None + +class CreatePlayerSessionsInputRequestTypeDef(BaseModel): + GameSessionId: str + PlayerIds: Sequence[str] + PlayerDataMap: Optional[Mapping[str, str]] = None + +class CreateVpcPeeringAuthorizationInputRequestTypeDef(BaseModel): + GameLiftAwsAccountId: str + PeerVpcId: str + +class VpcPeeringAuthorizationTypeDef(BaseModel): + GameLiftAwsAccountId: Optional[str] = None + PeerVpcAwsAccountId: Optional[str] = None + PeerVpcId: Optional[str] = None + CreationTime: Optional[datetime] = None + ExpirationTime: Optional[datetime] = None + +class CreateVpcPeeringConnectionInputRequestTypeDef(BaseModel): + FleetId: str + PeerVpcAwsAccountId: str + PeerVpcId: str + +class DeleteAliasInputRequestTypeDef(BaseModel): + AliasId: str + +class DeleteBuildInputRequestTypeDef(BaseModel): + BuildId: str + +class DeleteContainerGroupDefinitionInputRequestTypeDef(BaseModel): + Name: str + +class DeleteFleetInputRequestTypeDef(BaseModel): + FleetId: str + +class DeleteFleetLocationsInputRequestTypeDef(BaseModel): + FleetId: str + Locations: Sequence[str] + +class DeleteGameServerGroupInputRequestTypeDef(BaseModel): + GameServerGroupName: str + DeleteOption: Optional[GameServerGroupDeleteOptionType] = None + +class DeleteGameSessionQueueInputRequestTypeDef(BaseModel): + Name: str + +class DeleteLocationInputRequestTypeDef(BaseModel): + LocationName: str + +class DeleteMatchmakingConfigurationInputRequestTypeDef(BaseModel): + Name: str + +class DeleteMatchmakingRuleSetInputRequestTypeDef(BaseModel): + Name: str + +class DeleteScalingPolicyInputRequestTypeDef(BaseModel): + Name: str + FleetId: str + +class DeleteScriptInputRequestTypeDef(BaseModel): + ScriptId: str + +class DeleteVpcPeeringAuthorizationInputRequestTypeDef(BaseModel): + GameLiftAwsAccountId: str + PeerVpcId: str + +class DeleteVpcPeeringConnectionInputRequestTypeDef(BaseModel): + FleetId: str + VpcPeeringConnectionId: str + +class DeregisterComputeInputRequestTypeDef(BaseModel): + FleetId: str + ComputeName: str + +class DeregisterGameServerInputRequestTypeDef(BaseModel): + GameServerGroupName: str + GameServerId: str + +class DescribeAliasInputRequestTypeDef(BaseModel): + AliasId: str + +class DescribeBuildInputRequestTypeDef(BaseModel): + BuildId: str + +class DescribeComputeInputRequestTypeDef(BaseModel): + FleetId: str + ComputeName: str + +class DescribeContainerGroupDefinitionInputRequestTypeDef(BaseModel): + Name: str + +class DescribeEC2InstanceLimitsInputRequestTypeDef(BaseModel): + EC2InstanceType: Optional[EC2InstanceTypeType] = None + Location: Optional[str] = None + +class EC2InstanceLimitTypeDef(BaseModel): + EC2InstanceType: Optional[EC2InstanceTypeType] = None + CurrentInstances: Optional[int] = None + InstanceLimit: Optional[int] = None + Location: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeFleetAttributesInputRequestTypeDef(BaseModel): + FleetIds: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFleetCapacityInputRequestTypeDef(BaseModel): + FleetIds: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class EventTypeDef(BaseModel): + EventId: Optional[str] = None + ResourceId: Optional[str] = None + EventCode: Optional[EventCodeType] = None + Message: Optional[str] = None + EventTime: Optional[datetime] = None + PreSignedLogUrl: Optional[str] = None + Count: Optional[int] = None + +class DescribeFleetLocationAttributesInputRequestTypeDef(BaseModel): + FleetId: str + Locations: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFleetLocationCapacityInputRequestTypeDef(BaseModel): + FleetId: str + Location: str + +class DescribeFleetLocationUtilizationInputRequestTypeDef(BaseModel): + FleetId: str + Location: str + +class FleetUtilizationTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + ActiveServerProcessCount: Optional[int] = None + ActiveGameSessionCount: Optional[int] = None + CurrentPlayerSessionCount: Optional[int] = None + MaximumPlayerSessionCount: Optional[int] = None + Location: Optional[str] = None + +class DescribeFleetPortSettingsInputRequestTypeDef(BaseModel): + FleetId: str + Location: Optional[str] = None + +class DescribeFleetUtilizationInputRequestTypeDef(BaseModel): + FleetIds: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeGameServerGroupInputRequestTypeDef(BaseModel): + GameServerGroupName: str + +class DescribeGameServerInputRequestTypeDef(BaseModel): + GameServerGroupName: str + GameServerId: str + +class DescribeGameServerInstancesInputRequestTypeDef(BaseModel): + GameServerGroupName: str + InstanceIds: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class GameServerInstanceTypeDef(BaseModel): + GameServerGroupName: Optional[str] = None + GameServerGroupArn: Optional[str] = None + InstanceId: Optional[str] = None + InstanceStatus: Optional[GameServerInstanceStatusType] = None + +class DescribeGameSessionDetailsInputRequestTypeDef(BaseModel): + FleetId: Optional[str] = None + GameSessionId: Optional[str] = None + AliasId: Optional[str] = None + Location: Optional[str] = None + StatusFilter: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeGameSessionPlacementInputRequestTypeDef(BaseModel): + PlacementId: str + +class DescribeGameSessionQueuesInputRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeGameSessionsInputRequestTypeDef(BaseModel): + FleetId: Optional[str] = None + GameSessionId: Optional[str] = None + AliasId: Optional[str] = None + Location: Optional[str] = None + StatusFilter: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstancesInputRequestTypeDef(BaseModel): + FleetId: str + InstanceId: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + Location: Optional[str] = None + +class InstanceTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + InstanceId: Optional[str] = None + IpAddress: Optional[str] = None + DnsName: Optional[str] = None + OperatingSystem: Optional[OperatingSystemType] = None + Type: Optional[EC2InstanceTypeType] = None + Status: Optional[InstanceStatusType] = None + CreationTime: Optional[datetime] = None + Location: Optional[str] = None + +class DescribeMatchmakingConfigurationsInputRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + RuleSetName: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMatchmakingInputRequestTypeDef(BaseModel): + TicketIds: Sequence[str] + +class DescribeMatchmakingRuleSetsInputRequestTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribePlayerSessionsInputRequestTypeDef(BaseModel): + GameSessionId: Optional[str] = None + PlayerId: Optional[str] = None + PlayerSessionId: Optional[str] = None + PlayerSessionStatusFilter: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeRuntimeConfigurationInputRequestTypeDef(BaseModel): + FleetId: str + +class DescribeScalingPoliciesInputRequestTypeDef(BaseModel): + FleetId: str + StatusFilter: Optional[ScalingStatusTypeType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + Location: Optional[str] = None + +class DescribeScriptInputRequestTypeDef(BaseModel): + ScriptId: str + +class DescribeVpcPeeringConnectionsInputRequestTypeDef(BaseModel): + FleetId: Optional[str] = None + +class DesiredPlayerSessionTypeDef(BaseModel): + PlayerId: Optional[str] = None + PlayerData: Optional[str] = None + +class EC2InstanceCountsTypeDef(BaseModel): + DESIRED: Optional[int] = None + MINIMUM: Optional[int] = None + MAXIMUM: Optional[int] = None + PENDING: Optional[int] = None + ACTIVE: Optional[int] = None + IDLE: Optional[int] = None + TERMINATING: Optional[int] = None + +class FilterConfigurationExtraOutputTypeDef(BaseModel): + AllowedLocations: Optional[List[str]] = None + +class FilterConfigurationOutputTypeDef(BaseModel): + AllowedLocations: Optional[List[str]] = None + +class ReplicaContainerGroupCountsTypeDef(BaseModel): + PENDING: Optional[int] = None + ACTIVE: Optional[int] = None + IDLE: Optional[int] = None + TERMINATING: Optional[int] = None + +class TargetTrackingConfigurationTypeDef(BaseModel): + TargetValue: float + +class MatchedPlayerSessionTypeDef(BaseModel): + PlayerId: Optional[str] = None + PlayerSessionId: Optional[str] = None + +class PlacedPlayerSessionTypeDef(BaseModel): + PlayerId: Optional[str] = None + PlayerSessionId: Optional[str] = None + +class PlayerLatencyTypeDef(BaseModel): + PlayerId: Optional[str] = None + RegionIdentifier: Optional[str] = None + LatencyInMilliseconds: Optional[float] = None + +class PriorityConfigurationOutputTypeDef(BaseModel): + PriorityOrder: Optional[List[PriorityTypeType]] = None + LocationOrder: Optional[List[str]] = None + +class GetComputeAccessInputRequestTypeDef(BaseModel): + FleetId: str + ComputeName: str + +class GetComputeAuthTokenInputRequestTypeDef(BaseModel): + FleetId: str + ComputeName: str + +class GetGameSessionLogUrlInputRequestTypeDef(BaseModel): + GameSessionId: str + +class GetInstanceAccessInputRequestTypeDef(BaseModel): + FleetId: str + InstanceId: str + +class InstanceCredentialsTypeDef(BaseModel): + UserName: Optional[str] = None + Secret: Optional[str] = None + +class ListAliasesInputRequestTypeDef(BaseModel): + RoutingStrategyType: Optional[RoutingStrategyTypeType] = None + Name: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListBuildsInputRequestTypeDef(BaseModel): + Status: Optional[BuildStatusType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListComputeInputRequestTypeDef(BaseModel): + FleetId: str + Location: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListContainerGroupDefinitionsInputRequestTypeDef(BaseModel): + SchedulingStrategy: Optional[ContainerSchedulingStrategyType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListFleetsInputRequestTypeDef(BaseModel): + BuildId: Optional[str] = None + ScriptId: Optional[str] = None + ContainerGroupDefinitionName: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListGameServerGroupsInputRequestTypeDef(BaseModel): + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListGameServersInputRequestTypeDef(BaseModel): + GameServerGroupName: str + SortOrder: Optional[SortOrderType] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListLocationsInputRequestTypeDef(BaseModel): + Filters: Optional[Sequence[LocationFilterType]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListScriptsInputRequestTypeDef(BaseModel): + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class PriorityConfigurationExtraOutputTypeDef(BaseModel): + PriorityOrder: Optional[List[PriorityTypeType]] = None + LocationOrder: Optional[List[str]] = None + +class TargetConfigurationTypeDef(BaseModel): + TargetValue: float + +class RegisterComputeInputRequestTypeDef(BaseModel): + FleetId: str + ComputeName: str + CertificatePath: Optional[str] = None + DnsName: Optional[str] = None + IpAddress: Optional[str] = None + Location: Optional[str] = None + +class RegisterGameServerInputRequestTypeDef(BaseModel): + GameServerGroupName: str + GameServerId: str + InstanceId: str + ConnectionInfo: Optional[str] = None + GameServerData: Optional[str] = None + +class RequestUploadCredentialsInputRequestTypeDef(BaseModel): + BuildId: str + +class ResolveAliasInputRequestTypeDef(BaseModel): + AliasId: str + +class ResumeGameServerGroupInputRequestTypeDef(BaseModel): + GameServerGroupName: str + ResumeActions: Sequence[Literal["REPLACE_INSTANCE_TYPES"]] + +class ServerProcessTypeDef(BaseModel): + LaunchPath: str + ConcurrentExecutions: int + Parameters: Optional[str] = None + +class SearchGameSessionsInputRequestTypeDef(BaseModel): + FleetId: Optional[str] = None + AliasId: Optional[str] = None + Location: Optional[str] = None + FilterExpression: Optional[str] = None + SortExpression: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class StartFleetActionsInputRequestTypeDef(BaseModel): + FleetId: str + Actions: Sequence[Literal["AUTO_SCALING"]] + Location: Optional[str] = None + +class StopFleetActionsInputRequestTypeDef(BaseModel): + FleetId: str + Actions: Sequence[Literal["AUTO_SCALING"]] + Location: Optional[str] = None + +class StopGameSessionPlacementInputRequestTypeDef(BaseModel): + PlacementId: str + +class StopMatchmakingInputRequestTypeDef(BaseModel): + TicketId: str + +class SuspendGameServerGroupInputRequestTypeDef(BaseModel): + GameServerGroupName: str + SuspendActions: Sequence[Literal["REPLACE_INSTANCE_TYPES"]] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateBuildInputRequestTypeDef(BaseModel): + BuildId: str + Name: Optional[str] = None + Version: Optional[str] = None + +class UpdateFleetCapacityInputRequestTypeDef(BaseModel): + FleetId: str + DesiredInstances: Optional[int] = None + MinSize: Optional[int] = None + MaxSize: Optional[int] = None + Location: Optional[str] = None + +class UpdateGameServerInputRequestTypeDef(BaseModel): + GameServerGroupName: str + GameServerId: str + GameServerData: Optional[str] = None + UtilizationStatus: Optional[GameServerUtilizationStatusType] = None + HealthCheck: Optional[Literal["HEALTHY"]] = None + +class ValidateMatchmakingRuleSetInputRequestTypeDef(BaseModel): + RuleSetBody: str + +class VpcPeeringConnectionStatusTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class AliasTypeDef(BaseModel): + AliasId: Optional[str] = None + Name: Optional[str] = None + AliasArn: Optional[str] = None + Description: Optional[str] = None + RoutingStrategy: Optional[RoutingStrategyTypeDef] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class UpdateAliasInputRequestTypeDef(BaseModel): + AliasId: str + Name: Optional[str] = None + Description: Optional[str] = None + RoutingStrategy: Optional[RoutingStrategyTypeDef] = None + +class PlayerOutputTypeDef(BaseModel): + PlayerId: Optional[str] = None + PlayerAttributes: Optional[Dict[str, AttributeValueOutputTypeDef]] = None + Team: Optional[str] = None + LatencyInMs: Optional[Dict[str, int]] = None + +class PlayerTypeDef(BaseModel): + PlayerId: Optional[str] = None + PlayerAttributes: Optional[Mapping[str, AttributeValueTypeDef]] = None + Team: Optional[str] = None + LatencyInMs: Optional[Mapping[str, int]] = None + +class ClaimGameServerInputRequestTypeDef(BaseModel): + GameServerGroupName: str + GameServerId: Optional[str] = None + GameServerData: Optional[str] = None + FilterOption: Optional[ClaimFilterOptionTypeDef] = None + +class ClaimGameServerOutputTypeDef(BaseModel): + GameServer: GameServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBuildOutputTypeDef(BaseModel): + Build: BuildTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGameServerOutputTypeDef(BaseModel): + GameServer: GameServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetComputeAccessOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ComputeName: str + ComputeArn: str + Credentials: AwsCredentialsTypeDef + Target: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetComputeAuthTokenOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ComputeName: str + ComputeArn: str + AuthToken: str + ExpirationTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetGameSessionLogUrlOutputTypeDef(BaseModel): + PreSignedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuildsOutputTypeDef(BaseModel): + Builds: List[BuildTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFleetsOutputTypeDef(BaseModel): + FleetIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListGameServersOutputTypeDef(BaseModel): + GameServers: List[GameServerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutScalingPolicyOutputTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterGameServerOutputTypeDef(BaseModel): + GameServer: GameServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResolveAliasOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFleetActionsOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopFleetActionsOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBuildOutputTypeDef(BaseModel): + Build: BuildTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetAttributesOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetCapacityOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetPortSettingsOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGameServerOutputTypeDef(BaseModel): + GameServer: GameServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateMatchmakingRuleSetOutputTypeDef(BaseModel): + Valid: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ContainerGroupsConfigurationTypeDef(BaseModel): + ContainerGroupDefinitionNames: Sequence[str] + ConnectionPortRange: ConnectionPortRangeTypeDef + DesiredReplicaContainerGroupsPerInstance: Optional[int] = None + +class ContainerAttributesTypeDef(BaseModel): + ContainerPortMappings: Optional[List[ContainerPortMappingTypeDef]] = None + +class ContainerGroupsAttributesTypeDef(BaseModel): + ContainerGroupDefinitionProperties: Optional[ List[ContainerGroupDefinitionPropertyTypeDef] ] = None + ConnectionPortRange: Optional[ConnectionPortRangeTypeDef] = None + ContainerGroupsPerInstance: Optional[ContainerGroupsPerInstanceTypeDef] = None + +class ContainerPortConfigurationOutputTypeDef(BaseModel): + ContainerPortRanges: List[ContainerPortRangeTypeDef] + +class ContainerPortConfigurationTypeDef(BaseModel): + ContainerPortRanges: Sequence[ContainerPortRangeTypeDef] + +class CreateAliasInputRequestTypeDef(BaseModel): + Name: str + RoutingStrategy: RoutingStrategyTypeDef + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateLocationInputRequestTypeDef(BaseModel): + LocationName: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateMatchmakingRuleSetInputRequestTypeDef(BaseModel): + Name: str + RuleSetBody: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateBuildInputRequestTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + StorageLocation: Optional[S3LocationTypeDef] = None + OperatingSystem: Optional[OperatingSystemType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ServerSdkVersion: Optional[str] = None + +class CreateBuildOutputTypeDef(BaseModel): + Build: BuildTypeDef + UploadCredentials: AwsCredentialsTypeDef + StorageLocation: S3LocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScriptInputRequestTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + StorageLocation: Optional[S3LocationTypeDef] = None + ZipFile: Optional[BlobTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class RequestUploadCredentialsOutputTypeDef(BaseModel): + UploadCredentials: AwsCredentialsTypeDef + StorageLocation: S3LocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ScriptTypeDef(BaseModel): + ScriptId: Optional[str] = None + ScriptArn: Optional[str] = None + Name: Optional[str] = None + Version: Optional[str] = None + SizeOnDisk: Optional[int] = None + CreationTime: Optional[datetime] = None + StorageLocation: Optional[S3LocationTypeDef] = None + +class UpdateScriptInputRequestTypeDef(BaseModel): + ScriptId: str + Name: Optional[str] = None + Version: Optional[str] = None + StorageLocation: Optional[S3LocationTypeDef] = None + ZipFile: Optional[BlobTypeDef] = None + +class DescribeFleetPortSettingsOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + InboundPermissions: List[IpPermissionTypeDef] + UpdateStatus: Literal["PENDING_UPDATE"] + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetPortSettingsInputRequestTypeDef(BaseModel): + FleetId: str + InboundPermissionAuthorizations: Optional[Sequence[IpPermissionTypeDef]] = None + InboundPermissionRevocations: Optional[Sequence[IpPermissionTypeDef]] = None + +class CreateFleetLocationsInputRequestTypeDef(BaseModel): + FleetId: str + Locations: Sequence[LocationConfigurationTypeDef] + +class UpdateFleetAttributesInputRequestTypeDef(BaseModel): + FleetId: str + Name: Optional[str] = None + Description: Optional[str] = None + NewGameSessionProtectionPolicy: Optional[ProtectionPolicyType] = None + ResourceCreationLimitPolicy: Optional[ResourceCreationLimitPolicyTypeDef] = None + MetricGroups: Optional[Sequence[str]] = None + AnywhereConfiguration: Optional[AnywhereConfigurationTypeDef] = None + +class CreateFleetLocationsOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + LocationStates: List[LocationStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFleetLocationsOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + LocationStates: List[LocationStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LocationAttributesTypeDef(BaseModel): + LocationState: Optional[LocationStateTypeDef] = None + StoppedActions: Optional[List[Literal["AUTO_SCALING"]]] = None + UpdateStatus: Optional[Literal["PENDING_UPDATE"]] = None + +class GameServerGroupTypeDef(BaseModel): + GameServerGroupName: Optional[str] = None + GameServerGroupArn: Optional[str] = None + RoleArn: Optional[str] = None + InstanceDefinitions: Optional[List[InstanceDefinitionTypeDef]] = None + BalancingStrategy: Optional[BalancingStrategyType] = None + GameServerProtectionPolicy: Optional[GameServerProtectionPolicyType] = None + AutoScalingGroupArn: Optional[str] = None + Status: Optional[GameServerGroupStatusType] = None + StatusReason: Optional[str] = None + SuspendedActions: Optional[List[Literal["REPLACE_INSTANCE_TYPES"]]] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class UpdateGameServerGroupInputRequestTypeDef(BaseModel): + GameServerGroupName: str + RoleArn: Optional[str] = None + InstanceDefinitions: Optional[Sequence[InstanceDefinitionTypeDef]] = None + GameServerProtectionPolicy: Optional[GameServerProtectionPolicyType] = None + BalancingStrategy: Optional[BalancingStrategyType] = None + +class CreateGameSessionInputRequestTypeDef(BaseModel): + MaximumPlayerSessionCount: int + FleetId: Optional[str] = None + AliasId: Optional[str] = None + Name: Optional[str] = None + GameProperties: Optional[Sequence[GamePropertyTypeDef]] = None + CreatorId: Optional[str] = None + GameSessionId: Optional[str] = None + IdempotencyToken: Optional[str] = None + GameSessionData: Optional[str] = None + Location: Optional[str] = None + +class CreateMatchmakingConfigurationInputRequestTypeDef(BaseModel): + Name: str + RequestTimeoutSeconds: int + AcceptanceRequired: bool + RuleSetName: str + Description: Optional[str] = None + GameSessionQueueArns: Optional[Sequence[str]] = None + AcceptanceTimeoutSeconds: Optional[int] = None + NotificationTarget: Optional[str] = None + AdditionalPlayerCount: Optional[int] = None + CustomEventData: Optional[str] = None + GameProperties: Optional[Sequence[GamePropertyTypeDef]] = None + GameSessionData: Optional[str] = None + BackfillMode: Optional[BackfillModeType] = None + FlexMatchMode: Optional[FlexMatchModeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GameSessionTypeDef(BaseModel): + GameSessionId: Optional[str] = None + Name: Optional[str] = None + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + CreationTime: Optional[datetime] = None + TerminationTime: Optional[datetime] = None + CurrentPlayerSessionCount: Optional[int] = None + MaximumPlayerSessionCount: Optional[int] = None + Status: Optional[GameSessionStatusType] = None + StatusReason: Optional[Literal["INTERRUPTED"]] = None + GameProperties: Optional[List[GamePropertyTypeDef]] = None + IpAddress: Optional[str] = None + DnsName: Optional[str] = None + Port: Optional[int] = None + PlayerSessionCreationPolicy: Optional[PlayerSessionCreationPolicyType] = None + CreatorId: Optional[str] = None + GameSessionData: Optional[str] = None + MatchmakerData: Optional[str] = None + Location: Optional[str] = None + +class MatchmakingConfigurationTypeDef(BaseModel): + Name: Optional[str] = None + ConfigurationArn: Optional[str] = None + Description: Optional[str] = None + GameSessionQueueArns: Optional[List[str]] = None + RequestTimeoutSeconds: Optional[int] = None + AcceptanceTimeoutSeconds: Optional[int] = None + AcceptanceRequired: Optional[bool] = None + RuleSetName: Optional[str] = None + RuleSetArn: Optional[str] = None + NotificationTarget: Optional[str] = None + AdditionalPlayerCount: Optional[int] = None + CustomEventData: Optional[str] = None + CreationTime: Optional[datetime] = None + GameProperties: Optional[List[GamePropertyTypeDef]] = None + GameSessionData: Optional[str] = None + BackfillMode: Optional[BackfillModeType] = None + FlexMatchMode: Optional[FlexMatchModeType] = None + +class UpdateGameSessionInputRequestTypeDef(BaseModel): + GameSessionId: str + MaximumPlayerSessionCount: Optional[int] = None + Name: Optional[str] = None + PlayerSessionCreationPolicy: Optional[PlayerSessionCreationPolicyType] = None + ProtectionPolicy: Optional[ProtectionPolicyType] = None + GameProperties: Optional[Sequence[GamePropertyTypeDef]] = None + +class UpdateMatchmakingConfigurationInputRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + GameSessionQueueArns: Optional[Sequence[str]] = None + RequestTimeoutSeconds: Optional[int] = None + AcceptanceTimeoutSeconds: Optional[int] = None + AcceptanceRequired: Optional[bool] = None + RuleSetName: Optional[str] = None + NotificationTarget: Optional[str] = None + AdditionalPlayerCount: Optional[int] = None + CustomEventData: Optional[str] = None + GameProperties: Optional[Sequence[GamePropertyTypeDef]] = None + GameSessionData: Optional[str] = None + BackfillMode: Optional[BackfillModeType] = None + FlexMatchMode: Optional[FlexMatchModeType] = None + +class CreateGameSessionQueueInputRequestTypeDef(BaseModel): + Name: str + TimeoutInSeconds: Optional[int] = None + PlayerLatencyPolicies: Optional[Sequence[PlayerLatencyPolicyTypeDef]] = None + Destinations: Optional[Sequence[GameSessionQueueDestinationTypeDef]] = None + FilterConfiguration: Optional[FilterConfigurationTypeDef] = None + PriorityConfiguration: Optional[PriorityConfigurationTypeDef] = None + CustomEventData: Optional[str] = None + NotificationTarget: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateGameSessionQueueInputRequestTypeDef(BaseModel): + Name: str + TimeoutInSeconds: Optional[int] = None + PlayerLatencyPolicies: Optional[Sequence[PlayerLatencyPolicyTypeDef]] = None + Destinations: Optional[Sequence[GameSessionQueueDestinationTypeDef]] = None + FilterConfiguration: Optional[FilterConfigurationTypeDef] = None + PriorityConfiguration: Optional[PriorityConfigurationTypeDef] = None + CustomEventData: Optional[str] = None + NotificationTarget: Optional[str] = None + +class CreateLocationOutputTypeDef(BaseModel): + Location: LocationModelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLocationsOutputTypeDef(BaseModel): + Locations: List[LocationModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateMatchmakingRuleSetOutputTypeDef(BaseModel): + RuleSet: MatchmakingRuleSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMatchmakingRuleSetsOutputTypeDef(BaseModel): + RuleSets: List[MatchmakingRuleSetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreatePlayerSessionOutputTypeDef(BaseModel): + PlayerSession: PlayerSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePlayerSessionsOutputTypeDef(BaseModel): + PlayerSessions: List[PlayerSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePlayerSessionsOutputTypeDef(BaseModel): + PlayerSessions: List[PlayerSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateVpcPeeringAuthorizationOutputTypeDef(BaseModel): + VpcPeeringAuthorization: VpcPeeringAuthorizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcPeeringAuthorizationsOutputTypeDef(BaseModel): + VpcPeeringAuthorizations: List[VpcPeeringAuthorizationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEC2InstanceLimitsOutputTypeDef(BaseModel): + EC2InstanceLimits: List[EC2InstanceLimitTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetAttributesInputDescribeFleetAttributesPaginateTypeDef(BaseModel): + FleetIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetCapacityInputDescribeFleetCapacityPaginateTypeDef(BaseModel): + FleetIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetUtilizationInputDescribeFleetUtilizationPaginateTypeDef(BaseModel): + FleetIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGameServerInstancesInputDescribeGameServerInstancesPaginateTypeDef(BaseModel): + GameServerGroupName: str + InstanceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGameSessionDetailsInputDescribeGameSessionDetailsPaginateTypeDef(BaseModel): + FleetId: Optional[str] = None + GameSessionId: Optional[str] = None + AliasId: Optional[str] = None + Location: Optional[str] = None + StatusFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGameSessionQueuesInputDescribeGameSessionQueuesPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGameSessionsInputDescribeGameSessionsPaginateTypeDef(BaseModel): + FleetId: Optional[str] = None + GameSessionId: Optional[str] = None + AliasId: Optional[str] = None + Location: Optional[str] = None + StatusFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstancesInputDescribeInstancesPaginateTypeDef(BaseModel): + FleetId: str + InstanceId: Optional[str] = None + Location: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMatchmakingConfigurationsInputDescribeMatchmakingConfigurationsPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + RuleSetName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMatchmakingRuleSetsInputDescribeMatchmakingRuleSetsPaginateTypeDef(BaseModel): + Names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePlayerSessionsInputDescribePlayerSessionsPaginateTypeDef(BaseModel): + GameSessionId: Optional[str] = None + PlayerId: Optional[str] = None + PlayerSessionId: Optional[str] = None + PlayerSessionStatusFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScalingPoliciesInputDescribeScalingPoliciesPaginateTypeDef(BaseModel): + FleetId: str + StatusFilter: Optional[ScalingStatusTypeType] = None + Location: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAliasesInputListAliasesPaginateTypeDef(BaseModel): + RoutingStrategyType: Optional[RoutingStrategyTypeType] = None + Name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBuildsInputListBuildsPaginateTypeDef(BaseModel): + Status: Optional[BuildStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComputeInputListComputePaginateTypeDef(BaseModel): + FleetId: str + Location: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContainerGroupDefinitionsInputListContainerGroupDefinitionsPaginateTypeDef(BaseModel): + SchedulingStrategy: Optional[ContainerSchedulingStrategyType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetsInputListFleetsPaginateTypeDef(BaseModel): + BuildId: Optional[str] = None + ScriptId: Optional[str] = None + ContainerGroupDefinitionName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGameServerGroupsInputListGameServerGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGameServersInputListGameServersPaginateTypeDef(BaseModel): + GameServerGroupName: str + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLocationsInputListLocationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[LocationFilterType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScriptsInputListScriptsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchGameSessionsInputSearchGameSessionsPaginateTypeDef(BaseModel): + FleetId: Optional[str] = None + AliasId: Optional[str] = None + Location: Optional[str] = None + FilterExpression: Optional[str] = None + SortExpression: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetEventsInputDescribeFleetEventsPaginateTypeDef(BaseModel): + FleetId: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFleetEventsInputRequestTypeDef(BaseModel): + FleetId: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeFleetEventsOutputTypeDef(BaseModel): + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFleetLocationUtilizationOutputTypeDef(BaseModel): + FleetUtilization: FleetUtilizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetUtilizationOutputTypeDef(BaseModel): + FleetUtilization: List[FleetUtilizationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeGameServerInstancesOutputTypeDef(BaseModel): + GameServerInstances: List[GameServerInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstancesOutputTypeDef(BaseModel): + Instances: List[InstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FleetCapacityTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + InstanceType: Optional[EC2InstanceTypeType] = None + InstanceCounts: Optional[EC2InstanceCountsTypeDef] = None + Location: Optional[str] = None + ReplicaContainerGroupCounts: Optional[ReplicaContainerGroupCountsTypeDef] = None + +class GameServerGroupAutoScalingPolicyTypeDef(BaseModel): + TargetTrackingConfiguration: TargetTrackingConfigurationTypeDef + EstimatedInstanceWarmup: Optional[int] = None + +class GameSessionConnectionInfoTypeDef(BaseModel): + GameSessionArn: Optional[str] = None + IpAddress: Optional[str] = None + DnsName: Optional[str] = None + Port: Optional[int] = None + MatchedPlayerSessions: Optional[List[MatchedPlayerSessionTypeDef]] = None + +class GameSessionPlacementTypeDef(BaseModel): + PlacementId: Optional[str] = None + GameSessionQueueName: Optional[str] = None + Status: Optional[GameSessionPlacementStateType] = None + GameProperties: Optional[List[GamePropertyTypeDef]] = None + MaximumPlayerSessionCount: Optional[int] = None + GameSessionName: Optional[str] = None + GameSessionId: Optional[str] = None + GameSessionArn: Optional[str] = None + GameSessionRegion: Optional[str] = None + PlayerLatencies: Optional[List[PlayerLatencyTypeDef]] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + IpAddress: Optional[str] = None + DnsName: Optional[str] = None + Port: Optional[int] = None + PlacedPlayerSessions: Optional[List[PlacedPlayerSessionTypeDef]] = None + GameSessionData: Optional[str] = None + MatchmakerData: Optional[str] = None + +class StartGameSessionPlacementInputRequestTypeDef(BaseModel): + PlacementId: str + GameSessionQueueName: str + MaximumPlayerSessionCount: int + GameProperties: Optional[Sequence[GamePropertyTypeDef]] = None + GameSessionName: Optional[str] = None + PlayerLatencies: Optional[Sequence[PlayerLatencyTypeDef]] = None + DesiredPlayerSessions: Optional[Sequence[DesiredPlayerSessionTypeDef]] = None + GameSessionData: Optional[str] = None + +class GameSessionQueueTypeDef(BaseModel): + Name: Optional[str] = None + GameSessionQueueArn: Optional[str] = None + TimeoutInSeconds: Optional[int] = None + PlayerLatencyPolicies: Optional[List[PlayerLatencyPolicyTypeDef]] = None + Destinations: Optional[List[GameSessionQueueDestinationTypeDef]] = None + FilterConfiguration: Optional[FilterConfigurationOutputTypeDef] = None + PriorityConfiguration: Optional[PriorityConfigurationOutputTypeDef] = None + CustomEventData: Optional[str] = None + NotificationTarget: Optional[str] = None + +class InstanceAccessTypeDef(BaseModel): + FleetId: Optional[str] = None + InstanceId: Optional[str] = None + IpAddress: Optional[str] = None + OperatingSystem: Optional[OperatingSystemType] = None + Credentials: Optional[InstanceCredentialsTypeDef] = None + +class PutScalingPolicyInputRequestTypeDef(BaseModel): + Name: str + FleetId: str + MetricName: MetricNameType + ScalingAdjustment: Optional[int] = None + ScalingAdjustmentType: Optional[ScalingAdjustmentTypeType] = None + Threshold: Optional[float] = None + ComparisonOperator: Optional[ComparisonOperatorTypeType] = None + EvaluationPeriods: Optional[int] = None + PolicyType: Optional[PolicyTypeType] = None + TargetConfiguration: Optional[TargetConfigurationTypeDef] = None + +class ScalingPolicyTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ScalingStatusTypeType] = None + ScalingAdjustment: Optional[int] = None + ScalingAdjustmentType: Optional[ScalingAdjustmentTypeType] = None + ComparisonOperator: Optional[ComparisonOperatorTypeType] = None + Threshold: Optional[float] = None + EvaluationPeriods: Optional[int] = None + MetricName: Optional[MetricNameType] = None + PolicyType: Optional[PolicyTypeType] = None + TargetConfiguration: Optional[TargetConfigurationTypeDef] = None + UpdateStatus: Optional[Literal["PENDING_UPDATE"]] = None + Location: Optional[str] = None + +class RuntimeConfigurationOutputTypeDef(BaseModel): + ServerProcesses: Optional[List[ServerProcessTypeDef]] = None + MaxConcurrentGameSessionActivations: Optional[int] = None + GameSessionActivationTimeoutSeconds: Optional[int] = None + +class RuntimeConfigurationTypeDef(BaseModel): + ServerProcesses: Optional[Sequence[ServerProcessTypeDef]] = None + MaxConcurrentGameSessionActivations: Optional[int] = None + GameSessionActivationTimeoutSeconds: Optional[int] = None + +class VpcPeeringConnectionTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + IpV4CidrBlock: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + Status: Optional[VpcPeeringConnectionStatusTypeDef] = None + PeerVpcId: Optional[str] = None + GameLiftVpcId: Optional[str] = None + +class CreateAliasOutputTypeDef(BaseModel): + Alias: AliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAliasOutputTypeDef(BaseModel): + Alias: AliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesOutputTypeDef(BaseModel): + Aliases: List[AliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateAliasOutputTypeDef(BaseModel): + Alias: AliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ComputeTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + ComputeName: Optional[str] = None + ComputeArn: Optional[str] = None + IpAddress: Optional[str] = None + DnsName: Optional[str] = None + ComputeStatus: Optional[ComputeStatusType] = None + Location: Optional[str] = None + CreationTime: Optional[datetime] = None + OperatingSystem: Optional[OperatingSystemType] = None + Type: Optional[EC2InstanceTypeType] = None + GameLiftServiceSdkEndpoint: Optional[str] = None + GameLiftAgentEndpoint: Optional[str] = None + InstanceId: Optional[str] = None + ContainerAttributes: Optional[ContainerAttributesTypeDef] = None + +class FleetAttributesTypeDef(BaseModel): + FleetId: Optional[str] = None + FleetArn: Optional[str] = None + FleetType: Optional[FleetTypeType] = None + InstanceType: Optional[EC2InstanceTypeType] = None + Description: Optional[str] = None + Name: Optional[str] = None + CreationTime: Optional[datetime] = None + TerminationTime: Optional[datetime] = None + Status: Optional[FleetStatusType] = None + BuildId: Optional[str] = None + BuildArn: Optional[str] = None + ScriptId: Optional[str] = None + ScriptArn: Optional[str] = None + ServerLaunchPath: Optional[str] = None + ServerLaunchParameters: Optional[str] = None + LogPaths: Optional[List[str]] = None + NewGameSessionProtectionPolicy: Optional[ProtectionPolicyType] = None + OperatingSystem: Optional[OperatingSystemType] = None + ResourceCreationLimitPolicy: Optional[ResourceCreationLimitPolicyTypeDef] = None + MetricGroups: Optional[List[str]] = None + StoppedActions: Optional[List[Literal["AUTO_SCALING"]]] = None + InstanceRoleArn: Optional[str] = None + CertificateConfiguration: Optional[CertificateConfigurationTypeDef] = None + ComputeType: Optional[ComputeTypeType] = None + AnywhereConfiguration: Optional[AnywhereConfigurationTypeDef] = None + InstanceRoleCredentialsProvider: Optional[Literal["SHARED_CREDENTIAL_FILE"]] = None + ContainerGroupsAttributes: Optional[ContainerGroupsAttributesTypeDef] = None + +class ContainerDefinitionTypeDef(BaseModel): + ContainerName: str + ImageUri: str + ResolvedImageDigest: Optional[str] = None + MemoryLimits: Optional[ContainerMemoryLimitsTypeDef] = None + PortConfiguration: Optional[ContainerPortConfigurationOutputTypeDef] = None + Cpu: Optional[int] = None + HealthCheck: Optional[ContainerHealthCheckOutputTypeDef] = None + Command: Optional[List[str]] = None + Essential: Optional[bool] = None + EntryPoint: Optional[List[str]] = None + WorkingDirectory: Optional[str] = None + Environment: Optional[List[ContainerEnvironmentTypeDef]] = None + DependsOn: Optional[List[ContainerDependencyTypeDef]] = None + +class ContainerDefinitionInputTypeDef(BaseModel): + ContainerName: str + ImageUri: str + MemoryLimits: Optional[ContainerMemoryLimitsTypeDef] = None + PortConfiguration: Optional[ContainerPortConfigurationTypeDef] = None + Cpu: Optional[int] = None + HealthCheck: Optional[ContainerHealthCheckTypeDef] = None + Command: Optional[Sequence[str]] = None + Essential: Optional[bool] = None + EntryPoint: Optional[Sequence[str]] = None + WorkingDirectory: Optional[str] = None + Environment: Optional[Sequence[ContainerEnvironmentTypeDef]] = None + DependsOn: Optional[Sequence[ContainerDependencyTypeDef]] = None + +class CreateScriptOutputTypeDef(BaseModel): + Script: ScriptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScriptOutputTypeDef(BaseModel): + Script: ScriptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListScriptsOutputTypeDef(BaseModel): + Scripts: List[ScriptTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateScriptOutputTypeDef(BaseModel): + Script: ScriptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetLocationAttributesOutputTypeDef(BaseModel): + FleetId: str + FleetArn: str + LocationAttributes: List[LocationAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateGameServerGroupOutputTypeDef(BaseModel): + GameServerGroup: GameServerGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGameServerGroupOutputTypeDef(BaseModel): + GameServerGroup: GameServerGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGameServerGroupOutputTypeDef(BaseModel): + GameServerGroup: GameServerGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGameServerGroupsOutputTypeDef(BaseModel): + GameServerGroups: List[GameServerGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ResumeGameServerGroupOutputTypeDef(BaseModel): + GameServerGroup: GameServerGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SuspendGameServerGroupOutputTypeDef(BaseModel): + GameServerGroup: GameServerGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGameServerGroupOutputTypeDef(BaseModel): + GameServerGroup: GameServerGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGameSessionOutputTypeDef(BaseModel): + GameSession: GameSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGameSessionsOutputTypeDef(BaseModel): + GameSessions: List[GameSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GameSessionDetailTypeDef(BaseModel): + GameSession: Optional[GameSessionTypeDef] = None + ProtectionPolicy: Optional[ProtectionPolicyType] = None + +class SearchGameSessionsOutputTypeDef(BaseModel): + GameSessions: List[GameSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateGameSessionOutputTypeDef(BaseModel): + GameSession: GameSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMatchmakingConfigurationOutputTypeDef(BaseModel): + Configuration: MatchmakingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMatchmakingConfigurationsOutputTypeDef(BaseModel): + Configurations: List[MatchmakingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateMatchmakingConfigurationOutputTypeDef(BaseModel): + Configuration: MatchmakingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetCapacityOutputTypeDef(BaseModel): + FleetCapacity: List[FleetCapacityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFleetLocationCapacityOutputTypeDef(BaseModel): + FleetCapacity: FleetCapacityTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGameServerGroupInputRequestTypeDef(BaseModel): + GameServerGroupName: str + RoleArn: str + MinSize: int + MaxSize: int + LaunchTemplate: LaunchTemplateSpecificationTypeDef + InstanceDefinitions: Sequence[InstanceDefinitionTypeDef] + AutoScalingPolicy: Optional[GameServerGroupAutoScalingPolicyTypeDef] = None + BalancingStrategy: Optional[BalancingStrategyType] = None + GameServerProtectionPolicy: Optional[GameServerProtectionPolicyType] = None + VpcSubnets: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MatchmakingTicketTypeDef(BaseModel): + TicketId: Optional[str] = None + ConfigurationName: Optional[str] = None + ConfigurationArn: Optional[str] = None + Status: Optional[MatchmakingConfigurationStatusType] = None + StatusReason: Optional[str] = None + StatusMessage: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Players: Optional[List[PlayerOutputTypeDef]] = None + GameSessionConnectionInfo: Optional[GameSessionConnectionInfoTypeDef] = None + EstimatedWaitTime: Optional[int] = None + +class DescribeGameSessionPlacementOutputTypeDef(BaseModel): + GameSessionPlacement: GameSessionPlacementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartGameSessionPlacementOutputTypeDef(BaseModel): + GameSessionPlacement: GameSessionPlacementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopGameSessionPlacementOutputTypeDef(BaseModel): + GameSessionPlacement: GameSessionPlacementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGameSessionQueueOutputTypeDef(BaseModel): + GameSessionQueue: GameSessionQueueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGameSessionQueuesOutputTypeDef(BaseModel): + GameSessionQueues: List[GameSessionQueueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateGameSessionQueueOutputTypeDef(BaseModel): + GameSessionQueue: GameSessionQueueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceAccessOutputTypeDef(BaseModel): + InstanceAccess: InstanceAccessTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScalingPoliciesOutputTypeDef(BaseModel): + ScalingPolicies: List[ScalingPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRuntimeConfigurationOutputTypeDef(BaseModel): + RuntimeConfiguration: RuntimeConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuntimeConfigurationOutputTypeDef(BaseModel): + RuntimeConfiguration: RuntimeConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetInputRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + BuildId: Optional[str] = None + ScriptId: Optional[str] = None + ServerLaunchPath: Optional[str] = None + ServerLaunchParameters: Optional[str] = None + LogPaths: Optional[Sequence[str]] = None + EC2InstanceType: Optional[EC2InstanceTypeType] = None + EC2InboundPermissions: Optional[Sequence[IpPermissionTypeDef]] = None + NewGameSessionProtectionPolicy: Optional[ProtectionPolicyType] = None + RuntimeConfiguration: Optional[RuntimeConfigurationTypeDef] = None + ResourceCreationLimitPolicy: Optional[ResourceCreationLimitPolicyTypeDef] = None + MetricGroups: Optional[Sequence[str]] = None + PeerVpcAwsAccountId: Optional[str] = None + PeerVpcId: Optional[str] = None + FleetType: Optional[FleetTypeType] = None + InstanceRoleArn: Optional[str] = None + CertificateConfiguration: Optional[CertificateConfigurationTypeDef] = None + Locations: Optional[Sequence[LocationConfigurationTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ComputeType: Optional[ComputeTypeType] = None + AnywhereConfiguration: Optional[AnywhereConfigurationTypeDef] = None + InstanceRoleCredentialsProvider: Optional[Literal["SHARED_CREDENTIAL_FILE"]] = None + ContainerGroupsConfiguration: Optional[ContainerGroupsConfigurationTypeDef] = None + +class UpdateRuntimeConfigurationInputRequestTypeDef(BaseModel): + FleetId: str + RuntimeConfiguration: RuntimeConfigurationTypeDef + +class DescribeVpcPeeringConnectionsOutputTypeDef(BaseModel): + VpcPeeringConnections: List[VpcPeeringConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMatchBackfillInputRequestTypeDef(BaseModel): + ConfigurationName: str + Players: Sequence[PlayerUnionTypeDef] + TicketId: Optional[str] = None + GameSessionArn: Optional[str] = None + +class StartMatchmakingInputRequestTypeDef(BaseModel): + ConfigurationName: str + Players: Sequence[PlayerUnionTypeDef] + TicketId: Optional[str] = None + +class DescribeComputeOutputTypeDef(BaseModel): + Compute: ComputeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListComputeOutputTypeDef(BaseModel): + ComputeList: List[ComputeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RegisterComputeOutputTypeDef(BaseModel): + Compute: ComputeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetOutputTypeDef(BaseModel): + FleetAttributes: FleetAttributesTypeDef + LocationStates: List[LocationStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetAttributesOutputTypeDef(BaseModel): + FleetAttributes: List[FleetAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ContainerGroupDefinitionTypeDef(BaseModel): + ContainerGroupDefinitionArn: Optional[str] = None + CreationTime: Optional[datetime] = None + OperatingSystem: Optional[Literal["AMAZON_LINUX_2023"]] = None + Name: Optional[str] = None + SchedulingStrategy: Optional[ContainerSchedulingStrategyType] = None + TotalMemoryLimit: Optional[int] = None + TotalCpuLimit: Optional[int] = None + ContainerDefinitions: Optional[List[ContainerDefinitionTypeDef]] = None + Status: Optional[ContainerGroupDefinitionStatusType] = None + StatusReason: Optional[str] = None + +class CreateContainerGroupDefinitionInputRequestTypeDef(BaseModel): + Name: str + TotalMemoryLimit: int + TotalCpuLimit: int + ContainerDefinitions: Sequence[ContainerDefinitionInputTypeDef] + OperatingSystem: Literal["AMAZON_LINUX_2023"] + SchedulingStrategy: Optional[ContainerSchedulingStrategyType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeGameSessionDetailsOutputTypeDef(BaseModel): + GameSessionDetails: List[GameSessionDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMatchmakingOutputTypeDef(BaseModel): + TicketList: List[MatchmakingTicketTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMatchBackfillOutputTypeDef(BaseModel): + MatchmakingTicket: MatchmakingTicketTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartMatchmakingOutputTypeDef(BaseModel): + MatchmakingTicket: MatchmakingTicketTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContainerGroupDefinitionOutputTypeDef(BaseModel): + ContainerGroupDefinition: ContainerGroupDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContainerGroupDefinitionOutputTypeDef(BaseModel): + ContainerGroupDefinition: ContainerGroupDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListContainerGroupDefinitionsOutputTypeDef(BaseModel): + ContainerGroupDefinitions: List[ContainerGroupDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/gamelift_constants.py b/aws_resource_validator/pydantic_models/gamelift_constants.py new file mode 100644 index 00000000..ca1262bb --- /dev/null +++ b/aws_resource_validator/pydantic_models/gamelift_constants.py @@ -0,0 +1,845 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceptanceTypeType = Literal["ACCEPT", "REJECT"] +BackfillModeType = Literal["AUTOMATIC", "MANUAL"] +BalancingStrategyType = Literal["ON_DEMAND_ONLY", "SPOT_ONLY", "SPOT_PREFERRED"] +BuildStatusType = Literal["FAILED", "INITIALIZED", "READY"] +CertificateTypeType = Literal["DISABLED", "GENERATED"] +ComparisonOperatorTypeType = Literal["GreaterThanOrEqualToThreshold", + "GreaterThanThreshold", + "LessThanOrEqualToThreshold", + "LessThanThreshold",] +ComputeStatusType = Literal["ACTIVE", "PENDING", "TERMINATING"] +ComputeTypeType = Literal["ANYWHERE", "CONTAINER", "EC2"] +ContainerDependencyConditionType = Literal["COMPLETE", "HEALTHY", "START", "SUCCESS"] +ContainerGroupDefinitionStatusType = Literal["COPYING", "FAILED", "READY"] +ContainerOperatingSystemType = Literal["AMAZON_LINUX_2023"] +ContainerSchedulingStrategyType = Literal["DAEMON", "REPLICA"] +DescribeFleetAttributesPaginatorName = Literal["describe_fleet_attributes"] +DescribeFleetCapacityPaginatorName = Literal["describe_fleet_capacity"] +DescribeFleetEventsPaginatorName = Literal["describe_fleet_events"] +DescribeFleetUtilizationPaginatorName = Literal["describe_fleet_utilization"] +DescribeGameServerInstancesPaginatorName = Literal["describe_game_server_instances"] +DescribeGameSessionDetailsPaginatorName = Literal["describe_game_session_details"] +DescribeGameSessionQueuesPaginatorName = Literal["describe_game_session_queues"] +DescribeGameSessionsPaginatorName = Literal["describe_game_sessions"] +DescribeInstancesPaginatorName = Literal["describe_instances"] +DescribeMatchmakingConfigurationsPaginatorName = Literal["describe_matchmaking_configurations"] +DescribeMatchmakingRuleSetsPaginatorName = Literal["describe_matchmaking_rule_sets"] +DescribePlayerSessionsPaginatorName = Literal["describe_player_sessions"] +DescribeScalingPoliciesPaginatorName = Literal["describe_scaling_policies"] +EC2InstanceTypeType = Literal["c3.2xlarge", + "c3.4xlarge", + "c3.8xlarge", + "c3.large", + "c3.xlarge", + "c4.2xlarge", + "c4.4xlarge", + "c4.8xlarge", + "c4.large", + "c4.xlarge", + "c5.12xlarge", + "c5.18xlarge", + "c5.24xlarge", + "c5.2xlarge", + "c5.4xlarge", + "c5.9xlarge", + "c5.large", + "c5.xlarge", + "c5a.12xlarge", + "c5a.16xlarge", + "c5a.24xlarge", + "c5a.2xlarge", + "c5a.4xlarge", + "c5a.8xlarge", + "c5a.large", + "c5a.xlarge", + "c5d.12xlarge", + "c5d.18xlarge", + "c5d.24xlarge", + "c5d.2xlarge", + "c5d.4xlarge", + "c5d.9xlarge", + "c5d.large", + "c5d.xlarge", + "c6a.12xlarge", + "c6a.16xlarge", + "c6a.24xlarge", + "c6a.2xlarge", + "c6a.4xlarge", + "c6a.8xlarge", + "c6a.large", + "c6a.xlarge", + "c6g.12xlarge", + "c6g.16xlarge", + "c6g.2xlarge", + "c6g.4xlarge", + "c6g.8xlarge", + "c6g.large", + "c6g.medium", + "c6g.xlarge", + "c6gn.12xlarge", + "c6gn.16xlarge", + "c6gn.2xlarge", + "c6gn.4xlarge", + "c6gn.8xlarge", + "c6gn.large", + "c6gn.medium", + "c6gn.xlarge", + "c6i.12xlarge", + "c6i.16xlarge", + "c6i.24xlarge", + "c6i.2xlarge", + "c6i.4xlarge", + "c6i.8xlarge", + "c6i.large", + "c6i.xlarge", + "c7g.12xlarge", + "c7g.16xlarge", + "c7g.2xlarge", + "c7g.4xlarge", + "c7g.8xlarge", + "c7g.large", + "c7g.medium", + "c7g.xlarge", + "g5g.16xlarge", + "g5g.2xlarge", + "g5g.4xlarge", + "g5g.8xlarge", + "g5g.xlarge", + "m3.2xlarge", + "m3.large", + "m3.medium", + "m3.xlarge", + "m4.10xlarge", + "m4.2xlarge", + "m4.4xlarge", + "m4.large", + "m4.xlarge", + "m5.12xlarge", + "m5.16xlarge", + "m5.24xlarge", + "m5.2xlarge", + "m5.4xlarge", + "m5.8xlarge", + "m5.large", + "m5.xlarge", + "m5a.12xlarge", + "m5a.16xlarge", + "m5a.24xlarge", + "m5a.2xlarge", + "m5a.4xlarge", + "m5a.8xlarge", + "m5a.large", + "m5a.xlarge", + "m6g.12xlarge", + "m6g.16xlarge", + "m6g.2xlarge", + "m6g.4xlarge", + "m6g.8xlarge", + "m6g.large", + "m6g.medium", + "m6g.xlarge", + "m7g.12xlarge", + "m7g.16xlarge", + "m7g.2xlarge", + "m7g.4xlarge", + "m7g.8xlarge", + "m7g.large", + "m7g.medium", + "m7g.xlarge", + "r3.2xlarge", + "r3.4xlarge", + "r3.8xlarge", + "r3.large", + "r3.xlarge", + "r4.16xlarge", + "r4.2xlarge", + "r4.4xlarge", + "r4.8xlarge", + "r4.large", + "r4.xlarge", + "r5.12xlarge", + "r5.16xlarge", + "r5.24xlarge", + "r5.2xlarge", + "r5.4xlarge", + "r5.8xlarge", + "r5.large", + "r5.xlarge", + "r5a.12xlarge", + "r5a.16xlarge", + "r5a.24xlarge", + "r5a.2xlarge", + "r5a.4xlarge", + "r5a.8xlarge", + "r5a.large", + "r5a.xlarge", + "r5d.12xlarge", + "r5d.16xlarge", + "r5d.24xlarge", + "r5d.2xlarge", + "r5d.4xlarge", + "r5d.8xlarge", + "r5d.large", + "r5d.xlarge", + "r6g.12xlarge", + "r6g.16xlarge", + "r6g.2xlarge", + "r6g.4xlarge", + "r6g.8xlarge", + "r6g.large", + "r6g.medium", + "r6g.xlarge", + "r7g.12xlarge", + "r7g.16xlarge", + "r7g.2xlarge", + "r7g.4xlarge", + "r7g.8xlarge", + "r7g.large", + "r7g.medium", + "r7g.xlarge", + "t2.large", + "t2.medium", + "t2.micro", + "t2.small",] +EventCodeType = Literal["FLEET_ACTIVATION_FAILED", + "FLEET_ACTIVATION_FAILED_NO_INSTANCES", + "FLEET_BINARY_DOWNLOAD_FAILED", + "FLEET_CREATED", + "FLEET_CREATION_EXTRACTING_BUILD", + "FLEET_CREATION_RUNNING_INSTALLER", + "FLEET_CREATION_VALIDATING_RUNTIME_CONFIG", + "FLEET_DELETED", + "FLEET_INITIALIZATION_FAILED", + "FLEET_NEW_GAME_SESSION_PROTECTION_POLICY_UPDATED", + "FLEET_SCALING_EVENT", + "FLEET_STATE_ACTIVATING", + "FLEET_STATE_ACTIVE", + "FLEET_STATE_BUILDING", + "FLEET_STATE_DOWNLOADING", + "FLEET_STATE_ERROR", + "FLEET_STATE_VALIDATING", + "FLEET_VALIDATION_EXECUTABLE_RUNTIME_FAILURE", + "FLEET_VALIDATION_LAUNCH_PATH_NOT_FOUND", + "FLEET_VALIDATION_TIMED_OUT", + "FLEET_VPC_PEERING_DELETED", + "FLEET_VPC_PEERING_FAILED", + "FLEET_VPC_PEERING_SUCCEEDED", + "GAME_SESSION_ACTIVATION_TIMEOUT", + "GENERIC_EVENT", + "INSTANCE_INTERRUPTED", + "INSTANCE_RECYCLED", + "SERVER_PROCESS_CRASHED", + "SERVER_PROCESS_FORCE_TERMINATED", + "SERVER_PROCESS_INVALID_PATH", + "SERVER_PROCESS_PROCESS_EXIT_TIMEOUT", + "SERVER_PROCESS_PROCESS_READY_TIMEOUT", + "SERVER_PROCESS_SDK_INITIALIZATION_TIMEOUT", + "SERVER_PROCESS_TERMINATED_UNHEALTHY",] +FilterInstanceStatusType = Literal["ACTIVE", "DRAINING"] +FleetActionType = Literal["AUTO_SCALING"] +FleetStatusType = Literal["ACTIVATING", + "ACTIVE", + "BUILDING", + "DELETING", + "DOWNLOADING", + "ERROR", + "NEW", + "NOT_FOUND", + "TERMINATED", + "VALIDATING",] +FleetTypeType = Literal["ON_DEMAND", "SPOT"] +FlexMatchModeType = Literal["STANDALONE", "WITH_QUEUE"] +GameServerClaimStatusType = Literal["CLAIMED"] +GameServerGroupActionType = Literal["REPLACE_INSTANCE_TYPES"] +GameServerGroupDeleteOptionType = Literal["FORCE_DELETE", "RETAIN", "SAFE_DELETE"] +GameServerGroupInstanceTypeType = Literal["c4.2xlarge", + "c4.4xlarge", + "c4.8xlarge", + "c4.large", + "c4.xlarge", + "c5.12xlarge", + "c5.18xlarge", + "c5.24xlarge", + "c5.2xlarge", + "c5.4xlarge", + "c5.9xlarge", + "c5.large", + "c5.xlarge", + "c5a.12xlarge", + "c5a.16xlarge", + "c5a.24xlarge", + "c5a.2xlarge", + "c5a.4xlarge", + "c5a.8xlarge", + "c5a.large", + "c5a.xlarge", + "c6g.12xlarge", + "c6g.16xlarge", + "c6g.2xlarge", + "c6g.4xlarge", + "c6g.8xlarge", + "c6g.large", + "c6g.medium", + "c6g.xlarge", + "m4.10xlarge", + "m4.2xlarge", + "m4.4xlarge", + "m4.large", + "m4.xlarge", + "m5.12xlarge", + "m5.16xlarge", + "m5.24xlarge", + "m5.2xlarge", + "m5.4xlarge", + "m5.8xlarge", + "m5.large", + "m5.xlarge", + "m5a.12xlarge", + "m5a.16xlarge", + "m5a.24xlarge", + "m5a.2xlarge", + "m5a.4xlarge", + "m5a.8xlarge", + "m5a.large", + "m5a.xlarge", + "m6g.12xlarge", + "m6g.16xlarge", + "m6g.2xlarge", + "m6g.4xlarge", + "m6g.8xlarge", + "m6g.large", + "m6g.medium", + "m6g.xlarge", + "r4.16xlarge", + "r4.2xlarge", + "r4.4xlarge", + "r4.8xlarge", + "r4.large", + "r4.xlarge", + "r5.12xlarge", + "r5.16xlarge", + "r5.24xlarge", + "r5.2xlarge", + "r5.4xlarge", + "r5.8xlarge", + "r5.large", + "r5.xlarge", + "r5a.12xlarge", + "r5a.16xlarge", + "r5a.24xlarge", + "r5a.2xlarge", + "r5a.4xlarge", + "r5a.8xlarge", + "r5a.large", + "r5a.xlarge", + "r6g.12xlarge", + "r6g.16xlarge", + "r6g.2xlarge", + "r6g.4xlarge", + "r6g.8xlarge", + "r6g.large", + "r6g.medium", + "r6g.xlarge",] +GameServerGroupStatusType = Literal["ACTIVATING", "ACTIVE", "DELETED", "DELETE_SCHEDULED", "DELETING", "ERROR", "NEW"] +GameServerHealthCheckType = Literal["HEALTHY"] +GameServerInstanceStatusType = Literal["ACTIVE", "DRAINING", "SPOT_TERMINATING"] +GameServerProtectionPolicyType = Literal["FULL_PROTECTION", "NO_PROTECTION"] +GameServerUtilizationStatusType = Literal["AVAILABLE", "UTILIZED"] +GameSessionPlacementStateType = Literal["CANCELLED", "FAILED", "FULFILLED", "PENDING", "TIMED_OUT"] +GameSessionStatusReasonType = Literal["INTERRUPTED"] +GameSessionStatusType = Literal["ACTIVATING", "ACTIVE", "ERROR", "TERMINATED", "TERMINATING"] +InstanceRoleCredentialsProviderType = Literal["SHARED_CREDENTIAL_FILE"] +InstanceStatusType = Literal["ACTIVE", "PENDING", "TERMINATING"] +IpProtocolType = Literal["TCP", "UDP"] +ListAliasesPaginatorName = Literal["list_aliases"] +ListBuildsPaginatorName = Literal["list_builds"] +ListComputePaginatorName = Literal["list_compute"] +ListContainerGroupDefinitionsPaginatorName = Literal["list_container_group_definitions"] +ListFleetsPaginatorName = Literal["list_fleets"] +ListGameServerGroupsPaginatorName = Literal["list_game_server_groups"] +ListGameServersPaginatorName = Literal["list_game_servers"] +ListLocationsPaginatorName = Literal["list_locations"] +ListScriptsPaginatorName = Literal["list_scripts"] +LocationFilterType = Literal["AWS", "CUSTOM"] +LocationUpdateStatusType = Literal["PENDING_UPDATE"] +MatchmakingConfigurationStatusType = Literal["CANCELLED", + "COMPLETED", + "FAILED", + "PLACING", + "QUEUED", + "REQUIRES_ACCEPTANCE", + "SEARCHING", + "TIMED_OUT",] +MetricNameType = Literal["ActivatingGameSessions", + "ActiveGameSessions", + "ActiveInstances", + "AvailableGameSessions", + "AvailablePlayerSessions", + "ConcurrentActivatableGameSessions", + "CurrentPlayerSessions", + "IdleInstances", + "PercentAvailableGameSessions", + "PercentIdleInstances", + "QueueDepth", + "WaitTime",] +OperatingSystemType = Literal["AMAZON_LINUX", "AMAZON_LINUX_2", "AMAZON_LINUX_2023", "WINDOWS_2012", "WINDOWS_2016"] +PlayerSessionCreationPolicyType = Literal["ACCEPT_ALL", "DENY_ALL"] +PlayerSessionStatusType = Literal["ACTIVE", "COMPLETED", "RESERVED", "TIMEDOUT"] +PolicyTypeType = Literal["RuleBased", "TargetBased"] +PriorityTypeType = Literal["COST", "DESTINATION", "LATENCY", "LOCATION"] +ProtectionPolicyType = Literal["FullProtection", "NoProtection"] +RoutingStrategyTypeType = Literal["SIMPLE", "TERMINAL"] +ScalingAdjustmentTypeType = Literal["ChangeInCapacity", "ExactCapacity", "PercentChangeInCapacity"] +ScalingStatusTypeType = Literal["ACTIVE", "DELETED", "DELETE_REQUESTED", "DELETING", "ERROR", "UPDATE_REQUESTED", "UPDATING"] +SearchGameSessionsPaginatorName = Literal["search_game_sessions"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +GameLiftServiceName = Literal["gamelift"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_fleet_attributes", + "describe_fleet_capacity", + "describe_fleet_events", + "describe_fleet_utilization", + "describe_game_server_instances", + "describe_game_session_details", + "describe_game_session_queues", + "describe_game_sessions", + "describe_instances", + "describe_matchmaking_configurations", + "describe_matchmaking_rule_sets", + "describe_player_sessions", + "describe_scaling_policies", + "list_aliases", + "list_builds", + "list_compute", + "list_container_group_definitions", + "list_fleets", + "list_game_server_groups", + "list_game_servers", + "list_locations", + "list_scripts", + "search_game_sessions",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +FilterConfigurationUnionTypeDef = Union[ 'FilterConfigurationTypeDef', 'FilterConfigurationExtraOutputTypeDef' ] +PriorityConfigurationUnionTypeDef = Union[ 'PriorityConfigurationTypeDef', 'PriorityConfigurationExtraOutputTypeDef' ] +PlayerUnionTypeDef = Union['PlayerTypeDef', 'PlayerOutputTypeDef'] +RuntimeConfigurationUnionTypeDef = Union[ 'RuntimeConfigurationTypeDef', 'RuntimeConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/glacier_classes.py b/aws_resource_validator/pydantic_models/glacier_classes.py new file mode 100644 index 00000000..831ced5b --- /dev/null +++ b/aws_resource_validator/pydantic_models/glacier_classes.py @@ -0,0 +1,558 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.glacier_constants import * + +class AbortMultipartUploadInputRequestTypeDef(BaseModel): + vaultName: str + uploadId: str + accountId: Optional[str] = None + +class AbortVaultLockInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class AddTagsToVaultInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CSVInputTypeDef(BaseModel): + FileHeaderInfo: Optional[FileHeaderInfoType] = None + Comments: Optional[str] = None + QuoteEscapeCharacter: Optional[str] = None + RecordDelimiter: Optional[str] = None + FieldDelimiter: Optional[str] = None + QuoteCharacter: Optional[str] = None + +class CSVOutputTypeDef(BaseModel): + QuoteFields: Optional[QuoteFieldsType] = None + QuoteEscapeCharacter: Optional[str] = None + RecordDelimiter: Optional[str] = None + FieldDelimiter: Optional[str] = None + QuoteCharacter: Optional[str] = None + +class CompleteMultipartUploadInputMultipartUploadCompleteTypeDef(BaseModel): + archiveSize: Optional[str] = None + checksum: Optional[str] = None + +class CompleteMultipartUploadInputRequestTypeDef(BaseModel): + vaultName: str + uploadId: str + accountId: Optional[str] = None + archiveSize: Optional[str] = None + checksum: Optional[str] = None + +class CompleteVaultLockInputRequestTypeDef(BaseModel): + vaultName: str + lockId: str + accountId: Optional[str] = None + +class CreateVaultInputAccountCreateVaultTypeDef(BaseModel): + vaultName: str + +class CreateVaultInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class CreateVaultInputServiceResourceCreateVaultTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class DataRetrievalRuleTypeDef(BaseModel): + Strategy: Optional[str] = None + BytesPerHour: Optional[int] = None + +class DeleteArchiveInputRequestTypeDef(BaseModel): + vaultName: str + archiveId: str + accountId: Optional[str] = None + +class DeleteVaultAccessPolicyInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class DeleteVaultInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class DeleteVaultNotificationsInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class DescribeJobInputRequestTypeDef(BaseModel): + vaultName: str + jobId: str + accountId: Optional[str] = None + +class DescribeVaultInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeVaultOutputTypeDef(BaseModel): + VaultARN: Optional[str] = None + VaultName: Optional[str] = None + CreationDate: Optional[str] = None + LastInventoryDate: Optional[str] = None + NumberOfArchives: Optional[int] = None + SizeInBytes: Optional[int] = None + +class EncryptionTypeDef(BaseModel): + EncryptionType: Optional[EncryptionTypeType] = None + KMSKeyId: Optional[str] = None + KMSContext: Optional[str] = None + +class GetDataRetrievalPolicyInputRequestTypeDef(BaseModel): + accountId: Optional[str] = None + +class GetJobOutputInputJobGetOutputTypeDef(BaseModel): + range: Optional[str] = None + +class GetJobOutputInputRequestTypeDef(BaseModel): + vaultName: str + jobId: str + accountId: Optional[str] = None + range: Optional[str] = None + +class GetVaultAccessPolicyInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class VaultAccessPolicyTypeDef(BaseModel): + Policy: Optional[str] = None + +class GetVaultLockInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class GetVaultNotificationsInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class VaultNotificationConfigTypeDef(BaseModel): + SNSTopic: Optional[str] = None + Events: Optional[List[str]] = None + +class InventoryRetrievalJobDescriptionTypeDef(BaseModel): + Format: Optional[str] = None + StartDate: Optional[str] = None + EndDate: Optional[str] = None + Limit: Optional[str] = None + Marker: Optional[str] = None + +class GranteeTypeDef(BaseModel): + Type: TypeType + DisplayName: Optional[str] = None + URI: Optional[str] = None + ID: Optional[str] = None + EmailAddress: Optional[str] = None + +class InitiateMultipartUploadInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + archiveDescription: Optional[str] = None + partSize: Optional[str] = None + +class InitiateMultipartUploadInputVaultInitiateMultipartUploadTypeDef(BaseModel): + archiveDescription: Optional[str] = None + partSize: Optional[str] = None + +class VaultLockPolicyTypeDef(BaseModel): + Policy: Optional[str] = None + +class InventoryRetrievalJobInputTypeDef(BaseModel): + StartDate: Optional[str] = None + EndDate: Optional[str] = None + Limit: Optional[str] = None + Marker: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListJobsInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + limit: Optional[str] = None + marker: Optional[str] = None + statuscode: Optional[str] = None + completed: Optional[str] = None + +class ListMultipartUploadsInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + marker: Optional[str] = None + limit: Optional[str] = None + +class UploadListElementTypeDef(BaseModel): + MultipartUploadId: Optional[str] = None + VaultARN: Optional[str] = None + ArchiveDescription: Optional[str] = None + PartSizeInBytes: Optional[int] = None + CreationDate: Optional[str] = None + +class ListPartsInputMultipartUploadPartsTypeDef(BaseModel): + marker: Optional[str] = None + limit: Optional[str] = None + +class ListPartsInputRequestTypeDef(BaseModel): + vaultName: str + uploadId: str + accountId: Optional[str] = None + marker: Optional[str] = None + limit: Optional[str] = None + +class PartListElementTypeDef(BaseModel): + RangeInBytes: Optional[str] = None + SHA256TreeHash: Optional[str] = None + +class ListProvisionedCapacityInputRequestTypeDef(BaseModel): + accountId: Optional[str] = None + +class ProvisionedCapacityDescriptionTypeDef(BaseModel): + CapacityId: Optional[str] = None + StartDate: Optional[str] = None + ExpirationDate: Optional[str] = None + +class ListTagsForVaultInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + +class ListVaultsInputRequestTypeDef(BaseModel): + accountId: Optional[str] = None + marker: Optional[str] = None + limit: Optional[str] = None + +class PurchaseProvisionedCapacityInputRequestTypeDef(BaseModel): + accountId: Optional[str] = None + +class RemoveTagsFromVaultInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + +class VaultNotificationConfigNotificationTypeDef(BaseModel): + SNSTopic: Optional[str] = None + Events: Optional[Sequence[str]] = None + +class ArchiveCreationOutputTypeDef(BaseModel): + location: str + checksum: str + archiveId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVaultOutputTypeDef(BaseModel): + location: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVaultResponseTypeDef(BaseModel): + VaultARN: str + VaultName: str + CreationDate: str + LastInventoryDate: str + NumberOfArchives: int + SizeInBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobOutputOutputTypeDef(BaseModel): + body: StreamingBody + checksum: str + status: int + contentRange: str + acceptRanges: str + contentType: str + archiveDescription: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVaultLockOutputTypeDef(BaseModel): + Policy: str + State: str + ExpirationDate: str + CreationDate: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateJobOutputTypeDef(BaseModel): + location: str + jobId: str + jobOutputPath: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateMultipartUploadOutputTypeDef(BaseModel): + location: str + uploadId: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateVaultLockOutputTypeDef(BaseModel): + lockId: str + ResponseMetadata: ResponseMetadataTypeDef + +class InventoryRetrievalJobDescriptionResponseTypeDef(BaseModel): + Format: str + StartDate: str + EndDate: str + Limit: str + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForVaultOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseProvisionedCapacityOutputTypeDef(BaseModel): + capacityId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UploadMultipartPartOutputTypeDef(BaseModel): + checksum: str + ResponseMetadata: ResponseMetadataTypeDef + +class UploadArchiveInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + archiveDescription: Optional[str] = None + checksum: Optional[str] = None + body: Optional[BlobTypeDef] = None + +class UploadArchiveInputVaultUploadArchiveTypeDef(BaseModel): + archiveDescription: Optional[str] = None + checksum: Optional[str] = None + body: Optional[BlobTypeDef] = None + +class UploadMultipartPartInputMultipartUploadUploadPartTypeDef(BaseModel): + checksum: Optional[str] = None + range: Optional[str] = None + body: Optional[BlobTypeDef] = None + +class UploadMultipartPartInputRequestTypeDef(BaseModel): + vaultName: str + uploadId: str + accountId: Optional[str] = None + checksum: Optional[str] = None + range: Optional[str] = None + body: Optional[BlobTypeDef] = None + +class InputSerializationTypeDef(BaseModel): + csv: Optional[CSVInputTypeDef] = None + +class OutputSerializationTypeDef(BaseModel): + csv: Optional[CSVOutputTypeDef] = None + +class DataRetrievalPolicyTypeDef(BaseModel): + Rules: Optional[List[DataRetrievalRuleTypeDef]] = None + +class DescribeVaultInputVaultExistsWaitTypeDef(BaseModel): + accountId: str + vaultName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeVaultInputVaultNotExistsWaitTypeDef(BaseModel): + accountId: str + vaultName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ListVaultsOutputTypeDef(BaseModel): + VaultList: List[DescribeVaultOutputTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVaultAccessPolicyOutputTypeDef(BaseModel): + policy: VaultAccessPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetVaultAccessPolicyInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + policy: Optional[VaultAccessPolicyTypeDef] = None + +class GetVaultNotificationsOutputTypeDef(BaseModel): + vaultNotificationConfig: VaultNotificationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetVaultNotificationsInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + vaultNotificationConfig: Optional[VaultNotificationConfigTypeDef] = None + +class GrantTypeDef(BaseModel): + Grantee: Optional[GranteeTypeDef] = None + Permission: Optional[PermissionType] = None + +class InitiateVaultLockInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + policy: Optional[VaultLockPolicyTypeDef] = None + +class ListJobsInputListJobsPaginateTypeDef(BaseModel): + accountId: str + vaultName: str + statuscode: Optional[str] = None + completed: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMultipartUploadsInputListMultipartUploadsPaginateTypeDef(BaseModel): + accountId: str + vaultName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPartsInputListPartsPaginateTypeDef(BaseModel): + accountId: str + vaultName: str + uploadId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVaultsInputListVaultsPaginateTypeDef(BaseModel): + accountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMultipartUploadsOutputTypeDef(BaseModel): + UploadsList: List[UploadListElementTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPartsOutputTypeDef(BaseModel): + MultipartUploadId: str + VaultARN: str + ArchiveDescription: str + PartSizeInBytes: int + CreationDate: str + Parts: List[PartListElementTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisionedCapacityOutputTypeDef(BaseModel): + ProvisionedCapacityList: List[ProvisionedCapacityDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetVaultNotificationsInputNotificationSetTypeDef(BaseModel): + vaultNotificationConfig: Optional[VaultNotificationConfigNotificationTypeDef] = None + +class SelectParametersResponseTypeDef(BaseModel): + InputSerialization: InputSerializationTypeDef + ExpressionType: Literal["SQL"] + Expression: str + OutputSerialization: OutputSerializationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SelectParametersTypeDef(BaseModel): + InputSerialization: Optional[InputSerializationTypeDef] = None + ExpressionType: Optional[Literal["SQL"]] = None + Expression: Optional[str] = None + OutputSerialization: Optional[OutputSerializationTypeDef] = None + +class GetDataRetrievalPolicyOutputTypeDef(BaseModel): + Policy: DataRetrievalPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SetDataRetrievalPolicyInputRequestTypeDef(BaseModel): + accountId: Optional[str] = None + Policy: Optional[DataRetrievalPolicyTypeDef] = None + +class S3LocationTypeDef(BaseModel): + BucketName: Optional[str] = None + Prefix: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + CannedACL: Optional[CannedACLType] = None + AccessControlList: Optional[List[GrantTypeDef]] = None + Tagging: Optional[Dict[str, str]] = None + UserMetadata: Optional[Dict[str, str]] = None + StorageClass: Optional[StorageClassType] = None + +class OutputLocationResponseTypeDef(BaseModel): + S3: S3LocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OutputLocationTypeDef(BaseModel): + S3: Optional[S3LocationTypeDef] = None + +class GlacierJobDescriptionResponseTypeDef(BaseModel): + JobId: str + JobDescription: str + Action: ActionCodeType + ArchiveId: str + VaultARN: str + CreationDate: str + Completed: bool + StatusCode: StatusCodeType + StatusMessage: str + ArchiveSizeInBytes: int + InventorySizeInBytes: int + SNSTopic: str + CompletionDate: str + SHA256TreeHash: str + ArchiveSHA256TreeHash: str + RetrievalByteRange: str + Tier: str + InventoryRetrievalParameters: InventoryRetrievalJobDescriptionTypeDef + JobOutputPath: str + SelectParameters: SelectParametersTypeDef + OutputLocation: OutputLocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GlacierJobDescriptionTypeDef(BaseModel): + JobId: Optional[str] = None + JobDescription: Optional[str] = None + Action: Optional[ActionCodeType] = None + ArchiveId: Optional[str] = None + VaultARN: Optional[str] = None + CreationDate: Optional[str] = None + Completed: Optional[bool] = None + StatusCode: Optional[StatusCodeType] = None + StatusMessage: Optional[str] = None + ArchiveSizeInBytes: Optional[int] = None + InventorySizeInBytes: Optional[int] = None + SNSTopic: Optional[str] = None + CompletionDate: Optional[str] = None + SHA256TreeHash: Optional[str] = None + ArchiveSHA256TreeHash: Optional[str] = None + RetrievalByteRange: Optional[str] = None + Tier: Optional[str] = None + InventoryRetrievalParameters: Optional[InventoryRetrievalJobDescriptionTypeDef] = None + JobOutputPath: Optional[str] = None + SelectParameters: Optional[SelectParametersTypeDef] = None + OutputLocation: Optional[OutputLocationTypeDef] = None + +class JobParametersTypeDef(BaseModel): + Format: Optional[str] = None + Type: Optional[str] = None + ArchiveId: Optional[str] = None + Description: Optional[str] = None + SNSTopic: Optional[str] = None + RetrievalByteRange: Optional[str] = None + Tier: Optional[str] = None + InventoryRetrievalParameters: Optional[InventoryRetrievalJobInputTypeDef] = None + SelectParameters: Optional[SelectParametersTypeDef] = None + OutputLocation: Optional[OutputLocationTypeDef] = None + +class ListJobsOutputTypeDef(BaseModel): + JobList: List[GlacierJobDescriptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateJobInputRequestTypeDef(BaseModel): + vaultName: str + accountId: Optional[str] = None + jobParameters: Optional[JobParametersTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/glacier_constants.py b/aws_resource_validator/pydantic_models/glacier_constants.py new file mode 100644 index 00000000..60fd3473 --- /dev/null +++ b/aws_resource_validator/pydantic_models/glacier_constants.py @@ -0,0 +1,435 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionCodeType = Literal["ArchiveRetrieval", "InventoryRetrieval", "Select"] +CannedACLType = Literal["authenticated-read", + "aws-exec-read", + "bucket-owner-full-control", + "bucket-owner-read", + "private", + "public-read", + "public-read-write",] +EncryptionTypeType = Literal["AES256", "aws:kms"] +ExpressionTypeType = Literal["SQL"] +FileHeaderInfoType = Literal["IGNORE", "NONE", "USE"] +ListJobsPaginatorName = Literal["list_jobs"] +ListMultipartUploadsPaginatorName = Literal["list_multipart_uploads"] +ListPartsPaginatorName = Literal["list_parts"] +ListVaultsPaginatorName = Literal["list_vaults"] +PermissionType = Literal["FULL_CONTROL", "READ", "READ_ACP", "WRITE", "WRITE_ACP"] +QuoteFieldsType = Literal["ALWAYS", "ASNEEDED"] +StatusCodeType = Literal["Failed", "InProgress", "Succeeded"] +StorageClassType = Literal["REDUCED_REDUNDANCY", "STANDARD", "STANDARD_IA"] +TypeType = Literal["AmazonCustomerByEmail", "CanonicalUser", "Group"] +VaultExistsWaiterName = Literal["vault_exists"] +VaultNotExistsWaiterName = Literal["vault_not_exists"] +GlacierServiceName = Literal["glacier"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_jobs", "list_multipart_uploads", "list_parts", "list_vaults"] +WaiterName = Literal["vault_exists", "vault_not_exists"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/globalaccelerator_classes.py b/aws_resource_validator/pydantic_models/globalaccelerator_classes.py new file mode 100644 index 00000000..d29361f8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/globalaccelerator_classes.py @@ -0,0 +1,691 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.globalaccelerator_constants import * + +class AcceleratorAttributesTypeDef(BaseModel): + FlowLogsEnabled: Optional[bool] = None + FlowLogsS3Bucket: Optional[str] = None + FlowLogsS3Prefix: Optional[str] = None + +class AcceleratorEventTypeDef(BaseModel): + Message: Optional[str] = None + Timestamp: Optional[datetime] = None + +class IpSetTypeDef(BaseModel): + IpFamily: Optional[str] = None + IpAddresses: Optional[List[str]] = None + IpAddressFamily: Optional[IpAddressFamilyType] = None + +class CustomRoutingEndpointConfigurationTypeDef(BaseModel): + EndpointId: Optional[str] = None + AttachmentArn: Optional[str] = None + +class CustomRoutingEndpointDescriptionTypeDef(BaseModel): + EndpointId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class EndpointConfigurationTypeDef(BaseModel): + EndpointId: Optional[str] = None + Weight: Optional[int] = None + ClientIPPreservationEnabled: Optional[bool] = None + AttachmentArn: Optional[str] = None + +class EndpointDescriptionTypeDef(BaseModel): + EndpointId: Optional[str] = None + Weight: Optional[int] = None + HealthState: Optional[HealthStateType] = None + HealthReason: Optional[str] = None + ClientIPPreservationEnabled: Optional[bool] = None + +class AdvertiseByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + +class AllowCustomRoutingTrafficRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + EndpointId: str + DestinationAddresses: Optional[Sequence[str]] = None + DestinationPorts: Optional[Sequence[int]] = None + AllowAllTrafficToEndpoint: Optional[bool] = None + +class ResourceTypeDef(BaseModel): + EndpointId: Optional[str] = None + Cidr: Optional[str] = None + Region: Optional[str] = None + +class ByoipCidrEventTypeDef(BaseModel): + Message: Optional[str] = None + Timestamp: Optional[datetime] = None + +class CidrAuthorizationContextTypeDef(BaseModel): + Message: str + Signature: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CustomRoutingDestinationConfigurationTypeDef(BaseModel): + FromPort: int + ToPort: int + Protocols: Sequence[CustomRoutingProtocolType] + +class PortRangeTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class PortOverrideTypeDef(BaseModel): + ListenerPort: Optional[int] = None + EndpointPort: Optional[int] = None + +class CrossAccountResourceTypeDef(BaseModel): + EndpointId: Optional[str] = None + Cidr: Optional[str] = None + AttachmentArn: Optional[str] = None + +class CustomRoutingAcceleratorAttributesTypeDef(BaseModel): + FlowLogsEnabled: Optional[bool] = None + FlowLogsS3Bucket: Optional[str] = None + FlowLogsS3Prefix: Optional[str] = None + +class CustomRoutingDestinationDescriptionTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + Protocols: Optional[List[ProtocolType]] = None + +class DeleteAcceleratorRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + +class DeleteCrossAccountAttachmentRequestRequestTypeDef(BaseModel): + AttachmentArn: str + +class DeleteCustomRoutingAcceleratorRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + +class DeleteCustomRoutingEndpointGroupRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + +class DeleteCustomRoutingListenerRequestRequestTypeDef(BaseModel): + ListenerArn: str + +class DeleteEndpointGroupRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + +class DeleteListenerRequestRequestTypeDef(BaseModel): + ListenerArn: str + +class DenyCustomRoutingTrafficRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + EndpointId: str + DestinationAddresses: Optional[Sequence[str]] = None + DestinationPorts: Optional[Sequence[int]] = None + DenyAllTrafficToEndpoint: Optional[bool] = None + +class DeprovisionByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + +class DescribeAcceleratorAttributesRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + +class DescribeAcceleratorRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + +class DescribeCrossAccountAttachmentRequestRequestTypeDef(BaseModel): + AttachmentArn: str + +class DescribeCustomRoutingAcceleratorAttributesRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + +class DescribeCustomRoutingAcceleratorRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + +class DescribeCustomRoutingEndpointGroupRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + +class DescribeCustomRoutingListenerRequestRequestTypeDef(BaseModel): + ListenerArn: str + +class DescribeEndpointGroupRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + +class DescribeListenerRequestRequestTypeDef(BaseModel): + ListenerArn: str + +class SocketAddressTypeDef(BaseModel): + IpAddress: Optional[str] = None + Port: Optional[int] = None + +class EndpointIdentifierTypeDef(BaseModel): + EndpointId: str + ClientIPPreservationEnabled: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAcceleratorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListByoipCidrsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCrossAccountAttachmentsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCrossAccountResourcesRequestRequestTypeDef(BaseModel): + ResourceOwnerAwsAccountId: str + AcceleratorArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCustomRoutingAcceleratorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCustomRoutingEndpointGroupsRequestRequestTypeDef(BaseModel): + ListenerArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCustomRoutingListenersRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCustomRoutingPortMappingsByDestinationRequestRequestTypeDef(BaseModel): + EndpointId: str + DestinationAddress: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCustomRoutingPortMappingsRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + EndpointGroupArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEndpointGroupsRequestRequestTypeDef(BaseModel): + ListenerArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListListenersRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class RemoveCustomRoutingEndpointsRequestRequestTypeDef(BaseModel): + EndpointIds: Sequence[str] + EndpointGroupArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAcceleratorAttributesRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + FlowLogsEnabled: Optional[bool] = None + FlowLogsS3Bucket: Optional[str] = None + FlowLogsS3Prefix: Optional[str] = None + +class UpdateAcceleratorRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + Name: Optional[str] = None + IpAddressType: Optional[IpAddressTypeType] = None + IpAddresses: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class UpdateCustomRoutingAcceleratorAttributesRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + FlowLogsEnabled: Optional[bool] = None + FlowLogsS3Bucket: Optional[str] = None + FlowLogsS3Prefix: Optional[str] = None + +class UpdateCustomRoutingAcceleratorRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + Name: Optional[str] = None + IpAddressType: Optional[IpAddressTypeType] = None + IpAddresses: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class WithdrawByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + +class AcceleratorTypeDef(BaseModel): + AcceleratorArn: Optional[str] = None + Name: Optional[str] = None + IpAddressType: Optional[IpAddressTypeType] = None + Enabled: Optional[bool] = None + IpSets: Optional[List[IpSetTypeDef]] = None + DnsName: Optional[str] = None + Status: Optional[AcceleratorStatusType] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + DualStackDnsName: Optional[str] = None + Events: Optional[List[AcceleratorEventTypeDef]] = None + +class CustomRoutingAcceleratorTypeDef(BaseModel): + AcceleratorArn: Optional[str] = None + Name: Optional[str] = None + IpAddressType: Optional[IpAddressTypeType] = None + Enabled: Optional[bool] = None + IpSets: Optional[List[IpSetTypeDef]] = None + DnsName: Optional[str] = None + Status: Optional[CustomRoutingAcceleratorStatusType] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class AddCustomRoutingEndpointsRequestRequestTypeDef(BaseModel): + EndpointConfigurations: Sequence[CustomRoutingEndpointConfigurationTypeDef] + EndpointGroupArn: str + +class AddCustomRoutingEndpointsResponseTypeDef(BaseModel): + EndpointDescriptions: List[CustomRoutingEndpointDescriptionTypeDef] + EndpointGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAcceleratorAttributesResponseTypeDef(BaseModel): + AcceleratorAttributes: AcceleratorAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListCrossAccountResourceAccountsResponseTypeDef(BaseModel): + ResourceOwnerAwsAccountIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAcceleratorAttributesResponseTypeDef(BaseModel): + AcceleratorAttributes: AcceleratorAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddEndpointsRequestRequestTypeDef(BaseModel): + EndpointConfigurations: Sequence[EndpointConfigurationTypeDef] + EndpointGroupArn: str + +class AddEndpointsResponseTypeDef(BaseModel): + EndpointDescriptions: List[EndpointDescriptionTypeDef] + EndpointGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachmentTypeDef(BaseModel): + AttachmentArn: Optional[str] = None + Name: Optional[str] = None + Principals: Optional[List[str]] = None + Resources: Optional[List[ResourceTypeDef]] = None + LastModifiedTime: Optional[datetime] = None + CreatedTime: Optional[datetime] = None + +class UpdateCrossAccountAttachmentRequestRequestTypeDef(BaseModel): + AttachmentArn: str + Name: Optional[str] = None + AddPrincipals: Optional[Sequence[str]] = None + RemovePrincipals: Optional[Sequence[str]] = None + AddResources: Optional[Sequence[ResourceTypeDef]] = None + RemoveResources: Optional[Sequence[ResourceTypeDef]] = None + +class ByoipCidrTypeDef(BaseModel): + Cidr: Optional[str] = None + State: Optional[ByoipCidrStateType] = None + Events: Optional[List[ByoipCidrEventTypeDef]] = None + +class ProvisionByoipCidrRequestRequestTypeDef(BaseModel): + Cidr: str + CidrAuthorizationContext: CidrAuthorizationContextTypeDef + +class CreateAcceleratorRequestRequestTypeDef(BaseModel): + Name: str + IdempotencyToken: str + IpAddressType: Optional[IpAddressTypeType] = None + IpAddresses: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCrossAccountAttachmentRequestRequestTypeDef(BaseModel): + Name: str + IdempotencyToken: str + Principals: Optional[Sequence[str]] = None + Resources: Optional[Sequence[ResourceTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCustomRoutingAcceleratorRequestRequestTypeDef(BaseModel): + Name: str + IdempotencyToken: str + IpAddressType: Optional[IpAddressTypeType] = None + IpAddresses: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateCustomRoutingEndpointGroupRequestRequestTypeDef(BaseModel): + ListenerArn: str + EndpointGroupRegion: str + DestinationConfigurations: Sequence[CustomRoutingDestinationConfigurationTypeDef] + IdempotencyToken: str + +class CreateCustomRoutingListenerRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + PortRanges: Sequence[PortRangeTypeDef] + IdempotencyToken: str + +class CreateListenerRequestRequestTypeDef(BaseModel): + AcceleratorArn: str + PortRanges: Sequence[PortRangeTypeDef] + Protocol: ProtocolType + IdempotencyToken: str + ClientAffinity: Optional[ClientAffinityType] = None + +class CustomRoutingListenerTypeDef(BaseModel): + ListenerArn: Optional[str] = None + PortRanges: Optional[List[PortRangeTypeDef]] = None + +class ListenerTypeDef(BaseModel): + ListenerArn: Optional[str] = None + PortRanges: Optional[List[PortRangeTypeDef]] = None + Protocol: Optional[ProtocolType] = None + ClientAffinity: Optional[ClientAffinityType] = None + +class UpdateCustomRoutingListenerRequestRequestTypeDef(BaseModel): + ListenerArn: str + PortRanges: Sequence[PortRangeTypeDef] + +class UpdateListenerRequestRequestTypeDef(BaseModel): + ListenerArn: str + PortRanges: Optional[Sequence[PortRangeTypeDef]] = None + Protocol: Optional[ProtocolType] = None + ClientAffinity: Optional[ClientAffinityType] = None + +class CreateEndpointGroupRequestRequestTypeDef(BaseModel): + ListenerArn: str + EndpointGroupRegion: str + IdempotencyToken: str + EndpointConfigurations: Optional[Sequence[EndpointConfigurationTypeDef]] = None + TrafficDialPercentage: Optional[float] = None + HealthCheckPort: Optional[int] = None + HealthCheckProtocol: Optional[HealthCheckProtocolType] = None + HealthCheckPath: Optional[str] = None + HealthCheckIntervalSeconds: Optional[int] = None + ThresholdCount: Optional[int] = None + PortOverrides: Optional[Sequence[PortOverrideTypeDef]] = None + +class EndpointGroupTypeDef(BaseModel): + EndpointGroupArn: Optional[str] = None + EndpointGroupRegion: Optional[str] = None + EndpointDescriptions: Optional[List[EndpointDescriptionTypeDef]] = None + TrafficDialPercentage: Optional[float] = None + HealthCheckPort: Optional[int] = None + HealthCheckProtocol: Optional[HealthCheckProtocolType] = None + HealthCheckPath: Optional[str] = None + HealthCheckIntervalSeconds: Optional[int] = None + ThresholdCount: Optional[int] = None + PortOverrides: Optional[List[PortOverrideTypeDef]] = None + +class UpdateEndpointGroupRequestRequestTypeDef(BaseModel): + EndpointGroupArn: str + EndpointConfigurations: Optional[Sequence[EndpointConfigurationTypeDef]] = None + TrafficDialPercentage: Optional[float] = None + HealthCheckPort: Optional[int] = None + HealthCheckProtocol: Optional[HealthCheckProtocolType] = None + HealthCheckPath: Optional[str] = None + HealthCheckIntervalSeconds: Optional[int] = None + ThresholdCount: Optional[int] = None + PortOverrides: Optional[Sequence[PortOverrideTypeDef]] = None + +class ListCrossAccountResourcesResponseTypeDef(BaseModel): + CrossAccountResources: List[CrossAccountResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeCustomRoutingAcceleratorAttributesResponseTypeDef(BaseModel): + AcceleratorAttributes: CustomRoutingAcceleratorAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCustomRoutingAcceleratorAttributesResponseTypeDef(BaseModel): + AcceleratorAttributes: CustomRoutingAcceleratorAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CustomRoutingEndpointGroupTypeDef(BaseModel): + EndpointGroupArn: Optional[str] = None + EndpointGroupRegion: Optional[str] = None + DestinationDescriptions: Optional[List[CustomRoutingDestinationDescriptionTypeDef]] = None + EndpointDescriptions: Optional[List[CustomRoutingEndpointDescriptionTypeDef]] = None + +class DestinationPortMappingTypeDef(BaseModel): + AcceleratorArn: Optional[str] = None + AcceleratorSocketAddresses: Optional[List[SocketAddressTypeDef]] = None + EndpointGroupArn: Optional[str] = None + EndpointId: Optional[str] = None + EndpointGroupRegion: Optional[str] = None + DestinationSocketAddress: Optional[SocketAddressTypeDef] = None + IpAddressType: Optional[IpAddressTypeType] = None + DestinationTrafficState: Optional[CustomRoutingDestinationTrafficStateType] = None + +class PortMappingTypeDef(BaseModel): + AcceleratorPort: Optional[int] = None + EndpointGroupArn: Optional[str] = None + EndpointId: Optional[str] = None + DestinationSocketAddress: Optional[SocketAddressTypeDef] = None + Protocols: Optional[List[CustomRoutingProtocolType]] = None + DestinationTrafficState: Optional[CustomRoutingDestinationTrafficStateType] = None + +class RemoveEndpointsRequestRequestTypeDef(BaseModel): + EndpointIdentifiers: Sequence[EndpointIdentifierTypeDef] + EndpointGroupArn: str + +class ListAcceleratorsRequestListAcceleratorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListByoipCidrsRequestListByoipCidrsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCrossAccountAttachmentsRequestListCrossAccountAttachmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCrossAccountResourcesRequestListCrossAccountResourcesPaginateTypeDef(BaseModel): + ResourceOwnerAwsAccountId: str + AcceleratorArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomRoutingAcceleratorsRequestListCustomRoutingAcceleratorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomRoutingEndpointGroupsRequestListCustomRoutingEndpointGroupsPaginateTypeDef(BaseModel): + ListenerArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomRoutingListenersRequestListCustomRoutingListenersPaginateTypeDef(BaseModel): + AcceleratorArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomRoutingPortMappingsByDestinationRequestListCustomRoutingPortMappingsByDestinationPaginateTypeDef(BaseModel): + EndpointId: str + DestinationAddress: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomRoutingPortMappingsRequestListCustomRoutingPortMappingsPaginateTypeDef(BaseModel): + AcceleratorArn: str + EndpointGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEndpointGroupsRequestListEndpointGroupsPaginateTypeDef(BaseModel): + ListenerArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListListenersRequestListListenersPaginateTypeDef(BaseModel): + AcceleratorArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateAcceleratorResponseTypeDef(BaseModel): + Accelerator: AcceleratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAcceleratorResponseTypeDef(BaseModel): + Accelerator: AcceleratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAcceleratorsResponseTypeDef(BaseModel): + Accelerators: List[AcceleratorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateAcceleratorResponseTypeDef(BaseModel): + Accelerator: AcceleratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomRoutingAcceleratorResponseTypeDef(BaseModel): + Accelerator: CustomRoutingAcceleratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomRoutingAcceleratorResponseTypeDef(BaseModel): + Accelerator: CustomRoutingAcceleratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomRoutingAcceleratorsResponseTypeDef(BaseModel): + Accelerators: List[CustomRoutingAcceleratorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateCustomRoutingAcceleratorResponseTypeDef(BaseModel): + Accelerator: CustomRoutingAcceleratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCrossAccountAttachmentResponseTypeDef(BaseModel): + CrossAccountAttachment: AttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCrossAccountAttachmentResponseTypeDef(BaseModel): + CrossAccountAttachment: AttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCrossAccountAttachmentsResponseTypeDef(BaseModel): + CrossAccountAttachments: List[AttachmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateCrossAccountAttachmentResponseTypeDef(BaseModel): + CrossAccountAttachment: AttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AdvertiseByoipCidrResponseTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeprovisionByoipCidrResponseTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListByoipCidrsResponseTypeDef(BaseModel): + ByoipCidrs: List[ByoipCidrTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ProvisionByoipCidrResponseTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class WithdrawByoipCidrResponseTypeDef(BaseModel): + ByoipCidr: ByoipCidrTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomRoutingListenerResponseTypeDef(BaseModel): + Listener: CustomRoutingListenerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomRoutingListenerResponseTypeDef(BaseModel): + Listener: CustomRoutingListenerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomRoutingListenersResponseTypeDef(BaseModel): + Listeners: List[CustomRoutingListenerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateCustomRoutingListenerResponseTypeDef(BaseModel): + Listener: CustomRoutingListenerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateListenerResponseTypeDef(BaseModel): + Listener: ListenerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeListenerResponseTypeDef(BaseModel): + Listener: ListenerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListListenersResponseTypeDef(BaseModel): + Listeners: List[ListenerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateListenerResponseTypeDef(BaseModel): + Listener: ListenerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointGroupResponseTypeDef(BaseModel): + EndpointGroup: EndpointGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointGroupResponseTypeDef(BaseModel): + EndpointGroup: EndpointGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEndpointGroupsResponseTypeDef(BaseModel): + EndpointGroups: List[EndpointGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateEndpointGroupResponseTypeDef(BaseModel): + EndpointGroup: EndpointGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomRoutingEndpointGroupResponseTypeDef(BaseModel): + EndpointGroup: CustomRoutingEndpointGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomRoutingEndpointGroupResponseTypeDef(BaseModel): + EndpointGroup: CustomRoutingEndpointGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomRoutingEndpointGroupsResponseTypeDef(BaseModel): + EndpointGroups: List[CustomRoutingEndpointGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCustomRoutingPortMappingsByDestinationResponseTypeDef(BaseModel): + DestinationPortMappings: List[DestinationPortMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCustomRoutingPortMappingsResponseTypeDef(BaseModel): + PortMappings: List[PortMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/globalaccelerator_constants.py b/aws_resource_validator/pydantic_models/globalaccelerator_constants.py new file mode 100644 index 00000000..64beaab3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/globalaccelerator_constants.py @@ -0,0 +1,442 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceleratorStatusType = Literal["DEPLOYED", "IN_PROGRESS"] +ByoipCidrStateType = Literal["ADVERTISING", + "DEPROVISIONED", + "FAILED_ADVERTISING", + "FAILED_DEPROVISION", + "FAILED_PROVISION", + "FAILED_WITHDRAW", + "PENDING_ADVERTISING", + "PENDING_DEPROVISIONING", + "PENDING_PROVISIONING", + "PENDING_WITHDRAWING", + "READY",] +ClientAffinityType = Literal["NONE", "SOURCE_IP"] +CustomRoutingAcceleratorStatusType = Literal["DEPLOYED", "IN_PROGRESS"] +CustomRoutingDestinationTrafficStateType = Literal["ALLOW", "DENY"] +CustomRoutingProtocolType = Literal["TCP", "UDP"] +HealthCheckProtocolType = Literal["HTTP", "HTTPS", "TCP"] +HealthStateType = Literal["HEALTHY", "INITIAL", "UNHEALTHY"] +IpAddressFamilyType = Literal["IPv4", "IPv6"] +IpAddressTypeType = Literal["DUAL_STACK", "IPV4"] +ListAcceleratorsPaginatorName = Literal["list_accelerators"] +ListByoipCidrsPaginatorName = Literal["list_byoip_cidrs"] +ListCrossAccountAttachmentsPaginatorName = Literal["list_cross_account_attachments"] +ListCrossAccountResourcesPaginatorName = Literal["list_cross_account_resources"] +ListCustomRoutingAcceleratorsPaginatorName = Literal["list_custom_routing_accelerators"] +ListCustomRoutingEndpointGroupsPaginatorName = Literal["list_custom_routing_endpoint_groups"] +ListCustomRoutingListenersPaginatorName = Literal["list_custom_routing_listeners"] +ListCustomRoutingPortMappingsByDestinationPaginatorName = Literal["list_custom_routing_port_mappings_by_destination"] +ListCustomRoutingPortMappingsPaginatorName = Literal["list_custom_routing_port_mappings"] +ListEndpointGroupsPaginatorName = Literal["list_endpoint_groups"] +ListListenersPaginatorName = Literal["list_listeners"] +ProtocolType = Literal["TCP", "UDP"] +GlobalAcceleratorServiceName = Literal["globalaccelerator"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_accelerators", + "list_byoip_cidrs", + "list_cross_account_attachments", + "list_cross_account_resources", + "list_custom_routing_accelerators", + "list_custom_routing_endpoint_groups", + "list_custom_routing_listeners", + "list_custom_routing_port_mappings", + "list_custom_routing_port_mappings_by_destination", + "list_endpoint_groups", + "list_listeners",] diff --git a/aws_resource_validator/pydantic_models/glue_classes.py b/aws_resource_validator/pydantic_models/glue_classes.py new file mode 100644 index 00000000..36a42af6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/glue_classes.py @@ -0,0 +1,6153 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.glue_constants import * + +class NotificationPropertyTypeDef(BaseModel): + NotifyDelayAfter: Optional[int] = None + +class AggregateOperationExtraOutputTypeDef(BaseModel): + Column: List[str] + AggFunc: AggFunctionType + +class AggregateOperationOutputTypeDef(BaseModel): + Column: List[str] + AggFunc: AggFunctionType + +class AggregateOperationTypeDef(BaseModel): + Column: Sequence[str] + AggFunc: AggFunctionType + +class AmazonRedshiftAdvancedOptionTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class OptionTypeDef(BaseModel): + Value: Optional[str] = None + Label: Optional[str] = None + Description: Optional[str] = None + +class ApplyMappingExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Mapping: List["MappingExtraOutputTypeDef"] + +class ApplyMappingOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Mapping: List["MappingOutputTypeDef"] + +class ApplyMappingTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Mapping: Sequence["MappingTypeDef"] + +class AuditContextTypeDef(BaseModel): + AdditionalAuditContext: Optional[str] = None + RequestedColumns: Optional[Sequence[str]] = None + AllColumnsRequested: Optional[bool] = None + +class AuthorizationCodePropertiesTypeDef(BaseModel): + AuthorizationCode: Optional[str] = None + RedirectUri: Optional[str] = None + +class PartitionValueListOutputTypeDef(BaseModel): + Values: List[str] + +class BasicCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class BasicCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class BasicCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Database: str + Table: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchDeleteConnectionRequestRequestTypeDef(BaseModel): + ConnectionNameList: Sequence[str] + CatalogId: Optional[str] = None + +class ErrorDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchDeleteTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TablesToDelete: Sequence[str] + CatalogId: Optional[str] = None + TransactionId: Optional[str] = None + +class BatchDeleteTableVersionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + VersionIds: Sequence[str] + CatalogId: Optional[str] = None + +class BatchGetBlueprintsRequestRequestTypeDef(BaseModel): + Names: Sequence[str] + IncludeBlueprint: Optional[bool] = None + IncludeParameterSpec: Optional[bool] = None + +class BatchGetCrawlersRequestRequestTypeDef(BaseModel): + CrawlerNames: Sequence[str] + +class BatchGetCustomEntityTypesRequestRequestTypeDef(BaseModel): + Names: Sequence[str] + +class CustomEntityTypeTypeDef(BaseModel): + Name: str + RegexString: str + ContextWords: Optional[List[str]] = None + +class BatchGetDataQualityResultRequestRequestTypeDef(BaseModel): + ResultIds: Sequence[str] + +class BatchGetDevEndpointsRequestRequestTypeDef(BaseModel): + DevEndpointNames: Sequence[str] + +class DevEndpointTypeDef(BaseModel): + EndpointName: Optional[str] = None + RoleArn: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + SubnetId: Optional[str] = None + YarnEndpointAddress: Optional[str] = None + PrivateAddress: Optional[str] = None + ZeppelinRemoteSparkInterpreterPort: Optional[int] = None + PublicAddress: Optional[str] = None + Status: Optional[str] = None + WorkerType: Optional[WorkerTypeType] = None + GlueVersion: Optional[str] = None + NumberOfWorkers: Optional[int] = None + NumberOfNodes: Optional[int] = None + AvailabilityZone: Optional[str] = None + VpcId: Optional[str] = None + ExtraPythonLibsS3Path: Optional[str] = None + ExtraJarsS3Path: Optional[str] = None + FailureReason: Optional[str] = None + LastUpdateStatus: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + LastModifiedTimestamp: Optional[datetime] = None + PublicKey: Optional[str] = None + PublicKeys: Optional[List[str]] = None + SecurityConfiguration: Optional[str] = None + Arguments: Optional[Dict[str, str]] = None + +class BatchGetJobsRequestRequestTypeDef(BaseModel): + JobNames: Sequence[str] + +class BatchGetTableOptimizerEntryTypeDef(BaseModel): + catalogId: Optional[str] = None + databaseName: Optional[str] = None + tableName: Optional[str] = None + type: Optional[Literal["compaction"]] = None + +class BatchGetTriggersRequestRequestTypeDef(BaseModel): + TriggerNames: Sequence[str] + +class BatchGetWorkflowsRequestRequestTypeDef(BaseModel): + Names: Sequence[str] + IncludeGraph: Optional[bool] = None + +class BatchStopJobRunRequestRequestTypeDef(BaseModel): + JobName: str + JobRunIds: Sequence[str] + +class BatchStopJobRunSuccessfulSubmissionTypeDef(BaseModel): + JobName: Optional[str] = None + JobRunId: Optional[str] = None + +class BinaryColumnStatisticsDataTypeDef(BaseModel): + MaximumLength: int + AverageLength: float + NumberOfNulls: int + +class BlueprintDetailsTypeDef(BaseModel): + BlueprintName: Optional[str] = None + RunId: Optional[str] = None + +class BlueprintRunTypeDef(BaseModel): + BlueprintName: Optional[str] = None + RunId: Optional[str] = None + WorkflowName: Optional[str] = None + State: Optional[BlueprintRunStateType] = None + StartedOn: Optional[datetime] = None + CompletedOn: Optional[datetime] = None + ErrorMessage: Optional[str] = None + RollbackErrorMessage: Optional[str] = None + Parameters: Optional[str] = None + RoleArn: Optional[str] = None + +class LastActiveDefinitionTypeDef(BaseModel): + Description: Optional[str] = None + LastModifiedOn: Optional[datetime] = None + ParameterSpec: Optional[str] = None + BlueprintLocation: Optional[str] = None + BlueprintServiceLocation: Optional[str] = None + +class BooleanColumnStatisticsDataTypeDef(BaseModel): + NumberOfTrues: int + NumberOfFalses: int + NumberOfNulls: int + +class CancelDataQualityRuleRecommendationRunRequestRequestTypeDef(BaseModel): + RunId: str + +class CancelDataQualityRulesetEvaluationRunRequestRequestTypeDef(BaseModel): + RunId: str + +class CancelMLTaskRunRequestRequestTypeDef(BaseModel): + TransformId: str + TaskRunId: str + +class CancelStatementRequestRequestTypeDef(BaseModel): + SessionId: str + Id: int + RequestOrigin: Optional[str] = None + +class CatalogEntryTypeDef(BaseModel): + DatabaseName: str + TableName: str + +class CatalogImportStatusTypeDef(BaseModel): + ImportCompleted: Optional[bool] = None + ImportTime: Optional[datetime] = None + ImportedBy: Optional[str] = None + +class KafkaStreamingSourceOptionsExtraOutputTypeDef(BaseModel): + BootstrapServers: Optional[str] = None + SecurityProtocol: Optional[str] = None + ConnectionName: Optional[str] = None + TopicName: Optional[str] = None + Assign: Optional[str] = None + SubscribePattern: Optional[str] = None + Classification: Optional[str] = None + Delimiter: Optional[str] = None + StartingOffsets: Optional[str] = None + EndingOffsets: Optional[str] = None + PollTimeoutMs: Optional[int] = None + NumRetries: Optional[int] = None + RetryIntervalMs: Optional[int] = None + MaxOffsetsPerTrigger: Optional[int] = None + MinPartitions: Optional[int] = None + IncludeHeaders: Optional[bool] = None + AddRecordTimestamp: Optional[str] = None + EmitConsumerLagMetrics: Optional[str] = None + StartingTimestamp: Optional[datetime] = None + +class StreamingDataPreviewOptionsTypeDef(BaseModel): + PollingTime: Optional[int] = None + RecordPollingLimit: Optional[int] = None + +class KafkaStreamingSourceOptionsOutputTypeDef(BaseModel): + BootstrapServers: Optional[str] = None + SecurityProtocol: Optional[str] = None + ConnectionName: Optional[str] = None + TopicName: Optional[str] = None + Assign: Optional[str] = None + SubscribePattern: Optional[str] = None + Classification: Optional[str] = None + Delimiter: Optional[str] = None + StartingOffsets: Optional[str] = None + EndingOffsets: Optional[str] = None + PollTimeoutMs: Optional[int] = None + NumRetries: Optional[int] = None + RetryIntervalMs: Optional[int] = None + MaxOffsetsPerTrigger: Optional[int] = None + MinPartitions: Optional[int] = None + IncludeHeaders: Optional[bool] = None + AddRecordTimestamp: Optional[str] = None + EmitConsumerLagMetrics: Optional[str] = None + StartingTimestamp: Optional[datetime] = None + +class KinesisStreamingSourceOptionsExtraOutputTypeDef(BaseModel): + EndpointUrl: Optional[str] = None + StreamName: Optional[str] = None + Classification: Optional[str] = None + Delimiter: Optional[str] = None + StartingPosition: Optional[StartingPositionType] = None + MaxFetchTimeInMs: Optional[int] = None + MaxFetchRecordsPerShard: Optional[int] = None + MaxRecordPerRead: Optional[int] = None + AddIdleTimeBetweenReads: Optional[bool] = None + IdleTimeBetweenReadsInMs: Optional[int] = None + DescribeShardInterval: Optional[int] = None + NumRetries: Optional[int] = None + RetryIntervalMs: Optional[int] = None + MaxRetryIntervalMs: Optional[int] = None + AvoidEmptyBatches: Optional[bool] = None + StreamArn: Optional[str] = None + RoleArn: Optional[str] = None + RoleSessionName: Optional[str] = None + AddRecordTimestamp: Optional[str] = None + EmitConsumerLagMetrics: Optional[str] = None + StartingTimestamp: Optional[datetime] = None + +class KinesisStreamingSourceOptionsOutputTypeDef(BaseModel): + EndpointUrl: Optional[str] = None + StreamName: Optional[str] = None + Classification: Optional[str] = None + Delimiter: Optional[str] = None + StartingPosition: Optional[StartingPositionType] = None + MaxFetchTimeInMs: Optional[int] = None + MaxFetchRecordsPerShard: Optional[int] = None + MaxRecordPerRead: Optional[int] = None + AddIdleTimeBetweenReads: Optional[bool] = None + IdleTimeBetweenReadsInMs: Optional[int] = None + DescribeShardInterval: Optional[int] = None + NumRetries: Optional[int] = None + RetryIntervalMs: Optional[int] = None + MaxRetryIntervalMs: Optional[int] = None + AvoidEmptyBatches: Optional[bool] = None + StreamArn: Optional[str] = None + RoleArn: Optional[str] = None + RoleSessionName: Optional[str] = None + AddRecordTimestamp: Optional[str] = None + EmitConsumerLagMetrics: Optional[str] = None + StartingTimestamp: Optional[datetime] = None + +class CatalogSchemaChangePolicyTypeDef(BaseModel): + EnableUpdateCatalog: Optional[bool] = None + UpdateBehavior: Optional[UpdateCatalogBehaviorType] = None + +class CatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class CatalogTargetExtraOutputTypeDef(BaseModel): + DatabaseName: str + Tables: List[str] + ConnectionName: Optional[str] = None + EventQueueArn: Optional[str] = None + DlqEventQueueArn: Optional[str] = None + +class CatalogTargetOutputTypeDef(BaseModel): + DatabaseName: str + Tables: List[str] + ConnectionName: Optional[str] = None + EventQueueArn: Optional[str] = None + DlqEventQueueArn: Optional[str] = None + +class CatalogTargetTypeDef(BaseModel): + DatabaseName: str + Tables: Sequence[str] + ConnectionName: Optional[str] = None + EventQueueArn: Optional[str] = None + DlqEventQueueArn: Optional[str] = None + +class CheckSchemaVersionValidityInputRequestTypeDef(BaseModel): + DataFormat: DataFormatType + SchemaDefinition: str + +class CsvClassifierTypeDef(BaseModel): + Name: str + CreationTime: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + Version: Optional[int] = None + Delimiter: Optional[str] = None + QuoteSymbol: Optional[str] = None + ContainsHeader: Optional[CsvHeaderOptionType] = None + Header: Optional[List[str]] = None + DisableValueTrimming: Optional[bool] = None + AllowSingleColumn: Optional[bool] = None + CustomDatatypeConfigured: Optional[bool] = None + CustomDatatypes: Optional[List[str]] = None + Serde: Optional[CsvSerdeOptionType] = None + +class GrokClassifierTypeDef(BaseModel): + Name: str + Classification: str + GrokPattern: str + CreationTime: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + Version: Optional[int] = None + CustomPatterns: Optional[str] = None + +class JsonClassifierTypeDef(BaseModel): + Name: str + JsonPath: str + CreationTime: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + Version: Optional[int] = None + +class XMLClassifierTypeDef(BaseModel): + Name: str + Classification: str + CreationTime: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + Version: Optional[int] = None + RowTag: Optional[str] = None + +class CloudWatchEncryptionTypeDef(BaseModel): + CloudWatchEncryptionMode: Optional[CloudWatchEncryptionModeType] = None + KmsKeyArn: Optional[str] = None + +class ConnectorDataTargetExtraOutputTypeDef(BaseModel): + Name: str + ConnectionType: str + Data: Dict[str, str] + Inputs: Optional[List[str]] = None + +class DirectJDBCSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + ConnectionName: str + ConnectionType: JDBCConnectionTypeType + RedshiftTmpDir: Optional[str] = None + +class DropDuplicatesExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Columns: Optional[List[List[str]]] = None + +class DropFieldsExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Paths: List[List[str]] + +class DynamoDBCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class FillMissingValuesExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + ImputedPath: str + FilledPath: Optional[str] = None + +class MergeExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Source: str + PrimaryKeys: List[List[str]] + +class MicrosoftSQLServerCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class MicrosoftSQLServerCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class MySQLCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class MySQLCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class OracleSQLCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class OracleSQLCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class PIIDetectionExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + PiiType: PiiTypeType + EntityTypesToDetect: List[str] + OutputColumnName: Optional[str] = None + SampleFraction: Optional[float] = None + ThresholdFraction: Optional[float] = None + MaskValue: Optional[str] = None + +class PostgreSQLCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class PostgreSQLCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class RedshiftSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + RedshiftTmpDir: Optional[str] = None + TmpDirIAMRole: Optional[str] = None + +class RelationalCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + +class RenameFieldExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + SourcePath: List[str] + TargetPath: List[str] + +class SelectFieldsExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Paths: List[List[str]] + +class SelectFromCollectionExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Index: int + +class SpigotExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Topk: Optional[int] = None + Prob: Optional[float] = None + +class SplitFieldsExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Paths: List[List[str]] + +class UnionExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + UnionType: UnionTypeType + +class ConnectorDataTargetOutputTypeDef(BaseModel): + Name: str + ConnectionType: str + Data: Dict[str, str] + Inputs: Optional[List[str]] = None + +class DropDuplicatesOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Columns: Optional[List[List[str]]] = None + +class DropFieldsOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Paths: List[List[str]] + +class FillMissingValuesOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + ImputedPath: str + FilledPath: Optional[str] = None + +class MergeOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Source: str + PrimaryKeys: List[List[str]] + +class MicrosoftSQLServerCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class MySQLCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class OracleSQLCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class PIIDetectionOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + PiiType: PiiTypeType + EntityTypesToDetect: List[str] + OutputColumnName: Optional[str] = None + SampleFraction: Optional[float] = None + ThresholdFraction: Optional[float] = None + MaskValue: Optional[str] = None + +class PostgreSQLCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + +class RenameFieldOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + SourcePath: List[str] + TargetPath: List[str] + +class SelectFieldsOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Paths: List[List[str]] + +class SelectFromCollectionOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Index: int + +class SpigotOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Topk: Optional[int] = None + Prob: Optional[float] = None + +class SplitFieldsOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Paths: List[List[str]] + +class UnionOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + UnionType: UnionTypeType + +class ConnectorDataTargetTypeDef(BaseModel): + Name: str + ConnectionType: str + Data: Mapping[str, str] + Inputs: Optional[Sequence[str]] = None + +class DropDuplicatesTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Columns: Optional[Sequence[Sequence[str]]] = None + +class DropFieldsTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Paths: Sequence[Sequence[str]] + +class FillMissingValuesTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + ImputedPath: str + FilledPath: Optional[str] = None + +class MergeTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Source: str + PrimaryKeys: Sequence[Sequence[str]] + +class MicrosoftSQLServerCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Database: str + Table: str + +class MySQLCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Database: str + Table: str + +class OracleSQLCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Database: str + Table: str + +class PIIDetectionTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + PiiType: PiiTypeType + EntityTypesToDetect: Sequence[str] + OutputColumnName: Optional[str] = None + SampleFraction: Optional[float] = None + ThresholdFraction: Optional[float] = None + MaskValue: Optional[str] = None + +class PostgreSQLCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Database: str + Table: str + +class RenameFieldTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + SourcePath: Sequence[str] + TargetPath: Sequence[str] + +class SelectFieldsTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Paths: Sequence[Sequence[str]] + +class SelectFromCollectionTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Index: int + +class SpigotTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Path: str + Topk: Optional[int] = None + Prob: Optional[float] = None + +class SplitFieldsTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Paths: Sequence[Sequence[str]] + +class UnionTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + UnionType: UnionTypeType + +class CodeGenEdgeTypeDef(BaseModel): + Source: str + Target: str + TargetParameter: Optional[str] = None + +class CodeGenNodeArgTypeDef(BaseModel): + Name: str + Value: str + Param: Optional[bool] = None + +class ColumnImportanceTypeDef(BaseModel): + ColumnName: Optional[str] = None + Importance: Optional[float] = None + +class ColumnOutputTypeDef(BaseModel): + Name: str + Type: Optional[str] = None + Comment: Optional[str] = None + Parameters: Optional[Dict[str, str]] = None + +class ColumnRowFilterTypeDef(BaseModel): + ColumnName: Optional[str] = None + RowFilterExpression: Optional[str] = None + +class DateColumnStatisticsDataOutputTypeDef(BaseModel): + NumberOfNulls: int + NumberOfDistinctValues: int + MinimumValue: Optional[datetime] = None + MaximumValue: Optional[datetime] = None + +class DoubleColumnStatisticsDataTypeDef(BaseModel): + NumberOfNulls: int + NumberOfDistinctValues: int + MinimumValue: Optional[float] = None + MaximumValue: Optional[float] = None + +class LongColumnStatisticsDataTypeDef(BaseModel): + NumberOfNulls: int + NumberOfDistinctValues: int + MinimumValue: Optional[int] = None + MaximumValue: Optional[int] = None + +class StringColumnStatisticsDataTypeDef(BaseModel): + MaximumLength: int + AverageLength: float + NumberOfNulls: int + NumberOfDistinctValues: int + +class ColumnStatisticsTaskRunTypeDef(BaseModel): + CustomerId: Optional[str] = None + ColumnStatisticsTaskRunId: Optional[str] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + ColumnNameList: Optional[List[str]] = None + CatalogID: Optional[str] = None + Role: Optional[str] = None + SampleSize: Optional[float] = None + SecurityConfiguration: Optional[str] = None + NumberOfWorkers: Optional[int] = None + WorkerType: Optional[str] = None + Status: Optional[ColumnStatisticsStateType] = None + CreationTime: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ErrorMessage: Optional[str] = None + DPUSeconds: Optional[float] = None + +class ColumnTypeDef(BaseModel): + Name: str + Type: Optional[str] = None + Comment: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + +class ConditionExpressionTypeDef(BaseModel): + Condition: str + TargetColumn: str + Value: Optional[str] = None + +class ConditionTypeDef(BaseModel): + LogicalOperator: Optional[Literal["EQUALS"]] = None + JobName: Optional[str] = None + State: Optional[JobRunStateType] = None + CrawlerName: Optional[str] = None + CrawlState: Optional[CrawlStateType] = None + +class ConfigurationObjectOutputTypeDef(BaseModel): + DefaultValue: Optional[str] = None + AllowedValues: Optional[List[str]] = None + MinValue: Optional[str] = None + MaxValue: Optional[str] = None + +class ConfigurationObjectTypeDef(BaseModel): + DefaultValue: Optional[str] = None + AllowedValues: Optional[Sequence[str]] = None + MinValue: Optional[str] = None + MaxValue: Optional[str] = None + +class ConfusionMatrixTypeDef(BaseModel): + NumTruePositives: Optional[int] = None + NumFalsePositives: Optional[int] = None + NumTrueNegatives: Optional[int] = None + NumFalseNegatives: Optional[int] = None + +class PhysicalConnectionRequirementsTypeDef(BaseModel): + SubnetId: Optional[str] = None + SecurityGroupIdList: Optional[Sequence[str]] = None + AvailabilityZone: Optional[str] = None + +class ConnectionPasswordEncryptionTypeDef(BaseModel): + ReturnConnectionPasswordEncrypted: bool + AwsKmsKeyId: Optional[str] = None + +class PhysicalConnectionRequirementsOutputTypeDef(BaseModel): + SubnetId: Optional[str] = None + SecurityGroupIdList: Optional[List[str]] = None + AvailabilityZone: Optional[str] = None + +class ConnectionsListExtraOutputTypeDef(BaseModel): + Connections: Optional[List[str]] = None + +class ConnectionsListOutputTypeDef(BaseModel): + Connections: Optional[List[str]] = None + +class ConnectionsListTypeDef(BaseModel): + Connections: Optional[Sequence[str]] = None + +class CrawlTypeDef(BaseModel): + State: Optional[CrawlStateType] = None + StartedOn: Optional[datetime] = None + CompletedOn: Optional[datetime] = None + ErrorMessage: Optional[str] = None + LogGroup: Optional[str] = None + LogStream: Optional[str] = None + +class CrawlerHistoryTypeDef(BaseModel): + CrawlId: Optional[str] = None + State: Optional[CrawlerHistoryStateType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Summary: Optional[str] = None + ErrorMessage: Optional[str] = None + LogGroup: Optional[str] = None + LogStream: Optional[str] = None + MessagePrefix: Optional[str] = None + DPUHour: Optional[float] = None + +class CrawlerMetricsTypeDef(BaseModel): + CrawlerName: Optional[str] = None + TimeLeftSeconds: Optional[float] = None + StillEstimating: Optional[bool] = None + LastRuntimeSeconds: Optional[float] = None + MedianRuntimeSeconds: Optional[float] = None + TablesCreated: Optional[int] = None + TablesUpdated: Optional[int] = None + TablesDeleted: Optional[int] = None + +class DeltaTargetExtraOutputTypeDef(BaseModel): + DeltaTables: Optional[List[str]] = None + ConnectionName: Optional[str] = None + WriteManifest: Optional[bool] = None + CreateNativeDeltaTable: Optional[bool] = None + +class DynamoDBTargetTypeDef(BaseModel): + Path: Optional[str] = None + scanAll: Optional[bool] = None + scanRate: Optional[float] = None + +class HudiTargetExtraOutputTypeDef(BaseModel): + Paths: Optional[List[str]] = None + ConnectionName: Optional[str] = None + Exclusions: Optional[List[str]] = None + MaximumTraversalDepth: Optional[int] = None + +class IcebergTargetExtraOutputTypeDef(BaseModel): + Paths: Optional[List[str]] = None + ConnectionName: Optional[str] = None + Exclusions: Optional[List[str]] = None + MaximumTraversalDepth: Optional[int] = None + +class JdbcTargetExtraOutputTypeDef(BaseModel): + ConnectionName: Optional[str] = None + Path: Optional[str] = None + Exclusions: Optional[List[str]] = None + EnableAdditionalMetadata: Optional[List[JdbcMetadataEntryType]] = None + +class MongoDBTargetTypeDef(BaseModel): + ConnectionName: Optional[str] = None + Path: Optional[str] = None + ScanAll: Optional[bool] = None + +class S3TargetExtraOutputTypeDef(BaseModel): + Path: Optional[str] = None + Exclusions: Optional[List[str]] = None + ConnectionName: Optional[str] = None + SampleSize: Optional[int] = None + EventQueueArn: Optional[str] = None + DlqEventQueueArn: Optional[str] = None + +class DeltaTargetOutputTypeDef(BaseModel): + DeltaTables: Optional[List[str]] = None + ConnectionName: Optional[str] = None + WriteManifest: Optional[bool] = None + CreateNativeDeltaTable: Optional[bool] = None + +class HudiTargetOutputTypeDef(BaseModel): + Paths: Optional[List[str]] = None + ConnectionName: Optional[str] = None + Exclusions: Optional[List[str]] = None + MaximumTraversalDepth: Optional[int] = None + +class IcebergTargetOutputTypeDef(BaseModel): + Paths: Optional[List[str]] = None + ConnectionName: Optional[str] = None + Exclusions: Optional[List[str]] = None + MaximumTraversalDepth: Optional[int] = None + +class JdbcTargetOutputTypeDef(BaseModel): + ConnectionName: Optional[str] = None + Path: Optional[str] = None + Exclusions: Optional[List[str]] = None + EnableAdditionalMetadata: Optional[List[JdbcMetadataEntryType]] = None + +class S3TargetOutputTypeDef(BaseModel): + Path: Optional[str] = None + Exclusions: Optional[List[str]] = None + ConnectionName: Optional[str] = None + SampleSize: Optional[int] = None + EventQueueArn: Optional[str] = None + DlqEventQueueArn: Optional[str] = None + +class DeltaTargetTypeDef(BaseModel): + DeltaTables: Optional[Sequence[str]] = None + ConnectionName: Optional[str] = None + WriteManifest: Optional[bool] = None + CreateNativeDeltaTable: Optional[bool] = None + +class HudiTargetTypeDef(BaseModel): + Paths: Optional[Sequence[str]] = None + ConnectionName: Optional[str] = None + Exclusions: Optional[Sequence[str]] = None + MaximumTraversalDepth: Optional[int] = None + +class IcebergTargetTypeDef(BaseModel): + Paths: Optional[Sequence[str]] = None + ConnectionName: Optional[str] = None + Exclusions: Optional[Sequence[str]] = None + MaximumTraversalDepth: Optional[int] = None + +class JdbcTargetTypeDef(BaseModel): + ConnectionName: Optional[str] = None + Path: Optional[str] = None + Exclusions: Optional[Sequence[str]] = None + EnableAdditionalMetadata: Optional[Sequence[JdbcMetadataEntryType]] = None + +class S3TargetTypeDef(BaseModel): + Path: Optional[str] = None + Exclusions: Optional[Sequence[str]] = None + ConnectionName: Optional[str] = None + SampleSize: Optional[int] = None + EventQueueArn: Optional[str] = None + DlqEventQueueArn: Optional[str] = None + +class LakeFormationConfigurationTypeDef(BaseModel): + UseLakeFormationCredentials: Optional[bool] = None + AccountId: Optional[str] = None + +class LastCrawlInfoTypeDef(BaseModel): + Status: Optional[LastCrawlStatusType] = None + ErrorMessage: Optional[str] = None + LogGroup: Optional[str] = None + LogStream: Optional[str] = None + MessagePrefix: Optional[str] = None + StartTime: Optional[datetime] = None + +class LineageConfigurationTypeDef(BaseModel): + CrawlerLineageSettings: Optional[CrawlerLineageSettingsType] = None + +class RecrawlPolicyTypeDef(BaseModel): + RecrawlBehavior: Optional[RecrawlBehaviorType] = None + +class ScheduleTypeDef(BaseModel): + ScheduleExpression: Optional[str] = None + State: Optional[ScheduleStateType] = None + +class SchemaChangePolicyTypeDef(BaseModel): + UpdateBehavior: Optional[UpdateBehaviorType] = None + DeleteBehavior: Optional[DeleteBehaviorType] = None + +class CrawlsFilterTypeDef(BaseModel): + FieldName: Optional[FieldNameType] = None + FilterOperator: Optional[FilterOperatorType] = None + FieldValue: Optional[str] = None + +class CreateBlueprintRequestRequestTypeDef(BaseModel): + Name: str + BlueprintLocation: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateCsvClassifierRequestTypeDef(BaseModel): + Name: str + Delimiter: Optional[str] = None + QuoteSymbol: Optional[str] = None + ContainsHeader: Optional[CsvHeaderOptionType] = None + Header: Optional[Sequence[str]] = None + DisableValueTrimming: Optional[bool] = None + AllowSingleColumn: Optional[bool] = None + CustomDatatypeConfigured: Optional[bool] = None + CustomDatatypes: Optional[Sequence[str]] = None + Serde: Optional[CsvSerdeOptionType] = None + +class CreateGrokClassifierRequestTypeDef(BaseModel): + Classification: str + Name: str + GrokPattern: str + CustomPatterns: Optional[str] = None + +class CreateJsonClassifierRequestTypeDef(BaseModel): + Name: str + JsonPath: str + +class CreateXMLClassifierRequestTypeDef(BaseModel): + Classification: str + Name: str + RowTag: Optional[str] = None + +class CreateCustomEntityTypeRequestRequestTypeDef(BaseModel): + Name: str + RegexString: str + ContextWords: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class DataQualityTargetTableTypeDef(BaseModel): + TableName: str + DatabaseName: str + CatalogId: Optional[str] = None + +class CreateDevEndpointRequestRequestTypeDef(BaseModel): + EndpointName: str + RoleArn: str + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetId: Optional[str] = None + PublicKey: Optional[str] = None + PublicKeys: Optional[Sequence[str]] = None + NumberOfNodes: Optional[int] = None + WorkerType: Optional[WorkerTypeType] = None + GlueVersion: Optional[str] = None + NumberOfWorkers: Optional[int] = None + ExtraPythonLibsS3Path: Optional[str] = None + ExtraJarsS3Path: Optional[str] = None + SecurityConfiguration: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + Arguments: Optional[Mapping[str, str]] = None + +class ExecutionPropertyTypeDef(BaseModel): + MaxConcurrentRuns: Optional[int] = None + +class JobCommandTypeDef(BaseModel): + Name: Optional[str] = None + ScriptLocation: Optional[str] = None + PythonVersion: Optional[str] = None + Runtime: Optional[str] = None + +class SourceControlDetailsTypeDef(BaseModel): + Provider: Optional[SourceControlProviderType] = None + Repository: Optional[str] = None + Owner: Optional[str] = None + Branch: Optional[str] = None + Folder: Optional[str] = None + LastCommitId: Optional[str] = None + AuthStrategy: Optional[SourceControlAuthStrategyType] = None + AuthToken: Optional[str] = None + +class PartitionIndexTypeDef(BaseModel): + Keys: Sequence[str] + IndexName: str + +class CreateRegistryInputRequestTypeDef(BaseModel): + RegistryName: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class RegistryIdTypeDef(BaseModel): + RegistryName: Optional[str] = None + RegistryArn: Optional[str] = None + +class SessionCommandTypeDef(BaseModel): + Name: Optional[str] = None + PythonVersion: Optional[str] = None + +class TableOptimizerConfigurationTypeDef(BaseModel): + roleArn: Optional[str] = None + enabled: Optional[bool] = None + +class EventBatchingConditionTypeDef(BaseModel): + BatchSize: int + BatchWindow: Optional[int] = None + +class CreateWorkflowRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + DefaultRunProperties: Optional[Mapping[str, str]] = None + Tags: Optional[Mapping[str, str]] = None + MaxConcurrentRuns: Optional[int] = None + +class DQResultsPublishingOptionsTypeDef(BaseModel): + EvaluationContext: Optional[str] = None + ResultsS3Prefix: Optional[str] = None + CloudWatchMetricsEnabled: Optional[bool] = None + ResultsPublishingEnabled: Optional[bool] = None + +class DQStopJobOnFailureOptionsTypeDef(BaseModel): + StopJobOnFailureTiming: Optional[DQStopJobOnFailureTimingType] = None + +class EncryptionAtRestTypeDef(BaseModel): + CatalogEncryptionMode: CatalogEncryptionModeType + SseAwsKmsKeyId: Optional[str] = None + CatalogEncryptionServiceRole: Optional[str] = None + +class DataLakePrincipalTypeDef(BaseModel): + DataLakePrincipalIdentifier: Optional[str] = None + +class DataQualityAnalyzerResultTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + EvaluationMessage: Optional[str] = None + EvaluatedMetrics: Optional[Dict[str, float]] = None + +class DataQualityEvaluationRunAdditionalRunOptionsTypeDef(BaseModel): + CloudWatchMetricsEnabled: Optional[bool] = None + ResultsS3Prefix: Optional[str] = None + CompositeRuleEvaluationMethod: Optional[DQCompositeRuleEvaluationMethodType] = None + +class DataQualityMetricValuesTypeDef(BaseModel): + ActualValue: Optional[float] = None + ExpectedValue: Optional[float] = None + LowerLimit: Optional[float] = None + UpperLimit: Optional[float] = None + +class DataQualityRuleResultTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + EvaluationMessage: Optional[str] = None + Result: Optional[DataQualityRuleResultStatusType] = None + EvaluatedMetrics: Optional[Dict[str, float]] = None + +class GlueTableOutputTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + ConnectionName: Optional[str] = None + AdditionalOptions: Optional[Dict[str, str]] = None + +class GlueTableTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + ConnectionName: Optional[str] = None + AdditionalOptions: Optional[Mapping[str, str]] = None + +class DatabaseIdentifierTypeDef(BaseModel): + CatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + Region: Optional[str] = None + +class FederatedDatabaseTypeDef(BaseModel): + Identifier: Optional[str] = None + ConnectionName: Optional[str] = None + +class DatatypeTypeDef(BaseModel): + Id: str + Label: str + +class DecimalNumberOutputTypeDef(BaseModel): + UnscaledValue: bytes + Scale: int + +class DeleteBlueprintRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteClassifierRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteColumnStatisticsForPartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionValues: Sequence[str] + ColumnName: str + CatalogId: Optional[str] = None + +class DeleteColumnStatisticsForTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + ColumnName: str + CatalogId: Optional[str] = None + +class DeleteConnectionRequestRequestTypeDef(BaseModel): + ConnectionName: str + CatalogId: Optional[str] = None + +class DeleteCrawlerRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteCustomEntityTypeRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteDataQualityRulesetRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteDatabaseRequestRequestTypeDef(BaseModel): + Name: str + CatalogId: Optional[str] = None + +class DeleteDevEndpointRequestRequestTypeDef(BaseModel): + EndpointName: str + +class DeleteJobRequestRequestTypeDef(BaseModel): + JobName: str + +class DeleteMLTransformRequestRequestTypeDef(BaseModel): + TransformId: str + +class DeletePartitionIndexRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + IndexName: str + CatalogId: Optional[str] = None + +class DeletePartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionValues: Sequence[str] + CatalogId: Optional[str] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + PolicyHashCondition: Optional[str] = None + ResourceArn: Optional[str] = None + +class SchemaIdTypeDef(BaseModel): + SchemaArn: Optional[str] = None + SchemaName: Optional[str] = None + RegistryName: Optional[str] = None + +class DeleteSecurityConfigurationRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteSessionRequestRequestTypeDef(BaseModel): + Id: str + RequestOrigin: Optional[str] = None + +class DeleteTableOptimizerRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + Type: Literal["compaction"] + +class DeleteTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + Name: str + CatalogId: Optional[str] = None + TransactionId: Optional[str] = None + +class DeleteTableVersionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + VersionId: str + CatalogId: Optional[str] = None + +class DeleteTriggerRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteUsageProfileRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteUserDefinedFunctionRequestRequestTypeDef(BaseModel): + DatabaseName: str + FunctionName: str + CatalogId: Optional[str] = None + +class DeleteWorkflowRequestRequestTypeDef(BaseModel): + Name: str + +class DevEndpointCustomLibrariesTypeDef(BaseModel): + ExtraPythonLibsS3Path: Optional[str] = None + ExtraJarsS3Path: Optional[str] = None + +class DirectSchemaChangePolicyTypeDef(BaseModel): + EnableUpdateCatalog: Optional[bool] = None + UpdateBehavior: Optional[UpdateCatalogBehaviorType] = None + Table: Optional[str] = None + Database: Optional[str] = None + +class NullCheckBoxListTypeDef(BaseModel): + IsEmpty: Optional[bool] = None + IsNullString: Optional[bool] = None + IsNegOne: Optional[bool] = None + +class TransformConfigParameterExtraOutputTypeDef(BaseModel): + Name: str + Type: ParamTypeType + ValidationRule: Optional[str] = None + ValidationMessage: Optional[str] = None + Value: Optional[List[str]] = None + ListType: Optional[ParamTypeType] = None + IsOptional: Optional[bool] = None + +class TransformConfigParameterOutputTypeDef(BaseModel): + Name: str + Type: ParamTypeType + ValidationRule: Optional[str] = None + ValidationMessage: Optional[str] = None + Value: Optional[List[str]] = None + ListType: Optional[ParamTypeType] = None + IsOptional: Optional[bool] = None + +class TransformConfigParameterTypeDef(BaseModel): + Name: str + Type: ParamTypeType + ValidationRule: Optional[str] = None + ValidationMessage: Optional[str] = None + Value: Optional[Sequence[str]] = None + ListType: Optional[ParamTypeType] = None + IsOptional: Optional[bool] = None + +class EdgeTypeDef(BaseModel): + SourceId: Optional[str] = None + DestinationId: Optional[str] = None + +class JobBookmarksEncryptionTypeDef(BaseModel): + JobBookmarksEncryptionMode: Optional[JobBookmarksEncryptionModeType] = None + KmsKeyArn: Optional[str] = None + +class S3EncryptionTypeDef(BaseModel): + S3EncryptionMode: Optional[S3EncryptionModeType] = None + KmsKeyArn: Optional[str] = None + +class ErrorDetailsTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class ExportLabelsTaskRunPropertiesTypeDef(BaseModel): + OutputS3Path: Optional[str] = None + +class FederatedTableTypeDef(BaseModel): + Identifier: Optional[str] = None + DatabaseIdentifier: Optional[str] = None + ConnectionName: Optional[str] = None + +class FilterValueExtraOutputTypeDef(BaseModel): + Type: FilterValueTypeType + Value: List[str] + +class FilterValueOutputTypeDef(BaseModel): + Type: FilterValueTypeType + Value: List[str] + +class FilterValueTypeDef(BaseModel): + Type: FilterValueTypeType + Value: Sequence[str] + +class FindMatchesParametersTypeDef(BaseModel): + PrimaryKeyColumnName: Optional[str] = None + PrecisionRecallTradeoff: Optional[float] = None + AccuracyCostTradeoff: Optional[float] = None + EnforceProvidedLabels: Optional[bool] = None + +class FindMatchesTaskRunPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobName: Optional[str] = None + JobRunId: Optional[str] = None + +class GetBlueprintRequestRequestTypeDef(BaseModel): + Name: str + IncludeBlueprint: Optional[bool] = None + IncludeParameterSpec: Optional[bool] = None + +class GetBlueprintRunRequestRequestTypeDef(BaseModel): + BlueprintName: str + RunId: str + +class GetBlueprintRunsRequestRequestTypeDef(BaseModel): + BlueprintName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetCatalogImportStatusRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + +class GetClassifierRequestRequestTypeDef(BaseModel): + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetClassifiersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetColumnStatisticsForPartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionValues: Sequence[str] + ColumnNames: Sequence[str] + CatalogId: Optional[str] = None + +class GetColumnStatisticsForTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + ColumnNames: Sequence[str] + CatalogId: Optional[str] = None + +class GetColumnStatisticsTaskRunRequestRequestTypeDef(BaseModel): + ColumnStatisticsTaskRunId: str + +class GetColumnStatisticsTaskRunsRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetConnectionRequestRequestTypeDef(BaseModel): + Name: str + CatalogId: Optional[str] = None + HidePassword: Optional[bool] = None + +class GetConnectionsFilterTypeDef(BaseModel): + MatchCriteria: Optional[Sequence[str]] = None + ConnectionType: Optional[ConnectionTypeType] = None + +class GetCrawlerMetricsRequestRequestTypeDef(BaseModel): + CrawlerNameList: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetCrawlerRequestRequestTypeDef(BaseModel): + Name: str + +class GetCrawlersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetCustomEntityTypeRequestRequestTypeDef(BaseModel): + Name: str + +class GetDataCatalogEncryptionSettingsRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + +class GetDataQualityResultRequestRequestTypeDef(BaseModel): + ResultId: str + +class GetDataQualityRuleRecommendationRunRequestRequestTypeDef(BaseModel): + RunId: str + +class GetDataQualityRulesetEvaluationRunRequestRequestTypeDef(BaseModel): + RunId: str + +class GetDataQualityRulesetRequestRequestTypeDef(BaseModel): + Name: str + +class GetDatabaseRequestRequestTypeDef(BaseModel): + Name: str + CatalogId: Optional[str] = None + +class GetDatabasesRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ResourceShareType: Optional[ResourceShareTypeType] = None + AttributesToGet: Optional[Sequence[Literal["NAME"]]] = None + +class GetDataflowGraphRequestRequestTypeDef(BaseModel): + PythonScript: Optional[str] = None + +class GetDevEndpointRequestRequestTypeDef(BaseModel): + EndpointName: str + +class GetDevEndpointsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetJobBookmarkRequestRequestTypeDef(BaseModel): + JobName: str + RunId: Optional[str] = None + +class JobBookmarkEntryTypeDef(BaseModel): + JobName: Optional[str] = None + Version: Optional[int] = None + Run: Optional[int] = None + Attempt: Optional[int] = None + PreviousRunId: Optional[str] = None + RunId: Optional[str] = None + JobBookmark: Optional[str] = None + +class GetJobRequestRequestTypeDef(BaseModel): + JobName: str + +class GetJobRunRequestRequestTypeDef(BaseModel): + JobName: str + RunId: str + PredecessorsIncluded: Optional[bool] = None + +class GetJobRunsRequestRequestTypeDef(BaseModel): + JobName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetMLTaskRunRequestRequestTypeDef(BaseModel): + TransformId: str + TaskRunId: str + +class TaskRunSortCriteriaTypeDef(BaseModel): + Column: TaskRunSortColumnTypeType + SortDirection: SortDirectionTypeType + +class GetMLTransformRequestRequestTypeDef(BaseModel): + TransformId: str + +class SchemaColumnTypeDef(BaseModel): + Name: Optional[str] = None + DataType: Optional[str] = None + +class TransformSortCriteriaTypeDef(BaseModel): + Column: TransformSortColumnTypeType + SortDirection: SortDirectionTypeType + +class MappingEntryTypeDef(BaseModel): + SourceTable: Optional[str] = None + SourcePath: Optional[str] = None + SourceType: Optional[str] = None + TargetTable: Optional[str] = None + TargetPath: Optional[str] = None + TargetType: Optional[str] = None + +class GetPartitionIndexesRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + NextToken: Optional[str] = None + +class GetPartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionValues: Sequence[str] + CatalogId: Optional[str] = None + +class SegmentTypeDef(BaseModel): + SegmentNumber: int + TotalSegments: int + +class GetResourcePoliciesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GluePolicyTypeDef(BaseModel): + PolicyInJson: Optional[str] = None + PolicyHash: Optional[str] = None + CreateTime: Optional[datetime] = None + UpdateTime: Optional[datetime] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class SchemaVersionNumberTypeDef(BaseModel): + LatestVersion: Optional[bool] = None + VersionNumber: Optional[int] = None + +class GetSecurityConfigurationRequestRequestTypeDef(BaseModel): + Name: str + +class GetSecurityConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetSessionRequestRequestTypeDef(BaseModel): + Id: str + RequestOrigin: Optional[str] = None + +class GetStatementRequestRequestTypeDef(BaseModel): + SessionId: str + Id: int + RequestOrigin: Optional[str] = None + +class GetTableOptimizerRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + Type: Literal["compaction"] + +class GetTableVersionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + VersionId: Optional[str] = None + +class GetTableVersionsRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetTriggerRequestRequestTypeDef(BaseModel): + Name: str + +class GetTriggersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + DependentJobName: Optional[str] = None + MaxResults: Optional[int] = None + +class SupportedDialectTypeDef(BaseModel): + Dialect: Optional[ViewDialectType] = None + DialectVersion: Optional[str] = None + +class GetUsageProfileRequestRequestTypeDef(BaseModel): + Name: str + +class GetUserDefinedFunctionRequestRequestTypeDef(BaseModel): + DatabaseName: str + FunctionName: str + CatalogId: Optional[str] = None + +class GetUserDefinedFunctionsRequestRequestTypeDef(BaseModel): + Pattern: str + CatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetWorkflowRequestRequestTypeDef(BaseModel): + Name: str + IncludeGraph: Optional[bool] = None + +class GetWorkflowRunPropertiesRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + +class GetWorkflowRunRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + IncludeGraph: Optional[bool] = None + +class GetWorkflowRunsRequestRequestTypeDef(BaseModel): + Name: str + IncludeGraph: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GlueStudioSchemaColumnTypeDef(BaseModel): + Name: str + Type: Optional[str] = None + +class S3SourceAdditionalOptionsTypeDef(BaseModel): + BoundedSize: Optional[int] = None + BoundedFiles: Optional[int] = None + +class IcebergInputTypeDef(BaseModel): + MetadataOperation: Literal["CREATE"] + Version: Optional[str] = None + +class ImportCatalogToGlueRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + +class ImportLabelsTaskRunPropertiesTypeDef(BaseModel): + InputS3Path: Optional[str] = None + Replace: Optional[bool] = None + +class JDBCConnectorOptionsExtraOutputTypeDef(BaseModel): + FilterPredicate: Optional[str] = None + PartitionColumn: Optional[str] = None + LowerBound: Optional[int] = None + UpperBound: Optional[int] = None + NumPartitions: Optional[int] = None + JobBookmarkKeys: Optional[List[str]] = None + JobBookmarkKeysSortOrder: Optional[str] = None + DataTypeMapping: Optional[Dict[JDBCDataTypeType, GlueRecordTypeType]] = None + +class JDBCConnectorOptionsOutputTypeDef(BaseModel): + FilterPredicate: Optional[str] = None + PartitionColumn: Optional[str] = None + LowerBound: Optional[int] = None + UpperBound: Optional[int] = None + NumPartitions: Optional[int] = None + JobBookmarkKeys: Optional[List[str]] = None + JobBookmarkKeysSortOrder: Optional[str] = None + DataTypeMapping: Optional[Dict[JDBCDataTypeType, GlueRecordTypeType]] = None + +class JDBCConnectorOptionsTypeDef(BaseModel): + FilterPredicate: Optional[str] = None + PartitionColumn: Optional[str] = None + LowerBound: Optional[int] = None + UpperBound: Optional[int] = None + NumPartitions: Optional[int] = None + JobBookmarkKeys: Optional[Sequence[str]] = None + JobBookmarkKeysSortOrder: Optional[str] = None + DataTypeMapping: Optional[Mapping[JDBCDataTypeType, GlueRecordTypeType]] = None + +class PredecessorTypeDef(BaseModel): + JobName: Optional[str] = None + RunId: Optional[str] = None + +class JoinColumnExtraOutputTypeDef(BaseModel): + From: str + Keys: List[List[str]] + +class JoinColumnOutputTypeDef(BaseModel): + From: str + Keys: List[List[str]] + +class JoinColumnTypeDef(BaseModel): + From: str + Keys: Sequence[Sequence[str]] + +class KeySchemaElementTypeDef(BaseModel): + Name: str + Type: str + +class LabelingSetGenerationTaskRunPropertiesTypeDef(BaseModel): + OutputS3Path: Optional[str] = None + +class ListBlueprintsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class ListColumnStatisticsTaskRunsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCrawlersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ListCustomEntityTypesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class ListDevEndpointsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class ListRegistriesInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RegistryListItemTypeDef(BaseModel): + RegistryName: Optional[str] = None + RegistryArn: Optional[str] = None + Description: Optional[str] = None + Status: Optional[RegistryStatusType] = None + CreatedTime: Optional[str] = None + UpdatedTime: Optional[str] = None + +class SchemaVersionListItemTypeDef(BaseModel): + SchemaArn: Optional[str] = None + SchemaVersionId: Optional[str] = None + VersionNumber: Optional[int] = None + Status: Optional[SchemaVersionStatusType] = None + CreatedTime: Optional[str] = None + +class SchemaListItemTypeDef(BaseModel): + RegistryName: Optional[str] = None + SchemaName: Optional[str] = None + SchemaArn: Optional[str] = None + Description: Optional[str] = None + SchemaStatus: Optional[SchemaStatusType] = None + CreatedTime: Optional[str] = None + UpdatedTime: Optional[str] = None + +class ListSessionsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + RequestOrigin: Optional[str] = None + +class ListStatementsRequestRequestTypeDef(BaseModel): + SessionId: str + RequestOrigin: Optional[str] = None + NextToken: Optional[str] = None + +class ListTableOptimizerRunsRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + Type: Literal["compaction"] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTriggersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + DependentJobName: Optional[str] = None + MaxResults: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class ListUsageProfilesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class UsageProfileDefinitionTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + CreatedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + +class ListWorkflowsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MLUserDataEncryptionTypeDef(BaseModel): + MlUserDataEncryptionMode: MLUserDataEncryptionModeStringType + KmsKeyId: Optional[str] = None + +class MappingExtraOutputTypeDef(BaseModel): + ToKey: Optional[str] = None + FromPath: Optional[List[str]] = None + FromType: Optional[str] = None + ToType: Optional[str] = None + Dropped: Optional[bool] = None + Children: Optional[List[Dict[str, Any]]] = None + +class MappingOutputTypeDef(BaseModel): + ToKey: Optional[str] = None + FromPath: Optional[List[str]] = None + FromType: Optional[str] = None + ToType: Optional[str] = None + Dropped: Optional[bool] = None + Children: Optional[List[Dict[str, Any]]] = None + +class MappingTypeDef(BaseModel): + ToKey: Optional[str] = None + FromPath: Optional[Sequence[str]] = None + FromType: Optional[str] = None + ToType: Optional[str] = None + Dropped: Optional[bool] = None + Children: Optional[Sequence[Dict[str, Any]]] = None + +class OtherMetadataValueListItemTypeDef(BaseModel): + MetadataValue: Optional[str] = None + CreatedTime: Optional[str] = None + +class MetadataKeyValuePairTypeDef(BaseModel): + MetadataKey: Optional[str] = None + MetadataValue: Optional[str] = None + +class OAuth2ClientApplicationTypeDef(BaseModel): + UserManagedClientApplicationClientId: Optional[str] = None + AWSManagedClientApplicationReference: Optional[str] = None + +class OrderTypeDef(BaseModel): + Column: str + SortOrder: int + +class PartitionValueListExtraOutputTypeDef(BaseModel): + Values: List[str] + +class PartitionValueListTypeDef(BaseModel): + Values: Sequence[str] + +class PropertyPredicateTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Comparator: Optional[ComparatorType] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + PolicyInJson: str + ResourceArn: Optional[str] = None + PolicyHashCondition: Optional[str] = None + PolicyExistsCondition: Optional[ExistConditionType] = None + EnableHybrid: Optional[EnableHybridValuesType] = None + +class PutWorkflowRunPropertiesRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + RunProperties: Mapping[str, str] + +class RecipeActionExtraOutputTypeDef(BaseModel): + Operation: str + Parameters: Optional[Dict[str, str]] = None + +class RecipeActionOutputTypeDef(BaseModel): + Operation: str + Parameters: Optional[Dict[str, str]] = None + +class RecipeActionTypeDef(BaseModel): + Operation: str + Parameters: Optional[Mapping[str, str]] = None + +class RecipeReferenceTypeDef(BaseModel): + RecipeArn: str + RecipeVersion: str + +class UpsertRedshiftTargetOptionsExtraOutputTypeDef(BaseModel): + TableLocation: Optional[str] = None + ConnectionName: Optional[str] = None + UpsertKeys: Optional[List[str]] = None + +class UpsertRedshiftTargetOptionsOutputTypeDef(BaseModel): + TableLocation: Optional[str] = None + ConnectionName: Optional[str] = None + UpsertKeys: Optional[List[str]] = None + +class UpsertRedshiftTargetOptionsTypeDef(BaseModel): + TableLocation: Optional[str] = None + ConnectionName: Optional[str] = None + UpsertKeys: Optional[Sequence[str]] = None + +class ResetJobBookmarkRequestRequestTypeDef(BaseModel): + JobName: str + RunId: Optional[str] = None + +class ResourceUriTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + Uri: Optional[str] = None + +class ResumeWorkflowRunRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + NodeIds: Sequence[str] + +class RunMetricsTypeDef(BaseModel): + NumberOfBytesCompacted: Optional[str] = None + NumberOfFilesCompacted: Optional[str] = None + NumberOfDpus: Optional[str] = None + JobDurationInHour: Optional[str] = None + +class RunStatementRequestRequestTypeDef(BaseModel): + SessionId: str + Code: str + RequestOrigin: Optional[str] = None + +class S3DirectSourceAdditionalOptionsTypeDef(BaseModel): + BoundedSize: Optional[int] = None + BoundedFiles: Optional[int] = None + EnableSamplePath: Optional[bool] = None + SamplePath: Optional[str] = None + +class SortCriterionTypeDef(BaseModel): + FieldName: Optional[str] = None + Sort: Optional[SortType] = None + +class SerDeInfoOutputTypeDef(BaseModel): + Name: Optional[str] = None + SerializationLibrary: Optional[str] = None + Parameters: Optional[Dict[str, str]] = None + +class SerDeInfoTypeDef(BaseModel): + Name: Optional[str] = None + SerializationLibrary: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + +class SkewedInfoOutputTypeDef(BaseModel): + SkewedColumnNames: Optional[List[str]] = None + SkewedColumnValues: Optional[List[str]] = None + SkewedColumnValueLocationMaps: Optional[Dict[str, str]] = None + +class SkewedInfoTypeDef(BaseModel): + SkewedColumnNames: Optional[Sequence[str]] = None + SkewedColumnValues: Optional[Sequence[str]] = None + SkewedColumnValueLocationMaps: Optional[Mapping[str, str]] = None + +class SqlAliasTypeDef(BaseModel): + From: str + Alias: str + +class StartBlueprintRunRequestRequestTypeDef(BaseModel): + BlueprintName: str + RoleArn: str + Parameters: Optional[str] = None + +class StartColumnStatisticsTaskRunRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + Role: str + ColumnNameList: Optional[Sequence[str]] = None + SampleSize: Optional[float] = None + CatalogID: Optional[str] = None + SecurityConfiguration: Optional[str] = None + +class StartCrawlerRequestRequestTypeDef(BaseModel): + Name: str + +class StartCrawlerScheduleRequestRequestTypeDef(BaseModel): + CrawlerName: str + +class StartExportLabelsTaskRunRequestRequestTypeDef(BaseModel): + TransformId: str + OutputS3Path: str + +class StartImportLabelsTaskRunRequestRequestTypeDef(BaseModel): + TransformId: str + InputS3Path: str + ReplaceAllLabels: Optional[bool] = None + +class StartMLEvaluationTaskRunRequestRequestTypeDef(BaseModel): + TransformId: str + +class StartMLLabelingSetGenerationTaskRunRequestRequestTypeDef(BaseModel): + TransformId: str + OutputS3Path: str + +class StartTriggerRequestRequestTypeDef(BaseModel): + Name: str + +class StartWorkflowRunRequestRequestTypeDef(BaseModel): + Name: str + RunProperties: Optional[Mapping[str, str]] = None + +class StartingEventBatchConditionTypeDef(BaseModel): + BatchSize: Optional[int] = None + BatchWindow: Optional[int] = None + +class StatementOutputDataTypeDef(BaseModel): + TextPlain: Optional[str] = None + +class StopColumnStatisticsTaskRunRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + +class StopCrawlerRequestRequestTypeDef(BaseModel): + Name: str + +class StopCrawlerScheduleRequestRequestTypeDef(BaseModel): + CrawlerName: str + +class StopSessionRequestRequestTypeDef(BaseModel): + Id: str + RequestOrigin: Optional[str] = None + +class StopTriggerRequestRequestTypeDef(BaseModel): + Name: str + +class StopWorkflowRunRequestRequestTypeDef(BaseModel): + Name: str + RunId: str + +class TableIdentifierTypeDef(BaseModel): + CatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + Name: Optional[str] = None + Region: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagsToAdd: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagsToRemove: Sequence[str] + +class UpdateBlueprintRequestRequestTypeDef(BaseModel): + Name: str + BlueprintLocation: str + Description: Optional[str] = None + +class UpdateCsvClassifierRequestTypeDef(BaseModel): + Name: str + Delimiter: Optional[str] = None + QuoteSymbol: Optional[str] = None + ContainsHeader: Optional[CsvHeaderOptionType] = None + Header: Optional[Sequence[str]] = None + DisableValueTrimming: Optional[bool] = None + AllowSingleColumn: Optional[bool] = None + CustomDatatypeConfigured: Optional[bool] = None + CustomDatatypes: Optional[Sequence[str]] = None + Serde: Optional[CsvSerdeOptionType] = None + +class UpdateGrokClassifierRequestTypeDef(BaseModel): + Name: str + Classification: Optional[str] = None + GrokPattern: Optional[str] = None + CustomPatterns: Optional[str] = None + +class UpdateJsonClassifierRequestTypeDef(BaseModel): + Name: str + JsonPath: Optional[str] = None + +class UpdateXMLClassifierRequestTypeDef(BaseModel): + Name: str + Classification: Optional[str] = None + RowTag: Optional[str] = None + +class UpdateCrawlerScheduleRequestRequestTypeDef(BaseModel): + CrawlerName: str + Schedule: Optional[str] = None + +class UpdateDataQualityRulesetRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Ruleset: Optional[str] = None + +class UpdateJobFromSourceControlRequestRequestTypeDef(BaseModel): + JobName: Optional[str] = None + Provider: Optional[SourceControlProviderType] = None + RepositoryName: Optional[str] = None + RepositoryOwner: Optional[str] = None + BranchName: Optional[str] = None + Folder: Optional[str] = None + CommitId: Optional[str] = None + AuthStrategy: Optional[SourceControlAuthStrategyType] = None + AuthToken: Optional[str] = None + +class UpdateSourceControlFromJobRequestRequestTypeDef(BaseModel): + JobName: Optional[str] = None + Provider: Optional[SourceControlProviderType] = None + RepositoryName: Optional[str] = None + RepositoryOwner: Optional[str] = None + BranchName: Optional[str] = None + Folder: Optional[str] = None + CommitId: Optional[str] = None + AuthStrategy: Optional[SourceControlAuthStrategyType] = None + AuthToken: Optional[str] = None + +class UpdateWorkflowRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + DefaultRunProperties: Optional[Mapping[str, str]] = None + MaxConcurrentRuns: Optional[int] = None + +class ViewRepresentationInputTypeDef(BaseModel): + Dialect: Optional[ViewDialectType] = None + DialectVersion: Optional[str] = None + ViewOriginalText: Optional[str] = None + ValidationConnection: Optional[str] = None + ViewExpandedText: Optional[str] = None + +class ViewRepresentationTypeDef(BaseModel): + Dialect: Optional[ViewDialectType] = None + DialectVersion: Optional[str] = None + ViewOriginalText: Optional[str] = None + ViewExpandedText: Optional[str] = None + ValidationConnection: Optional[str] = None + IsStale: Optional[bool] = None + +class WorkflowRunStatisticsTypeDef(BaseModel): + TotalActions: Optional[int] = None + TimeoutActions: Optional[int] = None + FailedActions: Optional[int] = None + StoppedActions: Optional[int] = None + SucceededActions: Optional[int] = None + RunningActions: Optional[int] = None + ErroredActions: Optional[int] = None + WaitingActions: Optional[int] = None + +class ActionExtraOutputTypeDef(BaseModel): + JobName: Optional[str] = None + Arguments: Optional[Dict[str, str]] = None + Timeout: Optional[int] = None + SecurityConfiguration: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + CrawlerName: Optional[str] = None + +class ActionOutputTypeDef(BaseModel): + JobName: Optional[str] = None + Arguments: Optional[Dict[str, str]] = None + Timeout: Optional[int] = None + SecurityConfiguration: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + CrawlerName: Optional[str] = None + +class ActionTypeDef(BaseModel): + JobName: Optional[str] = None + Arguments: Optional[Mapping[str, str]] = None + Timeout: Optional[int] = None + SecurityConfiguration: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + CrawlerName: Optional[str] = None + +class StartJobRunRequestRequestTypeDef(BaseModel): + JobName: str + JobRunId: Optional[str] = None + Arguments: Optional[Mapping[str, str]] = None + AllocatedCapacity: Optional[int] = None + Timeout: Optional[int] = None + MaxCapacity: Optional[float] = None + SecurityConfiguration: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + ExecutionClass: Optional[ExecutionClassType] = None + +class AggregateExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Groups: List[List[str]] + Aggs: List[AggregateOperationExtraOutputTypeDef] + +class AggregateOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Groups: List[List[str]] + Aggs: List[AggregateOperationOutputTypeDef] + +class AggregateTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Groups: Sequence[Sequence[str]] + Aggs: Sequence[AggregateOperationTypeDef] + +class AmazonRedshiftNodeDataExtraOutputTypeDef(BaseModel): + AccessType: Optional[str] = None + SourceType: Optional[str] = None + Connection: Optional[OptionTypeDef] = None + Schema: Optional[OptionTypeDef] = None + Table: Optional[OptionTypeDef] = None + CatalogDatabase: Optional[OptionTypeDef] = None + CatalogTable: Optional[OptionTypeDef] = None + CatalogRedshiftSchema: Optional[str] = None + CatalogRedshiftTable: Optional[str] = None + TempDir: Optional[str] = None + IamRole: Optional[OptionTypeDef] = None + AdvancedOptions: Optional[List[AmazonRedshiftAdvancedOptionTypeDef]] = None + SampleQuery: Optional[str] = None + PreAction: Optional[str] = None + PostAction: Optional[str] = None + Action: Optional[str] = None + TablePrefix: Optional[str] = None + Upsert: Optional[bool] = None + MergeAction: Optional[str] = None + MergeWhenMatched: Optional[str] = None + MergeWhenNotMatched: Optional[str] = None + MergeClause: Optional[str] = None + CrawlerConnection: Optional[str] = None + TableSchema: Optional[List[OptionTypeDef]] = None + StagingTable: Optional[str] = None + SelectedColumns: Optional[List[OptionTypeDef]] = None + +class AmazonRedshiftNodeDataOutputTypeDef(BaseModel): + AccessType: Optional[str] = None + SourceType: Optional[str] = None + Connection: Optional[OptionTypeDef] = None + Schema: Optional[OptionTypeDef] = None + Table: Optional[OptionTypeDef] = None + CatalogDatabase: Optional[OptionTypeDef] = None + CatalogTable: Optional[OptionTypeDef] = None + CatalogRedshiftSchema: Optional[str] = None + CatalogRedshiftTable: Optional[str] = None + TempDir: Optional[str] = None + IamRole: Optional[OptionTypeDef] = None + AdvancedOptions: Optional[List[AmazonRedshiftAdvancedOptionTypeDef]] = None + SampleQuery: Optional[str] = None + PreAction: Optional[str] = None + PostAction: Optional[str] = None + Action: Optional[str] = None + TablePrefix: Optional[str] = None + Upsert: Optional[bool] = None + MergeAction: Optional[str] = None + MergeWhenMatched: Optional[str] = None + MergeWhenNotMatched: Optional[str] = None + MergeClause: Optional[str] = None + CrawlerConnection: Optional[str] = None + TableSchema: Optional[List[OptionTypeDef]] = None + StagingTable: Optional[str] = None + SelectedColumns: Optional[List[OptionTypeDef]] = None + +class AmazonRedshiftNodeDataTypeDef(BaseModel): + AccessType: Optional[str] = None + SourceType: Optional[str] = None + Connection: Optional[OptionTypeDef] = None + Schema: Optional[OptionTypeDef] = None + Table: Optional[OptionTypeDef] = None + CatalogDatabase: Optional[OptionTypeDef] = None + CatalogTable: Optional[OptionTypeDef] = None + CatalogRedshiftSchema: Optional[str] = None + CatalogRedshiftTable: Optional[str] = None + TempDir: Optional[str] = None + IamRole: Optional[OptionTypeDef] = None + AdvancedOptions: Optional[Sequence[AmazonRedshiftAdvancedOptionTypeDef]] = None + SampleQuery: Optional[str] = None + PreAction: Optional[str] = None + PostAction: Optional[str] = None + Action: Optional[str] = None + TablePrefix: Optional[str] = None + Upsert: Optional[bool] = None + MergeAction: Optional[str] = None + MergeWhenMatched: Optional[str] = None + MergeWhenNotMatched: Optional[str] = None + MergeClause: Optional[str] = None + CrawlerConnection: Optional[str] = None + TableSchema: Optional[Sequence[OptionTypeDef]] = None + StagingTable: Optional[str] = None + SelectedColumns: Optional[Sequence[OptionTypeDef]] = None + +class SnowflakeNodeDataExtraOutputTypeDef(BaseModel): + SourceType: Optional[str] = None + Connection: Optional[OptionTypeDef] = None + Schema: Optional[str] = None + Table: Optional[str] = None + Database: Optional[str] = None + TempDir: Optional[str] = None + IamRole: Optional[OptionTypeDef] = None + AdditionalOptions: Optional[Dict[str, str]] = None + SampleQuery: Optional[str] = None + PreAction: Optional[str] = None + PostAction: Optional[str] = None + Action: Optional[str] = None + Upsert: Optional[bool] = None + MergeAction: Optional[str] = None + MergeWhenMatched: Optional[str] = None + MergeWhenNotMatched: Optional[str] = None + MergeClause: Optional[str] = None + StagingTable: Optional[str] = None + SelectedColumns: Optional[List[OptionTypeDef]] = None + AutoPushdown: Optional[bool] = None + TableSchema: Optional[List[OptionTypeDef]] = None + +class SnowflakeNodeDataOutputTypeDef(BaseModel): + SourceType: Optional[str] = None + Connection: Optional[OptionTypeDef] = None + Schema: Optional[str] = None + Table: Optional[str] = None + Database: Optional[str] = None + TempDir: Optional[str] = None + IamRole: Optional[OptionTypeDef] = None + AdditionalOptions: Optional[Dict[str, str]] = None + SampleQuery: Optional[str] = None + PreAction: Optional[str] = None + PostAction: Optional[str] = None + Action: Optional[str] = None + Upsert: Optional[bool] = None + MergeAction: Optional[str] = None + MergeWhenMatched: Optional[str] = None + MergeWhenNotMatched: Optional[str] = None + MergeClause: Optional[str] = None + StagingTable: Optional[str] = None + SelectedColumns: Optional[List[OptionTypeDef]] = None + AutoPushdown: Optional[bool] = None + TableSchema: Optional[List[OptionTypeDef]] = None + +class SnowflakeNodeDataTypeDef(BaseModel): + SourceType: Optional[str] = None + Connection: Optional[OptionTypeDef] = None + Schema: Optional[str] = None + Table: Optional[str] = None + Database: Optional[str] = None + TempDir: Optional[str] = None + IamRole: Optional[OptionTypeDef] = None + AdditionalOptions: Optional[Mapping[str, str]] = None + SampleQuery: Optional[str] = None + PreAction: Optional[str] = None + PostAction: Optional[str] = None + Action: Optional[str] = None + Upsert: Optional[bool] = None + MergeAction: Optional[str] = None + MergeWhenMatched: Optional[str] = None + MergeWhenNotMatched: Optional[str] = None + MergeClause: Optional[str] = None + StagingTable: Optional[str] = None + SelectedColumns: Optional[Sequence[OptionTypeDef]] = None + AutoPushdown: Optional[bool] = None + TableSchema: Optional[Sequence[OptionTypeDef]] = None + +class BackfillErrorTypeDef(BaseModel): + Code: Optional[BackfillErrorCodeType] = None + Partitions: Optional[List[PartitionValueListOutputTypeDef]] = None + +class CancelMLTaskRunResponseTypeDef(BaseModel): + TransformId: str + TaskRunId: str + Status: TaskStatusTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class CheckSchemaVersionValidityResponseTypeDef(BaseModel): + Valid: bool + Error: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBlueprintResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectionResponseTypeDef(BaseModel): + CreateConnectionStatus: ConnectionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomEntityTypeResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataQualityRulesetResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDevEndpointResponseTypeDef(BaseModel): + EndpointName: str + Status: str + SecurityGroupIds: List[str] + SubnetId: str + RoleArn: str + YarnEndpointAddress: str + ZeppelinRemoteSparkInterpreterPort: int + NumberOfNodes: int + WorkerType: WorkerTypeType + GlueVersion: str + NumberOfWorkers: int + AvailabilityZone: str + VpcId: str + ExtraPythonLibsS3Path: str + ExtraJarsS3Path: str + FailureReason: str + SecurityConfiguration: str + CreatedTimestamp: datetime + Arguments: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMLTransformResponseTypeDef(BaseModel): + TransformId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRegistryResponseTypeDef(BaseModel): + RegistryArn: str + RegistryName: str + Description: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSchemaResponseTypeDef(BaseModel): + RegistryName: str + RegistryArn: str + SchemaName: str + SchemaArn: str + Description: str + DataFormat: DataFormatType + Compatibility: CompatibilityType + SchemaCheckpoint: int + LatestSchemaVersion: int + NextSchemaVersion: int + SchemaStatus: SchemaStatusType + Tags: Dict[str, str] + SchemaVersionId: str + SchemaVersionStatus: SchemaVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScriptResponseTypeDef(BaseModel): + PythonScript: str + ScalaCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityConfigurationResponseTypeDef(BaseModel): + Name: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTriggerResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUsageProfileResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBlueprintResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCustomEntityTypeResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteJobResponseTypeDef(BaseModel): + JobName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMLTransformResponseTypeDef(BaseModel): + TransformId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegistryResponseTypeDef(BaseModel): + RegistryName: str + RegistryArn: str + Status: RegistryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSchemaResponseTypeDef(BaseModel): + SchemaArn: str + SchemaName: str + Status: SchemaStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSessionResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTriggerResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkflowResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomEntityTypeResponseTypeDef(BaseModel): + Name: str + RegexString: str + ContextWords: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPlanResponseTypeDef(BaseModel): + PythonScript: str + ScalaCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegistryResponseTypeDef(BaseModel): + RegistryName: str + RegistryArn: str + Description: str + Status: RegistryStatusType + CreatedTime: str + UpdatedTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + PolicyInJson: str + PolicyHash: str + CreateTime: datetime + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaByDefinitionResponseTypeDef(BaseModel): + SchemaVersionId: str + SchemaArn: str + DataFormat: DataFormatType + Status: SchemaVersionStatusType + CreatedTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaResponseTypeDef(BaseModel): + RegistryName: str + RegistryArn: str + SchemaName: str + SchemaArn: str + Description: str + DataFormat: DataFormatType + Compatibility: CompatibilityType + SchemaCheckpoint: int + LatestSchemaVersion: int + NextSchemaVersion: int + SchemaStatus: SchemaStatusType + CreatedTime: str + UpdatedTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaVersionResponseTypeDef(BaseModel): + SchemaVersionId: str + SchemaDefinition: str + DataFormat: DataFormatType + SchemaArn: str + VersionNumber: int + Status: SchemaVersionStatusType + CreatedTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaVersionsDiffResponseTypeDef(BaseModel): + Diff: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTagsResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowRunPropertiesResponseTypeDef(BaseModel): + RunProperties: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBlueprintsResponseTypeDef(BaseModel): + Blueprints: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListColumnStatisticsTaskRunsResponseTypeDef(BaseModel): + ColumnStatisticsTaskRunIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCrawlersResponseTypeDef(BaseModel): + CrawlerNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDevEndpointsResponseTypeDef(BaseModel): + DevEndpointNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListJobsResponseTypeDef(BaseModel): + JobNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMLTransformsResponseTypeDef(BaseModel): + TransformIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTriggersResponseTypeDef(BaseModel): + TriggerNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListWorkflowsResponseTypeDef(BaseModel): + Workflows: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutResourcePolicyResponseTypeDef(BaseModel): + PolicyHash: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSchemaVersionMetadataResponseTypeDef(BaseModel): + SchemaArn: str + SchemaName: str + RegistryName: str + LatestVersion: bool + VersionNumber: int + SchemaVersionId: str + MetadataKey: str + MetadataValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterSchemaVersionResponseTypeDef(BaseModel): + SchemaVersionId: str + VersionNumber: int + Status: SchemaVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveSchemaVersionMetadataResponseTypeDef(BaseModel): + SchemaArn: str + SchemaName: str + RegistryName: str + LatestVersion: bool + VersionNumber: int + SchemaVersionId: str + MetadataKey: str + MetadataValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResumeWorkflowRunResponseTypeDef(BaseModel): + RunId: str + NodeIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RunStatementResponseTypeDef(BaseModel): + Id: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartBlueprintRunResponseTypeDef(BaseModel): + RunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartColumnStatisticsTaskRunResponseTypeDef(BaseModel): + ColumnStatisticsTaskRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataQualityRuleRecommendationRunResponseTypeDef(BaseModel): + RunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataQualityRulesetEvaluationRunResponseTypeDef(BaseModel): + RunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartExportLabelsTaskRunResponseTypeDef(BaseModel): + TaskRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportLabelsTaskRunResponseTypeDef(BaseModel): + TaskRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartJobRunResponseTypeDef(BaseModel): + JobRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMLEvaluationTaskRunResponseTypeDef(BaseModel): + TaskRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMLLabelingSetGenerationTaskRunResponseTypeDef(BaseModel): + TaskRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartTriggerResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartWorkflowRunResponseTypeDef(BaseModel): + RunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopSessionResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopTriggerResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBlueprintResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataQualityRulesetResponseTypeDef(BaseModel): + Name: str + Description: str + Ruleset: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobFromSourceControlResponseTypeDef(BaseModel): + JobName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobResponseTypeDef(BaseModel): + JobName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMLTransformResponseTypeDef(BaseModel): + TransformId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegistryResponseTypeDef(BaseModel): + RegistryName: str + RegistryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSchemaResponseTypeDef(BaseModel): + SchemaArn: str + SchemaName: str + RegistryName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSourceControlFromJobResponseTypeDef(BaseModel): + JobName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUsageProfileResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkflowResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteConnectionResponseTypeDef(BaseModel): + Succeeded: List[str] + Errors: Dict[str, ErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetTableOptimizerErrorTypeDef(BaseModel): + error: Optional[ErrorDetailTypeDef] = None + catalogId: Optional[str] = None + databaseName: Optional[str] = None + tableName: Optional[str] = None + type: Optional[Literal["compaction"]] = None + +class BatchStopJobRunErrorTypeDef(BaseModel): + JobName: Optional[str] = None + JobRunId: Optional[str] = None + ErrorDetail: Optional[ErrorDetailTypeDef] = None + +class BatchUpdatePartitionFailureEntryTypeDef(BaseModel): + PartitionValueList: Optional[List[str]] = None + ErrorDetail: Optional[ErrorDetailTypeDef] = None + +class ColumnErrorTypeDef(BaseModel): + ColumnName: Optional[str] = None + Error: Optional[ErrorDetailTypeDef] = None + +class PartitionErrorTypeDef(BaseModel): + PartitionValues: Optional[List[str]] = None + ErrorDetail: Optional[ErrorDetailTypeDef] = None + +class TableErrorTypeDef(BaseModel): + TableName: Optional[str] = None + ErrorDetail: Optional[ErrorDetailTypeDef] = None + +class TableVersionErrorTypeDef(BaseModel): + TableName: Optional[str] = None + VersionId: Optional[str] = None + ErrorDetail: Optional[ErrorDetailTypeDef] = None + +class BatchGetCustomEntityTypesResponseTypeDef(BaseModel): + CustomEntityTypes: List[CustomEntityTypeTypeDef] + CustomEntityTypesNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomEntityTypesResponseTypeDef(BaseModel): + CustomEntityTypes: List[CustomEntityTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGetDevEndpointsResponseTypeDef(BaseModel): + DevEndpoints: List[DevEndpointTypeDef] + DevEndpointsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevEndpointResponseTypeDef(BaseModel): + DevEndpoint: DevEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevEndpointsResponseTypeDef(BaseModel): + DevEndpoints: List[DevEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGetTableOptimizerRequestRequestTypeDef(BaseModel): + Entries: Sequence[BatchGetTableOptimizerEntryTypeDef] + +class DecimalNumberTypeDef(BaseModel): + UnscaledValue: BlobTypeDef + Scale: int + +class GetBlueprintRunResponseTypeDef(BaseModel): + BlueprintRun: BlueprintRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlueprintRunsResponseTypeDef(BaseModel): + BlueprintRuns: List[BlueprintRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BlueprintTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + CreatedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + ParameterSpec: Optional[str] = None + BlueprintLocation: Optional[str] = None + BlueprintServiceLocation: Optional[str] = None + Status: Optional[BlueprintStatusType] = None + ErrorMessage: Optional[str] = None + LastActiveDefinition: Optional[LastActiveDefinitionTypeDef] = None + +class GetCatalogImportStatusResponseTypeDef(BaseModel): + ImportStatus: CatalogImportStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CatalogKafkaSourceExtraOutputTypeDef(BaseModel): + Name: str + Table: str + Database: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KafkaStreamingSourceOptionsExtraOutputTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class DirectKafkaSourceExtraOutputTypeDef(BaseModel): + Name: str + StreamingOptions: Optional[KafkaStreamingSourceOptionsExtraOutputTypeDef] = None + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class CatalogKafkaSourceOutputTypeDef(BaseModel): + Name: str + Table: str + Database: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KafkaStreamingSourceOptionsOutputTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class DirectKafkaSourceOutputTypeDef(BaseModel): + Name: str + StreamingOptions: Optional[KafkaStreamingSourceOptionsOutputTypeDef] = None + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class CatalogKinesisSourceExtraOutputTypeDef(BaseModel): + Name: str + Table: str + Database: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KinesisStreamingSourceOptionsExtraOutputTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class DirectKinesisSourceExtraOutputTypeDef(BaseModel): + Name: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KinesisStreamingSourceOptionsExtraOutputTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class CatalogKinesisSourceOutputTypeDef(BaseModel): + Name: str + Table: str + Database: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KinesisStreamingSourceOptionsOutputTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class DirectKinesisSourceOutputTypeDef(BaseModel): + Name: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KinesisStreamingSourceOptionsOutputTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class GovernedCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class GovernedCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class GovernedCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Table: str + Database: str + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3CatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3CatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3CatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Table: str + Database: str + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3DeltaCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + PartitionKeys: Optional[List[List[str]]] = None + AdditionalOptions: Optional[Dict[str, str]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3DeltaCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + PartitionKeys: Optional[List[List[str]]] = None + AdditionalOptions: Optional[Dict[str, str]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3DeltaCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Table: str + Database: str + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + AdditionalOptions: Optional[Mapping[str, str]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3HudiCatalogTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + AdditionalOptions: Dict[str, str] + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3HudiCatalogTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Table: str + Database: str + AdditionalOptions: Dict[str, str] + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class S3HudiCatalogTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Table: str + Database: str + AdditionalOptions: Mapping[str, str] + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + SchemaChangePolicy: Optional[CatalogSchemaChangePolicyTypeDef] = None + +class ClassifierTypeDef(BaseModel): + GrokClassifier: Optional[GrokClassifierTypeDef] = None + XMLClassifier: Optional[XMLClassifierTypeDef] = None + JsonClassifier: Optional[JsonClassifierTypeDef] = None + CsvClassifier: Optional[CsvClassifierTypeDef] = None + +class CodeGenNodeOutputTypeDef(BaseModel): + Id: str + NodeType: str + Args: List[CodeGenNodeArgTypeDef] + LineNumber: Optional[int] = None + +class CodeGenNodeTypeDef(BaseModel): + Id: str + NodeType: str + Args: Sequence[CodeGenNodeArgTypeDef] + LineNumber: Optional[int] = None + +class LocationTypeDef(BaseModel): + Jdbc: Optional[Sequence[CodeGenNodeArgTypeDef]] = None + S3: Optional[Sequence[CodeGenNodeArgTypeDef]] = None + DynamoDB: Optional[Sequence[CodeGenNodeArgTypeDef]] = None + +class GetColumnStatisticsTaskRunResponseTypeDef(BaseModel): + ColumnStatisticsTaskRun: ColumnStatisticsTaskRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetColumnStatisticsTaskRunsResponseTypeDef(BaseModel): + ColumnStatisticsTaskRuns: List[ColumnStatisticsTaskRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DateColumnStatisticsDataTypeDef(BaseModel): + NumberOfNulls: int + NumberOfDistinctValues: int + MinimumValue: Optional[TimestampTypeDef] = None + MaximumValue: Optional[TimestampTypeDef] = None + +class GetTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + Name: str + CatalogId: Optional[str] = None + TransactionId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + +class GetTablesRequestRequestTypeDef(BaseModel): + DatabaseName: str + CatalogId: Optional[str] = None + Expression: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + TransactionId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + +class KafkaStreamingSourceOptionsTypeDef(BaseModel): + BootstrapServers: Optional[str] = None + SecurityProtocol: Optional[str] = None + ConnectionName: Optional[str] = None + TopicName: Optional[str] = None + Assign: Optional[str] = None + SubscribePattern: Optional[str] = None + Classification: Optional[str] = None + Delimiter: Optional[str] = None + StartingOffsets: Optional[str] = None + EndingOffsets: Optional[str] = None + PollTimeoutMs: Optional[int] = None + NumRetries: Optional[int] = None + RetryIntervalMs: Optional[int] = None + MaxOffsetsPerTrigger: Optional[int] = None + MinPartitions: Optional[int] = None + IncludeHeaders: Optional[bool] = None + AddRecordTimestamp: Optional[str] = None + EmitConsumerLagMetrics: Optional[str] = None + StartingTimestamp: Optional[TimestampTypeDef] = None + +class KinesisStreamingSourceOptionsTypeDef(BaseModel): + EndpointUrl: Optional[str] = None + StreamName: Optional[str] = None + Classification: Optional[str] = None + Delimiter: Optional[str] = None + StartingPosition: Optional[StartingPositionType] = None + MaxFetchTimeInMs: Optional[int] = None + MaxFetchRecordsPerShard: Optional[int] = None + MaxRecordPerRead: Optional[int] = None + AddIdleTimeBetweenReads: Optional[bool] = None + IdleTimeBetweenReadsInMs: Optional[int] = None + DescribeShardInterval: Optional[int] = None + NumRetries: Optional[int] = None + RetryIntervalMs: Optional[int] = None + MaxRetryIntervalMs: Optional[int] = None + AvoidEmptyBatches: Optional[bool] = None + StreamArn: Optional[str] = None + RoleArn: Optional[str] = None + RoleSessionName: Optional[str] = None + AddRecordTimestamp: Optional[str] = None + EmitConsumerLagMetrics: Optional[str] = None + StartingTimestamp: Optional[TimestampTypeDef] = None + +class QuerySessionContextTypeDef(BaseModel): + QueryId: Optional[str] = None + QueryStartTime: Optional[TimestampTypeDef] = None + ClusterId: Optional[str] = None + QueryAuthorizationId: Optional[str] = None + AdditionalContext: Optional[Mapping[str, str]] = None + +class TaskRunFilterCriteriaTypeDef(BaseModel): + TaskRunType: Optional[TaskTypeType] = None + Status: Optional[TaskStatusTypeType] = None + StartedBefore: Optional[TimestampTypeDef] = None + StartedAfter: Optional[TimestampTypeDef] = None + +class PredicateExtraOutputTypeDef(BaseModel): + Logical: Optional[LogicalType] = None + Conditions: Optional[List[ConditionTypeDef]] = None + +class PredicateOutputTypeDef(BaseModel): + Logical: Optional[LogicalType] = None + Conditions: Optional[List[ConditionTypeDef]] = None + +class PredicateTypeDef(BaseModel): + Logical: Optional[LogicalType] = None + Conditions: Optional[Sequence[ConditionTypeDef]] = None + +class ProfileConfigurationOutputTypeDef(BaseModel): + SessionConfiguration: Optional[Dict[str, ConfigurationObjectOutputTypeDef]] = None + JobConfiguration: Optional[Dict[str, ConfigurationObjectOutputTypeDef]] = None + +class ProfileConfigurationTypeDef(BaseModel): + SessionConfiguration: Optional[Mapping[str, ConfigurationObjectTypeDef]] = None + JobConfiguration: Optional[Mapping[str, ConfigurationObjectTypeDef]] = None + +class FindMatchesMetricsTypeDef(BaseModel): + AreaUnderPRCurve: Optional[float] = None + Precision: Optional[float] = None + Recall: Optional[float] = None + F1: Optional[float] = None + ConfusionMatrix: Optional[ConfusionMatrixTypeDef] = None + ColumnImportances: Optional[List[ColumnImportanceTypeDef]] = None + +class CrawlerNodeDetailsTypeDef(BaseModel): + Crawls: Optional[List[CrawlTypeDef]] = None + +class ListCrawlsResponseTypeDef(BaseModel): + Crawls: List[CrawlerHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCrawlerMetricsResponseTypeDef(BaseModel): + CrawlerMetricsList: List[CrawlerMetricsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CrawlerTargetsExtraOutputTypeDef(BaseModel): + S3Targets: Optional[List[S3TargetExtraOutputTypeDef]] = None + JdbcTargets: Optional[List[JdbcTargetExtraOutputTypeDef]] = None + MongoDBTargets: Optional[List[MongoDBTargetTypeDef]] = None + DynamoDBTargets: Optional[List[DynamoDBTargetTypeDef]] = None + CatalogTargets: Optional[List[CatalogTargetExtraOutputTypeDef]] = None + DeltaTargets: Optional[List[DeltaTargetExtraOutputTypeDef]] = None + IcebergTargets: Optional[List[IcebergTargetExtraOutputTypeDef]] = None + HudiTargets: Optional[List[HudiTargetExtraOutputTypeDef]] = None + +class CrawlerTargetsOutputTypeDef(BaseModel): + S3Targets: Optional[List[S3TargetOutputTypeDef]] = None + JdbcTargets: Optional[List[JdbcTargetOutputTypeDef]] = None + MongoDBTargets: Optional[List[MongoDBTargetTypeDef]] = None + DynamoDBTargets: Optional[List[DynamoDBTargetTypeDef]] = None + CatalogTargets: Optional[List[CatalogTargetOutputTypeDef]] = None + DeltaTargets: Optional[List[DeltaTargetOutputTypeDef]] = None + IcebergTargets: Optional[List[IcebergTargetOutputTypeDef]] = None + HudiTargets: Optional[List[HudiTargetOutputTypeDef]] = None + +class CrawlerTargetsTypeDef(BaseModel): + S3Targets: Optional[Sequence[S3TargetTypeDef]] = None + JdbcTargets: Optional[Sequence[JdbcTargetTypeDef]] = None + MongoDBTargets: Optional[Sequence[MongoDBTargetTypeDef]] = None + DynamoDBTargets: Optional[Sequence[DynamoDBTargetTypeDef]] = None + CatalogTargets: Optional[Sequence[CatalogTargetTypeDef]] = None + DeltaTargets: Optional[Sequence[DeltaTargetTypeDef]] = None + IcebergTargets: Optional[Sequence[IcebergTargetTypeDef]] = None + HudiTargets: Optional[Sequence[HudiTargetTypeDef]] = None + +class ListCrawlsRequestRequestTypeDef(BaseModel): + CrawlerName: str + MaxResults: Optional[int] = None + Filters: Optional[Sequence[CrawlsFilterTypeDef]] = None + NextToken: Optional[str] = None + +class CreateClassifierRequestRequestTypeDef(BaseModel): + GrokClassifier: Optional[CreateGrokClassifierRequestTypeDef] = None + XMLClassifier: Optional[CreateXMLClassifierRequestTypeDef] = None + JsonClassifier: Optional[CreateJsonClassifierRequestTypeDef] = None + CsvClassifier: Optional[CreateCsvClassifierRequestTypeDef] = None + +class CreateDataQualityRulesetRequestRequestTypeDef(BaseModel): + Name: str + Ruleset: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + TargetTable: Optional[DataQualityTargetTableTypeDef] = None + ClientToken: Optional[str] = None + +class DataQualityRulesetFilterCriteriaTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + CreatedBefore: Optional[TimestampTypeDef] = None + CreatedAfter: Optional[TimestampTypeDef] = None + LastModifiedBefore: Optional[TimestampTypeDef] = None + LastModifiedAfter: Optional[TimestampTypeDef] = None + TargetTable: Optional[DataQualityTargetTableTypeDef] = None + +class DataQualityRulesetListDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + CreatedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + TargetTable: Optional[DataQualityTargetTableTypeDef] = None + RecommendationRunId: Optional[str] = None + RuleCount: Optional[int] = None + +class GetDataQualityRulesetResponseTypeDef(BaseModel): + Name: str + Description: str + Ruleset: str + TargetTable: DataQualityTargetTableTypeDef + CreatedOn: datetime + LastModifiedOn: datetime + RecommendationRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePartitionIndexRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionIndex: PartitionIndexTypeDef + CatalogId: Optional[str] = None + +class CreateSchemaInputRequestTypeDef(BaseModel): + SchemaName: str + DataFormat: DataFormatType + RegistryId: Optional[RegistryIdTypeDef] = None + Compatibility: Optional[CompatibilityType] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + SchemaDefinition: Optional[str] = None + +class DeleteRegistryInputRequestTypeDef(BaseModel): + RegistryId: RegistryIdTypeDef + +class GetRegistryInputRequestTypeDef(BaseModel): + RegistryId: RegistryIdTypeDef + +class ListSchemasInputRequestTypeDef(BaseModel): + RegistryId: Optional[RegistryIdTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UpdateRegistryInputRequestTypeDef(BaseModel): + RegistryId: RegistryIdTypeDef + Description: str + +class CreateSessionRequestRequestTypeDef(BaseModel): + Id: str + Role: str + Command: SessionCommandTypeDef + Description: Optional[str] = None + Timeout: Optional[int] = None + IdleTimeout: Optional[int] = None + DefaultArguments: Optional[Mapping[str, str]] = None + Connections: Optional[ConnectionsListTypeDef] = None + MaxCapacity: Optional[float] = None + NumberOfWorkers: Optional[int] = None + WorkerType: Optional[WorkerTypeType] = None + SecurityConfiguration: Optional[str] = None + GlueVersion: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + RequestOrigin: Optional[str] = None + +class SessionTypeDef(BaseModel): + Id: Optional[str] = None + CreatedOn: Optional[datetime] = None + Status: Optional[SessionStatusType] = None + ErrorMessage: Optional[str] = None + Description: Optional[str] = None + Role: Optional[str] = None + Command: Optional[SessionCommandTypeDef] = None + DefaultArguments: Optional[Dict[str, str]] = None + Connections: Optional[ConnectionsListOutputTypeDef] = None + Progress: Optional[float] = None + MaxCapacity: Optional[float] = None + SecurityConfiguration: Optional[str] = None + GlueVersion: Optional[str] = None + NumberOfWorkers: Optional[int] = None + WorkerType: Optional[WorkerTypeType] = None + CompletedOn: Optional[datetime] = None + ExecutionTime: Optional[float] = None + DPUSeconds: Optional[float] = None + IdleTimeout: Optional[int] = None + ProfileName: Optional[str] = None + +class CreateTableOptimizerRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + Type: Literal["compaction"] + TableOptimizerConfiguration: TableOptimizerConfigurationTypeDef + +class UpdateTableOptimizerRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + Type: Literal["compaction"] + TableOptimizerConfiguration: TableOptimizerConfigurationTypeDef + +class EvaluateDataQualityExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Ruleset: str + Output: Optional[DQTransformOutputType] = None + PublishingOptions: Optional[DQResultsPublishingOptionsTypeDef] = None + StopJobOnFailureOptions: Optional[DQStopJobOnFailureOptionsTypeDef] = None + +class EvaluateDataQualityMultiFrameExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Ruleset: str + AdditionalDataSources: Optional[Dict[str, str]] = None + PublishingOptions: Optional[DQResultsPublishingOptionsTypeDef] = None + AdditionalOptions: Optional[Dict[AdditionalOptionKeysType, str]] = None + StopJobOnFailureOptions: Optional[DQStopJobOnFailureOptionsTypeDef] = None + +class EvaluateDataQualityMultiFrameOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Ruleset: str + AdditionalDataSources: Optional[Dict[str, str]] = None + PublishingOptions: Optional[DQResultsPublishingOptionsTypeDef] = None + AdditionalOptions: Optional[Dict[AdditionalOptionKeysType, str]] = None + StopJobOnFailureOptions: Optional[DQStopJobOnFailureOptionsTypeDef] = None + +class EvaluateDataQualityMultiFrameTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Ruleset: str + AdditionalDataSources: Optional[Mapping[str, str]] = None + PublishingOptions: Optional[DQResultsPublishingOptionsTypeDef] = None + AdditionalOptions: Optional[Mapping[AdditionalOptionKeysType, str]] = None + StopJobOnFailureOptions: Optional[DQStopJobOnFailureOptionsTypeDef] = None + +class EvaluateDataQualityOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Ruleset: str + Output: Optional[DQTransformOutputType] = None + PublishingOptions: Optional[DQResultsPublishingOptionsTypeDef] = None + StopJobOnFailureOptions: Optional[DQStopJobOnFailureOptionsTypeDef] = None + +class EvaluateDataQualityTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Ruleset: str + Output: Optional[DQTransformOutputType] = None + PublishingOptions: Optional[DQResultsPublishingOptionsTypeDef] = None + StopJobOnFailureOptions: Optional[DQStopJobOnFailureOptionsTypeDef] = None + +class DataCatalogEncryptionSettingsTypeDef(BaseModel): + EncryptionAtRest: Optional[EncryptionAtRestTypeDef] = None + ConnectionPasswordEncryption: Optional[ConnectionPasswordEncryptionTypeDef] = None + +class PrincipalPermissionsOutputTypeDef(BaseModel): + Principal: Optional[DataLakePrincipalTypeDef] = None + Permissions: Optional[List[PermissionType]] = None + +class PrincipalPermissionsTypeDef(BaseModel): + Principal: Optional[DataLakePrincipalTypeDef] = None + Permissions: Optional[Sequence[PermissionType]] = None + +class MetricBasedObservationTypeDef(BaseModel): + MetricName: Optional[str] = None + MetricValues: Optional[DataQualityMetricValuesTypeDef] = None + NewRules: Optional[List[str]] = None + +class DataSourceOutputTypeDef(BaseModel): + GlueTable: GlueTableOutputTypeDef + +class DataSourceTypeDef(BaseModel): + GlueTable: GlueTableTypeDef + +class NullValueFieldTypeDef(BaseModel): + Value: str + Datatype: DatatypeTypeDef + +class DecimalColumnStatisticsDataOutputTypeDef(BaseModel): + NumberOfNulls: int + NumberOfDistinctValues: int + MinimumValue: Optional[DecimalNumberOutputTypeDef] = None + MaximumValue: Optional[DecimalNumberOutputTypeDef] = None + +class DeleteSchemaInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + +class DeleteSchemaVersionsInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + Versions: str + +class GetSchemaByDefinitionInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + SchemaDefinition: str + +class GetSchemaInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + +class ListSchemaVersionsInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RegisterSchemaVersionInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + SchemaDefinition: str + +class SchemaReferenceTypeDef(BaseModel): + SchemaId: Optional[SchemaIdTypeDef] = None + SchemaVersionId: Optional[str] = None + SchemaVersionNumber: Optional[int] = None + +class UpdateDevEndpointRequestRequestTypeDef(BaseModel): + EndpointName: str + PublicKey: Optional[str] = None + AddPublicKeys: Optional[Sequence[str]] = None + DeletePublicKeys: Optional[Sequence[str]] = None + CustomLibraries: Optional[DevEndpointCustomLibrariesTypeDef] = None + UpdateEtlLibraries: Optional[bool] = None + DeleteArguments: Optional[Sequence[str]] = None + AddArguments: Optional[Mapping[str, str]] = None + +class S3DeltaDirectTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Compression: DeltaTargetCompressionTypeType + Format: TargetFormatType + PartitionKeys: Optional[List[List[str]]] = None + AdditionalOptions: Optional[Dict[str, str]] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3DeltaDirectTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Compression: DeltaTargetCompressionTypeType + Format: TargetFormatType + PartitionKeys: Optional[List[List[str]]] = None + AdditionalOptions: Optional[Dict[str, str]] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3DeltaDirectTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Path: str + Compression: DeltaTargetCompressionTypeType + Format: TargetFormatType + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + AdditionalOptions: Optional[Mapping[str, str]] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3DirectTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Format: TargetFormatType + PartitionKeys: Optional[List[List[str]]] = None + Compression: Optional[str] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3DirectTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Format: TargetFormatType + PartitionKeys: Optional[List[List[str]]] = None + Compression: Optional[str] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3DirectTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Path: str + Format: TargetFormatType + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + Compression: Optional[str] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3GlueParquetTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + PartitionKeys: Optional[List[List[str]]] = None + Compression: Optional[ParquetCompressionTypeType] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3GlueParquetTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + PartitionKeys: Optional[List[List[str]]] = None + Compression: Optional[ParquetCompressionTypeType] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3GlueParquetTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Path: str + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + Compression: Optional[ParquetCompressionTypeType] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3HudiDirectTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Compression: HudiTargetCompressionTypeType + Format: TargetFormatType + AdditionalOptions: Dict[str, str] + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3HudiDirectTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Path: str + Compression: HudiTargetCompressionTypeType + Format: TargetFormatType + AdditionalOptions: Dict[str, str] + PartitionKeys: Optional[List[List[str]]] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class S3HudiDirectTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Path: str + Compression: HudiTargetCompressionTypeType + Format: TargetFormatType + AdditionalOptions: Mapping[str, str] + PartitionKeys: Optional[Sequence[Sequence[str]]] = None + SchemaChangePolicy: Optional[DirectSchemaChangePolicyTypeDef] = None + +class EncryptionConfigurationExtraOutputTypeDef(BaseModel): + S3Encryption: Optional[List[S3EncryptionTypeDef]] = None + CloudWatchEncryption: Optional[CloudWatchEncryptionTypeDef] = None + JobBookmarksEncryption: Optional[JobBookmarksEncryptionTypeDef] = None + +class EncryptionConfigurationOutputTypeDef(BaseModel): + S3Encryption: Optional[List[S3EncryptionTypeDef]] = None + CloudWatchEncryption: Optional[CloudWatchEncryptionTypeDef] = None + JobBookmarksEncryption: Optional[JobBookmarksEncryptionTypeDef] = None + +class EncryptionConfigurationTypeDef(BaseModel): + S3Encryption: Optional[Sequence[S3EncryptionTypeDef]] = None + CloudWatchEncryption: Optional[CloudWatchEncryptionTypeDef] = None + JobBookmarksEncryption: Optional[JobBookmarksEncryptionTypeDef] = None + +class SchemaVersionErrorItemTypeDef(BaseModel): + VersionNumber: Optional[int] = None + ErrorDetails: Optional[ErrorDetailsTypeDef] = None + +class FilterExpressionExtraOutputTypeDef(BaseModel): + Operation: FilterOperationType + Values: List[FilterValueExtraOutputTypeDef] + Negated: Optional[bool] = None + +class FilterExpressionOutputTypeDef(BaseModel): + Operation: FilterOperationType + Values: List[FilterValueOutputTypeDef] + Negated: Optional[bool] = None + +class FilterExpressionTypeDef(BaseModel): + Operation: FilterOperationType + Values: Sequence[FilterValueTypeDef] + Negated: Optional[bool] = None + +class TransformParametersTypeDef(BaseModel): + TransformType: Literal["FIND_MATCHES"] + FindMatchesParameters: Optional[FindMatchesParametersTypeDef] = None + +class GetClassifiersRequestGetClassifiersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCrawlerMetricsRequestGetCrawlerMetricsPaginateTypeDef(BaseModel): + CrawlerNameList: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCrawlersRequestGetCrawlersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDatabasesRequestGetDatabasesPaginateTypeDef(BaseModel): + CatalogId: Optional[str] = None + ResourceShareType: Optional[ResourceShareTypeType] = None + AttributesToGet: Optional[Sequence[Literal["NAME"]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDevEndpointsRequestGetDevEndpointsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetJobRunsRequestGetJobRunsPaginateTypeDef(BaseModel): + JobName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetJobsRequestGetJobsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetPartitionIndexesRequestGetPartitionIndexesPaginateTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourcePoliciesRequestGetResourcePoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSecurityConfigurationsRequestGetSecurityConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTableVersionsRequestGetTableVersionsPaginateTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTablesRequestGetTablesPaginateTypeDef(BaseModel): + DatabaseName: str + CatalogId: Optional[str] = None + Expression: Optional[str] = None + TransactionId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTriggersRequestGetTriggersPaginateTypeDef(BaseModel): + DependentJobName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetUserDefinedFunctionsRequestGetUserDefinedFunctionsPaginateTypeDef(BaseModel): + Pattern: str + CatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetWorkflowRunsRequestGetWorkflowRunsPaginateTypeDef(BaseModel): + Name: str + IncludeGraph: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBlueprintsRequestListBlueprintsPaginateTypeDef(BaseModel): + Tags: Optional[Mapping[str, str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + Tags: Optional[Mapping[str, str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegistriesInputListRegistriesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemaVersionsInputListSchemaVersionsPaginateTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemasInputListSchemasPaginateTypeDef(BaseModel): + RegistryId: Optional[RegistryIdTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTriggersRequestListTriggersPaginateTypeDef(BaseModel): + DependentJobName: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsageProfilesRequestListUsageProfilesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowsRequestListWorkflowsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetConnectionsRequestGetConnectionsPaginateTypeDef(BaseModel): + CatalogId: Optional[str] = None + Filter: Optional[GetConnectionsFilterTypeDef] = None + HidePassword: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetConnectionsRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + Filter: Optional[GetConnectionsFilterTypeDef] = None + HidePassword: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetJobBookmarkResponseTypeDef(BaseModel): + JobBookmarkEntry: JobBookmarkEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResetJobBookmarkResponseTypeDef(BaseModel): + JobBookmarkEntry: JobBookmarkEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TransformFilterCriteriaTypeDef(BaseModel): + Name: Optional[str] = None + TransformType: Optional[Literal["FIND_MATCHES"]] = None + Status: Optional[TransformStatusTypeType] = None + GlueVersion: Optional[str] = None + CreatedBefore: Optional[TimestampTypeDef] = None + CreatedAfter: Optional[TimestampTypeDef] = None + LastModifiedBefore: Optional[TimestampTypeDef] = None + LastModifiedAfter: Optional[TimestampTypeDef] = None + Schema: Optional[Sequence[SchemaColumnTypeDef]] = None + +class GetMappingResponseTypeDef(BaseModel): + Mapping: List[MappingEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPartitionsRequestGetPartitionsPaginateTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + Expression: Optional[str] = None + Segment: Optional[SegmentTypeDef] = None + ExcludeColumnSchema: Optional[bool] = None + TransactionId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetPartitionsRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + Expression: Optional[str] = None + NextToken: Optional[str] = None + Segment: Optional[SegmentTypeDef] = None + MaxResults: Optional[int] = None + ExcludeColumnSchema: Optional[bool] = None + TransactionId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + +class GetResourcePoliciesResponseTypeDef(BaseModel): + GetResourcePoliciesResponseList: List[GluePolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetSchemaVersionInputRequestTypeDef(BaseModel): + SchemaId: Optional[SchemaIdTypeDef] = None + SchemaVersionId: Optional[str] = None + SchemaVersionNumber: Optional[SchemaVersionNumberTypeDef] = None + +class GetSchemaVersionsDiffInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + FirstSchemaVersionNumber: SchemaVersionNumberTypeDef + SecondSchemaVersionNumber: SchemaVersionNumberTypeDef + SchemaDiffType: Literal["SYNTAX_DIFF"] + +class UpdateSchemaInputRequestTypeDef(BaseModel): + SchemaId: SchemaIdTypeDef + SchemaVersionNumber: Optional[SchemaVersionNumberTypeDef] = None + Compatibility: Optional[CompatibilityType] = None + Description: Optional[str] = None + +class GlueSchemaExtraOutputTypeDef(BaseModel): + Columns: Optional[List[GlueStudioSchemaColumnTypeDef]] = None + +class GlueSchemaOutputTypeDef(BaseModel): + Columns: Optional[List[GlueStudioSchemaColumnTypeDef]] = None + +class GlueSchemaTypeDef(BaseModel): + Columns: Optional[Sequence[GlueStudioSchemaColumnTypeDef]] = None + +class GovernedCatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + PartitionPredicate: Optional[str] = None + AdditionalOptions: Optional[S3SourceAdditionalOptionsTypeDef] = None + +class S3CatalogSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + PartitionPredicate: Optional[str] = None + AdditionalOptions: Optional[S3SourceAdditionalOptionsTypeDef] = None + +class OpenTableFormatInputTypeDef(BaseModel): + IcebergInput: Optional[IcebergInputTypeDef] = None + +class JobRunTypeDef(BaseModel): + Id: Optional[str] = None + Attempt: Optional[int] = None + PreviousRunId: Optional[str] = None + TriggerName: Optional[str] = None + JobName: Optional[str] = None + JobMode: Optional[JobModeType] = None + StartedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + CompletedOn: Optional[datetime] = None + JobRunState: Optional[JobRunStateType] = None + Arguments: Optional[Dict[str, str]] = None + ErrorMessage: Optional[str] = None + PredecessorRuns: Optional[List[PredecessorTypeDef]] = None + AllocatedCapacity: Optional[int] = None + ExecutionTime: Optional[int] = None + Timeout: Optional[int] = None + MaxCapacity: Optional[float] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + SecurityConfiguration: Optional[str] = None + LogGroupName: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + GlueVersion: Optional[str] = None + DPUSeconds: Optional[float] = None + ExecutionClass: Optional[ExecutionClassType] = None + MaintenanceWindow: Optional[str] = None + ProfileName: Optional[str] = None + +class JoinExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + JoinType: JoinTypeType + Columns: List[JoinColumnExtraOutputTypeDef] + +class JoinOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + JoinType: JoinTypeType + Columns: List[JoinColumnOutputTypeDef] + +class JoinTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + JoinType: JoinTypeType + Columns: Sequence[JoinColumnTypeDef] + +class TaskRunPropertiesTypeDef(BaseModel): + TaskType: Optional[TaskTypeType] = None + ImportLabelsTaskRunProperties: Optional[ImportLabelsTaskRunPropertiesTypeDef] = None + ExportLabelsTaskRunProperties: Optional[ExportLabelsTaskRunPropertiesTypeDef] = None + LabelingSetGenerationTaskRunProperties: Optional[ LabelingSetGenerationTaskRunPropertiesTypeDef ] = None + FindMatchesTaskRunProperties: Optional[FindMatchesTaskRunPropertiesTypeDef] = None + +class ListRegistriesResponseTypeDef(BaseModel): + Registries: List[RegistryListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSchemaVersionsResponseTypeDef(BaseModel): + Schemas: List[SchemaVersionListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSchemasResponseTypeDef(BaseModel): + Schemas: List[SchemaListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUsageProfilesResponseTypeDef(BaseModel): + Profiles: List[UsageProfileDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TransformEncryptionTypeDef(BaseModel): + MlUserDataEncryption: Optional[MLUserDataEncryptionTypeDef] = None + TaskRunSecurityConfigurationName: Optional[str] = None + +class MetadataInfoTypeDef(BaseModel): + MetadataValue: Optional[str] = None + CreatedTime: Optional[str] = None + OtherMetadataValueList: Optional[List[OtherMetadataValueListItemTypeDef]] = None + +class PutSchemaVersionMetadataInputRequestTypeDef(BaseModel): + MetadataKeyValue: MetadataKeyValuePairTypeDef + SchemaId: Optional[SchemaIdTypeDef] = None + SchemaVersionNumber: Optional[SchemaVersionNumberTypeDef] = None + SchemaVersionId: Optional[str] = None + +class QuerySchemaVersionMetadataInputRequestTypeDef(BaseModel): + SchemaId: Optional[SchemaIdTypeDef] = None + SchemaVersionNumber: Optional[SchemaVersionNumberTypeDef] = None + SchemaVersionId: Optional[str] = None + MetadataList: Optional[Sequence[MetadataKeyValuePairTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RemoveSchemaVersionMetadataInputRequestTypeDef(BaseModel): + MetadataKeyValue: MetadataKeyValuePairTypeDef + SchemaId: Optional[SchemaIdTypeDef] = None + SchemaVersionNumber: Optional[SchemaVersionNumberTypeDef] = None + SchemaVersionId: Optional[str] = None + +class OAuth2PropertiesInputTypeDef(BaseModel): + OAuth2GrantType: Optional[OAuth2GrantTypeType] = None + OAuth2ClientApplication: Optional[OAuth2ClientApplicationTypeDef] = None + TokenUrl: Optional[str] = None + TokenUrlParametersMap: Optional[Mapping[str, str]] = None + AuthorizationCodeProperties: Optional[AuthorizationCodePropertiesTypeDef] = None + +class OAuth2PropertiesTypeDef(BaseModel): + OAuth2GrantType: Optional[OAuth2GrantTypeType] = None + OAuth2ClientApplication: Optional[OAuth2ClientApplicationTypeDef] = None + TokenUrl: Optional[str] = None + TokenUrlParametersMap: Optional[Dict[str, str]] = None + +class RecipeStepExtraOutputTypeDef(BaseModel): + Action: RecipeActionExtraOutputTypeDef + ConditionExpressions: Optional[List[ConditionExpressionTypeDef]] = None + +class RecipeStepOutputTypeDef(BaseModel): + Action: RecipeActionOutputTypeDef + ConditionExpressions: Optional[List[ConditionExpressionTypeDef]] = None + +class RecipeStepTypeDef(BaseModel): + Action: RecipeActionTypeDef + ConditionExpressions: Optional[Sequence[ConditionExpressionTypeDef]] = None + +class RedshiftTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + RedshiftTmpDir: Optional[str] = None + TmpDirIAMRole: Optional[str] = None + UpsertRedshiftOptions: Optional[UpsertRedshiftTargetOptionsExtraOutputTypeDef] = None + +class RedshiftTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Database: str + Table: str + RedshiftTmpDir: Optional[str] = None + TmpDirIAMRole: Optional[str] = None + UpsertRedshiftOptions: Optional[UpsertRedshiftTargetOptionsOutputTypeDef] = None + +class RedshiftTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Database: str + Table: str + RedshiftTmpDir: Optional[str] = None + TmpDirIAMRole: Optional[str] = None + UpsertRedshiftOptions: Optional[UpsertRedshiftTargetOptionsTypeDef] = None + +class UserDefinedFunctionInputTypeDef(BaseModel): + FunctionName: Optional[str] = None + ClassName: Optional[str] = None + OwnerName: Optional[str] = None + OwnerType: Optional[PrincipalTypeType] = None + ResourceUris: Optional[Sequence[ResourceUriTypeDef]] = None + +class UserDefinedFunctionTypeDef(BaseModel): + FunctionName: Optional[str] = None + DatabaseName: Optional[str] = None + ClassName: Optional[str] = None + OwnerName: Optional[str] = None + OwnerType: Optional[PrincipalTypeType] = None + CreateTime: Optional[datetime] = None + ResourceUris: Optional[List[ResourceUriTypeDef]] = None + CatalogId: Optional[str] = None + +class TableOptimizerRunTypeDef(BaseModel): + eventType: Optional[TableOptimizerEventTypeType] = None + startTimestamp: Optional[datetime] = None + endTimestamp: Optional[datetime] = None + metrics: Optional[RunMetricsTypeDef] = None + error: Optional[str] = None + +class SearchTablesRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[PropertyPredicateTypeDef]] = None + SearchText: Optional[str] = None + SortCriteria: Optional[Sequence[SortCriterionTypeDef]] = None + MaxResults: Optional[int] = None + ResourceShareType: Optional[ResourceShareTypeType] = None + +class StatementOutputTypeDef(BaseModel): + Data: Optional[StatementOutputDataTypeDef] = None + ExecutionCount: Optional[int] = None + Status: Optional[StatementStateType] = None + ErrorName: Optional[str] = None + ErrorValue: Optional[str] = None + Traceback: Optional[List[str]] = None + +class UpdateClassifierRequestRequestTypeDef(BaseModel): + GrokClassifier: Optional[UpdateGrokClassifierRequestTypeDef] = None + XMLClassifier: Optional[UpdateXMLClassifierRequestTypeDef] = None + JsonClassifier: Optional[UpdateJsonClassifierRequestTypeDef] = None + CsvClassifier: Optional[UpdateCsvClassifierRequestTypeDef] = None + +class ViewDefinitionInputTypeDef(BaseModel): + IsProtected: Optional[bool] = None + Definer: Optional[str] = None + Representations: Optional[Sequence[ViewRepresentationInputTypeDef]] = None + SubObjects: Optional[Sequence[str]] = None + +class ViewDefinitionTypeDef(BaseModel): + IsProtected: Optional[bool] = None + Definer: Optional[str] = None + SubObjects: Optional[List[str]] = None + Representations: Optional[List[ViewRepresentationTypeDef]] = None + +class AmazonRedshiftSourceExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Data: Optional[AmazonRedshiftNodeDataExtraOutputTypeDef] = None + +class AmazonRedshiftTargetExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Data: Optional[AmazonRedshiftNodeDataExtraOutputTypeDef] = None + Inputs: Optional[List[str]] = None + +class AmazonRedshiftSourceOutputTypeDef(BaseModel): + Name: Optional[str] = None + Data: Optional[AmazonRedshiftNodeDataOutputTypeDef] = None + +class AmazonRedshiftTargetOutputTypeDef(BaseModel): + Name: Optional[str] = None + Data: Optional[AmazonRedshiftNodeDataOutputTypeDef] = None + Inputs: Optional[List[str]] = None + +class AmazonRedshiftSourceTypeDef(BaseModel): + Name: Optional[str] = None + Data: Optional[AmazonRedshiftNodeDataTypeDef] = None + +class AmazonRedshiftTargetTypeDef(BaseModel): + Name: Optional[str] = None + Data: Optional[AmazonRedshiftNodeDataTypeDef] = None + Inputs: Optional[Sequence[str]] = None + +class SnowflakeTargetExtraOutputTypeDef(BaseModel): + Name: str + Data: SnowflakeNodeDataExtraOutputTypeDef + Inputs: Optional[List[str]] = None + +class SnowflakeTargetOutputTypeDef(BaseModel): + Name: str + Data: SnowflakeNodeDataOutputTypeDef + Inputs: Optional[List[str]] = None + +class SnowflakeTargetTypeDef(BaseModel): + Name: str + Data: SnowflakeNodeDataTypeDef + Inputs: Optional[Sequence[str]] = None + +class PartitionIndexDescriptorTypeDef(BaseModel): + IndexName: str + Keys: List[KeySchemaElementTypeDef] + IndexStatus: PartitionIndexStatusType + BackfillErrors: Optional[List[BackfillErrorTypeDef]] = None + +class BatchStopJobRunResponseTypeDef(BaseModel): + SuccessfulSubmissions: List[BatchStopJobRunSuccessfulSubmissionTypeDef] + Errors: List[BatchStopJobRunErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdatePartitionResponseTypeDef(BaseModel): + Errors: List[BatchUpdatePartitionFailureEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchCreatePartitionResponseTypeDef(BaseModel): + Errors: List[PartitionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeletePartitionResponseTypeDef(BaseModel): + Errors: List[PartitionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteTableResponseTypeDef(BaseModel): + Errors: List[TableErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteTableVersionResponseTypeDef(BaseModel): + Errors: List[TableVersionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DecimalColumnStatisticsDataTypeDef(BaseModel): + NumberOfNulls: int + NumberOfDistinctValues: int + MinimumValue: Optional[DecimalNumberTypeDef] = None + MaximumValue: Optional[DecimalNumberTypeDef] = None + +class BatchGetBlueprintsResponseTypeDef(BaseModel): + Blueprints: List[BlueprintTypeDef] + MissingBlueprints: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlueprintResponseTypeDef(BaseModel): + Blueprint: BlueprintTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetClassifierResponseTypeDef(BaseModel): + Classifier: ClassifierTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetClassifiersResponseTypeDef(BaseModel): + Classifiers: List[ClassifierTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDataflowGraphResponseTypeDef(BaseModel): + DagNodes: List[CodeGenNodeOutputTypeDef] + DagEdges: List[CodeGenEdgeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMappingRequestRequestTypeDef(BaseModel): + Source: CatalogEntryTypeDef + Sinks: Optional[Sequence[CatalogEntryTypeDef]] = None + Location: Optional[LocationTypeDef] = None + +class GetPlanRequestRequestTypeDef(BaseModel): + Mapping: Sequence[MappingEntryTypeDef] + Source: CatalogEntryTypeDef + Sinks: Optional[Sequence[CatalogEntryTypeDef]] = None + Location: Optional[LocationTypeDef] = None + Language: Optional[LanguageType] = None + AdditionalPlanOptionsMap: Optional[Mapping[str, str]] = None + +class CatalogKafkaSourceTypeDef(BaseModel): + Name: str + Table: str + Database: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KafkaStreamingSourceOptionsTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class DirectKafkaSourceTypeDef(BaseModel): + Name: str + StreamingOptions: Optional[KafkaStreamingSourceOptionsTypeDef] = None + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class CatalogKinesisSourceTypeDef(BaseModel): + Name: str + Table: str + Database: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KinesisStreamingSourceOptionsTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class DirectKinesisSourceTypeDef(BaseModel): + Name: str + WindowSize: Optional[int] = None + DetectSchema: Optional[bool] = None + StreamingOptions: Optional[KinesisStreamingSourceOptionsTypeDef] = None + DataPreviewOptions: Optional[StreamingDataPreviewOptionsTypeDef] = None + +class GetUnfilteredPartitionMetadataRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + PartitionValues: Sequence[str] + SupportedPermissionTypes: Sequence[PermissionTypeType] + Region: Optional[str] = None + AuditContext: Optional[AuditContextTypeDef] = None + QuerySessionContext: Optional[QuerySessionContextTypeDef] = None + +class GetUnfilteredPartitionsMetadataRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + SupportedPermissionTypes: Sequence[PermissionTypeType] + Region: Optional[str] = None + Expression: Optional[str] = None + AuditContext: Optional[AuditContextTypeDef] = None + NextToken: Optional[str] = None + Segment: Optional[SegmentTypeDef] = None + MaxResults: Optional[int] = None + QuerySessionContext: Optional[QuerySessionContextTypeDef] = None + +class GetUnfilteredTableMetadataRequestRequestTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + Name: str + SupportedPermissionTypes: Sequence[PermissionTypeType] + Region: Optional[str] = None + AuditContext: Optional[AuditContextTypeDef] = None + ParentResourceArn: Optional[str] = None + RootResourceArn: Optional[str] = None + SupportedDialect: Optional[SupportedDialectTypeDef] = None + Permissions: Optional[Sequence[PermissionType]] = None + QuerySessionContext: Optional[QuerySessionContextTypeDef] = None + +class GetMLTaskRunsRequestRequestTypeDef(BaseModel): + TransformId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filter: Optional[TaskRunFilterCriteriaTypeDef] = None + Sort: Optional[TaskRunSortCriteriaTypeDef] = None + +class TriggerTypeDef(BaseModel): + Name: Optional[str] = None + WorkflowName: Optional[str] = None + Id: Optional[str] = None + Type: Optional[TriggerTypeType] = None + State: Optional[TriggerStateType] = None + Description: Optional[str] = None + Schedule: Optional[str] = None + Actions: Optional[List[ActionOutputTypeDef]] = None + Predicate: Optional[PredicateOutputTypeDef] = None + EventBatchingCondition: Optional[EventBatchingConditionTypeDef] = None + +class TriggerUpdateTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Schedule: Optional[str] = None + Actions: Optional[Sequence[ActionTypeDef]] = None + Predicate: Optional[PredicateTypeDef] = None + EventBatchingCondition: Optional[EventBatchingConditionTypeDef] = None + +class GetUsageProfileResponseTypeDef(BaseModel): + Name: str + Description: str + Configuration: ProfileConfigurationOutputTypeDef + CreatedOn: datetime + LastModifiedOn: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUsageProfileRequestRequestTypeDef(BaseModel): + Name: str + Configuration: ProfileConfigurationTypeDef + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateUsageProfileRequestRequestTypeDef(BaseModel): + Name: str + Configuration: ProfileConfigurationTypeDef + Description: Optional[str] = None + +class EvaluationMetricsTypeDef(BaseModel): + TransformType: Literal["FIND_MATCHES"] + FindMatchesMetrics: Optional[FindMatchesMetricsTypeDef] = None + +class CrawlerTypeDef(BaseModel): + Name: Optional[str] = None + Role: Optional[str] = None + Targets: Optional[CrawlerTargetsOutputTypeDef] = None + DatabaseName: Optional[str] = None + Description: Optional[str] = None + Classifiers: Optional[List[str]] = None + RecrawlPolicy: Optional[RecrawlPolicyTypeDef] = None + SchemaChangePolicy: Optional[SchemaChangePolicyTypeDef] = None + LineageConfiguration: Optional[LineageConfigurationTypeDef] = None + State: Optional[CrawlerStateType] = None + TablePrefix: Optional[str] = None + Schedule: Optional[ScheduleTypeDef] = None + CrawlElapsedTime: Optional[int] = None + CreationTime: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + LastCrawl: Optional[LastCrawlInfoTypeDef] = None + Version: Optional[int] = None + Configuration: Optional[str] = None + CrawlerSecurityConfiguration: Optional[str] = None + LakeFormationConfiguration: Optional[LakeFormationConfigurationTypeDef] = None + +class CreateCrawlerRequestRequestTypeDef(BaseModel): + Name: str + Role: str + Targets: CrawlerTargetsTypeDef + DatabaseName: Optional[str] = None + Description: Optional[str] = None + Schedule: Optional[str] = None + Classifiers: Optional[Sequence[str]] = None + TablePrefix: Optional[str] = None + SchemaChangePolicy: Optional[SchemaChangePolicyTypeDef] = None + RecrawlPolicy: Optional[RecrawlPolicyTypeDef] = None + LineageConfiguration: Optional[LineageConfigurationTypeDef] = None + LakeFormationConfiguration: Optional[LakeFormationConfigurationTypeDef] = None + Configuration: Optional[str] = None + CrawlerSecurityConfiguration: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateCrawlerRequestRequestTypeDef(BaseModel): + Name: str + Role: Optional[str] = None + DatabaseName: Optional[str] = None + Description: Optional[str] = None + Targets: Optional[CrawlerTargetsTypeDef] = None + Schedule: Optional[str] = None + Classifiers: Optional[Sequence[str]] = None + TablePrefix: Optional[str] = None + SchemaChangePolicy: Optional[SchemaChangePolicyTypeDef] = None + RecrawlPolicy: Optional[RecrawlPolicyTypeDef] = None + LineageConfiguration: Optional[LineageConfigurationTypeDef] = None + LakeFormationConfiguration: Optional[LakeFormationConfigurationTypeDef] = None + Configuration: Optional[str] = None + CrawlerSecurityConfiguration: Optional[str] = None + +class ListDataQualityRulesetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filter: Optional[DataQualityRulesetFilterCriteriaTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class ListDataQualityRulesetsResponseTypeDef(BaseModel): + Rulesets: List[DataQualityRulesetListDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateSessionResponseTypeDef(BaseModel): + Session: SessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSessionResponseTypeDef(BaseModel): + Session: SessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSessionsResponseTypeDef(BaseModel): + Ids: List[str] + Sessions: List[SessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDataCatalogEncryptionSettingsResponseTypeDef(BaseModel): + DataCatalogEncryptionSettings: DataCatalogEncryptionSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDataCatalogEncryptionSettingsRequestRequestTypeDef(BaseModel): + DataCatalogEncryptionSettings: DataCatalogEncryptionSettingsTypeDef + CatalogId: Optional[str] = None + +class DatabaseTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + LocationUri: Optional[str] = None + Parameters: Optional[Dict[str, str]] = None + CreateTime: Optional[datetime] = None + CreateTableDefaultPermissions: Optional[List[PrincipalPermissionsOutputTypeDef]] = None + TargetDatabase: Optional[DatabaseIdentifierTypeDef] = None + CatalogId: Optional[str] = None + FederatedDatabase: Optional[FederatedDatabaseTypeDef] = None + +class DatabaseInputTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + LocationUri: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + CreateTableDefaultPermissions: Optional[Sequence[PrincipalPermissionsTypeDef]] = None + TargetDatabase: Optional[DatabaseIdentifierTypeDef] = None + FederatedDatabase: Optional[FederatedDatabaseTypeDef] = None + +class DataQualityObservationTypeDef(BaseModel): + Description: Optional[str] = None + MetricBasedObservation: Optional[MetricBasedObservationTypeDef] = None + +class DataQualityResultDescriptionTypeDef(BaseModel): + ResultId: Optional[str] = None + DataSource: Optional[DataSourceOutputTypeDef] = None + JobName: Optional[str] = None + JobRunId: Optional[str] = None + StartedOn: Optional[datetime] = None + +class DataQualityRuleRecommendationRunDescriptionTypeDef(BaseModel): + RunId: Optional[str] = None + Status: Optional[TaskStatusTypeType] = None + StartedOn: Optional[datetime] = None + DataSource: Optional[DataSourceOutputTypeDef] = None + +class DataQualityRulesetEvaluationRunDescriptionTypeDef(BaseModel): + RunId: Optional[str] = None + Status: Optional[TaskStatusTypeType] = None + StartedOn: Optional[datetime] = None + DataSource: Optional[DataSourceOutputTypeDef] = None + +class GetDataQualityRuleRecommendationRunResponseTypeDef(BaseModel): + RunId: str + DataSource: DataSourceOutputTypeDef + Role: str + NumberOfWorkers: int + Timeout: int + Status: TaskStatusTypeType + ErrorString: str + StartedOn: datetime + LastModifiedOn: datetime + CompletedOn: datetime + ExecutionTime: int + RecommendedRuleset: str + CreatedRulesetName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataQualityRulesetEvaluationRunResponseTypeDef(BaseModel): + RunId: str + DataSource: DataSourceOutputTypeDef + Role: str + NumberOfWorkers: int + Timeout: int + AdditionalRunOptions: DataQualityEvaluationRunAdditionalRunOptionsTypeDef + Status: TaskStatusTypeType + ErrorString: str + StartedOn: datetime + LastModifiedOn: datetime + CompletedOn: datetime + ExecutionTime: int + RulesetNames: List[str] + ResultIds: List[str] + AdditionalDataSources: Dict[str, DataSourceOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DataQualityResultFilterCriteriaTypeDef(BaseModel): + DataSource: Optional[DataSourceTypeDef] = None + JobName: Optional[str] = None + JobRunId: Optional[str] = None + StartedAfter: Optional[TimestampTypeDef] = None + StartedBefore: Optional[TimestampTypeDef] = None + +class DataQualityRuleRecommendationRunFilterTypeDef(BaseModel): + DataSource: DataSourceTypeDef + StartedBefore: Optional[TimestampTypeDef] = None + StartedAfter: Optional[TimestampTypeDef] = None + +class DataQualityRulesetEvaluationRunFilterTypeDef(BaseModel): + DataSource: DataSourceTypeDef + StartedBefore: Optional[TimestampTypeDef] = None + StartedAfter: Optional[TimestampTypeDef] = None + +class StartDataQualityRuleRecommendationRunRequestRequestTypeDef(BaseModel): + DataSource: DataSourceTypeDef + Role: str + NumberOfWorkers: Optional[int] = None + Timeout: Optional[int] = None + CreatedRulesetName: Optional[str] = None + ClientToken: Optional[str] = None + +class DropNullFieldsExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + NullCheckBoxList: Optional[NullCheckBoxListTypeDef] = None + NullTextList: Optional[List[NullValueFieldTypeDef]] = None + +class DropNullFieldsOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + NullCheckBoxList: Optional[NullCheckBoxListTypeDef] = None + NullTextList: Optional[List[NullValueFieldTypeDef]] = None + +class DropNullFieldsTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + NullCheckBoxList: Optional[NullCheckBoxListTypeDef] = None + NullTextList: Optional[Sequence[NullValueFieldTypeDef]] = None + +class ColumnStatisticsDataOutputTypeDef(BaseModel): + Type: ColumnStatisticsTypeType + BooleanColumnStatisticsData: Optional[BooleanColumnStatisticsDataTypeDef] = None + DateColumnStatisticsData: Optional[DateColumnStatisticsDataOutputTypeDef] = None + DecimalColumnStatisticsData: Optional[DecimalColumnStatisticsDataOutputTypeDef] = None + DoubleColumnStatisticsData: Optional[DoubleColumnStatisticsDataTypeDef] = None + LongColumnStatisticsData: Optional[LongColumnStatisticsDataTypeDef] = None + StringColumnStatisticsData: Optional[StringColumnStatisticsDataTypeDef] = None + BinaryColumnStatisticsData: Optional[BinaryColumnStatisticsDataTypeDef] = None + +class StorageDescriptorOutputTypeDef(BaseModel): + Columns: Optional[List[ColumnOutputTypeDef]] = None + Location: Optional[str] = None + AdditionalLocations: Optional[List[str]] = None + InputFormat: Optional[str] = None + OutputFormat: Optional[str] = None + Compressed: Optional[bool] = None + NumberOfBuckets: Optional[int] = None + SerdeInfo: Optional[SerDeInfoOutputTypeDef] = None + BucketColumns: Optional[List[str]] = None + SortColumns: Optional[List[OrderTypeDef]] = None + Parameters: Optional[Dict[str, str]] = None + SkewedInfo: Optional[SkewedInfoOutputTypeDef] = None + StoredAsSubDirectories: Optional[bool] = None + SchemaReference: Optional[SchemaReferenceTypeDef] = None + +class StorageDescriptorTypeDef(BaseModel): + Columns: Optional[Sequence[ColumnTypeDef]] = None + Location: Optional[str] = None + AdditionalLocations: Optional[Sequence[str]] = None + InputFormat: Optional[str] = None + OutputFormat: Optional[str] = None + Compressed: Optional[bool] = None + NumberOfBuckets: Optional[int] = None + SerdeInfo: Optional[SerDeInfoTypeDef] = None + BucketColumns: Optional[Sequence[str]] = None + SortColumns: Optional[Sequence[OrderTypeDef]] = None + Parameters: Optional[Mapping[str, str]] = None + SkewedInfo: Optional[SkewedInfoTypeDef] = None + StoredAsSubDirectories: Optional[bool] = None + SchemaReference: Optional[SchemaReferenceTypeDef] = None + +class SecurityConfigurationTypeDef(BaseModel): + Name: Optional[str] = None + CreatedTimeStamp: Optional[datetime] = None + EncryptionConfiguration: Optional[EncryptionConfigurationOutputTypeDef] = None + +class CreateSecurityConfigurationRequestRequestTypeDef(BaseModel): + Name: str + EncryptionConfiguration: EncryptionConfigurationTypeDef + +class DeleteSchemaVersionsResponseTypeDef(BaseModel): + SchemaVersionErrors: List[SchemaVersionErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FilterExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + LogicalOperator: FilterLogicalOperatorType + Filters: List[FilterExpressionExtraOutputTypeDef] + +class FilterOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + LogicalOperator: FilterLogicalOperatorType + Filters: List[FilterExpressionOutputTypeDef] + +class FilterTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + LogicalOperator: FilterLogicalOperatorType + Filters: Sequence[FilterExpressionTypeDef] + +class UpdateMLTransformRequestRequestTypeDef(BaseModel): + TransformId: str + Name: Optional[str] = None + Description: Optional[str] = None + Parameters: Optional[TransformParametersTypeDef] = None + Role: Optional[str] = None + GlueVersion: Optional[str] = None + MaxCapacity: Optional[float] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + Timeout: Optional[int] = None + MaxRetries: Optional[int] = None + +class GetMLTransformsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filter: Optional[TransformFilterCriteriaTypeDef] = None + Sort: Optional[TransformSortCriteriaTypeDef] = None + +class ListMLTransformsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filter: Optional[TransformFilterCriteriaTypeDef] = None + Sort: Optional[TransformSortCriteriaTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class AthenaConnectorSourceExtraOutputTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + SchemaName: str + ConnectionTable: Optional[str] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class CatalogDeltaSourceExtraOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalDeltaOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class CatalogHudiSourceExtraOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalHudiOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class ConnectorDataSourceExtraOutputTypeDef(BaseModel): + Name: str + ConnectionType: str + Data: Dict[str, str] + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class CustomCodeExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Code: str + ClassName: str + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class DynamicTransformExtraOutputTypeDef(BaseModel): + Name: str + TransformName: str + Inputs: List[str] + FunctionName: str + Path: str + Parameters: Optional[List[TransformConfigParameterExtraOutputTypeDef]] = None + Version: Optional[str] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class JDBCConnectorSourceExtraOutputTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[JDBCConnectorOptionsExtraOutputTypeDef] = None + ConnectionTable: Optional[str] = None + Query: Optional[str] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class JDBCConnectorTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + ConnectionName: str + ConnectionTable: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3CatalogDeltaSourceExtraOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalDeltaOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3CatalogHudiSourceExtraOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalHudiOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3CsvSourceExtraOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + Separator: SeparatorType + QuoteChar: QuoteCharType + CompressionType: Optional[CompressionTypeType] = None + Exclusions: Optional[List[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + Escaper: Optional[str] = None + Multiline: Optional[bool] = None + WithHeader: Optional[bool] = None + WriteHeader: Optional[bool] = None + SkipFirst: Optional[bool] = None + OptimizePerformance: Optional[bool] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3DeltaSourceExtraOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + AdditionalDeltaOptions: Optional[Dict[str, str]] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3HudiSourceExtraOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + AdditionalHudiOptions: Optional[Dict[str, str]] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3JsonSourceExtraOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + CompressionType: Optional[CompressionTypeType] = None + Exclusions: Optional[List[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + JsonPath: Optional[str] = None + Multiline: Optional[bool] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class S3ParquetSourceExtraOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + CompressionType: Optional[ParquetCompressionTypeType] = None + Exclusions: Optional[List[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class SnowflakeSourceExtraOutputTypeDef(BaseModel): + Name: str + Data: SnowflakeNodeDataExtraOutputTypeDef + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class SparkConnectorSourceExtraOutputTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class SparkConnectorTargetExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class SparkSQLExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + SqlQuery: str + SqlAliases: List[SqlAliasTypeDef] + OutputSchemas: Optional[List[GlueSchemaExtraOutputTypeDef]] = None + +class AthenaConnectorSourceOutputTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + SchemaName: str + ConnectionTable: Optional[str] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class CatalogDeltaSourceOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalDeltaOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class CatalogHudiSourceOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalHudiOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class ConnectorDataSourceOutputTypeDef(BaseModel): + Name: str + ConnectionType: str + Data: Dict[str, str] + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class CustomCodeOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + Code: str + ClassName: str + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class DynamicTransformOutputTypeDef(BaseModel): + Name: str + TransformName: str + Inputs: List[str] + FunctionName: str + Path: str + Parameters: Optional[List[TransformConfigParameterOutputTypeDef]] = None + Version: Optional[str] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class JDBCConnectorSourceOutputTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[JDBCConnectorOptionsOutputTypeDef] = None + ConnectionTable: Optional[str] = None + Query: Optional[str] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class JDBCConnectorTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + ConnectionName: str + ConnectionTable: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3CatalogDeltaSourceOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalDeltaOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3CatalogHudiSourceOutputTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalHudiOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3CsvSourceOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + Separator: SeparatorType + QuoteChar: QuoteCharType + CompressionType: Optional[CompressionTypeType] = None + Exclusions: Optional[List[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + Escaper: Optional[str] = None + Multiline: Optional[bool] = None + WithHeader: Optional[bool] = None + WriteHeader: Optional[bool] = None + SkipFirst: Optional[bool] = None + OptimizePerformance: Optional[bool] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3DeltaSourceOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + AdditionalDeltaOptions: Optional[Dict[str, str]] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3HudiSourceOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + AdditionalHudiOptions: Optional[Dict[str, str]] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3JsonSourceOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + CompressionType: Optional[CompressionTypeType] = None + Exclusions: Optional[List[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + JsonPath: Optional[str] = None + Multiline: Optional[bool] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class S3ParquetSourceOutputTypeDef(BaseModel): + Name: str + Paths: List[str] + CompressionType: Optional[ParquetCompressionTypeType] = None + Exclusions: Optional[List[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class SnowflakeSourceOutputTypeDef(BaseModel): + Name: str + Data: SnowflakeNodeDataOutputTypeDef + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class SparkConnectorSourceOutputTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class SparkConnectorTargetOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Dict[str, str]] = None + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class SparkSQLOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + SqlQuery: str + SqlAliases: List[SqlAliasTypeDef] + OutputSchemas: Optional[List[GlueSchemaOutputTypeDef]] = None + +class AthenaConnectorSourceTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + SchemaName: str + ConnectionTable: Optional[str] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class CatalogDeltaSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalDeltaOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class CatalogHudiSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalHudiOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class ConnectorDataSourceTypeDef(BaseModel): + Name: str + ConnectionType: str + Data: Mapping[str, str] + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class CustomCodeTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + Code: str + ClassName: str + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class DynamicTransformTypeDef(BaseModel): + Name: str + TransformName: str + Inputs: Sequence[str] + FunctionName: str + Path: str + Parameters: Optional[Sequence[TransformConfigParameterTypeDef]] = None + Version: Optional[str] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class JDBCConnectorSourceTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[JDBCConnectorOptionsTypeDef] = None + ConnectionTable: Optional[str] = None + Query: Optional[str] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class JDBCConnectorTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + ConnectionName: str + ConnectionTable: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3CatalogDeltaSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalDeltaOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3CatalogHudiSourceTypeDef(BaseModel): + Name: str + Database: str + Table: str + AdditionalHudiOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3CsvSourceTypeDef(BaseModel): + Name: str + Paths: Sequence[str] + Separator: SeparatorType + QuoteChar: QuoteCharType + CompressionType: Optional[CompressionTypeType] = None + Exclusions: Optional[Sequence[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + Escaper: Optional[str] = None + Multiline: Optional[bool] = None + WithHeader: Optional[bool] = None + WriteHeader: Optional[bool] = None + SkipFirst: Optional[bool] = None + OptimizePerformance: Optional[bool] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3DeltaSourceTypeDef(BaseModel): + Name: str + Paths: Sequence[str] + AdditionalDeltaOptions: Optional[Mapping[str, str]] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3HudiSourceTypeDef(BaseModel): + Name: str + Paths: Sequence[str] + AdditionalHudiOptions: Optional[Mapping[str, str]] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3JsonSourceTypeDef(BaseModel): + Name: str + Paths: Sequence[str] + CompressionType: Optional[CompressionTypeType] = None + Exclusions: Optional[Sequence[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + JsonPath: Optional[str] = None + Multiline: Optional[bool] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class S3ParquetSourceTypeDef(BaseModel): + Name: str + Paths: Sequence[str] + CompressionType: Optional[ParquetCompressionTypeType] = None + Exclusions: Optional[Sequence[str]] = None + GroupSize: Optional[str] = None + GroupFiles: Optional[str] = None + Recurse: Optional[bool] = None + MaxBand: Optional[int] = None + MaxFilesInBand: Optional[int] = None + AdditionalOptions: Optional[S3DirectSourceAdditionalOptionsTypeDef] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class SnowflakeSourceTypeDef(BaseModel): + Name: str + Data: SnowflakeNodeDataTypeDef + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class SparkConnectorSourceTypeDef(BaseModel): + Name: str + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class SparkConnectorTargetTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + ConnectionName: str + ConnectorName: str + ConnectionType: str + AdditionalOptions: Optional[Mapping[str, str]] = None + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class SparkSQLTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + SqlQuery: str + SqlAliases: Sequence[SqlAliasTypeDef] + OutputSchemas: Optional[Sequence[GlueSchemaTypeDef]] = None + +class GetJobRunResponseTypeDef(BaseModel): + JobRun: JobRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobRunsResponseTypeDef(BaseModel): + JobRuns: List[JobRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class JobNodeDetailsTypeDef(BaseModel): + JobRuns: Optional[List[JobRunTypeDef]] = None + +class GetMLTaskRunResponseTypeDef(BaseModel): + TransformId: str + TaskRunId: str + Status: TaskStatusTypeType + LogGroupName: str + Properties: TaskRunPropertiesTypeDef + ErrorString: str + StartedOn: datetime + LastModifiedOn: datetime + CompletedOn: datetime + ExecutionTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class TaskRunTypeDef(BaseModel): + TransformId: Optional[str] = None + TaskRunId: Optional[str] = None + Status: Optional[TaskStatusTypeType] = None + LogGroupName: Optional[str] = None + Properties: Optional[TaskRunPropertiesTypeDef] = None + ErrorString: Optional[str] = None + StartedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + CompletedOn: Optional[datetime] = None + ExecutionTime: Optional[int] = None + +class CreateMLTransformRequestRequestTypeDef(BaseModel): + Name: str + InputRecordTables: Sequence[GlueTableUnionTypeDef] + Parameters: TransformParametersTypeDef + Role: str + Description: Optional[str] = None + GlueVersion: Optional[str] = None + MaxCapacity: Optional[float] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + Timeout: Optional[int] = None + MaxRetries: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + TransformEncryption: Optional[TransformEncryptionTypeDef] = None + +class QuerySchemaVersionMetadataResponseTypeDef(BaseModel): + MetadataInfoMap: Dict[str, MetadataInfoTypeDef] + SchemaVersionId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AuthenticationConfigurationInputTypeDef(BaseModel): + AuthenticationType: Optional[AuthenticationTypeType] = None + SecretArn: Optional[str] = None + OAuth2Properties: Optional[OAuth2PropertiesInputTypeDef] = None + +class AuthenticationConfigurationTypeDef(BaseModel): + AuthenticationType: Optional[AuthenticationTypeType] = None + SecretArn: Optional[str] = None + OAuth2Properties: Optional[OAuth2PropertiesTypeDef] = None + +class BatchDeletePartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionsToDelete: Sequence[PartitionValueListUnionTypeDef] + CatalogId: Optional[str] = None + +class BatchGetPartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionsToGet: Sequence[PartitionValueListUnionTypeDef] + CatalogId: Optional[str] = None + +class RecipeExtraOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + RecipeReference: Optional[RecipeReferenceTypeDef] = None + RecipeSteps: Optional[List[RecipeStepExtraOutputTypeDef]] = None + +class RecipeOutputTypeDef(BaseModel): + Name: str + Inputs: List[str] + RecipeReference: Optional[RecipeReferenceTypeDef] = None + RecipeSteps: Optional[List[RecipeStepOutputTypeDef]] = None + +class RecipeTypeDef(BaseModel): + Name: str + Inputs: Sequence[str] + RecipeReference: Optional[RecipeReferenceTypeDef] = None + RecipeSteps: Optional[Sequence[RecipeStepTypeDef]] = None + +class CreateUserDefinedFunctionRequestRequestTypeDef(BaseModel): + DatabaseName: str + FunctionInput: UserDefinedFunctionInputTypeDef + CatalogId: Optional[str] = None + +class UpdateUserDefinedFunctionRequestRequestTypeDef(BaseModel): + DatabaseName: str + FunctionName: str + FunctionInput: UserDefinedFunctionInputTypeDef + CatalogId: Optional[str] = None + +class GetUserDefinedFunctionResponseTypeDef(BaseModel): + UserDefinedFunction: UserDefinedFunctionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserDefinedFunctionsResponseTypeDef(BaseModel): + UserDefinedFunctions: List[UserDefinedFunctionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTableOptimizerRunsResponseTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + TableOptimizerRuns: List[TableOptimizerRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TableOptimizerTypeDef(BaseModel): + type: Optional[Literal["compaction"]] = None + configuration: Optional[TableOptimizerConfigurationTypeDef] = None + lastRun: Optional[TableOptimizerRunTypeDef] = None + +class StatementTypeDef(BaseModel): + Id: Optional[int] = None + Code: Optional[str] = None + State: Optional[StatementStateType] = None + Output: Optional[StatementOutputTypeDef] = None + Progress: Optional[float] = None + StartedOn: Optional[int] = None + CompletedOn: Optional[int] = None + +class CreateTriggerRequestRequestTypeDef(BaseModel): + Name: str + Type: TriggerTypeType + Actions: Sequence[ActionUnionTypeDef] + WorkflowName: Optional[str] = None + Schedule: Optional[str] = None + Predicate: Optional[PredicateTypeDef] = None + Description: Optional[str] = None + StartOnCreation: Optional[bool] = None + Tags: Optional[Mapping[str, str]] = None + EventBatchingCondition: Optional[EventBatchingConditionTypeDef] = None + +class GetPartitionIndexesResponseTypeDef(BaseModel): + PartitionIndexDescriptorList: List[PartitionIndexDescriptorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ColumnStatisticsDataTypeDef(BaseModel): + Type: ColumnStatisticsTypeType + BooleanColumnStatisticsData: Optional[BooleanColumnStatisticsDataTypeDef] = None + DateColumnStatisticsData: Optional[DateColumnStatisticsDataTypeDef] = None + DecimalColumnStatisticsData: Optional[DecimalColumnStatisticsDataTypeDef] = None + DoubleColumnStatisticsData: Optional[DoubleColumnStatisticsDataTypeDef] = None + LongColumnStatisticsData: Optional[LongColumnStatisticsDataTypeDef] = None + StringColumnStatisticsData: Optional[StringColumnStatisticsDataTypeDef] = None + BinaryColumnStatisticsData: Optional[BinaryColumnStatisticsDataTypeDef] = None + +class CreateScriptRequestRequestTypeDef(BaseModel): + DagNodes: Optional[Sequence[CodeGenNodeUnionTypeDef]] = None + DagEdges: Optional[Sequence[CodeGenEdgeTypeDef]] = None + Language: Optional[LanguageType] = None + +class BatchGetTriggersResponseTypeDef(BaseModel): + Triggers: List[TriggerTypeDef] + TriggersNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTriggerResponseTypeDef(BaseModel): + Trigger: TriggerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTriggersResponseTypeDef(BaseModel): + Triggers: List[TriggerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TriggerNodeDetailsTypeDef(BaseModel): + Trigger: Optional[TriggerTypeDef] = None + +class UpdateTriggerResponseTypeDef(BaseModel): + Trigger: TriggerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTriggerRequestRequestTypeDef(BaseModel): + Name: str + TriggerUpdate: TriggerUpdateTypeDef + +class GetMLTransformResponseTypeDef(BaseModel): + TransformId: str + Name: str + Description: str + Status: TransformStatusTypeType + CreatedOn: datetime + LastModifiedOn: datetime + InputRecordTables: List[GlueTableOutputTypeDef] + Parameters: TransformParametersTypeDef + EvaluationMetrics: EvaluationMetricsTypeDef + LabelCount: int + Schema: List[SchemaColumnTypeDef] + Role: str + GlueVersion: str + MaxCapacity: float + WorkerType: WorkerTypeType + NumberOfWorkers: int + Timeout: int + MaxRetries: int + TransformEncryption: TransformEncryptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MLTransformTypeDef(BaseModel): + TransformId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Status: Optional[TransformStatusTypeType] = None + CreatedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + InputRecordTables: Optional[List[GlueTableOutputTypeDef]] = None + Parameters: Optional[TransformParametersTypeDef] = None + EvaluationMetrics: Optional[EvaluationMetricsTypeDef] = None + LabelCount: Optional[int] = None + Schema: Optional[List[SchemaColumnTypeDef]] = None + Role: Optional[str] = None + GlueVersion: Optional[str] = None + MaxCapacity: Optional[float] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + Timeout: Optional[int] = None + MaxRetries: Optional[int] = None + TransformEncryption: Optional[TransformEncryptionTypeDef] = None + +class BatchGetCrawlersResponseTypeDef(BaseModel): + Crawlers: List[CrawlerTypeDef] + CrawlersNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCrawlerResponseTypeDef(BaseModel): + Crawler: CrawlerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCrawlersResponseTypeDef(BaseModel): + Crawlers: List[CrawlerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDatabaseResponseTypeDef(BaseModel): + Database: DatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDatabasesResponseTypeDef(BaseModel): + DatabaseList: List[DatabaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateDatabaseRequestRequestTypeDef(BaseModel): + DatabaseInput: DatabaseInputTypeDef + CatalogId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateDatabaseRequestRequestTypeDef(BaseModel): + Name: str + DatabaseInput: DatabaseInputTypeDef + CatalogId: Optional[str] = None + +class DataQualityResultTypeDef(BaseModel): + ResultId: Optional[str] = None + Score: Optional[float] = None + DataSource: Optional[DataSourceOutputTypeDef] = None + RulesetName: Optional[str] = None + EvaluationContext: Optional[str] = None + StartedOn: Optional[datetime] = None + CompletedOn: Optional[datetime] = None + JobName: Optional[str] = None + JobRunId: Optional[str] = None + RulesetEvaluationRunId: Optional[str] = None + RuleResults: Optional[List[DataQualityRuleResultTypeDef]] = None + AnalyzerResults: Optional[List[DataQualityAnalyzerResultTypeDef]] = None + Observations: Optional[List[DataQualityObservationTypeDef]] = None + +class GetDataQualityResultResponseTypeDef(BaseModel): + ResultId: str + Score: float + DataSource: DataSourceOutputTypeDef + RulesetName: str + EvaluationContext: str + StartedOn: datetime + CompletedOn: datetime + JobName: str + JobRunId: str + RulesetEvaluationRunId: str + RuleResults: List[DataQualityRuleResultTypeDef] + AnalyzerResults: List[DataQualityAnalyzerResultTypeDef] + Observations: List[DataQualityObservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataQualityResultsResponseTypeDef(BaseModel): + Results: List[DataQualityResultDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDataQualityRuleRecommendationRunsResponseTypeDef(BaseModel): + Runs: List[DataQualityRuleRecommendationRunDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDataQualityRulesetEvaluationRunsResponseTypeDef(BaseModel): + Runs: List[DataQualityRulesetEvaluationRunDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDataQualityResultsRequestRequestTypeDef(BaseModel): + Filter: Optional[DataQualityResultFilterCriteriaTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataQualityRuleRecommendationRunsRequestRequestTypeDef(BaseModel): + Filter: Optional[DataQualityRuleRecommendationRunFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataQualityRulesetEvaluationRunsRequestRequestTypeDef(BaseModel): + Filter: Optional[DataQualityRulesetEvaluationRunFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class StartDataQualityRulesetEvaluationRunRequestRequestTypeDef(BaseModel): + DataSource: DataSourceTypeDef + Role: str + RulesetNames: Sequence[str] + NumberOfWorkers: Optional[int] = None + Timeout: Optional[int] = None + ClientToken: Optional[str] = None + AdditionalRunOptions: Optional[DataQualityEvaluationRunAdditionalRunOptionsTypeDef] = None + AdditionalDataSources: Optional[Mapping[str, DataSourceUnionTypeDef]] = None + +class ColumnStatisticsOutputTypeDef(BaseModel): + ColumnName: str + ColumnType: str + AnalyzedTime: datetime + StatisticsData: ColumnStatisticsDataOutputTypeDef + +class PartitionTypeDef(BaseModel): + Values: Optional[List[str]] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastAccessTime: Optional[datetime] = None + StorageDescriptor: Optional[StorageDescriptorOutputTypeDef] = None + Parameters: Optional[Dict[str, str]] = None + LastAnalyzedTime: Optional[datetime] = None + CatalogId: Optional[str] = None + +class TableTypeDef(BaseModel): + Name: str + DatabaseName: Optional[str] = None + Description: Optional[str] = None + Owner: Optional[str] = None + CreateTime: Optional[datetime] = None + UpdateTime: Optional[datetime] = None + LastAccessTime: Optional[datetime] = None + LastAnalyzedTime: Optional[datetime] = None + Retention: Optional[int] = None + StorageDescriptor: Optional[StorageDescriptorOutputTypeDef] = None + PartitionKeys: Optional[List[ColumnOutputTypeDef]] = None + ViewOriginalText: Optional[str] = None + ViewExpandedText: Optional[str] = None + TableType: Optional[str] = None + Parameters: Optional[Dict[str, str]] = None + CreatedBy: Optional[str] = None + IsRegisteredWithLakeFormation: Optional[bool] = None + TargetTable: Optional[TableIdentifierTypeDef] = None + CatalogId: Optional[str] = None + VersionId: Optional[str] = None + FederatedTable: Optional[FederatedTableTypeDef] = None + ViewDefinition: Optional[ViewDefinitionTypeDef] = None + IsMultiDialectView: Optional[bool] = None + +class PartitionInputTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + LastAccessTime: Optional[TimestampTypeDef] = None + StorageDescriptor: Optional[StorageDescriptorTypeDef] = None + Parameters: Optional[Mapping[str, str]] = None + LastAnalyzedTime: Optional[TimestampTypeDef] = None + +class TableInputTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Owner: Optional[str] = None + LastAccessTime: Optional[TimestampTypeDef] = None + LastAnalyzedTime: Optional[TimestampTypeDef] = None + Retention: Optional[int] = None + StorageDescriptor: Optional[StorageDescriptorTypeDef] = None + PartitionKeys: Optional[Sequence[ColumnTypeDef]] = None + ViewOriginalText: Optional[str] = None + ViewExpandedText: Optional[str] = None + TableType: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + TargetTable: Optional[TableIdentifierTypeDef] = None + ViewDefinition: Optional[ViewDefinitionInputTypeDef] = None + +class GetSecurityConfigurationResponseTypeDef(BaseModel): + SecurityConfiguration: SecurityConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSecurityConfigurationsResponseTypeDef(BaseModel): + SecurityConfigurations: List[SecurityConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetMLTaskRunsResponseTypeDef(BaseModel): + TaskRuns: List[TaskRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ConnectionInputTypeDef(BaseModel): + Name: str + ConnectionType: ConnectionTypeType + ConnectionProperties: Mapping[ConnectionPropertyKeyType, str] + Description: Optional[str] = None + MatchCriteria: Optional[Sequence[str]] = None + PhysicalConnectionRequirements: Optional[PhysicalConnectionRequirementsTypeDef] = None + AuthenticationConfiguration: Optional[AuthenticationConfigurationInputTypeDef] = None + ValidateCredentials: Optional[bool] = None + +class ConnectionTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + ConnectionType: Optional[ConnectionTypeType] = None + MatchCriteria: Optional[List[str]] = None + ConnectionProperties: Optional[Dict[ConnectionPropertyKeyType, str]] = None + PhysicalConnectionRequirements: Optional[PhysicalConnectionRequirementsOutputTypeDef] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + LastUpdatedBy: Optional[str] = None + Status: Optional[ConnectionStatusType] = None + StatusReason: Optional[str] = None + LastConnectionValidationTime: Optional[datetime] = None + AuthenticationConfiguration: Optional[AuthenticationConfigurationTypeDef] = None + +class CodeGenConfigurationNodeExtraOutputTypeDef(BaseModel): + AthenaConnectorSource: Optional[AthenaConnectorSourceExtraOutputTypeDef] = None + JDBCConnectorSource: Optional[JDBCConnectorSourceExtraOutputTypeDef] = None + SparkConnectorSource: Optional[SparkConnectorSourceExtraOutputTypeDef] = None + CatalogSource: Optional[CatalogSourceTypeDef] = None + RedshiftSource: Optional[RedshiftSourceTypeDef] = None + S3CatalogSource: Optional[S3CatalogSourceTypeDef] = None + S3CsvSource: Optional[S3CsvSourceExtraOutputTypeDef] = None + S3JsonSource: Optional[S3JsonSourceExtraOutputTypeDef] = None + S3ParquetSource: Optional[S3ParquetSourceExtraOutputTypeDef] = None + RelationalCatalogSource: Optional[RelationalCatalogSourceTypeDef] = None + DynamoDBCatalogSource: Optional[DynamoDBCatalogSourceTypeDef] = None + JDBCConnectorTarget: Optional[JDBCConnectorTargetExtraOutputTypeDef] = None + SparkConnectorTarget: Optional[SparkConnectorTargetExtraOutputTypeDef] = None + CatalogTarget: Optional[BasicCatalogTargetExtraOutputTypeDef] = None + RedshiftTarget: Optional[RedshiftTargetExtraOutputTypeDef] = None + S3CatalogTarget: Optional[S3CatalogTargetExtraOutputTypeDef] = None + S3GlueParquetTarget: Optional[S3GlueParquetTargetExtraOutputTypeDef] = None + S3DirectTarget: Optional[S3DirectTargetExtraOutputTypeDef] = None + ApplyMapping: Optional[ApplyMappingExtraOutputTypeDef] = None + SelectFields: Optional[SelectFieldsExtraOutputTypeDef] = None + DropFields: Optional[DropFieldsExtraOutputTypeDef] = None + RenameField: Optional[RenameFieldExtraOutputTypeDef] = None + Spigot: Optional[SpigotExtraOutputTypeDef] = None + Join: Optional[JoinExtraOutputTypeDef] = None + SplitFields: Optional[SplitFieldsExtraOutputTypeDef] = None + SelectFromCollection: Optional[SelectFromCollectionExtraOutputTypeDef] = None + FillMissingValues: Optional[FillMissingValuesExtraOutputTypeDef] = None + Filter: Optional[FilterExtraOutputTypeDef] = None + CustomCode: Optional[CustomCodeExtraOutputTypeDef] = None + SparkSQL: Optional[SparkSQLExtraOutputTypeDef] = None + DirectKinesisSource: Optional[DirectKinesisSourceExtraOutputTypeDef] = None + DirectKafkaSource: Optional[DirectKafkaSourceExtraOutputTypeDef] = None + CatalogKinesisSource: Optional[CatalogKinesisSourceExtraOutputTypeDef] = None + CatalogKafkaSource: Optional[CatalogKafkaSourceExtraOutputTypeDef] = None + DropNullFields: Optional[DropNullFieldsExtraOutputTypeDef] = None + Merge: Optional[MergeExtraOutputTypeDef] = None + Union: Optional[UnionExtraOutputTypeDef] = None + PIIDetection: Optional[PIIDetectionExtraOutputTypeDef] = None + Aggregate: Optional[AggregateExtraOutputTypeDef] = None + DropDuplicates: Optional[DropDuplicatesExtraOutputTypeDef] = None + GovernedCatalogTarget: Optional[GovernedCatalogTargetExtraOutputTypeDef] = None + GovernedCatalogSource: Optional[GovernedCatalogSourceTypeDef] = None + MicrosoftSQLServerCatalogSource: Optional[MicrosoftSQLServerCatalogSourceTypeDef] = None + MySQLCatalogSource: Optional[MySQLCatalogSourceTypeDef] = None + OracleSQLCatalogSource: Optional[OracleSQLCatalogSourceTypeDef] = None + PostgreSQLCatalogSource: Optional[PostgreSQLCatalogSourceTypeDef] = None + MicrosoftSQLServerCatalogTarget: Optional[ MicrosoftSQLServerCatalogTargetExtraOutputTypeDef ] = None + MySQLCatalogTarget: Optional[MySQLCatalogTargetExtraOutputTypeDef] = None + OracleSQLCatalogTarget: Optional[OracleSQLCatalogTargetExtraOutputTypeDef] = None + PostgreSQLCatalogTarget: Optional[PostgreSQLCatalogTargetExtraOutputTypeDef] = None + DynamicTransform: Optional[DynamicTransformExtraOutputTypeDef] = None + EvaluateDataQuality: Optional[EvaluateDataQualityExtraOutputTypeDef] = None + S3CatalogHudiSource: Optional[S3CatalogHudiSourceExtraOutputTypeDef] = None + CatalogHudiSource: Optional[CatalogHudiSourceExtraOutputTypeDef] = None + S3HudiSource: Optional[S3HudiSourceExtraOutputTypeDef] = None + S3HudiCatalogTarget: Optional[S3HudiCatalogTargetExtraOutputTypeDef] = None + S3HudiDirectTarget: Optional[S3HudiDirectTargetExtraOutputTypeDef] = None + DirectJDBCSource: Optional[DirectJDBCSourceTypeDef] = None + S3CatalogDeltaSource: Optional[S3CatalogDeltaSourceExtraOutputTypeDef] = None + CatalogDeltaSource: Optional[CatalogDeltaSourceExtraOutputTypeDef] = None + S3DeltaSource: Optional[S3DeltaSourceExtraOutputTypeDef] = None + S3DeltaCatalogTarget: Optional[S3DeltaCatalogTargetExtraOutputTypeDef] = None + S3DeltaDirectTarget: Optional[S3DeltaDirectTargetExtraOutputTypeDef] = None + AmazonRedshiftSource: Optional[AmazonRedshiftSourceExtraOutputTypeDef] = None + AmazonRedshiftTarget: Optional[AmazonRedshiftTargetExtraOutputTypeDef] = None + EvaluateDataQualityMultiFrame: Optional[ EvaluateDataQualityMultiFrameExtraOutputTypeDef ] = None + Recipe: Optional[RecipeExtraOutputTypeDef] = None + SnowflakeSource: Optional[SnowflakeSourceExtraOutputTypeDef] = None + SnowflakeTarget: Optional[SnowflakeTargetExtraOutputTypeDef] = None + ConnectorDataSource: Optional[ConnectorDataSourceExtraOutputTypeDef] = None + ConnectorDataTarget: Optional[ConnectorDataTargetExtraOutputTypeDef] = None + +class CodeGenConfigurationNodeOutputTypeDef(BaseModel): + AthenaConnectorSource: Optional[AthenaConnectorSourceOutputTypeDef] = None + JDBCConnectorSource: Optional[JDBCConnectorSourceOutputTypeDef] = None + SparkConnectorSource: Optional[SparkConnectorSourceOutputTypeDef] = None + CatalogSource: Optional[CatalogSourceTypeDef] = None + RedshiftSource: Optional[RedshiftSourceTypeDef] = None + S3CatalogSource: Optional[S3CatalogSourceTypeDef] = None + S3CsvSource: Optional[S3CsvSourceOutputTypeDef] = None + S3JsonSource: Optional[S3JsonSourceOutputTypeDef] = None + S3ParquetSource: Optional[S3ParquetSourceOutputTypeDef] = None + RelationalCatalogSource: Optional[RelationalCatalogSourceTypeDef] = None + DynamoDBCatalogSource: Optional[DynamoDBCatalogSourceTypeDef] = None + JDBCConnectorTarget: Optional[JDBCConnectorTargetOutputTypeDef] = None + SparkConnectorTarget: Optional[SparkConnectorTargetOutputTypeDef] = None + CatalogTarget: Optional[BasicCatalogTargetOutputTypeDef] = None + RedshiftTarget: Optional[RedshiftTargetOutputTypeDef] = None + S3CatalogTarget: Optional[S3CatalogTargetOutputTypeDef] = None + S3GlueParquetTarget: Optional[S3GlueParquetTargetOutputTypeDef] = None + S3DirectTarget: Optional[S3DirectTargetOutputTypeDef] = None + ApplyMapping: Optional[ApplyMappingOutputTypeDef] = None + SelectFields: Optional[SelectFieldsOutputTypeDef] = None + DropFields: Optional[DropFieldsOutputTypeDef] = None + RenameField: Optional[RenameFieldOutputTypeDef] = None + Spigot: Optional[SpigotOutputTypeDef] = None + Join: Optional[JoinOutputTypeDef] = None + SplitFields: Optional[SplitFieldsOutputTypeDef] = None + SelectFromCollection: Optional[SelectFromCollectionOutputTypeDef] = None + FillMissingValues: Optional[FillMissingValuesOutputTypeDef] = None + Filter: Optional[FilterOutputTypeDef] = None + CustomCode: Optional[CustomCodeOutputTypeDef] = None + SparkSQL: Optional[SparkSQLOutputTypeDef] = None + DirectKinesisSource: Optional[DirectKinesisSourceOutputTypeDef] = None + DirectKafkaSource: Optional[DirectKafkaSourceOutputTypeDef] = None + CatalogKinesisSource: Optional[CatalogKinesisSourceOutputTypeDef] = None + CatalogKafkaSource: Optional[CatalogKafkaSourceOutputTypeDef] = None + DropNullFields: Optional[DropNullFieldsOutputTypeDef] = None + Merge: Optional[MergeOutputTypeDef] = None + Union: Optional[UnionOutputTypeDef] = None + PIIDetection: Optional[PIIDetectionOutputTypeDef] = None + Aggregate: Optional[AggregateOutputTypeDef] = None + DropDuplicates: Optional[DropDuplicatesOutputTypeDef] = None + GovernedCatalogTarget: Optional[GovernedCatalogTargetOutputTypeDef] = None + GovernedCatalogSource: Optional[GovernedCatalogSourceTypeDef] = None + MicrosoftSQLServerCatalogSource: Optional[MicrosoftSQLServerCatalogSourceTypeDef] = None + MySQLCatalogSource: Optional[MySQLCatalogSourceTypeDef] = None + OracleSQLCatalogSource: Optional[OracleSQLCatalogSourceTypeDef] = None + PostgreSQLCatalogSource: Optional[PostgreSQLCatalogSourceTypeDef] = None + MicrosoftSQLServerCatalogTarget: Optional[ MicrosoftSQLServerCatalogTargetOutputTypeDef ] = None + MySQLCatalogTarget: Optional[MySQLCatalogTargetOutputTypeDef] = None + OracleSQLCatalogTarget: Optional[OracleSQLCatalogTargetOutputTypeDef] = None + PostgreSQLCatalogTarget: Optional[PostgreSQLCatalogTargetOutputTypeDef] = None + DynamicTransform: Optional[DynamicTransformOutputTypeDef] = None + EvaluateDataQuality: Optional[EvaluateDataQualityOutputTypeDef] = None + S3CatalogHudiSource: Optional[S3CatalogHudiSourceOutputTypeDef] = None + CatalogHudiSource: Optional[CatalogHudiSourceOutputTypeDef] = None + S3HudiSource: Optional[S3HudiSourceOutputTypeDef] = None + S3HudiCatalogTarget: Optional[S3HudiCatalogTargetOutputTypeDef] = None + S3HudiDirectTarget: Optional[S3HudiDirectTargetOutputTypeDef] = None + DirectJDBCSource: Optional[DirectJDBCSourceTypeDef] = None + S3CatalogDeltaSource: Optional[S3CatalogDeltaSourceOutputTypeDef] = None + CatalogDeltaSource: Optional[CatalogDeltaSourceOutputTypeDef] = None + S3DeltaSource: Optional[S3DeltaSourceOutputTypeDef] = None + S3DeltaCatalogTarget: Optional[S3DeltaCatalogTargetOutputTypeDef] = None + S3DeltaDirectTarget: Optional[S3DeltaDirectTargetOutputTypeDef] = None + AmazonRedshiftSource: Optional[AmazonRedshiftSourceOutputTypeDef] = None + AmazonRedshiftTarget: Optional[AmazonRedshiftTargetOutputTypeDef] = None + EvaluateDataQualityMultiFrame: Optional[EvaluateDataQualityMultiFrameOutputTypeDef] = None + Recipe: Optional[RecipeOutputTypeDef] = None + SnowflakeSource: Optional[SnowflakeSourceOutputTypeDef] = None + SnowflakeTarget: Optional[SnowflakeTargetOutputTypeDef] = None + ConnectorDataSource: Optional[ConnectorDataSourceOutputTypeDef] = None + ConnectorDataTarget: Optional[ConnectorDataTargetOutputTypeDef] = None + +class CodeGenConfigurationNodeTypeDef(BaseModel): + AthenaConnectorSource: Optional[AthenaConnectorSourceTypeDef] = None + JDBCConnectorSource: Optional[JDBCConnectorSourceTypeDef] = None + SparkConnectorSource: Optional[SparkConnectorSourceTypeDef] = None + CatalogSource: Optional[CatalogSourceTypeDef] = None + RedshiftSource: Optional[RedshiftSourceTypeDef] = None + S3CatalogSource: Optional[S3CatalogSourceTypeDef] = None + S3CsvSource: Optional[S3CsvSourceTypeDef] = None + S3JsonSource: Optional[S3JsonSourceTypeDef] = None + S3ParquetSource: Optional[S3ParquetSourceTypeDef] = None + RelationalCatalogSource: Optional[RelationalCatalogSourceTypeDef] = None + DynamoDBCatalogSource: Optional[DynamoDBCatalogSourceTypeDef] = None + JDBCConnectorTarget: Optional[JDBCConnectorTargetTypeDef] = None + SparkConnectorTarget: Optional[SparkConnectorTargetTypeDef] = None + CatalogTarget: Optional[BasicCatalogTargetTypeDef] = None + RedshiftTarget: Optional[RedshiftTargetTypeDef] = None + S3CatalogTarget: Optional[S3CatalogTargetTypeDef] = None + S3GlueParquetTarget: Optional[S3GlueParquetTargetTypeDef] = None + S3DirectTarget: Optional[S3DirectTargetTypeDef] = None + ApplyMapping: Optional[ApplyMappingTypeDef] = None + SelectFields: Optional[SelectFieldsTypeDef] = None + DropFields: Optional[DropFieldsTypeDef] = None + RenameField: Optional[RenameFieldTypeDef] = None + Spigot: Optional[SpigotTypeDef] = None + Join: Optional[JoinTypeDef] = None + SplitFields: Optional[SplitFieldsTypeDef] = None + SelectFromCollection: Optional[SelectFromCollectionTypeDef] = None + FillMissingValues: Optional[FillMissingValuesTypeDef] = None + Filter: Optional[FilterTypeDef] = None + CustomCode: Optional[CustomCodeTypeDef] = None + SparkSQL: Optional[SparkSQLTypeDef] = None + DirectKinesisSource: Optional[DirectKinesisSourceTypeDef] = None + DirectKafkaSource: Optional[DirectKafkaSourceTypeDef] = None + CatalogKinesisSource: Optional[CatalogKinesisSourceTypeDef] = None + CatalogKafkaSource: Optional[CatalogKafkaSourceTypeDef] = None + DropNullFields: Optional[DropNullFieldsTypeDef] = None + Merge: Optional[MergeTypeDef] = None + Union: Optional[UnionTypeDef] = None + PIIDetection: Optional[PIIDetectionTypeDef] = None + Aggregate: Optional[AggregateTypeDef] = None + DropDuplicates: Optional[DropDuplicatesTypeDef] = None + GovernedCatalogTarget: Optional[GovernedCatalogTargetTypeDef] = None + GovernedCatalogSource: Optional[GovernedCatalogSourceTypeDef] = None + MicrosoftSQLServerCatalogSource: Optional[MicrosoftSQLServerCatalogSourceTypeDef] = None + MySQLCatalogSource: Optional[MySQLCatalogSourceTypeDef] = None + OracleSQLCatalogSource: Optional[OracleSQLCatalogSourceTypeDef] = None + PostgreSQLCatalogSource: Optional[PostgreSQLCatalogSourceTypeDef] = None + MicrosoftSQLServerCatalogTarget: Optional[MicrosoftSQLServerCatalogTargetTypeDef] = None + MySQLCatalogTarget: Optional[MySQLCatalogTargetTypeDef] = None + OracleSQLCatalogTarget: Optional[OracleSQLCatalogTargetTypeDef] = None + PostgreSQLCatalogTarget: Optional[PostgreSQLCatalogTargetTypeDef] = None + DynamicTransform: Optional[DynamicTransformTypeDef] = None + EvaluateDataQuality: Optional[EvaluateDataQualityTypeDef] = None + S3CatalogHudiSource: Optional[S3CatalogHudiSourceTypeDef] = None + CatalogHudiSource: Optional[CatalogHudiSourceTypeDef] = None + S3HudiSource: Optional[S3HudiSourceTypeDef] = None + S3HudiCatalogTarget: Optional[S3HudiCatalogTargetTypeDef] = None + S3HudiDirectTarget: Optional[S3HudiDirectTargetTypeDef] = None + DirectJDBCSource: Optional[DirectJDBCSourceTypeDef] = None + S3CatalogDeltaSource: Optional[S3CatalogDeltaSourceTypeDef] = None + CatalogDeltaSource: Optional[CatalogDeltaSourceTypeDef] = None + S3DeltaSource: Optional[S3DeltaSourceTypeDef] = None + S3DeltaCatalogTarget: Optional[S3DeltaCatalogTargetTypeDef] = None + S3DeltaDirectTarget: Optional[S3DeltaDirectTargetTypeDef] = None + AmazonRedshiftSource: Optional[AmazonRedshiftSourceTypeDef] = None + AmazonRedshiftTarget: Optional[AmazonRedshiftTargetTypeDef] = None + EvaluateDataQualityMultiFrame: Optional[EvaluateDataQualityMultiFrameTypeDef] = None + Recipe: Optional[RecipeTypeDef] = None + SnowflakeSource: Optional[SnowflakeSourceTypeDef] = None + SnowflakeTarget: Optional[SnowflakeTargetTypeDef] = None + ConnectorDataSource: Optional[ConnectorDataSourceTypeDef] = None + ConnectorDataTarget: Optional[ConnectorDataTargetTypeDef] = None + +class BatchTableOptimizerTypeDef(BaseModel): + catalogId: Optional[str] = None + databaseName: Optional[str] = None + tableName: Optional[str] = None + tableOptimizer: Optional[TableOptimizerTypeDef] = None + +class GetTableOptimizerResponseTypeDef(BaseModel): + CatalogId: str + DatabaseName: str + TableName: str + TableOptimizer: TableOptimizerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStatementResponseTypeDef(BaseModel): + Statement: StatementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStatementsResponseTypeDef(BaseModel): + Statements: List[StatementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ColumnStatisticsTypeDef(BaseModel): + ColumnName: str + ColumnType: str + AnalyzedTime: TimestampTypeDef + StatisticsData: ColumnStatisticsDataTypeDef + +class NodeTypeDef(BaseModel): + Type: Optional[NodeTypeType] = None + Name: Optional[str] = None + UniqueId: Optional[str] = None + TriggerDetails: Optional[TriggerNodeDetailsTypeDef] = None + JobDetails: Optional[JobNodeDetailsTypeDef] = None + CrawlerDetails: Optional[CrawlerNodeDetailsTypeDef] = None + +class GetMLTransformsResponseTypeDef(BaseModel): + Transforms: List[MLTransformTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGetDataQualityResultResponseTypeDef(BaseModel): + Results: List[DataQualityResultTypeDef] + ResultsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ColumnStatisticsErrorTypeDef(BaseModel): + ColumnStatistics: Optional[ColumnStatisticsOutputTypeDef] = None + Error: Optional[ErrorDetailTypeDef] = None + +class GetColumnStatisticsForPartitionResponseTypeDef(BaseModel): + ColumnStatisticsList: List[ColumnStatisticsOutputTypeDef] + Errors: List[ColumnErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetColumnStatisticsForTableResponseTypeDef(BaseModel): + ColumnStatisticsList: List[ColumnStatisticsOutputTypeDef] + Errors: List[ColumnErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetPartitionResponseTypeDef(BaseModel): + Partitions: List[PartitionTypeDef] + UnprocessedKeys: List[PartitionValueListOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPartitionResponseTypeDef(BaseModel): + Partition: PartitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPartitionsResponseTypeDef(BaseModel): + Partitions: List[PartitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetUnfilteredPartitionMetadataResponseTypeDef(BaseModel): + Partition: PartitionTypeDef + AuthorizedColumns: List[str] + IsRegisteredWithLakeFormation: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UnfilteredPartitionTypeDef(BaseModel): + Partition: Optional[PartitionTypeDef] = None + AuthorizedColumns: Optional[List[str]] = None + IsRegisteredWithLakeFormation: Optional[bool] = None + +class GetTableResponseTypeDef(BaseModel): + Table: TableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTablesResponseTypeDef(BaseModel): + TableList: List[TableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetUnfilteredTableMetadataResponseTypeDef(BaseModel): + Table: TableTypeDef + AuthorizedColumns: List[str] + IsRegisteredWithLakeFormation: bool + CellFilters: List[ColumnRowFilterTypeDef] + QueryAuthorizationId: str + IsMultiDialectView: bool + ResourceArn: str + IsProtected: bool + Permissions: List[PermissionType] + RowFilter: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchTablesResponseTypeDef(BaseModel): + TableList: List[TableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TableVersionTypeDef(BaseModel): + Table: Optional[TableTypeDef] = None + VersionId: Optional[str] = None + +class BatchCreatePartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionInputList: Sequence[PartitionInputTypeDef] + CatalogId: Optional[str] = None + +class BatchUpdatePartitionRequestEntryTypeDef(BaseModel): + PartitionValueList: Sequence[str] + PartitionInput: PartitionInputTypeDef + +class CreatePartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionInput: PartitionInputTypeDef + CatalogId: Optional[str] = None + +class UpdatePartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionValueList: Sequence[str] + PartitionInput: PartitionInputTypeDef + CatalogId: Optional[str] = None + +class CreateTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableInput: TableInputTypeDef + CatalogId: Optional[str] = None + PartitionIndexes: Optional[Sequence[PartitionIndexTypeDef]] = None + TransactionId: Optional[str] = None + OpenTableFormatInput: Optional[OpenTableFormatInputTypeDef] = None + +class UpdateTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableInput: TableInputTypeDef + CatalogId: Optional[str] = None + SkipArchive: Optional[bool] = None + TransactionId: Optional[str] = None + VersionId: Optional[str] = None + ViewUpdateAction: Optional[ViewUpdateActionType] = None + Force: Optional[bool] = None + +class CreateConnectionRequestRequestTypeDef(BaseModel): + ConnectionInput: ConnectionInputTypeDef + CatalogId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateConnectionRequestRequestTypeDef(BaseModel): + Name: str + ConnectionInput: ConnectionInputTypeDef + CatalogId: Optional[str] = None + +class GetConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectionsResponseTypeDef(BaseModel): + ConnectionList: List[ConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class JobTypeDef(BaseModel): + Name: Optional[str] = None + JobMode: Optional[JobModeType] = None + Description: Optional[str] = None + LogUri: Optional[str] = None + Role: Optional[str] = None + CreatedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + ExecutionProperty: Optional[ExecutionPropertyTypeDef] = None + Command: Optional[JobCommandTypeDef] = None + DefaultArguments: Optional[Dict[str, str]] = None + NonOverridableArguments: Optional[Dict[str, str]] = None + Connections: Optional[ConnectionsListOutputTypeDef] = None + MaxRetries: Optional[int] = None + AllocatedCapacity: Optional[int] = None + Timeout: Optional[int] = None + MaxCapacity: Optional[float] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + SecurityConfiguration: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + GlueVersion: Optional[str] = None + CodeGenConfigurationNodes: Optional[Dict[str, CodeGenConfigurationNodeOutputTypeDef]] = None + ExecutionClass: Optional[ExecutionClassType] = None + SourceControlDetails: Optional[SourceControlDetailsTypeDef] = None + MaintenanceWindow: Optional[str] = None + ProfileName: Optional[str] = None + +class JobUpdateTypeDef(BaseModel): + JobMode: Optional[JobModeType] = None + Description: Optional[str] = None + LogUri: Optional[str] = None + Role: Optional[str] = None + ExecutionProperty: Optional[ExecutionPropertyTypeDef] = None + Command: Optional[JobCommandTypeDef] = None + DefaultArguments: Optional[Mapping[str, str]] = None + NonOverridableArguments: Optional[Mapping[str, str]] = None + Connections: Optional[ConnectionsListTypeDef] = None + MaxRetries: Optional[int] = None + AllocatedCapacity: Optional[int] = None + Timeout: Optional[int] = None + MaxCapacity: Optional[float] = None + WorkerType: Optional[WorkerTypeType] = None + NumberOfWorkers: Optional[int] = None + SecurityConfiguration: Optional[str] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + GlueVersion: Optional[str] = None + CodeGenConfigurationNodes: Optional[Mapping[str, CodeGenConfigurationNodeTypeDef]] = None + ExecutionClass: Optional[ExecutionClassType] = None + SourceControlDetails: Optional[SourceControlDetailsTypeDef] = None + MaintenanceWindow: Optional[str] = None + +class BatchGetTableOptimizerResponseTypeDef(BaseModel): + TableOptimizers: List[BatchTableOptimizerTypeDef] + Failures: List[BatchGetTableOptimizerErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class WorkflowGraphTypeDef(BaseModel): + Nodes: Optional[List[NodeTypeDef]] = None + Edges: Optional[List[EdgeTypeDef]] = None + +class UpdateColumnStatisticsForPartitionResponseTypeDef(BaseModel): + Errors: List[ColumnStatisticsErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateColumnStatisticsForTableResponseTypeDef(BaseModel): + Errors: List[ColumnStatisticsErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetUnfilteredPartitionsMetadataResponseTypeDef(BaseModel): + UnfilteredPartitions: List[UnfilteredPartitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTableVersionResponseTypeDef(BaseModel): + TableVersion: TableVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTableVersionsResponseTypeDef(BaseModel): + TableVersions: List[TableVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchUpdatePartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + Entries: Sequence[BatchUpdatePartitionRequestEntryTypeDef] + CatalogId: Optional[str] = None + +class BatchGetJobsResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + JobsNotFound: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobResponseTypeDef(BaseModel): + Job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobsResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + Name: str + Role: str + Command: JobCommandTypeDef + JobMode: Optional[JobModeType] = None + Description: Optional[str] = None + LogUri: Optional[str] = None + ExecutionProperty: Optional[ExecutionPropertyTypeDef] = None + DefaultArguments: Optional[Mapping[str, str]] = None + NonOverridableArguments: Optional[Mapping[str, str]] = None + Connections: Optional[ConnectionsListTypeDef] = None + MaxRetries: Optional[int] = None + AllocatedCapacity: Optional[int] = None + Timeout: Optional[int] = None + MaxCapacity: Optional[float] = None + SecurityConfiguration: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + NotificationProperty: Optional[NotificationPropertyTypeDef] = None + GlueVersion: Optional[str] = None + NumberOfWorkers: Optional[int] = None + WorkerType: Optional[WorkerTypeType] = None + CodeGenConfigurationNodes: Optional[ Mapping[str, CodeGenConfigurationNodeUnionTypeDef] = None + ExecutionClass: Optional[ExecutionClassType] = None + SourceControlDetails: Optional[SourceControlDetailsTypeDef] = None + MaintenanceWindow: Optional[str] = None + +class UpdateJobRequestRequestTypeDef(BaseModel): + JobName: str + JobUpdate: JobUpdateTypeDef + +class UpdateColumnStatisticsForPartitionRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + PartitionValues: Sequence[str] + ColumnStatisticsList: Sequence[ColumnStatisticsUnionTypeDef] + CatalogId: Optional[str] = None + +class UpdateColumnStatisticsForTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + ColumnStatisticsList: Sequence[ColumnStatisticsUnionTypeDef] + CatalogId: Optional[str] = None + +class WorkflowRunTypeDef(BaseModel): + Name: Optional[str] = None + WorkflowRunId: Optional[str] = None + PreviousRunId: Optional[str] = None + WorkflowRunProperties: Optional[Dict[str, str]] = None + StartedOn: Optional[datetime] = None + CompletedOn: Optional[datetime] = None + Status: Optional[WorkflowRunStatusType] = None + ErrorMessage: Optional[str] = None + Statistics: Optional[WorkflowRunStatisticsTypeDef] = None + Graph: Optional[WorkflowGraphTypeDef] = None + StartingEventBatchCondition: Optional[StartingEventBatchConditionTypeDef] = None + +class GetWorkflowRunResponseTypeDef(BaseModel): + Run: WorkflowRunTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowRunsResponseTypeDef(BaseModel): + Runs: List[WorkflowRunTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class WorkflowTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + DefaultRunProperties: Optional[Dict[str, str]] = None + CreatedOn: Optional[datetime] = None + LastModifiedOn: Optional[datetime] = None + LastRun: Optional[WorkflowRunTypeDef] = None + Graph: Optional[WorkflowGraphTypeDef] = None + MaxConcurrentRuns: Optional[int] = None + BlueprintDetails: Optional[BlueprintDetailsTypeDef] = None + +class BatchGetWorkflowsResponseTypeDef(BaseModel): + Workflows: List[WorkflowTypeDef] + MissingWorkflows: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowResponseTypeDef(BaseModel): + Workflow: WorkflowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/glue_constants.py b/aws_resource_validator/pydantic_models/glue_constants.py new file mode 100644 index 00000000..3618d464 --- /dev/null +++ b/aws_resource_validator/pydantic_models/glue_constants.py @@ -0,0 +1,713 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdditionalOptionKeysType = Literal["observations.scope", "performanceTuning.caching"] +AggFunctionType = Literal["avg", + "count", + "countDistinct", + "first", + "kurtosis", + "last", + "max", + "min", + "skewness", + "stddev_pop", + "stddev_samp", + "sum", + "sumDistinct", + "var_pop", + "var_samp",] +AuthenticationTypeType = Literal["BASIC", "CUSTOM", "OAUTH2"] +BackfillErrorCodeType = Literal["ENCRYPTED_PARTITION_ERROR", + "INTERNAL_ERROR", + "INVALID_PARTITION_TYPE_DATA_ERROR", + "MISSING_PARTITION_VALUE_ERROR", + "UNSUPPORTED_PARTITION_CHARACTER_ERROR",] +BlueprintRunStateType = Literal["FAILED", "ROLLING_BACK", "RUNNING", "SUCCEEDED"] +BlueprintStatusType = Literal["ACTIVE", "CREATING", "FAILED", "UPDATING"] +CatalogEncryptionModeType = Literal["DISABLED", "SSE-KMS", "SSE-KMS-WITH-SERVICE-ROLE"] +CloudWatchEncryptionModeType = Literal["DISABLED", "SSE-KMS"] +ColumnStatisticsStateType = Literal["FAILED", "RUNNING", "STARTING", "STOPPED", "SUCCEEDED"] +ColumnStatisticsTypeType = Literal["BINARY", "BOOLEAN", "DATE", "DECIMAL", "DOUBLE", "LONG", "STRING"] +ComparatorType = Literal["EQUALS", "GREATER_THAN", "GREATER_THAN_EQUALS", "LESS_THAN", "LESS_THAN_EQUALS"] +CompatibilityType = Literal["BACKWARD", "BACKWARD_ALL", "DISABLED", "FORWARD", "FORWARD_ALL", "FULL", "FULL_ALL", "NONE"] +CompressionTypeType = Literal["bzip2", "gzip"] +ConnectionPropertyKeyType = Literal["CONFIG_FILES", + "CONNECTION_URL", + "CONNECTOR_CLASS_NAME", + "CONNECTOR_TYPE", + "CONNECTOR_URL", + "CUSTOM_JDBC_CERT", + "CUSTOM_JDBC_CERT_STRING", + "ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD", + "ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD", + "ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD", + "ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD", + "ENCRYPTED_PASSWORD", + "HOST", + "INSTANCE_ID", + "JDBC_CONNECTION_URL", + "JDBC_DRIVER_CLASS_NAME", + "JDBC_DRIVER_JAR_URI", + "JDBC_ENFORCE_SSL", + "JDBC_ENGINE", + "JDBC_ENGINE_VERSION", + "KAFKA_BOOTSTRAP_SERVERS", + "KAFKA_CLIENT_KEYSTORE", + "KAFKA_CLIENT_KEYSTORE_PASSWORD", + "KAFKA_CLIENT_KEY_PASSWORD", + "KAFKA_CUSTOM_CERT", + "KAFKA_SASL_GSSAPI_KEYTAB", + "KAFKA_SASL_GSSAPI_KRB5_CONF", + "KAFKA_SASL_GSSAPI_PRINCIPAL", + "KAFKA_SASL_GSSAPI_SERVICE", + "KAFKA_SASL_MECHANISM", + "KAFKA_SASL_PLAIN_PASSWORD", + "KAFKA_SASL_PLAIN_USERNAME", + "KAFKA_SASL_SCRAM_PASSWORD", + "KAFKA_SASL_SCRAM_SECRETS_ARN", + "KAFKA_SASL_SCRAM_USERNAME", + "KAFKA_SKIP_CUSTOM_CERT_VALIDATION", + "KAFKA_SSL_ENABLED", + "PASSWORD", + "PORT", + "ROLE_ARN", + "SECRET_ID", + "SKIP_CUSTOM_JDBC_CERT_VALIDATION", + "USERNAME",] +ConnectionStatusType = Literal["FAILED", "IN_PROGRESS", "READY"] +ConnectionTypeType = Literal["CUSTOM", "JDBC", "KAFKA", "MARKETPLACE", "MONGODB", "NETWORK", "SALESFORCE", "SFTP"] +CrawlStateType = Literal["CANCELLED", "CANCELLING", "ERROR", "FAILED", "RUNNING", "SUCCEEDED"] +CrawlerHistoryStateType = Literal["COMPLETED", "FAILED", "RUNNING", "STOPPED"] +CrawlerLineageSettingsType = Literal["DISABLE", "ENABLE"] +CrawlerStateType = Literal["READY", "RUNNING", "STOPPING"] +CsvHeaderOptionType = Literal["ABSENT", "PRESENT", "UNKNOWN"] +CsvSerdeOptionType = Literal["LazySimpleSerDe", "None", "OpenCSVSerDe"] +DQCompositeRuleEvaluationMethodType = Literal["COLUMN", "ROW"] +DQStopJobOnFailureTimingType = Literal["AfterDataLoad", "Immediate"] +DQTransformOutputType = Literal["EvaluationResults", "PrimaryInput"] +DataFormatType = Literal["AVRO", "JSON", "PROTOBUF"] +DataQualityRuleResultStatusType = Literal["ERROR", "FAIL", "PASS"] +DatabaseAttributesType = Literal["NAME"] +DeleteBehaviorType = Literal["DELETE_FROM_DATABASE", "DEPRECATE_IN_DATABASE", "LOG"] +DeltaTargetCompressionTypeType = Literal["snappy", "uncompressed"] +EnableHybridValuesType = Literal["FALSE", "TRUE"] +ExecutionClassType = Literal["FLEX", "STANDARD"] +ExistConditionType = Literal["MUST_EXIST", "NONE", "NOT_EXIST"] +FieldNameType = Literal["CRAWL_ID", "DPU_HOUR", "END_TIME", "START_TIME", "STATE"] +FilterLogicalOperatorType = Literal["AND", "OR"] +FilterOperationType = Literal["EQ", "GT", "GTE", "ISNULL", "LT", "LTE", "REGEX"] +FilterOperatorType = Literal["EQ", "GE", "GT", "LE", "LT", "NE"] +FilterValueTypeType = Literal["COLUMNEXTRACTED", "CONSTANT"] +GetClassifiersPaginatorName = Literal["get_classifiers"] +GetConnectionsPaginatorName = Literal["get_connections"] +GetCrawlerMetricsPaginatorName = Literal["get_crawler_metrics"] +GetCrawlersPaginatorName = Literal["get_crawlers"] +GetDatabasesPaginatorName = Literal["get_databases"] +GetDevEndpointsPaginatorName = Literal["get_dev_endpoints"] +GetJobRunsPaginatorName = Literal["get_job_runs"] +GetJobsPaginatorName = Literal["get_jobs"] +GetPartitionIndexesPaginatorName = Literal["get_partition_indexes"] +GetPartitionsPaginatorName = Literal["get_partitions"] +GetResourcePoliciesPaginatorName = Literal["get_resource_policies"] +GetSecurityConfigurationsPaginatorName = Literal["get_security_configurations"] +GetTableVersionsPaginatorName = Literal["get_table_versions"] +GetTablesPaginatorName = Literal["get_tables"] +GetTriggersPaginatorName = Literal["get_triggers"] +GetUserDefinedFunctionsPaginatorName = Literal["get_user_defined_functions"] +GetWorkflowRunsPaginatorName = Literal["get_workflow_runs"] +GlueRecordTypeType = Literal["BIGDECIMAL", "BYTE", "DATE", "DOUBLE", "FLOAT", "INT", "LONG", "SHORT", "STRING", "TIMESTAMP"] +HudiTargetCompressionTypeType = Literal["gzip", "lzo", "snappy", "uncompressed"] +JDBCConnectionTypeType = Literal["mysql", "oracle", "postgresql", "redshift", "sqlserver"] +JDBCDataTypeType = Literal["ARRAY", + "BIGINT", + "BINARY", + "BIT", + "BLOB", + "BOOLEAN", + "CHAR", + "CLOB", + "DATALINK", + "DATE", + "DECIMAL", + "DISTINCT", + "DOUBLE", + "FLOAT", + "INTEGER", + "JAVA_OBJECT", + "LONGNVARCHAR", + "LONGVARBINARY", + "LONGVARCHAR", + "NCHAR", + "NCLOB", + "NULL", + "NUMERIC", + "NVARCHAR", + "OTHER", + "REAL", + "REF", + "REF_CURSOR", + "ROWID", + "SMALLINT", + "SQLXML", + "STRUCT", + "TIME", + "TIMESTAMP", + "TIMESTAMP_WITH_TIMEZONE", + "TIME_WITH_TIMEZONE", + "TINYINT", + "VARBINARY", + "VARCHAR",] +JdbcMetadataEntryType = Literal["COMMENTS", "RAWTYPES"] +JobBookmarksEncryptionModeType = Literal["CSE-KMS", "DISABLED"] +JobModeType = Literal["NOTEBOOK", "SCRIPT", "VISUAL"] +JobRunStateType = Literal["ERROR", + "EXPIRED", + "FAILED", + "RUNNING", + "STARTING", + "STOPPED", + "STOPPING", + "SUCCEEDED", + "TIMEOUT", + "WAITING",] +JoinTypeType = Literal["equijoin", "left", "leftanti", "leftsemi", "outer", "right"] +LanguageType = Literal["PYTHON", "SCALA"] +LastCrawlStatusType = Literal["CANCELLED", "FAILED", "SUCCEEDED"] +ListBlueprintsPaginatorName = Literal["list_blueprints"] +ListJobsPaginatorName = Literal["list_jobs"] +ListRegistriesPaginatorName = Literal["list_registries"] +ListSchemaVersionsPaginatorName = Literal["list_schema_versions"] +ListSchemasPaginatorName = Literal["list_schemas"] +ListTriggersPaginatorName = Literal["list_triggers"] +ListUsageProfilesPaginatorName = Literal["list_usage_profiles"] +ListWorkflowsPaginatorName = Literal["list_workflows"] +LogicalOperatorType = Literal["EQUALS"] +LogicalType = Literal["AND", "ANY"] +MLUserDataEncryptionModeStringType = Literal["DISABLED", "SSE-KMS"] +MetadataOperationType = Literal["CREATE"] +NodeTypeType = Literal["CRAWLER", "JOB", "TRIGGER"] +OAuth2GrantTypeType = Literal["AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"] +ParamTypeType = Literal["bool", "complex", "float", "int", "list", "null", "str"] +ParquetCompressionTypeType = Literal["gzip", "lzo", "none", "snappy", "uncompressed"] +PartitionIndexStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +PermissionType = Literal["ALL", + "ALTER", + "CREATE_DATABASE", + "CREATE_TABLE", + "DATA_LOCATION_ACCESS", + "DELETE", + "DROP", + "INSERT", + "SELECT",] +PermissionTypeType = Literal["CELL_FILTER_PERMISSION", "COLUMN_PERMISSION", "NESTED_CELL_PERMISSION", "NESTED_PERMISSION"] +PiiTypeType = Literal["ColumnAudit", "ColumnMasking", "RowAudit", "RowMasking"] +PrincipalTypeType = Literal["GROUP", "ROLE", "USER"] +QuoteCharType = Literal["disabled", "quillemet", "quote", "single_quote"] +RecrawlBehaviorType = Literal["CRAWL_EVENT_MODE", "CRAWL_EVERYTHING", "CRAWL_NEW_FOLDERS_ONLY"] +RegistryStatusType = Literal["AVAILABLE", "DELETING"] +ResourceShareTypeType = Literal["ALL", "FEDERATED", "FOREIGN"] +ResourceTypeType = Literal["ARCHIVE", "FILE", "JAR"] +S3EncryptionModeType = Literal["DISABLED", "SSE-KMS", "SSE-S3"] +ScheduleStateType = Literal["NOT_SCHEDULED", "SCHEDULED", "TRANSITIONING"] +SchemaDiffTypeType = Literal["SYNTAX_DIFF"] +SchemaStatusType = Literal["AVAILABLE", "DELETING", "PENDING"] +SchemaVersionStatusType = Literal["AVAILABLE", "DELETING", "FAILURE", "PENDING"] +SeparatorType = Literal["comma", "ctrla", "pipe", "semicolon", "tab"] +SessionStatusType = Literal["FAILED", "PROVISIONING", "READY", "STOPPED", "STOPPING", "TIMEOUT"] +SortDirectionTypeType = Literal["ASCENDING", "DESCENDING"] +SortType = Literal["ASC", "DESC"] +SourceControlAuthStrategyType = Literal["AWS_SECRETS_MANAGER", "PERSONAL_ACCESS_TOKEN"] +SourceControlProviderType = Literal["AWS_CODE_COMMIT", "BITBUCKET", "GITHUB", "GITLAB"] +StartingPositionType = Literal["earliest", "latest", "timestamp", "trim_horizon"] +StatementStateType = Literal["AVAILABLE", "CANCELLED", "CANCELLING", "ERROR", "RUNNING", "WAITING"] +TableOptimizerEventTypeType = Literal["completed", "failed", "in_progress", "starting"] +TableOptimizerTypeType = Literal["compaction"] +TargetFormatType = Literal["avro", "csv", "delta", "hudi", "json", "orc", "parquet"] +TaskRunSortColumnTypeType = Literal["STARTED", "STATUS", "TASK_RUN_TYPE"] +TaskStatusTypeType = Literal["FAILED", "RUNNING", "STARTING", "STOPPED", "STOPPING", "SUCCEEDED", "TIMEOUT"] +TaskTypeType = Literal["EVALUATION", "EXPORT_LABELS", "FIND_MATCHES", "IMPORT_LABELS", "LABELING_SET_GENERATION"] +TransformSortColumnTypeType = Literal["CREATED", "LAST_MODIFIED", "NAME", "STATUS", "TRANSFORM_TYPE"] +TransformStatusTypeType = Literal["DELETING", "NOT_READY", "READY"] +TransformTypeType = Literal["FIND_MATCHES"] +TriggerStateType = Literal["ACTIVATED", + "ACTIVATING", + "CREATED", + "CREATING", + "DEACTIVATED", + "DEACTIVATING", + "DELETING", + "UPDATING",] +TriggerTypeType = Literal["CONDITIONAL", "EVENT", "ON_DEMAND", "SCHEDULED"] +UnionTypeType = Literal["ALL", "DISTINCT"] +UpdateBehaviorType = Literal["LOG", "UPDATE_IN_DATABASE"] +UpdateCatalogBehaviorType = Literal["LOG", "UPDATE_IN_DATABASE"] +ViewDialectType = Literal["ATHENA", "REDSHIFT", "SPARK"] +ViewUpdateActionType = Literal["ADD", "ADD_OR_REPLACE", "DROP", "REPLACE"] +WorkerTypeType = Literal["G.025X", "G.1X", "G.2X", "G.4X", "G.8X", "Standard", "Z.2X"] +WorkflowRunStatusType = Literal["COMPLETED", "ERROR", "RUNNING", "STOPPED", "STOPPING"] +GlueServiceName = Literal["glue"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_classifiers", + "get_connections", + "get_crawler_metrics", + "get_crawlers", + "get_databases", + "get_dev_endpoints", + "get_job_runs", + "get_jobs", + "get_partition_indexes", + "get_partitions", + "get_resource_policies", + "get_security_configurations", + "get_table_versions", + "get_tables", + "get_triggers", + "get_user_defined_functions", + "get_workflow_runs", + "list_blueprints", + "list_jobs", + "list_registries", + "list_schema_versions", + "list_schemas", + "list_triggers", + "list_usage_profiles", + "list_workflows",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +ConnectionsListUnionTypeDef = Union['ConnectionsListTypeDef', 'ConnectionsListExtraOutputTypeDef'] +GlueTableUnionTypeDef = Union['GlueTableTypeDef', 'GlueTableOutputTypeDef'] +PartitionValueListUnionTypeDef = Union[ 'PartitionValueListTypeDef', 'PartitionValueListExtraOutputTypeDef' ] +ActionUnionTypeDef = Union['ActionTypeDef', 'ActionExtraOutputTypeDef'] +CodeGenNodeUnionTypeDef = Union['CodeGenNodeTypeDef', 'CodeGenNodeOutputTypeDef'] +PredicateUnionTypeDef = Union['PredicateTypeDef', 'PredicateExtraOutputTypeDef'] +ProfileConfigurationUnionTypeDef = Union[ 'ProfileConfigurationTypeDef', 'ProfileConfigurationOutputTypeDef' ] +CrawlerTargetsUnionTypeDef = Union['CrawlerTargetsTypeDef', 'CrawlerTargetsExtraOutputTypeDef'] +DataSourceUnionTypeDef = Union['DataSourceTypeDef', 'DataSourceOutputTypeDef'] +EncryptionConfigurationUnionTypeDef = Union[ 'EncryptionConfigurationTypeDef', 'EncryptionConfigurationExtraOutputTypeDef' ] +CodeGenConfigurationNodeUnionTypeDef = Union[ 'CodeGenConfigurationNodeTypeDef', 'CodeGenConfigurationNodeExtraOutputTypeDef' ] +ColumnStatisticsUnionTypeDef = Union['ColumnStatisticsTypeDef', 'ColumnStatisticsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/grafana_classes.py b/aws_resource_validator/pydantic_models/grafana_classes.py new file mode 100644 index 00000000..f5e4d5c3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/grafana_classes.py @@ -0,0 +1,440 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.grafana_constants import * + +class AssertionAttributesTypeDef(BaseModel): + email: Optional[str] = None + groups: Optional[str] = None + login: Optional[str] = None + name: Optional[str] = None + org: Optional[str] = None + role: Optional[str] = None + +class AssociateLicenseRequestRequestTypeDef(BaseModel): + licenseType: LicenseTypeType + workspaceId: str + grafanaToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AwsSsoAuthenticationTypeDef(BaseModel): + ssoClientId: Optional[str] = None + +class AuthenticationSummaryTypeDef(BaseModel): + providers: List[AuthenticationProviderTypesType] + samlConfigurationStatus: Optional[SamlConfigurationStatusType] = None + +class CreateWorkspaceApiKeyRequestRequestTypeDef(BaseModel): + keyName: str + keyRole: str + secondsToLive: int + workspaceId: str + +class NetworkAccessConfigurationTypeDef(BaseModel): + prefixListIds: Sequence[str] + vpceIds: Sequence[str] + +class VpcConfigurationTypeDef(BaseModel): + securityGroupIds: Sequence[str] + subnetIds: Sequence[str] + +class CreateWorkspaceServiceAccountRequestRequestTypeDef(BaseModel): + grafanaRole: RoleType + name: str + workspaceId: str + +class CreateWorkspaceServiceAccountTokenRequestRequestTypeDef(BaseModel): + name: str + secondsToLive: int + serviceAccountId: str + workspaceId: str + +class ServiceAccountTokenSummaryWithKeyTypeDef(BaseModel): + id: str + key: str + name: str + +class DeleteWorkspaceApiKeyRequestRequestTypeDef(BaseModel): + keyName: str + workspaceId: str + +class DeleteWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + +class DeleteWorkspaceServiceAccountRequestRequestTypeDef(BaseModel): + serviceAccountId: str + workspaceId: str + +class DeleteWorkspaceServiceAccountTokenRequestRequestTypeDef(BaseModel): + serviceAccountId: str + tokenId: str + workspaceId: str + +class DescribeWorkspaceAuthenticationRequestRequestTypeDef(BaseModel): + workspaceId: str + +class DescribeWorkspaceConfigurationRequestRequestTypeDef(BaseModel): + workspaceId: str + +class DescribeWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + +class DisassociateLicenseRequestRequestTypeDef(BaseModel): + licenseType: LicenseTypeType + workspaceId: str + +class IdpMetadataTypeDef(BaseModel): + url: Optional[str] = None + xml: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListPermissionsRequestRequestTypeDef(BaseModel): + workspaceId: str + groupId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + userId: Optional[str] = None + userType: Optional[UserTypeType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListVersionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + workspaceId: Optional[str] = None + +class ListWorkspaceServiceAccountTokensRequestRequestTypeDef(BaseModel): + serviceAccountId: str + workspaceId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ServiceAccountTokenSummaryTypeDef(BaseModel): + createdAt: datetime + expiresAt: datetime + id: str + name: str + lastUsedAt: Optional[datetime] = None + +class ListWorkspaceServiceAccountsRequestRequestTypeDef(BaseModel): + workspaceId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ServiceAccountSummaryTypeDef(BaseModel): + grafanaRole: RoleType + id: str + isDisabled: str + name: str + +class ListWorkspacesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class NetworkAccessConfigurationOutputTypeDef(BaseModel): + prefixListIds: List[str] + vpceIds: List[str] + +class UserTypeDef(BaseModel): + id: str + type: UserTypeType + +class RoleValuesOutputTypeDef(BaseModel): + admin: Optional[List[str]] = None + editor: Optional[List[str]] = None + +class RoleValuesTypeDef(BaseModel): + admin: Optional[Sequence[str]] = None + editor: Optional[Sequence[str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateWorkspaceConfigurationRequestRequestTypeDef(BaseModel): + configuration: str + workspaceId: str + grafanaVersion: Optional[str] = None + +class VpcConfigurationOutputTypeDef(BaseModel): + securityGroupIds: List[str] + subnetIds: List[str] + +class CreateWorkspaceApiKeyResponseTypeDef(BaseModel): + key: str + keyName: str + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkspaceServiceAccountResponseTypeDef(BaseModel): + grafanaRole: RoleType + id: str + name: str + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkspaceApiKeyResponseTypeDef(BaseModel): + keyName: str + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkspaceServiceAccountResponseTypeDef(BaseModel): + serviceAccountId: str + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkspaceServiceAccountTokenResponseTypeDef(BaseModel): + serviceAccountId: str + tokenId: str + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspaceConfigurationResponseTypeDef(BaseModel): + configuration: str + grafanaVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVersionsResponseTypeDef(BaseModel): + grafanaVersions: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class WorkspaceSummaryTypeDef(BaseModel): + authentication: AuthenticationSummaryTypeDef + created: datetime + endpoint: str + grafanaVersion: str + id: str + modified: datetime + status: WorkspaceStatusType + description: Optional[str] = None + grafanaToken: Optional[str] = None + licenseType: Optional[LicenseTypeType] = None + name: Optional[str] = None + notificationDestinations: Optional[List[Literal["SNS"]]] = None + tags: Optional[Dict[str, str]] = None + +class CreateWorkspaceRequestRequestTypeDef(BaseModel): + accountAccessType: AccountAccessTypeType + authenticationProviders: Sequence[AuthenticationProviderTypesType] + permissionType: PermissionTypeType + clientToken: Optional[str] = None + configuration: Optional[str] = None + grafanaVersion: Optional[str] = None + networkAccessControl: Optional[NetworkAccessConfigurationTypeDef] = None + organizationRoleName: Optional[str] = None + stackSetName: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + vpcConfiguration: Optional[VpcConfigurationTypeDef] = None + workspaceDataSources: Optional[Sequence[DataSourceTypeType]] = None + workspaceDescription: Optional[str] = None + workspaceName: Optional[str] = None + workspaceNotificationDestinations: Optional[Sequence[Literal["SNS"]]] = None + workspaceOrganizationalUnits: Optional[Sequence[str]] = None + workspaceRoleArn: Optional[str] = None + +class UpdateWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + accountAccessType: Optional[AccountAccessTypeType] = None + networkAccessControl: Optional[NetworkAccessConfigurationTypeDef] = None + organizationRoleName: Optional[str] = None + permissionType: Optional[PermissionTypeType] = None + removeNetworkAccessConfiguration: Optional[bool] = None + removeVpcConfiguration: Optional[bool] = None + stackSetName: Optional[str] = None + vpcConfiguration: Optional[VpcConfigurationTypeDef] = None + workspaceDataSources: Optional[Sequence[DataSourceTypeType]] = None + workspaceDescription: Optional[str] = None + workspaceName: Optional[str] = None + workspaceNotificationDestinations: Optional[Sequence[Literal["SNS"]]] = None + workspaceOrganizationalUnits: Optional[Sequence[str]] = None + workspaceRoleArn: Optional[str] = None + +class CreateWorkspaceServiceAccountTokenResponseTypeDef(BaseModel): + serviceAccountId: str + serviceAccountToken: ServiceAccountTokenSummaryWithKeyTypeDef + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionsRequestListPermissionsPaginateTypeDef(BaseModel): + workspaceId: str + groupId: Optional[str] = None + userId: Optional[str] = None + userType: Optional[UserTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVersionsRequestListVersionsPaginateTypeDef(BaseModel): + workspaceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkspaceServiceAccountsRequestListWorkspaceServiceAccountsPaginateTypeDef(BaseModel): + workspaceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkspacesRequestListWorkspacesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkspaceServiceAccountTokensResponseTypeDef(BaseModel): + nextToken: str + serviceAccountId: str + serviceAccountTokens: List[ServiceAccountTokenSummaryTypeDef] + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkspaceServiceAccountsResponseTypeDef(BaseModel): + nextToken: str + serviceAccounts: List[ServiceAccountSummaryTypeDef] + workspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PermissionEntryTypeDef(BaseModel): + role: RoleType + user: UserTypeDef + +class UpdateInstructionOutputTypeDef(BaseModel): + action: UpdateActionType + role: RoleType + users: List[UserTypeDef] + +class UpdateInstructionTypeDef(BaseModel): + action: UpdateActionType + role: RoleType + users: Sequence[UserTypeDef] + +class SamlConfigurationOutputTypeDef(BaseModel): + idpMetadata: IdpMetadataTypeDef + allowedOrganizations: Optional[List[str]] = None + assertionAttributes: Optional[AssertionAttributesTypeDef] = None + loginValidityDuration: Optional[int] = None + roleValues: Optional[RoleValuesOutputTypeDef] = None + +class SamlConfigurationTypeDef(BaseModel): + idpMetadata: IdpMetadataTypeDef + allowedOrganizations: Optional[Sequence[str]] = None + assertionAttributes: Optional[AssertionAttributesTypeDef] = None + loginValidityDuration: Optional[int] = None + roleValues: Optional[RoleValuesTypeDef] = None + +class WorkspaceDescriptionTypeDef(BaseModel): + authentication: AuthenticationSummaryTypeDef + created: datetime + dataSources: List[DataSourceTypeType] + endpoint: str + grafanaVersion: str + id: str + modified: datetime + status: WorkspaceStatusType + accountAccessType: Optional[AccountAccessTypeType] = None + description: Optional[str] = None + freeTrialConsumed: Optional[bool] = None + freeTrialExpiration: Optional[datetime] = None + grafanaToken: Optional[str] = None + licenseExpiration: Optional[datetime] = None + licenseType: Optional[LicenseTypeType] = None + name: Optional[str] = None + networkAccessControl: Optional[NetworkAccessConfigurationOutputTypeDef] = None + notificationDestinations: Optional[List[Literal["SNS"]]] = None + organizationRoleName: Optional[str] = None + organizationalUnits: Optional[List[str]] = None + permissionType: Optional[PermissionTypeType] = None + stackSetName: Optional[str] = None + tags: Optional[Dict[str, str]] = None + vpcConfiguration: Optional[VpcConfigurationOutputTypeDef] = None + workspaceRoleArn: Optional[str] = None + +class ListWorkspacesResponseTypeDef(BaseModel): + nextToken: str + workspaces: List[WorkspaceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionsResponseTypeDef(BaseModel): + nextToken: str + permissions: List[PermissionEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateErrorTypeDef(BaseModel): + causedBy: UpdateInstructionOutputTypeDef + code: int + message: str + +class SamlAuthenticationTypeDef(BaseModel): + status: SamlConfigurationStatusType + configuration: Optional[SamlConfigurationOutputTypeDef] = None + +class UpdateWorkspaceAuthenticationRequestRequestTypeDef(BaseModel): + authenticationProviders: Sequence[AuthenticationProviderTypesType] + workspaceId: str + samlConfiguration: Optional[SamlConfigurationTypeDef] = None + +class AssociateLicenseResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkspaceResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkspaceResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspaceResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateLicenseResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkspaceResponseTypeDef(BaseModel): + workspace: WorkspaceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePermissionsResponseTypeDef(BaseModel): + errors: List[UpdateErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePermissionsRequestRequestTypeDef(BaseModel): + updateInstructionBatch: Sequence[UpdateInstructionUnionTypeDef] + workspaceId: str + +class AuthenticationDescriptionTypeDef(BaseModel): + providers: List[AuthenticationProviderTypesType] + awsSso: Optional[AwsSsoAuthenticationTypeDef] = None + saml: Optional[SamlAuthenticationTypeDef] = None + +class DescribeWorkspaceAuthenticationResponseTypeDef(BaseModel): + authentication: AuthenticationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkspaceAuthenticationResponseTypeDef(BaseModel): + authentication: AuthenticationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/grafana_constants.py b/aws_resource_validator/pydantic_models/grafana_constants.py new file mode 100644 index 00000000..60aa45b3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/grafana_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountAccessTypeType = Literal["CURRENT_ACCOUNT", "ORGANIZATION"] +AuthenticationProviderTypesType = Literal["AWS_SSO", "SAML"] +DataSourceTypeType = Literal["AMAZON_OPENSEARCH_SERVICE", + "ATHENA", + "CLOUDWATCH", + "PROMETHEUS", + "REDSHIFT", + "SITEWISE", + "TIMESTREAM", + "TWINMAKER", + "XRAY",] +LicenseTypeType = Literal["ENTERPRISE", "ENTERPRISE_FREE_TRIAL"] +ListPermissionsPaginatorName = Literal["list_permissions"] +ListVersionsPaginatorName = Literal["list_versions"] +ListWorkspaceServiceAccountTokensPaginatorName = Literal["list_workspace_service_account_tokens"] +ListWorkspaceServiceAccountsPaginatorName = Literal["list_workspace_service_accounts"] +ListWorkspacesPaginatorName = Literal["list_workspaces"] +NotificationDestinationTypeType = Literal["SNS"] +PermissionTypeType = Literal["CUSTOMER_MANAGED", "SERVICE_MANAGED"] +RoleType = Literal["ADMIN", "EDITOR", "VIEWER"] +SamlConfigurationStatusType = Literal["CONFIGURED", "NOT_CONFIGURED"] +UpdateActionType = Literal["ADD", "REVOKE"] +UserTypeType = Literal["SSO_GROUP", "SSO_USER"] +WorkspaceStatusType = Literal["ACTIVE", + "CREATING", + "CREATION_FAILED", + "DELETING", + "DELETION_FAILED", + "FAILED", + "LICENSE_REMOVAL_FAILED", + "UPDATE_FAILED", + "UPDATING", + "UPGRADE_FAILED", + "UPGRADING", + "VERSION_UPDATE_FAILED", + "VERSION_UPDATING",] +ManagedGrafanaServiceName = Literal["grafana"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_permissions", + "list_versions", + "list_workspace_service_account_tokens", + "list_workspace_service_accounts", + "list_workspaces",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +NetworkAccessConfigurationUnionTypeDef = Union[ 'NetworkAccessConfigurationTypeDef', 'NetworkAccessConfigurationOutputTypeDef' ] +VpcConfigurationUnionTypeDef = Union['VpcConfigurationTypeDef', 'VpcConfigurationOutputTypeDef'] +UpdateInstructionUnionTypeDef = Union['UpdateInstructionTypeDef', 'UpdateInstructionOutputTypeDef'] +SamlConfigurationUnionTypeDef = Union['SamlConfigurationTypeDef', 'SamlConfigurationOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/greengrass_classes.py b/aws_resource_validator/pydantic_models/greengrass_classes.py new file mode 100644 index 00000000..41402796 --- /dev/null +++ b/aws_resource_validator/pydantic_models/greengrass_classes.py @@ -0,0 +1,1198 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.greengrass_constants import * + +class AssociateRoleToGroupRequestRequestTypeDef(BaseModel): + GroupId: str + RoleArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociateServiceRoleToAccountRequestRequestTypeDef(BaseModel): + RoleArn: str + +class BulkDeploymentMetricsTypeDef(BaseModel): + InvalidInputRecords: Optional[int] = None + RecordsProcessed: Optional[int] = None + RetryAttempts: Optional[int] = None + +class ErrorDetailTypeDef(BaseModel): + DetailedErrorCode: Optional[str] = None + DetailedErrorMessage: Optional[str] = None + +class BulkDeploymentTypeDef(BaseModel): + BulkDeploymentArn: Optional[str] = None + BulkDeploymentId: Optional[str] = None + CreatedAt: Optional[str] = None + +class ConnectivityInfoTypeDef(BaseModel): + HostAddress: Optional[str] = None + Id: Optional[str] = None + Metadata: Optional[str] = None + PortNumber: Optional[int] = None + +class ConnectorTypeDef(BaseModel): + ConnectorArn: str + Id: str + Parameters: Optional[Mapping[str, str]] = None + +class CoreTypeDef(BaseModel): + CertificateArn: str + Id: str + ThingArn: str + SyncShadow: Optional[bool] = None + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + DeploymentType: DeploymentTypeType + GroupId: str + AmznClientToken: Optional[str] = None + DeploymentId: Optional[str] = None + GroupVersionId: Optional[str] = None + +class DeviceTypeDef(BaseModel): + CertificateArn: str + Id: str + ThingArn: str + SyncShadow: Optional[bool] = None + +class CreateGroupCertificateAuthorityRequestRequestTypeDef(BaseModel): + GroupId: str + AmznClientToken: Optional[str] = None + +class GroupVersionTypeDef(BaseModel): + ConnectorDefinitionVersionArn: Optional[str] = None + CoreDefinitionVersionArn: Optional[str] = None + DeviceDefinitionVersionArn: Optional[str] = None + FunctionDefinitionVersionArn: Optional[str] = None + LoggerDefinitionVersionArn: Optional[str] = None + ResourceDefinitionVersionArn: Optional[str] = None + SubscriptionDefinitionVersionArn: Optional[str] = None + +class CreateGroupVersionRequestRequestTypeDef(BaseModel): + GroupId: str + AmznClientToken: Optional[str] = None + ConnectorDefinitionVersionArn: Optional[str] = None + CoreDefinitionVersionArn: Optional[str] = None + DeviceDefinitionVersionArn: Optional[str] = None + FunctionDefinitionVersionArn: Optional[str] = None + LoggerDefinitionVersionArn: Optional[str] = None + ResourceDefinitionVersionArn: Optional[str] = None + SubscriptionDefinitionVersionArn: Optional[str] = None + +class LoggerTypeDef(BaseModel): + Component: LoggerComponentType + Id: str + Level: LoggerLevelType + Type: LoggerTypeType + Space: Optional[int] = None + +class CreateSoftwareUpdateJobRequestRequestTypeDef(BaseModel): + S3UrlSignerRole: str + SoftwareToUpdate: SoftwareToUpdateType + UpdateTargets: Sequence[str] + UpdateTargetsArchitecture: UpdateTargetsArchitectureType + UpdateTargetsOperatingSystem: UpdateTargetsOperatingSystemType + AmznClientToken: Optional[str] = None + UpdateAgentLogLevel: Optional[UpdateAgentLogLevelType] = None + +class SubscriptionTypeDef(BaseModel): + Id: str + Source: str + Subject: str + Target: str + +class DefinitionInformationTypeDef(BaseModel): + Arn: Optional[str] = None + CreationTimestamp: Optional[str] = None + Id: Optional[str] = None + LastUpdatedTimestamp: Optional[str] = None + LatestVersion: Optional[str] = None + LatestVersionArn: Optional[str] = None + Name: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class DeleteConnectorDefinitionRequestRequestTypeDef(BaseModel): + ConnectorDefinitionId: str + +class DeleteCoreDefinitionRequestRequestTypeDef(BaseModel): + CoreDefinitionId: str + +class DeleteDeviceDefinitionRequestRequestTypeDef(BaseModel): + DeviceDefinitionId: str + +class DeleteFunctionDefinitionRequestRequestTypeDef(BaseModel): + FunctionDefinitionId: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + GroupId: str + +class DeleteLoggerDefinitionRequestRequestTypeDef(BaseModel): + LoggerDefinitionId: str + +class DeleteResourceDefinitionRequestRequestTypeDef(BaseModel): + ResourceDefinitionId: str + +class DeleteSubscriptionDefinitionRequestRequestTypeDef(BaseModel): + SubscriptionDefinitionId: str + +class DeploymentTypeDef(BaseModel): + CreatedAt: Optional[str] = None + DeploymentArn: Optional[str] = None + DeploymentId: Optional[str] = None + DeploymentType: Optional[DeploymentTypeType] = None + GroupArn: Optional[str] = None + +class DisassociateRoleFromGroupRequestRequestTypeDef(BaseModel): + GroupId: str + +class ResourceAccessPolicyTypeDef(BaseModel): + ResourceId: str + Permission: Optional[PermissionType] = None + +class FunctionRunAsConfigTypeDef(BaseModel): + Gid: Optional[int] = None + Uid: Optional[int] = None + +class GetAssociatedRoleRequestRequestTypeDef(BaseModel): + GroupId: str + +class GetBulkDeploymentStatusRequestRequestTypeDef(BaseModel): + BulkDeploymentId: str + +class GetConnectivityInfoRequestRequestTypeDef(BaseModel): + ThingName: str + +class GetConnectorDefinitionRequestRequestTypeDef(BaseModel): + ConnectorDefinitionId: str + +class GetConnectorDefinitionVersionRequestRequestTypeDef(BaseModel): + ConnectorDefinitionId: str + ConnectorDefinitionVersionId: str + NextToken: Optional[str] = None + +class GetCoreDefinitionRequestRequestTypeDef(BaseModel): + CoreDefinitionId: str + +class GetCoreDefinitionVersionRequestRequestTypeDef(BaseModel): + CoreDefinitionId: str + CoreDefinitionVersionId: str + +class GetDeploymentStatusRequestRequestTypeDef(BaseModel): + DeploymentId: str + GroupId: str + +class GetDeviceDefinitionRequestRequestTypeDef(BaseModel): + DeviceDefinitionId: str + +class GetDeviceDefinitionVersionRequestRequestTypeDef(BaseModel): + DeviceDefinitionId: str + DeviceDefinitionVersionId: str + NextToken: Optional[str] = None + +class GetFunctionDefinitionRequestRequestTypeDef(BaseModel): + FunctionDefinitionId: str + +class GetFunctionDefinitionVersionRequestRequestTypeDef(BaseModel): + FunctionDefinitionId: str + FunctionDefinitionVersionId: str + NextToken: Optional[str] = None + +class GetGroupCertificateAuthorityRequestRequestTypeDef(BaseModel): + CertificateAuthorityId: str + GroupId: str + +class GetGroupCertificateConfigurationRequestRequestTypeDef(BaseModel): + GroupId: str + +class GetGroupRequestRequestTypeDef(BaseModel): + GroupId: str + +class GetGroupVersionRequestRequestTypeDef(BaseModel): + GroupId: str + GroupVersionId: str + +class GetLoggerDefinitionRequestRequestTypeDef(BaseModel): + LoggerDefinitionId: str + +class GetLoggerDefinitionVersionRequestRequestTypeDef(BaseModel): + LoggerDefinitionId: str + LoggerDefinitionVersionId: str + NextToken: Optional[str] = None + +class GetResourceDefinitionRequestRequestTypeDef(BaseModel): + ResourceDefinitionId: str + +class GetResourceDefinitionVersionRequestRequestTypeDef(BaseModel): + ResourceDefinitionId: str + ResourceDefinitionVersionId: str + +class GetSubscriptionDefinitionRequestRequestTypeDef(BaseModel): + SubscriptionDefinitionId: str + +class GetSubscriptionDefinitionVersionRequestRequestTypeDef(BaseModel): + SubscriptionDefinitionId: str + SubscriptionDefinitionVersionId: str + NextToken: Optional[str] = None + +class GetThingRuntimeConfigurationRequestRequestTypeDef(BaseModel): + ThingName: str + +class GroupCertificateAuthorityPropertiesTypeDef(BaseModel): + GroupCertificateAuthorityArn: Optional[str] = None + GroupCertificateAuthorityId: Optional[str] = None + +class GroupInformationTypeDef(BaseModel): + Arn: Optional[str] = None + CreationTimestamp: Optional[str] = None + Id: Optional[str] = None + LastUpdatedTimestamp: Optional[str] = None + LatestVersion: Optional[str] = None + LatestVersionArn: Optional[str] = None + Name: Optional[str] = None + +class GroupOwnerSettingTypeDef(BaseModel): + AutoAddGroupOwner: Optional[bool] = None + GroupOwner: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBulkDeploymentDetailedReportsRequestRequestTypeDef(BaseModel): + BulkDeploymentId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListBulkDeploymentsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListConnectorDefinitionVersionsRequestRequestTypeDef(BaseModel): + ConnectorDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class VersionInformationTypeDef(BaseModel): + Arn: Optional[str] = None + CreationTimestamp: Optional[str] = None + Id: Optional[str] = None + Version: Optional[str] = None + +class ListConnectorDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListCoreDefinitionVersionsRequestRequestTypeDef(BaseModel): + CoreDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListCoreDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListDeploymentsRequestRequestTypeDef(BaseModel): + GroupId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListDeviceDefinitionVersionsRequestRequestTypeDef(BaseModel): + DeviceDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListDeviceDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListFunctionDefinitionVersionsRequestRequestTypeDef(BaseModel): + FunctionDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListFunctionDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListGroupCertificateAuthoritiesRequestRequestTypeDef(BaseModel): + GroupId: str + +class ListGroupVersionsRequestRequestTypeDef(BaseModel): + GroupId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListLoggerDefinitionVersionsRequestRequestTypeDef(BaseModel): + LoggerDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListLoggerDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListResourceDefinitionVersionsRequestRequestTypeDef(BaseModel): + ResourceDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListResourceDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListSubscriptionDefinitionVersionsRequestRequestTypeDef(BaseModel): + SubscriptionDefinitionId: str + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListSubscriptionDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[str] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ResetDeploymentsRequestRequestTypeDef(BaseModel): + GroupId: str + AmznClientToken: Optional[str] = None + Force: Optional[bool] = None + +class SecretsManagerSecretResourceDataTypeDef(BaseModel): + ARN: Optional[str] = None + AdditionalStagingLabelsToDownload: Optional[Sequence[str]] = None + +class ResourceDownloadOwnerSettingTypeDef(BaseModel): + GroupOwner: str + GroupPermission: PermissionType + +class TelemetryConfigurationTypeDef(BaseModel): + Telemetry: TelemetryType + ConfigurationSyncStatus: Optional[ConfigurationSyncStatusType] = None + +class StartBulkDeploymentRequestRequestTypeDef(BaseModel): + ExecutionRoleArn: str + InputFileUri: str + AmznClientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class StopBulkDeploymentRequestRequestTypeDef(BaseModel): + BulkDeploymentId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + tags: Optional[Mapping[str, str]] = None + +class TelemetryConfigurationUpdateTypeDef(BaseModel): + Telemetry: TelemetryType + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateConnectorDefinitionRequestRequestTypeDef(BaseModel): + ConnectorDefinitionId: str + Name: Optional[str] = None + +class UpdateCoreDefinitionRequestRequestTypeDef(BaseModel): + CoreDefinitionId: str + Name: Optional[str] = None + +class UpdateDeviceDefinitionRequestRequestTypeDef(BaseModel): + DeviceDefinitionId: str + Name: Optional[str] = None + +class UpdateFunctionDefinitionRequestRequestTypeDef(BaseModel): + FunctionDefinitionId: str + Name: Optional[str] = None + +class UpdateGroupCertificateConfigurationRequestRequestTypeDef(BaseModel): + GroupId: str + CertificateExpiryInMilliseconds: Optional[str] = None + +class UpdateGroupRequestRequestTypeDef(BaseModel): + GroupId: str + Name: Optional[str] = None + +class UpdateLoggerDefinitionRequestRequestTypeDef(BaseModel): + LoggerDefinitionId: str + Name: Optional[str] = None + +class UpdateResourceDefinitionRequestRequestTypeDef(BaseModel): + ResourceDefinitionId: str + Name: Optional[str] = None + +class UpdateSubscriptionDefinitionRequestRequestTypeDef(BaseModel): + SubscriptionDefinitionId: str + Name: Optional[str] = None + +class AssociateRoleToGroupResponseTypeDef(BaseModel): + AssociatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateServiceRoleToAccountResponseTypeDef(BaseModel): + AssociatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCoreDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCoreDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentResponseTypeDef(BaseModel): + DeploymentArn: str + DeploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeviceDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeviceDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFunctionDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFunctionDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupCertificateAuthorityResponseTypeDef(BaseModel): + GroupCertificateAuthorityArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoggerDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoggerDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSoftwareUpdateJobResponseTypeDef(BaseModel): + IotJobArn: str + IotJobId: str + PlatformSoftwareVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriptionDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriptionDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateRoleFromGroupResponseTypeDef(BaseModel): + DisassociatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateServiceRoleFromAccountResponseTypeDef(BaseModel): + DisassociatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssociatedRoleResponseTypeDef(BaseModel): + AssociatedAt: str + RoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectorDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCoreDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeviceDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetFunctionDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupCertificateAuthorityResponseTypeDef(BaseModel): + GroupCertificateAuthorityArn: str + GroupCertificateAuthorityId: str + PemEncodedCertificate: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupCertificateConfigurationResponseTypeDef(BaseModel): + CertificateAuthorityExpiryInMilliseconds: str + CertificateExpiryInMilliseconds: str + GroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoggerDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceRoleForAccountResponseTypeDef(BaseModel): + AssociatedAt: str + RoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionDefinitionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Id: str + LastUpdatedTimestamp: str + LatestVersion: str + LatestVersionArn: str + Name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ResetDeploymentsResponseTypeDef(BaseModel): + DeploymentArn: str + DeploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartBulkDeploymentResponseTypeDef(BaseModel): + BulkDeploymentArn: str + BulkDeploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectivityInfoResponseTypeDef(BaseModel): + Message: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGroupCertificateConfigurationResponseTypeDef(BaseModel): + CertificateAuthorityExpiryInMilliseconds: str + CertificateExpiryInMilliseconds: str + GroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class BulkDeploymentResultTypeDef(BaseModel): + CreatedAt: Optional[str] = None + DeploymentArn: Optional[str] = None + DeploymentId: Optional[str] = None + DeploymentStatus: Optional[str] = None + DeploymentType: Optional[DeploymentTypeType] = None + ErrorDetails: Optional[List[ErrorDetailTypeDef]] = None + ErrorMessage: Optional[str] = None + GroupArn: Optional[str] = None + +class GetBulkDeploymentStatusResponseTypeDef(BaseModel): + BulkDeploymentMetrics: BulkDeploymentMetricsTypeDef + BulkDeploymentStatus: BulkDeploymentStatusType + CreatedAt: str + ErrorDetails: List[ErrorDetailTypeDef] + ErrorMessage: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentStatusResponseTypeDef(BaseModel): + DeploymentStatus: str + DeploymentType: DeploymentTypeType + ErrorDetails: List[ErrorDetailTypeDef] + ErrorMessage: str + UpdatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBulkDeploymentsResponseTypeDef(BaseModel): + BulkDeployments: List[BulkDeploymentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectivityInfoResponseTypeDef(BaseModel): + ConnectivityInfo: List[ConnectivityInfoTypeDef] + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectivityInfoRequestRequestTypeDef(BaseModel): + ThingName: str + ConnectivityInfo: Optional[Sequence[ConnectivityInfoTypeDef]] = None + +class ConnectorDefinitionVersionTypeDef(BaseModel): + Connectors: Optional[Sequence[ConnectorTypeDef]] = None + +class CreateConnectorDefinitionVersionRequestRequestTypeDef(BaseModel): + ConnectorDefinitionId: str + AmznClientToken: Optional[str] = None + Connectors: Optional[Sequence[ConnectorTypeDef]] = None + +class CoreDefinitionVersionTypeDef(BaseModel): + Cores: Optional[Sequence[CoreTypeDef]] = None + +class CreateCoreDefinitionVersionRequestRequestTypeDef(BaseModel): + CoreDefinitionId: str + AmznClientToken: Optional[str] = None + Cores: Optional[Sequence[CoreTypeDef]] = None + +class CreateDeviceDefinitionVersionRequestRequestTypeDef(BaseModel): + DeviceDefinitionId: str + AmznClientToken: Optional[str] = None + Devices: Optional[Sequence[DeviceTypeDef]] = None + +class DeviceDefinitionVersionTypeDef(BaseModel): + Devices: Optional[Sequence[DeviceTypeDef]] = None + +class CreateGroupRequestRequestTypeDef(BaseModel): + Name: str + AmznClientToken: Optional[str] = None + InitialVersion: Optional[GroupVersionTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class GetGroupVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: GroupVersionTypeDef + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoggerDefinitionVersionRequestRequestTypeDef(BaseModel): + LoggerDefinitionId: str + AmznClientToken: Optional[str] = None + Loggers: Optional[Sequence[LoggerTypeDef]] = None + +class LoggerDefinitionVersionTypeDef(BaseModel): + Loggers: Optional[Sequence[LoggerTypeDef]] = None + +class CreateSubscriptionDefinitionVersionRequestRequestTypeDef(BaseModel): + SubscriptionDefinitionId: str + AmznClientToken: Optional[str] = None + Subscriptions: Optional[Sequence[SubscriptionTypeDef]] = None + +class SubscriptionDefinitionVersionTypeDef(BaseModel): + Subscriptions: Optional[Sequence[SubscriptionTypeDef]] = None + +class ListConnectorDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCoreDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeviceDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoggerDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscriptionDefinitionsResponseTypeDef(BaseModel): + Definitions: List[DefinitionInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentsResponseTypeDef(BaseModel): + Deployments: List[DeploymentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionDefaultExecutionConfigTypeDef(BaseModel): + IsolationMode: Optional[FunctionIsolationModeType] = None + RunAs: Optional[FunctionRunAsConfigTypeDef] = None + +class FunctionExecutionConfigTypeDef(BaseModel): + IsolationMode: Optional[FunctionIsolationModeType] = None + RunAs: Optional[FunctionRunAsConfigTypeDef] = None + +class ListGroupCertificateAuthoritiesResponseTypeDef(BaseModel): + GroupCertificateAuthorities: List[GroupCertificateAuthorityPropertiesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsResponseTypeDef(BaseModel): + Groups: List[GroupInformationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LocalDeviceResourceDataTypeDef(BaseModel): + GroupOwnerSetting: Optional[GroupOwnerSettingTypeDef] = None + SourcePath: Optional[str] = None + +class LocalVolumeResourceDataTypeDef(BaseModel): + DestinationPath: Optional[str] = None + GroupOwnerSetting: Optional[GroupOwnerSettingTypeDef] = None + SourcePath: Optional[str] = None + +class ListBulkDeploymentsRequestListBulkDeploymentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectorDefinitionVersionsRequestListConnectorDefinitionVersionsPaginateTypeDef(BaseModel): + ConnectorDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectorDefinitionsRequestListConnectorDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoreDefinitionVersionsRequestListCoreDefinitionVersionsPaginateTypeDef(BaseModel): + CoreDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoreDefinitionsRequestListCoreDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsRequestListDeploymentsPaginateTypeDef(BaseModel): + GroupId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceDefinitionVersionsRequestListDeviceDefinitionVersionsPaginateTypeDef(BaseModel): + DeviceDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceDefinitionsRequestListDeviceDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionDefinitionVersionsRequestListFunctionDefinitionVersionsPaginateTypeDef(BaseModel): + FunctionDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionDefinitionsRequestListFunctionDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupVersionsRequestListGroupVersionsPaginateTypeDef(BaseModel): + GroupId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLoggerDefinitionVersionsRequestListLoggerDefinitionVersionsPaginateTypeDef(BaseModel): + LoggerDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLoggerDefinitionsRequestListLoggerDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceDefinitionVersionsRequestListResourceDefinitionVersionsPaginateTypeDef(BaseModel): + ResourceDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceDefinitionsRequestListResourceDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionDefinitionVersionsRequestListSubscriptionDefinitionVersionsPaginateTypeDef(BaseModel): + SubscriptionDefinitionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionDefinitionsRequestListSubscriptionDefinitionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectorDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCoreDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeviceDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoggerDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscriptionDefinitionVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class S3MachineLearningModelResourceDataTypeDef(BaseModel): + DestinationPath: Optional[str] = None + OwnerSetting: Optional[ResourceDownloadOwnerSettingTypeDef] = None + S3Uri: Optional[str] = None + +class SageMakerMachineLearningModelResourceDataTypeDef(BaseModel): + DestinationPath: Optional[str] = None + OwnerSetting: Optional[ResourceDownloadOwnerSettingTypeDef] = None + SageMakerJobArn: Optional[str] = None + +class RuntimeConfigurationTypeDef(BaseModel): + TelemetryConfiguration: Optional[TelemetryConfigurationTypeDef] = None + +class UpdateThingRuntimeConfigurationRequestRequestTypeDef(BaseModel): + ThingName: str + TelemetryConfiguration: Optional[TelemetryConfigurationUpdateTypeDef] = None + +class ListBulkDeploymentDetailedReportsResponseTypeDef(BaseModel): + Deployments: List[BulkDeploymentResultTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[ConnectorDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetConnectorDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: ConnectorDefinitionVersionTypeDef + Id: str + NextToken: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCoreDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[CoreDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetCoreDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: CoreDefinitionVersionTypeDef + Id: str + NextToken: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeviceDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[DeviceDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetDeviceDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: DeviceDefinitionVersionTypeDef + Id: str + NextToken: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoggerDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[LoggerDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetLoggerDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: LoggerDefinitionVersionTypeDef + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriptionDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[SubscriptionDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetSubscriptionDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: SubscriptionDefinitionVersionTypeDef + Id: str + NextToken: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionDefaultConfigTypeDef(BaseModel): + Execution: Optional[FunctionDefaultExecutionConfigTypeDef] = None + +class FunctionConfigurationEnvironmentTypeDef(BaseModel): + AccessSysfs: Optional[bool] = None + Execution: Optional[FunctionExecutionConfigTypeDef] = None + ResourceAccessPolicies: Optional[Sequence[ResourceAccessPolicyTypeDef]] = None + Variables: Optional[Mapping[str, str]] = None + +class ResourceDataContainerTypeDef(BaseModel): + LocalDeviceResourceData: Optional[LocalDeviceResourceDataTypeDef] = None + LocalVolumeResourceData: Optional[LocalVolumeResourceDataTypeDef] = None + S3MachineLearningModelResourceData: Optional[ S3MachineLearningModelResourceDataTypeDef ] = None + SageMakerMachineLearningModelResourceData: Optional[ SageMakerMachineLearningModelResourceDataTypeDef ] = None + SecretsManagerSecretResourceData: Optional[SecretsManagerSecretResourceDataTypeDef] = None + +class GetThingRuntimeConfigurationResponseTypeDef(BaseModel): + RuntimeConfiguration: RuntimeConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionConfigurationTypeDef(BaseModel): + EncodingType: Optional[EncodingTypeType] = None + Environment: Optional[FunctionConfigurationEnvironmentTypeDef] = None + ExecArgs: Optional[str] = None + Executable: Optional[str] = None + MemorySize: Optional[int] = None + Pinned: Optional[bool] = None + Timeout: Optional[int] = None + FunctionRuntimeOverride: Optional[str] = None + +class ResourceTypeDef(BaseModel): + Id: str + Name: str + ResourceDataContainer: ResourceDataContainerTypeDef + +class FunctionTypeDef(BaseModel): + Id: str + FunctionArn: Optional[str] = None + FunctionConfiguration: Optional[FunctionConfigurationTypeDef] = None + +class CreateResourceDefinitionVersionRequestRequestTypeDef(BaseModel): + ResourceDefinitionId: str + AmznClientToken: Optional[str] = None + Resources: Optional[Sequence[ResourceTypeDef]] = None + +class ResourceDefinitionVersionTypeDef(BaseModel): + Resources: Optional[Sequence[ResourceTypeDef]] = None + +class CreateFunctionDefinitionVersionRequestRequestTypeDef(BaseModel): + FunctionDefinitionId: str + AmznClientToken: Optional[str] = None + DefaultConfig: Optional[FunctionDefaultConfigTypeDef] = None + Functions: Optional[Sequence[FunctionTypeDef]] = None + +class FunctionDefinitionVersionTypeDef(BaseModel): + DefaultConfig: Optional[FunctionDefaultConfigTypeDef] = None + Functions: Optional[Sequence[FunctionTypeDef]] = None + +class CreateResourceDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[ResourceDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetResourceDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: ResourceDefinitionVersionTypeDef + Id: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFunctionDefinitionRequestRequestTypeDef(BaseModel): + AmznClientToken: Optional[str] = None + InitialVersion: Optional[FunctionDefinitionVersionTypeDef] = None + Name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetFunctionDefinitionVersionResponseTypeDef(BaseModel): + Arn: str + CreationTimestamp: str + Definition: FunctionDefinitionVersionTypeDef + Id: str + NextToken: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/greengrass_constants.py b/aws_resource_validator/pydantic_models/greengrass_constants.py new file mode 100644 index 00000000..a01e02d1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/greengrass_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BulkDeploymentStatusType = Literal["Completed", "Failed", "Initializing", "Running", "Stopped", "Stopping"] +ConfigurationSyncStatusType = Literal["InSync", "OutOfSync"] +DeploymentTypeType = Literal["ForceResetDeployment", "NewDeployment", "Redeployment", "ResetDeployment"] +EncodingTypeType = Literal["binary", "json"] +FunctionIsolationModeType = Literal["GreengrassContainer", "NoContainer"] +ListBulkDeploymentDetailedReportsPaginatorName = Literal["list_bulk_deployment_detailed_reports"] +ListBulkDeploymentsPaginatorName = Literal["list_bulk_deployments"] +ListConnectorDefinitionVersionsPaginatorName = Literal["list_connector_definition_versions"] +ListConnectorDefinitionsPaginatorName = Literal["list_connector_definitions"] +ListCoreDefinitionVersionsPaginatorName = Literal["list_core_definition_versions"] +ListCoreDefinitionsPaginatorName = Literal["list_core_definitions"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListDeviceDefinitionVersionsPaginatorName = Literal["list_device_definition_versions"] +ListDeviceDefinitionsPaginatorName = Literal["list_device_definitions"] +ListFunctionDefinitionVersionsPaginatorName = Literal["list_function_definition_versions"] +ListFunctionDefinitionsPaginatorName = Literal["list_function_definitions"] +ListGroupVersionsPaginatorName = Literal["list_group_versions"] +ListGroupsPaginatorName = Literal["list_groups"] +ListLoggerDefinitionVersionsPaginatorName = Literal["list_logger_definition_versions"] +ListLoggerDefinitionsPaginatorName = Literal["list_logger_definitions"] +ListResourceDefinitionVersionsPaginatorName = Literal["list_resource_definition_versions"] +ListResourceDefinitionsPaginatorName = Literal["list_resource_definitions"] +ListSubscriptionDefinitionVersionsPaginatorName = Literal["list_subscription_definition_versions"] +ListSubscriptionDefinitionsPaginatorName = Literal["list_subscription_definitions"] +LoggerComponentType = Literal["GreengrassSystem", "Lambda"] +LoggerLevelType = Literal["DEBUG", "ERROR", "FATAL", "INFO", "WARN"] +LoggerTypeType = Literal["AWSCloudWatch", "FileSystem"] +PermissionType = Literal["ro", "rw"] +SoftwareToUpdateType = Literal["core", "ota_agent"] +TelemetryType = Literal["Off", "On"] +UpdateAgentLogLevelType = Literal["DEBUG", "ERROR", "FATAL", "INFO", "NONE", "TRACE", "VERBOSE", "WARN"] +UpdateTargetsArchitectureType = Literal["aarch64", "armv6l", "armv7l", "x86_64"] +UpdateTargetsOperatingSystemType = Literal["amazon_linux", "openwrt", "raspbian", "ubuntu"] +GreengrassServiceName = Literal["greengrass"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_bulk_deployment_detailed_reports", + "list_bulk_deployments", + "list_connector_definition_versions", + "list_connector_definitions", + "list_core_definition_versions", + "list_core_definitions", + "list_deployments", + "list_device_definition_versions", + "list_device_definitions", + "list_function_definition_versions", + "list_function_definitions", + "list_group_versions", + "list_groups", + "list_logger_definition_versions", + "list_logger_definitions", + "list_resource_definition_versions", + "list_resource_definitions", + "list_subscription_definition_versions", + "list_subscription_definitions",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/greengrassv2_classes.py b/aws_resource_validator/pydantic_models/greengrassv2_classes.py new file mode 100644 index 00000000..0e92f511 --- /dev/null +++ b/aws_resource_validator/pydantic_models/greengrassv2_classes.py @@ -0,0 +1,566 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.greengrassv2_constants import * + +class AssociateClientDeviceWithCoreDeviceEntryTypeDef(BaseModel): + thingName: str + +class AssociateClientDeviceWithCoreDeviceErrorEntryTypeDef(BaseModel): + thingName: Optional[str] = None + code: Optional[str] = None + message: Optional[str] = None + +class AssociateServiceRoleToAccountRequestRequestTypeDef(BaseModel): + roleArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociatedClientDeviceTypeDef(BaseModel): + thingName: Optional[str] = None + associationTimestamp: Optional[datetime] = None + +class DisassociateClientDeviceFromCoreDeviceEntryTypeDef(BaseModel): + thingName: str + +class DisassociateClientDeviceFromCoreDeviceErrorEntryTypeDef(BaseModel): + thingName: Optional[str] = None + code: Optional[str] = None + message: Optional[str] = None + +class CancelDeploymentRequestRequestTypeDef(BaseModel): + deploymentId: str + +class CloudComponentStatusTypeDef(BaseModel): + componentState: Optional[CloudComponentStateType] = None + message: Optional[str] = None + errors: Optional[Dict[str, str]] = None + vendorGuidance: Optional[VendorGuidanceType] = None + vendorGuidanceMessage: Optional[str] = None + +class ComponentCandidateTypeDef(BaseModel): + componentName: Optional[str] = None + componentVersion: Optional[str] = None + versionRequirements: Optional[Mapping[str, str]] = None + +class ComponentConfigurationUpdateOutputTypeDef(BaseModel): + merge: Optional[str] = None + reset: Optional[List[str]] = None + +class ComponentConfigurationUpdateTypeDef(BaseModel): + merge: Optional[str] = None + reset: Optional[Sequence[str]] = None + +class ComponentDependencyRequirementTypeDef(BaseModel): + versionRequirement: Optional[str] = None + dependencyType: Optional[ComponentDependencyTypeType] = None + +class ComponentPlatformOutputTypeDef(BaseModel): + name: Optional[str] = None + attributes: Optional[Dict[str, str]] = None + +class ComponentPlatformExtraOutputTypeDef(BaseModel): + name: Optional[str] = None + attributes: Optional[Dict[str, str]] = None + +class ComponentPlatformTypeDef(BaseModel): + name: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + +class SystemResourceLimitsTypeDef(BaseModel): + memory: Optional[int] = None + cpus: Optional[float] = None + +class ComponentVersionListItemTypeDef(BaseModel): + componentName: Optional[str] = None + componentVersion: Optional[str] = None + arn: Optional[str] = None + +class ConnectivityInfoTypeDef(BaseModel): + id: Optional[str] = None + hostAddress: Optional[str] = None + portNumber: Optional[int] = None + metadata: Optional[str] = None + +class CoreDeviceTypeDef(BaseModel): + coreDeviceThingName: Optional[str] = None + status: Optional[CoreDeviceStatusType] = None + lastStatusUpdateTimestamp: Optional[datetime] = None + +class DeleteComponentRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteCoreDeviceRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + +class DeleteDeploymentRequestRequestTypeDef(BaseModel): + deploymentId: str + +class DeploymentComponentUpdatePolicyTypeDef(BaseModel): + timeoutInSeconds: Optional[int] = None + action: Optional[DeploymentComponentUpdatePolicyActionType] = None + +class DeploymentConfigurationValidationPolicyTypeDef(BaseModel): + timeoutInSeconds: Optional[int] = None + +class IoTJobTimeoutConfigTypeDef(BaseModel): + inProgressTimeoutInMinutes: Optional[int] = None + +class DeploymentTypeDef(BaseModel): + targetArn: Optional[str] = None + revisionId: Optional[str] = None + deploymentId: Optional[str] = None + deploymentName: Optional[str] = None + creationTimestamp: Optional[datetime] = None + deploymentStatus: Optional[DeploymentStatusType] = None + isLatestForTarget: Optional[bool] = None + parentTargetArn: Optional[str] = None + +class DescribeComponentRequestRequestTypeDef(BaseModel): + arn: str + +class EffectiveDeploymentStatusDetailsTypeDef(BaseModel): + errorStack: Optional[List[str]] = None + errorTypes: Optional[List[str]] = None + +class GetComponentRequestRequestTypeDef(BaseModel): + arn: str + recipeOutputFormat: Optional[RecipeOutputFormatType] = None + +class GetComponentVersionArtifactRequestRequestTypeDef(BaseModel): + arn: str + artifactName: str + s3EndpointType: Optional[S3EndpointTypeType] = None + iotEndpointType: Optional[IotEndpointTypeType] = None + +class GetConnectivityInfoRequestRequestTypeDef(BaseModel): + thingName: str + +class GetCoreDeviceRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + +class GetDeploymentRequestRequestTypeDef(BaseModel): + deploymentId: str + +class InstalledComponentTypeDef(BaseModel): + componentName: Optional[str] = None + componentVersion: Optional[str] = None + lifecycleState: Optional[InstalledComponentLifecycleStateType] = None + lifecycleStateDetails: Optional[str] = None + isRoot: Optional[bool] = None + lastStatusChangeTimestamp: Optional[datetime] = None + lastReportedTimestamp: Optional[datetime] = None + lastInstallationSource: Optional[str] = None + lifecycleStatusCodes: Optional[List[str]] = None + +class IoTJobAbortCriteriaTypeDef(BaseModel): + failureType: IoTJobExecutionFailureTypeType + action: Literal["CANCEL"] + thresholdPercentage: float + minNumberOfExecutedThings: int + +class IoTJobRateIncreaseCriteriaTypeDef(BaseModel): + numberOfNotifiedThings: Optional[int] = None + numberOfSucceededThings: Optional[int] = None + +class LambdaDeviceMountTypeDef(BaseModel): + path: str + permission: Optional[LambdaFilesystemPermissionType] = None + addGroupOwner: Optional[bool] = None + +class LambdaVolumeMountTypeDef(BaseModel): + sourcePath: str + destinationPath: str + permission: Optional[LambdaFilesystemPermissionType] = None + addGroupOwner: Optional[bool] = None + +class LambdaEventSourceTypeDef(BaseModel): + topic: str + type: LambdaEventSourceTypeType + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListClientDevicesAssociatedWithCoreDeviceRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListComponentVersionsRequestRequestTypeDef(BaseModel): + arn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListComponentsRequestRequestTypeDef(BaseModel): + scope: Optional[ComponentVisibilityScopeType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListCoreDevicesRequestRequestTypeDef(BaseModel): + thingGroupArn: Optional[str] = None + status: Optional[CoreDeviceStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDeploymentsRequestRequestTypeDef(BaseModel): + targetArn: Optional[str] = None + historyFilter: Optional[DeploymentHistoryFilterType] = None + parentTargetArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEffectiveDeploymentsRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListInstalledComponentsRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + topologyFilter: Optional[InstalledComponentTopologyFilterType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ResolvedComponentVersionTypeDef(BaseModel): + arn: Optional[str] = None + componentName: Optional[str] = None + componentVersion: Optional[str] = None + recipe: Optional[bytes] = None + vendorGuidance: Optional[VendorGuidanceType] = None + message: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class BatchAssociateClientDeviceWithCoreDeviceRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + entries: Optional[Sequence[AssociateClientDeviceWithCoreDeviceEntryTypeDef]] = None + +class AssociateServiceRoleToAccountResponseTypeDef(BaseModel): + associatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchAssociateClientDeviceWithCoreDeviceResponseTypeDef(BaseModel): + errorEntries: List[AssociateClientDeviceWithCoreDeviceErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CancelDeploymentResponseTypeDef(BaseModel): + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentResponseTypeDef(BaseModel): + deploymentId: str + iotJobId: str + iotJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateServiceRoleFromAccountResponseTypeDef(BaseModel): + disassociatedAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentResponseTypeDef(BaseModel): + recipeOutputFormat: RecipeOutputFormatType + recipe: bytes + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentVersionArtifactResponseTypeDef(BaseModel): + preSignedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCoreDeviceResponseTypeDef(BaseModel): + coreDeviceThingName: str + coreVersion: str + platform: str + architecture: str + status: CoreDeviceStatusType + lastStatusUpdateTimestamp: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceRoleForAccountResponseTypeDef(BaseModel): + associatedAt: str + roleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectivityInfoResponseTypeDef(BaseModel): + version: str + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListClientDevicesAssociatedWithCoreDeviceResponseTypeDef(BaseModel): + associatedClientDevices: List[AssociatedClientDeviceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateClientDeviceFromCoreDeviceRequestRequestTypeDef(BaseModel): + coreDeviceThingName: str + entries: Optional[Sequence[DisassociateClientDeviceFromCoreDeviceEntryTypeDef]] = None + +class BatchDisassociateClientDeviceFromCoreDeviceResponseTypeDef(BaseModel): + errorEntries: List[DisassociateClientDeviceFromCoreDeviceErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateComponentVersionResponseTypeDef(BaseModel): + arn: str + componentName: str + componentVersion: str + creationTimestamp: datetime + status: CloudComponentStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ComponentLatestVersionTypeDef(BaseModel): + arn: Optional[str] = None + componentVersion: Optional[str] = None + creationTimestamp: Optional[datetime] = None + description: Optional[str] = None + publisher: Optional[str] = None + platforms: Optional[List[ComponentPlatformOutputTypeDef]] = None + +class DescribeComponentResponseTypeDef(BaseModel): + arn: str + componentName: str + componentVersion: str + creationTimestamp: datetime + publisher: str + description: str + status: CloudComponentStatusTypeDef + platforms: List[ComponentPlatformOutputTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ResolveComponentCandidatesRequestRequestTypeDef(BaseModel): + platform: Optional[ComponentPlatformTypeDef] = None + componentCandidates: Optional[Sequence[ComponentCandidateTypeDef]] = None + +class ComponentRunWithTypeDef(BaseModel): + posixUser: Optional[str] = None + systemResourceLimits: Optional[SystemResourceLimitsTypeDef] = None + windowsUser: Optional[str] = None + +class ListComponentVersionsResponseTypeDef(BaseModel): + componentVersions: List[ComponentVersionListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectivityInfoResponseTypeDef(BaseModel): + connectivityInfo: List[ConnectivityInfoTypeDef] + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectivityInfoRequestRequestTypeDef(BaseModel): + thingName: str + connectivityInfo: Sequence[ConnectivityInfoTypeDef] + +class ListCoreDevicesResponseTypeDef(BaseModel): + coreDevices: List[CoreDeviceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentPoliciesTypeDef(BaseModel): + failureHandlingPolicy: Optional[DeploymentFailureHandlingPolicyType] = None + componentUpdatePolicy: Optional[DeploymentComponentUpdatePolicyTypeDef] = None + configurationValidationPolicy: Optional[ DeploymentConfigurationValidationPolicyTypeDef ] = None + +class ListDeploymentsResponseTypeDef(BaseModel): + deployments: List[DeploymentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EffectiveDeploymentTypeDef(BaseModel): + deploymentId: str + deploymentName: str + targetArn: str + coreDeviceExecutionStatus: EffectiveDeploymentExecutionStatusType + creationTimestamp: datetime + modifiedTimestamp: datetime + iotJobId: Optional[str] = None + iotJobArn: Optional[str] = None + description: Optional[str] = None + reason: Optional[str] = None + statusDetails: Optional[EffectiveDeploymentStatusDetailsTypeDef] = None + +class ListInstalledComponentsResponseTypeDef(BaseModel): + installedComponents: List[InstalledComponentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IoTJobAbortConfigOutputTypeDef(BaseModel): + criteriaList: List[IoTJobAbortCriteriaTypeDef] + +class IoTJobAbortConfigTypeDef(BaseModel): + criteriaList: Sequence[IoTJobAbortCriteriaTypeDef] + +class IoTJobExponentialRolloutRateTypeDef(BaseModel): + baseRatePerMinute: int + incrementFactor: float + rateIncreaseCriteria: IoTJobRateIncreaseCriteriaTypeDef + +class LambdaContainerParamsTypeDef(BaseModel): + memorySizeInKB: Optional[int] = None + mountROSysfs: Optional[bool] = None + volumes: Optional[Sequence[LambdaVolumeMountTypeDef]] = None + devices: Optional[Sequence[LambdaDeviceMountTypeDef]] = None + +class ListClientDevicesAssociatedWithCoreDeviceRequestListClientDevicesAssociatedWithCoreDevicePaginateTypeDef(BaseModel): + coreDeviceThingName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentVersionsRequestListComponentVersionsPaginateTypeDef(BaseModel): + arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentsRequestListComponentsPaginateTypeDef(BaseModel): + scope: Optional[ComponentVisibilityScopeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoreDevicesRequestListCoreDevicesPaginateTypeDef(BaseModel): + thingGroupArn: Optional[str] = None + status: Optional[CoreDeviceStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsRequestListDeploymentsPaginateTypeDef(BaseModel): + targetArn: Optional[str] = None + historyFilter: Optional[DeploymentHistoryFilterType] = None + parentTargetArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEffectiveDeploymentsRequestListEffectiveDeploymentsPaginateTypeDef(BaseModel): + coreDeviceThingName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstalledComponentsRequestListInstalledComponentsPaginateTypeDef(BaseModel): + coreDeviceThingName: str + topologyFilter: Optional[InstalledComponentTopologyFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ResolveComponentCandidatesResponseTypeDef(BaseModel): + resolvedComponentVersions: List[ResolvedComponentVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ComponentTypeDef(BaseModel): + arn: Optional[str] = None + componentName: Optional[str] = None + latestVersion: Optional[ComponentLatestVersionTypeDef] = None + +class ComponentDeploymentSpecificationOutputTypeDef(BaseModel): + componentVersion: str + configurationUpdate: Optional[ComponentConfigurationUpdateOutputTypeDef] = None + runWith: Optional[ComponentRunWithTypeDef] = None + +class ComponentDeploymentSpecificationTypeDef(BaseModel): + componentVersion: str + configurationUpdate: Optional[ComponentConfigurationUpdateTypeDef] = None + runWith: Optional[ComponentRunWithTypeDef] = None + +class ListEffectiveDeploymentsResponseTypeDef(BaseModel): + effectiveDeployments: List[EffectiveDeploymentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IoTJobExecutionsRolloutConfigTypeDef(BaseModel): + exponentialRate: Optional[IoTJobExponentialRolloutRateTypeDef] = None + maximumPerMinute: Optional[int] = None + +class LambdaLinuxProcessParamsTypeDef(BaseModel): + isolationMode: Optional[LambdaIsolationModeType] = None + containerParams: Optional[LambdaContainerParamsTypeDef] = None + +class ListComponentsResponseTypeDef(BaseModel): + components: List[ComponentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentIoTJobConfigurationOutputTypeDef(BaseModel): + jobExecutionsRolloutConfig: Optional[IoTJobExecutionsRolloutConfigTypeDef] = None + abortConfig: Optional[IoTJobAbortConfigOutputTypeDef] = None + timeoutConfig: Optional[IoTJobTimeoutConfigTypeDef] = None + +class DeploymentIoTJobConfigurationTypeDef(BaseModel): + jobExecutionsRolloutConfig: Optional[IoTJobExecutionsRolloutConfigTypeDef] = None + abortConfig: Optional[IoTJobAbortConfigTypeDef] = None + timeoutConfig: Optional[IoTJobTimeoutConfigTypeDef] = None + +class LambdaExecutionParametersTypeDef(BaseModel): + eventSources: Optional[Sequence[LambdaEventSourceTypeDef]] = None + maxQueueSize: Optional[int] = None + maxInstancesCount: Optional[int] = None + maxIdleTimeInSeconds: Optional[int] = None + timeoutInSeconds: Optional[int] = None + statusTimeoutInSeconds: Optional[int] = None + pinned: Optional[bool] = None + inputPayloadEncodingType: Optional[LambdaInputPayloadEncodingTypeType] = None + execArgs: Optional[Sequence[str]] = None + environmentVariables: Optional[Mapping[str, str]] = None + linuxProcessParams: Optional[LambdaLinuxProcessParamsTypeDef] = None + +class GetDeploymentResponseTypeDef(BaseModel): + targetArn: str + revisionId: str + deploymentId: str + deploymentName: str + deploymentStatus: DeploymentStatusType + iotJobId: str + iotJobArn: str + components: Dict[str, ComponentDeploymentSpecificationOutputTypeDef] + deploymentPolicies: DeploymentPoliciesTypeDef + iotJobConfiguration: DeploymentIoTJobConfigurationOutputTypeDef + creationTimestamp: datetime + isLatestForTarget: bool + parentTargetArn: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + targetArn: str + deploymentName: Optional[str] = None + components: Optional[Mapping[str, ComponentDeploymentSpecificationUnionTypeDef]] = None + iotJobConfiguration: Optional[DeploymentIoTJobConfigurationTypeDef] = None + deploymentPolicies: Optional[DeploymentPoliciesTypeDef] = None + parentTargetArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + +class LambdaFunctionRecipeSourceTypeDef(BaseModel): + lambdaArn: str + componentName: Optional[str] = None + componentVersion: Optional[str] = None + componentPlatforms: Optional[Sequence[ComponentPlatformTypeDef]] = None + componentDependencies: Optional[Mapping[str, ComponentDependencyRequirementTypeDef]] = None + componentLambdaParameters: Optional[LambdaExecutionParametersTypeDef] = None + +class CreateComponentVersionRequestRequestTypeDef(BaseModel): + inlineRecipe: Optional[BlobTypeDef] = None + lambdaFunction: Optional[LambdaFunctionRecipeSourceTypeDef] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/greengrassv2_constants.py b/aws_resource_validator/pydantic_models/greengrassv2_constants.py new file mode 100644 index 00000000..71a797d2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/greengrassv2_constants.py @@ -0,0 +1,448 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CloudComponentStateType = Literal["DEPLOYABLE", "DEPRECATED", "FAILED", "INITIATED", "REQUESTED"] +ComponentDependencyTypeType = Literal["HARD", "SOFT"] +ComponentVisibilityScopeType = Literal["PRIVATE", "PUBLIC"] +CoreDeviceStatusType = Literal["HEALTHY", "UNHEALTHY"] +DeploymentComponentUpdatePolicyActionType = Literal["NOTIFY_COMPONENTS", "SKIP_NOTIFY_COMPONENTS"] +DeploymentFailureHandlingPolicyType = Literal["DO_NOTHING", "ROLLBACK"] +DeploymentHistoryFilterType = Literal["ALL", "LATEST_ONLY"] +DeploymentStatusType = Literal["ACTIVE", "CANCELED", "COMPLETED", "FAILED", "INACTIVE"] +EffectiveDeploymentExecutionStatusType = Literal["CANCELED", "COMPLETED", "FAILED", "IN_PROGRESS", "QUEUED", "REJECTED", "SUCCEEDED", "TIMED_OUT"] +InstalledComponentLifecycleStateType = Literal["BROKEN", "ERRORED", "FINISHED", "INSTALLED", "NEW", "RUNNING", "STARTING", "STOPPING"] +InstalledComponentTopologyFilterType = Literal["ALL", "ROOT"] +IoTJobAbortActionType = Literal["CANCEL"] +IoTJobExecutionFailureTypeType = Literal["ALL", "FAILED", "REJECTED", "TIMED_OUT"] +IotEndpointTypeType = Literal["fips", "standard"] +LambdaEventSourceTypeType = Literal["IOT_CORE", "PUB_SUB"] +LambdaFilesystemPermissionType = Literal["ro", "rw"] +LambdaInputPayloadEncodingTypeType = Literal["binary", "json"] +LambdaIsolationModeType = Literal["GreengrassContainer", "NoContainer"] +ListClientDevicesAssociatedWithCoreDevicePaginatorName = Literal["list_client_devices_associated_with_core_device"] +ListComponentVersionsPaginatorName = Literal["list_component_versions"] +ListComponentsPaginatorName = Literal["list_components"] +ListCoreDevicesPaginatorName = Literal["list_core_devices"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListEffectiveDeploymentsPaginatorName = Literal["list_effective_deployments"] +ListInstalledComponentsPaginatorName = Literal["list_installed_components"] +RecipeOutputFormatType = Literal["JSON", "YAML"] +S3EndpointTypeType = Literal["GLOBAL", "REGIONAL"] +VendorGuidanceType = Literal["ACTIVE", "DELETED", "DISCONTINUED"] +GreengrassV2ServiceName = Literal["greengrassv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_client_devices_associated_with_core_device", + "list_component_versions", + "list_components", + "list_core_devices", + "list_deployments", + "list_effective_deployments", + "list_installed_components",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +ComponentPlatformUnionTypeDef = Union['ComponentPlatformTypeDef', 'ComponentPlatformExtraOutputTypeDef'] +ComponentDeploymentSpecificationUnionTypeDef = Union[ 'ComponentDeploymentSpecificationTypeDef', 'ComponentDeploymentSpecificationOutputTypeDef' ] +DeploymentIoTJobConfigurationUnionTypeDef = Union[ 'DeploymentIoTJobConfigurationTypeDef', 'DeploymentIoTJobConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/groundstation_classes.py b/aws_resource_validator/pydantic_models/groundstation_classes.py new file mode 100644 index 00000000..4b21e23a --- /dev/null +++ b/aws_resource_validator/pydantic_models/groundstation_classes.py @@ -0,0 +1,669 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.groundstation_constants import * + +class ComponentVersionTypeDef(BaseModel): + componentType: str + versions: Sequence[str] + +class AggregateStatusTypeDef(BaseModel): + status: AgentStatusType + signatureMap: Optional[Mapping[str, bool]] = None + +class AntennaDemodDecodeDetailsTypeDef(BaseModel): + outputNode: Optional[str] = None + +class DecodeConfigTypeDef(BaseModel): + unvalidatedJSON: str + +class DemodulationConfigTypeDef(BaseModel): + unvalidatedJSON: str + +class EirpTypeDef(BaseModel): + units: Literal["dBW"] + value: float + +class CancelContactRequestRequestTypeDef(BaseModel): + contactId: str + +class ComponentStatusDataTypeDef(BaseModel): + capabilityArn: str + componentType: str + dataflowId: str + status: AgentStatusType + bytesReceived: Optional[int] = None + bytesSent: Optional[int] = None + packetsDropped: Optional[int] = None + +class S3RecordingDetailsTypeDef(BaseModel): + bucketArn: Optional[str] = None + keyTemplate: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ConfigListItemTypeDef(BaseModel): + configArn: Optional[str] = None + configId: Optional[str] = None + configType: Optional[ConfigCapabilityTypeType] = None + name: Optional[str] = None + +class DataflowEndpointConfigTypeDef(BaseModel): + dataflowEndpointName: str + dataflowEndpointRegion: Optional[str] = None + +class S3RecordingConfigTypeDef(BaseModel): + bucketArn: str + roleArn: str + prefix: Optional[str] = None + +class TrackingConfigTypeDef(BaseModel): + autotrack: CriticalityType + +class UplinkEchoConfigTypeDef(BaseModel): + antennaUplinkConfigArn: str + enabled: bool + +class SocketAddressTypeDef(BaseModel): + name: str + port: int + +class ElevationTypeDef(BaseModel): + unit: AngleUnitsType + value: float + +class KmsKeyTypeDef(BaseModel): + kmsAliasArn: Optional[str] = None + kmsAliasName: Optional[str] = None + kmsKeyArn: Optional[str] = None + +class DataflowEndpointListItemTypeDef(BaseModel): + dataflowEndpointGroupArn: Optional[str] = None + dataflowEndpointGroupId: Optional[str] = None + +class DeleteConfigRequestRequestTypeDef(BaseModel): + configId: str + configType: ConfigCapabilityTypeType + +class DeleteDataflowEndpointGroupRequestRequestTypeDef(BaseModel): + dataflowEndpointGroupId: str + +class DeleteEphemerisRequestRequestTypeDef(BaseModel): + ephemerisId: str + +class DeleteMissionProfileRequestRequestTypeDef(BaseModel): + missionProfileId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeContactRequestRequestTypeDef(BaseModel): + contactId: str + +class DescribeEphemerisRequestRequestTypeDef(BaseModel): + ephemerisId: str + +class DiscoveryDataTypeDef(BaseModel): + capabilityArns: Sequence[str] + privateIpAddresses: Sequence[str] + publicIpAddresses: Sequence[str] + +class SecurityDetailsOutputTypeDef(BaseModel): + roleArn: str + securityGroupIds: List[str] + subnetIds: List[str] + +class SecurityDetailsTypeDef(BaseModel): + roleArn: str + securityGroupIds: Sequence[str] + subnetIds: Sequence[str] + +class S3ObjectTypeDef(BaseModel): + bucket: Optional[str] = None + key: Optional[str] = None + version: Optional[str] = None + +class EphemerisMetaDataTypeDef(BaseModel): + source: EphemerisSourceType + ephemerisId: Optional[str] = None + epoch: Optional[datetime] = None + name: Optional[str] = None + +class FrequencyBandwidthTypeDef(BaseModel): + units: BandwidthUnitsType + value: float + +class FrequencyTypeDef(BaseModel): + units: FrequencyUnitsType + value: float + +class GetAgentConfigurationRequestRequestTypeDef(BaseModel): + agentId: str + +class GetConfigRequestRequestTypeDef(BaseModel): + configId: str + configType: ConfigCapabilityTypeType + +class GetDataflowEndpointGroupRequestRequestTypeDef(BaseModel): + dataflowEndpointGroupId: str + +class GetMinuteUsageRequestRequestTypeDef(BaseModel): + month: int + year: int + +class GetMissionProfileRequestRequestTypeDef(BaseModel): + missionProfileId: str + +class GetSatelliteRequestRequestTypeDef(BaseModel): + satelliteId: str + +class GroundStationDataTypeDef(BaseModel): + groundStationId: Optional[str] = None + groundStationName: Optional[str] = None + region: Optional[str] = None + +class IntegerRangeTypeDef(BaseModel): + maximum: int + minimum: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListConfigsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDataflowEndpointGroupsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListGroundStationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + satelliteId: Optional[str] = None + +class ListMissionProfilesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MissionProfileListItemTypeDef(BaseModel): + missionProfileArn: Optional[str] = None + missionProfileId: Optional[str] = None + name: Optional[str] = None + region: Optional[str] = None + +class ListSatellitesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateEphemerisRequestRequestTypeDef(BaseModel): + enabled: bool + ephemerisId: str + name: Optional[str] = None + priority: Optional[int] = None + +class AgentDetailsTypeDef(BaseModel): + agentVersion: str + componentVersions: Sequence[ComponentVersionTypeDef] + instanceId: str + instanceType: str + agentCpuCores: Optional[Sequence[int]] = None + reservedCpuCores: Optional[Sequence[int]] = None + +class UpdateAgentStatusRequestRequestTypeDef(BaseModel): + agentId: str + aggregateStatus: AggregateStatusTypeDef + componentStatuses: Sequence[ComponentStatusDataTypeDef] + taskId: str + +class ConfigIdResponseTypeDef(BaseModel): + configArn: str + configId: str + configType: ConfigCapabilityTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ContactIdResponseTypeDef(BaseModel): + contactId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataflowEndpointGroupIdResponseTypeDef(BaseModel): + dataflowEndpointGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EphemerisIdResponseTypeDef(BaseModel): + ephemerisId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgentConfigurationResponseTypeDef(BaseModel): + agentId: str + taskingDocument: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMinuteUsageResponseTypeDef(BaseModel): + estimatedMinutesRemaining: int + isReservedMinutesCustomer: bool + totalReservedMinuteAllocation: int + totalScheduledMinutes: int + upcomingMinutesScheduled: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class MissionProfileIdResponseTypeDef(BaseModel): + missionProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterAgentResponseTypeDef(BaseModel): + agentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAgentStatusResponseTypeDef(BaseModel): + agentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigsResponseTypeDef(BaseModel): + configList: List[ConfigListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectionDetailsTypeDef(BaseModel): + socketAddress: SocketAddressTypeDef + mtu: Optional[int] = None + +class DataflowEndpointTypeDef(BaseModel): + address: Optional[SocketAddressTypeDef] = None + mtu: Optional[int] = None + name: Optional[str] = None + status: Optional[EndpointStatusType] = None + +class ContactDataTypeDef(BaseModel): + contactId: Optional[str] = None + contactStatus: Optional[ContactStatusType] = None + endTime: Optional[datetime] = None + errorMessage: Optional[str] = None + groundStation: Optional[str] = None + maximumElevation: Optional[ElevationTypeDef] = None + missionProfileArn: Optional[str] = None + postPassEndTime: Optional[datetime] = None + prePassStartTime: Optional[datetime] = None + region: Optional[str] = None + satelliteArn: Optional[str] = None + startTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + visibilityEndTime: Optional[datetime] = None + visibilityStartTime: Optional[datetime] = None + +class ListContactsRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + startTime: TimestampTypeDef + statusList: Sequence[ContactStatusType] + groundStation: Optional[str] = None + maxResults: Optional[int] = None + missionProfileArn: Optional[str] = None + nextToken: Optional[str] = None + satelliteArn: Optional[str] = None + +class ListEphemeridesRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + satelliteId: str + startTime: TimestampTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + statusList: Optional[Sequence[EphemerisStatusType]] = None + +class ReserveContactRequestRequestTypeDef(BaseModel): + endTime: TimestampTypeDef + groundStation: str + missionProfileArn: str + satelliteArn: str + startTime: TimestampTypeDef + tags: Optional[Mapping[str, str]] = None + +class TimeRangeTypeDef(BaseModel): + endTime: TimestampTypeDef + startTime: TimestampTypeDef + +class CreateMissionProfileRequestRequestTypeDef(BaseModel): + dataflowEdges: Sequence[Sequence[str]] + minimumViableContactDurationSeconds: int + name: str + trackingConfigArn: str + contactPostPassDurationSeconds: Optional[int] = None + contactPrePassDurationSeconds: Optional[int] = None + streamsKmsKey: Optional[KmsKeyTypeDef] = None + streamsKmsRole: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetMissionProfileResponseTypeDef(BaseModel): + contactPostPassDurationSeconds: int + contactPrePassDurationSeconds: int + dataflowEdges: List[List[str]] + minimumViableContactDurationSeconds: int + missionProfileArn: str + missionProfileId: str + name: str + region: str + streamsKmsKey: KmsKeyTypeDef + streamsKmsRole: str + tags: Dict[str, str] + trackingConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMissionProfileRequestRequestTypeDef(BaseModel): + missionProfileId: str + contactPostPassDurationSeconds: Optional[int] = None + contactPrePassDurationSeconds: Optional[int] = None + dataflowEdges: Optional[Sequence[Sequence[str]]] = None + minimumViableContactDurationSeconds: Optional[int] = None + name: Optional[str] = None + streamsKmsKey: Optional[KmsKeyTypeDef] = None + streamsKmsRole: Optional[str] = None + trackingConfigArn: Optional[str] = None + +class ListDataflowEndpointGroupsResponseTypeDef(BaseModel): + dataflowEndpointGroupList: List[DataflowEndpointListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContactRequestContactScheduledWaitTypeDef(BaseModel): + contactId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class EphemerisDescriptionTypeDef(BaseModel): + ephemerisData: Optional[str] = None + sourceS3Object: Optional[S3ObjectTypeDef] = None + +class EphemerisItemTypeDef(BaseModel): + creationTime: Optional[datetime] = None + enabled: Optional[bool] = None + ephemerisId: Optional[str] = None + name: Optional[str] = None + priority: Optional[int] = None + sourceS3Object: Optional[S3ObjectTypeDef] = None + status: Optional[EphemerisStatusType] = None + +class OEMEphemerisTypeDef(BaseModel): + oemData: Optional[str] = None + s3Object: Optional[S3ObjectTypeDef] = None + +class GetSatelliteResponseTypeDef(BaseModel): + currentEphemeris: EphemerisMetaDataTypeDef + groundStations: List[str] + noradSatelliteID: int + satelliteArn: str + satelliteId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SatelliteListItemTypeDef(BaseModel): + currentEphemeris: Optional[EphemerisMetaDataTypeDef] = None + groundStations: Optional[List[str]] = None + noradSatelliteID: Optional[int] = None + satelliteArn: Optional[str] = None + satelliteId: Optional[str] = None + +class SpectrumConfigTypeDef(BaseModel): + bandwidth: FrequencyBandwidthTypeDef + centerFrequency: FrequencyTypeDef + polarization: Optional[PolarizationType] = None + +class UplinkSpectrumConfigTypeDef(BaseModel): + centerFrequency: FrequencyTypeDef + polarization: Optional[PolarizationType] = None + +class ListGroundStationsResponseTypeDef(BaseModel): + groundStationList: List[GroundStationDataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RangedSocketAddressTypeDef(BaseModel): + name: str + portRange: IntegerRangeTypeDef + +class ListConfigsRequestListConfigsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContactsRequestListContactsPaginateTypeDef(BaseModel): + endTime: TimestampTypeDef + startTime: TimestampTypeDef + statusList: Sequence[ContactStatusType] + groundStation: Optional[str] = None + missionProfileArn: Optional[str] = None + satelliteArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataflowEndpointGroupsRequestListDataflowEndpointGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEphemeridesRequestListEphemeridesPaginateTypeDef(BaseModel): + endTime: TimestampTypeDef + satelliteId: str + startTime: TimestampTypeDef + statusList: Optional[Sequence[EphemerisStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroundStationsRequestListGroundStationsPaginateTypeDef(BaseModel): + satelliteId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMissionProfilesRequestListMissionProfilesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSatellitesRequestListSatellitesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMissionProfilesResponseTypeDef(BaseModel): + missionProfileList: List[MissionProfileListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterAgentRequestRequestTypeDef(BaseModel): + agentDetails: AgentDetailsTypeDef + discoveryData: DiscoveryDataTypeDef + +class ListContactsResponseTypeDef(BaseModel): + contactList: List[ContactDataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TLEDataTypeDef(BaseModel): + tleLine1: str + tleLine2: str + validTimeRange: TimeRangeTypeDef + +class EphemerisTypeDescriptionTypeDef(BaseModel): + oem: Optional[EphemerisDescriptionTypeDef] = None + tle: Optional[EphemerisDescriptionTypeDef] = None + +class ListEphemeridesResponseTypeDef(BaseModel): + ephemerides: List[EphemerisItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSatellitesResponseTypeDef(BaseModel): + nextToken: str + satellites: List[SatelliteListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AntennaDownlinkConfigTypeDef(BaseModel): + spectrumConfig: SpectrumConfigTypeDef + +class AntennaDownlinkDemodDecodeConfigTypeDef(BaseModel): + decodeConfig: DecodeConfigTypeDef + demodulationConfig: DemodulationConfigTypeDef + spectrumConfig: SpectrumConfigTypeDef + +class AntennaUplinkConfigTypeDef(BaseModel): + spectrumConfig: UplinkSpectrumConfigTypeDef + targetEirp: EirpTypeDef + transmitDisabled: Optional[bool] = None + +class RangedConnectionDetailsTypeDef(BaseModel): + socketAddress: RangedSocketAddressTypeDef + mtu: Optional[int] = None + +class TLEEphemerisTypeDef(BaseModel): + s3Object: Optional[S3ObjectTypeDef] = None + tleData: Optional[Sequence[TLEDataTypeDef]] = None + +class DescribeEphemerisResponseTypeDef(BaseModel): + creationTime: datetime + enabled: bool + ephemerisId: str + invalidReason: EphemerisInvalidReasonType + name: str + priority: int + satelliteId: str + status: EphemerisStatusType + suppliedData: EphemerisTypeDescriptionTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigTypeDataTypeDef(BaseModel): + antennaDownlinkConfig: Optional[AntennaDownlinkConfigTypeDef] = None + antennaDownlinkDemodDecodeConfig: Optional[AntennaDownlinkDemodDecodeConfigTypeDef] = None + antennaUplinkConfig: Optional[AntennaUplinkConfigTypeDef] = None + dataflowEndpointConfig: Optional[DataflowEndpointConfigTypeDef] = None + s3RecordingConfig: Optional[S3RecordingConfigTypeDef] = None + trackingConfig: Optional[TrackingConfigTypeDef] = None + uplinkEchoConfig: Optional[UplinkEchoConfigTypeDef] = None + +class AwsGroundStationAgentEndpointTypeDef(BaseModel): + egressAddress: ConnectionDetailsTypeDef + ingressAddress: RangedConnectionDetailsTypeDef + name: str + agentStatus: Optional[AgentStatusType] = None + auditResults: Optional[AuditResultsType] = None + +class EphemerisDataTypeDef(BaseModel): + oem: Optional[OEMEphemerisTypeDef] = None + tle: Optional[TLEEphemerisTypeDef] = None + +class CreateConfigRequestRequestTypeDef(BaseModel): + configData: ConfigTypeDataTypeDef + name: str + tags: Optional[Mapping[str, str]] = None + +class GetConfigResponseTypeDef(BaseModel): + configArn: str + configData: ConfigTypeDataTypeDef + configId: str + configType: ConfigCapabilityTypeType + name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfigRequestRequestTypeDef(BaseModel): + configData: ConfigTypeDataTypeDef + configId: str + configType: ConfigCapabilityTypeType + name: str + +class EndpointDetailsOutputTypeDef(BaseModel): + awsGroundStationAgentEndpoint: Optional[AwsGroundStationAgentEndpointTypeDef] = None + endpoint: Optional[DataflowEndpointTypeDef] = None + healthReasons: Optional[List[CapabilityHealthReasonType]] = None + healthStatus: Optional[CapabilityHealthType] = None + securityDetails: Optional[SecurityDetailsOutputTypeDef] = None + +class EndpointDetailsTypeDef(BaseModel): + awsGroundStationAgentEndpoint: Optional[AwsGroundStationAgentEndpointTypeDef] = None + endpoint: Optional[DataflowEndpointTypeDef] = None + healthReasons: Optional[Sequence[CapabilityHealthReasonType]] = None + healthStatus: Optional[CapabilityHealthType] = None + securityDetails: Optional[SecurityDetailsTypeDef] = None + +class CreateEphemerisRequestRequestTypeDef(BaseModel): + name: str + satelliteId: str + enabled: Optional[bool] = None + ephemeris: Optional[EphemerisDataTypeDef] = None + expirationTime: Optional[TimestampTypeDef] = None + kmsKeyArn: Optional[str] = None + priority: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class ConfigDetailsTypeDef(BaseModel): + antennaDemodDecodeDetails: Optional[AntennaDemodDecodeDetailsTypeDef] = None + endpointDetails: Optional[EndpointDetailsOutputTypeDef] = None + s3RecordingDetails: Optional[S3RecordingDetailsTypeDef] = None + +class GetDataflowEndpointGroupResponseTypeDef(BaseModel): + contactPostPassDurationSeconds: int + contactPrePassDurationSeconds: int + dataflowEndpointGroupArn: str + dataflowEndpointGroupId: str + endpointsDetails: List[EndpointDetailsOutputTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationTypeDef(BaseModel): + configDetails: Optional[ConfigDetailsTypeDef] = None + configId: Optional[str] = None + configType: Optional[ConfigCapabilityTypeType] = None + dataflowDestinationRegion: Optional[str] = None + +class SourceTypeDef(BaseModel): + configDetails: Optional[ConfigDetailsTypeDef] = None + configId: Optional[str] = None + configType: Optional[ConfigCapabilityTypeType] = None + dataflowSourceRegion: Optional[str] = None + +class CreateDataflowEndpointGroupRequestRequestTypeDef(BaseModel): + endpointDetails: Sequence[EndpointDetailsUnionTypeDef] + contactPostPassDurationSeconds: Optional[int] = None + contactPrePassDurationSeconds: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class DataflowDetailTypeDef(BaseModel): + destination: Optional[DestinationTypeDef] = None + errorMessage: Optional[str] = None + source: Optional[SourceTypeDef] = None + +class DescribeContactResponseTypeDef(BaseModel): + contactId: str + contactStatus: ContactStatusType + dataflowList: List[DataflowDetailTypeDef] + endTime: datetime + errorMessage: str + groundStation: str + maximumElevation: ElevationTypeDef + missionProfileArn: str + postPassEndTime: datetime + prePassStartTime: datetime + region: str + satelliteArn: str + startTime: datetime + tags: Dict[str, str] + visibilityEndTime: datetime + visibilityStartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/groundstation_constants.py b/aws_resource_validator/pydantic_models/groundstation_constants.py new file mode 100644 index 00000000..cfa3c6ef --- /dev/null +++ b/aws_resource_validator/pydantic_models/groundstation_constants.py @@ -0,0 +1,474 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgentStatusType = Literal["ACTIVE", "FAILED", "INACTIVE", "SUCCESS"] +AngleUnitsType = Literal["DEGREE_ANGLE", "RADIAN"] +AuditResultsType = Literal["HEALTHY", "UNHEALTHY"] +BandwidthUnitsType = Literal["GHz", "MHz", "kHz"] +CapabilityHealthReasonType = Literal["DATAPLANE_FAILURE", + "HEALTHY", + "INITIALIZING_DATAPLANE", + "INVALID_IP_OWNERSHIP", + "NOT_AUTHORIZED_TO_CREATE_SLR", + "NO_REGISTERED_AGENT", + "UNVERIFIED_IP_OWNERSHIP",] +CapabilityHealthType = Literal["HEALTHY", "UNHEALTHY"] +ConfigCapabilityTypeType = Literal["antenna-downlink", + "antenna-downlink-demod-decode", + "antenna-uplink", + "dataflow-endpoint", + "s3-recording", + "tracking", + "uplink-echo",] +ContactScheduledWaiterName = Literal["contact_scheduled"] +ContactStatusType = Literal["AVAILABLE", + "AWS_CANCELLED", + "AWS_FAILED", + "CANCELLED", + "CANCELLING", + "COMPLETED", + "FAILED", + "FAILED_TO_SCHEDULE", + "PASS", + "POSTPASS", + "PREPASS", + "SCHEDULED", + "SCHEDULING",] +CriticalityType = Literal["PREFERRED", "REMOVED", "REQUIRED"] +EirpUnitsType = Literal["dBW"] +EndpointStatusType = Literal["created", "creating", "deleted", "deleting", "failed"] +EphemerisInvalidReasonType = Literal["KMS_KEY_INVALID", + "METADATA_INVALID", + "TIME_RANGE_INVALID", + "TRAJECTORY_INVALID", + "VALIDATION_ERROR",] +EphemerisSourceType = Literal["CUSTOMER_PROVIDED", "SPACE_TRACK"] +EphemerisStatusType = Literal["DISABLED", "ENABLED", "ERROR", "EXPIRED", "INVALID", "VALIDATING"] +FrequencyUnitsType = Literal["GHz", "MHz", "kHz"] +ListConfigsPaginatorName = Literal["list_configs"] +ListContactsPaginatorName = Literal["list_contacts"] +ListDataflowEndpointGroupsPaginatorName = Literal["list_dataflow_endpoint_groups"] +ListEphemeridesPaginatorName = Literal["list_ephemerides"] +ListGroundStationsPaginatorName = Literal["list_ground_stations"] +ListMissionProfilesPaginatorName = Literal["list_mission_profiles"] +ListSatellitesPaginatorName = Literal["list_satellites"] +PolarizationType = Literal["LEFT_HAND", "NONE", "RIGHT_HAND"] +GroundStationServiceName = Literal["groundstation"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_configs", + "list_contacts", + "list_dataflow_endpoint_groups", + "list_ephemerides", + "list_ground_stations", + "list_mission_profiles", + "list_satellites",] +WaiterName = Literal["contact_scheduled"] +RegionName = Literal["af-south-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +EndpointDetailsUnionTypeDef = Union['EndpointDetailsTypeDef', 'EndpointDetailsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/guardduty_classes.py b/aws_resource_validator/pydantic_models/guardduty_classes.py new file mode 100644 index 00000000..613c81e2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/guardduty_classes.py @@ -0,0 +1,1734 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.guardduty_constants import * + +class AcceptAdministratorInvitationRequestRequestTypeDef(BaseModel): + DetectorId: str + AdministratorId: str + InvitationId: str + +class AcceptInvitationRequestRequestTypeDef(BaseModel): + DetectorId: str + MasterId: str + InvitationId: str + +class AccessControlListTypeDef(BaseModel): + AllowsPublicReadAccess: Optional[bool] = None + AllowsPublicWriteAccess: Optional[bool] = None + +class AccessKeyDetailsTypeDef(BaseModel): + AccessKeyId: Optional[str] = None + PrincipalId: Optional[str] = None + UserName: Optional[str] = None + UserType: Optional[str] = None + +class AccountDetailTypeDef(BaseModel): + AccountId: str + Email: str + +class FreeTrialFeatureConfigurationResultTypeDef(BaseModel): + Name: Optional[FreeTrialFeatureResultType] = None + FreeTrialDaysRemaining: Optional[int] = None + +class BlockPublicAccessTypeDef(BaseModel): + IgnorePublicAcls: Optional[bool] = None + RestrictPublicBuckets: Optional[bool] = None + BlockPublicAcls: Optional[bool] = None + BlockPublicPolicy: Optional[bool] = None + +class DnsRequestActionTypeDef(BaseModel): + Domain: Optional[str] = None + Protocol: Optional[str] = None + Blocked: Optional[bool] = None + DomainWithSuffix: Optional[str] = None + +class KubernetesPermissionCheckedDetailsTypeDef(BaseModel): + Verb: Optional[str] = None + Resource: Optional[str] = None + Namespace: Optional[str] = None + Allowed: Optional[bool] = None + +class KubernetesRoleBindingDetailsTypeDef(BaseModel): + Kind: Optional[str] = None + Name: Optional[str] = None + Uid: Optional[str] = None + RoleRefName: Optional[str] = None + RoleRefKind: Optional[str] = None + +class KubernetesRoleDetailsTypeDef(BaseModel): + Kind: Optional[str] = None + Name: Optional[str] = None + Uid: Optional[str] = None + +class AddonDetailsTypeDef(BaseModel): + AddonVersion: Optional[str] = None + AddonStatus: Optional[str] = None + +class AdminAccountTypeDef(BaseModel): + AdminAccountId: Optional[str] = None + AdminStatus: Optional[AdminStatusType] = None + +class AdministratorTypeDef(BaseModel): + AccountId: Optional[str] = None + InvitationId: Optional[str] = None + RelationshipStatus: Optional[str] = None + InvitedAt: Optional[str] = None + +class AgentDetailsTypeDef(BaseModel): + Version: Optional[str] = None + +class ObservationsTypeDef(BaseModel): + Text: Optional[List[str]] = None + +class ArchiveFindingsRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingIds: Sequence[str] + +class DomainDetailsTypeDef(BaseModel): + Domain: Optional[str] = None + +class RemoteAccountDetailsTypeDef(BaseModel): + AccountId: Optional[str] = None + Affiliated: Optional[bool] = None + +class BucketPolicyTypeDef(BaseModel): + AllowsPublicReadAccess: Optional[bool] = None + AllowsPublicWriteAccess: Optional[bool] = None + +class CityTypeDef(BaseModel): + CityName: Optional[str] = None + +class CloudTrailConfigurationResultTypeDef(BaseModel): + Status: DataSourceStatusType + +class ConditionOutputTypeDef(BaseModel): + Eq: Optional[List[str]] = None + Neq: Optional[List[str]] = None + Gt: Optional[int] = None + Gte: Optional[int] = None + Lt: Optional[int] = None + Lte: Optional[int] = None + Equals: Optional[List[str]] = None + NotEquals: Optional[List[str]] = None + GreaterThan: Optional[int] = None + GreaterThanOrEqual: Optional[int] = None + LessThan: Optional[int] = None + LessThanOrEqual: Optional[int] = None + +class ConditionTypeDef(BaseModel): + Eq: Optional[Sequence[str]] = None + Neq: Optional[Sequence[str]] = None + Gt: Optional[int] = None + Gte: Optional[int] = None + Lt: Optional[int] = None + Lte: Optional[int] = None + Equals: Optional[Sequence[str]] = None + NotEquals: Optional[Sequence[str]] = None + GreaterThan: Optional[int] = None + GreaterThanOrEqual: Optional[int] = None + LessThan: Optional[int] = None + LessThanOrEqual: Optional[int] = None + +class ContainerInstanceDetailsTypeDef(BaseModel): + CoveredContainerInstances: Optional[int] = None + CompatibleContainerInstances: Optional[int] = None + +class SecurityContextTypeDef(BaseModel): + Privileged: Optional[bool] = None + AllowPrivilegeEscalation: Optional[bool] = None + +class VolumeMountTypeDef(BaseModel): + Name: Optional[str] = None + MountPath: Optional[str] = None + +class CountryTypeDef(BaseModel): + CountryCode: Optional[str] = None + CountryName: Optional[str] = None + +class FargateDetailsTypeDef(BaseModel): + Issues: Optional[List[str]] = None + ManagementType: Optional[ManagementTypeType] = None + +class CoverageFilterConditionTypeDef(BaseModel): + Equals: Optional[Sequence[str]] = None + NotEquals: Optional[Sequence[str]] = None + +class CoverageSortCriteriaTypeDef(BaseModel): + AttributeName: Optional[CoverageSortKeyType] = None + OrderBy: Optional[OrderByType] = None + +class CoverageStatisticsTypeDef(BaseModel): + CountByResourceType: Optional[Dict[ResourceTypeType, int]] = None + CountByCoverageStatus: Optional[Dict[CoverageStatusType, int]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateIPSetRequestRequestTypeDef(BaseModel): + DetectorId: str + Name: str + Format: IpSetFormatType + Location: str + Activate: bool + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UnprocessedAccountTypeDef(BaseModel): + AccountId: str + Result: str + +class CreateS3BucketResourceOutputTypeDef(BaseModel): + BucketName: Optional[str] = None + ObjectPrefixes: Optional[List[str]] = None + +class CreateS3BucketResourceTypeDef(BaseModel): + BucketName: Optional[str] = None + ObjectPrefixes: Optional[Sequence[str]] = None + +class DestinationPropertiesTypeDef(BaseModel): + DestinationArn: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class CreateSampleFindingsRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingTypes: Optional[Sequence[str]] = None + +class CreateThreatIntelSetRequestRequestTypeDef(BaseModel): + DetectorId: str + Name: str + Format: ThreatIntelSetFormatType + Location: str + Activate: bool + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class DNSLogsConfigurationResultTypeDef(BaseModel): + Status: DataSourceStatusType + +class FlowLogsConfigurationResultTypeDef(BaseModel): + Status: DataSourceStatusType + +class S3LogsConfigurationResultTypeDef(BaseModel): + Status: DataSourceStatusType + +class S3LogsConfigurationTypeDef(BaseModel): + Enable: bool + +class DataSourceFreeTrialTypeDef(BaseModel): + FreeTrialDaysRemaining: Optional[int] = None + +class DeclineInvitationsRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class DefaultServerSideEncryptionTypeDef(BaseModel): + EncryptionType: Optional[str] = None + KmsMasterKeyArn: Optional[str] = None + +class DeleteDetectorRequestRequestTypeDef(BaseModel): + DetectorId: str + +class DeleteFilterRequestRequestTypeDef(BaseModel): + DetectorId: str + FilterName: str + +class DeleteIPSetRequestRequestTypeDef(BaseModel): + DetectorId: str + IpSetId: str + +class DeleteInvitationsRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class DeleteMalwareProtectionPlanRequestRequestTypeDef(BaseModel): + MalwareProtectionPlanId: str + +class DeleteMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + +class DeletePublishingDestinationRequestRequestTypeDef(BaseModel): + DetectorId: str + DestinationId: str + +class DeleteThreatIntelSetRequestRequestTypeDef(BaseModel): + DetectorId: str + ThreatIntelSetId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class SortCriteriaTypeDef(BaseModel): + AttributeName: Optional[str] = None + OrderBy: Optional[OrderByType] = None + +class DescribeOrganizationConfigurationRequestRequestTypeDef(BaseModel): + DetectorId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribePublishingDestinationRequestRequestTypeDef(BaseModel): + DetectorId: str + DestinationId: str + +class DestinationTypeDef(BaseModel): + DestinationId: str + DestinationType: Literal["S3"] + Status: PublishingStatusType + +class DetectorAdditionalConfigurationResultTypeDef(BaseModel): + Name: Optional[FeatureAdditionalConfigurationType] = None + Status: Optional[FeatureStatusType] = None + UpdatedAt: Optional[datetime] = None + +class DetectorAdditionalConfigurationTypeDef(BaseModel): + Name: Optional[FeatureAdditionalConfigurationType] = None + Status: Optional[FeatureStatusType] = None + +class DisableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + AdminAccountId: str + +class DisassociateFromAdministratorAccountRequestRequestTypeDef(BaseModel): + DetectorId: str + +class DisassociateFromMasterAccountRequestRequestTypeDef(BaseModel): + DetectorId: str + +class DisassociateMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + +class VolumeDetailTypeDef(BaseModel): + VolumeArn: Optional[str] = None + VolumeType: Optional[str] = None + DeviceName: Optional[str] = None + VolumeSizeInGB: Optional[int] = None + EncryptionType: Optional[str] = None + SnapshotArn: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class EbsVolumesResultTypeDef(BaseModel): + Status: Optional[DataSourceStatusType] = None + Reason: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class EnableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + AdminAccountId: str + +class ThreatIntelligenceDetailTypeDef(BaseModel): + ThreatListName: Optional[str] = None + ThreatNames: Optional[List[str]] = None + ThreatFileSha256: Optional[str] = None + +class FilterConditionTypeDef(BaseModel): + EqualsValue: Optional[str] = None + GreaterThan: Optional[int] = None + LessThan: Optional[int] = None + +class FindingStatisticsTypeDef(BaseModel): + CountBySeverity: Optional[Dict[str, int]] = None + +class GeoLocationTypeDef(BaseModel): + Lat: Optional[float] = None + Lon: Optional[float] = None + +class GetAdministratorAccountRequestRequestTypeDef(BaseModel): + DetectorId: str + +class GetDetectorRequestRequestTypeDef(BaseModel): + DetectorId: str + +class GetFilterRequestRequestTypeDef(BaseModel): + DetectorId: str + FilterName: str + +class GetIPSetRequestRequestTypeDef(BaseModel): + DetectorId: str + IpSetId: str + +class GetMalwareProtectionPlanRequestRequestTypeDef(BaseModel): + MalwareProtectionPlanId: str + +class MalwareProtectionPlanStatusReasonTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class GetMalwareScanSettingsRequestRequestTypeDef(BaseModel): + DetectorId: str + +class GetMasterAccountRequestRequestTypeDef(BaseModel): + DetectorId: str + +class MasterTypeDef(BaseModel): + AccountId: Optional[str] = None + InvitationId: Optional[str] = None + RelationshipStatus: Optional[str] = None + InvitedAt: Optional[str] = None + +class GetMemberDetectorsRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + +class GetMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + +class MemberTypeDef(BaseModel): + AccountId: str + MasterId: str + Email: str + RelationshipStatus: str + UpdatedAt: str + DetectorId: Optional[str] = None + InvitedAt: Optional[str] = None + AdministratorId: Optional[str] = None + +class GetRemainingFreeTrialDaysRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Optional[Sequence[str]] = None + +class GetThreatIntelSetRequestRequestTypeDef(BaseModel): + DetectorId: str + ThreatIntelSetId: str + +class UsageCriteriaTypeDef(BaseModel): + AccountIds: Optional[Sequence[str]] = None + DataSources: Optional[Sequence[DataSourceType]] = None + Resources: Optional[Sequence[str]] = None + Features: Optional[Sequence[UsageFeatureType]] = None + +class HighestSeverityThreatDetailsTypeDef(BaseModel): + Severity: Optional[str] = None + ThreatName: Optional[str] = None + Count: Optional[int] = None + +class HostPathTypeDef(BaseModel): + Path: Optional[str] = None + +class IamInstanceProfileTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + +class ImpersonatedUserTypeDef(BaseModel): + Username: Optional[str] = None + Groups: Optional[List[str]] = None + +class ProductCodeTypeDef(BaseModel): + Code: Optional[str] = None + ProductType: Optional[str] = None + +class InvitationTypeDef(BaseModel): + AccountId: Optional[str] = None + InvitationId: Optional[str] = None + RelationshipStatus: Optional[str] = None + InvitedAt: Optional[str] = None + +class InviteMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + DisableEmailNotification: Optional[bool] = None + Message: Optional[str] = None + +class ItemPathTypeDef(BaseModel): + NestedItemPath: Optional[str] = None + Hash: Optional[str] = None + +class KubernetesAuditLogsConfigurationResultTypeDef(BaseModel): + Status: DataSourceStatusType + +class KubernetesAuditLogsConfigurationTypeDef(BaseModel): + Enable: bool + +class LineageObjectTypeDef(BaseModel): + StartTime: Optional[datetime] = None + NamespacePid: Optional[int] = None + UserId: Optional[int] = None + Name: Optional[str] = None + Pid: Optional[int] = None + Uuid: Optional[str] = None + ExecutablePath: Optional[str] = None + Euid: Optional[int] = None + ParentUuid: Optional[str] = None + +class ListDetectorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFiltersRequestRequestTypeDef(BaseModel): + DetectorId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListIPSetsRequestRequestTypeDef(BaseModel): + DetectorId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInvitationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMalwareProtectionPlansRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class MalwareProtectionPlanSummaryTypeDef(BaseModel): + MalwareProtectionPlanId: Optional[str] = None + +class ListMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + OnlyAssociated: Optional[str] = None + +class ListOrganizationAdminAccountsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPublishingDestinationsRequestRequestTypeDef(BaseModel): + DetectorId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListThreatIntelSetsRequestRequestTypeDef(BaseModel): + DetectorId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LocalIpDetailsTypeDef(BaseModel): + IpAddressV4: Optional[str] = None + IpAddressV6: Optional[str] = None + +class LocalPortDetailsTypeDef(BaseModel): + Port: Optional[int] = None + PortName: Optional[str] = None + +class LoginAttributeTypeDef(BaseModel): + User: Optional[str] = None + Application: Optional[str] = None + FailedLoginAttempts: Optional[int] = None + SuccessfulLoginAttempts: Optional[int] = None + +class ScanEc2InstanceWithFindingsTypeDef(BaseModel): + EbsVolumes: Optional[bool] = None + +class MalwareProtectionPlanTaggingActionTypeDef(BaseModel): + Status: Optional[MalwareProtectionPlanTaggingActionStatusType] = None + +class MemberAdditionalConfigurationResultTypeDef(BaseModel): + Name: Optional[OrgFeatureAdditionalConfigurationType] = None + Status: Optional[FeatureStatusType] = None + UpdatedAt: Optional[datetime] = None + +class MemberAdditionalConfigurationTypeDef(BaseModel): + Name: Optional[OrgFeatureAdditionalConfigurationType] = None + Status: Optional[FeatureStatusType] = None + +class RemotePortDetailsTypeDef(BaseModel): + Port: Optional[int] = None + PortName: Optional[str] = None + +class PrivateIpAddressDetailsTypeDef(BaseModel): + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class SecurityGroupTypeDef(BaseModel): + GroupId: Optional[str] = None + GroupName: Optional[str] = None + +class OrganizationAdditionalConfigurationResultTypeDef(BaseModel): + Name: Optional[OrgFeatureAdditionalConfigurationType] = None + AutoEnable: Optional[OrgFeatureStatusType] = None + +class OrganizationAdditionalConfigurationTypeDef(BaseModel): + Name: Optional[OrgFeatureAdditionalConfigurationType] = None + AutoEnable: Optional[OrgFeatureStatusType] = None + +class OrganizationS3LogsConfigurationResultTypeDef(BaseModel): + AutoEnable: bool + +class OrganizationS3LogsConfigurationTypeDef(BaseModel): + AutoEnable: bool + +class OrganizationEbsVolumesResultTypeDef(BaseModel): + AutoEnable: Optional[bool] = None + +class OrganizationEbsVolumesTypeDef(BaseModel): + AutoEnable: Optional[bool] = None + +class OrganizationFeatureStatisticsAdditionalConfigurationTypeDef(BaseModel): + Name: Optional[OrgFeatureAdditionalConfigurationType] = None + EnabledAccountsCount: Optional[int] = None + +class OrganizationKubernetesAuditLogsConfigurationResultTypeDef(BaseModel): + AutoEnable: bool + +class OrganizationKubernetesAuditLogsConfigurationTypeDef(BaseModel): + AutoEnable: bool + +class OrganizationTypeDef(BaseModel): + Asn: Optional[str] = None + AsnOrg: Optional[str] = None + Isp: Optional[str] = None + Org: Optional[str] = None + +class OwnerTypeDef(BaseModel): + Id: Optional[str] = None + +class RdsDbUserDetailsTypeDef(BaseModel): + User: Optional[str] = None + Application: Optional[str] = None + Database: Optional[str] = None + Ssl: Optional[str] = None + AuthMethod: Optional[str] = None + +class ResourceDetailsTypeDef(BaseModel): + InstanceArn: Optional[str] = None + +class S3ObjectDetailTypeDef(BaseModel): + ObjectArn: Optional[str] = None + Key: Optional[str] = None + ETag: Optional[str] = None + Hash: Optional[str] = None + VersionId: Optional[str] = None + +class ScanConditionPairTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class ScannedItemCountTypeDef(BaseModel): + TotalGb: Optional[int] = None + Files: Optional[int] = None + Volumes: Optional[int] = None + +class ThreatsDetectedItemCountTypeDef(BaseModel): + Files: Optional[int] = None + +class ScanFilePathTypeDef(BaseModel): + FilePath: Optional[str] = None + VolumeArn: Optional[str] = None + Hash: Optional[str] = None + FileName: Optional[str] = None + +class ScanResultDetailsTypeDef(BaseModel): + ScanResult: Optional[ScanResultType] = None + +class TriggerDetailsTypeDef(BaseModel): + GuardDutyFindingId: Optional[str] = None + Description: Optional[str] = None + +class ServiceAdditionalInfoTypeDef(BaseModel): + Value: Optional[str] = None + Type: Optional[str] = None + +class StartMalwareScanRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class StartMonitoringMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + +class StopMonitoringMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class TotalTypeDef(BaseModel): + Amount: Optional[str] = None + Unit: Optional[str] = None + +class UnarchiveFindingsRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingIds: Sequence[str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateFindingsFeedbackRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingIds: Sequence[str] + Feedback: FeedbackType + Comments: Optional[str] = None + +class UpdateIPSetRequestRequestTypeDef(BaseModel): + DetectorId: str + IpSetId: str + Name: Optional[str] = None + Location: Optional[str] = None + Activate: Optional[bool] = None + +class UpdateS3BucketResourceTypeDef(BaseModel): + ObjectPrefixes: Optional[Sequence[str]] = None + +class UpdateThreatIntelSetRequestRequestTypeDef(BaseModel): + DetectorId: str + ThreatIntelSetId: str + Name: Optional[str] = None + Location: Optional[str] = None + Activate: Optional[bool] = None + +class CreateMembersRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountDetails: Sequence[AccountDetailTypeDef] + +class AccountLevelPermissionsTypeDef(BaseModel): + BlockPublicAccess: Optional[BlockPublicAccessTypeDef] = None + +class CoverageEksClusterDetailsTypeDef(BaseModel): + ClusterName: Optional[str] = None + CoveredNodes: Optional[int] = None + CompatibleNodes: Optional[int] = None + AddonDetails: Optional[AddonDetailsTypeDef] = None + ManagementType: Optional[ManagementTypeType] = None + +class CoverageEc2InstanceDetailsTypeDef(BaseModel): + InstanceId: Optional[str] = None + InstanceType: Optional[str] = None + ClusterArn: Optional[str] = None + AgentDetails: Optional[AgentDetailsTypeDef] = None + ManagementType: Optional[ManagementTypeType] = None + +class AnomalyObjectTypeDef(BaseModel): + ProfileType: Optional[Literal["FREQUENCY"]] = None + ProfileSubtype: Optional[ProfileSubtypeType] = None + Observations: Optional[ObservationsTypeDef] = None + +class BucketLevelPermissionsTypeDef(BaseModel): + AccessControlList: Optional[AccessControlListTypeDef] = None + BucketPolicy: Optional[BucketPolicyTypeDef] = None + BlockPublicAccess: Optional[BlockPublicAccessTypeDef] = None + +class FindingCriteriaOutputTypeDef(BaseModel): + Criterion: Optional[Dict[str, ConditionOutputTypeDef]] = None + +class FindingCriteriaTypeDef(BaseModel): + Criterion: Optional[Mapping[str, ConditionTypeDef]] = None + +class ContainerTypeDef(BaseModel): + ContainerRuntime: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Image: Optional[str] = None + ImagePrefix: Optional[str] = None + VolumeMounts: Optional[List[VolumeMountTypeDef]] = None + SecurityContext: Optional[SecurityContextTypeDef] = None + +class CoverageEcsClusterDetailsTypeDef(BaseModel): + ClusterName: Optional[str] = None + FargateDetails: Optional[FargateDetailsTypeDef] = None + ContainerInstanceDetails: Optional[ContainerInstanceDetailsTypeDef] = None + +class CoverageFilterCriterionTypeDef(BaseModel): + CriterionKey: Optional[CoverageFilterCriterionKeyType] = None + FilterCondition: Optional[CoverageFilterConditionTypeDef] = None + +class CreateFilterResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIPSetResponseTypeDef(BaseModel): + IpSetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMalwareProtectionPlanResponseTypeDef(BaseModel): + MalwareProtectionPlanId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePublishingDestinationResponseTypeDef(BaseModel): + DestinationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThreatIntelSetResponseTypeDef(BaseModel): + ThreatIntelSetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAdministratorAccountResponseTypeDef(BaseModel): + Administrator: AdministratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCoverageStatisticsResponseTypeDef(BaseModel): + CoverageStatistics: CoverageStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIPSetResponseTypeDef(BaseModel): + Name: str + Format: IpSetFormatType + Location: str + Status: IpSetStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInvitationsCountResponseTypeDef(BaseModel): + InvitationsCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetThreatIntelSetResponseTypeDef(BaseModel): + Name: str + Format: ThreatIntelSetFormatType + Location: str + Status: ThreatIntelSetStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDetectorsResponseTypeDef(BaseModel): + DetectorIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFiltersResponseTypeDef(BaseModel): + FilterNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFindingsResponseTypeDef(BaseModel): + FindingIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIPSetsResponseTypeDef(BaseModel): + IpSetIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListOrganizationAdminAccountsResponseTypeDef(BaseModel): + AdminAccounts: List[AdminAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListThreatIntelSetsResponseTypeDef(BaseModel): + ThreatIntelSetIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartMalwareScanResponseTypeDef(BaseModel): + ScanId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFilterResponseTypeDef(BaseModel): + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeclineInvitationsResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInvitationsResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InviteMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMonitoringMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopMonitoringMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMemberDetectorsResponseTypeDef(BaseModel): + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProtectedResourceOutputTypeDef(BaseModel): + S3Bucket: Optional[CreateS3BucketResourceOutputTypeDef] = None + +class CreateProtectedResourceTypeDef(BaseModel): + S3Bucket: Optional[CreateS3BucketResourceTypeDef] = None + +class CreatePublishingDestinationRequestRequestTypeDef(BaseModel): + DetectorId: str + DestinationType: Literal["S3"] + DestinationProperties: DestinationPropertiesTypeDef + ClientToken: Optional[str] = None + +class DescribePublishingDestinationResponseTypeDef(BaseModel): + DestinationId: str + DestinationType: Literal["S3"] + Status: PublishingStatusType + PublishingFailureStartTimestamp: int + DestinationProperties: DestinationPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePublishingDestinationRequestRequestTypeDef(BaseModel): + DetectorId: str + DestinationId: str + DestinationProperties: Optional[DestinationPropertiesTypeDef] = None + +class KubernetesDataSourceFreeTrialTypeDef(BaseModel): + AuditLogs: Optional[DataSourceFreeTrialTypeDef] = None + +class MalwareProtectionDataSourceFreeTrialTypeDef(BaseModel): + ScanEc2InstanceWithFindings: Optional[DataSourceFreeTrialTypeDef] = None + +class ListDetectorsRequestListDetectorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFiltersRequestListFiltersPaginateTypeDef(BaseModel): + DetectorId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIPSetsRequestListIPSetsPaginateTypeDef(BaseModel): + DetectorId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInvitationsRequestListInvitationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembersRequestListMembersPaginateTypeDef(BaseModel): + DetectorId: str + OnlyAssociated: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationAdminAccountsRequestListOrganizationAdminAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThreatIntelSetsRequestListThreatIntelSetsPaginateTypeDef(BaseModel): + DetectorId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetFindingsRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingIds: Sequence[str] + SortCriteria: Optional[SortCriteriaTypeDef] = None + +class ListPublishingDestinationsResponseTypeDef(BaseModel): + Destinations: List[DestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DetectorFeatureConfigurationResultTypeDef(BaseModel): + Name: Optional[DetectorFeatureResultType] = None + Status: Optional[FeatureStatusType] = None + UpdatedAt: Optional[datetime] = None + AdditionalConfiguration: Optional[List[DetectorAdditionalConfigurationResultTypeDef]] = None + +class DetectorFeatureConfigurationTypeDef(BaseModel): + Name: Optional[DetectorFeatureType] = None + Status: Optional[FeatureStatusType] = None + AdditionalConfiguration: Optional[Sequence[DetectorAdditionalConfigurationTypeDef]] = None + +class EbsVolumeDetailsTypeDef(BaseModel): + ScannedVolumeDetails: Optional[List[VolumeDetailTypeDef]] = None + SkippedVolumeDetails: Optional[List[VolumeDetailTypeDef]] = None + +class ScanEc2InstanceWithFindingsResultTypeDef(BaseModel): + EbsVolumes: Optional[EbsVolumesResultTypeDef] = None + +class EksClusterDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + VpcId: Optional[str] = None + Status: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + CreatedAt: Optional[datetime] = None + +class RdsDbInstanceDetailsTypeDef(BaseModel): + DbInstanceIdentifier: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DbClusterIdentifier: Optional[str] = None + DbInstanceArn: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class EvidenceTypeDef(BaseModel): + ThreatIntelligenceDetails: Optional[List[ThreatIntelligenceDetailTypeDef]] = None + +class FilterCriterionTypeDef(BaseModel): + CriterionKey: Optional[CriterionKeyType] = None + FilterCondition: Optional[FilterConditionTypeDef] = None + +class GetFindingsStatisticsResponseTypeDef(BaseModel): + FindingStatistics: FindingStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMasterAccountResponseTypeDef(BaseModel): + Master: MasterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMembersResponseTypeDef(BaseModel): + Members: List[MemberTypeDef] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMembersResponseTypeDef(BaseModel): + Members: List[MemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetUsageStatisticsRequestRequestTypeDef(BaseModel): + DetectorId: str + UsageStatisticType: UsageStatisticTypeType + UsageCriteria: UsageCriteriaTypeDef + Unit: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class VolumeTypeDef(BaseModel): + Name: Optional[str] = None + HostPath: Optional[HostPathTypeDef] = None + +class KubernetesUserDetailsTypeDef(BaseModel): + Username: Optional[str] = None + Uid: Optional[str] = None + Groups: Optional[List[str]] = None + SessionName: Optional[List[str]] = None + ImpersonatedUser: Optional[ImpersonatedUserTypeDef] = None + +class ListInvitationsResponseTypeDef(BaseModel): + Invitations: List[InvitationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ThreatTypeDef(BaseModel): + Name: Optional[str] = None + Source: Optional[str] = None + ItemPaths: Optional[List[ItemPathTypeDef]] = None + +class KubernetesConfigurationResultTypeDef(BaseModel): + AuditLogs: KubernetesAuditLogsConfigurationResultTypeDef + +class KubernetesConfigurationTypeDef(BaseModel): + AuditLogs: KubernetesAuditLogsConfigurationTypeDef + +class ProcessDetailsTypeDef(BaseModel): + Name: Optional[str] = None + ExecutablePath: Optional[str] = None + ExecutableSha256: Optional[str] = None + NamespacePid: Optional[int] = None + Pwd: Optional[str] = None + Pid: Optional[int] = None + StartTime: Optional[datetime] = None + Uuid: Optional[str] = None + ParentUuid: Optional[str] = None + User: Optional[str] = None + UserId: Optional[int] = None + Euid: Optional[int] = None + Lineage: Optional[List[LineageObjectTypeDef]] = None + +class ListMalwareProtectionPlansResponseTypeDef(BaseModel): + MalwareProtectionPlans: List[MalwareProtectionPlanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MalwareProtectionConfigurationTypeDef(BaseModel): + ScanEc2InstanceWithFindings: Optional[ScanEc2InstanceWithFindingsTypeDef] = None + +class MalwareProtectionPlanActionsTypeDef(BaseModel): + Tagging: Optional[MalwareProtectionPlanTaggingActionTypeDef] = None + +class MemberFeaturesConfigurationResultTypeDef(BaseModel): + Name: Optional[OrgFeatureType] = None + Status: Optional[FeatureStatusType] = None + UpdatedAt: Optional[datetime] = None + AdditionalConfiguration: Optional[List[MemberAdditionalConfigurationResultTypeDef]] = None + +class MemberFeaturesConfigurationTypeDef(BaseModel): + Name: Optional[OrgFeatureType] = None + Status: Optional[FeatureStatusType] = None + AdditionalConfiguration: Optional[Sequence[MemberAdditionalConfigurationTypeDef]] = None + +class NetworkInterfaceTypeDef(BaseModel): + Ipv6Addresses: Optional[List[str]] = None + NetworkInterfaceId: Optional[str] = None + PrivateDnsName: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[List[PrivateIpAddressDetailsTypeDef]] = None + PublicDnsName: Optional[str] = None + PublicIp: Optional[str] = None + SecurityGroups: Optional[List[SecurityGroupTypeDef]] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + +class VpcConfigTypeDef(BaseModel): + SubnetIds: Optional[List[str]] = None + VpcId: Optional[str] = None + SecurityGroups: Optional[List[SecurityGroupTypeDef]] = None + +class OrganizationFeatureConfigurationResultTypeDef(BaseModel): + Name: Optional[OrgFeatureType] = None + AutoEnable: Optional[OrgFeatureStatusType] = None + AdditionalConfiguration: Optional[ List[OrganizationAdditionalConfigurationResultTypeDef] ] = None + +class OrganizationFeatureConfigurationTypeDef(BaseModel): + Name: Optional[OrgFeatureType] = None + AutoEnable: Optional[OrgFeatureStatusType] = None + AdditionalConfiguration: Optional[ Sequence[OrganizationAdditionalConfigurationTypeDef] ] = None + +class OrganizationScanEc2InstanceWithFindingsResultTypeDef(BaseModel): + EbsVolumes: Optional[OrganizationEbsVolumesResultTypeDef] = None + +class OrganizationScanEc2InstanceWithFindingsTypeDef(BaseModel): + EbsVolumes: Optional[OrganizationEbsVolumesTypeDef] = None + +class OrganizationFeatureStatisticsTypeDef(BaseModel): + Name: Optional[OrgFeatureType] = None + EnabledAccountsCount: Optional[int] = None + AdditionalConfiguration: Optional[ List[OrganizationFeatureStatisticsAdditionalConfigurationTypeDef] ] = None + +class OrganizationKubernetesConfigurationResultTypeDef(BaseModel): + AuditLogs: OrganizationKubernetesAuditLogsConfigurationResultTypeDef + +class OrganizationKubernetesConfigurationTypeDef(BaseModel): + AuditLogs: OrganizationKubernetesAuditLogsConfigurationTypeDef + +class RemoteIpDetailsTypeDef(BaseModel): + City: Optional[CityTypeDef] = None + Country: Optional[CountryTypeDef] = None + GeoLocation: Optional[GeoLocationTypeDef] = None + IpAddressV4: Optional[str] = None + IpAddressV6: Optional[str] = None + Organization: Optional[OrganizationTypeDef] = None + +class ScanConditionOutputTypeDef(BaseModel): + MapEquals: List[ScanConditionPairTypeDef] + +class ScanConditionTypeDef(BaseModel): + MapEquals: Sequence[ScanConditionPairTypeDef] + +class ScanThreatNameTypeDef(BaseModel): + Name: Optional[str] = None + Severity: Optional[str] = None + ItemCount: Optional[int] = None + FilePaths: Optional[List[ScanFilePathTypeDef]] = None + +class ScanTypeDef(BaseModel): + DetectorId: Optional[str] = None + AdminDetectorId: Optional[str] = None + ScanId: Optional[str] = None + ScanStatus: Optional[ScanStatusType] = None + FailureReason: Optional[str] = None + ScanStartTime: Optional[datetime] = None + ScanEndTime: Optional[datetime] = None + TriggerDetails: Optional[TriggerDetailsTypeDef] = None + ResourceDetails: Optional[ResourceDetailsTypeDef] = None + ScanResultDetails: Optional[ScanResultDetailsTypeDef] = None + AccountId: Optional[str] = None + TotalBytes: Optional[int] = None + FileCount: Optional[int] = None + AttachedVolumes: Optional[List[VolumeDetailTypeDef]] = None + ScanType: Optional[ScanTypeType] = None + +class UsageAccountResultTypeDef(BaseModel): + AccountId: Optional[str] = None + Total: Optional[TotalTypeDef] = None + +class UsageDataSourceResultTypeDef(BaseModel): + DataSource: Optional[DataSourceType] = None + Total: Optional[TotalTypeDef] = None + +class UsageFeatureResultTypeDef(BaseModel): + Feature: Optional[UsageFeatureType] = None + Total: Optional[TotalTypeDef] = None + +class UsageResourceResultTypeDef(BaseModel): + Resource: Optional[str] = None + Total: Optional[TotalTypeDef] = None + +class UsageTopAccountResultTypeDef(BaseModel): + AccountId: Optional[str] = None + Total: Optional[TotalTypeDef] = None + +class UpdateProtectedResourceTypeDef(BaseModel): + S3Bucket: Optional[UpdateS3BucketResourceTypeDef] = None + +class AnomalyUnusualTypeDef(BaseModel): + Behavior: Optional[Dict[str, Dict[str, AnomalyObjectTypeDef]]] = None + +class PermissionConfigurationTypeDef(BaseModel): + BucketLevelPermissions: Optional[BucketLevelPermissionsTypeDef] = None + AccountLevelPermissions: Optional[AccountLevelPermissionsTypeDef] = None + +class GetFilterResponseTypeDef(BaseModel): + Name: str + Description: str + Action: FilterActionType + Rank: int + FindingCriteria: FindingCriteriaOutputTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFilterRequestRequestTypeDef(BaseModel): + DetectorId: str + Name: str + FindingCriteria: FindingCriteriaTypeDef + Description: Optional[str] = None + Action: Optional[FilterActionType] = None + Rank: Optional[int] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class GetFindingsStatisticsRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingStatisticTypes: Sequence[Literal["COUNT_BY_SEVERITY"]] + FindingCriteria: Optional[FindingCriteriaTypeDef] = None + +class ListFindingsRequestListFindingsPaginateTypeDef(BaseModel): + DetectorId: str + FindingCriteria: Optional[FindingCriteriaTypeDef] = None + SortCriteria: Optional[SortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsRequestRequestTypeDef(BaseModel): + DetectorId: str + FindingCriteria: Optional[FindingCriteriaTypeDef] = None + SortCriteria: Optional[SortCriteriaTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UpdateFilterRequestRequestTypeDef(BaseModel): + DetectorId: str + FilterName: str + Description: Optional[str] = None + Action: Optional[FilterActionType] = None + Rank: Optional[int] = None + FindingCriteria: Optional[FindingCriteriaTypeDef] = None + +class CoverageResourceDetailsTypeDef(BaseModel): + EksClusterDetails: Optional[CoverageEksClusterDetailsTypeDef] = None + ResourceType: Optional[ResourceTypeType] = None + EcsClusterDetails: Optional[CoverageEcsClusterDetailsTypeDef] = None + Ec2InstanceDetails: Optional[CoverageEc2InstanceDetailsTypeDef] = None + +class CoverageFilterCriteriaTypeDef(BaseModel): + FilterCriterion: Optional[Sequence[CoverageFilterCriterionTypeDef]] = None + +class DataSourcesFreeTrialTypeDef(BaseModel): + CloudTrail: Optional[DataSourceFreeTrialTypeDef] = None + DnsLogs: Optional[DataSourceFreeTrialTypeDef] = None + FlowLogs: Optional[DataSourceFreeTrialTypeDef] = None + S3Logs: Optional[DataSourceFreeTrialTypeDef] = None + Kubernetes: Optional[KubernetesDataSourceFreeTrialTypeDef] = None + MalwareProtection: Optional[MalwareProtectionDataSourceFreeTrialTypeDef] = None + +class MalwareProtectionConfigurationResultTypeDef(BaseModel): + ScanEc2InstanceWithFindings: Optional[ScanEc2InstanceWithFindingsResultTypeDef] = None + ServiceRole: Optional[str] = None + +class FilterCriteriaTypeDef(BaseModel): + FilterCriterion: Optional[Sequence[FilterCriterionTypeDef]] = None + +class EcsTaskDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + DefinitionArn: Optional[str] = None + Version: Optional[str] = None + TaskCreatedAt: Optional[datetime] = None + StartedAt: Optional[datetime] = None + StartedBy: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + Volumes: Optional[List[VolumeTypeDef]] = None + Containers: Optional[List[ContainerTypeDef]] = None + Group: Optional[str] = None + +class KubernetesWorkloadDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + Uid: Optional[str] = None + Namespace: Optional[str] = None + HostNetwork: Optional[bool] = None + Containers: Optional[List[ContainerTypeDef]] = None + Volumes: Optional[List[VolumeTypeDef]] = None + ServiceAccountName: Optional[str] = None + HostIPC: Optional[bool] = None + HostPID: Optional[bool] = None + +class MalwareScanDetailsTypeDef(BaseModel): + Threats: Optional[List[ThreatTypeDef]] = None + +class RuntimeContextTypeDef(BaseModel): + ModifyingProcess: Optional[ProcessDetailsTypeDef] = None + ModifiedAt: Optional[datetime] = None + ScriptPath: Optional[str] = None + LibraryPath: Optional[str] = None + LdPreloadValue: Optional[str] = None + SocketPath: Optional[str] = None + RuncBinaryPath: Optional[str] = None + ReleaseAgentPath: Optional[str] = None + MountSource: Optional[str] = None + MountTarget: Optional[str] = None + FileSystemType: Optional[str] = None + Flags: Optional[List[str]] = None + ModuleName: Optional[str] = None + ModuleFilePath: Optional[str] = None + ModuleSha256: Optional[str] = None + ShellHistoryFilePath: Optional[str] = None + TargetProcess: Optional[ProcessDetailsTypeDef] = None + AddressFamily: Optional[str] = None + IanaProtocolNumber: Optional[int] = None + MemoryRegions: Optional[List[str]] = None + ToolName: Optional[str] = None + ToolCategory: Optional[str] = None + ServiceName: Optional[str] = None + CommandLineExample: Optional[str] = None + ThreatFilePath: Optional[str] = None + +class DataSourceConfigurationsTypeDef(BaseModel): + S3Logs: Optional[S3LogsConfigurationTypeDef] = None + Kubernetes: Optional[KubernetesConfigurationTypeDef] = None + MalwareProtection: Optional[MalwareProtectionConfigurationTypeDef] = None + +class CreateMalwareProtectionPlanRequestRequestTypeDef(BaseModel): + Role: str + ProtectedResource: CreateProtectedResourceTypeDef + ClientToken: Optional[str] = None + Actions: Optional[MalwareProtectionPlanActionsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class GetMalwareProtectionPlanResponseTypeDef(BaseModel): + Arn: str + Role: str + ProtectedResource: CreateProtectedResourceOutputTypeDef + Actions: MalwareProtectionPlanActionsTypeDef + CreatedAt: datetime + Status: MalwareProtectionPlanStatusType + StatusReasons: List[MalwareProtectionPlanStatusReasonTypeDef] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceDetailsTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + IamInstanceProfile: Optional[IamInstanceProfileTypeDef] = None + ImageDescription: Optional[str] = None + ImageId: Optional[str] = None + InstanceId: Optional[str] = None + InstanceState: Optional[str] = None + InstanceType: Optional[str] = None + OutpostArn: Optional[str] = None + LaunchTime: Optional[str] = None + NetworkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + Platform: Optional[str] = None + ProductCodes: Optional[List[ProductCodeTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class LambdaDetailsTypeDef(BaseModel): + FunctionArn: Optional[str] = None + FunctionName: Optional[str] = None + Description: Optional[str] = None + LastModifiedAt: Optional[datetime] = None + RevisionId: Optional[str] = None + FunctionVersion: Optional[str] = None + Role: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class OrganizationMalwareProtectionConfigurationResultTypeDef(BaseModel): + ScanEc2InstanceWithFindings: Optional[ OrganizationScanEc2InstanceWithFindingsResultTypeDef ] = None + +class OrganizationMalwareProtectionConfigurationTypeDef(BaseModel): + ScanEc2InstanceWithFindings: Optional[OrganizationScanEc2InstanceWithFindingsTypeDef] = None + +class OrganizationStatisticsTypeDef(BaseModel): + TotalAccountsCount: Optional[int] = None + MemberAccountsCount: Optional[int] = None + ActiveAccountsCount: Optional[int] = None + EnabledAccountsCount: Optional[int] = None + CountByFeature: Optional[List[OrganizationFeatureStatisticsTypeDef]] = None + +class AwsApiCallActionTypeDef(BaseModel): + Api: Optional[str] = None + CallerType: Optional[str] = None + DomainDetails: Optional[DomainDetailsTypeDef] = None + ErrorCode: Optional[str] = None + UserAgent: Optional[str] = None + RemoteIpDetails: Optional[RemoteIpDetailsTypeDef] = None + ServiceName: Optional[str] = None + RemoteAccountDetails: Optional[RemoteAccountDetailsTypeDef] = None + AffectedResources: Optional[Dict[str, str]] = None + +class KubernetesApiCallActionTypeDef(BaseModel): + RequestUri: Optional[str] = None + Verb: Optional[str] = None + SourceIps: Optional[List[str]] = None + UserAgent: Optional[str] = None + RemoteIpDetails: Optional[RemoteIpDetailsTypeDef] = None + StatusCode: Optional[int] = None + Parameters: Optional[str] = None + Resource: Optional[str] = None + Subresource: Optional[str] = None + Namespace: Optional[str] = None + ResourceName: Optional[str] = None + +class NetworkConnectionActionTypeDef(BaseModel): + Blocked: Optional[bool] = None + ConnectionDirection: Optional[str] = None + LocalPortDetails: Optional[LocalPortDetailsTypeDef] = None + Protocol: Optional[str] = None + LocalIpDetails: Optional[LocalIpDetailsTypeDef] = None + RemoteIpDetails: Optional[RemoteIpDetailsTypeDef] = None + RemotePortDetails: Optional[RemotePortDetailsTypeDef] = None + +class PortProbeDetailTypeDef(BaseModel): + LocalPortDetails: Optional[LocalPortDetailsTypeDef] = None + LocalIpDetails: Optional[LocalIpDetailsTypeDef] = None + RemoteIpDetails: Optional[RemoteIpDetailsTypeDef] = None + +class RdsLoginAttemptActionTypeDef(BaseModel): + RemoteIpDetails: Optional[RemoteIpDetailsTypeDef] = None + LoginAttributes: Optional[List[LoginAttributeTypeDef]] = None + +class ScanResourceCriteriaOutputTypeDef(BaseModel): + Include: Optional[Dict[Literal["EC2_INSTANCE_TAG"], ScanConditionOutputTypeDef]] = None + Exclude: Optional[Dict[Literal["EC2_INSTANCE_TAG"], ScanConditionOutputTypeDef]] = None + +class ScanResourceCriteriaTypeDef(BaseModel): + Include: Optional[Mapping[Literal["EC2_INSTANCE_TAG"], ScanConditionTypeDef]] = None + Exclude: Optional[Mapping[Literal["EC2_INSTANCE_TAG"], ScanConditionTypeDef]] = None + +class ThreatDetectedByNameTypeDef(BaseModel): + ItemCount: Optional[int] = None + UniqueThreatNameCount: Optional[int] = None + Shortened: Optional[bool] = None + ThreatNames: Optional[List[ScanThreatNameTypeDef]] = None + +class DescribeMalwareScansResponseTypeDef(BaseModel): + Scans: List[ScanTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UsageTopAccountsResultTypeDef(BaseModel): + Feature: Optional[UsageFeatureType] = None + Accounts: Optional[List[UsageTopAccountResultTypeDef]] = None + +class UpdateMalwareProtectionPlanRequestRequestTypeDef(BaseModel): + MalwareProtectionPlanId: str + Role: Optional[str] = None + Actions: Optional[MalwareProtectionPlanActionsTypeDef] = None + ProtectedResource: Optional[UpdateProtectedResourceTypeDef] = None + +class AnomalyTypeDef(BaseModel): + Profiles: Optional[Dict[str, Dict[str, List[AnomalyObjectTypeDef]]]] = None + Unusual: Optional[AnomalyUnusualTypeDef] = None + +class PublicAccessTypeDef(BaseModel): + PermissionConfiguration: Optional[PermissionConfigurationTypeDef] = None + EffectivePermission: Optional[str] = None + +class CoverageResourceTypeDef(BaseModel): + ResourceId: Optional[str] = None + DetectorId: Optional[str] = None + AccountId: Optional[str] = None + ResourceDetails: Optional[CoverageResourceDetailsTypeDef] = None + CoverageStatus: Optional[CoverageStatusType] = None + Issue: Optional[str] = None + UpdatedAt: Optional[datetime] = None + +class GetCoverageStatisticsRequestRequestTypeDef(BaseModel): + DetectorId: str + StatisticsType: Sequence[CoverageStatisticsTypeType] + FilterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + +class ListCoverageRequestListCoveragePaginateTypeDef(BaseModel): + DetectorId: str + FilterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + SortCriteria: Optional[CoverageSortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoverageRequestRequestTypeDef(BaseModel): + DetectorId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + FilterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + SortCriteria: Optional[CoverageSortCriteriaTypeDef] = None + +class AccountFreeTrialInfoTypeDef(BaseModel): + AccountId: Optional[str] = None + DataSources: Optional[DataSourcesFreeTrialTypeDef] = None + Features: Optional[List[FreeTrialFeatureConfigurationResultTypeDef]] = None + +class DataSourceConfigurationsResultTypeDef(BaseModel): + CloudTrail: CloudTrailConfigurationResultTypeDef + DNSLogs: DNSLogsConfigurationResultTypeDef + FlowLogs: FlowLogsConfigurationResultTypeDef + S3Logs: S3LogsConfigurationResultTypeDef + Kubernetes: Optional[KubernetesConfigurationResultTypeDef] = None + MalwareProtection: Optional[MalwareProtectionConfigurationResultTypeDef] = None + +class UnprocessedDataSourcesResultTypeDef(BaseModel): + MalwareProtection: Optional[MalwareProtectionConfigurationResultTypeDef] = None + +class DescribeMalwareScansRequestDescribeMalwareScansPaginateTypeDef(BaseModel): + DetectorId: str + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + SortCriteria: Optional[SortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMalwareScansRequestRequestTypeDef(BaseModel): + DetectorId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + SortCriteria: Optional[SortCriteriaTypeDef] = None + +class EcsClusterDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Status: Optional[str] = None + ActiveServicesCount: Optional[int] = None + RegisteredContainerInstancesCount: Optional[int] = None + RunningTasksCount: Optional[int] = None + Tags: Optional[List[TagTypeDef]] = None + TaskDetails: Optional[EcsTaskDetailsTypeDef] = None + +class KubernetesDetailsTypeDef(BaseModel): + KubernetesUserDetails: Optional[KubernetesUserDetailsTypeDef] = None + KubernetesWorkloadDetails: Optional[KubernetesWorkloadDetailsTypeDef] = None + +class RuntimeDetailsTypeDef(BaseModel): + Process: Optional[ProcessDetailsTypeDef] = None + Context: Optional[RuntimeContextTypeDef] = None + +class CreateDetectorRequestRequestTypeDef(BaseModel): + Enable: bool + ClientToken: Optional[str] = None + FindingPublishingFrequency: Optional[FindingPublishingFrequencyType] = None + DataSources: Optional[DataSourceConfigurationsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + Features: Optional[Sequence[DetectorFeatureConfigurationTypeDef]] = None + +class UpdateDetectorRequestRequestTypeDef(BaseModel): + DetectorId: str + Enable: Optional[bool] = None + FindingPublishingFrequency: Optional[FindingPublishingFrequencyType] = None + DataSources: Optional[DataSourceConfigurationsTypeDef] = None + Features: Optional[Sequence[DetectorFeatureConfigurationTypeDef]] = None + +class UpdateMemberDetectorsRequestRequestTypeDef(BaseModel): + DetectorId: str + AccountIds: Sequence[str] + DataSources: Optional[DataSourceConfigurationsTypeDef] = None + Features: Optional[Sequence[MemberFeaturesConfigurationTypeDef]] = None + +class OrganizationDataSourceConfigurationsResultTypeDef(BaseModel): + S3Logs: OrganizationS3LogsConfigurationResultTypeDef + Kubernetes: Optional[OrganizationKubernetesConfigurationResultTypeDef] = None + MalwareProtection: Optional[OrganizationMalwareProtectionConfigurationResultTypeDef] = None + +class OrganizationDataSourceConfigurationsTypeDef(BaseModel): + S3Logs: Optional[OrganizationS3LogsConfigurationTypeDef] = None + Kubernetes: Optional[OrganizationKubernetesConfigurationTypeDef] = None + MalwareProtection: Optional[OrganizationMalwareProtectionConfigurationTypeDef] = None + +class OrganizationDetailsTypeDef(BaseModel): + UpdatedAt: Optional[datetime] = None + OrganizationStatistics: Optional[OrganizationStatisticsTypeDef] = None + +class PortProbeActionTypeDef(BaseModel): + Blocked: Optional[bool] = None + PortProbeDetails: Optional[List[PortProbeDetailTypeDef]] = None + +class GetMalwareScanSettingsResponseTypeDef(BaseModel): + ScanResourceCriteria: ScanResourceCriteriaOutputTypeDef + EbsSnapshotPreservation: EbsSnapshotPreservationType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMalwareScanSettingsRequestRequestTypeDef(BaseModel): + DetectorId: str + ScanResourceCriteria: Optional[ScanResourceCriteriaTypeDef] = None + EbsSnapshotPreservation: Optional[EbsSnapshotPreservationType] = None + +class ScanDetectionsTypeDef(BaseModel): + ScannedItemCount: Optional[ScannedItemCountTypeDef] = None + ThreatsDetectedItemCount: Optional[ThreatsDetectedItemCountTypeDef] = None + HighestSeverityThreatDetails: Optional[HighestSeverityThreatDetailsTypeDef] = None + ThreatDetectedByName: Optional[ThreatDetectedByNameTypeDef] = None + +class UsageStatisticsTypeDef(BaseModel): + SumByAccount: Optional[List[UsageAccountResultTypeDef]] = None + TopAccountsByFeature: Optional[List[UsageTopAccountsResultTypeDef]] = None + SumByDataSource: Optional[List[UsageDataSourceResultTypeDef]] = None + SumByResource: Optional[List[UsageResourceResultTypeDef]] = None + TopResources: Optional[List[UsageResourceResultTypeDef]] = None + SumByFeature: Optional[List[UsageFeatureResultTypeDef]] = None + +class DetectionTypeDef(BaseModel): + Anomaly: Optional[AnomalyTypeDef] = None + +class S3BucketDetailTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[str] = None + CreatedAt: Optional[datetime] = None + Owner: Optional[OwnerTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + DefaultServerSideEncryption: Optional[DefaultServerSideEncryptionTypeDef] = None + PublicAccess: Optional[PublicAccessTypeDef] = None + S3ObjectDetails: Optional[List[S3ObjectDetailTypeDef]] = None + +class ListCoverageResponseTypeDef(BaseModel): + Resources: List[CoverageResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetRemainingFreeTrialDaysResponseTypeDef(BaseModel): + Accounts: List[AccountFreeTrialInfoTypeDef] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDetectorResponseTypeDef(BaseModel): + CreatedAt: str + FindingPublishingFrequency: FindingPublishingFrequencyType + ServiceRole: str + Status: DetectorStatusType + UpdatedAt: str + DataSources: DataSourceConfigurationsResultTypeDef + Tags: Dict[str, str] + Features: List[DetectorFeatureConfigurationResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MemberDataSourceConfigurationTypeDef(BaseModel): + AccountId: str + DataSources: Optional[DataSourceConfigurationsResultTypeDef] = None + Features: Optional[List[MemberFeaturesConfigurationResultTypeDef]] = None + +class CreateDetectorResponseTypeDef(BaseModel): + DetectorId: str + UnprocessedDataSources: UnprocessedDataSourcesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationConfigurationResponseTypeDef(BaseModel): + AutoEnable: bool + MemberAccountLimitReached: bool + DataSources: OrganizationDataSourceConfigurationsResultTypeDef + Features: List[OrganizationFeatureConfigurationResultTypeDef] + AutoEnableOrganizationMembers: AutoEnableMembersType + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateOrganizationConfigurationRequestRequestTypeDef(BaseModel): + DetectorId: str + AutoEnable: Optional[bool] = None + DataSources: Optional[OrganizationDataSourceConfigurationsTypeDef] = None + Features: Optional[Sequence[OrganizationFeatureConfigurationTypeDef]] = None + AutoEnableOrganizationMembers: Optional[AutoEnableMembersType] = None + +class GetOrganizationStatisticsResponseTypeDef(BaseModel): + OrganizationDetails: OrganizationDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ActionTypeDef(BaseModel): + ActionType: Optional[str] = None + AwsApiCallAction: Optional[AwsApiCallActionTypeDef] = None + DnsRequestAction: Optional[DnsRequestActionTypeDef] = None + NetworkConnectionAction: Optional[NetworkConnectionActionTypeDef] = None + PortProbeAction: Optional[PortProbeActionTypeDef] = None + KubernetesApiCallAction: Optional[KubernetesApiCallActionTypeDef] = None + RdsLoginAttemptAction: Optional[RdsLoginAttemptActionTypeDef] = None + KubernetesPermissionCheckedDetails: Optional[ KubernetesPermissionCheckedDetailsTypeDef ] = None + KubernetesRoleBindingDetails: Optional[KubernetesRoleBindingDetailsTypeDef] = None + KubernetesRoleDetails: Optional[KubernetesRoleDetailsTypeDef] = None + +class EbsVolumeScanDetailsTypeDef(BaseModel): + ScanId: Optional[str] = None + ScanStartedAt: Optional[datetime] = None + ScanCompletedAt: Optional[datetime] = None + TriggerFindingId: Optional[str] = None + Sources: Optional[List[str]] = None + ScanDetections: Optional[ScanDetectionsTypeDef] = None + ScanType: Optional[ScanTypeType] = None + +class GetUsageStatisticsResponseTypeDef(BaseModel): + UsageStatistics: UsageStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ResourceTypeDef(BaseModel): + AccessKeyDetails: Optional[AccessKeyDetailsTypeDef] = None + S3BucketDetails: Optional[List[S3BucketDetailTypeDef]] = None + InstanceDetails: Optional[InstanceDetailsTypeDef] = None + EksClusterDetails: Optional[EksClusterDetailsTypeDef] = None + KubernetesDetails: Optional[KubernetesDetailsTypeDef] = None + ResourceType: Optional[str] = None + EbsVolumeDetails: Optional[EbsVolumeDetailsTypeDef] = None + EcsClusterDetails: Optional[EcsClusterDetailsTypeDef] = None + ContainerDetails: Optional[ContainerTypeDef] = None + RdsDbInstanceDetails: Optional[RdsDbInstanceDetailsTypeDef] = None + RdsDbUserDetails: Optional[RdsDbUserDetailsTypeDef] = None + LambdaDetails: Optional[LambdaDetailsTypeDef] = None + +class GetMemberDetectorsResponseTypeDef(BaseModel): + MemberDataSourceConfigurations: List[MemberDataSourceConfigurationTypeDef] + UnprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceTypeDef(BaseModel): + Action: Optional[ActionTypeDef] = None + Evidence: Optional[EvidenceTypeDef] = None + Archived: Optional[bool] = None + Count: Optional[int] = None + DetectorId: Optional[str] = None + EventFirstSeen: Optional[str] = None + EventLastSeen: Optional[str] = None + ResourceRole: Optional[str] = None + ServiceName: Optional[str] = None + UserFeedback: Optional[str] = None + AdditionalInfo: Optional[ServiceAdditionalInfoTypeDef] = None + FeatureName: Optional[str] = None + EbsVolumeScanDetails: Optional[EbsVolumeScanDetailsTypeDef] = None + RuntimeDetails: Optional[RuntimeDetailsTypeDef] = None + Detection: Optional[DetectionTypeDef] = None + MalwareScanDetails: Optional[MalwareScanDetailsTypeDef] = None + +class FindingTypeDef(BaseModel): + AccountId: str + Arn: str + CreatedAt: str + Id: str + Region: str + Resource: ResourceTypeDef + SchemaVersion: str + Severity: float + Type: str + UpdatedAt: str + Confidence: Optional[float] = None + Description: Optional[str] = None + Partition: Optional[str] = None + Service: Optional[ServiceTypeDef] = None + Title: Optional[str] = None + +class GetFindingsResponseTypeDef(BaseModel): + Findings: List[FindingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/guardduty_constants.py b/aws_resource_validator/pydantic_models/guardduty_constants.py new file mode 100644 index 00000000..bb7e2584 --- /dev/null +++ b/aws_resource_validator/pydantic_models/guardduty_constants.py @@ -0,0 +1,565 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdminStatusType = Literal["DISABLE_IN_PROGRESS", "ENABLED"] +AutoEnableMembersType = Literal["ALL", "NEW", "NONE"] +CoverageFilterCriterionKeyType = Literal["ACCOUNT_ID", + "ADDON_VERSION", + "AGENT_VERSION", + "CLUSTER_ARN", + "CLUSTER_NAME", + "COVERAGE_STATUS", + "ECS_CLUSTER_NAME", + "EKS_CLUSTER_NAME", + "INSTANCE_ID", + "MANAGEMENT_TYPE", + "RESOURCE_TYPE",] +CoverageSortKeyType = Literal["ACCOUNT_ID", + "ADDON_VERSION", + "CLUSTER_NAME", + "COVERAGE_STATUS", + "ECS_CLUSTER_NAME", + "EKS_CLUSTER_NAME", + "INSTANCE_ID", + "ISSUE", + "UPDATED_AT",] +CoverageStatisticsTypeType = Literal["COUNT_BY_COVERAGE_STATUS", "COUNT_BY_RESOURCE_TYPE"] +CoverageStatusType = Literal["HEALTHY", "UNHEALTHY"] +CriterionKeyType = Literal["ACCOUNT_ID", + "EC2_INSTANCE_ARN", + "GUARDDUTY_FINDING_ID", + "SCAN_ID", + "SCAN_START_TIME", + "SCAN_STATUS", + "SCAN_TYPE",] +DataSourceStatusType = Literal["DISABLED", "ENABLED"] +DataSourceType = Literal["CLOUD_TRAIL", "DNS_LOGS", "EC2_MALWARE_SCAN", "FLOW_LOGS", "KUBERNETES_AUDIT_LOGS", "S3_LOGS"] +DescribeMalwareScansPaginatorName = Literal["describe_malware_scans"] +DestinationTypeType = Literal["S3"] +DetectorFeatureResultType = Literal["CLOUD_TRAIL", + "DNS_LOGS", + "EBS_MALWARE_PROTECTION", + "EKS_AUDIT_LOGS", + "EKS_RUNTIME_MONITORING", + "FLOW_LOGS", + "LAMBDA_NETWORK_LOGS", + "RDS_LOGIN_EVENTS", + "RUNTIME_MONITORING", + "S3_DATA_EVENTS",] +DetectorFeatureType = Literal["EBS_MALWARE_PROTECTION", + "EKS_AUDIT_LOGS", + "EKS_RUNTIME_MONITORING", + "LAMBDA_NETWORK_LOGS", + "RDS_LOGIN_EVENTS", + "RUNTIME_MONITORING", + "S3_DATA_EVENTS",] +DetectorStatusType = Literal["DISABLED", "ENABLED"] +EbsSnapshotPreservationType = Literal["NO_RETENTION", "RETENTION_WITH_FINDING"] +FeatureAdditionalConfigurationType = Literal["EC2_AGENT_MANAGEMENT", "ECS_FARGATE_AGENT_MANAGEMENT", "EKS_ADDON_MANAGEMENT"] +FeatureStatusType = Literal["DISABLED", "ENABLED"] +FeedbackType = Literal["NOT_USEFUL", "USEFUL"] +FilterActionType = Literal["ARCHIVE", "NOOP"] +FindingPublishingFrequencyType = Literal["FIFTEEN_MINUTES", "ONE_HOUR", "SIX_HOURS"] +FindingStatisticTypeType = Literal["COUNT_BY_SEVERITY"] +FreeTrialFeatureResultType = Literal["CLOUD_TRAIL", + "DNS_LOGS", + "EBS_MALWARE_PROTECTION", + "EC2_RUNTIME_MONITORING", + "EKS_AUDIT_LOGS", + "EKS_RUNTIME_MONITORING", + "FARGATE_RUNTIME_MONITORING", + "FLOW_LOGS", + "LAMBDA_NETWORK_LOGS", + "RDS_LOGIN_EVENTS", + "S3_DATA_EVENTS",] +IpSetFormatType = Literal["ALIEN_VAULT", "FIRE_EYE", "OTX_CSV", "PROOF_POINT", "STIX", "TXT"] +IpSetStatusType = Literal["ACTIVATING", "ACTIVE", "DEACTIVATING", "DELETED", "DELETE_PENDING", "ERROR", "INACTIVE"] +ListCoveragePaginatorName = Literal["list_coverage"] +ListDetectorsPaginatorName = Literal["list_detectors"] +ListFiltersPaginatorName = Literal["list_filters"] +ListFindingsPaginatorName = Literal["list_findings"] +ListIPSetsPaginatorName = Literal["list_ip_sets"] +ListInvitationsPaginatorName = Literal["list_invitations"] +ListMembersPaginatorName = Literal["list_members"] +ListOrganizationAdminAccountsPaginatorName = Literal["list_organization_admin_accounts"] +ListThreatIntelSetsPaginatorName = Literal["list_threat_intel_sets"] +MalwareProtectionPlanStatusType = Literal["ACTIVE", "ERROR", "WARNING"] +MalwareProtectionPlanTaggingActionStatusType = Literal["DISABLED", "ENABLED"] +ManagementTypeType = Literal["AUTO_MANAGED", "DISABLED", "MANUAL"] +OrderByType = Literal["ASC", "DESC"] +OrgFeatureAdditionalConfigurationType = Literal["EC2_AGENT_MANAGEMENT", "ECS_FARGATE_AGENT_MANAGEMENT", "EKS_ADDON_MANAGEMENT"] +OrgFeatureStatusType = Literal["ALL", "NEW", "NONE"] +OrgFeatureType = Literal["EBS_MALWARE_PROTECTION", + "EKS_AUDIT_LOGS", + "EKS_RUNTIME_MONITORING", + "LAMBDA_NETWORK_LOGS", + "RDS_LOGIN_EVENTS", + "RUNTIME_MONITORING", + "S3_DATA_EVENTS",] +ProfileSubtypeType = Literal["FREQUENT", "INFREQUENT", "RARE", "UNSEEN"] +ProfileTypeType = Literal["FREQUENCY"] +PublishingStatusType = Literal["PENDING_VERIFICATION", "PUBLISHING", "STOPPED", "UNABLE_TO_PUBLISH_FIX_DESTINATION_PROPERTY"] +ResourceTypeType = Literal["EC2", "ECS", "EKS"] +ScanCriterionKeyType = Literal["EC2_INSTANCE_TAG"] +ScanResultType = Literal["CLEAN", "INFECTED"] +ScanStatusType = Literal["COMPLETED", "FAILED", "RUNNING", "SKIPPED"] +ScanTypeType = Literal["GUARDDUTY_INITIATED", "ON_DEMAND"] +ThreatIntelSetFormatType = Literal["ALIEN_VAULT", "FIRE_EYE", "OTX_CSV", "PROOF_POINT", "STIX", "TXT"] +ThreatIntelSetStatusType = Literal["ACTIVATING", "ACTIVE", "DEACTIVATING", "DELETED", "DELETE_PENDING", "ERROR", "INACTIVE"] +UsageFeatureType = Literal["CLOUD_TRAIL", + "DNS_LOGS", + "EBS_MALWARE_PROTECTION", + "EC2_RUNTIME_MONITORING", + "EKS_AUDIT_LOGS", + "EKS_RUNTIME_MONITORING", + "FARGATE_RUNTIME_MONITORING", + "FLOW_LOGS", + "LAMBDA_NETWORK_LOGS", + "RDS_DBI_PROTECTION_PROVISIONED", + "RDS_DBI_PROTECTION_SERVERLESS", + "RDS_LOGIN_EVENTS", + "S3_DATA_EVENTS",] +UsageStatisticTypeType = Literal["SUM_BY_ACCOUNT", + "SUM_BY_DATA_SOURCE", + "SUM_BY_FEATURES", + "SUM_BY_RESOURCE", + "TOP_ACCOUNTS_BY_FEATURE", + "TOP_RESOURCES",] +GuardDutyServiceName = Literal["guardduty"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_malware_scans", + "list_coverage", + "list_detectors", + "list_filters", + "list_findings", + "list_invitations", + "list_ip_sets", + "list_members", + "list_organization_admin_accounts", + "list_threat_intel_sets",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +FindingCriteriaUnionTypeDef = Union['FindingCriteriaTypeDef', 'FindingCriteriaOutputTypeDef'] +CreateProtectedResourceUnionTypeDef = Union[ 'CreateProtectedResourceTypeDef', 'CreateProtectedResourceOutputTypeDef' ] +ScanResourceCriteriaUnionTypeDef = Union[ 'ScanResourceCriteriaTypeDef', 'ScanResourceCriteriaOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/health_classes.py b/aws_resource_validator/pydantic_models/health_classes.py new file mode 100644 index 00000000..7e00cbcb --- /dev/null +++ b/aws_resource_validator/pydantic_models/health_classes.py @@ -0,0 +1,324 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.health_constants import * + +class AccountEntityAggregateTypeDef(BaseModel): + accountId: Optional[str] = None + count: Optional[int] = None + statuses: Optional[Dict[entityStatusCodeType, int]] = None + +class AffectedEntityTypeDef(BaseModel): + entityArn: Optional[str] = None + eventArn: Optional[str] = None + entityValue: Optional[str] = None + entityUrl: Optional[str] = None + awsAccountId: Optional[str] = None + lastUpdatedTime: Optional[datetime] = None + statusCode: Optional[entityStatusCodeType] = None + tags: Optional[Dict[str, str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAffectedAccountsForOrganizationRequestRequestTypeDef(BaseModel): + eventArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class EntityAccountFilterTypeDef(BaseModel): + eventArn: str + awsAccountId: Optional[str] = None + statusCodes: Optional[Sequence[entityStatusCodeType]] = None + +class EventAccountFilterTypeDef(BaseModel): + eventArn: str + awsAccountId: Optional[str] = None + +class OrganizationAffectedEntitiesErrorItemTypeDef(BaseModel): + awsAccountId: Optional[str] = None + eventArn: Optional[str] = None + errorName: Optional[str] = None + errorMessage: Optional[str] = None + +class DescribeEntityAggregatesForOrganizationRequestRequestTypeDef(BaseModel): + eventArns: Sequence[str] + awsAccountIds: Optional[Sequence[str]] = None + +class DescribeEntityAggregatesRequestRequestTypeDef(BaseModel): + eventArns: Optional[Sequence[str]] = None + +class EntityAggregateTypeDef(BaseModel): + eventArn: Optional[str] = None + count: Optional[int] = None + statuses: Optional[Dict[entityStatusCodeType, int]] = None + +class EventAggregateTypeDef(BaseModel): + aggregateValue: Optional[str] = None + count: Optional[int] = None + +class OrganizationEventDetailsErrorItemTypeDef(BaseModel): + awsAccountId: Optional[str] = None + eventArn: Optional[str] = None + errorName: Optional[str] = None + errorMessage: Optional[str] = None + +class DescribeEventDetailsRequestRequestTypeDef(BaseModel): + eventArns: Sequence[str] + locale: Optional[str] = None + +class EventDetailsErrorItemTypeDef(BaseModel): + eventArn: Optional[str] = None + errorName: Optional[str] = None + errorMessage: Optional[str] = None + +class EventTypeFilterTypeDef(BaseModel): + eventTypeCodes: Optional[Sequence[str]] = None + services: Optional[Sequence[str]] = None + eventTypeCategories: Optional[Sequence[eventTypeCategoryType]] = None + +class EventTypeTypeDef(BaseModel): + service: Optional[str] = None + code: Optional[str] = None + category: Optional[eventTypeCategoryType] = None + +class OrganizationEventTypeDef(BaseModel): + arn: Optional[str] = None + service: Optional[str] = None + eventTypeCode: Optional[str] = None + eventTypeCategory: Optional[eventTypeCategoryType] = None + eventScopeCode: Optional[eventScopeCodeType] = None + region: Optional[str] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + statusCode: Optional[eventStatusCodeType] = None + +class EventTypeDef(BaseModel): + arn: Optional[str] = None + service: Optional[str] = None + eventTypeCode: Optional[str] = None + eventTypeCategory: Optional[eventTypeCategoryType] = None + region: Optional[str] = None + availabilityZone: Optional[str] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + statusCode: Optional[eventStatusCodeType] = None + eventScopeCode: Optional[eventScopeCodeType] = None + +class EventDescriptionTypeDef(BaseModel): + latestDescription: Optional[str] = None + +class OrganizationEntityAggregateTypeDef(BaseModel): + eventArn: Optional[str] = None + count: Optional[int] = None + statuses: Optional[Dict[entityStatusCodeType, int]] = None + accounts: Optional[List[AccountEntityAggregateTypeDef]] = None + +class DateTimeRangeTypeDef(BaseModel): + from: Optional[TimestampTypeDef] = None + to: Optional[TimestampTypeDef] = None + +class DescribeAffectedAccountsForOrganizationRequestDescribeAffectedAccountsForOrganizationPaginateTypeDef(BaseModel): + eventArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAffectedAccountsForOrganizationResponseTypeDef(BaseModel): + affectedAccounts: List[str] + eventScopeCode: eventScopeCodeType + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAffectedEntitiesResponseTypeDef(BaseModel): + entities: List[AffectedEntityTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHealthServiceStatusForOrganizationResponseTypeDef(BaseModel): + healthServiceAccessStatusForOrganization: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAffectedEntitiesForOrganizationRequestDescribeAffectedEntitiesForOrganizationPaginateTypeDef(BaseModel): + organizationEntityFilters: Optional[Sequence[EventAccountFilterTypeDef]] = None + locale: Optional[str] = None + organizationEntityAccountFilters: Optional[Sequence[EntityAccountFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAffectedEntitiesForOrganizationRequestRequestTypeDef(BaseModel): + organizationEntityFilters: Optional[Sequence[EventAccountFilterTypeDef]] = None + locale: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + organizationEntityAccountFilters: Optional[Sequence[EntityAccountFilterTypeDef]] = None + +class DescribeEventDetailsForOrganizationRequestRequestTypeDef(BaseModel): + organizationEventDetailFilters: Sequence[EventAccountFilterTypeDef] + locale: Optional[str] = None + +class DescribeAffectedEntitiesForOrganizationResponseTypeDef(BaseModel): + entities: List[AffectedEntityTypeDef] + failedSet: List[OrganizationAffectedEntitiesErrorItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEntityAggregatesResponseTypeDef(BaseModel): + entityAggregates: List[EntityAggregateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventAggregatesResponseTypeDef(BaseModel): + eventAggregates: List[EventAggregateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventTypesRequestDescribeEventTypesPaginateTypeDef(BaseModel): + filter: Optional[EventTypeFilterTypeDef] = None + locale: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventTypesRequestRequestTypeDef(BaseModel): + filter: Optional[EventTypeFilterTypeDef] = None + locale: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeEventTypesResponseTypeDef(BaseModel): + eventTypes: List[EventTypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventsForOrganizationResponseTypeDef(BaseModel): + events: List[OrganizationEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventsResponseTypeDef(BaseModel): + events: List[EventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventDetailsTypeDef(BaseModel): + event: Optional[EventTypeDef] = None + eventDescription: Optional[EventDescriptionTypeDef] = None + eventMetadata: Optional[Dict[str, str]] = None + +class OrganizationEventDetailsTypeDef(BaseModel): + awsAccountId: Optional[str] = None + event: Optional[EventTypeDef] = None + eventDescription: Optional[EventDescriptionTypeDef] = None + eventMetadata: Optional[Dict[str, str]] = None + +class DescribeEntityAggregatesForOrganizationResponseTypeDef(BaseModel): + organizationEntityAggregates: List[OrganizationEntityAggregateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EntityFilterTypeDef(BaseModel): + eventArns: Sequence[str] + entityArns: Optional[Sequence[str]] = None + entityValues: Optional[Sequence[str]] = None + lastUpdatedTimes: Optional[Sequence[DateTimeRangeTypeDef]] = None + tags: Optional[Sequence[Mapping[str, str]]] = None + statusCodes: Optional[Sequence[entityStatusCodeType]] = None + +class EventFilterTypeDef(BaseModel): + eventArns: Optional[Sequence[str]] = None + eventTypeCodes: Optional[Sequence[str]] = None + services: Optional[Sequence[str]] = None + regions: Optional[Sequence[str]] = None + availabilityZones: Optional[Sequence[str]] = None + startTimes: Optional[Sequence[DateTimeRangeTypeDef]] = None + endTimes: Optional[Sequence[DateTimeRangeTypeDef]] = None + lastUpdatedTimes: Optional[Sequence[DateTimeRangeTypeDef]] = None + entityArns: Optional[Sequence[str]] = None + entityValues: Optional[Sequence[str]] = None + eventTypeCategories: Optional[Sequence[eventTypeCategoryType]] = None + tags: Optional[Sequence[Mapping[str, str]]] = None + eventStatusCodes: Optional[Sequence[eventStatusCodeType]] = None + +class OrganizationEventFilterTypeDef(BaseModel): + eventTypeCodes: Optional[Sequence[str]] = None + awsAccountIds: Optional[Sequence[str]] = None + services: Optional[Sequence[str]] = None + regions: Optional[Sequence[str]] = None + startTime: Optional[DateTimeRangeTypeDef] = None + endTime: Optional[DateTimeRangeTypeDef] = None + lastUpdatedTime: Optional[DateTimeRangeTypeDef] = None + entityArns: Optional[Sequence[str]] = None + entityValues: Optional[Sequence[str]] = None + eventTypeCategories: Optional[Sequence[eventTypeCategoryType]] = None + eventStatusCodes: Optional[Sequence[eventStatusCodeType]] = None + +class DescribeEventDetailsResponseTypeDef(BaseModel): + successfulSet: List[EventDetailsTypeDef] + failedSet: List[EventDetailsErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventDetailsForOrganizationResponseTypeDef(BaseModel): + successfulSet: List[OrganizationEventDetailsTypeDef] + failedSet: List[OrganizationEventDetailsErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAffectedEntitiesRequestDescribeAffectedEntitiesPaginateTypeDef(BaseModel): + filter: EntityFilterTypeDef + locale: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAffectedEntitiesRequestRequestTypeDef(BaseModel): + filter: EntityFilterTypeDef + locale: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeEventAggregatesRequestDescribeEventAggregatesPaginateTypeDef(BaseModel): + aggregateField: Literal["eventTypeCategory"] + filter: Optional[EventFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventAggregatesRequestRequestTypeDef(BaseModel): + aggregateField: Literal["eventTypeCategory"] + filter: Optional[EventFilterTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeEventsRequestDescribeEventsPaginateTypeDef(BaseModel): + filter: Optional[EventFilterTypeDef] = None + locale: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsRequestRequestTypeDef(BaseModel): + filter: Optional[EventFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + locale: Optional[str] = None + +class DescribeEventsForOrganizationRequestDescribeEventsForOrganizationPaginateTypeDef(BaseModel): + filter: Optional[OrganizationEventFilterTypeDef] = None + locale: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsForOrganizationRequestRequestTypeDef(BaseModel): + filter: Optional[OrganizationEventFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + locale: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/health_constants.py b/aws_resource_validator/pydantic_models/health_constants.py new file mode 100644 index 00000000..768dfb39 --- /dev/null +++ b/aws_resource_validator/pydantic_models/health_constants.py @@ -0,0 +1,409 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeAffectedAccountsForOrganizationPaginatorName = Literal["describe_affected_accounts_for_organization"] +DescribeAffectedEntitiesForOrganizationPaginatorName = Literal["describe_affected_entities_for_organization"] +DescribeAffectedEntitiesPaginatorName = Literal["describe_affected_entities"] +DescribeEventAggregatesPaginatorName = Literal["describe_event_aggregates"] +DescribeEventTypesPaginatorName = Literal["describe_event_types"] +DescribeEventsForOrganizationPaginatorName = Literal["describe_events_for_organization"] +DescribeEventsPaginatorName = Literal["describe_events"] +entityStatusCodeType = Literal["IMPAIRED", "PENDING", "RESOLVED", "UNIMPAIRED", "UNKNOWN"] +eventAggregateFieldType = Literal["eventTypeCategory"] +eventScopeCodeType = Literal["ACCOUNT_SPECIFIC", "NONE", "PUBLIC"] +eventStatusCodeType = Literal["closed", "open", "upcoming"] +eventTypeCategoryType = Literal["accountNotification", "investigation", "issue", "scheduledChange"] +HealthServiceName = Literal["health"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_affected_accounts_for_organization", + "describe_affected_entities", + "describe_affected_entities_for_organization", + "describe_event_aggregates", + "describe_event_types", + "describe_events", + "describe_events_for_organization",] +RegionName = Literal["us-east-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/healthlake_classes.py b/aws_resource_validator/pydantic_models/healthlake_classes.py new file mode 100644 index 00000000..03c009ed --- /dev/null +++ b/aws_resource_validator/pydantic_models/healthlake_classes.py @@ -0,0 +1,236 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.healthlake_constants import * + +class IdentityProviderConfigurationTypeDef(BaseModel): + AuthorizationStrategy: AuthorizationStrategyType + FineGrainedAuthorizationEnabled: Optional[bool] = None + Metadata: Optional[str] = None + IdpLambdaArn: Optional[str] = None + +class PreloadDataConfigTypeDef(BaseModel): + PreloadDataType: Literal["SYNTHEA"] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ErrorCauseTypeDef(BaseModel): + ErrorMessage: Optional[str] = None + ErrorCategory: Optional[ErrorCategoryType] = None + +class DeleteFHIRDatastoreRequestRequestTypeDef(BaseModel): + DatastoreId: str + +class DescribeFHIRDatastoreRequestRequestTypeDef(BaseModel): + DatastoreId: str + +class DescribeFHIRExportJobRequestRequestTypeDef(BaseModel): + DatastoreId: str + JobId: str + +class DescribeFHIRImportJobRequestRequestTypeDef(BaseModel): + DatastoreId: str + JobId: str + +class InputDataConfigTypeDef(BaseModel): + S3Uri: Optional[str] = None + +class JobProgressReportTypeDef(BaseModel): + TotalNumberOfScannedFiles: Optional[int] = None + TotalSizeOfScannedFilesInMB: Optional[float] = None + TotalNumberOfImportedFiles: Optional[int] = None + TotalNumberOfResourcesScanned: Optional[int] = None + TotalNumberOfResourcesImported: Optional[int] = None + TotalNumberOfResourcesWithCustomerError: Optional[int] = None + TotalNumberOfFilesReadWithCustomerError: Optional[int] = None + Throughput: Optional[float] = None + +class KmsEncryptionConfigTypeDef(BaseModel): + CmkType: CmkTypeType + KmsKeyId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class S3ConfigurationTypeDef(BaseModel): + S3Uri: str + KmsKeyId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateFHIRDatastoreResponseTypeDef(BaseModel): + DatastoreId: str + DatastoreArn: str + DatastoreStatus: DatastoreStatusType + DatastoreEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFHIRDatastoreResponseTypeDef(BaseModel): + DatastoreId: str + DatastoreArn: str + DatastoreStatus: DatastoreStatusType + DatastoreEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartFHIRExportJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + DatastoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFHIRImportJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + DatastoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatastoreFilterTypeDef(BaseModel): + DatastoreName: Optional[str] = None + DatastoreStatus: Optional[DatastoreStatusType] = None + CreatedBefore: Optional[TimestampTypeDef] = None + CreatedAfter: Optional[TimestampTypeDef] = None + +class ListFHIRExportJobsRequestRequestTypeDef(BaseModel): + DatastoreId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmittedBefore: Optional[TimestampTypeDef] = None + SubmittedAfter: Optional[TimestampTypeDef] = None + +class ListFHIRImportJobsRequestRequestTypeDef(BaseModel): + DatastoreId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmittedBefore: Optional[TimestampTypeDef] = None + SubmittedAfter: Optional[TimestampTypeDef] = None + +class SseConfigurationTypeDef(BaseModel): + KmsEncryptionConfig: KmsEncryptionConfigTypeDef + +class OutputDataConfigTypeDef(BaseModel): + S3Configuration: Optional[S3ConfigurationTypeDef] = None + +class ListFHIRDatastoresRequestRequestTypeDef(BaseModel): + Filter: Optional[DatastoreFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class CreateFHIRDatastoreRequestRequestTypeDef(BaseModel): + DatastoreTypeVersion: Literal["R4"] + DatastoreName: Optional[str] = None + SseConfiguration: Optional[SseConfigurationTypeDef] = None + PreloadDataConfig: Optional[PreloadDataConfigTypeDef] = None + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + IdentityProviderConfiguration: Optional[IdentityProviderConfigurationTypeDef] = None + +class DatastorePropertiesTypeDef(BaseModel): + DatastoreId: str + DatastoreArn: str + DatastoreStatus: DatastoreStatusType + DatastoreTypeVersion: Literal["R4"] + DatastoreEndpoint: str + DatastoreName: Optional[str] = None + CreatedAt: Optional[datetime] = None + SseConfiguration: Optional[SseConfigurationTypeDef] = None + PreloadDataConfig: Optional[PreloadDataConfigTypeDef] = None + IdentityProviderConfiguration: Optional[IdentityProviderConfigurationTypeDef] = None + ErrorCause: Optional[ErrorCauseTypeDef] = None + +class ExportJobPropertiesTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + SubmitTime: datetime + DatastoreId: str + OutputDataConfig: OutputDataConfigTypeDef + JobName: Optional[str] = None + EndTime: Optional[datetime] = None + DataAccessRoleArn: Optional[str] = None + Message: Optional[str] = None + +class ImportJobPropertiesTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + SubmitTime: datetime + DatastoreId: str + InputDataConfig: InputDataConfigTypeDef + JobName: Optional[str] = None + EndTime: Optional[datetime] = None + JobOutputDataConfig: Optional[OutputDataConfigTypeDef] = None + JobProgressReport: Optional[JobProgressReportTypeDef] = None + DataAccessRoleArn: Optional[str] = None + Message: Optional[str] = None + +class StartFHIRExportJobRequestRequestTypeDef(BaseModel): + OutputDataConfig: OutputDataConfigTypeDef + DatastoreId: str + DataAccessRoleArn: str + ClientToken: str + JobName: Optional[str] = None + +class StartFHIRImportJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + JobOutputDataConfig: OutputDataConfigTypeDef + DatastoreId: str + DataAccessRoleArn: str + ClientToken: str + JobName: Optional[str] = None + +class DescribeFHIRDatastoreResponseTypeDef(BaseModel): + DatastoreProperties: DatastorePropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFHIRDatastoresResponseTypeDef(BaseModel): + DatastorePropertiesList: List[DatastorePropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFHIRExportJobResponseTypeDef(BaseModel): + ExportJobProperties: ExportJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFHIRExportJobsResponseTypeDef(BaseModel): + ExportJobPropertiesList: List[ExportJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFHIRImportJobResponseTypeDef(BaseModel): + ImportJobProperties: ImportJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFHIRImportJobsResponseTypeDef(BaseModel): + ImportJobPropertiesList: List[ImportJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/healthlake_constants.py b/aws_resource_validator/pydantic_models/healthlake_constants.py new file mode 100644 index 00000000..d1cb1c94 --- /dev/null +++ b/aws_resource_validator/pydantic_models/healthlake_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthorizationStrategyType = Literal["AWS_AUTH", "SMART_ON_FHIR_V1"] +CmkTypeType = Literal["AWS_OWNED_KMS_KEY", "CUSTOMER_MANAGED_KMS_KEY"] +DatastoreStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETED", "DELETING"] +ErrorCategoryType = Literal["NON_RETRYABLE_ERROR", "RETRYABLE_ERROR"] +FHIRVersionType = Literal["R4"] +JobStatusType = Literal["CANCEL_COMPLETED", + "CANCEL_FAILED", + "CANCEL_IN_PROGRESS", + "CANCEL_SUBMITTED", + "COMPLETED", + "COMPLETED_WITH_ERRORS", + "FAILED", + "IN_PROGRESS", + "SUBMITTED",] +PreloadDataTypeType = Literal["SYNTHEA"] +HealthLakeServiceName = Literal["healthlake"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-south-1", "us-east-1", "us-east-2", "us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/iam_classes.py b/aws_resource_validator/pydantic_models/iam_classes.py new file mode 100644 index 00000000..357c7039 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iam_classes.py @@ -0,0 +1,1962 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iam_constants import * + +class AccessDetailTypeDef(BaseModel): + ServiceName: str + ServiceNamespace: str + Region: Optional[str] = None + EntityPath: Optional[str] = None + LastAuthenticatedTime: Optional[datetime] = None + TotalAuthenticatedEntities: Optional[int] = None + +class AccessKeyLastUsedTypeDef(BaseModel): + LastUsedDate: datetime + ServiceName: str + Region: str + +class AccessKeyMetadataTypeDef(BaseModel): + UserName: Optional[str] = None + AccessKeyId: Optional[str] = None + Status: Optional[statusTypeType] = None + CreateDate: Optional[datetime] = None + +class AccessKeyTypeDef(BaseModel): + UserName: str + AccessKeyId: str + Status: statusTypeType + SecretAccessKey: str + CreateDate: Optional[datetime] = None + +class AddClientIDToOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + ClientID: str + +class AddRoleToInstanceProfileRequestInstanceProfileAddRoleTypeDef(BaseModel): + RoleName: str + +class AddRoleToInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + RoleName: str + +class AddUserToGroupRequestGroupAddUserTypeDef(BaseModel): + UserName: str + +class AddUserToGroupRequestRequestTypeDef(BaseModel): + GroupName: str + UserName: str + +class AddUserToGroupRequestUserAddGroupTypeDef(BaseModel): + GroupName: str + +class AttachGroupPolicyRequestGroupAttachPolicyTypeDef(BaseModel): + PolicyArn: str + +class AttachGroupPolicyRequestPolicyAttachGroupTypeDef(BaseModel): + GroupName: str + +class AttachGroupPolicyRequestRequestTypeDef(BaseModel): + GroupName: str + PolicyArn: str + +class AttachRolePolicyRequestPolicyAttachRoleTypeDef(BaseModel): + RoleName: str + +class AttachRolePolicyRequestRequestTypeDef(BaseModel): + RoleName: str + PolicyArn: str + +class AttachRolePolicyRequestRoleAttachPolicyTypeDef(BaseModel): + PolicyArn: str + +class AttachUserPolicyRequestPolicyAttachUserTypeDef(BaseModel): + UserName: str + +class AttachUserPolicyRequestRequestTypeDef(BaseModel): + UserName: str + PolicyArn: str + +class AttachUserPolicyRequestUserAttachPolicyTypeDef(BaseModel): + PolicyArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AttachedPermissionsBoundaryTypeDef(BaseModel): + PermissionsBoundaryType: Optional[Literal["PermissionsBoundaryPolicy"]] = None + PermissionsBoundaryArn: Optional[str] = None + +class AttachedPolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyArn: Optional[str] = None + +class ChangePasswordRequestRequestTypeDef(BaseModel): + OldPassword: str + NewPassword: str + +class ChangePasswordRequestServiceResourceChangePasswordTypeDef(BaseModel): + OldPassword: str + NewPassword: str + +class ContextEntryTypeDef(BaseModel): + ContextKeyName: Optional[str] = None + ContextKeyValues: Optional[Sequence[str]] = None + ContextKeyType: Optional[ContextKeyTypeEnumType] = None + +class CreateAccessKeyRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + +class CreateAccountAliasRequestRequestTypeDef(BaseModel): + AccountAlias: str + +class CreateAccountAliasRequestServiceResourceCreateAccountAliasTypeDef(BaseModel): + AccountAlias: str + +class CreateGroupRequestGroupCreateTypeDef(BaseModel): + Path: Optional[str] = None + +class CreateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + Path: Optional[str] = None + +class CreateGroupRequestServiceResourceCreateGroupTypeDef(BaseModel): + GroupName: str + Path: Optional[str] = None + +class GroupTypeDef(BaseModel): + Path: str + GroupName: str + GroupId: str + Arn: str + CreateDate: datetime + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateLoginProfileRequestLoginProfileCreateTypeDef(BaseModel): + Password: str + PasswordResetRequired: Optional[bool] = None + +class CreateLoginProfileRequestRequestTypeDef(BaseModel): + UserName: str + Password: str + PasswordResetRequired: Optional[bool] = None + +class CreateLoginProfileRequestUserCreateLoginProfileTypeDef(BaseModel): + Password: str + PasswordResetRequired: Optional[bool] = None + +class LoginProfileTypeDef(BaseModel): + UserName: str + CreateDate: datetime + PasswordResetRequired: Optional[bool] = None + +class CreatePolicyVersionRequestPolicyCreateVersionTypeDef(BaseModel): + PolicyDocument: str + SetAsDefault: Optional[bool] = None + +class CreatePolicyVersionRequestRequestTypeDef(BaseModel): + PolicyArn: str + PolicyDocument: str + SetAsDefault: Optional[bool] = None + +class CreateServiceLinkedRoleRequestRequestTypeDef(BaseModel): + AWSServiceName: str + Description: Optional[str] = None + CustomSuffix: Optional[str] = None + +class CreateServiceSpecificCredentialRequestRequestTypeDef(BaseModel): + UserName: str + ServiceName: str + +class ServiceSpecificCredentialTypeDef(BaseModel): + CreateDate: datetime + ServiceName: str + ServiceUserName: str + ServicePassword: str + ServiceSpecificCredentialId: str + UserName: str + Status: statusTypeType + +class DeactivateMFADeviceRequestRequestTypeDef(BaseModel): + UserName: str + SerialNumber: str + +class DeleteAccessKeyRequestRequestTypeDef(BaseModel): + AccessKeyId: str + UserName: Optional[str] = None + +class DeleteAccountAliasRequestRequestTypeDef(BaseModel): + AccountAlias: str + +class DeleteGroupPolicyRequestRequestTypeDef(BaseModel): + GroupName: str + PolicyName: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + GroupName: str + +class DeleteInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + +class DeleteLoginProfileRequestRequestTypeDef(BaseModel): + UserName: str + +class DeleteOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + +class DeletePolicyRequestRequestTypeDef(BaseModel): + PolicyArn: str + +class DeletePolicyVersionRequestRequestTypeDef(BaseModel): + PolicyArn: str + VersionId: str + +class DeleteRolePermissionsBoundaryRequestRequestTypeDef(BaseModel): + RoleName: str + +class DeleteRolePolicyRequestRequestTypeDef(BaseModel): + RoleName: str + PolicyName: str + +class DeleteRoleRequestRequestTypeDef(BaseModel): + RoleName: str + +class DeleteSAMLProviderRequestRequestTypeDef(BaseModel): + SAMLProviderArn: str + +class DeleteSSHPublicKeyRequestRequestTypeDef(BaseModel): + UserName: str + SSHPublicKeyId: str + +class DeleteServerCertificateRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + +class DeleteServiceLinkedRoleRequestRequestTypeDef(BaseModel): + RoleName: str + +class DeleteServiceSpecificCredentialRequestRequestTypeDef(BaseModel): + ServiceSpecificCredentialId: str + UserName: Optional[str] = None + +class DeleteSigningCertificateRequestRequestTypeDef(BaseModel): + CertificateId: str + UserName: Optional[str] = None + +class DeleteUserPermissionsBoundaryRequestRequestTypeDef(BaseModel): + UserName: str + +class DeleteUserPolicyRequestRequestTypeDef(BaseModel): + UserName: str + PolicyName: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + UserName: str + +class DeleteVirtualMFADeviceRequestRequestTypeDef(BaseModel): + SerialNumber: str + +class RoleUsageTypeTypeDef(BaseModel): + Region: Optional[str] = None + Resources: Optional[List[str]] = None + +class DetachGroupPolicyRequestGroupDetachPolicyTypeDef(BaseModel): + PolicyArn: str + +class DetachGroupPolicyRequestPolicyDetachGroupTypeDef(BaseModel): + GroupName: str + +class DetachGroupPolicyRequestRequestTypeDef(BaseModel): + GroupName: str + PolicyArn: str + +class DetachRolePolicyRequestPolicyDetachRoleTypeDef(BaseModel): + RoleName: str + +class DetachRolePolicyRequestRequestTypeDef(BaseModel): + RoleName: str + PolicyArn: str + +class DetachRolePolicyRequestRoleDetachPolicyTypeDef(BaseModel): + PolicyArn: str + +class DetachUserPolicyRequestPolicyDetachUserTypeDef(BaseModel): + UserName: str + +class DetachUserPolicyRequestRequestTypeDef(BaseModel): + UserName: str + PolicyArn: str + +class DetachUserPolicyRequestUserDetachPolicyTypeDef(BaseModel): + PolicyArn: str + +class EnableMFADeviceRequestMfaDeviceAssociateTypeDef(BaseModel): + AuthenticationCode1: str + AuthenticationCode2: str + +class EnableMFADeviceRequestRequestTypeDef(BaseModel): + UserName: str + SerialNumber: str + AuthenticationCode1: str + AuthenticationCode2: str + +class EnableMFADeviceRequestUserEnableMfaTypeDef(BaseModel): + SerialNumber: str + AuthenticationCode1: str + AuthenticationCode2: str + +class EntityInfoTypeDef(BaseModel): + Arn: str + Name: str + Type: policyOwnerEntityTypeType + Id: str + Path: Optional[str] = None + +class ErrorDetailsTypeDef(BaseModel): + Message: str + Code: str + +class OrganizationsDecisionDetailTypeDef(BaseModel): + AllowedByOrganizations: Optional[bool] = None + +class PermissionsBoundaryDecisionDetailTypeDef(BaseModel): + AllowedByPermissionsBoundary: Optional[bool] = None + +class GenerateOrganizationsAccessReportRequestRequestTypeDef(BaseModel): + EntityPath: str + OrganizationsPolicyId: Optional[str] = None + +class GenerateServiceLastAccessedDetailsRequestRequestTypeDef(BaseModel): + Arn: str + Granularity: Optional[AccessAdvisorUsageGranularityTypeType] = None + +class GetAccessKeyLastUsedRequestRequestTypeDef(BaseModel): + AccessKeyId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetAccountAuthorizationDetailsRequestRequestTypeDef(BaseModel): + Filter: Optional[Sequence[EntityTypeType]] = None + MaxItems: Optional[int] = None + Marker: Optional[str] = None + +class PasswordPolicyTypeDef(BaseModel): + MinimumPasswordLength: Optional[int] = None + RequireSymbols: Optional[bool] = None + RequireNumbers: Optional[bool] = None + RequireUppercaseCharacters: Optional[bool] = None + RequireLowercaseCharacters: Optional[bool] = None + AllowUsersToChangePassword: Optional[bool] = None + ExpirePasswords: Optional[bool] = None + MaxPasswordAge: Optional[int] = None + PasswordReusePrevention: Optional[int] = None + HardExpiry: Optional[bool] = None + +class GetContextKeysForCustomPolicyRequestRequestTypeDef(BaseModel): + PolicyInputList: Sequence[str] + +class GetContextKeysForPrincipalPolicyRequestRequestTypeDef(BaseModel): + PolicySourceArn: str + PolicyInputList: Optional[Sequence[str]] = None + +class GetGroupPolicyRequestRequestTypeDef(BaseModel): + GroupName: str + PolicyName: str + +class GetGroupRequestRequestTypeDef(BaseModel): + GroupName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + +class GetLoginProfileRequestRequestTypeDef(BaseModel): + UserName: str + +class GetMFADeviceRequestRequestTypeDef(BaseModel): + SerialNumber: str + UserName: Optional[str] = None + +class GetOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + +class GetOrganizationsAccessReportRequestRequestTypeDef(BaseModel): + JobId: str + MaxItems: Optional[int] = None + Marker: Optional[str] = None + SortKey: Optional[sortKeyTypeType] = None + +class GetPolicyRequestRequestTypeDef(BaseModel): + PolicyArn: str + +class GetPolicyVersionRequestRequestTypeDef(BaseModel): + PolicyArn: str + VersionId: str + +class GetRolePolicyRequestRequestTypeDef(BaseModel): + RoleName: str + PolicyName: str + +class GetRoleRequestRequestTypeDef(BaseModel): + RoleName: str + +class GetSAMLProviderRequestRequestTypeDef(BaseModel): + SAMLProviderArn: str + +class GetSSHPublicKeyRequestRequestTypeDef(BaseModel): + UserName: str + SSHPublicKeyId: str + Encoding: encodingTypeType + +class SSHPublicKeyTypeDef(BaseModel): + UserName: str + SSHPublicKeyId: str + Fingerprint: str + SSHPublicKeyBody: str + Status: statusTypeType + UploadDate: Optional[datetime] = None + +class GetServerCertificateRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + +class GetServiceLastAccessedDetailsRequestRequestTypeDef(BaseModel): + JobId: str + MaxItems: Optional[int] = None + Marker: Optional[str] = None + +class GetServiceLastAccessedDetailsWithEntitiesRequestRequestTypeDef(BaseModel): + JobId: str + ServiceNamespace: str + MaxItems: Optional[int] = None + Marker: Optional[str] = None + +class GetServiceLinkedRoleDeletionStatusRequestRequestTypeDef(BaseModel): + DeletionTaskId: str + +class GetUserPolicyRequestRequestTypeDef(BaseModel): + UserName: str + PolicyName: str + +class GetUserRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + +class ListAccessKeysRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListAccountAliasesRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListAttachedGroupPoliciesRequestRequestTypeDef(BaseModel): + GroupName: str + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListAttachedRolePoliciesRequestRequestTypeDef(BaseModel): + RoleName: str + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListAttachedUserPoliciesRequestRequestTypeDef(BaseModel): + UserName: str + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListEntitiesForPolicyRequestRequestTypeDef(BaseModel): + PolicyArn: str + EntityFilter: Optional[EntityTypeType] = None + PathPrefix: Optional[str] = None + PolicyUsageFilter: Optional[PolicyUsageTypeType] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class PolicyGroupTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + +class PolicyRoleTypeDef(BaseModel): + RoleName: Optional[str] = None + RoleId: Optional[str] = None + +class PolicyUserTypeDef(BaseModel): + UserName: Optional[str] = None + UserId: Optional[str] = None + +class ListGroupPoliciesRequestRequestTypeDef(BaseModel): + GroupName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListGroupsForUserRequestRequestTypeDef(BaseModel): + UserName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListInstanceProfileTagsRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListInstanceProfilesForRoleRequestRequestTypeDef(BaseModel): + RoleName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListInstanceProfilesRequestRequestTypeDef(BaseModel): + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListMFADeviceTagsRequestRequestTypeDef(BaseModel): + SerialNumber: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListMFADevicesRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class MFADeviceTypeDef(BaseModel): + UserName: str + SerialNumber: str + EnableDate: datetime + +class ListOpenIDConnectProviderTagsRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class OpenIDConnectProviderListEntryTypeDef(BaseModel): + Arn: Optional[str] = None + +class PolicyGrantingServiceAccessTypeDef(BaseModel): + PolicyName: str + PolicyType: policyTypeType + PolicyArn: Optional[str] = None + EntityType: Optional[policyOwnerEntityTypeType] = None + EntityName: Optional[str] = None + +class ListPoliciesGrantingServiceAccessRequestRequestTypeDef(BaseModel): + Arn: str + ServiceNamespaces: Sequence[str] + Marker: Optional[str] = None + +class ListPoliciesRequestRequestTypeDef(BaseModel): + Scope: Optional[policyScopeTypeType] = None + OnlyAttached: Optional[bool] = None + PathPrefix: Optional[str] = None + PolicyUsageFilter: Optional[PolicyUsageTypeType] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListPolicyTagsRequestRequestTypeDef(BaseModel): + PolicyArn: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListPolicyVersionsRequestRequestTypeDef(BaseModel): + PolicyArn: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListRolePoliciesRequestRequestTypeDef(BaseModel): + RoleName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListRoleTagsRequestRequestTypeDef(BaseModel): + RoleName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListRolesRequestRequestTypeDef(BaseModel): + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListSAMLProviderTagsRequestRequestTypeDef(BaseModel): + SAMLProviderArn: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class SAMLProviderListEntryTypeDef(BaseModel): + Arn: Optional[str] = None + ValidUntil: Optional[datetime] = None + CreateDate: Optional[datetime] = None + +class ListSSHPublicKeysRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class SSHPublicKeyMetadataTypeDef(BaseModel): + UserName: str + SSHPublicKeyId: str + Status: statusTypeType + UploadDate: datetime + +class ListServerCertificateTagsRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListServerCertificatesRequestRequestTypeDef(BaseModel): + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ServerCertificateMetadataTypeDef(BaseModel): + Path: str + ServerCertificateName: str + ServerCertificateId: str + Arn: str + UploadDate: Optional[datetime] = None + Expiration: Optional[datetime] = None + +class ListServiceSpecificCredentialsRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + ServiceName: Optional[str] = None + +class ServiceSpecificCredentialMetadataTypeDef(BaseModel): + UserName: str + Status: statusTypeType + ServiceUserName: str + CreateDate: datetime + ServiceSpecificCredentialId: str + ServiceName: str + +class ListSigningCertificatesRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class SigningCertificateTypeDef(BaseModel): + UserName: str + CertificateId: str + CertificateBody: str + Status: statusTypeType + UploadDate: Optional[datetime] = None + +class ListUserPoliciesRequestRequestTypeDef(BaseModel): + UserName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListUserTagsRequestRequestTypeDef(BaseModel): + UserName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + PathPrefix: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListVirtualMFADevicesRequestRequestTypeDef(BaseModel): + AssignmentStatus: Optional[assignmentStatusTypeType] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class PolicyDocumentStatementTypeDef(BaseModel): + Effect: str + Resource: Union[str, List[str]] + Sid: str + Action: Union[str, List[str]] + +class PositionTypeDef(BaseModel): + Line: Optional[int] = None + Column: Optional[int] = None + +class PutGroupPolicyRequestGroupCreatePolicyTypeDef(BaseModel): + PolicyName: str + PolicyDocument: str + +class PutGroupPolicyRequestGroupPolicyPutTypeDef(BaseModel): + PolicyDocument: str + +class PutGroupPolicyRequestRequestTypeDef(BaseModel): + GroupName: str + PolicyName: str + PolicyDocument: str + +class PutRolePermissionsBoundaryRequestRequestTypeDef(BaseModel): + RoleName: str + PermissionsBoundary: str + +class PutRolePolicyRequestRequestTypeDef(BaseModel): + RoleName: str + PolicyName: str + PolicyDocument: str + +class PutRolePolicyRequestRolePolicyPutTypeDef(BaseModel): + PolicyDocument: str + +class PutUserPermissionsBoundaryRequestRequestTypeDef(BaseModel): + UserName: str + PermissionsBoundary: str + +class PutUserPolicyRequestRequestTypeDef(BaseModel): + UserName: str + PolicyName: str + PolicyDocument: str + +class PutUserPolicyRequestUserCreatePolicyTypeDef(BaseModel): + PolicyName: str + PolicyDocument: str + +class PutUserPolicyRequestUserPolicyPutTypeDef(BaseModel): + PolicyDocument: str + +class RemoveClientIDFromOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + ClientID: str + +class RemoveRoleFromInstanceProfileRequestInstanceProfileRemoveRoleTypeDef(BaseModel): + RoleName: str + +class RemoveRoleFromInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + RoleName: str + +class RemoveUserFromGroupRequestGroupRemoveUserTypeDef(BaseModel): + UserName: str + +class RemoveUserFromGroupRequestRequestTypeDef(BaseModel): + GroupName: str + UserName: str + +class RemoveUserFromGroupRequestUserRemoveGroupTypeDef(BaseModel): + GroupName: str + +class ResetServiceSpecificCredentialRequestRequestTypeDef(BaseModel): + ServiceSpecificCredentialId: str + UserName: Optional[str] = None + +class ResyncMFADeviceRequestMfaDeviceResyncTypeDef(BaseModel): + AuthenticationCode1: str + AuthenticationCode2: str + +class ResyncMFADeviceRequestRequestTypeDef(BaseModel): + UserName: str + SerialNumber: str + AuthenticationCode1: str + AuthenticationCode2: str + +class RoleLastUsedTypeDef(BaseModel): + LastUsedDate: Optional[datetime] = None + Region: Optional[str] = None + +class TrackedActionLastAccessedTypeDef(BaseModel): + ActionName: Optional[str] = None + LastAccessedEntity: Optional[str] = None + LastAccessedTime: Optional[datetime] = None + LastAccessedRegion: Optional[str] = None + +class SetDefaultPolicyVersionRequestRequestTypeDef(BaseModel): + PolicyArn: str + VersionId: str + +class SetSecurityTokenServicePreferencesRequestRequestTypeDef(BaseModel): + GlobalEndpointTokenVersion: globalEndpointTokenVersionType + +class UntagInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + TagKeys: Sequence[str] + +class UntagMFADeviceRequestRequestTypeDef(BaseModel): + SerialNumber: str + TagKeys: Sequence[str] + +class UntagOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + TagKeys: Sequence[str] + +class UntagPolicyRequestRequestTypeDef(BaseModel): + PolicyArn: str + TagKeys: Sequence[str] + +class UntagRoleRequestRequestTypeDef(BaseModel): + RoleName: str + TagKeys: Sequence[str] + +class UntagSAMLProviderRequestRequestTypeDef(BaseModel): + SAMLProviderArn: str + TagKeys: Sequence[str] + +class UntagServerCertificateRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + TagKeys: Sequence[str] + +class UntagUserRequestRequestTypeDef(BaseModel): + UserName: str + TagKeys: Sequence[str] + +class UpdateAccessKeyRequestAccessKeyActivateTypeDef(BaseModel): + Status: Optional[statusTypeType] = None + +class UpdateAccessKeyRequestAccessKeyDeactivateTypeDef(BaseModel): + Status: Optional[statusTypeType] = None + +class UpdateAccessKeyRequestAccessKeyPairActivateTypeDef(BaseModel): + Status: Optional[statusTypeType] = None + +class UpdateAccessKeyRequestAccessKeyPairDeactivateTypeDef(BaseModel): + Status: Optional[statusTypeType] = None + +class UpdateAccessKeyRequestRequestTypeDef(BaseModel): + AccessKeyId: str + Status: statusTypeType + UserName: Optional[str] = None + +class UpdateAccountPasswordPolicyRequestAccountPasswordPolicyUpdateTypeDef(BaseModel): + MinimumPasswordLength: Optional[int] = None + RequireSymbols: Optional[bool] = None + RequireNumbers: Optional[bool] = None + RequireUppercaseCharacters: Optional[bool] = None + RequireLowercaseCharacters: Optional[bool] = None + AllowUsersToChangePassword: Optional[bool] = None + MaxPasswordAge: Optional[int] = None + PasswordReusePrevention: Optional[int] = None + HardExpiry: Optional[bool] = None + +class UpdateAccountPasswordPolicyRequestRequestTypeDef(BaseModel): + MinimumPasswordLength: Optional[int] = None + RequireSymbols: Optional[bool] = None + RequireNumbers: Optional[bool] = None + RequireUppercaseCharacters: Optional[bool] = None + RequireLowercaseCharacters: Optional[bool] = None + AllowUsersToChangePassword: Optional[bool] = None + MaxPasswordAge: Optional[int] = None + PasswordReusePrevention: Optional[int] = None + HardExpiry: Optional[bool] = None + +class UpdateAccountPasswordPolicyRequestServiceResourceCreateAccountPasswordPolicyTypeDef(BaseModel): + MinimumPasswordLength: Optional[int] = None + RequireSymbols: Optional[bool] = None + RequireNumbers: Optional[bool] = None + RequireUppercaseCharacters: Optional[bool] = None + RequireLowercaseCharacters: Optional[bool] = None + AllowUsersToChangePassword: Optional[bool] = None + MaxPasswordAge: Optional[int] = None + PasswordReusePrevention: Optional[int] = None + HardExpiry: Optional[bool] = None + +class UpdateAssumeRolePolicyRequestAssumeRolePolicyUpdateTypeDef(BaseModel): + PolicyDocument: str + +class UpdateAssumeRolePolicyRequestRequestTypeDef(BaseModel): + RoleName: str + PolicyDocument: str + +class UpdateGroupRequestGroupUpdateTypeDef(BaseModel): + NewPath: Optional[str] = None + NewGroupName: Optional[str] = None + +class UpdateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + NewPath: Optional[str] = None + NewGroupName: Optional[str] = None + +class UpdateLoginProfileRequestLoginProfileUpdateTypeDef(BaseModel): + Password: Optional[str] = None + PasswordResetRequired: Optional[bool] = None + +class UpdateLoginProfileRequestRequestTypeDef(BaseModel): + UserName: str + Password: Optional[str] = None + PasswordResetRequired: Optional[bool] = None + +class UpdateOpenIDConnectProviderThumbprintRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + ThumbprintList: Sequence[str] + +class UpdateRoleDescriptionRequestRequestTypeDef(BaseModel): + RoleName: str + Description: str + +class UpdateRoleRequestRequestTypeDef(BaseModel): + RoleName: str + Description: Optional[str] = None + MaxSessionDuration: Optional[int] = None + +class UpdateSAMLProviderRequestRequestTypeDef(BaseModel): + SAMLMetadataDocument: str + SAMLProviderArn: str + +class UpdateSAMLProviderRequestSamlProviderUpdateTypeDef(BaseModel): + SAMLMetadataDocument: str + +class UpdateSSHPublicKeyRequestRequestTypeDef(BaseModel): + UserName: str + SSHPublicKeyId: str + Status: statusTypeType + +class UpdateServerCertificateRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + NewPath: Optional[str] = None + NewServerCertificateName: Optional[str] = None + +class UpdateServerCertificateRequestServerCertificateUpdateTypeDef(BaseModel): + NewPath: Optional[str] = None + NewServerCertificateName: Optional[str] = None + +class UpdateServiceSpecificCredentialRequestRequestTypeDef(BaseModel): + ServiceSpecificCredentialId: str + Status: statusTypeType + UserName: Optional[str] = None + +class UpdateSigningCertificateRequestRequestTypeDef(BaseModel): + CertificateId: str + Status: statusTypeType + UserName: Optional[str] = None + +class UpdateSigningCertificateRequestSigningCertificateActivateTypeDef(BaseModel): + Status: Optional[statusTypeType] = None + +class UpdateSigningCertificateRequestSigningCertificateDeactivateTypeDef(BaseModel): + Status: Optional[statusTypeType] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + UserName: str + NewPath: Optional[str] = None + NewUserName: Optional[str] = None + +class UpdateUserRequestUserUpdateTypeDef(BaseModel): + NewPath: Optional[str] = None + NewUserName: Optional[str] = None + +class UploadSSHPublicKeyRequestRequestTypeDef(BaseModel): + UserName: str + SSHPublicKeyBody: str + +class UploadSigningCertificateRequestRequestTypeDef(BaseModel): + CertificateBody: str + UserName: Optional[str] = None + +class UploadSigningCertificateRequestServiceResourceCreateSigningCertificateTypeDef(BaseModel): + CertificateBody: str + UserName: Optional[str] = None + +class AttachedPermissionsBoundaryResponseTypeDef(BaseModel): + PermissionsBoundaryType: Literal["PermissionsBoundaryPolicy"] + PermissionsBoundaryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessKeyResponseTypeDef(BaseModel): + AccessKey: AccessKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceLinkedRoleResponseTypeDef(BaseModel): + DeletionTaskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateCredentialReportResponseTypeDef(BaseModel): + State: ReportStateTypeType + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateOrganizationsAccessReportResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateServiceLastAccessedDetailsResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessKeyLastUsedResponseTypeDef(BaseModel): + UserName: str + AccessKeyLastUsed: AccessKeyLastUsedTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountSummaryResponseTypeDef(BaseModel): + SummaryMap: Dict[summaryKeyTypeType, int] + ResponseMetadata: ResponseMetadataTypeDef + +class GetContextKeysForPolicyResponseTypeDef(BaseModel): + ContextKeyNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCredentialReportResponseTypeDef(BaseModel): + Content: bytes + ReportFormat: Literal["text/csv"] + GeneratedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetMFADeviceResponseTypeDef(BaseModel): + UserName: str + SerialNumber: str + EnableDate: datetime + Certifications: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessKeysResponseTypeDef(BaseModel): + AccessKeyMetadata: List[AccessKeyMetadataTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAliasesResponseTypeDef(BaseModel): + AccountAliases: List[str] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupPoliciesResponseTypeDef(BaseModel): + PolicyNames: List[str] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRolePoliciesResponseTypeDef(BaseModel): + PolicyNames: List[str] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserPoliciesResponseTypeDef(BaseModel): + PolicyNames: List[str] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RoleLastUsedResponseTypeDef(BaseModel): + LastUsedDate: datetime + Region: str + ResponseMetadata: ResponseMetadataTypeDef + +class ServerCertificateMetadataResponseTypeDef(BaseModel): + Path: str + ServerCertificateName: str + ServerCertificateId: str + Arn: str + UploadDate: datetime + Expiration: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSAMLProviderResponseTypeDef(BaseModel): + SAMLProviderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttachedGroupPoliciesResponseTypeDef(BaseModel): + AttachedPolicies: List[AttachedPolicyTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttachedRolePoliciesResponseTypeDef(BaseModel): + AttachedPolicies: List[AttachedPolicyTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttachedUserPoliciesResponseTypeDef(BaseModel): + AttachedPolicies: List[AttachedPolicyTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class SimulateCustomPolicyRequestRequestTypeDef(BaseModel): + PolicyInputList: Sequence[str] + ActionNames: Sequence[str] + PermissionsBoundaryPolicyInputList: Optional[Sequence[str]] = None + ResourceArns: Optional[Sequence[str]] = None + ResourcePolicy: Optional[str] = None + ResourceOwner: Optional[str] = None + CallerArn: Optional[str] = None + ContextEntries: Optional[Sequence[ContextEntryTypeDef]] = None + ResourceHandlingOption: Optional[str] = None + MaxItems: Optional[int] = None + Marker: Optional[str] = None + +class SimulatePrincipalPolicyRequestRequestTypeDef(BaseModel): + PolicySourceArn: str + ActionNames: Sequence[str] + PolicyInputList: Optional[Sequence[str]] = None + PermissionsBoundaryPolicyInputList: Optional[Sequence[str]] = None + ResourceArns: Optional[Sequence[str]] = None + ResourcePolicy: Optional[str] = None + ResourceOwner: Optional[str] = None + CallerArn: Optional[str] = None + ContextEntries: Optional[Sequence[ContextEntryTypeDef]] = None + ResourceHandlingOption: Optional[str] = None + MaxItems: Optional[int] = None + Marker: Optional[str] = None + +class CreateGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsForUserResponseTypeDef(BaseModel): + Groups: List[GroupTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsResponseTypeDef(BaseModel): + Groups: List[GroupTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + Path: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateInstanceProfileRequestServiceResourceCreateInstanceProfileTypeDef(BaseModel): + InstanceProfileName: str + Path: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + Url: str + ClientIDList: Optional[Sequence[str]] = None + ThumbprintList: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateOpenIDConnectProviderResponseTypeDef(BaseModel): + OpenIDConnectProviderArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePolicyRequestRequestTypeDef(BaseModel): + PolicyName: str + PolicyDocument: str + Path: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePolicyRequestServiceResourceCreatePolicyTypeDef(BaseModel): + PolicyName: str + PolicyDocument: str + Path: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRoleRequestRequestTypeDef(BaseModel): + RoleName: str + AssumeRolePolicyDocument: str + Path: Optional[str] = None + Description: Optional[str] = None + MaxSessionDuration: Optional[int] = None + PermissionsBoundary: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRoleRequestServiceResourceCreateRoleTypeDef(BaseModel): + RoleName: str + AssumeRolePolicyDocument: str + Path: Optional[str] = None + Description: Optional[str] = None + MaxSessionDuration: Optional[int] = None + PermissionsBoundary: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSAMLProviderRequestRequestTypeDef(BaseModel): + SAMLMetadataDocument: str + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSAMLProviderRequestServiceResourceCreateSamlProviderTypeDef(BaseModel): + SAMLMetadataDocument: str + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSAMLProviderResponseTypeDef(BaseModel): + SAMLProviderArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserRequestRequestTypeDef(BaseModel): + UserName: str + Path: Optional[str] = None + PermissionsBoundary: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateUserRequestServiceResourceCreateUserTypeDef(BaseModel): + UserName: str + Path: Optional[str] = None + PermissionsBoundary: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateUserRequestUserCreateTypeDef(BaseModel): + Path: Optional[str] = None + PermissionsBoundary: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVirtualMFADeviceRequestRequestTypeDef(BaseModel): + VirtualMFADeviceName: str + Path: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVirtualMFADeviceRequestServiceResourceCreateVirtualMfaDeviceTypeDef(BaseModel): + VirtualMFADeviceName: str + Path: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetOpenIDConnectProviderResponseTypeDef(BaseModel): + Url: str + ClientIDList: List[str] + ThumbprintList: List[str] + CreateDate: datetime + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSAMLProviderResponseTypeDef(BaseModel): + SAMLMetadataDocument: str + CreateDate: datetime + ValidUntil: datetime + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceProfileTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMFADeviceTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOpenIDConnectProviderTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPolicyTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoleTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSAMLProviderTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServerCertificateTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class PolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyId: Optional[str] = None + Arn: Optional[str] = None + Path: Optional[str] = None + DefaultVersionId: Optional[str] = None + AttachmentCount: Optional[int] = None + PermissionsBoundaryUsageCount: Optional[int] = None + IsAttachable: Optional[bool] = None + Description: Optional[str] = None + CreateDate: Optional[datetime] = None + UpdateDate: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagInstanceProfileRequestRequestTypeDef(BaseModel): + InstanceProfileName: str + Tags: Sequence[TagTypeDef] + +class TagMFADeviceRequestRequestTypeDef(BaseModel): + SerialNumber: str + Tags: Sequence[TagTypeDef] + +class TagOpenIDConnectProviderRequestRequestTypeDef(BaseModel): + OpenIDConnectProviderArn: str + Tags: Sequence[TagTypeDef] + +class TagPolicyRequestRequestTypeDef(BaseModel): + PolicyArn: str + Tags: Sequence[TagTypeDef] + +class TagRoleRequestRequestTypeDef(BaseModel): + RoleName: str + Tags: Sequence[TagTypeDef] + +class TagSAMLProviderRequestRequestTypeDef(BaseModel): + SAMLProviderArn: str + Tags: Sequence[TagTypeDef] + +class TagServerCertificateRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + Tags: Sequence[TagTypeDef] + +class TagUserRequestRequestTypeDef(BaseModel): + UserName: str + Tags: Sequence[TagTypeDef] + +class UploadServerCertificateRequestRequestTypeDef(BaseModel): + ServerCertificateName: str + CertificateBody: str + PrivateKey: str + Path: Optional[str] = None + CertificateChain: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UploadServerCertificateRequestServiceResourceCreateServerCertificateTypeDef(BaseModel): + ServerCertificateName: str + CertificateBody: str + PrivateKey: str + Path: Optional[str] = None + CertificateChain: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UserResponseTypeDef(BaseModel): + Path: str + UserName: str + UserId: str + Arn: str + CreateDate: datetime + PasswordLastUsed: datetime + PermissionsBoundary: AttachedPermissionsBoundaryTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UserTypeDef(BaseModel): + Path: str + UserName: str + UserId: str + Arn: str + CreateDate: datetime + PasswordLastUsed: Optional[datetime] = None + PermissionsBoundary: Optional[AttachedPermissionsBoundaryTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateLoginProfileResponseTypeDef(BaseModel): + LoginProfile: LoginProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoginProfileResponseTypeDef(BaseModel): + LoginProfile: LoginProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceSpecificCredentialResponseTypeDef(BaseModel): + ServiceSpecificCredential: ServiceSpecificCredentialTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResetServiceSpecificCredentialResponseTypeDef(BaseModel): + ServiceSpecificCredential: ServiceSpecificCredentialTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletionTaskFailureReasonTypeTypeDef(BaseModel): + Reason: Optional[str] = None + RoleUsageList: Optional[List[RoleUsageTypeTypeDef]] = None + +class EntityDetailsTypeDef(BaseModel): + EntityInfo: EntityInfoTypeDef + LastAuthenticated: Optional[datetime] = None + +class GetOrganizationsAccessReportResponseTypeDef(BaseModel): + JobStatus: jobStatusTypeType + JobCreationDate: datetime + JobCompletionDate: datetime + NumberOfServicesAccessible: int + NumberOfServicesNotAccessed: int + AccessDetails: List[AccessDetailTypeDef] + IsTruncated: bool + Marker: str + ErrorDetails: ErrorDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountAuthorizationDetailsRequestGetAccountAuthorizationDetailsPaginateTypeDef(BaseModel): + Filter: Optional[Sequence[EntityTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetGroupRequestGetGroupPaginateTypeDef(BaseModel): + GroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessKeysRequestListAccessKeysPaginateTypeDef(BaseModel): + UserName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountAliasesRequestListAccountAliasesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachedGroupPoliciesRequestListAttachedGroupPoliciesPaginateTypeDef(BaseModel): + GroupName: str + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachedRolePoliciesRequestListAttachedRolePoliciesPaginateTypeDef(BaseModel): + RoleName: str + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachedUserPoliciesRequestListAttachedUserPoliciesPaginateTypeDef(BaseModel): + UserName: str + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEntitiesForPolicyRequestListEntitiesForPolicyPaginateTypeDef(BaseModel): + PolicyArn: str + EntityFilter: Optional[EntityTypeType] = None + PathPrefix: Optional[str] = None + PolicyUsageFilter: Optional[PolicyUsageTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupPoliciesRequestListGroupPoliciesPaginateTypeDef(BaseModel): + GroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsForUserRequestListGroupsForUserPaginateTypeDef(BaseModel): + UserName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceProfileTagsRequestListInstanceProfileTagsPaginateTypeDef(BaseModel): + InstanceProfileName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceProfilesForRoleRequestListInstanceProfilesForRolePaginateTypeDef(BaseModel): + RoleName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef(BaseModel): + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMFADeviceTagsRequestListMFADeviceTagsPaginateTypeDef(BaseModel): + SerialNumber: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMFADevicesRequestListMFADevicesPaginateTypeDef(BaseModel): + UserName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOpenIDConnectProviderTagsRequestListOpenIDConnectProviderTagsPaginateTypeDef(BaseModel): + OpenIDConnectProviderArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesRequestListPoliciesPaginateTypeDef(BaseModel): + Scope: Optional[policyScopeTypeType] = None + OnlyAttached: Optional[bool] = None + PathPrefix: Optional[str] = None + PolicyUsageFilter: Optional[PolicyUsageTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyTagsRequestListPolicyTagsPaginateTypeDef(BaseModel): + PolicyArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyVersionsRequestListPolicyVersionsPaginateTypeDef(BaseModel): + PolicyArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRolePoliciesRequestListRolePoliciesPaginateTypeDef(BaseModel): + RoleName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoleTagsRequestListRoleTagsPaginateTypeDef(BaseModel): + RoleName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRolesRequestListRolesPaginateTypeDef(BaseModel): + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSAMLProviderTagsRequestListSAMLProviderTagsPaginateTypeDef(BaseModel): + SAMLProviderArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSSHPublicKeysRequestListSSHPublicKeysPaginateTypeDef(BaseModel): + UserName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServerCertificateTagsRequestListServerCertificateTagsPaginateTypeDef(BaseModel): + ServerCertificateName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServerCertificatesRequestListServerCertificatesPaginateTypeDef(BaseModel): + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSigningCertificatesRequestListSigningCertificatesPaginateTypeDef(BaseModel): + UserName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserPoliciesRequestListUserPoliciesPaginateTypeDef(BaseModel): + UserName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserTagsRequestListUserTagsPaginateTypeDef(BaseModel): + UserName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + PathPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVirtualMFADevicesRequestListVirtualMFADevicesPaginateTypeDef(BaseModel): + AssignmentStatus: Optional[assignmentStatusTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SimulateCustomPolicyRequestSimulateCustomPolicyPaginateTypeDef(BaseModel): + PolicyInputList: Sequence[str] + ActionNames: Sequence[str] + PermissionsBoundaryPolicyInputList: Optional[Sequence[str]] = None + ResourceArns: Optional[Sequence[str]] = None + ResourcePolicy: Optional[str] = None + ResourceOwner: Optional[str] = None + CallerArn: Optional[str] = None + ContextEntries: Optional[Sequence[ContextEntryTypeDef]] = None + ResourceHandlingOption: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SimulatePrincipalPolicyRequestSimulatePrincipalPolicyPaginateTypeDef(BaseModel): + PolicySourceArn: str + ActionNames: Sequence[str] + PolicyInputList: Optional[Sequence[str]] = None + PermissionsBoundaryPolicyInputList: Optional[Sequence[str]] = None + ResourceArns: Optional[Sequence[str]] = None + ResourcePolicy: Optional[str] = None + ResourceOwner: Optional[str] = None + CallerArn: Optional[str] = None + ContextEntries: Optional[Sequence[ContextEntryTypeDef]] = None + ResourceHandlingOption: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAccountPasswordPolicyResponseTypeDef(BaseModel): + PasswordPolicy: PasswordPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceProfileRequestInstanceProfileExistsWaitTypeDef(BaseModel): + InstanceProfileName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetPolicyRequestPolicyExistsWaitTypeDef(BaseModel): + PolicyArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetRoleRequestRoleExistsWaitTypeDef(BaseModel): + RoleName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetUserRequestUserExistsWaitTypeDef(BaseModel): + UserName: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetSSHPublicKeyResponseTypeDef(BaseModel): + SSHPublicKey: SSHPublicKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UploadSSHPublicKeyResponseTypeDef(BaseModel): + SSHPublicKey: SSHPublicKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntitiesForPolicyResponseTypeDef(BaseModel): + PolicyGroups: List[PolicyGroupTypeDef] + PolicyUsers: List[PolicyUserTypeDef] + PolicyRoles: List[PolicyRoleTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMFADevicesResponseTypeDef(BaseModel): + MFADevices: List[MFADeviceTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOpenIDConnectProvidersResponseTypeDef(BaseModel): + OpenIDConnectProviderList: List[OpenIDConnectProviderListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPoliciesGrantingServiceAccessEntryTypeDef(BaseModel): + ServiceNamespace: Optional[str] = None + Policies: Optional[List[PolicyGrantingServiceAccessTypeDef]] = None + +class ListSAMLProvidersResponseTypeDef(BaseModel): + SAMLProviderList: List[SAMLProviderListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSSHPublicKeysResponseTypeDef(BaseModel): + SSHPublicKeys: List[SSHPublicKeyMetadataTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServerCertificatesResponseTypeDef(BaseModel): + ServerCertificateMetadataList: List[ServerCertificateMetadataTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ServerCertificateTypeDef(BaseModel): + ServerCertificateMetadata: ServerCertificateMetadataTypeDef + CertificateBody: str + CertificateChain: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class UploadServerCertificateResponseTypeDef(BaseModel): + ServerCertificateMetadata: ServerCertificateMetadataTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceSpecificCredentialsResponseTypeDef(BaseModel): + ServiceSpecificCredentials: List[ServiceSpecificCredentialMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSigningCertificatesResponseTypeDef(BaseModel): + Certificates: List[SigningCertificateTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class UploadSigningCertificateResponseTypeDef(BaseModel): + Certificate: SigningCertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PolicyDocumentDictTypeDef(BaseModel): + Version: str + Statement: List[PolicyDocumentStatementTypeDef] + +class StatementTypeDef(BaseModel): + SourcePolicyId: Optional[str] = None + SourcePolicyType: Optional[PolicySourceTypeType] = None + StartPosition: Optional[PositionTypeDef] = None + EndPosition: Optional[PositionTypeDef] = None + +class ServiceLastAccessedTypeDef(BaseModel): + ServiceName: str + ServiceNamespace: str + LastAuthenticated: Optional[datetime] = None + LastAuthenticatedEntity: Optional[str] = None + LastAuthenticatedRegion: Optional[str] = None + TotalAuthenticatedEntities: Optional[int] = None + TrackedActionsLastAccessed: Optional[List[TrackedActionLastAccessedTypeDef]] = None + +class CreatePolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPoliciesResponseTypeDef(BaseModel): + Policies: List[PolicyTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + Users: List[UserTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class VirtualMFADeviceTypeDef(BaseModel): + SerialNumber: str + Base32StringSeed: Optional[bytes] = None + QRCodePNG: Optional[bytes] = None + User: Optional[UserTypeDef] = None + EnableDate: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class GetServiceLinkedRoleDeletionStatusResponseTypeDef(BaseModel): + Status: DeletionTaskStatusTypeType + Reason: DeletionTaskFailureReasonTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceLastAccessedDetailsWithEntitiesResponseTypeDef(BaseModel): + JobStatus: jobStatusTypeType + JobCreationDate: datetime + JobCompletionDate: datetime + EntityDetailsList: List[EntityDetailsTypeDef] + IsTruncated: bool + Marker: str + Error: ErrorDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPoliciesGrantingServiceAccessResponseTypeDef(BaseModel): + PoliciesGrantingServiceAccess: List[ListPoliciesGrantingServiceAccessEntryTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetServerCertificateResponseTypeDef(BaseModel): + ServerCertificate: ServerCertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceSpecificResultTypeDef(BaseModel): + EvalResourceName: str + EvalResourceDecision: PolicyEvaluationDecisionTypeType + MatchedStatements: Optional[List[StatementTypeDef]] = None + MissingContextValues: Optional[List[str]] = None + EvalDecisionDetails: Optional[Dict[str, PolicyEvaluationDecisionTypeType]] = None + PermissionsBoundaryDecisionDetail: Optional[PermissionsBoundaryDecisionDetailTypeDef] = None + +class GetServiceLastAccessedDetailsResponseTypeDef(BaseModel): + JobStatus: jobStatusTypeType + JobType: AccessAdvisorUsageGranularityTypeType + JobCreationDate: datetime + ServicesLastAccessed: List[ServiceLastAccessedTypeDef] + JobCompletionDate: datetime + IsTruncated: bool + Marker: str + Error: ErrorDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVirtualMFADeviceResponseTypeDef(BaseModel): + VirtualMFADevice: VirtualMFADeviceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVirtualMFADevicesResponseTypeDef(BaseModel): + VirtualMFADevices: List[VirtualMFADeviceTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupPolicyResponseTypeDef(BaseModel): + GroupName: str + PolicyName: str + PolicyDocument: PolicyDocumentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRolePolicyResponseTypeDef(BaseModel): + RoleName: str + PolicyName: str + PolicyDocument: PolicyDocumentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserPolicyResponseTypeDef(BaseModel): + UserName: str + PolicyName: str + PolicyDocument: PolicyDocumentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PolicyDetailTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyDocument: Optional[PolicyDocumentTypeDef] = None + +class PolicyVersionTypeDef(BaseModel): + Document: Optional[PolicyDocumentTypeDef] = None + VersionId: Optional[str] = None + IsDefaultVersion: Optional[bool] = None + CreateDate: Optional[datetime] = None + +class RoleTypeDef(BaseModel): + Path: str + RoleName: str + RoleId: str + Arn: str + CreateDate: datetime + AssumeRolePolicyDocument: Optional[PolicyDocumentTypeDef] = None + Description: Optional[str] = None + MaxSessionDuration: Optional[int] = None + PermissionsBoundary: Optional[AttachedPermissionsBoundaryTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + RoleLastUsed: Optional[RoleLastUsedTypeDef] = None + +class EvaluationResultTypeDef(BaseModel): + EvalActionName: str + EvalDecision: PolicyEvaluationDecisionTypeType + EvalResourceName: Optional[str] = None + MatchedStatements: Optional[List[StatementTypeDef]] = None + MissingContextValues: Optional[List[str]] = None + OrganizationsDecisionDetail: Optional[OrganizationsDecisionDetailTypeDef] = None + PermissionsBoundaryDecisionDetail: Optional[PermissionsBoundaryDecisionDetailTypeDef] = None + EvalDecisionDetails: Optional[Dict[str, PolicyEvaluationDecisionTypeType]] = None + ResourceSpecificResults: Optional[List[ResourceSpecificResultTypeDef]] = None + +class GroupDetailTypeDef(BaseModel): + Path: Optional[str] = None + GroupName: Optional[str] = None + GroupId: Optional[str] = None + Arn: Optional[str] = None + CreateDate: Optional[datetime] = None + GroupPolicyList: Optional[List[PolicyDetailTypeDef]] = None + AttachedManagedPolicies: Optional[List[AttachedPolicyTypeDef]] = None + +class UserDetailTypeDef(BaseModel): + Path: Optional[str] = None + UserName: Optional[str] = None + UserId: Optional[str] = None + Arn: Optional[str] = None + CreateDate: Optional[datetime] = None + UserPolicyList: Optional[List[PolicyDetailTypeDef]] = None + GroupList: Optional[List[str]] = None + AttachedManagedPolicies: Optional[List[AttachedPolicyTypeDef]] = None + PermissionsBoundary: Optional[AttachedPermissionsBoundaryTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreatePolicyVersionResponseTypeDef(BaseModel): + PolicyVersion: PolicyVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyVersionResponseTypeDef(BaseModel): + PolicyVersion: PolicyVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPolicyVersionsResponseTypeDef(BaseModel): + Versions: List[PolicyVersionTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ManagedPolicyDetailTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyId: Optional[str] = None + Arn: Optional[str] = None + Path: Optional[str] = None + DefaultVersionId: Optional[str] = None + AttachmentCount: Optional[int] = None + PermissionsBoundaryUsageCount: Optional[int] = None + IsAttachable: Optional[bool] = None + Description: Optional[str] = None + CreateDate: Optional[datetime] = None + UpdateDate: Optional[datetime] = None + PolicyVersionList: Optional[List[PolicyVersionTypeDef]] = None + +class CreateRoleResponseTypeDef(BaseModel): + Role: RoleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceLinkedRoleResponseTypeDef(BaseModel): + Role: RoleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRoleResponseTypeDef(BaseModel): + Role: RoleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceProfileTypeDef(BaseModel): + Path: str + InstanceProfileName: str + InstanceProfileId: str + Arn: str + CreateDate: datetime + Roles: List[RoleTypeDef] + Tags: Optional[List[TagTypeDef]] = None + +class ListRolesResponseTypeDef(BaseModel): + Roles: List[RoleTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoleDescriptionResponseTypeDef(BaseModel): + Role: RoleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SimulatePolicyResponseTypeDef(BaseModel): + EvaluationResults: List[EvaluationResultTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceProfileResponseTypeDef(BaseModel): + InstanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceProfileResponseTypeDef(BaseModel): + InstanceProfile: InstanceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceProfilesForRoleResponseTypeDef(BaseModel): + InstanceProfiles: List[InstanceProfileTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstanceProfilesResponseTypeDef(BaseModel): + InstanceProfiles: List[InstanceProfileTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RoleDetailTypeDef(BaseModel): + Path: Optional[str] = None + RoleName: Optional[str] = None + RoleId: Optional[str] = None + Arn: Optional[str] = None + CreateDate: Optional[datetime] = None + AssumeRolePolicyDocument: Optional[PolicyDocumentTypeDef] = None + InstanceProfileList: Optional[List[InstanceProfileTypeDef]] = None + RolePolicyList: Optional[List[PolicyDetailTypeDef]] = None + AttachedManagedPolicies: Optional[List[AttachedPolicyTypeDef]] = None + PermissionsBoundary: Optional[AttachedPermissionsBoundaryTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + RoleLastUsed: Optional[RoleLastUsedTypeDef] = None + +class GetAccountAuthorizationDetailsResponseTypeDef(BaseModel): + UserDetailList: List[UserDetailTypeDef] + GroupDetailList: List[GroupDetailTypeDef] + RoleDetailList: List[RoleDetailTypeDef] + Policies: List[ManagedPolicyDetailTypeDef] + IsTruncated: bool + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iam_constants.py b/aws_resource_validator/pydantic_models/iam_constants.py new file mode 100644 index 00000000..b02300ec --- /dev/null +++ b/aws_resource_validator/pydantic_models/iam_constants.py @@ -0,0 +1,529 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessAdvisorUsageGranularityTypeType = Literal["ACTION_LEVEL", "SERVICE_LEVEL"] +ContextKeyTypeEnumType = Literal["binary", + "binaryList", + "boolean", + "booleanList", + "date", + "dateList", + "ip", + "ipList", + "numeric", + "numericList", + "string", + "stringList",] +DeletionTaskStatusTypeType = Literal["FAILED", "IN_PROGRESS", "NOT_STARTED", "SUCCEEDED"] +EntityTypeType = Literal["AWSManagedPolicy", "Group", "LocalManagedPolicy", "Role", "User"] +GetAccountAuthorizationDetailsPaginatorName = Literal["get_account_authorization_details"] +GetGroupPaginatorName = Literal["get_group"] +InstanceProfileExistsWaiterName = Literal["instance_profile_exists"] +ListAccessKeysPaginatorName = Literal["list_access_keys"] +ListAccountAliasesPaginatorName = Literal["list_account_aliases"] +ListAttachedGroupPoliciesPaginatorName = Literal["list_attached_group_policies"] +ListAttachedRolePoliciesPaginatorName = Literal["list_attached_role_policies"] +ListAttachedUserPoliciesPaginatorName = Literal["list_attached_user_policies"] +ListEntitiesForPolicyPaginatorName = Literal["list_entities_for_policy"] +ListGroupPoliciesPaginatorName = Literal["list_group_policies"] +ListGroupsForUserPaginatorName = Literal["list_groups_for_user"] +ListGroupsPaginatorName = Literal["list_groups"] +ListInstanceProfileTagsPaginatorName = Literal["list_instance_profile_tags"] +ListInstanceProfilesForRolePaginatorName = Literal["list_instance_profiles_for_role"] +ListInstanceProfilesPaginatorName = Literal["list_instance_profiles"] +ListMFADeviceTagsPaginatorName = Literal["list_mfa_device_tags"] +ListMFADevicesPaginatorName = Literal["list_mfa_devices"] +ListOpenIDConnectProviderTagsPaginatorName = Literal["list_open_id_connect_provider_tags"] +ListPoliciesPaginatorName = Literal["list_policies"] +ListPolicyTagsPaginatorName = Literal["list_policy_tags"] +ListPolicyVersionsPaginatorName = Literal["list_policy_versions"] +ListRolePoliciesPaginatorName = Literal["list_role_policies"] +ListRoleTagsPaginatorName = Literal["list_role_tags"] +ListRolesPaginatorName = Literal["list_roles"] +ListSAMLProviderTagsPaginatorName = Literal["list_saml_provider_tags"] +ListSSHPublicKeysPaginatorName = Literal["list_ssh_public_keys"] +ListServerCertificateTagsPaginatorName = Literal["list_server_certificate_tags"] +ListServerCertificatesPaginatorName = Literal["list_server_certificates"] +ListSigningCertificatesPaginatorName = Literal["list_signing_certificates"] +ListUserPoliciesPaginatorName = Literal["list_user_policies"] +ListUserTagsPaginatorName = Literal["list_user_tags"] +ListUsersPaginatorName = Literal["list_users"] +ListVirtualMFADevicesPaginatorName = Literal["list_virtual_mfa_devices"] +PermissionsBoundaryAttachmentTypeType = Literal["PermissionsBoundaryPolicy"] +PolicyEvaluationDecisionTypeType = Literal["allowed", "explicitDeny", "implicitDeny"] +PolicyExistsWaiterName = Literal["policy_exists"] +PolicySourceTypeType = Literal["aws-managed", "group", "none", "resource", "role", "user", "user-managed"] +PolicyUsageTypeType = Literal["PermissionsBoundary", "PermissionsPolicy"] +ReportFormatTypeType = Literal["text/csv"] +ReportStateTypeType = Literal["COMPLETE", "INPROGRESS", "STARTED"] +RoleExistsWaiterName = Literal["role_exists"] +SimulateCustomPolicyPaginatorName = Literal["simulate_custom_policy"] +SimulatePrincipalPolicyPaginatorName = Literal["simulate_principal_policy"] +UserExistsWaiterName = Literal["user_exists"] +assignmentStatusTypeType = Literal["Any", "Assigned", "Unassigned"] +encodingTypeType = Literal["PEM", "SSH"] +globalEndpointTokenVersionType = Literal["v1Token", "v2Token"] +jobStatusTypeType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +policyOwnerEntityTypeType = Literal["GROUP", "ROLE", "USER"] +policyScopeTypeType = Literal["AWS", "All", "Local"] +policyTypeType = Literal["INLINE", "MANAGED"] +sortKeyTypeType = Literal["LAST_AUTHENTICATED_TIME_ASCENDING", + "LAST_AUTHENTICATED_TIME_DESCENDING", + "SERVICE_NAMESPACE_ASCENDING", + "SERVICE_NAMESPACE_DESCENDING",] +statusTypeType = Literal["Active", "Inactive"] +summaryKeyTypeType = Literal["AccessKeysPerUserQuota", + "AccountAccessKeysPresent", + "AccountMFAEnabled", + "AccountSigningCertificatesPresent", + "AttachedPoliciesPerGroupQuota", + "AttachedPoliciesPerRoleQuota", + "AttachedPoliciesPerUserQuota", + "GlobalEndpointTokenVersion", + "GroupPolicySizeQuota", + "Groups", + "GroupsPerUserQuota", + "GroupsQuota", + "MFADevices", + "MFADevicesInUse", + "Policies", + "PoliciesQuota", + "PolicySizeQuota", + "PolicyVersionsInUse", + "PolicyVersionsInUseQuota", + "ServerCertificates", + "ServerCertificatesQuota", + "SigningCertificatesPerUserQuota", + "UserPolicySizeQuota", + "Users", + "UsersQuota", + "VersionsPerPolicyQuota",] +IAMServiceName = Literal["iam"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_account_authorization_details", + "get_group", + "list_access_keys", + "list_account_aliases", + "list_attached_group_policies", + "list_attached_role_policies", + "list_attached_user_policies", + "list_entities_for_policy", + "list_group_policies", + "list_groups", + "list_groups_for_user", + "list_instance_profile_tags", + "list_instance_profiles", + "list_instance_profiles_for_role", + "list_mfa_device_tags", + "list_mfa_devices", + "list_open_id_connect_provider_tags", + "list_policies", + "list_policy_tags", + "list_policy_versions", + "list_role_policies", + "list_role_tags", + "list_roles", + "list_saml_provider_tags", + "list_server_certificate_tags", + "list_server_certificates", + "list_signing_certificates", + "list_ssh_public_keys", + "list_user_policies", + "list_user_tags", + "list_users", + "list_virtual_mfa_devices", + "simulate_custom_policy", + "simulate_principal_policy",] +WaiterName = Literal["instance_profile_exists", "policy_exists", "role_exists", "user_exists"] +PolicyDocumentTypeDef = Union[str, 'PolicyDocumentDictTypeDef'] diff --git a/aws_resource_validator/pydantic_models/identitystore_classes.py b/aws_resource_validator/pydantic_models/identitystore_classes.py new file mode 100644 index 00000000..b647fb5f --- /dev/null +++ b/aws_resource_validator/pydantic_models/identitystore_classes.py @@ -0,0 +1,322 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.identitystore_constants import * + +class AddressTypeDef(BaseModel): + StreetAddress: Optional[str] = None + Locality: Optional[str] = None + Region: Optional[str] = None + PostalCode: Optional[str] = None + Country: Optional[str] = None + Formatted: Optional[str] = None + Type: Optional[str] = None + Primary: Optional[bool] = None + +class ExternalIdTypeDef(BaseModel): + Issuer: str + Id: str + +class UniqueAttributeTypeDef(BaseModel): + AttributePath: str + AttributeValue: Mapping[str, Any] + +class AttributeOperationTypeDef(BaseModel): + AttributePath: str + AttributeValue: Optional[Mapping[str, Any]] = None + +class MemberIdTypeDef(BaseModel): + UserId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateGroupRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + +class EmailTypeDef(BaseModel): + Value: Optional[str] = None + Type: Optional[str] = None + Primary: Optional[bool] = None + +class NameTypeDef(BaseModel): + Formatted: Optional[str] = None + FamilyName: Optional[str] = None + GivenName: Optional[str] = None + MiddleName: Optional[str] = None + HonorificPrefix: Optional[str] = None + HonorificSuffix: Optional[str] = None + +class PhoneNumberTypeDef(BaseModel): + Value: Optional[str] = None + Type: Optional[str] = None + Primary: Optional[bool] = None + +class DeleteGroupMembershipRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + MembershipId: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + UserId: str + +class DescribeGroupMembershipRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + MembershipId: str + +class DescribeGroupRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + +class DescribeUserRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + UserId: str + +class FilterTypeDef(BaseModel): + AttributePath: str + AttributeValue: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListGroupMembershipsRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GroupTypeDef(BaseModel): + GroupId: str + IdentityStoreId: str + DisplayName: Optional[str] = None + ExternalIds: Optional[List[ExternalIdTypeDef]] = None + Description: Optional[str] = None + +class AlternateIdentifierTypeDef(BaseModel): + ExternalId: Optional[ExternalIdTypeDef] = None + UniqueAttribute: Optional[UniqueAttributeTypeDef] = None + +class UpdateGroupRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + Operations: Sequence[AttributeOperationTypeDef] + +class UpdateUserRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + UserId: str + Operations: Sequence[AttributeOperationTypeDef] + +class CreateGroupMembershipRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + MemberId: MemberIdTypeDef + +class GetGroupMembershipIdRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + MemberId: MemberIdTypeDef + +class GroupMembershipExistenceResultTypeDef(BaseModel): + GroupId: Optional[str] = None + MemberId: Optional[MemberIdTypeDef] = None + MembershipExists: Optional[bool] = None + +class GroupMembershipTypeDef(BaseModel): + IdentityStoreId: str + MembershipId: Optional[str] = None + GroupId: Optional[str] = None + MemberId: Optional[MemberIdTypeDef] = None + +class IsMemberInGroupsRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + MemberId: MemberIdTypeDef + GroupIds: Sequence[str] + +class ListGroupMembershipsForMemberRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + MemberId: MemberIdTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class CreateGroupMembershipResponseTypeDef(BaseModel): + MembershipId: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupResponseTypeDef(BaseModel): + GroupId: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + UserId: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGroupMembershipResponseTypeDef(BaseModel): + IdentityStoreId: str + MembershipId: str + GroupId: str + MemberId: MemberIdTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGroupResponseTypeDef(BaseModel): + GroupId: str + DisplayName: str + ExternalIds: List[ExternalIdTypeDef] + Description: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupIdResponseTypeDef(BaseModel): + GroupId: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupMembershipIdResponseTypeDef(BaseModel): + MembershipId: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserIdResponseTypeDef(BaseModel): + UserId: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + UserName: Optional[str] = None + Name: Optional[NameTypeDef] = None + DisplayName: Optional[str] = None + NickName: Optional[str] = None + ProfileUrl: Optional[str] = None + Emails: Optional[Sequence[EmailTypeDef]] = None + Addresses: Optional[Sequence[AddressTypeDef]] = None + PhoneNumbers: Optional[Sequence[PhoneNumberTypeDef]] = None + UserType: Optional[str] = None + Title: Optional[str] = None + PreferredLanguage: Optional[str] = None + Locale: Optional[str] = None + Timezone: Optional[str] = None + +class DescribeUserResponseTypeDef(BaseModel): + UserName: str + UserId: str + ExternalIds: List[ExternalIdTypeDef] + Name: NameTypeDef + DisplayName: str + NickName: str + ProfileUrl: str + Emails: List[EmailTypeDef] + Addresses: List[AddressTypeDef] + PhoneNumbers: List[PhoneNumberTypeDef] + UserType: str + Title: str + PreferredLanguage: str + Locale: str + Timezone: str + IdentityStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UserTypeDef(BaseModel): + UserId: str + IdentityStoreId: str + UserName: Optional[str] = None + ExternalIds: Optional[List[ExternalIdTypeDef]] = None + Name: Optional[NameTypeDef] = None + DisplayName: Optional[str] = None + NickName: Optional[str] = None + ProfileUrl: Optional[str] = None + Emails: Optional[List[EmailTypeDef]] = None + Addresses: Optional[List[AddressTypeDef]] = None + PhoneNumbers: Optional[List[PhoneNumberTypeDef]] = None + UserType: Optional[str] = None + Title: Optional[str] = None + PreferredLanguage: Optional[str] = None + Locale: Optional[str] = None + Timezone: Optional[str] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListGroupMembershipsForMemberRequestListGroupMembershipsForMemberPaginateTypeDef(BaseModel): + IdentityStoreId: str + MemberId: MemberIdTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupMembershipsRequestListGroupMembershipsPaginateTypeDef(BaseModel): + IdentityStoreId: str + GroupId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + IdentityStoreId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + IdentityStoreId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsResponseTypeDef(BaseModel): + Groups: List[GroupTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupIdRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + AlternateIdentifier: AlternateIdentifierTypeDef + +class GetUserIdRequestRequestTypeDef(BaseModel): + IdentityStoreId: str + AlternateIdentifier: AlternateIdentifierTypeDef + +class IsMemberInGroupsResponseTypeDef(BaseModel): + Results: List[GroupMembershipExistenceResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupMembershipsForMemberResponseTypeDef(BaseModel): + GroupMemberships: List[GroupMembershipTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupMembershipsResponseTypeDef(BaseModel): + GroupMemberships: List[GroupMembershipTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/identitystore_constants.py b/aws_resource_validator/pydantic_models/identitystore_constants.py new file mode 100644 index 00000000..b14b6f45 --- /dev/null +++ b/aws_resource_validator/pydantic_models/identitystore_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListGroupMembershipsForMemberPaginatorName = Literal["list_group_memberships_for_member"] +ListGroupMembershipsPaginatorName = Literal["list_group_memberships"] +ListGroupsPaginatorName = Literal["list_groups"] +ListUsersPaginatorName = Literal["list_users"] +IdentityStoreServiceName = Literal["identitystore"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_group_memberships", "list_group_memberships_for_member", "list_groups", "list_users"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/imagebuilder_classes.py b/aws_resource_validator/pydantic_models/imagebuilder_classes.py new file mode 100644 index 00000000..f9617ce4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/imagebuilder_classes.py @@ -0,0 +1,1647 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.imagebuilder_constants import * + +class SeverityCountsTypeDef(BaseModel): + all: Optional[int] = None + critical: Optional[int] = None + high: Optional[int] = None + medium: Optional[int] = None + +class SystemsManagerAgentTypeDef(BaseModel): + uninstallAfterBuild: Optional[bool] = None + +class LaunchPermissionConfigurationOutputTypeDef(BaseModel): + userIds: Optional[List[str]] = None + userGroups: Optional[List[str]] = None + organizationArns: Optional[List[str]] = None + organizationalUnitArns: Optional[List[str]] = None + +class LaunchPermissionConfigurationTypeDef(BaseModel): + userIds: Optional[Sequence[str]] = None + userGroups: Optional[Sequence[str]] = None + organizationArns: Optional[Sequence[str]] = None + organizationalUnitArns: Optional[Sequence[str]] = None + +class ImageStateTypeDef(BaseModel): + status: Optional[ImageStatusType] = None + reason: Optional[str] = None + +class CancelImageCreationRequestRequestTypeDef(BaseModel): + imageBuildVersionArn: str + clientToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CancelLifecycleExecutionRequestRequestTypeDef(BaseModel): + lifecycleExecutionId: str + clientToken: str + +class ComponentParameterOutputTypeDef(BaseModel): + name: str + value: List[str] + +class ComponentParameterTypeDef(BaseModel): + name: str + value: Sequence[str] + +class ComponentParameterDetailTypeDef(BaseModel): + name: str + type: str + defaultValue: Optional[List[str]] = None + description: Optional[str] = None + +class ComponentStateTypeDef(BaseModel): + status: Optional[Literal["DEPRECATED"]] = None + reason: Optional[str] = None + +class ComponentVersionTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + description: Optional[str] = None + platform: Optional[PlatformType] = None + supportedOsVersions: Optional[List[str]] = None + type: Optional[ComponentTypeType] = None + owner: Optional[str] = None + dateCreated: Optional[str] = None + +class TargetContainerRepositoryTypeDef(BaseModel): + service: Literal["ECR"] + repositoryName: str + +class ContainerRecipeSummaryTypeDef(BaseModel): + arn: Optional[str] = None + containerType: Optional[Literal["DOCKER"]] = None + name: Optional[str] = None + platform: Optional[PlatformType] = None + owner: Optional[str] = None + parentImage: Optional[str] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ContainerTypeDef(BaseModel): + region: Optional[str] = None + imageUris: Optional[List[str]] = None + +class CreateComponentRequestRequestTypeDef(BaseModel): + name: str + semanticVersion: str + platform: PlatformType + clientToken: str + description: Optional[str] = None + changeDescription: Optional[str] = None + supportedOsVersions: Optional[Sequence[str]] = None + data: Optional[str] = None + uri: Optional[str] = None + kmsKeyId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ImageTestsConfigurationTypeDef(BaseModel): + imageTestsEnabled: Optional[bool] = None + timeoutMinutes: Optional[int] = None + +class ScheduleTypeDef(BaseModel): + scheduleExpression: Optional[str] = None + timezone: Optional[str] = None + pipelineExecutionStartCondition: Optional[PipelineExecutionStartConditionType] = None + +class InstanceMetadataOptionsTypeDef(BaseModel): + httpTokens: Optional[str] = None + httpPutResponseHopLimit: Optional[int] = None + +class CreateWorkflowRequestRequestTypeDef(BaseModel): + name: str + semanticVersion: str + clientToken: str + type: WorkflowTypeType + description: Optional[str] = None + changeDescription: Optional[str] = None + data: Optional[str] = None + uri: Optional[str] = None + kmsKeyId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CvssScoreAdjustmentTypeDef(BaseModel): + metric: Optional[str] = None + reason: Optional[str] = None + +class CvssScoreTypeDef(BaseModel): + baseScore: Optional[float] = None + scoringVector: Optional[str] = None + version: Optional[str] = None + source: Optional[str] = None + +class DeleteComponentRequestRequestTypeDef(BaseModel): + componentBuildVersionArn: str + +class DeleteContainerRecipeRequestRequestTypeDef(BaseModel): + containerRecipeArn: str + +class DeleteDistributionConfigurationRequestRequestTypeDef(BaseModel): + distributionConfigurationArn: str + +class DeleteImagePipelineRequestRequestTypeDef(BaseModel): + imagePipelineArn: str + +class DeleteImageRecipeRequestRequestTypeDef(BaseModel): + imageRecipeArn: str + +class DeleteImageRequestRequestTypeDef(BaseModel): + imageBuildVersionArn: str + +class DeleteInfrastructureConfigurationRequestRequestTypeDef(BaseModel): + infrastructureConfigurationArn: str + +class DeleteLifecyclePolicyRequestRequestTypeDef(BaseModel): + lifecyclePolicyArn: str + +class DeleteWorkflowRequestRequestTypeDef(BaseModel): + workflowBuildVersionArn: str + +class DistributionConfigurationSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + dateCreated: Optional[str] = None + dateUpdated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + regions: Optional[List[str]] = None + +class LaunchTemplateConfigurationTypeDef(BaseModel): + launchTemplateId: str + accountId: Optional[str] = None + setDefaultVersion: Optional[bool] = None + +class S3ExportConfigurationTypeDef(BaseModel): + roleName: str + diskImageFormat: DiskImageFormatType + s3Bucket: str + s3Prefix: Optional[str] = None + +class EbsInstanceBlockDeviceSpecificationTypeDef(BaseModel): + encrypted: Optional[bool] = None + deleteOnTermination: Optional[bool] = None + iops: Optional[int] = None + kmsKeyId: Optional[str] = None + snapshotId: Optional[str] = None + volumeSize: Optional[int] = None + volumeType: Optional[EbsVolumeTypeType] = None + throughput: Optional[int] = None + +class EcrConfigurationOutputTypeDef(BaseModel): + repositoryName: Optional[str] = None + containerTags: Optional[List[str]] = None + +class EcrConfigurationTypeDef(BaseModel): + repositoryName: Optional[str] = None + containerTags: Optional[Sequence[str]] = None + +class FastLaunchLaunchTemplateSpecificationTypeDef(BaseModel): + launchTemplateId: Optional[str] = None + launchTemplateName: Optional[str] = None + launchTemplateVersion: Optional[str] = None + +class FastLaunchSnapshotConfigurationTypeDef(BaseModel): + targetResourceCount: Optional[int] = None + +class FilterTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class GetComponentPolicyRequestRequestTypeDef(BaseModel): + componentArn: str + +class GetComponentRequestRequestTypeDef(BaseModel): + componentBuildVersionArn: str + +class GetContainerRecipePolicyRequestRequestTypeDef(BaseModel): + containerRecipeArn: str + +class GetContainerRecipeRequestRequestTypeDef(BaseModel): + containerRecipeArn: str + +class GetDistributionConfigurationRequestRequestTypeDef(BaseModel): + distributionConfigurationArn: str + +class GetImagePipelineRequestRequestTypeDef(BaseModel): + imagePipelineArn: str + +class GetImagePolicyRequestRequestTypeDef(BaseModel): + imageArn: str + +class GetImageRecipePolicyRequestRequestTypeDef(BaseModel): + imageRecipeArn: str + +class GetImageRecipeRequestRequestTypeDef(BaseModel): + imageRecipeArn: str + +class GetImageRequestRequestTypeDef(BaseModel): + imageBuildVersionArn: str + +class GetInfrastructureConfigurationRequestRequestTypeDef(BaseModel): + infrastructureConfigurationArn: str + +class GetLifecycleExecutionRequestRequestTypeDef(BaseModel): + lifecycleExecutionId: str + +class GetLifecyclePolicyRequestRequestTypeDef(BaseModel): + lifecyclePolicyArn: str + +class GetWorkflowExecutionRequestRequestTypeDef(BaseModel): + workflowExecutionId: str + +class GetWorkflowRequestRequestTypeDef(BaseModel): + workflowBuildVersionArn: str + +class GetWorkflowStepExecutionRequestRequestTypeDef(BaseModel): + stepExecutionId: str + +class ImagePackageTypeDef(BaseModel): + packageName: Optional[str] = None + packageVersion: Optional[str] = None + +class ImageRecipeSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + platform: Optional[PlatformType] = None + owner: Optional[str] = None + parentImage: Optional[str] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ImageScanFindingsFilterTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class ImageScanStateTypeDef(BaseModel): + status: Optional[ImageScanStatusType] = None + reason: Optional[str] = None + +class ImageVersionTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[ImageTypeType] = None + version: Optional[str] = None + platform: Optional[PlatformType] = None + osVersion: Optional[str] = None + owner: Optional[str] = None + dateCreated: Optional[str] = None + buildType: Optional[BuildTypeType] = None + imageSource: Optional[ImageSourceType] = None + +class ImportComponentRequestRequestTypeDef(BaseModel): + name: str + semanticVersion: str + type: ComponentTypeType + format: Literal["SHELL"] + platform: PlatformType + clientToken: str + description: Optional[str] = None + changeDescription: Optional[str] = None + data: Optional[str] = None + uri: Optional[str] = None + kmsKeyId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ImportVmImageRequestRequestTypeDef(BaseModel): + name: str + semanticVersion: str + platform: PlatformType + vmImportTaskId: str + clientToken: str + description: Optional[str] = None + osVersion: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class InfrastructureConfigurationSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + dateCreated: Optional[str] = None + dateUpdated: Optional[str] = None + resourceTags: Optional[Dict[str, str]] = None + tags: Optional[Dict[str, str]] = None + instanceTypes: Optional[List[str]] = None + instanceProfileName: Optional[str] = None + +class LifecycleExecutionResourceActionTypeDef(BaseModel): + name: Optional[LifecycleExecutionResourceActionNameType] = None + reason: Optional[str] = None + +class LifecycleExecutionResourceStateTypeDef(BaseModel): + status: Optional[LifecycleExecutionResourceStatusType] = None + reason: Optional[str] = None + +class LifecycleExecutionResourcesImpactedSummaryTypeDef(BaseModel): + hasImpactedResources: Optional[bool] = None + +class LifecycleExecutionStateTypeDef(BaseModel): + status: Optional[LifecycleExecutionStatusType] = None + reason: Optional[str] = None + +class LifecyclePolicyDetailActionIncludeResourcesTypeDef(BaseModel): + amis: Optional[bool] = None + snapshots: Optional[bool] = None + containers: Optional[bool] = None + +class LifecyclePolicyDetailExclusionRulesAmisLastLaunchedTypeDef(BaseModel): + value: int + unit: LifecyclePolicyTimeUnitType + +class LifecyclePolicyDetailFilterTypeDef(BaseModel): + type: LifecyclePolicyDetailFilterTypeType + value: int + unit: Optional[LifecyclePolicyTimeUnitType] = None + retainAtLeast: Optional[int] = None + +class LifecyclePolicyResourceSelectionRecipeTypeDef(BaseModel): + name: str + semanticVersion: str + +class LifecyclePolicySummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + status: Optional[LifecyclePolicyStatusType] = None + executionRole: Optional[str] = None + resourceType: Optional[LifecyclePolicyResourceTypeType] = None + dateCreated: Optional[datetime] = None + dateUpdated: Optional[datetime] = None + dateLastRun: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class ListComponentBuildVersionsRequestRequestTypeDef(BaseModel): + componentVersionArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImagePackagesRequestRequestTypeDef(BaseModel): + imageBuildVersionArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLifecycleExecutionResourcesRequestRequestTypeDef(BaseModel): + lifecycleExecutionId: str + parentResourceId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLifecycleExecutionsRequestRequestTypeDef(BaseModel): + resourceArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListWaitingWorkflowStepsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkflowStepExecutionTypeDef(BaseModel): + stepExecutionId: Optional[str] = None + imageBuildVersionArn: Optional[str] = None + workflowExecutionId: Optional[str] = None + workflowBuildVersionArn: Optional[str] = None + name: Optional[str] = None + action: Optional[str] = None + startTime: Optional[str] = None + +class ListWorkflowBuildVersionsRequestRequestTypeDef(BaseModel): + workflowVersionArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListWorkflowExecutionsRequestRequestTypeDef(BaseModel): + imageBuildVersionArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkflowExecutionMetadataTypeDef(BaseModel): + workflowBuildVersionArn: Optional[str] = None + workflowExecutionId: Optional[str] = None + type: Optional[WorkflowTypeType] = None + status: Optional[WorkflowExecutionStatusType] = None + message: Optional[str] = None + totalStepCount: Optional[int] = None + totalStepsSucceeded: Optional[int] = None + totalStepsFailed: Optional[int] = None + totalStepsSkipped: Optional[int] = None + startTime: Optional[str] = None + endTime: Optional[str] = None + parallelGroup: Optional[str] = None + +class ListWorkflowStepExecutionsRequestRequestTypeDef(BaseModel): + workflowExecutionId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkflowStepMetadataTypeDef(BaseModel): + stepExecutionId: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + action: Optional[str] = None + status: Optional[WorkflowStepExecutionStatusType] = None + rollbackStatus: Optional[WorkflowStepExecutionRollbackStatusType] = None + message: Optional[str] = None + inputs: Optional[str] = None + outputs: Optional[str] = None + startTime: Optional[str] = None + endTime: Optional[str] = None + +class WorkflowVersionTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + description: Optional[str] = None + type: Optional[WorkflowTypeType] = None + owner: Optional[str] = None + dateCreated: Optional[str] = None + +class S3LogsTypeDef(BaseModel): + s3BucketName: Optional[str] = None + s3KeyPrefix: Optional[str] = None + +class VulnerablePackageTypeDef(BaseModel): + name: Optional[str] = None + version: Optional[str] = None + sourceLayerHash: Optional[str] = None + epoch: Optional[int] = None + release: Optional[str] = None + arch: Optional[str] = None + packageManager: Optional[str] = None + filePath: Optional[str] = None + fixedInVersion: Optional[str] = None + remediation: Optional[str] = None + +class PutComponentPolicyRequestRequestTypeDef(BaseModel): + componentArn: str + policy: str + +class PutContainerRecipePolicyRequestRequestTypeDef(BaseModel): + containerRecipeArn: str + policy: str + +class PutImagePolicyRequestRequestTypeDef(BaseModel): + imageArn: str + policy: str + +class PutImageRecipePolicyRequestRequestTypeDef(BaseModel): + imageRecipeArn: str + policy: str + +class RemediationRecommendationTypeDef(BaseModel): + text: Optional[str] = None + url: Optional[str] = None + +class ResourceStateTypeDef(BaseModel): + status: Optional[ResourceStatusType] = None + +class ResourceStateUpdateIncludeResourcesTypeDef(BaseModel): + amis: Optional[bool] = None + snapshots: Optional[bool] = None + containers: Optional[bool] = None + +class SendWorkflowStepActionRequestRequestTypeDef(BaseModel): + stepExecutionId: str + imageBuildVersionArn: str + action: WorkflowStepActionTypeType + clientToken: str + reason: Optional[str] = None + +class StartImagePipelineExecutionRequestRequestTypeDef(BaseModel): + imagePipelineArn: str + clientToken: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class WorkflowParameterOutputTypeDef(BaseModel): + name: str + value: List[str] + +class WorkflowParameterTypeDef(BaseModel): + name: str + value: Sequence[str] + +class WorkflowParameterDetailTypeDef(BaseModel): + name: str + type: str + defaultValue: Optional[List[str]] = None + description: Optional[str] = None + +class WorkflowStateTypeDef(BaseModel): + status: Optional[Literal["DEPRECATED"]] = None + reason: Optional[str] = None + +class AccountAggregationTypeDef(BaseModel): + accountId: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class ImageAggregationTypeDef(BaseModel): + imageBuildVersionArn: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class ImagePipelineAggregationTypeDef(BaseModel): + imagePipelineArn: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class VulnerabilityIdAggregationTypeDef(BaseModel): + vulnerabilityId: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class AdditionalInstanceConfigurationTypeDef(BaseModel): + systemsManagerAgent: Optional[SystemsManagerAgentTypeDef] = None + userDataOverride: Optional[str] = None + +class AmiDistributionConfigurationOutputTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + targetAccountIds: Optional[List[str]] = None + amiTags: Optional[Dict[str, str]] = None + kmsKeyId: Optional[str] = None + launchPermission: Optional[LaunchPermissionConfigurationOutputTypeDef] = None + +class AmiDistributionConfigurationTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + targetAccountIds: Optional[Sequence[str]] = None + amiTags: Optional[Mapping[str, str]] = None + kmsKeyId: Optional[str] = None + launchPermission: Optional[LaunchPermissionConfigurationTypeDef] = None + +class AmiTypeDef(BaseModel): + region: Optional[str] = None + image: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + state: Optional[ImageStateTypeDef] = None + accountId: Optional[str] = None + +class CancelImageCreationResponseTypeDef(BaseModel): + requestId: str + clientToken: str + imageBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelLifecycleExecutionResponseTypeDef(BaseModel): + lifecycleExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateComponentResponseTypeDef(BaseModel): + requestId: str + clientToken: str + componentBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContainerRecipeResponseTypeDef(BaseModel): + requestId: str + clientToken: str + containerRecipeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDistributionConfigurationResponseTypeDef(BaseModel): + requestId: str + clientToken: str + distributionConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImagePipelineResponseTypeDef(BaseModel): + requestId: str + clientToken: str + imagePipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageRecipeResponseTypeDef(BaseModel): + requestId: str + clientToken: str + imageRecipeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageResponseTypeDef(BaseModel): + requestId: str + clientToken: str + imageBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInfrastructureConfigurationResponseTypeDef(BaseModel): + requestId: str + clientToken: str + infrastructureConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLifecyclePolicyResponseTypeDef(BaseModel): + clientToken: str + lifecyclePolicyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowResponseTypeDef(BaseModel): + clientToken: str + workflowBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteComponentResponseTypeDef(BaseModel): + requestId: str + componentBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteContainerRecipeResponseTypeDef(BaseModel): + requestId: str + containerRecipeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDistributionConfigurationResponseTypeDef(BaseModel): + requestId: str + distributionConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImagePipelineResponseTypeDef(BaseModel): + requestId: str + imagePipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImageRecipeResponseTypeDef(BaseModel): + requestId: str + imageRecipeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImageResponseTypeDef(BaseModel): + requestId: str + imageBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInfrastructureConfigurationResponseTypeDef(BaseModel): + requestId: str + infrastructureConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLifecyclePolicyResponseTypeDef(BaseModel): + lifecyclePolicyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkflowResponseTypeDef(BaseModel): + workflowBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentPolicyResponseTypeDef(BaseModel): + requestId: str + policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContainerRecipePolicyResponseTypeDef(BaseModel): + requestId: str + policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImagePolicyResponseTypeDef(BaseModel): + requestId: str + policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImageRecipePolicyResponseTypeDef(BaseModel): + requestId: str + policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowExecutionResponseTypeDef(BaseModel): + requestId: str + workflowBuildVersionArn: str + workflowExecutionId: str + imageBuildVersionArn: str + type: WorkflowTypeType + status: WorkflowExecutionStatusType + message: str + totalStepCount: int + totalStepsSucceeded: int + totalStepsFailed: int + totalStepsSkipped: int + startTime: str + endTime: str + parallelGroup: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowStepExecutionResponseTypeDef(BaseModel): + requestId: str + stepExecutionId: str + workflowBuildVersionArn: str + workflowExecutionId: str + imageBuildVersionArn: str + name: str + description: str + action: str + status: WorkflowStepExecutionStatusType + rollbackStatus: WorkflowStepExecutionRollbackStatusType + message: str + inputs: str + outputs: str + startTime: str + endTime: str + onFailure: str + timeoutSeconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class ImportComponentResponseTypeDef(BaseModel): + requestId: str + clientToken: str + componentBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportVmImageResponseTypeDef(BaseModel): + requestId: str + imageArn: str + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutComponentPolicyResponseTypeDef(BaseModel): + requestId: str + componentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutContainerRecipePolicyResponseTypeDef(BaseModel): + requestId: str + containerRecipeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutImagePolicyResponseTypeDef(BaseModel): + requestId: str + imageArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutImageRecipePolicyResponseTypeDef(BaseModel): + requestId: str + imageRecipeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendWorkflowStepActionResponseTypeDef(BaseModel): + stepExecutionId: str + imageBuildVersionArn: str + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImagePipelineExecutionResponseTypeDef(BaseModel): + requestId: str + clientToken: str + imageBuildVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartResourceStateUpdateResponseTypeDef(BaseModel): + lifecycleExecutionId: str + resourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDistributionConfigurationResponseTypeDef(BaseModel): + requestId: str + clientToken: str + distributionConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateImagePipelineResponseTypeDef(BaseModel): + requestId: str + clientToken: str + imagePipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInfrastructureConfigurationResponseTypeDef(BaseModel): + requestId: str + clientToken: str + infrastructureConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLifecyclePolicyResponseTypeDef(BaseModel): + lifecyclePolicyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ComponentConfigurationOutputTypeDef(BaseModel): + componentArn: str + parameters: Optional[List[ComponentParameterOutputTypeDef]] = None + +class ComponentConfigurationTypeDef(BaseModel): + componentArn: str + parameters: Optional[Sequence[ComponentParameterTypeDef]] = None + +class ComponentSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + platform: Optional[PlatformType] = None + supportedOsVersions: Optional[List[str]] = None + state: Optional[ComponentStateTypeDef] = None + type: Optional[ComponentTypeType] = None + owner: Optional[str] = None + description: Optional[str] = None + changeDescription: Optional[str] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + publisher: Optional[str] = None + obfuscate: Optional[bool] = None + +class ComponentTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + description: Optional[str] = None + changeDescription: Optional[str] = None + type: Optional[ComponentTypeType] = None + platform: Optional[PlatformType] = None + supportedOsVersions: Optional[List[str]] = None + state: Optional[ComponentStateTypeDef] = None + parameters: Optional[List[ComponentParameterDetailTypeDef]] = None + owner: Optional[str] = None + data: Optional[str] = None + kmsKeyId: Optional[str] = None + encrypted: Optional[bool] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + publisher: Optional[str] = None + obfuscate: Optional[bool] = None + +class ListComponentsResponseTypeDef(BaseModel): + requestId: str + componentVersionList: List[ComponentVersionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ContainerDistributionConfigurationOutputTypeDef(BaseModel): + targetRepository: TargetContainerRepositoryTypeDef + description: Optional[str] = None + containerTags: Optional[List[str]] = None + +class ContainerDistributionConfigurationTypeDef(BaseModel): + targetRepository: TargetContainerRepositoryTypeDef + description: Optional[str] = None + containerTags: Optional[Sequence[str]] = None + +class ListContainerRecipesResponseTypeDef(BaseModel): + requestId: str + containerRecipeSummaryList: List[ContainerRecipeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CvssScoreDetailsTypeDef(BaseModel): + scoreSource: Optional[str] = None + cvssSource: Optional[str] = None + version: Optional[str] = None + score: Optional[float] = None + scoringVector: Optional[str] = None + adjustments: Optional[List[CvssScoreAdjustmentTypeDef]] = None + +class ListDistributionConfigurationsResponseTypeDef(BaseModel): + requestId: str + distributionConfigurationSummaryList: List[DistributionConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceBlockDeviceMappingTypeDef(BaseModel): + deviceName: Optional[str] = None + ebs: Optional[EbsInstanceBlockDeviceSpecificationTypeDef] = None + virtualName: Optional[str] = None + noDevice: Optional[str] = None + +class ImageScanningConfigurationOutputTypeDef(BaseModel): + imageScanningEnabled: Optional[bool] = None + ecrConfiguration: Optional[EcrConfigurationOutputTypeDef] = None + +class ImageScanningConfigurationTypeDef(BaseModel): + imageScanningEnabled: Optional[bool] = None + ecrConfiguration: Optional[EcrConfigurationTypeDef] = None + +class FastLaunchConfigurationTypeDef(BaseModel): + enabled: bool + snapshotConfiguration: Optional[FastLaunchSnapshotConfigurationTypeDef] = None + maxParallelLaunches: Optional[int] = None + launchTemplate: Optional[FastLaunchLaunchTemplateSpecificationTypeDef] = None + accountId: Optional[str] = None + +class ListComponentsRequestRequestTypeDef(BaseModel): + owner: Optional[OwnershipType] = None + filters: Optional[Sequence[FilterTypeDef]] = None + byName: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListContainerRecipesRequestRequestTypeDef(BaseModel): + owner: Optional[OwnershipType] = None + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDistributionConfigurationsRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImageBuildVersionsRequestRequestTypeDef(BaseModel): + imageVersionArn: str + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImagePipelineImagesRequestRequestTypeDef(BaseModel): + imagePipelineArn: str + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImagePipelinesRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImageRecipesRequestRequestTypeDef(BaseModel): + owner: Optional[OwnershipType] = None + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImageScanFindingAggregationsRequestRequestTypeDef(BaseModel): + filter: Optional[FilterTypeDef] = None + nextToken: Optional[str] = None + +class ListImagesRequestRequestTypeDef(BaseModel): + owner: Optional[OwnershipType] = None + filters: Optional[Sequence[FilterTypeDef]] = None + byName: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + includeDeprecated: Optional[bool] = None + +class ListInfrastructureConfigurationsRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLifecyclePoliciesRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListWorkflowsRequestRequestTypeDef(BaseModel): + owner: Optional[OwnershipType] = None + filters: Optional[Sequence[FilterTypeDef]] = None + byName: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImagePackagesResponseTypeDef(BaseModel): + requestId: str + imagePackageList: List[ImagePackageTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImageRecipesResponseTypeDef(BaseModel): + requestId: str + imageRecipeSummaryList: List[ImageRecipeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImageScanFindingsRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[ImageScanFindingsFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImagesResponseTypeDef(BaseModel): + requestId: str + imageVersionList: List[ImageVersionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListInfrastructureConfigurationsResponseTypeDef(BaseModel): + requestId: str + infrastructureConfigurationSummaryList: List[InfrastructureConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LifecycleExecutionSnapshotResourceTypeDef(BaseModel): + snapshotId: Optional[str] = None + state: Optional[LifecycleExecutionResourceStateTypeDef] = None + +class LifecycleExecutionTypeDef(BaseModel): + lifecycleExecutionId: Optional[str] = None + lifecyclePolicyArn: Optional[str] = None + resourcesImpactedSummary: Optional[LifecycleExecutionResourcesImpactedSummaryTypeDef] = None + state: Optional[LifecycleExecutionStateTypeDef] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class LifecyclePolicyDetailActionTypeDef(BaseModel): + type: LifecyclePolicyDetailActionTypeType + includeResources: Optional[LifecyclePolicyDetailActionIncludeResourcesTypeDef] = None + +class LifecyclePolicyDetailExclusionRulesAmisOutputTypeDef(BaseModel): + isPublic: Optional[bool] = None + regions: Optional[List[str]] = None + sharedAccounts: Optional[List[str]] = None + lastLaunched: Optional[LifecyclePolicyDetailExclusionRulesAmisLastLaunchedTypeDef] = None + tagMap: Optional[Dict[str, str]] = None + +class LifecyclePolicyDetailExclusionRulesAmisTypeDef(BaseModel): + isPublic: Optional[bool] = None + regions: Optional[Sequence[str]] = None + sharedAccounts: Optional[Sequence[str]] = None + lastLaunched: Optional[LifecyclePolicyDetailExclusionRulesAmisLastLaunchedTypeDef] = None + tagMap: Optional[Mapping[str, str]] = None + +class LifecyclePolicyResourceSelectionOutputTypeDef(BaseModel): + recipes: Optional[List[LifecyclePolicyResourceSelectionRecipeTypeDef]] = None + tagMap: Optional[Dict[str, str]] = None + +class LifecyclePolicyResourceSelectionTypeDef(BaseModel): + recipes: Optional[Sequence[LifecyclePolicyResourceSelectionRecipeTypeDef]] = None + tagMap: Optional[Mapping[str, str]] = None + +class ListLifecyclePoliciesResponseTypeDef(BaseModel): + lifecyclePolicySummaryList: List[LifecyclePolicySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWaitingWorkflowStepsResponseTypeDef(BaseModel): + steps: List[WorkflowStepExecutionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowExecutionsResponseTypeDef(BaseModel): + requestId: str + workflowExecutions: List[WorkflowExecutionMetadataTypeDef] + imageBuildVersionArn: str + message: str + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowStepExecutionsResponseTypeDef(BaseModel): + requestId: str + steps: List[WorkflowStepMetadataTypeDef] + workflowBuildVersionArn: str + workflowExecutionId: str + imageBuildVersionArn: str + message: str + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowsResponseTypeDef(BaseModel): + workflowVersionList: List[WorkflowVersionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingTypeDef(BaseModel): + s3Logs: Optional[S3LogsTypeDef] = None + +class PackageVulnerabilityDetailsTypeDef(BaseModel): + vulnerabilityId: str + vulnerablePackages: Optional[List[VulnerablePackageTypeDef]] = None + source: Optional[str] = None + cvss: Optional[List[CvssScoreTypeDef]] = None + relatedVulnerabilities: Optional[List[str]] = None + sourceUrl: Optional[str] = None + vendorSeverity: Optional[str] = None + vendorCreatedAt: Optional[datetime] = None + vendorUpdatedAt: Optional[datetime] = None + referenceUrls: Optional[List[str]] = None + +class RemediationTypeDef(BaseModel): + recommendation: Optional[RemediationRecommendationTypeDef] = None + +class WorkflowConfigurationOutputTypeDef(BaseModel): + workflowArn: str + parameters: Optional[List[WorkflowParameterOutputTypeDef]] = None + parallelGroup: Optional[str] = None + onFailure: Optional[OnWorkflowFailureType] = None + +class WorkflowConfigurationTypeDef(BaseModel): + workflowArn: str + parameters: Optional[Sequence[WorkflowParameterTypeDef]] = None + parallelGroup: Optional[str] = None + onFailure: Optional[OnWorkflowFailureType] = None + +class WorkflowSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + description: Optional[str] = None + changeDescription: Optional[str] = None + type: Optional[WorkflowTypeType] = None + owner: Optional[str] = None + state: Optional[WorkflowStateTypeDef] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class WorkflowTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + description: Optional[str] = None + changeDescription: Optional[str] = None + type: Optional[WorkflowTypeType] = None + state: Optional[WorkflowStateTypeDef] = None + owner: Optional[str] = None + data: Optional[str] = None + kmsKeyId: Optional[str] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + parameters: Optional[List[WorkflowParameterDetailTypeDef]] = None + +class ImageScanFindingAggregationTypeDef(BaseModel): + accountAggregation: Optional[AccountAggregationTypeDef] = None + imageAggregation: Optional[ImageAggregationTypeDef] = None + imagePipelineAggregation: Optional[ImagePipelineAggregationTypeDef] = None + vulnerabilityIdAggregation: Optional[VulnerabilityIdAggregationTypeDef] = None + +class OutputResourcesTypeDef(BaseModel): + amis: Optional[List[AmiTypeDef]] = None + containers: Optional[List[ContainerTypeDef]] = None + +class ListComponentBuildVersionsResponseTypeDef(BaseModel): + requestId: str + componentSummaryList: List[ComponentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentResponseTypeDef(BaseModel): + requestId: str + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InspectorScoreDetailsTypeDef(BaseModel): + adjustedCvss: Optional[CvssScoreDetailsTypeDef] = None + +class ImageRecipeTypeDef(BaseModel): + arn: Optional[str] = None + type: Optional[ImageTypeType] = None + name: Optional[str] = None + description: Optional[str] = None + platform: Optional[PlatformType] = None + owner: Optional[str] = None + version: Optional[str] = None + components: Optional[List[ComponentConfigurationOutputTypeDef]] = None + parentImage: Optional[str] = None + blockDeviceMappings: Optional[List[InstanceBlockDeviceMappingTypeDef]] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + workingDirectory: Optional[str] = None + additionalInstanceConfiguration: Optional[AdditionalInstanceConfigurationTypeDef] = None + +class InstanceConfigurationOutputTypeDef(BaseModel): + image: Optional[str] = None + blockDeviceMappings: Optional[List[InstanceBlockDeviceMappingTypeDef]] = None + +class InstanceConfigurationTypeDef(BaseModel): + image: Optional[str] = None + blockDeviceMappings: Optional[Sequence[InstanceBlockDeviceMappingTypeDef]] = None + +class DistributionOutputTypeDef(BaseModel): + region: str + amiDistributionConfiguration: Optional[AmiDistributionConfigurationOutputTypeDef] = None + containerDistributionConfiguration: Optional[ ContainerDistributionConfigurationOutputTypeDef ] = None + licenseConfigurationArns: Optional[List[str]] = None + launchTemplateConfigurations: Optional[List[LaunchTemplateConfigurationTypeDef]] = None + s3ExportConfiguration: Optional[S3ExportConfigurationTypeDef] = None + fastLaunchConfigurations: Optional[List[FastLaunchConfigurationTypeDef]] = None + +class DistributionTypeDef(BaseModel): + region: str + amiDistributionConfiguration: Optional[AmiDistributionConfigurationTypeDef] = None + containerDistributionConfiguration: Optional[ ContainerDistributionConfigurationTypeDef ] = None + licenseConfigurationArns: Optional[Sequence[str]] = None + launchTemplateConfigurations: Optional[Sequence[LaunchTemplateConfigurationTypeDef]] = None + s3ExportConfiguration: Optional[S3ExportConfigurationTypeDef] = None + fastLaunchConfigurations: Optional[Sequence[FastLaunchConfigurationTypeDef]] = None + +class LifecycleExecutionResourceTypeDef(BaseModel): + accountId: Optional[str] = None + resourceId: Optional[str] = None + state: Optional[LifecycleExecutionResourceStateTypeDef] = None + action: Optional[LifecycleExecutionResourceActionTypeDef] = None + region: Optional[str] = None + snapshots: Optional[List[LifecycleExecutionSnapshotResourceTypeDef]] = None + imageUris: Optional[List[str]] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class GetLifecycleExecutionResponseTypeDef(BaseModel): + lifecycleExecution: LifecycleExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLifecycleExecutionsResponseTypeDef(BaseModel): + lifecycleExecutions: List[LifecycleExecutionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LifecyclePolicyDetailExclusionRulesOutputTypeDef(BaseModel): + tagMap: Optional[Dict[str, str]] = None + amis: Optional[LifecyclePolicyDetailExclusionRulesAmisOutputTypeDef] = None + +class LifecyclePolicyDetailExclusionRulesTypeDef(BaseModel): + tagMap: Optional[Mapping[str, str]] = None + amis: Optional[LifecyclePolicyDetailExclusionRulesAmisTypeDef] = None + +class ResourceStateUpdateExclusionRulesTypeDef(BaseModel): + amis: Optional[LifecyclePolicyDetailExclusionRulesAmisTypeDef] = None + +class CreateInfrastructureConfigurationRequestRequestTypeDef(BaseModel): + name: str + instanceProfileName: str + clientToken: str + description: Optional[str] = None + instanceTypes: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + subnetId: Optional[str] = None + logging: Optional[LoggingTypeDef] = None + keyPair: Optional[str] = None + terminateInstanceOnFailure: Optional[bool] = None + snsTopicArn: Optional[str] = None + resourceTags: Optional[Mapping[str, str]] = None + instanceMetadataOptions: Optional[InstanceMetadataOptionsTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class InfrastructureConfigurationTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + instanceTypes: Optional[List[str]] = None + instanceProfileName: Optional[str] = None + securityGroupIds: Optional[List[str]] = None + subnetId: Optional[str] = None + logging: Optional[LoggingTypeDef] = None + keyPair: Optional[str] = None + terminateInstanceOnFailure: Optional[bool] = None + snsTopicArn: Optional[str] = None + dateCreated: Optional[str] = None + dateUpdated: Optional[str] = None + resourceTags: Optional[Dict[str, str]] = None + instanceMetadataOptions: Optional[InstanceMetadataOptionsTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class UpdateInfrastructureConfigurationRequestRequestTypeDef(BaseModel): + infrastructureConfigurationArn: str + instanceProfileName: str + clientToken: str + description: Optional[str] = None + instanceTypes: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + subnetId: Optional[str] = None + logging: Optional[LoggingTypeDef] = None + keyPair: Optional[str] = None + terminateInstanceOnFailure: Optional[bool] = None + snsTopicArn: Optional[str] = None + resourceTags: Optional[Mapping[str, str]] = None + instanceMetadataOptions: Optional[InstanceMetadataOptionsTypeDef] = None + +class ImagePipelineTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + platform: Optional[PlatformType] = None + enhancedImageMetadataEnabled: Optional[bool] = None + imageRecipeArn: Optional[str] = None + containerRecipeArn: Optional[str] = None + infrastructureConfigurationArn: Optional[str] = None + distributionConfigurationArn: Optional[str] = None + imageTestsConfiguration: Optional[ImageTestsConfigurationTypeDef] = None + schedule: Optional[ScheduleTypeDef] = None + status: Optional[PipelineStatusType] = None + dateCreated: Optional[str] = None + dateUpdated: Optional[str] = None + dateLastRun: Optional[str] = None + dateNextRun: Optional[str] = None + tags: Optional[Dict[str, str]] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationOutputTypeDef] = None + executionRole: Optional[str] = None + workflows: Optional[List[WorkflowConfigurationOutputTypeDef]] = None + +class ListWorkflowBuildVersionsResponseTypeDef(BaseModel): + workflowSummaryList: List[WorkflowSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowResponseTypeDef(BaseModel): + workflow: WorkflowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListImageScanFindingAggregationsResponseTypeDef(BaseModel): + requestId: str + aggregationType: str + responses: List[ImageScanFindingAggregationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImageSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + type: Optional[ImageTypeType] = None + version: Optional[str] = None + platform: Optional[PlatformType] = None + osVersion: Optional[str] = None + state: Optional[ImageStateTypeDef] = None + owner: Optional[str] = None + dateCreated: Optional[str] = None + outputResources: Optional[OutputResourcesTypeDef] = None + tags: Optional[Dict[str, str]] = None + buildType: Optional[BuildTypeType] = None + imageSource: Optional[ImageSourceType] = None + deprecationTime: Optional[datetime] = None + lifecycleExecutionId: Optional[str] = None + +class CreateImageRecipeRequestRequestTypeDef(BaseModel): + name: str + semanticVersion: str + components: Sequence[ComponentConfigurationUnionTypeDef] + parentImage: str + clientToken: str + description: Optional[str] = None + blockDeviceMappings: Optional[Sequence[InstanceBlockDeviceMappingTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + workingDirectory: Optional[str] = None + additionalInstanceConfiguration: Optional[AdditionalInstanceConfigurationTypeDef] = None + +class ImageScanFindingTypeDef(BaseModel): + awsAccountId: Optional[str] = None + imageBuildVersionArn: Optional[str] = None + imagePipelineArn: Optional[str] = None + type: Optional[str] = None + description: Optional[str] = None + title: Optional[str] = None + remediation: Optional[RemediationTypeDef] = None + severity: Optional[str] = None + firstObservedAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + inspectorScore: Optional[float] = None + inspectorScoreDetails: Optional[InspectorScoreDetailsTypeDef] = None + packageVulnerabilityDetails: Optional[PackageVulnerabilityDetailsTypeDef] = None + fixAvailable: Optional[str] = None + +class GetImageRecipeResponseTypeDef(BaseModel): + requestId: str + imageRecipe: ImageRecipeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ContainerRecipeTypeDef(BaseModel): + arn: Optional[str] = None + containerType: Optional[Literal["DOCKER"]] = None + name: Optional[str] = None + description: Optional[str] = None + platform: Optional[PlatformType] = None + owner: Optional[str] = None + version: Optional[str] = None + components: Optional[List[ComponentConfigurationOutputTypeDef]] = None + instanceConfiguration: Optional[InstanceConfigurationOutputTypeDef] = None + dockerfileTemplateData: Optional[str] = None + kmsKeyId: Optional[str] = None + encrypted: Optional[bool] = None + parentImage: Optional[str] = None + dateCreated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + workingDirectory: Optional[str] = None + targetRepository: Optional[TargetContainerRepositoryTypeDef] = None + +class CreateContainerRecipeRequestRequestTypeDef(BaseModel): + containerType: Literal["DOCKER"] + name: str + semanticVersion: str + components: Sequence[ComponentConfigurationUnionTypeDef] + parentImage: str + targetRepository: TargetContainerRepositoryTypeDef + clientToken: str + description: Optional[str] = None + instanceConfiguration: Optional[InstanceConfigurationTypeDef] = None + dockerfileTemplateData: Optional[str] = None + dockerfileTemplateUri: Optional[str] = None + platformOverride: Optional[PlatformType] = None + imageOsVersionOverride: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + workingDirectory: Optional[str] = None + kmsKeyId: Optional[str] = None + +class DistributionConfigurationTypeDef(BaseModel): + timeoutMinutes: int + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + distributions: Optional[List[DistributionOutputTypeDef]] = None + dateCreated: Optional[str] = None + dateUpdated: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListLifecycleExecutionResourcesResponseTypeDef(BaseModel): + lifecycleExecutionId: str + lifecycleExecutionState: LifecycleExecutionStateTypeDef + resources: List[LifecycleExecutionResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LifecyclePolicyDetailOutputTypeDef(BaseModel): + action: LifecyclePolicyDetailActionTypeDef + filter: LifecyclePolicyDetailFilterTypeDef + exclusionRules: Optional[LifecyclePolicyDetailExclusionRulesOutputTypeDef] = None + +class LifecyclePolicyDetailTypeDef(BaseModel): + action: LifecyclePolicyDetailActionTypeDef + filter: LifecyclePolicyDetailFilterTypeDef + exclusionRules: Optional[LifecyclePolicyDetailExclusionRulesTypeDef] = None + +class StartResourceStateUpdateRequestRequestTypeDef(BaseModel): + resourceArn: str + state: ResourceStateTypeDef + clientToken: str + executionRole: Optional[str] = None + includeResources: Optional[ResourceStateUpdateIncludeResourcesTypeDef] = None + exclusionRules: Optional[ResourceStateUpdateExclusionRulesTypeDef] = None + updateAt: Optional[TimestampTypeDef] = None + +class GetInfrastructureConfigurationResponseTypeDef(BaseModel): + requestId: str + infrastructureConfiguration: InfrastructureConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetImagePipelineResponseTypeDef(BaseModel): + requestId: str + imagePipeline: ImagePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListImagePipelinesResponseTypeDef(BaseModel): + requestId: str + imagePipelineList: List[ImagePipelineTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImagePipelineRequestRequestTypeDef(BaseModel): + name: str + infrastructureConfigurationArn: str + clientToken: str + description: Optional[str] = None + imageRecipeArn: Optional[str] = None + containerRecipeArn: Optional[str] = None + distributionConfigurationArn: Optional[str] = None + imageTestsConfiguration: Optional[ImageTestsConfigurationTypeDef] = None + enhancedImageMetadataEnabled: Optional[bool] = None + schedule: Optional[ScheduleTypeDef] = None + status: Optional[PipelineStatusType] = None + tags: Optional[Mapping[str, str]] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationTypeDef] = None + workflows: Optional[Sequence[WorkflowConfigurationUnionTypeDef]] = None + executionRole: Optional[str] = None + +class CreateImageRequestRequestTypeDef(BaseModel): + infrastructureConfigurationArn: str + clientToken: str + imageRecipeArn: Optional[str] = None + containerRecipeArn: Optional[str] = None + distributionConfigurationArn: Optional[str] = None + imageTestsConfiguration: Optional[ImageTestsConfigurationTypeDef] = None + enhancedImageMetadataEnabled: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationTypeDef] = None + workflows: Optional[Sequence[WorkflowConfigurationUnionTypeDef]] = None + executionRole: Optional[str] = None + +class UpdateImagePipelineRequestRequestTypeDef(BaseModel): + imagePipelineArn: str + infrastructureConfigurationArn: str + clientToken: str + description: Optional[str] = None + imageRecipeArn: Optional[str] = None + containerRecipeArn: Optional[str] = None + distributionConfigurationArn: Optional[str] = None + imageTestsConfiguration: Optional[ImageTestsConfigurationTypeDef] = None + enhancedImageMetadataEnabled: Optional[bool] = None + schedule: Optional[ScheduleTypeDef] = None + status: Optional[PipelineStatusType] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationTypeDef] = None + workflows: Optional[Sequence[WorkflowConfigurationUnionTypeDef]] = None + executionRole: Optional[str] = None + +class ListImageBuildVersionsResponseTypeDef(BaseModel): + requestId: str + imageSummaryList: List[ImageSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImagePipelineImagesResponseTypeDef(BaseModel): + requestId: str + imageSummaryList: List[ImageSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImageScanFindingsResponseTypeDef(BaseModel): + requestId: str + findings: List[ImageScanFindingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContainerRecipeResponseTypeDef(BaseModel): + requestId: str + containerRecipe: ContainerRecipeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDistributionConfigurationResponseTypeDef(BaseModel): + requestId: str + distributionConfiguration: DistributionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImageTypeDef(BaseModel): + arn: Optional[str] = None + type: Optional[ImageTypeType] = None + name: Optional[str] = None + version: Optional[str] = None + platform: Optional[PlatformType] = None + enhancedImageMetadataEnabled: Optional[bool] = None + osVersion: Optional[str] = None + state: Optional[ImageStateTypeDef] = None + imageRecipe: Optional[ImageRecipeTypeDef] = None + containerRecipe: Optional[ContainerRecipeTypeDef] = None + sourcePipelineName: Optional[str] = None + sourcePipelineArn: Optional[str] = None + infrastructureConfiguration: Optional[InfrastructureConfigurationTypeDef] = None + distributionConfiguration: Optional[DistributionConfigurationTypeDef] = None + imageTestsConfiguration: Optional[ImageTestsConfigurationTypeDef] = None + dateCreated: Optional[str] = None + outputResources: Optional[OutputResourcesTypeDef] = None + tags: Optional[Dict[str, str]] = None + buildType: Optional[BuildTypeType] = None + imageSource: Optional[ImageSourceType] = None + scanState: Optional[ImageScanStateTypeDef] = None + imageScanningConfiguration: Optional[ImageScanningConfigurationOutputTypeDef] = None + deprecationTime: Optional[datetime] = None + lifecycleExecutionId: Optional[str] = None + executionRole: Optional[str] = None + workflows: Optional[List[WorkflowConfigurationOutputTypeDef]] = None + +class CreateDistributionConfigurationRequestRequestTypeDef(BaseModel): + name: str + distributions: Sequence[DistributionUnionTypeDef] + clientToken: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateDistributionConfigurationRequestRequestTypeDef(BaseModel): + distributionConfigurationArn: str + distributions: Sequence[DistributionUnionTypeDef] + clientToken: str + description: Optional[str] = None + +class LifecyclePolicyTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + status: Optional[LifecyclePolicyStatusType] = None + executionRole: Optional[str] = None + resourceType: Optional[LifecyclePolicyResourceTypeType] = None + policyDetails: Optional[List[LifecyclePolicyDetailOutputTypeDef]] = None + resourceSelection: Optional[LifecyclePolicyResourceSelectionOutputTypeDef] = None + dateCreated: Optional[datetime] = None + dateUpdated: Optional[datetime] = None + dateLastRun: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class GetImageResponseTypeDef(BaseModel): + requestId: str + image: ImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLifecyclePolicyResponseTypeDef(BaseModel): + lifecyclePolicy: LifecyclePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLifecyclePolicyRequestRequestTypeDef(BaseModel): + name: str + executionRole: str + resourceType: LifecyclePolicyResourceTypeType + policyDetails: Sequence[LifecyclePolicyDetailUnionTypeDef] + resourceSelection: LifecyclePolicyResourceSelectionTypeDef + clientToken: str + description: Optional[str] = None + status: Optional[LifecyclePolicyStatusType] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateLifecyclePolicyRequestRequestTypeDef(BaseModel): + lifecyclePolicyArn: str + executionRole: str + resourceType: LifecyclePolicyResourceTypeType + policyDetails: Sequence[LifecyclePolicyDetailUnionTypeDef] + resourceSelection: LifecyclePolicyResourceSelectionTypeDef + clientToken: str + description: Optional[str] = None + status: Optional[LifecyclePolicyStatusType] = None + diff --git a/aws_resource_validator/pydantic_models/imagebuilder_constants.py b/aws_resource_validator/pydantic_models/imagebuilder_constants.py new file mode 100644 index 00000000..18d087fc --- /dev/null +++ b/aws_resource_validator/pydantic_models/imagebuilder_constants.py @@ -0,0 +1,456 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BuildTypeType = Literal["IMPORT", "SCHEDULED", "USER_INITIATED"] +ComponentFormatType = Literal["SHELL"] +ComponentStatusType = Literal["DEPRECATED"] +ComponentTypeType = Literal["BUILD", "TEST"] +ContainerRepositoryServiceType = Literal["ECR"] +ContainerTypeType = Literal["DOCKER"] +DiskImageFormatType = Literal["RAW", "VHD", "VMDK"] +EbsVolumeTypeType = Literal["gp2", "gp3", "io1", "io2", "sc1", "st1", "standard"] +ImageScanStatusType = Literal["ABANDONED", "COLLECTING", "COMPLETED", "FAILED", "PENDING", "SCANNING", "TIMED_OUT"] +ImageSourceType = Literal["AMAZON_MANAGED", "AWS_MARKETPLACE", "CUSTOM", "IMPORTED"] +ImageStatusType = Literal["AVAILABLE", + "BUILDING", + "CANCELLED", + "CREATING", + "DELETED", + "DEPRECATED", + "DISABLED", + "DISTRIBUTING", + "FAILED", + "INTEGRATING", + "PENDING", + "TESTING",] +ImageTypeType = Literal["AMI", "DOCKER"] +LifecycleExecutionResourceActionNameType = Literal["AVAILABLE", "DELETE", "DEPRECATE", "DISABLE"] +LifecycleExecutionResourceStatusType = Literal["FAILED", "IN_PROGRESS", "SKIPPED", "SUCCESS"] +LifecycleExecutionStatusType = Literal["CANCELLED", "CANCELLING", "FAILED", "IN_PROGRESS", "PENDING", "SUCCESS"] +LifecyclePolicyDetailActionTypeType = Literal["DELETE", "DEPRECATE", "DISABLE"] +LifecyclePolicyDetailFilterTypeType = Literal["AGE", "COUNT"] +LifecyclePolicyResourceTypeType = Literal["AMI_IMAGE", "CONTAINER_IMAGE"] +LifecyclePolicyStatusType = Literal["DISABLED", "ENABLED"] +LifecyclePolicyTimeUnitType = Literal["DAYS", "MONTHS", "WEEKS", "YEARS"] +OnWorkflowFailureType = Literal["ABORT", "CONTINUE"] +OwnershipType = Literal["Amazon", "Self", "Shared", "ThirdParty"] +PipelineExecutionStartConditionType = Literal["EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE", "EXPRESSION_MATCH_ONLY"] +PipelineStatusType = Literal["DISABLED", "ENABLED"] +PlatformType = Literal["Linux", "Windows"] +ResourceStatusType = Literal["AVAILABLE", "DELETED", "DEPRECATED", "DISABLED"] +WorkflowExecutionStatusType = Literal["CANCELLED", + "COMPLETED", + "FAILED", + "PENDING", + "ROLLBACK_COMPLETED", + "ROLLBACK_IN_PROGRESS", + "RUNNING", + "SKIPPED",] +WorkflowStatusType = Literal["DEPRECATED"] +WorkflowStepActionTypeType = Literal["RESUME", "STOP"] +WorkflowStepExecutionRollbackStatusType = Literal["COMPLETED", "FAILED", "RUNNING", "SKIPPED"] +WorkflowStepExecutionStatusType = Literal["CANCELLED", "COMPLETED", "FAILED", "PENDING", "RUNNING", "SKIPPED"] +WorkflowTypeType = Literal["BUILD", "DISTRIBUTION", "TEST"] +ImagebuilderServiceName = Literal["imagebuilder"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +TimestampTypeDef = Union[datetime, str] +ComponentConfigurationUnionTypeDef = Union[ 'ComponentConfigurationTypeDef', 'ComponentConfigurationOutputTypeDef' ] +ImageScanningConfigurationUnionTypeDef = Union[ 'ImageScanningConfigurationTypeDef', 'ImageScanningConfigurationOutputTypeDef' ] +LifecyclePolicyResourceSelectionUnionTypeDef = Union[ 'LifecyclePolicyResourceSelectionTypeDef', 'LifecyclePolicyResourceSelectionOutputTypeDef' ] +WorkflowConfigurationUnionTypeDef = Union[ 'WorkflowConfigurationTypeDef', 'WorkflowConfigurationOutputTypeDef' ] +InstanceConfigurationUnionTypeDef = Union[ 'InstanceConfigurationTypeDef', 'InstanceConfigurationOutputTypeDef' ] +DistributionUnionTypeDef = Union['DistributionTypeDef', 'DistributionOutputTypeDef'] +LifecyclePolicyDetailUnionTypeDef = Union[ 'LifecyclePolicyDetailTypeDef', 'LifecyclePolicyDetailOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/importexport_classes.py b/aws_resource_validator/pydantic_models/importexport_classes.py new file mode 100644 index 00000000..6f6cba3a --- /dev/null +++ b/aws_resource_validator/pydantic_models/importexport_classes.py @@ -0,0 +1,128 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.importexport_constants import * + +class ArtifactTypeDef(BaseModel): + Description: Optional[str] = None + URL: Optional[str] = None + +class CancelJobInputRequestTypeDef(BaseModel): + JobId: str + APIVersion: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateJobInputRequestTypeDef(BaseModel): + JobType: JobTypeType + Manifest: str + ValidateOnly: bool + ManifestAddendum: Optional[str] = None + APIVersion: Optional[str] = None + +class GetShippingLabelInputRequestTypeDef(BaseModel): + jobIds: Sequence[str] + name: Optional[str] = None + company: Optional[str] = None + phoneNumber: Optional[str] = None + country: Optional[str] = None + stateOrProvince: Optional[str] = None + city: Optional[str] = None + postalCode: Optional[str] = None + street1: Optional[str] = None + street2: Optional[str] = None + street3: Optional[str] = None + APIVersion: Optional[str] = None + +class GetStatusInputRequestTypeDef(BaseModel): + JobId: str + APIVersion: Optional[str] = None + +class JobTypeDef(BaseModel): + JobId: Optional[str] = None + CreationDate: Optional[datetime] = None + IsCanceled: Optional[bool] = None + JobType: Optional[JobTypeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListJobsInputRequestTypeDef(BaseModel): + MaxJobs: Optional[int] = None + Marker: Optional[str] = None + APIVersion: Optional[str] = None + +class UpdateJobInputRequestTypeDef(BaseModel): + JobId: str + Manifest: str + JobType: JobTypeType + ValidateOnly: bool + APIVersion: Optional[str] = None + +class CancelJobOutputTypeDef(BaseModel): + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobOutputTypeDef(BaseModel): + JobId: str + JobType: JobTypeType + Signature: str + SignatureFileContents: str + WarningMessage: str + ArtifactList: List[ArtifactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetShippingLabelOutputTypeDef(BaseModel): + ShippingLabelURL: str + Warning: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetStatusOutputTypeDef(BaseModel): + JobId: str + JobType: JobTypeType + LocationCode: str + LocationMessage: str + ProgressCode: str + ProgressMessage: str + Carrier: str + TrackingNumber: str + LogBucket: str + LogKey: str + ErrorCount: int + Signature: str + SignatureFileContents: str + CurrentManifest: str + CreationDate: datetime + ArtifactList: List[ArtifactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobOutputTypeDef(BaseModel): + Success: bool + WarningMessage: str + ArtifactList: List[ArtifactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsOutputTypeDef(BaseModel): + Jobs: List[JobTypeDef] + IsTruncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsInputListJobsPaginateTypeDef(BaseModel): + APIVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/importexport_constants.py b/aws_resource_validator/pydantic_models/importexport_constants.py new file mode 100644 index 00000000..73a79f3a --- /dev/null +++ b/aws_resource_validator/pydantic_models/importexport_constants.py @@ -0,0 +1,391 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +JobTypeType = Literal["Export", "Import"] +ListJobsPaginatorName = Literal["list_jobs"] +ImportExportServiceName = Literal["importexport"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_jobs"] diff --git a/aws_resource_validator/pydantic_models/inspector2_classes.py b/aws_resource_validator/pydantic_models/inspector2_classes.py new file mode 100644 index 00000000..3c8d16ad --- /dev/null +++ b/aws_resource_validator/pydantic_models/inspector2_classes.py @@ -0,0 +1,1676 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.inspector2_constants import * + +class SeverityCountsTypeDef(BaseModel): + all: Optional[int] = None + critical: Optional[int] = None + high: Optional[int] = None + medium: Optional[int] = None + +class AccountAggregationTypeDef(BaseModel): + findingType: Optional[AggregationFindingTypeType] = None + resourceType: Optional[AggregationResourceTypeType] = None + sortBy: Optional[AccountSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class StateTypeDef(BaseModel): + errorCode: ErrorCodeType + errorMessage: str + status: StatusType + +class ResourceStatusTypeDef(BaseModel): + ec2: StatusType + ecr: StatusType + lambda: Optional[StatusType] = None + lambdaCode: Optional[StatusType] = None + +class FindingTypeAggregationTypeDef(BaseModel): + findingType: Optional[AggregationFindingTypeType] = None + resourceType: Optional[AggregationResourceTypeType] = None + sortBy: Optional[FindingTypeSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class StringFilterTypeDef(BaseModel): + comparison: StringComparisonType + value: str + +class AssociateMemberRequestRequestTypeDef(BaseModel): + accountId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AtigDataTypeDef(BaseModel): + firstSeen: Optional[datetime] = None + lastSeen: Optional[datetime] = None + targets: Optional[List[str]] = None + ttps: Optional[List[str]] = None + +class AutoEnableTypeDef(BaseModel): + ec2: bool + ecr: bool + lambda: Optional[bool] = None + lambdaCode: Optional[bool] = None + +class AwsEc2InstanceDetailsTypeDef(BaseModel): + iamInstanceProfileArn: Optional[str] = None + imageId: Optional[str] = None + ipV4Addresses: Optional[List[str]] = None + ipV6Addresses: Optional[List[str]] = None + keyName: Optional[str] = None + launchedAt: Optional[datetime] = None + platform: Optional[str] = None + subnetId: Optional[str] = None + type: Optional[str] = None + vpcId: Optional[str] = None + +class AwsEcrContainerImageDetailsTypeDef(BaseModel): + imageHash: str + registry: str + repositoryName: str + architecture: Optional[str] = None + author: Optional[str] = None + imageTags: Optional[List[str]] = None + platform: Optional[str] = None + pushedAt: Optional[datetime] = None + +class LambdaVpcConfigTypeDef(BaseModel): + securityGroupIds: Optional[List[str]] = None + subnetIds: Optional[List[str]] = None + vpcId: Optional[str] = None + +class BatchGetAccountStatusRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + +class BatchGetCodeSnippetRequestRequestTypeDef(BaseModel): + findingArns: Sequence[str] + +class CodeSnippetErrorTypeDef(BaseModel): + errorCode: CodeSnippetErrorCodeType + errorMessage: str + findingArn: str + +class BatchGetFindingDetailsRequestRequestTypeDef(BaseModel): + findingArns: Sequence[str] + +class FindingDetailsErrorTypeDef(BaseModel): + errorCode: FindingDetailsErrorCodeType + errorMessage: str + findingArn: str + +class BatchGetFreeTrialInfoRequestRequestTypeDef(BaseModel): + accountIds: Sequence[str] + +class FreeTrialInfoErrorTypeDef(BaseModel): + accountId: str + code: FreeTrialInfoErrorCodeType + message: str + +class BatchGetMemberEc2DeepInspectionStatusRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + +class FailedMemberAccountEc2DeepInspectionStatusStateTypeDef(BaseModel): + accountId: str + ec2ScanStatus: Optional[StatusType] = None + errorMessage: Optional[str] = None + +class MemberAccountEc2DeepInspectionStatusStateTypeDef(BaseModel): + accountId: str + errorMessage: Optional[str] = None + status: Optional[Ec2DeepInspectionStatusType] = None + +class MemberAccountEc2DeepInspectionStatusTypeDef(BaseModel): + accountId: str + activateDeepInspection: bool + +class CancelFindingsReportRequestRequestTypeDef(BaseModel): + reportId: str + +class CancelSbomExportRequestRequestTypeDef(BaseModel): + reportId: str + +class StatusCountsTypeDef(BaseModel): + failed: Optional[int] = None + passed: Optional[int] = None + skipped: Optional[int] = None + +class CisFindingStatusFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + value: CisFindingStatusType + +class CisNumberFilterTypeDef(BaseModel): + lowerInclusive: Optional[int] = None + upperInclusive: Optional[int] = None + +class CisResultStatusFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + value: CisResultStatusType + +class CisTargetsTypeDef(BaseModel): + accountIds: Optional[List[str]] = None + targetResourceTags: Optional[Dict[str, List[str]]] = None + +class CisSecurityLevelFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + value: CisSecurityLevelType + +class CisStringFilterTypeDef(BaseModel): + comparison: CisStringComparisonType + value: str + +class CisScanResultDetailsTypeDef(BaseModel): + scanArn: str + accountId: Optional[str] = None + checkDescription: Optional[str] = None + checkId: Optional[str] = None + findingArn: Optional[str] = None + level: Optional[CisSecurityLevelType] = None + platform: Optional[str] = None + remediation: Optional[str] = None + status: Optional[CisFindingStatusType] = None + statusReason: Optional[str] = None + targetResourceId: Optional[str] = None + title: Optional[str] = None + +class CisTargetStatusFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + value: CisTargetStatusType + +class CisTargetStatusReasonFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + value: CisTargetStatusReasonType + +class TagFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + key: str + value: str + +class CisScanStatusFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + value: CisScanStatusType + +class CisaDataTypeDef(BaseModel): + action: Optional[str] = None + dateAdded: Optional[datetime] = None + dateDue: Optional[datetime] = None + +class CodeFilePathTypeDef(BaseModel): + endLine: int + fileName: str + filePath: str + startLine: int + +class CodeLineTypeDef(BaseModel): + content: str + lineNumber: int + +class SuggestedFixTypeDef(BaseModel): + code: Optional[str] = None + description: Optional[str] = None + +class ComputePlatformTypeDef(BaseModel): + product: Optional[str] = None + vendor: Optional[str] = None + version: Optional[str] = None + +class CountsTypeDef(BaseModel): + count: Optional[int] = None + groupKey: Optional[GroupKeyType] = None + +class CoverageMapFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + key: str + value: Optional[str] = None + +class CoverageStringFilterTypeDef(BaseModel): + comparison: CoverageStringComparisonType + value: str + +class ScanStatusTypeDef(BaseModel): + reason: ScanStatusReasonType + statusCode: ScanStatusCodeType + +class CreateCisTargetsTypeDef(BaseModel): + accountIds: Sequence[str] + targetResourceTags: Mapping[str, Sequence[str]] + +class DestinationTypeDef(BaseModel): + bucketName: str + kmsKeyArn: str + keyPrefix: Optional[str] = None + +class Cvss2TypeDef(BaseModel): + baseScore: Optional[float] = None + scoringVector: Optional[str] = None + +class Cvss3TypeDef(BaseModel): + baseScore: Optional[float] = None + scoringVector: Optional[str] = None + +class CvssScoreAdjustmentTypeDef(BaseModel): + metric: str + reason: str + +class CvssScoreTypeDef(BaseModel): + baseScore: float + scoringVector: str + source: str + version: str + +class TimeTypeDef(BaseModel): + timeOfDay: str + timezone: str + +class DateFilterExtraOutputTypeDef(BaseModel): + endInclusive: Optional[datetime] = None + startInclusive: Optional[datetime] = None + +class DateFilterOutputTypeDef(BaseModel): + endInclusive: Optional[datetime] = None + startInclusive: Optional[datetime] = None + +class DelegatedAdminAccountTypeDef(BaseModel): + accountId: Optional[str] = None + status: Optional[DelegatedAdminStatusType] = None + +class DelegatedAdminTypeDef(BaseModel): + accountId: Optional[str] = None + relationshipStatus: Optional[RelationshipStatusType] = None + +class DeleteCisScanConfigurationRequestRequestTypeDef(BaseModel): + scanConfigurationArn: str + +class DeleteFilterRequestRequestTypeDef(BaseModel): + arn: str + +class DisableDelegatedAdminAccountRequestRequestTypeDef(BaseModel): + delegatedAdminAccountId: str + +class DisableRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + resourceTypes: Optional[Sequence[ResourceScanTypeType]] = None + +class DisassociateMemberRequestRequestTypeDef(BaseModel): + accountId: str + +class Ec2ScanModeStateTypeDef(BaseModel): + scanMode: Optional[Ec2ScanModeType] = None + scanModeStatus: Optional[Ec2ScanModeStatusType] = None + +class Ec2ConfigurationTypeDef(BaseModel): + scanMode: Ec2ScanModeType + +class MapFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + key: str + value: Optional[str] = None + +class Ec2MetadataTypeDef(BaseModel): + amiId: Optional[str] = None + platform: Optional[Ec2PlatformType] = None + tags: Optional[Dict[str, str]] = None + +class EcrRescanDurationStateTypeDef(BaseModel): + pullDateRescanDuration: Optional[EcrPullDateRescanDurationType] = None + rescanDuration: Optional[EcrRescanDurationType] = None + status: Optional[EcrRescanDurationStatusType] = None + updatedAt: Optional[datetime] = None + +class EcrConfigurationTypeDef(BaseModel): + rescanDuration: EcrRescanDurationType + pullDateRescanDuration: Optional[EcrPullDateRescanDurationType] = None + +class EcrContainerImageMetadataTypeDef(BaseModel): + imagePulledAt: Optional[datetime] = None + tags: Optional[List[str]] = None + +class EcrRepositoryMetadataTypeDef(BaseModel): + name: Optional[str] = None + scanFrequency: Optional[EcrScanFrequencyType] = None + +class EnableDelegatedAdminAccountRequestRequestTypeDef(BaseModel): + delegatedAdminAccountId: str + clientToken: Optional[str] = None + +class EnableRequestRequestTypeDef(BaseModel): + resourceTypes: Sequence[ResourceScanTypeType] + accountIds: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + +class EpssDetailsTypeDef(BaseModel): + score: Optional[float] = None + +class EpssTypeDef(BaseModel): + score: Optional[float] = None + +class EvidenceTypeDef(BaseModel): + evidenceDetail: Optional[str] = None + evidenceRule: Optional[str] = None + severity: Optional[str] = None + +class ExploitObservedTypeDef(BaseModel): + firstSeen: Optional[datetime] = None + lastSeen: Optional[datetime] = None + +class ExploitabilityDetailsTypeDef(BaseModel): + lastKnownExploitAt: Optional[datetime] = None + +class NumberFilterTypeDef(BaseModel): + lowerInclusive: Optional[float] = None + upperInclusive: Optional[float] = None + +class PortRangeFilterTypeDef(BaseModel): + beginInclusive: Optional[int] = None + endInclusive: Optional[int] = None + +class FreeTrialInfoTypeDef(BaseModel): + end: datetime + start: datetime + status: FreeTrialStatusType + type: FreeTrialTypeType + +class GetCisScanReportRequestRequestTypeDef(BaseModel): + scanArn: str + reportFormat: Optional[CisReportFormatType] = None + targetAccounts: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetEncryptionKeyRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + scanType: ScanTypeType + +class GetFindingsReportStatusRequestRequestTypeDef(BaseModel): + reportId: Optional[str] = None + +class GetMemberRequestRequestTypeDef(BaseModel): + accountId: str + +class MemberTypeDef(BaseModel): + accountId: Optional[str] = None + delegatedAdminAccountId: Optional[str] = None + relationshipStatus: Optional[RelationshipStatusType] = None + updatedAt: Optional[datetime] = None + +class GetSbomExportRequestRequestTypeDef(BaseModel): + reportId: str + +class LambdaFunctionMetadataTypeDef(BaseModel): + functionName: Optional[str] = None + functionTags: Optional[Dict[str, str]] = None + layers: Optional[List[str]] = None + runtime: Optional[RuntimeType] = None + +class ListAccountPermissionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + service: Optional[ServiceType] = None + +class PermissionTypeDef(BaseModel): + operation: OperationType + service: ServiceType + +class ListDelegatedAdminAccountsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFiltersRequestRequestTypeDef(BaseModel): + action: Optional[FilterActionType] = None + arns: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SortCriteriaTypeDef(BaseModel): + field: SortFieldType + sortOrder: SortOrderType + +class ListMembersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + onlyAssociated: Optional[bool] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListUsageTotalsRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StepTypeDef(BaseModel): + componentId: str + componentType: str + +class PortRangeTypeDef(BaseModel): + begin: int + end: int + +class VulnerablePackageTypeDef(BaseModel): + name: str + version: str + arch: Optional[str] = None + epoch: Optional[int] = None + filePath: Optional[str] = None + fixedInVersion: Optional[str] = None + packageManager: Optional[PackageManagerType] = None + release: Optional[str] = None + remediation: Optional[str] = None + sourceLambdaLayerArn: Optional[str] = None + sourceLayerHash: Optional[str] = None + +class RecommendationTypeDef(BaseModel): + Url: Optional[str] = None + text: Optional[str] = None + +class ResetEncryptionKeyRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + scanType: ScanTypeType + +class ResourceMapFilterTypeDef(BaseModel): + comparison: Literal["EQUALS"] + key: str + value: Optional[str] = None + +class ResourceStringFilterTypeDef(BaseModel): + comparison: ResourceStringComparisonType + value: str + +class SearchVulnerabilitiesFilterCriteriaTypeDef(BaseModel): + vulnerabilityIds: Sequence[str] + +class SendCisSessionHealthRequestRequestTypeDef(BaseModel): + scanJobId: str + sessionToken: str + +class StartCisSessionMessageTypeDef(BaseModel): + sessionToken: str + +class StopCisMessageProgressTypeDef(BaseModel): + errorChecks: Optional[int] = None + failedChecks: Optional[int] = None + informationalChecks: Optional[int] = None + notApplicableChecks: Optional[int] = None + notEvaluatedChecks: Optional[int] = None + successfulChecks: Optional[int] = None + totalChecks: Optional[int] = None + unknownChecks: Optional[int] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateCisTargetsTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + targetResourceTags: Optional[Mapping[str, Sequence[str]]] = None + +class UpdateEc2DeepInspectionConfigurationRequestRequestTypeDef(BaseModel): + activateDeepInspection: Optional[bool] = None + packagePaths: Optional[Sequence[str]] = None + +class UpdateEncryptionKeyRequestRequestTypeDef(BaseModel): + kmsKeyId: str + resourceType: ResourceTypeType + scanType: ScanTypeType + +class UpdateOrgEc2DeepInspectionConfigurationRequestRequestTypeDef(BaseModel): + orgPackagePaths: Sequence[str] + +class UsageTypeDef(BaseModel): + currency: Optional[Literal["USD"]] = None + estimatedMonthlyCost: Optional[float] = None + total: Optional[float] = None + type: Optional[UsageTypeType] = None + +class AccountAggregationResponseTypeDef(BaseModel): + accountId: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class AmiAggregationResponseTypeDef(BaseModel): + ami: str + accountId: Optional[str] = None + affectedInstances: Optional[int] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class AwsEcrContainerAggregationResponseTypeDef(BaseModel): + resourceId: str + accountId: Optional[str] = None + architecture: Optional[str] = None + imageSha: Optional[str] = None + imageTags: Optional[List[str]] = None + repository: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class Ec2InstanceAggregationResponseTypeDef(BaseModel): + instanceId: str + accountId: Optional[str] = None + ami: Optional[str] = None + instanceTags: Optional[Dict[str, str]] = None + networkFindings: Optional[int] = None + operatingSystem: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class FindingTypeAggregationResponseTypeDef(BaseModel): + accountId: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class ImageLayerAggregationResponseTypeDef(BaseModel): + accountId: str + layerHash: str + repository: str + resourceId: str + severityCounts: Optional[SeverityCountsTypeDef] = None + +class LambdaFunctionAggregationResponseTypeDef(BaseModel): + resourceId: str + accountId: Optional[str] = None + functionName: Optional[str] = None + lambdaTags: Optional[Dict[str, str]] = None + lastModifiedAt: Optional[datetime] = None + runtime: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class LambdaLayerAggregationResponseTypeDef(BaseModel): + accountId: str + functionName: str + layerArn: str + resourceId: str + severityCounts: Optional[SeverityCountsTypeDef] = None + +class PackageAggregationResponseTypeDef(BaseModel): + packageName: str + accountId: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class RepositoryAggregationResponseTypeDef(BaseModel): + repository: str + accountId: Optional[str] = None + affectedImages: Optional[int] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + +class TitleAggregationResponseTypeDef(BaseModel): + title: str + accountId: Optional[str] = None + severityCounts: Optional[SeverityCountsTypeDef] = None + vulnerabilityId: Optional[str] = None + +class ResourceStateTypeDef(BaseModel): + ec2: StateTypeDef + ecr: StateTypeDef + lambda: Optional[StateTypeDef] = None + lambdaCode: Optional[StateTypeDef] = None + +class AccountTypeDef(BaseModel): + accountId: str + resourceStatus: ResourceStatusTypeDef + status: StatusType + +class FailedAccountTypeDef(BaseModel): + accountId: str + errorCode: ErrorCodeType + errorMessage: str + resourceStatus: Optional[ResourceStatusTypeDef] = None + status: Optional[StatusType] = None + +class AmiAggregationTypeDef(BaseModel): + amis: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[AmiSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class AwsEcrContainerAggregationTypeDef(BaseModel): + architectures: Optional[Sequence[StringFilterTypeDef]] = None + imageShas: Optional[Sequence[StringFilterTypeDef]] = None + imageTags: Optional[Sequence[StringFilterTypeDef]] = None + repositories: Optional[Sequence[StringFilterTypeDef]] = None + resourceIds: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[AwsEcrContainerSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class ImageLayerAggregationTypeDef(BaseModel): + layerHashes: Optional[Sequence[StringFilterTypeDef]] = None + repositories: Optional[Sequence[StringFilterTypeDef]] = None + resourceIds: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[ImageLayerSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class LambdaLayerAggregationTypeDef(BaseModel): + functionNames: Optional[Sequence[StringFilterTypeDef]] = None + layerArns: Optional[Sequence[StringFilterTypeDef]] = None + resourceIds: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[LambdaLayerSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class PackageAggregationTypeDef(BaseModel): + packageNames: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[PackageSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class RepositoryAggregationTypeDef(BaseModel): + repositories: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[RepositorySortByType] = None + sortOrder: Optional[SortOrderType] = None + +class TitleAggregationTypeDef(BaseModel): + findingType: Optional[AggregationFindingTypeType] = None + resourceType: Optional[AggregationResourceTypeType] = None + sortBy: Optional[TitleSortByType] = None + sortOrder: Optional[SortOrderType] = None + titles: Optional[Sequence[StringFilterTypeDef]] = None + vulnerabilityIds: Optional[Sequence[StringFilterTypeDef]] = None + +class AssociateMemberResponseTypeDef(BaseModel): + accountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelFindingsReportResponseTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelSbomExportResponseTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCisScanConfigurationResponseTypeDef(BaseModel): + scanConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFilterResponseTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFindingsReportResponseTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSbomExportResponseTypeDef(BaseModel): + reportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCisScanConfigurationResponseTypeDef(BaseModel): + scanConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFilterResponseTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableDelegatedAdminAccountResponseTypeDef(BaseModel): + delegatedAdminAccountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateMemberResponseTypeDef(BaseModel): + accountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnableDelegatedAdminAccountResponseTypeDef(BaseModel): + delegatedAdminAccountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCisScanReportResponseTypeDef(BaseModel): + status: CisReportStatusType + url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEc2DeepInspectionConfigurationResponseTypeDef(BaseModel): + errorMessage: str + orgPackagePaths: List[str] + packagePaths: List[str] + status: Ec2DeepInspectionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetEncryptionKeyResponseTypeDef(BaseModel): + kmsKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCisScanConfigurationResponseTypeDef(BaseModel): + scanConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEc2DeepInspectionConfigurationResponseTypeDef(BaseModel): + errorMessage: str + orgPackagePaths: List[str] + packagePaths: List[str] + status: Ec2DeepInspectionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFilterResponseTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationConfigurationResponseTypeDef(BaseModel): + autoEnable: AutoEnableTypeDef + maxAccountLimitReached: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateOrganizationConfigurationRequestRequestTypeDef(BaseModel): + autoEnable: AutoEnableTypeDef + +class UpdateOrganizationConfigurationResponseTypeDef(BaseModel): + autoEnable: AutoEnableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AwsLambdaFunctionDetailsTypeDef(BaseModel): + codeSha256: str + executionRoleArn: str + functionName: str + runtime: RuntimeType + version: str + architectures: Optional[List[ArchitectureType]] = None + lastModifiedAt: Optional[datetime] = None + layers: Optional[List[str]] = None + packageType: Optional[PackageTypeType] = None + vpcConfig: Optional[LambdaVpcConfigTypeDef] = None + +class BatchGetMemberEc2DeepInspectionStatusResponseTypeDef(BaseModel): + accountIds: List[MemberAccountEc2DeepInspectionStatusStateTypeDef] + failedAccountIds: List[FailedMemberAccountEc2DeepInspectionStatusStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateMemberEc2DeepInspectionStatusResponseTypeDef(BaseModel): + accountIds: List[MemberAccountEc2DeepInspectionStatusStateTypeDef] + failedAccountIds: List[FailedMemberAccountEc2DeepInspectionStatusStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateMemberEc2DeepInspectionStatusRequestRequestTypeDef(BaseModel): + accountIds: Sequence[MemberAccountEc2DeepInspectionStatusTypeDef] + +class CisSessionMessageTypeDef(BaseModel): + cisRuleDetails: BlobTypeDef + ruleId: str + status: CisRuleStatusType + +class CisCheckAggregationTypeDef(BaseModel): + scanArn: str + accountId: Optional[str] = None + checkDescription: Optional[str] = None + checkId: Optional[str] = None + level: Optional[CisSecurityLevelType] = None + platform: Optional[str] = None + statusCounts: Optional[StatusCountsTypeDef] = None + title: Optional[str] = None + +class CisTargetResourceAggregationTypeDef(BaseModel): + scanArn: str + accountId: Optional[str] = None + platform: Optional[str] = None + statusCounts: Optional[StatusCountsTypeDef] = None + targetResourceId: Optional[str] = None + targetResourceTags: Optional[Dict[str, List[str]]] = None + targetStatus: Optional[CisTargetStatusType] = None + targetStatusReason: Optional[CisTargetStatusReasonType] = None + +class CisDateFilterTypeDef(BaseModel): + earliestScanStartTime: Optional[TimestampTypeDef] = None + latestScanStartTime: Optional[TimestampTypeDef] = None + +class CoverageDateFilterTypeDef(BaseModel): + endInclusive: Optional[TimestampTypeDef] = None + startInclusive: Optional[TimestampTypeDef] = None + +class DateFilterTypeDef(BaseModel): + endInclusive: Optional[TimestampTypeDef] = None + startInclusive: Optional[TimestampTypeDef] = None + +class CisScanTypeDef(BaseModel): + scanArn: str + scanConfigurationArn: str + failedChecks: Optional[int] = None + scanDate: Optional[datetime] = None + scanName: Optional[str] = None + scheduledBy: Optional[str] = None + securityLevel: Optional[CisSecurityLevelType] = None + status: Optional[CisScanStatusType] = None + targets: Optional[CisTargetsTypeDef] = None + totalChecks: Optional[int] = None + +class CisScanResultDetailsFilterCriteriaTypeDef(BaseModel): + checkIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + findingArnFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + findingStatusFilters: Optional[Sequence[CisFindingStatusFilterTypeDef]] = None + securityLevelFilters: Optional[Sequence[CisSecurityLevelFilterTypeDef]] = None + titleFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + +class CisScanResultsAggregatedByChecksFilterCriteriaTypeDef(BaseModel): + accountIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + checkIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + failedResourcesFilters: Optional[Sequence[CisNumberFilterTypeDef]] = None + platformFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + securityLevelFilters: Optional[Sequence[CisSecurityLevelFilterTypeDef]] = None + titleFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + +class GetCisScanResultDetailsResponseTypeDef(BaseModel): + nextToken: str + scanResultDetails: List[CisScanResultDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CisScanResultsAggregatedByTargetResourceFilterCriteriaTypeDef(BaseModel): + accountIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + checkIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + failedChecksFilters: Optional[Sequence[CisNumberFilterTypeDef]] = None + platformFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + statusFilters: Optional[Sequence[CisResultStatusFilterTypeDef]] = None + targetResourceIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + targetResourceTagFilters: Optional[Sequence[TagFilterTypeDef]] = None + targetStatusFilters: Optional[Sequence[CisTargetStatusFilterTypeDef]] = None + targetStatusReasonFilters: Optional[Sequence[CisTargetStatusReasonFilterTypeDef]] = None + +class ListCisScanConfigurationsFilterCriteriaTypeDef(BaseModel): + scanConfigurationArnFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + scanNameFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + targetResourceTagFilters: Optional[Sequence[TagFilterTypeDef]] = None + +class CodeVulnerabilityDetailsTypeDef(BaseModel): + cwes: List[str] + detectorId: str + detectorName: str + filePath: CodeFilePathTypeDef + detectorTags: Optional[List[str]] = None + referenceUrls: Optional[List[str]] = None + ruleId: Optional[str] = None + sourceLambdaLayerArn: Optional[str] = None + +class CodeSnippetResultTypeDef(BaseModel): + codeSnippet: Optional[List[CodeLineTypeDef]] = None + endLine: Optional[int] = None + findingArn: Optional[str] = None + startLine: Optional[int] = None + suggestedFixes: Optional[List[SuggestedFixTypeDef]] = None + +class ListCoverageStatisticsResponseTypeDef(BaseModel): + countsByGroup: List[CountsTypeDef] + nextToken: str + totalCounts: int + ResponseMetadata: ResponseMetadataTypeDef + +class CvssScoreDetailsTypeDef(BaseModel): + score: float + scoreSource: str + scoringVector: str + version: str + adjustments: Optional[List[CvssScoreAdjustmentTypeDef]] = None + cvssSource: Optional[str] = None + +class DailyScheduleTypeDef(BaseModel): + startTime: TimeTypeDef + +class MonthlyScheduleTypeDef(BaseModel): + day: DayType + startTime: TimeTypeDef + +class WeeklyScheduleExtraOutputTypeDef(BaseModel): + days: List[DayType] + startTime: TimeTypeDef + +class WeeklyScheduleOutputTypeDef(BaseModel): + days: List[DayType] + startTime: TimeTypeDef + +class WeeklyScheduleTypeDef(BaseModel): + days: Sequence[DayType] + startTime: TimeTypeDef + +class ListDelegatedAdminAccountsResponseTypeDef(BaseModel): + delegatedAdminAccounts: List[DelegatedAdminAccountTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDelegatedAdminAccountResponseTypeDef(BaseModel): + delegatedAdmin: DelegatedAdminTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class Ec2ConfigurationStateTypeDef(BaseModel): + scanModeState: Optional[Ec2ScanModeStateTypeDef] = None + +class Ec2InstanceAggregationTypeDef(BaseModel): + amis: Optional[Sequence[StringFilterTypeDef]] = None + instanceIds: Optional[Sequence[StringFilterTypeDef]] = None + instanceTags: Optional[Sequence[MapFilterTypeDef]] = None + operatingSystems: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[Ec2InstanceSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class LambdaFunctionAggregationTypeDef(BaseModel): + functionNames: Optional[Sequence[StringFilterTypeDef]] = None + functionTags: Optional[Sequence[MapFilterTypeDef]] = None + resourceIds: Optional[Sequence[StringFilterTypeDef]] = None + runtimes: Optional[Sequence[StringFilterTypeDef]] = None + sortBy: Optional[LambdaFunctionSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class EcrConfigurationStateTypeDef(BaseModel): + rescanDurationState: Optional[EcrRescanDurationStateTypeDef] = None + +class UpdateConfigurationRequestRequestTypeDef(BaseModel): + ec2Configuration: Optional[Ec2ConfigurationTypeDef] = None + ecrConfiguration: Optional[EcrConfigurationTypeDef] = None + +class FindingDetailTypeDef(BaseModel): + cisaData: Optional[CisaDataTypeDef] = None + cwes: Optional[List[str]] = None + epssScore: Optional[float] = None + evidences: Optional[List[EvidenceTypeDef]] = None + exploitObserved: Optional[ExploitObservedTypeDef] = None + findingArn: Optional[str] = None + referenceUrls: Optional[List[str]] = None + riskScore: Optional[int] = None + tools: Optional[List[str]] = None + ttps: Optional[List[str]] = None + +class VulnerabilityTypeDef(BaseModel): + id: str + atigData: Optional[AtigDataTypeDef] = None + cisaData: Optional[CisaDataTypeDef] = None + cvss2: Optional[Cvss2TypeDef] = None + cvss3: Optional[Cvss3TypeDef] = None + cwes: Optional[List[str]] = None + description: Optional[str] = None + detectionPlatforms: Optional[List[str]] = None + epss: Optional[EpssTypeDef] = None + exploitObserved: Optional[ExploitObservedTypeDef] = None + referenceUrls: Optional[List[str]] = None + relatedVulnerabilities: Optional[List[str]] = None + source: Optional[Literal["NVD"]] = None + sourceUrl: Optional[str] = None + vendorCreatedAt: Optional[datetime] = None + vendorSeverity: Optional[str] = None + vendorUpdatedAt: Optional[datetime] = None + +class PackageFilterTypeDef(BaseModel): + architecture: Optional[StringFilterTypeDef] = None + epoch: Optional[NumberFilterTypeDef] = None + name: Optional[StringFilterTypeDef] = None + release: Optional[StringFilterTypeDef] = None + sourceLambdaLayerArn: Optional[StringFilterTypeDef] = None + sourceLayerHash: Optional[StringFilterTypeDef] = None + version: Optional[StringFilterTypeDef] = None + +class FreeTrialAccountInfoTypeDef(BaseModel): + accountId: str + freeTrialInfo: List[FreeTrialInfoTypeDef] + +class ListAccountPermissionsRequestListAccountPermissionsPaginateTypeDef(BaseModel): + service: Optional[ServiceType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDelegatedAdminAccountsRequestListDelegatedAdminAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFiltersRequestListFiltersPaginateTypeDef(BaseModel): + action: Optional[FilterActionType] = None + arns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembersRequestListMembersPaginateTypeDef(BaseModel): + onlyAssociated: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsageTotalsRequestListUsageTotalsPaginateTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetMemberResponseTypeDef(BaseModel): + member: MemberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMembersResponseTypeDef(BaseModel): + members: List[MemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceScanMetadataTypeDef(BaseModel): + ec2: Optional[Ec2MetadataTypeDef] = None + ecrImage: Optional[EcrContainerImageMetadataTypeDef] = None + ecrRepository: Optional[EcrRepositoryMetadataTypeDef] = None + lambdaFunction: Optional[LambdaFunctionMetadataTypeDef] = None + +class ListAccountPermissionsResponseTypeDef(BaseModel): + nextToken: str + permissions: List[PermissionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkPathTypeDef(BaseModel): + steps: Optional[List[StepTypeDef]] = None + +class PackageVulnerabilityDetailsTypeDef(BaseModel): + source: str + vulnerabilityId: str + cvss: Optional[List[CvssScoreTypeDef]] = None + referenceUrls: Optional[List[str]] = None + relatedVulnerabilities: Optional[List[str]] = None + sourceUrl: Optional[str] = None + vendorCreatedAt: Optional[datetime] = None + vendorSeverity: Optional[str] = None + vendorUpdatedAt: Optional[datetime] = None + vulnerablePackages: Optional[List[VulnerablePackageTypeDef]] = None + +class RemediationTypeDef(BaseModel): + recommendation: Optional[RecommendationTypeDef] = None + +class ResourceFilterCriteriaOutputTypeDef(BaseModel): + accountId: Optional[List[ResourceStringFilterTypeDef]] = None + ec2InstanceTags: Optional[List[ResourceMapFilterTypeDef]] = None + ecrImageTags: Optional[List[ResourceStringFilterTypeDef]] = None + ecrRepositoryName: Optional[List[ResourceStringFilterTypeDef]] = None + lambdaFunctionName: Optional[List[ResourceStringFilterTypeDef]] = None + lambdaFunctionTags: Optional[List[ResourceMapFilterTypeDef]] = None + resourceId: Optional[List[ResourceStringFilterTypeDef]] = None + resourceType: Optional[List[ResourceStringFilterTypeDef]] = None + +class ResourceFilterCriteriaTypeDef(BaseModel): + accountId: Optional[Sequence[ResourceStringFilterTypeDef]] = None + ec2InstanceTags: Optional[Sequence[ResourceMapFilterTypeDef]] = None + ecrImageTags: Optional[Sequence[ResourceStringFilterTypeDef]] = None + ecrRepositoryName: Optional[Sequence[ResourceStringFilterTypeDef]] = None + lambdaFunctionName: Optional[Sequence[ResourceStringFilterTypeDef]] = None + lambdaFunctionTags: Optional[Sequence[ResourceMapFilterTypeDef]] = None + resourceId: Optional[Sequence[ResourceStringFilterTypeDef]] = None + resourceType: Optional[Sequence[ResourceStringFilterTypeDef]] = None + +class SearchVulnerabilitiesRequestRequestTypeDef(BaseModel): + filterCriteria: SearchVulnerabilitiesFilterCriteriaTypeDef + nextToken: Optional[str] = None + +class SearchVulnerabilitiesRequestSearchVulnerabilitiesPaginateTypeDef(BaseModel): + filterCriteria: SearchVulnerabilitiesFilterCriteriaTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class StartCisSessionRequestRequestTypeDef(BaseModel): + message: StartCisSessionMessageTypeDef + scanJobId: str + +class StopCisSessionMessageTypeDef(BaseModel): + progress: StopCisMessageProgressTypeDef + status: StopCisSessionStatusType + benchmarkProfile: Optional[str] = None + benchmarkVersion: Optional[str] = None + computePlatform: Optional[ComputePlatformTypeDef] = None + reason: Optional[str] = None + +class UsageTotalTypeDef(BaseModel): + accountId: Optional[str] = None + usage: Optional[List[UsageTypeDef]] = None + +class AggregationResponseTypeDef(BaseModel): + accountAggregation: Optional[AccountAggregationResponseTypeDef] = None + amiAggregation: Optional[AmiAggregationResponseTypeDef] = None + awsEcrContainerAggregation: Optional[AwsEcrContainerAggregationResponseTypeDef] = None + ec2InstanceAggregation: Optional[Ec2InstanceAggregationResponseTypeDef] = None + findingTypeAggregation: Optional[FindingTypeAggregationResponseTypeDef] = None + imageLayerAggregation: Optional[ImageLayerAggregationResponseTypeDef] = None + lambdaFunctionAggregation: Optional[LambdaFunctionAggregationResponseTypeDef] = None + lambdaLayerAggregation: Optional[LambdaLayerAggregationResponseTypeDef] = None + packageAggregation: Optional[PackageAggregationResponseTypeDef] = None + repositoryAggregation: Optional[RepositoryAggregationResponseTypeDef] = None + titleAggregation: Optional[TitleAggregationResponseTypeDef] = None + +class AccountStateTypeDef(BaseModel): + accountId: str + resourceState: ResourceStateTypeDef + state: StateTypeDef + +class DisableResponseTypeDef(BaseModel): + accounts: List[AccountTypeDef] + failedAccounts: List[FailedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnableResponseTypeDef(BaseModel): + accounts: List[AccountTypeDef] + failedAccounts: List[FailedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceDetailsTypeDef(BaseModel): + awsEc2Instance: Optional[AwsEc2InstanceDetailsTypeDef] = None + awsEcrContainerImage: Optional[AwsEcrContainerImageDetailsTypeDef] = None + awsLambdaFunction: Optional[AwsLambdaFunctionDetailsTypeDef] = None + +class SendCisSessionTelemetryRequestRequestTypeDef(BaseModel): + messages: Sequence[CisSessionMessageTypeDef] + scanJobId: str + sessionToken: str + +class ListCisScanResultsAggregatedByChecksResponseTypeDef(BaseModel): + checkAggregations: List[CisCheckAggregationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCisScanResultsAggregatedByTargetResourceResponseTypeDef(BaseModel): + nextToken: str + targetResourceAggregations: List[CisTargetResourceAggregationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCisScansFilterCriteriaTypeDef(BaseModel): + failedChecksFilters: Optional[Sequence[CisNumberFilterTypeDef]] = None + scanArnFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + scanAtFilters: Optional[Sequence[CisDateFilterTypeDef]] = None + scanConfigurationArnFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + scanNameFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + scanStatusFilters: Optional[Sequence[CisScanStatusFilterTypeDef]] = None + scheduledByFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + targetAccountIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + targetResourceIdFilters: Optional[Sequence[CisStringFilterTypeDef]] = None + targetResourceTagFilters: Optional[Sequence[TagFilterTypeDef]] = None + +class CoverageFilterCriteriaTypeDef(BaseModel): + accountId: Optional[Sequence[CoverageStringFilterTypeDef]] = None + ec2InstanceTags: Optional[Sequence[CoverageMapFilterTypeDef]] = None + ecrImageTags: Optional[Sequence[CoverageStringFilterTypeDef]] = None + ecrRepositoryName: Optional[Sequence[CoverageStringFilterTypeDef]] = None + imagePulledAt: Optional[Sequence[CoverageDateFilterTypeDef]] = None + lambdaFunctionName: Optional[Sequence[CoverageStringFilterTypeDef]] = None + lambdaFunctionRuntime: Optional[Sequence[CoverageStringFilterTypeDef]] = None + lambdaFunctionTags: Optional[Sequence[CoverageMapFilterTypeDef]] = None + lastScannedAt: Optional[Sequence[CoverageDateFilterTypeDef]] = None + resourceId: Optional[Sequence[CoverageStringFilterTypeDef]] = None + resourceType: Optional[Sequence[CoverageStringFilterTypeDef]] = None + scanMode: Optional[Sequence[CoverageStringFilterTypeDef]] = None + scanStatusCode: Optional[Sequence[CoverageStringFilterTypeDef]] = None + scanStatusReason: Optional[Sequence[CoverageStringFilterTypeDef]] = None + scanType: Optional[Sequence[CoverageStringFilterTypeDef]] = None + +class ListCisScansResponseTypeDef(BaseModel): + nextToken: str + scans: List[CisScanTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCisScanResultDetailsRequestGetCisScanResultDetailsPaginateTypeDef(BaseModel): + accountId: str + scanArn: str + targetResourceId: str + filterCriteria: Optional[CisScanResultDetailsFilterCriteriaTypeDef] = None + sortBy: Optional[CisScanResultDetailsSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCisScanResultDetailsRequestRequestTypeDef(BaseModel): + accountId: str + scanArn: str + targetResourceId: str + filterCriteria: Optional[CisScanResultDetailsFilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[CisScanResultDetailsSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + +class ListCisScanResultsAggregatedByChecksRequestListCisScanResultsAggregatedByChecksPaginateTypeDef(BaseModel): + scanArn: str + filterCriteria: Optional[CisScanResultsAggregatedByChecksFilterCriteriaTypeDef] = None + sortBy: Optional[CisScanResultsAggregatedByChecksSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCisScanResultsAggregatedByChecksRequestRequestTypeDef(BaseModel): + scanArn: str + filterCriteria: Optional[CisScanResultsAggregatedByChecksFilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[CisScanResultsAggregatedByChecksSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + +class ListCisScanResultsAggregatedByTargetResourceRequestListCisScanResultsAggregatedByTargetResourcePaginateTypeDef(BaseModel): + scanArn: str + filterCriteria: Optional[ CisScanResultsAggregatedByTargetResourceFilterCriteriaTypeDef ] = None + sortBy: Optional[CisScanResultsAggregatedByTargetResourceSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCisScanResultsAggregatedByTargetResourceRequestRequestTypeDef(BaseModel): + scanArn: str + filterCriteria: Optional[ CisScanResultsAggregatedByTargetResourceFilterCriteriaTypeDef ] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[CisScanResultsAggregatedByTargetResourceSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + +class ListCisScanConfigurationsRequestListCisScanConfigurationsPaginateTypeDef(BaseModel): + filterCriteria: Optional[ListCisScanConfigurationsFilterCriteriaTypeDef] = None + sortBy: Optional[CisScanConfigurationsSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCisScanConfigurationsRequestRequestTypeDef(BaseModel): + filterCriteria: Optional[ListCisScanConfigurationsFilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[CisScanConfigurationsSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + +class BatchGetCodeSnippetResponseTypeDef(BaseModel): + codeSnippetResults: List[CodeSnippetResultTypeDef] + errors: List[CodeSnippetErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InspectorScoreDetailsTypeDef(BaseModel): + adjustedCvss: Optional[CvssScoreDetailsTypeDef] = None + +class ScheduleExtraOutputTypeDef(BaseModel): + daily: Optional[DailyScheduleTypeDef] = None + monthly: Optional[MonthlyScheduleTypeDef] = None + oneTime: Optional[Dict[str, Any]] = None + weekly: Optional[WeeklyScheduleExtraOutputTypeDef] = None + +class ScheduleOutputTypeDef(BaseModel): + daily: Optional[DailyScheduleTypeDef] = None + monthly: Optional[MonthlyScheduleTypeDef] = None + oneTime: Optional[Dict[str, Any]] = None + weekly: Optional[WeeklyScheduleOutputTypeDef] = None + +class ScheduleTypeDef(BaseModel): + daily: Optional[DailyScheduleTypeDef] = None + monthly: Optional[MonthlyScheduleTypeDef] = None + oneTime: Optional[Mapping[str, Any]] = None + weekly: Optional[WeeklyScheduleTypeDef] = None + +class AggregationRequestTypeDef(BaseModel): + accountAggregation: Optional[AccountAggregationTypeDef] = None + amiAggregation: Optional[AmiAggregationTypeDef] = None + awsEcrContainerAggregation: Optional[AwsEcrContainerAggregationTypeDef] = None + ec2InstanceAggregation: Optional[Ec2InstanceAggregationTypeDef] = None + findingTypeAggregation: Optional[FindingTypeAggregationTypeDef] = None + imageLayerAggregation: Optional[ImageLayerAggregationTypeDef] = None + lambdaFunctionAggregation: Optional[LambdaFunctionAggregationTypeDef] = None + lambdaLayerAggregation: Optional[LambdaLayerAggregationTypeDef] = None + packageAggregation: Optional[PackageAggregationTypeDef] = None + repositoryAggregation: Optional[RepositoryAggregationTypeDef] = None + titleAggregation: Optional[TitleAggregationTypeDef] = None + +class GetConfigurationResponseTypeDef(BaseModel): + ec2Configuration: Ec2ConfigurationStateTypeDef + ecrConfiguration: EcrConfigurationStateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetFindingDetailsResponseTypeDef(BaseModel): + errors: List[FindingDetailsErrorTypeDef] + findingDetails: List[FindingDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchVulnerabilitiesResponseTypeDef(BaseModel): + nextToken: str + vulnerabilities: List[VulnerabilityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FilterCriteriaExtraOutputTypeDef(BaseModel): + awsAccountId: Optional[List[StringFilterTypeDef]] = None + codeVulnerabilityDetectorName: Optional[List[StringFilterTypeDef]] = None + codeVulnerabilityDetectorTags: Optional[List[StringFilterTypeDef]] = None + codeVulnerabilityFilePath: Optional[List[StringFilterTypeDef]] = None + componentId: Optional[List[StringFilterTypeDef]] = None + componentType: Optional[List[StringFilterTypeDef]] = None + ec2InstanceImageId: Optional[List[StringFilterTypeDef]] = None + ec2InstanceSubnetId: Optional[List[StringFilterTypeDef]] = None + ec2InstanceVpcId: Optional[List[StringFilterTypeDef]] = None + ecrImageArchitecture: Optional[List[StringFilterTypeDef]] = None + ecrImageHash: Optional[List[StringFilterTypeDef]] = None + ecrImagePushedAt: Optional[List[DateFilterExtraOutputTypeDef]] = None + ecrImageRegistry: Optional[List[StringFilterTypeDef]] = None + ecrImageRepositoryName: Optional[List[StringFilterTypeDef]] = None + ecrImageTags: Optional[List[StringFilterTypeDef]] = None + epssScore: Optional[List[NumberFilterTypeDef]] = None + exploitAvailable: Optional[List[StringFilterTypeDef]] = None + findingArn: Optional[List[StringFilterTypeDef]] = None + findingStatus: Optional[List[StringFilterTypeDef]] = None + findingType: Optional[List[StringFilterTypeDef]] = None + firstObservedAt: Optional[List[DateFilterExtraOutputTypeDef]] = None + fixAvailable: Optional[List[StringFilterTypeDef]] = None + inspectorScore: Optional[List[NumberFilterTypeDef]] = None + lambdaFunctionExecutionRoleArn: Optional[List[StringFilterTypeDef]] = None + lambdaFunctionLastModifiedAt: Optional[List[DateFilterExtraOutputTypeDef]] = None + lambdaFunctionLayers: Optional[List[StringFilterTypeDef]] = None + lambdaFunctionName: Optional[List[StringFilterTypeDef]] = None + lambdaFunctionRuntime: Optional[List[StringFilterTypeDef]] = None + lastObservedAt: Optional[List[DateFilterExtraOutputTypeDef]] = None + networkProtocol: Optional[List[StringFilterTypeDef]] = None + portRange: Optional[List[PortRangeFilterTypeDef]] = None + relatedVulnerabilities: Optional[List[StringFilterTypeDef]] = None + resourceId: Optional[List[StringFilterTypeDef]] = None + resourceTags: Optional[List[MapFilterTypeDef]] = None + resourceType: Optional[List[StringFilterTypeDef]] = None + severity: Optional[List[StringFilterTypeDef]] = None + title: Optional[List[StringFilterTypeDef]] = None + updatedAt: Optional[List[DateFilterExtraOutputTypeDef]] = None + vendorSeverity: Optional[List[StringFilterTypeDef]] = None + vulnerabilityId: Optional[List[StringFilterTypeDef]] = None + vulnerabilitySource: Optional[List[StringFilterTypeDef]] = None + vulnerablePackages: Optional[List[PackageFilterTypeDef]] = None + +class FilterCriteriaOutputTypeDef(BaseModel): + awsAccountId: Optional[List[StringFilterTypeDef]] = None + codeVulnerabilityDetectorName: Optional[List[StringFilterTypeDef]] = None + codeVulnerabilityDetectorTags: Optional[List[StringFilterTypeDef]] = None + codeVulnerabilityFilePath: Optional[List[StringFilterTypeDef]] = None + componentId: Optional[List[StringFilterTypeDef]] = None + componentType: Optional[List[StringFilterTypeDef]] = None + ec2InstanceImageId: Optional[List[StringFilterTypeDef]] = None + ec2InstanceSubnetId: Optional[List[StringFilterTypeDef]] = None + ec2InstanceVpcId: Optional[List[StringFilterTypeDef]] = None + ecrImageArchitecture: Optional[List[StringFilterTypeDef]] = None + ecrImageHash: Optional[List[StringFilterTypeDef]] = None + ecrImagePushedAt: Optional[List[DateFilterOutputTypeDef]] = None + ecrImageRegistry: Optional[List[StringFilterTypeDef]] = None + ecrImageRepositoryName: Optional[List[StringFilterTypeDef]] = None + ecrImageTags: Optional[List[StringFilterTypeDef]] = None + epssScore: Optional[List[NumberFilterTypeDef]] = None + exploitAvailable: Optional[List[StringFilterTypeDef]] = None + findingArn: Optional[List[StringFilterTypeDef]] = None + findingStatus: Optional[List[StringFilterTypeDef]] = None + findingType: Optional[List[StringFilterTypeDef]] = None + firstObservedAt: Optional[List[DateFilterOutputTypeDef]] = None + fixAvailable: Optional[List[StringFilterTypeDef]] = None + inspectorScore: Optional[List[NumberFilterTypeDef]] = None + lambdaFunctionExecutionRoleArn: Optional[List[StringFilterTypeDef]] = None + lambdaFunctionLastModifiedAt: Optional[List[DateFilterOutputTypeDef]] = None + lambdaFunctionLayers: Optional[List[StringFilterTypeDef]] = None + lambdaFunctionName: Optional[List[StringFilterTypeDef]] = None + lambdaFunctionRuntime: Optional[List[StringFilterTypeDef]] = None + lastObservedAt: Optional[List[DateFilterOutputTypeDef]] = None + networkProtocol: Optional[List[StringFilterTypeDef]] = None + portRange: Optional[List[PortRangeFilterTypeDef]] = None + relatedVulnerabilities: Optional[List[StringFilterTypeDef]] = None + resourceId: Optional[List[StringFilterTypeDef]] = None + resourceTags: Optional[List[MapFilterTypeDef]] = None + resourceType: Optional[List[StringFilterTypeDef]] = None + severity: Optional[List[StringFilterTypeDef]] = None + title: Optional[List[StringFilterTypeDef]] = None + updatedAt: Optional[List[DateFilterOutputTypeDef]] = None + vendorSeverity: Optional[List[StringFilterTypeDef]] = None + vulnerabilityId: Optional[List[StringFilterTypeDef]] = None + vulnerabilitySource: Optional[List[StringFilterTypeDef]] = None + vulnerablePackages: Optional[List[PackageFilterTypeDef]] = None + +class FilterCriteriaTypeDef(BaseModel): + awsAccountId: Optional[Sequence[StringFilterTypeDef]] = None + codeVulnerabilityDetectorName: Optional[Sequence[StringFilterTypeDef]] = None + codeVulnerabilityDetectorTags: Optional[Sequence[StringFilterTypeDef]] = None + codeVulnerabilityFilePath: Optional[Sequence[StringFilterTypeDef]] = None + componentId: Optional[Sequence[StringFilterTypeDef]] = None + componentType: Optional[Sequence[StringFilterTypeDef]] = None + ec2InstanceImageId: Optional[Sequence[StringFilterTypeDef]] = None + ec2InstanceSubnetId: Optional[Sequence[StringFilterTypeDef]] = None + ec2InstanceVpcId: Optional[Sequence[StringFilterTypeDef]] = None + ecrImageArchitecture: Optional[Sequence[StringFilterTypeDef]] = None + ecrImageHash: Optional[Sequence[StringFilterTypeDef]] = None + ecrImagePushedAt: Optional[Sequence[DateFilterTypeDef]] = None + ecrImageRegistry: Optional[Sequence[StringFilterTypeDef]] = None + ecrImageRepositoryName: Optional[Sequence[StringFilterTypeDef]] = None + ecrImageTags: Optional[Sequence[StringFilterTypeDef]] = None + epssScore: Optional[Sequence[NumberFilterTypeDef]] = None + exploitAvailable: Optional[Sequence[StringFilterTypeDef]] = None + findingArn: Optional[Sequence[StringFilterTypeDef]] = None + findingStatus: Optional[Sequence[StringFilterTypeDef]] = None + findingType: Optional[Sequence[StringFilterTypeDef]] = None + firstObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + fixAvailable: Optional[Sequence[StringFilterTypeDef]] = None + inspectorScore: Optional[Sequence[NumberFilterTypeDef]] = None + lambdaFunctionExecutionRoleArn: Optional[Sequence[StringFilterTypeDef]] = None + lambdaFunctionLastModifiedAt: Optional[Sequence[DateFilterTypeDef]] = None + lambdaFunctionLayers: Optional[Sequence[StringFilterTypeDef]] = None + lambdaFunctionName: Optional[Sequence[StringFilterTypeDef]] = None + lambdaFunctionRuntime: Optional[Sequence[StringFilterTypeDef]] = None + lastObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + networkProtocol: Optional[Sequence[StringFilterTypeDef]] = None + portRange: Optional[Sequence[PortRangeFilterTypeDef]] = None + relatedVulnerabilities: Optional[Sequence[StringFilterTypeDef]] = None + resourceId: Optional[Sequence[StringFilterTypeDef]] = None + resourceTags: Optional[Sequence[MapFilterTypeDef]] = None + resourceType: Optional[Sequence[StringFilterTypeDef]] = None + severity: Optional[Sequence[StringFilterTypeDef]] = None + title: Optional[Sequence[StringFilterTypeDef]] = None + updatedAt: Optional[Sequence[DateFilterTypeDef]] = None + vendorSeverity: Optional[Sequence[StringFilterTypeDef]] = None + vulnerabilityId: Optional[Sequence[StringFilterTypeDef]] = None + vulnerabilitySource: Optional[Sequence[StringFilterTypeDef]] = None + vulnerablePackages: Optional[Sequence[PackageFilterTypeDef]] = None + +class BatchGetFreeTrialInfoResponseTypeDef(BaseModel): + accounts: List[FreeTrialAccountInfoTypeDef] + failedAccounts: List[FreeTrialInfoErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CoveredResourceTypeDef(BaseModel): + accountId: str + resourceId: str + resourceType: CoverageResourceTypeType + scanType: ScanTypeType + lastScannedAt: Optional[datetime] = None + resourceMetadata: Optional[ResourceScanMetadataTypeDef] = None + scanMode: Optional[ScanModeType] = None + scanStatus: Optional[ScanStatusTypeDef] = None + +class NetworkReachabilityDetailsTypeDef(BaseModel): + networkPath: NetworkPathTypeDef + openPortRange: PortRangeTypeDef + protocol: NetworkProtocolType + +class GetSbomExportResponseTypeDef(BaseModel): + errorCode: ReportingErrorCodeType + errorMessage: str + filterCriteria: ResourceFilterCriteriaOutputTypeDef + format: SbomReportFormatType + reportId: str + s3Destination: DestinationTypeDef + status: ExternalReportStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSbomExportRequestRequestTypeDef(BaseModel): + reportFormat: SbomReportFormatType + s3Destination: DestinationTypeDef + resourceFilterCriteria: Optional[ResourceFilterCriteriaTypeDef] = None + +class StopCisSessionRequestRequestTypeDef(BaseModel): + message: StopCisSessionMessageTypeDef + scanJobId: str + sessionToken: str + +class ListUsageTotalsResponseTypeDef(BaseModel): + nextToken: str + totals: List[UsageTotalTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFindingAggregationsResponseTypeDef(BaseModel): + aggregationType: AggregationTypeType + nextToken: str + responses: List[AggregationResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetAccountStatusResponseTypeDef(BaseModel): + accounts: List[AccountStateTypeDef] + failedAccounts: List[FailedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceTypeDef(BaseModel): + id: str + type: ResourceTypeType + details: Optional[ResourceDetailsTypeDef] = None + partition: Optional[str] = None + region: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListCisScansRequestListCisScansPaginateTypeDef(BaseModel): + detailLevel: Optional[ListCisScansDetailLevelType] = None + filterCriteria: Optional[ListCisScansFilterCriteriaTypeDef] = None + sortBy: Optional[ListCisScansSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCisScansRequestRequestTypeDef(BaseModel): + detailLevel: Optional[ListCisScansDetailLevelType] = None + filterCriteria: Optional[ListCisScansFilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[ListCisScansSortByType] = None + sortOrder: Optional[CisSortOrderType] = None + +class ListCoverageRequestListCoveragePaginateTypeDef(BaseModel): + filterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoverageRequestRequestTypeDef(BaseModel): + filterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListCoverageStatisticsRequestListCoverageStatisticsPaginateTypeDef(BaseModel): + filterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + groupBy: Optional[GroupKeyType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoverageStatisticsRequestRequestTypeDef(BaseModel): + filterCriteria: Optional[CoverageFilterCriteriaTypeDef] = None + groupBy: Optional[GroupKeyType] = None + nextToken: Optional[str] = None + +class CisScanConfigurationTypeDef(BaseModel): + scanConfigurationArn: str + ownerId: Optional[str] = None + scanName: Optional[str] = None + schedule: Optional[ScheduleOutputTypeDef] = None + securityLevel: Optional[CisSecurityLevelType] = None + tags: Optional[Dict[str, str]] = None + targets: Optional[CisTargetsTypeDef] = None + +class CreateCisScanConfigurationRequestRequestTypeDef(BaseModel): + scanName: str + schedule: ScheduleTypeDef + securityLevel: CisSecurityLevelType + targets: CreateCisTargetsTypeDef + tags: Optional[Mapping[str, str]] = None + +class UpdateCisScanConfigurationRequestRequestTypeDef(BaseModel): + scanConfigurationArn: str + scanName: Optional[str] = None + schedule: Optional[ScheduleTypeDef] = None + securityLevel: Optional[CisSecurityLevelType] = None + targets: Optional[UpdateCisTargetsTypeDef] = None + +class ListFindingAggregationsRequestListFindingAggregationsPaginateTypeDef(BaseModel): + aggregationType: AggregationTypeType + accountIds: Optional[Sequence[StringFilterTypeDef]] = None + aggregationRequest: Optional[AggregationRequestTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingAggregationsRequestRequestTypeDef(BaseModel): + aggregationType: AggregationTypeType + accountIds: Optional[Sequence[StringFilterTypeDef]] = None + aggregationRequest: Optional[AggregationRequestTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class FilterTypeDef(BaseModel): + action: FilterActionType + arn: str + createdAt: datetime + criteria: FilterCriteriaOutputTypeDef + name: str + ownerId: str + updatedAt: datetime + description: Optional[str] = None + reason: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class GetFindingsReportStatusResponseTypeDef(BaseModel): + destination: DestinationTypeDef + errorCode: ReportingErrorCodeType + errorMessage: str + filterCriteria: FilterCriteriaOutputTypeDef + reportId: str + status: ExternalReportStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFilterRequestRequestTypeDef(BaseModel): + action: FilterActionType + filterCriteria: FilterCriteriaTypeDef + name: str + description: Optional[str] = None + reason: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateFindingsReportRequestRequestTypeDef(BaseModel): + reportFormat: ReportFormatType + s3Destination: DestinationTypeDef + filterCriteria: Optional[FilterCriteriaTypeDef] = None + +class ListFindingsRequestListFindingsPaginateTypeDef(BaseModel): + filterCriteria: Optional[FilterCriteriaTypeDef] = None + sortCriteria: Optional[SortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsRequestRequestTypeDef(BaseModel): + filterCriteria: Optional[FilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortCriteria: Optional[SortCriteriaTypeDef] = None + +class UpdateFilterRequestRequestTypeDef(BaseModel): + filterArn: str + action: Optional[FilterActionType] = None + description: Optional[str] = None + filterCriteria: Optional[FilterCriteriaTypeDef] = None + name: Optional[str] = None + reason: Optional[str] = None + +class ListCoverageResponseTypeDef(BaseModel): + coveredResources: List[CoveredResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FindingTypeDef(BaseModel): + awsAccountId: str + description: str + findingArn: str + firstObservedAt: datetime + lastObservedAt: datetime + remediation: RemediationTypeDef + resources: List[ResourceTypeDef] + severity: SeverityType + status: FindingStatusType + type: FindingTypeType + codeVulnerabilityDetails: Optional[CodeVulnerabilityDetailsTypeDef] = None + epss: Optional[EpssDetailsTypeDef] = None + exploitAvailable: Optional[ExploitAvailableType] = None + exploitabilityDetails: Optional[ExploitabilityDetailsTypeDef] = None + fixAvailable: Optional[FixAvailableType] = None + inspectorScore: Optional[float] = None + inspectorScoreDetails: Optional[InspectorScoreDetailsTypeDef] = None + networkReachabilityDetails: Optional[NetworkReachabilityDetailsTypeDef] = None + packageVulnerabilityDetails: Optional[PackageVulnerabilityDetailsTypeDef] = None + title: Optional[str] = None + updatedAt: Optional[datetime] = None + +class ListCisScanConfigurationsResponseTypeDef(BaseModel): + nextToken: str + scanConfigurations: List[CisScanConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFiltersResponseTypeDef(BaseModel): + filters: List[FilterTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFindingsResponseTypeDef(BaseModel): + findings: List[FindingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/inspector2_constants.py b/aws_resource_validator/pydantic_models/inspector2_constants.py new file mode 100644 index 00000000..77b38955 --- /dev/null +++ b/aws_resource_validator/pydantic_models/inspector2_constants.py @@ -0,0 +1,664 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountSortByType = Literal["ALL", "CRITICAL", "HIGH"] +AggregationFindingTypeType = Literal["CODE_VULNERABILITY", "NETWORK_REACHABILITY", "PACKAGE_VULNERABILITY"] +AggregationResourceTypeType = Literal["AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_LAMBDA_FUNCTION"] +AggregationTypeType = Literal["ACCOUNT", + "AMI", + "AWS_EC2_INSTANCE", + "AWS_ECR_CONTAINER", + "AWS_LAMBDA_FUNCTION", + "FINDING_TYPE", + "IMAGE_LAYER", + "LAMBDA_LAYER", + "PACKAGE", + "REPOSITORY", + "TITLE",] +AmiSortByType = Literal["AFFECTED_INSTANCES", "ALL", "CRITICAL", "HIGH"] +ArchitectureType = Literal["ARM64", "X86_64"] +AwsEcrContainerSortByType = Literal["ALL", "CRITICAL", "HIGH"] +CisFindingStatusComparisonType = Literal["EQUALS"] +CisFindingStatusType = Literal["FAILED", "PASSED", "SKIPPED"] +CisReportFormatType = Literal["CSV", "PDF"] +CisReportStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +CisResultStatusComparisonType = Literal["EQUALS"] +CisResultStatusType = Literal["FAILED", "PASSED", "SKIPPED"] +CisRuleStatusType = Literal["ERROR", "FAILED", "INFORMATIONAL", "NOT_APPLICABLE", "NOT_EVALUATED", "PASSED", "UNKNOWN"] +CisScanConfigurationsSortByType = Literal["SCAN_CONFIGURATION_ARN", "SCAN_NAME"] +CisScanResultDetailsSortByType = Literal["CHECK_ID", "STATUS"] +CisScanResultsAggregatedByChecksSortByType = Literal["CHECK_ID", "FAILED_COUNTS", "PLATFORM", "SECURITY_LEVEL", "TITLE"] +CisScanResultsAggregatedByTargetResourceSortByType = Literal["ACCOUNT_ID", + "FAILED_COUNTS", + "PLATFORM", + "RESOURCE_ID", + "TARGET_STATUS", + "TARGET_STATUS_REASON",] +CisScanStatusComparisonType = Literal["EQUALS"] +CisScanStatusType = Literal["CANCELLED", "COMPLETED", "FAILED", "IN_PROGRESS"] +CisSecurityLevelComparisonType = Literal["EQUALS"] +CisSecurityLevelType = Literal["LEVEL_1", "LEVEL_2"] +CisSortOrderType = Literal["ASC", "DESC"] +CisStringComparisonType = Literal["EQUALS", "NOT_EQUALS", "PREFIX"] +CisTargetStatusComparisonType = Literal["EQUALS"] +CisTargetStatusReasonType = Literal["SCAN_IN_PROGRESS", "SSM_UNMANAGED", "UNSUPPORTED_OS"] +CisTargetStatusType = Literal["CANCELLED", "COMPLETED", "TIMED_OUT"] +CodeSnippetErrorCodeType = Literal["ACCESS_DENIED", "CODE_SNIPPET_NOT_FOUND", "INTERNAL_ERROR", "INVALID_INPUT"] +CoverageMapComparisonType = Literal["EQUALS"] +CoverageResourceTypeType = Literal["AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION"] +CoverageStringComparisonType = Literal["EQUALS", "NOT_EQUALS"] +CurrencyType = Literal["USD"] +DayType = Literal["FRI", "MON", "SAT", "SUN", "THU", "TUE", "WED"] +DelegatedAdminStatusType = Literal["DISABLE_IN_PROGRESS", "ENABLED"] +Ec2DeepInspectionStatusType = Literal["ACTIVATED", "DEACTIVATED", "FAILED", "PENDING"] +Ec2InstanceSortByType = Literal["ALL", "CRITICAL", "HIGH", "NETWORK_FINDINGS"] +Ec2PlatformType = Literal["LINUX", "MACOS", "UNKNOWN", "WINDOWS"] +Ec2ScanModeStatusType = Literal["PENDING", "SUCCESS"] +Ec2ScanModeType = Literal["EC2_HYBRID", "EC2_SSM_AGENT_BASED"] +EcrPullDateRescanDurationType = Literal["DAYS_14", "DAYS_180", "DAYS_30", "DAYS_60", "DAYS_90"] +EcrRescanDurationStatusType = Literal["FAILED", "PENDING", "SUCCESS"] +EcrRescanDurationType = Literal["DAYS_14", "DAYS_180", "DAYS_30", "DAYS_60", "DAYS_90", "LIFETIME"] +EcrScanFrequencyType = Literal["CONTINUOUS_SCAN", "MANUAL", "SCAN_ON_PUSH"] +ErrorCodeType = Literal["ACCESS_DENIED", + "ACCOUNT_IS_ISOLATED", + "ALREADY_ENABLED", + "DISABLE_IN_PROGRESS", + "DISASSOCIATE_ALL_MEMBERS", + "ENABLE_IN_PROGRESS", + "EVENTBRIDGE_THROTTLED", + "EVENTBRIDGE_UNAVAILABLE", + "INTERNAL_ERROR", + "RESOURCE_NOT_FOUND", + "RESOURCE_SCAN_NOT_DISABLED", + "SSM_THROTTLED", + "SSM_UNAVAILABLE", + "SUSPEND_IN_PROGRESS",] +ExploitAvailableType = Literal["NO", "YES"] +ExternalReportStatusType = Literal["CANCELLED", "FAILED", "IN_PROGRESS", "SUCCEEDED"] +FilterActionType = Literal["NONE", "SUPPRESS"] +FindingDetailsErrorCodeType = Literal["ACCESS_DENIED", "FINDING_DETAILS_NOT_FOUND", "INTERNAL_ERROR", "INVALID_INPUT"] +FindingStatusType = Literal["ACTIVE", "CLOSED", "SUPPRESSED"] +FindingTypeSortByType = Literal["ALL", "CRITICAL", "HIGH"] +FindingTypeType = Literal["CODE_VULNERABILITY", "NETWORK_REACHABILITY", "PACKAGE_VULNERABILITY"] +FixAvailableType = Literal["NO", "PARTIAL", "YES"] +FreeTrialInfoErrorCodeType = Literal["ACCESS_DENIED", "INTERNAL_ERROR"] +FreeTrialStatusType = Literal["ACTIVE", "INACTIVE"] +FreeTrialTypeType = Literal["EC2", "ECR", "LAMBDA", "LAMBDA_CODE"] +GetCisScanResultDetailsPaginatorName = Literal["get_cis_scan_result_details"] +GroupKeyType = Literal["ACCOUNT_ID", "ECR_REPOSITORY_NAME", "RESOURCE_TYPE", "SCAN_STATUS_CODE", "SCAN_STATUS_REASON"] +ImageLayerSortByType = Literal["ALL", "CRITICAL", "HIGH"] +LambdaFunctionSortByType = Literal["ALL", "CRITICAL", "HIGH"] +LambdaLayerSortByType = Literal["ALL", "CRITICAL", "HIGH"] +ListAccountPermissionsPaginatorName = Literal["list_account_permissions"] +ListCisScanConfigurationsPaginatorName = Literal["list_cis_scan_configurations"] +ListCisScanResultsAggregatedByChecksPaginatorName = Literal["list_cis_scan_results_aggregated_by_checks"] +ListCisScanResultsAggregatedByTargetResourcePaginatorName = Literal["list_cis_scan_results_aggregated_by_target_resource"] +ListCisScansDetailLevelType = Literal["MEMBER", "ORGANIZATION"] +ListCisScansPaginatorName = Literal["list_cis_scans"] +ListCisScansSortByType = Literal["FAILED_CHECKS", "SCAN_START_DATE", "SCHEDULED_BY", "STATUS"] +ListCoveragePaginatorName = Literal["list_coverage"] +ListCoverageStatisticsPaginatorName = Literal["list_coverage_statistics"] +ListDelegatedAdminAccountsPaginatorName = Literal["list_delegated_admin_accounts"] +ListFiltersPaginatorName = Literal["list_filters"] +ListFindingAggregationsPaginatorName = Literal["list_finding_aggregations"] +ListFindingsPaginatorName = Literal["list_findings"] +ListMembersPaginatorName = Literal["list_members"] +ListUsageTotalsPaginatorName = Literal["list_usage_totals"] +MapComparisonType = Literal["EQUALS"] +NetworkProtocolType = Literal["TCP", "UDP"] +OperationType = Literal["DISABLE_REPOSITORY", "DISABLE_SCANNING", "ENABLE_REPOSITORY", "ENABLE_SCANNING"] +PackageManagerType = Literal["BUNDLER", + "CARGO", + "COMPOSER", + "GEMSPEC", + "GOBINARY", + "GOMOD", + "JAR", + "NODEPKG", + "NPM", + "NUGET", + "OS", + "PIP", + "PIPENV", + "POETRY", + "POM", + "PYTHONPKG", + "YARN",] +PackageSortByType = Literal["ALL", "CRITICAL", "HIGH"] +PackageTypeType = Literal["IMAGE", "ZIP"] +RelationshipStatusType = Literal["ACCOUNT_SUSPENDED", + "CANNOT_CREATE_DETECTOR_IN_ORG_MASTER", + "CREATED", + "DELETED", + "DISABLED", + "EMAIL_VERIFICATION_FAILED", + "EMAIL_VERIFICATION_IN_PROGRESS", + "ENABLED", + "INVITED", + "REGION_DISABLED", + "REMOVED", + "RESIGNED",] +ReportFormatType = Literal["CSV", "JSON"] +ReportingErrorCodeType = Literal["BUCKET_NOT_FOUND", + "INCOMPATIBLE_BUCKET_REGION", + "INTERNAL_ERROR", + "INVALID_PERMISSIONS", + "MALFORMED_KMS_KEY", + "NO_FINDINGS_FOUND",] +RepositorySortByType = Literal["AFFECTED_IMAGES", "ALL", "CRITICAL", "HIGH"] +ResourceMapComparisonType = Literal["EQUALS"] +ResourceScanTypeType = Literal["EC2", "ECR", "LAMBDA", "LAMBDA_CODE"] +ResourceStringComparisonType = Literal["EQUALS", "NOT_EQUALS"] +ResourceTypeType = Literal["AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION"] +RuntimeType = Literal["GO_1_X", + "JAVA_11", + "JAVA_17", + "JAVA_8", + "JAVA_8_AL2", + "NODEJS", + "NODEJS_12_X", + "NODEJS_14_X", + "NODEJS_16_X", + "NODEJS_18_X", + "PYTHON_3_10", + "PYTHON_3_7", + "PYTHON_3_8", + "PYTHON_3_9", + "UNSUPPORTED",] +SbomReportFormatType = Literal["CYCLONEDX_1_4", "SPDX_2_3"] +ScanModeType = Literal["EC2_AGENTLESS", "EC2_SSM_AGENT_BASED"] +ScanStatusCodeType = Literal["ACTIVE", "INACTIVE"] +ScanStatusReasonType = Literal["ACCESS_DENIED", + "DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED", + "DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED", + "DEEP_INSPECTION_NO_INVENTORY", + "DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED", + "EC2_INSTANCE_STOPPED", + "EXCLUDED_BY_TAG", + "IMAGE_SIZE_EXCEEDED", + "INTERNAL_ERROR", + "NO_INVENTORY", + "NO_RESOURCES_FOUND", + "PENDING_DISABLE", + "PENDING_INITIAL_SCAN", + "RESOURCE_TERMINATED", + "SCAN_ELIGIBILITY_EXPIRED", + "SCAN_FREQUENCY_MANUAL", + "SCAN_FREQUENCY_SCAN_ON_PUSH", + "STALE_INVENTORY", + "SUCCESSFUL", + "UNMANAGED_EC2_INSTANCE", + "UNSUPPORTED_CONFIG_FILE", + "UNSUPPORTED_MEDIA_TYPE", + "UNSUPPORTED_OS", + "UNSUPPORTED_RUNTIME",] +ScanTypeType = Literal["CODE", "NETWORK", "PACKAGE"] +SearchVulnerabilitiesPaginatorName = Literal["search_vulnerabilities"] +ServiceType = Literal["EC2", "ECR", "LAMBDA"] +SeverityType = Literal["CRITICAL", "HIGH", "INFORMATIONAL", "LOW", "MEDIUM", "UNTRIAGED"] +SortFieldType = Literal["AWS_ACCOUNT_ID", + "COMPONENT_TYPE", + "ECR_IMAGE_PUSHED_AT", + "ECR_IMAGE_REGISTRY", + "ECR_IMAGE_REPOSITORY_NAME", + "EPSS_SCORE", + "FINDING_STATUS", + "FINDING_TYPE", + "FIRST_OBSERVED_AT", + "INSPECTOR_SCORE", + "LAST_OBSERVED_AT", + "NETWORK_PROTOCOL", + "RESOURCE_TYPE", + "SEVERITY", + "VENDOR_SEVERITY", + "VULNERABILITY_ID", + "VULNERABILITY_SOURCE",] +SortOrderType = Literal["ASC", "DESC"] +StatusType = Literal["DISABLED", "DISABLING", "ENABLED", "ENABLING", "SUSPENDED", "SUSPENDING"] +StopCisSessionStatusType = Literal["FAILED", "INTERRUPTED", "SUCCESS", "UNSUPPORTED_OS"] +StringComparisonType = Literal["EQUALS", "NOT_EQUALS", "PREFIX"] +TagComparisonType = Literal["EQUALS"] +TitleSortByType = Literal["ALL", "CRITICAL", "HIGH"] +UsageTypeType = Literal["EC2_INSTANCE_HOURS", + "ECR_INITIAL_SCAN", + "ECR_RESCAN", + "LAMBDA_FUNCTION_CODE_HOURS", + "LAMBDA_FUNCTION_HOURS",] +VulnerabilitySourceType = Literal["NVD"] +Inspector2ServiceName = Literal["inspector2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_cis_scan_result_details", + "list_account_permissions", + "list_cis_scan_configurations", + "list_cis_scan_results_aggregated_by_checks", + "list_cis_scan_results_aggregated_by_target_resource", + "list_cis_scans", + "list_coverage", + "list_coverage_statistics", + "list_delegated_admin_accounts", + "list_filters", + "list_finding_aggregations", + "list_findings", + "list_members", + "list_usage_totals", + "search_vulnerabilities",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +ResourceFilterCriteriaUnionTypeDef = Union[ 'ResourceFilterCriteriaTypeDef', 'ResourceFilterCriteriaOutputTypeDef' ] +ScheduleUnionTypeDef = Union['ScheduleTypeDef', 'ScheduleExtraOutputTypeDef'] +FilterCriteriaUnionTypeDef = Union['FilterCriteriaTypeDef', 'FilterCriteriaExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/inspector_classes.py b/aws_resource_validator/pydantic_models/inspector_classes.py new file mode 100644 index 00000000..6a7f4f06 --- /dev/null +++ b/aws_resource_validator/pydantic_models/inspector_classes.py @@ -0,0 +1,575 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.inspector_constants import * + +class AttributeTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class FailedItemDetailsTypeDef(BaseModel): + failureCode: FailedItemErrorCodeType + retryable: bool + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AgentFilterTypeDef(BaseModel): + agentHealths: Sequence[AgentHealthType] + agentHealthCodes: Sequence[AgentHealthCodeType] + +class AgentPreviewTypeDef(BaseModel): + agentId: str + hostname: Optional[str] = None + autoScalingGroup: Optional[str] = None + agentHealth: Optional[AgentHealthType] = None + agentVersion: Optional[str] = None + operatingSystem: Optional[str] = None + kernelVersion: Optional[str] = None + ipv4Address: Optional[str] = None + +class TelemetryMetadataTypeDef(BaseModel): + messageType: str + count: int + dataSize: Optional[int] = None + +class DurationRangeTypeDef(BaseModel): + minSeconds: Optional[int] = None + maxSeconds: Optional[int] = None + +class AssessmentRunNotificationTypeDef(BaseModel): + date: datetime + event: InspectorEventType + error: bool + message: Optional[str] = None + snsTopicArn: Optional[str] = None + snsPublishStatusCode: Optional[AssessmentRunNotificationSnsStatusCodeType] = None + +class AssessmentRunStateChangeTypeDef(BaseModel): + stateChangedAt: datetime + state: AssessmentRunStateType + +class AssessmentTargetFilterTypeDef(BaseModel): + assessmentTargetNamePattern: Optional[str] = None + +class AssessmentTargetTypeDef(BaseModel): + arn: str + name: str + createdAt: datetime + updatedAt: datetime + resourceGroupArn: Optional[str] = None + +class TagTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class CreateAssessmentTargetRequestRequestTypeDef(BaseModel): + assessmentTargetName: str + resourceGroupArn: Optional[str] = None + +class CreateExclusionsPreviewRequestRequestTypeDef(BaseModel): + assessmentTemplateArn: str + +class ResourceGroupTagTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class DeleteAssessmentRunRequestRequestTypeDef(BaseModel): + assessmentRunArn: str + +class DeleteAssessmentTargetRequestRequestTypeDef(BaseModel): + assessmentTargetArn: str + +class DeleteAssessmentTemplateRequestRequestTypeDef(BaseModel): + assessmentTemplateArn: str + +class DescribeAssessmentRunsRequestRequestTypeDef(BaseModel): + assessmentRunArns: Sequence[str] + +class DescribeAssessmentTargetsRequestRequestTypeDef(BaseModel): + assessmentTargetArns: Sequence[str] + +class DescribeAssessmentTemplatesRequestRequestTypeDef(BaseModel): + assessmentTemplateArns: Sequence[str] + +class DescribeExclusionsRequestRequestTypeDef(BaseModel): + exclusionArns: Sequence[str] + locale: Optional[Literal["EN_US"]] = None + +class DescribeFindingsRequestRequestTypeDef(BaseModel): + findingArns: Sequence[str] + locale: Optional[Literal["EN_US"]] = None + +class DescribeResourceGroupsRequestRequestTypeDef(BaseModel): + resourceGroupArns: Sequence[str] + +class DescribeRulesPackagesRequestRequestTypeDef(BaseModel): + rulesPackageArns: Sequence[str] + locale: Optional[Literal["EN_US"]] = None + +class RulesPackageTypeDef(BaseModel): + arn: str + name: str + version: str + provider: str + description: Optional[str] = None + +class EventSubscriptionTypeDef(BaseModel): + event: InspectorEventType + subscribedAt: datetime + +class ScopeTypeDef(BaseModel): + key: Optional[ScopeTypeType] = None + value: Optional[str] = None + +class InspectorServiceAttributesTypeDef(BaseModel): + schemaVersion: int + assessmentRunArn: Optional[str] = None + rulesPackageArn: Optional[str] = None + +class GetAssessmentReportRequestRequestTypeDef(BaseModel): + assessmentRunArn: str + reportFileFormat: ReportFileFormatType + reportType: ReportTypeType + +class GetExclusionsPreviewRequestRequestTypeDef(BaseModel): + assessmentTemplateArn: str + previewToken: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + locale: Optional[Literal["EN_US"]] = None + +class GetTelemetryMetadataRequestRequestTypeDef(BaseModel): + assessmentRunArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEventSubscriptionsRequestRequestTypeDef(BaseModel): + resourceArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListExclusionsRequestRequestTypeDef(BaseModel): + assessmentRunArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListRulesPackagesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PrivateIpTypeDef(BaseModel): + privateDnsName: Optional[str] = None + privateIpAddress: Optional[str] = None + +class SecurityGroupTypeDef(BaseModel): + groupName: Optional[str] = None + groupId: Optional[str] = None + +class PreviewAgentsRequestRequestTypeDef(BaseModel): + previewAgentsArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RegisterCrossAccountAccessRoleRequestRequestTypeDef(BaseModel): + roleArn: str + +class RemoveAttributesFromFindingsRequestRequestTypeDef(BaseModel): + findingArns: Sequence[str] + attributeKeys: Sequence[str] + +class StartAssessmentRunRequestRequestTypeDef(BaseModel): + assessmentTemplateArn: str + assessmentRunName: Optional[str] = None + +class StopAssessmentRunRequestRequestTypeDef(BaseModel): + assessmentRunArn: str + stopAction: Optional[StopActionType] = None + +class SubscribeToEventRequestRequestTypeDef(BaseModel): + resourceArn: str + event: InspectorEventType + topicArn: str + +class UnsubscribeFromEventRequestRequestTypeDef(BaseModel): + resourceArn: str + event: InspectorEventType + topicArn: str + +class UpdateAssessmentTargetRequestRequestTypeDef(BaseModel): + assessmentTargetArn: str + assessmentTargetName: str + resourceGroupArn: Optional[str] = None + +class AddAttributesToFindingsRequestRequestTypeDef(BaseModel): + findingArns: Sequence[str] + attributes: Sequence[AttributeTypeDef] + +class AssessmentTemplateTypeDef(BaseModel): + arn: str + name: str + assessmentTargetArn: str + durationInSeconds: int + rulesPackageArns: List[str] + userAttributesForFindings: List[AttributeTypeDef] + assessmentRunCount: int + createdAt: datetime + lastAssessmentRunArn: Optional[str] = None + +class CreateAssessmentTemplateRequestRequestTypeDef(BaseModel): + assessmentTargetArn: str + assessmentTemplateName: str + durationInSeconds: int + rulesPackageArns: Sequence[str] + userAttributesForFindings: Optional[Sequence[AttributeTypeDef]] = None + +class AddAttributesToFindingsResponseTypeDef(BaseModel): + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssessmentTargetResponseTypeDef(BaseModel): + assessmentTargetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssessmentTemplateResponseTypeDef(BaseModel): + assessmentTemplateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExclusionsPreviewResponseTypeDef(BaseModel): + previewToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceGroupResponseTypeDef(BaseModel): + resourceGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCrossAccountAccessRoleResponseTypeDef(BaseModel): + roleArn: str + valid: bool + registeredAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssessmentReportResponseTypeDef(BaseModel): + status: ReportStatusType + url: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentRunsResponseTypeDef(BaseModel): + assessmentRunArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentTargetsResponseTypeDef(BaseModel): + assessmentTargetArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentTemplatesResponseTypeDef(BaseModel): + assessmentTemplateArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListExclusionsResponseTypeDef(BaseModel): + exclusionArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFindingsResponseTypeDef(BaseModel): + findingArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRulesPackagesResponseTypeDef(BaseModel): + rulesPackageArns: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveAttributesFromFindingsResponseTypeDef(BaseModel): + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartAssessmentRunResponseTypeDef(BaseModel): + assessmentRunArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentRunAgentsRequestRequestTypeDef(BaseModel): + assessmentRunArn: str + filter: Optional[AgentFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PreviewAgentsResponseTypeDef(BaseModel): + agentPreviews: List[AgentPreviewTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssessmentRunAgentTypeDef(BaseModel): + agentId: str + assessmentRunArn: str + agentHealth: AgentHealthType + agentHealthCode: AgentHealthCodeType + telemetryMetadata: List[TelemetryMetadataTypeDef] + agentHealthDetails: Optional[str] = None + autoScalingGroup: Optional[str] = None + +class GetTelemetryMetadataResponseTypeDef(BaseModel): + telemetryMetadata: List[TelemetryMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssessmentTemplateFilterTypeDef(BaseModel): + namePattern: Optional[str] = None + durationRange: Optional[DurationRangeTypeDef] = None + rulesPackageArns: Optional[Sequence[str]] = None + +class AssessmentRunTypeDef(BaseModel): + arn: str + name: str + assessmentTemplateArn: str + state: AssessmentRunStateType + durationInSeconds: int + rulesPackageArns: List[str] + userAttributesForFindings: List[AttributeTypeDef] + createdAt: datetime + stateChangedAt: datetime + dataCollected: bool + stateChanges: List[AssessmentRunStateChangeTypeDef] + notifications: List[AssessmentRunNotificationTypeDef] + findingCounts: Dict[SeverityType, int] + startedAt: Optional[datetime] = None + completedAt: Optional[datetime] = None + +class ListAssessmentTargetsRequestRequestTypeDef(BaseModel): + filter: Optional[AssessmentTargetFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeAssessmentTargetsResponseTypeDef(BaseModel): + assessmentTargets: List[AssessmentTargetTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateResourceGroupRequestRequestTypeDef(BaseModel): + resourceGroupTags: Sequence[ResourceGroupTagTypeDef] + +class ResourceGroupTypeDef(BaseModel): + arn: str + tags: List[ResourceGroupTagTypeDef] + createdAt: datetime + +class DescribeRulesPackagesResponseTypeDef(BaseModel): + rulesPackages: List[RulesPackageTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubscriptionTypeDef(BaseModel): + resourceArn: str + topicArn: str + eventSubscriptions: List[EventSubscriptionTypeDef] + +class ExclusionPreviewTypeDef(BaseModel): + title: str + description: str + recommendation: str + scopes: List[ScopeTypeDef] + attributes: Optional[List[AttributeTypeDef]] = None + +class ExclusionTypeDef(BaseModel): + arn: str + title: str + description: str + recommendation: str + scopes: List[ScopeTypeDef] + attributes: Optional[List[AttributeTypeDef]] = None + +class ListAssessmentRunAgentsRequestListAssessmentRunAgentsPaginateTypeDef(BaseModel): + assessmentRunArn: str + filter: Optional[AgentFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssessmentTargetsRequestListAssessmentTargetsPaginateTypeDef(BaseModel): + filter: Optional[AssessmentTargetFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventSubscriptionsRequestListEventSubscriptionsPaginateTypeDef(BaseModel): + resourceArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExclusionsRequestListExclusionsPaginateTypeDef(BaseModel): + assessmentRunArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesPackagesRequestListRulesPackagesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PreviewAgentsRequestPreviewAgentsPaginateTypeDef(BaseModel): + previewAgentsArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class NetworkInterfaceTypeDef(BaseModel): + networkInterfaceId: Optional[str] = None + subnetId: Optional[str] = None + vpcId: Optional[str] = None + privateDnsName: Optional[str] = None + privateIpAddress: Optional[str] = None + privateIpAddresses: Optional[List[PrivateIpTypeDef]] = None + publicDnsName: Optional[str] = None + publicIp: Optional[str] = None + ipv6Addresses: Optional[List[str]] = None + securityGroups: Optional[List[SecurityGroupTypeDef]] = None + +class TimestampRangeTypeDef(BaseModel): + beginDate: Optional[TimestampTypeDef] = None + endDate: Optional[TimestampTypeDef] = None + +class DescribeAssessmentTemplatesResponseTypeDef(BaseModel): + assessmentTemplates: List[AssessmentTemplateTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentRunAgentsResponseTypeDef(BaseModel): + assessmentRunAgents: List[AssessmentRunAgentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssessmentTemplatesRequestListAssessmentTemplatesPaginateTypeDef(BaseModel): + assessmentTargetArns: Optional[Sequence[str]] = None + filter: Optional[AssessmentTemplateFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssessmentTemplatesRequestRequestTypeDef(BaseModel): + assessmentTargetArns: Optional[Sequence[str]] = None + filter: Optional[AssessmentTemplateFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeAssessmentRunsResponseTypeDef(BaseModel): + assessmentRuns: List[AssessmentRunTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourceGroupsResponseTypeDef(BaseModel): + resourceGroups: List[ResourceGroupTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventSubscriptionsResponseTypeDef(BaseModel): + subscriptions: List[SubscriptionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetExclusionsPreviewResponseTypeDef(BaseModel): + previewStatus: PreviewStatusType + exclusionPreviews: List[ExclusionPreviewTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExclusionsResponseTypeDef(BaseModel): + exclusions: Dict[str, ExclusionTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssetAttributesTypeDef(BaseModel): + schemaVersion: int + agentId: Optional[str] = None + autoScalingGroup: Optional[str] = None + amiId: Optional[str] = None + hostname: Optional[str] = None + ipv4Addresses: Optional[List[str]] = None + tags: Optional[List[TagTypeDef]] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + +class AssessmentRunFilterTypeDef(BaseModel): + namePattern: Optional[str] = None + states: Optional[Sequence[AssessmentRunStateType]] = None + durationRange: Optional[DurationRangeTypeDef] = None + rulesPackageArns: Optional[Sequence[str]] = None + startTimeRange: Optional[TimestampRangeTypeDef] = None + completionTimeRange: Optional[TimestampRangeTypeDef] = None + stateChangeTimeRange: Optional[TimestampRangeTypeDef] = None + +class FindingFilterTypeDef(BaseModel): + agentIds: Optional[Sequence[str]] = None + autoScalingGroups: Optional[Sequence[str]] = None + ruleNames: Optional[Sequence[str]] = None + severities: Optional[Sequence[SeverityType]] = None + rulesPackageArns: Optional[Sequence[str]] = None + attributes: Optional[Sequence[AttributeTypeDef]] = None + userAttributes: Optional[Sequence[AttributeTypeDef]] = None + creationTimeRange: Optional[TimestampRangeTypeDef] = None + +class FindingTypeDef(BaseModel): + arn: str + attributes: List[AttributeTypeDef] + userAttributes: List[AttributeTypeDef] + createdAt: datetime + updatedAt: datetime + schemaVersion: Optional[int] = None + service: Optional[str] = None + serviceAttributes: Optional[InspectorServiceAttributesTypeDef] = None + assetType: Optional[Literal["ec2-instance"]] = None + assetAttributes: Optional[AssetAttributesTypeDef] = None + id: Optional[str] = None + title: Optional[str] = None + description: Optional[str] = None + recommendation: Optional[str] = None + severity: Optional[SeverityType] = None + numericSeverity: Optional[float] = None + confidence: Optional[int] = None + indicatorOfCompromise: Optional[bool] = None + +class ListAssessmentRunsRequestListAssessmentRunsPaginateTypeDef(BaseModel): + assessmentTemplateArns: Optional[Sequence[str]] = None + filter: Optional[AssessmentRunFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssessmentRunsRequestRequestTypeDef(BaseModel): + assessmentTemplateArns: Optional[Sequence[str]] = None + filter: Optional[AssessmentRunFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFindingsRequestListFindingsPaginateTypeDef(BaseModel): + assessmentRunArns: Optional[Sequence[str]] = None + filter: Optional[FindingFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsRequestRequestTypeDef(BaseModel): + assessmentRunArns: Optional[Sequence[str]] = None + filter: Optional[FindingFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeFindingsResponseTypeDef(BaseModel): + findings: List[FindingTypeDef] + failedItems: Dict[str, FailedItemDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/inspector_constants.py b/aws_resource_validator/pydantic_models/inspector_constants.py new file mode 100644 index 00000000..34596c78 --- /dev/null +++ b/aws_resource_validator/pydantic_models/inspector_constants.py @@ -0,0 +1,455 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgentHealthCodeType = Literal["IDLE", "RUNNING", "SHUTDOWN", "THROTTLED", "UNHEALTHY", "UNKNOWN"] +AgentHealthType = Literal["HEALTHY", "UNHEALTHY", "UNKNOWN"] +AssessmentRunNotificationSnsStatusCodeType = Literal["ACCESS_DENIED", "INTERNAL_ERROR", "SUCCESS", "TOPIC_DOES_NOT_EXIST"] +AssessmentRunStateType = Literal["CANCELED", + "COLLECTING_DATA", + "COMPLETED", + "COMPLETED_WITH_ERRORS", + "CREATED", + "DATA_COLLECTED", + "ERROR", + "EVALUATING_RULES", + "FAILED", + "START_DATA_COLLECTION_IN_PROGRESS", + "START_DATA_COLLECTION_PENDING", + "START_EVALUATING_RULES_PENDING", + "STOP_DATA_COLLECTION_PENDING",] +AssetTypeType = Literal["ec2-instance"] +FailedItemErrorCodeType = Literal["ACCESS_DENIED", + "DUPLICATE_ARN", + "INTERNAL_ERROR", + "INVALID_ARN", + "ITEM_DOES_NOT_EXIST", + "LIMIT_EXCEEDED",] +InspectorEventType = Literal["ASSESSMENT_RUN_COMPLETED", + "ASSESSMENT_RUN_STARTED", + "ASSESSMENT_RUN_STATE_CHANGED", + "FINDING_REPORTED", + "OTHER",] +ListAssessmentRunAgentsPaginatorName = Literal["list_assessment_run_agents"] +ListAssessmentRunsPaginatorName = Literal["list_assessment_runs"] +ListAssessmentTargetsPaginatorName = Literal["list_assessment_targets"] +ListAssessmentTemplatesPaginatorName = Literal["list_assessment_templates"] +ListEventSubscriptionsPaginatorName = Literal["list_event_subscriptions"] +ListExclusionsPaginatorName = Literal["list_exclusions"] +ListFindingsPaginatorName = Literal["list_findings"] +ListRulesPackagesPaginatorName = Literal["list_rules_packages"] +LocaleType = Literal["EN_US"] +PreviewAgentsPaginatorName = Literal["preview_agents"] +PreviewStatusType = Literal["COMPLETED", "WORK_IN_PROGRESS"] +ReportFileFormatType = Literal["HTML", "PDF"] +ReportStatusType = Literal["COMPLETED", "FAILED", "WORK_IN_PROGRESS"] +ReportTypeType = Literal["FINDING", "FULL"] +ScopeTypeType = Literal["INSTANCE_ID", "RULES_PACKAGE_ARN"] +SeverityType = Literal["High", "Informational", "Low", "Medium", "Undefined"] +StopActionType = Literal["SKIP_EVALUATION", "START_EVALUATION"] +InspectorServiceName = Literal["inspector"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_assessment_run_agents", + "list_assessment_runs", + "list_assessment_targets", + "list_assessment_templates", + "list_event_subscriptions", + "list_exclusions", + "list_findings", + "list_rules_packages", + "preview_agents",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/inspector_scan_classes.py b/aws_resource_validator/pydantic_models/inspector_scan_classes.py new file mode 100644 index 00000000..93d35a21 --- /dev/null +++ b/aws_resource_validator/pydantic_models/inspector_scan_classes.py @@ -0,0 +1,28 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.inspector_scan_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ScanSbomRequestRequestTypeDef(BaseModel): + sbom: Mapping[str, Any] + outputFormat: Optional[OutputFormatType] = None + +class ScanSbomResponseTypeDef(BaseModel): + sbom: Dict[str, Any] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/inspector_scan_constants.py b/aws_resource_validator/pydantic_models/inspector_scan_constants.py new file mode 100644 index 00000000..4c186720 --- /dev/null +++ b/aws_resource_validator/pydantic_models/inspector_scan_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +OutputFormatType = Literal["CYCLONE_DX_1_5", "INSPECTOR"] +inspectorscanServiceName = Literal["inspector-scan"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/internetmonitor_classes.py b/aws_resource_validator/pydantic_models/internetmonitor_classes.py new file mode 100644 index 00000000..5fd83c0d --- /dev/null +++ b/aws_resource_validator/pydantic_models/internetmonitor_classes.py @@ -0,0 +1,332 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.internetmonitor_constants import * + +class AvailabilityMeasurementTypeDef(BaseModel): + ExperienceScore: Optional[float] = None + PercentOfTotalTrafficImpacted: Optional[float] = None + PercentOfClientLocationImpacted: Optional[float] = None + +class ClientLocationTypeDef(BaseModel): + ASName: str + ASNumber: int + Country: str + City: str + Latitude: float + Longitude: float + Subdivision: Optional[str] = None + Metro: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteMonitorInputRequestTypeDef(BaseModel): + MonitorName: str + +class FilterParameterTypeDef(BaseModel): + Field: Optional[str] = None + Operator: Optional[OperatorType] = None + Values: Optional[Sequence[str]] = None + +class GetHealthEventInputRequestTypeDef(BaseModel): + MonitorName: str + EventId: str + LinkedAccountId: Optional[str] = None + +class GetInternetEventInputRequestTypeDef(BaseModel): + EventId: str + +class GetMonitorInputRequestTypeDef(BaseModel): + MonitorName: str + LinkedAccountId: Optional[str] = None + +class GetQueryResultsInputRequestTypeDef(BaseModel): + MonitorName: str + QueryId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QueryFieldTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + +class GetQueryStatusInputRequestTypeDef(BaseModel): + MonitorName: str + QueryId: str + +class LocalHealthEventsConfigTypeDef(BaseModel): + Status: Optional[LocalHealthEventsConfigStatusType] = None + HealthScoreThreshold: Optional[float] = None + MinTrafficImpact: Optional[float] = None + +class S3ConfigTypeDef(BaseModel): + BucketName: Optional[str] = None + BucketPrefix: Optional[str] = None + LogDeliveryStatus: Optional[LogDeliveryStatusType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListMonitorsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + MonitorStatus: Optional[str] = None + IncludeLinkedAccounts: Optional[bool] = None + +class MonitorTypeDef(BaseModel): + MonitorName: str + MonitorArn: str + Status: MonitorConfigStateType + ProcessingStatus: Optional[MonitorProcessingStatusCodeType] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class NetworkTypeDef(BaseModel): + ASName: str + ASNumber: int + +class RoundTripTimeTypeDef(BaseModel): + P50: Optional[float] = None + P90: Optional[float] = None + P95: Optional[float] = None + +class StopQueryInputRequestTypeDef(BaseModel): + MonitorName: str + QueryId: str + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class InternetEventSummaryTypeDef(BaseModel): + EventId: str + EventArn: str + StartedAt: datetime + ClientLocation: ClientLocationTypeDef + EventType: InternetEventTypeType + EventStatus: InternetEventStatusType + EndedAt: Optional[datetime] = None + +class CreateMonitorOutputTypeDef(BaseModel): + Arn: str + Status: MonitorConfigStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetInternetEventOutputTypeDef(BaseModel): + EventId: str + EventArn: str + StartedAt: datetime + EndedAt: datetime + ClientLocation: ClientLocationTypeDef + EventType: InternetEventTypeType + EventStatus: InternetEventStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryStatusOutputTypeDef(BaseModel): + Status: QueryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartQueryOutputTypeDef(BaseModel): + QueryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMonitorOutputTypeDef(BaseModel): + MonitorArn: str + Status: MonitorConfigStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryResultsOutputTypeDef(BaseModel): + Fields: List[QueryFieldTypeDef] + Data: List[List[str]] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class HealthEventsConfigTypeDef(BaseModel): + AvailabilityScoreThreshold: Optional[float] = None + PerformanceScoreThreshold: Optional[float] = None + AvailabilityLocalHealthEventsConfig: Optional[LocalHealthEventsConfigTypeDef] = None + PerformanceLocalHealthEventsConfig: Optional[LocalHealthEventsConfigTypeDef] = None + +class InternetMeasurementsLogDeliveryTypeDef(BaseModel): + S3Config: Optional[S3ConfigTypeDef] = None + +class ListMonitorsInputListMonitorsPaginateTypeDef(BaseModel): + MonitorStatus: Optional[str] = None + IncludeLinkedAccounts: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHealthEventsInputListHealthEventsPaginateTypeDef(BaseModel): + MonitorName: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + EventStatus: Optional[HealthEventStatusType] = None + LinkedAccountId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHealthEventsInputRequestTypeDef(BaseModel): + MonitorName: str + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + EventStatus: Optional[HealthEventStatusType] = None + LinkedAccountId: Optional[str] = None + +class ListInternetEventsInputListInternetEventsPaginateTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + EventStatus: Optional[str] = None + EventType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInternetEventsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + EventStatus: Optional[str] = None + EventType: Optional[str] = None + +class StartQueryInputRequestTypeDef(BaseModel): + MonitorName: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + QueryType: QueryTypeType + FilterParameters: Optional[Sequence[FilterParameterTypeDef]] = None + LinkedAccountId: Optional[str] = None + +class ListMonitorsOutputTypeDef(BaseModel): + Monitors: List[MonitorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkImpairmentTypeDef(BaseModel): + Networks: List[NetworkTypeDef] + AsPath: List[NetworkTypeDef] + NetworkEventType: TriangulationEventTypeType + +class PerformanceMeasurementTypeDef(BaseModel): + ExperienceScore: Optional[float] = None + PercentOfTotalTrafficImpacted: Optional[float] = None + PercentOfClientLocationImpacted: Optional[float] = None + RoundTripTime: Optional[RoundTripTimeTypeDef] = None + +class ListInternetEventsOutputTypeDef(BaseModel): + InternetEvents: List[InternetEventSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMonitorInputRequestTypeDef(BaseModel): + MonitorName: str + Resources: Optional[Sequence[str]] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + MaxCityNetworksToMonitor: Optional[int] = None + InternetMeasurementsLogDelivery: Optional[InternetMeasurementsLogDeliveryTypeDef] = None + TrafficPercentageToMonitor: Optional[int] = None + HealthEventsConfig: Optional[HealthEventsConfigTypeDef] = None + +class GetMonitorOutputTypeDef(BaseModel): + MonitorName: str + MonitorArn: str + Resources: List[str] + Status: MonitorConfigStateType + CreatedAt: datetime + ModifiedAt: datetime + ProcessingStatus: MonitorProcessingStatusCodeType + ProcessingStatusInfo: str + Tags: Dict[str, str] + MaxCityNetworksToMonitor: int + InternetMeasurementsLogDelivery: InternetMeasurementsLogDeliveryTypeDef + TrafficPercentageToMonitor: int + HealthEventsConfig: HealthEventsConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMonitorInputRequestTypeDef(BaseModel): + MonitorName: str + ResourcesToAdd: Optional[Sequence[str]] = None + ResourcesToRemove: Optional[Sequence[str]] = None + Status: Optional[MonitorConfigStateType] = None + ClientToken: Optional[str] = None + MaxCityNetworksToMonitor: Optional[int] = None + InternetMeasurementsLogDelivery: Optional[InternetMeasurementsLogDeliveryTypeDef] = None + TrafficPercentageToMonitor: Optional[int] = None + HealthEventsConfig: Optional[HealthEventsConfigTypeDef] = None + +class InternetHealthTypeDef(BaseModel): + Availability: Optional[AvailabilityMeasurementTypeDef] = None + Performance: Optional[PerformanceMeasurementTypeDef] = None + +class ImpactedLocationTypeDef(BaseModel): + ASName: str + ASNumber: int + Country: str + Status: HealthEventStatusType + Subdivision: Optional[str] = None + Metro: Optional[str] = None + City: Optional[str] = None + Latitude: Optional[float] = None + Longitude: Optional[float] = None + CountryCode: Optional[str] = None + SubdivisionCode: Optional[str] = None + ServiceLocation: Optional[str] = None + CausedBy: Optional[NetworkImpairmentTypeDef] = None + InternetHealth: Optional[InternetHealthTypeDef] = None + Ipv4Prefixes: Optional[List[str]] = None + +class GetHealthEventOutputTypeDef(BaseModel): + EventArn: str + EventId: str + StartedAt: datetime + EndedAt: datetime + CreatedAt: datetime + LastUpdatedAt: datetime + ImpactedLocations: List[ImpactedLocationTypeDef] + Status: HealthEventStatusType + PercentOfTotalTrafficImpacted: float + ImpactType: HealthEventImpactTypeType + HealthScoreThreshold: float + ResponseMetadata: ResponseMetadataTypeDef + +class HealthEventTypeDef(BaseModel): + EventArn: str + EventId: str + StartedAt: datetime + LastUpdatedAt: datetime + ImpactedLocations: List[ImpactedLocationTypeDef] + Status: HealthEventStatusType + ImpactType: HealthEventImpactTypeType + EndedAt: Optional[datetime] = None + CreatedAt: Optional[datetime] = None + PercentOfTotalTrafficImpacted: Optional[float] = None + HealthScoreThreshold: Optional[float] = None + +class ListHealthEventsOutputTypeDef(BaseModel): + HealthEvents: List[HealthEventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/internetmonitor_constants.py b/aws_resource_validator/pydantic_models/internetmonitor_constants.py new file mode 100644 index 00000000..121df3c9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/internetmonitor_constants.py @@ -0,0 +1,447 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +HealthEventImpactTypeType = Literal["AVAILABILITY", "LOCAL_AVAILABILITY", "LOCAL_PERFORMANCE", "PERFORMANCE"] +HealthEventStatusType = Literal["ACTIVE", "RESOLVED"] +InternetEventStatusType = Literal["ACTIVE", "RESOLVED"] +InternetEventTypeType = Literal["AVAILABILITY", "PERFORMANCE"] +ListHealthEventsPaginatorName = Literal["list_health_events"] +ListInternetEventsPaginatorName = Literal["list_internet_events"] +ListMonitorsPaginatorName = Literal["list_monitors"] +LocalHealthEventsConfigStatusType = Literal["DISABLED", "ENABLED"] +LogDeliveryStatusType = Literal["DISABLED", "ENABLED"] +MonitorConfigStateType = Literal["ACTIVE", "ERROR", "INACTIVE", "PENDING"] +MonitorProcessingStatusCodeType = Literal["COLLECTING_DATA", + "FAULT_ACCESS_CLOUDWATCH", + "FAULT_SERVICE", + "INACTIVE", + "INSUFFICIENT_DATA", + "OK",] +OperatorType = Literal["EQUALS", "NOT_EQUALS"] +QueryStatusType = Literal["CANCELED", "FAILED", "QUEUED", "RUNNING", "SUCCEEDED"] +QueryTypeType = Literal["MEASUREMENTS", "TOP_LOCATIONS", "TOP_LOCATION_DETAILS"] +TriangulationEventTypeType = Literal["AWS", "Internet"] +CloudWatchInternetMonitorServiceName = Literal["internetmonitor"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_health_events", "list_internet_events", "list_monitors"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/iot1click_devices_classes.py b/aws_resource_validator/pydantic_models/iot1click_devices_classes.py new file mode 100644 index 00000000..70a477ab --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot1click_devices_classes.py @@ -0,0 +1,154 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iot1click_devices_constants import * + +class ClaimDevicesByClaimCodeRequestRequestTypeDef(BaseModel): + ClaimCode: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeDeviceRequestRequestTypeDef(BaseModel): + DeviceId: str + +class DeviceDescriptionTypeDef(BaseModel): + Arn: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + DeviceId: Optional[str] = None + Enabled: Optional[bool] = None + RemainingLife: Optional[float] = None + Type: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class DeviceTypeDef(BaseModel): + Attributes: Optional[Dict[str, Any]] = None + DeviceId: Optional[str] = None + Type: Optional[str] = None + +class DeviceMethodTypeDef(BaseModel): + DeviceType: Optional[str] = None + MethodName: Optional[str] = None + +class FinalizeDeviceClaimRequestRequestTypeDef(BaseModel): + DeviceId: str + Tags: Optional[Mapping[str, str]] = None + +class GetDeviceMethodsRequestRequestTypeDef(BaseModel): + DeviceId: str + +class InitiateDeviceClaimRequestRequestTypeDef(BaseModel): + DeviceId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDevicesRequestRequestTypeDef(BaseModel): + DeviceType: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UnclaimDeviceRequestRequestTypeDef(BaseModel): + DeviceId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDeviceStateRequestRequestTypeDef(BaseModel): + DeviceId: str + Enabled: Optional[bool] = None + +class ClaimDevicesByClaimCodeResponseTypeDef(BaseModel): + ClaimCode: str + Total: int + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class FinalizeDeviceClaimResponseTypeDef(BaseModel): + State: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateDeviceClaimResponseTypeDef(BaseModel): + State: str + ResponseMetadata: ResponseMetadataTypeDef + +class InvokeDeviceMethodResponseTypeDef(BaseModel): + DeviceMethodResponse: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UnclaimDeviceResponseTypeDef(BaseModel): + State: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeviceResponseTypeDef(BaseModel): + DeviceDescription: DeviceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicesResponseTypeDef(BaseModel): + Devices: List[DeviceDescriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeviceEventTypeDef(BaseModel): + Device: Optional[DeviceTypeDef] = None + StdEvent: Optional[str] = None + +class GetDeviceMethodsResponseTypeDef(BaseModel): + DeviceMethods: List[DeviceMethodTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InvokeDeviceMethodRequestRequestTypeDef(BaseModel): + DeviceId: str + DeviceMethod: Optional[DeviceMethodTypeDef] = None + DeviceMethodParameters: Optional[str] = None + +class ListDevicesRequestListDevicesPaginateTypeDef(BaseModel): + DeviceType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceEventsRequestListDeviceEventsPaginateTypeDef(BaseModel): + DeviceId: str + FromTimeStamp: TimestampTypeDef + ToTimeStamp: TimestampTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceEventsRequestRequestTypeDef(BaseModel): + DeviceId: str + FromTimeStamp: TimestampTypeDef + ToTimeStamp: TimestampTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDeviceEventsResponseTypeDef(BaseModel): + Events: List[DeviceEventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iot1click_devices_constants.py b/aws_resource_validator/pydantic_models/iot1click_devices_constants.py new file mode 100644 index 00000000..4e58635b --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot1click_devices_constants.py @@ -0,0 +1,392 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListDeviceEventsPaginatorName = Literal["list_device_events"] +ListDevicesPaginatorName = Literal["list_devices"] +IoT1ClickDevicesServiceServiceName = Literal["iot1click-devices"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_device_events", "list_devices"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/iot1click_projects_classes.py b/aws_resource_validator/pydantic_models/iot1click_projects_classes.py new file mode 100644 index 00000000..939a36b4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot1click_projects_classes.py @@ -0,0 +1,165 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iot1click_projects_constants import * + +class AssociateDeviceWithPlacementRequestRequestTypeDef(BaseModel): + projectName: str + placementName: str + deviceId: str + deviceTemplateName: str + +class CreatePlacementRequestRequestTypeDef(BaseModel): + placementName: str + projectName: str + attributes: Optional[Mapping[str, str]] = None + +class DeletePlacementRequestRequestTypeDef(BaseModel): + placementName: str + projectName: str + +class DeleteProjectRequestRequestTypeDef(BaseModel): + projectName: str + +class DescribePlacementRequestRequestTypeDef(BaseModel): + placementName: str + projectName: str + +class PlacementDescriptionTypeDef(BaseModel): + projectName: str + placementName: str + attributes: Dict[str, str] + createdDate: datetime + updatedDate: datetime + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeProjectRequestRequestTypeDef(BaseModel): + projectName: str + +class DeviceTemplateTypeDef(BaseModel): + deviceType: Optional[str] = None + callbackOverrides: Optional[Mapping[str, str]] = None + +class DisassociateDeviceFromPlacementRequestRequestTypeDef(BaseModel): + projectName: str + placementName: str + deviceTemplateName: str + +class GetDevicesInPlacementRequestRequestTypeDef(BaseModel): + projectName: str + placementName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListPlacementsRequestRequestTypeDef(BaseModel): + projectName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PlacementSummaryTypeDef(BaseModel): + projectName: str + placementName: str + createdDate: datetime + updatedDate: datetime + +class ListProjectsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ProjectSummaryTypeDef(BaseModel): + projectName: str + createdDate: datetime + updatedDate: datetime + arn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdatePlacementRequestRequestTypeDef(BaseModel): + placementName: str + projectName: str + attributes: Optional[Mapping[str, str]] = None + +class DescribePlacementResponseTypeDef(BaseModel): + placement: PlacementDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevicesInPlacementResponseTypeDef(BaseModel): + devices: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PlacementTemplateTypeDef(BaseModel): + defaultAttributes: Optional[Mapping[str, str]] = None + deviceTemplates: Optional[Mapping[str, DeviceTemplateTypeDef]] = None + +class ListPlacementsRequestListPlacementsPaginateTypeDef(BaseModel): + projectName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlacementsResponseTypeDef(BaseModel): + placements: List[PlacementSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsResponseTypeDef(BaseModel): + projects: List[ProjectSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectRequestRequestTypeDef(BaseModel): + projectName: str + description: Optional[str] = None + placementTemplate: Optional[PlacementTemplateTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class ProjectDescriptionTypeDef(BaseModel): + projectName: str + createdDate: datetime + updatedDate: datetime + arn: Optional[str] = None + description: Optional[str] = None + placementTemplate: Optional[PlacementTemplateTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class UpdateProjectRequestRequestTypeDef(BaseModel): + projectName: str + description: Optional[str] = None + placementTemplate: Optional[PlacementTemplateTypeDef] = None + +class DescribeProjectResponseTypeDef(BaseModel): + project: ProjectDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iot1click_projects_constants.py b/aws_resource_validator/pydantic_models/iot1click_projects_constants.py new file mode 100644 index 00000000..4192493f --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot1click_projects_constants.py @@ -0,0 +1,398 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListPlacementsPaginatorName = Literal["list_placements"] +ListProjectsPaginatorName = Literal["list_projects"] +IoT1ClickProjectsServiceName = Literal["iot1click-projects"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_placements", "list_projects"] +RegionName = Literal["ap-northeast-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/iot_classes.py b/aws_resource_validator/pydantic_models/iot_classes.py new file mode 100644 index 00000000..07d242b2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot_classes.py @@ -0,0 +1,3957 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iot_constants import * + +class AbortCriteriaTypeDef(BaseModel): + failureType: JobExecutionFailureTypeType + action: Literal["CANCEL"] + thresholdPercentage: float + minNumberOfExecutedThings: int + +class AcceptCertificateTransferRequestRequestTypeDef(BaseModel): + certificateId: str + setAsActive: Optional[bool] = None + +class CloudwatchAlarmActionTypeDef(BaseModel): + roleArn: str + alarmName: str + stateReason: str + stateValue: str + +class CloudwatchLogsActionTypeDef(BaseModel): + roleArn: str + logGroupName: str + batchMode: Optional[bool] = None + +class CloudwatchMetricActionTypeDef(BaseModel): + roleArn: str + metricNamespace: str + metricName: str + metricValue: str + metricUnit: str + metricTimestamp: Optional[str] = None + +class DynamoDBActionTypeDef(BaseModel): + tableName: str + roleArn: str + hashKeyField: str + hashKeyValue: str + operation: Optional[str] = None + hashKeyType: Optional[DynamoKeyTypeType] = None + rangeKeyField: Optional[str] = None + rangeKeyValue: Optional[str] = None + rangeKeyType: Optional[DynamoKeyTypeType] = None + payloadField: Optional[str] = None + +class ElasticsearchActionTypeDef(BaseModel): + roleArn: str + endpoint: str + index: str + type: str + id: str + +class FirehoseActionTypeDef(BaseModel): + roleArn: str + deliveryStreamName: str + separator: Optional[str] = None + batchMode: Optional[bool] = None + +class IotAnalyticsActionTypeDef(BaseModel): + channelArn: Optional[str] = None + channelName: Optional[str] = None + batchMode: Optional[bool] = None + roleArn: Optional[str] = None + +class IotEventsActionTypeDef(BaseModel): + inputName: str + roleArn: str + messageId: Optional[str] = None + batchMode: Optional[bool] = None + +class KinesisActionTypeDef(BaseModel): + roleArn: str + streamName: str + partitionKey: Optional[str] = None + +class LambdaActionTypeDef(BaseModel): + functionArn: str + +class OpenSearchActionTypeDef(BaseModel): + roleArn: str + endpoint: str + index: str + type: str + id: str + +class S3ActionTypeDef(BaseModel): + roleArn: str + bucketName: str + key: str + cannedAcl: Optional[CannedAccessControlListType] = None + +class SalesforceActionTypeDef(BaseModel): + token: str + url: str + +class SnsActionTypeDef(BaseModel): + targetArn: str + roleArn: str + messageFormat: Optional[MessageFormatType] = None + +class SqsActionTypeDef(BaseModel): + roleArn: str + queueUrl: str + useBase64: Optional[bool] = None + +class StepFunctionsActionTypeDef(BaseModel): + stateMachineName: str + roleArn: str + executionNamePrefix: Optional[str] = None + +class MetricValuePaginatorTypeDef(BaseModel): + count: Optional[int] = None + cidrs: Optional[List[str]] = None + ports: Optional[List[int]] = None + number: Optional[float] = None + numbers: Optional[List[float]] = None + strings: Optional[List[str]] = None + +class ViolationEventAdditionalInfoTypeDef(BaseModel): + confidenceLevel: Optional[ConfidenceLevelType] = None + +class MetricValueTypeDef(BaseModel): + count: Optional[int] = None + cidrs: Optional[Sequence[str]] = None + ports: Optional[Sequence[int]] = None + number: Optional[float] = None + numbers: Optional[Sequence[float]] = None + strings: Optional[Sequence[str]] = None + +class AddThingToBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: Optional[str] = None + billingGroupArn: Optional[str] = None + thingName: Optional[str] = None + thingArn: Optional[str] = None + +class AddThingToThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: Optional[str] = None + thingGroupArn: Optional[str] = None + thingName: Optional[str] = None + thingArn: Optional[str] = None + overrideDynamicGroups: Optional[bool] = None + +class AddThingsToThingGroupParamsPaginatorTypeDef(BaseModel): + thingGroupNames: List[str] + overrideDynamicGroups: Optional[bool] = None + +class AddThingsToThingGroupParamsTypeDef(BaseModel): + thingGroupNames: Sequence[str] + overrideDynamicGroups: Optional[bool] = None + +class AggregationTypeTypeDef(BaseModel): + name: AggregationTypeNameType + values: Optional[Sequence[str]] = None + +class AlertTargetTypeDef(BaseModel): + alertTargetArn: str + roleArn: str + +class PolicyTypeDef(BaseModel): + policyName: Optional[str] = None + policyArn: Optional[str] = None + +class AssetPropertyTimestampTypeDef(BaseModel): + timeInSeconds: str + offsetInNanos: Optional[str] = None + +class AssetPropertyVariantTypeDef(BaseModel): + stringValue: Optional[str] = None + integerValue: Optional[str] = None + doubleValue: Optional[str] = None + booleanValue: Optional[str] = None + +class AssociateTargetsWithJobRequestRequestTypeDef(BaseModel): + targets: Sequence[str] + jobId: str + comment: Optional[str] = None + namespaceId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AttachPolicyRequestRequestTypeDef(BaseModel): + policyName: str + target: str + +class AttachPrincipalPolicyRequestRequestTypeDef(BaseModel): + policyName: str + principal: str + +class AttachSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + securityProfileTargetArn: str + +class AttachThingPrincipalRequestRequestTypeDef(BaseModel): + thingName: str + principal: str + +class AttributePayloadTypeDef(BaseModel): + attributes: Optional[Mapping[str, str]] = None + merge: Optional[bool] = None + +class AuditCheckConfigurationTypeDef(BaseModel): + enabled: Optional[bool] = None + +class AuditCheckDetailsTypeDef(BaseModel): + checkRunStatus: Optional[AuditCheckRunStatusType] = None + checkCompliant: Optional[bool] = None + totalResourcesCount: Optional[int] = None + nonCompliantResourcesCount: Optional[int] = None + suppressedNonCompliantResourcesCount: Optional[int] = None + errorCode: Optional[str] = None + message: Optional[str] = None + +class AuditMitigationActionExecutionMetadataTypeDef(BaseModel): + taskId: Optional[str] = None + findingId: Optional[str] = None + actionName: Optional[str] = None + actionId: Optional[str] = None + status: Optional[AuditMitigationActionsExecutionStatusType] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + errorCode: Optional[str] = None + message: Optional[str] = None + +class AuditMitigationActionsTaskMetadataTypeDef(BaseModel): + taskId: Optional[str] = None + startTime: Optional[datetime] = None + taskStatus: Optional[AuditMitigationActionsTaskStatusType] = None + +class AuditMitigationActionsTaskTargetTypeDef(BaseModel): + auditTaskId: Optional[str] = None + findingIds: Optional[List[str]] = None + auditCheckToReasonCodeFilter: Optional[Dict[str, List[str]]] = None + +class AuditNotificationTargetTypeDef(BaseModel): + targetArn: Optional[str] = None + roleArn: Optional[str] = None + enabled: Optional[bool] = None + +class AuditTaskMetadataTypeDef(BaseModel): + taskId: Optional[str] = None + taskStatus: Optional[AuditTaskStatusType] = None + taskType: Optional[AuditTaskTypeType] = None + +class AuthInfoTypeDef(BaseModel): + resources: Sequence[str] + actionType: Optional[ActionTypeType] = None + +class AuthorizerConfigTypeDef(BaseModel): + defaultAuthorizerName: Optional[str] = None + allowAuthorizerOverride: Optional[bool] = None + +class AuthorizerDescriptionTypeDef(BaseModel): + authorizerName: Optional[str] = None + authorizerArn: Optional[str] = None + authorizerFunctionArn: Optional[str] = None + tokenKeyName: Optional[str] = None + tokenSigningPublicKeys: Optional[Dict[str, str]] = None + status: Optional[AuthorizerStatusType] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + signingDisabled: Optional[bool] = None + enableCachingForHttp: Optional[bool] = None + +class AuthorizerSummaryTypeDef(BaseModel): + authorizerName: Optional[str] = None + authorizerArn: Optional[str] = None + +class AwsJobAbortCriteriaTypeDef(BaseModel): + failureType: AwsJobAbortCriteriaFailureTypeType + action: Literal["CANCEL"] + thresholdPercentage: float + minNumberOfExecutedThings: int + +class AwsJobRateIncreaseCriteriaTypeDef(BaseModel): + numberOfNotifiedThings: Optional[int] = None + numberOfSucceededThings: Optional[int] = None + +class AwsJobPresignedUrlConfigTypeDef(BaseModel): + expiresInSec: Optional[int] = None + +class AwsJobTimeoutConfigTypeDef(BaseModel): + inProgressTimeoutInMinutes: Optional[int] = None + +class MachineLearningDetectionConfigTypeDef(BaseModel): + confidenceLevel: ConfidenceLevelType + +class StatisticalThresholdTypeDef(BaseModel): + statistic: Optional[str] = None + +class BehaviorModelTrainingSummaryTypeDef(BaseModel): + securityProfileName: Optional[str] = None + behaviorName: Optional[str] = None + trainingDataCollectionStartDate: Optional[datetime] = None + modelStatus: Optional[ModelStatusType] = None + datapointsCollectionPercentage: Optional[float] = None + lastModelRefreshDate: Optional[datetime] = None + +class MetricDimensionTypeDef(BaseModel): + dimensionName: str + operator: Optional[DimensionValueOperatorType] = None + +class BillingGroupMetadataTypeDef(BaseModel): + creationDate: Optional[datetime] = None + +class BillingGroupPropertiesTypeDef(BaseModel): + billingGroupDescription: Optional[str] = None + +class BucketTypeDef(BaseModel): + keyValue: Optional[str] = None + count: Optional[int] = None + +class TermsAggregationTypeDef(BaseModel): + maxBuckets: Optional[int] = None + +class CertificateValidityTypeDef(BaseModel): + notBefore: Optional[datetime] = None + notAfter: Optional[datetime] = None + +class CACertificateTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateId: Optional[str] = None + status: Optional[CACertificateStatusType] = None + creationDate: Optional[datetime] = None + +class CancelAuditMitigationActionsTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class CancelAuditTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class CancelCertificateTransferRequestRequestTypeDef(BaseModel): + certificateId: str + +class CancelDetectMitigationActionsTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class CancelJobExecutionRequestRequestTypeDef(BaseModel): + jobId: str + thingName: str + force: Optional[bool] = None + expectedVersion: Optional[int] = None + statusDetails: Optional[Mapping[str, str]] = None + +class CancelJobRequestRequestTypeDef(BaseModel): + jobId: str + reasonCode: Optional[str] = None + comment: Optional[str] = None + force: Optional[bool] = None + +class TransferDataTypeDef(BaseModel): + transferMessage: Optional[str] = None + rejectReason: Optional[str] = None + transferDate: Optional[datetime] = None + acceptDate: Optional[datetime] = None + rejectDate: Optional[datetime] = None + +class CertificateProviderSummaryTypeDef(BaseModel): + certificateProviderName: Optional[str] = None + certificateProviderArn: Optional[str] = None + +class CertificateTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateId: Optional[str] = None + status: Optional[CertificateStatusType] = None + certificateMode: Optional[CertificateModeType] = None + creationDate: Optional[datetime] = None + +class CodeSigningCertificateChainTypeDef(BaseModel): + certificateName: Optional[str] = None + inlineDocument: Optional[str] = None + +class ConfigurationTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class ConfirmTopicRuleDestinationRequestRequestTypeDef(BaseModel): + confirmationToken: str + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class CreateCertificateFromCsrRequestRequestTypeDef(BaseModel): + certificateSigningRequest: str + setAsActive: Optional[bool] = None + +class ServerCertificateConfigTypeDef(BaseModel): + enableOCSPCheck: Optional[bool] = None + +class TlsConfigTypeDef(BaseModel): + securityPolicy: Optional[str] = None + +class PresignedUrlConfigTypeDef(BaseModel): + roleArn: Optional[str] = None + expiresInSec: Optional[int] = None + +class TimeoutConfigTypeDef(BaseModel): + inProgressTimeoutInMinutes: Optional[int] = None + +class MaintenanceWindowTypeDef(BaseModel): + startTime: str + durationInMinutes: int + +class CreateKeysAndCertificateRequestRequestTypeDef(BaseModel): + setAsActive: Optional[bool] = None + +class KeyPairTypeDef(BaseModel): + PublicKey: Optional[str] = None + PrivateKey: Optional[str] = None + +class CreatePackageRequestRequestTypeDef(BaseModel): + packageName: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + +class CreatePackageVersionRequestRequestTypeDef(BaseModel): + packageName: str + versionName: str + description: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + +class CreatePolicyVersionRequestRequestTypeDef(BaseModel): + policyName: str + policyDocument: str + setAsDefault: Optional[bool] = None + +class CreateProvisioningClaimRequestRequestTypeDef(BaseModel): + templateName: str + +class ProvisioningHookTypeDef(BaseModel): + targetArn: str + payloadVersion: Optional[str] = None + +class CreateProvisioningTemplateVersionRequestRequestTypeDef(BaseModel): + templateName: str + templateBody: str + setAsDefault: Optional[bool] = None + +class MetricsExportConfigTypeDef(BaseModel): + mqttTopic: str + roleArn: str + +class ThingTypePropertiesTypeDef(BaseModel): + thingTypeDescription: Optional[str] = None + searchableAttributes: Optional[Sequence[str]] = None + +class DeleteAccountAuditConfigurationRequestRequestTypeDef(BaseModel): + deleteScheduledAudits: Optional[bool] = None + +class DeleteAuthorizerRequestRequestTypeDef(BaseModel): + authorizerName: str + +class DeleteBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: str + expectedVersion: Optional[int] = None + +class DeleteCACertificateRequestRequestTypeDef(BaseModel): + certificateId: str + +class DeleteCertificateProviderRequestRequestTypeDef(BaseModel): + certificateProviderName: str + +class DeleteCertificateRequestRequestTypeDef(BaseModel): + certificateId: str + forceDelete: Optional[bool] = None + +class DeleteCustomMetricRequestRequestTypeDef(BaseModel): + metricName: str + +class DeleteDimensionRequestRequestTypeDef(BaseModel): + name: str + +class DeleteDomainConfigurationRequestRequestTypeDef(BaseModel): + domainConfigurationName: str + +class DeleteDynamicThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + expectedVersion: Optional[int] = None + +class DeleteFleetMetricRequestRequestTypeDef(BaseModel): + metricName: str + expectedVersion: Optional[int] = None + +class DeleteJobExecutionRequestRequestTypeDef(BaseModel): + jobId: str + thingName: str + executionNumber: int + force: Optional[bool] = None + namespaceId: Optional[str] = None + +class DeleteJobRequestRequestTypeDef(BaseModel): + jobId: str + force: Optional[bool] = None + namespaceId: Optional[str] = None + +class DeleteJobTemplateRequestRequestTypeDef(BaseModel): + jobTemplateId: str + +class DeleteMitigationActionRequestRequestTypeDef(BaseModel): + actionName: str + +class DeleteOTAUpdateRequestRequestTypeDef(BaseModel): + otaUpdateId: str + deleteStream: Optional[bool] = None + forceDeleteAWSJob: Optional[bool] = None + +class DeletePackageRequestRequestTypeDef(BaseModel): + packageName: str + clientToken: Optional[str] = None + +class DeletePackageVersionRequestRequestTypeDef(BaseModel): + packageName: str + versionName: str + clientToken: Optional[str] = None + +class DeletePolicyRequestRequestTypeDef(BaseModel): + policyName: str + +class DeletePolicyVersionRequestRequestTypeDef(BaseModel): + policyName: str + policyVersionId: str + +class DeleteProvisioningTemplateRequestRequestTypeDef(BaseModel): + templateName: str + +class DeleteProvisioningTemplateVersionRequestRequestTypeDef(BaseModel): + templateName: str + versionId: int + +class DeleteRoleAliasRequestRequestTypeDef(BaseModel): + roleAlias: str + +class DeleteScheduledAuditRequestRequestTypeDef(BaseModel): + scheduledAuditName: str + +class DeleteSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + expectedVersion: Optional[int] = None + +class DeleteStreamRequestRequestTypeDef(BaseModel): + streamId: str + +class DeleteThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + expectedVersion: Optional[int] = None + +class DeleteThingRequestRequestTypeDef(BaseModel): + thingName: str + expectedVersion: Optional[int] = None + +class DeleteThingTypeRequestRequestTypeDef(BaseModel): + thingTypeName: str + +class DeleteTopicRuleDestinationRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteTopicRuleRequestRequestTypeDef(BaseModel): + ruleName: str + +class DeleteV2LoggingLevelRequestRequestTypeDef(BaseModel): + targetType: LogTargetTypeType + targetName: str + +class DeprecateThingTypeRequestRequestTypeDef(BaseModel): + thingTypeName: str + undoDeprecate: Optional[bool] = None + +class DescribeAuditFindingRequestRequestTypeDef(BaseModel): + findingId: str + +class DescribeAuditMitigationActionsTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class TaskStatisticsForAuditCheckTypeDef(BaseModel): + totalFindingsCount: Optional[int] = None + failedFindingsCount: Optional[int] = None + succeededFindingsCount: Optional[int] = None + skippedFindingsCount: Optional[int] = None + canceledFindingsCount: Optional[int] = None + +class DescribeAuditTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class TaskStatisticsTypeDef(BaseModel): + totalChecks: Optional[int] = None + inProgressChecks: Optional[int] = None + waitingForDataCollectionChecks: Optional[int] = None + compliantChecks: Optional[int] = None + nonCompliantChecks: Optional[int] = None + failedChecks: Optional[int] = None + canceledChecks: Optional[int] = None + +class DescribeAuthorizerRequestRequestTypeDef(BaseModel): + authorizerName: str + +class DescribeBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: str + +class DescribeCACertificateRequestRequestTypeDef(BaseModel): + certificateId: str + +class RegistrationConfigTypeDef(BaseModel): + templateBody: Optional[str] = None + roleArn: Optional[str] = None + templateName: Optional[str] = None + +class DescribeCertificateProviderRequestRequestTypeDef(BaseModel): + certificateProviderName: str + +class DescribeCertificateRequestRequestTypeDef(BaseModel): + certificateId: str + +class DescribeCustomMetricRequestRequestTypeDef(BaseModel): + metricName: str + +class DescribeDetectMitigationActionsTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class DescribeDimensionRequestRequestTypeDef(BaseModel): + name: str + +class DescribeDomainConfigurationRequestRequestTypeDef(BaseModel): + domainConfigurationName: str + +class ServerCertificateSummaryTypeDef(BaseModel): + serverCertificateArn: Optional[str] = None + serverCertificateStatus: Optional[ServerCertificateStatusType] = None + serverCertificateStatusDetail: Optional[str] = None + +class DescribeEndpointRequestRequestTypeDef(BaseModel): + endpointType: Optional[str] = None + +class DescribeFleetMetricRequestRequestTypeDef(BaseModel): + metricName: str + +class DescribeIndexRequestRequestTypeDef(BaseModel): + indexName: str + +class DescribeJobExecutionRequestRequestTypeDef(BaseModel): + jobId: str + thingName: str + executionNumber: Optional[int] = None + +class DescribeJobRequestRequestTypeDef(BaseModel): + jobId: str + +class DescribeJobTemplateRequestRequestTypeDef(BaseModel): + jobTemplateId: str + +class DescribeManagedJobTemplateRequestRequestTypeDef(BaseModel): + templateName: str + templateVersion: Optional[str] = None + +class DocumentParameterTypeDef(BaseModel): + key: Optional[str] = None + description: Optional[str] = None + regex: Optional[str] = None + example: Optional[str] = None + optional: Optional[bool] = None + +class DescribeMitigationActionRequestRequestTypeDef(BaseModel): + actionName: str + +class DescribeProvisioningTemplateRequestRequestTypeDef(BaseModel): + templateName: str + +class DescribeProvisioningTemplateVersionRequestRequestTypeDef(BaseModel): + templateName: str + versionId: int + +class DescribeRoleAliasRequestRequestTypeDef(BaseModel): + roleAlias: str + +class RoleAliasDescriptionTypeDef(BaseModel): + roleAlias: Optional[str] = None + roleAliasArn: Optional[str] = None + roleArn: Optional[str] = None + owner: Optional[str] = None + credentialDurationSeconds: Optional[int] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + +class DescribeScheduledAuditRequestRequestTypeDef(BaseModel): + scheduledAuditName: str + +class DescribeSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + +class DescribeStreamRequestRequestTypeDef(BaseModel): + streamId: str + +class DescribeThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + +class DescribeThingRegistrationTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class DescribeThingRequestRequestTypeDef(BaseModel): + thingName: str + +class DescribeThingTypeRequestRequestTypeDef(BaseModel): + thingTypeName: str + +class ThingTypeMetadataTypeDef(BaseModel): + deprecated: Optional[bool] = None + deprecationDate: Optional[datetime] = None + creationDate: Optional[datetime] = None + +class S3DestinationTypeDef(BaseModel): + bucket: Optional[str] = None + prefix: Optional[str] = None + +class DetachPolicyRequestRequestTypeDef(BaseModel): + policyName: str + target: str + +class DetachPrincipalPolicyRequestRequestTypeDef(BaseModel): + policyName: str + principal: str + +class DetachSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + securityProfileTargetArn: str + +class DetachThingPrincipalRequestRequestTypeDef(BaseModel): + thingName: str + principal: str + +class DetectMitigationActionExecutionTypeDef(BaseModel): + taskId: Optional[str] = None + violationId: Optional[str] = None + actionName: Optional[str] = None + thingName: Optional[str] = None + executionStartDate: Optional[datetime] = None + executionEndDate: Optional[datetime] = None + status: Optional[DetectMitigationActionExecutionStatusType] = None + errorCode: Optional[str] = None + message: Optional[str] = None + +class DetectMitigationActionsTaskStatisticsTypeDef(BaseModel): + actionsExecuted: Optional[int] = None + actionsSkipped: Optional[int] = None + actionsFailed: Optional[int] = None + +class DetectMitigationActionsTaskTargetTypeDef(BaseModel): + violationIds: Optional[List[str]] = None + securityProfileName: Optional[str] = None + behaviorName: Optional[str] = None + +class ViolationEventOccurrenceRangeTypeDef(BaseModel): + startTime: datetime + endTime: datetime + +class DisableTopicRuleRequestRequestTypeDef(BaseModel): + ruleName: str + +class DomainConfigurationSummaryTypeDef(BaseModel): + domainConfigurationName: Optional[str] = None + domainConfigurationArn: Optional[str] = None + serviceType: Optional[ServiceTypeType] = None + +class PutItemInputTypeDef(BaseModel): + tableName: str + +class EffectivePolicyTypeDef(BaseModel): + policyName: Optional[str] = None + policyArn: Optional[str] = None + policyDocument: Optional[str] = None + +class EnableIoTLoggingParamsTypeDef(BaseModel): + roleArnForLogging: str + logLevel: LogLevelType + +class EnableTopicRuleRequestRequestTypeDef(BaseModel): + ruleName: str + +class ErrorInfoTypeDef(BaseModel): + code: Optional[str] = None + message: Optional[str] = None + +class RateIncreaseCriteriaTypeDef(BaseModel): + numberOfNotifiedThings: Optional[int] = None + numberOfSucceededThings: Optional[int] = None + +class FieldTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[FieldTypeType] = None + +class S3LocationTypeDef(BaseModel): + bucket: Optional[str] = None + key: Optional[str] = None + version: Optional[str] = None + +class StreamTypeDef(BaseModel): + streamId: Optional[str] = None + fileId: Optional[int] = None + +class FleetMetricNameAndArnTypeDef(BaseModel): + metricName: Optional[str] = None + metricArn: Optional[str] = None + +class GeoLocationTargetTypeDef(BaseModel): + name: Optional[str] = None + order: Optional[TargetFieldOrderType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetBehaviorModelTrainingSummariesRequestRequestTypeDef(BaseModel): + securityProfileName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetCardinalityRequestRequestTypeDef(BaseModel): + queryString: str + indexName: Optional[str] = None + aggregationField: Optional[str] = None + queryVersion: Optional[str] = None + +class GetEffectivePoliciesRequestRequestTypeDef(BaseModel): + principal: Optional[str] = None + cognitoIdentityPoolId: Optional[str] = None + thingName: Optional[str] = None + +class GetJobDocumentRequestRequestTypeDef(BaseModel): + jobId: str + +class GetOTAUpdateRequestRequestTypeDef(BaseModel): + otaUpdateId: str + +class VersionUpdateByJobsConfigTypeDef(BaseModel): + enabled: Optional[bool] = None + roleArn: Optional[str] = None + +class GetPackageRequestRequestTypeDef(BaseModel): + packageName: str + +class GetPackageVersionRequestRequestTypeDef(BaseModel): + packageName: str + versionName: str + +class GetPercentilesRequestRequestTypeDef(BaseModel): + queryString: str + indexName: Optional[str] = None + aggregationField: Optional[str] = None + queryVersion: Optional[str] = None + percents: Optional[Sequence[float]] = None + +class PercentPairTypeDef(BaseModel): + percent: Optional[float] = None + value: Optional[float] = None + +class GetPolicyRequestRequestTypeDef(BaseModel): + policyName: str + +class GetPolicyVersionRequestRequestTypeDef(BaseModel): + policyName: str + policyVersionId: str + +class GetStatisticsRequestRequestTypeDef(BaseModel): + queryString: str + indexName: Optional[str] = None + aggregationField: Optional[str] = None + queryVersion: Optional[str] = None + +class StatisticsTypeDef(BaseModel): + count: Optional[int] = None + average: Optional[float] = None + sum: Optional[float] = None + minimum: Optional[float] = None + maximum: Optional[float] = None + sumOfSquares: Optional[float] = None + variance: Optional[float] = None + stdDeviation: Optional[float] = None + +class GetTopicRuleDestinationRequestRequestTypeDef(BaseModel): + arn: str + +class GetTopicRuleRequestRequestTypeDef(BaseModel): + ruleName: str + +class GroupNameAndArnTypeDef(BaseModel): + groupName: Optional[str] = None + groupArn: Optional[str] = None + +class HttpActionHeaderTypeDef(BaseModel): + key: str + value: str + +class SigV4AuthorizationTypeDef(BaseModel): + signingRegion: str + serviceName: str + roleArn: str + +class HttpContextTypeDef(BaseModel): + headers: Optional[Mapping[str, str]] = None + queryString: Optional[str] = None + +class HttpUrlDestinationConfigurationTypeDef(BaseModel): + confirmationUrl: str + +class HttpUrlDestinationPropertiesTypeDef(BaseModel): + confirmationUrl: Optional[str] = None + +class HttpUrlDestinationSummaryTypeDef(BaseModel): + confirmationUrl: Optional[str] = None + +class IssuerCertificateIdentifierTypeDef(BaseModel): + issuerCertificateSubject: Optional[str] = None + issuerId: Optional[str] = None + issuerCertificateSerialNumber: Optional[str] = None + +class JobExecutionStatusDetailsTypeDef(BaseModel): + detailsMap: Optional[Dict[str, str]] = None + +class JobExecutionSummaryTypeDef(BaseModel): + status: Optional[JobExecutionStatusType] = None + queuedAt: Optional[datetime] = None + startedAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + executionNumber: Optional[int] = None + retryAttempt: Optional[int] = None + +class RetryCriteriaTypeDef(BaseModel): + failureType: RetryableFailureTypeType + numberOfRetries: int + +class JobProcessDetailsTypeDef(BaseModel): + processingTargets: Optional[List[str]] = None + numberOfCanceledThings: Optional[int] = None + numberOfSucceededThings: Optional[int] = None + numberOfFailedThings: Optional[int] = None + numberOfRejectedThings: Optional[int] = None + numberOfQueuedThings: Optional[int] = None + numberOfInProgressThings: Optional[int] = None + numberOfRemovedThings: Optional[int] = None + numberOfTimedOutThings: Optional[int] = None + +class JobSummaryTypeDef(BaseModel): + jobArn: Optional[str] = None + jobId: Optional[str] = None + thingGroupId: Optional[str] = None + targetSelection: Optional[TargetSelectionType] = None + status: Optional[JobStatusType] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + completedAt: Optional[datetime] = None + isConcurrent: Optional[bool] = None + +class JobTemplateSummaryTypeDef(BaseModel): + jobTemplateArn: Optional[str] = None + jobTemplateId: Optional[str] = None + description: Optional[str] = None + createdAt: Optional[datetime] = None + +class ScheduledJobRolloutTypeDef(BaseModel): + startTime: Optional[str] = None + +class KafkaActionHeaderTypeDef(BaseModel): + key: str + value: str + +class ListActiveViolationsRequestRequestTypeDef(BaseModel): + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behaviorCriteriaType: Optional[BehaviorCriteriaTypeType] = None + listSuppressedAlerts: Optional[bool] = None + verificationState: Optional[VerificationStateType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAttachedPoliciesRequestRequestTypeDef(BaseModel): + target: str + recursive: Optional[bool] = None + marker: Optional[str] = None + pageSize: Optional[int] = None + +class ListAuditMitigationActionsExecutionsRequestRequestTypeDef(BaseModel): + taskId: str + findingId: str + actionStatus: Optional[AuditMitigationActionsExecutionStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAuthorizersRequestRequestTypeDef(BaseModel): + pageSize: Optional[int] = None + marker: Optional[str] = None + ascendingOrder: Optional[bool] = None + status: Optional[AuthorizerStatusType] = None + +class ListBillingGroupsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + namePrefixFilter: Optional[str] = None + +class ListCACertificatesRequestRequestTypeDef(BaseModel): + pageSize: Optional[int] = None + marker: Optional[str] = None + ascendingOrder: Optional[bool] = None + templateName: Optional[str] = None + +class ListCertificateProvidersRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + ascendingOrder: Optional[bool] = None + +class ListCertificatesByCARequestRequestTypeDef(BaseModel): + caCertificateId: str + pageSize: Optional[int] = None + marker: Optional[str] = None + ascendingOrder: Optional[bool] = None + +class ListCertificatesRequestRequestTypeDef(BaseModel): + pageSize: Optional[int] = None + marker: Optional[str] = None + ascendingOrder: Optional[bool] = None + +class ListCustomMetricsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDimensionsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDomainConfigurationsRequestRequestTypeDef(BaseModel): + marker: Optional[str] = None + pageSize: Optional[int] = None + serviceType: Optional[ServiceTypeType] = None + +class ListFleetMetricsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListIndicesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListJobExecutionsForJobRequestRequestTypeDef(BaseModel): + jobId: str + status: Optional[JobExecutionStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobExecutionsForThingRequestRequestTypeDef(BaseModel): + thingName: str + status: Optional[JobExecutionStatusType] = None + namespaceId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + jobId: Optional[str] = None + +class ListJobTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + status: Optional[JobStatusType] = None + targetSelection: Optional[TargetSelectionType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + thingGroupName: Optional[str] = None + thingGroupId: Optional[str] = None + namespaceId: Optional[str] = None + +class ListManagedJobTemplatesRequestRequestTypeDef(BaseModel): + templateName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ManagedJobTemplateSummaryTypeDef(BaseModel): + templateArn: Optional[str] = None + templateName: Optional[str] = None + description: Optional[str] = None + environments: Optional[List[str]] = None + templateVersion: Optional[str] = None + +class ListMitigationActionsRequestRequestTypeDef(BaseModel): + actionType: Optional[MitigationActionTypeType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MitigationActionIdentifierTypeDef(BaseModel): + actionName: Optional[str] = None + actionArn: Optional[str] = None + creationDate: Optional[datetime] = None + +class ListOTAUpdatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + otaUpdateStatus: Optional[OTAUpdateStatusType] = None + +class OTAUpdateSummaryTypeDef(BaseModel): + otaUpdateId: Optional[str] = None + otaUpdateArn: Optional[str] = None + creationDate: Optional[datetime] = None + +class ListOutgoingCertificatesRequestRequestTypeDef(BaseModel): + pageSize: Optional[int] = None + marker: Optional[str] = None + ascendingOrder: Optional[bool] = None + +class OutgoingCertificateTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateId: Optional[str] = None + transferredTo: Optional[str] = None + transferDate: Optional[datetime] = None + transferMessage: Optional[str] = None + creationDate: Optional[datetime] = None + +class ListPackageVersionsRequestRequestTypeDef(BaseModel): + packageName: str + status: Optional[PackageVersionStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PackageVersionSummaryTypeDef(BaseModel): + packageName: Optional[str] = None + versionName: Optional[str] = None + status: Optional[PackageVersionStatusType] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + +class ListPackagesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PackageSummaryTypeDef(BaseModel): + packageName: Optional[str] = None + defaultVersionName: Optional[str] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + +class ListPoliciesRequestRequestTypeDef(BaseModel): + marker: Optional[str] = None + pageSize: Optional[int] = None + ascendingOrder: Optional[bool] = None + +class ListPolicyPrincipalsRequestRequestTypeDef(BaseModel): + policyName: str + marker: Optional[str] = None + pageSize: Optional[int] = None + ascendingOrder: Optional[bool] = None + +class ListPolicyVersionsRequestRequestTypeDef(BaseModel): + policyName: str + +class PolicyVersionTypeDef(BaseModel): + versionId: Optional[str] = None + isDefaultVersion: Optional[bool] = None + createDate: Optional[datetime] = None + +class ListPrincipalPoliciesRequestRequestTypeDef(BaseModel): + principal: str + marker: Optional[str] = None + pageSize: Optional[int] = None + ascendingOrder: Optional[bool] = None + +class ListPrincipalThingsRequestRequestTypeDef(BaseModel): + principal: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListProvisioningTemplateVersionsRequestRequestTypeDef(BaseModel): + templateName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ProvisioningTemplateVersionSummaryTypeDef(BaseModel): + versionId: Optional[int] = None + creationDate: Optional[datetime] = None + isDefaultVersion: Optional[bool] = None + +class ListProvisioningTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ProvisioningTemplateSummaryTypeDef(BaseModel): + templateArn: Optional[str] = None + templateName: Optional[str] = None + description: Optional[str] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + enabled: Optional[bool] = None + type: Optional[TemplateTypeType] = None + +class ListRelatedResourcesForAuditFindingRequestRequestTypeDef(BaseModel): + findingId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListRoleAliasesRequestRequestTypeDef(BaseModel): + pageSize: Optional[int] = None + marker: Optional[str] = None + ascendingOrder: Optional[bool] = None + +class ListScheduledAuditsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ScheduledAuditMetadataTypeDef(BaseModel): + scheduledAuditName: Optional[str] = None + scheduledAuditArn: Optional[str] = None + frequency: Optional[AuditFrequencyType] = None + dayOfMonth: Optional[str] = None + dayOfWeek: Optional[DayOfWeekType] = None + +class ListSecurityProfilesForTargetRequestRequestTypeDef(BaseModel): + securityProfileTargetArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + recursive: Optional[bool] = None + +class ListSecurityProfilesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + dimensionName: Optional[str] = None + metricName: Optional[str] = None + +class SecurityProfileIdentifierTypeDef(BaseModel): + name: str + arn: str + +class ListStreamsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + ascendingOrder: Optional[bool] = None + +class StreamSummaryTypeDef(BaseModel): + streamId: Optional[str] = None + streamArn: Optional[str] = None + streamVersion: Optional[int] = None + description: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + nextToken: Optional[str] = None + +class ListTargetsForPolicyRequestRequestTypeDef(BaseModel): + policyName: str + marker: Optional[str] = None + pageSize: Optional[int] = None + +class ListTargetsForSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SecurityProfileTargetTypeDef(BaseModel): + arn: str + +class ListThingGroupsForThingRequestRequestTypeDef(BaseModel): + thingName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListThingGroupsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + parentGroup: Optional[str] = None + namePrefixFilter: Optional[str] = None + recursive: Optional[bool] = None + +class ListThingPrincipalsRequestRequestTypeDef(BaseModel): + thingName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListThingRegistrationTaskReportsRequestRequestTypeDef(BaseModel): + taskId: str + reportType: ReportTypeType + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListThingRegistrationTasksRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + status: Optional[StatusType] = None + +class ListThingTypesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + thingTypeName: Optional[str] = None + +class ListThingsInBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListThingsInThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + recursive: Optional[bool] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListThingsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + attributeName: Optional[str] = None + attributeValue: Optional[str] = None + thingTypeName: Optional[str] = None + usePrefixAttributeValue: Optional[bool] = None + +class ThingAttributeTypeDef(BaseModel): + thingName: Optional[str] = None + thingTypeName: Optional[str] = None + thingArn: Optional[str] = None + attributes: Optional[Dict[str, str]] = None + version: Optional[int] = None + +class ListTopicRuleDestinationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTopicRulesRequestRequestTypeDef(BaseModel): + topic: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + ruleDisabled: Optional[bool] = None + +class TopicRuleListItemTypeDef(BaseModel): + ruleArn: Optional[str] = None + ruleName: Optional[str] = None + topicPattern: Optional[str] = None + createdAt: Optional[datetime] = None + ruleDisabled: Optional[bool] = None + +class ListV2LoggingLevelsRequestRequestTypeDef(BaseModel): + targetType: Optional[LogTargetTypeType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class LocationTimestampTypeDef(BaseModel): + value: str + unit: Optional[str] = None + +class LogTargetTypeDef(BaseModel): + targetType: LogTargetTypeType + targetName: Optional[str] = None + +class LoggingOptionsPayloadTypeDef(BaseModel): + roleArn: str + logLevel: Optional[LogLevelType] = None + +class PublishFindingToSnsParamsTypeDef(BaseModel): + topicArn: str + +class ReplaceDefaultPolicyVersionParamsTypeDef(BaseModel): + templateName: Literal["BLANK_POLICY"] + +class UpdateCACertificateParamsTypeDef(BaseModel): + action: Literal["DEACTIVATE"] + +class UpdateDeviceCertificateParamsTypeDef(BaseModel): + action: Literal["DEACTIVATE"] + +class UserPropertyTypeDef(BaseModel): + key: str + value: str + +class PolicyVersionIdentifierTypeDef(BaseModel): + policyName: Optional[str] = None + policyVersionId: Optional[str] = None + +class PutVerificationStateOnViolationRequestRequestTypeDef(BaseModel): + violationId: str + verificationState: VerificationStateType + verificationStateDescription: Optional[str] = None + +class RegisterCertificateRequestRequestTypeDef(BaseModel): + certificatePem: str + caCertificatePem: Optional[str] = None + setAsActive: Optional[bool] = None + status: Optional[CertificateStatusType] = None + +class RegisterCertificateWithoutCARequestRequestTypeDef(BaseModel): + certificatePem: str + status: Optional[CertificateStatusType] = None + +class RegisterThingRequestRequestTypeDef(BaseModel): + templateBody: str + parameters: Optional[Mapping[str, str]] = None + +class RejectCertificateTransferRequestRequestTypeDef(BaseModel): + certificateId: str + rejectReason: Optional[str] = None + +class RemoveThingFromBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: Optional[str] = None + billingGroupArn: Optional[str] = None + thingName: Optional[str] = None + thingArn: Optional[str] = None + +class RemoveThingFromThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: Optional[str] = None + thingGroupArn: Optional[str] = None + thingName: Optional[str] = None + thingArn: Optional[str] = None + +class SearchIndexRequestRequestTypeDef(BaseModel): + queryString: str + indexName: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + queryVersion: Optional[str] = None + +class ThingGroupDocumentTypeDef(BaseModel): + thingGroupName: Optional[str] = None + thingGroupId: Optional[str] = None + thingGroupDescription: Optional[str] = None + attributes: Optional[Dict[str, str]] = None + parentGroupNames: Optional[List[str]] = None + +class SetDefaultAuthorizerRequestRequestTypeDef(BaseModel): + authorizerName: str + +class SetDefaultPolicyVersionRequestRequestTypeDef(BaseModel): + policyName: str + policyVersionId: str + +class SetV2LoggingOptionsRequestRequestTypeDef(BaseModel): + roleArn: Optional[str] = None + defaultLogLevel: Optional[LogLevelType] = None + disableAllLogs: Optional[bool] = None + +class SigningProfileParameterTypeDef(BaseModel): + certificateArn: Optional[str] = None + platform: Optional[str] = None + certificatePathOnDevice: Optional[str] = None + +class StartOnDemandAuditTaskRequestRequestTypeDef(BaseModel): + targetCheckNames: Sequence[str] + +class StartThingRegistrationTaskRequestRequestTypeDef(BaseModel): + templateBody: str + inputFileBucket: str + inputFileKey: str + roleArn: str + +class StopThingRegistrationTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class TlsContextTypeDef(BaseModel): + serverName: Optional[str] = None + +class ThingConnectivityTypeDef(BaseModel): + connected: Optional[bool] = None + timestamp: Optional[int] = None + disconnectReason: Optional[str] = None + +class ThingTypePropertiesPaginatorTypeDef(BaseModel): + thingTypeDescription: Optional[str] = None + searchableAttributes: Optional[List[str]] = None + +class TimestreamDimensionTypeDef(BaseModel): + name: str + value: str + +class TimestreamTimestampTypeDef(BaseModel): + value: str + unit: str + +class VpcDestinationConfigurationTypeDef(BaseModel): + subnetIds: Sequence[str] + vpcId: str + roleArn: str + securityGroups: Optional[Sequence[str]] = None + +class VpcDestinationSummaryTypeDef(BaseModel): + subnetIds: Optional[List[str]] = None + securityGroups: Optional[List[str]] = None + vpcId: Optional[str] = None + roleArn: Optional[str] = None + +class VpcDestinationPropertiesTypeDef(BaseModel): + subnetIds: Optional[List[str]] = None + securityGroups: Optional[List[str]] = None + vpcId: Optional[str] = None + roleArn: Optional[str] = None + +class TransferCertificateRequestRequestTypeDef(BaseModel): + certificateId: str + targetAwsAccount: str + transferMessage: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAuthorizerRequestRequestTypeDef(BaseModel): + authorizerName: str + authorizerFunctionArn: Optional[str] = None + tokenKeyName: Optional[str] = None + tokenSigningPublicKeys: Optional[Mapping[str, str]] = None + status: Optional[AuthorizerStatusType] = None + enableCachingForHttp: Optional[bool] = None + +class UpdateCertificateProviderRequestRequestTypeDef(BaseModel): + certificateProviderName: str + lambdaFunctionArn: Optional[str] = None + accountDefaultForOperations: Optional[Sequence[Literal["CreateCertificateFromCsr"]]] = None + +class UpdateCertificateRequestRequestTypeDef(BaseModel): + certificateId: str + newStatus: CertificateStatusType + +class UpdateCustomMetricRequestRequestTypeDef(BaseModel): + metricName: str + displayName: str + +class UpdateDimensionRequestRequestTypeDef(BaseModel): + name: str + stringValues: Sequence[str] + +class UpdatePackageRequestRequestTypeDef(BaseModel): + packageName: str + description: Optional[str] = None + defaultVersionName: Optional[str] = None + unsetDefaultVersion: Optional[bool] = None + clientToken: Optional[str] = None + +class UpdatePackageVersionRequestRequestTypeDef(BaseModel): + packageName: str + versionName: str + description: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + action: Optional[PackageVersionActionType] = None + clientToken: Optional[str] = None + +class UpdateRoleAliasRequestRequestTypeDef(BaseModel): + roleAlias: str + roleArn: Optional[str] = None + credentialDurationSeconds: Optional[int] = None + +class UpdateScheduledAuditRequestRequestTypeDef(BaseModel): + scheduledAuditName: str + frequency: Optional[AuditFrequencyType] = None + dayOfMonth: Optional[str] = None + dayOfWeek: Optional[DayOfWeekType] = None + targetCheckNames: Optional[Sequence[str]] = None + +class UpdateThingGroupsForThingRequestRequestTypeDef(BaseModel): + thingName: Optional[str] = None + thingGroupsToAdd: Optional[Sequence[str]] = None + thingGroupsToRemove: Optional[Sequence[str]] = None + overrideDynamicGroups: Optional[bool] = None + +class UpdateTopicRuleDestinationRequestRequestTypeDef(BaseModel): + arn: str + status: TopicRuleDestinationStatusType + +class ValidationErrorTypeDef(BaseModel): + errorMessage: Optional[str] = None + +class AbortConfigTypeDef(BaseModel): + criteriaList: Sequence[AbortCriteriaTypeDef] + +class MetricDatumPaginatorTypeDef(BaseModel): + timestamp: Optional[datetime] = None + value: Optional[MetricValuePaginatorTypeDef] = None + +class MetricDatumTypeDef(BaseModel): + timestamp: Optional[datetime] = None + value: Optional[MetricValueTypeDef] = None + +class UpdateFleetMetricRequestRequestTypeDef(BaseModel): + metricName: str + indexName: str + queryString: Optional[str] = None + aggregationType: Optional[AggregationTypeTypeDef] = None + period: Optional[int] = None + aggregationField: Optional[str] = None + description: Optional[str] = None + queryVersion: Optional[str] = None + unit: Optional[FleetMetricUnitType] = None + expectedVersion: Optional[int] = None + +class AllowedTypeDef(BaseModel): + policies: Optional[List[PolicyTypeDef]] = None + +class ExplicitDenyTypeDef(BaseModel): + policies: Optional[List[PolicyTypeDef]] = None + +class ImplicitDenyTypeDef(BaseModel): + policies: Optional[List[PolicyTypeDef]] = None + +class AssetPropertyValueTypeDef(BaseModel): + value: AssetPropertyVariantTypeDef + timestamp: AssetPropertyTimestampTypeDef + quality: Optional[str] = None + +class AssociateTargetsWithJobResponseTypeDef(BaseModel): + jobArn: str + jobId: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelJobResponseTypeDef(BaseModel): + jobArn: str + jobId: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAuthorizerResponseTypeDef(BaseModel): + authorizerName: str + authorizerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBillingGroupResponseTypeDef(BaseModel): + billingGroupName: str + billingGroupArn: str + billingGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCertificateFromCsrResponseTypeDef(BaseModel): + certificateArn: str + certificateId: str + certificatePem: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCertificateProviderResponseTypeDef(BaseModel): + certificateProviderName: str + certificateProviderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomMetricResponseTypeDef(BaseModel): + metricName: str + metricArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDimensionResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainConfigurationResponseTypeDef(BaseModel): + domainConfigurationName: str + domainConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDynamicThingGroupResponseTypeDef(BaseModel): + thingGroupName: str + thingGroupArn: str + thingGroupId: str + indexName: str + queryString: str + queryVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetMetricResponseTypeDef(BaseModel): + metricName: str + metricArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobResponseTypeDef(BaseModel): + jobArn: str + jobId: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobTemplateResponseTypeDef(BaseModel): + jobTemplateArn: str + jobTemplateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMitigationActionResponseTypeDef(BaseModel): + actionArn: str + actionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOTAUpdateResponseTypeDef(BaseModel): + otaUpdateId: str + awsIotJobId: str + otaUpdateArn: str + awsIotJobArn: str + otaUpdateStatus: OTAUpdateStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePackageResponseTypeDef(BaseModel): + packageName: str + packageArn: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePackageVersionResponseTypeDef(BaseModel): + packageVersionArn: str + packageName: str + versionName: str + description: str + attributes: Dict[str, str] + status: PackageVersionStatusType + errorReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePolicyResponseTypeDef(BaseModel): + policyName: str + policyArn: str + policyDocument: str + policyVersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePolicyVersionResponseTypeDef(BaseModel): + policyArn: str + policyDocument: str + policyVersionId: str + isDefaultVersion: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisioningTemplateResponseTypeDef(BaseModel): + templateArn: str + templateName: str + defaultVersionId: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisioningTemplateVersionResponseTypeDef(BaseModel): + templateArn: str + templateName: str + versionId: int + isDefaultVersion: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRoleAliasResponseTypeDef(BaseModel): + roleAlias: str + roleAliasArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScheduledAuditResponseTypeDef(BaseModel): + scheduledAuditArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityProfileResponseTypeDef(BaseModel): + securityProfileName: str + securityProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamResponseTypeDef(BaseModel): + streamId: str + streamArn: str + description: str + streamVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThingGroupResponseTypeDef(BaseModel): + thingGroupName: str + thingGroupArn: str + thingGroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThingResponseTypeDef(BaseModel): + thingName: str + thingArn: str + thingId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThingTypeResponseTypeDef(BaseModel): + thingTypeName: str + thingTypeArn: str + thingTypeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCertificateProviderResponseTypeDef(BaseModel): + certificateProviderName: str + certificateProviderArn: str + lambdaFunctionArn: str + accountDefaultForOperations: List[Literal["CreateCertificateFromCsr"]] + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomMetricResponseTypeDef(BaseModel): + metricName: str + metricArn: str + metricType: CustomMetricTypeType + displayName: str + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDimensionResponseTypeDef(BaseModel): + name: str + arn: str + type: Literal["TOPIC_FILTER"] + stringValues: List[str] + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointResponseTypeDef(BaseModel): + endpointAddress: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetMetricResponseTypeDef(BaseModel): + metricName: str + queryString: str + aggregationType: AggregationTypeTypeDef + period: int + aggregationField: str + description: str + queryVersion: str + indexName: str + creationDate: datetime + lastModifiedDate: datetime + unit: FleetMetricUnitType + version: int + metricArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIndexResponseTypeDef(BaseModel): + indexName: str + indexStatus: IndexStatusType + schema: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProvisioningTemplateVersionResponseTypeDef(BaseModel): + versionId: int + creationDate: datetime + templateBody: str + isDefaultVersion: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScheduledAuditResponseTypeDef(BaseModel): + frequency: AuditFrequencyType + dayOfMonth: str + dayOfWeek: DayOfWeekType + targetCheckNames: List[str] + scheduledAuditName: str + scheduledAuditArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeThingRegistrationTaskResponseTypeDef(BaseModel): + taskId: str + creationDate: datetime + lastModifiedDate: datetime + templateBody: str + inputFileBucket: str + inputFileKey: str + roleArn: str + status: StatusType + message: str + successCount: int + failureCount: int + percentageProgress: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeThingResponseTypeDef(BaseModel): + defaultClientId: str + thingName: str + thingId: str + thingArn: str + thingTypeName: str + attributes: Dict[str, str] + version: int + billingGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCardinalityResponseTypeDef(BaseModel): + cardinality: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobDocumentResponseTypeDef(BaseModel): + document: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoggingOptionsResponseTypeDef(BaseModel): + roleArn: str + logLevel: LogLevelType + ResponseMetadata: ResponseMetadataTypeDef + +class GetPackageResponseTypeDef(BaseModel): + packageName: str + packageArn: str + description: str + defaultVersionName: str + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPackageVersionResponseTypeDef(BaseModel): + packageVersionArn: str + packageName: str + versionName: str + description: str + attributes: Dict[str, str] + status: PackageVersionStatusType + errorReason: str + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyResponseTypeDef(BaseModel): + policyName: str + policyArn: str + policyDocument: str + defaultVersionId: str + creationDate: datetime + lastModifiedDate: datetime + generationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyVersionResponseTypeDef(BaseModel): + policyArn: str + policyName: str + policyDocument: str + policyVersionId: str + isDefaultVersion: bool + creationDate: datetime + lastModifiedDate: datetime + generationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegistrationCodeResponseTypeDef(BaseModel): + registrationCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetV2LoggingOptionsResponseTypeDef(BaseModel): + roleArn: str + defaultLogLevel: LogLevelType + disableAllLogs: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttachedPoliciesResponseTypeDef(BaseModel): + policies: List[PolicyTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomMetricsResponseTypeDef(BaseModel): + metricNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDimensionsResponseTypeDef(BaseModel): + dimensionNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIndicesResponseTypeDef(BaseModel): + indexNames: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPoliciesResponseTypeDef(BaseModel): + policies: List[PolicyTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPolicyPrincipalsResponseTypeDef(BaseModel): + principals: List[str] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPrincipalPoliciesResponseTypeDef(BaseModel): + policies: List[PolicyTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPrincipalThingsResponseTypeDef(BaseModel): + things: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoleAliasesResponseTypeDef(BaseModel): + roleAliases: List[str] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetsForPolicyResponseTypeDef(BaseModel): + targets: List[str] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingPrincipalsResponseTypeDef(BaseModel): + principals: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingRegistrationTaskReportsResponseTypeDef(BaseModel): + resourceLinks: List[str] + reportType: ReportTypeType + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingRegistrationTasksResponseTypeDef(BaseModel): + taskIds: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingsInBillingGroupResponseTypeDef(BaseModel): + things: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingsInThingGroupResponseTypeDef(BaseModel): + things: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterCACertificateResponseTypeDef(BaseModel): + certificateArn: str + certificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterCertificateResponseTypeDef(BaseModel): + certificateArn: str + certificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterCertificateWithoutCAResponseTypeDef(BaseModel): + certificateArn: str + certificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterThingResponseTypeDef(BaseModel): + certificatePem: str + resourceArns: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SetDefaultAuthorizerResponseTypeDef(BaseModel): + authorizerName: str + authorizerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAuditMitigationActionsTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDetectMitigationActionsTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartOnDemandAuditTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartThingRegistrationTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestInvokeAuthorizerResponseTypeDef(BaseModel): + isAuthenticated: bool + principalId: str + policyDocuments: List[str] + refreshAfterInSeconds: int + disconnectAfterInSeconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class TransferCertificateResponseTypeDef(BaseModel): + transferredCertificateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAuthorizerResponseTypeDef(BaseModel): + authorizerName: str + authorizerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBillingGroupResponseTypeDef(BaseModel): + version: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCertificateProviderResponseTypeDef(BaseModel): + certificateProviderName: str + certificateProviderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCustomMetricResponseTypeDef(BaseModel): + metricName: str + metricArn: str + metricType: CustomMetricTypeType + displayName: str + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDimensionResponseTypeDef(BaseModel): + name: str + arn: str + type: Literal["TOPIC_FILTER"] + stringValues: List[str] + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainConfigurationResponseTypeDef(BaseModel): + domainConfigurationName: str + domainConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDynamicThingGroupResponseTypeDef(BaseModel): + version: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMitigationActionResponseTypeDef(BaseModel): + actionArn: str + actionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoleAliasResponseTypeDef(BaseModel): + roleAlias: str + roleAliasArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateScheduledAuditResponseTypeDef(BaseModel): + scheduledAuditArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStreamResponseTypeDef(BaseModel): + streamId: str + streamArn: str + description: str + streamVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateThingGroupResponseTypeDef(BaseModel): + version: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThingRequestRequestTypeDef(BaseModel): + thingName: str + thingTypeName: Optional[str] = None + attributePayload: Optional[AttributePayloadTypeDef] = None + billingGroupName: Optional[str] = None + +class ThingGroupPropertiesTypeDef(BaseModel): + thingGroupDescription: Optional[str] = None + attributePayload: Optional[AttributePayloadTypeDef] = None + +class UpdateThingRequestRequestTypeDef(BaseModel): + thingName: str + thingTypeName: Optional[str] = None + attributePayload: Optional[AttributePayloadTypeDef] = None + expectedVersion: Optional[int] = None + removeThingType: Optional[bool] = None + +class ListAuditMitigationActionsExecutionsResponseTypeDef(BaseModel): + actionsExecutions: List[AuditMitigationActionExecutionMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAuditMitigationActionsTasksResponseTypeDef(BaseModel): + tasks: List[AuditMitigationActionsTaskMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAuditMitigationActionsTaskRequestRequestTypeDef(BaseModel): + taskId: str + target: AuditMitigationActionsTaskTargetTypeDef + auditCheckToActionsMapping: Mapping[str, Sequence[str]] + clientRequestToken: str + +class DescribeAccountAuditConfigurationResponseTypeDef(BaseModel): + roleArn: str + auditNotificationTargetConfigurations: Dict[ Literal["SNS"], AuditNotificationTargetTypeDef + auditCheckConfigurations: Dict[str, AuditCheckConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountAuditConfigurationRequestRequestTypeDef(BaseModel): + roleArn: Optional[str] = None + auditNotificationTargetConfigurations: Optional[ Mapping[Literal["SNS"], AuditNotificationTargetTypeDef] = None + auditCheckConfigurations: Optional[Mapping[str, AuditCheckConfigurationTypeDef]] = None + +class ListAuditTasksResponseTypeDef(BaseModel): + tasks: List[AuditTaskMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestAuthorizationRequestRequestTypeDef(BaseModel): + authInfos: Sequence[AuthInfoTypeDef] + principal: Optional[str] = None + cognitoIdentityPoolId: Optional[str] = None + clientId: Optional[str] = None + policyNamesToAdd: Optional[Sequence[str]] = None + policyNamesToSkip: Optional[Sequence[str]] = None + +class DescribeAuthorizerResponseTypeDef(BaseModel): + authorizerDescription: AuthorizerDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDefaultAuthorizerResponseTypeDef(BaseModel): + authorizerDescription: AuthorizerDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAuthorizersResponseTypeDef(BaseModel): + authorizers: List[AuthorizerSummaryTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class AwsJobAbortConfigTypeDef(BaseModel): + abortCriteriaList: Sequence[AwsJobAbortCriteriaTypeDef] + +class AwsJobExponentialRolloutRateTypeDef(BaseModel): + baseRatePerMinute: int + incrementFactor: float + rateIncreaseCriteria: AwsJobRateIncreaseCriteriaTypeDef + +class BehaviorCriteriaPaginatorTypeDef(BaseModel): + comparisonOperator: Optional[ComparisonOperatorType] = None + value: Optional[MetricValuePaginatorTypeDef] = None + durationSeconds: Optional[int] = None + consecutiveDatapointsToAlarm: Optional[int] = None + consecutiveDatapointsToClear: Optional[int] = None + statisticalThreshold: Optional[StatisticalThresholdTypeDef] = None + mlDetectionConfig: Optional[MachineLearningDetectionConfigTypeDef] = None + +class BehaviorCriteriaTypeDef(BaseModel): + comparisonOperator: Optional[ComparisonOperatorType] = None + value: Optional[MetricValueTypeDef] = None + durationSeconds: Optional[int] = None + consecutiveDatapointsToAlarm: Optional[int] = None + consecutiveDatapointsToClear: Optional[int] = None + statisticalThreshold: Optional[StatisticalThresholdTypeDef] = None + mlDetectionConfig: Optional[MachineLearningDetectionConfigTypeDef] = None + +class GetBehaviorModelTrainingSummariesResponseTypeDef(BaseModel): + summaries: List[BehaviorModelTrainingSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricToRetainTypeDef(BaseModel): + metric: str + metricDimension: Optional[MetricDimensionTypeDef] = None + exportMetric: Optional[bool] = None + +class DescribeBillingGroupResponseTypeDef(BaseModel): + billingGroupName: str + billingGroupId: str + billingGroupArn: str + version: int + billingGroupProperties: BillingGroupPropertiesTypeDef + billingGroupMetadata: BillingGroupMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: str + billingGroupProperties: BillingGroupPropertiesTypeDef + expectedVersion: Optional[int] = None + +class CodeSigningSignatureTypeDef(BaseModel): + inlineDocument: Optional[BlobTypeDef] = None + +class MqttContextTypeDef(BaseModel): + username: Optional[str] = None + password: Optional[BlobTypeDef] = None + clientId: Optional[str] = None + +class GetBucketsAggregationResponseTypeDef(BaseModel): + totalCount: int + buckets: List[BucketTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BucketsAggregationTypeTypeDef(BaseModel): + termsAggregation: Optional[TermsAggregationTypeDef] = None + +class CACertificateDescriptionTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateId: Optional[str] = None + status: Optional[CACertificateStatusType] = None + certificatePem: Optional[str] = None + ownedBy: Optional[str] = None + creationDate: Optional[datetime] = None + autoRegistrationStatus: Optional[AutoRegistrationStatusType] = None + lastModifiedDate: Optional[datetime] = None + customerVersion: Optional[int] = None + generationId: Optional[str] = None + validity: Optional[CertificateValidityTypeDef] = None + certificateMode: Optional[CertificateModeType] = None + +class ListCACertificatesResponseTypeDef(BaseModel): + certificates: List[CACertificateTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CertificateDescriptionTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateId: Optional[str] = None + caCertificateId: Optional[str] = None + status: Optional[CertificateStatusType] = None + certificatePem: Optional[str] = None + ownedBy: Optional[str] = None + previousOwnedBy: Optional[str] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + customerVersion: Optional[int] = None + transferData: Optional[TransferDataTypeDef] = None + generationId: Optional[str] = None + validity: Optional[CertificateValidityTypeDef] = None + certificateMode: Optional[CertificateModeType] = None + +class ListCertificateProvidersResponseTypeDef(BaseModel): + certificateProviders: List[CertificateProviderSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCertificatesByCAResponseTypeDef(BaseModel): + certificates: List[CertificateTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCertificatesResponseTypeDef(BaseModel): + certificates: List[CertificateTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventConfigurationsResponseTypeDef(BaseModel): + eventConfigurations: Dict[EventTypeType, ConfigurationTypeDef] + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventConfigurationsRequestRequestTypeDef(BaseModel): + eventConfigurations: Optional[Mapping[EventTypeType, ConfigurationTypeDef]] = None + +class ListAuditMitigationActionsTasksRequestRequestTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + auditTaskId: Optional[str] = None + findingId: Optional[str] = None + taskStatus: Optional[AuditMitigationActionsTaskStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAuditTasksRequestRequestTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + taskType: Optional[AuditTaskTypeType] = None + taskStatus: Optional[AuditTaskStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDetectMitigationActionsExecutionsRequestRequestTypeDef(BaseModel): + taskId: Optional[str] = None + violationId: Optional[str] = None + thingName: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDetectMitigationActionsTasksRequestRequestTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListMetricValuesRequestRequestTypeDef(BaseModel): + thingName: str + metricName: str + startTime: TimestampTypeDef + endTime: TimestampTypeDef + dimensionName: Optional[str] = None + dimensionValueOperator: Optional[DimensionValueOperatorType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListViolationEventsRequestRequestTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behaviorCriteriaType: Optional[BehaviorCriteriaTypeType] = None + listSuppressedAlerts: Optional[bool] = None + verificationState: Optional[VerificationStateType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class CreateAuthorizerRequestRequestTypeDef(BaseModel): + authorizerName: str + authorizerFunctionArn: str + tokenKeyName: Optional[str] = None + tokenSigningPublicKeys: Optional[Mapping[str, str]] = None + status: Optional[AuthorizerStatusType] = None + tags: Optional[Sequence[TagTypeDef]] = None + signingDisabled: Optional[bool] = None + enableCachingForHttp: Optional[bool] = None + +class CreateBillingGroupRequestRequestTypeDef(BaseModel): + billingGroupName: str + billingGroupProperties: Optional[BillingGroupPropertiesTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCertificateProviderRequestRequestTypeDef(BaseModel): + certificateProviderName: str + lambdaFunctionArn: str + accountDefaultForOperations: Sequence[Literal["CreateCertificateFromCsr"]] + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCustomMetricRequestRequestTypeDef(BaseModel): + metricName: str + metricType: CustomMetricTypeType + clientRequestToken: str + displayName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDimensionRequestRequestTypeDef(BaseModel): + name: str + type: Literal["TOPIC_FILTER"] + stringValues: Sequence[str] + clientRequestToken: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateFleetMetricRequestRequestTypeDef(BaseModel): + metricName: str + queryString: str + aggregationType: AggregationTypeTypeDef + period: int + aggregationField: str + description: Optional[str] = None + queryVersion: Optional[str] = None + indexName: Optional[str] = None + unit: Optional[FleetMetricUnitType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePolicyRequestRequestTypeDef(BaseModel): + policyName: str + policyDocument: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRoleAliasRequestRequestTypeDef(BaseModel): + roleAlias: str + roleArn: str + credentialDurationSeconds: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateScheduledAuditRequestRequestTypeDef(BaseModel): + frequency: AuditFrequencyType + targetCheckNames: Sequence[str] + scheduledAuditName: str + dayOfMonth: Optional[str] = None + dayOfWeek: Optional[DayOfWeekType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateDomainConfigurationRequestRequestTypeDef(BaseModel): + domainConfigurationName: str + domainName: Optional[str] = None + serverCertificateArns: Optional[Sequence[str]] = None + validationCertificateArn: Optional[str] = None + authorizerConfig: Optional[AuthorizerConfigTypeDef] = None + serviceType: Optional[ServiceTypeType] = None + tags: Optional[Sequence[TagTypeDef]] = None + tlsConfig: Optional[TlsConfigTypeDef] = None + serverCertificateConfig: Optional[ServerCertificateConfigTypeDef] = None + +class UpdateDomainConfigurationRequestRequestTypeDef(BaseModel): + domainConfigurationName: str + authorizerConfig: Optional[AuthorizerConfigTypeDef] = None + domainConfigurationStatus: Optional[DomainConfigurationStatusType] = None + removeAuthorizerConfig: Optional[bool] = None + tlsConfig: Optional[TlsConfigTypeDef] = None + serverCertificateConfig: Optional[ServerCertificateConfigTypeDef] = None + +class SchedulingConfigTypeDef(BaseModel): + startTime: Optional[str] = None + endTime: Optional[str] = None + endBehavior: Optional[JobEndBehaviorType] = None + maintenanceWindows: Optional[Sequence[MaintenanceWindowTypeDef]] = None + +class CreateKeysAndCertificateResponseTypeDef(BaseModel): + certificateArn: str + certificateId: str + certificatePem: str + keyPair: KeyPairTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisioningClaimResponseTypeDef(BaseModel): + certificateId: str + certificatePem: str + keyPair: KeyPairTypeDef + expiration: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisioningTemplateRequestRequestTypeDef(BaseModel): + templateName: str + templateBody: str + provisioningRoleArn: str + description: Optional[str] = None + enabled: Optional[bool] = None + preProvisioningHook: Optional[ProvisioningHookTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + type: Optional[TemplateTypeType] = None + +class DescribeProvisioningTemplateResponseTypeDef(BaseModel): + templateArn: str + templateName: str + description: str + creationDate: datetime + lastModifiedDate: datetime + defaultVersionId: int + templateBody: str + enabled: bool + provisioningRoleArn: str + preProvisioningHook: ProvisioningHookTypeDef + type: TemplateTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProvisioningTemplateRequestRequestTypeDef(BaseModel): + templateName: str + description: Optional[str] = None + enabled: Optional[bool] = None + defaultVersionId: Optional[int] = None + provisioningRoleArn: Optional[str] = None + preProvisioningHook: Optional[ProvisioningHookTypeDef] = None + removePreProvisioningHook: Optional[bool] = None + +class CreateThingTypeRequestRequestTypeDef(BaseModel): + thingTypeName: str + thingTypeProperties: Optional[ThingTypePropertiesTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeAuditTaskResponseTypeDef(BaseModel): + taskStatus: AuditTaskStatusType + taskType: AuditTaskTypeType + taskStartTime: datetime + taskStatistics: TaskStatisticsTypeDef + scheduledAuditName: str + auditDetails: Dict[str, AuditCheckDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterCACertificateRequestRequestTypeDef(BaseModel): + caCertificate: str + verificationCertificate: Optional[str] = None + setAsActive: Optional[bool] = None + allowAutoRegistration: Optional[bool] = None + registrationConfig: Optional[RegistrationConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + certificateMode: Optional[CertificateModeType] = None + +class UpdateCACertificateRequestRequestTypeDef(BaseModel): + certificateId: str + newStatus: Optional[CACertificateStatusType] = None + newAutoRegistrationStatus: Optional[AutoRegistrationStatusType] = None + registrationConfig: Optional[RegistrationConfigTypeDef] = None + removeAutoRegistration: Optional[bool] = None + +class DescribeDomainConfigurationResponseTypeDef(BaseModel): + domainConfigurationName: str + domainConfigurationArn: str + domainName: str + serverCertificates: List[ServerCertificateSummaryTypeDef] + authorizerConfig: AuthorizerConfigTypeDef + domainConfigurationStatus: DomainConfigurationStatusType + serviceType: ServiceTypeType + domainType: DomainTypeType + lastStatusChangeDate: datetime + tlsConfig: TlsConfigTypeDef + serverCertificateConfig: ServerCertificateConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeManagedJobTemplateResponseTypeDef(BaseModel): + templateName: str + templateArn: str + description: str + templateVersion: str + environments: List[str] + documentParameters: List[DocumentParameterTypeDef] + document: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRoleAliasResponseTypeDef(BaseModel): + roleAliasDescription: RoleAliasDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeThingTypeResponseTypeDef(BaseModel): + thingTypeName: str + thingTypeId: str + thingTypeArn: str + thingTypeProperties: ThingTypePropertiesTypeDef + thingTypeMetadata: ThingTypeMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ThingTypeDefinitionTypeDef(BaseModel): + thingTypeName: Optional[str] = None + thingTypeArn: Optional[str] = None + thingTypeProperties: Optional[ThingTypePropertiesTypeDef] = None + thingTypeMetadata: Optional[ThingTypeMetadataTypeDef] = None + +class DestinationTypeDef(BaseModel): + s3Destination: Optional[S3DestinationTypeDef] = None + +class ListDetectMitigationActionsExecutionsResponseTypeDef(BaseModel): + actionsExecutions: List[DetectMitigationActionExecutionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDetectMitigationActionsTaskRequestRequestTypeDef(BaseModel): + taskId: str + target: DetectMitigationActionsTaskTargetTypeDef + actions: Sequence[str] + clientRequestToken: str + violationEventOccurrenceRange: Optional[ViolationEventOccurrenceRangeTypeDef] = None + includeOnlyActiveViolations: Optional[bool] = None + includeSuppressedAlerts: Optional[bool] = None + +class ListDomainConfigurationsResponseTypeDef(BaseModel): + domainConfigurations: List[DomainConfigurationSummaryTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DynamoDBv2ActionTypeDef(BaseModel): + roleArn: str + putItem: PutItemInputTypeDef + +class GetEffectivePoliciesResponseTypeDef(BaseModel): + effectivePolicies: List[EffectivePolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExponentialRolloutRateTypeDef(BaseModel): + baseRatePerMinute: int + incrementFactor: float + rateIncreaseCriteria: RateIncreaseCriteriaTypeDef + +class ThingGroupIndexingConfigurationTypeDef(BaseModel): + thingGroupIndexingMode: ThingGroupIndexingModeType + managedFields: Optional[List[FieldTypeDef]] = None + customFields: Optional[List[FieldTypeDef]] = None + +class StreamFileTypeDef(BaseModel): + fileId: Optional[int] = None + s3Location: Optional[S3LocationTypeDef] = None + +class FileLocationTypeDef(BaseModel): + stream: Optional[StreamTypeDef] = None + s3Location: Optional[S3LocationTypeDef] = None + +class ListFleetMetricsResponseTypeDef(BaseModel): + fleetMetrics: List[FleetMetricNameAndArnTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IndexingFilterTypeDef(BaseModel): + namedShadowNames: Optional[List[str]] = None + geoLocations: Optional[List[GeoLocationTargetTypeDef]] = None + +class ListActiveViolationsRequestListActiveViolationsPaginateTypeDef(BaseModel): + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behaviorCriteriaType: Optional[BehaviorCriteriaTypeType] = None + listSuppressedAlerts: Optional[bool] = None + verificationState: Optional[VerificationStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachedPoliciesRequestListAttachedPoliciesPaginateTypeDef(BaseModel): + target: str + recursive: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuditMitigationActionsExecutionsRequestListAuditMitigationActionsExecutionsPaginateTypeDef(BaseModel): + taskId: str + findingId: str + actionStatus: Optional[AuditMitigationActionsExecutionStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuditMitigationActionsTasksRequestListAuditMitigationActionsTasksPaginateTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + auditTaskId: Optional[str] = None + findingId: Optional[str] = None + taskStatus: Optional[AuditMitigationActionsTaskStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuditTasksRequestListAuditTasksPaginateTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + taskType: Optional[AuditTaskTypeType] = None + taskStatus: Optional[AuditTaskStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuthorizersRequestListAuthorizersPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + status: Optional[AuthorizerStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBillingGroupsRequestListBillingGroupsPaginateTypeDef(BaseModel): + namePrefixFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCACertificatesRequestListCACertificatesPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + templateName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCertificatesByCARequestListCertificatesByCAPaginateTypeDef(BaseModel): + caCertificateId: str + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCertificatesRequestListCertificatesPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomMetricsRequestListCustomMetricsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDetectMitigationActionsExecutionsRequestListDetectMitigationActionsExecutionsPaginateTypeDef(BaseModel): + taskId: Optional[str] = None + violationId: Optional[str] = None + thingName: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDetectMitigationActionsTasksRequestListDetectMitigationActionsTasksPaginateTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDimensionsRequestListDimensionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainConfigurationsRequestListDomainConfigurationsPaginateTypeDef(BaseModel): + serviceType: Optional[ServiceTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetMetricsRequestListFleetMetricsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIndicesRequestListIndicesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobExecutionsForJobRequestListJobExecutionsForJobPaginateTypeDef(BaseModel): + jobId: str + status: Optional[JobExecutionStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobExecutionsForThingRequestListJobExecutionsForThingPaginateTypeDef(BaseModel): + thingName: str + status: Optional[JobExecutionStatusType] = None + namespaceId: Optional[str] = None + jobId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobTemplatesRequestListJobTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + status: Optional[JobStatusType] = None + targetSelection: Optional[TargetSelectionType] = None + thingGroupName: Optional[str] = None + thingGroupId: Optional[str] = None + namespaceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedJobTemplatesRequestListManagedJobTemplatesPaginateTypeDef(BaseModel): + templateName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMetricValuesRequestListMetricValuesPaginateTypeDef(BaseModel): + thingName: str + metricName: str + startTime: TimestampTypeDef + endTime: TimestampTypeDef + dimensionName: Optional[str] = None + dimensionValueOperator: Optional[DimensionValueOperatorType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMitigationActionsRequestListMitigationActionsPaginateTypeDef(BaseModel): + actionType: Optional[MitigationActionTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOTAUpdatesRequestListOTAUpdatesPaginateTypeDef(BaseModel): + otaUpdateStatus: Optional[OTAUpdateStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOutgoingCertificatesRequestListOutgoingCertificatesPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackageVersionsRequestListPackageVersionsPaginateTypeDef(BaseModel): + packageName: str + status: Optional[PackageVersionStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackagesRequestListPackagesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesRequestListPoliciesPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyPrincipalsRequestListPolicyPrincipalsPaginateTypeDef(BaseModel): + policyName: str + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrincipalPoliciesRequestListPrincipalPoliciesPaginateTypeDef(BaseModel): + principal: str + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrincipalThingsRequestListPrincipalThingsPaginateTypeDef(BaseModel): + principal: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProvisioningTemplateVersionsRequestListProvisioningTemplateVersionsPaginateTypeDef(BaseModel): + templateName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProvisioningTemplatesRequestListProvisioningTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRelatedResourcesForAuditFindingRequestListRelatedResourcesForAuditFindingPaginateTypeDef(BaseModel): + findingId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoleAliasesRequestListRoleAliasesPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScheduledAuditsRequestListScheduledAuditsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityProfilesForTargetRequestListSecurityProfilesForTargetPaginateTypeDef(BaseModel): + securityProfileTargetArn: str + recursive: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityProfilesRequestListSecurityProfilesPaginateTypeDef(BaseModel): + dimensionName: Optional[str] = None + metricName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamsRequestListStreamsPaginateTypeDef(BaseModel): + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetsForPolicyRequestListTargetsForPolicyPaginateTypeDef(BaseModel): + policyName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetsForSecurityProfileRequestListTargetsForSecurityProfilePaginateTypeDef(BaseModel): + securityProfileName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingGroupsForThingRequestListThingGroupsForThingPaginateTypeDef(BaseModel): + thingName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingGroupsRequestListThingGroupsPaginateTypeDef(BaseModel): + parentGroup: Optional[str] = None + namePrefixFilter: Optional[str] = None + recursive: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingPrincipalsRequestListThingPrincipalsPaginateTypeDef(BaseModel): + thingName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingRegistrationTaskReportsRequestListThingRegistrationTaskReportsPaginateTypeDef(BaseModel): + taskId: str + reportType: ReportTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingRegistrationTasksRequestListThingRegistrationTasksPaginateTypeDef(BaseModel): + status: Optional[StatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingTypesRequestListThingTypesPaginateTypeDef(BaseModel): + thingTypeName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingsInBillingGroupRequestListThingsInBillingGroupPaginateTypeDef(BaseModel): + billingGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingsInThingGroupRequestListThingsInThingGroupPaginateTypeDef(BaseModel): + thingGroupName: str + recursive: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThingsRequestListThingsPaginateTypeDef(BaseModel): + attributeName: Optional[str] = None + attributeValue: Optional[str] = None + thingTypeName: Optional[str] = None + usePrefixAttributeValue: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTopicRuleDestinationsRequestListTopicRuleDestinationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTopicRulesRequestListTopicRulesPaginateTypeDef(BaseModel): + topic: Optional[str] = None + ruleDisabled: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListV2LoggingLevelsRequestListV2LoggingLevelsPaginateTypeDef(BaseModel): + targetType: Optional[LogTargetTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListViolationEventsRequestListViolationEventsPaginateTypeDef(BaseModel): + startTime: TimestampTypeDef + endTime: TimestampTypeDef + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behaviorCriteriaType: Optional[BehaviorCriteriaTypeType] = None + listSuppressedAlerts: Optional[bool] = None + verificationState: Optional[VerificationStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetPackageConfigurationResponseTypeDef(BaseModel): + versionUpdateByJobsConfig: VersionUpdateByJobsConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePackageConfigurationRequestRequestTypeDef(BaseModel): + versionUpdateByJobsConfig: Optional[VersionUpdateByJobsConfigTypeDef] = None + clientToken: Optional[str] = None + +class GetPercentilesResponseTypeDef(BaseModel): + percentiles: List[PercentPairTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetStatisticsResponseTypeDef(BaseModel): + statistics: StatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBillingGroupsResponseTypeDef(BaseModel): + billingGroups: List[GroupNameAndArnTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingGroupsForThingResponseTypeDef(BaseModel): + thingGroups: List[GroupNameAndArnTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingGroupsResponseTypeDef(BaseModel): + thingGroups: List[GroupNameAndArnTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ThingGroupMetadataTypeDef(BaseModel): + parentGroupName: Optional[str] = None + rootToParentThingGroups: Optional[List[GroupNameAndArnTypeDef]] = None + creationDate: Optional[datetime] = None + +class HttpAuthorizationTypeDef(BaseModel): + sigv4: Optional[SigV4AuthorizationTypeDef] = None + +class JobExecutionTypeDef(BaseModel): + jobId: Optional[str] = None + status: Optional[JobExecutionStatusType] = None + forceCanceled: Optional[bool] = None + statusDetails: Optional[JobExecutionStatusDetailsTypeDef] = None + thingArn: Optional[str] = None + queuedAt: Optional[datetime] = None + startedAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + executionNumber: Optional[int] = None + versionNumber: Optional[int] = None + approximateSecondsBeforeTimedOut: Optional[int] = None + +class JobExecutionSummaryForJobTypeDef(BaseModel): + thingArn: Optional[str] = None + jobExecutionSummary: Optional[JobExecutionSummaryTypeDef] = None + +class JobExecutionSummaryForThingTypeDef(BaseModel): + jobId: Optional[str] = None + jobExecutionSummary: Optional[JobExecutionSummaryTypeDef] = None + +class JobExecutionsRetryConfigTypeDef(BaseModel): + criteriaList: Sequence[RetryCriteriaTypeDef] + +class ListJobsResponseTypeDef(BaseModel): + jobs: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobTemplatesResponseTypeDef(BaseModel): + jobTemplates: List[JobTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class KafkaActionTypeDef(BaseModel): + destinationArn: str + topic: str + clientProperties: Mapping[str, str] + key: Optional[str] = None + partition: Optional[str] = None + headers: Optional[Sequence[KafkaActionHeaderTypeDef]] = None + +class ListManagedJobTemplatesResponseTypeDef(BaseModel): + managedJobTemplates: List[ManagedJobTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMitigationActionsResponseTypeDef(BaseModel): + actionIdentifiers: List[MitigationActionIdentifierTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOTAUpdatesResponseTypeDef(BaseModel): + otaUpdates: List[OTAUpdateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOutgoingCertificatesResponseTypeDef(BaseModel): + outgoingCertificates: List[OutgoingCertificateTypeDef] + nextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackageVersionsResponseTypeDef(BaseModel): + packageVersionSummaries: List[PackageVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackagesResponseTypeDef(BaseModel): + packageSummaries: List[PackageSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPolicyVersionsResponseTypeDef(BaseModel): + policyVersions: List[PolicyVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisioningTemplateVersionsResponseTypeDef(BaseModel): + versions: List[ProvisioningTemplateVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisioningTemplatesResponseTypeDef(BaseModel): + templates: List[ProvisioningTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListScheduledAuditsResponseTypeDef(BaseModel): + scheduledAudits: List[ScheduledAuditMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityProfilesResponseTypeDef(BaseModel): + securityProfileIdentifiers: List[SecurityProfileIdentifierTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamsResponseTypeDef(BaseModel): + streams: List[StreamSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetsForSecurityProfileResponseTypeDef(BaseModel): + securityProfileTargets: List[SecurityProfileTargetTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SecurityProfileTargetMappingTypeDef(BaseModel): + securityProfileIdentifier: Optional[SecurityProfileIdentifierTypeDef] = None + target: Optional[SecurityProfileTargetTypeDef] = None + +class ListThingsResponseTypeDef(BaseModel): + things: List[ThingAttributeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTopicRulesResponseTypeDef(BaseModel): + rules: List[TopicRuleListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LocationActionTypeDef(BaseModel): + roleArn: str + trackerName: str + deviceId: str + latitude: str + longitude: str + timestamp: Optional[LocationTimestampTypeDef] = None + +class LogTargetConfigurationTypeDef(BaseModel): + logTarget: Optional[LogTargetTypeDef] = None + logLevel: Optional[LogLevelType] = None + +class SetV2LoggingLevelRequestRequestTypeDef(BaseModel): + logTarget: LogTargetTypeDef + logLevel: LogLevelType + +class SetLoggingOptionsRequestRequestTypeDef(BaseModel): + loggingOptionsPayload: LoggingOptionsPayloadTypeDef + +class MitigationActionParamsPaginatorTypeDef(BaseModel): + updateDeviceCertificateParams: Optional[UpdateDeviceCertificateParamsTypeDef] = None + updateCACertificateParams: Optional[UpdateCACertificateParamsTypeDef] = None + addThingsToThingGroupParams: Optional[AddThingsToThingGroupParamsPaginatorTypeDef] = None + replaceDefaultPolicyVersionParams: Optional[ReplaceDefaultPolicyVersionParamsTypeDef] = None + enableIoTLoggingParams: Optional[EnableIoTLoggingParamsTypeDef] = None + publishFindingToSnsParams: Optional[PublishFindingToSnsParamsTypeDef] = None + +class MitigationActionParamsTypeDef(BaseModel): + updateDeviceCertificateParams: Optional[UpdateDeviceCertificateParamsTypeDef] = None + updateCACertificateParams: Optional[UpdateCACertificateParamsTypeDef] = None + addThingsToThingGroupParams: Optional[AddThingsToThingGroupParamsTypeDef] = None + replaceDefaultPolicyVersionParams: Optional[ReplaceDefaultPolicyVersionParamsTypeDef] = None + enableIoTLoggingParams: Optional[EnableIoTLoggingParamsTypeDef] = None + publishFindingToSnsParams: Optional[PublishFindingToSnsParamsTypeDef] = None + +class MqttHeadersTypeDef(BaseModel): + payloadFormatIndicator: Optional[str] = None + contentType: Optional[str] = None + responseTopic: Optional[str] = None + correlationData: Optional[str] = None + messageExpiry: Optional[str] = None + userProperties: Optional[Sequence[UserPropertyTypeDef]] = None + +class ResourceIdentifierTypeDef(BaseModel): + deviceCertificateId: Optional[str] = None + caCertificateId: Optional[str] = None + cognitoIdentityPoolId: Optional[str] = None + clientId: Optional[str] = None + policyVersionIdentifier: Optional[PolicyVersionIdentifierTypeDef] = None + account: Optional[str] = None + iamRoleArn: Optional[str] = None + roleAliasArn: Optional[str] = None + issuerCertificateIdentifier: Optional[IssuerCertificateIdentifierTypeDef] = None + deviceCertificateArn: Optional[str] = None + +class ThingDocumentTypeDef(BaseModel): + thingName: Optional[str] = None + thingId: Optional[str] = None + thingTypeName: Optional[str] = None + thingGroupNames: Optional[List[str]] = None + attributes: Optional[Dict[str, str]] = None + shadow: Optional[str] = None + deviceDefender: Optional[str] = None + connectivity: Optional[ThingConnectivityTypeDef] = None + +class ThingTypeDefinitionPaginatorTypeDef(BaseModel): + thingTypeName: Optional[str] = None + thingTypeArn: Optional[str] = None + thingTypeProperties: Optional[ThingTypePropertiesPaginatorTypeDef] = None + thingTypeMetadata: Optional[ThingTypeMetadataTypeDef] = None + +class TimestreamActionTypeDef(BaseModel): + roleArn: str + databaseName: str + tableName: str + dimensions: Sequence[TimestreamDimensionTypeDef] + timestamp: Optional[TimestreamTimestampTypeDef] = None + +class TopicRuleDestinationConfigurationTypeDef(BaseModel): + httpUrlConfiguration: Optional[HttpUrlDestinationConfigurationTypeDef] = None + vpcConfiguration: Optional[VpcDestinationConfigurationTypeDef] = None + +class TopicRuleDestinationSummaryTypeDef(BaseModel): + arn: Optional[str] = None + status: Optional[TopicRuleDestinationStatusType] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + statusReason: Optional[str] = None + httpUrlSummary: Optional[HttpUrlDestinationSummaryTypeDef] = None + vpcDestinationSummary: Optional[VpcDestinationSummaryTypeDef] = None + +class TopicRuleDestinationTypeDef(BaseModel): + arn: Optional[str] = None + status: Optional[TopicRuleDestinationStatusType] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + statusReason: Optional[str] = None + httpUrlProperties: Optional[HttpUrlDestinationPropertiesTypeDef] = None + vpcProperties: Optional[VpcDestinationPropertiesTypeDef] = None + +class ValidateSecurityProfileBehaviorsResponseTypeDef(BaseModel): + valid: bool + validationErrors: List[ValidationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMetricValuesResponsePaginatorTypeDef(BaseModel): + metricDatumList: List[MetricDatumPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMetricValuesResponseTypeDef(BaseModel): + metricDatumList: List[MetricDatumTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeniedTypeDef(BaseModel): + implicitDeny: Optional[ImplicitDenyTypeDef] = None + explicitDeny: Optional[ExplicitDenyTypeDef] = None + +class PutAssetPropertyValueEntryTypeDef(BaseModel): + propertyValues: Sequence[AssetPropertyValueTypeDef] + entryId: Optional[str] = None + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + +class CreateDynamicThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + queryString: str + thingGroupProperties: Optional[ThingGroupPropertiesTypeDef] = None + indexName: Optional[str] = None + queryVersion: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + parentGroupName: Optional[str] = None + thingGroupProperties: Optional[ThingGroupPropertiesTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateDynamicThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + thingGroupProperties: ThingGroupPropertiesTypeDef + expectedVersion: Optional[int] = None + indexName: Optional[str] = None + queryString: Optional[str] = None + queryVersion: Optional[str] = None + +class UpdateThingGroupRequestRequestTypeDef(BaseModel): + thingGroupName: str + thingGroupProperties: ThingGroupPropertiesTypeDef + expectedVersion: Optional[int] = None + +class AwsJobExecutionsRolloutConfigTypeDef(BaseModel): + maximumPerMinute: Optional[int] = None + exponentialRate: Optional[AwsJobExponentialRolloutRateTypeDef] = None + +class BehaviorPaginatorTypeDef(BaseModel): + name: str + metric: Optional[str] = None + metricDimension: Optional[MetricDimensionTypeDef] = None + criteria: Optional[BehaviorCriteriaPaginatorTypeDef] = None + suppressAlerts: Optional[bool] = None + exportMetric: Optional[bool] = None + +class BehaviorTypeDef(BaseModel): + name: str + metric: Optional[str] = None + metricDimension: Optional[MetricDimensionTypeDef] = None + criteria: Optional[BehaviorCriteriaTypeDef] = None + suppressAlerts: Optional[bool] = None + exportMetric: Optional[bool] = None + +class CustomCodeSigningTypeDef(BaseModel): + signature: Optional[CodeSigningSignatureTypeDef] = None + certificateChain: Optional[CodeSigningCertificateChainTypeDef] = None + hashAlgorithm: Optional[str] = None + signatureAlgorithm: Optional[str] = None + +class TestInvokeAuthorizerRequestRequestTypeDef(BaseModel): + authorizerName: str + token: Optional[str] = None + tokenSignature: Optional[str] = None + httpContext: Optional[HttpContextTypeDef] = None + mqttContext: Optional[MqttContextTypeDef] = None + tlsContext: Optional[TlsContextTypeDef] = None + +class GetBucketsAggregationRequestRequestTypeDef(BaseModel): + queryString: str + aggregationField: str + bucketsAggregationType: BucketsAggregationTypeTypeDef + indexName: Optional[str] = None + queryVersion: Optional[str] = None + +class DescribeCACertificateResponseTypeDef(BaseModel): + certificateDescription: CACertificateDescriptionTypeDef + registrationConfig: RegistrationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCertificateResponseTypeDef(BaseModel): + certificateDescription: CertificateDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingTypesResponseTypeDef(BaseModel): + thingTypes: List[ThingTypeDefinitionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSigningJobParameterTypeDef(BaseModel): + signingProfileParameter: Optional[SigningProfileParameterTypeDef] = None + signingProfileName: Optional[str] = None + destination: Optional[DestinationTypeDef] = None + +class JobExecutionsRolloutConfigTypeDef(BaseModel): + maximumPerMinute: Optional[int] = None + exponentialRate: Optional[ExponentialRolloutRateTypeDef] = None + +class CreateStreamRequestRequestTypeDef(BaseModel): + streamId: str + files: Sequence[StreamFileTypeDef] + roleArn: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class StreamInfoTypeDef(BaseModel): + streamId: Optional[str] = None + streamArn: Optional[str] = None + streamVersion: Optional[int] = None + description: Optional[str] = None + files: Optional[List[StreamFileTypeDef]] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + roleArn: Optional[str] = None + +class UpdateStreamRequestRequestTypeDef(BaseModel): + streamId: str + description: Optional[str] = None + files: Optional[Sequence[StreamFileTypeDef]] = None + roleArn: Optional[str] = None + +class ThingIndexingConfigurationTypeDef(BaseModel): + thingIndexingMode: ThingIndexingModeType + thingConnectivityIndexingMode: Optional[ThingConnectivityIndexingModeType] = None + deviceDefenderIndexingMode: Optional[DeviceDefenderIndexingModeType] = None + namedShadowIndexingMode: Optional[NamedShadowIndexingModeType] = None + managedFields: Optional[List[FieldTypeDef]] = None + customFields: Optional[List[FieldTypeDef]] = None + filter: Optional[IndexingFilterTypeDef] = None + +class DescribeThingGroupResponseTypeDef(BaseModel): + thingGroupName: str + thingGroupId: str + thingGroupArn: str + version: int + thingGroupProperties: ThingGroupPropertiesTypeDef + thingGroupMetadata: ThingGroupMetadataTypeDef + indexName: str + queryString: str + queryVersion: str + status: DynamicGroupStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class HttpActionTypeDef(BaseModel): + url: str + confirmationUrl: Optional[str] = None + headers: Optional[Sequence[HttpActionHeaderTypeDef]] = None + auth: Optional[HttpAuthorizationTypeDef] = None + +class DescribeJobExecutionResponseTypeDef(BaseModel): + execution: JobExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobExecutionsForJobResponseTypeDef(BaseModel): + executionSummaries: List[JobExecutionSummaryForJobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobExecutionsForThingResponseTypeDef(BaseModel): + executionSummaries: List[JobExecutionSummaryForThingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityProfilesForTargetResponseTypeDef(BaseModel): + securityProfileTargetMappings: List[SecurityProfileTargetMappingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListV2LoggingLevelsResponseTypeDef(BaseModel): + logTargetConfigurations: List[LogTargetConfigurationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MitigationActionPaginatorTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + roleArn: Optional[str] = None + actionParams: Optional[MitigationActionParamsPaginatorTypeDef] = None + +class CreateMitigationActionRequestRequestTypeDef(BaseModel): + actionName: str + roleArn: str + actionParams: MitigationActionParamsTypeDef + tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeMitigationActionResponseTypeDef(BaseModel): + actionName: str + actionType: MitigationActionTypeType + actionArn: str + actionId: str + roleArn: str + actionParams: MitigationActionParamsTypeDef + creationDate: datetime + lastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class MitigationActionTypeDef(BaseModel): + name: Optional[str] = None + id: Optional[str] = None + roleArn: Optional[str] = None + actionParams: Optional[MitigationActionParamsTypeDef] = None + +class UpdateMitigationActionRequestRequestTypeDef(BaseModel): + actionName: str + roleArn: Optional[str] = None + actionParams: Optional[MitigationActionParamsTypeDef] = None + +class RepublishActionTypeDef(BaseModel): + roleArn: str + topic: str + qos: Optional[int] = None + headers: Optional[MqttHeadersTypeDef] = None + +class AuditSuppressionTypeDef(BaseModel): + checkName: str + resourceIdentifier: ResourceIdentifierTypeDef + expirationDate: Optional[datetime] = None + suppressIndefinitely: Optional[bool] = None + description: Optional[str] = None + +class CreateAuditSuppressionRequestRequestTypeDef(BaseModel): + checkName: str + resourceIdentifier: ResourceIdentifierTypeDef + clientRequestToken: str + expirationDate: Optional[TimestampTypeDef] = None + suppressIndefinitely: Optional[bool] = None + description: Optional[str] = None + +class DeleteAuditSuppressionRequestRequestTypeDef(BaseModel): + checkName: str + resourceIdentifier: ResourceIdentifierTypeDef + +class DescribeAuditSuppressionRequestRequestTypeDef(BaseModel): + checkName: str + resourceIdentifier: ResourceIdentifierTypeDef + +class DescribeAuditSuppressionResponseTypeDef(BaseModel): + checkName: str + resourceIdentifier: ResourceIdentifierTypeDef + expirationDate: datetime + suppressIndefinitely: bool + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAuditFindingsRequestListAuditFindingsPaginateTypeDef(BaseModel): + taskId: Optional[str] = None + checkName: Optional[str] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + listSuppressedFindings: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuditFindingsRequestRequestTypeDef(BaseModel): + taskId: Optional[str] = None + checkName: Optional[str] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + listSuppressedFindings: Optional[bool] = None + +class ListAuditSuppressionsRequestListAuditSuppressionsPaginateTypeDef(BaseModel): + checkName: Optional[str] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + ascendingOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAuditSuppressionsRequestRequestTypeDef(BaseModel): + checkName: Optional[str] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + ascendingOrder: Optional[bool] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class NonCompliantResourceTypeDef(BaseModel): + resourceType: Optional[ResourceTypeType] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + additionalInfo: Optional[Dict[str, str]] = None + +class RelatedResourceTypeDef(BaseModel): + resourceType: Optional[ResourceTypeType] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + additionalInfo: Optional[Dict[str, str]] = None + +class UpdateAuditSuppressionRequestRequestTypeDef(BaseModel): + checkName: str + resourceIdentifier: ResourceIdentifierTypeDef + expirationDate: Optional[TimestampTypeDef] = None + suppressIndefinitely: Optional[bool] = None + description: Optional[str] = None + +class SearchIndexResponseTypeDef(BaseModel): + nextToken: str + things: List[ThingDocumentTypeDef] + thingGroups: List[ThingGroupDocumentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListThingTypesResponsePaginatorTypeDef(BaseModel): + thingTypes: List[ThingTypeDefinitionPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicRuleDestinationRequestRequestTypeDef(BaseModel): + destinationConfiguration: TopicRuleDestinationConfigurationTypeDef + +class ListTopicRuleDestinationsResponseTypeDef(BaseModel): + destinationSummaries: List[TopicRuleDestinationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicRuleDestinationResponseTypeDef(BaseModel): + topicRuleDestination: TopicRuleDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTopicRuleDestinationResponseTypeDef(BaseModel): + topicRuleDestination: TopicRuleDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AuthResultTypeDef(BaseModel): + authInfo: Optional[AuthInfoTypeDef] = None + allowed: Optional[AllowedTypeDef] = None + denied: Optional[DeniedTypeDef] = None + authDecision: Optional[AuthDecisionType] = None + missingContextValues: Optional[List[str]] = None + +class IotSiteWiseActionTypeDef(BaseModel): + putAssetPropertyValueEntries: Sequence[PutAssetPropertyValueEntryTypeDef] + roleArn: str + +class ActiveViolationPaginatorTypeDef(BaseModel): + violationId: Optional[str] = None + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behavior: Optional[BehaviorPaginatorTypeDef] = None + lastViolationValue: Optional[MetricValuePaginatorTypeDef] = None + violationEventAdditionalInfo: Optional[ViolationEventAdditionalInfoTypeDef] = None + verificationState: Optional[VerificationStateType] = None + verificationStateDescription: Optional[str] = None + lastViolationTime: Optional[datetime] = None + violationStartTime: Optional[datetime] = None + +class ViolationEventPaginatorTypeDef(BaseModel): + violationId: Optional[str] = None + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behavior: Optional[BehaviorPaginatorTypeDef] = None + metricValue: Optional[MetricValuePaginatorTypeDef] = None + violationEventAdditionalInfo: Optional[ViolationEventAdditionalInfoTypeDef] = None + violationEventType: Optional[ViolationEventTypeType] = None + verificationState: Optional[VerificationStateType] = None + verificationStateDescription: Optional[str] = None + violationEventTime: Optional[datetime] = None + +class ActiveViolationTypeDef(BaseModel): + violationId: Optional[str] = None + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behavior: Optional[BehaviorTypeDef] = None + lastViolationValue: Optional[MetricValueTypeDef] = None + violationEventAdditionalInfo: Optional[ViolationEventAdditionalInfoTypeDef] = None + verificationState: Optional[VerificationStateType] = None + verificationStateDescription: Optional[str] = None + lastViolationTime: Optional[datetime] = None + violationStartTime: Optional[datetime] = None + +class CreateSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + securityProfileDescription: Optional[str] = None + behaviors: Optional[Sequence[BehaviorTypeDef]] = None + alertTargets: Optional[Mapping[Literal["SNS"], AlertTargetTypeDef]] = None + additionalMetricsToRetain: Optional[Sequence[str]] = None + additionalMetricsToRetainV2: Optional[Sequence[MetricToRetainTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + metricsExportConfig: Optional[MetricsExportConfigTypeDef] = None + +class DescribeSecurityProfileResponseTypeDef(BaseModel): + securityProfileName: str + securityProfileArn: str + securityProfileDescription: str + behaviors: List[BehaviorTypeDef] + alertTargets: Dict[Literal["SNS"], AlertTargetTypeDef] + additionalMetricsToRetain: List[str] + additionalMetricsToRetainV2: List[MetricToRetainTypeDef] + version: int + creationDate: datetime + lastModifiedDate: datetime + metricsExportConfig: MetricsExportConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityProfileRequestRequestTypeDef(BaseModel): + securityProfileName: str + securityProfileDescription: Optional[str] = None + behaviors: Optional[Sequence[BehaviorTypeDef]] = None + alertTargets: Optional[Mapping[Literal["SNS"], AlertTargetTypeDef]] = None + additionalMetricsToRetain: Optional[Sequence[str]] = None + additionalMetricsToRetainV2: Optional[Sequence[MetricToRetainTypeDef]] = None + deleteBehaviors: Optional[bool] = None + deleteAlertTargets: Optional[bool] = None + deleteAdditionalMetricsToRetain: Optional[bool] = None + expectedVersion: Optional[int] = None + metricsExportConfig: Optional[MetricsExportConfigTypeDef] = None + deleteMetricsExportConfig: Optional[bool] = None + +class UpdateSecurityProfileResponseTypeDef(BaseModel): + securityProfileName: str + securityProfileArn: str + securityProfileDescription: str + behaviors: List[BehaviorTypeDef] + alertTargets: Dict[Literal["SNS"], AlertTargetTypeDef] + additionalMetricsToRetain: List[str] + additionalMetricsToRetainV2: List[MetricToRetainTypeDef] + version: int + creationDate: datetime + lastModifiedDate: datetime + metricsExportConfig: MetricsExportConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateSecurityProfileBehaviorsRequestRequestTypeDef(BaseModel): + behaviors: Sequence[BehaviorTypeDef] + +class ViolationEventTypeDef(BaseModel): + violationId: Optional[str] = None + thingName: Optional[str] = None + securityProfileName: Optional[str] = None + behavior: Optional[BehaviorTypeDef] = None + metricValue: Optional[MetricValueTypeDef] = None + violationEventAdditionalInfo: Optional[ViolationEventAdditionalInfoTypeDef] = None + violationEventType: Optional[ViolationEventTypeType] = None + verificationState: Optional[VerificationStateType] = None + verificationStateDescription: Optional[str] = None + violationEventTime: Optional[datetime] = None + +class CodeSigningTypeDef(BaseModel): + awsSignerJobId: Optional[str] = None + startSigningJobParameter: Optional[StartSigningJobParameterTypeDef] = None + customCodeSigning: Optional[CustomCodeSigningTypeDef] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + jobId: str + targets: Sequence[str] + documentSource: Optional[str] = None + document: Optional[str] = None + description: Optional[str] = None + presignedUrlConfig: Optional[PresignedUrlConfigTypeDef] = None + targetSelection: Optional[TargetSelectionType] = None + jobExecutionsRolloutConfig: Optional[JobExecutionsRolloutConfigTypeDef] = None + abortConfig: Optional[AbortConfigTypeDef] = None + timeoutConfig: Optional[TimeoutConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + namespaceId: Optional[str] = None + jobTemplateArn: Optional[str] = None + jobExecutionsRetryConfig: Optional[JobExecutionsRetryConfigTypeDef] = None + documentParameters: Optional[Mapping[str, str]] = None + schedulingConfig: Optional[SchedulingConfigTypeDef] = None + destinationPackageVersions: Optional[Sequence[str]] = None + +class CreateJobTemplateRequestRequestTypeDef(BaseModel): + jobTemplateId: str + description: str + jobArn: Optional[str] = None + documentSource: Optional[str] = None + document: Optional[str] = None + presignedUrlConfig: Optional[PresignedUrlConfigTypeDef] = None + jobExecutionsRolloutConfig: Optional[JobExecutionsRolloutConfigTypeDef] = None + abortConfig: Optional[AbortConfigTypeDef] = None + timeoutConfig: Optional[TimeoutConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + jobExecutionsRetryConfig: Optional[JobExecutionsRetryConfigTypeDef] = None + maintenanceWindows: Optional[Sequence[MaintenanceWindowTypeDef]] = None + destinationPackageVersions: Optional[Sequence[str]] = None + +class DescribeJobTemplateResponseTypeDef(BaseModel): + jobTemplateArn: str + jobTemplateId: str + description: str + documentSource: str + document: str + createdAt: datetime + presignedUrlConfig: PresignedUrlConfigTypeDef + jobExecutionsRolloutConfig: JobExecutionsRolloutConfigTypeDef + abortConfig: AbortConfigTypeDef + timeoutConfig: TimeoutConfigTypeDef + jobExecutionsRetryConfig: JobExecutionsRetryConfigTypeDef + maintenanceWindows: List[MaintenanceWindowTypeDef] + destinationPackageVersions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class JobTypeDef(BaseModel): + jobArn: Optional[str] = None + jobId: Optional[str] = None + targetSelection: Optional[TargetSelectionType] = None + status: Optional[JobStatusType] = None + forceCanceled: Optional[bool] = None + reasonCode: Optional[str] = None + comment: Optional[str] = None + targets: Optional[List[str]] = None + description: Optional[str] = None + presignedUrlConfig: Optional[PresignedUrlConfigTypeDef] = None + jobExecutionsRolloutConfig: Optional[JobExecutionsRolloutConfigTypeDef] = None + abortConfig: Optional[AbortConfigTypeDef] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + completedAt: Optional[datetime] = None + jobProcessDetails: Optional[JobProcessDetailsTypeDef] = None + timeoutConfig: Optional[TimeoutConfigTypeDef] = None + namespaceId: Optional[str] = None + jobTemplateArn: Optional[str] = None + jobExecutionsRetryConfig: Optional[JobExecutionsRetryConfigTypeDef] = None + documentParameters: Optional[Dict[str, str]] = None + isConcurrent: Optional[bool] = None + schedulingConfig: Optional[SchedulingConfigTypeDef] = None + scheduledJobRollouts: Optional[List[ScheduledJobRolloutTypeDef]] = None + destinationPackageVersions: Optional[List[str]] = None + +class UpdateJobRequestRequestTypeDef(BaseModel): + jobId: str + description: Optional[str] = None + presignedUrlConfig: Optional[PresignedUrlConfigTypeDef] = None + jobExecutionsRolloutConfig: Optional[JobExecutionsRolloutConfigTypeDef] = None + abortConfig: Optional[AbortConfigTypeDef] = None + timeoutConfig: Optional[TimeoutConfigTypeDef] = None + namespaceId: Optional[str] = None + jobExecutionsRetryConfig: Optional[JobExecutionsRetryConfigTypeDef] = None + +class DescribeStreamResponseTypeDef(BaseModel): + streamInfo: StreamInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetIndexingConfigurationResponseTypeDef(BaseModel): + thingIndexingConfiguration: ThingIndexingConfigurationTypeDef + thingGroupIndexingConfiguration: ThingGroupIndexingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIndexingConfigurationRequestRequestTypeDef(BaseModel): + thingIndexingConfiguration: Optional[ThingIndexingConfigurationTypeDef] = None + thingGroupIndexingConfiguration: Optional[ThingGroupIndexingConfigurationTypeDef] = None + +class DetectMitigationActionsTaskSummaryPaginatorTypeDef(BaseModel): + taskId: Optional[str] = None + taskStatus: Optional[DetectMitigationActionsTaskStatusType] = None + taskStartTime: Optional[datetime] = None + taskEndTime: Optional[datetime] = None + target: Optional[DetectMitigationActionsTaskTargetTypeDef] = None + violationEventOccurrenceRange: Optional[ViolationEventOccurrenceRangeTypeDef] = None + onlyActiveViolationsIncluded: Optional[bool] = None + suppressedAlertsIncluded: Optional[bool] = None + actionsDefinition: Optional[List[MitigationActionPaginatorTypeDef]] = None + taskStatistics: Optional[DetectMitigationActionsTaskStatisticsTypeDef] = None + +class DescribeAuditMitigationActionsTaskResponseTypeDef(BaseModel): + taskStatus: AuditMitigationActionsTaskStatusType + startTime: datetime + endTime: datetime + taskStatistics: Dict[str, TaskStatisticsForAuditCheckTypeDef] + target: AuditMitigationActionsTaskTargetTypeDef + auditCheckToActionsMapping: Dict[str, List[str]] + actionsDefinition: List[MitigationActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetectMitigationActionsTaskSummaryTypeDef(BaseModel): + taskId: Optional[str] = None + taskStatus: Optional[DetectMitigationActionsTaskStatusType] = None + taskStartTime: Optional[datetime] = None + taskEndTime: Optional[datetime] = None + target: Optional[DetectMitigationActionsTaskTargetTypeDef] = None + violationEventOccurrenceRange: Optional[ViolationEventOccurrenceRangeTypeDef] = None + onlyActiveViolationsIncluded: Optional[bool] = None + suppressedAlertsIncluded: Optional[bool] = None + actionsDefinition: Optional[List[MitigationActionTypeDef]] = None + taskStatistics: Optional[DetectMitigationActionsTaskStatisticsTypeDef] = None + +class ListAuditSuppressionsResponseTypeDef(BaseModel): + suppressions: List[AuditSuppressionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AuditFindingTypeDef(BaseModel): + findingId: Optional[str] = None + taskId: Optional[str] = None + checkName: Optional[str] = None + taskStartTime: Optional[datetime] = None + findingTime: Optional[datetime] = None + severity: Optional[AuditFindingSeverityType] = None + nonCompliantResource: Optional[NonCompliantResourceTypeDef] = None + relatedResources: Optional[List[RelatedResourceTypeDef]] = None + reasonForNonCompliance: Optional[str] = None + reasonForNonComplianceCode: Optional[str] = None + isSuppressed: Optional[bool] = None + +class ListRelatedResourcesForAuditFindingResponseTypeDef(BaseModel): + relatedResources: List[RelatedResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestAuthorizationResponseTypeDef(BaseModel): + authResults: List[AuthResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ActionTypeDef(BaseModel): + dynamoDB: Optional[DynamoDBActionTypeDef] = None + dynamoDBv2: Optional[DynamoDBv2ActionTypeDef] = None + lambda: Optional[LambdaActionTypeDef] = None + sns: Optional[SnsActionTypeDef] = None + sqs: Optional[SqsActionTypeDef] = None + kinesis: Optional[KinesisActionTypeDef] = None + republish: Optional[RepublishActionTypeDef] = None + s3: Optional[S3ActionTypeDef] = None + firehose: Optional[FirehoseActionTypeDef] = None + cloudwatchMetric: Optional[CloudwatchMetricActionTypeDef] = None + cloudwatchAlarm: Optional[CloudwatchAlarmActionTypeDef] = None + cloudwatchLogs: Optional[CloudwatchLogsActionTypeDef] = None + elasticsearch: Optional[ElasticsearchActionTypeDef] = None + salesforce: Optional[SalesforceActionTypeDef] = None + iotAnalytics: Optional[IotAnalyticsActionTypeDef] = None + iotEvents: Optional[IotEventsActionTypeDef] = None + iotSiteWise: Optional[IotSiteWiseActionTypeDef] = None + stepFunctions: Optional[StepFunctionsActionTypeDef] = None + timestream: Optional[TimestreamActionTypeDef] = None + http: Optional[HttpActionTypeDef] = None + kafka: Optional[KafkaActionTypeDef] = None + openSearch: Optional[OpenSearchActionTypeDef] = None + location: Optional[LocationActionTypeDef] = None + +class ListActiveViolationsResponsePaginatorTypeDef(BaseModel): + activeViolations: List[ActiveViolationPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListViolationEventsResponsePaginatorTypeDef(BaseModel): + violationEvents: List[ViolationEventPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListActiveViolationsResponseTypeDef(BaseModel): + activeViolations: List[ActiveViolationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListViolationEventsResponseTypeDef(BaseModel): + violationEvents: List[ViolationEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OTAUpdateFileTypeDef(BaseModel): + fileName: Optional[str] = None + fileType: Optional[int] = None + fileVersion: Optional[str] = None + fileLocation: Optional[FileLocationTypeDef] = None + codeSigning: Optional[CodeSigningTypeDef] = None + attributes: Optional[Mapping[str, str]] = None + +class DescribeJobResponseTypeDef(BaseModel): + documentSource: str + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDetectMitigationActionsTasksResponsePaginatorTypeDef(BaseModel): + tasks: List[DetectMitigationActionsTaskSummaryPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDetectMitigationActionsTaskResponseTypeDef(BaseModel): + taskSummary: DetectMitigationActionsTaskSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDetectMitigationActionsTasksResponseTypeDef(BaseModel): + tasks: List[DetectMitigationActionsTaskSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAuditFindingResponseTypeDef(BaseModel): + finding: AuditFindingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAuditFindingsResponseTypeDef(BaseModel): + findings: List[AuditFindingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TopicRulePayloadTypeDef(BaseModel): + sql: str + actions: Sequence[ActionTypeDef] + description: Optional[str] = None + ruleDisabled: Optional[bool] = None + awsIotSqlVersion: Optional[str] = None + errorAction: Optional[ActionTypeDef] = None + +class TopicRuleTypeDef(BaseModel): + ruleName: Optional[str] = None + sql: Optional[str] = None + description: Optional[str] = None + createdAt: Optional[datetime] = None + actions: Optional[List[ActionTypeDef]] = None + ruleDisabled: Optional[bool] = None + awsIotSqlVersion: Optional[str] = None + errorAction: Optional[ActionTypeDef] = None + +class CreateOTAUpdateRequestRequestTypeDef(BaseModel): + otaUpdateId: str + targets: Sequence[str] + files: Sequence[OTAUpdateFileTypeDef] + roleArn: str + description: Optional[str] = None + protocols: Optional[Sequence[ProtocolType]] = None + targetSelection: Optional[TargetSelectionType] = None + awsJobExecutionsRolloutConfig: Optional[AwsJobExecutionsRolloutConfigTypeDef] = None + awsJobPresignedUrlConfig: Optional[AwsJobPresignedUrlConfigTypeDef] = None + awsJobAbortConfig: Optional[AwsJobAbortConfigTypeDef] = None + awsJobTimeoutConfig: Optional[AwsJobTimeoutConfigTypeDef] = None + additionalParameters: Optional[Mapping[str, str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class OTAUpdateInfoTypeDef(BaseModel): + otaUpdateId: Optional[str] = None + otaUpdateArn: Optional[str] = None + creationDate: Optional[datetime] = None + lastModifiedDate: Optional[datetime] = None + description: Optional[str] = None + targets: Optional[List[str]] = None + protocols: Optional[List[ProtocolType]] = None + awsJobExecutionsRolloutConfig: Optional[AwsJobExecutionsRolloutConfigTypeDef] = None + awsJobPresignedUrlConfig: Optional[AwsJobPresignedUrlConfigTypeDef] = None + targetSelection: Optional[TargetSelectionType] = None + otaUpdateFiles: Optional[List[OTAUpdateFileTypeDef]] = None + otaUpdateStatus: Optional[OTAUpdateStatusType] = None + awsIotJobId: Optional[str] = None + awsIotJobArn: Optional[str] = None + errorInfo: Optional[ErrorInfoTypeDef] = None + additionalParameters: Optional[Dict[str, str]] = None + +class CreateTopicRuleRequestRequestTypeDef(BaseModel): + ruleName: str + topicRulePayload: TopicRulePayloadTypeDef + tags: Optional[str] = None + +class ReplaceTopicRuleRequestRequestTypeDef(BaseModel): + ruleName: str + topicRulePayload: TopicRulePayloadTypeDef + +class GetTopicRuleResponseTypeDef(BaseModel): + ruleArn: str + rule: TopicRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOTAUpdateResponseTypeDef(BaseModel): + otaUpdateInfo: OTAUpdateInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iot_constants.py b/aws_resource_validator/pydantic_models/iot_constants.py new file mode 100644 index 00000000..0b46f734 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot_constants.py @@ -0,0 +1,679 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AbortActionType = Literal["CANCEL"] +ActionTypeType = Literal["CONNECT", "PUBLISH", "RECEIVE", "SUBSCRIBE"] +AggregationTypeNameType = Literal["Cardinality", "Percentiles", "Statistics"] +AlertTargetTypeType = Literal["SNS"] +AuditCheckRunStatusType = Literal["CANCELED", + "COMPLETED_COMPLIANT", + "COMPLETED_NON_COMPLIANT", + "FAILED", + "IN_PROGRESS", + "WAITING_FOR_DATA_COLLECTION",] +AuditFindingSeverityType = Literal["CRITICAL", "HIGH", "LOW", "MEDIUM"] +AuditFrequencyType = Literal["BIWEEKLY", "DAILY", "MONTHLY", "WEEKLY"] +AuditMitigationActionsExecutionStatusType = Literal["CANCELED", "COMPLETED", "FAILED", "IN_PROGRESS", "PENDING", "SKIPPED"] +AuditMitigationActionsTaskStatusType = Literal["CANCELED", "COMPLETED", "FAILED", "IN_PROGRESS"] +AuditNotificationTypeType = Literal["SNS"] +AuditTaskStatusType = Literal["CANCELED", "COMPLETED", "FAILED", "IN_PROGRESS"] +AuditTaskTypeType = Literal["ON_DEMAND_AUDIT_TASK", "SCHEDULED_AUDIT_TASK"] +AuthDecisionType = Literal["ALLOWED", "EXPLICIT_DENY", "IMPLICIT_DENY"] +AuthorizerStatusType = Literal["ACTIVE", "INACTIVE"] +AutoRegistrationStatusType = Literal["DISABLE", "ENABLE"] +AwsJobAbortCriteriaAbortActionType = Literal["CANCEL"] +AwsJobAbortCriteriaFailureTypeType = Literal["ALL", "FAILED", "REJECTED", "TIMED_OUT"] +BehaviorCriteriaTypeType = Literal["MACHINE_LEARNING", "STATIC", "STATISTICAL"] +CACertificateStatusType = Literal["ACTIVE", "INACTIVE"] +CACertificateUpdateActionType = Literal["DEACTIVATE"] +CannedAccessControlListType = Literal["authenticated-read", + "aws-exec-read", + "bucket-owner-full-control", + "bucket-owner-read", + "log-delivery-write", + "private", + "public-read", + "public-read-write",] +CertificateModeType = Literal["DEFAULT", "SNI_ONLY"] +CertificateProviderOperationType = Literal["CreateCertificateFromCsr"] +CertificateStatusType = Literal["ACTIVE", "INACTIVE", "PENDING_ACTIVATION", "PENDING_TRANSFER", "REGISTER_INACTIVE", "REVOKED"] +ComparisonOperatorType = Literal["greater-than", + "greater-than-equals", + "in-cidr-set", + "in-port-set", + "in-set", + "less-than", + "less-than-equals", + "not-in-cidr-set", + "not-in-port-set", + "not-in-set",] +ConfidenceLevelType = Literal["HIGH", "LOW", "MEDIUM"] +CustomMetricTypeType = Literal["ip-address-list", "number", "number-list", "string-list"] +DayOfWeekType = Literal["FRI", "MON", "SAT", "SUN", "THU", "TUE", "WED"] +DetectMitigationActionExecutionStatusType = Literal["FAILED", "IN_PROGRESS", "SKIPPED", "SUCCESSFUL"] +DetectMitigationActionsTaskStatusType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "SUCCESSFUL"] +DeviceCertificateUpdateActionType = Literal["DEACTIVATE"] +DeviceDefenderIndexingModeType = Literal["OFF", "VIOLATIONS"] +DimensionTypeType = Literal["TOPIC_FILTER"] +DimensionValueOperatorType = Literal["IN", "NOT_IN"] +DomainConfigurationStatusType = Literal["DISABLED", "ENABLED"] +DomainTypeType = Literal["AWS_MANAGED", "CUSTOMER_MANAGED", "ENDPOINT"] +DynamicGroupStatusType = Literal["ACTIVE", "BUILDING", "REBUILDING"] +DynamoKeyTypeType = Literal["NUMBER", "STRING"] +EventTypeType = Literal["CA_CERTIFICATE", + "CERTIFICATE", + "JOB", + "JOB_EXECUTION", + "POLICY", + "THING", + "THING_GROUP", + "THING_GROUP_HIERARCHY", + "THING_GROUP_MEMBERSHIP", + "THING_TYPE", + "THING_TYPE_ASSOCIATION",] +FieldTypeType = Literal["Boolean", "Number", "String"] +FleetMetricUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +GetBehaviorModelTrainingSummariesPaginatorName = Literal["get_behavior_model_training_summaries"] +IndexStatusType = Literal["ACTIVE", "BUILDING", "REBUILDING"] +JobEndBehaviorType = Literal["CANCEL", "FORCE_CANCEL", "STOP_ROLLOUT"] +JobExecutionFailureTypeType = Literal["ALL", "FAILED", "REJECTED", "TIMED_OUT"] +JobExecutionStatusType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "QUEUED", "REJECTED", "REMOVED", "SUCCEEDED", "TIMED_OUT"] +JobStatusType = Literal["CANCELED", "COMPLETED", "DELETION_IN_PROGRESS", "IN_PROGRESS", "SCHEDULED"] +ListActiveViolationsPaginatorName = Literal["list_active_violations"] +ListAttachedPoliciesPaginatorName = Literal["list_attached_policies"] +ListAuditFindingsPaginatorName = Literal["list_audit_findings"] +ListAuditMitigationActionsExecutionsPaginatorName = Literal["list_audit_mitigation_actions_executions"] +ListAuditMitigationActionsTasksPaginatorName = Literal["list_audit_mitigation_actions_tasks"] +ListAuditSuppressionsPaginatorName = Literal["list_audit_suppressions"] +ListAuditTasksPaginatorName = Literal["list_audit_tasks"] +ListAuthorizersPaginatorName = Literal["list_authorizers"] +ListBillingGroupsPaginatorName = Literal["list_billing_groups"] +ListCACertificatesPaginatorName = Literal["list_ca_certificates"] +ListCertificatesByCAPaginatorName = Literal["list_certificates_by_ca"] +ListCertificatesPaginatorName = Literal["list_certificates"] +ListCustomMetricsPaginatorName = Literal["list_custom_metrics"] +ListDetectMitigationActionsExecutionsPaginatorName = Literal["list_detect_mitigation_actions_executions"] +ListDetectMitigationActionsTasksPaginatorName = Literal["list_detect_mitigation_actions_tasks"] +ListDimensionsPaginatorName = Literal["list_dimensions"] +ListDomainConfigurationsPaginatorName = Literal["list_domain_configurations"] +ListFleetMetricsPaginatorName = Literal["list_fleet_metrics"] +ListIndicesPaginatorName = Literal["list_indices"] +ListJobExecutionsForJobPaginatorName = Literal["list_job_executions_for_job"] +ListJobExecutionsForThingPaginatorName = Literal["list_job_executions_for_thing"] +ListJobTemplatesPaginatorName = Literal["list_job_templates"] +ListJobsPaginatorName = Literal["list_jobs"] +ListManagedJobTemplatesPaginatorName = Literal["list_managed_job_templates"] +ListMetricValuesPaginatorName = Literal["list_metric_values"] +ListMitigationActionsPaginatorName = Literal["list_mitigation_actions"] +ListOTAUpdatesPaginatorName = Literal["list_ota_updates"] +ListOutgoingCertificatesPaginatorName = Literal["list_outgoing_certificates"] +ListPackageVersionsPaginatorName = Literal["list_package_versions"] +ListPackagesPaginatorName = Literal["list_packages"] +ListPoliciesPaginatorName = Literal["list_policies"] +ListPolicyPrincipalsPaginatorName = Literal["list_policy_principals"] +ListPrincipalPoliciesPaginatorName = Literal["list_principal_policies"] +ListPrincipalThingsPaginatorName = Literal["list_principal_things"] +ListProvisioningTemplateVersionsPaginatorName = Literal["list_provisioning_template_versions"] +ListProvisioningTemplatesPaginatorName = Literal["list_provisioning_templates"] +ListRelatedResourcesForAuditFindingPaginatorName = Literal["list_related_resources_for_audit_finding"] +ListRoleAliasesPaginatorName = Literal["list_role_aliases"] +ListScheduledAuditsPaginatorName = Literal["list_scheduled_audits"] +ListSecurityProfilesForTargetPaginatorName = Literal["list_security_profiles_for_target"] +ListSecurityProfilesPaginatorName = Literal["list_security_profiles"] +ListStreamsPaginatorName = Literal["list_streams"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListTargetsForPolicyPaginatorName = Literal["list_targets_for_policy"] +ListTargetsForSecurityProfilePaginatorName = Literal["list_targets_for_security_profile"] +ListThingGroupsForThingPaginatorName = Literal["list_thing_groups_for_thing"] +ListThingGroupsPaginatorName = Literal["list_thing_groups"] +ListThingPrincipalsPaginatorName = Literal["list_thing_principals"] +ListThingRegistrationTaskReportsPaginatorName = Literal["list_thing_registration_task_reports"] +ListThingRegistrationTasksPaginatorName = Literal["list_thing_registration_tasks"] +ListThingTypesPaginatorName = Literal["list_thing_types"] +ListThingsInBillingGroupPaginatorName = Literal["list_things_in_billing_group"] +ListThingsInThingGroupPaginatorName = Literal["list_things_in_thing_group"] +ListThingsPaginatorName = Literal["list_things"] +ListTopicRuleDestinationsPaginatorName = Literal["list_topic_rule_destinations"] +ListTopicRulesPaginatorName = Literal["list_topic_rules"] +ListV2LoggingLevelsPaginatorName = Literal["list_v2_logging_levels"] +ListViolationEventsPaginatorName = Literal["list_violation_events"] +LogLevelType = Literal["DEBUG", "DISABLED", "ERROR", "INFO", "WARN"] +LogTargetTypeType = Literal["CLIENT_ID", "DEFAULT", "PRINCIPAL_ID", "SOURCE_IP", "THING_GROUP"] +MessageFormatType = Literal["JSON", "RAW"] +MitigationActionTypeType = Literal["ADD_THINGS_TO_THING_GROUP", + "ENABLE_IOT_LOGGING", + "PUBLISH_FINDING_TO_SNS", + "REPLACE_DEFAULT_POLICY_VERSION", + "UPDATE_CA_CERTIFICATE", + "UPDATE_DEVICE_CERTIFICATE",] +ModelStatusType = Literal["ACTIVE", "EXPIRED", "PENDING_BUILD"] +NamedShadowIndexingModeType = Literal["OFF", "ON"] +OTAUpdateStatusType = Literal["CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_PENDING", + "DELETE_FAILED", + "DELETE_IN_PROGRESS",] +PackageVersionActionType = Literal["DEPRECATE", "PUBLISH"] +PackageVersionStatusType = Literal["DEPRECATED", "DRAFT", "PUBLISHED"] +PolicyTemplateNameType = Literal["BLANK_POLICY"] +ProtocolType = Literal["HTTP", "MQTT"] +ReportTypeType = Literal["ERRORS", "RESULTS"] +ResourceTypeType = Literal["ACCOUNT_SETTINGS", + "CA_CERTIFICATE", + "CLIENT_ID", + "COGNITO_IDENTITY_POOL", + "DEVICE_CERTIFICATE", + "IAM_ROLE", + "IOT_POLICY", + "ISSUER_CERTIFICATE", + "ROLE_ALIAS",] +RetryableFailureTypeType = Literal["ALL", "FAILED", "TIMED_OUT"] +ServerCertificateStatusType = Literal["INVALID", "VALID"] +ServiceTypeType = Literal["CREDENTIAL_PROVIDER", "DATA", "JOBS"] +StatusType = Literal["Cancelled", "Cancelling", "Completed", "Failed", "InProgress"] +TargetFieldOrderType = Literal["LatLon", "LonLat"] +TargetSelectionType = Literal["CONTINUOUS", "SNAPSHOT"] +TemplateTypeType = Literal["FLEET_PROVISIONING", "JITP"] +ThingConnectivityIndexingModeType = Literal["OFF", "STATUS"] +ThingGroupIndexingModeType = Literal["OFF", "ON"] +ThingIndexingModeType = Literal["OFF", "REGISTRY", "REGISTRY_AND_SHADOW"] +TopicRuleDestinationStatusType = Literal["DELETING", "DISABLED", "ENABLED", "ERROR", "IN_PROGRESS"] +VerificationStateType = Literal["BENIGN_POSITIVE", "FALSE_POSITIVE", "TRUE_POSITIVE", "UNKNOWN"] +ViolationEventTypeType = Literal["alarm-cleared", "alarm-invalidated", "in-alarm"] +IoTServiceName = Literal["iot"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_behavior_model_training_summaries", + "list_active_violations", + "list_attached_policies", + "list_audit_findings", + "list_audit_mitigation_actions_executions", + "list_audit_mitigation_actions_tasks", + "list_audit_suppressions", + "list_audit_tasks", + "list_authorizers", + "list_billing_groups", + "list_ca_certificates", + "list_certificates", + "list_certificates_by_ca", + "list_custom_metrics", + "list_detect_mitigation_actions_executions", + "list_detect_mitigation_actions_tasks", + "list_dimensions", + "list_domain_configurations", + "list_fleet_metrics", + "list_indices", + "list_job_executions_for_job", + "list_job_executions_for_thing", + "list_job_templates", + "list_jobs", + "list_managed_job_templates", + "list_metric_values", + "list_mitigation_actions", + "list_ota_updates", + "list_outgoing_certificates", + "list_package_versions", + "list_packages", + "list_policies", + "list_policy_principals", + "list_principal_policies", + "list_principal_things", + "list_provisioning_template_versions", + "list_provisioning_templates", + "list_related_resources_for_audit_finding", + "list_role_aliases", + "list_scheduled_audits", + "list_security_profiles", + "list_security_profiles_for_target", + "list_streams", + "list_tags_for_resource", + "list_targets_for_policy", + "list_targets_for_security_profile", + "list_thing_groups", + "list_thing_groups_for_thing", + "list_thing_principals", + "list_thing_registration_task_reports", + "list_thing_registration_tasks", + "list_thing_types", + "list_things", + "list_things_in_billing_group", + "list_things_in_thing_group", + "list_topic_rule_destinations", + "list_topic_rules", + "list_v2_logging_levels", + "list_violation_events",] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/iot_data_classes.py b/aws_resource_validator/pydantic_models/iot_data_classes.py new file mode 100644 index 00000000..a87b702e --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot_data_classes.py @@ -0,0 +1,105 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iot_data_constants import * + +class DeleteThingShadowRequestRequestTypeDef(BaseModel): + thingName: str + shadowName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetRetainedMessageRequestRequestTypeDef(BaseModel): + topic: str + +class GetThingShadowRequestRequestTypeDef(BaseModel): + thingName: str + shadowName: Optional[str] = None + +class ListNamedShadowsForThingRequestRequestTypeDef(BaseModel): + thingName: str + nextToken: Optional[str] = None + pageSize: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRetainedMessagesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RetainedMessageSummaryTypeDef(BaseModel): + topic: Optional[str] = None + payloadSize: Optional[int] = None + qos: Optional[int] = None + lastModifiedTime: Optional[int] = None + +class PublishRequestRequestTypeDef(BaseModel): + topic: str + qos: Optional[int] = None + retain: Optional[bool] = None + payload: Optional[BlobTypeDef] = None + userProperties: Optional[str] = None + payloadFormatIndicator: Optional[PayloadFormatIndicatorType] = None + contentType: Optional[str] = None + responseTopic: Optional[str] = None + correlationData: Optional[str] = None + messageExpiry: Optional[int] = None + +class UpdateThingShadowRequestRequestTypeDef(BaseModel): + thingName: str + payload: BlobTypeDef + shadowName: Optional[str] = None + +class DeleteThingShadowResponseTypeDef(BaseModel): + payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetRetainedMessageResponseTypeDef(BaseModel): + topic: str + payload: bytes + qos: int + lastModifiedTime: int + userProperties: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class GetThingShadowResponseTypeDef(BaseModel): + payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ListNamedShadowsForThingResponseTypeDef(BaseModel): + results: List[str] + nextToken: str + timestamp: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateThingShadowResponseTypeDef(BaseModel): + payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ListRetainedMessagesRequestListRetainedMessagesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRetainedMessagesResponseTypeDef(BaseModel): + retainedTopics: List[RetainedMessageSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iot_data_constants.py b/aws_resource_validator/pydantic_models/iot_data_constants.py new file mode 100644 index 00000000..bec136c7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot_data_constants.py @@ -0,0 +1,411 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListRetainedMessagesPaginatorName = Literal["list_retained_messages"] +PayloadFormatIndicatorType = Literal["UNSPECIFIED_BYTES", "UTF8_DATA"] +IoTDataPlaneServiceName = Literal["iot-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_retained_messages"] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/iot_jobs_data_classes.py b/aws_resource_validator/pydantic_models/iot_jobs_data_classes.py new file mode 100644 index 00000000..c4b6c0c1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot_jobs_data_classes.py @@ -0,0 +1,89 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iot_jobs_data_constants import * + +class DescribeJobExecutionRequestRequestTypeDef(BaseModel): + jobId: str + thingName: str + includeJobDocument: Optional[bool] = None + executionNumber: Optional[int] = None + +class JobExecutionTypeDef(BaseModel): + jobId: Optional[str] = None + thingName: Optional[str] = None + status: Optional[JobExecutionStatusType] = None + statusDetails: Optional[Dict[str, str]] = None + queuedAt: Optional[int] = None + startedAt: Optional[int] = None + lastUpdatedAt: Optional[int] = None + approximateSecondsBeforeTimedOut: Optional[int] = None + versionNumber: Optional[int] = None + executionNumber: Optional[int] = None + jobDocument: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetPendingJobExecutionsRequestRequestTypeDef(BaseModel): + thingName: str + +class JobExecutionSummaryTypeDef(BaseModel): + jobId: Optional[str] = None + queuedAt: Optional[int] = None + startedAt: Optional[int] = None + lastUpdatedAt: Optional[int] = None + versionNumber: Optional[int] = None + executionNumber: Optional[int] = None + +class JobExecutionStateTypeDef(BaseModel): + status: Optional[JobExecutionStatusType] = None + statusDetails: Optional[Dict[str, str]] = None + versionNumber: Optional[int] = None + +class StartNextPendingJobExecutionRequestRequestTypeDef(BaseModel): + thingName: str + statusDetails: Optional[Mapping[str, str]] = None + stepTimeoutInMinutes: Optional[int] = None + +class UpdateJobExecutionRequestRequestTypeDef(BaseModel): + jobId: str + thingName: str + status: JobExecutionStatusType + statusDetails: Optional[Mapping[str, str]] = None + stepTimeoutInMinutes: Optional[int] = None + expectedVersion: Optional[int] = None + includeJobExecutionState: Optional[bool] = None + includeJobDocument: Optional[bool] = None + executionNumber: Optional[int] = None + +class DescribeJobExecutionResponseTypeDef(BaseModel): + execution: JobExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartNextPendingJobExecutionResponseTypeDef(BaseModel): + execution: JobExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPendingJobExecutionsResponseTypeDef(BaseModel): + inProgressJobs: List[JobExecutionSummaryTypeDef] + queuedJobs: List[JobExecutionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobExecutionResponseTypeDef(BaseModel): + executionState: JobExecutionStateTypeDef + jobDocument: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iot_jobs_data_constants.py b/aws_resource_validator/pydantic_models/iot_jobs_data_constants.py new file mode 100644 index 00000000..95f448f2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iot_jobs_data_constants.py @@ -0,0 +1,407 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +JobExecutionStatusType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "QUEUED", "REJECTED", "REMOVED", "SUCCEEDED", "TIMED_OUT"] +IoTJobsDataPlaneServiceName = Literal["iot-jobs-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/iotanalytics_classes.py b/aws_resource_validator/pydantic_models/iotanalytics_classes.py new file mode 100644 index 00000000..1d71a212 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotanalytics_classes.py @@ -0,0 +1,683 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotanalytics_constants import * + +class AddAttributesActivityTypeDef(BaseModel): + name: str + attributes: Mapping[str, str] + next: Optional[str] = None + +class BatchPutMessageErrorEntryTypeDef(BaseModel): + messageId: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CancelPipelineReprocessingRequestRequestTypeDef(BaseModel): + pipelineName: str + reprocessingId: str + +class ChannelActivityTypeDef(BaseModel): + name: str + channelName: str + next: Optional[str] = None + +class ChannelMessagesTypeDef(BaseModel): + s3Paths: Optional[Sequence[str]] = None + +class EstimatedResourceSizeTypeDef(BaseModel): + estimatedSizeInBytes: Optional[float] = None + estimatedOn: Optional[datetime] = None + +class CustomerManagedChannelS3StorageSummaryTypeDef(BaseModel): + bucket: Optional[str] = None + keyPrefix: Optional[str] = None + roleArn: Optional[str] = None + +class CustomerManagedChannelS3StorageTypeDef(BaseModel): + bucket: str + roleArn: str + keyPrefix: Optional[str] = None + +class RetentionPeriodTypeDef(BaseModel): + unlimited: Optional[bool] = None + numberOfDays: Optional[int] = None + +class ColumnTypeDef(BaseModel): + name: str + type: str + +class ResourceConfigurationTypeDef(BaseModel): + computeType: ComputeTypeType + volumeSizeInGB: int + +class TagTypeDef(BaseModel): + key: str + value: str + +class CreateDatasetContentRequestRequestTypeDef(BaseModel): + datasetName: str + versionId: Optional[str] = None + +class VersioningConfigurationTypeDef(BaseModel): + unlimited: Optional[bool] = None + maxVersions: Optional[int] = None + +class CustomerManagedDatastoreS3StorageSummaryTypeDef(BaseModel): + bucket: Optional[str] = None + keyPrefix: Optional[str] = None + roleArn: Optional[str] = None + +class CustomerManagedDatastoreS3StorageTypeDef(BaseModel): + bucket: str + roleArn: str + keyPrefix: Optional[str] = None + +class DatasetActionSummaryTypeDef(BaseModel): + actionName: Optional[str] = None + actionType: Optional[DatasetActionTypeType] = None + +class IotEventsDestinationConfigurationTypeDef(BaseModel): + inputName: str + roleArn: str + +class DatasetContentStatusTypeDef(BaseModel): + state: Optional[DatasetContentStateType] = None + reason: Optional[str] = None + +class DatasetContentVersionValueTypeDef(BaseModel): + datasetName: str + +class DatasetEntryTypeDef(BaseModel): + entryName: Optional[str] = None + dataURI: Optional[str] = None + +class ScheduleTypeDef(BaseModel): + expression: Optional[str] = None + +class TriggeringDatasetTypeDef(BaseModel): + name: str + +class DatastoreActivityTypeDef(BaseModel): + name: str + datastoreName: str + +class IotSiteWiseCustomerManagedDatastoreS3StorageSummaryTypeDef(BaseModel): + bucket: Optional[str] = None + keyPrefix: Optional[str] = None + +class IotSiteWiseCustomerManagedDatastoreS3StorageTypeDef(BaseModel): + bucket: str + keyPrefix: Optional[str] = None + +class PartitionTypeDef(BaseModel): + attributeName: str + +class TimestampPartitionTypeDef(BaseModel): + attributeName: str + timestampFormat: Optional[str] = None + +class DeleteChannelRequestRequestTypeDef(BaseModel): + channelName: str + +class DeleteDatasetContentRequestRequestTypeDef(BaseModel): + datasetName: str + versionId: Optional[str] = None + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + datasetName: str + +class DeleteDatastoreRequestRequestTypeDef(BaseModel): + datastoreName: str + +class DeletePipelineRequestRequestTypeDef(BaseModel): + pipelineName: str + +class DeltaTimeSessionWindowConfigurationTypeDef(BaseModel): + timeoutInMinutes: int + +class DeltaTimeTypeDef(BaseModel): + offsetSeconds: int + timeExpression: str + +class DescribeChannelRequestRequestTypeDef(BaseModel): + channelName: str + includeStatistics: Optional[bool] = None + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + datasetName: str + +class DescribeDatastoreRequestRequestTypeDef(BaseModel): + datastoreName: str + includeStatistics: Optional[bool] = None + +class LoggingOptionsTypeDef(BaseModel): + roleArn: str + level: Literal["ERROR"] + enabled: bool + +class DescribePipelineRequestRequestTypeDef(BaseModel): + pipelineName: str + +class DeviceRegistryEnrichActivityTypeDef(BaseModel): + name: str + attribute: str + thingName: str + roleArn: str + next: Optional[str] = None + +class DeviceShadowEnrichActivityTypeDef(BaseModel): + name: str + attribute: str + thingName: str + roleArn: str + next: Optional[str] = None + +class FilterActivityTypeDef(BaseModel): + name: str + filter: str + next: Optional[str] = None + +class GetDatasetContentRequestRequestTypeDef(BaseModel): + datasetName: str + versionId: Optional[str] = None + +class GlueConfigurationTypeDef(BaseModel): + tableName: str + databaseName: str + +class LambdaActivityTypeDef(BaseModel): + name: str + lambdaName: str + batchSize: int + next: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatastoresRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPipelinesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MathActivityTypeDef(BaseModel): + name: str + attribute: str + math: str + next: Optional[str] = None + +class OutputFileUriValueTypeDef(BaseModel): + fileName: str + +class RemoveAttributesActivityTypeDef(BaseModel): + name: str + attributes: Sequence[str] + next: Optional[str] = None + +class SelectAttributesActivityTypeDef(BaseModel): + name: str + attributes: Sequence[str] + next: Optional[str] = None + +class ReprocessingSummaryTypeDef(BaseModel): + id: Optional[str] = None + status: Optional[ReprocessingStatusType] = None + creationTime: Optional[datetime] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class BatchPutMessageResponseTypeDef(BaseModel): + batchPutMessageErrorEntries: List[BatchPutMessageErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetContentResponseTypeDef(BaseModel): + versionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePipelineResponseTypeDef(BaseModel): + pipelineName: str + pipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class RunPipelineActivityResponseTypeDef(BaseModel): + payloads: List[bytes] + logResult: str + ResponseMetadata: ResponseMetadataTypeDef + +class SampleChannelDataResponseTypeDef(BaseModel): + payloads: List[bytes] + ResponseMetadata: ResponseMetadataTypeDef + +class StartPipelineReprocessingResponseTypeDef(BaseModel): + reprocessingId: str + ResponseMetadata: ResponseMetadataTypeDef + +class MessageTypeDef(BaseModel): + messageId: str + payload: BlobTypeDef + +class ChannelStatisticsTypeDef(BaseModel): + size: Optional[EstimatedResourceSizeTypeDef] = None + +class DatastoreStatisticsTypeDef(BaseModel): + size: Optional[EstimatedResourceSizeTypeDef] = None + +class ChannelStorageSummaryTypeDef(BaseModel): + serviceManagedS3: Optional[Dict[str, Any]] = None + customerManagedS3: Optional[CustomerManagedChannelS3StorageSummaryTypeDef] = None + +class ChannelStorageTypeDef(BaseModel): + serviceManagedS3: Optional[Mapping[str, Any]] = None + customerManagedS3: Optional[CustomerManagedChannelS3StorageTypeDef] = None + +class CreateChannelResponseTypeDef(BaseModel): + channelName: str + channelArn: str + retentionPeriod: RetentionPeriodTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetResponseTypeDef(BaseModel): + datasetName: str + datasetArn: str + retentionPeriod: RetentionPeriodTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatastoreResponseTypeDef(BaseModel): + datastoreName: str + datastoreArn: str + retentionPeriod: RetentionPeriodTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SchemaDefinitionTypeDef(BaseModel): + columns: Optional[Sequence[ColumnTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class DatasetContentSummaryTypeDef(BaseModel): + version: Optional[str] = None + status: Optional[DatasetContentStatusTypeDef] = None + creationTime: Optional[datetime] = None + scheduleTime: Optional[datetime] = None + completionTime: Optional[datetime] = None + +class GetDatasetContentResponseTypeDef(BaseModel): + entries: List[DatasetEntryTypeDef] + timestamp: datetime + status: DatasetContentStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetTriggerTypeDef(BaseModel): + schedule: Optional[ScheduleTypeDef] = None + dataset: Optional[TriggeringDatasetTypeDef] = None + +class DatastoreIotSiteWiseMultiLayerStorageSummaryTypeDef(BaseModel): + customerManagedS3Storage: Optional[ IotSiteWiseCustomerManagedDatastoreS3StorageSummaryTypeDef ] = None + +class DatastoreIotSiteWiseMultiLayerStorageTypeDef(BaseModel): + customerManagedS3Storage: IotSiteWiseCustomerManagedDatastoreS3StorageTypeDef + +class DatastorePartitionTypeDef(BaseModel): + attributePartition: Optional[PartitionTypeDef] = None + timestampPartition: Optional[TimestampPartitionTypeDef] = None + +class LateDataRuleConfigurationTypeDef(BaseModel): + deltaTimeSessionWindowConfiguration: Optional[ DeltaTimeSessionWindowConfigurationTypeDef ] = None + +class QueryFilterTypeDef(BaseModel): + deltaTime: Optional[DeltaTimeTypeDef] = None + +class DescribeLoggingOptionsResponseTypeDef(BaseModel): + loggingOptions: LoggingOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingOptionsRequestRequestTypeDef(BaseModel): + loggingOptions: LoggingOptionsTypeDef + +class S3DestinationConfigurationTypeDef(BaseModel): + bucket: str + key: str + roleArn: str + glueConfiguration: Optional[GlueConfigurationTypeDef] = None + +class ListChannelsRequestListChannelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetsRequestListDatasetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatastoresRequestListDatastoresPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelinesRequestListPipelinesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetContentsRequestListDatasetContentsPaginateTypeDef(BaseModel): + datasetName: str + scheduledOnOrAfter: Optional[TimestampTypeDef] = None + scheduledBefore: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetContentsRequestRequestTypeDef(BaseModel): + datasetName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + scheduledOnOrAfter: Optional[TimestampTypeDef] = None + scheduledBefore: Optional[TimestampTypeDef] = None + +class SampleChannelDataRequestRequestTypeDef(BaseModel): + channelName: str + maxMessages: Optional[int] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + +class StartPipelineReprocessingRequestRequestTypeDef(BaseModel): + pipelineName: str + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + channelMessages: Optional[ChannelMessagesTypeDef] = None + +class VariableTypeDef(BaseModel): + name: str + stringValue: Optional[str] = None + doubleValue: Optional[float] = None + datasetContentVersionValue: Optional[DatasetContentVersionValueTypeDef] = None + outputFileUriValue: Optional[OutputFileUriValueTypeDef] = None + +class PipelineActivityTypeDef(BaseModel): + channel: Optional[ChannelActivityTypeDef] = None + lambda: Optional[LambdaActivityTypeDef] = None + datastore: Optional[DatastoreActivityTypeDef] = None + addAttributes: Optional[AddAttributesActivityTypeDef] = None + removeAttributes: Optional[RemoveAttributesActivityTypeDef] = None + selectAttributes: Optional[SelectAttributesActivityTypeDef] = None + filter: Optional[FilterActivityTypeDef] = None + math: Optional[MathActivityTypeDef] = None + deviceRegistryEnrich: Optional[DeviceRegistryEnrichActivityTypeDef] = None + deviceShadowEnrich: Optional[DeviceShadowEnrichActivityTypeDef] = None + +class PipelineSummaryTypeDef(BaseModel): + pipelineName: Optional[str] = None + reprocessingSummaries: Optional[List[ReprocessingSummaryTypeDef]] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class BatchPutMessageRequestRequestTypeDef(BaseModel): + channelName: str + messages: Sequence[MessageTypeDef] + +class ChannelSummaryTypeDef(BaseModel): + channelName: Optional[str] = None + channelStorage: Optional[ChannelStorageSummaryTypeDef] = None + status: Optional[ChannelStatusType] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + lastMessageArrivalTime: Optional[datetime] = None + +class ChannelTypeDef(BaseModel): + name: Optional[str] = None + storage: Optional[ChannelStorageTypeDef] = None + arn: Optional[str] = None + status: Optional[ChannelStatusType] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + lastMessageArrivalTime: Optional[datetime] = None + +class CreateChannelRequestRequestTypeDef(BaseModel): + channelName: str + channelStorage: Optional[ChannelStorageTypeDef] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateChannelRequestRequestTypeDef(BaseModel): + channelName: str + channelStorage: Optional[ChannelStorageTypeDef] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + +class ParquetConfigurationTypeDef(BaseModel): + schemaDefinition: Optional[SchemaDefinitionTypeDef] = None + +class ListDatasetContentsResponseTypeDef(BaseModel): + datasetContentSummaries: List[DatasetContentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetSummaryTypeDef(BaseModel): + datasetName: Optional[str] = None + status: Optional[DatasetStatusType] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + triggers: Optional[List[DatasetTriggerTypeDef]] = None + actions: Optional[List[DatasetActionSummaryTypeDef]] = None + +class DatastoreStorageSummaryTypeDef(BaseModel): + serviceManagedS3: Optional[Dict[str, Any]] = None + customerManagedS3: Optional[CustomerManagedDatastoreS3StorageSummaryTypeDef] = None + iotSiteWiseMultiLayerStorage: Optional[ DatastoreIotSiteWiseMultiLayerStorageSummaryTypeDef ] = None + +class DatastoreStorageTypeDef(BaseModel): + serviceManagedS3: Optional[Mapping[str, Any]] = None + customerManagedS3: Optional[CustomerManagedDatastoreS3StorageTypeDef] = None + iotSiteWiseMultiLayerStorage: Optional[DatastoreIotSiteWiseMultiLayerStorageTypeDef] = None + +class DatastorePartitionsPaginatorTypeDef(BaseModel): + partitions: Optional[List[DatastorePartitionTypeDef]] = None + +class DatastorePartitionsTypeDef(BaseModel): + partitions: Optional[Sequence[DatastorePartitionTypeDef]] = None + +class LateDataRuleTypeDef(BaseModel): + ruleConfiguration: LateDataRuleConfigurationTypeDef + ruleName: Optional[str] = None + +class SqlQueryDatasetActionTypeDef(BaseModel): + sqlQuery: str + filters: Optional[Sequence[QueryFilterTypeDef]] = None + +class DatasetContentDeliveryDestinationTypeDef(BaseModel): + iotEventsDestinationConfiguration: Optional[IotEventsDestinationConfigurationTypeDef] = None + s3DestinationConfiguration: Optional[S3DestinationConfigurationTypeDef] = None + +class ContainerDatasetActionTypeDef(BaseModel): + image: str + executionRoleArn: str + resourceConfiguration: ResourceConfigurationTypeDef + variables: Optional[Sequence[VariableTypeDef]] = None + +class CreatePipelineRequestRequestTypeDef(BaseModel): + pipelineName: str + pipelineActivities: Sequence[PipelineActivityTypeDef] + tags: Optional[Sequence[TagTypeDef]] = None + +class PipelineTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + activities: Optional[List[PipelineActivityTypeDef]] = None + reprocessingSummaries: Optional[List[ReprocessingSummaryTypeDef]] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class RunPipelineActivityRequestRequestTypeDef(BaseModel): + pipelineActivity: PipelineActivityTypeDef + payloads: Sequence[BlobTypeDef] + +class UpdatePipelineRequestRequestTypeDef(BaseModel): + pipelineName: str + pipelineActivities: Sequence[PipelineActivityTypeDef] + +class ListPipelinesResponseTypeDef(BaseModel): + pipelineSummaries: List[PipelineSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsResponseTypeDef(BaseModel): + channelSummaries: List[ChannelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelResponseTypeDef(BaseModel): + channel: ChannelTypeDef + statistics: ChannelStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FileFormatConfigurationTypeDef(BaseModel): + jsonConfiguration: Optional[Mapping[str, Any]] = None + parquetConfiguration: Optional[ParquetConfigurationTypeDef] = None + +class ListDatasetsResponseTypeDef(BaseModel): + datasetSummaries: List[DatasetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatastoreSummaryPaginatorTypeDef(BaseModel): + datastoreName: Optional[str] = None + datastoreStorage: Optional[DatastoreStorageSummaryTypeDef] = None + status: Optional[DatastoreStatusType] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + lastMessageArrivalTime: Optional[datetime] = None + fileFormatType: Optional[FileFormatTypeType] = None + datastorePartitions: Optional[DatastorePartitionsPaginatorTypeDef] = None + +class DatastoreSummaryTypeDef(BaseModel): + datastoreName: Optional[str] = None + datastoreStorage: Optional[DatastoreStorageSummaryTypeDef] = None + status: Optional[DatastoreStatusType] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + lastMessageArrivalTime: Optional[datetime] = None + fileFormatType: Optional[FileFormatTypeType] = None + datastorePartitions: Optional[DatastorePartitionsTypeDef] = None + +class DatasetContentDeliveryRuleTypeDef(BaseModel): + destination: DatasetContentDeliveryDestinationTypeDef + entryName: Optional[str] = None + +class DatasetActionTypeDef(BaseModel): + actionName: Optional[str] = None + queryAction: Optional[SqlQueryDatasetActionTypeDef] = None + containerAction: Optional[ContainerDatasetActionTypeDef] = None + +class DescribePipelineResponseTypeDef(BaseModel): + pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatastoreRequestRequestTypeDef(BaseModel): + datastoreName: str + datastoreStorage: Optional[DatastoreStorageTypeDef] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + fileFormatConfiguration: Optional[FileFormatConfigurationTypeDef] = None + datastorePartitions: Optional[DatastorePartitionsTypeDef] = None + +class DatastoreTypeDef(BaseModel): + name: Optional[str] = None + storage: Optional[DatastoreStorageTypeDef] = None + arn: Optional[str] = None + status: Optional[DatastoreStatusType] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + lastMessageArrivalTime: Optional[datetime] = None + fileFormatConfiguration: Optional[FileFormatConfigurationTypeDef] = None + datastorePartitions: Optional[DatastorePartitionsTypeDef] = None + +class UpdateDatastoreRequestRequestTypeDef(BaseModel): + datastoreName: str + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + datastoreStorage: Optional[DatastoreStorageTypeDef] = None + fileFormatConfiguration: Optional[FileFormatConfigurationTypeDef] = None + +class ListDatastoresResponsePaginatorTypeDef(BaseModel): + datastoreSummaries: List[DatastoreSummaryPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatastoresResponseTypeDef(BaseModel): + datastoreSummaries: List[DatastoreSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetRequestRequestTypeDef(BaseModel): + datasetName: str + actions: Sequence[DatasetActionTypeDef] + triggers: Optional[Sequence[DatasetTriggerTypeDef]] = None + contentDeliveryRules: Optional[Sequence[DatasetContentDeliveryRuleTypeDef]] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + versioningConfiguration: Optional[VersioningConfigurationTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + lateDataRules: Optional[Sequence[LateDataRuleTypeDef]] = None + +class DatasetTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + actions: Optional[List[DatasetActionTypeDef]] = None + triggers: Optional[List[DatasetTriggerTypeDef]] = None + contentDeliveryRules: Optional[List[DatasetContentDeliveryRuleTypeDef]] = None + status: Optional[DatasetStatusType] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + versioningConfiguration: Optional[VersioningConfigurationTypeDef] = None + lateDataRules: Optional[List[LateDataRuleTypeDef]] = None + +class UpdateDatasetRequestRequestTypeDef(BaseModel): + datasetName: str + actions: Sequence[DatasetActionTypeDef] + triggers: Optional[Sequence[DatasetTriggerTypeDef]] = None + contentDeliveryRules: Optional[Sequence[DatasetContentDeliveryRuleTypeDef]] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + versioningConfiguration: Optional[VersioningConfigurationTypeDef] = None + lateDataRules: Optional[Sequence[LateDataRuleTypeDef]] = None + +class DescribeDatastoreResponseTypeDef(BaseModel): + datastore: DatastoreTypeDef + statistics: DatastoreStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetResponseTypeDef(BaseModel): + dataset: DatasetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotanalytics_constants.py b/aws_resource_validator/pydantic_models/iotanalytics_constants.py new file mode 100644 index 00000000..4189fcc6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotanalytics_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChannelStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +ComputeTypeType = Literal["ACU_1", "ACU_2"] +DatasetActionTypeType = Literal["CONTAINER", "QUERY"] +DatasetContentStateType = Literal["CREATING", "FAILED", "SUCCEEDED"] +DatasetStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +DatastoreStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +FileFormatTypeType = Literal["JSON", "PARQUET"] +ListChannelsPaginatorName = Literal["list_channels"] +ListDatasetContentsPaginatorName = Literal["list_dataset_contents"] +ListDatasetsPaginatorName = Literal["list_datasets"] +ListDatastoresPaginatorName = Literal["list_datastores"] +ListPipelinesPaginatorName = Literal["list_pipelines"] +LoggingLevelType = Literal["ERROR"] +ReprocessingStatusType = Literal["CANCELLED", "FAILED", "RUNNING", "SUCCEEDED"] +IoTAnalyticsServiceName = Literal["iotanalytics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_channels", "list_dataset_contents", "list_datasets", "list_datastores", "list_pipelines"] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/iotdeviceadvisor_classes.py b/aws_resource_validator/pydantic_models/iotdeviceadvisor_classes.py new file mode 100644 index 00000000..11ff287c --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotdeviceadvisor_classes.py @@ -0,0 +1,217 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotdeviceadvisor_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteSuiteDefinitionRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + +class DeviceUnderTestTypeDef(BaseModel): + thingArn: Optional[str] = None + certificateArn: Optional[str] = None + deviceRoleArn: Optional[str] = None + +class GetEndpointRequestRequestTypeDef(BaseModel): + thingArn: Optional[str] = None + certificateArn: Optional[str] = None + deviceRoleArn: Optional[str] = None + authenticationMethod: Optional[AuthenticationMethodType] = None + +class GetSuiteDefinitionRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + suiteDefinitionVersion: Optional[str] = None + +class GetSuiteRunReportRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + suiteRunId: str + +class GetSuiteRunRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + suiteRunId: str + +class ListSuiteDefinitionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSuiteRunsRequestRequestTypeDef(BaseModel): + suiteDefinitionId: Optional[str] = None + suiteDefinitionVersion: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SuiteRunInformationTypeDef(BaseModel): + suiteDefinitionId: Optional[str] = None + suiteDefinitionVersion: Optional[str] = None + suiteDefinitionName: Optional[str] = None + suiteRunId: Optional[str] = None + createdAt: Optional[datetime] = None + startedAt: Optional[datetime] = None + endAt: Optional[datetime] = None + status: Optional[SuiteRunStatusType] = None + passed: Optional[int] = None + failed: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class StopSuiteRunRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + suiteRunId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TestCaseScenarioTypeDef(BaseModel): + testCaseScenarioId: Optional[str] = None + testCaseScenarioType: Optional[TestCaseScenarioTypeType] = None + status: Optional[TestCaseScenarioStatusType] = None + failure: Optional[str] = None + systemMessage: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CreateSuiteDefinitionResponseTypeDef(BaseModel): + suiteDefinitionId: str + suiteDefinitionArn: str + suiteDefinitionName: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetEndpointResponseTypeDef(BaseModel): + endpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSuiteRunReportResponseTypeDef(BaseModel): + qualificationReportDownloadUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartSuiteRunResponseTypeDef(BaseModel): + suiteRunId: str + suiteRunArn: str + createdAt: datetime + endpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSuiteDefinitionResponseTypeDef(BaseModel): + suiteDefinitionId: str + suiteDefinitionArn: str + suiteDefinitionName: str + suiteDefinitionVersion: str + createdAt: datetime + lastUpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class SuiteDefinitionConfigurationTypeDef(BaseModel): + suiteDefinitionName: str + rootGroup: str + devicePermissionRoleArn: str + devices: Optional[Sequence[DeviceUnderTestTypeDef]] = None + intendedForQualification: Optional[bool] = None + isLongDurationTest: Optional[bool] = None + protocol: Optional[ProtocolType] = None + +class SuiteDefinitionInformationTypeDef(BaseModel): + suiteDefinitionId: Optional[str] = None + suiteDefinitionName: Optional[str] = None + defaultDevices: Optional[List[DeviceUnderTestTypeDef]] = None + intendedForQualification: Optional[bool] = None + isLongDurationTest: Optional[bool] = None + protocol: Optional[ProtocolType] = None + createdAt: Optional[datetime] = None + +class SuiteRunConfigurationTypeDef(BaseModel): + primaryDevice: DeviceUnderTestTypeDef + selectedTestList: Optional[List[str]] = None + parallelRun: Optional[bool] = None + +class ListSuiteRunsResponseTypeDef(BaseModel): + suiteRunsList: List[SuiteRunInformationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestCaseRunTypeDef(BaseModel): + testCaseRunId: Optional[str] = None + testCaseDefinitionId: Optional[str] = None + testCaseDefinitionName: Optional[str] = None + status: Optional[StatusType] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + logUrl: Optional[str] = None + warnings: Optional[str] = None + failure: Optional[str] = None + testScenarios: Optional[List[TestCaseScenarioTypeDef]] = None + +class CreateSuiteDefinitionRequestRequestTypeDef(BaseModel): + suiteDefinitionConfiguration: SuiteDefinitionConfigurationTypeDef + tags: Optional[Mapping[str, str]] = None + +class GetSuiteDefinitionResponseTypeDef(BaseModel): + suiteDefinitionId: str + suiteDefinitionArn: str + suiteDefinitionVersion: str + latestVersion: str + suiteDefinitionConfiguration: SuiteDefinitionConfigurationTypeDef + createdAt: datetime + lastModifiedAt: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSuiteDefinitionRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + suiteDefinitionConfiguration: SuiteDefinitionConfigurationTypeDef + +class ListSuiteDefinitionsResponseTypeDef(BaseModel): + suiteDefinitionInformationList: List[SuiteDefinitionInformationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSuiteRunRequestRequestTypeDef(BaseModel): + suiteDefinitionId: str + suiteRunConfiguration: SuiteRunConfigurationTypeDef + suiteDefinitionVersion: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GroupResultTypeDef(BaseModel): + groupId: Optional[str] = None + groupName: Optional[str] = None + tests: Optional[List[TestCaseRunTypeDef]] = None + +class TestResultTypeDef(BaseModel): + groups: Optional[List[GroupResultTypeDef]] = None + +class GetSuiteRunResponseTypeDef(BaseModel): + suiteDefinitionId: str + suiteDefinitionVersion: str + suiteRunId: str + suiteRunArn: str + suiteRunConfiguration: SuiteRunConfigurationTypeDef + testResult: TestResultTypeDef + startTime: datetime + endTime: datetime + status: SuiteRunStatusType + errorReason: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotdeviceadvisor_constants.py b/aws_resource_validator/pydantic_models/iotdeviceadvisor_constants.py new file mode 100644 index 00000000..eddce494 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotdeviceadvisor_constants.py @@ -0,0 +1,419 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthenticationMethodType = Literal["SignatureVersion4", "X509ClientCertificate"] +ProtocolType = Literal["MqttV3_1_1", "MqttV3_1_1_OverWebSocket", "MqttV5", "MqttV5_OverWebSocket"] +StatusType = Literal["CANCELED", + "ERROR", + "FAIL", + "PASS", + "PASS_WITH_WARNINGS", + "PENDING", + "RUNNING", + "STOPPED", + "STOPPING",] +SuiteRunStatusType = Literal["CANCELED", + "ERROR", + "FAIL", + "PASS", + "PASS_WITH_WARNINGS", + "PENDING", + "RUNNING", + "STOPPED", + "STOPPING",] +TestCaseScenarioStatusType = Literal["CANCELED", + "ERROR", + "FAIL", + "PASS", + "PASS_WITH_WARNINGS", + "PENDING", + "RUNNING", + "STOPPED", + "STOPPING",] +TestCaseScenarioTypeType = Literal["Advanced", "Basic"] +IoTDeviceAdvisorServiceName = Literal["iotdeviceadvisor"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", "eu-west-1", "us-east-1", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/iotevents_classes.py b/aws_resource_validator/pydantic_models/iotevents_classes.py new file mode 100644 index 00000000..b44c503f --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotevents_classes.py @@ -0,0 +1,562 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotevents_constants import * + +class AcknowledgeFlowTypeDef(BaseModel): + enabled: bool + +class ClearTimerActionTypeDef(BaseModel): + timerName: str + +class ResetTimerActionTypeDef(BaseModel): + timerName: str + +class SetTimerActionTypeDef(BaseModel): + timerName: str + seconds: Optional[int] = None + durationExpression: Optional[str] = None + +class SetVariableActionTypeDef(BaseModel): + variableName: str + value: str + +class InitializationConfigurationTypeDef(BaseModel): + disabledOnInitialization: bool + +class AlarmModelSummaryTypeDef(BaseModel): + creationTime: Optional[datetime] = None + alarmModelDescription: Optional[str] = None + alarmModelName: Optional[str] = None + +class AlarmModelVersionSummaryTypeDef(BaseModel): + alarmModelName: Optional[str] = None + alarmModelArn: Optional[str] = None + alarmModelVersion: Optional[str] = None + roleArn: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + status: Optional[AlarmModelVersionStatusType] = None + statusMessage: Optional[str] = None + +class SimpleRuleTypeDef(BaseModel): + inputProperty: str + comparisonOperator: ComparisonOperatorType + threshold: str + +class AnalysisResultLocationTypeDef(BaseModel): + path: Optional[str] = None + +class AssetPropertyTimestampTypeDef(BaseModel): + timeInSeconds: str + offsetInNanos: Optional[str] = None + +class AssetPropertyVariantTypeDef(BaseModel): + stringValue: Optional[str] = None + integerValue: Optional[str] = None + doubleValue: Optional[str] = None + booleanValue: Optional[str] = None + +class AttributeTypeDef(BaseModel): + jsonPath: str + +class TagTypeDef(BaseModel): + key: str + value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DetectorModelConfigurationTypeDef(BaseModel): + detectorModelName: Optional[str] = None + detectorModelVersion: Optional[str] = None + detectorModelDescription: Optional[str] = None + detectorModelArn: Optional[str] = None + roleArn: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + status: Optional[DetectorModelVersionStatusType] = None + key: Optional[str] = None + evaluationMethod: Optional[EvaluationMethodType] = None + +class InputConfigurationTypeDef(BaseModel): + inputName: str + inputArn: str + creationTime: datetime + lastUpdateTime: datetime + status: InputStatusType + inputDescription: Optional[str] = None + +class DeleteAlarmModelRequestRequestTypeDef(BaseModel): + alarmModelName: str + +class DeleteDetectorModelRequestRequestTypeDef(BaseModel): + detectorModelName: str + +class DeleteInputRequestRequestTypeDef(BaseModel): + inputName: str + +class DescribeAlarmModelRequestRequestTypeDef(BaseModel): + alarmModelName: str + alarmModelVersion: Optional[str] = None + +class DescribeDetectorModelAnalysisRequestRequestTypeDef(BaseModel): + analysisId: str + +class DescribeDetectorModelRequestRequestTypeDef(BaseModel): + detectorModelName: str + detectorModelVersion: Optional[str] = None + +class DescribeInputRequestRequestTypeDef(BaseModel): + inputName: str + +class DetectorDebugOptionTypeDef(BaseModel): + detectorModelName: str + keyValue: Optional[str] = None + +class DetectorModelSummaryTypeDef(BaseModel): + detectorModelName: Optional[str] = None + detectorModelDescription: Optional[str] = None + creationTime: Optional[datetime] = None + +class DetectorModelVersionSummaryTypeDef(BaseModel): + detectorModelName: Optional[str] = None + detectorModelVersion: Optional[str] = None + detectorModelArn: Optional[str] = None + roleArn: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + status: Optional[DetectorModelVersionStatusType] = None + evaluationMethod: Optional[EvaluationMethodType] = None + +class PayloadTypeDef(BaseModel): + contentExpression: str + type: PayloadTypeType + +class EmailContentTypeDef(BaseModel): + subject: Optional[str] = None + additionalMessage: Optional[str] = None + +class GetDetectorModelAnalysisResultsRequestRequestTypeDef(BaseModel): + analysisId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class IotEventsInputIdentifierTypeDef(BaseModel): + inputName: str + +class InputSummaryTypeDef(BaseModel): + inputName: Optional[str] = None + inputDescription: Optional[str] = None + inputArn: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + status: Optional[InputStatusType] = None + +class IotSiteWiseAssetModelPropertyIdentifierTypeDef(BaseModel): + assetModelId: str + propertyId: str + +class ListAlarmModelVersionsRequestRequestTypeDef(BaseModel): + alarmModelName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAlarmModelsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDetectorModelVersionsRequestRequestTypeDef(BaseModel): + detectorModelName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDetectorModelsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RoutedResourceTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + +class ListInputsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class SSOIdentityTypeDef(BaseModel): + identityStoreId: str + userId: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AlarmCapabilitiesTypeDef(BaseModel): + initializationConfiguration: Optional[InitializationConfigurationTypeDef] = None + acknowledgeFlow: Optional[AcknowledgeFlowTypeDef] = None + +class AlarmRuleTypeDef(BaseModel): + simpleRule: Optional[SimpleRuleTypeDef] = None + +class AnalysisResultTypeDef(BaseModel): + type: Optional[str] = None + level: Optional[AnalysisResultLevelType] = None + message: Optional[str] = None + locations: Optional[List[AnalysisResultLocationTypeDef]] = None + +class AssetPropertyValueTypeDef(BaseModel): + value: Optional[AssetPropertyVariantTypeDef] = None + timestamp: Optional[AssetPropertyTimestampTypeDef] = None + quality: Optional[str] = None + +class InputDefinitionTypeDef(BaseModel): + attributes: Sequence[AttributeTypeDef] + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateAlarmModelResponseTypeDef(BaseModel): + creationTime: datetime + alarmModelArn: str + alarmModelVersion: str + lastUpdateTime: datetime + status: AlarmModelVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDetectorModelAnalysisResponseTypeDef(BaseModel): + status: AnalysisStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListAlarmModelVersionsResponseTypeDef(BaseModel): + alarmModelVersionSummaries: List[AlarmModelVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAlarmModelsResponseTypeDef(BaseModel): + alarmModelSummaries: List[AlarmModelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDetectorModelAnalysisResponseTypeDef(BaseModel): + analysisId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAlarmModelResponseTypeDef(BaseModel): + creationTime: datetime + alarmModelArn: str + alarmModelVersion: str + lastUpdateTime: datetime + status: AlarmModelVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDetectorModelResponseTypeDef(BaseModel): + detectorModelConfiguration: DetectorModelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDetectorModelResponseTypeDef(BaseModel): + detectorModelConfiguration: DetectorModelConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInputResponseTypeDef(BaseModel): + inputConfiguration: InputConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInputResponseTypeDef(BaseModel): + inputConfiguration: InputConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingOptionsTypeDef(BaseModel): + roleArn: str + level: LoggingLevelType + enabled: bool + detectorDebugOptions: Optional[List[DetectorDebugOptionTypeDef]] = None + +class ListDetectorModelsResponseTypeDef(BaseModel): + detectorModelSummaries: List[DetectorModelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDetectorModelVersionsResponseTypeDef(BaseModel): + detectorModelVersionSummaries: List[DetectorModelVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DynamoDBActionTypeDef(BaseModel): + hashKeyField: str + hashKeyValue: str + tableName: str + hashKeyType: Optional[str] = None + rangeKeyType: Optional[str] = None + rangeKeyField: Optional[str] = None + rangeKeyValue: Optional[str] = None + operation: Optional[str] = None + payloadField: Optional[str] = None + payload: Optional[PayloadTypeDef] = None + +class DynamoDBv2ActionTypeDef(BaseModel): + tableName: str + payload: Optional[PayloadTypeDef] = None + +class FirehoseActionTypeDef(BaseModel): + deliveryStreamName: str + separator: Optional[str] = None + payload: Optional[PayloadTypeDef] = None + +class IotEventsActionTypeDef(BaseModel): + inputName: str + payload: Optional[PayloadTypeDef] = None + +class IotTopicPublishActionTypeDef(BaseModel): + mqttTopic: str + payload: Optional[PayloadTypeDef] = None + +class LambdaActionTypeDef(BaseModel): + functionArn: str + payload: Optional[PayloadTypeDef] = None + +class SNSTopicPublishActionTypeDef(BaseModel): + targetArn: str + payload: Optional[PayloadTypeDef] = None + +class SqsActionTypeDef(BaseModel): + queueUrl: str + useBase64: Optional[bool] = None + payload: Optional[PayloadTypeDef] = None + +class ListInputsResponseTypeDef(BaseModel): + inputSummaries: List[InputSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IotSiteWiseInputIdentifierTypeDef(BaseModel): + iotSiteWiseAssetModelPropertyIdentifier: Optional[ IotSiteWiseAssetModelPropertyIdentifierTypeDef ] = None + +class ListInputRoutingsResponseTypeDef(BaseModel): + routedResources: List[RoutedResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecipientDetailTypeDef(BaseModel): + ssoIdentity: Optional[SSOIdentityTypeDef] = None + +class GetDetectorModelAnalysisResultsResponseTypeDef(BaseModel): + analysisResults: List[AnalysisResultTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IotSiteWiseActionTypeDef(BaseModel): + entryId: Optional[str] = None + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + propertyValue: Optional[AssetPropertyValueTypeDef] = None + +class CreateInputRequestRequestTypeDef(BaseModel): + inputName: str + inputDefinition: InputDefinitionTypeDef + inputDescription: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class InputTypeDef(BaseModel): + inputConfiguration: Optional[InputConfigurationTypeDef] = None + inputDefinition: Optional[InputDefinitionTypeDef] = None + +class UpdateInputRequestRequestTypeDef(BaseModel): + inputName: str + inputDefinition: InputDefinitionTypeDef + inputDescription: Optional[str] = None + +class DescribeLoggingOptionsResponseTypeDef(BaseModel): + loggingOptions: LoggingOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingOptionsRequestRequestTypeDef(BaseModel): + loggingOptions: LoggingOptionsTypeDef + +class NotificationTargetActionsTypeDef(BaseModel): + lambdaAction: Optional[LambdaActionTypeDef] = None + +class InputIdentifierTypeDef(BaseModel): + iotEventsInputIdentifier: Optional[IotEventsInputIdentifierTypeDef] = None + iotSiteWiseInputIdentifier: Optional[IotSiteWiseInputIdentifierTypeDef] = None + +class EmailRecipientsTypeDef(BaseModel): + to: Optional[Sequence[RecipientDetailTypeDef]] = None + +class SMSConfigurationTypeDef(BaseModel): + recipients: Sequence[RecipientDetailTypeDef] + senderId: Optional[str] = None + additionalMessage: Optional[str] = None + +class ActionTypeDef(BaseModel): + setVariable: Optional[SetVariableActionTypeDef] = None + sns: Optional[SNSTopicPublishActionTypeDef] = None + iotTopicPublish: Optional[IotTopicPublishActionTypeDef] = None + setTimer: Optional[SetTimerActionTypeDef] = None + clearTimer: Optional[ClearTimerActionTypeDef] = None + resetTimer: Optional[ResetTimerActionTypeDef] = None + lambda: Optional[LambdaActionTypeDef] = None + iotEvents: Optional[IotEventsActionTypeDef] = None + sqs: Optional[SqsActionTypeDef] = None + firehose: Optional[FirehoseActionTypeDef] = None + dynamoDB: Optional[DynamoDBActionTypeDef] = None + dynamoDBv2: Optional[DynamoDBv2ActionTypeDef] = None + iotSiteWise: Optional[IotSiteWiseActionTypeDef] = None + +class AlarmActionTypeDef(BaseModel): + sns: Optional[SNSTopicPublishActionTypeDef] = None + iotTopicPublish: Optional[IotTopicPublishActionTypeDef] = None + lambda: Optional[LambdaActionTypeDef] = None + iotEvents: Optional[IotEventsActionTypeDef] = None + sqs: Optional[SqsActionTypeDef] = None + firehose: Optional[FirehoseActionTypeDef] = None + dynamoDB: Optional[DynamoDBActionTypeDef] = None + dynamoDBv2: Optional[DynamoDBv2ActionTypeDef] = None + iotSiteWise: Optional[IotSiteWiseActionTypeDef] = None + +class DescribeInputResponseTypeDef(BaseModel): + input: InputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInputRoutingsRequestRequestTypeDef(BaseModel): + inputIdentifier: InputIdentifierTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class EmailConfigurationTypeDef(BaseModel): + from: str + recipients: EmailRecipientsTypeDef + content: Optional[EmailContentTypeDef] = None + +class EventTypeDef(BaseModel): + eventName: str + condition: Optional[str] = None + actions: Optional[Sequence[ActionTypeDef]] = None + +class TransitionEventTypeDef(BaseModel): + eventName: str + condition: str + nextState: str + actions: Optional[Sequence[ActionTypeDef]] = None + +class AlarmEventActionsTypeDef(BaseModel): + alarmActions: Optional[Sequence[AlarmActionTypeDef]] = None + +class NotificationActionTypeDef(BaseModel): + action: NotificationTargetActionsTypeDef + smsConfigurations: Optional[Sequence[SMSConfigurationTypeDef]] = None + emailConfigurations: Optional[Sequence[EmailConfigurationTypeDef]] = None + +class OnEnterLifecycleTypeDef(BaseModel): + events: Optional[Sequence[EventTypeDef]] = None + +class OnExitLifecycleTypeDef(BaseModel): + events: Optional[Sequence[EventTypeDef]] = None + +class OnInputLifecycleTypeDef(BaseModel): + events: Optional[Sequence[EventTypeDef]] = None + transitionEvents: Optional[Sequence[TransitionEventTypeDef]] = None + +class AlarmNotificationTypeDef(BaseModel): + notificationActions: Optional[Sequence[NotificationActionTypeDef]] = None + +class StateTypeDef(BaseModel): + stateName: str + onInput: Optional[OnInputLifecycleTypeDef] = None + onEnter: Optional[OnEnterLifecycleTypeDef] = None + onExit: Optional[OnExitLifecycleTypeDef] = None + +class CreateAlarmModelRequestRequestTypeDef(BaseModel): + alarmModelName: str + roleArn: str + alarmRule: AlarmRuleTypeDef + alarmModelDescription: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + key: Optional[str] = None + severity: Optional[int] = None + alarmNotification: Optional[AlarmNotificationTypeDef] = None + alarmEventActions: Optional[AlarmEventActionsTypeDef] = None + alarmCapabilities: Optional[AlarmCapabilitiesTypeDef] = None + +class DescribeAlarmModelResponseTypeDef(BaseModel): + creationTime: datetime + alarmModelArn: str + alarmModelVersion: str + lastUpdateTime: datetime + status: AlarmModelVersionStatusType + statusMessage: str + alarmModelName: str + alarmModelDescription: str + roleArn: str + key: str + severity: int + alarmRule: AlarmRuleTypeDef + alarmNotification: AlarmNotificationTypeDef + alarmEventActions: AlarmEventActionsTypeDef + alarmCapabilities: AlarmCapabilitiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAlarmModelRequestRequestTypeDef(BaseModel): + alarmModelName: str + roleArn: str + alarmRule: AlarmRuleTypeDef + alarmModelDescription: Optional[str] = None + severity: Optional[int] = None + alarmNotification: Optional[AlarmNotificationTypeDef] = None + alarmEventActions: Optional[AlarmEventActionsTypeDef] = None + alarmCapabilities: Optional[AlarmCapabilitiesTypeDef] = None + +class DetectorModelDefinitionTypeDef(BaseModel): + states: Sequence[StateTypeDef] + initialStateName: str + +class CreateDetectorModelRequestRequestTypeDef(BaseModel): + detectorModelName: str + detectorModelDefinition: DetectorModelDefinitionTypeDef + roleArn: str + detectorModelDescription: Optional[str] = None + key: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + evaluationMethod: Optional[EvaluationMethodType] = None + +class DetectorModelTypeDef(BaseModel): + detectorModelDefinition: Optional[DetectorModelDefinitionTypeDef] = None + detectorModelConfiguration: Optional[DetectorModelConfigurationTypeDef] = None + +class StartDetectorModelAnalysisRequestRequestTypeDef(BaseModel): + detectorModelDefinition: DetectorModelDefinitionTypeDef + +class UpdateDetectorModelRequestRequestTypeDef(BaseModel): + detectorModelName: str + detectorModelDefinition: DetectorModelDefinitionTypeDef + roleArn: str + detectorModelDescription: Optional[str] = None + evaluationMethod: Optional[EvaluationMethodType] = None + +class DescribeDetectorModelResponseTypeDef(BaseModel): + detectorModel: DetectorModelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotevents_constants.py b/aws_resource_validator/pydantic_models/iotevents_constants.py new file mode 100644 index 00000000..2fde5887 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotevents_constants.py @@ -0,0 +1,414 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlarmModelVersionStatusType = Literal["ACTIVATING", "ACTIVE", "FAILED", "INACTIVE"] +AnalysisResultLevelType = Literal["ERROR", "INFO", "WARNING"] +AnalysisStatusType = Literal["COMPLETE", "FAILED", "RUNNING"] +ComparisonOperatorType = Literal["EQUAL", "GREATER", "GREATER_OR_EQUAL", "LESS", "LESS_OR_EQUAL", "NOT_EQUAL"] +DetectorModelVersionStatusType = Literal["ACTIVATING", "ACTIVE", "DEPRECATED", "DRAFT", "FAILED", "INACTIVE", "PAUSED"] +EvaluationMethodType = Literal["BATCH", "SERIAL"] +InputStatusType = Literal["ACTIVE", "CREATING", "DELETING", "UPDATING"] +LoggingLevelType = Literal["DEBUG", "ERROR", "INFO"] +PayloadTypeType = Literal["JSON", "STRING"] +IoTEventsServiceName = Literal["iotevents"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/iotevents_data_classes.py b/aws_resource_validator/pydantic_models/iotevents_data_classes.py new file mode 100644 index 00000000..e003e8a6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotevents_data_classes.py @@ -0,0 +1,291 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotevents_data_constants import * + +class AcknowledgeActionConfigurationTypeDef(BaseModel): + note: Optional[str] = None + +class AcknowledgeAlarmActionRequestTypeDef(BaseModel): + requestId: str + alarmModelName: str + keyValue: Optional[str] = None + note: Optional[str] = None + +class AlarmSummaryTypeDef(BaseModel): + alarmModelName: Optional[str] = None + alarmModelVersion: Optional[str] = None + keyValue: Optional[str] = None + stateName: Optional[AlarmStateNameType] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class BatchAlarmActionErrorEntryTypeDef(BaseModel): + requestId: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + errorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchDeleteDetectorErrorEntryTypeDef(BaseModel): + messageId: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + errorMessage: Optional[str] = None + +class DeleteDetectorRequestTypeDef(BaseModel): + messageId: str + detectorModelName: str + keyValue: Optional[str] = None + +class DisableAlarmActionRequestTypeDef(BaseModel): + requestId: str + alarmModelName: str + keyValue: Optional[str] = None + note: Optional[str] = None + +class EnableAlarmActionRequestTypeDef(BaseModel): + requestId: str + alarmModelName: str + keyValue: Optional[str] = None + note: Optional[str] = None + +class BatchPutMessageErrorEntryTypeDef(BaseModel): + messageId: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + errorMessage: Optional[str] = None + +class ResetAlarmActionRequestTypeDef(BaseModel): + requestId: str + alarmModelName: str + keyValue: Optional[str] = None + note: Optional[str] = None + +class SnoozeAlarmActionRequestTypeDef(BaseModel): + requestId: str + alarmModelName: str + snoozeDuration: int + keyValue: Optional[str] = None + note: Optional[str] = None + +class BatchUpdateDetectorErrorEntryTypeDef(BaseModel): + messageId: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + errorMessage: Optional[str] = None + +class DisableActionConfigurationTypeDef(BaseModel): + note: Optional[str] = None + +class EnableActionConfigurationTypeDef(BaseModel): + note: Optional[str] = None + +class ResetActionConfigurationTypeDef(BaseModel): + note: Optional[str] = None + +class SnoozeActionConfigurationTypeDef(BaseModel): + snoozeDuration: Optional[int] = None + note: Optional[str] = None + +class DescribeAlarmRequestRequestTypeDef(BaseModel): + alarmModelName: str + keyValue: Optional[str] = None + +class DescribeDetectorRequestRequestTypeDef(BaseModel): + detectorModelName: str + keyValue: Optional[str] = None + +class TimerDefinitionTypeDef(BaseModel): + name: str + seconds: int + +class VariableDefinitionTypeDef(BaseModel): + name: str + value: str + +class DetectorStateSummaryTypeDef(BaseModel): + stateName: Optional[str] = None + +class TimerTypeDef(BaseModel): + name: str + timestamp: datetime + +class VariableTypeDef(BaseModel): + name: str + value: str + +class ListAlarmsRequestRequestTypeDef(BaseModel): + alarmModelName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDetectorsRequestRequestTypeDef(BaseModel): + detectorModelName: str + stateName: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TimestampValueTypeDef(BaseModel): + timeInMillis: Optional[int] = None + +class SimpleRuleEvaluationTypeDef(BaseModel): + inputPropertyValue: Optional[str] = None + operator: Optional[ComparisonOperatorType] = None + thresholdValue: Optional[str] = None + +class StateChangeConfigurationTypeDef(BaseModel): + triggerType: Optional[Literal["SNOOZE_TIMEOUT"]] = None + +class BatchAcknowledgeAlarmRequestRequestTypeDef(BaseModel): + acknowledgeActionRequests: Sequence[AcknowledgeAlarmActionRequestTypeDef] + +class BatchAcknowledgeAlarmResponseTypeDef(BaseModel): + errorEntries: List[BatchAlarmActionErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisableAlarmResponseTypeDef(BaseModel): + errorEntries: List[BatchAlarmActionErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchEnableAlarmResponseTypeDef(BaseModel): + errorEntries: List[BatchAlarmActionErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchResetAlarmResponseTypeDef(BaseModel): + errorEntries: List[BatchAlarmActionErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchSnoozeAlarmResponseTypeDef(BaseModel): + errorEntries: List[BatchAlarmActionErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAlarmsResponseTypeDef(BaseModel): + alarmSummaries: List[AlarmSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteDetectorResponseTypeDef(BaseModel): + batchDeleteDetectorErrorEntries: List[BatchDeleteDetectorErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteDetectorRequestRequestTypeDef(BaseModel): + detectors: Sequence[DeleteDetectorRequestTypeDef] + +class BatchDisableAlarmRequestRequestTypeDef(BaseModel): + disableActionRequests: Sequence[DisableAlarmActionRequestTypeDef] + +class BatchEnableAlarmRequestRequestTypeDef(BaseModel): + enableActionRequests: Sequence[EnableAlarmActionRequestTypeDef] + +class BatchPutMessageResponseTypeDef(BaseModel): + BatchPutMessageErrorEntries: List[BatchPutMessageErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchResetAlarmRequestRequestTypeDef(BaseModel): + resetActionRequests: Sequence[ResetAlarmActionRequestTypeDef] + +class BatchSnoozeAlarmRequestRequestTypeDef(BaseModel): + snoozeActionRequests: Sequence[SnoozeAlarmActionRequestTypeDef] + +class BatchUpdateDetectorResponseTypeDef(BaseModel): + batchUpdateDetectorErrorEntries: List[BatchUpdateDetectorErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CustomerActionTypeDef(BaseModel): + actionName: Optional[CustomerActionNameType] = None + snoozeActionConfiguration: Optional[SnoozeActionConfigurationTypeDef] = None + enableActionConfiguration: Optional[EnableActionConfigurationTypeDef] = None + disableActionConfiguration: Optional[DisableActionConfigurationTypeDef] = None + acknowledgeActionConfiguration: Optional[AcknowledgeActionConfigurationTypeDef] = None + resetActionConfiguration: Optional[ResetActionConfigurationTypeDef] = None + +class DetectorStateDefinitionTypeDef(BaseModel): + stateName: str + variables: Sequence[VariableDefinitionTypeDef] + timers: Sequence[TimerDefinitionTypeDef] + +class DetectorSummaryTypeDef(BaseModel): + detectorModelName: Optional[str] = None + keyValue: Optional[str] = None + detectorModelVersion: Optional[str] = None + state: Optional[DetectorStateSummaryTypeDef] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class DetectorStateTypeDef(BaseModel): + stateName: str + variables: List[VariableTypeDef] + timers: List[TimerTypeDef] + +class MessageTypeDef(BaseModel): + messageId: str + inputName: str + payload: BlobTypeDef + timestamp: Optional[TimestampValueTypeDef] = None + +class RuleEvaluationTypeDef(BaseModel): + simpleRuleEvaluation: Optional[SimpleRuleEvaluationTypeDef] = None + +class SystemEventTypeDef(BaseModel): + eventType: Optional[Literal["STATE_CHANGE"]] = None + stateChangeConfiguration: Optional[StateChangeConfigurationTypeDef] = None + +class UpdateDetectorRequestTypeDef(BaseModel): + messageId: str + detectorModelName: str + state: DetectorStateDefinitionTypeDef + keyValue: Optional[str] = None + +class ListDetectorsResponseTypeDef(BaseModel): + detectorSummaries: List[DetectorSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectorTypeDef(BaseModel): + detectorModelName: Optional[str] = None + keyValue: Optional[str] = None + detectorModelVersion: Optional[str] = None + state: Optional[DetectorStateTypeDef] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class BatchPutMessageRequestRequestTypeDef(BaseModel): + messages: Sequence[MessageTypeDef] + +class AlarmStateTypeDef(BaseModel): + stateName: Optional[AlarmStateNameType] = None + ruleEvaluation: Optional[RuleEvaluationTypeDef] = None + customerAction: Optional[CustomerActionTypeDef] = None + systemEvent: Optional[SystemEventTypeDef] = None + +class BatchUpdateDetectorRequestRequestTypeDef(BaseModel): + detectors: Sequence[UpdateDetectorRequestTypeDef] + +class DescribeDetectorResponseTypeDef(BaseModel): + detector: DetectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AlarmTypeDef(BaseModel): + alarmModelName: Optional[str] = None + alarmModelVersion: Optional[str] = None + keyValue: Optional[str] = None + alarmState: Optional[AlarmStateTypeDef] = None + severity: Optional[int] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class DescribeAlarmResponseTypeDef(BaseModel): + alarm: AlarmTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotevents_data_constants.py b/aws_resource_validator/pydantic_models/iotevents_data_constants.py new file mode 100644 index 00000000..4a3da0b4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotevents_data_constants.py @@ -0,0 +1,399 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlarmStateNameType = Literal["ACKNOWLEDGED", "ACTIVE", "DISABLED", "LATCHED", "NORMAL", "SNOOZE_DISABLED"] +ComparisonOperatorType = Literal["EQUAL", "GREATER", "GREATER_OR_EQUAL", "LESS", "LESS_OR_EQUAL", "NOT_EQUAL"] +CustomerActionNameType = Literal["ACKNOWLEDGE", "DISABLE", "ENABLE", "RESET", "SNOOZE"] +ErrorCodeType = Literal["InternalFailureException", + "InvalidRequestException", + "ResourceNotFoundException", + "ServiceUnavailableException", + "ThrottlingException",] +EventTypeType = Literal["STATE_CHANGE"] +TriggerTypeType = Literal["SNOOZE_TIMEOUT"] +IoTEventsDataServiceName = Literal["iotevents-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/iotfleethub_classes.py b/aws_resource_validator/pydantic_models/iotfleethub_classes.py new file mode 100644 index 00000000..1080c532 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotfleethub_classes.py @@ -0,0 +1,100 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotfleethub_constants import * + +class ApplicationSummaryTypeDef(BaseModel): + applicationId: str + applicationName: str + applicationUrl: str + applicationDescription: Optional[str] = None + applicationCreationDate: Optional[int] = None + applicationLastUpdateDate: Optional[int] = None + applicationState: Optional[ApplicationStateType] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + applicationName: str + roleArn: str + applicationDescription: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + clientToken: Optional[str] = None + +class DescribeApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + applicationName: Optional[str] = None + applicationDescription: Optional[str] = None + clientToken: Optional[str] = None + +class CreateApplicationResponseTypeDef(BaseModel): + applicationId: str + applicationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationResponseTypeDef(BaseModel): + applicationId: str + applicationArn: str + applicationName: str + applicationDescription: str + applicationUrl: str + applicationState: ApplicationStateType + applicationCreationDate: int + applicationLastUpdateDate: int + roleArn: str + ssoClientId: str + errorMessage: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + applicationSummaries: List[ApplicationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/iotfleethub_constants.py b/aws_resource_validator/pydantic_models/iotfleethub_constants.py new file mode 100644 index 00000000..b2905359 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotfleethub_constants.py @@ -0,0 +1,412 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationStateType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING"] +ListApplicationsPaginatorName = Literal["list_applications"] +IoTFleetHubServiceName = Literal["iotfleethub"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applications"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/iotfleetwise_classes.py b/aws_resource_validator/pydantic_models/iotfleetwise_classes.py new file mode 100644 index 00000000..61f2f3c2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotfleetwise_classes.py @@ -0,0 +1,1021 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotfleetwise_constants import * + +class ActuatorExtraOutputTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[List[str]] = None + min: Optional[float] = None + max: Optional[float] = None + assignedValue: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class ActuatorOutputTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[List[str]] = None + min: Optional[float] = None + max: Optional[float] = None + assignedValue: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class ActuatorTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[Sequence[str]] = None + min: Optional[float] = None + max: Optional[float] = None + assignedValue: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class AssociateVehicleFleetRequestRequestTypeDef(BaseModel): + vehicleName: str + fleetId: str + +class AttributeExtraOutputTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[List[str]] = None + min: Optional[float] = None + max: Optional[float] = None + assignedValue: Optional[str] = None + defaultValue: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + +class AttributeOutputTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[List[str]] = None + min: Optional[float] = None + max: Optional[float] = None + assignedValue: Optional[str] = None + defaultValue: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + +class AttributeTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[Sequence[str]] = None + min: Optional[float] = None + max: Optional[float] = None + assignedValue: Optional[str] = None + defaultValue: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + +class CreateVehicleErrorTypeDef(BaseModel): + vehicleName: Optional[str] = None + code: Optional[str] = None + message: Optional[str] = None + +class CreateVehicleResponseItemTypeDef(BaseModel): + vehicleName: Optional[str] = None + arn: Optional[str] = None + thingArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UpdateVehicleRequestItemTypeDef(BaseModel): + vehicleName: str + modelManifestArn: Optional[str] = None + decoderManifestArn: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + attributeUpdateMode: Optional[UpdateModeType] = None + +class UpdateVehicleErrorTypeDef(BaseModel): + vehicleName: Optional[str] = None + code: Optional[int] = None + message: Optional[str] = None + +class UpdateVehicleResponseItemTypeDef(BaseModel): + vehicleName: Optional[str] = None + arn: Optional[str] = None + +class BranchTypeDef(BaseModel): + fullyQualifiedName: str + description: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + +class CampaignSummaryTypeDef(BaseModel): + creationTime: datetime + lastModificationTime: datetime + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + signalCatalogArn: Optional[str] = None + targetArn: Optional[str] = None + status: Optional[CampaignStatusType] = None + +class CanInterfaceTypeDef(BaseModel): + name: str + protocolName: Optional[str] = None + protocolVersion: Optional[str] = None + +class CanSignalTypeDef(BaseModel): + messageId: int + isBigEndian: bool + isSigned: bool + startBit: int + offset: float + factor: float + length: int + name: Optional[str] = None + +class CloudWatchLogDeliveryOptionsTypeDef(BaseModel): + logType: LogTypeType + logGroupName: Optional[str] = None + +class ConditionBasedCollectionSchemeTypeDef(BaseModel): + expression: str + minimumTriggerIntervalMs: Optional[int] = None + triggerMode: Optional[TriggerModeType] = None + conditionLanguageVersion: Optional[int] = None + +class TimeBasedCollectionSchemeTypeDef(BaseModel): + periodMs: int + +class SignalInformationTypeDef(BaseModel): + name: str + maxSampleCount: Optional[int] = None + minimumSamplingIntervalMs: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CustomPropertyTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + dataEncoding: Optional[NodeDataEncodingType] = None + description: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class CustomStructTypeDef(BaseModel): + fullyQualifiedName: str + description: Optional[str] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + +class S3ConfigTypeDef(BaseModel): + bucketArn: str + dataFormat: Optional[DataFormatType] = None + storageCompressionFormat: Optional[StorageCompressionFormatType] = None + prefix: Optional[str] = None + +class TimestreamConfigTypeDef(BaseModel): + timestreamTableArn: str + executionRoleArn: str + +class DecoderManifestSummaryTypeDef(BaseModel): + creationTime: datetime + lastModificationTime: datetime + name: Optional[str] = None + arn: Optional[str] = None + modelManifestArn: Optional[str] = None + description: Optional[str] = None + status: Optional[ManifestStatusType] = None + message: Optional[str] = None + +class DeleteCampaignRequestRequestTypeDef(BaseModel): + name: str + +class DeleteDecoderManifestRequestRequestTypeDef(BaseModel): + name: str + +class DeleteFleetRequestRequestTypeDef(BaseModel): + fleetId: str + +class DeleteModelManifestRequestRequestTypeDef(BaseModel): + name: str + +class DeleteSignalCatalogRequestRequestTypeDef(BaseModel): + name: str + +class DeleteVehicleRequestRequestTypeDef(BaseModel): + vehicleName: str + +class DisassociateVehicleFleetRequestRequestTypeDef(BaseModel): + vehicleName: str + fleetId: str + +class FleetSummaryTypeDef(BaseModel): + id: str + arn: str + signalCatalogArn: str + creationTime: datetime + description: Optional[str] = None + lastModificationTime: Optional[datetime] = None + +class FormattedVssTypeDef(BaseModel): + vssJson: Optional[str] = None + +class GetCampaignRequestRequestTypeDef(BaseModel): + name: str + +class GetDecoderManifestRequestRequestTypeDef(BaseModel): + name: str + +class GetFleetRequestRequestTypeDef(BaseModel): + fleetId: str + +class GetModelManifestRequestRequestTypeDef(BaseModel): + name: str + +class IamRegistrationResponseTypeDef(BaseModel): + roleArn: str + registrationStatus: RegistrationStatusType + errorMessage: Optional[str] = None + +class TimestreamRegistrationResponseTypeDef(BaseModel): + timestreamDatabaseName: str + timestreamTableName: str + registrationStatus: RegistrationStatusType + timestreamDatabaseArn: Optional[str] = None + timestreamTableArn: Optional[str] = None + errorMessage: Optional[str] = None + +class GetSignalCatalogRequestRequestTypeDef(BaseModel): + name: str + +class NodeCountsTypeDef(BaseModel): + totalNodes: Optional[int] = None + totalBranches: Optional[int] = None + totalSensors: Optional[int] = None + totalAttributes: Optional[int] = None + totalActuators: Optional[int] = None + totalStructs: Optional[int] = None + totalProperties: Optional[int] = None + +class GetVehicleRequestRequestTypeDef(BaseModel): + vehicleName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetVehicleStatusRequestRequestTypeDef(BaseModel): + vehicleName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class VehicleStatusTypeDef(BaseModel): + campaignName: Optional[str] = None + vehicleName: Optional[str] = None + status: Optional[VehicleStateType] = None + +class IamResourcesTypeDef(BaseModel): + roleArn: str + +class ListCampaignsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + status: Optional[str] = None + +class ListDecoderManifestNetworkInterfacesRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDecoderManifestSignalsRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDecoderManifestsRequestRequestTypeDef(BaseModel): + modelManifestArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFleetsForVehicleRequestRequestTypeDef(BaseModel): + vehicleName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFleetsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListModelManifestNodesRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListModelManifestsRequestRequestTypeDef(BaseModel): + signalCatalogArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ModelManifestSummaryTypeDef(BaseModel): + creationTime: datetime + lastModificationTime: datetime + name: Optional[str] = None + arn: Optional[str] = None + signalCatalogArn: Optional[str] = None + description: Optional[str] = None + status: Optional[ManifestStatusType] = None + +class ListSignalCatalogNodesRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + signalNodeType: Optional[SignalNodeTypeType] = None + +class ListSignalCatalogsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SignalCatalogSummaryTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + creationTime: Optional[datetime] = None + lastModificationTime: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListVehiclesInFleetRequestRequestTypeDef(BaseModel): + fleetId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListVehiclesRequestRequestTypeDef(BaseModel): + modelManifestArn: Optional[str] = None + attributeNames: Optional[Sequence[str]] = None + attributeValues: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class VehicleSummaryTypeDef(BaseModel): + vehicleName: str + arn: str + modelManifestArn: str + decoderManifestArn: str + creationTime: datetime + lastModificationTime: datetime + attributes: Optional[Dict[str, str]] = None + +class MessageSignalTypeDef(BaseModel): + topicName: str + structuredMessage: "StructuredMessageTypeDef" + +class ObdInterfaceTypeDef(BaseModel): + name: str + requestMessageId: int + obdStandard: Optional[str] = None + pidRequestIntervalSeconds: Optional[int] = None + dtcRequestIntervalSeconds: Optional[int] = None + useExtendedIds: Optional[bool] = None + hasTransmissionEcu: Optional[bool] = None + +class VehicleMiddlewareTypeDef(BaseModel): + name: str + protocolName: Literal["ROS_2"] + +class SensorExtraOutputTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[List[str]] = None + min: Optional[float] = None + max: Optional[float] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class SensorOutputTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[List[str]] = None + min: Optional[float] = None + max: Optional[float] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class SensorTypeDef(BaseModel): + fullyQualifiedName: str + dataType: NodeDataTypeType + description: Optional[str] = None + unit: Optional[str] = None + allowedValues: Optional[Sequence[str]] = None + min: Optional[float] = None + max: Optional[float] = None + deprecationMessage: Optional[str] = None + comment: Optional[str] = None + structFullyQualifiedName: Optional[str] = None + +class ObdSignalTypeDef(BaseModel): + pidResponseLength: int + serviceMode: int + pid: int + scaling: float + offset: float + startByte: int + byteLength: int + bitRightShift: Optional[int] = None + bitMaskLength: Optional[int] = None + +class ROS2PrimitiveMessageDefinitionTypeDef(BaseModel): + primitiveType: ROS2PrimitiveTypeType + offset: Optional[float] = None + scaling: Optional[float] = None + upperBound: Optional[int] = None + +class PutEncryptionConfigurationRequestRequestTypeDef(BaseModel): + encryptionType: EncryptionTypeType + kmsKeyId: Optional[str] = None + +class TimestreamResourcesTypeDef(BaseModel): + timestreamDatabaseName: str + timestreamTableName: str + +class StructuredMessageFieldNameAndDataTypePairTypeDef(BaseModel): + fieldName: str + dataType: "StructuredMessageTypeDef" + +class StructuredMessageListDefinitionTypeDef(BaseModel): + name: str + memberType: "StructuredMessageTypeDef" + listType: StructuredMessageListTypeType + capacity: Optional[int] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateCampaignRequestRequestTypeDef(BaseModel): + name: str + action: UpdateCampaignActionType + description: Optional[str] = None + dataExtraDimensions: Optional[Sequence[str]] = None + +class UpdateFleetRequestRequestTypeDef(BaseModel): + fleetId: str + description: Optional[str] = None + +class UpdateModelManifestRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + nodesToAdd: Optional[Sequence[str]] = None + nodesToRemove: Optional[Sequence[str]] = None + status: Optional[ManifestStatusType] = None + +class UpdateVehicleRequestRequestTypeDef(BaseModel): + vehicleName: str + modelManifestArn: Optional[str] = None + decoderManifestArn: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + attributeUpdateMode: Optional[UpdateModeType] = None + +class BatchCreateVehicleResponseTypeDef(BaseModel): + vehicles: List[CreateVehicleResponseItemTypeDef] + errors: List[CreateVehicleErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCampaignResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDecoderManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetResponseTypeDef(BaseModel): + id: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSignalCatalogResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVehicleResponseTypeDef(BaseModel): + vehicleName: str + arn: str + thingArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCampaignResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDecoderManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFleetResponseTypeDef(BaseModel): + id: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteModelManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSignalCatalogResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVehicleResponseTypeDef(BaseModel): + vehicleName: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDecoderManifestResponseTypeDef(BaseModel): + name: str + arn: str + description: str + modelManifestArn: str + status: ManifestStatusType + creationTime: datetime + lastModificationTime: datetime + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEncryptionConfigurationResponseTypeDef(BaseModel): + kmsKeyId: str + encryptionStatus: EncryptionStatusType + encryptionType: EncryptionTypeType + errorMessage: str + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetFleetResponseTypeDef(BaseModel): + id: str + arn: str + description: str + signalCatalogArn: str + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelManifestResponseTypeDef(BaseModel): + name: str + arn: str + description: str + signalCatalogArn: str + status: ManifestStatusType + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetVehicleResponseTypeDef(BaseModel): + vehicleName: str + arn: str + modelManifestArn: str + decoderManifestArn: str + attributes: Dict[str, str] + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ImportDecoderManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportSignalCatalogResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetsForVehicleResponseTypeDef(BaseModel): + fleets: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVehiclesInFleetResponseTypeDef(BaseModel): + vehicles: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutEncryptionConfigurationResponseTypeDef(BaseModel): + kmsKeyId: str + encryptionStatus: EncryptionStatusType + encryptionType: EncryptionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCampaignResponseTypeDef(BaseModel): + arn: str + name: str + status: CampaignStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDecoderManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFleetResponseTypeDef(BaseModel): + id: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelManifestResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSignalCatalogResponseTypeDef(BaseModel): + name: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVehicleResponseTypeDef(BaseModel): + vehicleName: str + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateVehicleRequestRequestTypeDef(BaseModel): + vehicles: Sequence[UpdateVehicleRequestItemTypeDef] + +class BatchUpdateVehicleResponseTypeDef(BaseModel): + vehicles: List[UpdateVehicleResponseItemTypeDef] + errors: List[UpdateVehicleErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CanDbcDefinitionTypeDef(BaseModel): + networkInterface: str + canDbcFiles: Sequence[BlobTypeDef] + signalsMap: Optional[Mapping[str, str]] = None + +class ListCampaignsResponseTypeDef(BaseModel): + campaignSummaries: List[CampaignSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoggingOptionsResponseTypeDef(BaseModel): + cloudWatchLogDelivery: CloudWatchLogDeliveryOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingOptionsRequestRequestTypeDef(BaseModel): + cloudWatchLogDelivery: CloudWatchLogDeliveryOptionsTypeDef + +class CollectionSchemeTypeDef(BaseModel): + timeBasedCollectionScheme: Optional[TimeBasedCollectionSchemeTypeDef] = None + conditionBasedCollectionScheme: Optional[ConditionBasedCollectionSchemeTypeDef] = None + +class CreateFleetRequestRequestTypeDef(BaseModel): + fleetId: str + signalCatalogArn: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelManifestRequestRequestTypeDef(BaseModel): + name: str + nodes: Sequence[str] + signalCatalogArn: str + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVehicleRequestItemTypeDef(BaseModel): + vehicleName: str + modelManifestArn: str + decoderManifestArn: str + attributes: Optional[Mapping[str, str]] = None + associationBehavior: Optional[VehicleAssociationBehaviorType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVehicleRequestRequestTypeDef(BaseModel): + vehicleName: str + modelManifestArn: str + decoderManifestArn: str + attributes: Optional[Mapping[str, str]] = None + associationBehavior: Optional[VehicleAssociationBehaviorType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class DataDestinationConfigTypeDef(BaseModel): + s3Config: Optional[S3ConfigTypeDef] = None + timestreamConfig: Optional[TimestreamConfigTypeDef] = None + +class ListDecoderManifestsResponseTypeDef(BaseModel): + summaries: List[DecoderManifestSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetsResponseTypeDef(BaseModel): + fleetSummaries: List[FleetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportSignalCatalogRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + vss: Optional[FormattedVssTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class GetRegisterAccountStatusResponseTypeDef(BaseModel): + customerAccountId: str + accountStatus: RegistrationStatusType + timestreamRegistrationResponse: TimestreamRegistrationResponseTypeDef + iamRegistrationResponse: IamRegistrationResponseTypeDef + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetSignalCatalogResponseTypeDef(BaseModel): + name: str + arn: str + description: str + nodeCounts: NodeCountsTypeDef + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetVehicleStatusRequestGetVehicleStatusPaginateTypeDef(BaseModel): + vehicleName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCampaignsRequestListCampaignsPaginateTypeDef(BaseModel): + status: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDecoderManifestNetworkInterfacesRequestListDecoderManifestNetworkInterfacesPaginateTypeDef(BaseModel): + name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDecoderManifestSignalsRequestListDecoderManifestSignalsPaginateTypeDef(BaseModel): + name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDecoderManifestsRequestListDecoderManifestsPaginateTypeDef(BaseModel): + modelManifestArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetsForVehicleRequestListFleetsForVehiclePaginateTypeDef(BaseModel): + vehicleName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetsRequestListFleetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelManifestNodesRequestListModelManifestNodesPaginateTypeDef(BaseModel): + name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelManifestsRequestListModelManifestsPaginateTypeDef(BaseModel): + signalCatalogArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSignalCatalogNodesRequestListSignalCatalogNodesPaginateTypeDef(BaseModel): + name: str + signalNodeType: Optional[SignalNodeTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSignalCatalogsRequestListSignalCatalogsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVehiclesInFleetRequestListVehiclesInFleetPaginateTypeDef(BaseModel): + fleetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVehiclesRequestListVehiclesPaginateTypeDef(BaseModel): + modelManifestArn: Optional[str] = None + attributeNames: Optional[Sequence[str]] = None + attributeValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetVehicleStatusResponseTypeDef(BaseModel): + campaigns: List[VehicleStatusTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListModelManifestsResponseTypeDef(BaseModel): + summaries: List[ModelManifestSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSignalCatalogsResponseTypeDef(BaseModel): + summaries: List[SignalCatalogSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVehiclesResponseTypeDef(BaseModel): + vehicleSummaries: List[VehicleSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkInterfaceTypeDef(BaseModel): + interfaceId: str + type: NetworkInterfaceTypeType + canInterface: Optional[CanInterfaceTypeDef] = None + obdInterface: Optional[ObdInterfaceTypeDef] = None + vehicleMiddleware: Optional[VehicleMiddlewareTypeDef] = None + +class NodeExtraOutputTypeDef(BaseModel): + branch: Optional[BranchTypeDef] = None + sensor: Optional[SensorExtraOutputTypeDef] = None + actuator: Optional[ActuatorExtraOutputTypeDef] = None + attribute: Optional[AttributeExtraOutputTypeDef] = None + struct: Optional[CustomStructTypeDef] = None + property: Optional[CustomPropertyTypeDef] = None + +class NodeOutputTypeDef(BaseModel): + branch: Optional[BranchTypeDef] = None + sensor: Optional[SensorOutputTypeDef] = None + actuator: Optional[ActuatorOutputTypeDef] = None + attribute: Optional[AttributeOutputTypeDef] = None + struct: Optional[CustomStructTypeDef] = None + property: Optional[CustomPropertyTypeDef] = None + +class NodeTypeDef(BaseModel): + branch: Optional[BranchTypeDef] = None + sensor: Optional[SensorTypeDef] = None + actuator: Optional[ActuatorTypeDef] = None + attribute: Optional[AttributeTypeDef] = None + struct: Optional[CustomStructTypeDef] = None + property: Optional[CustomPropertyTypeDef] = None + +class SignalDecoderTypeDef(BaseModel): + fullyQualifiedName: str + type: SignalDecoderTypeType + interfaceId: str + canSignal: Optional[CanSignalTypeDef] = None + obdSignal: Optional[ObdSignalTypeDef] = None + messageSignal: Optional[MessageSignalTypeDef] = None + +class PrimitiveMessageDefinitionTypeDef(BaseModel): + ros2PrimitiveMessageDefinition: Optional[ROS2PrimitiveMessageDefinitionTypeDef] = None + +class RegisterAccountRequestRequestTypeDef(BaseModel): + timestreamResources: Optional[TimestreamResourcesTypeDef] = None + iamResources: Optional[IamResourcesTypeDef] = None + +class RegisterAccountResponseTypeDef(BaseModel): + registerAccountStatus: RegistrationStatusType + timestreamResources: TimestreamResourcesTypeDef + iamResources: IamResourcesTypeDef + creationTime: datetime + lastModificationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkFileDefinitionTypeDef(BaseModel): + canDbc: Optional[CanDbcDefinitionTypeDef] = None + +class BatchCreateVehicleRequestRequestTypeDef(BaseModel): + vehicles: Sequence[CreateVehicleRequestItemTypeDef] + +class CreateCampaignRequestRequestTypeDef(BaseModel): + name: str + signalCatalogArn: str + targetArn: str + collectionScheme: CollectionSchemeTypeDef + description: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + expiryTime: Optional[TimestampTypeDef] = None + postTriggerCollectionDuration: Optional[int] = None + diagnosticsMode: Optional[DiagnosticsModeType] = None + spoolingMode: Optional[SpoolingModeType] = None + compression: Optional[CompressionType] = None + priority: Optional[int] = None + signalsToCollect: Optional[Sequence[SignalInformationTypeDef]] = None + dataExtraDimensions: Optional[Sequence[str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + dataDestinationConfigs: Optional[Sequence[DataDestinationConfigTypeDef]] = None + +class GetCampaignResponseTypeDef(BaseModel): + name: str + arn: str + description: str + signalCatalogArn: str + targetArn: str + status: CampaignStatusType + startTime: datetime + expiryTime: datetime + postTriggerCollectionDuration: int + diagnosticsMode: DiagnosticsModeType + spoolingMode: SpoolingModeType + compression: CompressionType + priority: int + signalsToCollect: List[SignalInformationTypeDef] + collectionScheme: CollectionSchemeTypeDef + dataExtraDimensions: List[str] + creationTime: datetime + lastModificationTime: datetime + dataDestinationConfigs: List[DataDestinationConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDecoderManifestNetworkInterfacesResponseTypeDef(BaseModel): + networkInterfaces: List[NetworkInterfaceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSignalCatalogNodesResponseTypeDef(BaseModel): + nodes: List[NodeExtraOutputTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListModelManifestNodesResponseTypeDef(BaseModel): + nodes: List[NodeOutputTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDecoderManifestRequestRequestTypeDef(BaseModel): + name: str + modelManifestArn: str + description: Optional[str] = None + signalDecoders: Optional[Sequence[SignalDecoderTypeDef]] = None + networkInterfaces: Optional[Sequence[NetworkInterfaceTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListDecoderManifestSignalsResponseTypeDef(BaseModel): + signalDecoders: List[SignalDecoderTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDecoderManifestRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + signalDecodersToAdd: Optional[Sequence[SignalDecoderTypeDef]] = None + signalDecodersToUpdate: Optional[Sequence[SignalDecoderTypeDef]] = None + signalDecodersToRemove: Optional[Sequence[str]] = None + networkInterfacesToAdd: Optional[Sequence[NetworkInterfaceTypeDef]] = None + networkInterfacesToUpdate: Optional[Sequence[NetworkInterfaceTypeDef]] = None + networkInterfacesToRemove: Optional[Sequence[str]] = None + status: Optional[ManifestStatusType] = None + +class StructuredMessageTypeDef(BaseModel): + primitiveMessageDefinition: Optional[PrimitiveMessageDefinitionTypeDef] = None + structuredMessageListDefinition: Optional[Dict[str, Any]] = None + structuredMessageDefinition: Optional[Sequence[Dict[str, Any]]] = None + +class ImportDecoderManifestRequestRequestTypeDef(BaseModel): + name: str + networkFileDefinitions: Sequence[NetworkFileDefinitionTypeDef] + +class CreateSignalCatalogRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + nodes: Optional[Sequence[NodeUnionTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateSignalCatalogRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + nodesToAdd: Optional[Sequence[NodeUnionTypeDef]] = None + nodesToUpdate: Optional[Sequence[NodeUnionTypeDef]] = None + nodesToRemove: Optional[Sequence[str]] = None + diff --git a/aws_resource_validator/pydantic_models/iotfleetwise_constants.py b/aws_resource_validator/pydantic_models/iotfleetwise_constants.py new file mode 100644 index 00000000..f1ee8bf1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotfleetwise_constants.py @@ -0,0 +1,494 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CampaignStatusType = Literal["CREATING", "RUNNING", "SUSPENDED", "WAITING_FOR_APPROVAL"] +CompressionType = Literal["OFF", "SNAPPY"] +DataFormatType = Literal["JSON", "PARQUET"] +DiagnosticsModeType = Literal["OFF", "SEND_ACTIVE_DTCS"] +EncryptionStatusType = Literal["FAILURE", "PENDING", "SUCCESS"] +EncryptionTypeType = Literal["FLEETWISE_DEFAULT_ENCRYPTION", "KMS_BASED_ENCRYPTION"] +GetVehicleStatusPaginatorName = Literal["get_vehicle_status"] +ListCampaignsPaginatorName = Literal["list_campaigns"] +ListDecoderManifestNetworkInterfacesPaginatorName = Literal["list_decoder_manifest_network_interfaces"] +ListDecoderManifestSignalsPaginatorName = Literal["list_decoder_manifest_signals"] +ListDecoderManifestsPaginatorName = Literal["list_decoder_manifests"] +ListFleetsForVehiclePaginatorName = Literal["list_fleets_for_vehicle"] +ListFleetsPaginatorName = Literal["list_fleets"] +ListModelManifestNodesPaginatorName = Literal["list_model_manifest_nodes"] +ListModelManifestsPaginatorName = Literal["list_model_manifests"] +ListSignalCatalogNodesPaginatorName = Literal["list_signal_catalog_nodes"] +ListSignalCatalogsPaginatorName = Literal["list_signal_catalogs"] +ListVehiclesInFleetPaginatorName = Literal["list_vehicles_in_fleet"] +ListVehiclesPaginatorName = Literal["list_vehicles"] +LogTypeType = Literal["ERROR", "OFF"] +ManifestStatusType = Literal["ACTIVE", "DRAFT", "INVALID", "VALIDATING"] +NetworkInterfaceTypeType = Literal["CAN_INTERFACE", "OBD_INTERFACE", "VEHICLE_MIDDLEWARE"] +NodeDataEncodingType = Literal["BINARY", "TYPED"] +NodeDataTypeType = Literal["BOOLEAN", + "BOOLEAN_ARRAY", + "DOUBLE", + "DOUBLE_ARRAY", + "FLOAT", + "FLOAT_ARRAY", + "INT16", + "INT16_ARRAY", + "INT32", + "INT32_ARRAY", + "INT64", + "INT64_ARRAY", + "INT8", + "INT8_ARRAY", + "STRING", + "STRING_ARRAY", + "STRUCT", + "STRUCT_ARRAY", + "UINT16", + "UINT16_ARRAY", + "UINT32", + "UINT32_ARRAY", + "UINT64", + "UINT64_ARRAY", + "UINT8", + "UINT8_ARRAY", + "UNIX_TIMESTAMP", + "UNIX_TIMESTAMP_ARRAY", + "UNKNOWN",] +ROS2PrimitiveTypeType = Literal["BOOL", + "BYTE", + "CHAR", + "FLOAT32", + "FLOAT64", + "INT16", + "INT32", + "INT64", + "INT8", + "STRING", + "UINT16", + "UINT32", + "UINT64", + "UINT8", + "WSTRING",] +RegistrationStatusType = Literal["REGISTRATION_FAILURE", "REGISTRATION_PENDING", "REGISTRATION_SUCCESS"] +SignalDecoderTypeType = Literal["CAN_SIGNAL", "MESSAGE_SIGNAL", "OBD_SIGNAL"] +SignalNodeTypeType = Literal["ACTUATOR", "ATTRIBUTE", "BRANCH", "CUSTOM_PROPERTY", "CUSTOM_STRUCT", "SENSOR"] +SpoolingModeType = Literal["OFF", "TO_DISK"] +StorageCompressionFormatType = Literal["GZIP", "NONE"] +StructuredMessageListTypeType = Literal["DYNAMIC_BOUNDED_CAPACITY", "DYNAMIC_UNBOUNDED_CAPACITY", "FIXED_CAPACITY"] +TriggerModeType = Literal["ALWAYS", "RISING_EDGE"] +UpdateCampaignActionType = Literal["APPROVE", "RESUME", "SUSPEND", "UPDATE"] +UpdateModeType = Literal["Merge", "Overwrite"] +VehicleAssociationBehaviorType = Literal["CreateIotThing", "ValidateIotThingExists"] +VehicleMiddlewareProtocolType = Literal["ROS_2"] +VehicleStateType = Literal["CREATED", "DELETING", "HEALTHY", "READY", "SUSPENDED"] +IoTFleetWiseServiceName = Literal["iotfleetwise"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_vehicle_status", + "list_campaigns", + "list_decoder_manifest_network_interfaces", + "list_decoder_manifest_signals", + "list_decoder_manifests", + "list_fleets", + "list_fleets_for_vehicle", + "list_model_manifest_nodes", + "list_model_manifests", + "list_signal_catalog_nodes", + "list_signal_catalogs", + "list_vehicles", + "list_vehicles_in_fleet",] +RegionName = Literal["eu-central-1", "us-east-1"] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +NodeUnionTypeDef = Union['NodeTypeDef', 'NodeExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/iotsecuretunneling_classes.py b/aws_resource_validator/pydantic_models/iotsecuretunneling_classes.py new file mode 100644 index 00000000..4439bca6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotsecuretunneling_classes.py @@ -0,0 +1,116 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotsecuretunneling_constants import * + +class CloseTunnelRequestRequestTypeDef(BaseModel): + tunnelId: str + delete: Optional[bool] = None + +class ConnectionStateTypeDef(BaseModel): + status: Optional[ConnectionStatusType] = None + lastUpdatedAt: Optional[datetime] = None + +class DescribeTunnelRequestRequestTypeDef(BaseModel): + tunnelId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DestinationConfigTypeDef(BaseModel): + services: List[str] + thingName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagTypeDef(BaseModel): + key: str + value: str + +class ListTunnelsRequestRequestTypeDef(BaseModel): + thingName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TunnelSummaryTypeDef(BaseModel): + tunnelId: Optional[str] = None + tunnelArn: Optional[str] = None + status: Optional[TunnelStatusType] = None + description: Optional[str] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + +class TimeoutConfigTypeDef(BaseModel): + maxLifetimeTimeoutMinutes: Optional[int] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class OpenTunnelResponseTypeDef(BaseModel): + tunnelId: str + tunnelArn: str + sourceAccessToken: str + destinationAccessToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RotateTunnelAccessTokenResponseTypeDef(BaseModel): + tunnelArn: str + sourceAccessToken: str + destinationAccessToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RotateTunnelAccessTokenRequestRequestTypeDef(BaseModel): + tunnelId: str + clientMode: ClientModeType + destinationConfig: Optional[DestinationConfigTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class ListTunnelsResponseTypeDef(BaseModel): + tunnelSummaries: List[TunnelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OpenTunnelRequestRequestTypeDef(BaseModel): + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + destinationConfig: Optional[DestinationConfigTypeDef] = None + timeoutConfig: Optional[TimeoutConfigTypeDef] = None + +class TunnelTypeDef(BaseModel): + tunnelId: Optional[str] = None + tunnelArn: Optional[str] = None + status: Optional[TunnelStatusType] = None + sourceConnectionState: Optional[ConnectionStateTypeDef] = None + destinationConnectionState: Optional[ConnectionStateTypeDef] = None + description: Optional[str] = None + destinationConfig: Optional[DestinationConfigTypeDef] = None + timeoutConfig: Optional[TimeoutConfigTypeDef] = None + tags: Optional[List[TagTypeDef]] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + +class DescribeTunnelResponseTypeDef(BaseModel): + tunnel: TunnelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotsecuretunneling_constants.py b/aws_resource_validator/pydantic_models/iotsecuretunneling_constants.py new file mode 100644 index 00000000..3b651d6b --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotsecuretunneling_constants.py @@ -0,0 +1,410 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ClientModeType = Literal["ALL", "DESTINATION", "SOURCE"] +ConnectionStatusType = Literal["CONNECTED", "DISCONNECTED"] +TunnelStatusType = Literal["CLOSED", "OPEN"] +IoTSecureTunnelingServiceName = Literal["iotsecuretunneling"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/iotsitewise_classes.py b/aws_resource_validator/pydantic_models/iotsitewise_classes.py new file mode 100644 index 00000000..e9710880 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotsitewise_classes.py @@ -0,0 +1,1740 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotsitewise_constants import * + +class ActionDefinitionTypeDef(BaseModel): + actionDefinitionId: str + actionName: str + actionType: str + +class ActionPayloadTypeDef(BaseModel): + stringValue: str + +class TargetResourceTypeDef(BaseModel): + assetId: str + +class AggregatesTypeDef(BaseModel): + average: Optional[float] = None + count: Optional[float] = None + maximum: Optional[float] = None + minimum: Optional[float] = None + sum: Optional[float] = None + standardDeviation: Optional[float] = None + +class AlarmsTypeDef(BaseModel): + alarmRoleArn: str + notificationLambdaArn: Optional[str] = None + +class AssetCompositeModelPathSegmentTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class AssetErrorDetailsTypeDef(BaseModel): + assetId: str + code: Literal["INTERNAL_FAILURE"] + message: str + +class AssetHierarchyInfoTypeDef(BaseModel): + parentAssetId: Optional[str] = None + childAssetId: Optional[str] = None + +class AssetHierarchyTypeDef(BaseModel): + name: str + id: Optional[str] = None + externalId: Optional[str] = None + +class AssetModelCompositeModelPathSegmentTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class AssetModelHierarchyDefinitionTypeDef(BaseModel): + name: str + childAssetModelId: str + id: Optional[str] = None + externalId: Optional[str] = None + +class AssetModelHierarchyTypeDef(BaseModel): + name: str + childAssetModelId: str + id: Optional[str] = None + externalId: Optional[str] = None + +class AssetModelPropertyPathSegmentTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class AssetPropertyPathSegmentTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class PropertyNotificationTypeDef(BaseModel): + topic: str + state: PropertyNotificationStateType + +class TimeInNanosTypeDef(BaseModel): + timeInSeconds: int + offsetInNanos: Optional[int] = None + +class VariantTypeDef(BaseModel): + stringValue: Optional[str] = None + integerValue: Optional[int] = None + doubleValue: Optional[float] = None + booleanValue: Optional[bool] = None + +class AssociateAssetsRequestRequestTypeDef(BaseModel): + assetId: str + hierarchyId: str + childAssetId: str + clientToken: Optional[str] = None + +class AssociateTimeSeriesToAssetPropertyRequestRequestTypeDef(BaseModel): + alias: str + assetId: str + propertyId: str + clientToken: Optional[str] = None + +class AttributeTypeDef(BaseModel): + defaultValue: Optional[str] = None + +class BatchAssociateProjectAssetsRequestRequestTypeDef(BaseModel): + projectId: str + assetIds: Sequence[str] + clientToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchDisassociateProjectAssetsRequestRequestTypeDef(BaseModel): + projectId: str + assetIds: Sequence[str] + clientToken: Optional[str] = None + +class BatchGetAssetPropertyAggregatesErrorEntryTypeDef(BaseModel): + errorCode: BatchGetAssetPropertyAggregatesErrorCodeType + errorMessage: str + entryId: str + +class BatchGetAssetPropertyAggregatesErrorInfoTypeDef(BaseModel): + errorCode: BatchGetAssetPropertyAggregatesErrorCodeType + errorTimestamp: datetime + +class BatchGetAssetPropertyValueEntryTypeDef(BaseModel): + entryId: str + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + +class BatchGetAssetPropertyValueErrorEntryTypeDef(BaseModel): + errorCode: BatchGetAssetPropertyValueErrorCodeType + errorMessage: str + entryId: str + +class BatchGetAssetPropertyValueErrorInfoTypeDef(BaseModel): + errorCode: BatchGetAssetPropertyValueErrorCodeType + errorTimestamp: datetime + +class BatchGetAssetPropertyValueHistoryErrorEntryTypeDef(BaseModel): + errorCode: BatchGetAssetPropertyValueHistoryErrorCodeType + errorMessage: str + entryId: str + +class BatchGetAssetPropertyValueHistoryErrorInfoTypeDef(BaseModel): + errorCode: BatchGetAssetPropertyValueHistoryErrorCodeType + errorTimestamp: datetime + +class ColumnTypeTypeDef(BaseModel): + scalarType: Optional[ScalarTypeType] = None + +class CompositionRelationshipItemTypeDef(BaseModel): + id: Optional[str] = None + +class CompositionRelationshipSummaryTypeDef(BaseModel): + assetModelId: str + assetModelCompositeModelId: str + assetModelCompositeModelType: str + +class ConfigurationErrorDetailsTypeDef(BaseModel): + code: ErrorCodeType + message: str + +class CreateAssetRequestRequestTypeDef(BaseModel): + assetName: str + assetModelId: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + assetDescription: Optional[str] = None + assetId: Optional[str] = None + assetExternalId: Optional[str] = None + +class ErrorReportLocationTypeDef(BaseModel): + bucket: str + prefix: str + +class FileTypeDef(BaseModel): + bucket: str + key: str + versionId: Optional[str] = None + +class CreateDashboardRequestRequestTypeDef(BaseModel): + projectId: str + dashboardName: str + dashboardDefinition: str + dashboardDescription: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateProjectRequestRequestTypeDef(BaseModel): + portalId: str + projectName: str + projectDescription: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CsvTypeDef(BaseModel): + columnNames: Sequence[ColumnNameType] + +class CustomerManagedS3StorageTypeDef(BaseModel): + s3ResourceArn: str + roleArn: str + +class DashboardSummaryTypeDef(BaseModel): + id: str + name: str + description: Optional[str] = None + creationDate: Optional[datetime] = None + lastUpdateDate: Optional[datetime] = None + +class RowTypeDef(BaseModel): + data: List["DatumTypeDef"] + +class DeleteAccessPolicyRequestRequestTypeDef(BaseModel): + accessPolicyId: str + clientToken: Optional[str] = None + +class DeleteAssetModelCompositeModelRequestRequestTypeDef(BaseModel): + assetModelId: str + assetModelCompositeModelId: str + clientToken: Optional[str] = None + +class DeleteAssetModelRequestRequestTypeDef(BaseModel): + assetModelId: str + clientToken: Optional[str] = None + +class DeleteAssetRequestRequestTypeDef(BaseModel): + assetId: str + clientToken: Optional[str] = None + +class DeleteDashboardRequestRequestTypeDef(BaseModel): + dashboardId: str + clientToken: Optional[str] = None + +class DeleteGatewayRequestRequestTypeDef(BaseModel): + gatewayId: str + +class DeletePortalRequestRequestTypeDef(BaseModel): + portalId: str + clientToken: Optional[str] = None + +class DeleteProjectRequestRequestTypeDef(BaseModel): + projectId: str + clientToken: Optional[str] = None + +class DeleteTimeSeriesRequestRequestTypeDef(BaseModel): + alias: Optional[str] = None + assetId: Optional[str] = None + propertyId: Optional[str] = None + clientToken: Optional[str] = None + +class DescribeAccessPolicyRequestRequestTypeDef(BaseModel): + accessPolicyId: str + +class DescribeActionRequestRequestTypeDef(BaseModel): + actionId: str + +class DescribeAssetCompositeModelRequestRequestTypeDef(BaseModel): + assetId: str + assetCompositeModelId: str + +class DescribeAssetModelCompositeModelRequestRequestTypeDef(BaseModel): + assetModelId: str + assetModelCompositeModelId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeAssetModelRequestRequestTypeDef(BaseModel): + assetModelId: str + excludeProperties: Optional[bool] = None + +class DescribeAssetPropertyRequestRequestTypeDef(BaseModel): + assetId: str + propertyId: str + +class DescribeAssetRequestRequestTypeDef(BaseModel): + assetId: str + excludeProperties: Optional[bool] = None + +class DescribeBulkImportJobRequestRequestTypeDef(BaseModel): + jobId: str + +class DescribeDashboardRequestRequestTypeDef(BaseModel): + dashboardId: str + +class DescribeGatewayCapabilityConfigurationRequestRequestTypeDef(BaseModel): + gatewayId: str + capabilityNamespace: str + +class DescribeGatewayRequestRequestTypeDef(BaseModel): + gatewayId: str + +class GatewayCapabilitySummaryTypeDef(BaseModel): + capabilityNamespace: str + capabilitySyncStatus: CapabilitySyncStatusType + +class LoggingOptionsTypeDef(BaseModel): + level: LoggingLevelType + +class DescribePortalRequestRequestTypeDef(BaseModel): + portalId: str + +class ImageLocationTypeDef(BaseModel): + id: str + url: str + +class DescribeProjectRequestRequestTypeDef(BaseModel): + projectId: str + +class RetentionPeriodTypeDef(BaseModel): + numberOfDays: Optional[int] = None + unlimited: Optional[bool] = None + +class WarmTierRetentionPeriodTypeDef(BaseModel): + numberOfDays: Optional[int] = None + unlimited: Optional[bool] = None + +class DescribeTimeSeriesRequestRequestTypeDef(BaseModel): + alias: Optional[str] = None + assetId: Optional[str] = None + propertyId: Optional[str] = None + +class DetailedErrorTypeDef(BaseModel): + code: DetailedErrorCodeType + message: str + +class DisassociateAssetsRequestRequestTypeDef(BaseModel): + assetId: str + hierarchyId: str + childAssetId: str + clientToken: Optional[str] = None + +class DisassociateTimeSeriesFromAssetPropertyRequestRequestTypeDef(BaseModel): + alias: str + assetId: str + propertyId: str + clientToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ExecuteQueryRequestRequestTypeDef(BaseModel): + queryStatement: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ForwardingConfigTypeDef(BaseModel): + state: ForwardingConfigStateType + +class GreengrassTypeDef(BaseModel): + groupArn: str + +class GreengrassV2TypeDef(BaseModel): + coreDeviceThingName: str + +class GetAssetPropertyValueRequestRequestTypeDef(BaseModel): + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + +class GetInterpolatedAssetPropertyValuesRequestRequestTypeDef(BaseModel): + startTimeInSeconds: int + endTimeInSeconds: int + quality: QualityType + intervalInSeconds: int + type: str + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + startTimeOffsetInNanos: Optional[int] = None + endTimeOffsetInNanos: Optional[int] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + intervalWindowInSeconds: Optional[int] = None + +class GroupIdentityTypeDef(BaseModel): + id: str + +class IAMRoleIdentityTypeDef(BaseModel): + arn: str + +class IAMUserIdentityTypeDef(BaseModel): + arn: str + +class UserIdentityTypeDef(BaseModel): + id: str + +class JobSummaryTypeDef(BaseModel): + id: str + name: str + status: JobStatusType + +class ListAccessPoliciesRequestRequestTypeDef(BaseModel): + identityType: Optional[IdentityTypeType] = None + identityId: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + resourceId: Optional[str] = None + iamArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListActionsRequestRequestTypeDef(BaseModel): + targetResourceType: Literal["ASSET"] + targetResourceId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssetModelCompositeModelsRequestRequestTypeDef(BaseModel): + assetModelId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssetModelPropertiesRequestRequestTypeDef(BaseModel): + assetModelId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[ListAssetModelPropertiesFilterType] = None + +class ListAssetModelsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + assetModelTypes: Optional[Sequence[AssetModelTypeType]] = None + +class ListAssetPropertiesRequestRequestTypeDef(BaseModel): + assetId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[ListAssetPropertiesFilterType] = None + +class ListAssetRelationshipsRequestRequestTypeDef(BaseModel): + assetId: str + traversalType: Literal["PATH_TO_ROOT"] + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssetsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + assetModelId: Optional[str] = None + filter: Optional[ListAssetsFilterType] = None + +class ListAssociatedAssetsRequestRequestTypeDef(BaseModel): + assetId: str + hierarchyId: Optional[str] = None + traversalDirection: Optional[TraversalDirectionType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListBulkImportJobsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[ListBulkImportJobsFilterType] = None + +class ListCompositionRelationshipsRequestRequestTypeDef(BaseModel): + assetModelId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDashboardsRequestRequestTypeDef(BaseModel): + projectId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListGatewaysRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPortalsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListProjectAssetsRequestRequestTypeDef(BaseModel): + projectId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + portalId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ProjectSummaryTypeDef(BaseModel): + id: str + name: str + description: Optional[str] = None + creationDate: Optional[datetime] = None + lastUpdateDate: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTimeSeriesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + assetId: Optional[str] = None + aliasPrefix: Optional[str] = None + timeSeriesType: Optional[ListTimeSeriesTypeType] = None + +class TimeSeriesSummaryTypeDef(BaseModel): + timeSeriesId: str + dataType: PropertyDataTypeType + timeSeriesCreationDate: datetime + timeSeriesLastUpdateDate: datetime + timeSeriesArn: str + assetId: Optional[str] = None + propertyId: Optional[str] = None + alias: Optional[str] = None + dataTypeSpec: Optional[str] = None + +class MetricProcessingConfigTypeDef(BaseModel): + computeLocation: ComputeLocationType + +class TumblingWindowTypeDef(BaseModel): + interval: str + offset: Optional[str] = None + +class MonitorErrorDetailsTypeDef(BaseModel): + code: Optional[MonitorErrorCodeType] = None + message: Optional[str] = None + +class PortalResourceTypeDef(BaseModel): + id: str + +class ProjectResourceTypeDef(BaseModel): + id: str + +class PutDefaultEncryptionConfigurationRequestRequestTypeDef(BaseModel): + encryptionType: EncryptionTypeType + kmsKeyId: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAssetPropertyRequestRequestTypeDef(BaseModel): + assetId: str + propertyId: str + propertyAlias: Optional[str] = None + propertyNotificationState: Optional[PropertyNotificationStateType] = None + clientToken: Optional[str] = None + propertyUnit: Optional[str] = None + +class UpdateAssetRequestRequestTypeDef(BaseModel): + assetId: str + assetName: str + clientToken: Optional[str] = None + assetDescription: Optional[str] = None + assetExternalId: Optional[str] = None + +class UpdateDashboardRequestRequestTypeDef(BaseModel): + dashboardId: str + dashboardName: str + dashboardDefinition: str + dashboardDescription: Optional[str] = None + clientToken: Optional[str] = None + +class UpdateGatewayCapabilityConfigurationRequestRequestTypeDef(BaseModel): + gatewayId: str + capabilityNamespace: str + capabilityConfiguration: str + +class UpdateGatewayRequestRequestTypeDef(BaseModel): + gatewayId: str + gatewayName: str + +class UpdateProjectRequestRequestTypeDef(BaseModel): + projectId: str + projectName: str + projectDescription: Optional[str] = None + clientToken: Optional[str] = None + +class ActionSummaryTypeDef(BaseModel): + actionId: Optional[str] = None + actionDefinitionId: Optional[str] = None + targetResource: Optional[TargetResourceTypeDef] = None + +class ExecuteActionRequestRequestTypeDef(BaseModel): + targetResource: TargetResourceTypeDef + actionDefinitionId: str + actionPayload: ActionPayloadTypeDef + clientToken: Optional[str] = None + +class AggregatedValueTypeDef(BaseModel): + timestamp: datetime + value: AggregatesTypeDef + quality: Optional[QualityType] = None + +class AssetCompositeModelSummaryTypeDef(BaseModel): + id: str + name: str + type: str + description: str + path: List[AssetCompositeModelPathSegmentTypeDef] + externalId: Optional[str] = None + +class AssetRelationshipSummaryTypeDef(BaseModel): + relationshipType: Literal["HIERARCHY"] + hierarchyInfo: Optional[AssetHierarchyInfoTypeDef] = None + +class AssetModelCompositeModelSummaryTypeDef(BaseModel): + id: str + name: str + type: str + externalId: Optional[str] = None + description: Optional[str] = None + path: Optional[List[AssetModelCompositeModelPathSegmentTypeDef]] = None + +class VariableValuePaginatorTypeDef(BaseModel): + propertyId: Optional[str] = None + hierarchyId: Optional[str] = None + propertyPath: Optional[List[AssetModelPropertyPathSegmentTypeDef]] = None + +class VariableValueTypeDef(BaseModel): + propertyId: Optional[str] = None + hierarchyId: Optional[str] = None + propertyPath: Optional[Sequence[AssetModelPropertyPathSegmentTypeDef]] = None + +class AssetPropertySummaryTypeDef(BaseModel): + id: str + alias: Optional[str] = None + unit: Optional[str] = None + notification: Optional[PropertyNotificationTypeDef] = None + assetCompositeModelId: Optional[str] = None + path: Optional[List[AssetPropertyPathSegmentTypeDef]] = None + externalId: Optional[str] = None + +class AssetPropertyTypeDef(BaseModel): + id: str + name: str + dataType: PropertyDataTypeType + alias: Optional[str] = None + notification: Optional[PropertyNotificationTypeDef] = None + dataTypeSpec: Optional[str] = None + unit: Optional[str] = None + path: Optional[List[AssetPropertyPathSegmentTypeDef]] = None + externalId: Optional[str] = None + +class BatchPutAssetPropertyErrorTypeDef(BaseModel): + errorCode: BatchPutAssetPropertyValueErrorCodeType + errorMessage: str + timestamps: List[TimeInNanosTypeDef] + +class AssetPropertyValueTypeDef(BaseModel): + value: VariantTypeDef + timestamp: TimeInNanosTypeDef + quality: Optional[QualityType] = None + +class InterpolatedAssetPropertyValueTypeDef(BaseModel): + timestamp: TimeInNanosTypeDef + value: VariantTypeDef + +class BatchAssociateProjectAssetsResponseTypeDef(BaseModel): + errors: List[AssetErrorDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateProjectAssetsResponseTypeDef(BaseModel): + errors: List[AssetErrorDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPolicyResponseTypeDef(BaseModel): + accessPolicyId: str + accessPolicyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBulkImportJobResponseTypeDef(BaseModel): + jobId: str + jobName: str + jobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDashboardResponseTypeDef(BaseModel): + dashboardId: str + dashboardArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGatewayResponseTypeDef(BaseModel): + gatewayId: str + gatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResponseTypeDef(BaseModel): + projectId: str + projectArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeActionResponseTypeDef(BaseModel): + actionId: str + targetResource: TargetResourceTypeDef + actionDefinitionId: str + actionPayload: ActionPayloadTypeDef + executionTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDashboardResponseTypeDef(BaseModel): + dashboardId: str + dashboardArn: str + dashboardName: str + projectId: str + dashboardDescription: str + dashboardDefinition: str + dashboardCreationDate: datetime + dashboardLastUpdateDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGatewayCapabilityConfigurationResponseTypeDef(BaseModel): + gatewayId: str + capabilityNamespace: str + capabilityConfiguration: str + capabilitySyncStatus: CapabilitySyncStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProjectResponseTypeDef(BaseModel): + projectId: str + projectArn: str + projectName: str + portalId: str + projectDescription: str + projectCreationDate: datetime + projectLastUpdateDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTimeSeriesResponseTypeDef(BaseModel): + assetId: str + propertyId: str + alias: str + timeSeriesId: str + dataType: PropertyDataTypeType + dataTypeSpec: str + timeSeriesCreationDate: datetime + timeSeriesLastUpdateDate: datetime + timeSeriesArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteActionResponseTypeDef(BaseModel): + actionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectAssetsResponseTypeDef(BaseModel): + assetIds: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewayCapabilityConfigurationResponseTypeDef(BaseModel): + capabilityNamespace: str + capabilitySyncStatus: CapabilitySyncStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetAssetPropertyAggregatesEntryTypeDef(BaseModel): + entryId: str + aggregateTypes: Sequence[AggregateTypeType] + resolution: str + startDate: TimestampTypeDef + endDate: TimestampTypeDef + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + qualities: Optional[Sequence[QualityType]] = None + timeOrdering: Optional[TimeOrderingType] = None + +class BatchGetAssetPropertyValueHistoryEntryTypeDef(BaseModel): + entryId: str + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + startDate: Optional[TimestampTypeDef] = None + endDate: Optional[TimestampTypeDef] = None + qualities: Optional[Sequence[QualityType]] = None + timeOrdering: Optional[TimeOrderingType] = None + +class GetAssetPropertyAggregatesRequestRequestTypeDef(BaseModel): + aggregateTypes: Sequence[AggregateTypeType] + resolution: str + startDate: TimestampTypeDef + endDate: TimestampTypeDef + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + qualities: Optional[Sequence[QualityType]] = None + timeOrdering: Optional[TimeOrderingType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetAssetPropertyValueHistoryRequestRequestTypeDef(BaseModel): + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + startDate: Optional[TimestampTypeDef] = None + endDate: Optional[TimestampTypeDef] = None + qualities: Optional[Sequence[QualityType]] = None + timeOrdering: Optional[TimeOrderingType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class BatchGetAssetPropertyAggregatesSkippedEntryTypeDef(BaseModel): + entryId: str + completionStatus: BatchEntryCompletionStatusType + errorInfo: Optional[BatchGetAssetPropertyAggregatesErrorInfoTypeDef] = None + +class BatchGetAssetPropertyValueRequestRequestTypeDef(BaseModel): + entries: Sequence[BatchGetAssetPropertyValueEntryTypeDef] + nextToken: Optional[str] = None + +class BatchGetAssetPropertyValueSkippedEntryTypeDef(BaseModel): + entryId: str + completionStatus: BatchEntryCompletionStatusType + errorInfo: Optional[BatchGetAssetPropertyValueErrorInfoTypeDef] = None + +class BatchGetAssetPropertyValueHistorySkippedEntryTypeDef(BaseModel): + entryId: str + completionStatus: BatchEntryCompletionStatusType + errorInfo: Optional[BatchGetAssetPropertyValueHistoryErrorInfoTypeDef] = None + +class ImageFileTypeDef(BaseModel): + data: BlobTypeDef + type: Literal["PNG"] + +class ColumnInfoTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[ColumnTypeTypeDef] = None + +class CompositionDetailsTypeDef(BaseModel): + compositionRelationship: Optional[List[CompositionRelationshipItemTypeDef]] = None + +class ListCompositionRelationshipsResponseTypeDef(BaseModel): + compositionRelationshipSummaries: List[CompositionRelationshipSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigurationStatusTypeDef(BaseModel): + state: ConfigurationStateType + error: Optional[ConfigurationErrorDetailsTypeDef] = None + +class FileFormatTypeDef(BaseModel): + csv: Optional[CsvTypeDef] = None + parquet: Optional[Mapping[str, Any]] = None + +class MultiLayerStorageTypeDef(BaseModel): + customerManagedS3Storage: CustomerManagedS3StorageTypeDef + +class ListDashboardsResponseTypeDef(BaseModel): + dashboardSummaries: List[DashboardSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatumTypeDef(BaseModel): + scalarValue: Optional[str] = None + arrayValue: Optional[List[Dict[str, Any]]] = None + rowValue: Optional[Dict[str, Any]] = None + nullValue: Optional[bool] = None + +class DescribeAssetModelRequestAssetModelActiveWaitTypeDef(BaseModel): + assetModelId: str + excludeProperties: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeAssetModelRequestAssetModelNotExistsWaitTypeDef(BaseModel): + assetModelId: str + excludeProperties: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeAssetRequestAssetActiveWaitTypeDef(BaseModel): + assetId: str + excludeProperties: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeAssetRequestAssetNotExistsWaitTypeDef(BaseModel): + assetId: str + excludeProperties: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribePortalRequestPortalActiveWaitTypeDef(BaseModel): + portalId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribePortalRequestPortalNotExistsWaitTypeDef(BaseModel): + portalId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeLoggingOptionsResponseTypeDef(BaseModel): + loggingOptions: LoggingOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingOptionsRequestRequestTypeDef(BaseModel): + loggingOptions: LoggingOptionsTypeDef + +class ErrorDetailsTypeDef(BaseModel): + code: ErrorCodeType + message: str + details: Optional[List[DetailedErrorTypeDef]] = None + +class ExecuteQueryRequestExecuteQueryPaginateTypeDef(BaseModel): + queryStatement: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAssetPropertyAggregatesRequestGetAssetPropertyAggregatesPaginateTypeDef(BaseModel): + aggregateTypes: Sequence[AggregateTypeType] + resolution: str + startDate: TimestampTypeDef + endDate: TimestampTypeDef + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + qualities: Optional[Sequence[QualityType]] = None + timeOrdering: Optional[TimeOrderingType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAssetPropertyValueHistoryRequestGetAssetPropertyValueHistoryPaginateTypeDef(BaseModel): + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + startDate: Optional[TimestampTypeDef] = None + endDate: Optional[TimestampTypeDef] = None + qualities: Optional[Sequence[QualityType]] = None + timeOrdering: Optional[TimeOrderingType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetInterpolatedAssetPropertyValuesRequestGetInterpolatedAssetPropertyValuesPaginateTypeDef(BaseModel): + startTimeInSeconds: int + endTimeInSeconds: int + quality: QualityType + intervalInSeconds: int + type: str + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + startTimeOffsetInNanos: Optional[int] = None + endTimeOffsetInNanos: Optional[int] = None + intervalWindowInSeconds: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessPoliciesRequestListAccessPoliciesPaginateTypeDef(BaseModel): + identityType: Optional[IdentityTypeType] = None + identityId: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + resourceId: Optional[str] = None + iamArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListActionsRequestListActionsPaginateTypeDef(BaseModel): + targetResourceType: Literal["ASSET"] + targetResourceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetModelCompositeModelsRequestListAssetModelCompositeModelsPaginateTypeDef(BaseModel): + assetModelId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetModelPropertiesRequestListAssetModelPropertiesPaginateTypeDef(BaseModel): + assetModelId: str + filter: Optional[ListAssetModelPropertiesFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetModelsRequestListAssetModelsPaginateTypeDef(BaseModel): + assetModelTypes: Optional[Sequence[AssetModelTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetPropertiesRequestListAssetPropertiesPaginateTypeDef(BaseModel): + assetId: str + filter: Optional[ListAssetPropertiesFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetRelationshipsRequestListAssetRelationshipsPaginateTypeDef(BaseModel): + assetId: str + traversalType: Literal["PATH_TO_ROOT"] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetsRequestListAssetsPaginateTypeDef(BaseModel): + assetModelId: Optional[str] = None + filter: Optional[ListAssetsFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedAssetsRequestListAssociatedAssetsPaginateTypeDef(BaseModel): + assetId: str + hierarchyId: Optional[str] = None + traversalDirection: Optional[TraversalDirectionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBulkImportJobsRequestListBulkImportJobsPaginateTypeDef(BaseModel): + filter: Optional[ListBulkImportJobsFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCompositionRelationshipsRequestListCompositionRelationshipsPaginateTypeDef(BaseModel): + assetModelId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDashboardsRequestListDashboardsPaginateTypeDef(BaseModel): + projectId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGatewaysRequestListGatewaysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPortalsRequestListPortalsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectAssetsRequestListProjectAssetsPaginateTypeDef(BaseModel): + projectId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + portalId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTimeSeriesRequestListTimeSeriesPaginateTypeDef(BaseModel): + assetId: Optional[str] = None + aliasPrefix: Optional[str] = None + timeSeriesType: Optional[ListTimeSeriesTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class MeasurementProcessingConfigTypeDef(BaseModel): + forwardingConfig: ForwardingConfigTypeDef + +class TransformProcessingConfigTypeDef(BaseModel): + computeLocation: ComputeLocationType + forwardingConfig: Optional[ForwardingConfigTypeDef] = None + +class GatewayPlatformTypeDef(BaseModel): + greengrass: Optional[GreengrassTypeDef] = None + greengrassV2: Optional[GreengrassV2TypeDef] = None + +class IdentityTypeDef(BaseModel): + user: Optional[UserIdentityTypeDef] = None + group: Optional[GroupIdentityTypeDef] = None + iamUser: Optional[IAMUserIdentityTypeDef] = None + iamRole: Optional[IAMRoleIdentityTypeDef] = None + +class ListBulkImportJobsResponseTypeDef(BaseModel): + jobSummaries: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsResponseTypeDef(BaseModel): + projectSummaries: List[ProjectSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTimeSeriesResponseTypeDef(BaseModel): + TimeSeriesSummaries: List[TimeSeriesSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricWindowTypeDef(BaseModel): + tumbling: Optional[TumblingWindowTypeDef] = None + +class PortalStatusTypeDef(BaseModel): + state: PortalStateType + error: Optional[MonitorErrorDetailsTypeDef] = None + +class ResourceTypeDef(BaseModel): + portal: Optional[PortalResourceTypeDef] = None + project: Optional[ProjectResourceTypeDef] = None + +class ListActionsResponseTypeDef(BaseModel): + actionSummaries: List[ActionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetAssetPropertyAggregatesSuccessEntryTypeDef(BaseModel): + entryId: str + aggregatedValues: List[AggregatedValueTypeDef] + +class GetAssetPropertyAggregatesResponseTypeDef(BaseModel): + aggregatedValues: List[AggregatedValueTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetRelationshipsResponseTypeDef(BaseModel): + assetRelationshipSummaries: List[AssetRelationshipSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetModelCompositeModelsResponseTypeDef(BaseModel): + assetModelCompositeModelSummaries: List[AssetModelCompositeModelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExpressionVariablePaginatorTypeDef(BaseModel): + name: str + value: VariableValuePaginatorTypeDef + +class ExpressionVariableTypeDef(BaseModel): + name: str + value: VariableValueTypeDef + +class ListAssetPropertiesResponseTypeDef(BaseModel): + assetPropertySummaries: List[AssetPropertySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetCompositeModelTypeDef(BaseModel): + name: str + type: str + properties: List[AssetPropertyTypeDef] + description: Optional[str] = None + id: Optional[str] = None + externalId: Optional[str] = None + +class DescribeAssetCompositeModelResponseTypeDef(BaseModel): + assetId: str + assetCompositeModelId: str + assetCompositeModelExternalId: str + assetCompositeModelPath: List[AssetCompositeModelPathSegmentTypeDef] + assetCompositeModelName: str + assetCompositeModelDescription: str + assetCompositeModelType: str + assetCompositeModelProperties: List[AssetPropertyTypeDef] + assetCompositeModelSummaries: List[AssetCompositeModelSummaryTypeDef] + actionDefinitions: List[ActionDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutAssetPropertyErrorEntryTypeDef(BaseModel): + entryId: str + errors: List[BatchPutAssetPropertyErrorTypeDef] + +class BatchGetAssetPropertyValueHistorySuccessEntryTypeDef(BaseModel): + entryId: str + assetPropertyValueHistory: List[AssetPropertyValueTypeDef] + +class BatchGetAssetPropertyValueSuccessEntryTypeDef(BaseModel): + entryId: str + assetPropertyValue: Optional[AssetPropertyValueTypeDef] = None + +class GetAssetPropertyValueHistoryResponseTypeDef(BaseModel): + assetPropertyValueHistory: List[AssetPropertyValueTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssetPropertyValueResponseTypeDef(BaseModel): + propertyValue: AssetPropertyValueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAssetPropertyValueEntryTypeDef(BaseModel): + entryId: str + propertyValues: Sequence[AssetPropertyValueTypeDef] + assetId: Optional[str] = None + propertyId: Optional[str] = None + propertyAlias: Optional[str] = None + +class GetInterpolatedAssetPropertyValuesResponseTypeDef(BaseModel): + interpolatedAssetPropertyValues: List[InterpolatedAssetPropertyValueTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetAssetPropertyAggregatesRequestRequestTypeDef(BaseModel): + entries: Sequence[BatchGetAssetPropertyAggregatesEntryTypeDef] + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class BatchGetAssetPropertyValueHistoryRequestRequestTypeDef(BaseModel): + entries: Sequence[BatchGetAssetPropertyValueHistoryEntryTypeDef] + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class CreatePortalRequestRequestTypeDef(BaseModel): + portalName: str + portalContactEmail: str + roleArn: str + portalDescription: Optional[str] = None + clientToken: Optional[str] = None + portalLogoImageFile: Optional[ImageFileTypeDef] = None + tags: Optional[Mapping[str, str]] = None + portalAuthMode: Optional[AuthModeType] = None + notificationSenderEmail: Optional[str] = None + alarms: Optional[AlarmsTypeDef] = None + +class ImageTypeDef(BaseModel): + id: Optional[str] = None + file: Optional[ImageFileTypeDef] = None + +class ExecuteQueryResponseTypeDef(BaseModel): + columns: List[ColumnInfoTypeDef] + rows: List[RowTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDefaultEncryptionConfigurationResponseTypeDef(BaseModel): + encryptionType: EncryptionTypeType + kmsKeyArn: str + configurationStatus: ConfigurationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDefaultEncryptionConfigurationResponseTypeDef(BaseModel): + encryptionType: EncryptionTypeType + kmsKeyArn: str + configurationStatus: ConfigurationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JobConfigurationTypeDef(BaseModel): + fileFormat: FileFormatTypeDef + +class DescribeStorageConfigurationResponseTypeDef(BaseModel): + storageType: StorageTypeType + multiLayerStorage: MultiLayerStorageTypeDef + disassociatedDataStorage: DisassociatedDataStorageStateType + retentionPeriod: RetentionPeriodTypeDef + configurationStatus: ConfigurationStatusTypeDef + lastUpdateDate: datetime + warmTier: WarmTierStateType + warmTierRetentionPeriod: WarmTierRetentionPeriodTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutStorageConfigurationRequestRequestTypeDef(BaseModel): + storageType: StorageTypeType + multiLayerStorage: Optional[MultiLayerStorageTypeDef] = None + disassociatedDataStorage: Optional[DisassociatedDataStorageStateType] = None + retentionPeriod: Optional[RetentionPeriodTypeDef] = None + warmTier: Optional[WarmTierStateType] = None + warmTierRetentionPeriod: Optional[WarmTierRetentionPeriodTypeDef] = None + +class PutStorageConfigurationResponseTypeDef(BaseModel): + storageType: StorageTypeType + multiLayerStorage: MultiLayerStorageTypeDef + disassociatedDataStorage: DisassociatedDataStorageStateType + retentionPeriod: RetentionPeriodTypeDef + configurationStatus: ConfigurationStatusTypeDef + warmTier: WarmTierStateType + warmTierRetentionPeriod: WarmTierRetentionPeriodTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssetModelStatusTypeDef(BaseModel): + state: AssetModelStateType + error: Optional[ErrorDetailsTypeDef] = None + +class AssetStatusTypeDef(BaseModel): + state: AssetStateType + error: Optional[ErrorDetailsTypeDef] = None + +class MeasurementTypeDef(BaseModel): + processingConfig: Optional[MeasurementProcessingConfigTypeDef] = None + +class CreateGatewayRequestRequestTypeDef(BaseModel): + gatewayName: str + gatewayPlatform: GatewayPlatformTypeDef + tags: Optional[Mapping[str, str]] = None + +class DescribeGatewayResponseTypeDef(BaseModel): + gatewayId: str + gatewayName: str + gatewayArn: str + gatewayPlatform: GatewayPlatformTypeDef + gatewayCapabilitySummaries: List[GatewayCapabilitySummaryTypeDef] + creationDate: datetime + lastUpdateDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GatewaySummaryTypeDef(BaseModel): + gatewayId: str + gatewayName: str + creationDate: datetime + lastUpdateDate: datetime + gatewayPlatform: Optional[GatewayPlatformTypeDef] = None + gatewayCapabilitySummaries: Optional[List[GatewayCapabilitySummaryTypeDef]] = None + +class CreatePortalResponseTypeDef(BaseModel): + portalId: str + portalArn: str + portalStartUrl: str + portalStatus: PortalStatusTypeDef + ssoApplicationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePortalResponseTypeDef(BaseModel): + portalStatus: PortalStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePortalResponseTypeDef(BaseModel): + portalId: str + portalArn: str + portalName: str + portalDescription: str + portalClientId: str + portalStartUrl: str + portalContactEmail: str + portalStatus: PortalStatusTypeDef + portalCreationDate: datetime + portalLastUpdateDate: datetime + portalLogoImageLocation: ImageLocationTypeDef + roleArn: str + portalAuthMode: AuthModeType + notificationSenderEmail: str + alarms: AlarmsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PortalSummaryTypeDef(BaseModel): + id: str + name: str + startUrl: str + status: PortalStatusTypeDef + description: Optional[str] = None + creationDate: Optional[datetime] = None + lastUpdateDate: Optional[datetime] = None + roleArn: Optional[str] = None + +class UpdatePortalResponseTypeDef(BaseModel): + portalStatus: PortalStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AccessPolicySummaryTypeDef(BaseModel): + id: str + identity: IdentityTypeDef + resource: ResourceTypeDef + permission: PermissionType + creationDate: Optional[datetime] = None + lastUpdateDate: Optional[datetime] = None + +class CreateAccessPolicyRequestRequestTypeDef(BaseModel): + accessPolicyIdentity: IdentityTypeDef + accessPolicyResource: ResourceTypeDef + accessPolicyPermission: PermissionType + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DescribeAccessPolicyResponseTypeDef(BaseModel): + accessPolicyId: str + accessPolicyArn: str + accessPolicyIdentity: IdentityTypeDef + accessPolicyResource: ResourceTypeDef + accessPolicyPermission: PermissionType + accessPolicyCreationDate: datetime + accessPolicyLastUpdateDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessPolicyRequestRequestTypeDef(BaseModel): + accessPolicyId: str + accessPolicyIdentity: IdentityTypeDef + accessPolicyResource: ResourceTypeDef + accessPolicyPermission: PermissionType + clientToken: Optional[str] = None + +class BatchGetAssetPropertyAggregatesResponseTypeDef(BaseModel): + errorEntries: List[BatchGetAssetPropertyAggregatesErrorEntryTypeDef] + successEntries: List[BatchGetAssetPropertyAggregatesSuccessEntryTypeDef] + skippedEntries: List[BatchGetAssetPropertyAggregatesSkippedEntryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricPaginatorTypeDef(BaseModel): + expression: str + variables: List[ExpressionVariablePaginatorTypeDef] + window: MetricWindowTypeDef + processingConfig: Optional[MetricProcessingConfigTypeDef] = None + +class TransformPaginatorTypeDef(BaseModel): + expression: str + variables: List[ExpressionVariablePaginatorTypeDef] + processingConfig: Optional[TransformProcessingConfigTypeDef] = None + +class MetricTypeDef(BaseModel): + expression: str + variables: Sequence[ExpressionVariableTypeDef] + window: MetricWindowTypeDef + processingConfig: Optional[MetricProcessingConfigTypeDef] = None + +class TransformTypeDef(BaseModel): + expression: str + variables: Sequence[ExpressionVariableTypeDef] + processingConfig: Optional[TransformProcessingConfigTypeDef] = None + +class BatchPutAssetPropertyValueResponseTypeDef(BaseModel): + errorEntries: List[BatchPutAssetPropertyErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetAssetPropertyValueHistoryResponseTypeDef(BaseModel): + errorEntries: List[BatchGetAssetPropertyValueHistoryErrorEntryTypeDef] + successEntries: List[BatchGetAssetPropertyValueHistorySuccessEntryTypeDef] + skippedEntries: List[BatchGetAssetPropertyValueHistorySkippedEntryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetAssetPropertyValueResponseTypeDef(BaseModel): + errorEntries: List[BatchGetAssetPropertyValueErrorEntryTypeDef] + successEntries: List[BatchGetAssetPropertyValueSuccessEntryTypeDef] + skippedEntries: List[BatchGetAssetPropertyValueSkippedEntryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutAssetPropertyValueRequestRequestTypeDef(BaseModel): + entries: Sequence[PutAssetPropertyValueEntryTypeDef] + +class UpdatePortalRequestRequestTypeDef(BaseModel): + portalId: str + portalName: str + portalContactEmail: str + roleArn: str + portalDescription: Optional[str] = None + portalLogoImage: Optional[ImageTypeDef] = None + clientToken: Optional[str] = None + notificationSenderEmail: Optional[str] = None + alarms: Optional[AlarmsTypeDef] = None + +class CreateBulkImportJobRequestRequestTypeDef(BaseModel): + jobName: str + jobRoleArn: str + files: Sequence[FileTypeDef] + errorReportLocation: ErrorReportLocationTypeDef + jobConfiguration: JobConfigurationTypeDef + adaptiveIngestion: Optional[bool] = None + deleteFilesAfterImport: Optional[bool] = None + +class DescribeBulkImportJobResponseTypeDef(BaseModel): + jobId: str + jobName: str + jobStatus: JobStatusType + jobRoleArn: str + files: List[FileTypeDef] + errorReportLocation: ErrorReportLocationTypeDef + jobConfiguration: JobConfigurationTypeDef + jobCreationDate: datetime + jobLastUpdateDate: datetime + adaptiveIngestion: bool + deleteFilesAfterImport: bool + ResponseMetadata: ResponseMetadataTypeDef + +class AssetModelSummaryTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + creationDate: datetime + lastUpdateDate: datetime + status: AssetModelStatusTypeDef + assetModelType: Optional[AssetModelTypeType] = None + externalId: Optional[str] = None + +class CreateAssetModelCompositeModelResponseTypeDef(BaseModel): + assetModelCompositeModelId: str + assetModelCompositeModelPath: List[AssetModelCompositeModelPathSegmentTypeDef] + assetModelStatus: AssetModelStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssetModelResponseTypeDef(BaseModel): + assetModelId: str + assetModelArn: str + assetModelStatus: AssetModelStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAssetModelCompositeModelResponseTypeDef(BaseModel): + assetModelStatus: AssetModelStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAssetModelResponseTypeDef(BaseModel): + assetModelStatus: AssetModelStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssetModelCompositeModelResponseTypeDef(BaseModel): + assetModelCompositeModelPath: List[AssetModelCompositeModelPathSegmentTypeDef] + assetModelStatus: AssetModelStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssetModelResponseTypeDef(BaseModel): + assetModelStatus: AssetModelStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssetSummaryTypeDef(BaseModel): + id: str + arn: str + name: str + assetModelId: str + creationDate: datetime + lastUpdateDate: datetime + status: AssetStatusTypeDef + hierarchies: List[AssetHierarchyTypeDef] + description: Optional[str] = None + externalId: Optional[str] = None + +class AssociatedAssetsSummaryTypeDef(BaseModel): + id: str + arn: str + name: str + assetModelId: str + creationDate: datetime + lastUpdateDate: datetime + status: AssetStatusTypeDef + hierarchies: List[AssetHierarchyTypeDef] + description: Optional[str] = None + externalId: Optional[str] = None + +class CreateAssetResponseTypeDef(BaseModel): + assetId: str + assetArn: str + assetStatus: AssetStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAssetResponseTypeDef(BaseModel): + assetStatus: AssetStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAssetResponseTypeDef(BaseModel): + assetId: str + assetArn: str + assetName: str + assetModelId: str + assetProperties: List[AssetPropertyTypeDef] + assetHierarchies: List[AssetHierarchyTypeDef] + assetCompositeModels: List[AssetCompositeModelTypeDef] + assetCreationDate: datetime + assetLastUpdateDate: datetime + assetStatus: AssetStatusTypeDef + assetDescription: str + assetCompositeModelSummaries: List[AssetCompositeModelSummaryTypeDef] + assetExternalId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssetResponseTypeDef(BaseModel): + assetStatus: AssetStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGatewaysResponseTypeDef(BaseModel): + gatewaySummaries: List[GatewaySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPortalsResponseTypeDef(BaseModel): + portalSummaries: List[PortalSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessPoliciesResponseTypeDef(BaseModel): + accessPolicySummaries: List[AccessPolicySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PropertyTypePaginatorTypeDef(BaseModel): + attribute: Optional[AttributeTypeDef] = None + measurement: Optional[MeasurementTypeDef] = None + transform: Optional[TransformPaginatorTypeDef] = None + metric: Optional[MetricPaginatorTypeDef] = None + +class PropertyTypeTypeDef(BaseModel): + attribute: Optional[AttributeTypeDef] = None + measurement: Optional[MeasurementTypeDef] = None + transform: Optional[TransformTypeDef] = None + metric: Optional[MetricTypeDef] = None + +class ListAssetModelsResponseTypeDef(BaseModel): + assetModelSummaries: List[AssetModelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetsResponseTypeDef(BaseModel): + assetSummaries: List[AssetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedAssetsResponseTypeDef(BaseModel): + assetSummaries: List[AssociatedAssetsSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetModelPropertySummaryPaginatorTypeDef(BaseModel): + name: str + dataType: PropertyDataTypeType + type: PropertyTypePaginatorTypeDef + id: Optional[str] = None + dataTypeSpec: Optional[str] = None + unit: Optional[str] = None + assetModelCompositeModelId: Optional[str] = None + path: Optional[List[AssetModelPropertyPathSegmentTypeDef]] = None + externalId: Optional[str] = None + +class AssetModelPropertyDefinitionTypeDef(BaseModel): + name: str + dataType: PropertyDataTypeType + type: PropertyTypeTypeDef + dataTypeSpec: Optional[str] = None + unit: Optional[str] = None + id: Optional[str] = None + externalId: Optional[str] = None + +class AssetModelPropertySummaryTypeDef(BaseModel): + name: str + dataType: PropertyDataTypeType + type: PropertyTypeTypeDef + id: Optional[str] = None + dataTypeSpec: Optional[str] = None + unit: Optional[str] = None + assetModelCompositeModelId: Optional[str] = None + path: Optional[List[AssetModelPropertyPathSegmentTypeDef]] = None + externalId: Optional[str] = None + +class AssetModelPropertyTypeDef(BaseModel): + name: str + dataType: PropertyDataTypeType + type: PropertyTypeTypeDef + id: Optional[str] = None + dataTypeSpec: Optional[str] = None + unit: Optional[str] = None + path: Optional[List[AssetModelPropertyPathSegmentTypeDef]] = None + externalId: Optional[str] = None + +class PropertyTypeDef(BaseModel): + id: str + name: str + dataType: PropertyDataTypeType + alias: Optional[str] = None + notification: Optional[PropertyNotificationTypeDef] = None + unit: Optional[str] = None + type: Optional[PropertyTypeTypeDef] = None + path: Optional[List[AssetPropertyPathSegmentTypeDef]] = None + externalId: Optional[str] = None + +class ListAssetModelPropertiesResponsePaginatorTypeDef(BaseModel): + assetModelPropertySummaries: List[AssetModelPropertySummaryPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetModelCompositeModelDefinitionTypeDef(BaseModel): + name: str + type: str + description: Optional[str] = None + properties: Optional[Sequence[AssetModelPropertyDefinitionTypeDef]] = None + id: Optional[str] = None + externalId: Optional[str] = None + +class CreateAssetModelCompositeModelRequestRequestTypeDef(BaseModel): + assetModelId: str + assetModelCompositeModelName: str + assetModelCompositeModelType: str + parentAssetModelCompositeModelId: Optional[str] = None + assetModelCompositeModelExternalId: Optional[str] = None + assetModelCompositeModelId: Optional[str] = None + assetModelCompositeModelDescription: Optional[str] = None + clientToken: Optional[str] = None + composedAssetModelId: Optional[str] = None + assetModelCompositeModelProperties: Optional[ Sequence[AssetModelPropertyDefinitionTypeDef] ] = None + +class ListAssetModelPropertiesResponseTypeDef(BaseModel): + assetModelPropertySummaries: List[AssetModelPropertySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssetModelCompositeModelTypeDef(BaseModel): + name: str + type: str + description: Optional[str] = None + properties: Optional[List[AssetModelPropertyTypeDef]] = None + id: Optional[str] = None + externalId: Optional[str] = None + +class DescribeAssetModelCompositeModelResponseTypeDef(BaseModel): + assetModelId: str + assetModelCompositeModelId: str + assetModelCompositeModelExternalId: str + assetModelCompositeModelPath: List[AssetModelCompositeModelPathSegmentTypeDef] + assetModelCompositeModelName: str + assetModelCompositeModelDescription: str + assetModelCompositeModelType: str + assetModelCompositeModelProperties: List[AssetModelPropertyTypeDef] + compositionDetails: CompositionDetailsTypeDef + assetModelCompositeModelSummaries: List[AssetModelCompositeModelSummaryTypeDef] + actionDefinitions: List[ActionDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssetModelCompositeModelRequestRequestTypeDef(BaseModel): + assetModelId: str + assetModelCompositeModelId: str + assetModelCompositeModelName: str + assetModelCompositeModelExternalId: Optional[str] = None + assetModelCompositeModelDescription: Optional[str] = None + clientToken: Optional[str] = None + assetModelCompositeModelProperties: Optional[Sequence[AssetModelPropertyTypeDef]] = None + +class CompositeModelPropertyTypeDef(BaseModel): + name: str + type: str + assetProperty: PropertyTypeDef + id: Optional[str] = None + externalId: Optional[str] = None + +class CreateAssetModelRequestRequestTypeDef(BaseModel): + assetModelName: str + assetModelDescription: Optional[str] = None + assetModelProperties: Optional[Sequence[AssetModelPropertyDefinitionTypeDef]] = None + assetModelHierarchies: Optional[Sequence[AssetModelHierarchyDefinitionTypeDef]] = None + assetModelCompositeModels: Optional[ Sequence[AssetModelCompositeModelDefinitionTypeDef] ] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + assetModelId: Optional[str] = None + assetModelExternalId: Optional[str] = None + assetModelType: Optional[AssetModelTypeType] = None + +class DescribeAssetModelResponseTypeDef(BaseModel): + assetModelId: str + assetModelArn: str + assetModelName: str + assetModelDescription: str + assetModelProperties: List[AssetModelPropertyTypeDef] + assetModelHierarchies: List[AssetModelHierarchyTypeDef] + assetModelCompositeModels: List[AssetModelCompositeModelTypeDef] + assetModelCreationDate: datetime + assetModelLastUpdateDate: datetime + assetModelStatus: AssetModelStatusTypeDef + assetModelType: AssetModelTypeType + assetModelCompositeModelSummaries: List[AssetModelCompositeModelSummaryTypeDef] + assetModelExternalId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssetModelRequestRequestTypeDef(BaseModel): + assetModelId: str + assetModelName: str + assetModelDescription: Optional[str] = None + assetModelProperties: Optional[Sequence[AssetModelPropertyTypeDef]] = None + assetModelHierarchies: Optional[Sequence[AssetModelHierarchyTypeDef]] = None + assetModelCompositeModels: Optional[Sequence[AssetModelCompositeModelTypeDef]] = None + clientToken: Optional[str] = None + assetModelExternalId: Optional[str] = None + +class DescribeAssetPropertyResponseTypeDef(BaseModel): + assetId: str + assetName: str + assetModelId: str + assetProperty: PropertyTypeDef + compositeModel: CompositeModelPropertyTypeDef + assetExternalId: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotsitewise_constants.py b/aws_resource_validator/pydantic_models/iotsitewise_constants.py new file mode 100644 index 00000000..74327a89 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotsitewise_constants.py @@ -0,0 +1,514 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregateTypeType = Literal["AVERAGE", "COUNT", "MAXIMUM", "MINIMUM", "STANDARD_DEVIATION", "SUM"] +AssetActiveWaiterName = Literal["asset_active"] +AssetErrorCodeType = Literal["INTERNAL_FAILURE"] +AssetModelActiveWaiterName = Literal["asset_model_active"] +AssetModelNotExistsWaiterName = Literal["asset_model_not_exists"] +AssetModelStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "PROPAGATING", "UPDATING"] +AssetModelTypeType = Literal["ASSET_MODEL", "COMPONENT_MODEL"] +AssetNotExistsWaiterName = Literal["asset_not_exists"] +AssetRelationshipTypeType = Literal["HIERARCHY"] +AssetStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +AuthModeType = Literal["IAM", "SSO"] +BatchEntryCompletionStatusType = Literal["ERROR", "SUCCESS"] +BatchGetAssetPropertyAggregatesErrorCodeType = Literal["AccessDeniedException", "InvalidRequestException", "ResourceNotFoundException"] +BatchGetAssetPropertyValueErrorCodeType = Literal["AccessDeniedException", "InvalidRequestException", "ResourceNotFoundException"] +BatchGetAssetPropertyValueHistoryErrorCodeType = Literal["AccessDeniedException", "InvalidRequestException", "ResourceNotFoundException"] +BatchPutAssetPropertyValueErrorCodeType = Literal["AccessDeniedException", + "ConflictingOperationException", + "InternalFailureException", + "InvalidRequestException", + "LimitExceededException", + "ResourceNotFoundException", + "ServiceUnavailableException", + "ThrottlingException", + "TimestampOutOfRangeException",] +CapabilitySyncStatusType = Literal["IN_SYNC", "OUT_OF_SYNC", "SYNC_FAILED", "UNKNOWN"] +ColumnNameType = Literal["ALIAS", + "ASSET_ID", + "DATA_TYPE", + "PROPERTY_ID", + "QUALITY", + "TIMESTAMP_NANO_OFFSET", + "TIMESTAMP_SECONDS", + "VALUE",] +ComputeLocationType = Literal["CLOUD", "EDGE"] +ConfigurationStateType = Literal["ACTIVE", "UPDATE_FAILED", "UPDATE_IN_PROGRESS"] +DetailedErrorCodeType = Literal["INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"] +DisassociatedDataStorageStateType = Literal["DISABLED", "ENABLED"] +EncryptionTypeType = Literal["KMS_BASED_ENCRYPTION", "SITEWISE_DEFAULT_ENCRYPTION"] +ErrorCodeType = Literal["INTERNAL_FAILURE", "VALIDATION_ERROR"] +ExecuteQueryPaginatorName = Literal["execute_query"] +ForwardingConfigStateType = Literal["DISABLED", "ENABLED"] +GetAssetPropertyAggregatesPaginatorName = Literal["get_asset_property_aggregates"] +GetAssetPropertyValueHistoryPaginatorName = Literal["get_asset_property_value_history"] +GetInterpolatedAssetPropertyValuesPaginatorName = Literal["get_interpolated_asset_property_values"] +IdentityTypeType = Literal["GROUP", "IAM", "USER"] +ImageFileTypeType = Literal["PNG"] +JobStatusType = Literal["CANCELLED", "COMPLETED", "COMPLETED_WITH_FAILURES", "FAILED", "PENDING", "RUNNING"] +ListAccessPoliciesPaginatorName = Literal["list_access_policies"] +ListActionsPaginatorName = Literal["list_actions"] +ListAssetModelCompositeModelsPaginatorName = Literal["list_asset_model_composite_models"] +ListAssetModelPropertiesFilterType = Literal["ALL", "BASE"] +ListAssetModelPropertiesPaginatorName = Literal["list_asset_model_properties"] +ListAssetModelsPaginatorName = Literal["list_asset_models"] +ListAssetPropertiesFilterType = Literal["ALL", "BASE"] +ListAssetPropertiesPaginatorName = Literal["list_asset_properties"] +ListAssetRelationshipsPaginatorName = Literal["list_asset_relationships"] +ListAssetsFilterType = Literal["ALL", "TOP_LEVEL"] +ListAssetsPaginatorName = Literal["list_assets"] +ListAssociatedAssetsPaginatorName = Literal["list_associated_assets"] +ListBulkImportJobsFilterType = Literal["ALL", "CANCELLED", "COMPLETED", "COMPLETED_WITH_FAILURES", "FAILED", "PENDING", "RUNNING"] +ListBulkImportJobsPaginatorName = Literal["list_bulk_import_jobs"] +ListCompositionRelationshipsPaginatorName = Literal["list_composition_relationships"] +ListDashboardsPaginatorName = Literal["list_dashboards"] +ListGatewaysPaginatorName = Literal["list_gateways"] +ListPortalsPaginatorName = Literal["list_portals"] +ListProjectAssetsPaginatorName = Literal["list_project_assets"] +ListProjectsPaginatorName = Literal["list_projects"] +ListTimeSeriesPaginatorName = Literal["list_time_series"] +ListTimeSeriesTypeType = Literal["ASSOCIATED", "DISASSOCIATED"] +LoggingLevelType = Literal["ERROR", "INFO", "OFF"] +MonitorErrorCodeType = Literal["INTERNAL_FAILURE", "LIMIT_EXCEEDED", "VALIDATION_ERROR"] +PermissionType = Literal["ADMINISTRATOR", "VIEWER"] +PortalActiveWaiterName = Literal["portal_active"] +PortalNotExistsWaiterName = Literal["portal_not_exists"] +PortalStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +PropertyDataTypeType = Literal["BOOLEAN", "DOUBLE", "INTEGER", "STRING", "STRUCT"] +PropertyNotificationStateType = Literal["DISABLED", "ENABLED"] +QualityType = Literal["BAD", "GOOD", "UNCERTAIN"] +ResourceTypeType = Literal["PORTAL", "PROJECT"] +ScalarTypeType = Literal["BOOLEAN", "DOUBLE", "INT", "STRING", "TIMESTAMP"] +StorageTypeType = Literal["MULTI_LAYER_STORAGE", "SITEWISE_DEFAULT_STORAGE"] +TargetResourceTypeType = Literal["ASSET"] +TimeOrderingType = Literal["ASCENDING", "DESCENDING"] +TraversalDirectionType = Literal["CHILD", "PARENT"] +TraversalTypeType = Literal["PATH_TO_ROOT"] +WarmTierStateType = Literal["DISABLED", "ENABLED"] +IoTSiteWiseServiceName = Literal["iotsitewise"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["execute_query", + "get_asset_property_aggregates", + "get_asset_property_value_history", + "get_interpolated_asset_property_values", + "list_access_policies", + "list_actions", + "list_asset_model_composite_models", + "list_asset_model_properties", + "list_asset_models", + "list_asset_properties", + "list_asset_relationships", + "list_assets", + "list_associated_assets", + "list_bulk_import_jobs", + "list_composition_relationships", + "list_dashboards", + "list_gateways", + "list_portals", + "list_project_assets", + "list_projects", + "list_time_series",] +WaiterName = Literal["asset_active", + "asset_model_active", + "asset_model_not_exists", + "asset_not_exists", + "portal_active", + "portal_not_exists",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/iotthingsgraph_classes.py b/aws_resource_validator/pydantic_models/iotthingsgraph_classes.py new file mode 100644 index 00000000..bc84bdac --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotthingsgraph_classes.py @@ -0,0 +1,447 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotthingsgraph_constants import * + +class AssociateEntityToThingRequestRequestTypeDef(BaseModel): + thingName: str + entityId: str + namespaceVersion: Optional[int] = None + +class DefinitionDocumentTypeDef(BaseModel): + language: Literal["GRAPHQL"] + text: str + +class FlowTemplateSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + revisionNumber: Optional[int] = None + createdAt: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class MetricsConfigurationTypeDef(BaseModel): + cloudMetricEnabled: Optional[bool] = None + metricRuleRoleArn: Optional[str] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class SystemInstanceSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + status: Optional[SystemInstanceDeploymentStatusType] = None + target: Optional[DeploymentTargetType] = None + greengrassGroupName: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + greengrassGroupId: Optional[str] = None + greengrassGroupVersionId: Optional[str] = None + +class SystemTemplateSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + revisionNumber: Optional[int] = None + createdAt: Optional[datetime] = None + +class DeleteFlowTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DeleteSystemInstanceRequestRequestTypeDef(BaseModel): + id: Optional[str] = None + +class DeleteSystemTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DependencyRevisionTypeDef(BaseModel): + id: Optional[str] = None + revisionNumber: Optional[int] = None + +class DeploySystemInstanceRequestRequestTypeDef(BaseModel): + id: Optional[str] = None + +class DeprecateFlowTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DeprecateSystemTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DescribeNamespaceRequestRequestTypeDef(BaseModel): + namespaceName: Optional[str] = None + +class DissociateEntityFromThingRequestRequestTypeDef(BaseModel): + thingName: str + entityType: EntityTypeType + +class EntityFilterTypeDef(BaseModel): + name: Optional[EntityFilterNameType] = None + value: Optional[Sequence[str]] = None + +class FlowExecutionMessageTypeDef(BaseModel): + messageId: Optional[str] = None + eventType: Optional[FlowExecutionEventTypeType] = None + timestamp: Optional[datetime] = None + payload: Optional[str] = None + +class FlowExecutionSummaryTypeDef(BaseModel): + flowExecutionId: Optional[str] = None + status: Optional[FlowExecutionStatusType] = None + systemInstanceId: Optional[str] = None + flowTemplateId: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + +class FlowTemplateFilterTypeDef(BaseModel): + name: Literal["DEVICE_MODEL_ID"] + value: Sequence[str] + +class GetEntitiesRequestRequestTypeDef(BaseModel): + ids: Sequence[str] + namespaceVersion: Optional[int] = None + +class GetFlowTemplateRequestRequestTypeDef(BaseModel): + id: str + revisionNumber: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetFlowTemplateRevisionsRequestRequestTypeDef(BaseModel): + id: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetSystemInstanceRequestRequestTypeDef(BaseModel): + id: str + +class GetSystemTemplateRequestRequestTypeDef(BaseModel): + id: str + revisionNumber: Optional[int] = None + +class GetSystemTemplateRevisionsRequestRequestTypeDef(BaseModel): + id: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetUploadStatusRequestRequestTypeDef(BaseModel): + uploadId: str + +class ListFlowExecutionMessagesRequestRequestTypeDef(BaseModel): + flowExecutionId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SystemInstanceFilterTypeDef(BaseModel): + name: Optional[SystemInstanceFilterNameType] = None + value: Optional[Sequence[str]] = None + +class SystemTemplateFilterTypeDef(BaseModel): + name: Literal["FLOW_TEMPLATE_ID"] + value: Sequence[str] + +class SearchThingsRequestRequestTypeDef(BaseModel): + entityId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + namespaceVersion: Optional[int] = None + +class ThingTypeDef(BaseModel): + thingArn: Optional[str] = None + thingName: Optional[str] = None + +class UndeploySystemInstanceRequestRequestTypeDef(BaseModel): + id: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CreateFlowTemplateRequestRequestTypeDef(BaseModel): + definition: DefinitionDocumentTypeDef + compatibleNamespaceVersion: Optional[int] = None + +class CreateSystemTemplateRequestRequestTypeDef(BaseModel): + definition: DefinitionDocumentTypeDef + compatibleNamespaceVersion: Optional[int] = None + +class EntityDescriptionTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + type: Optional[EntityTypeType] = None + createdAt: Optional[datetime] = None + definition: Optional[DefinitionDocumentTypeDef] = None + +class UpdateFlowTemplateRequestRequestTypeDef(BaseModel): + id: str + definition: DefinitionDocumentTypeDef + compatibleNamespaceVersion: Optional[int] = None + +class UpdateSystemTemplateRequestRequestTypeDef(BaseModel): + id: str + definition: DefinitionDocumentTypeDef + compatibleNamespaceVersion: Optional[int] = None + +class UploadEntityDefinitionsRequestRequestTypeDef(BaseModel): + document: Optional[DefinitionDocumentTypeDef] = None + syncWithPublicNamespace: Optional[bool] = None + deprecateExistingEntities: Optional[bool] = None + +class FlowTemplateDescriptionTypeDef(BaseModel): + summary: Optional[FlowTemplateSummaryTypeDef] = None + definition: Optional[DefinitionDocumentTypeDef] = None + validatedNamespaceVersion: Optional[int] = None + +class CreateFlowTemplateResponseTypeDef(BaseModel): + summary: FlowTemplateSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNamespaceResponseTypeDef(BaseModel): + namespaceArn: str + namespaceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNamespaceResponseTypeDef(BaseModel): + namespaceArn: str + namespaceName: str + trackingNamespaceName: str + trackingNamespaceVersion: int + namespaceVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetFlowTemplateRevisionsResponseTypeDef(BaseModel): + summaries: List[FlowTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetNamespaceDeletionStatusResponseTypeDef(BaseModel): + namespaceArn: str + namespaceName: str + status: NamespaceDeletionStatusType + errorCode: Literal["VALIDATION_FAILED"] + errorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetUploadStatusResponseTypeDef(BaseModel): + uploadId: str + uploadStatus: UploadStatusType + namespaceArn: str + namespaceName: str + namespaceVersion: int + failureReason: List[str] + createdDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class SearchFlowTemplatesResponseTypeDef(BaseModel): + summaries: List[FlowTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowTemplateResponseTypeDef(BaseModel): + summary: FlowTemplateSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UploadEntityDefinitionsResponseTypeDef(BaseModel): + uploadId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSystemInstanceRequestRequestTypeDef(BaseModel): + definition: DefinitionDocumentTypeDef + target: DeploymentTargetType + tags: Optional[Sequence[TagTypeDef]] = None + greengrassGroupName: Optional[str] = None + s3BucketName: Optional[str] = None + metricsConfiguration: Optional[MetricsConfigurationTypeDef] = None + flowActionsRoleArn: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateSystemInstanceResponseTypeDef(BaseModel): + summary: SystemInstanceSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeploySystemInstanceResponseTypeDef(BaseModel): + summary: SystemInstanceSummaryTypeDef + greengrassDeploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchSystemInstancesResponseTypeDef(BaseModel): + summaries: List[SystemInstanceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UndeploySystemInstanceResponseTypeDef(BaseModel): + summary: SystemInstanceSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSystemTemplateResponseTypeDef(BaseModel): + summary: SystemTemplateSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSystemTemplateRevisionsResponseTypeDef(BaseModel): + summaries: List[SystemTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchSystemTemplatesResponseTypeDef(BaseModel): + summaries: List[SystemTemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SystemTemplateDescriptionTypeDef(BaseModel): + summary: Optional[SystemTemplateSummaryTypeDef] = None + definition: Optional[DefinitionDocumentTypeDef] = None + validatedNamespaceVersion: Optional[int] = None + +class UpdateSystemTemplateResponseTypeDef(BaseModel): + summary: SystemTemplateSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SystemInstanceDescriptionTypeDef(BaseModel): + summary: Optional[SystemInstanceSummaryTypeDef] = None + definition: Optional[DefinitionDocumentTypeDef] = None + s3BucketName: Optional[str] = None + metricsConfiguration: Optional[MetricsConfigurationTypeDef] = None + validatedNamespaceVersion: Optional[int] = None + validatedDependencyRevisions: Optional[List[DependencyRevisionTypeDef]] = None + flowActionsRoleArn: Optional[str] = None + +class SearchEntitiesRequestRequestTypeDef(BaseModel): + entityTypes: Sequence[EntityTypeType] + filters: Optional[Sequence[EntityFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + namespaceVersion: Optional[int] = None + +class ListFlowExecutionMessagesResponseTypeDef(BaseModel): + messages: List[FlowExecutionMessageTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchFlowExecutionsResponseTypeDef(BaseModel): + summaries: List[FlowExecutionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchFlowTemplatesRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[FlowTemplateFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetFlowTemplateRevisionsRequestGetFlowTemplateRevisionsPaginateTypeDef(BaseModel): + id: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSystemTemplateRevisionsRequestGetSystemTemplateRevisionsPaginateTypeDef(BaseModel): + id: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowExecutionMessagesRequestListFlowExecutionMessagesPaginateTypeDef(BaseModel): + flowExecutionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchEntitiesRequestSearchEntitiesPaginateTypeDef(BaseModel): + entityTypes: Sequence[EntityTypeType] + filters: Optional[Sequence[EntityFilterTypeDef]] = None + namespaceVersion: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchFlowTemplatesRequestSearchFlowTemplatesPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FlowTemplateFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchThingsRequestSearchThingsPaginateTypeDef(BaseModel): + entityId: str + namespaceVersion: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchFlowExecutionsRequestRequestTypeDef(BaseModel): + systemInstanceId: str + flowExecutionId: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SearchFlowExecutionsRequestSearchFlowExecutionsPaginateTypeDef(BaseModel): + systemInstanceId: str + flowExecutionId: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchSystemInstancesRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[SystemInstanceFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SearchSystemInstancesRequestSearchSystemInstancesPaginateTypeDef(BaseModel): + filters: Optional[Sequence[SystemInstanceFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchSystemTemplatesRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[SystemTemplateFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SearchSystemTemplatesRequestSearchSystemTemplatesPaginateTypeDef(BaseModel): + filters: Optional[Sequence[SystemTemplateFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchThingsResponseTypeDef(BaseModel): + things: List[ThingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEntitiesResponseTypeDef(BaseModel): + descriptions: List[EntityDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchEntitiesResponseTypeDef(BaseModel): + descriptions: List[EntityDescriptionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFlowTemplateResponseTypeDef(BaseModel): + description: FlowTemplateDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSystemTemplateResponseTypeDef(BaseModel): + description: SystemTemplateDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSystemInstanceResponseTypeDef(BaseModel): + description: SystemInstanceDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/iotthingsgraph_constants.py b/aws_resource_validator/pydantic_models/iotthingsgraph_constants.py new file mode 100644 index 00000000..b46b1b25 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotthingsgraph_constants.py @@ -0,0 +1,455 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DefinitionLanguageType = Literal["GRAPHQL"] +DeploymentTargetType = Literal["CLOUD", "GREENGRASS"] +EntityFilterNameType = Literal["NAME", "NAMESPACE", "REFERENCED_ENTITY_ID", "SEMANTIC_TYPE_PATH"] +EntityTypeType = Literal["ACTION", + "CAPABILITY", + "DEVICE", + "DEVICE_MODEL", + "ENUM", + "EVENT", + "MAPPING", + "PROPERTY", + "SERVICE", + "STATE",] +FlowExecutionEventTypeType = Literal["ACKNOWLEDGE_TASK_MESSAGE", + "ACTIVITY_FAILED", + "ACTIVITY_SCHEDULED", + "ACTIVITY_STARTED", + "ACTIVITY_SUCCEEDED", + "EXECUTION_ABORTED", + "EXECUTION_FAILED", + "EXECUTION_STARTED", + "EXECUTION_SUCCEEDED", + "SCHEDULE_NEXT_READY_STEPS_TASK", + "START_FLOW_EXECUTION_TASK", + "STEP_FAILED", + "STEP_STARTED", + "STEP_SUCCEEDED", + "THING_ACTION_TASK", + "THING_ACTION_TASK_FAILED", + "THING_ACTION_TASK_SUCCEEDED",] +FlowExecutionStatusType = Literal["ABORTED", "FAILED", "RUNNING", "SUCCEEDED"] +FlowTemplateFilterNameType = Literal["DEVICE_MODEL_ID"] +GetFlowTemplateRevisionsPaginatorName = Literal["get_flow_template_revisions"] +GetSystemTemplateRevisionsPaginatorName = Literal["get_system_template_revisions"] +ListFlowExecutionMessagesPaginatorName = Literal["list_flow_execution_messages"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +NamespaceDeletionStatusErrorCodesType = Literal["VALIDATION_FAILED"] +NamespaceDeletionStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +SearchEntitiesPaginatorName = Literal["search_entities"] +SearchFlowExecutionsPaginatorName = Literal["search_flow_executions"] +SearchFlowTemplatesPaginatorName = Literal["search_flow_templates"] +SearchSystemInstancesPaginatorName = Literal["search_system_instances"] +SearchSystemTemplatesPaginatorName = Literal["search_system_templates"] +SearchThingsPaginatorName = Literal["search_things"] +SystemInstanceDeploymentStatusType = Literal["BOOTSTRAP", + "DELETED_IN_TARGET", + "DEPLOYED_IN_TARGET", + "DEPLOY_IN_PROGRESS", + "FAILED", + "NOT_DEPLOYED", + "PENDING_DELETE", + "UNDEPLOY_IN_PROGRESS",] +SystemInstanceFilterNameType = Literal["GREENGRASS_GROUP_NAME", "STATUS", "SYSTEM_TEMPLATE_ID"] +SystemTemplateFilterNameType = Literal["FLOW_TEMPLATE_ID"] +UploadStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +IoTThingsGraphServiceName = Literal["iotthingsgraph"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_flow_template_revisions", + "get_system_template_revisions", + "list_flow_execution_messages", + "list_tags_for_resource", + "search_entities", + "search_flow_executions", + "search_flow_templates", + "search_system_instances", + "search_system_templates", + "search_things",] +RegionName = Literal["ap-northeast-1", "ap-northeast-2", "ap-southeast-2", "eu-west-1", "us-east-1", "us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/iottwinmaker_classes.py b/aws_resource_validator/pydantic_models/iottwinmaker_classes.py new file mode 100644 index 00000000..9c417e2d --- /dev/null +++ b/aws_resource_validator/pydantic_models/iottwinmaker_classes.py @@ -0,0 +1,948 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iottwinmaker_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BundleInformationTypeDef(BaseModel): + bundleNames: List[str] + pricingTier: Optional[PricingTierType] = None + +class CancelMetadataTransferJobRequestRequestTypeDef(BaseModel): + metadataTransferJobId: str + +class MetadataTransferJobProgressTypeDef(BaseModel): + totalCount: Optional[int] = None + succeededCount: Optional[int] = None + skippedCount: Optional[int] = None + failedCount: Optional[int] = None + +class ColumnDescriptionTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[ColumnTypeType] = None + +class ComponentPropertyGroupRequestTypeDef(BaseModel): + groupType: Optional[Literal["TABULAR"]] = None + propertyNames: Optional[Sequence[str]] = None + updateType: Optional[PropertyGroupUpdateTypeType] = None + +class ComponentPropertyGroupResponseTypeDef(BaseModel): + groupType: Literal["TABULAR"] + propertyNames: List[str] + isInherited: bool + +class CompositeComponentTypeRequestTypeDef(BaseModel): + componentTypeId: Optional[str] = None + +class CompositeComponentTypeResponseTypeDef(BaseModel): + componentTypeId: Optional[str] = None + isInherited: Optional[bool] = None + +class PropertyDefinitionRequestTypeDef(BaseModel): + dataType: Optional["DataTypeTypeDef"] = None + isRequiredInEntity: Optional[bool] = None + isExternalId: Optional[bool] = None + isStoredExternally: Optional[bool] = None + isTimeSeries: Optional[bool] = None + defaultValue: Optional["DataValueTypeDef"] = None + configuration: Optional[Mapping[str, str]] = None + displayName: Optional[str] = None + +class PropertyGroupRequestTypeDef(BaseModel): + groupType: Optional[Literal["TABULAR"]] = None + propertyNames: Optional[Sequence[str]] = None + +class CreateSceneRequestRequestTypeDef(BaseModel): + workspaceId: str + sceneId: str + contentLocation: str + description: Optional[str] = None + capabilities: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + sceneMetadata: Optional[Mapping[str, str]] = None + +class CreateSyncJobRequestRequestTypeDef(BaseModel): + workspaceId: str + syncSource: str + syncRole: str + tags: Optional[Mapping[str, str]] = None + +class CreateWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + description: Optional[str] = None + s3Location: Optional[str] = None + role: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class LambdaFunctionTypeDef(BaseModel): + arn: str + +class RelationshipTypeDef(BaseModel): + targetComponentTypeId: Optional[str] = None + relationshipType: Optional[str] = None + +class RelationshipValueTypeDef(BaseModel): + targetEntityId: Optional[str] = None + targetComponentName: Optional[str] = None + +class DeleteComponentTypeRequestRequestTypeDef(BaseModel): + workspaceId: str + componentTypeId: str + +class DeleteEntityRequestRequestTypeDef(BaseModel): + workspaceId: str + entityId: str + isRecursive: Optional[bool] = None + +class DeleteSceneRequestRequestTypeDef(BaseModel): + workspaceId: str + sceneId: str + +class DeleteSyncJobRequestRequestTypeDef(BaseModel): + workspaceId: str + syncSource: str + +class DeleteWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + +class IotTwinMakerDestinationConfigurationTypeDef(BaseModel): + workspace: str + +class S3DestinationConfigurationTypeDef(BaseModel): + location: str + +class EntityPropertyReferenceOutputTypeDef(BaseModel): + propertyName: str + componentName: Optional[str] = None + componentPath: Optional[str] = None + externalIdProperty: Optional[Dict[str, str]] = None + entityId: Optional[str] = None + +class EntityPropertyReferenceTypeDef(BaseModel): + propertyName: str + componentName: Optional[str] = None + componentPath: Optional[str] = None + externalIdProperty: Optional[Mapping[str, str]] = None + entityId: Optional[str] = None + +class ErrorDetailsTypeDef(BaseModel): + code: Optional[ErrorCodeType] = None + message: Optional[str] = None + +class ExecuteQueryRequestRequestTypeDef(BaseModel): + workspaceId: str + queryStatement: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RowTypeDef(BaseModel): + rowData: Optional[List[Dict[str, Any]]] = None + +class FilterByAssetModelTypeDef(BaseModel): + assetModelId: Optional[str] = None + assetModelExternalId: Optional[str] = None + includeOffspring: Optional[bool] = None + includeAssets: Optional[bool] = None + +class FilterByAssetTypeDef(BaseModel): + assetId: Optional[str] = None + assetExternalId: Optional[str] = None + includeOffspring: Optional[bool] = None + includeAssetModel: Optional[bool] = None + +class FilterByComponentTypeTypeDef(BaseModel): + componentTypeId: str + +class FilterByEntityTypeDef(BaseModel): + entityId: str + +class GetComponentTypeRequestRequestTypeDef(BaseModel): + workspaceId: str + componentTypeId: str + +class PropertyDefinitionResponseTypeDef(BaseModel): + dataType: "DataTypeOutputTypeDef" + isTimeSeries: bool + isRequiredInEntity: bool + isExternalId: bool + isStoredExternally: bool + isImported: bool + isFinal: bool + isInherited: bool + defaultValue: Optional["DataValueOutputTypeDef"] = None + configuration: Optional[Dict[str, str]] = None + displayName: Optional[str] = None + +class PropertyGroupResponseTypeDef(BaseModel): + groupType: Literal["TABULAR"] + propertyNames: List[str] + isInherited: bool + +class GetEntityRequestRequestTypeDef(BaseModel): + workspaceId: str + entityId: str + +class GetMetadataTransferJobRequestRequestTypeDef(BaseModel): + metadataTransferJobId: str + +class InterpolationParametersTypeDef(BaseModel): + interpolationType: Optional[Literal["LINEAR"]] = None + intervalInSeconds: Optional[int] = None + +class PropertyFilterTypeDef(BaseModel): + propertyName: Optional[str] = None + operator: Optional[str] = None + value: Optional["DataValueTypeDef"] = None + +class GetSceneRequestRequestTypeDef(BaseModel): + workspaceId: str + sceneId: str + +class SceneErrorTypeDef(BaseModel): + code: Optional[Literal["MATTERPORT_ERROR"]] = None + message: Optional[str] = None + +class GetSyncJobRequestRequestTypeDef(BaseModel): + syncSource: str + workspaceId: Optional[str] = None + +class GetWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + +class ListComponentTypesFilterTypeDef(BaseModel): + extendsFrom: Optional[str] = None + namespace: Optional[str] = None + isAbstract: Optional[bool] = None + +class ListComponentsRequestRequestTypeDef(BaseModel): + workspaceId: str + entityId: str + componentPath: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEntitiesFilterTypeDef(BaseModel): + parentEntityId: Optional[str] = None + componentTypeId: Optional[str] = None + externalId: Optional[str] = None + +class ListMetadataTransferJobsFilterTypeDef(BaseModel): + workspaceId: Optional[str] = None + state: Optional[MetadataTransferJobStateType] = None + +class ListPropertiesRequestRequestTypeDef(BaseModel): + workspaceId: str + entityId: str + componentName: Optional[str] = None + componentPath: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListScenesRequestRequestTypeDef(BaseModel): + workspaceId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SceneSummaryTypeDef(BaseModel): + sceneId: str + contentLocation: str + arn: str + creationDateTime: datetime + updateDateTime: datetime + description: Optional[str] = None + +class ListSyncJobsRequestRequestTypeDef(BaseModel): + workspaceId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SyncResourceFilterTypeDef(BaseModel): + state: Optional[SyncResourceStateType] = None + resourceType: Optional[SyncResourceTypeType] = None + resourceId: Optional[str] = None + externalId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListWorkspacesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkspaceSummaryTypeDef(BaseModel): + workspaceId: str + arn: str + creationDateTime: datetime + updateDateTime: datetime + description: Optional[str] = None + linkedServices: Optional[List[str]] = None + +class OrderByTypeDef(BaseModel): + propertyName: str + order: Optional[OrderType] = None + +class ParentEntityUpdateRequestTypeDef(BaseModel): + updateType: ParentEntityUpdateTypeType + parentEntityId: Optional[str] = None + +class PropertyValueOutputTypeDef(BaseModel): + value: "DataValueOutputTypeDef" + timestamp: Optional[datetime] = None + time: Optional[str] = None + +class S3SourceConfigurationTypeDef(BaseModel): + location: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tagKeys: Sequence[str] + +class UpdatePricingPlanRequestRequestTypeDef(BaseModel): + pricingMode: PricingModeType + bundleNames: Optional[Sequence[str]] = None + +class UpdateSceneRequestRequestTypeDef(BaseModel): + workspaceId: str + sceneId: str + contentLocation: Optional[str] = None + description: Optional[str] = None + capabilities: Optional[Sequence[str]] = None + sceneMetadata: Optional[Mapping[str, str]] = None + +class UpdateWorkspaceRequestRequestTypeDef(BaseModel): + workspaceId: str + description: Optional[str] = None + role: Optional[str] = None + s3Location: Optional[str] = None + +class CreateComponentTypeResponseTypeDef(BaseModel): + arn: str + creationDateTime: datetime + state: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEntityResponseTypeDef(BaseModel): + entityId: str + arn: str + creationDateTime: datetime + state: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSceneResponseTypeDef(BaseModel): + arn: str + creationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSyncJobResponseTypeDef(BaseModel): + arn: str + creationDateTime: datetime + state: SyncJobStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkspaceResponseTypeDef(BaseModel): + arn: str + creationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteComponentTypeResponseTypeDef(BaseModel): + state: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEntityResponseTypeDef(BaseModel): + state: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSyncJobResponseTypeDef(BaseModel): + state: SyncJobStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkspaceResponseTypeDef(BaseModel): + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkspaceResponseTypeDef(BaseModel): + workspaceId: str + arn: str + description: str + linkedServices: List[str] + s3Location: str + role: str + creationDateTime: datetime + updateDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateComponentTypeResponseTypeDef(BaseModel): + workspaceId: str + arn: str + componentTypeId: str + state: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEntityResponseTypeDef(BaseModel): + updateDateTime: datetime + state: StateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSceneResponseTypeDef(BaseModel): + updateDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkspaceResponseTypeDef(BaseModel): + updateDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PricingPlanTypeDef(BaseModel): + effectiveDateTime: datetime + pricingMode: PricingModeType + updateDateTime: datetime + updateReason: UpdateReasonType + billableEntityCount: Optional[int] = None + bundleInformation: Optional[BundleInformationTypeDef] = None + +class PropertyRequestTypeDef(BaseModel): + definition: Optional[PropertyDefinitionRequestTypeDef] = None + value: Optional["DataValueTypeDef"] = None + updateType: Optional[PropertyUpdateTypeType] = None + +class DataConnectorTypeDef(BaseModel): + lambda: Optional[LambdaFunctionTypeDef] = None + isNative: Optional[bool] = None + +class DataTypeOutputTypeDef(BaseModel): + type: TypeType + nestedType: Optional[Dict[str, Any]] = None + allowedValues: Optional[List["DataValueOutputTypeDef"]] = None + unitOfMeasure: Optional[str] = None + relationship: Optional[RelationshipTypeDef] = None + +class DataTypeTypeDef(BaseModel): + type: TypeType + nestedType: Optional[Dict[str, Any]] = None + allowedValues: Optional[Sequence["DataValueTypeDef"]] = None + unitOfMeasure: Optional[str] = None + relationship: Optional[RelationshipTypeDef] = None + +class DataValueOutputTypeDef(BaseModel): + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + integerValue: Optional[int] = None + longValue: Optional[int] = None + stringValue: Optional[str] = None + listValue: Optional[List[Dict[str, Any]]] = None + mapValue: Optional[Dict[str, Dict[str, Any]]] = None + relationshipValue: Optional[RelationshipValueTypeDef] = None + expression: Optional[str] = None + +class DataValueTypeDef(BaseModel): + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + integerValue: Optional[int] = None + longValue: Optional[int] = None + stringValue: Optional[str] = None + listValue: Optional[Sequence[Dict[str, Any]]] = None + mapValue: Optional[Mapping[str, Dict[str, Any]]] = None + relationshipValue: Optional[RelationshipValueTypeDef] = None + expression: Optional[str] = None + +class DestinationConfigurationTypeDef(BaseModel): + type: DestinationTypeType + s3Configuration: Optional[S3DestinationConfigurationTypeDef] = None + iotTwinMakerConfiguration: Optional[IotTwinMakerDestinationConfigurationTypeDef] = None + +class PropertyLatestValueTypeDef(BaseModel): + propertyReference: EntityPropertyReferenceOutputTypeDef + propertyValue: Optional["DataValueOutputTypeDef"] = None + +class MetadataTransferJobStatusTypeDef(BaseModel): + state: Optional[MetadataTransferJobStateType] = None + error: Optional[ErrorDetailsTypeDef] = None + queuedPosition: Optional[int] = None + +class StatusTypeDef(BaseModel): + state: Optional[StateType] = None + error: Optional[ErrorDetailsTypeDef] = None + +class SyncJobStatusTypeDef(BaseModel): + state: Optional[SyncJobStateType] = None + error: Optional[ErrorDetailsTypeDef] = None + +class SyncResourceStatusTypeDef(BaseModel): + state: Optional[SyncResourceStateType] = None + error: Optional[ErrorDetailsTypeDef] = None + +class ExecuteQueryResponseTypeDef(BaseModel): + columnDescriptions: List[ColumnDescriptionTypeDef] + rows: List[RowTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IotSiteWiseSourceConfigurationFilterTypeDef(BaseModel): + filterByAssetModel: Optional[FilterByAssetModelTypeDef] = None + filterByAsset: Optional[FilterByAssetTypeDef] = None + +class IotTwinMakerSourceConfigurationFilterTypeDef(BaseModel): + filterByComponentType: Optional[FilterByComponentTypeTypeDef] = None + filterByEntity: Optional[FilterByEntityTypeDef] = None + +class PropertyResponseTypeDef(BaseModel): + definition: Optional[PropertyDefinitionResponseTypeDef] = None + value: Optional["DataValueOutputTypeDef"] = None + areAllPropertyValuesReturned: Optional[bool] = None + +class PropertySummaryTypeDef(BaseModel): + propertyName: str + definition: Optional[PropertyDefinitionResponseTypeDef] = None + value: Optional["DataValueOutputTypeDef"] = None + areAllPropertyValuesReturned: Optional[bool] = None + +class GetPropertyValueHistoryRequestRequestTypeDef(BaseModel): + workspaceId: str + selectedProperties: Sequence[str] + entityId: Optional[str] = None + componentName: Optional[str] = None + componentPath: Optional[str] = None + componentTypeId: Optional[str] = None + propertyFilters: Optional[Sequence[PropertyFilterTypeDef]] = None + startDateTime: Optional[TimestampTypeDef] = None + endDateTime: Optional[TimestampTypeDef] = None + interpolation: Optional[InterpolationParametersTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + orderByTime: Optional[OrderByTimeType] = None + startTime: Optional[str] = None + endTime: Optional[str] = None + +class PropertyValueTypeDef(BaseModel): + value: "DataValueTypeDef" + timestamp: Optional[TimestampTypeDef] = None + time: Optional[str] = None + +class GetSceneResponseTypeDef(BaseModel): + workspaceId: str + sceneId: str + contentLocation: str + arn: str + creationDateTime: datetime + updateDateTime: datetime + description: str + capabilities: List[str] + sceneMetadata: Dict[str, str] + generatedSceneMetadata: Dict[str, str] + error: SceneErrorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListComponentTypesRequestRequestTypeDef(BaseModel): + workspaceId: str + filters: Optional[Sequence[ListComponentTypesFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListEntitiesRequestRequestTypeDef(BaseModel): + workspaceId: str + filters: Optional[Sequence[ListEntitiesFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListMetadataTransferJobsRequestRequestTypeDef(BaseModel): + sourceType: SourceTypeType + destinationType: DestinationTypeType + filters: Optional[Sequence[ListMetadataTransferJobsFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListScenesResponseTypeDef(BaseModel): + sceneSummaries: List[SceneSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSyncResourcesRequestRequestTypeDef(BaseModel): + workspaceId: str + syncSource: str + filters: Optional[Sequence[SyncResourceFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListWorkspacesResponseTypeDef(BaseModel): + workspaceSummaries: List[WorkspaceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TabularConditionsTypeDef(BaseModel): + orderBy: Optional[Sequence[OrderByTypeDef]] = None + propertyFilters: Optional[Sequence[PropertyFilterTypeDef]] = None + +class PropertyValueEntryOutputTypeDef(BaseModel): + entityPropertyReference: EntityPropertyReferenceOutputTypeDef + propertyValues: Optional[List[PropertyValueOutputTypeDef]] = None + +class PropertyValueHistoryTypeDef(BaseModel): + entityPropertyReference: EntityPropertyReferenceOutputTypeDef + values: Optional[List[PropertyValueOutputTypeDef]] = None + +class GetPricingPlanResponseTypeDef(BaseModel): + currentPricingPlan: PricingPlanTypeDef + pendingPricingPlan: PricingPlanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePricingPlanResponseTypeDef(BaseModel): + currentPricingPlan: PricingPlanTypeDef + pendingPricingPlan: PricingPlanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ComponentRequestTypeDef(BaseModel): + description: Optional[str] = None + componentTypeId: Optional[str] = None + properties: Optional[Mapping[str, PropertyRequestTypeDef]] = None + propertyGroups: Optional[Mapping[str, ComponentPropertyGroupRequestTypeDef]] = None + +class ComponentUpdateRequestTypeDef(BaseModel): + updateType: Optional[ComponentUpdateTypeType] = None + description: Optional[str] = None + componentTypeId: Optional[str] = None + propertyUpdates: Optional[Mapping[str, PropertyRequestTypeDef]] = None + propertyGroupUpdates: Optional[Mapping[str, ComponentPropertyGroupRequestTypeDef]] = None + +class CompositeComponentRequestTypeDef(BaseModel): + description: Optional[str] = None + properties: Optional[Mapping[str, PropertyRequestTypeDef]] = None + propertyGroups: Optional[Mapping[str, ComponentPropertyGroupRequestTypeDef]] = None + +class CompositeComponentUpdateRequestTypeDef(BaseModel): + updateType: Optional[ComponentUpdateTypeType] = None + description: Optional[str] = None + propertyUpdates: Optional[Mapping[str, PropertyRequestTypeDef]] = None + propertyGroupUpdates: Optional[Mapping[str, ComponentPropertyGroupRequestTypeDef]] = None + +class FunctionRequestTypeDef(BaseModel): + requiredProperties: Optional[Sequence[str]] = None + scope: Optional[ScopeType] = None + implementedBy: Optional[DataConnectorTypeDef] = None + +class FunctionResponseTypeDef(BaseModel): + requiredProperties: Optional[List[str]] = None + scope: Optional[ScopeType] = None + implementedBy: Optional[DataConnectorTypeDef] = None + isInherited: Optional[bool] = None + +class GetPropertyValueResponseTypeDef(BaseModel): + propertyValues: Dict[str, PropertyLatestValueTypeDef] + nextToken: str + tabularPropertyValues: List[List[Dict[str, "DataValueOutputTypeDef"]]] + ResponseMetadata: ResponseMetadataTypeDef + +class CancelMetadataTransferJobResponseTypeDef(BaseModel): + metadataTransferJobId: str + arn: str + updateDateTime: datetime + status: MetadataTransferJobStatusTypeDef + progress: MetadataTransferJobProgressTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMetadataTransferJobResponseTypeDef(BaseModel): + metadataTransferJobId: str + arn: str + creationDateTime: datetime + status: MetadataTransferJobStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MetadataTransferJobSummaryTypeDef(BaseModel): + metadataTransferJobId: str + arn: str + creationDateTime: datetime + updateDateTime: datetime + status: MetadataTransferJobStatusTypeDef + progress: Optional[MetadataTransferJobProgressTypeDef] = None + +class ComponentSummaryTypeDef(BaseModel): + componentName: str + componentTypeId: str + status: StatusTypeDef + definedIn: Optional[str] = None + description: Optional[str] = None + propertyGroups: Optional[Dict[str, ComponentPropertyGroupResponseTypeDef]] = None + syncSource: Optional[str] = None + componentPath: Optional[str] = None + +class ComponentTypeSummaryTypeDef(BaseModel): + arn: str + componentTypeId: str + creationDateTime: datetime + updateDateTime: datetime + description: Optional[str] = None + status: Optional[StatusTypeDef] = None + componentTypeName: Optional[str] = None + +class EntitySummaryTypeDef(BaseModel): + entityId: str + entityName: str + arn: str + status: StatusTypeDef + creationDateTime: datetime + updateDateTime: datetime + parentEntityId: Optional[str] = None + description: Optional[str] = None + hasChildEntities: Optional[bool] = None + +class GetSyncJobResponseTypeDef(BaseModel): + arn: str + workspaceId: str + syncSource: str + syncRole: str + status: SyncJobStatusTypeDef + creationDateTime: datetime + updateDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class SyncJobSummaryTypeDef(BaseModel): + arn: Optional[str] = None + workspaceId: Optional[str] = None + syncSource: Optional[str] = None + status: Optional[SyncJobStatusTypeDef] = None + creationDateTime: Optional[datetime] = None + updateDateTime: Optional[datetime] = None + +class SyncResourceSummaryTypeDef(BaseModel): + resourceType: Optional[SyncResourceTypeType] = None + externalId: Optional[str] = None + resourceId: Optional[str] = None + status: Optional[SyncResourceStatusTypeDef] = None + updateDateTime: Optional[datetime] = None + +class IotSiteWiseSourceConfigurationOutputTypeDef(BaseModel): + filters: Optional[List[IotSiteWiseSourceConfigurationFilterTypeDef]] = None + +class IotSiteWiseSourceConfigurationTypeDef(BaseModel): + filters: Optional[Sequence[IotSiteWiseSourceConfigurationFilterTypeDef]] = None + +class IotTwinMakerSourceConfigurationOutputTypeDef(BaseModel): + workspace: str + filters: Optional[List[IotTwinMakerSourceConfigurationFilterTypeDef]] = None + +class IotTwinMakerSourceConfigurationTypeDef(BaseModel): + workspace: str + filters: Optional[Sequence[IotTwinMakerSourceConfigurationFilterTypeDef]] = None + +class ListPropertiesResponseTypeDef(BaseModel): + propertySummaries: List[PropertySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PropertyValueEntryTypeDef(BaseModel): + entityPropertyReference: EntityPropertyReferenceTypeDef + propertyValues: Optional[Sequence[PropertyValueTypeDef]] = None + +class GetPropertyValueRequestRequestTypeDef(BaseModel): + selectedProperties: Sequence[str] + workspaceId: str + componentName: Optional[str] = None + componentPath: Optional[str] = None + componentTypeId: Optional[str] = None + entityId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + propertyGroupName: Optional[str] = None + tabularConditions: Optional[TabularConditionsTypeDef] = None + +class BatchPutPropertyErrorTypeDef(BaseModel): + errorCode: str + errorMessage: str + entry: PropertyValueEntryOutputTypeDef + +class GetPropertyValueHistoryResponseTypeDef(BaseModel): + propertyValues: List[PropertyValueHistoryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEntityRequestRequestTypeDef(BaseModel): + workspaceId: str + entityName: str + entityId: Optional[str] = None + description: Optional[str] = None + components: Optional[Mapping[str, ComponentRequestTypeDef]] = None + compositeComponents: Optional[Mapping[str, CompositeComponentRequestTypeDef]] = None + parentEntityId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateEntityRequestRequestTypeDef(BaseModel): + workspaceId: str + entityId: str + entityName: Optional[str] = None + description: Optional[str] = None + componentUpdates: Optional[Mapping[str, ComponentUpdateRequestTypeDef]] = None + compositeComponentUpdates: Optional[ Mapping[str, CompositeComponentUpdateRequestTypeDef] = None + parentEntityUpdate: Optional[ParentEntityUpdateRequestTypeDef] = None + +class CreateComponentTypeRequestRequestTypeDef(BaseModel): + workspaceId: str + componentTypeId: str + isSingleton: Optional[bool] = None + description: Optional[str] = None + propertyDefinitions: Optional[Mapping[str, PropertyDefinitionRequestTypeDef]] = None + extendsFrom: Optional[Sequence[str]] = None + functions: Optional[Mapping[str, FunctionRequestTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + propertyGroups: Optional[Mapping[str, PropertyGroupRequestTypeDef]] = None + componentTypeName: Optional[str] = None + compositeComponentTypes: Optional[Mapping[str, CompositeComponentTypeRequestTypeDef]] = None + +class UpdateComponentTypeRequestRequestTypeDef(BaseModel): + workspaceId: str + componentTypeId: str + isSingleton: Optional[bool] = None + description: Optional[str] = None + propertyDefinitions: Optional[Mapping[str, PropertyDefinitionRequestTypeDef]] = None + extendsFrom: Optional[Sequence[str]] = None + functions: Optional[Mapping[str, FunctionRequestTypeDef]] = None + propertyGroups: Optional[Mapping[str, PropertyGroupRequestTypeDef]] = None + componentTypeName: Optional[str] = None + compositeComponentTypes: Optional[Mapping[str, CompositeComponentTypeRequestTypeDef]] = None + +class GetComponentTypeResponseTypeDef(BaseModel): + workspaceId: str + isSingleton: bool + componentTypeId: str + description: str + propertyDefinitions: Dict[str, PropertyDefinitionResponseTypeDef] + extendsFrom: List[str] + functions: Dict[str, FunctionResponseTypeDef] + creationDateTime: datetime + updateDateTime: datetime + arn: str + isAbstract: bool + isSchemaInitialized: bool + status: StatusTypeDef + propertyGroups: Dict[str, PropertyGroupResponseTypeDef] + syncSource: str + componentTypeName: str + compositeComponentTypes: Dict[str, CompositeComponentTypeResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMetadataTransferJobsResponseTypeDef(BaseModel): + metadataTransferJobSummaries: List[MetadataTransferJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ComponentResponseTypeDef(BaseModel): + componentName: Optional[str] = None + description: Optional[str] = None + componentTypeId: Optional[str] = None + status: Optional[StatusTypeDef] = None + definedIn: Optional[str] = None + properties: Optional[Dict[str, PropertyResponseTypeDef]] = None + propertyGroups: Optional[Dict[str, ComponentPropertyGroupResponseTypeDef]] = None + syncSource: Optional[str] = None + areAllPropertiesReturned: Optional[bool] = None + compositeComponents: Optional[Dict[str, ComponentSummaryTypeDef]] = None + areAllCompositeComponentsReturned: Optional[bool] = None + +class ListComponentsResponseTypeDef(BaseModel): + componentSummaries: List[ComponentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListComponentTypesResponseTypeDef(BaseModel): + workspaceId: str + componentTypeSummaries: List[ComponentTypeSummaryTypeDef] + nextToken: str + maxResults: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListEntitiesResponseTypeDef(BaseModel): + entitySummaries: List[EntitySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSyncJobsResponseTypeDef(BaseModel): + syncJobSummaries: List[SyncJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSyncResourcesResponseTypeDef(BaseModel): + syncResources: List[SyncResourceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SourceConfigurationOutputTypeDef(BaseModel): + type: SourceTypeType + s3Configuration: Optional[S3SourceConfigurationTypeDef] = None + iotSiteWiseConfiguration: Optional[IotSiteWiseSourceConfigurationOutputTypeDef] = None + iotTwinMakerConfiguration: Optional[IotTwinMakerSourceConfigurationOutputTypeDef] = None + +class SourceConfigurationTypeDef(BaseModel): + type: SourceTypeType + s3Configuration: Optional[S3SourceConfigurationTypeDef] = None + iotSiteWiseConfiguration: Optional[IotSiteWiseSourceConfigurationTypeDef] = None + iotTwinMakerConfiguration: Optional[IotTwinMakerSourceConfigurationTypeDef] = None + +class BatchPutPropertyErrorEntryTypeDef(BaseModel): + errors: List[BatchPutPropertyErrorTypeDef] + +class GetEntityResponseTypeDef(BaseModel): + entityId: str + entityName: str + arn: str + status: StatusTypeDef + workspaceId: str + description: str + components: Dict[str, ComponentResponseTypeDef] + parentEntityId: str + hasChildEntities: bool + creationDateTime: datetime + updateDateTime: datetime + syncSource: str + areAllComponentsReturned: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetMetadataTransferJobResponseTypeDef(BaseModel): + metadataTransferJobId: str + arn: str + description: str + sources: List[SourceConfigurationOutputTypeDef] + destination: DestinationConfigurationTypeDef + metadataTransferJobRole: str + reportUrl: str + creationDateTime: datetime + updateDateTime: datetime + status: MetadataTransferJobStatusTypeDef + progress: MetadataTransferJobProgressTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutPropertyValuesRequestRequestTypeDef(BaseModel): + workspaceId: str + entries: Sequence[PropertyValueEntryUnionTypeDef] + +class BatchPutPropertyValuesResponseTypeDef(BaseModel): + errorEntries: List[BatchPutPropertyErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMetadataTransferJobRequestRequestTypeDef(BaseModel): + sources: Sequence[SourceConfigurationUnionTypeDef] + destination: DestinationConfigurationTypeDef + metadataTransferJobId: Optional[str] = None + description: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/iottwinmaker_constants.py b/aws_resource_validator/pydantic_models/iottwinmaker_constants.py new file mode 100644 index 00000000..77fbdaa9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iottwinmaker_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ColumnTypeType = Literal["EDGE", "NODE", "VALUE"] +ComponentUpdateTypeType = Literal["CREATE", "DELETE", "UPDATE"] +DestinationTypeType = Literal["iotsitewise", "iottwinmaker", "s3"] +ErrorCodeType = Literal["COMPOSITE_COMPONENT_FAILURE", + "INTERNAL_FAILURE", + "PROCESSING_ERROR", + "SYNC_CREATING_ERROR", + "SYNC_DELETING_ERROR", + "SYNC_INITIALIZING_ERROR", + "SYNC_PROCESSING_ERROR", + "VALIDATION_ERROR",] +GroupTypeType = Literal["TABULAR"] +InterpolationTypeType = Literal["LINEAR"] +MetadataTransferJobStateType = Literal["CANCELLED", "CANCELLING", "COMPLETED", "ERROR", "PENDING", "RUNNING", "VALIDATING"] +OrderByTimeType = Literal["ASCENDING", "DESCENDING"] +OrderType = Literal["ASCENDING", "DESCENDING"] +ParentEntityUpdateTypeType = Literal["DELETE", "UPDATE"] +PricingModeType = Literal["BASIC", "STANDARD", "TIERED_BUNDLE"] +PricingTierType = Literal["TIER_1", "TIER_2", "TIER_3", "TIER_4"] +PropertyGroupUpdateTypeType = Literal["CREATE", "DELETE", "UPDATE"] +PropertyUpdateTypeType = Literal["CREATE", "DELETE", "RESET_VALUE", "UPDATE"] +SceneErrorCodeType = Literal["MATTERPORT_ERROR"] +ScopeType = Literal["ENTITY", "WORKSPACE"] +SourceTypeType = Literal["iotsitewise", "iottwinmaker", "s3"] +StateType = Literal["ACTIVE", "CREATING", "DELETING", "ERROR", "UPDATING"] +SyncJobStateType = Literal["ACTIVE", "CREATING", "DELETING", "ERROR", "INITIALIZING"] +SyncResourceStateType = Literal["DELETED", "ERROR", "INITIALIZING", "IN_SYNC", "PROCESSING"] +SyncResourceTypeType = Literal["COMPONENT_TYPE", "ENTITY"] +TypeType = Literal["BOOLEAN", "DOUBLE", "INTEGER", "LIST", "LONG", "MAP", "RELATIONSHIP", "STRING"] +UpdateReasonType = Literal["DEFAULT", "ENTITY_COUNT_UPDATE", "OVERWRITTEN", "PRICING_MODE_UPDATE", "PRICING_TIER_UPDATE"] +IoTTwinMakerServiceName = Literal["iottwinmaker"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +PropertyValueEntryUnionTypeDef = Union['PropertyValueEntryTypeDef', 'PropertyValueEntryOutputTypeDef'] +SourceConfigurationUnionTypeDef = Union[ 'SourceConfigurationTypeDef', 'SourceConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/iotwireless_classes.py b/aws_resource_validator/pydantic_models/iotwireless_classes.py new file mode 100644 index 00000000..a126223c --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotwireless_classes.py @@ -0,0 +1,1666 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.iotwireless_constants import * + +class SessionKeysAbpV10XTypeDef(BaseModel): + NwkSKey: Optional[str] = None + AppSKey: Optional[str] = None + +class SessionKeysAbpV11TypeDef(BaseModel): + FNwkSIntKey: Optional[str] = None + SNwkSIntKey: Optional[str] = None + NwkSEncKey: Optional[str] = None + AppSKey: Optional[str] = None + +class AccuracyTypeDef(BaseModel): + HorizontalAccuracy: Optional[float] = None + VerticalAccuracy: Optional[float] = None + +class ApplicationConfigTypeDef(BaseModel): + FPort: Optional[int] = None + Type: Optional[Literal["SemtechGeolocation"]] = None + DestinationName: Optional[str] = None + +class SidewalkAccountInfoTypeDef(BaseModel): + AmazonId: Optional[str] = None + AppServerPrivateKey: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociateMulticastGroupWithFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + MulticastGroupId: str + +class AssociateWirelessDeviceWithFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + WirelessDeviceId: str + +class AssociateWirelessDeviceWithMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + WirelessDeviceId: str + +class AssociateWirelessDeviceWithThingRequestRequestTypeDef(BaseModel): + Id: str + ThingArn: str + +class AssociateWirelessGatewayWithCertificateRequestRequestTypeDef(BaseModel): + Id: str + IotCertificateId: str + +class AssociateWirelessGatewayWithThingRequestRequestTypeDef(BaseModel): + Id: str + ThingArn: str + +class BeaconingOutputTypeDef(BaseModel): + DataRate: Optional[int] = None + Frequencies: Optional[List[int]] = None + +class BeaconingTypeDef(BaseModel): + DataRate: Optional[int] = None + Frequencies: Optional[Sequence[int]] = None + +class CancelMulticastGroupSessionRequestRequestTypeDef(BaseModel): + Id: str + +class CdmaLocalIdTypeDef(BaseModel): + PnOffset: int + CdmaChannel: int + +class CdmaNmrObjTypeDef(BaseModel): + PnOffset: int + CdmaChannel: int + PilotPower: Optional[int] = None + BaseStationId: Optional[int] = None + +class CertificateListTypeDef(BaseModel): + SigningAlg: SigningAlgType + Value: str + +class LoRaWANConnectionStatusEventNotificationConfigurationsTypeDef(BaseModel): + GatewayEuiEventTopic: Optional[EventNotificationTopicStatusType] = None + +class LoRaWANConnectionStatusResourceTypeEventConfigurationTypeDef(BaseModel): + WirelessGatewayEventTopic: Optional[EventNotificationTopicStatusType] = None + +class LoRaWANDeviceProfileTypeDef(BaseModel): + SupportsClassB: Optional[bool] = None + ClassBTimeout: Optional[int] = None + PingSlotPeriod: Optional[int] = None + PingSlotDr: Optional[int] = None + PingSlotFreq: Optional[int] = None + SupportsClassC: Optional[bool] = None + ClassCTimeout: Optional[int] = None + MacVersion: Optional[str] = None + RegParamsRevision: Optional[str] = None + RxDelay1: Optional[int] = None + RxDrOffset1: Optional[int] = None + RxDataRate2: Optional[int] = None + RxFreq2: Optional[int] = None + FactoryPresetFreqsList: Optional[Sequence[int]] = None + MaxEirp: Optional[int] = None + MaxDutyCycle: Optional[int] = None + RfRegion: Optional[str] = None + SupportsJoin: Optional[bool] = None + Supports32BitFCnt: Optional[bool] = None + +class LoRaWANFuotaTaskTypeDef(BaseModel): + RfRegion: Optional[SupportedRfRegionType] = None + +class LoRaWANMulticastTypeDef(BaseModel): + RfRegion: Optional[SupportedRfRegionType] = None + DlClass: Optional[DlClassType] = None + +class TraceContentTypeDef(BaseModel): + WirelessDeviceFrameInfo: Optional[WirelessDeviceFrameInfoType] = None + LogLevel: Optional[LogLevelType] = None + MulticastFrameInfo: Optional[MulticastFrameInfoType] = None + +class LoRaWANServiceProfileTypeDef(BaseModel): + AddGwMetadata: Optional[bool] = None + DrMin: Optional[int] = None + DrMax: Optional[int] = None + PrAllowed: Optional[bool] = None + RaAllowed: Optional[bool] = None + +class SidewalkCreateWirelessDeviceTypeDef(BaseModel): + DeviceProfileId: Optional[str] = None + +class CreateWirelessGatewayTaskRequestRequestTypeDef(BaseModel): + Id: str + WirelessGatewayTaskDefinitionId: str + +class DakCertificateMetadataTypeDef(BaseModel): + CertificateId: str + MaxAllowedSignature: Optional[int] = None + FactorySupport: Optional[bool] = None + ApId: Optional[str] = None + DeviceTypeId: Optional[str] = None + +class DeleteDestinationRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteDeviceProfileRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteNetworkAnalyzerConfigurationRequestRequestTypeDef(BaseModel): + ConfigurationName: str + +class DeleteQueuedMessagesRequestRequestTypeDef(BaseModel): + Id: str + MessageId: str + WirelessDeviceType: Optional[WirelessDeviceTypeType] = None + +class DeleteServiceProfileRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteWirelessDeviceImportTaskRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteWirelessDeviceRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteWirelessGatewayRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteWirelessGatewayTaskDefinitionRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteWirelessGatewayTaskRequestRequestTypeDef(BaseModel): + Id: str + +class DeregisterWirelessDeviceRequestRequestTypeDef(BaseModel): + Identifier: str + WirelessDeviceType: Optional[WirelessDeviceTypeType] = None + +class DestinationsTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + ExpressionType: Optional[ExpressionTypeType] = None + Expression: Optional[str] = None + Description: Optional[str] = None + RoleArn: Optional[str] = None + +class DeviceProfileTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + Id: Optional[str] = None + +class SidewalkEventNotificationConfigurationsTypeDef(BaseModel): + AmazonIdEventTopic: Optional[EventNotificationTopicStatusType] = None + +class SidewalkResourceTypeEventConfigurationTypeDef(BaseModel): + WirelessDeviceEventTopic: Optional[EventNotificationTopicStatusType] = None + +class DimensionTypeDef(BaseModel): + name: Optional[DimensionNameType] = None + value: Optional[str] = None + +class DisassociateAwsAccountFromPartnerAccountRequestRequestTypeDef(BaseModel): + PartnerAccountId: str + PartnerType: Literal["Sidewalk"] + +class DisassociateMulticastGroupFromFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + MulticastGroupId: str + +class DisassociateWirelessDeviceFromFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + WirelessDeviceId: str + +class DisassociateWirelessDeviceFromMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + WirelessDeviceId: str + +class DisassociateWirelessDeviceFromThingRequestRequestTypeDef(BaseModel): + Id: str + +class DisassociateWirelessGatewayFromCertificateRequestRequestTypeDef(BaseModel): + Id: str + +class DisassociateWirelessGatewayFromThingRequestRequestTypeDef(BaseModel): + Id: str + +class PositioningTypeDef(BaseModel): + ClockSync: Optional[int] = None + Stream: Optional[int] = None + Gnss: Optional[int] = None + +class FuotaTaskTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + +class GatewayListItemTypeDef(BaseModel): + GatewayId: str + DownlinkFrequency: int + +class GetDestinationRequestRequestTypeDef(BaseModel): + Name: str + +class GetDeviceProfileRequestRequestTypeDef(BaseModel): + Id: str + +class LoRaWANDeviceProfileOutputTypeDef(BaseModel): + SupportsClassB: Optional[bool] = None + ClassBTimeout: Optional[int] = None + PingSlotPeriod: Optional[int] = None + PingSlotDr: Optional[int] = None + PingSlotFreq: Optional[int] = None + SupportsClassC: Optional[bool] = None + ClassCTimeout: Optional[int] = None + MacVersion: Optional[str] = None + RegParamsRevision: Optional[str] = None + RxDelay1: Optional[int] = None + RxDrOffset1: Optional[int] = None + RxDataRate2: Optional[int] = None + RxFreq2: Optional[int] = None + FactoryPresetFreqsList: Optional[List[int]] = None + MaxEirp: Optional[int] = None + MaxDutyCycle: Optional[int] = None + RfRegion: Optional[str] = None + SupportsJoin: Optional[bool] = None + Supports32BitFCnt: Optional[bool] = None + +class GetFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + +class LoRaWANFuotaTaskGetInfoTypeDef(BaseModel): + RfRegion: Optional[str] = None + StartTime: Optional[datetime] = None + +class SummaryMetricConfigurationTypeDef(BaseModel): + Status: Optional[SummaryMetricConfigurationStatusType] = None + +class GetMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + +class LoRaWANMulticastGetTypeDef(BaseModel): + RfRegion: Optional[SupportedRfRegionType] = None + DlClass: Optional[DlClassType] = None + NumberOfDevicesRequested: Optional[int] = None + NumberOfDevicesInGroup: Optional[int] = None + +class GetMulticastGroupSessionRequestRequestTypeDef(BaseModel): + Id: str + +class LoRaWANMulticastSessionOutputTypeDef(BaseModel): + DlDr: Optional[int] = None + DlFreq: Optional[int] = None + SessionStartTime: Optional[datetime] = None + SessionTimeout: Optional[int] = None + PingSlotPeriod: Optional[int] = None + +class GetNetworkAnalyzerConfigurationRequestRequestTypeDef(BaseModel): + ConfigurationName: str + +class GetPartnerAccountRequestRequestTypeDef(BaseModel): + PartnerAccountId: str + PartnerType: Literal["Sidewalk"] + +class SidewalkAccountInfoWithFingerprintTypeDef(BaseModel): + AmazonId: Optional[str] = None + Fingerprint: Optional[str] = None + Arn: Optional[str] = None + +class GetPositionConfigurationRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: PositionResourceTypeType + +class GnssTypeDef(BaseModel): + Payload: str + CaptureTime: Optional[float] = None + CaptureTimeAccuracy: Optional[float] = None + AssistPosition: Optional[Sequence[float]] = None + AssistAltitude: Optional[float] = None + Use2DSolver: Optional[bool] = None + +class IpTypeDef(BaseModel): + IpAddress: str + +class WiFiAccessPointTypeDef(BaseModel): + MacAddress: str + Rss: int + +class GetPositionRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: PositionResourceTypeType + +class GetResourceEventConfigurationRequestRequestTypeDef(BaseModel): + Identifier: str + IdentifierType: IdentifierTypeType + PartnerType: Optional[Literal["Sidewalk"]] = None + +class GetResourceLogLevelRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: str + +class GetResourcePositionRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: PositionResourceTypeType + +class GetServiceEndpointRequestRequestTypeDef(BaseModel): + ServiceType: Optional[WirelessGatewayServiceTypeType] = None + +class GetServiceProfileRequestRequestTypeDef(BaseModel): + Id: str + +class LoRaWANGetServiceProfileInfoTypeDef(BaseModel): + UlRate: Optional[int] = None + UlBucketSize: Optional[int] = None + UlRatePolicy: Optional[str] = None + DlRate: Optional[int] = None + DlBucketSize: Optional[int] = None + DlRatePolicy: Optional[str] = None + AddGwMetadata: Optional[bool] = None + DevStatusReqFreq: Optional[int] = None + ReportDevStatusBattery: Optional[bool] = None + ReportDevStatusMargin: Optional[bool] = None + DrMin: Optional[int] = None + DrMax: Optional[int] = None + ChannelMask: Optional[str] = None + PrAllowed: Optional[bool] = None + HrAllowed: Optional[bool] = None + RaAllowed: Optional[bool] = None + NwkGeoLoc: Optional[bool] = None + TargetPer: Optional[int] = None + MinGwDiversity: Optional[int] = None + +class GetWirelessDeviceImportTaskRequestRequestTypeDef(BaseModel): + Id: str + +class SidewalkGetStartImportInfoTypeDef(BaseModel): + DeviceCreationFileList: Optional[List[str]] = None + Role: Optional[str] = None + +class GetWirelessDeviceRequestRequestTypeDef(BaseModel): + Identifier: str + IdentifierType: WirelessDeviceIdTypeType + +class GetWirelessDeviceStatisticsRequestRequestTypeDef(BaseModel): + WirelessDeviceId: str + +class SidewalkDeviceMetadataTypeDef(BaseModel): + Rssi: Optional[int] = None + BatteryLevel: Optional[BatteryLevelType] = None + Event: Optional[EventType] = None + DeviceState: Optional[DeviceStateType] = None + +class GetWirelessGatewayCertificateRequestRequestTypeDef(BaseModel): + Id: str + +class GetWirelessGatewayFirmwareInformationRequestRequestTypeDef(BaseModel): + Id: str + +class GetWirelessGatewayRequestRequestTypeDef(BaseModel): + Identifier: str + IdentifierType: WirelessGatewayIdTypeType + +class GetWirelessGatewayStatisticsRequestRequestTypeDef(BaseModel): + WirelessGatewayId: str + +class GetWirelessGatewayTaskDefinitionRequestRequestTypeDef(BaseModel): + Id: str + +class GetWirelessGatewayTaskRequestRequestTypeDef(BaseModel): + Id: str + +class GlobalIdentityTypeDef(BaseModel): + Lac: int + GeranCid: int + +class GsmLocalIdTypeDef(BaseModel): + Bsic: int + Bcch: int + +class ImportedSidewalkDeviceTypeDef(BaseModel): + SidewalkManufacturingSn: Optional[str] = None + OnboardingStatus: Optional[OnboardStatusType] = None + OnboardingStatusReason: Optional[str] = None + LastUpdateTime: Optional[datetime] = None + +class LoRaWANJoinEventNotificationConfigurationsTypeDef(BaseModel): + DevEuiEventTopic: Optional[EventNotificationTopicStatusType] = None + +class LoRaWANJoinResourceTypeEventConfigurationTypeDef(BaseModel): + WirelessDeviceEventTopic: Optional[EventNotificationTopicStatusType] = None + +class ListDestinationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDeviceProfilesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DeviceProfileType: Optional[DeviceProfileTypeType] = None + +class ListDevicesForWirelessDeviceImportTaskRequestRequestTypeDef(BaseModel): + Id: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Status: Optional[OnboardStatusType] = None + +class ListEventConfigurationsRequestRequestTypeDef(BaseModel): + ResourceType: EventNotificationResourceTypeType + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFuotaTasksRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMulticastGroupsByFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MulticastGroupByFuotaTaskTypeDef(BaseModel): + Id: Optional[str] = None + +class ListMulticastGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MulticastGroupTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + +class ListNetworkAnalyzerConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NetworkAnalyzerConfigurationsTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class ListPartnerAccountsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPositionConfigurationsRequestRequestTypeDef(BaseModel): + ResourceType: Optional[PositionResourceTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListQueuedMessagesRequestRequestTypeDef(BaseModel): + Id: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WirelessDeviceType: Optional[WirelessDeviceTypeType] = None + +class ListServiceProfilesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ServiceProfileTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + Id: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListWirelessDeviceImportTasksRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListWirelessDevicesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DestinationName: Optional[str] = None + DeviceProfileId: Optional[str] = None + ServiceProfileId: Optional[str] = None + WirelessDeviceType: Optional[WirelessDeviceTypeType] = None + FuotaTaskId: Optional[str] = None + MulticastGroupId: Optional[str] = None + +class ListWirelessGatewayTaskDefinitionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + TaskDefinitionType: Optional[Literal["UPDATE"]] = None + +class ListWirelessGatewaysRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class LoRaWANGatewayMetadataTypeDef(BaseModel): + GatewayEui: Optional[str] = None + Snr: Optional[float] = None + Rssi: Optional[float] = None + +class LoRaWANPublicGatewayMetadataTypeDef(BaseModel): + ProviderNetId: Optional[str] = None + Id: Optional[str] = None + Rssi: Optional[float] = None + Snr: Optional[float] = None + RfRegion: Optional[str] = None + DlAllowed: Optional[bool] = None + +class OtaaV10XTypeDef(BaseModel): + AppKey: Optional[str] = None + AppEui: Optional[str] = None + JoinEui: Optional[str] = None + GenAppKey: Optional[str] = None + +class OtaaV11TypeDef(BaseModel): + AppKey: Optional[str] = None + NwkKey: Optional[str] = None + JoinEui: Optional[str] = None + +class LoRaWANGatewayVersionTypeDef(BaseModel): + PackageVersion: Optional[str] = None + Model: Optional[str] = None + Station: Optional[str] = None + +class LoRaWANListDeviceTypeDef(BaseModel): + DevEui: Optional[str] = None + +class LoRaWANMulticastMetadataTypeDef(BaseModel): + FPort: Optional[int] = None + +class UpdateAbpV10XTypeDef(BaseModel): + FCntStart: Optional[int] = None + +class UpdateAbpV11TypeDef(BaseModel): + FCntStart: Optional[int] = None + +class LteLocalIdTypeDef(BaseModel): + Pci: int + Earfcn: int + +class LteNmrObjTypeDef(BaseModel): + Pci: int + Earfcn: int + EutranCid: int + Rsrp: Optional[int] = None + Rsrq: Optional[float] = None + +class MetricQueryValueTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + Sum: Optional[float] = None + Avg: Optional[float] = None + Std: Optional[float] = None + P90: Optional[float] = None + +class SemtechGnssConfigurationTypeDef(BaseModel): + Status: PositionConfigurationStatusType + Fec: PositionConfigurationFecType + +class SemtechGnssDetailTypeDef(BaseModel): + Provider: Optional[Literal["Semtech"]] = None + Type: Optional[Literal["GNSS"]] = None + Status: Optional[PositionConfigurationStatusType] = None + Fec: Optional[PositionConfigurationFecType] = None + +class PutResourceLogLevelRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: str + LogLevel: LogLevelType + +class ResetResourceLogLevelRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: str + +class SidewalkSendDataToDeviceTypeDef(BaseModel): + Seq: Optional[int] = None + MessageType: Optional[MessageTypeType] = None + AckModeRetryDurationSecs: Optional[int] = None + +class SidewalkSingleStartImportInfoTypeDef(BaseModel): + SidewalkManufacturingSn: Optional[str] = None + +class SidewalkStartImportInfoTypeDef(BaseModel): + DeviceCreationFile: Optional[str] = None + Role: Optional[str] = None + +class SidewalkUpdateAccountTypeDef(BaseModel): + AppServerPrivateKey: Optional[str] = None + +class SidewalkUpdateImportInfoTypeDef(BaseModel): + DeviceCreationFile: Optional[str] = None + +class TdscdmaLocalIdTypeDef(BaseModel): + Uarfcn: int + CellParams: int + +class TdscdmaNmrObjTypeDef(BaseModel): + Uarfcn: int + CellParams: int + UtranCid: Optional[int] = None + Rscp: Optional[int] = None + PathLoss: Optional[int] = None + +class TestWirelessDeviceRequestRequestTypeDef(BaseModel): + Id: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDestinationRequestRequestTypeDef(BaseModel): + Name: str + ExpressionType: Optional[ExpressionTypeType] = None + Expression: Optional[str] = None + Description: Optional[str] = None + RoleArn: Optional[str] = None + +class UpdatePositionRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: PositionResourceTypeType + Position: Sequence[float] + +class UpdateWirelessGatewayRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + Description: Optional[str] = None + JoinEuiFilters: Optional[Sequence[Sequence[str]]] = None + NetIdFilters: Optional[Sequence[str]] = None + MaxEirp: Optional[float] = None + +class WcdmaLocalIdTypeDef(BaseModel): + Uarfcndl: int + Psc: int + +class WcdmaNmrObjTypeDef(BaseModel): + Uarfcndl: int + Psc: int + UtranCid: int + Rscp: Optional[int] = None + PathLoss: Optional[int] = None + +class WirelessDeviceEventLogOptionTypeDef(BaseModel): + Event: WirelessDeviceEventType + LogLevel: LogLevelType + +class WirelessGatewayEventLogOptionTypeDef(BaseModel): + Event: WirelessGatewayEventType + LogLevel: LogLevelType + +class AbpV10XTypeDef(BaseModel): + DevAddr: Optional[str] = None + SessionKeys: Optional[SessionKeysAbpV10XTypeDef] = None + FCntStart: Optional[int] = None + +class AbpV11TypeDef(BaseModel): + DevAddr: Optional[str] = None + SessionKeys: Optional[SessionKeysAbpV11TypeDef] = None + FCntStart: Optional[int] = None + +class AssociateAwsAccountWithPartnerAccountRequestRequestTypeDef(BaseModel): + Sidewalk: SidewalkAccountInfoTypeDef + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDestinationRequestRequestTypeDef(BaseModel): + Name: str + ExpressionType: ExpressionTypeType + Expression: str + RoleArn: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + +class StartBulkAssociateWirelessDeviceWithMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + QueryString: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartBulkDisassociateWirelessDeviceFromMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + QueryString: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class AssociateAwsAccountWithPartnerAccountResponseTypeDef(BaseModel): + Sidewalk: SidewalkAccountInfoTypeDef + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateWirelessGatewayWithCertificateResponseTypeDef(BaseModel): + IotCertificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDestinationResponseTypeDef(BaseModel): + Arn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeviceProfileResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFuotaTaskResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMulticastGroupResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkAnalyzerConfigurationResponseTypeDef(BaseModel): + Arn: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceProfileResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWirelessDeviceResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWirelessGatewayResponseTypeDef(BaseModel): + Arn: str + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWirelessGatewayTaskDefinitionResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWirelessGatewayTaskResponseTypeDef(BaseModel): + WirelessGatewayTaskDefinitionId: str + Status: WirelessGatewayTaskStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetDestinationResponseTypeDef(BaseModel): + Arn: str + Name: str + Expression: str + ExpressionType: ExpressionTypeType + Description: str + RoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPositionEstimateResponseTypeDef(BaseModel): + GeoJsonPayload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetPositionResponseTypeDef(BaseModel): + Position: List[float] + Accuracy: AccuracyTypeDef + SolverType: Literal["GNSS"] + SolverProvider: Literal["Semtech"] + SolverVersion: str + Timestamp: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceLogLevelResponseTypeDef(BaseModel): + LogLevel: LogLevelType + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePositionResponseTypeDef(BaseModel): + GeoJsonPayload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceEndpointResponseTypeDef(BaseModel): + ServiceType: WirelessGatewayServiceTypeType + ServiceEndpoint: str + ServerTrust: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWirelessGatewayCertificateResponseTypeDef(BaseModel): + IotCertificateId: str + LoRaWANNetworkServerCertificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWirelessGatewayStatisticsResponseTypeDef(BaseModel): + WirelessGatewayId: str + LastUplinkReceivedAt: str + ConnectionStatus: ConnectionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetWirelessGatewayTaskResponseTypeDef(BaseModel): + WirelessGatewayId: str + WirelessGatewayTaskDefinitionId: str + LastUplinkReceivedAt: str + TaskCreatedAt: str + Status: WirelessGatewayTaskStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendDataToMulticastGroupResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendDataToWirelessDeviceResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSingleWirelessDeviceImportTaskResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartWirelessDeviceImportTaskResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestWirelessDeviceResponseTypeDef(BaseModel): + Result: str + ResponseMetadata: ResponseMetadataTypeDef + +class LoRaWANGatewayOutputTypeDef(BaseModel): + GatewayEui: Optional[str] = None + RfRegion: Optional[str] = None + JoinEuiFilters: Optional[List[List[str]]] = None + NetIdFilters: Optional[List[str]] = None + SubBands: Optional[List[int]] = None + Beaconing: Optional[BeaconingOutputTypeDef] = None + MaxEirp: Optional[float] = None + +class LoRaWANGatewayTypeDef(BaseModel): + GatewayEui: Optional[str] = None + RfRegion: Optional[str] = None + JoinEuiFilters: Optional[Sequence[Sequence[str]]] = None + NetIdFilters: Optional[Sequence[str]] = None + SubBands: Optional[Sequence[int]] = None + Beaconing: Optional[BeaconingTypeDef] = None + MaxEirp: Optional[float] = None + +class UpdateResourcePositionRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: PositionResourceTypeType + GeoJsonPayload: Optional[BlobTypeDef] = None + +class CdmaObjTypeDef(BaseModel): + SystemId: int + NetworkId: int + BaseStationId: int + RegistrationZone: Optional[int] = None + CdmaLocalId: Optional[CdmaLocalIdTypeDef] = None + PilotPower: Optional[int] = None + BaseLat: Optional[float] = None + BaseLng: Optional[float] = None + CdmaNmr: Optional[Sequence[CdmaNmrObjTypeDef]] = None + +class SidewalkDeviceTypeDef(BaseModel): + AmazonId: Optional[str] = None + SidewalkId: Optional[str] = None + SidewalkManufacturingSn: Optional[str] = None + DeviceCertificates: Optional[List[CertificateListTypeDef]] = None + PrivateKeys: Optional[List[CertificateListTypeDef]] = None + DeviceProfileId: Optional[str] = None + CertificateId: Optional[str] = None + Status: Optional[WirelessDeviceSidewalkStatusType] = None + +class SidewalkListDeviceTypeDef(BaseModel): + AmazonId: Optional[str] = None + SidewalkId: Optional[str] = None + SidewalkManufacturingSn: Optional[str] = None + DeviceCertificates: Optional[List[CertificateListTypeDef]] = None + DeviceProfileId: Optional[str] = None + Status: Optional[WirelessDeviceSidewalkStatusType] = None + +class ConnectionStatusEventConfigurationTypeDef(BaseModel): + LoRaWAN: Optional[LoRaWANConnectionStatusEventNotificationConfigurationsTypeDef] = None + WirelessGatewayIdEventTopic: Optional[EventNotificationTopicStatusType] = None + +class ConnectionStatusResourceTypeEventConfigurationTypeDef(BaseModel): + LoRaWAN: Optional[LoRaWANConnectionStatusResourceTypeEventConfigurationTypeDef] = None + +class CreateDeviceProfileRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + LoRaWAN: Optional[LoRaWANDeviceProfileTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + Sidewalk: Optional[Mapping[str, Any]] = None + +class CreateFuotaTaskRequestRequestTypeDef(BaseModel): + FirmwareUpdateImage: str + FirmwareUpdateRole: str + Name: Optional[str] = None + Description: Optional[str] = None + ClientRequestToken: Optional[str] = None + LoRaWAN: Optional[LoRaWANFuotaTaskTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + RedundancyPercent: Optional[int] = None + FragmentSizeBytes: Optional[int] = None + FragmentIntervalMS: Optional[int] = None + +class UpdateFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + Description: Optional[str] = None + LoRaWAN: Optional[LoRaWANFuotaTaskTypeDef] = None + FirmwareUpdateImage: Optional[str] = None + FirmwareUpdateRole: Optional[str] = None + RedundancyPercent: Optional[int] = None + FragmentSizeBytes: Optional[int] = None + FragmentIntervalMS: Optional[int] = None + +class CreateMulticastGroupRequestRequestTypeDef(BaseModel): + LoRaWAN: LoRaWANMulticastTypeDef + Name: Optional[str] = None + Description: Optional[str] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + Description: Optional[str] = None + LoRaWAN: Optional[LoRaWANMulticastTypeDef] = None + +class CreateNetworkAnalyzerConfigurationRequestRequestTypeDef(BaseModel): + Name: str + TraceContent: Optional[TraceContentTypeDef] = None + WirelessDevices: Optional[Sequence[str]] = None + WirelessGateways: Optional[Sequence[str]] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + MulticastGroups: Optional[Sequence[str]] = None + +class GetNetworkAnalyzerConfigurationResponseTypeDef(BaseModel): + TraceContent: TraceContentTypeDef + WirelessDevices: List[str] + WirelessGateways: List[str] + Description: str + Arn: str + Name: str + MulticastGroups: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNetworkAnalyzerConfigurationRequestRequestTypeDef(BaseModel): + ConfigurationName: str + TraceContent: Optional[TraceContentTypeDef] = None + WirelessDevicesToAdd: Optional[Sequence[str]] = None + WirelessDevicesToRemove: Optional[Sequence[str]] = None + WirelessGatewaysToAdd: Optional[Sequence[str]] = None + WirelessGatewaysToRemove: Optional[Sequence[str]] = None + Description: Optional[str] = None + MulticastGroupsToAdd: Optional[Sequence[str]] = None + MulticastGroupsToRemove: Optional[Sequence[str]] = None + +class CreateServiceProfileRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + LoRaWAN: Optional[LoRaWANServiceProfileTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + +class SidewalkGetDeviceProfileTypeDef(BaseModel): + ApplicationServerPublicKey: Optional[str] = None + QualificationStatus: Optional[bool] = None + DakCertificateMetadata: Optional[List[DakCertificateMetadataTypeDef]] = None + +class ListDestinationsResponseTypeDef(BaseModel): + DestinationList: List[DestinationsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDeviceProfilesResponseTypeDef(BaseModel): + DeviceProfileList: List[DeviceProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeviceRegistrationStateEventConfigurationTypeDef(BaseModel): + Sidewalk: Optional[SidewalkEventNotificationConfigurationsTypeDef] = None + WirelessDeviceIdEventTopic: Optional[EventNotificationTopicStatusType] = None + +class MessageDeliveryStatusEventConfigurationTypeDef(BaseModel): + Sidewalk: Optional[SidewalkEventNotificationConfigurationsTypeDef] = None + WirelessDeviceIdEventTopic: Optional[EventNotificationTopicStatusType] = None + +class ProximityEventConfigurationTypeDef(BaseModel): + Sidewalk: Optional[SidewalkEventNotificationConfigurationsTypeDef] = None + WirelessDeviceIdEventTopic: Optional[EventNotificationTopicStatusType] = None + +class DeviceRegistrationStateResourceTypeEventConfigurationTypeDef(BaseModel): + Sidewalk: Optional[SidewalkResourceTypeEventConfigurationTypeDef] = None + +class MessageDeliveryStatusResourceTypeEventConfigurationTypeDef(BaseModel): + Sidewalk: Optional[SidewalkResourceTypeEventConfigurationTypeDef] = None + +class ProximityResourceTypeEventConfigurationTypeDef(BaseModel): + Sidewalk: Optional[SidewalkResourceTypeEventConfigurationTypeDef] = None + +class FPortsOutputTypeDef(BaseModel): + Fuota: Optional[int] = None + Multicast: Optional[int] = None + ClockSync: Optional[int] = None + Positioning: Optional[PositioningTypeDef] = None + Applications: Optional[List[ApplicationConfigTypeDef]] = None + +class FPortsTypeDef(BaseModel): + Fuota: Optional[int] = None + Multicast: Optional[int] = None + ClockSync: Optional[int] = None + Positioning: Optional[PositioningTypeDef] = None + Applications: Optional[Sequence[ApplicationConfigTypeDef]] = None + +class UpdateFPortsTypeDef(BaseModel): + Positioning: Optional[PositioningTypeDef] = None + Applications: Optional[Sequence[ApplicationConfigTypeDef]] = None + +class ListFuotaTasksResponseTypeDef(BaseModel): + FuotaTaskList: List[FuotaTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ParticipatingGatewaysOutputTypeDef(BaseModel): + DownlinkMode: DownlinkModeType + GatewayList: List[GatewayListItemTypeDef] + TransmissionInterval: int + +class ParticipatingGatewaysTypeDef(BaseModel): + DownlinkMode: DownlinkModeType + GatewayList: Sequence[GatewayListItemTypeDef] + TransmissionInterval: int + +class GetFuotaTaskResponseTypeDef(BaseModel): + Arn: str + Id: str + Status: FuotaTaskStatusType + Name: str + Description: str + LoRaWAN: LoRaWANFuotaTaskGetInfoTypeDef + FirmwareUpdateImage: str + FirmwareUpdateRole: str + CreatedAt: datetime + RedundancyPercent: int + FragmentSizeBytes: int + FragmentIntervalMS: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetMetricConfigurationResponseTypeDef(BaseModel): + SummaryMetric: SummaryMetricConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMetricConfigurationRequestRequestTypeDef(BaseModel): + SummaryMetric: Optional[SummaryMetricConfigurationTypeDef] = None + +class GetMulticastGroupResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Description: str + Status: str + LoRaWAN: LoRaWANMulticastGetTypeDef + CreatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetMulticastGroupSessionResponseTypeDef(BaseModel): + LoRaWAN: LoRaWANMulticastSessionOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPartnerAccountResponseTypeDef(BaseModel): + Sidewalk: SidewalkAccountInfoWithFingerprintTypeDef + AccountLinked: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListPartnerAccountsResponseTypeDef(BaseModel): + Sidewalk: List[SidewalkAccountInfoWithFingerprintTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LoRaWANMulticastSessionTypeDef(BaseModel): + DlDr: Optional[int] = None + DlFreq: Optional[int] = None + SessionStartTime: Optional[TimestampTypeDef] = None + SessionTimeout: Optional[int] = None + PingSlotPeriod: Optional[int] = None + +class LoRaWANStartFuotaTaskTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + +class SummaryMetricQueryTypeDef(BaseModel): + QueryId: Optional[str] = None + MetricName: Optional[MetricNameType] = None + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + AggregationPeriod: Optional[AggregationPeriodType] = None + StartTimestamp: Optional[TimestampTypeDef] = None + EndTimestamp: Optional[TimestampTypeDef] = None + +class GetServiceProfileResponseTypeDef(BaseModel): + Arn: str + Name: str + Id: str + LoRaWAN: LoRaWANGetServiceProfileInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWirelessDeviceImportTaskResponseTypeDef(BaseModel): + Id: str + Arn: str + DestinationName: str + Sidewalk: SidewalkGetStartImportInfoTypeDef + CreationTime: datetime + Status: ImportTaskStatusType + StatusReason: str + InitializedImportedDeviceCount: int + PendingImportedDeviceCount: int + OnboardedImportedDeviceCount: int + FailedImportedDeviceCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class WirelessDeviceImportTaskTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + DestinationName: Optional[str] = None + Sidewalk: Optional[SidewalkGetStartImportInfoTypeDef] = None + CreationTime: Optional[datetime] = None + Status: Optional[ImportTaskStatusType] = None + StatusReason: Optional[str] = None + InitializedImportedDeviceCount: Optional[int] = None + PendingImportedDeviceCount: Optional[int] = None + OnboardedImportedDeviceCount: Optional[int] = None + FailedImportedDeviceCount: Optional[int] = None + +class GsmNmrObjTypeDef(BaseModel): + Bsic: int + Bcch: int + RxLevel: Optional[int] = None + GlobalIdentity: Optional[GlobalIdentityTypeDef] = None + +class ImportedWirelessDeviceTypeDef(BaseModel): + Sidewalk: Optional[ImportedSidewalkDeviceTypeDef] = None + +class JoinEventConfigurationTypeDef(BaseModel): + LoRaWAN: Optional[LoRaWANJoinEventNotificationConfigurationsTypeDef] = None + WirelessDeviceIdEventTopic: Optional[EventNotificationTopicStatusType] = None + +class JoinResourceTypeEventConfigurationTypeDef(BaseModel): + LoRaWAN: Optional[LoRaWANJoinResourceTypeEventConfigurationTypeDef] = None + +class ListMulticastGroupsByFuotaTaskResponseTypeDef(BaseModel): + MulticastGroupList: List[MulticastGroupByFuotaTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMulticastGroupsResponseTypeDef(BaseModel): + MulticastGroupList: List[MulticastGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNetworkAnalyzerConfigurationsResponseTypeDef(BaseModel): + NetworkAnalyzerConfigurationList: List[NetworkAnalyzerConfigurationsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListServiceProfilesResponseTypeDef(BaseModel): + ServiceProfileList: List[ServiceProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LoRaWANDeviceMetadataTypeDef(BaseModel): + DevEui: Optional[str] = None + FPort: Optional[int] = None + DataRate: Optional[int] = None + Frequency: Optional[int] = None + Timestamp: Optional[str] = None + Gateways: Optional[List[LoRaWANGatewayMetadataTypeDef]] = None + PublicGateways: Optional[List[LoRaWANPublicGatewayMetadataTypeDef]] = None + +class LoRaWANGatewayCurrentVersionTypeDef(BaseModel): + CurrentVersion: Optional[LoRaWANGatewayVersionTypeDef] = None + +class LoRaWANUpdateGatewayTaskCreateTypeDef(BaseModel): + UpdateSignature: Optional[str] = None + SigKeyCrc: Optional[int] = None + CurrentVersion: Optional[LoRaWANGatewayVersionTypeDef] = None + UpdateVersion: Optional[LoRaWANGatewayVersionTypeDef] = None + +class LoRaWANUpdateGatewayTaskEntryTypeDef(BaseModel): + CurrentVersion: Optional[LoRaWANGatewayVersionTypeDef] = None + UpdateVersion: Optional[LoRaWANGatewayVersionTypeDef] = None + +class MulticastWirelessMetadataTypeDef(BaseModel): + LoRaWAN: Optional[LoRaWANMulticastMetadataTypeDef] = None + +class LteObjTypeDef(BaseModel): + Mcc: int + Mnc: int + EutranCid: int + Tac: Optional[int] = None + LteLocalId: Optional[LteLocalIdTypeDef] = None + LteTimingAdvance: Optional[int] = None + Rsrp: Optional[int] = None + Rsrq: Optional[float] = None + NrCapable: Optional[bool] = None + LteNmr: Optional[Sequence[LteNmrObjTypeDef]] = None + +class SummaryMetricQueryResultTypeDef(BaseModel): + QueryId: Optional[str] = None + QueryStatus: Optional[MetricQueryStatusType] = None + Error: Optional[str] = None + MetricName: Optional[MetricNameType] = None + Dimensions: Optional[List[DimensionTypeDef]] = None + AggregationPeriod: Optional[AggregationPeriodType] = None + StartTimestamp: Optional[datetime] = None + EndTimestamp: Optional[datetime] = None + Timestamps: Optional[List[datetime]] = None + Values: Optional[List[MetricQueryValueTypeDef]] = None + Unit: Optional[str] = None + +class PositionSolverConfigurationsTypeDef(BaseModel): + SemtechGnss: Optional[SemtechGnssConfigurationTypeDef] = None + +class PositionSolverDetailsTypeDef(BaseModel): + SemtechGnss: Optional[SemtechGnssDetailTypeDef] = None + +class StartSingleWirelessDeviceImportTaskRequestRequestTypeDef(BaseModel): + DestinationName: str + Sidewalk: SidewalkSingleStartImportInfoTypeDef + ClientRequestToken: Optional[str] = None + DeviceName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartWirelessDeviceImportTaskRequestRequestTypeDef(BaseModel): + DestinationName: str + Sidewalk: SidewalkStartImportInfoTypeDef + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdatePartnerAccountRequestRequestTypeDef(BaseModel): + Sidewalk: SidewalkUpdateAccountTypeDef + PartnerAccountId: str + PartnerType: Literal["Sidewalk"] + +class UpdateWirelessDeviceImportTaskRequestRequestTypeDef(BaseModel): + Id: str + Sidewalk: SidewalkUpdateImportInfoTypeDef + +class TdscdmaObjTypeDef(BaseModel): + Mcc: int + Mnc: int + UtranCid: int + Lac: Optional[int] = None + TdscdmaLocalId: Optional[TdscdmaLocalIdTypeDef] = None + TdscdmaTimingAdvance: Optional[int] = None + Rscp: Optional[int] = None + PathLoss: Optional[int] = None + TdscdmaNmr: Optional[Sequence[TdscdmaNmrObjTypeDef]] = None + +class WcdmaObjTypeDef(BaseModel): + Mcc: int + Mnc: int + UtranCid: int + Lac: Optional[int] = None + WcdmaLocalId: Optional[WcdmaLocalIdTypeDef] = None + Rscp: Optional[int] = None + PathLoss: Optional[int] = None + WcdmaNmr: Optional[Sequence[WcdmaNmrObjTypeDef]] = None + +class WirelessDeviceLogOptionOutputTypeDef(BaseModel): + Type: WirelessDeviceTypeType + LogLevel: LogLevelType + Events: Optional[List[WirelessDeviceEventLogOptionTypeDef]] = None + +class WirelessDeviceLogOptionTypeDef(BaseModel): + Type: WirelessDeviceTypeType + LogLevel: LogLevelType + Events: Optional[Sequence[WirelessDeviceEventLogOptionTypeDef]] = None + +class WirelessGatewayLogOptionOutputTypeDef(BaseModel): + Type: Literal["LoRaWAN"] + LogLevel: LogLevelType + Events: Optional[List[WirelessGatewayEventLogOptionTypeDef]] = None + +class WirelessGatewayLogOptionTypeDef(BaseModel): + Type: Literal["LoRaWAN"] + LogLevel: LogLevelType + Events: Optional[Sequence[WirelessGatewayEventLogOptionTypeDef]] = None + +class GetWirelessGatewayResponseTypeDef(BaseModel): + Name: str + Id: str + Description: str + LoRaWAN: LoRaWANGatewayOutputTypeDef + Arn: str + ThingName: str + ThingArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class WirelessGatewayStatisticsTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LoRaWAN: Optional[LoRaWANGatewayOutputTypeDef] = None + LastUplinkReceivedAt: Optional[str] = None + +class CreateWirelessGatewayRequestRequestTypeDef(BaseModel): + LoRaWAN: LoRaWANGatewayTypeDef + Name: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientRequestToken: Optional[str] = None + +class WirelessDeviceStatisticsTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Type: Optional[WirelessDeviceTypeType] = None + Name: Optional[str] = None + DestinationName: Optional[str] = None + LastUplinkReceivedAt: Optional[str] = None + LoRaWAN: Optional[LoRaWANListDeviceTypeDef] = None + Sidewalk: Optional[SidewalkListDeviceTypeDef] = None + FuotaDeviceStatus: Optional[FuotaDeviceStatusType] = None + MulticastDeviceStatus: Optional[str] = None + McGroupId: Optional[int] = None + +class GetDeviceProfileResponseTypeDef(BaseModel): + Arn: str + Name: str + Id: str + LoRaWAN: LoRaWANDeviceProfileOutputTypeDef + Sidewalk: SidewalkGetDeviceProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LoRaWANDeviceOutputTypeDef(BaseModel): + DevEui: Optional[str] = None + DeviceProfileId: Optional[str] = None + ServiceProfileId: Optional[str] = None + OtaaV1_1: Optional[OtaaV11TypeDef] = None + OtaaV1_0_x: Optional[OtaaV10XTypeDef] = None + AbpV1_1: Optional[AbpV11TypeDef] = None + AbpV1_0_x: Optional[AbpV10XTypeDef] = None + FPorts: Optional[FPortsOutputTypeDef] = None + +class LoRaWANDeviceTypeDef(BaseModel): + DevEui: Optional[str] = None + DeviceProfileId: Optional[str] = None + ServiceProfileId: Optional[str] = None + OtaaV1_1: Optional[OtaaV11TypeDef] = None + OtaaV1_0_x: Optional[OtaaV10XTypeDef] = None + AbpV1_1: Optional[AbpV11TypeDef] = None + AbpV1_0_x: Optional[AbpV10XTypeDef] = None + FPorts: Optional[FPortsTypeDef] = None + +class LoRaWANUpdateDeviceTypeDef(BaseModel): + DeviceProfileId: Optional[str] = None + ServiceProfileId: Optional[str] = None + AbpV1_1: Optional[UpdateAbpV11TypeDef] = None + AbpV1_0_x: Optional[UpdateAbpV10XTypeDef] = None + FPorts: Optional[UpdateFPortsTypeDef] = None + +class LoRaWANSendDataToDeviceOutputTypeDef(BaseModel): + FPort: Optional[int] = None + ParticipatingGateways: Optional[ParticipatingGatewaysOutputTypeDef] = None + +class LoRaWANSendDataToDeviceTypeDef(BaseModel): + FPort: Optional[int] = None + ParticipatingGateways: Optional[ParticipatingGatewaysTypeDef] = None + +class StartMulticastGroupSessionRequestRequestTypeDef(BaseModel): + Id: str + LoRaWAN: LoRaWANMulticastSessionTypeDef + +class StartFuotaTaskRequestRequestTypeDef(BaseModel): + Id: str + LoRaWAN: Optional[LoRaWANStartFuotaTaskTypeDef] = None + +class GetMetricsRequestRequestTypeDef(BaseModel): + SummaryMetricQueries: Optional[Sequence[SummaryMetricQueryTypeDef]] = None + +class ListWirelessDeviceImportTasksResponseTypeDef(BaseModel): + WirelessDeviceImportTaskList: List[WirelessDeviceImportTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GsmObjTypeDef(BaseModel): + Mcc: int + Mnc: int + Lac: int + GeranCid: int + GsmLocalId: Optional[GsmLocalIdTypeDef] = None + GsmTimingAdvance: Optional[int] = None + RxLevel: Optional[int] = None + GsmNmr: Optional[Sequence[GsmNmrObjTypeDef]] = None + +class ListDevicesForWirelessDeviceImportTaskResponseTypeDef(BaseModel): + DestinationName: str + ImportedWirelessDeviceList: List[ImportedWirelessDeviceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EventNotificationItemConfigurationsTypeDef(BaseModel): + DeviceRegistrationState: Optional[DeviceRegistrationStateEventConfigurationTypeDef] = None + Proximity: Optional[ProximityEventConfigurationTypeDef] = None + Join: Optional[JoinEventConfigurationTypeDef] = None + ConnectionStatus: Optional[ConnectionStatusEventConfigurationTypeDef] = None + MessageDeliveryStatus: Optional[MessageDeliveryStatusEventConfigurationTypeDef] = None + +class GetResourceEventConfigurationResponseTypeDef(BaseModel): + DeviceRegistrationState: DeviceRegistrationStateEventConfigurationTypeDef + Proximity: ProximityEventConfigurationTypeDef + Join: JoinEventConfigurationTypeDef + ConnectionStatus: ConnectionStatusEventConfigurationTypeDef + MessageDeliveryStatus: MessageDeliveryStatusEventConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResourceEventConfigurationRequestRequestTypeDef(BaseModel): + Identifier: str + IdentifierType: IdentifierTypeType + PartnerType: Optional[Literal["Sidewalk"]] = None + DeviceRegistrationState: Optional[DeviceRegistrationStateEventConfigurationTypeDef] = None + Proximity: Optional[ProximityEventConfigurationTypeDef] = None + Join: Optional[JoinEventConfigurationTypeDef] = None + ConnectionStatus: Optional[ConnectionStatusEventConfigurationTypeDef] = None + MessageDeliveryStatus: Optional[MessageDeliveryStatusEventConfigurationTypeDef] = None + +class GetEventConfigurationByResourceTypesResponseTypeDef(BaseModel): + DeviceRegistrationState: DeviceRegistrationStateResourceTypeEventConfigurationTypeDef + Proximity: ProximityResourceTypeEventConfigurationTypeDef + Join: JoinResourceTypeEventConfigurationTypeDef + ConnectionStatus: ConnectionStatusResourceTypeEventConfigurationTypeDef + MessageDeliveryStatus: MessageDeliveryStatusResourceTypeEventConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventConfigurationByResourceTypesRequestRequestTypeDef(BaseModel): + DeviceRegistrationState: Optional[ DeviceRegistrationStateResourceTypeEventConfigurationTypeDef ] = None + Proximity: Optional[ProximityResourceTypeEventConfigurationTypeDef] = None + Join: Optional[JoinResourceTypeEventConfigurationTypeDef] = None + ConnectionStatus: Optional[ConnectionStatusResourceTypeEventConfigurationTypeDef] = None + MessageDeliveryStatus: Optional[ MessageDeliveryStatusResourceTypeEventConfigurationTypeDef ] = None + +class GetWirelessDeviceStatisticsResponseTypeDef(BaseModel): + WirelessDeviceId: str + LastUplinkReceivedAt: str + LoRaWAN: LoRaWANDeviceMetadataTypeDef + Sidewalk: SidewalkDeviceMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWirelessGatewayFirmwareInformationResponseTypeDef(BaseModel): + LoRaWAN: LoRaWANGatewayCurrentVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWirelessGatewayTaskCreateTypeDef(BaseModel): + UpdateDataSource: Optional[str] = None + UpdateDataRole: Optional[str] = None + LoRaWAN: Optional[LoRaWANUpdateGatewayTaskCreateTypeDef] = None + +class UpdateWirelessGatewayTaskEntryTypeDef(BaseModel): + Id: Optional[str] = None + LoRaWAN: Optional[LoRaWANUpdateGatewayTaskEntryTypeDef] = None + Arn: Optional[str] = None + +class SendDataToMulticastGroupRequestRequestTypeDef(BaseModel): + Id: str + PayloadData: str + WirelessMetadata: MulticastWirelessMetadataTypeDef + +class GetMetricsResponseTypeDef(BaseModel): + SummaryMetricQueryResults: List[SummaryMetricQueryResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutPositionConfigurationRequestRequestTypeDef(BaseModel): + ResourceIdentifier: str + ResourceType: PositionResourceTypeType + Solvers: Optional[PositionSolverConfigurationsTypeDef] = None + Destination: Optional[str] = None + +class GetPositionConfigurationResponseTypeDef(BaseModel): + Solvers: PositionSolverDetailsTypeDef + Destination: str + ResponseMetadata: ResponseMetadataTypeDef + +class PositionConfigurationItemTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + ResourceType: Optional[PositionResourceTypeType] = None + Solvers: Optional[PositionSolverDetailsTypeDef] = None + Destination: Optional[str] = None + +class GetLogLevelsByResourceTypesResponseTypeDef(BaseModel): + DefaultLogLevel: LogLevelType + WirelessGatewayLogOptions: List[WirelessGatewayLogOptionOutputTypeDef] + WirelessDeviceLogOptions: List[WirelessDeviceLogOptionOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWirelessGatewaysResponseTypeDef(BaseModel): + WirelessGatewayList: List[WirelessGatewayStatisticsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListWirelessDevicesResponseTypeDef(BaseModel): + WirelessDeviceList: List[WirelessDeviceStatisticsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetWirelessDeviceResponseTypeDef(BaseModel): + Type: WirelessDeviceTypeType + Name: str + Description: str + DestinationName: str + Id: str + Arn: str + ThingName: str + ThingArn: str + LoRaWAN: LoRaWANDeviceOutputTypeDef + Sidewalk: SidewalkDeviceTypeDef + Positioning: PositioningConfigStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWirelessDeviceRequestRequestTypeDef(BaseModel): + Type: WirelessDeviceTypeType + DestinationName: str + Name: Optional[str] = None + Description: Optional[str] = None + ClientRequestToken: Optional[str] = None + LoRaWAN: Optional[LoRaWANDeviceTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Positioning: Optional[PositioningConfigStatusType] = None + Sidewalk: Optional[SidewalkCreateWirelessDeviceTypeDef] = None + +class UpdateWirelessDeviceRequestRequestTypeDef(BaseModel): + Id: str + DestinationName: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LoRaWAN: Optional[LoRaWANUpdateDeviceTypeDef] = None + Positioning: Optional[PositioningConfigStatusType] = None + +class DownlinkQueueMessageTypeDef(BaseModel): + MessageId: Optional[str] = None + TransmitMode: Optional[int] = None + ReceivedAt: Optional[str] = None + LoRaWAN: Optional[LoRaWANSendDataToDeviceOutputTypeDef] = None + +class WirelessMetadataTypeDef(BaseModel): + LoRaWAN: Optional[LoRaWANSendDataToDeviceTypeDef] = None + Sidewalk: Optional[SidewalkSendDataToDeviceTypeDef] = None + +class CellTowersTypeDef(BaseModel): + Gsm: Optional[Sequence[GsmObjTypeDef]] = None + Wcdma: Optional[Sequence[WcdmaObjTypeDef]] = None + Tdscdma: Optional[Sequence[TdscdmaObjTypeDef]] = None + Lte: Optional[Sequence[LteObjTypeDef]] = None + Cdma: Optional[Sequence[CdmaObjTypeDef]] = None + +class EventConfigurationItemTypeDef(BaseModel): + Identifier: Optional[str] = None + IdentifierType: Optional[IdentifierTypeType] = None + PartnerType: Optional[Literal["Sidewalk"]] = None + Events: Optional[EventNotificationItemConfigurationsTypeDef] = None + +class CreateWirelessGatewayTaskDefinitionRequestRequestTypeDef(BaseModel): + AutoCreateTasks: bool + Name: Optional[str] = None + Update: Optional[UpdateWirelessGatewayTaskCreateTypeDef] = None + ClientRequestToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetWirelessGatewayTaskDefinitionResponseTypeDef(BaseModel): + AutoCreateTasks: bool + Name: str + Update: UpdateWirelessGatewayTaskCreateTypeDef + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWirelessGatewayTaskDefinitionsResponseTypeDef(BaseModel): + TaskDefinitions: List[UpdateWirelessGatewayTaskEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPositionConfigurationsResponseTypeDef(BaseModel): + PositionConfigurationList: List[PositionConfigurationItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateLogLevelsByResourceTypesRequestRequestTypeDef(BaseModel): + DefaultLogLevel: Optional[LogLevelType] = None + WirelessDeviceLogOptions: Optional[Sequence[WirelessDeviceLogOptionUnionTypeDef]] = None + WirelessGatewayLogOptions: Optional[Sequence[WirelessGatewayLogOptionUnionTypeDef]] = None + +class ListQueuedMessagesResponseTypeDef(BaseModel): + DownlinkQueueMessagesList: List[DownlinkQueueMessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SendDataToWirelessDeviceRequestRequestTypeDef(BaseModel): + Id: str + TransmitMode: int + PayloadData: str + WirelessMetadata: Optional[WirelessMetadataTypeDef] = None + +class GetPositionEstimateRequestRequestTypeDef(BaseModel): + WiFiAccessPoints: Optional[Sequence[WiFiAccessPointTypeDef]] = None + CellTowers: Optional[CellTowersTypeDef] = None + Ip: Optional[IpTypeDef] = None + Gnss: Optional[GnssTypeDef] = None + Timestamp: Optional[TimestampTypeDef] = None + +class ListEventConfigurationsResponseTypeDef(BaseModel): + EventConfigurationsList: List[EventConfigurationItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/iotwireless_constants.py b/aws_resource_validator/pydantic_models/iotwireless_constants.py new file mode 100644 index 00000000..6b618b02 --- /dev/null +++ b/aws_resource_validator/pydantic_models/iotwireless_constants.py @@ -0,0 +1,516 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregationPeriodType = Literal["OneDay", "OneHour", "OneWeek"] +ApplicationConfigTypeType = Literal["SemtechGeolocation"] +BatteryLevelType = Literal["critical", "low", "normal"] +ConnectionStatusType = Literal["Connected", "Disconnected"] +DeviceProfileTypeType = Literal["LoRaWAN", "Sidewalk"] +DeviceStateType = Literal["Provisioned", "RegisteredNotSeen", "RegisteredReachable", "RegisteredUnreachable"] +DimensionNameType = Literal["DeviceId", "GatewayId"] +DlClassType = Literal["ClassB", "ClassC"] +DownlinkModeType = Literal["CONCURRENT", "SEQUENTIAL", "USING_UPLINK_GATEWAY"] +EventNotificationPartnerTypeType = Literal["Sidewalk"] +EventNotificationResourceTypeType = Literal["SidewalkAccount", "WirelessDevice", "WirelessGateway"] +EventNotificationTopicStatusType = Literal["Disabled", "Enabled"] +EventType = Literal["ack", "discovered", "lost", "nack", "passthrough"] +ExpressionTypeType = Literal["MqttTopic", "RuleName"] +FuotaDeviceStatusType = Literal["Device_exist_in_conflict_fuota_task", + "FragAlgo_unsupported", + "FragIndex_unsupported", + "Initial", + "MICError", + "MemoryError", + "MissingFrag", + "Not_enough_memory", + "Package_Not_Supported", + "SessionCnt_replay", + "Successful", + "Wrong_descriptor",] +FuotaTaskStatusType = Literal["Delete_Waiting", "FuotaDone", "FuotaSession_Waiting", "In_FuotaSession", "Pending"] +IdentifierTypeType = Literal["DevEui", "GatewayEui", "PartnerAccountId", "WirelessDeviceId", "WirelessGatewayId"] +ImportTaskStatusType = Literal["COMPLETE", "DELETING", "FAILED", "INITIALIZED", "INITIALIZING", "PENDING"] +LogLevelType = Literal["DISABLED", "ERROR", "INFO"] +MessageTypeType = Literal["CUSTOM_COMMAND_ID_GET", + "CUSTOM_COMMAND_ID_NOTIFY", + "CUSTOM_COMMAND_ID_RESP", + "CUSTOM_COMMAND_ID_SET",] +MetricNameType = Literal["AwsAccountActiveDeviceCount", + "AwsAccountActiveGatewayCount", + "AwsAccountDeviceCount", + "AwsAccountDownlinkCount", + "AwsAccountGatewayCount", + "AwsAccountJoinAcceptCount", + "AwsAccountJoinRequestCount", + "AwsAccountRoamingDownlinkCount", + "AwsAccountRoamingUplinkCount", + "AwsAccountUplinkCount", + "AwsAccountUplinkLostCount", + "AwsAccountUplinkLostRate", + "DeviceDownlinkCount", + "DeviceJoinAcceptCount", + "DeviceJoinRequestCount", + "DeviceRSSI", + "DeviceRoamingDownlinkCount", + "DeviceRoamingRSSI", + "DeviceRoamingSNR", + "DeviceRoamingUplinkCount", + "DeviceSNR", + "DeviceUplinkCount", + "DeviceUplinkLostCount", + "DeviceUplinkLostRate", + "GatewayDownTime", + "GatewayDownlinkCount", + "GatewayJoinAcceptCount", + "GatewayJoinRequestCount", + "GatewayRSSI", + "GatewaySNR", + "GatewayUpTime", + "GatewayUplinkCount",] +MetricQueryStatusType = Literal["Failed", "Succeeded"] +MulticastFrameInfoType = Literal["DISABLED", "ENABLED"] +OnboardStatusType = Literal["FAILED", "INITIALIZED", "ONBOARDED", "PENDING"] +PartnerTypeType = Literal["Sidewalk"] +PositionConfigurationFecType = Literal["NONE", "ROSE"] +PositionConfigurationStatusType = Literal["Disabled", "Enabled"] +PositionResourceTypeType = Literal["WirelessDevice", "WirelessGateway"] +PositionSolverProviderType = Literal["Semtech"] +PositionSolverTypeType = Literal["GNSS"] +PositioningConfigStatusType = Literal["Disabled", "Enabled"] +SigningAlgType = Literal["Ed25519", "P256r1"] +SummaryMetricConfigurationStatusType = Literal["Disabled", "Enabled"] +SupportedRfRegionType = Literal["AS923-1", + "AS923-2", + "AS923-3", + "AS923-4", + "AU915", + "CN470", + "CN779", + "EU433", + "EU868", + "IN865", + "KR920", + "RU864", + "US915",] +WirelessDeviceEventType = Literal["Downlink_Data", "Join", "Registration", "Rejoin", "Uplink_Data"] +WirelessDeviceFrameInfoType = Literal["DISABLED", "ENABLED"] +WirelessDeviceIdTypeType = Literal["DevEui", "SidewalkManufacturingSn", "ThingName", "WirelessDeviceId"] +WirelessDeviceSidewalkStatusType = Literal["ACTIVATED", "PROVISIONED", "REGISTERED", "UNKNOWN"] +WirelessDeviceTypeType = Literal["LoRaWAN", "Sidewalk"] +WirelessGatewayEventType = Literal["CUPS_Request", "Certificate"] +WirelessGatewayIdTypeType = Literal["GatewayEui", "ThingName", "WirelessGatewayId"] +WirelessGatewayServiceTypeType = Literal["CUPS", "LNS"] +WirelessGatewayTaskDefinitionTypeType = Literal["UPDATE"] +WirelessGatewayTaskStatusType = Literal["COMPLETED", "FAILED", "FIRST_RETRY", "IN_PROGRESS", "PENDING", "SECOND_RETRY"] +WirelessGatewayTypeType = Literal["LoRaWAN"] +IoTWirelessServiceName = Literal["iotwireless"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "sa-east-1", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +LoRaWANDeviceProfileUnionTypeDef = Union[ 'LoRaWANDeviceProfileTypeDef', 'LoRaWANDeviceProfileOutputTypeDef' ] +LoRaWANGatewayUnionTypeDef = Union['LoRaWANGatewayTypeDef', 'LoRaWANGatewayOutputTypeDef'] +LoRaWANMulticastSessionUnionTypeDef = Union[ 'LoRaWANMulticastSessionTypeDef', 'LoRaWANMulticastSessionOutputTypeDef' ] +WirelessDeviceLogOptionUnionTypeDef = Union[ 'WirelessDeviceLogOptionTypeDef', 'WirelessDeviceLogOptionOutputTypeDef' ] +WirelessGatewayLogOptionUnionTypeDef = Union[ 'WirelessGatewayLogOptionTypeDef', 'WirelessGatewayLogOptionOutputTypeDef' ] +LoRaWANDeviceUnionTypeDef = Union['LoRaWANDeviceTypeDef', 'LoRaWANDeviceOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/ivs_classes.py b/aws_resource_validator/pydantic_models/ivs_classes.py new file mode 100644 index 00000000..60df44b4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ivs_classes.py @@ -0,0 +1,502 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ivs_constants import * + +class AudioConfigurationTypeDef(BaseModel): + channels: Optional[int] = None + codec: Optional[str] = None + sampleRate: Optional[int] = None + targetBitrate: Optional[int] = None + +class BatchErrorTypeDef(BaseModel): + arn: Optional[str] = None + code: Optional[str] = None + message: Optional[str] = None + +class BatchGetChannelRequestRequestTypeDef(BaseModel): + arns: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchGetStreamKeyRequestRequestTypeDef(BaseModel): + arns: Sequence[str] + +class StreamKeyTypeDef(BaseModel): + arn: Optional[str] = None + channelArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + value: Optional[str] = None + +class BatchStartViewerSessionRevocationErrorTypeDef(BaseModel): + channelArn: str + viewerId: str + code: Optional[str] = None + message: Optional[str] = None + +class BatchStartViewerSessionRevocationViewerSessionTypeDef(BaseModel): + channelArn: str + viewerId: str + viewerSessionVersionsLessThanOrEqualTo: Optional[int] = None + +class ChannelSummaryTypeDef(BaseModel): + arn: Optional[str] = None + authorized: Optional[bool] = None + insecureIngest: Optional[bool] = None + latencyMode: Optional[ChannelLatencyModeType] = None + name: Optional[str] = None + playbackRestrictionPolicyArn: Optional[str] = None + preset: Optional[TranscodePresetType] = None + recordingConfigurationArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + type: Optional[ChannelTypeType] = None + +class SrtTypeDef(BaseModel): + endpoint: Optional[str] = None + passphrase: Optional[str] = None + +class CreateChannelRequestRequestTypeDef(BaseModel): + authorized: Optional[bool] = None + insecureIngest: Optional[bool] = None + latencyMode: Optional[ChannelLatencyModeType] = None + name: Optional[str] = None + playbackRestrictionPolicyArn: Optional[str] = None + preset: Optional[TranscodePresetType] = None + recordingConfigurationArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + type: Optional[ChannelTypeType] = None + +class CreatePlaybackRestrictionPolicyRequestRequestTypeDef(BaseModel): + allowedCountries: Optional[Sequence[str]] = None + allowedOrigins: Optional[Sequence[str]] = None + enableStrictOriginEnforcement: Optional[bool] = None + name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class PlaybackRestrictionPolicyTypeDef(BaseModel): + allowedCountries: List[str] + allowedOrigins: List[str] + arn: str + enableStrictOriginEnforcement: Optional[bool] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class RenditionConfigurationTypeDef(BaseModel): + renditionSelection: Optional[RenditionConfigurationRenditionSelectionType] = None + renditions: Optional[Sequence[RenditionConfigurationRenditionType]] = None + +class ThumbnailConfigurationTypeDef(BaseModel): + recordingMode: Optional[RecordingModeType] = None + resolution: Optional[ThumbnailConfigurationResolutionType] = None + storage: Optional[Sequence[ThumbnailConfigurationStorageType]] = None + targetIntervalSeconds: Optional[int] = None + +class CreateStreamKeyRequestRequestTypeDef(BaseModel): + channelArn: str + tags: Optional[Mapping[str, str]] = None + +class DeleteChannelRequestRequestTypeDef(BaseModel): + arn: str + +class DeletePlaybackKeyPairRequestRequestTypeDef(BaseModel): + arn: str + +class DeletePlaybackRestrictionPolicyRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteRecordingConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteStreamKeyRequestRequestTypeDef(BaseModel): + arn: str + +class S3DestinationConfigurationTypeDef(BaseModel): + bucketName: str + +class GetChannelRequestRequestTypeDef(BaseModel): + arn: str + +class GetPlaybackKeyPairRequestRequestTypeDef(BaseModel): + arn: str + +class PlaybackKeyPairTypeDef(BaseModel): + arn: Optional[str] = None + fingerprint: Optional[str] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class GetPlaybackRestrictionPolicyRequestRequestTypeDef(BaseModel): + arn: str + +class GetRecordingConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class GetStreamKeyRequestRequestTypeDef(BaseModel): + arn: str + +class GetStreamRequestRequestTypeDef(BaseModel): + channelArn: str + +class StreamTypeDef(BaseModel): + channelArn: Optional[str] = None + health: Optional[StreamHealthType] = None + playbackUrl: Optional[str] = None + startTime: Optional[datetime] = None + state: Optional[StreamStateType] = None + streamId: Optional[str] = None + viewerCount: Optional[int] = None + +class GetStreamSessionRequestRequestTypeDef(BaseModel): + channelArn: str + streamId: Optional[str] = None + +class ImportPlaybackKeyPairRequestRequestTypeDef(BaseModel): + publicKeyMaterial: str + name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class VideoConfigurationTypeDef(BaseModel): + avcLevel: Optional[str] = None + avcProfile: Optional[str] = None + codec: Optional[str] = None + encoder: Optional[str] = None + targetBitrate: Optional[int] = None + targetFramerate: Optional[int] = None + videoHeight: Optional[int] = None + videoWidth: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + filterByName: Optional[str] = None + filterByPlaybackRestrictionPolicyArn: Optional[str] = None + filterByRecordingConfigurationArn: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListPlaybackKeyPairsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PlaybackKeyPairSummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListPlaybackRestrictionPoliciesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PlaybackRestrictionPolicySummaryTypeDef(BaseModel): + allowedCountries: List[str] + allowedOrigins: List[str] + arn: str + enableStrictOriginEnforcement: Optional[bool] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListRecordingConfigurationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListStreamKeysRequestRequestTypeDef(BaseModel): + channelArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StreamKeySummaryTypeDef(BaseModel): + arn: Optional[str] = None + channelArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListStreamSessionsRequestRequestTypeDef(BaseModel): + channelArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StreamSessionSummaryTypeDef(BaseModel): + endTime: Optional[datetime] = None + hasErrorEvent: Optional[bool] = None + startTime: Optional[datetime] = None + streamId: Optional[str] = None + +class StreamFiltersTypeDef(BaseModel): + health: Optional[StreamHealthType] = None + +class StreamSummaryTypeDef(BaseModel): + channelArn: Optional[str] = None + health: Optional[StreamHealthType] = None + startTime: Optional[datetime] = None + state: Optional[StreamStateType] = None + streamId: Optional[str] = None + viewerCount: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PutMetadataRequestRequestTypeDef(BaseModel): + channelArn: str + metadata: str + +class RenditionConfigurationOutputTypeDef(BaseModel): + renditionSelection: Optional[RenditionConfigurationRenditionSelectionType] = None + renditions: Optional[List[RenditionConfigurationRenditionType]] = None + +class ThumbnailConfigurationOutputTypeDef(BaseModel): + recordingMode: Optional[RecordingModeType] = None + resolution: Optional[ThumbnailConfigurationResolutionType] = None + storage: Optional[List[ThumbnailConfigurationStorageType]] = None + targetIntervalSeconds: Optional[int] = None + +class StartViewerSessionRevocationRequestRequestTypeDef(BaseModel): + channelArn: str + viewerId: str + viewerSessionVersionsLessThanOrEqualTo: Optional[int] = None + +class StopStreamRequestRequestTypeDef(BaseModel): + channelArn: str + +class StreamEventTypeDef(BaseModel): + eventTime: Optional[datetime] = None + name: Optional[str] = None + type: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateChannelRequestRequestTypeDef(BaseModel): + arn: str + authorized: Optional[bool] = None + insecureIngest: Optional[bool] = None + latencyMode: Optional[ChannelLatencyModeType] = None + name: Optional[str] = None + playbackRestrictionPolicyArn: Optional[str] = None + preset: Optional[TranscodePresetType] = None + recordingConfigurationArn: Optional[str] = None + type: Optional[ChannelTypeType] = None + +class UpdatePlaybackRestrictionPolicyRequestRequestTypeDef(BaseModel): + arn: str + allowedCountries: Optional[Sequence[str]] = None + allowedOrigins: Optional[Sequence[str]] = None + enableStrictOriginEnforcement: Optional[bool] = None + name: Optional[str] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetStreamKeyResponseTypeDef(BaseModel): + errors: List[BatchErrorTypeDef] + streamKeys: List[StreamKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamKeyResponseTypeDef(BaseModel): + streamKey: StreamKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStreamKeyResponseTypeDef(BaseModel): + streamKey: StreamKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchStartViewerSessionRevocationResponseTypeDef(BaseModel): + errors: List[BatchStartViewerSessionRevocationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchStartViewerSessionRevocationRequestRequestTypeDef(BaseModel): + viewerSessions: Sequence[BatchStartViewerSessionRevocationViewerSessionTypeDef] + +class ListChannelsResponseTypeDef(BaseModel): + channels: List[ChannelSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelTypeDef(BaseModel): + arn: Optional[str] = None + authorized: Optional[bool] = None + ingestEndpoint: Optional[str] = None + insecureIngest: Optional[bool] = None + latencyMode: Optional[ChannelLatencyModeType] = None + name: Optional[str] = None + playbackRestrictionPolicyArn: Optional[str] = None + playbackUrl: Optional[str] = None + preset: Optional[TranscodePresetType] = None + recordingConfigurationArn: Optional[str] = None + srt: Optional[SrtTypeDef] = None + tags: Optional[Dict[str, str]] = None + type: Optional[ChannelTypeType] = None + +class CreatePlaybackRestrictionPolicyResponseTypeDef(BaseModel): + playbackRestrictionPolicy: PlaybackRestrictionPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPlaybackRestrictionPolicyResponseTypeDef(BaseModel): + playbackRestrictionPolicy: PlaybackRestrictionPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePlaybackRestrictionPolicyResponseTypeDef(BaseModel): + playbackRestrictionPolicy: PlaybackRestrictionPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationConfigurationTypeDef(BaseModel): + s3: Optional[S3DestinationConfigurationTypeDef] = None + +class GetPlaybackKeyPairResponseTypeDef(BaseModel): + keyPair: PlaybackKeyPairTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportPlaybackKeyPairResponseTypeDef(BaseModel): + keyPair: PlaybackKeyPairTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStreamResponseTypeDef(BaseModel): + stream: StreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IngestConfigurationTypeDef(BaseModel): + audio: Optional[AudioConfigurationTypeDef] = None + video: Optional[VideoConfigurationTypeDef] = None + +class ListChannelsRequestListChannelsPaginateTypeDef(BaseModel): + filterByName: Optional[str] = None + filterByPlaybackRestrictionPolicyArn: Optional[str] = None + filterByRecordingConfigurationArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlaybackKeyPairsRequestListPlaybackKeyPairsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecordingConfigurationsRequestListRecordingConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamKeysRequestListStreamKeysPaginateTypeDef(BaseModel): + channelArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlaybackKeyPairsResponseTypeDef(BaseModel): + keyPairs: List[PlaybackKeyPairSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPlaybackRestrictionPoliciesResponseTypeDef(BaseModel): + nextToken: str + playbackRestrictionPolicies: List[PlaybackRestrictionPolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamKeysResponseTypeDef(BaseModel): + nextToken: str + streamKeys: List[StreamKeySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamSessionsResponseTypeDef(BaseModel): + nextToken: str + streamSessions: List[StreamSessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamsRequestListStreamsPaginateTypeDef(BaseModel): + filterBy: Optional[StreamFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamsRequestRequestTypeDef(BaseModel): + filterBy: Optional[StreamFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListStreamsResponseTypeDef(BaseModel): + nextToken: str + streams: List[StreamSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetChannelResponseTypeDef(BaseModel): + channels: List[ChannelTypeDef] + errors: List[BatchErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelResponseTypeDef(BaseModel): + channel: ChannelTypeDef + streamKey: StreamKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelResponseTypeDef(BaseModel): + channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecordingConfigurationRequestRequestTypeDef(BaseModel): + destinationConfiguration: DestinationConfigurationTypeDef + name: Optional[str] = None + recordingReconnectWindowSeconds: Optional[int] = None + renditionConfiguration: Optional[RenditionConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + thumbnailConfiguration: Optional[ThumbnailConfigurationTypeDef] = None + +class RecordingConfigurationSummaryTypeDef(BaseModel): + arn: str + destinationConfiguration: DestinationConfigurationTypeDef + state: RecordingConfigurationStateType + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class RecordingConfigurationTypeDef(BaseModel): + arn: str + destinationConfiguration: DestinationConfigurationTypeDef + state: RecordingConfigurationStateType + name: Optional[str] = None + recordingReconnectWindowSeconds: Optional[int] = None + renditionConfiguration: Optional[RenditionConfigurationOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + thumbnailConfiguration: Optional[ThumbnailConfigurationOutputTypeDef] = None + +class ListRecordingConfigurationsResponseTypeDef(BaseModel): + nextToken: str + recordingConfigurations: List[RecordingConfigurationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecordingConfigurationResponseTypeDef(BaseModel): + recordingConfiguration: RecordingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecordingConfigurationResponseTypeDef(BaseModel): + recordingConfiguration: RecordingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StreamSessionTypeDef(BaseModel): + channel: Optional[ChannelTypeDef] = None + endTime: Optional[datetime] = None + ingestConfiguration: Optional[IngestConfigurationTypeDef] = None + recordingConfiguration: Optional[RecordingConfigurationTypeDef] = None + startTime: Optional[datetime] = None + streamId: Optional[str] = None + truncatedEvents: Optional[List[StreamEventTypeDef]] = None + +class GetStreamSessionResponseTypeDef(BaseModel): + streamSession: StreamSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ivs_constants.py b/aws_resource_validator/pydantic_models/ivs_constants.py new file mode 100644 index 00000000..fd8671c1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ivs_constants.py @@ -0,0 +1,427 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChannelLatencyModeType = Literal["LOW", "NORMAL"] +ChannelTypeType = Literal["ADVANCED_HD", "ADVANCED_SD", "BASIC", "STANDARD"] +ListChannelsPaginatorName = Literal["list_channels"] +ListPlaybackKeyPairsPaginatorName = Literal["list_playback_key_pairs"] +ListRecordingConfigurationsPaginatorName = Literal["list_recording_configurations"] +ListStreamKeysPaginatorName = Literal["list_stream_keys"] +ListStreamsPaginatorName = Literal["list_streams"] +RecordingConfigurationStateType = Literal["ACTIVE", "CREATE_FAILED", "CREATING"] +RecordingModeType = Literal["DISABLED", "INTERVAL"] +RenditionConfigurationRenditionSelectionType = Literal["ALL", "CUSTOM", "NONE"] +RenditionConfigurationRenditionType = Literal["FULL_HD", "HD", "LOWEST_RESOLUTION", "SD"] +StreamHealthType = Literal["HEALTHY", "STARVING", "UNKNOWN"] +StreamStateType = Literal["LIVE", "OFFLINE"] +ThumbnailConfigurationResolutionType = Literal["FULL_HD", "HD", "LOWEST_RESOLUTION", "SD"] +ThumbnailConfigurationStorageType = Literal["LATEST", "SEQUENTIAL"] +TranscodePresetType = Literal["CONSTRAINED_BANDWIDTH_DELIVERY", "HIGHER_BANDWIDTH_DELIVERY"] +IVSServiceName = Literal["ivs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_channels", + "list_playback_key_pairs", + "list_recording_configurations", + "list_stream_keys", + "list_streams",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-west-2",] +RenditionConfigurationUnionTypeDef = Union[ 'RenditionConfigurationTypeDef', 'RenditionConfigurationOutputTypeDef' ] +ThumbnailConfigurationUnionTypeDef = Union[ 'ThumbnailConfigurationTypeDef', 'ThumbnailConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/ivs_realtime_classes.py b/aws_resource_validator/pydantic_models/ivs_realtime_classes.py new file mode 100644 index 00000000..e8577514 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ivs_realtime_classes.py @@ -0,0 +1,484 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ivs_realtime_constants import * + +class AutoParticipantRecordingConfigurationOutputTypeDef(BaseModel): + storageConfigurationArn: str + mediaTypes: Optional[List[ParticipantRecordingMediaTypeType]] = None + +class AutoParticipantRecordingConfigurationTypeDef(BaseModel): + storageConfigurationArn: str + mediaTypes: Optional[Sequence[ParticipantRecordingMediaTypeType]] = None + +class ChannelDestinationConfigurationTypeDef(BaseModel): + channelArn: str + encoderConfigurationArn: Optional[str] = None + +class DestinationSummaryTypeDef(BaseModel): + id: str + state: DestinationStateType + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class VideoTypeDef(BaseModel): + width: Optional[int] = None + height: Optional[int] = None + framerate: Optional[float] = None + bitrate: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateParticipantTokenRequestRequestTypeDef(BaseModel): + stageArn: str + duration: Optional[int] = None + userId: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + capabilities: Optional[Sequence[ParticipantTokenCapabilityType]] = None + +class ParticipantTokenTypeDef(BaseModel): + participantId: Optional[str] = None + token: Optional[str] = None + userId: Optional[str] = None + attributes: Optional[Dict[str, str]] = None + duration: Optional[int] = None + capabilities: Optional[List[ParticipantTokenCapabilityType]] = None + expirationTime: Optional[datetime] = None + +class ParticipantTokenConfigurationTypeDef(BaseModel): + duration: Optional[int] = None + userId: Optional[str] = None + attributes: Optional[Mapping[str, str]] = None + capabilities: Optional[Sequence[ParticipantTokenCapabilityType]] = None + +class S3StorageConfigurationTypeDef(BaseModel): + bucketName: str + +class DeleteEncoderConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class DeletePublicKeyRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteStageRequestRequestTypeDef(BaseModel): + arn: str + +class DeleteStorageConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class S3DetailTypeDef(BaseModel): + recordingPrefix: str + +class DisconnectParticipantRequestRequestTypeDef(BaseModel): + stageArn: str + participantId: str + reason: Optional[str] = None + +class EncoderConfigurationSummaryTypeDef(BaseModel): + arn: str + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class EventTypeDef(BaseModel): + name: Optional[EventNameType] = None + participantId: Optional[str] = None + eventTime: Optional[datetime] = None + remoteParticipantId: Optional[str] = None + errorCode: Optional[EventErrorCodeType] = None + +class GetCompositionRequestRequestTypeDef(BaseModel): + arn: str + +class GetEncoderConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class GetParticipantRequestRequestTypeDef(BaseModel): + stageArn: str + sessionId: str + participantId: str + +class ParticipantTypeDef(BaseModel): + participantId: Optional[str] = None + userId: Optional[str] = None + state: Optional[ParticipantStateType] = None + firstJoinTime: Optional[datetime] = None + attributes: Optional[Dict[str, str]] = None + published: Optional[bool] = None + ispName: Optional[str] = None + osName: Optional[str] = None + osVersion: Optional[str] = None + browserName: Optional[str] = None + browserVersion: Optional[str] = None + sdkVersion: Optional[str] = None + recordingS3BucketName: Optional[str] = None + recordingS3Prefix: Optional[str] = None + recordingState: Optional[ParticipantRecordingStateType] = None + +class GetPublicKeyRequestRequestTypeDef(BaseModel): + arn: str + +class PublicKeyTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + publicKeyMaterial: Optional[str] = None + fingerprint: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class GetStageRequestRequestTypeDef(BaseModel): + arn: str + +class GetStageSessionRequestRequestTypeDef(BaseModel): + stageArn: str + sessionId: str + +class StageSessionTypeDef(BaseModel): + sessionId: Optional[str] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class GetStorageConfigurationRequestRequestTypeDef(BaseModel): + arn: str + +class GridConfigurationTypeDef(BaseModel): + featuredParticipantAttribute: Optional[str] = None + omitStoppedVideo: Optional[bool] = None + videoAspectRatio: Optional[VideoAspectRatioType] = None + videoFillMode: Optional[VideoFillModeType] = None + gridGap: Optional[int] = None + +class ImportPublicKeyRequestRequestTypeDef(BaseModel): + publicKeyMaterial: str + name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class PipConfigurationTypeDef(BaseModel): + featuredParticipantAttribute: Optional[str] = None + omitStoppedVideo: Optional[bool] = None + videoFillMode: Optional[VideoFillModeType] = None + gridGap: Optional[int] = None + pipParticipantAttribute: Optional[str] = None + pipBehavior: Optional[PipBehaviorType] = None + pipOffset: Optional[int] = None + pipPosition: Optional[PipPositionType] = None + pipWidth: Optional[int] = None + pipHeight: Optional[int] = None + +class ListCompositionsRequestRequestTypeDef(BaseModel): + filterByStageArn: Optional[str] = None + filterByEncoderConfigurationArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListEncoderConfigurationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListParticipantEventsRequestRequestTypeDef(BaseModel): + stageArn: str + sessionId: str + participantId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListParticipantsRequestRequestTypeDef(BaseModel): + stageArn: str + sessionId: str + filterByUserId: Optional[str] = None + filterByPublished: Optional[bool] = None + filterByState: Optional[ParticipantStateType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filterByRecordingState: Optional[ParticipantRecordingFilterByRecordingStateType] = None + +class ParticipantSummaryTypeDef(BaseModel): + participantId: Optional[str] = None + userId: Optional[str] = None + state: Optional[ParticipantStateType] = None + firstJoinTime: Optional[datetime] = None + published: Optional[bool] = None + recordingState: Optional[ParticipantRecordingStateType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListPublicKeysRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PublicKeySummaryTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListStageSessionsRequestRequestTypeDef(BaseModel): + stageArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class StageSessionSummaryTypeDef(BaseModel): + sessionId: Optional[str] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class ListStagesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class StageSummaryTypeDef(BaseModel): + arn: str + name: Optional[str] = None + activeSessionId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListStorageConfigurationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RecordingConfigurationTypeDef(BaseModel): + format: Optional[Literal["HLS"]] = None + +class StageEndpointsTypeDef(BaseModel): + events: Optional[str] = None + whip: Optional[str] = None + +class StopCompositionRequestRequestTypeDef(BaseModel): + arn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateStageRequestRequestTypeDef(BaseModel): + arn: str + name: Optional[str] = None + autoParticipantRecordingConfiguration: Optional[ AutoParticipantRecordingConfigurationTypeDef ] = None + +class CompositionSummaryTypeDef(BaseModel): + arn: str + stageArn: str + destinations: List[DestinationSummaryTypeDef] + state: CompositionStateType + tags: Optional[Dict[str, str]] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class CreateEncoderConfigurationRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + video: Optional[VideoTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class EncoderConfigurationTypeDef(BaseModel): + arn: str + name: Optional[str] = None + video: Optional[VideoTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateParticipantTokenResponseTypeDef(BaseModel): + participantToken: ParticipantTokenTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStageRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + participantTokenConfigurations: Optional[ Sequence[ParticipantTokenConfigurationTypeDef] ] = None + tags: Optional[Mapping[str, str]] = None + autoParticipantRecordingConfiguration: Optional[ AutoParticipantRecordingConfigurationTypeDef ] = None + +class CreateStorageConfigurationRequestRequestTypeDef(BaseModel): + s3: S3StorageConfigurationTypeDef + name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class StorageConfigurationSummaryTypeDef(BaseModel): + arn: str + name: Optional[str] = None + s3: Optional[S3StorageConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class StorageConfigurationTypeDef(BaseModel): + arn: str + name: Optional[str] = None + s3: Optional[S3StorageConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class DestinationDetailTypeDef(BaseModel): + s3: Optional[S3DetailTypeDef] = None + +class ListEncoderConfigurationsResponseTypeDef(BaseModel): + encoderConfigurations: List[EncoderConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListParticipantEventsResponseTypeDef(BaseModel): + events: List[EventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetParticipantResponseTypeDef(BaseModel): + participant: ParticipantTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPublicKeyResponseTypeDef(BaseModel): + publicKey: PublicKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportPublicKeyResponseTypeDef(BaseModel): + publicKey: PublicKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStageSessionResponseTypeDef(BaseModel): + stageSession: StageSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LayoutConfigurationTypeDef(BaseModel): + grid: Optional[GridConfigurationTypeDef] = None + pip: Optional[PipConfigurationTypeDef] = None + +class ListParticipantsResponseTypeDef(BaseModel): + participants: List[ParticipantSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPublicKeysRequestListPublicKeysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPublicKeysResponseTypeDef(BaseModel): + publicKeys: List[PublicKeySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStageSessionsResponseTypeDef(BaseModel): + stageSessions: List[StageSessionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStagesResponseTypeDef(BaseModel): + stages: List[StageSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class S3DestinationConfigurationOutputTypeDef(BaseModel): + storageConfigurationArn: str + encoderConfigurationArns: List[str] + recordingConfiguration: Optional[RecordingConfigurationTypeDef] = None + +class S3DestinationConfigurationTypeDef(BaseModel): + storageConfigurationArn: str + encoderConfigurationArns: Sequence[str] + recordingConfiguration: Optional[RecordingConfigurationTypeDef] = None + +class StageTypeDef(BaseModel): + arn: str + name: Optional[str] = None + activeSessionId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + autoParticipantRecordingConfiguration: Optional[ AutoParticipantRecordingConfigurationOutputTypeDef ] = None + endpoints: Optional[StageEndpointsTypeDef] = None + +class ListCompositionsResponseTypeDef(BaseModel): + compositions: List[CompositionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEncoderConfigurationResponseTypeDef(BaseModel): + encoderConfiguration: EncoderConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEncoderConfigurationResponseTypeDef(BaseModel): + encoderConfiguration: EncoderConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStorageConfigurationsResponseTypeDef(BaseModel): + storageConfigurations: List[StorageConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStorageConfigurationResponseTypeDef(BaseModel): + storageConfiguration: StorageConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStorageConfigurationResponseTypeDef(BaseModel): + storageConfiguration: StorageConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationConfigurationOutputTypeDef(BaseModel): + name: Optional[str] = None + channel: Optional[ChannelDestinationConfigurationTypeDef] = None + s3: Optional[S3DestinationConfigurationOutputTypeDef] = None + +class DestinationConfigurationTypeDef(BaseModel): + name: Optional[str] = None + channel: Optional[ChannelDestinationConfigurationTypeDef] = None + s3: Optional[S3DestinationConfigurationTypeDef] = None + +class CreateStageResponseTypeDef(BaseModel): + stage: StageTypeDef + participantTokens: List[ParticipantTokenTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetStageResponseTypeDef(BaseModel): + stage: StageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStageResponseTypeDef(BaseModel): + stage: StageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationTypeDef(BaseModel): + id: str + state: DestinationStateType + configuration: DestinationConfigurationOutputTypeDef + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + detail: Optional[DestinationDetailTypeDef] = None + +class CompositionTypeDef(BaseModel): + arn: str + stageArn: str + state: CompositionStateType + layout: LayoutConfigurationTypeDef + destinations: List[DestinationTypeDef] + tags: Optional[Dict[str, str]] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class StartCompositionRequestRequestTypeDef(BaseModel): + stageArn: str + destinations: Sequence[DestinationConfigurationUnionTypeDef] + idempotencyToken: Optional[str] = None + layout: Optional[LayoutConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class GetCompositionResponseTypeDef(BaseModel): + composition: CompositionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartCompositionResponseTypeDef(BaseModel): + composition: CompositionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ivs_realtime_constants.py b/aws_resource_validator/pydantic_models/ivs_realtime_constants.py new file mode 100644 index 00000000..9d795f4e --- /dev/null +++ b/aws_resource_validator/pydantic_models/ivs_realtime_constants.py @@ -0,0 +1,432 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CompositionStateType = Literal["ACTIVE", "FAILED", "STARTING", "STOPPED", "STOPPING"] +DestinationStateType = Literal["ACTIVE", "FAILED", "RECONNECTING", "STARTING", "STOPPED", "STOPPING"] +EventErrorCodeType = Literal["INSUFFICIENT_CAPABILITIES", "PUBLISHER_NOT_FOUND", "QUOTA_EXCEEDED"] +EventNameType = Literal["JOINED", + "JOIN_ERROR", + "LEFT", + "PUBLISH_ERROR", + "PUBLISH_STARTED", + "PUBLISH_STOPPED", + "SUBSCRIBE_ERROR", + "SUBSCRIBE_STARTED", + "SUBSCRIBE_STOPPED",] +ListPublicKeysPaginatorName = Literal["list_public_keys"] +ParticipantRecordingFilterByRecordingStateType = Literal["ACTIVE", "FAILED", "STARTING", "STOPPED", "STOPPING"] +ParticipantRecordingMediaTypeType = Literal["AUDIO_ONLY", "AUDIO_VIDEO"] +ParticipantRecordingStateType = Literal["ACTIVE", "DISABLED", "FAILED", "STARTING", "STOPPED", "STOPPING"] +ParticipantStateType = Literal["CONNECTED", "DISCONNECTED"] +ParticipantTokenCapabilityType = Literal["PUBLISH", "SUBSCRIBE"] +PipBehaviorType = Literal["DYNAMIC", "STATIC"] +PipPositionType = Literal["BOTTOM_LEFT", "BOTTOM_RIGHT", "TOP_LEFT", "TOP_RIGHT"] +RecordingConfigurationFormatType = Literal["HLS"] +VideoAspectRatioType = Literal["AUTO", "PORTRAIT", "SQUARE", "VIDEO"] +VideoFillModeType = Literal["CONTAIN", "COVER", "FILL"] +IvsrealtimeServiceName = Literal["ivs-realtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_public_keys"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-west-2",] +AutoParticipantRecordingConfigurationUnionTypeDef = Union[ 'AutoParticipantRecordingConfigurationTypeDef', 'AutoParticipantRecordingConfigurationOutputTypeDef' ] +DestinationConfigurationUnionTypeDef = Union[ 'DestinationConfigurationTypeDef', 'DestinationConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/ivschat_classes.py b/aws_resource_validator/pydantic_models/ivschat_classes.py new file mode 100644 index 00000000..d60d57c7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ivschat_classes.py @@ -0,0 +1,243 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ivschat_constants import * + +class CloudWatchLogsDestinationConfigurationTypeDef(BaseModel): + logGroupName: str + +class CreateChatTokenRequestRequestTypeDef(BaseModel): + roomIdentifier: str + userId: str + attributes: Optional[Mapping[str, str]] = None + capabilities: Optional[Sequence[ChatTokenCapabilityType]] = None + sessionDurationInMinutes: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class MessageReviewHandlerTypeDef(BaseModel): + fallbackResult: Optional[FallbackResultType] = None + uri: Optional[str] = None + +class DeleteLoggingConfigurationRequestRequestTypeDef(BaseModel): + identifier: str + +class DeleteMessageRequestRequestTypeDef(BaseModel): + id: str + roomIdentifier: str + reason: Optional[str] = None + +class DeleteRoomRequestRequestTypeDef(BaseModel): + identifier: str + +class FirehoseDestinationConfigurationTypeDef(BaseModel): + deliveryStreamName: str + +class S3DestinationConfigurationTypeDef(BaseModel): + bucketName: str + +class DisconnectUserRequestRequestTypeDef(BaseModel): + roomIdentifier: str + userId: str + reason: Optional[str] = None + +class GetLoggingConfigurationRequestRequestTypeDef(BaseModel): + identifier: str + +class GetRoomRequestRequestTypeDef(BaseModel): + identifier: str + +class ListLoggingConfigurationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRoomsRequestRequestTypeDef(BaseModel): + loggingConfigurationIdentifier: Optional[str] = None + maxResults: Optional[int] = None + messageReviewHandlerUri: Optional[str] = None + name: Optional[str] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class SendEventRequestRequestTypeDef(BaseModel): + eventName: str + roomIdentifier: str + attributes: Optional[Mapping[str, str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CreateChatTokenResponseTypeDef(BaseModel): + sessionExpirationTime: datetime + token: str + tokenExpirationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMessageResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SendEventResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRoomRequestRequestTypeDef(BaseModel): + loggingConfigurationIdentifiers: Optional[Sequence[str]] = None + maximumMessageLength: Optional[int] = None + maximumMessageRatePerSecond: Optional[int] = None + messageReviewHandler: Optional[MessageReviewHandlerTypeDef] = None + name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateRoomResponseTypeDef(BaseModel): + arn: str + createTime: datetime + id: str + loggingConfigurationIdentifiers: List[str] + maximumMessageLength: int + maximumMessageRatePerSecond: int + messageReviewHandler: MessageReviewHandlerTypeDef + name: str + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetRoomResponseTypeDef(BaseModel): + arn: str + createTime: datetime + id: str + loggingConfigurationIdentifiers: List[str] + maximumMessageLength: int + maximumMessageRatePerSecond: int + messageReviewHandler: MessageReviewHandlerTypeDef + name: str + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class RoomSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createTime: Optional[datetime] = None + id: Optional[str] = None + loggingConfigurationIdentifiers: Optional[List[str]] = None + messageReviewHandler: Optional[MessageReviewHandlerTypeDef] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + updateTime: Optional[datetime] = None + +class UpdateRoomRequestRequestTypeDef(BaseModel): + identifier: str + loggingConfigurationIdentifiers: Optional[Sequence[str]] = None + maximumMessageLength: Optional[int] = None + maximumMessageRatePerSecond: Optional[int] = None + messageReviewHandler: Optional[MessageReviewHandlerTypeDef] = None + name: Optional[str] = None + +class UpdateRoomResponseTypeDef(BaseModel): + arn: str + createTime: datetime + id: str + loggingConfigurationIdentifiers: List[str] + maximumMessageLength: int + maximumMessageRatePerSecond: int + messageReviewHandler: MessageReviewHandlerTypeDef + name: str + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationConfigurationTypeDef(BaseModel): + cloudWatchLogs: Optional[CloudWatchLogsDestinationConfigurationTypeDef] = None + firehose: Optional[FirehoseDestinationConfigurationTypeDef] = None + s3: Optional[S3DestinationConfigurationTypeDef] = None + +class ListRoomsResponseTypeDef(BaseModel): + nextToken: str + rooms: List[RoomSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoggingConfigurationRequestRequestTypeDef(BaseModel): + destinationConfiguration: DestinationConfigurationTypeDef + name: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateLoggingConfigurationResponseTypeDef(BaseModel): + arn: str + createTime: datetime + destinationConfiguration: DestinationConfigurationTypeDef + id: str + name: str + state: Literal["ACTIVE"] + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoggingConfigurationResponseTypeDef(BaseModel): + arn: str + createTime: datetime + destinationConfiguration: DestinationConfigurationTypeDef + id: str + name: str + state: LoggingConfigurationStateType + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingConfigurationSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createTime: Optional[datetime] = None + destinationConfiguration: Optional[DestinationConfigurationTypeDef] = None + id: Optional[str] = None + name: Optional[str] = None + state: Optional[LoggingConfigurationStateType] = None + tags: Optional[Dict[str, str]] = None + updateTime: Optional[datetime] = None + +class UpdateLoggingConfigurationRequestRequestTypeDef(BaseModel): + identifier: str + destinationConfiguration: Optional[DestinationConfigurationTypeDef] = None + name: Optional[str] = None + +class UpdateLoggingConfigurationResponseTypeDef(BaseModel): + arn: str + createTime: datetime + destinationConfiguration: DestinationConfigurationTypeDef + id: str + name: str + state: Literal["ACTIVE"] + tags: Dict[str, str] + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoggingConfigurationsResponseTypeDef(BaseModel): + loggingConfigurations: List[LoggingConfigurationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ivschat_constants.py b/aws_resource_validator/pydantic_models/ivschat_constants.py new file mode 100644 index 00000000..76f0ba2d --- /dev/null +++ b/aws_resource_validator/pydantic_models/ivschat_constants.py @@ -0,0 +1,407 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChatTokenCapabilityType = Literal["DELETE_MESSAGE", "DISCONNECT_USER", "SEND_MESSAGE"] +CreateLoggingConfigurationStateType = Literal["ACTIVE"] +FallbackResultType = Literal["ALLOW", "DENY"] +LoggingConfigurationStateType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +UpdateLoggingConfigurationStateType = Literal["ACTIVE"] +ivschatServiceName = Literal["ivschat"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/kafka_classes.py b/aws_resource_validator/pydantic_models/kafka_classes.py new file mode 100644 index 00000000..6b0fe672 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kafka_classes.py @@ -0,0 +1,1125 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kafka_constants import * + +class AmazonMskClusterTypeDef(BaseModel): + MskClusterArn: str + +class BatchAssociateScramSecretRequestRequestTypeDef(BaseModel): + ClusterArn: str + SecretArnList: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UnprocessedScramSecretTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + SecretArn: Optional[str] = None + +class BatchDisassociateScramSecretRequestRequestTypeDef(BaseModel): + ClusterArn: str + SecretArnList: Sequence[str] + +class BrokerCountUpdateInfoTypeDef(BaseModel): + CreatedBrokerIds: Optional[List[float]] = None + DeletedBrokerIds: Optional[List[float]] = None + +class ProvisionedThroughputTypeDef(BaseModel): + Enabled: Optional[bool] = None + VolumeThroughput: Optional[int] = None + +class CloudWatchLogsTypeDef(BaseModel): + Enabled: bool + LogGroup: Optional[str] = None + +class FirehoseTypeDef(BaseModel): + Enabled: bool + DeliveryStream: Optional[str] = None + +class S3TypeDef(BaseModel): + Enabled: bool + Bucket: Optional[str] = None + Prefix: Optional[str] = None + +class BrokerSoftwareInfoTypeDef(BaseModel): + ConfigurationArn: Optional[str] = None + ConfigurationRevision: Optional[int] = None + KafkaVersion: Optional[str] = None + +class TlsExtraOutputTypeDef(BaseModel): + CertificateAuthorityArnList: Optional[List[str]] = None + Enabled: Optional[bool] = None + +class UnauthenticatedTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class TlsOutputTypeDef(BaseModel): + CertificateAuthorityArnList: Optional[List[str]] = None + Enabled: Optional[bool] = None + +class TlsTypeDef(BaseModel): + CertificateAuthorityArnList: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class ClientVpcConnectionTypeDef(BaseModel): + VpcConnectionArn: str + Authentication: Optional[str] = None + CreationTime: Optional[datetime] = None + State: Optional[VpcConnectionStateType] = None + Owner: Optional[str] = None + +class StateInfoTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class ErrorInfoTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorString: Optional[str] = None + +class ClusterOperationStepInfoTypeDef(BaseModel): + StepStatus: Optional[str] = None + +class ClusterOperationV2SummaryTypeDef(BaseModel): + ClusterArn: Optional[str] = None + ClusterType: Optional[ClusterTypeType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + OperationArn: Optional[str] = None + OperationState: Optional[str] = None + OperationType: Optional[str] = None + +class CompatibleKafkaVersionTypeDef(BaseModel): + SourceVersion: Optional[str] = None + TargetVersions: Optional[List[str]] = None + +class ConfigurationInfoTypeDef(BaseModel): + Arn: str + Revision: int + +class ConfigurationRevisionTypeDef(BaseModel): + CreationTime: datetime + Revision: int + Description: Optional[str] = None + +class PublicAccessTypeDef(BaseModel): + Type: Optional[str] = None + +class ConsumerGroupReplicationOutputTypeDef(BaseModel): + ConsumerGroupsToReplicate: List[str] + ConsumerGroupsToExclude: Optional[List[str]] = None + DetectAndCopyNewConsumerGroups: Optional[bool] = None + SynchroniseConsumerGroupOffsets: Optional[bool] = None + +class ConsumerGroupReplicationTypeDef(BaseModel): + ConsumerGroupsToReplicate: Sequence[str] + ConsumerGroupsToExclude: Optional[Sequence[str]] = None + DetectAndCopyNewConsumerGroups: Optional[bool] = None + SynchroniseConsumerGroupOffsets: Optional[bool] = None + +class ConsumerGroupReplicationUpdateTypeDef(BaseModel): + ConsumerGroupsToExclude: Sequence[str] + ConsumerGroupsToReplicate: Sequence[str] + DetectAndCopyNewConsumerGroups: bool + SynchroniseConsumerGroupOffsets: bool + +class ControllerNodeInfoTypeDef(BaseModel): + Endpoints: Optional[List[str]] = None + +class CreateVpcConnectionRequestRequestTypeDef(BaseModel): + TargetClusterArn: str + Authentication: str + VpcId: str + ClientSubnets: Sequence[str] + SecurityGroups: Sequence[str] + Tags: Optional[Mapping[str, str]] = None + +class DeleteClusterPolicyRequestRequestTypeDef(BaseModel): + ClusterArn: str + +class DeleteClusterRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: Optional[str] = None + +class DeleteConfigurationRequestRequestTypeDef(BaseModel): + Arn: str + +class DeleteReplicatorRequestRequestTypeDef(BaseModel): + ReplicatorArn: str + CurrentVersion: Optional[str] = None + +class DeleteVpcConnectionRequestRequestTypeDef(BaseModel): + Arn: str + +class DescribeClusterOperationRequestRequestTypeDef(BaseModel): + ClusterOperationArn: str + +class DescribeClusterOperationV2RequestRequestTypeDef(BaseModel): + ClusterOperationArn: str + +class DescribeClusterRequestRequestTypeDef(BaseModel): + ClusterArn: str + +class DescribeClusterV2RequestRequestTypeDef(BaseModel): + ClusterArn: str + +class DescribeConfigurationRequestRequestTypeDef(BaseModel): + Arn: str + +class DescribeConfigurationRevisionRequestRequestTypeDef(BaseModel): + Arn: str + Revision: int + +class DescribeReplicatorRequestRequestTypeDef(BaseModel): + ReplicatorArn: str + +class ReplicationStateInfoTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class DescribeVpcConnectionRequestRequestTypeDef(BaseModel): + Arn: str + +class EncryptionAtRestTypeDef(BaseModel): + DataVolumeKMSKeyId: str + +class EncryptionInTransitTypeDef(BaseModel): + ClientBroker: Optional[ClientBrokerType] = None + InCluster: Optional[bool] = None + +class GetBootstrapBrokersRequestRequestTypeDef(BaseModel): + ClusterArn: str + +class GetClusterPolicyRequestRequestTypeDef(BaseModel): + ClusterArn: str + +class GetCompatibleKafkaVersionsRequestRequestTypeDef(BaseModel): + ClusterArn: Optional[str] = None + +class IamTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class JmxExporterInfoTypeDef(BaseModel): + EnabledInBroker: bool + +class JmxExporterTypeDef(BaseModel): + EnabledInBroker: bool + +class KafkaClusterClientVpcConfigOutputTypeDef(BaseModel): + SubnetIds: List[str] + SecurityGroupIds: Optional[List[str]] = None + +class KafkaClusterClientVpcConfigTypeDef(BaseModel): + SubnetIds: Sequence[str] + SecurityGroupIds: Optional[Sequence[str]] = None + +class KafkaVersionTypeDef(BaseModel): + Version: Optional[str] = None + Status: Optional[KafkaVersionStatusType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListClientVpcConnectionsRequestRequestTypeDef(BaseModel): + ClusterArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClusterOperationsRequestRequestTypeDef(BaseModel): + ClusterArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClusterOperationsV2RequestRequestTypeDef(BaseModel): + ClusterArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClustersRequestRequestTypeDef(BaseModel): + ClusterNameFilter: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClustersV2RequestRequestTypeDef(BaseModel): + ClusterNameFilter: Optional[str] = None + ClusterTypeFilter: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConfigurationRevisionsRequestRequestTypeDef(BaseModel): + Arn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListKafkaVersionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListNodesRequestRequestTypeDef(BaseModel): + ClusterArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListReplicatorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ReplicatorNameFilter: Optional[str] = None + +class ListScramSecretsRequestRequestTypeDef(BaseModel): + ClusterArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListVpcConnectionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class VpcConnectionTypeDef(BaseModel): + VpcConnectionArn: str + TargetClusterArn: str + CreationTime: Optional[datetime] = None + Authentication: Optional[str] = None + VpcId: Optional[str] = None + State: Optional[VpcConnectionStateType] = None + +class NodeExporterInfoTypeDef(BaseModel): + EnabledInBroker: bool + +class NodeExporterTypeDef(BaseModel): + EnabledInBroker: bool + +class ZookeeperNodeInfoTypeDef(BaseModel): + AttachedENIId: Optional[str] = None + ClientVpcIpAddress: Optional[str] = None + Endpoints: Optional[List[str]] = None + ZookeeperId: Optional[float] = None + ZookeeperVersion: Optional[str] = None + +class PutClusterPolicyRequestRequestTypeDef(BaseModel): + ClusterArn: str + Policy: str + CurrentVersion: Optional[str] = None + +class RebootBrokerRequestRequestTypeDef(BaseModel): + BrokerIds: Sequence[str] + ClusterArn: str + +class RejectClientVpcConnectionRequestRequestTypeDef(BaseModel): + ClusterArn: str + VpcConnectionArn: str + +class ReplicationInfoSummaryTypeDef(BaseModel): + SourceKafkaClusterAlias: Optional[str] = None + TargetKafkaClusterAlias: Optional[str] = None + +class ReplicationStartingPositionTypeDef(BaseModel): + Type: Optional[ReplicationStartingPositionTypeType] = None + +class ScramTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class VpcConfigTypeDef(BaseModel): + SubnetIds: Sequence[str] + SecurityGroupIds: Optional[Sequence[str]] = None + +class VpcConfigOutputTypeDef(BaseModel): + SubnetIds: List[str] + SecurityGroupIds: Optional[List[str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class TopicReplicationUpdateTypeDef(BaseModel): + CopyAccessControlListsForTopics: bool + CopyTopicConfigurations: bool + DetectAndCopyNewTopics: bool + TopicsToExclude: Sequence[str] + TopicsToReplicate: Sequence[str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateBrokerCountRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + TargetNumberOfBrokerNodes: int + +class UpdateBrokerTypeRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + TargetInstanceType: str + +class UserIdentityTypeDef(BaseModel): + Type: Optional[UserIdentityTypeType] = None + PrincipalId: Optional[str] = None + +class VpcConnectivityTlsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class VpcConnectivityIamTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class VpcConnectivityScramTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class KafkaClusterSummaryTypeDef(BaseModel): + AmazonMskCluster: Optional[AmazonMskClusterTypeDef] = None + KafkaClusterAlias: Optional[str] = None + +class CreateClusterResponseTypeDef(BaseModel): + ClusterArn: str + ClusterName: str + State: ClusterStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterV2ResponseTypeDef(BaseModel): + ClusterArn: str + ClusterName: str + State: ClusterStateType + ClusterType: ClusterTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReplicatorResponseTypeDef(BaseModel): + ReplicatorArn: str + ReplicatorName: str + ReplicatorState: ReplicatorStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcConnectionResponseTypeDef(BaseModel): + VpcConnectionArn: str + State: VpcConnectionStateType + Authentication: str + VpcId: str + ClientSubnets: List[str] + SecurityGroups: List[str] + CreationTime: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + ClusterArn: str + State: ClusterStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConfigurationResponseTypeDef(BaseModel): + Arn: str + State: ConfigurationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteReplicatorResponseTypeDef(BaseModel): + ReplicatorArn: str + ReplicatorState: ReplicatorStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcConnectionResponseTypeDef(BaseModel): + VpcConnectionArn: str + State: VpcConnectionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationRevisionResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + Description: str + Revision: int + ServerProperties: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcConnectionResponseTypeDef(BaseModel): + VpcConnectionArn: str + TargetClusterArn: str + State: VpcConnectionStateType + Authentication: str + VpcId: str + Subnets: List[str] + SecurityGroups: List[str] + CreationTime: datetime + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetBootstrapBrokersResponseTypeDef(BaseModel): + BootstrapBrokerString: str + BootstrapBrokerStringTls: str + BootstrapBrokerStringSaslScram: str + BootstrapBrokerStringSaslIam: str + BootstrapBrokerStringPublicTls: str + BootstrapBrokerStringPublicSaslScram: str + BootstrapBrokerStringPublicSaslIam: str + BootstrapBrokerStringVpcConnectivityTls: str + BootstrapBrokerStringVpcConnectivitySaslScram: str + BootstrapBrokerStringVpcConnectivitySaslIam: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetClusterPolicyResponseTypeDef(BaseModel): + CurrentVersion: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListScramSecretsResponseTypeDef(BaseModel): + SecretArnList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutClusterPolicyResponseTypeDef(BaseModel): + CurrentVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class RebootBrokerResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBrokerCountResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBrokerStorageResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBrokerTypeResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterConfigurationResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterKafkaVersionResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectivityResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMonitoringResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReplicationInfoResponseTypeDef(BaseModel): + ReplicatorArn: str + ReplicatorState: ReplicatorStateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStorageResponseTypeDef(BaseModel): + ClusterArn: str + ClusterOperationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchAssociateScramSecretResponseTypeDef(BaseModel): + ClusterArn: str + UnprocessedScramSecrets: List[UnprocessedScramSecretTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateScramSecretResponseTypeDef(BaseModel): + ClusterArn: str + UnprocessedScramSecrets: List[UnprocessedScramSecretTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationRequestRequestTypeDef(BaseModel): + Name: str + ServerProperties: BlobTypeDef + Description: Optional[str] = None + KafkaVersions: Optional[Sequence[str]] = None + +class UpdateConfigurationRequestRequestTypeDef(BaseModel): + Arn: str + ServerProperties: BlobTypeDef + Description: Optional[str] = None + +class BrokerEBSVolumeInfoTypeDef(BaseModel): + KafkaBrokerNodeId: str + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + VolumeSizeGB: Optional[int] = None + +class EBSStorageInfoTypeDef(BaseModel): + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + VolumeSize: Optional[int] = None + +class UpdateStorageRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + ProvisionedThroughput: Optional[ProvisionedThroughputTypeDef] = None + StorageMode: Optional[StorageModeType] = None + VolumeSizeGB: Optional[int] = None + +class BrokerLogsTypeDef(BaseModel): + CloudWatchLogs: Optional[CloudWatchLogsTypeDef] = None + Firehose: Optional[FirehoseTypeDef] = None + S3: Optional[S3TypeDef] = None + +class BrokerNodeInfoTypeDef(BaseModel): + AttachedENIId: Optional[str] = None + BrokerId: Optional[float] = None + ClientSubnet: Optional[str] = None + ClientVpcIpAddress: Optional[str] = None + CurrentBrokerSoftwareInfo: Optional[BrokerSoftwareInfoTypeDef] = None + Endpoints: Optional[List[str]] = None + +class ListClientVpcConnectionsResponseTypeDef(BaseModel): + ClientVpcConnections: List[ClientVpcConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ClusterOperationStepTypeDef(BaseModel): + StepInfo: Optional[ClusterOperationStepInfoTypeDef] = None + StepName: Optional[str] = None + +class ListClusterOperationsV2ResponseTypeDef(BaseModel): + ClusterOperationInfoList: List[ClusterOperationV2SummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCompatibleKafkaVersionsResponseTypeDef(BaseModel): + CompatibleKafkaVersions: List[CompatibleKafkaVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterConfigurationRequestRequestTypeDef(BaseModel): + ClusterArn: str + ConfigurationInfo: ConfigurationInfoTypeDef + CurrentVersion: str + +class UpdateClusterKafkaVersionRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + TargetKafkaVersion: str + ConfigurationInfo: Optional[ConfigurationInfoTypeDef] = None + +class ConfigurationTypeDef(BaseModel): + Arn: str + CreationTime: datetime + Description: str + KafkaVersions: List[str] + LatestRevision: ConfigurationRevisionTypeDef + Name: str + State: ConfigurationStateType + +class CreateConfigurationResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + LatestRevision: ConfigurationRevisionTypeDef + Name: str + State: ConfigurationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + Description: str + KafkaVersions: List[str] + LatestRevision: ConfigurationRevisionTypeDef + Name: str + State: ConfigurationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationRevisionsResponseTypeDef(BaseModel): + Revisions: List[ConfigurationRevisionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateConfigurationResponseTypeDef(BaseModel): + Arn: str + LatestRevision: ConfigurationRevisionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EncryptionInfoTypeDef(BaseModel): + EncryptionAtRest: Optional[EncryptionAtRestTypeDef] = None + EncryptionInTransit: Optional[EncryptionInTransitTypeDef] = None + +class ServerlessSaslTypeDef(BaseModel): + Iam: Optional[IamTypeDef] = None + +class KafkaClusterDescriptionTypeDef(BaseModel): + AmazonMskCluster: Optional[AmazonMskClusterTypeDef] = None + KafkaClusterAlias: Optional[str] = None + VpcConfig: Optional[KafkaClusterClientVpcConfigOutputTypeDef] = None + +class KafkaClusterTypeDef(BaseModel): + AmazonMskCluster: AmazonMskClusterTypeDef + VpcConfig: KafkaClusterClientVpcConfigTypeDef + +class ListKafkaVersionsResponseTypeDef(BaseModel): + KafkaVersions: List[KafkaVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListClientVpcConnectionsRequestListClientVpcConnectionsPaginateTypeDef(BaseModel): + ClusterArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClusterOperationsRequestListClusterOperationsPaginateTypeDef(BaseModel): + ClusterArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClusterOperationsV2RequestListClusterOperationsV2PaginateTypeDef(BaseModel): + ClusterArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersRequestListClustersPaginateTypeDef(BaseModel): + ClusterNameFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersV2RequestListClustersV2PaginateTypeDef(BaseModel): + ClusterNameFilter: Optional[str] = None + ClusterTypeFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationRevisionsRequestListConfigurationRevisionsPaginateTypeDef(BaseModel): + Arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationsRequestListConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKafkaVersionsRequestListKafkaVersionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNodesRequestListNodesPaginateTypeDef(BaseModel): + ClusterArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReplicatorsRequestListReplicatorsPaginateTypeDef(BaseModel): + ReplicatorNameFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScramSecretsRequestListScramSecretsPaginateTypeDef(BaseModel): + ClusterArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVpcConnectionsRequestListVpcConnectionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVpcConnectionsResponseTypeDef(BaseModel): + VpcConnections: List[VpcConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PrometheusInfoTypeDef(BaseModel): + JmxExporter: Optional[JmxExporterInfoTypeDef] = None + NodeExporter: Optional[NodeExporterInfoTypeDef] = None + +class PrometheusTypeDef(BaseModel): + JmxExporter: Optional[JmxExporterTypeDef] = None + NodeExporter: Optional[NodeExporterTypeDef] = None + +class TopicReplicationOutputTypeDef(BaseModel): + TopicsToReplicate: List[str] + CopyAccessControlListsForTopics: Optional[bool] = None + CopyTopicConfigurations: Optional[bool] = None + DetectAndCopyNewTopics: Optional[bool] = None + StartingPosition: Optional[ReplicationStartingPositionTypeDef] = None + TopicsToExclude: Optional[List[str]] = None + +class TopicReplicationTypeDef(BaseModel): + TopicsToReplicate: Sequence[str] + CopyAccessControlListsForTopics: Optional[bool] = None + CopyTopicConfigurations: Optional[bool] = None + DetectAndCopyNewTopics: Optional[bool] = None + StartingPosition: Optional[ReplicationStartingPositionTypeDef] = None + TopicsToExclude: Optional[Sequence[str]] = None + +class SaslTypeDef(BaseModel): + Scram: Optional[ScramTypeDef] = None + Iam: Optional[IamTypeDef] = None + +class UpdateReplicationInfoRequestRequestTypeDef(BaseModel): + CurrentVersion: str + ReplicatorArn: str + SourceKafkaClusterArn: str + TargetKafkaClusterArn: str + ConsumerGroupReplication: Optional[ConsumerGroupReplicationUpdateTypeDef] = None + TopicReplication: Optional[TopicReplicationUpdateTypeDef] = None + +class VpcConnectionInfoServerlessTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + Owner: Optional[str] = None + UserIdentity: Optional[UserIdentityTypeDef] = None + VpcConnectionArn: Optional[str] = None + +class VpcConnectionInfoTypeDef(BaseModel): + VpcConnectionArn: Optional[str] = None + Owner: Optional[str] = None + UserIdentity: Optional[UserIdentityTypeDef] = None + CreationTime: Optional[datetime] = None + +class VpcConnectivitySaslTypeDef(BaseModel): + Scram: Optional[VpcConnectivityScramTypeDef] = None + Iam: Optional[VpcConnectivityIamTypeDef] = None + +class ReplicatorSummaryTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + CurrentVersion: Optional[str] = None + IsReplicatorReference: Optional[bool] = None + KafkaClustersSummary: Optional[List[KafkaClusterSummaryTypeDef]] = None + ReplicationInfoSummaryList: Optional[List[ReplicationInfoSummaryTypeDef]] = None + ReplicatorArn: Optional[str] = None + ReplicatorName: Optional[str] = None + ReplicatorResourceArn: Optional[str] = None + ReplicatorState: Optional[ReplicatorStateType] = None + +class UpdateBrokerStorageRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + TargetBrokerEBSVolumeInfo: Sequence[BrokerEBSVolumeInfoTypeDef] + +class StorageInfoTypeDef(BaseModel): + EbsStorageInfo: Optional[EBSStorageInfoTypeDef] = None + +class LoggingInfoTypeDef(BaseModel): + BrokerLogs: BrokerLogsTypeDef + +class NodeInfoTypeDef(BaseModel): + AddedToClusterTime: Optional[str] = None + BrokerNodeInfo: Optional[BrokerNodeInfoTypeDef] = None + ControllerNodeInfo: Optional[ControllerNodeInfoTypeDef] = None + InstanceType: Optional[str] = None + NodeARN: Optional[str] = None + NodeType: Optional[Literal["BROKER"]] = None + ZookeeperNodeInfo: Optional[ZookeeperNodeInfoTypeDef] = None + +class ListConfigurationsResponseTypeDef(BaseModel): + Configurations: List[ConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ServerlessClientAuthenticationTypeDef(BaseModel): + Sasl: Optional[ServerlessSaslTypeDef] = None + +class OpenMonitoringInfoTypeDef(BaseModel): + Prometheus: PrometheusInfoTypeDef + +class OpenMonitoringTypeDef(BaseModel): + Prometheus: PrometheusTypeDef + +class ReplicationInfoDescriptionTypeDef(BaseModel): + ConsumerGroupReplication: Optional[ConsumerGroupReplicationOutputTypeDef] = None + SourceKafkaClusterAlias: Optional[str] = None + TargetCompressionType: Optional[TargetCompressionTypeType] = None + TargetKafkaClusterAlias: Optional[str] = None + TopicReplication: Optional[TopicReplicationOutputTypeDef] = None + +class ReplicationInfoTypeDef(BaseModel): + ConsumerGroupReplication: ConsumerGroupReplicationTypeDef + SourceKafkaClusterArn: str + TargetCompressionType: TargetCompressionTypeType + TargetKafkaClusterArn: str + TopicReplication: TopicReplicationTypeDef + +class ClientAuthenticationExtraOutputTypeDef(BaseModel): + Sasl: Optional[SaslTypeDef] = None + Tls: Optional[TlsExtraOutputTypeDef] = None + Unauthenticated: Optional[UnauthenticatedTypeDef] = None + +class ClientAuthenticationOutputTypeDef(BaseModel): + Sasl: Optional[SaslTypeDef] = None + Tls: Optional[TlsOutputTypeDef] = None + Unauthenticated: Optional[UnauthenticatedTypeDef] = None + +class ClientAuthenticationTypeDef(BaseModel): + Sasl: Optional[SaslTypeDef] = None + Tls: Optional[TlsTypeDef] = None + Unauthenticated: Optional[UnauthenticatedTypeDef] = None + +class ClusterOperationV2ServerlessTypeDef(BaseModel): + VpcConnectionInfo: Optional[VpcConnectionInfoServerlessTypeDef] = None + +class VpcConnectivityClientAuthenticationTypeDef(BaseModel): + Sasl: Optional[VpcConnectivitySaslTypeDef] = None + Tls: Optional[VpcConnectivityTlsTypeDef] = None + +class ListReplicatorsResponseTypeDef(BaseModel): + Replicators: List[ReplicatorSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNodesResponseTypeDef(BaseModel): + NodeInfoList: List[NodeInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ServerlessRequestTypeDef(BaseModel): + VpcConfigs: Sequence[VpcConfigTypeDef] + ClientAuthentication: Optional[ServerlessClientAuthenticationTypeDef] = None + +class ServerlessTypeDef(BaseModel): + VpcConfigs: List[VpcConfigOutputTypeDef] + ClientAuthentication: Optional[ServerlessClientAuthenticationTypeDef] = None + +class UpdateMonitoringRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + EnhancedMonitoring: Optional[EnhancedMonitoringType] = None + OpenMonitoring: Optional[OpenMonitoringInfoTypeDef] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + +class DescribeReplicatorResponseTypeDef(BaseModel): + CreationTime: datetime + CurrentVersion: str + IsReplicatorReference: bool + KafkaClusters: List[KafkaClusterDescriptionTypeDef] + ReplicationInfoList: List[ReplicationInfoDescriptionTypeDef] + ReplicatorArn: str + ReplicatorDescription: str + ReplicatorName: str + ReplicatorResourceArn: str + ReplicatorState: ReplicatorStateType + ServiceExecutionRoleArn: str + StateInfo: ReplicationStateInfoTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReplicatorRequestRequestTypeDef(BaseModel): + KafkaClusters: Sequence[KafkaClusterTypeDef] + ReplicationInfoList: Sequence[ReplicationInfoTypeDef] + ReplicatorName: str + ServiceExecutionRoleArn: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateSecurityRequestRequestTypeDef(BaseModel): + ClusterArn: str + CurrentVersion: str + ClientAuthentication: Optional[ClientAuthenticationTypeDef] = None + EncryptionInfo: Optional[EncryptionInfoTypeDef] = None + +class VpcConnectivityTypeDef(BaseModel): + ClientAuthentication: Optional[VpcConnectivityClientAuthenticationTypeDef] = None + +class ConnectivityInfoTypeDef(BaseModel): + PublicAccess: Optional[PublicAccessTypeDef] = None + VpcConnectivity: Optional[VpcConnectivityTypeDef] = None + +class BrokerNodeGroupInfoExtraOutputTypeDef(BaseModel): + ClientSubnets: List[str] + InstanceType: str + BrokerAZDistribution: Optional[Literal["DEFAULT"]] = None + SecurityGroups: Optional[List[str]] = None + StorageInfo: Optional[StorageInfoTypeDef] = None + ConnectivityInfo: Optional[ConnectivityInfoTypeDef] = None + ZoneIds: Optional[List[str]] = None + +class BrokerNodeGroupInfoOutputTypeDef(BaseModel): + ClientSubnets: List[str] + InstanceType: str + BrokerAZDistribution: Optional[Literal["DEFAULT"]] = None + SecurityGroups: Optional[List[str]] = None + StorageInfo: Optional[StorageInfoTypeDef] = None + ConnectivityInfo: Optional[ConnectivityInfoTypeDef] = None + ZoneIds: Optional[List[str]] = None + +class BrokerNodeGroupInfoTypeDef(BaseModel): + ClientSubnets: Sequence[str] + InstanceType: str + BrokerAZDistribution: Optional[Literal["DEFAULT"]] = None + SecurityGroups: Optional[Sequence[str]] = None + StorageInfo: Optional[StorageInfoTypeDef] = None + ConnectivityInfo: Optional[ConnectivityInfoTypeDef] = None + ZoneIds: Optional[Sequence[str]] = None + +class MutableClusterInfoTypeDef(BaseModel): + BrokerEBSVolumeInfo: Optional[List[BrokerEBSVolumeInfoTypeDef]] = None + ConfigurationInfo: Optional[ConfigurationInfoTypeDef] = None + NumberOfBrokerNodes: Optional[int] = None + EnhancedMonitoring: Optional[EnhancedMonitoringType] = None + OpenMonitoring: Optional[OpenMonitoringTypeDef] = None + KafkaVersion: Optional[str] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + InstanceType: Optional[str] = None + ClientAuthentication: Optional[ClientAuthenticationOutputTypeDef] = None + EncryptionInfo: Optional[EncryptionInfoTypeDef] = None + ConnectivityInfo: Optional[ConnectivityInfoTypeDef] = None + StorageMode: Optional[StorageModeType] = None + BrokerCountUpdateInfo: Optional[BrokerCountUpdateInfoTypeDef] = None + +class UpdateConnectivityRequestRequestTypeDef(BaseModel): + ClusterArn: str + ConnectivityInfo: ConnectivityInfoTypeDef + CurrentVersion: str + +class ClusterInfoTypeDef(BaseModel): + ActiveOperationArn: Optional[str] = None + BrokerNodeGroupInfo: Optional[BrokerNodeGroupInfoOutputTypeDef] = None + ClientAuthentication: Optional[ClientAuthenticationOutputTypeDef] = None + ClusterArn: Optional[str] = None + ClusterName: Optional[str] = None + CreationTime: Optional[datetime] = None + CurrentBrokerSoftwareInfo: Optional[BrokerSoftwareInfoTypeDef] = None + CurrentVersion: Optional[str] = None + EncryptionInfo: Optional[EncryptionInfoTypeDef] = None + EnhancedMonitoring: Optional[EnhancedMonitoringType] = None + OpenMonitoring: Optional[OpenMonitoringTypeDef] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + NumberOfBrokerNodes: Optional[int] = None + State: Optional[ClusterStateType] = None + StateInfo: Optional[StateInfoTypeDef] = None + Tags: Optional[Dict[str, str]] = None + ZookeeperConnectString: Optional[str] = None + ZookeeperConnectStringTls: Optional[str] = None + StorageMode: Optional[StorageModeType] = None + CustomerActionStatus: Optional[CustomerActionStatusType] = None + +class ProvisionedTypeDef(BaseModel): + BrokerNodeGroupInfo: BrokerNodeGroupInfoOutputTypeDef + NumberOfBrokerNodes: int + CurrentBrokerSoftwareInfo: Optional[BrokerSoftwareInfoTypeDef] = None + ClientAuthentication: Optional[ClientAuthenticationOutputTypeDef] = None + EncryptionInfo: Optional[EncryptionInfoTypeDef] = None + EnhancedMonitoring: Optional[EnhancedMonitoringType] = None + OpenMonitoring: Optional[OpenMonitoringInfoTypeDef] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + ZookeeperConnectString: Optional[str] = None + ZookeeperConnectStringTls: Optional[str] = None + StorageMode: Optional[StorageModeType] = None + CustomerActionStatus: Optional[CustomerActionStatusType] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + BrokerNodeGroupInfo: BrokerNodeGroupInfoTypeDef + ClusterName: str + KafkaVersion: str + NumberOfBrokerNodes: int + ClientAuthentication: Optional[ClientAuthenticationTypeDef] = None + ConfigurationInfo: Optional[ConfigurationInfoTypeDef] = None + EncryptionInfo: Optional[EncryptionInfoTypeDef] = None + EnhancedMonitoring: Optional[EnhancedMonitoringType] = None + OpenMonitoring: Optional[OpenMonitoringInfoTypeDef] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + StorageMode: Optional[StorageModeType] = None + +class ProvisionedRequestTypeDef(BaseModel): + BrokerNodeGroupInfo: BrokerNodeGroupInfoTypeDef + KafkaVersion: str + NumberOfBrokerNodes: int + ClientAuthentication: Optional[ClientAuthenticationTypeDef] = None + ConfigurationInfo: Optional[ConfigurationInfoTypeDef] = None + EncryptionInfo: Optional[EncryptionInfoTypeDef] = None + EnhancedMonitoring: Optional[EnhancedMonitoringType] = None + OpenMonitoring: Optional[OpenMonitoringInfoTypeDef] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + StorageMode: Optional[StorageModeType] = None + +class ClusterOperationInfoTypeDef(BaseModel): + ClientRequestId: Optional[str] = None + ClusterArn: Optional[str] = None + CreationTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ErrorInfo: Optional[ErrorInfoTypeDef] = None + OperationArn: Optional[str] = None + OperationState: Optional[str] = None + OperationSteps: Optional[List[ClusterOperationStepTypeDef]] = None + OperationType: Optional[str] = None + SourceClusterInfo: Optional[MutableClusterInfoTypeDef] = None + TargetClusterInfo: Optional[MutableClusterInfoTypeDef] = None + VpcConnectionInfo: Optional[VpcConnectionInfoTypeDef] = None + +class ClusterOperationV2ProvisionedTypeDef(BaseModel): + OperationSteps: Optional[List[ClusterOperationStepTypeDef]] = None + SourceClusterInfo: Optional[MutableClusterInfoTypeDef] = None + TargetClusterInfo: Optional[MutableClusterInfoTypeDef] = None + VpcConnectionInfo: Optional[VpcConnectionInfoTypeDef] = None + +class DescribeClusterResponseTypeDef(BaseModel): + ClusterInfo: ClusterInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersResponseTypeDef(BaseModel): + ClusterInfoList: List[ClusterInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ClusterTypeDef(BaseModel): + ActiveOperationArn: Optional[str] = None + ClusterType: Optional[ClusterTypeType] = None + ClusterArn: Optional[str] = None + ClusterName: Optional[str] = None + CreationTime: Optional[datetime] = None + CurrentVersion: Optional[str] = None + State: Optional[ClusterStateType] = None + StateInfo: Optional[StateInfoTypeDef] = None + Tags: Optional[Dict[str, str]] = None + Provisioned: Optional[ProvisionedTypeDef] = None + Serverless: Optional[ServerlessTypeDef] = None + +class CreateClusterV2RequestRequestTypeDef(BaseModel): + ClusterName: str + Tags: Optional[Mapping[str, str]] = None + Provisioned: Optional[ProvisionedRequestTypeDef] = None + Serverless: Optional[ServerlessRequestTypeDef] = None + +class DescribeClusterOperationResponseTypeDef(BaseModel): + ClusterOperationInfo: ClusterOperationInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListClusterOperationsResponseTypeDef(BaseModel): + ClusterOperationInfoList: List[ClusterOperationInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ClusterOperationV2TypeDef(BaseModel): + ClusterArn: Optional[str] = None + ClusterType: Optional[ClusterTypeType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + ErrorInfo: Optional[ErrorInfoTypeDef] = None + OperationArn: Optional[str] = None + OperationState: Optional[str] = None + OperationType: Optional[str] = None + Provisioned: Optional[ClusterOperationV2ProvisionedTypeDef] = None + Serverless: Optional[ClusterOperationV2ServerlessTypeDef] = None + +class DescribeClusterV2ResponseTypeDef(BaseModel): + ClusterInfo: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersV2ResponseTypeDef(BaseModel): + ClusterInfoList: List[ClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeClusterOperationV2ResponseTypeDef(BaseModel): + ClusterOperationInfo: ClusterOperationV2TypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kafka_constants.py b/aws_resource_validator/pydantic_models/kafka_constants.py new file mode 100644 index 00000000..e889b479 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kafka_constants.py @@ -0,0 +1,483 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BrokerAZDistributionType = Literal["DEFAULT"] +ClientBrokerType = Literal["PLAINTEXT", "TLS", "TLS_PLAINTEXT"] +ClusterStateType = Literal["ACTIVE", + "CREATING", + "DELETING", + "FAILED", + "HEALING", + "MAINTENANCE", + "REBOOTING_BROKER", + "UPDATING",] +ClusterTypeType = Literal["PROVISIONED", "SERVERLESS"] +ConfigurationStateType = Literal["ACTIVE", "DELETE_FAILED", "DELETING"] +CustomerActionStatusType = Literal["ACTION_RECOMMENDED", "CRITICAL_ACTION_REQUIRED", "NONE"] +EnhancedMonitoringType = Literal["DEFAULT", "PER_BROKER", "PER_TOPIC_PER_BROKER", "PER_TOPIC_PER_PARTITION"] +KafkaVersionStatusType = Literal["ACTIVE", "DEPRECATED"] +ListClientVpcConnectionsPaginatorName = Literal["list_client_vpc_connections"] +ListClusterOperationsPaginatorName = Literal["list_cluster_operations"] +ListClusterOperationsV2PaginatorName = Literal["list_cluster_operations_v2"] +ListClustersPaginatorName = Literal["list_clusters"] +ListClustersV2PaginatorName = Literal["list_clusters_v2"] +ListConfigurationRevisionsPaginatorName = Literal["list_configuration_revisions"] +ListConfigurationsPaginatorName = Literal["list_configurations"] +ListKafkaVersionsPaginatorName = Literal["list_kafka_versions"] +ListNodesPaginatorName = Literal["list_nodes"] +ListReplicatorsPaginatorName = Literal["list_replicators"] +ListScramSecretsPaginatorName = Literal["list_scram_secrets"] +ListVpcConnectionsPaginatorName = Literal["list_vpc_connections"] +NodeTypeType = Literal["BROKER"] +ReplicationStartingPositionTypeType = Literal["EARLIEST", "LATEST"] +ReplicatorStateType = Literal["CREATING", "DELETING", "FAILED", "RUNNING", "UPDATING"] +StorageModeType = Literal["LOCAL", "TIERED"] +TargetCompressionTypeType = Literal["GZIP", "LZ4", "NONE", "SNAPPY", "ZSTD"] +UserIdentityTypeType = Literal["AWSACCOUNT", "AWSSERVICE"] +VpcConnectionStateType = Literal["AVAILABLE", + "CREATING", + "DEACTIVATING", + "DELETING", + "FAILED", + "INACTIVE", + "REJECTED", + "REJECTING",] +KafkaServiceName = Literal["kafka"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_client_vpc_connections", + "list_cluster_operations", + "list_cluster_operations_v2", + "list_clusters", + "list_clusters_v2", + "list_configuration_revisions", + "list_configurations", + "list_kafka_versions", + "list_nodes", + "list_replicators", + "list_scram_secrets", + "list_vpc_connections",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +ClientAuthenticationUnionTypeDef = Union[ 'ClientAuthenticationTypeDef', 'ClientAuthenticationExtraOutputTypeDef' ] +BrokerNodeGroupInfoUnionTypeDef = Union[ 'BrokerNodeGroupInfoTypeDef', 'BrokerNodeGroupInfoExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/kafkaconnect_classes.py b/aws_resource_validator/pydantic_models/kafkaconnect_classes.py new file mode 100644 index 00000000..2232de8b --- /dev/null +++ b/aws_resource_validator/pydantic_models/kafkaconnect_classes.py @@ -0,0 +1,451 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kafkaconnect_constants import * + +class VpcDescriptionTypeDef(BaseModel): + securityGroups: Optional[List[str]] = None + subnets: Optional[List[str]] = None + +class VpcTypeDef(BaseModel): + subnets: Sequence[str] + securityGroups: Optional[Sequence[str]] = None + +class ScaleInPolicyDescriptionTypeDef(BaseModel): + cpuUtilizationPercentage: Optional[int] = None + +class ScaleOutPolicyDescriptionTypeDef(BaseModel): + cpuUtilizationPercentage: Optional[int] = None + +class ScaleInPolicyTypeDef(BaseModel): + cpuUtilizationPercentage: int + +class ScaleOutPolicyTypeDef(BaseModel): + cpuUtilizationPercentage: int + +class ScaleInPolicyUpdateTypeDef(BaseModel): + cpuUtilizationPercentage: int + +class ScaleOutPolicyUpdateTypeDef(BaseModel): + cpuUtilizationPercentage: int + +class ProvisionedCapacityDescriptionTypeDef(BaseModel): + mcuCount: Optional[int] = None + workerCount: Optional[int] = None + +class ProvisionedCapacityTypeDef(BaseModel): + mcuCount: int + workerCount: int + +class ProvisionedCapacityUpdateTypeDef(BaseModel): + mcuCount: int + workerCount: int + +class CloudWatchLogsLogDeliveryDescriptionTypeDef(BaseModel): + enabled: Optional[bool] = None + logGroup: Optional[str] = None + +class CloudWatchLogsLogDeliveryTypeDef(BaseModel): + enabled: bool + logGroup: Optional[str] = None + +class KafkaClusterClientAuthenticationDescriptionTypeDef(BaseModel): + authenticationType: Optional[KafkaClusterClientAuthenticationTypeType] = None + +class KafkaClusterEncryptionInTransitDescriptionTypeDef(BaseModel): + encryptionType: Optional[KafkaClusterEncryptionInTransitTypeType] = None + +class WorkerConfigurationDescriptionTypeDef(BaseModel): + revision: Optional[int] = None + workerConfigurationArn: Optional[str] = None + +class KafkaClusterClientAuthenticationTypeDef(BaseModel): + authenticationType: KafkaClusterClientAuthenticationTypeType + +class KafkaClusterEncryptionInTransitTypeDef(BaseModel): + encryptionType: KafkaClusterEncryptionInTransitTypeType + +class WorkerConfigurationTypeDef(BaseModel): + revision: int + workerConfigurationArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateWorkerConfigurationRequestRequestTypeDef(BaseModel): + name: str + propertiesFileContent: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class WorkerConfigurationRevisionSummaryTypeDef(BaseModel): + creationTime: Optional[datetime] = None + description: Optional[str] = None + revision: Optional[int] = None + +class CustomPluginDescriptionTypeDef(BaseModel): + customPluginArn: Optional[str] = None + revision: Optional[int] = None + +class CustomPluginFileDescriptionTypeDef(BaseModel): + fileMd5: Optional[str] = None + fileSize: Optional[int] = None + +class S3LocationDescriptionTypeDef(BaseModel): + bucketArn: Optional[str] = None + fileKey: Optional[str] = None + objectVersion: Optional[str] = None + +class S3LocationTypeDef(BaseModel): + bucketArn: str + fileKey: str + objectVersion: Optional[str] = None + +class CustomPluginTypeDef(BaseModel): + customPluginArn: str + revision: int + +class DeleteConnectorRequestRequestTypeDef(BaseModel): + connectorArn: str + currentVersion: Optional[str] = None + +class DeleteCustomPluginRequestRequestTypeDef(BaseModel): + customPluginArn: str + +class DeleteWorkerConfigurationRequestRequestTypeDef(BaseModel): + workerConfigurationArn: str + +class DescribeConnectorRequestRequestTypeDef(BaseModel): + connectorArn: str + +class StateDescriptionTypeDef(BaseModel): + code: Optional[str] = None + message: Optional[str] = None + +class DescribeCustomPluginRequestRequestTypeDef(BaseModel): + customPluginArn: str + +class DescribeWorkerConfigurationRequestRequestTypeDef(BaseModel): + workerConfigurationArn: str + +class WorkerConfigurationRevisionDescriptionTypeDef(BaseModel): + creationTime: Optional[datetime] = None + description: Optional[str] = None + propertiesFileContent: Optional[str] = None + revision: Optional[int] = None + +class FirehoseLogDeliveryDescriptionTypeDef(BaseModel): + deliveryStream: Optional[str] = None + enabled: Optional[bool] = None + +class FirehoseLogDeliveryTypeDef(BaseModel): + enabled: bool + deliveryStream: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListConnectorsRequestRequestTypeDef(BaseModel): + connectorNamePrefix: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListCustomPluginsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + namePrefix: Optional[str] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListWorkerConfigurationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + namePrefix: Optional[str] = None + nextToken: Optional[str] = None + +class S3LogDeliveryDescriptionTypeDef(BaseModel): + bucket: Optional[str] = None + enabled: Optional[bool] = None + prefix: Optional[str] = None + +class S3LogDeliveryTypeDef(BaseModel): + enabled: bool + bucket: Optional[str] = None + prefix: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class ApacheKafkaClusterDescriptionTypeDef(BaseModel): + bootstrapServers: Optional[str] = None + vpc: Optional[VpcDescriptionTypeDef] = None + +class ApacheKafkaClusterTypeDef(BaseModel): + bootstrapServers: str + vpc: VpcTypeDef + +class AutoScalingDescriptionTypeDef(BaseModel): + maxWorkerCount: Optional[int] = None + mcuCount: Optional[int] = None + minWorkerCount: Optional[int] = None + scaleInPolicy: Optional[ScaleInPolicyDescriptionTypeDef] = None + scaleOutPolicy: Optional[ScaleOutPolicyDescriptionTypeDef] = None + +class AutoScalingTypeDef(BaseModel): + maxWorkerCount: int + mcuCount: int + minWorkerCount: int + scaleInPolicy: Optional[ScaleInPolicyTypeDef] = None + scaleOutPolicy: Optional[ScaleOutPolicyTypeDef] = None + +class AutoScalingUpdateTypeDef(BaseModel): + maxWorkerCount: int + mcuCount: int + minWorkerCount: int + scaleInPolicy: ScaleInPolicyUpdateTypeDef + scaleOutPolicy: ScaleOutPolicyUpdateTypeDef + +class CreateConnectorResponseTypeDef(BaseModel): + connectorArn: str + connectorName: str + connectorState: ConnectorStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomPluginResponseTypeDef(BaseModel): + customPluginArn: str + customPluginState: CustomPluginStateType + name: str + revision: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConnectorResponseTypeDef(BaseModel): + connectorArn: str + connectorState: ConnectorStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCustomPluginResponseTypeDef(BaseModel): + customPluginArn: str + customPluginState: CustomPluginStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkerConfigurationResponseTypeDef(BaseModel): + workerConfigurationArn: str + workerConfigurationState: WorkerConfigurationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectorResponseTypeDef(BaseModel): + connectorArn: str + connectorState: ConnectorStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkerConfigurationResponseTypeDef(BaseModel): + creationTime: datetime + latestRevision: WorkerConfigurationRevisionSummaryTypeDef + name: str + workerConfigurationArn: str + workerConfigurationState: WorkerConfigurationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class WorkerConfigurationSummaryTypeDef(BaseModel): + creationTime: Optional[datetime] = None + description: Optional[str] = None + latestRevision: Optional[WorkerConfigurationRevisionSummaryTypeDef] = None + name: Optional[str] = None + workerConfigurationArn: Optional[str] = None + workerConfigurationState: Optional[WorkerConfigurationStateType] = None + +class PluginDescriptionTypeDef(BaseModel): + customPlugin: Optional[CustomPluginDescriptionTypeDef] = None + +class CustomPluginLocationDescriptionTypeDef(BaseModel): + s3Location: Optional[S3LocationDescriptionTypeDef] = None + +class CustomPluginLocationTypeDef(BaseModel): + s3Location: S3LocationTypeDef + +class PluginTypeDef(BaseModel): + customPlugin: CustomPluginTypeDef + +class DescribeWorkerConfigurationResponseTypeDef(BaseModel): + creationTime: datetime + description: str + latestRevision: WorkerConfigurationRevisionDescriptionTypeDef + name: str + workerConfigurationArn: str + workerConfigurationState: WorkerConfigurationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectorsRequestListConnectorsPaginateTypeDef(BaseModel): + connectorNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomPluginsRequestListCustomPluginsPaginateTypeDef(BaseModel): + namePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkerConfigurationsRequestListWorkerConfigurationsPaginateTypeDef(BaseModel): + namePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class WorkerLogDeliveryDescriptionTypeDef(BaseModel): + cloudWatchLogs: Optional[CloudWatchLogsLogDeliveryDescriptionTypeDef] = None + firehose: Optional[FirehoseLogDeliveryDescriptionTypeDef] = None + s3: Optional[S3LogDeliveryDescriptionTypeDef] = None + +class WorkerLogDeliveryTypeDef(BaseModel): + cloudWatchLogs: Optional[CloudWatchLogsLogDeliveryTypeDef] = None + firehose: Optional[FirehoseLogDeliveryTypeDef] = None + s3: Optional[S3LogDeliveryTypeDef] = None + +class KafkaClusterDescriptionTypeDef(BaseModel): + apacheKafkaCluster: Optional[ApacheKafkaClusterDescriptionTypeDef] = None + +class KafkaClusterTypeDef(BaseModel): + apacheKafkaCluster: ApacheKafkaClusterTypeDef + +class CapacityDescriptionTypeDef(BaseModel): + autoScaling: Optional[AutoScalingDescriptionTypeDef] = None + provisionedCapacity: Optional[ProvisionedCapacityDescriptionTypeDef] = None + +class CapacityTypeDef(BaseModel): + autoScaling: Optional[AutoScalingTypeDef] = None + provisionedCapacity: Optional[ProvisionedCapacityTypeDef] = None + +class CapacityUpdateTypeDef(BaseModel): + autoScaling: Optional[AutoScalingUpdateTypeDef] = None + provisionedCapacity: Optional[ProvisionedCapacityUpdateTypeDef] = None + +class ListWorkerConfigurationsResponseTypeDef(BaseModel): + nextToken: str + workerConfigurations: List[WorkerConfigurationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CustomPluginRevisionSummaryTypeDef(BaseModel): + contentType: Optional[CustomPluginContentTypeType] = None + creationTime: Optional[datetime] = None + description: Optional[str] = None + fileDescription: Optional[CustomPluginFileDescriptionTypeDef] = None + location: Optional[CustomPluginLocationDescriptionTypeDef] = None + revision: Optional[int] = None + +class CreateCustomPluginRequestRequestTypeDef(BaseModel): + contentType: CustomPluginContentTypeType + location: CustomPluginLocationTypeDef + name: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class LogDeliveryDescriptionTypeDef(BaseModel): + workerLogDelivery: Optional[WorkerLogDeliveryDescriptionTypeDef] = None + +class LogDeliveryTypeDef(BaseModel): + workerLogDelivery: WorkerLogDeliveryTypeDef + +class UpdateConnectorRequestRequestTypeDef(BaseModel): + capacity: CapacityUpdateTypeDef + connectorArn: str + currentVersion: str + +class CustomPluginSummaryTypeDef(BaseModel): + creationTime: Optional[datetime] = None + customPluginArn: Optional[str] = None + customPluginState: Optional[CustomPluginStateType] = None + description: Optional[str] = None + latestRevision: Optional[CustomPluginRevisionSummaryTypeDef] = None + name: Optional[str] = None + +class DescribeCustomPluginResponseTypeDef(BaseModel): + creationTime: datetime + customPluginArn: str + customPluginState: CustomPluginStateType + description: str + latestRevision: CustomPluginRevisionSummaryTypeDef + name: str + stateDescription: StateDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectorSummaryTypeDef(BaseModel): + capacity: Optional[CapacityDescriptionTypeDef] = None + connectorArn: Optional[str] = None + connectorDescription: Optional[str] = None + connectorName: Optional[str] = None + connectorState: Optional[ConnectorStateType] = None + creationTime: Optional[datetime] = None + currentVersion: Optional[str] = None + kafkaCluster: Optional[KafkaClusterDescriptionTypeDef] = None + kafkaClusterClientAuthentication: Optional[ KafkaClusterClientAuthenticationDescriptionTypeDef ] = None + kafkaClusterEncryptionInTransit: Optional[ KafkaClusterEncryptionInTransitDescriptionTypeDef ] = None + kafkaConnectVersion: Optional[str] = None + logDelivery: Optional[LogDeliveryDescriptionTypeDef] = None + plugins: Optional[List[PluginDescriptionTypeDef]] = None + serviceExecutionRoleArn: Optional[str] = None + workerConfiguration: Optional[WorkerConfigurationDescriptionTypeDef] = None + +class DescribeConnectorResponseTypeDef(BaseModel): + capacity: CapacityDescriptionTypeDef + connectorArn: str + connectorConfiguration: Dict[str, str] + connectorDescription: str + connectorName: str + connectorState: ConnectorStateType + creationTime: datetime + currentVersion: str + kafkaCluster: KafkaClusterDescriptionTypeDef + kafkaClusterClientAuthentication: KafkaClusterClientAuthenticationDescriptionTypeDef + kafkaClusterEncryptionInTransit: KafkaClusterEncryptionInTransitDescriptionTypeDef + kafkaConnectVersion: str + logDelivery: LogDeliveryDescriptionTypeDef + plugins: List[PluginDescriptionTypeDef] + serviceExecutionRoleArn: str + stateDescription: StateDescriptionTypeDef + workerConfiguration: WorkerConfigurationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorRequestRequestTypeDef(BaseModel): + capacity: CapacityTypeDef + connectorConfiguration: Mapping[str, str] + connectorName: str + kafkaCluster: KafkaClusterTypeDef + kafkaClusterClientAuthentication: KafkaClusterClientAuthenticationTypeDef + kafkaClusterEncryptionInTransit: KafkaClusterEncryptionInTransitTypeDef + kafkaConnectVersion: str + plugins: Sequence[PluginTypeDef] + serviceExecutionRoleArn: str + connectorDescription: Optional[str] = None + logDelivery: Optional[LogDeliveryTypeDef] = None + tags: Optional[Mapping[str, str]] = None + workerConfiguration: Optional[WorkerConfigurationTypeDef] = None + +class ListCustomPluginsResponseTypeDef(BaseModel): + customPlugins: List[CustomPluginSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectorsResponseTypeDef(BaseModel): + connectors: List[ConnectorSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kafkaconnect_constants.py b/aws_resource_validator/pydantic_models/kafkaconnect_constants.py new file mode 100644 index 00000000..d546c871 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kafkaconnect_constants.py @@ -0,0 +1,419 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConnectorStateType = Literal["CREATING", "DELETING", "FAILED", "RUNNING", "UPDATING"] +CustomPluginContentTypeType = Literal["JAR", "ZIP"] +CustomPluginStateType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETING", "UPDATE_FAILED", "UPDATING"] +KafkaClusterClientAuthenticationTypeType = Literal["IAM", "NONE"] +KafkaClusterEncryptionInTransitTypeType = Literal["PLAINTEXT", "TLS"] +ListConnectorsPaginatorName = Literal["list_connectors"] +ListCustomPluginsPaginatorName = Literal["list_custom_plugins"] +ListWorkerConfigurationsPaginatorName = Literal["list_worker_configurations"] +WorkerConfigurationStateType = Literal["ACTIVE", "DELETING"] +KafkaConnectServiceName = Literal["kafkaconnect"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_connectors", "list_custom_plugins", "list_worker_configurations"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/kendra_classes.py b/aws_resource_validator/pydantic_models/kendra_classes.py new file mode 100644 index 00000000..399c73ab --- /dev/null +++ b/aws_resource_validator/pydantic_models/kendra_classes.py @@ -0,0 +1,1658 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kendra_constants import * + +class AccessControlConfigurationSummaryTypeDef(BaseModel): + Id: str + +class AccessControlListConfigurationTypeDef(BaseModel): + KeyPath: Optional[str] = None + +class AclConfigurationTypeDef(BaseModel): + AllowedGroupsColumnName: str + +class DataSourceToIndexFieldMappingTypeDef(BaseModel): + DataSourceFieldName: str + IndexFieldName: str + DateFieldFormat: Optional[str] = None + +class DataSourceVpcConfigurationTypeDef(BaseModel): + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + +class S3PathTypeDef(BaseModel): + Bucket: str + Key: str + +class EntityConfigurationTypeDef(BaseModel): + EntityId: str + EntityType: EntityTypeType + +class FailedEntityTypeDef(BaseModel): + EntityId: Optional[str] = None + ErrorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class EntityPersonaConfigurationTypeDef(BaseModel): + EntityId: str + Persona: PersonaType + +class SuggestableConfigTypeDef(BaseModel): + AttributeName: Optional[str] = None + Suggestable: Optional[bool] = None + +class BasicAuthenticationConfigurationTypeDef(BaseModel): + Host: str + Port: int + Credentials: str + +class DataSourceSyncJobMetricTargetTypeDef(BaseModel): + DataSourceId: str + DataSourceSyncJobId: Optional[str] = None + +class BatchDeleteDocumentResponseFailedDocumentTypeDef(BaseModel): + Id: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class BatchDeleteFeaturedResultsSetErrorTypeDef(BaseModel): + Id: str + ErrorCode: ErrorCodeType + ErrorMessage: str + +class BatchDeleteFeaturedResultsSetRequestRequestTypeDef(BaseModel): + IndexId: str + FeaturedResultsSetIds: Sequence[str] + +class BatchGetDocumentStatusResponseErrorTypeDef(BaseModel): + DocumentId: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class StatusTypeDef(BaseModel): + DocumentId: Optional[str] = None + DocumentStatus: Optional[DocumentStatusType] = None + FailureCode: Optional[str] = None + FailureReason: Optional[str] = None + +class BatchPutDocumentResponseFailedDocumentTypeDef(BaseModel): + Id: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class CapacityUnitsConfigurationTypeDef(BaseModel): + StorageCapacityUnits: int + QueryCapacityUnits: int + +class ClearQuerySuggestionsRequestRequestTypeDef(BaseModel): + IndexId: str + +class ExpandConfigurationTypeDef(BaseModel): + MaxResultItemsToExpand: Optional[int] = None + MaxExpandedResultsPerItem: Optional[int] = None + +class SortingConfigurationTypeDef(BaseModel): + DocumentAttributeKey: str + SortOrder: SortOrderType + +class ConfluenceAttachmentToIndexFieldMappingTypeDef(BaseModel): + DataSourceFieldName: Optional[ConfluenceAttachmentFieldNameType] = None + DateFieldFormat: Optional[str] = None + IndexFieldName: Optional[str] = None + +class ConfluenceBlogToIndexFieldMappingTypeDef(BaseModel): + DataSourceFieldName: Optional[ConfluenceBlogFieldNameType] = None + DateFieldFormat: Optional[str] = None + IndexFieldName: Optional[str] = None + +class ProxyConfigurationTypeDef(BaseModel): + Host: str + Port: int + Credentials: Optional[str] = None + +class ConfluencePageToIndexFieldMappingTypeDef(BaseModel): + DataSourceFieldName: Optional[ConfluencePageFieldNameType] = None + DateFieldFormat: Optional[str] = None + IndexFieldName: Optional[str] = None + +class ConfluenceSpaceToIndexFieldMappingTypeDef(BaseModel): + DataSourceFieldName: Optional[ConfluenceSpaceFieldNameType] = None + DateFieldFormat: Optional[str] = None + IndexFieldName: Optional[str] = None + +class ConnectionConfigurationTypeDef(BaseModel): + DatabaseHost: str + DatabasePort: int + DatabaseName: str + TableName: str + SecretArn: str + +class ContentSourceConfigurationTypeDef(BaseModel): + DataSourceIds: Optional[Sequence[str]] = None + FaqIds: Optional[Sequence[str]] = None + DirectPutContent: Optional[bool] = None + +class CorrectionTypeDef(BaseModel): + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + Term: Optional[str] = None + CorrectedTerm: Optional[str] = None + +class PrincipalTypeDef(BaseModel): + Name: str + Type: PrincipalTypeType + Access: ReadAccessTypeType + DataSourceId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class FeaturedDocumentTypeDef(BaseModel): + Id: Optional[str] = None + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + +class UserGroupResolutionConfigurationTypeDef(BaseModel): + UserGroupResolutionMode: UserGroupResolutionModeType + +class TemplateConfigurationTypeDef(BaseModel): + Template: Optional[Mapping[str, Any]] = None + +class DataSourceGroupTypeDef(BaseModel): + GroupId: str + DataSourceId: str + +class DataSourceSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Type: Optional[DataSourceTypeType] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + Status: Optional[DataSourceStatusType] = None + LanguageCode: Optional[str] = None + +class DataSourceSyncJobMetricsTypeDef(BaseModel): + DocumentsAdded: Optional[str] = None + DocumentsModified: Optional[str] = None + DocumentsDeleted: Optional[str] = None + DocumentsFailed: Optional[str] = None + DocumentsScanned: Optional[str] = None + +class SqlConfigurationTypeDef(BaseModel): + QueryIdentifiersEnclosingOption: Optional[QueryIdentifiersEnclosingOptionType] = None + +class DeleteAccessControlConfigurationRequestRequestTypeDef(BaseModel): + IndexId: str + Id: str + +class DeleteDataSourceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DeleteExperienceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DeleteFaqRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DeleteIndexRequestRequestTypeDef(BaseModel): + Id: str + +class DeletePrincipalMappingRequestRequestTypeDef(BaseModel): + IndexId: str + GroupId: str + DataSourceId: Optional[str] = None + OrderingId: Optional[int] = None + +class DeleteQuerySuggestionsBlockListRequestRequestTypeDef(BaseModel): + IndexId: str + Id: str + +class DeleteThesaurusRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DescribeAccessControlConfigurationRequestRequestTypeDef(BaseModel): + IndexId: str + Id: str + +class DescribeDataSourceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DescribeExperienceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class ExperienceEndpointTypeDef(BaseModel): + EndpointType: Optional[Literal["HOME"]] = None + Endpoint: Optional[str] = None + +class DescribeFaqRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DescribeFeaturedResultsSetRequestRequestTypeDef(BaseModel): + IndexId: str + FeaturedResultsSetId: str + +class FeaturedDocumentMissingTypeDef(BaseModel): + Id: Optional[str] = None + +class FeaturedDocumentWithMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Title: Optional[str] = None + URI: Optional[str] = None + +class DescribeIndexRequestRequestTypeDef(BaseModel): + Id: str + +class DescribePrincipalMappingRequestRequestTypeDef(BaseModel): + IndexId: str + GroupId: str + DataSourceId: Optional[str] = None + +class GroupOrderingIdSummaryTypeDef(BaseModel): + Status: Optional[PrincipalMappingStatusType] = None + LastUpdatedAt: Optional[datetime] = None + ReceivedAt: Optional[datetime] = None + OrderingId: Optional[int] = None + FailureReason: Optional[str] = None + +class DescribeQuerySuggestionsBlockListRequestRequestTypeDef(BaseModel): + IndexId: str + Id: str + +class DescribeQuerySuggestionsConfigRequestRequestTypeDef(BaseModel): + IndexId: str + +class DescribeThesaurusRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class DisassociatePersonasFromEntitiesRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + EntityIds: Sequence[str] + +class RelevanceTypeDef(BaseModel): + Freshness: Optional[bool] = None + Importance: Optional[int] = None + Duration: Optional[str] = None + RankOrder: Optional[OrderType] = None + ValueImportanceMap: Optional[Dict[str, int]] = None + +class SearchTypeDef(BaseModel): + Facetable: Optional[bool] = None + Searchable: Optional[bool] = None + Displayable: Optional[bool] = None + Sortable: Optional[bool] = None + +class DocumentsMetadataConfigurationTypeDef(BaseModel): + S3Prefix: Optional[str] = None + +class EntityDisplayDataTypeDef(BaseModel): + UserName: Optional[str] = None + GroupName: Optional[str] = None + IdentifiedUserName: Optional[str] = None + FirstName: Optional[str] = None + LastName: Optional[str] = None + +class UserIdentityConfigurationTypeDef(BaseModel): + IdentityAttributeName: Optional[str] = None + +class FacetResultTypeDef(BaseModel): + DocumentAttributeKey: Optional[str] = None + DocumentAttributeValueType: Optional[DocumentAttributeValueTypeType] = None + DocumentAttributeValueCountPairs: Optional[ List["DocumentAttributeValueCountPairTypeDef"] ] = None + +class FacetTypeDef(BaseModel): + DocumentAttributeKey: Optional[str] = None + Facets: Optional[Sequence[Dict[str, Any]]] = None + MaxResults: Optional[int] = None + +class FaqStatisticsTypeDef(BaseModel): + IndexedQuestionAnswersCount: int + +class FaqSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[FaqStatusType] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + FileFormat: Optional[FaqFileFormatType] = None + LanguageCode: Optional[str] = None + +class FeaturedResultsSetSummaryTypeDef(BaseModel): + FeaturedResultsSetId: Optional[str] = None + FeaturedResultsSetName: Optional[str] = None + Status: Optional[FeaturedResultsSetStatusType] = None + LastUpdatedTimestamp: Optional[int] = None + CreationTimestamp: Optional[int] = None + +class GetSnapshotsRequestRequestTypeDef(BaseModel): + IndexId: str + Interval: IntervalType + MetricType: MetricTypeType + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TimeRangeTypeDef(BaseModel): + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class GitHubDocumentCrawlPropertiesTypeDef(BaseModel): + CrawlRepositoryDocuments: Optional[bool] = None + CrawlIssue: Optional[bool] = None + CrawlIssueComment: Optional[bool] = None + CrawlIssueCommentAttachment: Optional[bool] = None + CrawlPullRequest: Optional[bool] = None + CrawlPullRequestComment: Optional[bool] = None + CrawlPullRequestCommentAttachment: Optional[bool] = None + +class SaaSConfigurationTypeDef(BaseModel): + OrganizationName: str + HostUrl: str + +class MemberGroupTypeDef(BaseModel): + GroupId: str + DataSourceId: Optional[str] = None + +class MemberUserTypeDef(BaseModel): + UserId: str + +class GroupSummaryTypeDef(BaseModel): + GroupId: Optional[str] = None + OrderingId: Optional[int] = None + +class HighlightTypeDef(BaseModel): + BeginOffset: int + EndOffset: int + TopAnswer: Optional[bool] = None + Type: Optional[HighlightTypeType] = None + +class IndexConfigurationSummaryTypeDef(BaseModel): + CreatedAt: datetime + UpdatedAt: datetime + Status: IndexStatusType + Name: Optional[str] = None + Id: Optional[str] = None + Edition: Optional[IndexEditionType] = None + +class TextDocumentStatisticsTypeDef(BaseModel): + IndexedTextDocumentsCount: int + IndexedTextBytes: int + +class JsonTokenTypeConfigurationTypeDef(BaseModel): + UserNameAttributeField: str + GroupAttributeField: str + +class JwtTokenTypeConfigurationTypeDef(BaseModel): + KeyLocation: KeyLocationType + URL: Optional[str] = None + SecretManagerArn: Optional[str] = None + UserNameAttributeField: Optional[str] = None + GroupAttributeField: Optional[str] = None + Issuer: Optional[str] = None + ClaimRegex: Optional[str] = None + +class ListAccessControlConfigurationsRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataSourcesRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEntityPersonasRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PersonasSummaryTypeDef(BaseModel): + EntityId: Optional[str] = None + Persona: Optional[PersonaType] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ListExperienceEntitiesRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + NextToken: Optional[str] = None + +class ListExperiencesRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFaqsRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFeaturedResultsSetsRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListGroupsOlderThanOrderingIdRequestRequestTypeDef(BaseModel): + IndexId: str + OrderingId: int + DataSourceId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIndicesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListQuerySuggestionsBlockListsRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QuerySuggestionsBlockListSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[QuerySuggestionsBlockListStatusType] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + ItemCount: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ListThesauriRequestRequestTypeDef(BaseModel): + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ThesaurusSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ThesaurusStatusType] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class SpellCorrectionConfigurationTypeDef(BaseModel): + IncludeQuerySpellCheckSuggestions: bool + +class ScoreAttributesTypeDef(BaseModel): + ScoreConfidence: Optional[ScoreConfidenceType] = None + +class WarningTypeDef(BaseModel): + Message: Optional[str] = None + Code: Optional[Literal["QUERY_LANGUAGE_INVALID_SYNTAX"]] = None + +class RelevanceFeedbackTypeDef(BaseModel): + ResultId: str + RelevanceValue: RelevanceTypeType + +class SeedUrlConfigurationTypeDef(BaseModel): + SeedUrls: Sequence[str] + WebCrawlerMode: Optional[WebCrawlerModeType] = None + +class SiteMapsConfigurationTypeDef(BaseModel): + SiteMaps: Sequence[str] + +class StartDataSourceSyncJobRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class StopDataSourceSyncJobRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + +class SuggestionHighlightTypeDef(BaseModel): + BeginOffset: Optional[int] = None + EndOffset: Optional[int] = None + +class TableCellTypeDef(BaseModel): + Value: Optional[str] = None + TopAnswer: Optional[bool] = None + Highlighted: Optional[bool] = None + Header: Optional[bool] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class ColumnConfigurationTypeDef(BaseModel): + DocumentIdColumnName: str + DocumentDataColumnName: str + ChangeDetectingColumns: Sequence[str] + DocumentTitleColumnName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class GoogleDriveConfigurationTypeDef(BaseModel): + SecretArn: str + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + ExcludeMimeTypes: Optional[Sequence[str]] = None + ExcludeUserAccounts: Optional[Sequence[str]] = None + ExcludeSharedDrives: Optional[Sequence[str]] = None + +class SalesforceChatterFeedConfigurationTypeDef(BaseModel): + DocumentDataFieldName: str + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + IncludeFilterTypes: Optional[Sequence[SalesforceChatterFeedIncludeFilterTypeType]] = None + +class SalesforceCustomKnowledgeArticleTypeConfigurationTypeDef(BaseModel): + Name: str + DocumentDataFieldName: str + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class SalesforceStandardKnowledgeArticleTypeConfigurationTypeDef(BaseModel): + DocumentDataFieldName: str + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class SalesforceStandardObjectAttachmentConfigurationTypeDef(BaseModel): + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class SalesforceStandardObjectConfigurationTypeDef(BaseModel): + Name: SalesforceStandardObjectNameType + DocumentDataFieldName: str + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class ServiceNowKnowledgeArticleConfigurationTypeDef(BaseModel): + DocumentDataFieldName: str + CrawlAttachments: Optional[bool] = None + IncludeAttachmentFilePatterns: Optional[Sequence[str]] = None + ExcludeAttachmentFilePatterns: Optional[Sequence[str]] = None + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + FilterQuery: Optional[str] = None + +class ServiceNowServiceCatalogConfigurationTypeDef(BaseModel): + DocumentDataFieldName: str + CrawlAttachments: Optional[bool] = None + IncludeAttachmentFilePatterns: Optional[Sequence[str]] = None + ExcludeAttachmentFilePatterns: Optional[Sequence[str]] = None + DocumentTitleFieldName: Optional[str] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class WorkDocsConfigurationTypeDef(BaseModel): + OrganizationId: str + CrawlComments: Optional[bool] = None + UseChangeLog: Optional[bool] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class BoxConfigurationTypeDef(BaseModel): + EnterpriseId: str + SecretArn: str + UseChangeLog: Optional[bool] = None + CrawlComments: Optional[bool] = None + CrawlTasks: Optional[bool] = None + CrawlWebLinks: Optional[bool] = None + FileFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + TaskFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + CommentFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + WebLinkFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + +class FsxConfigurationTypeDef(BaseModel): + FileSystemId: str + FileSystemType: Literal["WINDOWS"] + VpcConfiguration: DataSourceVpcConfigurationTypeDef + SecretArn: Optional[str] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class JiraConfigurationTypeDef(BaseModel): + JiraAccountUrl: str + SecretArn: str + UseChangeLog: Optional[bool] = None + Project: Optional[Sequence[str]] = None + IssueType: Optional[Sequence[str]] = None + Status: Optional[Sequence[str]] = None + IssueSubEntityFilter: Optional[Sequence[IssueSubEntityType]] = None + AttachmentFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + CommentFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + IssueFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + ProjectFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + WorkLogFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + +class QuipConfigurationTypeDef(BaseModel): + Domain: str + SecretArn: str + CrawlFileComments: Optional[bool] = None + CrawlChatRooms: Optional[bool] = None + CrawlAttachments: Optional[bool] = None + FolderIds: Optional[Sequence[str]] = None + ThreadFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + MessageFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + AttachmentFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + +class SlackConfigurationTypeDef(BaseModel): + TeamId: str + SecretArn: str + SlackEntityList: Sequence[SlackEntityType] + SinceCrawlDate: str + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + UseChangeLog: Optional[bool] = None + CrawlBotMessage: Optional[bool] = None + ExcludeArchived: Optional[bool] = None + LookBackPeriod: Optional[int] = None + PrivateChannelFilter: Optional[Sequence[str]] = None + PublicChannelFilter: Optional[Sequence[str]] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + +class AlfrescoConfigurationTypeDef(BaseModel): + SiteUrl: str + SiteId: str + SecretArn: str + SslCertificateS3Path: S3PathTypeDef + CrawlSystemFolders: Optional[bool] = None + CrawlComments: Optional[bool] = None + EntityFilter: Optional[Sequence[AlfrescoEntityType]] = None + DocumentLibraryFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + BlogFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + WikiFieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + +class OnPremiseConfigurationTypeDef(BaseModel): + HostUrl: str + OrganizationName: str + SslCertificateS3Path: S3PathTypeDef + +class OneDriveUsersTypeDef(BaseModel): + OneDriveUserList: Optional[Sequence[str]] = None + OneDriveUserS3Path: Optional[S3PathTypeDef] = None + +class UpdateQuerySuggestionsBlockListRequestRequestTypeDef(BaseModel): + IndexId: str + Id: str + Name: Optional[str] = None + Description: Optional[str] = None + SourceS3Path: Optional[S3PathTypeDef] = None + RoleArn: Optional[str] = None + +class UpdateThesaurusRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + Name: Optional[str] = None + Description: Optional[str] = None + RoleArn: Optional[str] = None + SourceS3Path: Optional[S3PathTypeDef] = None + +class AssociateEntitiesToExperienceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + EntityList: Sequence[EntityConfigurationTypeDef] + +class DisassociateEntitiesFromExperienceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + EntityList: Sequence[EntityConfigurationTypeDef] + +class AssociateEntitiesToExperienceResponseTypeDef(BaseModel): + FailedEntityList: List[FailedEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociatePersonasToEntitiesResponseTypeDef(BaseModel): + FailedEntityList: List[FailedEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessControlConfigurationResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperienceResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFaqResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIndexResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQuerySuggestionsBlockListResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThesaurusResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFaqResponseTypeDef(BaseModel): + Id: str + IndexId: str + Name: str + Description: str + CreatedAt: datetime + UpdatedAt: datetime + S3Path: S3PathTypeDef + Status: FaqStatusType + RoleArn: str + ErrorMessage: str + FileFormat: FaqFileFormatType + LanguageCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeQuerySuggestionsBlockListResponseTypeDef(BaseModel): + IndexId: str + Id: str + Name: str + Description: str + Status: QuerySuggestionsBlockListStatusType + ErrorMessage: str + CreatedAt: datetime + UpdatedAt: datetime + SourceS3Path: S3PathTypeDef + ItemCount: int + FileSizeBytes: int + RoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeThesaurusResponseTypeDef(BaseModel): + Id: str + IndexId: str + Name: str + Description: str + Status: ThesaurusStatusType + ErrorMessage: str + CreatedAt: datetime + UpdatedAt: datetime + RoleArn: str + SourceS3Path: S3PathTypeDef + FileSizeBytes: int + TermCount: int + SynonymRuleCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateEntitiesFromExperienceResponseTypeDef(BaseModel): + FailedEntityList: List[FailedEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociatePersonasFromEntitiesResponseTypeDef(BaseModel): + FailedEntityList: List[FailedEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessControlConfigurationsResponseTypeDef(BaseModel): + NextToken: str + AccessControlConfigurations: List[AccessControlConfigurationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataSourceSyncJobResponseTypeDef(BaseModel): + ExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociatePersonasToEntitiesRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + Personas: Sequence[EntityPersonaConfigurationTypeDef] + +class AttributeSuggestionsDescribeConfigTypeDef(BaseModel): + SuggestableConfigList: Optional[List[SuggestableConfigTypeDef]] = None + AttributeSuggestionsMode: Optional[AttributeSuggestionsModeType] = None + +class AttributeSuggestionsUpdateConfigTypeDef(BaseModel): + SuggestableConfigList: Optional[Sequence[SuggestableConfigTypeDef]] = None + AttributeSuggestionsMode: Optional[AttributeSuggestionsModeType] = None + +class AuthenticationConfigurationTypeDef(BaseModel): + BasicAuthentication: Optional[Sequence[BasicAuthenticationConfigurationTypeDef]] = None + +class BatchDeleteDocumentRequestRequestTypeDef(BaseModel): + IndexId: str + DocumentIdList: Sequence[str] + DataSourceSyncJobMetricTarget: Optional[DataSourceSyncJobMetricTargetTypeDef] = None + +class BatchDeleteDocumentResponseTypeDef(BaseModel): + FailedDocuments: List[BatchDeleteDocumentResponseFailedDocumentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteFeaturedResultsSetResponseTypeDef(BaseModel): + Errors: List[BatchDeleteFeaturedResultsSetErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetDocumentStatusResponseTypeDef(BaseModel): + Errors: List[BatchGetDocumentStatusResponseErrorTypeDef] + DocumentStatusList: List[StatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutDocumentResponseTypeDef(BaseModel): + FailedDocuments: List[BatchPutDocumentResponseFailedDocumentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ClickFeedbackTypeDef(BaseModel): + ResultId: str + ClickTime: TimestampTypeDef + +class DocumentAttributeValueTypeDef(BaseModel): + StringValue: Optional[str] = None + StringListValue: Optional[Sequence[str]] = None + LongValue: Optional[int] = None + DateValue: Optional[TimestampTypeDef] = None + +class CollapseConfigurationTypeDef(BaseModel): + DocumentAttributeKey: str + SortingConfigurations: Optional[Sequence[SortingConfigurationTypeDef]] = None + MissingAttributeKeyStrategy: Optional[MissingAttributeKeyStrategyType] = None + Expand: Optional[bool] = None + ExpandConfiguration: Optional[ExpandConfigurationTypeDef] = None + +class ConfluenceAttachmentConfigurationTypeDef(BaseModel): + CrawlAttachments: Optional[bool] = None + AttachmentFieldMappings: Optional[ Sequence[ConfluenceAttachmentToIndexFieldMappingTypeDef] ] = None + +class ConfluenceBlogConfigurationTypeDef(BaseModel): + BlogFieldMappings: Optional[Sequence[ConfluenceBlogToIndexFieldMappingTypeDef]] = None + +class SharePointConfigurationTypeDef(BaseModel): + SharePointVersion: SharePointVersionType + Urls: Sequence[str] + SecretArn: str + CrawlAttachments: Optional[bool] = None + UseChangeLog: Optional[bool] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + DocumentTitleFieldName: Optional[str] = None + DisableLocalGroups: Optional[bool] = None + SslCertificateS3Path: Optional[S3PathTypeDef] = None + AuthenticationType: Optional[SharePointOnlineAuthenticationTypeType] = None + ProxyConfiguration: Optional[ProxyConfigurationTypeDef] = None + +class ConfluencePageConfigurationTypeDef(BaseModel): + PageFieldMappings: Optional[Sequence[ConfluencePageToIndexFieldMappingTypeDef]] = None + +class ConfluenceSpaceConfigurationTypeDef(BaseModel): + CrawlPersonalSpaces: Optional[bool] = None + CrawlArchivedSpaces: Optional[bool] = None + IncludeSpaces: Optional[Sequence[str]] = None + ExcludeSpaces: Optional[Sequence[str]] = None + SpaceFieldMappings: Optional[Sequence[ConfluenceSpaceToIndexFieldMappingTypeDef]] = None + +class SpellCorrectedQueryTypeDef(BaseModel): + SuggestedQueryText: Optional[str] = None + Corrections: Optional[List[CorrectionTypeDef]] = None + +class HierarchicalPrincipalTypeDef(BaseModel): + PrincipalList: Sequence[PrincipalTypeDef] + +class CreateFaqRequestRequestTypeDef(BaseModel): + IndexId: str + Name: str + S3Path: S3PathTypeDef + RoleArn: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + FileFormat: Optional[FaqFileFormatType] = None + ClientToken: Optional[str] = None + LanguageCode: Optional[str] = None + +class CreateQuerySuggestionsBlockListRequestRequestTypeDef(BaseModel): + IndexId: str + Name: str + SourceS3Path: S3PathTypeDef + RoleArn: str + Description: Optional[str] = None + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateThesaurusRequestRequestTypeDef(BaseModel): + IndexId: str + Name: str + RoleArn: str + SourceS3Path: S3PathTypeDef + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateFeaturedResultsSetRequestRequestTypeDef(BaseModel): + IndexId: str + FeaturedResultsSetName: str + Description: Optional[str] = None + ClientToken: Optional[str] = None + Status: Optional[FeaturedResultsSetStatusType] = None + QueryTexts: Optional[Sequence[str]] = None + FeaturedDocuments: Optional[Sequence[FeaturedDocumentTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class FeaturedResultsSetTypeDef(BaseModel): + FeaturedResultsSetId: Optional[str] = None + FeaturedResultsSetName: Optional[str] = None + Description: Optional[str] = None + Status: Optional[FeaturedResultsSetStatusType] = None + QueryTexts: Optional[List[str]] = None + FeaturedDocuments: Optional[List[FeaturedDocumentTypeDef]] = None + LastUpdatedTimestamp: Optional[int] = None + CreationTimestamp: Optional[int] = None + +class UpdateFeaturedResultsSetRequestRequestTypeDef(BaseModel): + IndexId: str + FeaturedResultsSetId: str + FeaturedResultsSetName: Optional[str] = None + Description: Optional[str] = None + Status: Optional[FeaturedResultsSetStatusType] = None + QueryTexts: Optional[Sequence[str]] = None + FeaturedDocuments: Optional[Sequence[FeaturedDocumentTypeDef]] = None + +class UserContextTypeDef(BaseModel): + Token: Optional[str] = None + UserId: Optional[str] = None + Groups: Optional[Sequence[str]] = None + DataSourceGroups: Optional[Sequence[DataSourceGroupTypeDef]] = None + +class ListDataSourcesResponseTypeDef(BaseModel): + SummaryItems: List[DataSourceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceSyncJobTypeDef(BaseModel): + ExecutionId: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Status: Optional[DataSourceSyncJobStatusType] = None + ErrorMessage: Optional[str] = None + ErrorCode: Optional[ErrorCodeType] = None + DataSourceErrorCode: Optional[str] = None + Metrics: Optional[DataSourceSyncJobMetricsTypeDef] = None + +class ExperiencesSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + CreatedAt: Optional[datetime] = None + Status: Optional[ExperienceStatusType] = None + Endpoints: Optional[List[ExperienceEndpointTypeDef]] = None + +class DescribeFeaturedResultsSetResponseTypeDef(BaseModel): + FeaturedResultsSetId: str + FeaturedResultsSetName: str + Description: str + Status: FeaturedResultsSetStatusType + QueryTexts: List[str] + FeaturedDocumentsWithMetadata: List[FeaturedDocumentWithMetadataTypeDef] + FeaturedDocumentsMissing: List[FeaturedDocumentMissingTypeDef] + LastUpdatedTimestamp: int + CreationTimestamp: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePrincipalMappingResponseTypeDef(BaseModel): + IndexId: str + DataSourceId: str + GroupId: str + GroupOrderingIdSummaries: List[GroupOrderingIdSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentRelevanceConfigurationTypeDef(BaseModel): + Name: str + Relevance: RelevanceTypeDef + +class DocumentMetadataConfigurationTypeDef(BaseModel): + Name: str + Type: DocumentAttributeValueTypeType + Relevance: Optional[RelevanceTypeDef] = None + Search: Optional[SearchTypeDef] = None + +class S3DataSourceConfigurationTypeDef(BaseModel): + BucketName: str + InclusionPrefixes: Optional[Sequence[str]] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + DocumentsMetadataConfiguration: Optional[DocumentsMetadataConfigurationTypeDef] = None + AccessControlListConfiguration: Optional[AccessControlListConfigurationTypeDef] = None + +class ExperienceEntitiesSummaryTypeDef(BaseModel): + EntityId: Optional[str] = None + EntityType: Optional[EntityTypeType] = None + DisplayData: Optional[EntityDisplayDataTypeDef] = None + +class ExperienceConfigurationTypeDef(BaseModel): + ContentSourceConfiguration: Optional[ContentSourceConfigurationTypeDef] = None + UserIdentityConfiguration: Optional[UserIdentityConfigurationTypeDef] = None + +class ListFaqsResponseTypeDef(BaseModel): + NextToken: str + FaqSummaryItems: List[FaqSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFeaturedResultsSetsResponseTypeDef(BaseModel): + FeaturedResultsSetSummaryItems: List[FeaturedResultsSetSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSnapshotsResponseTypeDef(BaseModel): + SnapShotTimeFilter: TimeRangeTypeDef + SnapshotsDataHeader: List[str] + SnapshotsData: List[List[str]] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourceSyncJobsRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StartTimeFilter: Optional[TimeRangeTypeDef] = None + StatusFilter: Optional[DataSourceSyncJobStatusType] = None + +class GroupMembersTypeDef(BaseModel): + MemberGroups: Optional[Sequence[MemberGroupTypeDef]] = None + MemberUsers: Optional[Sequence[MemberUserTypeDef]] = None + S3PathforGroupMembers: Optional[S3PathTypeDef] = None + +class ListGroupsOlderThanOrderingIdResponseTypeDef(BaseModel): + GroupsSummaries: List[GroupSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TextWithHighlightsTypeDef(BaseModel): + Text: Optional[str] = None + Highlights: Optional[List[HighlightTypeDef]] = None + +class ListIndicesResponseTypeDef(BaseModel): + IndexConfigurationSummaryItems: List[IndexConfigurationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IndexStatisticsTypeDef(BaseModel): + FaqStatistics: FaqStatisticsTypeDef + TextDocumentStatistics: TextDocumentStatisticsTypeDef + +class UserTokenConfigurationTypeDef(BaseModel): + JwtTokenTypeConfiguration: Optional[JwtTokenTypeConfigurationTypeDef] = None + JsonTokenTypeConfiguration: Optional[JsonTokenTypeConfigurationTypeDef] = None + +class ListEntityPersonasResponseTypeDef(BaseModel): + SummaryItems: List[PersonasSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListQuerySuggestionsBlockListsResponseTypeDef(BaseModel): + BlockListSummaryItems: List[QuerySuggestionsBlockListSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThesauriResponseTypeDef(BaseModel): + NextToken: str + ThesaurusSummaryItems: List[ThesaurusSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UrlsTypeDef(BaseModel): + SeedUrlConfiguration: Optional[SeedUrlConfigurationTypeDef] = None + SiteMapsConfiguration: Optional[SiteMapsConfigurationTypeDef] = None + +class SuggestionTextWithHighlightsTypeDef(BaseModel): + Text: Optional[str] = None + Highlights: Optional[List[SuggestionHighlightTypeDef]] = None + +class TableRowTypeDef(BaseModel): + Cells: Optional[List[TableCellTypeDef]] = None + +class DatabaseConfigurationTypeDef(BaseModel): + DatabaseEngineType: DatabaseEngineTypeType + ConnectionConfiguration: ConnectionConfigurationTypeDef + ColumnConfiguration: ColumnConfigurationTypeDef + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + AclConfiguration: Optional[AclConfigurationTypeDef] = None + SqlConfiguration: Optional[SqlConfigurationTypeDef] = None + +class SalesforceKnowledgeArticleConfigurationTypeDef(BaseModel): + IncludedStates: Sequence[SalesforceKnowledgeArticleStateType] + StandardKnowledgeArticleTypeConfiguration: Optional[ SalesforceStandardKnowledgeArticleTypeConfigurationTypeDef ] = None + CustomKnowledgeArticleTypeConfigurations: Optional[ Sequence[SalesforceCustomKnowledgeArticleTypeConfigurationTypeDef] ] = None + +class ServiceNowConfigurationTypeDef(BaseModel): + HostUrl: str + SecretArn: str + ServiceNowBuildVersion: ServiceNowBuildVersionTypeType + KnowledgeArticleConfiguration: Optional[ ServiceNowKnowledgeArticleConfigurationTypeDef ] = None + ServiceCatalogConfiguration: Optional[ServiceNowServiceCatalogConfigurationTypeDef] = None + AuthenticationType: Optional[ServiceNowAuthenticationTypeType] = None + +class GitHubConfigurationTypeDef(BaseModel): + SecretArn: str + SaaSConfiguration: Optional[SaaSConfigurationTypeDef] = None + OnPremiseConfiguration: Optional[OnPremiseConfigurationTypeDef] = None + Type: Optional[TypeType] = None + UseChangeLog: Optional[bool] = None + GitHubDocumentCrawlProperties: Optional[GitHubDocumentCrawlPropertiesTypeDef] = None + RepositoryFilter: Optional[Sequence[str]] = None + InclusionFolderNamePatterns: Optional[Sequence[str]] = None + InclusionFileTypePatterns: Optional[Sequence[str]] = None + InclusionFileNamePatterns: Optional[Sequence[str]] = None + ExclusionFolderNamePatterns: Optional[Sequence[str]] = None + ExclusionFileTypePatterns: Optional[Sequence[str]] = None + ExclusionFileNamePatterns: Optional[Sequence[str]] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + GitHubRepositoryConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubCommitConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubIssueDocumentConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubIssueCommentConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubIssueAttachmentConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubPullRequestCommentConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubPullRequestDocumentConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + GitHubPullRequestDocumentAttachmentConfigurationFieldMappings: Optional[ Sequence[DataSourceToIndexFieldMappingTypeDef] ] = None + +class OneDriveConfigurationTypeDef(BaseModel): + TenantDomain: str + SecretArn: str + OneDriveUsers: OneDriveUsersTypeDef + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + FieldMappings: Optional[Sequence[DataSourceToIndexFieldMappingTypeDef]] = None + DisableLocalGroups: Optional[bool] = None + +class DescribeQuerySuggestionsConfigResponseTypeDef(BaseModel): + Mode: ModeType + Status: QuerySuggestionsStatusType + QueryLogLookBackWindowInDays: int + IncludeQueriesWithoutUserInformation: bool + MinimumNumberOfQueryingUsers: int + MinimumQueryCount: int + LastSuggestionsBuildTime: datetime + LastClearTime: datetime + TotalSuggestionsCount: int + AttributeSuggestionsConfig: AttributeSuggestionsDescribeConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateQuerySuggestionsConfigRequestRequestTypeDef(BaseModel): + IndexId: str + Mode: Optional[ModeType] = None + QueryLogLookBackWindowInDays: Optional[int] = None + IncludeQueriesWithoutUserInformation: Optional[bool] = None + MinimumNumberOfQueryingUsers: Optional[int] = None + MinimumQueryCount: Optional[int] = None + AttributeSuggestionsConfig: Optional[AttributeSuggestionsUpdateConfigTypeDef] = None + +class SubmitFeedbackRequestRequestTypeDef(BaseModel): + IndexId: str + QueryId: str + ClickFeedbackItems: Optional[Sequence[ClickFeedbackTypeDef]] = None + RelevanceFeedbackItems: Optional[Sequence[RelevanceFeedbackTypeDef]] = None + +class DocumentAttributeConditionTypeDef(BaseModel): + ConditionDocumentAttributeKey: str + Operator: ConditionOperatorType + ConditionOnValue: Optional[DocumentAttributeValueTypeDef] = None + +class DocumentAttributeTargetTypeDef(BaseModel): + TargetDocumentAttributeKey: Optional[str] = None + TargetDocumentAttributeValueDeletion: Optional[bool] = None + TargetDocumentAttributeValue: Optional[DocumentAttributeValueTypeDef] = None + +class DocumentAttributeTypeDef(BaseModel): + Key: str + Value: DocumentAttributeValueTypeDef + +class DocumentAttributeValueCountPairTypeDef(BaseModel): + DocumentAttributeValue: Optional[DocumentAttributeValueTypeDef] = None + Count: Optional[int] = None + FacetResults: Optional[List[Dict[str, Any]]] = None + +class ConfluenceConfigurationTypeDef(BaseModel): + ServerUrl: str + SecretArn: str + Version: ConfluenceVersionType + SpaceConfiguration: Optional[ConfluenceSpaceConfigurationTypeDef] = None + PageConfiguration: Optional[ConfluencePageConfigurationTypeDef] = None + BlogConfiguration: Optional[ConfluenceBlogConfigurationTypeDef] = None + AttachmentConfiguration: Optional[ConfluenceAttachmentConfigurationTypeDef] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + InclusionPatterns: Optional[Sequence[str]] = None + ExclusionPatterns: Optional[Sequence[str]] = None + ProxyConfiguration: Optional[ProxyConfigurationTypeDef] = None + AuthenticationType: Optional[ConfluenceAuthenticationTypeType] = None + +class CreateAccessControlConfigurationRequestRequestTypeDef(BaseModel): + IndexId: str + Name: str + Description: Optional[str] = None + AccessControlList: Optional[Sequence[PrincipalTypeDef]] = None + HierarchicalAccessControlList: Optional[Sequence[HierarchicalPrincipalTypeDef]] = None + ClientToken: Optional[str] = None + +class DescribeAccessControlConfigurationResponseTypeDef(BaseModel): + Name: str + Description: str + ErrorMessage: str + AccessControlList: List[PrincipalTypeDef] + HierarchicalAccessControlList: List[HierarchicalPrincipalTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessControlConfigurationRequestRequestTypeDef(BaseModel): + IndexId: str + Id: str + Name: Optional[str] = None + Description: Optional[str] = None + AccessControlList: Optional[Sequence[PrincipalTypeDef]] = None + HierarchicalAccessControlList: Optional[Sequence[HierarchicalPrincipalTypeDef]] = None + +class CreateFeaturedResultsSetResponseTypeDef(BaseModel): + FeaturedResultsSet: FeaturedResultsSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFeaturedResultsSetResponseTypeDef(BaseModel): + FeaturedResultsSet: FeaturedResultsSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AttributeSuggestionsGetConfigTypeDef(BaseModel): + SuggestionAttributes: Optional[Sequence[str]] = None + AdditionalResponseAttributes: Optional[Sequence[str]] = None + AttributeFilter: Optional["AttributeFilterTypeDef"] = None + UserContext: Optional[UserContextTypeDef] = None + +class ListDataSourceSyncJobsResponseTypeDef(BaseModel): + History: List[DataSourceSyncJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListExperiencesResponseTypeDef(BaseModel): + SummaryItems: List[ExperiencesSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class QueryRequestRequestTypeDef(BaseModel): + IndexId: str + QueryText: Optional[str] = None + AttributeFilter: Optional["AttributeFilterTypeDef"] = None + Facets: Optional[Sequence["FacetTypeDef"]] = None + RequestedDocumentAttributes: Optional[Sequence[str]] = None + QueryResultTypeFilter: Optional[QueryResultTypeType] = None + DocumentRelevanceOverrideConfigurations: Optional[ Sequence[DocumentRelevanceConfigurationTypeDef] ] = None + PageNumber: Optional[int] = None + PageSize: Optional[int] = None + SortingConfiguration: Optional[SortingConfigurationTypeDef] = None + SortingConfigurations: Optional[Sequence[SortingConfigurationTypeDef]] = None + UserContext: Optional[UserContextTypeDef] = None + VisitorId: Optional[str] = None + SpellCorrectionConfiguration: Optional[SpellCorrectionConfigurationTypeDef] = None + CollapseConfiguration: Optional[CollapseConfigurationTypeDef] = None + +class RetrieveRequestRequestTypeDef(BaseModel): + IndexId: str + QueryText: str + AttributeFilter: Optional["AttributeFilterTypeDef"] = None + RequestedDocumentAttributes: Optional[Sequence[str]] = None + DocumentRelevanceOverrideConfigurations: Optional[ Sequence[DocumentRelevanceConfigurationTypeDef] ] = None + PageNumber: Optional[int] = None + PageSize: Optional[int] = None + UserContext: Optional[UserContextTypeDef] = None + +class ListExperienceEntitiesResponseTypeDef(BaseModel): + SummaryItems: List[ExperienceEntitiesSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperienceRequestRequestTypeDef(BaseModel): + Name: str + IndexId: str + RoleArn: Optional[str] = None + Configuration: Optional[ExperienceConfigurationTypeDef] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + +class DescribeExperienceResponseTypeDef(BaseModel): + Id: str + IndexId: str + Name: str + Endpoints: List[ExperienceEndpointTypeDef] + Configuration: ExperienceConfigurationTypeDef + CreatedAt: datetime + UpdatedAt: datetime + Description: str + Status: ExperienceStatusType + RoleArn: str + ErrorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExperienceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + Name: Optional[str] = None + RoleArn: Optional[str] = None + Configuration: Optional[ExperienceConfigurationTypeDef] = None + Description: Optional[str] = None + +class PutPrincipalMappingRequestRequestTypeDef(BaseModel): + IndexId: str + GroupId: str + GroupMembers: GroupMembersTypeDef + DataSourceId: Optional[str] = None + OrderingId: Optional[int] = None + RoleArn: Optional[str] = None + +class AdditionalResultAttributeValueTypeDef(BaseModel): + TextWithHighlightsValue: Optional[TextWithHighlightsTypeDef] = None + +class CreateIndexRequestRequestTypeDef(BaseModel): + Name: str + RoleArn: str + Edition: Optional[IndexEditionType] = None + ServerSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + UserTokenConfigurations: Optional[Sequence[UserTokenConfigurationTypeDef]] = None + UserContextPolicy: Optional[UserContextPolicyType] = None + UserGroupResolutionConfiguration: Optional[UserGroupResolutionConfigurationTypeDef] = None + +class DescribeIndexResponseTypeDef(BaseModel): + Name: str + Id: str + Edition: IndexEditionType + RoleArn: str + ServerSideEncryptionConfiguration: ServerSideEncryptionConfigurationTypeDef + Status: IndexStatusType + Description: str + CreatedAt: datetime + UpdatedAt: datetime + DocumentMetadataConfigurations: List[DocumentMetadataConfigurationTypeDef] + IndexStatistics: IndexStatisticsTypeDef + ErrorMessage: str + CapacityUnits: CapacityUnitsConfigurationTypeDef + UserTokenConfigurations: List[UserTokenConfigurationTypeDef] + UserContextPolicy: UserContextPolicyType + UserGroupResolutionConfiguration: UserGroupResolutionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIndexRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + RoleArn: Optional[str] = None + Description: Optional[str] = None + DocumentMetadataConfigurationUpdates: Optional[ Sequence[DocumentMetadataConfigurationTypeDef] ] = None + CapacityUnits: Optional[CapacityUnitsConfigurationTypeDef] = None + UserTokenConfigurations: Optional[Sequence[UserTokenConfigurationTypeDef]] = None + UserContextPolicy: Optional[UserContextPolicyType] = None + UserGroupResolutionConfiguration: Optional[UserGroupResolutionConfigurationTypeDef] = None + +class WebCrawlerConfigurationTypeDef(BaseModel): + Urls: UrlsTypeDef + CrawlDepth: Optional[int] = None + MaxLinksPerPage: Optional[int] = None + MaxContentSizePerPageInMegaBytes: Optional[float] = None + MaxUrlsPerMinuteCrawlRate: Optional[int] = None + UrlInclusionPatterns: Optional[Sequence[str]] = None + UrlExclusionPatterns: Optional[Sequence[str]] = None + ProxyConfiguration: Optional[ProxyConfigurationTypeDef] = None + AuthenticationConfiguration: Optional[AuthenticationConfigurationTypeDef] = None + +class SuggestionValueTypeDef(BaseModel): + Text: Optional[SuggestionTextWithHighlightsTypeDef] = None + +class TableExcerptTypeDef(BaseModel): + Rows: Optional[List[TableRowTypeDef]] = None + TotalNumberOfRows: Optional[int] = None + +class SalesforceConfigurationTypeDef(BaseModel): + ServerUrl: str + SecretArn: str + StandardObjectConfigurations: Optional[ Sequence[SalesforceStandardObjectConfigurationTypeDef] ] = None + KnowledgeArticleConfiguration: Optional[ SalesforceKnowledgeArticleConfigurationTypeDef ] = None + ChatterFeedConfiguration: Optional[SalesforceChatterFeedConfigurationTypeDef] = None + CrawlAttachments: Optional[bool] = None + StandardObjectAttachmentConfiguration: Optional[ SalesforceStandardObjectAttachmentConfigurationTypeDef ] = None + IncludeAttachmentFilePatterns: Optional[Sequence[str]] = None + ExcludeAttachmentFilePatterns: Optional[Sequence[str]] = None + +class HookConfigurationTypeDef(BaseModel): + LambdaArn: str + S3Bucket: str + InvocationCondition: Optional[DocumentAttributeConditionTypeDef] = None + +class InlineCustomDocumentEnrichmentConfigurationTypeDef(BaseModel): + Condition: Optional[DocumentAttributeConditionTypeDef] = None + Target: Optional[DocumentAttributeTargetTypeDef] = None + DocumentContentDeletion: Optional[bool] = None + +class AttributeFilterTypeDef(BaseModel): + AndAllFilters: Optional[Sequence[Dict[str, Any]]] = None + OrAllFilters: Optional[Sequence[Dict[str, Any]]] = None + NotFilter: Optional[Dict[str, Any]] = None + EqualsTo: Optional[DocumentAttributeTypeDef] = None + ContainsAll: Optional[DocumentAttributeTypeDef] = None + ContainsAny: Optional[DocumentAttributeTypeDef] = None + GreaterThan: Optional[DocumentAttributeTypeDef] = None + GreaterThanOrEquals: Optional[DocumentAttributeTypeDef] = None + LessThan: Optional[DocumentAttributeTypeDef] = None + LessThanOrEquals: Optional[DocumentAttributeTypeDef] = None + +class DocumentInfoTypeDef(BaseModel): + DocumentId: str + Attributes: Optional[Sequence[DocumentAttributeTypeDef]] = None + +class DocumentTypeDef(BaseModel): + Id: str + Title: Optional[str] = None + Blob: Optional[BlobTypeDef] = None + S3Path: Optional[S3PathTypeDef] = None + Attributes: Optional[Sequence[DocumentAttributeTypeDef]] = None + AccessControlList: Optional[Sequence[PrincipalTypeDef]] = None + HierarchicalAccessControlList: Optional[Sequence[HierarchicalPrincipalTypeDef]] = None + ContentType: Optional[ContentTypeType] = None + AccessControlConfigurationId: Optional[str] = None + +class ExpandedResultItemTypeDef(BaseModel): + Id: Optional[str] = None + DocumentId: Optional[str] = None + DocumentTitle: Optional[TextWithHighlightsTypeDef] = None + DocumentExcerpt: Optional[TextWithHighlightsTypeDef] = None + DocumentURI: Optional[str] = None + DocumentAttributes: Optional[List[DocumentAttributeTypeDef]] = None + +class RetrieveResultItemTypeDef(BaseModel): + Id: Optional[str] = None + DocumentId: Optional[str] = None + DocumentTitle: Optional[str] = None + Content: Optional[str] = None + DocumentURI: Optional[str] = None + DocumentAttributes: Optional[List[DocumentAttributeTypeDef]] = None + ScoreAttributes: Optional[ScoreAttributesTypeDef] = None + +class SourceDocumentTypeDef(BaseModel): + DocumentId: Optional[str] = None + SuggestionAttributes: Optional[List[str]] = None + AdditionalAttributes: Optional[List[DocumentAttributeTypeDef]] = None + +class GetQuerySuggestionsRequestRequestTypeDef(BaseModel): + IndexId: str + QueryText: str + MaxSuggestionsCount: Optional[int] = None + SuggestionTypes: Optional[Sequence[SuggestionTypeType]] = None + AttributeSuggestionsConfig: Optional[AttributeSuggestionsGetConfigTypeDef] = None + +class AdditionalResultAttributeTypeDef(BaseModel): + Key: str + ValueType: Literal["TEXT_WITH_HIGHLIGHTS_VALUE"] + Value: AdditionalResultAttributeValueTypeDef + +class DataSourceConfigurationTypeDef(BaseModel): + S3Configuration: Optional[S3DataSourceConfigurationTypeDef] = None + SharePointConfiguration: Optional[SharePointConfigurationTypeDef] = None + DatabaseConfiguration: Optional[DatabaseConfigurationTypeDef] = None + SalesforceConfiguration: Optional[SalesforceConfigurationTypeDef] = None + OneDriveConfiguration: Optional[OneDriveConfigurationTypeDef] = None + ServiceNowConfiguration: Optional[ServiceNowConfigurationTypeDef] = None + ConfluenceConfiguration: Optional[ConfluenceConfigurationTypeDef] = None + GoogleDriveConfiguration: Optional[GoogleDriveConfigurationTypeDef] = None + WebCrawlerConfiguration: Optional[WebCrawlerConfigurationTypeDef] = None + WorkDocsConfiguration: Optional[WorkDocsConfigurationTypeDef] = None + FsxConfiguration: Optional[FsxConfigurationTypeDef] = None + SlackConfiguration: Optional[SlackConfigurationTypeDef] = None + BoxConfiguration: Optional[BoxConfigurationTypeDef] = None + QuipConfiguration: Optional[QuipConfigurationTypeDef] = None + JiraConfiguration: Optional[JiraConfigurationTypeDef] = None + GitHubConfiguration: Optional[GitHubConfigurationTypeDef] = None + AlfrescoConfiguration: Optional[AlfrescoConfigurationTypeDef] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + +class CustomDocumentEnrichmentConfigurationTypeDef(BaseModel): + InlineConfigurations: Optional[ Sequence[InlineCustomDocumentEnrichmentConfigurationTypeDef] ] = None + PreExtractionHookConfiguration: Optional[HookConfigurationTypeDef] = None + PostExtractionHookConfiguration: Optional[HookConfigurationTypeDef] = None + RoleArn: Optional[str] = None + +class BatchGetDocumentStatusRequestRequestTypeDef(BaseModel): + IndexId: str + DocumentInfoList: Sequence[DocumentInfoTypeDef] + +class CollapsedResultDetailTypeDef(BaseModel): + DocumentAttribute: DocumentAttributeTypeDef + ExpandedResults: Optional[List[ExpandedResultItemTypeDef]] = None + +class RetrieveResultTypeDef(BaseModel): + QueryId: str + ResultItems: List[RetrieveResultItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SuggestionTypeDef(BaseModel): + Id: Optional[str] = None + Value: Optional[SuggestionValueTypeDef] = None + SourceDocuments: Optional[List[SourceDocumentTypeDef]] = None + +class FeaturedResultsItemTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[QueryResultTypeType] = None + AdditionalAttributes: Optional[List[AdditionalResultAttributeTypeDef]] = None + DocumentId: Optional[str] = None + DocumentTitle: Optional[TextWithHighlightsTypeDef] = None + DocumentExcerpt: Optional[TextWithHighlightsTypeDef] = None + DocumentURI: Optional[str] = None + DocumentAttributes: Optional[List[DocumentAttributeTypeDef]] = None + FeedbackToken: Optional[str] = None + +class BatchPutDocumentRequestRequestTypeDef(BaseModel): + IndexId: str + Documents: Sequence[DocumentTypeDef] + RoleArn: Optional[str] = None + CustomDocumentEnrichmentConfiguration: Optional[ CustomDocumentEnrichmentConfigurationTypeDef ] = None + +class CreateDataSourceRequestRequestTypeDef(BaseModel): + Name: str + IndexId: str + Type: DataSourceTypeType + Configuration: Optional[DataSourceConfigurationTypeDef] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + Description: Optional[str] = None + Schedule: Optional[str] = None + RoleArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + LanguageCode: Optional[str] = None + CustomDocumentEnrichmentConfiguration: Optional[ CustomDocumentEnrichmentConfigurationTypeDef ] = None + +class DescribeDataSourceResponseTypeDef(BaseModel): + Id: str + IndexId: str + Name: str + Type: DataSourceTypeType + Configuration: DataSourceConfigurationTypeDef + VpcConfiguration: DataSourceVpcConfigurationTypeDef + CreatedAt: datetime + UpdatedAt: datetime + Description: str + Status: DataSourceStatusType + Schedule: str + RoleArn: str + ErrorMessage: str + LanguageCode: str + CustomDocumentEnrichmentConfiguration: CustomDocumentEnrichmentConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceRequestRequestTypeDef(BaseModel): + Id: str + IndexId: str + Name: Optional[str] = None + Configuration: Optional[DataSourceConfigurationTypeDef] = None + VpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + Description: Optional[str] = None + Schedule: Optional[str] = None + RoleArn: Optional[str] = None + LanguageCode: Optional[str] = None + CustomDocumentEnrichmentConfiguration: Optional[ CustomDocumentEnrichmentConfigurationTypeDef ] = None + +class QueryResultItemTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[QueryResultTypeType] = None + Format: Optional[QueryResultFormatType] = None + AdditionalAttributes: Optional[List[AdditionalResultAttributeTypeDef]] = None + DocumentId: Optional[str] = None + DocumentTitle: Optional[TextWithHighlightsTypeDef] = None + DocumentExcerpt: Optional[TextWithHighlightsTypeDef] = None + DocumentURI: Optional[str] = None + DocumentAttributes: Optional[List[DocumentAttributeTypeDef]] = None + ScoreAttributes: Optional[ScoreAttributesTypeDef] = None + FeedbackToken: Optional[str] = None + TableExcerpt: Optional[TableExcerptTypeDef] = None + CollapsedResultDetail: Optional[CollapsedResultDetailTypeDef] = None + +class GetQuerySuggestionsResponseTypeDef(BaseModel): + QuerySuggestionsId: str + Suggestions: List[SuggestionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class QueryResultTypeDef(BaseModel): + QueryId: str + ResultItems: List[QueryResultItemTypeDef] + FacetResults: List["FacetResultTypeDef"] + TotalNumberOfResults: int + Warnings: List[WarningTypeDef] + SpellCorrectedQueries: List[SpellCorrectedQueryTypeDef] + FeaturedResultsItems: List[FeaturedResultsItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kendra_constants.py b/aws_resource_validator/pydantic_models/kendra_constants.py new file mode 100644 index 00000000..e4b3a680 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kendra_constants.py @@ -0,0 +1,556 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdditionalResultAttributeValueTypeType = Literal["TEXT_WITH_HIGHLIGHTS_VALUE"] +AlfrescoEntityType = Literal["blog", "documentLibrary", "wiki"] +AttributeSuggestionsModeType = Literal["ACTIVE", "INACTIVE"] +ConditionOperatorType = Literal["BeginsWith", + "Contains", + "Equals", + "Exists", + "GreaterThan", + "GreaterThanOrEquals", + "LessThan", + "LessThanOrEquals", + "NotContains", + "NotEquals", + "NotExists",] +ConfluenceAttachmentFieldNameType = Literal["AUTHOR", + "CONTENT_TYPE", + "CREATED_DATE", + "DISPLAY_URL", + "FILE_SIZE", + "ITEM_TYPE", + "PARENT_ID", + "SPACE_KEY", + "SPACE_NAME", + "URL", + "VERSION",] +ConfluenceAuthenticationTypeType = Literal["HTTP_BASIC", "PAT"] +ConfluenceBlogFieldNameType = Literal["AUTHOR", + "DISPLAY_URL", + "ITEM_TYPE", + "LABELS", + "PUBLISH_DATE", + "SPACE_KEY", + "SPACE_NAME", + "URL", + "VERSION",] +ConfluencePageFieldNameType = Literal["AUTHOR", + "CONTENT_STATUS", + "CREATED_DATE", + "DISPLAY_URL", + "ITEM_TYPE", + "LABELS", + "MODIFIED_DATE", + "PARENT_ID", + "SPACE_KEY", + "SPACE_NAME", + "URL", + "VERSION",] +ConfluenceSpaceFieldNameType = Literal["DISPLAY_URL", "ITEM_TYPE", "SPACE_KEY", "URL"] +ConfluenceVersionType = Literal["CLOUD", "SERVER"] +ContentTypeType = Literal["CSV", + "HTML", + "JSON", + "MD", + "MS_EXCEL", + "MS_WORD", + "PDF", + "PLAIN_TEXT", + "PPT", + "RTF", + "XML", + "XSLT",] +DataSourceStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +DataSourceSyncJobStatusType = Literal["ABORTED", "FAILED", "INCOMPLETE", "STOPPING", "SUCCEEDED", "SYNCING", "SYNCING_INDEXING"] +DataSourceTypeType = Literal["ALFRESCO", + "BOX", + "CONFLUENCE", + "CUSTOM", + "DATABASE", + "FSX", + "GITHUB", + "GOOGLEDRIVE", + "JIRA", + "ONEDRIVE", + "QUIP", + "S3", + "SALESFORCE", + "SERVICENOW", + "SHAREPOINT", + "SLACK", + "TEMPLATE", + "WEBCRAWLER", + "WORKDOCS",] +DatabaseEngineTypeType = Literal["RDS_AURORA_MYSQL", "RDS_AURORA_POSTGRESQL", "RDS_MYSQL", "RDS_POSTGRESQL"] +DocumentAttributeValueTypeType = Literal["DATE_VALUE", "LONG_VALUE", "STRING_LIST_VALUE", "STRING_VALUE"] +DocumentStatusType = Literal["FAILED", "INDEXED", "NOT_FOUND", "PROCESSING", "UPDATED", "UPDATE_FAILED"] +EndpointTypeType = Literal["HOME"] +EntityTypeType = Literal["GROUP", "USER"] +ErrorCodeType = Literal["InternalError", "InvalidRequest"] +ExperienceStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +FaqFileFormatType = Literal["CSV", "CSV_WITH_HEADER", "JSON"] +FaqStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +FeaturedResultsSetStatusType = Literal["ACTIVE", "INACTIVE"] +FsxFileSystemTypeType = Literal["WINDOWS"] +HighlightTypeType = Literal["STANDARD", "THESAURUS_SYNONYM"] +IndexEditionType = Literal["DEVELOPER_EDITION", "ENTERPRISE_EDITION"] +IndexStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "SYSTEM_UPDATING", "UPDATING"] +IntervalType = Literal["ONE_MONTH_AGO", "ONE_WEEK_AGO", "THIS_MONTH", "THIS_WEEK", "TWO_MONTHS_AGO", "TWO_WEEKS_AGO"] +IssueSubEntityType = Literal["ATTACHMENTS", "COMMENTS", "WORKLOGS"] +KeyLocationType = Literal["SECRET_MANAGER", "URL"] +MetricTypeType = Literal["AGG_QUERY_DOC_METRICS", + "DOCS_BY_CLICK_COUNT", + "QUERIES_BY_COUNT", + "QUERIES_BY_ZERO_CLICK_RATE", + "QUERIES_BY_ZERO_RESULT_RATE", + "TREND_QUERY_DOC_METRICS",] +MissingAttributeKeyStrategyType = Literal["COLLAPSE", "EXPAND", "IGNORE"] +ModeType = Literal["ENABLED", "LEARN_ONLY"] +OrderType = Literal["ASCENDING", "DESCENDING"] +PersonaType = Literal["OWNER", "VIEWER"] +PrincipalMappingStatusType = Literal["DELETED", "DELETING", "FAILED", "PROCESSING", "SUCCEEDED"] +PrincipalTypeType = Literal["GROUP", "USER"] +QueryIdentifiersEnclosingOptionType = Literal["DOUBLE_QUOTES", "NONE"] +QueryResultFormatType = Literal["TABLE", "TEXT"] +QueryResultTypeType = Literal["ANSWER", "DOCUMENT", "QUESTION_ANSWER"] +QuerySuggestionsBlockListStatusType = Literal["ACTIVE", "ACTIVE_BUT_UPDATE_FAILED", "CREATING", "DELETING", "FAILED", "UPDATING"] +QuerySuggestionsStatusType = Literal["ACTIVE", "UPDATING"] +ReadAccessTypeType = Literal["ALLOW", "DENY"] +RelevanceTypeType = Literal["NOT_RELEVANT", "RELEVANT"] +SalesforceChatterFeedIncludeFilterTypeType = Literal["ACTIVE_USER", "STANDARD_USER"] +SalesforceKnowledgeArticleStateType = Literal["ARCHIVED", "DRAFT", "PUBLISHED"] +SalesforceStandardObjectNameType = Literal["ACCOUNT", + "CAMPAIGN", + "CASE", + "CONTACT", + "CONTRACT", + "DOCUMENT", + "GROUP", + "IDEA", + "LEAD", + "OPPORTUNITY", + "PARTNER", + "PRICEBOOK", + "PRODUCT", + "PROFILE", + "SOLUTION", + "TASK", + "USER",] +ScoreConfidenceType = Literal["HIGH", "LOW", "MEDIUM", "NOT_AVAILABLE", "VERY_HIGH"] +ServiceNowAuthenticationTypeType = Literal["HTTP_BASIC", "OAUTH2"] +ServiceNowBuildVersionTypeType = Literal["LONDON", "OTHERS"] +SharePointOnlineAuthenticationTypeType = Literal["HTTP_BASIC", "OAUTH2"] +SharePointVersionType = Literal["SHAREPOINT_2013", "SHAREPOINT_2016", "SHAREPOINT_2019", "SHAREPOINT_ONLINE"] +SlackEntityType = Literal["DIRECT_MESSAGE", "GROUP_MESSAGE", "PRIVATE_CHANNEL", "PUBLIC_CHANNEL"] +SortOrderType = Literal["ASC", "DESC"] +SuggestionTypeType = Literal["DOCUMENT_ATTRIBUTES", "QUERY"] +ThesaurusStatusType = Literal["ACTIVE", "ACTIVE_BUT_UPDATE_FAILED", "CREATING", "DELETING", "FAILED", "UPDATING"] +TypeType = Literal["ON_PREMISE", "SAAS"] +UserContextPolicyType = Literal["ATTRIBUTE_FILTER", "USER_TOKEN"] +UserGroupResolutionModeType = Literal["AWS_SSO", "NONE"] +WarningCodeType = Literal["QUERY_LANGUAGE_INVALID_SYNTAX"] +WebCrawlerModeType = Literal["EVERYTHING", "HOST_ONLY", "SUBDOMAINS"] +kendraServiceName = Literal["kendra"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any]] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kendra_ranking_classes.py b/aws_resource_validator/pydantic_models/kendra_ranking_classes.py new file mode 100644 index 00000000..74fb4ae1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kendra_ranking_classes.py @@ -0,0 +1,120 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kendra_ranking_constants import * + +class CapacityUnitsConfigurationTypeDef(BaseModel): + RescoreCapacityUnits: int + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteRescoreExecutionPlanRequestRequestTypeDef(BaseModel): + Id: str + +class DescribeRescoreExecutionPlanRequestRequestTypeDef(BaseModel): + Id: str + +class DocumentTypeDef(BaseModel): + Id: str + OriginalScore: float + GroupId: Optional[str] = None + Title: Optional[str] = None + Body: Optional[str] = None + TokenizedTitle: Optional[Sequence[str]] = None + TokenizedBody: Optional[Sequence[str]] = None + +class ListRescoreExecutionPlansRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RescoreExecutionPlanSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + Status: Optional[RescoreExecutionPlanStatusType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class RescoreResultItemTypeDef(BaseModel): + DocumentId: Optional[str] = None + Score: Optional[float] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateRescoreExecutionPlanRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + Description: Optional[str] = None + CapacityUnits: Optional[CapacityUnitsConfigurationTypeDef] = None + +class CreateRescoreExecutionPlanRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + CapacityUnits: Optional[CapacityUnitsConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateRescoreExecutionPlanResponseTypeDef(BaseModel): + Id: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRescoreExecutionPlanResponseTypeDef(BaseModel): + Id: str + Arn: str + Name: str + Description: str + CapacityUnits: CapacityUnitsConfigurationTypeDef + CreatedAt: datetime + UpdatedAt: datetime + Status: RescoreExecutionPlanStatusType + ErrorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RescoreRequestRequestTypeDef(BaseModel): + RescoreExecutionPlanId: str + SearchQuery: str + Documents: Sequence[DocumentTypeDef] + +class ListRescoreExecutionPlansResponseTypeDef(BaseModel): + SummaryItems: List[RescoreExecutionPlanSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RescoreResultTypeDef(BaseModel): + RescoreId: str + ResultItems: List[RescoreResultItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kendra_ranking_constants.py b/aws_resource_validator/pydantic_models/kendra_ranking_constants.py new file mode 100644 index 00000000..5ada6dec --- /dev/null +++ b/aws_resource_validator/pydantic_models/kendra_ranking_constants.py @@ -0,0 +1,415 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +RescoreExecutionPlanStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +KendraRankingServiceName = Literal["kendra-ranking"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/keyspaces_classes.py b/aws_resource_validator/pydantic_models/keyspaces_classes.py new file mode 100644 index 00000000..3615ee48 --- /dev/null +++ b/aws_resource_validator/pydantic_models/keyspaces_classes.py @@ -0,0 +1,288 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.keyspaces_constants import * + +class TargetTrackingScalingPolicyConfigurationTypeDef(BaseModel): + targetValue: float + disableScaleIn: Optional[bool] = None + scaleInCooldown: Optional[int] = None + scaleOutCooldown: Optional[int] = None + +class CapacitySpecificationSummaryTypeDef(BaseModel): + throughputMode: ThroughputModeType + readCapacityUnits: Optional[int] = None + writeCapacityUnits: Optional[int] = None + lastUpdateToPayPerRequestTimestamp: Optional[datetime] = None + +class CapacitySpecificationTypeDef(BaseModel): + throughputMode: ThroughputModeType + readCapacityUnits: Optional[int] = None + writeCapacityUnits: Optional[int] = None + +class ClientSideTimestampsTypeDef(BaseModel): + status: Literal["ENABLED"] + +class ClusteringKeyTypeDef(BaseModel): + name: str + orderBy: SortOrderType + +class ColumnDefinitionTypeDef(BaseModel): + name: str + type: str + +class CommentTypeDef(BaseModel): + message: str + +class ReplicationSpecificationTypeDef(BaseModel): + replicationStrategy: rsType + regionList: Optional[Sequence[str]] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class EncryptionSpecificationTypeDef(BaseModel): + type: EncryptionTypeType + kmsKeyIdentifier: Optional[str] = None + +class PointInTimeRecoveryTypeDef(BaseModel): + status: PointInTimeRecoveryStatusType + +class TimeToLiveTypeDef(BaseModel): + status: Literal["ENABLED"] + +class DeleteKeyspaceRequestRequestTypeDef(BaseModel): + keyspaceName: str + +class DeleteTableRequestRequestTypeDef(BaseModel): + keyspaceName: str + tableName: str + +class GetKeyspaceRequestRequestTypeDef(BaseModel): + keyspaceName: str + +class GetTableAutoScalingSettingsRequestRequestTypeDef(BaseModel): + keyspaceName: str + tableName: str + +class GetTableRequestRequestTypeDef(BaseModel): + keyspaceName: str + tableName: str + +class PointInTimeRecoverySummaryTypeDef(BaseModel): + status: PointInTimeRecoveryStatusType + earliestRestorableTimestamp: Optional[datetime] = None + +class KeyspaceSummaryTypeDef(BaseModel): + keyspaceName: str + resourceArn: str + replicationStrategy: rsType + replicationRegions: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListKeyspacesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTablesRequestRequestTypeDef(BaseModel): + keyspaceName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TableSummaryTypeDef(BaseModel): + keyspaceName: str + tableName: str + resourceArn: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PartitionKeyTypeDef(BaseModel): + name: str + +class StaticColumnTypeDef(BaseModel): + name: str + +class AutoScalingPolicyTypeDef(BaseModel): + targetTrackingScalingPolicyConfiguration: Optional[ TargetTrackingScalingPolicyConfigurationTypeDef ] = None + +class ReplicaSpecificationSummaryTypeDef(BaseModel): + region: Optional[str] = None + status: Optional[TableStatusType] = None + capacitySpecification: Optional[CapacitySpecificationSummaryTypeDef] = None + +class CreateKeyspaceRequestRequestTypeDef(BaseModel): + keyspaceName: str + tags: Optional[Sequence[TagTypeDef]] = None + replicationSpecification: Optional[ReplicationSpecificationTypeDef] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateKeyspaceResponseTypeDef(BaseModel): + resourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTableResponseTypeDef(BaseModel): + resourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyspaceResponseTypeDef(BaseModel): + keyspaceName: str + resourceArn: str + replicationStrategy: rsType + replicationRegions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + nextToken: str + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreTableResponseTypeDef(BaseModel): + restoredTableARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableResponseTypeDef(BaseModel): + resourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyspacesResponseTypeDef(BaseModel): + nextToken: str + keyspaces: List[KeyspaceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyspacesRequestListKeyspacesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTablesRequestListTablesPaginateTypeDef(BaseModel): + keyspaceName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTablesResponseTypeDef(BaseModel): + nextToken: str + tables: List[TableSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SchemaDefinitionTypeDef(BaseModel): + allColumns: Sequence[ColumnDefinitionTypeDef] + partitionKeys: Sequence[PartitionKeyTypeDef] + clusteringKeys: Optional[Sequence[ClusteringKeyTypeDef]] = None + staticColumns: Optional[Sequence[StaticColumnTypeDef]] = None + +class AutoScalingSettingsTypeDef(BaseModel): + autoScalingDisabled: Optional[bool] = None + minimumUnits: Optional[int] = None + maximumUnits: Optional[int] = None + scalingPolicy: Optional[AutoScalingPolicyTypeDef] = None + +class GetTableResponseTypeDef(BaseModel): + keyspaceName: str + tableName: str + resourceArn: str + creationTimestamp: datetime + status: TableStatusType + schemaDefinition: SchemaDefinitionTypeDef + capacitySpecification: CapacitySpecificationSummaryTypeDef + encryptionSpecification: EncryptionSpecificationTypeDef + pointInTimeRecovery: PointInTimeRecoverySummaryTypeDef + ttl: TimeToLiveTypeDef + defaultTimeToLive: int + comment: CommentTypeDef + clientSideTimestamps: ClientSideTimestampsTypeDef + replicaSpecifications: List[ReplicaSpecificationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AutoScalingSpecificationTypeDef(BaseModel): + writeCapacityAutoScaling: Optional[AutoScalingSettingsTypeDef] = None + readCapacityAutoScaling: Optional[AutoScalingSettingsTypeDef] = None + +class ReplicaSpecificationTypeDef(BaseModel): + region: str + readCapacityUnits: Optional[int] = None + readCapacityAutoScaling: Optional[AutoScalingSettingsTypeDef] = None + +class ReplicaAutoScalingSpecificationTypeDef(BaseModel): + region: Optional[str] = None + autoScalingSpecification: Optional[AutoScalingSpecificationTypeDef] = None + +class CreateTableRequestRequestTypeDef(BaseModel): + keyspaceName: str + tableName: str + schemaDefinition: SchemaDefinitionTypeDef + comment: Optional[CommentTypeDef] = None + capacitySpecification: Optional[CapacitySpecificationTypeDef] = None + encryptionSpecification: Optional[EncryptionSpecificationTypeDef] = None + pointInTimeRecovery: Optional[PointInTimeRecoveryTypeDef] = None + ttl: Optional[TimeToLiveTypeDef] = None + defaultTimeToLive: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + clientSideTimestamps: Optional[ClientSideTimestampsTypeDef] = None + autoScalingSpecification: Optional[AutoScalingSpecificationTypeDef] = None + replicaSpecifications: Optional[Sequence[ReplicaSpecificationTypeDef]] = None + +class RestoreTableRequestRequestTypeDef(BaseModel): + sourceKeyspaceName: str + sourceTableName: str + targetKeyspaceName: str + targetTableName: str + restoreTimestamp: Optional[TimestampTypeDef] = None + capacitySpecificationOverride: Optional[CapacitySpecificationTypeDef] = None + encryptionSpecificationOverride: Optional[EncryptionSpecificationTypeDef] = None + pointInTimeRecoveryOverride: Optional[PointInTimeRecoveryTypeDef] = None + tagsOverride: Optional[Sequence[TagTypeDef]] = None + autoScalingSpecification: Optional[AutoScalingSpecificationTypeDef] = None + replicaSpecifications: Optional[Sequence[ReplicaSpecificationTypeDef]] = None + +class UpdateTableRequestRequestTypeDef(BaseModel): + keyspaceName: str + tableName: str + addColumns: Optional[Sequence[ColumnDefinitionTypeDef]] = None + capacitySpecification: Optional[CapacitySpecificationTypeDef] = None + encryptionSpecification: Optional[EncryptionSpecificationTypeDef] = None + pointInTimeRecovery: Optional[PointInTimeRecoveryTypeDef] = None + ttl: Optional[TimeToLiveTypeDef] = None + defaultTimeToLive: Optional[int] = None + clientSideTimestamps: Optional[ClientSideTimestampsTypeDef] = None + autoScalingSpecification: Optional[AutoScalingSpecificationTypeDef] = None + replicaSpecifications: Optional[Sequence[ReplicaSpecificationTypeDef]] = None + +class GetTableAutoScalingSettingsResponseTypeDef(BaseModel): + keyspaceName: str + tableName: str + resourceArn: str + autoScalingSpecification: AutoScalingSpecificationTypeDef + replicaSpecifications: List[ReplicaAutoScalingSpecificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/keyspaces_constants.py b/aws_resource_validator/pydantic_models/keyspaces_constants.py new file mode 100644 index 00000000..4e7748fd --- /dev/null +++ b/aws_resource_validator/pydantic_models/keyspaces_constants.py @@ -0,0 +1,430 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ClientSideTimestampsStatusType = Literal["ENABLED"] +EncryptionTypeType = Literal["AWS_OWNED_KMS_KEY", "CUSTOMER_MANAGED_KMS_KEY"] +ListKeyspacesPaginatorName = Literal["list_keyspaces"] +ListTablesPaginatorName = Literal["list_tables"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +PointInTimeRecoveryStatusType = Literal["DISABLED", "ENABLED"] +SortOrderType = Literal["ASC", "DESC"] +TableStatusType = Literal["ACTIVE", + "CREATING", + "DELETED", + "DELETING", + "INACCESSIBLE_ENCRYPTION_CREDENTIALS", + "RESTORING", + "UPDATING",] +ThroughputModeType = Literal["PAY_PER_REQUEST", "PROVISIONED"] +TimeToLiveStatusType = Literal["ENABLED"] +rsType = Literal["MULTI_REGION", "SINGLE_REGION"] +KeyspacesServiceName = Literal["keyspaces"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_keyspaces", "list_tables", "list_tags_for_resource"] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kinesis_classes.py b/aws_resource_validator/pydantic_models/kinesis_classes.py new file mode 100644 index 00000000..6625b875 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_classes.py @@ -0,0 +1,472 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesis_constants import * + +class AddTagsToStreamInputRequestTypeDef(BaseModel): + Tags: Mapping[str, str] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class HashKeyRangeTypeDef(BaseModel): + StartingHashKey: str + EndingHashKey: str + +class ConsumerDescriptionTypeDef(BaseModel): + ConsumerName: str + ConsumerARN: str + ConsumerStatus: ConsumerStatusType + ConsumerCreationTimestamp: datetime + StreamARN: str + +class ConsumerTypeDef(BaseModel): + ConsumerName: str + ConsumerARN: str + ConsumerStatus: ConsumerStatusType + ConsumerCreationTimestamp: datetime + +class StreamModeDetailsTypeDef(BaseModel): + StreamMode: StreamModeType + +class DecreaseStreamRetentionPeriodInputRequestTypeDef(BaseModel): + RetentionPeriodHours: int + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class DeleteResourcePolicyInputRequestTypeDef(BaseModel): + ResourceARN: str + +class DeleteStreamInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + EnforceConsumerDeletion: Optional[bool] = None + StreamARN: Optional[str] = None + +class DeregisterStreamConsumerInputRequestTypeDef(BaseModel): + StreamARN: Optional[str] = None + ConsumerName: Optional[str] = None + ConsumerARN: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeStreamConsumerInputRequestTypeDef(BaseModel): + StreamARN: Optional[str] = None + ConsumerName: Optional[str] = None + ConsumerARN: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeStreamInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + Limit: Optional[int] = None + ExclusiveStartShardId: Optional[str] = None + StreamARN: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeStreamSummaryInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class DisableEnhancedMonitoringInputRequestTypeDef(BaseModel): + ShardLevelMetrics: Sequence[MetricsNameType] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class EnableEnhancedMonitoringInputRequestTypeDef(BaseModel): + ShardLevelMetrics: Sequence[MetricsNameType] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class EnhancedMetricsTypeDef(BaseModel): + ShardLevelMetrics: Optional[List[MetricsNameType]] = None + +class GetRecordsInputRequestTypeDef(BaseModel): + ShardIterator: str + Limit: Optional[int] = None + StreamARN: Optional[str] = None + +class RecordTypeDef(BaseModel): + SequenceNumber: str + Data: bytes + PartitionKey: str + ApproximateArrivalTimestamp: Optional[datetime] = None + EncryptionType: Optional[EncryptionTypeType] = None + +class GetResourcePolicyInputRequestTypeDef(BaseModel): + ResourceARN: str + +class IncreaseStreamRetentionPeriodInputRequestTypeDef(BaseModel): + RetentionPeriodHours: int + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class InternalFailureExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class KMSAccessDeniedExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class KMSDisabledExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class KMSInvalidStateExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class KMSNotFoundExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class KMSOptInRequiredTypeDef(BaseModel): + message: Optional[str] = None + +class KMSThrottlingExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ListStreamsInputRequestTypeDef(BaseModel): + Limit: Optional[int] = None + ExclusiveStartStreamName: Optional[str] = None + NextToken: Optional[str] = None + +class ListTagsForStreamInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + ExclusiveStartTagKey: Optional[str] = None + Limit: Optional[int] = None + StreamARN: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class MergeShardsInputRequestTypeDef(BaseModel): + ShardToMerge: str + AdjacentShardToMerge: str + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class PutRecordsResultEntryTypeDef(BaseModel): + SequenceNumber: Optional[str] = None + ShardId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class PutResourcePolicyInputRequestTypeDef(BaseModel): + ResourceARN: str + Policy: str + +class RegisterStreamConsumerInputRequestTypeDef(BaseModel): + StreamARN: str + ConsumerName: str + +class RemoveTagsFromStreamInputRequestTypeDef(BaseModel): + TagKeys: Sequence[str] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class ResourceInUseExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class ResourceNotFoundExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class SequenceNumberRangeTypeDef(BaseModel): + StartingSequenceNumber: str + EndingSequenceNumber: Optional[str] = None + +class SplitShardInputRequestTypeDef(BaseModel): + ShardToSplit: str + NewStartingHashKey: str + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class StartStreamEncryptionInputRequestTypeDef(BaseModel): + EncryptionType: EncryptionTypeType + KeyId: str + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class StopStreamEncryptionInputRequestTypeDef(BaseModel): + EncryptionType: EncryptionTypeType + KeyId: str + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class UpdateShardCountInputRequestTypeDef(BaseModel): + TargetShardCount: int + ScalingType: Literal["UNIFORM_SCALING"] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class PutRecordInputRequestTypeDef(BaseModel): + Data: BlobTypeDef + PartitionKey: str + StreamName: Optional[str] = None + ExplicitHashKey: Optional[str] = None + SequenceNumberForOrdering: Optional[str] = None + StreamARN: Optional[str] = None + +class PutRecordsRequestEntryTypeDef(BaseModel): + Data: BlobTypeDef + PartitionKey: str + ExplicitHashKey: Optional[str] = None + +class ChildShardTypeDef(BaseModel): + ShardId: str + ParentShards: List[str] + HashKeyRange: HashKeyRangeTypeDef + +class CreateStreamInputRequestTypeDef(BaseModel): + StreamName: str + ShardCount: Optional[int] = None + StreamModeDetails: Optional[StreamModeDetailsTypeDef] = None + +class StreamSummaryTypeDef(BaseModel): + StreamName: str + StreamARN: str + StreamStatus: StreamStatusType + StreamModeDetails: Optional[StreamModeDetailsTypeDef] = None + StreamCreationTimestamp: Optional[datetime] = None + +class UpdateStreamModeInputRequestTypeDef(BaseModel): + StreamARN: str + StreamModeDetails: StreamModeDetailsTypeDef + +class DescribeLimitsOutputTypeDef(BaseModel): + ShardLimit: int + OpenShardCount: int + OnDemandStreamCount: int + OnDemandStreamCountLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStreamConsumerOutputTypeDef(BaseModel): + ConsumerDescription: ConsumerDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnhancedMonitoringOutputTypeDef(BaseModel): + StreamName: str + CurrentShardLevelMetrics: List[MetricsNameType] + DesiredShardLevelMetrics: List[MetricsNameType] + StreamARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyOutputTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetShardIteratorOutputTypeDef(BaseModel): + ShardIterator: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamConsumersOutputTypeDef(BaseModel): + Consumers: List[ConsumerTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutRecordOutputTypeDef(BaseModel): + ShardId: str + SequenceNumber: str + EncryptionType: EncryptionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterStreamConsumerOutputTypeDef(BaseModel): + Consumer: ConsumerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateShardCountOutputTypeDef(BaseModel): + StreamName: str + CurrentShardCount: int + TargetShardCount: int + StreamARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStreamInputDescribeStreamPaginateTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamsInputListStreamsPaginateTypeDef(BaseModel): + ExclusiveStartStreamName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStreamInputStreamExistsWaitTypeDef(BaseModel): + StreamName: Optional[str] = None + Limit: Optional[int] = None + ExclusiveStartShardId: Optional[str] = None + StreamARN: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeStreamInputStreamNotExistsWaitTypeDef(BaseModel): + StreamName: Optional[str] = None + Limit: Optional[int] = None + ExclusiveStartShardId: Optional[str] = None + StreamARN: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class StreamDescriptionSummaryTypeDef(BaseModel): + StreamName: str + StreamARN: str + StreamStatus: StreamStatusType + RetentionPeriodHours: int + StreamCreationTimestamp: datetime + EnhancedMonitoring: List[EnhancedMetricsTypeDef] + OpenShardCount: int + StreamModeDetails: Optional[StreamModeDetailsTypeDef] = None + EncryptionType: Optional[EncryptionTypeType] = None + KeyId: Optional[str] = None + ConsumerCount: Optional[int] = None + +class GetShardIteratorInputRequestTypeDef(BaseModel): + ShardId: str + ShardIteratorType: ShardIteratorTypeType + StreamName: Optional[str] = None + StartingSequenceNumber: Optional[str] = None + Timestamp: Optional[TimestampTypeDef] = None + StreamARN: Optional[str] = None + +class ListStreamConsumersInputListStreamConsumersPaginateTypeDef(BaseModel): + StreamARN: str + StreamCreationTimestamp: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamConsumersInputRequestTypeDef(BaseModel): + StreamARN: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StreamCreationTimestamp: Optional[TimestampTypeDef] = None + +class ShardFilterTypeDef(BaseModel): + Type: ShardFilterTypeType + ShardId: Optional[str] = None + Timestamp: Optional[TimestampTypeDef] = None + +class StartingPositionTypeDef(BaseModel): + Type: ShardIteratorTypeType + SequenceNumber: Optional[str] = None + Timestamp: Optional[TimestampTypeDef] = None + +class ListTagsForStreamOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + HasMoreTags: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutRecordsOutputTypeDef(BaseModel): + FailedRecordCount: int + Records: List[PutRecordsResultEntryTypeDef] + EncryptionType: EncryptionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ShardTypeDef(BaseModel): + ShardId: str + HashKeyRange: HashKeyRangeTypeDef + SequenceNumberRange: SequenceNumberRangeTypeDef + ParentShardId: Optional[str] = None + AdjacentParentShardId: Optional[str] = None + +class PutRecordsInputRequestTypeDef(BaseModel): + Records: Sequence[PutRecordsRequestEntryTypeDef] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class GetRecordsOutputTypeDef(BaseModel): + Records: List[RecordTypeDef] + NextShardIterator: str + MillisBehindLatest: int + ChildShards: List[ChildShardTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubscribeToShardEventTypeDef(BaseModel): + Records: List[RecordTypeDef] + ContinuationSequenceNumber: str + MillisBehindLatest: int + ChildShards: Optional[List[ChildShardTypeDef]] = None + +class ListStreamsOutputTypeDef(BaseModel): + StreamNames: List[str] + HasMoreStreams: bool + NextToken: str + StreamSummaries: List[StreamSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStreamSummaryOutputTypeDef(BaseModel): + StreamDescriptionSummary: StreamDescriptionSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListShardsInputListShardsPaginateTypeDef(BaseModel): + StreamName: Optional[str] = None + ExclusiveStartShardId: Optional[str] = None + StreamCreationTimestamp: Optional[TimestampTypeDef] = None + ShardFilter: Optional[ShardFilterTypeDef] = None + StreamARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListShardsInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + NextToken: Optional[str] = None + ExclusiveStartShardId: Optional[str] = None + MaxResults: Optional[int] = None + StreamCreationTimestamp: Optional[TimestampTypeDef] = None + ShardFilter: Optional[ShardFilterTypeDef] = None + StreamARN: Optional[str] = None + +class SubscribeToShardInputRequestTypeDef(BaseModel): + ConsumerARN: str + ShardId: str + StartingPosition: StartingPositionTypeDef + +class ListShardsOutputTypeDef(BaseModel): + Shards: List[ShardTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StreamDescriptionTypeDef(BaseModel): + StreamName: str + StreamARN: str + StreamStatus: StreamStatusType + Shards: List[ShardTypeDef] + HasMoreShards: bool + RetentionPeriodHours: int + StreamCreationTimestamp: datetime + EnhancedMonitoring: List[EnhancedMetricsTypeDef] + StreamModeDetails: Optional[StreamModeDetailsTypeDef] = None + EncryptionType: Optional[EncryptionTypeType] = None + KeyId: Optional[str] = None + +class SubscribeToShardEventStreamTypeDef(BaseModel): + SubscribeToShardEvent: SubscribeToShardEventTypeDef + ResourceNotFoundException: Optional[ResourceNotFoundExceptionTypeDef] = None + ResourceInUseException: Optional[ResourceInUseExceptionTypeDef] = None + KMSDisabledException: Optional[KMSDisabledExceptionTypeDef] = None + KMSInvalidStateException: Optional[KMSInvalidStateExceptionTypeDef] = None + KMSAccessDeniedException: Optional[KMSAccessDeniedExceptionTypeDef] = None + KMSNotFoundException: Optional[KMSNotFoundExceptionTypeDef] = None + KMSOptInRequired: Optional[KMSOptInRequiredTypeDef] = None + KMSThrottlingException: Optional[KMSThrottlingExceptionTypeDef] = None + InternalFailureException: Optional[InternalFailureExceptionTypeDef] = None + +class DescribeStreamOutputTypeDef(BaseModel): + StreamDescription: StreamDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SubscribeToShardOutputTypeDef(BaseModel): + EventStream: "EventStream[SubscribeToShardEventStreamTypeDef]" + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kinesis_constants.py b/aws_resource_validator/pydantic_models/kinesis_constants.py new file mode 100644 index 00000000..aee07928 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_constants.py @@ -0,0 +1,446 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConsumerStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +DescribeStreamPaginatorName = Literal["describe_stream"] +EncryptionTypeType = Literal["KMS", "NONE"] +ListShardsPaginatorName = Literal["list_shards"] +ListStreamConsumersPaginatorName = Literal["list_stream_consumers"] +ListStreamsPaginatorName = Literal["list_streams"] +MetricsNameType = Literal["ALL", + "IncomingBytes", + "IncomingRecords", + "IteratorAgeMilliseconds", + "OutgoingBytes", + "OutgoingRecords", + "ReadProvisionedThroughputExceeded", + "WriteProvisionedThroughputExceeded",] +ScalingTypeType = Literal["UNIFORM_SCALING"] +ShardFilterTypeType = Literal["AFTER_SHARD_ID", + "AT_LATEST", + "AT_TIMESTAMP", + "AT_TRIM_HORIZON", + "FROM_TIMESTAMP", + "FROM_TRIM_HORIZON",] +ShardIteratorTypeType = Literal["AFTER_SEQUENCE_NUMBER", "AT_SEQUENCE_NUMBER", "AT_TIMESTAMP", "LATEST", "TRIM_HORIZON"] +StreamExistsWaiterName = Literal["stream_exists"] +StreamModeType = Literal["ON_DEMAND", "PROVISIONED"] +StreamNotExistsWaiterName = Literal["stream_not_exists"] +StreamStatusType = Literal["ACTIVE", "CREATING", "DELETING", "UPDATING"] +KinesisServiceName = Literal["kinesis"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_stream", "list_shards", "list_stream_consumers", "list_streams"] +WaiterName = Literal["stream_exists", "stream_not_exists"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any]] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kinesis_video_archived_media_classes.py b/aws_resource_validator/pydantic_models/kinesis_video_archived_media_classes.py new file mode 100644 index 00000000..4c07eb0a --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_archived_media_classes.py @@ -0,0 +1,168 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesis_video_archived_media_constants import * + +class FragmentTypeDef(BaseModel): + FragmentNumber: Optional[str] = None + FragmentSizeInBytes: Optional[int] = None + ProducerTimestamp: Optional[datetime] = None + ServerTimestamp: Optional[datetime] = None + FragmentLengthInMilliseconds: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ImageTypeDef(BaseModel): + TimeStamp: Optional[datetime] = None + Error: Optional[ImageErrorType] = None + ImageContent: Optional[str] = None + +class GetMediaForFragmentListInputRequestTypeDef(BaseModel): + Fragments: Sequence[str] + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class ClipTimestampRangeTypeDef(BaseModel): + StartTimestamp: TimestampTypeDef + EndTimestamp: TimestampTypeDef + +class DASHTimestampRangeTypeDef(BaseModel): + StartTimestamp: Optional[TimestampTypeDef] = None + EndTimestamp: Optional[TimestampTypeDef] = None + +class GetImagesInputRequestTypeDef(BaseModel): + ImageSelectorType: ImageSelectorTypeType + StartTimestamp: TimestampTypeDef + EndTimestamp: TimestampTypeDef + Format: FormatType + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + SamplingInterval: Optional[int] = None + FormatConfig: Optional[Mapping[Literal["JPEGQuality"], str]] = None + WidthPixels: Optional[int] = None + HeightPixels: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class HLSTimestampRangeTypeDef(BaseModel): + StartTimestamp: Optional[TimestampTypeDef] = None + EndTimestamp: Optional[TimestampTypeDef] = None + +class TimestampRangeTypeDef(BaseModel): + StartTimestamp: TimestampTypeDef + EndTimestamp: TimestampTypeDef + +class GetClipOutputTypeDef(BaseModel): + ContentType: str + Payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetDASHStreamingSessionURLOutputTypeDef(BaseModel): + DASHStreamingSessionURL: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetHLSStreamingSessionURLOutputTypeDef(BaseModel): + HLSStreamingSessionURL: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMediaForFragmentListOutputTypeDef(BaseModel): + ContentType: str + Payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ListFragmentsOutputTypeDef(BaseModel): + Fragments: List[FragmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImagesInputGetImagesPaginateTypeDef(BaseModel): + ImageSelectorType: ImageSelectorTypeType + StartTimestamp: TimestampTypeDef + EndTimestamp: TimestampTypeDef + Format: FormatType + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + SamplingInterval: Optional[int] = None + FormatConfig: Optional[Mapping[Literal["JPEGQuality"], str]] = None + WidthPixels: Optional[int] = None + HeightPixels: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetImagesOutputTypeDef(BaseModel): + Images: List[ImageTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClipFragmentSelectorTypeDef(BaseModel): + FragmentSelectorType: ClipFragmentSelectorTypeType + TimestampRange: ClipTimestampRangeTypeDef + +class DASHFragmentSelectorTypeDef(BaseModel): + FragmentSelectorType: Optional[DASHFragmentSelectorTypeType] = None + TimestampRange: Optional[DASHTimestampRangeTypeDef] = None + +class HLSFragmentSelectorTypeDef(BaseModel): + FragmentSelectorType: Optional[HLSFragmentSelectorTypeType] = None + TimestampRange: Optional[HLSTimestampRangeTypeDef] = None + +class FragmentSelectorTypeDef(BaseModel): + FragmentSelectorType: FragmentSelectorTypeType + TimestampRange: TimestampRangeTypeDef + +class GetClipInputRequestTypeDef(BaseModel): + ClipFragmentSelector: ClipFragmentSelectorTypeDef + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class GetDASHStreamingSessionURLInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + PlaybackMode: Optional[DASHPlaybackModeType] = None + DisplayFragmentTimestamp: Optional[DASHDisplayFragmentTimestampType] = None + DisplayFragmentNumber: Optional[DASHDisplayFragmentNumberType] = None + DASHFragmentSelector: Optional[DASHFragmentSelectorTypeDef] = None + Expires: Optional[int] = None + MaxManifestFragmentResults: Optional[int] = None + +class GetHLSStreamingSessionURLInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + PlaybackMode: Optional[HLSPlaybackModeType] = None + HLSFragmentSelector: Optional[HLSFragmentSelectorTypeDef] = None + ContainerFormat: Optional[ContainerFormatType] = None + DiscontinuityMode: Optional[HLSDiscontinuityModeType] = None + DisplayFragmentTimestamp: Optional[HLSDisplayFragmentTimestampType] = None + Expires: Optional[int] = None + MaxMediaPlaylistFragmentResults: Optional[int] = None + +class ListFragmentsInputListFragmentsPaginateTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + FragmentSelector: Optional[FragmentSelectorTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFragmentsInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + FragmentSelector: Optional[FragmentSelectorTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/kinesis_video_archived_media_constants.py b/aws_resource_validator/pydantic_models/kinesis_video_archived_media_constants.py new file mode 100644 index 00000000..61333890 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_archived_media_constants.py @@ -0,0 +1,425 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ClipFragmentSelectorTypeType = Literal["PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP"] +ContainerFormatType = Literal["FRAGMENTED_MP4", "MPEG_TS"] +DASHDisplayFragmentNumberType = Literal["ALWAYS", "NEVER"] +DASHDisplayFragmentTimestampType = Literal["ALWAYS", "NEVER"] +DASHFragmentSelectorTypeType = Literal["PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP"] +DASHPlaybackModeType = Literal["LIVE", "LIVE_REPLAY", "ON_DEMAND"] +FormatConfigKeyType = Literal["JPEGQuality"] +FormatType = Literal["JPEG", "PNG"] +FragmentSelectorTypeType = Literal["PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP"] +GetImagesPaginatorName = Literal["get_images"] +HLSDiscontinuityModeType = Literal["ALWAYS", "NEVER", "ON_DISCONTINUITY"] +HLSDisplayFragmentTimestampType = Literal["ALWAYS", "NEVER"] +HLSFragmentSelectorTypeType = Literal["PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP"] +HLSPlaybackModeType = Literal["LIVE", "LIVE_REPLAY", "ON_DEMAND"] +ImageErrorType = Literal["MEDIA_ERROR", "NO_MEDIA"] +ImageSelectorTypeType = Literal["PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP"] +ListFragmentsPaginatorName = Literal["list_fragments"] +KinesisVideoArchivedMediaServiceName = Literal["kinesis-video-archived-media"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_images", "list_fragments"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kinesis_video_media_classes.py b/aws_resource_validator/pydantic_models/kinesis_video_media_classes.py new file mode 100644 index 00000000..f72aa0ce --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_media_classes.py @@ -0,0 +1,36 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesis_video_media_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetMediaOutputTypeDef(BaseModel): + ContentType: str + Payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class StartSelectorTypeDef(BaseModel): + StartSelectorType: StartSelectorTypeType + AfterFragmentNumber: Optional[str] = None + StartTimestamp: Optional[TimestampTypeDef] = None + ContinuationToken: Optional[str] = None + +class GetMediaInputRequestTypeDef(BaseModel): + StartSelector: StartSelectorTypeDef + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/kinesis_video_media_constants.py b/aws_resource_validator/pydantic_models/kinesis_video_media_constants.py new file mode 100644 index 00000000..1bc90221 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_media_constants.py @@ -0,0 +1,411 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +StartSelectorTypeType = Literal["CONTINUATION_TOKEN", + "EARLIEST", + "FRAGMENT_NUMBER", + "NOW", + "PRODUCER_TIMESTAMP", + "SERVER_TIMESTAMP",] +KinesisVideoMediaServiceName = Literal["kinesis-video-media"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kinesis_video_signaling_classes.py b/aws_resource_validator/pydantic_models/kinesis_video_signaling_classes.py new file mode 100644 index 00000000..559b4993 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_signaling_classes.py @@ -0,0 +1,45 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesis_video_signaling_constants import * + +class GetIceServerConfigRequestRequestTypeDef(BaseModel): + ChannelARN: str + ClientId: Optional[str] = None + Service: Optional[Literal["TURN"]] = None + Username: Optional[str] = None + +class IceServerTypeDef(BaseModel): + Uris: Optional[List[str]] = None + Username: Optional[str] = None + Password: Optional[str] = None + Ttl: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class SendAlexaOfferToMasterRequestRequestTypeDef(BaseModel): + ChannelARN: str + SenderClientId: str + MessagePayload: str + +class GetIceServerConfigResponseTypeDef(BaseModel): + IceServerList: List[IceServerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendAlexaOfferToMasterResponseTypeDef(BaseModel): + Answer: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kinesis_video_signaling_constants.py b/aws_resource_validator/pydantic_models/kinesis_video_signaling_constants.py new file mode 100644 index 00000000..3268e0ff --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_signaling_constants.py @@ -0,0 +1,405 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ServiceType = Literal["TURN"] +KinesisVideoSignalingChannelsServiceName = Literal["kinesis-video-signaling"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_classes.py b/aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_classes.py new file mode 100644 index 00000000..24155b9c --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_classes.py @@ -0,0 +1,26 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesis_video_webrtc_storage_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class JoinStorageSessionInputRequestTypeDef(BaseModel): + channelArn: str + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_constants.py b/aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_constants.py new file mode 100644 index 00000000..d8ad756b --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesis_video_webrtc_storage_constants.py @@ -0,0 +1,404 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +KinesisVideoWebRTCStorageServiceName = Literal["kinesis-video-webrtc-storage"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/kinesisanalytics_classes.py b/aws_resource_validator/pydantic_models/kinesisanalytics_classes.py new file mode 100644 index 00000000..2cd8e1ed --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesisanalytics_classes.py @@ -0,0 +1,399 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesisanalytics_constants import * + +class CloudWatchLoggingOptionTypeDef(BaseModel): + LogStreamARN: str + RoleARN: str + +class CloudWatchLoggingOptionDescriptionTypeDef(BaseModel): + LogStreamARN: str + RoleARN: str + CloudWatchLoggingOptionId: Optional[str] = None + +class ApplicationSummaryTypeDef(BaseModel): + ApplicationName: str + ApplicationARN: str + ApplicationStatus: ApplicationStatusType + +class CloudWatchLoggingOptionUpdateTypeDef(BaseModel): + CloudWatchLoggingOptionId: str + LogStreamARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class CSVMappingParametersTypeDef(BaseModel): + RecordRowDelimiter: str + RecordColumnDelimiter: str + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteApplicationCloudWatchLoggingOptionRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + CloudWatchLoggingOptionId: str + +class DeleteApplicationInputProcessingConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + InputId: str + +class DeleteApplicationOutputRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + OutputId: str + +class DeleteApplicationReferenceDataSourceRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + ReferenceId: str + +class DescribeApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + +class DestinationSchemaTypeDef(BaseModel): + RecordFormatType: RecordFormatTypeType + +class InputStartingPositionConfigurationTypeDef(BaseModel): + InputStartingPosition: Optional[InputStartingPositionType] = None + +class S3ConfigurationTypeDef(BaseModel): + RoleARN: str + BucketARN: str + FileKey: str + +class InputParallelismTypeDef(BaseModel): + Count: Optional[int] = None + +class KinesisFirehoseInputDescriptionTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + +class KinesisStreamsInputDescriptionTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + +class InputLambdaProcessorDescriptionTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + +class InputLambdaProcessorTypeDef(BaseModel): + ResourceARN: str + RoleARN: str + +class InputLambdaProcessorUpdateTypeDef(BaseModel): + ResourceARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class InputParallelismUpdateTypeDef(BaseModel): + CountUpdate: Optional[int] = None + +class RecordColumnTypeDef(BaseModel): + Name: str + SqlType: str + Mapping: Optional[str] = None + +class KinesisFirehoseInputTypeDef(BaseModel): + ResourceARN: str + RoleARN: str + +class KinesisStreamsInputTypeDef(BaseModel): + ResourceARN: str + RoleARN: str + +class KinesisFirehoseInputUpdateTypeDef(BaseModel): + ResourceARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class KinesisStreamsInputUpdateTypeDef(BaseModel): + ResourceARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class JSONMappingParametersTypeDef(BaseModel): + RecordRowPath: str + +class KinesisFirehoseOutputDescriptionTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + +class KinesisFirehoseOutputTypeDef(BaseModel): + ResourceARN: str + RoleARN: str + +class KinesisFirehoseOutputUpdateTypeDef(BaseModel): + ResourceARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class KinesisStreamsOutputDescriptionTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + +class KinesisStreamsOutputTypeDef(BaseModel): + ResourceARN: str + RoleARN: str + +class KinesisStreamsOutputUpdateTypeDef(BaseModel): + ResourceARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class LambdaOutputDescriptionTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + +class LambdaOutputTypeDef(BaseModel): + ResourceARN: str + RoleARN: str + +class LambdaOutputUpdateTypeDef(BaseModel): + ResourceARNUpdate: Optional[str] = None + RoleARNUpdate: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + Limit: Optional[int] = None + ExclusiveStartApplicationName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class S3ReferenceDataSourceDescriptionTypeDef(BaseModel): + BucketARN: str + FileKey: str + ReferenceRoleARN: str + +class S3ReferenceDataSourceTypeDef(BaseModel): + BucketARN: str + FileKey: str + ReferenceRoleARN: str + +class S3ReferenceDataSourceUpdateTypeDef(BaseModel): + BucketARNUpdate: Optional[str] = None + FileKeyUpdate: Optional[str] = None + ReferenceRoleARNUpdate: Optional[str] = None + +class StopApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class AddApplicationCloudWatchLoggingOptionRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + CloudWatchLoggingOption: CloudWatchLoggingOptionTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateApplicationResponseTypeDef(BaseModel): + ApplicationSummary: ApplicationSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + ApplicationSummaries: List[ApplicationSummaryTypeDef] + HasMoreApplications: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CreateTimestamp: TimestampTypeDef + +class InputConfigurationTypeDef(BaseModel): + Id: str + InputStartingPositionConfiguration: InputStartingPositionConfigurationTypeDef + +class InputProcessingConfigurationDescriptionTypeDef(BaseModel): + InputLambdaProcessorDescription: Optional[InputLambdaProcessorDescriptionTypeDef] = None + +class InputProcessingConfigurationTypeDef(BaseModel): + InputLambdaProcessor: InputLambdaProcessorTypeDef + +class InputProcessingConfigurationUpdateTypeDef(BaseModel): + InputLambdaProcessorUpdate: InputLambdaProcessorUpdateTypeDef + +class MappingParametersTypeDef(BaseModel): + JSONMappingParameters: Optional[JSONMappingParametersTypeDef] = None + CSVMappingParameters: Optional[CSVMappingParametersTypeDef] = None + +class OutputDescriptionTypeDef(BaseModel): + OutputId: Optional[str] = None + Name: Optional[str] = None + KinesisStreamsOutputDescription: Optional[KinesisStreamsOutputDescriptionTypeDef] = None + KinesisFirehoseOutputDescription: Optional[KinesisFirehoseOutputDescriptionTypeDef] = None + LambdaOutputDescription: Optional[LambdaOutputDescriptionTypeDef] = None + DestinationSchema: Optional[DestinationSchemaTypeDef] = None + +class OutputTypeDef(BaseModel): + Name: str + DestinationSchema: DestinationSchemaTypeDef + KinesisStreamsOutput: Optional[KinesisStreamsOutputTypeDef] = None + KinesisFirehoseOutput: Optional[KinesisFirehoseOutputTypeDef] = None + LambdaOutput: Optional[LambdaOutputTypeDef] = None + +class OutputUpdateTypeDef(BaseModel): + OutputId: str + NameUpdate: Optional[str] = None + KinesisStreamsOutputUpdate: Optional[KinesisStreamsOutputUpdateTypeDef] = None + KinesisFirehoseOutputUpdate: Optional[KinesisFirehoseOutputUpdateTypeDef] = None + LambdaOutputUpdate: Optional[LambdaOutputUpdateTypeDef] = None + DestinationSchemaUpdate: Optional[DestinationSchemaTypeDef] = None + +class StartApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + InputConfigurations: Sequence[InputConfigurationTypeDef] + +class AddApplicationInputProcessingConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + InputId: str + InputProcessingConfiguration: InputProcessingConfigurationTypeDef + +class DiscoverInputSchemaRequestRequestTypeDef(BaseModel): + ResourceARN: Optional[str] = None + RoleARN: Optional[str] = None + InputStartingPositionConfiguration: Optional[ InputStartingPositionConfigurationTypeDef ] = None + S3Configuration: Optional[S3ConfigurationTypeDef] = None + InputProcessingConfiguration: Optional[InputProcessingConfigurationTypeDef] = None + +class RecordFormatTypeDef(BaseModel): + RecordFormatType: RecordFormatTypeType + MappingParameters: Optional[MappingParametersTypeDef] = None + +class AddApplicationOutputRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + Output: OutputTypeDef + +class InputSchemaUpdateTypeDef(BaseModel): + RecordFormatUpdate: Optional[RecordFormatTypeDef] = None + RecordEncodingUpdate: Optional[str] = None + RecordColumnUpdates: Optional[Sequence[RecordColumnTypeDef]] = None + +class SourceSchemaTypeDef(BaseModel): + RecordFormat: RecordFormatTypeDef + RecordColumns: Sequence[RecordColumnTypeDef] + RecordEncoding: Optional[str] = None + +class InputUpdateTypeDef(BaseModel): + InputId: str + NamePrefixUpdate: Optional[str] = None + InputProcessingConfigurationUpdate: Optional[ InputProcessingConfigurationUpdateTypeDef ] = None + KinesisStreamsInputUpdate: Optional[KinesisStreamsInputUpdateTypeDef] = None + KinesisFirehoseInputUpdate: Optional[KinesisFirehoseInputUpdateTypeDef] = None + InputSchemaUpdate: Optional[InputSchemaUpdateTypeDef] = None + InputParallelismUpdate: Optional[InputParallelismUpdateTypeDef] = None + +class DiscoverInputSchemaResponseTypeDef(BaseModel): + InputSchema: SourceSchemaTypeDef + ParsedInputRecords: List[List[str]] + ProcessedInputRecords: List[str] + RawInputRecords: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class InputDescriptionTypeDef(BaseModel): + InputId: Optional[str] = None + NamePrefix: Optional[str] = None + InAppStreamNames: Optional[List[str]] = None + InputProcessingConfigurationDescription: Optional[ InputProcessingConfigurationDescriptionTypeDef ] = None + KinesisStreamsInputDescription: Optional[KinesisStreamsInputDescriptionTypeDef] = None + KinesisFirehoseInputDescription: Optional[KinesisFirehoseInputDescriptionTypeDef] = None + InputSchema: Optional[SourceSchemaTypeDef] = None + InputParallelism: Optional[InputParallelismTypeDef] = None + InputStartingPositionConfiguration: Optional[ InputStartingPositionConfigurationTypeDef ] = None + +class InputTypeDef(BaseModel): + NamePrefix: str + InputSchema: SourceSchemaTypeDef + InputProcessingConfiguration: Optional[InputProcessingConfigurationTypeDef] = None + KinesisStreamsInput: Optional[KinesisStreamsInputTypeDef] = None + KinesisFirehoseInput: Optional[KinesisFirehoseInputTypeDef] = None + InputParallelism: Optional[InputParallelismTypeDef] = None + +class ReferenceDataSourceDescriptionTypeDef(BaseModel): + ReferenceId: str + TableName: str + S3ReferenceDataSourceDescription: S3ReferenceDataSourceDescriptionTypeDef + ReferenceSchema: Optional[SourceSchemaTypeDef] = None + +class ReferenceDataSourceTypeDef(BaseModel): + TableName: str + ReferenceSchema: SourceSchemaTypeDef + S3ReferenceDataSource: Optional[S3ReferenceDataSourceTypeDef] = None + +class ReferenceDataSourceUpdateTypeDef(BaseModel): + ReferenceId: str + TableNameUpdate: Optional[str] = None + S3ReferenceDataSourceUpdate: Optional[S3ReferenceDataSourceUpdateTypeDef] = None + ReferenceSchemaUpdate: Optional[SourceSchemaTypeDef] = None + +class AddApplicationInputRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + Input: InputTypeDef + +class CreateApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + ApplicationDescription: Optional[str] = None + Inputs: Optional[Sequence[InputTypeDef]] = None + Outputs: Optional[Sequence[OutputTypeDef]] = None + CloudWatchLoggingOptions: Optional[Sequence[CloudWatchLoggingOptionTypeDef]] = None + ApplicationCode: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ApplicationDetailTypeDef(BaseModel): + ApplicationName: str + ApplicationARN: str + ApplicationStatus: ApplicationStatusType + ApplicationVersionId: int + ApplicationDescription: Optional[str] = None + CreateTimestamp: Optional[datetime] = None + LastUpdateTimestamp: Optional[datetime] = None + InputDescriptions: Optional[List[InputDescriptionTypeDef]] = None + OutputDescriptions: Optional[List[OutputDescriptionTypeDef]] = None + ReferenceDataSourceDescriptions: Optional[List[ReferenceDataSourceDescriptionTypeDef]] = None + CloudWatchLoggingOptionDescriptions: Optional[ List[CloudWatchLoggingOptionDescriptionTypeDef] ] = None + ApplicationCode: Optional[str] = None + +class AddApplicationReferenceDataSourceRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + ReferenceDataSource: ReferenceDataSourceTypeDef + +class ApplicationUpdateTypeDef(BaseModel): + InputUpdates: Optional[Sequence[InputUpdateTypeDef]] = None + ApplicationCodeUpdate: Optional[str] = None + OutputUpdates: Optional[Sequence[OutputUpdateTypeDef]] = None + ReferenceDataSourceUpdates: Optional[Sequence[ReferenceDataSourceUpdateTypeDef]] = None + CloudWatchLoggingOptionUpdates: Optional[ Sequence[CloudWatchLoggingOptionUpdateTypeDef] ] = None + +class DescribeApplicationResponseTypeDef(BaseModel): + ApplicationDetail: ApplicationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + ApplicationUpdate: ApplicationUpdateTypeDef + diff --git a/aws_resource_validator/pydantic_models/kinesisanalytics_constants.py b/aws_resource_validator/pydantic_models/kinesisanalytics_constants.py new file mode 100644 index 00000000..21a04215 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesisanalytics_constants.py @@ -0,0 +1,420 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationStatusType = Literal["DELETING", "READY", "RUNNING", "STARTING", "STOPPING", "UPDATING"] +InputStartingPositionType = Literal["LAST_STOPPED_POINT", "NOW", "TRIM_HORIZON"] +RecordFormatTypeType = Literal["CSV", "JSON"] +KinesisAnalyticsServiceName = Literal["kinesisanalytics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kinesisanalyticsv2_classes.py b/aws_resource_validator/pydantic_models/kinesisanalyticsv2_classes.py new file mode 100644 index 00000000..ce2d0136 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesisanalyticsv2_classes.py @@ -0,0 +1,957 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesisanalyticsv2_constants import * + +class CloudWatchLoggingOptionTypeDef(BaseModel): + LogStreamARN: str + +class CloudWatchLoggingOptionDescriptionTypeDef(BaseModel): + LogStreamARN: str + CloudWatchLoggingOptionId: Optional[str] = None + RoleARN: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class VpcConfigurationTypeDef(BaseModel): + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + +class VpcConfigurationDescriptionTypeDef(BaseModel): + VpcConfigurationId: str + VpcId: str + SubnetIds: List[str] + SecurityGroupIds: List[str] + +class ApplicationSnapshotConfigurationDescriptionTypeDef(BaseModel): + SnapshotsEnabled: bool + +class ApplicationSystemRollbackConfigurationDescriptionTypeDef(BaseModel): + RollbackEnabled: bool + +class ApplicationSnapshotConfigurationTypeDef(BaseModel): + SnapshotsEnabled: bool + +class ApplicationSystemRollbackConfigurationTypeDef(BaseModel): + RollbackEnabled: bool + +class ApplicationSnapshotConfigurationUpdateTypeDef(BaseModel): + SnapshotsEnabledUpdate: bool + +class ApplicationSystemRollbackConfigurationUpdateTypeDef(BaseModel): + RollbackEnabledUpdate: bool + +class VpcConfigurationUpdateTypeDef(BaseModel): + VpcConfigurationId: str + SubnetIdUpdates: Optional[Sequence[str]] = None + SecurityGroupIdUpdates: Optional[Sequence[str]] = None + +class ApplicationMaintenanceConfigurationDescriptionTypeDef(BaseModel): + ApplicationMaintenanceWindowStartTime: str + ApplicationMaintenanceWindowEndTime: str + +class ApplicationMaintenanceConfigurationUpdateTypeDef(BaseModel): + ApplicationMaintenanceWindowStartTimeUpdate: str + +class ApplicationVersionChangeDetailsTypeDef(BaseModel): + ApplicationVersionUpdatedFrom: int + ApplicationVersionUpdatedTo: int + +class ApplicationOperationInfoTypeDef(BaseModel): + Operation: Optional[str] = None + OperationId: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + OperationStatus: Optional[OperationStatusType] = None + +class ApplicationRestoreConfigurationTypeDef(BaseModel): + ApplicationRestoreType: ApplicationRestoreTypeType + SnapshotName: Optional[str] = None + +class ApplicationSummaryTypeDef(BaseModel): + ApplicationName: str + ApplicationARN: str + ApplicationStatus: ApplicationStatusType + ApplicationVersionId: int + RuntimeEnvironment: RuntimeEnvironmentType + ApplicationMode: Optional[ApplicationModeType] = None + +class ApplicationVersionSummaryTypeDef(BaseModel): + ApplicationVersionId: int + ApplicationStatus: ApplicationStatusType + +class CSVMappingParametersTypeDef(BaseModel): + RecordRowDelimiter: str + RecordColumnDelimiter: str + +class GlueDataCatalogConfigurationDescriptionTypeDef(BaseModel): + DatabaseARN: str + +class GlueDataCatalogConfigurationTypeDef(BaseModel): + DatabaseARN: str + +class GlueDataCatalogConfigurationUpdateTypeDef(BaseModel): + DatabaseARNUpdate: str + +class CheckpointConfigurationDescriptionTypeDef(BaseModel): + ConfigurationType: Optional[ConfigurationTypeType] = None + CheckpointingEnabled: Optional[bool] = None + CheckpointInterval: Optional[int] = None + MinPauseBetweenCheckpoints: Optional[int] = None + +class CheckpointConfigurationTypeDef(BaseModel): + ConfigurationType: ConfigurationTypeType + CheckpointingEnabled: Optional[bool] = None + CheckpointInterval: Optional[int] = None + MinPauseBetweenCheckpoints: Optional[int] = None + +class CheckpointConfigurationUpdateTypeDef(BaseModel): + ConfigurationTypeUpdate: Optional[ConfigurationTypeType] = None + CheckpointingEnabledUpdate: Optional[bool] = None + CheckpointIntervalUpdate: Optional[int] = None + MinPauseBetweenCheckpointsUpdate: Optional[int] = None + +class CloudWatchLoggingOptionUpdateTypeDef(BaseModel): + CloudWatchLoggingOptionId: str + LogStreamARNUpdate: Optional[str] = None + +class S3ApplicationCodeLocationDescriptionTypeDef(BaseModel): + BucketARN: str + FileKey: str + ObjectVersion: Optional[str] = None + +class S3ContentLocationTypeDef(BaseModel): + BucketARN: str + FileKey: str + ObjectVersion: Optional[str] = None + +class S3ContentLocationUpdateTypeDef(BaseModel): + BucketARNUpdate: Optional[str] = None + FileKeyUpdate: Optional[str] = None + ObjectVersionUpdate: Optional[str] = None + +class CreateApplicationPresignedUrlRequestRequestTypeDef(BaseModel): + ApplicationName: str + UrlType: UrlTypeType + SessionExpirationDurationInSeconds: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class CreateApplicationSnapshotRequestRequestTypeDef(BaseModel): + ApplicationName: str + SnapshotName: str + +class MavenReferenceTypeDef(BaseModel): + GroupId: str + ArtifactId: str + Version: str + +class DeleteApplicationCloudWatchLoggingOptionRequestRequestTypeDef(BaseModel): + ApplicationName: str + CloudWatchLoggingOptionId: str + CurrentApplicationVersionId: Optional[int] = None + ConditionalToken: Optional[str] = None + +class DeleteApplicationInputProcessingConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + InputId: str + +class DeleteApplicationOutputRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + OutputId: str + +class DeleteApplicationReferenceDataSourceRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + ReferenceId: str + +class DeleteApplicationVpcConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + VpcConfigurationId: str + CurrentApplicationVersionId: Optional[int] = None + ConditionalToken: Optional[str] = None + +class S3ContentBaseLocationDescriptionTypeDef(BaseModel): + BucketARN: str + BasePath: Optional[str] = None + +class S3ContentBaseLocationTypeDef(BaseModel): + BucketARN: str + BasePath: Optional[str] = None + +class S3ContentBaseLocationUpdateTypeDef(BaseModel): + BucketARNUpdate: Optional[str] = None + BasePathUpdate: Optional[str] = None + +class DescribeApplicationOperationRequestRequestTypeDef(BaseModel): + ApplicationName: str + OperationId: str + +class DescribeApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + IncludeAdditionalDetails: Optional[bool] = None + +class DescribeApplicationSnapshotRequestRequestTypeDef(BaseModel): + ApplicationName: str + SnapshotName: str + +class SnapshotDetailsTypeDef(BaseModel): + SnapshotName: str + SnapshotStatus: SnapshotStatusType + ApplicationVersionId: int + SnapshotCreationTimestamp: Optional[datetime] = None + RuntimeEnvironment: Optional[RuntimeEnvironmentType] = None + +class DescribeApplicationVersionRequestRequestTypeDef(BaseModel): + ApplicationName: str + ApplicationVersionId: int + +class DestinationSchemaTypeDef(BaseModel): + RecordFormatType: RecordFormatTypeType + +class InputStartingPositionConfigurationTypeDef(BaseModel): + InputStartingPosition: Optional[InputStartingPositionType] = None + +class S3ConfigurationTypeDef(BaseModel): + BucketARN: str + FileKey: str + +class PropertyGroupTypeDef(BaseModel): + PropertyGroupId: str + PropertyMap: Mapping[str, str] + +class PropertyGroupOutputTypeDef(BaseModel): + PropertyGroupId: str + PropertyMap: Dict[str, str] + +class ErrorInfoTypeDef(BaseModel): + ErrorString: Optional[str] = None + +class MonitoringConfigurationDescriptionTypeDef(BaseModel): + ConfigurationType: Optional[ConfigurationTypeType] = None + MetricsLevel: Optional[MetricsLevelType] = None + LogLevel: Optional[LogLevelType] = None + +class ParallelismConfigurationDescriptionTypeDef(BaseModel): + ConfigurationType: Optional[ConfigurationTypeType] = None + Parallelism: Optional[int] = None + ParallelismPerKPU: Optional[int] = None + CurrentParallelism: Optional[int] = None + AutoScalingEnabled: Optional[bool] = None + +class MonitoringConfigurationTypeDef(BaseModel): + ConfigurationType: ConfigurationTypeType + MetricsLevel: Optional[MetricsLevelType] = None + LogLevel: Optional[LogLevelType] = None + +class ParallelismConfigurationTypeDef(BaseModel): + ConfigurationType: ConfigurationTypeType + Parallelism: Optional[int] = None + ParallelismPerKPU: Optional[int] = None + AutoScalingEnabled: Optional[bool] = None + +class MonitoringConfigurationUpdateTypeDef(BaseModel): + ConfigurationTypeUpdate: Optional[ConfigurationTypeType] = None + MetricsLevelUpdate: Optional[MetricsLevelType] = None + LogLevelUpdate: Optional[LogLevelType] = None + +class ParallelismConfigurationUpdateTypeDef(BaseModel): + ConfigurationTypeUpdate: Optional[ConfigurationTypeType] = None + ParallelismUpdate: Optional[int] = None + ParallelismPerKPUUpdate: Optional[int] = None + AutoScalingEnabledUpdate: Optional[bool] = None + +class FlinkRunConfigurationTypeDef(BaseModel): + AllowNonRestoredState: Optional[bool] = None + +class InputParallelismTypeDef(BaseModel): + Count: Optional[int] = None + +class KinesisFirehoseInputDescriptionTypeDef(BaseModel): + ResourceARN: str + RoleARN: Optional[str] = None + +class KinesisStreamsInputDescriptionTypeDef(BaseModel): + ResourceARN: str + RoleARN: Optional[str] = None + +class InputLambdaProcessorDescriptionTypeDef(BaseModel): + ResourceARN: str + RoleARN: Optional[str] = None + +class InputLambdaProcessorTypeDef(BaseModel): + ResourceARN: str + +class InputLambdaProcessorUpdateTypeDef(BaseModel): + ResourceARNUpdate: str + +class InputParallelismUpdateTypeDef(BaseModel): + CountUpdate: int + +class RecordColumnTypeDef(BaseModel): + Name: str + SqlType: str + Mapping: Optional[str] = None + +class KinesisFirehoseInputTypeDef(BaseModel): + ResourceARN: str + +class KinesisStreamsInputTypeDef(BaseModel): + ResourceARN: str + +class KinesisFirehoseInputUpdateTypeDef(BaseModel): + ResourceARNUpdate: str + +class KinesisStreamsInputUpdateTypeDef(BaseModel): + ResourceARNUpdate: str + +class JSONMappingParametersTypeDef(BaseModel): + RecordRowPath: str + +class KinesisFirehoseOutputDescriptionTypeDef(BaseModel): + ResourceARN: str + RoleARN: Optional[str] = None + +class KinesisFirehoseOutputTypeDef(BaseModel): + ResourceARN: str + +class KinesisFirehoseOutputUpdateTypeDef(BaseModel): + ResourceARNUpdate: str + +class KinesisStreamsOutputDescriptionTypeDef(BaseModel): + ResourceARN: str + RoleARN: Optional[str] = None + +class KinesisStreamsOutputTypeDef(BaseModel): + ResourceARN: str + +class KinesisStreamsOutputUpdateTypeDef(BaseModel): + ResourceARNUpdate: str + +class LambdaOutputDescriptionTypeDef(BaseModel): + ResourceARN: str + RoleARN: Optional[str] = None + +class LambdaOutputTypeDef(BaseModel): + ResourceARN: str + +class LambdaOutputUpdateTypeDef(BaseModel): + ResourceARNUpdate: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationOperationsRequestRequestTypeDef(BaseModel): + ApplicationName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + Operation: Optional[str] = None + OperationStatus: Optional[OperationStatusType] = None + +class ListApplicationSnapshotsRequestRequestTypeDef(BaseModel): + ApplicationName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListApplicationVersionsRequestRequestTypeDef(BaseModel): + ApplicationName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class S3ReferenceDataSourceDescriptionTypeDef(BaseModel): + BucketARN: str + FileKey: str + ReferenceRoleARN: Optional[str] = None + +class S3ReferenceDataSourceTypeDef(BaseModel): + BucketARN: Optional[str] = None + FileKey: Optional[str] = None + +class S3ReferenceDataSourceUpdateTypeDef(BaseModel): + BucketARNUpdate: Optional[str] = None + FileKeyUpdate: Optional[str] = None + +class RollbackApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + +class StopApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + Force: Optional[bool] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class ZeppelinMonitoringConfigurationDescriptionTypeDef(BaseModel): + LogLevel: Optional[LogLevelType] = None + +class ZeppelinMonitoringConfigurationTypeDef(BaseModel): + LogLevel: LogLevelType + +class ZeppelinMonitoringConfigurationUpdateTypeDef(BaseModel): + LogLevelUpdate: LogLevelType + +class AddApplicationCloudWatchLoggingOptionRequestRequestTypeDef(BaseModel): + ApplicationName: str + CloudWatchLoggingOption: CloudWatchLoggingOptionTypeDef + CurrentApplicationVersionId: Optional[int] = None + ConditionalToken: Optional[str] = None + +class AddApplicationCloudWatchLoggingOptionResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + CloudWatchLoggingOptionDescriptions: List[CloudWatchLoggingOptionDescriptionTypeDef] + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationPresignedUrlResponseTypeDef(BaseModel): + AuthorizedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationCloudWatchLoggingOptionResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + CloudWatchLoggingOptionDescriptions: List[CloudWatchLoggingOptionDescriptionTypeDef] + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationInputProcessingConfigurationResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationOutputResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationReferenceDataSourceResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationVpcConfigurationResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartApplicationResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopApplicationResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddApplicationVpcConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + VpcConfiguration: VpcConfigurationTypeDef + CurrentApplicationVersionId: Optional[int] = None + ConditionalToken: Optional[str] = None + +class AddApplicationVpcConfigurationResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + VpcConfigurationDescription: VpcConfigurationDescriptionTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationMaintenanceConfigurationResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationMaintenanceConfigurationDescription: ApplicationMaintenanceConfigurationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationMaintenanceConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + ApplicationMaintenanceConfigurationUpdate: ApplicationMaintenanceConfigurationUpdateTypeDef + +class ListApplicationOperationsResponseTypeDef(BaseModel): + ApplicationOperationInfoList: List[ApplicationOperationInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListApplicationsResponseTypeDef(BaseModel): + ApplicationSummaries: List[ApplicationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListApplicationVersionsResponseTypeDef(BaseModel): + ApplicationVersionSummaries: List[ApplicationVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CatalogConfigurationDescriptionTypeDef(BaseModel): + GlueDataCatalogConfigurationDescription: GlueDataCatalogConfigurationDescriptionTypeDef + +class CatalogConfigurationTypeDef(BaseModel): + GlueDataCatalogConfiguration: GlueDataCatalogConfigurationTypeDef + +class CatalogConfigurationUpdateTypeDef(BaseModel): + GlueDataCatalogConfigurationUpdate: GlueDataCatalogConfigurationUpdateTypeDef + +class CodeContentDescriptionTypeDef(BaseModel): + TextContent: Optional[str] = None + CodeMD5: Optional[str] = None + CodeSize: Optional[int] = None + S3ApplicationCodeLocationDescription: Optional[ S3ApplicationCodeLocationDescriptionTypeDef ] = None + +class CodeContentTypeDef(BaseModel): + TextContent: Optional[str] = None + ZipFileContent: Optional[BlobTypeDef] = None + S3ContentLocation: Optional[S3ContentLocationTypeDef] = None + +class CodeContentUpdateTypeDef(BaseModel): + TextContentUpdate: Optional[str] = None + ZipFileContentUpdate: Optional[BlobTypeDef] = None + S3ContentLocationUpdate: Optional[S3ContentLocationUpdateTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CustomArtifactConfigurationDescriptionTypeDef(BaseModel): + ArtifactType: Optional[ArtifactTypeType] = None + S3ContentLocationDescription: Optional[S3ContentLocationTypeDef] = None + MavenReferenceDescription: Optional[MavenReferenceTypeDef] = None + +class CustomArtifactConfigurationTypeDef(BaseModel): + ArtifactType: ArtifactTypeType + S3ContentLocation: Optional[S3ContentLocationTypeDef] = None + MavenReference: Optional[MavenReferenceTypeDef] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CreateTimestamp: TimestampTypeDef + +class DeleteApplicationSnapshotRequestRequestTypeDef(BaseModel): + ApplicationName: str + SnapshotName: str + SnapshotCreationTimestamp: TimestampTypeDef + +class DeployAsApplicationConfigurationDescriptionTypeDef(BaseModel): + S3ContentLocationDescription: S3ContentBaseLocationDescriptionTypeDef + +class DeployAsApplicationConfigurationTypeDef(BaseModel): + S3ContentLocation: S3ContentBaseLocationTypeDef + +class DeployAsApplicationConfigurationUpdateTypeDef(BaseModel): + S3ContentLocationUpdate: Optional[S3ContentBaseLocationUpdateTypeDef] = None + +class DescribeApplicationSnapshotResponseTypeDef(BaseModel): + SnapshotDetails: SnapshotDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationSnapshotsResponseTypeDef(BaseModel): + SnapshotSummaries: List[SnapshotDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SqlRunConfigurationTypeDef(BaseModel): + InputId: str + InputStartingPositionConfiguration: InputStartingPositionConfigurationTypeDef + +class EnvironmentPropertiesTypeDef(BaseModel): + PropertyGroups: Sequence[PropertyGroupTypeDef] + +class EnvironmentPropertyUpdatesTypeDef(BaseModel): + PropertyGroups: Sequence[PropertyGroupTypeDef] + +class EnvironmentPropertyDescriptionsTypeDef(BaseModel): + PropertyGroupDescriptions: Optional[List[PropertyGroupOutputTypeDef]] = None + +class OperationFailureDetailsTypeDef(BaseModel): + RollbackOperationId: Optional[str] = None + ErrorInfo: Optional[ErrorInfoTypeDef] = None + +class FlinkApplicationConfigurationDescriptionTypeDef(BaseModel): + CheckpointConfigurationDescription: Optional[ CheckpointConfigurationDescriptionTypeDef ] = None + MonitoringConfigurationDescription: Optional[ MonitoringConfigurationDescriptionTypeDef ] = None + ParallelismConfigurationDescription: Optional[ ParallelismConfigurationDescriptionTypeDef ] = None + JobPlanDescription: Optional[str] = None + +class FlinkApplicationConfigurationTypeDef(BaseModel): + CheckpointConfiguration: Optional[CheckpointConfigurationTypeDef] = None + MonitoringConfiguration: Optional[MonitoringConfigurationTypeDef] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + +class FlinkApplicationConfigurationUpdateTypeDef(BaseModel): + CheckpointConfigurationUpdate: Optional[CheckpointConfigurationUpdateTypeDef] = None + MonitoringConfigurationUpdate: Optional[MonitoringConfigurationUpdateTypeDef] = None + ParallelismConfigurationUpdate: Optional[ParallelismConfigurationUpdateTypeDef] = None + +class RunConfigurationDescriptionTypeDef(BaseModel): + ApplicationRestoreConfigurationDescription: Optional[ ApplicationRestoreConfigurationTypeDef ] = None + FlinkRunConfigurationDescription: Optional[FlinkRunConfigurationTypeDef] = None + +class RunConfigurationUpdateTypeDef(BaseModel): + FlinkRunConfiguration: Optional[FlinkRunConfigurationTypeDef] = None + ApplicationRestoreConfiguration: Optional[ApplicationRestoreConfigurationTypeDef] = None + +class InputProcessingConfigurationDescriptionTypeDef(BaseModel): + InputLambdaProcessorDescription: Optional[InputLambdaProcessorDescriptionTypeDef] = None + +class InputProcessingConfigurationTypeDef(BaseModel): + InputLambdaProcessor: InputLambdaProcessorTypeDef + +class InputProcessingConfigurationUpdateTypeDef(BaseModel): + InputLambdaProcessorUpdate: InputLambdaProcessorUpdateTypeDef + +class MappingParametersTypeDef(BaseModel): + JSONMappingParameters: Optional[JSONMappingParametersTypeDef] = None + CSVMappingParameters: Optional[CSVMappingParametersTypeDef] = None + +class OutputDescriptionTypeDef(BaseModel): + OutputId: Optional[str] = None + Name: Optional[str] = None + KinesisStreamsOutputDescription: Optional[KinesisStreamsOutputDescriptionTypeDef] = None + KinesisFirehoseOutputDescription: Optional[KinesisFirehoseOutputDescriptionTypeDef] = None + LambdaOutputDescription: Optional[LambdaOutputDescriptionTypeDef] = None + DestinationSchema: Optional[DestinationSchemaTypeDef] = None + +class OutputTypeDef(BaseModel): + Name: str + DestinationSchema: DestinationSchemaTypeDef + KinesisStreamsOutput: Optional[KinesisStreamsOutputTypeDef] = None + KinesisFirehoseOutput: Optional[KinesisFirehoseOutputTypeDef] = None + LambdaOutput: Optional[LambdaOutputTypeDef] = None + +class OutputUpdateTypeDef(BaseModel): + OutputId: str + NameUpdate: Optional[str] = None + KinesisStreamsOutputUpdate: Optional[KinesisStreamsOutputUpdateTypeDef] = None + KinesisFirehoseOutputUpdate: Optional[KinesisFirehoseOutputUpdateTypeDef] = None + LambdaOutputUpdate: Optional[LambdaOutputUpdateTypeDef] = None + DestinationSchemaUpdate: Optional[DestinationSchemaTypeDef] = None + +class ListApplicationOperationsRequestListApplicationOperationsPaginateTypeDef(BaseModel): + ApplicationName: str + Operation: Optional[str] = None + OperationStatus: Optional[OperationStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationSnapshotsRequestListApplicationSnapshotsPaginateTypeDef(BaseModel): + ApplicationName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationVersionsRequestListApplicationVersionsPaginateTypeDef(BaseModel): + ApplicationName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ApplicationCodeConfigurationDescriptionTypeDef(BaseModel): + CodeContentType: CodeContentTypeType + CodeContentDescription: Optional[CodeContentDescriptionTypeDef] = None + +class ApplicationCodeConfigurationTypeDef(BaseModel): + CodeContentType: CodeContentTypeType + CodeContent: Optional[CodeContentTypeDef] = None + +class ApplicationCodeConfigurationUpdateTypeDef(BaseModel): + CodeContentTypeUpdate: Optional[CodeContentTypeType] = None + CodeContentUpdate: Optional[CodeContentUpdateTypeDef] = None + +class ZeppelinApplicationConfigurationDescriptionTypeDef(BaseModel): + MonitoringConfigurationDescription: ZeppelinMonitoringConfigurationDescriptionTypeDef + CatalogConfigurationDescription: Optional[CatalogConfigurationDescriptionTypeDef] = None + DeployAsApplicationConfigurationDescription: Optional[ DeployAsApplicationConfigurationDescriptionTypeDef ] = None + CustomArtifactsConfigurationDescription: Optional[ List[CustomArtifactConfigurationDescriptionTypeDef] ] = None + +class ZeppelinApplicationConfigurationTypeDef(BaseModel): + MonitoringConfiguration: Optional[ZeppelinMonitoringConfigurationTypeDef] = None + CatalogConfiguration: Optional[CatalogConfigurationTypeDef] = None + DeployAsApplicationConfiguration: Optional[DeployAsApplicationConfigurationTypeDef] = None + CustomArtifactsConfiguration: Optional[Sequence[CustomArtifactConfigurationTypeDef]] = None + +class ZeppelinApplicationConfigurationUpdateTypeDef(BaseModel): + MonitoringConfigurationUpdate: Optional[ZeppelinMonitoringConfigurationUpdateTypeDef] = None + CatalogConfigurationUpdate: Optional[CatalogConfigurationUpdateTypeDef] = None + DeployAsApplicationConfigurationUpdate: Optional[ DeployAsApplicationConfigurationUpdateTypeDef ] = None + CustomArtifactsConfigurationUpdate: Optional[ Sequence[CustomArtifactConfigurationTypeDef] ] = None + +class RunConfigurationTypeDef(BaseModel): + FlinkRunConfiguration: Optional[FlinkRunConfigurationTypeDef] = None + SqlRunConfigurations: Optional[Sequence[SqlRunConfigurationTypeDef]] = None + ApplicationRestoreConfiguration: Optional[ApplicationRestoreConfigurationTypeDef] = None + +class ApplicationOperationInfoDetailsTypeDef(BaseModel): + Operation: str + StartTime: datetime + EndTime: datetime + OperationStatus: OperationStatusType + ApplicationVersionChangeDetails: Optional[ApplicationVersionChangeDetailsTypeDef] = None + OperationFailureDetails: Optional[OperationFailureDetailsTypeDef] = None + +class AddApplicationInputProcessingConfigurationResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + InputId: str + InputProcessingConfigurationDescription: InputProcessingConfigurationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddApplicationInputProcessingConfigurationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + InputId: str + InputProcessingConfiguration: InputProcessingConfigurationTypeDef + +class DiscoverInputSchemaRequestRequestTypeDef(BaseModel): + ServiceExecutionRole: str + ResourceARN: Optional[str] = None + InputStartingPositionConfiguration: Optional[ InputStartingPositionConfigurationTypeDef ] = None + S3Configuration: Optional[S3ConfigurationTypeDef] = None + InputProcessingConfiguration: Optional[InputProcessingConfigurationTypeDef] = None + +class RecordFormatTypeDef(BaseModel): + RecordFormatType: RecordFormatTypeType + MappingParameters: Optional[MappingParametersTypeDef] = None + +class AddApplicationOutputResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + OutputDescriptions: List[OutputDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AddApplicationOutputRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + Output: OutputTypeDef + +class StartApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + RunConfiguration: Optional[RunConfigurationTypeDef] = None + +class DescribeApplicationOperationResponseTypeDef(BaseModel): + ApplicationOperationInfoDetails: ApplicationOperationInfoDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InputSchemaUpdateTypeDef(BaseModel): + RecordFormatUpdate: Optional[RecordFormatTypeDef] = None + RecordEncodingUpdate: Optional[str] = None + RecordColumnUpdates: Optional[Sequence[RecordColumnTypeDef]] = None + +class SourceSchemaOutputTypeDef(BaseModel): + RecordFormat: RecordFormatTypeDef + RecordColumns: List[RecordColumnTypeDef] + RecordEncoding: Optional[str] = None + +class SourceSchemaTypeDef(BaseModel): + RecordFormat: RecordFormatTypeDef + RecordColumns: Sequence[RecordColumnTypeDef] + RecordEncoding: Optional[str] = None + +class InputUpdateTypeDef(BaseModel): + InputId: str + NamePrefixUpdate: Optional[str] = None + InputProcessingConfigurationUpdate: Optional[ InputProcessingConfigurationUpdateTypeDef ] = None + KinesisStreamsInputUpdate: Optional[KinesisStreamsInputUpdateTypeDef] = None + KinesisFirehoseInputUpdate: Optional[KinesisFirehoseInputUpdateTypeDef] = None + InputSchemaUpdate: Optional[InputSchemaUpdateTypeDef] = None + InputParallelismUpdate: Optional[InputParallelismUpdateTypeDef] = None + +class DiscoverInputSchemaResponseTypeDef(BaseModel): + InputSchema: SourceSchemaOutputTypeDef + ParsedInputRecords: List[List[str]] + ProcessedInputRecords: List[str] + RawInputRecords: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class InputDescriptionTypeDef(BaseModel): + InputId: Optional[str] = None + NamePrefix: Optional[str] = None + InAppStreamNames: Optional[List[str]] = None + InputProcessingConfigurationDescription: Optional[ InputProcessingConfigurationDescriptionTypeDef ] = None + KinesisStreamsInputDescription: Optional[KinesisStreamsInputDescriptionTypeDef] = None + KinesisFirehoseInputDescription: Optional[KinesisFirehoseInputDescriptionTypeDef] = None + InputSchema: Optional[SourceSchemaOutputTypeDef] = None + InputParallelism: Optional[InputParallelismTypeDef] = None + InputStartingPositionConfiguration: Optional[ InputStartingPositionConfigurationTypeDef ] = None + +class ReferenceDataSourceDescriptionTypeDef(BaseModel): + ReferenceId: str + TableName: str + S3ReferenceDataSourceDescription: S3ReferenceDataSourceDescriptionTypeDef + ReferenceSchema: Optional[SourceSchemaOutputTypeDef] = None + +class InputTypeDef(BaseModel): + NamePrefix: str + InputSchema: SourceSchemaTypeDef + InputProcessingConfiguration: Optional[InputProcessingConfigurationTypeDef] = None + KinesisStreamsInput: Optional[KinesisStreamsInputTypeDef] = None + KinesisFirehoseInput: Optional[KinesisFirehoseInputTypeDef] = None + InputParallelism: Optional[InputParallelismTypeDef] = None + +class ReferenceDataSourceTypeDef(BaseModel): + TableName: str + ReferenceSchema: SourceSchemaTypeDef + S3ReferenceDataSource: Optional[S3ReferenceDataSourceTypeDef] = None + +class ReferenceDataSourceUpdateTypeDef(BaseModel): + ReferenceId: str + TableNameUpdate: Optional[str] = None + S3ReferenceDataSourceUpdate: Optional[S3ReferenceDataSourceUpdateTypeDef] = None + ReferenceSchemaUpdate: Optional[SourceSchemaTypeDef] = None + +class AddApplicationInputResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + InputDescriptions: List[InputDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AddApplicationReferenceDataSourceResponseTypeDef(BaseModel): + ApplicationARN: str + ApplicationVersionId: int + ReferenceDataSourceDescriptions: List[ReferenceDataSourceDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SqlApplicationConfigurationDescriptionTypeDef(BaseModel): + InputDescriptions: Optional[List[InputDescriptionTypeDef]] = None + OutputDescriptions: Optional[List[OutputDescriptionTypeDef]] = None + ReferenceDataSourceDescriptions: Optional[List[ReferenceDataSourceDescriptionTypeDef]] = None + +class AddApplicationInputRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + Input: InputTypeDef + +class AddApplicationReferenceDataSourceRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: int + ReferenceDataSource: ReferenceDataSourceTypeDef + +class SqlApplicationConfigurationTypeDef(BaseModel): + Inputs: Optional[Sequence[InputTypeDef]] = None + Outputs: Optional[Sequence[OutputTypeDef]] = None + ReferenceDataSources: Optional[Sequence[ReferenceDataSourceTypeDef]] = None + +class SqlApplicationConfigurationUpdateTypeDef(BaseModel): + InputUpdates: Optional[Sequence[InputUpdateTypeDef]] = None + OutputUpdates: Optional[Sequence[OutputUpdateTypeDef]] = None + ReferenceDataSourceUpdates: Optional[Sequence[ReferenceDataSourceUpdateTypeDef]] = None + +class ApplicationConfigurationDescriptionTypeDef(BaseModel): + SqlApplicationConfigurationDescription: Optional[ SqlApplicationConfigurationDescriptionTypeDef ] = None + ApplicationCodeConfigurationDescription: Optional[ ApplicationCodeConfigurationDescriptionTypeDef ] = None + RunConfigurationDescription: Optional[RunConfigurationDescriptionTypeDef] = None + FlinkApplicationConfigurationDescription: Optional[ FlinkApplicationConfigurationDescriptionTypeDef ] = None + EnvironmentPropertyDescriptions: Optional[EnvironmentPropertyDescriptionsTypeDef] = None + ApplicationSnapshotConfigurationDescription: Optional[ ApplicationSnapshotConfigurationDescriptionTypeDef ] = None + ApplicationSystemRollbackConfigurationDescription: Optional[ ApplicationSystemRollbackConfigurationDescriptionTypeDef ] = None + VpcConfigurationDescriptions: Optional[List[VpcConfigurationDescriptionTypeDef]] = None + ZeppelinApplicationConfigurationDescription: Optional[ ZeppelinApplicationConfigurationDescriptionTypeDef ] = None + +class ApplicationConfigurationTypeDef(BaseModel): + SqlApplicationConfiguration: Optional[SqlApplicationConfigurationTypeDef] = None + FlinkApplicationConfiguration: Optional[FlinkApplicationConfigurationTypeDef] = None + EnvironmentProperties: Optional[EnvironmentPropertiesTypeDef] = None + ApplicationCodeConfiguration: Optional[ApplicationCodeConfigurationTypeDef] = None + ApplicationSnapshotConfiguration: Optional[ApplicationSnapshotConfigurationTypeDef] = None + ApplicationSystemRollbackConfiguration: Optional[ ApplicationSystemRollbackConfigurationTypeDef ] = None + VpcConfigurations: Optional[Sequence[VpcConfigurationTypeDef]] = None + ZeppelinApplicationConfiguration: Optional[ZeppelinApplicationConfigurationTypeDef] = None + +class ApplicationConfigurationUpdateTypeDef(BaseModel): + SqlApplicationConfigurationUpdate: Optional[SqlApplicationConfigurationUpdateTypeDef] = None + ApplicationCodeConfigurationUpdate: Optional[ ApplicationCodeConfigurationUpdateTypeDef ] = None + FlinkApplicationConfigurationUpdate: Optional[ FlinkApplicationConfigurationUpdateTypeDef ] = None + EnvironmentPropertyUpdates: Optional[EnvironmentPropertyUpdatesTypeDef] = None + ApplicationSnapshotConfigurationUpdate: Optional[ ApplicationSnapshotConfigurationUpdateTypeDef ] = None + ApplicationSystemRollbackConfigurationUpdate: Optional[ ApplicationSystemRollbackConfigurationUpdateTypeDef ] = None + VpcConfigurationUpdates: Optional[Sequence[VpcConfigurationUpdateTypeDef]] = None + ZeppelinApplicationConfigurationUpdate: Optional[ ZeppelinApplicationConfigurationUpdateTypeDef ] = None + +class ApplicationDetailTypeDef(BaseModel): + ApplicationARN: str + ApplicationName: str + RuntimeEnvironment: RuntimeEnvironmentType + ApplicationStatus: ApplicationStatusType + ApplicationVersionId: int + ApplicationDescription: Optional[str] = None + ServiceExecutionRole: Optional[str] = None + CreateTimestamp: Optional[datetime] = None + LastUpdateTimestamp: Optional[datetime] = None + ApplicationConfigurationDescription: Optional[ ApplicationConfigurationDescriptionTypeDef ] = None + CloudWatchLoggingOptionDescriptions: Optional[ List[CloudWatchLoggingOptionDescriptionTypeDef] ] = None + ApplicationMaintenanceConfigurationDescription: Optional[ ApplicationMaintenanceConfigurationDescriptionTypeDef ] = None + ApplicationVersionUpdatedFrom: Optional[int] = None + ApplicationVersionRolledBackFrom: Optional[int] = None + ApplicationVersionCreateTimestamp: Optional[datetime] = None + ConditionalToken: Optional[str] = None + ApplicationVersionRolledBackTo: Optional[int] = None + ApplicationMode: Optional[ApplicationModeType] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + RuntimeEnvironment: RuntimeEnvironmentType + ServiceExecutionRole: str + ApplicationDescription: Optional[str] = None + ApplicationConfiguration: Optional[ApplicationConfigurationTypeDef] = None + CloudWatchLoggingOptions: Optional[Sequence[CloudWatchLoggingOptionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ApplicationMode: Optional[ApplicationModeType] = None + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + ApplicationName: str + CurrentApplicationVersionId: Optional[int] = None + ApplicationConfigurationUpdate: Optional[ApplicationConfigurationUpdateTypeDef] = None + ServiceExecutionRoleUpdate: Optional[str] = None + RunConfigurationUpdate: Optional[RunConfigurationUpdateTypeDef] = None + CloudWatchLoggingOptionUpdates: Optional[ Sequence[CloudWatchLoggingOptionUpdateTypeDef] ] = None + ConditionalToken: Optional[str] = None + RuntimeEnvironmentUpdate: Optional[RuntimeEnvironmentType] = None + +class CreateApplicationResponseTypeDef(BaseModel): + ApplicationDetail: ApplicationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationResponseTypeDef(BaseModel): + ApplicationDetail: ApplicationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationVersionResponseTypeDef(BaseModel): + ApplicationVersionDetail: ApplicationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackApplicationResponseTypeDef(BaseModel): + ApplicationDetail: ApplicationDetailTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationResponseTypeDef(BaseModel): + ApplicationDetail: ApplicationDetailTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kinesisanalyticsv2_constants.py b/aws_resource_validator/pydantic_models/kinesisanalyticsv2_constants.py new file mode 100644 index 00000000..a26da91a --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesisanalyticsv2_constants.py @@ -0,0 +1,472 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationModeType = Literal["INTERACTIVE", "STREAMING"] +ApplicationRestoreTypeType = Literal["RESTORE_FROM_CUSTOM_SNAPSHOT", "RESTORE_FROM_LATEST_SNAPSHOT", "SKIP_RESTORE_FROM_SNAPSHOT"] +ApplicationStatusType = Literal["AUTOSCALING", + "DELETING", + "FORCE_STOPPING", + "MAINTENANCE", + "READY", + "ROLLED_BACK", + "ROLLING_BACK", + "RUNNING", + "STARTING", + "STOPPING", + "UPDATING",] +ArtifactTypeType = Literal["DEPENDENCY_JAR", "UDF"] +CodeContentTypeType = Literal["PLAINTEXT", "ZIPFILE"] +ConfigurationTypeType = Literal["CUSTOM", "DEFAULT"] +InputStartingPositionType = Literal["LAST_STOPPED_POINT", "NOW", "TRIM_HORIZON"] +ListApplicationOperationsPaginatorName = Literal["list_application_operations"] +ListApplicationSnapshotsPaginatorName = Literal["list_application_snapshots"] +ListApplicationVersionsPaginatorName = Literal["list_application_versions"] +ListApplicationsPaginatorName = Literal["list_applications"] +LogLevelType = Literal["DEBUG", "ERROR", "INFO", "WARN"] +MetricsLevelType = Literal["APPLICATION", "OPERATOR", "PARALLELISM", "TASK"] +OperationStatusType = Literal["CANCELLED", "FAILED", "IN_PROGRESS", "SUCCESSFUL"] +RecordFormatTypeType = Literal["CSV", "JSON"] +RuntimeEnvironmentType = Literal["FLINK-1_11", + "FLINK-1_13", + "FLINK-1_15", + "FLINK-1_18", + "FLINK-1_19", + "FLINK-1_6", + "FLINK-1_8", + "SQL-1_0", + "ZEPPELIN-FLINK-1_0", + "ZEPPELIN-FLINK-2_0", + "ZEPPELIN-FLINK-3_0",] +SnapshotStatusType = Literal["CREATING", "DELETING", "FAILED", "READY"] +UrlTypeType = Literal["FLINK_DASHBOARD_URL", "ZEPPELIN_UI_URL"] +KinesisAnalyticsV2ServiceName = Literal["kinesisanalyticsv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_application_operations", + "list_application_snapshots", + "list_application_versions", + "list_applications",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/kinesisvideo_classes.py b/aws_resource_validator/pydantic_models/kinesisvideo_classes.py new file mode 100644 index 00000000..b4b92ea8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesisvideo_classes.py @@ -0,0 +1,401 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kinesisvideo_constants import * + +class SingleMasterConfigurationTypeDef(BaseModel): + MessageTtlSeconds: Optional[int] = None + +class ChannelNameConditionTypeDef(BaseModel): + ComparisonOperator: Optional[Literal["BEGINS_WITH"]] = None + ComparisonValue: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateStreamInputRequestTypeDef(BaseModel): + StreamName: str + DeviceName: Optional[str] = None + MediaType: Optional[str] = None + KmsKeyId: Optional[str] = None + DataRetentionInHours: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + +class DeleteEdgeConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class DeleteSignalingChannelInputRequestTypeDef(BaseModel): + ChannelARN: str + CurrentVersion: Optional[str] = None + +class DeleteStreamInputRequestTypeDef(BaseModel): + StreamARN: str + CurrentVersion: Optional[str] = None + +class LocalSizeConfigTypeDef(BaseModel): + MaxLocalMediaSizeInMB: Optional[int] = None + StrategyOnFullSize: Optional[StrategyOnFullSizeType] = None + +class DescribeEdgeConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class DescribeImageGenerationConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeMappedResourceConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MappedResourceConfigurationListItemTypeDef(BaseModel): + Type: Optional[str] = None + ARN: Optional[str] = None + +class DescribeMediaStorageConfigurationInputRequestTypeDef(BaseModel): + ChannelName: Optional[str] = None + ChannelARN: Optional[str] = None + +class MediaStorageConfigurationTypeDef(BaseModel): + Status: MediaStorageConfigurationStatusType + StreamARN: Optional[str] = None + +class DescribeNotificationConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class DescribeSignalingChannelInputRequestTypeDef(BaseModel): + ChannelName: Optional[str] = None + ChannelARN: Optional[str] = None + +class DescribeStreamInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class StreamInfoTypeDef(BaseModel): + DeviceName: Optional[str] = None + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + MediaType: Optional[str] = None + KmsKeyId: Optional[str] = None + Version: Optional[str] = None + Status: Optional[StatusType] = None + CreationTime: Optional[datetime] = None + DataRetentionInHours: Optional[int] = None + +class LastRecorderStatusTypeDef(BaseModel): + JobStatusDetails: Optional[str] = None + LastCollectedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + RecorderStatus: Optional[RecorderStatusType] = None + +class LastUploaderStatusTypeDef(BaseModel): + JobStatusDetails: Optional[str] = None + LastCollectedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + UploaderStatus: Optional[UploaderStatusType] = None + +class GetDataEndpointInputRequestTypeDef(BaseModel): + APIName: APINameType + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class SingleMasterChannelEndpointConfigurationTypeDef(BaseModel): + Protocols: Optional[Sequence[ChannelProtocolType]] = None + Role: Optional[ChannelRoleType] = None + +class ResourceEndpointListItemTypeDef(BaseModel): + Protocol: Optional[ChannelProtocolType] = None + ResourceEndpoint: Optional[str] = None + +class ImageGenerationDestinationConfigTypeDef(BaseModel): + Uri: str + DestinationRegion: str + +class ListEdgeAgentConfigurationsInputRequestTypeDef(BaseModel): + HubDeviceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class StreamNameConditionTypeDef(BaseModel): + ComparisonOperator: Optional[Literal["BEGINS_WITH"]] = None + ComparisonValue: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + NextToken: Optional[str] = None + +class ListTagsForStreamInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + StreamARN: Optional[str] = None + StreamName: Optional[str] = None + +class MediaSourceConfigTypeDef(BaseModel): + MediaUriSecretArn: str + MediaUriType: MediaUriTypeType + +class NotificationDestinationConfigTypeDef(BaseModel): + Uri: str + +class ScheduleConfigTypeDef(BaseModel): + ScheduleExpression: str + DurationInSeconds: int + +class TagStreamInputRequestTypeDef(BaseModel): + Tags: Mapping[str, str] + StreamARN: Optional[str] = None + StreamName: Optional[str] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + TagKeyList: Sequence[str] + +class UntagStreamInputRequestTypeDef(BaseModel): + TagKeyList: Sequence[str] + StreamARN: Optional[str] = None + StreamName: Optional[str] = None + +class UpdateDataRetentionInputRequestTypeDef(BaseModel): + CurrentVersion: str + Operation: UpdateDataRetentionOperationType + DataRetentionChangeInHours: int + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class UpdateStreamInputRequestTypeDef(BaseModel): + CurrentVersion: str + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + DeviceName: Optional[str] = None + MediaType: Optional[str] = None + +class ChannelInfoTypeDef(BaseModel): + ChannelName: Optional[str] = None + ChannelARN: Optional[str] = None + ChannelType: Optional[ChannelTypeType] = None + ChannelStatus: Optional[StatusType] = None + CreationTime: Optional[datetime] = None + SingleMasterConfiguration: Optional[SingleMasterConfigurationTypeDef] = None + Version: Optional[str] = None + +class UpdateSignalingChannelInputRequestTypeDef(BaseModel): + ChannelARN: str + CurrentVersion: str + SingleMasterConfiguration: Optional[SingleMasterConfigurationTypeDef] = None + +class ListSignalingChannelsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ChannelNameCondition: Optional[ChannelNameConditionTypeDef] = None + +class CreateSignalingChannelInputRequestTypeDef(BaseModel): + ChannelName: str + ChannelType: Optional[ChannelTypeType] = None + SingleMasterConfiguration: Optional[SingleMasterConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateSignalingChannelOutputTypeDef(BaseModel): + ChannelARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamOutputTypeDef(BaseModel): + StreamARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataEndpointOutputTypeDef(BaseModel): + DataEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + NextToken: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForStreamOutputTypeDef(BaseModel): + NextToken: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeletionConfigTypeDef(BaseModel): + EdgeRetentionInHours: Optional[int] = None + LocalSizeConfig: Optional[LocalSizeConfigTypeDef] = None + DeleteAfterUpload: Optional[bool] = None + +class DescribeMappedResourceConfigurationInputDescribeMappedResourceConfigurationPaginateTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEdgeAgentConfigurationsInputListEdgeAgentConfigurationsPaginateTypeDef(BaseModel): + HubDeviceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSignalingChannelsInputListSignalingChannelsPaginateTypeDef(BaseModel): + ChannelNameCondition: Optional[ChannelNameConditionTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMappedResourceConfigurationOutputTypeDef(BaseModel): + MappedResourceConfigurationList: List[MappedResourceConfigurationListItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMediaStorageConfigurationOutputTypeDef(BaseModel): + MediaStorageConfiguration: MediaStorageConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMediaStorageConfigurationInputRequestTypeDef(BaseModel): + ChannelARN: str + MediaStorageConfiguration: MediaStorageConfigurationTypeDef + +class DescribeStreamOutputTypeDef(BaseModel): + StreamInfo: StreamInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamsOutputTypeDef(BaseModel): + StreamInfoList: List[StreamInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EdgeAgentStatusTypeDef(BaseModel): + LastRecorderStatus: Optional[LastRecorderStatusTypeDef] = None + LastUploaderStatus: Optional[LastUploaderStatusTypeDef] = None + +class GetSignalingChannelEndpointInputRequestTypeDef(BaseModel): + ChannelARN: str + SingleMasterChannelEndpointConfiguration: Optional[ SingleMasterChannelEndpointConfigurationTypeDef ] = None + +class GetSignalingChannelEndpointOutputTypeDef(BaseModel): + ResourceEndpointList: List[ResourceEndpointListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImageGenerationConfigurationTypeDef(BaseModel): + Status: ConfigurationStatusType + ImageSelectorType: ImageSelectorTypeType + DestinationConfig: ImageGenerationDestinationConfigTypeDef + SamplingInterval: int + Format: FormatType + FormatConfig: Optional[Dict[Literal["JPEGQuality"], str]] = None + WidthPixels: Optional[int] = None + HeightPixels: Optional[int] = None + +class ListStreamsInputListStreamsPaginateTypeDef(BaseModel): + StreamNameCondition: Optional[StreamNameConditionTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + StreamNameCondition: Optional[StreamNameConditionTypeDef] = None + +class NotificationConfigurationTypeDef(BaseModel): + Status: ConfigurationStatusType + DestinationConfig: NotificationDestinationConfigTypeDef + +class RecorderConfigTypeDef(BaseModel): + MediaSourceConfig: MediaSourceConfigTypeDef + ScheduleConfig: Optional[ScheduleConfigTypeDef] = None + +class UploaderConfigTypeDef(BaseModel): + ScheduleConfig: ScheduleConfigTypeDef + +class DescribeSignalingChannelOutputTypeDef(BaseModel): + ChannelInfo: ChannelInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSignalingChannelsOutputTypeDef(BaseModel): + ChannelInfoList: List[ChannelInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageGenerationConfigurationOutputTypeDef(BaseModel): + ImageGenerationConfiguration: ImageGenerationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateImageGenerationConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + ImageGenerationConfiguration: Optional[ImageGenerationConfigurationTypeDef] = None + +class DescribeNotificationConfigurationOutputTypeDef(BaseModel): + NotificationConfiguration: NotificationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNotificationConfigurationInputRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + NotificationConfiguration: Optional[NotificationConfigurationTypeDef] = None + +class EdgeConfigTypeDef(BaseModel): + HubDeviceArn: str + RecorderConfig: RecorderConfigTypeDef + UploaderConfig: Optional[UploaderConfigTypeDef] = None + DeletionConfig: Optional[DeletionConfigTypeDef] = None + +class DescribeEdgeConfigurationOutputTypeDef(BaseModel): + StreamName: str + StreamARN: str + CreationTime: datetime + LastUpdatedTime: datetime + SyncStatus: SyncStatusType + FailedStatusDetails: str + EdgeConfig: EdgeConfigTypeDef + EdgeAgentStatus: EdgeAgentStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEdgeAgentConfigurationsEdgeConfigTypeDef(BaseModel): + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + SyncStatus: Optional[SyncStatusType] = None + FailedStatusDetails: Optional[str] = None + EdgeConfig: Optional[EdgeConfigTypeDef] = None + +class StartEdgeConfigurationUpdateInputRequestTypeDef(BaseModel): + EdgeConfig: EdgeConfigTypeDef + StreamName: Optional[str] = None + StreamARN: Optional[str] = None + +class StartEdgeConfigurationUpdateOutputTypeDef(BaseModel): + StreamName: str + StreamARN: str + CreationTime: datetime + LastUpdatedTime: datetime + SyncStatus: SyncStatusType + FailedStatusDetails: str + EdgeConfig: EdgeConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEdgeAgentConfigurationsOutputTypeDef(BaseModel): + EdgeConfigs: List[ListEdgeAgentConfigurationsEdgeConfigTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kinesisvideo_constants.py b/aws_resource_validator/pydantic_models/kinesisvideo_constants.py new file mode 100644 index 00000000..d3fb6054 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kinesisvideo_constants.py @@ -0,0 +1,447 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +APINameType = Literal["GET_CLIP", + "GET_DASH_STREAMING_SESSION_URL", + "GET_HLS_STREAMING_SESSION_URL", + "GET_IMAGES", + "GET_MEDIA", + "GET_MEDIA_FOR_FRAGMENT_LIST", + "LIST_FRAGMENTS", + "PUT_MEDIA",] +ChannelProtocolType = Literal["HTTPS", "WEBRTC", "WSS"] +ChannelRoleType = Literal["MASTER", "VIEWER"] +ChannelTypeType = Literal["FULL_MESH", "SINGLE_MASTER"] +ComparisonOperatorType = Literal["BEGINS_WITH"] +ConfigurationStatusType = Literal["DISABLED", "ENABLED"] +DescribeMappedResourceConfigurationPaginatorName = Literal["describe_mapped_resource_configuration"] +FormatConfigKeyType = Literal["JPEGQuality"] +FormatType = Literal["JPEG", "PNG"] +ImageSelectorTypeType = Literal["PRODUCER_TIMESTAMP", "SERVER_TIMESTAMP"] +ListEdgeAgentConfigurationsPaginatorName = Literal["list_edge_agent_configurations"] +ListSignalingChannelsPaginatorName = Literal["list_signaling_channels"] +ListStreamsPaginatorName = Literal["list_streams"] +MediaStorageConfigurationStatusType = Literal["DISABLED", "ENABLED"] +MediaUriTypeType = Literal["FILE_URI", "RTSP_URI"] +RecorderStatusType = Literal["SUCCESS", "SYSTEM_ERROR", "USER_ERROR"] +StatusType = Literal["ACTIVE", "CREATING", "DELETING", "UPDATING"] +StrategyOnFullSizeType = Literal["DELETE_OLDEST_MEDIA", "DENY_NEW_MEDIA"] +SyncStatusType = Literal["ACKNOWLEDGED", + "DELETE_FAILED", + "DELETING", + "DELETING_ACKNOWLEDGED", + "IN_SYNC", + "SYNCING", + "SYNC_FAILED",] +UpdateDataRetentionOperationType = Literal["DECREASE_DATA_RETENTION", "INCREASE_DATA_RETENTION"] +UploaderStatusType = Literal["SUCCESS", "SYSTEM_ERROR", "USER_ERROR"] +KinesisVideoServiceName = Literal["kinesisvideo"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_mapped_resource_configuration", + "list_edge_agent_configurations", + "list_signaling_channels", + "list_streams",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/kms_classes.py b/aws_resource_validator/pydantic_models/kms_classes.py new file mode 100644 index 00000000..47704e30 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kms_classes.py @@ -0,0 +1,674 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.kms_constants import * + +class AliasListEntryTypeDef(BaseModel): + AliasName: Optional[str] = None + AliasArn: Optional[str] = None + TargetKeyId: Optional[str] = None + CreationDate: Optional[datetime] = None + LastUpdatedDate: Optional[datetime] = None + +class CancelKeyDeletionRequestRequestTypeDef(BaseModel): + KeyId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ConnectCustomKeyStoreRequestRequestTypeDef(BaseModel): + CustomKeyStoreId: str + +class CreateAliasRequestRequestTypeDef(BaseModel): + AliasName: str + TargetKeyId: str + +class XksProxyAuthenticationCredentialTypeTypeDef(BaseModel): + AccessKeyId: str + RawSecretAccessKey: str + +class GrantConstraintsTypeDef(BaseModel): + EncryptionContextSubset: Optional[Mapping[str, str]] = None + EncryptionContextEquals: Optional[Mapping[str, str]] = None + +class TagTypeDef(BaseModel): + TagKey: str + TagValue: str + +class XksProxyConfigurationTypeTypeDef(BaseModel): + Connectivity: Optional[XksProxyConnectivityTypeType] = None + AccessKeyId: Optional[str] = None + UriEndpoint: Optional[str] = None + UriPath: Optional[str] = None + VpcEndpointServiceName: Optional[str] = None + +class DeleteAliasRequestRequestTypeDef(BaseModel): + AliasName: str + +class DeleteCustomKeyStoreRequestRequestTypeDef(BaseModel): + CustomKeyStoreId: str + +class DeleteImportedKeyMaterialRequestRequestTypeDef(BaseModel): + KeyId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeCustomKeyStoresRequestRequestTypeDef(BaseModel): + CustomKeyStoreId: Optional[str] = None + CustomKeyStoreName: Optional[str] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class DescribeKeyRequestRequestTypeDef(BaseModel): + KeyId: str + GrantTokens: Optional[Sequence[str]] = None + +class DisableKeyRequestRequestTypeDef(BaseModel): + KeyId: str + +class DisableKeyRotationRequestRequestTypeDef(BaseModel): + KeyId: str + +class DisconnectCustomKeyStoreRequestRequestTypeDef(BaseModel): + CustomKeyStoreId: str + +class EnableKeyRequestRequestTypeDef(BaseModel): + KeyId: str + +class EnableKeyRotationRequestRequestTypeDef(BaseModel): + KeyId: str + RotationPeriodInDays: Optional[int] = None + +class GenerateDataKeyPairWithoutPlaintextRequestRequestTypeDef(BaseModel): + KeyId: str + KeyPairSpec: DataKeyPairSpecType + EncryptionContext: Optional[Mapping[str, str]] = None + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class GenerateDataKeyWithoutPlaintextRequestRequestTypeDef(BaseModel): + KeyId: str + EncryptionContext: Optional[Mapping[str, str]] = None + KeySpec: Optional[DataKeySpecType] = None + NumberOfBytes: Optional[int] = None + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class GetKeyPolicyRequestRequestTypeDef(BaseModel): + KeyId: str + PolicyName: Optional[str] = None + +class GetKeyRotationStatusRequestRequestTypeDef(BaseModel): + KeyId: str + +class GetParametersForImportRequestRequestTypeDef(BaseModel): + KeyId: str + WrappingAlgorithm: AlgorithmSpecType + WrappingKeySpec: WrappingKeySpecType + +class GetPublicKeyRequestRequestTypeDef(BaseModel): + KeyId: str + GrantTokens: Optional[Sequence[str]] = None + +class GrantConstraintsExtraOutputTypeDef(BaseModel): + EncryptionContextSubset: Optional[Dict[str, str]] = None + EncryptionContextEquals: Optional[Dict[str, str]] = None + +class GrantConstraintsOutputTypeDef(BaseModel): + EncryptionContextSubset: Optional[Dict[str, str]] = None + EncryptionContextEquals: Optional[Dict[str, str]] = None + +class KeyListEntryTypeDef(BaseModel): + KeyId: Optional[str] = None + KeyArn: Optional[str] = None + +class XksKeyConfigurationTypeTypeDef(BaseModel): + Id: Optional[str] = None + +class ListAliasesRequestRequestTypeDef(BaseModel): + KeyId: Optional[str] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class ListGrantsRequestRequestTypeDef(BaseModel): + KeyId: str + Limit: Optional[int] = None + Marker: Optional[str] = None + GrantId: Optional[str] = None + GranteePrincipal: Optional[str] = None + +class ListKeyPoliciesRequestRequestTypeDef(BaseModel): + KeyId: str + Limit: Optional[int] = None + Marker: Optional[str] = None + +class ListKeyRotationsRequestRequestTypeDef(BaseModel): + KeyId: str + Limit: Optional[int] = None + Marker: Optional[str] = None + +class RotationsListEntryTypeDef(BaseModel): + KeyId: Optional[str] = None + RotationDate: Optional[datetime] = None + RotationType: Optional[RotationTypeType] = None + +class ListKeysRequestRequestTypeDef(BaseModel): + Limit: Optional[int] = None + Marker: Optional[str] = None + +class ListResourceTagsRequestRequestTypeDef(BaseModel): + KeyId: str + Limit: Optional[int] = None + Marker: Optional[str] = None + +class ListRetirableGrantsRequestRequestTypeDef(BaseModel): + RetiringPrincipal: str + Limit: Optional[int] = None + Marker: Optional[str] = None + +class MultiRegionKeyTypeDef(BaseModel): + Arn: Optional[str] = None + Region: Optional[str] = None + +class PutKeyPolicyRequestRequestTypeDef(BaseModel): + KeyId: str + Policy: str + PolicyName: Optional[str] = None + BypassPolicyLockoutSafetyCheck: Optional[bool] = None + +class RetireGrantRequestRequestTypeDef(BaseModel): + GrantToken: Optional[str] = None + KeyId: Optional[str] = None + GrantId: Optional[str] = None + DryRun: Optional[bool] = None + +class RevokeGrantRequestRequestTypeDef(BaseModel): + KeyId: str + GrantId: str + DryRun: Optional[bool] = None + +class RotateKeyOnDemandRequestRequestTypeDef(BaseModel): + KeyId: str + +class ScheduleKeyDeletionRequestRequestTypeDef(BaseModel): + KeyId: str + PendingWindowInDays: Optional[int] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + KeyId: str + TagKeys: Sequence[str] + +class UpdateAliasRequestRequestTypeDef(BaseModel): + AliasName: str + TargetKeyId: str + +class UpdateKeyDescriptionRequestRequestTypeDef(BaseModel): + KeyId: str + Description: str + +class UpdatePrimaryRegionRequestRequestTypeDef(BaseModel): + KeyId: str + PrimaryRegion: str + +class EncryptRequestRequestTypeDef(BaseModel): + KeyId: str + Plaintext: BlobTypeDef + EncryptionContext: Optional[Mapping[str, str]] = None + GrantTokens: Optional[Sequence[str]] = None + EncryptionAlgorithm: Optional[EncryptionAlgorithmSpecType] = None + DryRun: Optional[bool] = None + +class GenerateMacRequestRequestTypeDef(BaseModel): + Message: BlobTypeDef + KeyId: str + MacAlgorithm: MacAlgorithmSpecType + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class ReEncryptRequestRequestTypeDef(BaseModel): + CiphertextBlob: BlobTypeDef + DestinationKeyId: str + SourceEncryptionContext: Optional[Mapping[str, str]] = None + SourceKeyId: Optional[str] = None + DestinationEncryptionContext: Optional[Mapping[str, str]] = None + SourceEncryptionAlgorithm: Optional[EncryptionAlgorithmSpecType] = None + DestinationEncryptionAlgorithm: Optional[EncryptionAlgorithmSpecType] = None + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class RecipientInfoTypeDef(BaseModel): + KeyEncryptionAlgorithm: Optional[Literal["RSAES_OAEP_SHA_256"]] = None + AttestationDocument: Optional[BlobTypeDef] = None + +class SignRequestRequestTypeDef(BaseModel): + KeyId: str + Message: BlobTypeDef + SigningAlgorithm: SigningAlgorithmSpecType + MessageType: Optional[MessageTypeType] = None + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class VerifyMacRequestRequestTypeDef(BaseModel): + Message: BlobTypeDef + KeyId: str + MacAlgorithm: MacAlgorithmSpecType + Mac: BlobTypeDef + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class VerifyRequestRequestTypeDef(BaseModel): + KeyId: str + Message: BlobTypeDef + Signature: BlobTypeDef + SigningAlgorithm: SigningAlgorithmSpecType + MessageType: Optional[MessageTypeType] = None + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + +class CancelKeyDeletionResponseTypeDef(BaseModel): + KeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomKeyStoreResponseTypeDef(BaseModel): + CustomKeyStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGrantResponseTypeDef(BaseModel): + GrantToken: str + GrantId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DecryptResponseTypeDef(BaseModel): + KeyId: str + Plaintext: bytes + EncryptionAlgorithm: EncryptionAlgorithmSpecType + CiphertextForRecipient: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class DeriveSharedSecretResponseTypeDef(BaseModel): + KeyId: str + SharedSecret: bytes + CiphertextForRecipient: bytes + KeyAgreementAlgorithm: Literal["ECDH"] + KeyOrigin: OriginTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EncryptResponseTypeDef(BaseModel): + CiphertextBlob: bytes + KeyId: str + EncryptionAlgorithm: EncryptionAlgorithmSpecType + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateDataKeyPairResponseTypeDef(BaseModel): + PrivateKeyCiphertextBlob: bytes + PrivateKeyPlaintext: bytes + PublicKey: bytes + KeyId: str + KeyPairSpec: DataKeyPairSpecType + CiphertextForRecipient: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateDataKeyPairWithoutPlaintextResponseTypeDef(BaseModel): + PrivateKeyCiphertextBlob: bytes + PublicKey: bytes + KeyId: str + KeyPairSpec: DataKeyPairSpecType + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateDataKeyResponseTypeDef(BaseModel): + CiphertextBlob: bytes + Plaintext: bytes + KeyId: str + CiphertextForRecipient: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateDataKeyWithoutPlaintextResponseTypeDef(BaseModel): + CiphertextBlob: bytes + KeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateMacResponseTypeDef(BaseModel): + Mac: bytes + MacAlgorithm: MacAlgorithmSpecType + KeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateRandomResponseTypeDef(BaseModel): + Plaintext: bytes + CiphertextForRecipient: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyPolicyResponseTypeDef(BaseModel): + Policy: str + PolicyName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyRotationStatusResponseTypeDef(BaseModel): + KeyRotationEnabled: bool + KeyId: str + RotationPeriodInDays: int + NextRotationDate: datetime + OnDemandRotationStartDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetParametersForImportResponseTypeDef(BaseModel): + KeyId: str + ImportToken: bytes + PublicKey: bytes + ParametersValidTo: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPublicKeyResponseTypeDef(BaseModel): + KeyId: str + PublicKey: bytes + CustomerMasterKeySpec: CustomerMasterKeySpecType + KeySpec: KeySpecType + KeyUsage: KeyUsageTypeType + EncryptionAlgorithms: List[EncryptionAlgorithmSpecType] + SigningAlgorithms: List[SigningAlgorithmSpecType] + KeyAgreementAlgorithms: List[Literal["ECDH"]] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesResponseTypeDef(BaseModel): + Aliases: List[AliasListEntryTypeDef] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyPoliciesResponseTypeDef(BaseModel): + PolicyNames: List[str] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReEncryptResponseTypeDef(BaseModel): + CiphertextBlob: bytes + SourceKeyId: str + KeyId: str + SourceEncryptionAlgorithm: EncryptionAlgorithmSpecType + DestinationEncryptionAlgorithm: EncryptionAlgorithmSpecType + ResponseMetadata: ResponseMetadataTypeDef + +class RotateKeyOnDemandResponseTypeDef(BaseModel): + KeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduleKeyDeletionResponseTypeDef(BaseModel): + KeyId: str + DeletionDate: datetime + KeyState: KeyStateType + PendingWindowInDays: int + ResponseMetadata: ResponseMetadataTypeDef + +class SignResponseTypeDef(BaseModel): + KeyId: str + Signature: bytes + SigningAlgorithm: SigningAlgorithmSpecType + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyMacResponseTypeDef(BaseModel): + KeyId: str + MacValid: bool + MacAlgorithm: MacAlgorithmSpecType + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyResponseTypeDef(BaseModel): + KeyId: str + SignatureValid: bool + SigningAlgorithm: SigningAlgorithmSpecType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomKeyStoreRequestRequestTypeDef(BaseModel): + CustomKeyStoreName: str + CloudHsmClusterId: Optional[str] = None + TrustAnchorCertificate: Optional[str] = None + KeyStorePassword: Optional[str] = None + CustomKeyStoreType: Optional[CustomKeyStoreTypeType] = None + XksProxyUriEndpoint: Optional[str] = None + XksProxyUriPath: Optional[str] = None + XksProxyVpcEndpointServiceName: Optional[str] = None + XksProxyAuthenticationCredential: Optional[ XksProxyAuthenticationCredentialTypeTypeDef ] = None + XksProxyConnectivity: Optional[XksProxyConnectivityTypeType] = None + +class UpdateCustomKeyStoreRequestRequestTypeDef(BaseModel): + CustomKeyStoreId: str + NewCustomKeyStoreName: Optional[str] = None + KeyStorePassword: Optional[str] = None + CloudHsmClusterId: Optional[str] = None + XksProxyUriEndpoint: Optional[str] = None + XksProxyUriPath: Optional[str] = None + XksProxyVpcEndpointServiceName: Optional[str] = None + XksProxyAuthenticationCredential: Optional[ XksProxyAuthenticationCredentialTypeTypeDef ] = None + XksProxyConnectivity: Optional[XksProxyConnectivityTypeType] = None + +class CreateGrantRequestRequestTypeDef(BaseModel): + KeyId: str + GranteePrincipal: str + Operations: Sequence[GrantOperationType] + RetiringPrincipal: Optional[str] = None + Constraints: Optional[GrantConstraintsTypeDef] = None + GrantTokens: Optional[Sequence[str]] = None + Name: Optional[str] = None + DryRun: Optional[bool] = None + +class CreateKeyRequestRequestTypeDef(BaseModel): + Policy: Optional[str] = None + Description: Optional[str] = None + KeyUsage: Optional[KeyUsageTypeType] = None + CustomerMasterKeySpec: Optional[CustomerMasterKeySpecType] = None + KeySpec: Optional[KeySpecType] = None + Origin: Optional[OriginTypeType] = None + CustomKeyStoreId: Optional[str] = None + BypassPolicyLockoutSafetyCheck: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + MultiRegion: Optional[bool] = None + XksKeyId: Optional[str] = None + +class ListResourceTagsResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicateKeyRequestRequestTypeDef(BaseModel): + KeyId: str + ReplicaRegion: str + Policy: Optional[str] = None + BypassPolicyLockoutSafetyCheck: Optional[bool] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + KeyId: str + Tags: Sequence[TagTypeDef] + +class CustomKeyStoresListEntryTypeDef(BaseModel): + CustomKeyStoreId: Optional[str] = None + CustomKeyStoreName: Optional[str] = None + CloudHsmClusterId: Optional[str] = None + TrustAnchorCertificate: Optional[str] = None + ConnectionState: Optional[ConnectionStateTypeType] = None + ConnectionErrorCode: Optional[ConnectionErrorCodeTypeType] = None + CreationDate: Optional[datetime] = None + CustomKeyStoreType: Optional[CustomKeyStoreTypeType] = None + XksProxyConfiguration: Optional[XksProxyConfigurationTypeTypeDef] = None + +class DescribeCustomKeyStoresRequestDescribeCustomKeyStoresPaginateTypeDef(BaseModel): + CustomKeyStoreId: Optional[str] = None + CustomKeyStoreName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAliasesRequestListAliasesPaginateTypeDef(BaseModel): + KeyId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGrantsRequestListGrantsPaginateTypeDef(BaseModel): + KeyId: str + GrantId: Optional[str] = None + GranteePrincipal: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeyPoliciesRequestListKeyPoliciesPaginateTypeDef(BaseModel): + KeyId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeyRotationsRequestListKeyRotationsPaginateTypeDef(BaseModel): + KeyId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeysRequestListKeysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceTagsRequestListResourceTagsPaginateTypeDef(BaseModel): + KeyId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRetirableGrantsRequestListRetirableGrantsPaginateTypeDef(BaseModel): + RetiringPrincipal: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GrantListEntryTypeDef(BaseModel): + KeyId: Optional[str] = None + GrantId: Optional[str] = None + Name: Optional[str] = None + CreationDate: Optional[datetime] = None + GranteePrincipal: Optional[str] = None + RetiringPrincipal: Optional[str] = None + IssuingAccount: Optional[str] = None + Operations: Optional[List[GrantOperationType]] = None + Constraints: Optional[GrantConstraintsOutputTypeDef] = None + +class ImportKeyMaterialRequestRequestTypeDef(BaseModel): + KeyId: str + ImportToken: BlobTypeDef + EncryptedKeyMaterial: BlobTypeDef + ValidTo: Optional[TimestampTypeDef] = None + ExpirationModel: Optional[ExpirationModelTypeType] = None + +class ListKeysResponseTypeDef(BaseModel): + Keys: List[KeyListEntryTypeDef] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeyRotationsResponseTypeDef(BaseModel): + Rotations: List[RotationsListEntryTypeDef] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class MultiRegionConfigurationTypeDef(BaseModel): + MultiRegionKeyType: Optional[MultiRegionKeyTypeType] = None + PrimaryKey: Optional[MultiRegionKeyTypeDef] = None + ReplicaKeys: Optional[List[MultiRegionKeyTypeDef]] = None + +class DecryptRequestRequestTypeDef(BaseModel): + CiphertextBlob: BlobTypeDef + EncryptionContext: Optional[Mapping[str, str]] = None + GrantTokens: Optional[Sequence[str]] = None + KeyId: Optional[str] = None + EncryptionAlgorithm: Optional[EncryptionAlgorithmSpecType] = None + Recipient: Optional[RecipientInfoTypeDef] = None + DryRun: Optional[bool] = None + +class DeriveSharedSecretRequestRequestTypeDef(BaseModel): + KeyId: str + KeyAgreementAlgorithm: Literal["ECDH"] + PublicKey: BlobTypeDef + GrantTokens: Optional[Sequence[str]] = None + DryRun: Optional[bool] = None + Recipient: Optional[RecipientInfoTypeDef] = None + +class GenerateDataKeyPairRequestRequestTypeDef(BaseModel): + KeyId: str + KeyPairSpec: DataKeyPairSpecType + EncryptionContext: Optional[Mapping[str, str]] = None + GrantTokens: Optional[Sequence[str]] = None + Recipient: Optional[RecipientInfoTypeDef] = None + DryRun: Optional[bool] = None + +class GenerateDataKeyRequestRequestTypeDef(BaseModel): + KeyId: str + EncryptionContext: Optional[Mapping[str, str]] = None + NumberOfBytes: Optional[int] = None + KeySpec: Optional[DataKeySpecType] = None + GrantTokens: Optional[Sequence[str]] = None + Recipient: Optional[RecipientInfoTypeDef] = None + DryRun: Optional[bool] = None + +class GenerateRandomRequestRequestTypeDef(BaseModel): + NumberOfBytes: Optional[int] = None + CustomKeyStoreId: Optional[str] = None + Recipient: Optional[RecipientInfoTypeDef] = None + +class DescribeCustomKeyStoresResponseTypeDef(BaseModel): + CustomKeyStores: List[CustomKeyStoresListEntryTypeDef] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListGrantsResponseTypeDef(BaseModel): + Grants: List[GrantListEntryTypeDef] + NextMarker: str + Truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class KeyMetadataTypeDef(BaseModel): + KeyId: str + AWSAccountId: Optional[str] = None + Arn: Optional[str] = None + CreationDate: Optional[datetime] = None + Enabled: Optional[bool] = None + Description: Optional[str] = None + KeyUsage: Optional[KeyUsageTypeType] = None + KeyState: Optional[KeyStateType] = None + DeletionDate: Optional[datetime] = None + ValidTo: Optional[datetime] = None + Origin: Optional[OriginTypeType] = None + CustomKeyStoreId: Optional[str] = None + CloudHsmClusterId: Optional[str] = None + ExpirationModel: Optional[ExpirationModelTypeType] = None + KeyManager: Optional[KeyManagerTypeType] = None + CustomerMasterKeySpec: Optional[CustomerMasterKeySpecType] = None + KeySpec: Optional[KeySpecType] = None + EncryptionAlgorithms: Optional[List[EncryptionAlgorithmSpecType]] = None + SigningAlgorithms: Optional[List[SigningAlgorithmSpecType]] = None + KeyAgreementAlgorithms: Optional[List[Literal["ECDH"]]] = None + MultiRegion: Optional[bool] = None + MultiRegionConfiguration: Optional[MultiRegionConfigurationTypeDef] = None + PendingDeletionWindowInDays: Optional[int] = None + MacAlgorithms: Optional[List[MacAlgorithmSpecType]] = None + XksKeyConfiguration: Optional[XksKeyConfigurationTypeTypeDef] = None + +class CreateKeyResponseTypeDef(BaseModel): + KeyMetadata: KeyMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyResponseTypeDef(BaseModel): + KeyMetadata: KeyMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicateKeyResponseTypeDef(BaseModel): + ReplicaKeyMetadata: KeyMetadataTypeDef + ReplicaPolicy: str + ReplicaTags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/kms_constants.py b/aws_resource_validator/pydantic_models/kms_constants.py new file mode 100644 index 00000000..7e428264 --- /dev/null +++ b/aws_resource_validator/pydantic_models/kms_constants.py @@ -0,0 +1,556 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlgorithmSpecType = Literal["RSAES_OAEP_SHA_1", + "RSAES_OAEP_SHA_256", + "RSAES_PKCS1_V1_5", + "RSA_AES_KEY_WRAP_SHA_1", + "RSA_AES_KEY_WRAP_SHA_256", + "SM2PKE",] +ConnectionErrorCodeTypeType = Literal["CLUSTER_NOT_FOUND", + "INSUFFICIENT_CLOUDHSM_HSMS", + "INSUFFICIENT_FREE_ADDRESSES_IN_SUBNET", + "INTERNAL_ERROR", + "INVALID_CREDENTIALS", + "NETWORK_ERRORS", + "SUBNET_NOT_FOUND", + "USER_LOCKED_OUT", + "USER_LOGGED_IN", + "USER_NOT_FOUND", + "XKS_PROXY_ACCESS_DENIED", + "XKS_PROXY_INVALID_CONFIGURATION", + "XKS_PROXY_INVALID_RESPONSE", + "XKS_PROXY_INVALID_TLS_CONFIGURATION", + "XKS_PROXY_NOT_REACHABLE", + "XKS_PROXY_TIMED_OUT", + "XKS_VPC_ENDPOINT_SERVICE_INVALID_CONFIGURATION", + "XKS_VPC_ENDPOINT_SERVICE_NOT_FOUND",] +ConnectionStateTypeType = Literal["CONNECTED", "CONNECTING", "DISCONNECTED", "DISCONNECTING", "FAILED"] +CustomKeyStoreTypeType = Literal["AWS_CLOUDHSM", "EXTERNAL_KEY_STORE"] +CustomerMasterKeySpecType = Literal["ECC_NIST_P256", + "ECC_NIST_P384", + "ECC_NIST_P521", + "ECC_SECG_P256K1", + "HMAC_224", + "HMAC_256", + "HMAC_384", + "HMAC_512", + "RSA_2048", + "RSA_3072", + "RSA_4096", + "SM2", + "SYMMETRIC_DEFAULT",] +DataKeyPairSpecType = Literal["ECC_NIST_P256", + "ECC_NIST_P384", + "ECC_NIST_P521", + "ECC_SECG_P256K1", + "RSA_2048", + "RSA_3072", + "RSA_4096", + "SM2",] +DataKeySpecType = Literal["AES_128", "AES_256"] +DescribeCustomKeyStoresPaginatorName = Literal["describe_custom_key_stores"] +EncryptionAlgorithmSpecType = Literal["RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256", "SM2PKE", "SYMMETRIC_DEFAULT"] +ExpirationModelTypeType = Literal["KEY_MATERIAL_DOES_NOT_EXPIRE", "KEY_MATERIAL_EXPIRES"] +GrantOperationType = Literal["CreateGrant", + "Decrypt", + "DeriveSharedSecret", + "DescribeKey", + "Encrypt", + "GenerateDataKey", + "GenerateDataKeyPair", + "GenerateDataKeyPairWithoutPlaintext", + "GenerateDataKeyWithoutPlaintext", + "GenerateMac", + "GetPublicKey", + "ReEncryptFrom", + "ReEncryptTo", + "RetireGrant", + "Sign", + "Verify", + "VerifyMac",] +KeyAgreementAlgorithmSpecType = Literal["ECDH"] +KeyEncryptionMechanismType = Literal["RSAES_OAEP_SHA_256"] +KeyManagerTypeType = Literal["AWS", "CUSTOMER"] +KeySpecType = Literal["ECC_NIST_P256", + "ECC_NIST_P384", + "ECC_NIST_P521", + "ECC_SECG_P256K1", + "HMAC_224", + "HMAC_256", + "HMAC_384", + "HMAC_512", + "RSA_2048", + "RSA_3072", + "RSA_4096", + "SM2", + "SYMMETRIC_DEFAULT",] +KeyStateType = Literal["Creating", + "Disabled", + "Enabled", + "PendingDeletion", + "PendingImport", + "PendingReplicaDeletion", + "Unavailable", + "Updating",] +KeyUsageTypeType = Literal["ENCRYPT_DECRYPT", "GENERATE_VERIFY_MAC", "KEY_AGREEMENT", "SIGN_VERIFY"] +ListAliasesPaginatorName = Literal["list_aliases"] +ListGrantsPaginatorName = Literal["list_grants"] +ListKeyPoliciesPaginatorName = Literal["list_key_policies"] +ListKeyRotationsPaginatorName = Literal["list_key_rotations"] +ListKeysPaginatorName = Literal["list_keys"] +ListResourceTagsPaginatorName = Literal["list_resource_tags"] +ListRetirableGrantsPaginatorName = Literal["list_retirable_grants"] +MacAlgorithmSpecType = Literal["HMAC_SHA_224", "HMAC_SHA_256", "HMAC_SHA_384", "HMAC_SHA_512"] +MessageTypeType = Literal["DIGEST", "RAW"] +MultiRegionKeyTypeType = Literal["PRIMARY", "REPLICA"] +OriginTypeType = Literal["AWS_CLOUDHSM", "AWS_KMS", "EXTERNAL", "EXTERNAL_KEY_STORE"] +RotationTypeType = Literal["AUTOMATIC", "ON_DEMAND"] +SigningAlgorithmSpecType = Literal["ECDSA_SHA_256", + "ECDSA_SHA_384", + "ECDSA_SHA_512", + "RSASSA_PKCS1_V1_5_SHA_256", + "RSASSA_PKCS1_V1_5_SHA_384", + "RSASSA_PKCS1_V1_5_SHA_512", + "RSASSA_PSS_SHA_256", + "RSASSA_PSS_SHA_384", + "RSASSA_PSS_SHA_512", + "SM2DSA",] +WrappingKeySpecType = Literal["RSA_2048", "RSA_3072", "RSA_4096", "SM2"] +XksProxyConnectivityTypeType = Literal["PUBLIC_ENDPOINT", "VPC_ENDPOINT_SERVICE"] +KMSServiceName = Literal["kms"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_custom_key_stores", + "list_aliases", + "list_grants", + "list_key_policies", + "list_key_rotations", + "list_keys", + "list_resource_tags", + "list_retirable_grants",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +GrantConstraintsUnionTypeDef = Union['GrantConstraintsTypeDef', 'GrantConstraintsExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/lakeformation_classes.py b/aws_resource_validator/pydantic_models/lakeformation_classes.py new file mode 100644 index 00000000..7f9740f5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lakeformation_classes.py @@ -0,0 +1,850 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lakeformation_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AddObjectInputTypeDef(BaseModel): + Uri: str + ETag: str + Size: int + PartitionValues: Optional[Sequence[str]] = None + +class AssumeDecoratedRoleWithSAMLRequestRequestTypeDef(BaseModel): + SAMLAssertion: str + RoleArn: str + PrincipalArn: str + DurationSeconds: Optional[int] = None + +class AuditContextTypeDef(BaseModel): + AdditionalAuditContext: Optional[str] = None + +class ErrorDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class DataLakePrincipalTypeDef(BaseModel): + DataLakePrincipalIdentifier: Optional[str] = None + +class CancelTransactionRequestRequestTypeDef(BaseModel): + TransactionId: str + +class LFTagPairOutputTypeDef(BaseModel): + TagKey: str + TagValues: List[str] + CatalogId: Optional[str] = None + +class ColumnWildcardExtraOutputTypeDef(BaseModel): + ExcludedColumnNames: Optional[List[str]] = None + +class ColumnWildcardOutputTypeDef(BaseModel): + ExcludedColumnNames: Optional[List[str]] = None + +class ColumnWildcardTypeDef(BaseModel): + ExcludedColumnNames: Optional[Sequence[str]] = None + +class CommitTransactionRequestRequestTypeDef(BaseModel): + TransactionId: str + +class CreateLFTagRequestRequestTypeDef(BaseModel): + TagKey: str + TagValues: Sequence[str] + CatalogId: Optional[str] = None + +class ExternalFilteringConfigurationTypeDef(BaseModel): + Status: EnableStatusType + AuthorizedTargets: Sequence[str] + +class RowFilterExtraOutputTypeDef(BaseModel): + FilterExpression: Optional[str] = None + AllRowsWildcard: Optional[Dict[str, Any]] = None + +class RowFilterOutputTypeDef(BaseModel): + FilterExpression: Optional[str] = None + AllRowsWildcard: Optional[Dict[str, Any]] = None + +class DataCellsFilterResourceTypeDef(BaseModel): + TableCatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + Name: Optional[str] = None + +class RowFilterTypeDef(BaseModel): + FilterExpression: Optional[str] = None + AllRowsWildcard: Optional[Mapping[str, Any]] = None + +class DataLocationResourceTypeDef(BaseModel): + ResourceArn: str + CatalogId: Optional[str] = None + +class DatabaseResourceTypeDef(BaseModel): + Name: str + CatalogId: Optional[str] = None + +class DeleteDataCellsFilterRequestRequestTypeDef(BaseModel): + TableCatalogId: Optional[str] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + Name: Optional[str] = None + +class DeleteLFTagRequestRequestTypeDef(BaseModel): + TagKey: str + CatalogId: Optional[str] = None + +class DeleteLakeFormationIdentityCenterConfigurationRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + +class DeleteObjectInputTypeDef(BaseModel): + Uri: str + ETag: Optional[str] = None + PartitionValues: Optional[Sequence[str]] = None + +class VirtualObjectTypeDef(BaseModel): + Uri: str + ETag: Optional[str] = None + +class DeregisterResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DescribeLakeFormationIdentityCenterConfigurationRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + +class ExternalFilteringConfigurationOutputTypeDef(BaseModel): + Status: EnableStatusType + AuthorizedTargets: List[str] + +class DescribeResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ResourceInfoTypeDef(BaseModel): + ResourceArn: Optional[str] = None + RoleArn: Optional[str] = None + LastModified: Optional[datetime] = None + WithFederation: Optional[bool] = None + HybridAccessEnabled: Optional[bool] = None + +class DescribeTransactionRequestRequestTypeDef(BaseModel): + TransactionId: str + +class TransactionDescriptionTypeDef(BaseModel): + TransactionId: Optional[str] = None + TransactionStatus: Optional[TransactionStatusType] = None + TransactionStartTime: Optional[datetime] = None + TransactionEndTime: Optional[datetime] = None + +class DetailsMapTypeDef(BaseModel): + ResourceShare: Optional[List[str]] = None + +class ExecutionStatisticsTypeDef(BaseModel): + AverageExecutionTimeMillis: Optional[int] = None + DataScannedBytes: Optional[int] = None + WorkUnitsExecutedCount: Optional[int] = None + +class ExtendTransactionRequestRequestTypeDef(BaseModel): + TransactionId: Optional[str] = None + +class FilterConditionTypeDef(BaseModel): + Field: Optional[FieldNameStringType] = None + ComparisonOperator: Optional[ComparisonOperatorType] = None + StringValueList: Optional[Sequence[str]] = None + +class GetDataCellsFilterRequestRequestTypeDef(BaseModel): + TableCatalogId: str + DatabaseName: str + TableName: str + Name: str + +class GetDataLakeSettingsRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + +class GetEffectivePermissionsForPathRequestRequestTypeDef(BaseModel): + ResourceArn: str + CatalogId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetLFTagRequestRequestTypeDef(BaseModel): + TagKey: str + CatalogId: Optional[str] = None + +class GetQueryStateRequestRequestTypeDef(BaseModel): + QueryId: str + +class GetQueryStatisticsRequestRequestTypeDef(BaseModel): + QueryId: str + +class PlanningStatisticsTypeDef(BaseModel): + EstimatedDataToScanBytes: Optional[int] = None + PlanningTimeMillis: Optional[int] = None + QueueTimeMillis: Optional[int] = None + WorkUnitsGeneratedCount: Optional[int] = None + +class PartitionValueListTypeDef(BaseModel): + Values: Sequence[str] + +class GetWorkUnitResultsRequestRequestTypeDef(BaseModel): + QueryId: str + WorkUnitId: int + WorkUnitToken: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetWorkUnitsRequestRequestTypeDef(BaseModel): + QueryId: str + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class WorkUnitRangeTypeDef(BaseModel): + WorkUnitIdMax: int + WorkUnitIdMin: int + WorkUnitToken: str + +class LFTagKeyResourceOutputTypeDef(BaseModel): + TagKey: str + TagValues: List[str] + CatalogId: Optional[str] = None + +class LFTagKeyResourceTypeDef(BaseModel): + TagKey: str + TagValues: Sequence[str] + CatalogId: Optional[str] = None + +class LFTagOutputTypeDef(BaseModel): + TagKey: str + TagValues: List[str] + +class LFTagPairExtraOutputTypeDef(BaseModel): + TagKey: str + TagValues: List[str] + CatalogId: Optional[str] = None + +class LFTagPairTypeDef(BaseModel): + TagKey: str + TagValues: Sequence[str] + CatalogId: Optional[str] = None + +class LFTagTypeDef(BaseModel): + TagKey: str + TagValues: Sequence[str] + +class TableResourceTypeDef(BaseModel): + DatabaseName: str + CatalogId: Optional[str] = None + Name: Optional[str] = None + TableWildcard: Optional[Mapping[str, Any]] = None + +class ListLFTagsRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + ResourceShareType: Optional[ResourceShareTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTableStorageOptimizersRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + StorageOptimizerType: Optional[OptimizerTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class StorageOptimizerTypeDef(BaseModel): + StorageOptimizerType: Optional[OptimizerTypeType] = None + Config: Optional[Dict[str, str]] = None + ErrorMessage: Optional[str] = None + Warnings: Optional[str] = None + LastRunDetails: Optional[str] = None + +class ListTransactionsRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + StatusFilter: Optional[TransactionStatusFilterType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TableObjectTypeDef(BaseModel): + Uri: Optional[str] = None + ETag: Optional[str] = None + Size: Optional[int] = None + +class RegisterResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + UseServiceLinkedRole: Optional[bool] = None + RoleArn: Optional[str] = None + WithFederation: Optional[bool] = None + HybridAccessEnabled: Optional[bool] = None + +class TableResourceOutputTypeDef(BaseModel): + DatabaseName: str + CatalogId: Optional[str] = None + Name: Optional[str] = None + TableWildcard: Optional[Dict[str, Any]] = None + +class StartTransactionRequestRequestTypeDef(BaseModel): + TransactionType: Optional[TransactionTypeType] = None + +class TableResourceExtraOutputTypeDef(BaseModel): + DatabaseName: str + CatalogId: Optional[str] = None + Name: Optional[str] = None + TableWildcard: Optional[Dict[str, Any]] = None + +class UpdateLFTagRequestRequestTypeDef(BaseModel): + TagKey: str + CatalogId: Optional[str] = None + TagValuesToDelete: Optional[Sequence[str]] = None + TagValuesToAdd: Optional[Sequence[str]] = None + +class UpdateResourceRequestRequestTypeDef(BaseModel): + RoleArn: str + ResourceArn: str + WithFederation: Optional[bool] = None + HybridAccessEnabled: Optional[bool] = None + +class UpdateTableStorageOptimizerRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + StorageOptimizerConfig: Mapping[OptimizerTypeType, Mapping[str, str]] + CatalogId: Optional[str] = None + +class AssumeDecoratedRoleWithSAMLResponseTypeDef(BaseModel): + AccessKeyId: str + SecretAccessKey: str + SessionToken: str + Expiration: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CommitTransactionResponseTypeDef(BaseModel): + TransactionStatus: TransactionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLakeFormationIdentityCenterConfigurationResponseTypeDef(BaseModel): + ApplicationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataLakePrincipalResponseTypeDef(BaseModel): + Identity: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLFTagResponseTypeDef(BaseModel): + CatalogId: str + TagKey: str + TagValues: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryStateResponseTypeDef(BaseModel): + Error: str + State: QueryStateStringType + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemporaryGluePartitionCredentialsResponseTypeDef(BaseModel): + AccessKeyId: str + SecretAccessKey: str + SessionToken: str + Expiration: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemporaryGlueTableCredentialsResponseTypeDef(BaseModel): + AccessKeyId: str + SecretAccessKey: str + SessionToken: str + Expiration: datetime + VendedS3Path: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkUnitResultsResponseTypeDef(BaseModel): + ResultStream: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class StartQueryPlanningResponseTypeDef(BaseModel): + QueryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartTransactionResponseTypeDef(BaseModel): + TransactionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableStorageOptimizerResponseTypeDef(BaseModel): + Result: str + ResponseMetadata: ResponseMetadataTypeDef + +class PrincipalPermissionsOutputTypeDef(BaseModel): + Principal: Optional[DataLakePrincipalTypeDef] = None + Permissions: Optional[List[PermissionType]] = None + +class PrincipalPermissionsTypeDef(BaseModel): + Principal: Optional[DataLakePrincipalTypeDef] = None + Permissions: Optional[Sequence[PermissionType]] = None + +class ColumnLFTagTypeDef(BaseModel): + Name: Optional[str] = None + LFTags: Optional[List[LFTagPairOutputTypeDef]] = None + +class LFTagErrorTypeDef(BaseModel): + LFTag: Optional[LFTagPairOutputTypeDef] = None + Error: Optional[ErrorDetailTypeDef] = None + +class ListLFTagsResponseTypeDef(BaseModel): + LFTags: List[LFTagPairOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TableWithColumnsResourceOutputTypeDef(BaseModel): + DatabaseName: str + Name: str + CatalogId: Optional[str] = None + ColumnNames: Optional[List[str]] = None + ColumnWildcard: Optional[ColumnWildcardOutputTypeDef] = None + +class TableWithColumnsResourceTypeDef(BaseModel): + DatabaseName: str + Name: str + CatalogId: Optional[str] = None + ColumnNames: Optional[Sequence[str]] = None + ColumnWildcard: Optional[ColumnWildcardTypeDef] = None + +class CreateLakeFormationIdentityCenterConfigurationRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + InstanceArn: Optional[str] = None + ExternalFiltering: Optional[ExternalFilteringConfigurationTypeDef] = None + ShareRecipients: Optional[Sequence[DataLakePrincipalTypeDef]] = None + +class UpdateLakeFormationIdentityCenterConfigurationRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + ShareRecipients: Optional[Sequence[DataLakePrincipalTypeDef]] = None + ApplicationStatus: Optional[ApplicationStatusType] = None + ExternalFiltering: Optional[ExternalFilteringConfigurationTypeDef] = None + +class DataCellsFilterExtraOutputTypeDef(BaseModel): + TableCatalogId: str + DatabaseName: str + TableName: str + Name: str + RowFilter: Optional[RowFilterExtraOutputTypeDef] = None + ColumnNames: Optional[List[str]] = None + ColumnWildcard: Optional[ColumnWildcardExtraOutputTypeDef] = None + VersionId: Optional[str] = None + +class DataCellsFilterOutputTypeDef(BaseModel): + TableCatalogId: str + DatabaseName: str + TableName: str + Name: str + RowFilter: Optional[RowFilterOutputTypeDef] = None + ColumnNames: Optional[List[str]] = None + ColumnWildcard: Optional[ColumnWildcardOutputTypeDef] = None + VersionId: Optional[str] = None + +class DataCellsFilterTypeDef(BaseModel): + TableCatalogId: str + DatabaseName: str + TableName: str + Name: str + RowFilter: Optional[RowFilterTypeDef] = None + ColumnNames: Optional[Sequence[str]] = None + ColumnWildcard: Optional[ColumnWildcardTypeDef] = None + VersionId: Optional[str] = None + +class TaggedDatabaseTypeDef(BaseModel): + Database: Optional[DatabaseResourceTypeDef] = None + LFTags: Optional[List[LFTagPairOutputTypeDef]] = None + +class WriteOperationTypeDef(BaseModel): + AddObject: Optional[AddObjectInputTypeDef] = None + DeleteObject: Optional[DeleteObjectInputTypeDef] = None + +class DeleteObjectsOnCancelRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + TransactionId: str + Objects: Sequence[VirtualObjectTypeDef] + CatalogId: Optional[str] = None + +class DescribeLakeFormationIdentityCenterConfigurationResponseTypeDef(BaseModel): + CatalogId: str + InstanceArn: str + ApplicationArn: str + ExternalFiltering: ExternalFilteringConfigurationOutputTypeDef + ShareRecipients: List[DataLakePrincipalTypeDef] + ResourceShare: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourceResponseTypeDef(BaseModel): + ResourceInfo: ResourceInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesResponseTypeDef(BaseModel): + ResourceInfoList: List[ResourceInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeTransactionResponseTypeDef(BaseModel): + TransactionDescription: TransactionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTransactionsResponseTypeDef(BaseModel): + Transactions: List[TransactionDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourcesRequestRequestTypeDef(BaseModel): + FilterConditionList: Optional[Sequence[FilterConditionTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetQueryStatisticsResponseTypeDef(BaseModel): + ExecutionStatistics: ExecutionStatisticsTypeDef + PlanningStatistics: PlanningStatisticsTypeDef + QuerySubmissionTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetTableObjectsRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + CatalogId: Optional[str] = None + TransactionId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + PartitionPredicate: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class QueryPlanningContextTypeDef(BaseModel): + DatabaseName: str + CatalogId: Optional[str] = None + QueryAsOfTime: Optional[TimestampTypeDef] = None + QueryParameters: Optional[Mapping[str, str]] = None + TransactionId: Optional[str] = None + +class QuerySessionContextTypeDef(BaseModel): + QueryId: Optional[str] = None + QueryStartTime: Optional[TimestampTypeDef] = None + ClusterId: Optional[str] = None + QueryAuthorizationId: Optional[str] = None + AdditionalContext: Optional[Mapping[str, str]] = None + +class GetTemporaryGluePartitionCredentialsRequestRequestTypeDef(BaseModel): + TableArn: str + Partition: PartitionValueListTypeDef + Permissions: Optional[Sequence[PermissionType]] = None + DurationSeconds: Optional[int] = None + AuditContext: Optional[AuditContextTypeDef] = None + SupportedPermissionTypes: Optional[Sequence[PermissionTypeType]] = None + +class GetWorkUnitsRequestGetWorkUnitsPaginateTypeDef(BaseModel): + QueryId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLFTagsRequestListLFTagsPaginateTypeDef(BaseModel): + CatalogId: Optional[str] = None + ResourceShareType: Optional[ResourceShareTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetWorkUnitsResponseTypeDef(BaseModel): + QueryId: str + WorkUnitRanges: List[WorkUnitRangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LFTagPolicyResourceOutputTypeDef(BaseModel): + ResourceType: ResourceTypeType + Expression: List[LFTagOutputTypeDef] + CatalogId: Optional[str] = None + +class LFTagPolicyResourceTypeDef(BaseModel): + ResourceType: ResourceTypeType + Expression: Sequence[LFTagTypeDef] + CatalogId: Optional[str] = None + +class ListDataCellsFilterRequestListDataCellsFilterPaginateTypeDef(BaseModel): + Table: Optional[TableResourceTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataCellsFilterRequestRequestTypeDef(BaseModel): + Table: Optional[TableResourceTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTableStorageOptimizersResponseTypeDef(BaseModel): + StorageOptimizerList: List[StorageOptimizerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PartitionObjectsTypeDef(BaseModel): + PartitionValues: Optional[List[str]] = None + Objects: Optional[List[TableObjectTypeDef]] = None + +class DataLakeSettingsOutputTypeDef(BaseModel): + DataLakeAdmins: Optional[List[DataLakePrincipalTypeDef]] = None + ReadOnlyAdmins: Optional[List[DataLakePrincipalTypeDef]] = None + CreateDatabaseDefaultPermissions: Optional[List[PrincipalPermissionsOutputTypeDef]] = None + CreateTableDefaultPermissions: Optional[List[PrincipalPermissionsOutputTypeDef]] = None + Parameters: Optional[Dict[str, str]] = None + TrustedResourceOwners: Optional[List[str]] = None + AllowExternalDataFiltering: Optional[bool] = None + AllowFullTableExternalDataAccess: Optional[bool] = None + ExternalDataFilteringAllowList: Optional[List[DataLakePrincipalTypeDef]] = None + AuthorizedSessionTagValueList: Optional[List[str]] = None + +class DataLakeSettingsTypeDef(BaseModel): + DataLakeAdmins: Optional[Sequence[DataLakePrincipalTypeDef]] = None + ReadOnlyAdmins: Optional[Sequence[DataLakePrincipalTypeDef]] = None + CreateDatabaseDefaultPermissions: Optional[Sequence[PrincipalPermissionsTypeDef]] = None + CreateTableDefaultPermissions: Optional[Sequence[PrincipalPermissionsTypeDef]] = None + Parameters: Optional[Mapping[str, str]] = None + TrustedResourceOwners: Optional[Sequence[str]] = None + AllowExternalDataFiltering: Optional[bool] = None + AllowFullTableExternalDataAccess: Optional[bool] = None + ExternalDataFilteringAllowList: Optional[Sequence[DataLakePrincipalTypeDef]] = None + AuthorizedSessionTagValueList: Optional[Sequence[str]] = None + +class GetResourceLFTagsResponseTypeDef(BaseModel): + LFTagOnDatabase: List[LFTagPairOutputTypeDef] + LFTagsOnTable: List[LFTagPairOutputTypeDef] + LFTagsOnColumns: List[ColumnLFTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TaggedTableTypeDef(BaseModel): + Table: Optional[TableResourceOutputTypeDef] = None + LFTagOnDatabase: Optional[List[LFTagPairOutputTypeDef]] = None + LFTagsOnTable: Optional[List[LFTagPairOutputTypeDef]] = None + LFTagsOnColumns: Optional[List[ColumnLFTagTypeDef]] = None + +class AddLFTagsToResourceResponseTypeDef(BaseModel): + Failures: List[LFTagErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveLFTagsFromResourceResponseTypeDef(BaseModel): + Failures: List[LFTagErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataCellsFilterResponseTypeDef(BaseModel): + DataCellsFilter: DataCellsFilterOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataCellsFilterResponseTypeDef(BaseModel): + DataCellsFilters: List[DataCellsFilterOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateDataCellsFilterRequestRequestTypeDef(BaseModel): + TableData: DataCellsFilterTypeDef + +class UpdateDataCellsFilterRequestRequestTypeDef(BaseModel): + TableData: DataCellsFilterTypeDef + +class SearchDatabasesByLFTagsResponseTypeDef(BaseModel): + DatabaseList: List[TaggedDatabaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateTableObjectsRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + WriteOperations: Sequence[WriteOperationTypeDef] + CatalogId: Optional[str] = None + TransactionId: Optional[str] = None + +class StartQueryPlanningRequestRequestTypeDef(BaseModel): + QueryPlanningContext: QueryPlanningContextTypeDef + QueryString: str + +class GetTemporaryGlueTableCredentialsRequestRequestTypeDef(BaseModel): + TableArn: str + Permissions: Optional[Sequence[PermissionType]] = None + DurationSeconds: Optional[int] = None + AuditContext: Optional[AuditContextTypeDef] = None + SupportedPermissionTypes: Optional[Sequence[PermissionTypeType]] = None + S3Path: Optional[str] = None + QuerySessionContext: Optional[QuerySessionContextTypeDef] = None + +class ResourceOutputTypeDef(BaseModel): + Catalog: Optional[Dict[str, Any]] = None + Database: Optional[DatabaseResourceTypeDef] = None + Table: Optional[TableResourceOutputTypeDef] = None + TableWithColumns: Optional[TableWithColumnsResourceOutputTypeDef] = None + DataLocation: Optional[DataLocationResourceTypeDef] = None + DataCellsFilter: Optional[DataCellsFilterResourceTypeDef] = None + LFTag: Optional[LFTagKeyResourceOutputTypeDef] = None + LFTagPolicy: Optional[LFTagPolicyResourceOutputTypeDef] = None + +class ResourceTypeDef(BaseModel): + Catalog: Optional[Mapping[str, Any]] = None + Database: Optional[DatabaseResourceTypeDef] = None + Table: Optional[TableResourceTypeDef] = None + TableWithColumns: Optional[TableWithColumnsResourceTypeDef] = None + DataLocation: Optional[DataLocationResourceTypeDef] = None + DataCellsFilter: Optional[DataCellsFilterResourceTypeDef] = None + LFTag: Optional[LFTagKeyResourceTypeDef] = None + LFTagPolicy: Optional[LFTagPolicyResourceTypeDef] = None + +class SearchDatabasesByLFTagsRequestRequestTypeDef(BaseModel): + Expression: Sequence[LFTagUnionTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CatalogId: Optional[str] = None + +class SearchDatabasesByLFTagsRequestSearchDatabasesByLFTagsPaginateTypeDef(BaseModel): + Expression: Sequence[LFTagUnionTypeDef] + CatalogId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchTablesByLFTagsRequestRequestTypeDef(BaseModel): + Expression: Sequence[LFTagUnionTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CatalogId: Optional[str] = None + +class SearchTablesByLFTagsRequestSearchTablesByLFTagsPaginateTypeDef(BaseModel): + Expression: Sequence[LFTagUnionTypeDef] + CatalogId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTableObjectsResponseTypeDef(BaseModel): + Objects: List[PartitionObjectsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDataLakeSettingsResponseTypeDef(BaseModel): + DataLakeSettings: DataLakeSettingsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDataLakeSettingsRequestRequestTypeDef(BaseModel): + DataLakeSettings: DataLakeSettingsTypeDef + CatalogId: Optional[str] = None + +class SearchTablesByLFTagsResponseTypeDef(BaseModel): + TableList: List[TaggedTableTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchPermissionsRequestEntryOutputTypeDef(BaseModel): + Id: str + Principal: Optional[DataLakePrincipalTypeDef] = None + Resource: Optional[ResourceOutputTypeDef] = None + Permissions: Optional[List[PermissionType]] = None + PermissionsWithGrantOption: Optional[List[PermissionType]] = None + +class LakeFormationOptInsInfoTypeDef(BaseModel): + Resource: Optional[ResourceOutputTypeDef] = None + Principal: Optional[DataLakePrincipalTypeDef] = None + LastModified: Optional[datetime] = None + LastUpdatedBy: Optional[str] = None + +class PrincipalResourcePermissionsTypeDef(BaseModel): + Principal: Optional[DataLakePrincipalTypeDef] = None + Resource: Optional[ResourceOutputTypeDef] = None + Permissions: Optional[List[PermissionType]] = None + PermissionsWithGrantOption: Optional[List[PermissionType]] = None + AdditionalDetails: Optional[DetailsMapTypeDef] = None + LastUpdated: Optional[datetime] = None + LastUpdatedBy: Optional[str] = None + +class AddLFTagsToResourceRequestRequestTypeDef(BaseModel): + Resource: ResourceTypeDef + LFTags: Sequence[LFTagPairUnionTypeDef] + CatalogId: Optional[str] = None + +class BatchPermissionsRequestEntryTypeDef(BaseModel): + Id: str + Principal: Optional[DataLakePrincipalTypeDef] = None + Resource: Optional[ResourceTypeDef] = None + Permissions: Optional[Sequence[PermissionType]] = None + PermissionsWithGrantOption: Optional[Sequence[PermissionType]] = None + +class CreateLakeFormationOptInRequestRequestTypeDef(BaseModel): + Principal: DataLakePrincipalTypeDef + Resource: ResourceTypeDef + +class DeleteLakeFormationOptInRequestRequestTypeDef(BaseModel): + Principal: DataLakePrincipalTypeDef + Resource: ResourceTypeDef + +class GetResourceLFTagsRequestRequestTypeDef(BaseModel): + Resource: ResourceTypeDef + CatalogId: Optional[str] = None + ShowAssignedLFTags: Optional[bool] = None + +class GrantPermissionsRequestRequestTypeDef(BaseModel): + Principal: DataLakePrincipalTypeDef + Resource: ResourceTypeDef + Permissions: Sequence[PermissionType] + CatalogId: Optional[str] = None + PermissionsWithGrantOption: Optional[Sequence[PermissionType]] = None + +class ListLakeFormationOptInsRequestRequestTypeDef(BaseModel): + Principal: Optional[DataLakePrincipalTypeDef] = None + Resource: Optional[ResourceTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPermissionsRequestRequestTypeDef(BaseModel): + CatalogId: Optional[str] = None + Principal: Optional[DataLakePrincipalTypeDef] = None + ResourceType: Optional[DataLakeResourceTypeType] = None + Resource: Optional[ResourceTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + IncludeRelated: Optional[str] = None + +class RemoveLFTagsFromResourceRequestRequestTypeDef(BaseModel): + Resource: ResourceTypeDef + LFTags: Sequence[LFTagPairUnionTypeDef] + CatalogId: Optional[str] = None + +class RevokePermissionsRequestRequestTypeDef(BaseModel): + Principal: DataLakePrincipalTypeDef + Resource: ResourceTypeDef + Permissions: Sequence[PermissionType] + CatalogId: Optional[str] = None + PermissionsWithGrantOption: Optional[Sequence[PermissionType]] = None + +class BatchPermissionsFailureEntryTypeDef(BaseModel): + RequestEntry: Optional[BatchPermissionsRequestEntryOutputTypeDef] = None + Error: Optional[ErrorDetailTypeDef] = None + +class ListLakeFormationOptInsResponseTypeDef(BaseModel): + LakeFormationOptInsInfoList: List[LakeFormationOptInsInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetEffectivePermissionsForPathResponseTypeDef(BaseModel): + Permissions: List[PrincipalResourcePermissionsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPermissionsResponseTypeDef(BaseModel): + PrincipalResourcePermissions: List[PrincipalResourcePermissionsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGrantPermissionsResponseTypeDef(BaseModel): + Failures: List[BatchPermissionsFailureEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchRevokePermissionsResponseTypeDef(BaseModel): + Failures: List[BatchPermissionsFailureEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGrantPermissionsRequestRequestTypeDef(BaseModel): + Entries: Sequence[BatchPermissionsRequestEntryUnionTypeDef] + CatalogId: Optional[str] = None + +class BatchRevokePermissionsRequestRequestTypeDef(BaseModel): + Entries: Sequence[BatchPermissionsRequestEntryUnionTypeDef] + CatalogId: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/lakeformation_constants.py b/aws_resource_validator/pydantic_models/lakeformation_constants.py new file mode 100644 index 00000000..e7d3e80a --- /dev/null +++ b/aws_resource_validator/pydantic_models/lakeformation_constants.py @@ -0,0 +1,478 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationStatusType = Literal["DISABLED", "ENABLED"] +ComparisonOperatorType = Literal["BEGINS_WITH", "BETWEEN", "CONTAINS", "EQ", "GE", "GT", "IN", "LE", "LT", "NE", "NOT_CONTAINS"] +DataLakeResourceTypeType = Literal["CATALOG", + "DATABASE", + "DATA_LOCATION", + "LF_TAG", + "LF_TAG_POLICY", + "LF_TAG_POLICY_DATABASE", + "LF_TAG_POLICY_TABLE", + "TABLE",] +EnableStatusType = Literal["DISABLED", "ENABLED"] +FieldNameStringType = Literal["LAST_MODIFIED", "RESOURCE_ARN", "ROLE_ARN"] +GetWorkUnitsPaginatorName = Literal["get_work_units"] +ListDataCellsFilterPaginatorName = Literal["list_data_cells_filter"] +ListLFTagsPaginatorName = Literal["list_lf_tags"] +OptimizerTypeType = Literal["ALL", "COMPACTION", "GARBAGE_COLLECTION"] +PermissionType = Literal["ALL", + "ALTER", + "ASSOCIATE", + "CREATE_DATABASE", + "CREATE_LF_TAG", + "CREATE_TABLE", + "DATA_LOCATION_ACCESS", + "DELETE", + "DESCRIBE", + "DROP", + "GRANT_WITH_LF_TAG_EXPRESSION", + "INSERT", + "SELECT",] +PermissionTypeType = Literal["CELL_FILTER_PERMISSION", "COLUMN_PERMISSION", "NESTED_CELL_PERMISSION", "NESTED_PERMISSION"] +QueryStateStringType = Literal["ERROR", "EXPIRED", "FINISHED", "PENDING", "WORKUNITS_AVAILABLE"] +ResourceShareTypeType = Literal["ALL", "FOREIGN"] +ResourceTypeType = Literal["DATABASE", "TABLE"] +SearchDatabasesByLFTagsPaginatorName = Literal["search_databases_by_lf_tags"] +SearchTablesByLFTagsPaginatorName = Literal["search_tables_by_lf_tags"] +TransactionStatusFilterType = Literal["ABORTED", "ACTIVE", "ALL", "COMMITTED", "COMPLETED"] +TransactionStatusType = Literal["ABORTED", "ACTIVE", "COMMITTED", "COMMIT_IN_PROGRESS"] +TransactionTypeType = Literal["READ_AND_WRITE", "READ_ONLY"] +LakeFormationServiceName = Literal["lakeformation"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_work_units", + "list_data_cells_filter", + "list_lf_tags", + "search_databases_by_lf_tags", + "search_tables_by_lf_tags",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ExternalFilteringConfigurationUnionTypeDef = Union[ 'ExternalFilteringConfigurationTypeDef', 'ExternalFilteringConfigurationOutputTypeDef' ] +LFTagPairUnionTypeDef = Union['LFTagPairTypeDef', 'LFTagPairExtraOutputTypeDef'] +LFTagUnionTypeDef = Union['LFTagTypeDef', 'LFTagOutputTypeDef'] +TableResourceUnionTypeDef = Union['TableResourceTypeDef', 'TableResourceExtraOutputTypeDef'] +DataCellsFilterUnionTypeDef = Union['DataCellsFilterTypeDef', 'DataCellsFilterExtraOutputTypeDef'] +DataLakeSettingsUnionTypeDef = Union['DataLakeSettingsTypeDef', 'DataLakeSettingsOutputTypeDef'] +ResourceUnionTypeDef = Union['ResourceTypeDef', 'ResourceOutputTypeDef'] +BatchPermissionsRequestEntryUnionTypeDef = Union[ 'BatchPermissionsRequestEntryTypeDef', 'BatchPermissionsRequestEntryOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/lambda_classes.py b/aws_resource_validator/pydantic_models/lambda_classes.py new file mode 100644 index 00000000..599cd004 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lambda_classes.py @@ -0,0 +1,1278 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from botocore.response import StreamingBody +from aws_resource_validator.pydantic_models.lambda_constants import * + +class AccountLimitTypeDef(BaseModel): + TotalCodeSize: Optional[int] = None + CodeSizeUnzipped: Optional[int] = None + CodeSizeZipped: Optional[int] = None + ConcurrentExecutions: Optional[int] = None + UnreservedConcurrentExecutions: Optional[int] = None + +class AccountUsageTypeDef(BaseModel): + TotalCodeSize: Optional[int] = None + FunctionCount: Optional[int] = None + +class AddLayerVersionPermissionRequestRequestTypeDef(BaseModel): + LayerName: str + VersionNumber: int + StatementId: str + Action: str + Principal: str + OrganizationId: Optional[str] = None + RevisionId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AddPermissionRequestRequestTypeDef(BaseModel): + FunctionName: str + StatementId: str + Action: str + Principal: str + SourceArn: Optional[str] = None + SourceAccount: Optional[str] = None + EventSourceToken: Optional[str] = None + Qualifier: Optional[str] = None + RevisionId: Optional[str] = None + PrincipalOrgID: Optional[str] = None + FunctionUrlAuthType: Optional[FunctionUrlAuthTypeType] = None + +class AliasRoutingConfigurationPaginatorTypeDef(BaseModel): + AdditionalVersionWeights: Optional[Dict[str, float]] = None + +class AliasRoutingConfigurationTypeDef(BaseModel): + AdditionalVersionWeights: Optional[Mapping[str, float]] = None + +class AllowedPublishersPaginatorTypeDef(BaseModel): + SigningProfileVersionArns: List[str] + +class AllowedPublishersTypeDef(BaseModel): + SigningProfileVersionArns: Sequence[str] + +class AmazonManagedKafkaEventSourceConfigTypeDef(BaseModel): + ConsumerGroupId: Optional[str] = None + +class CodeSigningPoliciesTypeDef(BaseModel): + UntrustedArtifactOnDeployment: Optional[CodeSigningPolicyType] = None + +class ConcurrencyTypeDef(BaseModel): + ReservedConcurrentExecutions: Optional[int] = None + +class CorsPaginatorTypeDef(BaseModel): + AllowCredentials: Optional[bool] = None + AllowHeaders: Optional[List[str]] = None + AllowMethods: Optional[List[str]] = None + AllowOrigins: Optional[List[str]] = None + ExposeHeaders: Optional[List[str]] = None + MaxAge: Optional[int] = None + +class CorsTypeDef(BaseModel): + AllowCredentials: Optional[bool] = None + AllowHeaders: Optional[Sequence[str]] = None + AllowMethods: Optional[Sequence[str]] = None + AllowOrigins: Optional[Sequence[str]] = None + ExposeHeaders: Optional[Sequence[str]] = None + MaxAge: Optional[int] = None + +class DocumentDBEventSourceConfigTypeDef(BaseModel): + DatabaseName: Optional[str] = None + CollectionName: Optional[str] = None + FullDocument: Optional[FullDocumentType] = None + +class ScalingConfigTypeDef(BaseModel): + MaximumConcurrency: Optional[int] = None + +class SelfManagedEventSourceTypeDef(BaseModel): + Endpoints: Optional[Mapping[Literal["KAFKA_BOOTSTRAP_SERVERS"], Sequence[str]]] = None + +class SelfManagedKafkaEventSourceConfigTypeDef(BaseModel): + ConsumerGroupId: Optional[str] = None + +class SourceAccessConfigurationTypeDef(BaseModel): + Type: Optional[SourceAccessTypeType] = None + URI: Optional[str] = None + +class DeadLetterConfigTypeDef(BaseModel): + TargetArn: Optional[str] = None + +class EnvironmentTypeDef(BaseModel): + Variables: Optional[Mapping[str, str]] = None + +class EphemeralStorageTypeDef(BaseModel): + Size: int + +class FileSystemConfigTypeDef(BaseModel): + Arn: str + LocalMountPath: str + +class ImageConfigTypeDef(BaseModel): + EntryPoint: Optional[Sequence[str]] = None + Command: Optional[Sequence[str]] = None + WorkingDirectory: Optional[str] = None + +class LoggingConfigTypeDef(BaseModel): + LogFormat: Optional[LogFormatType] = None + ApplicationLogLevel: Optional[ApplicationLogLevelType] = None + SystemLogLevel: Optional[SystemLogLevelType] = None + LogGroup: Optional[str] = None + +class SnapStartTypeDef(BaseModel): + ApplyOn: Optional[SnapStartApplyOnType] = None + +class TracingConfigTypeDef(BaseModel): + Mode: Optional[TracingModeType] = None + +class VpcConfigTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Ipv6AllowedForDualStack: Optional[bool] = None + +class DeleteAliasRequestRequestTypeDef(BaseModel): + FunctionName: str + Name: str + +class DeleteCodeSigningConfigRequestRequestTypeDef(BaseModel): + CodeSigningConfigArn: str + +class DeleteEventSourceMappingRequestRequestTypeDef(BaseModel): + UUID: str + +class DeleteFunctionCodeSigningConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + +class DeleteFunctionConcurrencyRequestRequestTypeDef(BaseModel): + FunctionName: str + +class DeleteFunctionEventInvokeConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class DeleteFunctionRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class DeleteFunctionUrlConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class DeleteLayerVersionRequestRequestTypeDef(BaseModel): + LayerName: str + VersionNumber: int + +class DeleteProvisionedConcurrencyConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: str + +class OnFailureTypeDef(BaseModel): + Destination: Optional[str] = None + +class OnSuccessTypeDef(BaseModel): + Destination: Optional[str] = None + +class EnvironmentErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class SelfManagedEventSourcePaginatorTypeDef(BaseModel): + Endpoints: Optional[Dict[Literal["KAFKA_BOOTSTRAP_SERVERS"], List[str]]] = None + +class FilterTypeDef(BaseModel): + Pattern: Optional[str] = None + +class FunctionCodeLocationTypeDef(BaseModel): + RepositoryType: Optional[str] = None + Location: Optional[str] = None + ImageUri: Optional[str] = None + ResolvedImageUri: Optional[str] = None + +class LayerTypeDef(BaseModel): + Arn: Optional[str] = None + CodeSize: Optional[int] = None + SigningProfileVersionArn: Optional[str] = None + SigningJobArn: Optional[str] = None + +class SnapStartResponseTypeDef(BaseModel): + ApplyOn: Optional[SnapStartApplyOnType] = None + OptimizationStatus: Optional[SnapStartOptimizationStatusType] = None + +class TracingConfigResponseTypeDef(BaseModel): + Mode: Optional[TracingModeType] = None + +class VpcConfigResponseTypeDef(BaseModel): + SubnetIds: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + VpcId: Optional[str] = None + Ipv6AllowedForDualStack: Optional[bool] = None + +class GetAliasRequestRequestTypeDef(BaseModel): + FunctionName: str + Name: str + +class GetCodeSigningConfigRequestRequestTypeDef(BaseModel): + CodeSigningConfigArn: str + +class GetEventSourceMappingRequestRequestTypeDef(BaseModel): + UUID: str + +class GetFunctionCodeSigningConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + +class GetFunctionConcurrencyRequestRequestTypeDef(BaseModel): + FunctionName: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetFunctionConfigurationRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class GetFunctionEventInvokeConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class GetFunctionRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class GetFunctionUrlConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class GetLayerVersionByArnRequestRequestTypeDef(BaseModel): + Arn: str + +class GetLayerVersionPolicyRequestRequestTypeDef(BaseModel): + LayerName: str + VersionNumber: int + +class GetLayerVersionRequestRequestTypeDef(BaseModel): + LayerName: str + VersionNumber: int + +class LayerVersionContentOutputTypeDef(BaseModel): + Location: Optional[str] = None + CodeSha256: Optional[str] = None + CodeSize: Optional[int] = None + SigningProfileVersionArn: Optional[str] = None + SigningJobArn: Optional[str] = None + +class GetPolicyRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class GetProvisionedConcurrencyConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: str + +class GetRuntimeManagementConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + +class ImageConfigErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class ImageConfigPaginatorTypeDef(BaseModel): + EntryPoint: Optional[List[str]] = None + Command: Optional[List[str]] = None + WorkingDirectory: Optional[str] = None + +class InvokeResponseStreamUpdateTypeDef(BaseModel): + Payload: Optional[bytes] = None + +class InvokeWithResponseStreamCompleteEventTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorDetails: Optional[str] = None + LogResult: Optional[str] = None + +class LayerVersionsListItemTypeDef(BaseModel): + LayerVersionArn: Optional[str] = None + Version: Optional[int] = None + Description: Optional[str] = None + CreatedDate: Optional[str] = None + CompatibleRuntimes: Optional[List[RuntimeType]] = None + LicenseInfo: Optional[str] = None + CompatibleArchitectures: Optional[List[ArchitectureType]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAliasesRequestRequestTypeDef(BaseModel): + FunctionName: str + FunctionVersion: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListCodeSigningConfigsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListEventSourceMappingsRequestRequestTypeDef(BaseModel): + EventSourceArn: Optional[str] = None + FunctionName: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListFunctionEventInvokeConfigsRequestRequestTypeDef(BaseModel): + FunctionName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListFunctionUrlConfigsRequestRequestTypeDef(BaseModel): + FunctionName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListFunctionsByCodeSigningConfigRequestRequestTypeDef(BaseModel): + CodeSigningConfigArn: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListFunctionsRequestRequestTypeDef(BaseModel): + MasterRegion: Optional[str] = None + FunctionVersion: Optional[Literal["ALL"]] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListLayerVersionsRequestRequestTypeDef(BaseModel): + LayerName: str + CompatibleRuntime: Optional[RuntimeType] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + CompatibleArchitecture: Optional[ArchitectureType] = None + +class ListLayersRequestRequestTypeDef(BaseModel): + CompatibleRuntime: Optional[RuntimeType] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + CompatibleArchitecture: Optional[ArchitectureType] = None + +class ListProvisionedConcurrencyConfigsRequestRequestTypeDef(BaseModel): + FunctionName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ProvisionedConcurrencyConfigListItemTypeDef(BaseModel): + FunctionArn: Optional[str] = None + RequestedProvisionedConcurrentExecutions: Optional[int] = None + AvailableProvisionedConcurrentExecutions: Optional[int] = None + AllocatedProvisionedConcurrentExecutions: Optional[int] = None + Status: Optional[ProvisionedConcurrencyStatusEnumType] = None + StatusReason: Optional[str] = None + LastModified: Optional[str] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + Resource: str + +class ListVersionsByFunctionRequestRequestTypeDef(BaseModel): + FunctionName: str + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class PublishVersionRequestRequestTypeDef(BaseModel): + FunctionName: str + CodeSha256: Optional[str] = None + Description: Optional[str] = None + RevisionId: Optional[str] = None + +class PutFunctionCodeSigningConfigRequestRequestTypeDef(BaseModel): + CodeSigningConfigArn: str + FunctionName: str + +class PutFunctionConcurrencyRequestRequestTypeDef(BaseModel): + FunctionName: str + ReservedConcurrentExecutions: int + +class PutProvisionedConcurrencyConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: str + ProvisionedConcurrentExecutions: int + +class PutRuntimeManagementConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + UpdateRuntimeOn: UpdateRuntimeOnType + Qualifier: Optional[str] = None + RuntimeVersionArn: Optional[str] = None + +class RemoveLayerVersionPermissionRequestRequestTypeDef(BaseModel): + LayerName: str + VersionNumber: int + StatementId: str + RevisionId: Optional[str] = None + +class RemovePermissionRequestRequestTypeDef(BaseModel): + FunctionName: str + StatementId: str + Qualifier: Optional[str] = None + RevisionId: Optional[str] = None + +class RuntimeVersionErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + Resource: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + Resource: str + TagKeys: Sequence[str] + +class AddLayerVersionPermissionResponseTypeDef(BaseModel): + Statement: str + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddPermissionResponseTypeDef(BaseModel): + Statement: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConcurrencyResponseTypeDef(BaseModel): + ReservedConcurrentExecutions: int + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountSettingsResponseTypeDef(BaseModel): + AccountLimit: AccountLimitTypeDef + AccountUsage: AccountUsageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFunctionCodeSigningConfigResponseTypeDef(BaseModel): + CodeSigningConfigArn: str + FunctionName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFunctionConcurrencyResponseTypeDef(BaseModel): + ReservedConcurrentExecutions: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetLayerVersionPolicyResponseTypeDef(BaseModel): + Policy: str + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyResponseTypeDef(BaseModel): + Policy: str + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProvisionedConcurrencyConfigResponseTypeDef(BaseModel): + RequestedProvisionedConcurrentExecutions: int + AvailableProvisionedConcurrentExecutions: int + AllocatedProvisionedConcurrentExecutions: int + Status: ProvisionedConcurrencyStatusEnumType + StatusReason: str + LastModified: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuntimeManagementConfigResponseTypeDef(BaseModel): + UpdateRuntimeOn: UpdateRuntimeOnType + RuntimeVersionArn: str + FunctionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class InvocationResponseTypeDef(BaseModel): + StatusCode: int + FunctionError: str + LogResult: str + Payload: StreamingBody + ExecutedVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class InvokeAsyncResponseTypeDef(BaseModel): + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionsByCodeSigningConfigResponseTypeDef(BaseModel): + NextMarker: str + FunctionArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutFunctionCodeSigningConfigResponseTypeDef(BaseModel): + CodeSigningConfigArn: str + FunctionName: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutProvisionedConcurrencyConfigResponseTypeDef(BaseModel): + RequestedProvisionedConcurrentExecutions: int + AvailableProvisionedConcurrentExecutions: int + AllocatedProvisionedConcurrentExecutions: int + Status: ProvisionedConcurrencyStatusEnumType + StatusReason: str + LastModified: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutRuntimeManagementConfigResponseTypeDef(BaseModel): + UpdateRuntimeOn: UpdateRuntimeOnType + FunctionArn: str + RuntimeVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AliasConfigurationPaginatorTypeDef(BaseModel): + AliasArn: Optional[str] = None + Name: Optional[str] = None + FunctionVersion: Optional[str] = None + Description: Optional[str] = None + RoutingConfig: Optional[AliasRoutingConfigurationPaginatorTypeDef] = None + RevisionId: Optional[str] = None + +class AliasConfigurationResponseTypeDef(BaseModel): + AliasArn: str + Name: str + FunctionVersion: str + Description: str + RoutingConfig: AliasRoutingConfigurationTypeDef + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AliasConfigurationTypeDef(BaseModel): + AliasArn: Optional[str] = None + Name: Optional[str] = None + FunctionVersion: Optional[str] = None + Description: Optional[str] = None + RoutingConfig: Optional[AliasRoutingConfigurationTypeDef] = None + RevisionId: Optional[str] = None + +class CreateAliasRequestRequestTypeDef(BaseModel): + FunctionName: str + Name: str + FunctionVersion: str + Description: Optional[str] = None + RoutingConfig: Optional[AliasRoutingConfigurationTypeDef] = None + +class UpdateAliasRequestRequestTypeDef(BaseModel): + FunctionName: str + Name: str + FunctionVersion: Optional[str] = None + Description: Optional[str] = None + RoutingConfig: Optional[AliasRoutingConfigurationTypeDef] = None + RevisionId: Optional[str] = None + +class FunctionCodeTypeDef(BaseModel): + ZipFile: Optional[BlobTypeDef] = None + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + S3ObjectVersion: Optional[str] = None + ImageUri: Optional[str] = None + +class InvocationRequestRequestTypeDef(BaseModel): + FunctionName: str + InvocationType: Optional[InvocationTypeType] = None + LogType: Optional[LogTypeType] = None + ClientContext: Optional[str] = None + Payload: Optional[BlobTypeDef] = None + Qualifier: Optional[str] = None + +class InvokeAsyncRequestRequestTypeDef(BaseModel): + FunctionName: str + InvokeArgs: BlobTypeDef + +class InvokeWithResponseStreamRequestRequestTypeDef(BaseModel): + FunctionName: str + InvocationType: Optional[ResponseStreamingInvocationTypeType] = None + LogType: Optional[LogTypeType] = None + ClientContext: Optional[str] = None + Qualifier: Optional[str] = None + Payload: Optional[BlobTypeDef] = None + +class LayerVersionContentInputTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + S3ObjectVersion: Optional[str] = None + ZipFile: Optional[BlobTypeDef] = None + +class UpdateFunctionCodeRequestRequestTypeDef(BaseModel): + FunctionName: str + ZipFile: Optional[BlobTypeDef] = None + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + S3ObjectVersion: Optional[str] = None + ImageUri: Optional[str] = None + Publish: Optional[bool] = None + DryRun: Optional[bool] = None + RevisionId: Optional[str] = None + Architectures: Optional[Sequence[ArchitectureType]] = None + +class CodeSigningConfigPaginatorTypeDef(BaseModel): + CodeSigningConfigId: str + CodeSigningConfigArn: str + AllowedPublishers: AllowedPublishersPaginatorTypeDef + CodeSigningPolicies: CodeSigningPoliciesTypeDef + LastModified: str + Description: Optional[str] = None + +class CodeSigningConfigTypeDef(BaseModel): + CodeSigningConfigId: str + CodeSigningConfigArn: str + AllowedPublishers: AllowedPublishersTypeDef + CodeSigningPolicies: CodeSigningPoliciesTypeDef + LastModified: str + Description: Optional[str] = None + +class CreateCodeSigningConfigRequestRequestTypeDef(BaseModel): + AllowedPublishers: AllowedPublishersTypeDef + Description: Optional[str] = None + CodeSigningPolicies: Optional[CodeSigningPoliciesTypeDef] = None + +class UpdateCodeSigningConfigRequestRequestTypeDef(BaseModel): + CodeSigningConfigArn: str + Description: Optional[str] = None + AllowedPublishers: Optional[AllowedPublishersTypeDef] = None + CodeSigningPolicies: Optional[CodeSigningPoliciesTypeDef] = None + +class FunctionUrlConfigPaginatorTypeDef(BaseModel): + FunctionUrl: str + FunctionArn: str + CreationTime: str + LastModifiedTime: str + AuthType: FunctionUrlAuthTypeType + Cors: Optional[CorsPaginatorTypeDef] = None + InvokeMode: Optional[InvokeModeType] = None + +class CreateFunctionUrlConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + AuthType: FunctionUrlAuthTypeType + Qualifier: Optional[str] = None + Cors: Optional[CorsTypeDef] = None + InvokeMode: Optional[InvokeModeType] = None + +class CreateFunctionUrlConfigResponseTypeDef(BaseModel): + FunctionUrl: str + FunctionArn: str + AuthType: FunctionUrlAuthTypeType + Cors: CorsTypeDef + CreationTime: str + InvokeMode: InvokeModeType + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionUrlConfigTypeDef(BaseModel): + FunctionUrl: str + FunctionArn: str + CreationTime: str + LastModifiedTime: str + AuthType: FunctionUrlAuthTypeType + Cors: Optional[CorsTypeDef] = None + InvokeMode: Optional[InvokeModeType] = None + +class GetFunctionUrlConfigResponseTypeDef(BaseModel): + FunctionUrl: str + FunctionArn: str + AuthType: FunctionUrlAuthTypeType + Cors: CorsTypeDef + CreationTime: str + LastModifiedTime: str + InvokeMode: InvokeModeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFunctionUrlConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + AuthType: Optional[FunctionUrlAuthTypeType] = None + Cors: Optional[CorsTypeDef] = None + InvokeMode: Optional[InvokeModeType] = None + +class UpdateFunctionUrlConfigResponseTypeDef(BaseModel): + FunctionUrl: str + FunctionArn: str + AuthType: FunctionUrlAuthTypeType + Cors: CorsTypeDef + CreationTime: str + LastModifiedTime: str + InvokeMode: InvokeModeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFunctionConfigurationRequestRequestTypeDef(BaseModel): + FunctionName: str + Role: Optional[str] = None + Handler: Optional[str] = None + Description: Optional[str] = None + Timeout: Optional[int] = None + MemorySize: Optional[int] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Environment: Optional[EnvironmentTypeDef] = None + Runtime: Optional[RuntimeType] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + KMSKeyArn: Optional[str] = None + TracingConfig: Optional[TracingConfigTypeDef] = None + RevisionId: Optional[str] = None + Layers: Optional[Sequence[str]] = None + FileSystemConfigs: Optional[Sequence[FileSystemConfigTypeDef]] = None + ImageConfig: Optional[ImageConfigTypeDef] = None + EphemeralStorage: Optional[EphemeralStorageTypeDef] = None + SnapStart: Optional[SnapStartTypeDef] = None + LoggingConfig: Optional[LoggingConfigTypeDef] = None + +class DestinationConfigTypeDef(BaseModel): + OnSuccess: Optional[OnSuccessTypeDef] = None + OnFailure: Optional[OnFailureTypeDef] = None + +class EnvironmentResponseTypeDef(BaseModel): + Variables: Optional[Dict[str, str]] = None + Error: Optional[EnvironmentErrorTypeDef] = None + +class FilterCriteriaPaginatorTypeDef(BaseModel): + Filters: Optional[List[FilterTypeDef]] = None + +class FilterCriteriaTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + +class GetFunctionConfigurationRequestFunctionActiveWaitTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetFunctionConfigurationRequestFunctionUpdatedWaitTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetFunctionConfigurationRequestPublishedVersionActiveWaitTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetFunctionRequestFunctionActiveV2WaitTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetFunctionRequestFunctionExistsWaitTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetFunctionRequestFunctionUpdatedV2WaitTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetLayerVersionResponseTypeDef(BaseModel): + Content: LayerVersionContentOutputTypeDef + LayerArn: str + LayerVersionArn: str + Description: str + CreatedDate: str + Version: int + CompatibleRuntimes: List[RuntimeType] + LicenseInfo: str + CompatibleArchitectures: List[ArchitectureType] + ResponseMetadata: ResponseMetadataTypeDef + +class PublishLayerVersionResponseTypeDef(BaseModel): + Content: LayerVersionContentOutputTypeDef + LayerArn: str + LayerVersionArn: str + Description: str + CreatedDate: str + Version: int + CompatibleRuntimes: List[RuntimeType] + LicenseInfo: str + CompatibleArchitectures: List[ArchitectureType] + ResponseMetadata: ResponseMetadataTypeDef + +class ImageConfigResponseTypeDef(BaseModel): + ImageConfig: Optional[ImageConfigTypeDef] = None + Error: Optional[ImageConfigErrorTypeDef] = None + +class ImageConfigResponsePaginatorTypeDef(BaseModel): + ImageConfig: Optional[ImageConfigPaginatorTypeDef] = None + Error: Optional[ImageConfigErrorTypeDef] = None + +class InvokeWithResponseStreamResponseEventTypeDef(BaseModel): + PayloadChunk: Optional[InvokeResponseStreamUpdateTypeDef] = None + InvokeComplete: Optional[InvokeWithResponseStreamCompleteEventTypeDef] = None + +class LayersListItemTypeDef(BaseModel): + LayerName: Optional[str] = None + LayerArn: Optional[str] = None + LatestMatchingVersion: Optional[LayerVersionsListItemTypeDef] = None + +class ListLayerVersionsResponseTypeDef(BaseModel): + NextMarker: str + LayerVersions: List[LayerVersionsListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesRequestListAliasesPaginateTypeDef(BaseModel): + FunctionName: str + FunctionVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCodeSigningConfigsRequestListCodeSigningConfigsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventSourceMappingsRequestListEventSourceMappingsPaginateTypeDef(BaseModel): + EventSourceArn: Optional[str] = None + FunctionName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionEventInvokeConfigsRequestListFunctionEventInvokeConfigsPaginateTypeDef(BaseModel): + FunctionName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionUrlConfigsRequestListFunctionUrlConfigsPaginateTypeDef(BaseModel): + FunctionName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionsByCodeSigningConfigRequestListFunctionsByCodeSigningConfigPaginateTypeDef(BaseModel): + CodeSigningConfigArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFunctionsRequestListFunctionsPaginateTypeDef(BaseModel): + MasterRegion: Optional[str] = None + FunctionVersion: Optional[Literal["ALL"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLayerVersionsRequestListLayerVersionsPaginateTypeDef(BaseModel): + LayerName: str + CompatibleRuntime: Optional[RuntimeType] = None + CompatibleArchitecture: Optional[ArchitectureType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLayersRequestListLayersPaginateTypeDef(BaseModel): + CompatibleRuntime: Optional[RuntimeType] = None + CompatibleArchitecture: Optional[ArchitectureType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVersionsByFunctionRequestListVersionsByFunctionPaginateTypeDef(BaseModel): + FunctionName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProvisionedConcurrencyConfigsResponseTypeDef(BaseModel): + ProvisionedConcurrencyConfigs: List[ProvisionedConcurrencyConfigListItemTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RuntimeVersionConfigTypeDef(BaseModel): + RuntimeVersionArn: Optional[str] = None + Error: Optional[RuntimeVersionErrorTypeDef] = None + +class ListAliasesResponsePaginatorTypeDef(BaseModel): + NextMarker: str + Aliases: List[AliasConfigurationPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesResponseTypeDef(BaseModel): + NextMarker: str + Aliases: List[AliasConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFunctionRequestRequestTypeDef(BaseModel): + FunctionName: str + Role: str + Code: FunctionCodeTypeDef + Runtime: Optional[RuntimeType] = None + Handler: Optional[str] = None + Description: Optional[str] = None + Timeout: Optional[int] = None + MemorySize: Optional[int] = None + Publish: Optional[bool] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + PackageType: Optional[PackageTypeType] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + Environment: Optional[EnvironmentTypeDef] = None + KMSKeyArn: Optional[str] = None + TracingConfig: Optional[TracingConfigTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + Layers: Optional[Sequence[str]] = None + FileSystemConfigs: Optional[Sequence[FileSystemConfigTypeDef]] = None + ImageConfig: Optional[ImageConfigTypeDef] = None + CodeSigningConfigArn: Optional[str] = None + Architectures: Optional[Sequence[ArchitectureType]] = None + EphemeralStorage: Optional[EphemeralStorageTypeDef] = None + SnapStart: Optional[SnapStartTypeDef] = None + LoggingConfig: Optional[LoggingConfigTypeDef] = None + +class PublishLayerVersionRequestRequestTypeDef(BaseModel): + LayerName: str + Content: LayerVersionContentInputTypeDef + Description: Optional[str] = None + CompatibleRuntimes: Optional[Sequence[RuntimeType]] = None + LicenseInfo: Optional[str] = None + CompatibleArchitectures: Optional[Sequence[ArchitectureType]] = None + +class ListCodeSigningConfigsResponsePaginatorTypeDef(BaseModel): + NextMarker: str + CodeSigningConfigs: List[CodeSigningConfigPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCodeSigningConfigResponseTypeDef(BaseModel): + CodeSigningConfig: CodeSigningConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCodeSigningConfigResponseTypeDef(BaseModel): + CodeSigningConfig: CodeSigningConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCodeSigningConfigsResponseTypeDef(BaseModel): + NextMarker: str + CodeSigningConfigs: List[CodeSigningConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCodeSigningConfigResponseTypeDef(BaseModel): + CodeSigningConfig: CodeSigningConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionUrlConfigsResponsePaginatorTypeDef(BaseModel): + FunctionUrlConfigs: List[FunctionUrlConfigPaginatorTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionUrlConfigsResponseTypeDef(BaseModel): + FunctionUrlConfigs: List[FunctionUrlConfigTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionEventInvokeConfigResponseTypeDef(BaseModel): + LastModified: datetime + FunctionArn: str + MaximumRetryAttempts: int + MaximumEventAgeInSeconds: int + DestinationConfig: DestinationConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionEventInvokeConfigTypeDef(BaseModel): + LastModified: Optional[datetime] = None + FunctionArn: Optional[str] = None + MaximumRetryAttempts: Optional[int] = None + MaximumEventAgeInSeconds: Optional[int] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + +class PutFunctionEventInvokeConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + MaximumRetryAttempts: Optional[int] = None + MaximumEventAgeInSeconds: Optional[int] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + +class UpdateFunctionEventInvokeConfigRequestRequestTypeDef(BaseModel): + FunctionName: str + Qualifier: Optional[str] = None + MaximumRetryAttempts: Optional[int] = None + MaximumEventAgeInSeconds: Optional[int] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + +class EventSourceMappingConfigurationPaginatorTypeDef(BaseModel): + UUID: Optional[str] = None + StartingPosition: Optional[EventSourcePositionType] = None + StartingPositionTimestamp: Optional[datetime] = None + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + ParallelizationFactor: Optional[int] = None + EventSourceArn: Optional[str] = None + FilterCriteria: Optional[FilterCriteriaPaginatorTypeDef] = None + FunctionArn: Optional[str] = None + LastModified: Optional[datetime] = None + LastProcessingResult: Optional[str] = None + State: Optional[str] = None + StateTransitionReason: Optional[str] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + Topics: Optional[List[str]] = None + Queues: Optional[List[str]] = None + SourceAccessConfigurations: Optional[List[SourceAccessConfigurationTypeDef]] = None + SelfManagedEventSource: Optional[SelfManagedEventSourcePaginatorTypeDef] = None + MaximumRecordAgeInSeconds: Optional[int] = None + BisectBatchOnFunctionError: Optional[bool] = None + MaximumRetryAttempts: Optional[int] = None + TumblingWindowInSeconds: Optional[int] = None + FunctionResponseTypes: Optional[List[Literal["ReportBatchItemFailures"]]] = None + AmazonManagedKafkaEventSourceConfig: Optional[ AmazonManagedKafkaEventSourceConfigTypeDef ] = None + SelfManagedKafkaEventSourceConfig: Optional[SelfManagedKafkaEventSourceConfigTypeDef] = None + ScalingConfig: Optional[ScalingConfigTypeDef] = None + DocumentDBEventSourceConfig: Optional[DocumentDBEventSourceConfigTypeDef] = None + +class CreateEventSourceMappingRequestRequestTypeDef(BaseModel): + FunctionName: str + EventSourceArn: Optional[str] = None + Enabled: Optional[bool] = None + BatchSize: Optional[int] = None + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + ParallelizationFactor: Optional[int] = None + StartingPosition: Optional[EventSourcePositionType] = None + StartingPositionTimestamp: Optional[TimestampTypeDef] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + MaximumRecordAgeInSeconds: Optional[int] = None + BisectBatchOnFunctionError: Optional[bool] = None + MaximumRetryAttempts: Optional[int] = None + TumblingWindowInSeconds: Optional[int] = None + Topics: Optional[Sequence[str]] = None + Queues: Optional[Sequence[str]] = None + SourceAccessConfigurations: Optional[Sequence[SourceAccessConfigurationTypeDef]] = None + SelfManagedEventSource: Optional[SelfManagedEventSourceTypeDef] = None + FunctionResponseTypes: Optional[Sequence[Literal["ReportBatchItemFailures"]]] = None + AmazonManagedKafkaEventSourceConfig: Optional[ AmazonManagedKafkaEventSourceConfigTypeDef ] = None + SelfManagedKafkaEventSourceConfig: Optional[SelfManagedKafkaEventSourceConfigTypeDef] = None + ScalingConfig: Optional[ScalingConfigTypeDef] = None + DocumentDBEventSourceConfig: Optional[DocumentDBEventSourceConfigTypeDef] = None + +class EventSourceMappingConfigurationResponseTypeDef(BaseModel): + UUID: str + StartingPosition: EventSourcePositionType + StartingPositionTimestamp: datetime + BatchSize: int + MaximumBatchingWindowInSeconds: int + ParallelizationFactor: int + EventSourceArn: str + FilterCriteria: FilterCriteriaTypeDef + FunctionArn: str + LastModified: datetime + LastProcessingResult: str + State: str + StateTransitionReason: str + DestinationConfig: DestinationConfigTypeDef + Topics: List[str] + Queues: List[str] + SourceAccessConfigurations: List[SourceAccessConfigurationTypeDef] + SelfManagedEventSource: SelfManagedEventSourceTypeDef + MaximumRecordAgeInSeconds: int + BisectBatchOnFunctionError: bool + MaximumRetryAttempts: int + TumblingWindowInSeconds: int + FunctionResponseTypes: List[Literal["ReportBatchItemFailures"]] + AmazonManagedKafkaEventSourceConfig: AmazonManagedKafkaEventSourceConfigTypeDef + SelfManagedKafkaEventSourceConfig: SelfManagedKafkaEventSourceConfigTypeDef + ScalingConfig: ScalingConfigTypeDef + DocumentDBEventSourceConfig: DocumentDBEventSourceConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EventSourceMappingConfigurationTypeDef(BaseModel): + UUID: Optional[str] = None + StartingPosition: Optional[EventSourcePositionType] = None + StartingPositionTimestamp: Optional[datetime] = None + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + ParallelizationFactor: Optional[int] = None + EventSourceArn: Optional[str] = None + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + FunctionArn: Optional[str] = None + LastModified: Optional[datetime] = None + LastProcessingResult: Optional[str] = None + State: Optional[str] = None + StateTransitionReason: Optional[str] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + Topics: Optional[List[str]] = None + Queues: Optional[List[str]] = None + SourceAccessConfigurations: Optional[List[SourceAccessConfigurationTypeDef]] = None + SelfManagedEventSource: Optional[SelfManagedEventSourceTypeDef] = None + MaximumRecordAgeInSeconds: Optional[int] = None + BisectBatchOnFunctionError: Optional[bool] = None + MaximumRetryAttempts: Optional[int] = None + TumblingWindowInSeconds: Optional[int] = None + FunctionResponseTypes: Optional[List[Literal["ReportBatchItemFailures"]]] = None + AmazonManagedKafkaEventSourceConfig: Optional[ AmazonManagedKafkaEventSourceConfigTypeDef ] = None + SelfManagedKafkaEventSourceConfig: Optional[SelfManagedKafkaEventSourceConfigTypeDef] = None + ScalingConfig: Optional[ScalingConfigTypeDef] = None + DocumentDBEventSourceConfig: Optional[DocumentDBEventSourceConfigTypeDef] = None + +class UpdateEventSourceMappingRequestRequestTypeDef(BaseModel): + UUID: str + FunctionName: Optional[str] = None + Enabled: Optional[bool] = None + BatchSize: Optional[int] = None + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + DestinationConfig: Optional[DestinationConfigTypeDef] = None + MaximumRecordAgeInSeconds: Optional[int] = None + BisectBatchOnFunctionError: Optional[bool] = None + MaximumRetryAttempts: Optional[int] = None + ParallelizationFactor: Optional[int] = None + SourceAccessConfigurations: Optional[Sequence[SourceAccessConfigurationTypeDef]] = None + TumblingWindowInSeconds: Optional[int] = None + FunctionResponseTypes: Optional[Sequence[Literal["ReportBatchItemFailures"]]] = None + ScalingConfig: Optional[ScalingConfigTypeDef] = None + DocumentDBEventSourceConfig: Optional[DocumentDBEventSourceConfigTypeDef] = None + +class InvokeWithResponseStreamResponseTypeDef(BaseModel): + StatusCode: int + ExecutedVersion: str + EventStream: "EventStream[InvokeWithResponseStreamResponseEventTypeDef]" + ResponseStreamContentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLayersResponseTypeDef(BaseModel): + NextMarker: str + Layers: List[LayersListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionConfigurationPaginatorTypeDef(BaseModel): + FunctionName: Optional[str] = None + FunctionArn: Optional[str] = None + Runtime: Optional[RuntimeType] = None + Role: Optional[str] = None + Handler: Optional[str] = None + CodeSize: Optional[int] = None + Description: Optional[str] = None + Timeout: Optional[int] = None + MemorySize: Optional[int] = None + LastModified: Optional[str] = None + CodeSha256: Optional[str] = None + Version: Optional[str] = None + VpcConfig: Optional[VpcConfigResponseTypeDef] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + Environment: Optional[EnvironmentResponseTypeDef] = None + KMSKeyArn: Optional[str] = None + TracingConfig: Optional[TracingConfigResponseTypeDef] = None + MasterArn: Optional[str] = None + RevisionId: Optional[str] = None + Layers: Optional[List[LayerTypeDef]] = None + State: Optional[StateType] = None + StateReason: Optional[str] = None + StateReasonCode: Optional[StateReasonCodeType] = None + LastUpdateStatus: Optional[LastUpdateStatusType] = None + LastUpdateStatusReason: Optional[str] = None + LastUpdateStatusReasonCode: Optional[LastUpdateStatusReasonCodeType] = None + FileSystemConfigs: Optional[List[FileSystemConfigTypeDef]] = None + PackageType: Optional[PackageTypeType] = None + ImageConfigResponse: Optional[ImageConfigResponsePaginatorTypeDef] = None + SigningProfileVersionArn: Optional[str] = None + SigningJobArn: Optional[str] = None + Architectures: Optional[List[ArchitectureType]] = None + EphemeralStorage: Optional[EphemeralStorageTypeDef] = None + SnapStart: Optional[SnapStartResponseTypeDef] = None + RuntimeVersionConfig: Optional[RuntimeVersionConfigTypeDef] = None + LoggingConfig: Optional[LoggingConfigTypeDef] = None + +class FunctionConfigurationResponseTypeDef(BaseModel): + FunctionName: str + FunctionArn: str + Runtime: RuntimeType + Role: str + Handler: str + CodeSize: int + Description: str + Timeout: int + MemorySize: int + LastModified: str + CodeSha256: str + Version: str + VpcConfig: VpcConfigResponseTypeDef + DeadLetterConfig: DeadLetterConfigTypeDef + Environment: EnvironmentResponseTypeDef + KMSKeyArn: str + TracingConfig: TracingConfigResponseTypeDef + MasterArn: str + RevisionId: str + Layers: List[LayerTypeDef] + State: StateType + StateReason: str + StateReasonCode: StateReasonCodeType + LastUpdateStatus: LastUpdateStatusType + LastUpdateStatusReason: str + LastUpdateStatusReasonCode: LastUpdateStatusReasonCodeType + FileSystemConfigs: List[FileSystemConfigTypeDef] + PackageType: PackageTypeType + ImageConfigResponse: ImageConfigResponseTypeDef + SigningProfileVersionArn: str + SigningJobArn: str + Architectures: List[ArchitectureType] + EphemeralStorage: EphemeralStorageTypeDef + SnapStart: SnapStartResponseTypeDef + RuntimeVersionConfig: RuntimeVersionConfigTypeDef + LoggingConfig: LoggingConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FunctionConfigurationTypeDef(BaseModel): + FunctionName: Optional[str] = None + FunctionArn: Optional[str] = None + Runtime: Optional[RuntimeType] = None + Role: Optional[str] = None + Handler: Optional[str] = None + CodeSize: Optional[int] = None + Description: Optional[str] = None + Timeout: Optional[int] = None + MemorySize: Optional[int] = None + LastModified: Optional[str] = None + CodeSha256: Optional[str] = None + Version: Optional[str] = None + VpcConfig: Optional[VpcConfigResponseTypeDef] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + Environment: Optional[EnvironmentResponseTypeDef] = None + KMSKeyArn: Optional[str] = None + TracingConfig: Optional[TracingConfigResponseTypeDef] = None + MasterArn: Optional[str] = None + RevisionId: Optional[str] = None + Layers: Optional[List[LayerTypeDef]] = None + State: Optional[StateType] = None + StateReason: Optional[str] = None + StateReasonCode: Optional[StateReasonCodeType] = None + LastUpdateStatus: Optional[LastUpdateStatusType] = None + LastUpdateStatusReason: Optional[str] = None + LastUpdateStatusReasonCode: Optional[LastUpdateStatusReasonCodeType] = None + FileSystemConfigs: Optional[List[FileSystemConfigTypeDef]] = None + PackageType: Optional[PackageTypeType] = None + ImageConfigResponse: Optional[ImageConfigResponseTypeDef] = None + SigningProfileVersionArn: Optional[str] = None + SigningJobArn: Optional[str] = None + Architectures: Optional[List[ArchitectureType]] = None + EphemeralStorage: Optional[EphemeralStorageTypeDef] = None + SnapStart: Optional[SnapStartResponseTypeDef] = None + RuntimeVersionConfig: Optional[RuntimeVersionConfigTypeDef] = None + LoggingConfig: Optional[LoggingConfigTypeDef] = None + +class ListFunctionEventInvokeConfigsResponseTypeDef(BaseModel): + FunctionEventInvokeConfigs: List[FunctionEventInvokeConfigTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventSourceMappingsResponsePaginatorTypeDef(BaseModel): + NextMarker: str + EventSourceMappings: List[EventSourceMappingConfigurationPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventSourceMappingsResponseTypeDef(BaseModel): + NextMarker: str + EventSourceMappings: List[EventSourceMappingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionsResponsePaginatorTypeDef(BaseModel): + NextMarker: str + Functions: List[FunctionConfigurationPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVersionsByFunctionResponsePaginatorTypeDef(BaseModel): + NextMarker: str + Versions: List[FunctionConfigurationPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetFunctionResponseTypeDef(BaseModel): + Configuration: FunctionConfigurationTypeDef + Code: FunctionCodeLocationTypeDef + Tags: Dict[str, str] + Concurrency: ConcurrencyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFunctionsResponseTypeDef(BaseModel): + NextMarker: str + Functions: List[FunctionConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVersionsByFunctionResponseTypeDef(BaseModel): + NextMarker: str + Versions: List[FunctionConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lambda_constants.py b/aws_resource_validator/pydantic_models/lambda_constants.py new file mode 100644 index 00000000..904028f3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lambda_constants.py @@ -0,0 +1,574 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationLogLevelType = Literal["DEBUG", "ERROR", "FATAL", "INFO", "TRACE", "WARN"] +ArchitectureType = Literal["arm64", "x86_64"] +CodeSigningPolicyType = Literal["Enforce", "Warn"] +EndPointTypeType = Literal["KAFKA_BOOTSTRAP_SERVERS"] +EventSourcePositionType = Literal["AT_TIMESTAMP", "LATEST", "TRIM_HORIZON"] +FullDocumentType = Literal["Default", "UpdateLookup"] +FunctionActiveV2WaiterName = Literal["function_active_v2"] +FunctionActiveWaiterName = Literal["function_active"] +FunctionExistsWaiterName = Literal["function_exists"] +FunctionResponseTypeType = Literal["ReportBatchItemFailures"] +FunctionUpdatedV2WaiterName = Literal["function_updated_v2"] +FunctionUpdatedWaiterName = Literal["function_updated"] +FunctionUrlAuthTypeType = Literal["AWS_IAM", "NONE"] +FunctionVersionType = Literal["ALL"] +InvocationTypeType = Literal["DryRun", "Event", "RequestResponse"] +InvokeModeType = Literal["BUFFERED", "RESPONSE_STREAM"] +LastUpdateStatusReasonCodeType = Literal["DisabledKMSKey", + "EFSIOError", + "EFSMountConnectivityError", + "EFSMountFailure", + "EFSMountTimeout", + "EniLimitExceeded", + "FunctionError", + "ImageAccessDenied", + "ImageDeleted", + "InsufficientRolePermissions", + "InternalError", + "InvalidConfiguration", + "InvalidImage", + "InvalidRuntime", + "InvalidSecurityGroup", + "InvalidStateKMSKey", + "InvalidSubnet", + "InvalidZipFileException", + "KMSKeyAccessDenied", + "KMSKeyNotFound", + "SubnetOutOfIPAddresses",] +LastUpdateStatusType = Literal["Failed", "InProgress", "Successful"] +ListAliasesPaginatorName = Literal["list_aliases"] +ListCodeSigningConfigsPaginatorName = Literal["list_code_signing_configs"] +ListEventSourceMappingsPaginatorName = Literal["list_event_source_mappings"] +ListFunctionEventInvokeConfigsPaginatorName = Literal["list_function_event_invoke_configs"] +ListFunctionUrlConfigsPaginatorName = Literal["list_function_url_configs"] +ListFunctionsByCodeSigningConfigPaginatorName = Literal["list_functions_by_code_signing_config"] +ListFunctionsPaginatorName = Literal["list_functions"] +ListLayerVersionsPaginatorName = Literal["list_layer_versions"] +ListLayersPaginatorName = Literal["list_layers"] +ListProvisionedConcurrencyConfigsPaginatorName = Literal["list_provisioned_concurrency_configs"] +ListVersionsByFunctionPaginatorName = Literal["list_versions_by_function"] +LogFormatType = Literal["JSON", "Text"] +LogTypeType = Literal["None", "Tail"] +PackageTypeType = Literal["Image", "Zip"] +ProvisionedConcurrencyStatusEnumType = Literal["FAILED", "IN_PROGRESS", "READY"] +PublishedVersionActiveWaiterName = Literal["published_version_active"] +ResponseStreamingInvocationTypeType = Literal["DryRun", "RequestResponse"] +RuntimeType = Literal["dotnet6", + "dotnet8", + "dotnetcore1.0", + "dotnetcore2.0", + "dotnetcore2.1", + "dotnetcore3.1", + "go1.x", + "java11", + "java17", + "java21", + "java8", + "java8.al2", + "nodejs", + "nodejs10.x", + "nodejs12.x", + "nodejs14.x", + "nodejs16.x", + "nodejs18.x", + "nodejs20.x", + "nodejs4.3", + "nodejs4.3-edge", + "nodejs6.10", + "nodejs8.10", + "provided", + "provided.al2", + "provided.al2023", + "python2.7", + "python3.10", + "python3.11", + "python3.12", + "python3.6", + "python3.7", + "python3.8", + "python3.9", + "ruby2.5", + "ruby2.7", + "ruby3.2", + "ruby3.3",] +SnapStartApplyOnType = Literal["None", "PublishedVersions"] +SnapStartOptimizationStatusType = Literal["Off", "On"] +SourceAccessTypeType = Literal["BASIC_AUTH", + "CLIENT_CERTIFICATE_TLS_AUTH", + "SASL_SCRAM_256_AUTH", + "SASL_SCRAM_512_AUTH", + "SERVER_ROOT_CA_CERTIFICATE", + "VIRTUAL_HOST", + "VPC_SECURITY_GROUP", + "VPC_SUBNET",] +StateReasonCodeType = Literal["Creating", + "DisabledKMSKey", + "EFSIOError", + "EFSMountConnectivityError", + "EFSMountFailure", + "EFSMountTimeout", + "EniLimitExceeded", + "FunctionError", + "Idle", + "ImageAccessDenied", + "ImageDeleted", + "InsufficientRolePermissions", + "InternalError", + "InvalidConfiguration", + "InvalidImage", + "InvalidRuntime", + "InvalidSecurityGroup", + "InvalidStateKMSKey", + "InvalidSubnet", + "InvalidZipFileException", + "KMSKeyAccessDenied", + "KMSKeyNotFound", + "Restoring", + "SubnetOutOfIPAddresses",] +StateType = Literal["Active", "Failed", "Inactive", "Pending"] +SystemLogLevelType = Literal["DEBUG", "INFO", "WARN"] +TracingModeType = Literal["Active", "PassThrough"] +UpdateRuntimeOnType = Literal["Auto", "FunctionUpdate", "Manual"] +LambdaServiceName = Literal["lambda"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_aliases", + "list_code_signing_configs", + "list_event_source_mappings", + "list_function_event_invoke_configs", + "list_function_url_configs", + "list_functions", + "list_functions_by_code_signing_config", + "list_layer_versions", + "list_layers", + "list_provisioned_concurrency_configs", + "list_versions_by_function",] +WaiterName = Literal["function_active", + "function_active_v2", + "function_exists", + "function_updated", + "function_updated_v2", + "published_version_active",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any]] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/launch_wizard_classes.py b/aws_resource_validator/pydantic_models/launch_wizard_classes.py new file mode 100644 index 00000000..b129faec --- /dev/null +++ b/aws_resource_validator/pydantic_models/launch_wizard_classes.py @@ -0,0 +1,212 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.launch_wizard_constants import * + +class CreateDeploymentInputRequestTypeDef(BaseModel): + deploymentPatternName: str + name: str + specifications: Mapping[str, str] + workloadName: str + dryRun: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteDeploymentInputRequestTypeDef(BaseModel): + deploymentId: str + +class DeploymentConditionalFieldTypeDef(BaseModel): + comparator: Optional[str] = None + name: Optional[str] = None + value: Optional[str] = None + +class DeploymentDataSummaryTypeDef(BaseModel): + createdAt: Optional[datetime] = None + id: Optional[str] = None + name: Optional[str] = None + patternName: Optional[str] = None + status: Optional[DeploymentStatusType] = None + workloadName: Optional[str] = None + +class DeploymentDataTypeDef(BaseModel): + createdAt: Optional[datetime] = None + deletedAt: Optional[datetime] = None + deploymentArn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + patternName: Optional[str] = None + resourceGroup: Optional[str] = None + specifications: Optional[Dict[str, str]] = None + status: Optional[DeploymentStatusType] = None + tags: Optional[Dict[str, str]] = None + workloadName: Optional[str] = None + +class DeploymentEventDataSummaryTypeDef(BaseModel): + description: Optional[str] = None + name: Optional[str] = None + status: Optional[EventStatusType] = None + statusReason: Optional[str] = None + timestamp: Optional[datetime] = None + +class DeploymentFilterTypeDef(BaseModel): + name: Optional[DeploymentFilterKeyType] = None + values: Optional[Sequence[str]] = None + +class GetDeploymentInputRequestTypeDef(BaseModel): + deploymentId: str + +class GetWorkloadDeploymentPatternInputRequestTypeDef(BaseModel): + deploymentPatternName: str + workloadName: str + +class GetWorkloadInputRequestTypeDef(BaseModel): + workloadName: str + +class WorkloadDataTypeDef(BaseModel): + description: Optional[str] = None + displayName: Optional[str] = None + documentationUrl: Optional[str] = None + iconUrl: Optional[str] = None + status: Optional[WorkloadStatusType] = None + statusMessage: Optional[str] = None + workloadName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDeploymentEventsInputRequestTypeDef(BaseModel): + deploymentId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class ListWorkloadDeploymentPatternsInputRequestTypeDef(BaseModel): + workloadName: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkloadDeploymentPatternDataSummaryTypeDef(BaseModel): + deploymentPatternName: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + status: Optional[WorkloadDeploymentPatternStatusType] = None + statusMessage: Optional[str] = None + workloadName: Optional[str] = None + workloadVersionName: Optional[str] = None + +class ListWorkloadsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class WorkloadDataSummaryTypeDef(BaseModel): + displayName: Optional[str] = None + workloadName: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CreateDeploymentOutputTypeDef(BaseModel): + deploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDeploymentOutputTypeDef(BaseModel): + status: DeploymentStatusType + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentSpecificationsFieldTypeDef(BaseModel): + allowedValues: Optional[List[str]] = None + conditionals: Optional[List[DeploymentConditionalFieldTypeDef]] = None + description: Optional[str] = None + name: Optional[str] = None + required: Optional[str] = None + +class ListDeploymentsOutputTypeDef(BaseModel): + deployments: List[DeploymentDataSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentOutputTypeDef(BaseModel): + deployment: DeploymentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentEventsOutputTypeDef(BaseModel): + deploymentEvents: List[DeploymentEventDataSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentsInputRequestTypeDef(BaseModel): + filters: Optional[Sequence[DeploymentFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetWorkloadOutputTypeDef(BaseModel): + workload: WorkloadDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentEventsInputListDeploymentEventsPaginateTypeDef(BaseModel): + deploymentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsInputListDeploymentsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[DeploymentFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkloadDeploymentPatternsInputListWorkloadDeploymentPatternsPaginateTypeDef(BaseModel): + workloadName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkloadsInputListWorkloadsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkloadDeploymentPatternsOutputTypeDef(BaseModel): + nextToken: str + workloadDeploymentPatterns: List[WorkloadDeploymentPatternDataSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkloadsOutputTypeDef(BaseModel): + nextToken: str + workloads: List[WorkloadDataSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class WorkloadDeploymentPatternDataTypeDef(BaseModel): + deploymentPatternName: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + specifications: Optional[List[DeploymentSpecificationsFieldTypeDef]] = None + status: Optional[WorkloadDeploymentPatternStatusType] = None + statusMessage: Optional[str] = None + workloadName: Optional[str] = None + workloadVersionName: Optional[str] = None + +class GetWorkloadDeploymentPatternOutputTypeDef(BaseModel): + workloadDeploymentPattern: WorkloadDeploymentPatternDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/launch_wizard_constants.py b/aws_resource_validator/pydantic_models/launch_wizard_constants.py new file mode 100644 index 00000000..925416c7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/launch_wizard_constants.py @@ -0,0 +1,419 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DeploymentFilterKeyType = Literal["DEPLOYMENT_STATUS", "WORKLOAD_NAME"] +DeploymentStatusType = Literal["COMPLETED", + "CREATING", + "DELETED", + "DELETE_FAILED", + "DELETE_INITIATING", + "DELETE_IN_PROGRESS", + "FAILED", + "IN_PROGRESS", + "VALIDATING",] +EventStatusType = Literal["CANCELED", "CANCELING", "COMPLETED", "CREATED", "FAILED", "IN_PROGRESS", "PENDING", "TIMED_OUT"] +ListDeploymentEventsPaginatorName = Literal["list_deployment_events"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListWorkloadDeploymentPatternsPaginatorName = Literal["list_workload_deployment_patterns"] +ListWorkloadsPaginatorName = Literal["list_workloads"] +WorkloadDeploymentPatternStatusType = Literal["ACTIVE", "DELETED", "DISABLED", "INACTIVE"] +WorkloadStatusType = Literal["ACTIVE", "DELETED", "DISABLED", "INACTIVE"] +LaunchWizardServiceName = Literal["launch-wizard"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_deployment_events", + "list_deployments", + "list_workload_deployment_patterns", + "list_workloads",] diff --git a/aws_resource_validator/pydantic_models/lex_models_classes.py b/aws_resource_validator/pydantic_models/lex_models_classes.py new file mode 100644 index 00000000..fb6134e4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lex_models_classes.py @@ -0,0 +1,808 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lex_models_constants import * + +class BotChannelAssociationTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + botAlias: Optional[str] = None + botName: Optional[str] = None + createdDate: Optional[datetime] = None + type: Optional[ChannelTypeType] = None + botConfiguration: Optional[Dict[str, str]] = None + status: Optional[ChannelStatusType] = None + failureReason: Optional[str] = None + +class BotMetadataTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + status: Optional[StatusType] = None + lastUpdatedDate: Optional[datetime] = None + createdDate: Optional[datetime] = None + version: Optional[str] = None + +class BuiltinIntentMetadataTypeDef(BaseModel): + signature: Optional[str] = None + supportedLocales: Optional[List[LocaleType]] = None + +class BuiltinIntentSlotTypeDef(BaseModel): + name: Optional[str] = None + +class BuiltinSlotTypeMetadataTypeDef(BaseModel): + signature: Optional[str] = None + supportedLocales: Optional[List[LocaleType]] = None + +class CodeHookTypeDef(BaseModel): + uri: str + messageVersion: str + +class LogSettingsRequestTypeDef(BaseModel): + logType: LogTypeType + destination: DestinationType + resourceArn: str + kmsKeyArn: Optional[str] = None + +class LogSettingsResponseTypeDef(BaseModel): + logType: Optional[LogTypeType] = None + destination: Optional[DestinationType] = None + kmsKeyArn: Optional[str] = None + resourceArn: Optional[str] = None + resourcePrefix: Optional[str] = None + +class CreateBotVersionRequestRequestTypeDef(BaseModel): + name: str + checksum: Optional[str] = None + +class IntentTypeDef(BaseModel): + intentName: str + intentVersion: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateIntentVersionRequestRequestTypeDef(BaseModel): + name: str + checksum: Optional[str] = None + +class InputContextTypeDef(BaseModel): + name: str + +class KendraConfigurationTypeDef(BaseModel): + kendraIndex: str + role: str + queryFilterString: Optional[str] = None + +class OutputContextTypeDef(BaseModel): + name: str + timeToLiveInSeconds: int + turnsToLive: int + +class CreateSlotTypeVersionRequestRequestTypeDef(BaseModel): + name: str + checksum: Optional[str] = None + +class EnumerationValueTypeDef(BaseModel): + value: str + synonyms: Optional[List[str]] = None + +class DeleteBotAliasRequestRequestTypeDef(BaseModel): + name: str + botName: str + +class DeleteBotChannelAssociationRequestRequestTypeDef(BaseModel): + name: str + botName: str + botAlias: str + +class DeleteBotRequestRequestTypeDef(BaseModel): + name: str + +class DeleteBotVersionRequestRequestTypeDef(BaseModel): + name: str + version: str + +class DeleteIntentRequestRequestTypeDef(BaseModel): + name: str + +class DeleteIntentVersionRequestRequestTypeDef(BaseModel): + name: str + version: str + +class DeleteSlotTypeRequestRequestTypeDef(BaseModel): + name: str + +class DeleteSlotTypeVersionRequestRequestTypeDef(BaseModel): + name: str + version: str + +class DeleteUtterancesRequestRequestTypeDef(BaseModel): + botName: str + userId: str + +class GetBotAliasRequestRequestTypeDef(BaseModel): + name: str + botName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetBotAliasesRequestRequestTypeDef(BaseModel): + botName: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + nameContains: Optional[str] = None + +class GetBotChannelAssociationRequestRequestTypeDef(BaseModel): + name: str + botName: str + botAlias: str + +class GetBotChannelAssociationsRequestRequestTypeDef(BaseModel): + botName: str + botAlias: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + nameContains: Optional[str] = None + +class GetBotRequestRequestTypeDef(BaseModel): + name: str + versionOrAlias: str + +class GetBotVersionsRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetBotsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + nameContains: Optional[str] = None + +class GetBuiltinIntentRequestRequestTypeDef(BaseModel): + signature: str + +class GetBuiltinIntentsRequestRequestTypeDef(BaseModel): + locale: Optional[LocaleType] = None + signatureContains: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetBuiltinSlotTypesRequestRequestTypeDef(BaseModel): + locale: Optional[LocaleType] = None + signatureContains: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetExportRequestRequestTypeDef(BaseModel): + name: str + version: str + resourceType: ResourceTypeType + exportType: ExportTypeType + +class GetImportRequestRequestTypeDef(BaseModel): + importId: str + +class GetIntentRequestRequestTypeDef(BaseModel): + name: str + version: str + +class GetIntentVersionsRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class IntentMetadataTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + lastUpdatedDate: Optional[datetime] = None + createdDate: Optional[datetime] = None + version: Optional[str] = None + +class GetIntentsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + nameContains: Optional[str] = None + +class GetMigrationRequestRequestTypeDef(BaseModel): + migrationId: str + +class MigrationAlertTypeDef(BaseModel): + type: Optional[MigrationAlertTypeType] = None + message: Optional[str] = None + details: Optional[List[str]] = None + referenceURLs: Optional[List[str]] = None + +class GetMigrationsRequestRequestTypeDef(BaseModel): + sortByAttribute: Optional[MigrationSortAttributeType] = None + sortByOrder: Optional[SortOrderType] = None + v1BotNameContains: Optional[str] = None + migrationStatusEquals: Optional[MigrationStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MigrationSummaryTypeDef(BaseModel): + migrationId: Optional[str] = None + v1BotName: Optional[str] = None + v1BotVersion: Optional[str] = None + v1BotLocale: Optional[LocaleType] = None + v2BotId: Optional[str] = None + v2BotRole: Optional[str] = None + migrationStatus: Optional[MigrationStatusType] = None + migrationStrategy: Optional[MigrationStrategyType] = None + migrationTimestamp: Optional[datetime] = None + +class GetSlotTypeRequestRequestTypeDef(BaseModel): + name: str + version: str + +class GetSlotTypeVersionsRequestRequestTypeDef(BaseModel): + name: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SlotTypeMetadataTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + lastUpdatedDate: Optional[datetime] = None + createdDate: Optional[datetime] = None + version: Optional[str] = None + +class GetSlotTypesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + nameContains: Optional[str] = None + +class GetUtterancesViewRequestRequestTypeDef(BaseModel): + botName: str + botVersions: Sequence[str] + statusType: StatusTypeType + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TagTypeDef(BaseModel): + key: str + value: str + +class MessageTypeDef(BaseModel): + contentType: ContentTypeType + content: str + groupNumber: Optional[int] = None + +class SlotDefaultValueTypeDef(BaseModel): + defaultValue: str + +class SlotTypeRegexConfigurationTypeDef(BaseModel): + pattern: str + +class StartMigrationRequestRequestTypeDef(BaseModel): + v1BotName: str + v1BotVersion: str + v2BotName: str + v2BotRole: str + migrationStrategy: MigrationStrategyType + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UtteranceDataTypeDef(BaseModel): + utteranceString: Optional[str] = None + count: Optional[int] = None + distinctUsers: Optional[int] = None + firstUtteredDate: Optional[datetime] = None + lastUtteredDate: Optional[datetime] = None + +class FulfillmentActivityTypeDef(BaseModel): + type: FulfillmentActivityTypeType + codeHook: Optional[CodeHookTypeDef] = None + +class ConversationLogsRequestTypeDef(BaseModel): + logSettings: Sequence[LogSettingsRequestTypeDef] + iamRoleArn: str + +class ConversationLogsResponseTypeDef(BaseModel): + logSettings: Optional[List[LogSettingsResponseTypeDef]] = None + iamRoleArn: Optional[str] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotChannelAssociationResponseTypeDef(BaseModel): + name: str + description: str + botAlias: str + botName: str + createdDate: datetime + type: ChannelTypeType + botConfiguration: Dict[str, str] + status: ChannelStatusType + failureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotChannelAssociationsResponseTypeDef(BaseModel): + botChannelAssociations: List[BotChannelAssociationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotVersionsResponseTypeDef(BaseModel): + bots: List[BotMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotsResponseTypeDef(BaseModel): + bots: List[BotMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBuiltinIntentResponseTypeDef(BaseModel): + signature: str + supportedLocales: List[LocaleType] + slots: List[BuiltinIntentSlotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBuiltinIntentsResponseTypeDef(BaseModel): + intents: List[BuiltinIntentMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBuiltinSlotTypesResponseTypeDef(BaseModel): + slotTypes: List[BuiltinSlotTypeMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetExportResponseTypeDef(BaseModel): + name: str + version: str + resourceType: ResourceTypeType + exportType: ExportTypeType + exportStatus: ExportStatusType + failureReason: str + url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImportResponseTypeDef(BaseModel): + name: str + resourceType: ResourceTypeType + mergeStrategy: MergeStrategyType + importId: str + importStatus: ImportStatusType + failureReason: List[str] + createdDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartMigrationResponseTypeDef(BaseModel): + v1BotName: str + v1BotVersion: str + v1BotLocale: LocaleType + v2BotId: str + v2BotRole: str + migrationId: str + migrationStrategy: MigrationStrategyType + migrationTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotAliasesRequestGetBotAliasesPaginateTypeDef(BaseModel): + botName: str + nameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBotChannelAssociationsRequestGetBotChannelAssociationsPaginateTypeDef(BaseModel): + botName: str + botAlias: str + nameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBotVersionsRequestGetBotVersionsPaginateTypeDef(BaseModel): + name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBotsRequestGetBotsPaginateTypeDef(BaseModel): + nameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBuiltinIntentsRequestGetBuiltinIntentsPaginateTypeDef(BaseModel): + locale: Optional[LocaleType] = None + signatureContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBuiltinSlotTypesRequestGetBuiltinSlotTypesPaginateTypeDef(BaseModel): + locale: Optional[LocaleType] = None + signatureContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIntentVersionsRequestGetIntentVersionsPaginateTypeDef(BaseModel): + name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIntentsRequestGetIntentsPaginateTypeDef(BaseModel): + nameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSlotTypeVersionsRequestGetSlotTypeVersionsPaginateTypeDef(BaseModel): + name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSlotTypesRequestGetSlotTypesPaginateTypeDef(BaseModel): + nameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetIntentVersionsResponseTypeDef(BaseModel): + intents: List[IntentMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntentsResponseTypeDef(BaseModel): + intents: List[IntentMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMigrationResponseTypeDef(BaseModel): + migrationId: str + v1BotName: str + v1BotVersion: str + v1BotLocale: LocaleType + v2BotId: str + v2BotRole: str + migrationStatus: MigrationStatusType + migrationStrategy: MigrationStrategyType + migrationTimestamp: datetime + alerts: List[MigrationAlertTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMigrationsResponseTypeDef(BaseModel): + migrationSummaries: List[MigrationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSlotTypeVersionsResponseTypeDef(BaseModel): + slotTypes: List[SlotTypeMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSlotTypesResponseTypeDef(BaseModel): + slotTypes: List[SlotTypeMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportRequestRequestTypeDef(BaseModel): + payload: BlobTypeDef + resourceType: ResourceTypeType + mergeStrategy: MergeStrategyType + tags: Optional[Sequence[TagTypeDef]] = None + +class StartImportResponseTypeDef(BaseModel): + name: str + resourceType: ResourceTypeType + mergeStrategy: MergeStrategyType + importId: str + importStatus: ImportStatusType + tags: List[TagTypeDef] + createdDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class PromptTypeDef(BaseModel): + messages: List[MessageTypeDef] + maxAttempts: int + responseCard: Optional[str] = None + +class StatementTypeDef(BaseModel): + messages: List[MessageTypeDef] + responseCard: Optional[str] = None + +class SlotDefaultValueSpecTypeDef(BaseModel): + defaultValueList: List[SlotDefaultValueTypeDef] + +class SlotTypeConfigurationTypeDef(BaseModel): + regexConfiguration: Optional[SlotTypeRegexConfigurationTypeDef] = None + +class UtteranceListTypeDef(BaseModel): + botVersion: Optional[str] = None + utterances: Optional[List[UtteranceDataTypeDef]] = None + +class PutBotAliasRequestRequestTypeDef(BaseModel): + name: str + botVersion: str + botName: str + description: Optional[str] = None + checksum: Optional[str] = None + conversationLogs: Optional[ConversationLogsRequestTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class BotAliasMetadataTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + botVersion: Optional[str] = None + botName: Optional[str] = None + lastUpdatedDate: Optional[datetime] = None + createdDate: Optional[datetime] = None + checksum: Optional[str] = None + conversationLogs: Optional[ConversationLogsResponseTypeDef] = None + +class GetBotAliasResponseTypeDef(BaseModel): + name: str + description: str + botVersion: str + botName: str + lastUpdatedDate: datetime + createdDate: datetime + checksum: str + conversationLogs: ConversationLogsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBotAliasResponseTypeDef(BaseModel): + name: str + description: str + botVersion: str + botName: str + lastUpdatedDate: datetime + createdDate: datetime + checksum: str + conversationLogs: ConversationLogsResponseTypeDef + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBotVersionResponseTypeDef(BaseModel): + name: str + description: str + intents: List[IntentTypeDef] + clarificationPrompt: PromptTypeDef + abortStatement: StatementTypeDef + status: StatusType + failureReason: str + lastUpdatedDate: datetime + createdDate: datetime + idleSessionTTLInSeconds: int + voiceId: str + checksum: str + version: str + locale: LocaleType + childDirected: bool + enableModelImprovements: bool + detectSentiment: bool + ResponseMetadata: ResponseMetadataTypeDef + +class FollowUpPromptTypeDef(BaseModel): + prompt: PromptTypeDef + rejectionStatement: StatementTypeDef + +class GetBotResponseTypeDef(BaseModel): + name: str + description: str + intents: List[IntentTypeDef] + enableModelImprovements: bool + nluIntentConfidenceThreshold: float + clarificationPrompt: PromptTypeDef + abortStatement: StatementTypeDef + status: StatusType + failureReason: str + lastUpdatedDate: datetime + createdDate: datetime + idleSessionTTLInSeconds: int + voiceId: str + checksum: str + version: str + locale: LocaleType + childDirected: bool + detectSentiment: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutBotRequestRequestTypeDef(BaseModel): + name: str + locale: LocaleType + childDirected: bool + description: Optional[str] = None + intents: Optional[Sequence[IntentTypeDef]] = None + enableModelImprovements: Optional[bool] = None + nluIntentConfidenceThreshold: Optional[float] = None + clarificationPrompt: Optional[PromptTypeDef] = None + abortStatement: Optional[StatementTypeDef] = None + idleSessionTTLInSeconds: Optional[int] = None + voiceId: Optional[str] = None + checksum: Optional[str] = None + processBehavior: Optional[ProcessBehaviorType] = None + detectSentiment: Optional[bool] = None + createVersion: Optional[bool] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class PutBotResponseTypeDef(BaseModel): + name: str + description: str + intents: List[IntentTypeDef] + enableModelImprovements: bool + nluIntentConfidenceThreshold: float + clarificationPrompt: PromptTypeDef + abortStatement: StatementTypeDef + status: StatusType + failureReason: str + lastUpdatedDate: datetime + createdDate: datetime + idleSessionTTLInSeconds: int + voiceId: str + checksum: str + version: str + locale: LocaleType + childDirected: bool + createVersion: bool + detectSentiment: bool + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SlotTypeDef(BaseModel): + name: str + slotConstraint: SlotConstraintType + description: Optional[str] = None + slotType: Optional[str] = None + slotTypeVersion: Optional[str] = None + valueElicitationPrompt: Optional[PromptTypeDef] = None + priority: Optional[int] = None + sampleUtterances: Optional[List[str]] = None + responseCard: Optional[str] = None + obfuscationSetting: Optional[ObfuscationSettingType] = None + defaultValueSpec: Optional[SlotDefaultValueSpecTypeDef] = None + +class CreateSlotTypeVersionResponseTypeDef(BaseModel): + name: str + description: str + enumerationValues: List[EnumerationValueTypeDef] + lastUpdatedDate: datetime + createdDate: datetime + version: str + checksum: str + valueSelectionStrategy: SlotValueSelectionStrategyType + parentSlotTypeSignature: str + slotTypeConfigurations: List[SlotTypeConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSlotTypeResponseTypeDef(BaseModel): + name: str + description: str + enumerationValues: List[EnumerationValueTypeDef] + lastUpdatedDate: datetime + createdDate: datetime + version: str + checksum: str + valueSelectionStrategy: SlotValueSelectionStrategyType + parentSlotTypeSignature: str + slotTypeConfigurations: List[SlotTypeConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutSlotTypeRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + enumerationValues: Optional[Sequence[EnumerationValueTypeDef]] = None + checksum: Optional[str] = None + valueSelectionStrategy: Optional[SlotValueSelectionStrategyType] = None + createVersion: Optional[bool] = None + parentSlotTypeSignature: Optional[str] = None + slotTypeConfigurations: Optional[Sequence[SlotTypeConfigurationTypeDef]] = None + +class PutSlotTypeResponseTypeDef(BaseModel): + name: str + description: str + enumerationValues: List[EnumerationValueTypeDef] + lastUpdatedDate: datetime + createdDate: datetime + version: str + checksum: str + valueSelectionStrategy: SlotValueSelectionStrategyType + createVersion: bool + parentSlotTypeSignature: str + slotTypeConfigurations: List[SlotTypeConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetUtterancesViewResponseTypeDef(BaseModel): + botName: str + utterances: List[UtteranceListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBotAliasesResponseTypeDef(BaseModel): + BotAliases: List[BotAliasMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIntentVersionResponseTypeDef(BaseModel): + name: str + description: str + slots: List[SlotTypeDef] + sampleUtterances: List[str] + confirmationPrompt: PromptTypeDef + rejectionStatement: StatementTypeDef + followUpPrompt: FollowUpPromptTypeDef + conclusionStatement: StatementTypeDef + dialogCodeHook: CodeHookTypeDef + fulfillmentActivity: FulfillmentActivityTypeDef + parentIntentSignature: str + lastUpdatedDate: datetime + createdDate: datetime + version: str + checksum: str + kendraConfiguration: KendraConfigurationTypeDef + inputContexts: List[InputContextTypeDef] + outputContexts: List[OutputContextTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetIntentResponseTypeDef(BaseModel): + name: str + description: str + slots: List[SlotTypeDef] + sampleUtterances: List[str] + confirmationPrompt: PromptTypeDef + rejectionStatement: StatementTypeDef + followUpPrompt: FollowUpPromptTypeDef + conclusionStatement: StatementTypeDef + dialogCodeHook: CodeHookTypeDef + fulfillmentActivity: FulfillmentActivityTypeDef + parentIntentSignature: str + lastUpdatedDate: datetime + createdDate: datetime + version: str + checksum: str + kendraConfiguration: KendraConfigurationTypeDef + inputContexts: List[InputContextTypeDef] + outputContexts: List[OutputContextTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutIntentRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + slots: Optional[Sequence[SlotTypeDef]] = None + sampleUtterances: Optional[Sequence[str]] = None + confirmationPrompt: Optional[PromptTypeDef] = None + rejectionStatement: Optional[StatementTypeDef] = None + followUpPrompt: Optional[FollowUpPromptTypeDef] = None + conclusionStatement: Optional[StatementTypeDef] = None + dialogCodeHook: Optional[CodeHookTypeDef] = None + fulfillmentActivity: Optional[FulfillmentActivityTypeDef] = None + parentIntentSignature: Optional[str] = None + checksum: Optional[str] = None + createVersion: Optional[bool] = None + kendraConfiguration: Optional[KendraConfigurationTypeDef] = None + inputContexts: Optional[Sequence[InputContextTypeDef]] = None + outputContexts: Optional[Sequence[OutputContextTypeDef]] = None + +class PutIntentResponseTypeDef(BaseModel): + name: str + description: str + slots: List[SlotTypeDef] + sampleUtterances: List[str] + confirmationPrompt: PromptTypeDef + rejectionStatement: StatementTypeDef + followUpPrompt: FollowUpPromptTypeDef + conclusionStatement: StatementTypeDef + dialogCodeHook: CodeHookTypeDef + fulfillmentActivity: FulfillmentActivityTypeDef + parentIntentSignature: str + lastUpdatedDate: datetime + createdDate: datetime + version: str + checksum: str + createVersion: bool + kendraConfiguration: KendraConfigurationTypeDef + inputContexts: List[InputContextTypeDef] + outputContexts: List[OutputContextTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lex_models_constants.py b/aws_resource_validator/pydantic_models/lex_models_constants.py new file mode 100644 index 00000000..c4c7aedf --- /dev/null +++ b/aws_resource_validator/pydantic_models/lex_models_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChannelStatusType = Literal["CREATED", "FAILED", "IN_PROGRESS"] +ChannelTypeType = Literal["Facebook", "Kik", "Slack", "Twilio-Sms"] +ContentTypeType = Literal["CustomPayload", "PlainText", "SSML"] +DestinationType = Literal["CLOUDWATCH_LOGS", "S3"] +ExportStatusType = Literal["FAILED", "IN_PROGRESS", "READY"] +ExportTypeType = Literal["ALEXA_SKILLS_KIT", "LEX"] +FulfillmentActivityTypeType = Literal["CodeHook", "ReturnIntent"] +GetBotAliasesPaginatorName = Literal["get_bot_aliases"] +GetBotChannelAssociationsPaginatorName = Literal["get_bot_channel_associations"] +GetBotVersionsPaginatorName = Literal["get_bot_versions"] +GetBotsPaginatorName = Literal["get_bots"] +GetBuiltinIntentsPaginatorName = Literal["get_builtin_intents"] +GetBuiltinSlotTypesPaginatorName = Literal["get_builtin_slot_types"] +GetIntentVersionsPaginatorName = Literal["get_intent_versions"] +GetIntentsPaginatorName = Literal["get_intents"] +GetSlotTypeVersionsPaginatorName = Literal["get_slot_type_versions"] +GetSlotTypesPaginatorName = Literal["get_slot_types"] +ImportStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS"] +LocaleType = Literal["de-DE", + "en-AU", + "en-GB", + "en-IN", + "en-US", + "es-419", + "es-ES", + "es-US", + "fr-CA", + "fr-FR", + "it-IT", + "ja-JP", + "ko-KR",] +LogTypeType = Literal["AUDIO", "TEXT"] +MergeStrategyType = Literal["FAIL_ON_CONFLICT", "OVERWRITE_LATEST"] +MigrationAlertTypeType = Literal["ERROR", "WARN"] +MigrationSortAttributeType = Literal["MIGRATION_DATE_TIME", "V1_BOT_NAME"] +MigrationStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +MigrationStrategyType = Literal["CREATE_NEW", "UPDATE_EXISTING"] +ObfuscationSettingType = Literal["DEFAULT_OBFUSCATION", "NONE"] +ProcessBehaviorType = Literal["BUILD", "SAVE"] +ResourceTypeType = Literal["BOT", "INTENT", "SLOT_TYPE"] +SlotConstraintType = Literal["Optional", "Required"] +SlotValueSelectionStrategyType = Literal["ORIGINAL_VALUE", "TOP_RESOLUTION"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +StatusType = Literal["BUILDING", "FAILED", "NOT_BUILT", "READY", "READY_BASIC_TESTING"] +StatusTypeType = Literal["Detected", "Missed"] +LexModelBuildingServiceServiceName = Literal["lex-models"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_bot_aliases", + "get_bot_channel_associations", + "get_bot_versions", + "get_bots", + "get_builtin_intents", + "get_builtin_slot_types", + "get_intent_versions", + "get_intents", + "get_slot_type_versions", + "get_slot_types",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/lex_runtime_classes.py b/aws_resource_validator/pydantic_models/lex_runtime_classes.py new file mode 100644 index 00000000..e4acecca --- /dev/null +++ b/aws_resource_validator/pydantic_models/lex_runtime_classes.py @@ -0,0 +1,184 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lex_runtime_constants import * + +class ActiveContextTimeToLiveTypeDef(BaseModel): + timeToLiveInSeconds: Optional[int] = None + turnsToLive: Optional[int] = None + +class ButtonTypeDef(BaseModel): + text: str + value: str + +class DeleteSessionRequestRequestTypeDef(BaseModel): + botName: str + botAlias: str + userId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DialogActionTypeDef(BaseModel): + type: DialogActionTypeType + intentName: Optional[str] = None + slots: Optional[Dict[str, str]] = None + slotToElicit: Optional[str] = None + fulfillmentState: Optional[FulfillmentStateType] = None + message: Optional[str] = None + messageFormat: Optional[MessageFormatTypeType] = None + +class GetSessionRequestRequestTypeDef(BaseModel): + botName: str + botAlias: str + userId: str + checkpointLabelFilter: Optional[str] = None + +class IntentSummaryTypeDef(BaseModel): + dialogActionType: DialogActionTypeType + intentName: Optional[str] = None + checkpointLabel: Optional[str] = None + slots: Optional[Dict[str, str]] = None + confirmationStatus: Optional[ConfirmationStatusType] = None + fulfillmentState: Optional[FulfillmentStateType] = None + slotToElicit: Optional[str] = None + +class IntentConfidenceTypeDef(BaseModel): + score: Optional[float] = None + +class SentimentResponseTypeDef(BaseModel): + sentimentLabel: Optional[str] = None + sentimentScore: Optional[str] = None + +class ActiveContextTypeDef(BaseModel): + name: str + timeToLive: ActiveContextTimeToLiveTypeDef + parameters: Dict[str, str] + +class PostContentRequestRequestTypeDef(BaseModel): + botName: str + botAlias: str + userId: str + contentType: str + inputStream: BlobTypeDef + sessionAttributes: Optional[str] = None + requestAttributes: Optional[str] = None + accept: Optional[str] = None + activeContexts: Optional[str] = None + +class GenericAttachmentTypeDef(BaseModel): + title: Optional[str] = None + subTitle: Optional[str] = None + attachmentLinkUrl: Optional[str] = None + imageUrl: Optional[str] = None + buttons: Optional[List[ButtonTypeDef]] = None + +class DeleteSessionResponseTypeDef(BaseModel): + botName: str + botAlias: str + userId: str + sessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PostContentResponseTypeDef(BaseModel): + contentType: str + intentName: str + nluIntentConfidence: str + alternativeIntents: str + slots: str + sessionAttributes: str + sentimentResponse: str + message: str + encodedMessage: str + messageFormat: MessageFormatTypeType + dialogState: DialogStateType + slotToElicit: str + inputTranscript: str + encodedInputTranscript: str + audioStream: StreamingBody + botVersion: str + sessionId: str + activeContexts: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSessionResponseTypeDef(BaseModel): + contentType: str + intentName: str + slots: str + sessionAttributes: str + message: str + encodedMessage: str + messageFormat: MessageFormatTypeType + dialogState: DialogStateType + slotToElicit: str + audioStream: StreamingBody + sessionId: str + activeContexts: str + ResponseMetadata: ResponseMetadataTypeDef + +class PredictedIntentTypeDef(BaseModel): + intentName: Optional[str] = None + nluIntentConfidence: Optional[IntentConfidenceTypeDef] = None + slots: Optional[Dict[str, str]] = None + +class GetSessionResponseTypeDef(BaseModel): + recentIntentSummaryView: List[IntentSummaryTypeDef] + sessionAttributes: Dict[str, str] + sessionId: str + dialogAction: DialogActionTypeDef + activeContexts: List[ActiveContextTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PostTextRequestRequestTypeDef(BaseModel): + botName: str + botAlias: str + userId: str + inputText: str + sessionAttributes: Optional[Mapping[str, str]] = None + requestAttributes: Optional[Mapping[str, str]] = None + activeContexts: Optional[Sequence[ActiveContextTypeDef]] = None + +class PutSessionRequestRequestTypeDef(BaseModel): + botName: str + botAlias: str + userId: str + sessionAttributes: Optional[Mapping[str, str]] = None + dialogAction: Optional[DialogActionTypeDef] = None + recentIntentSummaryView: Optional[Sequence[IntentSummaryTypeDef]] = None + accept: Optional[str] = None + activeContexts: Optional[Sequence[ActiveContextTypeDef]] = None + +class ResponseCardTypeDef(BaseModel): + version: Optional[str] = None + contentType: Optional[Literal["application/vnd.amazonaws.card.generic"]] = None + genericAttachments: Optional[List[GenericAttachmentTypeDef]] = None + +class PostTextResponseTypeDef(BaseModel): + intentName: str + nluIntentConfidence: IntentConfidenceTypeDef + alternativeIntents: List[PredictedIntentTypeDef] + slots: Dict[str, str] + sessionAttributes: Dict[str, str] + message: str + sentimentResponse: SentimentResponseTypeDef + messageFormat: MessageFormatTypeType + dialogState: DialogStateType + slotToElicit: str + responseCard: ResponseCardTypeDef + sessionId: str + botVersion: str + activeContexts: List[ActiveContextTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lex_runtime_constants.py b/aws_resource_validator/pydantic_models/lex_runtime_constants.py new file mode 100644 index 00000000..6a85e118 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lex_runtime_constants.py @@ -0,0 +1,403 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConfirmationStatusType = Literal["Confirmed", "Denied", "None"] +ContentTypeType = Literal["application/vnd.amazonaws.card.generic"] +DialogActionTypeType = Literal["Close", "ConfirmIntent", "Delegate", "ElicitIntent", "ElicitSlot"] +DialogStateType = Literal["ConfirmIntent", "ElicitIntent", "ElicitSlot", "Failed", "Fulfilled", "ReadyForFulfillment"] +FulfillmentStateType = Literal["Failed", "Fulfilled", "ReadyForFulfillment"] +MessageFormatTypeType = Literal["Composite", "CustomPayload", "PlainText", "SSML"] +LexRuntimeServiceServiceName = Literal["lex-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/lexv2_models_classes.py b/aws_resource_validator/pydantic_models/lexv2_models_classes.py new file mode 100644 index 00000000..8df82d70 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lexv2_models_classes.py @@ -0,0 +1,2889 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lexv2_models_constants import * + +class ActiveContextTypeDef(BaseModel): + name: str + +class AdvancedRecognitionSettingTypeDef(BaseModel): + audioRecognitionStrategy: Optional[Literal["UseSlotValuesAsCustomVocabulary"]] = None + +class ExecutionErrorDetailsTypeDef(BaseModel): + errorCode: str + errorMessage: str + +class AgentTurnSpecificationTypeDef(BaseModel): + agentPrompt: str + +class AggregatedUtterancesFilterTypeDef(BaseModel): + name: Literal["Utterance"] + values: Sequence[str] + operator: AggregatedUtterancesFilterOperatorType + +class AggregatedUtterancesSortByTypeDef(BaseModel): + attribute: AggregatedUtterancesSortAttributeType + order: SortOrderType + +class AggregatedUtterancesSummaryTypeDef(BaseModel): + utterance: Optional[str] = None + hitCount: Optional[int] = None + missedCount: Optional[int] = None + utteranceFirstRecordedInAggregationDuration: Optional[datetime] = None + utteranceLastRecordedInAggregationDuration: Optional[datetime] = None + containsDataFromDeletedResources: Optional[bool] = None + +class AllowedInputTypesTypeDef(BaseModel): + allowAudioInput: bool + allowDTMFInput: bool + +class AnalyticsBinBySpecificationTypeDef(BaseModel): + name: AnalyticsBinByNameType + interval: AnalyticsIntervalType + order: Optional[AnalyticsSortOrderType] = None + +class AnalyticsBinKeyTypeDef(BaseModel): + name: Optional[AnalyticsBinByNameType] = None + value: Optional[int] = None + +class AnalyticsIntentFilterTypeDef(BaseModel): + name: AnalyticsIntentFilterNameType + operator: AnalyticsFilterOperatorType + values: Sequence[str] + +class AnalyticsIntentGroupByKeyTypeDef(BaseModel): + name: Optional[AnalyticsIntentFieldType] = None + value: Optional[str] = None + +class AnalyticsIntentGroupBySpecificationTypeDef(BaseModel): + name: AnalyticsIntentFieldType + +class AnalyticsIntentMetricResultTypeDef(BaseModel): + name: Optional[AnalyticsIntentMetricNameType] = None + statistic: Optional[AnalyticsMetricStatisticType] = None + value: Optional[float] = None + +class AnalyticsIntentMetricTypeDef(BaseModel): + name: AnalyticsIntentMetricNameType + statistic: AnalyticsMetricStatisticType + order: Optional[AnalyticsSortOrderType] = None + +class AnalyticsIntentNodeSummaryTypeDef(BaseModel): + intentName: Optional[str] = None + intentPath: Optional[str] = None + intentCount: Optional[int] = None + intentLevel: Optional[int] = None + nodeType: Optional[AnalyticsNodeTypeType] = None + +class AnalyticsIntentStageFilterTypeDef(BaseModel): + name: AnalyticsIntentStageFilterNameType + operator: AnalyticsFilterOperatorType + values: Sequence[str] + +class AnalyticsIntentStageGroupByKeyTypeDef(BaseModel): + name: Optional[AnalyticsIntentStageFieldType] = None + value: Optional[str] = None + +class AnalyticsIntentStageGroupBySpecificationTypeDef(BaseModel): + name: AnalyticsIntentStageFieldType + +class AnalyticsIntentStageMetricResultTypeDef(BaseModel): + name: Optional[AnalyticsIntentStageMetricNameType] = None + statistic: Optional[AnalyticsMetricStatisticType] = None + value: Optional[float] = None + +class AnalyticsIntentStageMetricTypeDef(BaseModel): + name: AnalyticsIntentStageMetricNameType + statistic: AnalyticsMetricStatisticType + order: Optional[AnalyticsSortOrderType] = None + +class AnalyticsPathFilterTypeDef(BaseModel): + name: AnalyticsCommonFilterNameType + operator: AnalyticsFilterOperatorType + values: Sequence[str] + +class AnalyticsSessionFilterTypeDef(BaseModel): + name: AnalyticsSessionFilterNameType + operator: AnalyticsFilterOperatorType + values: Sequence[str] + +class AnalyticsSessionGroupByKeyTypeDef(BaseModel): + name: Optional[AnalyticsSessionFieldType] = None + value: Optional[str] = None + +class AnalyticsSessionGroupBySpecificationTypeDef(BaseModel): + name: AnalyticsSessionFieldType + +class AnalyticsSessionMetricResultTypeDef(BaseModel): + name: Optional[AnalyticsSessionMetricNameType] = None + statistic: Optional[AnalyticsMetricStatisticType] = None + value: Optional[float] = None + +class AnalyticsSessionMetricTypeDef(BaseModel): + name: AnalyticsSessionMetricNameType + statistic: AnalyticsMetricStatisticType + order: Optional[AnalyticsSortOrderType] = None + +class AnalyticsUtteranceAttributeResultTypeDef(BaseModel): + lastUsedIntent: Optional[str] = None + +class AnalyticsUtteranceAttributeTypeDef(BaseModel): + name: Literal["LastUsedIntent"] + +class AnalyticsUtteranceFilterTypeDef(BaseModel): + name: AnalyticsUtteranceFilterNameType + operator: AnalyticsFilterOperatorType + values: Sequence[str] + +class AnalyticsUtteranceGroupByKeyTypeDef(BaseModel): + name: Optional[AnalyticsUtteranceFieldType] = None + value: Optional[str] = None + +class AnalyticsUtteranceGroupBySpecificationTypeDef(BaseModel): + name: AnalyticsUtteranceFieldType + +class AnalyticsUtteranceMetricResultTypeDef(BaseModel): + name: Optional[AnalyticsUtteranceMetricNameType] = None + statistic: Optional[AnalyticsMetricStatisticType] = None + value: Optional[float] = None + +class AnalyticsUtteranceMetricTypeDef(BaseModel): + name: AnalyticsUtteranceMetricNameType + statistic: AnalyticsMetricStatisticType + order: Optional[AnalyticsSortOrderType] = None + +class AssociatedTranscriptFilterTypeDef(BaseModel): + name: AssociatedTranscriptFilterNameType + values: Sequence[str] + +class AssociatedTranscriptTypeDef(BaseModel): + transcript: Optional[str] = None + +class AudioSpecificationTypeDef(BaseModel): + maxLengthMs: int + endTimeoutMs: int + +class DTMFSpecificationTypeDef(BaseModel): + maxLength: int + endTimeoutMs: int + deletionCharacter: str + endCharacter: str + +class S3BucketLogDestinationTypeDef(BaseModel): + s3BucketArn: str + logPrefix: str + kmsKeyArn: Optional[str] = None + +class NewCustomVocabularyItemTypeDef(BaseModel): + phrase: str + weight: Optional[int] = None + displayAs: Optional[str] = None + +class CustomVocabularyItemTypeDef(BaseModel): + itemId: str + phrase: str + weight: Optional[int] = None + displayAs: Optional[str] = None + +class FailedCustomVocabularyItemTypeDef(BaseModel): + itemId: Optional[str] = None + errorMessage: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CustomVocabularyEntryIdTypeDef(BaseModel): + itemId: str + +class BedrockKnowledgeStoreConfigurationTypeDef(BaseModel): + bedrockKnowledgeBaseArn: str + +class BedrockModelSpecificationTypeDef(BaseModel): + modelArn: str + +class BotAliasHistoryEventTypeDef(BaseModel): + botVersion: Optional[str] = None + startDate: Optional[datetime] = None + endDate: Optional[datetime] = None + +class BotAliasReplicaSummaryTypeDef(BaseModel): + botAliasId: Optional[str] = None + botAliasReplicationStatus: Optional[BotAliasReplicationStatusType] = None + botVersion: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReasons: Optional[List[str]] = None + +class BotAliasSummaryTypeDef(BaseModel): + botAliasId: Optional[str] = None + botAliasName: Optional[str] = None + description: Optional[str] = None + botVersion: Optional[str] = None + botAliasStatus: Optional[BotAliasStatusType] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class BotAliasTestExecutionTargetTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + +class BotExportSpecificationTypeDef(BaseModel): + botId: str + botVersion: str + +class BotFilterTypeDef(BaseModel): + name: BotFilterNameType + values: Sequence[str] + operator: BotFilterOperatorType + +class DataPrivacyTypeDef(BaseModel): + childDirected: bool + +class BotLocaleExportSpecificationTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class BotLocaleFilterTypeDef(BaseModel): + name: Literal["BotLocaleName"] + values: Sequence[str] + operator: BotLocaleFilterOperatorType + +class BotLocaleHistoryEventTypeDef(BaseModel): + event: str + eventDate: datetime + +class VoiceSettingsTypeDef(BaseModel): + voiceId: str + engine: Optional[VoiceEngineType] = None + +class BotLocaleSortByTypeDef(BaseModel): + attribute: Literal["BotLocaleName"] + order: SortOrderType + +class BotLocaleSummaryTypeDef(BaseModel): + localeId: Optional[str] = None + localeName: Optional[str] = None + description: Optional[str] = None + botLocaleStatus: Optional[BotLocaleStatusType] = None + lastUpdatedDateTime: Optional[datetime] = None + lastBuildSubmittedDateTime: Optional[datetime] = None + +class BotMemberTypeDef(BaseModel): + botMemberId: str + botMemberName: str + botMemberAliasId: str + botMemberAliasName: str + botMemberVersion: str + +class IntentStatisticsTypeDef(BaseModel): + discoveredIntentCount: Optional[int] = None + +class SlotTypeStatisticsTypeDef(BaseModel): + discoveredSlotTypeCount: Optional[int] = None + +class BotRecommendationSummaryTypeDef(BaseModel): + botRecommendationStatus: BotRecommendationStatusType + botRecommendationId: str + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class BotReplicaSummaryTypeDef(BaseModel): + replicaRegion: Optional[str] = None + creationDateTime: Optional[datetime] = None + botReplicaStatus: Optional[BotReplicaStatusType] = None + failureReasons: Optional[List[str]] = None + +class BotSortByTypeDef(BaseModel): + attribute: Literal["BotName"] + order: SortOrderType + +class BotSummaryTypeDef(BaseModel): + botId: Optional[str] = None + botName: Optional[str] = None + description: Optional[str] = None + botStatus: Optional[BotStatusType] = None + latestBotVersion: Optional[str] = None + lastUpdatedDateTime: Optional[datetime] = None + botType: Optional[BotTypeType] = None + +class BotVersionLocaleDetailsTypeDef(BaseModel): + sourceBotVersion: str + +class BotVersionReplicaSortByTypeDef(BaseModel): + attribute: Literal["BotVersion"] + order: SortOrderType + +class BotVersionReplicaSummaryTypeDef(BaseModel): + botVersion: Optional[str] = None + botVersionReplicationStatus: Optional[BotVersionReplicationStatusType] = None + creationDateTime: Optional[datetime] = None + failureReasons: Optional[List[str]] = None + +class BotVersionSortByTypeDef(BaseModel): + attribute: Literal["BotVersion"] + order: SortOrderType + +class BotVersionSummaryTypeDef(BaseModel): + botName: Optional[str] = None + botVersion: Optional[str] = None + description: Optional[str] = None + botStatus: Optional[BotStatusType] = None + creationDateTime: Optional[datetime] = None + +class BuildBotLocaleRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class BuiltInIntentSortByTypeDef(BaseModel): + attribute: Literal["IntentSignature"] + order: SortOrderType + +class BuiltInIntentSummaryTypeDef(BaseModel): + intentSignature: Optional[str] = None + description: Optional[str] = None + +class BuiltInSlotTypeSortByTypeDef(BaseModel): + attribute: Literal["SlotTypeSignature"] + order: SortOrderType + +class BuiltInSlotTypeSummaryTypeDef(BaseModel): + slotTypeSignature: Optional[str] = None + description: Optional[str] = None + +class ButtonTypeDef(BaseModel): + text: str + value: str + +class CloudWatchLogGroupLogDestinationTypeDef(BaseModel): + cloudWatchLogGroupArn: str + logPrefix: str + +class LambdaCodeHookTypeDef(BaseModel): + lambdaARN: str + codeHookInterfaceVersion: str + +class SubSlotTypeCompositionTypeDef(BaseModel): + name: str + slotTypeId: str + +class ConditionTypeDef(BaseModel): + expressionString: str + +class ConversationLevelIntentClassificationResultItemTypeDef(BaseModel): + intentName: str + matchResult: TestResultMatchStatusType + +class ConversationLevelResultDetailTypeDef(BaseModel): + endToEndResult: TestResultMatchStatusType + speechTranscriptionResult: Optional[TestResultMatchStatusType] = None + +class ConversationLevelSlotResolutionResultItemTypeDef(BaseModel): + intentName: str + slotName: str + matchResult: TestResultMatchStatusType + +class ConversationLevelTestResultsFilterByTypeDef(BaseModel): + endToEndResult: Optional[TestResultMatchStatusType] = None + +class ConversationLogsDataSourceFilterByTypeDef(BaseModel): + startTime: datetime + endTime: datetime + inputMode: ConversationLogsInputModeFilterType + +class SentimentAnalysisSettingsTypeDef(BaseModel): + detectSentiment: bool + +class CreateBotReplicaRequestRequestTypeDef(BaseModel): + botId: str + replicaRegion: str + +class DialogCodeHookSettingsTypeDef(BaseModel): + enabled: bool + +class InputContextTypeDef(BaseModel): + name: str + +class KendraConfigurationTypeDef(BaseModel): + kendraIndex: str + queryFilterStringEnabled: Optional[bool] = None + queryFilterString: Optional[str] = None + +class OutputContextTypeDef(BaseModel): + name: str + timeToLiveInSeconds: int + turnsToLive: int + +class SampleUtteranceTypeDef(BaseModel): + utterance: str + +class CreateResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + policy: str + +class PrincipalTypeDef(BaseModel): + service: Optional[str] = None + arn: Optional[str] = None + +class MultipleValuesSettingTypeDef(BaseModel): + allowMultipleValues: Optional[bool] = None + +class ObfuscationSettingTypeDef(BaseModel): + obfuscationSettingType: ObfuscationSettingTypeType + +class CustomPayloadTypeDef(BaseModel): + value: str + +class CustomVocabularyExportSpecificationTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class CustomVocabularyImportSpecificationTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class QnAKendraConfigurationTypeDef(BaseModel): + kendraIndex: str + queryFilterStringEnabled: Optional[bool] = None + queryFilterString: Optional[str] = None + exactResponse: Optional[bool] = None + +class DateRangeFilterTypeDef(BaseModel): + startDateTime: datetime + endDateTime: datetime + +class DeleteBotAliasRequestRequestTypeDef(BaseModel): + botAliasId: str + botId: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteBotLocaleRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class DeleteBotReplicaRequestRequestTypeDef(BaseModel): + botId: str + replicaRegion: str + +class DeleteBotRequestRequestTypeDef(BaseModel): + botId: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteBotVersionRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteCustomVocabularyRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class DeleteExportRequestRequestTypeDef(BaseModel): + exportId: str + +class DeleteImportRequestRequestTypeDef(BaseModel): + importId: str + +class DeleteIntentRequestRequestTypeDef(BaseModel): + intentId: str + botId: str + botVersion: str + localeId: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + expectedRevisionId: Optional[str] = None + +class DeleteResourcePolicyStatementRequestRequestTypeDef(BaseModel): + resourceArn: str + statementId: str + expectedRevisionId: Optional[str] = None + +class DeleteSlotRequestRequestTypeDef(BaseModel): + slotId: str + botId: str + botVersion: str + localeId: str + intentId: str + +class DeleteSlotTypeRequestRequestTypeDef(BaseModel): + slotTypeId: str + botId: str + botVersion: str + localeId: str + skipResourceInUseCheck: Optional[bool] = None + +class DeleteTestSetRequestRequestTypeDef(BaseModel): + testSetId: str + +class DeleteUtterancesRequestRequestTypeDef(BaseModel): + botId: str + localeId: Optional[str] = None + sessionId: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeBotAliasRequestRequestTypeDef(BaseModel): + botAliasId: str + botId: str + +class ParentBotNetworkTypeDef(BaseModel): + botId: str + botVersion: str + +class DescribeBotLocaleRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class DescribeBotRecommendationRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + +class EncryptionSettingTypeDef(BaseModel): + kmsKeyArn: Optional[str] = None + botLocaleExportPassword: Optional[str] = None + associatedTranscriptsPassword: Optional[str] = None + +class DescribeBotReplicaRequestRequestTypeDef(BaseModel): + botId: str + replicaRegion: str + +class DescribeBotRequestRequestTypeDef(BaseModel): + botId: str + +class DescribeBotResourceGenerationRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + generationId: str + +class DescribeBotVersionRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + +class DescribeCustomVocabularyMetadataRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + +class DescribeExportRequestRequestTypeDef(BaseModel): + exportId: str + +class DescribeImportRequestRequestTypeDef(BaseModel): + importId: str + +class DescribeIntentRequestRequestTypeDef(BaseModel): + intentId: str + botId: str + botVersion: str + localeId: str + +class SlotPriorityTypeDef(BaseModel): + priority: int + slotId: str + +class DescribeResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + +class DescribeSlotRequestRequestTypeDef(BaseModel): + slotId: str + botId: str + botVersion: str + localeId: str + intentId: str + +class DescribeSlotTypeRequestRequestTypeDef(BaseModel): + slotTypeId: str + botId: str + botVersion: str + localeId: str + +class DescribeTestExecutionRequestRequestTypeDef(BaseModel): + testExecutionId: str + +class DescribeTestSetDiscrepancyReportRequestRequestTypeDef(BaseModel): + testSetDiscrepancyReportId: str + +class DescribeTestSetGenerationRequestRequestTypeDef(BaseModel): + testSetGenerationId: str + +class TestSetStorageLocationTypeDef(BaseModel): + s3BucketName: str + s3Path: str + kmsKeyArn: Optional[str] = None + +class DescribeTestSetRequestRequestTypeDef(BaseModel): + testSetId: str + +class DialogActionTypeDef(BaseModel): + type: DialogActionTypeType + slotToElicit: Optional[str] = None + suppressNextMessage: Optional[bool] = None + +class IntentOverrideTypeDef(BaseModel): + name: Optional[str] = None + slots: Optional[Mapping[str, "SlotValueOverrideTypeDef"]] = None + +class ElicitationCodeHookInvocationSettingTypeDef(BaseModel): + enableCodeHookInvocation: bool + invocationLabel: Optional[str] = None + +class ExactResponseFieldsTypeDef(BaseModel): + questionField: str + answerField: str + +class ExportFilterTypeDef(BaseModel): + name: Literal["ExportResourceType"] + values: Sequence[str] + operator: ExportFilterOperatorType + +class TestSetExportSpecificationTypeDef(BaseModel): + testSetId: str + +class ExportSortByTypeDef(BaseModel): + attribute: Literal["LastUpdatedDateTime"] + order: SortOrderType + +class GenerateBotElementRequestRequestTypeDef(BaseModel): + intentId: str + botId: str + botVersion: str + localeId: str + +class GenerationSortByTypeDef(BaseModel): + attribute: GenerationSortByAttributeType + order: SortOrderType + +class GenerationSummaryTypeDef(BaseModel): + generationId: Optional[str] = None + generationStatus: Optional[GenerationStatusType] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class GetTestExecutionArtifactsUrlRequestRequestTypeDef(BaseModel): + testExecutionId: str + +class GrammarSlotTypeSourceTypeDef(BaseModel): + s3BucketName: str + s3ObjectKey: str + kmsKeyArn: Optional[str] = None + +class ImportFilterTypeDef(BaseModel): + name: Literal["ImportResourceType"] + values: Sequence[str] + operator: ImportFilterOperatorType + +class ImportSortByTypeDef(BaseModel): + attribute: Literal["LastUpdatedDateTime"] + order: SortOrderType + +class ImportSummaryTypeDef(BaseModel): + importId: Optional[str] = None + importedResourceId: Optional[str] = None + importedResourceName: Optional[str] = None + importStatus: Optional[ImportStatusType] = None + mergeStrategy: Optional[MergeStrategyType] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + importedResourceType: Optional[ImportResourceTypeType] = None + +class RuntimeHintsTypeDef(BaseModel): + slotHints: Optional[Dict[str, Dict[str, "RuntimeHintDetailsTypeDef"]]] = None + +class IntentClassificationTestResultItemCountsTypeDef(BaseModel): + totalResultCount: int + intentMatchResultCounts: Dict[TestResultMatchStatusType, int] + speechTranscriptionResultCounts: Optional[Dict[TestResultMatchStatusType, int]] = None + +class IntentFilterTypeDef(BaseModel): + name: Literal["IntentName"] + values: Sequence[str] + operator: IntentFilterOperatorType + +class IntentSortByTypeDef(BaseModel): + attribute: IntentSortAttributeType + order: SortOrderType + +class InvokedIntentSampleTypeDef(BaseModel): + intentName: Optional[str] = None + +class ListBotAliasReplicasRequestRequestTypeDef(BaseModel): + botId: str + replicaRegion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotAliasesRequestRequestTypeDef(BaseModel): + botId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotRecommendationsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotReplicasRequestRequestTypeDef(BaseModel): + botId: str + +class ListCustomVocabularyItemsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRecommendedIntentsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RecommendedIntentSummaryTypeDef(BaseModel): + intentId: Optional[str] = None + intentName: Optional[str] = None + sampleUtterancesCount: Optional[int] = None + +class SessionDataSortByTypeDef(BaseModel): + name: AnalyticsSessionSortByNameType + order: AnalyticsSortOrderType + +class SlotTypeFilterTypeDef(BaseModel): + name: SlotTypeFilterNameType + values: Sequence[str] + operator: SlotTypeFilterOperatorType + +class SlotTypeSortByTypeDef(BaseModel): + attribute: SlotTypeSortAttributeType + order: SortOrderType + +class SlotTypeSummaryTypeDef(BaseModel): + slotTypeId: Optional[str] = None + slotTypeName: Optional[str] = None + description: Optional[str] = None + parentSlotTypeSignature: Optional[str] = None + lastUpdatedDateTime: Optional[datetime] = None + slotTypeCategory: Optional[SlotTypeCategoryType] = None + +class SlotFilterTypeDef(BaseModel): + name: Literal["SlotName"] + values: Sequence[str] + operator: SlotFilterOperatorType + +class SlotSortByTypeDef(BaseModel): + attribute: SlotSortAttributeType + order: SortOrderType + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + +class TestExecutionSortByTypeDef(BaseModel): + attribute: TestExecutionSortAttributeType + order: SortOrderType + +class ListTestSetRecordsRequestRequestTypeDef(BaseModel): + testSetId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TestSetSortByTypeDef(BaseModel): + attribute: TestSetSortAttributeType + order: SortOrderType + +class UtteranceDataSortByTypeDef(BaseModel): + name: Literal["UtteranceTimestamp"] + order: AnalyticsSortOrderType + +class PlainTextMessageTypeDef(BaseModel): + value: str + +class SSMLMessageTypeDef(BaseModel): + value: str + +class OverallTestResultItemTypeDef(BaseModel): + multiTurnConversation: bool + totalResultCount: int + endToEndResultCounts: Dict[TestResultMatchStatusType, int] + speechTranscriptionResultCounts: Optional[Dict[TestResultMatchStatusType, int]] = None + +class PathFormatTypeDef(BaseModel): + objectPrefixes: Optional[List[str]] = None + +class TextInputSpecificationTypeDef(BaseModel): + startTimeoutMs: int + +class RelativeAggregationDurationTypeDef(BaseModel): + timeDimension: TimeDimensionType + timeValue: int + +class RuntimeHintValueTypeDef(BaseModel): + phrase: str + +class SampleValueTypeDef(BaseModel): + value: str + +class SlotDefaultValueTypeDef(BaseModel): + defaultValue: str + +class SlotResolutionSettingTypeDef(BaseModel): + slotResolutionStrategy: SlotResolutionStrategyType + +class SlotResolutionTestResultItemCountsTypeDef(BaseModel): + totalResultCount: int + slotMatchResultCounts: Dict[TestResultMatchStatusType, int] + speechTranscriptionResultCounts: Optional[Dict[TestResultMatchStatusType, int]] = None + +class SlotValueTypeDef(BaseModel): + interpretedValue: Optional[str] = None + +class SlotValueRegexFilterTypeDef(BaseModel): + pattern: str + +class StartBotResourceGenerationRequestRequestTypeDef(BaseModel): + generationInputPrompt: str + botId: str + botVersion: str + localeId: str + +class StopBotRecommendationRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tags: Mapping[str, str] + +class TestSetIntentDiscrepancyItemTypeDef(BaseModel): + intentName: str + errorMessage: str + +class TestSetSlotDiscrepancyItemTypeDef(BaseModel): + intentName: str + slotName: str + errorMessage: str + +class TestSetDiscrepancyReportBotAliasTargetTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + +class TestSetImportInputLocationTypeDef(BaseModel): + s3BucketName: str + s3Path: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tagKeys: Sequence[str] + +class UpdateExportRequestRequestTypeDef(BaseModel): + exportId: str + filePassword: Optional[str] = None + +class UpdateResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + policy: str + expectedRevisionId: Optional[str] = None + +class UpdateTestSetRequestRequestTypeDef(BaseModel): + testSetId: str + testSetName: str + description: Optional[str] = None + +class UserTurnIntentOutputTypeDef(BaseModel): + name: str + slots: Optional[Dict[str, "UserTurnSlotOutputTypeDef"]] = None + +class UserTurnSlotOutputTypeDef(BaseModel): + value: Optional[str] = None + values: Optional[List[Dict[str, Any]]] = None + subSlots: Optional[Dict[str, Dict[str, Any]]] = None + +class UtteranceAudioInputSpecificationTypeDef(BaseModel): + audioFileS3Location: str + +class AgentTurnResultTypeDef(BaseModel): + expectedAgentPrompt: str + actualAgentPrompt: Optional[str] = None + errorDetails: Optional[ExecutionErrorDetailsTypeDef] = None + actualElicitedSlot: Optional[str] = None + actualIntent: Optional[str] = None + +class AnalyticsIntentResultTypeDef(BaseModel): + binKeys: Optional[List[AnalyticsBinKeyTypeDef]] = None + groupByKeys: Optional[List[AnalyticsIntentGroupByKeyTypeDef]] = None + metricsResults: Optional[List[AnalyticsIntentMetricResultTypeDef]] = None + +class AnalyticsIntentStageResultTypeDef(BaseModel): + binKeys: Optional[List[AnalyticsBinKeyTypeDef]] = None + groupByKeys: Optional[List[AnalyticsIntentStageGroupByKeyTypeDef]] = None + metricsResults: Optional[List[AnalyticsIntentStageMetricResultTypeDef]] = None + +class AnalyticsSessionResultTypeDef(BaseModel): + binKeys: Optional[List[AnalyticsBinKeyTypeDef]] = None + groupByKeys: Optional[List[AnalyticsSessionGroupByKeyTypeDef]] = None + metricsResults: Optional[List[AnalyticsSessionMetricResultTypeDef]] = None + +class AnalyticsUtteranceResultTypeDef(BaseModel): + binKeys: Optional[List[AnalyticsBinKeyTypeDef]] = None + groupByKeys: Optional[List[AnalyticsUtteranceGroupByKeyTypeDef]] = None + metricsResults: Optional[List[AnalyticsUtteranceMetricResultTypeDef]] = None + attributeResults: Optional[List[AnalyticsUtteranceAttributeResultTypeDef]] = None + +class SearchAssociatedTranscriptsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + filters: Sequence[AssociatedTranscriptFilterTypeDef] + searchOrder: Optional[SearchOrderType] = None + maxResults: Optional[int] = None + nextIndex: Optional[int] = None + +class AudioAndDTMFInputSpecificationTypeDef(BaseModel): + startTimeoutMs: int + audioSpecification: Optional[AudioSpecificationTypeDef] = None + dtmfSpecification: Optional[DTMFSpecificationTypeDef] = None + +class AudioLogDestinationTypeDef(BaseModel): + s3Bucket: S3BucketLogDestinationTypeDef + +class BatchCreateCustomVocabularyItemRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + customVocabularyItemList: Sequence[NewCustomVocabularyItemTypeDef] + +class BatchUpdateCustomVocabularyItemRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + customVocabularyItemList: Sequence[CustomVocabularyItemTypeDef] + +class BatchCreateCustomVocabularyItemResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + errors: List[FailedCustomVocabularyItemTypeDef] + resources: List[CustomVocabularyItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteCustomVocabularyItemResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + errors: List[FailedCustomVocabularyItemTypeDef] + resources: List[CustomVocabularyItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateCustomVocabularyItemResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + errors: List[FailedCustomVocabularyItemTypeDef] + resources: List[CustomVocabularyItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BuildBotLocaleResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botLocaleStatus: BotLocaleStatusType + lastBuildSubmittedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBotReplicaResponseTypeDef(BaseModel): + botId: str + replicaRegion: str + sourceRegion: str + creationDateTime: datetime + botReplicaStatus: BotReplicaStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourcePolicyResponseTypeDef(BaseModel): + resourceArn: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourcePolicyStatementResponseTypeDef(BaseModel): + resourceArn: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUploadUrlResponseTypeDef(BaseModel): + importId: str + uploadUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBotAliasResponseTypeDef(BaseModel): + botAliasId: str + botId: str + botAliasStatus: BotAliasStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBotLocaleResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botLocaleStatus: BotLocaleStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBotReplicaResponseTypeDef(BaseModel): + botId: str + replicaRegion: str + botReplicaStatus: BotReplicaStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBotResponseTypeDef(BaseModel): + botId: str + botStatus: BotStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBotVersionResponseTypeDef(BaseModel): + botId: str + botVersion: str + botStatus: BotStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCustomVocabularyResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + customVocabularyStatus: CustomVocabularyStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteExportResponseTypeDef(BaseModel): + exportId: str + exportStatus: ExportStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImportResponseTypeDef(BaseModel): + importId: str + importStatus: ImportStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourcePolicyResponseTypeDef(BaseModel): + resourceArn: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourcePolicyStatementResponseTypeDef(BaseModel): + resourceArn: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBotReplicaResponseTypeDef(BaseModel): + botId: str + replicaRegion: str + sourceRegion: str + creationDateTime: datetime + botReplicaStatus: BotReplicaStatusType + failureReasons: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBotResourceGenerationResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + generationId: str + failureReasons: List[str] + generationStatus: GenerationStatusType + generationInputPrompt: str + generatedBotLocaleUrl: str + creationDateTime: datetime + modelArn: str + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCustomVocabularyMetadataResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + customVocabularyStatus: CustomVocabularyStatusType + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourcePolicyResponseTypeDef(BaseModel): + resourceArn: str + policy: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetTestExecutionArtifactsUrlResponseTypeDef(BaseModel): + testExecutionId: str + downloadArtifactsUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomVocabularyItemsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + customVocabularyItems: List[CustomVocabularyItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIntentPathsResponseTypeDef(BaseModel): + nodeSummaries: List[AnalyticsIntentNodeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchAssociatedTranscriptsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + nextIndex: int + associatedTranscripts: List[AssociatedTranscriptTypeDef] + totalResults: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartBotResourceGenerationResponseTypeDef(BaseModel): + generationInputPrompt: str + generationId: str + botId: str + botVersion: str + localeId: str + generationStatus: GenerationStatusType + creationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopBotRecommendationResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationStatus: BotRecommendationStatusType + botRecommendationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResourcePolicyResponseTypeDef(BaseModel): + resourceArn: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteCustomVocabularyItemRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + customVocabularyItemList: Sequence[CustomVocabularyEntryIdTypeDef] + +class DescriptiveBotBuilderSpecificationTypeDef(BaseModel): + enabled: bool + bedrockModelSpecification: Optional[BedrockModelSpecificationTypeDef] = None + +class SampleUtteranceGenerationSpecificationTypeDef(BaseModel): + enabled: bool + bedrockModelSpecification: Optional[BedrockModelSpecificationTypeDef] = None + +class SlotResolutionImprovementSpecificationTypeDef(BaseModel): + enabled: bool + bedrockModelSpecification: Optional[BedrockModelSpecificationTypeDef] = None + +class ListBotAliasReplicasResponseTypeDef(BaseModel): + botId: str + sourceRegion: str + replicaRegion: str + botAliasReplicaSummaries: List[BotAliasReplicaSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBotAliasesResponseTypeDef(BaseModel): + botAliasSummaries: List[BotAliasSummaryTypeDef] + nextToken: str + botId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestExecutionTargetTypeDef(BaseModel): + botAliasTarget: Optional[BotAliasTestExecutionTargetTypeDef] = None + +class BotImportSpecificationTypeDef(BaseModel): + botName: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: Optional[int] = None + botTags: Optional[Dict[str, str]] = None + testBotAliasTags: Optional[Dict[str, str]] = None + +class BotLocaleImportSpecificationTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + nluIntentConfidenceThreshold: Optional[float] = None + voiceSettings: Optional[VoiceSettingsTypeDef] = None + +class ListBotLocalesRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + sortBy: Optional[BotLocaleSortByTypeDef] = None + filters: Optional[Sequence[BotLocaleFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotLocalesResponseTypeDef(BaseModel): + botId: str + botVersion: str + nextToken: str + botLocaleSummaries: List[BotLocaleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBotRequestRequestTypeDef(BaseModel): + botName: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: int + description: Optional[str] = None + botTags: Optional[Mapping[str, str]] = None + testBotAliasTags: Optional[Mapping[str, str]] = None + botType: Optional[BotTypeType] = None + botMembers: Optional[Sequence[BotMemberTypeDef]] = None + +class CreateBotResponseTypeDef(BaseModel): + botId: str + botName: str + description: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: int + botStatus: BotStatusType + creationDateTime: datetime + botTags: Dict[str, str] + testBotAliasTags: Dict[str, str] + botType: BotTypeType + botMembers: List[BotMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBotResponseTypeDef(BaseModel): + botId: str + botName: str + description: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: int + botStatus: BotStatusType + creationDateTime: datetime + lastUpdatedDateTime: datetime + botType: BotTypeType + botMembers: List[BotMemberTypeDef] + failureReasons: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBotRequestRequestTypeDef(BaseModel): + botId: str + botName: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: int + description: Optional[str] = None + botType: Optional[BotTypeType] = None + botMembers: Optional[Sequence[BotMemberTypeDef]] = None + +class UpdateBotResponseTypeDef(BaseModel): + botId: str + botName: str + description: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: int + botStatus: BotStatusType + creationDateTime: datetime + lastUpdatedDateTime: datetime + botType: BotTypeType + botMembers: List[BotMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BotRecommendationResultStatisticsTypeDef(BaseModel): + intents: Optional[IntentStatisticsTypeDef] = None + slotTypes: Optional[SlotTypeStatisticsTypeDef] = None + +class ListBotRecommendationsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationSummaries: List[BotRecommendationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBotReplicasResponseTypeDef(BaseModel): + botId: str + sourceRegion: str + botReplicaSummaries: List[BotReplicaSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBotsRequestRequestTypeDef(BaseModel): + sortBy: Optional[BotSortByTypeDef] = None + filters: Optional[Sequence[BotFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotsResponseTypeDef(BaseModel): + botSummaries: List[BotSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBotVersionRequestRequestTypeDef(BaseModel): + botId: str + botVersionLocaleSpecification: Mapping[str, BotVersionLocaleDetailsTypeDef] + description: Optional[str] = None + +class CreateBotVersionResponseTypeDef(BaseModel): + botId: str + description: str + botVersion: str + botVersionLocaleSpecification: Dict[str, BotVersionLocaleDetailsTypeDef] + botStatus: BotStatusType + creationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListBotVersionReplicasRequestRequestTypeDef(BaseModel): + botId: str + replicaRegion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[BotVersionReplicaSortByTypeDef] = None + +class ListBotVersionReplicasResponseTypeDef(BaseModel): + botId: str + sourceRegion: str + replicaRegion: str + botVersionReplicaSummaries: List[BotVersionReplicaSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBotVersionsRequestRequestTypeDef(BaseModel): + botId: str + sortBy: Optional[BotVersionSortByTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotVersionsResponseTypeDef(BaseModel): + botId: str + botVersionSummaries: List[BotVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuiltInIntentsRequestRequestTypeDef(BaseModel): + localeId: str + sortBy: Optional[BuiltInIntentSortByTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBuiltInIntentsResponseTypeDef(BaseModel): + builtInIntentSummaries: List[BuiltInIntentSummaryTypeDef] + nextToken: str + localeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBuiltInSlotTypesRequestRequestTypeDef(BaseModel): + localeId: str + sortBy: Optional[BuiltInSlotTypeSortByTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBuiltInSlotTypesResponseTypeDef(BaseModel): + builtInSlotTypeSummaries: List[BuiltInSlotTypeSummaryTypeDef] + nextToken: str + localeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImageResponseCardTypeDef(BaseModel): + title: str + subtitle: Optional[str] = None + imageUrl: Optional[str] = None + buttons: Optional[Sequence[ButtonTypeDef]] = None + +class TextLogDestinationTypeDef(BaseModel): + cloudWatch: CloudWatchLogGroupLogDestinationTypeDef + +class CodeHookSpecificationTypeDef(BaseModel): + lambdaCodeHook: LambdaCodeHookTypeDef + +class CompositeSlotTypeSettingTypeDef(BaseModel): + subSlots: Optional[Sequence[SubSlotTypeCompositionTypeDef]] = None + +class ConversationLevelTestResultItemTypeDef(BaseModel): + conversationId: str + endToEndResult: TestResultMatchStatusType + intentClassificationResults: List[ConversationLevelIntentClassificationResultItemTypeDef] + slotResolutionResults: List[ConversationLevelSlotResolutionResultItemTypeDef] + speechTranscriptionResult: Optional[TestResultMatchStatusType] = None + +class TestExecutionResultFilterByTypeDef(BaseModel): + resultTypeFilter: TestResultTypeFilterType + conversationLevelTestResultsFilterBy: Optional[ ConversationLevelTestResultsFilterByTypeDef ] = None + +class ConversationLogsDataSourceTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + filter: ConversationLogsDataSourceFilterByTypeDef + +class IntentSummaryTypeDef(BaseModel): + intentId: Optional[str] = None + intentName: Optional[str] = None + description: Optional[str] = None + parentIntentSignature: Optional[str] = None + inputContexts: Optional[List[InputContextTypeDef]] = None + outputContexts: Optional[List[OutputContextTypeDef]] = None + lastUpdatedDateTime: Optional[datetime] = None + +class GenerateBotElementResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + intentId: str + sampleUtterances: List[SampleUtteranceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourcePolicyStatementRequestRequestTypeDef(BaseModel): + resourceArn: str + statementId: str + effect: EffectType + principal: Sequence[PrincipalTypeDef] + action: Sequence[str] + condition: Optional[Mapping[str, Mapping[str, str]]] = None + expectedRevisionId: Optional[str] = None + +class LexTranscriptFilterTypeDef(BaseModel): + dateRangeFilter: Optional[DateRangeFilterTypeDef] = None + +class DescribeBotAliasRequestBotAliasAvailableWaitTypeDef(BaseModel): + botAliasId: str + botId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBotLocaleRequestBotLocaleBuiltWaitTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBotLocaleRequestBotLocaleCreatedWaitTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBotLocaleRequestBotLocaleExpressTestingAvailableWaitTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBotRequestBotAvailableWaitTypeDef(BaseModel): + botId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBotVersionRequestBotVersionAvailableWaitTypeDef(BaseModel): + botId: str + botVersion: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeExportRequestBotExportCompletedWaitTypeDef(BaseModel): + exportId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImportRequestBotImportCompletedWaitTypeDef(BaseModel): + importId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBotVersionResponseTypeDef(BaseModel): + botId: str + botName: str + botVersion: str + description: str + roleArn: str + dataPrivacy: DataPrivacyTypeDef + idleSessionTTLInSeconds: int + botStatus: BotStatusType + failureReasons: List[str] + creationDateTime: datetime + parentBotNetworks: List[ParentBotNetworkTypeDef] + botType: BotTypeType + botMembers: List[BotMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBotRecommendationRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + encryptionSetting: EncryptionSettingTypeDef + +class DescribeTestSetResponseTypeDef(BaseModel): + testSetId: str + testSetName: str + description: str + modality: TestSetModalityType + status: TestSetStatusType + roleArn: str + numTurns: int + storageLocation: TestSetStorageLocationTypeDef + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TestSetSummaryTypeDef(BaseModel): + testSetId: Optional[str] = None + testSetName: Optional[str] = None + description: Optional[str] = None + modality: Optional[TestSetModalityType] = None + status: Optional[TestSetStatusType] = None + roleArn: Optional[str] = None + numTurns: Optional[int] = None + storageLocation: Optional[TestSetStorageLocationTypeDef] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class UpdateTestSetResponseTypeDef(BaseModel): + testSetId: str + testSetName: str + description: str + modality: TestSetModalityType + status: TestSetStatusType + roleArn: str + numTurns: int + storageLocation: TestSetStorageLocationTypeDef + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DialogStateTypeDef(BaseModel): + dialogAction: Optional[DialogActionTypeDef] = None + intent: Optional[IntentOverrideTypeDef] = None + sessionAttributes: Optional[Mapping[str, str]] = None + +class OpensearchConfigurationTypeDef(BaseModel): + domainEndpoint: str + indexName: str + exactResponse: Optional[bool] = None + exactResponseFields: Optional[ExactResponseFieldsTypeDef] = None + includeFields: Optional[Sequence[str]] = None + +class ExportResourceSpecificationTypeDef(BaseModel): + botExportSpecification: Optional[BotExportSpecificationTypeDef] = None + botLocaleExportSpecification: Optional[BotLocaleExportSpecificationTypeDef] = None + customVocabularyExportSpecification: Optional[ CustomVocabularyExportSpecificationTypeDef ] = None + testSetExportSpecification: Optional[TestSetExportSpecificationTypeDef] = None + +class ListExportsRequestRequestTypeDef(BaseModel): + botId: Optional[str] = None + botVersion: Optional[str] = None + sortBy: Optional[ExportSortByTypeDef] = None + filters: Optional[Sequence[ExportFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + localeId: Optional[str] = None + +class ListBotResourceGenerationsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + sortBy: Optional[GenerationSortByTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListBotResourceGenerationsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + generationSummaries: List[GenerationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GrammarSlotTypeSettingTypeDef(BaseModel): + source: Optional[GrammarSlotTypeSourceTypeDef] = None + +class ListImportsRequestRequestTypeDef(BaseModel): + botId: Optional[str] = None + botVersion: Optional[str] = None + sortBy: Optional[ImportSortByTypeDef] = None + filters: Optional[Sequence[ImportFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + localeId: Optional[str] = None + +class ListImportsResponseTypeDef(BaseModel): + botId: str + botVersion: str + importSummaries: List[ImportSummaryTypeDef] + nextToken: str + localeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class InputSessionStateSpecificationTypeDef(BaseModel): + sessionAttributes: Optional[Dict[str, str]] = None + activeContexts: Optional[List[ActiveContextTypeDef]] = None + runtimeHints: Optional[RuntimeHintsTypeDef] = None + +class IntentClassificationTestResultItemTypeDef(BaseModel): + intentName: str + multiTurnConversation: bool + resultCounts: IntentClassificationTestResultItemCountsTypeDef + +class ListIntentsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + sortBy: Optional[IntentSortByTypeDef] = None + filters: Optional[Sequence[IntentFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SessionSpecificationTypeDef(BaseModel): + botAliasId: Optional[str] = None + botVersion: Optional[str] = None + localeId: Optional[str] = None + channel: Optional[str] = None + sessionId: Optional[str] = None + conversationStartTime: Optional[datetime] = None + conversationEndTime: Optional[datetime] = None + conversationDurationSeconds: Optional[int] = None + conversationEndState: Optional[ConversationEndStateType] = None + mode: Optional[AnalyticsModalityType] = None + numberOfTurns: Optional[int] = None + invokedIntentSamples: Optional[List[InvokedIntentSampleTypeDef]] = None + originatingRequestId: Optional[str] = None + +class ListIntentMetricsRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + metrics: Sequence[AnalyticsIntentMetricTypeDef] + binBy: Optional[Sequence[AnalyticsBinBySpecificationTypeDef]] = None + groupBy: Optional[Sequence[AnalyticsIntentGroupBySpecificationTypeDef]] = None + filters: Optional[Sequence[AnalyticsIntentFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIntentPathsRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + intentPath: str + filters: Optional[Sequence[AnalyticsPathFilterTypeDef]] = None + +class ListIntentStageMetricsRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + metrics: Sequence[AnalyticsIntentStageMetricTypeDef] + binBy: Optional[Sequence[AnalyticsBinBySpecificationTypeDef]] = None + groupBy: Optional[Sequence[AnalyticsIntentStageGroupBySpecificationTypeDef]] = None + filters: Optional[Sequence[AnalyticsIntentStageFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSessionMetricsRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + metrics: Sequence[AnalyticsSessionMetricTypeDef] + binBy: Optional[Sequence[AnalyticsBinBySpecificationTypeDef]] = None + groupBy: Optional[Sequence[AnalyticsSessionGroupBySpecificationTypeDef]] = None + filters: Optional[Sequence[AnalyticsSessionFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListUtteranceMetricsRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + metrics: Sequence[AnalyticsUtteranceMetricTypeDef] + binBy: Optional[Sequence[AnalyticsBinBySpecificationTypeDef]] = None + groupBy: Optional[Sequence[AnalyticsUtteranceGroupBySpecificationTypeDef]] = None + attributes: Optional[Sequence[AnalyticsUtteranceAttributeTypeDef]] = None + filters: Optional[Sequence[AnalyticsUtteranceFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRecommendedIntentsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationId: str + summaryList: List[RecommendedIntentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSessionAnalyticsDataRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + sortBy: Optional[SessionDataSortByTypeDef] = None + filters: Optional[Sequence[AnalyticsSessionFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSlotTypesRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + sortBy: Optional[SlotTypeSortByTypeDef] = None + filters: Optional[Sequence[SlotTypeFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSlotTypesResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + slotTypeSummaries: List[SlotTypeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSlotsRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + intentId: str + sortBy: Optional[SlotSortByTypeDef] = None + filters: Optional[Sequence[SlotFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTestExecutionsRequestRequestTypeDef(BaseModel): + sortBy: Optional[TestExecutionSortByTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTestSetsRequestRequestTypeDef(BaseModel): + sortBy: Optional[TestSetSortByTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListUtteranceAnalyticsDataRequestRequestTypeDef(BaseModel): + botId: str + startDateTime: TimestampTypeDef + endDateTime: TimestampTypeDef + sortBy: Optional[UtteranceDataSortByTypeDef] = None + filters: Optional[Sequence[AnalyticsUtteranceFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class OverallTestResultsTypeDef(BaseModel): + items: List[OverallTestResultItemTypeDef] + +class UtteranceAggregationDurationTypeDef(BaseModel): + relativeAggregationDuration: RelativeAggregationDurationTypeDef + +class RuntimeHintDetailsTypeDef(BaseModel): + runtimeHintValues: Optional[List[RuntimeHintValueTypeDef]] = None + subSlotHints: Optional[Dict[str, Dict[str, Any]]] = None + +class SlotTypeValueTypeDef(BaseModel): + sampleValue: Optional[SampleValueTypeDef] = None + synonyms: Optional[Sequence[SampleValueTypeDef]] = None + +class SlotDefaultValueSpecificationTypeDef(BaseModel): + defaultValueList: Sequence[SlotDefaultValueTypeDef] + +class SlotResolutionTestResultItemTypeDef(BaseModel): + slotName: str + resultCounts: SlotResolutionTestResultItemCountsTypeDef + +class SlotValueOverrideTypeDef(BaseModel): + shape: Optional[SlotShapeType] = None + value: Optional[SlotValueTypeDef] = None + values: Optional[Sequence[Dict[str, Any]]] = None + +class SlotValueSelectionSettingTypeDef(BaseModel): + resolutionStrategy: SlotValueResolutionStrategyType + regexFilter: Optional[SlotValueRegexFilterTypeDef] = None + advancedRecognitionSetting: Optional[AdvancedRecognitionSettingTypeDef] = None + +class TestSetDiscrepancyErrorsTypeDef(BaseModel): + intentDiscrepancies: List[TestSetIntentDiscrepancyItemTypeDef] + slotDiscrepancies: List[TestSetSlotDiscrepancyItemTypeDef] + +class TestSetDiscrepancyReportResourceTargetTypeDef(BaseModel): + botAliasTarget: Optional[TestSetDiscrepancyReportBotAliasTargetTypeDef] = None + +class TestSetImportResourceSpecificationTypeDef(BaseModel): + testSetName: str + roleArn: str + storageLocation: TestSetStorageLocationTypeDef + importInputLocation: TestSetImportInputLocationTypeDef + modality: TestSetModalityType + description: Optional[str] = None + testSetTags: Optional[Dict[str, str]] = None + +class UserTurnOutputSpecificationTypeDef(BaseModel): + intent: UserTurnIntentOutputTypeDef + activeContexts: Optional[List[ActiveContextTypeDef]] = None + transcript: Optional[str] = None + +class UtteranceInputSpecificationTypeDef(BaseModel): + textInput: Optional[str] = None + audioInput: Optional[UtteranceAudioInputSpecificationTypeDef] = None + +class ListIntentMetricsResponseTypeDef(BaseModel): + botId: str + results: List[AnalyticsIntentResultTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIntentStageMetricsResponseTypeDef(BaseModel): + botId: str + results: List[AnalyticsIntentStageResultTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSessionMetricsResponseTypeDef(BaseModel): + botId: str + results: List[AnalyticsSessionResultTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUtteranceMetricsResponseTypeDef(BaseModel): + botId: str + results: List[AnalyticsUtteranceResultTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PromptAttemptSpecificationTypeDef(BaseModel): + allowedInputTypes: AllowedInputTypesTypeDef + allowInterrupt: Optional[bool] = None + audioAndDTMFInputSpecification: Optional[AudioAndDTMFInputSpecificationTypeDef] = None + textInputSpecification: Optional[TextInputSpecificationTypeDef] = None + +class AudioLogSettingTypeDef(BaseModel): + enabled: bool + destination: AudioLogDestinationTypeDef + selectiveLoggingEnabled: Optional[bool] = None + +class BuildtimeSettingsTypeDef(BaseModel): + descriptiveBotBuilder: Optional[DescriptiveBotBuilderSpecificationTypeDef] = None + sampleUtteranceGeneration: Optional[SampleUtteranceGenerationSpecificationTypeDef] = None + +class RuntimeSettingsTypeDef(BaseModel): + slotResolutionImprovement: Optional[SlotResolutionImprovementSpecificationTypeDef] = None + +class DescribeTestExecutionResponseTypeDef(BaseModel): + testExecutionId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + testExecutionStatus: TestExecutionStatusType + testSetId: str + testSetName: str + target: TestExecutionTargetTypeDef + apiMode: TestExecutionApiModeType + testExecutionModality: TestExecutionModalityType + failureReasons: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartTestExecutionRequestRequestTypeDef(BaseModel): + testSetId: str + target: TestExecutionTargetTypeDef + apiMode: TestExecutionApiModeType + testExecutionModality: Optional[TestExecutionModalityType] = None + +class StartTestExecutionResponseTypeDef(BaseModel): + testExecutionId: str + creationDateTime: datetime + testSetId: str + target: TestExecutionTargetTypeDef + apiMode: TestExecutionApiModeType + testExecutionModality: TestExecutionModalityType + ResponseMetadata: ResponseMetadataTypeDef + +class TestExecutionSummaryTypeDef(BaseModel): + testExecutionId: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + testExecutionStatus: Optional[TestExecutionStatusType] = None + testSetId: Optional[str] = None + testSetName: Optional[str] = None + target: Optional[TestExecutionTargetTypeDef] = None + apiMode: Optional[TestExecutionApiModeType] = None + testExecutionModality: Optional[TestExecutionModalityType] = None + +class BotRecommendationResultsTypeDef(BaseModel): + botLocaleExportUrl: Optional[str] = None + associatedTranscriptsUrl: Optional[str] = None + statistics: Optional[BotRecommendationResultStatisticsTypeDef] = None + +class MessageTypeDef(BaseModel): + plainTextMessage: Optional[PlainTextMessageTypeDef] = None + customPayload: Optional[CustomPayloadTypeDef] = None + ssmlMessage: Optional[SSMLMessageTypeDef] = None + imageResponseCard: Optional[ImageResponseCardTypeDef] = None + +class UtteranceBotResponseTypeDef(BaseModel): + content: Optional[str] = None + contentType: Optional[UtteranceContentTypeType] = None + imageResponseCard: Optional[ImageResponseCardTypeDef] = None + +class TextLogSettingTypeDef(BaseModel): + enabled: bool + destination: TextLogDestinationTypeDef + selectiveLoggingEnabled: Optional[bool] = None + +class BotAliasLocaleSettingsTypeDef(BaseModel): + enabled: bool + codeHookSpecification: Optional[CodeHookSpecificationTypeDef] = None + +class ConversationLevelTestResultsTypeDef(BaseModel): + items: List[ConversationLevelTestResultItemTypeDef] + +class ListTestExecutionResultItemsRequestRequestTypeDef(BaseModel): + testExecutionId: str + resultFilterBy: TestExecutionResultFilterByTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TestSetGenerationDataSourceTypeDef(BaseModel): + conversationLogsDataSource: Optional[ConversationLogsDataSourceTypeDef] = None + +class ListIntentsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + intentSummaries: List[IntentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TranscriptFilterTypeDef(BaseModel): + lexTranscriptFilter: Optional[LexTranscriptFilterTypeDef] = None + +class ListTestSetsResponseTypeDef(BaseModel): + testSets: List[TestSetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceConfigurationTypeDef(BaseModel): + opensearchConfiguration: Optional[OpensearchConfigurationTypeDef] = None + kendraConfiguration: Optional[QnAKendraConfigurationTypeDef] = None + bedrockKnowledgeStoreConfiguration: Optional[ BedrockKnowledgeStoreConfigurationTypeDef ] = None + +class CreateExportRequestRequestTypeDef(BaseModel): + resourceSpecification: ExportResourceSpecificationTypeDef + fileFormat: ImportExportFileFormatType + filePassword: Optional[str] = None + +class CreateExportResponseTypeDef(BaseModel): + exportId: str + resourceSpecification: ExportResourceSpecificationTypeDef + fileFormat: ImportExportFileFormatType + exportStatus: ExportStatusType + creationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExportResponseTypeDef(BaseModel): + exportId: str + resourceSpecification: ExportResourceSpecificationTypeDef + fileFormat: ImportExportFileFormatType + exportStatus: ExportStatusType + failureReasons: List[str] + downloadUrl: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ExportSummaryTypeDef(BaseModel): + exportId: Optional[str] = None + resourceSpecification: Optional[ExportResourceSpecificationTypeDef] = None + fileFormat: Optional[ImportExportFileFormatType] = None + exportStatus: Optional[ExportStatusType] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class UpdateExportResponseTypeDef(BaseModel): + exportId: str + resourceSpecification: ExportResourceSpecificationTypeDef + fileFormat: ImportExportFileFormatType + exportStatus: ExportStatusType + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ExternalSourceSettingTypeDef(BaseModel): + grammarSlotTypeSetting: Optional[GrammarSlotTypeSettingTypeDef] = None + +class IntentClassificationTestResultsTypeDef(BaseModel): + items: List[IntentClassificationTestResultItemTypeDef] + +class ListSessionAnalyticsDataResponseTypeDef(BaseModel): + botId: str + nextToken: str + sessions: List[SessionSpecificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAggregatedUtterancesRequestRequestTypeDef(BaseModel): + botId: str + localeId: str + aggregationDuration: UtteranceAggregationDurationTypeDef + botAliasId: Optional[str] = None + botVersion: Optional[str] = None + sortBy: Optional[AggregatedUtterancesSortByTypeDef] = None + filters: Optional[Sequence[AggregatedUtterancesFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAggregatedUtterancesResponseTypeDef(BaseModel): + botId: str + botAliasId: str + botVersion: str + localeId: str + aggregationDuration: UtteranceAggregationDurationTypeDef + aggregationWindowStartTime: datetime + aggregationWindowEndTime: datetime + aggregationLastRefreshedDateTime: datetime + aggregatedUtterancesSummaries: List[AggregatedUtterancesSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IntentLevelSlotResolutionTestResultItemTypeDef(BaseModel): + intentName: str + multiTurnConversation: bool + slotResolutionResults: List[SlotResolutionTestResultItemTypeDef] + +class CreateTestSetDiscrepancyReportRequestRequestTypeDef(BaseModel): + testSetId: str + target: TestSetDiscrepancyReportResourceTargetTypeDef + +class CreateTestSetDiscrepancyReportResponseTypeDef(BaseModel): + testSetDiscrepancyReportId: str + creationDateTime: datetime + testSetId: str + target: TestSetDiscrepancyReportResourceTargetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTestSetDiscrepancyReportResponseTypeDef(BaseModel): + testSetDiscrepancyReportId: str + testSetId: str + creationDateTime: datetime + target: TestSetDiscrepancyReportResourceTargetTypeDef + testSetDiscrepancyReportStatus: TestSetDiscrepancyReportStatusType + lastUpdatedDataTime: datetime + testSetDiscrepancyTopErrors: TestSetDiscrepancyErrorsTypeDef + testSetDiscrepancyRawOutputUrl: str + failureReasons: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportResourceSpecificationTypeDef(BaseModel): + botImportSpecification: Optional[BotImportSpecificationTypeDef] = None + botLocaleImportSpecification: Optional[BotLocaleImportSpecificationTypeDef] = None + customVocabularyImportSpecification: Optional[ CustomVocabularyImportSpecificationTypeDef ] = None + testSetImportResourceSpecification: Optional[ TestSetImportResourceSpecificationTypeDef ] = None + +class UserTurnInputSpecificationTypeDef(BaseModel): + utteranceInput: UtteranceInputSpecificationTypeDef + requestAttributes: Optional[Dict[str, str]] = None + sessionState: Optional[InputSessionStateSpecificationTypeDef] = None + +class GenerativeAISettingsTypeDef(BaseModel): + runtimeSettings: Optional[RuntimeSettingsTypeDef] = None + buildtimeSettings: Optional[BuildtimeSettingsTypeDef] = None + +class ListTestExecutionsResponseTypeDef(BaseModel): + testExecutions: List[TestExecutionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MessageGroupTypeDef(BaseModel): + message: MessageTypeDef + variations: Optional[Sequence[MessageTypeDef]] = None + +class UtteranceSpecificationTypeDef(BaseModel): + botAliasId: Optional[str] = None + botVersion: Optional[str] = None + localeId: Optional[str] = None + sessionId: Optional[str] = None + channel: Optional[str] = None + mode: Optional[AnalyticsModalityType] = None + conversationStartTime: Optional[datetime] = None + conversationEndTime: Optional[datetime] = None + utterance: Optional[str] = None + utteranceTimestamp: Optional[datetime] = None + audioVoiceDurationMillis: Optional[int] = None + utteranceUnderstood: Optional[bool] = None + inputType: Optional[str] = None + outputType: Optional[str] = None + associatedIntentName: Optional[str] = None + associatedSlotName: Optional[str] = None + intentState: Optional[IntentStateType] = None + dialogActionType: Optional[str] = None + botResponseAudioVoiceId: Optional[str] = None + slotsFilledInSession: Optional[str] = None + utteranceRequestId: Optional[str] = None + botResponses: Optional[List[UtteranceBotResponseTypeDef]] = None + +class ConversationLogSettingsTypeDef(BaseModel): + textLogSettings: Optional[Sequence[TextLogSettingTypeDef]] = None + audioLogSettings: Optional[Sequence[AudioLogSettingTypeDef]] = None + +class DescribeTestSetGenerationResponseTypeDef(BaseModel): + testSetGenerationId: str + testSetGenerationStatus: TestSetGenerationStatusType + failureReasons: List[str] + testSetId: str + testSetName: str + description: str + storageLocation: TestSetStorageLocationTypeDef + generationDataSource: TestSetGenerationDataSourceTypeDef + roleArn: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartTestSetGenerationRequestRequestTypeDef(BaseModel): + testSetName: str + storageLocation: TestSetStorageLocationTypeDef + generationDataSource: TestSetGenerationDataSourceTypeDef + roleArn: str + description: Optional[str] = None + testSetTags: Optional[Mapping[str, str]] = None + +class StartTestSetGenerationResponseTypeDef(BaseModel): + testSetGenerationId: str + creationDateTime: datetime + testSetGenerationStatus: TestSetGenerationStatusType + testSetName: str + description: str + storageLocation: TestSetStorageLocationTypeDef + generationDataSource: TestSetGenerationDataSourceTypeDef + roleArn: str + testSetTags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class S3BucketTranscriptSourceTypeDef(BaseModel): + s3BucketName: str + transcriptFormat: Literal["Lex"] + pathFormat: Optional[PathFormatTypeDef] = None + transcriptFilter: Optional[TranscriptFilterTypeDef] = None + kmsKeyArn: Optional[str] = None + +class QnAIntentConfigurationTypeDef(BaseModel): + dataSourceConfiguration: Optional[DataSourceConfigurationTypeDef] = None + bedrockModelConfiguration: Optional[BedrockModelSpecificationTypeDef] = None + +class ListExportsResponseTypeDef(BaseModel): + botId: str + botVersion: str + exportSummaries: List[ExportSummaryTypeDef] + nextToken: str + localeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSlotTypeRequestRequestTypeDef(BaseModel): + slotTypeName: str + botId: str + botVersion: str + localeId: str + description: Optional[str] = None + slotTypeValues: Optional[Sequence[SlotTypeValueTypeDef]] = None + valueSelectionSetting: Optional[SlotValueSelectionSettingTypeDef] = None + parentSlotTypeSignature: Optional[str] = None + externalSourceSetting: Optional[ExternalSourceSettingTypeDef] = None + compositeSlotTypeSetting: Optional[CompositeSlotTypeSettingTypeDef] = None + +class CreateSlotTypeResponseTypeDef(BaseModel): + slotTypeId: str + slotTypeName: str + description: str + slotTypeValues: List[SlotTypeValueTypeDef] + valueSelectionSetting: SlotValueSelectionSettingTypeDef + parentSlotTypeSignature: str + botId: str + botVersion: str + localeId: str + creationDateTime: datetime + externalSourceSetting: ExternalSourceSettingTypeDef + compositeSlotTypeSetting: CompositeSlotTypeSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSlotTypeResponseTypeDef(BaseModel): + slotTypeId: str + slotTypeName: str + description: str + slotTypeValues: List[SlotTypeValueTypeDef] + valueSelectionSetting: SlotValueSelectionSettingTypeDef + parentSlotTypeSignature: str + botId: str + botVersion: str + localeId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + externalSourceSetting: ExternalSourceSettingTypeDef + compositeSlotTypeSetting: CompositeSlotTypeSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSlotTypeRequestRequestTypeDef(BaseModel): + slotTypeId: str + slotTypeName: str + botId: str + botVersion: str + localeId: str + description: Optional[str] = None + slotTypeValues: Optional[Sequence[SlotTypeValueTypeDef]] = None + valueSelectionSetting: Optional[SlotValueSelectionSettingTypeDef] = None + parentSlotTypeSignature: Optional[str] = None + externalSourceSetting: Optional[ExternalSourceSettingTypeDef] = None + compositeSlotTypeSetting: Optional[CompositeSlotTypeSettingTypeDef] = None + +class UpdateSlotTypeResponseTypeDef(BaseModel): + slotTypeId: str + slotTypeName: str + description: str + slotTypeValues: List[SlotTypeValueTypeDef] + valueSelectionSetting: SlotValueSelectionSettingTypeDef + parentSlotTypeSignature: str + botId: str + botVersion: str + localeId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + externalSourceSetting: ExternalSourceSettingTypeDef + compositeSlotTypeSetting: CompositeSlotTypeSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IntentLevelSlotResolutionTestResultsTypeDef(BaseModel): + items: List[IntentLevelSlotResolutionTestResultItemTypeDef] + +class DescribeImportResponseTypeDef(BaseModel): + importId: str + resourceSpecification: ImportResourceSpecificationTypeDef + importedResourceId: str + importedResourceName: str + mergeStrategy: MergeStrategyType + importStatus: ImportStatusType + failureReasons: List[str] + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportRequestRequestTypeDef(BaseModel): + importId: str + resourceSpecification: ImportResourceSpecificationTypeDef + mergeStrategy: MergeStrategyType + filePassword: Optional[str] = None + +class StartImportResponseTypeDef(BaseModel): + importId: str + resourceSpecification: ImportResourceSpecificationTypeDef + mergeStrategy: MergeStrategyType + importStatus: ImportStatusType + creationDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UserTurnResultTypeDef(BaseModel): + input: UserTurnInputSpecificationTypeDef + expectedOutput: UserTurnOutputSpecificationTypeDef + actualOutput: Optional[UserTurnOutputSpecificationTypeDef] = None + errorDetails: Optional[ExecutionErrorDetailsTypeDef] = None + endToEndResult: Optional[TestResultMatchStatusType] = None + intentMatchResult: Optional[TestResultMatchStatusType] = None + slotMatchResult: Optional[TestResultMatchStatusType] = None + speechTranscriptionResult: Optional[TestResultMatchStatusType] = None + conversationLevelResult: Optional[ConversationLevelResultDetailTypeDef] = None + +class UserTurnSpecificationTypeDef(BaseModel): + input: UserTurnInputSpecificationTypeDef + expected: UserTurnOutputSpecificationTypeDef + +class CreateBotLocaleRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + nluIntentConfidenceThreshold: float + description: Optional[str] = None + voiceSettings: Optional[VoiceSettingsTypeDef] = None + generativeAISettings: Optional[GenerativeAISettingsTypeDef] = None + +class CreateBotLocaleResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeName: str + localeId: str + description: str + nluIntentConfidenceThreshold: float + voiceSettings: VoiceSettingsTypeDef + botLocaleStatus: BotLocaleStatusType + creationDateTime: datetime + generativeAISettings: GenerativeAISettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBotLocaleResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + localeName: str + description: str + nluIntentConfidenceThreshold: float + voiceSettings: VoiceSettingsTypeDef + intentsCount: int + slotTypesCount: int + botLocaleStatus: BotLocaleStatusType + failureReasons: List[str] + creationDateTime: datetime + lastUpdatedDateTime: datetime + lastBuildSubmittedDateTime: datetime + botLocaleHistoryEvents: List[BotLocaleHistoryEventTypeDef] + recommendedActions: List[str] + generativeAISettings: GenerativeAISettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBotLocaleRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + nluIntentConfidenceThreshold: float + description: Optional[str] = None + voiceSettings: Optional[VoiceSettingsTypeDef] = None + generativeAISettings: Optional[GenerativeAISettingsTypeDef] = None + +class UpdateBotLocaleResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + localeName: str + description: str + nluIntentConfidenceThreshold: float + voiceSettings: VoiceSettingsTypeDef + botLocaleStatus: BotLocaleStatusType + failureReasons: List[str] + creationDateTime: datetime + lastUpdatedDateTime: datetime + recommendedActions: List[str] + generativeAISettings: GenerativeAISettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FulfillmentStartResponseSpecificationTypeDef(BaseModel): + delayInSeconds: int + messageGroups: Sequence[MessageGroupTypeDef] + allowInterrupt: Optional[bool] = None + +class FulfillmentUpdateResponseSpecificationTypeDef(BaseModel): + frequencyInSeconds: int + messageGroups: Sequence[MessageGroupTypeDef] + allowInterrupt: Optional[bool] = None + +class PromptSpecificationTypeDef(BaseModel): + messageGroups: Sequence[MessageGroupTypeDef] + maxRetries: int + allowInterrupt: Optional[bool] = None + messageSelectionStrategy: Optional[MessageSelectionStrategyType] = None + promptAttemptsSpecification: Optional[ Mapping[PromptAttemptType, PromptAttemptSpecificationTypeDef] = None + +class ResponseSpecificationTypeDef(BaseModel): + messageGroups: Sequence[MessageGroupTypeDef] + allowInterrupt: Optional[bool] = None + +class StillWaitingResponseSpecificationTypeDef(BaseModel): + messageGroups: Sequence[MessageGroupTypeDef] + frequencyInSeconds: int + timeoutInSeconds: int + allowInterrupt: Optional[bool] = None + +class ListUtteranceAnalyticsDataResponseTypeDef(BaseModel): + botId: str + nextToken: str + utterances: List[UtteranceSpecificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBotAliasRequestRequestTypeDef(BaseModel): + botAliasName: str + botId: str + description: Optional[str] = None + botVersion: Optional[str] = None + botAliasLocaleSettings: Optional[Mapping[str, BotAliasLocaleSettingsTypeDef]] = None + conversationLogSettings: Optional[ConversationLogSettingsTypeDef] = None + sentimentAnalysisSettings: Optional[SentimentAnalysisSettingsTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateBotAliasResponseTypeDef(BaseModel): + botAliasId: str + botAliasName: str + description: str + botVersion: str + botAliasLocaleSettings: Dict[str, BotAliasLocaleSettingsTypeDef] + conversationLogSettings: ConversationLogSettingsTypeDef + sentimentAnalysisSettings: SentimentAnalysisSettingsTypeDef + botAliasStatus: BotAliasStatusType + botId: str + creationDateTime: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBotAliasResponseTypeDef(BaseModel): + botAliasId: str + botAliasName: str + description: str + botVersion: str + botAliasLocaleSettings: Dict[str, BotAliasLocaleSettingsTypeDef] + conversationLogSettings: ConversationLogSettingsTypeDef + sentimentAnalysisSettings: SentimentAnalysisSettingsTypeDef + botAliasHistoryEvents: List[BotAliasHistoryEventTypeDef] + botAliasStatus: BotAliasStatusType + botId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + parentBotNetworks: List[ParentBotNetworkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBotAliasRequestRequestTypeDef(BaseModel): + botAliasId: str + botAliasName: str + botId: str + description: Optional[str] = None + botVersion: Optional[str] = None + botAliasLocaleSettings: Optional[Mapping[str, BotAliasLocaleSettingsTypeDef]] = None + conversationLogSettings: Optional[ConversationLogSettingsTypeDef] = None + sentimentAnalysisSettings: Optional[SentimentAnalysisSettingsTypeDef] = None + +class UpdateBotAliasResponseTypeDef(BaseModel): + botAliasId: str + botAliasName: str + description: str + botVersion: str + botAliasLocaleSettings: Dict[str, BotAliasLocaleSettingsTypeDef] + conversationLogSettings: ConversationLogSettingsTypeDef + sentimentAnalysisSettings: SentimentAnalysisSettingsTypeDef + botAliasStatus: BotAliasStatusType + botId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class TranscriptSourceSettingTypeDef(BaseModel): + s3BucketTranscriptSource: Optional[S3BucketTranscriptSourceTypeDef] = None + +class TestSetTurnResultTypeDef(BaseModel): + agent: Optional[AgentTurnResultTypeDef] = None + user: Optional[UserTurnResultTypeDef] = None + +class TurnSpecificationTypeDef(BaseModel): + agentTurn: Optional[AgentTurnSpecificationTypeDef] = None + userTurn: Optional[UserTurnSpecificationTypeDef] = None + +class FulfillmentUpdatesSpecificationTypeDef(BaseModel): + active: bool + startResponse: Optional[FulfillmentStartResponseSpecificationTypeDef] = None + updateResponse: Optional[FulfillmentUpdateResponseSpecificationTypeDef] = None + timeoutInSeconds: Optional[int] = None + +class SlotSummaryTypeDef(BaseModel): + slotId: Optional[str] = None + slotName: Optional[str] = None + description: Optional[str] = None + slotConstraint: Optional[SlotConstraintType] = None + slotTypeId: Optional[str] = None + valueElicitationPromptSpecification: Optional[PromptSpecificationTypeDef] = None + lastUpdatedDateTime: Optional[datetime] = None + +class ConditionalBranchTypeDef(BaseModel): + name: str + condition: ConditionTypeDef + nextStep: DialogStateTypeDef + response: Optional[ResponseSpecificationTypeDef] = None + +class DefaultConditionalBranchTypeDef(BaseModel): + nextStep: Optional[DialogStateTypeDef] = None + response: Optional[ResponseSpecificationTypeDef] = None + +class WaitAndContinueSpecificationTypeDef(BaseModel): + waitingResponse: ResponseSpecificationTypeDef + continueResponse: ResponseSpecificationTypeDef + stillWaitingResponse: Optional[StillWaitingResponseSpecificationTypeDef] = None + active: Optional[bool] = None + +class DescribeBotRecommendationResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationStatus: BotRecommendationStatusType + botRecommendationId: str + failureReasons: List[str] + creationDateTime: datetime + lastUpdatedDateTime: datetime + transcriptSourceSetting: TranscriptSourceSettingTypeDef + encryptionSetting: EncryptionSettingTypeDef + botRecommendationResults: BotRecommendationResultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartBotRecommendationRequestRequestTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + transcriptSourceSetting: TranscriptSourceSettingTypeDef + encryptionSetting: Optional[EncryptionSettingTypeDef] = None + +class StartBotRecommendationResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationStatus: BotRecommendationStatusType + botRecommendationId: str + creationDateTime: datetime + transcriptSourceSetting: TranscriptSourceSettingTypeDef + encryptionSetting: EncryptionSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBotRecommendationResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + botRecommendationStatus: BotRecommendationStatusType + botRecommendationId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + transcriptSourceSetting: TranscriptSourceSettingTypeDef + encryptionSetting: EncryptionSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UtteranceLevelTestResultItemTypeDef(BaseModel): + recordNumber: int + turnResult: TestSetTurnResultTypeDef + conversationId: Optional[str] = None + +class TestSetTurnRecordTypeDef(BaseModel): + recordNumber: int + turnSpecification: TurnSpecificationTypeDef + conversationId: Optional[str] = None + turnNumber: Optional[int] = None + +class ListSlotsResponseTypeDef(BaseModel): + botId: str + botVersion: str + localeId: str + intentId: str + slotSummaries: List[SlotSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConditionalSpecificationTypeDef(BaseModel): + active: bool + conditionalBranches: Sequence[ConditionalBranchTypeDef] + defaultBranch: DefaultConditionalBranchTypeDef + +class SubSlotValueElicitationSettingTypeDef(BaseModel): + promptSpecification: PromptSpecificationTypeDef + defaultValueSpecification: Optional[SlotDefaultValueSpecificationTypeDef] = None + sampleUtterances: Optional[Sequence[SampleUtteranceTypeDef]] = None + waitAndContinueSpecification: Optional[WaitAndContinueSpecificationTypeDef] = None + +class UtteranceLevelTestResultsTypeDef(BaseModel): + items: List[UtteranceLevelTestResultItemTypeDef] + +class ListTestSetRecordsResponseTypeDef(BaseModel): + testSetRecords: List[TestSetTurnRecordTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class IntentClosingSettingTypeDef(BaseModel): + closingResponse: Optional[ResponseSpecificationTypeDef] = None + active: Optional[bool] = None + nextStep: Optional[DialogStateTypeDef] = None + conditional: Optional[ConditionalSpecificationTypeDef] = None + +class PostDialogCodeHookInvocationSpecificationTypeDef(BaseModel): + successResponse: Optional[ResponseSpecificationTypeDef] = None + successNextStep: Optional[DialogStateTypeDef] = None + successConditional: Optional[ConditionalSpecificationTypeDef] = None + failureResponse: Optional[ResponseSpecificationTypeDef] = None + failureNextStep: Optional[DialogStateTypeDef] = None + failureConditional: Optional[ConditionalSpecificationTypeDef] = None + timeoutResponse: Optional[ResponseSpecificationTypeDef] = None + timeoutNextStep: Optional[DialogStateTypeDef] = None + timeoutConditional: Optional[ConditionalSpecificationTypeDef] = None + +class PostFulfillmentStatusSpecificationTypeDef(BaseModel): + successResponse: Optional[ResponseSpecificationTypeDef] = None + failureResponse: Optional[ResponseSpecificationTypeDef] = None + timeoutResponse: Optional[ResponseSpecificationTypeDef] = None + successNextStep: Optional[DialogStateTypeDef] = None + successConditional: Optional[ConditionalSpecificationTypeDef] = None + failureNextStep: Optional[DialogStateTypeDef] = None + failureConditional: Optional[ConditionalSpecificationTypeDef] = None + timeoutNextStep: Optional[DialogStateTypeDef] = None + timeoutConditional: Optional[ConditionalSpecificationTypeDef] = None + +class SpecificationsTypeDef(BaseModel): + slotTypeId: str + valueElicitationSetting: SubSlotValueElicitationSettingTypeDef + +class TestExecutionResultItemsTypeDef(BaseModel): + overallTestResults: Optional[OverallTestResultsTypeDef] = None + conversationLevelTestResults: Optional[ConversationLevelTestResultsTypeDef] = None + intentClassificationTestResults: Optional[IntentClassificationTestResultsTypeDef] = None + intentLevelSlotResolutionTestResults: Optional[ IntentLevelSlotResolutionTestResultsTypeDef ] = None + utteranceLevelTestResults: Optional[UtteranceLevelTestResultsTypeDef] = None + +class DialogCodeHookInvocationSettingTypeDef(BaseModel): + enableCodeHookInvocation: bool + active: bool + postCodeHookSpecification: PostDialogCodeHookInvocationSpecificationTypeDef + invocationLabel: Optional[str] = None + +class FulfillmentCodeHookSettingsTypeDef(BaseModel): + enabled: bool + postFulfillmentStatusSpecification: Optional[ PostFulfillmentStatusSpecificationTypeDef ] = None + fulfillmentUpdatesSpecification: Optional[FulfillmentUpdatesSpecificationTypeDef] = None + active: Optional[bool] = None + +class SubSlotSettingTypeDef(BaseModel): + expression: Optional[str] = None + slotSpecifications: Optional[Mapping[str, SpecificationsTypeDef]] = None + +class ListTestExecutionResultItemsResponseTypeDef(BaseModel): + testExecutionResults: TestExecutionResultItemsTypeDef + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitialResponseSettingTypeDef(BaseModel): + initialResponse: Optional[ResponseSpecificationTypeDef] = None + nextStep: Optional[DialogStateTypeDef] = None + conditional: Optional[ConditionalSpecificationTypeDef] = None + codeHook: Optional[DialogCodeHookInvocationSettingTypeDef] = None + +class IntentConfirmationSettingTypeDef(BaseModel): + promptSpecification: PromptSpecificationTypeDef + declinationResponse: Optional[ResponseSpecificationTypeDef] = None + active: Optional[bool] = None + confirmationResponse: Optional[ResponseSpecificationTypeDef] = None + confirmationNextStep: Optional[DialogStateTypeDef] = None + confirmationConditional: Optional[ConditionalSpecificationTypeDef] = None + declinationNextStep: Optional[DialogStateTypeDef] = None + declinationConditional: Optional[ConditionalSpecificationTypeDef] = None + failureResponse: Optional[ResponseSpecificationTypeDef] = None + failureNextStep: Optional[DialogStateTypeDef] = None + failureConditional: Optional[ConditionalSpecificationTypeDef] = None + codeHook: Optional[DialogCodeHookInvocationSettingTypeDef] = None + elicitationCodeHook: Optional[ElicitationCodeHookInvocationSettingTypeDef] = None + +class SlotCaptureSettingTypeDef(BaseModel): + captureResponse: Optional[ResponseSpecificationTypeDef] = None + captureNextStep: Optional[DialogStateTypeDef] = None + captureConditional: Optional[ConditionalSpecificationTypeDef] = None + failureResponse: Optional[ResponseSpecificationTypeDef] = None + failureNextStep: Optional[DialogStateTypeDef] = None + failureConditional: Optional[ConditionalSpecificationTypeDef] = None + codeHook: Optional[DialogCodeHookInvocationSettingTypeDef] = None + elicitationCodeHook: Optional[ElicitationCodeHookInvocationSettingTypeDef] = None + +class CreateIntentRequestRequestTypeDef(BaseModel): + intentName: str + botId: str + botVersion: str + localeId: str + description: Optional[str] = None + parentIntentSignature: Optional[str] = None + sampleUtterances: Optional[Sequence[SampleUtteranceTypeDef]] = None + dialogCodeHook: Optional[DialogCodeHookSettingsTypeDef] = None + fulfillmentCodeHook: Optional[FulfillmentCodeHookSettingsTypeDef] = None + intentConfirmationSetting: Optional[IntentConfirmationSettingTypeDef] = None + intentClosingSetting: Optional[IntentClosingSettingTypeDef] = None + inputContexts: Optional[Sequence[InputContextTypeDef]] = None + outputContexts: Optional[Sequence[OutputContextTypeDef]] = None + kendraConfiguration: Optional[KendraConfigurationTypeDef] = None + initialResponseSetting: Optional[InitialResponseSettingTypeDef] = None + qnAIntentConfiguration: Optional[QnAIntentConfigurationTypeDef] = None + +class CreateIntentResponseTypeDef(BaseModel): + intentId: str + intentName: str + description: str + parentIntentSignature: str + sampleUtterances: List[SampleUtteranceTypeDef] + dialogCodeHook: DialogCodeHookSettingsTypeDef + fulfillmentCodeHook: FulfillmentCodeHookSettingsTypeDef + intentConfirmationSetting: IntentConfirmationSettingTypeDef + intentClosingSetting: IntentClosingSettingTypeDef + inputContexts: List[InputContextTypeDef] + outputContexts: List[OutputContextTypeDef] + kendraConfiguration: KendraConfigurationTypeDef + botId: str + botVersion: str + localeId: str + creationDateTime: datetime + initialResponseSetting: InitialResponseSettingTypeDef + qnAIntentConfiguration: QnAIntentConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIntentResponseTypeDef(BaseModel): + intentId: str + intentName: str + description: str + parentIntentSignature: str + sampleUtterances: List[SampleUtteranceTypeDef] + dialogCodeHook: DialogCodeHookSettingsTypeDef + fulfillmentCodeHook: FulfillmentCodeHookSettingsTypeDef + slotPriorities: List[SlotPriorityTypeDef] + intentConfirmationSetting: IntentConfirmationSettingTypeDef + intentClosingSetting: IntentClosingSettingTypeDef + inputContexts: List[InputContextTypeDef] + outputContexts: List[OutputContextTypeDef] + kendraConfiguration: KendraConfigurationTypeDef + botId: str + botVersion: str + localeId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + initialResponseSetting: InitialResponseSettingTypeDef + qnAIntentConfiguration: QnAIntentConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIntentRequestRequestTypeDef(BaseModel): + intentId: str + intentName: str + botId: str + botVersion: str + localeId: str + description: Optional[str] = None + parentIntentSignature: Optional[str] = None + sampleUtterances: Optional[Sequence[SampleUtteranceTypeDef]] = None + dialogCodeHook: Optional[DialogCodeHookSettingsTypeDef] = None + fulfillmentCodeHook: Optional[FulfillmentCodeHookSettingsTypeDef] = None + slotPriorities: Optional[Sequence[SlotPriorityTypeDef]] = None + intentConfirmationSetting: Optional[IntentConfirmationSettingTypeDef] = None + intentClosingSetting: Optional[IntentClosingSettingTypeDef] = None + inputContexts: Optional[Sequence[InputContextTypeDef]] = None + outputContexts: Optional[Sequence[OutputContextTypeDef]] = None + kendraConfiguration: Optional[KendraConfigurationTypeDef] = None + initialResponseSetting: Optional[InitialResponseSettingTypeDef] = None + qnAIntentConfiguration: Optional[QnAIntentConfigurationTypeDef] = None + +class UpdateIntentResponseTypeDef(BaseModel): + intentId: str + intentName: str + description: str + parentIntentSignature: str + sampleUtterances: List[SampleUtteranceTypeDef] + dialogCodeHook: DialogCodeHookSettingsTypeDef + fulfillmentCodeHook: FulfillmentCodeHookSettingsTypeDef + slotPriorities: List[SlotPriorityTypeDef] + intentConfirmationSetting: IntentConfirmationSettingTypeDef + intentClosingSetting: IntentClosingSettingTypeDef + inputContexts: List[InputContextTypeDef] + outputContexts: List[OutputContextTypeDef] + kendraConfiguration: KendraConfigurationTypeDef + botId: str + botVersion: str + localeId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + initialResponseSetting: InitialResponseSettingTypeDef + qnAIntentConfiguration: QnAIntentConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SlotValueElicitationSettingTypeDef(BaseModel): + slotConstraint: SlotConstraintType + defaultValueSpecification: Optional[SlotDefaultValueSpecificationTypeDef] = None + promptSpecification: Optional[PromptSpecificationTypeDef] = None + sampleUtterances: Optional[Sequence[SampleUtteranceTypeDef]] = None + waitAndContinueSpecification: Optional[WaitAndContinueSpecificationTypeDef] = None + slotCaptureSetting: Optional[SlotCaptureSettingTypeDef] = None + slotResolutionSetting: Optional[SlotResolutionSettingTypeDef] = None + +class CreateSlotRequestRequestTypeDef(BaseModel): + slotName: str + valueElicitationSetting: SlotValueElicitationSettingTypeDef + botId: str + botVersion: str + localeId: str + intentId: str + description: Optional[str] = None + slotTypeId: Optional[str] = None + obfuscationSetting: Optional[ObfuscationSettingTypeDef] = None + multipleValuesSetting: Optional[MultipleValuesSettingTypeDef] = None + subSlotSetting: Optional[SubSlotSettingTypeDef] = None + +class CreateSlotResponseTypeDef(BaseModel): + slotId: str + slotName: str + description: str + slotTypeId: str + valueElicitationSetting: SlotValueElicitationSettingTypeDef + obfuscationSetting: ObfuscationSettingTypeDef + botId: str + botVersion: str + localeId: str + intentId: str + creationDateTime: datetime + multipleValuesSetting: MultipleValuesSettingTypeDef + subSlotSetting: SubSlotSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSlotResponseTypeDef(BaseModel): + slotId: str + slotName: str + description: str + slotTypeId: str + valueElicitationSetting: SlotValueElicitationSettingTypeDef + obfuscationSetting: ObfuscationSettingTypeDef + botId: str + botVersion: str + localeId: str + intentId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + multipleValuesSetting: MultipleValuesSettingTypeDef + subSlotSetting: SubSlotSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSlotRequestRequestTypeDef(BaseModel): + slotId: str + slotName: str + valueElicitationSetting: SlotValueElicitationSettingTypeDef + botId: str + botVersion: str + localeId: str + intentId: str + description: Optional[str] = None + slotTypeId: Optional[str] = None + obfuscationSetting: Optional[ObfuscationSettingTypeDef] = None + multipleValuesSetting: Optional[MultipleValuesSettingTypeDef] = None + subSlotSetting: Optional[SubSlotSettingTypeDef] = None + +class UpdateSlotResponseTypeDef(BaseModel): + slotId: str + slotName: str + description: str + slotTypeId: str + valueElicitationSetting: SlotValueElicitationSettingTypeDef + obfuscationSetting: ObfuscationSettingTypeDef + botId: str + botVersion: str + localeId: str + intentId: str + creationDateTime: datetime + lastUpdatedDateTime: datetime + multipleValuesSetting: MultipleValuesSettingTypeDef + subSlotSetting: SubSlotSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lexv2_models_constants.py b/aws_resource_validator/pydantic_models/lexv2_models_constants.py new file mode 100644 index 00000000..7ea0c155 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lexv2_models_constants.py @@ -0,0 +1,585 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregatedUtterancesFilterNameType = Literal["Utterance"] +AggregatedUtterancesFilterOperatorType = Literal["CO", "EQ"] +AggregatedUtterancesSortAttributeType = Literal["HitCount", "MissedCount"] +AnalyticsBinByNameType = Literal["ConversationStartTime", "UtteranceTimestamp"] +AnalyticsCommonFilterNameType = Literal["BotAliasId", "BotVersion", "Channel", "LocaleId", "Modality"] +AnalyticsFilterOperatorType = Literal["EQ", "GT", "LT"] +AnalyticsIntentFieldType = Literal["IntentEndState", "IntentLevel", "IntentName"] +AnalyticsIntentFilterNameType = Literal["BotAliasId", + "BotVersion", + "Channel", + "IntentEndState", + "IntentName", + "LocaleId", + "Modality", + "OriginatingRequestId", + "SessionId",] +AnalyticsIntentMetricNameType = Literal["Count", "Dropped", "Failure", "Success", "Switched"] +AnalyticsIntentStageFieldType = Literal["IntentStageName", "SwitchedToIntent"] +AnalyticsIntentStageFilterNameType = Literal["BotAliasId", + "BotVersion", + "Channel", + "IntentName", + "IntentStageName", + "LocaleId", + "Modality", + "OriginatingRequestId", + "SessionId",] +AnalyticsIntentStageMetricNameType = Literal["Count", "Dropped", "Failed", "Retry", "Success"] +AnalyticsIntervalType = Literal["OneDay", "OneHour"] +AnalyticsMetricStatisticType = Literal["Avg", "Max", "Sum"] +AnalyticsModalityType = Literal["DTMF", "MultiMode", "Speech", "Text"] +AnalyticsNodeTypeType = Literal["Exit", "Inner"] +AnalyticsSessionFieldType = Literal["ConversationEndState", "LocaleId"] +AnalyticsSessionFilterNameType = Literal["BotAliasId", + "BotVersion", + "Channel", + "ConversationEndState", + "Duration", + "IntentPath", + "LocaleId", + "Modality", + "OriginatingRequestId", + "SessionId",] +AnalyticsSessionMetricNameType = Literal["Concurrency", "Count", "Dropped", "Duration", "Failure", "Success", "TurnsPerConversation"] +AnalyticsSessionSortByNameType = Literal["ConversationStartTime", "Duration", "NumberOfTurns"] +AnalyticsSortOrderType = Literal["Ascending", "Descending"] +AnalyticsUtteranceAttributeNameType = Literal["LastUsedIntent"] +AnalyticsUtteranceFieldType = Literal["UtteranceState", "UtteranceText"] +AnalyticsUtteranceFilterNameType = Literal["BotAliasId", + "BotVersion", + "Channel", + "LocaleId", + "Modality", + "OriginatingRequestId", + "SessionId", + "UtteranceState", + "UtteranceText",] +AnalyticsUtteranceMetricNameType = Literal["Count", "Detected", "Missed", "UtteranceTimestamp"] +AnalyticsUtteranceSortByNameType = Literal["UtteranceTimestamp"] +AssociatedTranscriptFilterNameType = Literal["IntentId", "SlotTypeId"] +AudioRecognitionStrategyType = Literal["UseSlotValuesAsCustomVocabulary"] +BotAliasAvailableWaiterName = Literal["bot_alias_available"] +BotAliasReplicationStatusType = Literal["Available", "Creating", "Deleting", "Failed", "Updating"] +BotAliasStatusType = Literal["Available", "Creating", "Deleting", "Failed"] +BotAvailableWaiterName = Literal["bot_available"] +BotExportCompletedWaiterName = Literal["bot_export_completed"] +BotFilterNameType = Literal["BotName", "BotType"] +BotFilterOperatorType = Literal["CO", "EQ", "NE"] +BotImportCompletedWaiterName = Literal["bot_import_completed"] +BotLocaleBuiltWaiterName = Literal["bot_locale_built"] +BotLocaleCreatedWaiterName = Literal["bot_locale_created"] +BotLocaleExpressTestingAvailableWaiterName = Literal["bot_locale_express_testing_available"] +BotLocaleFilterNameType = Literal["BotLocaleName"] +BotLocaleFilterOperatorType = Literal["CO", "EQ"] +BotLocaleSortAttributeType = Literal["BotLocaleName"] +BotLocaleStatusType = Literal["Building", + "Built", + "Creating", + "Deleting", + "Failed", + "Importing", + "NotBuilt", + "Processing", + "ReadyExpressTesting",] +BotRecommendationStatusType = Literal["Available", + "Deleted", + "Deleting", + "Downloading", + "Failed", + "Processing", + "Stopped", + "Stopping", + "Updating",] +BotReplicaStatusType = Literal["Deleting", "Enabled", "Enabling", "Failed"] +BotSortAttributeType = Literal["BotName"] +BotStatusType = Literal["Available", "Creating", "Deleting", "Failed", "Importing", "Inactive", "Updating", "Versioning"] +BotTypeType = Literal["Bot", "BotNetwork"] +BotVersionAvailableWaiterName = Literal["bot_version_available"] +BotVersionReplicaSortAttributeType = Literal["BotVersion"] +BotVersionReplicationStatusType = Literal["Available", "Creating", "Deleting", "Failed"] +BotVersionSortAttributeType = Literal["BotVersion"] +BuiltInIntentSortAttributeType = Literal["IntentSignature"] +BuiltInSlotTypeSortAttributeType = Literal["SlotTypeSignature"] +ConversationEndStateType = Literal["Dropped", "Failure", "Success"] +ConversationLogsInputModeFilterType = Literal["Speech", "Text"] +CustomVocabularyStatusType = Literal["Creating", "Deleting", "Exporting", "Importing", "Ready"] +DialogActionTypeType = Literal["CloseIntent", + "ConfirmIntent", + "ElicitIntent", + "ElicitSlot", + "EndConversation", + "EvaluateConditional", + "FulfillIntent", + "InvokeDialogCodeHook", + "StartIntent",] +EffectType = Literal["Allow", "Deny"] +ErrorCodeType = Literal["DUPLICATE_INPUT", + "INTERNAL_SERVER_FAILURE", + "RESOURCE_ALREADY_EXISTS", + "RESOURCE_DOES_NOT_EXIST",] +ExportFilterNameType = Literal["ExportResourceType"] +ExportFilterOperatorType = Literal["CO", "EQ"] +ExportSortAttributeType = Literal["LastUpdatedDateTime"] +ExportStatusType = Literal["Completed", "Deleting", "Failed", "InProgress"] +GenerationSortByAttributeType = Literal["creationStartTime", "lastUpdatedTime"] +GenerationStatusType = Literal["Complete", "Failed", "InProgress"] +ImportExportFileFormatType = Literal["CSV", "LexJson", "TSV"] +ImportFilterNameType = Literal["ImportResourceType"] +ImportFilterOperatorType = Literal["CO", "EQ"] +ImportResourceTypeType = Literal["Bot", "BotLocale", "CustomVocabulary", "TestSet"] +ImportSortAttributeType = Literal["LastUpdatedDateTime"] +ImportStatusType = Literal["Completed", "Deleting", "Failed", "InProgress"] +IntentFilterNameType = Literal["IntentName"] +IntentFilterOperatorType = Literal["CO", "EQ"] +IntentSortAttributeType = Literal["IntentName", "LastUpdatedDateTime"] +IntentStateType = Literal["Failed", "Fulfilled", "FulfillmentInProgress", "InProgress", "ReadyForFulfillment", "Waiting"] +MergeStrategyType = Literal["Append", "FailOnConflict", "Overwrite"] +MessageSelectionStrategyType = Literal["Ordered", "Random"] +ObfuscationSettingTypeType = Literal["DefaultObfuscation", "None"] +PromptAttemptType = Literal["Initial", "Retry1", "Retry2", "Retry3", "Retry4", "Retry5"] +SearchOrderType = Literal["Ascending", "Descending"] +SlotConstraintType = Literal["Optional", "Required"] +SlotFilterNameType = Literal["SlotName"] +SlotFilterOperatorType = Literal["CO", "EQ"] +SlotResolutionStrategyType = Literal["Default", "EnhancedFallback"] +SlotShapeType = Literal["List", "Scalar"] +SlotSortAttributeType = Literal["LastUpdatedDateTime", "SlotName"] +SlotTypeCategoryType = Literal["Composite", "Custom", "Extended", "ExternalGrammar"] +SlotTypeFilterNameType = Literal["ExternalSourceType", "SlotTypeName"] +SlotTypeFilterOperatorType = Literal["CO", "EQ"] +SlotTypeSortAttributeType = Literal["LastUpdatedDateTime", "SlotTypeName"] +SlotValueResolutionStrategyType = Literal["Concatenation", "OriginalValue", "TopResolution"] +SortOrderType = Literal["Ascending", "Descending"] +TestExecutionApiModeType = Literal["NonStreaming", "Streaming"] +TestExecutionModalityType = Literal["Audio", "Text"] +TestExecutionSortAttributeType = Literal["CreationDateTime", "TestSetName"] +TestExecutionStatusType = Literal["Completed", "Failed", "InProgress", "Pending", "Stopped", "Stopping", "Waiting"] +TestResultMatchStatusType = Literal["ExecutionError", "Matched", "Mismatched"] +TestResultTypeFilterType = Literal["ConversationLevelTestResults", + "IntentClassificationTestResults", + "OverallTestResults", + "SlotResolutionTestResults", + "UtteranceLevelResults",] +TestSetDiscrepancyReportStatusType = Literal["Completed", "Failed", "InProgress"] +TestSetGenerationStatusType = Literal["Failed", "Generating", "Pending", "Ready"] +TestSetModalityType = Literal["Audio", "Text"] +TestSetSortAttributeType = Literal["LastUpdatedDateTime", "TestSetName"] +TestSetStatusType = Literal["Deleting", "Importing", "PendingAnnotation", "Ready", "ValidationError"] +TimeDimensionType = Literal["Days", "Hours", "Weeks"] +TranscriptFormatType = Literal["Lex"] +UtteranceContentTypeType = Literal["CustomPayload", "ImageResponseCard", "PlainText", "SSML"] +VoiceEngineType = Literal["neural", "standard"] +LexModelsV2ServiceName = Literal["lexv2-models"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +WaiterName = Literal["bot_alias_available", + "bot_available", + "bot_export_completed", + "bot_import_completed", + "bot_locale_built", + "bot_locale_created", + "bot_locale_express_testing_available", + "bot_version_available",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/lexv2_runtime_classes.py b/aws_resource_validator/pydantic_models/lexv2_runtime_classes.py new file mode 100644 index 00000000..5914778b --- /dev/null +++ b/aws_resource_validator/pydantic_models/lexv2_runtime_classes.py @@ -0,0 +1,199 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lexv2_runtime_constants import * + +class ActiveContextTimeToLiveTypeDef(BaseModel): + timeToLiveInSeconds: int + turnsToLive: int + +class ButtonTypeDef(BaseModel): + text: str + value: str + +class ConfidenceScoreTypeDef(BaseModel): + score: Optional[float] = None + +class DeleteSessionRequestRequestTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + sessionId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DialogActionTypeDef(BaseModel): + type: DialogActionTypeType + slotToElicit: Optional[str] = None + slotElicitationStyle: Optional[StyleTypeType] = None + subSlotToElicit: Optional["ElicitSubSlotTypeDef"] = None + +class ElicitSubSlotTypeDef(BaseModel): + name: str + subSlotToElicit: Optional[Dict[str, Any]] = None + +class GetSessionRequestRequestTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + sessionId: str + +class IntentTypeDef(BaseModel): + name: str + slots: Optional[Dict[str, "SlotTypeDef"]] = None + state: Optional[IntentStateType] = None + confirmationState: Optional[ConfirmationStateType] = None + +class RecognizedBotMemberTypeDef(BaseModel): + botId: str + botName: Optional[str] = None + +class RuntimeHintValueTypeDef(BaseModel): + phrase: str + +class RuntimeHintsTypeDef(BaseModel): + slotHints: Optional[Dict[str, Dict[str, "RuntimeHintDetailsTypeDef"]]] = None + +class SentimentScoreTypeDef(BaseModel): + positive: Optional[float] = None + negative: Optional[float] = None + neutral: Optional[float] = None + mixed: Optional[float] = None + +class ValueTypeDef(BaseModel): + interpretedValue: str + originalValue: Optional[str] = None + resolvedValues: Optional[List[str]] = None + +class ActiveContextTypeDef(BaseModel): + name: str + timeToLive: ActiveContextTimeToLiveTypeDef + contextAttributes: Dict[str, str] + +class RecognizeUtteranceRequestRequestTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + sessionId: str + requestContentType: str + sessionState: Optional[str] = None + requestAttributes: Optional[str] = None + responseContentType: Optional[str] = None + inputStream: Optional[BlobTypeDef] = None + +class ImageResponseCardTypeDef(BaseModel): + title: str + subtitle: Optional[str] = None + imageUrl: Optional[str] = None + buttons: Optional[List[ButtonTypeDef]] = None + +class DeleteSessionResponseTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + sessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSessionResponseTypeDef(BaseModel): + contentType: str + messages: str + sessionState: str + requestAttributes: str + sessionId: str + audioStream: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class RecognizeUtteranceResponseTypeDef(BaseModel): + inputMode: str + contentType: str + messages: str + interpretations: str + sessionState: str + requestAttributes: str + sessionId: str + inputTranscript: str + audioStream: StreamingBody + recognizedBotMember: str + ResponseMetadata: ResponseMetadataTypeDef + +class RuntimeHintDetailsTypeDef(BaseModel): + runtimeHintValues: Optional[List[RuntimeHintValueTypeDef]] = None + subSlotHints: Optional[Dict[str, Dict[str, Any]]] = None + +class SentimentResponseTypeDef(BaseModel): + sentiment: Optional[SentimentTypeType] = None + sentimentScore: Optional[SentimentScoreTypeDef] = None + +class SlotTypeDef(BaseModel): + value: Optional[ValueTypeDef] = None + shape: Optional[ShapeType] = None + values: Optional[List[Dict[str, Any]]] = None + subSlots: Optional[Dict[str, Dict[str, Any]]] = None + +class SessionStateTypeDef(BaseModel): + dialogAction: Optional[DialogActionTypeDef] = None + intent: Optional[IntentTypeDef] = None + activeContexts: Optional[List[ActiveContextTypeDef]] = None + sessionAttributes: Optional[Dict[str, str]] = None + originatingRequestId: Optional[str] = None + runtimeHints: Optional[RuntimeHintsTypeDef] = None + +class MessageTypeDef(BaseModel): + contentType: MessageContentTypeType + content: Optional[str] = None + imageResponseCard: Optional[ImageResponseCardTypeDef] = None + +class InterpretationTypeDef(BaseModel): + nluConfidence: Optional[ConfidenceScoreTypeDef] = None + sentimentResponse: Optional[SentimentResponseTypeDef] = None + intent: Optional[IntentTypeDef] = None + interpretationSource: Optional[InterpretationSourceType] = None + +class RecognizeTextRequestRequestTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + sessionId: str + text: str + sessionState: Optional[SessionStateTypeDef] = None + requestAttributes: Optional[Mapping[str, str]] = None + +class PutSessionRequestRequestTypeDef(BaseModel): + botId: str + botAliasId: str + localeId: str + sessionId: str + sessionState: SessionStateTypeDef + messages: Optional[Sequence[MessageTypeDef]] = None + requestAttributes: Optional[Mapping[str, str]] = None + responseContentType: Optional[str] = None + +class GetSessionResponseTypeDef(BaseModel): + sessionId: str + messages: List[MessageTypeDef] + interpretations: List[InterpretationTypeDef] + sessionState: SessionStateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RecognizeTextResponseTypeDef(BaseModel): + messages: List[MessageTypeDef] + sessionState: SessionStateTypeDef + interpretations: List[InterpretationTypeDef] + requestAttributes: Dict[str, str] + sessionId: str + recognizedBotMember: RecognizedBotMemberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lexv2_runtime_constants.py b/aws_resource_validator/pydantic_models/lexv2_runtime_constants.py new file mode 100644 index 00000000..d47a6d27 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lexv2_runtime_constants.py @@ -0,0 +1,408 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConfirmationStateType = Literal["Confirmed", "Denied", "None"] +DialogActionTypeType = Literal["Close", "ConfirmIntent", "Delegate", "ElicitIntent", "ElicitSlot", "None"] +IntentStateType = Literal["Failed", "Fulfilled", "FulfillmentInProgress", "InProgress", "ReadyForFulfillment", "Waiting"] +InterpretationSourceType = Literal["Bedrock", "Lex"] +MessageContentTypeType = Literal["CustomPayload", "ImageResponseCard", "PlainText", "SSML"] +SentimentTypeType = Literal["MIXED", "NEGATIVE", "NEUTRAL", "POSITIVE"] +ShapeType = Literal["Composite", "List", "Scalar"] +StyleTypeType = Literal["Default", "SpellByLetter", "SpellByWord"] +LexRuntimeV2ServiceName = Literal["lexv2-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/license_manager_classes.py b/aws_resource_validator/pydantic_models/license_manager_classes.py new file mode 100644 index 00000000..6229d1d8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/license_manager_classes.py @@ -0,0 +1,840 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.license_manager_constants import * + +class AcceptGrantRequestRequestTypeDef(BaseModel): + GrantArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AutomatedDiscoveryInformationTypeDef(BaseModel): + LastRunTime: Optional[datetime] = None + +class BorrowConfigurationTypeDef(BaseModel): + AllowEarlyCheckIn: bool + MaxTimeToLiveInMinutes: int + +class CheckInLicenseRequestRequestTypeDef(BaseModel): + LicenseConsumptionToken: str + Beneficiary: Optional[str] = None + +class EntitlementDataTypeDef(BaseModel): + Name: str + Unit: EntitlementDataUnitType + Value: Optional[str] = None + +class MetadataTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class ConsumedLicenseSummaryTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + ConsumedLicenses: Optional[int] = None + +class ProvisionalConfigurationTypeDef(BaseModel): + MaxTimeToLiveInMinutes: int + +class CreateGrantRequestRequestTypeDef(BaseModel): + ClientToken: str + GrantName: str + LicenseArn: str + Principals: Sequence[str] + HomeRegion: str + AllowedOperations: Sequence[AllowedOperationType] + +class OptionsTypeDef(BaseModel): + ActivationOverrideBehavior: Optional[ActivationOverrideBehaviorType] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class LicenseConversionContextTypeDef(BaseModel): + UsageOperation: Optional[str] = None + +class ReportContextTypeDef(BaseModel): + licenseConfigurationArns: Sequence[str] + +class ReportFrequencyTypeDef(BaseModel): + value: Optional[int] = None + period: Optional[ReportFrequencyTypeType] = None + +class DatetimeRangeTypeDef(BaseModel): + Begin: str + End: Optional[str] = None + +class EntitlementTypeDef(BaseModel): + Name: str + Unit: EntitlementUnitType + Value: Optional[str] = None + MaxCount: Optional[int] = None + Overage: Optional[bool] = None + AllowCheckIn: Optional[bool] = None + +class IssuerTypeDef(BaseModel): + Name: str + SignKey: Optional[str] = None + +class CreateTokenRequestRequestTypeDef(BaseModel): + LicenseArn: str + ClientToken: str + RoleArns: Optional[Sequence[str]] = None + ExpirationInDays: Optional[int] = None + TokenProperties: Optional[Sequence[str]] = None + +class DeleteGrantRequestRequestTypeDef(BaseModel): + GrantArn: str + Version: str + StatusReason: Optional[str] = None + +class DeleteLicenseConfigurationRequestRequestTypeDef(BaseModel): + LicenseConfigurationArn: str + +class DeleteLicenseManagerReportGeneratorRequestRequestTypeDef(BaseModel): + LicenseManagerReportGeneratorArn: str + +class DeleteLicenseRequestRequestTypeDef(BaseModel): + LicenseArn: str + SourceVersion: str + +class DeleteTokenRequestRequestTypeDef(BaseModel): + TokenId: str + +class EntitlementUsageTypeDef(BaseModel): + Name: str + ConsumedValue: str + Unit: EntitlementDataUnitType + MaxCount: Optional[str] = None + +class ExtendLicenseConsumptionRequestRequestTypeDef(BaseModel): + LicenseConsumptionToken: str + DryRun: Optional[bool] = None + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class GetAccessTokenRequestRequestTypeDef(BaseModel): + Token: str + TokenProperties: Optional[Sequence[str]] = None + +class GetGrantRequestRequestTypeDef(BaseModel): + GrantArn: str + Version: Optional[str] = None + +class GetLicenseConfigurationRequestRequestTypeDef(BaseModel): + LicenseConfigurationArn: str + +class ManagedResourceSummaryTypeDef(BaseModel): + ResourceType: Optional[ResourceTypeType] = None + AssociationCount: Optional[int] = None + +class GetLicenseConversionTaskRequestRequestTypeDef(BaseModel): + LicenseConversionTaskId: str + +class GetLicenseManagerReportGeneratorRequestRequestTypeDef(BaseModel): + LicenseManagerReportGeneratorArn: str + +class GetLicenseRequestRequestTypeDef(BaseModel): + LicenseArn: str + Version: Optional[str] = None + +class GetLicenseUsageRequestRequestTypeDef(BaseModel): + LicenseArn: str + +class OrganizationConfigurationTypeDef(BaseModel): + EnableIntegration: bool + +class IssuerDetailsTypeDef(BaseModel): + Name: Optional[str] = None + SignKey: Optional[str] = None + KeyFingerprint: Optional[str] = None + +class ReceivedMetadataTypeDef(BaseModel): + ReceivedStatus: Optional[ReceivedStatusType] = None + ReceivedStatusReason: Optional[str] = None + AllowedOperations: Optional[List[AllowedOperationType]] = None + +class InventoryFilterTypeDef(BaseModel): + Name: str + Condition: InventoryFilterConditionType + Value: Optional[str] = None + +class LicenseConfigurationAssociationTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + ResourceOwnerId: Optional[str] = None + AssociationTime: Optional[datetime] = None + AmiAssociationScope: Optional[str] = None + +class LicenseConfigurationUsageTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + ResourceStatus: Optional[str] = None + ResourceOwnerId: Optional[str] = None + AssociationTime: Optional[datetime] = None + ConsumedLicenses: Optional[int] = None + +class LicenseSpecificationTypeDef(BaseModel): + LicenseConfigurationArn: str + AmiAssociationScope: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssociationsForLicenseConfigurationRequestRequestTypeDef(BaseModel): + LicenseConfigurationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFailuresForLicenseConfigurationOperationsRequestRequestTypeDef(BaseModel): + LicenseConfigurationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLicenseSpecificationsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLicenseVersionsRequestRequestTypeDef(BaseModel): + LicenseArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResourceInventoryTypeDef(BaseModel): + ResourceId: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + ResourceArn: Optional[str] = None + Platform: Optional[str] = None + PlatformVersion: Optional[str] = None + ResourceOwningAccountId: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TokenDataTypeDef(BaseModel): + TokenId: Optional[str] = None + TokenType: Optional[str] = None + LicenseArn: Optional[str] = None + ExpirationTime: Optional[str] = None + TokenProperties: Optional[List[str]] = None + RoleArns: Optional[List[str]] = None + Status: Optional[str] = None + +class ProductInformationFilterPaginatorTypeDef(BaseModel): + ProductInformationFilterName: str + ProductInformationFilterComparator: str + ProductInformationFilterValue: Optional[List[str]] = None + +class ProductInformationFilterTypeDef(BaseModel): + ProductInformationFilterName: str + ProductInformationFilterComparator: str + ProductInformationFilterValue: Optional[Sequence[str]] = None + +class RejectGrantRequestRequestTypeDef(BaseModel): + GrantArn: str + +class S3LocationTypeDef(BaseModel): + bucket: Optional[str] = None + keyPrefix: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AcceptGrantResponseTypeDef(BaseModel): + GrantArn: str + Status: GrantStatusType + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGrantResponseTypeDef(BaseModel): + GrantArn: str + Status: GrantStatusType + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGrantVersionResponseTypeDef(BaseModel): + GrantArn: str + Status: GrantStatusType + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseConfigurationResponseTypeDef(BaseModel): + LicenseConfigurationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseConversionTaskForResourceResponseTypeDef(BaseModel): + LicenseConversionTaskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseManagerReportGeneratorResponseTypeDef(BaseModel): + LicenseManagerReportGeneratorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseResponseTypeDef(BaseModel): + LicenseArn: str + Status: LicenseStatusType + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseVersionResponseTypeDef(BaseModel): + LicenseArn: str + Version: str + Status: LicenseStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTokenResponseTypeDef(BaseModel): + TokenId: str + TokenType: Literal["REFRESH_TOKEN"] + Token: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGrantResponseTypeDef(BaseModel): + GrantArn: str + Status: GrantStatusType + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLicenseResponseTypeDef(BaseModel): + Status: LicenseDeletionStatusType + DeletionDate: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExtendLicenseConsumptionResponseTypeDef(BaseModel): + LicenseConsumptionToken: str + Expiration: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessTokenResponseTypeDef(BaseModel): + AccessToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RejectGrantResponseTypeDef(BaseModel): + GrantArn: str + Status: GrantStatusType + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CheckoutLicenseRequestRequestTypeDef(BaseModel): + ProductSKU: str + CheckoutType: CheckoutTypeType + KeyFingerprint: str + Entitlements: Sequence[EntitlementDataTypeDef] + ClientToken: str + Beneficiary: Optional[str] = None + NodeId: Optional[str] = None + +class CheckoutLicenseResponseTypeDef(BaseModel): + CheckoutType: CheckoutTypeType + LicenseConsumptionToken: str + EntitlementsAllowed: List[EntitlementDataTypeDef] + SignedToken: str + NodeId: str + IssuedAt: str + Expiration: str + LicenseArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CheckoutBorrowLicenseRequestRequestTypeDef(BaseModel): + LicenseArn: str + Entitlements: Sequence[EntitlementDataTypeDef] + DigitalSignatureMethod: Literal["JWT_PS384"] + ClientToken: str + NodeId: Optional[str] = None + CheckoutMetadata: Optional[Sequence[MetadataTypeDef]] = None + +class CheckoutBorrowLicenseResponseTypeDef(BaseModel): + LicenseArn: str + LicenseConsumptionToken: str + EntitlementsAllowed: List[EntitlementDataTypeDef] + NodeId: str + SignedToken: str + IssuedAt: str + Expiration: str + CheckoutMetadata: List[MetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LicenseOperationFailureTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + ErrorMessage: Optional[str] = None + FailureTime: Optional[datetime] = None + OperationName: Optional[str] = None + ResourceOwnerId: Optional[str] = None + OperationRequestedBy: Optional[str] = None + MetadataList: Optional[List[MetadataTypeDef]] = None + +class ConsumptionConfigurationTypeDef(BaseModel): + RenewType: Optional[RenewTypeType] = None + ProvisionalConfiguration: Optional[ProvisionalConfigurationTypeDef] = None + BorrowConfiguration: Optional[BorrowConfigurationTypeDef] = None + +class CreateGrantVersionRequestRequestTypeDef(BaseModel): + ClientToken: str + GrantArn: str + GrantName: Optional[str] = None + AllowedOperations: Optional[Sequence[AllowedOperationType]] = None + Status: Optional[GrantStatusType] = None + StatusReason: Optional[str] = None + SourceVersion: Optional[str] = None + Options: Optional[OptionsTypeDef] = None + +class GrantTypeDef(BaseModel): + GrantArn: str + GrantName: str + ParentArn: str + LicenseArn: str + GranteePrincipalArn: str + HomeRegion: str + GrantStatus: GrantStatusType + Version: str + GrantedOperations: List[AllowedOperationType] + StatusReason: Optional[str] = None + Options: Optional[OptionsTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateLicenseConversionTaskForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + SourceLicenseContext: LicenseConversionContextTypeDef + DestinationLicenseContext: LicenseConversionContextTypeDef + +class GetLicenseConversionTaskResponseTypeDef(BaseModel): + LicenseConversionTaskId: str + ResourceArn: str + SourceLicenseContext: LicenseConversionContextTypeDef + DestinationLicenseContext: LicenseConversionContextTypeDef + StatusMessage: str + Status: LicenseConversionTaskStatusType + StartTime: datetime + LicenseConversionTime: datetime + EndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class LicenseConversionTaskTypeDef(BaseModel): + LicenseConversionTaskId: Optional[str] = None + ResourceArn: Optional[str] = None + SourceLicenseContext: Optional[LicenseConversionContextTypeDef] = None + DestinationLicenseContext: Optional[LicenseConversionContextTypeDef] = None + Status: Optional[LicenseConversionTaskStatusType] = None + StatusMessage: Optional[str] = None + StartTime: Optional[datetime] = None + LicenseConversionTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class CreateLicenseManagerReportGeneratorRequestRequestTypeDef(BaseModel): + ReportGeneratorName: str + Type: Sequence[ReportTypeType] + ReportContext: ReportContextTypeDef + ReportFrequency: ReportFrequencyTypeDef + ClientToken: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateLicenseManagerReportGeneratorRequestRequestTypeDef(BaseModel): + LicenseManagerReportGeneratorArn: str + ReportGeneratorName: str + Type: Sequence[ReportTypeType] + ReportContext: ReportContextTypeDef + ReportFrequency: ReportFrequencyTypeDef + ClientToken: str + Description: Optional[str] = None + +class LicenseUsageTypeDef(BaseModel): + EntitlementUsages: Optional[List[EntitlementUsageTypeDef]] = None + +class ListDistributedGrantsRequestRequestTypeDef(BaseModel): + GrantArns: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListLicenseConfigurationsRequestRequestTypeDef(BaseModel): + LicenseConfigurationArns: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListLicenseConversionTasksRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListLicenseManagerReportGeneratorsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListLicensesRequestRequestTypeDef(BaseModel): + LicenseArns: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReceivedGrantsForOrganizationRequestRequestTypeDef(BaseModel): + LicenseArn: str + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReceivedGrantsRequestRequestTypeDef(BaseModel): + GrantArns: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReceivedLicensesForOrganizationRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReceivedLicensesRequestRequestTypeDef(BaseModel): + LicenseArns: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTokensRequestRequestTypeDef(BaseModel): + TokenIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListUsageForLicenseConfigurationRequestRequestTypeDef(BaseModel): + LicenseConfigurationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class GetServiceSettingsResponseTypeDef(BaseModel): + S3BucketArn: str + SnsTopicArn: str + OrganizationConfiguration: OrganizationConfigurationTypeDef + EnableCrossAccountsDiscovery: bool + LicenseManagerResourceShareArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceSettingsRequestRequestTypeDef(BaseModel): + S3BucketArn: Optional[str] = None + SnsTopicArn: Optional[str] = None + OrganizationConfiguration: Optional[OrganizationConfigurationTypeDef] = None + EnableCrossAccountsDiscovery: Optional[bool] = None + +class ListResourceInventoryRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[InventoryFilterTypeDef]] = None + +class ListAssociationsForLicenseConfigurationResponseTypeDef(BaseModel): + LicenseConfigurationAssociations: List[LicenseConfigurationAssociationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsageForLicenseConfigurationResponseTypeDef(BaseModel): + LicenseConfigurationUsageList: List[LicenseConfigurationUsageTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseSpecificationsForResourceResponseTypeDef(BaseModel): + LicenseSpecifications: List[LicenseSpecificationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLicenseSpecificationsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + AddLicenseSpecifications: Optional[Sequence[LicenseSpecificationTypeDef]] = None + RemoveLicenseSpecifications: Optional[Sequence[LicenseSpecificationTypeDef]] = None + +class ListAssociationsForLicenseConfigurationRequestListAssociationsForLicenseConfigurationPaginateTypeDef(BaseModel): + LicenseConfigurationArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLicenseConfigurationsRequestListLicenseConfigurationsPaginateTypeDef(BaseModel): + LicenseConfigurationArns: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLicenseSpecificationsForResourceRequestListLicenseSpecificationsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceInventoryRequestListResourceInventoryPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[InventoryFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsageForLicenseConfigurationRequestListUsageForLicenseConfigurationPaginateTypeDef(BaseModel): + LicenseConfigurationArn: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceInventoryResponseTypeDef(BaseModel): + ResourceInventoryList: List[ResourceInventoryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTokensResponseTypeDef(BaseModel): + Tokens: List[TokenDataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProductInformationPaginatorTypeDef(BaseModel): + ResourceType: str + ProductInformationFilterList: List[ProductInformationFilterPaginatorTypeDef] + +class ProductInformationTypeDef(BaseModel): + ResourceType: str + ProductInformationFilterList: Sequence[ProductInformationFilterTypeDef] + +class ReportGeneratorTypeDef(BaseModel): + ReportGeneratorName: Optional[str] = None + ReportType: Optional[List[ReportTypeType]] = None + ReportContext: Optional[ReportContextTypeDef] = None + ReportFrequency: Optional[ReportFrequencyTypeDef] = None + LicenseManagerReportGeneratorArn: Optional[str] = None + LastRunStatus: Optional[str] = None + LastRunFailureReason: Optional[str] = None + LastReportGenerationTime: Optional[str] = None + ReportCreatorAccount: Optional[str] = None + Description: Optional[str] = None + S3Location: Optional[S3LocationTypeDef] = None + CreateTime: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ListFailuresForLicenseConfigurationOperationsResponseTypeDef(BaseModel): + LicenseOperationFailureList: List[LicenseOperationFailureTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLicenseRequestRequestTypeDef(BaseModel): + LicenseName: str + ProductName: str + ProductSKU: str + Issuer: IssuerTypeDef + HomeRegion: str + Validity: DatetimeRangeTypeDef + Entitlements: Sequence[EntitlementTypeDef] + Beneficiary: str + ConsumptionConfiguration: ConsumptionConfigurationTypeDef + ClientToken: str + LicenseMetadata: Optional[Sequence[MetadataTypeDef]] = None + +class CreateLicenseVersionRequestRequestTypeDef(BaseModel): + LicenseArn: str + LicenseName: str + ProductName: str + Issuer: IssuerTypeDef + HomeRegion: str + Validity: DatetimeRangeTypeDef + Entitlements: Sequence[EntitlementTypeDef] + ConsumptionConfiguration: ConsumptionConfigurationTypeDef + Status: LicenseStatusType + ClientToken: str + LicenseMetadata: Optional[Sequence[MetadataTypeDef]] = None + SourceVersion: Optional[str] = None + +class GrantedLicenseTypeDef(BaseModel): + LicenseArn: Optional[str] = None + LicenseName: Optional[str] = None + ProductName: Optional[str] = None + ProductSKU: Optional[str] = None + Issuer: Optional[IssuerDetailsTypeDef] = None + HomeRegion: Optional[str] = None + Status: Optional[LicenseStatusType] = None + Validity: Optional[DatetimeRangeTypeDef] = None + Beneficiary: Optional[str] = None + Entitlements: Optional[List[EntitlementTypeDef]] = None + ConsumptionConfiguration: Optional[ConsumptionConfigurationTypeDef] = None + LicenseMetadata: Optional[List[MetadataTypeDef]] = None + CreateTime: Optional[str] = None + Version: Optional[str] = None + ReceivedMetadata: Optional[ReceivedMetadataTypeDef] = None + +class LicenseTypeDef(BaseModel): + LicenseArn: Optional[str] = None + LicenseName: Optional[str] = None + ProductName: Optional[str] = None + ProductSKU: Optional[str] = None + Issuer: Optional[IssuerDetailsTypeDef] = None + HomeRegion: Optional[str] = None + Status: Optional[LicenseStatusType] = None + Validity: Optional[DatetimeRangeTypeDef] = None + Beneficiary: Optional[str] = None + Entitlements: Optional[List[EntitlementTypeDef]] = None + ConsumptionConfiguration: Optional[ConsumptionConfigurationTypeDef] = None + LicenseMetadata: Optional[List[MetadataTypeDef]] = None + CreateTime: Optional[str] = None + Version: Optional[str] = None + +class GetGrantResponseTypeDef(BaseModel): + Grant: GrantTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDistributedGrantsResponseTypeDef(BaseModel): + Grants: List[GrantTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReceivedGrantsForOrganizationResponseTypeDef(BaseModel): + Grants: List[GrantTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReceivedGrantsResponseTypeDef(BaseModel): + Grants: List[GrantTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseConversionTasksResponseTypeDef(BaseModel): + LicenseConversionTasks: List[LicenseConversionTaskTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLicenseUsageResponseTypeDef(BaseModel): + LicenseUsage: LicenseUsageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LicenseConfigurationPaginatorTypeDef(BaseModel): + LicenseConfigurationId: Optional[str] = None + LicenseConfigurationArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LicenseCountingType: Optional[LicenseCountingTypeType] = None + LicenseRules: Optional[List[str]] = None + LicenseCount: Optional[int] = None + LicenseCountHardLimit: Optional[bool] = None + DisassociateWhenNotFound: Optional[bool] = None + ConsumedLicenses: Optional[int] = None + Status: Optional[str] = None + OwnerAccountId: Optional[str] = None + ConsumedLicenseSummaryList: Optional[List[ConsumedLicenseSummaryTypeDef]] = None + ManagedResourceSummaryList: Optional[List[ManagedResourceSummaryTypeDef]] = None + ProductInformationList: Optional[List[ProductInformationPaginatorTypeDef]] = None + AutomatedDiscoveryInformation: Optional[AutomatedDiscoveryInformationTypeDef] = None + +class CreateLicenseConfigurationRequestRequestTypeDef(BaseModel): + Name: str + LicenseCountingType: LicenseCountingTypeType + Description: Optional[str] = None + LicenseCount: Optional[int] = None + LicenseCountHardLimit: Optional[bool] = None + LicenseRules: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DisassociateWhenNotFound: Optional[bool] = None + ProductInformationList: Optional[Sequence[ProductInformationTypeDef]] = None + +class GetLicenseConfigurationResponseTypeDef(BaseModel): + LicenseConfigurationId: str + LicenseConfigurationArn: str + Name: str + Description: str + LicenseCountingType: LicenseCountingTypeType + LicenseRules: List[str] + LicenseCount: int + LicenseCountHardLimit: bool + ConsumedLicenses: int + Status: str + OwnerAccountId: str + ConsumedLicenseSummaryList: List[ConsumedLicenseSummaryTypeDef] + ManagedResourceSummaryList: List[ManagedResourceSummaryTypeDef] + Tags: List[TagTypeDef] + ProductInformationList: List[ProductInformationTypeDef] + AutomatedDiscoveryInformation: AutomatedDiscoveryInformationTypeDef + DisassociateWhenNotFound: bool + ResponseMetadata: ResponseMetadataTypeDef + +class LicenseConfigurationTypeDef(BaseModel): + LicenseConfigurationId: Optional[str] = None + LicenseConfigurationArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LicenseCountingType: Optional[LicenseCountingTypeType] = None + LicenseRules: Optional[List[str]] = None + LicenseCount: Optional[int] = None + LicenseCountHardLimit: Optional[bool] = None + DisassociateWhenNotFound: Optional[bool] = None + ConsumedLicenses: Optional[int] = None + Status: Optional[str] = None + OwnerAccountId: Optional[str] = None + ConsumedLicenseSummaryList: Optional[List[ConsumedLicenseSummaryTypeDef]] = None + ManagedResourceSummaryList: Optional[List[ManagedResourceSummaryTypeDef]] = None + ProductInformationList: Optional[List[ProductInformationTypeDef]] = None + AutomatedDiscoveryInformation: Optional[AutomatedDiscoveryInformationTypeDef] = None + +class UpdateLicenseConfigurationRequestRequestTypeDef(BaseModel): + LicenseConfigurationArn: str + LicenseConfigurationStatus: Optional[LicenseConfigurationStatusType] = None + LicenseRules: Optional[Sequence[str]] = None + LicenseCount: Optional[int] = None + LicenseCountHardLimit: Optional[bool] = None + Name: Optional[str] = None + Description: Optional[str] = None + ProductInformationList: Optional[Sequence[ProductInformationTypeDef]] = None + DisassociateWhenNotFound: Optional[bool] = None + +class GetLicenseManagerReportGeneratorResponseTypeDef(BaseModel): + ReportGenerator: ReportGeneratorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseManagerReportGeneratorsResponseTypeDef(BaseModel): + ReportGenerators: List[ReportGeneratorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReceivedLicensesForOrganizationResponseTypeDef(BaseModel): + Licenses: List[GrantedLicenseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReceivedLicensesResponseTypeDef(BaseModel): + Licenses: List[GrantedLicenseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLicenseResponseTypeDef(BaseModel): + License: LicenseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseVersionsResponseTypeDef(BaseModel): + Licenses: List[LicenseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicensesResponseTypeDef(BaseModel): + Licenses: List[LicenseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseConfigurationsResponsePaginatorTypeDef(BaseModel): + LicenseConfigurations: List[LicenseConfigurationPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLicenseConfigurationsResponseTypeDef(BaseModel): + LicenseConfigurations: List[LicenseConfigurationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/license_manager_constants.py b/aws_resource_validator/pydantic_models/license_manager_constants.py new file mode 100644 index 00000000..5cf7334c --- /dev/null +++ b/aws_resource_validator/pydantic_models/license_manager_constants.py @@ -0,0 +1,524 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActivationOverrideBehaviorType = Literal["ALL_GRANTS_PERMITTED_BY_ISSUER", "DISTRIBUTED_GRANTS_ONLY"] +AllowedOperationType = Literal["CheckInLicense", + "CheckoutBorrowLicense", + "CheckoutLicense", + "CreateGrant", + "CreateToken", + "ExtendConsumptionLicense", + "ListPurchasedLicenses",] +CheckoutTypeType = Literal["PERPETUAL", "PROVISIONAL"] +DigitalSignatureMethodType = Literal["JWT_PS384"] +EntitlementDataUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +EntitlementUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +GrantStatusType = Literal["ACTIVE", + "DELETED", + "DISABLED", + "FAILED_WORKFLOW", + "PENDING_ACCEPT", + "PENDING_DELETE", + "PENDING_WORKFLOW", + "REJECTED", + "WORKFLOW_COMPLETED",] +InventoryFilterConditionType = Literal["BEGINS_WITH", "CONTAINS", "EQUALS", "NOT_EQUALS"] +LicenseConfigurationStatusType = Literal["AVAILABLE", "DISABLED"] +LicenseConversionTaskStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +LicenseCountingTypeType = Literal["Core", "Instance", "Socket", "vCPU"] +LicenseDeletionStatusType = Literal["DELETED", "PENDING_DELETE"] +LicenseStatusType = Literal["AVAILABLE", + "DEACTIVATED", + "DELETED", + "EXPIRED", + "PENDING_AVAILABLE", + "PENDING_DELETE", + "SUSPENDED",] +ListAssociationsForLicenseConfigurationPaginatorName = Literal["list_associations_for_license_configuration"] +ListLicenseConfigurationsPaginatorName = Literal["list_license_configurations"] +ListLicenseSpecificationsForResourcePaginatorName = Literal["list_license_specifications_for_resource"] +ListResourceInventoryPaginatorName = Literal["list_resource_inventory"] +ListUsageForLicenseConfigurationPaginatorName = Literal["list_usage_for_license_configuration"] +ReceivedStatusType = Literal["ACTIVE", + "DELETED", + "DISABLED", + "FAILED_WORKFLOW", + "PENDING_ACCEPT", + "PENDING_WORKFLOW", + "REJECTED", + "WORKFLOW_COMPLETED",] +RenewTypeType = Literal["Monthly", "None", "Weekly"] +ReportFrequencyTypeType = Literal["DAY", "MONTH", "WEEK"] +ReportTypeType = Literal["LicenseConfigurationSummaryReport", "LicenseConfigurationUsageReport"] +ResourceTypeType = Literal["EC2_AMI", "EC2_HOST", "EC2_INSTANCE", "RDS", "SYSTEMS_MANAGER_MANAGED_INSTANCE"] +TokenTypeType = Literal["REFRESH_TOKEN"] +LicenseManagerServiceName = Literal["license-manager"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_associations_for_license_configuration", + "list_license_configurations", + "list_license_specifications_for_resource", + "list_resource_inventory", + "list_usage_for_license_configuration",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_classes.py b/aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_classes.py new file mode 100644 index 00000000..4bd27c53 --- /dev/null +++ b/aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_classes.py @@ -0,0 +1,172 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.license_manager_linux_subscriptions_constants import * + +class DeregisterSubscriptionProviderRequestRequestTypeDef(BaseModel): + SubscriptionProviderArn: str + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Operator: Optional[OperatorType] = None + Values: Optional[Sequence[str]] = None + +class GetRegisteredSubscriptionProviderRequestRequestTypeDef(BaseModel): + SubscriptionProviderArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class LinuxSubscriptionsDiscoverySettingsOutputTypeDef(BaseModel): + OrganizationIntegration: OrganizationIntegrationType + SourceRegions: List[str] + +class InstanceTypeDef(BaseModel): + AccountID: Optional[str] = None + AmiId: Optional[str] = None + DualSubscription: Optional[str] = None + InstanceID: Optional[str] = None + InstanceType: Optional[str] = None + LastUpdatedTime: Optional[str] = None + OsVersion: Optional[str] = None + ProductCode: Optional[List[str]] = None + Region: Optional[str] = None + RegisteredWithSubscriptionProvider: Optional[str] = None + Status: Optional[str] = None + SubscriptionName: Optional[str] = None + SubscriptionProviderCreateTime: Optional[str] = None + SubscriptionProviderUpdateTime: Optional[str] = None + UsageOperation: Optional[str] = None + +class LinuxSubscriptionsDiscoverySettingsTypeDef(BaseModel): + OrganizationIntegration: OrganizationIntegrationType + SourceRegions: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class SubscriptionTypeDef(BaseModel): + InstanceCount: Optional[int] = None + Name: Optional[str] = None + Type: Optional[str] = None + +class ListRegisteredSubscriptionProvidersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SubscriptionProviderSources: Optional[Sequence[Literal["RedHat"]]] = None + +class RegisteredSubscriptionProviderTypeDef(BaseModel): + LastSuccessfulDataRetrievalTime: Optional[str] = None + SecretArn: Optional[str] = None + SubscriptionProviderArn: Optional[str] = None + SubscriptionProviderSource: Optional[Literal["RedHat"]] = None + SubscriptionProviderStatus: Optional[SubscriptionProviderStatusType] = None + SubscriptionProviderStatusMessage: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RegisterSubscriptionProviderRequestRequestTypeDef(BaseModel): + SecretArn: str + SubscriptionProviderSource: Literal["RedHat"] + Tags: Optional[Mapping[str, str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class ListLinuxSubscriptionInstancesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLinuxSubscriptionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetRegisteredSubscriptionProviderResponseTypeDef(BaseModel): + LastSuccessfulDataRetrievalTime: str + SecretArn: str + SubscriptionProviderArn: str + SubscriptionProviderSource: Literal["RedHat"] + SubscriptionProviderStatus: SubscriptionProviderStatusType + SubscriptionProviderStatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterSubscriptionProviderResponseTypeDef(BaseModel): + SubscriptionProviderArn: str + SubscriptionProviderSource: Literal["RedHat"] + SubscriptionProviderStatus: SubscriptionProviderStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceSettingsResponseTypeDef(BaseModel): + HomeRegions: List[str] + LinuxSubscriptionsDiscovery: LinuxSubscriptionsDiscoveryType + LinuxSubscriptionsDiscoverySettings: LinuxSubscriptionsDiscoverySettingsOutputTypeDef + Status: StatusType + StatusMessage: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceSettingsResponseTypeDef(BaseModel): + HomeRegions: List[str] + LinuxSubscriptionsDiscovery: LinuxSubscriptionsDiscoveryType + LinuxSubscriptionsDiscoverySettings: LinuxSubscriptionsDiscoverySettingsOutputTypeDef + Status: StatusType + StatusMessage: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListLinuxSubscriptionInstancesResponseTypeDef(BaseModel): + Instances: List[InstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateServiceSettingsRequestRequestTypeDef(BaseModel): + LinuxSubscriptionsDiscovery: LinuxSubscriptionsDiscoveryType + LinuxSubscriptionsDiscoverySettings: LinuxSubscriptionsDiscoverySettingsTypeDef + AllowUpdate: Optional[bool] = None + +class ListLinuxSubscriptionInstancesRequestListLinuxSubscriptionInstancesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLinuxSubscriptionsRequestListLinuxSubscriptionsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegisteredSubscriptionProvidersRequestListRegisteredSubscriptionProvidersPaginateTypeDef(BaseModel): + SubscriptionProviderSources: Optional[Sequence[Literal["RedHat"]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLinuxSubscriptionsResponseTypeDef(BaseModel): + Subscriptions: List[SubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRegisteredSubscriptionProvidersResponseTypeDef(BaseModel): + RegisteredSubscriptionProviders: List[RegisteredSubscriptionProviderTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_constants.py b/aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_constants.py new file mode 100644 index 00000000..88651fb7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/license_manager_linux_subscriptions_constants.py @@ -0,0 +1,442 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +LinuxSubscriptionsDiscoveryType = Literal["Disabled", "Enabled"] +ListLinuxSubscriptionInstancesPaginatorName = Literal["list_linux_subscription_instances"] +ListLinuxSubscriptionsPaginatorName = Literal["list_linux_subscriptions"] +ListRegisteredSubscriptionProvidersPaginatorName = Literal["list_registered_subscription_providers"] +OperatorType = Literal["Contains", "Equal", "NotEqual"] +OrganizationIntegrationType = Literal["Disabled", "Enabled"] +StatusType = Literal["Completed", "Failed", "InProgress", "Successful"] +SubscriptionProviderSourceType = Literal["RedHat"] +SubscriptionProviderStatusType = Literal["ACTIVE", "INVALID", "PENDING"] +LicenseManagerLinuxSubscriptionsServiceName = Literal["license-manager-linux-subscriptions"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_linux_subscription_instances", + "list_linux_subscriptions", + "list_registered_subscription_providers",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +LinuxSubscriptionsDiscoverySettingsUnionTypeDef = Union[ 'LinuxSubscriptionsDiscoverySettingsTypeDef', 'LinuxSubscriptionsDiscoverySettingsOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/license_manager_user_subscriptions_classes.py b/aws_resource_validator/pydantic_models/license_manager_user_subscriptions_classes.py new file mode 100644 index 00000000..8d1426bf --- /dev/null +++ b/aws_resource_validator/pydantic_models/license_manager_user_subscriptions_classes.py @@ -0,0 +1,207 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.license_manager_user_subscriptions_constants import * + +class ActiveDirectoryIdentityProviderTypeDef(BaseModel): + DirectoryId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class FilterTypeDef(BaseModel): + Attribute: Optional[str] = None + Operation: Optional[str] = None + Value: Optional[str] = None + +class SettingsTypeDef(BaseModel): + SecurityGroupId: str + Subnets: List[str] + +class InstanceSummaryTypeDef(BaseModel): + InstanceId: str + Products: List[str] + Status: str + LastStatusCheckDate: Optional[str] = None + StatusMessage: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListIdentityProvidersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UpdateSettingsTypeDef(BaseModel): + AddSubnets: Sequence[str] + RemoveSubnets: Sequence[str] + SecurityGroupId: Optional[str] = None + +class IdentityProviderTypeDef(BaseModel): + ActiveDirectoryIdentityProvider: Optional[ActiveDirectoryIdentityProviderTypeDef] = None + +class ListInstancesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInstancesResponseTypeDef(BaseModel): + InstanceSummaries: List[InstanceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdentityProvidersRequestListIdentityProvidersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstancesRequestListInstancesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class AssociateUserRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + InstanceId: str + Username: str + Domain: Optional[str] = None + +class DeregisterIdentityProviderRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + +class DisassociateUserRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + InstanceId: str + Username: str + Domain: Optional[str] = None + +class IdentityProviderSummaryTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Settings: SettingsTypeDef + Status: str + FailureMessage: Optional[str] = None + +class InstanceUserSummaryTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + InstanceId: str + Status: str + Username: str + AssociationDate: Optional[str] = None + DisassociationDate: Optional[str] = None + Domain: Optional[str] = None + StatusMessage: Optional[str] = None + +class ListProductSubscriptionsRequestListProductSubscriptionsPaginateTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProductSubscriptionsRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListUserAssociationsRequestListUserAssociationsPaginateTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + InstanceId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserAssociationsRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + InstanceId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ProductUserSummaryTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Status: str + Username: str + Domain: Optional[str] = None + StatusMessage: Optional[str] = None + SubscriptionEndDate: Optional[str] = None + SubscriptionStartDate: Optional[str] = None + +class RegisterIdentityProviderRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Settings: Optional[SettingsTypeDef] = None + +class StartProductSubscriptionRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Username: str + Domain: Optional[str] = None + +class StopProductSubscriptionRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + Username: str + Domain: Optional[str] = None + +class UpdateIdentityProviderSettingsRequestRequestTypeDef(BaseModel): + IdentityProvider: IdentityProviderTypeDef + Product: str + UpdateSettings: UpdateSettingsTypeDef + +class DeregisterIdentityProviderResponseTypeDef(BaseModel): + IdentityProviderSummary: IdentityProviderSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdentityProvidersResponseTypeDef(BaseModel): + IdentityProviderSummaries: List[IdentityProviderSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterIdentityProviderResponseTypeDef(BaseModel): + IdentityProviderSummary: IdentityProviderSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdentityProviderSettingsResponseTypeDef(BaseModel): + IdentityProviderSummary: IdentityProviderSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateUserResponseTypeDef(BaseModel): + InstanceUserSummary: InstanceUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateUserResponseTypeDef(BaseModel): + InstanceUserSummary: InstanceUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserAssociationsResponseTypeDef(BaseModel): + InstanceUserSummaries: List[InstanceUserSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProductSubscriptionsResponseTypeDef(BaseModel): + NextToken: str + ProductUserSummaries: List[ProductUserSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartProductSubscriptionResponseTypeDef(BaseModel): + ProductUserSummary: ProductUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopProductSubscriptionResponseTypeDef(BaseModel): + ProductUserSummary: ProductUserSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/license_manager_user_subscriptions_constants.py b/aws_resource_validator/pydantic_models/license_manager_user_subscriptions_constants.py new file mode 100644 index 00000000..edaafef7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/license_manager_user_subscriptions_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListIdentityProvidersPaginatorName = Literal["list_identity_providers"] +ListInstancesPaginatorName = Literal["list_instances"] +ListProductSubscriptionsPaginatorName = Literal["list_product_subscriptions"] +ListUserAssociationsPaginatorName = Literal["list_user_associations"] +LicenseManagerUserSubscriptionsServiceName = Literal["license-manager-user-subscriptions"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_identity_providers", + "list_instances", + "list_product_subscriptions", + "list_user_associations",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/lightsail_classes.py b/aws_resource_validator/pydantic_models/lightsail_classes.py new file mode 100644 index 00000000..e9f8a19d --- /dev/null +++ b/aws_resource_validator/pydantic_models/lightsail_classes.py @@ -0,0 +1,2488 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lightsail_constants import * + +class AccessKeyLastUsedTypeDef(BaseModel): + lastUsedDate: Optional[datetime] = None + region: Optional[str] = None + serviceName: Optional[str] = None + +class AccessRulesTypeDef(BaseModel): + getObject: Optional[AccessTypeType] = None + allowPublicOverrides: Optional[bool] = None + +class AccountLevelBpaSyncTypeDef(BaseModel): + status: Optional[AccountLevelBpaSyncStatusType] = None + lastSyncedAt: Optional[datetime] = None + message: Optional[BPAStatusMessageType] = None + bpaImpactsLightsail: Optional[bool] = None + +class AutoSnapshotAddOnRequestTypeDef(BaseModel): + snapshotTimeOfDay: Optional[str] = None + +class StopInstanceOnIdleRequestTypeDef(BaseModel): + threshold: Optional[str] = None + duration: Optional[str] = None + +class AddOnTypeDef(BaseModel): + name: Optional[str] = None + status: Optional[str] = None + snapshotTimeOfDay: Optional[str] = None + nextSnapshotTimeOfDay: Optional[str] = None + threshold: Optional[str] = None + duration: Optional[str] = None + +class MonitoredResourceInfoTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + +class ResourceLocationTypeDef(BaseModel): + availabilityZone: Optional[str] = None + regionName: Optional[RegionNameType] = None + +class AllocateStaticIpRequestRequestTypeDef(BaseModel): + staticIpName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AttachCertificateToDistributionRequestRequestTypeDef(BaseModel): + distributionName: str + certificateName: str + +class AttachDiskRequestRequestTypeDef(BaseModel): + diskName: str + instanceName: str + diskPath: str + autoMounting: Optional[bool] = None + +class AttachInstancesToLoadBalancerRequestRequestTypeDef(BaseModel): + loadBalancerName: str + instanceNames: Sequence[str] + +class AttachLoadBalancerTlsCertificateRequestRequestTypeDef(BaseModel): + loadBalancerName: str + certificateName: str + +class AttachStaticIpRequestRequestTypeDef(BaseModel): + staticIpName: str + instanceName: str + +class AttachedDiskTypeDef(BaseModel): + path: Optional[str] = None + sizeInGb: Optional[int] = None + +class AvailabilityZoneTypeDef(BaseModel): + zoneName: Optional[str] = None + state: Optional[str] = None + +class BlueprintTypeDef(BaseModel): + blueprintId: Optional[str] = None + name: Optional[str] = None + group: Optional[str] = None + type: Optional[BlueprintTypeType] = None + description: Optional[str] = None + isActive: Optional[bool] = None + minPower: Optional[int] = None + version: Optional[str] = None + versionCode: Optional[str] = None + productUrl: Optional[str] = None + licenseUrl: Optional[str] = None + platform: Optional[InstancePlatformType] = None + appCategory: Optional[Literal["LfR"]] = None + +class BucketAccessLogConfigTypeDef(BaseModel): + enabled: bool + destination: Optional[str] = None + prefix: Optional[str] = None + +class BucketBundleTypeDef(BaseModel): + bundleId: Optional[str] = None + name: Optional[str] = None + price: Optional[float] = None + storagePerMonthInGb: Optional[int] = None + transferPerMonthInGb: Optional[int] = None + isActive: Optional[bool] = None + +class BucketStateTypeDef(BaseModel): + code: Optional[str] = None + message: Optional[str] = None + +class ResourceReceivingAccessTypeDef(BaseModel): + name: Optional[str] = None + resourceType: Optional[str] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class BundleTypeDef(BaseModel): + price: Optional[float] = None + cpuCount: Optional[int] = None + diskSizeInGb: Optional[int] = None + bundleId: Optional[str] = None + instanceType: Optional[str] = None + isActive: Optional[bool] = None + name: Optional[str] = None + power: Optional[int] = None + ramSizeInGb: Optional[float] = None + transferPerMonthInGb: Optional[int] = None + supportedPlatforms: Optional[List[InstancePlatformType]] = None + supportedAppCategories: Optional[List[Literal["LfR"]]] = None + publicIpv4AddressCount: Optional[int] = None + +class CacheBehaviorPerPathTypeDef(BaseModel): + path: Optional[str] = None + behavior: Optional[BehaviorEnumType] = None + +class CacheBehaviorTypeDef(BaseModel): + behavior: Optional[BehaviorEnumType] = None + +class CookieObjectOutputTypeDef(BaseModel): + option: Optional[ForwardValuesType] = None + cookiesAllowList: Optional[List[str]] = None + +class HeaderObjectOutputTypeDef(BaseModel): + option: Optional[ForwardValuesType] = None + headersAllowList: Optional[List[HeaderEnumType]] = None + +class QueryStringObjectOutputTypeDef(BaseModel): + option: Optional[bool] = None + queryStringsAllowList: Optional[List[str]] = None + +class CookieObjectTypeDef(BaseModel): + option: Optional[ForwardValuesType] = None + cookiesAllowList: Optional[Sequence[str]] = None + +class HeaderObjectTypeDef(BaseModel): + option: Optional[ForwardValuesType] = None + headersAllowList: Optional[Sequence[HeaderEnumType]] = None + +class QueryStringObjectTypeDef(BaseModel): + option: Optional[bool] = None + queryStringsAllowList: Optional[Sequence[str]] = None + +class PortInfoTypeDef(BaseModel): + fromPort: Optional[int] = None + toPort: Optional[int] = None + protocol: Optional[NetworkProtocolType] = None + cidrs: Optional[Sequence[str]] = None + ipv6Cidrs: Optional[Sequence[str]] = None + cidrListAliases: Optional[Sequence[str]] = None + +class CloudFormationStackRecordSourceInfoTypeDef(BaseModel): + resourceType: Optional[Literal["ExportSnapshotRecord"]] = None + name: Optional[str] = None + arn: Optional[str] = None + +class DestinationInfoTypeDef(BaseModel): + id: Optional[str] = None + service: Optional[str] = None + +class ContainerImageTypeDef(BaseModel): + image: Optional[str] = None + digest: Optional[str] = None + createdAt: Optional[datetime] = None + +class ContainerOutputTypeDef(BaseModel): + image: Optional[str] = None + command: Optional[List[str]] = None + environment: Optional[Dict[str, str]] = None + ports: Optional[Dict[str, ContainerServiceProtocolType]] = None + +class ContainerTypeDef(BaseModel): + image: Optional[str] = None + command: Optional[Sequence[str]] = None + environment: Optional[Mapping[str, str]] = None + ports: Optional[Mapping[str, ContainerServiceProtocolType]] = None + +class ContainerServiceECRImagePullerRoleRequestTypeDef(BaseModel): + isActive: Optional[bool] = None + +class ContainerServiceECRImagePullerRoleTypeDef(BaseModel): + isActive: Optional[bool] = None + principalArn: Optional[str] = None + +class ContainerServiceHealthCheckConfigTypeDef(BaseModel): + healthyThreshold: Optional[int] = None + unhealthyThreshold: Optional[int] = None + timeoutSeconds: Optional[int] = None + intervalSeconds: Optional[int] = None + path: Optional[str] = None + successCodes: Optional[str] = None + +class ContainerServiceLogEventTypeDef(BaseModel): + createdAt: Optional[datetime] = None + message: Optional[str] = None + +class ContainerServicePowerTypeDef(BaseModel): + powerId: Optional[str] = None + price: Optional[float] = None + cpuCount: Optional[float] = None + ramSizeInGb: Optional[float] = None + name: Optional[str] = None + isActive: Optional[bool] = None + +class ContainerServiceRegistryLoginTypeDef(BaseModel): + username: Optional[str] = None + password: Optional[str] = None + expiresAt: Optional[datetime] = None + registry: Optional[str] = None + +class ContainerServiceStateDetailTypeDef(BaseModel): + code: Optional[ContainerServiceStateDetailCodeType] = None + message: Optional[str] = None + +class CopySnapshotRequestRequestTypeDef(BaseModel): + targetSnapshotName: str + sourceRegion: RegionNameType + sourceSnapshotName: Optional[str] = None + sourceResourceName: Optional[str] = None + restoreDate: Optional[str] = None + useLatestRestorableAutoSnapshot: Optional[bool] = None + +class CreateBucketAccessKeyRequestRequestTypeDef(BaseModel): + bucketName: str + +class InstanceEntryTypeDef(BaseModel): + sourceName: str + instanceType: str + portInfoSource: PortInfoSourceTypeType + availabilityZone: str + userData: Optional[str] = None + +class CreateContactMethodRequestRequestTypeDef(BaseModel): + protocol: ContactProtocolType + contactEndpoint: str + +class InputOriginTypeDef(BaseModel): + name: Optional[str] = None + regionName: Optional[RegionNameType] = None + protocolPolicy: Optional[OriginProtocolPolicyEnumType] = None + responseTimeout: Optional[int] = None + +class DomainEntryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + target: Optional[str] = None + isAlias: Optional[bool] = None + type: Optional[str] = None + options: Optional[Mapping[str, str]] = None + +class CreateGUISessionAccessDetailsRequestRequestTypeDef(BaseModel): + resourceName: str + +class SessionTypeDef(BaseModel): + name: Optional[str] = None + url: Optional[str] = None + isPrimary: Optional[bool] = None + +class DiskMapTypeDef(BaseModel): + originalDiskPath: Optional[str] = None + newDiskName: Optional[str] = None + +class DeleteAlarmRequestRequestTypeDef(BaseModel): + alarmName: str + +class DeleteAutoSnapshotRequestRequestTypeDef(BaseModel): + resourceName: str + date: str + +class DeleteBucketAccessKeyRequestRequestTypeDef(BaseModel): + bucketName: str + accessKeyId: str + +class DeleteBucketRequestRequestTypeDef(BaseModel): + bucketName: str + forceDelete: Optional[bool] = None + +class DeleteCertificateRequestRequestTypeDef(BaseModel): + certificateName: str + +class DeleteContactMethodRequestRequestTypeDef(BaseModel): + protocol: ContactProtocolType + +class DeleteContainerImageRequestRequestTypeDef(BaseModel): + serviceName: str + image: str + +class DeleteContainerServiceRequestRequestTypeDef(BaseModel): + serviceName: str + +class DeleteDiskRequestRequestTypeDef(BaseModel): + diskName: str + forceDeleteAddOns: Optional[bool] = None + +class DeleteDiskSnapshotRequestRequestTypeDef(BaseModel): + diskSnapshotName: str + +class DeleteDistributionRequestRequestTypeDef(BaseModel): + distributionName: Optional[str] = None + +class DeleteDomainRequestRequestTypeDef(BaseModel): + domainName: str + +class DeleteInstanceRequestRequestTypeDef(BaseModel): + instanceName: str + forceDeleteAddOns: Optional[bool] = None + +class DeleteInstanceSnapshotRequestRequestTypeDef(BaseModel): + instanceSnapshotName: str + +class DeleteKeyPairRequestRequestTypeDef(BaseModel): + keyPairName: str + expectedFingerprint: Optional[str] = None + +class DeleteKnownHostKeysRequestRequestTypeDef(BaseModel): + instanceName: str + +class DeleteLoadBalancerRequestRequestTypeDef(BaseModel): + loadBalancerName: str + +class DeleteLoadBalancerTlsCertificateRequestRequestTypeDef(BaseModel): + loadBalancerName: str + certificateName: str + force: Optional[bool] = None + +class DeleteRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + skipFinalSnapshot: Optional[bool] = None + finalRelationalDatabaseSnapshotName: Optional[str] = None + +class DeleteRelationalDatabaseSnapshotRequestRequestTypeDef(BaseModel): + relationalDatabaseSnapshotName: str + +class DetachCertificateFromDistributionRequestRequestTypeDef(BaseModel): + distributionName: str + +class DetachDiskRequestRequestTypeDef(BaseModel): + diskName: str + +class DetachInstancesFromLoadBalancerRequestRequestTypeDef(BaseModel): + loadBalancerName: str + instanceNames: Sequence[str] + +class DetachStaticIpRequestRequestTypeDef(BaseModel): + staticIpName: str + +class DisableAddOnRequestRequestTypeDef(BaseModel): + addOnType: AddOnTypeType + resourceName: str + +class DiskInfoTypeDef(BaseModel): + name: Optional[str] = None + path: Optional[str] = None + sizeInGb: Optional[int] = None + isSystemDisk: Optional[bool] = None + +class DiskSnapshotInfoTypeDef(BaseModel): + sizeInGb: Optional[int] = None + +class DistributionBundleTypeDef(BaseModel): + bundleId: Optional[str] = None + name: Optional[str] = None + price: Optional[float] = None + transferPerMonthInGb: Optional[int] = None + isActive: Optional[bool] = None + +class DnsRecordCreationStateTypeDef(BaseModel): + code: Optional[DnsRecordCreationStateCodeType] = None + message: Optional[str] = None + +class DomainEntryExtraOutputTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + target: Optional[str] = None + isAlias: Optional[bool] = None + type: Optional[str] = None + options: Optional[Dict[str, str]] = None + +class DomainEntryOutputTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + target: Optional[str] = None + isAlias: Optional[bool] = None + type: Optional[str] = None + options: Optional[Dict[str, str]] = None + +class ResourceRecordTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + value: Optional[str] = None + +class TimePeriodTypeDef(BaseModel): + start: Optional[datetime] = None + end: Optional[datetime] = None + +class ExportSnapshotRequestRequestTypeDef(BaseModel): + sourceSnapshotName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetActiveNamesRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetAlarmsRequestRequestTypeDef(BaseModel): + alarmName: Optional[str] = None + pageToken: Optional[str] = None + monitoredResourceName: Optional[str] = None + +class GetAutoSnapshotsRequestRequestTypeDef(BaseModel): + resourceName: str + +class GetBlueprintsRequestRequestTypeDef(BaseModel): + includeInactive: Optional[bool] = None + pageToken: Optional[str] = None + appCategory: Optional[Literal["LfR"]] = None + +class GetBucketAccessKeysRequestRequestTypeDef(BaseModel): + bucketName: str + +class GetBucketBundlesRequestRequestTypeDef(BaseModel): + includeInactive: Optional[bool] = None + +class MetricDatapointTypeDef(BaseModel): + average: Optional[float] = None + maximum: Optional[float] = None + minimum: Optional[float] = None + sampleCount: Optional[float] = None + sum: Optional[float] = None + timestamp: Optional[datetime] = None + unit: Optional[MetricUnitType] = None + +class GetBucketsRequestRequestTypeDef(BaseModel): + bucketName: Optional[str] = None + pageToken: Optional[str] = None + includeConnectedResources: Optional[bool] = None + +class GetBundlesRequestRequestTypeDef(BaseModel): + includeInactive: Optional[bool] = None + pageToken: Optional[str] = None + appCategory: Optional[Literal["LfR"]] = None + +class GetCertificatesRequestRequestTypeDef(BaseModel): + certificateStatuses: Optional[Sequence[CertificateStatusType]] = None + includeCertificateDetails: Optional[bool] = None + certificateName: Optional[str] = None + pageToken: Optional[str] = None + +class GetCloudFormationStackRecordsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetContactMethodsRequestRequestTypeDef(BaseModel): + protocols: Optional[Sequence[ContactProtocolType]] = None + +class GetContainerImagesRequestRequestTypeDef(BaseModel): + serviceName: str + +class GetContainerServiceDeploymentsRequestRequestTypeDef(BaseModel): + serviceName: str + +class GetContainerServicesRequestRequestTypeDef(BaseModel): + serviceName: Optional[str] = None + +class GetDiskRequestRequestTypeDef(BaseModel): + diskName: str + +class GetDiskSnapshotRequestRequestTypeDef(BaseModel): + diskSnapshotName: str + +class GetDiskSnapshotsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetDisksRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetDistributionLatestCacheResetRequestRequestTypeDef(BaseModel): + distributionName: Optional[str] = None + +class GetDistributionsRequestRequestTypeDef(BaseModel): + distributionName: Optional[str] = None + pageToken: Optional[str] = None + +class GetDomainRequestRequestTypeDef(BaseModel): + domainName: str + +class GetDomainsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetExportSnapshotRecordsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetInstanceAccessDetailsRequestRequestTypeDef(BaseModel): + instanceName: str + protocol: Optional[InstanceAccessProtocolType] = None + +class GetInstancePortStatesRequestRequestTypeDef(BaseModel): + instanceName: str + +class InstancePortStateTypeDef(BaseModel): + fromPort: Optional[int] = None + toPort: Optional[int] = None + protocol: Optional[NetworkProtocolType] = None + state: Optional[PortStateType] = None + cidrs: Optional[List[str]] = None + ipv6Cidrs: Optional[List[str]] = None + cidrListAliases: Optional[List[str]] = None + +class GetInstanceRequestRequestTypeDef(BaseModel): + instanceName: str + +class GetInstanceSnapshotRequestRequestTypeDef(BaseModel): + instanceSnapshotName: str + +class GetInstanceSnapshotsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetInstanceStateRequestRequestTypeDef(BaseModel): + instanceName: str + +class InstanceStateTypeDef(BaseModel): + code: Optional[int] = None + name: Optional[str] = None + +class GetInstancesRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetKeyPairRequestRequestTypeDef(BaseModel): + keyPairName: str + +class GetKeyPairsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + includeDefaultKeyPair: Optional[bool] = None + +class GetLoadBalancerRequestRequestTypeDef(BaseModel): + loadBalancerName: str + +class GetLoadBalancerTlsCertificatesRequestRequestTypeDef(BaseModel): + loadBalancerName: str + +class GetLoadBalancerTlsPoliciesRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class LoadBalancerTlsPolicyTypeDef(BaseModel): + name: Optional[str] = None + isDefault: Optional[bool] = None + description: Optional[str] = None + protocols: Optional[List[str]] = None + ciphers: Optional[List[str]] = None + +class GetLoadBalancersRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetOperationRequestRequestTypeDef(BaseModel): + operationId: str + +class GetOperationsForResourceRequestRequestTypeDef(BaseModel): + resourceName: str + pageToken: Optional[str] = None + +class GetOperationsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetRegionsRequestRequestTypeDef(BaseModel): + includeAvailabilityZones: Optional[bool] = None + includeRelationalDatabaseAvailabilityZones: Optional[bool] = None + +class GetRelationalDatabaseBlueprintsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class RelationalDatabaseBlueprintTypeDef(BaseModel): + blueprintId: Optional[str] = None + engine: Optional[Literal["mysql"]] = None + engineVersion: Optional[str] = None + engineDescription: Optional[str] = None + engineVersionDescription: Optional[str] = None + isEngineDefault: Optional[bool] = None + +class GetRelationalDatabaseBundlesRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + includeInactive: Optional[bool] = None + +class RelationalDatabaseBundleTypeDef(BaseModel): + bundleId: Optional[str] = None + name: Optional[str] = None + price: Optional[float] = None + ramSizeInGb: Optional[float] = None + diskSizeInGb: Optional[int] = None + transferPerMonthInGb: Optional[int] = None + cpuCount: Optional[int] = None + isEncrypted: Optional[bool] = None + isActive: Optional[bool] = None + +class GetRelationalDatabaseEventsRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + durationInMinutes: Optional[int] = None + pageToken: Optional[str] = None + +class RelationalDatabaseEventTypeDef(BaseModel): + resource: Optional[str] = None + createdAt: Optional[datetime] = None + message: Optional[str] = None + eventCategories: Optional[List[str]] = None + +class LogEventTypeDef(BaseModel): + createdAt: Optional[datetime] = None + message: Optional[str] = None + +class GetRelationalDatabaseLogStreamsRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + +class GetRelationalDatabaseMasterUserPasswordRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + passwordVersion: Optional[RelationalDatabasePasswordVersionType] = None + +class GetRelationalDatabaseParametersRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + pageToken: Optional[str] = None + +class RelationalDatabaseParameterTypeDef(BaseModel): + allowedValues: Optional[str] = None + applyMethod: Optional[str] = None + applyType: Optional[str] = None + dataType: Optional[str] = None + description: Optional[str] = None + isModifiable: Optional[bool] = None + parameterName: Optional[str] = None + parameterValue: Optional[str] = None + +class GetRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + +class GetRelationalDatabaseSnapshotRequestRequestTypeDef(BaseModel): + relationalDatabaseSnapshotName: str + +class GetRelationalDatabaseSnapshotsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetRelationalDatabasesRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class GetSetupHistoryRequestRequestTypeDef(BaseModel): + resourceName: str + pageToken: Optional[str] = None + +class GetStaticIpRequestRequestTypeDef(BaseModel): + staticIpName: str + +class GetStaticIpsRequestRequestTypeDef(BaseModel): + pageToken: Optional[str] = None + +class HostKeyAttributesTypeDef(BaseModel): + algorithm: Optional[str] = None + publicKey: Optional[str] = None + witnessedAt: Optional[datetime] = None + fingerprintSHA1: Optional[str] = None + fingerprintSHA256: Optional[str] = None + notValidBefore: Optional[datetime] = None + notValidAfter: Optional[datetime] = None + +class ImportKeyPairRequestRequestTypeDef(BaseModel): + keyPairName: str + publicKeyBase64: str + +class PasswordDataTypeDef(BaseModel): + ciphertext: Optional[str] = None + keyPairName: Optional[str] = None + +class InstanceHealthSummaryTypeDef(BaseModel): + instanceName: Optional[str] = None + instanceHealth: Optional[InstanceHealthStateType] = None + instanceHealthReason: Optional[InstanceHealthReasonType] = None + +class InstanceMetadataOptionsTypeDef(BaseModel): + state: Optional[InstanceMetadataStateType] = None + httpTokens: Optional[HttpTokensType] = None + httpEndpoint: Optional[HttpEndpointType] = None + httpPutResponseHopLimit: Optional[int] = None + httpProtocolIpv6: Optional[HttpProtocolIpv6Type] = None + +class InstancePortInfoTypeDef(BaseModel): + fromPort: Optional[int] = None + toPort: Optional[int] = None + protocol: Optional[NetworkProtocolType] = None + accessFrom: Optional[str] = None + accessType: Optional[PortAccessTypeType] = None + commonName: Optional[str] = None + accessDirection: Optional[AccessDirectionType] = None + cidrs: Optional[List[str]] = None + ipv6Cidrs: Optional[List[str]] = None + cidrListAliases: Optional[List[str]] = None + +class MonthlyTransferTypeDef(BaseModel): + gbPerMonthAllocated: Optional[int] = None + +class OriginTypeDef(BaseModel): + name: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + regionName: Optional[RegionNameType] = None + protocolPolicy: Optional[OriginProtocolPolicyEnumType] = None + responseTimeout: Optional[int] = None + +class LoadBalancerTlsCertificateDnsRecordCreationStateTypeDef(BaseModel): + code: Optional[LoadBalancerTlsCertificateDnsRecordCreationStateCodeType] = None + message: Optional[str] = None + +class LoadBalancerTlsCertificateDomainValidationOptionTypeDef(BaseModel): + domainName: Optional[str] = None + validationStatus: Optional[LoadBalancerTlsCertificateDomainStatusType] = None + +class LoadBalancerTlsCertificateSummaryTypeDef(BaseModel): + name: Optional[str] = None + isAttached: Optional[bool] = None + +class NameServersUpdateStateTypeDef(BaseModel): + code: Optional[NameServersUpdateStateCodeType] = None + message: Optional[str] = None + +class PendingMaintenanceActionTypeDef(BaseModel): + action: Optional[str] = None + description: Optional[str] = None + currentApplyDate: Optional[datetime] = None + +class PendingModifiedRelationalDatabaseValuesTypeDef(BaseModel): + masterUserPassword: Optional[str] = None + engineVersion: Optional[str] = None + backupRetentionEnabled: Optional[bool] = None + +class PutAlarmRequestRequestTypeDef(BaseModel): + alarmName: str + metricName: MetricNameType + monitoredResourceName: str + comparisonOperator: ComparisonOperatorType + threshold: float + evaluationPeriods: int + datapointsToAlarm: Optional[int] = None + treatMissingData: Optional[TreatMissingDataType] = None + contactProtocols: Optional[Sequence[ContactProtocolType]] = None + notificationTriggers: Optional[Sequence[AlarmStateType]] = None + notificationEnabled: Optional[bool] = None + +class R53HostedZoneDeletionStateTypeDef(BaseModel): + code: Optional[R53HostedZoneDeletionStateCodeType] = None + message: Optional[str] = None + +class RebootInstanceRequestRequestTypeDef(BaseModel): + instanceName: str + +class RebootRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + +class RegisterContainerImageRequestRequestTypeDef(BaseModel): + serviceName: str + label: str + digest: str + +class RelationalDatabaseEndpointTypeDef(BaseModel): + port: Optional[int] = None + address: Optional[str] = None + +class RelationalDatabaseHardwareTypeDef(BaseModel): + cpuCount: Optional[int] = None + diskSizeInGb: Optional[int] = None + ramSizeInGb: Optional[float] = None + +class ReleaseStaticIpRequestRequestTypeDef(BaseModel): + staticIpName: str + +class ResetDistributionCacheRequestRequestTypeDef(BaseModel): + distributionName: Optional[str] = None + +class SendContactMethodVerificationRequestRequestTypeDef(BaseModel): + protocol: Literal["Email"] + +class SetIpAddressTypeRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + resourceName: str + ipAddressType: IpAddressTypeType + acceptBundleUpdate: Optional[bool] = None + +class SetResourceAccessForBucketRequestRequestTypeDef(BaseModel): + resourceName: str + bucketName: str + access: ResourceBucketAccessType + +class SetupExecutionDetailsTypeDef(BaseModel): + command: Optional[str] = None + dateTime: Optional[datetime] = None + name: Optional[str] = None + status: Optional[SetupStatusType] = None + standardError: Optional[str] = None + standardOutput: Optional[str] = None + version: Optional[str] = None + +class SetupRequestTypeDef(BaseModel): + instanceName: Optional[str] = None + domainNames: Optional[List[str]] = None + certificateProvider: Optional[Literal["LetsEncrypt"]] = None + +class SetupInstanceHttpsRequestRequestTypeDef(BaseModel): + instanceName: str + emailAddress: str + domainNames: Sequence[str] + certificateProvider: Literal["LetsEncrypt"] + +class StartGUISessionRequestRequestTypeDef(BaseModel): + resourceName: str + +class StartInstanceRequestRequestTypeDef(BaseModel): + instanceName: str + +class StartRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + +class StopGUISessionRequestRequestTypeDef(BaseModel): + resourceName: str + +class StopInstanceRequestRequestTypeDef(BaseModel): + instanceName: str + force: Optional[bool] = None + +class StopRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + relationalDatabaseSnapshotName: Optional[str] = None + +class TestAlarmRequestRequestTypeDef(BaseModel): + alarmName: str + state: AlarmStateType + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceName: str + tagKeys: Sequence[str] + resourceArn: Optional[str] = None + +class UpdateBucketBundleRequestRequestTypeDef(BaseModel): + bucketName: str + bundleId: str + +class UpdateDistributionBundleRequestRequestTypeDef(BaseModel): + distributionName: Optional[str] = None + bundleId: Optional[str] = None + +class UpdateInstanceMetadataOptionsRequestRequestTypeDef(BaseModel): + instanceName: str + httpTokens: Optional[HttpTokensType] = None + httpEndpoint: Optional[HttpEndpointType] = None + httpPutResponseHopLimit: Optional[int] = None + httpProtocolIpv6: Optional[HttpProtocolIpv6Type] = None + +class UpdateLoadBalancerAttributeRequestRequestTypeDef(BaseModel): + loadBalancerName: str + attributeName: LoadBalancerAttributeNameType + attributeValue: str + +class UpdateRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + masterUserPassword: Optional[str] = None + rotateMasterUserPassword: Optional[bool] = None + preferredBackupWindow: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + enableBackupRetention: Optional[bool] = None + disableBackupRetention: Optional[bool] = None + publiclyAccessible: Optional[bool] = None + applyImmediately: Optional[bool] = None + caCertificateIdentifier: Optional[str] = None + relationalDatabaseBlueprintId: Optional[str] = None + +class AccessKeyTypeDef(BaseModel): + accessKeyId: Optional[str] = None + secretAccessKey: Optional[str] = None + status: Optional[StatusTypeType] = None + createdAt: Optional[datetime] = None + lastUsed: Optional[AccessKeyLastUsedTypeDef] = None + +class AddOnRequestTypeDef(BaseModel): + addOnType: AddOnTypeType + autoSnapshotAddOnRequest: Optional[AutoSnapshotAddOnRequestTypeDef] = None + stopInstanceOnIdleRequest: Optional[StopInstanceOnIdleRequestTypeDef] = None + +class AlarmTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + supportCode: Optional[str] = None + monitoredResourceInfo: Optional[MonitoredResourceInfoTypeDef] = None + comparisonOperator: Optional[ComparisonOperatorType] = None + evaluationPeriods: Optional[int] = None + period: Optional[int] = None + threshold: Optional[float] = None + datapointsToAlarm: Optional[int] = None + treatMissingData: Optional[TreatMissingDataType] = None + statistic: Optional[MetricStatisticType] = None + metricName: Optional[MetricNameType] = None + state: Optional[AlarmStateType] = None + unit: Optional[MetricUnitType] = None + contactProtocols: Optional[List[ContactProtocolType]] = None + notificationTriggers: Optional[List[AlarmStateType]] = None + notificationEnabled: Optional[bool] = None + +class ContactMethodTypeDef(BaseModel): + contactEndpoint: Optional[str] = None + status: Optional[ContactMethodStatusType] = None + protocol: Optional[ContactProtocolType] = None + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + supportCode: Optional[str] = None + +class OperationTypeDef(BaseModel): + id: Optional[str] = None + resourceName: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + isTerminal: Optional[bool] = None + operationDetails: Optional[str] = None + operationType: Optional[OperationTypeType] = None + status: Optional[OperationStatusType] = None + statusChangedAt: Optional[datetime] = None + errorCode: Optional[str] = None + errorDetails: Optional[str] = None + +class SetupHistoryResourceTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + +class StaticIpTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + ipAddress: Optional[str] = None + attachedTo: Optional[str] = None + isAttached: Optional[bool] = None + +class DownloadDefaultKeyPairResultTypeDef(BaseModel): + publicKeyBase64: str + privateKeyBase64: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetActiveNamesResultTypeDef(BaseModel): + activeNames: List[str] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContainerAPIMetadataResultTypeDef(BaseModel): + metadata: List[Dict[str, str]] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDistributionLatestCacheResetResultTypeDef(BaseModel): + status: str + createTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseLogStreamsResultTypeDef(BaseModel): + logStreams: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseMasterUserPasswordResultTypeDef(BaseModel): + masterUserPassword: str + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class IsVpcPeeredResultTypeDef(BaseModel): + isPeered: bool + ResponseMetadata: ResponseMetadataTypeDef + +class AutoSnapshotDetailsTypeDef(BaseModel): + date: Optional[str] = None + createdAt: Optional[datetime] = None + status: Optional[AutoSnapshotStatusType] = None + fromAttachedDisks: Optional[List[AttachedDiskTypeDef]] = None + +class RegionTypeDef(BaseModel): + continentCode: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + name: Optional[RegionNameType] = None + availabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + relationalDatabaseAvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + +class GetBlueprintsResultTypeDef(BaseModel): + blueprints: List[BlueprintTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBucketRequestRequestTypeDef(BaseModel): + bucketName: str + accessRules: Optional[AccessRulesTypeDef] = None + versioning: Optional[str] = None + readonlyAccessAccounts: Optional[Sequence[str]] = None + accessLogConfig: Optional[BucketAccessLogConfigTypeDef] = None + +class GetBucketBundlesResultTypeDef(BaseModel): + bundles: List[BucketBundleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BucketTypeDef(BaseModel): + resourceType: Optional[str] = None + accessRules: Optional[AccessRulesTypeDef] = None + arn: Optional[str] = None + bundleId: Optional[str] = None + createdAt: Optional[datetime] = None + url: Optional[str] = None + location: Optional[ResourceLocationTypeDef] = None + name: Optional[str] = None + supportCode: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + objectVersioning: Optional[str] = None + ableToUpdateBundle: Optional[bool] = None + readonlyAccessAccounts: Optional[List[str]] = None + resourcesReceivingAccess: Optional[List[ResourceReceivingAccessTypeDef]] = None + state: Optional[BucketStateTypeDef] = None + accessLogConfig: Optional[BucketAccessLogConfigTypeDef] = None + +class CreateBucketRequestRequestTypeDef(BaseModel): + bucketName: str + bundleId: str + tags: Optional[Sequence[TagTypeDef]] = None + enableObjectVersioning: Optional[bool] = None + +class CreateCertificateRequestRequestTypeDef(BaseModel): + certificateName: str + domainName: str + subjectAlternativeNames: Optional[Sequence[str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDiskSnapshotRequestRequestTypeDef(BaseModel): + diskSnapshotName: str + diskName: Optional[str] = None + instanceName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDomainRequestRequestTypeDef(BaseModel): + domainName: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateInstanceSnapshotRequestRequestTypeDef(BaseModel): + instanceSnapshotName: str + instanceName: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateKeyPairRequestRequestTypeDef(BaseModel): + keyPairName: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateLoadBalancerRequestRequestTypeDef(BaseModel): + loadBalancerName: str + instancePort: int + healthCheckPath: Optional[str] = None + certificateName: Optional[str] = None + certificateDomainName: Optional[str] = None + certificateAlternativeNames: Optional[Sequence[str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + ipAddressType: Optional[IpAddressTypeType] = None + tlsPolicyName: Optional[str] = None + +class CreateLoadBalancerTlsCertificateRequestRequestTypeDef(BaseModel): + loadBalancerName: str + certificateName: str + certificateDomainName: str + certificateAlternativeNames: Optional[Sequence[str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRelationalDatabaseRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + relationalDatabaseBlueprintId: str + relationalDatabaseBundleId: str + masterDatabaseName: str + masterUsername: str + availabilityZone: Optional[str] = None + masterUserPassword: Optional[str] = None + preferredBackupWindow: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + publiclyAccessible: Optional[bool] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRelationalDatabaseSnapshotRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + relationalDatabaseSnapshotName: str + tags: Optional[Sequence[TagTypeDef]] = None + +class DiskSnapshotTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + sizeInGb: Optional[int] = None + state: Optional[DiskSnapshotStateType] = None + progress: Optional[str] = None + fromDiskName: Optional[str] = None + fromDiskArn: Optional[str] = None + fromInstanceName: Optional[str] = None + fromInstanceArn: Optional[str] = None + isFromAutoSnapshot: Optional[bool] = None + +class DiskTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + addOns: Optional[List[AddOnTypeDef]] = None + sizeInGb: Optional[int] = None + isSystemDisk: Optional[bool] = None + iops: Optional[int] = None + path: Optional[str] = None + state: Optional[DiskStateType] = None + attachedTo: Optional[str] = None + isAttached: Optional[bool] = None + attachmentState: Optional[str] = None + gbInUse: Optional[int] = None + autoMountStatus: Optional[AutoMountStatusType] = None + +class KeyPairTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + fingerprint: Optional[str] = None + +class RelationalDatabaseSnapshotTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + engine: Optional[str] = None + engineVersion: Optional[str] = None + sizeInGb: Optional[int] = None + state: Optional[str] = None + fromRelationalDatabaseName: Optional[str] = None + fromRelationalDatabaseArn: Optional[str] = None + fromRelationalDatabaseBundleId: Optional[str] = None + fromRelationalDatabaseBlueprintId: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceName: str + tags: Sequence[TagTypeDef] + resourceArn: Optional[str] = None + +class GetBundlesResultTypeDef(BaseModel): + bundles: List[BundleTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CacheSettingsOutputTypeDef(BaseModel): + defaultTTL: Optional[int] = None + minimumTTL: Optional[int] = None + maximumTTL: Optional[int] = None + allowedHTTPMethods: Optional[str] = None + cachedHTTPMethods: Optional[str] = None + forwardedCookies: Optional[CookieObjectOutputTypeDef] = None + forwardedHeaders: Optional[HeaderObjectOutputTypeDef] = None + forwardedQueryStrings: Optional[QueryStringObjectOutputTypeDef] = None + +class CacheSettingsTypeDef(BaseModel): + defaultTTL: Optional[int] = None + minimumTTL: Optional[int] = None + maximumTTL: Optional[int] = None + allowedHTTPMethods: Optional[str] = None + cachedHTTPMethods: Optional[str] = None + forwardedCookies: Optional[CookieObjectTypeDef] = None + forwardedHeaders: Optional[HeaderObjectTypeDef] = None + forwardedQueryStrings: Optional[QueryStringObjectTypeDef] = None + +class CloseInstancePublicPortsRequestRequestTypeDef(BaseModel): + portInfo: PortInfoTypeDef + instanceName: str + +class OpenInstancePublicPortsRequestRequestTypeDef(BaseModel): + portInfo: PortInfoTypeDef + instanceName: str + +class PutInstancePublicPortsRequestRequestTypeDef(BaseModel): + portInfos: Sequence[PortInfoTypeDef] + instanceName: str + +class CloudFormationStackRecordTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + state: Optional[RecordStateType] = None + sourceInfo: Optional[List[CloudFormationStackRecordSourceInfoTypeDef]] = None + destinationInfo: Optional[DestinationInfoTypeDef] = None + +class GetContainerImagesResultTypeDef(BaseModel): + containerImages: List[ContainerImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterContainerImageResultTypeDef(BaseModel): + containerImage: ContainerImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PrivateRegistryAccessRequestTypeDef(BaseModel): + ecrImagePullerRole: Optional[ContainerServiceECRImagePullerRoleRequestTypeDef] = None + +class PrivateRegistryAccessTypeDef(BaseModel): + ecrImagePullerRole: Optional[ContainerServiceECRImagePullerRoleTypeDef] = None + +class ContainerServiceEndpointTypeDef(BaseModel): + containerName: Optional[str] = None + containerPort: Optional[int] = None + healthCheck: Optional[ContainerServiceHealthCheckConfigTypeDef] = None + +class EndpointRequestTypeDef(BaseModel): + containerName: str + containerPort: int + healthCheck: Optional[ContainerServiceHealthCheckConfigTypeDef] = None + +class GetContainerLogResultTypeDef(BaseModel): + logEvents: List[ContainerServiceLogEventTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContainerServicePowersResultTypeDef(BaseModel): + powers: List[ContainerServicePowerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContainerServiceRegistryLoginResultTypeDef(BaseModel): + registryLogin: ContainerServiceRegistryLoginTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCloudFormationStackRequestRequestTypeDef(BaseModel): + instances: Sequence[InstanceEntryTypeDef] + +class CreateDomainEntryRequestRequestTypeDef(BaseModel): + domainName: str + domainEntry: DomainEntryTypeDef + +class DeleteDomainEntryRequestRequestTypeDef(BaseModel): + domainName: str + domainEntry: DomainEntryTypeDef + +class UpdateDomainEntryRequestRequestTypeDef(BaseModel): + domainName: str + domainEntry: DomainEntryTypeDef + +class CreateGUISessionAccessDetailsResultTypeDef(BaseModel): + resourceName: str + status: StatusType + percentageComplete: int + failureReason: str + sessions: List[SessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRelationalDatabaseFromSnapshotRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + availabilityZone: Optional[str] = None + publiclyAccessible: Optional[bool] = None + relationalDatabaseSnapshotName: Optional[str] = None + relationalDatabaseBundleId: Optional[str] = None + sourceRelationalDatabaseName: Optional[str] = None + restoreTime: Optional[TimestampTypeDef] = None + useLatestRestorableTime: Optional[bool] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class GetBucketMetricDataRequestRequestTypeDef(BaseModel): + bucketName: str + metricName: BucketMetricNameType + startTime: TimestampTypeDef + endTime: TimestampTypeDef + period: int + statistics: Sequence[MetricStatisticType] + unit: MetricUnitType + +class GetContainerLogRequestRequestTypeDef(BaseModel): + serviceName: str + containerName: str + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + filterPattern: Optional[str] = None + pageToken: Optional[str] = None + +class GetContainerServiceMetricDataRequestRequestTypeDef(BaseModel): + serviceName: str + metricName: ContainerServiceMetricNameType + startTime: TimestampTypeDef + endTime: TimestampTypeDef + period: int + statistics: Sequence[MetricStatisticType] + +class GetCostEstimateRequestRequestTypeDef(BaseModel): + resourceName: str + startTime: TimestampTypeDef + endTime: TimestampTypeDef + +class GetDistributionMetricDataRequestRequestTypeDef(BaseModel): + distributionName: str + metricName: DistributionMetricNameType + startTime: TimestampTypeDef + endTime: TimestampTypeDef + period: int + unit: MetricUnitType + statistics: Sequence[MetricStatisticType] + +class GetInstanceMetricDataRequestRequestTypeDef(BaseModel): + instanceName: str + metricName: InstanceMetricNameType + period: int + startTime: TimestampTypeDef + endTime: TimestampTypeDef + unit: MetricUnitType + statistics: Sequence[MetricStatisticType] + +class GetLoadBalancerMetricDataRequestRequestTypeDef(BaseModel): + loadBalancerName: str + metricName: LoadBalancerMetricNameType + period: int + startTime: TimestampTypeDef + endTime: TimestampTypeDef + unit: MetricUnitType + statistics: Sequence[MetricStatisticType] + +class GetRelationalDatabaseLogEventsRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + logStreamName: str + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + startFromHead: Optional[bool] = None + pageToken: Optional[str] = None + +class GetRelationalDatabaseMetricDataRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + metricName: RelationalDatabaseMetricNameType + period: int + startTime: TimestampTypeDef + endTime: TimestampTypeDef + unit: MetricUnitType + statistics: Sequence[MetricStatisticType] + +class InstanceSnapshotInfoTypeDef(BaseModel): + fromBundleId: Optional[str] = None + fromBlueprintId: Optional[str] = None + fromDiskInfo: Optional[List[DiskInfoTypeDef]] = None + +class GetDistributionBundlesResultTypeDef(BaseModel): + bundles: List[DistributionBundleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DomainValidationRecordTypeDef(BaseModel): + domainName: Optional[str] = None + resourceRecord: Optional[ResourceRecordTypeDef] = None + dnsRecordCreationState: Optional[DnsRecordCreationStateTypeDef] = None + validationStatus: Optional[CertificateDomainValidationStatusType] = None + +class EstimateByTimeTypeDef(BaseModel): + usageCost: Optional[float] = None + pricingUnit: Optional[PricingUnitType] = None + unit: Optional[float] = None + currency: Optional[Literal["USD"]] = None + timePeriod: Optional[TimePeriodTypeDef] = None + +class GetActiveNamesRequestGetActiveNamesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBlueprintsRequestGetBlueprintsPaginateTypeDef(BaseModel): + includeInactive: Optional[bool] = None + appCategory: Optional[Literal["LfR"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBundlesRequestGetBundlesPaginateTypeDef(BaseModel): + includeInactive: Optional[bool] = None + appCategory: Optional[Literal["LfR"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCloudFormationStackRecordsRequestGetCloudFormationStackRecordsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDiskSnapshotsRequestGetDiskSnapshotsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDisksRequestGetDisksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDomainsRequestGetDomainsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetExportSnapshotRecordsRequestGetExportSnapshotRecordsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetInstanceSnapshotsRequestGetInstanceSnapshotsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetInstancesRequestGetInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetKeyPairsRequestGetKeyPairsPaginateTypeDef(BaseModel): + includeDefaultKeyPair: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetLoadBalancersRequestGetLoadBalancersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetOperationsRequestGetOperationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRelationalDatabaseBlueprintsRequestGetRelationalDatabaseBlueprintsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRelationalDatabaseBundlesRequestGetRelationalDatabaseBundlesPaginateTypeDef(BaseModel): + includeInactive: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRelationalDatabaseEventsRequestGetRelationalDatabaseEventsPaginateTypeDef(BaseModel): + relationalDatabaseName: str + durationInMinutes: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRelationalDatabaseParametersRequestGetRelationalDatabaseParametersPaginateTypeDef(BaseModel): + relationalDatabaseName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRelationalDatabaseSnapshotsRequestGetRelationalDatabaseSnapshotsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRelationalDatabasesRequestGetRelationalDatabasesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetStaticIpsRequestGetStaticIpsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetBucketMetricDataResultTypeDef(BaseModel): + metricName: BucketMetricNameType + metricData: List[MetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetContainerServiceMetricDataResultTypeDef(BaseModel): + metricName: ContainerServiceMetricNameType + metricData: List[MetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDistributionMetricDataResultTypeDef(BaseModel): + metricName: DistributionMetricNameType + metricData: List[MetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceMetricDataResultTypeDef(BaseModel): + metricName: InstanceMetricNameType + metricData: List[MetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoadBalancerMetricDataResultTypeDef(BaseModel): + metricName: LoadBalancerMetricNameType + metricData: List[MetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseMetricDataResultTypeDef(BaseModel): + metricName: RelationalDatabaseMetricNameType + metricData: List[MetricDatapointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstancePortStatesResultTypeDef(BaseModel): + portStates: List[InstancePortStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceStateResultTypeDef(BaseModel): + state: InstanceStateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoadBalancerTlsPoliciesResultTypeDef(BaseModel): + tlsPolicies: List[LoadBalancerTlsPolicyTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseBlueprintsResultTypeDef(BaseModel): + blueprints: List[RelationalDatabaseBlueprintTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseBundlesResultTypeDef(BaseModel): + bundles: List[RelationalDatabaseBundleTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseEventsResultTypeDef(BaseModel): + relationalDatabaseEvents: List[RelationalDatabaseEventTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseLogEventsResultTypeDef(BaseModel): + resourceLogEvents: List[LogEventTypeDef] + nextBackwardToken: str + nextForwardToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseParametersResultTypeDef(BaseModel): + parameters: List[RelationalDatabaseParameterTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRelationalDatabaseParametersRequestRequestTypeDef(BaseModel): + relationalDatabaseName: str + parameters: Sequence[RelationalDatabaseParameterTypeDef] + +class InstanceAccessDetailsTypeDef(BaseModel): + certKey: Optional[str] = None + expiresAt: Optional[datetime] = None + ipAddress: Optional[str] = None + ipv6Addresses: Optional[List[str]] = None + password: Optional[str] = None + passwordData: Optional[PasswordDataTypeDef] = None + privateKey: Optional[str] = None + protocol: Optional[InstanceAccessProtocolType] = None + instanceName: Optional[str] = None + username: Optional[str] = None + hostKeys: Optional[List[HostKeyAttributesTypeDef]] = None + +class InstanceNetworkingTypeDef(BaseModel): + monthlyTransfer: Optional[MonthlyTransferTypeDef] = None + ports: Optional[List[InstancePortInfoTypeDef]] = None + +class LoadBalancerTlsCertificateDomainValidationRecordTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[str] = None + value: Optional[str] = None + validationStatus: Optional[LoadBalancerTlsCertificateDomainStatusType] = None + domainName: Optional[str] = None + dnsRecordCreationState: Optional[ LoadBalancerTlsCertificateDnsRecordCreationStateTypeDef ] = None + +class LoadBalancerTlsCertificateRenewalSummaryTypeDef(BaseModel): + renewalStatus: Optional[LoadBalancerTlsCertificateRenewalStatusType] = None + domainValidationOptions: Optional[ List[LoadBalancerTlsCertificateDomainValidationOptionTypeDef] ] = None + +class LoadBalancerTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + dnsName: Optional[str] = None + state: Optional[LoadBalancerStateType] = None + protocol: Optional[LoadBalancerProtocolType] = None + publicPorts: Optional[List[int]] = None + healthCheckPath: Optional[str] = None + instancePort: Optional[int] = None + instanceHealthSummary: Optional[List[InstanceHealthSummaryTypeDef]] = None + tlsCertificateSummaries: Optional[List[LoadBalancerTlsCertificateSummaryTypeDef]] = None + configurationOptions: Optional[Dict[LoadBalancerAttributeNameType, str]] = None + ipAddressType: Optional[IpAddressTypeType] = None + httpsRedirectionEnabled: Optional[bool] = None + tlsPolicyName: Optional[str] = None + +class RegisteredDomainDelegationInfoTypeDef(BaseModel): + nameServersUpdateState: Optional[NameServersUpdateStateTypeDef] = None + r53HostedZoneDeletionState: Optional[R53HostedZoneDeletionStateTypeDef] = None + +class RelationalDatabaseTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + relationalDatabaseBlueprintId: Optional[str] = None + relationalDatabaseBundleId: Optional[str] = None + masterDatabaseName: Optional[str] = None + hardware: Optional[RelationalDatabaseHardwareTypeDef] = None + state: Optional[str] = None + secondaryAvailabilityZone: Optional[str] = None + backupRetentionEnabled: Optional[bool] = None + pendingModifiedValues: Optional[PendingModifiedRelationalDatabaseValuesTypeDef] = None + engine: Optional[str] = None + engineVersion: Optional[str] = None + latestRestorableTime: Optional[datetime] = None + masterUsername: Optional[str] = None + parameterApplyStatus: Optional[str] = None + preferredBackupWindow: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + publiclyAccessible: Optional[bool] = None + masterEndpoint: Optional[RelationalDatabaseEndpointTypeDef] = None + pendingMaintenanceActions: Optional[List[PendingMaintenanceActionTypeDef]] = None + caCertificateIdentifier: Optional[str] = None + +class GetBucketAccessKeysResultTypeDef(BaseModel): + accessKeys: List[AccessKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDiskFromSnapshotRequestRequestTypeDef(BaseModel): + diskName: str + availabilityZone: str + sizeInGb: int + diskSnapshotName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + addOns: Optional[Sequence[AddOnRequestTypeDef]] = None + sourceDiskName: Optional[str] = None + restoreDate: Optional[str] = None + useLatestRestorableAutoSnapshot: Optional[bool] = None + +class CreateDiskRequestRequestTypeDef(BaseModel): + diskName: str + availabilityZone: str + sizeInGb: int + tags: Optional[Sequence[TagTypeDef]] = None + addOns: Optional[Sequence[AddOnRequestTypeDef]] = None + +class CreateInstancesFromSnapshotRequestRequestTypeDef(BaseModel): + instanceNames: Sequence[str] + availabilityZone: str + bundleId: str + attachedDiskMapping: Optional[Mapping[str, Sequence[DiskMapTypeDef]]] = None + instanceSnapshotName: Optional[str] = None + userData: Optional[str] = None + keyPairName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + addOns: Optional[Sequence[AddOnRequestTypeDef]] = None + ipAddressType: Optional[IpAddressTypeType] = None + sourceInstanceName: Optional[str] = None + restoreDate: Optional[str] = None + useLatestRestorableAutoSnapshot: Optional[bool] = None + +class CreateInstancesRequestRequestTypeDef(BaseModel): + instanceNames: Sequence[str] + availabilityZone: str + blueprintId: str + bundleId: str + customImageName: Optional[str] = None + userData: Optional[str] = None + keyPairName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + addOns: Optional[Sequence[AddOnRequestTypeDef]] = None + ipAddressType: Optional[IpAddressTypeType] = None + +class EnableAddOnRequestRequestTypeDef(BaseModel): + resourceName: str + addOnRequest: AddOnRequestTypeDef + +class GetAlarmsResultTypeDef(BaseModel): + alarms: List[AlarmTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContactMethodsResultTypeDef(BaseModel): + contactMethods: List[ContactMethodTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AllocateStaticIpResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AttachCertificateToDistributionResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AttachDiskResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AttachInstancesToLoadBalancerResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AttachLoadBalancerTlsCertificateResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AttachStaticIpResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CloseInstancePublicPortsResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopySnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBucketAccessKeyResultTypeDef(BaseModel): + accessKey: AccessKeyTypeDef + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCloudFormationStackResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContactMethodResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDiskFromSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDiskResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDiskSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainEntryResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstancesFromSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstancesResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoadBalancerResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLoadBalancerTlsCertificateResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRelationalDatabaseFromSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRelationalDatabaseResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRelationalDatabaseSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAlarmResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAutoSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBucketAccessKeyResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBucketResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCertificateResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteContactMethodResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDiskResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDiskSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDistributionResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainEntryResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInstanceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInstanceSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKeyPairResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKnownHostKeysResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLoadBalancerResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLoadBalancerTlsCertificateResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRelationalDatabaseResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRelationalDatabaseSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetachCertificateFromDistributionResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DetachDiskResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetachInstancesFromLoadBalancerResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetachStaticIpResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisableAddOnResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EnableAddOnResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportSnapshotResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetOperationResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOperationsForResourceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + nextPageCount: str + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOperationsResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportKeyPairResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OpenInstancePublicPortsResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PeerVpcResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAlarmResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutInstancePublicPortsResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootInstanceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RebootRelationalDatabaseResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReleaseStaticIpResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResetDistributionCacheResultTypeDef(BaseModel): + status: str + createTime: datetime + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SendContactMethodVerificationResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetIpAddressTypeResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetResourceAccessForBucketResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetupInstanceHttpsResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartGUISessionResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartInstanceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartRelationalDatabaseResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopGUISessionResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopInstanceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopRelationalDatabaseResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TestAlarmResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UnpeerVpcResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UntagResourceResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBucketBundleResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDistributionBundleResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDistributionResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainEntryResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInstanceMetadataOptionsResultTypeDef(BaseModel): + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLoadBalancerAttributeResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRelationalDatabaseParametersResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRelationalDatabaseResultTypeDef(BaseModel): + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SetupHistoryTypeDef(BaseModel): + operationId: Optional[str] = None + request: Optional[SetupRequestTypeDef] = None + resource: Optional[SetupHistoryResourceTypeDef] = None + executionDetails: Optional[List[SetupExecutionDetailsTypeDef]] = None + status: Optional[SetupStatusType] = None + +class GetStaticIpResultTypeDef(BaseModel): + staticIp: StaticIpTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStaticIpsResultTypeDef(BaseModel): + staticIps: List[StaticIpTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAutoSnapshotsResultTypeDef(BaseModel): + resourceName: str + resourceType: ResourceTypeType + autoSnapshots: List[AutoSnapshotDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegionsResultTypeDef(BaseModel): + regions: List[RegionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBucketResultTypeDef(BaseModel): + bucket: BucketTypeDef + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketsResultTypeDef(BaseModel): + buckets: List[BucketTypeDef] + nextPageToken: str + accountLevelBpaSync: AccountLevelBpaSyncTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBucketResultTypeDef(BaseModel): + bucket: BucketTypeDef + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDiskSnapshotResultTypeDef(BaseModel): + diskSnapshot: DiskSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDiskSnapshotsResultTypeDef(BaseModel): + diskSnapshots: List[DiskSnapshotTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDiskResultTypeDef(BaseModel): + disk: DiskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDisksResultTypeDef(BaseModel): + disks: List[DiskTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceHardwareTypeDef(BaseModel): + cpuCount: Optional[int] = None + disks: Optional[List[DiskTypeDef]] = None + ramSizeInGb: Optional[float] = None + +class InstanceSnapshotTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + state: Optional[InstanceSnapshotStateType] = None + progress: Optional[str] = None + fromAttachedDisks: Optional[List[DiskTypeDef]] = None + fromInstanceName: Optional[str] = None + fromInstanceArn: Optional[str] = None + fromBlueprintId: Optional[str] = None + fromBundleId: Optional[str] = None + isFromAutoSnapshot: Optional[bool] = None + sizeInGb: Optional[int] = None + +class CreateKeyPairResultTypeDef(BaseModel): + keyPair: KeyPairTypeDef + publicKeyBase64: str + privateKeyBase64: str + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyPairResultTypeDef(BaseModel): + keyPair: KeyPairTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyPairsResultTypeDef(BaseModel): + keyPairs: List[KeyPairTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseSnapshotResultTypeDef(BaseModel): + relationalDatabaseSnapshot: RelationalDatabaseSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabaseSnapshotsResultTypeDef(BaseModel): + relationalDatabaseSnapshots: List[RelationalDatabaseSnapshotTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LightsailDistributionTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + alternativeDomainNames: Optional[List[str]] = None + status: Optional[str] = None + isEnabled: Optional[bool] = None + domainName: Optional[str] = None + bundleId: Optional[str] = None + certificateName: Optional[str] = None + origin: Optional[OriginTypeDef] = None + originPublicDNS: Optional[str] = None + defaultCacheBehavior: Optional[CacheBehaviorTypeDef] = None + cacheBehaviorSettings: Optional[CacheSettingsOutputTypeDef] = None + cacheBehaviors: Optional[List[CacheBehaviorPerPathTypeDef]] = None + ableToUpdateBundle: Optional[bool] = None + ipAddressType: Optional[IpAddressTypeType] = None + tags: Optional[List[TagTypeDef]] = None + viewerMinimumTlsProtocolVersion: Optional[str] = None + +class CreateDistributionRequestRequestTypeDef(BaseModel): + distributionName: str + origin: InputOriginTypeDef + defaultCacheBehavior: CacheBehaviorTypeDef + bundleId: str + cacheBehaviorSettings: Optional[CacheSettingsTypeDef] = None + cacheBehaviors: Optional[Sequence[CacheBehaviorPerPathTypeDef]] = None + ipAddressType: Optional[IpAddressTypeType] = None + tags: Optional[Sequence[TagTypeDef]] = None + certificateName: Optional[str] = None + viewerMinimumTlsProtocolVersion: Optional[ViewerMinimumTlsProtocolVersionEnumType] = None + +class UpdateDistributionRequestRequestTypeDef(BaseModel): + distributionName: str + origin: Optional[InputOriginTypeDef] = None + defaultCacheBehavior: Optional[CacheBehaviorTypeDef] = None + cacheBehaviorSettings: Optional[CacheSettingsTypeDef] = None + cacheBehaviors: Optional[Sequence[CacheBehaviorPerPathTypeDef]] = None + isEnabled: Optional[bool] = None + viewerMinimumTlsProtocolVersion: Optional[ViewerMinimumTlsProtocolVersionEnumType] = None + certificateName: Optional[str] = None + useDefaultCertificate: Optional[bool] = None + +class GetCloudFormationStackRecordsResultTypeDef(BaseModel): + cloudFormationStackRecords: List[CloudFormationStackRecordTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContainerServiceRequestRequestTypeDef(BaseModel): + serviceName: str + power: Optional[ContainerServicePowerNameType] = None + scale: Optional[int] = None + isDisabled: Optional[bool] = None + publicDomainNames: Optional[Mapping[str, Sequence[str]]] = None + privateRegistryAccess: Optional[PrivateRegistryAccessRequestTypeDef] = None + +class ContainerServiceDeploymentTypeDef(BaseModel): + version: Optional[int] = None + state: Optional[ContainerServiceDeploymentStateType] = None + containers: Optional[Dict[str, ContainerOutputTypeDef]] = None + publicEndpoint: Optional[ContainerServiceEndpointTypeDef] = None + createdAt: Optional[datetime] = None + +class ContainerServiceDeploymentRequestTypeDef(BaseModel): + containers: Optional[Mapping[str, ContainerTypeDef]] = None + publicEndpoint: Optional[EndpointRequestTypeDef] = None + +class CreateContainerServiceDeploymentRequestRequestTypeDef(BaseModel): + serviceName: str + containers: Optional[Mapping[str, ContainerUnionTypeDef]] = None + publicEndpoint: Optional[EndpointRequestTypeDef] = None + +class ExportSnapshotRecordSourceInfoTypeDef(BaseModel): + resourceType: Optional[ExportSnapshotRecordSourceTypeType] = None + createdAt: Optional[datetime] = None + name: Optional[str] = None + arn: Optional[str] = None + fromResourceName: Optional[str] = None + fromResourceArn: Optional[str] = None + instanceSnapshotInfo: Optional[InstanceSnapshotInfoTypeDef] = None + diskSnapshotInfo: Optional[DiskSnapshotInfoTypeDef] = None + +class RenewalSummaryTypeDef(BaseModel): + domainValidationRecords: Optional[List[DomainValidationRecordTypeDef]] = None + renewalStatus: Optional[RenewalStatusType] = None + renewalStatusReason: Optional[str] = None + updatedAt: Optional[datetime] = None + +class CostEstimateTypeDef(BaseModel): + usageType: Optional[str] = None + resultsByTime: Optional[List[EstimateByTimeTypeDef]] = None + +class GetInstanceAccessDetailsResultTypeDef(BaseModel): + accessDetails: InstanceAccessDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LoadBalancerTlsCertificateTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + loadBalancerName: Optional[str] = None + isAttached: Optional[bool] = None + status: Optional[LoadBalancerTlsCertificateStatusType] = None + domainName: Optional[str] = None + domainValidationRecords: Optional[ List[LoadBalancerTlsCertificateDomainValidationRecordTypeDef] ] = None + failureReason: Optional[LoadBalancerTlsCertificateFailureReasonType] = None + issuedAt: Optional[datetime] = None + issuer: Optional[str] = None + keyAlgorithm: Optional[str] = None + notAfter: Optional[datetime] = None + notBefore: Optional[datetime] = None + renewalSummary: Optional[LoadBalancerTlsCertificateRenewalSummaryTypeDef] = None + revocationReason: Optional[LoadBalancerTlsCertificateRevocationReasonType] = None + revokedAt: Optional[datetime] = None + serial: Optional[str] = None + signatureAlgorithm: Optional[str] = None + subject: Optional[str] = None + subjectAlternativeNames: Optional[List[str]] = None + +class GetLoadBalancerResultTypeDef(BaseModel): + loadBalancer: LoadBalancerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoadBalancersResultTypeDef(BaseModel): + loadBalancers: List[LoadBalancerTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DomainTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + domainEntries: Optional[List[DomainEntryOutputTypeDef]] = None + registeredDomainDelegationInfo: Optional[RegisteredDomainDelegationInfoTypeDef] = None + +class GetRelationalDatabaseResultTypeDef(BaseModel): + relationalDatabase: RelationalDatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelationalDatabasesResultTypeDef(BaseModel): + relationalDatabases: List[RelationalDatabaseTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSetupHistoryResultTypeDef(BaseModel): + setupHistory: List[SetupHistoryTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + supportCode: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + blueprintId: Optional[str] = None + blueprintName: Optional[str] = None + bundleId: Optional[str] = None + addOns: Optional[List[AddOnTypeDef]] = None + isStaticIp: Optional[bool] = None + privateIpAddress: Optional[str] = None + publicIpAddress: Optional[str] = None + ipv6Addresses: Optional[List[str]] = None + ipAddressType: Optional[IpAddressTypeType] = None + hardware: Optional[InstanceHardwareTypeDef] = None + networking: Optional[InstanceNetworkingTypeDef] = None + state: Optional[InstanceStateTypeDef] = None + username: Optional[str] = None + sshKeyName: Optional[str] = None + metadataOptions: Optional[InstanceMetadataOptionsTypeDef] = None + +class GetInstanceSnapshotResultTypeDef(BaseModel): + instanceSnapshot: InstanceSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceSnapshotsResultTypeDef(BaseModel): + instanceSnapshots: List[InstanceSnapshotTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDistributionResultTypeDef(BaseModel): + distribution: LightsailDistributionTypeDef + operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDistributionsResultTypeDef(BaseModel): + distributions: List[LightsailDistributionTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ContainerServiceTypeDef(BaseModel): + containerServiceName: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + tags: Optional[List[TagTypeDef]] = None + power: Optional[ContainerServicePowerNameType] = None + powerId: Optional[str] = None + state: Optional[ContainerServiceStateType] = None + stateDetail: Optional[ContainerServiceStateDetailTypeDef] = None + scale: Optional[int] = None + currentDeployment: Optional[ContainerServiceDeploymentTypeDef] = None + nextDeployment: Optional[ContainerServiceDeploymentTypeDef] = None + isDisabled: Optional[bool] = None + principalArn: Optional[str] = None + privateDomainName: Optional[str] = None + publicDomainNames: Optional[Dict[str, List[str]]] = None + url: Optional[str] = None + privateRegistryAccess: Optional[PrivateRegistryAccessTypeDef] = None + +class GetContainerServiceDeploymentsResultTypeDef(BaseModel): + deployments: List[ContainerServiceDeploymentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContainerServiceRequestRequestTypeDef(BaseModel): + serviceName: str + power: ContainerServicePowerNameType + scale: int + tags: Optional[Sequence[TagTypeDef]] = None + publicDomainNames: Optional[Mapping[str, Sequence[str]]] = None + deployment: Optional[ContainerServiceDeploymentRequestTypeDef] = None + privateRegistryAccess: Optional[PrivateRegistryAccessRequestTypeDef] = None + +class ExportSnapshotRecordTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + location: Optional[ResourceLocationTypeDef] = None + resourceType: Optional[ResourceTypeType] = None + state: Optional[RecordStateType] = None + sourceInfo: Optional[ExportSnapshotRecordSourceInfoTypeDef] = None + destinationInfo: Optional[DestinationInfoTypeDef] = None + +class CertificateTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + domainName: Optional[str] = None + status: Optional[CertificateStatusType] = None + serialNumber: Optional[str] = None + subjectAlternativeNames: Optional[List[str]] = None + domainValidationRecords: Optional[List[DomainValidationRecordTypeDef]] = None + requestFailureReason: Optional[str] = None + inUseResourceCount: Optional[int] = None + keyAlgorithm: Optional[str] = None + createdAt: Optional[datetime] = None + issuedAt: Optional[datetime] = None + issuerCA: Optional[str] = None + notBefore: Optional[datetime] = None + notAfter: Optional[datetime] = None + eligibleToRenew: Optional[str] = None + renewalSummary: Optional[RenewalSummaryTypeDef] = None + revokedAt: Optional[datetime] = None + revocationReason: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + supportCode: Optional[str] = None + +class ResourceBudgetEstimateTypeDef(BaseModel): + resourceName: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + costEstimates: Optional[List[CostEstimateTypeDef]] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + +class GetLoadBalancerTlsCertificatesResultTypeDef(BaseModel): + tlsCertificates: List[LoadBalancerTlsCertificateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainResultTypeDef(BaseModel): + domain: DomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainsResultTypeDef(BaseModel): + domains: List[DomainTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstanceResultTypeDef(BaseModel): + instance: InstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstancesResultTypeDef(BaseModel): + instances: List[InstanceTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ContainerServicesListResultTypeDef(BaseModel): + containerServices: List[ContainerServiceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContainerServiceDeploymentResultTypeDef(BaseModel): + containerService: ContainerServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContainerServiceResultTypeDef(BaseModel): + containerService: ContainerServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContainerServiceResultTypeDef(BaseModel): + containerService: ContainerServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetExportSnapshotRecordsResultTypeDef(BaseModel): + exportSnapshotRecords: List[ExportSnapshotRecordTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CertificateSummaryTypeDef(BaseModel): + certificateArn: Optional[str] = None + certificateName: Optional[str] = None + domainName: Optional[str] = None + certificateDetail: Optional[CertificateTypeDef] = None + tags: Optional[List[TagTypeDef]] = None + +class GetCostEstimateResultTypeDef(BaseModel): + resourcesBudgetEstimate: List[ResourceBudgetEstimateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCertificateResultTypeDef(BaseModel): + certificate: CertificateSummaryTypeDef + operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCertificatesResultTypeDef(BaseModel): + certificates: List[CertificateSummaryTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lightsail_constants.py b/aws_resource_validator/pydantic_models/lightsail_constants.py new file mode 100644 index 00000000..e4230d1c --- /dev/null +++ b/aws_resource_validator/pydantic_models/lightsail_constants.py @@ -0,0 +1,806 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessDirectionType = Literal["inbound", "outbound"] +AccessTypeType = Literal["private", "public"] +AccountLevelBpaSyncStatusType = Literal["Defaulted", "Failed", "InSync", "NeverSynced"] +AddOnTypeType = Literal["AutoSnapshot", "StopInstanceOnIdle"] +AlarmStateType = Literal["ALARM", "INSUFFICIENT_DATA", "OK"] +AppCategoryType = Literal["LfR"] +AutoMountStatusType = Literal["Failed", "Mounted", "NotMounted", "Pending"] +AutoSnapshotStatusType = Literal["Failed", "InProgress", "NotFound", "Success"] +BPAStatusMessageType = Literal["DEFAULTED_FOR_SLR_MISSING", "DEFAULTED_FOR_SLR_MISSING_ON_HOLD", "SYNC_ON_HOLD", "Unknown"] +BehaviorEnumType = Literal["cache", "dont-cache"] +BlueprintTypeType = Literal["app", "os"] +BucketMetricNameType = Literal["BucketSizeBytes", "NumberOfObjects"] +CertificateDomainValidationStatusType = Literal["FAILED", "PENDING_VALIDATION", "SUCCESS"] +CertificateProviderType = Literal["LetsEncrypt"] +CertificateStatusType = Literal["EXPIRED", + "FAILED", + "INACTIVE", + "ISSUED", + "PENDING_VALIDATION", + "REVOKED", + "VALIDATION_TIMED_OUT",] +CloudFormationStackRecordSourceTypeType = Literal["ExportSnapshotRecord"] +ComparisonOperatorType = Literal["GreaterThanOrEqualToThreshold", + "GreaterThanThreshold", + "LessThanOrEqualToThreshold", + "LessThanThreshold",] +ContactMethodStatusType = Literal["Invalid", "PendingVerification", "Valid"] +ContactMethodVerificationProtocolType = Literal["Email"] +ContactProtocolType = Literal["Email", "SMS"] +ContainerServiceDeploymentStateType = Literal["ACTIVATING", "ACTIVE", "FAILED", "INACTIVE"] +ContainerServiceMetricNameType = Literal["CPUUtilization", "MemoryUtilization"] +ContainerServicePowerNameType = Literal["large", "medium", "micro", "nano", "small", "xlarge"] +ContainerServiceProtocolType = Literal["HTTP", "HTTPS", "TCP", "UDP"] +ContainerServiceStateDetailCodeType = Literal["ACTIVATING_DEPLOYMENT", + "CERTIFICATE_LIMIT_EXCEEDED", + "CREATING_DEPLOYMENT", + "CREATING_NETWORK_INFRASTRUCTURE", + "CREATING_SYSTEM_RESOURCES", + "EVALUATING_HEALTH_CHECK", + "PROVISIONING_CERTIFICATE", + "PROVISIONING_SERVICE", + "UNKNOWN_ERROR",] +ContainerServiceStateType = Literal["DELETING", "DEPLOYING", "DISABLED", "PENDING", "READY", "RUNNING", "UPDATING"] +CurrencyType = Literal["USD"] +DiskSnapshotStateType = Literal["completed", "error", "pending", "unknown"] +DiskStateType = Literal["available", "error", "in-use", "pending", "unknown"] +DistributionMetricNameType = Literal["BytesDownloaded", + "BytesUploaded", + "Http4xxErrorRate", + "Http5xxErrorRate", + "Requests", + "TotalErrorRate",] +DnsRecordCreationStateCodeType = Literal["FAILED", "STARTED", "SUCCEEDED"] +ExportSnapshotRecordSourceTypeType = Literal["DiskSnapshot", "InstanceSnapshot"] +ForwardValuesType = Literal["all", "allow-list", "none"] +GetActiveNamesPaginatorName = Literal["get_active_names"] +GetBlueprintsPaginatorName = Literal["get_blueprints"] +GetBundlesPaginatorName = Literal["get_bundles"] +GetCloudFormationStackRecordsPaginatorName = Literal["get_cloud_formation_stack_records"] +GetDiskSnapshotsPaginatorName = Literal["get_disk_snapshots"] +GetDisksPaginatorName = Literal["get_disks"] +GetDomainsPaginatorName = Literal["get_domains"] +GetExportSnapshotRecordsPaginatorName = Literal["get_export_snapshot_records"] +GetInstanceSnapshotsPaginatorName = Literal["get_instance_snapshots"] +GetInstancesPaginatorName = Literal["get_instances"] +GetKeyPairsPaginatorName = Literal["get_key_pairs"] +GetLoadBalancersPaginatorName = Literal["get_load_balancers"] +GetOperationsPaginatorName = Literal["get_operations"] +GetRelationalDatabaseBlueprintsPaginatorName = Literal["get_relational_database_blueprints"] +GetRelationalDatabaseBundlesPaginatorName = Literal["get_relational_database_bundles"] +GetRelationalDatabaseEventsPaginatorName = Literal["get_relational_database_events"] +GetRelationalDatabaseParametersPaginatorName = Literal["get_relational_database_parameters"] +GetRelationalDatabaseSnapshotsPaginatorName = Literal["get_relational_database_snapshots"] +GetRelationalDatabasesPaginatorName = Literal["get_relational_databases"] +GetStaticIpsPaginatorName = Literal["get_static_ips"] +HeaderEnumType = Literal["Accept", + "Accept-Charset", + "Accept-Datetime", + "Accept-Encoding", + "Accept-Language", + "Authorization", + "CloudFront-Forwarded-Proto", + "CloudFront-Is-Desktop-Viewer", + "CloudFront-Is-Mobile-Viewer", + "CloudFront-Is-SmartTV-Viewer", + "CloudFront-Is-Tablet-Viewer", + "CloudFront-Viewer-Country", + "Host", + "Origin", + "Referer",] +HttpEndpointType = Literal["disabled", "enabled"] +HttpProtocolIpv6Type = Literal["disabled", "enabled"] +HttpTokensType = Literal["optional", "required"] +InstanceAccessProtocolType = Literal["rdp", "ssh"] +InstanceHealthReasonType = Literal["Instance.DeregistrationInProgress", + "Instance.FailedHealthChecks", + "Instance.InvalidState", + "Instance.IpUnusable", + "Instance.NotInUse", + "Instance.NotRegistered", + "Instance.ResponseCodeMismatch", + "Instance.Timeout", + "Lb.InitialHealthChecking", + "Lb.InternalError", + "Lb.RegistrationInProgress",] +InstanceHealthStateType = Literal["draining", "healthy", "initial", "unavailable", "unhealthy", "unused"] +InstanceMetadataStateType = Literal["applied", "pending"] +InstanceMetricNameType = Literal["BurstCapacityPercentage", + "BurstCapacityTime", + "CPUUtilization", + "MetadataNoToken", + "NetworkIn", + "NetworkOut", + "StatusCheckFailed", + "StatusCheckFailed_Instance", + "StatusCheckFailed_System",] +InstancePlatformType = Literal["LINUX_UNIX", "WINDOWS"] +InstanceSnapshotStateType = Literal["available", "error", "pending"] +IpAddressTypeType = Literal["dualstack", "ipv4", "ipv6"] +LoadBalancerAttributeNameType = Literal["HealthCheckPath", + "HttpsRedirectionEnabled", + "SessionStickinessEnabled", + "SessionStickiness_LB_CookieDurationSeconds", + "TlsPolicyName",] +LoadBalancerMetricNameType = Literal["ClientTLSNegotiationErrorCount", + "HTTPCode_Instance_2XX_Count", + "HTTPCode_Instance_3XX_Count", + "HTTPCode_Instance_4XX_Count", + "HTTPCode_Instance_5XX_Count", + "HTTPCode_LB_4XX_Count", + "HTTPCode_LB_5XX_Count", + "HealthyHostCount", + "InstanceResponseTime", + "RejectedConnectionCount", + "RequestCount", + "UnhealthyHostCount",] +LoadBalancerProtocolType = Literal["HTTP", "HTTP_HTTPS"] +LoadBalancerStateType = Literal["active", "active_impaired", "failed", "provisioning", "unknown"] +LoadBalancerTlsCertificateDnsRecordCreationStateCodeType = Literal["FAILED", "STARTED", "SUCCEEDED"] +LoadBalancerTlsCertificateDomainStatusType = Literal["FAILED", "PENDING_VALIDATION", "SUCCESS"] +LoadBalancerTlsCertificateFailureReasonType = Literal["ADDITIONAL_VERIFICATION_REQUIRED", + "DOMAIN_NOT_ALLOWED", + "INVALID_PUBLIC_DOMAIN", + "NO_AVAILABLE_CONTACTS", + "OTHER",] +LoadBalancerTlsCertificateRenewalStatusType = Literal["FAILED", "PENDING_AUTO_RENEWAL", "PENDING_VALIDATION", "SUCCESS"] +LoadBalancerTlsCertificateRevocationReasonType = Literal["AFFILIATION_CHANGED", + "A_A_COMPROMISE", + "CA_COMPROMISE", + "CERTIFICATE_HOLD", + "CESSATION_OF_OPERATION", + "KEY_COMPROMISE", + "PRIVILEGE_WITHDRAWN", + "REMOVE_FROM_CRL", + "SUPERCEDED", + "UNSPECIFIED",] +LoadBalancerTlsCertificateStatusType = Literal["EXPIRED", + "FAILED", + "INACTIVE", + "ISSUED", + "PENDING_VALIDATION", + "REVOKED", + "UNKNOWN", + "VALIDATION_TIMED_OUT",] +MetricNameType = Literal["BurstCapacityPercentage", + "BurstCapacityTime", + "CPUUtilization", + "ClientTLSNegotiationErrorCount", + "DatabaseConnections", + "DiskQueueDepth", + "FreeStorageSpace", + "HTTPCode_Instance_2XX_Count", + "HTTPCode_Instance_3XX_Count", + "HTTPCode_Instance_4XX_Count", + "HTTPCode_Instance_5XX_Count", + "HTTPCode_LB_4XX_Count", + "HTTPCode_LB_5XX_Count", + "HealthyHostCount", + "InstanceResponseTime", + "NetworkIn", + "NetworkOut", + "NetworkReceiveThroughput", + "NetworkTransmitThroughput", + "RejectedConnectionCount", + "RequestCount", + "StatusCheckFailed", + "StatusCheckFailed_Instance", + "StatusCheckFailed_System", + "UnhealthyHostCount",] +MetricStatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +MetricUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +NameServersUpdateStateCodeType = Literal["FAILED", "PENDING", "STARTED", "SUCCEEDED"] +NetworkProtocolType = Literal["all", "icmp", "icmpv6", "tcp", "udp"] +OperationStatusType = Literal["Completed", "Failed", "NotStarted", "Started", "Succeeded"] +OperationTypeType = Literal["AllocateStaticIp", + "AttachCertificateToDistribution", + "AttachDisk", + "AttachInstancesToLoadBalancer", + "AttachLoadBalancerTlsCertificate", + "AttachStaticIp", + "CloseInstancePublicPorts", + "CreateBucket", + "CreateBucketAccessKey", + "CreateCertificate", + "CreateContactMethod", + "CreateContainerService", + "CreateContainerServiceDeployment", + "CreateContainerServiceRegistryLogin", + "CreateDisk", + "CreateDiskFromSnapshot", + "CreateDiskSnapshot", + "CreateDistribution", + "CreateDomain", + "CreateInstance", + "CreateInstanceSnapshot", + "CreateInstancesFromSnapshot", + "CreateLoadBalancer", + "CreateLoadBalancerTlsCertificate", + "CreateRelationalDatabase", + "CreateRelationalDatabaseFromSnapshot", + "CreateRelationalDatabaseSnapshot", + "DeleteAlarm", + "DeleteBucket", + "DeleteBucketAccessKey", + "DeleteCertificate", + "DeleteContactMethod", + "DeleteContainerImage", + "DeleteContainerService", + "DeleteDisk", + "DeleteDiskSnapshot", + "DeleteDistribution", + "DeleteDomain", + "DeleteDomainEntry", + "DeleteInstance", + "DeleteInstanceSnapshot", + "DeleteKnownHostKeys", + "DeleteLoadBalancer", + "DeleteLoadBalancerTlsCertificate", + "DeleteRelationalDatabase", + "DeleteRelationalDatabaseSnapshot", + "DetachCertificateFromDistribution", + "DetachDisk", + "DetachInstancesFromLoadBalancer", + "DetachStaticIp", + "DisableAddOn", + "EnableAddOn", + "GetAlarms", + "GetContactMethods", + "OpenInstancePublicPorts", + "PutAlarm", + "PutInstancePublicPorts", + "RebootInstance", + "RebootRelationalDatabase", + "RegisterContainerImage", + "ReleaseStaticIp", + "ResetDistributionCache", + "SendContactMethodVerification", + "SetIpAddressType", + "SetResourceAccessForBucket", + "SetupInstanceHttps", + "StartGUISession", + "StartInstance", + "StartRelationalDatabase", + "StopGUISession", + "StopInstance", + "StopRelationalDatabase", + "TestAlarm", + "UpdateBucket", + "UpdateBucketBundle", + "UpdateContainerService", + "UpdateDistribution", + "UpdateDistributionBundle", + "UpdateDomainEntry", + "UpdateInstanceMetadataOptions", + "UpdateLoadBalancerAttribute", + "UpdateRelationalDatabase", + "UpdateRelationalDatabaseParameters",] +OriginProtocolPolicyEnumType = Literal["http-only", "https-only"] +PortAccessTypeType = Literal["Private", "Public"] +PortInfoSourceTypeType = Literal["CLOSED", "DEFAULT", "INSTANCE", "NONE"] +PortStateType = Literal["closed", "open"] +PricingUnitType = Literal["Bundles", "GB", "GB-Mo", "Hrs", "Queries"] +R53HostedZoneDeletionStateCodeType = Literal["FAILED", "PENDING", "STARTED", "SUCCEEDED"] +RecordStateType = Literal["Failed", "Started", "Succeeded"] +RegionNameType = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +RelationalDatabaseEngineType = Literal["mysql"] +RelationalDatabaseMetricNameType = Literal["CPUUtilization", + "DatabaseConnections", + "DiskQueueDepth", + "FreeStorageSpace", + "NetworkReceiveThroughput", + "NetworkTransmitThroughput",] +RelationalDatabasePasswordVersionType = Literal["CURRENT", "PENDING", "PREVIOUS"] +RenewalStatusType = Literal["Failed", "PendingAutoRenewal", "PendingValidation", "Success"] +ResourceBucketAccessType = Literal["allow", "deny"] +ResourceTypeType = Literal["Alarm", + "Bucket", + "Certificate", + "CloudFormationStackRecord", + "ContactMethod", + "ContainerService", + "Disk", + "DiskSnapshot", + "Distribution", + "Domain", + "ExportSnapshotRecord", + "Instance", + "InstanceSnapshot", + "KeyPair", + "LoadBalancer", + "LoadBalancerTlsCertificate", + "PeeredVpc", + "RelationalDatabase", + "RelationalDatabaseSnapshot", + "StaticIp",] +SetupStatusType = Literal["failed", "inProgress", "succeeded"] +StatusType = Literal["failedInstanceCreation", + "failedStartingGUISession", + "failedStoppingGUISession", + "notStarted", + "settingUpInstance", + "startExpired", + "started", + "starting", + "stopped", + "stopping",] +StatusTypeType = Literal["Active", "Inactive"] +TreatMissingDataType = Literal["breaching", "ignore", "missing", "notBreaching"] +ViewerMinimumTlsProtocolVersionEnumType = Literal["TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021"] +LightsailServiceName = Literal["lightsail"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_active_names", + "get_blueprints", + "get_bundles", + "get_cloud_formation_stack_records", + "get_disk_snapshots", + "get_disks", + "get_domains", + "get_export_snapshot_records", + "get_instance_snapshots", + "get_instances", + "get_key_pairs", + "get_load_balancers", + "get_operations", + "get_relational_database_blueprints", + "get_relational_database_bundles", + "get_relational_database_events", + "get_relational_database_parameters", + "get_relational_database_snapshots", + "get_relational_databases", + "get_static_ips",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ContainerUnionTypeDef = Union['ContainerTypeDef', 'ContainerOutputTypeDef'] +DomainEntryUnionTypeDef = Union['DomainEntryTypeDef', 'DomainEntryExtraOutputTypeDef'] +CacheSettingsUnionTypeDef = Union['CacheSettingsTypeDef', 'CacheSettingsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/location_classes.py b/aws_resource_validator/pydantic_models/location_classes.py new file mode 100644 index 00000000..ea96070e --- /dev/null +++ b/aws_resource_validator/pydantic_models/location_classes.py @@ -0,0 +1,1099 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.location_constants import * + +class ApiKeyFilterTypeDef(BaseModel): + KeyStatus: Optional[StatusType] = None + +class ApiKeyRestrictionsExtraOutputTypeDef(BaseModel): + AllowActions: List[str] + AllowResources: List[str] + AllowReferers: Optional[List[str]] = None + +class ApiKeyRestrictionsOutputTypeDef(BaseModel): + AllowActions: List[str] + AllowResources: List[str] + AllowReferers: Optional[List[str]] = None + +class ApiKeyRestrictionsTypeDef(BaseModel): + AllowActions: Sequence[str] + AllowResources: Sequence[str] + AllowReferers: Optional[Sequence[str]] = None + +class AssociateTrackerConsumerRequestRequestTypeDef(BaseModel): + TrackerName: str + ConsumerArn: str + +class BatchItemErrorTypeDef(BaseModel): + Code: Optional[BatchItemErrorCodeType] = None + Message: Optional[str] = None + +class BatchDeleteDevicePositionHistoryRequestRequestTypeDef(BaseModel): + TrackerName: str + DeviceIds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchDeleteGeofenceRequestRequestTypeDef(BaseModel): + CollectionName: str + GeofenceIds: Sequence[str] + +class BatchGetDevicePositionRequestRequestTypeDef(BaseModel): + TrackerName: str + DeviceIds: Sequence[str] + +class BatchPutGeofenceSuccessTypeDef(BaseModel): + GeofenceId: str + CreateTime: datetime + UpdateTime: datetime + +class CalculateRouteCarModeOptionsTypeDef(BaseModel): + AvoidFerries: Optional[bool] = None + AvoidTolls: Optional[bool] = None + +class CalculateRouteMatrixSummaryTypeDef(BaseModel): + DataSource: str + RouteCount: int + ErrorCount: int + DistanceUnit: DistanceUnitType + +class CalculateRouteSummaryTypeDef(BaseModel): + RouteBBox: List[float] + DataSource: str + Distance: float + DurationSeconds: float + DistanceUnit: DistanceUnitType + +class TruckDimensionsTypeDef(BaseModel): + Length: Optional[float] = None + Height: Optional[float] = None + Width: Optional[float] = None + Unit: Optional[DimensionUnitType] = None + +class TruckWeightTypeDef(BaseModel): + Total: Optional[float] = None + Unit: Optional[VehicleWeightUnitType] = None + +class CircleExtraOutputTypeDef(BaseModel): + Center: List[float] + Radius: float + +class CircleOutputTypeDef(BaseModel): + Center: List[float] + Radius: float + +class CircleTypeDef(BaseModel): + Center: Sequence[float] + Radius: float + +class CreateGeofenceCollectionRequestRequestTypeDef(BaseModel): + CollectionName: str + PricingPlan: Optional[PricingPlanType] = None + PricingPlanDataSource: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + KmsKeyId: Optional[str] = None + +class MapConfigurationTypeDef(BaseModel): + Style: str + PoliticalView: Optional[str] = None + CustomLayers: Optional[Sequence[str]] = None + +class DataSourceConfigurationTypeDef(BaseModel): + IntendedUse: Optional[IntendedUseType] = None + +class CreateRouteCalculatorRequestRequestTypeDef(BaseModel): + CalculatorName: str + DataSource: str + PricingPlan: Optional[PricingPlanType] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateTrackerRequestRequestTypeDef(BaseModel): + TrackerName: str + PricingPlan: Optional[PricingPlanType] = None + KmsKeyId: Optional[str] = None + PricingPlanDataSource: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + PositionFiltering: Optional[PositionFilteringType] = None + EventBridgeEnabled: Optional[bool] = None + KmsKeyEnableGeospatialQueries: Optional[bool] = None + +class DeleteGeofenceCollectionRequestRequestTypeDef(BaseModel): + CollectionName: str + +class DeleteKeyRequestRequestTypeDef(BaseModel): + KeyName: str + ForceDelete: Optional[bool] = None + +class DeleteMapRequestRequestTypeDef(BaseModel): + MapName: str + +class DeletePlaceIndexRequestRequestTypeDef(BaseModel): + IndexName: str + +class DeleteRouteCalculatorRequestRequestTypeDef(BaseModel): + CalculatorName: str + +class DeleteTrackerRequestRequestTypeDef(BaseModel): + TrackerName: str + +class DescribeGeofenceCollectionRequestRequestTypeDef(BaseModel): + CollectionName: str + +class DescribeKeyRequestRequestTypeDef(BaseModel): + KeyName: str + +class DescribeMapRequestRequestTypeDef(BaseModel): + MapName: str + +class MapConfigurationOutputTypeDef(BaseModel): + Style: str + PoliticalView: Optional[str] = None + CustomLayers: Optional[List[str]] = None + +class DescribePlaceIndexRequestRequestTypeDef(BaseModel): + IndexName: str + +class DescribeRouteCalculatorRequestRequestTypeDef(BaseModel): + CalculatorName: str + +class DescribeTrackerRequestRequestTypeDef(BaseModel): + TrackerName: str + +class PositionalAccuracyTypeDef(BaseModel): + Horizontal: float + +class WiFiAccessPointTypeDef(BaseModel): + MacAddress: str + Rss: int + +class DisassociateTrackerConsumerRequestRequestTypeDef(BaseModel): + TrackerName: str + ConsumerArn: str + +class ForecastGeofenceEventsDeviceStateTypeDef(BaseModel): + Position: Sequence[float] + Speed: Optional[float] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ForecastedEventTypeDef(BaseModel): + EventId: str + GeofenceId: str + IsDeviceInGeofence: bool + NearestDistance: float + EventType: ForecastedGeofenceEventTypeType + ForecastedBreachTime: Optional[datetime] = None + GeofenceProperties: Optional[Dict[str, str]] = None + +class GetDevicePositionRequestRequestTypeDef(BaseModel): + TrackerName: str + DeviceId: str + +class GetGeofenceRequestRequestTypeDef(BaseModel): + CollectionName: str + GeofenceId: str + +class GetMapGlyphsRequestRequestTypeDef(BaseModel): + MapName: str + FontStack: str + FontUnicodeRange: str + Key: Optional[str] = None + +class GetMapSpritesRequestRequestTypeDef(BaseModel): + MapName: str + FileName: str + Key: Optional[str] = None + +class GetMapStyleDescriptorRequestRequestTypeDef(BaseModel): + MapName: str + Key: Optional[str] = None + +class GetMapTileRequestRequestTypeDef(BaseModel): + MapName: str + Z: str + X: str + Y: str + Key: Optional[str] = None + +class GetPlaceRequestRequestTypeDef(BaseModel): + IndexName: str + PlaceId: str + Language: Optional[str] = None + Key: Optional[str] = None + +class LegGeometryTypeDef(BaseModel): + LineString: Optional[List[List[float]]] = None + +class StepTypeDef(BaseModel): + StartPosition: List[float] + EndPosition: List[float] + Distance: float + DurationSeconds: float + GeometryOffset: Optional[int] = None + +class TrackingFilterGeometryTypeDef(BaseModel): + Polygon: Optional[Sequence[Sequence[Sequence[float]]]] = None + +class ListGeofenceCollectionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListGeofenceCollectionsResponseEntryTypeDef(BaseModel): + CollectionName: str + Description: str + CreateTime: datetime + UpdateTime: datetime + PricingPlan: Optional[PricingPlanType] = None + PricingPlanDataSource: Optional[str] = None + +class ListGeofencesRequestRequestTypeDef(BaseModel): + CollectionName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMapsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMapsResponseEntryTypeDef(BaseModel): + MapName: str + Description: str + DataSource: str + CreateTime: datetime + UpdateTime: datetime + PricingPlan: Optional[PricingPlanType] = None + +class ListPlaceIndexesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPlaceIndexesResponseEntryTypeDef(BaseModel): + IndexName: str + Description: str + DataSource: str + CreateTime: datetime + UpdateTime: datetime + PricingPlan: Optional[PricingPlanType] = None + +class ListRouteCalculatorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRouteCalculatorsResponseEntryTypeDef(BaseModel): + CalculatorName: str + Description: str + DataSource: str + CreateTime: datetime + UpdateTime: datetime + PricingPlan: Optional[PricingPlanType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListTrackerConsumersRequestRequestTypeDef(BaseModel): + TrackerName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTrackersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTrackersResponseEntryTypeDef(BaseModel): + TrackerName: str + Description: str + CreateTime: datetime + UpdateTime: datetime + PricingPlan: Optional[PricingPlanType] = None + PricingPlanDataSource: Optional[str] = None + +class LteLocalIdTypeDef(BaseModel): + Earfcn: int + Pci: int + +class LteNetworkMeasurementsTypeDef(BaseModel): + Earfcn: int + CellId: int + Pci: int + Rsrp: Optional[int] = None + Rsrq: Optional[float] = None + +class MapConfigurationUpdateTypeDef(BaseModel): + PoliticalView: Optional[str] = None + CustomLayers: Optional[Sequence[str]] = None + +class PlaceGeometryTypeDef(BaseModel): + Point: Optional[List[float]] = None + +class TimeZoneTypeDef(BaseModel): + Name: str + Offset: Optional[int] = None + +class RouteMatrixEntryErrorTypeDef(BaseModel): + Code: RouteMatrixErrorCodeType + Message: Optional[str] = None + +class SearchForSuggestionsResultTypeDef(BaseModel): + Text: str + PlaceId: Optional[str] = None + Categories: Optional[List[str]] = None + SupplementalCategories: Optional[List[str]] = None + +class SearchPlaceIndexForPositionRequestRequestTypeDef(BaseModel): + IndexName: str + Position: Sequence[float] + MaxResults: Optional[int] = None + Language: Optional[str] = None + Key: Optional[str] = None + +class SearchPlaceIndexForPositionSummaryTypeDef(BaseModel): + Position: List[float] + DataSource: str + MaxResults: Optional[int] = None + Language: Optional[str] = None + +class SearchPlaceIndexForSuggestionsRequestRequestTypeDef(BaseModel): + IndexName: str + Text: str + BiasPosition: Optional[Sequence[float]] = None + FilterBBox: Optional[Sequence[float]] = None + FilterCountries: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + Language: Optional[str] = None + FilterCategories: Optional[Sequence[str]] = None + Key: Optional[str] = None + +class SearchPlaceIndexForSuggestionsSummaryTypeDef(BaseModel): + Text: str + DataSource: str + BiasPosition: Optional[List[float]] = None + FilterBBox: Optional[List[float]] = None + FilterCountries: Optional[List[str]] = None + MaxResults: Optional[int] = None + Language: Optional[str] = None + FilterCategories: Optional[List[str]] = None + +class SearchPlaceIndexForTextRequestRequestTypeDef(BaseModel): + IndexName: str + Text: str + BiasPosition: Optional[Sequence[float]] = None + FilterBBox: Optional[Sequence[float]] = None + FilterCountries: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + Language: Optional[str] = None + FilterCategories: Optional[Sequence[str]] = None + Key: Optional[str] = None + +class SearchPlaceIndexForTextSummaryTypeDef(BaseModel): + Text: str + DataSource: str + BiasPosition: Optional[List[float]] = None + FilterBBox: Optional[List[float]] = None + FilterCountries: Optional[List[str]] = None + MaxResults: Optional[int] = None + ResultBBox: Optional[List[float]] = None + Language: Optional[str] = None + FilterCategories: Optional[List[str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateGeofenceCollectionRequestRequestTypeDef(BaseModel): + CollectionName: str + PricingPlan: Optional[PricingPlanType] = None + PricingPlanDataSource: Optional[str] = None + Description: Optional[str] = None + +class UpdateRouteCalculatorRequestRequestTypeDef(BaseModel): + CalculatorName: str + PricingPlan: Optional[PricingPlanType] = None + Description: Optional[str] = None + +class UpdateTrackerRequestRequestTypeDef(BaseModel): + TrackerName: str + PricingPlan: Optional[PricingPlanType] = None + PricingPlanDataSource: Optional[str] = None + Description: Optional[str] = None + PositionFiltering: Optional[PositionFilteringType] = None + EventBridgeEnabled: Optional[bool] = None + KmsKeyEnableGeospatialQueries: Optional[bool] = None + +class ListKeysRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filter: Optional[ApiKeyFilterTypeDef] = None + +class ListKeysResponseEntryTypeDef(BaseModel): + KeyName: str + ExpireTime: datetime + Restrictions: ApiKeyRestrictionsOutputTypeDef + CreateTime: datetime + UpdateTime: datetime + Description: Optional[str] = None + +class BatchDeleteDevicePositionHistoryErrorTypeDef(BaseModel): + DeviceId: str + Error: BatchItemErrorTypeDef + +class BatchDeleteGeofenceErrorTypeDef(BaseModel): + GeofenceId: str + Error: BatchItemErrorTypeDef + +class BatchEvaluateGeofencesErrorTypeDef(BaseModel): + DeviceId: str + SampleTime: datetime + Error: BatchItemErrorTypeDef + +class BatchGetDevicePositionErrorTypeDef(BaseModel): + DeviceId: str + Error: BatchItemErrorTypeDef + +class BatchPutGeofenceErrorTypeDef(BaseModel): + GeofenceId: str + Error: BatchItemErrorTypeDef + +class BatchUpdateDevicePositionErrorTypeDef(BaseModel): + DeviceId: str + SampleTime: datetime + Error: BatchItemErrorTypeDef + +class CreateGeofenceCollectionResponseTypeDef(BaseModel): + CollectionName: str + CollectionArn: str + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKeyResponseTypeDef(BaseModel): + Key: str + KeyArn: str + KeyName: str + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMapResponseTypeDef(BaseModel): + MapName: str + MapArn: str + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePlaceIndexResponseTypeDef(BaseModel): + IndexName: str + IndexArn: str + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRouteCalculatorResponseTypeDef(BaseModel): + CalculatorName: str + CalculatorArn: str + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrackerResponseTypeDef(BaseModel): + TrackerName: str + TrackerArn: str + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGeofenceCollectionResponseTypeDef(BaseModel): + CollectionName: str + CollectionArn: str + Description: str + PricingPlan: PricingPlanType + PricingPlanDataSource: str + KmsKeyId: str + Tags: Dict[str, str] + CreateTime: datetime + UpdateTime: datetime + GeofenceCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyResponseTypeDef(BaseModel): + Key: str + KeyArn: str + KeyName: str + Restrictions: ApiKeyRestrictionsOutputTypeDef + CreateTime: datetime + ExpireTime: datetime + UpdateTime: datetime + Description: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRouteCalculatorResponseTypeDef(BaseModel): + CalculatorName: str + CalculatorArn: str + PricingPlan: PricingPlanType + Description: str + CreateTime: datetime + UpdateTime: datetime + DataSource: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrackerResponseTypeDef(BaseModel): + TrackerName: str + TrackerArn: str + Description: str + PricingPlan: PricingPlanType + PricingPlanDataSource: str + Tags: Dict[str, str] + CreateTime: datetime + UpdateTime: datetime + KmsKeyId: str + PositionFiltering: PositionFilteringType + EventBridgeEnabled: bool + KmsKeyEnableGeospatialQueries: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetMapGlyphsResponseTypeDef(BaseModel): + Blob: StreamingBody + ContentType: str + CacheControl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMapSpritesResponseTypeDef(BaseModel): + Blob: StreamingBody + ContentType: str + CacheControl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMapStyleDescriptorResponseTypeDef(BaseModel): + Blob: StreamingBody + ContentType: str + CacheControl: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMapTileResponseTypeDef(BaseModel): + Blob: StreamingBody + ContentType: str + CacheControl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrackerConsumersResponseTypeDef(BaseModel): + ConsumerArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutGeofenceResponseTypeDef(BaseModel): + GeofenceId: str + CreateTime: datetime + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGeofenceCollectionResponseTypeDef(BaseModel): + CollectionName: str + CollectionArn: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKeyResponseTypeDef(BaseModel): + KeyArn: str + KeyName: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMapResponseTypeDef(BaseModel): + MapName: str + MapArn: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePlaceIndexResponseTypeDef(BaseModel): + IndexName: str + IndexArn: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRouteCalculatorResponseTypeDef(BaseModel): + CalculatorName: str + CalculatorArn: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrackerResponseTypeDef(BaseModel): + TrackerName: str + TrackerArn: str + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKeyRequestRequestTypeDef(BaseModel): + KeyName: str + Restrictions: ApiKeyRestrictionsTypeDef + Description: Optional[str] = None + ExpireTime: Optional[TimestampTypeDef] = None + NoExpiry: Optional[bool] = None + Tags: Optional[Mapping[str, str]] = None + +class GetDevicePositionHistoryRequestRequestTypeDef(BaseModel): + TrackerName: str + DeviceId: str + NextToken: Optional[str] = None + StartTimeInclusive: Optional[TimestampTypeDef] = None + EndTimeExclusive: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + +class UpdateKeyRequestRequestTypeDef(BaseModel): + KeyName: str + Description: Optional[str] = None + ExpireTime: Optional[TimestampTypeDef] = None + NoExpiry: Optional[bool] = None + ForceUpdate: Optional[bool] = None + Restrictions: Optional[ApiKeyRestrictionsTypeDef] = None + +class CalculateRouteTruckModeOptionsTypeDef(BaseModel): + AvoidFerries: Optional[bool] = None + AvoidTolls: Optional[bool] = None + Dimensions: Optional[TruckDimensionsTypeDef] = None + Weight: Optional[TruckWeightTypeDef] = None + +class GeofenceGeometryExtraOutputTypeDef(BaseModel): + Polygon: Optional[List[List[List[float]]]] = None + Circle: Optional[CircleExtraOutputTypeDef] = None + Geobuf: Optional[bytes] = None + +class GeofenceGeometryOutputTypeDef(BaseModel): + Polygon: Optional[List[List[List[float]]]] = None + Circle: Optional[CircleOutputTypeDef] = None + Geobuf: Optional[bytes] = None + +class GeofenceGeometryTypeDef(BaseModel): + Polygon: Optional[Sequence[Sequence[Sequence[float]]]] = None + Circle: Optional[CircleTypeDef] = None + Geobuf: Optional[BlobTypeDef] = None + +class CreateMapRequestRequestTypeDef(BaseModel): + MapName: str + Configuration: MapConfigurationTypeDef + PricingPlan: Optional[PricingPlanType] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreatePlaceIndexRequestRequestTypeDef(BaseModel): + IndexName: str + DataSource: str + PricingPlan: Optional[PricingPlanType] = None + Description: Optional[str] = None + DataSourceConfiguration: Optional[DataSourceConfigurationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class DescribePlaceIndexResponseTypeDef(BaseModel): + IndexName: str + IndexArn: str + PricingPlan: PricingPlanType + Description: str + CreateTime: datetime + UpdateTime: datetime + DataSource: str + DataSourceConfiguration: DataSourceConfigurationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePlaceIndexRequestRequestTypeDef(BaseModel): + IndexName: str + PricingPlan: Optional[PricingPlanType] = None + Description: Optional[str] = None + DataSourceConfiguration: Optional[DataSourceConfigurationTypeDef] = None + +class DescribeMapResponseTypeDef(BaseModel): + MapName: str + MapArn: str + PricingPlan: PricingPlanType + DataSource: str + Configuration: MapConfigurationOutputTypeDef + Description: str + Tags: Dict[str, str] + CreateTime: datetime + UpdateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DevicePositionTypeDef(BaseModel): + SampleTime: datetime + ReceivedTime: datetime + Position: List[float] + DeviceId: Optional[str] = None + Accuracy: Optional[PositionalAccuracyTypeDef] = None + PositionProperties: Optional[Dict[str, str]] = None + +class DevicePositionUpdateTypeDef(BaseModel): + DeviceId: str + SampleTime: TimestampTypeDef + Position: Sequence[float] + Accuracy: Optional[PositionalAccuracyTypeDef] = None + PositionProperties: Optional[Mapping[str, str]] = None + +class GetDevicePositionResponseTypeDef(BaseModel): + DeviceId: str + SampleTime: datetime + ReceivedTime: datetime + Position: List[float] + Accuracy: PositionalAccuracyTypeDef + PositionProperties: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class InferredStateTypeDef(BaseModel): + ProxyDetected: bool + Position: Optional[List[float]] = None + Accuracy: Optional[PositionalAccuracyTypeDef] = None + DeviationDistance: Optional[float] = None + +class ListDevicePositionsResponseEntryTypeDef(BaseModel): + DeviceId: str + SampleTime: datetime + Position: List[float] + Accuracy: Optional[PositionalAccuracyTypeDef] = None + PositionProperties: Optional[Dict[str, str]] = None + +class ForecastGeofenceEventsRequestRequestTypeDef(BaseModel): + CollectionName: str + DeviceState: ForecastGeofenceEventsDeviceStateTypeDef + TimeHorizonMinutes: Optional[float] = None + DistanceUnit: Optional[DistanceUnitType] = None + SpeedUnit: Optional[SpeedUnitType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ForecastGeofenceEventsRequestForecastGeofenceEventsPaginateTypeDef(BaseModel): + CollectionName: str + DeviceState: ForecastGeofenceEventsDeviceStateTypeDef + TimeHorizonMinutes: Optional[float] = None + DistanceUnit: Optional[DistanceUnitType] = None + SpeedUnit: Optional[SpeedUnitType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDevicePositionHistoryRequestGetDevicePositionHistoryPaginateTypeDef(BaseModel): + TrackerName: str + DeviceId: str + StartTimeInclusive: Optional[TimestampTypeDef] = None + EndTimeExclusive: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGeofenceCollectionsRequestListGeofenceCollectionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGeofencesRequestListGeofencesPaginateTypeDef(BaseModel): + CollectionName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeysRequestListKeysPaginateTypeDef(BaseModel): + Filter: Optional[ApiKeyFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMapsRequestListMapsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlaceIndexesRequestListPlaceIndexesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRouteCalculatorsRequestListRouteCalculatorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrackerConsumersRequestListTrackerConsumersPaginateTypeDef(BaseModel): + TrackerName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrackersRequestListTrackersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ForecastGeofenceEventsResponseTypeDef(BaseModel): + ForecastedEvents: List[ForecastedEventTypeDef] + DistanceUnit: DistanceUnitType + SpeedUnit: SpeedUnitType + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LegTypeDef(BaseModel): + StartPosition: List[float] + EndPosition: List[float] + Distance: float + DurationSeconds: float + Steps: List[StepTypeDef] + Geometry: Optional[LegGeometryTypeDef] = None + +class ListDevicePositionsRequestListDevicePositionsPaginateTypeDef(BaseModel): + TrackerName: str + FilterGeometry: Optional[TrackingFilterGeometryTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevicePositionsRequestRequestTypeDef(BaseModel): + TrackerName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + FilterGeometry: Optional[TrackingFilterGeometryTypeDef] = None + +class ListGeofenceCollectionsResponseTypeDef(BaseModel): + Entries: List[ListGeofenceCollectionsResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMapsResponseTypeDef(BaseModel): + Entries: List[ListMapsResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPlaceIndexesResponseTypeDef(BaseModel): + Entries: List[ListPlaceIndexesResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRouteCalculatorsResponseTypeDef(BaseModel): + Entries: List[ListRouteCalculatorsResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrackersResponseTypeDef(BaseModel): + Entries: List[ListTrackersResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LteCellDetailsTypeDef(BaseModel): + CellId: int + Mcc: int + Mnc: int + LocalId: Optional[LteLocalIdTypeDef] = None + NetworkMeasurements: Optional[Sequence[LteNetworkMeasurementsTypeDef]] = None + TimingAdvance: Optional[int] = None + NrCapable: Optional[bool] = None + Rsrp: Optional[int] = None + Rsrq: Optional[float] = None + Tac: Optional[int] = None + +class UpdateMapRequestRequestTypeDef(BaseModel): + MapName: str + PricingPlan: Optional[PricingPlanType] = None + Description: Optional[str] = None + ConfigurationUpdate: Optional[MapConfigurationUpdateTypeDef] = None + +class PlaceTypeDef(BaseModel): + Geometry: PlaceGeometryTypeDef + Label: Optional[str] = None + AddressNumber: Optional[str] = None + Street: Optional[str] = None + Neighborhood: Optional[str] = None + Municipality: Optional[str] = None + SubRegion: Optional[str] = None + Region: Optional[str] = None + Country: Optional[str] = None + PostalCode: Optional[str] = None + Interpolated: Optional[bool] = None + TimeZone: Optional[TimeZoneTypeDef] = None + UnitType: Optional[str] = None + UnitNumber: Optional[str] = None + Categories: Optional[List[str]] = None + SupplementalCategories: Optional[List[str]] = None + SubMunicipality: Optional[str] = None + +class RouteMatrixEntryTypeDef(BaseModel): + Distance: Optional[float] = None + DurationSeconds: Optional[float] = None + Error: Optional[RouteMatrixEntryErrorTypeDef] = None + +class SearchPlaceIndexForSuggestionsResponseTypeDef(BaseModel): + Summary: SearchPlaceIndexForSuggestionsSummaryTypeDef + Results: List[SearchForSuggestionsResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListKeysResponseTypeDef(BaseModel): + Entries: List[ListKeysResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchDeleteDevicePositionHistoryResponseTypeDef(BaseModel): + Errors: List[BatchDeleteDevicePositionHistoryErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteGeofenceResponseTypeDef(BaseModel): + Errors: List[BatchDeleteGeofenceErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchEvaluateGeofencesResponseTypeDef(BaseModel): + Errors: List[BatchEvaluateGeofencesErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutGeofenceResponseTypeDef(BaseModel): + Successes: List[BatchPutGeofenceSuccessTypeDef] + Errors: List[BatchPutGeofenceErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateDevicePositionResponseTypeDef(BaseModel): + Errors: List[BatchUpdateDevicePositionErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CalculateRouteMatrixRequestRequestTypeDef(BaseModel): + CalculatorName: str + DeparturePositions: Sequence[Sequence[float]] + DestinationPositions: Sequence[Sequence[float]] + TravelMode: Optional[TravelModeType] = None + DepartureTime: Optional[TimestampTypeDef] = None + DepartNow: Optional[bool] = None + DistanceUnit: Optional[DistanceUnitType] = None + CarModeOptions: Optional[CalculateRouteCarModeOptionsTypeDef] = None + TruckModeOptions: Optional[CalculateRouteTruckModeOptionsTypeDef] = None + Key: Optional[str] = None + +class CalculateRouteRequestRequestTypeDef(BaseModel): + CalculatorName: str + DeparturePosition: Sequence[float] + DestinationPosition: Sequence[float] + WaypointPositions: Optional[Sequence[Sequence[float]]] = None + TravelMode: Optional[TravelModeType] = None + DepartureTime: Optional[TimestampTypeDef] = None + DepartNow: Optional[bool] = None + DistanceUnit: Optional[DistanceUnitType] = None + IncludeLegGeometry: Optional[bool] = None + CarModeOptions: Optional[CalculateRouteCarModeOptionsTypeDef] = None + TruckModeOptions: Optional[CalculateRouteTruckModeOptionsTypeDef] = None + ArrivalTime: Optional[TimestampTypeDef] = None + OptimizeFor: Optional[OptimizationModeType] = None + Key: Optional[str] = None + +class GetGeofenceResponseTypeDef(BaseModel): + GeofenceId: str + Geometry: GeofenceGeometryOutputTypeDef + Status: str + CreateTime: datetime + UpdateTime: datetime + GeofenceProperties: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGeofenceResponseEntryTypeDef(BaseModel): + GeofenceId: str + Geometry: GeofenceGeometryOutputTypeDef + Status: str + CreateTime: datetime + UpdateTime: datetime + GeofenceProperties: Optional[Dict[str, str]] = None + +class BatchPutGeofenceRequestEntryTypeDef(BaseModel): + GeofenceId: str + Geometry: GeofenceGeometryTypeDef + GeofenceProperties: Optional[Mapping[str, str]] = None + +class PutGeofenceRequestRequestTypeDef(BaseModel): + CollectionName: str + GeofenceId: str + Geometry: GeofenceGeometryTypeDef + GeofenceProperties: Optional[Mapping[str, str]] = None + +class BatchGetDevicePositionResponseTypeDef(BaseModel): + Errors: List[BatchGetDevicePositionErrorTypeDef] + DevicePositions: List[DevicePositionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevicePositionHistoryResponseTypeDef(BaseModel): + DevicePositions: List[DevicePositionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchEvaluateGeofencesRequestRequestTypeDef(BaseModel): + CollectionName: str + DevicePositionUpdates: Sequence[DevicePositionUpdateTypeDef] + +class BatchUpdateDevicePositionRequestRequestTypeDef(BaseModel): + TrackerName: str + Updates: Sequence[DevicePositionUpdateTypeDef] + +class VerifyDevicePositionResponseTypeDef(BaseModel): + InferredState: InferredStateTypeDef + DeviceId: str + SampleTime: datetime + ReceivedTime: datetime + DistanceUnit: DistanceUnitType + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicePositionsResponseTypeDef(BaseModel): + Entries: List[ListDevicePositionsResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CalculateRouteResponseTypeDef(BaseModel): + Legs: List[LegTypeDef] + Summary: CalculateRouteSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CellSignalsTypeDef(BaseModel): + LteCellDetails: Sequence[LteCellDetailsTypeDef] + +class GetPlaceResponseTypeDef(BaseModel): + Place: PlaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchForPositionResultTypeDef(BaseModel): + Place: PlaceTypeDef + Distance: float + PlaceId: Optional[str] = None + +class SearchForTextResultTypeDef(BaseModel): + Place: PlaceTypeDef + Distance: Optional[float] = None + Relevance: Optional[float] = None + PlaceId: Optional[str] = None + +class CalculateRouteMatrixResponseTypeDef(BaseModel): + RouteMatrix: List[List[RouteMatrixEntryTypeDef]] + SnappedDeparturePositions: List[List[float]] + SnappedDestinationPositions: List[List[float]] + Summary: CalculateRouteMatrixSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGeofencesResponseTypeDef(BaseModel): + Entries: List[ListGeofenceResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchPutGeofenceRequestRequestTypeDef(BaseModel): + CollectionName: str + Entries: Sequence[BatchPutGeofenceRequestEntryTypeDef] + +class DeviceStateTypeDef(BaseModel): + DeviceId: str + SampleTime: TimestampTypeDef + Position: Sequence[float] + Accuracy: Optional[PositionalAccuracyTypeDef] = None + Ipv4Address: Optional[str] = None + WiFiAccessPoints: Optional[Sequence[WiFiAccessPointTypeDef]] = None + CellSignals: Optional[CellSignalsTypeDef] = None + +class SearchPlaceIndexForPositionResponseTypeDef(BaseModel): + Summary: SearchPlaceIndexForPositionSummaryTypeDef + Results: List[SearchForPositionResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchPlaceIndexForTextResponseTypeDef(BaseModel): + Summary: SearchPlaceIndexForTextSummaryTypeDef + Results: List[SearchForTextResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyDevicePositionRequestRequestTypeDef(BaseModel): + TrackerName: str + DeviceState: DeviceStateTypeDef + DistanceUnit: Optional[DistanceUnitType] = None + diff --git a/aws_resource_validator/pydantic_models/location_constants.py b/aws_resource_validator/pydantic_models/location_constants.py new file mode 100644 index 00000000..0a9f6f47 --- /dev/null +++ b/aws_resource_validator/pydantic_models/location_constants.py @@ -0,0 +1,460 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BatchItemErrorCodeType = Literal["AccessDeniedError", + "ConflictError", + "InternalServerError", + "ResourceNotFoundError", + "ThrottlingError", + "ValidationError",] +DimensionUnitType = Literal["Feet", "Meters"] +DistanceUnitType = Literal["Kilometers", "Miles"] +ForecastGeofenceEventsPaginatorName = Literal["forecast_geofence_events"] +ForecastedGeofenceEventTypeType = Literal["ENTER", "EXIT", "IDLE"] +GetDevicePositionHistoryPaginatorName = Literal["get_device_position_history"] +IntendedUseType = Literal["SingleUse", "Storage"] +ListDevicePositionsPaginatorName = Literal["list_device_positions"] +ListGeofenceCollectionsPaginatorName = Literal["list_geofence_collections"] +ListGeofencesPaginatorName = Literal["list_geofences"] +ListKeysPaginatorName = Literal["list_keys"] +ListMapsPaginatorName = Literal["list_maps"] +ListPlaceIndexesPaginatorName = Literal["list_place_indexes"] +ListRouteCalculatorsPaginatorName = Literal["list_route_calculators"] +ListTrackerConsumersPaginatorName = Literal["list_tracker_consumers"] +ListTrackersPaginatorName = Literal["list_trackers"] +OptimizationModeType = Literal["FastestRoute", "ShortestRoute"] +PositionFilteringType = Literal["AccuracyBased", "DistanceBased", "TimeBased"] +PricingPlanType = Literal["MobileAssetManagement", "MobileAssetTracking", "RequestBasedUsage"] +RouteMatrixErrorCodeType = Literal["DeparturePositionNotFound", + "DestinationPositionNotFound", + "OtherValidationError", + "PositionsNotFound", + "RouteNotFound", + "RouteTooLong",] +SpeedUnitType = Literal["KilometersPerHour", "MilesPerHour"] +StatusType = Literal["Active", "Expired"] +TravelModeType = Literal["Bicycle", "Car", "Motorcycle", "Truck", "Walking"] +VehicleWeightUnitType = Literal["Kilograms", "Pounds"] +LocationServiceServiceName = Literal["location"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["forecast_geofence_events", + "get_device_position_history", + "list_device_positions", + "list_geofence_collections", + "list_geofences", + "list_keys", + "list_maps", + "list_place_indexes", + "list_route_calculators", + "list_tracker_consumers", + "list_trackers",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +ApiKeyRestrictionsUnionTypeDef = Union[ 'ApiKeyRestrictionsTypeDef', 'ApiKeyRestrictionsExtraOutputTypeDef' ] +MapConfigurationUnionTypeDef = Union['MapConfigurationTypeDef', 'MapConfigurationOutputTypeDef'] +GeofenceGeometryUnionTypeDef = Union['GeofenceGeometryTypeDef', 'GeofenceGeometryExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/logs_classes.py b/aws_resource_validator/pydantic_models/logs_classes.py new file mode 100644 index 00000000..5de963e4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/logs_classes.py @@ -0,0 +1,938 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.logs_constants import * + +class AccountPolicyTypeDef(BaseModel): + policyName: Optional[str] = None + policyDocument: Optional[str] = None + lastUpdatedTime: Optional[int] = None + policyType: Optional[PolicyTypeType] = None + scope: Optional[Literal["ALL"]] = None + selectionCriteria: Optional[str] = None + accountId: Optional[str] = None + +class AnomalyDetectorTypeDef(BaseModel): + anomalyDetectorArn: Optional[str] = None + detectorName: Optional[str] = None + logGroupArnList: Optional[List[str]] = None + evaluationFrequency: Optional[EvaluationFrequencyType] = None + filterPattern: Optional[str] = None + anomalyDetectorStatus: Optional[AnomalyDetectorStatusType] = None + kmsKeyId: Optional[str] = None + creationTimeStamp: Optional[int] = None + lastModifiedTimeStamp: Optional[int] = None + anomalyVisibilityTime: Optional[int] = None + +class LogEventTypeDef(BaseModel): + timestamp: Optional[int] = None + message: Optional[str] = None + +class PatternTokenTypeDef(BaseModel): + dynamicTokenPosition: Optional[int] = None + isDynamic: Optional[bool] = None + tokenString: Optional[str] = None + enumerations: Optional[Dict[str, int]] = None + +class AssociateKmsKeyRequestRequestTypeDef(BaseModel): + kmsKeyId: str + logGroupName: Optional[str] = None + resourceIdentifier: Optional[str] = None + +class CancelExportTaskRequestRequestTypeDef(BaseModel): + taskId: str + +class CreateDeliveryRequestRequestTypeDef(BaseModel): + deliverySourceName: str + deliveryDestinationArn: str + tags: Optional[Mapping[str, str]] = None + +class DeliveryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + deliverySourceName: Optional[str] = None + deliveryDestinationArn: Optional[str] = None + deliveryDestinationType: Optional[DeliveryDestinationTypeType] = None + tags: Optional[Dict[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateExportTaskRequestRequestTypeDef(BaseModel): + logGroupName: str + fromTime: int + to: int + destination: str + taskName: Optional[str] = None + logStreamNamePrefix: Optional[str] = None + destinationPrefix: Optional[str] = None + +class CreateLogAnomalyDetectorRequestRequestTypeDef(BaseModel): + logGroupArnList: Sequence[str] + detectorName: Optional[str] = None + evaluationFrequency: Optional[EvaluationFrequencyType] = None + filterPattern: Optional[str] = None + kmsKeyId: Optional[str] = None + anomalyVisibilityTime: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class CreateLogGroupRequestRequestTypeDef(BaseModel): + logGroupName: str + kmsKeyId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + logGroupClass: Optional[LogGroupClassType] = None + +class CreateLogStreamRequestRequestTypeDef(BaseModel): + logGroupName: str + logStreamName: str + +class DeleteAccountPolicyRequestRequestTypeDef(BaseModel): + policyName: str + policyType: PolicyTypeType + +class DeleteDataProtectionPolicyRequestRequestTypeDef(BaseModel): + logGroupIdentifier: str + +class DeleteDeliveryDestinationPolicyRequestRequestTypeDef(BaseModel): + deliveryDestinationName: str + +class DeleteDeliveryDestinationRequestRequestTypeDef(BaseModel): + name: str + +class DeleteDeliveryRequestRequestTypeDef(BaseModel): + id: str + +class DeleteDeliverySourceRequestRequestTypeDef(BaseModel): + name: str + +class DeleteDestinationRequestRequestTypeDef(BaseModel): + destinationName: str + +class DeleteLogAnomalyDetectorRequestRequestTypeDef(BaseModel): + anomalyDetectorArn: str + +class DeleteLogGroupRequestRequestTypeDef(BaseModel): + logGroupName: str + +class DeleteLogStreamRequestRequestTypeDef(BaseModel): + logGroupName: str + logStreamName: str + +class DeleteMetricFilterRequestRequestTypeDef(BaseModel): + logGroupName: str + filterName: str + +class DeleteQueryDefinitionRequestRequestTypeDef(BaseModel): + queryDefinitionId: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + policyName: Optional[str] = None + +class DeleteRetentionPolicyRequestRequestTypeDef(BaseModel): + logGroupName: str + +class DeleteSubscriptionFilterRequestRequestTypeDef(BaseModel): + logGroupName: str + filterName: str + +class DeliveryDestinationConfigurationTypeDef(BaseModel): + destinationResourceArn: str + +class DeliverySourceTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + resourceArns: Optional[List[str]] = None + service: Optional[str] = None + logType: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class DescribeAccountPoliciesRequestRequestTypeDef(BaseModel): + policyType: PolicyTypeType + policyName: Optional[str] = None + accountIdentifiers: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeDeliveriesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + limit: Optional[int] = None + +class DescribeDeliveryDestinationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + limit: Optional[int] = None + +class DescribeDeliverySourcesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + limit: Optional[int] = None + +class DescribeDestinationsRequestRequestTypeDef(BaseModel): + DestinationNamePrefix: Optional[str] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + +class DestinationTypeDef(BaseModel): + destinationName: Optional[str] = None + targetArn: Optional[str] = None + roleArn: Optional[str] = None + accessPolicy: Optional[str] = None + arn: Optional[str] = None + creationTime: Optional[int] = None + +class DescribeExportTasksRequestRequestTypeDef(BaseModel): + taskId: Optional[str] = None + statusCode: Optional[ExportTaskStatusCodeType] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + +class DescribeLogGroupsRequestRequestTypeDef(BaseModel): + accountIdentifiers: Optional[Sequence[str]] = None + logGroupNamePrefix: Optional[str] = None + logGroupNamePattern: Optional[str] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + includeLinkedAccounts: Optional[bool] = None + logGroupClass: Optional[LogGroupClassType] = None + +class LogGroupTypeDef(BaseModel): + logGroupName: Optional[str] = None + creationTime: Optional[int] = None + retentionInDays: Optional[int] = None + metricFilterCount: Optional[int] = None + arn: Optional[str] = None + storedBytes: Optional[int] = None + kmsKeyId: Optional[str] = None + dataProtectionStatus: Optional[DataProtectionStatusType] = None + inheritedProperties: Optional[List[Literal["ACCOUNT_DATA_PROTECTION"]]] = None + logGroupClass: Optional[LogGroupClassType] = None + logGroupArn: Optional[str] = None + +class DescribeLogStreamsRequestRequestTypeDef(BaseModel): + logGroupName: Optional[str] = None + logGroupIdentifier: Optional[str] = None + logStreamNamePrefix: Optional[str] = None + orderBy: Optional[OrderByType] = None + descending: Optional[bool] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + +class LogStreamTypeDef(BaseModel): + logStreamName: Optional[str] = None + creationTime: Optional[int] = None + firstEventTimestamp: Optional[int] = None + lastEventTimestamp: Optional[int] = None + lastIngestionTime: Optional[int] = None + uploadSequenceToken: Optional[str] = None + arn: Optional[str] = None + storedBytes: Optional[int] = None + +class DescribeMetricFiltersRequestRequestTypeDef(BaseModel): + logGroupName: Optional[str] = None + filterNamePrefix: Optional[str] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + metricName: Optional[str] = None + metricNamespace: Optional[str] = None + +class DescribeQueriesRequestRequestTypeDef(BaseModel): + logGroupName: Optional[str] = None + status: Optional[QueryStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QueryInfoTypeDef(BaseModel): + queryId: Optional[str] = None + queryString: Optional[str] = None + status: Optional[QueryStatusType] = None + createTime: Optional[int] = None + logGroupName: Optional[str] = None + +class DescribeQueryDefinitionsRequestRequestTypeDef(BaseModel): + queryDefinitionNamePrefix: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QueryDefinitionTypeDef(BaseModel): + queryDefinitionId: Optional[str] = None + name: Optional[str] = None + queryString: Optional[str] = None + lastModified: Optional[int] = None + logGroupNames: Optional[List[str]] = None + +class DescribeResourcePoliciesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + limit: Optional[int] = None + +class ResourcePolicyTypeDef(BaseModel): + policyName: Optional[str] = None + policyDocument: Optional[str] = None + lastUpdatedTime: Optional[int] = None + +class DescribeSubscriptionFiltersRequestRequestTypeDef(BaseModel): + logGroupName: str + filterNamePrefix: Optional[str] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + +class SubscriptionFilterTypeDef(BaseModel): + filterName: Optional[str] = None + logGroupName: Optional[str] = None + filterPattern: Optional[str] = None + destinationArn: Optional[str] = None + roleArn: Optional[str] = None + distribution: Optional[DistributionType] = None + creationTime: Optional[int] = None + +class DisassociateKmsKeyRequestRequestTypeDef(BaseModel): + logGroupName: Optional[str] = None + resourceIdentifier: Optional[str] = None + +class ExportTaskExecutionInfoTypeDef(BaseModel): + creationTime: Optional[int] = None + completionTime: Optional[int] = None + +class ExportTaskStatusTypeDef(BaseModel): + code: Optional[ExportTaskStatusCodeType] = None + message: Optional[str] = None + +class FilterLogEventsRequestRequestTypeDef(BaseModel): + logGroupName: Optional[str] = None + logGroupIdentifier: Optional[str] = None + logStreamNames: Optional[Sequence[str]] = None + logStreamNamePrefix: Optional[str] = None + startTime: Optional[int] = None + endTime: Optional[int] = None + filterPattern: Optional[str] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + interleaved: Optional[bool] = None + unmask: Optional[bool] = None + +class FilteredLogEventTypeDef(BaseModel): + logStreamName: Optional[str] = None + timestamp: Optional[int] = None + message: Optional[str] = None + ingestionTime: Optional[int] = None + eventId: Optional[str] = None + +class SearchedLogStreamTypeDef(BaseModel): + logStreamName: Optional[str] = None + searchedCompletely: Optional[bool] = None + +class GetDataProtectionPolicyRequestRequestTypeDef(BaseModel): + logGroupIdentifier: str + +class GetDeliveryDestinationPolicyRequestRequestTypeDef(BaseModel): + deliveryDestinationName: str + +class PolicyTypeDef(BaseModel): + deliveryDestinationPolicy: Optional[str] = None + +class GetDeliveryDestinationRequestRequestTypeDef(BaseModel): + name: str + +class GetDeliveryRequestRequestTypeDef(BaseModel): + id: str + +class GetDeliverySourceRequestRequestTypeDef(BaseModel): + name: str + +class GetLogAnomalyDetectorRequestRequestTypeDef(BaseModel): + anomalyDetectorArn: str + +class GetLogEventsRequestRequestTypeDef(BaseModel): + logStreamName: str + logGroupName: Optional[str] = None + logGroupIdentifier: Optional[str] = None + startTime: Optional[int] = None + endTime: Optional[int] = None + nextToken: Optional[str] = None + limit: Optional[int] = None + startFromHead: Optional[bool] = None + unmask: Optional[bool] = None + +class OutputLogEventTypeDef(BaseModel): + timestamp: Optional[int] = None + message: Optional[str] = None + ingestionTime: Optional[int] = None + +class GetLogGroupFieldsRequestRequestTypeDef(BaseModel): + logGroupName: Optional[str] = None + time: Optional[int] = None + logGroupIdentifier: Optional[str] = None + +class LogGroupFieldTypeDef(BaseModel): + name: Optional[str] = None + percent: Optional[int] = None + +class GetLogRecordRequestRequestTypeDef(BaseModel): + logRecordPointer: str + unmask: Optional[bool] = None + +class GetQueryResultsRequestRequestTypeDef(BaseModel): + queryId: str + +class QueryStatisticsTypeDef(BaseModel): + recordsMatched: Optional[float] = None + recordsScanned: Optional[float] = None + bytesScanned: Optional[float] = None + +class ResultFieldTypeDef(BaseModel): + field: Optional[str] = None + value: Optional[str] = None + +class InputLogEventTypeDef(BaseModel): + timestamp: int + message: str + +class ListAnomaliesRequestRequestTypeDef(BaseModel): + anomalyDetectorArn: Optional[str] = None + suppressionState: Optional[SuppressionStateType] = None + limit: Optional[int] = None + nextToken: Optional[str] = None + +class ListLogAnomalyDetectorsRequestRequestTypeDef(BaseModel): + filterLogGroupArn: Optional[str] = None + limit: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTagsLogGroupRequestRequestTypeDef(BaseModel): + logGroupName: str + +class LiveTailSessionLogEventTypeDef(BaseModel): + logStreamName: Optional[str] = None + logGroupIdentifier: Optional[str] = None + message: Optional[str] = None + timestamp: Optional[int] = None + ingestionTime: Optional[int] = None + +class LiveTailSessionMetadataTypeDef(BaseModel): + sampled: Optional[bool] = None + +class LiveTailSessionStartTypeDef(BaseModel): + requestId: Optional[str] = None + sessionId: Optional[str] = None + logGroupIdentifiers: Optional[List[str]] = None + logStreamNames: Optional[List[str]] = None + logStreamNamePrefixes: Optional[List[str]] = None + logEventFilterPattern: Optional[str] = None + +class MetricFilterMatchRecordTypeDef(BaseModel): + eventNumber: Optional[int] = None + eventMessage: Optional[str] = None + extractedValues: Optional[Dict[str, str]] = None + +class MetricTransformationTypeDef(BaseModel): + metricName: str + metricNamespace: str + metricValue: str + defaultValue: Optional[float] = None + dimensions: Optional[Dict[str, str]] = None + unit: Optional[StandardUnitType] = None + +class PutAccountPolicyRequestRequestTypeDef(BaseModel): + policyName: str + policyDocument: str + policyType: PolicyTypeType + scope: Optional[Literal["ALL"]] = None + selectionCriteria: Optional[str] = None + +class PutDataProtectionPolicyRequestRequestTypeDef(BaseModel): + logGroupIdentifier: str + policyDocument: str + +class PutDeliveryDestinationPolicyRequestRequestTypeDef(BaseModel): + deliveryDestinationName: str + deliveryDestinationPolicy: str + +class PutDeliverySourceRequestRequestTypeDef(BaseModel): + name: str + resourceArn: str + logType: str + tags: Optional[Mapping[str, str]] = None + +class PutDestinationPolicyRequestRequestTypeDef(BaseModel): + destinationName: str + accessPolicy: str + forceUpdate: Optional[bool] = None + +class PutDestinationRequestRequestTypeDef(BaseModel): + destinationName: str + targetArn: str + roleArn: str + tags: Optional[Mapping[str, str]] = None + +class RejectedLogEventsInfoTypeDef(BaseModel): + tooNewLogEventStartIndex: Optional[int] = None + tooOldLogEventEndIndex: Optional[int] = None + expiredLogEventEndIndex: Optional[int] = None + +class PutQueryDefinitionRequestRequestTypeDef(BaseModel): + name: str + queryString: str + queryDefinitionId: Optional[str] = None + logGroupNames: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + policyName: Optional[str] = None + policyDocument: Optional[str] = None + +class PutRetentionPolicyRequestRequestTypeDef(BaseModel): + logGroupName: str + retentionInDays: int + +class PutSubscriptionFilterRequestRequestTypeDef(BaseModel): + logGroupName: str + filterName: str + filterPattern: str + destinationArn: str + roleArn: Optional[str] = None + distribution: Optional[DistributionType] = None + +class SessionStreamingExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class SessionTimeoutExceptionTypeDef(BaseModel): + message: Optional[str] = None + +class StartLiveTailRequestRequestTypeDef(BaseModel): + logGroupIdentifiers: Sequence[str] + logStreamNames: Optional[Sequence[str]] = None + logStreamNamePrefixes: Optional[Sequence[str]] = None + logEventFilterPattern: Optional[str] = None + +class StartQueryRequestRequestTypeDef(BaseModel): + startTime: int + endTime: int + queryString: str + logGroupName: Optional[str] = None + logGroupNames: Optional[Sequence[str]] = None + logGroupIdentifiers: Optional[Sequence[str]] = None + limit: Optional[int] = None + +class StopQueryRequestRequestTypeDef(BaseModel): + queryId: str + +class SuppressionPeriodTypeDef(BaseModel): + value: Optional[int] = None + suppressionUnit: Optional[SuppressionUnitType] = None + +class TagLogGroupRequestRequestTypeDef(BaseModel): + logGroupName: str + tags: Mapping[str, str] + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TestMetricFilterRequestRequestTypeDef(BaseModel): + filterPattern: str + logEventMessages: Sequence[str] + +class UntagLogGroupRequestRequestTypeDef(BaseModel): + logGroupName: str + tags: Sequence[str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateLogAnomalyDetectorRequestRequestTypeDef(BaseModel): + anomalyDetectorArn: str + enabled: bool + evaluationFrequency: Optional[EvaluationFrequencyType] = None + filterPattern: Optional[str] = None + anomalyVisibilityTime: Optional[int] = None + +class AnomalyTypeDef(BaseModel): + anomalyId: str + patternId: str + anomalyDetectorArn: str + patternString: str + firstSeen: int + lastSeen: int + description: str + active: bool + state: StateType + histogram: Dict[str, int] + logSamples: List[LogEventTypeDef] + patternTokens: List[PatternTokenTypeDef] + logGroupArnList: List[str] + patternRegex: Optional[str] = None + priority: Optional[str] = None + suppressed: Optional[bool] = None + suppressedDate: Optional[int] = None + suppressedUntil: Optional[int] = None + isPatternLevelSuppression: Optional[bool] = None + +class CreateDeliveryResponseTypeDef(BaseModel): + delivery: DeliveryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExportTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLogAnomalyDetectorResponseTypeDef(BaseModel): + anomalyDetectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteQueryDefinitionResponseTypeDef(BaseModel): + success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountPoliciesResponseTypeDef(BaseModel): + accountPolicies: List[AccountPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeliveriesResponseTypeDef(BaseModel): + deliveries: List[DeliveryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataProtectionPolicyResponseTypeDef(BaseModel): + logGroupIdentifier: str + policyDocument: str + lastUpdatedTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliveryResponseTypeDef(BaseModel): + delivery: DeliveryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLogAnomalyDetectorResponseTypeDef(BaseModel): + detectorName: str + logGroupArnList: List[str] + evaluationFrequency: EvaluationFrequencyType + filterPattern: str + anomalyDetectorStatus: AnomalyDetectorStatusType + kmsKeyId: str + creationTimeStamp: int + lastModifiedTimeStamp: int + anomalyVisibilityTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetLogRecordResponseTypeDef(BaseModel): + logRecord: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListLogAnomalyDetectorsResponseTypeDef(BaseModel): + anomalyDetectors: List[AnomalyDetectorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsLogGroupResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccountPolicyResponseTypeDef(BaseModel): + accountPolicy: AccountPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDataProtectionPolicyResponseTypeDef(BaseModel): + logGroupIdentifier: str + policyDocument: str + lastUpdatedTime: int + ResponseMetadata: ResponseMetadataTypeDef + +class PutQueryDefinitionResponseTypeDef(BaseModel): + queryDefinitionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartQueryResponseTypeDef(BaseModel): + queryId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopQueryResponseTypeDef(BaseModel): + success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeliveryDestinationTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + deliveryDestinationType: Optional[DeliveryDestinationTypeType] = None + outputFormat: Optional[OutputFormatType] = None + deliveryDestinationConfiguration: Optional[DeliveryDestinationConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class PutDeliveryDestinationRequestRequestTypeDef(BaseModel): + name: str + deliveryDestinationConfiguration: DeliveryDestinationConfigurationTypeDef + outputFormat: Optional[OutputFormatType] = None + tags: Optional[Mapping[str, str]] = None + +class DescribeDeliverySourcesResponseTypeDef(BaseModel): + deliverySources: List[DeliverySourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliverySourceResponseTypeDef(BaseModel): + deliverySource: DeliverySourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeliverySourceResponseTypeDef(BaseModel): + deliverySource: DeliverySourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeliveriesRequestDescribeDeliveriesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDeliveryDestinationsRequestDescribeDeliveryDestinationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDeliverySourcesRequestDescribeDeliverySourcesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDestinationsRequestDescribeDestinationsPaginateTypeDef(BaseModel): + DestinationNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeExportTasksRequestDescribeExportTasksPaginateTypeDef(BaseModel): + taskId: Optional[str] = None + statusCode: Optional[ExportTaskStatusCodeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLogGroupsRequestDescribeLogGroupsPaginateTypeDef(BaseModel): + accountIdentifiers: Optional[Sequence[str]] = None + logGroupNamePrefix: Optional[str] = None + logGroupNamePattern: Optional[str] = None + includeLinkedAccounts: Optional[bool] = None + logGroupClass: Optional[LogGroupClassType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLogStreamsRequestDescribeLogStreamsPaginateTypeDef(BaseModel): + logGroupName: Optional[str] = None + logGroupIdentifier: Optional[str] = None + logStreamNamePrefix: Optional[str] = None + orderBy: Optional[OrderByType] = None + descending: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMetricFiltersRequestDescribeMetricFiltersPaginateTypeDef(BaseModel): + logGroupName: Optional[str] = None + filterNamePrefix: Optional[str] = None + metricName: Optional[str] = None + metricNamespace: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeQueriesRequestDescribeQueriesPaginateTypeDef(BaseModel): + logGroupName: Optional[str] = None + status: Optional[QueryStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeResourcePoliciesRequestDescribeResourcePoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSubscriptionFiltersRequestDescribeSubscriptionFiltersPaginateTypeDef(BaseModel): + logGroupName: str + filterNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class FilterLogEventsRequestFilterLogEventsPaginateTypeDef(BaseModel): + logGroupName: Optional[str] = None + logGroupIdentifier: Optional[str] = None + logStreamNames: Optional[Sequence[str]] = None + logStreamNamePrefix: Optional[str] = None + startTime: Optional[int] = None + endTime: Optional[int] = None + filterPattern: Optional[str] = None + interleaved: Optional[bool] = None + unmask: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnomaliesRequestListAnomaliesPaginateTypeDef(BaseModel): + anomalyDetectorArn: Optional[str] = None + suppressionState: Optional[SuppressionStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLogAnomalyDetectorsRequestListLogAnomalyDetectorsPaginateTypeDef(BaseModel): + filterLogGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDestinationsResponseTypeDef(BaseModel): + destinations: List[DestinationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutDestinationResponseTypeDef(BaseModel): + destination: DestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLogGroupsResponseTypeDef(BaseModel): + logGroups: List[LogGroupTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLogStreamsResponseTypeDef(BaseModel): + logStreams: List[LogStreamTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeQueriesResponseTypeDef(BaseModel): + queries: List[QueryInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeQueryDefinitionsResponseTypeDef(BaseModel): + queryDefinitions: List[QueryDefinitionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourcePoliciesResponseTypeDef(BaseModel): + resourcePolicies: List[ResourcePolicyTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + resourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSubscriptionFiltersResponseTypeDef(BaseModel): + subscriptionFilters: List[SubscriptionFilterTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTaskTypeDef(BaseModel): + taskId: Optional[str] = None + taskName: Optional[str] = None + logGroupName: Optional[str] = None + from: Optional[int] = None + to: Optional[int] = None + destination: Optional[str] = None + destinationPrefix: Optional[str] = None + status: Optional[ExportTaskStatusTypeDef] = None + executionInfo: Optional[ExportTaskExecutionInfoTypeDef] = None + +class FilterLogEventsResponseTypeDef(BaseModel): + events: List[FilteredLogEventTypeDef] + searchedLogStreams: List[SearchedLogStreamTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliveryDestinationPolicyResponseTypeDef(BaseModel): + policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeliveryDestinationPolicyResponseTypeDef(BaseModel): + policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLogEventsResponseTypeDef(BaseModel): + events: List[OutputLogEventTypeDef] + nextForwardToken: str + nextBackwardToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLogGroupFieldsResponseTypeDef(BaseModel): + logGroupFields: List[LogGroupFieldTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryResultsResponseTypeDef(BaseModel): + results: List[List[ResultFieldTypeDef]] + statistics: QueryStatisticsTypeDef + status: QueryStatusType + encryptionKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutLogEventsRequestRequestTypeDef(BaseModel): + logGroupName: str + logStreamName: str + logEvents: Sequence[InputLogEventTypeDef] + sequenceToken: Optional[str] = None + +class LiveTailSessionUpdateTypeDef(BaseModel): + sessionMetadata: Optional[LiveTailSessionMetadataTypeDef] = None + sessionResults: Optional[List[LiveTailSessionLogEventTypeDef]] = None + +class TestMetricFilterResponseTypeDef(BaseModel): + matches: List[MetricFilterMatchRecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricFilterTypeDef(BaseModel): + filterName: Optional[str] = None + filterPattern: Optional[str] = None + metricTransformations: Optional[List[MetricTransformationTypeDef]] = None + creationTime: Optional[int] = None + logGroupName: Optional[str] = None + +class PutMetricFilterRequestRequestTypeDef(BaseModel): + logGroupName: str + filterName: str + filterPattern: str + metricTransformations: Sequence[MetricTransformationTypeDef] + +class PutLogEventsResponseTypeDef(BaseModel): + nextSequenceToken: str + rejectedLogEventsInfo: RejectedLogEventsInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnomalyRequestRequestTypeDef(BaseModel): + anomalyDetectorArn: str + anomalyId: Optional[str] = None + patternId: Optional[str] = None + suppressionType: Optional[SuppressionTypeType] = None + suppressionPeriod: Optional[SuppressionPeriodTypeDef] = None + +class ListAnomaliesResponseTypeDef(BaseModel): + anomalies: List[AnomalyTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeliveryDestinationsResponseTypeDef(BaseModel): + deliveryDestinations: List[DeliveryDestinationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliveryDestinationResponseTypeDef(BaseModel): + deliveryDestination: DeliveryDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeliveryDestinationResponseTypeDef(BaseModel): + deliveryDestination: DeliveryDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExportTasksResponseTypeDef(BaseModel): + exportTasks: List[ExportTaskTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartLiveTailResponseStreamTypeDef(BaseModel): + sessionStart: Optional[LiveTailSessionStartTypeDef] = None + sessionUpdate: Optional[LiveTailSessionUpdateTypeDef] = None + SessionTimeoutException: Optional[SessionTimeoutExceptionTypeDef] = None + SessionStreamingException: Optional[SessionStreamingExceptionTypeDef] = None + +class DescribeMetricFiltersResponseTypeDef(BaseModel): + metricFilters: List[MetricFilterTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartLiveTailResponseTypeDef(BaseModel): + responseStream: "EventStream[StartLiveTailResponseStreamTypeDef]" + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/logs_constants.py b/aws_resource_validator/pydantic_models/logs_constants.py new file mode 100644 index 00000000..87ef1965 --- /dev/null +++ b/aws_resource_validator/pydantic_models/logs_constants.py @@ -0,0 +1,494 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnomalyDetectorStatusType = Literal["ANALYZING", "DELETED", "FAILED", "INITIALIZING", "PAUSED", "TRAINING"] +DataProtectionStatusType = Literal["ACTIVATED", "ARCHIVED", "DELETED", "DISABLED"] +DeliveryDestinationTypeType = Literal["CWL", "FH", "S3"] +DescribeDeliveriesPaginatorName = Literal["describe_deliveries"] +DescribeDeliveryDestinationsPaginatorName = Literal["describe_delivery_destinations"] +DescribeDeliverySourcesPaginatorName = Literal["describe_delivery_sources"] +DescribeDestinationsPaginatorName = Literal["describe_destinations"] +DescribeExportTasksPaginatorName = Literal["describe_export_tasks"] +DescribeLogGroupsPaginatorName = Literal["describe_log_groups"] +DescribeLogStreamsPaginatorName = Literal["describe_log_streams"] +DescribeMetricFiltersPaginatorName = Literal["describe_metric_filters"] +DescribeQueriesPaginatorName = Literal["describe_queries"] +DescribeResourcePoliciesPaginatorName = Literal["describe_resource_policies"] +DescribeSubscriptionFiltersPaginatorName = Literal["describe_subscription_filters"] +DistributionType = Literal["ByLogStream", "Random"] +EvaluationFrequencyType = Literal["FIFTEEN_MIN", "FIVE_MIN", "ONE_HOUR", "ONE_MIN", "TEN_MIN", "THIRTY_MIN"] +ExportTaskStatusCodeType = Literal["CANCELLED", "COMPLETED", "FAILED", "PENDING", "PENDING_CANCEL", "RUNNING"] +FilterLogEventsPaginatorName = Literal["filter_log_events"] +InheritedPropertyType = Literal["ACCOUNT_DATA_PROTECTION"] +ListAnomaliesPaginatorName = Literal["list_anomalies"] +ListLogAnomalyDetectorsPaginatorName = Literal["list_log_anomaly_detectors"] +LogGroupClassType = Literal["INFREQUENT_ACCESS", "STANDARD"] +OrderByType = Literal["LastEventTime", "LogStreamName"] +OutputFormatType = Literal["json", "parquet", "plain", "raw", "w3c"] +PolicyTypeType = Literal["DATA_PROTECTION_POLICY", "SUBSCRIPTION_FILTER_POLICY"] +QueryStatusType = Literal["Cancelled", "Complete", "Failed", "Running", "Scheduled", "Timeout", "Unknown"] +ScopeType = Literal["ALL"] +StandardUnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +StateType = Literal["Active", "Baseline", "Suppressed"] +SuppressionStateType = Literal["SUPPRESSED", "UNSUPPRESSED"] +SuppressionTypeType = Literal["INFINITE", "LIMITED"] +SuppressionUnitType = Literal["HOURS", "MINUTES", "SECONDS"] +CloudWatchLogsServiceName = Literal["logs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_deliveries", + "describe_delivery_destinations", + "describe_delivery_sources", + "describe_destinations", + "describe_export_tasks", + "describe_log_groups", + "describe_log_streams", + "describe_metric_filters", + "describe_queries", + "describe_resource_policies", + "describe_subscription_filters", + "filter_log_events", + "list_anomalies", + "list_log_anomaly_detectors",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/lookoutequipment_classes.py b/aws_resource_validator/pydantic_models/lookoutequipment_classes.py new file mode 100644 index 00000000..42ae80b6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lookoutequipment_classes.py @@ -0,0 +1,850 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lookoutequipment_constants import * + +class CategoricalValuesTypeDef(BaseModel): + Status: StatisticalIssueStatusType + NumberOfCategory: Optional[int] = None + +class CountPercentTypeDef(BaseModel): + Count: int + Percentage: float + +class DatasetSchemaTypeDef(BaseModel): + InlineDataSchema: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DataPreProcessingConfigurationTypeDef(BaseModel): + TargetSamplingRate: Optional[TargetSamplingRateType] = None + +class DuplicateTimestampsTypeDef(BaseModel): + TotalNumberOfDuplicateTimestamps: int + +class InvalidSensorDataTypeDef(BaseModel): + AffectedSensorCount: int + TotalNumberOfInvalidValues: int + +class MissingSensorDataTypeDef(BaseModel): + AffectedSensorCount: int + TotalNumberOfMissingValues: int + +class UnsupportedTimestampsTypeDef(BaseModel): + TotalNumberOfUnsupportedTimestamps: int + +class DatasetSummaryTypeDef(BaseModel): + DatasetName: Optional[str] = None + DatasetArn: Optional[str] = None + Status: Optional[DatasetStatusType] = None + CreatedAt: Optional[datetime] = None + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + DatasetName: str + +class DeleteInferenceSchedulerRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + +class DeleteLabelGroupRequestRequestTypeDef(BaseModel): + LabelGroupName: str + +class DeleteLabelRequestRequestTypeDef(BaseModel): + LabelGroupName: str + LabelId: str + +class DeleteModelRequestRequestTypeDef(BaseModel): + ModelName: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteRetrainingSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + +class DescribeDataIngestionJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + DatasetName: str + +class DescribeInferenceSchedulerRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + +class DescribeLabelGroupRequestRequestTypeDef(BaseModel): + LabelGroupName: str + +class DescribeLabelRequestRequestTypeDef(BaseModel): + LabelGroupName: str + LabelId: str + +class DescribeModelRequestRequestTypeDef(BaseModel): + ModelName: str + +class DescribeModelVersionRequestRequestTypeDef(BaseModel): + ModelName: str + ModelVersion: int + +class S3ObjectTypeDef(BaseModel): + Bucket: str + Key: str + +class DescribeResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DescribeRetrainingSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + +class InferenceEventSummaryTypeDef(BaseModel): + InferenceSchedulerArn: Optional[str] = None + InferenceSchedulerName: Optional[str] = None + EventStartTime: Optional[datetime] = None + EventEndTime: Optional[datetime] = None + Diagnostics: Optional[str] = None + EventDurationInSeconds: Optional[int] = None + +class InferenceInputNameConfigurationTypeDef(BaseModel): + TimestampFormat: Optional[str] = None + ComponentTimestampDelimiter: Optional[str] = None + +class InferenceS3InputConfigurationTypeDef(BaseModel): + Bucket: str + Prefix: Optional[str] = None + +class InferenceS3OutputConfigurationTypeDef(BaseModel): + Bucket: str + Prefix: Optional[str] = None + +class InferenceSchedulerSummaryTypeDef(BaseModel): + ModelName: Optional[str] = None + ModelArn: Optional[str] = None + InferenceSchedulerName: Optional[str] = None + InferenceSchedulerArn: Optional[str] = None + Status: Optional[InferenceSchedulerStatusType] = None + DataDelayOffsetInMinutes: Optional[int] = None + DataUploadFrequency: Optional[DataUploadFrequencyType] = None + LatestInferenceResult: Optional[LatestInferenceResultType] = None + +class IngestionS3InputConfigurationTypeDef(BaseModel): + Bucket: str + Prefix: Optional[str] = None + KeyPattern: Optional[str] = None + +class MissingCompleteSensorDataTypeDef(BaseModel): + AffectedSensorCount: int + +class SensorsWithShortDateRangeTypeDef(BaseModel): + AffectedSensorCount: int + +class LabelGroupSummaryTypeDef(BaseModel): + LabelGroupName: Optional[str] = None + LabelGroupArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class LabelSummaryTypeDef(BaseModel): + LabelGroupName: Optional[str] = None + LabelId: Optional[str] = None + LabelGroupArn: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Rating: Optional[LabelRatingType] = None + FaultCode: Optional[str] = None + Equipment: Optional[str] = None + CreatedAt: Optional[datetime] = None + +class LabelsS3InputConfigurationTypeDef(BaseModel): + Bucket: str + Prefix: Optional[str] = None + +class LargeTimestampGapsTypeDef(BaseModel): + Status: StatisticalIssueStatusType + NumberOfLargeTimestampGaps: Optional[int] = None + MaxTimestampGapInDays: Optional[int] = None + +class ListDataIngestionJobsRequestRequestTypeDef(BaseModel): + DatasetName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[IngestionJobStatusType] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DatasetNameBeginsWith: Optional[str] = None + +class ListInferenceSchedulersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + InferenceSchedulerNameBeginsWith: Optional[str] = None + ModelName: Optional[str] = None + Status: Optional[InferenceSchedulerStatusType] = None + +class ListLabelGroupsRequestRequestTypeDef(BaseModel): + LabelGroupNameBeginsWith: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ModelVersionSummaryTypeDef(BaseModel): + ModelName: Optional[str] = None + ModelArn: Optional[str] = None + ModelVersion: Optional[int] = None + ModelVersionArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Status: Optional[ModelVersionStatusType] = None + SourceType: Optional[ModelVersionSourceTypeType] = None + ModelQuality: Optional[ModelQualityType] = None + +class ListModelsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[ModelStatusType] = None + ModelNameBeginsWith: Optional[str] = None + DatasetNameBeginsWith: Optional[str] = None + +class ListRetrainingSchedulersRequestRequestTypeDef(BaseModel): + ModelNameBeginsWith: Optional[str] = None + Status: Optional[RetrainingSchedulerStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RetrainingSchedulerSummaryTypeDef(BaseModel): + ModelName: Optional[str] = None + ModelArn: Optional[str] = None + Status: Optional[RetrainingSchedulerStatusType] = None + RetrainingStartDate: Optional[datetime] = None + RetrainingFrequency: Optional[str] = None + LookbackWindow: Optional[str] = None + +class ListSensorStatisticsRequestRequestTypeDef(BaseModel): + DatasetName: str + IngestionJobId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ModelDiagnosticsS3OutputConfigurationTypeDef(BaseModel): + Bucket: str + Prefix: Optional[str] = None + +class MonotonicValuesTypeDef(BaseModel): + Status: StatisticalIssueStatusType + Monotonicity: Optional[MonotonicityType] = None + +class MultipleOperatingModesTypeDef(BaseModel): + Status: StatisticalIssueStatusType + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + ResourcePolicy: str + ClientToken: str + PolicyRevisionId: Optional[str] = None + +class StartInferenceSchedulerRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + +class StartRetrainingSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + +class StopInferenceSchedulerRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + +class StopRetrainingSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateActiveModelVersionRequestRequestTypeDef(BaseModel): + ModelName: str + ModelVersion: int + +class UpdateLabelGroupRequestRequestTypeDef(BaseModel): + LabelGroupName: str + FaultCodes: Optional[Sequence[str]] = None + +class CreateDatasetRequestRequestTypeDef(BaseModel): + DatasetName: str + ClientToken: str + DatasetSchema: Optional[DatasetSchemaTypeDef] = None + ServerSideKmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateLabelGroupRequestRequestTypeDef(BaseModel): + LabelGroupName: str + ClientToken: str + FaultCodes: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ImportDatasetRequestRequestTypeDef(BaseModel): + SourceDatasetArn: str + ClientToken: str + DatasetName: Optional[str] = None + ServerSideKmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateDatasetResponseTypeDef(BaseModel): + DatasetName: str + DatasetArn: str + Status: DatasetStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInferenceSchedulerResponseTypeDef(BaseModel): + InferenceSchedulerArn: str + InferenceSchedulerName: str + Status: InferenceSchedulerStatusType + ModelQuality: ModelQualityType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLabelGroupResponseTypeDef(BaseModel): + LabelGroupName: str + LabelGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLabelResponseTypeDef(BaseModel): + LabelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelResponseTypeDef(BaseModel): + ModelArn: str + Status: ModelStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRetrainingSchedulerResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + Status: RetrainingSchedulerStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLabelGroupResponseTypeDef(BaseModel): + LabelGroupName: str + LabelGroupArn: str + FaultCodes: List[str] + CreatedAt: datetime + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLabelResponseTypeDef(BaseModel): + LabelGroupName: str + LabelGroupArn: str + LabelId: str + StartTime: datetime + EndTime: datetime + Rating: LabelRatingType + FaultCode: str + Notes: str + Equipment: str + CreatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourcePolicyResponseTypeDef(BaseModel): + PolicyRevisionId: str + ResourcePolicy: str + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRetrainingSchedulerResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + RetrainingStartDate: datetime + RetrainingFrequency: str + LookbackWindow: str + Status: RetrainingSchedulerStatusType + PromoteMode: ModelPromoteModeType + CreatedAt: datetime + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ImportDatasetResponseTypeDef(BaseModel): + DatasetName: str + DatasetArn: str + Status: DatasetStatusType + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportModelVersionResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + ModelVersionArn: str + ModelVersion: int + Status: ModelVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + ResourceArn: str + PolicyRevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataIngestionJobResponseTypeDef(BaseModel): + JobId: str + Status: IngestionJobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartInferenceSchedulerResponseTypeDef(BaseModel): + ModelArn: str + ModelName: str + InferenceSchedulerName: str + InferenceSchedulerArn: str + Status: InferenceSchedulerStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartRetrainingSchedulerResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + Status: RetrainingSchedulerStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopInferenceSchedulerResponseTypeDef(BaseModel): + ModelArn: str + ModelName: str + InferenceSchedulerName: str + InferenceSchedulerArn: str + Status: InferenceSchedulerStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopRetrainingSchedulerResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + Status: RetrainingSchedulerStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateActiveModelVersionResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + CurrentActiveVersion: int + PreviousActiveVersion: int + CurrentActiveVersionArn: str + PreviousActiveVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLabelRequestRequestTypeDef(BaseModel): + LabelGroupName: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Rating: LabelRatingType + ClientToken: str + FaultCode: Optional[str] = None + Notes: Optional[str] = None + Equipment: Optional[str] = None + +class CreateRetrainingSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + RetrainingFrequency: str + LookbackWindow: str + ClientToken: str + RetrainingStartDate: Optional[TimestampTypeDef] = None + PromoteMode: Optional[ModelPromoteModeType] = None + +class ListInferenceEventsRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + IntervalStartTime: TimestampTypeDef + IntervalEndTime: TimestampTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInferenceExecutionsRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + DataStartTimeAfter: Optional[TimestampTypeDef] = None + DataEndTimeBefore: Optional[TimestampTypeDef] = None + Status: Optional[InferenceExecutionStatusType] = None + +class ListLabelsRequestRequestTypeDef(BaseModel): + LabelGroupName: str + IntervalStartTime: Optional[TimestampTypeDef] = None + IntervalEndTime: Optional[TimestampTypeDef] = None + FaultCode: Optional[str] = None + Equipment: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListModelVersionsRequestRequestTypeDef(BaseModel): + ModelName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[ModelVersionStatusType] = None + SourceType: Optional[ModelVersionSourceTypeType] = None + CreatedAtEndTime: Optional[TimestampTypeDef] = None + CreatedAtStartTime: Optional[TimestampTypeDef] = None + MaxModelVersion: Optional[int] = None + MinModelVersion: Optional[int] = None + +class UpdateRetrainingSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + RetrainingStartDate: Optional[TimestampTypeDef] = None + RetrainingFrequency: Optional[str] = None + LookbackWindow: Optional[str] = None + PromoteMode: Optional[ModelPromoteModeType] = None + +class ListDatasetsResponseTypeDef(BaseModel): + NextToken: str + DatasetSummaries: List[DatasetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IngestedFilesSummaryTypeDef(BaseModel): + TotalNumberOfFiles: int + IngestedNumberOfFiles: int + DiscardedFiles: Optional[List[S3ObjectTypeDef]] = None + +class ListInferenceEventsResponseTypeDef(BaseModel): + NextToken: str + InferenceEventSummaries: List[InferenceEventSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InferenceInputConfigurationTypeDef(BaseModel): + S3InputConfiguration: Optional[InferenceS3InputConfigurationTypeDef] = None + InputTimeZoneOffset: Optional[str] = None + InferenceInputNameConfiguration: Optional[InferenceInputNameConfigurationTypeDef] = None + +class InferenceOutputConfigurationTypeDef(BaseModel): + S3OutputConfiguration: InferenceS3OutputConfigurationTypeDef + KmsKeyId: Optional[str] = None + +class ListInferenceSchedulersResponseTypeDef(BaseModel): + NextToken: str + InferenceSchedulerSummaries: List[InferenceSchedulerSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IngestionInputConfigurationTypeDef(BaseModel): + S3InputConfiguration: IngestionS3InputConfigurationTypeDef + +class InsufficientSensorDataTypeDef(BaseModel): + MissingCompleteSensorData: MissingCompleteSensorDataTypeDef + SensorsWithShortDateRange: SensorsWithShortDateRangeTypeDef + +class ListLabelGroupsResponseTypeDef(BaseModel): + NextToken: str + LabelGroupSummaries: List[LabelGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListLabelsResponseTypeDef(BaseModel): + NextToken: str + LabelSummaries: List[LabelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LabelsInputConfigurationTypeDef(BaseModel): + S3InputConfiguration: Optional[LabelsS3InputConfigurationTypeDef] = None + LabelGroupName: Optional[str] = None + +class ListModelVersionsResponseTypeDef(BaseModel): + NextToken: str + ModelVersionSummaries: List[ModelVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRetrainingSchedulersResponseTypeDef(BaseModel): + RetrainingSchedulerSummaries: List[RetrainingSchedulerSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModelDiagnosticsOutputConfigurationTypeDef(BaseModel): + S3OutputConfiguration: ModelDiagnosticsS3OutputConfigurationTypeDef + KmsKeyId: Optional[str] = None + +class SensorStatisticsSummaryTypeDef(BaseModel): + ComponentName: Optional[str] = None + SensorName: Optional[str] = None + DataExists: Optional[bool] = None + MissingValues: Optional[CountPercentTypeDef] = None + InvalidValues: Optional[CountPercentTypeDef] = None + InvalidDateEntries: Optional[CountPercentTypeDef] = None + DuplicateTimestamps: Optional[CountPercentTypeDef] = None + CategoricalValues: Optional[CategoricalValuesTypeDef] = None + MultipleOperatingModes: Optional[MultipleOperatingModesTypeDef] = None + LargeTimestampGaps: Optional[LargeTimestampGapsTypeDef] = None + MonotonicValues: Optional[MonotonicValuesTypeDef] = None + DataStartTime: Optional[datetime] = None + DataEndTime: Optional[datetime] = None + +class CreateInferenceSchedulerRequestRequestTypeDef(BaseModel): + ModelName: str + InferenceSchedulerName: str + DataUploadFrequency: DataUploadFrequencyType + DataInputConfiguration: InferenceInputConfigurationTypeDef + DataOutputConfiguration: InferenceOutputConfigurationTypeDef + RoleArn: str + ClientToken: str + DataDelayOffsetInMinutes: Optional[int] = None + ServerSideKmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeInferenceSchedulerResponseTypeDef(BaseModel): + ModelArn: str + ModelName: str + InferenceSchedulerName: str + InferenceSchedulerArn: str + Status: InferenceSchedulerStatusType + DataDelayOffsetInMinutes: int + DataUploadFrequency: DataUploadFrequencyType + CreatedAt: datetime + UpdatedAt: datetime + DataInputConfiguration: InferenceInputConfigurationTypeDef + DataOutputConfiguration: InferenceOutputConfigurationTypeDef + RoleArn: str + ServerSideKmsKeyId: str + LatestInferenceResult: LatestInferenceResultType + ResponseMetadata: ResponseMetadataTypeDef + +class InferenceExecutionSummaryTypeDef(BaseModel): + ModelName: Optional[str] = None + ModelArn: Optional[str] = None + InferenceSchedulerName: Optional[str] = None + InferenceSchedulerArn: Optional[str] = None + ScheduledStartTime: Optional[datetime] = None + DataStartTime: Optional[datetime] = None + DataEndTime: Optional[datetime] = None + DataInputConfiguration: Optional[InferenceInputConfigurationTypeDef] = None + DataOutputConfiguration: Optional[InferenceOutputConfigurationTypeDef] = None + CustomerResultObject: Optional[S3ObjectTypeDef] = None + Status: Optional[InferenceExecutionStatusType] = None + FailedReason: Optional[str] = None + ModelVersion: Optional[int] = None + ModelVersionArn: Optional[str] = None + +class UpdateInferenceSchedulerRequestRequestTypeDef(BaseModel): + InferenceSchedulerName: str + DataDelayOffsetInMinutes: Optional[int] = None + DataUploadFrequency: Optional[DataUploadFrequencyType] = None + DataInputConfiguration: Optional[InferenceInputConfigurationTypeDef] = None + DataOutputConfiguration: Optional[InferenceOutputConfigurationTypeDef] = None + RoleArn: Optional[str] = None + +class DataIngestionJobSummaryTypeDef(BaseModel): + JobId: Optional[str] = None + DatasetName: Optional[str] = None + DatasetArn: Optional[str] = None + IngestionInputConfiguration: Optional[IngestionInputConfigurationTypeDef] = None + Status: Optional[IngestionJobStatusType] = None + +class StartDataIngestionJobRequestRequestTypeDef(BaseModel): + DatasetName: str + IngestionInputConfiguration: IngestionInputConfigurationTypeDef + RoleArn: str + ClientToken: str + +class DataQualitySummaryTypeDef(BaseModel): + InsufficientSensorData: InsufficientSensorDataTypeDef + MissingSensorData: MissingSensorDataTypeDef + InvalidSensorData: InvalidSensorDataTypeDef + UnsupportedTimestamps: UnsupportedTimestampsTypeDef + DuplicateTimestamps: DuplicateTimestampsTypeDef + +class ImportModelVersionRequestRequestTypeDef(BaseModel): + SourceModelVersionArn: str + DatasetName: str + ClientToken: str + ModelName: Optional[str] = None + LabelsInputConfiguration: Optional[LabelsInputConfigurationTypeDef] = None + RoleArn: Optional[str] = None + ServerSideKmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + InferenceDataImportStrategy: Optional[InferenceDataImportStrategyType] = None + +class CreateModelRequestRequestTypeDef(BaseModel): + ModelName: str + DatasetName: str + ClientToken: str + DatasetSchema: Optional[DatasetSchemaTypeDef] = None + LabelsInputConfiguration: Optional[LabelsInputConfigurationTypeDef] = None + TrainingDataStartTime: Optional[TimestampTypeDef] = None + TrainingDataEndTime: Optional[TimestampTypeDef] = None + EvaluationDataStartTime: Optional[TimestampTypeDef] = None + EvaluationDataEndTime: Optional[TimestampTypeDef] = None + RoleArn: Optional[str] = None + DataPreProcessingConfiguration: Optional[DataPreProcessingConfigurationTypeDef] = None + ServerSideKmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + OffCondition: Optional[str] = None + ModelDiagnosticsOutputConfiguration: Optional[ ModelDiagnosticsOutputConfigurationTypeDef ] = None + +class DescribeModelResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + DatasetName: str + DatasetArn: str + Schema: str + LabelsInputConfiguration: LabelsInputConfigurationTypeDef + TrainingDataStartTime: datetime + TrainingDataEndTime: datetime + EvaluationDataStartTime: datetime + EvaluationDataEndTime: datetime + RoleArn: str + DataPreProcessingConfiguration: DataPreProcessingConfigurationTypeDef + Status: ModelStatusType + TrainingExecutionStartTime: datetime + TrainingExecutionEndTime: datetime + FailedReason: str + ModelMetrics: str + LastUpdatedTime: datetime + CreatedAt: datetime + ServerSideKmsKeyId: str + OffCondition: str + SourceModelVersionArn: str + ImportJobStartTime: datetime + ImportJobEndTime: datetime + ActiveModelVersion: int + ActiveModelVersionArn: str + ModelVersionActivatedAt: datetime + PreviousActiveModelVersion: int + PreviousActiveModelVersionArn: str + PreviousModelVersionActivatedAt: datetime + PriorModelMetrics: str + LatestScheduledRetrainingFailedReason: str + LatestScheduledRetrainingStatus: ModelVersionStatusType + LatestScheduledRetrainingModelVersion: int + LatestScheduledRetrainingStartTime: datetime + LatestScheduledRetrainingAvailableDataInDays: int + NextScheduledRetrainingStartDate: datetime + AccumulatedInferenceDataStartTime: datetime + AccumulatedInferenceDataEndTime: datetime + RetrainingSchedulerStatus: RetrainingSchedulerStatusType + ModelDiagnosticsOutputConfiguration: ModelDiagnosticsOutputConfigurationTypeDef + ModelQuality: ModelQualityType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelVersionResponseTypeDef(BaseModel): + ModelName: str + ModelArn: str + ModelVersion: int + ModelVersionArn: str + Status: ModelVersionStatusType + SourceType: ModelVersionSourceTypeType + DatasetName: str + DatasetArn: str + Schema: str + LabelsInputConfiguration: LabelsInputConfigurationTypeDef + TrainingDataStartTime: datetime + TrainingDataEndTime: datetime + EvaluationDataStartTime: datetime + EvaluationDataEndTime: datetime + RoleArn: str + DataPreProcessingConfiguration: DataPreProcessingConfigurationTypeDef + TrainingExecutionStartTime: datetime + TrainingExecutionEndTime: datetime + FailedReason: str + ModelMetrics: str + LastUpdatedTime: datetime + CreatedAt: datetime + ServerSideKmsKeyId: str + OffCondition: str + SourceModelVersionArn: str + ImportJobStartTime: datetime + ImportJobEndTime: datetime + ImportedDataSizeInBytes: int + PriorModelMetrics: str + RetrainingAvailableDataInDays: int + AutoPromotionResult: AutoPromotionResultType + AutoPromotionResultReason: str + ModelDiagnosticsOutputConfiguration: ModelDiagnosticsOutputConfigurationTypeDef + ModelDiagnosticsResultsObject: S3ObjectTypeDef + ModelQuality: ModelQualityType + ResponseMetadata: ResponseMetadataTypeDef + +class ModelSummaryTypeDef(BaseModel): + ModelName: Optional[str] = None + ModelArn: Optional[str] = None + DatasetName: Optional[str] = None + DatasetArn: Optional[str] = None + Status: Optional[ModelStatusType] = None + CreatedAt: Optional[datetime] = None + ActiveModelVersion: Optional[int] = None + ActiveModelVersionArn: Optional[str] = None + LatestScheduledRetrainingStatus: Optional[ModelVersionStatusType] = None + LatestScheduledRetrainingModelVersion: Optional[int] = None + LatestScheduledRetrainingStartTime: Optional[datetime] = None + NextScheduledRetrainingStartDate: Optional[datetime] = None + RetrainingSchedulerStatus: Optional[RetrainingSchedulerStatusType] = None + ModelDiagnosticsOutputConfiguration: Optional[ ModelDiagnosticsOutputConfigurationTypeDef ] = None + ModelQuality: Optional[ModelQualityType] = None + +class UpdateModelRequestRequestTypeDef(BaseModel): + ModelName: str + LabelsInputConfiguration: Optional[LabelsInputConfigurationTypeDef] = None + RoleArn: Optional[str] = None + ModelDiagnosticsOutputConfiguration: Optional[ ModelDiagnosticsOutputConfigurationTypeDef ] = None + +class ListSensorStatisticsResponseTypeDef(BaseModel): + SensorStatisticsSummaries: List[SensorStatisticsSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListInferenceExecutionsResponseTypeDef(BaseModel): + NextToken: str + InferenceExecutionSummaries: List[InferenceExecutionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataIngestionJobsResponseTypeDef(BaseModel): + NextToken: str + DataIngestionJobSummaries: List[DataIngestionJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataIngestionJobResponseTypeDef(BaseModel): + JobId: str + DatasetArn: str + IngestionInputConfiguration: IngestionInputConfigurationTypeDef + RoleArn: str + CreatedAt: datetime + Status: IngestionJobStatusType + FailedReason: str + DataQualitySummary: DataQualitySummaryTypeDef + IngestedFilesSummary: IngestedFilesSummaryTypeDef + StatusDetail: str + IngestedDataSize: int + DataStartTime: datetime + DataEndTime: datetime + SourceDatasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetResponseTypeDef(BaseModel): + DatasetName: str + DatasetArn: str + CreatedAt: datetime + LastUpdatedAt: datetime + Status: DatasetStatusType + Schema: str + ServerSideKmsKeyId: str + IngestionInputConfiguration: IngestionInputConfigurationTypeDef + DataQualitySummary: DataQualitySummaryTypeDef + IngestedFilesSummary: IngestedFilesSummaryTypeDef + RoleArn: str + DataStartTime: datetime + DataEndTime: datetime + SourceDatasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListModelsResponseTypeDef(BaseModel): + NextToken: str + ModelSummaries: List[ModelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lookoutequipment_constants.py b/aws_resource_validator/pydantic_models/lookoutequipment_constants.py new file mode 100644 index 00000000..4038b7fc --- /dev/null +++ b/aws_resource_validator/pydantic_models/lookoutequipment_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AutoPromotionResultType = Literal["MODEL_NOT_PROMOTED", + "MODEL_PROMOTED", + "RETRAINING_CANCELLED", + "RETRAINING_CUSTOMER_ERROR", + "RETRAINING_INTERNAL_ERROR",] +DataUploadFrequencyType = Literal["PT10M", "PT15M", "PT1H", "PT30M", "PT5M"] +DatasetStatusType = Literal["ACTIVE", "CREATED", "IMPORT_IN_PROGRESS", "INGESTION_IN_PROGRESS"] +InferenceDataImportStrategyType = Literal["ADD_WHEN_EMPTY", "NO_IMPORT", "OVERWRITE"] +InferenceExecutionStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCESS"] +InferenceSchedulerStatusType = Literal["PENDING", "RUNNING", "STOPPED", "STOPPING"] +IngestionJobStatusType = Literal["FAILED", "IMPORT_IN_PROGRESS", "IN_PROGRESS", "SUCCESS"] +LabelRatingType = Literal["ANOMALY", "NEUTRAL", "NO_ANOMALY"] +LatestInferenceResultType = Literal["ANOMALOUS", "NORMAL"] +ModelPromoteModeType = Literal["MANAGED", "MANUAL"] +ModelQualityType = Literal["CANNOT_DETERMINE_QUALITY", "POOR_QUALITY_DETECTED", "QUALITY_THRESHOLD_MET"] +ModelStatusType = Literal["FAILED", "IMPORT_IN_PROGRESS", "IN_PROGRESS", "SUCCESS"] +ModelVersionSourceTypeType = Literal["IMPORT", "RETRAINING", "TRAINING"] +ModelVersionStatusType = Literal["CANCELED", "FAILED", "IMPORT_IN_PROGRESS", "IN_PROGRESS", "SUCCESS"] +MonotonicityType = Literal["DECREASING", "INCREASING", "STATIC"] +RetrainingSchedulerStatusType = Literal["PENDING", "RUNNING", "STOPPED", "STOPPING"] +StatisticalIssueStatusType = Literal["NO_ISSUE_DETECTED", "POTENTIAL_ISSUE_DETECTED"] +TargetSamplingRateType = Literal["PT10M", "PT10S", "PT15M", "PT15S", "PT1H", "PT1M", "PT1S", "PT30M", "PT30S", "PT5M", "PT5S"] +LookoutEquipmentServiceName = Literal["lookoutequipment"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-2", "eu-west-1", "us-east-1"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/lookoutmetrics_classes.py b/aws_resource_validator/pydantic_models/lookoutmetrics_classes.py new file mode 100644 index 00000000..3c846f82 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lookoutmetrics_classes.py @@ -0,0 +1,597 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lookoutmetrics_constants import * + +class LambdaConfigurationTypeDef(BaseModel): + RoleArn: str + LambdaArn: str + +class SNSConfigurationTypeDef(BaseModel): + RoleArn: str + SnsTopicArn: str + SnsFormat: Optional[SnsFormatType] = None + +class ActivateAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + +class DimensionFilterTypeDef(BaseModel): + DimensionName: Optional[str] = None + DimensionValueList: Optional[Sequence[str]] = None + +class AlertSummaryTypeDef(BaseModel): + AlertArn: Optional[str] = None + AnomalyDetectorArn: Optional[str] = None + AlertName: Optional[str] = None + AlertSensitivityThreshold: Optional[int] = None + AlertType: Optional[AlertTypeType] = None + AlertStatus: Optional[AlertStatusType] = None + LastModificationTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class AnomalyDetectorConfigSummaryTypeDef(BaseModel): + AnomalyDetectorFrequency: Optional[FrequencyType] = None + +class AnomalyDetectorConfigTypeDef(BaseModel): + AnomalyDetectorFrequency: Optional[FrequencyType] = None + +class AnomalyDetectorSummaryTypeDef(BaseModel): + AnomalyDetectorArn: Optional[str] = None + AnomalyDetectorName: Optional[str] = None + AnomalyDetectorDescription: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + Status: Optional[AnomalyDetectorStatusType] = None + Tags: Optional[Dict[str, str]] = None + +class ItemizedMetricStatsTypeDef(BaseModel): + MetricName: Optional[str] = None + OccurrenceCount: Optional[int] = None + +class AnomalyGroupSummaryTypeDef(BaseModel): + StartTime: Optional[str] = None + EndTime: Optional[str] = None + AnomalyGroupId: Optional[str] = None + AnomalyGroupScore: Optional[float] = None + PrimaryMetricName: Optional[str] = None + +class AnomalyGroupTimeSeriesFeedbackTypeDef(BaseModel): + AnomalyGroupId: str + TimeSeriesId: str + IsAnomaly: bool + +class AnomalyGroupTimeSeriesTypeDef(BaseModel): + AnomalyGroupId: str + TimeSeriesId: Optional[str] = None + +class AppFlowConfigTypeDef(BaseModel): + RoleArn: Optional[str] = None + FlowName: Optional[str] = None + +class BackTestConfigurationTypeDef(BaseModel): + RunBackTestMode: bool + +class AttributeValueTypeDef(BaseModel): + S: Optional[str] = None + N: Optional[str] = None + B: Optional[str] = None + SS: Optional[List[str]] = None + NS: Optional[List[str]] = None + BS: Optional[List[str]] = None + +class AutoDetectionS3SourceConfigTypeDef(BaseModel): + TemplatedPathList: Optional[Sequence[str]] = None + HistoricalDataPathList: Optional[Sequence[str]] = None + +class BackTestAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class MetricTypeDef(BaseModel): + MetricName: str + AggregationFunction: AggregationFunctionType + Namespace: Optional[str] = None + +class TimestampColumnTypeDef(BaseModel): + ColumnName: Optional[str] = None + ColumnFormat: Optional[str] = None + +class CsvFormatDescriptorTypeDef(BaseModel): + FileCompression: Optional[CSVFileCompressionType] = None + Charset: Optional[str] = None + ContainsHeader: Optional[bool] = None + Delimiter: Optional[str] = None + HeaderList: Optional[Sequence[str]] = None + QuoteSymbol: Optional[str] = None + +class DataQualityMetricTypeDef(BaseModel): + MetricType: Optional[DataQualityMetricTypeType] = None + MetricDescription: Optional[str] = None + RelatedColumnName: Optional[str] = None + MetricValue: Optional[float] = None + +class DeactivateAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + +class DeleteAlertRequestRequestTypeDef(BaseModel): + AlertArn: str + +class DeleteAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + +class DescribeAlertRequestRequestTypeDef(BaseModel): + AlertArn: str + +class DescribeAnomalyDetectionExecutionsRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + Timestamp: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ExecutionStatusTypeDef(BaseModel): + Timestamp: Optional[str] = None + Status: Optional[AnomalyDetectionTaskStatusType] = None + FailureReason: Optional[str] = None + +class DescribeAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + +class DescribeMetricSetRequestRequestTypeDef(BaseModel): + MetricSetArn: str + +class DimensionValueContributionTypeDef(BaseModel): + DimensionValue: Optional[str] = None + ContributionScore: Optional[float] = None + +class DimensionNameValueTypeDef(BaseModel): + DimensionName: str + DimensionValue: str + +class JsonFormatDescriptorTypeDef(BaseModel): + FileCompression: Optional[JsonFileCompressionType] = None + Charset: Optional[str] = None + +class FilterTypeDef(BaseModel): + DimensionValue: Optional[str] = None + FilterOperation: Optional[Literal["EQUALS"]] = None + +class GetAnomalyGroupRequestRequestTypeDef(BaseModel): + AnomalyGroupId: str + AnomalyDetectorArn: str + +class GetDataQualityMetricsRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + MetricSetArn: Optional[str] = None + +class TimeSeriesFeedbackTypeDef(BaseModel): + TimeSeriesId: Optional[str] = None + IsAnomaly: Optional[bool] = None + +class InterMetricImpactDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + AnomalyGroupId: Optional[str] = None + RelationshipType: Optional[RelationshipTypeType] = None + ContributionPercentage: Optional[float] = None + +class ListAlertsRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAnomalyDetectorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAnomalyGroupRelatedMetricsRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + AnomalyGroupId: str + RelationshipTypeFilter: Optional[RelationshipTypeType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAnomalyGroupSummariesRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + SensitivityThreshold: int + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAnomalyGroupTimeSeriesRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + AnomalyGroupId: str + MetricName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMetricSetsRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MetricSetSummaryTypeDef(BaseModel): + MetricSetArn: Optional[str] = None + AnomalyDetectorArn: Optional[str] = None + MetricSetDescription: Optional[str] = None + MetricSetName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModificationTime: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class VpcConfigurationTypeDef(BaseModel): + SubnetIdList: Sequence[str] + SecurityGroupIdList: Sequence[str] + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class ActionTypeDef(BaseModel): + SNSConfiguration: Optional[SNSConfigurationTypeDef] = None + LambdaConfiguration: Optional[LambdaConfigurationTypeDef] = None + +class AlertFiltersTypeDef(BaseModel): + MetricList: Optional[Sequence[str]] = None + DimensionFilterList: Optional[Sequence[DimensionFilterTypeDef]] = None + +class CreateAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorName: str + AnomalyDetectorConfig: AnomalyDetectorConfigTypeDef + AnomalyDetectorDescription: Optional[str] = None + KmsKeyArn: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateAnomalyDetectorRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + KmsKeyArn: Optional[str] = None + AnomalyDetectorDescription: Optional[str] = None + AnomalyDetectorConfig: Optional[AnomalyDetectorConfigTypeDef] = None + +class AnomalyGroupStatisticsTypeDef(BaseModel): + EvaluationStartDate: Optional[str] = None + TotalCount: Optional[int] = None + ItemizedMetricStatsList: Optional[List[ItemizedMetricStatsTypeDef]] = None + +class PutFeedbackRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + AnomalyGroupTimeSeriesFeedback: AnomalyGroupTimeSeriesFeedbackTypeDef + +class GetFeedbackRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + AnomalyGroupTimeSeriesFeedback: AnomalyGroupTimeSeriesTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class AthenaSourceConfigTypeDef(BaseModel): + RoleArn: Optional[str] = None + DatabaseName: Optional[str] = None + DataCatalog: Optional[str] = None + TableName: Optional[str] = None + WorkGroupName: Optional[str] = None + S3ResultsPath: Optional[str] = None + BackTestConfiguration: Optional[BackTestConfigurationTypeDef] = None + +class CloudWatchConfigTypeDef(BaseModel): + RoleArn: Optional[str] = None + BackTestConfiguration: Optional[BackTestConfigurationTypeDef] = None + +class DetectedFieldTypeDef(BaseModel): + Value: Optional[AttributeValueTypeDef] = None + Confidence: Optional[ConfidenceType] = None + Message: Optional[str] = None + +class AutoDetectionMetricSourceTypeDef(BaseModel): + S3SourceConfig: Optional[AutoDetectionS3SourceConfigTypeDef] = None + +class CreateAlertResponseTypeDef(BaseModel): + AlertArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnomalyDetectorResponseTypeDef(BaseModel): + AnomalyDetectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMetricSetResponseTypeDef(BaseModel): + MetricSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAnomalyDetectorResponseTypeDef(BaseModel): + AnomalyDetectorArn: str + AnomalyDetectorName: str + AnomalyDetectorDescription: str + AnomalyDetectorConfig: AnomalyDetectorConfigSummaryTypeDef + CreationTime: datetime + LastModificationTime: datetime + Status: AnomalyDetectorStatusType + FailureReason: str + KmsKeyArn: str + FailureType: AnomalyDetectorFailureTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class GetSampleDataResponseTypeDef(BaseModel): + HeaderValues: List[str] + SampleRows: List[List[str]] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAlertsResponseTypeDef(BaseModel): + AlertSummaryList: List[AlertSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnomalyDetectorsResponseTypeDef(BaseModel): + AnomalyDetectorSummaryList: List[AnomalyDetectorSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAlertResponseTypeDef(BaseModel): + AlertArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnomalyDetectorResponseTypeDef(BaseModel): + AnomalyDetectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMetricSetResponseTypeDef(BaseModel): + MetricSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricSetDataQualityMetricTypeDef(BaseModel): + MetricSetArn: Optional[str] = None + DataQualityMetricList: Optional[List[DataQualityMetricTypeDef]] = None + +class DescribeAnomalyDetectionExecutionsResponseTypeDef(BaseModel): + ExecutionList: List[ExecutionStatusTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DimensionContributionTypeDef(BaseModel): + DimensionName: Optional[str] = None + DimensionValueContributionList: Optional[List[DimensionValueContributionTypeDef]] = None + +class TimeSeriesTypeDef(BaseModel): + TimeSeriesId: str + DimensionList: List[DimensionNameValueTypeDef] + MetricValueList: List[float] + +class FileFormatDescriptorTypeDef(BaseModel): + CsvFormatDescriptor: Optional[CsvFormatDescriptorTypeDef] = None + JsonFormatDescriptor: Optional[JsonFormatDescriptorTypeDef] = None + +class MetricSetDimensionFilterTypeDef(BaseModel): + Name: Optional[str] = None + FilterList: Optional[Sequence[FilterTypeDef]] = None + +class GetFeedbackResponseTypeDef(BaseModel): + AnomalyGroupTimeSeriesFeedback: List[TimeSeriesFeedbackTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnomalyGroupRelatedMetricsResponseTypeDef(BaseModel): + InterMetricImpactList: List[InterMetricImpactDetailsTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMetricSetsResponseTypeDef(BaseModel): + MetricSetSummaryList: List[MetricSetSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RDSSourceConfigTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DatabaseHost: Optional[str] = None + DatabasePort: Optional[int] = None + SecretManagerArn: Optional[str] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + RoleArn: Optional[str] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + +class RedshiftSourceConfigTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + DatabaseHost: Optional[str] = None + DatabasePort: Optional[int] = None + SecretManagerArn: Optional[str] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + RoleArn: Optional[str] = None + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + +class AlertTypeDef(BaseModel): + Action: Optional[ActionTypeDef] = None + AlertDescription: Optional[str] = None + AlertArn: Optional[str] = None + AnomalyDetectorArn: Optional[str] = None + AlertName: Optional[str] = None + AlertSensitivityThreshold: Optional[int] = None + AlertType: Optional[AlertTypeType] = None + AlertStatus: Optional[AlertStatusType] = None + LastModificationTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + AlertFilters: Optional[AlertFiltersTypeDef] = None + +class CreateAlertRequestRequestTypeDef(BaseModel): + AlertName: str + AnomalyDetectorArn: str + Action: ActionTypeDef + AlertSensitivityThreshold: Optional[int] = None + AlertDescription: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + AlertFilters: Optional[AlertFiltersTypeDef] = None + +class UpdateAlertRequestRequestTypeDef(BaseModel): + AlertArn: str + AlertDescription: Optional[str] = None + AlertSensitivityThreshold: Optional[int] = None + Action: Optional[ActionTypeDef] = None + AlertFilters: Optional[AlertFiltersTypeDef] = None + +class ListAnomalyGroupSummariesResponseTypeDef(BaseModel): + AnomalyGroupSummaryList: List[AnomalyGroupSummaryTypeDef] + AnomalyGroupStatistics: AnomalyGroupStatisticsTypeDef + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectedCsvFormatDescriptorTypeDef(BaseModel): + FileCompression: Optional[DetectedFieldTypeDef] = None + Charset: Optional[DetectedFieldTypeDef] = None + ContainsHeader: Optional[DetectedFieldTypeDef] = None + Delimiter: Optional[DetectedFieldTypeDef] = None + HeaderList: Optional[DetectedFieldTypeDef] = None + QuoteSymbol: Optional[DetectedFieldTypeDef] = None + +class DetectedJsonFormatDescriptorTypeDef(BaseModel): + FileCompression: Optional[DetectedFieldTypeDef] = None + Charset: Optional[DetectedFieldTypeDef] = None + +class DetectMetricSetConfigRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + AutoDetectionMetricSource: AutoDetectionMetricSourceTypeDef + +class AnomalyDetectorDataQualityMetricTypeDef(BaseModel): + StartTimestamp: Optional[datetime] = None + MetricSetDataQualityMetricList: Optional[List[MetricSetDataQualityMetricTypeDef]] = None + +class ContributionMatrixTypeDef(BaseModel): + DimensionContributionList: Optional[List[DimensionContributionTypeDef]] = None + +class ListAnomalyGroupTimeSeriesResponseTypeDef(BaseModel): + AnomalyGroupId: str + MetricName: str + TimestampList: List[str] + NextToken: str + TimeSeriesList: List[TimeSeriesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class S3SourceConfigTypeDef(BaseModel): + RoleArn: Optional[str] = None + TemplatedPathList: Optional[Sequence[str]] = None + HistoricalDataPathList: Optional[Sequence[str]] = None + FileFormatDescriptor: Optional[FileFormatDescriptorTypeDef] = None + +class SampleDataS3SourceConfigTypeDef(BaseModel): + RoleArn: str + FileFormatDescriptor: FileFormatDescriptorTypeDef + TemplatedPathList: Optional[Sequence[str]] = None + HistoricalDataPathList: Optional[Sequence[str]] = None + +class DescribeAlertResponseTypeDef(BaseModel): + Alert: AlertTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DetectedFileFormatDescriptorTypeDef(BaseModel): + CsvFormatDescriptor: Optional[DetectedCsvFormatDescriptorTypeDef] = None + JsonFormatDescriptor: Optional[DetectedJsonFormatDescriptorTypeDef] = None + +class GetDataQualityMetricsResponseTypeDef(BaseModel): + AnomalyDetectorDataQualityMetricList: List[AnomalyDetectorDataQualityMetricTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricLevelImpactTypeDef(BaseModel): + MetricName: Optional[str] = None + NumTimeSeries: Optional[int] = None + ContributionMatrix: Optional[ContributionMatrixTypeDef] = None + +class MetricSourceTypeDef(BaseModel): + S3SourceConfig: Optional[S3SourceConfigTypeDef] = None + AppFlowConfig: Optional[AppFlowConfigTypeDef] = None + CloudWatchConfig: Optional[CloudWatchConfigTypeDef] = None + RDSSourceConfig: Optional[RDSSourceConfigTypeDef] = None + RedshiftSourceConfig: Optional[RedshiftSourceConfigTypeDef] = None + AthenaSourceConfig: Optional[AthenaSourceConfigTypeDef] = None + +class GetSampleDataRequestRequestTypeDef(BaseModel): + S3SourceConfig: Optional[SampleDataS3SourceConfigTypeDef] = None + +class DetectedS3SourceConfigTypeDef(BaseModel): + FileFormatDescriptor: Optional[DetectedFileFormatDescriptorTypeDef] = None + +class AnomalyGroupTypeDef(BaseModel): + StartTime: Optional[str] = None + EndTime: Optional[str] = None + AnomalyGroupId: Optional[str] = None + AnomalyGroupScore: Optional[float] = None + PrimaryMetricName: Optional[str] = None + MetricLevelImpactList: Optional[List[MetricLevelImpactTypeDef]] = None + +class CreateMetricSetRequestRequestTypeDef(BaseModel): + AnomalyDetectorArn: str + MetricSetName: str + MetricList: Sequence[MetricTypeDef] + MetricSource: MetricSourceTypeDef + MetricSetDescription: Optional[str] = None + Offset: Optional[int] = None + TimestampColumn: Optional[TimestampColumnTypeDef] = None + DimensionList: Optional[Sequence[str]] = None + MetricSetFrequency: Optional[FrequencyType] = None + Timezone: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + DimensionFilterList: Optional[Sequence[MetricSetDimensionFilterTypeDef]] = None + +class DescribeMetricSetResponseTypeDef(BaseModel): + MetricSetArn: str + AnomalyDetectorArn: str + MetricSetName: str + MetricSetDescription: str + CreationTime: datetime + LastModificationTime: datetime + Offset: int + MetricList: List[MetricTypeDef] + TimestampColumn: TimestampColumnTypeDef + DimensionList: List[str] + MetricSetFrequency: FrequencyType + Timezone: str + MetricSource: MetricSourceTypeDef + DimensionFilterList: List[MetricSetDimensionFilterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMetricSetRequestRequestTypeDef(BaseModel): + MetricSetArn: str + MetricSetDescription: Optional[str] = None + MetricList: Optional[Sequence[MetricTypeDef]] = None + Offset: Optional[int] = None + TimestampColumn: Optional[TimestampColumnTypeDef] = None + DimensionList: Optional[Sequence[str]] = None + MetricSetFrequency: Optional[FrequencyType] = None + MetricSource: Optional[MetricSourceTypeDef] = None + DimensionFilterList: Optional[Sequence[MetricSetDimensionFilterTypeDef]] = None + +class DetectedMetricSourceTypeDef(BaseModel): + S3SourceConfig: Optional[DetectedS3SourceConfigTypeDef] = None + +class GetAnomalyGroupResponseTypeDef(BaseModel): + AnomalyGroup: AnomalyGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DetectedMetricSetConfigTypeDef(BaseModel): + Offset: Optional[DetectedFieldTypeDef] = None + MetricSetFrequency: Optional[DetectedFieldTypeDef] = None + MetricSource: Optional[DetectedMetricSourceTypeDef] = None + +class DetectMetricSetConfigResponseTypeDef(BaseModel): + DetectedMetricSetConfig: DetectedMetricSetConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lookoutmetrics_constants.py b/aws_resource_validator/pydantic_models/lookoutmetrics_constants.py new file mode 100644 index 00000000..6f590660 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lookoutmetrics_constants.py @@ -0,0 +1,430 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AggregationFunctionType = Literal["AVG", "SUM"] +AlertStatusType = Literal["ACTIVE", "INACTIVE"] +AlertTypeType = Literal["LAMBDA", "SNS"] +AnomalyDetectionTaskStatusType = Literal["COMPLETED", "FAILED", "FAILED_TO_SCHEDULE", "IN_PROGRESS", "PENDING"] +AnomalyDetectorFailureTypeType = Literal["ACTIVATION_FAILURE", "BACK_TEST_ACTIVATION_FAILURE", "DEACTIVATION_FAILURE", "DELETION_FAILURE"] +AnomalyDetectorStatusType = Literal["ACTIVATING", + "ACTIVE", + "BACK_TEST_ACTIVATING", + "BACK_TEST_ACTIVE", + "BACK_TEST_COMPLETE", + "DEACTIVATED", + "DEACTIVATING", + "DELETING", + "FAILED", + "INACTIVE", + "LEARNING",] +CSVFileCompressionType = Literal["GZIP", "NONE"] +ConfidenceType = Literal["HIGH", "LOW", "NONE"] +DataQualityMetricTypeType = Literal["BACKTEST_INFERENCE_DATA_END_TIME_STAMP", + "BACKTEST_INFERENCE_DATA_START_TIME_STAMP", + "BACKTEST_TRAINING_DATA_END_TIME_STAMP", + "BACKTEST_TRAINING_DATA_START_TIME_STAMP", + "COLUMN_COMPLETENESS", + "DIMENSION_UNIQUENESS", + "INVALID_ROWS_COMPLIANCE", + "ROWS_PARTIAL_COMPLIANCE", + "ROWS_PROCESSED", + "TIME_SERIES_COUNT",] +FilterOperationType = Literal["EQUALS"] +FrequencyType = Literal["P1D", "PT10M", "PT1H", "PT5M"] +JsonFileCompressionType = Literal["GZIP", "NONE"] +RelationshipTypeType = Literal["CAUSE_OF_INPUT_ANOMALY_GROUP", "EFFECT_OF_INPUT_ANOMALY_GROUP"] +SnsFormatType = Literal["JSON", "LONG_TEXT", "SHORT_TEXT"] +LookoutMetricsServiceName = Literal["lookoutmetrics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/lookoutvision_classes.py b/aws_resource_validator/pydantic_models/lookoutvision_classes.py new file mode 100644 index 00000000..917bdaff --- /dev/null +++ b/aws_resource_validator/pydantic_models/lookoutvision_classes.py @@ -0,0 +1,397 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.lookoutvision_constants import * + +class PixelAnomalyTypeDef(BaseModel): + TotalPercentageArea: Optional[float] = None + Color: Optional[str] = None + +class DatasetMetadataTypeDef(BaseModel): + DatasetType: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + Status: Optional[DatasetStatusType] = None + StatusMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateProjectRequestRequestTypeDef(BaseModel): + ProjectName: str + ClientToken: Optional[str] = None + +class ProjectMetadataTypeDef(BaseModel): + ProjectArn: Optional[str] = None + ProjectName: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + +class DatasetImageStatsTypeDef(BaseModel): + Total: Optional[int] = None + Labeled: Optional[int] = None + Normal: Optional[int] = None + Anomaly: Optional[int] = None + +class InputS3ObjectTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + ProjectName: str + DatasetType: str + ClientToken: Optional[str] = None + +class DeleteModelRequestRequestTypeDef(BaseModel): + ProjectName: str + ModelVersion: str + ClientToken: Optional[str] = None + +class DeleteProjectRequestRequestTypeDef(BaseModel): + ProjectName: str + ClientToken: Optional[str] = None + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + ProjectName: str + DatasetType: str + +class DescribeModelPackagingJobRequestRequestTypeDef(BaseModel): + ProjectName: str + JobName: str + +class DescribeModelRequestRequestTypeDef(BaseModel): + ProjectName: str + ModelVersion: str + +class DescribeProjectRequestRequestTypeDef(BaseModel): + ProjectName: str + +class ImageSourceTypeDef(BaseModel): + Type: Optional[str] = None + +class S3LocationTypeDef(BaseModel): + Bucket: str + Prefix: Optional[str] = None + +class TargetPlatformTypeDef(BaseModel): + Os: Literal["LINUX"] + Arch: TargetPlatformArchType + Accelerator: Optional[Literal["NVIDIA"]] = None + +class GreengrassOutputDetailsTypeDef(BaseModel): + ComponentVersionArn: Optional[str] = None + ComponentName: Optional[str] = None + ComponentVersion: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListModelPackagingJobsRequestRequestTypeDef(BaseModel): + ProjectName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ModelPackagingJobMetadataTypeDef(BaseModel): + JobName: Optional[str] = None + ProjectName: Optional[str] = None + ModelVersion: Optional[str] = None + ModelPackagingJobDescription: Optional[str] = None + ModelPackagingMethod: Optional[str] = None + Status: Optional[ModelPackagingJobStatusType] = None + StatusMessage: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class ListModelsRequestRequestTypeDef(BaseModel): + ProjectName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ModelPerformanceTypeDef(BaseModel): + F1Score: Optional[float] = None + Recall: Optional[float] = None + Precision: Optional[float] = None + +class OutputS3ObjectTypeDef(BaseModel): + Bucket: str + Key: str + +class StartModelRequestRequestTypeDef(BaseModel): + ProjectName: str + ModelVersion: str + MinInferenceUnits: int + ClientToken: Optional[str] = None + MaxInferenceUnits: Optional[int] = None + +class StopModelRequestRequestTypeDef(BaseModel): + ProjectName: str + ModelVersion: str + ClientToken: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AnomalyTypeDef(BaseModel): + Name: Optional[str] = None + PixelAnomaly: Optional[PixelAnomalyTypeDef] = None + +class DetectAnomaliesRequestRequestTypeDef(BaseModel): + ProjectName: str + ModelVersion: str + Body: BlobTypeDef + ContentType: str + +class UpdateDatasetEntriesRequestRequestTypeDef(BaseModel): + ProjectName: str + DatasetType: str + Changes: BlobTypeDef + ClientToken: Optional[str] = None + +class ProjectDescriptionTypeDef(BaseModel): + ProjectArn: Optional[str] = None + ProjectName: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + Datasets: Optional[List[DatasetMetadataTypeDef]] = None + +class CreateDatasetResponseTypeDef(BaseModel): + DatasetMetadata: DatasetMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteModelResponseTypeDef(BaseModel): + ModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectResponseTypeDef(BaseModel): + ProjectArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetEntriesResponseTypeDef(BaseModel): + DatasetEntries: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartModelPackagingJobResponseTypeDef(BaseModel): + JobName: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartModelResponseTypeDef(BaseModel): + Status: ModelHostingStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopModelResponseTypeDef(BaseModel): + Status: ModelHostingStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatasetEntriesResponseTypeDef(BaseModel): + Status: DatasetStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateProjectResponseTypeDef(BaseModel): + ProjectMetadata: ProjectMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProjectsResponseTypeDef(BaseModel): + Projects: List[ProjectMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetDescriptionTypeDef(BaseModel): + ProjectName: Optional[str] = None + DatasetType: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Status: Optional[DatasetStatusType] = None + StatusMessage: Optional[str] = None + ImageStats: Optional[DatasetImageStatsTypeDef] = None + +class DatasetGroundTruthManifestTypeDef(BaseModel): + S3Object: Optional[InputS3ObjectTypeDef] = None + +class OutputConfigTypeDef(BaseModel): + S3Location: S3LocationTypeDef + +class GreengrassConfigurationTypeDef(BaseModel): + S3OutputLocation: S3LocationTypeDef + ComponentName: str + CompilerOptions: Optional[str] = None + TargetDevice: Optional[Literal["jetson_xavier"]] = None + TargetPlatform: Optional[TargetPlatformTypeDef] = None + ComponentVersion: Optional[str] = None + ComponentDescription: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ModelPackagingOutputDetailsTypeDef(BaseModel): + Greengrass: Optional[GreengrassOutputDetailsTypeDef] = None + +class ListModelPackagingJobsRequestListModelPackagingJobsPaginateTypeDef(BaseModel): + ProjectName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelsRequestListModelsPaginateTypeDef(BaseModel): + ProjectName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetEntriesRequestListDatasetEntriesPaginateTypeDef(BaseModel): + ProjectName: str + DatasetType: str + Labeled: Optional[bool] = None + AnomalyClass: Optional[str] = None + BeforeCreationDate: Optional[TimestampTypeDef] = None + AfterCreationDate: Optional[TimestampTypeDef] = None + SourceRefContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetEntriesRequestRequestTypeDef(BaseModel): + ProjectName: str + DatasetType: str + Labeled: Optional[bool] = None + AnomalyClass: Optional[str] = None + BeforeCreationDate: Optional[TimestampTypeDef] = None + AfterCreationDate: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SourceRefContains: Optional[str] = None + +class ListModelPackagingJobsResponseTypeDef(BaseModel): + ModelPackagingJobs: List[ModelPackagingJobMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModelMetadataTypeDef(BaseModel): + CreationTimestamp: Optional[datetime] = None + ModelVersion: Optional[str] = None + ModelArn: Optional[str] = None + Description: Optional[str] = None + Status: Optional[ModelStatusType] = None + StatusMessage: Optional[str] = None + Performance: Optional[ModelPerformanceTypeDef] = None + +class DetectAnomalyResultTypeDef(BaseModel): + Source: Optional[ImageSourceTypeDef] = None + IsAnomalous: Optional[bool] = None + Confidence: Optional[float] = None + Anomalies: Optional[List[AnomalyTypeDef]] = None + AnomalyMask: Optional[bytes] = None + +class DescribeProjectResponseTypeDef(BaseModel): + ProjectDescription: ProjectDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetResponseTypeDef(BaseModel): + DatasetDescription: DatasetDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetSourceTypeDef(BaseModel): + GroundTruthManifest: Optional[DatasetGroundTruthManifestTypeDef] = None + +class CreateModelRequestRequestTypeDef(BaseModel): + ProjectName: str + OutputConfig: OutputConfigTypeDef + Description: Optional[str] = None + ClientToken: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ModelDescriptionTypeDef(BaseModel): + ModelVersion: Optional[str] = None + ModelArn: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + Description: Optional[str] = None + Status: Optional[ModelStatusType] = None + StatusMessage: Optional[str] = None + Performance: Optional[ModelPerformanceTypeDef] = None + OutputConfig: Optional[OutputConfigTypeDef] = None + EvaluationManifest: Optional[OutputS3ObjectTypeDef] = None + EvaluationResult: Optional[OutputS3ObjectTypeDef] = None + EvaluationEndTimestamp: Optional[datetime] = None + KmsKeyId: Optional[str] = None + MinInferenceUnits: Optional[int] = None + MaxInferenceUnits: Optional[int] = None + +class ModelPackagingConfigurationTypeDef(BaseModel): + Greengrass: GreengrassConfigurationTypeDef + +class CreateModelResponseTypeDef(BaseModel): + ModelMetadata: ModelMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListModelsResponseTypeDef(BaseModel): + Models: List[ModelMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectAnomaliesResponseTypeDef(BaseModel): + DetectAnomalyResult: DetectAnomalyResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetRequestRequestTypeDef(BaseModel): + ProjectName: str + DatasetType: str + DatasetSource: Optional[DatasetSourceTypeDef] = None + ClientToken: Optional[str] = None + +class DescribeModelResponseTypeDef(BaseModel): + ModelDescription: ModelDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModelPackagingDescriptionTypeDef(BaseModel): + JobName: Optional[str] = None + ProjectName: Optional[str] = None + ModelVersion: Optional[str] = None + ModelPackagingConfiguration: Optional[ModelPackagingConfigurationTypeDef] = None + ModelPackagingJobDescription: Optional[str] = None + ModelPackagingMethod: Optional[str] = None + ModelPackagingOutputDetails: Optional[ModelPackagingOutputDetailsTypeDef] = None + Status: Optional[ModelPackagingJobStatusType] = None + StatusMessage: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class StartModelPackagingJobRequestRequestTypeDef(BaseModel): + ProjectName: str + ModelVersion: str + Configuration: ModelPackagingConfigurationTypeDef + JobName: Optional[str] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + +class DescribeModelPackagingJobResponseTypeDef(BaseModel): + ModelPackagingDescription: ModelPackagingDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/lookoutvision_constants.py b/aws_resource_validator/pydantic_models/lookoutvision_constants.py new file mode 100644 index 00000000..97ed34a5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/lookoutvision_constants.py @@ -0,0 +1,427 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DatasetStatusType = Literal["CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_COMPLETE", + "UPDATE_FAILED_ROLLBACK_COMPLETE", + "UPDATE_FAILED_ROLLBACK_IN_PROGRESS", + "UPDATE_IN_PROGRESS",] +ListDatasetEntriesPaginatorName = Literal["list_dataset_entries"] +ListModelPackagingJobsPaginatorName = Literal["list_model_packaging_jobs"] +ListModelsPaginatorName = Literal["list_models"] +ListProjectsPaginatorName = Literal["list_projects"] +ModelHostingStatusType = Literal["HOSTED", "HOSTING_FAILED", "STARTING_HOSTING", "STOPPING_HOSTING", "SYSTEM_UPDATING"] +ModelPackagingJobStatusType = Literal["CREATED", "FAILED", "RUNNING", "SUCCEEDED"] +ModelStatusType = Literal["DELETING", + "HOSTED", + "HOSTING_FAILED", + "STARTING_HOSTING", + "STOPPING_HOSTING", + "SYSTEM_UPDATING", + "TRAINED", + "TRAINING", + "TRAINING_FAILED",] +TargetDeviceType = Literal["jetson_xavier"] +TargetPlatformAcceleratorType = Literal["NVIDIA"] +TargetPlatformArchType = Literal["ARM64", "X86_64"] +TargetPlatformOsType = Literal["LINUX"] +LookoutforVisionServiceName = Literal["lookoutvision"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_dataset_entries", "list_model_packaging_jobs", "list_models", "list_projects"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/m2_classes.py b/aws_resource_validator/pydantic_models/m2_classes.py new file mode 100644 index 00000000..ddadb4d5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/m2_classes.py @@ -0,0 +1,683 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.m2_constants import * + +class AlternateKeyTypeDef(BaseModel): + length: int + offset: int + allowDuplicates: Optional[bool] = None + name: Optional[str] = None + +class ApplicationSummaryTypeDef(BaseModel): + applicationArn: str + applicationId: str + applicationVersion: int + creationTime: datetime + engineType: EngineTypeType + name: str + status: ApplicationLifecycleType + deploymentStatus: Optional[ApplicationDeploymentLifecycleType] = None + description: Optional[str] = None + environmentId: Optional[str] = None + lastStartTime: Optional[datetime] = None + roleArn: Optional[str] = None + versionStatus: Optional[ApplicationVersionLifecycleType] = None + +class ApplicationVersionSummaryTypeDef(BaseModel): + applicationVersion: int + creationTime: datetime + status: ApplicationVersionLifecycleType + statusReason: Optional[str] = None + +class FileBatchJobDefinitionTypeDef(BaseModel): + fileName: str + folderPath: Optional[str] = None + +class ScriptBatchJobDefinitionTypeDef(BaseModel): + scriptName: str + +class FileBatchJobIdentifierTypeDef(BaseModel): + fileName: str + folderPath: Optional[str] = None + +class ScriptBatchJobIdentifierTypeDef(BaseModel): + scriptName: str + +class CancelBatchJobExecutionRequestRequestTypeDef(BaseModel): + applicationId: str + executionId: str + +class DefinitionTypeDef(BaseModel): + content: Optional[str] = None + s3Location: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + applicationId: str + applicationVersion: int + environmentId: str + clientToken: Optional[str] = None + +class HighAvailabilityConfigTypeDef(BaseModel): + desiredCapacity: int + +class ExternalLocationTypeDef(BaseModel): + s3Location: Optional[str] = None + +class DataSetImportSummaryTypeDef(BaseModel): + failed: int + inProgress: int + pending: int + succeeded: int + total: int + +class DataSetSummaryTypeDef(BaseModel): + dataSetName: str + creationTime: Optional[datetime] = None + dataSetOrg: Optional[str] = None + format: Optional[str] = None + lastReferencedTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + +class RecordLengthTypeDef(BaseModel): + max: int + min: int + +class GdgDetailAttributesTypeDef(BaseModel): + limit: Optional[int] = None + rollDisposition: Optional[str] = None + +class PoDetailAttributesTypeDef(BaseModel): + encoding: str + format: str + +class PsDetailAttributesTypeDef(BaseModel): + encoding: str + format: str + +class GdgAttributesTypeDef(BaseModel): + limit: Optional[int] = None + rollDisposition: Optional[str] = None + +class PoAttributesTypeDef(BaseModel): + format: str + memberFileExtensions: Sequence[str] + encoding: Optional[str] = None + +class PsAttributesTypeDef(BaseModel): + format: str + encoding: Optional[str] = None + +class DeleteApplicationFromEnvironmentRequestRequestTypeDef(BaseModel): + applicationId: str + environmentId: str + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class DeleteEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + +class DeployedVersionSummaryTypeDef(BaseModel): + applicationVersion: int + status: DeploymentLifecycleType + statusReason: Optional[str] = None + +class DeploymentSummaryTypeDef(BaseModel): + applicationId: str + applicationVersion: int + creationTime: datetime + deploymentId: str + environmentId: str + status: DeploymentLifecycleType + statusReason: Optional[str] = None + +class EfsStorageConfigurationTypeDef(BaseModel): + fileSystemId: str + mountPoint: str + +class EngineVersionsSummaryTypeDef(BaseModel): + engineType: str + engineVersion: str + +class EnvironmentSummaryTypeDef(BaseModel): + creationTime: datetime + engineType: EngineTypeType + engineVersion: str + environmentArn: str + environmentId: str + instanceType: str + name: str + status: EnvironmentLifecycleType + +class FsxStorageConfigurationTypeDef(BaseModel): + fileSystemId: str + mountPoint: str + +class GetApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class LogGroupSummaryTypeDef(BaseModel): + logGroupName: str + logType: str + +class GetApplicationVersionRequestRequestTypeDef(BaseModel): + applicationId: str + applicationVersion: int + +class GetBatchJobExecutionRequestRequestTypeDef(BaseModel): + applicationId: str + executionId: str + +class JobStepRestartMarkerTypeDef(BaseModel): + fromStep: str + fromProcStep: Optional[str] = None + toProcStep: Optional[str] = None + toStep: Optional[str] = None + +class GetDataSetDetailsRequestRequestTypeDef(BaseModel): + applicationId: str + dataSetName: str + +class GetDataSetImportTaskRequestRequestTypeDef(BaseModel): + applicationId: str + taskId: str + +class GetDeploymentRequestRequestTypeDef(BaseModel): + applicationId: str + deploymentId: str + +class GetEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + +class JobIdentifierTypeDef(BaseModel): + fileName: Optional[str] = None + scriptName: Optional[str] = None + +class JobStepTypeDef(BaseModel): + procStepName: Optional[str] = None + procStepNumber: Optional[int] = None + stepCondCode: Optional[str] = None + stepName: Optional[str] = None + stepNumber: Optional[int] = None + stepRestartable: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationVersionsRequestRequestTypeDef(BaseModel): + applicationId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + environmentId: Optional[str] = None + maxResults: Optional[int] = None + names: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + +class ListBatchJobDefinitionsRequestRequestTypeDef(BaseModel): + applicationId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + prefix: Optional[str] = None + +class ListBatchJobRestartPointsRequestRequestTypeDef(BaseModel): + applicationId: str + executionId: str + +class ListDataSetImportHistoryRequestRequestTypeDef(BaseModel): + applicationId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListDataSetsRequestRequestTypeDef(BaseModel): + applicationId: str + maxResults: Optional[int] = None + nameFilter: Optional[str] = None + nextToken: Optional[str] = None + prefix: Optional[str] = None + +class ListDeploymentsRequestRequestTypeDef(BaseModel): + applicationId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEngineVersionsRequestRequestTypeDef(BaseModel): + engineType: Optional[EngineTypeType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEnvironmentsRequestRequestTypeDef(BaseModel): + engineType: Optional[EngineTypeType] = None + maxResults: Optional[int] = None + names: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MaintenanceScheduleTypeDef(BaseModel): + endTime: Optional[datetime] = None + startTime: Optional[datetime] = None + +class PrimaryKeyTypeDef(BaseModel): + length: int + offset: int + name: Optional[str] = None + +class StartApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class StopApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + forceStop: Optional[bool] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateEnvironmentRequestRequestTypeDef(BaseModel): + environmentId: str + applyDuringMaintenanceWindow: Optional[bool] = None + desiredCapacity: Optional[int] = None + engineVersion: Optional[str] = None + forceUpdate: Optional[bool] = None + instanceType: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + +class BatchJobDefinitionTypeDef(BaseModel): + fileBatchJobDefinition: Optional[FileBatchJobDefinitionTypeDef] = None + scriptBatchJobDefinition: Optional[ScriptBatchJobDefinitionTypeDef] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + definition: DefinitionTypeDef + engineType: EngineTypeType + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + kmsKeyId: Optional[str] = None + roleArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + currentApplicationVersion: int + definition: Optional[DefinitionTypeDef] = None + description: Optional[str] = None + +class CreateApplicationResponseTypeDef(BaseModel): + applicationArn: str + applicationId: str + applicationVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSetImportTaskResponseTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentResponseTypeDef(BaseModel): + deploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentResponseTypeDef(BaseModel): + environmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationVersionResponseTypeDef(BaseModel): + applicationVersion: int + creationTime: datetime + definitionContent: str + description: str + name: str + status: ApplicationVersionLifecycleType + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentResponseTypeDef(BaseModel): + applicationId: str + applicationVersion: int + creationTime: datetime + deploymentId: str + environmentId: str + status: DeploymentLifecycleType + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSignedBluinsightsUrlResponseTypeDef(BaseModel): + signedBiUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationVersionsResponseTypeDef(BaseModel): + applicationVersions: List[ApplicationVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + applications: List[ApplicationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartBatchJobResponseTypeDef(BaseModel): + executionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationResponseTypeDef(BaseModel): + applicationVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentResponseTypeDef(BaseModel): + environmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataSetImportTaskTypeDef(BaseModel): + status: DataSetTaskLifecycleType + summary: DataSetImportSummaryTypeDef + taskId: str + statusReason: Optional[str] = None + +class GetDataSetImportTaskResponseTypeDef(BaseModel): + status: DataSetTaskLifecycleType + summary: DataSetImportSummaryTypeDef + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSetsResponseTypeDef(BaseModel): + dataSets: List[DataSetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentsResponseTypeDef(BaseModel): + deployments: List[DeploymentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEngineVersionsResponseTypeDef(BaseModel): + engineVersions: List[EngineVersionsSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsResponseTypeDef(BaseModel): + environments: List[EnvironmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StorageConfigurationTypeDef(BaseModel): + efs: Optional[EfsStorageConfigurationTypeDef] = None + fsx: Optional[FsxStorageConfigurationTypeDef] = None + +class GetApplicationResponseTypeDef(BaseModel): + applicationArn: str + applicationId: str + creationTime: datetime + deployedVersion: DeployedVersionSummaryTypeDef + description: str + engineType: EngineTypeType + environmentId: str + kmsKeyId: str + lastStartTime: datetime + latestVersion: ApplicationVersionSummaryTypeDef + listenerArns: List[str] + listenerPorts: List[int] + loadBalancerDnsName: str + logGroups: List[LogGroupSummaryTypeDef] + name: str + roleArn: str + status: ApplicationLifecycleType + statusReason: str + tags: Dict[str, str] + targetGroupArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RestartBatchJobIdentifierTypeDef(BaseModel): + executionId: str + jobStepRestartMarker: JobStepRestartMarkerTypeDef + +class S3BatchJobIdentifierTypeDef(BaseModel): + bucket: str + identifier: JobIdentifierTypeDef + keyPrefix: Optional[str] = None + +class ListBatchJobRestartPointsResponseTypeDef(BaseModel): + batchJobSteps: List[JobStepTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationVersionsRequestListApplicationVersionsPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + environmentId: Optional[str] = None + names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBatchJobDefinitionsRequestListBatchJobDefinitionsPaginateTypeDef(BaseModel): + applicationId: str + prefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSetImportHistoryRequestListDataSetImportHistoryPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSetsRequestListDataSetsPaginateTypeDef(BaseModel): + applicationId: str + nameFilter: Optional[str] = None + prefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsRequestListDeploymentsPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEngineVersionsRequestListEngineVersionsPaginateTypeDef(BaseModel): + engineType: Optional[EngineTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsRequestListEnvironmentsPaginateTypeDef(BaseModel): + engineType: Optional[EngineTypeType] = None + names: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBatchJobExecutionsRequestListBatchJobExecutionsPaginateTypeDef(BaseModel): + applicationId: str + executionIds: Optional[Sequence[str]] = None + jobName: Optional[str] = None + startedAfter: Optional[TimestampTypeDef] = None + startedBefore: Optional[TimestampTypeDef] = None + status: Optional[BatchJobExecutionStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBatchJobExecutionsRequestRequestTypeDef(BaseModel): + applicationId: str + executionIds: Optional[Sequence[str]] = None + jobName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + startedAfter: Optional[TimestampTypeDef] = None + startedBefore: Optional[TimestampTypeDef] = None + status: Optional[BatchJobExecutionStatusType] = None + +class PendingMaintenanceTypeDef(BaseModel): + engineVersion: Optional[str] = None + schedule: Optional[MaintenanceScheduleTypeDef] = None + +class VsamAttributesTypeDef(BaseModel): + format: str + alternateKeys: Optional[Sequence[AlternateKeyTypeDef]] = None + compressed: Optional[bool] = None + encoding: Optional[str] = None + primaryKey: Optional[PrimaryKeyTypeDef] = None + +class VsamDetailAttributesTypeDef(BaseModel): + alternateKeys: Optional[List[AlternateKeyTypeDef]] = None + cacheAtStartup: Optional[bool] = None + compressed: Optional[bool] = None + encoding: Optional[str] = None + primaryKey: Optional[PrimaryKeyTypeDef] = None + recordFormat: Optional[str] = None + +class ListBatchJobDefinitionsResponseTypeDef(BaseModel): + batchJobDefinitions: List[BatchJobDefinitionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSetImportHistoryResponseTypeDef(BaseModel): + dataSetImportTasks: List[DataSetImportTaskTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentRequestRequestTypeDef(BaseModel): + engineType: EngineTypeType + instanceType: str + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + engineVersion: Optional[str] = None + highAvailabilityConfig: Optional[HighAvailabilityConfigTypeDef] = None + kmsKeyId: Optional[str] = None + preferredMaintenanceWindow: Optional[str] = None + publiclyAccessible: Optional[bool] = None + securityGroupIds: Optional[Sequence[str]] = None + storageConfigurations: Optional[Sequence[StorageConfigurationTypeDef]] = None + subnetIds: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + +class BatchJobIdentifierTypeDef(BaseModel): + fileBatchJobIdentifier: Optional[FileBatchJobIdentifierTypeDef] = None + restartBatchJobIdentifier: Optional[RestartBatchJobIdentifierTypeDef] = None + s3BatchJobIdentifier: Optional[S3BatchJobIdentifierTypeDef] = None + scriptBatchJobIdentifier: Optional[ScriptBatchJobIdentifierTypeDef] = None + +class GetEnvironmentResponseTypeDef(BaseModel): + actualCapacity: int + creationTime: datetime + description: str + engineType: EngineTypeType + engineVersion: str + environmentArn: str + environmentId: str + highAvailabilityConfig: HighAvailabilityConfigTypeDef + instanceType: str + kmsKeyId: str + loadBalancerArn: str + name: str + pendingMaintenance: PendingMaintenanceTypeDef + preferredMaintenanceWindow: str + publiclyAccessible: bool + securityGroupIds: List[str] + status: EnvironmentLifecycleType + statusReason: str + storageConfigurations: List[StorageConfigurationTypeDef] + subnetIds: List[str] + tags: Dict[str, str] + vpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetOrgAttributesTypeDef(BaseModel): + gdg: Optional[GdgAttributesTypeDef] = None + po: Optional[PoAttributesTypeDef] = None + ps: Optional[PsAttributesTypeDef] = None + vsam: Optional[VsamAttributesTypeDef] = None + +class DatasetDetailOrgAttributesTypeDef(BaseModel): + gdg: Optional[GdgDetailAttributesTypeDef] = None + po: Optional[PoDetailAttributesTypeDef] = None + ps: Optional[PsDetailAttributesTypeDef] = None + vsam: Optional[VsamDetailAttributesTypeDef] = None + +class BatchJobExecutionSummaryTypeDef(BaseModel): + applicationId: str + executionId: str + startTime: datetime + status: BatchJobExecutionStatusType + batchJobIdentifier: Optional[BatchJobIdentifierTypeDef] = None + endTime: Optional[datetime] = None + jobId: Optional[str] = None + jobName: Optional[str] = None + jobType: Optional[BatchJobTypeType] = None + returnCode: Optional[str] = None + +class GetBatchJobExecutionResponseTypeDef(BaseModel): + applicationId: str + batchJobIdentifier: BatchJobIdentifierTypeDef + endTime: datetime + executionId: str + jobId: str + jobName: str + jobStepRestartMarker: JobStepRestartMarkerTypeDef + jobType: BatchJobTypeType + jobUser: str + returnCode: str + startTime: datetime + status: BatchJobExecutionStatusType + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartBatchJobRequestRequestTypeDef(BaseModel): + applicationId: str + batchJobIdentifier: BatchJobIdentifierTypeDef + jobParams: Optional[Mapping[str, str]] = None + +class DataSetTypeDef(BaseModel): + datasetName: str + datasetOrg: DatasetOrgAttributesTypeDef + recordLength: RecordLengthTypeDef + relativePath: Optional[str] = None + storageType: Optional[str] = None + +class GetDataSetDetailsResponseTypeDef(BaseModel): + blocksize: int + creationTime: datetime + dataSetName: str + dataSetOrg: DatasetDetailOrgAttributesTypeDef + fileSize: int + lastReferencedTime: datetime + lastUpdatedTime: datetime + location: str + recordLength: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListBatchJobExecutionsResponseTypeDef(BaseModel): + batchJobExecutions: List[BatchJobExecutionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataSetImportItemTypeDef(BaseModel): + dataSet: DataSetTypeDef + externalLocation: ExternalLocationTypeDef + +class DataSetImportConfigTypeDef(BaseModel): + dataSets: Optional[Sequence[DataSetImportItemTypeDef]] = None + s3Location: Optional[str] = None + +class CreateDataSetImportTaskRequestRequestTypeDef(BaseModel): + applicationId: str + importConfig: DataSetImportConfigTypeDef + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/m2_constants.py b/aws_resource_validator/pydantic_models/m2_constants.py new file mode 100644 index 00000000..134af985 --- /dev/null +++ b/aws_resource_validator/pydantic_models/m2_constants.py @@ -0,0 +1,464 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationDeploymentLifecycleType = Literal["Deployed", "Deploying"] +ApplicationLifecycleType = Literal["Available", + "Created", + "Creating", + "Deleting", + "Deleting From Environment", + "Failed", + "Ready", + "Running", + "Starting", + "Stopped", + "Stopping",] +ApplicationVersionLifecycleType = Literal["Available", "Creating", "Failed"] +BatchJobExecutionStatusType = Literal["Cancelled", + "Cancelling", + "Dispatching", + "Failed", + "Holding", + "Purged", + "Running", + "Submitting", + "Succeeded", + "Succeeded With Warning",] +BatchJobTypeType = Literal["JES2", "JES3", "VSE"] +DataSetTaskLifecycleType = Literal["Completed", "Creating", "Failed", "Running"] +DeploymentLifecycleType = Literal["Deploying", "Failed", "Succeeded", "Updating Deployment"] +EngineTypeType = Literal["bluage", "microfocus"] +EnvironmentLifecycleType = Literal["Available", "Creating", "Deleting", "Failed", "Updating"] +ListApplicationVersionsPaginatorName = Literal["list_application_versions"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListBatchJobDefinitionsPaginatorName = Literal["list_batch_job_definitions"] +ListBatchJobExecutionsPaginatorName = Literal["list_batch_job_executions"] +ListDataSetImportHistoryPaginatorName = Literal["list_data_set_import_history"] +ListDataSetsPaginatorName = Literal["list_data_sets"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListEngineVersionsPaginatorName = Literal["list_engine_versions"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +MainframeModernizationServiceName = Literal["m2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_application_versions", + "list_applications", + "list_batch_job_definitions", + "list_batch_job_executions", + "list_data_set_import_history", + "list_data_sets", + "list_deployments", + "list_engine_versions", + "list_environments",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/machinelearning_classes.py b/aws_resource_validator/pydantic_models/machinelearning_classes.py new file mode 100644 index 00000000..c4f82c1d --- /dev/null +++ b/aws_resource_validator/pydantic_models/machinelearning_classes.py @@ -0,0 +1,637 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.machinelearning_constants import * + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchPredictionTypeDef(BaseModel): + BatchPredictionId: Optional[str] = None + MLModelId: Optional[str] = None + BatchPredictionDataSourceId: Optional[str] = None + InputDataLocationS3: Optional[str] = None + CreatedByIamUser: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + Name: Optional[str] = None + Status: Optional[EntityStatusType] = None + OutputUri: Optional[str] = None + Message: Optional[str] = None + ComputeTime: Optional[int] = None + FinishedAt: Optional[datetime] = None + StartedAt: Optional[datetime] = None + TotalRecordCount: Optional[int] = None + InvalidRecordCount: Optional[int] = None + +class CreateBatchPredictionInputRequestTypeDef(BaseModel): + BatchPredictionId: str + MLModelId: str + BatchPredictionDataSourceId: str + OutputUri: str + BatchPredictionName: Optional[str] = None + +class S3DataSpecTypeDef(BaseModel): + DataLocationS3: str + DataRearrangement: Optional[str] = None + DataSchema: Optional[str] = None + DataSchemaLocationS3: Optional[str] = None + +class CreateEvaluationInputRequestTypeDef(BaseModel): + EvaluationId: str + MLModelId: str + EvaluationDataSourceId: str + EvaluationName: Optional[str] = None + +class CreateMLModelInputRequestTypeDef(BaseModel): + MLModelId: str + MLModelType: MLModelTypeType + TrainingDataSourceId: str + MLModelName: Optional[str] = None + Parameters: Optional[Mapping[str, str]] = None + Recipe: Optional[str] = None + RecipeUri: Optional[str] = None + +class CreateRealtimeEndpointInputRequestTypeDef(BaseModel): + MLModelId: str + +class RealtimeEndpointInfoTypeDef(BaseModel): + PeakRequestsPerSecond: Optional[int] = None + CreatedAt: Optional[datetime] = None + EndpointUrl: Optional[str] = None + EndpointStatus: Optional[RealtimeEndpointStatusType] = None + +class DeleteBatchPredictionInputRequestTypeDef(BaseModel): + BatchPredictionId: str + +class DeleteDataSourceInputRequestTypeDef(BaseModel): + DataSourceId: str + +class DeleteEvaluationInputRequestTypeDef(BaseModel): + EvaluationId: str + +class DeleteMLModelInputRequestTypeDef(BaseModel): + MLModelId: str + +class DeleteRealtimeEndpointInputRequestTypeDef(BaseModel): + MLModelId: str + +class DeleteTagsInputRequestTypeDef(BaseModel): + TagKeys: Sequence[str] + ResourceId: str + ResourceType: TaggableResourceTypeType + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeBatchPredictionsInputRequestTypeDef(BaseModel): + FilterVariable: Optional[BatchPredictionFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeDataSourcesInputRequestTypeDef(BaseModel): + FilterVariable: Optional[DataSourceFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeEvaluationsInputRequestTypeDef(BaseModel): + FilterVariable: Optional[EvaluationFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeMLModelsInputRequestTypeDef(BaseModel): + FilterVariable: Optional[MLModelFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class DescribeTagsInputRequestTypeDef(BaseModel): + ResourceId: str + ResourceType: TaggableResourceTypeType + +class PerformanceMetricsTypeDef(BaseModel): + Properties: Optional[Dict[str, str]] = None + +class GetBatchPredictionInputRequestTypeDef(BaseModel): + BatchPredictionId: str + +class GetDataSourceInputRequestTypeDef(BaseModel): + DataSourceId: str + Verbose: Optional[bool] = None + +class GetEvaluationInputRequestTypeDef(BaseModel): + EvaluationId: str + +class GetMLModelInputRequestTypeDef(BaseModel): + MLModelId: str + Verbose: Optional[bool] = None + +class PredictInputRequestTypeDef(BaseModel): + MLModelId: str + Record: Mapping[str, str] + PredictEndpoint: str + +class PredictionTypeDef(BaseModel): + predictedLabel: Optional[str] = None + predictedValue: Optional[float] = None + predictedScores: Optional[Dict[str, float]] = None + details: Optional[Dict[DetailsAttributesType, str]] = None + +class RDSDatabaseCredentialsTypeDef(BaseModel): + Username: str + Password: str + +class RDSDatabaseTypeDef(BaseModel): + InstanceIdentifier: str + DatabaseName: str + +class RedshiftDatabaseCredentialsTypeDef(BaseModel): + Username: str + Password: str + +class RedshiftDatabaseTypeDef(BaseModel): + DatabaseName: str + ClusterIdentifier: str + +class UpdateBatchPredictionInputRequestTypeDef(BaseModel): + BatchPredictionId: str + BatchPredictionName: str + +class UpdateDataSourceInputRequestTypeDef(BaseModel): + DataSourceId: str + DataSourceName: str + +class UpdateEvaluationInputRequestTypeDef(BaseModel): + EvaluationId: str + EvaluationName: str + +class UpdateMLModelInputRequestTypeDef(BaseModel): + MLModelId: str + MLModelName: Optional[str] = None + ScoreThreshold: Optional[float] = None + +class AddTagsInputRequestTypeDef(BaseModel): + Tags: Sequence[TagTypeDef] + ResourceId: str + ResourceType: TaggableResourceTypeType + +class AddTagsOutputTypeDef(BaseModel): + ResourceId: str + ResourceType: TaggableResourceTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBatchPredictionOutputTypeDef(BaseModel): + BatchPredictionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceFromRDSOutputTypeDef(BaseModel): + DataSourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceFromRedshiftOutputTypeDef(BaseModel): + DataSourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceFromS3OutputTypeDef(BaseModel): + DataSourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEvaluationOutputTypeDef(BaseModel): + EvaluationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMLModelOutputTypeDef(BaseModel): + MLModelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBatchPredictionOutputTypeDef(BaseModel): + BatchPredictionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSourceOutputTypeDef(BaseModel): + DataSourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEvaluationOutputTypeDef(BaseModel): + EvaluationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMLModelOutputTypeDef(BaseModel): + MLModelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTagsOutputTypeDef(BaseModel): + ResourceId: str + ResourceType: TaggableResourceTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTagsOutputTypeDef(BaseModel): + ResourceId: str + ResourceType: TaggableResourceTypeType + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBatchPredictionOutputTypeDef(BaseModel): + BatchPredictionId: str + MLModelId: str + BatchPredictionDataSourceId: str + InputDataLocationS3: str + CreatedByIamUser: str + CreatedAt: datetime + LastUpdatedAt: datetime + Name: str + Status: EntityStatusType + OutputUri: str + LogUri: str + Message: str + ComputeTime: int + FinishedAt: datetime + StartedAt: datetime + TotalRecordCount: int + InvalidRecordCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBatchPredictionOutputTypeDef(BaseModel): + BatchPredictionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceOutputTypeDef(BaseModel): + DataSourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEvaluationOutputTypeDef(BaseModel): + EvaluationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMLModelOutputTypeDef(BaseModel): + MLModelId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBatchPredictionsOutputTypeDef(BaseModel): + Results: List[BatchPredictionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceFromS3InputRequestTypeDef(BaseModel): + DataSourceId: str + DataSpec: S3DataSpecTypeDef + DataSourceName: Optional[str] = None + ComputeStatistics: Optional[bool] = None + +class CreateRealtimeEndpointOutputTypeDef(BaseModel): + MLModelId: str + RealtimeEndpointInfo: RealtimeEndpointInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRealtimeEndpointOutputTypeDef(BaseModel): + MLModelId: str + RealtimeEndpointInfo: RealtimeEndpointInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMLModelOutputTypeDef(BaseModel): + MLModelId: str + TrainingDataSourceId: str + CreatedByIamUser: str + CreatedAt: datetime + LastUpdatedAt: datetime + Name: str + Status: EntityStatusType + SizeInBytes: int + EndpointInfo: RealtimeEndpointInfoTypeDef + TrainingParameters: Dict[str, str] + InputDataLocationS3: str + MLModelType: MLModelTypeType + ScoreThreshold: float + ScoreThresholdLastUpdatedAt: datetime + LogUri: str + Message: str + ComputeTime: int + FinishedAt: datetime + StartedAt: datetime + Recipe: str + Schema: str + ResponseMetadata: ResponseMetadataTypeDef + +class MLModelTypeDef(BaseModel): + MLModelId: Optional[str] = None + TrainingDataSourceId: Optional[str] = None + CreatedByIamUser: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + Name: Optional[str] = None + Status: Optional[EntityStatusType] = None + SizeInBytes: Optional[int] = None + EndpointInfo: Optional[RealtimeEndpointInfoTypeDef] = None + TrainingParameters: Optional[Dict[str, str]] = None + InputDataLocationS3: Optional[str] = None + Algorithm: Optional[Literal["sgd"]] = None + MLModelType: Optional[MLModelTypeType] = None + ScoreThreshold: Optional[float] = None + ScoreThresholdLastUpdatedAt: Optional[datetime] = None + Message: Optional[str] = None + ComputeTime: Optional[int] = None + FinishedAt: Optional[datetime] = None + StartedAt: Optional[datetime] = None + +class DescribeBatchPredictionsInputBatchPredictionAvailableWaitTypeDef(BaseModel): + FilterVariable: Optional[BatchPredictionFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDataSourcesInputDataSourceAvailableWaitTypeDef(BaseModel): + FilterVariable: Optional[DataSourceFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEvaluationsInputEvaluationAvailableWaitTypeDef(BaseModel): + FilterVariable: Optional[EvaluationFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeMLModelsInputMLModelAvailableWaitTypeDef(BaseModel): + FilterVariable: Optional[MLModelFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeBatchPredictionsInputDescribeBatchPredictionsPaginateTypeDef(BaseModel): + FilterVariable: Optional[BatchPredictionFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDataSourcesInputDescribeDataSourcesPaginateTypeDef(BaseModel): + FilterVariable: Optional[DataSourceFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEvaluationsInputDescribeEvaluationsPaginateTypeDef(BaseModel): + FilterVariable: Optional[EvaluationFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMLModelsInputDescribeMLModelsPaginateTypeDef(BaseModel): + FilterVariable: Optional[MLModelFilterVariableType] = None + EQ: Optional[str] = None + GT: Optional[str] = None + LT: Optional[str] = None + GE: Optional[str] = None + LE: Optional[str] = None + NE: Optional[str] = None + Prefix: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class EvaluationTypeDef(BaseModel): + EvaluationId: Optional[str] = None + MLModelId: Optional[str] = None + EvaluationDataSourceId: Optional[str] = None + InputDataLocationS3: Optional[str] = None + CreatedByIamUser: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + Name: Optional[str] = None + Status: Optional[EntityStatusType] = None + PerformanceMetrics: Optional[PerformanceMetricsTypeDef] = None + Message: Optional[str] = None + ComputeTime: Optional[int] = None + FinishedAt: Optional[datetime] = None + StartedAt: Optional[datetime] = None + +class GetEvaluationOutputTypeDef(BaseModel): + EvaluationId: str + MLModelId: str + EvaluationDataSourceId: str + InputDataLocationS3: str + CreatedByIamUser: str + CreatedAt: datetime + LastUpdatedAt: datetime + Name: str + Status: EntityStatusType + PerformanceMetrics: PerformanceMetricsTypeDef + LogUri: str + Message: str + ComputeTime: int + FinishedAt: datetime + StartedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PredictOutputTypeDef(BaseModel): + Prediction: PredictionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RDSDataSpecTypeDef(BaseModel): + DatabaseInformation: RDSDatabaseTypeDef + SelectSqlQuery: str + DatabaseCredentials: RDSDatabaseCredentialsTypeDef + S3StagingLocation: str + ResourceRole: str + ServiceRole: str + SubnetId: str + SecurityGroupIds: Sequence[str] + DataRearrangement: Optional[str] = None + DataSchema: Optional[str] = None + DataSchemaUri: Optional[str] = None + +class RDSMetadataTypeDef(BaseModel): + Database: Optional[RDSDatabaseTypeDef] = None + DatabaseUserName: Optional[str] = None + SelectSqlQuery: Optional[str] = None + ResourceRole: Optional[str] = None + ServiceRole: Optional[str] = None + DataPipelineId: Optional[str] = None + +class RedshiftDataSpecTypeDef(BaseModel): + DatabaseInformation: RedshiftDatabaseTypeDef + SelectSqlQuery: str + DatabaseCredentials: RedshiftDatabaseCredentialsTypeDef + S3StagingLocation: str + DataRearrangement: Optional[str] = None + DataSchema: Optional[str] = None + DataSchemaUri: Optional[str] = None + +class RedshiftMetadataTypeDef(BaseModel): + RedshiftDatabase: Optional[RedshiftDatabaseTypeDef] = None + DatabaseUserName: Optional[str] = None + SelectSqlQuery: Optional[str] = None + +class DescribeMLModelsOutputTypeDef(BaseModel): + Results: List[MLModelTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEvaluationsOutputTypeDef(BaseModel): + Results: List[EvaluationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceFromRDSInputRequestTypeDef(BaseModel): + DataSourceId: str + RDSData: RDSDataSpecTypeDef + RoleARN: str + DataSourceName: Optional[str] = None + ComputeStatistics: Optional[bool] = None + +class CreateDataSourceFromRedshiftInputRequestTypeDef(BaseModel): + DataSourceId: str + DataSpec: RedshiftDataSpecTypeDef + RoleARN: str + DataSourceName: Optional[str] = None + ComputeStatistics: Optional[bool] = None + +class DataSourceTypeDef(BaseModel): + DataSourceId: Optional[str] = None + DataLocationS3: Optional[str] = None + DataRearrangement: Optional[str] = None + CreatedByIamUser: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + DataSizeInBytes: Optional[int] = None + NumberOfFiles: Optional[int] = None + Name: Optional[str] = None + Status: Optional[EntityStatusType] = None + Message: Optional[str] = None + RedshiftMetadata: Optional[RedshiftMetadataTypeDef] = None + RDSMetadata: Optional[RDSMetadataTypeDef] = None + RoleARN: Optional[str] = None + ComputeStatistics: Optional[bool] = None + ComputeTime: Optional[int] = None + FinishedAt: Optional[datetime] = None + StartedAt: Optional[datetime] = None + +class GetDataSourceOutputTypeDef(BaseModel): + DataSourceId: str + DataLocationS3: str + DataRearrangement: str + CreatedByIamUser: str + CreatedAt: datetime + LastUpdatedAt: datetime + DataSizeInBytes: int + NumberOfFiles: int + Name: str + Status: EntityStatusType + LogUri: str + Message: str + RedshiftMetadata: RedshiftMetadataTypeDef + RDSMetadata: RDSMetadataTypeDef + RoleARN: str + ComputeStatistics: bool + ComputeTime: int + FinishedAt: datetime + StartedAt: datetime + DataSourceSchema: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataSourcesOutputTypeDef(BaseModel): + Results: List[DataSourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/machinelearning_constants.py b/aws_resource_validator/pydantic_models/machinelearning_constants.py new file mode 100644 index 00000000..7f3f34f0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/machinelearning_constants.py @@ -0,0 +1,439 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlgorithmType = Literal["sgd"] +BatchPredictionAvailableWaiterName = Literal["batch_prediction_available"] +BatchPredictionFilterVariableType = Literal["CreatedAt", + "DataSourceId", + "DataURI", + "IAMUser", + "LastUpdatedAt", + "MLModelId", + "Name", + "Status",] +DataSourceAvailableWaiterName = Literal["data_source_available"] +DataSourceFilterVariableType = Literal["CreatedAt", "DataLocationS3", "IAMUser", "LastUpdatedAt", "Name", "Status"] +DescribeBatchPredictionsPaginatorName = Literal["describe_batch_predictions"] +DescribeDataSourcesPaginatorName = Literal["describe_data_sources"] +DescribeEvaluationsPaginatorName = Literal["describe_evaluations"] +DescribeMLModelsPaginatorName = Literal["describe_ml_models"] +DetailsAttributesType = Literal["Algorithm", "PredictiveModelType"] +EntityStatusType = Literal["COMPLETED", "DELETED", "FAILED", "INPROGRESS", "PENDING"] +EvaluationAvailableWaiterName = Literal["evaluation_available"] +EvaluationFilterVariableType = Literal["CreatedAt", + "DataSourceId", + "DataURI", + "IAMUser", + "LastUpdatedAt", + "MLModelId", + "Name", + "Status",] +MLModelAvailableWaiterName = Literal["ml_model_available"] +MLModelFilterVariableType = Literal["Algorithm", + "CreatedAt", + "IAMUser", + "LastUpdatedAt", + "MLModelType", + "Name", + "RealtimeEndpointStatus", + "Status", + "TrainingDataSourceId", + "TrainingDataURI",] +MLModelTypeType = Literal["BINARY", "MULTICLASS", "REGRESSION"] +RealtimeEndpointStatusType = Literal["FAILED", "NONE", "READY", "UPDATING"] +SortOrderType = Literal["asc", "dsc"] +TaggableResourceTypeType = Literal["BatchPrediction", "DataSource", "Evaluation", "MLModel"] +MachineLearningServiceName = Literal["machinelearning"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_batch_predictions", + "describe_data_sources", + "describe_evaluations", + "describe_ml_models",] +WaiterName = Literal["batch_prediction_available", + "data_source_available", + "evaluation_available", + "ml_model_available",] +RegionName = Literal["eu-west-1", "us-east-1"] diff --git a/aws_resource_validator/pydantic_models/macie2_classes.py b/aws_resource_validator/pydantic_models/macie2_classes.py new file mode 100644 index 00000000..4ff384d2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/macie2_classes.py @@ -0,0 +1,1577 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.macie2_constants import * + +class AcceptInvitationRequestRequestTypeDef(BaseModel): + invitationId: str + administratorAccountId: Optional[str] = None + masterAccount: Optional[str] = None + +class AccessControlListTypeDef(BaseModel): + allowsPublicReadAccess: Optional[bool] = None + allowsPublicWriteAccess: Optional[bool] = None + +class AccountDetailTypeDef(BaseModel): + accountId: str + email: str + +class BlockPublicAccessTypeDef(BaseModel): + blockPublicAcls: Optional[bool] = None + blockPublicPolicy: Optional[bool] = None + ignorePublicAcls: Optional[bool] = None + restrictPublicBuckets: Optional[bool] = None + +class AdminAccountTypeDef(BaseModel): + accountId: Optional[str] = None + status: Optional[AdminStatusType] = None + +class S3WordsListTypeDef(BaseModel): + bucketName: str + objectKey: str + +class AllowListStatusTypeDef(BaseModel): + code: AllowListStatusCodeType + description: Optional[str] = None + +class AllowListSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + updatedAt: Optional[datetime] = None + +class ApiCallDetailsTypeDef(BaseModel): + api: Optional[str] = None + apiServiceName: Optional[str] = None + firstSeen: Optional[datetime] = None + lastSeen: Optional[datetime] = None + +class AutomatedDiscoveryAccountTypeDef(BaseModel): + accountId: Optional[str] = None + status: Optional[AutomatedDiscoveryAccountStatusType] = None + +class AutomatedDiscoveryAccountUpdateErrorTypeDef(BaseModel): + accountId: Optional[str] = None + errorCode: Optional[AutomatedDiscoveryAccountUpdateErrorCodeType] = None + +class AutomatedDiscoveryAccountUpdateTypeDef(BaseModel): + accountId: Optional[str] = None + status: Optional[AutomatedDiscoveryAccountStatusType] = None + +class AwsAccountTypeDef(BaseModel): + accountId: Optional[str] = None + principalId: Optional[str] = None + +class AwsServiceTypeDef(BaseModel): + invokedBy: Optional[str] = None + +class BatchGetCustomDataIdentifierSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + deleted: Optional[bool] = None + description: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + +class BatchGetCustomDataIdentifiersRequestRequestTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BucketCountByEffectivePermissionTypeDef(BaseModel): + publiclyAccessible: Optional[int] = None + publiclyReadable: Optional[int] = None + publiclyWritable: Optional[int] = None + unknown: Optional[int] = None + +class BucketCountByEncryptionTypeTypeDef(BaseModel): + kmsManaged: Optional[int] = None + s3Managed: Optional[int] = None + unencrypted: Optional[int] = None + unknown: Optional[int] = None + +class BucketCountBySharedAccessTypeTypeDef(BaseModel): + external: Optional[int] = None + internal: Optional[int] = None + notShared: Optional[int] = None + unknown: Optional[int] = None + +class BucketCountPolicyAllowsUnencryptedObjectUploadsTypeDef(BaseModel): + allowsUnencryptedObjectUploads: Optional[int] = None + deniesUnencryptedObjectUploads: Optional[int] = None + unknown: Optional[int] = None + +class BucketCriteriaAdditionalPropertiesTypeDef(BaseModel): + eq: Optional[Sequence[str]] = None + gt: Optional[int] = None + gte: Optional[int] = None + lt: Optional[int] = None + lte: Optional[int] = None + neq: Optional[Sequence[str]] = None + prefix: Optional[str] = None + +class BucketPolicyTypeDef(BaseModel): + allowsPublicReadAccess: Optional[bool] = None + allowsPublicWriteAccess: Optional[bool] = None + +class BucketServerSideEncryptionTypeDef(BaseModel): + kmsMasterKeyId: Optional[str] = None + type: Optional[TypeType] = None + +class JobDetailsTypeDef(BaseModel): + isDefinedInJob: Optional[IsDefinedInJobType] = None + isMonitoredByJob: Optional[IsMonitoredByJobType] = None + lastJobId: Optional[str] = None + lastJobRunTime: Optional[datetime] = None + +class KeyValuePairTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class ObjectCountByEncryptionTypeTypeDef(BaseModel): + customerManaged: Optional[int] = None + kmsManaged: Optional[int] = None + s3Managed: Optional[int] = None + unencrypted: Optional[int] = None + unknown: Optional[int] = None + +class ObjectLevelStatisticsTypeDef(BaseModel): + fileType: Optional[int] = None + storageClass: Optional[int] = None + total: Optional[int] = None + +class ReplicationDetailsTypeDef(BaseModel): + replicated: Optional[bool] = None + replicatedExternally: Optional[bool] = None + replicationAccounts: Optional[List[str]] = None + +class BucketSortCriteriaTypeDef(BaseModel): + attributeName: Optional[str] = None + orderBy: Optional[OrderByType] = None + +class SensitivityAggregationsTypeDef(BaseModel): + classifiableSizeInBytes: Optional[int] = None + publiclyAccessibleCount: Optional[int] = None + totalCount: Optional[int] = None + totalSizeInBytes: Optional[int] = None + +class CellTypeDef(BaseModel): + cellReference: Optional[str] = None + column: Optional[int] = None + columnName: Optional[str] = None + row: Optional[int] = None + +class S3DestinationTypeDef(BaseModel): + bucketName: str + kmsKeyArn: str + keyPrefix: Optional[str] = None + +class ClassificationResultStatusTypeDef(BaseModel): + code: Optional[str] = None + reason: Optional[str] = None + +class ClassificationScopeSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class SeverityLevelTypeDef(BaseModel): + occurrencesThreshold: int + severity: DataIdentifierSeverityType + +class CreateInvitationsRequestRequestTypeDef(BaseModel): + accountIds: Sequence[str] + disableEmailNotification: Optional[bool] = None + message: Optional[str] = None + +class UnprocessedAccountTypeDef(BaseModel): + accountId: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + errorMessage: Optional[str] = None + +class CreateSampleFindingsRequestRequestTypeDef(BaseModel): + findingTypes: Optional[Sequence[FindingTypeType]] = None + +class SimpleCriterionForJobOutputTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[SimpleCriterionKeyForJobType] = None + values: Optional[List[str]] = None + +class SimpleCriterionForJobTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[SimpleCriterionKeyForJobType] = None + values: Optional[Sequence[str]] = None + +class CriterionAdditionalPropertiesOutputTypeDef(BaseModel): + eq: Optional[List[str]] = None + eqExactMatch: Optional[List[str]] = None + gt: Optional[int] = None + gte: Optional[int] = None + lt: Optional[int] = None + lte: Optional[int] = None + neq: Optional[List[str]] = None + +class CriterionAdditionalPropertiesTypeDef(BaseModel): + eq: Optional[Sequence[str]] = None + eqExactMatch: Optional[Sequence[str]] = None + gt: Optional[int] = None + gte: Optional[int] = None + lt: Optional[int] = None + lte: Optional[int] = None + neq: Optional[Sequence[str]] = None + +class CustomDataIdentifierSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + +class DeclineInvitationsRequestRequestTypeDef(BaseModel): + accountIds: Sequence[str] + +class DeleteAllowListRequestRequestTypeDef(BaseModel): + id: str + ignoreJobChecks: Optional[str] = None + +class DeleteCustomDataIdentifierRequestRequestTypeDef(BaseModel): + id: str + +class DeleteFindingsFilterRequestRequestTypeDef(BaseModel): + id: str + +class DeleteInvitationsRequestRequestTypeDef(BaseModel): + accountIds: Sequence[str] + +class DeleteMemberRequestRequestTypeDef(BaseModel): + id: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeClassificationJobRequestRequestTypeDef(BaseModel): + jobId: str + +class LastRunErrorStatusTypeDef(BaseModel): + code: Optional[LastRunErrorStatusCodeType] = None + +class StatisticsTypeDef(BaseModel): + approximateNumberOfObjectsToProcess: Optional[float] = None + numberOfRuns: Optional[float] = None + +class UserPausedDetailsTypeDef(BaseModel): + jobExpiresAt: Optional[datetime] = None + jobImminentExpirationHealthEventArn: Optional[str] = None + jobPausedAt: Optional[datetime] = None + +class DetectedDataDetailsTypeDef(BaseModel): + value: str + +class DetectionTypeDef(BaseModel): + arn: Optional[str] = None + count: Optional[int] = None + id: Optional[str] = None + name: Optional[str] = None + suppressed: Optional[bool] = None + type: Optional[DataIdentifierTypeType] = None + +class DisableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + adminAccountId: str + +class DisassociateMemberRequestRequestTypeDef(BaseModel): + id: str + +class DomainDetailsTypeDef(BaseModel): + domainName: Optional[str] = None + +class EnableMacieRequestRequestTypeDef(BaseModel): + clientToken: Optional[str] = None + findingPublishingFrequency: Optional[FindingPublishingFrequencyType] = None + status: Optional[MacieStatusType] = None + +class EnableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + adminAccountId: str + clientToken: Optional[str] = None + +class FindingStatisticsSortCriteriaTypeDef(BaseModel): + attributeName: Optional[FindingStatisticsSortAttributeNameType] = None + orderBy: Optional[OrderByType] = None + +class SeverityTypeDef(BaseModel): + description: Optional[SeverityDescriptionType] = None + score: Optional[int] = None + +class FindingsFilterListItemTypeDef(BaseModel): + action: Optional[FindingsFilterActionType] = None + arn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class InvitationTypeDef(BaseModel): + accountId: Optional[str] = None + invitationId: Optional[str] = None + invitedAt: Optional[datetime] = None + relationshipStatus: Optional[RelationshipStatusType] = None + +class GetAllowListRequestRequestTypeDef(BaseModel): + id: str + +class GetBucketStatisticsRequestRequestTypeDef(BaseModel): + accountId: Optional[str] = None + +class GetClassificationScopeRequestRequestTypeDef(BaseModel): + id: str + +class GetCustomDataIdentifierRequestRequestTypeDef(BaseModel): + id: str + +class GroupCountTypeDef(BaseModel): + count: Optional[int] = None + groupKey: Optional[str] = None + +class GetFindingsFilterRequestRequestTypeDef(BaseModel): + id: str + +class SecurityHubConfigurationTypeDef(BaseModel): + publishClassificationFindings: bool + publishPolicyFindings: bool + +class SortCriteriaTypeDef(BaseModel): + attributeName: Optional[str] = None + orderBy: Optional[OrderByType] = None + +class GetMemberRequestRequestTypeDef(BaseModel): + id: str + +class GetResourceProfileRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ResourceStatisticsTypeDef(BaseModel): + totalBytesClassified: Optional[int] = None + totalDetections: Optional[int] = None + totalDetectionsSuppressed: Optional[int] = None + totalItemsClassified: Optional[int] = None + totalItemsSensitive: Optional[int] = None + totalItemsSkipped: Optional[int] = None + totalItemsSkippedInvalidEncryption: Optional[int] = None + totalItemsSkippedInvalidKms: Optional[int] = None + totalItemsSkippedPermissionDenied: Optional[int] = None + +class RetrievalConfigurationTypeDef(BaseModel): + retrievalMode: RetrievalModeType + externalId: Optional[str] = None + roleName: Optional[str] = None + +class RevealConfigurationTypeDef(BaseModel): + status: RevealStatusType + kmsKeyId: Optional[str] = None + +class GetSensitiveDataOccurrencesAvailabilityRequestRequestTypeDef(BaseModel): + findingId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetSensitiveDataOccurrencesRequestRequestTypeDef(BaseModel): + findingId: str + +class GetSensitivityInspectionTemplateRequestRequestTypeDef(BaseModel): + id: str + +class SensitivityInspectionTemplateExcludesOutputTypeDef(BaseModel): + managedDataIdentifierIds: Optional[List[str]] = None + +class SensitivityInspectionTemplateIncludesOutputTypeDef(BaseModel): + allowListIds: Optional[List[str]] = None + customDataIdentifierIds: Optional[List[str]] = None + managedDataIdentifierIds: Optional[List[str]] = None + +class UsageStatisticsFilterTypeDef(BaseModel): + comparator: Optional[UsageStatisticsFilterComparatorType] = None + key: Optional[UsageStatisticsFilterKeyType] = None + values: Optional[Sequence[str]] = None + +class UsageStatisticsSortByTypeDef(BaseModel): + key: Optional[UsageStatisticsSortKeyType] = None + orderBy: Optional[OrderByType] = None + +class GetUsageTotalsRequestRequestTypeDef(BaseModel): + timeRange: Optional[str] = None + +class UsageTotalTypeDef(BaseModel): + currency: Optional[Literal["USD"]] = None + estimatedCost: Optional[str] = None + type: Optional[UsageTypeType] = None + +class IamUserTypeDef(BaseModel): + accountId: Optional[str] = None + arn: Optional[str] = None + principalId: Optional[str] = None + userName: Optional[str] = None + +class IpCityTypeDef(BaseModel): + name: Optional[str] = None + +class IpCountryTypeDef(BaseModel): + code: Optional[str] = None + name: Optional[str] = None + +class IpGeoLocationTypeDef(BaseModel): + lat: Optional[float] = None + lon: Optional[float] = None + +class IpOwnerTypeDef(BaseModel): + asn: Optional[str] = None + asnOrg: Optional[str] = None + isp: Optional[str] = None + org: Optional[str] = None + +class MonthlyScheduleTypeDef(BaseModel): + dayOfMonth: Optional[int] = None + +class WeeklyScheduleTypeDef(BaseModel): + dayOfWeek: Optional[DayOfWeekType] = None + +class SimpleScopeTermOutputTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[ScopeFilterKeyType] = None + values: Optional[List[str]] = None + +class SimpleScopeTermTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[ScopeFilterKeyType] = None + values: Optional[Sequence[str]] = None + +class S3BucketDefinitionForJobOutputTypeDef(BaseModel): + accountId: str + buckets: List[str] + +class ListAllowListsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAutomatedDiscoveryAccountsRequestRequestTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobsSortCriteriaTypeDef(BaseModel): + attributeName: Optional[ListJobsSortAttributeNameType] = None + orderBy: Optional[OrderByType] = None + +class ListClassificationScopesRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + nextToken: Optional[str] = None + +class ListCustomDataIdentifiersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListFindingsFiltersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListInvitationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListJobsFilterTermTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[ListJobsFilterKeyType] = None + values: Optional[Sequence[str]] = None + +class ListManagedDataIdentifiersRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ManagedDataIdentifierSummaryTypeDef(BaseModel): + category: Optional[SensitiveDataItemCategoryType] = None + id: Optional[str] = None + +class ListMembersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + onlyAssociated: Optional[str] = None + +class MemberTypeDef(BaseModel): + accountId: Optional[str] = None + administratorAccountId: Optional[str] = None + arn: Optional[str] = None + email: Optional[str] = None + invitedAt: Optional[datetime] = None + masterAccountId: Optional[str] = None + relationshipStatus: Optional[RelationshipStatusType] = None + tags: Optional[Dict[str, str]] = None + updatedAt: Optional[datetime] = None + +class ListOrganizationAdminAccountsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListResourceProfileArtifactsRequestRequestTypeDef(BaseModel): + resourceArn: str + nextToken: Optional[str] = None + +class ResourceProfileArtifactTypeDef(BaseModel): + arn: str + classificationResultStatus: str + sensitive: Optional[bool] = None + +class ListResourceProfileDetectionsRequestRequestTypeDef(BaseModel): + resourceArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSensitivityInspectionTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SensitivityInspectionTemplatesEntryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RangeTypeDef(BaseModel): + end: Optional[int] = None + start: Optional[int] = None + startColumn: Optional[int] = None + +class RecordTypeDef(BaseModel): + jsonPath: Optional[str] = None + recordIndex: Optional[int] = None + +class S3BucketDefinitionForJobTypeDef(BaseModel): + accountId: str + buckets: Sequence[str] + +class S3BucketOwnerTypeDef(BaseModel): + displayName: Optional[str] = None + id: Optional[str] = None + +class ServerSideEncryptionTypeDef(BaseModel): + encryptionType: Optional[EncryptionTypeType] = None + kmsMasterKeyId: Optional[str] = None + +class S3ClassificationScopeExclusionTypeDef(BaseModel): + bucketNames: List[str] + +class S3ClassificationScopeExclusionUpdateTypeDef(BaseModel): + bucketNames: Sequence[str] + operation: ClassificationScopeUpdateOperationType + +class SearchResourcesSimpleCriterionTypeDef(BaseModel): + comparator: Optional[SearchResourcesComparatorType] = None + key: Optional[SearchResourcesSimpleCriterionKeyType] = None + values: Optional[Sequence[str]] = None + +class SearchResourcesSortCriteriaTypeDef(BaseModel): + attributeName: Optional[SearchResourcesSortAttributeNameType] = None + orderBy: Optional[OrderByType] = None + +class SearchResourcesTagCriterionPairTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class SensitivityInspectionTemplateExcludesTypeDef(BaseModel): + managedDataIdentifierIds: Optional[Sequence[str]] = None + +class SensitivityInspectionTemplateIncludesTypeDef(BaseModel): + allowListIds: Optional[Sequence[str]] = None + customDataIdentifierIds: Optional[Sequence[str]] = None + managedDataIdentifierIds: Optional[Sequence[str]] = None + +class ServiceLimitTypeDef(BaseModel): + isServiceLimited: Optional[bool] = None + unit: Optional[Literal["TERABYTES"]] = None + value: Optional[int] = None + +class SessionContextAttributesTypeDef(BaseModel): + creationDate: Optional[datetime] = None + mfaAuthenticated: Optional[bool] = None + +class SessionIssuerTypeDef(BaseModel): + accountId: Optional[str] = None + arn: Optional[str] = None + principalId: Optional[str] = None + type: Optional[str] = None + userName: Optional[str] = None + +class SuppressDataIdentifierTypeDef(BaseModel): + id: Optional[str] = None + type: Optional[DataIdentifierTypeType] = None + +class TagCriterionPairForJobTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TagValuePairTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class TestCustomDataIdentifierRequestRequestTypeDef(BaseModel): + regex: str + sampleText: str + ignoreWords: Optional[Sequence[str]] = None + keywords: Optional[Sequence[str]] = None + maximumMatchDistance: Optional[int] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAutomatedDiscoveryConfigurationRequestRequestTypeDef(BaseModel): + status: AutomatedDiscoveryStatusType + autoEnableOrganizationMembers: Optional[AutoEnableModeType] = None + +class UpdateClassificationJobRequestRequestTypeDef(BaseModel): + jobId: str + jobStatus: JobStatusType + +class UpdateMacieSessionRequestRequestTypeDef(BaseModel): + findingPublishingFrequency: Optional[FindingPublishingFrequencyType] = None + status: Optional[MacieStatusType] = None + +class UpdateMemberSessionRequestRequestTypeDef(BaseModel): + id: str + status: MacieStatusType + +class UpdateOrganizationConfigurationRequestRequestTypeDef(BaseModel): + autoEnable: bool + +class UpdateResourceProfileRequestRequestTypeDef(BaseModel): + resourceArn: str + sensitivityScoreOverride: Optional[int] = None + +class UpdateRetrievalConfigurationTypeDef(BaseModel): + retrievalMode: RetrievalModeType + roleName: Optional[str] = None + +class UserIdentityRootTypeDef(BaseModel): + accountId: Optional[str] = None + arn: Optional[str] = None + principalId: Optional[str] = None + +class CreateMemberRequestRequestTypeDef(BaseModel): + account: AccountDetailTypeDef + tags: Optional[Mapping[str, str]] = None + +class AccountLevelPermissionsTypeDef(BaseModel): + blockPublicAccess: Optional[BlockPublicAccessTypeDef] = None + +class AllowListCriteriaTypeDef(BaseModel): + regex: Optional[str] = None + s3WordsList: Optional[S3WordsListTypeDef] = None + +class FindingActionTypeDef(BaseModel): + actionType: Optional[Literal["AWS_API_CALL"]] = None + apiCallDetails: Optional[ApiCallDetailsTypeDef] = None + +class BatchUpdateAutomatedDiscoveryAccountsRequestRequestTypeDef(BaseModel): + accounts: Optional[Sequence[AutomatedDiscoveryAccountUpdateTypeDef]] = None + +class BatchGetCustomDataIdentifiersResponseTypeDef(BaseModel): + customDataIdentifiers: List[BatchGetCustomDataIdentifierSummaryTypeDef] + notFoundIdentifierIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateAutomatedDiscoveryAccountsResponseTypeDef(BaseModel): + errors: List[AutomatedDiscoveryAccountUpdateErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAllowListResponseTypeDef(BaseModel): + arn: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClassificationJobResponseTypeDef(BaseModel): + jobArn: str + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomDataIdentifierResponseTypeDef(BaseModel): + customDataIdentifierId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFindingsFilterResponseTypeDef(BaseModel): + arn: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMemberResponseTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationConfigurationResponseTypeDef(BaseModel): + autoEnable: bool + maxAccountLimitReached: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetAutomatedDiscoveryConfigurationResponseTypeDef(BaseModel): + autoEnableOrganizationMembers: AutoEnableModeType + classificationScopeId: str + disabledAt: datetime + firstEnabledAt: datetime + lastUpdatedAt: datetime + sensitivityInspectionTemplateId: str + status: AutomatedDiscoveryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetInvitationsCountResponseTypeDef(BaseModel): + invitationsCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetMacieSessionResponseTypeDef(BaseModel): + createdAt: datetime + findingPublishingFrequency: FindingPublishingFrequencyType + serviceRole: str + status: MacieStatusType + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetMemberResponseTypeDef(BaseModel): + accountId: str + administratorAccountId: str + arn: str + email: str + invitedAt: datetime + masterAccountId: str + relationshipStatus: RelationshipStatusType + tags: Dict[str, str] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetSensitiveDataOccurrencesAvailabilityResponseTypeDef(BaseModel): + code: AvailabilityCodeType + reasons: List[UnavailabilityReasonCodeType] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAllowListsResponseTypeDef(BaseModel): + allowLists: List[AllowListSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAutomatedDiscoveryAccountsResponseTypeDef(BaseModel): + items: List[AutomatedDiscoveryAccountTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFindingsResponseTypeDef(BaseModel): + findingIds: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationAdminAccountsResponseTypeDef(BaseModel): + adminAccounts: List[AdminAccountTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class TestCustomDataIdentifierResponseTypeDef(BaseModel): + matchCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAllowListResponseTypeDef(BaseModel): + arn: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFindingsFilterResponseTypeDef(BaseModel): + arn: str + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class BucketLevelPermissionsTypeDef(BaseModel): + accessControlList: Optional[AccessControlListTypeDef] = None + blockPublicAccess: Optional[BlockPublicAccessTypeDef] = None + bucketPolicy: Optional[BucketPolicyTypeDef] = None + +class MatchingBucketTypeDef(BaseModel): + accountId: Optional[str] = None + automatedDiscoveryMonitoringStatus: Optional[AutomatedDiscoveryMonitoringStatusType] = None + bucketName: Optional[str] = None + classifiableObjectCount: Optional[int] = None + classifiableSizeInBytes: Optional[int] = None + errorCode: Optional[Literal["ACCESS_DENIED"]] = None + errorMessage: Optional[str] = None + jobDetails: Optional[JobDetailsTypeDef] = None + lastAutomatedDiscoveryTime: Optional[datetime] = None + objectCount: Optional[int] = None + objectCountByEncryptionType: Optional[ObjectCountByEncryptionTypeTypeDef] = None + sensitivityScore: Optional[int] = None + sizeInBytes: Optional[int] = None + sizeInBytesCompressed: Optional[int] = None + unclassifiableObjectCount: Optional[ObjectLevelStatisticsTypeDef] = None + unclassifiableObjectSizeInBytes: Optional[ObjectLevelStatisticsTypeDef] = None + +class DescribeBucketsRequestRequestTypeDef(BaseModel): + criteria: Optional[Mapping[str, BucketCriteriaAdditionalPropertiesTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortCriteria: Optional[BucketSortCriteriaTypeDef] = None + +class BucketStatisticsBySensitivityTypeDef(BaseModel): + classificationError: Optional[SensitivityAggregationsTypeDef] = None + notClassified: Optional[SensitivityAggregationsTypeDef] = None + notSensitive: Optional[SensitivityAggregationsTypeDef] = None + sensitive: Optional[SensitivityAggregationsTypeDef] = None + +class ClassificationExportConfigurationTypeDef(BaseModel): + s3Destination: Optional[S3DestinationTypeDef] = None + +class ListClassificationScopesResponseTypeDef(BaseModel): + classificationScopes: List[ClassificationScopeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomDataIdentifierRequestRequestTypeDef(BaseModel): + name: str + regex: str + clientToken: Optional[str] = None + description: Optional[str] = None + ignoreWords: Optional[Sequence[str]] = None + keywords: Optional[Sequence[str]] = None + maximumMatchDistance: Optional[int] = None + severityLevels: Optional[Sequence[SeverityLevelTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + +class GetCustomDataIdentifierResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + deleted: bool + description: str + id: str + ignoreWords: List[str] + keywords: List[str] + maximumMatchDistance: int + name: str + regex: str + severityLevels: List[SeverityLevelTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInvitationsResponseTypeDef(BaseModel): + unprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeclineInvitationsResponseTypeDef(BaseModel): + unprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInvitationsResponseTypeDef(BaseModel): + unprocessedAccounts: List[UnprocessedAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FindingCriteriaOutputTypeDef(BaseModel): + criterion: Optional[Dict[str, CriterionAdditionalPropertiesOutputTypeDef]] = None + +class FindingCriteriaTypeDef(BaseModel): + criterion: Optional[Mapping[str, CriterionAdditionalPropertiesTypeDef]] = None + +class ListCustomDataIdentifiersResponseTypeDef(BaseModel): + items: List[CustomDataIdentifierSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBucketsRequestDescribeBucketsPaginateTypeDef(BaseModel): + criteria: Optional[Mapping[str, BucketCriteriaAdditionalPropertiesTypeDef]] = None + sortCriteria: Optional[BucketSortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAllowListsRequestListAllowListsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAutomatedDiscoveryAccountsRequestListAutomatedDiscoveryAccountsPaginateTypeDef(BaseModel): + accountIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClassificationScopesRequestListClassificationScopesPaginateTypeDef(BaseModel): + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomDataIdentifiersRequestListCustomDataIdentifiersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsFiltersRequestListFindingsFiltersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInvitationsRequestListInvitationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedDataIdentifiersRequestListManagedDataIdentifiersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembersRequestListMembersPaginateTypeDef(BaseModel): + onlyAssociated: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationAdminAccountsRequestListOrganizationAdminAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceProfileArtifactsRequestListResourceProfileArtifactsPaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceProfileDetectionsRequestListResourceProfileDetectionsPaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSensitivityInspectionTemplatesRequestListSensitivityInspectionTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSensitiveDataOccurrencesResponseTypeDef(BaseModel): + error: str + sensitiveDataOccurrences: Dict[str, List[DetectedDataDetailsTypeDef]] + status: RevealRequestStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceProfileDetectionsResponseTypeDef(BaseModel): + detections: List[DetectionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFindingsFiltersResponseTypeDef(BaseModel): + findingsFilterListItems: List[FindingsFilterListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAdministratorAccountResponseTypeDef(BaseModel): + administrator: InvitationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMasterAccountResponseTypeDef(BaseModel): + master: InvitationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInvitationsResponseTypeDef(BaseModel): + invitations: List[InvitationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingStatisticsResponseTypeDef(BaseModel): + countsByGroup: List[GroupCountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingsPublicationConfigurationResponseTypeDef(BaseModel): + securityHubConfiguration: SecurityHubConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutFindingsPublicationConfigurationRequestRequestTypeDef(BaseModel): + clientToken: Optional[str] = None + securityHubConfiguration: Optional[SecurityHubConfigurationTypeDef] = None + +class GetFindingsRequestRequestTypeDef(BaseModel): + findingIds: Sequence[str] + sortCriteria: Optional[SortCriteriaTypeDef] = None + +class GetResourceProfileResponseTypeDef(BaseModel): + profileUpdatedAt: datetime + sensitivityScore: int + sensitivityScoreOverridden: bool + statistics: ResourceStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRevealConfigurationResponseTypeDef(BaseModel): + configuration: RevealConfigurationTypeDef + retrievalConfiguration: RetrievalConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRevealConfigurationResponseTypeDef(BaseModel): + configuration: RevealConfigurationTypeDef + retrievalConfiguration: RetrievalConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSensitiveDataOccurrencesRequestFindingRevealedWaitTypeDef(BaseModel): + findingId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetSensitivityInspectionTemplateResponseTypeDef(BaseModel): + description: str + excludes: SensitivityInspectionTemplateExcludesOutputTypeDef + includes: SensitivityInspectionTemplateIncludesOutputTypeDef + name: str + sensitivityInspectionTemplateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetUsageStatisticsRequestGetUsageStatisticsPaginateTypeDef(BaseModel): + filterBy: Optional[Sequence[UsageStatisticsFilterTypeDef]] = None + sortBy: Optional[UsageStatisticsSortByTypeDef] = None + timeRange: Optional[TimeRangeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetUsageStatisticsRequestRequestTypeDef(BaseModel): + filterBy: Optional[Sequence[UsageStatisticsFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[UsageStatisticsSortByTypeDef] = None + timeRange: Optional[TimeRangeType] = None + +class GetUsageTotalsResponseTypeDef(BaseModel): + timeRange: TimeRangeType + usageTotals: List[UsageTotalTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IpAddressDetailsTypeDef(BaseModel): + ipAddressV4: Optional[str] = None + ipCity: Optional[IpCityTypeDef] = None + ipCountry: Optional[IpCountryTypeDef] = None + ipGeoLocation: Optional[IpGeoLocationTypeDef] = None + ipOwner: Optional[IpOwnerTypeDef] = None + +class JobScheduleFrequencyOutputTypeDef(BaseModel): + dailySchedule: Optional[Dict[str, Any]] = None + monthlySchedule: Optional[MonthlyScheduleTypeDef] = None + weeklySchedule: Optional[WeeklyScheduleTypeDef] = None + +class JobScheduleFrequencyTypeDef(BaseModel): + dailySchedule: Optional[Mapping[str, Any]] = None + monthlySchedule: Optional[MonthlyScheduleTypeDef] = None + weeklySchedule: Optional[WeeklyScheduleTypeDef] = None + +class ListJobsFilterCriteriaTypeDef(BaseModel): + excludes: Optional[Sequence[ListJobsFilterTermTypeDef]] = None + includes: Optional[Sequence[ListJobsFilterTermTypeDef]] = None + +class ListManagedDataIdentifiersResponseTypeDef(BaseModel): + items: List[ManagedDataIdentifierSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMembersResponseTypeDef(BaseModel): + members: List[MemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceProfileArtifactsResponseTypeDef(BaseModel): + artifacts: List[ResourceProfileArtifactTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSensitivityInspectionTemplatesResponseTypeDef(BaseModel): + nextToken: str + sensitivityInspectionTemplates: List[SensitivityInspectionTemplatesEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PageTypeDef(BaseModel): + lineRange: Optional[RangeTypeDef] = None + offsetRange: Optional[RangeTypeDef] = None + pageNumber: Optional[int] = None + +class S3ObjectTypeDef(BaseModel): + bucketArn: Optional[str] = None + eTag: Optional[str] = None + extension: Optional[str] = None + key: Optional[str] = None + lastModified: Optional[datetime] = None + path: Optional[str] = None + publicAccess: Optional[bool] = None + serverSideEncryption: Optional[ServerSideEncryptionTypeDef] = None + size: Optional[int] = None + storageClass: Optional[StorageClassType] = None + tags: Optional[List[KeyValuePairTypeDef]] = None + versionId: Optional[str] = None + +class S3ClassificationScopeTypeDef(BaseModel): + excludes: S3ClassificationScopeExclusionTypeDef + +class S3ClassificationScopeUpdateTypeDef(BaseModel): + excludes: S3ClassificationScopeExclusionUpdateTypeDef + +class SearchResourcesTagCriterionTypeDef(BaseModel): + comparator: Optional[SearchResourcesComparatorType] = None + tagValues: Optional[Sequence[SearchResourcesTagCriterionPairTypeDef]] = None + +class UpdateSensitivityInspectionTemplateRequestRequestTypeDef(BaseModel): + id: str + description: Optional[str] = None + excludes: Optional[SensitivityInspectionTemplateExcludesTypeDef] = None + includes: Optional[SensitivityInspectionTemplateIncludesTypeDef] = None + +class UsageByAccountTypeDef(BaseModel): + currency: Optional[Literal["USD"]] = None + estimatedCost: Optional[str] = None + serviceLimit: Optional[ServiceLimitTypeDef] = None + type: Optional[UsageTypeType] = None + +class SessionContextTypeDef(BaseModel): + attributes: Optional[SessionContextAttributesTypeDef] = None + sessionIssuer: Optional[SessionIssuerTypeDef] = None + +class UpdateResourceProfileDetectionsRequestRequestTypeDef(BaseModel): + resourceArn: str + suppressDataIdentifiers: Optional[Sequence[SuppressDataIdentifierTypeDef]] = None + +class TagCriterionForJobOutputTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + tagValues: Optional[List[TagCriterionPairForJobTypeDef]] = None + +class TagCriterionForJobTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + tagValues: Optional[Sequence[TagCriterionPairForJobTypeDef]] = None + +class TagScopeTermOutputTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[str] = None + tagValues: Optional[List[TagValuePairTypeDef]] = None + target: Optional[Literal["S3_OBJECT"]] = None + +class TagScopeTermTypeDef(BaseModel): + comparator: Optional[JobComparatorType] = None + key: Optional[str] = None + tagValues: Optional[Sequence[TagValuePairTypeDef]] = None + target: Optional[Literal["S3_OBJECT"]] = None + +class UpdateRevealConfigurationRequestRequestTypeDef(BaseModel): + configuration: RevealConfigurationTypeDef + retrievalConfiguration: Optional[UpdateRetrievalConfigurationTypeDef] = None + +class CreateAllowListRequestRequestTypeDef(BaseModel): + clientToken: str + criteria: AllowListCriteriaTypeDef + name: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetAllowListResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + criteria: AllowListCriteriaTypeDef + description: str + id: str + name: str + status: AllowListStatusTypeDef + tags: Dict[str, str] + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAllowListRequestRequestTypeDef(BaseModel): + criteria: AllowListCriteriaTypeDef + id: str + name: str + description: Optional[str] = None + +class BucketPermissionConfigurationTypeDef(BaseModel): + accountLevelPermissions: Optional[AccountLevelPermissionsTypeDef] = None + bucketLevelPermissions: Optional[BucketLevelPermissionsTypeDef] = None + +class MatchingResourceTypeDef(BaseModel): + matchingBucket: Optional[MatchingBucketTypeDef] = None + +class GetBucketStatisticsResponseTypeDef(BaseModel): + bucketCount: int + bucketCountByEffectivePermission: BucketCountByEffectivePermissionTypeDef + bucketCountByEncryptionType: BucketCountByEncryptionTypeTypeDef + bucketCountByObjectEncryptionRequirement: BucketCountPolicyAllowsUnencryptedObjectUploadsTypeDef + bucketCountBySharedAccessType: BucketCountBySharedAccessTypeTypeDef + bucketStatisticsBySensitivity: BucketStatisticsBySensitivityTypeDef + classifiableObjectCount: int + classifiableSizeInBytes: int + lastUpdated: datetime + objectCount: int + sizeInBytes: int + sizeInBytesCompressed: int + unclassifiableObjectCount: ObjectLevelStatisticsTypeDef + unclassifiableObjectSizeInBytes: ObjectLevelStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetClassificationExportConfigurationResponseTypeDef(BaseModel): + configuration: ClassificationExportConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutClassificationExportConfigurationRequestRequestTypeDef(BaseModel): + configuration: ClassificationExportConfigurationTypeDef + +class PutClassificationExportConfigurationResponseTypeDef(BaseModel): + configuration: ClassificationExportConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingsFilterResponseTypeDef(BaseModel): + action: FindingsFilterActionType + arn: str + description: str + findingCriteria: FindingCriteriaOutputTypeDef + id: str + name: str + position: int + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFindingsFilterRequestRequestTypeDef(BaseModel): + action: FindingsFilterActionType + findingCriteria: FindingCriteriaTypeDef + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + position: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class GetFindingStatisticsRequestRequestTypeDef(BaseModel): + groupBy: GroupByType + findingCriteria: Optional[FindingCriteriaTypeDef] = None + size: Optional[int] = None + sortCriteria: Optional[FindingStatisticsSortCriteriaTypeDef] = None + +class ListFindingsRequestListFindingsPaginateTypeDef(BaseModel): + findingCriteria: Optional[FindingCriteriaTypeDef] = None + sortCriteria: Optional[SortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingsRequestRequestTypeDef(BaseModel): + findingCriteria: Optional[FindingCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortCriteria: Optional[SortCriteriaTypeDef] = None + +class UpdateFindingsFilterRequestRequestTypeDef(BaseModel): + id: str + action: Optional[FindingsFilterActionType] = None + clientToken: Optional[str] = None + description: Optional[str] = None + findingCriteria: Optional[FindingCriteriaTypeDef] = None + name: Optional[str] = None + position: Optional[int] = None + +class ListClassificationJobsRequestListClassificationJobsPaginateTypeDef(BaseModel): + filterCriteria: Optional[ListJobsFilterCriteriaTypeDef] = None + sortCriteria: Optional[ListJobsSortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClassificationJobsRequestRequestTypeDef(BaseModel): + filterCriteria: Optional[ListJobsFilterCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortCriteria: Optional[ListJobsSortCriteriaTypeDef] = None + +class OccurrencesTypeDef(BaseModel): + cells: Optional[List[CellTypeDef]] = None + lineRanges: Optional[List[RangeTypeDef]] = None + offsetRanges: Optional[List[RangeTypeDef]] = None + pages: Optional[List[PageTypeDef]] = None + records: Optional[List[RecordTypeDef]] = None + +class GetClassificationScopeResponseTypeDef(BaseModel): + id: str + name: str + s3: S3ClassificationScopeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClassificationScopeRequestRequestTypeDef(BaseModel): + id: str + s3: Optional[S3ClassificationScopeUpdateTypeDef] = None + +class SearchResourcesCriteriaTypeDef(BaseModel): + simpleCriterion: Optional[SearchResourcesSimpleCriterionTypeDef] = None + tagCriterion: Optional[SearchResourcesTagCriterionTypeDef] = None + +class UsageRecordTypeDef(BaseModel): + accountId: Optional[str] = None + automatedDiscoveryFreeTrialStartDate: Optional[datetime] = None + freeTrialStartDate: Optional[datetime] = None + usage: Optional[List[UsageByAccountTypeDef]] = None + +class AssumedRoleTypeDef(BaseModel): + accessKeyId: Optional[str] = None + accountId: Optional[str] = None + arn: Optional[str] = None + principalId: Optional[str] = None + sessionContext: Optional[SessionContextTypeDef] = None + +class FederatedUserTypeDef(BaseModel): + accessKeyId: Optional[str] = None + accountId: Optional[str] = None + arn: Optional[str] = None + principalId: Optional[str] = None + sessionContext: Optional[SessionContextTypeDef] = None + +class CriteriaForJobOutputTypeDef(BaseModel): + simpleCriterion: Optional[SimpleCriterionForJobOutputTypeDef] = None + tagCriterion: Optional[TagCriterionForJobOutputTypeDef] = None + +class CriteriaForJobTypeDef(BaseModel): + simpleCriterion: Optional[SimpleCriterionForJobTypeDef] = None + tagCriterion: Optional[TagCriterionForJobTypeDef] = None + +class JobScopeTermOutputTypeDef(BaseModel): + simpleScopeTerm: Optional[SimpleScopeTermOutputTypeDef] = None + tagScopeTerm: Optional[TagScopeTermOutputTypeDef] = None + +class JobScopeTermTypeDef(BaseModel): + simpleScopeTerm: Optional[SimpleScopeTermTypeDef] = None + tagScopeTerm: Optional[TagScopeTermTypeDef] = None + +class BucketPublicAccessTypeDef(BaseModel): + effectivePermission: Optional[EffectivePermissionType] = None + permissionConfiguration: Optional[BucketPermissionConfigurationTypeDef] = None + +class SearchResourcesResponseTypeDef(BaseModel): + matchingResources: List[MatchingResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CustomDetectionTypeDef(BaseModel): + arn: Optional[str] = None + count: Optional[int] = None + name: Optional[str] = None + occurrences: Optional[OccurrencesTypeDef] = None + +class DefaultDetectionTypeDef(BaseModel): + count: Optional[int] = None + occurrences: Optional[OccurrencesTypeDef] = None + type: Optional[str] = None + +class SearchResourcesCriteriaBlockTypeDef(BaseModel): + and: Optional[Sequence[SearchResourcesCriteriaTypeDef]] = None + +class GetUsageStatisticsResponseTypeDef(BaseModel): + nextToken: str + records: List[UsageRecordTypeDef] + timeRange: TimeRangeType + ResponseMetadata: ResponseMetadataTypeDef + +class UserIdentityTypeDef(BaseModel): + assumedRole: Optional[AssumedRoleTypeDef] = None + awsAccount: Optional[AwsAccountTypeDef] = None + awsService: Optional[AwsServiceTypeDef] = None + federatedUser: Optional[FederatedUserTypeDef] = None + iamUser: Optional[IamUserTypeDef] = None + root: Optional[UserIdentityRootTypeDef] = None + type: Optional[UserIdentityTypeType] = None + +class CriteriaBlockForJobOutputTypeDef(BaseModel): + and: Optional[List[CriteriaForJobOutputTypeDef]] = None + +class CriteriaBlockForJobTypeDef(BaseModel): + and: Optional[Sequence[CriteriaForJobTypeDef]] = None + +class JobScopingBlockOutputTypeDef(BaseModel): + and: Optional[List[JobScopeTermOutputTypeDef]] = None + +class JobScopingBlockTypeDef(BaseModel): + and: Optional[Sequence[JobScopeTermTypeDef]] = None + +class BucketMetadataTypeDef(BaseModel): + accountId: Optional[str] = None + allowsUnencryptedObjectUploads: Optional[AllowsUnencryptedObjectUploadsType] = None + automatedDiscoveryMonitoringStatus: Optional[AutomatedDiscoveryMonitoringStatusType] = None + bucketArn: Optional[str] = None + bucketCreatedAt: Optional[datetime] = None + bucketName: Optional[str] = None + classifiableObjectCount: Optional[int] = None + classifiableSizeInBytes: Optional[int] = None + errorCode: Optional[Literal["ACCESS_DENIED"]] = None + errorMessage: Optional[str] = None + jobDetails: Optional[JobDetailsTypeDef] = None + lastAutomatedDiscoveryTime: Optional[datetime] = None + lastUpdated: Optional[datetime] = None + objectCount: Optional[int] = None + objectCountByEncryptionType: Optional[ObjectCountByEncryptionTypeTypeDef] = None + publicAccess: Optional[BucketPublicAccessTypeDef] = None + region: Optional[str] = None + replicationDetails: Optional[ReplicationDetailsTypeDef] = None + sensitivityScore: Optional[int] = None + serverSideEncryption: Optional[BucketServerSideEncryptionTypeDef] = None + sharedAccess: Optional[SharedAccessType] = None + sizeInBytes: Optional[int] = None + sizeInBytesCompressed: Optional[int] = None + tags: Optional[List[KeyValuePairTypeDef]] = None + unclassifiableObjectCount: Optional[ObjectLevelStatisticsTypeDef] = None + unclassifiableObjectSizeInBytes: Optional[ObjectLevelStatisticsTypeDef] = None + versioning: Optional[bool] = None + +class S3BucketTypeDef(BaseModel): + allowsUnencryptedObjectUploads: Optional[AllowsUnencryptedObjectUploadsType] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + defaultServerSideEncryption: Optional[ServerSideEncryptionTypeDef] = None + name: Optional[str] = None + owner: Optional[S3BucketOwnerTypeDef] = None + publicAccess: Optional[BucketPublicAccessTypeDef] = None + tags: Optional[List[KeyValuePairTypeDef]] = None + +class CustomDataIdentifiersTypeDef(BaseModel): + detections: Optional[List[CustomDetectionTypeDef]] = None + totalCount: Optional[int] = None + +class SensitiveDataItemTypeDef(BaseModel): + category: Optional[SensitiveDataItemCategoryType] = None + detections: Optional[List[DefaultDetectionTypeDef]] = None + totalCount: Optional[int] = None + +class SearchResourcesBucketCriteriaTypeDef(BaseModel): + excludes: Optional[SearchResourcesCriteriaBlockTypeDef] = None + includes: Optional[SearchResourcesCriteriaBlockTypeDef] = None + +class FindingActorTypeDef(BaseModel): + domainDetails: Optional[DomainDetailsTypeDef] = None + ipAddressDetails: Optional[IpAddressDetailsTypeDef] = None + userIdentity: Optional[UserIdentityTypeDef] = None + +class S3BucketCriteriaForJobOutputTypeDef(BaseModel): + excludes: Optional[CriteriaBlockForJobOutputTypeDef] = None + includes: Optional[CriteriaBlockForJobOutputTypeDef] = None + +class S3BucketCriteriaForJobTypeDef(BaseModel): + excludes: Optional[CriteriaBlockForJobTypeDef] = None + includes: Optional[CriteriaBlockForJobTypeDef] = None + +class ScopingOutputTypeDef(BaseModel): + excludes: Optional[JobScopingBlockOutputTypeDef] = None + includes: Optional[JobScopingBlockOutputTypeDef] = None + +class ScopingTypeDef(BaseModel): + excludes: Optional[JobScopingBlockTypeDef] = None + includes: Optional[JobScopingBlockTypeDef] = None + +class DescribeBucketsResponseTypeDef(BaseModel): + buckets: List[BucketMetadataTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResourcesAffectedTypeDef(BaseModel): + s3Bucket: Optional[S3BucketTypeDef] = None + s3Object: Optional[S3ObjectTypeDef] = None + +class ClassificationResultTypeDef(BaseModel): + additionalOccurrences: Optional[bool] = None + customDataIdentifiers: Optional[CustomDataIdentifiersTypeDef] = None + mimeType: Optional[str] = None + sensitiveData: Optional[List[SensitiveDataItemTypeDef]] = None + sizeClassified: Optional[int] = None + status: Optional[ClassificationResultStatusTypeDef] = None + +class SearchResourcesRequestRequestTypeDef(BaseModel): + bucketCriteria: Optional[SearchResourcesBucketCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortCriteria: Optional[SearchResourcesSortCriteriaTypeDef] = None + +class SearchResourcesRequestSearchResourcesPaginateTypeDef(BaseModel): + bucketCriteria: Optional[SearchResourcesBucketCriteriaTypeDef] = None + sortCriteria: Optional[SearchResourcesSortCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PolicyDetailsTypeDef(BaseModel): + action: Optional[FindingActionTypeDef] = None + actor: Optional[FindingActorTypeDef] = None + +class JobSummaryTypeDef(BaseModel): + bucketCriteria: Optional[S3BucketCriteriaForJobOutputTypeDef] = None + bucketDefinitions: Optional[List[S3BucketDefinitionForJobOutputTypeDef]] = None + createdAt: Optional[datetime] = None + jobId: Optional[str] = None + jobStatus: Optional[JobStatusType] = None + jobType: Optional[JobTypeType] = None + lastRunErrorStatus: Optional[LastRunErrorStatusTypeDef] = None + name: Optional[str] = None + userPausedDetails: Optional[UserPausedDetailsTypeDef] = None + +class S3JobDefinitionOutputTypeDef(BaseModel): + bucketCriteria: Optional[S3BucketCriteriaForJobOutputTypeDef] = None + bucketDefinitions: Optional[List[S3BucketDefinitionForJobOutputTypeDef]] = None + scoping: Optional[ScopingOutputTypeDef] = None + +class S3JobDefinitionTypeDef(BaseModel): + bucketCriteria: Optional[S3BucketCriteriaForJobTypeDef] = None + bucketDefinitions: Optional[Sequence[S3BucketDefinitionForJobTypeDef]] = None + scoping: Optional[ScopingTypeDef] = None + +class ClassificationDetailsTypeDef(BaseModel): + detailedResultsLocation: Optional[str] = None + jobArn: Optional[str] = None + jobId: Optional[str] = None + originType: Optional[OriginTypeType] = None + result: Optional[ClassificationResultTypeDef] = None + +class ListClassificationJobsResponseTypeDef(BaseModel): + items: List[JobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClassificationJobResponseTypeDef(BaseModel): + allowListIds: List[str] + clientToken: str + createdAt: datetime + customDataIdentifierIds: List[str] + description: str + initialRun: bool + jobArn: str + jobId: str + jobStatus: JobStatusType + jobType: JobTypeType + lastRunErrorStatus: LastRunErrorStatusTypeDef + lastRunTime: datetime + managedDataIdentifierIds: List[str] + managedDataIdentifierSelector: ManagedDataIdentifierSelectorType + name: str + s3JobDefinition: S3JobDefinitionOutputTypeDef + samplingPercentage: int + scheduleFrequency: JobScheduleFrequencyOutputTypeDef + statistics: StatisticsTypeDef + tags: Dict[str, str] + userPausedDetails: UserPausedDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClassificationJobRequestRequestTypeDef(BaseModel): + clientToken: str + jobType: JobTypeType + name: str + s3JobDefinition: S3JobDefinitionTypeDef + allowListIds: Optional[Sequence[str]] = None + customDataIdentifierIds: Optional[Sequence[str]] = None + description: Optional[str] = None + initialRun: Optional[bool] = None + managedDataIdentifierIds: Optional[Sequence[str]] = None + managedDataIdentifierSelector: Optional[ManagedDataIdentifierSelectorType] = None + samplingPercentage: Optional[int] = None + scheduleFrequency: Optional[JobScheduleFrequencyTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class FindingTypeDef(BaseModel): + accountId: Optional[str] = None + archived: Optional[bool] = None + category: Optional[FindingCategoryType] = None + classificationDetails: Optional[ClassificationDetailsTypeDef] = None + count: Optional[int] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + id: Optional[str] = None + partition: Optional[str] = None + policyDetails: Optional[PolicyDetailsTypeDef] = None + region: Optional[str] = None + resourcesAffected: Optional[ResourcesAffectedTypeDef] = None + sample: Optional[bool] = None + schemaVersion: Optional[str] = None + severity: Optional[SeverityTypeDef] = None + title: Optional[str] = None + type: Optional[FindingTypeType] = None + updatedAt: Optional[datetime] = None + +class GetFindingsResponseTypeDef(BaseModel): + findings: List[FindingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/macie2_constants.py b/aws_resource_validator/pydantic_models/macie2_constants.py new file mode 100644 index 00000000..d33c8159 --- /dev/null +++ b/aws_resource_validator/pydantic_models/macie2_constants.py @@ -0,0 +1,573 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdminStatusType = Literal["DISABLING_IN_PROGRESS", "ENABLED"] +AllowListStatusCodeType = Literal["OK", + "S3_OBJECT_ACCESS_DENIED", + "S3_OBJECT_EMPTY", + "S3_OBJECT_NOT_FOUND", + "S3_OBJECT_OVERSIZE", + "S3_THROTTLED", + "S3_USER_ACCESS_DENIED", + "UNKNOWN_ERROR",] +AllowsUnencryptedObjectUploadsType = Literal["FALSE", "TRUE", "UNKNOWN"] +AutoEnableModeType = Literal["ALL", "NEW", "NONE"] +AutomatedDiscoveryAccountStatusType = Literal["DISABLED", "ENABLED"] +AutomatedDiscoveryAccountUpdateErrorCodeType = Literal["ACCOUNT_NOT_FOUND", "ACCOUNT_PAUSED"] +AutomatedDiscoveryMonitoringStatusType = Literal["MONITORED", "NOT_MONITORED"] +AutomatedDiscoveryStatusType = Literal["DISABLED", "ENABLED"] +AvailabilityCodeType = Literal["AVAILABLE", "UNAVAILABLE"] +BucketMetadataErrorCodeType = Literal["ACCESS_DENIED"] +ClassificationScopeUpdateOperationType = Literal["ADD", "REMOVE", "REPLACE"] +CurrencyType = Literal["USD"] +DataIdentifierSeverityType = Literal["HIGH", "LOW", "MEDIUM"] +DataIdentifierTypeType = Literal["CUSTOM", "MANAGED"] +DayOfWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DescribeBucketsPaginatorName = Literal["describe_buckets"] +EffectivePermissionType = Literal["NOT_PUBLIC", "PUBLIC", "UNKNOWN"] +EncryptionTypeType = Literal["AES256", "NONE", "UNKNOWN", "aws:kms", "aws:kms:dsse"] +ErrorCodeType = Literal["ClientError", "InternalError"] +FindingActionTypeType = Literal["AWS_API_CALL"] +FindingCategoryType = Literal["CLASSIFICATION", "POLICY"] +FindingPublishingFrequencyType = Literal["FIFTEEN_MINUTES", "ONE_HOUR", "SIX_HOURS"] +FindingRevealedWaiterName = Literal["finding_revealed"] +FindingStatisticsSortAttributeNameType = Literal["count", "groupKey"] +FindingTypeType = Literal["Policy:IAMUser/S3BlockPublicAccessDisabled", + "Policy:IAMUser/S3BucketEncryptionDisabled", + "Policy:IAMUser/S3BucketPublic", + "Policy:IAMUser/S3BucketReplicatedExternally", + "Policy:IAMUser/S3BucketSharedExternally", + "Policy:IAMUser/S3BucketSharedWithCloudFront", + "SensitiveData:S3Object/Credentials", + "SensitiveData:S3Object/CustomIdentifier", + "SensitiveData:S3Object/Financial", + "SensitiveData:S3Object/Multiple", + "SensitiveData:S3Object/Personal",] +FindingsFilterActionType = Literal["ARCHIVE", "NOOP"] +GetUsageStatisticsPaginatorName = Literal["get_usage_statistics"] +GroupByType = Literal["classificationDetails.jobId", "resourcesAffected.s3Bucket.name", "severity.description", "type"] +IsDefinedInJobType = Literal["FALSE", "TRUE", "UNKNOWN"] +IsMonitoredByJobType = Literal["FALSE", "TRUE", "UNKNOWN"] +JobComparatorType = Literal["CONTAINS", "EQ", "GT", "GTE", "LT", "LTE", "NE", "STARTS_WITH"] +JobStatusType = Literal["CANCELLED", "COMPLETE", "IDLE", "PAUSED", "RUNNING", "USER_PAUSED"] +JobTypeType = Literal["ONE_TIME", "SCHEDULED"] +LastRunErrorStatusCodeType = Literal["ERROR", "NONE"] +ListAllowListsPaginatorName = Literal["list_allow_lists"] +ListAutomatedDiscoveryAccountsPaginatorName = Literal["list_automated_discovery_accounts"] +ListClassificationJobsPaginatorName = Literal["list_classification_jobs"] +ListClassificationScopesPaginatorName = Literal["list_classification_scopes"] +ListCustomDataIdentifiersPaginatorName = Literal["list_custom_data_identifiers"] +ListFindingsFiltersPaginatorName = Literal["list_findings_filters"] +ListFindingsPaginatorName = Literal["list_findings"] +ListInvitationsPaginatorName = Literal["list_invitations"] +ListJobsFilterKeyType = Literal["createdAt", "jobStatus", "jobType", "name"] +ListJobsSortAttributeNameType = Literal["createdAt", "jobStatus", "jobType", "name"] +ListManagedDataIdentifiersPaginatorName = Literal["list_managed_data_identifiers"] +ListMembersPaginatorName = Literal["list_members"] +ListOrganizationAdminAccountsPaginatorName = Literal["list_organization_admin_accounts"] +ListResourceProfileArtifactsPaginatorName = Literal["list_resource_profile_artifacts"] +ListResourceProfileDetectionsPaginatorName = Literal["list_resource_profile_detections"] +ListSensitivityInspectionTemplatesPaginatorName = Literal["list_sensitivity_inspection_templates"] +MacieStatusType = Literal["ENABLED", "PAUSED"] +ManagedDataIdentifierSelectorType = Literal["ALL", "EXCLUDE", "INCLUDE", "NONE", "RECOMMENDED"] +OrderByType = Literal["ASC", "DESC"] +OriginTypeType = Literal["AUTOMATED_SENSITIVE_DATA_DISCOVERY", "SENSITIVE_DATA_DISCOVERY_JOB"] +RelationshipStatusType = Literal["AccountSuspended", + "Created", + "EmailVerificationFailed", + "EmailVerificationInProgress", + "Enabled", + "Invited", + "Paused", + "RegionDisabled", + "Removed", + "Resigned",] +RetrievalModeType = Literal["ASSUME_ROLE", "CALLER_CREDENTIALS"] +RevealRequestStatusType = Literal["ERROR", "PROCESSING", "SUCCESS"] +RevealStatusType = Literal["DISABLED", "ENABLED"] +ScopeFilterKeyType = Literal["OBJECT_EXTENSION", "OBJECT_KEY", "OBJECT_LAST_MODIFIED_DATE", "OBJECT_SIZE"] +SearchResourcesComparatorType = Literal["EQ", "NE"] +SearchResourcesPaginatorName = Literal["search_resources"] +SearchResourcesSimpleCriterionKeyType = Literal["ACCOUNT_ID", + "AUTOMATED_DISCOVERY_MONITORING_STATUS", + "S3_BUCKET_EFFECTIVE_PERMISSION", + "S3_BUCKET_NAME", + "S3_BUCKET_SHARED_ACCESS",] +SearchResourcesSortAttributeNameType = Literal["ACCOUNT_ID", "RESOURCE_NAME", "S3_CLASSIFIABLE_OBJECT_COUNT", "S3_CLASSIFIABLE_SIZE_IN_BYTES"] +SensitiveDataItemCategoryType = Literal["CREDENTIALS", "CUSTOM_IDENTIFIER", "FINANCIAL_INFORMATION", "PERSONAL_INFORMATION"] +SeverityDescriptionType = Literal["High", "Low", "Medium"] +SharedAccessType = Literal["EXTERNAL", "INTERNAL", "NOT_SHARED", "UNKNOWN"] +SimpleCriterionKeyForJobType = Literal["ACCOUNT_ID", "S3_BUCKET_EFFECTIVE_PERMISSION", "S3_BUCKET_NAME", "S3_BUCKET_SHARED_ACCESS"] +StorageClassType = Literal["DEEP_ARCHIVE", + "GLACIER", + "GLACIER_IR", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "OUTPOSTS", + "REDUCED_REDUNDANCY", + "STANDARD", + "STANDARD_IA",] +TagTargetType = Literal["S3_OBJECT"] +TimeRangeType = Literal["MONTH_TO_DATE", "PAST_30_DAYS"] +TypeType = Literal["AES256", "NONE", "aws:kms", "aws:kms:dsse"] +UnavailabilityReasonCodeType = Literal["ACCOUNT_NOT_IN_ORGANIZATION", + "INVALID_CLASSIFICATION_RESULT", + "INVALID_RESULT_SIGNATURE", + "MEMBER_ROLE_TOO_PERMISSIVE", + "MISSING_GET_MEMBER_PERMISSION", + "OBJECT_EXCEEDS_SIZE_QUOTA", + "OBJECT_UNAVAILABLE", + "RESULT_NOT_SIGNED", + "ROLE_TOO_PERMISSIVE", + "UNSUPPORTED_FINDING_TYPE", + "UNSUPPORTED_OBJECT_TYPE",] +UnitType = Literal["TERABYTES"] +UsageStatisticsFilterComparatorType = Literal["CONTAINS", "EQ", "GT", "GTE", "LT", "LTE", "NE"] +UsageStatisticsFilterKeyType = Literal["accountId", "freeTrialStartDate", "serviceLimit", "total"] +UsageStatisticsSortKeyType = Literal["accountId", "freeTrialStartDate", "serviceLimitValue", "total"] +UsageTypeType = Literal["AUTOMATED_OBJECT_MONITORING", + "AUTOMATED_SENSITIVE_DATA_DISCOVERY", + "DATA_INVENTORY_EVALUATION", + "SENSITIVE_DATA_DISCOVERY",] +UserIdentityTypeType = Literal["AWSAccount", "AWSService", "AssumedRole", "FederatedUser", "IAMUser", "Root"] +Macie2ServiceName = Literal["macie2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_buckets", + "get_usage_statistics", + "list_allow_lists", + "list_automated_discovery_accounts", + "list_classification_jobs", + "list_classification_scopes", + "list_custom_data_identifiers", + "list_findings", + "list_findings_filters", + "list_invitations", + "list_managed_data_identifiers", + "list_members", + "list_organization_admin_accounts", + "list_resource_profile_artifacts", + "list_resource_profile_detections", + "list_sensitivity_inspection_templates", + "search_resources",] +WaiterName = Literal["finding_revealed"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +SensitivityInspectionTemplateExcludesUnionTypeDef = Union[ 'SensitivityInspectionTemplateExcludesTypeDef', 'SensitivityInspectionTemplateExcludesOutputTypeDef' ] +SensitivityInspectionTemplateIncludesUnionTypeDef = Union[ 'SensitivityInspectionTemplateIncludesTypeDef', 'SensitivityInspectionTemplateIncludesOutputTypeDef' ] +FindingCriteriaUnionTypeDef = Union['FindingCriteriaTypeDef', 'FindingCriteriaOutputTypeDef'] +JobScheduleFrequencyUnionTypeDef = Union[ 'JobScheduleFrequencyTypeDef', 'JobScheduleFrequencyOutputTypeDef' ] +S3JobDefinitionUnionTypeDef = Union['S3JobDefinitionTypeDef', 'S3JobDefinitionOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/mailmanager_classes.py b/aws_resource_validator/pydantic_models/mailmanager_classes.py new file mode 100644 index 00000000..78a776e5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mailmanager_classes.py @@ -0,0 +1,813 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mailmanager_constants import * + +class AddHeaderActionTypeDef(BaseModel): + HeaderName: str + HeaderValue: str + +class AddonInstanceTypeDef(BaseModel): + AddonInstanceArn: Optional[str] = None + AddonInstanceId: Optional[str] = None + AddonName: Optional[str] = None + AddonSubscriptionId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class AddonSubscriptionTypeDef(BaseModel): + AddonName: Optional[str] = None + AddonSubscriptionArn: Optional[str] = None + AddonSubscriptionId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class AnalysisTypeDef(BaseModel): + Analyzer: str + ResultField: str + +class ArchiveActionTypeDef(BaseModel): + TargetArchive: str + ActionFailurePolicy: Optional[ActionFailurePolicyType] = None + +class ArchiveBooleanToEvaluateTypeDef(BaseModel): + Attribute: Optional[Literal["HAS_ATTACHMENTS"]] = None + +class ArchiveRetentionTypeDef(BaseModel): + RetentionPeriod: Optional[RetentionPeriodType] = None + +class ArchiveStringToEvaluateTypeDef(BaseModel): + Attribute: Optional[ArchiveStringEmailAttributeType] = None + +class ArchiveTypeDef(BaseModel): + ArchiveId: str + ArchiveName: Optional[str] = None + ArchiveState: Optional[ArchiveStateType] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class IngressPointConfigurationTypeDef(BaseModel): + SecretArn: Optional[str] = None + SmtpPassword: Optional[str] = None + +class RelayAuthenticationTypeDef(BaseModel): + NoAuthentication: Optional[Mapping[str, Any]] = None + SecretArn: Optional[str] = None + +class DeleteAddonInstanceRequestRequestTypeDef(BaseModel): + AddonInstanceId: str + +class DeleteAddonSubscriptionRequestRequestTypeDef(BaseModel): + AddonSubscriptionId: str + +class DeleteArchiveRequestRequestTypeDef(BaseModel): + ArchiveId: str + +class DeleteIngressPointRequestRequestTypeDef(BaseModel): + IngressPointId: str + +class DeleteRelayRequestRequestTypeDef(BaseModel): + RelayId: str + +class DeleteRuleSetRequestRequestTypeDef(BaseModel): + RuleSetId: str + +class DeleteTrafficPolicyRequestRequestTypeDef(BaseModel): + TrafficPolicyId: str + +class DeliverToMailboxActionTypeDef(BaseModel): + MailboxArn: str + RoleArn: str + ActionFailurePolicy: Optional[ActionFailurePolicyType] = None + +class S3ExportDestinationConfigurationTypeDef(BaseModel): + S3Location: Optional[str] = None + +class ExportStatusTypeDef(BaseModel): + CompletionTimestamp: Optional[datetime] = None + ErrorMessage: Optional[str] = None + State: Optional[ExportStateType] = None + SubmissionTimestamp: Optional[datetime] = None + +class GetAddonInstanceRequestRequestTypeDef(BaseModel): + AddonInstanceId: str + +class GetAddonSubscriptionRequestRequestTypeDef(BaseModel): + AddonSubscriptionId: str + +class GetArchiveExportRequestRequestTypeDef(BaseModel): + ExportId: str + +class GetArchiveMessageContentRequestRequestTypeDef(BaseModel): + ArchivedMessageId: str + +class MessageBodyTypeDef(BaseModel): + Html: Optional[str] = None + MessageMalformed: Optional[bool] = None + Text: Optional[str] = None + +class GetArchiveMessageRequestRequestTypeDef(BaseModel): + ArchivedMessageId: str + +class GetArchiveRequestRequestTypeDef(BaseModel): + ArchiveId: str + +class GetArchiveSearchRequestRequestTypeDef(BaseModel): + SearchId: str + +class SearchStatusTypeDef(BaseModel): + CompletionTimestamp: Optional[datetime] = None + ErrorMessage: Optional[str] = None + State: Optional[SearchStateType] = None + SubmissionTimestamp: Optional[datetime] = None + +class GetArchiveSearchResultsRequestRequestTypeDef(BaseModel): + SearchId: str + +class RowTypeDef(BaseModel): + ArchivedMessageId: Optional[str] = None + Cc: Optional[str] = None + Date: Optional[str] = None + From: Optional[str] = None + HasAttachments: Optional[bool] = None + InReplyTo: Optional[str] = None + MessageId: Optional[str] = None + ReceivedHeaders: Optional[List[str]] = None + ReceivedTimestamp: Optional[datetime] = None + Subject: Optional[str] = None + To: Optional[str] = None + XMailer: Optional[str] = None + XOriginalMailer: Optional[str] = None + XPriority: Optional[str] = None + +class GetIngressPointRequestRequestTypeDef(BaseModel): + IngressPointId: str + +class GetRelayRequestRequestTypeDef(BaseModel): + RelayId: str + +class RelayAuthenticationOutputTypeDef(BaseModel): + NoAuthentication: Optional[Dict[str, Any]] = None + SecretArn: Optional[str] = None + +class GetRuleSetRequestRequestTypeDef(BaseModel): + RuleSetId: str + +class GetTrafficPolicyRequestRequestTypeDef(BaseModel): + TrafficPolicyId: str + +class IngressAnalysisTypeDef(BaseModel): + Analyzer: str + ResultField: str + +class IngressIpToEvaluateTypeDef(BaseModel): + Attribute: Optional[Literal["SENDER_IP"]] = None + +class IngressPointPasswordConfigurationTypeDef(BaseModel): + PreviousSmtpPasswordExpiryTimestamp: Optional[datetime] = None + PreviousSmtpPasswordVersion: Optional[str] = None + SmtpPasswordVersion: Optional[str] = None + +class IngressPointTypeDef(BaseModel): + IngressPointId: str + IngressPointName: str + Status: IngressPointStatusType + Type: IngressPointTypeType + ARecord: Optional[str] = None + +class IngressStringToEvaluateTypeDef(BaseModel): + Attribute: Optional[Literal["RECIPIENT"]] = None + +class IngressTlsProtocolToEvaluateTypeDef(BaseModel): + Attribute: Optional[Literal["TLS_PROTOCOL"]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAddonInstancesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListAddonSubscriptionsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListArchiveExportsRequestRequestTypeDef(BaseModel): + ArchiveId: str + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListArchiveSearchesRequestRequestTypeDef(BaseModel): + ArchiveId: str + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListArchivesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListIngressPointsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListRelaysRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class RelayTypeDef(BaseModel): + LastModifiedTimestamp: Optional[datetime] = None + RelayId: Optional[str] = None + RelayName: Optional[str] = None + +class ListRuleSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class RuleSetTypeDef(BaseModel): + LastModificationDate: Optional[datetime] = None + RuleSetId: Optional[str] = None + RuleSetName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListTrafficPoliciesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class TrafficPolicyTypeDef(BaseModel): + DefaultAction: AcceptActionType + TrafficPolicyId: str + TrafficPolicyName: str + +class RelayActionTypeDef(BaseModel): + Relay: str + ActionFailurePolicy: Optional[ActionFailurePolicyType] = None + MailFrom: Optional[MailFromType] = None + +class ReplaceRecipientActionOutputTypeDef(BaseModel): + ReplaceWith: Optional[List[str]] = None + +class ReplaceRecipientActionTypeDef(BaseModel): + ReplaceWith: Optional[Sequence[str]] = None + +class S3ActionTypeDef(BaseModel): + RoleArn: str + S3Bucket: str + ActionFailurePolicy: Optional[ActionFailurePolicyType] = None + S3Prefix: Optional[str] = None + S3SseKmsKeyId: Optional[str] = None + +class SendActionTypeDef(BaseModel): + RoleArn: str + ActionFailurePolicy: Optional[ActionFailurePolicyType] = None + +class RuleBooleanToEvaluateTypeDef(BaseModel): + Attribute: Optional[RuleBooleanEmailAttributeType] = None + +class RuleDmarcExpressionOutputTypeDef(BaseModel): + Operator: RuleDmarcOperatorType + Values: List[RuleDmarcPolicyType] + +class RuleDmarcExpressionTypeDef(BaseModel): + Operator: RuleDmarcOperatorType + Values: Sequence[RuleDmarcPolicyType] + +class RuleIpToEvaluateTypeDef(BaseModel): + Attribute: Optional[Literal["SOURCE_IP"]] = None + +class RuleNumberToEvaluateTypeDef(BaseModel): + Attribute: Optional[Literal["MESSAGE_SIZE"]] = None + +class RuleStringToEvaluateTypeDef(BaseModel): + Attribute: Optional[RuleStringEmailAttributeType] = None + +class StopArchiveExportRequestRequestTypeDef(BaseModel): + ExportId: str + +class StopArchiveSearchRequestRequestTypeDef(BaseModel): + SearchId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class RuleVerdictToEvaluateTypeDef(BaseModel): + Analysis: Optional[AnalysisTypeDef] = None + Attribute: Optional[RuleVerdictAttributeType] = None + +class ArchiveBooleanExpressionTypeDef(BaseModel): + Evaluate: ArchiveBooleanToEvaluateTypeDef + Operator: ArchiveBooleanOperatorType + +class UpdateArchiveRequestRequestTypeDef(BaseModel): + ArchiveId: str + ArchiveName: Optional[str] = None + Retention: Optional[ArchiveRetentionTypeDef] = None + +class ArchiveStringExpressionOutputTypeDef(BaseModel): + Evaluate: ArchiveStringToEvaluateTypeDef + Operator: Literal["CONTAINS"] + Values: List[str] + +class ArchiveStringExpressionTypeDef(BaseModel): + Evaluate: ArchiveStringToEvaluateTypeDef + Operator: Literal["CONTAINS"] + Values: Sequence[str] + +class CreateAddonInstanceRequestRequestTypeDef(BaseModel): + AddonSubscriptionId: str + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAddonSubscriptionRequestRequestTypeDef(BaseModel): + AddonName: str + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateArchiveRequestRequestTypeDef(BaseModel): + ArchiveName: str + ClientToken: Optional[str] = None + KmsKeyArn: Optional[str] = None + Retention: Optional[ArchiveRetentionTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateAddonInstanceResponseTypeDef(BaseModel): + AddonInstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAddonSubscriptionResponseTypeDef(BaseModel): + AddonSubscriptionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateArchiveResponseTypeDef(BaseModel): + ArchiveId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIngressPointResponseTypeDef(BaseModel): + IngressPointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRelayResponseTypeDef(BaseModel): + RelayId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleSetResponseTypeDef(BaseModel): + RuleSetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrafficPolicyResponseTypeDef(BaseModel): + TrafficPolicyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAddonInstanceResponseTypeDef(BaseModel): + AddonInstanceArn: str + AddonName: str + AddonSubscriptionId: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetAddonSubscriptionResponseTypeDef(BaseModel): + AddonName: str + AddonSubscriptionArn: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetArchiveMessageResponseTypeDef(BaseModel): + MessageDownloadLink: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetArchiveResponseTypeDef(BaseModel): + ArchiveArn: str + ArchiveId: str + ArchiveName: str + ArchiveState: ArchiveStateType + CreatedTimestamp: datetime + KmsKeyArn: str + LastUpdatedTimestamp: datetime + Retention: ArchiveRetentionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAddonInstancesResponseTypeDef(BaseModel): + AddonInstances: List[AddonInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAddonSubscriptionsResponseTypeDef(BaseModel): + AddonSubscriptions: List[AddonSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListArchivesResponseTypeDef(BaseModel): + Archives: List[ArchiveTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartArchiveExportResponseTypeDef(BaseModel): + ExportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartArchiveSearchResponseTypeDef(BaseModel): + SearchId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIngressPointRequestRequestTypeDef(BaseModel): + IngressPointName: str + RuleSetId: str + TrafficPolicyId: str + Type: IngressPointTypeType + ClientToken: Optional[str] = None + IngressPointConfiguration: Optional[IngressPointConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateIngressPointRequestRequestTypeDef(BaseModel): + IngressPointId: str + IngressPointConfiguration: Optional[IngressPointConfigurationTypeDef] = None + IngressPointName: Optional[str] = None + RuleSetId: Optional[str] = None + StatusToUpdate: Optional[IngressPointStatusToUpdateType] = None + TrafficPolicyId: Optional[str] = None + +class CreateRelayRequestRequestTypeDef(BaseModel): + Authentication: RelayAuthenticationTypeDef + RelayName: str + ServerName: str + ServerPort: int + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateRelayRequestRequestTypeDef(BaseModel): + RelayId: str + Authentication: Optional[RelayAuthenticationTypeDef] = None + RelayName: Optional[str] = None + ServerName: Optional[str] = None + ServerPort: Optional[int] = None + +class ExportDestinationConfigurationTypeDef(BaseModel): + S3: Optional[S3ExportDestinationConfigurationTypeDef] = None + +class ExportSummaryTypeDef(BaseModel): + ExportId: Optional[str] = None + Status: Optional[ExportStatusTypeDef] = None + +class GetArchiveMessageContentResponseTypeDef(BaseModel): + Body: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchSummaryTypeDef(BaseModel): + SearchId: Optional[str] = None + Status: Optional[SearchStatusTypeDef] = None + +class GetArchiveSearchResultsResponseTypeDef(BaseModel): + Rows: List[RowTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRelayResponseTypeDef(BaseModel): + Authentication: RelayAuthenticationOutputTypeDef + CreatedTimestamp: datetime + LastModifiedTimestamp: datetime + RelayArn: str + RelayId: str + RelayName: str + ServerName: str + ServerPort: int + ResponseMetadata: ResponseMetadataTypeDef + +class IngressBooleanToEvaluateTypeDef(BaseModel): + Analysis: Optional[IngressAnalysisTypeDef] = None + +class IngressIpv4ExpressionOutputTypeDef(BaseModel): + Evaluate: IngressIpToEvaluateTypeDef + Operator: IngressIpOperatorType + Values: List[str] + +class IngressIpv4ExpressionTypeDef(BaseModel): + Evaluate: IngressIpToEvaluateTypeDef + Operator: IngressIpOperatorType + Values: Sequence[str] + +class IngressPointAuthConfigurationTypeDef(BaseModel): + IngressPointPasswordConfiguration: Optional[IngressPointPasswordConfigurationTypeDef] = None + SecretArn: Optional[str] = None + +class ListIngressPointsResponseTypeDef(BaseModel): + IngressPoints: List[IngressPointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class IngressStringExpressionOutputTypeDef(BaseModel): + Evaluate: IngressStringToEvaluateTypeDef + Operator: IngressStringOperatorType + Values: List[str] + +class IngressStringExpressionTypeDef(BaseModel): + Evaluate: IngressStringToEvaluateTypeDef + Operator: IngressStringOperatorType + Values: Sequence[str] + +class IngressTlsProtocolExpressionTypeDef(BaseModel): + Evaluate: IngressTlsProtocolToEvaluateTypeDef + Operator: IngressTlsProtocolOperatorType + Value: IngressTlsProtocolAttributeType + +class ListAddonInstancesRequestListAddonInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAddonSubscriptionsRequestListAddonSubscriptionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListArchiveExportsRequestListArchiveExportsPaginateTypeDef(BaseModel): + ArchiveId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListArchiveSearchesRequestListArchiveSearchesPaginateTypeDef(BaseModel): + ArchiveId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListArchivesRequestListArchivesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIngressPointsRequestListIngressPointsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRelaysRequestListRelaysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRuleSetsRequestListRuleSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrafficPoliciesRequestListTrafficPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRelaysResponseTypeDef(BaseModel): + Relays: List[RelayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRuleSetsResponseTypeDef(BaseModel): + RuleSets: List[RuleSetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrafficPoliciesResponseTypeDef(BaseModel): + TrafficPolicies: List[TrafficPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RuleActionOutputTypeDef(BaseModel): + AddHeader: Optional[AddHeaderActionTypeDef] = None + Archive: Optional[ArchiveActionTypeDef] = None + DeliverToMailbox: Optional[DeliverToMailboxActionTypeDef] = None + Drop: Optional[Dict[str, Any]] = None + Relay: Optional[RelayActionTypeDef] = None + ReplaceRecipient: Optional[ReplaceRecipientActionOutputTypeDef] = None + Send: Optional[SendActionTypeDef] = None + WriteToS3: Optional[S3ActionTypeDef] = None + +class RuleActionTypeDef(BaseModel): + AddHeader: Optional[AddHeaderActionTypeDef] = None + Archive: Optional[ArchiveActionTypeDef] = None + DeliverToMailbox: Optional[DeliverToMailboxActionTypeDef] = None + Drop: Optional[Mapping[str, Any]] = None + Relay: Optional[RelayActionTypeDef] = None + ReplaceRecipient: Optional[ReplaceRecipientActionTypeDef] = None + Send: Optional[SendActionTypeDef] = None + WriteToS3: Optional[S3ActionTypeDef] = None + +class RuleBooleanExpressionTypeDef(BaseModel): + Evaluate: RuleBooleanToEvaluateTypeDef + Operator: RuleBooleanOperatorType + +class RuleIpExpressionOutputTypeDef(BaseModel): + Evaluate: RuleIpToEvaluateTypeDef + Operator: RuleIpOperatorType + Values: List[str] + +class RuleIpExpressionTypeDef(BaseModel): + Evaluate: RuleIpToEvaluateTypeDef + Operator: RuleIpOperatorType + Values: Sequence[str] + +class RuleNumberExpressionTypeDef(BaseModel): + Evaluate: RuleNumberToEvaluateTypeDef + Operator: RuleNumberOperatorType + Value: float + +class RuleStringExpressionOutputTypeDef(BaseModel): + Evaluate: RuleStringToEvaluateTypeDef + Operator: RuleStringOperatorType + Values: List[str] + +class RuleStringExpressionTypeDef(BaseModel): + Evaluate: RuleStringToEvaluateTypeDef + Operator: RuleStringOperatorType + Values: Sequence[str] + +class RuleVerdictExpressionOutputTypeDef(BaseModel): + Evaluate: RuleVerdictToEvaluateTypeDef + Operator: RuleVerdictOperatorType + Values: List[RuleVerdictType] + +class RuleVerdictExpressionTypeDef(BaseModel): + Evaluate: RuleVerdictToEvaluateTypeDef + Operator: RuleVerdictOperatorType + Values: Sequence[RuleVerdictType] + +class ArchiveFilterConditionOutputTypeDef(BaseModel): + BooleanExpression: Optional[ArchiveBooleanExpressionTypeDef] = None + StringExpression: Optional[ArchiveStringExpressionOutputTypeDef] = None + +class ArchiveFilterConditionTypeDef(BaseModel): + BooleanExpression: Optional[ArchiveBooleanExpressionTypeDef] = None + StringExpression: Optional[ArchiveStringExpressionTypeDef] = None + +class ListArchiveExportsResponseTypeDef(BaseModel): + Exports: List[ExportSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListArchiveSearchesResponseTypeDef(BaseModel): + Searches: List[SearchSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class IngressBooleanExpressionTypeDef(BaseModel): + Evaluate: IngressBooleanToEvaluateTypeDef + Operator: IngressBooleanOperatorType + +class GetIngressPointResponseTypeDef(BaseModel): + ARecord: str + CreatedTimestamp: datetime + IngressPointArn: str + IngressPointAuthConfiguration: IngressPointAuthConfigurationTypeDef + IngressPointId: str + IngressPointName: str + LastUpdatedTimestamp: datetime + RuleSetId: str + Status: IngressPointStatusType + TrafficPolicyId: str + Type: IngressPointTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class RuleConditionOutputTypeDef(BaseModel): + BooleanExpression: Optional[RuleBooleanExpressionTypeDef] = None + DmarcExpression: Optional[RuleDmarcExpressionOutputTypeDef] = None + IpExpression: Optional[RuleIpExpressionOutputTypeDef] = None + NumberExpression: Optional[RuleNumberExpressionTypeDef] = None + StringExpression: Optional[RuleStringExpressionOutputTypeDef] = None + VerdictExpression: Optional[RuleVerdictExpressionOutputTypeDef] = None + +class RuleConditionTypeDef(BaseModel): + BooleanExpression: Optional[RuleBooleanExpressionTypeDef] = None + DmarcExpression: Optional[RuleDmarcExpressionTypeDef] = None + IpExpression: Optional[RuleIpExpressionTypeDef] = None + NumberExpression: Optional[RuleNumberExpressionTypeDef] = None + StringExpression: Optional[RuleStringExpressionTypeDef] = None + VerdictExpression: Optional[RuleVerdictExpressionTypeDef] = None + +class ArchiveFiltersOutputTypeDef(BaseModel): + Include: Optional[List[ArchiveFilterConditionOutputTypeDef]] = None + Unless: Optional[List[ArchiveFilterConditionOutputTypeDef]] = None + +class ArchiveFiltersTypeDef(BaseModel): + Include: Optional[Sequence[ArchiveFilterConditionTypeDef]] = None + Unless: Optional[Sequence[ArchiveFilterConditionTypeDef]] = None + +class PolicyConditionOutputTypeDef(BaseModel): + BooleanExpression: Optional[IngressBooleanExpressionTypeDef] = None + IpExpression: Optional[IngressIpv4ExpressionOutputTypeDef] = None + StringExpression: Optional[IngressStringExpressionOutputTypeDef] = None + TlsExpression: Optional[IngressTlsProtocolExpressionTypeDef] = None + +class PolicyConditionTypeDef(BaseModel): + BooleanExpression: Optional[IngressBooleanExpressionTypeDef] = None + IpExpression: Optional[IngressIpv4ExpressionTypeDef] = None + StringExpression: Optional[IngressStringExpressionTypeDef] = None + TlsExpression: Optional[IngressTlsProtocolExpressionTypeDef] = None + +class RuleOutputTypeDef(BaseModel): + Actions: List[RuleActionOutputTypeDef] + Conditions: Optional[List[RuleConditionOutputTypeDef]] = None + Name: Optional[str] = None + Unless: Optional[List[RuleConditionOutputTypeDef]] = None + +class RuleTypeDef(BaseModel): + Actions: Sequence[RuleActionTypeDef] + Conditions: Optional[Sequence[RuleConditionTypeDef]] = None + Name: Optional[str] = None + Unless: Optional[Sequence[RuleConditionTypeDef]] = None + +class GetArchiveExportResponseTypeDef(BaseModel): + ArchiveId: str + ExportDestinationConfiguration: ExportDestinationConfigurationTypeDef + Filters: ArchiveFiltersOutputTypeDef + FromTimestamp: datetime + MaxResults: int + Status: ExportStatusTypeDef + ToTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetArchiveSearchResponseTypeDef(BaseModel): + ArchiveId: str + Filters: ArchiveFiltersOutputTypeDef + FromTimestamp: datetime + MaxResults: int + Status: SearchStatusTypeDef + ToTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartArchiveExportRequestRequestTypeDef(BaseModel): + ArchiveId: str + ExportDestinationConfiguration: ExportDestinationConfigurationTypeDef + FromTimestamp: TimestampTypeDef + ToTimestamp: TimestampTypeDef + Filters: Optional[ArchiveFiltersTypeDef] = None + MaxResults: Optional[int] = None + +class StartArchiveSearchRequestRequestTypeDef(BaseModel): + ArchiveId: str + FromTimestamp: TimestampTypeDef + MaxResults: int + ToTimestamp: TimestampTypeDef + Filters: Optional[ArchiveFiltersTypeDef] = None + +class PolicyStatementOutputTypeDef(BaseModel): + Action: AcceptActionType + Conditions: List[PolicyConditionOutputTypeDef] + +class PolicyStatementTypeDef(BaseModel): + Action: AcceptActionType + Conditions: Sequence[PolicyConditionTypeDef] + +class GetRuleSetResponseTypeDef(BaseModel): + CreatedDate: datetime + LastModificationDate: datetime + RuleSetArn: str + RuleSetId: str + RuleSetName: str + Rules: List[RuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrafficPolicyResponseTypeDef(BaseModel): + CreatedTimestamp: datetime + DefaultAction: AcceptActionType + LastUpdatedTimestamp: datetime + MaxMessageSizeBytes: int + PolicyStatements: List[PolicyStatementOutputTypeDef] + TrafficPolicyArn: str + TrafficPolicyId: str + TrafficPolicyName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: str + Rules: Sequence[RuleUnionTypeDef] + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateRuleSetRequestRequestTypeDef(BaseModel): + RuleSetId: str + RuleSetName: Optional[str] = None + Rules: Optional[Sequence[RuleUnionTypeDef]] = None + +class CreateTrafficPolicyRequestRequestTypeDef(BaseModel): + DefaultAction: AcceptActionType + PolicyStatements: Sequence[PolicyStatementUnionTypeDef] + TrafficPolicyName: str + ClientToken: Optional[str] = None + MaxMessageSizeBytes: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateTrafficPolicyRequestRequestTypeDef(BaseModel): + TrafficPolicyId: str + DefaultAction: Optional[AcceptActionType] = None + MaxMessageSizeBytes: Optional[int] = None + PolicyStatements: Optional[Sequence[PolicyStatementUnionTypeDef]] = None + TrafficPolicyName: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/mailmanager_constants.py b/aws_resource_validator/pydantic_models/mailmanager_constants.py new file mode 100644 index 00000000..3ea7dfa2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mailmanager_constants.py @@ -0,0 +1,476 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceptActionType = Literal["ALLOW", "DENY"] +ActionFailurePolicyType = Literal["CONTINUE", "DROP"] +ArchiveBooleanEmailAttributeType = Literal["HAS_ATTACHMENTS"] +ArchiveBooleanOperatorType = Literal["IS_FALSE", "IS_TRUE"] +ArchiveStateType = Literal["ACTIVE", "PENDING_DELETION"] +ArchiveStringEmailAttributeType = Literal["CC", "FROM", "SUBJECT", "TO"] +ArchiveStringOperatorType = Literal["CONTAINS"] +ExportStateType = Literal["CANCELLED", "COMPLETED", "FAILED", "PREPROCESSING", "PROCESSING", "QUEUED"] +IngressBooleanOperatorType = Literal["IS_FALSE", "IS_TRUE"] +IngressIpOperatorType = Literal["CIDR_MATCHES", "NOT_CIDR_MATCHES"] +IngressIpv4AttributeType = Literal["SENDER_IP"] +IngressPointStatusToUpdateType = Literal["ACTIVE", "CLOSED"] +IngressPointStatusType = Literal["ACTIVE", "CLOSED", "DEPROVISIONING", "FAILED", "PROVISIONING", "UPDATING"] +IngressPointTypeType = Literal["AUTH", "OPEN"] +IngressStringEmailAttributeType = Literal["RECIPIENT"] +IngressStringOperatorType = Literal["CONTAINS", "ENDS_WITH", "EQUALS", "NOT_EQUALS", "STARTS_WITH"] +IngressTlsAttributeType = Literal["TLS_PROTOCOL"] +IngressTlsProtocolAttributeType = Literal["TLS1_2", "TLS1_3"] +IngressTlsProtocolOperatorType = Literal["IS", "MINIMUM_TLS_VERSION"] +ListAddonInstancesPaginatorName = Literal["list_addon_instances"] +ListAddonSubscriptionsPaginatorName = Literal["list_addon_subscriptions"] +ListArchiveExportsPaginatorName = Literal["list_archive_exports"] +ListArchiveSearchesPaginatorName = Literal["list_archive_searches"] +ListArchivesPaginatorName = Literal["list_archives"] +ListIngressPointsPaginatorName = Literal["list_ingress_points"] +ListRelaysPaginatorName = Literal["list_relays"] +ListRuleSetsPaginatorName = Literal["list_rule_sets"] +ListTrafficPoliciesPaginatorName = Literal["list_traffic_policies"] +MailFromType = Literal["PRESERVE", "REPLACE"] +RetentionPeriodType = Literal["EIGHTEEN_MONTHS", + "EIGHT_YEARS", + "FIVE_YEARS", + "FOUR_YEARS", + "NINE_MONTHS", + "NINE_YEARS", + "ONE_YEAR", + "PERMANENT", + "SEVEN_YEARS", + "SIX_MONTHS", + "SIX_YEARS", + "TEN_YEARS", + "THIRTY_MONTHS", + "THREE_MONTHS", + "THREE_YEARS", + "TWO_YEARS",] +RuleBooleanEmailAttributeType = Literal["READ_RECEIPT_REQUESTED", "TLS", "TLS_WRAPPED"] +RuleBooleanOperatorType = Literal["IS_FALSE", "IS_TRUE"] +RuleDmarcOperatorType = Literal["EQUALS", "NOT_EQUALS"] +RuleDmarcPolicyType = Literal["NONE", "QUARANTINE", "REJECT"] +RuleIpEmailAttributeType = Literal["SOURCE_IP"] +RuleIpOperatorType = Literal["CIDR_MATCHES", "NOT_CIDR_MATCHES"] +RuleNumberEmailAttributeType = Literal["MESSAGE_SIZE"] +RuleNumberOperatorType = Literal["EQUALS", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL", + "LESS_THAN", + "LESS_THAN_OR_EQUAL", + "NOT_EQUALS",] +RuleStringEmailAttributeType = Literal["CC", "FROM", "HELO", "MAIL_FROM", "RECIPIENT", "SENDER", "SUBJECT", "TO"] +RuleStringOperatorType = Literal["CONTAINS", "ENDS_WITH", "EQUALS", "NOT_EQUALS", "STARTS_WITH"] +RuleVerdictAttributeType = Literal["DKIM", "SPF"] +RuleVerdictOperatorType = Literal["EQUALS", "NOT_EQUALS"] +RuleVerdictType = Literal["FAIL", "GRAY", "PASS", "PROCESSING_FAILED"] +SearchStateType = Literal["CANCELLED", "COMPLETED", "FAILED", "QUEUED", "RUNNING"] +MailManagerServiceName = Literal["mailmanager"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_addon_instances", + "list_addon_subscriptions", + "list_archive_exports", + "list_archive_searches", + "list_archives", + "list_ingress_points", + "list_relays", + "list_rule_sets", + "list_traffic_policies",] +TimestampTypeDef = Union[datetime, str] +RelayAuthenticationUnionTypeDef = Union[ 'RelayAuthenticationTypeDef', 'RelayAuthenticationOutputTypeDef' ] +ArchiveFiltersUnionTypeDef = Union['ArchiveFiltersTypeDef', 'ArchiveFiltersOutputTypeDef'] +RuleUnionTypeDef = Union['RuleTypeDef', 'RuleOutputTypeDef'] +PolicyStatementUnionTypeDef = Union['PolicyStatementTypeDef', 'PolicyStatementOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/managedblockchain_classes.py b/aws_resource_validator/pydantic_models/managedblockchain_classes.py new file mode 100644 index 00000000..1061b6ad --- /dev/null +++ b/aws_resource_validator/pydantic_models/managedblockchain_classes.py @@ -0,0 +1,477 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.managedblockchain_constants import * + +class AccessorSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[Literal["BILLING_TOKEN"]] = None + Status: Optional[AccessorStatusType] = None + CreationDate: Optional[datetime] = None + Arn: Optional[str] = None + NetworkType: Optional[AccessorNetworkTypeType] = None + +class AccessorTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[Literal["BILLING_TOKEN"]] = None + BillingToken: Optional[str] = None + Status: Optional[AccessorStatusType] = None + CreationDate: Optional[datetime] = None + Arn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + NetworkType: Optional[AccessorNetworkTypeType] = None + +class ApprovalThresholdPolicyTypeDef(BaseModel): + ThresholdPercentage: Optional[int] = None + ProposalDurationInHours: Optional[int] = None + ThresholdComparator: Optional[ThresholdComparatorType] = None + +class CreateAccessorInputRequestTypeDef(BaseModel): + ClientRequestToken: str + AccessorType: Literal["BILLING_TOKEN"] + Tags: Optional[Mapping[str, str]] = None + NetworkType: Optional[AccessorNetworkTypeType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteAccessorInputRequestTypeDef(BaseModel): + AccessorId: str + +class DeleteMemberInputRequestTypeDef(BaseModel): + NetworkId: str + MemberId: str + +class DeleteNodeInputRequestTypeDef(BaseModel): + NetworkId: str + NodeId: str + MemberId: Optional[str] = None + +class GetAccessorInputRequestTypeDef(BaseModel): + AccessorId: str + +class GetMemberInputRequestTypeDef(BaseModel): + NetworkId: str + MemberId: str + +class GetNetworkInputRequestTypeDef(BaseModel): + NetworkId: str + +class GetNodeInputRequestTypeDef(BaseModel): + NetworkId: str + NodeId: str + MemberId: Optional[str] = None + +class GetProposalInputRequestTypeDef(BaseModel): + NetworkId: str + ProposalId: str + +class NetworkSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Framework: Optional[FrameworkType] = None + FrameworkVersion: Optional[str] = None + Status: Optional[NetworkStatusType] = None + CreationDate: Optional[datetime] = None + Arn: Optional[str] = None + +class InviteActionTypeDef(BaseModel): + Principal: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccessorsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + NetworkType: Optional[AccessorNetworkTypeType] = None + +class ListInvitationsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMembersInputRequestTypeDef(BaseModel): + NetworkId: str + Name: Optional[str] = None + Status: Optional[MemberStatusType] = None + IsOwned: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MemberSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Status: Optional[MemberStatusType] = None + CreationDate: Optional[datetime] = None + IsOwned: Optional[bool] = None + Arn: Optional[str] = None + +class ListNetworksInputRequestTypeDef(BaseModel): + Name: Optional[str] = None + Framework: Optional[FrameworkType] = None + Status: Optional[NetworkStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListNodesInputRequestTypeDef(BaseModel): + NetworkId: str + MemberId: Optional[str] = None + Status: Optional[NodeStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NodeSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Status: Optional[NodeStatusType] = None + CreationDate: Optional[datetime] = None + AvailabilityZone: Optional[str] = None + InstanceType: Optional[str] = None + Arn: Optional[str] = None + +class ListProposalVotesInputRequestTypeDef(BaseModel): + NetworkId: str + ProposalId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class VoteSummaryTypeDef(BaseModel): + Vote: Optional[VoteValueType] = None + MemberName: Optional[str] = None + MemberId: Optional[str] = None + +class ListProposalsInputRequestTypeDef(BaseModel): + NetworkId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ProposalSummaryTypeDef(BaseModel): + ProposalId: Optional[str] = None + Description: Optional[str] = None + ProposedByMemberId: Optional[str] = None + ProposedByMemberName: Optional[str] = None + Status: Optional[ProposalStatusType] = None + CreationDate: Optional[datetime] = None + ExpirationDate: Optional[datetime] = None + Arn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class LogConfigurationTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class MemberFabricAttributesTypeDef(BaseModel): + AdminUsername: Optional[str] = None + CaEndpoint: Optional[str] = None + +class MemberFabricConfigurationTypeDef(BaseModel): + AdminUsername: str + AdminPassword: str + +class NetworkEthereumAttributesTypeDef(BaseModel): + ChainId: Optional[str] = None + +class NetworkFabricAttributesTypeDef(BaseModel): + OrderingServiceEndpoint: Optional[str] = None + Edition: Optional[EditionType] = None + +class NetworkFabricConfigurationTypeDef(BaseModel): + Edition: EditionType + +class NodeEthereumAttributesTypeDef(BaseModel): + HttpEndpoint: Optional[str] = None + WebSocketEndpoint: Optional[str] = None + +class NodeFabricAttributesTypeDef(BaseModel): + PeerEndpoint: Optional[str] = None + PeerEventEndpoint: Optional[str] = None + +class RemoveActionTypeDef(BaseModel): + MemberId: str + +class RejectInvitationInputRequestTypeDef(BaseModel): + InvitationId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class VoteOnProposalInputRequestTypeDef(BaseModel): + NetworkId: str + ProposalId: str + VoterMemberId: str + Vote: VoteValueType + +class VotingPolicyTypeDef(BaseModel): + ApprovalThresholdPolicy: Optional[ApprovalThresholdPolicyTypeDef] = None + +class CreateAccessorOutputTypeDef(BaseModel): + AccessorId: str + BillingToken: str + NetworkType: AccessorNetworkTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMemberOutputTypeDef(BaseModel): + MemberId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkOutputTypeDef(BaseModel): + NetworkId: str + MemberId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNodeOutputTypeDef(BaseModel): + NodeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProposalOutputTypeDef(BaseModel): + ProposalId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessorOutputTypeDef(BaseModel): + Accessor: AccessorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessorsOutputTypeDef(BaseModel): + Accessors: List[AccessorSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class InvitationTypeDef(BaseModel): + InvitationId: Optional[str] = None + CreationDate: Optional[datetime] = None + ExpirationDate: Optional[datetime] = None + Status: Optional[InvitationStatusType] = None + NetworkSummary: Optional[NetworkSummaryTypeDef] = None + Arn: Optional[str] = None + +class ListNetworksOutputTypeDef(BaseModel): + Networks: List[NetworkSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAccessorsInputListAccessorsPaginateTypeDef(BaseModel): + NetworkType: Optional[AccessorNetworkTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembersOutputTypeDef(BaseModel): + Members: List[MemberSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNodesOutputTypeDef(BaseModel): + Nodes: List[NodeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProposalVotesOutputTypeDef(BaseModel): + ProposalVotes: List[VoteSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProposalsOutputTypeDef(BaseModel): + Proposals: List[ProposalSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LogConfigurationsTypeDef(BaseModel): + Cloudwatch: Optional[LogConfigurationTypeDef] = None + +class MemberFrameworkAttributesTypeDef(BaseModel): + Fabric: Optional[MemberFabricAttributesTypeDef] = None + +class MemberFrameworkConfigurationTypeDef(BaseModel): + Fabric: Optional[MemberFabricConfigurationTypeDef] = None + +class NetworkFrameworkAttributesTypeDef(BaseModel): + Fabric: Optional[NetworkFabricAttributesTypeDef] = None + Ethereum: Optional[NetworkEthereumAttributesTypeDef] = None + +class NetworkFrameworkConfigurationTypeDef(BaseModel): + Fabric: Optional[NetworkFabricConfigurationTypeDef] = None + +class NodeFrameworkAttributesTypeDef(BaseModel): + Fabric: Optional[NodeFabricAttributesTypeDef] = None + Ethereum: Optional[NodeEthereumAttributesTypeDef] = None + +class ProposalActionsOutputTypeDef(BaseModel): + Invitations: Optional[List[InviteActionTypeDef]] = None + Removals: Optional[List[RemoveActionTypeDef]] = None + +class ProposalActionsTypeDef(BaseModel): + Invitations: Optional[Sequence[InviteActionTypeDef]] = None + Removals: Optional[Sequence[RemoveActionTypeDef]] = None + +class ListInvitationsOutputTypeDef(BaseModel): + Invitations: List[InvitationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MemberFabricLogPublishingConfigurationTypeDef(BaseModel): + CaLogs: Optional[LogConfigurationsTypeDef] = None + +class NodeFabricLogPublishingConfigurationTypeDef(BaseModel): + ChaincodeLogs: Optional[LogConfigurationsTypeDef] = None + PeerLogs: Optional[LogConfigurationsTypeDef] = None + +class NetworkTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Framework: Optional[FrameworkType] = None + FrameworkVersion: Optional[str] = None + FrameworkAttributes: Optional[NetworkFrameworkAttributesTypeDef] = None + VpcEndpointServiceName: Optional[str] = None + VotingPolicy: Optional[VotingPolicyTypeDef] = None + Status: Optional[NetworkStatusType] = None + CreationDate: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + Arn: Optional[str] = None + +class ProposalTypeDef(BaseModel): + ProposalId: Optional[str] = None + NetworkId: Optional[str] = None + Description: Optional[str] = None + Actions: Optional[ProposalActionsOutputTypeDef] = None + ProposedByMemberId: Optional[str] = None + ProposedByMemberName: Optional[str] = None + Status: Optional[ProposalStatusType] = None + CreationDate: Optional[datetime] = None + ExpirationDate: Optional[datetime] = None + YesVoteCount: Optional[int] = None + NoVoteCount: Optional[int] = None + OutstandingVoteCount: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + Arn: Optional[str] = None + +class CreateProposalInputRequestTypeDef(BaseModel): + ClientRequestToken: str + NetworkId: str + MemberId: str + Actions: ProposalActionsTypeDef + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class MemberLogPublishingConfigurationTypeDef(BaseModel): + Fabric: Optional[MemberFabricLogPublishingConfigurationTypeDef] = None + +class NodeLogPublishingConfigurationTypeDef(BaseModel): + Fabric: Optional[NodeFabricLogPublishingConfigurationTypeDef] = None + +class GetNetworkOutputTypeDef(BaseModel): + Network: NetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProposalOutputTypeDef(BaseModel): + Proposal: ProposalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MemberConfigurationTypeDef(BaseModel): + Name: str + FrameworkConfiguration: MemberFrameworkConfigurationTypeDef + Description: Optional[str] = None + LogPublishingConfiguration: Optional[MemberLogPublishingConfigurationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + KmsKeyArn: Optional[str] = None + +class MemberTypeDef(BaseModel): + NetworkId: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + FrameworkAttributes: Optional[MemberFrameworkAttributesTypeDef] = None + LogPublishingConfiguration: Optional[MemberLogPublishingConfigurationTypeDef] = None + Status: Optional[MemberStatusType] = None + CreationDate: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + Arn: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class UpdateMemberInputRequestTypeDef(BaseModel): + NetworkId: str + MemberId: str + LogPublishingConfiguration: Optional[MemberLogPublishingConfigurationTypeDef] = None + +class NodeConfigurationTypeDef(BaseModel): + InstanceType: str + AvailabilityZone: Optional[str] = None + LogPublishingConfiguration: Optional[NodeLogPublishingConfigurationTypeDef] = None + StateDB: Optional[StateDBTypeType] = None + +class NodeTypeDef(BaseModel): + NetworkId: Optional[str] = None + MemberId: Optional[str] = None + Id: Optional[str] = None + InstanceType: Optional[str] = None + AvailabilityZone: Optional[str] = None + FrameworkAttributes: Optional[NodeFrameworkAttributesTypeDef] = None + LogPublishingConfiguration: Optional[NodeLogPublishingConfigurationTypeDef] = None + StateDB: Optional[StateDBTypeType] = None + Status: Optional[NodeStatusType] = None + CreationDate: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + Arn: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class UpdateNodeInputRequestTypeDef(BaseModel): + NetworkId: str + NodeId: str + MemberId: Optional[str] = None + LogPublishingConfiguration: Optional[NodeLogPublishingConfigurationTypeDef] = None + +class CreateMemberInputRequestTypeDef(BaseModel): + ClientRequestToken: str + InvitationId: str + NetworkId: str + MemberConfiguration: MemberConfigurationTypeDef + +class CreateNetworkInputRequestTypeDef(BaseModel): + ClientRequestToken: str + Name: str + Framework: FrameworkType + FrameworkVersion: str + VotingPolicy: VotingPolicyTypeDef + MemberConfiguration: MemberConfigurationTypeDef + Description: Optional[str] = None + FrameworkConfiguration: Optional[NetworkFrameworkConfigurationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class GetMemberOutputTypeDef(BaseModel): + Member: MemberTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNodeInputRequestTypeDef(BaseModel): + ClientRequestToken: str + NetworkId: str + NodeConfiguration: NodeConfigurationTypeDef + MemberId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class GetNodeOutputTypeDef(BaseModel): + Node: NodeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/managedblockchain_constants.py b/aws_resource_validator/pydantic_models/managedblockchain_constants.py new file mode 100644 index 00000000..a8af98e8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/managedblockchain_constants.py @@ -0,0 +1,433 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessorNetworkTypeType = Literal["ETHEREUM_GOERLI", + "ETHEREUM_MAINNET", + "ETHEREUM_MAINNET_AND_GOERLI", + "POLYGON_MAINNET", + "POLYGON_MUMBAI",] +AccessorStatusType = Literal["AVAILABLE", "DELETED", "PENDING_DELETION"] +AccessorTypeType = Literal["BILLING_TOKEN"] +EditionType = Literal["STANDARD", "STARTER"] +FrameworkType = Literal["ETHEREUM", "HYPERLEDGER_FABRIC"] +InvitationStatusType = Literal["ACCEPTED", "ACCEPTING", "EXPIRED", "PENDING", "REJECTED"] +ListAccessorsPaginatorName = Literal["list_accessors"] +MemberStatusType = Literal["AVAILABLE", + "CREATE_FAILED", + "CREATING", + "DELETED", + "DELETING", + "INACCESSIBLE_ENCRYPTION_KEY", + "UPDATING",] +NetworkStatusType = Literal["AVAILABLE", "CREATE_FAILED", "CREATING", "DELETED", "DELETING"] +NodeStatusType = Literal["AVAILABLE", + "CREATE_FAILED", + "CREATING", + "DELETED", + "DELETING", + "FAILED", + "INACCESSIBLE_ENCRYPTION_KEY", + "UNHEALTHY", + "UPDATING",] +ProposalStatusType = Literal["ACTION_FAILED", "APPROVED", "EXPIRED", "IN_PROGRESS", "REJECTED"] +StateDBTypeType = Literal["CouchDB", "LevelDB"] +ThresholdComparatorType = Literal["GREATER_THAN", "GREATER_THAN_OR_EQUAL_TO"] +VoteValueType = Literal["NO", "YES"] +ManagedBlockchainServiceName = Literal["managedblockchain"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_accessors"] +RegionName = Literal["ap-northeast-1", "ap-northeast-2", "ap-southeast-1", "eu-west-1", "eu-west-2", "us-east-1"] +ProposalActionsUnionTypeDef = Union['ProposalActionsTypeDef', 'ProposalActionsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/managedblockchain_query_classes.py b/aws_resource_validator/pydantic_models/managedblockchain_query_classes.py new file mode 100644 index 00000000..7a06455a --- /dev/null +++ b/aws_resource_validator/pydantic_models/managedblockchain_query_classes.py @@ -0,0 +1,294 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.managedblockchain_query_constants import * + +class AddressIdentifierFilterTypeDef(BaseModel): + transactionEventToAddress: Sequence[str] + +class ContractIdentifierTypeDef(BaseModel): + network: QueryNetworkType + contractAddress: str + +class OwnerIdentifierTypeDef(BaseModel): + address: str + +class TokenIdentifierTypeDef(BaseModel): + network: QueryNetworkType + contractAddress: Optional[str] = None + tokenId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ConfirmationStatusFilterTypeDef(BaseModel): + include: Sequence[ConfirmationStatusType] + +class ContractFilterTypeDef(BaseModel): + network: QueryNetworkType + tokenStandard: QueryTokenStandardType + deployerAddress: str + +class ContractMetadataTypeDef(BaseModel): + name: Optional[str] = None + symbol: Optional[str] = None + decimals: Optional[int] = None + +class GetTransactionInputRequestTypeDef(BaseModel): + network: QueryNetworkType + transactionHash: Optional[str] = None + transactionId: Optional[str] = None + +class TransactionTypeDef(BaseModel): + network: QueryNetworkType + transactionHash: str + transactionTimestamp: datetime + transactionIndex: int + numberOfTransactions: int + to: str + blockHash: Optional[str] = None + blockNumber: Optional[str] = None + from: Optional[str] = None + contractAddress: Optional[str] = None + gasUsed: Optional[str] = None + cumulativeGasUsed: Optional[str] = None + effectiveGasPrice: Optional[str] = None + signatureV: Optional[int] = None + signatureR: Optional[str] = None + signatureS: Optional[str] = None + transactionFee: Optional[str] = None + transactionId: Optional[str] = None + confirmationStatus: Optional[ConfirmationStatusType] = None + executionStatus: Optional[ExecutionStatusType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListFilteredTransactionEventsSortTypeDef(BaseModel): + sortBy: Optional[Literal["blockchainInstant"]] = None + sortOrder: Optional[SortOrderType] = None + +class VoutFilterTypeDef(BaseModel): + voutSpent: bool + +class OwnerFilterTypeDef(BaseModel): + address: str + +class TokenFilterTypeDef(BaseModel): + network: QueryNetworkType + contractAddress: Optional[str] = None + tokenId: Optional[str] = None + +class ListTransactionEventsInputRequestTypeDef(BaseModel): + network: QueryNetworkType + transactionHash: Optional[str] = None + transactionId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTransactionsSortTypeDef(BaseModel): + sortBy: Optional[Literal["TRANSACTION_TIMESTAMP"]] = None + sortOrder: Optional[SortOrderType] = None + +class TransactionOutputItemTypeDef(BaseModel): + transactionHash: str + network: QueryNetworkType + transactionTimestamp: datetime + transactionId: Optional[str] = None + confirmationStatus: Optional[ConfirmationStatusType] = None + +class AssetContractTypeDef(BaseModel): + contractIdentifier: ContractIdentifierTypeDef + tokenStandard: QueryTokenStandardType + deployerAddress: str + +class GetAssetContractInputRequestTypeDef(BaseModel): + contractIdentifier: ContractIdentifierTypeDef + +class BlockchainInstantTypeDef(BaseModel): + time: Optional[TimestampTypeDef] = None + +class ListAssetContractsInputRequestTypeDef(BaseModel): + contractFilter: ContractFilterTypeDef + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetAssetContractOutputTypeDef(BaseModel): + contractIdentifier: ContractIdentifierTypeDef + tokenStandard: QueryTokenStandardType + deployerAddress: str + metadata: ContractMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransactionOutputTypeDef(BaseModel): + transaction: TransactionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetContractsInputListAssetContractsPaginateTypeDef(BaseModel): + contractFilter: ContractFilterTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTransactionEventsInputListTransactionEventsPaginateTypeDef(BaseModel): + network: QueryNetworkType + transactionHash: Optional[str] = None + transactionId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTokenBalancesInputListTokenBalancesPaginateTypeDef(BaseModel): + tokenFilter: TokenFilterTypeDef + ownerFilter: Optional[OwnerFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTokenBalancesInputRequestTypeDef(BaseModel): + tokenFilter: TokenFilterTypeDef + ownerFilter: Optional[OwnerFilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTransactionsOutputTypeDef(BaseModel): + transactions: List[TransactionOutputItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetContractsOutputTypeDef(BaseModel): + contracts: List[AssetContractTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetTokenBalanceErrorItemTypeDef(BaseModel): + errorCode: str + errorMessage: str + errorType: ErrorTypeType + tokenIdentifier: Optional[TokenIdentifierTypeDef] = None + ownerIdentifier: Optional[OwnerIdentifierTypeDef] = None + atBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + +class BatchGetTokenBalanceInputItemTypeDef(BaseModel): + tokenIdentifier: TokenIdentifierTypeDef + ownerIdentifier: OwnerIdentifierTypeDef + atBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + +class BatchGetTokenBalanceOutputItemTypeDef(BaseModel): + balance: str + atBlockchainInstant: BlockchainInstantTypeDef + ownerIdentifier: Optional[OwnerIdentifierTypeDef] = None + tokenIdentifier: Optional[TokenIdentifierTypeDef] = None + lastUpdatedTime: Optional[BlockchainInstantTypeDef] = None + +class GetTokenBalanceInputRequestTypeDef(BaseModel): + tokenIdentifier: TokenIdentifierTypeDef + ownerIdentifier: OwnerIdentifierTypeDef + atBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + +class GetTokenBalanceOutputTypeDef(BaseModel): + ownerIdentifier: OwnerIdentifierTypeDef + tokenIdentifier: TokenIdentifierTypeDef + balance: str + atBlockchainInstant: BlockchainInstantTypeDef + lastUpdatedTime: BlockchainInstantTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTransactionsInputListTransactionsPaginateTypeDef(BaseModel): + address: str + network: QueryNetworkType + fromBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + toBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + sort: Optional[ListTransactionsSortTypeDef] = None + confirmationStatusFilter: Optional[ConfirmationStatusFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTransactionsInputRequestTypeDef(BaseModel): + address: str + network: QueryNetworkType + fromBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + toBlockchainInstant: Optional[BlockchainInstantTypeDef] = None + sort: Optional[ListTransactionsSortTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + confirmationStatusFilter: Optional[ConfirmationStatusFilterTypeDef] = None + +class TimeFilterTypeDef(BaseModel): + from: Optional[BlockchainInstantTypeDef] = None + to: Optional[BlockchainInstantTypeDef] = None + +class TokenBalanceTypeDef(BaseModel): + balance: str + atBlockchainInstant: BlockchainInstantTypeDef + ownerIdentifier: Optional[OwnerIdentifierTypeDef] = None + tokenIdentifier: Optional[TokenIdentifierTypeDef] = None + lastUpdatedTime: Optional[BlockchainInstantTypeDef] = None + +class TransactionEventTypeDef(BaseModel): + network: QueryNetworkType + transactionHash: str + eventType: QueryTransactionEventTypeType + from: Optional[str] = None + to: Optional[str] = None + value: Optional[str] = None + contractAddress: Optional[str] = None + tokenId: Optional[str] = None + transactionId: Optional[str] = None + voutIndex: Optional[int] = None + voutSpent: Optional[bool] = None + spentVoutTransactionId: Optional[str] = None + spentVoutTransactionHash: Optional[str] = None + spentVoutIndex: Optional[int] = None + blockchainInstant: Optional[BlockchainInstantTypeDef] = None + confirmationStatus: Optional[ConfirmationStatusType] = None + +class BatchGetTokenBalanceInputRequestTypeDef(BaseModel): + getTokenBalanceInputs: Optional[Sequence[BatchGetTokenBalanceInputItemTypeDef]] = None + +class BatchGetTokenBalanceOutputTypeDef(BaseModel): + tokenBalances: List[BatchGetTokenBalanceOutputItemTypeDef] + errors: List[BatchGetTokenBalanceErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFilteredTransactionEventsInputListFilteredTransactionEventsPaginateTypeDef(BaseModel): + network: str + addressIdentifierFilter: AddressIdentifierFilterTypeDef + timeFilter: Optional[TimeFilterTypeDef] = None + voutFilter: Optional[VoutFilterTypeDef] = None + confirmationStatusFilter: Optional[ConfirmationStatusFilterTypeDef] = None + sort: Optional[ListFilteredTransactionEventsSortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFilteredTransactionEventsInputRequestTypeDef(BaseModel): + network: str + addressIdentifierFilter: AddressIdentifierFilterTypeDef + timeFilter: Optional[TimeFilterTypeDef] = None + voutFilter: Optional[VoutFilterTypeDef] = None + confirmationStatusFilter: Optional[ConfirmationStatusFilterTypeDef] = None + sort: Optional[ListFilteredTransactionEventsSortTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTokenBalancesOutputTypeDef(BaseModel): + tokenBalances: List[TokenBalanceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFilteredTransactionEventsOutputTypeDef(BaseModel): + events: List[TransactionEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTransactionEventsOutputTypeDef(BaseModel): + events: List[TransactionEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/managedblockchain_query_constants.py b/aws_resource_validator/pydantic_models/managedblockchain_query_constants.py new file mode 100644 index 00000000..42057342 --- /dev/null +++ b/aws_resource_validator/pydantic_models/managedblockchain_query_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConfirmationStatusType = Literal["FINAL", "NONFINAL"] +ErrorTypeType = Literal["RESOURCE_NOT_FOUND_EXCEPTION", "VALIDATION_EXCEPTION"] +ExecutionStatusType = Literal["FAILED", "SUCCEEDED"] +ListAssetContractsPaginatorName = Literal["list_asset_contracts"] +ListFilteredTransactionEventsPaginatorName = Literal["list_filtered_transaction_events"] +ListFilteredTransactionEventsSortByType = Literal["blockchainInstant"] +ListTokenBalancesPaginatorName = Literal["list_token_balances"] +ListTransactionEventsPaginatorName = Literal["list_transaction_events"] +ListTransactionsPaginatorName = Literal["list_transactions"] +ListTransactionsSortByType = Literal["TRANSACTION_TIMESTAMP"] +QueryNetworkType = Literal["BITCOIN_MAINNET", "BITCOIN_TESTNET", "ETHEREUM_MAINNET", "ETHEREUM_SEPOLIA_TESTNET"] +QueryTokenStandardType = Literal["ERC1155", "ERC20", "ERC721"] +QueryTransactionEventTypeType = Literal["BITCOIN_VIN", + "BITCOIN_VOUT", + "ERC1155_TRANSFER", + "ERC20_BURN", + "ERC20_DEPOSIT", + "ERC20_MINT", + "ERC20_TRANSFER", + "ERC20_WITHDRAWAL", + "ERC721_TRANSFER", + "ETH_TRANSFER", + "INTERNAL_ETH_TRANSFER",] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +ManagedBlockchainQueryServiceName = Literal["managedblockchain-query"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_asset_contracts", + "list_filtered_transaction_events", + "list_token_balances", + "list_transaction_events", + "list_transactions",] +RegionName = Literal["us-east-1"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/marketplace_agreement_classes.py b/aws_resource_validator/pydantic_models/marketplace_agreement_classes.py new file mode 100644 index 00000000..7045b82e --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_agreement_classes.py @@ -0,0 +1,207 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.marketplace_agreement_constants import * + +class ByolPricingTermTypeDef(BaseModel): + type: Optional[str] = None + +class RecurringPaymentTermTypeDef(BaseModel): + billingPeriod: Optional[str] = None + currencyCode: Optional[str] = None + price: Optional[str] = None + type: Optional[str] = None + +class SupportTermTypeDef(BaseModel): + refundPolicy: Optional[str] = None + type: Optional[str] = None + +class ValidityTermTypeDef(BaseModel): + agreementDuration: Optional[str] = None + agreementEndDate: Optional[datetime] = None + agreementStartDate: Optional[datetime] = None + type: Optional[str] = None + +class AcceptorTypeDef(BaseModel): + accountId: Optional[str] = None + +class ProposerTypeDef(BaseModel): + accountId: Optional[str] = None + +class DimensionTypeDef(BaseModel): + dimensionKey: str + dimensionValue: int + +class ConstraintsTypeDef(BaseModel): + multipleDimensionSelection: Optional[str] = None + quantityConfiguration: Optional[str] = None + +class RateCardItemTypeDef(BaseModel): + dimensionKey: Optional[str] = None + price: Optional[str] = None + +class SelectorTypeDef(BaseModel): + type: Optional[str] = None + value: Optional[str] = None + +class DescribeAgreementInputRequestTypeDef(BaseModel): + agreementId: str + +class EstimatedChargesTypeDef(BaseModel): + agreementValue: Optional[str] = None + currencyCode: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DocumentItemTypeDef(BaseModel): + type: Optional[str] = None + url: Optional[str] = None + version: Optional[str] = None + +class FilterTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class GrantItemTypeDef(BaseModel): + dimensionKey: Optional[str] = None + maxQuantity: Optional[int] = None + +class GetAgreementTermsInputRequestTypeDef(BaseModel): + agreementId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ScheduleItemTypeDef(BaseModel): + chargeAmount: Optional[str] = None + chargeDate: Optional[datetime] = None + +class ResourceTypeDef(BaseModel): + id: Optional[str] = None + type: Optional[str] = None + +class RenewalTermConfigurationTypeDef(BaseModel): + enableAutoRenew: bool + +class SortTypeDef(BaseModel): + sortBy: Optional[str] = None + sortOrder: Optional[SortOrderType] = None + +class ConfigurableUpfrontPricingTermConfigurationTypeDef(BaseModel): + dimensions: List[DimensionTypeDef] + selectorValue: str + +class UsageBasedRateCardItemTypeDef(BaseModel): + rateCard: Optional[List[RateCardItemTypeDef]] = None + +class ConfigurableUpfrontRateCardItemTypeDef(BaseModel): + constraints: Optional[ConstraintsTypeDef] = None + rateCard: Optional[List[RateCardItemTypeDef]] = None + selector: Optional[SelectorTypeDef] = None + +class LegalTermTypeDef(BaseModel): + documents: Optional[List[DocumentItemTypeDef]] = None + type: Optional[str] = None + +class FixedUpfrontPricingTermTypeDef(BaseModel): + currencyCode: Optional[str] = None + duration: Optional[str] = None + grants: Optional[List[GrantItemTypeDef]] = None + price: Optional[str] = None + type: Optional[str] = None + +class FreeTrialPricingTermTypeDef(BaseModel): + duration: Optional[str] = None + grants: Optional[List[GrantItemTypeDef]] = None + type: Optional[str] = None + +class PaymentScheduleTermTypeDef(BaseModel): + currencyCode: Optional[str] = None + schedule: Optional[List[ScheduleItemTypeDef]] = None + type: Optional[str] = None + +class ProposalSummaryTypeDef(BaseModel): + offerId: Optional[str] = None + resources: Optional[List[ResourceTypeDef]] = None + +class RenewalTermTypeDef(BaseModel): + configuration: Optional[RenewalTermConfigurationTypeDef] = None + type: Optional[str] = None + +class SearchAgreementsInputRequestTypeDef(BaseModel): + catalog: Optional[str] = None + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sort: Optional[SortTypeDef] = None + +class UsageBasedPricingTermTypeDef(BaseModel): + currencyCode: Optional[str] = None + rateCards: Optional[List[UsageBasedRateCardItemTypeDef]] = None + type: Optional[str] = None + +class ConfigurableUpfrontPricingTermTypeDef(BaseModel): + configuration: Optional[ConfigurableUpfrontPricingTermConfigurationTypeDef] = None + currencyCode: Optional[str] = None + rateCards: Optional[List[ConfigurableUpfrontRateCardItemTypeDef]] = None + type: Optional[str] = None + +class AgreementViewSummaryTypeDef(BaseModel): + acceptanceTime: Optional[datetime] = None + acceptor: Optional[AcceptorTypeDef] = None + agreementId: Optional[str] = None + agreementType: Optional[str] = None + endTime: Optional[datetime] = None + proposalSummary: Optional[ProposalSummaryTypeDef] = None + proposer: Optional[ProposerTypeDef] = None + startTime: Optional[datetime] = None + status: Optional[AgreementStatusType] = None + +class DescribeAgreementOutputTypeDef(BaseModel): + acceptanceTime: datetime + acceptor: AcceptorTypeDef + agreementId: str + agreementType: str + endTime: datetime + estimatedCharges: EstimatedChargesTypeDef + proposalSummary: ProposalSummaryTypeDef + proposer: ProposerTypeDef + startTime: datetime + status: AgreementStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptedTermTypeDef(BaseModel): + byolPricingTerm: Optional[ByolPricingTermTypeDef] = None + configurableUpfrontPricingTerm: Optional[ConfigurableUpfrontPricingTermTypeDef] = None + fixedUpfrontPricingTerm: Optional[FixedUpfrontPricingTermTypeDef] = None + freeTrialPricingTerm: Optional[FreeTrialPricingTermTypeDef] = None + legalTerm: Optional[LegalTermTypeDef] = None + paymentScheduleTerm: Optional[PaymentScheduleTermTypeDef] = None + recurringPaymentTerm: Optional[RecurringPaymentTermTypeDef] = None + renewalTerm: Optional[RenewalTermTypeDef] = None + supportTerm: Optional[SupportTermTypeDef] = None + usageBasedPricingTerm: Optional[UsageBasedPricingTermTypeDef] = None + validityTerm: Optional[ValidityTermTypeDef] = None + +class SearchAgreementsOutputTypeDef(BaseModel): + agreementViewSummaries: List[AgreementViewSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAgreementTermsOutputTypeDef(BaseModel): + acceptedTerms: List[AcceptedTermTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/marketplace_agreement_constants.py b/aws_resource_validator/pydantic_models/marketplace_agreement_constants.py new file mode 100644 index 00000000..437e0065 --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_agreement_constants.py @@ -0,0 +1,399 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgreementStatusType = Literal["ACTIVE", + "ARCHIVED", + "CANCELLED", + "EXPIRED", + "RENEWED", + "REPLACED", + "ROLLED_BACK", + "SUPERSEDED", + "TERMINATED",] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +AgreementServiceServiceName = Literal["marketplace-agreement"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["us-east-1"] diff --git a/aws_resource_validator/pydantic_models/marketplace_catalog_classes.py b/aws_resource_validator/pydantic_models/marketplace_catalog_classes.py new file mode 100644 index 00000000..2ab09663 --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_catalog_classes.py @@ -0,0 +1,535 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.marketplace_catalog_constants import * + +class AmiProductEntityIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class AmiProductTitleFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class AmiProductVisibilityFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[AmiProductVisibilityStringType]] = None + +class AmiProductLastModifiedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class AmiProductSortTypeDef(BaseModel): + SortBy: Optional[AmiProductSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class AmiProductSummaryTypeDef(BaseModel): + ProductTitle: Optional[str] = None + Visibility: Optional[AmiProductVisibilityStringType] = None + +class EntityRequestTypeDef(BaseModel): + Catalog: str + EntityId: str + +class BatchDescribeErrorDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class EntityDetailTypeDef(BaseModel): + EntityType: Optional[str] = None + EntityArn: Optional[str] = None + EntityIdentifier: Optional[str] = None + LastModifiedDate: Optional[str] = None + DetailsDocument: Optional[Dict[str, Any]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CancelChangeSetRequestRequestTypeDef(BaseModel): + Catalog: str + ChangeSetId: str + +class ChangeSetSummaryListItemTypeDef(BaseModel): + ChangeSetId: Optional[str] = None + ChangeSetArn: Optional[str] = None + ChangeSetName: Optional[str] = None + StartTime: Optional[str] = None + EndTime: Optional[str] = None + Status: Optional[ChangeStatusType] = None + EntityIdList: Optional[List[str]] = None + FailureCode: Optional[FailureCodeType] = None + +class EntityTypeDef(BaseModel): + Type: str + Identifier: Optional[str] = None + +class ErrorDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ContainerProductEntityIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class ContainerProductTitleFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ContainerProductVisibilityFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[ContainerProductVisibilityStringType]] = None + +class ContainerProductLastModifiedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class ContainerProductSortTypeDef(BaseModel): + SortBy: Optional[ContainerProductSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ContainerProductSummaryTypeDef(BaseModel): + ProductTitle: Optional[str] = None + Visibility: Optional[ContainerProductVisibilityStringType] = None + +class DataProductEntityIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class DataProductTitleFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class DataProductVisibilityFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[DataProductVisibilityStringType]] = None + +class DataProductLastModifiedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class DataProductSortTypeDef(BaseModel): + SortBy: Optional[DataProductSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class DataProductSummaryTypeDef(BaseModel): + ProductTitle: Optional[str] = None + Visibility: Optional[DataProductVisibilityStringType] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DescribeChangeSetRequestRequestTypeDef(BaseModel): + Catalog: str + ChangeSetId: str + +class DescribeEntityRequestRequestTypeDef(BaseModel): + Catalog: str + EntityId: str + +class OfferSummaryTypeDef(BaseModel): + Name: Optional[str] = None + ProductId: Optional[str] = None + ResaleAuthorizationId: Optional[str] = None + ReleaseDate: Optional[str] = None + AvailabilityEndDate: Optional[str] = None + BuyerAccounts: Optional[List[str]] = None + State: Optional[OfferStateStringType] = None + Targeting: Optional[List[OfferTargetingStringType]] = None + +class ResaleAuthorizationSummaryTypeDef(BaseModel): + Name: Optional[str] = None + ProductId: Optional[str] = None + ProductName: Optional[str] = None + ManufacturerAccountId: Optional[str] = None + ManufacturerLegalName: Optional[str] = None + ResellerAccountID: Optional[str] = None + ResellerLegalName: Optional[str] = None + Status: Optional[ResaleAuthorizationStatusStringType] = None + OfferExtendedStatus: Optional[str] = None + CreatedDate: Optional[str] = None + AvailabilityEndDate: Optional[str] = None + +class SaaSProductSummaryTypeDef(BaseModel): + ProductTitle: Optional[str] = None + Visibility: Optional[SaaSProductVisibilityStringType] = None + +class OfferSortTypeDef(BaseModel): + SortBy: Optional[OfferSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ResaleAuthorizationSortTypeDef(BaseModel): + SortBy: Optional[ResaleAuthorizationSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class SaaSProductSortTypeDef(BaseModel): + SortBy: Optional[SaaSProductSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + ValueList: Optional[Sequence[str]] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class SortTypeDef(BaseModel): + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class OfferAvailabilityEndDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class OfferBuyerAccountsFilterTypeDef(BaseModel): + WildCardValue: Optional[str] = None + +class OfferEntityIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class OfferNameFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class OfferProductIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class OfferResaleAuthorizationIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class OfferStateFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[OfferStateStringType]] = None + +class OfferTargetingFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[OfferTargetingStringType]] = None + +class OfferLastModifiedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class OfferReleaseDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class ResaleAuthorizationAvailabilityEndDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class ResaleAuthorizationCreatedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class ResaleAuthorizationEntityIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class ResaleAuthorizationManufacturerAccountIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationManufacturerLegalNameFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationNameFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationOfferExtendedStatusFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class ResaleAuthorizationProductIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationProductNameFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationResellerAccountIDFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationResellerLegalNameFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class ResaleAuthorizationStatusFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[ResaleAuthorizationStatusStringType]] = None + +class ResaleAuthorizationLastModifiedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class SaaSProductEntityIdFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class SaaSProductTitleFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + WildCardValue: Optional[str] = None + +class SaaSProductVisibilityFilterTypeDef(BaseModel): + ValueList: Optional[Sequence[SaaSProductVisibilityStringType]] = None + +class SaaSProductLastModifiedDateFilterDateRangeTypeDef(BaseModel): + AfterValue: Optional[str] = None + BeforeValue: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AmiProductLastModifiedDateFilterTypeDef(BaseModel): + DateRange: Optional[AmiProductLastModifiedDateFilterDateRangeTypeDef] = None + +class BatchDescribeEntitiesRequestRequestTypeDef(BaseModel): + EntityRequestList: Sequence[EntityRequestTypeDef] + +class BatchDescribeEntitiesResponseTypeDef(BaseModel): + EntityDetails: Dict[str, EntityDetailTypeDef] + Errors: Dict[str, BatchDescribeErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CancelChangeSetResponseTypeDef(BaseModel): + ChangeSetId: str + ChangeSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEntityResponseTypeDef(BaseModel): + EntityType: str + EntityIdentifier: str + EntityArn: str + LastModifiedDate: str + Details: str + DetailsDocument: Dict[str, Any] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartChangeSetResponseTypeDef(BaseModel): + ChangeSetId: str + ChangeSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChangeSetsResponseTypeDef(BaseModel): + ChangeSetSummaryList: List[ChangeSetSummaryListItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeSummaryTypeDef(BaseModel): + ChangeType: Optional[str] = None + Entity: Optional[EntityTypeDef] = None + Details: Optional[str] = None + DetailsDocument: Optional[Dict[str, Any]] = None + ErrorDetailList: Optional[List[ErrorDetailTypeDef]] = None + ChangeName: Optional[str] = None + +class ChangeTypeDef(BaseModel): + ChangeType: str + Entity: EntityTypeDef + EntityTags: Optional[Sequence[TagTypeDef]] = None + Details: Optional[str] = None + DetailsDocument: Optional[Mapping[str, Any]] = None + ChangeName: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class ContainerProductLastModifiedDateFilterTypeDef(BaseModel): + DateRange: Optional[ContainerProductLastModifiedDateFilterDateRangeTypeDef] = None + +class DataProductLastModifiedDateFilterTypeDef(BaseModel): + DateRange: Optional[DataProductLastModifiedDateFilterDateRangeTypeDef] = None + +class EntitySummaryTypeDef(BaseModel): + Name: Optional[str] = None + EntityType: Optional[str] = None + EntityId: Optional[str] = None + EntityArn: Optional[str] = None + LastModifiedDate: Optional[str] = None + Visibility: Optional[str] = None + AmiProductSummary: Optional[AmiProductSummaryTypeDef] = None + ContainerProductSummary: Optional[ContainerProductSummaryTypeDef] = None + DataProductSummary: Optional[DataProductSummaryTypeDef] = None + SaaSProductSummary: Optional[SaaSProductSummaryTypeDef] = None + OfferSummary: Optional[OfferSummaryTypeDef] = None + ResaleAuthorizationSummary: Optional[ResaleAuthorizationSummaryTypeDef] = None + +class EntityTypeSortTypeDef(BaseModel): + DataProductSort: Optional[DataProductSortTypeDef] = None + SaaSProductSort: Optional[SaaSProductSortTypeDef] = None + AmiProductSort: Optional[AmiProductSortTypeDef] = None + OfferSort: Optional[OfferSortTypeDef] = None + ContainerProductSort: Optional[ContainerProductSortTypeDef] = None + ResaleAuthorizationSort: Optional[ResaleAuthorizationSortTypeDef] = None + +class ListChangeSetsRequestListChangeSetsPaginateTypeDef(BaseModel): + Catalog: str + FilterList: Optional[Sequence[FilterTypeDef]] = None + Sort: Optional[SortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChangeSetsRequestRequestTypeDef(BaseModel): + Catalog: str + FilterList: Optional[Sequence[FilterTypeDef]] = None + Sort: Optional[SortTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class OfferAvailabilityEndDateFilterTypeDef(BaseModel): + DateRange: Optional[OfferAvailabilityEndDateFilterDateRangeTypeDef] = None + +class OfferLastModifiedDateFilterTypeDef(BaseModel): + DateRange: Optional[OfferLastModifiedDateFilterDateRangeTypeDef] = None + +class OfferReleaseDateFilterTypeDef(BaseModel): + DateRange: Optional[OfferReleaseDateFilterDateRangeTypeDef] = None + +class ResaleAuthorizationAvailabilityEndDateFilterTypeDef(BaseModel): + DateRange: Optional[ResaleAuthorizationAvailabilityEndDateFilterDateRangeTypeDef] = None + ValueList: Optional[Sequence[str]] = None + +class ResaleAuthorizationCreatedDateFilterTypeDef(BaseModel): + DateRange: Optional[ResaleAuthorizationCreatedDateFilterDateRangeTypeDef] = None + ValueList: Optional[Sequence[str]] = None + +class ResaleAuthorizationLastModifiedDateFilterTypeDef(BaseModel): + DateRange: Optional[ResaleAuthorizationLastModifiedDateFilterDateRangeTypeDef] = None + +class SaaSProductLastModifiedDateFilterTypeDef(BaseModel): + DateRange: Optional[SaaSProductLastModifiedDateFilterDateRangeTypeDef] = None + +class AmiProductFiltersTypeDef(BaseModel): + EntityId: Optional[AmiProductEntityIdFilterTypeDef] = None + LastModifiedDate: Optional[AmiProductLastModifiedDateFilterTypeDef] = None + ProductTitle: Optional[AmiProductTitleFilterTypeDef] = None + Visibility: Optional[AmiProductVisibilityFilterTypeDef] = None + +class DescribeChangeSetResponseTypeDef(BaseModel): + ChangeSetId: str + ChangeSetArn: str + ChangeSetName: str + Intent: IntentType + StartTime: str + EndTime: str + Status: ChangeStatusType + FailureCode: FailureCodeType + FailureDescription: str + ChangeSet: List[ChangeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartChangeSetRequestRequestTypeDef(BaseModel): + Catalog: str + ChangeSet: Sequence[ChangeTypeDef] + ChangeSetName: Optional[str] = None + ClientRequestToken: Optional[str] = None + ChangeSetTags: Optional[Sequence[TagTypeDef]] = None + Intent: Optional[IntentType] = None + +class ContainerProductFiltersTypeDef(BaseModel): + EntityId: Optional[ContainerProductEntityIdFilterTypeDef] = None + LastModifiedDate: Optional[ContainerProductLastModifiedDateFilterTypeDef] = None + ProductTitle: Optional[ContainerProductTitleFilterTypeDef] = None + Visibility: Optional[ContainerProductVisibilityFilterTypeDef] = None + +class DataProductFiltersTypeDef(BaseModel): + EntityId: Optional[DataProductEntityIdFilterTypeDef] = None + ProductTitle: Optional[DataProductTitleFilterTypeDef] = None + Visibility: Optional[DataProductVisibilityFilterTypeDef] = None + LastModifiedDate: Optional[DataProductLastModifiedDateFilterTypeDef] = None + +class ListEntitiesResponseTypeDef(BaseModel): + EntitySummaryList: List[EntitySummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OfferFiltersTypeDef(BaseModel): + EntityId: Optional[OfferEntityIdFilterTypeDef] = None + Name: Optional[OfferNameFilterTypeDef] = None + ProductId: Optional[OfferProductIdFilterTypeDef] = None + ResaleAuthorizationId: Optional[OfferResaleAuthorizationIdFilterTypeDef] = None + ReleaseDate: Optional[OfferReleaseDateFilterTypeDef] = None + AvailabilityEndDate: Optional[OfferAvailabilityEndDateFilterTypeDef] = None + BuyerAccounts: Optional[OfferBuyerAccountsFilterTypeDef] = None + State: Optional[OfferStateFilterTypeDef] = None + Targeting: Optional[OfferTargetingFilterTypeDef] = None + LastModifiedDate: Optional[OfferLastModifiedDateFilterTypeDef] = None + +class ResaleAuthorizationFiltersTypeDef(BaseModel): + EntityId: Optional[ResaleAuthorizationEntityIdFilterTypeDef] = None + Name: Optional[ResaleAuthorizationNameFilterTypeDef] = None + ProductId: Optional[ResaleAuthorizationProductIdFilterTypeDef] = None + CreatedDate: Optional[ResaleAuthorizationCreatedDateFilterTypeDef] = None + AvailabilityEndDate: Optional[ResaleAuthorizationAvailabilityEndDateFilterTypeDef] = None + ManufacturerAccountId: Optional[ResaleAuthorizationManufacturerAccountIdFilterTypeDef] = None + ProductName: Optional[ResaleAuthorizationProductNameFilterTypeDef] = None + ManufacturerLegalName: Optional[ResaleAuthorizationManufacturerLegalNameFilterTypeDef] = None + ResellerAccountID: Optional[ResaleAuthorizationResellerAccountIDFilterTypeDef] = None + ResellerLegalName: Optional[ResaleAuthorizationResellerLegalNameFilterTypeDef] = None + Status: Optional[ResaleAuthorizationStatusFilterTypeDef] = None + OfferExtendedStatus: Optional[ResaleAuthorizationOfferExtendedStatusFilterTypeDef] = None + LastModifiedDate: Optional[ResaleAuthorizationLastModifiedDateFilterTypeDef] = None + +class SaaSProductFiltersTypeDef(BaseModel): + EntityId: Optional[SaaSProductEntityIdFilterTypeDef] = None + ProductTitle: Optional[SaaSProductTitleFilterTypeDef] = None + Visibility: Optional[SaaSProductVisibilityFilterTypeDef] = None + LastModifiedDate: Optional[SaaSProductLastModifiedDateFilterTypeDef] = None + +class EntityTypeFiltersTypeDef(BaseModel): + DataProductFilters: Optional[DataProductFiltersTypeDef] = None + SaaSProductFilters: Optional[SaaSProductFiltersTypeDef] = None + AmiProductFilters: Optional[AmiProductFiltersTypeDef] = None + OfferFilters: Optional[OfferFiltersTypeDef] = None + ContainerProductFilters: Optional[ContainerProductFiltersTypeDef] = None + ResaleAuthorizationFilters: Optional[ResaleAuthorizationFiltersTypeDef] = None + +class ListEntitiesRequestListEntitiesPaginateTypeDef(BaseModel): + Catalog: str + EntityType: str + FilterList: Optional[Sequence[FilterTypeDef]] = None + Sort: Optional[SortTypeDef] = None + OwnershipType: Optional[OwnershipTypeType] = None + EntityTypeFilters: Optional[EntityTypeFiltersTypeDef] = None + EntityTypeSort: Optional[EntityTypeSortTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEntitiesRequestRequestTypeDef(BaseModel): + Catalog: str + EntityType: str + FilterList: Optional[Sequence[FilterTypeDef]] = None + Sort: Optional[SortTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + OwnershipType: Optional[OwnershipTypeType] = None + EntityTypeFilters: Optional[EntityTypeFiltersTypeDef] = None + EntityTypeSort: Optional[EntityTypeSortTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/marketplace_catalog_constants.py b/aws_resource_validator/pydantic_models/marketplace_catalog_constants.py new file mode 100644 index 00000000..13d00d3a --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_catalog_constants.py @@ -0,0 +1,437 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AmiProductSortByType = Literal["EntityId", "LastModifiedDate", "ProductTitle", "Visibility"] +AmiProductVisibilityStringType = Literal["Draft", "Limited", "Public", "Restricted"] +ChangeStatusType = Literal["APPLYING", "CANCELLED", "FAILED", "PREPARING", "SUCCEEDED"] +ContainerProductSortByType = Literal["EntityId", "LastModifiedDate", "ProductTitle", "Visibility"] +ContainerProductVisibilityStringType = Literal["Draft", "Limited", "Public", "Restricted"] +DataProductSortByType = Literal["EntityId", "LastModifiedDate", "ProductTitle", "Visibility"] +DataProductVisibilityStringType = Literal["Draft", "Limited", "Public", "Restricted", "Unavailable"] +FailureCodeType = Literal["CLIENT_ERROR", "SERVER_FAULT"] +IntentType = Literal["APPLY", "VALIDATE"] +ListChangeSetsPaginatorName = Literal["list_change_sets"] +ListEntitiesPaginatorName = Literal["list_entities"] +OfferSortByType = Literal["AvailabilityEndDate", + "BuyerAccounts", + "EntityId", + "LastModifiedDate", + "Name", + "ProductId", + "ReleaseDate", + "ResaleAuthorizationId", + "State", + "Targeting",] +OfferStateStringType = Literal["Draft", "Released"] +OfferTargetingStringType = Literal["BuyerAccounts", "CountryCodes", "None", "ParticipatingPrograms"] +OwnershipTypeType = Literal["SELF", "SHARED"] +ResaleAuthorizationSortByType = Literal["AvailabilityEndDate", + "CreatedDate", + "EntityId", + "LastModifiedDate", + "ManufacturerAccountId", + "ManufacturerLegalName", + "Name", + "OfferExtendedStatus", + "ProductId", + "ProductName", + "ResellerAccountID", + "ResellerLegalName", + "Status",] +ResaleAuthorizationStatusStringType = Literal["Active", "Draft", "Restricted"] +SaaSProductSortByType = Literal["EntityId", "LastModifiedDate", "ProductTitle", "Visibility"] +SaaSProductVisibilityStringType = Literal["Draft", "Limited", "Public", "Restricted"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +MarketplaceCatalogServiceName = Literal["marketplace-catalog"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_change_sets", "list_entities"] +RegionName = Literal["us-east-1"] diff --git a/aws_resource_validator/pydantic_models/marketplace_deployment_classes.py b/aws_resource_validator/pydantic_models/marketplace_deployment_classes.py new file mode 100644 index 00000000..c7ff5340 --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_deployment_classes.py @@ -0,0 +1,55 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.marketplace_deployment_constants import * + +class DeploymentParameterInputTypeDef(BaseModel): + name: str + secretString: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Optional[Mapping[str, str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeploymentParameterResponseTypeDef(BaseModel): + agreementId: str + deploymentParameterId: str + resourceArn: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeploymentParameterRequestRequestTypeDef(BaseModel): + agreementId: str + catalog: str + deploymentParameter: DeploymentParameterInputTypeDef + productId: str + clientToken: Optional[str] = None + expirationDate: Optional[TimestampTypeDef] = None + tags: Optional[Mapping[str, str]] = None + diff --git a/aws_resource_validator/pydantic_models/marketplace_deployment_constants.py b/aws_resource_validator/pydantic_models/marketplace_deployment_constants.py new file mode 100644 index 00000000..95491fde --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_deployment_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +MarketplaceDeploymentServiceServiceName = Literal["marketplace-deployment"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/marketplace_entitlement_classes.py b/aws_resource_validator/pydantic_models/marketplace_entitlement_classes.py new file mode 100644 index 00000000..bf3a0bc2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_entitlement_classes.py @@ -0,0 +1,54 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.marketplace_entitlement_constants import * + +class EntitlementValueTypeDef(BaseModel): + IntegerValue: Optional[int] = None + DoubleValue: Optional[float] = None + BooleanValue: Optional[bool] = None + StringValue: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetEntitlementsRequestRequestTypeDef(BaseModel): + ProductCode: str + Filter: Optional[Mapping[GetEntitlementFilterNameType, Sequence[str]]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class EntitlementTypeDef(BaseModel): + ProductCode: Optional[str] = None + Dimension: Optional[str] = None + CustomerIdentifier: Optional[str] = None + Value: Optional[EntitlementValueTypeDef] = None + ExpirationDate: Optional[datetime] = None + +class GetEntitlementsRequestGetEntitlementsPaginateTypeDef(BaseModel): + ProductCode: str + Filter: Optional[Mapping[GetEntitlementFilterNameType, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetEntitlementsResultTypeDef(BaseModel): + Entitlements: List[EntitlementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/marketplace_entitlement_constants.py b/aws_resource_validator/pydantic_models/marketplace_entitlement_constants.py new file mode 100644 index 00000000..5c13aab7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplace_entitlement_constants.py @@ -0,0 +1,401 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +GetEntitlementFilterNameType = Literal["CUSTOMER_IDENTIFIER", "DIMENSION"] +GetEntitlementsPaginatorName = Literal["get_entitlements"] +MarketplaceEntitlementServiceServiceName = Literal["marketplace-entitlement"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_entitlements"] +RegionName = Literal["us-east-1"] diff --git a/aws_resource_validator/pydantic_models/marketplacecommerceanalytics_classes.py b/aws_resource_validator/pydantic_models/marketplacecommerceanalytics_classes.py new file mode 100644 index 00000000..e12c0e69 --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplacecommerceanalytics_classes.py @@ -0,0 +1,46 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.marketplacecommerceanalytics_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GenerateDataSetRequestRequestTypeDef(BaseModel): + dataSetType: DataSetTypeType + dataSetPublicationDate: TimestampTypeDef + roleNameArn: str + destinationS3BucketName: str + snsTopicArn: str + destinationS3Prefix: Optional[str] = None + customerDefinedValues: Optional[Mapping[str, str]] = None + +class StartSupportDataExportRequestRequestTypeDef(BaseModel): + dataSetType: SupportDataSetTypeType + fromDate: TimestampTypeDef + roleNameArn: str + destinationS3BucketName: str + snsTopicArn: str + destinationS3Prefix: Optional[str] = None + customerDefinedValues: Optional[Mapping[str, str]] = None + +class GenerateDataSetResultTypeDef(BaseModel): + dataSetRequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSupportDataExportResultTypeDef(BaseModel): + dataSetRequestId: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/marketplacecommerceanalytics_constants.py b/aws_resource_validator/pydantic_models/marketplacecommerceanalytics_constants.py new file mode 100644 index 00000000..a6db1c7e --- /dev/null +++ b/aws_resource_validator/pydantic_models/marketplacecommerceanalytics_constants.py @@ -0,0 +1,416 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DataSetTypeType = Literal["customer_profile_by_geography", + "customer_profile_by_industry", + "customer_profile_by_revenue", + "customer_subscriber_annual_subscriptions", + "customer_subscriber_hourly_monthly_subscriptions", + "daily_business_canceled_product_subscribers", + "daily_business_fees", + "daily_business_free_trial_conversions", + "daily_business_new_instances", + "daily_business_new_product_subscribers", + "daily_business_usage_by_instance_type", + "disbursed_amount_by_age_of_disbursed_funds", + "disbursed_amount_by_age_of_past_due_funds", + "disbursed_amount_by_age_of_uncollected_funds", + "disbursed_amount_by_customer_geo", + "disbursed_amount_by_instance_hours", + "disbursed_amount_by_product", + "disbursed_amount_by_product_with_uncollected_funds", + "disbursed_amount_by_uncollected_funds_breakdown", + "monthly_revenue_annual_subscriptions", + "monthly_revenue_billing_and_revenue_data", + "monthly_revenue_field_demonstration_usage", + "monthly_revenue_flexible_payment_schedule", + "sales_compensation_billed_revenue", + "us_sales_and_use_tax_records",] +SupportDataSetTypeType = Literal["customer_support_contacts_data", "test_customer_support_contacts_data"] +MarketplaceCommerceAnalyticsServiceName = Literal["marketplacecommerceanalytics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["us-east-1"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/mediaconnect_classes.py b/aws_resource_validator/pydantic_models/mediaconnect_classes.py new file mode 100644 index 00000000..8be241dd --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediaconnect_classes.py @@ -0,0 +1,1091 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediaconnect_constants import * + +class VpcInterfaceAttachmentTypeDef(BaseModel): + VpcInterfaceName: Optional[str] = None + +class AddBridgeNetworkOutputRequestTypeDef(BaseModel): + IpAddress: str + Name: str + NetworkName: str + Port: int + Protocol: ProtocolType + Ttl: int + +class AddBridgeNetworkSourceRequestTypeDef(BaseModel): + MulticastIp: str + Name: str + NetworkName: str + Port: int + Protocol: ProtocolType + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AddEgressGatewayBridgeRequestTypeDef(BaseModel): + MaxBitrate: int + +class VpcInterfaceRequestTypeDef(BaseModel): + Name: str + RoleArn: str + SecurityGroupIds: Sequence[str] + SubnetId: str + NetworkInterfaceType: Optional[NetworkInterfaceTypeType] = None + +class VpcInterfaceTypeDef(BaseModel): + Name: str + NetworkInterfaceIds: List[str] + NetworkInterfaceType: NetworkInterfaceTypeType + RoleArn: str + SecurityGroupIds: List[str] + SubnetId: str + +class AddIngressGatewayBridgeRequestTypeDef(BaseModel): + MaxBitrate: int + MaxOutputs: int + +class AddMaintenanceTypeDef(BaseModel): + MaintenanceDay: MaintenanceDayType + MaintenanceStartHour: str + +class EncryptionTypeDef(BaseModel): + RoleArn: str + Algorithm: Optional[AlgorithmType] = None + ConstantInitializationVector: Optional[str] = None + DeviceId: Optional[str] = None + KeyType: Optional[KeyTypeType] = None + Region: Optional[str] = None + ResourceId: Optional[str] = None + SecretArn: Optional[str] = None + Url: Optional[str] = None + +class BridgeFlowOutputTypeDef(BaseModel): + FlowArn: str + FlowSourceArn: str + Name: str + +class BridgeNetworkOutputTypeDef(BaseModel): + IpAddress: str + Name: str + NetworkName: str + Port: int + Protocol: ProtocolType + Ttl: int + +class BridgeNetworkSourceTypeDef(BaseModel): + MulticastIp: str + Name: str + NetworkName: str + Port: int + Protocol: ProtocolType + +class EgressGatewayBridgeTypeDef(BaseModel): + MaxBitrate: int + InstanceId: Optional[str] = None + +class IngressGatewayBridgeTypeDef(BaseModel): + MaxBitrate: int + MaxOutputs: int + InstanceId: Optional[str] = None + +class MessageDetailTypeDef(BaseModel): + Code: str + Message: str + ResourceName: Optional[str] = None + +class GatewayNetworkTypeDef(BaseModel): + CidrBlock: str + Name: str + +class DeleteBridgeRequestRequestTypeDef(BaseModel): + BridgeArn: str + +class DeleteFlowRequestRequestTypeDef(BaseModel): + FlowArn: str + +class DeleteGatewayRequestRequestTypeDef(BaseModel): + GatewayArn: str + +class DeregisterGatewayInstanceRequestRequestTypeDef(BaseModel): + GatewayInstanceArn: str + Force: Optional[bool] = None + +class DescribeBridgeRequestRequestTypeDef(BaseModel): + BridgeArn: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeFlowRequestRequestTypeDef(BaseModel): + FlowArn: str + +class MessagesTypeDef(BaseModel): + Errors: List[str] + +class DescribeFlowSourceMetadataRequestRequestTypeDef(BaseModel): + FlowArn: str + +class DescribeGatewayInstanceRequestRequestTypeDef(BaseModel): + GatewayInstanceArn: str + +class DescribeGatewayRequestRequestTypeDef(BaseModel): + GatewayArn: str + +class DescribeOfferingRequestRequestTypeDef(BaseModel): + OfferingArn: str + +class DescribeReservationRequestRequestTypeDef(BaseModel): + ReservationArn: str + +class InterfaceRequestTypeDef(BaseModel): + Name: str + +class InterfaceTypeDef(BaseModel): + Name: str + +class EncodingParametersRequestTypeDef(BaseModel): + CompressionFactor: float + EncoderProfile: EncoderProfileType + +class EncodingParametersTypeDef(BaseModel): + CompressionFactor: float + EncoderProfile: EncoderProfileType + +class SourcePriorityTypeDef(BaseModel): + PrimarySource: Optional[str] = None + +class MaintenanceTypeDef(BaseModel): + MaintenanceDay: Optional[MaintenanceDayType] = None + MaintenanceDeadline: Optional[str] = None + MaintenanceScheduledDate: Optional[str] = None + MaintenanceStartHour: Optional[str] = None + +class FmtpRequestTypeDef(BaseModel): + ChannelOrder: Optional[str] = None + Colorimetry: Optional[ColorimetryType] = None + ExactFramerate: Optional[str] = None + Par: Optional[str] = None + Range: Optional[RangeType] = None + ScanMode: Optional[ScanModeType] = None + Tcs: Optional[TcsType] = None + +class FmtpTypeDef(BaseModel): + ChannelOrder: Optional[str] = None + Colorimetry: Optional[ColorimetryType] = None + ExactFramerate: Optional[str] = None + Par: Optional[str] = None + Range: Optional[RangeType] = None + ScanMode: Optional[ScanModeType] = None + Tcs: Optional[TcsType] = None + +class FrameResolutionTypeDef(BaseModel): + FrameHeight: int + FrameWidth: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBridgesRequestRequestTypeDef(BaseModel): + FilterArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedBridgeTypeDef(BaseModel): + BridgeArn: str + BridgeState: BridgeStateType + BridgeType: str + Name: str + PlacementArn: str + +class ListEntitlementsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedEntitlementTypeDef(BaseModel): + EntitlementArn: str + EntitlementName: str + DataTransferSubscriberFeePercent: Optional[int] = None + +class ListFlowsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListGatewayInstancesRequestRequestTypeDef(BaseModel): + FilterArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedGatewayInstanceTypeDef(BaseModel): + GatewayArn: str + GatewayInstanceArn: str + InstanceId: str + InstanceState: Optional[InstanceStateType] = None + +class ListGatewaysRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedGatewayTypeDef(BaseModel): + GatewayArn: str + GatewayState: GatewayStateType + Name: str + +class ListOfferingsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListReservationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ResourceSpecificationTypeDef(BaseModel): + ResourceType: Literal["Mbps_Outbound_Bandwidth"] + ReservedBitrate: Optional[int] = None + +class TransportTypeDef(BaseModel): + Protocol: ProtocolType + CidrAllowList: Optional[List[str]] = None + MaxBitrate: Optional[int] = None + MaxLatency: Optional[int] = None + MaxSyncBuffer: Optional[int] = None + MinLatency: Optional[int] = None + RemoteId: Optional[str] = None + SenderControlPort: Optional[int] = None + SenderIpAddress: Optional[str] = None + SmoothingLatency: Optional[int] = None + SourceListenerAddress: Optional[str] = None + SourceListenerPort: Optional[int] = None + StreamId: Optional[str] = None + +class PurchaseOfferingRequestRequestTypeDef(BaseModel): + OfferingArn: str + ReservationName: str + Start: str + +class RemoveBridgeOutputRequestRequestTypeDef(BaseModel): + BridgeArn: str + OutputName: str + +class RemoveBridgeSourceRequestRequestTypeDef(BaseModel): + BridgeArn: str + SourceName: str + +class RemoveFlowMediaStreamRequestRequestTypeDef(BaseModel): + FlowArn: str + MediaStreamName: str + +class RemoveFlowOutputRequestRequestTypeDef(BaseModel): + FlowArn: str + OutputArn: str + +class RemoveFlowSourceRequestRequestTypeDef(BaseModel): + FlowArn: str + SourceArn: str + +class RemoveFlowVpcInterfaceRequestRequestTypeDef(BaseModel): + FlowArn: str + VpcInterfaceName: str + +class RevokeFlowEntitlementRequestRequestTypeDef(BaseModel): + EntitlementArn: str + FlowArn: str + +class StartFlowRequestRequestTypeDef(BaseModel): + FlowArn: str + +class StopFlowRequestRequestTypeDef(BaseModel): + FlowArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateBridgeNetworkOutputRequestTypeDef(BaseModel): + IpAddress: Optional[str] = None + NetworkName: Optional[str] = None + Port: Optional[int] = None + Protocol: Optional[ProtocolType] = None + Ttl: Optional[int] = None + +class UpdateBridgeNetworkSourceRequestTypeDef(BaseModel): + MulticastIp: Optional[str] = None + NetworkName: Optional[str] = None + Port: Optional[int] = None + Protocol: Optional[ProtocolType] = None + +class UpdateEgressGatewayBridgeRequestTypeDef(BaseModel): + MaxBitrate: Optional[int] = None + +class UpdateIngressGatewayBridgeRequestTypeDef(BaseModel): + MaxBitrate: Optional[int] = None + MaxOutputs: Optional[int] = None + +class UpdateBridgeStateRequestRequestTypeDef(BaseModel): + BridgeArn: str + DesiredState: DesiredStateType + +class UpdateEncryptionTypeDef(BaseModel): + Algorithm: Optional[AlgorithmType] = None + ConstantInitializationVector: Optional[str] = None + DeviceId: Optional[str] = None + KeyType: Optional[KeyTypeType] = None + Region: Optional[str] = None + ResourceId: Optional[str] = None + RoleArn: Optional[str] = None + SecretArn: Optional[str] = None + Url: Optional[str] = None + +class UpdateMaintenanceTypeDef(BaseModel): + MaintenanceDay: Optional[MaintenanceDayType] = None + MaintenanceScheduledDate: Optional[str] = None + MaintenanceStartHour: Optional[str] = None + +class UpdateGatewayInstanceRequestRequestTypeDef(BaseModel): + GatewayInstanceArn: str + BridgePlacement: Optional[BridgePlacementType] = None + +class AddBridgeFlowSourceRequestTypeDef(BaseModel): + FlowArn: str + Name: str + FlowVpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + +class BridgeFlowSourceTypeDef(BaseModel): + FlowArn: str + Name: str + FlowVpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + OutputArn: Optional[str] = None + +class GatewayBridgeSourceTypeDef(BaseModel): + BridgeArn: str + VpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + +class SetGatewayBridgeSourceRequestTypeDef(BaseModel): + BridgeArn: str + VpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + +class UpdateBridgeFlowSourceRequestTypeDef(BaseModel): + FlowArn: Optional[str] = None + FlowVpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + +class UpdateGatewayBridgeSourceRequestTypeDef(BaseModel): + BridgeArn: Optional[str] = None + VpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + +class AddBridgeOutputRequestTypeDef(BaseModel): + NetworkOutput: Optional[AddBridgeNetworkOutputRequestTypeDef] = None + +class DeleteBridgeResponseTypeDef(BaseModel): + BridgeArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFlowResponseTypeDef(BaseModel): + FlowArn: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGatewayResponseTypeDef(BaseModel): + GatewayArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterGatewayInstanceResponseTypeDef(BaseModel): + GatewayInstanceArn: str + InstanceState: InstanceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveBridgeOutputResponseTypeDef(BaseModel): + BridgeArn: str + OutputName: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveBridgeSourceResponseTypeDef(BaseModel): + BridgeArn: str + SourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFlowMediaStreamResponseTypeDef(BaseModel): + FlowArn: str + MediaStreamName: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFlowOutputResponseTypeDef(BaseModel): + FlowArn: str + OutputArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFlowSourceResponseTypeDef(BaseModel): + FlowArn: str + SourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFlowVpcInterfaceResponseTypeDef(BaseModel): + FlowArn: str + NonDeletedNetworkInterfaceIds: List[str] + VpcInterfaceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeFlowEntitlementResponseTypeDef(BaseModel): + EntitlementArn: str + FlowArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFlowResponseTypeDef(BaseModel): + FlowArn: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopFlowResponseTypeDef(BaseModel): + FlowArn: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBridgeStateResponseTypeDef(BaseModel): + BridgeArn: str + DesiredState: DesiredStateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewayInstanceResponseTypeDef(BaseModel): + BridgePlacement: BridgePlacementType + GatewayInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddFlowVpcInterfacesRequestRequestTypeDef(BaseModel): + FlowArn: str + VpcInterfaces: Sequence[VpcInterfaceRequestTypeDef] + +class AddFlowVpcInterfacesResponseTypeDef(BaseModel): + FlowArn: str + VpcInterfaces: List[VpcInterfaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EntitlementTypeDef(BaseModel): + EntitlementArn: str + Name: str + Subscribers: List[str] + DataTransferSubscriberFeePercent: Optional[int] = None + Description: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + EntitlementStatus: Optional[EntitlementStatusType] = None + +class GrantEntitlementRequestTypeDef(BaseModel): + Subscribers: Sequence[str] + DataTransferSubscriberFeePercent: Optional[int] = None + Description: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + EntitlementStatus: Optional[EntitlementStatusType] = None + Name: Optional[str] = None + +class BridgeOutputTypeDef(BaseModel): + FlowOutput: Optional[BridgeFlowOutputTypeDef] = None + NetworkOutput: Optional[BridgeNetworkOutputTypeDef] = None + +class GatewayInstanceTypeDef(BaseModel): + BridgePlacement: BridgePlacementType + ConnectionStatus: ConnectionStatusType + GatewayArn: str + GatewayInstanceArn: str + InstanceId: str + InstanceState: InstanceStateType + RunningBridgeCount: int + InstanceMessages: Optional[List[MessageDetailTypeDef]] = None + +class CreateGatewayRequestRequestTypeDef(BaseModel): + EgressCidrBlocks: Sequence[str] + Name: str + Networks: Sequence[GatewayNetworkTypeDef] + +class GatewayTypeDef(BaseModel): + EgressCidrBlocks: List[str] + GatewayArn: str + Name: str + Networks: List[GatewayNetworkTypeDef] + GatewayMessages: Optional[List[MessageDetailTypeDef]] = None + GatewayState: Optional[GatewayStateType] = None + +class DescribeFlowRequestFlowActiveWaitTypeDef(BaseModel): + FlowArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeFlowRequestFlowDeletedWaitTypeDef(BaseModel): + FlowArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeFlowRequestFlowStandbyWaitTypeDef(BaseModel): + FlowArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DestinationConfigurationRequestTypeDef(BaseModel): + DestinationIp: str + DestinationPort: int + Interface: InterfaceRequestTypeDef + +class InputConfigurationRequestTypeDef(BaseModel): + InputPort: int + Interface: InterfaceRequestTypeDef + +class DestinationConfigurationTypeDef(BaseModel): + DestinationIp: str + DestinationPort: int + Interface: InterfaceTypeDef + OutboundIp: str + +class InputConfigurationTypeDef(BaseModel): + InputIp: str + InputPort: int + Interface: InterfaceTypeDef + +class FailoverConfigTypeDef(BaseModel): + FailoverMode: Optional[FailoverModeType] = None + RecoveryWindow: Optional[int] = None + SourcePriority: Optional[SourcePriorityTypeDef] = None + State: Optional[StateType] = None + +class UpdateFailoverConfigTypeDef(BaseModel): + FailoverMode: Optional[FailoverModeType] = None + RecoveryWindow: Optional[int] = None + SourcePriority: Optional[SourcePriorityTypeDef] = None + State: Optional[StateType] = None + +class ListedFlowTypeDef(BaseModel): + AvailabilityZone: str + Description: str + FlowArn: str + Name: str + SourceType: SourceTypeType + Status: StatusType + Maintenance: Optional[MaintenanceTypeDef] = None + +class MediaStreamAttributesRequestTypeDef(BaseModel): + Fmtp: Optional[FmtpRequestTypeDef] = None + Lang: Optional[str] = None + +class MediaStreamAttributesTypeDef(BaseModel): + Fmtp: FmtpTypeDef + Lang: Optional[str] = None + +class TransportStreamTypeDef(BaseModel): + Pid: int + StreamType: str + Channels: Optional[int] = None + Codec: Optional[str] = None + FrameRate: Optional[str] = None + FrameResolution: Optional[FrameResolutionTypeDef] = None + SampleRate: Optional[int] = None + SampleSize: Optional[int] = None + +class ListBridgesRequestListBridgesPaginateTypeDef(BaseModel): + FilterArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEntitlementsRequestListEntitlementsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowsRequestListFlowsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGatewayInstancesRequestListGatewayInstancesPaginateTypeDef(BaseModel): + FilterArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGatewaysRequestListGatewaysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOfferingsRequestListOfferingsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReservationsRequestListReservationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBridgesResponseTypeDef(BaseModel): + Bridges: List[ListedBridgeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEntitlementsResponseTypeDef(BaseModel): + Entitlements: List[ListedEntitlementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListGatewayInstancesResponseTypeDef(BaseModel): + Instances: List[ListedGatewayInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListGatewaysResponseTypeDef(BaseModel): + Gateways: List[ListedGatewayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class OfferingTypeDef(BaseModel): + CurrencyCode: str + Duration: int + DurationUnits: Literal["MONTHS"] + OfferingArn: str + OfferingDescription: str + PricePerUnit: str + PriceUnits: Literal["HOURLY"] + ResourceSpecification: ResourceSpecificationTypeDef + +class ReservationTypeDef(BaseModel): + CurrencyCode: str + Duration: int + DurationUnits: Literal["MONTHS"] + End: str + OfferingArn: str + OfferingDescription: str + PricePerUnit: str + PriceUnits: Literal["HOURLY"] + ReservationArn: str + ReservationName: str + ReservationState: ReservationStateType + ResourceSpecification: ResourceSpecificationTypeDef + Start: str + +class UpdateBridgeOutputRequestRequestTypeDef(BaseModel): + BridgeArn: str + OutputName: str + NetworkOutput: Optional[UpdateBridgeNetworkOutputRequestTypeDef] = None + +class UpdateFlowEntitlementRequestRequestTypeDef(BaseModel): + EntitlementArn: str + FlowArn: str + Description: Optional[str] = None + Encryption: Optional[UpdateEncryptionTypeDef] = None + EntitlementStatus: Optional[EntitlementStatusType] = None + Subscribers: Optional[Sequence[str]] = None + +class AddBridgeSourceRequestTypeDef(BaseModel): + FlowSource: Optional[AddBridgeFlowSourceRequestTypeDef] = None + NetworkSource: Optional[AddBridgeNetworkSourceRequestTypeDef] = None + +class BridgeSourceTypeDef(BaseModel): + FlowSource: Optional[BridgeFlowSourceTypeDef] = None + NetworkSource: Optional[BridgeNetworkSourceTypeDef] = None + +class UpdateBridgeSourceRequestRequestTypeDef(BaseModel): + BridgeArn: str + SourceName: str + FlowSource: Optional[UpdateBridgeFlowSourceRequestTypeDef] = None + NetworkSource: Optional[UpdateBridgeNetworkSourceRequestTypeDef] = None + +class AddBridgeOutputsRequestRequestTypeDef(BaseModel): + BridgeArn: str + Outputs: Sequence[AddBridgeOutputRequestTypeDef] + +class GrantFlowEntitlementsResponseTypeDef(BaseModel): + Entitlements: List[EntitlementTypeDef] + FlowArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowEntitlementResponseTypeDef(BaseModel): + Entitlement: EntitlementTypeDef + FlowArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GrantFlowEntitlementsRequestRequestTypeDef(BaseModel): + Entitlements: Sequence[GrantEntitlementRequestTypeDef] + FlowArn: str + +class AddBridgeOutputsResponseTypeDef(BaseModel): + BridgeArn: str + Outputs: List[BridgeOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBridgeOutputResponseTypeDef(BaseModel): + BridgeArn: str + Output: BridgeOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGatewayInstanceResponseTypeDef(BaseModel): + GatewayInstance: GatewayInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGatewayResponseTypeDef(BaseModel): + Gateway: GatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGatewayResponseTypeDef(BaseModel): + Gateway: GatewayTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MediaStreamOutputConfigurationRequestTypeDef(BaseModel): + EncodingName: EncodingNameType + MediaStreamName: str + DestinationConfigurations: Optional[Sequence[DestinationConfigurationRequestTypeDef]] = None + EncodingParameters: Optional[EncodingParametersRequestTypeDef] = None + +class MediaStreamSourceConfigurationRequestTypeDef(BaseModel): + EncodingName: EncodingNameType + MediaStreamName: str + InputConfigurations: Optional[Sequence[InputConfigurationRequestTypeDef]] = None + +class MediaStreamOutputConfigurationTypeDef(BaseModel): + EncodingName: EncodingNameType + MediaStreamName: str + DestinationConfigurations: Optional[List[DestinationConfigurationTypeDef]] = None + EncodingParameters: Optional[EncodingParametersTypeDef] = None + +class MediaStreamSourceConfigurationTypeDef(BaseModel): + EncodingName: EncodingNameType + MediaStreamName: str + InputConfigurations: Optional[List[InputConfigurationTypeDef]] = None + +class UpdateBridgeRequestRequestTypeDef(BaseModel): + BridgeArn: str + EgressGatewayBridge: Optional[UpdateEgressGatewayBridgeRequestTypeDef] = None + IngressGatewayBridge: Optional[UpdateIngressGatewayBridgeRequestTypeDef] = None + SourceFailoverConfig: Optional[UpdateFailoverConfigTypeDef] = None + +class UpdateFlowRequestRequestTypeDef(BaseModel): + FlowArn: str + SourceFailoverConfig: Optional[UpdateFailoverConfigTypeDef] = None + Maintenance: Optional[UpdateMaintenanceTypeDef] = None + +class ListFlowsResponseTypeDef(BaseModel): + Flows: List[ListedFlowTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AddMediaStreamRequestTypeDef(BaseModel): + MediaStreamId: int + MediaStreamName: str + MediaStreamType: MediaStreamTypeType + Attributes: Optional[MediaStreamAttributesRequestTypeDef] = None + ClockRate: Optional[int] = None + Description: Optional[str] = None + VideoFormat: Optional[str] = None + +class UpdateFlowMediaStreamRequestRequestTypeDef(BaseModel): + FlowArn: str + MediaStreamName: str + Attributes: Optional[MediaStreamAttributesRequestTypeDef] = None + ClockRate: Optional[int] = None + Description: Optional[str] = None + MediaStreamType: Optional[MediaStreamTypeType] = None + VideoFormat: Optional[str] = None + +class MediaStreamTypeDef(BaseModel): + Fmt: int + MediaStreamId: int + MediaStreamName: str + MediaStreamType: MediaStreamTypeType + Attributes: Optional[MediaStreamAttributesTypeDef] = None + ClockRate: Optional[int] = None + Description: Optional[str] = None + VideoFormat: Optional[str] = None + +class TransportStreamProgramTypeDef(BaseModel): + PcrPid: int + ProgramNumber: int + ProgramPid: int + Streams: List[TransportStreamTypeDef] + ProgramName: Optional[str] = None + +class DescribeOfferingResponseTypeDef(BaseModel): + Offering: OfferingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOfferingsResponseTypeDef(BaseModel): + Offerings: List[OfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReservationResponseTypeDef(BaseModel): + Reservation: ReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListReservationsResponseTypeDef(BaseModel): + Reservations: List[ReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PurchaseOfferingResponseTypeDef(BaseModel): + Reservation: ReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddBridgeSourcesRequestRequestTypeDef(BaseModel): + BridgeArn: str + Sources: Sequence[AddBridgeSourceRequestTypeDef] + +class CreateBridgeRequestRequestTypeDef(BaseModel): + Name: str + PlacementArn: str + Sources: Sequence[AddBridgeSourceRequestTypeDef] + EgressGatewayBridge: Optional[AddEgressGatewayBridgeRequestTypeDef] = None + IngressGatewayBridge: Optional[AddIngressGatewayBridgeRequestTypeDef] = None + Outputs: Optional[Sequence[AddBridgeOutputRequestTypeDef]] = None + SourceFailoverConfig: Optional[FailoverConfigTypeDef] = None + +class AddBridgeSourcesResponseTypeDef(BaseModel): + BridgeArn: str + Sources: List[BridgeSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BridgeTypeDef(BaseModel): + BridgeArn: str + BridgeState: BridgeStateType + Name: str + PlacementArn: str + BridgeMessages: Optional[List[MessageDetailTypeDef]] = None + EgressGatewayBridge: Optional[EgressGatewayBridgeTypeDef] = None + IngressGatewayBridge: Optional[IngressGatewayBridgeTypeDef] = None + Outputs: Optional[List[BridgeOutputTypeDef]] = None + SourceFailoverConfig: Optional[FailoverConfigTypeDef] = None + Sources: Optional[List[BridgeSourceTypeDef]] = None + +class UpdateBridgeSourceResponseTypeDef(BaseModel): + BridgeArn: str + Source: BridgeSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddOutputRequestTypeDef(BaseModel): + Protocol: ProtocolType + CidrAllowList: Optional[Sequence[str]] = None + Description: Optional[str] = None + Destination: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + MaxLatency: Optional[int] = None + MediaStreamOutputConfigurations: Optional[ Sequence[MediaStreamOutputConfigurationRequestTypeDef] ] = None + MinLatency: Optional[int] = None + Name: Optional[str] = None + Port: Optional[int] = None + RemoteId: Optional[str] = None + SenderControlPort: Optional[int] = None + SmoothingLatency: Optional[int] = None + StreamId: Optional[str] = None + VpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + OutputStatus: Optional[OutputStatusType] = None + +class UpdateFlowOutputRequestRequestTypeDef(BaseModel): + FlowArn: str + OutputArn: str + CidrAllowList: Optional[Sequence[str]] = None + Description: Optional[str] = None + Destination: Optional[str] = None + Encryption: Optional[UpdateEncryptionTypeDef] = None + MaxLatency: Optional[int] = None + MediaStreamOutputConfigurations: Optional[ Sequence[MediaStreamOutputConfigurationRequestTypeDef] ] = None + MinLatency: Optional[int] = None + Port: Optional[int] = None + Protocol: Optional[ProtocolType] = None + RemoteId: Optional[str] = None + SenderControlPort: Optional[int] = None + SenderIpAddress: Optional[str] = None + SmoothingLatency: Optional[int] = None + StreamId: Optional[str] = None + VpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + OutputStatus: Optional[OutputStatusType] = None + +class SetSourceRequestTypeDef(BaseModel): + Decryption: Optional[EncryptionTypeDef] = None + Description: Optional[str] = None + EntitlementArn: Optional[str] = None + IngestPort: Optional[int] = None + MaxBitrate: Optional[int] = None + MaxLatency: Optional[int] = None + MaxSyncBuffer: Optional[int] = None + MediaStreamSourceConfigurations: Optional[ Sequence[MediaStreamSourceConfigurationRequestTypeDef] ] = None + MinLatency: Optional[int] = None + Name: Optional[str] = None + Protocol: Optional[ProtocolType] = None + SenderControlPort: Optional[int] = None + SenderIpAddress: Optional[str] = None + SourceListenerAddress: Optional[str] = None + SourceListenerPort: Optional[int] = None + StreamId: Optional[str] = None + VpcInterfaceName: Optional[str] = None + WhitelistCidr: Optional[str] = None + GatewayBridgeSource: Optional[SetGatewayBridgeSourceRequestTypeDef] = None + +class UpdateFlowSourceRequestRequestTypeDef(BaseModel): + FlowArn: str + SourceArn: str + Decryption: Optional[UpdateEncryptionTypeDef] = None + Description: Optional[str] = None + EntitlementArn: Optional[str] = None + IngestPort: Optional[int] = None + MaxBitrate: Optional[int] = None + MaxLatency: Optional[int] = None + MaxSyncBuffer: Optional[int] = None + MediaStreamSourceConfigurations: Optional[ Sequence[MediaStreamSourceConfigurationRequestTypeDef] ] = None + MinLatency: Optional[int] = None + Protocol: Optional[ProtocolType] = None + SenderControlPort: Optional[int] = None + SenderIpAddress: Optional[str] = None + SourceListenerAddress: Optional[str] = None + SourceListenerPort: Optional[int] = None + StreamId: Optional[str] = None + VpcInterfaceName: Optional[str] = None + WhitelistCidr: Optional[str] = None + GatewayBridgeSource: Optional[UpdateGatewayBridgeSourceRequestTypeDef] = None + +class OutputTypeDef(BaseModel): + Name: str + OutputArn: str + DataTransferSubscriberFeePercent: Optional[int] = None + Description: Optional[str] = None + Destination: Optional[str] = None + Encryption: Optional[EncryptionTypeDef] = None + EntitlementArn: Optional[str] = None + ListenerAddress: Optional[str] = None + MediaLiveInputArn: Optional[str] = None + MediaStreamOutputConfigurations: Optional[List[MediaStreamOutputConfigurationTypeDef]] = None + Port: Optional[int] = None + Transport: Optional[TransportTypeDef] = None + VpcInterfaceAttachment: Optional[VpcInterfaceAttachmentTypeDef] = None + BridgeArn: Optional[str] = None + BridgePorts: Optional[List[int]] = None + OutputStatus: Optional[OutputStatusType] = None + +class SourceTypeDef(BaseModel): + Name: str + SourceArn: str + DataTransferSubscriberFeePercent: Optional[int] = None + Decryption: Optional[EncryptionTypeDef] = None + Description: Optional[str] = None + EntitlementArn: Optional[str] = None + IngestIp: Optional[str] = None + IngestPort: Optional[int] = None + MediaStreamSourceConfigurations: Optional[List[MediaStreamSourceConfigurationTypeDef]] = None + SenderControlPort: Optional[int] = None + SenderIpAddress: Optional[str] = None + Transport: Optional[TransportTypeDef] = None + VpcInterfaceName: Optional[str] = None + WhitelistCidr: Optional[str] = None + GatewayBridgeSource: Optional[GatewayBridgeSourceTypeDef] = None + +class AddFlowMediaStreamsRequestRequestTypeDef(BaseModel): + FlowArn: str + MediaStreams: Sequence[AddMediaStreamRequestTypeDef] + +class AddFlowMediaStreamsResponseTypeDef(BaseModel): + FlowArn: str + MediaStreams: List[MediaStreamTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowMediaStreamResponseTypeDef(BaseModel): + FlowArn: str + MediaStream: MediaStreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TransportMediaInfoTypeDef(BaseModel): + Programs: List[TransportStreamProgramTypeDef] + +class CreateBridgeResponseTypeDef(BaseModel): + Bridge: BridgeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBridgeResponseTypeDef(BaseModel): + Bridge: BridgeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBridgeResponseTypeDef(BaseModel): + Bridge: BridgeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddFlowOutputsRequestRequestTypeDef(BaseModel): + FlowArn: str + Outputs: Sequence[AddOutputRequestTypeDef] + +class AddFlowSourcesRequestRequestTypeDef(BaseModel): + FlowArn: str + Sources: Sequence[SetSourceRequestTypeDef] + +class CreateFlowRequestRequestTypeDef(BaseModel): + Name: str + AvailabilityZone: Optional[str] = None + Entitlements: Optional[Sequence[GrantEntitlementRequestTypeDef]] = None + MediaStreams: Optional[Sequence[AddMediaStreamRequestTypeDef]] = None + Outputs: Optional[Sequence[AddOutputRequestTypeDef]] = None + Source: Optional[SetSourceRequestTypeDef] = None + SourceFailoverConfig: Optional[FailoverConfigTypeDef] = None + Sources: Optional[Sequence[SetSourceRequestTypeDef]] = None + VpcInterfaces: Optional[Sequence[VpcInterfaceRequestTypeDef]] = None + Maintenance: Optional[AddMaintenanceTypeDef] = None + +class AddFlowOutputsResponseTypeDef(BaseModel): + FlowArn: str + Outputs: List[OutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowOutputResponseTypeDef(BaseModel): + FlowArn: str + Output: OutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddFlowSourcesResponseTypeDef(BaseModel): + FlowArn: str + Sources: List[SourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FlowTypeDef(BaseModel): + AvailabilityZone: str + Entitlements: List[EntitlementTypeDef] + FlowArn: str + Name: str + Outputs: List[OutputTypeDef] + Source: SourceTypeDef + Status: StatusType + Description: Optional[str] = None + EgressIp: Optional[str] = None + MediaStreams: Optional[List[MediaStreamTypeDef]] = None + SourceFailoverConfig: Optional[FailoverConfigTypeDef] = None + Sources: Optional[List[SourceTypeDef]] = None + VpcInterfaces: Optional[List[VpcInterfaceTypeDef]] = None + Maintenance: Optional[MaintenanceTypeDef] = None + +class UpdateFlowSourceResponseTypeDef(BaseModel): + FlowArn: str + Source: SourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFlowSourceMetadataResponseTypeDef(BaseModel): + FlowArn: str + Messages: List[MessageDetailTypeDef] + Timestamp: datetime + TransportMediaInfo: TransportMediaInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowResponseTypeDef(BaseModel): + Flow: FlowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFlowResponseTypeDef(BaseModel): + Flow: FlowTypeDef + Messages: MessagesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFlowResponseTypeDef(BaseModel): + Flow: FlowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mediaconnect_constants.py b/aws_resource_validator/pydantic_models/mediaconnect_constants.py new file mode 100644 index 00000000..659a6bb0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediaconnect_constants.py @@ -0,0 +1,494 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlgorithmType = Literal["aes128", "aes192", "aes256"] +BridgePlacementType = Literal["AVAILABLE", "LOCKED"] +BridgeStateType = Literal["ACTIVE", + "CREATING", + "DELETED", + "DELETING", + "DEPLOYING", + "STANDBY", + "STARTING", + "START_FAILED", + "START_PENDING", + "STOPPING", + "STOP_FAILED", + "UPDATING",] +ColorimetryType = Literal["BT2020", "BT2100", "BT601", "BT709", "ST2065-1", "ST2065-3", "XYZ"] +ConnectionStatusType = Literal["CONNECTED", "DISCONNECTED"] +DesiredStateType = Literal["ACTIVE", "DELETED", "STANDBY"] +DurationUnitsType = Literal["MONTHS"] +EncoderProfileType = Literal["high", "main"] +EncodingNameType = Literal["jxsv", "pcm", "raw", "smpte291"] +EntitlementStatusType = Literal["DISABLED", "ENABLED"] +FailoverModeType = Literal["FAILOVER", "MERGE"] +FlowActiveWaiterName = Literal["flow_active"] +FlowDeletedWaiterName = Literal["flow_deleted"] +FlowStandbyWaiterName = Literal["flow_standby"] +GatewayStateType = Literal["ACTIVE", "CREATING", "DELETED", "DELETING", "ERROR", "UPDATING"] +InstanceStateType = Literal["ACTIVE", + "DEREGISTERED", + "DEREGISTERING", + "DEREGISTRATION_ERROR", + "REGISTERING", + "REGISTRATION_ERROR",] +KeyTypeType = Literal["speke", "srt-password", "static-key"] +ListBridgesPaginatorName = Literal["list_bridges"] +ListEntitlementsPaginatorName = Literal["list_entitlements"] +ListFlowsPaginatorName = Literal["list_flows"] +ListGatewayInstancesPaginatorName = Literal["list_gateway_instances"] +ListGatewaysPaginatorName = Literal["list_gateways"] +ListOfferingsPaginatorName = Literal["list_offerings"] +ListReservationsPaginatorName = Literal["list_reservations"] +MaintenanceDayType = Literal["Friday", "Monday", "Saturday", "Sunday", "Thursday", "Tuesday", "Wednesday"] +MediaStreamTypeType = Literal["ancillary-data", "audio", "video"] +NetworkInterfaceTypeType = Literal["efa", "ena"] +OutputStatusType = Literal["DISABLED", "ENABLED"] +PriceUnitsType = Literal["HOURLY"] +ProtocolType = Literal["cdi", + "fujitsu-qos", + "rist", + "rtp", + "rtp-fec", + "srt-caller", + "srt-listener", + "st2110-jpegxs", + "udp", + "zixi-pull", + "zixi-push",] +RangeType = Literal["FULL", "FULLPROTECT", "NARROW"] +ReservationStateType = Literal["ACTIVE", "CANCELED", "EXPIRED", "PROCESSING"] +ResourceTypeType = Literal["Mbps_Outbound_Bandwidth"] +ScanModeType = Literal["interlace", "progressive", "progressive-segmented-frame"] +SourceTypeType = Literal["ENTITLED", "OWNED"] +StateType = Literal["DISABLED", "ENABLED"] +StatusType = Literal["ACTIVE", "DELETING", "ERROR", "STANDBY", "STARTING", "STOPPING", "UPDATING"] +TcsType = Literal["BT2100LINHLG", "BT2100LINPQ", "DENSITY", "HLG", "LINEAR", "PQ", "SDR", "ST2065-1", "ST428-1"] +MediaConnectServiceName = Literal["mediaconnect"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_bridges", + "list_entitlements", + "list_flows", + "list_gateway_instances", + "list_gateways", + "list_offerings", + "list_reservations",] +WaiterName = Literal["flow_active", "flow_deleted", "flow_standby"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/mediaconvert_classes.py b/aws_resource_validator/pydantic_models/mediaconvert_classes.py new file mode 100644 index 00000000..02e504da --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediaconvert_classes.py @@ -0,0 +1,2788 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediaconvert_constants import * + +class AacSettingsTypeDef(BaseModel): + AudioDescriptionBroadcasterMix: Optional[AacAudioDescriptionBroadcasterMixType] = None + Bitrate: Optional[int] = None + CodecProfile: Optional[AacCodecProfileType] = None + CodingMode: Optional[AacCodingModeType] = None + RateControlMode: Optional[AacRateControlModeType] = None + RawFormat: Optional[AacRawFormatType] = None + SampleRate: Optional[int] = None + Specification: Optional[AacSpecificationType] = None + VbrQuality: Optional[AacVbrQualityType] = None + +class Ac3SettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + BitstreamMode: Optional[Ac3BitstreamModeType] = None + CodingMode: Optional[Ac3CodingModeType] = None + Dialnorm: Optional[int] = None + DynamicRangeCompressionLine: Optional[Ac3DynamicRangeCompressionLineType] = None + DynamicRangeCompressionProfile: Optional[Ac3DynamicRangeCompressionProfileType] = None + DynamicRangeCompressionRf: Optional[Ac3DynamicRangeCompressionRfType] = None + LfeFilter: Optional[Ac3LfeFilterType] = None + MetadataControl: Optional[Ac3MetadataControlType] = None + SampleRate: Optional[int] = None + +class AccelerationSettingsTypeDef(BaseModel): + Mode: AccelerationModeType + +class AdvancedInputFilterSettingsTypeDef(BaseModel): + AddTexture: Optional[AdvancedInputFilterAddTextureType] = None + Sharpening: Optional[AdvancedInputFilterSharpenType] = None + +class AiffSettingsTypeDef(BaseModel): + BitDepth: Optional[int] = None + Channels: Optional[int] = None + SampleRate: Optional[int] = None + +class AllowedRenditionSizeTypeDef(BaseModel): + Height: Optional[int] = None + Required: Optional[RequiredFlagType] = None + Width: Optional[int] = None + +class AncillarySourceSettingsTypeDef(BaseModel): + Convert608To708: Optional[AncillaryConvert608To708Type] = None + SourceAncillaryChannelNumber: Optional[int] = None + TerminateCaptions: Optional[AncillaryTerminateCaptionsType] = None + +class AssociateCertificateRequestRequestTypeDef(BaseModel): + Arn: str + +class AudioChannelTaggingSettingsExtraOutputTypeDef(BaseModel): + ChannelTag: Optional[AudioChannelTagType] = None + ChannelTags: Optional[List[AudioChannelTagType]] = None + +class AudioChannelTaggingSettingsOutputTypeDef(BaseModel): + ChannelTag: Optional[AudioChannelTagType] = None + ChannelTags: Optional[List[AudioChannelTagType]] = None + +class AudioChannelTaggingSettingsTypeDef(BaseModel): + ChannelTag: Optional[AudioChannelTagType] = None + ChannelTags: Optional[Sequence[AudioChannelTagType]] = None + +class Eac3AtmosSettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + BitstreamMode: Optional[Literal["COMPLETE_MAIN"]] = None + CodingMode: Optional[Eac3AtmosCodingModeType] = None + DialogueIntelligence: Optional[Eac3AtmosDialogueIntelligenceType] = None + DownmixControl: Optional[Eac3AtmosDownmixControlType] = None + DynamicRangeCompressionLine: Optional[Eac3AtmosDynamicRangeCompressionLineType] = None + DynamicRangeCompressionRf: Optional[Eac3AtmosDynamicRangeCompressionRfType] = None + DynamicRangeControl: Optional[Eac3AtmosDynamicRangeControlType] = None + LoRoCenterMixLevel: Optional[float] = None + LoRoSurroundMixLevel: Optional[float] = None + LtRtCenterMixLevel: Optional[float] = None + LtRtSurroundMixLevel: Optional[float] = None + MeteringMode: Optional[Eac3AtmosMeteringModeType] = None + SampleRate: Optional[int] = None + SpeechThreshold: Optional[int] = None + StereoDownmix: Optional[Eac3AtmosStereoDownmixType] = None + SurroundExMode: Optional[Eac3AtmosSurroundExModeType] = None + +class Eac3SettingsTypeDef(BaseModel): + AttenuationControl: Optional[Eac3AttenuationControlType] = None + Bitrate: Optional[int] = None + BitstreamMode: Optional[Eac3BitstreamModeType] = None + CodingMode: Optional[Eac3CodingModeType] = None + DcFilter: Optional[Eac3DcFilterType] = None + Dialnorm: Optional[int] = None + DynamicRangeCompressionLine: Optional[Eac3DynamicRangeCompressionLineType] = None + DynamicRangeCompressionRf: Optional[Eac3DynamicRangeCompressionRfType] = None + LfeControl: Optional[Eac3LfeControlType] = None + LfeFilter: Optional[Eac3LfeFilterType] = None + LoRoCenterMixLevel: Optional[float] = None + LoRoSurroundMixLevel: Optional[float] = None + LtRtCenterMixLevel: Optional[float] = None + LtRtSurroundMixLevel: Optional[float] = None + MetadataControl: Optional[Eac3MetadataControlType] = None + PassthroughControl: Optional[Eac3PassthroughControlType] = None + PhaseControl: Optional[Eac3PhaseControlType] = None + SampleRate: Optional[int] = None + StereoDownmix: Optional[Eac3StereoDownmixType] = None + SurroundExMode: Optional[Eac3SurroundExModeType] = None + SurroundMode: Optional[Eac3SurroundModeType] = None + +class FlacSettingsTypeDef(BaseModel): + BitDepth: Optional[int] = None + Channels: Optional[int] = None + SampleRate: Optional[int] = None + +class Mp2SettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + Channels: Optional[int] = None + SampleRate: Optional[int] = None + +class Mp3SettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + Channels: Optional[int] = None + RateControlMode: Optional[Mp3RateControlModeType] = None + SampleRate: Optional[int] = None + VbrQuality: Optional[int] = None + +class OpusSettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + Channels: Optional[int] = None + SampleRate: Optional[int] = None + +class VorbisSettingsTypeDef(BaseModel): + Channels: Optional[int] = None + SampleRate: Optional[int] = None + VbrQuality: Optional[int] = None + +class WavSettingsTypeDef(BaseModel): + BitDepth: Optional[int] = None + Channels: Optional[int] = None + Format: Optional[WavFormatType] = None + SampleRate: Optional[int] = None + +class AudioNormalizationSettingsTypeDef(BaseModel): + Algorithm: Optional[AudioNormalizationAlgorithmType] = None + AlgorithmControl: Optional[AudioNormalizationAlgorithmControlType] = None + CorrectionGateLevel: Optional[int] = None + LoudnessLogging: Optional[AudioNormalizationLoudnessLoggingType] = None + PeakCalculation: Optional[AudioNormalizationPeakCalculationType] = None + TargetLkfs: Optional[float] = None + TruePeakLimiterThreshold: Optional[float] = None + +class HlsRenditionGroupSettingsTypeDef(BaseModel): + RenditionGroupId: Optional[str] = None + RenditionLanguageCode: Optional[LanguageCodeType] = None + RenditionName: Optional[str] = None + +class AudioSelectorGroupExtraOutputTypeDef(BaseModel): + AudioSelectorNames: Optional[List[str]] = None + +class AudioSelectorGroupOutputTypeDef(BaseModel): + AudioSelectorNames: Optional[List[str]] = None + +class AudioSelectorGroupTypeDef(BaseModel): + AudioSelectorNames: Optional[Sequence[str]] = None + +class ForceIncludeRenditionSizeTypeDef(BaseModel): + Height: Optional[int] = None + Width: Optional[int] = None + +class MinBottomRenditionSizeTypeDef(BaseModel): + Height: Optional[int] = None + Width: Optional[int] = None + +class MinTopRenditionSizeTypeDef(BaseModel): + Height: Optional[int] = None + Width: Optional[int] = None + +class Av1QvbrSettingsTypeDef(BaseModel): + QvbrQualityLevel: Optional[int] = None + QvbrQualityLevelFineTune: Optional[float] = None + +class AvailBlankingTypeDef(BaseModel): + AvailBlankingImage: Optional[str] = None + +class AvcIntraUhdSettingsTypeDef(BaseModel): + QualityTuningLevel: Optional[AvcIntraUhdQualityTuningLevelType] = None + +class BandwidthReductionFilterTypeDef(BaseModel): + Sharpening: Optional[BandwidthReductionFilterSharpeningType] = None + Strength: Optional[BandwidthReductionFilterStrengthType] = None + +class BurninDestinationSettingsTypeDef(BaseModel): + Alignment: Optional[BurninSubtitleAlignmentType] = None + ApplyFontColor: Optional[BurninSubtitleApplyFontColorType] = None + BackgroundColor: Optional[BurninSubtitleBackgroundColorType] = None + BackgroundOpacity: Optional[int] = None + FallbackFont: Optional[BurninSubtitleFallbackFontType] = None + FontColor: Optional[BurninSubtitleFontColorType] = None + FontFileBold: Optional[str] = None + FontFileBoldItalic: Optional[str] = None + FontFileItalic: Optional[str] = None + FontFileRegular: Optional[str] = None + FontOpacity: Optional[int] = None + FontResolution: Optional[int] = None + FontScript: Optional[FontScriptType] = None + FontSize: Optional[int] = None + HexFontColor: Optional[str] = None + OutlineColor: Optional[BurninSubtitleOutlineColorType] = None + OutlineSize: Optional[int] = None + ShadowColor: Optional[BurninSubtitleShadowColorType] = None + ShadowOpacity: Optional[int] = None + ShadowXOffset: Optional[int] = None + ShadowYOffset: Optional[int] = None + StylePassthrough: Optional[BurnInSubtitleStylePassthroughType] = None + TeletextSpacing: Optional[BurninSubtitleTeletextSpacingType] = None + XPosition: Optional[int] = None + YPosition: Optional[int] = None + +class CancelJobRequestRequestTypeDef(BaseModel): + Id: str + +class DvbSubDestinationSettingsTypeDef(BaseModel): + Alignment: Optional[DvbSubtitleAlignmentType] = None + ApplyFontColor: Optional[DvbSubtitleApplyFontColorType] = None + BackgroundColor: Optional[DvbSubtitleBackgroundColorType] = None + BackgroundOpacity: Optional[int] = None + DdsHandling: Optional[DvbddsHandlingType] = None + DdsXCoordinate: Optional[int] = None + DdsYCoordinate: Optional[int] = None + FallbackFont: Optional[DvbSubSubtitleFallbackFontType] = None + FontColor: Optional[DvbSubtitleFontColorType] = None + FontFileBold: Optional[str] = None + FontFileBoldItalic: Optional[str] = None + FontFileItalic: Optional[str] = None + FontFileRegular: Optional[str] = None + FontOpacity: Optional[int] = None + FontResolution: Optional[int] = None + FontScript: Optional[FontScriptType] = None + FontSize: Optional[int] = None + Height: Optional[int] = None + HexFontColor: Optional[str] = None + OutlineColor: Optional[DvbSubtitleOutlineColorType] = None + OutlineSize: Optional[int] = None + ShadowColor: Optional[DvbSubtitleShadowColorType] = None + ShadowOpacity: Optional[int] = None + ShadowXOffset: Optional[int] = None + ShadowYOffset: Optional[int] = None + StylePassthrough: Optional[DvbSubtitleStylePassthroughType] = None + SubtitlingType: Optional[DvbSubtitlingTypeType] = None + TeletextSpacing: Optional[DvbSubtitleTeletextSpacingType] = None + Width: Optional[int] = None + XPosition: Optional[int] = None + YPosition: Optional[int] = None + +class EmbeddedDestinationSettingsTypeDef(BaseModel): + Destination608ChannelNumber: Optional[int] = None + Destination708ServiceNumber: Optional[int] = None + +class ImscDestinationSettingsTypeDef(BaseModel): + Accessibility: Optional[ImscAccessibilitySubsType] = None + StylePassthrough: Optional[ImscStylePassthroughType] = None + +class SccDestinationSettingsTypeDef(BaseModel): + Framerate: Optional[SccDestinationFramerateType] = None + +class SrtDestinationSettingsTypeDef(BaseModel): + StylePassthrough: Optional[SrtStylePassthroughType] = None + +class TeletextDestinationSettingsExtraOutputTypeDef(BaseModel): + PageNumber: Optional[str] = None + PageTypes: Optional[List[TeletextPageTypeType]] = None + +class TtmlDestinationSettingsTypeDef(BaseModel): + StylePassthrough: Optional[TtmlStylePassthroughType] = None + +class WebvttDestinationSettingsTypeDef(BaseModel): + Accessibility: Optional[WebvttAccessibilitySubsType] = None + StylePassthrough: Optional[WebvttStylePassthroughType] = None + +class TeletextDestinationSettingsOutputTypeDef(BaseModel): + PageNumber: Optional[str] = None + PageTypes: Optional[List[TeletextPageTypeType]] = None + +class TeletextDestinationSettingsTypeDef(BaseModel): + PageNumber: Optional[str] = None + PageTypes: Optional[Sequence[TeletextPageTypeType]] = None + +class CaptionSourceFramerateTypeDef(BaseModel): + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + +class DvbSubSourceSettingsTypeDef(BaseModel): + Pid: Optional[int] = None + +class EmbeddedSourceSettingsTypeDef(BaseModel): + Convert608To708: Optional[EmbeddedConvert608To708Type] = None + Source608ChannelNumber: Optional[int] = None + Source608TrackNumber: Optional[int] = None + TerminateCaptions: Optional[EmbeddedTerminateCaptionsType] = None + +class TeletextSourceSettingsTypeDef(BaseModel): + PageNumber: Optional[str] = None + +class TrackSourceSettingsTypeDef(BaseModel): + TrackNumber: Optional[int] = None + +class WebvttHlsSourceSettingsTypeDef(BaseModel): + RenditionGroupId: Optional[str] = None + RenditionLanguageCode: Optional[LanguageCodeType] = None + RenditionName: Optional[str] = None + +class OutputChannelMappingExtraOutputTypeDef(BaseModel): + InputChannels: Optional[List[int]] = None + InputChannelsFineTune: Optional[List[float]] = None + +class OutputChannelMappingOutputTypeDef(BaseModel): + InputChannels: Optional[List[int]] = None + InputChannelsFineTune: Optional[List[float]] = None + +class OutputChannelMappingTypeDef(BaseModel): + InputChannels: Optional[Sequence[int]] = None + InputChannelsFineTune: Optional[Sequence[float]] = None + +class ClipLimitsTypeDef(BaseModel): + MaximumRGBTolerance: Optional[int] = None + MaximumYUV: Optional[int] = None + MinimumRGBTolerance: Optional[int] = None + MinimumYUV: Optional[int] = None + +class CmafAdditionalManifestExtraOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class CmafAdditionalManifestOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class CmafAdditionalManifestTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[Sequence[str]] = None + +class SpekeKeyProviderCmafExtraOutputTypeDef(BaseModel): + CertificateArn: Optional[str] = None + DashSignaledSystemIds: Optional[List[str]] = None + HlsSignaledSystemIds: Optional[List[str]] = None + ResourceId: Optional[str] = None + Url: Optional[str] = None + +class StaticKeyProviderTypeDef(BaseModel): + KeyFormat: Optional[str] = None + KeyFormatVersions: Optional[str] = None + StaticKeyValue: Optional[str] = None + Url: Optional[str] = None + +class SpekeKeyProviderCmafOutputTypeDef(BaseModel): + CertificateArn: Optional[str] = None + DashSignaledSystemIds: Optional[List[str]] = None + HlsSignaledSystemIds: Optional[List[str]] = None + ResourceId: Optional[str] = None + Url: Optional[str] = None + +class SpekeKeyProviderCmafTypeDef(BaseModel): + CertificateArn: Optional[str] = None + DashSignaledSystemIds: Optional[Sequence[str]] = None + HlsSignaledSystemIds: Optional[Sequence[str]] = None + ResourceId: Optional[str] = None + Url: Optional[str] = None + +class CmafImageBasedTrickPlaySettingsTypeDef(BaseModel): + IntervalCadence: Optional[CmafIntervalCadenceType] = None + ThumbnailHeight: Optional[int] = None + ThumbnailInterval: Optional[float] = None + ThumbnailWidth: Optional[int] = None + TileHeight: Optional[int] = None + TileWidth: Optional[int] = None + +class CmfcSettingsTypeDef(BaseModel): + AudioDuration: Optional[CmfcAudioDurationType] = None + AudioGroupId: Optional[str] = None + AudioRenditionSets: Optional[str] = None + AudioTrackType: Optional[CmfcAudioTrackTypeType] = None + DescriptiveVideoServiceFlag: Optional[CmfcDescriptiveVideoServiceFlagType] = None + IFrameOnlyManifest: Optional[CmfcIFrameOnlyManifestType] = None + KlvMetadata: Optional[CmfcKlvMetadataType] = None + ManifestMetadataSignaling: Optional[CmfcManifestMetadataSignalingType] = None + Scte35Esam: Optional[CmfcScte35EsamType] = None + Scte35Source: Optional[CmfcScte35SourceType] = None + TimedMetadata: Optional[CmfcTimedMetadataType] = None + TimedMetadataBoxVersion: Optional[CmfcTimedMetadataBoxVersionType] = None + TimedMetadataSchemeIdUri: Optional[str] = None + TimedMetadataValue: Optional[str] = None + +class ColorConversion3DLUTSettingTypeDef(BaseModel): + FileInput: Optional[str] = None + InputColorSpace: Optional[ColorSpaceType] = None + InputMasteringLuminance: Optional[int] = None + OutputColorSpace: Optional[ColorSpaceType] = None + OutputMasteringLuminance: Optional[int] = None + +class Hdr10MetadataTypeDef(BaseModel): + BluePrimaryX: Optional[int] = None + BluePrimaryY: Optional[int] = None + GreenPrimaryX: Optional[int] = None + GreenPrimaryY: Optional[int] = None + MaxContentLightLevel: Optional[int] = None + MaxFrameAverageLightLevel: Optional[int] = None + MaxLuminance: Optional[int] = None + MinLuminance: Optional[int] = None + RedPrimaryX: Optional[int] = None + RedPrimaryY: Optional[int] = None + WhitePointX: Optional[int] = None + WhitePointY: Optional[int] = None + +class F4vSettingsTypeDef(BaseModel): + MoovPlacement: Optional[F4vMoovPlacementType] = None + +class M3u8SettingsExtraOutputTypeDef(BaseModel): + AudioDuration: Optional[M3u8AudioDurationType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[List[int]] = None + DataPTSControl: Optional[M3u8DataPtsControlType] = None + MaxPcrInterval: Optional[int] = None + NielsenId3: Optional[M3u8NielsenId3Type] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M3u8PcrControlType] = None + PcrPid: Optional[int] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[int] = None + PrivateMetadataPid: Optional[int] = None + ProgramNumber: Optional[int] = None + PtsOffset: Optional[int] = None + PtsOffsetMode: Optional[TsPtsOffsetType] = None + Scte35Pid: Optional[int] = None + Scte35Source: Optional[M3u8Scte35SourceType] = None + TimedMetadata: Optional[TimedMetadataType] = None + TimedMetadataPid: Optional[int] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[int] = None + +class MovSettingsTypeDef(BaseModel): + ClapAtom: Optional[MovClapAtomType] = None + CslgAtom: Optional[MovCslgAtomType] = None + Mpeg2FourCCControl: Optional[MovMpeg2FourCCControlType] = None + PaddingControl: Optional[MovPaddingControlType] = None + Reference: Optional[MovReferenceType] = None + +class Mp4SettingsTypeDef(BaseModel): + AudioDuration: Optional[CmfcAudioDurationType] = None + CslgAtom: Optional[Mp4CslgAtomType] = None + CttsVersion: Optional[int] = None + FreeSpaceBox: Optional[Mp4FreeSpaceBoxType] = None + MoovPlacement: Optional[Mp4MoovPlacementType] = None + Mp4MajorBrand: Optional[str] = None + +class MpdSettingsTypeDef(BaseModel): + AccessibilityCaptionHints: Optional[MpdAccessibilityCaptionHintsType] = None + AudioDuration: Optional[MpdAudioDurationType] = None + CaptionContainerType: Optional[MpdCaptionContainerTypeType] = None + KlvMetadata: Optional[MpdKlvMetadataType] = None + ManifestMetadataSignaling: Optional[MpdManifestMetadataSignalingType] = None + Scte35Esam: Optional[MpdScte35EsamType] = None + Scte35Source: Optional[MpdScte35SourceType] = None + TimedMetadata: Optional[MpdTimedMetadataType] = None + TimedMetadataBoxVersion: Optional[MpdTimedMetadataBoxVersionType] = None + TimedMetadataSchemeIdUri: Optional[str] = None + TimedMetadataValue: Optional[str] = None + +class M3u8SettingsOutputTypeDef(BaseModel): + AudioDuration: Optional[M3u8AudioDurationType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[List[int]] = None + DataPTSControl: Optional[M3u8DataPtsControlType] = None + MaxPcrInterval: Optional[int] = None + NielsenId3: Optional[M3u8NielsenId3Type] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M3u8PcrControlType] = None + PcrPid: Optional[int] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[int] = None + PrivateMetadataPid: Optional[int] = None + ProgramNumber: Optional[int] = None + PtsOffset: Optional[int] = None + PtsOffsetMode: Optional[TsPtsOffsetType] = None + Scte35Pid: Optional[int] = None + Scte35Source: Optional[M3u8Scte35SourceType] = None + TimedMetadata: Optional[TimedMetadataType] = None + TimedMetadataPid: Optional[int] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[int] = None + +class M3u8SettingsTypeDef(BaseModel): + AudioDuration: Optional[M3u8AudioDurationType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[Sequence[int]] = None + DataPTSControl: Optional[M3u8DataPtsControlType] = None + MaxPcrInterval: Optional[int] = None + NielsenId3: Optional[M3u8NielsenId3Type] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M3u8PcrControlType] = None + PcrPid: Optional[int] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[int] = None + PrivateMetadataPid: Optional[int] = None + ProgramNumber: Optional[int] = None + PtsOffset: Optional[int] = None + PtsOffsetMode: Optional[TsPtsOffsetType] = None + Scte35Pid: Optional[int] = None + Scte35Source: Optional[M3u8Scte35SourceType] = None + TimedMetadata: Optional[TimedMetadataType] = None + TimedMetadataPid: Optional[int] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[int] = None + +class HopDestinationTypeDef(BaseModel): + Priority: Optional[int] = None + Queue: Optional[str] = None + WaitMinutes: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ReservationPlanSettingsTypeDef(BaseModel): + Commitment: Literal["ONE_YEAR"] + RenewalType: RenewalTypeType + ReservedSlots: int + +class DashAdditionalManifestExtraOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class DashAdditionalManifestOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class DashAdditionalManifestTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[Sequence[str]] = None + +class SpekeKeyProviderExtraOutputTypeDef(BaseModel): + CertificateArn: Optional[str] = None + ResourceId: Optional[str] = None + SystemIds: Optional[List[str]] = None + Url: Optional[str] = None + +class SpekeKeyProviderOutputTypeDef(BaseModel): + CertificateArn: Optional[str] = None + ResourceId: Optional[str] = None + SystemIds: Optional[List[str]] = None + Url: Optional[str] = None + +class SpekeKeyProviderTypeDef(BaseModel): + CertificateArn: Optional[str] = None + ResourceId: Optional[str] = None + SystemIds: Optional[Sequence[str]] = None + Url: Optional[str] = None + +class DashIsoImageBasedTrickPlaySettingsTypeDef(BaseModel): + IntervalCadence: Optional[DashIsoIntervalCadenceType] = None + ThumbnailHeight: Optional[int] = None + ThumbnailInterval: Optional[float] = None + ThumbnailWidth: Optional[int] = None + TileHeight: Optional[int] = None + TileWidth: Optional[int] = None + +class DeinterlacerTypeDef(BaseModel): + Algorithm: Optional[DeinterlaceAlgorithmType] = None + Control: Optional[DeinterlacerControlType] = None + Mode: Optional[DeinterlacerModeType] = None + +class DeleteJobTemplateRequestRequestTypeDef(BaseModel): + Name: str + +class DeletePresetRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteQueueRequestRequestTypeDef(BaseModel): + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeEndpointsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + Mode: Optional[DescribeEndpointsModeType] = None + NextToken: Optional[str] = None + +class EndpointTypeDef(BaseModel): + Url: Optional[str] = None + +class DisassociateCertificateRequestRequestTypeDef(BaseModel): + Arn: str + +class DolbyVisionLevel6MetadataTypeDef(BaseModel): + MaxCll: Optional[int] = None + MaxFall: Optional[int] = None + +class DvbNitSettingsTypeDef(BaseModel): + NetworkId: Optional[int] = None + NetworkName: Optional[str] = None + NitInterval: Optional[int] = None + +class DvbSdtSettingsTypeDef(BaseModel): + OutputSdt: Optional[OutputSdtType] = None + SdtInterval: Optional[int] = None + ServiceName: Optional[str] = None + ServiceProviderName: Optional[str] = None + +class DvbTdtSettingsTypeDef(BaseModel): + TdtInterval: Optional[int] = None + +class EsamManifestConfirmConditionNotificationTypeDef(BaseModel): + MccXml: Optional[str] = None + +class EsamSignalProcessingNotificationTypeDef(BaseModel): + SccXml: Optional[str] = None + +class ExtendedDataServicesTypeDef(BaseModel): + CopyProtectionAction: Optional[CopyProtectionActionType] = None + VchipAction: Optional[VchipActionType] = None + +class FrameCaptureSettingsTypeDef(BaseModel): + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + MaxCaptures: Optional[int] = None + Quality: Optional[int] = None + +class GetJobRequestRequestTypeDef(BaseModel): + Id: str + +class GetJobTemplateRequestRequestTypeDef(BaseModel): + Name: str + +class PolicyTypeDef(BaseModel): + HttpInputs: Optional[InputPolicyType] = None + HttpsInputs: Optional[InputPolicyType] = None + S3Inputs: Optional[InputPolicyType] = None + +class GetPresetRequestRequestTypeDef(BaseModel): + Name: str + +class GetQueueRequestRequestTypeDef(BaseModel): + Name: str + +class H264QvbrSettingsTypeDef(BaseModel): + MaxAverageBitrate: Optional[int] = None + QvbrQualityLevel: Optional[int] = None + QvbrQualityLevelFineTune: Optional[float] = None + +class H265QvbrSettingsTypeDef(BaseModel): + MaxAverageBitrate: Optional[int] = None + QvbrQualityLevel: Optional[int] = None + QvbrQualityLevelFineTune: Optional[float] = None + +class Hdr10PlusTypeDef(BaseModel): + MasteringMonitorNits: Optional[int] = None + TargetMonitorNits: Optional[int] = None + +class HlsAdditionalManifestExtraOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class HlsAdditionalManifestOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class HlsAdditionalManifestTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[Sequence[str]] = None + +class HlsCaptionLanguageMappingTypeDef(BaseModel): + CaptionChannel: Optional[int] = None + CustomLanguageCode: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageDescription: Optional[str] = None + +class HlsImageBasedTrickPlaySettingsTypeDef(BaseModel): + IntervalCadence: Optional[HlsIntervalCadenceType] = None + ThumbnailHeight: Optional[int] = None + ThumbnailInterval: Optional[float] = None + ThumbnailWidth: Optional[int] = None + TileHeight: Optional[int] = None + TileWidth: Optional[int] = None + +class HlsSettingsTypeDef(BaseModel): + AudioGroupId: Optional[str] = None + AudioOnlyContainer: Optional[HlsAudioOnlyContainerType] = None + AudioRenditionSets: Optional[str] = None + AudioTrackType: Optional[HlsAudioTrackTypeType] = None + DescriptiveVideoServiceFlag: Optional[HlsDescriptiveVideoServiceFlagType] = None + IFrameOnlyManifest: Optional[HlsIFrameOnlyManifestType] = None + SegmentModifier: Optional[str] = None + +class Id3InsertionTypeDef(BaseModel): + Id3: Optional[str] = None + Timecode: Optional[str] = None + +class InsertableImageTypeDef(BaseModel): + Duration: Optional[int] = None + FadeIn: Optional[int] = None + FadeOut: Optional[int] = None + Height: Optional[int] = None + ImageInserterInput: Optional[str] = None + ImageX: Optional[int] = None + ImageY: Optional[int] = None + Layer: Optional[int] = None + Opacity: Optional[int] = None + StartTime: Optional[str] = None + Width: Optional[int] = None + +class InputClippingTypeDef(BaseModel): + EndTimecode: Optional[str] = None + StartTimecode: Optional[str] = None + +class InputDecryptionSettingsTypeDef(BaseModel): + DecryptionMode: Optional[DecryptionModeType] = None + EncryptedDecryptionKey: Optional[str] = None + InitializationVector: Optional[str] = None + KmsKeyRegion: Optional[str] = None + +class InputVideoGeneratorTypeDef(BaseModel): + Channels: Optional[int] = None + Duration: Optional[int] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + SampleRate: Optional[int] = None + +class RectangleTypeDef(BaseModel): + Height: Optional[int] = None + Width: Optional[int] = None + X: Optional[int] = None + Y: Optional[int] = None + +class JobMessagesTypeDef(BaseModel): + Info: Optional[List[str]] = None + Warning: Optional[List[str]] = None + +class KantarWatermarkSettingsTypeDef(BaseModel): + ChannelName: Optional[str] = None + ContentReference: Optional[str] = None + CredentialsSecretName: Optional[str] = None + FileOffset: Optional[float] = None + KantarLicenseId: Optional[int] = None + KantarServerUrl: Optional[str] = None + LogDestination: Optional[str] = None + Metadata3: Optional[str] = None + Metadata4: Optional[str] = None + Metadata5: Optional[str] = None + Metadata6: Optional[str] = None + Metadata7: Optional[str] = None + Metadata8: Optional[str] = None + +class NielsenConfigurationTypeDef(BaseModel): + BreakoutCode: Optional[int] = None + DistributorId: Optional[str] = None + +class NielsenNonLinearWatermarkSettingsTypeDef(BaseModel): + ActiveWatermarkProcess: Optional[NielsenActiveWatermarkProcessTypeType] = None + AdiFilename: Optional[str] = None + AssetId: Optional[str] = None + AssetName: Optional[str] = None + CbetSourceId: Optional[str] = None + EpisodeId: Optional[str] = None + MetadataDestination: Optional[str] = None + SourceId: Optional[int] = None + SourceWatermarkStatus: Optional[NielsenSourceWatermarkStatusTypeType] = None + TicServerUrl: Optional[str] = None + UniqueTicPerAudioTrack: Optional[NielsenUniqueTicPerAudioTrackTypeType] = None + +class TimecodeConfigTypeDef(BaseModel): + Anchor: Optional[str] = None + Source: Optional[TimecodeSourceType] = None + Start: Optional[str] = None + TimestampOffset: Optional[str] = None + +class QueueTransitionTypeDef(BaseModel): + DestinationQueue: Optional[str] = None + SourceQueue: Optional[str] = None + Timestamp: Optional[datetime] = None + +class TimingTypeDef(BaseModel): + FinishTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + SubmitTime: Optional[datetime] = None + +class WarningGroupTypeDef(BaseModel): + Code: int + Count: int + +class ListJobTemplatesRequestRequestTypeDef(BaseModel): + Category: Optional[str] = None + ListBy: Optional[JobTemplateListByType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Order: Optional[OrderType] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Order: Optional[OrderType] = None + Queue: Optional[str] = None + Status: Optional[JobStatusType] = None + +class ListPresetsRequestRequestTypeDef(BaseModel): + Category: Optional[str] = None + ListBy: Optional[PresetListByType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Order: Optional[OrderType] = None + +class ListQueuesRequestRequestTypeDef(BaseModel): + ListBy: Optional[QueueListByType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Order: Optional[OrderType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + Arn: str + +class ResourceTagsTypeDef(BaseModel): + Arn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class M2tsScte35EsamTypeDef(BaseModel): + Scte35EsamPid: Optional[int] = None + +class MotionImageInsertionFramerateTypeDef(BaseModel): + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + +class MotionImageInsertionOffsetTypeDef(BaseModel): + ImageX: Optional[int] = None + ImageY: Optional[int] = None + +class Mpeg2SettingsTypeDef(BaseModel): + AdaptiveQuantization: Optional[Mpeg2AdaptiveQuantizationType] = None + Bitrate: Optional[int] = None + CodecLevel: Optional[Mpeg2CodecLevelType] = None + CodecProfile: Optional[Mpeg2CodecProfileType] = None + DynamicSubGop: Optional[Mpeg2DynamicSubGopType] = None + FramerateControl: Optional[Mpeg2FramerateControlType] = None + FramerateConversionAlgorithm: Optional[Mpeg2FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopClosedCadence: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[Mpeg2GopSizeUnitsType] = None + HrdBufferFinalFillPercentage: Optional[int] = None + HrdBufferInitialFillPercentage: Optional[int] = None + HrdBufferSize: Optional[int] = None + InterlaceMode: Optional[Mpeg2InterlaceModeType] = None + IntraDcPrecision: Optional[Mpeg2IntraDcPrecisionType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + NumberBFramesBetweenReferenceFrames: Optional[int] = None + ParControl: Optional[Mpeg2ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + QualityTuningLevel: Optional[Mpeg2QualityTuningLevelType] = None + RateControlMode: Optional[Mpeg2RateControlModeType] = None + ScanTypeConversionMode: Optional[Mpeg2ScanTypeConversionModeType] = None + SceneChangeDetect: Optional[Mpeg2SceneChangeDetectType] = None + SlowPal: Optional[Mpeg2SlowPalType] = None + Softness: Optional[int] = None + SpatialAdaptiveQuantization: Optional[Mpeg2SpatialAdaptiveQuantizationType] = None + Syntax: Optional[Mpeg2SyntaxType] = None + Telecine: Optional[Mpeg2TelecineType] = None + TemporalAdaptiveQuantization: Optional[Mpeg2TemporalAdaptiveQuantizationType] = None + +class MsSmoothAdditionalManifestExtraOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class MsSmoothAdditionalManifestOutputTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[List[str]] = None + +class MsSmoothAdditionalManifestTypeDef(BaseModel): + ManifestNameModifier: Optional[str] = None + SelectedOutputs: Optional[Sequence[str]] = None + +class MxfXavcProfileSettingsTypeDef(BaseModel): + DurationMode: Optional[MxfXavcDurationModeType] = None + MaxAncDataSize: Optional[int] = None + +class NexGuardFileMarkerSettingsTypeDef(BaseModel): + License: Optional[str] = None + Payload: Optional[int] = None + Preset: Optional[str] = None + Strength: Optional[WatermarkingStrengthType] = None + +class NoiseReducerFilterSettingsTypeDef(BaseModel): + Strength: Optional[int] = None + +class NoiseReducerSpatialFilterSettingsTypeDef(BaseModel): + PostFilterSharpenStrength: Optional[int] = None + Speed: Optional[int] = None + Strength: Optional[int] = None + +class NoiseReducerTemporalFilterSettingsTypeDef(BaseModel): + AggressiveMode: Optional[int] = None + PostTemporalSharpening: Optional[NoiseFilterPostTemporalSharpeningType] = None + PostTemporalSharpeningStrength: Optional[ NoiseFilterPostTemporalSharpeningStrengthType ] = None + Speed: Optional[int] = None + Strength: Optional[int] = None + +class VideoDetailTypeDef(BaseModel): + HeightInPx: Optional[int] = None + WidthInPx: Optional[int] = None + +class ProresSettingsTypeDef(BaseModel): + ChromaSampling: Optional[ProresChromaSamplingType] = None + CodecProfile: Optional[ProresCodecProfileType] = None + FramerateControl: Optional[ProresFramerateControlType] = None + FramerateConversionAlgorithm: Optional[ProresFramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + InterlaceMode: Optional[ProresInterlaceModeType] = None + ParControl: Optional[ProresParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + ScanTypeConversionMode: Optional[ProresScanTypeConversionModeType] = None + SlowPal: Optional[ProresSlowPalType] = None + Telecine: Optional[ProresTelecineType] = None + +class ReservationPlanTypeDef(BaseModel): + Commitment: Optional[Literal["ONE_YEAR"]] = None + ExpiresAt: Optional[datetime] = None + PurchasedAt: Optional[datetime] = None + RenewalType: Optional[RenewalTypeType] = None + ReservedSlots: Optional[int] = None + Status: Optional[ReservationPlanStatusType] = None + +class S3DestinationAccessControlTypeDef(BaseModel): + CannedAcl: Optional[S3ObjectCannedAclType] = None + +class S3EncryptionSettingsTypeDef(BaseModel): + EncryptionType: Optional[S3ServerSideEncryptionTypeType] = None + KmsEncryptionContext: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class SearchJobsRequestRequestTypeDef(BaseModel): + InputFile: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Order: Optional[OrderType] = None + Queue: Optional[str] = None + Status: Optional[JobStatusType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + Arn: str + Tags: Mapping[str, str] + +class TimecodeBurninTypeDef(BaseModel): + FontSize: Optional[int] = None + Position: Optional[TimecodeBurninPositionType] = None + Prefix: Optional[str] = None + +class UncompressedSettingsTypeDef(BaseModel): + Fourcc: Optional[UncompressedFourccType] = None + FramerateControl: Optional[UncompressedFramerateControlType] = None + FramerateConversionAlgorithm: Optional[UncompressedFramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + InterlaceMode: Optional[UncompressedInterlaceModeType] = None + ScanTypeConversionMode: Optional[UncompressedScanTypeConversionModeType] = None + SlowPal: Optional[UncompressedSlowPalType] = None + Telecine: Optional[UncompressedTelecineType] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + Arn: str + TagKeys: Optional[Sequence[str]] = None + +class Vc3SettingsTypeDef(BaseModel): + FramerateControl: Optional[Vc3FramerateControlType] = None + FramerateConversionAlgorithm: Optional[Vc3FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + InterlaceMode: Optional[Vc3InterlaceModeType] = None + ScanTypeConversionMode: Optional[Vc3ScanTypeConversionModeType] = None + SlowPal: Optional[Vc3SlowPalType] = None + Telecine: Optional[Vc3TelecineType] = None + Vc3Class: Optional[Vc3ClassType] = None + +class Vp8SettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + FramerateControl: Optional[Vp8FramerateControlType] = None + FramerateConversionAlgorithm: Optional[Vp8FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopSize: Optional[float] = None + HrdBufferSize: Optional[int] = None + MaxBitrate: Optional[int] = None + ParControl: Optional[Vp8ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + QualityTuningLevel: Optional[Vp8QualityTuningLevelType] = None + RateControlMode: Optional[Literal["VBR"]] = None + +class Vp9SettingsTypeDef(BaseModel): + Bitrate: Optional[int] = None + FramerateControl: Optional[Vp9FramerateControlType] = None + FramerateConversionAlgorithm: Optional[Vp9FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopSize: Optional[float] = None + HrdBufferSize: Optional[int] = None + MaxBitrate: Optional[int] = None + ParControl: Optional[Vp9ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + QualityTuningLevel: Optional[Vp9QualityTuningLevelType] = None + RateControlMode: Optional[Literal["VBR"]] = None + +class VideoOverlayInputClippingTypeDef(BaseModel): + EndTimecode: Optional[str] = None + StartTimecode: Optional[str] = None + +class Xavc4kIntraCbgProfileSettingsTypeDef(BaseModel): + XavcClass: Optional[Xavc4kIntraCbgProfileClassType] = None + +class Xavc4kIntraVbrProfileSettingsTypeDef(BaseModel): + XavcClass: Optional[Xavc4kIntraVbrProfileClassType] = None + +class Xavc4kProfileSettingsTypeDef(BaseModel): + BitrateClass: Optional[Xavc4kProfileBitrateClassType] = None + CodecProfile: Optional[Xavc4kProfileCodecProfileType] = None + FlickerAdaptiveQuantization: Optional[XavcFlickerAdaptiveQuantizationType] = None + GopBReference: Optional[XavcGopBReferenceType] = None + GopClosedCadence: Optional[int] = None + HrdBufferSize: Optional[int] = None + QualityTuningLevel: Optional[Xavc4kProfileQualityTuningLevelType] = None + Slices: Optional[int] = None + +class XavcHdIntraCbgProfileSettingsTypeDef(BaseModel): + XavcClass: Optional[XavcHdIntraCbgProfileClassType] = None + +class XavcHdProfileSettingsTypeDef(BaseModel): + BitrateClass: Optional[XavcHdProfileBitrateClassType] = None + FlickerAdaptiveQuantization: Optional[XavcFlickerAdaptiveQuantizationType] = None + GopBReference: Optional[XavcGopBReferenceType] = None + GopClosedCadence: Optional[int] = None + HrdBufferSize: Optional[int] = None + InterlaceMode: Optional[XavcInterlaceModeType] = None + QualityTuningLevel: Optional[XavcHdProfileQualityTuningLevelType] = None + Slices: Optional[int] = None + Telecine: Optional[XavcHdProfileTelecineType] = None + +class AudioCodecSettingsTypeDef(BaseModel): + AacSettings: Optional[AacSettingsTypeDef] = None + Ac3Settings: Optional[Ac3SettingsTypeDef] = None + AiffSettings: Optional[AiffSettingsTypeDef] = None + Codec: Optional[AudioCodecType] = None + Eac3AtmosSettings: Optional[Eac3AtmosSettingsTypeDef] = None + Eac3Settings: Optional[Eac3SettingsTypeDef] = None + FlacSettings: Optional[FlacSettingsTypeDef] = None + Mp2Settings: Optional[Mp2SettingsTypeDef] = None + Mp3Settings: Optional[Mp3SettingsTypeDef] = None + OpusSettings: Optional[OpusSettingsTypeDef] = None + VorbisSettings: Optional[VorbisSettingsTypeDef] = None + WavSettings: Optional[WavSettingsTypeDef] = None + +class AutomatedAbrRuleExtraOutputTypeDef(BaseModel): + AllowedRenditions: Optional[List[AllowedRenditionSizeTypeDef]] = None + ForceIncludeRenditions: Optional[List[ForceIncludeRenditionSizeTypeDef]] = None + MinBottomRenditionSize: Optional[MinBottomRenditionSizeTypeDef] = None + MinTopRenditionSize: Optional[MinTopRenditionSizeTypeDef] = None + Type: Optional[RuleTypeType] = None + +class AutomatedAbrRuleOutputTypeDef(BaseModel): + AllowedRenditions: Optional[List[AllowedRenditionSizeTypeDef]] = None + ForceIncludeRenditions: Optional[List[ForceIncludeRenditionSizeTypeDef]] = None + MinBottomRenditionSize: Optional[MinBottomRenditionSizeTypeDef] = None + MinTopRenditionSize: Optional[MinTopRenditionSizeTypeDef] = None + Type: Optional[RuleTypeType] = None + +class AutomatedAbrRuleTypeDef(BaseModel): + AllowedRenditions: Optional[Sequence[AllowedRenditionSizeTypeDef]] = None + ForceIncludeRenditions: Optional[Sequence[ForceIncludeRenditionSizeTypeDef]] = None + MinBottomRenditionSize: Optional[MinBottomRenditionSizeTypeDef] = None + MinTopRenditionSize: Optional[MinTopRenditionSizeTypeDef] = None + Type: Optional[RuleTypeType] = None + +class Av1SettingsTypeDef(BaseModel): + AdaptiveQuantization: Optional[Av1AdaptiveQuantizationType] = None + BitDepth: Optional[Av1BitDepthType] = None + FilmGrainSynthesis: Optional[Av1FilmGrainSynthesisType] = None + FramerateControl: Optional[Av1FramerateControlType] = None + FramerateConversionAlgorithm: Optional[Av1FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopSize: Optional[float] = None + MaxBitrate: Optional[int] = None + NumberBFramesBetweenReferenceFrames: Optional[int] = None + QvbrSettings: Optional[Av1QvbrSettingsTypeDef] = None + RateControlMode: Optional[Literal["QVBR"]] = None + Slices: Optional[int] = None + SpatialAdaptiveQuantization: Optional[Av1SpatialAdaptiveQuantizationType] = None + +class AvcIntraSettingsTypeDef(BaseModel): + AvcIntraClass: Optional[AvcIntraClassType] = None + AvcIntraUhdSettings: Optional[AvcIntraUhdSettingsTypeDef] = None + FramerateControl: Optional[AvcIntraFramerateControlType] = None + FramerateConversionAlgorithm: Optional[AvcIntraFramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + InterlaceMode: Optional[AvcIntraInterlaceModeType] = None + ScanTypeConversionMode: Optional[AvcIntraScanTypeConversionModeType] = None + SlowPal: Optional[AvcIntraSlowPalType] = None + Telecine: Optional[AvcIntraTelecineType] = None + +class CaptionDestinationSettingsExtraOutputTypeDef(BaseModel): + BurninDestinationSettings: Optional[BurninDestinationSettingsTypeDef] = None + DestinationType: Optional[CaptionDestinationTypeType] = None + DvbSubDestinationSettings: Optional[DvbSubDestinationSettingsTypeDef] = None + EmbeddedDestinationSettings: Optional[EmbeddedDestinationSettingsTypeDef] = None + ImscDestinationSettings: Optional[ImscDestinationSettingsTypeDef] = None + SccDestinationSettings: Optional[SccDestinationSettingsTypeDef] = None + SrtDestinationSettings: Optional[SrtDestinationSettingsTypeDef] = None + TeletextDestinationSettings: Optional[TeletextDestinationSettingsExtraOutputTypeDef] = None + TtmlDestinationSettings: Optional[TtmlDestinationSettingsTypeDef] = None + WebvttDestinationSettings: Optional[WebvttDestinationSettingsTypeDef] = None + +class CaptionDestinationSettingsOutputTypeDef(BaseModel): + BurninDestinationSettings: Optional[BurninDestinationSettingsTypeDef] = None + DestinationType: Optional[CaptionDestinationTypeType] = None + DvbSubDestinationSettings: Optional[DvbSubDestinationSettingsTypeDef] = None + EmbeddedDestinationSettings: Optional[EmbeddedDestinationSettingsTypeDef] = None + ImscDestinationSettings: Optional[ImscDestinationSettingsTypeDef] = None + SccDestinationSettings: Optional[SccDestinationSettingsTypeDef] = None + SrtDestinationSettings: Optional[SrtDestinationSettingsTypeDef] = None + TeletextDestinationSettings: Optional[TeletextDestinationSettingsOutputTypeDef] = None + TtmlDestinationSettings: Optional[TtmlDestinationSettingsTypeDef] = None + WebvttDestinationSettings: Optional[WebvttDestinationSettingsTypeDef] = None + +class CaptionDestinationSettingsTypeDef(BaseModel): + BurninDestinationSettings: Optional[BurninDestinationSettingsTypeDef] = None + DestinationType: Optional[CaptionDestinationTypeType] = None + DvbSubDestinationSettings: Optional[DvbSubDestinationSettingsTypeDef] = None + EmbeddedDestinationSettings: Optional[EmbeddedDestinationSettingsTypeDef] = None + ImscDestinationSettings: Optional[ImscDestinationSettingsTypeDef] = None + SccDestinationSettings: Optional[SccDestinationSettingsTypeDef] = None + SrtDestinationSettings: Optional[SrtDestinationSettingsTypeDef] = None + TeletextDestinationSettings: Optional[TeletextDestinationSettingsTypeDef] = None + TtmlDestinationSettings: Optional[TtmlDestinationSettingsTypeDef] = None + WebvttDestinationSettings: Optional[WebvttDestinationSettingsTypeDef] = None + +class FileSourceSettingsTypeDef(BaseModel): + Convert608To708: Optional[FileSourceConvert608To708Type] = None + ConvertPaintToPop: Optional[CaptionSourceConvertPaintOnToPopOnType] = None + Framerate: Optional[CaptionSourceFramerateTypeDef] = None + SourceFile: Optional[str] = None + TimeDelta: Optional[int] = None + TimeDeltaUnits: Optional[FileSourceTimeDeltaUnitsType] = None + +class ChannelMappingExtraOutputTypeDef(BaseModel): + OutputChannels: Optional[List[OutputChannelMappingExtraOutputTypeDef]] = None + +class ChannelMappingOutputTypeDef(BaseModel): + OutputChannels: Optional[List[OutputChannelMappingOutputTypeDef]] = None + +class ChannelMappingTypeDef(BaseModel): + OutputChannels: Optional[Sequence[OutputChannelMappingTypeDef]] = None + +class CmafEncryptionSettingsExtraOutputTypeDef(BaseModel): + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[CmafEncryptionTypeType] = None + InitializationVectorInManifest: Optional[CmafInitializationVectorInManifestType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderCmafExtraOutputTypeDef] = None + StaticKeyProvider: Optional[StaticKeyProviderTypeDef] = None + Type: Optional[CmafKeyProviderTypeType] = None + +class CmafEncryptionSettingsOutputTypeDef(BaseModel): + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[CmafEncryptionTypeType] = None + InitializationVectorInManifest: Optional[CmafInitializationVectorInManifestType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderCmafOutputTypeDef] = None + StaticKeyProvider: Optional[StaticKeyProviderTypeDef] = None + Type: Optional[CmafKeyProviderTypeType] = None + +class CmafEncryptionSettingsTypeDef(BaseModel): + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[CmafEncryptionTypeType] = None + InitializationVectorInManifest: Optional[CmafInitializationVectorInManifestType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderCmafTypeDef] = None + StaticKeyProvider: Optional[StaticKeyProviderTypeDef] = None + Type: Optional[CmafKeyProviderTypeType] = None + +class ColorCorrectorTypeDef(BaseModel): + Brightness: Optional[int] = None + ClipLimits: Optional[ClipLimitsTypeDef] = None + ColorSpaceConversion: Optional[ColorSpaceConversionType] = None + Contrast: Optional[int] = None + Hdr10Metadata: Optional[Hdr10MetadataTypeDef] = None + HdrToSdrToneMapper: Optional[HDRToSDRToneMapperType] = None + Hue: Optional[int] = None + MaxLuminance: Optional[int] = None + SampleRangeConversion: Optional[SampleRangeConversionType] = None + Saturation: Optional[int] = None + SdrReferenceWhiteLevel: Optional[int] = None + +class VideoSelectorTypeDef(BaseModel): + AlphaBehavior: Optional[AlphaBehaviorType] = None + ColorSpace: Optional[ColorSpaceType] = None + ColorSpaceUsage: Optional[ColorSpaceUsageType] = None + EmbeddedTimecodeOverride: Optional[EmbeddedTimecodeOverrideType] = None + Hdr10Metadata: Optional[Hdr10MetadataTypeDef] = None + MaxLuminance: Optional[int] = None + PadVideo: Optional[PadVideoType] = None + Pid: Optional[int] = None + ProgramNumber: Optional[int] = None + Rotate: Optional[InputRotateType] = None + SampleRange: Optional[InputSampleRangeType] = None + +class CreateQueueRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + PricingPlan: Optional[PricingPlanType] = None + ReservationPlanSettings: Optional[ReservationPlanSettingsTypeDef] = None + Status: Optional[QueueStatusType] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateQueueRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + ReservationPlanSettings: Optional[ReservationPlanSettingsTypeDef] = None + Status: Optional[QueueStatusType] = None + +class DashIsoEncryptionSettingsExtraOutputTypeDef(BaseModel): + PlaybackDeviceCompatibility: Optional[DashIsoPlaybackDeviceCompatibilityType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderExtraOutputTypeDef] = None + +class HlsEncryptionSettingsExtraOutputTypeDef(BaseModel): + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[HlsEncryptionTypeType] = None + InitializationVectorInManifest: Optional[HlsInitializationVectorInManifestType] = None + OfflineEncrypted: Optional[HlsOfflineEncryptedType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderExtraOutputTypeDef] = None + StaticKeyProvider: Optional[StaticKeyProviderTypeDef] = None + Type: Optional[HlsKeyProviderTypeType] = None + +class MsSmoothEncryptionSettingsExtraOutputTypeDef(BaseModel): + SpekeKeyProvider: Optional[SpekeKeyProviderExtraOutputTypeDef] = None + +class DashIsoEncryptionSettingsOutputTypeDef(BaseModel): + PlaybackDeviceCompatibility: Optional[DashIsoPlaybackDeviceCompatibilityType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderOutputTypeDef] = None + +class HlsEncryptionSettingsOutputTypeDef(BaseModel): + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[HlsEncryptionTypeType] = None + InitializationVectorInManifest: Optional[HlsInitializationVectorInManifestType] = None + OfflineEncrypted: Optional[HlsOfflineEncryptedType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderOutputTypeDef] = None + StaticKeyProvider: Optional[StaticKeyProviderTypeDef] = None + Type: Optional[HlsKeyProviderTypeType] = None + +class MsSmoothEncryptionSettingsOutputTypeDef(BaseModel): + SpekeKeyProvider: Optional[SpekeKeyProviderOutputTypeDef] = None + +class DashIsoEncryptionSettingsTypeDef(BaseModel): + PlaybackDeviceCompatibility: Optional[DashIsoPlaybackDeviceCompatibilityType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderTypeDef] = None + +class HlsEncryptionSettingsTypeDef(BaseModel): + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[HlsEncryptionTypeType] = None + InitializationVectorInManifest: Optional[HlsInitializationVectorInManifestType] = None + OfflineEncrypted: Optional[HlsOfflineEncryptedType] = None + SpekeKeyProvider: Optional[SpekeKeyProviderTypeDef] = None + StaticKeyProvider: Optional[StaticKeyProviderTypeDef] = None + Type: Optional[HlsKeyProviderTypeType] = None + +class MsSmoothEncryptionSettingsTypeDef(BaseModel): + SpekeKeyProvider: Optional[SpekeKeyProviderTypeDef] = None + +class DescribeEndpointsRequestDescribeEndpointsPaginateTypeDef(BaseModel): + Mode: Optional[DescribeEndpointsModeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobTemplatesRequestListJobTemplatesPaginateTypeDef(BaseModel): + Category: Optional[str] = None + ListBy: Optional[JobTemplateListByType] = None + Order: Optional[OrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + Order: Optional[OrderType] = None + Queue: Optional[str] = None + Status: Optional[JobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPresetsRequestListPresetsPaginateTypeDef(BaseModel): + Category: Optional[str] = None + ListBy: Optional[PresetListByType] = None + Order: Optional[OrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueuesRequestListQueuesPaginateTypeDef(BaseModel): + ListBy: Optional[QueueListByType] = None + Order: Optional[OrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchJobsRequestSearchJobsPaginateTypeDef(BaseModel): + InputFile: Optional[str] = None + Order: Optional[OrderType] = None + Queue: Optional[str] = None + Status: Optional[JobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEndpointsResponseTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DolbyVisionTypeDef(BaseModel): + L6Metadata: Optional[DolbyVisionLevel6MetadataTypeDef] = None + L6Mode: Optional[DolbyVisionLevel6ModeType] = None + Mapping: Optional[DolbyVisionMappingType] = None + Profile: Optional[DolbyVisionProfileType] = None + +class EsamSettingsTypeDef(BaseModel): + ManifestConfirmConditionNotification: Optional[ EsamManifestConfirmConditionNotificationTypeDef ] = None + ResponseSignalPreroll: Optional[int] = None + SignalProcessingNotification: Optional[EsamSignalProcessingNotificationTypeDef] = None + +class GetPolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutPolicyRequestRequestTypeDef(BaseModel): + Policy: PolicyTypeDef + +class PutPolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class H264SettingsTypeDef(BaseModel): + AdaptiveQuantization: Optional[H264AdaptiveQuantizationType] = None + BandwidthReductionFilter: Optional[BandwidthReductionFilterTypeDef] = None + Bitrate: Optional[int] = None + CodecLevel: Optional[H264CodecLevelType] = None + CodecProfile: Optional[H264CodecProfileType] = None + DynamicSubGop: Optional[H264DynamicSubGopType] = None + EndOfStreamMarkers: Optional[H264EndOfStreamMarkersType] = None + EntropyEncoding: Optional[H264EntropyEncodingType] = None + FieldEncoding: Optional[H264FieldEncodingType] = None + FlickerAdaptiveQuantization: Optional[H264FlickerAdaptiveQuantizationType] = None + FramerateControl: Optional[H264FramerateControlType] = None + FramerateConversionAlgorithm: Optional[H264FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopBReference: Optional[H264GopBReferenceType] = None + GopClosedCadence: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[H264GopSizeUnitsType] = None + HrdBufferFinalFillPercentage: Optional[int] = None + HrdBufferInitialFillPercentage: Optional[int] = None + HrdBufferSize: Optional[int] = None + InterlaceMode: Optional[H264InterlaceModeType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + NumberBFramesBetweenReferenceFrames: Optional[int] = None + NumberReferenceFrames: Optional[int] = None + ParControl: Optional[H264ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + QualityTuningLevel: Optional[H264QualityTuningLevelType] = None + QvbrSettings: Optional[H264QvbrSettingsTypeDef] = None + RateControlMode: Optional[H264RateControlModeType] = None + RepeatPps: Optional[H264RepeatPpsType] = None + ScanTypeConversionMode: Optional[H264ScanTypeConversionModeType] = None + SceneChangeDetect: Optional[H264SceneChangeDetectType] = None + Slices: Optional[int] = None + SlowPal: Optional[H264SlowPalType] = None + Softness: Optional[int] = None + SpatialAdaptiveQuantization: Optional[H264SpatialAdaptiveQuantizationType] = None + Syntax: Optional[H264SyntaxType] = None + Telecine: Optional[H264TelecineType] = None + TemporalAdaptiveQuantization: Optional[H264TemporalAdaptiveQuantizationType] = None + UnregisteredSeiTimecode: Optional[H264UnregisteredSeiTimecodeType] = None + +class H265SettingsTypeDef(BaseModel): + AdaptiveQuantization: Optional[H265AdaptiveQuantizationType] = None + AlternateTransferFunctionSei: Optional[H265AlternateTransferFunctionSeiType] = None + BandwidthReductionFilter: Optional[BandwidthReductionFilterTypeDef] = None + Bitrate: Optional[int] = None + CodecLevel: Optional[H265CodecLevelType] = None + CodecProfile: Optional[H265CodecProfileType] = None + DynamicSubGop: Optional[H265DynamicSubGopType] = None + EndOfStreamMarkers: Optional[H265EndOfStreamMarkersType] = None + FlickerAdaptiveQuantization: Optional[H265FlickerAdaptiveQuantizationType] = None + FramerateControl: Optional[H265FramerateControlType] = None + FramerateConversionAlgorithm: Optional[H265FramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopBReference: Optional[H265GopBReferenceType] = None + GopClosedCadence: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[H265GopSizeUnitsType] = None + HrdBufferFinalFillPercentage: Optional[int] = None + HrdBufferInitialFillPercentage: Optional[int] = None + HrdBufferSize: Optional[int] = None + InterlaceMode: Optional[H265InterlaceModeType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + NumberBFramesBetweenReferenceFrames: Optional[int] = None + NumberReferenceFrames: Optional[int] = None + ParControl: Optional[H265ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + QualityTuningLevel: Optional[H265QualityTuningLevelType] = None + QvbrSettings: Optional[H265QvbrSettingsTypeDef] = None + RateControlMode: Optional[H265RateControlModeType] = None + SampleAdaptiveOffsetFilterMode: Optional[H265SampleAdaptiveOffsetFilterModeType] = None + ScanTypeConversionMode: Optional[H265ScanTypeConversionModeType] = None + SceneChangeDetect: Optional[H265SceneChangeDetectType] = None + Slices: Optional[int] = None + SlowPal: Optional[H265SlowPalType] = None + SpatialAdaptiveQuantization: Optional[H265SpatialAdaptiveQuantizationType] = None + Telecine: Optional[H265TelecineType] = None + TemporalAdaptiveQuantization: Optional[H265TemporalAdaptiveQuantizationType] = None + TemporalIds: Optional[H265TemporalIdsType] = None + Tiles: Optional[H265TilesType] = None + UnregisteredSeiTimecode: Optional[H265UnregisteredSeiTimecodeType] = None + WriteMp4PackagingType: Optional[H265WriteMp4PackagingTypeType] = None + +class OutputSettingsTypeDef(BaseModel): + HlsSettings: Optional[HlsSettingsTypeDef] = None + +class TimedMetadataInsertionExtraOutputTypeDef(BaseModel): + Id3Insertions: Optional[List[Id3InsertionTypeDef]] = None + +class TimedMetadataInsertionOutputTypeDef(BaseModel): + Id3Insertions: Optional[List[Id3InsertionTypeDef]] = None + +class TimedMetadataInsertionTypeDef(BaseModel): + Id3Insertions: Optional[Sequence[Id3InsertionTypeDef]] = None + +class ImageInserterExtraOutputTypeDef(BaseModel): + InsertableImages: Optional[List[InsertableImageTypeDef]] = None + SdrReferenceWhiteLevel: Optional[int] = None + +class ImageInserterOutputTypeDef(BaseModel): + InsertableImages: Optional[List[InsertableImageTypeDef]] = None + SdrReferenceWhiteLevel: Optional[int] = None + +class ImageInserterTypeDef(BaseModel): + InsertableImages: Optional[Sequence[InsertableImageTypeDef]] = None + SdrReferenceWhiteLevel: Optional[int] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceTags: ResourceTagsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class M2tsSettingsExtraOutputTypeDef(BaseModel): + AudioBufferModel: Optional[M2tsAudioBufferModelType] = None + AudioDuration: Optional[M2tsAudioDurationType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[List[int]] = None + Bitrate: Optional[int] = None + BufferModel: Optional[M2tsBufferModelType] = None + DataPTSControl: Optional[M2tsDataPtsControlType] = None + DvbNitSettings: Optional[DvbNitSettingsTypeDef] = None + DvbSdtSettings: Optional[DvbSdtSettingsTypeDef] = None + DvbSubPids: Optional[List[int]] = None + DvbTdtSettings: Optional[DvbTdtSettingsTypeDef] = None + DvbTeletextPid: Optional[int] = None + EbpAudioInterval: Optional[M2tsEbpAudioIntervalType] = None + EbpPlacement: Optional[M2tsEbpPlacementType] = None + EsRateInPes: Optional[M2tsEsRateInPesType] = None + ForceTsVideoEbpOrder: Optional[M2tsForceTsVideoEbpOrderType] = None + FragmentTime: Optional[float] = None + KlvMetadata: Optional[M2tsKlvMetadataType] = None + MaxPcrInterval: Optional[int] = None + MinEbpInterval: Optional[int] = None + NielsenId3: Optional[M2tsNielsenId3Type] = None + NullPacketBitrate: Optional[float] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M2tsPcrControlType] = None + PcrPid: Optional[int] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[int] = None + PreventBufferUnderflow: Optional[M2tsPreventBufferUnderflowType] = None + PrivateMetadataPid: Optional[int] = None + ProgramNumber: Optional[int] = None + PtsOffset: Optional[int] = None + PtsOffsetMode: Optional[TsPtsOffsetType] = None + RateMode: Optional[M2tsRateModeType] = None + Scte35Esam: Optional[M2tsScte35EsamTypeDef] = None + Scte35Pid: Optional[int] = None + Scte35Source: Optional[M2tsScte35SourceType] = None + SegmentationMarkers: Optional[M2tsSegmentationMarkersType] = None + SegmentationStyle: Optional[M2tsSegmentationStyleType] = None + SegmentationTime: Optional[float] = None + TimedMetadataPid: Optional[int] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[int] = None + +class M2tsSettingsOutputTypeDef(BaseModel): + AudioBufferModel: Optional[M2tsAudioBufferModelType] = None + AudioDuration: Optional[M2tsAudioDurationType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[List[int]] = None + Bitrate: Optional[int] = None + BufferModel: Optional[M2tsBufferModelType] = None + DataPTSControl: Optional[M2tsDataPtsControlType] = None + DvbNitSettings: Optional[DvbNitSettingsTypeDef] = None + DvbSdtSettings: Optional[DvbSdtSettingsTypeDef] = None + DvbSubPids: Optional[List[int]] = None + DvbTdtSettings: Optional[DvbTdtSettingsTypeDef] = None + DvbTeletextPid: Optional[int] = None + EbpAudioInterval: Optional[M2tsEbpAudioIntervalType] = None + EbpPlacement: Optional[M2tsEbpPlacementType] = None + EsRateInPes: Optional[M2tsEsRateInPesType] = None + ForceTsVideoEbpOrder: Optional[M2tsForceTsVideoEbpOrderType] = None + FragmentTime: Optional[float] = None + KlvMetadata: Optional[M2tsKlvMetadataType] = None + MaxPcrInterval: Optional[int] = None + MinEbpInterval: Optional[int] = None + NielsenId3: Optional[M2tsNielsenId3Type] = None + NullPacketBitrate: Optional[float] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M2tsPcrControlType] = None + PcrPid: Optional[int] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[int] = None + PreventBufferUnderflow: Optional[M2tsPreventBufferUnderflowType] = None + PrivateMetadataPid: Optional[int] = None + ProgramNumber: Optional[int] = None + PtsOffset: Optional[int] = None + PtsOffsetMode: Optional[TsPtsOffsetType] = None + RateMode: Optional[M2tsRateModeType] = None + Scte35Esam: Optional[M2tsScte35EsamTypeDef] = None + Scte35Pid: Optional[int] = None + Scte35Source: Optional[M2tsScte35SourceType] = None + SegmentationMarkers: Optional[M2tsSegmentationMarkersType] = None + SegmentationStyle: Optional[M2tsSegmentationStyleType] = None + SegmentationTime: Optional[float] = None + TimedMetadataPid: Optional[int] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[int] = None + +class M2tsSettingsTypeDef(BaseModel): + AudioBufferModel: Optional[M2tsAudioBufferModelType] = None + AudioDuration: Optional[M2tsAudioDurationType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[Sequence[int]] = None + Bitrate: Optional[int] = None + BufferModel: Optional[M2tsBufferModelType] = None + DataPTSControl: Optional[M2tsDataPtsControlType] = None + DvbNitSettings: Optional[DvbNitSettingsTypeDef] = None + DvbSdtSettings: Optional[DvbSdtSettingsTypeDef] = None + DvbSubPids: Optional[Sequence[int]] = None + DvbTdtSettings: Optional[DvbTdtSettingsTypeDef] = None + DvbTeletextPid: Optional[int] = None + EbpAudioInterval: Optional[M2tsEbpAudioIntervalType] = None + EbpPlacement: Optional[M2tsEbpPlacementType] = None + EsRateInPes: Optional[M2tsEsRateInPesType] = None + ForceTsVideoEbpOrder: Optional[M2tsForceTsVideoEbpOrderType] = None + FragmentTime: Optional[float] = None + KlvMetadata: Optional[M2tsKlvMetadataType] = None + MaxPcrInterval: Optional[int] = None + MinEbpInterval: Optional[int] = None + NielsenId3: Optional[M2tsNielsenId3Type] = None + NullPacketBitrate: Optional[float] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M2tsPcrControlType] = None + PcrPid: Optional[int] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[int] = None + PreventBufferUnderflow: Optional[M2tsPreventBufferUnderflowType] = None + PrivateMetadataPid: Optional[int] = None + ProgramNumber: Optional[int] = None + PtsOffset: Optional[int] = None + PtsOffsetMode: Optional[TsPtsOffsetType] = None + RateMode: Optional[M2tsRateModeType] = None + Scte35Esam: Optional[M2tsScte35EsamTypeDef] = None + Scte35Pid: Optional[int] = None + Scte35Source: Optional[M2tsScte35SourceType] = None + SegmentationMarkers: Optional[M2tsSegmentationMarkersType] = None + SegmentationStyle: Optional[M2tsSegmentationStyleType] = None + SegmentationTime: Optional[float] = None + TimedMetadataPid: Optional[int] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[int] = None + +class MotionImageInserterTypeDef(BaseModel): + Framerate: Optional[MotionImageInsertionFramerateTypeDef] = None + Input: Optional[str] = None + InsertionMode: Optional[MotionImageInsertionModeType] = None + Offset: Optional[MotionImageInsertionOffsetTypeDef] = None + Playback: Optional[MotionImagePlaybackType] = None + StartTime: Optional[str] = None + +class MxfSettingsTypeDef(BaseModel): + AfdSignaling: Optional[MxfAfdSignalingType] = None + Profile: Optional[MxfProfileType] = None + XavcProfileSettings: Optional[MxfXavcProfileSettingsTypeDef] = None + +class PartnerWatermarkingTypeDef(BaseModel): + NexguardFileMarkerSettings: Optional[NexGuardFileMarkerSettingsTypeDef] = None + +class NoiseReducerTypeDef(BaseModel): + Filter: Optional[NoiseReducerFilterType] = None + FilterSettings: Optional[NoiseReducerFilterSettingsTypeDef] = None + SpatialFilterSettings: Optional[NoiseReducerSpatialFilterSettingsTypeDef] = None + TemporalFilterSettings: Optional[NoiseReducerTemporalFilterSettingsTypeDef] = None + +class OutputDetailTypeDef(BaseModel): + DurationInMs: Optional[int] = None + VideoDetails: Optional[VideoDetailTypeDef] = None + +class QueueTypeDef(BaseModel): + Name: str + Arn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Description: Optional[str] = None + LastUpdated: Optional[datetime] = None + PricingPlan: Optional[PricingPlanType] = None + ProgressingJobsCount: Optional[int] = None + ReservationPlan: Optional[ReservationPlanTypeDef] = None + Status: Optional[QueueStatusType] = None + SubmittedJobsCount: Optional[int] = None + Type: Optional[TypeType] = None + +class S3DestinationSettingsTypeDef(BaseModel): + AccessControl: Optional[S3DestinationAccessControlTypeDef] = None + Encryption: Optional[S3EncryptionSettingsTypeDef] = None + StorageClass: Optional[S3StorageClassType] = None + +class VideoOverlayInputExtraOutputTypeDef(BaseModel): + FileInput: Optional[str] = None + InputClippings: Optional[List[VideoOverlayInputClippingTypeDef]] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + +class VideoOverlayInputOutputTypeDef(BaseModel): + FileInput: Optional[str] = None + InputClippings: Optional[List[VideoOverlayInputClippingTypeDef]] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + +class VideoOverlayInputTypeDef(BaseModel): + FileInput: Optional[str] = None + InputClippings: Optional[Sequence[VideoOverlayInputClippingTypeDef]] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + +class XavcSettingsTypeDef(BaseModel): + AdaptiveQuantization: Optional[XavcAdaptiveQuantizationType] = None + EntropyEncoding: Optional[XavcEntropyEncodingType] = None + FramerateControl: Optional[XavcFramerateControlType] = None + FramerateConversionAlgorithm: Optional[XavcFramerateConversionAlgorithmType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + Profile: Optional[XavcProfileType] = None + SlowPal: Optional[XavcSlowPalType] = None + Softness: Optional[int] = None + SpatialAdaptiveQuantization: Optional[XavcSpatialAdaptiveQuantizationType] = None + TemporalAdaptiveQuantization: Optional[XavcTemporalAdaptiveQuantizationType] = None + Xavc4kIntraCbgProfileSettings: Optional[Xavc4kIntraCbgProfileSettingsTypeDef] = None + Xavc4kIntraVbrProfileSettings: Optional[Xavc4kIntraVbrProfileSettingsTypeDef] = None + Xavc4kProfileSettings: Optional[Xavc4kProfileSettingsTypeDef] = None + XavcHdIntraCbgProfileSettings: Optional[XavcHdIntraCbgProfileSettingsTypeDef] = None + XavcHdProfileSettings: Optional[XavcHdProfileSettingsTypeDef] = None + +class AutomatedAbrSettingsExtraOutputTypeDef(BaseModel): + MaxAbrBitrate: Optional[int] = None + MaxRenditions: Optional[int] = None + MinAbrBitrate: Optional[int] = None + Rules: Optional[List[AutomatedAbrRuleExtraOutputTypeDef]] = None + +class AutomatedAbrSettingsOutputTypeDef(BaseModel): + MaxAbrBitrate: Optional[int] = None + MaxRenditions: Optional[int] = None + MinAbrBitrate: Optional[int] = None + Rules: Optional[List[AutomatedAbrRuleOutputTypeDef]] = None + +class AutomatedAbrSettingsTypeDef(BaseModel): + MaxAbrBitrate: Optional[int] = None + MaxRenditions: Optional[int] = None + MinAbrBitrate: Optional[int] = None + Rules: Optional[Sequence[AutomatedAbrRuleTypeDef]] = None + +class CaptionDescriptionPresetExtraOutputTypeDef(BaseModel): + CustomLanguageCode: Optional[str] = None + DestinationSettings: Optional[CaptionDestinationSettingsExtraOutputTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageDescription: Optional[str] = None + +class CaptionDescriptionPresetOutputTypeDef(BaseModel): + CustomLanguageCode: Optional[str] = None + DestinationSettings: Optional[CaptionDestinationSettingsOutputTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageDescription: Optional[str] = None + +class CaptionDescriptionPresetTypeDef(BaseModel): + CustomLanguageCode: Optional[str] = None + DestinationSettings: Optional[CaptionDestinationSettingsTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageDescription: Optional[str] = None + +class CaptionDescriptionTypeDef(BaseModel): + CaptionSelectorName: Optional[str] = None + CustomLanguageCode: Optional[str] = None + DestinationSettings: Optional[CaptionDestinationSettingsTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageDescription: Optional[str] = None + +class CaptionSourceSettingsTypeDef(BaseModel): + AncillarySourceSettings: Optional[AncillarySourceSettingsTypeDef] = None + DvbSubSourceSettings: Optional[DvbSubSourceSettingsTypeDef] = None + EmbeddedSourceSettings: Optional[EmbeddedSourceSettingsTypeDef] = None + FileSourceSettings: Optional[FileSourceSettingsTypeDef] = None + SourceType: Optional[CaptionSourceTypeType] = None + TeletextSourceSettings: Optional[TeletextSourceSettingsTypeDef] = None + TrackSourceSettings: Optional[TrackSourceSettingsTypeDef] = None + WebvttHlsSourceSettings: Optional[WebvttHlsSourceSettingsTypeDef] = None + +class RemixSettingsExtraOutputTypeDef(BaseModel): + AudioDescriptionAudioChannel: Optional[int] = None + AudioDescriptionDataChannel: Optional[int] = None + ChannelMapping: Optional[ChannelMappingExtraOutputTypeDef] = None + ChannelsIn: Optional[int] = None + ChannelsOut: Optional[int] = None + +class RemixSettingsOutputTypeDef(BaseModel): + AudioDescriptionAudioChannel: Optional[int] = None + AudioDescriptionDataChannel: Optional[int] = None + ChannelMapping: Optional[ChannelMappingOutputTypeDef] = None + ChannelsIn: Optional[int] = None + ChannelsOut: Optional[int] = None + +class RemixSettingsTypeDef(BaseModel): + AudioDescriptionAudioChannel: Optional[int] = None + AudioDescriptionDataChannel: Optional[int] = None + ChannelMapping: Optional[ChannelMappingTypeDef] = None + ChannelsIn: Optional[int] = None + ChannelsOut: Optional[int] = None + +class ContainerSettingsExtraOutputTypeDef(BaseModel): + CmfcSettings: Optional[CmfcSettingsTypeDef] = None + Container: Optional[ContainerTypeType] = None + F4vSettings: Optional[F4vSettingsTypeDef] = None + M2tsSettings: Optional[M2tsSettingsExtraOutputTypeDef] = None + M3u8Settings: Optional[M3u8SettingsExtraOutputTypeDef] = None + MovSettings: Optional[MovSettingsTypeDef] = None + Mp4Settings: Optional[Mp4SettingsTypeDef] = None + MpdSettings: Optional[MpdSettingsTypeDef] = None + MxfSettings: Optional[MxfSettingsTypeDef] = None + +class ContainerSettingsOutputTypeDef(BaseModel): + CmfcSettings: Optional[CmfcSettingsTypeDef] = None + Container: Optional[ContainerTypeType] = None + F4vSettings: Optional[F4vSettingsTypeDef] = None + M2tsSettings: Optional[M2tsSettingsOutputTypeDef] = None + M3u8Settings: Optional[M3u8SettingsOutputTypeDef] = None + MovSettings: Optional[MovSettingsTypeDef] = None + Mp4Settings: Optional[Mp4SettingsTypeDef] = None + MpdSettings: Optional[MpdSettingsTypeDef] = None + MxfSettings: Optional[MxfSettingsTypeDef] = None + +class ContainerSettingsTypeDef(BaseModel): + CmfcSettings: Optional[CmfcSettingsTypeDef] = None + Container: Optional[ContainerTypeType] = None + F4vSettings: Optional[F4vSettingsTypeDef] = None + M2tsSettings: Optional[M2tsSettingsTypeDef] = None + M3u8Settings: Optional[M3u8SettingsTypeDef] = None + MovSettings: Optional[MovSettingsTypeDef] = None + Mp4Settings: Optional[Mp4SettingsTypeDef] = None + MpdSettings: Optional[MpdSettingsTypeDef] = None + MxfSettings: Optional[MxfSettingsTypeDef] = None + +class VideoPreprocessorExtraOutputTypeDef(BaseModel): + ColorCorrector: Optional[ColorCorrectorTypeDef] = None + Deinterlacer: Optional[DeinterlacerTypeDef] = None + DolbyVision: Optional[DolbyVisionTypeDef] = None + Hdr10Plus: Optional[Hdr10PlusTypeDef] = None + ImageInserter: Optional[ImageInserterExtraOutputTypeDef] = None + NoiseReducer: Optional[NoiseReducerTypeDef] = None + PartnerWatermarking: Optional[PartnerWatermarkingTypeDef] = None + TimecodeBurnin: Optional[TimecodeBurninTypeDef] = None + +class VideoPreprocessorOutputTypeDef(BaseModel): + ColorCorrector: Optional[ColorCorrectorTypeDef] = None + Deinterlacer: Optional[DeinterlacerTypeDef] = None + DolbyVision: Optional[DolbyVisionTypeDef] = None + Hdr10Plus: Optional[Hdr10PlusTypeDef] = None + ImageInserter: Optional[ImageInserterOutputTypeDef] = None + NoiseReducer: Optional[NoiseReducerTypeDef] = None + PartnerWatermarking: Optional[PartnerWatermarkingTypeDef] = None + TimecodeBurnin: Optional[TimecodeBurninTypeDef] = None + +class VideoPreprocessorTypeDef(BaseModel): + ColorCorrector: Optional[ColorCorrectorTypeDef] = None + Deinterlacer: Optional[DeinterlacerTypeDef] = None + DolbyVision: Optional[DolbyVisionTypeDef] = None + Hdr10Plus: Optional[Hdr10PlusTypeDef] = None + ImageInserter: Optional[ImageInserterTypeDef] = None + NoiseReducer: Optional[NoiseReducerTypeDef] = None + PartnerWatermarking: Optional[PartnerWatermarkingTypeDef] = None + TimecodeBurnin: Optional[TimecodeBurninTypeDef] = None + +class OutputGroupDetailTypeDef(BaseModel): + OutputDetails: Optional[List[OutputDetailTypeDef]] = None + +class CreateQueueResponseTypeDef(BaseModel): + Queue: QueueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueueResponseTypeDef(BaseModel): + Queue: QueueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueuesResponseTypeDef(BaseModel): + Queues: List[QueueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateQueueResponseTypeDef(BaseModel): + Queue: QueueTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationSettingsTypeDef(BaseModel): + S3Settings: Optional[S3DestinationSettingsTypeDef] = None + +class VideoOverlayExtraOutputTypeDef(BaseModel): + EndTimecode: Optional[str] = None + Input: Optional[VideoOverlayInputExtraOutputTypeDef] = None + StartTimecode: Optional[str] = None + +class VideoOverlayOutputTypeDef(BaseModel): + EndTimecode: Optional[str] = None + Input: Optional[VideoOverlayInputOutputTypeDef] = None + StartTimecode: Optional[str] = None + +class VideoOverlayTypeDef(BaseModel): + EndTimecode: Optional[str] = None + Input: Optional[VideoOverlayInputTypeDef] = None + StartTimecode: Optional[str] = None + +class VideoCodecSettingsTypeDef(BaseModel): + Av1Settings: Optional[Av1SettingsTypeDef] = None + AvcIntraSettings: Optional[AvcIntraSettingsTypeDef] = None + Codec: Optional[VideoCodecType] = None + FrameCaptureSettings: Optional[FrameCaptureSettingsTypeDef] = None + H264Settings: Optional[H264SettingsTypeDef] = None + H265Settings: Optional[H265SettingsTypeDef] = None + Mpeg2Settings: Optional[Mpeg2SettingsTypeDef] = None + ProresSettings: Optional[ProresSettingsTypeDef] = None + UncompressedSettings: Optional[UncompressedSettingsTypeDef] = None + Vc3Settings: Optional[Vc3SettingsTypeDef] = None + Vp8Settings: Optional[Vp8SettingsTypeDef] = None + Vp9Settings: Optional[Vp9SettingsTypeDef] = None + XavcSettings: Optional[XavcSettingsTypeDef] = None + +class AutomatedEncodingSettingsExtraOutputTypeDef(BaseModel): + AbrSettings: Optional[AutomatedAbrSettingsExtraOutputTypeDef] = None + +class AutomatedEncodingSettingsOutputTypeDef(BaseModel): + AbrSettings: Optional[AutomatedAbrSettingsOutputTypeDef] = None + +class AutomatedEncodingSettingsTypeDef(BaseModel): + AbrSettings: Optional[AutomatedAbrSettingsTypeDef] = None + +class CaptionSelectorTypeDef(BaseModel): + CustomLanguageCode: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + SourceSettings: Optional[CaptionSourceSettingsTypeDef] = None + +class AudioDescriptionExtraOutputTypeDef(BaseModel): + AudioChannelTaggingSettings: Optional[AudioChannelTaggingSettingsExtraOutputTypeDef] = None + AudioNormalizationSettings: Optional[AudioNormalizationSettingsTypeDef] = None + AudioSourceName: Optional[str] = None + AudioType: Optional[int] = None + AudioTypeControl: Optional[AudioTypeControlType] = None + CodecSettings: Optional[AudioCodecSettingsTypeDef] = None + CustomLanguageCode: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageCodeControl: Optional[AudioLanguageCodeControlType] = None + RemixSettings: Optional[RemixSettingsExtraOutputTypeDef] = None + StreamName: Optional[str] = None + +class AudioSelectorExtraOutputTypeDef(BaseModel): + AudioDurationCorrection: Optional[AudioDurationCorrectionType] = None + CustomLanguageCode: Optional[str] = None + DefaultSelection: Optional[AudioDefaultSelectionType] = None + ExternalAudioFileInput: Optional[str] = None + HlsRenditionGroupSettings: Optional[HlsRenditionGroupSettingsTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + Offset: Optional[int] = None + Pids: Optional[List[int]] = None + ProgramSelection: Optional[int] = None + RemixSettings: Optional[RemixSettingsExtraOutputTypeDef] = None + SelectorType: Optional[AudioSelectorTypeType] = None + Tracks: Optional[List[int]] = None + +class AudioDescriptionOutputTypeDef(BaseModel): + AudioChannelTaggingSettings: Optional[AudioChannelTaggingSettingsOutputTypeDef] = None + AudioNormalizationSettings: Optional[AudioNormalizationSettingsTypeDef] = None + AudioSourceName: Optional[str] = None + AudioType: Optional[int] = None + AudioTypeControl: Optional[AudioTypeControlType] = None + CodecSettings: Optional[AudioCodecSettingsTypeDef] = None + CustomLanguageCode: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageCodeControl: Optional[AudioLanguageCodeControlType] = None + RemixSettings: Optional[RemixSettingsOutputTypeDef] = None + StreamName: Optional[str] = None + +class AudioSelectorOutputTypeDef(BaseModel): + AudioDurationCorrection: Optional[AudioDurationCorrectionType] = None + CustomLanguageCode: Optional[str] = None + DefaultSelection: Optional[AudioDefaultSelectionType] = None + ExternalAudioFileInput: Optional[str] = None + HlsRenditionGroupSettings: Optional[HlsRenditionGroupSettingsTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + Offset: Optional[int] = None + Pids: Optional[List[int]] = None + ProgramSelection: Optional[int] = None + RemixSettings: Optional[RemixSettingsOutputTypeDef] = None + SelectorType: Optional[AudioSelectorTypeType] = None + Tracks: Optional[List[int]] = None + +class AudioDescriptionTypeDef(BaseModel): + AudioChannelTaggingSettings: Optional[AudioChannelTaggingSettingsTypeDef] = None + AudioNormalizationSettings: Optional[AudioNormalizationSettingsTypeDef] = None + AudioSourceName: Optional[str] = None + AudioType: Optional[int] = None + AudioTypeControl: Optional[AudioTypeControlType] = None + CodecSettings: Optional[AudioCodecSettingsTypeDef] = None + CustomLanguageCode: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageCodeControl: Optional[AudioLanguageCodeControlType] = None + RemixSettings: Optional[RemixSettingsTypeDef] = None + StreamName: Optional[str] = None + +class AudioSelectorTypeDef(BaseModel): + AudioDurationCorrection: Optional[AudioDurationCorrectionType] = None + CustomLanguageCode: Optional[str] = None + DefaultSelection: Optional[AudioDefaultSelectionType] = None + ExternalAudioFileInput: Optional[str] = None + HlsRenditionGroupSettings: Optional[HlsRenditionGroupSettingsTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + Offset: Optional[int] = None + Pids: Optional[Sequence[int]] = None + ProgramSelection: Optional[int] = None + RemixSettings: Optional[RemixSettingsTypeDef] = None + SelectorType: Optional[AudioSelectorTypeType] = None + Tracks: Optional[Sequence[int]] = None + +class CmafGroupSettingsExtraOutputTypeDef(BaseModel): + AdditionalManifests: Optional[List[CmafAdditionalManifestExtraOutputTypeDef]] = None + BaseUrl: Optional[str] = None + ClientCache: Optional[CmafClientCacheType] = None + CodecSpecification: Optional[CmafCodecSpecificationType] = None + DashIFrameTrickPlayNameModifier: Optional[str] = None + DashManifestStyle: Optional[DashManifestStyleType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[CmafEncryptionSettingsExtraOutputTypeDef] = None + FragmentLength: Optional[int] = None + ImageBasedTrickPlay: Optional[CmafImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[CmafImageBasedTrickPlaySettingsTypeDef] = None + ManifestCompression: Optional[CmafManifestCompressionType] = None + ManifestDurationFormat: Optional[CmafManifestDurationFormatType] = None + MinBufferTime: Optional[int] = None + MinFinalSegmentLength: Optional[float] = None + MpdManifestBandwidthType: Optional[CmafMpdManifestBandwidthTypeType] = None + MpdProfile: Optional[CmafMpdProfileType] = None + PtsOffsetHandlingForBFrames: Optional[CmafPtsOffsetHandlingForBFramesType] = None + SegmentControl: Optional[CmafSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[CmafSegmentLengthControlType] = None + StreamInfResolution: Optional[CmafStreamInfResolutionType] = None + TargetDurationCompatibilityMode: Optional[CmafTargetDurationCompatibilityModeType] = None + VideoCompositionOffsets: Optional[CmafVideoCompositionOffsetsType] = None + WriteDashManifest: Optional[CmafWriteDASHManifestType] = None + WriteHlsManifest: Optional[CmafWriteHLSManifestType] = None + WriteSegmentTimelineInRepresentation: Optional[ CmafWriteSegmentTimelineInRepresentationType ] = None + +class CmafGroupSettingsOutputTypeDef(BaseModel): + AdditionalManifests: Optional[List[CmafAdditionalManifestOutputTypeDef]] = None + BaseUrl: Optional[str] = None + ClientCache: Optional[CmafClientCacheType] = None + CodecSpecification: Optional[CmafCodecSpecificationType] = None + DashIFrameTrickPlayNameModifier: Optional[str] = None + DashManifestStyle: Optional[DashManifestStyleType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[CmafEncryptionSettingsOutputTypeDef] = None + FragmentLength: Optional[int] = None + ImageBasedTrickPlay: Optional[CmafImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[CmafImageBasedTrickPlaySettingsTypeDef] = None + ManifestCompression: Optional[CmafManifestCompressionType] = None + ManifestDurationFormat: Optional[CmafManifestDurationFormatType] = None + MinBufferTime: Optional[int] = None + MinFinalSegmentLength: Optional[float] = None + MpdManifestBandwidthType: Optional[CmafMpdManifestBandwidthTypeType] = None + MpdProfile: Optional[CmafMpdProfileType] = None + PtsOffsetHandlingForBFrames: Optional[CmafPtsOffsetHandlingForBFramesType] = None + SegmentControl: Optional[CmafSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[CmafSegmentLengthControlType] = None + StreamInfResolution: Optional[CmafStreamInfResolutionType] = None + TargetDurationCompatibilityMode: Optional[CmafTargetDurationCompatibilityModeType] = None + VideoCompositionOffsets: Optional[CmafVideoCompositionOffsetsType] = None + WriteDashManifest: Optional[CmafWriteDASHManifestType] = None + WriteHlsManifest: Optional[CmafWriteHLSManifestType] = None + WriteSegmentTimelineInRepresentation: Optional[ CmafWriteSegmentTimelineInRepresentationType ] = None + +class CmafGroupSettingsTypeDef(BaseModel): + AdditionalManifests: Optional[Sequence[CmafAdditionalManifestTypeDef]] = None + BaseUrl: Optional[str] = None + ClientCache: Optional[CmafClientCacheType] = None + CodecSpecification: Optional[CmafCodecSpecificationType] = None + DashIFrameTrickPlayNameModifier: Optional[str] = None + DashManifestStyle: Optional[DashManifestStyleType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[CmafEncryptionSettingsTypeDef] = None + FragmentLength: Optional[int] = None + ImageBasedTrickPlay: Optional[CmafImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[CmafImageBasedTrickPlaySettingsTypeDef] = None + ManifestCompression: Optional[CmafManifestCompressionType] = None + ManifestDurationFormat: Optional[CmafManifestDurationFormatType] = None + MinBufferTime: Optional[int] = None + MinFinalSegmentLength: Optional[float] = None + MpdManifestBandwidthType: Optional[CmafMpdManifestBandwidthTypeType] = None + MpdProfile: Optional[CmafMpdProfileType] = None + PtsOffsetHandlingForBFrames: Optional[CmafPtsOffsetHandlingForBFramesType] = None + SegmentControl: Optional[CmafSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[CmafSegmentLengthControlType] = None + StreamInfResolution: Optional[CmafStreamInfResolutionType] = None + TargetDurationCompatibilityMode: Optional[CmafTargetDurationCompatibilityModeType] = None + VideoCompositionOffsets: Optional[CmafVideoCompositionOffsetsType] = None + WriteDashManifest: Optional[CmafWriteDASHManifestType] = None + WriteHlsManifest: Optional[CmafWriteHLSManifestType] = None + WriteSegmentTimelineInRepresentation: Optional[ CmafWriteSegmentTimelineInRepresentationType ] = None + +class DashIsoGroupSettingsExtraOutputTypeDef(BaseModel): + AdditionalManifests: Optional[List[DashAdditionalManifestExtraOutputTypeDef]] = None + AudioChannelConfigSchemeIdUri: Optional[DashIsoGroupAudioChannelConfigSchemeIdUriType] = None + BaseUrl: Optional[str] = None + DashIFrameTrickPlayNameModifier: Optional[str] = None + DashManifestStyle: Optional[DashManifestStyleType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[DashIsoEncryptionSettingsExtraOutputTypeDef] = None + FragmentLength: Optional[int] = None + HbbtvCompliance: Optional[DashIsoHbbtvComplianceType] = None + ImageBasedTrickPlay: Optional[DashIsoImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[DashIsoImageBasedTrickPlaySettingsTypeDef] = None + MinBufferTime: Optional[int] = None + MinFinalSegmentLength: Optional[float] = None + MpdManifestBandwidthType: Optional[DashIsoMpdManifestBandwidthTypeType] = None + MpdProfile: Optional[DashIsoMpdProfileType] = None + PtsOffsetHandlingForBFrames: Optional[DashIsoPtsOffsetHandlingForBFramesType] = None + SegmentControl: Optional[DashIsoSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[DashIsoSegmentLengthControlType] = None + VideoCompositionOffsets: Optional[DashIsoVideoCompositionOffsetsType] = None + WriteSegmentTimelineInRepresentation: Optional[ DashIsoWriteSegmentTimelineInRepresentationType ] = None + +class DashIsoGroupSettingsOutputTypeDef(BaseModel): + AdditionalManifests: Optional[List[DashAdditionalManifestOutputTypeDef]] = None + AudioChannelConfigSchemeIdUri: Optional[DashIsoGroupAudioChannelConfigSchemeIdUriType] = None + BaseUrl: Optional[str] = None + DashIFrameTrickPlayNameModifier: Optional[str] = None + DashManifestStyle: Optional[DashManifestStyleType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[DashIsoEncryptionSettingsOutputTypeDef] = None + FragmentLength: Optional[int] = None + HbbtvCompliance: Optional[DashIsoHbbtvComplianceType] = None + ImageBasedTrickPlay: Optional[DashIsoImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[DashIsoImageBasedTrickPlaySettingsTypeDef] = None + MinBufferTime: Optional[int] = None + MinFinalSegmentLength: Optional[float] = None + MpdManifestBandwidthType: Optional[DashIsoMpdManifestBandwidthTypeType] = None + MpdProfile: Optional[DashIsoMpdProfileType] = None + PtsOffsetHandlingForBFrames: Optional[DashIsoPtsOffsetHandlingForBFramesType] = None + SegmentControl: Optional[DashIsoSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[DashIsoSegmentLengthControlType] = None + VideoCompositionOffsets: Optional[DashIsoVideoCompositionOffsetsType] = None + WriteSegmentTimelineInRepresentation: Optional[ DashIsoWriteSegmentTimelineInRepresentationType ] = None + +class DashIsoGroupSettingsTypeDef(BaseModel): + AdditionalManifests: Optional[Sequence[DashAdditionalManifestTypeDef]] = None + AudioChannelConfigSchemeIdUri: Optional[DashIsoGroupAudioChannelConfigSchemeIdUriType] = None + BaseUrl: Optional[str] = None + DashIFrameTrickPlayNameModifier: Optional[str] = None + DashManifestStyle: Optional[DashManifestStyleType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[DashIsoEncryptionSettingsTypeDef] = None + FragmentLength: Optional[int] = None + HbbtvCompliance: Optional[DashIsoHbbtvComplianceType] = None + ImageBasedTrickPlay: Optional[DashIsoImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[DashIsoImageBasedTrickPlaySettingsTypeDef] = None + MinBufferTime: Optional[int] = None + MinFinalSegmentLength: Optional[float] = None + MpdManifestBandwidthType: Optional[DashIsoMpdManifestBandwidthTypeType] = None + MpdProfile: Optional[DashIsoMpdProfileType] = None + PtsOffsetHandlingForBFrames: Optional[DashIsoPtsOffsetHandlingForBFramesType] = None + SegmentControl: Optional[DashIsoSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[DashIsoSegmentLengthControlType] = None + VideoCompositionOffsets: Optional[DashIsoVideoCompositionOffsetsType] = None + WriteSegmentTimelineInRepresentation: Optional[ DashIsoWriteSegmentTimelineInRepresentationType ] = None + +class FileGroupSettingsTypeDef(BaseModel): + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + +class HlsGroupSettingsExtraOutputTypeDef(BaseModel): + AdMarkers: Optional[List[HlsAdMarkersType]] = None + AdditionalManifests: Optional[List[HlsAdditionalManifestExtraOutputTypeDef]] = None + AudioOnlyHeader: Optional[HlsAudioOnlyHeaderType] = None + BaseUrl: Optional[str] = None + CaptionLanguageMappings: Optional[List[HlsCaptionLanguageMappingTypeDef]] = None + CaptionLanguageSetting: Optional[HlsCaptionLanguageSettingType] = None + CaptionSegmentLengthControl: Optional[HlsCaptionSegmentLengthControlType] = None + ClientCache: Optional[HlsClientCacheType] = None + CodecSpecification: Optional[HlsCodecSpecificationType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + DirectoryStructure: Optional[HlsDirectoryStructureType] = None + Encryption: Optional[HlsEncryptionSettingsExtraOutputTypeDef] = None + ImageBasedTrickPlay: Optional[HlsImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[HlsImageBasedTrickPlaySettingsTypeDef] = None + ManifestCompression: Optional[HlsManifestCompressionType] = None + ManifestDurationFormat: Optional[HlsManifestDurationFormatType] = None + MinFinalSegmentLength: Optional[float] = None + MinSegmentLength: Optional[int] = None + OutputSelection: Optional[HlsOutputSelectionType] = None + ProgramDateTime: Optional[HlsProgramDateTimeType] = None + ProgramDateTimePeriod: Optional[int] = None + ProgressiveWriteHlsManifest: Optional[HlsProgressiveWriteHlsManifestType] = None + SegmentControl: Optional[HlsSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[HlsSegmentLengthControlType] = None + SegmentsPerSubdirectory: Optional[int] = None + StreamInfResolution: Optional[HlsStreamInfResolutionType] = None + TargetDurationCompatibilityMode: Optional[HlsTargetDurationCompatibilityModeType] = None + TimedMetadataId3Frame: Optional[HlsTimedMetadataId3FrameType] = None + TimedMetadataId3Period: Optional[int] = None + TimestampDeltaMilliseconds: Optional[int] = None + +class HlsGroupSettingsOutputTypeDef(BaseModel): + AdMarkers: Optional[List[HlsAdMarkersType]] = None + AdditionalManifests: Optional[List[HlsAdditionalManifestOutputTypeDef]] = None + AudioOnlyHeader: Optional[HlsAudioOnlyHeaderType] = None + BaseUrl: Optional[str] = None + CaptionLanguageMappings: Optional[List[HlsCaptionLanguageMappingTypeDef]] = None + CaptionLanguageSetting: Optional[HlsCaptionLanguageSettingType] = None + CaptionSegmentLengthControl: Optional[HlsCaptionSegmentLengthControlType] = None + ClientCache: Optional[HlsClientCacheType] = None + CodecSpecification: Optional[HlsCodecSpecificationType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + DirectoryStructure: Optional[HlsDirectoryStructureType] = None + Encryption: Optional[HlsEncryptionSettingsOutputTypeDef] = None + ImageBasedTrickPlay: Optional[HlsImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[HlsImageBasedTrickPlaySettingsTypeDef] = None + ManifestCompression: Optional[HlsManifestCompressionType] = None + ManifestDurationFormat: Optional[HlsManifestDurationFormatType] = None + MinFinalSegmentLength: Optional[float] = None + MinSegmentLength: Optional[int] = None + OutputSelection: Optional[HlsOutputSelectionType] = None + ProgramDateTime: Optional[HlsProgramDateTimeType] = None + ProgramDateTimePeriod: Optional[int] = None + ProgressiveWriteHlsManifest: Optional[HlsProgressiveWriteHlsManifestType] = None + SegmentControl: Optional[HlsSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[HlsSegmentLengthControlType] = None + SegmentsPerSubdirectory: Optional[int] = None + StreamInfResolution: Optional[HlsStreamInfResolutionType] = None + TargetDurationCompatibilityMode: Optional[HlsTargetDurationCompatibilityModeType] = None + TimedMetadataId3Frame: Optional[HlsTimedMetadataId3FrameType] = None + TimedMetadataId3Period: Optional[int] = None + TimestampDeltaMilliseconds: Optional[int] = None + +class HlsGroupSettingsTypeDef(BaseModel): + AdMarkers: Optional[Sequence[HlsAdMarkersType]] = None + AdditionalManifests: Optional[Sequence[HlsAdditionalManifestTypeDef]] = None + AudioOnlyHeader: Optional[HlsAudioOnlyHeaderType] = None + BaseUrl: Optional[str] = None + CaptionLanguageMappings: Optional[Sequence[HlsCaptionLanguageMappingTypeDef]] = None + CaptionLanguageSetting: Optional[HlsCaptionLanguageSettingType] = None + CaptionSegmentLengthControl: Optional[HlsCaptionSegmentLengthControlType] = None + ClientCache: Optional[HlsClientCacheType] = None + CodecSpecification: Optional[HlsCodecSpecificationType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + DirectoryStructure: Optional[HlsDirectoryStructureType] = None + Encryption: Optional[HlsEncryptionSettingsTypeDef] = None + ImageBasedTrickPlay: Optional[HlsImageBasedTrickPlayType] = None + ImageBasedTrickPlaySettings: Optional[HlsImageBasedTrickPlaySettingsTypeDef] = None + ManifestCompression: Optional[HlsManifestCompressionType] = None + ManifestDurationFormat: Optional[HlsManifestDurationFormatType] = None + MinFinalSegmentLength: Optional[float] = None + MinSegmentLength: Optional[int] = None + OutputSelection: Optional[HlsOutputSelectionType] = None + ProgramDateTime: Optional[HlsProgramDateTimeType] = None + ProgramDateTimePeriod: Optional[int] = None + ProgressiveWriteHlsManifest: Optional[HlsProgressiveWriteHlsManifestType] = None + SegmentControl: Optional[HlsSegmentControlType] = None + SegmentLength: Optional[int] = None + SegmentLengthControl: Optional[HlsSegmentLengthControlType] = None + SegmentsPerSubdirectory: Optional[int] = None + StreamInfResolution: Optional[HlsStreamInfResolutionType] = None + TargetDurationCompatibilityMode: Optional[HlsTargetDurationCompatibilityModeType] = None + TimedMetadataId3Frame: Optional[HlsTimedMetadataId3FrameType] = None + TimedMetadataId3Period: Optional[int] = None + TimestampDeltaMilliseconds: Optional[int] = None + +class MsSmoothGroupSettingsExtraOutputTypeDef(BaseModel): + AdditionalManifests: Optional[List[MsSmoothAdditionalManifestExtraOutputTypeDef]] = None + AudioDeduplication: Optional[MsSmoothAudioDeduplicationType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[MsSmoothEncryptionSettingsExtraOutputTypeDef] = None + FragmentLength: Optional[int] = None + FragmentLengthControl: Optional[MsSmoothFragmentLengthControlType] = None + ManifestEncoding: Optional[MsSmoothManifestEncodingType] = None + +class MsSmoothGroupSettingsOutputTypeDef(BaseModel): + AdditionalManifests: Optional[List[MsSmoothAdditionalManifestOutputTypeDef]] = None + AudioDeduplication: Optional[MsSmoothAudioDeduplicationType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[MsSmoothEncryptionSettingsOutputTypeDef] = None + FragmentLength: Optional[int] = None + FragmentLengthControl: Optional[MsSmoothFragmentLengthControlType] = None + ManifestEncoding: Optional[MsSmoothManifestEncodingType] = None + +class MsSmoothGroupSettingsTypeDef(BaseModel): + AdditionalManifests: Optional[Sequence[MsSmoothAdditionalManifestTypeDef]] = None + AudioDeduplication: Optional[MsSmoothAudioDeduplicationType] = None + Destination: Optional[str] = None + DestinationSettings: Optional[DestinationSettingsTypeDef] = None + Encryption: Optional[MsSmoothEncryptionSettingsTypeDef] = None + FragmentLength: Optional[int] = None + FragmentLengthControl: Optional[MsSmoothFragmentLengthControlType] = None + ManifestEncoding: Optional[MsSmoothManifestEncodingType] = None + +class VideoDescriptionExtraOutputTypeDef(BaseModel): + AfdSignaling: Optional[AfdSignalingType] = None + AntiAlias: Optional[AntiAliasType] = None + CodecSettings: Optional[VideoCodecSettingsTypeDef] = None + ColorMetadata: Optional[ColorMetadataType] = None + Crop: Optional[RectangleTypeDef] = None + DropFrameTimecode: Optional[DropFrameTimecodeType] = None + FixedAfd: Optional[int] = None + Height: Optional[int] = None + Position: Optional[RectangleTypeDef] = None + RespondToAfd: Optional[RespondToAfdType] = None + ScalingBehavior: Optional[ScalingBehaviorType] = None + Sharpness: Optional[int] = None + TimecodeInsertion: Optional[VideoTimecodeInsertionType] = None + VideoPreprocessors: Optional[VideoPreprocessorExtraOutputTypeDef] = None + Width: Optional[int] = None + +class VideoDescriptionOutputTypeDef(BaseModel): + AfdSignaling: Optional[AfdSignalingType] = None + AntiAlias: Optional[AntiAliasType] = None + CodecSettings: Optional[VideoCodecSettingsTypeDef] = None + ColorMetadata: Optional[ColorMetadataType] = None + Crop: Optional[RectangleTypeDef] = None + DropFrameTimecode: Optional[DropFrameTimecodeType] = None + FixedAfd: Optional[int] = None + Height: Optional[int] = None + Position: Optional[RectangleTypeDef] = None + RespondToAfd: Optional[RespondToAfdType] = None + ScalingBehavior: Optional[ScalingBehaviorType] = None + Sharpness: Optional[int] = None + TimecodeInsertion: Optional[VideoTimecodeInsertionType] = None + VideoPreprocessors: Optional[VideoPreprocessorOutputTypeDef] = None + Width: Optional[int] = None + +class VideoDescriptionTypeDef(BaseModel): + AfdSignaling: Optional[AfdSignalingType] = None + AntiAlias: Optional[AntiAliasType] = None + CodecSettings: Optional[VideoCodecSettingsTypeDef] = None + ColorMetadata: Optional[ColorMetadataType] = None + Crop: Optional[RectangleTypeDef] = None + DropFrameTimecode: Optional[DropFrameTimecodeType] = None + FixedAfd: Optional[int] = None + Height: Optional[int] = None + Position: Optional[RectangleTypeDef] = None + RespondToAfd: Optional[RespondToAfdType] = None + ScalingBehavior: Optional[ScalingBehaviorType] = None + Sharpness: Optional[int] = None + TimecodeInsertion: Optional[VideoTimecodeInsertionType] = None + VideoPreprocessors: Optional[VideoPreprocessorTypeDef] = None + Width: Optional[int] = None + +class InputExtraOutputTypeDef(BaseModel): + AdvancedInputFilter: Optional[AdvancedInputFilterType] = None + AdvancedInputFilterSettings: Optional[AdvancedInputFilterSettingsTypeDef] = None + AudioSelectorGroups: Optional[Dict[str, AudioSelectorGroupExtraOutputTypeDef]] = None + AudioSelectors: Optional[Dict[str, AudioSelectorExtraOutputTypeDef]] = None + CaptionSelectors: Optional[Dict[str, CaptionSelectorTypeDef]] = None + Crop: Optional[RectangleTypeDef] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DecryptionSettings: Optional[InputDecryptionSettingsTypeDef] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + DolbyVisionMetadataXml: Optional[str] = None + FileInput: Optional[str] = None + FilterEnable: Optional[InputFilterEnableType] = None + FilterStrength: Optional[int] = None + ImageInserter: Optional[ImageInserterExtraOutputTypeDef] = None + InputClippings: Optional[List[InputClippingTypeDef]] = None + InputScanType: Optional[InputScanTypeType] = None + Position: Optional[RectangleTypeDef] = None + ProgramNumber: Optional[int] = None + PsiControl: Optional[InputPsiControlType] = None + SupplementalImps: Optional[List[str]] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + VideoGenerator: Optional[InputVideoGeneratorTypeDef] = None + VideoOverlays: Optional[List[VideoOverlayExtraOutputTypeDef]] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputTemplateExtraOutputTypeDef(BaseModel): + AdvancedInputFilter: Optional[AdvancedInputFilterType] = None + AdvancedInputFilterSettings: Optional[AdvancedInputFilterSettingsTypeDef] = None + AudioSelectorGroups: Optional[Dict[str, AudioSelectorGroupExtraOutputTypeDef]] = None + AudioSelectors: Optional[Dict[str, AudioSelectorExtraOutputTypeDef]] = None + CaptionSelectors: Optional[Dict[str, CaptionSelectorTypeDef]] = None + Crop: Optional[RectangleTypeDef] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + DolbyVisionMetadataXml: Optional[str] = None + FilterEnable: Optional[InputFilterEnableType] = None + FilterStrength: Optional[int] = None + ImageInserter: Optional[ImageInserterExtraOutputTypeDef] = None + InputClippings: Optional[List[InputClippingTypeDef]] = None + InputScanType: Optional[InputScanTypeType] = None + Position: Optional[RectangleTypeDef] = None + ProgramNumber: Optional[int] = None + PsiControl: Optional[InputPsiControlType] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + VideoOverlays: Optional[List[VideoOverlayExtraOutputTypeDef]] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputOutputTypeDef(BaseModel): + AdvancedInputFilter: Optional[AdvancedInputFilterType] = None + AdvancedInputFilterSettings: Optional[AdvancedInputFilterSettingsTypeDef] = None + AudioSelectorGroups: Optional[Dict[str, AudioSelectorGroupOutputTypeDef]] = None + AudioSelectors: Optional[Dict[str, AudioSelectorOutputTypeDef]] = None + CaptionSelectors: Optional[Dict[str, CaptionSelectorTypeDef]] = None + Crop: Optional[RectangleTypeDef] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DecryptionSettings: Optional[InputDecryptionSettingsTypeDef] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + DolbyVisionMetadataXml: Optional[str] = None + FileInput: Optional[str] = None + FilterEnable: Optional[InputFilterEnableType] = None + FilterStrength: Optional[int] = None + ImageInserter: Optional[ImageInserterOutputTypeDef] = None + InputClippings: Optional[List[InputClippingTypeDef]] = None + InputScanType: Optional[InputScanTypeType] = None + Position: Optional[RectangleTypeDef] = None + ProgramNumber: Optional[int] = None + PsiControl: Optional[InputPsiControlType] = None + SupplementalImps: Optional[List[str]] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + VideoGenerator: Optional[InputVideoGeneratorTypeDef] = None + VideoOverlays: Optional[List[VideoOverlayOutputTypeDef]] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputTemplateOutputTypeDef(BaseModel): + AdvancedInputFilter: Optional[AdvancedInputFilterType] = None + AdvancedInputFilterSettings: Optional[AdvancedInputFilterSettingsTypeDef] = None + AudioSelectorGroups: Optional[Dict[str, AudioSelectorGroupOutputTypeDef]] = None + AudioSelectors: Optional[Dict[str, AudioSelectorOutputTypeDef]] = None + CaptionSelectors: Optional[Dict[str, CaptionSelectorTypeDef]] = None + Crop: Optional[RectangleTypeDef] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + DolbyVisionMetadataXml: Optional[str] = None + FilterEnable: Optional[InputFilterEnableType] = None + FilterStrength: Optional[int] = None + ImageInserter: Optional[ImageInserterOutputTypeDef] = None + InputClippings: Optional[List[InputClippingTypeDef]] = None + InputScanType: Optional[InputScanTypeType] = None + Position: Optional[RectangleTypeDef] = None + ProgramNumber: Optional[int] = None + PsiControl: Optional[InputPsiControlType] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + VideoOverlays: Optional[List[VideoOverlayOutputTypeDef]] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputTemplateTypeDef(BaseModel): + AdvancedInputFilter: Optional[AdvancedInputFilterType] = None + AdvancedInputFilterSettings: Optional[AdvancedInputFilterSettingsTypeDef] = None + AudioSelectorGroups: Optional[Mapping[str, AudioSelectorGroupTypeDef]] = None + AudioSelectors: Optional[Mapping[str, AudioSelectorTypeDef]] = None + CaptionSelectors: Optional[Mapping[str, CaptionSelectorTypeDef]] = None + Crop: Optional[RectangleTypeDef] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + DolbyVisionMetadataXml: Optional[str] = None + FilterEnable: Optional[InputFilterEnableType] = None + FilterStrength: Optional[int] = None + ImageInserter: Optional[ImageInserterTypeDef] = None + InputClippings: Optional[Sequence[InputClippingTypeDef]] = None + InputScanType: Optional[InputScanTypeType] = None + Position: Optional[RectangleTypeDef] = None + ProgramNumber: Optional[int] = None + PsiControl: Optional[InputPsiControlType] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + VideoOverlays: Optional[Sequence[VideoOverlayTypeDef]] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputTypeDef(BaseModel): + AdvancedInputFilter: Optional[AdvancedInputFilterType] = None + AdvancedInputFilterSettings: Optional[AdvancedInputFilterSettingsTypeDef] = None + AudioSelectorGroups: Optional[Mapping[str, AudioSelectorGroupTypeDef]] = None + AudioSelectors: Optional[Mapping[str, AudioSelectorTypeDef]] = None + CaptionSelectors: Optional[Mapping[str, CaptionSelectorTypeDef]] = None + Crop: Optional[RectangleTypeDef] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DecryptionSettings: Optional[InputDecryptionSettingsTypeDef] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + DolbyVisionMetadataXml: Optional[str] = None + FileInput: Optional[str] = None + FilterEnable: Optional[InputFilterEnableType] = None + FilterStrength: Optional[int] = None + ImageInserter: Optional[ImageInserterTypeDef] = None + InputClippings: Optional[Sequence[InputClippingTypeDef]] = None + InputScanType: Optional[InputScanTypeType] = None + Position: Optional[RectangleTypeDef] = None + ProgramNumber: Optional[int] = None + PsiControl: Optional[InputPsiControlType] = None + SupplementalImps: Optional[Sequence[str]] = None + TimecodeSource: Optional[InputTimecodeSourceType] = None + TimecodeStart: Optional[str] = None + VideoGenerator: Optional[InputVideoGeneratorTypeDef] = None + VideoOverlays: Optional[Sequence[VideoOverlayTypeDef]] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class OutputGroupSettingsExtraOutputTypeDef(BaseModel): + CmafGroupSettings: Optional[CmafGroupSettingsExtraOutputTypeDef] = None + DashIsoGroupSettings: Optional[DashIsoGroupSettingsExtraOutputTypeDef] = None + FileGroupSettings: Optional[FileGroupSettingsTypeDef] = None + HlsGroupSettings: Optional[HlsGroupSettingsExtraOutputTypeDef] = None + MsSmoothGroupSettings: Optional[MsSmoothGroupSettingsExtraOutputTypeDef] = None + Type: Optional[OutputGroupTypeType] = None + +class OutputGroupSettingsOutputTypeDef(BaseModel): + CmafGroupSettings: Optional[CmafGroupSettingsOutputTypeDef] = None + DashIsoGroupSettings: Optional[DashIsoGroupSettingsOutputTypeDef] = None + FileGroupSettings: Optional[FileGroupSettingsTypeDef] = None + HlsGroupSettings: Optional[HlsGroupSettingsOutputTypeDef] = None + MsSmoothGroupSettings: Optional[MsSmoothGroupSettingsOutputTypeDef] = None + Type: Optional[OutputGroupTypeType] = None + +class OutputGroupSettingsTypeDef(BaseModel): + CmafGroupSettings: Optional[CmafGroupSettingsTypeDef] = None + DashIsoGroupSettings: Optional[DashIsoGroupSettingsTypeDef] = None + FileGroupSettings: Optional[FileGroupSettingsTypeDef] = None + HlsGroupSettings: Optional[HlsGroupSettingsTypeDef] = None + MsSmoothGroupSettings: Optional[MsSmoothGroupSettingsTypeDef] = None + Type: Optional[OutputGroupTypeType] = None + +class PresetSettingsExtraOutputTypeDef(BaseModel): + AudioDescriptions: Optional[List[AudioDescriptionExtraOutputTypeDef]] = None + CaptionDescriptions: Optional[List[CaptionDescriptionPresetExtraOutputTypeDef]] = None + ContainerSettings: Optional[ContainerSettingsExtraOutputTypeDef] = None + VideoDescription: Optional[VideoDescriptionExtraOutputTypeDef] = None + +class PresetSettingsOutputTypeDef(BaseModel): + AudioDescriptions: Optional[List[AudioDescriptionOutputTypeDef]] = None + CaptionDescriptions: Optional[List[CaptionDescriptionPresetOutputTypeDef]] = None + ContainerSettings: Optional[ContainerSettingsOutputTypeDef] = None + VideoDescription: Optional[VideoDescriptionOutputTypeDef] = None + +class OutputTypeDef(BaseModel): + AudioDescriptions: Optional[Sequence[AudioDescriptionTypeDef]] = None + CaptionDescriptions: Optional[Sequence[CaptionDescriptionTypeDef]] = None + ContainerSettings: Optional[ContainerSettingsTypeDef] = None + Extension: Optional[str] = None + NameModifier: Optional[str] = None + OutputSettings: Optional[OutputSettingsTypeDef] = None + Preset: Optional[str] = None + VideoDescription: Optional[VideoDescriptionTypeDef] = None + +class PresetSettingsTypeDef(BaseModel): + AudioDescriptions: Optional[Sequence[AudioDescriptionTypeDef]] = None + CaptionDescriptions: Optional[Sequence[CaptionDescriptionPresetTypeDef]] = None + ContainerSettings: Optional[ContainerSettingsTypeDef] = None + VideoDescription: Optional[VideoDescriptionTypeDef] = None + +class PresetTypeDef(BaseModel): + Name: str + Settings: PresetSettingsOutputTypeDef + Arn: Optional[str] = None + Category: Optional[str] = None + CreatedAt: Optional[datetime] = None + Description: Optional[str] = None + LastUpdated: Optional[datetime] = None + Type: Optional[TypeType] = None + +class OutputGroupExtraOutputTypeDef(BaseModel): + AutomatedEncodingSettings: Optional[AutomatedEncodingSettingsExtraOutputTypeDef] = None + CustomName: Optional[str] = None + Name: Optional[str] = None + OutputGroupSettings: Optional[OutputGroupSettingsExtraOutputTypeDef] = None + Outputs: Optional[List[OutputTypeDef]] = None + +class OutputGroupOutputTypeDef(BaseModel): + AutomatedEncodingSettings: Optional[AutomatedEncodingSettingsOutputTypeDef] = None + CustomName: Optional[str] = None + Name: Optional[str] = None + OutputGroupSettings: Optional[OutputGroupSettingsOutputTypeDef] = None + Outputs: Optional[List[OutputTypeDef]] = None + +class OutputGroupTypeDef(BaseModel): + AutomatedEncodingSettings: Optional[AutomatedEncodingSettingsTypeDef] = None + CustomName: Optional[str] = None + Name: Optional[str] = None + OutputGroupSettings: Optional[OutputGroupSettingsTypeDef] = None + Outputs: Optional[Sequence[OutputTypeDef]] = None + +class CreatePresetRequestRequestTypeDef(BaseModel): + Name: str + Settings: PresetSettingsTypeDef + Category: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdatePresetRequestRequestTypeDef(BaseModel): + Name: str + Category: Optional[str] = None + Description: Optional[str] = None + Settings: Optional[PresetSettingsTypeDef] = None + +class CreatePresetResponseTypeDef(BaseModel): + Preset: PresetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPresetResponseTypeDef(BaseModel): + Preset: PresetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPresetsResponseTypeDef(BaseModel): + Presets: List[PresetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdatePresetResponseTypeDef(BaseModel): + Preset: PresetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JobSettingsExtraOutputTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + AvailBlanking: Optional[AvailBlankingTypeDef] = None + ColorConversion3DLUTSettings: Optional[List[ColorConversion3DLUTSettingTypeDef]] = None + Esam: Optional[EsamSettingsTypeDef] = None + ExtendedDataServices: Optional[ExtendedDataServicesTypeDef] = None + FollowSource: Optional[int] = None + Inputs: Optional[List[InputExtraOutputTypeDef]] = None + KantarWatermark: Optional[KantarWatermarkSettingsTypeDef] = None + MotionImageInserter: Optional[MotionImageInserterTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + NielsenNonLinearWatermark: Optional[NielsenNonLinearWatermarkSettingsTypeDef] = None + OutputGroups: Optional[List[OutputGroupExtraOutputTypeDef]] = None + TimecodeConfig: Optional[TimecodeConfigTypeDef] = None + TimedMetadataInsertion: Optional[TimedMetadataInsertionExtraOutputTypeDef] = None + +class JobTemplateSettingsExtraOutputTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + AvailBlanking: Optional[AvailBlankingTypeDef] = None + ColorConversion3DLUTSettings: Optional[List[ColorConversion3DLUTSettingTypeDef]] = None + Esam: Optional[EsamSettingsTypeDef] = None + ExtendedDataServices: Optional[ExtendedDataServicesTypeDef] = None + FollowSource: Optional[int] = None + Inputs: Optional[List[InputTemplateExtraOutputTypeDef]] = None + KantarWatermark: Optional[KantarWatermarkSettingsTypeDef] = None + MotionImageInserter: Optional[MotionImageInserterTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + NielsenNonLinearWatermark: Optional[NielsenNonLinearWatermarkSettingsTypeDef] = None + OutputGroups: Optional[List[OutputGroupExtraOutputTypeDef]] = None + TimecodeConfig: Optional[TimecodeConfigTypeDef] = None + TimedMetadataInsertion: Optional[TimedMetadataInsertionExtraOutputTypeDef] = None + +class JobSettingsOutputTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + AvailBlanking: Optional[AvailBlankingTypeDef] = None + ColorConversion3DLUTSettings: Optional[List[ColorConversion3DLUTSettingTypeDef]] = None + Esam: Optional[EsamSettingsTypeDef] = None + ExtendedDataServices: Optional[ExtendedDataServicesTypeDef] = None + FollowSource: Optional[int] = None + Inputs: Optional[List[InputOutputTypeDef]] = None + KantarWatermark: Optional[KantarWatermarkSettingsTypeDef] = None + MotionImageInserter: Optional[MotionImageInserterTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + NielsenNonLinearWatermark: Optional[NielsenNonLinearWatermarkSettingsTypeDef] = None + OutputGroups: Optional[List[OutputGroupOutputTypeDef]] = None + TimecodeConfig: Optional[TimecodeConfigTypeDef] = None + TimedMetadataInsertion: Optional[TimedMetadataInsertionOutputTypeDef] = None + +class JobTemplateSettingsOutputTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + AvailBlanking: Optional[AvailBlankingTypeDef] = None + ColorConversion3DLUTSettings: Optional[List[ColorConversion3DLUTSettingTypeDef]] = None + Esam: Optional[EsamSettingsTypeDef] = None + ExtendedDataServices: Optional[ExtendedDataServicesTypeDef] = None + FollowSource: Optional[int] = None + Inputs: Optional[List[InputTemplateOutputTypeDef]] = None + KantarWatermark: Optional[KantarWatermarkSettingsTypeDef] = None + MotionImageInserter: Optional[MotionImageInserterTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + NielsenNonLinearWatermark: Optional[NielsenNonLinearWatermarkSettingsTypeDef] = None + OutputGroups: Optional[List[OutputGroupOutputTypeDef]] = None + TimecodeConfig: Optional[TimecodeConfigTypeDef] = None + TimedMetadataInsertion: Optional[TimedMetadataInsertionOutputTypeDef] = None + +class JobSettingsTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + AvailBlanking: Optional[AvailBlankingTypeDef] = None + ColorConversion3DLUTSettings: Optional[Sequence[ColorConversion3DLUTSettingTypeDef]] = None + Esam: Optional[EsamSettingsTypeDef] = None + ExtendedDataServices: Optional[ExtendedDataServicesTypeDef] = None + FollowSource: Optional[int] = None + Inputs: Optional[Sequence[InputTypeDef]] = None + KantarWatermark: Optional[KantarWatermarkSettingsTypeDef] = None + MotionImageInserter: Optional[MotionImageInserterTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + NielsenNonLinearWatermark: Optional[NielsenNonLinearWatermarkSettingsTypeDef] = None + OutputGroups: Optional[Sequence[OutputGroupTypeDef]] = None + TimecodeConfig: Optional[TimecodeConfigTypeDef] = None + TimedMetadataInsertion: Optional[TimedMetadataInsertionTypeDef] = None + +class JobTemplateSettingsTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + AvailBlanking: Optional[AvailBlankingTypeDef] = None + ColorConversion3DLUTSettings: Optional[Sequence[ColorConversion3DLUTSettingTypeDef]] = None + Esam: Optional[EsamSettingsTypeDef] = None + ExtendedDataServices: Optional[ExtendedDataServicesTypeDef] = None + FollowSource: Optional[int] = None + Inputs: Optional[Sequence[InputTemplateTypeDef]] = None + KantarWatermark: Optional[KantarWatermarkSettingsTypeDef] = None + MotionImageInserter: Optional[MotionImageInserterTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + NielsenNonLinearWatermark: Optional[NielsenNonLinearWatermarkSettingsTypeDef] = None + OutputGroups: Optional[Sequence[OutputGroupTypeDef]] = None + TimecodeConfig: Optional[TimecodeConfigTypeDef] = None + TimedMetadataInsertion: Optional[TimedMetadataInsertionTypeDef] = None + +class JobTypeDef(BaseModel): + Role: str + Settings: JobSettingsOutputTypeDef + AccelerationSettings: Optional[AccelerationSettingsTypeDef] = None + AccelerationStatus: Optional[AccelerationStatusType] = None + Arn: Optional[str] = None + BillingTagsSource: Optional[BillingTagsSourceType] = None + ClientRequestToken: Optional[str] = None + CreatedAt: Optional[datetime] = None + CurrentPhase: Optional[JobPhaseType] = None + ErrorCode: Optional[int] = None + ErrorMessage: Optional[str] = None + HopDestinations: Optional[List[HopDestinationTypeDef]] = None + Id: Optional[str] = None + JobPercentComplete: Optional[int] = None + JobTemplate: Optional[str] = None + Messages: Optional[JobMessagesTypeDef] = None + OutputGroupDetails: Optional[List[OutputGroupDetailTypeDef]] = None + Priority: Optional[int] = None + Queue: Optional[str] = None + QueueTransitions: Optional[List[QueueTransitionTypeDef]] = None + RetryCount: Optional[int] = None + SimulateReservedQueue: Optional[SimulateReservedQueueType] = None + Status: Optional[JobStatusType] = None + StatusUpdateInterval: Optional[StatusUpdateIntervalType] = None + Timing: Optional[TimingTypeDef] = None + UserMetadata: Optional[Dict[str, str]] = None + Warnings: Optional[List[WarningGroupTypeDef]] = None + +class JobTemplateTypeDef(BaseModel): + Name: str + Settings: JobTemplateSettingsOutputTypeDef + AccelerationSettings: Optional[AccelerationSettingsTypeDef] = None + Arn: Optional[str] = None + Category: Optional[str] = None + CreatedAt: Optional[datetime] = None + Description: Optional[str] = None + HopDestinations: Optional[List[HopDestinationTypeDef]] = None + LastUpdated: Optional[datetime] = None + Priority: Optional[int] = None + Queue: Optional[str] = None + StatusUpdateInterval: Optional[StatusUpdateIntervalType] = None + Type: Optional[TypeType] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + Role: str + Settings: JobSettingsTypeDef + AccelerationSettings: Optional[AccelerationSettingsTypeDef] = None + BillingTagsSource: Optional[BillingTagsSourceType] = None + ClientRequestToken: Optional[str] = None + HopDestinations: Optional[Sequence[HopDestinationTypeDef]] = None + JobTemplate: Optional[str] = None + Priority: Optional[int] = None + Queue: Optional[str] = None + SimulateReservedQueue: Optional[SimulateReservedQueueType] = None + StatusUpdateInterval: Optional[StatusUpdateIntervalType] = None + Tags: Optional[Mapping[str, str]] = None + UserMetadata: Optional[Mapping[str, str]] = None + +class CreateJobTemplateRequestRequestTypeDef(BaseModel): + Name: str + Settings: JobTemplateSettingsTypeDef + AccelerationSettings: Optional[AccelerationSettingsTypeDef] = None + Category: Optional[str] = None + Description: Optional[str] = None + HopDestinations: Optional[Sequence[HopDestinationTypeDef]] = None + Priority: Optional[int] = None + Queue: Optional[str] = None + StatusUpdateInterval: Optional[StatusUpdateIntervalType] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateJobTemplateRequestRequestTypeDef(BaseModel): + Name: str + AccelerationSettings: Optional[AccelerationSettingsTypeDef] = None + Category: Optional[str] = None + Description: Optional[str] = None + HopDestinations: Optional[Sequence[HopDestinationTypeDef]] = None + Priority: Optional[int] = None + Queue: Optional[str] = None + Settings: Optional[JobTemplateSettingsTypeDef] = None + StatusUpdateInterval: Optional[StatusUpdateIntervalType] = None + +class CreateJobResponseTypeDef(BaseModel): + Job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobResponseTypeDef(BaseModel): + Job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobsResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchJobsResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateJobTemplateResponseTypeDef(BaseModel): + JobTemplate: JobTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobTemplateResponseTypeDef(BaseModel): + JobTemplate: JobTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJobTemplatesResponseTypeDef(BaseModel): + JobTemplates: List[JobTemplateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateJobTemplateResponseTypeDef(BaseModel): + JobTemplate: JobTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mediaconvert_constants.py b/aws_resource_validator/pydantic_models/mediaconvert_constants.py new file mode 100644 index 00000000..4674a0f1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediaconvert_constants.py @@ -0,0 +1,1236 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AacAudioDescriptionBroadcasterMixType = Literal["BROADCASTER_MIXED_AD", "NORMAL"] +AacCodecProfileType = Literal["HEV1", "HEV2", "LC"] +AacCodingModeType = Literal["AD_RECEIVER_MIX", "CODING_MODE_1_0", "CODING_MODE_1_1", "CODING_MODE_2_0", "CODING_MODE_5_1"] +AacRateControlModeType = Literal["CBR", "VBR"] +AacRawFormatType = Literal["LATM_LOAS", "NONE"] +AacSpecificationType = Literal["MPEG2", "MPEG4"] +AacVbrQualityType = Literal["HIGH", "LOW", "MEDIUM_HIGH", "MEDIUM_LOW"] +Ac3BitstreamModeType = Literal["COMMENTARY", + "COMPLETE_MAIN", + "DIALOGUE", + "EMERGENCY", + "HEARING_IMPAIRED", + "MUSIC_AND_EFFECTS", + "VISUALLY_IMPAIRED", + "VOICE_OVER",] +Ac3CodingModeType = Literal["CODING_MODE_1_0", "CODING_MODE_1_1", "CODING_MODE_2_0", "CODING_MODE_3_2_LFE"] +Ac3DynamicRangeCompressionLineType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Ac3DynamicRangeCompressionProfileType = Literal["FILM_STANDARD", "NONE"] +Ac3DynamicRangeCompressionRfType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Ac3LfeFilterType = Literal["DISABLED", "ENABLED"] +Ac3MetadataControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +AccelerationModeType = Literal["DISABLED", "ENABLED", "PREFERRED"] +AccelerationStatusType = Literal["ACCELERATED", "IN_PROGRESS", "NOT_ACCELERATED", "NOT_APPLICABLE"] +AdvancedInputFilterAddTextureType = Literal["DISABLED", "ENABLED"] +AdvancedInputFilterSharpenType = Literal["HIGH", "LOW", "OFF"] +AdvancedInputFilterType = Literal["DISABLED", "ENABLED"] +AfdSignalingType = Literal["AUTO", "FIXED", "NONE"] +AlphaBehaviorType = Literal["DISCARD", "REMAP_TO_LUMA"] +AncillaryConvert608To708Type = Literal["DISABLED", "UPCONVERT"] +AncillaryTerminateCaptionsType = Literal["DISABLED", "END_OF_INPUT"] +AntiAliasType = Literal["DISABLED", "ENABLED"] +AudioChannelTagType = Literal["C", + "CS", + "HI", + "L", + "LC", + "LFE", + "LFE2", + "LS", + "LSD", + "LT", + "LW", + "M", + "NAR", + "R", + "RC", + "RS", + "RSD", + "RSL", + "RSR", + "RT", + "RW", + "TBC", + "TBL", + "TBR", + "TCS", + "VHC", + "VHL", + "VHR",] +AudioCodecType = Literal["AAC", + "AC3", + "AIFF", + "EAC3", + "EAC3_ATMOS", + "FLAC", + "MP2", + "MP3", + "OPUS", + "PASSTHROUGH", + "VORBIS", + "WAV",] +AudioDefaultSelectionType = Literal["DEFAULT", "NOT_DEFAULT"] +AudioDurationCorrectionType = Literal["AUTO", "DISABLED", "FRAME", "TRACK"] +AudioLanguageCodeControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +AudioNormalizationAlgorithmControlType = Literal["CORRECT_AUDIO", "MEASURE_ONLY"] +AudioNormalizationAlgorithmType = Literal["ITU_BS_1770_1", "ITU_BS_1770_2", "ITU_BS_1770_3", "ITU_BS_1770_4"] +AudioNormalizationLoudnessLoggingType = Literal["DONT_LOG", "LOG"] +AudioNormalizationPeakCalculationType = Literal["NONE", "TRUE_PEAK"] +AudioSelectorTypeType = Literal["HLS_RENDITION_GROUP", "LANGUAGE_CODE", "PID", "TRACK"] +AudioTypeControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +Av1AdaptiveQuantizationType = Literal["HIGH", "HIGHER", "LOW", "MAX", "MEDIUM", "OFF"] +Av1BitDepthType = Literal["BIT_10", "BIT_8"] +Av1FilmGrainSynthesisType = Literal["DISABLED", "ENABLED"] +Av1FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Av1FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +Av1RateControlModeType = Literal["QVBR"] +Av1SpatialAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +AvcIntraClassType = Literal["CLASS_100", "CLASS_200", "CLASS_4K_2K", "CLASS_50"] +AvcIntraFramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +AvcIntraFramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +AvcIntraInterlaceModeType = Literal["BOTTOM_FIELD", "FOLLOW_BOTTOM_FIELD", "FOLLOW_TOP_FIELD", "PROGRESSIVE", "TOP_FIELD"] +AvcIntraScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +AvcIntraSlowPalType = Literal["DISABLED", "ENABLED"] +AvcIntraTelecineType = Literal["HARD", "NONE"] +AvcIntraUhdQualityTuningLevelType = Literal["MULTI_PASS", "SINGLE_PASS"] +BandwidthReductionFilterSharpeningType = Literal["HIGH", "LOW", "MEDIUM", "OFF"] +BandwidthReductionFilterStrengthType = Literal["AUTO", "HIGH", "LOW", "MEDIUM", "OFF"] +BillingTagsSourceType = Literal["JOB", "JOB_TEMPLATE", "PRESET", "QUEUE"] +BurnInSubtitleStylePassthroughType = Literal["DISABLED", "ENABLED"] +BurninSubtitleAlignmentType = Literal["AUTO", "CENTERED", "LEFT"] +BurninSubtitleApplyFontColorType = Literal["ALL_TEXT", "WHITE_TEXT_ONLY"] +BurninSubtitleBackgroundColorType = Literal["AUTO", "BLACK", "NONE", "WHITE"] +BurninSubtitleFallbackFontType = Literal["BEST_MATCH", + "MONOSPACED_SANSSERIF", + "MONOSPACED_SERIF", + "PROPORTIONAL_SANSSERIF", + "PROPORTIONAL_SERIF",] +BurninSubtitleFontColorType = Literal["AUTO", "BLACK", "BLUE", "GREEN", "HEX", "RED", "WHITE", "YELLOW"] +BurninSubtitleOutlineColorType = Literal["AUTO", "BLACK", "BLUE", "GREEN", "RED", "WHITE", "YELLOW"] +BurninSubtitleShadowColorType = Literal["AUTO", "BLACK", "NONE", "WHITE"] +BurninSubtitleTeletextSpacingType = Literal["AUTO", "FIXED_GRID", "PROPORTIONAL"] +CaptionDestinationTypeType = Literal["BURN_IN", + "DVB_SUB", + "EMBEDDED", + "EMBEDDED_PLUS_SCTE20", + "IMSC", + "SCC", + "SCTE20_PLUS_EMBEDDED", + "SMI", + "SRT", + "TELETEXT", + "TTML", + "WEBVTT",] +CaptionSourceConvertPaintOnToPopOnType = Literal["DISABLED", "ENABLED"] +CaptionSourceTypeType = Literal["ANCILLARY", + "DVB_SUB", + "EMBEDDED", + "IMSC", + "NULL_SOURCE", + "SCC", + "SCTE20", + "SMI", + "SMPTE_TT", + "SRT", + "STL", + "TELETEXT", + "TTML", + "WEBVTT",] +CmafClientCacheType = Literal["DISABLED", "ENABLED"] +CmafCodecSpecificationType = Literal["RFC_4281", "RFC_6381"] +CmafEncryptionTypeType = Literal["AES_CTR", "SAMPLE_AES"] +CmafImageBasedTrickPlayType = Literal["ADVANCED", "NONE", "THUMBNAIL", "THUMBNAIL_AND_FULLFRAME"] +CmafInitializationVectorInManifestType = Literal["EXCLUDE", "INCLUDE"] +CmafIntervalCadenceType = Literal["FOLLOW_CUSTOM", "FOLLOW_IFRAME"] +CmafKeyProviderTypeType = Literal["SPEKE", "STATIC_KEY"] +CmafManifestCompressionType = Literal["GZIP", "NONE"] +CmafManifestDurationFormatType = Literal["FLOATING_POINT", "INTEGER"] +CmafMpdManifestBandwidthTypeType = Literal["AVERAGE", "MAX"] +CmafMpdProfileType = Literal["MAIN_PROFILE", "ON_DEMAND_PROFILE"] +CmafPtsOffsetHandlingForBFramesType = Literal["MATCH_INITIAL_PTS", "ZERO_BASED"] +CmafSegmentControlType = Literal["SEGMENTED_FILES", "SINGLE_FILE"] +CmafSegmentLengthControlType = Literal["EXACT", "GOP_MULTIPLE"] +CmafStreamInfResolutionType = Literal["EXCLUDE", "INCLUDE"] +CmafTargetDurationCompatibilityModeType = Literal["LEGACY", "SPEC_COMPLIANT"] +CmafVideoCompositionOffsetsType = Literal["SIGNED", "UNSIGNED"] +CmafWriteDASHManifestType = Literal["DISABLED", "ENABLED"] +CmafWriteHLSManifestType = Literal["DISABLED", "ENABLED"] +CmafWriteSegmentTimelineInRepresentationType = Literal["DISABLED", "ENABLED"] +CmfcAudioDurationType = Literal["DEFAULT_CODEC_DURATION", "MATCH_VIDEO_DURATION"] +CmfcAudioTrackTypeType = Literal["ALTERNATE_AUDIO_AUTO_SELECT", + "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT", + "ALTERNATE_AUDIO_NOT_AUTO_SELECT", + "AUDIO_ONLY_VARIANT_STREAM",] +CmfcDescriptiveVideoServiceFlagType = Literal["DONT_FLAG", "FLAG"] +CmfcIFrameOnlyManifestType = Literal["EXCLUDE", "INCLUDE"] +CmfcKlvMetadataType = Literal["NONE", "PASSTHROUGH"] +CmfcManifestMetadataSignalingType = Literal["DISABLED", "ENABLED"] +CmfcScte35EsamType = Literal["INSERT", "NONE"] +CmfcScte35SourceType = Literal["NONE", "PASSTHROUGH"] +CmfcTimedMetadataBoxVersionType = Literal["VERSION_0", "VERSION_1"] +CmfcTimedMetadataType = Literal["NONE", "PASSTHROUGH"] +ColorMetadataType = Literal["IGNORE", "INSERT"] +ColorSpaceConversionType = Literal["FORCE_601", + "FORCE_709", + "FORCE_HDR10", + "FORCE_HLG_2020", + "FORCE_P3D65_HDR", + "FORCE_P3D65_SDR", + "FORCE_P3DCI", + "NONE",] +ColorSpaceType = Literal["FOLLOW", "HDR10", "HLG_2020", "P3D65_HDR", "P3D65_SDR", "P3DCI", "REC_601", "REC_709"] +ColorSpaceUsageType = Literal["FALLBACK", "FORCE"] +CommitmentType = Literal["ONE_YEAR"] +ContainerTypeType = Literal["CMFC", "F4V", "ISMV", "M2TS", "M3U8", "MOV", "MP4", "MPD", "MXF", "RAW", "WEBM", "Y4M"] +CopyProtectionActionType = Literal["PASSTHROUGH", "STRIP"] +DashIsoGroupAudioChannelConfigSchemeIdUriType = Literal["DOLBY_CHANNEL_CONFIGURATION", "MPEG_CHANNEL_CONFIGURATION"] +DashIsoHbbtvComplianceType = Literal["HBBTV_1_5", "NONE"] +DashIsoImageBasedTrickPlayType = Literal["ADVANCED", "NONE", "THUMBNAIL", "THUMBNAIL_AND_FULLFRAME"] +DashIsoIntervalCadenceType = Literal["FOLLOW_CUSTOM", "FOLLOW_IFRAME"] +DashIsoMpdManifestBandwidthTypeType = Literal["AVERAGE", "MAX"] +DashIsoMpdProfileType = Literal["MAIN_PROFILE", "ON_DEMAND_PROFILE"] +DashIsoPlaybackDeviceCompatibilityType = Literal["CENC_V1", "UNENCRYPTED_SEI"] +DashIsoPtsOffsetHandlingForBFramesType = Literal["MATCH_INITIAL_PTS", "ZERO_BASED"] +DashIsoSegmentControlType = Literal["SEGMENTED_FILES", "SINGLE_FILE"] +DashIsoSegmentLengthControlType = Literal["EXACT", "GOP_MULTIPLE"] +DashIsoVideoCompositionOffsetsType = Literal["SIGNED", "UNSIGNED"] +DashIsoWriteSegmentTimelineInRepresentationType = Literal["DISABLED", "ENABLED"] +DashManifestStyleType = Literal["BASIC", "COMPACT", "DISTINCT"] +DecryptionModeType = Literal["AES_CBC", "AES_CTR", "AES_GCM"] +DeinterlaceAlgorithmType = Literal["BLEND", "BLEND_TICKER", "INTERPOLATE", "INTERPOLATE_TICKER", "LINEAR_INTERPOLATION"] +DeinterlacerControlType = Literal["FORCE_ALL_FRAMES", "NORMAL"] +DeinterlacerModeType = Literal["ADAPTIVE", "DEINTERLACE", "INVERSE_TELECINE"] +DescribeEndpointsModeType = Literal["DEFAULT", "GET_ONLY"] +DescribeEndpointsPaginatorName = Literal["describe_endpoints"] +DolbyVisionLevel6ModeType = Literal["PASSTHROUGH", "RECALCULATE", "SPECIFY"] +DolbyVisionMappingType = Literal["HDR10_1000", "HDR10_NOMAP"] +DolbyVisionProfileType = Literal["PROFILE_5", "PROFILE_8_1"] +DropFrameTimecodeType = Literal["DISABLED", "ENABLED"] +DvbSubSubtitleFallbackFontType = Literal["BEST_MATCH", + "MONOSPACED_SANSSERIF", + "MONOSPACED_SERIF", + "PROPORTIONAL_SANSSERIF", + "PROPORTIONAL_SERIF",] +DvbSubtitleAlignmentType = Literal["AUTO", "CENTERED", "LEFT"] +DvbSubtitleApplyFontColorType = Literal["ALL_TEXT", "WHITE_TEXT_ONLY"] +DvbSubtitleBackgroundColorType = Literal["AUTO", "BLACK", "NONE", "WHITE"] +DvbSubtitleFontColorType = Literal["AUTO", "BLACK", "BLUE", "GREEN", "HEX", "RED", "WHITE", "YELLOW"] +DvbSubtitleOutlineColorType = Literal["AUTO", "BLACK", "BLUE", "GREEN", "RED", "WHITE", "YELLOW"] +DvbSubtitleShadowColorType = Literal["AUTO", "BLACK", "NONE", "WHITE"] +DvbSubtitleStylePassthroughType = Literal["DISABLED", "ENABLED"] +DvbSubtitleTeletextSpacingType = Literal["AUTO", "FIXED_GRID", "PROPORTIONAL"] +DvbSubtitlingTypeType = Literal["HEARING_IMPAIRED", "STANDARD"] +DvbddsHandlingType = Literal["NONE", "NO_DISPLAY_WINDOW", "SPECIFIED"] +Eac3AtmosBitstreamModeType = Literal["COMPLETE_MAIN"] +Eac3AtmosCodingModeType = Literal["CODING_MODE_5_1_4", "CODING_MODE_7_1_4", "CODING_MODE_9_1_6", "CODING_MODE_AUTO"] +Eac3AtmosDialogueIntelligenceType = Literal["DISABLED", "ENABLED"] +Eac3AtmosDownmixControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Eac3AtmosDynamicRangeCompressionLineType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3AtmosDynamicRangeCompressionRfType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3AtmosDynamicRangeControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Eac3AtmosMeteringModeType = Literal["ITU_BS_1770_1", "ITU_BS_1770_2", "ITU_BS_1770_3", "ITU_BS_1770_4", "LEQ_A"] +Eac3AtmosStereoDownmixType = Literal["DPL2", "NOT_INDICATED", "STEREO", "SURROUND"] +Eac3AtmosSurroundExModeType = Literal["DISABLED", "ENABLED", "NOT_INDICATED"] +Eac3AttenuationControlType = Literal["ATTENUATE_3_DB", "NONE"] +Eac3BitstreamModeType = Literal["COMMENTARY", "COMPLETE_MAIN", "EMERGENCY", "HEARING_IMPAIRED", "VISUALLY_IMPAIRED"] +Eac3CodingModeType = Literal["CODING_MODE_1_0", "CODING_MODE_2_0", "CODING_MODE_3_2"] +Eac3DcFilterType = Literal["DISABLED", "ENABLED"] +Eac3DynamicRangeCompressionLineType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3DynamicRangeCompressionRfType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3LfeControlType = Literal["LFE", "NO_LFE"] +Eac3LfeFilterType = Literal["DISABLED", "ENABLED"] +Eac3MetadataControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +Eac3PassthroughControlType = Literal["NO_PASSTHROUGH", "WHEN_POSSIBLE"] +Eac3PhaseControlType = Literal["NO_SHIFT", "SHIFT_90_DEGREES"] +Eac3StereoDownmixType = Literal["DPL2", "LO_RO", "LT_RT", "NOT_INDICATED"] +Eac3SurroundExModeType = Literal["DISABLED", "ENABLED", "NOT_INDICATED"] +Eac3SurroundModeType = Literal["DISABLED", "ENABLED", "NOT_INDICATED"] +EmbeddedConvert608To708Type = Literal["DISABLED", "UPCONVERT"] +EmbeddedTerminateCaptionsType = Literal["DISABLED", "END_OF_INPUT"] +EmbeddedTimecodeOverrideType = Literal["NONE", "USE_MDPM"] +F4vMoovPlacementType = Literal["NORMAL", "PROGRESSIVE_DOWNLOAD"] +FileSourceConvert608To708Type = Literal["DISABLED", "UPCONVERT"] +FileSourceTimeDeltaUnitsType = Literal["MILLISECONDS", "SECONDS"] +FontScriptType = Literal["AUTOMATIC", "HANS", "HANT"] +H264AdaptiveQuantizationType = Literal["AUTO", "HIGH", "HIGHER", "LOW", "MAX", "MEDIUM", "OFF"] +H264CodecLevelType = Literal["AUTO", + "LEVEL_1", + "LEVEL_1_1", + "LEVEL_1_2", + "LEVEL_1_3", + "LEVEL_2", + "LEVEL_2_1", + "LEVEL_2_2", + "LEVEL_3", + "LEVEL_3_1", + "LEVEL_3_2", + "LEVEL_4", + "LEVEL_4_1", + "LEVEL_4_2", + "LEVEL_5", + "LEVEL_5_1", + "LEVEL_5_2",] +H264CodecProfileType = Literal["BASELINE", "HIGH", "HIGH_10BIT", "HIGH_422", "HIGH_422_10BIT", "MAIN"] +H264DynamicSubGopType = Literal["ADAPTIVE", "STATIC"] +H264EndOfStreamMarkersType = Literal["INCLUDE", "SUPPRESS"] +H264EntropyEncodingType = Literal["CABAC", "CAVLC"] +H264FieldEncodingType = Literal["FORCE_FIELD", "MBAFF", "PAFF"] +H264FlickerAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +H264FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +H264FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +H264GopBReferenceType = Literal["DISABLED", "ENABLED"] +H264GopSizeUnitsType = Literal["AUTO", "FRAMES", "SECONDS"] +H264InterlaceModeType = Literal["BOTTOM_FIELD", "FOLLOW_BOTTOM_FIELD", "FOLLOW_TOP_FIELD", "PROGRESSIVE", "TOP_FIELD"] +H264ParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +H264QualityTuningLevelType = Literal["MULTI_PASS_HQ", "SINGLE_PASS", "SINGLE_PASS_HQ"] +H264RateControlModeType = Literal["CBR", "QVBR", "VBR"] +H264RepeatPpsType = Literal["DISABLED", "ENABLED"] +H264ScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +H264SceneChangeDetectType = Literal["DISABLED", "ENABLED", "TRANSITION_DETECTION"] +H264SlowPalType = Literal["DISABLED", "ENABLED"] +H264SpatialAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +H264SyntaxType = Literal["DEFAULT", "RP2027"] +H264TelecineType = Literal["HARD", "NONE", "SOFT"] +H264TemporalAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +H264UnregisteredSeiTimecodeType = Literal["DISABLED", "ENABLED"] +H265AdaptiveQuantizationType = Literal["AUTO", "HIGH", "HIGHER", "LOW", "MAX", "MEDIUM", "OFF"] +H265AlternateTransferFunctionSeiType = Literal["DISABLED", "ENABLED"] +H265CodecLevelType = Literal["AUTO", + "LEVEL_1", + "LEVEL_2", + "LEVEL_2_1", + "LEVEL_3", + "LEVEL_3_1", + "LEVEL_4", + "LEVEL_4_1", + "LEVEL_5", + "LEVEL_5_1", + "LEVEL_5_2", + "LEVEL_6", + "LEVEL_6_1", + "LEVEL_6_2",] +H265CodecProfileType = Literal["MAIN10_HIGH", + "MAIN10_MAIN", + "MAIN_422_10BIT_HIGH", + "MAIN_422_10BIT_MAIN", + "MAIN_422_8BIT_HIGH", + "MAIN_422_8BIT_MAIN", + "MAIN_HIGH", + "MAIN_MAIN",] +H265DynamicSubGopType = Literal["ADAPTIVE", "STATIC"] +H265EndOfStreamMarkersType = Literal["INCLUDE", "SUPPRESS"] +H265FlickerAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +H265FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +H265FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +H265GopBReferenceType = Literal["DISABLED", "ENABLED"] +H265GopSizeUnitsType = Literal["AUTO", "FRAMES", "SECONDS"] +H265InterlaceModeType = Literal["BOTTOM_FIELD", "FOLLOW_BOTTOM_FIELD", "FOLLOW_TOP_FIELD", "PROGRESSIVE", "TOP_FIELD"] +H265ParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +H265QualityTuningLevelType = Literal["MULTI_PASS_HQ", "SINGLE_PASS", "SINGLE_PASS_HQ"] +H265RateControlModeType = Literal["CBR", "QVBR", "VBR"] +H265SampleAdaptiveOffsetFilterModeType = Literal["ADAPTIVE", "DEFAULT", "OFF"] +H265ScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +H265SceneChangeDetectType = Literal["DISABLED", "ENABLED", "TRANSITION_DETECTION"] +H265SlowPalType = Literal["DISABLED", "ENABLED"] +H265SpatialAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +H265TelecineType = Literal["HARD", "NONE", "SOFT"] +H265TemporalAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +H265TemporalIdsType = Literal["DISABLED", "ENABLED"] +H265TilesType = Literal["DISABLED", "ENABLED"] +H265UnregisteredSeiTimecodeType = Literal["DISABLED", "ENABLED"] +H265WriteMp4PackagingTypeType = Literal["HEV1", "HVC1"] +HDRToSDRToneMapperType = Literal["PRESERVE_DETAILS", "VIBRANT"] +HlsAdMarkersType = Literal["ELEMENTAL", "ELEMENTAL_SCTE35"] +HlsAudioOnlyContainerType = Literal["AUTOMATIC", "M2TS"] +HlsAudioOnlyHeaderType = Literal["EXCLUDE", "INCLUDE"] +HlsAudioTrackTypeType = Literal["ALTERNATE_AUDIO_AUTO_SELECT", + "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT", + "ALTERNATE_AUDIO_NOT_AUTO_SELECT", + "AUDIO_ONLY_VARIANT_STREAM",] +HlsCaptionLanguageSettingType = Literal["INSERT", "NONE", "OMIT"] +HlsCaptionSegmentLengthControlType = Literal["LARGE_SEGMENTS", "MATCH_VIDEO"] +HlsClientCacheType = Literal["DISABLED", "ENABLED"] +HlsCodecSpecificationType = Literal["RFC_4281", "RFC_6381"] +HlsDescriptiveVideoServiceFlagType = Literal["DONT_FLAG", "FLAG"] +HlsDirectoryStructureType = Literal["SINGLE_DIRECTORY", "SUBDIRECTORY_PER_STREAM"] +HlsEncryptionTypeType = Literal["AES128", "SAMPLE_AES"] +HlsIFrameOnlyManifestType = Literal["EXCLUDE", "INCLUDE"] +HlsImageBasedTrickPlayType = Literal["ADVANCED", "NONE", "THUMBNAIL", "THUMBNAIL_AND_FULLFRAME"] +HlsInitializationVectorInManifestType = Literal["EXCLUDE", "INCLUDE"] +HlsIntervalCadenceType = Literal["FOLLOW_CUSTOM", "FOLLOW_IFRAME"] +HlsKeyProviderTypeType = Literal["SPEKE", "STATIC_KEY"] +HlsManifestCompressionType = Literal["GZIP", "NONE"] +HlsManifestDurationFormatType = Literal["FLOATING_POINT", "INTEGER"] +HlsOfflineEncryptedType = Literal["DISABLED", "ENABLED"] +HlsOutputSelectionType = Literal["MANIFESTS_AND_SEGMENTS", "SEGMENTS_ONLY"] +HlsProgramDateTimeType = Literal["EXCLUDE", "INCLUDE"] +HlsProgressiveWriteHlsManifestType = Literal["DISABLED", "ENABLED"] +HlsSegmentControlType = Literal["SEGMENTED_FILES", "SINGLE_FILE"] +HlsSegmentLengthControlType = Literal["EXACT", "GOP_MULTIPLE"] +HlsStreamInfResolutionType = Literal["EXCLUDE", "INCLUDE"] +HlsTargetDurationCompatibilityModeType = Literal["LEGACY", "SPEC_COMPLIANT"] +HlsTimedMetadataId3FrameType = Literal["NONE", "PRIV", "TDRL"] +ImscAccessibilitySubsType = Literal["DISABLED", "ENABLED"] +ImscStylePassthroughType = Literal["DISABLED", "ENABLED"] +InputDeblockFilterType = Literal["DISABLED", "ENABLED"] +InputDenoiseFilterType = Literal["DISABLED", "ENABLED"] +InputFilterEnableType = Literal["AUTO", "DISABLE", "FORCE"] +InputPolicyType = Literal["ALLOWED", "DISALLOWED"] +InputPsiControlType = Literal["IGNORE_PSI", "USE_PSI"] +InputRotateType = Literal["AUTO", "DEGREES_180", "DEGREES_270", "DEGREES_90", "DEGREE_0"] +InputSampleRangeType = Literal["FOLLOW", "FULL_RANGE", "LIMITED_RANGE"] +InputScanTypeType = Literal["AUTO", "PSF"] +InputTimecodeSourceType = Literal["EMBEDDED", "SPECIFIEDSTART", "ZEROBASED"] +JobPhaseType = Literal["PROBING", "TRANSCODING", "UPLOADING"] +JobStatusType = Literal["CANCELED", "COMPLETE", "ERROR", "PROGRESSING", "SUBMITTED"] +JobTemplateListByType = Literal["CREATION_DATE", "NAME", "SYSTEM"] +LanguageCodeType = Literal["AAR", + "ABK", + "AFR", + "AKA", + "AMH", + "ARA", + "ARG", + "ASM", + "AVA", + "AVE", + "AYM", + "AZE", + "BAK", + "BAM", + "BEL", + "BEN", + "BIH", + "BIS", + "BOD", + "BOS", + "BRE", + "BUL", + "CAT", + "CES", + "CHA", + "CHE", + "CHU", + "CHV", + "COR", + "COS", + "CRE", + "CYM", + "DAN", + "DEU", + "DIV", + "DZO", + "ELL", + "ENG", + "ENM", + "EPO", + "EST", + "EUS", + "EWE", + "FAO", + "FAS", + "FIJ", + "FIN", + "FRA", + "FRM", + "FRY", + "FUL", + "GER", + "GLA", + "GLE", + "GLG", + "GLV", + "GRN", + "GUJ", + "HAT", + "HAU", + "HEB", + "HER", + "HIN", + "HMO", + "HRV", + "HUN", + "HYE", + "IBO", + "IDO", + "III", + "IKU", + "ILE", + "INA", + "IND", + "IPK", + "ISL", + "ITA", + "JAV", + "JPN", + "KAL", + "KAN", + "KAS", + "KAT", + "KAU", + "KAZ", + "KHM", + "KIK", + "KIN", + "KIR", + "KOM", + "KON", + "KOR", + "KUA", + "KUR", + "LAO", + "LAT", + "LAV", + "LIM", + "LIN", + "LIT", + "LTZ", + "LUB", + "LUG", + "MAH", + "MAL", + "MAR", + "MKD", + "MLG", + "MLT", + "MON", + "MRI", + "MSA", + "MYA", + "NAU", + "NAV", + "NBL", + "NDE", + "NDO", + "NEP", + "NLD", + "NNO", + "NOB", + "NOR", + "NYA", + "OCI", + "OJI", + "ORI", + "ORJ", + "ORM", + "OSS", + "PAN", + "PLI", + "POL", + "POR", + "PUS", + "QAA", + "QPC", + "QUE", + "ROH", + "RON", + "RUN", + "RUS", + "SAG", + "SAN", + "SIN", + "SLK", + "SLV", + "SME", + "SMO", + "SNA", + "SND", + "SOM", + "SOT", + "SPA", + "SQI", + "SRB", + "SRD", + "SRP", + "SSW", + "SUN", + "SWA", + "SWE", + "TAH", + "TAM", + "TAT", + "TEL", + "TGK", + "TGL", + "THA", + "TIR", + "TNG", + "TON", + "TSN", + "TSO", + "TUK", + "TUR", + "TWI", + "UIG", + "UKR", + "URD", + "UZB", + "VEN", + "VIE", + "VOL", + "WLN", + "WOL", + "XHO", + "YID", + "YOR", + "ZHA", + "ZHO", + "ZUL",] +ListJobTemplatesPaginatorName = Literal["list_job_templates"] +ListJobsPaginatorName = Literal["list_jobs"] +ListPresetsPaginatorName = Literal["list_presets"] +ListQueuesPaginatorName = Literal["list_queues"] +M2tsAudioBufferModelType = Literal["ATSC", "DVB"] +M2tsAudioDurationType = Literal["DEFAULT_CODEC_DURATION", "MATCH_VIDEO_DURATION"] +M2tsBufferModelType = Literal["MULTIPLEX", "NONE"] +M2tsDataPtsControlType = Literal["ALIGN_TO_VIDEO", "AUTO"] +M2tsEbpAudioIntervalType = Literal["VIDEO_AND_FIXED_INTERVALS", "VIDEO_INTERVAL"] +M2tsEbpPlacementType = Literal["VIDEO_AND_AUDIO_PIDS", "VIDEO_PID"] +M2tsEsRateInPesType = Literal["EXCLUDE", "INCLUDE"] +M2tsForceTsVideoEbpOrderType = Literal["DEFAULT", "FORCE"] +M2tsKlvMetadataType = Literal["NONE", "PASSTHROUGH"] +M2tsNielsenId3Type = Literal["INSERT", "NONE"] +M2tsPcrControlType = Literal["CONFIGURED_PCR_PERIOD", "PCR_EVERY_PES_PACKET"] +M2tsPreventBufferUnderflowType = Literal["DISABLED", "ENABLED"] +M2tsRateModeType = Literal["CBR", "VBR"] +M2tsScte35SourceType = Literal["NONE", "PASSTHROUGH"] +M2tsSegmentationMarkersType = Literal["EBP", "EBP_LEGACY", "NONE", "PSI_SEGSTART", "RAI_ADAPT", "RAI_SEGSTART"] +M2tsSegmentationStyleType = Literal["MAINTAIN_CADENCE", "RESET_CADENCE"] +M3u8AudioDurationType = Literal["DEFAULT_CODEC_DURATION", "MATCH_VIDEO_DURATION"] +M3u8DataPtsControlType = Literal["ALIGN_TO_VIDEO", "AUTO"] +M3u8NielsenId3Type = Literal["INSERT", "NONE"] +M3u8PcrControlType = Literal["CONFIGURED_PCR_PERIOD", "PCR_EVERY_PES_PACKET"] +M3u8Scte35SourceType = Literal["NONE", "PASSTHROUGH"] +MotionImageInsertionModeType = Literal["MOV", "PNG"] +MotionImagePlaybackType = Literal["ONCE", "REPEAT"] +MovClapAtomType = Literal["EXCLUDE", "INCLUDE"] +MovCslgAtomType = Literal["EXCLUDE", "INCLUDE"] +MovMpeg2FourCCControlType = Literal["MPEG", "XDCAM"] +MovPaddingControlType = Literal["NONE", "OMNEON"] +MovReferenceType = Literal["EXTERNAL", "SELF_CONTAINED"] +Mp3RateControlModeType = Literal["CBR", "VBR"] +Mp4CslgAtomType = Literal["EXCLUDE", "INCLUDE"] +Mp4FreeSpaceBoxType = Literal["EXCLUDE", "INCLUDE"] +Mp4MoovPlacementType = Literal["NORMAL", "PROGRESSIVE_DOWNLOAD"] +MpdAccessibilityCaptionHintsType = Literal["EXCLUDE", "INCLUDE"] +MpdAudioDurationType = Literal["DEFAULT_CODEC_DURATION", "MATCH_VIDEO_DURATION"] +MpdCaptionContainerTypeType = Literal["FRAGMENTED_MP4", "RAW"] +MpdKlvMetadataType = Literal["NONE", "PASSTHROUGH"] +MpdManifestMetadataSignalingType = Literal["DISABLED", "ENABLED"] +MpdScte35EsamType = Literal["INSERT", "NONE"] +MpdScte35SourceType = Literal["NONE", "PASSTHROUGH"] +MpdTimedMetadataBoxVersionType = Literal["VERSION_0", "VERSION_1"] +MpdTimedMetadataType = Literal["NONE", "PASSTHROUGH"] +Mpeg2AdaptiveQuantizationType = Literal["HIGH", "LOW", "MEDIUM", "OFF"] +Mpeg2CodecLevelType = Literal["AUTO", "HIGH", "HIGH1440", "LOW", "MAIN"] +Mpeg2CodecProfileType = Literal["MAIN", "PROFILE_422"] +Mpeg2DynamicSubGopType = Literal["ADAPTIVE", "STATIC"] +Mpeg2FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Mpeg2FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +Mpeg2GopSizeUnitsType = Literal["FRAMES", "SECONDS"] +Mpeg2InterlaceModeType = Literal["BOTTOM_FIELD", "FOLLOW_BOTTOM_FIELD", "FOLLOW_TOP_FIELD", "PROGRESSIVE", "TOP_FIELD"] +Mpeg2IntraDcPrecisionType = Literal["AUTO", + "INTRA_DC_PRECISION_10", + "INTRA_DC_PRECISION_11", + "INTRA_DC_PRECISION_8", + "INTRA_DC_PRECISION_9",] +Mpeg2ParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Mpeg2QualityTuningLevelType = Literal["MULTI_PASS", "SINGLE_PASS"] +Mpeg2RateControlModeType = Literal["CBR", "VBR"] +Mpeg2ScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +Mpeg2SceneChangeDetectType = Literal["DISABLED", "ENABLED"] +Mpeg2SlowPalType = Literal["DISABLED", "ENABLED"] +Mpeg2SpatialAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +Mpeg2SyntaxType = Literal["DEFAULT", "D_10"] +Mpeg2TelecineType = Literal["HARD", "NONE", "SOFT"] +Mpeg2TemporalAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +MsSmoothAudioDeduplicationType = Literal["COMBINE_DUPLICATE_STREAMS", "NONE"] +MsSmoothFragmentLengthControlType = Literal["EXACT", "GOP_MULTIPLE"] +MsSmoothManifestEncodingType = Literal["UTF16", "UTF8"] +MxfAfdSignalingType = Literal["COPY_FROM_VIDEO", "NO_COPY"] +MxfProfileType = Literal["D_10", "OP1A", "XAVC", "XDCAM", "XDCAM_RDD9"] +MxfXavcDurationModeType = Literal["ALLOW_ANY_DURATION", "DROP_FRAMES_FOR_COMPLIANCE"] +NielsenActiveWatermarkProcessTypeType = Literal["CBET", "NAES2_AND_NW", "NAES2_AND_NW_AND_CBET"] +NielsenSourceWatermarkStatusTypeType = Literal["CLEAN", "WATERMARKED"] +NielsenUniqueTicPerAudioTrackTypeType = Literal["RESERVE_UNIQUE_TICS_PER_TRACK", "SAME_TICS_PER_TRACK"] +NoiseFilterPostTemporalSharpeningStrengthType = Literal["HIGH", "LOW", "MEDIUM"] +NoiseFilterPostTemporalSharpeningType = Literal["AUTO", "DISABLED", "ENABLED"] +NoiseReducerFilterType = Literal["BILATERAL", "CONSERVE", "GAUSSIAN", "LANCZOS", "MEAN", "SHARPEN", "SPATIAL", "TEMPORAL"] +OrderType = Literal["ASCENDING", "DESCENDING"] +OutputGroupTypeType = Literal["CMAF_GROUP_SETTINGS", + "DASH_ISO_GROUP_SETTINGS", + "FILE_GROUP_SETTINGS", + "HLS_GROUP_SETTINGS", + "MS_SMOOTH_GROUP_SETTINGS",] +OutputSdtType = Literal["SDT_FOLLOW", "SDT_FOLLOW_IF_PRESENT", "SDT_MANUAL", "SDT_NONE"] +PadVideoType = Literal["BLACK", "DISABLED"] +PresetListByType = Literal["CREATION_DATE", "NAME", "SYSTEM"] +PricingPlanType = Literal["ON_DEMAND", "RESERVED"] +ProresChromaSamplingType = Literal["PRESERVE_444_SAMPLING", "SUBSAMPLE_TO_422"] +ProresCodecProfileType = Literal["APPLE_PRORES_422", + "APPLE_PRORES_422_HQ", + "APPLE_PRORES_422_LT", + "APPLE_PRORES_422_PROXY", + "APPLE_PRORES_4444", + "APPLE_PRORES_4444_XQ",] +ProresFramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +ProresFramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +ProresInterlaceModeType = Literal["BOTTOM_FIELD", "FOLLOW_BOTTOM_FIELD", "FOLLOW_TOP_FIELD", "PROGRESSIVE", "TOP_FIELD"] +ProresParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +ProresScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +ProresSlowPalType = Literal["DISABLED", "ENABLED"] +ProresTelecineType = Literal["HARD", "NONE"] +QueueListByType = Literal["CREATION_DATE", "NAME"] +QueueStatusType = Literal["ACTIVE", "PAUSED"] +RenewalTypeType = Literal["AUTO_RENEW", "EXPIRE"] +RequiredFlagType = Literal["DISABLED", "ENABLED"] +ReservationPlanStatusType = Literal["ACTIVE", "EXPIRED"] +RespondToAfdType = Literal["NONE", "PASSTHROUGH", "RESPOND"] +RuleTypeType = Literal["ALLOWED_RENDITIONS", + "FORCE_INCLUDE_RENDITIONS", + "MIN_BOTTOM_RENDITION_SIZE", + "MIN_TOP_RENDITION_SIZE",] +S3ObjectCannedAclType = Literal["AUTHENTICATED_READ", "BUCKET_OWNER_FULL_CONTROL", "BUCKET_OWNER_READ", "PUBLIC_READ"] +S3ServerSideEncryptionTypeType = Literal["SERVER_SIDE_ENCRYPTION_KMS", "SERVER_SIDE_ENCRYPTION_S3"] +S3StorageClassType = Literal["DEEP_ARCHIVE", + "GLACIER", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "REDUCED_REDUNDANCY", + "STANDARD", + "STANDARD_IA",] +SampleRangeConversionType = Literal["LIMITED_RANGE_CLIP", "LIMITED_RANGE_SQUEEZE", "NONE"] +ScalingBehaviorType = Literal["DEFAULT", "FILL", "FIT", "FIT_NO_UPSCALE", "STRETCH_TO_OUTPUT"] +SccDestinationFramerateType = Literal["FRAMERATE_23_97", + "FRAMERATE_24", + "FRAMERATE_25", + "FRAMERATE_29_97_DROPFRAME", + "FRAMERATE_29_97_NON_DROPFRAME",] +SearchJobsPaginatorName = Literal["search_jobs"] +SimulateReservedQueueType = Literal["DISABLED", "ENABLED"] +SrtStylePassthroughType = Literal["DISABLED", "ENABLED"] +StatusUpdateIntervalType = Literal["SECONDS_10", + "SECONDS_12", + "SECONDS_120", + "SECONDS_15", + "SECONDS_180", + "SECONDS_20", + "SECONDS_240", + "SECONDS_30", + "SECONDS_300", + "SECONDS_360", + "SECONDS_420", + "SECONDS_480", + "SECONDS_540", + "SECONDS_60", + "SECONDS_600",] +TeletextPageTypeType = Literal["PAGE_TYPE_ADDL_INFO", + "PAGE_TYPE_HEARING_IMPAIRED_SUBTITLE", + "PAGE_TYPE_INITIAL", + "PAGE_TYPE_PROGRAM_SCHEDULE", + "PAGE_TYPE_SUBTITLE",] +TimecodeBurninPositionType = Literal["BOTTOM_CENTER", + "BOTTOM_LEFT", + "BOTTOM_RIGHT", + "MIDDLE_CENTER", + "MIDDLE_LEFT", + "MIDDLE_RIGHT", + "TOP_CENTER", + "TOP_LEFT", + "TOP_RIGHT",] +TimecodeSourceType = Literal["EMBEDDED", "SPECIFIEDSTART", "ZEROBASED"] +TimedMetadataType = Literal["NONE", "PASSTHROUGH"] +TsPtsOffsetType = Literal["AUTO", "SECONDS"] +TtmlStylePassthroughType = Literal["DISABLED", "ENABLED"] +TypeType = Literal["CUSTOM", "SYSTEM"] +UncompressedFourccType = Literal["I420", "I422", "I444"] +UncompressedFramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +UncompressedFramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +UncompressedInterlaceModeType = Literal["INTERLACED", "PROGRESSIVE"] +UncompressedScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +UncompressedSlowPalType = Literal["DISABLED", "ENABLED"] +UncompressedTelecineType = Literal["HARD", "NONE"] +Vc3ClassType = Literal["CLASS_145_8BIT", "CLASS_220_10BIT", "CLASS_220_8BIT"] +Vc3FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Vc3FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +Vc3InterlaceModeType = Literal["INTERLACED", "PROGRESSIVE"] +Vc3ScanTypeConversionModeType = Literal["INTERLACED", "INTERLACED_OPTIMIZE"] +Vc3SlowPalType = Literal["DISABLED", "ENABLED"] +Vc3TelecineType = Literal["HARD", "NONE"] +VchipActionType = Literal["PASSTHROUGH", "STRIP"] +VideoCodecType = Literal["AV1", + "AVC_INTRA", + "FRAME_CAPTURE", + "H_264", + "H_265", + "MPEG2", + "PASSTHROUGH", + "PRORES", + "UNCOMPRESSED", + "VC3", + "VP8", + "VP9", + "XAVC",] +VideoTimecodeInsertionType = Literal["DISABLED", "PIC_TIMING_SEI"] +Vp8FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Vp8FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +Vp8ParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Vp8QualityTuningLevelType = Literal["MULTI_PASS", "MULTI_PASS_HQ"] +Vp8RateControlModeType = Literal["VBR"] +Vp9FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Vp9FramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +Vp9ParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +Vp9QualityTuningLevelType = Literal["MULTI_PASS", "MULTI_PASS_HQ"] +Vp9RateControlModeType = Literal["VBR"] +WatermarkingStrengthType = Literal["DEFAULT", "LIGHTER", "LIGHTEST", "STRONGER", "STRONGEST"] +WavFormatType = Literal["RF64", "RIFF"] +WebvttAccessibilitySubsType = Literal["DISABLED", "ENABLED"] +WebvttStylePassthroughType = Literal["DISABLED", "ENABLED", "STRICT"] +Xavc4kIntraCbgProfileClassType = Literal["CLASS_100", "CLASS_300", "CLASS_480"] +Xavc4kIntraVbrProfileClassType = Literal["CLASS_100", "CLASS_300", "CLASS_480"] +Xavc4kProfileBitrateClassType = Literal["BITRATE_CLASS_100", "BITRATE_CLASS_140", "BITRATE_CLASS_200"] +Xavc4kProfileCodecProfileType = Literal["HIGH", "HIGH_422"] +Xavc4kProfileQualityTuningLevelType = Literal["MULTI_PASS_HQ", "SINGLE_PASS", "SINGLE_PASS_HQ"] +XavcAdaptiveQuantizationType = Literal["AUTO", "HIGH", "HIGHER", "LOW", "MAX", "MEDIUM", "OFF"] +XavcEntropyEncodingType = Literal["AUTO", "CABAC", "CAVLC"] +XavcFlickerAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +XavcFramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +XavcFramerateConversionAlgorithmType = Literal["DUPLICATE_DROP", "FRAMEFORMER", "INTERPOLATE"] +XavcGopBReferenceType = Literal["DISABLED", "ENABLED"] +XavcHdIntraCbgProfileClassType = Literal["CLASS_100", "CLASS_200", "CLASS_50"] +XavcHdProfileBitrateClassType = Literal["BITRATE_CLASS_25", "BITRATE_CLASS_35", "BITRATE_CLASS_50"] +XavcHdProfileQualityTuningLevelType = Literal["MULTI_PASS_HQ", "SINGLE_PASS", "SINGLE_PASS_HQ"] +XavcHdProfileTelecineType = Literal["HARD", "NONE"] +XavcInterlaceModeType = Literal["BOTTOM_FIELD", "FOLLOW_BOTTOM_FIELD", "FOLLOW_TOP_FIELD", "PROGRESSIVE", "TOP_FIELD"] +XavcProfileType = Literal["XAVC_4K", "XAVC_4K_INTRA_CBG", "XAVC_4K_INTRA_VBR", "XAVC_HD", "XAVC_HD_INTRA_CBG"] +XavcSlowPalType = Literal["DISABLED", "ENABLED"] +XavcSpatialAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +XavcTemporalAdaptiveQuantizationType = Literal["DISABLED", "ENABLED"] +MediaConvertServiceName = Literal["mediaconvert"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_endpoints", + "list_job_templates", + "list_jobs", + "list_presets", + "list_queues", + "search_jobs",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +PresetSettingsUnionTypeDef = Union['PresetSettingsTypeDef', 'PresetSettingsExtraOutputTypeDef'] +JobSettingsUnionTypeDef = Union['JobSettingsTypeDef', 'JobSettingsExtraOutputTypeDef'] +JobTemplateSettingsUnionTypeDef = Union[ 'JobTemplateSettingsTypeDef', 'JobTemplateSettingsExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/medialive_classes.py b/aws_resource_validator/pydantic_models/medialive_classes.py new file mode 100644 index 00000000..d0b0d9bf --- /dev/null +++ b/aws_resource_validator/pydantic_models/medialive_classes.py @@ -0,0 +1,3500 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.medialive_constants import * + +class AacSettingsTypeDef(BaseModel): + Bitrate: Optional[float] = None + CodingMode: Optional[AacCodingModeType] = None + InputType: Optional[AacInputTypeType] = None + Profile: Optional[AacProfileType] = None + RateControlMode: Optional[AacRateControlModeType] = None + RawFormat: Optional[AacRawFormatType] = None + SampleRate: Optional[float] = None + Spec: Optional[AacSpecType] = None + VbrQuality: Optional[AacVbrQualityType] = None + +class Ac3SettingsTypeDef(BaseModel): + Bitrate: Optional[float] = None + BitstreamMode: Optional[Ac3BitstreamModeType] = None + CodingMode: Optional[Ac3CodingModeType] = None + Dialnorm: Optional[int] = None + DrcProfile: Optional[Ac3DrcProfileType] = None + LfeFilter: Optional[Ac3LfeFilterType] = None + MetadataControl: Optional[Ac3MetadataControlType] = None + AttenuationControl: Optional[Ac3AttenuationControlType] = None + +class AcceptInputDeviceTransferRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class AccountConfigurationTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + +class AncillarySourceSettingsTypeDef(BaseModel): + SourceAncillaryChannelNumber: Optional[int] = None + +class ArchiveS3SettingsTypeDef(BaseModel): + CannedAcl: Optional[S3CannedAclType] = None + +class OutputLocationRefTypeDef(BaseModel): + DestinationRefId: Optional[str] = None + +class InputChannelLevelTypeDef(BaseModel): + Gain: int + InputChannel: int + +class Eac3AtmosSettingsTypeDef(BaseModel): + Bitrate: Optional[float] = None + CodingMode: Optional[Eac3AtmosCodingModeType] = None + Dialnorm: Optional[int] = None + DrcLine: Optional[Eac3AtmosDrcLineType] = None + DrcRf: Optional[Eac3AtmosDrcRfType] = None + HeightTrim: Optional[float] = None + SurroundTrim: Optional[float] = None + +class Eac3SettingsTypeDef(BaseModel): + AttenuationControl: Optional[Eac3AttenuationControlType] = None + Bitrate: Optional[float] = None + BitstreamMode: Optional[Eac3BitstreamModeType] = None + CodingMode: Optional[Eac3CodingModeType] = None + DcFilter: Optional[Eac3DcFilterType] = None + Dialnorm: Optional[int] = None + DrcLine: Optional[Eac3DrcLineType] = None + DrcRf: Optional[Eac3DrcRfType] = None + LfeControl: Optional[Eac3LfeControlType] = None + LfeFilter: Optional[Eac3LfeFilterType] = None + LoRoCenterMixLevel: Optional[float] = None + LoRoSurroundMixLevel: Optional[float] = None + LtRtCenterMixLevel: Optional[float] = None + LtRtSurroundMixLevel: Optional[float] = None + MetadataControl: Optional[Eac3MetadataControlType] = None + PassthroughControl: Optional[Eac3PassthroughControlType] = None + PhaseControl: Optional[Eac3PhaseControlType] = None + StereoDownmix: Optional[Eac3StereoDownmixType] = None + SurroundExMode: Optional[Eac3SurroundExModeType] = None + SurroundMode: Optional[Eac3SurroundModeType] = None + +class Mp2SettingsTypeDef(BaseModel): + Bitrate: Optional[float] = None + CodingMode: Optional[Mp2CodingModeType] = None + SampleRate: Optional[float] = None + +class WavSettingsTypeDef(BaseModel): + BitDepth: Optional[float] = None + CodingMode: Optional[WavCodingModeType] = None + SampleRate: Optional[float] = None + +class AudioNormalizationSettingsTypeDef(BaseModel): + Algorithm: Optional[AudioNormalizationAlgorithmType] = None + AlgorithmControl: Optional[Literal["CORRECT_AUDIO"]] = None + TargetLkfs: Optional[float] = None + +class AudioDolbyEDecodeTypeDef(BaseModel): + ProgramSelection: DolbyEProgramSelectionType + +class AudioHlsRenditionSelectionTypeDef(BaseModel): + GroupId: str + Name: str + +class AudioLanguageSelectionTypeDef(BaseModel): + LanguageCode: str + LanguageSelectionPolicy: Optional[AudioLanguageSelectionPolicyType] = None + +class InputLocationTypeDef(BaseModel): + Uri: str + PasswordParam: Optional[str] = None + Username: Optional[str] = None + +class AudioPidSelectionTypeDef(BaseModel): + Pid: int + +class AudioSilenceFailoverSettingsTypeDef(BaseModel): + AudioSelectorName: str + AudioSilenceThresholdMsec: Optional[int] = None + +class AudioTrackTypeDef(BaseModel): + Track: int + +class EsamTypeDef(BaseModel): + AcquisitionPointId: str + PoisEndpoint: str + AdAvailOffset: Optional[int] = None + PasswordParam: Optional[str] = None + Username: Optional[str] = None + ZoneIdentity: Optional[str] = None + +class Scte35SpliceInsertTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + NoRegionalBlackoutFlag: Optional[Scte35SpliceInsertNoRegionalBlackoutBehaviorType] = None + WebDeliveryAllowedFlag: Optional[Scte35SpliceInsertWebDeliveryAllowedBehaviorType] = None + +class Scte35TimeSignalAposTypeDef(BaseModel): + AdAvailOffset: Optional[int] = None + NoRegionalBlackoutFlag: Optional[Scte35AposNoRegionalBlackoutBehaviorType] = None + WebDeliveryAllowedFlag: Optional[Scte35AposWebDeliveryAllowedBehaviorType] = None + +class BatchDeleteRequestRequestTypeDef(BaseModel): + ChannelIds: Optional[Sequence[str]] = None + InputIds: Optional[Sequence[str]] = None + InputSecurityGroupIds: Optional[Sequence[str]] = None + MultiplexIds: Optional[Sequence[str]] = None + +class BatchFailedResultModelTypeDef(BaseModel): + Arn: Optional[str] = None + Code: Optional[str] = None + Id: Optional[str] = None + Message: Optional[str] = None + +class BatchSuccessfulResultModelTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + State: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchScheduleActionDeleteRequestTypeDef(BaseModel): + ActionNames: Sequence[str] + +class BatchStartRequestRequestTypeDef(BaseModel): + ChannelIds: Optional[Sequence[str]] = None + MultiplexIds: Optional[Sequence[str]] = None + +class BatchStopRequestRequestTypeDef(BaseModel): + ChannelIds: Optional[Sequence[str]] = None + MultiplexIds: Optional[Sequence[str]] = None + +class CancelInputDeviceTransferRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class EbuTtDDestinationSettingsTypeDef(BaseModel): + CopyrightHolder: Optional[str] = None + FillLineGap: Optional[EbuTtDFillLineGapControlType] = None + FontFamily: Optional[str] = None + StyleControl: Optional[EbuTtDDestinationStyleControlType] = None + +class TtmlDestinationSettingsTypeDef(BaseModel): + StyleControl: Optional[TtmlDestinationStyleControlType] = None + +class WebvttDestinationSettingsTypeDef(BaseModel): + StyleControl: Optional[WebvttDestinationStyleControlType] = None + +class CaptionLanguageMappingTypeDef(BaseModel): + CaptionChannel: int + LanguageCode: str + LanguageDescription: str + +class CaptionRectangleTypeDef(BaseModel): + Height: float + LeftOffset: float + TopOffset: float + Width: float + +class DvbSubSourceSettingsTypeDef(BaseModel): + OcrLanguage: Optional[DvbSubOcrLanguageType] = None + Pid: Optional[int] = None + +class EmbeddedSourceSettingsTypeDef(BaseModel): + Convert608To708: Optional[EmbeddedConvert608To708Type] = None + Scte20Detection: Optional[EmbeddedScte20DetectionType] = None + Source608ChannelNumber: Optional[int] = None + Source608TrackNumber: Optional[int] = None + +class Scte20SourceSettingsTypeDef(BaseModel): + Convert608To708: Optional[Scte20Convert608To708Type] = None + Source608ChannelNumber: Optional[int] = None + +class Scte27SourceSettingsTypeDef(BaseModel): + OcrLanguage: Optional[Scte27OcrLanguageType] = None + Pid: Optional[int] = None + +class CdiInputSpecificationTypeDef(BaseModel): + Resolution: Optional[CdiInputResolutionType] = None + +class ChannelEgressEndpointTypeDef(BaseModel): + SourceIp: Optional[str] = None + +class InputSpecificationTypeDef(BaseModel): + Codec: Optional[InputCodecType] = None + MaximumBitrate: Optional[InputMaximumBitrateType] = None + Resolution: Optional[InputResolutionType] = None + +class MaintenanceStatusTypeDef(BaseModel): + MaintenanceDay: Optional[MaintenanceDayType] = None + MaintenanceDeadline: Optional[str] = None + MaintenanceScheduledDate: Optional[str] = None + MaintenanceStartTime: Optional[str] = None + +class VpcOutputSettingsDescriptionTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + NetworkInterfaceIds: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + +class PipelineDetailTypeDef(BaseModel): + ActiveInputAttachmentName: Optional[str] = None + ActiveInputSwitchActionName: Optional[str] = None + ActiveMotionGraphicsActionName: Optional[str] = None + ActiveMotionGraphicsUri: Optional[str] = None + PipelineId: Optional[str] = None + +class ClaimDeviceRequestRequestTypeDef(BaseModel): + Id: Optional[str] = None + +class CloudWatchAlarmTemplateGroupSummaryTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Id: str + Name: str + TemplateCount: int + Description: Optional[str] = None + ModifiedAt: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class CloudWatchAlarmTemplateSummaryTypeDef(BaseModel): + Arn: str + ComparisonOperator: CloudWatchAlarmTemplateComparisonOperatorType + CreatedAt: datetime + EvaluationPeriods: int + GroupId: str + Id: str + MetricName: str + Name: str + Period: int + Statistic: CloudWatchAlarmTemplateStatisticType + TargetResourceType: CloudWatchAlarmTemplateTargetResourceTypeType + Threshold: float + TreatMissingData: CloudWatchAlarmTemplateTreatMissingDataType + DatapointsToAlarm: Optional[int] = None + Description: Optional[str] = None + ModifiedAt: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class CmafIngestOutputSettingsTypeDef(BaseModel): + NameModifier: Optional[str] = None + +class ColorCorrectionTypeDef(BaseModel): + InputColorSpace: ColorSpaceType + OutputColorSpace: ColorSpaceType + Uri: str + +class MaintenanceCreateSettingsTypeDef(BaseModel): + MaintenanceDay: Optional[MaintenanceDayType] = None + MaintenanceStartTime: Optional[str] = None + +class VpcOutputSettingsTypeDef(BaseModel): + SubnetIds: Sequence[str] + PublicAddressAllocationIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class CreateCloudWatchAlarmTemplateGroupRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateCloudWatchAlarmTemplateRequestRequestTypeDef(BaseModel): + ComparisonOperator: CloudWatchAlarmTemplateComparisonOperatorType + EvaluationPeriods: int + GroupIdentifier: str + MetricName: str + Name: str + Period: int + Statistic: CloudWatchAlarmTemplateStatisticType + TargetResourceType: CloudWatchAlarmTemplateTargetResourceTypeType + Threshold: float + TreatMissingData: CloudWatchAlarmTemplateTreatMissingDataType + DatapointsToAlarm: Optional[int] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateEventBridgeRuleTemplateGroupRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class EventBridgeRuleTemplateTargetTypeDef(BaseModel): + Arn: str + +class InputDestinationRequestTypeDef(BaseModel): + StreamName: Optional[str] = None + +class InputDeviceSettingsTypeDef(BaseModel): + Id: Optional[str] = None + +class InputSourceRequestTypeDef(BaseModel): + PasswordParam: Optional[str] = None + Url: Optional[str] = None + Username: Optional[str] = None + +class InputVpcRequestTypeDef(BaseModel): + SubnetIds: Sequence[str] + SecurityGroupIds: Optional[Sequence[str]] = None + +class MediaConnectFlowRequestTypeDef(BaseModel): + FlowArn: Optional[str] = None + +class InputWhitelistRuleCidrTypeDef(BaseModel): + Cidr: Optional[str] = None + +class MultiplexSettingsTypeDef(BaseModel): + TransportStreamBitrate: int + TransportStreamId: int + MaximumVideoBufferDelayMilliseconds: Optional[int] = None + TransportStreamReservedBitrate: Optional[int] = None + +class CreatePartnerInputRequestRequestTypeDef(BaseModel): + InputId: str + RequestId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateSignalMapRequestRequestTypeDef(BaseModel): + DiscoveryEntryPointArn: str + Name: str + CloudWatchAlarmTemplateGroupIdentifiers: Optional[Sequence[str]] = None + Description: Optional[str] = None + EventBridgeRuleTemplateGroupIdentifiers: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class MonitorDeploymentTypeDef(BaseModel): + Status: SignalMapMonitorDeploymentStatusType + DetailsUri: Optional[str] = None + ErrorMessage: Optional[str] = None + +class SuccessfulMonitorDeploymentTypeDef(BaseModel): + DetailsUri: str + Status: SignalMapMonitorDeploymentStatusType + +class CreateTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Optional[Mapping[str, str]] = None + +class DeleteChannelRequestRequestTypeDef(BaseModel): + ChannelId: str + +class DeleteCloudWatchAlarmTemplateGroupRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteCloudWatchAlarmTemplateRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteEventBridgeRuleTemplateGroupRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteEventBridgeRuleTemplateRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteInputRequestRequestTypeDef(BaseModel): + InputId: str + +class DeleteInputSecurityGroupRequestRequestTypeDef(BaseModel): + InputSecurityGroupId: str + +class DeleteMultiplexProgramRequestRequestTypeDef(BaseModel): + MultiplexId: str + ProgramName: str + +class MultiplexProgramPacketIdentifiersMapTypeDef(BaseModel): + AudioPids: Optional[List[int]] = None + DvbSubPids: Optional[List[int]] = None + DvbTeletextPid: Optional[int] = None + EtvPlatformPid: Optional[int] = None + EtvSignalPid: Optional[int] = None + KlvDataPids: Optional[List[int]] = None + PcrPid: Optional[int] = None + PmtPid: Optional[int] = None + PrivateMetadataPid: Optional[int] = None + Scte27Pids: Optional[List[int]] = None + Scte35Pid: Optional[int] = None + TimedMetadataPid: Optional[int] = None + VideoPid: Optional[int] = None + +class MultiplexProgramPipelineDetailTypeDef(BaseModel): + ActiveChannelPipeline: Optional[str] = None + PipelineId: Optional[str] = None + +class DeleteMultiplexRequestRequestTypeDef(BaseModel): + MultiplexId: str + +class DeleteReservationRequestRequestTypeDef(BaseModel): + ReservationId: str + +class RenewalSettingsTypeDef(BaseModel): + AutomaticRenewal: Optional[ReservationAutomaticRenewalType] = None + RenewalCount: Optional[int] = None + +class ReservationResourceSpecificationTypeDef(BaseModel): + ChannelClass: Optional[ChannelClassType] = None + Codec: Optional[ReservationCodecType] = None + MaximumBitrate: Optional[ReservationMaximumBitrateType] = None + MaximumFramerate: Optional[ReservationMaximumFramerateType] = None + Resolution: Optional[ReservationResolutionType] = None + ResourceType: Optional[ReservationResourceTypeType] = None + SpecialFeature: Optional[ReservationSpecialFeatureType] = None + VideoQuality: Optional[ReservationVideoQualityType] = None + +class DeleteScheduleRequestRequestTypeDef(BaseModel): + ChannelId: str + +class DeleteSignalMapRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeChannelRequestRequestTypeDef(BaseModel): + ChannelId: str + +class DescribeInputDeviceRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class InputDeviceHdSettingsTypeDef(BaseModel): + ActiveInput: Optional[InputDeviceActiveInputType] = None + ConfiguredInput: Optional[InputDeviceConfiguredInputType] = None + DeviceState: Optional[InputDeviceStateType] = None + Framerate: Optional[float] = None + Height: Optional[int] = None + MaxBitrate: Optional[int] = None + ScanType: Optional[InputDeviceScanTypeType] = None + Width: Optional[int] = None + LatencyMs: Optional[int] = None + +class InputDeviceNetworkSettingsTypeDef(BaseModel): + DnsAddresses: Optional[List[str]] = None + Gateway: Optional[str] = None + IpAddress: Optional[str] = None + IpScheme: Optional[InputDeviceIpSchemeType] = None + SubnetMask: Optional[str] = None + +class DescribeInputDeviceThumbnailRequestRequestTypeDef(BaseModel): + InputDeviceId: str + Accept: Literal["image/jpeg"] + +class DescribeInputRequestRequestTypeDef(BaseModel): + InputId: str + +class InputSourceTypeDef(BaseModel): + PasswordParam: Optional[str] = None + Url: Optional[str] = None + Username: Optional[str] = None + +class MediaConnectFlowTypeDef(BaseModel): + FlowArn: Optional[str] = None + +class DescribeInputSecurityGroupRequestRequestTypeDef(BaseModel): + InputSecurityGroupId: str + +class InputWhitelistRuleTypeDef(BaseModel): + Cidr: Optional[str] = None + +class DescribeMultiplexProgramRequestRequestTypeDef(BaseModel): + MultiplexId: str + ProgramName: str + +class DescribeMultiplexRequestRequestTypeDef(BaseModel): + MultiplexId: str + +class DescribeOfferingRequestRequestTypeDef(BaseModel): + OfferingId: str + +class DescribeReservationRequestRequestTypeDef(BaseModel): + ReservationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeScheduleRequestRequestTypeDef(BaseModel): + ChannelId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeThumbnailsRequestRequestTypeDef(BaseModel): + ChannelId: str + PipelineId: str + ThumbnailType: str + +class DvbNitSettingsTypeDef(BaseModel): + NetworkId: int + NetworkName: str + RepInterval: Optional[int] = None + +class DvbSdtSettingsTypeDef(BaseModel): + OutputSdt: Optional[DvbSdtOutputSdtType] = None + RepInterval: Optional[int] = None + ServiceName: Optional[str] = None + ServiceProviderName: Optional[str] = None + +class DvbTdtSettingsTypeDef(BaseModel): + RepInterval: Optional[int] = None + +class FeatureActivationsTypeDef(BaseModel): + InputPrepareScheduleActions: Optional[ FeatureActivationsInputPrepareScheduleActionsType ] = None + OutputStaticImageOverlayScheduleActions: Optional[ FeatureActivationsOutputStaticImageOverlayScheduleActionsType ] = None + +class NielsenConfigurationTypeDef(BaseModel): + DistributorId: Optional[str] = None + NielsenPcmToId3Tagging: Optional[NielsenPcmToId3TaggingStateType] = None + +class ThumbnailConfigurationTypeDef(BaseModel): + State: ThumbnailStateType + +class TimecodeConfigTypeDef(BaseModel): + Source: TimecodeConfigSourceType + SyncThreshold: Optional[int] = None + +class EpochLockingSettingsTypeDef(BaseModel): + CustomEpoch: Optional[str] = None + JamSyncTime: Optional[str] = None + +class EventBridgeRuleTemplateGroupSummaryTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Id: str + Name: str + TemplateCount: int + Description: Optional[str] = None + ModifiedAt: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class EventBridgeRuleTemplateSummaryTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + EventTargetCount: int + EventType: EventBridgeRuleTemplateEventTypeType + GroupId: str + Id: str + Name: str + Description: Optional[str] = None + ModifiedAt: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class InputLossFailoverSettingsTypeDef(BaseModel): + InputLossThresholdMsec: Optional[int] = None + +class VideoBlackFailoverSettingsTypeDef(BaseModel): + BlackDetectThreshold: Optional[float] = None + VideoBlackThresholdMsec: Optional[int] = None + +class FecOutputSettingsTypeDef(BaseModel): + ColumnDepth: Optional[int] = None + IncludeFec: Optional[FecOutputIncludeFecType] = None + RowLength: Optional[int] = None + +class FixedModeScheduleActionStartSettingsTypeDef(BaseModel): + Time: str + +class Fmp4HlsSettingsTypeDef(BaseModel): + AudioRenditionSets: Optional[str] = None + NielsenId3Behavior: Optional[Fmp4NielsenId3BehaviorType] = None + TimedMetadataBehavior: Optional[Fmp4TimedMetadataBehaviorType] = None + +class FollowModeScheduleActionStartSettingsTypeDef(BaseModel): + FollowPoint: FollowPointType + ReferenceActionName: str + +class FrameCaptureS3SettingsTypeDef(BaseModel): + CannedAcl: Optional[S3CannedAclType] = None + +class FrameCaptureOutputSettingsTypeDef(BaseModel): + NameModifier: Optional[str] = None + +class TimecodeBurninSettingsTypeDef(BaseModel): + FontSize: TimecodeBurninFontSizeType + Position: TimecodeBurninPositionType + Prefix: Optional[str] = None + +class GetCloudWatchAlarmTemplateGroupRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetCloudWatchAlarmTemplateRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetEventBridgeRuleTemplateGroupRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetEventBridgeRuleTemplateRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetSignalMapRequestRequestTypeDef(BaseModel): + Identifier: str + +class H264ColorSpaceSettingsOutputTypeDef(BaseModel): + ColorSpacePassthroughSettings: Optional[Dict[str, Any]] = None + Rec601Settings: Optional[Dict[str, Any]] = None + Rec709Settings: Optional[Dict[str, Any]] = None + +class H264ColorSpaceSettingsTypeDef(BaseModel): + ColorSpacePassthroughSettings: Optional[Mapping[str, Any]] = None + Rec601Settings: Optional[Mapping[str, Any]] = None + Rec709Settings: Optional[Mapping[str, Any]] = None + +class TemporalFilterSettingsTypeDef(BaseModel): + PostFilterSharpening: Optional[TemporalFilterPostFilterSharpeningType] = None + Strength: Optional[TemporalFilterStrengthType] = None + +class Hdr10SettingsTypeDef(BaseModel): + MaxCll: Optional[int] = None + MaxFall: Optional[int] = None + +class HlsAkamaiSettingsTypeDef(BaseModel): + ConnectionRetryInterval: Optional[int] = None + FilecacheDuration: Optional[int] = None + HttpTransferMode: Optional[HlsAkamaiHttpTransferModeType] = None + NumRetries: Optional[int] = None + RestartDelay: Optional[int] = None + Salt: Optional[str] = None + Token: Optional[str] = None + +class HlsBasicPutSettingsTypeDef(BaseModel): + ConnectionRetryInterval: Optional[int] = None + FilecacheDuration: Optional[int] = None + NumRetries: Optional[int] = None + RestartDelay: Optional[int] = None + +class HlsMediaStoreSettingsTypeDef(BaseModel): + ConnectionRetryInterval: Optional[int] = None + FilecacheDuration: Optional[int] = None + MediaStoreStorageClass: Optional[Literal["TEMPORAL"]] = None + NumRetries: Optional[int] = None + RestartDelay: Optional[int] = None + +class HlsS3SettingsTypeDef(BaseModel): + CannedAcl: Optional[S3CannedAclType] = None + +class HlsWebdavSettingsTypeDef(BaseModel): + ConnectionRetryInterval: Optional[int] = None + FilecacheDuration: Optional[int] = None + HttpTransferMode: Optional[HlsWebdavHttpTransferModeType] = None + NumRetries: Optional[int] = None + RestartDelay: Optional[int] = None + +class HlsId3SegmentTaggingScheduleActionSettingsTypeDef(BaseModel): + Tag: Optional[str] = None + Id3: Optional[str] = None + +class HlsInputSettingsTypeDef(BaseModel): + Bandwidth: Optional[int] = None + BufferSegments: Optional[int] = None + Retries: Optional[int] = None + RetryInterval: Optional[int] = None + Scte35Source: Optional[HlsScte35SourceTypeType] = None + +class HlsTimedMetadataScheduleActionSettingsTypeDef(BaseModel): + Id3: str + +class StartTimecodeTypeDef(BaseModel): + Timecode: Optional[str] = None + +class StopTimecodeTypeDef(BaseModel): + LastFrameClippingBehavior: Optional[LastFrameClippingBehaviorType] = None + Timecode: Optional[str] = None + +class InputDestinationVpcTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + +class InputDeviceConfigurableAudioChannelPairConfigTypeDef(BaseModel): + Id: Optional[int] = None + Profile: Optional[InputDeviceConfigurableAudioChannelPairProfileType] = None + +class InputDeviceMediaConnectConfigurableSettingsTypeDef(BaseModel): + FlowArn: Optional[str] = None + RoleArn: Optional[str] = None + SecretArn: Optional[str] = None + SourceName: Optional[str] = None + +class InputDeviceMediaConnectSettingsTypeDef(BaseModel): + FlowArn: Optional[str] = None + RoleArn: Optional[str] = None + SecretArn: Optional[str] = None + SourceName: Optional[str] = None + +class InputDeviceRequestTypeDef(BaseModel): + Id: Optional[str] = None + +class InputDeviceUhdAudioChannelPairConfigTypeDef(BaseModel): + Id: Optional[int] = None + Profile: Optional[InputDeviceUhdAudioChannelPairProfileType] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCloudWatchAlarmTemplateGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Scope: Optional[str] = None + SignalMapIdentifier: Optional[str] = None + +class ListCloudWatchAlarmTemplatesRequestRequestTypeDef(BaseModel): + GroupIdentifier: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Scope: Optional[str] = None + SignalMapIdentifier: Optional[str] = None + +class ListEventBridgeRuleTemplateGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SignalMapIdentifier: Optional[str] = None + +class ListEventBridgeRuleTemplatesRequestRequestTypeDef(BaseModel): + GroupIdentifier: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SignalMapIdentifier: Optional[str] = None + +class ListInputDeviceTransfersRequestRequestTypeDef(BaseModel): + TransferType: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TransferringInputDeviceSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Message: Optional[str] = None + TargetCustomerId: Optional[str] = None + TransferType: Optional[InputDeviceTransferTypeType] = None + +class ListInputDevicesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInputSecurityGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInputsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMultiplexProgramsRequestRequestTypeDef(BaseModel): + MultiplexId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MultiplexProgramSummaryTypeDef(BaseModel): + ChannelId: Optional[str] = None + ProgramName: Optional[str] = None + +class ListMultiplexesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOfferingsRequestRequestTypeDef(BaseModel): + ChannelClass: Optional[str] = None + ChannelConfiguration: Optional[str] = None + Codec: Optional[str] = None + Duration: Optional[str] = None + MaxResults: Optional[int] = None + MaximumBitrate: Optional[str] = None + MaximumFramerate: Optional[str] = None + NextToken: Optional[str] = None + Resolution: Optional[str] = None + ResourceType: Optional[str] = None + SpecialFeature: Optional[str] = None + VideoQuality: Optional[str] = None + +class ListReservationsRequestRequestTypeDef(BaseModel): + ChannelClass: Optional[str] = None + Codec: Optional[str] = None + MaxResults: Optional[int] = None + MaximumBitrate: Optional[str] = None + MaximumFramerate: Optional[str] = None + NextToken: Optional[str] = None + Resolution: Optional[str] = None + ResourceType: Optional[str] = None + SpecialFeature: Optional[str] = None + VideoQuality: Optional[str] = None + +class ListSignalMapsRequestRequestTypeDef(BaseModel): + CloudWatchAlarmTemplateGroupIdentifier: Optional[str] = None + EventBridgeRuleTemplateGroupIdentifier: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SignalMapSummaryTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Id: str + MonitorDeploymentStatus: SignalMapMonitorDeploymentStatusType + Name: str + Status: SignalMapStatusType + Description: Optional[str] = None + ModifiedAt: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class M3u8SettingsTypeDef(BaseModel): + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[str] = None + EcmPid: Optional[str] = None + NielsenId3Behavior: Optional[M3u8NielsenId3BehaviorType] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M3u8PcrControlType] = None + PcrPeriod: Optional[int] = None + PcrPid: Optional[str] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[str] = None + ProgramNum: Optional[int] = None + Scte35Behavior: Optional[M3u8Scte35BehaviorType] = None + Scte35Pid: Optional[str] = None + TimedMetadataBehavior: Optional[M3u8TimedMetadataBehaviorType] = None + TimedMetadataPid: Optional[str] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[str] = None + KlvBehavior: Optional[M3u8KlvBehaviorType] = None + KlvDataPids: Optional[str] = None + +class MaintenanceUpdateSettingsTypeDef(BaseModel): + MaintenanceDay: Optional[MaintenanceDayType] = None + MaintenanceScheduledDate: Optional[str] = None + MaintenanceStartTime: Optional[str] = None + +class MediaPackageOutputDestinationSettingsTypeDef(BaseModel): + ChannelId: Optional[str] = None + +class MediaResourceNeighborTypeDef(BaseModel): + Arn: str + Name: Optional[str] = None + +class MotionGraphicsActivateScheduleActionSettingsTypeDef(BaseModel): + Duration: Optional[int] = None + PasswordParam: Optional[str] = None + Url: Optional[str] = None + Username: Optional[str] = None + +class MotionGraphicsSettingsOutputTypeDef(BaseModel): + HtmlMotionGraphicsSettings: Optional[Dict[str, Any]] = None + +class MotionGraphicsSettingsTypeDef(BaseModel): + HtmlMotionGraphicsSettings: Optional[Mapping[str, Any]] = None + +class MsSmoothOutputSettingsTypeDef(BaseModel): + H265PackagingType: Optional[MsSmoothH265PackagingTypeType] = None + NameModifier: Optional[str] = None + +class MultiplexMediaConnectOutputDestinationSettingsTypeDef(BaseModel): + EntitlementArn: Optional[str] = None + +class MultiplexProgramChannelDestinationSettingsTypeDef(BaseModel): + MultiplexId: Optional[str] = None + ProgramName: Optional[str] = None + +class MultiplexProgramServiceDescriptorTypeDef(BaseModel): + ProviderName: str + ServiceName: str + +class MultiplexSettingsSummaryTypeDef(BaseModel): + TransportStreamBitrate: Optional[int] = None + +class MultiplexStatmuxVideoSettingsTypeDef(BaseModel): + MaximumBitrate: Optional[int] = None + MinimumBitrate: Optional[int] = None + Priority: Optional[int] = None + +class NielsenCBETTypeDef(BaseModel): + CbetCheckDigitString: str + CbetStepaside: NielsenWatermarksCbetStepasideType + Csid: str + +class NielsenNaesIiNwTypeDef(BaseModel): + CheckDigitString: str + Sid: float + Timezone: Optional[NielsenWatermarkTimezonesType] = None + +class OutputDestinationSettingsTypeDef(BaseModel): + PasswordParam: Optional[str] = None + StreamName: Optional[str] = None + Url: Optional[str] = None + Username: Optional[str] = None + +class RtmpGroupSettingsOutputTypeDef(BaseModel): + AdMarkers: Optional[List[Literal["ON_CUE_POINT_SCTE35"]]] = None + AuthenticationScheme: Optional[AuthenticationSchemeType] = None + CacheFullBehavior: Optional[RtmpCacheFullBehaviorType] = None + CacheLength: Optional[int] = None + CaptionData: Optional[RtmpCaptionDataType] = None + InputLossAction: Optional[InputLossActionForRtmpOutType] = None + RestartDelay: Optional[int] = None + IncludeFillerNalUnits: Optional[IncludeFillerNalUnitsType] = None + +class UdpGroupSettingsTypeDef(BaseModel): + InputLossAction: Optional[InputLossActionForUdpOutType] = None + TimedMetadataId3Frame: Optional[UdpTimedMetadataId3FrameType] = None + TimedMetadataId3Period: Optional[int] = None + +class RtmpGroupSettingsTypeDef(BaseModel): + AdMarkers: Optional[Sequence[Literal["ON_CUE_POINT_SCTE35"]]] = None + AuthenticationScheme: Optional[AuthenticationSchemeType] = None + CacheFullBehavior: Optional[RtmpCacheFullBehaviorType] = None + CacheLength: Optional[int] = None + CaptionData: Optional[RtmpCaptionDataType] = None + InputLossAction: Optional[InputLossActionForRtmpOutType] = None + RestartDelay: Optional[int] = None + IncludeFillerNalUnits: Optional[IncludeFillerNalUnitsType] = None + +class PipelinePauseStateSettingsTypeDef(BaseModel): + PipelineId: PipelineIdType + +class RebootInputDeviceRequestRequestTypeDef(BaseModel): + InputDeviceId: str + Force: Optional[RebootInputDeviceForceType] = None + +class RejectInputDeviceTransferRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class RestartChannelPipelinesRequestRequestTypeDef(BaseModel): + ChannelId: str + PipelineIds: Optional[Sequence[ChannelPipelineIdToRestartType]] = None + +class Scte35InputScheduleActionSettingsTypeDef(BaseModel): + Mode: Scte35InputModeType + InputAttachmentNameReference: Optional[str] = None + +class Scte35ReturnToNetworkScheduleActionSettingsTypeDef(BaseModel): + SpliceEventId: int + +class Scte35SpliceInsertScheduleActionSettingsTypeDef(BaseModel): + SpliceEventId: int + Duration: Optional[int] = None + +class StaticImageDeactivateScheduleActionSettingsTypeDef(BaseModel): + FadeOut: Optional[int] = None + Layer: Optional[int] = None + +class StaticImageOutputDeactivateScheduleActionSettingsExtraOutputTypeDef(BaseModel): + OutputNames: List[str] + FadeOut: Optional[int] = None + Layer: Optional[int] = None + +class StaticImageOutputDeactivateScheduleActionSettingsOutputTypeDef(BaseModel): + OutputNames: List[str] + FadeOut: Optional[int] = None + Layer: Optional[int] = None + +class StaticImageOutputDeactivateScheduleActionSettingsTypeDef(BaseModel): + OutputNames: Sequence[str] + FadeOut: Optional[int] = None + Layer: Optional[int] = None + +class Scte35DeliveryRestrictionsTypeDef(BaseModel): + ArchiveAllowedFlag: Scte35ArchiveAllowedFlagType + DeviceRestrictions: Scte35DeviceRestrictionsType + NoRegionalBlackoutFlag: Scte35NoRegionalBlackoutFlagType + WebDeliveryAllowedFlag: Scte35WebDeliveryAllowedFlagType + +class StartChannelRequestRequestTypeDef(BaseModel): + ChannelId: str + +class StartDeleteMonitorDeploymentRequestRequestTypeDef(BaseModel): + Identifier: str + +class StartInputDeviceMaintenanceWindowRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class StartInputDeviceRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class StartMonitorDeploymentRequestRequestTypeDef(BaseModel): + Identifier: str + DryRun: Optional[bool] = None + +class StartMultiplexRequestRequestTypeDef(BaseModel): + MultiplexId: str + +class StartUpdateSignalMapRequestRequestTypeDef(BaseModel): + Identifier: str + CloudWatchAlarmTemplateGroupIdentifiers: Optional[Sequence[str]] = None + Description: Optional[str] = None + DiscoveryEntryPointArn: Optional[str] = None + EventBridgeRuleTemplateGroupIdentifiers: Optional[Sequence[str]] = None + ForceRediscovery: Optional[bool] = None + Name: Optional[str] = None + +class StopChannelRequestRequestTypeDef(BaseModel): + ChannelId: str + +class StopInputDeviceRequestRequestTypeDef(BaseModel): + InputDeviceId: str + +class StopMultiplexRequestRequestTypeDef(BaseModel): + MultiplexId: str + +class ThumbnailTypeDef(BaseModel): + Body: Optional[str] = None + ContentType: Optional[str] = None + ThumbnailType: Optional[ThumbnailTypeType] = None + TimeStamp: Optional[datetime] = None + +class TransferInputDeviceRequestRequestTypeDef(BaseModel): + InputDeviceId: str + TargetCustomerId: Optional[str] = None + TargetRegion: Optional[str] = None + TransferMessage: Optional[str] = None + +class UpdateCloudWatchAlarmTemplateGroupRequestRequestTypeDef(BaseModel): + Identifier: str + Description: Optional[str] = None + +class UpdateCloudWatchAlarmTemplateRequestRequestTypeDef(BaseModel): + Identifier: str + ComparisonOperator: Optional[CloudWatchAlarmTemplateComparisonOperatorType] = None + DatapointsToAlarm: Optional[int] = None + Description: Optional[str] = None + EvaluationPeriods: Optional[int] = None + GroupIdentifier: Optional[str] = None + MetricName: Optional[str] = None + Name: Optional[str] = None + Period: Optional[int] = None + Statistic: Optional[CloudWatchAlarmTemplateStatisticType] = None + TargetResourceType: Optional[CloudWatchAlarmTemplateTargetResourceTypeType] = None + Threshold: Optional[float] = None + TreatMissingData: Optional[CloudWatchAlarmTemplateTreatMissingDataType] = None + +class UpdateEventBridgeRuleTemplateGroupRequestRequestTypeDef(BaseModel): + Identifier: str + Description: Optional[str] = None + +class VideoSelectorPidTypeDef(BaseModel): + Pid: Optional[int] = None + +class VideoSelectorProgramIdTypeDef(BaseModel): + ProgramId: Optional[int] = None + +class UpdateAccountConfigurationRequestRequestTypeDef(BaseModel): + AccountConfiguration: Optional[AccountConfigurationTypeDef] = None + +class ArchiveCdnSettingsTypeDef(BaseModel): + ArchiveS3Settings: Optional[ArchiveS3SettingsTypeDef] = None + +class CmafIngestGroupSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + NielsenId3Behavior: Optional[CmafNielsenId3BehaviorType] = None + Scte35Type: Optional[Scte35TypeType] = None + SegmentLength: Optional[int] = None + SegmentLengthUnits: Optional[CmafIngestSegmentLengthUnitsType] = None + SendDelayMs: Optional[int] = None + +class MediaPackageGroupSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + +class MsSmoothGroupSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + AcquisitionPointId: Optional[str] = None + AudioOnlyTimecodeControl: Optional[SmoothGroupAudioOnlyTimecodeControlType] = None + CertificateMode: Optional[SmoothGroupCertificateModeType] = None + ConnectionRetryInterval: Optional[int] = None + EventId: Optional[str] = None + EventIdMode: Optional[SmoothGroupEventIdModeType] = None + EventStopBehavior: Optional[SmoothGroupEventStopBehaviorType] = None + FilecacheDuration: Optional[int] = None + FragmentLength: Optional[int] = None + InputLossAction: Optional[InputLossActionForMsSmoothOutType] = None + NumRetries: Optional[int] = None + RestartDelay: Optional[int] = None + SegmentationMode: Optional[SmoothGroupSegmentationModeType] = None + SendDelayMs: Optional[int] = None + SparseTrackType: Optional[SmoothGroupSparseTrackTypeType] = None + StreamManifestBehavior: Optional[SmoothGroupStreamManifestBehaviorType] = None + TimestampOffset: Optional[str] = None + TimestampOffsetMode: Optional[SmoothGroupTimestampOffsetModeType] = None + +class MultiplexOutputSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + +class RtmpOutputSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + CertificateMode: Optional[RtmpOutputCertificateModeType] = None + ConnectionRetryInterval: Optional[int] = None + NumRetries: Optional[int] = None + +class AudioChannelMappingOutputTypeDef(BaseModel): + InputChannelLevels: List[InputChannelLevelTypeDef] + OutputChannel: int + +class AudioChannelMappingTypeDef(BaseModel): + InputChannelLevels: Sequence[InputChannelLevelTypeDef] + OutputChannel: int + +class AudioCodecSettingsOutputTypeDef(BaseModel): + AacSettings: Optional[AacSettingsTypeDef] = None + Ac3Settings: Optional[Ac3SettingsTypeDef] = None + Eac3AtmosSettings: Optional[Eac3AtmosSettingsTypeDef] = None + Eac3Settings: Optional[Eac3SettingsTypeDef] = None + Mp2Settings: Optional[Mp2SettingsTypeDef] = None + PassThroughSettings: Optional[Dict[str, Any]] = None + WavSettings: Optional[WavSettingsTypeDef] = None + +class AudioCodecSettingsTypeDef(BaseModel): + AacSettings: Optional[AacSettingsTypeDef] = None + Ac3Settings: Optional[Ac3SettingsTypeDef] = None + Eac3AtmosSettings: Optional[Eac3AtmosSettingsTypeDef] = None + Eac3Settings: Optional[Eac3SettingsTypeDef] = None + Mp2Settings: Optional[Mp2SettingsTypeDef] = None + PassThroughSettings: Optional[Mapping[str, Any]] = None + WavSettings: Optional[WavSettingsTypeDef] = None + +class AudioOnlyHlsSettingsTypeDef(BaseModel): + AudioGroupId: Optional[str] = None + AudioOnlyImage: Optional[InputLocationTypeDef] = None + AudioTrackType: Optional[AudioOnlyHlsTrackTypeType] = None + SegmentType: Optional[AudioOnlyHlsSegmentTypeType] = None + +class AvailBlankingTypeDef(BaseModel): + AvailBlankingImage: Optional[InputLocationTypeDef] = None + State: Optional[AvailBlankingStateType] = None + +class BlackoutSlateTypeDef(BaseModel): + BlackoutSlateImage: Optional[InputLocationTypeDef] = None + NetworkEndBlackout: Optional[BlackoutSlateNetworkEndBlackoutType] = None + NetworkEndBlackoutImage: Optional[InputLocationTypeDef] = None + NetworkId: Optional[str] = None + State: Optional[BlackoutSlateStateType] = None + +class BurnInDestinationSettingsTypeDef(BaseModel): + Alignment: Optional[BurnInAlignmentType] = None + BackgroundColor: Optional[BurnInBackgroundColorType] = None + BackgroundOpacity: Optional[int] = None + Font: Optional[InputLocationTypeDef] = None + FontColor: Optional[BurnInFontColorType] = None + FontOpacity: Optional[int] = None + FontResolution: Optional[int] = None + FontSize: Optional[str] = None + OutlineColor: Optional[BurnInOutlineColorType] = None + OutlineSize: Optional[int] = None + ShadowColor: Optional[BurnInShadowColorType] = None + ShadowOpacity: Optional[int] = None + ShadowXOffset: Optional[int] = None + ShadowYOffset: Optional[int] = None + TeletextGridControl: Optional[BurnInTeletextGridControlType] = None + XPosition: Optional[int] = None + YPosition: Optional[int] = None + +class DvbSubDestinationSettingsTypeDef(BaseModel): + Alignment: Optional[DvbSubDestinationAlignmentType] = None + BackgroundColor: Optional[DvbSubDestinationBackgroundColorType] = None + BackgroundOpacity: Optional[int] = None + Font: Optional[InputLocationTypeDef] = None + FontColor: Optional[DvbSubDestinationFontColorType] = None + FontOpacity: Optional[int] = None + FontResolution: Optional[int] = None + FontSize: Optional[str] = None + OutlineColor: Optional[DvbSubDestinationOutlineColorType] = None + OutlineSize: Optional[int] = None + ShadowColor: Optional[DvbSubDestinationShadowColorType] = None + ShadowOpacity: Optional[int] = None + ShadowXOffset: Optional[int] = None + ShadowYOffset: Optional[int] = None + TeletextGridControl: Optional[DvbSubDestinationTeletextGridControlType] = None + XPosition: Optional[int] = None + YPosition: Optional[int] = None + +class InputLossBehaviorTypeDef(BaseModel): + BlackFrameMsec: Optional[int] = None + InputLossImageColor: Optional[str] = None + InputLossImageSlate: Optional[InputLocationTypeDef] = None + InputLossImageType: Optional[InputLossImageTypeType] = None + RepeatFrameMsec: Optional[int] = None + +class StaticImageActivateScheduleActionSettingsTypeDef(BaseModel): + Image: InputLocationTypeDef + Duration: Optional[int] = None + FadeIn: Optional[int] = None + FadeOut: Optional[int] = None + Height: Optional[int] = None + ImageX: Optional[int] = None + ImageY: Optional[int] = None + Layer: Optional[int] = None + Opacity: Optional[int] = None + Width: Optional[int] = None + +class StaticImageOutputActivateScheduleActionSettingsExtraOutputTypeDef(BaseModel): + Image: InputLocationTypeDef + OutputNames: List[str] + Duration: Optional[int] = None + FadeIn: Optional[int] = None + FadeOut: Optional[int] = None + Height: Optional[int] = None + ImageX: Optional[int] = None + ImageY: Optional[int] = None + Layer: Optional[int] = None + Opacity: Optional[int] = None + Width: Optional[int] = None + +class StaticImageOutputActivateScheduleActionSettingsOutputTypeDef(BaseModel): + Image: InputLocationTypeDef + OutputNames: List[str] + Duration: Optional[int] = None + FadeIn: Optional[int] = None + FadeOut: Optional[int] = None + Height: Optional[int] = None + ImageX: Optional[int] = None + ImageY: Optional[int] = None + Layer: Optional[int] = None + Opacity: Optional[int] = None + Width: Optional[int] = None + +class StaticImageOutputActivateScheduleActionSettingsTypeDef(BaseModel): + Image: InputLocationTypeDef + OutputNames: Sequence[str] + Duration: Optional[int] = None + FadeIn: Optional[int] = None + FadeOut: Optional[int] = None + Height: Optional[int] = None + ImageX: Optional[int] = None + ImageY: Optional[int] = None + Layer: Optional[int] = None + Opacity: Optional[int] = None + Width: Optional[int] = None + +class StaticKeySettingsTypeDef(BaseModel): + StaticKeyValue: str + KeyProviderServer: Optional[InputLocationTypeDef] = None + +class AudioTrackSelectionExtraOutputTypeDef(BaseModel): + Tracks: List[AudioTrackTypeDef] + DolbyEDecode: Optional[AudioDolbyEDecodeTypeDef] = None + +class AudioTrackSelectionOutputTypeDef(BaseModel): + Tracks: List[AudioTrackTypeDef] + DolbyEDecode: Optional[AudioDolbyEDecodeTypeDef] = None + +class AudioTrackSelectionTypeDef(BaseModel): + Tracks: Sequence[AudioTrackTypeDef] + DolbyEDecode: Optional[AudioDolbyEDecodeTypeDef] = None + +class AvailSettingsTypeDef(BaseModel): + Esam: Optional[EsamTypeDef] = None + Scte35SpliceInsert: Optional[Scte35SpliceInsertTypeDef] = None + Scte35TimeSignalApos: Optional[Scte35TimeSignalAposTypeDef] = None + +class BatchDeleteResponseTypeDef(BaseModel): + Failed: List[BatchFailedResultModelTypeDef] + Successful: List[BatchSuccessfulResultModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchStartResponseTypeDef(BaseModel): + Failed: List[BatchFailedResultModelTypeDef] + Successful: List[BatchSuccessfulResultModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchStopResponseTypeDef(BaseModel): + Failed: List[BatchFailedResultModelTypeDef] + Successful: List[BatchSuccessfulResultModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCloudWatchAlarmTemplateGroupResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCloudWatchAlarmTemplateResponseTypeDef(BaseModel): + Arn: str + ComparisonOperator: CloudWatchAlarmTemplateComparisonOperatorType + CreatedAt: datetime + DatapointsToAlarm: int + Description: str + EvaluationPeriods: int + GroupId: str + Id: str + MetricName: str + ModifiedAt: datetime + Name: str + Period: int + Statistic: CloudWatchAlarmTemplateStatisticType + Tags: Dict[str, str] + TargetResourceType: CloudWatchAlarmTemplateTargetResourceTypeType + Threshold: float + TreatMissingData: CloudWatchAlarmTemplateTreatMissingDataType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventBridgeRuleTemplateGroupResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountConfigurationResponseTypeDef(BaseModel): + AccountConfiguration: AccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInputDeviceThumbnailResponseTypeDef(BaseModel): + Body: StreamingBody + ContentType: Literal["image/jpeg"] + ContentLength: int + ETag: str + LastModified: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCloudWatchAlarmTemplateGroupResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCloudWatchAlarmTemplateResponseTypeDef(BaseModel): + Arn: str + ComparisonOperator: CloudWatchAlarmTemplateComparisonOperatorType + CreatedAt: datetime + DatapointsToAlarm: int + Description: str + EvaluationPeriods: int + GroupId: str + Id: str + MetricName: str + ModifiedAt: datetime + Name: str + Period: int + Statistic: CloudWatchAlarmTemplateStatisticType + Tags: Dict[str, str] + TargetResourceType: CloudWatchAlarmTemplateTargetResourceTypeType + Threshold: float + TreatMissingData: CloudWatchAlarmTemplateTreatMissingDataType + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventBridgeRuleTemplateGroupResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountConfigurationResponseTypeDef(BaseModel): + AccountConfiguration: AccountConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCloudWatchAlarmTemplateGroupResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCloudWatchAlarmTemplateResponseTypeDef(BaseModel): + Arn: str + ComparisonOperator: CloudWatchAlarmTemplateComparisonOperatorType + CreatedAt: datetime + DatapointsToAlarm: int + Description: str + EvaluationPeriods: int + GroupId: str + Id: str + MetricName: str + ModifiedAt: datetime + Name: str + Period: int + Statistic: CloudWatchAlarmTemplateStatisticType + Tags: Dict[str, str] + TargetResourceType: CloudWatchAlarmTemplateTargetResourceTypeType + Threshold: float + TreatMissingData: CloudWatchAlarmTemplateTreatMissingDataType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventBridgeRuleTemplateGroupResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class TeletextSourceSettingsTypeDef(BaseModel): + OutputRectangle: Optional[CaptionRectangleTypeDef] = None + PageNumber: Optional[str] = None + +class ListCloudWatchAlarmTemplateGroupsResponseTypeDef(BaseModel): + CloudWatchAlarmTemplateGroups: List[CloudWatchAlarmTemplateGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCloudWatchAlarmTemplatesResponseTypeDef(BaseModel): + CloudWatchAlarmTemplates: List[CloudWatchAlarmTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ColorCorrectionSettingsOutputTypeDef(BaseModel): + GlobalColorCorrections: List[ColorCorrectionTypeDef] + +class ColorCorrectionSettingsTypeDef(BaseModel): + GlobalColorCorrections: Sequence[ColorCorrectionTypeDef] + +class CreateEventBridgeRuleTemplateRequestRequestTypeDef(BaseModel): + EventType: EventBridgeRuleTemplateEventTypeType + GroupIdentifier: str + Name: str + Description: Optional[str] = None + EventTargets: Optional[Sequence[EventBridgeRuleTemplateTargetTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateEventBridgeRuleTemplateResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + EventTargets: List[EventBridgeRuleTemplateTargetTypeDef] + EventType: EventBridgeRuleTemplateEventTypeType + GroupId: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventBridgeRuleTemplateResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + EventTargets: List[EventBridgeRuleTemplateTargetTypeDef] + EventType: EventBridgeRuleTemplateEventTypeType + GroupId: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventBridgeRuleTemplateRequestRequestTypeDef(BaseModel): + Identifier: str + Description: Optional[str] = None + EventTargets: Optional[Sequence[EventBridgeRuleTemplateTargetTypeDef]] = None + EventType: Optional[EventBridgeRuleTemplateEventTypeType] = None + GroupIdentifier: Optional[str] = None + Name: Optional[str] = None + +class UpdateEventBridgeRuleTemplateResponseTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + Description: str + EventTargets: List[EventBridgeRuleTemplateTargetTypeDef] + EventType: EventBridgeRuleTemplateEventTypeType + GroupId: str + Id: str + ModifiedAt: datetime + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInputRequestRequestTypeDef(BaseModel): + Destinations: Optional[Sequence[InputDestinationRequestTypeDef]] = None + InputDevices: Optional[Sequence[InputDeviceSettingsTypeDef]] = None + InputSecurityGroups: Optional[Sequence[str]] = None + MediaConnectFlows: Optional[Sequence[MediaConnectFlowRequestTypeDef]] = None + Name: Optional[str] = None + RequestId: Optional[str] = None + RoleArn: Optional[str] = None + Sources: Optional[Sequence[InputSourceRequestTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + Type: Optional[InputTypeType] = None + Vpc: Optional[InputVpcRequestTypeDef] = None + +class CreateInputSecurityGroupRequestRequestTypeDef(BaseModel): + Tags: Optional[Mapping[str, str]] = None + WhitelistRules: Optional[Sequence[InputWhitelistRuleCidrTypeDef]] = None + +class UpdateInputSecurityGroupRequestRequestTypeDef(BaseModel): + InputSecurityGroupId: str + Tags: Optional[Mapping[str, str]] = None + WhitelistRules: Optional[Sequence[InputWhitelistRuleCidrTypeDef]] = None + +class CreateMultiplexRequestRequestTypeDef(BaseModel): + AvailabilityZones: Sequence[str] + MultiplexSettings: MultiplexSettingsTypeDef + Name: str + RequestId: str + Tags: Optional[Mapping[str, str]] = None + +class UpdateMultiplexRequestRequestTypeDef(BaseModel): + MultiplexId: str + MultiplexSettings: Optional[MultiplexSettingsTypeDef] = None + Name: Optional[str] = None + +class PurchaseOfferingRequestRequestTypeDef(BaseModel): + Count: int + OfferingId: str + Name: Optional[str] = None + RenewalSettings: Optional[RenewalSettingsTypeDef] = None + RequestId: Optional[str] = None + Start: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateReservationRequestRequestTypeDef(BaseModel): + ReservationId: str + Name: Optional[str] = None + RenewalSettings: Optional[RenewalSettingsTypeDef] = None + +class DeleteReservationResponseTypeDef(BaseModel): + Arn: str + Count: int + CurrencyCode: str + Duration: int + DurationUnits: Literal["MONTHS"] + End: str + FixedPrice: float + Name: str + OfferingDescription: str + OfferingId: str + OfferingType: Literal["NO_UPFRONT"] + Region: str + RenewalSettings: RenewalSettingsTypeDef + ReservationId: str + ResourceSpecification: ReservationResourceSpecificationTypeDef + Start: str + State: ReservationStateType + Tags: Dict[str, str] + UsagePrice: float + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOfferingResponseTypeDef(BaseModel): + Arn: str + CurrencyCode: str + Duration: int + DurationUnits: Literal["MONTHS"] + FixedPrice: float + OfferingDescription: str + OfferingId: str + OfferingType: Literal["NO_UPFRONT"] + Region: str + ResourceSpecification: ReservationResourceSpecificationTypeDef + UsagePrice: float + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReservationResponseTypeDef(BaseModel): + Arn: str + Count: int + CurrencyCode: str + Duration: int + DurationUnits: Literal["MONTHS"] + End: str + FixedPrice: float + Name: str + OfferingDescription: str + OfferingId: str + OfferingType: Literal["NO_UPFRONT"] + Region: str + RenewalSettings: RenewalSettingsTypeDef + ReservationId: str + ResourceSpecification: ReservationResourceSpecificationTypeDef + Start: str + State: ReservationStateType + Tags: Dict[str, str] + UsagePrice: float + ResponseMetadata: ResponseMetadataTypeDef + +class OfferingTypeDef(BaseModel): + Arn: Optional[str] = None + CurrencyCode: Optional[str] = None + Duration: Optional[int] = None + DurationUnits: Optional[Literal["MONTHS"]] = None + FixedPrice: Optional[float] = None + OfferingDescription: Optional[str] = None + OfferingId: Optional[str] = None + OfferingType: Optional[Literal["NO_UPFRONT"]] = None + Region: Optional[str] = None + ResourceSpecification: Optional[ReservationResourceSpecificationTypeDef] = None + UsagePrice: Optional[float] = None + +class ReservationTypeDef(BaseModel): + Arn: Optional[str] = None + Count: Optional[int] = None + CurrencyCode: Optional[str] = None + Duration: Optional[int] = None + DurationUnits: Optional[Literal["MONTHS"]] = None + End: Optional[str] = None + FixedPrice: Optional[float] = None + Name: Optional[str] = None + OfferingDescription: Optional[str] = None + OfferingId: Optional[str] = None + OfferingType: Optional[Literal["NO_UPFRONT"]] = None + Region: Optional[str] = None + RenewalSettings: Optional[RenewalSettingsTypeDef] = None + ReservationId: Optional[str] = None + ResourceSpecification: Optional[ReservationResourceSpecificationTypeDef] = None + Start: Optional[str] = None + State: Optional[ReservationStateType] = None + Tags: Optional[Dict[str, str]] = None + UsagePrice: Optional[float] = None + +class DescribeChannelRequestChannelCreatedWaitTypeDef(BaseModel): + ChannelId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeChannelRequestChannelDeletedWaitTypeDef(BaseModel): + ChannelId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeChannelRequestChannelRunningWaitTypeDef(BaseModel): + ChannelId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeChannelRequestChannelStoppedWaitTypeDef(BaseModel): + ChannelId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInputRequestInputAttachedWaitTypeDef(BaseModel): + InputId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInputRequestInputDeletedWaitTypeDef(BaseModel): + InputId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInputRequestInputDetachedWaitTypeDef(BaseModel): + InputId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeMultiplexRequestMultiplexCreatedWaitTypeDef(BaseModel): + MultiplexId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeMultiplexRequestMultiplexDeletedWaitTypeDef(BaseModel): + MultiplexId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeMultiplexRequestMultiplexRunningWaitTypeDef(BaseModel): + MultiplexId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeMultiplexRequestMultiplexStoppedWaitTypeDef(BaseModel): + MultiplexId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetSignalMapRequestSignalMapCreatedWaitTypeDef(BaseModel): + Identifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetSignalMapRequestSignalMapMonitorDeletedWaitTypeDef(BaseModel): + Identifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetSignalMapRequestSignalMapMonitorDeployedWaitTypeDef(BaseModel): + Identifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetSignalMapRequestSignalMapUpdatedWaitTypeDef(BaseModel): + Identifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInputSecurityGroupResponseTypeDef(BaseModel): + Arn: str + Id: str + Inputs: List[str] + State: InputSecurityGroupStateType + Tags: Dict[str, str] + WhitelistRules: List[InputWhitelistRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InputSecurityGroupTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Inputs: Optional[List[str]] = None + State: Optional[InputSecurityGroupStateType] = None + Tags: Optional[Dict[str, str]] = None + WhitelistRules: Optional[List[InputWhitelistRuleTypeDef]] = None + +class DescribeScheduleRequestDescribeSchedulePaginateTypeDef(BaseModel): + ChannelId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChannelsRequestListChannelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCloudWatchAlarmTemplatesRequestListCloudWatchAlarmTemplatesPaginateTypeDef(BaseModel): + GroupIdentifier: Optional[str] = None + Scope: Optional[str] = None + SignalMapIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventBridgeRuleTemplatesRequestListEventBridgeRuleTemplatesPaginateTypeDef(BaseModel): + GroupIdentifier: Optional[str] = None + SignalMapIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInputDeviceTransfersRequestListInputDeviceTransfersPaginateTypeDef(BaseModel): + TransferType: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInputDevicesRequestListInputDevicesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInputSecurityGroupsRequestListInputSecurityGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInputsRequestListInputsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMultiplexProgramsRequestListMultiplexProgramsPaginateTypeDef(BaseModel): + MultiplexId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMultiplexesRequestListMultiplexesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOfferingsRequestListOfferingsPaginateTypeDef(BaseModel): + ChannelClass: Optional[str] = None + ChannelConfiguration: Optional[str] = None + Codec: Optional[str] = None + Duration: Optional[str] = None + MaximumBitrate: Optional[str] = None + MaximumFramerate: Optional[str] = None + Resolution: Optional[str] = None + ResourceType: Optional[str] = None + SpecialFeature: Optional[str] = None + VideoQuality: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReservationsRequestListReservationsPaginateTypeDef(BaseModel): + ChannelClass: Optional[str] = None + Codec: Optional[str] = None + MaximumBitrate: Optional[str] = None + MaximumFramerate: Optional[str] = None + Resolution: Optional[str] = None + ResourceType: Optional[str] = None + SpecialFeature: Optional[str] = None + VideoQuality: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSignalMapsRequestListSignalMapsPaginateTypeDef(BaseModel): + CloudWatchAlarmTemplateGroupIdentifier: Optional[str] = None + EventBridgeRuleTemplateGroupIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class M2tsSettingsTypeDef(BaseModel): + AbsentInputAudioBehavior: Optional[M2tsAbsentInputAudioBehaviorType] = None + Arib: Optional[M2tsAribType] = None + AribCaptionsPid: Optional[str] = None + AribCaptionsPidControl: Optional[M2tsAribCaptionsPidControlType] = None + AudioBufferModel: Optional[M2tsAudioBufferModelType] = None + AudioFramesPerPes: Optional[int] = None + AudioPids: Optional[str] = None + AudioStreamType: Optional[M2tsAudioStreamTypeType] = None + Bitrate: Optional[int] = None + BufferModel: Optional[M2tsBufferModelType] = None + CcDescriptor: Optional[M2tsCcDescriptorType] = None + DvbNitSettings: Optional[DvbNitSettingsTypeDef] = None + DvbSdtSettings: Optional[DvbSdtSettingsTypeDef] = None + DvbSubPids: Optional[str] = None + DvbTdtSettings: Optional[DvbTdtSettingsTypeDef] = None + DvbTeletextPid: Optional[str] = None + Ebif: Optional[M2tsEbifControlType] = None + EbpAudioInterval: Optional[M2tsAudioIntervalType] = None + EbpLookaheadMs: Optional[int] = None + EbpPlacement: Optional[M2tsEbpPlacementType] = None + EcmPid: Optional[str] = None + EsRateInPes: Optional[M2tsEsRateInPesType] = None + EtvPlatformPid: Optional[str] = None + EtvSignalPid: Optional[str] = None + FragmentTime: Optional[float] = None + Klv: Optional[M2tsKlvType] = None + KlvDataPids: Optional[str] = None + NielsenId3Behavior: Optional[M2tsNielsenId3BehaviorType] = None + NullPacketBitrate: Optional[float] = None + PatInterval: Optional[int] = None + PcrControl: Optional[M2tsPcrControlType] = None + PcrPeriod: Optional[int] = None + PcrPid: Optional[str] = None + PmtInterval: Optional[int] = None + PmtPid: Optional[str] = None + ProgramNum: Optional[int] = None + RateMode: Optional[M2tsRateModeType] = None + Scte27Pids: Optional[str] = None + Scte35Control: Optional[M2tsScte35ControlType] = None + Scte35Pid: Optional[str] = None + SegmentationMarkers: Optional[M2tsSegmentationMarkersType] = None + SegmentationStyle: Optional[M2tsSegmentationStyleType] = None + SegmentationTime: Optional[float] = None + TimedMetadataBehavior: Optional[M2tsTimedMetadataBehaviorType] = None + TimedMetadataPid: Optional[str] = None + TransportStreamId: Optional[int] = None + VideoPid: Optional[str] = None + Scte35PrerollPullupMilliseconds: Optional[float] = None + +class OutputLockingSettingsOutputTypeDef(BaseModel): + EpochLockingSettings: Optional[EpochLockingSettingsTypeDef] = None + PipelineLockingSettings: Optional[Dict[str, Any]] = None + +class OutputLockingSettingsTypeDef(BaseModel): + EpochLockingSettings: Optional[EpochLockingSettingsTypeDef] = None + PipelineLockingSettings: Optional[Mapping[str, Any]] = None + +class ListEventBridgeRuleTemplateGroupsResponseTypeDef(BaseModel): + EventBridgeRuleTemplateGroups: List[EventBridgeRuleTemplateGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEventBridgeRuleTemplatesResponseTypeDef(BaseModel): + EventBridgeRuleTemplates: List[EventBridgeRuleTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FailoverConditionSettingsTypeDef(BaseModel): + AudioSilenceSettings: Optional[AudioSilenceFailoverSettingsTypeDef] = None + InputLossSettings: Optional[InputLossFailoverSettingsTypeDef] = None + VideoBlackSettings: Optional[VideoBlackFailoverSettingsTypeDef] = None + +class ScheduleActionStartSettingsExtraOutputTypeDef(BaseModel): + FixedModeScheduleActionStartSettings: Optional[ FixedModeScheduleActionStartSettingsTypeDef ] = None + FollowModeScheduleActionStartSettings: Optional[ FollowModeScheduleActionStartSettingsTypeDef ] = None + ImmediateModeScheduleActionStartSettings: Optional[Dict[str, Any]] = None + +class ScheduleActionStartSettingsOutputTypeDef(BaseModel): + FixedModeScheduleActionStartSettings: Optional[ FixedModeScheduleActionStartSettingsTypeDef ] = None + FollowModeScheduleActionStartSettings: Optional[ FollowModeScheduleActionStartSettingsTypeDef ] = None + ImmediateModeScheduleActionStartSettings: Optional[Dict[str, Any]] = None + +class ScheduleActionStartSettingsTypeDef(BaseModel): + FixedModeScheduleActionStartSettings: Optional[ FixedModeScheduleActionStartSettingsTypeDef ] = None + FollowModeScheduleActionStartSettings: Optional[ FollowModeScheduleActionStartSettingsTypeDef ] = None + ImmediateModeScheduleActionStartSettings: Optional[Mapping[str, Any]] = None + +class FrameCaptureCdnSettingsTypeDef(BaseModel): + FrameCaptureS3Settings: Optional[FrameCaptureS3SettingsTypeDef] = None + +class FrameCaptureSettingsTypeDef(BaseModel): + CaptureInterval: Optional[int] = None + CaptureIntervalUnits: Optional[FrameCaptureIntervalUnitType] = None + TimecodeBurninSettings: Optional[TimecodeBurninSettingsTypeDef] = None + +class H264FilterSettingsTypeDef(BaseModel): + TemporalFilterSettings: Optional[TemporalFilterSettingsTypeDef] = None + +class H265FilterSettingsTypeDef(BaseModel): + TemporalFilterSettings: Optional[TemporalFilterSettingsTypeDef] = None + +class Mpeg2FilterSettingsTypeDef(BaseModel): + TemporalFilterSettings: Optional[TemporalFilterSettingsTypeDef] = None + +class H265ColorSpaceSettingsOutputTypeDef(BaseModel): + ColorSpacePassthroughSettings: Optional[Dict[str, Any]] = None + DolbyVision81Settings: Optional[Dict[str, Any]] = None + Hdr10Settings: Optional[Hdr10SettingsTypeDef] = None + Rec601Settings: Optional[Dict[str, Any]] = None + Rec709Settings: Optional[Dict[str, Any]] = None + +class H265ColorSpaceSettingsTypeDef(BaseModel): + ColorSpacePassthroughSettings: Optional[Mapping[str, Any]] = None + DolbyVision81Settings: Optional[Mapping[str, Any]] = None + Hdr10Settings: Optional[Hdr10SettingsTypeDef] = None + Rec601Settings: Optional[Mapping[str, Any]] = None + Rec709Settings: Optional[Mapping[str, Any]] = None + +class VideoSelectorColorSpaceSettingsTypeDef(BaseModel): + Hdr10Settings: Optional[Hdr10SettingsTypeDef] = None + +class HlsCdnSettingsTypeDef(BaseModel): + HlsAkamaiSettings: Optional[HlsAkamaiSettingsTypeDef] = None + HlsBasicPutSettings: Optional[HlsBasicPutSettingsTypeDef] = None + HlsMediaStoreSettings: Optional[HlsMediaStoreSettingsTypeDef] = None + HlsS3Settings: Optional[HlsS3SettingsTypeDef] = None + HlsWebdavSettings: Optional[HlsWebdavSettingsTypeDef] = None + +class NetworkInputSettingsTypeDef(BaseModel): + HlsInputSettings: Optional[HlsInputSettingsTypeDef] = None + ServerValidation: Optional[NetworkInputServerValidationType] = None + +class InputClippingSettingsTypeDef(BaseModel): + InputTimecodeSource: InputTimecodeSourceType + StartTimecode: Optional[StartTimecodeTypeDef] = None + StopTimecode: Optional[StopTimecodeTypeDef] = None + +class InputDestinationTypeDef(BaseModel): + Ip: Optional[str] = None + Port: Optional[str] = None + Url: Optional[str] = None + Vpc: Optional[InputDestinationVpcTypeDef] = None + +class InputDeviceConfigurableSettingsTypeDef(BaseModel): + ConfiguredInput: Optional[InputDeviceConfiguredInputType] = None + MaxBitrate: Optional[int] = None + LatencyMs: Optional[int] = None + Codec: Optional[InputDeviceCodecType] = None + MediaconnectSettings: Optional[InputDeviceMediaConnectConfigurableSettingsTypeDef] = None + AudioChannelPairs: Optional[ Sequence[InputDeviceConfigurableAudioChannelPairConfigTypeDef] ] = None + +class UpdateInputRequestRequestTypeDef(BaseModel): + InputId: str + Destinations: Optional[Sequence[InputDestinationRequestTypeDef]] = None + InputDevices: Optional[Sequence[InputDeviceRequestTypeDef]] = None + InputSecurityGroups: Optional[Sequence[str]] = None + MediaConnectFlows: Optional[Sequence[MediaConnectFlowRequestTypeDef]] = None + Name: Optional[str] = None + RoleArn: Optional[str] = None + Sources: Optional[Sequence[InputSourceRequestTypeDef]] = None + +class InputDeviceUhdSettingsTypeDef(BaseModel): + ActiveInput: Optional[InputDeviceActiveInputType] = None + ConfiguredInput: Optional[InputDeviceConfiguredInputType] = None + DeviceState: Optional[InputDeviceStateType] = None + Framerate: Optional[float] = None + Height: Optional[int] = None + MaxBitrate: Optional[int] = None + ScanType: Optional[InputDeviceScanTypeType] = None + Width: Optional[int] = None + LatencyMs: Optional[int] = None + Codec: Optional[InputDeviceCodecType] = None + MediaconnectSettings: Optional[InputDeviceMediaConnectSettingsTypeDef] = None + AudioChannelPairs: Optional[List[InputDeviceUhdAudioChannelPairConfigTypeDef]] = None + +class ListInputDeviceTransfersResponseTypeDef(BaseModel): + InputDeviceTransfers: List[TransferringInputDeviceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMultiplexProgramsResponseTypeDef(BaseModel): + MultiplexPrograms: List[MultiplexProgramSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSignalMapsResponseTypeDef(BaseModel): + SignalMaps: List[SignalMapSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StandardHlsSettingsTypeDef(BaseModel): + M3u8Settings: M3u8SettingsTypeDef + AudioRenditionSets: Optional[str] = None + +class MediaResourceTypeDef(BaseModel): + Destinations: Optional[List[MediaResourceNeighborTypeDef]] = None + Name: Optional[str] = None + Sources: Optional[List[MediaResourceNeighborTypeDef]] = None + +class MotionGraphicsConfigurationOutputTypeDef(BaseModel): + MotionGraphicsSettings: MotionGraphicsSettingsOutputTypeDef + MotionGraphicsInsertion: Optional[MotionGraphicsInsertionType] = None + +class MotionGraphicsConfigurationTypeDef(BaseModel): + MotionGraphicsSettings: MotionGraphicsSettingsTypeDef + MotionGraphicsInsertion: Optional[MotionGraphicsInsertionType] = None + +class MultiplexOutputDestinationTypeDef(BaseModel): + MediaConnectSettings: Optional[MultiplexMediaConnectOutputDestinationSettingsTypeDef] = None + +class MultiplexSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + Id: Optional[str] = None + MultiplexSettings: Optional[MultiplexSettingsSummaryTypeDef] = None + Name: Optional[str] = None + PipelinesRunningCount: Optional[int] = None + ProgramCount: Optional[int] = None + State: Optional[MultiplexStateType] = None + Tags: Optional[Dict[str, str]] = None + +class MultiplexVideoSettingsTypeDef(BaseModel): + ConstantBitrate: Optional[int] = None + StatmuxSettings: Optional[MultiplexStatmuxVideoSettingsTypeDef] = None + +class NielsenWatermarksSettingsTypeDef(BaseModel): + NielsenCbetSettings: Optional[NielsenCBETTypeDef] = None + NielsenDistributionType: Optional[NielsenWatermarksDistributionTypesType] = None + NielsenNaesIiNwSettings: Optional[NielsenNaesIiNwTypeDef] = None + +class OutputDestinationExtraOutputTypeDef(BaseModel): + Id: Optional[str] = None + MediaPackageSettings: Optional[List[MediaPackageOutputDestinationSettingsTypeDef]] = None + MultiplexSettings: Optional[MultiplexProgramChannelDestinationSettingsTypeDef] = None + Settings: Optional[List[OutputDestinationSettingsTypeDef]] = None + +class OutputDestinationOutputTypeDef(BaseModel): + Id: Optional[str] = None + MediaPackageSettings: Optional[List[MediaPackageOutputDestinationSettingsTypeDef]] = None + MultiplexSettings: Optional[MultiplexProgramChannelDestinationSettingsTypeDef] = None + Settings: Optional[List[OutputDestinationSettingsTypeDef]] = None + +class OutputDestinationTypeDef(BaseModel): + Id: Optional[str] = None + MediaPackageSettings: Optional[Sequence[MediaPackageOutputDestinationSettingsTypeDef]] = None + MultiplexSettings: Optional[MultiplexProgramChannelDestinationSettingsTypeDef] = None + Settings: Optional[Sequence[OutputDestinationSettingsTypeDef]] = None + +class PauseStateScheduleActionSettingsExtraOutputTypeDef(BaseModel): + Pipelines: Optional[List[PipelinePauseStateSettingsTypeDef]] = None + +class PauseStateScheduleActionSettingsOutputTypeDef(BaseModel): + Pipelines: Optional[List[PipelinePauseStateSettingsTypeDef]] = None + +class PauseStateScheduleActionSettingsTypeDef(BaseModel): + Pipelines: Optional[Sequence[PipelinePauseStateSettingsTypeDef]] = None + +class Scte35SegmentationDescriptorTypeDef(BaseModel): + SegmentationCancelIndicator: Scte35SegmentationCancelIndicatorType + SegmentationEventId: int + DeliveryRestrictions: Optional[Scte35DeliveryRestrictionsTypeDef] = None + SegmentNum: Optional[int] = None + SegmentationDuration: Optional[int] = None + SegmentationTypeId: Optional[int] = None + SegmentationUpid: Optional[str] = None + SegmentationUpidType: Optional[int] = None + SegmentsExpected: Optional[int] = None + SubSegmentNum: Optional[int] = None + SubSegmentsExpected: Optional[int] = None + +class ThumbnailDetailTypeDef(BaseModel): + PipelineId: Optional[str] = None + Thumbnails: Optional[List[ThumbnailTypeDef]] = None + +class VideoSelectorSettingsTypeDef(BaseModel): + VideoSelectorPid: Optional[VideoSelectorPidTypeDef] = None + VideoSelectorProgramId: Optional[VideoSelectorProgramIdTypeDef] = None + +class ArchiveGroupSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + ArchiveCdnSettings: Optional[ArchiveCdnSettingsTypeDef] = None + RolloverInterval: Optional[int] = None + +class RemixSettingsOutputTypeDef(BaseModel): + ChannelMappings: List[AudioChannelMappingOutputTypeDef] + ChannelsIn: Optional[int] = None + ChannelsOut: Optional[int] = None + +class RemixSettingsTypeDef(BaseModel): + ChannelMappings: Sequence[AudioChannelMappingTypeDef] + ChannelsIn: Optional[int] = None + ChannelsOut: Optional[int] = None + +class CaptionDestinationSettingsOutputTypeDef(BaseModel): + AribDestinationSettings: Optional[Dict[str, Any]] = None + BurnInDestinationSettings: Optional[BurnInDestinationSettingsTypeDef] = None + DvbSubDestinationSettings: Optional[DvbSubDestinationSettingsTypeDef] = None + EbuTtDDestinationSettings: Optional[EbuTtDDestinationSettingsTypeDef] = None + EmbeddedDestinationSettings: Optional[Dict[str, Any]] = None + EmbeddedPlusScte20DestinationSettings: Optional[Dict[str, Any]] = None + RtmpCaptionInfoDestinationSettings: Optional[Dict[str, Any]] = None + Scte20PlusEmbeddedDestinationSettings: Optional[Dict[str, Any]] = None + Scte27DestinationSettings: Optional[Dict[str, Any]] = None + SmpteTtDestinationSettings: Optional[Dict[str, Any]] = None + TeletextDestinationSettings: Optional[Dict[str, Any]] = None + TtmlDestinationSettings: Optional[TtmlDestinationSettingsTypeDef] = None + WebvttDestinationSettings: Optional[WebvttDestinationSettingsTypeDef] = None + +class CaptionDestinationSettingsTypeDef(BaseModel): + AribDestinationSettings: Optional[Mapping[str, Any]] = None + BurnInDestinationSettings: Optional[BurnInDestinationSettingsTypeDef] = None + DvbSubDestinationSettings: Optional[DvbSubDestinationSettingsTypeDef] = None + EbuTtDDestinationSettings: Optional[EbuTtDDestinationSettingsTypeDef] = None + EmbeddedDestinationSettings: Optional[Mapping[str, Any]] = None + EmbeddedPlusScte20DestinationSettings: Optional[Mapping[str, Any]] = None + RtmpCaptionInfoDestinationSettings: Optional[Mapping[str, Any]] = None + Scte20PlusEmbeddedDestinationSettings: Optional[Mapping[str, Any]] = None + Scte27DestinationSettings: Optional[Mapping[str, Any]] = None + SmpteTtDestinationSettings: Optional[Mapping[str, Any]] = None + TeletextDestinationSettings: Optional[Mapping[str, Any]] = None + TtmlDestinationSettings: Optional[TtmlDestinationSettingsTypeDef] = None + WebvttDestinationSettings: Optional[WebvttDestinationSettingsTypeDef] = None + +class KeyProviderSettingsTypeDef(BaseModel): + StaticKeySettings: Optional[StaticKeySettingsTypeDef] = None + +class AudioSelectorSettingsExtraOutputTypeDef(BaseModel): + AudioHlsRenditionSelection: Optional[AudioHlsRenditionSelectionTypeDef] = None + AudioLanguageSelection: Optional[AudioLanguageSelectionTypeDef] = None + AudioPidSelection: Optional[AudioPidSelectionTypeDef] = None + AudioTrackSelection: Optional[AudioTrackSelectionExtraOutputTypeDef] = None + +class AudioSelectorSettingsOutputTypeDef(BaseModel): + AudioHlsRenditionSelection: Optional[AudioHlsRenditionSelectionTypeDef] = None + AudioLanguageSelection: Optional[AudioLanguageSelectionTypeDef] = None + AudioPidSelection: Optional[AudioPidSelectionTypeDef] = None + AudioTrackSelection: Optional[AudioTrackSelectionOutputTypeDef] = None + +class AudioSelectorSettingsTypeDef(BaseModel): + AudioHlsRenditionSelection: Optional[AudioHlsRenditionSelectionTypeDef] = None + AudioLanguageSelection: Optional[AudioLanguageSelectionTypeDef] = None + AudioPidSelection: Optional[AudioPidSelectionTypeDef] = None + AudioTrackSelection: Optional[AudioTrackSelectionTypeDef] = None + +class AvailConfigurationTypeDef(BaseModel): + AvailSettings: Optional[AvailSettingsTypeDef] = None + Scte35SegmentationScope: Optional[Scte35SegmentationScopeType] = None + +class CaptionSelectorSettingsExtraOutputTypeDef(BaseModel): + AncillarySourceSettings: Optional[AncillarySourceSettingsTypeDef] = None + AribSourceSettings: Optional[Dict[str, Any]] = None + DvbSubSourceSettings: Optional[DvbSubSourceSettingsTypeDef] = None + EmbeddedSourceSettings: Optional[EmbeddedSourceSettingsTypeDef] = None + Scte20SourceSettings: Optional[Scte20SourceSettingsTypeDef] = None + Scte27SourceSettings: Optional[Scte27SourceSettingsTypeDef] = None + TeletextSourceSettings: Optional[TeletextSourceSettingsTypeDef] = None + +class CaptionSelectorSettingsOutputTypeDef(BaseModel): + AncillarySourceSettings: Optional[AncillarySourceSettingsTypeDef] = None + AribSourceSettings: Optional[Dict[str, Any]] = None + DvbSubSourceSettings: Optional[DvbSubSourceSettingsTypeDef] = None + EmbeddedSourceSettings: Optional[EmbeddedSourceSettingsTypeDef] = None + Scte20SourceSettings: Optional[Scte20SourceSettingsTypeDef] = None + Scte27SourceSettings: Optional[Scte27SourceSettingsTypeDef] = None + TeletextSourceSettings: Optional[TeletextSourceSettingsTypeDef] = None + +class CaptionSelectorSettingsTypeDef(BaseModel): + AncillarySourceSettings: Optional[AncillarySourceSettingsTypeDef] = None + AribSourceSettings: Optional[Mapping[str, Any]] = None + DvbSubSourceSettings: Optional[DvbSubSourceSettingsTypeDef] = None + EmbeddedSourceSettings: Optional[EmbeddedSourceSettingsTypeDef] = None + Scte20SourceSettings: Optional[Scte20SourceSettingsTypeDef] = None + Scte27SourceSettings: Optional[Scte27SourceSettingsTypeDef] = None + TeletextSourceSettings: Optional[TeletextSourceSettingsTypeDef] = None + +class ListOfferingsResponseTypeDef(BaseModel): + Offerings: List[OfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListReservationsResponseTypeDef(BaseModel): + Reservations: List[ReservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PurchaseOfferingResponseTypeDef(BaseModel): + Reservation: ReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReservationResponseTypeDef(BaseModel): + Reservation: ReservationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInputSecurityGroupResponseTypeDef(BaseModel): + SecurityGroup: InputSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInputSecurityGroupsResponseTypeDef(BaseModel): + InputSecurityGroups: List[InputSecurityGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateInputSecurityGroupResponseTypeDef(BaseModel): + SecurityGroup: InputSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ArchiveContainerSettingsTypeDef(BaseModel): + M2tsSettings: Optional[M2tsSettingsTypeDef] = None + RawSettings: Optional[Mapping[str, Any]] = None + +class UdpContainerSettingsTypeDef(BaseModel): + M2tsSettings: Optional[M2tsSettingsTypeDef] = None + +class GlobalConfigurationOutputTypeDef(BaseModel): + InitialAudioGain: Optional[int] = None + InputEndAction: Optional[GlobalConfigurationInputEndActionType] = None + InputLossBehavior: Optional[InputLossBehaviorTypeDef] = None + OutputLockingMode: Optional[GlobalConfigurationOutputLockingModeType] = None + OutputTimingSource: Optional[GlobalConfigurationOutputTimingSourceType] = None + SupportLowFramerateInputs: Optional[GlobalConfigurationLowFramerateInputsType] = None + OutputLockingSettings: Optional[OutputLockingSettingsOutputTypeDef] = None + +class GlobalConfigurationTypeDef(BaseModel): + InitialAudioGain: Optional[int] = None + InputEndAction: Optional[GlobalConfigurationInputEndActionType] = None + InputLossBehavior: Optional[InputLossBehaviorTypeDef] = None + OutputLockingMode: Optional[GlobalConfigurationOutputLockingModeType] = None + OutputTimingSource: Optional[GlobalConfigurationOutputTimingSourceType] = None + SupportLowFramerateInputs: Optional[GlobalConfigurationLowFramerateInputsType] = None + OutputLockingSettings: Optional[OutputLockingSettingsTypeDef] = None + +class FailoverConditionTypeDef(BaseModel): + FailoverConditionSettings: Optional[FailoverConditionSettingsTypeDef] = None + +class FrameCaptureGroupSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + FrameCaptureCdnSettings: Optional[FrameCaptureCdnSettingsTypeDef] = None + +class H264SettingsOutputTypeDef(BaseModel): + AdaptiveQuantization: Optional[H264AdaptiveQuantizationType] = None + AfdSignaling: Optional[AfdSignalingType] = None + Bitrate: Optional[int] = None + BufFillPct: Optional[int] = None + BufSize: Optional[int] = None + ColorMetadata: Optional[H264ColorMetadataType] = None + ColorSpaceSettings: Optional[H264ColorSpaceSettingsOutputTypeDef] = None + EntropyEncoding: Optional[H264EntropyEncodingType] = None + FilterSettings: Optional[H264FilterSettingsTypeDef] = None + FixedAfd: Optional[FixedAfdType] = None + FlickerAq: Optional[H264FlickerAqType] = None + ForceFieldPictures: Optional[H264ForceFieldPicturesType] = None + FramerateControl: Optional[H264FramerateControlType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopBReference: Optional[H264GopBReferenceType] = None + GopClosedCadence: Optional[int] = None + GopNumBFrames: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[H264GopSizeUnitsType] = None + Level: Optional[H264LevelType] = None + LookAheadRateControl: Optional[H264LookAheadRateControlType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + NumRefFrames: Optional[int] = None + ParControl: Optional[H264ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + Profile: Optional[H264ProfileType] = None + QualityLevel: Optional[H264QualityLevelType] = None + QvbrQualityLevel: Optional[int] = None + RateControlMode: Optional[H264RateControlModeType] = None + ScanType: Optional[H264ScanTypeType] = None + SceneChangeDetect: Optional[H264SceneChangeDetectType] = None + Slices: Optional[int] = None + Softness: Optional[int] = None + SpatialAq: Optional[H264SpatialAqType] = None + SubgopLength: Optional[H264SubGopLengthType] = None + Syntax: Optional[H264SyntaxType] = None + TemporalAq: Optional[H264TemporalAqType] = None + TimecodeInsertion: Optional[H264TimecodeInsertionBehaviorType] = None + TimecodeBurninSettings: Optional[TimecodeBurninSettingsTypeDef] = None + +class H264SettingsTypeDef(BaseModel): + AdaptiveQuantization: Optional[H264AdaptiveQuantizationType] = None + AfdSignaling: Optional[AfdSignalingType] = None + Bitrate: Optional[int] = None + BufFillPct: Optional[int] = None + BufSize: Optional[int] = None + ColorMetadata: Optional[H264ColorMetadataType] = None + ColorSpaceSettings: Optional[H264ColorSpaceSettingsTypeDef] = None + EntropyEncoding: Optional[H264EntropyEncodingType] = None + FilterSettings: Optional[H264FilterSettingsTypeDef] = None + FixedAfd: Optional[FixedAfdType] = None + FlickerAq: Optional[H264FlickerAqType] = None + ForceFieldPictures: Optional[H264ForceFieldPicturesType] = None + FramerateControl: Optional[H264FramerateControlType] = None + FramerateDenominator: Optional[int] = None + FramerateNumerator: Optional[int] = None + GopBReference: Optional[H264GopBReferenceType] = None + GopClosedCadence: Optional[int] = None + GopNumBFrames: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[H264GopSizeUnitsType] = None + Level: Optional[H264LevelType] = None + LookAheadRateControl: Optional[H264LookAheadRateControlType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + NumRefFrames: Optional[int] = None + ParControl: Optional[H264ParControlType] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + Profile: Optional[H264ProfileType] = None + QualityLevel: Optional[H264QualityLevelType] = None + QvbrQualityLevel: Optional[int] = None + RateControlMode: Optional[H264RateControlModeType] = None + ScanType: Optional[H264ScanTypeType] = None + SceneChangeDetect: Optional[H264SceneChangeDetectType] = None + Slices: Optional[int] = None + Softness: Optional[int] = None + SpatialAq: Optional[H264SpatialAqType] = None + SubgopLength: Optional[H264SubGopLengthType] = None + Syntax: Optional[H264SyntaxType] = None + TemporalAq: Optional[H264TemporalAqType] = None + TimecodeInsertion: Optional[H264TimecodeInsertionBehaviorType] = None + TimecodeBurninSettings: Optional[TimecodeBurninSettingsTypeDef] = None + +class Mpeg2SettingsTypeDef(BaseModel): + FramerateDenominator: int + FramerateNumerator: int + AdaptiveQuantization: Optional[Mpeg2AdaptiveQuantizationType] = None + AfdSignaling: Optional[AfdSignalingType] = None + ColorMetadata: Optional[Mpeg2ColorMetadataType] = None + ColorSpace: Optional[Mpeg2ColorSpaceType] = None + DisplayAspectRatio: Optional[Mpeg2DisplayRatioType] = None + FilterSettings: Optional[Mpeg2FilterSettingsTypeDef] = None + FixedAfd: Optional[FixedAfdType] = None + GopClosedCadence: Optional[int] = None + GopNumBFrames: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[Mpeg2GopSizeUnitsType] = None + ScanType: Optional[Mpeg2ScanTypeType] = None + SubgopLength: Optional[Mpeg2SubGopLengthType] = None + TimecodeInsertion: Optional[Mpeg2TimecodeInsertionBehaviorType] = None + TimecodeBurninSettings: Optional[TimecodeBurninSettingsTypeDef] = None + +class H265SettingsOutputTypeDef(BaseModel): + FramerateDenominator: int + FramerateNumerator: int + AdaptiveQuantization: Optional[H265AdaptiveQuantizationType] = None + AfdSignaling: Optional[AfdSignalingType] = None + AlternativeTransferFunction: Optional[H265AlternativeTransferFunctionType] = None + Bitrate: Optional[int] = None + BufSize: Optional[int] = None + ColorMetadata: Optional[H265ColorMetadataType] = None + ColorSpaceSettings: Optional[H265ColorSpaceSettingsOutputTypeDef] = None + FilterSettings: Optional[H265FilterSettingsTypeDef] = None + FixedAfd: Optional[FixedAfdType] = None + FlickerAq: Optional[H265FlickerAqType] = None + GopClosedCadence: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[H265GopSizeUnitsType] = None + Level: Optional[H265LevelType] = None + LookAheadRateControl: Optional[H265LookAheadRateControlType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + Profile: Optional[H265ProfileType] = None + QvbrQualityLevel: Optional[int] = None + RateControlMode: Optional[H265RateControlModeType] = None + ScanType: Optional[H265ScanTypeType] = None + SceneChangeDetect: Optional[H265SceneChangeDetectType] = None + Slices: Optional[int] = None + Tier: Optional[H265TierType] = None + TimecodeInsertion: Optional[H265TimecodeInsertionBehaviorType] = None + TimecodeBurninSettings: Optional[TimecodeBurninSettingsTypeDef] = None + MvOverPictureBoundaries: Optional[H265MvOverPictureBoundariesType] = None + MvTemporalPredictor: Optional[H265MvTemporalPredictorType] = None + TileHeight: Optional[int] = None + TilePadding: Optional[H265TilePaddingType] = None + TileWidth: Optional[int] = None + TreeblockSize: Optional[H265TreeblockSizeType] = None + +class H265SettingsTypeDef(BaseModel): + FramerateDenominator: int + FramerateNumerator: int + AdaptiveQuantization: Optional[H265AdaptiveQuantizationType] = None + AfdSignaling: Optional[AfdSignalingType] = None + AlternativeTransferFunction: Optional[H265AlternativeTransferFunctionType] = None + Bitrate: Optional[int] = None + BufSize: Optional[int] = None + ColorMetadata: Optional[H265ColorMetadataType] = None + ColorSpaceSettings: Optional[H265ColorSpaceSettingsTypeDef] = None + FilterSettings: Optional[H265FilterSettingsTypeDef] = None + FixedAfd: Optional[FixedAfdType] = None + FlickerAq: Optional[H265FlickerAqType] = None + GopClosedCadence: Optional[int] = None + GopSize: Optional[float] = None + GopSizeUnits: Optional[H265GopSizeUnitsType] = None + Level: Optional[H265LevelType] = None + LookAheadRateControl: Optional[H265LookAheadRateControlType] = None + MaxBitrate: Optional[int] = None + MinIInterval: Optional[int] = None + ParDenominator: Optional[int] = None + ParNumerator: Optional[int] = None + Profile: Optional[H265ProfileType] = None + QvbrQualityLevel: Optional[int] = None + RateControlMode: Optional[H265RateControlModeType] = None + ScanType: Optional[H265ScanTypeType] = None + SceneChangeDetect: Optional[H265SceneChangeDetectType] = None + Slices: Optional[int] = None + Tier: Optional[H265TierType] = None + TimecodeInsertion: Optional[H265TimecodeInsertionBehaviorType] = None + TimecodeBurninSettings: Optional[TimecodeBurninSettingsTypeDef] = None + MvOverPictureBoundaries: Optional[H265MvOverPictureBoundariesType] = None + MvTemporalPredictor: Optional[H265MvTemporalPredictorType] = None + TileHeight: Optional[int] = None + TilePadding: Optional[H265TilePaddingType] = None + TileWidth: Optional[int] = None + TreeblockSize: Optional[H265TreeblockSizeType] = None + +class InputPrepareScheduleActionSettingsExtraOutputTypeDef(BaseModel): + InputAttachmentNameReference: Optional[str] = None + InputClippingSettings: Optional[InputClippingSettingsTypeDef] = None + UrlPath: Optional[List[str]] = None + +class InputPrepareScheduleActionSettingsOutputTypeDef(BaseModel): + InputAttachmentNameReference: Optional[str] = None + InputClippingSettings: Optional[InputClippingSettingsTypeDef] = None + UrlPath: Optional[List[str]] = None + +class InputPrepareScheduleActionSettingsTypeDef(BaseModel): + InputAttachmentNameReference: Optional[str] = None + InputClippingSettings: Optional[InputClippingSettingsTypeDef] = None + UrlPath: Optional[Sequence[str]] = None + +class InputSwitchScheduleActionSettingsExtraOutputTypeDef(BaseModel): + InputAttachmentNameReference: str + InputClippingSettings: Optional[InputClippingSettingsTypeDef] = None + UrlPath: Optional[List[str]] = None + +class InputSwitchScheduleActionSettingsOutputTypeDef(BaseModel): + InputAttachmentNameReference: str + InputClippingSettings: Optional[InputClippingSettingsTypeDef] = None + UrlPath: Optional[List[str]] = None + +class InputSwitchScheduleActionSettingsTypeDef(BaseModel): + InputAttachmentNameReference: str + InputClippingSettings: Optional[InputClippingSettingsTypeDef] = None + UrlPath: Optional[Sequence[str]] = None + +class DescribeInputResponseTypeDef(BaseModel): + Arn: str + AttachedChannels: List[str] + Destinations: List[InputDestinationTypeDef] + Id: str + InputClass: InputClassType + InputDevices: List[InputDeviceSettingsTypeDef] + InputPartnerIds: List[str] + InputSourceType: InputSourceTypeType + MediaConnectFlows: List[MediaConnectFlowTypeDef] + Name: str + RoleArn: str + SecurityGroups: List[str] + Sources: List[InputSourceTypeDef] + State: InputStateType + Tags: Dict[str, str] + Type: InputTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class InputTypeDef(BaseModel): + Arn: Optional[str] = None + AttachedChannels: Optional[List[str]] = None + Destinations: Optional[List[InputDestinationTypeDef]] = None + Id: Optional[str] = None + InputClass: Optional[InputClassType] = None + InputDevices: Optional[List[InputDeviceSettingsTypeDef]] = None + InputPartnerIds: Optional[List[str]] = None + InputSourceType: Optional[InputSourceTypeType] = None + MediaConnectFlows: Optional[List[MediaConnectFlowTypeDef]] = None + Name: Optional[str] = None + RoleArn: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + Sources: Optional[List[InputSourceTypeDef]] = None + State: Optional[InputStateType] = None + Tags: Optional[Dict[str, str]] = None + Type: Optional[InputTypeType] = None + +class UpdateInputDeviceRequestRequestTypeDef(BaseModel): + InputDeviceId: str + HdDeviceSettings: Optional[InputDeviceConfigurableSettingsTypeDef] = None + Name: Optional[str] = None + UhdDeviceSettings: Optional[InputDeviceConfigurableSettingsTypeDef] = None + AvailabilityZone: Optional[str] = None + +class DescribeInputDeviceResponseTypeDef(BaseModel): + Arn: str + ConnectionState: InputDeviceConnectionStateType + DeviceSettingsSyncState: DeviceSettingsSyncStateType + DeviceUpdateStatus: DeviceUpdateStatusType + HdDeviceSettings: InputDeviceHdSettingsTypeDef + Id: str + MacAddress: str + Name: str + NetworkSettings: InputDeviceNetworkSettingsTypeDef + SerialNumber: str + Type: InputDeviceTypeType + UhdDeviceSettings: InputDeviceUhdSettingsTypeDef + Tags: Dict[str, str] + AvailabilityZone: str + MedialiveInputArns: List[str] + OutputType: InputDeviceOutputTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class InputDeviceSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectionState: Optional[InputDeviceConnectionStateType] = None + DeviceSettingsSyncState: Optional[DeviceSettingsSyncStateType] = None + DeviceUpdateStatus: Optional[DeviceUpdateStatusType] = None + HdDeviceSettings: Optional[InputDeviceHdSettingsTypeDef] = None + Id: Optional[str] = None + MacAddress: Optional[str] = None + Name: Optional[str] = None + NetworkSettings: Optional[InputDeviceNetworkSettingsTypeDef] = None + SerialNumber: Optional[str] = None + Type: Optional[InputDeviceTypeType] = None + UhdDeviceSettings: Optional[InputDeviceUhdSettingsTypeDef] = None + Tags: Optional[Dict[str, str]] = None + AvailabilityZone: Optional[str] = None + MedialiveInputArns: Optional[List[str]] = None + OutputType: Optional[InputDeviceOutputTypeType] = None + +class UpdateInputDeviceResponseTypeDef(BaseModel): + Arn: str + ConnectionState: InputDeviceConnectionStateType + DeviceSettingsSyncState: DeviceSettingsSyncStateType + DeviceUpdateStatus: DeviceUpdateStatusType + HdDeviceSettings: InputDeviceHdSettingsTypeDef + Id: str + MacAddress: str + Name: str + NetworkSettings: InputDeviceNetworkSettingsTypeDef + SerialNumber: str + Type: InputDeviceTypeType + UhdDeviceSettings: InputDeviceUhdSettingsTypeDef + Tags: Dict[str, str] + AvailabilityZone: str + MedialiveInputArns: List[str] + OutputType: InputDeviceOutputTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class HlsSettingsTypeDef(BaseModel): + AudioOnlyHlsSettings: Optional[AudioOnlyHlsSettingsTypeDef] = None + Fmp4HlsSettings: Optional[Fmp4HlsSettingsTypeDef] = None + FrameCaptureHlsSettings: Optional[Mapping[str, Any]] = None + StandardHlsSettings: Optional[StandardHlsSettingsTypeDef] = None + +class CreateSignalMapResponseTypeDef(BaseModel): + Arn: str + CloudWatchAlarmTemplateGroupIds: List[str] + CreatedAt: datetime + Description: str + DiscoveryEntryPointArn: str + ErrorMessage: str + EventBridgeRuleTemplateGroupIds: List[str] + FailedMediaResourceMap: Dict[str, MediaResourceTypeDef] + Id: str + LastDiscoveredAt: datetime + LastSuccessfulMonitorDeployment: SuccessfulMonitorDeploymentTypeDef + MediaResourceMap: Dict[str, MediaResourceTypeDef] + ModifiedAt: datetime + MonitorChangesPendingDeployment: bool + MonitorDeployment: MonitorDeploymentTypeDef + Name: str + Status: SignalMapStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSignalMapResponseTypeDef(BaseModel): + Arn: str + CloudWatchAlarmTemplateGroupIds: List[str] + CreatedAt: datetime + Description: str + DiscoveryEntryPointArn: str + ErrorMessage: str + EventBridgeRuleTemplateGroupIds: List[str] + FailedMediaResourceMap: Dict[str, MediaResourceTypeDef] + Id: str + LastDiscoveredAt: datetime + LastSuccessfulMonitorDeployment: SuccessfulMonitorDeploymentTypeDef + MediaResourceMap: Dict[str, MediaResourceTypeDef] + ModifiedAt: datetime + MonitorChangesPendingDeployment: bool + MonitorDeployment: MonitorDeploymentTypeDef + Name: str + Status: SignalMapStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDeleteMonitorDeploymentResponseTypeDef(BaseModel): + Arn: str + CloudWatchAlarmTemplateGroupIds: List[str] + CreatedAt: datetime + Description: str + DiscoveryEntryPointArn: str + ErrorMessage: str + EventBridgeRuleTemplateGroupIds: List[str] + FailedMediaResourceMap: Dict[str, MediaResourceTypeDef] + Id: str + LastDiscoveredAt: datetime + LastSuccessfulMonitorDeployment: SuccessfulMonitorDeploymentTypeDef + MediaResourceMap: Dict[str, MediaResourceTypeDef] + ModifiedAt: datetime + MonitorChangesPendingDeployment: bool + MonitorDeployment: MonitorDeploymentTypeDef + Name: str + Status: SignalMapStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMonitorDeploymentResponseTypeDef(BaseModel): + Arn: str + CloudWatchAlarmTemplateGroupIds: List[str] + CreatedAt: datetime + Description: str + DiscoveryEntryPointArn: str + ErrorMessage: str + EventBridgeRuleTemplateGroupIds: List[str] + FailedMediaResourceMap: Dict[str, MediaResourceTypeDef] + Id: str + LastDiscoveredAt: datetime + LastSuccessfulMonitorDeployment: SuccessfulMonitorDeploymentTypeDef + MediaResourceMap: Dict[str, MediaResourceTypeDef] + ModifiedAt: datetime + MonitorChangesPendingDeployment: bool + MonitorDeployment: MonitorDeploymentTypeDef + Name: str + Status: SignalMapStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartUpdateSignalMapResponseTypeDef(BaseModel): + Arn: str + CloudWatchAlarmTemplateGroupIds: List[str] + CreatedAt: datetime + Description: str + DiscoveryEntryPointArn: str + ErrorMessage: str + EventBridgeRuleTemplateGroupIds: List[str] + FailedMediaResourceMap: Dict[str, MediaResourceTypeDef] + Id: str + LastDiscoveredAt: datetime + LastSuccessfulMonitorDeployment: SuccessfulMonitorDeploymentTypeDef + MediaResourceMap: Dict[str, MediaResourceTypeDef] + ModifiedAt: datetime + MonitorChangesPendingDeployment: bool + MonitorDeployment: MonitorDeploymentTypeDef + Name: str + Status: SignalMapStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMultiplexResponseTypeDef(BaseModel): + Arn: str + AvailabilityZones: List[str] + Destinations: List[MultiplexOutputDestinationTypeDef] + Id: str + MultiplexSettings: MultiplexSettingsTypeDef + Name: str + PipelinesRunningCount: int + ProgramCount: int + State: MultiplexStateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMultiplexResponseTypeDef(BaseModel): + Arn: str + AvailabilityZones: List[str] + Destinations: List[MultiplexOutputDestinationTypeDef] + Id: str + MultiplexSettings: MultiplexSettingsTypeDef + Name: str + PipelinesRunningCount: int + ProgramCount: int + State: MultiplexStateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class MultiplexTypeDef(BaseModel): + Arn: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + Destinations: Optional[List[MultiplexOutputDestinationTypeDef]] = None + Id: Optional[str] = None + MultiplexSettings: Optional[MultiplexSettingsTypeDef] = None + Name: Optional[str] = None + PipelinesRunningCount: Optional[int] = None + ProgramCount: Optional[int] = None + State: Optional[MultiplexStateType] = None + Tags: Optional[Dict[str, str]] = None + +class StartMultiplexResponseTypeDef(BaseModel): + Arn: str + AvailabilityZones: List[str] + Destinations: List[MultiplexOutputDestinationTypeDef] + Id: str + MultiplexSettings: MultiplexSettingsTypeDef + Name: str + PipelinesRunningCount: int + ProgramCount: int + State: MultiplexStateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StopMultiplexResponseTypeDef(BaseModel): + Arn: str + AvailabilityZones: List[str] + Destinations: List[MultiplexOutputDestinationTypeDef] + Id: str + MultiplexSettings: MultiplexSettingsTypeDef + Name: str + PipelinesRunningCount: int + ProgramCount: int + State: MultiplexStateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMultiplexesResponseTypeDef(BaseModel): + Multiplexes: List[MultiplexSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MultiplexProgramSettingsTypeDef(BaseModel): + ProgramNumber: int + PreferredChannelPipeline: Optional[PreferredChannelPipelineType] = None + ServiceDescriptor: Optional[MultiplexProgramServiceDescriptorTypeDef] = None + VideoSettings: Optional[MultiplexVideoSettingsTypeDef] = None + +class AudioWatermarkSettingsTypeDef(BaseModel): + NielsenWatermarksSettings: Optional[NielsenWatermarksSettingsTypeDef] = None + +class Scte35DescriptorSettingsTypeDef(BaseModel): + SegmentationDescriptorScte35DescriptorSettings: Scte35SegmentationDescriptorTypeDef + +class DescribeThumbnailsResponseTypeDef(BaseModel): + ThumbnailDetails: List[ThumbnailDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VideoSelectorTypeDef(BaseModel): + ColorSpace: Optional[VideoSelectorColorSpaceType] = None + ColorSpaceSettings: Optional[VideoSelectorColorSpaceSettingsTypeDef] = None + ColorSpaceUsage: Optional[VideoSelectorColorSpaceUsageType] = None + SelectorSettings: Optional[VideoSelectorSettingsTypeDef] = None + +class CaptionDescriptionOutputTypeDef(BaseModel): + CaptionSelectorName: str + Name: str + Accessibility: Optional[AccessibilityTypeType] = None + DestinationSettings: Optional[CaptionDestinationSettingsOutputTypeDef] = None + LanguageCode: Optional[str] = None + LanguageDescription: Optional[str] = None + CaptionDashRoles: Optional[List[DashRoleCaptionType]] = None + DvbDashAccessibility: Optional[DvbDashAccessibilityType] = None + +class CaptionDescriptionTypeDef(BaseModel): + CaptionSelectorName: str + Name: str + Accessibility: Optional[AccessibilityTypeType] = None + DestinationSettings: Optional[CaptionDestinationSettingsTypeDef] = None + LanguageCode: Optional[str] = None + LanguageDescription: Optional[str] = None + CaptionDashRoles: Optional[Sequence[DashRoleCaptionType]] = None + DvbDashAccessibility: Optional[DvbDashAccessibilityType] = None + +class HlsGroupSettingsOutputTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + AdMarkers: Optional[List[HlsAdMarkersType]] = None + BaseUrlContent: Optional[str] = None + BaseUrlContent1: Optional[str] = None + BaseUrlManifest: Optional[str] = None + BaseUrlManifest1: Optional[str] = None + CaptionLanguageMappings: Optional[List[CaptionLanguageMappingTypeDef]] = None + CaptionLanguageSetting: Optional[HlsCaptionLanguageSettingType] = None + ClientCache: Optional[HlsClientCacheType] = None + CodecSpecification: Optional[HlsCodecSpecificationType] = None + ConstantIv: Optional[str] = None + DirectoryStructure: Optional[HlsDirectoryStructureType] = None + DiscontinuityTags: Optional[HlsDiscontinuityTagsType] = None + EncryptionType: Optional[HlsEncryptionTypeType] = None + HlsCdnSettings: Optional[HlsCdnSettingsTypeDef] = None + HlsId3SegmentTagging: Optional[HlsId3SegmentTaggingStateType] = None + IFrameOnlyPlaylists: Optional[IFrameOnlyPlaylistTypeType] = None + IncompleteSegmentBehavior: Optional[HlsIncompleteSegmentBehaviorType] = None + IndexNSegments: Optional[int] = None + InputLossAction: Optional[InputLossActionForHlsOutType] = None + IvInManifest: Optional[HlsIvInManifestType] = None + IvSource: Optional[HlsIvSourceType] = None + KeepSegments: Optional[int] = None + KeyFormat: Optional[str] = None + KeyFormatVersions: Optional[str] = None + KeyProviderSettings: Optional[KeyProviderSettingsTypeDef] = None + ManifestCompression: Optional[HlsManifestCompressionType] = None + ManifestDurationFormat: Optional[HlsManifestDurationFormatType] = None + MinSegmentLength: Optional[int] = None + Mode: Optional[HlsModeType] = None + OutputSelection: Optional[HlsOutputSelectionType] = None + ProgramDateTime: Optional[HlsProgramDateTimeType] = None + ProgramDateTimeClock: Optional[HlsProgramDateTimeClockType] = None + ProgramDateTimePeriod: Optional[int] = None + RedundantManifest: Optional[HlsRedundantManifestType] = None + SegmentLength: Optional[int] = None + SegmentationMode: Optional[HlsSegmentationModeType] = None + SegmentsPerSubdirectory: Optional[int] = None + StreamInfResolution: Optional[HlsStreamInfResolutionType] = None + TimedMetadataId3Frame: Optional[HlsTimedMetadataId3FrameType] = None + TimedMetadataId3Period: Optional[int] = None + TimestampDeltaMilliseconds: Optional[int] = None + TsFileMode: Optional[HlsTsFileModeType] = None + +class HlsGroupSettingsTypeDef(BaseModel): + Destination: OutputLocationRefTypeDef + AdMarkers: Optional[Sequence[HlsAdMarkersType]] = None + BaseUrlContent: Optional[str] = None + BaseUrlContent1: Optional[str] = None + BaseUrlManifest: Optional[str] = None + BaseUrlManifest1: Optional[str] = None + CaptionLanguageMappings: Optional[Sequence[CaptionLanguageMappingTypeDef]] = None + CaptionLanguageSetting: Optional[HlsCaptionLanguageSettingType] = None + ClientCache: Optional[HlsClientCacheType] = None + CodecSpecification: Optional[HlsCodecSpecificationType] = None + ConstantIv: Optional[str] = None + DirectoryStructure: Optional[HlsDirectoryStructureType] = None + DiscontinuityTags: Optional[HlsDiscontinuityTagsType] = None + EncryptionType: Optional[HlsEncryptionTypeType] = None + HlsCdnSettings: Optional[HlsCdnSettingsTypeDef] = None + HlsId3SegmentTagging: Optional[HlsId3SegmentTaggingStateType] = None + IFrameOnlyPlaylists: Optional[IFrameOnlyPlaylistTypeType] = None + IncompleteSegmentBehavior: Optional[HlsIncompleteSegmentBehaviorType] = None + IndexNSegments: Optional[int] = None + InputLossAction: Optional[InputLossActionForHlsOutType] = None + IvInManifest: Optional[HlsIvInManifestType] = None + IvSource: Optional[HlsIvSourceType] = None + KeepSegments: Optional[int] = None + KeyFormat: Optional[str] = None + KeyFormatVersions: Optional[str] = None + KeyProviderSettings: Optional[KeyProviderSettingsTypeDef] = None + ManifestCompression: Optional[HlsManifestCompressionType] = None + ManifestDurationFormat: Optional[HlsManifestDurationFormatType] = None + MinSegmentLength: Optional[int] = None + Mode: Optional[HlsModeType] = None + OutputSelection: Optional[HlsOutputSelectionType] = None + ProgramDateTime: Optional[HlsProgramDateTimeType] = None + ProgramDateTimeClock: Optional[HlsProgramDateTimeClockType] = None + ProgramDateTimePeriod: Optional[int] = None + RedundantManifest: Optional[HlsRedundantManifestType] = None + SegmentLength: Optional[int] = None + SegmentationMode: Optional[HlsSegmentationModeType] = None + SegmentsPerSubdirectory: Optional[int] = None + StreamInfResolution: Optional[HlsStreamInfResolutionType] = None + TimedMetadataId3Frame: Optional[HlsTimedMetadataId3FrameType] = None + TimedMetadataId3Period: Optional[int] = None + TimestampDeltaMilliseconds: Optional[int] = None + TsFileMode: Optional[HlsTsFileModeType] = None + +class AudioSelectorExtraOutputTypeDef(BaseModel): + Name: str + SelectorSettings: Optional[AudioSelectorSettingsExtraOutputTypeDef] = None + +class AudioSelectorOutputTypeDef(BaseModel): + Name: str + SelectorSettings: Optional[AudioSelectorSettingsOutputTypeDef] = None + +class AudioSelectorTypeDef(BaseModel): + Name: str + SelectorSettings: Optional[AudioSelectorSettingsTypeDef] = None + +class CaptionSelectorExtraOutputTypeDef(BaseModel): + Name: str + LanguageCode: Optional[str] = None + SelectorSettings: Optional[CaptionSelectorSettingsExtraOutputTypeDef] = None + +class CaptionSelectorOutputTypeDef(BaseModel): + Name: str + LanguageCode: Optional[str] = None + SelectorSettings: Optional[CaptionSelectorSettingsOutputTypeDef] = None + +class CaptionSelectorTypeDef(BaseModel): + Name: str + LanguageCode: Optional[str] = None + SelectorSettings: Optional[CaptionSelectorSettingsTypeDef] = None + +class ArchiveOutputSettingsTypeDef(BaseModel): + ContainerSettings: ArchiveContainerSettingsTypeDef + Extension: Optional[str] = None + NameModifier: Optional[str] = None + +class UdpOutputSettingsTypeDef(BaseModel): + ContainerSettings: UdpContainerSettingsTypeDef + Destination: OutputLocationRefTypeDef + BufferMsec: Optional[int] = None + FecOutputSettings: Optional[FecOutputSettingsTypeDef] = None + +class AutomaticInputFailoverSettingsExtraOutputTypeDef(BaseModel): + SecondaryInputId: str + ErrorClearTimeMsec: Optional[int] = None + FailoverConditions: Optional[List[FailoverConditionTypeDef]] = None + InputPreference: Optional[InputPreferenceType] = None + +class AutomaticInputFailoverSettingsOutputTypeDef(BaseModel): + SecondaryInputId: str + ErrorClearTimeMsec: Optional[int] = None + FailoverConditions: Optional[List[FailoverConditionTypeDef]] = None + InputPreference: Optional[InputPreferenceType] = None + +class AutomaticInputFailoverSettingsTypeDef(BaseModel): + SecondaryInputId: str + ErrorClearTimeMsec: Optional[int] = None + FailoverConditions: Optional[Sequence[FailoverConditionTypeDef]] = None + InputPreference: Optional[InputPreferenceType] = None + +class VideoCodecSettingsOutputTypeDef(BaseModel): + FrameCaptureSettings: Optional[FrameCaptureSettingsTypeDef] = None + H264Settings: Optional[H264SettingsOutputTypeDef] = None + H265Settings: Optional[H265SettingsOutputTypeDef] = None + Mpeg2Settings: Optional[Mpeg2SettingsTypeDef] = None + +class VideoCodecSettingsTypeDef(BaseModel): + FrameCaptureSettings: Optional[FrameCaptureSettingsTypeDef] = None + H264Settings: Optional[H264SettingsTypeDef] = None + H265Settings: Optional[H265SettingsTypeDef] = None + Mpeg2Settings: Optional[Mpeg2SettingsTypeDef] = None + +class CreateInputResponseTypeDef(BaseModel): + Input: InputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePartnerInputResponseTypeDef(BaseModel): + Input: InputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInputsResponseTypeDef(BaseModel): + Inputs: List[InputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateInputResponseTypeDef(BaseModel): + Input: InputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInputDevicesResponseTypeDef(BaseModel): + InputDevices: List[InputDeviceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class HlsOutputSettingsTypeDef(BaseModel): + HlsSettings: HlsSettingsTypeDef + H265PackagingType: Optional[HlsH265PackagingTypeType] = None + NameModifier: Optional[str] = None + SegmentModifier: Optional[str] = None + +class CreateMultiplexResponseTypeDef(BaseModel): + Multiplex: MultiplexTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMultiplexResponseTypeDef(BaseModel): + Multiplex: MultiplexTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMultiplexProgramRequestRequestTypeDef(BaseModel): + MultiplexId: str + MultiplexProgramSettings: MultiplexProgramSettingsTypeDef + ProgramName: str + RequestId: str + +class DeleteMultiplexProgramResponseTypeDef(BaseModel): + ChannelId: str + MultiplexProgramSettings: MultiplexProgramSettingsTypeDef + PacketIdentifiersMap: MultiplexProgramPacketIdentifiersMapTypeDef + PipelineDetails: List[MultiplexProgramPipelineDetailTypeDef] + ProgramName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMultiplexProgramResponseTypeDef(BaseModel): + ChannelId: str + MultiplexProgramSettings: MultiplexProgramSettingsTypeDef + PacketIdentifiersMap: MultiplexProgramPacketIdentifiersMapTypeDef + PipelineDetails: List[MultiplexProgramPipelineDetailTypeDef] + ProgramName: str + ResponseMetadata: ResponseMetadataTypeDef + +class MultiplexProgramTypeDef(BaseModel): + ChannelId: Optional[str] = None + MultiplexProgramSettings: Optional[MultiplexProgramSettingsTypeDef] = None + PacketIdentifiersMap: Optional[MultiplexProgramPacketIdentifiersMapTypeDef] = None + PipelineDetails: Optional[List[MultiplexProgramPipelineDetailTypeDef]] = None + ProgramName: Optional[str] = None + +class UpdateMultiplexProgramRequestRequestTypeDef(BaseModel): + MultiplexId: str + ProgramName: str + MultiplexProgramSettings: Optional[MultiplexProgramSettingsTypeDef] = None + +class AudioDescriptionOutputTypeDef(BaseModel): + AudioSelectorName: str + Name: str + AudioNormalizationSettings: Optional[AudioNormalizationSettingsTypeDef] = None + AudioType: Optional[AudioTypeType] = None + AudioTypeControl: Optional[AudioDescriptionAudioTypeControlType] = None + AudioWatermarkingSettings: Optional[AudioWatermarkSettingsTypeDef] = None + CodecSettings: Optional[AudioCodecSettingsOutputTypeDef] = None + LanguageCode: Optional[str] = None + LanguageCodeControl: Optional[AudioDescriptionLanguageCodeControlType] = None + RemixSettings: Optional[RemixSettingsOutputTypeDef] = None + StreamName: Optional[str] = None + AudioDashRoles: Optional[List[DashRoleAudioType]] = None + DvbDashAccessibility: Optional[DvbDashAccessibilityType] = None + +class AudioDescriptionTypeDef(BaseModel): + AudioSelectorName: str + Name: str + AudioNormalizationSettings: Optional[AudioNormalizationSettingsTypeDef] = None + AudioType: Optional[AudioTypeType] = None + AudioTypeControl: Optional[AudioDescriptionAudioTypeControlType] = None + AudioWatermarkingSettings: Optional[AudioWatermarkSettingsTypeDef] = None + CodecSettings: Optional[AudioCodecSettingsTypeDef] = None + LanguageCode: Optional[str] = None + LanguageCodeControl: Optional[AudioDescriptionLanguageCodeControlType] = None + RemixSettings: Optional[RemixSettingsTypeDef] = None + StreamName: Optional[str] = None + AudioDashRoles: Optional[Sequence[DashRoleAudioType]] = None + DvbDashAccessibility: Optional[DvbDashAccessibilityType] = None + +class UpdateChannelClassRequestRequestTypeDef(BaseModel): + ChannelClass: ChannelClassType + ChannelId: str + Destinations: Optional[Sequence[OutputDestinationUnionTypeDef]] = None + +class Scte35DescriptorTypeDef(BaseModel): + Scte35DescriptorSettings: Scte35DescriptorSettingsTypeDef + +class OutputGroupSettingsOutputTypeDef(BaseModel): + ArchiveGroupSettings: Optional[ArchiveGroupSettingsTypeDef] = None + FrameCaptureGroupSettings: Optional[FrameCaptureGroupSettingsTypeDef] = None + HlsGroupSettings: Optional[HlsGroupSettingsOutputTypeDef] = None + MediaPackageGroupSettings: Optional[MediaPackageGroupSettingsTypeDef] = None + MsSmoothGroupSettings: Optional[MsSmoothGroupSettingsTypeDef] = None + MultiplexGroupSettings: Optional[Dict[str, Any]] = None + RtmpGroupSettings: Optional[RtmpGroupSettingsOutputTypeDef] = None + UdpGroupSettings: Optional[UdpGroupSettingsTypeDef] = None + CmafIngestGroupSettings: Optional[CmafIngestGroupSettingsTypeDef] = None + +class OutputGroupSettingsTypeDef(BaseModel): + ArchiveGroupSettings: Optional[ArchiveGroupSettingsTypeDef] = None + FrameCaptureGroupSettings: Optional[FrameCaptureGroupSettingsTypeDef] = None + HlsGroupSettings: Optional[HlsGroupSettingsTypeDef] = None + MediaPackageGroupSettings: Optional[MediaPackageGroupSettingsTypeDef] = None + MsSmoothGroupSettings: Optional[MsSmoothGroupSettingsTypeDef] = None + MultiplexGroupSettings: Optional[Mapping[str, Any]] = None + RtmpGroupSettings: Optional[RtmpGroupSettingsTypeDef] = None + UdpGroupSettings: Optional[UdpGroupSettingsTypeDef] = None + CmafIngestGroupSettings: Optional[CmafIngestGroupSettingsTypeDef] = None + +class InputSettingsExtraOutputTypeDef(BaseModel): + AudioSelectors: Optional[List[AudioSelectorExtraOutputTypeDef]] = None + CaptionSelectors: Optional[List[CaptionSelectorExtraOutputTypeDef]] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + FilterStrength: Optional[int] = None + InputFilter: Optional[InputFilterType] = None + NetworkInputSettings: Optional[NetworkInputSettingsTypeDef] = None + Scte35Pid: Optional[int] = None + Smpte2038DataPreference: Optional[Smpte2038DataPreferenceType] = None + SourceEndBehavior: Optional[InputSourceEndBehaviorType] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputSettingsOutputTypeDef(BaseModel): + AudioSelectors: Optional[List[AudioSelectorOutputTypeDef]] = None + CaptionSelectors: Optional[List[CaptionSelectorOutputTypeDef]] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + FilterStrength: Optional[int] = None + InputFilter: Optional[InputFilterType] = None + NetworkInputSettings: Optional[NetworkInputSettingsTypeDef] = None + Scte35Pid: Optional[int] = None + Smpte2038DataPreference: Optional[Smpte2038DataPreferenceType] = None + SourceEndBehavior: Optional[InputSourceEndBehaviorType] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class InputSettingsTypeDef(BaseModel): + AudioSelectors: Optional[Sequence[AudioSelectorTypeDef]] = None + CaptionSelectors: Optional[Sequence[CaptionSelectorTypeDef]] = None + DeblockFilter: Optional[InputDeblockFilterType] = None + DenoiseFilter: Optional[InputDenoiseFilterType] = None + FilterStrength: Optional[int] = None + InputFilter: Optional[InputFilterType] = None + NetworkInputSettings: Optional[NetworkInputSettingsTypeDef] = None + Scte35Pid: Optional[int] = None + Smpte2038DataPreference: Optional[Smpte2038DataPreferenceType] = None + SourceEndBehavior: Optional[InputSourceEndBehaviorType] = None + VideoSelector: Optional[VideoSelectorTypeDef] = None + +class VideoDescriptionOutputTypeDef(BaseModel): + Name: str + CodecSettings: Optional[VideoCodecSettingsOutputTypeDef] = None + Height: Optional[int] = None + RespondToAfd: Optional[VideoDescriptionRespondToAfdType] = None + ScalingBehavior: Optional[VideoDescriptionScalingBehaviorType] = None + Sharpness: Optional[int] = None + Width: Optional[int] = None + +class VideoDescriptionTypeDef(BaseModel): + Name: str + CodecSettings: Optional[VideoCodecSettingsTypeDef] = None + Height: Optional[int] = None + RespondToAfd: Optional[VideoDescriptionRespondToAfdType] = None + ScalingBehavior: Optional[VideoDescriptionScalingBehaviorType] = None + Sharpness: Optional[int] = None + Width: Optional[int] = None + +class OutputSettingsTypeDef(BaseModel): + ArchiveOutputSettings: Optional[ArchiveOutputSettingsTypeDef] = None + FrameCaptureOutputSettings: Optional[FrameCaptureOutputSettingsTypeDef] = None + HlsOutputSettings: Optional[HlsOutputSettingsTypeDef] = None + MediaPackageOutputSettings: Optional[Mapping[str, Any]] = None + MsSmoothOutputSettings: Optional[MsSmoothOutputSettingsTypeDef] = None + MultiplexOutputSettings: Optional[MultiplexOutputSettingsTypeDef] = None + RtmpOutputSettings: Optional[RtmpOutputSettingsTypeDef] = None + UdpOutputSettings: Optional[UdpOutputSettingsTypeDef] = None + CmafIngestOutputSettings: Optional[CmafIngestOutputSettingsTypeDef] = None + +class CreateMultiplexProgramResponseTypeDef(BaseModel): + MultiplexProgram: MultiplexProgramTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMultiplexProgramResponseTypeDef(BaseModel): + MultiplexProgram: MultiplexProgramTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class Scte35TimeSignalScheduleActionSettingsExtraOutputTypeDef(BaseModel): + Scte35Descriptors: List[Scte35DescriptorTypeDef] + +class Scte35TimeSignalScheduleActionSettingsOutputTypeDef(BaseModel): + Scte35Descriptors: List[Scte35DescriptorTypeDef] + +class Scte35TimeSignalScheduleActionSettingsTypeDef(BaseModel): + Scte35Descriptors: Sequence[Scte35DescriptorTypeDef] + +class InputAttachmentExtraOutputTypeDef(BaseModel): + AutomaticInputFailoverSettings: Optional[ AutomaticInputFailoverSettingsExtraOutputTypeDef ] = None + InputAttachmentName: Optional[str] = None + InputId: Optional[str] = None + InputSettings: Optional[InputSettingsExtraOutputTypeDef] = None + +class InputAttachmentOutputTypeDef(BaseModel): + AutomaticInputFailoverSettings: Optional[AutomaticInputFailoverSettingsOutputTypeDef] = None + InputAttachmentName: Optional[str] = None + InputId: Optional[str] = None + InputSettings: Optional[InputSettingsOutputTypeDef] = None + +class InputAttachmentTypeDef(BaseModel): + AutomaticInputFailoverSettings: Optional[AutomaticInputFailoverSettingsTypeDef] = None + InputAttachmentName: Optional[str] = None + InputId: Optional[str] = None + InputSettings: Optional[InputSettingsTypeDef] = None + +class OutputTypeDef(BaseModel): + OutputSettings: OutputSettingsTypeDef + AudioDescriptionNames: Optional[Sequence[str]] = None + CaptionDescriptionNames: Optional[Sequence[str]] = None + OutputName: Optional[str] = None + VideoDescriptionName: Optional[str] = None + +class ScheduleActionSettingsExtraOutputTypeDef(BaseModel): + HlsId3SegmentTaggingSettings: Optional[ HlsId3SegmentTaggingScheduleActionSettingsTypeDef ] = None + HlsTimedMetadataSettings: Optional[HlsTimedMetadataScheduleActionSettingsTypeDef] = None + InputPrepareSettings: Optional[InputPrepareScheduleActionSettingsExtraOutputTypeDef] = None + InputSwitchSettings: Optional[InputSwitchScheduleActionSettingsExtraOutputTypeDef] = None + MotionGraphicsImageActivateSettings: Optional[ MotionGraphicsActivateScheduleActionSettingsTypeDef ] = None + MotionGraphicsImageDeactivateSettings: Optional[Dict[str, Any]] = None + PauseStateSettings: Optional[PauseStateScheduleActionSettingsExtraOutputTypeDef] = None + Scte35InputSettings: Optional[Scte35InputScheduleActionSettingsTypeDef] = None + Scte35ReturnToNetworkSettings: Optional[ Scte35ReturnToNetworkScheduleActionSettingsTypeDef ] = None + Scte35SpliceInsertSettings: Optional[Scte35SpliceInsertScheduleActionSettingsTypeDef] = None + Scte35TimeSignalSettings: Optional[ Scte35TimeSignalScheduleActionSettingsExtraOutputTypeDef ] = None + StaticImageActivateSettings: Optional[ StaticImageActivateScheduleActionSettingsTypeDef ] = None + StaticImageDeactivateSettings: Optional[ StaticImageDeactivateScheduleActionSettingsTypeDef ] = None + StaticImageOutputActivateSettings: Optional[ StaticImageOutputActivateScheduleActionSettingsExtraOutputTypeDef ] = None + StaticImageOutputDeactivateSettings: Optional[ StaticImageOutputDeactivateScheduleActionSettingsExtraOutputTypeDef ] = None + +class ScheduleActionSettingsOutputTypeDef(BaseModel): + HlsId3SegmentTaggingSettings: Optional[ HlsId3SegmentTaggingScheduleActionSettingsTypeDef ] = None + HlsTimedMetadataSettings: Optional[HlsTimedMetadataScheduleActionSettingsTypeDef] = None + InputPrepareSettings: Optional[InputPrepareScheduleActionSettingsOutputTypeDef] = None + InputSwitchSettings: Optional[InputSwitchScheduleActionSettingsOutputTypeDef] = None + MotionGraphicsImageActivateSettings: Optional[ MotionGraphicsActivateScheduleActionSettingsTypeDef ] = None + MotionGraphicsImageDeactivateSettings: Optional[Dict[str, Any]] = None + PauseStateSettings: Optional[PauseStateScheduleActionSettingsOutputTypeDef] = None + Scte35InputSettings: Optional[Scte35InputScheduleActionSettingsTypeDef] = None + Scte35ReturnToNetworkSettings: Optional[ Scte35ReturnToNetworkScheduleActionSettingsTypeDef ] = None + Scte35SpliceInsertSettings: Optional[Scte35SpliceInsertScheduleActionSettingsTypeDef] = None + Scte35TimeSignalSettings: Optional[ Scte35TimeSignalScheduleActionSettingsOutputTypeDef ] = None + StaticImageActivateSettings: Optional[ StaticImageActivateScheduleActionSettingsTypeDef ] = None + StaticImageDeactivateSettings: Optional[ StaticImageDeactivateScheduleActionSettingsTypeDef ] = None + StaticImageOutputActivateSettings: Optional[ StaticImageOutputActivateScheduleActionSettingsOutputTypeDef ] = None + StaticImageOutputDeactivateSettings: Optional[ StaticImageOutputDeactivateScheduleActionSettingsOutputTypeDef ] = None + +class ScheduleActionSettingsTypeDef(BaseModel): + HlsId3SegmentTaggingSettings: Optional[ HlsId3SegmentTaggingScheduleActionSettingsTypeDef ] = None + HlsTimedMetadataSettings: Optional[HlsTimedMetadataScheduleActionSettingsTypeDef] = None + InputPrepareSettings: Optional[InputPrepareScheduleActionSettingsTypeDef] = None + InputSwitchSettings: Optional[InputSwitchScheduleActionSettingsTypeDef] = None + MotionGraphicsImageActivateSettings: Optional[ MotionGraphicsActivateScheduleActionSettingsTypeDef ] = None + MotionGraphicsImageDeactivateSettings: Optional[Mapping[str, Any]] = None + PauseStateSettings: Optional[PauseStateScheduleActionSettingsTypeDef] = None + Scte35InputSettings: Optional[Scte35InputScheduleActionSettingsTypeDef] = None + Scte35ReturnToNetworkSettings: Optional[ Scte35ReturnToNetworkScheduleActionSettingsTypeDef ] = None + Scte35SpliceInsertSettings: Optional[Scte35SpliceInsertScheduleActionSettingsTypeDef] = None + Scte35TimeSignalSettings: Optional[Scte35TimeSignalScheduleActionSettingsTypeDef] = None + StaticImageActivateSettings: Optional[ StaticImageActivateScheduleActionSettingsTypeDef ] = None + StaticImageDeactivateSettings: Optional[ StaticImageDeactivateScheduleActionSettingsTypeDef ] = None + StaticImageOutputActivateSettings: Optional[ StaticImageOutputActivateScheduleActionSettingsTypeDef ] = None + StaticImageOutputDeactivateSettings: Optional[ StaticImageOutputDeactivateScheduleActionSettingsTypeDef ] = None + +class ChannelSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CdiInputSpecification: Optional[CdiInputSpecificationTypeDef] = None + ChannelClass: Optional[ChannelClassType] = None + Destinations: Optional[List[OutputDestinationOutputTypeDef]] = None + EgressEndpoints: Optional[List[ChannelEgressEndpointTypeDef]] = None + Id: Optional[str] = None + InputAttachments: Optional[List[InputAttachmentOutputTypeDef]] = None + InputSpecification: Optional[InputSpecificationTypeDef] = None + LogLevel: Optional[LogLevelType] = None + Maintenance: Optional[MaintenanceStatusTypeDef] = None + Name: Optional[str] = None + PipelinesRunningCount: Optional[int] = None + RoleArn: Optional[str] = None + State: Optional[ChannelStateType] = None + Tags: Optional[Dict[str, str]] = None + Vpc: Optional[VpcOutputSettingsDescriptionTypeDef] = None + +class OutputGroupOutputTypeDef(BaseModel): + OutputGroupSettings: OutputGroupSettingsOutputTypeDef + Outputs: List[OutputTypeDef] + Name: Optional[str] = None + +class OutputGroupTypeDef(BaseModel): + OutputGroupSettings: OutputGroupSettingsTypeDef + Outputs: Sequence[OutputTypeDef] + Name: Optional[str] = None + +class ScheduleActionExtraOutputTypeDef(BaseModel): + ActionName: str + ScheduleActionSettings: ScheduleActionSettingsExtraOutputTypeDef + ScheduleActionStartSettings: ScheduleActionStartSettingsExtraOutputTypeDef + +class ScheduleActionOutputTypeDef(BaseModel): + ActionName: str + ScheduleActionSettings: ScheduleActionSettingsOutputTypeDef + ScheduleActionStartSettings: ScheduleActionStartSettingsOutputTypeDef + +class ScheduleActionTypeDef(BaseModel): + ActionName: str + ScheduleActionSettings: ScheduleActionSettingsTypeDef + ScheduleActionStartSettings: ScheduleActionStartSettingsTypeDef + +class ListChannelsResponseTypeDef(BaseModel): + Channels: List[ChannelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EncoderSettingsOutputTypeDef(BaseModel): + AudioDescriptions: List[AudioDescriptionOutputTypeDef] + OutputGroups: List[OutputGroupOutputTypeDef] + TimecodeConfig: TimecodeConfigTypeDef + VideoDescriptions: List[VideoDescriptionOutputTypeDef] + AvailBlanking: Optional[AvailBlankingTypeDef] = None + AvailConfiguration: Optional[AvailConfigurationTypeDef] = None + BlackoutSlate: Optional[BlackoutSlateTypeDef] = None + CaptionDescriptions: Optional[List[CaptionDescriptionOutputTypeDef]] = None + FeatureActivations: Optional[FeatureActivationsTypeDef] = None + GlobalConfiguration: Optional[GlobalConfigurationOutputTypeDef] = None + MotionGraphicsConfiguration: Optional[MotionGraphicsConfigurationOutputTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + ThumbnailConfiguration: Optional[ThumbnailConfigurationTypeDef] = None + ColorCorrectionSettings: Optional[ColorCorrectionSettingsOutputTypeDef] = None + +class EncoderSettingsTypeDef(BaseModel): + AudioDescriptions: Sequence[AudioDescriptionTypeDef] + OutputGroups: Sequence[OutputGroupTypeDef] + TimecodeConfig: TimecodeConfigTypeDef + VideoDescriptions: Sequence[VideoDescriptionTypeDef] + AvailBlanking: Optional[AvailBlankingTypeDef] = None + AvailConfiguration: Optional[AvailConfigurationTypeDef] = None + BlackoutSlate: Optional[BlackoutSlateTypeDef] = None + CaptionDescriptions: Optional[Sequence[CaptionDescriptionTypeDef]] = None + FeatureActivations: Optional[FeatureActivationsTypeDef] = None + GlobalConfiguration: Optional[GlobalConfigurationTypeDef] = None + MotionGraphicsConfiguration: Optional[MotionGraphicsConfigurationTypeDef] = None + NielsenConfiguration: Optional[NielsenConfigurationTypeDef] = None + ThumbnailConfiguration: Optional[ThumbnailConfigurationTypeDef] = None + ColorCorrectionSettings: Optional[ColorCorrectionSettingsTypeDef] = None + +class DescribeScheduleResponseTypeDef(BaseModel): + ScheduleActions: List[ScheduleActionExtraOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchScheduleActionCreateResultTypeDef(BaseModel): + ScheduleActions: List[ScheduleActionOutputTypeDef] + +class BatchScheduleActionDeleteResultTypeDef(BaseModel): + ScheduleActions: List[ScheduleActionOutputTypeDef] + +class BatchScheduleActionCreateRequestTypeDef(BaseModel): + ScheduleActions: Sequence[ScheduleActionTypeDef] + +class ChannelTypeDef(BaseModel): + Arn: Optional[str] = None + CdiInputSpecification: Optional[CdiInputSpecificationTypeDef] = None + ChannelClass: Optional[ChannelClassType] = None + Destinations: Optional[List[OutputDestinationOutputTypeDef]] = None + EgressEndpoints: Optional[List[ChannelEgressEndpointTypeDef]] = None + EncoderSettings: Optional[EncoderSettingsOutputTypeDef] = None + Id: Optional[str] = None + InputAttachments: Optional[List[InputAttachmentOutputTypeDef]] = None + InputSpecification: Optional[InputSpecificationTypeDef] = None + LogLevel: Optional[LogLevelType] = None + Maintenance: Optional[MaintenanceStatusTypeDef] = None + Name: Optional[str] = None + PipelineDetails: Optional[List[PipelineDetailTypeDef]] = None + PipelinesRunningCount: Optional[int] = None + RoleArn: Optional[str] = None + State: Optional[ChannelStateType] = None + Tags: Optional[Dict[str, str]] = None + Vpc: Optional[VpcOutputSettingsDescriptionTypeDef] = None + +class DeleteChannelResponseTypeDef(BaseModel): + Arn: str + CdiInputSpecification: CdiInputSpecificationTypeDef + ChannelClass: ChannelClassType + Destinations: List[OutputDestinationOutputTypeDef] + EgressEndpoints: List[ChannelEgressEndpointTypeDef] + EncoderSettings: EncoderSettingsOutputTypeDef + Id: str + InputAttachments: List[InputAttachmentOutputTypeDef] + InputSpecification: InputSpecificationTypeDef + LogLevel: LogLevelType + Maintenance: MaintenanceStatusTypeDef + Name: str + PipelineDetails: List[PipelineDetailTypeDef] + PipelinesRunningCount: int + RoleArn: str + State: ChannelStateType + Tags: Dict[str, str] + Vpc: VpcOutputSettingsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelResponseTypeDef(BaseModel): + Arn: str + CdiInputSpecification: CdiInputSpecificationTypeDef + ChannelClass: ChannelClassType + Destinations: List[OutputDestinationOutputTypeDef] + EgressEndpoints: List[ChannelEgressEndpointTypeDef] + EncoderSettings: EncoderSettingsOutputTypeDef + Id: str + InputAttachments: List[InputAttachmentOutputTypeDef] + InputSpecification: InputSpecificationTypeDef + LogLevel: LogLevelType + Maintenance: MaintenanceStatusTypeDef + Name: str + PipelineDetails: List[PipelineDetailTypeDef] + PipelinesRunningCount: int + RoleArn: str + State: ChannelStateType + Tags: Dict[str, str] + Vpc: VpcOutputSettingsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestartChannelPipelinesResponseTypeDef(BaseModel): + Arn: str + CdiInputSpecification: CdiInputSpecificationTypeDef + ChannelClass: ChannelClassType + Destinations: List[OutputDestinationOutputTypeDef] + EgressEndpoints: List[ChannelEgressEndpointTypeDef] + EncoderSettings: EncoderSettingsOutputTypeDef + Id: str + InputAttachments: List[InputAttachmentOutputTypeDef] + InputSpecification: InputSpecificationTypeDef + LogLevel: LogLevelType + Maintenance: MaintenanceStatusTypeDef + MaintenanceStatus: str + Name: str + PipelineDetails: List[PipelineDetailTypeDef] + PipelinesRunningCount: int + RoleArn: str + State: ChannelStateType + Tags: Dict[str, str] + Vpc: VpcOutputSettingsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartChannelResponseTypeDef(BaseModel): + Arn: str + CdiInputSpecification: CdiInputSpecificationTypeDef + ChannelClass: ChannelClassType + Destinations: List[OutputDestinationOutputTypeDef] + EgressEndpoints: List[ChannelEgressEndpointTypeDef] + EncoderSettings: EncoderSettingsOutputTypeDef + Id: str + InputAttachments: List[InputAttachmentOutputTypeDef] + InputSpecification: InputSpecificationTypeDef + LogLevel: LogLevelType + Maintenance: MaintenanceStatusTypeDef + Name: str + PipelineDetails: List[PipelineDetailTypeDef] + PipelinesRunningCount: int + RoleArn: str + State: ChannelStateType + Tags: Dict[str, str] + Vpc: VpcOutputSettingsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopChannelResponseTypeDef(BaseModel): + Arn: str + CdiInputSpecification: CdiInputSpecificationTypeDef + ChannelClass: ChannelClassType + Destinations: List[OutputDestinationOutputTypeDef] + EgressEndpoints: List[ChannelEgressEndpointTypeDef] + EncoderSettings: EncoderSettingsOutputTypeDef + Id: str + InputAttachments: List[InputAttachmentOutputTypeDef] + InputSpecification: InputSpecificationTypeDef + LogLevel: LogLevelType + Maintenance: MaintenanceStatusTypeDef + Name: str + PipelineDetails: List[PipelineDetailTypeDef] + PipelinesRunningCount: int + RoleArn: str + State: ChannelStateType + Tags: Dict[str, str] + Vpc: VpcOutputSettingsDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelRequestRequestTypeDef(BaseModel): + CdiInputSpecification: Optional[CdiInputSpecificationTypeDef] = None + ChannelClass: Optional[ChannelClassType] = None + Destinations: Optional[Sequence[OutputDestinationUnionTypeDef]] = None + EncoderSettings: Optional[EncoderSettingsTypeDef] = None + InputAttachments: Optional[Sequence[InputAttachmentUnionTypeDef]] = None + InputSpecification: Optional[InputSpecificationTypeDef] = None + LogLevel: Optional[LogLevelType] = None + Maintenance: Optional[MaintenanceCreateSettingsTypeDef] = None + Name: Optional[str] = None + RequestId: Optional[str] = None + Reserved: Optional[str] = None + RoleArn: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + Vpc: Optional[VpcOutputSettingsTypeDef] = None + +class UpdateChannelRequestRequestTypeDef(BaseModel): + ChannelId: str + CdiInputSpecification: Optional[CdiInputSpecificationTypeDef] = None + Destinations: Optional[Sequence[OutputDestinationUnionTypeDef]] = None + EncoderSettings: Optional[EncoderSettingsTypeDef] = None + InputAttachments: Optional[Sequence[InputAttachmentUnionTypeDef]] = None + InputSpecification: Optional[InputSpecificationTypeDef] = None + LogLevel: Optional[LogLevelType] = None + Maintenance: Optional[MaintenanceUpdateSettingsTypeDef] = None + Name: Optional[str] = None + RoleArn: Optional[str] = None + +class BatchUpdateScheduleResponseTypeDef(BaseModel): + Creates: BatchScheduleActionCreateResultTypeDef + Deletes: BatchScheduleActionDeleteResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateScheduleRequestRequestTypeDef(BaseModel): + ChannelId: str + Creates: Optional[BatchScheduleActionCreateRequestTypeDef] = None + Deletes: Optional[BatchScheduleActionDeleteRequestTypeDef] = None + +class CreateChannelResponseTypeDef(BaseModel): + Channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelClassResponseTypeDef(BaseModel): + Channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + Channel: ChannelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/medialive_constants.py b/aws_resource_validator/pydantic_models/medialive_constants.py new file mode 100644 index 00000000..c86e9d58 --- /dev/null +++ b/aws_resource_validator/pydantic_models/medialive_constants.py @@ -0,0 +1,970 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AacCodingModeType = Literal["AD_RECEIVER_MIX", "CODING_MODE_1_0", "CODING_MODE_1_1", "CODING_MODE_2_0", "CODING_MODE_5_1"] +AacInputTypeType = Literal["BROADCASTER_MIXED_AD", "NORMAL"] +AacProfileType = Literal["HEV1", "HEV2", "LC"] +AacRateControlModeType = Literal["CBR", "VBR"] +AacRawFormatType = Literal["LATM_LOAS", "NONE"] +AacSpecType = Literal["MPEG2", "MPEG4"] +AacVbrQualityType = Literal["HIGH", "LOW", "MEDIUM_HIGH", "MEDIUM_LOW"] +Ac3AttenuationControlType = Literal["ATTENUATE_3_DB", "NONE"] +Ac3BitstreamModeType = Literal["COMMENTARY", + "COMPLETE_MAIN", + "DIALOGUE", + "EMERGENCY", + "HEARING_IMPAIRED", + "MUSIC_AND_EFFECTS", + "VISUALLY_IMPAIRED", + "VOICE_OVER",] +Ac3CodingModeType = Literal["CODING_MODE_1_0", "CODING_MODE_1_1", "CODING_MODE_2_0", "CODING_MODE_3_2_LFE"] +Ac3DrcProfileType = Literal["FILM_STANDARD", "NONE"] +Ac3LfeFilterType = Literal["DISABLED", "ENABLED"] +Ac3MetadataControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +AcceptHeaderType = Literal["image/jpeg"] +AccessibilityTypeType = Literal["DOES_NOT_IMPLEMENT_ACCESSIBILITY_FEATURES", "IMPLEMENTS_ACCESSIBILITY_FEATURES"] +AfdSignalingType = Literal["AUTO", "FIXED", "NONE"] +AudioDescriptionAudioTypeControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +AudioDescriptionLanguageCodeControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +AudioLanguageSelectionPolicyType = Literal["LOOSE", "STRICT"] +AudioNormalizationAlgorithmControlType = Literal["CORRECT_AUDIO"] +AudioNormalizationAlgorithmType = Literal["ITU_1770_1", "ITU_1770_2"] +AudioOnlyHlsSegmentTypeType = Literal["AAC", "FMP4"] +AudioOnlyHlsTrackTypeType = Literal["ALTERNATE_AUDIO_AUTO_SELECT", + "ALTERNATE_AUDIO_AUTO_SELECT_DEFAULT", + "ALTERNATE_AUDIO_NOT_AUTO_SELECT", + "AUDIO_ONLY_VARIANT_STREAM",] +AudioTypeType = Literal["CLEAN_EFFECTS", "HEARING_IMPAIRED", "UNDEFINED", "VISUAL_IMPAIRED_COMMENTARY"] +AuthenticationSchemeType = Literal["AKAMAI", "COMMON"] +AvailBlankingStateType = Literal["DISABLED", "ENABLED"] +BlackoutSlateNetworkEndBlackoutType = Literal["DISABLED", "ENABLED"] +BlackoutSlateStateType = Literal["DISABLED", "ENABLED"] +BurnInAlignmentType = Literal["CENTERED", "LEFT", "SMART"] +BurnInBackgroundColorType = Literal["BLACK", "NONE", "WHITE"] +BurnInFontColorType = Literal["BLACK", "BLUE", "GREEN", "RED", "WHITE", "YELLOW"] +BurnInOutlineColorType = Literal["BLACK", "BLUE", "GREEN", "RED", "WHITE", "YELLOW"] +BurnInShadowColorType = Literal["BLACK", "NONE", "WHITE"] +BurnInTeletextGridControlType = Literal["FIXED", "SCALED"] +CdiInputResolutionType = Literal["FHD", "HD", "SD", "UHD"] +ChannelClassType = Literal["SINGLE_PIPELINE", "STANDARD"] +ChannelCreatedWaiterName = Literal["channel_created"] +ChannelDeletedWaiterName = Literal["channel_deleted"] +ChannelPipelineIdToRestartType = Literal["PIPELINE_0", "PIPELINE_1"] +ChannelRunningWaiterName = Literal["channel_running"] +ChannelStateType = Literal["CREATE_FAILED", + "CREATING", + "DELETED", + "DELETING", + "IDLE", + "RECOVERING", + "RUNNING", + "STARTING", + "STOPPING", + "UPDATE_FAILED", + "UPDATING",] +ChannelStoppedWaiterName = Literal["channel_stopped"] +CloudWatchAlarmTemplateComparisonOperatorType = Literal["GreaterThanOrEqualToThreshold", + "GreaterThanThreshold", + "LessThanOrEqualToThreshold", + "LessThanThreshold",] +CloudWatchAlarmTemplateStatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +CloudWatchAlarmTemplateTargetResourceTypeType = Literal["CLOUDFRONT_DISTRIBUTION", + "MEDIACONNECT_FLOW", + "MEDIALIVE_CHANNEL", + "MEDIALIVE_INPUT_DEVICE", + "MEDIALIVE_MULTIPLEX", + "MEDIAPACKAGE_CHANNEL", + "MEDIAPACKAGE_ORIGIN_ENDPOINT", + "S3_BUCKET",] +CloudWatchAlarmTemplateTreatMissingDataType = Literal["breaching", "ignore", "missing", "notBreaching"] +CmafIngestSegmentLengthUnitsType = Literal["MILLISECONDS", "SECONDS"] +CmafNielsenId3BehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +ColorSpaceType = Literal["HDR10", "HLG_2020", "REC_601", "REC_709"] +ContentTypeType = Literal["image/jpeg"] +DashRoleAudioType = Literal["ALTERNATE", + "COMMENTARY", + "DESCRIPTION", + "DUB", + "EMERGENCY", + "ENHANCED-AUDIO-INTELLIGIBILITY", + "KARAOKE", + "MAIN", + "SUPPLEMENTARY",] +DashRoleCaptionType = Literal["ALTERNATE", + "CAPTION", + "COMMENTARY", + "DESCRIPTION", + "DUB", + "EASYREADER", + "EMERGENCY", + "FORCED-SUBTITLE", + "KARAOKE", + "MAIN", + "METADATA", + "SUBTITLE", + "SUPPLEMENTARY",] +DescribeSchedulePaginatorName = Literal["describe_schedule"] +DeviceSettingsSyncStateType = Literal["SYNCED", "SYNCING"] +DeviceUpdateStatusType = Literal["NOT_UP_TO_DATE", "UPDATING", "UP_TO_DATE"] +DolbyEProgramSelectionType = Literal["ALL_CHANNELS", + "PROGRAM_1", + "PROGRAM_2", + "PROGRAM_3", + "PROGRAM_4", + "PROGRAM_5", + "PROGRAM_6", + "PROGRAM_7", + "PROGRAM_8",] +DvbDashAccessibilityType = Literal["DVBDASH_1_VISUALLY_IMPAIRED", + "DVBDASH_2_HARD_OF_HEARING", + "DVBDASH_3_SUPPLEMENTAL_COMMENTARY", + "DVBDASH_4_DIRECTORS_COMMENTARY", + "DVBDASH_5_EDUCATIONAL_NOTES", + "DVBDASH_6_MAIN_PROGRAM", + "DVBDASH_7_CLEAN_FEED",] +DvbSdtOutputSdtType = Literal["SDT_FOLLOW", "SDT_FOLLOW_IF_PRESENT", "SDT_MANUAL", "SDT_NONE"] +DvbSubDestinationAlignmentType = Literal["CENTERED", "LEFT", "SMART"] +DvbSubDestinationBackgroundColorType = Literal["BLACK", "NONE", "WHITE"] +DvbSubDestinationFontColorType = Literal["BLACK", "BLUE", "GREEN", "RED", "WHITE", "YELLOW"] +DvbSubDestinationOutlineColorType = Literal["BLACK", "BLUE", "GREEN", "RED", "WHITE", "YELLOW"] +DvbSubDestinationShadowColorType = Literal["BLACK", "NONE", "WHITE"] +DvbSubDestinationTeletextGridControlType = Literal["FIXED", "SCALED"] +DvbSubOcrLanguageType = Literal["DEU", "ENG", "FRA", "NLD", "POR", "SPA"] +Eac3AtmosCodingModeType = Literal["CODING_MODE_5_1_4", "CODING_MODE_7_1_4", "CODING_MODE_9_1_6"] +Eac3AtmosDrcLineType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3AtmosDrcRfType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3AttenuationControlType = Literal["ATTENUATE_3_DB", "NONE"] +Eac3BitstreamModeType = Literal["COMMENTARY", "COMPLETE_MAIN", "EMERGENCY", "HEARING_IMPAIRED", "VISUALLY_IMPAIRED"] +Eac3CodingModeType = Literal["CODING_MODE_1_0", "CODING_MODE_2_0", "CODING_MODE_3_2"] +Eac3DcFilterType = Literal["DISABLED", "ENABLED"] +Eac3DrcLineType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3DrcRfType = Literal["FILM_LIGHT", "FILM_STANDARD", "MUSIC_LIGHT", "MUSIC_STANDARD", "NONE", "SPEECH"] +Eac3LfeControlType = Literal["LFE", "NO_LFE"] +Eac3LfeFilterType = Literal["DISABLED", "ENABLED"] +Eac3MetadataControlType = Literal["FOLLOW_INPUT", "USE_CONFIGURED"] +Eac3PassthroughControlType = Literal["NO_PASSTHROUGH", "WHEN_POSSIBLE"] +Eac3PhaseControlType = Literal["NO_SHIFT", "SHIFT_90_DEGREES"] +Eac3StereoDownmixType = Literal["DPL2", "LO_RO", "LT_RT", "NOT_INDICATED"] +Eac3SurroundExModeType = Literal["DISABLED", "ENABLED", "NOT_INDICATED"] +Eac3SurroundModeType = Literal["DISABLED", "ENABLED", "NOT_INDICATED"] +EbuTtDDestinationStyleControlType = Literal["EXCLUDE", "INCLUDE"] +EbuTtDFillLineGapControlType = Literal["DISABLED", "ENABLED"] +EmbeddedConvert608To708Type = Literal["DISABLED", "UPCONVERT"] +EmbeddedScte20DetectionType = Literal["AUTO", "OFF"] +EventBridgeRuleTemplateEventTypeType = Literal["MEDIACONNECT_ALERT", + "MEDIACONNECT_FLOW_STATUS_CHANGE", + "MEDIACONNECT_OUTPUT_HEALTH", + "MEDIACONNECT_SOURCE_HEALTH", + "MEDIALIVE_CHANNEL_ALERT", + "MEDIALIVE_CHANNEL_INPUT_CHANGE", + "MEDIALIVE_CHANNEL_STATE_CHANGE", + "MEDIALIVE_MULTIPLEX_ALERT", + "MEDIALIVE_MULTIPLEX_STATE_CHANGE", + "MEDIAPACKAGE_HARVEST_JOB_NOTIFICATION", + "MEDIAPACKAGE_INPUT_NOTIFICATION", + "MEDIAPACKAGE_KEY_PROVIDER_NOTIFICATION", + "SIGNAL_MAP_ACTIVE_ALARM",] +FeatureActivationsInputPrepareScheduleActionsType = Literal["DISABLED", "ENABLED"] +FeatureActivationsOutputStaticImageOverlayScheduleActionsType = Literal["DISABLED", "ENABLED"] +FecOutputIncludeFecType = Literal["COLUMN", "COLUMN_AND_ROW"] +FixedAfdType = Literal["AFD_0000", + "AFD_0010", + "AFD_0011", + "AFD_0100", + "AFD_1000", + "AFD_1001", + "AFD_1010", + "AFD_1011", + "AFD_1101", + "AFD_1110", + "AFD_1111",] +Fmp4NielsenId3BehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +Fmp4TimedMetadataBehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +FollowPointType = Literal["END", "START"] +FrameCaptureIntervalUnitType = Literal["MILLISECONDS", "SECONDS"] +GlobalConfigurationInputEndActionType = Literal["NONE", "SWITCH_AND_LOOP_INPUTS"] +GlobalConfigurationLowFramerateInputsType = Literal["DISABLED", "ENABLED"] +GlobalConfigurationOutputLockingModeType = Literal["EPOCH_LOCKING", "PIPELINE_LOCKING"] +GlobalConfigurationOutputTimingSourceType = Literal["INPUT_CLOCK", "SYSTEM_CLOCK"] +H264AdaptiveQuantizationType = Literal["AUTO", "HIGH", "HIGHER", "LOW", "MAX", "MEDIUM", "OFF"] +H264ColorMetadataType = Literal["IGNORE", "INSERT"] +H264EntropyEncodingType = Literal["CABAC", "CAVLC"] +H264FlickerAqType = Literal["DISABLED", "ENABLED"] +H264ForceFieldPicturesType = Literal["DISABLED", "ENABLED"] +H264FramerateControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +H264GopBReferenceType = Literal["DISABLED", "ENABLED"] +H264GopSizeUnitsType = Literal["FRAMES", "SECONDS"] +H264LevelType = Literal["H264_LEVEL_1", + "H264_LEVEL_1_1", + "H264_LEVEL_1_2", + "H264_LEVEL_1_3", + "H264_LEVEL_2", + "H264_LEVEL_2_1", + "H264_LEVEL_2_2", + "H264_LEVEL_3", + "H264_LEVEL_3_1", + "H264_LEVEL_3_2", + "H264_LEVEL_4", + "H264_LEVEL_4_1", + "H264_LEVEL_4_2", + "H264_LEVEL_5", + "H264_LEVEL_5_1", + "H264_LEVEL_5_2", + "H264_LEVEL_AUTO",] +H264LookAheadRateControlType = Literal["HIGH", "LOW", "MEDIUM"] +H264ParControlType = Literal["INITIALIZE_FROM_SOURCE", "SPECIFIED"] +H264ProfileType = Literal["BASELINE", "HIGH", "HIGH_10BIT", "HIGH_422", "HIGH_422_10BIT", "MAIN"] +H264QualityLevelType = Literal["ENHANCED_QUALITY", "STANDARD_QUALITY"] +H264RateControlModeType = Literal["CBR", "MULTIPLEX", "QVBR", "VBR"] +H264ScanTypeType = Literal["INTERLACED", "PROGRESSIVE"] +H264SceneChangeDetectType = Literal["DISABLED", "ENABLED"] +H264SpatialAqType = Literal["DISABLED", "ENABLED"] +H264SubGopLengthType = Literal["DYNAMIC", "FIXED"] +H264SyntaxType = Literal["DEFAULT", "RP2027"] +H264TemporalAqType = Literal["DISABLED", "ENABLED"] +H264TimecodeInsertionBehaviorType = Literal["DISABLED", "PIC_TIMING_SEI"] +H265AdaptiveQuantizationType = Literal["AUTO", "HIGH", "HIGHER", "LOW", "MAX", "MEDIUM", "OFF"] +H265AlternativeTransferFunctionType = Literal["INSERT", "OMIT"] +H265ColorMetadataType = Literal["IGNORE", "INSERT"] +H265FlickerAqType = Literal["DISABLED", "ENABLED"] +H265GopSizeUnitsType = Literal["FRAMES", "SECONDS"] +H265LevelType = Literal["H265_LEVEL_1", + "H265_LEVEL_2", + "H265_LEVEL_2_1", + "H265_LEVEL_3", + "H265_LEVEL_3_1", + "H265_LEVEL_4", + "H265_LEVEL_4_1", + "H265_LEVEL_5", + "H265_LEVEL_5_1", + "H265_LEVEL_5_2", + "H265_LEVEL_6", + "H265_LEVEL_6_1", + "H265_LEVEL_6_2", + "H265_LEVEL_AUTO",] +H265LookAheadRateControlType = Literal["HIGH", "LOW", "MEDIUM"] +H265MvOverPictureBoundariesType = Literal["DISABLED", "ENABLED"] +H265MvTemporalPredictorType = Literal["DISABLED", "ENABLED"] +H265ProfileType = Literal["MAIN", "MAIN_10BIT"] +H265RateControlModeType = Literal["CBR", "MULTIPLEX", "QVBR"] +H265ScanTypeType = Literal["INTERLACED", "PROGRESSIVE"] +H265SceneChangeDetectType = Literal["DISABLED", "ENABLED"] +H265TierType = Literal["HIGH", "MAIN"] +H265TilePaddingType = Literal["NONE", "PADDED"] +H265TimecodeInsertionBehaviorType = Literal["DISABLED", "PIC_TIMING_SEI"] +H265TreeblockSizeType = Literal["AUTO", "TREE_SIZE_32X32"] +HlsAdMarkersType = Literal["ADOBE", "ELEMENTAL", "ELEMENTAL_SCTE35"] +HlsAkamaiHttpTransferModeType = Literal["CHUNKED", "NON_CHUNKED"] +HlsCaptionLanguageSettingType = Literal["INSERT", "NONE", "OMIT"] +HlsClientCacheType = Literal["DISABLED", "ENABLED"] +HlsCodecSpecificationType = Literal["RFC_4281", "RFC_6381"] +HlsDirectoryStructureType = Literal["SINGLE_DIRECTORY", "SUBDIRECTORY_PER_STREAM"] +HlsDiscontinuityTagsType = Literal["INSERT", "NEVER_INSERT"] +HlsEncryptionTypeType = Literal["AES128", "SAMPLE_AES"] +HlsH265PackagingTypeType = Literal["HEV1", "HVC1"] +HlsId3SegmentTaggingStateType = Literal["DISABLED", "ENABLED"] +HlsIncompleteSegmentBehaviorType = Literal["AUTO", "SUPPRESS"] +HlsIvInManifestType = Literal["EXCLUDE", "INCLUDE"] +HlsIvSourceType = Literal["EXPLICIT", "FOLLOWS_SEGMENT_NUMBER"] +HlsManifestCompressionType = Literal["GZIP", "NONE"] +HlsManifestDurationFormatType = Literal["FLOATING_POINT", "INTEGER"] +HlsMediaStoreStorageClassType = Literal["TEMPORAL"] +HlsModeType = Literal["LIVE", "VOD"] +HlsOutputSelectionType = Literal["MANIFESTS_AND_SEGMENTS", "SEGMENTS_ONLY", "VARIANT_MANIFESTS_AND_SEGMENTS"] +HlsProgramDateTimeClockType = Literal["INITIALIZE_FROM_OUTPUT_TIMECODE", "SYSTEM_CLOCK"] +HlsProgramDateTimeType = Literal["EXCLUDE", "INCLUDE"] +HlsRedundantManifestType = Literal["DISABLED", "ENABLED"] +HlsScte35SourceTypeType = Literal["MANIFEST", "SEGMENTS"] +HlsSegmentationModeType = Literal["USE_INPUT_SEGMENTATION", "USE_SEGMENT_DURATION"] +HlsStreamInfResolutionType = Literal["EXCLUDE", "INCLUDE"] +HlsTimedMetadataId3FrameType = Literal["NONE", "PRIV", "TDRL"] +HlsTsFileModeType = Literal["SEGMENTED_FILES", "SINGLE_FILE"] +HlsWebdavHttpTransferModeType = Literal["CHUNKED", "NON_CHUNKED"] +IFrameOnlyPlaylistTypeType = Literal["DISABLED", "STANDARD"] +IncludeFillerNalUnitsType = Literal["AUTO", "DROP", "INCLUDE"] +InputAttachedWaiterName = Literal["input_attached"] +InputClassType = Literal["SINGLE_PIPELINE", "STANDARD"] +InputCodecType = Literal["AVC", "HEVC", "MPEG2"] +InputDeblockFilterType = Literal["DISABLED", "ENABLED"] +InputDeletedWaiterName = Literal["input_deleted"] +InputDenoiseFilterType = Literal["DISABLED", "ENABLED"] +InputDetachedWaiterName = Literal["input_detached"] +InputDeviceActiveInputType = Literal["HDMI", "SDI"] +InputDeviceCodecType = Literal["AVC", "HEVC"] +InputDeviceConfigurableAudioChannelPairProfileType = Literal["CBR-AAC_HQ-192000", + "CBR-AAC_HQ-256000", + "CBR-AAC_HQ-384000", + "CBR-AAC_HQ-512000", + "DISABLED", + "VBR-AAC_HE-64000", + "VBR-AAC_HHE-16000", + "VBR-AAC_LC-128000",] +InputDeviceConfiguredInputType = Literal["AUTO", "HDMI", "SDI"] +InputDeviceConnectionStateType = Literal["CONNECTED", "DISCONNECTED"] +InputDeviceIpSchemeType = Literal["DHCP", "STATIC"] +InputDeviceOutputTypeType = Literal["MEDIACONNECT_FLOW", "MEDIALIVE_INPUT", "NONE"] +InputDeviceScanTypeType = Literal["INTERLACED", "PROGRESSIVE"] +InputDeviceStateType = Literal["IDLE", "STREAMING"] +InputDeviceTransferTypeType = Literal["INCOMING", "OUTGOING"] +InputDeviceTypeType = Literal["HD", "UHD"] +InputDeviceUhdAudioChannelPairProfileType = Literal["CBR-AAC_HQ-192000", + "CBR-AAC_HQ-256000", + "CBR-AAC_HQ-384000", + "CBR-AAC_HQ-512000", + "DISABLED", + "VBR-AAC_HE-64000", + "VBR-AAC_HHE-16000", + "VBR-AAC_LC-128000",] +InputFilterType = Literal["AUTO", "DISABLED", "FORCED"] +InputLossActionForHlsOutType = Literal["EMIT_OUTPUT", "PAUSE_OUTPUT"] +InputLossActionForMsSmoothOutType = Literal["EMIT_OUTPUT", "PAUSE_OUTPUT"] +InputLossActionForRtmpOutType = Literal["EMIT_OUTPUT", "PAUSE_OUTPUT"] +InputLossActionForUdpOutType = Literal["DROP_PROGRAM", "DROP_TS", "EMIT_PROGRAM"] +InputLossImageTypeType = Literal["COLOR", "SLATE"] +InputMaximumBitrateType = Literal["MAX_10_MBPS", "MAX_20_MBPS", "MAX_50_MBPS"] +InputPreferenceType = Literal["EQUAL_INPUT_PREFERENCE", "PRIMARY_INPUT_PREFERRED"] +InputResolutionType = Literal["HD", "SD", "UHD"] +InputSecurityGroupStateType = Literal["DELETED", "IDLE", "IN_USE", "UPDATING"] +InputSourceEndBehaviorType = Literal["CONTINUE", "LOOP"] +InputSourceTypeType = Literal["DYNAMIC", "STATIC"] +InputStateType = Literal["ATTACHED", "CREATING", "DELETED", "DELETING", "DETACHED"] +InputTimecodeSourceType = Literal["EMBEDDED", "ZEROBASED"] +InputTypeType = Literal["AWS_CDI", + "INPUT_DEVICE", + "MEDIACONNECT", + "MP4_FILE", + "RTMP_PULL", + "RTMP_PUSH", + "RTP_PUSH", + "TS_FILE", + "UDP_PUSH", + "URL_PULL",] +LastFrameClippingBehaviorType = Literal["EXCLUDE_LAST_FRAME", "INCLUDE_LAST_FRAME"] +ListChannelsPaginatorName = Literal["list_channels"] +ListCloudWatchAlarmTemplateGroupsPaginatorName = Literal["list_cloud_watch_alarm_template_groups"] +ListCloudWatchAlarmTemplatesPaginatorName = Literal["list_cloud_watch_alarm_templates"] +ListEventBridgeRuleTemplateGroupsPaginatorName = Literal["list_event_bridge_rule_template_groups"] +ListEventBridgeRuleTemplatesPaginatorName = Literal["list_event_bridge_rule_templates"] +ListInputDeviceTransfersPaginatorName = Literal["list_input_device_transfers"] +ListInputDevicesPaginatorName = Literal["list_input_devices"] +ListInputSecurityGroupsPaginatorName = Literal["list_input_security_groups"] +ListInputsPaginatorName = Literal["list_inputs"] +ListMultiplexProgramsPaginatorName = Literal["list_multiplex_programs"] +ListMultiplexesPaginatorName = Literal["list_multiplexes"] +ListOfferingsPaginatorName = Literal["list_offerings"] +ListReservationsPaginatorName = Literal["list_reservations"] +ListSignalMapsPaginatorName = Literal["list_signal_maps"] +LogLevelType = Literal["DEBUG", "DISABLED", "ERROR", "INFO", "WARNING"] +M2tsAbsentInputAudioBehaviorType = Literal["DROP", "ENCODE_SILENCE"] +M2tsAribCaptionsPidControlType = Literal["AUTO", "USE_CONFIGURED"] +M2tsAribType = Literal["DISABLED", "ENABLED"] +M2tsAudioBufferModelType = Literal["ATSC", "DVB"] +M2tsAudioIntervalType = Literal["VIDEO_AND_FIXED_INTERVALS", "VIDEO_INTERVAL"] +M2tsAudioStreamTypeType = Literal["ATSC", "DVB"] +M2tsBufferModelType = Literal["MULTIPLEX", "NONE"] +M2tsCcDescriptorType = Literal["DISABLED", "ENABLED"] +M2tsEbifControlType = Literal["NONE", "PASSTHROUGH"] +M2tsEbpPlacementType = Literal["VIDEO_AND_AUDIO_PIDS", "VIDEO_PID"] +M2tsEsRateInPesType = Literal["EXCLUDE", "INCLUDE"] +M2tsKlvType = Literal["NONE", "PASSTHROUGH"] +M2tsNielsenId3BehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +M2tsPcrControlType = Literal["CONFIGURED_PCR_PERIOD", "PCR_EVERY_PES_PACKET"] +M2tsRateModeType = Literal["CBR", "VBR"] +M2tsScte35ControlType = Literal["NONE", "PASSTHROUGH"] +M2tsSegmentationMarkersType = Literal["EBP", "EBP_LEGACY", "NONE", "PSI_SEGSTART", "RAI_ADAPT", "RAI_SEGSTART"] +M2tsSegmentationStyleType = Literal["MAINTAIN_CADENCE", "RESET_CADENCE"] +M2tsTimedMetadataBehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +M3u8KlvBehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +M3u8NielsenId3BehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +M3u8PcrControlType = Literal["CONFIGURED_PCR_PERIOD", "PCR_EVERY_PES_PACKET"] +M3u8Scte35BehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +M3u8TimedMetadataBehaviorType = Literal["NO_PASSTHROUGH", "PASSTHROUGH"] +MaintenanceDayType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +MotionGraphicsInsertionType = Literal["DISABLED", "ENABLED"] +Mp2CodingModeType = Literal["CODING_MODE_1_0", "CODING_MODE_2_0"] +Mpeg2AdaptiveQuantizationType = Literal["AUTO", "HIGH", "LOW", "MEDIUM", "OFF"] +Mpeg2ColorMetadataType = Literal["IGNORE", "INSERT"] +Mpeg2ColorSpaceType = Literal["AUTO", "PASSTHROUGH"] +Mpeg2DisplayRatioType = Literal["DISPLAYRATIO16X9", "DISPLAYRATIO4X3"] +Mpeg2GopSizeUnitsType = Literal["FRAMES", "SECONDS"] +Mpeg2ScanTypeType = Literal["INTERLACED", "PROGRESSIVE"] +Mpeg2SubGopLengthType = Literal["DYNAMIC", "FIXED"] +Mpeg2TimecodeInsertionBehaviorType = Literal["DISABLED", "GOP_TIMECODE"] +MsSmoothH265PackagingTypeType = Literal["HEV1", "HVC1"] +MultiplexCreatedWaiterName = Literal["multiplex_created"] +MultiplexDeletedWaiterName = Literal["multiplex_deleted"] +MultiplexRunningWaiterName = Literal["multiplex_running"] +MultiplexStateType = Literal["CREATE_FAILED", + "CREATING", + "DELETED", + "DELETING", + "IDLE", + "RECOVERING", + "RUNNING", + "STARTING", + "STOPPING",] +MultiplexStoppedWaiterName = Literal["multiplex_stopped"] +NetworkInputServerValidationType = Literal["CHECK_CRYPTOGRAPHY_AND_VALIDATE_NAME", "CHECK_CRYPTOGRAPHY_ONLY"] +NielsenPcmToId3TaggingStateType = Literal["DISABLED", "ENABLED"] +NielsenWatermarkTimezonesType = Literal["AMERICA_PUERTO_RICO", + "US_ALASKA", + "US_ARIZONA", + "US_CENTRAL", + "US_EASTERN", + "US_HAWAII", + "US_MOUNTAIN", + "US_PACIFIC", + "US_SAMOA", + "UTC",] +NielsenWatermarksCbetStepasideType = Literal["DISABLED", "ENABLED"] +NielsenWatermarksDistributionTypesType = Literal["FINAL_DISTRIBUTOR", "PROGRAM_CONTENT"] +OfferingDurationUnitsType = Literal["MONTHS"] +OfferingTypeType = Literal["NO_UPFRONT"] +PipelineIdType = Literal["PIPELINE_0", "PIPELINE_1"] +PreferredChannelPipelineType = Literal["CURRENTLY_ACTIVE", "PIPELINE_0", "PIPELINE_1"] +RebootInputDeviceForceType = Literal["NO", "YES"] +ReservationAutomaticRenewalType = Literal["DISABLED", "ENABLED", "UNAVAILABLE"] +ReservationCodecType = Literal["AUDIO", "AVC", "HEVC", "LINK", "MPEG2"] +ReservationMaximumBitrateType = Literal["MAX_10_MBPS", "MAX_20_MBPS", "MAX_50_MBPS"] +ReservationMaximumFramerateType = Literal["MAX_30_FPS", "MAX_60_FPS"] +ReservationResolutionType = Literal["FHD", "HD", "SD", "UHD"] +ReservationResourceTypeType = Literal["CHANNEL", "INPUT", "MULTIPLEX", "OUTPUT"] +ReservationSpecialFeatureType = Literal["ADVANCED_AUDIO", "AUDIO_NORMALIZATION", "MGHD", "MGUHD"] +ReservationStateType = Literal["ACTIVE", "CANCELED", "DELETED", "EXPIRED"] +ReservationVideoQualityType = Literal["ENHANCED", "PREMIUM", "STANDARD"] +RtmpAdMarkersType = Literal["ON_CUE_POINT_SCTE35"] +RtmpCacheFullBehaviorType = Literal["DISCONNECT_IMMEDIATELY", "WAIT_FOR_SERVER"] +RtmpCaptionDataType = Literal["ALL", "FIELD1_608", "FIELD1_AND_FIELD2_608"] +RtmpOutputCertificateModeType = Literal["SELF_SIGNED", "VERIFY_AUTHENTICITY"] +S3CannedAclType = Literal["AUTHENTICATED_READ", "BUCKET_OWNER_FULL_CONTROL", "BUCKET_OWNER_READ", "PUBLIC_READ"] +Scte20Convert608To708Type = Literal["DISABLED", "UPCONVERT"] +Scte27OcrLanguageType = Literal["DEU", "ENG", "FRA", "NLD", "POR", "SPA"] +Scte35AposNoRegionalBlackoutBehaviorType = Literal["FOLLOW", "IGNORE"] +Scte35AposWebDeliveryAllowedBehaviorType = Literal["FOLLOW", "IGNORE"] +Scte35ArchiveAllowedFlagType = Literal["ARCHIVE_ALLOWED", "ARCHIVE_NOT_ALLOWED"] +Scte35DeviceRestrictionsType = Literal["NONE", "RESTRICT_GROUP0", "RESTRICT_GROUP1", "RESTRICT_GROUP2"] +Scte35InputModeType = Literal["FIXED", "FOLLOW_ACTIVE"] +Scte35NoRegionalBlackoutFlagType = Literal["NO_REGIONAL_BLACKOUT", "REGIONAL_BLACKOUT"] +Scte35SegmentationCancelIndicatorType = Literal["SEGMENTATION_EVENT_CANCELED", "SEGMENTATION_EVENT_NOT_CANCELED"] +Scte35SegmentationScopeType = Literal["ALL_OUTPUT_GROUPS", "SCTE35_ENABLED_OUTPUT_GROUPS"] +Scte35SpliceInsertNoRegionalBlackoutBehaviorType = Literal["FOLLOW", "IGNORE"] +Scte35SpliceInsertWebDeliveryAllowedBehaviorType = Literal["FOLLOW", "IGNORE"] +Scte35TypeType = Literal["NONE", "SCTE_35_WITHOUT_SEGMENTATION"] +Scte35WebDeliveryAllowedFlagType = Literal["WEB_DELIVERY_ALLOWED", "WEB_DELIVERY_NOT_ALLOWED"] +SignalMapCreatedWaiterName = Literal["signal_map_created"] +SignalMapMonitorDeletedWaiterName = Literal["signal_map_monitor_deleted"] +SignalMapMonitorDeployedWaiterName = Literal["signal_map_monitor_deployed"] +SignalMapMonitorDeploymentStatusType = Literal["DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "DEPLOYMENT_COMPLETE", + "DEPLOYMENT_FAILED", + "DEPLOYMENT_IN_PROGRESS", + "DRY_RUN_DEPLOYMENT_COMPLETE", + "DRY_RUN_DEPLOYMENT_FAILED", + "DRY_RUN_DEPLOYMENT_IN_PROGRESS", + "NOT_DEPLOYED",] +SignalMapStatusType = Literal["CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "NOT_READY", + "READY", + "UPDATE_COMPLETE", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_REVERTED",] +SignalMapUpdatedWaiterName = Literal["signal_map_updated"] +SmoothGroupAudioOnlyTimecodeControlType = Literal["PASSTHROUGH", "USE_CONFIGURED_CLOCK"] +SmoothGroupCertificateModeType = Literal["SELF_SIGNED", "VERIFY_AUTHENTICITY"] +SmoothGroupEventIdModeType = Literal["NO_EVENT_ID", "USE_CONFIGURED", "USE_TIMESTAMP"] +SmoothGroupEventStopBehaviorType = Literal["NONE", "SEND_EOS"] +SmoothGroupSegmentationModeType = Literal["USE_INPUT_SEGMENTATION", "USE_SEGMENT_DURATION"] +SmoothGroupSparseTrackTypeType = Literal["NONE", "SCTE_35", "SCTE_35_WITHOUT_SEGMENTATION"] +SmoothGroupStreamManifestBehaviorType = Literal["DO_NOT_SEND", "SEND"] +SmoothGroupTimestampOffsetModeType = Literal["USE_CONFIGURED_OFFSET", "USE_EVENT_START_DATE"] +Smpte2038DataPreferenceType = Literal["IGNORE", "PREFER"] +TemporalFilterPostFilterSharpeningType = Literal["AUTO", "DISABLED", "ENABLED"] +TemporalFilterStrengthType = Literal["AUTO", + "STRENGTH_1", + "STRENGTH_10", + "STRENGTH_11", + "STRENGTH_12", + "STRENGTH_13", + "STRENGTH_14", + "STRENGTH_15", + "STRENGTH_16", + "STRENGTH_2", + "STRENGTH_3", + "STRENGTH_4", + "STRENGTH_5", + "STRENGTH_6", + "STRENGTH_7", + "STRENGTH_8", + "STRENGTH_9",] +ThumbnailStateType = Literal["AUTO", "DISABLED"] +ThumbnailTypeType = Literal["CURRENT_ACTIVE", "UNSPECIFIED"] +TimecodeBurninFontSizeType = Literal["EXTRA_SMALL_10", "LARGE_48", "MEDIUM_32", "SMALL_16"] +TimecodeBurninPositionType = Literal["BOTTOM_CENTER", + "BOTTOM_LEFT", + "BOTTOM_RIGHT", + "MIDDLE_CENTER", + "MIDDLE_LEFT", + "MIDDLE_RIGHT", + "TOP_CENTER", + "TOP_LEFT", + "TOP_RIGHT",] +TimecodeConfigSourceType = Literal["EMBEDDED", "SYSTEMCLOCK", "ZEROBASED"] +TtmlDestinationStyleControlType = Literal["PASSTHROUGH", "USE_CONFIGURED"] +UdpTimedMetadataId3FrameType = Literal["NONE", "PRIV", "TDRL"] +VideoDescriptionRespondToAfdType = Literal["NONE", "PASSTHROUGH", "RESPOND"] +VideoDescriptionScalingBehaviorType = Literal["DEFAULT", "STRETCH_TO_OUTPUT"] +VideoSelectorColorSpaceType = Literal["FOLLOW", "HDR10", "HLG_2020", "REC_601", "REC_709"] +VideoSelectorColorSpaceUsageType = Literal["FALLBACK", "FORCE"] +WavCodingModeType = Literal["CODING_MODE_1_0", "CODING_MODE_2_0", "CODING_MODE_4_0", "CODING_MODE_8_0"] +WebvttDestinationStyleControlType = Literal["NO_STYLE_DATA", "PASSTHROUGH"] +MediaLiveServiceName = Literal["medialive"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_schedule", + "list_channels", + "list_cloud_watch_alarm_template_groups", + "list_cloud_watch_alarm_templates", + "list_event_bridge_rule_template_groups", + "list_event_bridge_rule_templates", + "list_input_device_transfers", + "list_input_devices", + "list_input_security_groups", + "list_inputs", + "list_multiplex_programs", + "list_multiplexes", + "list_offerings", + "list_reservations", + "list_signal_maps",] +WaiterName = Literal["channel_created", + "channel_deleted", + "channel_running", + "channel_stopped", + "input_attached", + "input_deleted", + "input_detached", + "multiplex_created", + "multiplex_deleted", + "multiplex_running", + "multiplex_stopped", + "signal_map_created", + "signal_map_monitor_deleted", + "signal_map_monitor_deployed", + "signal_map_updated",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +OutputDestinationUnionTypeDef = Union['OutputDestinationTypeDef', 'OutputDestinationExtraOutputTypeDef'] +InputAttachmentUnionTypeDef = Union['InputAttachmentTypeDef', 'InputAttachmentExtraOutputTypeDef'] +EncoderSettingsUnionTypeDef = Union['EncoderSettingsTypeDef', 'EncoderSettingsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/mediapackage_classes.py b/aws_resource_validator/pydantic_models/mediapackage_classes.py new file mode 100644 index 00000000..22dea7e9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediapackage_classes.py @@ -0,0 +1,581 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediapackage_constants import * + +class AuthorizationTypeDef(BaseModel): + CdnIdentifierSecret: str + SecretsRoleArn: str + +class EgressAccessLogsTypeDef(BaseModel): + LogGroupName: Optional[str] = None + +class IngressAccessLogsTypeDef(BaseModel): + LogGroupName: Optional[str] = None + +class HlsManifestCreateOrUpdateParametersTypeDef(BaseModel): + Id: str + AdMarkers: Optional[AdMarkersType] = None + AdTriggers: Optional[Sequence[AdTriggersElementType]] = None + AdsOnDeliveryRestrictions: Optional[AdsOnDeliveryRestrictionsType] = None + IncludeIframeOnlyStream: Optional[bool] = None + ManifestName: Optional[str] = None + PlaylistType: Optional[PlaylistTypeType] = None + PlaylistWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + +class StreamSelectionTypeDef(BaseModel): + MaxVideoBitsPerSecond: Optional[int] = None + MinVideoBitsPerSecond: Optional[int] = None + StreamOrder: Optional[StreamOrderType] = None + +class HlsManifestTypeDef(BaseModel): + Id: str + AdMarkers: Optional[AdMarkersType] = None + IncludeIframeOnlyStream: Optional[bool] = None + ManifestName: Optional[str] = None + PlaylistType: Optional[PlaylistTypeType] = None + PlaylistWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + Url: Optional[str] = None + AdTriggers: Optional[List[AdTriggersElementType]] = None + AdsOnDeliveryRestrictions: Optional[AdsOnDeliveryRestrictionsType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateChannelRequestRequestTypeDef(BaseModel): + Id: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class S3DestinationTypeDef(BaseModel): + BucketName: str + ManifestKey: str + RoleArn: str + +class DeleteChannelRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteOriginEndpointRequestRequestTypeDef(BaseModel): + Id: str + +class DescribeChannelRequestRequestTypeDef(BaseModel): + Id: str + +class DescribeHarvestJobRequestRequestTypeDef(BaseModel): + Id: str + +class DescribeOriginEndpointRequestRequestTypeDef(BaseModel): + Id: str + +class EncryptionContractConfigurationTypeDef(BaseModel): + PresetSpeke20Audio: PresetSpeke20AudioType + PresetSpeke20Video: PresetSpeke20VideoType + +class IngestEndpointTypeDef(BaseModel): + Id: Optional[str] = None + Password: Optional[str] = None + Url: Optional[str] = None + Username: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHarvestJobsRequestRequestTypeDef(BaseModel): + IncludeChannelId: Optional[str] = None + IncludeStatus: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOriginEndpointsRequestRequestTypeDef(BaseModel): + ChannelId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class RotateChannelCredentialsRequestRequestTypeDef(BaseModel): + Id: str + +class RotateIngestEndpointCredentialsRequestRequestTypeDef(BaseModel): + Id: str + IngestEndpointId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateChannelRequestRequestTypeDef(BaseModel): + Id: str + Description: Optional[str] = None + +class ConfigureLogsRequestRequestTypeDef(BaseModel): + Id: str + EgressAccessLogs: Optional[EgressAccessLogsTypeDef] = None + IngressAccessLogs: Optional[IngressAccessLogsTypeDef] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHarvestJobRequestRequestTypeDef(BaseModel): + EndTime: str + Id: str + OriginEndpointId: str + S3Destination: S3DestinationTypeDef + StartTime: str + +class CreateHarvestJobResponseTypeDef(BaseModel): + Arn: str + ChannelId: str + CreatedAt: str + EndTime: str + Id: str + OriginEndpointId: str + S3Destination: S3DestinationTypeDef + StartTime: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHarvestJobResponseTypeDef(BaseModel): + Arn: str + ChannelId: str + CreatedAt: str + EndTime: str + Id: str + OriginEndpointId: str + S3Destination: S3DestinationTypeDef + StartTime: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class HarvestJobTypeDef(BaseModel): + Arn: Optional[str] = None + ChannelId: Optional[str] = None + CreatedAt: Optional[str] = None + EndTime: Optional[str] = None + Id: Optional[str] = None + OriginEndpointId: Optional[str] = None + S3Destination: Optional[S3DestinationTypeDef] = None + StartTime: Optional[str] = None + Status: Optional[StatusType] = None + +class SpekeKeyProviderPaginatorTypeDef(BaseModel): + ResourceId: str + RoleArn: str + SystemIds: List[str] + Url: str + CertificateArn: Optional[str] = None + EncryptionContractConfiguration: Optional[EncryptionContractConfigurationTypeDef] = None + +class SpekeKeyProviderTypeDef(BaseModel): + ResourceId: str + RoleArn: str + SystemIds: Sequence[str] + Url: str + CertificateArn: Optional[str] = None + EncryptionContractConfiguration: Optional[EncryptionContractConfigurationTypeDef] = None + +class HlsIngestTypeDef(BaseModel): + IngestEndpoints: Optional[List[IngestEndpointTypeDef]] = None + +class ListChannelsRequestListChannelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHarvestJobsRequestListHarvestJobsPaginateTypeDef(BaseModel): + IncludeChannelId: Optional[str] = None + IncludeStatus: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOriginEndpointsRequestListOriginEndpointsPaginateTypeDef(BaseModel): + ChannelId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHarvestJobsResponseTypeDef(BaseModel): + HarvestJobs: List[HarvestJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CmafEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[CmafEncryptionMethodType] = None + KeyRotationIntervalSeconds: Optional[int] = None + +class DashEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + KeyRotationIntervalSeconds: Optional[int] = None + +class HlsEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[EncryptionMethodType] = None + KeyRotationIntervalSeconds: Optional[int] = None + RepeatExtXKey: Optional[bool] = None + +class MssEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + +class CmafEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[CmafEncryptionMethodType] = None + KeyRotationIntervalSeconds: Optional[int] = None + +class DashEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + KeyRotationIntervalSeconds: Optional[int] = None + +class HlsEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[EncryptionMethodType] = None + KeyRotationIntervalSeconds: Optional[int] = None + RepeatExtXKey: Optional[bool] = None + +class MssEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + +class ChannelTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedAt: Optional[str] = None + Description: Optional[str] = None + EgressAccessLogs: Optional[EgressAccessLogsTypeDef] = None + HlsIngest: Optional[HlsIngestTypeDef] = None + Id: Optional[str] = None + IngressAccessLogs: Optional[IngressAccessLogsTypeDef] = None + Tags: Optional[Dict[str, str]] = None + +class ConfigureLogsResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + Description: str + EgressAccessLogs: EgressAccessLogsTypeDef + HlsIngest: HlsIngestTypeDef + Id: str + IngressAccessLogs: IngressAccessLogsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + Description: str + EgressAccessLogs: EgressAccessLogsTypeDef + HlsIngest: HlsIngestTypeDef + Id: str + IngressAccessLogs: IngressAccessLogsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + Description: str + EgressAccessLogs: EgressAccessLogsTypeDef + HlsIngest: HlsIngestTypeDef + Id: str + IngressAccessLogs: IngressAccessLogsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RotateChannelCredentialsResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + Description: str + EgressAccessLogs: EgressAccessLogsTypeDef + HlsIngest: HlsIngestTypeDef + Id: str + IngressAccessLogs: IngressAccessLogsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RotateIngestEndpointCredentialsResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + Description: str + EgressAccessLogs: EgressAccessLogsTypeDef + HlsIngest: HlsIngestTypeDef + Id: str + IngressAccessLogs: IngressAccessLogsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + Description: str + EgressAccessLogs: EgressAccessLogsTypeDef + HlsIngest: HlsIngestTypeDef + Id: str + IngressAccessLogs: IngressAccessLogsTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CmafPackagePaginatorTypeDef(BaseModel): + Encryption: Optional[CmafEncryptionPaginatorTypeDef] = None + HlsManifests: Optional[List[HlsManifestTypeDef]] = None + SegmentDurationSeconds: Optional[int] = None + SegmentPrefix: Optional[str] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class DashPackagePaginatorTypeDef(BaseModel): + AdTriggers: Optional[List[AdTriggersElementType]] = None + AdsOnDeliveryRestrictions: Optional[AdsOnDeliveryRestrictionsType] = None + Encryption: Optional[DashEncryptionPaginatorTypeDef] = None + IncludeIframeOnlyStream: Optional[bool] = None + ManifestLayout: Optional[ManifestLayoutType] = None + ManifestWindowSeconds: Optional[int] = None + MinBufferTimeSeconds: Optional[int] = None + MinUpdatePeriodSeconds: Optional[int] = None + PeriodTriggers: Optional[List[Literal["ADS"]]] = None + Profile: Optional[ProfileType] = None + SegmentDurationSeconds: Optional[int] = None + SegmentTemplateFormat: Optional[SegmentTemplateFormatType] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + SuggestedPresentationDelaySeconds: Optional[int] = None + UtcTiming: Optional[UtcTimingType] = None + UtcTimingUri: Optional[str] = None + +class HlsPackagePaginatorTypeDef(BaseModel): + AdMarkers: Optional[AdMarkersType] = None + AdTriggers: Optional[List[AdTriggersElementType]] = None + AdsOnDeliveryRestrictions: Optional[AdsOnDeliveryRestrictionsType] = None + Encryption: Optional[HlsEncryptionPaginatorTypeDef] = None + IncludeDvbSubtitles: Optional[bool] = None + IncludeIframeOnlyStream: Optional[bool] = None + PlaylistType: Optional[PlaylistTypeType] = None + PlaylistWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + SegmentDurationSeconds: Optional[int] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + UseAudioRenditionGroup: Optional[bool] = None + +class MssPackagePaginatorTypeDef(BaseModel): + Encryption: Optional[MssEncryptionPaginatorTypeDef] = None + ManifestWindowSeconds: Optional[int] = None + SegmentDurationSeconds: Optional[int] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class CmafPackageCreateOrUpdateParametersTypeDef(BaseModel): + Encryption: Optional[CmafEncryptionTypeDef] = None + HlsManifests: Optional[Sequence[HlsManifestCreateOrUpdateParametersTypeDef]] = None + SegmentDurationSeconds: Optional[int] = None + SegmentPrefix: Optional[str] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class CmafPackageTypeDef(BaseModel): + Encryption: Optional[CmafEncryptionTypeDef] = None + HlsManifests: Optional[List[HlsManifestTypeDef]] = None + SegmentDurationSeconds: Optional[int] = None + SegmentPrefix: Optional[str] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class DashPackageTypeDef(BaseModel): + AdTriggers: Optional[Sequence[AdTriggersElementType]] = None + AdsOnDeliveryRestrictions: Optional[AdsOnDeliveryRestrictionsType] = None + Encryption: Optional[DashEncryptionTypeDef] = None + IncludeIframeOnlyStream: Optional[bool] = None + ManifestLayout: Optional[ManifestLayoutType] = None + ManifestWindowSeconds: Optional[int] = None + MinBufferTimeSeconds: Optional[int] = None + MinUpdatePeriodSeconds: Optional[int] = None + PeriodTriggers: Optional[Sequence[Literal["ADS"]]] = None + Profile: Optional[ProfileType] = None + SegmentDurationSeconds: Optional[int] = None + SegmentTemplateFormat: Optional[SegmentTemplateFormatType] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + SuggestedPresentationDelaySeconds: Optional[int] = None + UtcTiming: Optional[UtcTimingType] = None + UtcTimingUri: Optional[str] = None + +class HlsPackageTypeDef(BaseModel): + AdMarkers: Optional[AdMarkersType] = None + AdTriggers: Optional[Sequence[AdTriggersElementType]] = None + AdsOnDeliveryRestrictions: Optional[AdsOnDeliveryRestrictionsType] = None + Encryption: Optional[HlsEncryptionTypeDef] = None + IncludeDvbSubtitles: Optional[bool] = None + IncludeIframeOnlyStream: Optional[bool] = None + PlaylistType: Optional[PlaylistTypeType] = None + PlaylistWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + SegmentDurationSeconds: Optional[int] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + UseAudioRenditionGroup: Optional[bool] = None + +class MssPackageTypeDef(BaseModel): + Encryption: Optional[MssEncryptionTypeDef] = None + ManifestWindowSeconds: Optional[int] = None + SegmentDurationSeconds: Optional[int] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class ListChannelsResponseTypeDef(BaseModel): + Channels: List[ChannelTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class OriginEndpointPaginatorTypeDef(BaseModel): + Arn: Optional[str] = None + Authorization: Optional[AuthorizationTypeDef] = None + ChannelId: Optional[str] = None + CmafPackage: Optional[CmafPackagePaginatorTypeDef] = None + CreatedAt: Optional[str] = None + DashPackage: Optional[DashPackagePaginatorTypeDef] = None + Description: Optional[str] = None + HlsPackage: Optional[HlsPackagePaginatorTypeDef] = None + Id: Optional[str] = None + ManifestName: Optional[str] = None + MssPackage: Optional[MssPackagePaginatorTypeDef] = None + Origination: Optional[OriginationType] = None + StartoverWindowSeconds: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + TimeDelaySeconds: Optional[int] = None + Url: Optional[str] = None + Whitelist: Optional[List[str]] = None + +class CreateOriginEndpointRequestRequestTypeDef(BaseModel): + ChannelId: str + Id: str + Authorization: Optional[AuthorizationTypeDef] = None + CmafPackage: Optional[CmafPackageCreateOrUpdateParametersTypeDef] = None + DashPackage: Optional[DashPackageTypeDef] = None + Description: Optional[str] = None + HlsPackage: Optional[HlsPackageTypeDef] = None + ManifestName: Optional[str] = None + MssPackage: Optional[MssPackageTypeDef] = None + Origination: Optional[OriginationType] = None + StartoverWindowSeconds: Optional[int] = None + Tags: Optional[Mapping[str, str]] = None + TimeDelaySeconds: Optional[int] = None + Whitelist: Optional[Sequence[str]] = None + +class CreateOriginEndpointResponseTypeDef(BaseModel): + Arn: str + Authorization: AuthorizationTypeDef + ChannelId: str + CmafPackage: CmafPackageTypeDef + CreatedAt: str + DashPackage: DashPackageTypeDef + Description: str + HlsPackage: HlsPackageTypeDef + Id: str + ManifestName: str + MssPackage: MssPackageTypeDef + Origination: OriginationType + StartoverWindowSeconds: int + Tags: Dict[str, str] + TimeDelaySeconds: int + Url: str + Whitelist: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOriginEndpointResponseTypeDef(BaseModel): + Arn: str + Authorization: AuthorizationTypeDef + ChannelId: str + CmafPackage: CmafPackageTypeDef + CreatedAt: str + DashPackage: DashPackageTypeDef + Description: str + HlsPackage: HlsPackageTypeDef + Id: str + ManifestName: str + MssPackage: MssPackageTypeDef + Origination: OriginationType + StartoverWindowSeconds: int + Tags: Dict[str, str] + TimeDelaySeconds: int + Url: str + Whitelist: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class OriginEndpointTypeDef(BaseModel): + Arn: Optional[str] = None + Authorization: Optional[AuthorizationTypeDef] = None + ChannelId: Optional[str] = None + CmafPackage: Optional[CmafPackageTypeDef] = None + CreatedAt: Optional[str] = None + DashPackage: Optional[DashPackageTypeDef] = None + Description: Optional[str] = None + HlsPackage: Optional[HlsPackageTypeDef] = None + Id: Optional[str] = None + ManifestName: Optional[str] = None + MssPackage: Optional[MssPackageTypeDef] = None + Origination: Optional[OriginationType] = None + StartoverWindowSeconds: Optional[int] = None + Tags: Optional[Dict[str, str]] = None + TimeDelaySeconds: Optional[int] = None + Url: Optional[str] = None + Whitelist: Optional[List[str]] = None + +class UpdateOriginEndpointRequestRequestTypeDef(BaseModel): + Id: str + Authorization: Optional[AuthorizationTypeDef] = None + CmafPackage: Optional[CmafPackageCreateOrUpdateParametersTypeDef] = None + DashPackage: Optional[DashPackageTypeDef] = None + Description: Optional[str] = None + HlsPackage: Optional[HlsPackageTypeDef] = None + ManifestName: Optional[str] = None + MssPackage: Optional[MssPackageTypeDef] = None + Origination: Optional[OriginationType] = None + StartoverWindowSeconds: Optional[int] = None + TimeDelaySeconds: Optional[int] = None + Whitelist: Optional[Sequence[str]] = None + +class UpdateOriginEndpointResponseTypeDef(BaseModel): + Arn: str + Authorization: AuthorizationTypeDef + ChannelId: str + CmafPackage: CmafPackageTypeDef + CreatedAt: str + DashPackage: DashPackageTypeDef + Description: str + HlsPackage: HlsPackageTypeDef + Id: str + ManifestName: str + MssPackage: MssPackageTypeDef + Origination: OriginationType + StartoverWindowSeconds: int + Tags: Dict[str, str] + TimeDelaySeconds: int + Url: str + Whitelist: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListOriginEndpointsResponsePaginatorTypeDef(BaseModel): + NextToken: str + OriginEndpoints: List[OriginEndpointPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListOriginEndpointsResponseTypeDef(BaseModel): + NextToken: str + OriginEndpoints: List[OriginEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mediapackage_constants.py b/aws_resource_validator/pydantic_models/mediapackage_constants.py new file mode 100644 index 00000000..5d81f1a5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediapackage_constants.py @@ -0,0 +1,441 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdMarkersType = Literal["DATERANGE", "NONE", "PASSTHROUGH", "SCTE35_ENHANCED"] +AdTriggersElementType = Literal["BREAK", + "DISTRIBUTOR_ADVERTISEMENT", + "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_PLACEMENT_OPPORTUNITY", + "PROVIDER_ADVERTISEMENT", + "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY", + "PROVIDER_PLACEMENT_OPPORTUNITY", + "SPLICE_INSERT",] +AdsOnDeliveryRestrictionsType = Literal["BOTH", "NONE", "RESTRICTED", "UNRESTRICTED"] +CmafEncryptionMethodType = Literal["AES_CTR", "SAMPLE_AES"] +EncryptionMethodType = Literal["AES_128", "SAMPLE_AES"] +ListChannelsPaginatorName = Literal["list_channels"] +ListHarvestJobsPaginatorName = Literal["list_harvest_jobs"] +ListOriginEndpointsPaginatorName = Literal["list_origin_endpoints"] +ManifestLayoutType = Literal["COMPACT", "DRM_TOP_LEVEL_COMPACT", "FULL"] +OriginationType = Literal["ALLOW", "DENY"] +PeriodTriggersElementType = Literal["ADS"] +PlaylistTypeType = Literal["EVENT", "NONE", "VOD"] +PresetSpeke20AudioType = Literal["PRESET-AUDIO-1", "PRESET-AUDIO-2", "PRESET-AUDIO-3", "SHARED", "UNENCRYPTED"] +PresetSpeke20VideoType = Literal["PRESET-VIDEO-1", + "PRESET-VIDEO-2", + "PRESET-VIDEO-3", + "PRESET-VIDEO-4", + "PRESET-VIDEO-5", + "PRESET-VIDEO-6", + "PRESET-VIDEO-7", + "PRESET-VIDEO-8", + "SHARED", + "UNENCRYPTED",] +ProfileType = Literal["DVB_DASH_2014", "HBBTV_1_5", "HYBRIDCAST", "NONE"] +SegmentTemplateFormatType = Literal["NUMBER_WITH_DURATION", "NUMBER_WITH_TIMELINE", "TIME_WITH_TIMELINE"] +StatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +StreamOrderType = Literal["ORIGINAL", "VIDEO_BITRATE_ASCENDING", "VIDEO_BITRATE_DESCENDING"] +UtcTimingType = Literal["HTTP-HEAD", "HTTP-ISO", "HTTP-XSDATE", "NONE"] +MediaPackageServiceName = Literal["mediapackage"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_channels", "list_harvest_jobs", "list_origin_endpoints"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/mediapackage_vod_classes.py b/aws_resource_validator/pydantic_models/mediapackage_vod_classes.py new file mode 100644 index 00000000..35729062 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediapackage_vod_classes.py @@ -0,0 +1,406 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediapackage_vod_constants import * + +class AssetShallowTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedAt: Optional[str] = None + Id: Optional[str] = None + PackagingGroupId: Optional[str] = None + ResourceId: Optional[str] = None + SourceArn: Optional[str] = None + SourceRoleArn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class AuthorizationTypeDef(BaseModel): + CdnIdentifierSecret: str + SecretsRoleArn: str + +class EgressAccessLogsTypeDef(BaseModel): + LogGroupName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateAssetRequestRequestTypeDef(BaseModel): + Id: str + PackagingGroupId: str + SourceArn: str + SourceRoleArn: str + ResourceId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class EgressEndpointTypeDef(BaseModel): + PackagingConfigurationId: Optional[str] = None + Status: Optional[str] = None + Url: Optional[str] = None + +class StreamSelectionTypeDef(BaseModel): + MaxVideoBitsPerSecond: Optional[int] = None + MinVideoBitsPerSecond: Optional[int] = None + StreamOrder: Optional[StreamOrderType] = None + +class DeleteAssetRequestRequestTypeDef(BaseModel): + Id: str + +class DeletePackagingConfigurationRequestRequestTypeDef(BaseModel): + Id: str + +class DeletePackagingGroupRequestRequestTypeDef(BaseModel): + Id: str + +class DescribeAssetRequestRequestTypeDef(BaseModel): + Id: str + +class DescribePackagingConfigurationRequestRequestTypeDef(BaseModel): + Id: str + +class DescribePackagingGroupRequestRequestTypeDef(BaseModel): + Id: str + +class EncryptionContractConfigurationTypeDef(BaseModel): + PresetSpeke20Audio: PresetSpeke20AudioType + PresetSpeke20Video: PresetSpeke20VideoType + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssetsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PackagingGroupId: Optional[str] = None + +class ListPackagingConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PackagingGroupId: Optional[str] = None + +class ListPackagingGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdatePackagingGroupRequestRequestTypeDef(BaseModel): + Id: str + Authorization: Optional[AuthorizationTypeDef] = None + +class ConfigureLogsRequestRequestTypeDef(BaseModel): + Id: str + EgressAccessLogs: Optional[EgressAccessLogsTypeDef] = None + +class CreatePackagingGroupRequestRequestTypeDef(BaseModel): + Id: str + Authorization: Optional[AuthorizationTypeDef] = None + EgressAccessLogs: Optional[EgressAccessLogsTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class PackagingGroupTypeDef(BaseModel): + ApproximateAssetCount: Optional[int] = None + Arn: Optional[str] = None + Authorization: Optional[AuthorizationTypeDef] = None + CreatedAt: Optional[str] = None + DomainName: Optional[str] = None + EgressAccessLogs: Optional[EgressAccessLogsTypeDef] = None + Id: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ConfigureLogsResponseTypeDef(BaseModel): + Arn: str + Authorization: AuthorizationTypeDef + CreatedAt: str + DomainName: str + EgressAccessLogs: EgressAccessLogsTypeDef + Id: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePackagingGroupResponseTypeDef(BaseModel): + Arn: str + Authorization: AuthorizationTypeDef + CreatedAt: str + DomainName: str + EgressAccessLogs: EgressAccessLogsTypeDef + Id: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackagingGroupResponseTypeDef(BaseModel): + ApproximateAssetCount: int + Arn: str + Authorization: AuthorizationTypeDef + CreatedAt: str + DomainName: str + EgressAccessLogs: EgressAccessLogsTypeDef + Id: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetsResponseTypeDef(BaseModel): + Assets: List[AssetShallowTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePackagingGroupResponseTypeDef(BaseModel): + ApproximateAssetCount: int + Arn: str + Authorization: AuthorizationTypeDef + CreatedAt: str + DomainName: str + EgressAccessLogs: EgressAccessLogsTypeDef + Id: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssetResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + EgressEndpoints: List[EgressEndpointTypeDef] + Id: str + PackagingGroupId: str + ResourceId: str + SourceArn: str + SourceRoleArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAssetResponseTypeDef(BaseModel): + Arn: str + CreatedAt: str + EgressEndpoints: List[EgressEndpointTypeDef] + Id: str + PackagingGroupId: str + ResourceId: str + SourceArn: str + SourceRoleArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DashManifestTypeDef(BaseModel): + ManifestLayout: Optional[ManifestLayoutType] = None + ManifestName: Optional[str] = None + MinBufferTimeSeconds: Optional[int] = None + Profile: Optional[ProfileType] = None + ScteMarkersSource: Optional[ScteMarkersSourceType] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class HlsManifestTypeDef(BaseModel): + AdMarkers: Optional[AdMarkersType] = None + IncludeIframeOnlyStream: Optional[bool] = None + ManifestName: Optional[str] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + RepeatExtXKey: Optional[bool] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class MssManifestTypeDef(BaseModel): + ManifestName: Optional[str] = None + StreamSelection: Optional[StreamSelectionTypeDef] = None + +class SpekeKeyProviderPaginatorTypeDef(BaseModel): + RoleArn: str + SystemIds: List[str] + Url: str + EncryptionContractConfiguration: Optional[EncryptionContractConfigurationTypeDef] = None + +class SpekeKeyProviderTypeDef(BaseModel): + RoleArn: str + SystemIds: Sequence[str] + Url: str + EncryptionContractConfiguration: Optional[EncryptionContractConfigurationTypeDef] = None + +class ListAssetsRequestListAssetsPaginateTypeDef(BaseModel): + PackagingGroupId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackagingConfigurationsRequestListPackagingConfigurationsPaginateTypeDef(BaseModel): + PackagingGroupId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackagingGroupsRequestListPackagingGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPackagingGroupsResponseTypeDef(BaseModel): + NextToken: str + PackagingGroups: List[PackagingGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CmafEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + ConstantInitializationVector: Optional[str] = None + +class DashEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + +class HlsEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[EncryptionMethodType] = None + +class MssEncryptionPaginatorTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderPaginatorTypeDef + +class CmafEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + ConstantInitializationVector: Optional[str] = None + +class DashEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + +class HlsEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + ConstantInitializationVector: Optional[str] = None + EncryptionMethod: Optional[EncryptionMethodType] = None + +class MssEncryptionTypeDef(BaseModel): + SpekeKeyProvider: SpekeKeyProviderTypeDef + +class CmafPackagePaginatorTypeDef(BaseModel): + HlsManifests: List[HlsManifestTypeDef] + Encryption: Optional[CmafEncryptionPaginatorTypeDef] = None + IncludeEncoderConfigurationInSegments: Optional[bool] = None + SegmentDurationSeconds: Optional[int] = None + +class DashPackagePaginatorTypeDef(BaseModel): + DashManifests: List[DashManifestTypeDef] + Encryption: Optional[DashEncryptionPaginatorTypeDef] = None + IncludeEncoderConfigurationInSegments: Optional[bool] = None + IncludeIframeOnlyStream: Optional[bool] = None + PeriodTriggers: Optional[List[Literal["ADS"]]] = None + SegmentDurationSeconds: Optional[int] = None + SegmentTemplateFormat: Optional[SegmentTemplateFormatType] = None + +class HlsPackagePaginatorTypeDef(BaseModel): + HlsManifests: List[HlsManifestTypeDef] + Encryption: Optional[HlsEncryptionPaginatorTypeDef] = None + IncludeDvbSubtitles: Optional[bool] = None + SegmentDurationSeconds: Optional[int] = None + UseAudioRenditionGroup: Optional[bool] = None + +class MssPackagePaginatorTypeDef(BaseModel): + MssManifests: List[MssManifestTypeDef] + Encryption: Optional[MssEncryptionPaginatorTypeDef] = None + SegmentDurationSeconds: Optional[int] = None + +class CmafPackageTypeDef(BaseModel): + HlsManifests: Sequence[HlsManifestTypeDef] + Encryption: Optional[CmafEncryptionTypeDef] = None + IncludeEncoderConfigurationInSegments: Optional[bool] = None + SegmentDurationSeconds: Optional[int] = None + +class DashPackageTypeDef(BaseModel): + DashManifests: Sequence[DashManifestTypeDef] + Encryption: Optional[DashEncryptionTypeDef] = None + IncludeEncoderConfigurationInSegments: Optional[bool] = None + IncludeIframeOnlyStream: Optional[bool] = None + PeriodTriggers: Optional[Sequence[Literal["ADS"]]] = None + SegmentDurationSeconds: Optional[int] = None + SegmentTemplateFormat: Optional[SegmentTemplateFormatType] = None + +class HlsPackageTypeDef(BaseModel): + HlsManifests: Sequence[HlsManifestTypeDef] + Encryption: Optional[HlsEncryptionTypeDef] = None + IncludeDvbSubtitles: Optional[bool] = None + SegmentDurationSeconds: Optional[int] = None + UseAudioRenditionGroup: Optional[bool] = None + +class MssPackageTypeDef(BaseModel): + MssManifests: Sequence[MssManifestTypeDef] + Encryption: Optional[MssEncryptionTypeDef] = None + SegmentDurationSeconds: Optional[int] = None + +class PackagingConfigurationPaginatorTypeDef(BaseModel): + Arn: Optional[str] = None + CmafPackage: Optional[CmafPackagePaginatorTypeDef] = None + CreatedAt: Optional[str] = None + DashPackage: Optional[DashPackagePaginatorTypeDef] = None + HlsPackage: Optional[HlsPackagePaginatorTypeDef] = None + Id: Optional[str] = None + MssPackage: Optional[MssPackagePaginatorTypeDef] = None + PackagingGroupId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class CreatePackagingConfigurationRequestRequestTypeDef(BaseModel): + Id: str + PackagingGroupId: str + CmafPackage: Optional[CmafPackageTypeDef] = None + DashPackage: Optional[DashPackageTypeDef] = None + HlsPackage: Optional[HlsPackageTypeDef] = None + MssPackage: Optional[MssPackageTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreatePackagingConfigurationResponseTypeDef(BaseModel): + Arn: str + CmafPackage: CmafPackageTypeDef + CreatedAt: str + DashPackage: DashPackageTypeDef + HlsPackage: HlsPackageTypeDef + Id: str + MssPackage: MssPackageTypeDef + PackagingGroupId: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackagingConfigurationResponseTypeDef(BaseModel): + Arn: str + CmafPackage: CmafPackageTypeDef + CreatedAt: str + DashPackage: DashPackageTypeDef + HlsPackage: HlsPackageTypeDef + Id: str + MssPackage: MssPackageTypeDef + PackagingGroupId: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PackagingConfigurationTypeDef(BaseModel): + Arn: Optional[str] = None + CmafPackage: Optional[CmafPackageTypeDef] = None + CreatedAt: Optional[str] = None + DashPackage: Optional[DashPackageTypeDef] = None + HlsPackage: Optional[HlsPackageTypeDef] = None + Id: Optional[str] = None + MssPackage: Optional[MssPackageTypeDef] = None + PackagingGroupId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ListPackagingConfigurationsResponsePaginatorTypeDef(BaseModel): + NextToken: str + PackagingConfigurations: List[PackagingConfigurationPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackagingConfigurationsResponseTypeDef(BaseModel): + NextToken: str + PackagingConfigurations: List[PackagingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mediapackage_vod_constants.py b/aws_resource_validator/pydantic_models/mediapackage_vod_constants.py new file mode 100644 index 00000000..fc481966 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediapackage_vod_constants.py @@ -0,0 +1,428 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdMarkersType = Literal["NONE", "PASSTHROUGH", "SCTE35_ENHANCED"] +EncryptionMethodType = Literal["AES_128", "SAMPLE_AES"] +ListAssetsPaginatorName = Literal["list_assets"] +ListPackagingConfigurationsPaginatorName = Literal["list_packaging_configurations"] +ListPackagingGroupsPaginatorName = Literal["list_packaging_groups"] +ManifestLayoutType = Literal["COMPACT", "FULL"] +PeriodTriggersElementType = Literal["ADS"] +PresetSpeke20AudioType = Literal["PRESET-AUDIO-1", "PRESET-AUDIO-2", "PRESET-AUDIO-3", "SHARED", "UNENCRYPTED"] +PresetSpeke20VideoType = Literal["PRESET-VIDEO-1", + "PRESET-VIDEO-2", + "PRESET-VIDEO-3", + "PRESET-VIDEO-4", + "PRESET-VIDEO-5", + "PRESET-VIDEO-6", + "PRESET-VIDEO-7", + "PRESET-VIDEO-8", + "SHARED", + "UNENCRYPTED",] +ProfileType = Literal["HBBTV_1_5", "NONE"] +ScteMarkersSourceType = Literal["MANIFEST", "SEGMENTS"] +SegmentTemplateFormatType = Literal["NUMBER_WITH_DURATION", "NUMBER_WITH_TIMELINE", "TIME_WITH_TIMELINE"] +StreamOrderType = Literal["ORIGINAL", "VIDEO_BITRATE_ASCENDING", "VIDEO_BITRATE_DESCENDING"] +MediaPackageVodServiceName = Literal["mediapackage-vod"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_assets", "list_packaging_configurations", "list_packaging_groups"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/mediapackagev2_classes.py b/aws_resource_validator/pydantic_models/mediapackagev2_classes.py new file mode 100644 index 00000000..f60c07ec --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediapackagev2_classes.py @@ -0,0 +1,532 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediapackagev2_constants import * + +class ChannelGroupListConfigurationTypeDef(BaseModel): + ChannelGroupName: str + Arn: str + CreatedAt: datetime + ModifiedAt: datetime + Description: Optional[str] = None + +class ChannelListConfigurationTypeDef(BaseModel): + Arn: str + ChannelName: str + ChannelGroupName: str + CreatedAt: datetime + ModifiedAt: datetime + Description: Optional[str] = None + InputType: Optional[InputTypeType] = None + +class CreateChannelGroupRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateChannelRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + ClientToken: Optional[str] = None + InputType: Optional[InputTypeType] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class IngestEndpointTypeDef(BaseModel): + Id: Optional[str] = None + Url: Optional[str] = None + +class DashUtcTimingTypeDef(BaseModel): + TimingMode: Optional[DashUtcTimingModeType] = None + TimingSource: Optional[str] = None + +class ScteDashTypeDef(BaseModel): + AdMarkerDash: Optional[AdMarkerDashType] = None + +class ScteHlsTypeDef(BaseModel): + AdMarkerHls: Optional[Literal["DATERANGE"]] = None + +class ForceEndpointErrorConfigurationTypeDef(BaseModel): + EndpointErrorConditions: Optional[Sequence[EndpointErrorConditionType]] = None + +class ForceEndpointErrorConfigurationOutputTypeDef(BaseModel): + EndpointErrorConditions: Optional[List[EndpointErrorConditionType]] = None + +class DeleteChannelGroupRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + +class DeleteChannelPolicyRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + +class DeleteChannelRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + +class DeleteOriginEndpointPolicyRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + +class DeleteOriginEndpointRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + +class EncryptionContractConfigurationTypeDef(BaseModel): + PresetSpeke20Audio: PresetSpeke20AudioType + PresetSpeke20Video: PresetSpeke20VideoType + +class EncryptionMethodTypeDef(BaseModel): + TsEncryptionMethod: Optional[TsEncryptionMethodType] = None + CmafEncryptionMethod: Optional[CmafEncryptionMethodType] = None + +class FilterConfigurationOutputTypeDef(BaseModel): + ManifestFilter: Optional[str] = None + Start: Optional[datetime] = None + End: Optional[datetime] = None + TimeDelaySeconds: Optional[int] = None + +class ForceEndpointErrorConfigurationExtraOutputTypeDef(BaseModel): + EndpointErrorConditions: Optional[List[EndpointErrorConditionType]] = None + +class GetChannelGroupRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + +class GetChannelPolicyRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + +class GetChannelRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + +class GetOriginEndpointPolicyRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + +class GetOriginEndpointRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChannelGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDashManifestConfigurationTypeDef(BaseModel): + ManifestName: str + Url: Optional[str] = None + +class ListHlsManifestConfigurationTypeDef(BaseModel): + ManifestName: str + ChildManifestName: Optional[str] = None + Url: Optional[str] = None + +class ListLowLatencyHlsManifestConfigurationTypeDef(BaseModel): + ManifestName: str + ChildManifestName: Optional[str] = None + Url: Optional[str] = None + +class ListOriginEndpointsRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PutChannelPolicyRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + Policy: str + +class PutOriginEndpointPolicyRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + Policy: str + +class ScteOutputTypeDef(BaseModel): + ScteFilter: Optional[List[ScteFilterType]] = None + +class ScteTypeDef(BaseModel): + ScteFilter: Optional[Sequence[ScteFilterType]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateChannelGroupRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ETag: Optional[str] = None + Description: Optional[str] = None + +class UpdateChannelRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + ETag: Optional[str] = None + Description: Optional[str] = None + +class CreateChannelGroupResponseTypeDef(BaseModel): + ChannelGroupName: str + Arn: str + EgressDomain: str + CreatedAt: datetime + ModifiedAt: datetime + ETag: str + Description: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelGroupResponseTypeDef(BaseModel): + ChannelGroupName: str + Arn: str + EgressDomain: str + CreatedAt: datetime + ModifiedAt: datetime + Description: str + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelPolicyResponseTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOriginEndpointPolicyResponseTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelGroupsResponseTypeDef(BaseModel): + Items: List[ChannelGroupListConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListChannelsResponseTypeDef(BaseModel): + Items: List[ChannelListConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelGroupResponseTypeDef(BaseModel): + ChannelGroupName: str + Arn: str + EgressDomain: str + CreatedAt: datetime + ModifiedAt: datetime + Description: str + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateChannelResponseTypeDef(BaseModel): + Arn: str + ChannelName: str + ChannelGroupName: str + CreatedAt: datetime + ModifiedAt: datetime + Description: str + IngestEndpoints: List[IngestEndpointTypeDef] + InputType: InputTypeType + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelResponseTypeDef(BaseModel): + Arn: str + ChannelName: str + ChannelGroupName: str + CreatedAt: datetime + ModifiedAt: datetime + Description: str + IngestEndpoints: List[IngestEndpointTypeDef] + InputType: InputTypeType + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + Arn: str + ChannelName: str + ChannelGroupName: str + CreatedAt: datetime + ModifiedAt: datetime + Description: str + IngestEndpoints: List[IngestEndpointTypeDef] + InputType: InputTypeType + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SpekeKeyProviderOutputTypeDef(BaseModel): + EncryptionContractConfiguration: EncryptionContractConfigurationTypeDef + ResourceId: str + DrmSystems: List[DrmSystemType] + RoleArn: str + Url: str + +class SpekeKeyProviderTypeDef(BaseModel): + EncryptionContractConfiguration: EncryptionContractConfigurationTypeDef + ResourceId: str + DrmSystems: Sequence[DrmSystemType] + RoleArn: str + Url: str + +class GetDashManifestConfigurationTypeDef(BaseModel): + ManifestName: str + Url: str + ManifestWindowSeconds: Optional[int] = None + FilterConfiguration: Optional[FilterConfigurationOutputTypeDef] = None + MinUpdatePeriodSeconds: Optional[int] = None + MinBufferTimeSeconds: Optional[int] = None + SuggestedPresentationDelaySeconds: Optional[int] = None + SegmentTemplateFormat: Optional[Literal["NUMBER_WITH_TIMELINE"]] = None + PeriodTriggers: Optional[List[DashPeriodTriggerType]] = None + ScteDash: Optional[ScteDashTypeDef] = None + DrmSignaling: Optional[DashDrmSignalingType] = None + UtcTiming: Optional[DashUtcTimingTypeDef] = None + +class GetHlsManifestConfigurationTypeDef(BaseModel): + ManifestName: str + Url: str + ChildManifestName: Optional[str] = None + ManifestWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + ScteHls: Optional[ScteHlsTypeDef] = None + FilterConfiguration: Optional[FilterConfigurationOutputTypeDef] = None + +class GetLowLatencyHlsManifestConfigurationTypeDef(BaseModel): + ManifestName: str + Url: str + ChildManifestName: Optional[str] = None + ManifestWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + ScteHls: Optional[ScteHlsTypeDef] = None + FilterConfiguration: Optional[FilterConfigurationOutputTypeDef] = None + +class FilterConfigurationTypeDef(BaseModel): + ManifestFilter: Optional[str] = None + Start: Optional[TimestampTypeDef] = None + End: Optional[TimestampTypeDef] = None + TimeDelaySeconds: Optional[int] = None + +class ListChannelGroupsRequestListChannelGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChannelsRequestListChannelsPaginateTypeDef(BaseModel): + ChannelGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOriginEndpointsRequestListOriginEndpointsPaginateTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class OriginEndpointListConfigurationTypeDef(BaseModel): + Arn: str + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + ContainerType: ContainerTypeType + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + ModifiedAt: Optional[datetime] = None + HlsManifests: Optional[List[ListHlsManifestConfigurationTypeDef]] = None + LowLatencyHlsManifests: Optional[List[ListLowLatencyHlsManifestConfigurationTypeDef]] = None + DashManifests: Optional[List[ListDashManifestConfigurationTypeDef]] = None + ForceEndpointErrorConfiguration: Optional[ ForceEndpointErrorConfigurationOutputTypeDef ] = None + +class EncryptionOutputTypeDef(BaseModel): + EncryptionMethod: EncryptionMethodTypeDef + SpekeKeyProvider: SpekeKeyProviderOutputTypeDef + ConstantInitializationVector: Optional[str] = None + KeyRotationIntervalSeconds: Optional[int] = None + +class EncryptionTypeDef(BaseModel): + EncryptionMethod: EncryptionMethodTypeDef + SpekeKeyProvider: SpekeKeyProviderTypeDef + ConstantInitializationVector: Optional[str] = None + KeyRotationIntervalSeconds: Optional[int] = None + +class CreateDashManifestConfigurationTypeDef(BaseModel): + ManifestName: str + ManifestWindowSeconds: Optional[int] = None + FilterConfiguration: Optional[FilterConfigurationTypeDef] = None + MinUpdatePeriodSeconds: Optional[int] = None + MinBufferTimeSeconds: Optional[int] = None + SuggestedPresentationDelaySeconds: Optional[int] = None + SegmentTemplateFormat: Optional[Literal["NUMBER_WITH_TIMELINE"]] = None + PeriodTriggers: Optional[Sequence[DashPeriodTriggerType]] = None + ScteDash: Optional[ScteDashTypeDef] = None + DrmSignaling: Optional[DashDrmSignalingType] = None + UtcTiming: Optional[DashUtcTimingTypeDef] = None + +class CreateHlsManifestConfigurationTypeDef(BaseModel): + ManifestName: str + ChildManifestName: Optional[str] = None + ScteHls: Optional[ScteHlsTypeDef] = None + ManifestWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + FilterConfiguration: Optional[FilterConfigurationTypeDef] = None + +class CreateLowLatencyHlsManifestConfigurationTypeDef(BaseModel): + ManifestName: str + ChildManifestName: Optional[str] = None + ScteHls: Optional[ScteHlsTypeDef] = None + ManifestWindowSeconds: Optional[int] = None + ProgramDateTimeIntervalSeconds: Optional[int] = None + FilterConfiguration: Optional[FilterConfigurationTypeDef] = None + +class ListOriginEndpointsResponseTypeDef(BaseModel): + Items: List[OriginEndpointListConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SegmentOutputTypeDef(BaseModel): + SegmentDurationSeconds: Optional[int] = None + SegmentName: Optional[str] = None + TsUseAudioRenditionGroup: Optional[bool] = None + IncludeIframeOnlyStreams: Optional[bool] = None + TsIncludeDvbSubtitles: Optional[bool] = None + Scte: Optional[ScteOutputTypeDef] = None + Encryption: Optional[EncryptionOutputTypeDef] = None + +class SegmentTypeDef(BaseModel): + SegmentDurationSeconds: Optional[int] = None + SegmentName: Optional[str] = None + TsUseAudioRenditionGroup: Optional[bool] = None + IncludeIframeOnlyStreams: Optional[bool] = None + TsIncludeDvbSubtitles: Optional[bool] = None + Scte: Optional[ScteTypeDef] = None + Encryption: Optional[EncryptionTypeDef] = None + +class CreateOriginEndpointResponseTypeDef(BaseModel): + Arn: str + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + ContainerType: ContainerTypeType + Segment: SegmentOutputTypeDef + CreatedAt: datetime + ModifiedAt: datetime + Description: str + StartoverWindowSeconds: int + HlsManifests: List[GetHlsManifestConfigurationTypeDef] + LowLatencyHlsManifests: List[GetLowLatencyHlsManifestConfigurationTypeDef] + DashManifests: List[GetDashManifestConfigurationTypeDef] + ForceEndpointErrorConfiguration: ForceEndpointErrorConfigurationOutputTypeDef + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetOriginEndpointResponseTypeDef(BaseModel): + Arn: str + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + ContainerType: ContainerTypeType + Segment: SegmentOutputTypeDef + CreatedAt: datetime + ModifiedAt: datetime + Description: str + StartoverWindowSeconds: int + HlsManifests: List[GetHlsManifestConfigurationTypeDef] + LowLatencyHlsManifests: List[GetLowLatencyHlsManifestConfigurationTypeDef] + DashManifests: List[GetDashManifestConfigurationTypeDef] + ForceEndpointErrorConfiguration: ForceEndpointErrorConfigurationOutputTypeDef + ETag: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateOriginEndpointResponseTypeDef(BaseModel): + Arn: str + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + ContainerType: ContainerTypeType + Segment: SegmentOutputTypeDef + CreatedAt: datetime + ModifiedAt: datetime + Description: str + StartoverWindowSeconds: int + HlsManifests: List[GetHlsManifestConfigurationTypeDef] + LowLatencyHlsManifests: List[GetLowLatencyHlsManifestConfigurationTypeDef] + ForceEndpointErrorConfiguration: ForceEndpointErrorConfigurationOutputTypeDef + ETag: str + Tags: Dict[str, str] + DashManifests: List[GetDashManifestConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOriginEndpointRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + ContainerType: ContainerTypeType + Segment: Optional[SegmentTypeDef] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + StartoverWindowSeconds: Optional[int] = None + HlsManifests: Optional[Sequence[CreateHlsManifestConfigurationTypeDef]] = None + LowLatencyHlsManifests: Optional[ Sequence[CreateLowLatencyHlsManifestConfigurationTypeDef] ] = None + DashManifests: Optional[Sequence[CreateDashManifestConfigurationTypeDef]] = None + ForceEndpointErrorConfiguration: Optional[ForceEndpointErrorConfigurationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateOriginEndpointRequestRequestTypeDef(BaseModel): + ChannelGroupName: str + ChannelName: str + OriginEndpointName: str + ContainerType: ContainerTypeType + Segment: Optional[SegmentTypeDef] = None + Description: Optional[str] = None + StartoverWindowSeconds: Optional[int] = None + HlsManifests: Optional[Sequence[CreateHlsManifestConfigurationTypeDef]] = None + LowLatencyHlsManifests: Optional[ Sequence[CreateLowLatencyHlsManifestConfigurationTypeDef] ] = None + DashManifests: Optional[Sequence[CreateDashManifestConfigurationTypeDef]] = None + ForceEndpointErrorConfiguration: Optional[ForceEndpointErrorConfigurationTypeDef] = None + ETag: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/mediapackagev2_constants.py b/aws_resource_validator/pydantic_models/mediapackagev2_constants.py new file mode 100644 index 00000000..e5f4bdac --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediapackagev2_constants.py @@ -0,0 +1,456 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdMarkerDashType = Literal["BINARY", "XML"] +AdMarkerHlsType = Literal["DATERANGE"] +CmafEncryptionMethodType = Literal["CBCS", "CENC"] +ContainerTypeType = Literal["CMAF", "TS"] +DashDrmSignalingType = Literal["INDIVIDUAL", "REFERENCED"] +DashPeriodTriggerType = Literal["AVAILS", "DRM_KEY_ROTATION", "NONE", "SOURCE_CHANGES", "SOURCE_DISRUPTIONS"] +DashSegmentTemplateFormatType = Literal["NUMBER_WITH_TIMELINE"] +DashUtcTimingModeType = Literal["HTTP_HEAD", "HTTP_ISO", "HTTP_XSDATE", "UTC_DIRECT"] +DrmSystemType = Literal["CLEAR_KEY_AES_128", "FAIRPLAY", "PLAYREADY", "WIDEVINE"] +EndpointErrorConditionType = Literal["INCOMPLETE_MANIFEST", "MISSING_DRM_KEY", "SLATE_INPUT", "STALE_MANIFEST"] +InputTypeType = Literal["CMAF", "HLS"] +ListChannelGroupsPaginatorName = Literal["list_channel_groups"] +ListChannelsPaginatorName = Literal["list_channels"] +ListOriginEndpointsPaginatorName = Literal["list_origin_endpoints"] +PresetSpeke20AudioType = Literal["PRESET_AUDIO_1", "PRESET_AUDIO_2", "PRESET_AUDIO_3", "SHARED", "UNENCRYPTED"] +PresetSpeke20VideoType = Literal["PRESET_VIDEO_1", + "PRESET_VIDEO_2", + "PRESET_VIDEO_3", + "PRESET_VIDEO_4", + "PRESET_VIDEO_5", + "PRESET_VIDEO_6", + "PRESET_VIDEO_7", + "PRESET_VIDEO_8", + "SHARED", + "UNENCRYPTED",] +ScteFilterType = Literal["BREAK", + "DISTRIBUTOR_ADVERTISEMENT", + "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_PLACEMENT_OPPORTUNITY", + "PROGRAM", + "PROVIDER_ADVERTISEMENT", + "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY", + "PROVIDER_PLACEMENT_OPPORTUNITY", + "SPLICE_INSERT",] +TsEncryptionMethodType = Literal["AES_128", "SAMPLE_AES"] +Mediapackagev2ServiceName = Literal["mediapackagev2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_channel_groups", "list_channels", "list_origin_endpoints"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ForceEndpointErrorConfigurationUnionTypeDef = Union[ 'ForceEndpointErrorConfigurationTypeDef', 'ForceEndpointErrorConfigurationExtraOutputTypeDef' ] +SegmentUnionTypeDef = Union['SegmentTypeDef', 'SegmentOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/mediastore_classes.py b/aws_resource_validator/pydantic_models/mediastore_classes.py new file mode 100644 index 00000000..cba2cdea --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediastore_classes.py @@ -0,0 +1,159 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediastore_constants import * + +class ContainerTypeDef(BaseModel): + Endpoint: Optional[str] = None + CreationTime: Optional[datetime] = None + ARN: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ContainerStatusType] = None + AccessLoggingEnabled: Optional[bool] = None + +class CorsRuleTypeDef(BaseModel): + AllowedOrigins: List[str] + AllowedHeaders: List[str] + AllowedMethods: Optional[List[MethodNameType]] = None + MaxAgeSeconds: Optional[int] = None + ExposeHeaders: Optional[List[str]] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteContainerInputRequestTypeDef(BaseModel): + ContainerName: str + +class DeleteContainerPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class DeleteCorsPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class DeleteLifecyclePolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class DeleteMetricPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class DescribeContainerInputRequestTypeDef(BaseModel): + ContainerName: Optional[str] = None + +class GetContainerPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class GetCorsPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class GetLifecyclePolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class GetMetricPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListContainersInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + Resource: str + +class MetricPolicyRuleTypeDef(BaseModel): + ObjectGroup: str + ObjectGroupName: str + +class PutContainerPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + Policy: str + +class PutLifecyclePolicyInputRequestTypeDef(BaseModel): + ContainerName: str + LifecyclePolicy: str + +class StartAccessLoggingInputRequestTypeDef(BaseModel): + ContainerName: str + +class StopAccessLoggingInputRequestTypeDef(BaseModel): + ContainerName: str + +class UntagResourceInputRequestTypeDef(BaseModel): + Resource: str + TagKeys: Sequence[str] + +class PutCorsPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + CorsPolicy: Sequence[CorsRuleTypeDef] + +class CreateContainerInputRequestTypeDef(BaseModel): + ContainerName: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + Resource: str + Tags: Sequence[TagTypeDef] + +class CreateContainerOutputTypeDef(BaseModel): + Container: ContainerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContainerOutputTypeDef(BaseModel): + Container: ContainerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContainerPolicyOutputTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCorsPolicyOutputTypeDef(BaseModel): + CorsPolicy: List[CorsRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLifecyclePolicyOutputTypeDef(BaseModel): + LifecyclePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListContainersOutputTypeDef(BaseModel): + Containers: List[ContainerTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListContainersInputListContainersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class MetricPolicyTypeDef(BaseModel): + ContainerLevelMetrics: ContainerLevelMetricsType + MetricPolicyRules: Optional[List[MetricPolicyRuleTypeDef]] = None + +class GetMetricPolicyOutputTypeDef(BaseModel): + MetricPolicy: MetricPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutMetricPolicyInputRequestTypeDef(BaseModel): + ContainerName: str + MetricPolicy: MetricPolicyTypeDef + diff --git a/aws_resource_validator/pydantic_models/mediastore_constants.py b/aws_resource_validator/pydantic_models/mediastore_constants.py new file mode 100644 index 00000000..8bd7b61c --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediastore_constants.py @@ -0,0 +1,402 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ContainerLevelMetricsType = Literal["DISABLED", "ENABLED"] +ContainerStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +ListContainersPaginatorName = Literal["list_containers"] +MethodNameType = Literal["DELETE", "GET", "HEAD", "PUT"] +MediaStoreServiceName = Literal["mediastore"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_containers"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/mediastore_data_classes.py b/aws_resource_validator/pydantic_models/mediastore_data_classes.py new file mode 100644 index 00000000..1164d82f --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediastore_data_classes.py @@ -0,0 +1,90 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediastore_data_constants import * + +class DeleteObjectRequestRequestTypeDef(BaseModel): + Path: str + +class DescribeObjectRequestRequestTypeDef(BaseModel): + Path: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetObjectRequestRequestTypeDef(BaseModel): + Path: str + Range: Optional[str] = None + +class ItemTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[ItemTypeType] = None + ETag: Optional[str] = None + LastModified: Optional[datetime] = None + ContentType: Optional[str] = None + ContentLength: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListItemsRequestRequestTypeDef(BaseModel): + Path: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PutObjectRequestRequestTypeDef(BaseModel): + Body: BlobTypeDef + Path: str + ContentType: Optional[str] = None + CacheControl: Optional[str] = None + StorageClass: Optional[Literal["TEMPORAL"]] = None + UploadAvailability: Optional[UploadAvailabilityType] = None + +class DescribeObjectResponseTypeDef(BaseModel): + ETag: str + ContentType: str + ContentLength: int + CacheControl: str + LastModified: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectResponseTypeDef(BaseModel): + Body: StreamingBody + CacheControl: str + ContentRange: str + ContentLength: int + ContentType: str + ETag: str + LastModified: datetime + StatusCode: int + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectResponseTypeDef(BaseModel): + ContentSHA256: str + ETag: str + StorageClass: Literal["TEMPORAL"] + ResponseMetadata: ResponseMetadataTypeDef + +class ListItemsResponseTypeDef(BaseModel): + Items: List[ItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListItemsRequestListItemsPaginateTypeDef(BaseModel): + Path: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/mediastore_data_constants.py b/aws_resource_validator/pydantic_models/mediastore_data_constants.py new file mode 100644 index 00000000..a0958e26 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediastore_data_constants.py @@ -0,0 +1,403 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ItemTypeType = Literal["FOLDER", "OBJECT"] +ListItemsPaginatorName = Literal["list_items"] +StorageClassType = Literal["TEMPORAL"] +UploadAvailabilityType = Literal["STANDARD", "STREAMING"] +MediaStoreDataServiceName = Literal["mediastore-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_items"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/mediatailor_classes.py b/aws_resource_validator/pydantic_models/mediatailor_classes.py new file mode 100644 index 00000000..3186c892 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediatailor_classes.py @@ -0,0 +1,922 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mediatailor_constants import * + +class SecretsManagerAccessTokenConfigurationTypeDef(BaseModel): + HeaderName: Optional[str] = None + SecretArn: Optional[str] = None + SecretStringKey: Optional[str] = None + +class AdBreakOpportunityTypeDef(BaseModel): + OffsetMillis: int + +class KeyValuePairTypeDef(BaseModel): + Key: str + Value: str + +class SlateSourceTypeDef(BaseModel): + SourceLocationName: Optional[str] = None + VodSourceName: Optional[str] = None + +class SpliceInsertMessageTypeDef(BaseModel): + AvailNum: Optional[int] = None + AvailsExpected: Optional[int] = None + SpliceEventId: Optional[int] = None + UniqueProgramId: Optional[int] = None + +class AdMarkerPassthroughTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AlertTypeDef(BaseModel): + AlertCode: str + AlertMessage: str + LastModifiedTime: datetime + RelatedResourceArns: List[str] + ResourceArn: str + Category: Optional[AlertCategoryType] = None + +class ClipRangeTypeDef(BaseModel): + EndOffsetMillis: Optional[int] = None + StartOffsetMillis: Optional[int] = None + +class AvailMatchingCriteriaTypeDef(BaseModel): + DynamicVariable: str + Operator: Literal["EQUALS"] + +class AvailSuppressionTypeDef(BaseModel): + FillPolicy: Optional[FillPolicyType] = None + Mode: Optional[ModeType] = None + Value: Optional[str] = None + +class BumperTypeDef(BaseModel): + EndUrl: Optional[str] = None + StartUrl: Optional[str] = None + +class CdnConfigurationTypeDef(BaseModel): + AdSegmentUrlPrefix: Optional[str] = None + ContentSegmentUrlPrefix: Optional[str] = None + +class LogConfigurationForChannelTypeDef(BaseModel): + LogTypes: Optional[List[Literal["AS_RUN"]]] = None + +class ConfigureLogsForChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + LogTypes: Sequence[Literal["AS_RUN"]] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ConfigureLogsForPlaybackConfigurationRequestRequestTypeDef(BaseModel): + PercentEnabled: int + PlaybackConfigurationName: str + +class TimeShiftConfigurationTypeDef(BaseModel): + MaxTimeDelaySeconds: int + +class HttpPackageConfigurationTypeDef(BaseModel): + Path: str + SourceGroup: str + Type: TypeType + +class DefaultSegmentDeliveryConfigurationTypeDef(BaseModel): + BaseUrl: Optional[str] = None + +class HttpConfigurationTypeDef(BaseModel): + BaseUrl: str + +class SegmentDeliveryConfigurationTypeDef(BaseModel): + BaseUrl: Optional[str] = None + Name: Optional[str] = None + +class DashConfigurationForPutTypeDef(BaseModel): + MpdLocation: Optional[str] = None + OriginManifestType: Optional[OriginManifestTypeType] = None + +class DashConfigurationTypeDef(BaseModel): + ManifestEndpointPrefix: Optional[str] = None + MpdLocation: Optional[str] = None + OriginManifestType: Optional[OriginManifestTypeType] = None + +class DashPlaylistSettingsTypeDef(BaseModel): + ManifestWindowSeconds: Optional[int] = None + MinBufferTimeSeconds: Optional[int] = None + MinUpdatePeriodSeconds: Optional[int] = None + SuggestedPresentationDelaySeconds: Optional[int] = None + +class DeleteChannelPolicyRequestRequestTypeDef(BaseModel): + ChannelName: str + +class DeleteChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + +class DeleteLiveSourceRequestRequestTypeDef(BaseModel): + LiveSourceName: str + SourceLocationName: str + +class DeletePlaybackConfigurationRequestRequestTypeDef(BaseModel): + Name: str + +class DeletePrefetchScheduleRequestRequestTypeDef(BaseModel): + Name: str + PlaybackConfigurationName: str + +class DeleteProgramRequestRequestTypeDef(BaseModel): + ChannelName: str + ProgramName: str + +class DeleteSourceLocationRequestRequestTypeDef(BaseModel): + SourceLocationName: str + +class DeleteVodSourceRequestRequestTypeDef(BaseModel): + SourceLocationName: str + VodSourceName: str + +class DescribeChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + +class DescribeLiveSourceRequestRequestTypeDef(BaseModel): + LiveSourceName: str + SourceLocationName: str + +class DescribeProgramRequestRequestTypeDef(BaseModel): + ChannelName: str + ProgramName: str + +class DescribeSourceLocationRequestRequestTypeDef(BaseModel): + SourceLocationName: str + +class DescribeVodSourceRequestRequestTypeDef(BaseModel): + SourceLocationName: str + VodSourceName: str + +class GetChannelPolicyRequestRequestTypeDef(BaseModel): + ChannelName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetChannelScheduleRequestRequestTypeDef(BaseModel): + ChannelName: str + Audience: Optional[str] = None + DurationMinutes: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetPlaybackConfigurationRequestRequestTypeDef(BaseModel): + Name: str + +class HlsConfigurationTypeDef(BaseModel): + ManifestEndpointPrefix: Optional[str] = None + +class LivePreRollConfigurationTypeDef(BaseModel): + AdDecisionServerUrl: Optional[str] = None + MaxDurationSeconds: Optional[int] = None + +class LogConfigurationTypeDef(BaseModel): + PercentEnabled: int + +class GetPrefetchScheduleRequestRequestTypeDef(BaseModel): + Name: str + PlaybackConfigurationName: str + +class HlsPlaylistSettingsPaginatorTypeDef(BaseModel): + AdMarkupType: Optional[List[AdMarkupTypeType]] = None + ManifestWindowSeconds: Optional[int] = None + +class HlsPlaylistSettingsTypeDef(BaseModel): + AdMarkupType: Optional[Sequence[AdMarkupTypeType]] = None + ManifestWindowSeconds: Optional[int] = None + +class ListAlertsRequestRequestTypeDef(BaseModel): + ResourceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListChannelsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLiveSourcesRequestRequestTypeDef(BaseModel): + SourceLocationName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPlaybackConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPrefetchSchedulesRequestRequestTypeDef(BaseModel): + PlaybackConfigurationName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + StreamId: Optional[str] = None + +class ListSourceLocationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListVodSourcesRequestRequestTypeDef(BaseModel): + SourceLocationName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PrefetchRetrievalPaginatorTypeDef(BaseModel): + EndTime: datetime + DynamicVariables: Optional[Dict[str, str]] = None + StartTime: Optional[datetime] = None + +class PutChannelPolicyRequestRequestTypeDef(BaseModel): + ChannelName: str + Policy: str + +class ScheduleAdBreakTypeDef(BaseModel): + ApproximateDurationSeconds: Optional[int] = None + ApproximateStartTime: Optional[datetime] = None + SourceLocationName: Optional[str] = None + VodSourceName: Optional[str] = None + +class TransitionTypeDef(BaseModel): + RelativePosition: RelativePositionType + Type: str + DurationMillis: Optional[int] = None + RelativeProgram: Optional[str] = None + ScheduledStartTimeMillis: Optional[int] = None + +class SegmentationDescriptorTypeDef(BaseModel): + SegmentNum: Optional[int] = None + SegmentationEventId: Optional[int] = None + SegmentationTypeId: Optional[int] = None + SegmentationUpid: Optional[str] = None + SegmentationUpidType: Optional[int] = None + SegmentsExpected: Optional[int] = None + SubSegmentNum: Optional[int] = None + SubSegmentsExpected: Optional[int] = None + +class StartChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + +class StopChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateProgramTransitionTypeDef(BaseModel): + DurationMillis: Optional[int] = None + ScheduledStartTimeMillis: Optional[int] = None + +class AccessConfigurationTypeDef(BaseModel): + AccessType: Optional[AccessTypeType] = None + SecretsManagerAccessTokenConfiguration: Optional[ SecretsManagerAccessTokenConfigurationTypeDef ] = None + +class ManifestProcessingRulesTypeDef(BaseModel): + AdMarkerPassthrough: Optional[AdMarkerPassthroughTypeDef] = None + +class PrefetchConsumptionPaginatorTypeDef(BaseModel): + EndTime: datetime + AvailMatchingCriteria: Optional[List[AvailMatchingCriteriaTypeDef]] = None + StartTime: Optional[datetime] = None + +class ConfigureLogsForChannelResponseTypeDef(BaseModel): + ChannelName: str + LogTypes: List[Literal["AS_RUN"]] + ResponseMetadata: ResponseMetadataTypeDef + +class ConfigureLogsForPlaybackConfigurationResponseTypeDef(BaseModel): + PercentEnabled: int + PlaybackConfigurationName: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelPolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAlertsResponseTypeDef(BaseModel): + Items: List[AlertTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLiveSourceRequestRequestTypeDef(BaseModel): + HttpPackageConfigurations: Sequence[HttpPackageConfigurationTypeDef] + LiveSourceName: str + SourceLocationName: str + Tags: Optional[Mapping[str, str]] = None + +class CreateLiveSourceResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LastModifiedTime: datetime + LiveSourceName: str + SourceLocationName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVodSourceRequestRequestTypeDef(BaseModel): + HttpPackageConfigurations: Sequence[HttpPackageConfigurationTypeDef] + SourceLocationName: str + VodSourceName: str + Tags: Optional[Mapping[str, str]] = None + +class CreateVodSourceResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LastModifiedTime: datetime + SourceLocationName: str + Tags: Dict[str, str] + VodSourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLiveSourceResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LastModifiedTime: datetime + LiveSourceName: str + SourceLocationName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVodSourceResponseTypeDef(BaseModel): + AdBreakOpportunities: List[AdBreakOpportunityTypeDef] + Arn: str + CreationTime: datetime + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LastModifiedTime: datetime + SourceLocationName: str + Tags: Dict[str, str] + VodSourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class LiveSourceTypeDef(BaseModel): + Arn: str + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LiveSourceName: str + SourceLocationName: str + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class UpdateLiveSourceRequestRequestTypeDef(BaseModel): + HttpPackageConfigurations: Sequence[HttpPackageConfigurationTypeDef] + LiveSourceName: str + SourceLocationName: str + +class UpdateLiveSourceResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LastModifiedTime: datetime + LiveSourceName: str + SourceLocationName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVodSourceRequestRequestTypeDef(BaseModel): + HttpPackageConfigurations: Sequence[HttpPackageConfigurationTypeDef] + SourceLocationName: str + VodSourceName: str + +class UpdateVodSourceResponseTypeDef(BaseModel): + Arn: str + CreationTime: datetime + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + LastModifiedTime: datetime + SourceLocationName: str + Tags: Dict[str, str] + VodSourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class VodSourceTypeDef(BaseModel): + Arn: str + HttpPackageConfigurations: List[HttpPackageConfigurationTypeDef] + SourceLocationName: str + VodSourceName: str + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class GetChannelScheduleRequestGetChannelSchedulePaginateTypeDef(BaseModel): + ChannelName: str + Audience: Optional[str] = None + DurationMinutes: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAlertsRequestListAlertsPaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChannelsRequestListChannelsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLiveSourcesRequestListLiveSourcesPaginateTypeDef(BaseModel): + SourceLocationName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlaybackConfigurationsRequestListPlaybackConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrefetchSchedulesRequestListPrefetchSchedulesPaginateTypeDef(BaseModel): + PlaybackConfigurationName: str + StreamId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSourceLocationsRequestListSourceLocationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVodSourcesRequestListVodSourcesPaginateTypeDef(BaseModel): + SourceLocationName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ResponseOutputItemPaginatorTypeDef(BaseModel): + ManifestName: str + PlaybackUrl: str + SourceGroup: str + DashPlaylistSettings: Optional[DashPlaylistSettingsTypeDef] = None + HlsPlaylistSettings: Optional[HlsPlaylistSettingsPaginatorTypeDef] = None + +class RequestOutputItemTypeDef(BaseModel): + ManifestName: str + SourceGroup: str + DashPlaylistSettings: Optional[DashPlaylistSettingsTypeDef] = None + HlsPlaylistSettings: Optional[HlsPlaylistSettingsTypeDef] = None + +class ResponseOutputItemTypeDef(BaseModel): + ManifestName: str + PlaybackUrl: str + SourceGroup: str + DashPlaylistSettings: Optional[DashPlaylistSettingsTypeDef] = None + HlsPlaylistSettings: Optional[HlsPlaylistSettingsTypeDef] = None + +class PrefetchConsumptionTypeDef(BaseModel): + EndTime: TimestampTypeDef + AvailMatchingCriteria: Optional[Sequence[AvailMatchingCriteriaTypeDef]] = None + StartTime: Optional[TimestampTypeDef] = None + +class PrefetchRetrievalTypeDef(BaseModel): + EndTime: TimestampTypeDef + DynamicVariables: Optional[Mapping[str, str]] = None + StartTime: Optional[TimestampTypeDef] = None + +class ScheduleEntryTypeDef(BaseModel): + Arn: str + ChannelName: str + ProgramName: str + SourceLocationName: str + ApproximateDurationSeconds: Optional[int] = None + ApproximateStartTime: Optional[datetime] = None + Audiences: Optional[List[str]] = None + LiveSourceName: Optional[str] = None + ScheduleAdBreaks: Optional[List[ScheduleAdBreakTypeDef]] = None + ScheduleEntryType: Optional[ScheduleEntryTypeType] = None + VodSourceName: Optional[str] = None + +class ScheduleConfigurationTypeDef(BaseModel): + Transition: TransitionTypeDef + ClipRange: Optional[ClipRangeTypeDef] = None + +class TimeSignalMessageTypeDef(BaseModel): + SegmentationDescriptors: Optional[Sequence[SegmentationDescriptorTypeDef]] = None + +class UpdateProgramScheduleConfigurationTypeDef(BaseModel): + ClipRange: Optional[ClipRangeTypeDef] = None + Transition: Optional[UpdateProgramTransitionTypeDef] = None + +class CreateSourceLocationRequestRequestTypeDef(BaseModel): + HttpConfiguration: HttpConfigurationTypeDef + SourceLocationName: str + AccessConfiguration: Optional[AccessConfigurationTypeDef] = None + DefaultSegmentDeliveryConfiguration: Optional[ DefaultSegmentDeliveryConfigurationTypeDef ] = None + SegmentDeliveryConfigurations: Optional[Sequence[SegmentDeliveryConfigurationTypeDef]] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateSourceLocationResponseTypeDef(BaseModel): + AccessConfiguration: AccessConfigurationTypeDef + Arn: str + CreationTime: datetime + DefaultSegmentDeliveryConfiguration: DefaultSegmentDeliveryConfigurationTypeDef + HttpConfiguration: HttpConfigurationTypeDef + LastModifiedTime: datetime + SegmentDeliveryConfigurations: List[SegmentDeliveryConfigurationTypeDef] + SourceLocationName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSourceLocationResponseTypeDef(BaseModel): + AccessConfiguration: AccessConfigurationTypeDef + Arn: str + CreationTime: datetime + DefaultSegmentDeliveryConfiguration: DefaultSegmentDeliveryConfigurationTypeDef + HttpConfiguration: HttpConfigurationTypeDef + LastModifiedTime: datetime + SegmentDeliveryConfigurations: List[SegmentDeliveryConfigurationTypeDef] + SourceLocationName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SourceLocationTypeDef(BaseModel): + Arn: str + HttpConfiguration: HttpConfigurationTypeDef + SourceLocationName: str + AccessConfiguration: Optional[AccessConfigurationTypeDef] = None + CreationTime: Optional[datetime] = None + DefaultSegmentDeliveryConfiguration: Optional[ DefaultSegmentDeliveryConfigurationTypeDef ] = None + LastModifiedTime: Optional[datetime] = None + SegmentDeliveryConfigurations: Optional[List[SegmentDeliveryConfigurationTypeDef]] = None + Tags: Optional[Dict[str, str]] = None + +class UpdateSourceLocationRequestRequestTypeDef(BaseModel): + HttpConfiguration: HttpConfigurationTypeDef + SourceLocationName: str + AccessConfiguration: Optional[AccessConfigurationTypeDef] = None + DefaultSegmentDeliveryConfiguration: Optional[ DefaultSegmentDeliveryConfigurationTypeDef ] = None + SegmentDeliveryConfigurations: Optional[Sequence[SegmentDeliveryConfigurationTypeDef]] = None + +class UpdateSourceLocationResponseTypeDef(BaseModel): + AccessConfiguration: AccessConfigurationTypeDef + Arn: str + CreationTime: datetime + DefaultSegmentDeliveryConfiguration: DefaultSegmentDeliveryConfigurationTypeDef + HttpConfiguration: HttpConfigurationTypeDef + LastModifiedTime: datetime + SegmentDeliveryConfigurations: List[SegmentDeliveryConfigurationTypeDef] + SourceLocationName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPlaybackConfigurationResponseTypeDef(BaseModel): + AdDecisionServerUrl: str + AvailSuppression: AvailSuppressionTypeDef + Bumper: BumperTypeDef + CdnConfiguration: CdnConfigurationTypeDef + ConfigurationAliases: Dict[str, Dict[str, str]] + DashConfiguration: DashConfigurationTypeDef + HlsConfiguration: HlsConfigurationTypeDef + InsertionMode: InsertionModeType + LivePreRollConfiguration: LivePreRollConfigurationTypeDef + LogConfiguration: LogConfigurationTypeDef + ManifestProcessingRules: ManifestProcessingRulesTypeDef + Name: str + PersonalizationThresholdSeconds: int + PlaybackConfigurationArn: str + PlaybackEndpointPrefix: str + SessionInitializationEndpointPrefix: str + SlateAdUrl: str + Tags: Dict[str, str] + TranscodeProfileName: str + VideoContentSourceUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class PlaybackConfigurationTypeDef(BaseModel): + AdDecisionServerUrl: Optional[str] = None + AvailSuppression: Optional[AvailSuppressionTypeDef] = None + Bumper: Optional[BumperTypeDef] = None + CdnConfiguration: Optional[CdnConfigurationTypeDef] = None + ConfigurationAliases: Optional[Dict[str, Dict[str, str]]] = None + DashConfiguration: Optional[DashConfigurationTypeDef] = None + HlsConfiguration: Optional[HlsConfigurationTypeDef] = None + InsertionMode: Optional[InsertionModeType] = None + LivePreRollConfiguration: Optional[LivePreRollConfigurationTypeDef] = None + LogConfiguration: Optional[LogConfigurationTypeDef] = None + ManifestProcessingRules: Optional[ManifestProcessingRulesTypeDef] = None + Name: Optional[str] = None + PersonalizationThresholdSeconds: Optional[int] = None + PlaybackConfigurationArn: Optional[str] = None + PlaybackEndpointPrefix: Optional[str] = None + SessionInitializationEndpointPrefix: Optional[str] = None + SlateAdUrl: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + TranscodeProfileName: Optional[str] = None + VideoContentSourceUrl: Optional[str] = None + +class PutPlaybackConfigurationRequestRequestTypeDef(BaseModel): + Name: str + AdDecisionServerUrl: Optional[str] = None + AvailSuppression: Optional[AvailSuppressionTypeDef] = None + Bumper: Optional[BumperTypeDef] = None + CdnConfiguration: Optional[CdnConfigurationTypeDef] = None + ConfigurationAliases: Optional[Mapping[str, Mapping[str, str]]] = None + DashConfiguration: Optional[DashConfigurationForPutTypeDef] = None + InsertionMode: Optional[InsertionModeType] = None + LivePreRollConfiguration: Optional[LivePreRollConfigurationTypeDef] = None + ManifestProcessingRules: Optional[ManifestProcessingRulesTypeDef] = None + PersonalizationThresholdSeconds: Optional[int] = None + SlateAdUrl: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + TranscodeProfileName: Optional[str] = None + VideoContentSourceUrl: Optional[str] = None + +class PutPlaybackConfigurationResponseTypeDef(BaseModel): + AdDecisionServerUrl: str + AvailSuppression: AvailSuppressionTypeDef + Bumper: BumperTypeDef + CdnConfiguration: CdnConfigurationTypeDef + ConfigurationAliases: Dict[str, Dict[str, str]] + DashConfiguration: DashConfigurationTypeDef + HlsConfiguration: HlsConfigurationTypeDef + InsertionMode: InsertionModeType + LivePreRollConfiguration: LivePreRollConfigurationTypeDef + LogConfiguration: LogConfigurationTypeDef + ManifestProcessingRules: ManifestProcessingRulesTypeDef + Name: str + PersonalizationThresholdSeconds: int + PlaybackConfigurationArn: str + PlaybackEndpointPrefix: str + SessionInitializationEndpointPrefix: str + SlateAdUrl: str + Tags: Dict[str, str] + TranscodeProfileName: str + VideoContentSourceUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class PrefetchSchedulePaginatorTypeDef(BaseModel): + Arn: str + Consumption: PrefetchConsumptionPaginatorTypeDef + Name: str + PlaybackConfigurationName: str + Retrieval: PrefetchRetrievalPaginatorTypeDef + StreamId: Optional[str] = None + +class ListLiveSourcesResponseTypeDef(BaseModel): + Items: List[LiveSourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVodSourcesResponseTypeDef(BaseModel): + Items: List[VodSourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChannelPaginatorTypeDef(BaseModel): + Arn: str + ChannelName: str + ChannelState: str + LogConfiguration: LogConfigurationForChannelTypeDef + Outputs: List[ResponseOutputItemPaginatorTypeDef] + PlaybackMode: str + Tier: str + Audiences: Optional[List[str]] = None + CreationTime: Optional[datetime] = None + FillerSlate: Optional[SlateSourceTypeDef] = None + LastModifiedTime: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class CreateChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + Outputs: Sequence[RequestOutputItemTypeDef] + PlaybackMode: PlaybackModeType + Audiences: Optional[Sequence[str]] = None + FillerSlate: Optional[SlateSourceTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + Tier: Optional[TierType] = None + TimeShiftConfiguration: Optional[TimeShiftConfigurationTypeDef] = None + +class UpdateChannelRequestRequestTypeDef(BaseModel): + ChannelName: str + Outputs: Sequence[RequestOutputItemTypeDef] + Audiences: Optional[Sequence[str]] = None + FillerSlate: Optional[SlateSourceTypeDef] = None + TimeShiftConfiguration: Optional[TimeShiftConfigurationTypeDef] = None + +class ChannelTypeDef(BaseModel): + Arn: str + ChannelName: str + ChannelState: str + LogConfiguration: LogConfigurationForChannelTypeDef + Outputs: List[ResponseOutputItemTypeDef] + PlaybackMode: str + Tier: str + Audiences: Optional[List[str]] = None + CreationTime: Optional[datetime] = None + FillerSlate: Optional[SlateSourceTypeDef] = None + LastModifiedTime: Optional[datetime] = None + Tags: Optional[Dict[str, str]] = None + +class CreateChannelResponseTypeDef(BaseModel): + Arn: str + Audiences: List[str] + ChannelName: str + ChannelState: ChannelStateType + CreationTime: datetime + FillerSlate: SlateSourceTypeDef + LastModifiedTime: datetime + Outputs: List[ResponseOutputItemTypeDef] + PlaybackMode: str + Tags: Dict[str, str] + Tier: str + TimeShiftConfiguration: TimeShiftConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeChannelResponseTypeDef(BaseModel): + Arn: str + Audiences: List[str] + ChannelName: str + ChannelState: ChannelStateType + CreationTime: datetime + FillerSlate: SlateSourceTypeDef + LastModifiedTime: datetime + LogConfiguration: LogConfigurationForChannelTypeDef + Outputs: List[ResponseOutputItemTypeDef] + PlaybackMode: str + Tags: Dict[str, str] + Tier: str + TimeShiftConfiguration: TimeShiftConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChannelResponseTypeDef(BaseModel): + Arn: str + Audiences: List[str] + ChannelName: str + ChannelState: ChannelStateType + CreationTime: datetime + FillerSlate: SlateSourceTypeDef + LastModifiedTime: datetime + Outputs: List[ResponseOutputItemTypeDef] + PlaybackMode: str + Tags: Dict[str, str] + Tier: str + TimeShiftConfiguration: TimeShiftConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePrefetchScheduleRequestRequestTypeDef(BaseModel): + Consumption: PrefetchConsumptionTypeDef + Name: str + PlaybackConfigurationName: str + Retrieval: PrefetchRetrievalTypeDef + StreamId: Optional[str] = None + +class CreatePrefetchScheduleResponseTypeDef(BaseModel): + Arn: str + Consumption: PrefetchConsumptionTypeDef + Name: str + PlaybackConfigurationName: str + Retrieval: PrefetchRetrievalTypeDef + StreamId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPrefetchScheduleResponseTypeDef(BaseModel): + Arn: str + Consumption: PrefetchConsumptionTypeDef + Name: str + PlaybackConfigurationName: str + Retrieval: PrefetchRetrievalTypeDef + StreamId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PrefetchScheduleTypeDef(BaseModel): + Arn: str + Consumption: PrefetchConsumptionTypeDef + Name: str + PlaybackConfigurationName: str + Retrieval: PrefetchRetrievalTypeDef + StreamId: Optional[str] = None + +class GetChannelScheduleResponseTypeDef(BaseModel): + Items: List[ScheduleEntryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AdBreakTypeDef(BaseModel): + OffsetMillis: int + AdBreakMetadata: Optional[Sequence[KeyValuePairTypeDef]] = None + MessageType: Optional[MessageTypeType] = None + Slate: Optional[SlateSourceTypeDef] = None + SpliceInsertMessage: Optional[SpliceInsertMessageTypeDef] = None + TimeSignalMessage: Optional[TimeSignalMessageTypeDef] = None + +class ListSourceLocationsResponseTypeDef(BaseModel): + Items: List[SourceLocationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPlaybackConfigurationsResponseTypeDef(BaseModel): + Items: List[PlaybackConfigurationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPrefetchSchedulesResponsePaginatorTypeDef(BaseModel): + Items: List[PrefetchSchedulePaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsResponsePaginatorTypeDef(BaseModel): + Items: List[ChannelPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChannelsResponseTypeDef(BaseModel): + Items: List[ChannelTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPrefetchSchedulesResponseTypeDef(BaseModel): + Items: List[PrefetchScheduleTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AlternateMediaTypeDef(BaseModel): + AdBreaks: Optional[Sequence[AdBreakTypeDef]] = None + ClipRange: Optional[ClipRangeTypeDef] = None + DurationMillis: Optional[int] = None + LiveSourceName: Optional[str] = None + ScheduledStartTimeMillis: Optional[int] = None + SourceLocationName: Optional[str] = None + VodSourceName: Optional[str] = None + +class AudienceMediaTypeDef(BaseModel): + AlternateMedia: Optional[Sequence[AlternateMediaTypeDef]] = None + Audience: Optional[str] = None + +class CreateProgramRequestRequestTypeDef(BaseModel): + ChannelName: str + ProgramName: str + ScheduleConfiguration: ScheduleConfigurationTypeDef + SourceLocationName: str + AdBreaks: Optional[Sequence[AdBreakTypeDef]] = None + AudienceMedia: Optional[Sequence[AudienceMediaTypeDef]] = None + LiveSourceName: Optional[str] = None + VodSourceName: Optional[str] = None + +class CreateProgramResponseTypeDef(BaseModel): + AdBreaks: List[AdBreakTypeDef] + Arn: str + AudienceMedia: List[AudienceMediaTypeDef] + ChannelName: str + ClipRange: ClipRangeTypeDef + CreationTime: datetime + DurationMillis: int + LiveSourceName: str + ProgramName: str + ScheduledStartTime: datetime + SourceLocationName: str + VodSourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProgramResponseTypeDef(BaseModel): + AdBreaks: List[AdBreakTypeDef] + Arn: str + AudienceMedia: List[AudienceMediaTypeDef] + ChannelName: str + ClipRange: ClipRangeTypeDef + CreationTime: datetime + DurationMillis: int + LiveSourceName: str + ProgramName: str + ScheduledStartTime: datetime + SourceLocationName: str + VodSourceName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProgramRequestRequestTypeDef(BaseModel): + ChannelName: str + ProgramName: str + ScheduleConfiguration: UpdateProgramScheduleConfigurationTypeDef + AdBreaks: Optional[Sequence[AdBreakTypeDef]] = None + AudienceMedia: Optional[Sequence[AudienceMediaTypeDef]] = None + +class UpdateProgramResponseTypeDef(BaseModel): + AdBreaks: List[AdBreakTypeDef] + Arn: str + AudienceMedia: List[AudienceMediaTypeDef] + ChannelName: str + ClipRange: ClipRangeTypeDef + CreationTime: datetime + DurationMillis: int + LiveSourceName: str + ProgramName: str + ScheduledStartTime: datetime + SourceLocationName: str + VodSourceName: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mediatailor_constants.py b/aws_resource_validator/pydantic_models/mediatailor_constants.py new file mode 100644 index 00000000..a2bc5760 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mediatailor_constants.py @@ -0,0 +1,448 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessTypeType = Literal["AUTODETECT_SIGV4", "S3_SIGV4", "SECRETS_MANAGER_ACCESS_TOKEN"] +AdMarkupTypeType = Literal["DATERANGE", "SCTE35_ENHANCED"] +AlertCategoryType = Literal["INFO", "PLAYBACK_WARNING", "SCHEDULING_ERROR"] +ChannelStateType = Literal["RUNNING", "STOPPED"] +FillPolicyType = Literal["FULL_AVAIL_ONLY", "PARTIAL_AVAIL"] +GetChannelSchedulePaginatorName = Literal["get_channel_schedule"] +InsertionModeType = Literal["PLAYER_SELECT", "STITCHED_ONLY"] +ListAlertsPaginatorName = Literal["list_alerts"] +ListChannelsPaginatorName = Literal["list_channels"] +ListLiveSourcesPaginatorName = Literal["list_live_sources"] +ListPlaybackConfigurationsPaginatorName = Literal["list_playback_configurations"] +ListPrefetchSchedulesPaginatorName = Literal["list_prefetch_schedules"] +ListSourceLocationsPaginatorName = Literal["list_source_locations"] +ListVodSourcesPaginatorName = Literal["list_vod_sources"] +LogTypeType = Literal["AS_RUN"] +MessageTypeType = Literal["SPLICE_INSERT", "TIME_SIGNAL"] +ModeType = Literal["AFTER_LIVE_EDGE", "BEHIND_LIVE_EDGE", "OFF"] +OperatorType = Literal["EQUALS"] +OriginManifestTypeType = Literal["MULTI_PERIOD", "SINGLE_PERIOD"] +PlaybackModeType = Literal["LINEAR", "LOOP"] +RelativePositionType = Literal["AFTER_PROGRAM", "BEFORE_PROGRAM"] +ScheduleEntryTypeType = Literal["ALTERNATE_MEDIA", "FILLER_SLATE", "PROGRAM"] +TierType = Literal["BASIC", "STANDARD"] +TypeType = Literal["DASH", "HLS"] +MediaTailorServiceName = Literal["mediatailor"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_channel_schedule", + "list_alerts", + "list_channels", + "list_live_sources", + "list_playback_configurations", + "list_prefetch_schedules", + "list_source_locations", + "list_vod_sources",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-3", + "me-central-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/medical_imaging_classes.py b/aws_resource_validator/pydantic_models/medical_imaging_classes.py new file mode 100644 index 00000000..faa50052 --- /dev/null +++ b/aws_resource_validator/pydantic_models/medical_imaging_classes.py @@ -0,0 +1,370 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.medical_imaging_constants import * + +class CopyDestinationImageSetPropertiesTypeDef(BaseModel): + imageSetId: str + latestVersionId: str + imageSetState: Optional[ImageSetStateType] = None + imageSetWorkflowStatus: Optional[ImageSetWorkflowStatusType] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + imageSetArn: Optional[str] = None + +class CopyDestinationImageSetTypeDef(BaseModel): + imageSetId: str + latestVersionId: str + +class CopySourceImageSetInformationTypeDef(BaseModel): + latestVersionId: str + +class CopySourceImageSetPropertiesTypeDef(BaseModel): + imageSetId: str + latestVersionId: str + imageSetState: Optional[ImageSetStateType] = None + imageSetWorkflowStatus: Optional[ImageSetWorkflowStatusType] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + imageSetArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateDatastoreRequestRequestTypeDef(BaseModel): + clientToken: str + datastoreName: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + kmsKeyArn: Optional[str] = None + +class DICOMImportJobPropertiesTypeDef(BaseModel): + jobId: str + jobName: str + jobStatus: JobStatusType + datastoreId: str + dataAccessRoleArn: str + inputS3Uri: str + outputS3Uri: str + endedAt: Optional[datetime] = None + submittedAt: Optional[datetime] = None + message: Optional[str] = None + +class DICOMImportJobSummaryTypeDef(BaseModel): + jobId: str + jobName: str + jobStatus: JobStatusType + datastoreId: str + dataAccessRoleArn: Optional[str] = None + endedAt: Optional[datetime] = None + submittedAt: Optional[datetime] = None + message: Optional[str] = None + +class DICOMStudyDateAndTimeTypeDef(BaseModel): + DICOMStudyDate: str + DICOMStudyTime: Optional[str] = None + +class DICOMTagsTypeDef(BaseModel): + DICOMPatientId: Optional[str] = None + DICOMPatientName: Optional[str] = None + DICOMPatientBirthDate: Optional[str] = None + DICOMPatientSex: Optional[str] = None + DICOMStudyInstanceUID: Optional[str] = None + DICOMStudyId: Optional[str] = None + DICOMStudyDescription: Optional[str] = None + DICOMNumberOfStudyRelatedSeries: Optional[int] = None + DICOMNumberOfStudyRelatedInstances: Optional[int] = None + DICOMAccessionNumber: Optional[str] = None + DICOMSeriesInstanceUID: Optional[str] = None + DICOMSeriesModality: Optional[str] = None + DICOMSeriesBodyPart: Optional[str] = None + DICOMSeriesNumber: Optional[int] = None + DICOMStudyDate: Optional[str] = None + DICOMStudyTime: Optional[str] = None + +class DatastorePropertiesTypeDef(BaseModel): + datastoreId: str + datastoreName: str + datastoreStatus: DatastoreStatusType + kmsKeyArn: Optional[str] = None + datastoreArn: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + +class DatastoreSummaryTypeDef(BaseModel): + datastoreId: str + datastoreName: str + datastoreStatus: DatastoreStatusType + datastoreArn: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + +class DeleteDatastoreRequestRequestTypeDef(BaseModel): + datastoreId: str + +class DeleteImageSetRequestRequestTypeDef(BaseModel): + datastoreId: str + imageSetId: str + +class GetDICOMImportJobRequestRequestTypeDef(BaseModel): + datastoreId: str + jobId: str + +class GetDatastoreRequestRequestTypeDef(BaseModel): + datastoreId: str + +class ImageFrameInformationTypeDef(BaseModel): + imageFrameId: str + +class GetImageSetMetadataRequestRequestTypeDef(BaseModel): + datastoreId: str + imageSetId: str + versionId: Optional[str] = None + +class GetImageSetRequestRequestTypeDef(BaseModel): + datastoreId: str + imageSetId: str + versionId: Optional[str] = None + +class ImageSetPropertiesTypeDef(BaseModel): + imageSetId: str + versionId: str + imageSetState: ImageSetStateType + ImageSetWorkflowStatus: Optional[ImageSetWorkflowStatusType] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + deletedAt: Optional[datetime] = None + message: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDICOMImportJobsRequestRequestTypeDef(BaseModel): + datastoreId: str + jobStatus: Optional[JobStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatastoresRequestRequestTypeDef(BaseModel): + datastoreStatus: Optional[DatastoreStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListImageSetVersionsRequestRequestTypeDef(BaseModel): + datastoreId: str + imageSetId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class SortTypeDef(BaseModel): + sortOrder: SortOrderType + sortField: SortFieldType + +class StartDICOMImportJobRequestRequestTypeDef(BaseModel): + dataAccessRoleArn: str + clientToken: str + datastoreId: str + inputS3Uri: str + outputS3Uri: str + jobName: Optional[str] = None + inputOwnerAccountId: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class DICOMUpdatesTypeDef(BaseModel): + removableAttributes: Optional[BlobTypeDef] = None + updatableAttributes: Optional[BlobTypeDef] = None + +class CopyImageSetInformationTypeDef(BaseModel): + sourceImageSet: CopySourceImageSetInformationTypeDef + destinationImageSet: Optional[CopyDestinationImageSetTypeDef] = None + +class CopyImageSetResponseTypeDef(BaseModel): + datastoreId: str + sourceImageSetProperties: CopySourceImageSetPropertiesTypeDef + destinationImageSetProperties: CopyDestinationImageSetPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatastoreResponseTypeDef(BaseModel): + datastoreId: str + datastoreStatus: DatastoreStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDatastoreResponseTypeDef(BaseModel): + datastoreId: str + datastoreStatus: DatastoreStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteImageSetResponseTypeDef(BaseModel): + datastoreId: str + imageSetId: str + imageSetState: ImageSetStateType + imageSetWorkflowStatus: ImageSetWorkflowStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetImageFrameResponseTypeDef(BaseModel): + imageFrameBlob: StreamingBody + contentType: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImageSetMetadataResponseTypeDef(BaseModel): + imageSetMetadataBlob: StreamingBody + contentType: str + contentEncoding: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImageSetResponseTypeDef(BaseModel): + datastoreId: str + imageSetId: str + versionId: str + imageSetState: ImageSetStateType + imageSetWorkflowStatus: ImageSetWorkflowStatusType + createdAt: datetime + updatedAt: datetime + deletedAt: datetime + message: str + imageSetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDICOMImportJobResponseTypeDef(BaseModel): + datastoreId: str + jobId: str + jobStatus: JobStatusType + submittedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateImageSetMetadataResponseTypeDef(BaseModel): + datastoreId: str + imageSetId: str + latestVersionId: str + imageSetState: ImageSetStateType + imageSetWorkflowStatus: ImageSetWorkflowStatusType + createdAt: datetime + updatedAt: datetime + message: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDICOMImportJobResponseTypeDef(BaseModel): + jobProperties: DICOMImportJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDICOMImportJobsResponseTypeDef(BaseModel): + jobSummaries: List[DICOMImportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImageSetsMetadataSummaryTypeDef(BaseModel): + imageSetId: str + version: Optional[int] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + DICOMTags: Optional[DICOMTagsTypeDef] = None + +class GetDatastoreResponseTypeDef(BaseModel): + datastoreProperties: DatastorePropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatastoresResponseTypeDef(BaseModel): + datastoreSummaries: List[DatastoreSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImageFrameRequestRequestTypeDef(BaseModel): + datastoreId: str + imageSetId: str + imageFrameInformation: ImageFrameInformationTypeDef + +class ListImageSetVersionsResponseTypeDef(BaseModel): + imageSetPropertiesList: List[ImageSetPropertiesTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDICOMImportJobsRequestListDICOMImportJobsPaginateTypeDef(BaseModel): + datastoreId: str + jobStatus: Optional[JobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatastoresRequestListDatastoresPaginateTypeDef(BaseModel): + datastoreStatus: Optional[DatastoreStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImageSetVersionsRequestListImageSetVersionsPaginateTypeDef(BaseModel): + datastoreId: str + imageSetId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchByAttributeValueTypeDef(BaseModel): + DICOMPatientId: Optional[str] = None + DICOMAccessionNumber: Optional[str] = None + DICOMStudyId: Optional[str] = None + DICOMStudyInstanceUID: Optional[str] = None + DICOMSeriesInstanceUID: Optional[str] = None + createdAt: Optional[TimestampTypeDef] = None + updatedAt: Optional[TimestampTypeDef] = None + DICOMStudyDateAndTime: Optional[DICOMStudyDateAndTimeTypeDef] = None + +class MetadataUpdatesTypeDef(BaseModel): + DICOMUpdates: Optional[DICOMUpdatesTypeDef] = None + +class CopyImageSetRequestRequestTypeDef(BaseModel): + datastoreId: str + sourceImageSetId: str + copyImageSetInformation: CopyImageSetInformationTypeDef + +class SearchImageSetsResponseTypeDef(BaseModel): + imageSetsMetadataSummaries: List[ImageSetsMetadataSummaryTypeDef] + sort: SortTypeDef + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchFilterTypeDef(BaseModel): + values: Sequence[SearchByAttributeValueTypeDef] + operator: OperatorType + +class UpdateImageSetMetadataRequestRequestTypeDef(BaseModel): + datastoreId: str + imageSetId: str + latestVersionId: str + updateImageSetMetadataUpdates: MetadataUpdatesTypeDef + +class SearchCriteriaTypeDef(BaseModel): + filters: Optional[Sequence[SearchFilterTypeDef]] = None + sort: Optional[SortTypeDef] = None + +class SearchImageSetsRequestRequestTypeDef(BaseModel): + datastoreId: str + searchCriteria: Optional[SearchCriteriaTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchImageSetsRequestSearchImageSetsPaginateTypeDef(BaseModel): + datastoreId: str + searchCriteria: Optional[SearchCriteriaTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/medical_imaging_constants.py b/aws_resource_validator/pydantic_models/medical_imaging_constants.py new file mode 100644 index 00000000..8701d652 --- /dev/null +++ b/aws_resource_validator/pydantic_models/medical_imaging_constants.py @@ -0,0 +1,420 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DatastoreStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETED", "DELETING"] +ImageSetStateType = Literal["ACTIVE", "DELETED", "LOCKED"] +ImageSetWorkflowStatusType = Literal["COPIED", + "COPYING", + "COPYING_WITH_READ_ONLY_ACCESS", + "COPY_FAILED", + "CREATED", + "DELETED", + "DELETING", + "UPDATED", + "UPDATE_FAILED", + "UPDATING",] +JobStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "SUBMITTED"] +ListDICOMImportJobsPaginatorName = Literal["list_dicom_import_jobs"] +ListDatastoresPaginatorName = Literal["list_datastores"] +ListImageSetVersionsPaginatorName = Literal["list_image_set_versions"] +OperatorType = Literal["BETWEEN", "EQUAL"] +SearchImageSetsPaginatorName = Literal["search_image_sets"] +SortFieldType = Literal["DICOMStudyDateAndTime", "createdAt", "updatedAt"] +SortOrderType = Literal["ASC", "DESC"] +HealthImagingServiceName = Literal["medical-imaging"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_datastores", "list_dicom_import_jobs", "list_image_set_versions", "search_image_sets"] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/memorydb_classes.py b/aws_resource_validator/pydantic_models/memorydb_classes.py new file mode 100644 index 00000000..06fe6fac --- /dev/null +++ b/aws_resource_validator/pydantic_models/memorydb_classes.py @@ -0,0 +1,719 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.memorydb_constants import * + +class ACLPendingChangesTypeDef(BaseModel): + UserNamesToRemove: Optional[List[str]] = None + UserNamesToAdd: Optional[List[str]] = None + +class ACLsUpdateStatusTypeDef(BaseModel): + ACLToApply: Optional[str] = None + +class AuthenticationModeTypeDef(BaseModel): + Type: Optional[InputAuthenticationTypeType] = None + Passwords: Optional[Sequence[str]] = None + +class AuthenticationTypeDef(BaseModel): + Type: Optional[AuthenticationTypeType] = None + PasswordCount: Optional[int] = None + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class ServiceUpdateRequestTypeDef(BaseModel): + ServiceUpdateNameToApply: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class UnprocessedClusterTypeDef(BaseModel): + ClusterName: Optional[str] = None + ErrorType: Optional[str] = None + ErrorMessage: Optional[str] = None + +class PendingModifiedServiceUpdateTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + Status: Optional[ServiceUpdateStatusType] = None + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + +class SecurityGroupMembershipTypeDef(BaseModel): + SecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ParameterGroupTypeDef(BaseModel): + Name: Optional[str] = None + Family: Optional[str] = None + Description: Optional[str] = None + ARN: Optional[str] = None + +class DeleteACLRequestRequestTypeDef(BaseModel): + ACLName: str + +class DeleteClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + FinalSnapshotName: Optional[str] = None + +class DeleteParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + +class DeleteSnapshotRequestRequestTypeDef(BaseModel): + SnapshotName: str + +class DeleteSubnetGroupRequestRequestTypeDef(BaseModel): + SubnetGroupName: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + UserName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeACLsRequestRequestTypeDef(BaseModel): + ACLName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeClustersRequestRequestTypeDef(BaseModel): + ClusterName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ShowShardDetails: Optional[bool] = None + +class DescribeEngineVersionsRequestRequestTypeDef(BaseModel): + EngineVersion: Optional[str] = None + ParameterGroupFamily: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + DefaultOnly: Optional[bool] = None + +class EngineVersionInfoTypeDef(BaseModel): + EngineVersion: Optional[str] = None + EnginePatchVersion: Optional[str] = None + ParameterGroupFamily: Optional[str] = None + +class EventTypeDef(BaseModel): + SourceName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + Date: Optional[datetime] = None + +class DescribeParameterGroupsRequestRequestTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeParametersRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ParameterTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + Description: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + MinimumEngineVersion: Optional[str] = None + +class DescribeReservedNodesOfferingsRequestRequestTypeDef(BaseModel): + ReservedNodesOfferingId: Optional[str] = None + NodeType: Optional[str] = None + Duration: Optional[str] = None + OfferingType: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeReservedNodesRequestRequestTypeDef(BaseModel): + ReservationId: Optional[str] = None + ReservedNodesOfferingId: Optional[str] = None + NodeType: Optional[str] = None + Duration: Optional[str] = None + OfferingType: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeServiceUpdatesRequestRequestTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ClusterNames: Optional[Sequence[str]] = None + Status: Optional[Sequence[ServiceUpdateStatusType]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ServiceUpdateTypeDef(BaseModel): + ClusterName: Optional[str] = None + ServiceUpdateName: Optional[str] = None + ReleaseDate: Optional[datetime] = None + Description: Optional[str] = None + Status: Optional[ServiceUpdateStatusType] = None + Type: Optional[Literal["security-update"]] = None + NodesUpdated: Optional[str] = None + AutoUpdateStartDate: Optional[datetime] = None + +class DescribeSnapshotsRequestRequestTypeDef(BaseModel): + ClusterName: Optional[str] = None + SnapshotName: Optional[str] = None + Source: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ShowDetail: Optional[bool] = None + +class DescribeSubnetGroupsRequestRequestTypeDef(BaseModel): + SubnetGroupName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class FailoverShardRequestRequestTypeDef(BaseModel): + ClusterName: str + ShardName: str + +class ListAllowedNodeTypeUpdatesRequestRequestTypeDef(BaseModel): + ClusterName: str + +class ListTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ParameterNameValueTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + +class RecurringChargeTypeDef(BaseModel): + RecurringChargeAmount: Optional[float] = None + RecurringChargeFrequency: Optional[str] = None + +class ReplicaConfigurationRequestTypeDef(BaseModel): + ReplicaCount: Optional[int] = None + +class ResetParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + AllParameters: Optional[bool] = None + ParameterNames: Optional[Sequence[str]] = None + +class SlotMigrationTypeDef(BaseModel): + ProgressPercentage: Optional[float] = None + +class ShardConfigurationRequestTypeDef(BaseModel): + ShardCount: Optional[int] = None + +class ShardConfigurationTypeDef(BaseModel): + Slots: Optional[str] = None + ReplicaCount: Optional[int] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateACLRequestRequestTypeDef(BaseModel): + ACLName: str + UserNamesToAdd: Optional[Sequence[str]] = None + UserNamesToRemove: Optional[Sequence[str]] = None + +class UpdateSubnetGroupRequestRequestTypeDef(BaseModel): + SubnetGroupName: str + Description: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + +class ACLTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + UserNames: Optional[List[str]] = None + MinimumEngineVersion: Optional[str] = None + PendingChanges: Optional[ACLPendingChangesTypeDef] = None + Clusters: Optional[List[str]] = None + ARN: Optional[str] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + UserName: str + AuthenticationMode: Optional[AuthenticationModeTypeDef] = None + AccessString: Optional[str] = None + +class UserTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + AccessString: Optional[str] = None + ACLNames: Optional[List[str]] = None + MinimumEngineVersion: Optional[str] = None + Authentication: Optional[AuthenticationTypeDef] = None + ARN: Optional[str] = None + +class SubnetTypeDef(BaseModel): + Identifier: Optional[str] = None + AvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + +class BatchUpdateClusterRequestRequestTypeDef(BaseModel): + ClusterNames: Sequence[str] + ServiceUpdate: Optional[ServiceUpdateRequestTypeDef] = None + +class ListAllowedNodeTypeUpdatesResponseTypeDef(BaseModel): + ScaleUpNodeTypes: List[str] + ScaleDownNodeTypes: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class NodeTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + AvailabilityZone: Optional[str] = None + CreateTime: Optional[datetime] = None + Endpoint: Optional[EndpointTypeDef] = None + +class CopySnapshotRequestRequestTypeDef(BaseModel): + SourceSnapshotName: str + TargetSnapshotName: str + TargetBucket: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateACLRequestRequestTypeDef(BaseModel): + ACLName: str + UserNames: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + NodeType: str + ACLName: str + ParameterGroupName: Optional[str] = None + Description: Optional[str] = None + NumShards: Optional[int] = None + NumReplicasPerShard: Optional[int] = None + SubnetGroupName: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + MaintenanceWindow: Optional[str] = None + Port: Optional[int] = None + SnsTopicArn: Optional[str] = None + TLSEnabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + SnapshotArns: Optional[Sequence[str]] = None + SnapshotName: Optional[str] = None + SnapshotRetentionLimit: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SnapshotWindow: Optional[str] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + DataTiering: Optional[bool] = None + +class CreateParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + Family: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotRequestRequestTypeDef(BaseModel): + ClusterName: str + SnapshotName: str + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSubnetGroupRequestRequestTypeDef(BaseModel): + SubnetGroupName: str + SubnetIds: Sequence[str] + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + UserName: str + AuthenticationMode: AuthenticationModeTypeDef + AccessString: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseReservedNodesOfferingRequestRequestTypeDef(BaseModel): + ReservedNodesOfferingId: str + ReservationId: Optional[str] = None + NodeCount: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class TagResourceResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UntagResourceResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateParameterGroupResponseTypeDef(BaseModel): + ParameterGroup: ParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteParameterGroupResponseTypeDef(BaseModel): + ParameterGroup: ParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeParameterGroupsResponseTypeDef(BaseModel): + NextToken: str + ParameterGroups: List[ParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResetParameterGroupResponseTypeDef(BaseModel): + ParameterGroup: ParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateParameterGroupResponseTypeDef(BaseModel): + ParameterGroup: ParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeACLsRequestDescribeACLsPaginateTypeDef(BaseModel): + ACLName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClustersRequestDescribeClustersPaginateTypeDef(BaseModel): + ClusterName: Optional[str] = None + ShowShardDetails: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEngineVersionsRequestDescribeEngineVersionsPaginateTypeDef(BaseModel): + EngineVersion: Optional[str] = None + ParameterGroupFamily: Optional[str] = None + DefaultOnly: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeParameterGroupsRequestDescribeParameterGroupsPaginateTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeParametersRequestDescribeParametersPaginateTypeDef(BaseModel): + ParameterGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedNodesOfferingsRequestDescribeReservedNodesOfferingsPaginateTypeDef(BaseModel): + ReservedNodesOfferingId: Optional[str] = None + NodeType: Optional[str] = None + Duration: Optional[str] = None + OfferingType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedNodesRequestDescribeReservedNodesPaginateTypeDef(BaseModel): + ReservationId: Optional[str] = None + ReservedNodesOfferingId: Optional[str] = None + NodeType: Optional[str] = None + Duration: Optional[str] = None + OfferingType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeServiceUpdatesRequestDescribeServiceUpdatesPaginateTypeDef(BaseModel): + ServiceUpdateName: Optional[str] = None + ClusterNames: Optional[Sequence[str]] = None + Status: Optional[Sequence[ServiceUpdateStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotsRequestDescribeSnapshotsPaginateTypeDef(BaseModel): + ClusterName: Optional[str] = None + SnapshotName: Optional[str] = None + Source: Optional[str] = None + ShowDetail: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSubnetGroupsRequestDescribeSubnetGroupsPaginateTypeDef(BaseModel): + SubnetGroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEngineVersionsResponseTypeDef(BaseModel): + NextToken: str + EngineVersions: List[EngineVersionInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventsRequestDescribeEventsPaginateTypeDef(BaseModel): + SourceName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsRequestRequestTypeDef(BaseModel): + SourceName: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeEventsResponseTypeDef(BaseModel): + NextToken: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeParametersResponseTypeDef(BaseModel): + NextToken: str + Parameters: List[ParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServiceUpdatesResponseTypeDef(BaseModel): + NextToken: str + ServiceUpdates: List[ServiceUpdateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUsersRequestDescribeUsersPaginateTypeDef(BaseModel): + UserName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUsersRequestRequestTypeDef(BaseModel): + UserName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UpdateParameterGroupRequestRequestTypeDef(BaseModel): + ParameterGroupName: str + ParameterNameValues: Sequence[ParameterNameValueTypeDef] + +class ReservedNodeTypeDef(BaseModel): + ReservationId: Optional[str] = None + ReservedNodesOfferingId: Optional[str] = None + NodeType: Optional[str] = None + StartTime: Optional[datetime] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + NodeCount: Optional[int] = None + OfferingType: Optional[str] = None + State: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + ARN: Optional[str] = None + +class ReservedNodesOfferingTypeDef(BaseModel): + ReservedNodesOfferingId: Optional[str] = None + NodeType: Optional[str] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + OfferingType: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class ReshardingStatusTypeDef(BaseModel): + SlotMigration: Optional[SlotMigrationTypeDef] = None + +class UpdateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + Description: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + MaintenanceWindow: Optional[str] = None + SnsTopicArn: Optional[str] = None + SnsTopicStatus: Optional[str] = None + ParameterGroupName: Optional[str] = None + SnapshotWindow: Optional[str] = None + SnapshotRetentionLimit: Optional[int] = None + NodeType: Optional[str] = None + EngineVersion: Optional[str] = None + ReplicaConfiguration: Optional[ReplicaConfigurationRequestTypeDef] = None + ShardConfiguration: Optional[ShardConfigurationRequestTypeDef] = None + ACLName: Optional[str] = None + +class ShardDetailTypeDef(BaseModel): + Name: Optional[str] = None + Configuration: Optional[ShardConfigurationTypeDef] = None + Size: Optional[str] = None + SnapshotCreationTime: Optional[datetime] = None + +class CreateACLResponseTypeDef(BaseModel): + ACL: ACLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteACLResponseTypeDef(BaseModel): + ACL: ACLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeACLsResponseTypeDef(BaseModel): + ACLs: List[ACLTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateACLResponseTypeDef(BaseModel): + ACL: ACLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SubnetGroupTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + VpcId: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + ARN: Optional[str] = None + +class ShardTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + Slots: Optional[str] = None + Nodes: Optional[List[NodeTypeDef]] = None + NumberOfNodes: Optional[int] = None + +class DescribeReservedNodesResponseTypeDef(BaseModel): + NextToken: str + ReservedNodes: List[ReservedNodeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseReservedNodesOfferingResponseTypeDef(BaseModel): + ReservedNode: ReservedNodeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReservedNodesOfferingsResponseTypeDef(BaseModel): + NextToken: str + ReservedNodesOfferings: List[ReservedNodesOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterPendingUpdatesTypeDef(BaseModel): + Resharding: Optional[ReshardingStatusTypeDef] = None + ACLs: Optional[ACLsUpdateStatusTypeDef] = None + ServiceUpdates: Optional[List[PendingModifiedServiceUpdateTypeDef]] = None + +class ClusterConfigurationTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + NodeType: Optional[str] = None + EngineVersion: Optional[str] = None + MaintenanceWindow: Optional[str] = None + TopicArn: Optional[str] = None + Port: Optional[int] = None + ParameterGroupName: Optional[str] = None + SubnetGroupName: Optional[str] = None + VpcId: Optional[str] = None + SnapshotRetentionLimit: Optional[int] = None + SnapshotWindow: Optional[str] = None + NumShards: Optional[int] = None + Shards: Optional[List[ShardDetailTypeDef]] = None + +class CreateSubnetGroupResponseTypeDef(BaseModel): + SubnetGroup: SubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSubnetGroupResponseTypeDef(BaseModel): + SubnetGroup: SubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSubnetGroupsResponseTypeDef(BaseModel): + NextToken: str + SubnetGroups: List[SubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSubnetGroupResponseTypeDef(BaseModel): + SubnetGroup: SubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Status: Optional[str] = None + PendingUpdates: Optional[ClusterPendingUpdatesTypeDef] = None + NumberOfShards: Optional[int] = None + Shards: Optional[List[ShardTypeDef]] = None + AvailabilityMode: Optional[AZStatusType] = None + ClusterEndpoint: Optional[EndpointTypeDef] = None + NodeType: Optional[str] = None + EngineVersion: Optional[str] = None + EnginePatchVersion: Optional[str] = None + ParameterGroupName: Optional[str] = None + ParameterGroupStatus: Optional[str] = None + SecurityGroups: Optional[List[SecurityGroupMembershipTypeDef]] = None + SubnetGroupName: Optional[str] = None + TLSEnabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + ARN: Optional[str] = None + SnsTopicArn: Optional[str] = None + SnsTopicStatus: Optional[str] = None + SnapshotRetentionLimit: Optional[int] = None + MaintenanceWindow: Optional[str] = None + SnapshotWindow: Optional[str] = None + ACLName: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + DataTiering: Optional[DataTieringStatusType] = None + +class SnapshotTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + Source: Optional[str] = None + KmsKeyId: Optional[str] = None + ARN: Optional[str] = None + ClusterConfiguration: Optional[ClusterConfigurationTypeDef] = None + DataTiering: Optional[DataTieringStatusType] = None + +class BatchUpdateClusterResponseTypeDef(BaseModel): + ProcessedClusters: List[ClusterTypeDef] + UnprocessedClusters: List[UnprocessedClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClustersResponseTypeDef(BaseModel): + NextToken: str + Clusters: List[ClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverShardResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopySnapshotResponseTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSnapshotResponseTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotResponseTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotsResponseTypeDef(BaseModel): + NextToken: str + Snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/memorydb_constants.py b/aws_resource_validator/pydantic_models/memorydb_constants.py new file mode 100644 index 00000000..2ebd8210 --- /dev/null +++ b/aws_resource_validator/pydantic_models/memorydb_constants.py @@ -0,0 +1,438 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AZStatusType = Literal["multiaz", "singleaz"] +AuthenticationTypeType = Literal["iam", "no-password", "password"] +DataTieringStatusType = Literal["false", "true"] +DescribeACLsPaginatorName = Literal["describe_acls"] +DescribeClustersPaginatorName = Literal["describe_clusters"] +DescribeEngineVersionsPaginatorName = Literal["describe_engine_versions"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeParameterGroupsPaginatorName = Literal["describe_parameter_groups"] +DescribeParametersPaginatorName = Literal["describe_parameters"] +DescribeReservedNodesOfferingsPaginatorName = Literal["describe_reserved_nodes_offerings"] +DescribeReservedNodesPaginatorName = Literal["describe_reserved_nodes"] +DescribeServiceUpdatesPaginatorName = Literal["describe_service_updates"] +DescribeSnapshotsPaginatorName = Literal["describe_snapshots"] +DescribeSubnetGroupsPaginatorName = Literal["describe_subnet_groups"] +DescribeUsersPaginatorName = Literal["describe_users"] +InputAuthenticationTypeType = Literal["iam", "password"] +ServiceUpdateStatusType = Literal["available", "complete", "in-progress", "scheduled"] +ServiceUpdateTypeType = Literal["security-update"] +SourceTypeType = Literal["acl", "cluster", "node", "parameter-group", "subnet-group", "user"] +MemoryDBServiceName = Literal["memorydb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_acls", + "describe_clusters", + "describe_engine_versions", + "describe_events", + "describe_parameter_groups", + "describe_parameters", + "describe_reserved_nodes", + "describe_reserved_nodes_offerings", + "describe_service_updates", + "describe_snapshots", + "describe_subnet_groups", + "describe_users",] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/meteringmarketplace_classes.py b/aws_resource_validator/pydantic_models/meteringmarketplace_classes.py new file mode 100644 index 00000000..7ee46a12 --- /dev/null +++ b/aws_resource_validator/pydantic_models/meteringmarketplace_classes.py @@ -0,0 +1,80 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.meteringmarketplace_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class RegisterUsageRequestRequestTypeDef(BaseModel): + ProductCode: str + PublicKeyVersion: int + Nonce: Optional[str] = None + +class ResolveCustomerRequestRequestTypeDef(BaseModel): + RegistrationToken: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class MeterUsageResultTypeDef(BaseModel): + MeteringRecordId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterUsageResultTypeDef(BaseModel): + PublicKeyRotationTimestamp: datetime + Signature: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResolveCustomerResultTypeDef(BaseModel): + CustomerIdentifier: str + ProductCode: str + CustomerAWSAccountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UsageAllocationTypeDef(BaseModel): + AllocatedUsageQuantity: int + Tags: Optional[Sequence[TagTypeDef]] = None + +class MeterUsageRequestRequestTypeDef(BaseModel): + ProductCode: str + Timestamp: TimestampTypeDef + UsageDimension: str + UsageQuantity: Optional[int] = None + DryRun: Optional[bool] = None + UsageAllocations: Optional[Sequence[UsageAllocationTypeDef]] = None + +class UsageRecordTypeDef(BaseModel): + Timestamp: TimestampTypeDef + CustomerIdentifier: str + Dimension: str + Quantity: Optional[int] = None + UsageAllocations: Optional[Sequence[UsageAllocationTypeDef]] = None + +class BatchMeterUsageRequestRequestTypeDef(BaseModel): + UsageRecords: Sequence[UsageRecordTypeDef] + ProductCode: str + +class UsageRecordResultTypeDef(BaseModel): + UsageRecord: Optional[UsageRecordTypeDef] = None + MeteringRecordId: Optional[str] = None + Status: Optional[UsageRecordResultStatusType] = None + +class BatchMeterUsageResultTypeDef(BaseModel): + Results: List[UsageRecordResultTypeDef] + UnprocessedRecords: List[UsageRecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/meteringmarketplace_constants.py b/aws_resource_validator/pydantic_models/meteringmarketplace_constants.py new file mode 100644 index 00000000..35b11861 --- /dev/null +++ b/aws_resource_validator/pydantic_models/meteringmarketplace_constants.py @@ -0,0 +1,418 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +UsageRecordResultStatusType = Literal["CustomerNotSubscribed", "DuplicateRecord", "Success"] +MarketplaceMeteringServiceName = Literal["meteringmarketplace"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/mgh_classes.py b/aws_resource_validator/pydantic_models/mgh_classes.py new file mode 100644 index 00000000..23b1a531 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mgh_classes.py @@ -0,0 +1,210 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mgh_constants import * + +class ApplicationStateTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ApplicationStatus: Optional[ApplicationStatusType] = None + LastUpdatedTime: Optional[datetime] = None + +class CreatedArtifactTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + +class DiscoveredResourceTypeDef(BaseModel): + ConfigurationId: str + Description: Optional[str] = None + +class CreateProgressUpdateStreamRequestRequestTypeDef(BaseModel): + ProgressUpdateStreamName: str + DryRun: Optional[bool] = None + +class DeleteProgressUpdateStreamRequestRequestTypeDef(BaseModel): + ProgressUpdateStreamName: str + DryRun: Optional[bool] = None + +class DescribeApplicationStateRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeMigrationTaskRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + +class DisassociateCreatedArtifactRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + CreatedArtifactName: str + DryRun: Optional[bool] = None + +class DisassociateDiscoveredResourceRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + ConfigurationId: str + DryRun: Optional[bool] = None + +class ImportMigrationTaskRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + DryRun: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationStatesRequestRequestTypeDef(BaseModel): + ApplicationIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCreatedArtifactsRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDiscoveredResourcesRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMigrationTasksRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ResourceName: Optional[str] = None + +class MigrationTaskSummaryTypeDef(BaseModel): + ProgressUpdateStream: Optional[str] = None + MigrationTaskName: Optional[str] = None + Status: Optional[StatusType] = None + ProgressPercent: Optional[int] = None + StatusDetail: Optional[str] = None + UpdateDateTime: Optional[datetime] = None + +class ListProgressUpdateStreamsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ProgressUpdateStreamSummaryTypeDef(BaseModel): + ProgressUpdateStreamName: Optional[str] = None + +class ResourceAttributeTypeDef(BaseModel): + Type: ResourceAttributeTypeType + Value: str + +class TaskTypeDef(BaseModel): + Status: StatusType + StatusDetail: Optional[str] = None + ProgressPercent: Optional[int] = None + +class AssociateCreatedArtifactRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + CreatedArtifact: CreatedArtifactTypeDef + DryRun: Optional[bool] = None + +class AssociateDiscoveredResourceRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + DiscoveredResource: DiscoveredResourceTypeDef + DryRun: Optional[bool] = None + +class DescribeApplicationStateResultTypeDef(BaseModel): + ApplicationStatus: ApplicationStatusType + LastUpdatedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationStatesResultTypeDef(BaseModel): + ApplicationStateList: List[ApplicationStateTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCreatedArtifactsResultTypeDef(BaseModel): + NextToken: str + CreatedArtifactList: List[CreatedArtifactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDiscoveredResourcesResultTypeDef(BaseModel): + NextToken: str + DiscoveredResourceList: List[DiscoveredResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationStatesRequestListApplicationStatesPaginateTypeDef(BaseModel): + ApplicationIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCreatedArtifactsRequestListCreatedArtifactsPaginateTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDiscoveredResourcesRequestListDiscoveredResourcesPaginateTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMigrationTasksRequestListMigrationTasksPaginateTypeDef(BaseModel): + ResourceName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProgressUpdateStreamsRequestListProgressUpdateStreamsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMigrationTasksResultTypeDef(BaseModel): + NextToken: str + MigrationTaskSummaryList: List[MigrationTaskSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListProgressUpdateStreamsResultTypeDef(BaseModel): + ProgressUpdateStreamSummaryList: List[ProgressUpdateStreamSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourceAttributesRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + ResourceAttributeList: Sequence[ResourceAttributeTypeDef] + DryRun: Optional[bool] = None + +class MigrationTaskTypeDef(BaseModel): + ProgressUpdateStream: Optional[str] = None + MigrationTaskName: Optional[str] = None + Task: Optional[TaskTypeDef] = None + UpdateDateTime: Optional[datetime] = None + ResourceAttributeList: Optional[List[ResourceAttributeTypeDef]] = None + +class NotifyApplicationStateRequestRequestTypeDef(BaseModel): + ApplicationId: str + Status: ApplicationStatusType + UpdateDateTime: Optional[TimestampTypeDef] = None + DryRun: Optional[bool] = None + +class NotifyMigrationTaskStateRequestRequestTypeDef(BaseModel): + ProgressUpdateStream: str + MigrationTaskName: str + Task: TaskTypeDef + UpdateDateTime: TimestampTypeDef + NextUpdateSeconds: int + DryRun: Optional[bool] = None + +class DescribeMigrationTaskResultTypeDef(BaseModel): + MigrationTask: MigrationTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mgh_constants.py b/aws_resource_validator/pydantic_models/mgh_constants.py new file mode 100644 index 00000000..aa0c81d9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mgh_constants.py @@ -0,0 +1,418 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationStatusType = Literal["COMPLETED", "IN_PROGRESS", "NOT_STARTED"] +ListApplicationStatesPaginatorName = Literal["list_application_states"] +ListCreatedArtifactsPaginatorName = Literal["list_created_artifacts"] +ListDiscoveredResourcesPaginatorName = Literal["list_discovered_resources"] +ListMigrationTasksPaginatorName = Literal["list_migration_tasks"] +ListProgressUpdateStreamsPaginatorName = Literal["list_progress_update_streams"] +ResourceAttributeTypeType = Literal["BIOS_ID", + "FQDN", + "IPV4_ADDRESS", + "IPV6_ADDRESS", + "MAC_ADDRESS", + "MOTHERBOARD_SERIAL_NUMBER", + "VM_MANAGED_OBJECT_REFERENCE", + "VM_MANAGER_ID", + "VM_NAME", + "VM_PATH",] +StatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "NOT_STARTED"] +MigrationHubServiceName = Literal["mgh"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_application_states", + "list_created_artifacts", + "list_discovered_resources", + "list_migration_tasks", + "list_progress_update_streams",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/mgn_classes.py b/aws_resource_validator/pydantic_models/mgn_classes.py new file mode 100644 index 00000000..2341b7f3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mgn_classes.py @@ -0,0 +1,1281 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mgn_constants import * + +class ApplicationAggregatedStatusTypeDef(BaseModel): + healthStatus: Optional[ApplicationHealthStatusType] = None + lastUpdateDateTime: Optional[str] = None + progressStatus: Optional[ApplicationProgressStatusType] = None + totalSourceServers: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ArchiveApplicationRequestRequestTypeDef(BaseModel): + applicationID: str + accountID: Optional[str] = None + +class ArchiveWaveRequestRequestTypeDef(BaseModel): + waveID: str + accountID: Optional[str] = None + +class AssociateApplicationsRequestRequestTypeDef(BaseModel): + applicationIDs: Sequence[str] + waveID: str + accountID: Optional[str] = None + +class AssociateSourceServersRequestRequestTypeDef(BaseModel): + applicationID: str + sourceServerIDs: Sequence[str] + accountID: Optional[str] = None + +class CPUTypeDef(BaseModel): + cores: Optional[int] = None + modelName: Optional[str] = None + +class ChangeServerLifeCycleStateSourceServerLifecycleTypeDef(BaseModel): + state: ChangeServerLifeCycleStateSourceServerLifecycleStateType + +class ConnectorSsmCommandConfigTypeDef(BaseModel): + cloudWatchOutputEnabled: bool + s3OutputEnabled: bool + cloudWatchLogGroupName: Optional[str] = None + outputS3BucketName: Optional[str] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + name: str + accountID: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class LaunchTemplateDiskConfTypeDef(BaseModel): + iops: Optional[int] = None + throughput: Optional[int] = None + volumeType: Optional[VolumeTypeType] = None + +class LicensingTypeDef(BaseModel): + osByol: Optional[bool] = None + +class CreateReplicationConfigurationTemplateRequestRequestTypeDef(BaseModel): + associateDefaultSecurityGroup: bool + bandwidthThrottling: int + createPublicIP: bool + dataPlaneRouting: ReplicationConfigurationDataPlaneRoutingType + defaultLargeStagingDiskType: ReplicationConfigurationDefaultLargeStagingDiskTypeType + ebsEncryption: ReplicationConfigurationEbsEncryptionType + replicationServerInstanceType: str + replicationServersSecurityGroupsIDs: Sequence[str] + stagingAreaSubnetId: str + stagingAreaTags: Mapping[str, str] + useDedicatedReplicationServer: bool + ebsEncryptionKeyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + useFipsEndpoint: Optional[bool] = None + +class CreateWaveRequestRequestTypeDef(BaseModel): + name: str + accountID: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DataReplicationErrorTypeDef(BaseModel): + error: Optional[DataReplicationErrorStringType] = None + rawError: Optional[str] = None + +class DataReplicationInfoReplicatedDiskTypeDef(BaseModel): + backloggedStorageBytes: Optional[int] = None + deviceName: Optional[str] = None + replicatedStorageBytes: Optional[int] = None + rescannedStorageBytes: Optional[int] = None + totalStorageBytes: Optional[int] = None + +class DataReplicationInitiationStepTypeDef(BaseModel): + name: Optional[DataReplicationInitiationStepNameType] = None + status: Optional[DataReplicationInitiationStepStatusType] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + applicationID: str + accountID: Optional[str] = None + +class DeleteConnectorRequestRequestTypeDef(BaseModel): + connectorID: str + +class DeleteJobRequestRequestTypeDef(BaseModel): + jobID: str + accountID: Optional[str] = None + +class DeleteLaunchConfigurationTemplateRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateID: str + +class DeleteReplicationConfigurationTemplateRequestRequestTypeDef(BaseModel): + replicationConfigurationTemplateID: str + +class DeleteSourceServerRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class DeleteVcenterClientRequestRequestTypeDef(BaseModel): + vcenterClientID: str + +class DeleteWaveRequestRequestTypeDef(BaseModel): + waveID: str + accountID: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeJobLogItemsRequestRequestTypeDef(BaseModel): + jobID: str + accountID: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeJobsRequestFiltersTypeDef(BaseModel): + fromDate: Optional[str] = None + jobIDs: Optional[Sequence[str]] = None + toDate: Optional[str] = None + +class DescribeLaunchConfigurationTemplatesRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateIDs: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeReplicationConfigurationTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + replicationConfigurationTemplateIDs: Optional[Sequence[str]] = None + +class ReplicationConfigurationTemplateTypeDef(BaseModel): + replicationConfigurationTemplateID: str + arn: Optional[str] = None + associateDefaultSecurityGroup: Optional[bool] = None + bandwidthThrottling: Optional[int] = None + createPublicIP: Optional[bool] = None + dataPlaneRouting: Optional[ReplicationConfigurationDataPlaneRoutingType] = None + defaultLargeStagingDiskType: Optional[ ReplicationConfigurationDefaultLargeStagingDiskTypeType ] = None + ebsEncryption: Optional[ReplicationConfigurationEbsEncryptionType] = None + ebsEncryptionKeyArn: Optional[str] = None + replicationServerInstanceType: Optional[str] = None + replicationServersSecurityGroupsIDs: Optional[List[str]] = None + stagingAreaSubnetId: Optional[str] = None + stagingAreaTags: Optional[Dict[str, str]] = None + tags: Optional[Dict[str, str]] = None + useDedicatedReplicationServer: Optional[bool] = None + useFipsEndpoint: Optional[bool] = None + +class DescribeSourceServersRequestFiltersTypeDef(BaseModel): + applicationIDs: Optional[Sequence[str]] = None + isArchived: Optional[bool] = None + lifeCycleStates: Optional[Sequence[LifeCycleStateType]] = None + replicationTypes: Optional[Sequence[ReplicationTypeType]] = None + sourceServerIDs: Optional[Sequence[str]] = None + +class DescribeVcenterClientsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class VcenterClientTypeDef(BaseModel): + arn: Optional[str] = None + datacenterName: Optional[str] = None + hostname: Optional[str] = None + lastSeenDatetime: Optional[str] = None + sourceServerTags: Optional[Dict[str, str]] = None + tags: Optional[Dict[str, str]] = None + vcenterClientID: Optional[str] = None + vcenterUUID: Optional[str] = None + +class DisassociateApplicationsRequestRequestTypeDef(BaseModel): + applicationIDs: Sequence[str] + waveID: str + accountID: Optional[str] = None + +class DisassociateSourceServersRequestRequestTypeDef(BaseModel): + applicationID: str + sourceServerIDs: Sequence[str] + accountID: Optional[str] = None + +class DisconnectFromServiceRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class DiskTypeDef(BaseModel): + bytes: Optional[int] = None + deviceName: Optional[str] = None + +class ExportErrorDataTypeDef(BaseModel): + rawError: Optional[str] = None + +class ExportTaskSummaryTypeDef(BaseModel): + applicationsCount: Optional[int] = None + serversCount: Optional[int] = None + wavesCount: Optional[int] = None + +class FinalizeCutoverRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class GetLaunchConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class GetReplicationConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class IdentificationHintsTypeDef(BaseModel): + awsInstanceID: Optional[str] = None + fqdn: Optional[str] = None + hostname: Optional[str] = None + vmPath: Optional[str] = None + vmWareUuid: Optional[str] = None + +class ImportErrorDataTypeDef(BaseModel): + accountID: Optional[str] = None + applicationID: Optional[str] = None + ec2LaunchTemplateID: Optional[str] = None + rawError: Optional[str] = None + rowNumber: Optional[int] = None + sourceServerID: Optional[str] = None + waveID: Optional[str] = None + +class ImportTaskSummaryApplicationsTypeDef(BaseModel): + createdCount: Optional[int] = None + modifiedCount: Optional[int] = None + +class ImportTaskSummaryServersTypeDef(BaseModel): + createdCount: Optional[int] = None + modifiedCount: Optional[int] = None + +class ImportTaskSummaryWavesTypeDef(BaseModel): + createdCount: Optional[int] = None + modifiedCount: Optional[int] = None + +class S3BucketSourceTypeDef(BaseModel): + s3Bucket: str + s3Key: str + s3BucketOwner: Optional[str] = None + +class JobLogEventDataTypeDef(BaseModel): + conversionServerID: Optional[str] = None + rawError: Optional[str] = None + sourceServerID: Optional[str] = None + targetInstanceID: Optional[str] = None + +class LaunchedInstanceTypeDef(BaseModel): + ec2InstanceID: Optional[str] = None + firstBoot: Optional[FirstBootType] = None + jobID: Optional[str] = None + +class LifeCycleLastCutoverFinalizedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + +class LifeCycleLastCutoverInitiatedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + jobID: Optional[str] = None + +class LifeCycleLastCutoverRevertedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + +class LifeCycleLastTestFinalizedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + +class LifeCycleLastTestInitiatedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + jobID: Optional[str] = None + +class LifeCycleLastTestRevertedTypeDef(BaseModel): + apiCallDateTime: Optional[str] = None + +class ListApplicationsRequestFiltersTypeDef(BaseModel): + applicationIDs: Optional[Sequence[str]] = None + isArchived: Optional[bool] = None + waveIDs: Optional[Sequence[str]] = None + +class ListConnectorsRequestFiltersTypeDef(BaseModel): + connectorIDs: Optional[Sequence[str]] = None + +class ListExportErrorsRequestRequestTypeDef(BaseModel): + exportID: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListExportsRequestFiltersTypeDef(BaseModel): + exportIDs: Optional[Sequence[str]] = None + +class ListImportErrorsRequestRequestTypeDef(BaseModel): + importID: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImportsRequestFiltersTypeDef(BaseModel): + importIDs: Optional[Sequence[str]] = None + +class ListManagedAccountsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ManagedAccountTypeDef(BaseModel): + accountId: Optional[str] = None + +class SourceServerActionsRequestFiltersTypeDef(BaseModel): + actionIDs: Optional[Sequence[str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class TemplateActionsRequestFiltersTypeDef(BaseModel): + actionIDs: Optional[Sequence[str]] = None + +class ListWavesRequestFiltersTypeDef(BaseModel): + isArchived: Optional[bool] = None + waveIDs: Optional[Sequence[str]] = None + +class MarkAsArchivedRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class NetworkInterfaceTypeDef(BaseModel): + ips: Optional[List[str]] = None + isPrimary: Optional[bool] = None + macAddress: Optional[str] = None + +class OSTypeDef(BaseModel): + fullString: Optional[str] = None + +class PauseReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class SsmExternalParameterTypeDef(BaseModel): + dynamicPath: Optional[str] = None + +class SsmParameterStoreParameterTypeDef(BaseModel): + parameterName: str + parameterType: Literal["STRING"] + +class RemoveSourceServerActionRequestRequestTypeDef(BaseModel): + actionID: str + sourceServerID: str + accountID: Optional[str] = None + +class RemoveTemplateActionRequestRequestTypeDef(BaseModel): + actionID: str + launchConfigurationTemplateID: str + +class ReplicationConfigurationReplicatedDiskTypeDef(BaseModel): + deviceName: Optional[str] = None + iops: Optional[int] = None + isBootDisk: Optional[bool] = None + stagingDiskType: Optional[ReplicationConfigurationReplicatedDiskStagingDiskTypeType] = None + throughput: Optional[int] = None + +class ResumeReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class RetryDataReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class SourceServerConnectorActionTypeDef(BaseModel): + connectorArn: Optional[str] = None + credentialsSecretArn: Optional[str] = None + +class StartCutoverRequestRequestTypeDef(BaseModel): + sourceServerIDs: Sequence[str] + accountID: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class StartExportRequestRequestTypeDef(BaseModel): + s3Bucket: str + s3Key: str + s3BucketOwner: Optional[str] = None + +class StartReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class StartTestRequestRequestTypeDef(BaseModel): + sourceServerIDs: Sequence[str] + accountID: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class StopReplicationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TerminateTargetInstancesRequestRequestTypeDef(BaseModel): + sourceServerIDs: Sequence[str] + accountID: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UnarchiveApplicationRequestRequestTypeDef(BaseModel): + applicationID: str + accountID: Optional[str] = None + +class UnarchiveWaveRequestRequestTypeDef(BaseModel): + waveID: str + accountID: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + applicationID: str + accountID: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + +class UpdateReplicationConfigurationTemplateRequestRequestTypeDef(BaseModel): + replicationConfigurationTemplateID: str + arn: Optional[str] = None + associateDefaultSecurityGroup: Optional[bool] = None + bandwidthThrottling: Optional[int] = None + createPublicIP: Optional[bool] = None + dataPlaneRouting: Optional[ReplicationConfigurationDataPlaneRoutingType] = None + defaultLargeStagingDiskType: Optional[ ReplicationConfigurationDefaultLargeStagingDiskTypeType ] = None + ebsEncryption: Optional[ReplicationConfigurationEbsEncryptionType] = None + ebsEncryptionKeyArn: Optional[str] = None + replicationServerInstanceType: Optional[str] = None + replicationServersSecurityGroupsIDs: Optional[Sequence[str]] = None + stagingAreaSubnetId: Optional[str] = None + stagingAreaTags: Optional[Mapping[str, str]] = None + useDedicatedReplicationServer: Optional[bool] = None + useFipsEndpoint: Optional[bool] = None + +class UpdateSourceServerReplicationTypeRequestRequestTypeDef(BaseModel): + replicationType: ReplicationTypeType + sourceServerID: str + accountID: Optional[str] = None + +class UpdateWaveRequestRequestTypeDef(BaseModel): + waveID: str + accountID: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + +class WaveAggregatedStatusTypeDef(BaseModel): + healthStatus: Optional[WaveHealthStatusType] = None + lastUpdateDateTime: Optional[str] = None + progressStatus: Optional[WaveProgressStatusType] = None + replicationStartedDateTime: Optional[str] = None + totalApplications: Optional[int] = None + +class ApplicationTypeDef(BaseModel): + applicationAggregatedStatus: Optional[ApplicationAggregatedStatusTypeDef] = None + applicationID: Optional[str] = None + arn: Optional[str] = None + creationDateTime: Optional[str] = None + description: Optional[str] = None + isArchived: Optional[bool] = None + lastModifiedDateTime: Optional[str] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + waveID: Optional[str] = None + +class ApplicationResponseTypeDef(BaseModel): + applicationAggregatedStatus: ApplicationAggregatedStatusTypeDef + applicationID: str + arn: str + creationDateTime: str + description: str + isArchived: bool + lastModifiedDateTime: str + name: str + tags: Dict[str, str] + waveID: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicationConfigurationTemplateResponseTypeDef(BaseModel): + arn: str + associateDefaultSecurityGroup: bool + bandwidthThrottling: int + createPublicIP: bool + dataPlaneRouting: ReplicationConfigurationDataPlaneRoutingType + defaultLargeStagingDiskType: ReplicationConfigurationDefaultLargeStagingDiskTypeType + ebsEncryption: ReplicationConfigurationEbsEncryptionType + ebsEncryptionKeyArn: str + replicationConfigurationTemplateID: str + replicationServerInstanceType: str + replicationServersSecurityGroupsIDs: List[str] + stagingAreaSubnetId: str + stagingAreaTags: Dict[str, str] + tags: Dict[str, str] + useDedicatedReplicationServer: bool + useFipsEndpoint: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeServerLifeCycleStateRequestRequestTypeDef(BaseModel): + lifeCycle: ChangeServerLifeCycleStateSourceServerLifecycleTypeDef + sourceServerID: str + accountID: Optional[str] = None + +class ConnectorResponseTypeDef(BaseModel): + arn: str + connectorID: str + name: str + ssmCommandConfig: ConnectorSsmCommandConfigTypeDef + ssmInstanceID: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectorTypeDef(BaseModel): + arn: Optional[str] = None + connectorID: Optional[str] = None + name: Optional[str] = None + ssmCommandConfig: Optional[ConnectorSsmCommandConfigTypeDef] = None + ssmInstanceID: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class CreateConnectorRequestRequestTypeDef(BaseModel): + name: str + ssmInstanceID: str + ssmCommandConfig: Optional[ConnectorSsmCommandConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateConnectorRequestRequestTypeDef(BaseModel): + connectorID: str + name: Optional[str] = None + ssmCommandConfig: Optional[ConnectorSsmCommandConfigTypeDef] = None + +class DataReplicationInitiationTypeDef(BaseModel): + nextAttemptDateTime: Optional[str] = None + startDateTime: Optional[str] = None + steps: Optional[List[DataReplicationInitiationStepTypeDef]] = None + +class DescribeJobLogItemsRequestDescribeJobLogItemsPaginateTypeDef(BaseModel): + jobID: str + accountID: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeLaunchConfigurationTemplatesRequestDescribeLaunchConfigurationTemplatesPaginateTypeDef(BaseModel): + launchConfigurationTemplateIDs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReplicationConfigurationTemplatesRequestDescribeReplicationConfigurationTemplatesPaginateTypeDef(BaseModel): + replicationConfigurationTemplateIDs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVcenterClientsRequestDescribeVcenterClientsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExportErrorsRequestListExportErrorsPaginateTypeDef(BaseModel): + exportID: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportErrorsRequestListImportErrorsPaginateTypeDef(BaseModel): + importID: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedAccountsRequestListManagedAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeJobsRequestDescribeJobsPaginateTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[DescribeJobsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeJobsRequestRequestTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[DescribeJobsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeReplicationConfigurationTemplatesResponseTypeDef(BaseModel): + items: List[ReplicationConfigurationTemplateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSourceServersRequestDescribeSourceServersPaginateTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[DescribeSourceServersRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSourceServersRequestRequestTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[DescribeSourceServersRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class DescribeVcenterClientsResponseTypeDef(BaseModel): + items: List[VcenterClientTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTaskErrorTypeDef(BaseModel): + errorData: Optional[ExportErrorDataTypeDef] = None + errorDateTime: Optional[str] = None + +class ExportTaskTypeDef(BaseModel): + creationDateTime: Optional[str] = None + endDateTime: Optional[str] = None + exportID: Optional[str] = None + progressPercentage: Optional[float] = None + s3Bucket: Optional[str] = None + s3BucketOwner: Optional[str] = None + s3Key: Optional[str] = None + status: Optional[ExportStatusType] = None + summary: Optional[ExportTaskSummaryTypeDef] = None + +class ImportTaskErrorTypeDef(BaseModel): + errorData: Optional[ImportErrorDataTypeDef] = None + errorDateTime: Optional[str] = None + errorType: Optional[ImportErrorTypeType] = None + +class ImportTaskSummaryTypeDef(BaseModel): + applications: Optional[ImportTaskSummaryApplicationsTypeDef] = None + servers: Optional[ImportTaskSummaryServersTypeDef] = None + waves: Optional[ImportTaskSummaryWavesTypeDef] = None + +class StartImportRequestRequestTypeDef(BaseModel): + s3BucketSource: S3BucketSourceTypeDef + clientToken: Optional[str] = None + +class JobLogTypeDef(BaseModel): + event: Optional[JobLogEventType] = None + eventData: Optional[JobLogEventDataTypeDef] = None + logDateTime: Optional[str] = None + +class LifeCycleLastCutoverTypeDef(BaseModel): + finalized: Optional[LifeCycleLastCutoverFinalizedTypeDef] = None + initiated: Optional[LifeCycleLastCutoverInitiatedTypeDef] = None + reverted: Optional[LifeCycleLastCutoverRevertedTypeDef] = None + +class LifeCycleLastTestTypeDef(BaseModel): + finalized: Optional[LifeCycleLastTestFinalizedTypeDef] = None + initiated: Optional[LifeCycleLastTestInitiatedTypeDef] = None + reverted: Optional[LifeCycleLastTestRevertedTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[ListApplicationsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[ListApplicationsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListConnectorsRequestListConnectorsPaginateTypeDef(BaseModel): + filters: Optional[ListConnectorsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectorsRequestRequestTypeDef(BaseModel): + filters: Optional[ListConnectorsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListExportsRequestListExportsPaginateTypeDef(BaseModel): + filters: Optional[ListExportsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExportsRequestRequestTypeDef(BaseModel): + filters: Optional[ListExportsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImportsRequestListImportsPaginateTypeDef(BaseModel): + filters: Optional[ListImportsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportsRequestRequestTypeDef(BaseModel): + filters: Optional[ListImportsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListManagedAccountsResponseTypeDef(BaseModel): + items: List[ManagedAccountTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSourceServerActionsRequestListSourceServerActionsPaginateTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + filters: Optional[SourceServerActionsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSourceServerActionsRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + filters: Optional[SourceServerActionsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTemplateActionsRequestListTemplateActionsPaginateTypeDef(BaseModel): + launchConfigurationTemplateID: str + filters: Optional[TemplateActionsRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplateActionsRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateID: str + filters: Optional[TemplateActionsRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListWavesRequestListWavesPaginateTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[ListWavesRequestFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWavesRequestRequestTypeDef(BaseModel): + accountID: Optional[str] = None + filters: Optional[ListWavesRequestFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SourcePropertiesTypeDef(BaseModel): + cpus: Optional[List[CPUTypeDef]] = None + disks: Optional[List[DiskTypeDef]] = None + identificationHints: Optional[IdentificationHintsTypeDef] = None + lastUpdatedDateTime: Optional[str] = None + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + os: Optional[OSTypeDef] = None + ramBytes: Optional[int] = None + recommendedInstanceType: Optional[str] = None + +class PutSourceServerActionRequestRequestTypeDef(BaseModel): + actionID: str + actionName: str + documentIdentifier: str + order: int + sourceServerID: str + accountID: Optional[str] = None + active: Optional[bool] = None + category: Optional[ActionCategoryType] = None + description: Optional[str] = None + documentVersion: Optional[str] = None + externalParameters: Optional[Mapping[str, SsmExternalParameterTypeDef]] = None + mustSucceedForCutover: Optional[bool] = None + parameters: Optional[Mapping[str, Sequence[SsmParameterStoreParameterTypeDef]]] = None + timeoutSeconds: Optional[int] = None + +class PutTemplateActionRequestRequestTypeDef(BaseModel): + actionID: str + actionName: str + documentIdentifier: str + launchConfigurationTemplateID: str + order: int + active: Optional[bool] = None + category: Optional[ActionCategoryType] = None + description: Optional[str] = None + documentVersion: Optional[str] = None + externalParameters: Optional[Mapping[str, SsmExternalParameterTypeDef]] = None + mustSucceedForCutover: Optional[bool] = None + operatingSystem: Optional[str] = None + parameters: Optional[Mapping[str, Sequence[SsmParameterStoreParameterTypeDef]]] = None + timeoutSeconds: Optional[int] = None + +class SourceServerActionDocumentResponseTypeDef(BaseModel): + actionID: str + actionName: str + active: bool + category: ActionCategoryType + description: str + documentIdentifier: str + documentVersion: str + externalParameters: Dict[str, SsmExternalParameterTypeDef] + mustSucceedForCutover: bool + order: int + parameters: Dict[str, List[SsmParameterStoreParameterTypeDef]] + timeoutSeconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class SourceServerActionDocumentTypeDef(BaseModel): + actionID: Optional[str] = None + actionName: Optional[str] = None + active: Optional[bool] = None + category: Optional[ActionCategoryType] = None + description: Optional[str] = None + documentIdentifier: Optional[str] = None + documentVersion: Optional[str] = None + externalParameters: Optional[Dict[str, SsmExternalParameterTypeDef]] = None + mustSucceedForCutover: Optional[bool] = None + order: Optional[int] = None + parameters: Optional[Dict[str, List[SsmParameterStoreParameterTypeDef]]] = None + timeoutSeconds: Optional[int] = None + +class SsmDocumentPaginatorTypeDef(BaseModel): + actionName: str + ssmDocumentName: str + externalParameters: Optional[Dict[str, SsmExternalParameterTypeDef]] = None + mustSucceedForCutover: Optional[bool] = None + parameters: Optional[Dict[str, List[SsmParameterStoreParameterTypeDef]]] = None + timeoutSeconds: Optional[int] = None + +class SsmDocumentTypeDef(BaseModel): + actionName: str + ssmDocumentName: str + externalParameters: Optional[Mapping[str, SsmExternalParameterTypeDef]] = None + mustSucceedForCutover: Optional[bool] = None + parameters: Optional[Mapping[str, Sequence[SsmParameterStoreParameterTypeDef]]] = None + timeoutSeconds: Optional[int] = None + +class TemplateActionDocumentResponseTypeDef(BaseModel): + actionID: str + actionName: str + active: bool + category: ActionCategoryType + description: str + documentIdentifier: str + documentVersion: str + externalParameters: Dict[str, SsmExternalParameterTypeDef] + mustSucceedForCutover: bool + operatingSystem: str + order: int + parameters: Dict[str, List[SsmParameterStoreParameterTypeDef]] + timeoutSeconds: int + ResponseMetadata: ResponseMetadataTypeDef + +class TemplateActionDocumentTypeDef(BaseModel): + actionID: Optional[str] = None + actionName: Optional[str] = None + active: Optional[bool] = None + category: Optional[ActionCategoryType] = None + description: Optional[str] = None + documentIdentifier: Optional[str] = None + documentVersion: Optional[str] = None + externalParameters: Optional[Dict[str, SsmExternalParameterTypeDef]] = None + mustSucceedForCutover: Optional[bool] = None + operatingSystem: Optional[str] = None + order: Optional[int] = None + parameters: Optional[Dict[str, List[SsmParameterStoreParameterTypeDef]]] = None + timeoutSeconds: Optional[int] = None + +class ReplicationConfigurationTypeDef(BaseModel): + associateDefaultSecurityGroup: bool + bandwidthThrottling: int + createPublicIP: bool + dataPlaneRouting: ReplicationConfigurationDataPlaneRoutingType + defaultLargeStagingDiskType: ReplicationConfigurationDefaultLargeStagingDiskTypeType + ebsEncryption: ReplicationConfigurationEbsEncryptionType + ebsEncryptionKeyArn: str + name: str + replicatedDisks: List[ReplicationConfigurationReplicatedDiskTypeDef] + replicationServerInstanceType: str + replicationServersSecurityGroupsIDs: List[str] + sourceServerID: str + stagingAreaSubnetId: str + stagingAreaTags: Dict[str, str] + useDedicatedReplicationServer: bool + useFipsEndpoint: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReplicationConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + associateDefaultSecurityGroup: Optional[bool] = None + bandwidthThrottling: Optional[int] = None + createPublicIP: Optional[bool] = None + dataPlaneRouting: Optional[ReplicationConfigurationDataPlaneRoutingType] = None + defaultLargeStagingDiskType: Optional[ ReplicationConfigurationDefaultLargeStagingDiskTypeType ] = None + ebsEncryption: Optional[ReplicationConfigurationEbsEncryptionType] = None + ebsEncryptionKeyArn: Optional[str] = None + name: Optional[str] = None + replicatedDisks: Optional[Sequence[ReplicationConfigurationReplicatedDiskTypeDef]] = None + replicationServerInstanceType: Optional[str] = None + replicationServersSecurityGroupsIDs: Optional[Sequence[str]] = None + stagingAreaSubnetId: Optional[str] = None + stagingAreaTags: Optional[Mapping[str, str]] = None + useDedicatedReplicationServer: Optional[bool] = None + useFipsEndpoint: Optional[bool] = None + +class UpdateSourceServerRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + connectorAction: Optional[SourceServerConnectorActionTypeDef] = None + +class WaveResponseTypeDef(BaseModel): + arn: str + creationDateTime: str + description: str + isArchived: bool + lastModifiedDateTime: str + name: str + tags: Dict[str, str] + waveAggregatedStatus: WaveAggregatedStatusTypeDef + waveID: str + ResponseMetadata: ResponseMetadataTypeDef + +class WaveTypeDef(BaseModel): + arn: Optional[str] = None + creationDateTime: Optional[str] = None + description: Optional[str] = None + isArchived: Optional[bool] = None + lastModifiedDateTime: Optional[str] = None + name: Optional[str] = None + tags: Optional[Dict[str, str]] = None + waveAggregatedStatus: Optional[WaveAggregatedStatusTypeDef] = None + waveID: Optional[str] = None + +class ListApplicationsResponseTypeDef(BaseModel): + items: List[ApplicationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectorsResponseTypeDef(BaseModel): + items: List[ConnectorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataReplicationInfoTypeDef(BaseModel): + dataReplicationError: Optional[DataReplicationErrorTypeDef] = None + dataReplicationInitiation: Optional[DataReplicationInitiationTypeDef] = None + dataReplicationState: Optional[DataReplicationStateType] = None + etaDateTime: Optional[str] = None + lagDuration: Optional[str] = None + lastSnapshotDateTime: Optional[str] = None + replicatedDisks: Optional[List[DataReplicationInfoReplicatedDiskTypeDef]] = None + +class ListExportErrorsResponseTypeDef(BaseModel): + items: List[ExportTaskErrorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListExportsResponseTypeDef(BaseModel): + items: List[ExportTaskTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartExportResponseTypeDef(BaseModel): + exportTask: ExportTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListImportErrorsResponseTypeDef(BaseModel): + items: List[ImportTaskErrorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportTaskTypeDef(BaseModel): + creationDateTime: Optional[str] = None + endDateTime: Optional[str] = None + importID: Optional[str] = None + progressPercentage: Optional[float] = None + s3BucketSource: Optional[S3BucketSourceTypeDef] = None + status: Optional[ImportStatusType] = None + summary: Optional[ImportTaskSummaryTypeDef] = None + +class DescribeJobLogItemsResponseTypeDef(BaseModel): + items: List[JobLogTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LifeCycleTypeDef(BaseModel): + addedToServiceDateTime: Optional[str] = None + elapsedReplicationDuration: Optional[str] = None + firstByteDateTime: Optional[str] = None + lastCutover: Optional[LifeCycleLastCutoverTypeDef] = None + lastSeenByServiceDateTime: Optional[str] = None + lastTest: Optional[LifeCycleLastTestTypeDef] = None + state: Optional[LifeCycleStateType] = None + +class ListSourceServerActionsResponseTypeDef(BaseModel): + items: List[SourceServerActionDocumentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobPostLaunchActionsLaunchStatusPaginatorTypeDef(BaseModel): + executionID: Optional[str] = None + executionStatus: Optional[PostLaunchActionExecutionStatusType] = None + failureReason: Optional[str] = None + ssmDocument: Optional[SsmDocumentPaginatorTypeDef] = None + ssmDocumentType: Optional[SsmDocumentTypeType] = None + +class PostLaunchActionsPaginatorTypeDef(BaseModel): + cloudWatchLogGroupName: Optional[str] = None + deployment: Optional[PostLaunchActionsDeploymentTypeType] = None + s3LogBucket: Optional[str] = None + s3OutputKeyPrefix: Optional[str] = None + ssmDocuments: Optional[List[SsmDocumentPaginatorTypeDef]] = None + +class JobPostLaunchActionsLaunchStatusTypeDef(BaseModel): + executionID: Optional[str] = None + executionStatus: Optional[PostLaunchActionExecutionStatusType] = None + failureReason: Optional[str] = None + ssmDocument: Optional[SsmDocumentTypeDef] = None + ssmDocumentType: Optional[SsmDocumentTypeType] = None + +class PostLaunchActionsTypeDef(BaseModel): + cloudWatchLogGroupName: Optional[str] = None + deployment: Optional[PostLaunchActionsDeploymentTypeType] = None + s3LogBucket: Optional[str] = None + s3OutputKeyPrefix: Optional[str] = None + ssmDocuments: Optional[Sequence[SsmDocumentTypeDef]] = None + +class ListTemplateActionsResponseTypeDef(BaseModel): + items: List[TemplateActionDocumentTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWavesResponseTypeDef(BaseModel): + items: List[WaveTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImportsResponseTypeDef(BaseModel): + items: List[ImportTaskTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportResponseTypeDef(BaseModel): + importTask: ImportTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SourceServerResponseTypeDef(BaseModel): + applicationID: str + arn: str + connectorAction: SourceServerConnectorActionTypeDef + dataReplicationInfo: DataReplicationInfoTypeDef + fqdnForActionFramework: str + isArchived: bool + launchedInstance: LaunchedInstanceTypeDef + lifeCycle: LifeCycleTypeDef + replicationType: ReplicationTypeType + sourceProperties: SourcePropertiesTypeDef + sourceServerID: str + tags: Dict[str, str] + userProvidedID: str + vcenterClientID: str + ResponseMetadata: ResponseMetadataTypeDef + +class SourceServerTypeDef(BaseModel): + applicationID: Optional[str] = None + arn: Optional[str] = None + connectorAction: Optional[SourceServerConnectorActionTypeDef] = None + dataReplicationInfo: Optional[DataReplicationInfoTypeDef] = None + fqdnForActionFramework: Optional[str] = None + isArchived: Optional[bool] = None + launchedInstance: Optional[LaunchedInstanceTypeDef] = None + lifeCycle: Optional[LifeCycleTypeDef] = None + replicationType: Optional[ReplicationTypeType] = None + sourceProperties: Optional[SourcePropertiesTypeDef] = None + sourceServerID: Optional[str] = None + tags: Optional[Dict[str, str]] = None + userProvidedID: Optional[str] = None + vcenterClientID: Optional[str] = None + +class PostLaunchActionsStatusPaginatorTypeDef(BaseModel): + postLaunchActionsLaunchStatusList: Optional[ List[JobPostLaunchActionsLaunchStatusPaginatorTypeDef] ] = None + ssmAgentDiscoveryDatetime: Optional[str] = None + +class LaunchConfigurationTemplatePaginatorTypeDef(BaseModel): + launchConfigurationTemplateID: str + arn: Optional[str] = None + associatePublicIpAddress: Optional[bool] = None + bootMode: Optional[BootModeType] = None + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + ec2LaunchTemplateID: Optional[str] = None + enableMapAutoTagging: Optional[bool] = None + largeVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + launchDisposition: Optional[LaunchDispositionType] = None + licensing: Optional[LicensingTypeDef] = None + mapAutoTaggingMpeID: Optional[str] = None + postLaunchActions: Optional[PostLaunchActionsPaginatorTypeDef] = None + smallVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + smallVolumeMaxSize: Optional[int] = None + tags: Optional[Dict[str, str]] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class PostLaunchActionsStatusTypeDef(BaseModel): + postLaunchActionsLaunchStatusList: Optional[ List[JobPostLaunchActionsLaunchStatusTypeDef] ] = None + ssmAgentDiscoveryDatetime: Optional[str] = None + +class CreateLaunchConfigurationTemplateRequestRequestTypeDef(BaseModel): + associatePublicIpAddress: Optional[bool] = None + bootMode: Optional[BootModeType] = None + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + enableMapAutoTagging: Optional[bool] = None + largeVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + launchDisposition: Optional[LaunchDispositionType] = None + licensing: Optional[LicensingTypeDef] = None + mapAutoTaggingMpeID: Optional[str] = None + postLaunchActions: Optional[PostLaunchActionsTypeDef] = None + smallVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + smallVolumeMaxSize: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class LaunchConfigurationTemplateResponseTypeDef(BaseModel): + arn: str + associatePublicIpAddress: bool + bootMode: BootModeType + copyPrivateIp: bool + copyTags: bool + ec2LaunchTemplateID: str + enableMapAutoTagging: bool + largeVolumeConf: LaunchTemplateDiskConfTypeDef + launchConfigurationTemplateID: str + launchDisposition: LaunchDispositionType + licensing: LicensingTypeDef + mapAutoTaggingMpeID: str + postLaunchActions: PostLaunchActionsTypeDef + smallVolumeConf: LaunchTemplateDiskConfTypeDef + smallVolumeMaxSize: int + tags: Dict[str, str] + targetInstanceTypeRightSizingMethod: TargetInstanceTypeRightSizingMethodType + ResponseMetadata: ResponseMetadataTypeDef + +class LaunchConfigurationTemplateTypeDef(BaseModel): + launchConfigurationTemplateID: str + arn: Optional[str] = None + associatePublicIpAddress: Optional[bool] = None + bootMode: Optional[BootModeType] = None + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + ec2LaunchTemplateID: Optional[str] = None + enableMapAutoTagging: Optional[bool] = None + largeVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + launchDisposition: Optional[LaunchDispositionType] = None + licensing: Optional[LicensingTypeDef] = None + mapAutoTaggingMpeID: Optional[str] = None + postLaunchActions: Optional[PostLaunchActionsTypeDef] = None + smallVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + smallVolumeMaxSize: Optional[int] = None + tags: Optional[Dict[str, str]] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class LaunchConfigurationTypeDef(BaseModel): + bootMode: BootModeType + copyPrivateIp: bool + copyTags: bool + ec2LaunchTemplateID: str + enableMapAutoTagging: bool + launchDisposition: LaunchDispositionType + licensing: LicensingTypeDef + mapAutoTaggingMpeID: str + name: str + postLaunchActions: PostLaunchActionsTypeDef + sourceServerID: str + targetInstanceTypeRightSizingMethod: TargetInstanceTypeRightSizingMethodType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLaunchConfigurationRequestRequestTypeDef(BaseModel): + sourceServerID: str + accountID: Optional[str] = None + bootMode: Optional[BootModeType] = None + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + enableMapAutoTagging: Optional[bool] = None + launchDisposition: Optional[LaunchDispositionType] = None + licensing: Optional[LicensingTypeDef] = None + mapAutoTaggingMpeID: Optional[str] = None + name: Optional[str] = None + postLaunchActions: Optional[PostLaunchActionsTypeDef] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class UpdateLaunchConfigurationTemplateRequestRequestTypeDef(BaseModel): + launchConfigurationTemplateID: str + associatePublicIpAddress: Optional[bool] = None + bootMode: Optional[BootModeType] = None + copyPrivateIp: Optional[bool] = None + copyTags: Optional[bool] = None + enableMapAutoTagging: Optional[bool] = None + largeVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + launchDisposition: Optional[LaunchDispositionType] = None + licensing: Optional[LicensingTypeDef] = None + mapAutoTaggingMpeID: Optional[str] = None + postLaunchActions: Optional[PostLaunchActionsTypeDef] = None + smallVolumeConf: Optional[LaunchTemplateDiskConfTypeDef] = None + smallVolumeMaxSize: Optional[int] = None + targetInstanceTypeRightSizingMethod: Optional[TargetInstanceTypeRightSizingMethodType] = None + +class DescribeSourceServersResponseTypeDef(BaseModel): + items: List[SourceServerTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ParticipatingServerPaginatorTypeDef(BaseModel): + sourceServerID: str + launchStatus: Optional[LaunchStatusType] = None + launchedEc2InstanceID: Optional[str] = None + postLaunchActionsStatus: Optional[PostLaunchActionsStatusPaginatorTypeDef] = None + +class DescribeLaunchConfigurationTemplatesResponsePaginatorTypeDef(BaseModel): + items: List[LaunchConfigurationTemplatePaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ParticipatingServerTypeDef(BaseModel): + sourceServerID: str + launchStatus: Optional[LaunchStatusType] = None + launchedEc2InstanceID: Optional[str] = None + postLaunchActionsStatus: Optional[PostLaunchActionsStatusTypeDef] = None + +class DescribeLaunchConfigurationTemplatesResponseTypeDef(BaseModel): + items: List[LaunchConfigurationTemplateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class JobPaginatorTypeDef(BaseModel): + jobID: str + arn: Optional[str] = None + creationDateTime: Optional[str] = None + endDateTime: Optional[str] = None + initiatedBy: Optional[InitiatedByType] = None + participatingServers: Optional[List[ParticipatingServerPaginatorTypeDef]] = None + status: Optional[JobStatusType] = None + tags: Optional[Dict[str, str]] = None + type: Optional[JobTypeType] = None + +class JobTypeDef(BaseModel): + jobID: str + arn: Optional[str] = None + creationDateTime: Optional[str] = None + endDateTime: Optional[str] = None + initiatedBy: Optional[InitiatedByType] = None + participatingServers: Optional[List[ParticipatingServerTypeDef]] = None + status: Optional[JobStatusType] = None + tags: Optional[Dict[str, str]] = None + type: Optional[JobTypeType] = None + +class DescribeJobsResponsePaginatorTypeDef(BaseModel): + items: List[JobPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobsResponseTypeDef(BaseModel): + items: List[JobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartCutoverResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartTestResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateTargetInstancesResponseTypeDef(BaseModel): + job: JobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mgn_constants.py b/aws_resource_validator/pydantic_models/mgn_constants.py new file mode 100644 index 00000000..321a2dfb --- /dev/null +++ b/aws_resource_validator/pydantic_models/mgn_constants.py @@ -0,0 +1,559 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionCategoryType = Literal["BACKUP", + "CONFIGURATION", + "DISASTER_RECOVERY", + "LICENSE_AND_SUBSCRIPTION", + "NETWORKING", + "OBSERVABILITY", + "OPERATING_SYSTEM", + "OTHER", + "REFACTORING", + "SECURITY", + "VALIDATION",] +ApplicationHealthStatusType = Literal["ERROR", "HEALTHY", "LAGGING"] +ApplicationProgressStatusType = Literal["COMPLETED", "IN_PROGRESS", "NOT_STARTED"] +BootModeType = Literal["LEGACY_BIOS", "UEFI", "USE_SOURCE"] +ChangeServerLifeCycleStateSourceServerLifecycleStateType = Literal["CUTOVER", "READY_FOR_CUTOVER", "READY_FOR_TEST"] +DataReplicationErrorStringType = Literal["AGENT_NOT_SEEN", + "FAILED_TO_ATTACH_STAGING_DISKS", + "FAILED_TO_AUTHENTICATE_WITH_SERVICE", + "FAILED_TO_BOOT_REPLICATION_SERVER", + "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", + "FAILED_TO_CREATE_SECURITY_GROUP", + "FAILED_TO_CREATE_STAGING_DISKS", + "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", + "FAILED_TO_LAUNCH_REPLICATION_SERVER", + "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", + "FAILED_TO_START_DATA_TRANSFER", + "LAST_SNAPSHOT_JOB_FAILED", + "NOT_CONVERGING", + "SNAPSHOTS_FAILURE", + "UNSTABLE_NETWORK", + "UNSUPPORTED_VM_CONFIGURATION",] +DataReplicationInitiationStepNameType = Literal["ATTACH_STAGING_DISKS", + "AUTHENTICATE_WITH_SERVICE", + "BOOT_REPLICATION_SERVER", + "CONNECT_AGENT_TO_REPLICATION_SERVER", + "CREATE_SECURITY_GROUP", + "CREATE_STAGING_DISKS", + "DOWNLOAD_REPLICATION_SOFTWARE", + "LAUNCH_REPLICATION_SERVER", + "PAIR_REPLICATION_SERVER_WITH_AGENT", + "START_DATA_TRANSFER", + "WAIT",] +DataReplicationInitiationStepStatusType = Literal["FAILED", "IN_PROGRESS", "NOT_STARTED", "SKIPPED", "SUCCEEDED"] +DataReplicationStateType = Literal["BACKLOG", + "CONTINUOUS", + "CREATING_SNAPSHOT", + "DISCONNECTED", + "INITIAL_SYNC", + "INITIATING", + "PAUSED", + "PENDING_SNAPSHOT_SHIPPING", + "RESCAN", + "SHIPPING_SNAPSHOT", + "STALLED", + "STOPPED",] +DescribeJobLogItemsPaginatorName = Literal["describe_job_log_items"] +DescribeJobsPaginatorName = Literal["describe_jobs"] +DescribeLaunchConfigurationTemplatesPaginatorName = Literal["describe_launch_configuration_templates"] +DescribeReplicationConfigurationTemplatesPaginatorName = Literal["describe_replication_configuration_templates"] +DescribeSourceServersPaginatorName = Literal["describe_source_servers"] +DescribeVcenterClientsPaginatorName = Literal["describe_vcenter_clients"] +ExportStatusType = Literal["FAILED", "PENDING", "STARTED", "SUCCEEDED"] +FirstBootType = Literal["STOPPED", "SUCCEEDED", "UNKNOWN", "WAITING"] +ImportErrorTypeType = Literal["PROCESSING_ERROR", "VALIDATION_ERROR"] +ImportStatusType = Literal["FAILED", "PENDING", "STARTED", "SUCCEEDED"] +InitiatedByType = Literal["DIAGNOSTIC", "START_CUTOVER", "START_TEST", "TERMINATE"] +JobLogEventType = Literal["CLEANUP_END", + "CLEANUP_FAIL", + "CLEANUP_START", + "CONVERSION_END", + "CONVERSION_FAIL", + "CONVERSION_START", + "JOB_CANCEL", + "JOB_END", + "JOB_START", + "LAUNCH_FAILED", + "LAUNCH_START", + "SERVER_SKIPPED", + "SNAPSHOT_END", + "SNAPSHOT_FAIL", + "SNAPSHOT_START", + "USING_PREVIOUS_SNAPSHOT",] +JobStatusType = Literal["COMPLETED", "PENDING", "STARTED"] +JobTypeType = Literal["LAUNCH", "TERMINATE"] +LaunchDispositionType = Literal["STARTED", "STOPPED"] +LaunchStatusType = Literal["FAILED", "IN_PROGRESS", "LAUNCHED", "PENDING", "TERMINATED"] +LifeCycleStateType = Literal["CUTOVER", + "CUTTING_OVER", + "DISCONNECTED", + "DISCOVERED", + "NOT_READY", + "PENDING_INSTALLATION", + "READY_FOR_CUTOVER", + "READY_FOR_TEST", + "STOPPED", + "TESTING",] +ListApplicationsPaginatorName = Literal["list_applications"] +ListConnectorsPaginatorName = Literal["list_connectors"] +ListExportErrorsPaginatorName = Literal["list_export_errors"] +ListExportsPaginatorName = Literal["list_exports"] +ListImportErrorsPaginatorName = Literal["list_import_errors"] +ListImportsPaginatorName = Literal["list_imports"] +ListManagedAccountsPaginatorName = Literal["list_managed_accounts"] +ListSourceServerActionsPaginatorName = Literal["list_source_server_actions"] +ListTemplateActionsPaginatorName = Literal["list_template_actions"] +ListWavesPaginatorName = Literal["list_waves"] +PostLaunchActionExecutionStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCESS"] +PostLaunchActionsDeploymentTypeType = Literal["CUTOVER_ONLY", "TEST_AND_CUTOVER", "TEST_ONLY"] +ReplicationConfigurationDataPlaneRoutingType = Literal["PRIVATE_IP", "PUBLIC_IP"] +ReplicationConfigurationDefaultLargeStagingDiskTypeType = Literal["GP2", "GP3", "ST1"] +ReplicationConfigurationEbsEncryptionType = Literal["CUSTOM", "DEFAULT"] +ReplicationConfigurationReplicatedDiskStagingDiskTypeType = Literal["AUTO", "GP2", "GP3", "IO1", "IO2", "SC1", "ST1", "STANDARD"] +ReplicationTypeType = Literal["AGENT_BASED", "SNAPSHOT_SHIPPING"] +SsmDocumentTypeType = Literal["AUTOMATION", "COMMAND"] +SsmParameterStoreParameterTypeType = Literal["STRING"] +TargetInstanceTypeRightSizingMethodType = Literal["BASIC", "NONE"] +VolumeTypeType = Literal["gp2", "gp3", "io1", "io2", "sc1", "st1", "standard"] +WaveHealthStatusType = Literal["ERROR", "HEALTHY", "LAGGING"] +WaveProgressStatusType = Literal["COMPLETED", "IN_PROGRESS", "NOT_STARTED"] +mgnServiceName = Literal["mgn"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_job_log_items", + "describe_jobs", + "describe_launch_configuration_templates", + "describe_replication_configuration_templates", + "describe_source_servers", + "describe_vcenter_clients", + "list_applications", + "list_connectors", + "list_export_errors", + "list_exports", + "list_import_errors", + "list_imports", + "list_managed_accounts", + "list_source_server_actions", + "list_template_actions", + "list_waves",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_classes.py b/aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_classes.py new file mode 100644 index 00000000..c76f86f6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_classes.py @@ -0,0 +1,524 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.migration_hub_refactor_spaces_constants import * + +class ApiGatewayProxyConfigTypeDef(BaseModel): + ApiGatewayId: Optional[str] = None + EndpointType: Optional[ApiGatewayEndpointTypeType] = None + NlbArn: Optional[str] = None + NlbName: Optional[str] = None + ProxyUrl: Optional[str] = None + StageName: Optional[str] = None + VpcLinkId: Optional[str] = None + +class ApiGatewayProxyInputTypeDef(BaseModel): + EndpointType: Optional[ApiGatewayEndpointTypeType] = None + StageName: Optional[str] = None + +class ApiGatewayProxySummaryTypeDef(BaseModel): + ApiGatewayId: Optional[str] = None + EndpointType: Optional[ApiGatewayEndpointTypeType] = None + NlbArn: Optional[str] = None + NlbName: Optional[str] = None + ProxyUrl: Optional[str] = None + StageName: Optional[str] = None + VpcLinkId: Optional[str] = None + +class ErrorResponseTypeDef(BaseModel): + AccountId: Optional[str] = None + AdditionalDetails: Optional[Dict[str, str]] = None + Code: Optional[ErrorCodeType] = None + Message: Optional[str] = None + ResourceIdentifier: Optional[str] = None + ResourceType: Optional[ErrorResourceTypeType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateEnvironmentRequestRequestTypeDef(BaseModel): + Name: str + NetworkFabricType: NetworkFabricTypeType + ClientToken: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class DefaultRouteInputTypeDef(BaseModel): + ActivationState: Optional[RouteActivationStateType] = None + +class UriPathRouteInputTypeDef(BaseModel): + ActivationState: RouteActivationStateType + SourcePath: str + AppendSourcePath: Optional[bool] = None + IncludeChildPaths: Optional[bool] = None + Methods: Optional[Sequence[HttpMethodType]] = None + +class LambdaEndpointInputTypeDef(BaseModel): + Arn: str + +class UrlEndpointInputTypeDef(BaseModel): + Url: str + HealthUrl: Optional[str] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + +class DeleteEnvironmentRequestRequestTypeDef(BaseModel): + EnvironmentIdentifier: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteRouteRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + RouteIdentifier: str + +class DeleteServiceRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + ServiceIdentifier: str + +class EnvironmentVpcTypeDef(BaseModel): + AccountId: Optional[str] = None + CidrBlocks: Optional[List[str]] = None + CreatedTime: Optional[datetime] = None + EnvironmentId: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + VpcId: Optional[str] = None + VpcName: Optional[str] = None + +class GetApplicationRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + +class GetEnvironmentRequestRequestTypeDef(BaseModel): + EnvironmentIdentifier: str + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetRouteRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + RouteIdentifier: str + +class GetServiceRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + ServiceIdentifier: str + +class LambdaEndpointConfigTypeDef(BaseModel): + Arn: Optional[str] = None + +class UrlEndpointConfigTypeDef(BaseModel): + HealthUrl: Optional[str] = None + Url: Optional[str] = None + +class LambdaEndpointSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + EnvironmentIdentifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEnvironmentVpcsRequestRequestTypeDef(BaseModel): + EnvironmentIdentifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListEnvironmentsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRoutesRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServicesRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + Policy: str + ResourceArn: str + +class UrlEndpointSummaryTypeDef(BaseModel): + HealthUrl: Optional[str] = None + Url: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateRouteRequestRequestTypeDef(BaseModel): + ActivationState: RouteActivationStateType + ApplicationIdentifier: str + EnvironmentIdentifier: str + RouteIdentifier: str + +class CreateApplicationRequestRequestTypeDef(BaseModel): + EnvironmentIdentifier: str + Name: str + ProxyType: Literal["API_GATEWAY"] + VpcId: str + ApiGatewayProxy: Optional[ApiGatewayProxyInputTypeDef] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ApplicationSummaryTypeDef(BaseModel): + ApiGatewayProxy: Optional[ApiGatewayProxySummaryTypeDef] = None + ApplicationId: Optional[str] = None + Arn: Optional[str] = None + CreatedByAccountId: Optional[str] = None + CreatedTime: Optional[datetime] = None + EnvironmentId: Optional[str] = None + Error: Optional[ErrorResponseTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + Name: Optional[str] = None + OwnerAccountId: Optional[str] = None + ProxyType: Optional[Literal["API_GATEWAY"]] = None + State: Optional[ApplicationStateType] = None + Tags: Optional[Dict[str, str]] = None + VpcId: Optional[str] = None + +class EnvironmentSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + Description: Optional[str] = None + EnvironmentId: Optional[str] = None + Error: Optional[ErrorResponseTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + Name: Optional[str] = None + NetworkFabricType: Optional[NetworkFabricTypeType] = None + OwnerAccountId: Optional[str] = None + State: Optional[EnvironmentStateType] = None + Tags: Optional[Dict[str, str]] = None + TransitGatewayId: Optional[str] = None + +class RouteSummaryTypeDef(BaseModel): + AppendSourcePath: Optional[bool] = None + ApplicationId: Optional[str] = None + Arn: Optional[str] = None + CreatedByAccountId: Optional[str] = None + CreatedTime: Optional[datetime] = None + EnvironmentId: Optional[str] = None + Error: Optional[ErrorResponseTypeDef] = None + IncludeChildPaths: Optional[bool] = None + LastUpdatedTime: Optional[datetime] = None + Methods: Optional[List[HttpMethodType]] = None + OwnerAccountId: Optional[str] = None + PathResourceToId: Optional[Dict[str, str]] = None + RouteId: Optional[str] = None + RouteType: Optional[RouteTypeType] = None + ServiceId: Optional[str] = None + SourcePath: Optional[str] = None + State: Optional[RouteStateType] = None + Tags: Optional[Dict[str, str]] = None + +class CreateApplicationResponseTypeDef(BaseModel): + ApiGatewayProxy: ApiGatewayProxyInputTypeDef + ApplicationId: str + Arn: str + CreatedByAccountId: str + CreatedTime: datetime + EnvironmentId: str + LastUpdatedTime: datetime + Name: str + OwnerAccountId: str + ProxyType: Literal["API_GATEWAY"] + State: ApplicationStateType + Tags: Dict[str, str] + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentResponseTypeDef(BaseModel): + Arn: str + CreatedTime: datetime + Description: str + EnvironmentId: str + LastUpdatedTime: datetime + Name: str + NetworkFabricType: NetworkFabricTypeType + OwnerAccountId: str + State: EnvironmentStateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + EnvironmentId: str + LastUpdatedTime: datetime + Name: str + State: ApplicationStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEnvironmentResponseTypeDef(BaseModel): + Arn: str + EnvironmentId: str + LastUpdatedTime: datetime + Name: str + State: EnvironmentStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRouteResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + LastUpdatedTime: datetime + RouteId: str + ServiceId: str + State: RouteStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + EnvironmentId: str + LastUpdatedTime: datetime + Name: str + ServiceId: str + State: ServiceStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationResponseTypeDef(BaseModel): + ApiGatewayProxy: ApiGatewayProxyConfigTypeDef + ApplicationId: str + Arn: str + CreatedByAccountId: str + CreatedTime: datetime + EnvironmentId: str + Error: ErrorResponseTypeDef + LastUpdatedTime: datetime + Name: str + OwnerAccountId: str + ProxyType: Literal["API_GATEWAY"] + State: ApplicationStateType + Tags: Dict[str, str] + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentResponseTypeDef(BaseModel): + Arn: str + CreatedTime: datetime + Description: str + EnvironmentId: str + Error: ErrorResponseTypeDef + LastUpdatedTime: datetime + Name: str + NetworkFabricType: NetworkFabricTypeType + OwnerAccountId: str + State: EnvironmentStateType + Tags: Dict[str, str] + TransitGatewayId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRouteResponseTypeDef(BaseModel): + AppendSourcePath: bool + ApplicationId: str + Arn: str + CreatedByAccountId: str + CreatedTime: datetime + EnvironmentId: str + Error: ErrorResponseTypeDef + IncludeChildPaths: bool + LastUpdatedTime: datetime + Methods: List[HttpMethodType] + OwnerAccountId: str + PathResourceToId: Dict[str, str] + RouteId: str + RouteType: RouteTypeType + ServiceId: str + SourcePath: str + State: RouteStateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRouteResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + LastUpdatedTime: datetime + RouteId: str + ServiceId: str + State: RouteStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRouteRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + RouteType: RouteTypeType + ServiceIdentifier: str + ClientToken: Optional[str] = None + DefaultRoute: Optional[DefaultRouteInputTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + UriPathRoute: Optional[UriPathRouteInputTypeDef] = None + +class CreateRouteResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + CreatedByAccountId: str + CreatedTime: datetime + LastUpdatedTime: datetime + OwnerAccountId: str + RouteId: str + RouteType: RouteTypeType + ServiceId: str + State: RouteStateType + Tags: Dict[str, str] + UriPathRoute: UriPathRouteInputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceRequestRequestTypeDef(BaseModel): + ApplicationIdentifier: str + EndpointType: ServiceEndpointTypeType + EnvironmentIdentifier: str + Name: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + LambdaEndpoint: Optional[LambdaEndpointInputTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + UrlEndpoint: Optional[UrlEndpointInputTypeDef] = None + VpcId: Optional[str] = None + +class CreateServiceResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + CreatedByAccountId: str + CreatedTime: datetime + Description: str + EndpointType: ServiceEndpointTypeType + EnvironmentId: str + LambdaEndpoint: LambdaEndpointInputTypeDef + LastUpdatedTime: datetime + Name: str + OwnerAccountId: str + ServiceId: str + State: ServiceStateType + Tags: Dict[str, str] + UrlEndpoint: UrlEndpointInputTypeDef + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentVpcsResponseTypeDef(BaseModel): + EnvironmentVpcList: List[EnvironmentVpcTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + CreatedByAccountId: str + CreatedTime: datetime + Description: str + EndpointType: ServiceEndpointTypeType + EnvironmentId: str + Error: ErrorResponseTypeDef + LambdaEndpoint: LambdaEndpointConfigTypeDef + LastUpdatedTime: datetime + Name: str + OwnerAccountId: str + ServiceId: str + State: ServiceStateType + Tags: Dict[str, str] + UrlEndpoint: UrlEndpointConfigTypeDef + VpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + EnvironmentIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentVpcsRequestListEnvironmentVpcsPaginateTypeDef(BaseModel): + EnvironmentIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsRequestListEnvironmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoutesRequestListRoutesPaginateTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesRequestListServicesPaginateTypeDef(BaseModel): + ApplicationIdentifier: str + EnvironmentIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ServiceSummaryTypeDef(BaseModel): + ApplicationId: Optional[str] = None + Arn: Optional[str] = None + CreatedByAccountId: Optional[str] = None + CreatedTime: Optional[datetime] = None + Description: Optional[str] = None + EndpointType: Optional[ServiceEndpointTypeType] = None + EnvironmentId: Optional[str] = None + Error: Optional[ErrorResponseTypeDef] = None + LambdaEndpoint: Optional[LambdaEndpointSummaryTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + Name: Optional[str] = None + OwnerAccountId: Optional[str] = None + ServiceId: Optional[str] = None + State: Optional[ServiceStateType] = None + Tags: Optional[Dict[str, str]] = None + UrlEndpoint: Optional[UrlEndpointSummaryTypeDef] = None + VpcId: Optional[str] = None + +class ListApplicationsResponseTypeDef(BaseModel): + ApplicationSummaryList: List[ApplicationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsResponseTypeDef(BaseModel): + EnvironmentSummaryList: List[EnvironmentSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoutesResponseTypeDef(BaseModel): + NextToken: str + RouteSummaryList: List[RouteSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesResponseTypeDef(BaseModel): + NextToken: str + ServiceSummaryList: List[ServiceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_constants.py b/aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_constants.py new file mode 100644 index 00000000..855580dd --- /dev/null +++ b/aws_resource_validator/pydantic_models/migration_hub_refactor_spaces_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApiGatewayEndpointTypeType = Literal["PRIVATE", "REGIONAL"] +ApplicationStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +EnvironmentStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +ErrorCodeType = Literal["INVALID_RESOURCE_STATE", + "NOT_AUTHORIZED", + "REQUEST_LIMIT_EXCEEDED", + "RESOURCE_CREATION_FAILURE", + "RESOURCE_DELETION_FAILURE", + "RESOURCE_IN_USE", + "RESOURCE_LIMIT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "RESOURCE_RETRIEVAL_FAILURE", + "RESOURCE_UPDATE_FAILURE", + "SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE", + "STATE_TRANSITION_FAILURE",] +ErrorResourceTypeType = Literal["API_GATEWAY", + "APPLICATION", + "ENVIRONMENT", + "IAM_ROLE", + "LAMBDA", + "LOAD_BALANCER_LISTENER", + "NLB", + "RESOURCE_SHARE", + "ROUTE", + "ROUTE_TABLE", + "SECURITY_GROUP", + "SERVICE", + "SUBNET", + "TARGET_GROUP", + "TRANSIT_GATEWAY", + "TRANSIT_GATEWAY_ATTACHMENT", + "VPC", + "VPC_ENDPOINT_SERVICE_CONFIGURATION", + "VPC_LINK",] +HttpMethodType = Literal["DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListEnvironmentVpcsPaginatorName = Literal["list_environment_vpcs"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +ListRoutesPaginatorName = Literal["list_routes"] +ListServicesPaginatorName = Literal["list_services"] +NetworkFabricTypeType = Literal["NONE", "TRANSIT_GATEWAY"] +ProxyTypeType = Literal["API_GATEWAY"] +RouteActivationStateType = Literal["ACTIVE", "INACTIVE"] +RouteStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "INACTIVE", "UPDATING"] +RouteTypeType = Literal["DEFAULT", "URI_PATH"] +ServiceEndpointTypeType = Literal["LAMBDA", "URL"] +ServiceStateType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +MigrationHubRefactorSpacesServiceName = Literal["migration-hub-refactor-spaces"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applications", + "list_environment_vpcs", + "list_environments", + "list_routes", + "list_services",] diff --git a/aws_resource_validator/pydantic_models/migrationhub_config_classes.py b/aws_resource_validator/pydantic_models/migrationhub_config_classes.py new file mode 100644 index 00000000..cab6a7b3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/migrationhub_config_classes.py @@ -0,0 +1,58 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.migrationhub_config_constants import * + +class TargetTypeDef(BaseModel): + Type: Literal["ACCOUNT"] + Id: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteHomeRegionControlRequestRequestTypeDef(BaseModel): + ControlId: str + +class CreateHomeRegionControlRequestRequestTypeDef(BaseModel): + HomeRegion: str + Target: TargetTypeDef + DryRun: Optional[bool] = None + +class DescribeHomeRegionControlsRequestRequestTypeDef(BaseModel): + ControlId: Optional[str] = None + HomeRegion: Optional[str] = None + Target: Optional[TargetTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class HomeRegionControlTypeDef(BaseModel): + ControlId: Optional[str] = None + HomeRegion: Optional[str] = None + Target: Optional[TargetTypeDef] = None + RequestedTime: Optional[datetime] = None + +class GetHomeRegionResultTypeDef(BaseModel): + HomeRegion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHomeRegionControlResultTypeDef(BaseModel): + HomeRegionControl: HomeRegionControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHomeRegionControlsResultTypeDef(BaseModel): + HomeRegionControls: List[HomeRegionControlTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/migrationhub_config_constants.py b/aws_resource_validator/pydantic_models/migrationhub_config_constants.py new file mode 100644 index 00000000..4e5f5069 --- /dev/null +++ b/aws_resource_validator/pydantic_models/migrationhub_config_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +TargetTypeType = Literal["ACCOUNT"] +MigrationHubConfigServiceName = Literal["migrationhub-config"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/migrationhuborchestrator_classes.py b/aws_resource_validator/pydantic_models/migrationhuborchestrator_classes.py new file mode 100644 index 00000000..1a2083bf --- /dev/null +++ b/aws_resource_validator/pydantic_models/migrationhuborchestrator_classes.py @@ -0,0 +1,598 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.migrationhuborchestrator_constants import * + +class StepInputTypeDef(BaseModel): + integerValue: Optional[int] = None + stringValue: Optional[str] = None + listOfStringsValue: Optional[Sequence[str]] = None + mapOfStringValue: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TemplateSourceTypeDef(BaseModel): + workflowId: Optional[str] = None + +class CreateWorkflowStepGroupRequestRequestTypeDef(BaseModel): + workflowId: str + name: str + description: Optional[str] = None + next: Optional[Sequence[str]] = None + previous: Optional[Sequence[str]] = None + +class ToolTypeDef(BaseModel): + name: Optional[str] = None + url: Optional[str] = None + +class DeleteMigrationWorkflowRequestRequestTypeDef(BaseModel): + id: str + +class DeleteTemplateRequestRequestTypeDef(BaseModel): + id: str + +class DeleteWorkflowStepGroupRequestRequestTypeDef(BaseModel): + workflowId: str + id: str + +class DeleteWorkflowStepRequestRequestTypeDef(BaseModel): + id: str + stepGroupId: str + workflowId: str + +class GetMigrationWorkflowRequestRequestTypeDef(BaseModel): + id: str + +class GetMigrationWorkflowTemplateRequestRequestTypeDef(BaseModel): + id: str + +class TemplateInputTypeDef(BaseModel): + inputName: Optional[str] = None + dataType: Optional[DataTypeType] = None + required: Optional[bool] = None + +class GetTemplateStepGroupRequestRequestTypeDef(BaseModel): + templateId: str + id: str + +class GetTemplateStepRequestRequestTypeDef(BaseModel): + id: str + templateId: str + stepGroupId: str + +class StepOutputTypeDef(BaseModel): + name: Optional[str] = None + dataType: Optional[DataTypeType] = None + required: Optional[bool] = None + +class GetWorkflowStepGroupRequestRequestTypeDef(BaseModel): + id: str + workflowId: str + +class GetWorkflowStepRequestRequestTypeDef(BaseModel): + workflowId: str + stepGroupId: str + id: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListMigrationWorkflowTemplatesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + name: Optional[str] = None + +class TemplateSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + arn: Optional[str] = None + description: Optional[str] = None + +class ListMigrationWorkflowsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + templateId: Optional[str] = None + adsApplicationConfigurationName: Optional[str] = None + status: Optional[MigrationWorkflowStatusEnumType] = None + name: Optional[str] = None + +class MigrationWorkflowSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + templateId: Optional[str] = None + adsApplicationConfigurationName: Optional[str] = None + status: Optional[MigrationWorkflowStatusEnumType] = None + creationTime: Optional[datetime] = None + endTime: Optional[datetime] = None + statusMessage: Optional[str] = None + completedSteps: Optional[int] = None + totalSteps: Optional[int] = None + +class ListPluginsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PluginSummaryTypeDef(BaseModel): + pluginId: Optional[str] = None + hostname: Optional[str] = None + status: Optional[PluginHealthType] = None + ipAddress: Optional[str] = None + version: Optional[str] = None + registeredTime: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTemplateStepGroupsRequestRequestTypeDef(BaseModel): + templateId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TemplateStepGroupSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + previous: Optional[List[str]] = None + next: Optional[List[str]] = None + +class ListTemplateStepsRequestRequestTypeDef(BaseModel): + templateId: str + stepGroupId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TemplateStepSummaryTypeDef(BaseModel): + id: Optional[str] = None + stepGroupId: Optional[str] = None + templateId: Optional[str] = None + name: Optional[str] = None + stepActionType: Optional[StepActionTypeType] = None + targetType: Optional[TargetTypeType] = None + owner: Optional[OwnerType] = None + previous: Optional[List[str]] = None + next: Optional[List[str]] = None + +class ListWorkflowStepGroupsRequestRequestTypeDef(BaseModel): + workflowId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class WorkflowStepGroupSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + owner: Optional[OwnerType] = None + status: Optional[StepGroupStatusType] = None + previous: Optional[List[str]] = None + next: Optional[List[str]] = None + +class ListWorkflowStepsRequestRequestTypeDef(BaseModel): + workflowId: str + stepGroupId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class WorkflowStepSummaryTypeDef(BaseModel): + stepId: Optional[str] = None + name: Optional[str] = None + stepActionType: Optional[StepActionTypeType] = None + owner: Optional[OwnerType] = None + previous: Optional[List[str]] = None + next: Optional[List[str]] = None + status: Optional[StepStatusType] = None + statusMessage: Optional[str] = None + noOfSrvCompleted: Optional[int] = None + noOfSrvFailed: Optional[int] = None + totalNoOfSrv: Optional[int] = None + description: Optional[str] = None + scriptLocation: Optional[str] = None + +class PlatformCommandTypeDef(BaseModel): + linux: Optional[str] = None + windows: Optional[str] = None + +class PlatformScriptKeyTypeDef(BaseModel): + linux: Optional[str] = None + windows: Optional[str] = None + +class RetryWorkflowStepRequestRequestTypeDef(BaseModel): + workflowId: str + stepGroupId: str + id: str + +class StartMigrationWorkflowRequestRequestTypeDef(BaseModel): + id: str + +class StopMigrationWorkflowRequestRequestTypeDef(BaseModel): + id: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateTemplateRequestRequestTypeDef(BaseModel): + id: str + templateName: Optional[str] = None + templateDescription: Optional[str] = None + clientToken: Optional[str] = None + +class UpdateWorkflowStepGroupRequestRequestTypeDef(BaseModel): + workflowId: str + id: str + name: Optional[str] = None + description: Optional[str] = None + next: Optional[Sequence[str]] = None + previous: Optional[Sequence[str]] = None + +class WorkflowStepOutputUnionTypeDef(BaseModel): + integerValue: Optional[int] = None + stringValue: Optional[str] = None + listOfStringValue: Optional[Sequence[str]] = None + +class CreateMigrationWorkflowRequestRequestTypeDef(BaseModel): + name: str + templateId: str + inputParameters: Mapping[str, StepInputTypeDef] + description: Optional[str] = None + applicationConfigurationId: Optional[str] = None + stepTargets: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateMigrationWorkflowRequestRequestTypeDef(BaseModel): + id: str + name: Optional[str] = None + description: Optional[str] = None + inputParameters: Optional[Mapping[str, StepInputTypeDef]] = None + stepTargets: Optional[Sequence[str]] = None + +class CreateMigrationWorkflowResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + templateId: str + adsApplicationConfigurationId: str + workflowInputs: Dict[str, StepInputTypeDef] + stepTargets: List[str] + status: MigrationWorkflowStatusEnumType + creationTime: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateResponseTypeDef(BaseModel): + templateId: str + templateArn: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowStepResponseTypeDef(BaseModel): + id: str + stepGroupId: str + workflowId: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMigrationWorkflowResponseTypeDef(BaseModel): + id: str + arn: str + status: MigrationWorkflowStatusEnumType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RetryWorkflowStepResponseTypeDef(BaseModel): + stepGroupId: str + workflowId: str + id: str + status: StepStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartMigrationWorkflowResponseTypeDef(BaseModel): + id: str + arn: str + status: MigrationWorkflowStatusEnumType + statusMessage: str + lastStartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopMigrationWorkflowResponseTypeDef(BaseModel): + id: str + arn: str + status: MigrationWorkflowStatusEnumType + statusMessage: str + lastStopTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMigrationWorkflowResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + templateId: str + adsApplicationConfigurationId: str + workflowInputs: Dict[str, StepInputTypeDef] + stepTargets: List[str] + status: MigrationWorkflowStatusEnumType + creationTime: datetime + lastModifiedTime: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTemplateResponseTypeDef(BaseModel): + templateId: str + templateArn: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkflowStepResponseTypeDef(BaseModel): + id: str + stepGroupId: str + workflowId: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateRequestRequestTypeDef(BaseModel): + templateName: str + templateSource: TemplateSourceTypeDef + templateDescription: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateWorkflowStepGroupResponseTypeDef(BaseModel): + workflowId: str + name: str + id: str + description: str + tools: List[ToolTypeDef] + next: List[str] + previous: List[str] + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetMigrationWorkflowResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + templateId: str + adsApplicationConfigurationId: str + adsApplicationName: str + status: MigrationWorkflowStatusEnumType + statusMessage: str + creationTime: datetime + lastStartTime: datetime + lastStopTime: datetime + lastModifiedTime: datetime + endTime: datetime + tools: List[ToolTypeDef] + totalSteps: int + completedSteps: int + workflowInputs: Dict[str, StepInputTypeDef] + tags: Dict[str, str] + workflowBucket: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateStepGroupResponseTypeDef(BaseModel): + templateId: str + id: str + name: str + description: str + status: StepGroupStatusType + creationTime: datetime + lastModifiedTime: datetime + tools: List[ToolTypeDef] + previous: List[str] + next: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkflowStepGroupResponseTypeDef(BaseModel): + id: str + workflowId: str + name: str + description: str + status: StepGroupStatusType + owner: OwnerType + creationTime: datetime + lastModifiedTime: datetime + endTime: datetime + tools: List[ToolTypeDef] + previous: List[str] + next: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkflowStepGroupResponseTypeDef(BaseModel): + workflowId: str + name: str + id: str + description: str + tools: List[ToolTypeDef] + next: List[str] + previous: List[str] + lastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetMigrationWorkflowTemplateResponseTypeDef(BaseModel): + id: str + templateArn: str + name: str + description: str + inputs: List[TemplateInputTypeDef] + tools: List[ToolTypeDef] + creationTime: datetime + owner: str + status: TemplateStatusType + statusMessage: str + templateClass: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMigrationWorkflowTemplatesRequestListTemplatesPaginateTypeDef(BaseModel): + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMigrationWorkflowsRequestListWorkflowsPaginateTypeDef(BaseModel): + templateId: Optional[str] = None + adsApplicationConfigurationName: Optional[str] = None + status: Optional[MigrationWorkflowStatusEnumType] = None + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPluginsRequestListPluginsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplateStepGroupsRequestListTemplateStepGroupsPaginateTypeDef(BaseModel): + templateId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplateStepsRequestListTemplateStepsPaginateTypeDef(BaseModel): + templateId: str + stepGroupId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowStepGroupsRequestListWorkflowStepGroupsPaginateTypeDef(BaseModel): + workflowId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowStepsRequestListWorkflowStepsPaginateTypeDef(BaseModel): + workflowId: str + stepGroupId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMigrationWorkflowTemplatesResponseTypeDef(BaseModel): + nextToken: str + templateSummary: List[TemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMigrationWorkflowsResponseTypeDef(BaseModel): + nextToken: str + migrationWorkflowSummary: List[MigrationWorkflowSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPluginsResponseTypeDef(BaseModel): + nextToken: str + plugins: List[PluginSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplateStepGroupsResponseTypeDef(BaseModel): + nextToken: str + templateStepGroupSummary: List[TemplateStepGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplateStepsResponseTypeDef(BaseModel): + nextToken: str + templateStepSummaryList: List[TemplateStepSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowStepGroupsResponseTypeDef(BaseModel): + nextToken: str + workflowStepGroupsSummary: List[WorkflowStepGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkflowStepsResponseTypeDef(BaseModel): + nextToken: str + workflowStepsSummary: List[WorkflowStepSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StepAutomationConfigurationTypeDef(BaseModel): + scriptLocationS3Bucket: Optional[str] = None + scriptLocationS3Key: Optional[PlatformScriptKeyTypeDef] = None + command: Optional[PlatformCommandTypeDef] = None + runEnvironment: Optional[RunEnvironmentType] = None + targetType: Optional[TargetTypeType] = None + +class WorkflowStepAutomationConfigurationTypeDef(BaseModel): + scriptLocationS3Bucket: Optional[str] = None + scriptLocationS3Key: Optional[PlatformScriptKeyTypeDef] = None + command: Optional[PlatformCommandTypeDef] = None + runEnvironment: Optional[RunEnvironmentType] = None + targetType: Optional[TargetTypeType] = None + +class WorkflowStepOutputTypeDef(BaseModel): + name: Optional[str] = None + dataType: Optional[DataTypeType] = None + required: Optional[bool] = None + value: Optional[WorkflowStepOutputUnionTypeDef] = None + +class GetTemplateStepResponseTypeDef(BaseModel): + id: str + stepGroupId: str + templateId: str + name: str + description: str + stepActionType: StepActionTypeType + creationTime: str + previous: List[str] + next: List[str] + outputs: List[StepOutputTypeDef] + stepAutomationConfiguration: StepAutomationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowStepRequestRequestTypeDef(BaseModel): + name: str + stepGroupId: str + workflowId: str + stepActionType: StepActionTypeType + description: Optional[str] = None + workflowStepAutomationConfiguration: Optional[ WorkflowStepAutomationConfigurationTypeDef ] = None + stepTarget: Optional[Sequence[str]] = None + outputs: Optional[Sequence[WorkflowStepOutputTypeDef]] = None + previous: Optional[Sequence[str]] = None + next: Optional[Sequence[str]] = None + +class GetWorkflowStepResponseTypeDef(BaseModel): + name: str + stepGroupId: str + workflowId: str + stepId: str + description: str + stepActionType: StepActionTypeType + owner: OwnerType + workflowStepAutomationConfiguration: WorkflowStepAutomationConfigurationTypeDef + stepTarget: List[str] + outputs: List[WorkflowStepOutputTypeDef] + previous: List[str] + next: List[str] + status: StepStatusType + statusMessage: str + scriptOutputLocation: str + creationTime: datetime + lastStartTime: datetime + endTime: datetime + noOfSrvCompleted: int + noOfSrvFailed: int + totalNoOfSrv: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkflowStepRequestRequestTypeDef(BaseModel): + id: str + stepGroupId: str + workflowId: str + name: Optional[str] = None + description: Optional[str] = None + stepActionType: Optional[StepActionTypeType] = None + workflowStepAutomationConfiguration: Optional[ WorkflowStepAutomationConfigurationTypeDef ] = None + stepTarget: Optional[Sequence[str]] = None + outputs: Optional[Sequence[WorkflowStepOutputTypeDef]] = None + previous: Optional[Sequence[str]] = None + next: Optional[Sequence[str]] = None + status: Optional[StepStatusType] = None + diff --git a/aws_resource_validator/pydantic_models/migrationhuborchestrator_constants.py b/aws_resource_validator/pydantic_models/migrationhuborchestrator_constants.py new file mode 100644 index 00000000..e22c424b --- /dev/null +++ b/aws_resource_validator/pydantic_models/migrationhuborchestrator_constants.py @@ -0,0 +1,451 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DataTypeType = Literal["INTEGER", "STRING", "STRINGLIST", "STRINGMAP"] +ListPluginsPaginatorName = Literal["list_plugins"] +ListTemplateStepGroupsPaginatorName = Literal["list_template_step_groups"] +ListTemplateStepsPaginatorName = Literal["list_template_steps"] +ListTemplatesPaginatorName = Literal["list_templates"] +ListWorkflowStepGroupsPaginatorName = Literal["list_workflow_step_groups"] +ListWorkflowStepsPaginatorName = Literal["list_workflow_steps"] +ListWorkflowsPaginatorName = Literal["list_workflows"] +MigrationWorkflowStatusEnumType = Literal["COMPLETED", + "CREATING", + "CREATION_FAILED", + "DELETED", + "DELETING", + "DELETION_FAILED", + "IN_PROGRESS", + "NOT_STARTED", + "PAUSED", + "PAUSING", + "PAUSING_FAILED", + "STARTING", + "USER_ATTENTION_REQUIRED", + "WORKFLOW_FAILED",] +OwnerType = Literal["AWS_MANAGED", "CUSTOM"] +PluginHealthType = Literal["HEALTHY", "UNHEALTHY"] +RunEnvironmentType = Literal["AWS", "ONPREMISE"] +StepActionTypeType = Literal["AUTOMATED", "MANUAL"] +StepGroupStatusType = Literal["AWAITING_DEPENDENCIES", + "COMPLETED", + "FAILED", + "IN_PROGRESS", + "PAUSED", + "PAUSING", + "READY", + "USER_ATTENTION_REQUIRED",] +StepStatusType = Literal["AWAITING_DEPENDENCIES", + "COMPLETED", + "FAILED", + "IN_PROGRESS", + "PAUSED", + "READY", + "SKIPPED", + "USER_ATTENTION_REQUIRED",] +TargetTypeType = Literal["ALL", "NONE", "SINGLE"] +TemplateStatusType = Literal["CREATED", "CREATING", "CREATION_FAILED", "PENDING_CREATION", "READY"] +MigrationHubOrchestratorServiceName = Literal["migrationhuborchestrator"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_plugins", + "list_template_step_groups", + "list_template_steps", + "list_templates", + "list_workflow_step_groups", + "list_workflow_steps", + "list_workflows",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/migrationhubstrategy_classes.py b/aws_resource_validator/pydantic_models/migrationhubstrategy_classes.py new file mode 100644 index 00000000..426c87b0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/migrationhubstrategy_classes.py @@ -0,0 +1,541 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.migrationhubstrategy_constants import * + +class AnalysisStatusUnionTypeDef(BaseModel): + runtimeAnalysisStatus: Optional[RuntimeAnalysisStatusType] = None + srcCodeOrDbAnalysisStatus: Optional[SrcCodeOrDbAnalysisStatusType] = None + +class AnalyzableServerSummaryTypeDef(BaseModel): + hostname: Optional[str] = None + ipAddress: Optional[str] = None + source: Optional[str] = None + vmId: Optional[str] = None + +class AnalyzerNameUnionTypeDef(BaseModel): + binaryAnalyzerName: Optional[BinaryAnalyzerNameType] = None + runTimeAnalyzerName: Optional[RunTimeAnalyzerNameType] = None + sourceCodeAnalyzerName: Optional[SourceCodeAnalyzerNameType] = None + +class S3ObjectTypeDef(BaseModel): + s3Bucket: Optional[str] = None + s3key: Optional[str] = None + +class AntipatternSeveritySummaryTypeDef(BaseModel): + count: Optional[int] = None + severity: Optional[SeverityType] = None + +class AppUnitErrorTypeDef(BaseModel): + appUnitErrorCategory: Optional[AppUnitErrorCategoryType] = None + +class DatabaseConfigDetailTypeDef(BaseModel): + secretName: Optional[str] = None + +class SourceCodeRepositoryTypeDef(BaseModel): + branch: Optional[str] = None + projectName: Optional[str] = None + repository: Optional[str] = None + versionControlType: Optional[str] = None + +class ApplicationComponentStatusSummaryTypeDef(BaseModel): + count: Optional[int] = None + srcCodeOrDbAnalysisStatus: Optional[SrcCodeOrDbAnalysisStatusType] = None + +class ApplicationComponentSummaryTypeDef(BaseModel): + appType: Optional[AppTypeType] = None + count: Optional[int] = None + +class ServerStatusSummaryTypeDef(BaseModel): + count: Optional[int] = None + runTimeAssessmentStatus: Optional[RunTimeAssessmentStatusType] = None + +class ServerSummaryTypeDef(BaseModel): + ServerOsType: Optional[ServerOsTypeType] = None + count: Optional[int] = None + +class StrategySummaryTypeDef(BaseModel): + count: Optional[int] = None + strategy: Optional[StrategyType] = None + +class AssessmentTargetTypeDef(BaseModel): + condition: ConditionType + name: str + values: List[str] + +class AssociatedApplicationTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + +class AwsManagedResourcesTypeDef(BaseModel): + targetDestination: List[AwsManagedTargetDestinationType] + +class BusinessGoalsTypeDef(BaseModel): + licenseCostReduction: Optional[int] = None + modernizeInfrastructureWithCloudNativeTechnologies: Optional[int] = None + reduceOperationalOverheadWithManagedServices: Optional[int] = None + speedOfMigration: Optional[int] = None + +class IPAddressBasedRemoteInfoTypeDef(BaseModel): + authType: Optional[AuthTypeType] = None + ipAddressConfigurationTimeStamp: Optional[str] = None + osType: Optional[OSTypeType] = None + +class PipelineInfoTypeDef(BaseModel): + pipelineConfigurationTimeStamp: Optional[str] = None + pipelineType: Optional[Literal["AZURE_DEVOPS"]] = None + +class RemoteSourceCodeAnalysisServerInfoTypeDef(BaseModel): + remoteSourceCodeAnalysisServerConfigurationTimestamp: Optional[str] = None + +class VcenterBasedRemoteInfoTypeDef(BaseModel): + osType: Optional[OSTypeType] = None + vcenterConfigurationTimeStamp: Optional[str] = None + +class VersionControlInfoTypeDef(BaseModel): + versionControlConfigurationTimeStamp: Optional[str] = None + versionControlType: Optional[VersionControlTypeType] = None + +class DataCollectionDetailsTypeDef(BaseModel): + completionTime: Optional[datetime] = None + failed: Optional[int] = None + inProgress: Optional[int] = None + servers: Optional[int] = None + startTime: Optional[datetime] = None + status: Optional[AssessmentStatusType] = None + statusMessage: Optional[str] = None + success: Optional[int] = None + +class HeterogeneousTypeDef(BaseModel): + targetDatabaseEngine: List[HeterogeneousTargetDatabaseEngineType] + +class HomogeneousTypeDef(BaseModel): + targetDatabaseEngine: Optional[List[Literal["None specified"]]] = None + +class NoDatabaseMigrationPreferenceTypeDef(BaseModel): + targetDatabaseEngine: List[TargetDatabaseEngineType] + +class GetApplicationComponentDetailsRequestRequestTypeDef(BaseModel): + applicationComponentId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetApplicationComponentStrategiesRequestRequestTypeDef(BaseModel): + applicationComponentId: str + +class GetAssessmentRequestRequestTypeDef(BaseModel): + id: str + +class GetImportFileTaskRequestRequestTypeDef(BaseModel): + id: str + +class GetRecommendationReportDetailsRequestRequestTypeDef(BaseModel): + id: str + +class RecommendationReportDetailsTypeDef(BaseModel): + completionTime: Optional[datetime] = None + s3Bucket: Optional[str] = None + s3Keys: Optional[List[str]] = None + startTime: Optional[datetime] = None + status: Optional[RecommendationReportStatusType] = None + statusMessage: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetServerDetailsRequestRequestTypeDef(BaseModel): + serverId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetServerStrategiesRequestRequestTypeDef(BaseModel): + serverId: str + +class GroupTypeDef(BaseModel): + name: Optional[GroupNameType] = None + value: Optional[str] = None + +class ImportFileTaskInformationTypeDef(BaseModel): + completionTime: Optional[datetime] = None + id: Optional[str] = None + importName: Optional[str] = None + inputS3Bucket: Optional[str] = None + inputS3Key: Optional[str] = None + numberOfRecordsFailed: Optional[int] = None + numberOfRecordsSuccess: Optional[int] = None + startTime: Optional[datetime] = None + status: Optional[ImportFileTaskStatusType] = None + statusReportS3Bucket: Optional[str] = None + statusReportS3Key: Optional[str] = None + +class ListAnalyzableServersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sort: Optional[SortOrderType] = None + +class ListCollectorsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImportFileTaskRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class NoManagementPreferenceTypeDef(BaseModel): + targetDestination: List[NoPreferenceTargetDestinationType] + +class SelfManageResourcesTypeDef(BaseModel): + targetDestination: List[SelfManageTargetDestinationType] + +class NetworkInfoTypeDef(BaseModel): + interfaceName: str + ipAddress: str + macAddress: str + netMask: str + +class OSInfoTypeDef(BaseModel): + type: Optional[OSTypeType] = None + version: Optional[str] = None + +class TransformationToolTypeDef(BaseModel): + description: Optional[str] = None + name: Optional[TransformationToolNameType] = None + tranformationToolInstallationLink: Optional[str] = None + +class ServerErrorTypeDef(BaseModel): + serverErrorCategory: Optional[ServerErrorCategoryType] = None + +class SourceCodeTypeDef(BaseModel): + location: Optional[str] = None + projectName: Optional[str] = None + sourceVersion: Optional[str] = None + versionControl: Optional[VersionControlType] = None + +class StopAssessmentRequestRequestTypeDef(BaseModel): + assessmentId: str + +class StrategyOptionTypeDef(BaseModel): + isPreferred: Optional[bool] = None + strategy: Optional[StrategyType] = None + targetDestination: Optional[TargetDestinationType] = None + toolName: Optional[TransformationToolNameType] = None + +class AntipatternReportResultTypeDef(BaseModel): + analyzerName: Optional[AnalyzerNameUnionTypeDef] = None + antiPatternReportS3Object: Optional[S3ObjectTypeDef] = None + antipatternReportStatus: Optional[AntipatternReportStatusType] = None + antipatternReportStatusMessage: Optional[str] = None + +class AssessmentSummaryTypeDef(BaseModel): + antipatternReportS3Object: Optional[S3ObjectTypeDef] = None + antipatternReportStatus: Optional[AntipatternReportStatusType] = None + antipatternReportStatusMessage: Optional[str] = None + lastAnalyzedTimestamp: Optional[datetime] = None + listAntipatternSeveritySummary: Optional[List[AntipatternSeveritySummaryTypeDef]] = None + listApplicationComponentStatusSummary: Optional[ List[ApplicationComponentStatusSummaryTypeDef] ] = None + listApplicationComponentStrategySummary: Optional[List[StrategySummaryTypeDef]] = None + listApplicationComponentSummary: Optional[List[ApplicationComponentSummaryTypeDef]] = None + listServerStatusSummary: Optional[List[ServerStatusSummaryTypeDef]] = None + listServerStrategySummary: Optional[List[StrategySummaryTypeDef]] = None + listServerSummary: Optional[List[ServerSummaryTypeDef]] = None + +class StartAssessmentRequestRequestTypeDef(BaseModel): + assessmentDataSourceType: Optional[AssessmentDataSourceTypeType] = None + assessmentTargets: Optional[Sequence[AssessmentTargetTypeDef]] = None + s3bucketForAnalysisData: Optional[str] = None + s3bucketForReportData: Optional[str] = None + +class PrioritizeBusinessGoalsTypeDef(BaseModel): + businessGoals: Optional[BusinessGoalsTypeDef] = None + +class ConfigurationSummaryTypeDef(BaseModel): + ipAddressBasedRemoteInfoList: Optional[List[IPAddressBasedRemoteInfoTypeDef]] = None + pipelineInfoList: Optional[List[PipelineInfoTypeDef]] = None + remoteSourceCodeAnalysisServerInfo: Optional[ RemoteSourceCodeAnalysisServerInfoTypeDef ] = None + vcenterBasedRemoteInfoList: Optional[List[VcenterBasedRemoteInfoTypeDef]] = None + versionControlInfoList: Optional[List[VersionControlInfoTypeDef]] = None + +class DatabaseMigrationPreferenceTypeDef(BaseModel): + heterogeneous: Optional[HeterogeneousTypeDef] = None + homogeneous: Optional[HomogeneousTypeDef] = None + noPreference: Optional[NoDatabaseMigrationPreferenceTypeDef] = None + +class GetAssessmentResponseTypeDef(BaseModel): + assessmentTargets: List[AssessmentTargetTypeDef] + dataCollectionDetails: DataCollectionDetailsTypeDef + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetImportFileTaskResponseTypeDef(BaseModel): + completionTime: datetime + id: str + importName: str + inputS3Bucket: str + inputS3Key: str + numberOfRecordsFailed: int + numberOfRecordsSuccess: int + startTime: datetime + status: ImportFileTaskStatusType + statusReportS3Bucket: str + statusReportS3Key: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLatestAssessmentIdResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnalyzableServersResponseTypeDef(BaseModel): + analyzableServers: List[AnalyzableServerSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAssessmentResponseTypeDef(BaseModel): + assessmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportFileTaskResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartRecommendationReportGenerationResponseTypeDef(BaseModel): + id: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationReportDetailsResponseTypeDef(BaseModel): + id: str + recommendationReportDetails: RecommendationReportDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServerDetailsRequestGetServerDetailsPaginateTypeDef(BaseModel): + serverId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnalyzableServersRequestListAnalyzableServersPaginateTypeDef(BaseModel): + sort: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCollectorsRequestListCollectorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportFileTaskRequestListImportFileTaskPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationComponentsRequestListApplicationComponentsPaginateTypeDef(BaseModel): + applicationComponentCriteria: Optional[ApplicationComponentCriteriaType] = None + filterValue: Optional[str] = None + groupIdFilter: Optional[Sequence[GroupTypeDef]] = None + sort: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationComponentsRequestRequestTypeDef(BaseModel): + applicationComponentCriteria: Optional[ApplicationComponentCriteriaType] = None + filterValue: Optional[str] = None + groupIdFilter: Optional[Sequence[GroupTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sort: Optional[SortOrderType] = None + +class ListServersRequestListServersPaginateTypeDef(BaseModel): + filterValue: Optional[str] = None + groupIdFilter: Optional[Sequence[GroupTypeDef]] = None + serverCriteria: Optional[ServerCriteriaType] = None + sort: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServersRequestRequestTypeDef(BaseModel): + filterValue: Optional[str] = None + groupIdFilter: Optional[Sequence[GroupTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + serverCriteria: Optional[ServerCriteriaType] = None + sort: Optional[SortOrderType] = None + +class StartImportFileTaskRequestRequestTypeDef(BaseModel): + S3Bucket: str + name: str + s3key: str + dataSourceType: Optional[DataSourceTypeType] = None + groupId: Optional[Sequence[GroupTypeDef]] = None + s3bucketForReportData: Optional[str] = None + +class StartRecommendationReportGenerationRequestRequestTypeDef(BaseModel): + groupIdFilter: Optional[Sequence[GroupTypeDef]] = None + outputFormat: Optional[OutputFormatType] = None + +class ListImportFileTaskResponseTypeDef(BaseModel): + nextToken: str + taskInfos: List[ImportFileTaskInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ManagementPreferenceTypeDef(BaseModel): + awsManagedResources: Optional[AwsManagedResourcesTypeDef] = None + noPreference: Optional[NoManagementPreferenceTypeDef] = None + selfManageResources: Optional[SelfManageResourcesTypeDef] = None + +class SystemInfoTypeDef(BaseModel): + cpuArchitecture: Optional[str] = None + fileSystemType: Optional[str] = None + networkInfoList: Optional[List[NetworkInfoTypeDef]] = None + osInfo: Optional[OSInfoTypeDef] = None + +class RecommendationSetTypeDef(BaseModel): + strategy: Optional[StrategyType] = None + targetDestination: Optional[TargetDestinationType] = None + transformationTool: Optional[TransformationToolTypeDef] = None + +class UpdateApplicationComponentConfigRequestRequestTypeDef(BaseModel): + applicationComponentId: str + appType: Optional[AppTypeType] = None + configureOnly: Optional[bool] = None + inclusionStatus: Optional[InclusionStatusType] = None + secretsManagerKey: Optional[str] = None + sourceCodeList: Optional[Sequence[SourceCodeTypeDef]] = None + strategyOption: Optional[StrategyOptionTypeDef] = None + +class UpdateServerConfigRequestRequestTypeDef(BaseModel): + serverId: str + strategyOption: Optional[StrategyOptionTypeDef] = None + +class ResultTypeDef(BaseModel): + analysisStatus: Optional[AnalysisStatusUnionTypeDef] = None + analysisType: Optional[AnalysisTypeType] = None + antipatternReportResultList: Optional[List[AntipatternReportResultTypeDef]] = None + statusMessage: Optional[str] = None + +class GetPortfolioSummaryResponseTypeDef(BaseModel): + assessmentSummary: AssessmentSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CollectorTypeDef(BaseModel): + collectorHealth: Optional[CollectorHealthType] = None + collectorId: Optional[str] = None + collectorVersion: Optional[str] = None + configurationSummary: Optional[ConfigurationSummaryTypeDef] = None + hostName: Optional[str] = None + ipAddress: Optional[str] = None + lastActivityTimeStamp: Optional[str] = None + registeredTimeStamp: Optional[str] = None + +class DatabasePreferencesTypeDef(BaseModel): + databaseManagementPreference: Optional[DatabaseManagementPreferenceType] = None + databaseMigrationPreference: Optional[DatabaseMigrationPreferenceTypeDef] = None + +class ApplicationPreferencesTypeDef(BaseModel): + managementPreference: Optional[ManagementPreferenceTypeDef] = None + +class ApplicationComponentStrategyTypeDef(BaseModel): + isPreferred: Optional[bool] = None + recommendation: Optional[RecommendationSetTypeDef] = None + status: Optional[StrategyRecommendationType] = None + +class ServerDetailTypeDef(BaseModel): + antipatternReportS3Object: Optional[S3ObjectTypeDef] = None + antipatternReportStatus: Optional[AntipatternReportStatusType] = None + antipatternReportStatusMessage: Optional[str] = None + applicationComponentStrategySummary: Optional[List[StrategySummaryTypeDef]] = None + dataCollectionStatus: Optional[RunTimeAssessmentStatusType] = None + id: Optional[str] = None + lastAnalyzedTimestamp: Optional[datetime] = None + listAntipatternSeveritySummary: Optional[List[AntipatternSeveritySummaryTypeDef]] = None + name: Optional[str] = None + recommendationSet: Optional[RecommendationSetTypeDef] = None + serverError: Optional[ServerErrorTypeDef] = None + serverType: Optional[str] = None + statusMessage: Optional[str] = None + systemInfo: Optional[SystemInfoTypeDef] = None + +class ServerStrategyTypeDef(BaseModel): + isPreferred: Optional[bool] = None + numberOfApplicationComponents: Optional[int] = None + recommendation: Optional[RecommendationSetTypeDef] = None + status: Optional[StrategyRecommendationType] = None + +class ApplicationComponentDetailTypeDef(BaseModel): + analysisStatus: Optional[SrcCodeOrDbAnalysisStatusType] = None + antipatternReportS3Object: Optional[S3ObjectTypeDef] = None + antipatternReportStatus: Optional[AntipatternReportStatusType] = None + antipatternReportStatusMessage: Optional[str] = None + appType: Optional[AppTypeType] = None + appUnitError: Optional[AppUnitErrorTypeDef] = None + associatedServerId: Optional[str] = None + databaseConfigDetail: Optional[DatabaseConfigDetailTypeDef] = None + id: Optional[str] = None + inclusionStatus: Optional[InclusionStatusType] = None + lastAnalyzedTimestamp: Optional[datetime] = None + listAntipatternSeveritySummary: Optional[List[AntipatternSeveritySummaryTypeDef]] = None + moreServerAssociationExists: Optional[bool] = None + name: Optional[str] = None + osDriver: Optional[str] = None + osVersion: Optional[str] = None + recommendationSet: Optional[RecommendationSetTypeDef] = None + resourceSubType: Optional[ResourceSubTypeType] = None + resultList: Optional[List[ResultTypeDef]] = None + runtimeStatus: Optional[RuntimeAnalysisStatusType] = None + runtimeStatusMessage: Optional[str] = None + sourceCodeRepositories: Optional[List[SourceCodeRepositoryTypeDef]] = None + statusMessage: Optional[str] = None + +class ListCollectorsResponseTypeDef(BaseModel): + Collectors: List[CollectorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPortfolioPreferencesResponseTypeDef(BaseModel): + applicationMode: ApplicationModeType + applicationPreferences: ApplicationPreferencesTypeDef + databasePreferences: DatabasePreferencesTypeDef + prioritizeBusinessGoals: PrioritizeBusinessGoalsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutPortfolioPreferencesRequestRequestTypeDef(BaseModel): + applicationMode: Optional[ApplicationModeType] = None + applicationPreferences: Optional[ApplicationPreferencesTypeDef] = None + databasePreferences: Optional[DatabasePreferencesTypeDef] = None + prioritizeBusinessGoals: Optional[PrioritizeBusinessGoalsTypeDef] = None + +class GetApplicationComponentStrategiesResponseTypeDef(BaseModel): + applicationComponentStrategies: List[ApplicationComponentStrategyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetServerDetailsResponseTypeDef(BaseModel): + associatedApplications: List[AssociatedApplicationTypeDef] + nextToken: str + serverDetail: ServerDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListServersResponseTypeDef(BaseModel): + nextToken: str + serverInfos: List[ServerDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetServerStrategiesResponseTypeDef(BaseModel): + serverStrategies: List[ServerStrategyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationComponentDetailsResponseTypeDef(BaseModel): + applicationComponentDetail: ApplicationComponentDetailTypeDef + associatedApplications: List[AssociatedApplicationTypeDef] + associatedServerIds: List[str] + moreApplicationResource: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationComponentsResponseTypeDef(BaseModel): + applicationComponentInfos: List[ApplicationComponentDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/migrationhubstrategy_constants.py b/aws_resource_validator/pydantic_models/migrationhubstrategy_constants.py new file mode 100644 index 00000000..cb62e2a6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/migrationhubstrategy_constants.py @@ -0,0 +1,559 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnalysisTypeType = Literal["BINARY_ANALYSIS", "DATABASE_ANALYSIS", "RUNTIME_ANALYSIS", "SOURCE_CODE_ANALYSIS"] +AntipatternReportStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCESS"] +AppTypeType = Literal["Cassandra", + "DB2", + "DotNetFramework", + "Dotnet", + "DotnetCore", + "IBM WebSphere", + "IIS", + "JBoss", + "Java", + "Maria DB", + "Mongo DB", + "MySQL", + "Oracle", + "Oracle WebLogic", + "Other", + "PostgreSQLServer", + "SQLServer", + "Spring", + "Sybase", + "Tomcat", + "Unknown", + "Visual Basic",] +AppUnitErrorCategoryType = Literal["CONNECTIVITY_ERROR", "CREDENTIAL_ERROR", "OTHER_ERROR", "PERMISSION_ERROR", "UNSUPPORTED_ERROR"] +ApplicationComponentCriteriaType = Literal["ANALYSIS_STATUS", + "APP_NAME", + "APP_TYPE", + "DESTINATION", + "ERROR_CATEGORY", + "NOT_DEFINED", + "SERVER_ID", + "STRATEGY",] +ApplicationModeType = Literal["ALL", "KNOWN", "UNKNOWN"] +AssessmentDataSourceTypeType = Literal["ApplicationDiscoveryService", "ManualImport", "StrategyRecommendationsApplicationDataCollector"] +AssessmentStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS", "STOPPED"] +AuthTypeType = Literal["CERT", "NTLM", "SSH"] +AwsManagedTargetDestinationType = Literal["AWS Elastic BeanStalk", "AWS Fargate", "None specified"] +BinaryAnalyzerNameType = Literal["BYTECODE_ANALYZER", "DLL_ANALYZER"] +CollectorHealthType = Literal["COLLECTOR_HEALTHY", "COLLECTOR_UNHEALTHY"] +ConditionType = Literal["CONTAINS", "EQUALS", "NOT_CONTAINS", "NOT_EQUALS"] +DataSourceTypeType = Literal["ApplicationDiscoveryService", + "Import", + "MPA", + "StrategyRecommendationsApplicationDataCollector",] +DatabaseManagementPreferenceType = Literal["AWS-managed", "No preference", "Self-manage"] +GetServerDetailsPaginatorName = Literal["get_server_details"] +GroupNameType = Literal["ExternalId", "ExternalSourceType"] +HeterogeneousTargetDatabaseEngineType = Literal["AWS PostgreSQL", + "Amazon Aurora", + "Db2 LUW", + "MariaDB", + "Microsoft SQL Server", + "MongoDB", + "MySQL", + "None specified", + "Oracle Database", + "SAP",] +HomogeneousTargetDatabaseEngineType = Literal["None specified"] +ImportFileTaskStatusType = Literal["DeleteFailed", + "DeleteInProgress", + "DeletePartialSuccess", + "DeleteSuccess", + "ImportFailed", + "ImportInProgress", + "ImportPartialSuccess", + "ImportSuccess",] +InclusionStatusType = Literal["excludeFromAssessment", "includeInAssessment"] +ListAnalyzableServersPaginatorName = Literal["list_analyzable_servers"] +ListApplicationComponentsPaginatorName = Literal["list_application_components"] +ListCollectorsPaginatorName = Literal["list_collectors"] +ListImportFileTaskPaginatorName = Literal["list_import_file_task"] +ListServersPaginatorName = Literal["list_servers"] +NoPreferenceTargetDestinationType = Literal["AWS Elastic BeanStalk", + "AWS Fargate", + "Amazon Elastic Cloud Compute (EC2)", + "Amazon Elastic Container Service (ECS)", + "Amazon Elastic Kubernetes Service (EKS)", + "None specified",] +OSTypeType = Literal["LINUX", "WINDOWS"] +OutputFormatType = Literal["Excel", "Json"] +PipelineTypeType = Literal["AZURE_DEVOPS"] +RecommendationReportStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCESS"] +ResourceSubTypeType = Literal["Database", "DatabaseProcess", "Process"] +RunTimeAnalyzerNameType = Literal["A2C_ANALYZER", "DATABASE_ANALYZER", "EMP_PA_ANALYZER", "REHOST_ANALYZER", "SCT_ANALYZER"] +RunTimeAssessmentStatusType = Literal["dataCollectionTaskFailed", + "dataCollectionTaskPartialSuccess", + "dataCollectionTaskScheduled", + "dataCollectionTaskStarted", + "dataCollectionTaskStopped", + "dataCollectionTaskSuccess", + "dataCollectionTaskToBeScheduled",] +RuntimeAnalysisStatusType = Literal["ANALYSIS_FAILED", "ANALYSIS_STARTED", "ANALYSIS_SUCCESS", "ANALYSIS_TO_BE_SCHEDULED"] +SelfManageTargetDestinationType = Literal["Amazon Elastic Cloud Compute (EC2)", + "Amazon Elastic Container Service (ECS)", + "Amazon Elastic Kubernetes Service (EKS)", + "None specified",] +ServerCriteriaType = Literal["ANALYSIS_STATUS", + "DESTINATION", + "ERROR_CATEGORY", + "NOT_DEFINED", + "OS_NAME", + "SERVER_ID", + "STRATEGY",] +ServerErrorCategoryType = Literal["ARCHITECTURE_ERROR", + "CONNECTIVITY_ERROR", + "CREDENTIAL_ERROR", + "OTHER_ERROR", + "PERMISSION_ERROR",] +ServerOsTypeType = Literal["AmazonLinux", "EndOfSupportWindowsServer", "Other", "Redhat", "WindowsServer"] +SeverityType = Literal["HIGH", "LOW", "MEDIUM"] +SortOrderType = Literal["ASC", "DESC"] +SourceCodeAnalyzerNameType = Literal["BYTECODE_ANALYZER", "CSHARP_ANALYZER", "JAVA_ANALYZER", "PORTING_ASSISTANT"] +SrcCodeOrDbAnalysisStatusType = Literal["ANALYSIS_FAILED", + "ANALYSIS_PARTIAL_SUCCESS", + "ANALYSIS_STARTED", + "ANALYSIS_SUCCESS", + "ANALYSIS_TO_BE_SCHEDULED", + "CONFIGURED", + "UNCONFIGURED",] +StrategyRecommendationType = Literal["notRecommended", "potential", "recommended", "viableOption"] +StrategyType = Literal["Refactor", "Rehost", "Relocate", "Replatform", "Repurchase", "Retain", "Retirement"] +TargetDatabaseEngineType = Literal["AWS PostgreSQL", + "Amazon Aurora", + "Db2 LUW", + "MariaDB", + "Microsoft SQL Server", + "MongoDB", + "MySQL", + "None specified", + "Oracle Database", + "SAP",] +TargetDestinationType = Literal["AWS Elastic BeanStalk", + "AWS Fargate", + "Amazon DocumentDB", + "Amazon DynamoDB", + "Amazon Elastic Cloud Compute (EC2)", + "Amazon Elastic Container Service (ECS)", + "Amazon Elastic Kubernetes Service (EKS)", + "Amazon Relational Database Service", + "Amazon Relational Database Service on MySQL", + "Amazon Relational Database Service on PostgreSQL", + "Aurora MySQL", + "Aurora PostgreSQL", + "Babelfish for Aurora PostgreSQL", + "None specified",] +TransformationToolNameType = Literal["App2Container", + "Application Migration Service", + "Database Migration Service", + "End of Support Migration", + "In Place Operating System Upgrade", + "Native SQL Server Backup/Restore", + "Porting Assistant For .NET", + "Schema Conversion Tool", + "Strategy Recommendation Support", + "Windows Web Application Migration Assistant",] +VersionControlType = Literal["AZURE_DEVOPS_GIT", "GITHUB", "GITHUB_ENTERPRISE"] +VersionControlTypeType = Literal["AZURE_DEVOPS_GIT", "GITHUB", "GITHUB_ENTERPRISE"] +MigrationHubStrategyRecommendationsServiceName = Literal["migrationhubstrategy"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_server_details", + "list_analyzable_servers", + "list_application_components", + "list_collectors", + "list_import_file_task", + "list_servers",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/mobile_classes.py b/aws_resource_validator/pydantic_models/mobile_classes.py new file mode 100644 index 00000000..4eb8b3c6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mobile_classes.py @@ -0,0 +1,137 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mobile_constants import * + +class BundleDetailsTypeDef(BaseModel): + bundleId: Optional[str] = None + title: Optional[str] = None + version: Optional[str] = None + description: Optional[str] = None + iconUrl: Optional[str] = None + availablePlatforms: Optional[List[PlatformType]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteProjectRequestRequestTypeDef(BaseModel): + projectId: str + +class ResourceTypeDef(BaseModel): + type: Optional[str] = None + name: Optional[str] = None + arn: Optional[str] = None + feature: Optional[str] = None + attributes: Optional[Dict[str, str]] = None + +class DescribeBundleRequestRequestTypeDef(BaseModel): + bundleId: str + +class DescribeProjectRequestRequestTypeDef(BaseModel): + projectId: str + syncFromResources: Optional[bool] = None + +class ExportBundleRequestRequestTypeDef(BaseModel): + bundleId: str + projectId: Optional[str] = None + platform: Optional[PlatformType] = None + +class ExportProjectRequestRequestTypeDef(BaseModel): + projectId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBundlesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListProjectsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ProjectSummaryTypeDef(BaseModel): + name: Optional[str] = None + projectId: Optional[str] = None + +class CreateProjectRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + region: Optional[str] = None + contents: Optional[BlobTypeDef] = None + snapshotId: Optional[str] = None + +class UpdateProjectRequestRequestTypeDef(BaseModel): + projectId: str + contents: Optional[BlobTypeDef] = None + +class DescribeBundleResultTypeDef(BaseModel): + details: BundleDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportBundleResultTypeDef(BaseModel): + downloadUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExportProjectResultTypeDef(BaseModel): + downloadUrl: str + shareUrl: str + snapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBundlesResultTypeDef(BaseModel): + bundleList: List[BundleDetailsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectResultTypeDef(BaseModel): + deletedResources: List[ResourceTypeDef] + orphanedResources: List[ResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ProjectDetailsTypeDef(BaseModel): + name: Optional[str] = None + projectId: Optional[str] = None + region: Optional[str] = None + state: Optional[ProjectStateType] = None + createdDate: Optional[datetime] = None + lastUpdatedDate: Optional[datetime] = None + consoleUrl: Optional[str] = None + resources: Optional[List[ResourceTypeDef]] = None + +class ListBundlesRequestListBundlesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsRequestListProjectsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectsResultTypeDef(BaseModel): + projects: List[ProjectSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResultTypeDef(BaseModel): + details: ProjectDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProjectResultTypeDef(BaseModel): + details: ProjectDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectResultTypeDef(BaseModel): + details: ProjectDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mobile_constants.py b/aws_resource_validator/pydantic_models/mobile_constants.py new file mode 100644 index 00000000..3e74b05d --- /dev/null +++ b/aws_resource_validator/pydantic_models/mobile_constants.py @@ -0,0 +1,394 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListBundlesPaginatorName = Literal["list_bundles"] +ListProjectsPaginatorName = Literal["list_projects"] +PlatformType = Literal["ANDROID", "JAVASCRIPT", "LINUX", "OBJC", "OSX", "SWIFT", "WINDOWS"] +ProjectStateType = Literal["IMPORTING", "NORMAL", "SYNCING"] +MobileServiceName = Literal["mobile"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_bundles", "list_projects"] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/mq_classes.py b/aws_resource_validator/pydantic_models/mq_classes.py new file mode 100644 index 00000000..9e535823 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mq_classes.py @@ -0,0 +1,459 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mq_constants import * + +class ActionRequiredTypeDef(BaseModel): + ActionRequiredCode: Optional[str] = None + ActionRequiredInfo: Optional[str] = None + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class EngineVersionTypeDef(BaseModel): + Name: Optional[str] = None + +class BrokerInstanceTypeDef(BaseModel): + ConsoleURL: Optional[str] = None + Endpoints: Optional[List[str]] = None + IpAddress: Optional[str] = None + +class BrokerSummaryTypeDef(BaseModel): + DeploymentMode: DeploymentModeType + EngineType: EngineTypeType + BrokerArn: Optional[str] = None + BrokerId: Optional[str] = None + BrokerName: Optional[str] = None + BrokerState: Optional[BrokerStateType] = None + Created: Optional[datetime] = None + HostInstanceType: Optional[str] = None + +class ConfigurationIdTypeDef(BaseModel): + Id: str + Revision: Optional[int] = None + +class ConfigurationRevisionTypeDef(BaseModel): + Created: datetime + Revision: int + Description: Optional[str] = None + +class EncryptionOptionsTypeDef(BaseModel): + UseAwsOwnedKey: bool + KmsKeyId: Optional[str] = None + +class LdapServerMetadataInputTypeDef(BaseModel): + Hosts: Sequence[str] + RoleBase: str + RoleSearchMatching: str + ServiceAccountPassword: str + ServiceAccountUsername: str + UserBase: str + UserSearchMatching: str + RoleName: Optional[str] = None + RoleSearchSubtree: Optional[bool] = None + UserRoleName: Optional[str] = None + UserSearchSubtree: Optional[bool] = None + +class LogsTypeDef(BaseModel): + Audit: Optional[bool] = None + General: Optional[bool] = None + +class UserTypeDef(BaseModel): + Password: str + Username: str + ConsoleAccess: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + ReplicationUser: Optional[bool] = None + +class WeeklyStartTimeTypeDef(BaseModel): + DayOfWeek: DayOfWeekType + TimeOfDay: str + TimeZone: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateConfigurationRequestRequestTypeDef(BaseModel): + EngineType: EngineTypeType + Name: str + AuthenticationStrategy: Optional[AuthenticationStrategyType] = None + EngineVersion: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Optional[Mapping[str, str]] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + BrokerId: str + Password: str + Username: str + ConsoleAccess: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + ReplicationUser: Optional[bool] = None + +class DataReplicationCounterpartTypeDef(BaseModel): + BrokerId: str + Region: str + +class DeleteBrokerRequestRequestTypeDef(BaseModel): + BrokerId: str + +class DeleteTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class DeleteUserRequestRequestTypeDef(BaseModel): + BrokerId: str + Username: str + +class DescribeBrokerEngineTypesRequestRequestTypeDef(BaseModel): + EngineType: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeBrokerInstanceOptionsRequestRequestTypeDef(BaseModel): + EngineType: Optional[str] = None + HostInstanceType: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + StorageType: Optional[str] = None + +class DescribeBrokerRequestRequestTypeDef(BaseModel): + BrokerId: str + +class LdapServerMetadataOutputTypeDef(BaseModel): + Hosts: List[str] + RoleBase: str + RoleSearchMatching: str + ServiceAccountUsername: str + UserBase: str + UserSearchMatching: str + RoleName: Optional[str] = None + RoleSearchSubtree: Optional[bool] = None + UserRoleName: Optional[str] = None + UserSearchSubtree: Optional[bool] = None + +class UserSummaryTypeDef(BaseModel): + Username: str + PendingChange: Optional[ChangeTypeType] = None + +class DescribeConfigurationRequestRequestTypeDef(BaseModel): + ConfigurationId: str + +class DescribeConfigurationRevisionRequestRequestTypeDef(BaseModel): + ConfigurationId: str + ConfigurationRevision: str + +class DescribeUserRequestRequestTypeDef(BaseModel): + BrokerId: str + Username: str + +class UserPendingChangesTypeDef(BaseModel): + PendingChange: ChangeTypeType + ConsoleAccess: Optional[bool] = None + Groups: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBrokersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConfigurationRevisionsRequestRequestTypeDef(BaseModel): + ConfigurationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConfigurationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListUsersRequestRequestTypeDef(BaseModel): + BrokerId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PendingLogsTypeDef(BaseModel): + Audit: Optional[bool] = None + General: Optional[bool] = None + +class PromoteRequestRequestTypeDef(BaseModel): + BrokerId: str + Mode: PromoteModeType + +class RebootBrokerRequestRequestTypeDef(BaseModel): + BrokerId: str + +class SanitizationWarningTypeDef(BaseModel): + Reason: SanitizationWarningReasonType + AttributeName: Optional[str] = None + ElementName: Optional[str] = None + +class UpdateConfigurationRequestRequestTypeDef(BaseModel): + ConfigurationId: str + Data: str + Description: Optional[str] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + BrokerId: str + Username: str + ConsoleAccess: Optional[bool] = None + Groups: Optional[Sequence[str]] = None + Password: Optional[str] = None + ReplicationUser: Optional[bool] = None + +class BrokerInstanceOptionTypeDef(BaseModel): + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + EngineType: Optional[EngineTypeType] = None + HostInstanceType: Optional[str] = None + StorageType: Optional[BrokerStorageTypeType] = None + SupportedDeploymentModes: Optional[List[DeploymentModeType]] = None + SupportedEngineVersions: Optional[List[str]] = None + +class BrokerEngineTypeTypeDef(BaseModel): + EngineType: Optional[EngineTypeType] = None + EngineVersions: Optional[List[EngineVersionTypeDef]] = None + +class ConfigurationsTypeDef(BaseModel): + Current: Optional[ConfigurationIdTypeDef] = None + History: Optional[List[ConfigurationIdTypeDef]] = None + Pending: Optional[ConfigurationIdTypeDef] = None + +class ConfigurationTypeDef(BaseModel): + Arn: str + AuthenticationStrategy: AuthenticationStrategyType + Created: datetime + Description: str + EngineType: EngineTypeType + EngineVersion: str + Id: str + LatestRevision: ConfigurationRevisionTypeDef + Name: str + Tags: Optional[Dict[str, str]] = None + +class CreateBrokerRequestRequestTypeDef(BaseModel): + BrokerName: str + DeploymentMode: DeploymentModeType + EngineType: EngineTypeType + HostInstanceType: str + PubliclyAccessible: bool + Users: Sequence[UserTypeDef] + AuthenticationStrategy: Optional[AuthenticationStrategyType] = None + AutoMinorVersionUpgrade: Optional[bool] = None + Configuration: Optional[ConfigurationIdTypeDef] = None + CreatorRequestId: Optional[str] = None + EncryptionOptions: Optional[EncryptionOptionsTypeDef] = None + EngineVersion: Optional[str] = None + LdapServerMetadata: Optional[LdapServerMetadataInputTypeDef] = None + Logs: Optional[LogsTypeDef] = None + MaintenanceWindowStartTime: Optional[WeeklyStartTimeTypeDef] = None + SecurityGroups: Optional[Sequence[str]] = None + StorageType: Optional[BrokerStorageTypeType] = None + SubnetIds: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + DataReplicationMode: Optional[DataReplicationModeType] = None + DataReplicationPrimaryBrokerArn: Optional[str] = None + +class UpdateBrokerRequestRequestTypeDef(BaseModel): + BrokerId: str + AuthenticationStrategy: Optional[AuthenticationStrategyType] = None + AutoMinorVersionUpgrade: Optional[bool] = None + Configuration: Optional[ConfigurationIdTypeDef] = None + EngineVersion: Optional[str] = None + HostInstanceType: Optional[str] = None + LdapServerMetadata: Optional[LdapServerMetadataInputTypeDef] = None + Logs: Optional[LogsTypeDef] = None + MaintenanceWindowStartTime: Optional[WeeklyStartTimeTypeDef] = None + SecurityGroups: Optional[Sequence[str]] = None + DataReplicationMode: Optional[DataReplicationModeType] = None + +class CreateBrokerResponseTypeDef(BaseModel): + BrokerArn: str + BrokerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationResponseTypeDef(BaseModel): + Arn: str + AuthenticationStrategy: AuthenticationStrategyType + Created: datetime + Id: str + LatestRevision: ConfigurationRevisionTypeDef + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBrokerResponseTypeDef(BaseModel): + BrokerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationResponseTypeDef(BaseModel): + Arn: str + AuthenticationStrategy: AuthenticationStrategyType + Created: datetime + Description: str + EngineType: EngineTypeType + EngineVersion: str + Id: str + LatestRevision: ConfigurationRevisionTypeDef + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationRevisionResponseTypeDef(BaseModel): + ConfigurationId: str + Created: datetime + Data: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListBrokersResponseTypeDef(BaseModel): + BrokerSummaries: List[BrokerSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListConfigurationRevisionsResponseTypeDef(BaseModel): + ConfigurationId: str + MaxResults: int + Revisions: List[ConfigurationRevisionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PromoteResponseTypeDef(BaseModel): + BrokerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataReplicationMetadataOutputTypeDef(BaseModel): + DataReplicationRole: str + DataReplicationCounterpart: Optional[DataReplicationCounterpartTypeDef] = None + +class ListUsersResponseTypeDef(BaseModel): + BrokerId: str + MaxResults: int + Users: List[UserSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeUserResponseTypeDef(BaseModel): + BrokerId: str + ConsoleAccess: bool + Groups: List[str] + Pending: UserPendingChangesTypeDef + Username: str + ReplicationUser: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ListBrokersRequestListBrokersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LogsSummaryTypeDef(BaseModel): + General: bool + GeneralLogGroup: str + Audit: Optional[bool] = None + AuditLogGroup: Optional[str] = None + Pending: Optional[PendingLogsTypeDef] = None + +class UpdateConfigurationResponseTypeDef(BaseModel): + Arn: str + Created: datetime + Id: str + LatestRevision: ConfigurationRevisionTypeDef + Name: str + Warnings: List[SanitizationWarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBrokerInstanceOptionsResponseTypeDef(BaseModel): + BrokerInstanceOptions: List[BrokerInstanceOptionTypeDef] + MaxResults: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeBrokerEngineTypesResponseTypeDef(BaseModel): + BrokerEngineTypes: List[BrokerEngineTypeTypeDef] + MaxResults: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListConfigurationsResponseTypeDef(BaseModel): + Configurations: List[ConfigurationTypeDef] + MaxResults: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateBrokerResponseTypeDef(BaseModel): + AuthenticationStrategy: AuthenticationStrategyType + AutoMinorVersionUpgrade: bool + BrokerId: str + Configuration: ConfigurationIdTypeDef + EngineVersion: str + HostInstanceType: str + LdapServerMetadata: LdapServerMetadataOutputTypeDef + Logs: LogsTypeDef + MaintenanceWindowStartTime: WeeklyStartTimeTypeDef + SecurityGroups: List[str] + DataReplicationMetadata: DataReplicationMetadataOutputTypeDef + DataReplicationMode: DataReplicationModeType + PendingDataReplicationMetadata: DataReplicationMetadataOutputTypeDef + PendingDataReplicationMode: DataReplicationModeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBrokerResponseTypeDef(BaseModel): + ActionsRequired: List[ActionRequiredTypeDef] + AuthenticationStrategy: AuthenticationStrategyType + AutoMinorVersionUpgrade: bool + BrokerArn: str + BrokerId: str + BrokerInstances: List[BrokerInstanceTypeDef] + BrokerName: str + BrokerState: BrokerStateType + Configurations: ConfigurationsTypeDef + Created: datetime + DeploymentMode: DeploymentModeType + EncryptionOptions: EncryptionOptionsTypeDef + EngineType: EngineTypeType + EngineVersion: str + HostInstanceType: str + LdapServerMetadata: LdapServerMetadataOutputTypeDef + Logs: LogsSummaryTypeDef + MaintenanceWindowStartTime: WeeklyStartTimeTypeDef + PendingAuthenticationStrategy: AuthenticationStrategyType + PendingEngineVersion: str + PendingHostInstanceType: str + PendingLdapServerMetadata: LdapServerMetadataOutputTypeDef + PendingSecurityGroups: List[str] + PubliclyAccessible: bool + SecurityGroups: List[str] + StorageType: BrokerStorageTypeType + SubnetIds: List[str] + Tags: Dict[str, str] + Users: List[UserSummaryTypeDef] + DataReplicationMetadata: DataReplicationMetadataOutputTypeDef + DataReplicationMode: DataReplicationModeType + PendingDataReplicationMetadata: DataReplicationMetadataOutputTypeDef + PendingDataReplicationMode: DataReplicationModeType + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mq_constants.py b/aws_resource_validator/pydantic_models/mq_constants.py new file mode 100644 index 00000000..257c8629 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mq_constants.py @@ -0,0 +1,446 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthenticationStrategyType = Literal["LDAP", "SIMPLE"] +BrokerStateType = Literal["CREATION_FAILED", + "CREATION_IN_PROGRESS", + "CRITICAL_ACTION_REQUIRED", + "DELETION_IN_PROGRESS", + "REBOOT_IN_PROGRESS", + "REPLICA", + "RUNNING",] +BrokerStorageTypeType = Literal["EBS", "EFS"] +ChangeTypeType = Literal["CREATE", "DELETE", "UPDATE"] +DataReplicationModeType = Literal["CRDR", "NONE"] +DayOfWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DeploymentModeType = Literal["ACTIVE_STANDBY_MULTI_AZ", "CLUSTER_MULTI_AZ", "SINGLE_INSTANCE"] +EngineTypeType = Literal["ACTIVEMQ", "RABBITMQ"] +ListBrokersPaginatorName = Literal["list_brokers"] +PromoteModeType = Literal["FAILOVER", "SWITCHOVER"] +SanitizationWarningReasonType = Literal["DISALLOWED_ATTRIBUTE_REMOVED", "DISALLOWED_ELEMENT_REMOVED", "INVALID_ATTRIBUTE_VALUE_REMOVED"] +MQServiceName = Literal["mq"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_brokers"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/mturk_classes.py b/aws_resource_validator/pydantic_models/mturk_classes.py new file mode 100644 index 00000000..79eda31d --- /dev/null +++ b/aws_resource_validator/pydantic_models/mturk_classes.py @@ -0,0 +1,584 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mturk_constants import * + +class AcceptQualificationRequestRequestRequestTypeDef(BaseModel): + QualificationRequestId: str + IntegerValue: Optional[int] = None + +class ApproveAssignmentRequestRequestTypeDef(BaseModel): + AssignmentId: str + RequesterFeedback: Optional[str] = None + OverrideRejection: Optional[bool] = None + +class AssignmentTypeDef(BaseModel): + AssignmentId: Optional[str] = None + WorkerId: Optional[str] = None + HITId: Optional[str] = None + AssignmentStatus: Optional[AssignmentStatusType] = None + AutoApprovalTime: Optional[datetime] = None + AcceptTime: Optional[datetime] = None + SubmitTime: Optional[datetime] = None + ApprovalTime: Optional[datetime] = None + RejectionTime: Optional[datetime] = None + Deadline: Optional[datetime] = None + Answer: Optional[str] = None + RequesterFeedback: Optional[str] = None + +class AssociateQualificationWithWorkerRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + WorkerId: str + IntegerValue: Optional[int] = None + SendNotification: Optional[bool] = None + +class BonusPaymentTypeDef(BaseModel): + WorkerId: Optional[str] = None + BonusAmount: Optional[str] = None + AssignmentId: Optional[str] = None + Reason: Optional[str] = None + GrantTime: Optional[datetime] = None + +class CreateAdditionalAssignmentsForHITRequestRequestTypeDef(BaseModel): + HITId: str + NumberOfAdditionalAssignments: int + UniqueRequestToken: Optional[str] = None + +class HITLayoutParameterTypeDef(BaseModel): + Name: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateQualificationTypeRequestRequestTypeDef(BaseModel): + Name: str + Description: str + QualificationTypeStatus: QualificationTypeStatusType + Keywords: Optional[str] = None + RetryDelayInSeconds: Optional[int] = None + Test: Optional[str] = None + AnswerKey: Optional[str] = None + TestDurationInSeconds: Optional[int] = None + AutoGranted: Optional[bool] = None + AutoGrantedValue: Optional[int] = None + +class QualificationTypeTypeDef(BaseModel): + QualificationTypeId: Optional[str] = None + CreationTime: Optional[datetime] = None + Name: Optional[str] = None + Description: Optional[str] = None + Keywords: Optional[str] = None + QualificationTypeStatus: Optional[QualificationTypeStatusType] = None + Test: Optional[str] = None + TestDurationInSeconds: Optional[int] = None + AnswerKey: Optional[str] = None + RetryDelayInSeconds: Optional[int] = None + IsRequestable: Optional[bool] = None + AutoGranted: Optional[bool] = None + AutoGrantedValue: Optional[int] = None + +class CreateWorkerBlockRequestRequestTypeDef(BaseModel): + WorkerId: str + Reason: str + +class DeleteHITRequestRequestTypeDef(BaseModel): + HITId: str + +class DeleteQualificationTypeRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + +class DeleteWorkerBlockRequestRequestTypeDef(BaseModel): + WorkerId: str + Reason: Optional[str] = None + +class DisassociateQualificationFromWorkerRequestRequestTypeDef(BaseModel): + WorkerId: str + QualificationTypeId: str + Reason: Optional[str] = None + +class GetAssignmentRequestRequestTypeDef(BaseModel): + AssignmentId: str + +class GetFileUploadURLRequestRequestTypeDef(BaseModel): + AssignmentId: str + QuestionIdentifier: str + +class GetHITRequestRequestTypeDef(BaseModel): + HITId: str + +class GetQualificationScoreRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + WorkerId: str + +class GetQualificationTypeRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssignmentsForHITRequestRequestTypeDef(BaseModel): + HITId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + AssignmentStatuses: Optional[Sequence[AssignmentStatusType]] = None + +class ListBonusPaymentsRequestRequestTypeDef(BaseModel): + HITId: Optional[str] = None + AssignmentId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListHITsForQualificationTypeRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListHITsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListQualificationRequestsRequestRequestTypeDef(BaseModel): + QualificationTypeId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QualificationRequestTypeDef(BaseModel): + QualificationRequestId: Optional[str] = None + QualificationTypeId: Optional[str] = None + WorkerId: Optional[str] = None + Test: Optional[str] = None + Answer: Optional[str] = None + SubmitTime: Optional[datetime] = None + +class ListQualificationTypesRequestRequestTypeDef(BaseModel): + MustBeRequestable: bool + Query: Optional[str] = None + MustBeOwnedByCaller: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReviewPolicyResultsForHITRequestRequestTypeDef(BaseModel): + HITId: str + PolicyLevels: Optional[Sequence[ReviewPolicyLevelType]] = None + RetrieveActions: Optional[bool] = None + RetrieveResults: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReviewableHITsRequestRequestTypeDef(BaseModel): + HITTypeId: Optional[str] = None + Status: Optional[ReviewableHITStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListWorkerBlocksRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class WorkerBlockTypeDef(BaseModel): + WorkerId: Optional[str] = None + Reason: Optional[str] = None + +class ListWorkersWithQualificationTypeRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + Status: Optional[QualificationStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class LocaleTypeDef(BaseModel): + Country: str + Subdivision: Optional[str] = None + +class NotificationSpecificationTypeDef(BaseModel): + Destination: str + Transport: NotificationTransportType + Version: str + EventTypes: Sequence[EventTypeType] + +class NotifyWorkersFailureStatusTypeDef(BaseModel): + NotifyWorkersFailureCode: Optional[NotifyWorkersFailureCodeType] = None + NotifyWorkersFailureMessage: Optional[str] = None + WorkerId: Optional[str] = None + +class NotifyWorkersRequestRequestTypeDef(BaseModel): + Subject: str + MessageText: str + WorkerIds: Sequence[str] + +class ParameterMapEntryTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class RejectAssignmentRequestRequestTypeDef(BaseModel): + AssignmentId: str + RequesterFeedback: str + +class RejectQualificationRequestRequestRequestTypeDef(BaseModel): + QualificationRequestId: str + Reason: Optional[str] = None + +class ReviewActionDetailTypeDef(BaseModel): + ActionId: Optional[str] = None + ActionName: Optional[str] = None + TargetId: Optional[str] = None + TargetType: Optional[str] = None + Status: Optional[ReviewActionStatusType] = None + CompleteTime: Optional[datetime] = None + Result: Optional[str] = None + ErrorCode: Optional[str] = None + +class ReviewResultDetailTypeDef(BaseModel): + ActionId: Optional[str] = None + SubjectId: Optional[str] = None + SubjectType: Optional[str] = None + QuestionId: Optional[str] = None + Key: Optional[str] = None + Value: Optional[str] = None + +class SendBonusRequestRequestTypeDef(BaseModel): + WorkerId: str + BonusAmount: str + AssignmentId: str + Reason: str + UniqueRequestToken: Optional[str] = None + +class UpdateHITReviewStatusRequestRequestTypeDef(BaseModel): + HITId: str + Revert: Optional[bool] = None + +class UpdateHITTypeOfHITRequestRequestTypeDef(BaseModel): + HITId: str + HITTypeId: str + +class UpdateQualificationTypeRequestRequestTypeDef(BaseModel): + QualificationTypeId: str + Description: Optional[str] = None + QualificationTypeStatus: Optional[QualificationTypeStatusType] = None + Test: Optional[str] = None + AnswerKey: Optional[str] = None + TestDurationInSeconds: Optional[int] = None + RetryDelayInSeconds: Optional[int] = None + AutoGranted: Optional[bool] = None + AutoGrantedValue: Optional[int] = None + +class CreateHITTypeResponseTypeDef(BaseModel): + HITTypeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountBalanceResponseTypeDef(BaseModel): + AvailableBalance: str + OnHoldBalance: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFileUploadURLResponseTypeDef(BaseModel): + FileUploadURL: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssignmentsForHITResponseTypeDef(BaseModel): + NextToken: str + NumResults: int + Assignments: List[AssignmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBonusPaymentsResponseTypeDef(BaseModel): + NumResults: int + NextToken: str + BonusPayments: List[BonusPaymentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQualificationTypeResponseTypeDef(BaseModel): + QualificationType: QualificationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetQualificationTypeResponseTypeDef(BaseModel): + QualificationType: QualificationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListQualificationTypesResponseTypeDef(BaseModel): + NumResults: int + NextToken: str + QualificationTypes: List[QualificationTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateQualificationTypeResponseTypeDef(BaseModel): + QualificationType: QualificationTypeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssignmentsForHITRequestListAssignmentsForHITPaginateTypeDef(BaseModel): + HITId: str + AssignmentStatuses: Optional[Sequence[AssignmentStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBonusPaymentsRequestListBonusPaymentsPaginateTypeDef(BaseModel): + HITId: Optional[str] = None + AssignmentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHITsForQualificationTypeRequestListHITsForQualificationTypePaginateTypeDef(BaseModel): + QualificationTypeId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHITsRequestListHITsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQualificationRequestsRequestListQualificationRequestsPaginateTypeDef(BaseModel): + QualificationTypeId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQualificationTypesRequestListQualificationTypesPaginateTypeDef(BaseModel): + MustBeRequestable: bool + Query: Optional[str] = None + MustBeOwnedByCaller: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReviewableHITsRequestListReviewableHITsPaginateTypeDef(BaseModel): + HITTypeId: Optional[str] = None + Status: Optional[ReviewableHITStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkerBlocksRequestListWorkerBlocksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkersWithQualificationTypeRequestListWorkersWithQualificationTypePaginateTypeDef(BaseModel): + QualificationTypeId: str + Status: Optional[QualificationStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQualificationRequestsResponseTypeDef(BaseModel): + NumResults: int + NextToken: str + QualificationRequests: List[QualificationRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkerBlocksResponseTypeDef(BaseModel): + NextToken: str + NumResults: int + WorkerBlocks: List[WorkerBlockTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class QualificationRequirementPaginatorTypeDef(BaseModel): + QualificationTypeId: str + Comparator: ComparatorType + IntegerValues: Optional[List[int]] = None + LocaleValues: Optional[List[LocaleTypeDef]] = None + RequiredToPreview: Optional[bool] = None + ActionsGuarded: Optional[HITAccessActionsType] = None + +class QualificationRequirementTypeDef(BaseModel): + QualificationTypeId: str + Comparator: ComparatorType + IntegerValues: Optional[Sequence[int]] = None + LocaleValues: Optional[Sequence[LocaleTypeDef]] = None + RequiredToPreview: Optional[bool] = None + ActionsGuarded: Optional[HITAccessActionsType] = None + +class QualificationTypeDef(BaseModel): + QualificationTypeId: Optional[str] = None + WorkerId: Optional[str] = None + GrantTime: Optional[datetime] = None + IntegerValue: Optional[int] = None + LocaleValue: Optional[LocaleTypeDef] = None + Status: Optional[QualificationStatusType] = None + +class SendTestEventNotificationRequestRequestTypeDef(BaseModel): + Notification: NotificationSpecificationTypeDef + TestEventType: EventTypeType + +class UpdateNotificationSettingsRequestRequestTypeDef(BaseModel): + HITTypeId: str + Notification: Optional[NotificationSpecificationTypeDef] = None + Active: Optional[bool] = None + +class NotifyWorkersResponseTypeDef(BaseModel): + NotifyWorkersFailureStatuses: List[NotifyWorkersFailureStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PolicyParameterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + MapEntries: Optional[Sequence[ParameterMapEntryTypeDef]] = None + +class ReviewReportTypeDef(BaseModel): + ReviewResults: Optional[List[ReviewResultDetailTypeDef]] = None + ReviewActions: Optional[List[ReviewActionDetailTypeDef]] = None + +class UpdateExpirationForHITRequestRequestTypeDef(BaseModel): + HITId: str + ExpireAt: TimestampTypeDef + +class HITPaginatorTypeDef(BaseModel): + HITId: Optional[str] = None + HITTypeId: Optional[str] = None + HITGroupId: Optional[str] = None + HITLayoutId: Optional[str] = None + CreationTime: Optional[datetime] = None + Title: Optional[str] = None + Description: Optional[str] = None + Question: Optional[str] = None + Keywords: Optional[str] = None + HITStatus: Optional[HITStatusType] = None + MaxAssignments: Optional[int] = None + Reward: Optional[str] = None + AutoApprovalDelayInSeconds: Optional[int] = None + Expiration: Optional[datetime] = None + AssignmentDurationInSeconds: Optional[int] = None + RequesterAnnotation: Optional[str] = None + QualificationRequirements: Optional[List[QualificationRequirementPaginatorTypeDef]] = None + HITReviewStatus: Optional[HITReviewStatusType] = None + NumberOfAssignmentsPending: Optional[int] = None + NumberOfAssignmentsAvailable: Optional[int] = None + NumberOfAssignmentsCompleted: Optional[int] = None + +class CreateHITTypeRequestRequestTypeDef(BaseModel): + AssignmentDurationInSeconds: int + Reward: str + Title: str + Description: str + AutoApprovalDelayInSeconds: Optional[int] = None + Keywords: Optional[str] = None + QualificationRequirements: Optional[Sequence[QualificationRequirementTypeDef]] = None + +class HITTypeDef(BaseModel): + HITId: Optional[str] = None + HITTypeId: Optional[str] = None + HITGroupId: Optional[str] = None + HITLayoutId: Optional[str] = None + CreationTime: Optional[datetime] = None + Title: Optional[str] = None + Description: Optional[str] = None + Question: Optional[str] = None + Keywords: Optional[str] = None + HITStatus: Optional[HITStatusType] = None + MaxAssignments: Optional[int] = None + Reward: Optional[str] = None + AutoApprovalDelayInSeconds: Optional[int] = None + Expiration: Optional[datetime] = None + AssignmentDurationInSeconds: Optional[int] = None + RequesterAnnotation: Optional[str] = None + QualificationRequirements: Optional[List[QualificationRequirementTypeDef]] = None + HITReviewStatus: Optional[HITReviewStatusType] = None + NumberOfAssignmentsPending: Optional[int] = None + NumberOfAssignmentsAvailable: Optional[int] = None + NumberOfAssignmentsCompleted: Optional[int] = None + +class GetQualificationScoreResponseTypeDef(BaseModel): + Qualification: QualificationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkersWithQualificationTypeResponseTypeDef(BaseModel): + NextToken: str + NumResults: int + Qualifications: List[QualificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReviewPolicyTypeDef(BaseModel): + PolicyName: str + Parameters: Optional[Sequence[PolicyParameterTypeDef]] = None + +class ListHITsForQualificationTypeResponsePaginatorTypeDef(BaseModel): + NextToken: str + NumResults: int + HITs: List[HITPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListHITsResponsePaginatorTypeDef(BaseModel): + NextToken: str + NumResults: int + HITs: List[HITPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReviewableHITsResponsePaginatorTypeDef(BaseModel): + NextToken: str + NumResults: int + HITs: List[HITPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHITResponseTypeDef(BaseModel): + HIT: HITTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHITWithHITTypeResponseTypeDef(BaseModel): + HIT: HITTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssignmentResponseTypeDef(BaseModel): + Assignment: AssignmentTypeDef + HIT: HITTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetHITResponseTypeDef(BaseModel): + HIT: HITTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListHITsForQualificationTypeResponseTypeDef(BaseModel): + NextToken: str + NumResults: int + HITs: List[HITTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListHITsResponseTypeDef(BaseModel): + NextToken: str + NumResults: int + HITs: List[HITTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReviewableHITsResponseTypeDef(BaseModel): + NextToken: str + NumResults: int + HITs: List[HITTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHITRequestRequestTypeDef(BaseModel): + LifetimeInSeconds: int + AssignmentDurationInSeconds: int + Reward: str + Title: str + Description: str + MaxAssignments: Optional[int] = None + AutoApprovalDelayInSeconds: Optional[int] = None + Keywords: Optional[str] = None + Question: Optional[str] = None + RequesterAnnotation: Optional[str] = None + QualificationRequirements: Optional[Sequence[QualificationRequirementTypeDef]] = None + UniqueRequestToken: Optional[str] = None + AssignmentReviewPolicy: Optional[ReviewPolicyTypeDef] = None + HITReviewPolicy: Optional[ReviewPolicyTypeDef] = None + HITLayoutId: Optional[str] = None + HITLayoutParameters: Optional[Sequence[HITLayoutParameterTypeDef]] = None + +class CreateHITWithHITTypeRequestRequestTypeDef(BaseModel): + HITTypeId: str + LifetimeInSeconds: int + MaxAssignments: Optional[int] = None + Question: Optional[str] = None + RequesterAnnotation: Optional[str] = None + UniqueRequestToken: Optional[str] = None + AssignmentReviewPolicy: Optional[ReviewPolicyTypeDef] = None + HITReviewPolicy: Optional[ReviewPolicyTypeDef] = None + HITLayoutId: Optional[str] = None + HITLayoutParameters: Optional[Sequence[HITLayoutParameterTypeDef]] = None + +class ListReviewPolicyResultsForHITResponseTypeDef(BaseModel): + HITId: str + AssignmentReviewPolicy: ReviewPolicyTypeDef + HITReviewPolicy: ReviewPolicyTypeDef + AssignmentReviewReport: ReviewReportTypeDef + HITReviewReport: ReviewReportTypeDef + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mturk_constants.py b/aws_resource_validator/pydantic_models/mturk_constants.py new file mode 100644 index 00000000..37cbe118 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mturk_constants.py @@ -0,0 +1,441 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssignmentStatusType = Literal["Approved", "Rejected", "Submitted"] +ComparatorType = Literal["DoesNotExist", + "EqualTo", + "Exists", + "GreaterThan", + "GreaterThanOrEqualTo", + "In", + "LessThan", + "LessThanOrEqualTo", + "NotEqualTo", + "NotIn",] +EventTypeType = Literal["AssignmentAbandoned", + "AssignmentAccepted", + "AssignmentApproved", + "AssignmentRejected", + "AssignmentReturned", + "AssignmentSubmitted", + "HITCreated", + "HITDisposed", + "HITExpired", + "HITExtended", + "HITReviewable", + "Ping",] +HITAccessActionsType = Literal["Accept", "DiscoverPreviewAndAccept", "PreviewAndAccept"] +HITReviewStatusType = Literal["MarkedForReview", "NotReviewed", "ReviewedAppropriate", "ReviewedInappropriate"] +HITStatusType = Literal["Assignable", "Disposed", "Reviewable", "Reviewing", "Unassignable"] +ListAssignmentsForHITPaginatorName = Literal["list_assignments_for_hit"] +ListBonusPaymentsPaginatorName = Literal["list_bonus_payments"] +ListHITsForQualificationTypePaginatorName = Literal["list_hits_for_qualification_type"] +ListHITsPaginatorName = Literal["list_hits"] +ListQualificationRequestsPaginatorName = Literal["list_qualification_requests"] +ListQualificationTypesPaginatorName = Literal["list_qualification_types"] +ListReviewableHITsPaginatorName = Literal["list_reviewable_hits"] +ListWorkerBlocksPaginatorName = Literal["list_worker_blocks"] +ListWorkersWithQualificationTypePaginatorName = Literal["list_workers_with_qualification_type"] +NotificationTransportType = Literal["Email", "SNS", "SQS"] +NotifyWorkersFailureCodeType = Literal["HardFailure", "SoftFailure"] +QualificationStatusType = Literal["Granted", "Revoked"] +QualificationTypeStatusType = Literal["Active", "Inactive"] +ReviewActionStatusType = Literal["Cancelled", "Failed", "Intended", "Succeeded"] +ReviewPolicyLevelType = Literal["Assignment", "HIT"] +ReviewableHITStatusType = Literal["Reviewable", "Reviewing"] +MTurkServiceName = Literal["mturk"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_assignments_for_hit", + "list_bonus_payments", + "list_hits", + "list_hits_for_qualification_type", + "list_qualification_requests", + "list_qualification_types", + "list_reviewable_hits", + "list_worker_blocks", + "list_workers_with_qualification_type",] +RegionName = Literal["us-east-1"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/mwaa_classes.py b/aws_resource_validator/pydantic_models/mwaa_classes.py new file mode 100644 index 00000000..5b4ace60 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mwaa_classes.py @@ -0,0 +1,241 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.mwaa_constants import * + +class CreateCliTokenRequestRequestTypeDef(BaseModel): + Name: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class NetworkConfigurationTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class CreateWebLoginTokenRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteEnvironmentInputRequestTypeDef(BaseModel): + Name: str + +class DimensionTypeDef(BaseModel): + Name: str + Value: str + +class NetworkConfigurationOutputTypeDef(BaseModel): + SubnetIds: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class GetEnvironmentInputRequestTypeDef(BaseModel): + Name: str + +class UpdateErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEnvironmentsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class ModuleLoggingConfigurationInputTypeDef(BaseModel): + Enabled: bool + LogLevel: LoggingLevelType + +class ModuleLoggingConfigurationTypeDef(BaseModel): + Enabled: Optional[bool] = None + LogLevel: Optional[LoggingLevelType] = None + CloudWatchLogGroupArn: Optional[str] = None + +class StatisticSetTypeDef(BaseModel): + SampleCount: Optional[int] = None + Sum: Optional[float] = None + Minimum: Optional[float] = None + Maximum: Optional[float] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + tagKeys: Sequence[str] + +class UpdateNetworkConfigurationInputTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + +class CreateCliTokenResponseTypeDef(BaseModel): + CliToken: str + WebServerHostname: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWebLoginTokenResponseTypeDef(BaseModel): + WebToken: str + WebServerHostname: str + IamIdentity: str + AirflowIdentity: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsOutputTypeDef(BaseModel): + Environments: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentOutputTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class LastUpdateTypeDef(BaseModel): + Status: Optional[UpdateStatusType] = None + CreatedAt: Optional[datetime] = None + Error: Optional[UpdateErrorTypeDef] = None + Source: Optional[str] = None + +class ListEnvironmentsInputListEnvironmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LoggingConfigurationInputTypeDef(BaseModel): + DagProcessingLogs: Optional[ModuleLoggingConfigurationInputTypeDef] = None + SchedulerLogs: Optional[ModuleLoggingConfigurationInputTypeDef] = None + WebserverLogs: Optional[ModuleLoggingConfigurationInputTypeDef] = None + WorkerLogs: Optional[ModuleLoggingConfigurationInputTypeDef] = None + TaskLogs: Optional[ModuleLoggingConfigurationInputTypeDef] = None + +class LoggingConfigurationTypeDef(BaseModel): + DagProcessingLogs: Optional[ModuleLoggingConfigurationTypeDef] = None + SchedulerLogs: Optional[ModuleLoggingConfigurationTypeDef] = None + WebserverLogs: Optional[ModuleLoggingConfigurationTypeDef] = None + WorkerLogs: Optional[ModuleLoggingConfigurationTypeDef] = None + TaskLogs: Optional[ModuleLoggingConfigurationTypeDef] = None + +class MetricDatumTypeDef(BaseModel): + MetricName: str + Timestamp: TimestampTypeDef + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + Value: Optional[float] = None + Unit: Optional[UnitType] = None + StatisticValues: Optional[StatisticSetTypeDef] = None + +class CreateEnvironmentInputRequestTypeDef(BaseModel): + Name: str + ExecutionRoleArn: str + SourceBucketArn: str + DagS3Path: str + NetworkConfiguration: NetworkConfigurationTypeDef + PluginsS3Path: Optional[str] = None + PluginsS3ObjectVersion: Optional[str] = None + RequirementsS3Path: Optional[str] = None + RequirementsS3ObjectVersion: Optional[str] = None + StartupScriptS3Path: Optional[str] = None + StartupScriptS3ObjectVersion: Optional[str] = None + AirflowConfigurationOptions: Optional[Mapping[str, str]] = None + EnvironmentClass: Optional[str] = None + MaxWorkers: Optional[int] = None + KmsKey: Optional[str] = None + AirflowVersion: Optional[str] = None + LoggingConfiguration: Optional[LoggingConfigurationInputTypeDef] = None + WeeklyMaintenanceWindowStart: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + WebserverAccessMode: Optional[WebserverAccessModeType] = None + MinWorkers: Optional[int] = None + Schedulers: Optional[int] = None + EndpointManagement: Optional[EndpointManagementType] = None + MinWebservers: Optional[int] = None + MaxWebservers: Optional[int] = None + +class UpdateEnvironmentInputRequestTypeDef(BaseModel): + Name: str + ExecutionRoleArn: Optional[str] = None + AirflowVersion: Optional[str] = None + SourceBucketArn: Optional[str] = None + DagS3Path: Optional[str] = None + PluginsS3Path: Optional[str] = None + PluginsS3ObjectVersion: Optional[str] = None + RequirementsS3Path: Optional[str] = None + RequirementsS3ObjectVersion: Optional[str] = None + StartupScriptS3Path: Optional[str] = None + StartupScriptS3ObjectVersion: Optional[str] = None + AirflowConfigurationOptions: Optional[Mapping[str, str]] = None + EnvironmentClass: Optional[str] = None + MaxWorkers: Optional[int] = None + NetworkConfiguration: Optional[UpdateNetworkConfigurationInputTypeDef] = None + LoggingConfiguration: Optional[LoggingConfigurationInputTypeDef] = None + WeeklyMaintenanceWindowStart: Optional[str] = None + WebserverAccessMode: Optional[WebserverAccessModeType] = None + MinWorkers: Optional[int] = None + Schedulers: Optional[int] = None + MinWebservers: Optional[int] = None + MaxWebservers: Optional[int] = None + +class EnvironmentTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[EnvironmentStatusType] = None + Arn: Optional[str] = None + CreatedAt: Optional[datetime] = None + WebserverUrl: Optional[str] = None + ExecutionRoleArn: Optional[str] = None + ServiceRoleArn: Optional[str] = None + KmsKey: Optional[str] = None + AirflowVersion: Optional[str] = None + SourceBucketArn: Optional[str] = None + DagS3Path: Optional[str] = None + PluginsS3Path: Optional[str] = None + PluginsS3ObjectVersion: Optional[str] = None + RequirementsS3Path: Optional[str] = None + RequirementsS3ObjectVersion: Optional[str] = None + StartupScriptS3Path: Optional[str] = None + StartupScriptS3ObjectVersion: Optional[str] = None + AirflowConfigurationOptions: Optional[Dict[str, str]] = None + EnvironmentClass: Optional[str] = None + MaxWorkers: Optional[int] = None + NetworkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + LoggingConfiguration: Optional[LoggingConfigurationTypeDef] = None + LastUpdate: Optional[LastUpdateTypeDef] = None + WeeklyMaintenanceWindowStart: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + WebserverAccessMode: Optional[WebserverAccessModeType] = None + MinWorkers: Optional[int] = None + Schedulers: Optional[int] = None + WebserverVpcEndpointService: Optional[str] = None + DatabaseVpcEndpointService: Optional[str] = None + CeleryExecutorQueue: Optional[str] = None + EndpointManagement: Optional[EndpointManagementType] = None + MinWebservers: Optional[int] = None + MaxWebservers: Optional[int] = None + +class PublishMetricsInputRequestTypeDef(BaseModel): + EnvironmentName: str + MetricData: Sequence[MetricDatumTypeDef] + +class GetEnvironmentOutputTypeDef(BaseModel): + Environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/mwaa_constants.py b/aws_resource_validator/pydantic_models/mwaa_constants.py new file mode 100644 index 00000000..96976055 --- /dev/null +++ b/aws_resource_validator/pydantic_models/mwaa_constants.py @@ -0,0 +1,459 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EndpointManagementType = Literal["CUSTOMER", "SERVICE"] +EnvironmentStatusType = Literal["AVAILABLE", + "CREATE_FAILED", + "CREATING", + "CREATING_SNAPSHOT", + "DELETED", + "DELETING", + "MAINTENANCE", + "PENDING", + "ROLLING_BACK", + "UNAVAILABLE", + "UPDATE_FAILED", + "UPDATING",] +ListEnvironmentsPaginatorName = Literal["list_environments"] +LoggingLevelType = Literal["CRITICAL", "DEBUG", "ERROR", "INFO", "WARNING"] +UnitType = Literal["Bits", + "Bits/Second", + "Bytes", + "Bytes/Second", + "Count", + "Count/Second", + "Gigabits", + "Gigabits/Second", + "Gigabytes", + "Gigabytes/Second", + "Kilobits", + "Kilobits/Second", + "Kilobytes", + "Kilobytes/Second", + "Megabits", + "Megabits/Second", + "Megabytes", + "Megabytes/Second", + "Microseconds", + "Milliseconds", + "None", + "Percent", + "Seconds", + "Terabits", + "Terabits/Second", + "Terabytes", + "Terabytes/Second",] +UpdateStatusType = Literal["FAILED", "PENDING", "SUCCESS"] +WebserverAccessModeType = Literal["PRIVATE_ONLY", "PUBLIC_ONLY"] +MWAAServiceName = Literal["mwaa"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_environments"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +NetworkConfigurationUnionTypeDef = Union[ 'NetworkConfigurationTypeDef', 'NetworkConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/neptune_classes.py b/aws_resource_validator/pydantic_models/neptune_classes.py new file mode 100644 index 00000000..6eb8ffe4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/neptune_classes.py @@ -0,0 +1,1352 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.neptune_constants import * + +class AddRoleToDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + RoleArn: str + FeatureName: Optional[str] = None + +class AddSourceIdentifierToSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SourceIdentifier: str + +class EventSubscriptionTypeDef(BaseModel): + CustomerAwsId: Optional[str] = None + CustSubscriptionId: Optional[str] = None + SnsTopicArn: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + SourceType: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + EventCategoriesList: Optional[List[str]] = None + Enabled: Optional[bool] = None + EventSubscriptionArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ApplyPendingMaintenanceActionMessageRequestTypeDef(BaseModel): + ResourceIdentifier: str + ApplyAction: str + OptInType: str + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class CharacterSetTypeDef(BaseModel): + CharacterSetName: Optional[str] = None + CharacterSetDescription: Optional[str] = None + +class CloudwatchLogsExportConfigurationTypeDef(BaseModel): + EnableLogTypes: Optional[Sequence[str]] = None + DisableLogTypes: Optional[Sequence[str]] = None + +class PendingCloudwatchLogsExportsTypeDef(BaseModel): + LogTypesToEnable: Optional[List[str]] = None + LogTypesToDisable: Optional[List[str]] = None + +class DBClusterParameterGroupTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + DBClusterParameterGroupArn: Optional[str] = None + +class DBClusterSnapshotTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + DBClusterSnapshotIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[datetime] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + PercentProgress: Optional[int] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DBClusterSnapshotArn: Optional[str] = None + SourceDBClusterSnapshotArn: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + StorageType: Optional[str] = None + +class DBParameterGroupTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + DBParameterGroupArn: Optional[str] = None + +class ServerlessV2ScalingConfigurationTypeDef(BaseModel): + MinCapacity: Optional[float] = None + MaxCapacity: Optional[float] = None + +class CreateGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + SourceDBClusterIdentifier: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DeletionProtection: Optional[bool] = None + StorageEncrypted: Optional[bool] = None + +class DBClusterEndpointTypeDef(BaseModel): + DBClusterEndpointIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBClusterEndpointResourceIdentifier: Optional[str] = None + Endpoint: Optional[str] = None + Status: Optional[str] = None + EndpointType: Optional[str] = None + CustomEndpointType: Optional[str] = None + StaticMembers: Optional[List[str]] = None + ExcludedMembers: Optional[List[str]] = None + DBClusterEndpointArn: Optional[str] = None + +class DBClusterMemberTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + IsClusterWriter: Optional[bool] = None + DBClusterParameterGroupStatus: Optional[str] = None + PromotionTier: Optional[int] = None + +class DBClusterOptionGroupStatusTypeDef(BaseModel): + DBClusterOptionGroupName: Optional[str] = None + Status: Optional[str] = None + +class ParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + ApplyType: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + ApplyMethod: Optional[ApplyMethodType] = None + +class DBClusterRoleTypeDef(BaseModel): + RoleArn: Optional[str] = None + Status: Optional[str] = None + FeatureName: Optional[str] = None + +class DBClusterSnapshotAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[str]] = None + +class ServerlessV2ScalingConfigurationInfoTypeDef(BaseModel): + MinCapacity: Optional[float] = None + MaxCapacity: Optional[float] = None + +class VpcSecurityGroupMembershipTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class TimezoneTypeDef(BaseModel): + TimezoneName: Optional[str] = None + +class UpgradeTargetTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Description: Optional[str] = None + AutoUpgrade: Optional[bool] = None + IsMajorVersionUpgrade: Optional[bool] = None + SupportsGlobalDatabases: Optional[bool] = None + +class DBInstanceStatusInfoTypeDef(BaseModel): + StatusType: Optional[str] = None + Normal: Optional[bool] = None + Status: Optional[str] = None + Message: Optional[str] = None + +class DBParameterGroupStatusTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + +class DBSecurityGroupMembershipTypeDef(BaseModel): + DBSecurityGroupName: Optional[str] = None + Status: Optional[str] = None + +class DomainMembershipTypeDef(BaseModel): + Domain: Optional[str] = None + Status: Optional[str] = None + FQDN: Optional[str] = None + IAMRoleName: Optional[str] = None + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + HostedZoneId: Optional[str] = None + +class OptionGroupMembershipTypeDef(BaseModel): + OptionGroupName: Optional[str] = None + Status: Optional[str] = None + +class DeleteDBClusterEndpointMessageRequestTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + +class DeleteDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SkipFinalSnapshot: Optional[bool] = None + FinalDBSnapshotIdentifier: Optional[str] = None + +class DeleteDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + +class DeleteDBClusterSnapshotMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + +class DeleteDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + SkipFinalSnapshot: Optional[bool] = None + FinalDBSnapshotIdentifier: Optional[str] = None + +class DeleteDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + +class DeleteDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + +class DeleteEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + +class DeleteGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + +class FilterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeDBClusterSnapshotAttributesMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeGlobalClustersMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeValidDBInstanceModificationsMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + +class DoubleRangeTypeDef(BaseModel): + From: Optional[float] = None + To: Optional[float] = None + +class EventCategoriesMapTypeDef(BaseModel): + SourceType: Optional[str] = None + EventCategories: Optional[List[str]] = None + +class EventTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + EventCategories: Optional[List[str]] = None + Date: Optional[datetime] = None + SourceArn: Optional[str] = None + +class FailoverDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + TargetDBInstanceIdentifier: Optional[str] = None + +class FailoverGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + TargetDbClusterIdentifier: str + +class GlobalClusterMemberTypeDef(BaseModel): + DBClusterArn: Optional[str] = None + Readers: Optional[List[str]] = None + IsWriter: Optional[bool] = None + +class ModifyDBClusterEndpointMessageRequestTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + EndpointType: Optional[str] = None + StaticMembers: Optional[Sequence[str]] = None + ExcludedMembers: Optional[Sequence[str]] = None + +class ModifyDBClusterSnapshotAttributeMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + AttributeName: str + ValuesToAdd: Optional[Sequence[str]] = None + ValuesToRemove: Optional[Sequence[str]] = None + +class ModifyDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + SubnetIds: Sequence[str] + DBSubnetGroupDescription: Optional[str] = None + +class ModifyEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: Optional[str] = None + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class ModifyGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + NewGlobalClusterIdentifier: Optional[str] = None + DeletionProtection: Optional[bool] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + +class PendingMaintenanceActionTypeDef(BaseModel): + Action: Optional[str] = None + AutoAppliedAfterDate: Optional[datetime] = None + ForcedApplyDate: Optional[datetime] = None + OptInStatus: Optional[str] = None + CurrentApplyDate: Optional[datetime] = None + Description: Optional[str] = None + +class PromoteReadReplicaDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class RangeTypeDef(BaseModel): + From: Optional[int] = None + To: Optional[int] = None + Step: Optional[int] = None + +class RebootDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + ForceFailover: Optional[bool] = None + +class RemoveFromGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + DbClusterIdentifier: str + +class RemoveRoleFromDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + RoleArn: str + FeatureName: Optional[str] = None + +class RemoveSourceIdentifierFromSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SourceIdentifier: str + +class RemoveTagsFromResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + TagKeys: Sequence[str] + +class StartDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class StopDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class AddSourceIdentifierToSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterEndpointOutputTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + DBClusterIdentifier: str + DBClusterEndpointResourceIdentifier: str + Endpoint: str + Status: str + EndpointType: str + CustomEndpointType: str + StaticMembers: List[str] + ExcludedMembers: List[str] + DBClusterEndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupNameMessageTypeDef(BaseModel): + DBClusterParameterGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBParameterGroupNameMessageTypeDef(BaseModel): + DBParameterGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterEndpointOutputTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + DBClusterIdentifier: str + DBClusterEndpointResourceIdentifier: str + Endpoint: str + Status: str + EndpointType: str + CustomEndpointType: str + StaticMembers: List[str] + ExcludedMembers: List[str] + DBClusterEndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EventSubscriptionsMessageTypeDef(BaseModel): + Marker: str + EventSubscriptionsList: List[EventSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterEndpointOutputTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + DBClusterIdentifier: str + DBClusterEndpointResourceIdentifier: str + Endpoint: str + Status: str + EndpointType: str + CustomEndpointType: str + StaticMembers: List[str] + ExcludedMembers: List[str] + DBClusterEndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveSourceIdentifierFromSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsToResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Tags: Sequence[TagTypeDef] + +class CopyDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + SourceDBClusterParameterGroupIdentifier: str + TargetDBClusterParameterGroupIdentifier: str + TargetDBClusterParameterGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CopyDBClusterSnapshotMessageRequestTypeDef(BaseModel): + SourceDBClusterSnapshotIdentifier: str + TargetDBClusterSnapshotIdentifier: str + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + CopyTags: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SourceRegion: Optional[str] = None + +class CopyDBParameterGroupMessageRequestTypeDef(BaseModel): + SourceDBParameterGroupIdentifier: str + TargetDBParameterGroupIdentifier: str + TargetDBParameterGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBClusterEndpointMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + DBClusterEndpointIdentifier: str + EndpointType: str + StaticMembers: Optional[Sequence[str]] = None + ExcludedMembers: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + DBParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBClusterSnapshotMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + DBClusterIdentifier: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBInstanceClass: str + Engine: str + DBClusterIdentifier: str + DBName: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUsername: Optional[str] = None + MasterUserPassword: Optional[str] = None + DBSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + DBParameterGroupName: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + Port: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + CharacterSetName: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + TdeCredentialPassword: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + Domain: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + PromotionTier: Optional[int] = None + Timezone: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DeletionProtection: Optional[bool] = None + +class CreateDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + DBParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + DBSubnetGroupDescription: str + SubnetIds: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: str + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + SourceIds: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagListMessageTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OrderableDBInstanceOptionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + MultiAZCapable: Optional[bool] = None + ReadReplicaCapable: Optional[bool] = None + Vpc: Optional[bool] = None + SupportsStorageEncryption: Optional[bool] = None + StorageType: Optional[str] = None + SupportsIops: Optional[bool] = None + SupportsEnhancedMonitoring: Optional[bool] = None + SupportsIAMDatabaseAuthentication: Optional[bool] = None + SupportsPerformanceInsights: Optional[bool] = None + MinStorageSize: Optional[int] = None + MaxStorageSize: Optional[int] = None + MinIopsPerDbInstance: Optional[int] = None + MaxIopsPerDbInstance: Optional[int] = None + MinIopsPerGib: Optional[float] = None + MaxIopsPerGib: Optional[float] = None + SupportsGlobalDatabases: Optional[bool] = None + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + SubnetStatus: Optional[str] = None + +class ModifyDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + AllocatedStorage: Optional[int] = None + DBInstanceClass: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + DBSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + ApplyImmediately: Optional[bool] = None + MasterUserPassword: Optional[str] = None + DBParameterGroupName: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + NewDBInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + TdeCredentialPassword: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + Domain: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + DBPortNumber: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + MonitoringRoleArn: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + PromotionTier: Optional[int] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + CloudwatchLogsExportConfiguration: Optional[CloudwatchLogsExportConfigurationTypeDef] = None + DeletionProtection: Optional[bool] = None + +class ClusterPendingModifiedValuesTypeDef(BaseModel): + PendingCloudwatchLogsExports: Optional[PendingCloudwatchLogsExportsTypeDef] = None + DBClusterIdentifier: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + EngineVersion: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + StorageType: Optional[str] = None + AllocatedStorage: Optional[int] = None + Iops: Optional[int] = None + +class PendingModifiedValuesTypeDef(BaseModel): + DBInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUserPassword: Optional[str] = None + Port: Optional[int] = None + BackupRetentionPeriod: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + DBInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + PendingCloudwatchLogsExports: Optional[PendingCloudwatchLogsExportsTypeDef] = None + +class CopyDBClusterParameterGroupResultTypeDef(BaseModel): + DBClusterParameterGroup: DBClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterParameterGroupResultTypeDef(BaseModel): + DBClusterParameterGroup: DBClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupsMessageTypeDef(BaseModel): + Marker: str + DBClusterParameterGroups: List[DBClusterParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CopyDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterSnapshotMessageTypeDef(BaseModel): + Marker: str + DBClusterSnapshots: List[DBClusterSnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyDBParameterGroupResultTypeDef(BaseModel): + DBParameterGroup: DBParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBParameterGroupResultTypeDef(BaseModel): + DBParameterGroup: DBParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBParameterGroupsMessageTypeDef(BaseModel): + Marker: str + DBParameterGroups: List[DBParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + Engine: str + AvailabilityZones: Optional[Sequence[str]] = None + BackupRetentionPeriod: Optional[int] = None + CharacterSetName: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + DatabaseName: Optional[str] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + DBSubnetGroupName: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + MasterUserPassword: Optional[str] = None + OptionGroupName: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSourceIdentifier: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DeletionProtection: Optional[bool] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + GlobalClusterIdentifier: Optional[str] = None + StorageType: Optional[str] = None + SourceRegion: Optional[str] = None + +class ModifyDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + NewDBClusterIdentifier: Optional[str] = None + ApplyImmediately: Optional[bool] = None + BackupRetentionPeriod: Optional[int] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Port: Optional[int] = None + MasterUserPassword: Optional[str] = None + OptionGroupName: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + CloudwatchLogsExportConfiguration: Optional[CloudwatchLogsExportConfigurationTypeDef] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + DBInstanceParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + StorageType: Optional[str] = None + +class RestoreDBClusterFromSnapshotMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SnapshotIdentifier: str + Engine: str + AvailabilityZones: Optional[Sequence[str]] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + DBSubnetGroupName: Optional[str] = None + DatabaseName: Optional[str] = None + OptionGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DBClusterParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + StorageType: Optional[str] = None + +class DBClusterEndpointMessageTypeDef(BaseModel): + Marker: str + DBClusterEndpoints: List[DBClusterEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupDetailsTypeDef(BaseModel): + Parameters: List[ParameterTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBParameterGroupDetailsTypeDef(BaseModel): + Parameters: List[ParameterTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class EngineDefaultsTypeDef(BaseModel): + DBParameterGroupFamily: Optional[str] = None + Marker: Optional[str] = None + Parameters: Optional[List[ParameterTypeDef]] = None + +class ModifyDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + Parameters: Sequence[ParameterTypeDef] + +class ModifyDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + Parameters: Sequence[ParameterTypeDef] + +class ResetDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + ResetAllParameters: Optional[bool] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + +class ResetDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + ResetAllParameters: Optional[bool] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + +class DBClusterSnapshotAttributesResultTypeDef(BaseModel): + DBClusterSnapshotIdentifier: Optional[str] = None + DBClusterSnapshotAttributes: Optional[List[DBClusterSnapshotAttributeTypeDef]] = None + +class DBEngineVersionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + DBEngineDescription: Optional[str] = None + DBEngineVersionDescription: Optional[str] = None + DefaultCharacterSet: Optional[CharacterSetTypeDef] = None + SupportedCharacterSets: Optional[List[CharacterSetTypeDef]] = None + ValidUpgradeTarget: Optional[List[UpgradeTargetTypeDef]] = None + SupportedTimezones: Optional[List[TimezoneTypeDef]] = None + ExportableLogTypes: Optional[List[str]] = None + SupportsLogExportsToCloudwatchLogs: Optional[bool] = None + SupportsReadReplica: Optional[bool] = None + SupportsGlobalDatabases: Optional[bool] = None + +class DescribeDBClusterEndpointsMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterEndpointIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterParameterGroupsMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterParametersMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterSnapshotsMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + +class DescribeDBClustersMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBEngineVersionsMessageRequestTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + DefaultOnly: Optional[bool] = None + ListSupportedCharacterSets: Optional[bool] = None + ListSupportedTimezones: Optional[bool] = None + +class DescribeDBInstancesMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBParameterGroupsMessageRequestTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBSubnetGroupsMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEngineDefaultClusterParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEngineDefaultParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventCategoriesMessageRequestTypeDef(BaseModel): + SourceType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeEventSubscriptionsMessageRequestTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeOrderableDBInstanceOptionsMessageRequestTypeDef(BaseModel): + Engine: str + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + Vpc: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribePendingMaintenanceActionsMessageRequestTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class ListTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeDBClusterEndpointsMessageDescribeDBClusterEndpointsPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterEndpointIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterParameterGroupsMessageDescribeDBClusterParameterGroupsPaginateTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterParametersMessageDescribeDBClusterParametersPaginateTypeDef(BaseModel): + DBClusterParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterSnapshotsMessageDescribeDBClusterSnapshotsPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClustersMessageDescribeDBClustersPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBEngineVersionsMessageDescribeDBEngineVersionsPaginateTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DefaultOnly: Optional[bool] = None + ListSupportedCharacterSets: Optional[bool] = None + ListSupportedTimezones: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBInstancesMessageDescribeDBInstancesPaginateTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBParameterGroupsMessageDescribeDBParameterGroupsPaginateTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBParametersMessageDescribeDBParametersPaginateTypeDef(BaseModel): + DBParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBSubnetGroupsMessageDescribeDBSubnetGroupsPaginateTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEngineDefaultParametersMessageDescribeEngineDefaultParametersPaginateTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventSubscriptionsMessageDescribeEventSubscriptionsPaginateTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGlobalClustersMessageDescribeGlobalClustersPaginateTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrderableDBInstanceOptionsMessageDescribeOrderableDBInstanceOptionsPaginateTypeDef(BaseModel): + Engine: str + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + Vpc: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBInstancesMessageDBInstanceAvailableWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBInstancesMessageDBInstanceDeletedWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageRequestTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class RestoreDBClusterToPointInTimeMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SourceDBClusterIdentifier: str + RestoreType: Optional[str] = None + RestoreToTime: Optional[TimestampTypeDef] = None + UseLatestRestorableTime: Optional[bool] = None + Port: Optional[int] = None + DBSubnetGroupName: Optional[str] = None + OptionGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DBClusterParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + StorageType: Optional[str] = None + +class EventCategoriesMessageTypeDef(BaseModel): + EventCategoriesMapList: List[EventCategoriesMapTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EventsMessageTypeDef(BaseModel): + Marker: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalClusterTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + GlobalClusterResourceId: Optional[str] = None + GlobalClusterArn: Optional[str] = None + Status: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + StorageEncrypted: Optional[bool] = None + DeletionProtection: Optional[bool] = None + GlobalClusterMembers: Optional[List[GlobalClusterMemberTypeDef]] = None + +class ResourcePendingMaintenanceActionsTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + PendingMaintenanceActionDetails: Optional[List[PendingMaintenanceActionTypeDef]] = None + +class ValidStorageOptionsTypeDef(BaseModel): + StorageType: Optional[str] = None + StorageSize: Optional[List[RangeTypeDef]] = None + ProvisionedIops: Optional[List[RangeTypeDef]] = None + IopsToStorageRatio: Optional[List[DoubleRangeTypeDef]] = None + +class OrderableDBInstanceOptionsMessageTypeDef(BaseModel): + OrderableDBInstanceOptions: List[OrderableDBInstanceOptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBSubnetGroupTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + DBSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + DBSubnetGroupArn: Optional[str] = None + +class DBClusterTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AvailabilityZones: Optional[List[str]] = None + BackupRetentionPeriod: Optional[int] = None + CharacterSetName: Optional[str] = None + DatabaseName: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBClusterParameterGroup: Optional[str] = None + DBSubnetGroup: Optional[str] = None + Status: Optional[str] = None + PercentProgress: Optional[str] = None + EarliestRestorableTime: Optional[datetime] = None + Endpoint: Optional[str] = None + ReaderEndpoint: Optional[str] = None + MultiAZ: Optional[bool] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + LatestRestorableTime: Optional[datetime] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + DBClusterOptionGroupMemberships: Optional[List[DBClusterOptionGroupStatusTypeDef]] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSourceIdentifier: Optional[str] = None + ReadReplicaIdentifiers: Optional[List[str]] = None + DBClusterMembers: Optional[List[DBClusterMemberTypeDef]] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + HostedZoneId: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterResourceId: Optional[str] = None + DBClusterArn: Optional[str] = None + AssociatedRoles: Optional[List[DBClusterRoleTypeDef]] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + CloneGroupId: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + CopyTagsToSnapshot: Optional[bool] = None + EnabledCloudwatchLogsExports: Optional[List[str]] = None + PendingModifiedValues: Optional[ClusterPendingModifiedValuesTypeDef] = None + DeletionProtection: Optional[bool] = None + CrossAccountClone: Optional[bool] = None + AutomaticRestartTime: Optional[datetime] = None + ServerlessV2ScalingConfiguration: Optional[ ServerlessV2ScalingConfigurationInfoTypeDef ] = None + GlobalClusterIdentifier: Optional[str] = None + IOOptimizedNextAllowedModificationTime: Optional[datetime] = None + StorageType: Optional[str] = None + +class DescribeEngineDefaultClusterParametersResultTypeDef(BaseModel): + EngineDefaults: EngineDefaultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEngineDefaultParametersResultTypeDef(BaseModel): + EngineDefaults: EngineDefaultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBClusterSnapshotAttributesResultTypeDef(BaseModel): + DBClusterSnapshotAttributesResult: DBClusterSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterSnapshotAttributeResultTypeDef(BaseModel): + DBClusterSnapshotAttributesResult: DBClusterSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBEngineVersionMessageTypeDef(BaseModel): + Marker: str + DBEngineVersions: List[DBEngineVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalClustersMessageTypeDef(BaseModel): + Marker: str + GlobalClusters: List[GlobalClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFromGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplyPendingMaintenanceActionResultTypeDef(BaseModel): + ResourcePendingMaintenanceActions: ResourcePendingMaintenanceActionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PendingMaintenanceActionsMessageTypeDef(BaseModel): + PendingMaintenanceActions: List[ResourcePendingMaintenanceActionsTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ValidDBInstanceModificationsMessageTypeDef(BaseModel): + Storage: Optional[List[ValidStorageOptionsTypeDef]] = None + +class CreateDBSubnetGroupResultTypeDef(BaseModel): + DBSubnetGroup: DBSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + Engine: Optional[str] = None + DBInstanceStatus: Optional[str] = None + MasterUsername: Optional[str] = None + DBName: Optional[str] = None + Endpoint: Optional[EndpointTypeDef] = None + AllocatedStorage: Optional[int] = None + InstanceCreateTime: Optional[datetime] = None + PreferredBackupWindow: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + DBSecurityGroups: Optional[List[DBSecurityGroupMembershipTypeDef]] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + DBParameterGroups: Optional[List[DBParameterGroupStatusTypeDef]] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroup: Optional[DBSubnetGroupTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[PendingModifiedValuesTypeDef] = None + LatestRestorableTime: Optional[datetime] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + ReadReplicaSourceDBInstanceIdentifier: Optional[str] = None + ReadReplicaDBInstanceIdentifiers: Optional[List[str]] = None + ReadReplicaDBClusterIdentifiers: Optional[List[str]] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupMemberships: Optional[List[OptionGroupMembershipTypeDef]] = None + CharacterSetName: Optional[str] = None + SecondaryAvailabilityZone: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + StatusInfos: Optional[List[DBInstanceStatusInfoTypeDef]] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + DbInstancePort: Optional[int] = None + DBClusterIdentifier: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbiResourceId: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + DomainMemberships: Optional[List[DomainMembershipTypeDef]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + EnhancedMonitoringResourceArn: Optional[str] = None + MonitoringRoleArn: Optional[str] = None + PromotionTier: Optional[int] = None + DBInstanceArn: Optional[str] = None + Timezone: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + EnabledCloudwatchLogsExports: Optional[List[str]] = None + DeletionProtection: Optional[bool] = None + +class DBSubnetGroupMessageTypeDef(BaseModel): + Marker: str + DBSubnetGroups: List[DBSubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBSubnetGroupResultTypeDef(BaseModel): + DBSubnetGroup: DBSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterMessageTypeDef(BaseModel): + Marker: str + DBClusters: List[DBClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PromoteReadReplicaDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterFromSnapshotResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterToPointInTimeResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeValidDBInstanceModificationsResultTypeDef(BaseModel): + ValidDBInstanceModificationsMessage: ValidDBInstanceModificationsMessageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceMessageTypeDef(BaseModel): + Marker: str + DBInstances: List[DBInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/neptune_constants.py b/aws_resource_validator/pydantic_models/neptune_constants.py new file mode 100644 index 00000000..b4a9b6d3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/neptune_constants.py @@ -0,0 +1,459 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplyMethodType = Literal["immediate", "pending-reboot"] +DBInstanceAvailableWaiterName = Literal["db_instance_available"] +DBInstanceDeletedWaiterName = Literal["db_instance_deleted"] +DescribeDBClusterEndpointsPaginatorName = Literal["describe_db_cluster_endpoints"] +DescribeDBClusterParameterGroupsPaginatorName = Literal["describe_db_cluster_parameter_groups"] +DescribeDBClusterParametersPaginatorName = Literal["describe_db_cluster_parameters"] +DescribeDBClusterSnapshotsPaginatorName = Literal["describe_db_cluster_snapshots"] +DescribeDBClustersPaginatorName = Literal["describe_db_clusters"] +DescribeDBEngineVersionsPaginatorName = Literal["describe_db_engine_versions"] +DescribeDBInstancesPaginatorName = Literal["describe_db_instances"] +DescribeDBParameterGroupsPaginatorName = Literal["describe_db_parameter_groups"] +DescribeDBParametersPaginatorName = Literal["describe_db_parameters"] +DescribeDBSubnetGroupsPaginatorName = Literal["describe_db_subnet_groups"] +DescribeEngineDefaultParametersPaginatorName = Literal["describe_engine_default_parameters"] +DescribeEventSubscriptionsPaginatorName = Literal["describe_event_subscriptions"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeGlobalClustersPaginatorName = Literal["describe_global_clusters"] +DescribeOrderableDBInstanceOptionsPaginatorName = Literal["describe_orderable_db_instance_options"] +DescribePendingMaintenanceActionsPaginatorName = Literal["describe_pending_maintenance_actions"] +SourceTypeType = Literal["db-cluster", + "db-cluster-snapshot", + "db-instance", + "db-parameter-group", + "db-security-group", + "db-snapshot",] +NeptuneServiceName = Literal["neptune"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_db_cluster_endpoints", + "describe_db_cluster_parameter_groups", + "describe_db_cluster_parameters", + "describe_db_cluster_snapshots", + "describe_db_clusters", + "describe_db_engine_versions", + "describe_db_instances", + "describe_db_parameter_groups", + "describe_db_parameters", + "describe_db_subnet_groups", + "describe_engine_default_parameters", + "describe_event_subscriptions", + "describe_events", + "describe_global_clusters", + "describe_orderable_db_instance_options", + "describe_pending_maintenance_actions",] +WaiterName = Literal["db_instance_available", "db_instance_deleted"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/neptune_graph_classes.py b/aws_resource_validator/pydantic_models/neptune_graph_classes.py new file mode 100644 index 00000000..809adcd4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/neptune_graph_classes.py @@ -0,0 +1,562 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.neptune_graph_constants import * + +class CancelImportTaskInputRequestTypeDef(BaseModel): + taskIdentifier: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CancelQueryInputRequestTypeDef(BaseModel): + graphIdentifier: str + queryId: str + +class VectorSearchConfigurationTypeDef(BaseModel): + dimension: int + +class CreateGraphSnapshotInputRequestTypeDef(BaseModel): + graphIdentifier: str + snapshotName: str + tags: Optional[Mapping[str, str]] = None + +class CreatePrivateGraphEndpointInputRequestTypeDef(BaseModel): + graphIdentifier: str + vpcId: Optional[str] = None + subnetIds: Optional[Sequence[str]] = None + vpcSecurityGroupIds: Optional[Sequence[str]] = None + +class DeleteGraphInputRequestTypeDef(BaseModel): + graphIdentifier: str + skipSnapshot: bool + +class DeleteGraphSnapshotInputRequestTypeDef(BaseModel): + snapshotIdentifier: str + +class DeletePrivateGraphEndpointInputRequestTypeDef(BaseModel): + graphIdentifier: str + vpcId: str + +class EdgeStructureTypeDef(BaseModel): + count: Optional[int] = None + edgeProperties: Optional[List[str]] = None + +class ExecuteQueryInputRequestTypeDef(BaseModel): + graphIdentifier: str + queryString: str + language: Literal["OPEN_CYPHER"] + parameters: Optional[Mapping[str, Mapping[str, Any]]] = None + planCache: Optional[PlanCacheTypeType] = None + explainMode: Optional[ExplainModeType] = None + queryTimeoutMilliseconds: Optional[int] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetGraphInputRequestTypeDef(BaseModel): + graphIdentifier: str + +class GetGraphSnapshotInputRequestTypeDef(BaseModel): + snapshotIdentifier: str + +class GetGraphSummaryInputRequestTypeDef(BaseModel): + graphIdentifier: str + mode: Optional[GraphSummaryModeType] = None + +class GetImportTaskInputRequestTypeDef(BaseModel): + taskIdentifier: str + +class ImportTaskDetailsTypeDef(BaseModel): + status: str + startTime: datetime + timeElapsedSeconds: int + progressPercentage: int + errorCount: int + statementCount: int + dictionaryEntryCount: int + errorDetails: Optional[str] = None + +class GetPrivateGraphEndpointInputRequestTypeDef(BaseModel): + graphIdentifier: str + vpcId: str + +class GetQueryInputRequestTypeDef(BaseModel): + graphIdentifier: str + queryId: str + +class NodeStructureTypeDef(BaseModel): + count: Optional[int] = None + nodeProperties: Optional[List[str]] = None + distinctOutgoingEdgeLabels: Optional[List[str]] = None + +class GraphSnapshotSummaryTypeDef(BaseModel): + id: str + name: str + arn: str + sourceGraphId: Optional[str] = None + snapshotCreateTime: Optional[datetime] = None + status: Optional[SnapshotStatusType] = None + kmsKeyIdentifier: Optional[str] = None + +class GraphSummaryTypeDef(BaseModel): + id: str + name: str + arn: str + status: Optional[GraphStatusType] = None + provisionedMemory: Optional[int] = None + publicConnectivity: Optional[bool] = None + endpoint: Optional[str] = None + replicaCount: Optional[int] = None + kmsKeyIdentifier: Optional[str] = None + deletionProtection: Optional[bool] = None + +class NeptuneImportOptionsTypeDef(BaseModel): + s3ExportPath: str + s3ExportKmsKeyId: str + preserveDefaultVertexLabels: Optional[bool] = None + preserveEdgeIds: Optional[bool] = None + +class ImportTaskSummaryTypeDef(BaseModel): + taskId: str + source: str + roleArn: str + status: ImportTaskStatusType + graphId: Optional[str] = None + format: Optional[FormatType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListGraphSnapshotsInputRequestTypeDef(BaseModel): + graphIdentifier: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListGraphsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListImportTasksInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPrivateGraphEndpointsInputRequestTypeDef(BaseModel): + graphIdentifier: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PrivateGraphEndpointSummaryTypeDef(BaseModel): + vpcId: str + subnetIds: List[str] + status: PrivateGraphEndpointStatusType + vpcEndpointId: Optional[str] = None + +class ListQueriesInputRequestTypeDef(BaseModel): + graphIdentifier: str + maxResults: int + state: Optional[QueryStateInputType] = None + +class QuerySummaryTypeDef(BaseModel): + id: Optional[str] = None + queryString: Optional[str] = None + waited: Optional[int] = None + elapsed: Optional[int] = None + state: Optional[QueryStateType] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class ResetGraphInputRequestTypeDef(BaseModel): + graphIdentifier: str + skipSnapshot: bool + +class RestoreGraphFromSnapshotInputRequestTypeDef(BaseModel): + snapshotIdentifier: str + graphName: str + provisionedMemory: Optional[int] = None + deletionProtection: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + replicaCount: Optional[int] = None + publicConnectivity: Optional[bool] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateGraphInputRequestTypeDef(BaseModel): + graphIdentifier: str + publicConnectivity: Optional[bool] = None + provisionedMemory: Optional[int] = None + deletionProtection: Optional[bool] = None + +class CancelImportTaskOutputTypeDef(BaseModel): + graphId: str + taskId: str + source: str + format: FormatType + roleArn: str + status: ImportTaskStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGraphSnapshotOutputTypeDef(BaseModel): + id: str + name: str + arn: str + sourceGraphId: str + snapshotCreateTime: datetime + status: SnapshotStatusType + kmsKeyIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePrivateGraphEndpointOutputTypeDef(BaseModel): + vpcId: str + subnetIds: List[str] + status: PrivateGraphEndpointStatusType + vpcEndpointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGraphSnapshotOutputTypeDef(BaseModel): + id: str + name: str + arn: str + sourceGraphId: str + snapshotCreateTime: datetime + status: SnapshotStatusType + kmsKeyIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePrivateGraphEndpointOutputTypeDef(BaseModel): + vpcId: str + subnetIds: List[str] + status: PrivateGraphEndpointStatusType + vpcEndpointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteQueryOutputTypeDef(BaseModel): + payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetGraphSnapshotOutputTypeDef(BaseModel): + id: str + name: str + arn: str + sourceGraphId: str + snapshotCreateTime: datetime + status: SnapshotStatusType + kmsKeyIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPrivateGraphEndpointOutputTypeDef(BaseModel): + vpcId: str + subnetIds: List[str] + status: PrivateGraphEndpointStatusType + vpcEndpointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryOutputTypeDef(BaseModel): + id: str + queryString: str + waited: int + elapsed: int + state: QueryStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGraphInputRequestTypeDef(BaseModel): + graphName: str + provisionedMemory: int + tags: Optional[Mapping[str, str]] = None + publicConnectivity: Optional[bool] = None + kmsKeyIdentifier: Optional[str] = None + vectorSearchConfiguration: Optional[VectorSearchConfigurationTypeDef] = None + replicaCount: Optional[int] = None + deletionProtection: Optional[bool] = None + +class CreateGraphOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: GraphStatusType + statusReason: str + createTime: datetime + provisionedMemory: int + endpoint: str + publicConnectivity: bool + vectorSearchConfiguration: VectorSearchConfigurationTypeDef + replicaCount: int + kmsKeyIdentifier: str + sourceSnapshotId: str + deletionProtection: bool + buildNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGraphOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: GraphStatusType + statusReason: str + createTime: datetime + provisionedMemory: int + endpoint: str + publicConnectivity: bool + vectorSearchConfiguration: VectorSearchConfigurationTypeDef + replicaCount: int + kmsKeyIdentifier: str + sourceSnapshotId: str + deletionProtection: bool + buildNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGraphOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: GraphStatusType + statusReason: str + createTime: datetime + provisionedMemory: int + endpoint: str + publicConnectivity: bool + vectorSearchConfiguration: VectorSearchConfigurationTypeDef + replicaCount: int + kmsKeyIdentifier: str + sourceSnapshotId: str + deletionProtection: bool + buildNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetGraphOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: GraphStatusType + statusReason: str + createTime: datetime + provisionedMemory: int + endpoint: str + publicConnectivity: bool + vectorSearchConfiguration: VectorSearchConfigurationTypeDef + replicaCount: int + kmsKeyIdentifier: str + sourceSnapshotId: str + deletionProtection: bool + buildNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreGraphFromSnapshotOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: GraphStatusType + statusReason: str + createTime: datetime + provisionedMemory: int + endpoint: str + publicConnectivity: bool + vectorSearchConfiguration: VectorSearchConfigurationTypeDef + replicaCount: int + kmsKeyIdentifier: str + sourceSnapshotId: str + deletionProtection: bool + buildNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGraphOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: GraphStatusType + statusReason: str + createTime: datetime + provisionedMemory: int + endpoint: str + publicConnectivity: bool + vectorSearchConfiguration: VectorSearchConfigurationTypeDef + replicaCount: int + kmsKeyIdentifier: str + sourceSnapshotId: str + deletionProtection: bool + buildNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGraphInputGraphAvailableWaitTypeDef(BaseModel): + graphIdentifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetGraphInputGraphDeletedWaitTypeDef(BaseModel): + graphIdentifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetGraphSnapshotInputGraphSnapshotAvailableWaitTypeDef(BaseModel): + snapshotIdentifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetGraphSnapshotInputGraphSnapshotDeletedWaitTypeDef(BaseModel): + snapshotIdentifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetImportTaskInputImportTaskCancelledWaitTypeDef(BaseModel): + taskIdentifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetImportTaskInputImportTaskSuccessfulWaitTypeDef(BaseModel): + taskIdentifier: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetPrivateGraphEndpointInputPrivateGraphEndpointAvailableWaitTypeDef(BaseModel): + graphIdentifier: str + vpcId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetPrivateGraphEndpointInputPrivateGraphEndpointDeletedWaitTypeDef(BaseModel): + graphIdentifier: str + vpcId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GraphDataSummaryTypeDef(BaseModel): + numNodes: Optional[int] = None + numEdges: Optional[int] = None + numNodeLabels: Optional[int] = None + numEdgeLabels: Optional[int] = None + nodeLabels: Optional[List[str]] = None + edgeLabels: Optional[List[str]] = None + numNodeProperties: Optional[int] = None + numEdgeProperties: Optional[int] = None + nodeProperties: Optional[List[Dict[str, int]]] = None + edgeProperties: Optional[List[Dict[str, int]]] = None + totalNodePropertyValues: Optional[int] = None + totalEdgePropertyValues: Optional[int] = None + nodeStructures: Optional[List[NodeStructureTypeDef]] = None + edgeStructures: Optional[List[EdgeStructureTypeDef]] = None + +class ListGraphSnapshotsOutputTypeDef(BaseModel): + graphSnapshots: List[GraphSnapshotSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGraphsOutputTypeDef(BaseModel): + graphs: List[GraphSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportOptionsTypeDef(BaseModel): + neptune: Optional[NeptuneImportOptionsTypeDef] = None + +class ListImportTasksOutputTypeDef(BaseModel): + tasks: List[ImportTaskSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGraphSnapshotsInputListGraphSnapshotsPaginateTypeDef(BaseModel): + graphIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGraphsInputListGraphsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportTasksInputListImportTasksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrivateGraphEndpointsInputListPrivateGraphEndpointsPaginateTypeDef(BaseModel): + graphIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrivateGraphEndpointsOutputTypeDef(BaseModel): + privateGraphEndpoints: List[PrivateGraphEndpointSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueriesOutputTypeDef(BaseModel): + queries: List[QuerySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGraphSummaryOutputTypeDef(BaseModel): + version: str + lastStatisticsComputationTime: datetime + graphSummary: GraphDataSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGraphUsingImportTaskInputRequestTypeDef(BaseModel): + graphName: str + source: str + roleArn: str + tags: Optional[Mapping[str, str]] = None + publicConnectivity: Optional[bool] = None + kmsKeyIdentifier: Optional[str] = None + vectorSearchConfiguration: Optional[VectorSearchConfigurationTypeDef] = None + replicaCount: Optional[int] = None + deletionProtection: Optional[bool] = None + importOptions: Optional[ImportOptionsTypeDef] = None + maxProvisionedMemory: Optional[int] = None + minProvisionedMemory: Optional[int] = None + failOnError: Optional[bool] = None + format: Optional[FormatType] = None + +class CreateGraphUsingImportTaskOutputTypeDef(BaseModel): + graphId: str + taskId: str + source: str + format: FormatType + roleArn: str + status: ImportTaskStatusType + importOptions: ImportOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetImportTaskOutputTypeDef(BaseModel): + graphId: str + taskId: str + source: str + format: FormatType + roleArn: str + status: ImportTaskStatusType + importOptions: ImportOptionsTypeDef + importTaskDetails: ImportTaskDetailsTypeDef + attemptNumber: int + statusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportTaskInputRequestTypeDef(BaseModel): + source: str + graphIdentifier: str + roleArn: str + importOptions: Optional[ImportOptionsTypeDef] = None + failOnError: Optional[bool] = None + format: Optional[FormatType] = None + +class StartImportTaskOutputTypeDef(BaseModel): + graphId: str + taskId: str + source: str + format: FormatType + roleArn: str + status: ImportTaskStatusType + importOptions: ImportOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/neptune_graph_constants.py b/aws_resource_validator/pydantic_models/neptune_graph_constants.py new file mode 100644 index 00000000..aee5f316 --- /dev/null +++ b/aws_resource_validator/pydantic_models/neptune_graph_constants.py @@ -0,0 +1,444 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ExplainModeType = Literal["DETAILS", "STATIC"] +FormatType = Literal["CSV", "OPEN_CYPHER"] +GraphAvailableWaiterName = Literal["graph_available"] +GraphDeletedWaiterName = Literal["graph_deleted"] +GraphSnapshotAvailableWaiterName = Literal["graph_snapshot_available"] +GraphSnapshotDeletedWaiterName = Literal["graph_snapshot_deleted"] +GraphStatusType = Literal["AVAILABLE", + "CREATING", + "DELETING", + "FAILED", + "IMPORTING", + "RESETTING", + "SNAPSHOTTING", + "UPDATING",] +GraphSummaryModeType = Literal["BASIC", "DETAILED"] +ImportTaskCancelledWaiterName = Literal["import_task_cancelled"] +ImportTaskStatusType = Literal["ANALYZING_DATA", + "CANCELLED", + "CANCELLING", + "EXPORTING", + "FAILED", + "IMPORTING", + "INITIALIZING", + "REPROVISIONING", + "ROLLING_BACK", + "SUCCEEDED",] +ImportTaskSuccessfulWaiterName = Literal["import_task_successful"] +ListGraphSnapshotsPaginatorName = Literal["list_graph_snapshots"] +ListGraphsPaginatorName = Literal["list_graphs"] +ListImportTasksPaginatorName = Literal["list_import_tasks"] +ListPrivateGraphEndpointsPaginatorName = Literal["list_private_graph_endpoints"] +PlanCacheTypeType = Literal["AUTO", "DISABLED", "ENABLED"] +PrivateGraphEndpointAvailableWaiterName = Literal["private_graph_endpoint_available"] +PrivateGraphEndpointDeletedWaiterName = Literal["private_graph_endpoint_deleted"] +PrivateGraphEndpointStatusType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED"] +QueryLanguageType = Literal["OPEN_CYPHER"] +QueryStateInputType = Literal["ALL", "CANCELLING", "RUNNING", "WAITING"] +QueryStateType = Literal["CANCELLING", "RUNNING", "WAITING"] +SnapshotStatusType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED"] +NeptuneGraphServiceName = Literal["neptune-graph"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_graph_snapshots", "list_graphs", "list_import_tasks", "list_private_graph_endpoints"] +WaiterName = Literal["graph_available", + "graph_deleted", + "graph_snapshot_available", + "graph_snapshot_deleted", + "import_task_cancelled", + "import_task_successful", + "private_graph_endpoint_available", + "private_graph_endpoint_deleted",] diff --git a/aws_resource_validator/pydantic_models/neptunedata_classes.py b/aws_resource_validator/pydantic_models/neptunedata_classes.py new file mode 100644 index 00000000..d67161a3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/neptunedata_classes.py @@ -0,0 +1,615 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.neptunedata_constants import * + +class CancelGremlinQueryInputRequestTypeDef(BaseModel): + queryId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CancelLoaderJobInputRequestTypeDef(BaseModel): + loadId: str + +class CancelMLDataProcessingJobInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + clean: Optional[bool] = None + +class CancelMLModelTrainingJobInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + clean: Optional[bool] = None + +class CancelMLModelTransformJobInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + clean: Optional[bool] = None + +class CancelOpenCypherQueryInputRequestTypeDef(BaseModel): + queryId: str + silent: Optional[bool] = None + +class CreateMLEndpointInputRequestTypeDef(BaseModel): + id: Optional[str] = None + mlModelTrainingJobId: Optional[str] = None + mlModelTransformJobId: Optional[str] = None + update: Optional[bool] = None + neptuneIamRoleArn: Optional[str] = None + modelName: Optional[str] = None + instanceType: Optional[str] = None + instanceCount: Optional[int] = None + volumeEncryptionKMSKey: Optional[str] = None + +class CustomModelTrainingParametersTypeDef(BaseModel): + sourceS3DirectoryPath: str + trainingEntryPointScript: Optional[str] = None + transformEntryPointScript: Optional[str] = None + +class CustomModelTransformParametersTypeDef(BaseModel): + sourceS3DirectoryPath: str + transformEntryPointScript: Optional[str] = None + +class DeleteMLEndpointInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + clean: Optional[bool] = None + +class DeleteStatisticsValueMapTypeDef(BaseModel): + active: Optional[bool] = None + statisticsId: Optional[str] = None + +class EdgeStructureTypeDef(BaseModel): + count: Optional[int] = None + edgeProperties: Optional[List[str]] = None + +class ExecuteFastResetInputRequestTypeDef(BaseModel): + action: ActionType + token: Optional[str] = None + +class FastResetTokenTypeDef(BaseModel): + token: Optional[str] = None + +class ExecuteGremlinExplainQueryInputRequestTypeDef(BaseModel): + gremlinQuery: str + +class ExecuteGremlinProfileQueryInputRequestTypeDef(BaseModel): + gremlinQuery: str + results: Optional[bool] = None + chop: Optional[int] = None + serializer: Optional[str] = None + indexOps: Optional[bool] = None + +class ExecuteGremlinQueryInputRequestTypeDef(BaseModel): + gremlinQuery: str + serializer: Optional[str] = None + +class GremlinQueryStatusAttributesTypeDef(BaseModel): + message: Optional[str] = None + code: Optional[int] = None + attributes: Optional[Dict[str, Any]] = None + +class ExecuteOpenCypherExplainQueryInputRequestTypeDef(BaseModel): + openCypherQuery: str + explainMode: OpenCypherExplainModeType + parameters: Optional[str] = None + +class ExecuteOpenCypherQueryInputRequestTypeDef(BaseModel): + openCypherQuery: str + parameters: Optional[str] = None + +class QueryLanguageVersionTypeDef(BaseModel): + version: str + +class GetGremlinQueryStatusInputRequestTypeDef(BaseModel): + queryId: str + +class QueryEvalStatsTypeDef(BaseModel): + waited: Optional[int] = None + elapsed: Optional[int] = None + cancelled: Optional[bool] = None + subqueries: Optional[Dict[str, Any]] = None + +class GetLoaderJobStatusInputRequestTypeDef(BaseModel): + loadId: str + details: Optional[bool] = None + errors: Optional[bool] = None + page: Optional[int] = None + errorsPerPage: Optional[int] = None + +class GetMLDataProcessingJobInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + +class MlResourceDefinitionTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + status: Optional[str] = None + outputLocation: Optional[str] = None + failureReason: Optional[str] = None + cloudwatchLogUrl: Optional[str] = None + +class GetMLEndpointInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + +class MlConfigDefinitionTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + +class GetMLModelTrainingJobInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + +class GetMLModelTransformJobInputRequestTypeDef(BaseModel): + id: str + neptuneIamRoleArn: Optional[str] = None + +class GetOpenCypherQueryStatusInputRequestTypeDef(BaseModel): + queryId: str + +class GetPropertygraphStreamInputRequestTypeDef(BaseModel): + limit: Optional[int] = None + iteratorType: Optional[IteratorTypeType] = None + commitNum: Optional[int] = None + opNum: Optional[int] = None + encoding: Optional[Literal["gzip"]] = None + +class GetPropertygraphSummaryInputRequestTypeDef(BaseModel): + mode: Optional[GraphSummaryTypeType] = None + +class GetRDFGraphSummaryInputRequestTypeDef(BaseModel): + mode: Optional[GraphSummaryTypeType] = None + +class GetSparqlStreamInputRequestTypeDef(BaseModel): + limit: Optional[int] = None + iteratorType: Optional[IteratorTypeType] = None + commitNum: Optional[int] = None + opNum: Optional[int] = None + encoding: Optional[Literal["gzip"]] = None + +class ListGremlinQueriesInputRequestTypeDef(BaseModel): + includeWaiting: Optional[bool] = None + +class ListLoaderJobsInputRequestTypeDef(BaseModel): + limit: Optional[int] = None + includeQueuedLoads: Optional[bool] = None + +class LoaderIdResultTypeDef(BaseModel): + loadIds: Optional[List[str]] = None + +class ListMLDataProcessingJobsInputRequestTypeDef(BaseModel): + maxItems: Optional[int] = None + neptuneIamRoleArn: Optional[str] = None + +class ListMLEndpointsInputRequestTypeDef(BaseModel): + maxItems: Optional[int] = None + neptuneIamRoleArn: Optional[str] = None + +class ListMLModelTrainingJobsInputRequestTypeDef(BaseModel): + maxItems: Optional[int] = None + neptuneIamRoleArn: Optional[str] = None + +class ListMLModelTransformJobsInputRequestTypeDef(BaseModel): + maxItems: Optional[int] = None + neptuneIamRoleArn: Optional[str] = None + +class ListOpenCypherQueriesInputRequestTypeDef(BaseModel): + includeWaiting: Optional[bool] = None + +class ManagePropertygraphStatisticsInputRequestTypeDef(BaseModel): + mode: Optional[StatisticsAutoGenerationModeType] = None + +class RefreshStatisticsIdMapTypeDef(BaseModel): + statisticsId: Optional[str] = None + +class ManageSparqlStatisticsInputRequestTypeDef(BaseModel): + mode: Optional[StatisticsAutoGenerationModeType] = None + +class NodeStructureTypeDef(BaseModel): + count: Optional[int] = None + nodeProperties: Optional[List[str]] = None + distinctOutgoingEdgeLabels: Optional[List[str]] = None + +class PropertygraphDataTypeDef(BaseModel): + id: str + type: str + key: str + value: Dict[str, Any] + from: Optional[str] = None + to: Optional[str] = None + +class SubjectStructureTypeDef(BaseModel): + count: Optional[int] = None + predicates: Optional[List[str]] = None + +class SparqlDataTypeDef(BaseModel): + stmt: str + +class StartLoaderJobInputRequestTypeDef(BaseModel): + source: str + format: FormatType + s3BucketRegion: S3BucketRegionType + iamRoleArn: str + mode: Optional[ModeType] = None + failOnError: Optional[bool] = None + parallelism: Optional[ParallelismType] = None + parserConfiguration: Optional[Mapping[str, str]] = None + updateSingleCardinalityProperties: Optional[bool] = None + queueRequest: Optional[bool] = None + dependencies: Optional[Sequence[str]] = None + userProvidedEdgeIds: Optional[bool] = None + +class StartMLDataProcessingJobInputRequestTypeDef(BaseModel): + inputDataS3Location: str + processedDataS3Location: str + id: Optional[str] = None + previousDataProcessingJobId: Optional[str] = None + sagemakerIamRoleArn: Optional[str] = None + neptuneIamRoleArn: Optional[str] = None + processingInstanceType: Optional[str] = None + processingInstanceVolumeSizeInGB: Optional[int] = None + processingTimeOutInSeconds: Optional[int] = None + modelType: Optional[str] = None + configFileName: Optional[str] = None + subnets: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + volumeEncryptionKMSKey: Optional[str] = None + s3OutputEncryptionKMSKey: Optional[str] = None + +class StatisticsSummaryTypeDef(BaseModel): + signatureCount: Optional[int] = None + instanceCount: Optional[int] = None + predicateCount: Optional[int] = None + +class CancelGremlinQueryOutputTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelLoaderJobOutputTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelMLDataProcessingJobOutputTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelMLModelTrainingJobOutputTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelMLModelTransformJobOutputTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelOpenCypherQueryOutputTypeDef(BaseModel): + status: str + payload: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMLEndpointOutputTypeDef(BaseModel): + id: str + arn: str + creationTimeInMillis: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMLEndpointOutputTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteGremlinExplainQueryOutputTypeDef(BaseModel): + output: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteGremlinProfileQueryOutputTypeDef(BaseModel): + output: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteOpenCypherExplainQueryOutputTypeDef(BaseModel): + results: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteOpenCypherQueryOutputTypeDef(BaseModel): + results: Dict[str, Any] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLoaderJobStatusOutputTypeDef(BaseModel): + status: str + payload: Dict[str, Any] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMLDataProcessingJobsOutputTypeDef(BaseModel): + ids: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMLEndpointsOutputTypeDef(BaseModel): + ids: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMLModelTrainingJobsOutputTypeDef(BaseModel): + ids: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMLModelTransformJobsOutputTypeDef(BaseModel): + ids: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartLoaderJobOutputTypeDef(BaseModel): + status: str + payload: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartMLDataProcessingJobOutputTypeDef(BaseModel): + id: str + arn: str + creationTimeInMillis: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartMLModelTrainingJobOutputTypeDef(BaseModel): + id: str + arn: str + creationTimeInMillis: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartMLModelTransformJobOutputTypeDef(BaseModel): + id: str + arn: str + creationTimeInMillis: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartMLModelTrainingJobInputRequestTypeDef(BaseModel): + dataProcessingJobId: str + trainModelS3Location: str + id: Optional[str] = None + previousModelTrainingJobId: Optional[str] = None + sagemakerIamRoleArn: Optional[str] = None + neptuneIamRoleArn: Optional[str] = None + baseProcessingInstanceType: Optional[str] = None + trainingInstanceType: Optional[str] = None + trainingInstanceVolumeSizeInGB: Optional[int] = None + trainingTimeOutInSeconds: Optional[int] = None + maxHPONumberOfTrainingJobs: Optional[int] = None + maxHPOParallelTrainingJobs: Optional[int] = None + subnets: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + volumeEncryptionKMSKey: Optional[str] = None + s3OutputEncryptionKMSKey: Optional[str] = None + enableManagedSpotTraining: Optional[bool] = None + customModelTrainingParameters: Optional[CustomModelTrainingParametersTypeDef] = None + +class StartMLModelTransformJobInputRequestTypeDef(BaseModel): + modelTransformOutputS3Location: str + id: Optional[str] = None + dataProcessingJobId: Optional[str] = None + mlModelTrainingJobId: Optional[str] = None + trainingJobName: Optional[str] = None + sagemakerIamRoleArn: Optional[str] = None + neptuneIamRoleArn: Optional[str] = None + customModelTransformParameters: Optional[CustomModelTransformParametersTypeDef] = None + baseProcessingInstanceType: Optional[str] = None + baseProcessingInstanceVolumeSizeInGB: Optional[int] = None + subnets: Optional[Sequence[str]] = None + securityGroupIds: Optional[Sequence[str]] = None + volumeEncryptionKMSKey: Optional[str] = None + s3OutputEncryptionKMSKey: Optional[str] = None + +class DeletePropertygraphStatisticsOutputTypeDef(BaseModel): + statusCode: int + status: str + payload: DeleteStatisticsValueMapTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSparqlStatisticsOutputTypeDef(BaseModel): + statusCode: int + status: str + payload: DeleteStatisticsValueMapTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteFastResetOutputTypeDef(BaseModel): + status: str + payload: FastResetTokenTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteGremlinQueryOutputTypeDef(BaseModel): + requestId: str + status: GremlinQueryStatusAttributesTypeDef + result: Dict[str, Any] + meta: Dict[str, Any] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEngineStatusOutputTypeDef(BaseModel): + status: str + startTime: str + dbEngineVersion: str + role: str + dfeQueryEngine: str + gremlin: QueryLanguageVersionTypeDef + sparql: QueryLanguageVersionTypeDef + opencypher: QueryLanguageVersionTypeDef + labMode: Dict[str, str] + rollingBackTrxCount: int + rollingBackTrxEarliestStartTime: str + features: Dict[str, Dict[str, Any]] + settings: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGremlinQueryStatusOutputTypeDef(BaseModel): + queryId: str + queryString: str + queryEvalStats: QueryEvalStatsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOpenCypherQueryStatusOutputTypeDef(BaseModel): + queryId: str + queryString: str + queryEvalStats: QueryEvalStatsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GremlinQueryStatusTypeDef(BaseModel): + queryId: Optional[str] = None + queryString: Optional[str] = None + queryEvalStats: Optional[QueryEvalStatsTypeDef] = None + +class GetMLDataProcessingJobOutputTypeDef(BaseModel): + status: str + id: str + processingJob: MlResourceDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMLEndpointOutputTypeDef(BaseModel): + status: str + id: str + endpoint: MlResourceDefinitionTypeDef + endpointConfig: MlConfigDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMLModelTrainingJobOutputTypeDef(BaseModel): + status: str + id: str + processingJob: MlResourceDefinitionTypeDef + hpoJob: MlResourceDefinitionTypeDef + modelTransformJob: MlResourceDefinitionTypeDef + mlModels: List[MlConfigDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMLModelTransformJobOutputTypeDef(BaseModel): + status: str + id: str + baseProcessingJob: MlResourceDefinitionTypeDef + remoteModelTransformJob: MlResourceDefinitionTypeDef + models: List[MlConfigDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoaderJobsOutputTypeDef(BaseModel): + status: str + payload: LoaderIdResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ManagePropertygraphStatisticsOutputTypeDef(BaseModel): + status: str + payload: RefreshStatisticsIdMapTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ManageSparqlStatisticsOutputTypeDef(BaseModel): + status: str + payload: RefreshStatisticsIdMapTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PropertygraphSummaryTypeDef(BaseModel): + numNodes: Optional[int] = None + numEdges: Optional[int] = None + numNodeLabels: Optional[int] = None + numEdgeLabels: Optional[int] = None + nodeLabels: Optional[List[str]] = None + edgeLabels: Optional[List[str]] = None + numNodeProperties: Optional[int] = None + numEdgeProperties: Optional[int] = None + nodeProperties: Optional[List[Dict[str, int]]] = None + edgeProperties: Optional[List[Dict[str, int]]] = None + totalNodePropertyValues: Optional[int] = None + totalEdgePropertyValues: Optional[int] = None + nodeStructures: Optional[List[NodeStructureTypeDef]] = None + edgeStructures: Optional[List[EdgeStructureTypeDef]] = None + +class PropertygraphRecordTypeDef(BaseModel): + commitTimestampInMillis: int + eventId: Dict[str, str] + data: PropertygraphDataTypeDef + op: str + isLastOp: Optional[bool] = None + +class RDFGraphSummaryTypeDef(BaseModel): + numDistinctSubjects: Optional[int] = None + numDistinctPredicates: Optional[int] = None + numQuads: Optional[int] = None + numClasses: Optional[int] = None + classes: Optional[List[str]] = None + predicates: Optional[List[Dict[str, int]]] = None + subjectStructures: Optional[List[SubjectStructureTypeDef]] = None + +class SparqlRecordTypeDef(BaseModel): + commitTimestampInMillis: int + eventId: Dict[str, str] + data: SparqlDataTypeDef + op: str + isLastOp: Optional[bool] = None + +class StatisticsTypeDef(BaseModel): + autoCompute: Optional[bool] = None + active: Optional[bool] = None + statisticsId: Optional[str] = None + date: Optional[datetime] = None + note: Optional[str] = None + signatureInfo: Optional[StatisticsSummaryTypeDef] = None + +class ListGremlinQueriesOutputTypeDef(BaseModel): + acceptedQueryCount: int + runningQueryCount: int + queries: List[GremlinQueryStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListOpenCypherQueriesOutputTypeDef(BaseModel): + acceptedQueryCount: int + runningQueryCount: int + queries: List[GremlinQueryStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PropertygraphSummaryValueMapTypeDef(BaseModel): + version: Optional[str] = None + lastStatisticsComputationTime: Optional[datetime] = None + graphSummary: Optional[PropertygraphSummaryTypeDef] = None + +class GetPropertygraphStreamOutputTypeDef(BaseModel): + lastEventId: Dict[str, str] + lastTrxTimestampInMillis: int + format: str + records: List[PropertygraphRecordTypeDef] + totalRecords: int + ResponseMetadata: ResponseMetadataTypeDef + +class RDFGraphSummaryValueMapTypeDef(BaseModel): + version: Optional[str] = None + lastStatisticsComputationTime: Optional[datetime] = None + graphSummary: Optional[RDFGraphSummaryTypeDef] = None + +class GetSparqlStreamOutputTypeDef(BaseModel): + lastEventId: Dict[str, str] + lastTrxTimestampInMillis: int + format: str + records: List[SparqlRecordTypeDef] + totalRecords: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetPropertygraphStatisticsOutputTypeDef(BaseModel): + status: str + payload: StatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSparqlStatisticsOutputTypeDef(BaseModel): + status: str + payload: StatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPropertygraphSummaryOutputTypeDef(BaseModel): + statusCode: int + payload: PropertygraphSummaryValueMapTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRDFGraphSummaryOutputTypeDef(BaseModel): + statusCode: int + payload: RDFGraphSummaryValueMapTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/neptunedata_constants.py b/aws_resource_validator/pydantic_models/neptunedata_constants.py new file mode 100644 index 00000000..6cdb2a2f --- /dev/null +++ b/aws_resource_validator/pydantic_models/neptunedata_constants.py @@ -0,0 +1,420 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionType = Literal["initiateDatabaseReset", "performDatabaseReset"] +EncodingType = Literal["gzip"] +FormatType = Literal["csv", "nquads", "ntriples", "opencypher", "rdfxml", "turtle"] +GraphSummaryTypeType = Literal["basic", "detailed"] +IteratorTypeType = Literal["AFTER_SEQUENCE_NUMBER", "AT_SEQUENCE_NUMBER", "LATEST", "TRIM_HORIZON"] +ModeType = Literal["AUTO", "NEW", "RESUME"] +OpenCypherExplainModeType = Literal["details", "dynamic", "static"] +ParallelismType = Literal["HIGH", "LOW", "MEDIUM", "OVERSUBSCRIBE"] +S3BucketRegionType = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "cn-north-1", + "cn-northwest-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-gov-east-1", + "us-gov-west-1", + "us-west-1", + "us-west-2",] +StatisticsAutoGenerationModeType = Literal["disableAutoCompute", "enableAutoCompute", "refresh"] +NeptuneDataServiceName = Literal["neptunedata"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/network_firewall_classes.py b/aws_resource_validator/pydantic_models/network_firewall_classes.py new file mode 100644 index 00000000..73a5a870 --- /dev/null +++ b/aws_resource_validator/pydantic_models/network_firewall_classes.py @@ -0,0 +1,726 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.network_firewall_constants import * + +class AddressTypeDef(BaseModel): + AddressDefinition: str + +class AnalysisResultTypeDef(BaseModel): + IdentifiedRuleIds: Optional[List[str]] = None + IdentifiedType: Optional[IdentifiedTypeType] = None + AnalysisDetail: Optional[str] = None + +class AssociateFirewallPolicyRequestRequestTypeDef(BaseModel): + FirewallPolicyArn: str + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class SubnetMappingTypeDef(BaseModel): + SubnetId: str + IPAddressType: Optional[IPAddressTypeType] = None + +class AttachmentTypeDef(BaseModel): + SubnetId: Optional[str] = None + EndpointId: Optional[str] = None + Status: Optional[AttachmentStatusType] = None + StatusMessage: Optional[str] = None + +class IPSetMetadataTypeDef(BaseModel): + ResolvedCIDRCount: Optional[int] = None + +class CheckCertificateRevocationStatusActionsTypeDef(BaseModel): + RevokedStatusAction: Optional[RevocationCheckActionType] = None + UnknownStatusAction: Optional[RevocationCheckActionType] = None + +class EncryptionConfigurationTypeDef(BaseModel): + Type: EncryptionTypeType + KeyId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class SourceMetadataTypeDef(BaseModel): + SourceArn: Optional[str] = None + SourceUpdateToken: Optional[str] = None + +class DeleteFirewallPolicyRequestRequestTypeDef(BaseModel): + FirewallPolicyName: Optional[str] = None + FirewallPolicyArn: Optional[str] = None + +class DeleteFirewallRequestRequestTypeDef(BaseModel): + FirewallName: Optional[str] = None + FirewallArn: Optional[str] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupName: Optional[str] = None + RuleGroupArn: Optional[str] = None + Type: Optional[RuleGroupTypeType] = None + +class DeleteTLSInspectionConfigurationRequestRequestTypeDef(BaseModel): + TLSInspectionConfigurationArn: Optional[str] = None + TLSInspectionConfigurationName: Optional[str] = None + +class DescribeFirewallPolicyRequestRequestTypeDef(BaseModel): + FirewallPolicyName: Optional[str] = None + FirewallPolicyArn: Optional[str] = None + +class DescribeFirewallRequestRequestTypeDef(BaseModel): + FirewallName: Optional[str] = None + FirewallArn: Optional[str] = None + +class DescribeLoggingConfigurationRequestRequestTypeDef(BaseModel): + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class DescribeResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DescribeRuleGroupMetadataRequestRequestTypeDef(BaseModel): + RuleGroupName: Optional[str] = None + RuleGroupArn: Optional[str] = None + Type: Optional[RuleGroupTypeType] = None + +class StatefulRuleOptionsTypeDef(BaseModel): + RuleOrder: Optional[RuleOrderType] = None + +class DescribeRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupName: Optional[str] = None + RuleGroupArn: Optional[str] = None + Type: Optional[RuleGroupTypeType] = None + AnalyzeRuleGroup: Optional[bool] = None + +class DescribeTLSInspectionConfigurationRequestRequestTypeDef(BaseModel): + TLSInspectionConfigurationArn: Optional[str] = None + TLSInspectionConfigurationName: Optional[str] = None + +class DimensionTypeDef(BaseModel): + Value: str + +class DisassociateSubnetsRequestRequestTypeDef(BaseModel): + SubnetIds: Sequence[str] + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class FirewallMetadataTypeDef(BaseModel): + FirewallName: Optional[str] = None + FirewallArn: Optional[str] = None + +class FirewallPolicyMetadataTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + +class StatefulEngineOptionsTypeDef(BaseModel): + RuleOrder: Optional[RuleOrderType] = None + StreamExceptionPolicy: Optional[StreamExceptionPolicyType] = None + +class StatelessRuleGroupReferenceTypeDef(BaseModel): + ResourceArn: str + Priority: int + +class HeaderTypeDef(BaseModel): + Protocol: StatefulRuleProtocolType + Source: str + SourcePort: str + Direction: StatefulRuleDirectionType + Destination: str + DestinationPort: str + +class IPSetReferenceTypeDef(BaseModel): + ReferenceArn: Optional[str] = None + +class IPSetTypeDef(BaseModel): + Definition: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListFirewallPoliciesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFirewallsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + VpcIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + +class ListRuleGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Scope: Optional[ResourceManagedStatusType] = None + ManagedType: Optional[ResourceManagedTypeType] = None + Type: Optional[RuleGroupTypeType] = None + +class RuleGroupMetadataTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + +class ListTLSInspectionConfigurationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TLSInspectionConfigurationMetadataTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class LogDestinationConfigTypeDef(BaseModel): + LogType: LogTypeType + LogDestinationType: LogDestinationTypeType + LogDestination: Dict[str, str] + +class PortRangeTypeDef(BaseModel): + FromPort: int + ToPort: int + +class TCPFlagFieldTypeDef(BaseModel): + Flags: Sequence[TCPFlagType] + Masks: Optional[Sequence[TCPFlagType]] = None + +class PerObjectStatusTypeDef(BaseModel): + SyncStatus: Optional[PerObjectSyncStatusType] = None + UpdateToken: Optional[str] = None + +class PortSetTypeDef(BaseModel): + Definition: Optional[Sequence[str]] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class RuleOptionTypeDef(BaseModel): + Keyword: str + Settings: Optional[Sequence[str]] = None + +class RulesSourceListTypeDef(BaseModel): + Targets: Sequence[str] + TargetTypes: Sequence[TargetTypeType] + GeneratedRulesType: GeneratedRulesTypeType + +class ServerCertificateTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class StatefulRuleGroupOverrideTypeDef(BaseModel): + Action: Optional[Literal["DROP_TO_ALERT"]] = None + +class TlsCertificateDataTypeDef(BaseModel): + CertificateArn: Optional[str] = None + CertificateSerial: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateFirewallDeleteProtectionRequestRequestTypeDef(BaseModel): + DeleteProtection: bool + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class UpdateFirewallDescriptionRequestRequestTypeDef(BaseModel): + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + Description: Optional[str] = None + +class UpdateFirewallPolicyChangeProtectionRequestRequestTypeDef(BaseModel): + FirewallPolicyChangeProtection: bool + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class UpdateSubnetChangeProtectionRequestRequestTypeDef(BaseModel): + SubnetChangeProtection: bool + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class AssociateFirewallPolicyResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + FirewallPolicyArn: str + UpdateToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourcePolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallDeleteProtectionResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + DeleteProtection: bool + UpdateToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallDescriptionResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + Description: str + UpdateToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallPolicyChangeProtectionResponseTypeDef(BaseModel): + UpdateToken: str + FirewallArn: str + FirewallName: str + FirewallPolicyChangeProtection: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSubnetChangeProtectionResponseTypeDef(BaseModel): + UpdateToken: str + FirewallArn: str + FirewallName: str + SubnetChangeProtection: bool + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateSubnetsRequestRequestTypeDef(BaseModel): + SubnetMappings: Sequence[SubnetMappingTypeDef] + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + +class AssociateSubnetsResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + SubnetMappings: List[SubnetMappingTypeDef] + UpdateToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateSubnetsResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + SubnetMappings: List[SubnetMappingTypeDef] + UpdateToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CIDRSummaryTypeDef(BaseModel): + AvailableCIDRCount: Optional[int] = None + UtilizedCIDRCount: Optional[int] = None + IPSetReferences: Optional[Dict[str, IPSetMetadataTypeDef]] = None + +class UpdateFirewallEncryptionConfigurationRequestRequestTypeDef(BaseModel): + UpdateToken: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class UpdateFirewallEncryptionConfigurationResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + UpdateToken: str + EncryptionConfiguration: EncryptionConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFirewallRequestRequestTypeDef(BaseModel): + FirewallName: str + FirewallPolicyArn: str + VpcId: str + SubnetMappings: Sequence[SubnetMappingTypeDef] + DeleteProtection: Optional[bool] = None + SubnetChangeProtection: Optional[bool] = None + FirewallPolicyChangeProtection: Optional[bool] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class FirewallPolicyResponseTypeDef(BaseModel): + FirewallPolicyName: str + FirewallPolicyArn: str + FirewallPolicyId: str + Description: Optional[str] = None + FirewallPolicyStatus: Optional[ResourceStatusType] = None + Tags: Optional[List[TagTypeDef]] = None + ConsumedStatelessRuleCapacity: Optional[int] = None + ConsumedStatefulRuleCapacity: Optional[int] = None + NumberOfAssociations: Optional[int] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + LastModifiedTime: Optional[datetime] = None + +class FirewallTypeDef(BaseModel): + FirewallPolicyArn: str + VpcId: str + SubnetMappings: List[SubnetMappingTypeDef] + FirewallId: str + FirewallName: Optional[str] = None + FirewallArn: Optional[str] = None + DeleteProtection: Optional[bool] = None + SubnetChangeProtection: Optional[bool] = None + FirewallPolicyChangeProtection: Optional[bool] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + NextToken: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class RuleGroupResponseTypeDef(BaseModel): + RuleGroupArn: str + RuleGroupName: str + RuleGroupId: str + Description: Optional[str] = None + Type: Optional[RuleGroupTypeType] = None + Capacity: Optional[int] = None + RuleGroupStatus: Optional[ResourceStatusType] = None + Tags: Optional[List[TagTypeDef]] = None + ConsumedCapacity: Optional[int] = None + NumberOfAssociations: Optional[int] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + SourceMetadata: Optional[SourceMetadataTypeDef] = None + SnsTopic: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + AnalysisResults: Optional[List[AnalysisResultTypeDef]] = None + +class DescribeRuleGroupMetadataResponseTypeDef(BaseModel): + RuleGroupArn: str + RuleGroupName: str + Description: str + Type: RuleGroupTypeType + Capacity: int + StatefulRuleOptions: StatefulRuleOptionsTypeDef + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PublishMetricActionTypeDef(BaseModel): + Dimensions: Sequence[DimensionTypeDef] + +class ListFirewallsResponseTypeDef(BaseModel): + NextToken: str + Firewalls: List[FirewallMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFirewallPoliciesResponseTypeDef(BaseModel): + NextToken: str + FirewallPolicies: List[FirewallPolicyMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReferenceSetsTypeDef(BaseModel): + IPSetReferences: Optional[Mapping[str, IPSetReferenceTypeDef]] = None + +class PolicyVariablesTypeDef(BaseModel): + RuleVariables: Optional[Mapping[str, IPSetTypeDef]] = None + +class ListFirewallPoliciesRequestListFirewallPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFirewallsRequestListFirewallsPaginateTypeDef(BaseModel): + VpcIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRuleGroupsRequestListRuleGroupsPaginateTypeDef(BaseModel): + Scope: Optional[ResourceManagedStatusType] = None + ManagedType: Optional[ResourceManagedTypeType] = None + Type: Optional[RuleGroupTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTLSInspectionConfigurationsRequestListTLSInspectionConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRuleGroupsResponseTypeDef(BaseModel): + NextToken: str + RuleGroups: List[RuleGroupMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTLSInspectionConfigurationsResponseTypeDef(BaseModel): + NextToken: str + TLSInspectionConfigurations: List[TLSInspectionConfigurationMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingConfigurationTypeDef(BaseModel): + LogDestinationConfigs: List[LogDestinationConfigTypeDef] + +class ServerCertificateScopeTypeDef(BaseModel): + Sources: Optional[Sequence[AddressTypeDef]] = None + Destinations: Optional[Sequence[AddressTypeDef]] = None + SourcePorts: Optional[Sequence[PortRangeTypeDef]] = None + DestinationPorts: Optional[Sequence[PortRangeTypeDef]] = None + Protocols: Optional[Sequence[int]] = None + +class MatchAttributesTypeDef(BaseModel): + Sources: Optional[Sequence[AddressTypeDef]] = None + Destinations: Optional[Sequence[AddressTypeDef]] = None + SourcePorts: Optional[Sequence[PortRangeTypeDef]] = None + DestinationPorts: Optional[Sequence[PortRangeTypeDef]] = None + Protocols: Optional[Sequence[int]] = None + TCPFlags: Optional[Sequence[TCPFlagFieldTypeDef]] = None + +class SyncStateTypeDef(BaseModel): + Attachment: Optional[AttachmentTypeDef] = None + Config: Optional[Dict[str, PerObjectStatusTypeDef]] = None + +class RuleVariablesTypeDef(BaseModel): + IPSets: Optional[Mapping[str, IPSetTypeDef]] = None + PortSets: Optional[Mapping[str, PortSetTypeDef]] = None + +class StatefulRuleTypeDef(BaseModel): + Action: StatefulActionType + Header: HeaderTypeDef + RuleOptions: Sequence[RuleOptionTypeDef] + +class StatefulRuleGroupReferenceTypeDef(BaseModel): + ResourceArn: str + Priority: Optional[int] = None + Override: Optional[StatefulRuleGroupOverrideTypeDef] = None + +class TLSInspectionConfigurationResponseTypeDef(BaseModel): + TLSInspectionConfigurationArn: str + TLSInspectionConfigurationName: str + TLSInspectionConfigurationId: str + TLSInspectionConfigurationStatus: Optional[ResourceStatusType] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + LastModifiedTime: Optional[datetime] = None + NumberOfAssociations: Optional[int] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + Certificates: Optional[List[TlsCertificateDataTypeDef]] = None + CertificateAuthority: Optional[TlsCertificateDataTypeDef] = None + +class CapacityUsageSummaryTypeDef(BaseModel): + CIDRs: Optional[CIDRSummaryTypeDef] = None + +class CreateFirewallPolicyResponseTypeDef(BaseModel): + UpdateToken: str + FirewallPolicyResponse: FirewallPolicyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFirewallPolicyResponseTypeDef(BaseModel): + FirewallPolicyResponse: FirewallPolicyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallPolicyResponseTypeDef(BaseModel): + UpdateToken: str + FirewallPolicyResponse: FirewallPolicyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleGroupResponseTypeDef(BaseModel): + UpdateToken: str + RuleGroupResponse: RuleGroupResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRuleGroupResponseTypeDef(BaseModel): + RuleGroupResponse: RuleGroupResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleGroupResponseTypeDef(BaseModel): + UpdateToken: str + RuleGroupResponse: RuleGroupResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ActionDefinitionTypeDef(BaseModel): + PublishMetricAction: Optional[PublishMetricActionTypeDef] = None + +class DescribeLoggingConfigurationResponseTypeDef(BaseModel): + FirewallArn: str + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLoggingConfigurationRequestRequestTypeDef(BaseModel): + FirewallArn: Optional[str] = None + FirewallName: Optional[str] = None + LoggingConfiguration: Optional[LoggingConfigurationTypeDef] = None + +class UpdateLoggingConfigurationResponseTypeDef(BaseModel): + FirewallArn: str + FirewallName: str + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ServerCertificateConfigurationTypeDef(BaseModel): + ServerCertificates: Optional[Sequence[ServerCertificateTypeDef]] = None + Scopes: Optional[Sequence[ServerCertificateScopeTypeDef]] = None + CertificateAuthorityArn: Optional[str] = None + CheckCertificateRevocationStatus: Optional[ CheckCertificateRevocationStatusActionsTypeDef ] = None + +class RuleDefinitionTypeDef(BaseModel): + MatchAttributes: MatchAttributesTypeDef + Actions: Sequence[str] + +class CreateTLSInspectionConfigurationResponseTypeDef(BaseModel): + UpdateToken: str + TLSInspectionConfigurationResponse: TLSInspectionConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTLSInspectionConfigurationResponseTypeDef(BaseModel): + TLSInspectionConfigurationResponse: TLSInspectionConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTLSInspectionConfigurationResponseTypeDef(BaseModel): + UpdateToken: str + TLSInspectionConfigurationResponse: TLSInspectionConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FirewallStatusTypeDef(BaseModel): + Status: FirewallStatusValueType + ConfigurationSyncStateSummary: ConfigurationSyncStateType + SyncStates: Optional[Dict[str, SyncStateTypeDef]] = None + CapacityUsageSummary: Optional[CapacityUsageSummaryTypeDef] = None + +class CustomActionTypeDef(BaseModel): + ActionName: str + ActionDefinition: ActionDefinitionTypeDef + +class TLSInspectionConfigurationTypeDef(BaseModel): + ServerCertificateConfigurations: Optional[ Sequence[ServerCertificateConfigurationTypeDef] ] = None + +class StatelessRuleTypeDef(BaseModel): + RuleDefinition: RuleDefinitionTypeDef + Priority: int + +class CreateFirewallResponseTypeDef(BaseModel): + Firewall: FirewallTypeDef + FirewallStatus: FirewallStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFirewallResponseTypeDef(BaseModel): + Firewall: FirewallTypeDef + FirewallStatus: FirewallStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFirewallResponseTypeDef(BaseModel): + UpdateToken: str + Firewall: FirewallTypeDef + FirewallStatus: FirewallStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FirewallPolicyTypeDef(BaseModel): + StatelessDefaultActions: Sequence[str] + StatelessFragmentDefaultActions: Sequence[str] + StatelessRuleGroupReferences: Optional[Sequence[StatelessRuleGroupReferenceTypeDef]] = None + StatelessCustomActions: Optional[Sequence[CustomActionTypeDef]] = None + StatefulRuleGroupReferences: Optional[Sequence[StatefulRuleGroupReferenceTypeDef]] = None + StatefulDefaultActions: Optional[Sequence[str]] = None + StatefulEngineOptions: Optional[StatefulEngineOptionsTypeDef] = None + TLSInspectionConfigurationArn: Optional[str] = None + PolicyVariables: Optional[PolicyVariablesTypeDef] = None + +class CreateTLSInspectionConfigurationRequestRequestTypeDef(BaseModel): + TLSInspectionConfigurationName: str + TLSInspectionConfiguration: TLSInspectionConfigurationTypeDef + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class DescribeTLSInspectionConfigurationResponseTypeDef(BaseModel): + UpdateToken: str + TLSInspectionConfiguration: TLSInspectionConfigurationTypeDef + TLSInspectionConfigurationResponse: TLSInspectionConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTLSInspectionConfigurationRequestRequestTypeDef(BaseModel): + TLSInspectionConfiguration: TLSInspectionConfigurationTypeDef + UpdateToken: str + TLSInspectionConfigurationArn: Optional[str] = None + TLSInspectionConfigurationName: Optional[str] = None + Description: Optional[str] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class StatelessRulesAndCustomActionsTypeDef(BaseModel): + StatelessRules: Sequence[StatelessRuleTypeDef] + CustomActions: Optional[Sequence[CustomActionTypeDef]] = None + +class CreateFirewallPolicyRequestRequestTypeDef(BaseModel): + FirewallPolicyName: str + FirewallPolicy: FirewallPolicyTypeDef + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DryRun: Optional[bool] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class DescribeFirewallPolicyResponseTypeDef(BaseModel): + UpdateToken: str + FirewallPolicyResponse: FirewallPolicyResponseTypeDef + FirewallPolicy: FirewallPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallPolicyRequestRequestTypeDef(BaseModel): + UpdateToken: str + FirewallPolicy: FirewallPolicyTypeDef + FirewallPolicyArn: Optional[str] = None + FirewallPolicyName: Optional[str] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + +class RulesSourceTypeDef(BaseModel): + RulesString: Optional[str] = None + RulesSourceList: Optional[RulesSourceListTypeDef] = None + StatefulRules: Optional[Sequence[StatefulRuleTypeDef]] = None + StatelessRulesAndCustomActions: Optional[StatelessRulesAndCustomActionsTypeDef] = None + +class RuleGroupTypeDef(BaseModel): + RulesSource: RulesSourceTypeDef + RuleVariables: Optional[RuleVariablesTypeDef] = None + ReferenceSets: Optional[ReferenceSetsTypeDef] = None + StatefulRuleOptions: Optional[StatefulRuleOptionsTypeDef] = None + +class CreateRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupName: str + Type: RuleGroupTypeType + Capacity: int + RuleGroup: Optional[RuleGroupTypeDef] = None + Rules: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DryRun: Optional[bool] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + SourceMetadata: Optional[SourceMetadataTypeDef] = None + AnalyzeRuleGroup: Optional[bool] = None + +class DescribeRuleGroupResponseTypeDef(BaseModel): + UpdateToken: str + RuleGroup: RuleGroupTypeDef + RuleGroupResponse: RuleGroupResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleGroupRequestRequestTypeDef(BaseModel): + UpdateToken: str + RuleGroupArn: Optional[str] = None + RuleGroupName: Optional[str] = None + RuleGroup: Optional[RuleGroupTypeDef] = None + Rules: Optional[str] = None + Type: Optional[RuleGroupTypeType] = None + Description: Optional[str] = None + DryRun: Optional[bool] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + SourceMetadata: Optional[SourceMetadataTypeDef] = None + AnalyzeRuleGroup: Optional[bool] = None + diff --git a/aws_resource_validator/pydantic_models/network_firewall_constants.py b/aws_resource_validator/pydantic_models/network_firewall_constants.py new file mode 100644 index 00000000..6e29f3a3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/network_firewall_constants.py @@ -0,0 +1,467 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttachmentStatusType = Literal["CREATING", "DELETING", "ERROR", "FAILED", "READY", "SCALING"] +ConfigurationSyncStateType = Literal["CAPACITY_CONSTRAINED", "IN_SYNC", "PENDING"] +EncryptionTypeType = Literal["AWS_OWNED_KMS_KEY", "CUSTOMER_KMS"] +FirewallStatusValueType = Literal["DELETING", "PROVISIONING", "READY"] +GeneratedRulesTypeType = Literal["ALLOWLIST", "DENYLIST"] +IPAddressTypeType = Literal["DUALSTACK", "IPV4", "IPV6"] +IdentifiedTypeType = Literal["STATELESS_RULE_CONTAINS_TCP_FLAGS", "STATELESS_RULE_FORWARDING_ASYMMETRICALLY"] +ListFirewallPoliciesPaginatorName = Literal["list_firewall_policies"] +ListFirewallsPaginatorName = Literal["list_firewalls"] +ListRuleGroupsPaginatorName = Literal["list_rule_groups"] +ListTLSInspectionConfigurationsPaginatorName = Literal["list_tls_inspection_configurations"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +LogDestinationTypeType = Literal["CloudWatchLogs", "KinesisDataFirehose", "S3"] +LogTypeType = Literal["ALERT", "FLOW"] +OverrideActionType = Literal["DROP_TO_ALERT"] +PerObjectSyncStatusType = Literal["CAPACITY_CONSTRAINED", "IN_SYNC", "PENDING"] +ResourceManagedStatusType = Literal["ACCOUNT", "MANAGED"] +ResourceManagedTypeType = Literal["AWS_MANAGED_DOMAIN_LISTS", "AWS_MANAGED_THREAT_SIGNATURES"] +ResourceStatusType = Literal["ACTIVE", "DELETING", "ERROR"] +RevocationCheckActionType = Literal["DROP", "PASS", "REJECT"] +RuleGroupTypeType = Literal["STATEFUL", "STATELESS"] +RuleOrderType = Literal["DEFAULT_ACTION_ORDER", "STRICT_ORDER"] +StatefulActionType = Literal["ALERT", "DROP", "PASS", "REJECT"] +StatefulRuleDirectionType = Literal["ANY", "FORWARD"] +StatefulRuleProtocolType = Literal["DCERPC", + "DHCP", + "DNS", + "FTP", + "HTTP", + "ICMP", + "IKEV2", + "IMAP", + "IP", + "KRB5", + "MSN", + "NTP", + "SMB", + "SMTP", + "SSH", + "TCP", + "TFTP", + "TLS", + "UDP",] +StreamExceptionPolicyType = Literal["CONTINUE", "DROP", "REJECT"] +TCPFlagType = Literal["ACK", "CWR", "ECE", "FIN", "PSH", "RST", "SYN", "URG"] +TargetTypeType = Literal["HTTP_HOST", "TLS_SNI"] +NetworkFirewallServiceName = Literal["network-firewall"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_firewall_policies", + "list_firewalls", + "list_rule_groups", + "list_tags_for_resource", + "list_tls_inspection_configurations",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/networkmanager_classes.py b/aws_resource_validator/pydantic_models/networkmanager_classes.py new file mode 100644 index 00000000..5195edf8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/networkmanager_classes.py @@ -0,0 +1,1454 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.networkmanager_constants import * + +class AWSLocationTypeDef(BaseModel): + Zone: Optional[str] = None + SubnetArn: Optional[str] = None + +class AcceptAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AccountStatusTypeDef(BaseModel): + AccountId: Optional[str] = None + SLRDeploymentStatus: Optional[str] = None + +class AssociateConnectPeerRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ConnectPeerId: str + DeviceId: str + LinkId: Optional[str] = None + +class ConnectPeerAssociationTypeDef(BaseModel): + ConnectPeerId: Optional[str] = None + GlobalNetworkId: Optional[str] = None + DeviceId: Optional[str] = None + LinkId: Optional[str] = None + State: Optional[ConnectPeerAssociationStateType] = None + +class AssociateCustomerGatewayRequestRequestTypeDef(BaseModel): + CustomerGatewayArn: str + GlobalNetworkId: str + DeviceId: str + LinkId: Optional[str] = None + +class CustomerGatewayAssociationTypeDef(BaseModel): + CustomerGatewayArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + DeviceId: Optional[str] = None + LinkId: Optional[str] = None + State: Optional[CustomerGatewayAssociationStateType] = None + +class AssociateLinkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: str + LinkId: str + +class LinkAssociationTypeDef(BaseModel): + GlobalNetworkId: Optional[str] = None + DeviceId: Optional[str] = None + LinkId: Optional[str] = None + LinkAssociationState: Optional[LinkAssociationStateType] = None + +class AssociateTransitGatewayConnectPeerRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayConnectPeerArn: str + DeviceId: str + LinkId: Optional[str] = None + +class TransitGatewayConnectPeerAssociationTypeDef(BaseModel): + TransitGatewayConnectPeerArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + DeviceId: Optional[str] = None + LinkId: Optional[str] = None + State: Optional[TransitGatewayConnectPeerAssociationStateType] = None + +class AttachmentErrorTypeDef(BaseModel): + Code: Optional[AttachmentErrorCodeType] = None + Message: Optional[str] = None + ResourceArn: Optional[str] = None + RequestId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class BandwidthTypeDef(BaseModel): + UploadSpeed: Optional[int] = None + DownloadSpeed: Optional[int] = None + +class BgpOptionsTypeDef(BaseModel): + PeerAsn: Optional[int] = None + +class ConnectAttachmentOptionsTypeDef(BaseModel): + Protocol: Optional[TunnelProtocolType] = None + +class ConnectPeerBgpConfigurationTypeDef(BaseModel): + CoreNetworkAsn: Optional[int] = None + PeerAsn: Optional[int] = None + CoreNetworkAddress: Optional[str] = None + PeerAddress: Optional[str] = None + +class ConnectPeerErrorTypeDef(BaseModel): + Code: Optional[ConnectPeerErrorCodeType] = None + Message: Optional[str] = None + ResourceArn: Optional[str] = None + RequestId: Optional[str] = None + +class ConnectionHealthTypeDef(BaseModel): + Type: Optional[ConnectionTypeType] = None + Status: Optional[ConnectionStatusType] = None + Timestamp: Optional[datetime] = None + +class CoreNetworkChangeEventValuesTypeDef(BaseModel): + EdgeLocation: Optional[str] = None + SegmentName: Optional[str] = None + NetworkFunctionGroupName: Optional[str] = None + AttachmentId: Optional[str] = None + Cidr: Optional[str] = None + +class CoreNetworkEdgeTypeDef(BaseModel): + EdgeLocation: Optional[str] = None + Asn: Optional[int] = None + InsideCidrBlocks: Optional[List[str]] = None + +class CoreNetworkNetworkFunctionGroupIdentifierTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + NetworkFunctionGroupName: Optional[str] = None + EdgeLocation: Optional[str] = None + +class ServiceInsertionSegmentsTypeDef(BaseModel): + SendVia: Optional[List[str]] = None + SendTo: Optional[List[str]] = None + +class CoreNetworkPolicyErrorTypeDef(BaseModel): + ErrorCode: str + Message: str + Path: Optional[str] = None + +class CoreNetworkPolicyVersionTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + PolicyVersionId: Optional[int] = None + Alias: Optional[CoreNetworkPolicyAliasType] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + ChangeSetState: Optional[ChangeSetStateType] = None + +class CoreNetworkSegmentEdgeIdentifierTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + SegmentName: Optional[str] = None + EdgeLocation: Optional[str] = None + +class CoreNetworkSegmentTypeDef(BaseModel): + Name: Optional[str] = None + EdgeLocations: Optional[List[str]] = None + SharedSegments: Optional[List[str]] = None + +class LocationTypeDef(BaseModel): + Address: Optional[str] = None + Latitude: Optional[str] = None + Longitude: Optional[str] = None + +class VpcOptionsTypeDef(BaseModel): + Ipv6Support: Optional[bool] = None + ApplianceModeSupport: Optional[bool] = None + +class DeleteAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class DeleteConnectPeerRequestRequestTypeDef(BaseModel): + ConnectPeerId: str + +class DeleteConnectionRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ConnectionId: str + +class DeleteCoreNetworkPolicyVersionRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + +class DeleteCoreNetworkRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + +class DeleteDeviceRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: str + +class DeleteGlobalNetworkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + +class DeleteLinkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + LinkId: str + +class DeletePeeringRequestRequestTypeDef(BaseModel): + PeeringId: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteSiteRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + SiteId: str + +class DeregisterTransitGatewayRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeGlobalNetworksRequestRequestTypeDef(BaseModel): + GlobalNetworkIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DisassociateConnectPeerRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ConnectPeerId: str + +class DisassociateCustomerGatewayRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + CustomerGatewayArn: str + +class DisassociateLinkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: str + LinkId: str + +class DisassociateTransitGatewayConnectPeerRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayConnectPeerArn: str + +class EdgeOverrideTypeDef(BaseModel): + EdgeSets: Optional[List[List[str]]] = None + UseEdge: Optional[str] = None + +class ExecuteCoreNetworkChangeSetRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + +class GetConnectAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class GetConnectPeerAssociationsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ConnectPeerIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetConnectPeerRequestRequestTypeDef(BaseModel): + ConnectPeerId: str + +class GetConnectionsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ConnectionIds: Optional[Sequence[str]] = None + DeviceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetCoreNetworkChangeEventsRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetCoreNetworkChangeSetRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetCoreNetworkPolicyRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: Optional[int] = None + Alias: Optional[CoreNetworkPolicyAliasType] = None + +class GetCoreNetworkRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + +class GetCustomerGatewayAssociationsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + CustomerGatewayArns: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetDevicesRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceIds: Optional[Sequence[str]] = None + SiteId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetLinkAssociationsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: Optional[str] = None + LinkId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetLinksRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + LinkIds: Optional[Sequence[str]] = None + SiteId: Optional[str] = None + Type: Optional[str] = None + Provider: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetNetworkResourceCountsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ResourceType: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NetworkResourceCountTypeDef(BaseModel): + ResourceType: Optional[str] = None + Count: Optional[int] = None + +class GetNetworkResourceRelationshipsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + CoreNetworkId: Optional[str] = None + RegisteredGatewayArn: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RelationshipTypeDef(BaseModel): + From: Optional[str] = None + To: Optional[str] = None + +class GetNetworkResourcesRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + CoreNetworkId: Optional[str] = None + RegisteredGatewayArn: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetNetworkTelemetryRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + CoreNetworkId: Optional[str] = None + RegisteredGatewayArn: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetRouteAnalysisRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + RouteAnalysisId: str + +class GetSiteToSiteVpnAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class GetSitesRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + SiteIds: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetTransitGatewayConnectPeerAssociationsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayConnectPeerArns: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetTransitGatewayPeeringRequestRequestTypeDef(BaseModel): + PeeringId: str + +class GetTransitGatewayRegistrationsRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayArns: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetTransitGatewayRouteTableAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class GetVpcAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class ListAttachmentsRequestRequestTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + AttachmentType: Optional[AttachmentTypeType] = None + EdgeLocation: Optional[str] = None + State: Optional[AttachmentStateType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConnectPeersRequestRequestTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + ConnectAttachmentId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCoreNetworkPolicyVersionsRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCoreNetworksRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOrganizationServiceAccessStatusRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPeeringsRequestRequestTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + PeeringType: Optional[Literal["TRANSIT_GATEWAY"]] = None + EdgeLocation: Optional[str] = None + State: Optional[PeeringStateType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class NetworkFunctionGroupTypeDef(BaseModel): + Name: Optional[str] = None + +class NetworkResourceSummaryTypeDef(BaseModel): + RegisteredGatewayArn: Optional[str] = None + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + Definition: Optional[str] = None + NameTag: Optional[str] = None + IsMiddlebox: Optional[bool] = None + +class NetworkRouteDestinationTypeDef(BaseModel): + CoreNetworkAttachmentId: Optional[str] = None + TransitGatewayAttachmentId: Optional[str] = None + SegmentName: Optional[str] = None + NetworkFunctionGroupName: Optional[str] = None + EdgeLocation: Optional[str] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + +class PermissionsErrorContextTypeDef(BaseModel): + MissingPermission: Optional[str] = None + +class PutCoreNetworkPolicyRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyDocument: str + Description: Optional[str] = None + LatestVersionId: Optional[int] = None + ClientToken: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + PolicyDocument: str + ResourceArn: str + +class RegisterTransitGatewayRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayArn: str + +class RejectAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + +class RestoreCoreNetworkPolicyVersionRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + +class RouteAnalysisCompletionTypeDef(BaseModel): + ResultCode: Optional[RouteAnalysisCompletionResultCodeType] = None + ReasonCode: Optional[RouteAnalysisCompletionReasonCodeType] = None + ReasonContext: Optional[Dict[str, str]] = None + +class RouteAnalysisEndpointOptionsSpecificationTypeDef(BaseModel): + TransitGatewayAttachmentArn: Optional[str] = None + IpAddress: Optional[str] = None + +class RouteAnalysisEndpointOptionsTypeDef(BaseModel): + TransitGatewayAttachmentArn: Optional[str] = None + TransitGatewayArn: Optional[str] = None + IpAddress: Optional[str] = None + +class WhenSentToTypeDef(BaseModel): + WhenSentToSegmentsList: Optional[List[str]] = None + +class StartOrganizationServiceAccessUpdateRequestRequestTypeDef(BaseModel): + Action: str + +class TransitGatewayRegistrationStateReasonTypeDef(BaseModel): + Code: Optional[TransitGatewayRegistrationStateType] = None + Message: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateConnectionRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ConnectionId: str + LinkId: Optional[str] = None + ConnectedLinkId: Optional[str] = None + Description: Optional[str] = None + +class UpdateCoreNetworkRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + Description: Optional[str] = None + +class UpdateGlobalNetworkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + Description: Optional[str] = None + +class UpdateNetworkResourceMetadataRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + ResourceArn: str + Metadata: Mapping[str, str] + +class GetResourcePolicyResponseTypeDef(BaseModel): + PolicyDocument: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNetworkResourceMetadataResponseTypeDef(BaseModel): + ResourceArn: str + Metadata: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class OrganizationStatusTypeDef(BaseModel): + OrganizationId: Optional[str] = None + OrganizationAwsServiceAccessStatus: Optional[str] = None + SLRDeploymentStatus: Optional[str] = None + AccountStatusList: Optional[List[AccountStatusTypeDef]] = None + +class AssociateConnectPeerResponseTypeDef(BaseModel): + ConnectPeerAssociation: ConnectPeerAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateConnectPeerResponseTypeDef(BaseModel): + ConnectPeerAssociation: ConnectPeerAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectPeerAssociationsResponseTypeDef(BaseModel): + ConnectPeerAssociations: List[ConnectPeerAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateCustomerGatewayResponseTypeDef(BaseModel): + CustomerGatewayAssociation: CustomerGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateCustomerGatewayResponseTypeDef(BaseModel): + CustomerGatewayAssociation: CustomerGatewayAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomerGatewayAssociationsResponseTypeDef(BaseModel): + CustomerGatewayAssociations: List[CustomerGatewayAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateLinkResponseTypeDef(BaseModel): + LinkAssociation: LinkAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateLinkResponseTypeDef(BaseModel): + LinkAssociation: LinkAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLinkAssociationsResponseTypeDef(BaseModel): + LinkAssociations: List[LinkAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateTransitGatewayConnectPeerResponseTypeDef(BaseModel): + TransitGatewayConnectPeerAssociation: TransitGatewayConnectPeerAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateTransitGatewayConnectPeerResponseTypeDef(BaseModel): + TransitGatewayConnectPeerAssociation: TransitGatewayConnectPeerAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayConnectPeerAssociationsResponseTypeDef(BaseModel): + TransitGatewayConnectPeerAssociations: List[TransitGatewayConnectPeerAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ConnectPeerSummaryTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + ConnectAttachmentId: Optional[str] = None + ConnectPeerId: Optional[str] = None + EdgeLocation: Optional[str] = None + ConnectPeerState: Optional[ConnectPeerStateType] = None + CreatedAt: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + SubnetArn: Optional[str] = None + +class ConnectionTypeDef(BaseModel): + ConnectionId: Optional[str] = None + ConnectionArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + DeviceId: Optional[str] = None + ConnectedDeviceId: Optional[str] = None + LinkId: Optional[str] = None + ConnectedLinkId: Optional[str] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + State: Optional[ConnectionStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class CoreNetworkSummaryTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + OwnerAccountId: Optional[str] = None + State: Optional[CoreNetworkStateType] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateConnectionRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: str + ConnectedDeviceId: str + LinkId: Optional[str] = None + ConnectedLinkId: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateCoreNetworkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + PolicyDocument: Optional[str] = None + ClientToken: Optional[str] = None + +class CreateGlobalNetworkRequestRequestTypeDef(BaseModel): + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSiteToSiteVpnAttachmentRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + VpnConnectionArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateTransitGatewayPeeringRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + TransitGatewayArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateTransitGatewayRouteTableAttachmentRequestRequestTypeDef(BaseModel): + PeeringId: str + TransitGatewayRouteTableArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class GlobalNetworkTypeDef(BaseModel): + GlobalNetworkId: Optional[str] = None + GlobalNetworkArn: Optional[str] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + State: Optional[GlobalNetworkStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkResourceTypeDef(BaseModel): + RegisteredGatewayArn: Optional[str] = None + CoreNetworkId: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ResourceArn: Optional[str] = None + Definition: Optional[str] = None + DefinitionTimestamp: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + Metadata: Optional[Dict[str, str]] = None + +class ProposedNetworkFunctionGroupChangeTypeDef(BaseModel): + Tags: Optional[List[TagTypeDef]] = None + AttachmentPolicyRuleNumber: Optional[int] = None + NetworkFunctionGroupName: Optional[str] = None + +class ProposedSegmentChangeTypeDef(BaseModel): + Tags: Optional[List[TagTypeDef]] = None + AttachmentPolicyRuleNumber: Optional[int] = None + SegmentName: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateLinkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + Bandwidth: BandwidthTypeDef + SiteId: str + Description: Optional[str] = None + Type: Optional[str] = None + Provider: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class LinkTypeDef(BaseModel): + LinkId: Optional[str] = None + LinkArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + SiteId: Optional[str] = None + Description: Optional[str] = None + Type: Optional[str] = None + Bandwidth: Optional[BandwidthTypeDef] = None + Provider: Optional[str] = None + CreatedAt: Optional[datetime] = None + State: Optional[LinkStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class UpdateLinkRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + LinkId: str + Description: Optional[str] = None + Type: Optional[str] = None + Bandwidth: Optional[BandwidthTypeDef] = None + Provider: Optional[str] = None + +class CreateConnectPeerRequestRequestTypeDef(BaseModel): + ConnectAttachmentId: str + PeerAddress: str + CoreNetworkAddress: Optional[str] = None + BgpOptions: Optional[BgpOptionsTypeDef] = None + InsideCidrBlocks: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + SubnetArn: Optional[str] = None + +class CreateConnectAttachmentRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + EdgeLocation: str + TransportAttachmentId: str + Options: ConnectAttachmentOptionsTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class ConnectPeerConfigurationTypeDef(BaseModel): + CoreNetworkAddress: Optional[str] = None + PeerAddress: Optional[str] = None + InsideCidrBlocks: Optional[List[str]] = None + Protocol: Optional[TunnelProtocolType] = None + BgpConfigurations: Optional[List[ConnectPeerBgpConfigurationTypeDef]] = None + +class NetworkTelemetryTypeDef(BaseModel): + RegisteredGatewayArn: Optional[str] = None + CoreNetworkId: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ResourceArn: Optional[str] = None + Address: Optional[str] = None + Health: Optional[ConnectionHealthTypeDef] = None + +class CoreNetworkChangeEventTypeDef(BaseModel): + Type: Optional[ChangeTypeType] = None + Action: Optional[ChangeActionType] = None + IdentifierPath: Optional[str] = None + EventTime: Optional[datetime] = None + Status: Optional[ChangeStatusType] = None + Values: Optional[CoreNetworkChangeEventValuesTypeDef] = None + +class CoreNetworkNetworkFunctionGroupTypeDef(BaseModel): + Name: Optional[str] = None + EdgeLocations: Optional[List[str]] = None + Segments: Optional[ServiceInsertionSegmentsTypeDef] = None + +class CoreNetworkPolicyTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + PolicyVersionId: Optional[int] = None + Alias: Optional[CoreNetworkPolicyAliasType] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + ChangeSetState: Optional[ChangeSetStateType] = None + PolicyErrors: Optional[List[CoreNetworkPolicyErrorTypeDef]] = None + PolicyDocument: Optional[str] = None + +class ListCoreNetworkPolicyVersionsResponseTypeDef(BaseModel): + CoreNetworkPolicyVersions: List[CoreNetworkPolicyVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RouteTableIdentifierTypeDef(BaseModel): + TransitGatewayRouteTableArn: Optional[str] = None + CoreNetworkSegmentEdge: Optional[CoreNetworkSegmentEdgeIdentifierTypeDef] = None + CoreNetworkNetworkFunctionGroup: Optional[ CoreNetworkNetworkFunctionGroupIdentifierTypeDef ] = None + +class CreateDeviceRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + AWSLocation: Optional[AWSLocationTypeDef] = None + Description: Optional[str] = None + Type: Optional[str] = None + Vendor: Optional[str] = None + Model: Optional[str] = None + SerialNumber: Optional[str] = None + Location: Optional[LocationTypeDef] = None + SiteId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSiteRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + Description: Optional[str] = None + Location: Optional[LocationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DeviceTypeDef(BaseModel): + DeviceId: Optional[str] = None + DeviceArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + AWSLocation: Optional[AWSLocationTypeDef] = None + Description: Optional[str] = None + Type: Optional[str] = None + Vendor: Optional[str] = None + Model: Optional[str] = None + SerialNumber: Optional[str] = None + Location: Optional[LocationTypeDef] = None + SiteId: Optional[str] = None + CreatedAt: Optional[datetime] = None + State: Optional[DeviceStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class SiteTypeDef(BaseModel): + SiteId: Optional[str] = None + SiteArn: Optional[str] = None + GlobalNetworkId: Optional[str] = None + Description: Optional[str] = None + Location: Optional[LocationTypeDef] = None + CreatedAt: Optional[datetime] = None + State: Optional[SiteStateType] = None + Tags: Optional[List[TagTypeDef]] = None + +class UpdateDeviceRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: str + AWSLocation: Optional[AWSLocationTypeDef] = None + Description: Optional[str] = None + Type: Optional[str] = None + Vendor: Optional[str] = None + Model: Optional[str] = None + SerialNumber: Optional[str] = None + Location: Optional[LocationTypeDef] = None + SiteId: Optional[str] = None + +class UpdateSiteRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + SiteId: str + Description: Optional[str] = None + Location: Optional[LocationTypeDef] = None + +class CreateVpcAttachmentRequestRequestTypeDef(BaseModel): + CoreNetworkId: str + VpcArn: str + SubnetArns: Sequence[str] + Options: Optional[VpcOptionsTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class UpdateVpcAttachmentRequestRequestTypeDef(BaseModel): + AttachmentId: str + AddSubnetArns: Optional[Sequence[str]] = None + RemoveSubnetArns: Optional[Sequence[str]] = None + Options: Optional[VpcOptionsTypeDef] = None + +class DescribeGlobalNetworksRequestDescribeGlobalNetworksPaginateTypeDef(BaseModel): + GlobalNetworkIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetConnectPeerAssociationsRequestGetConnectPeerAssociationsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + ConnectPeerIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetConnectionsRequestGetConnectionsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + ConnectionIds: Optional[Sequence[str]] = None + DeviceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCoreNetworkChangeEventsRequestGetCoreNetworkChangeEventsPaginateTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCoreNetworkChangeSetRequestGetCoreNetworkChangeSetPaginateTypeDef(BaseModel): + CoreNetworkId: str + PolicyVersionId: int + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCustomerGatewayAssociationsRequestGetCustomerGatewayAssociationsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + CustomerGatewayArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetDevicesRequestGetDevicesPaginateTypeDef(BaseModel): + GlobalNetworkId: str + DeviceIds: Optional[Sequence[str]] = None + SiteId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetLinkAssociationsRequestGetLinkAssociationsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + DeviceId: Optional[str] = None + LinkId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetLinksRequestGetLinksPaginateTypeDef(BaseModel): + GlobalNetworkId: str + LinkIds: Optional[Sequence[str]] = None + SiteId: Optional[str] = None + Type: Optional[str] = None + Provider: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetNetworkResourceCountsRequestGetNetworkResourceCountsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + ResourceType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetNetworkResourceRelationshipsRequestGetNetworkResourceRelationshipsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + CoreNetworkId: Optional[str] = None + RegisteredGatewayArn: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetNetworkResourcesRequestGetNetworkResourcesPaginateTypeDef(BaseModel): + GlobalNetworkId: str + CoreNetworkId: Optional[str] = None + RegisteredGatewayArn: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetNetworkTelemetryRequestGetNetworkTelemetryPaginateTypeDef(BaseModel): + GlobalNetworkId: str + CoreNetworkId: Optional[str] = None + RegisteredGatewayArn: Optional[str] = None + AwsRegion: Optional[str] = None + AccountId: Optional[str] = None + ResourceType: Optional[str] = None + ResourceArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSitesRequestGetSitesPaginateTypeDef(BaseModel): + GlobalNetworkId: str + SiteIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayConnectPeerAssociationsRequestGetTransitGatewayConnectPeerAssociationsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayConnectPeerArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTransitGatewayRegistrationsRequestGetTransitGatewayRegistrationsPaginateTypeDef(BaseModel): + GlobalNetworkId: str + TransitGatewayArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachmentsRequestListAttachmentsPaginateTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + AttachmentType: Optional[AttachmentTypeType] = None + EdgeLocation: Optional[str] = None + State: Optional[AttachmentStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectPeersRequestListConnectPeersPaginateTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + ConnectAttachmentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoreNetworkPolicyVersionsRequestListCoreNetworkPolicyVersionsPaginateTypeDef(BaseModel): + CoreNetworkId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCoreNetworksRequestListCoreNetworksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPeeringsRequestListPeeringsPaginateTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + PeeringType: Optional[Literal["TRANSIT_GATEWAY"]] = None + EdgeLocation: Optional[str] = None + State: Optional[PeeringStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetNetworkResourceCountsResponseTypeDef(BaseModel): + NetworkResourceCounts: List[NetworkResourceCountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetNetworkResourceRelationshipsResponseTypeDef(BaseModel): + Relationships: List[RelationshipTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ViaTypeDef(BaseModel): + NetworkFunctionGroups: Optional[List[NetworkFunctionGroupTypeDef]] = None + WithEdgeOverrides: Optional[List[EdgeOverrideTypeDef]] = None + +class PathComponentTypeDef(BaseModel): + Sequence: Optional[int] = None + Resource: Optional[NetworkResourceSummaryTypeDef] = None + DestinationCidrBlock: Optional[str] = None + +class NetworkRouteTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + Destinations: Optional[List[NetworkRouteDestinationTypeDef]] = None + PrefixListId: Optional[str] = None + State: Optional[RouteStateType] = None + Type: Optional[RouteTypeType] = None + +class PeeringErrorTypeDef(BaseModel): + Code: Optional[PeeringErrorCodeType] = None + Message: Optional[str] = None + ResourceArn: Optional[str] = None + RequestId: Optional[str] = None + MissingPermissionsContext: Optional[PermissionsErrorContextTypeDef] = None + +class StartRouteAnalysisRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + Source: RouteAnalysisEndpointOptionsSpecificationTypeDef + Destination: RouteAnalysisEndpointOptionsSpecificationTypeDef + IncludeReturnPath: Optional[bool] = None + UseMiddleboxes: Optional[bool] = None + +class TransitGatewayRegistrationTypeDef(BaseModel): + GlobalNetworkId: Optional[str] = None + TransitGatewayArn: Optional[str] = None + State: Optional[TransitGatewayRegistrationStateReasonTypeDef] = None + +class ListOrganizationServiceAccessStatusResponseTypeDef(BaseModel): + OrganizationStatus: OrganizationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartOrganizationServiceAccessUpdateResponseTypeDef(BaseModel): + OrganizationStatus: OrganizationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectPeersResponseTypeDef(BaseModel): + ConnectPeers: List[ConnectPeerSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectionsResponseTypeDef(BaseModel): + Connections: List[ConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateConnectionResponseTypeDef(BaseModel): + Connection: ConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCoreNetworksResponseTypeDef(BaseModel): + CoreNetworks: List[CoreNetworkSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateGlobalNetworkResponseTypeDef(BaseModel): + GlobalNetwork: GlobalNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGlobalNetworkResponseTypeDef(BaseModel): + GlobalNetwork: GlobalNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGlobalNetworksResponseTypeDef(BaseModel): + GlobalNetworks: List[GlobalNetworkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateGlobalNetworkResponseTypeDef(BaseModel): + GlobalNetwork: GlobalNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkResourcesResponseTypeDef(BaseModel): + NetworkResources: List[NetworkResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AttachmentTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + AttachmentId: Optional[str] = None + OwnerAccountId: Optional[str] = None + AttachmentType: Optional[AttachmentTypeType] = None + State: Optional[AttachmentStateType] = None + EdgeLocation: Optional[str] = None + ResourceArn: Optional[str] = None + AttachmentPolicyRuleNumber: Optional[int] = None + SegmentName: Optional[str] = None + NetworkFunctionGroupName: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ProposedSegmentChange: Optional[ProposedSegmentChangeTypeDef] = None + ProposedNetworkFunctionGroupChange: Optional[ ProposedNetworkFunctionGroupChangeTypeDef ] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + LastModificationErrors: Optional[List[AttachmentErrorTypeDef]] = None + +class CreateLinkResponseTypeDef(BaseModel): + Link: LinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLinkResponseTypeDef(BaseModel): + Link: LinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLinksResponseTypeDef(BaseModel): + Links: List[LinkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateLinkResponseTypeDef(BaseModel): + Link: LinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectPeerTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + ConnectAttachmentId: Optional[str] = None + ConnectPeerId: Optional[str] = None + EdgeLocation: Optional[str] = None + State: Optional[ConnectPeerStateType] = None + CreatedAt: Optional[datetime] = None + Configuration: Optional[ConnectPeerConfigurationTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + SubnetArn: Optional[str] = None + LastModificationErrors: Optional[List[ConnectPeerErrorTypeDef]] = None + +class GetNetworkTelemetryResponseTypeDef(BaseModel): + NetworkTelemetry: List[NetworkTelemetryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCoreNetworkChangeEventsResponseTypeDef(BaseModel): + CoreNetworkChangeEvents: List[CoreNetworkChangeEventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CoreNetworkTypeDef(BaseModel): + GlobalNetworkId: Optional[str] = None + CoreNetworkId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + State: Optional[CoreNetworkStateType] = None + Segments: Optional[List[CoreNetworkSegmentTypeDef]] = None + NetworkFunctionGroups: Optional[List[CoreNetworkNetworkFunctionGroupTypeDef]] = None + Edges: Optional[List[CoreNetworkEdgeTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class DeleteCoreNetworkPolicyVersionResponseTypeDef(BaseModel): + CoreNetworkPolicy: CoreNetworkPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCoreNetworkPolicyResponseTypeDef(BaseModel): + CoreNetworkPolicy: CoreNetworkPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutCoreNetworkPolicyResponseTypeDef(BaseModel): + CoreNetworkPolicy: CoreNetworkPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreCoreNetworkPolicyVersionResponseTypeDef(BaseModel): + CoreNetworkPolicy: CoreNetworkPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkRoutesRequestRequestTypeDef(BaseModel): + GlobalNetworkId: str + RouteTableIdentifier: RouteTableIdentifierTypeDef + ExactCidrMatches: Optional[Sequence[str]] = None + LongestPrefixMatches: Optional[Sequence[str]] = None + SubnetOfMatches: Optional[Sequence[str]] = None + SupernetOfMatches: Optional[Sequence[str]] = None + PrefixListIds: Optional[Sequence[str]] = None + States: Optional[Sequence[RouteStateType]] = None + Types: Optional[Sequence[RouteTypeType]] = None + DestinationFilters: Optional[Mapping[str, Sequence[str]]] = None + +class CreateDeviceResponseTypeDef(BaseModel): + Device: DeviceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDeviceResponseTypeDef(BaseModel): + Device: DeviceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDevicesResponseTypeDef(BaseModel): + Devices: List[DeviceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateDeviceResponseTypeDef(BaseModel): + Device: DeviceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSiteResponseTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSiteResponseTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSitesResponseTypeDef(BaseModel): + Sites: List[SiteTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateSiteResponseTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceInsertionActionTypeDef(BaseModel): + Action: Optional[SegmentActionServiceInsertionType] = None + Mode: Optional[SendViaModeType] = None + WhenSentTo: Optional[WhenSentToTypeDef] = None + Via: Optional[ViaTypeDef] = None + +class RouteAnalysisPathTypeDef(BaseModel): + CompletionStatus: Optional[RouteAnalysisCompletionTypeDef] = None + Path: Optional[List[PathComponentTypeDef]] = None + +class GetNetworkRoutesResponseTypeDef(BaseModel): + RouteTableArn: str + CoreNetworkSegmentEdge: CoreNetworkSegmentEdgeIdentifierTypeDef + RouteTableType: RouteTableTypeType + RouteTableTimestamp: datetime + NetworkRoutes: List[NetworkRouteTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PeeringTypeDef(BaseModel): + CoreNetworkId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + PeeringId: Optional[str] = None + OwnerAccountId: Optional[str] = None + PeeringType: Optional[Literal["TRANSIT_GATEWAY"]] = None + State: Optional[PeeringStateType] = None + EdgeLocation: Optional[str] = None + ResourceArn: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + CreatedAt: Optional[datetime] = None + LastModificationErrors: Optional[List[PeeringErrorTypeDef]] = None + +class DeregisterTransitGatewayResponseTypeDef(BaseModel): + TransitGatewayRegistration: TransitGatewayRegistrationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayRegistrationsResponseTypeDef(BaseModel): + TransitGatewayRegistrations: List[TransitGatewayRegistrationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RegisterTransitGatewayResponseTypeDef(BaseModel): + TransitGatewayRegistration: TransitGatewayRegistrationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptAttachmentResponseTypeDef(BaseModel): + Attachment: AttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectAttachmentTypeDef(BaseModel): + Attachment: Optional[AttachmentTypeDef] = None + TransportAttachmentId: Optional[str] = None + Options: Optional[ConnectAttachmentOptionsTypeDef] = None + +class DeleteAttachmentResponseTypeDef(BaseModel): + Attachment: AttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttachmentsResponseTypeDef(BaseModel): + Attachments: List[AttachmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RejectAttachmentResponseTypeDef(BaseModel): + Attachment: AttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SiteToSiteVpnAttachmentTypeDef(BaseModel): + Attachment: Optional[AttachmentTypeDef] = None + VpnConnectionArn: Optional[str] = None + +class TransitGatewayRouteTableAttachmentTypeDef(BaseModel): + Attachment: Optional[AttachmentTypeDef] = None + PeeringId: Optional[str] = None + TransitGatewayRouteTableArn: Optional[str] = None + +class VpcAttachmentTypeDef(BaseModel): + Attachment: Optional[AttachmentTypeDef] = None + SubnetArns: Optional[List[str]] = None + Options: Optional[VpcOptionsTypeDef] = None + +class CreateConnectPeerResponseTypeDef(BaseModel): + ConnectPeer: ConnectPeerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConnectPeerResponseTypeDef(BaseModel): + ConnectPeer: ConnectPeerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectPeerResponseTypeDef(BaseModel): + ConnectPeer: ConnectPeerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCoreNetworkResponseTypeDef(BaseModel): + CoreNetwork: CoreNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCoreNetworkResponseTypeDef(BaseModel): + CoreNetwork: CoreNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCoreNetworkResponseTypeDef(BaseModel): + CoreNetwork: CoreNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCoreNetworkResponseTypeDef(BaseModel): + CoreNetwork: CoreNetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CoreNetworkChangeValuesTypeDef(BaseModel): + SegmentName: Optional[str] = None + NetworkFunctionGroupName: Optional[str] = None + EdgeLocations: Optional[List[str]] = None + Asn: Optional[int] = None + Cidr: Optional[str] = None + DestinationIdentifier: Optional[str] = None + InsideCidrBlocks: Optional[List[str]] = None + SharedSegments: Optional[List[str]] = None + ServiceInsertionActions: Optional[List[ServiceInsertionActionTypeDef]] = None + +class RouteAnalysisTypeDef(BaseModel): + GlobalNetworkId: Optional[str] = None + OwnerAccountId: Optional[str] = None + RouteAnalysisId: Optional[str] = None + StartTimestamp: Optional[datetime] = None + Status: Optional[RouteAnalysisStatusType] = None + Source: Optional[RouteAnalysisEndpointOptionsTypeDef] = None + Destination: Optional[RouteAnalysisEndpointOptionsTypeDef] = None + IncludeReturnPath: Optional[bool] = None + UseMiddleboxes: Optional[bool] = None + ForwardPath: Optional[RouteAnalysisPathTypeDef] = None + ReturnPath: Optional[RouteAnalysisPathTypeDef] = None + +class DeletePeeringResponseTypeDef(BaseModel): + Peering: PeeringTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPeeringsResponseTypeDef(BaseModel): + Peerings: List[PeeringTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TransitGatewayPeeringTypeDef(BaseModel): + Peering: Optional[PeeringTypeDef] = None + TransitGatewayArn: Optional[str] = None + TransitGatewayPeeringAttachmentId: Optional[str] = None + +class CreateConnectAttachmentResponseTypeDef(BaseModel): + ConnectAttachment: ConnectAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectAttachmentResponseTypeDef(BaseModel): + ConnectAttachment: ConnectAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSiteToSiteVpnAttachmentResponseTypeDef(BaseModel): + SiteToSiteVpnAttachment: SiteToSiteVpnAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSiteToSiteVpnAttachmentResponseTypeDef(BaseModel): + SiteToSiteVpnAttachment: SiteToSiteVpnAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitGatewayRouteTableAttachmentResponseTypeDef(BaseModel): + TransitGatewayRouteTableAttachment: TransitGatewayRouteTableAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayRouteTableAttachmentResponseTypeDef(BaseModel): + TransitGatewayRouteTableAttachment: TransitGatewayRouteTableAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcAttachmentResponseTypeDef(BaseModel): + VpcAttachment: VpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVpcAttachmentResponseTypeDef(BaseModel): + VpcAttachment: VpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVpcAttachmentResponseTypeDef(BaseModel): + VpcAttachment: VpcAttachmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CoreNetworkChangeTypeDef(BaseModel): + Type: Optional[ChangeTypeType] = None + Action: Optional[ChangeActionType] = None + Identifier: Optional[str] = None + PreviousValues: Optional[CoreNetworkChangeValuesTypeDef] = None + NewValues: Optional[CoreNetworkChangeValuesTypeDef] = None + IdentifierPath: Optional[str] = None + +class GetRouteAnalysisResponseTypeDef(BaseModel): + RouteAnalysis: RouteAnalysisTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartRouteAnalysisResponseTypeDef(BaseModel): + RouteAnalysis: RouteAnalysisTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransitGatewayPeeringResponseTypeDef(BaseModel): + TransitGatewayPeering: TransitGatewayPeeringTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTransitGatewayPeeringResponseTypeDef(BaseModel): + TransitGatewayPeering: TransitGatewayPeeringTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCoreNetworkChangeSetResponseTypeDef(BaseModel): + CoreNetworkChanges: List[CoreNetworkChangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/networkmanager_constants.py b/aws_resource_validator/pydantic_models/networkmanager_constants.py new file mode 100644 index 00000000..d32cb721 --- /dev/null +++ b/aws_resource_validator/pydantic_models/networkmanager_constants.py @@ -0,0 +1,525 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttachmentErrorCodeType = Literal["MAXIMUM_NO_ENCAP_LIMIT_EXCEEDED", + "SUBNET_DUPLICATED_IN_AVAILABILITY_ZONE", + "SUBNET_NOT_FOUND", + "SUBNET_NO_FREE_ADDRESSES", + "SUBNET_NO_IPV6_CIDRS", + "SUBNET_UNSUPPORTED_AVAILABILITY_ZONE", + "VPC_NOT_FOUND", + "VPN_CONNECTION_NOT_FOUND",] +AttachmentStateType = Literal["AVAILABLE", + "CREATING", + "DELETING", + "FAILED", + "PENDING_ATTACHMENT_ACCEPTANCE", + "PENDING_NETWORK_UPDATE", + "PENDING_TAG_ACCEPTANCE", + "REJECTED", + "UPDATING",] +AttachmentTypeType = Literal["CONNECT", "SITE_TO_SITE_VPN", "TRANSIT_GATEWAY_ROUTE_TABLE", "VPC"] +ChangeActionType = Literal["ADD", "MODIFY", "REMOVE"] +ChangeSetStateType = Literal["EXECUTING", + "EXECUTION_SUCCEEDED", + "FAILED_GENERATION", + "OUT_OF_DATE", + "PENDING_GENERATION", + "READY_TO_EXECUTE",] +ChangeStatusType = Literal["COMPLETE", "FAILED", "IN_PROGRESS", "NOT_STARTED"] +ChangeTypeType = Literal["ATTACHMENT_MAPPING", + "ATTACHMENT_POLICIES_CONFIGURATION", + "ATTACHMENT_ROUTE_PROPAGATION", + "ATTACHMENT_ROUTE_STATIC", + "CORE_NETWORK_CONFIGURATION", + "CORE_NETWORK_EDGE", + "CORE_NETWORK_SEGMENT", + "NETWORK_FUNCTION_GROUP", + "SEGMENTS_CONFIGURATION", + "SEGMENT_ACTIONS_CONFIGURATION",] +ConnectPeerAssociationStateType = Literal["AVAILABLE", "DELETED", "DELETING", "PENDING"] +ConnectPeerErrorCodeType = Literal["EDGE_LOCATION_NO_FREE_IPS", + "EDGE_LOCATION_PEER_DUPLICATE", + "INVALID_INSIDE_CIDR_BLOCK", + "IP_OUTSIDE_SUBNET_CIDR_RANGE", + "NO_ASSOCIATED_CIDR_BLOCK", + "SUBNET_NOT_FOUND",] +ConnectPeerStateType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED"] +ConnectionStateType = Literal["AVAILABLE", "DELETING", "PENDING", "UPDATING"] +ConnectionStatusType = Literal["DOWN", "UP"] +ConnectionTypeType = Literal["BGP", "IPSEC"] +CoreNetworkPolicyAliasType = Literal["LATEST", "LIVE"] +CoreNetworkStateType = Literal["AVAILABLE", "CREATING", "DELETING", "UPDATING"] +CustomerGatewayAssociationStateType = Literal["AVAILABLE", "DELETED", "DELETING", "PENDING"] +DescribeGlobalNetworksPaginatorName = Literal["describe_global_networks"] +DeviceStateType = Literal["AVAILABLE", "DELETING", "PENDING", "UPDATING"] +GetConnectPeerAssociationsPaginatorName = Literal["get_connect_peer_associations"] +GetConnectionsPaginatorName = Literal["get_connections"] +GetCoreNetworkChangeEventsPaginatorName = Literal["get_core_network_change_events"] +GetCoreNetworkChangeSetPaginatorName = Literal["get_core_network_change_set"] +GetCustomerGatewayAssociationsPaginatorName = Literal["get_customer_gateway_associations"] +GetDevicesPaginatorName = Literal["get_devices"] +GetLinkAssociationsPaginatorName = Literal["get_link_associations"] +GetLinksPaginatorName = Literal["get_links"] +GetNetworkResourceCountsPaginatorName = Literal["get_network_resource_counts"] +GetNetworkResourceRelationshipsPaginatorName = Literal["get_network_resource_relationships"] +GetNetworkResourcesPaginatorName = Literal["get_network_resources"] +GetNetworkTelemetryPaginatorName = Literal["get_network_telemetry"] +GetSitesPaginatorName = Literal["get_sites"] +GetTransitGatewayConnectPeerAssociationsPaginatorName = Literal["get_transit_gateway_connect_peer_associations"] +GetTransitGatewayRegistrationsPaginatorName = Literal["get_transit_gateway_registrations"] +GlobalNetworkStateType = Literal["AVAILABLE", "DELETING", "PENDING", "UPDATING"] +LinkAssociationStateType = Literal["AVAILABLE", "DELETED", "DELETING", "PENDING"] +LinkStateType = Literal["AVAILABLE", "DELETING", "PENDING", "UPDATING"] +ListAttachmentsPaginatorName = Literal["list_attachments"] +ListConnectPeersPaginatorName = Literal["list_connect_peers"] +ListCoreNetworkPolicyVersionsPaginatorName = Literal["list_core_network_policy_versions"] +ListCoreNetworksPaginatorName = Literal["list_core_networks"] +ListPeeringsPaginatorName = Literal["list_peerings"] +PeeringErrorCodeType = Literal["EDGE_LOCATION_PEER_DUPLICATE", + "INTERNAL_ERROR", + "INVALID_TRANSIT_GATEWAY_STATE", + "MISSING_PERMISSIONS", + "TRANSIT_GATEWAY_NOT_FOUND", + "TRANSIT_GATEWAY_PEERS_LIMIT_EXCEEDED",] +PeeringStateType = Literal["AVAILABLE", "CREATING", "DELETING", "FAILED"] +PeeringTypeType = Literal["TRANSIT_GATEWAY"] +RouteAnalysisCompletionReasonCodeType = Literal["BLACKHOLE_ROUTE_FOR_DESTINATION_FOUND", + "CYCLIC_PATH_DETECTED", + "INACTIVE_ROUTE_FOR_DESTINATION_FOUND", + "MAX_HOPS_EXCEEDED", + "NO_DESTINATION_ARN_PROVIDED", + "POSSIBLE_MIDDLEBOX", + "ROUTE_NOT_FOUND", + "TRANSIT_GATEWAY_ATTACHMENT_ATTACH_ARN_NO_MATCH", + "TRANSIT_GATEWAY_ATTACHMENT_NOT_FOUND", + "TRANSIT_GATEWAY_ATTACHMENT_NOT_IN_TRANSIT_GATEWAY", + "TRANSIT_GATEWAY_ATTACHMENT_STABLE_ROUTE_TABLE_NOT_FOUND",] +RouteAnalysisCompletionResultCodeType = Literal["CONNECTED", "NOT_CONNECTED"] +RouteAnalysisStatusType = Literal["COMPLETED", "FAILED", "RUNNING"] +RouteStateType = Literal["ACTIVE", "BLACKHOLE"] +RouteTableTypeType = Literal["CORE_NETWORK_SEGMENT", "NETWORK_FUNCTION_GROUP", "TRANSIT_GATEWAY_ROUTE_TABLE"] +RouteTypeType = Literal["PROPAGATED", "STATIC"] +SegmentActionServiceInsertionType = Literal["send-to", "send-via"] +SendViaModeType = Literal["dual-hop", "single-hop"] +SiteStateType = Literal["AVAILABLE", "DELETING", "PENDING", "UPDATING"] +TransitGatewayConnectPeerAssociationStateType = Literal["AVAILABLE", "DELETED", "DELETING", "PENDING"] +TransitGatewayRegistrationStateType = Literal["AVAILABLE", "DELETED", "DELETING", "FAILED", "PENDING"] +TunnelProtocolType = Literal["GRE", "NO_ENCAP"] +NetworkManagerServiceName = Literal["networkmanager"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_global_networks", + "get_connect_peer_associations", + "get_connections", + "get_core_network_change_events", + "get_core_network_change_set", + "get_customer_gateway_associations", + "get_devices", + "get_link_associations", + "get_links", + "get_network_resource_counts", + "get_network_resource_relationships", + "get_network_resources", + "get_network_telemetry", + "get_sites", + "get_transit_gateway_connect_peer_associations", + "get_transit_gateway_registrations", + "list_attachments", + "list_connect_peers", + "list_core_network_policy_versions", + "list_core_networks", + "list_peerings",] diff --git a/aws_resource_validator/pydantic_models/networkmonitor_classes.py b/aws_resource_validator/pydantic_models/networkmonitor_classes.py new file mode 100644 index 00000000..afa63bf5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/networkmonitor_classes.py @@ -0,0 +1,207 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.networkmonitor_constants import * + +class CreateMonitorProbeInputTypeDef(BaseModel): + sourceArn: str + destination: str + protocol: ProtocolType + destinationPort: Optional[int] = None + packetSize: Optional[int] = None + probeTags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ProbeInputTypeDef(BaseModel): + sourceArn: str + destination: str + protocol: ProtocolType + destinationPort: Optional[int] = None + packetSize: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteMonitorInputRequestTypeDef(BaseModel): + monitorName: str + +class DeleteProbeInputRequestTypeDef(BaseModel): + monitorName: str + probeId: str + +class GetMonitorInputRequestTypeDef(BaseModel): + monitorName: str + +class ProbeTypeDef(BaseModel): + sourceArn: str + destination: str + protocol: ProtocolType + probeId: Optional[str] = None + probeArn: Optional[str] = None + destinationPort: Optional[int] = None + packetSize: Optional[int] = None + addressFamily: Optional[AddressFamilyType] = None + vpcId: Optional[str] = None + state: Optional[ProbeStateType] = None + createdAt: Optional[datetime] = None + modifiedAt: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class GetProbeInputRequestTypeDef(BaseModel): + monitorName: str + probeId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListMonitorsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + state: Optional[str] = None + +class MonitorSummaryTypeDef(BaseModel): + monitorArn: str + monitorName: str + state: MonitorStateType + aggregationPeriod: Optional[int] = None + tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateMonitorInputRequestTypeDef(BaseModel): + monitorName: str + aggregationPeriod: int + +class UpdateProbeInputRequestTypeDef(BaseModel): + monitorName: str + probeId: str + state: Optional[ProbeStateType] = None + destination: Optional[str] = None + destinationPort: Optional[int] = None + protocol: Optional[ProtocolType] = None + packetSize: Optional[int] = None + +class CreateMonitorInputRequestTypeDef(BaseModel): + monitorName: str + probes: Optional[Sequence[CreateMonitorProbeInputTypeDef]] = None + aggregationPeriod: Optional[int] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateMonitorOutputTypeDef(BaseModel): + monitorArn: str + monitorName: str + state: MonitorStateType + aggregationPeriod: int + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProbeOutputTypeDef(BaseModel): + probeId: str + probeArn: str + sourceArn: str + destination: str + destinationPort: int + protocol: ProtocolType + packetSize: int + addressFamily: AddressFamilyType + vpcId: str + state: ProbeStateType + createdAt: datetime + modifiedAt: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetProbeOutputTypeDef(BaseModel): + probeId: str + probeArn: str + sourceArn: str + destination: str + destinationPort: int + protocol: ProtocolType + packetSize: int + addressFamily: AddressFamilyType + vpcId: str + state: ProbeStateType + createdAt: datetime + modifiedAt: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMonitorOutputTypeDef(BaseModel): + monitorArn: str + monitorName: str + state: MonitorStateType + aggregationPeriod: int + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProbeOutputTypeDef(BaseModel): + probeId: str + probeArn: str + sourceArn: str + destination: str + destinationPort: int + protocol: ProtocolType + packetSize: int + addressFamily: AddressFamilyType + vpcId: str + state: ProbeStateType + createdAt: datetime + modifiedAt: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProbeInputRequestTypeDef(BaseModel): + monitorName: str + probe: ProbeInputTypeDef + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class GetMonitorOutputTypeDef(BaseModel): + monitorArn: str + monitorName: str + state: MonitorStateType + aggregationPeriod: int + tags: Dict[str, str] + probes: List[ProbeTypeDef] + createdAt: datetime + modifiedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListMonitorsInputListMonitorsPaginateTypeDef(BaseModel): + state: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitorsOutputTypeDef(BaseModel): + monitors: List[MonitorSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/networkmonitor_constants.py b/aws_resource_validator/pydantic_models/networkmonitor_constants.py new file mode 100644 index 00000000..fdcbd8e8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/networkmonitor_constants.py @@ -0,0 +1,402 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AddressFamilyType = Literal["IPV4", "IPV6"] +ListMonitorsPaginatorName = Literal["list_monitors"] +MonitorStateType = Literal["ACTIVE", "DELETING", "ERROR", "INACTIVE", "PENDING"] +ProbeStateType = Literal["ACTIVE", "DELETED", "DELETING", "ERROR", "INACTIVE", "PENDING"] +ProtocolType = Literal["ICMP", "TCP"] +CloudWatchNetworkMonitorServiceName = Literal["networkmonitor"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_monitors"] diff --git a/aws_resource_validator/pydantic_models/nimble_classes.py b/aws_resource_validator/pydantic_models/nimble_classes.py new file mode 100644 index 00000000..1d8d4674 --- /dev/null +++ b/aws_resource_validator/pydantic_models/nimble_classes.py @@ -0,0 +1,980 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.nimble_constants import * + +class AcceptEulasRequestRequestTypeDef(BaseModel): + studioId: str + clientToken: Optional[str] = None + eulaIds: Optional[Sequence[str]] = None + +class EulaAcceptanceTypeDef(BaseModel): + acceptedAt: Optional[datetime] = None + acceptedBy: Optional[str] = None + accepteeId: Optional[str] = None + eulaAcceptanceId: Optional[str] = None + eulaId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ActiveDirectoryComputerAttributeTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class ComputeFarmConfigurationTypeDef(BaseModel): + activeDirectoryUser: Optional[str] = None + endpoint: Optional[str] = None + +class CreateStreamingImageRequestRequestTypeDef(BaseModel): + ec2ImageId: str + name: str + studioId: str + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateStreamingSessionRequestRequestTypeDef(BaseModel): + launchProfileId: str + studioId: str + clientToken: Optional[str] = None + ec2InstanceType: Optional[StreamingInstanceTypeType] = None + ownedBy: Optional[str] = None + streamingImageId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateStreamingSessionStreamRequestRequestTypeDef(BaseModel): + sessionId: str + studioId: str + clientToken: Optional[str] = None + expirationInSeconds: Optional[int] = None + +class StreamingSessionStreamTypeDef(BaseModel): + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + expiresAt: Optional[datetime] = None + ownedBy: Optional[str] = None + state: Optional[StreamingSessionStreamStateType] = None + statusCode: Optional[StreamingSessionStreamStatusCodeType] = None + streamId: Optional[str] = None + url: Optional[str] = None + +class ScriptParameterKeyValueTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class StudioComponentInitializationScriptTypeDef(BaseModel): + launchProfileProtocolVersion: Optional[str] = None + platform: Optional[LaunchProfilePlatformType] = None + runContext: Optional[StudioComponentInitializationScriptRunContextType] = None + script: Optional[str] = None + +class StudioEncryptionConfigurationTypeDef(BaseModel): + keyType: StudioEncryptionConfigurationKeyTypeType + keyArn: Optional[str] = None + +class DeleteLaunchProfileMemberRequestRequestTypeDef(BaseModel): + launchProfileId: str + principalId: str + studioId: str + clientToken: Optional[str] = None + +class DeleteLaunchProfileRequestRequestTypeDef(BaseModel): + launchProfileId: str + studioId: str + clientToken: Optional[str] = None + +class DeleteStreamingImageRequestRequestTypeDef(BaseModel): + streamingImageId: str + studioId: str + clientToken: Optional[str] = None + +class DeleteStreamingSessionRequestRequestTypeDef(BaseModel): + sessionId: str + studioId: str + clientToken: Optional[str] = None + +class DeleteStudioComponentRequestRequestTypeDef(BaseModel): + studioComponentId: str + studioId: str + clientToken: Optional[str] = None + +class DeleteStudioMemberRequestRequestTypeDef(BaseModel): + principalId: str + studioId: str + clientToken: Optional[str] = None + +class DeleteStudioRequestRequestTypeDef(BaseModel): + studioId: str + clientToken: Optional[str] = None + +class EulaTypeDef(BaseModel): + content: Optional[str] = None + createdAt: Optional[datetime] = None + eulaId: Optional[str] = None + name: Optional[str] = None + updatedAt: Optional[datetime] = None + +class GetEulaRequestRequestTypeDef(BaseModel): + eulaId: str + +class GetLaunchProfileDetailsRequestRequestTypeDef(BaseModel): + launchProfileId: str + studioId: str + +class StudioComponentSummaryTypeDef(BaseModel): + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + studioComponentId: Optional[str] = None + subtype: Optional[StudioComponentSubtypeType] = None + type: Optional[StudioComponentTypeType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class GetLaunchProfileInitializationRequestRequestTypeDef(BaseModel): + launchProfileId: str + launchProfileProtocolVersions: Sequence[str] + launchPurpose: str + platform: str + studioId: str + +class GetLaunchProfileMemberRequestRequestTypeDef(BaseModel): + launchProfileId: str + principalId: str + studioId: str + +class LaunchProfileMembershipTypeDef(BaseModel): + identityStoreId: Optional[str] = None + persona: Optional[Literal["USER"]] = None + principalId: Optional[str] = None + sid: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetLaunchProfileRequestRequestTypeDef(BaseModel): + launchProfileId: str + studioId: str + +class GetStreamingImageRequestRequestTypeDef(BaseModel): + streamingImageId: str + studioId: str + +class GetStreamingSessionBackupRequestRequestTypeDef(BaseModel): + backupId: str + studioId: str + +class StreamingSessionBackupTypeDef(BaseModel): + arn: Optional[str] = None + backupId: Optional[str] = None + createdAt: Optional[datetime] = None + launchProfileId: Optional[str] = None + ownedBy: Optional[str] = None + sessionId: Optional[str] = None + state: Optional[StreamingSessionStateType] = None + statusCode: Optional[StreamingSessionStatusCodeType] = None + statusMessage: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class GetStreamingSessionRequestRequestTypeDef(BaseModel): + sessionId: str + studioId: str + +class GetStreamingSessionStreamRequestRequestTypeDef(BaseModel): + sessionId: str + streamId: str + studioId: str + +class GetStudioComponentRequestRequestTypeDef(BaseModel): + studioComponentId: str + studioId: str + +class GetStudioMemberRequestRequestTypeDef(BaseModel): + principalId: str + studioId: str + +class StudioMembershipTypeDef(BaseModel): + identityStoreId: Optional[str] = None + persona: Optional[Literal["ADMINISTRATOR"]] = None + principalId: Optional[str] = None + sid: Optional[str] = None + +class GetStudioRequestRequestTypeDef(BaseModel): + studioId: str + +class LaunchProfileInitializationScriptTypeDef(BaseModel): + runtimeRoleArn: Optional[str] = None + script: Optional[str] = None + secureInitializationRoleArn: Optional[str] = None + studioComponentId: Optional[str] = None + studioComponentName: Optional[str] = None + +class ValidationResultTypeDef(BaseModel): + state: LaunchProfileValidationStateType + statusCode: LaunchProfileValidationStatusCodeType + statusMessage: str + type: LaunchProfileValidationTypeType + +class LicenseServiceConfigurationTypeDef(BaseModel): + endpoint: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEulaAcceptancesRequestRequestTypeDef(BaseModel): + studioId: str + eulaIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + +class ListEulasRequestRequestTypeDef(BaseModel): + eulaIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + +class ListLaunchProfileMembersRequestRequestTypeDef(BaseModel): + launchProfileId: str + studioId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListLaunchProfilesRequestRequestTypeDef(BaseModel): + studioId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + principalId: Optional[str] = None + states: Optional[Sequence[LaunchProfileStateType]] = None + +class ListStreamingImagesRequestRequestTypeDef(BaseModel): + studioId: str + nextToken: Optional[str] = None + owner: Optional[str] = None + +class ListStreamingSessionBackupsRequestRequestTypeDef(BaseModel): + studioId: str + nextToken: Optional[str] = None + ownedBy: Optional[str] = None + +class ListStreamingSessionsRequestRequestTypeDef(BaseModel): + studioId: str + createdBy: Optional[str] = None + nextToken: Optional[str] = None + ownedBy: Optional[str] = None + sessionIds: Optional[str] = None + +class ListStudioComponentsRequestRequestTypeDef(BaseModel): + studioId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + states: Optional[Sequence[StudioComponentStateType]] = None + types: Optional[Sequence[StudioComponentTypeType]] = None + +class ListStudioMembersRequestRequestTypeDef(BaseModel): + studioId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListStudiosRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class NewLaunchProfileMemberTypeDef(BaseModel): + persona: Literal["USER"] + principalId: str + +class NewStudioMemberTypeDef(BaseModel): + persona: Literal["ADMINISTRATOR"] + principalId: str + +class SharedFileSystemConfigurationTypeDef(BaseModel): + endpoint: Optional[str] = None + fileSystemId: Optional[str] = None + linuxMountPoint: Optional[str] = None + shareName: Optional[str] = None + windowsMountDrive: Optional[str] = None + +class StartStreamingSessionRequestRequestTypeDef(BaseModel): + sessionId: str + studioId: str + backupId: Optional[str] = None + clientToken: Optional[str] = None + +class StartStudioSSOConfigurationRepairRequestRequestTypeDef(BaseModel): + studioId: str + clientToken: Optional[str] = None + +class StopStreamingSessionRequestRequestTypeDef(BaseModel): + sessionId: str + studioId: str + clientToken: Optional[str] = None + volumeRetentionMode: Optional[VolumeRetentionModeType] = None + +class StreamConfigurationSessionBackupTypeDef(BaseModel): + maxBackupsToRetain: Optional[int] = None + mode: Optional[SessionBackupModeType] = None + +class VolumeConfigurationTypeDef(BaseModel): + iops: Optional[int] = None + size: Optional[int] = None + throughput: Optional[int] = None + +class StreamingSessionStorageRootTypeDef(BaseModel): + linux: Optional[str] = None + windows: Optional[str] = None + +class StreamingImageEncryptionConfigurationTypeDef(BaseModel): + keyType: Literal["CUSTOMER_MANAGED_KEY"] + keyArn: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Optional[Mapping[str, str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateLaunchProfileMemberRequestRequestTypeDef(BaseModel): + launchProfileId: str + persona: Literal["USER"] + principalId: str + studioId: str + clientToken: Optional[str] = None + +class UpdateStreamingImageRequestRequestTypeDef(BaseModel): + streamingImageId: str + studioId: str + clientToken: Optional[str] = None + description: Optional[str] = None + name: Optional[str] = None + +class UpdateStudioRequestRequestTypeDef(BaseModel): + studioId: str + adminRoleArn: Optional[str] = None + clientToken: Optional[str] = None + displayName: Optional[str] = None + userRoleArn: Optional[str] = None + +class AcceptEulasResponseTypeDef(BaseModel): + eulaAcceptances: List[EulaAcceptanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEulaAcceptancesResponseTypeDef(BaseModel): + eulaAcceptances: List[EulaAcceptanceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ActiveDirectoryConfigurationPaginatorTypeDef(BaseModel): + computerAttributes: Optional[List[ActiveDirectoryComputerAttributeTypeDef]] = None + directoryId: Optional[str] = None + organizationalUnitDistinguishedName: Optional[str] = None + +class ActiveDirectoryConfigurationTypeDef(BaseModel): + computerAttributes: Optional[Sequence[ActiveDirectoryComputerAttributeTypeDef]] = None + directoryId: Optional[str] = None + organizationalUnitDistinguishedName: Optional[str] = None + +class LaunchProfileInitializationActiveDirectoryTypeDef(BaseModel): + computerAttributes: Optional[List[ActiveDirectoryComputerAttributeTypeDef]] = None + directoryId: Optional[str] = None + directoryName: Optional[str] = None + dnsIpAddresses: Optional[List[str]] = None + organizationalUnitDistinguishedName: Optional[str] = None + studioComponentId: Optional[str] = None + studioComponentName: Optional[str] = None + +class CreateStreamingSessionStreamResponseTypeDef(BaseModel): + stream: StreamingSessionStreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStreamingSessionStreamResponseTypeDef(BaseModel): + stream: StreamingSessionStreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStudioRequestRequestTypeDef(BaseModel): + adminRoleArn: str + displayName: str + studioName: str + userRoleArn: str + clientToken: Optional[str] = None + studioEncryptionConfiguration: Optional[StudioEncryptionConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class StudioTypeDef(BaseModel): + adminRoleArn: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + displayName: Optional[str] = None + homeRegion: Optional[str] = None + ssoClientId: Optional[str] = None + state: Optional[StudioStateType] = None + statusCode: Optional[StudioStatusCodeType] = None + statusMessage: Optional[str] = None + studioEncryptionConfiguration: Optional[StudioEncryptionConfigurationTypeDef] = None + studioId: Optional[str] = None + studioName: Optional[str] = None + studioUrl: Optional[str] = None + tags: Optional[Dict[str, str]] = None + updatedAt: Optional[datetime] = None + userRoleArn: Optional[str] = None + +class GetEulaResponseTypeDef(BaseModel): + eula: EulaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEulasResponseTypeDef(BaseModel): + eulas: List[EulaTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLaunchProfileMemberResponseTypeDef(BaseModel): + member: LaunchProfileMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLaunchProfileMembersResponseTypeDef(BaseModel): + members: List[LaunchProfileMembershipTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLaunchProfileMemberResponseTypeDef(BaseModel): + member: LaunchProfileMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLaunchProfileRequestLaunchProfileDeletedWaitTypeDef(BaseModel): + launchProfileId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetLaunchProfileRequestLaunchProfileReadyWaitTypeDef(BaseModel): + launchProfileId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingImageRequestStreamingImageDeletedWaitTypeDef(BaseModel): + streamingImageId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingImageRequestStreamingImageReadyWaitTypeDef(BaseModel): + streamingImageId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingSessionRequestStreamingSessionDeletedWaitTypeDef(BaseModel): + sessionId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingSessionRequestStreamingSessionReadyWaitTypeDef(BaseModel): + sessionId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingSessionRequestStreamingSessionStoppedWaitTypeDef(BaseModel): + sessionId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingSessionStreamRequestStreamingSessionStreamReadyWaitTypeDef(BaseModel): + sessionId: str + streamId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStudioComponentRequestStudioComponentDeletedWaitTypeDef(BaseModel): + studioComponentId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStudioComponentRequestStudioComponentReadyWaitTypeDef(BaseModel): + studioComponentId: str + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStudioRequestStudioDeletedWaitTypeDef(BaseModel): + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStudioRequestStudioReadyWaitTypeDef(BaseModel): + studioId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetStreamingSessionBackupResponseTypeDef(BaseModel): + streamingSessionBackup: StreamingSessionBackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamingSessionBackupsResponseTypeDef(BaseModel): + nextToken: str + streamingSessionBackups: List[StreamingSessionBackupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetStudioMemberResponseTypeDef(BaseModel): + member: StudioMembershipTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStudioMembersResponseTypeDef(BaseModel): + members: List[StudioMembershipTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEulaAcceptancesRequestListEulaAcceptancesPaginateTypeDef(BaseModel): + studioId: str + eulaIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEulasRequestListEulasPaginateTypeDef(BaseModel): + eulaIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLaunchProfileMembersRequestListLaunchProfileMembersPaginateTypeDef(BaseModel): + launchProfileId: str + studioId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLaunchProfilesRequestListLaunchProfilesPaginateTypeDef(BaseModel): + studioId: str + principalId: Optional[str] = None + states: Optional[Sequence[LaunchProfileStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamingImagesRequestListStreamingImagesPaginateTypeDef(BaseModel): + studioId: str + owner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamingSessionBackupsRequestListStreamingSessionBackupsPaginateTypeDef(BaseModel): + studioId: str + ownedBy: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamingSessionsRequestListStreamingSessionsPaginateTypeDef(BaseModel): + studioId: str + createdBy: Optional[str] = None + ownedBy: Optional[str] = None + sessionIds: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStudioComponentsRequestListStudioComponentsPaginateTypeDef(BaseModel): + studioId: str + states: Optional[Sequence[StudioComponentStateType]] = None + types: Optional[Sequence[StudioComponentTypeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStudioMembersRequestListStudioMembersPaginateTypeDef(BaseModel): + studioId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStudiosRequestListStudiosPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PutLaunchProfileMembersRequestRequestTypeDef(BaseModel): + identityStoreId: str + launchProfileId: str + members: Sequence[NewLaunchProfileMemberTypeDef] + studioId: str + clientToken: Optional[str] = None + +class PutStudioMembersRequestRequestTypeDef(BaseModel): + identityStoreId: str + members: Sequence[NewStudioMemberTypeDef] + studioId: str + clientToken: Optional[str] = None + +class StreamingSessionTypeDef(BaseModel): + arn: Optional[str] = None + automaticTerminationMode: Optional[AutomaticTerminationModeType] = None + backupMode: Optional[SessionBackupModeType] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + ec2InstanceType: Optional[str] = None + launchProfileId: Optional[str] = None + maxBackupsToRetain: Optional[int] = None + ownedBy: Optional[str] = None + sessionId: Optional[str] = None + sessionPersistenceMode: Optional[SessionPersistenceModeType] = None + startedAt: Optional[datetime] = None + startedBy: Optional[str] = None + startedFromBackupId: Optional[str] = None + state: Optional[StreamingSessionStateType] = None + statusCode: Optional[StreamingSessionStatusCodeType] = None + statusMessage: Optional[str] = None + stopAt: Optional[datetime] = None + stoppedAt: Optional[datetime] = None + stoppedBy: Optional[str] = None + streamingImageId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + terminateAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + volumeConfiguration: Optional[VolumeConfigurationTypeDef] = None + volumeRetentionMode: Optional[VolumeRetentionModeType] = None + +class StreamConfigurationSessionStoragePaginatorTypeDef(BaseModel): + mode: List[Literal["UPLOAD"]] + root: Optional[StreamingSessionStorageRootTypeDef] = None + +class StreamConfigurationSessionStorageTypeDef(BaseModel): + mode: Sequence[Literal["UPLOAD"]] + root: Optional[StreamingSessionStorageRootTypeDef] = None + +class StreamingImageTypeDef(BaseModel): + arn: Optional[str] = None + description: Optional[str] = None + ec2ImageId: Optional[str] = None + encryptionConfiguration: Optional[StreamingImageEncryptionConfigurationTypeDef] = None + eulaIds: Optional[List[str]] = None + name: Optional[str] = None + owner: Optional[str] = None + platform: Optional[str] = None + state: Optional[StreamingImageStateType] = None + statusCode: Optional[StreamingImageStatusCodeType] = None + statusMessage: Optional[str] = None + streamingImageId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class StudioComponentConfigurationPaginatorTypeDef(BaseModel): + activeDirectoryConfiguration: Optional[ActiveDirectoryConfigurationPaginatorTypeDef] = None + computeFarmConfiguration: Optional[ComputeFarmConfigurationTypeDef] = None + licenseServiceConfiguration: Optional[LicenseServiceConfigurationTypeDef] = None + sharedFileSystemConfiguration: Optional[SharedFileSystemConfigurationTypeDef] = None + +class StudioComponentConfigurationTypeDef(BaseModel): + activeDirectoryConfiguration: Optional[ActiveDirectoryConfigurationTypeDef] = None + computeFarmConfiguration: Optional[ComputeFarmConfigurationTypeDef] = None + licenseServiceConfiguration: Optional[LicenseServiceConfigurationTypeDef] = None + sharedFileSystemConfiguration: Optional[SharedFileSystemConfigurationTypeDef] = None + +class LaunchProfileInitializationTypeDef(BaseModel): + activeDirectory: Optional[LaunchProfileInitializationActiveDirectoryTypeDef] = None + ec2SecurityGroupIds: Optional[List[str]] = None + launchProfileId: Optional[str] = None + launchProfileProtocolVersion: Optional[str] = None + launchPurpose: Optional[str] = None + name: Optional[str] = None + platform: Optional[LaunchProfilePlatformType] = None + systemInitializationScripts: Optional[List[LaunchProfileInitializationScriptTypeDef]] = None + userInitializationScripts: Optional[List[LaunchProfileInitializationScriptTypeDef]] = None + +class CreateStudioResponseTypeDef(BaseModel): + studio: StudioTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteStudioResponseTypeDef(BaseModel): + studio: StudioTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStudioResponseTypeDef(BaseModel): + studio: StudioTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStudiosResponseTypeDef(BaseModel): + nextToken: str + studios: List[StudioTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartStudioSSOConfigurationRepairResponseTypeDef(BaseModel): + studio: StudioTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStudioResponseTypeDef(BaseModel): + studio: StudioTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamingSessionResponseTypeDef(BaseModel): + session: StreamingSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteStreamingSessionResponseTypeDef(BaseModel): + session: StreamingSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStreamingSessionResponseTypeDef(BaseModel): + session: StreamingSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamingSessionsResponseTypeDef(BaseModel): + nextToken: str + sessions: List[StreamingSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartStreamingSessionResponseTypeDef(BaseModel): + session: StreamingSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopStreamingSessionResponseTypeDef(BaseModel): + session: StreamingSessionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StreamConfigurationPaginatorTypeDef(BaseModel): + clipboardMode: StreamingClipboardModeType + ec2InstanceTypes: List[StreamingInstanceTypeType] + streamingImageIds: List[str] + automaticTerminationMode: Optional[AutomaticTerminationModeType] = None + maxSessionLengthInMinutes: Optional[int] = None + maxStoppedSessionLengthInMinutes: Optional[int] = None + sessionBackup: Optional[StreamConfigurationSessionBackupTypeDef] = None + sessionPersistenceMode: Optional[SessionPersistenceModeType] = None + sessionStorage: Optional[StreamConfigurationSessionStoragePaginatorTypeDef] = None + volumeConfiguration: Optional[VolumeConfigurationTypeDef] = None + +class StreamConfigurationCreateTypeDef(BaseModel): + clipboardMode: StreamingClipboardModeType + ec2InstanceTypes: Sequence[StreamingInstanceTypeType] + streamingImageIds: Sequence[str] + automaticTerminationMode: Optional[AutomaticTerminationModeType] = None + maxSessionLengthInMinutes: Optional[int] = None + maxStoppedSessionLengthInMinutes: Optional[int] = None + sessionBackup: Optional[StreamConfigurationSessionBackupTypeDef] = None + sessionPersistenceMode: Optional[SessionPersistenceModeType] = None + sessionStorage: Optional[StreamConfigurationSessionStorageTypeDef] = None + volumeConfiguration: Optional[VolumeConfigurationTypeDef] = None + +class StreamConfigurationTypeDef(BaseModel): + clipboardMode: StreamingClipboardModeType + ec2InstanceTypes: List[StreamingInstanceTypeType] + streamingImageIds: List[str] + automaticTerminationMode: Optional[AutomaticTerminationModeType] = None + maxSessionLengthInMinutes: Optional[int] = None + maxStoppedSessionLengthInMinutes: Optional[int] = None + sessionBackup: Optional[StreamConfigurationSessionBackupTypeDef] = None + sessionPersistenceMode: Optional[SessionPersistenceModeType] = None + sessionStorage: Optional[StreamConfigurationSessionStorageTypeDef] = None + volumeConfiguration: Optional[VolumeConfigurationTypeDef] = None + +class CreateStreamingImageResponseTypeDef(BaseModel): + streamingImage: StreamingImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteStreamingImageResponseTypeDef(BaseModel): + streamingImage: StreamingImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStreamingImageResponseTypeDef(BaseModel): + streamingImage: StreamingImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStreamingImagesResponseTypeDef(BaseModel): + nextToken: str + streamingImages: List[StreamingImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStreamingImageResponseTypeDef(BaseModel): + streamingImage: StreamingImageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StudioComponentPaginatorTypeDef(BaseModel): + arn: Optional[str] = None + configuration: Optional[StudioComponentConfigurationPaginatorTypeDef] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + ec2SecurityGroupIds: Optional[List[str]] = None + initializationScripts: Optional[List[StudioComponentInitializationScriptTypeDef]] = None + name: Optional[str] = None + runtimeRoleArn: Optional[str] = None + scriptParameters: Optional[List[ScriptParameterKeyValueTypeDef]] = None + secureInitializationRoleArn: Optional[str] = None + state: Optional[StudioComponentStateType] = None + statusCode: Optional[StudioComponentStatusCodeType] = None + statusMessage: Optional[str] = None + studioComponentId: Optional[str] = None + subtype: Optional[StudioComponentSubtypeType] = None + tags: Optional[Dict[str, str]] = None + type: Optional[StudioComponentTypeType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class CreateStudioComponentRequestRequestTypeDef(BaseModel): + name: str + studioId: str + type: StudioComponentTypeType + clientToken: Optional[str] = None + configuration: Optional[StudioComponentConfigurationTypeDef] = None + description: Optional[str] = None + ec2SecurityGroupIds: Optional[Sequence[str]] = None + initializationScripts: Optional[Sequence[StudioComponentInitializationScriptTypeDef]] = None + runtimeRoleArn: Optional[str] = None + scriptParameters: Optional[Sequence[ScriptParameterKeyValueTypeDef]] = None + secureInitializationRoleArn: Optional[str] = None + subtype: Optional[StudioComponentSubtypeType] = None + tags: Optional[Mapping[str, str]] = None + +class StudioComponentTypeDef(BaseModel): + arn: Optional[str] = None + configuration: Optional[StudioComponentConfigurationTypeDef] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + ec2SecurityGroupIds: Optional[List[str]] = None + initializationScripts: Optional[List[StudioComponentInitializationScriptTypeDef]] = None + name: Optional[str] = None + runtimeRoleArn: Optional[str] = None + scriptParameters: Optional[List[ScriptParameterKeyValueTypeDef]] = None + secureInitializationRoleArn: Optional[str] = None + state: Optional[StudioComponentStateType] = None + statusCode: Optional[StudioComponentStatusCodeType] = None + statusMessage: Optional[str] = None + studioComponentId: Optional[str] = None + subtype: Optional[StudioComponentSubtypeType] = None + tags: Optional[Dict[str, str]] = None + type: Optional[StudioComponentTypeType] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + +class UpdateStudioComponentRequestRequestTypeDef(BaseModel): + studioComponentId: str + studioId: str + clientToken: Optional[str] = None + configuration: Optional[StudioComponentConfigurationTypeDef] = None + description: Optional[str] = None + ec2SecurityGroupIds: Optional[Sequence[str]] = None + initializationScripts: Optional[Sequence[StudioComponentInitializationScriptTypeDef]] = None + name: Optional[str] = None + runtimeRoleArn: Optional[str] = None + scriptParameters: Optional[Sequence[ScriptParameterKeyValueTypeDef]] = None + secureInitializationRoleArn: Optional[str] = None + subtype: Optional[StudioComponentSubtypeType] = None + type: Optional[StudioComponentTypeType] = None + +class GetLaunchProfileInitializationResponseTypeDef(BaseModel): + launchProfileInitialization: LaunchProfileInitializationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LaunchProfilePaginatorTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + ec2SubnetIds: Optional[List[str]] = None + launchProfileId: Optional[str] = None + launchProfileProtocolVersions: Optional[List[str]] = None + name: Optional[str] = None + state: Optional[LaunchProfileStateType] = None + statusCode: Optional[LaunchProfileStatusCodeType] = None + statusMessage: Optional[str] = None + streamConfiguration: Optional[StreamConfigurationPaginatorTypeDef] = None + studioComponentIds: Optional[List[str]] = None + tags: Optional[Dict[str, str]] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + validationResults: Optional[List[ValidationResultTypeDef]] = None + +class CreateLaunchProfileRequestRequestTypeDef(BaseModel): + ec2SubnetIds: Sequence[str] + launchProfileProtocolVersions: Sequence[str] + name: str + streamConfiguration: StreamConfigurationCreateTypeDef + studioComponentIds: Sequence[str] + studioId: str + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateLaunchProfileRequestRequestTypeDef(BaseModel): + launchProfileId: str + studioId: str + clientToken: Optional[str] = None + description: Optional[str] = None + launchProfileProtocolVersions: Optional[Sequence[str]] = None + name: Optional[str] = None + streamConfiguration: Optional[StreamConfigurationCreateTypeDef] = None + studioComponentIds: Optional[Sequence[str]] = None + +class LaunchProfileTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + description: Optional[str] = None + ec2SubnetIds: Optional[List[str]] = None + launchProfileId: Optional[str] = None + launchProfileProtocolVersions: Optional[List[str]] = None + name: Optional[str] = None + state: Optional[LaunchProfileStateType] = None + statusCode: Optional[LaunchProfileStatusCodeType] = None + statusMessage: Optional[str] = None + streamConfiguration: Optional[StreamConfigurationTypeDef] = None + studioComponentIds: Optional[List[str]] = None + tags: Optional[Dict[str, str]] = None + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + validationResults: Optional[List[ValidationResultTypeDef]] = None + +class ListStudioComponentsResponsePaginatorTypeDef(BaseModel): + nextToken: str + studioComponents: List[StudioComponentPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStudioComponentResponseTypeDef(BaseModel): + studioComponent: StudioComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteStudioComponentResponseTypeDef(BaseModel): + studioComponent: StudioComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetStudioComponentResponseTypeDef(BaseModel): + studioComponent: StudioComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListStudioComponentsResponseTypeDef(BaseModel): + nextToken: str + studioComponents: List[StudioComponentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStudioComponentResponseTypeDef(BaseModel): + studioComponent: StudioComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLaunchProfilesResponsePaginatorTypeDef(BaseModel): + launchProfiles: List[LaunchProfilePaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLaunchProfileResponseTypeDef(BaseModel): + launchProfile: LaunchProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteLaunchProfileResponseTypeDef(BaseModel): + launchProfile: LaunchProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLaunchProfileDetailsResponseTypeDef(BaseModel): + launchProfile: LaunchProfileTypeDef + streamingImages: List[StreamingImageTypeDef] + studioComponentSummaries: List[StudioComponentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLaunchProfileResponseTypeDef(BaseModel): + launchProfile: LaunchProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLaunchProfilesResponseTypeDef(BaseModel): + launchProfiles: List[LaunchProfileTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLaunchProfileResponseTypeDef(BaseModel): + launchProfile: LaunchProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/nimble_constants.py b/aws_resource_validator/pydantic_models/nimble_constants.py new file mode 100644 index 00000000..1c6f9daa --- /dev/null +++ b/aws_resource_validator/pydantic_models/nimble_constants.py @@ -0,0 +1,605 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AutomaticTerminationModeType = Literal["ACTIVATED", "DEACTIVATED"] +LaunchProfileDeletedWaiterName = Literal["launch_profile_deleted"] +LaunchProfilePersonaType = Literal["USER"] +LaunchProfilePlatformType = Literal["LINUX", "WINDOWS"] +LaunchProfileReadyWaiterName = Literal["launch_profile_ready"] +LaunchProfileStateType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "READY", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +LaunchProfileStatusCodeType = Literal["ENCRYPTION_KEY_ACCESS_DENIED", + "ENCRYPTION_KEY_NOT_FOUND", + "INTERNAL_ERROR", + "INVALID_INSTANCE_TYPES_PROVIDED", + "INVALID_SUBNETS_COMBINATION", + "INVALID_SUBNETS_PROVIDED", + "LAUNCH_PROFILE_CREATED", + "LAUNCH_PROFILE_CREATE_IN_PROGRESS", + "LAUNCH_PROFILE_DELETED", + "LAUNCH_PROFILE_DELETE_IN_PROGRESS", + "LAUNCH_PROFILE_UPDATED", + "LAUNCH_PROFILE_UPDATE_IN_PROGRESS", + "LAUNCH_PROFILE_WITH_STREAM_SESSIONS_NOT_DELETED", + "STREAMING_IMAGE_NOT_FOUND", + "STREAMING_IMAGE_NOT_READY",] +LaunchProfileValidationStateType = Literal["VALIDATION_FAILED", + "VALIDATION_FAILED_INTERNAL_SERVER_ERROR", + "VALIDATION_IN_PROGRESS", + "VALIDATION_NOT_STARTED", + "VALIDATION_SUCCESS",] +LaunchProfileValidationStatusCodeType = Literal["VALIDATION_FAILED_INTERNAL_SERVER_ERROR", + "VALIDATION_FAILED_INVALID_ACTIVE_DIRECTORY", + "VALIDATION_FAILED_INVALID_SECURITY_GROUP_ASSOCIATION", + "VALIDATION_FAILED_INVALID_SUBNET_ROUTE_TABLE_ASSOCIATION", + "VALIDATION_FAILED_SUBNET_NOT_FOUND", + "VALIDATION_FAILED_UNAUTHORIZED", + "VALIDATION_IN_PROGRESS", + "VALIDATION_NOT_STARTED", + "VALIDATION_SUCCESS",] +LaunchProfileValidationTypeType = Literal["VALIDATE_ACTIVE_DIRECTORY_STUDIO_COMPONENT", + "VALIDATE_NETWORK_ACL_ASSOCIATION", + "VALIDATE_SECURITY_GROUP_ASSOCIATION", + "VALIDATE_SUBNET_ASSOCIATION",] +ListEulaAcceptancesPaginatorName = Literal["list_eula_acceptances"] +ListEulasPaginatorName = Literal["list_eulas"] +ListLaunchProfileMembersPaginatorName = Literal["list_launch_profile_members"] +ListLaunchProfilesPaginatorName = Literal["list_launch_profiles"] +ListStreamingImagesPaginatorName = Literal["list_streaming_images"] +ListStreamingSessionBackupsPaginatorName = Literal["list_streaming_session_backups"] +ListStreamingSessionsPaginatorName = Literal["list_streaming_sessions"] +ListStudioComponentsPaginatorName = Literal["list_studio_components"] +ListStudioMembersPaginatorName = Literal["list_studio_members"] +ListStudiosPaginatorName = Literal["list_studios"] +SessionBackupModeType = Literal["AUTOMATIC", "DEACTIVATED"] +SessionPersistenceModeType = Literal["ACTIVATED", "DEACTIVATED"] +StreamingClipboardModeType = Literal["DISABLED", "ENABLED"] +StreamingImageDeletedWaiterName = Literal["streaming_image_deleted"] +StreamingImageEncryptionConfigurationKeyTypeType = Literal["CUSTOMER_MANAGED_KEY"] +StreamingImageReadyWaiterName = Literal["streaming_image_ready"] +StreamingImageStateType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "READY", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +StreamingImageStatusCodeType = Literal["ACCESS_DENIED", + "INTERNAL_ERROR", + "STREAMING_IMAGE_CREATE_IN_PROGRESS", + "STREAMING_IMAGE_DELETED", + "STREAMING_IMAGE_DELETE_IN_PROGRESS", + "STREAMING_IMAGE_READY", + "STREAMING_IMAGE_UPDATE_IN_PROGRESS",] +StreamingInstanceTypeType = Literal["g3.4xlarge", + "g3s.xlarge", + "g4dn.12xlarge", + "g4dn.16xlarge", + "g4dn.2xlarge", + "g4dn.4xlarge", + "g4dn.8xlarge", + "g4dn.xlarge", + "g5.16xlarge", + "g5.2xlarge", + "g5.4xlarge", + "g5.8xlarge", + "g5.xlarge",] +StreamingSessionDeletedWaiterName = Literal["streaming_session_deleted"] +StreamingSessionReadyWaiterName = Literal["streaming_session_ready"] +StreamingSessionStateType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "READY", + "START_FAILED", + "START_IN_PROGRESS", + "STOPPED", + "STOP_FAILED", + "STOP_IN_PROGRESS",] +StreamingSessionStatusCodeType = Literal["ACTIVE_DIRECTORY_DOMAIN_JOIN_ERROR", + "AMI_VALIDATION_ERROR", + "DECRYPT_STREAMING_IMAGE_ERROR", + "INITIALIZATION_SCRIPT_ERROR", + "INSUFFICIENT_CAPACITY", + "INTERNAL_ERROR", + "NETWORK_CONNECTION_ERROR", + "NETWORK_INTERFACE_ERROR", + "STREAMING_SESSION_CREATE_IN_PROGRESS", + "STREAMING_SESSION_DELETED", + "STREAMING_SESSION_DELETE_IN_PROGRESS", + "STREAMING_SESSION_READY", + "STREAMING_SESSION_STARTED", + "STREAMING_SESSION_START_IN_PROGRESS", + "STREAMING_SESSION_STOPPED", + "STREAMING_SESSION_STOP_IN_PROGRESS",] +StreamingSessionStoppedWaiterName = Literal["streaming_session_stopped"] +StreamingSessionStorageModeType = Literal["UPLOAD"] +StreamingSessionStreamReadyWaiterName = Literal["streaming_session_stream_ready"] +StreamingSessionStreamStateType = Literal["CREATE_FAILED", "CREATE_IN_PROGRESS", "DELETED", "DELETE_FAILED", "DELETE_IN_PROGRESS", "READY"] +StreamingSessionStreamStatusCodeType = Literal["INTERNAL_ERROR", + "NETWORK_CONNECTION_ERROR", + "STREAM_CREATE_IN_PROGRESS", + "STREAM_DELETED", + "STREAM_DELETE_IN_PROGRESS", + "STREAM_READY",] +StudioComponentDeletedWaiterName = Literal["studio_component_deleted"] +StudioComponentInitializationScriptRunContextType = Literal["SYSTEM_INITIALIZATION", "USER_INITIALIZATION"] +StudioComponentReadyWaiterName = Literal["studio_component_ready"] +StudioComponentStateType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "READY", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +StudioComponentStatusCodeType = Literal["ACTIVE_DIRECTORY_ALREADY_EXISTS", + "ENCRYPTION_KEY_ACCESS_DENIED", + "ENCRYPTION_KEY_NOT_FOUND", + "INTERNAL_ERROR", + "STUDIO_COMPONENT_CREATED", + "STUDIO_COMPONENT_CREATE_IN_PROGRESS", + "STUDIO_COMPONENT_DELETED", + "STUDIO_COMPONENT_DELETE_IN_PROGRESS", + "STUDIO_COMPONENT_UPDATED", + "STUDIO_COMPONENT_UPDATE_IN_PROGRESS",] +StudioComponentSubtypeType = Literal["AMAZON_FSX_FOR_LUSTRE", "AMAZON_FSX_FOR_WINDOWS", "AWS_MANAGED_MICROSOFT_AD", "CUSTOM"] +StudioComponentTypeType = Literal["ACTIVE_DIRECTORY", "COMPUTE_FARM", "CUSTOM", "LICENSE_SERVICE", "SHARED_FILE_SYSTEM"] +StudioDeletedWaiterName = Literal["studio_deleted"] +StudioEncryptionConfigurationKeyTypeType = Literal["AWS_OWNED_KEY", "CUSTOMER_MANAGED_KEY"] +StudioPersonaType = Literal["ADMINISTRATOR"] +StudioReadyWaiterName = Literal["studio_ready"] +StudioStateType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "READY", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +StudioStatusCodeType = Literal["AWS_SSO_ACCESS_DENIED", + "AWS_SSO_CONFIGURATION_REPAIRED", + "AWS_SSO_CONFIGURATION_REPAIR_IN_PROGRESS", + "AWS_SSO_NOT_ENABLED", + "AWS_STS_REGION_DISABLED", + "ENCRYPTION_KEY_ACCESS_DENIED", + "ENCRYPTION_KEY_NOT_FOUND", + "INTERNAL_ERROR", + "ROLE_COULD_NOT_BE_ASSUMED", + "ROLE_NOT_OWNED_BY_STUDIO_OWNER", + "STUDIO_CREATED", + "STUDIO_CREATE_IN_PROGRESS", + "STUDIO_DELETED", + "STUDIO_DELETE_IN_PROGRESS", + "STUDIO_UPDATED", + "STUDIO_UPDATE_IN_PROGRESS", + "STUDIO_WITH_LAUNCH_PROFILES_NOT_DELETED", + "STUDIO_WITH_STREAMING_IMAGES_NOT_DELETED", + "STUDIO_WITH_STUDIO_COMPONENTS_NOT_DELETED",] +VolumeRetentionModeType = Literal["DELETE", "RETAIN"] +NimbleStudioServiceName = Literal["nimble"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_eula_acceptances", + "list_eulas", + "list_launch_profile_members", + "list_launch_profiles", + "list_streaming_images", + "list_streaming_session_backups", + "list_streaming_sessions", + "list_studio_components", + "list_studio_members", + "list_studios",] +WaiterName = Literal["launch_profile_deleted", + "launch_profile_ready", + "streaming_image_deleted", + "streaming_image_ready", + "streaming_session_deleted", + "streaming_session_ready", + "streaming_session_stopped", + "streaming_session_stream_ready", + "studio_component_deleted", + "studio_component_ready", + "studio_deleted", + "studio_ready",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/oam_classes.py b/aws_resource_validator/pydantic_models/oam_classes.py new file mode 100644 index 00000000..30748306 --- /dev/null +++ b/aws_resource_validator/pydantic_models/oam_classes.py @@ -0,0 +1,199 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.oam_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateSinkInputRequestTypeDef(BaseModel): + Name: str + Tags: Optional[Mapping[str, str]] = None + +class DeleteLinkInputRequestTypeDef(BaseModel): + Identifier: str + +class DeleteSinkInputRequestTypeDef(BaseModel): + Identifier: str + +class GetLinkInputRequestTypeDef(BaseModel): + Identifier: str + +class GetSinkInputRequestTypeDef(BaseModel): + Identifier: str + +class GetSinkPolicyInputRequestTypeDef(BaseModel): + SinkIdentifier: str + +class LogGroupConfigurationTypeDef(BaseModel): + Filter: str + +class MetricConfigurationTypeDef(BaseModel): + Filter: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAttachedLinksInputRequestTypeDef(BaseModel): + SinkIdentifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAttachedLinksItemTypeDef(BaseModel): + Label: Optional[str] = None + LinkArn: Optional[str] = None + ResourceTypes: Optional[List[str]] = None + +class ListLinksInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLinksItemTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Label: Optional[str] = None + ResourceTypes: Optional[List[str]] = None + SinkArn: Optional[str] = None + +class ListSinksInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSinksItemTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class PutSinkPolicyInputRequestTypeDef(BaseModel): + Policy: str + SinkIdentifier: str + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class CreateSinkOutputTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSinkOutputTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSinkPolicyOutputTypeDef(BaseModel): + Policy: str + SinkArn: str + SinkId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutSinkPolicyOutputTypeDef(BaseModel): + Policy: str + SinkArn: str + SinkId: str + ResponseMetadata: ResponseMetadataTypeDef + +class LinkConfigurationTypeDef(BaseModel): + LogGroupConfiguration: Optional[LogGroupConfigurationTypeDef] = None + MetricConfiguration: Optional[MetricConfigurationTypeDef] = None + +class ListAttachedLinksInputListAttachedLinksPaginateTypeDef(BaseModel): + SinkIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLinksInputListLinksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSinksInputListSinksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttachedLinksOutputTypeDef(BaseModel): + Items: List[ListAttachedLinksItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListLinksOutputTypeDef(BaseModel): + Items: List[ListLinksItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSinksOutputTypeDef(BaseModel): + Items: List[ListSinksItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateLinkInputRequestTypeDef(BaseModel): + LabelTemplate: str + ResourceTypes: Sequence[ResourceTypeType] + SinkIdentifier: str + LinkConfiguration: Optional[LinkConfigurationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateLinkOutputTypeDef(BaseModel): + Arn: str + Id: str + Label: str + LabelTemplate: str + LinkConfiguration: LinkConfigurationTypeDef + ResourceTypes: List[str] + SinkArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetLinkOutputTypeDef(BaseModel): + Arn: str + Id: str + Label: str + LabelTemplate: str + LinkConfiguration: LinkConfigurationTypeDef + ResourceTypes: List[str] + SinkArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLinkInputRequestTypeDef(BaseModel): + Identifier: str + ResourceTypes: Sequence[ResourceTypeType] + LinkConfiguration: Optional[LinkConfigurationTypeDef] = None + +class UpdateLinkOutputTypeDef(BaseModel): + Arn: str + Id: str + Label: str + LabelTemplate: str + LinkConfiguration: LinkConfigurationTypeDef + ResourceTypes: List[str] + SinkArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/oam_constants.py b/aws_resource_validator/pydantic_models/oam_constants.py new file mode 100644 index 00000000..02bac6d9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/oam_constants.py @@ -0,0 +1,435 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListAttachedLinksPaginatorName = Literal["list_attached_links"] +ListLinksPaginatorName = Literal["list_links"] +ListSinksPaginatorName = Literal["list_sinks"] +ResourceTypeType = Literal["AWS::ApplicationInsights::Application", + "AWS::CloudWatch::Metric", + "AWS::InternetMonitor::Monitor", + "AWS::Logs::LogGroup", + "AWS::XRay::Trace",] +CloudWatchObservabilityAccessManagerServiceName = Literal["oam"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_attached_links", "list_links", "list_sinks"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/omics_classes.py b/aws_resource_validator/pydantic_models/omics_classes.py new file mode 100644 index 00000000..e5ac7770 --- /dev/null +++ b/aws_resource_validator/pydantic_models/omics_classes.py @@ -0,0 +1,1699 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.omics_constants import * + +class AbortMultipartReadSetUploadRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + +class AcceptShareRequestRequestTypeDef(BaseModel): + shareId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ActivateReadSetJobItemTypeDef(BaseModel): + id: str + sequenceStoreId: str + status: ReadSetActivationJobStatusType + creationTime: datetime + completionTime: Optional[datetime] = None + +class ActivateReadSetSourceItemTypeDef(BaseModel): + readSetId: str + status: ReadSetActivationJobItemStatusType + statusMessage: Optional[str] = None + +class AnnotationImportItemDetailTypeDef(BaseModel): + source: str + jobStatus: JobStatusType + +class AnnotationImportItemSourceTypeDef(BaseModel): + source: str + +class AnnotationImportJobItemTypeDef(BaseModel): + id: str + destinationName: str + versionName: str + roleArn: str + status: JobStatusType + creationTime: datetime + updateTime: datetime + completionTime: Optional[datetime] = None + runLeftNormalization: Optional[bool] = None + annotationFields: Optional[Dict[str, str]] = None + +class ReferenceItemTypeDef(BaseModel): + referenceArn: Optional[str] = None + +class SseConfigTypeDef(BaseModel): + type: Literal["KMS"] + keyArn: Optional[str] = None + +class AnnotationStoreVersionItemTypeDef(BaseModel): + storeId: str + id: str + status: VersionStatusType + versionArn: str + name: str + versionName: str + description: str + creationTime: datetime + updateTime: datetime + statusMessage: str + versionSizeBytes: int + +class BatchDeleteReadSetRequestRequestTypeDef(BaseModel): + ids: Sequence[str] + sequenceStoreId: str + +class ReadSetBatchErrorTypeDef(BaseModel): + id: str + code: str + message: str + +class CancelAnnotationImportRequestRequestTypeDef(BaseModel): + jobId: str + +class CancelRunRequestRequestTypeDef(BaseModel): + id: str + +class CancelVariantImportRequestRequestTypeDef(BaseModel): + jobId: str + +class CompleteReadSetUploadPartListItemTypeDef(BaseModel): + partNumber: int + partSource: ReadSetPartSourceType + checksum: str + +class CreateMultipartReadSetUploadRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + sourceFileType: FileTypeType + subjectId: str + sampleId: str + name: str + clientToken: Optional[str] = None + generatedFrom: Optional[str] = None + referenceArn: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateRunGroupRequestRequestTypeDef(BaseModel): + requestId: str + name: Optional[str] = None + maxCpus: Optional[int] = None + maxRuns: Optional[int] = None + maxDuration: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + maxGpus: Optional[int] = None + +class CreateShareRequestRequestTypeDef(BaseModel): + resourceArn: str + principalSubscriber: str + shareName: Optional[str] = None + +class WorkflowParameterTypeDef(BaseModel): + description: Optional[str] = None + optional: Optional[bool] = None + +class DeleteAnnotationStoreRequestRequestTypeDef(BaseModel): + name: str + force: Optional[bool] = None + +class DeleteAnnotationStoreVersionsRequestRequestTypeDef(BaseModel): + name: str + versions: Sequence[str] + force: Optional[bool] = None + +class VersionDeleteErrorTypeDef(BaseModel): + versionName: str + message: str + +class DeleteReferenceRequestRequestTypeDef(BaseModel): + id: str + referenceStoreId: str + +class DeleteReferenceStoreRequestRequestTypeDef(BaseModel): + id: str + +class DeleteRunGroupRequestRequestTypeDef(BaseModel): + id: str + +class DeleteRunRequestRequestTypeDef(BaseModel): + id: str + +class DeleteSequenceStoreRequestRequestTypeDef(BaseModel): + id: str + +class DeleteShareRequestRequestTypeDef(BaseModel): + shareId: str + +class DeleteVariantStoreRequestRequestTypeDef(BaseModel): + name: str + force: Optional[bool] = None + +class DeleteWorkflowRequestRequestTypeDef(BaseModel): + id: str + +class ETagTypeDef(BaseModel): + algorithm: Optional[ETagAlgorithmType] = None + source1: Optional[str] = None + source2: Optional[str] = None + +class ExportReadSetDetailTypeDef(BaseModel): + id: str + status: ReadSetExportJobItemStatusType + statusMessage: Optional[str] = None + +class ExportReadSetJobDetailTypeDef(BaseModel): + id: str + sequenceStoreId: str + destination: str + status: ReadSetExportJobStatusType + creationTime: datetime + completionTime: Optional[datetime] = None + +class ExportReadSetTypeDef(BaseModel): + readSetId: str + +class ReadSetS3AccessTypeDef(BaseModel): + s3Uri: Optional[str] = None + +class FilterTypeDef(BaseModel): + resourceArns: Optional[Sequence[str]] = None + status: Optional[Sequence[ShareStatusType]] = None + type: Optional[Sequence[ShareResourceTypeType]] = None + +class VcfOptionsTypeDef(BaseModel): + ignoreQualField: Optional[bool] = None + ignoreFilterField: Optional[bool] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetAnnotationImportRequestRequestTypeDef(BaseModel): + jobId: str + +class GetAnnotationStoreRequestRequestTypeDef(BaseModel): + name: str + +class GetAnnotationStoreVersionRequestRequestTypeDef(BaseModel): + name: str + versionName: str + +class GetReadSetActivationJobRequestRequestTypeDef(BaseModel): + id: str + sequenceStoreId: str + +class GetReadSetExportJobRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + id: str + +class GetReadSetImportJobRequestRequestTypeDef(BaseModel): + id: str + sequenceStoreId: str + +class GetReadSetMetadataRequestRequestTypeDef(BaseModel): + id: str + sequenceStoreId: str + +class SequenceInformationTypeDef(BaseModel): + totalReadCount: Optional[int] = None + totalBaseCount: Optional[int] = None + generatedFrom: Optional[str] = None + alignment: Optional[str] = None + +class GetReadSetRequestRequestTypeDef(BaseModel): + id: str + sequenceStoreId: str + partNumber: int + file: Optional[ReadSetFileType] = None + +class GetReferenceImportJobRequestRequestTypeDef(BaseModel): + id: str + referenceStoreId: str + +class ImportReferenceSourceItemTypeDef(BaseModel): + status: ReferenceImportJobItemStatusType + sourceFile: Optional[str] = None + statusMessage: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class GetReferenceMetadataRequestRequestTypeDef(BaseModel): + id: str + referenceStoreId: str + +class GetReferenceRequestRequestTypeDef(BaseModel): + id: str + referenceStoreId: str + partNumber: int + range: Optional[str] = None + file: Optional[ReferenceFileType] = None + +class GetReferenceStoreRequestRequestTypeDef(BaseModel): + id: str + +class GetRunGroupRequestRequestTypeDef(BaseModel): + id: str + +class GetRunRequestRequestTypeDef(BaseModel): + id: str + export: Optional[Sequence[Literal["DEFINITION"]]] = None + +class RunLogLocationTypeDef(BaseModel): + engineLogStream: Optional[str] = None + runLogStream: Optional[str] = None + +class GetRunTaskRequestRequestTypeDef(BaseModel): + id: str + taskId: str + +class GetSequenceStoreRequestRequestTypeDef(BaseModel): + id: str + +class SequenceStoreS3AccessTypeDef(BaseModel): + s3Uri: Optional[str] = None + s3AccessPointArn: Optional[str] = None + +class GetShareRequestRequestTypeDef(BaseModel): + shareId: str + +class ShareDetailsTypeDef(BaseModel): + shareId: Optional[str] = None + resourceArn: Optional[str] = None + resourceId: Optional[str] = None + principalSubscriber: Optional[str] = None + ownerId: Optional[str] = None + status: Optional[ShareStatusType] = None + statusMessage: Optional[str] = None + shareName: Optional[str] = None + creationTime: Optional[datetime] = None + updateTime: Optional[datetime] = None + +class GetVariantImportRequestRequestTypeDef(BaseModel): + jobId: str + +class VariantImportItemDetailTypeDef(BaseModel): + source: str + jobStatus: JobStatusType + statusMessage: Optional[str] = None + +class GetVariantStoreRequestRequestTypeDef(BaseModel): + name: str + +class GetWorkflowRequestRequestTypeDef(BaseModel): + id: str + type: Optional[WorkflowTypeType] = None + export: Optional[Sequence[Literal["DEFINITION"]]] = None + workflowOwnerId: Optional[str] = None + +class ImportReadSetJobItemTypeDef(BaseModel): + id: str + sequenceStoreId: str + roleArn: str + status: ReadSetImportJobStatusType + creationTime: datetime + completionTime: Optional[datetime] = None + +class SourceFilesTypeDef(BaseModel): + source1: str + source2: Optional[str] = None + +class ImportReferenceJobItemTypeDef(BaseModel): + id: str + referenceStoreId: str + roleArn: str + status: ReferenceImportJobStatusType + creationTime: datetime + completionTime: Optional[datetime] = None + +class ListAnnotationImportJobsFilterTypeDef(BaseModel): + status: Optional[JobStatusType] = None + storeName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAnnotationStoreVersionsFilterTypeDef(BaseModel): + status: Optional[VersionStatusType] = None + +class ListAnnotationStoresFilterTypeDef(BaseModel): + status: Optional[StoreStatusType] = None + +class ListMultipartReadSetUploadsRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MultipartReadSetUploadListItemTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + sourceFileType: FileTypeType + subjectId: str + sampleId: str + generatedFrom: str + referenceArn: str + creationTime: datetime + name: Optional[str] = None + description: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ReadSetUploadPartListItemTypeDef(BaseModel): + partNumber: int + partSize: int + partSource: ReadSetPartSourceType + checksum: str + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + +class ReferenceListItemTypeDef(BaseModel): + id: str + arn: str + referenceStoreId: str + md5: str + creationTime: datetime + updateTime: datetime + status: Optional[ReferenceStatusType] = None + name: Optional[str] = None + description: Optional[str] = None + +class ListRunGroupsRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + startingToken: Optional[str] = None + maxResults: Optional[int] = None + +class RunGroupListItemTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + maxCpus: Optional[int] = None + maxRuns: Optional[int] = None + maxDuration: Optional[int] = None + creationTime: Optional[datetime] = None + maxGpus: Optional[int] = None + +class ListRunTasksRequestRequestTypeDef(BaseModel): + id: str + status: Optional[TaskStatusType] = None + startingToken: Optional[str] = None + maxResults: Optional[int] = None + +class TaskListItemTypeDef(BaseModel): + taskId: Optional[str] = None + status: Optional[TaskStatusType] = None + name: Optional[str] = None + cpus: Optional[int] = None + memory: Optional[int] = None + creationTime: Optional[datetime] = None + startTime: Optional[datetime] = None + stopTime: Optional[datetime] = None + gpus: Optional[int] = None + instanceType: Optional[str] = None + +class ListRunsRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + runGroupId: Optional[str] = None + startingToken: Optional[str] = None + maxResults: Optional[int] = None + status: Optional[RunStatusType] = None + +class RunListItemTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + status: Optional[RunStatusType] = None + workflowId: Optional[str] = None + name: Optional[str] = None + priority: Optional[int] = None + storageCapacity: Optional[int] = None + creationTime: Optional[datetime] = None + startTime: Optional[datetime] = None + stopTime: Optional[datetime] = None + storageType: Optional[StorageTypeType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListVariantImportJobsFilterTypeDef(BaseModel): + status: Optional[JobStatusType] = None + storeName: Optional[str] = None + +class VariantImportJobItemTypeDef(BaseModel): + id: str + destinationName: str + roleArn: str + status: JobStatusType + creationTime: datetime + updateTime: datetime + completionTime: Optional[datetime] = None + runLeftNormalization: Optional[bool] = None + annotationFields: Optional[Dict[str, str]] = None + +class ListVariantStoresFilterTypeDef(BaseModel): + status: Optional[StoreStatusType] = None + +class ListWorkflowsRequestRequestTypeDef(BaseModel): + type: Optional[WorkflowTypeType] = None + name: Optional[str] = None + startingToken: Optional[str] = None + maxResults: Optional[int] = None + +class WorkflowListItemTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + status: Optional[WorkflowStatusType] = None + type: Optional[WorkflowTypeType] = None + digest: Optional[str] = None + creationTime: Optional[datetime] = None + metadata: Optional[Dict[str, str]] = None + +class ReadOptionsTypeDef(BaseModel): + sep: Optional[str] = None + encoding: Optional[str] = None + quote: Optional[str] = None + quoteAll: Optional[bool] = None + escape: Optional[str] = None + escapeQuotes: Optional[bool] = None + comment: Optional[str] = None + header: Optional[bool] = None + lineSep: Optional[str] = None + +class StartReadSetActivationJobSourceItemTypeDef(BaseModel): + readSetId: str + +class StartReferenceImportJobSourceItemTypeDef(BaseModel): + sourceFile: str + name: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class StartRunRequestRequestTypeDef(BaseModel): + roleArn: str + requestId: str + workflowId: Optional[str] = None + workflowType: Optional[WorkflowTypeType] = None + runId: Optional[str] = None + name: Optional[str] = None + runGroupId: Optional[str] = None + priority: Optional[int] = None + parameters: Optional[Mapping[str, Any]] = None + storageCapacity: Optional[int] = None + outputUri: Optional[str] = None + logLevel: Optional[RunLogLevelType] = None + tags: Optional[Mapping[str, str]] = None + retentionMode: Optional[RunRetentionModeType] = None + storageType: Optional[StorageTypeType] = None + workflowOwnerId: Optional[str] = None + +class VariantImportItemSourceTypeDef(BaseModel): + source: str + +class TsvStoreOptionsOutputTypeDef(BaseModel): + annotationType: Optional[AnnotationTypeType] = None + formatToHeader: Optional[Dict[FormatToHeaderKeyType, str]] = None + schema: Optional[List[Dict[str, SchemaValueTypeType]]] = None + +class TsvStoreOptionsTypeDef(BaseModel): + annotationType: Optional[AnnotationTypeType] = None + formatToHeader: Optional[Mapping[FormatToHeaderKeyType, str]] = None + schema: Optional[Sequence[Mapping[str, SchemaValueTypeType]]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TsvVersionOptionsOutputTypeDef(BaseModel): + annotationType: Optional[AnnotationTypeType] = None + formatToHeader: Optional[Dict[FormatToHeaderKeyType, str]] = None + schema: Optional[List[Dict[str, SchemaValueTypeType]]] = None + +class TsvVersionOptionsTypeDef(BaseModel): + annotationType: Optional[AnnotationTypeType] = None + formatToHeader: Optional[Mapping[FormatToHeaderKeyType, str]] = None + schema: Optional[Sequence[Mapping[str, SchemaValueTypeType]]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAnnotationStoreRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + +class UpdateAnnotationStoreVersionRequestRequestTypeDef(BaseModel): + name: str + versionName: str + description: Optional[str] = None + +class UpdateRunGroupRequestRequestTypeDef(BaseModel): + id: str + name: Optional[str] = None + maxCpus: Optional[int] = None + maxRuns: Optional[int] = None + maxDuration: Optional[int] = None + maxGpus: Optional[int] = None + +class UpdateVariantStoreRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + +class UpdateWorkflowRequestRequestTypeDef(BaseModel): + id: str + name: Optional[str] = None + description: Optional[str] = None + +class AcceptShareResponseTypeDef(BaseModel): + status: ShareStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CompleteMultipartReadSetUploadResponseTypeDef(BaseModel): + readSetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMultipartReadSetUploadResponseTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + sourceFileType: FileTypeType + subjectId: str + sampleId: str + generatedFrom: str + referenceArn: str + name: str + description: str + tags: Dict[str, str] + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRunGroupResponseTypeDef(BaseModel): + arn: str + id: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateShareResponseTypeDef(BaseModel): + shareId: str + status: ShareStatusType + shareName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowResponseTypeDef(BaseModel): + arn: str + id: str + status: WorkflowStatusType + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAnnotationStoreResponseTypeDef(BaseModel): + status: StoreStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteShareResponseTypeDef(BaseModel): + status: ShareStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVariantStoreResponseTypeDef(BaseModel): + status: StoreStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetReadSetResponseTypeDef(BaseModel): + payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetReferenceResponseTypeDef(BaseModel): + payload: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetRunGroupResponseTypeDef(BaseModel): + arn: str + id: str + name: str + maxCpus: int + maxRuns: int + maxDuration: int + creationTime: datetime + tags: Dict[str, str] + maxGpus: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetRunTaskResponseTypeDef(BaseModel): + taskId: str + status: TaskStatusType + name: str + cpus: int + memory: int + creationTime: datetime + startTime: datetime + stopTime: datetime + statusMessage: str + logStream: str + gpus: int + instanceType: str + failureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartAnnotationImportResponseTypeDef(BaseModel): + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartReadSetActivationJobResponseTypeDef(BaseModel): + id: str + sequenceStoreId: str + status: ReadSetActivationJobStatusType + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartReadSetExportJobResponseTypeDef(BaseModel): + id: str + sequenceStoreId: str + destination: str + status: ReadSetExportJobStatusType + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartReadSetImportJobResponseTypeDef(BaseModel): + id: str + sequenceStoreId: str + roleArn: str + status: ReadSetImportJobStatusType + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartReferenceImportJobResponseTypeDef(BaseModel): + id: str + referenceStoreId: str + roleArn: str + status: ReferenceImportJobStatusType + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartRunResponseTypeDef(BaseModel): + arn: str + id: str + status: RunStatusType + tags: Dict[str, str] + uuid: str + runOutputUri: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartVariantImportResponseTypeDef(BaseModel): + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnnotationStoreVersionResponseTypeDef(BaseModel): + storeId: str + id: str + status: VersionStatusType + name: str + versionName: str + description: str + creationTime: datetime + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UploadReadSetPartResponseTypeDef(BaseModel): + checksum: str + ResponseMetadata: ResponseMetadataTypeDef + +class ActivateReadSetFilterTypeDef(BaseModel): + status: Optional[ReadSetActivationJobStatusType] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ExportReadSetFilterTypeDef(BaseModel): + status: Optional[ReadSetExportJobStatusType] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ImportReadSetFilterTypeDef(BaseModel): + status: Optional[ReadSetImportJobStatusType] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ImportReferenceFilterTypeDef(BaseModel): + status: Optional[ReferenceImportJobStatusType] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ReadSetFilterTypeDef(BaseModel): + name: Optional[str] = None + status: Optional[ReadSetStatusType] = None + referenceArn: Optional[str] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + sampleId: Optional[str] = None + subjectId: Optional[str] = None + generatedFrom: Optional[str] = None + creationType: Optional[CreationTypeType] = None + +class ReadSetUploadPartListFilterTypeDef(BaseModel): + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ReferenceFilterTypeDef(BaseModel): + name: Optional[str] = None + md5: Optional[str] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ReferenceStoreFilterTypeDef(BaseModel): + name: Optional[str] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class SequenceStoreFilterTypeDef(BaseModel): + name: Optional[str] = None + createdAfter: Optional[TimestampTypeDef] = None + createdBefore: Optional[TimestampTypeDef] = None + +class ListReadSetActivationJobsResponseTypeDef(BaseModel): + nextToken: str + activationJobs: List[ActivateReadSetJobItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetReadSetActivationJobResponseTypeDef(BaseModel): + id: str + sequenceStoreId: str + status: ReadSetActivationJobStatusType + statusMessage: str + creationTime: datetime + completionTime: datetime + sources: List[ActivateReadSetSourceItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnnotationImportJobsResponseTypeDef(BaseModel): + annotationImportJobs: List[AnnotationImportJobItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVariantStoreResponseTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + name: str + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVariantStoreResponseTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + name: str + description: str + creationTime: datetime + updateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class AnnotationStoreItemTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + storeArn: str + name: str + storeFormat: StoreFormatType + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + updateTime: datetime + statusMessage: str + storeSizeBytes: int + +class CreateReferenceStoreRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + sseConfig: Optional[SseConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + +class CreateReferenceStoreResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSequenceStoreRequestRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + sseConfig: Optional[SseConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + fallbackLocation: Optional[str] = None + eTagAlgorithmFamily: Optional[ETagAlgorithmFamilyType] = None + +class CreateSequenceStoreResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + fallbackLocation: str + eTagAlgorithmFamily: ETagAlgorithmFamilyType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVariantStoreRequestRequestTypeDef(BaseModel): + reference: ReferenceItemTypeDef + name: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + sseConfig: Optional[SseConfigTypeDef] = None + +class GetReferenceStoreResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetVariantStoreResponseTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + storeArn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + updateTime: datetime + tags: Dict[str, str] + statusMessage: str + storeSizeBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class ReferenceStoreDetailTypeDef(BaseModel): + arn: str + id: str + creationTime: datetime + name: Optional[str] = None + description: Optional[str] = None + sseConfig: Optional[SseConfigTypeDef] = None + +class SequenceStoreDetailTypeDef(BaseModel): + arn: str + id: str + creationTime: datetime + name: Optional[str] = None + description: Optional[str] = None + sseConfig: Optional[SseConfigTypeDef] = None + fallbackLocation: Optional[str] = None + eTagAlgorithmFamily: Optional[ETagAlgorithmFamilyType] = None + +class VariantStoreItemTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + storeArn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + updateTime: datetime + statusMessage: str + storeSizeBytes: int + +class ListAnnotationStoreVersionsResponseTypeDef(BaseModel): + annotationStoreVersions: List[AnnotationStoreVersionItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteReadSetResponseTypeDef(BaseModel): + errors: List[ReadSetBatchErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UploadReadSetPartRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + partSource: ReadSetPartSourceType + partNumber: int + payload: BlobTypeDef + +class CompleteMultipartReadSetUploadRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + parts: Sequence[CompleteReadSetUploadPartListItemTypeDef] + +class CreateWorkflowRequestRequestTypeDef(BaseModel): + requestId: str + name: Optional[str] = None + description: Optional[str] = None + engine: Optional[WorkflowEngineType] = None + definitionZip: Optional[BlobTypeDef] = None + definitionUri: Optional[str] = None + main: Optional[str] = None + parameterTemplate: Optional[Mapping[str, WorkflowParameterTypeDef]] = None + storageCapacity: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + accelerators: Optional[Literal["GPU"]] = None + +class GetWorkflowResponseTypeDef(BaseModel): + arn: str + id: str + status: WorkflowStatusType + type: WorkflowTypeType + name: str + description: str + engine: WorkflowEngineType + definition: str + main: str + digest: str + parameterTemplate: Dict[str, WorkflowParameterTypeDef] + storageCapacity: int + creationTime: datetime + statusMessage: str + tags: Dict[str, str] + metadata: Dict[str, str] + accelerators: Literal["GPU"] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAnnotationStoreVersionsResponseTypeDef(BaseModel): + errors: List[VersionDeleteErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetReadSetExportJobResponseTypeDef(BaseModel): + id: str + sequenceStoreId: str + destination: str + status: ReadSetExportJobStatusType + statusMessage: str + creationTime: datetime + completionTime: datetime + readSets: List[ExportReadSetDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReadSetExportJobsResponseTypeDef(BaseModel): + nextToken: str + exportJobs: List[ExportReadSetJobDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartReadSetExportJobRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + destination: str + roleArn: str + sources: Sequence[ExportReadSetTypeDef] + clientToken: Optional[str] = None + +class FileInformationTypeDef(BaseModel): + totalParts: Optional[int] = None + partSize: Optional[int] = None + contentLength: Optional[int] = None + s3Access: Optional[ReadSetS3AccessTypeDef] = None + +class ListSharesRequestRequestTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + filter: Optional[FilterTypeDef] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetAnnotationImportRequestAnnotationImportJobCreatedWaitTypeDef(BaseModel): + jobId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetAnnotationStoreRequestAnnotationStoreCreatedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetAnnotationStoreRequestAnnotationStoreDeletedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetAnnotationStoreVersionRequestAnnotationStoreVersionCreatedWaitTypeDef(BaseModel): + name: str + versionName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetAnnotationStoreVersionRequestAnnotationStoreVersionDeletedWaitTypeDef(BaseModel): + name: str + versionName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetReadSetActivationJobRequestReadSetActivationJobCompletedWaitTypeDef(BaseModel): + id: str + sequenceStoreId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetReadSetExportJobRequestReadSetExportJobCompletedWaitTypeDef(BaseModel): + sequenceStoreId: str + id: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetReadSetImportJobRequestReadSetImportJobCompletedWaitTypeDef(BaseModel): + id: str + sequenceStoreId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetReferenceImportJobRequestReferenceImportJobCompletedWaitTypeDef(BaseModel): + id: str + referenceStoreId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetRunRequestRunCompletedWaitTypeDef(BaseModel): + id: str + export: Optional[Sequence[Literal["DEFINITION"]]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetRunRequestRunRunningWaitTypeDef(BaseModel): + id: str + export: Optional[Sequence[Literal["DEFINITION"]]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetRunTaskRequestTaskCompletedWaitTypeDef(BaseModel): + id: str + taskId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetRunTaskRequestTaskRunningWaitTypeDef(BaseModel): + id: str + taskId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetVariantImportRequestVariantImportJobCreatedWaitTypeDef(BaseModel): + jobId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetVariantStoreRequestVariantStoreCreatedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetVariantStoreRequestVariantStoreDeletedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetWorkflowRequestWorkflowActiveWaitTypeDef(BaseModel): + id: str + type: Optional[WorkflowTypeType] = None + export: Optional[Sequence[Literal["DEFINITION"]]] = None + workflowOwnerId: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ReadSetListItemTypeDef(BaseModel): + id: str + arn: str + sequenceStoreId: str + status: ReadSetStatusType + fileType: FileTypeType + creationTime: datetime + subjectId: Optional[str] = None + sampleId: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + referenceArn: Optional[str] = None + sequenceInformation: Optional[SequenceInformationTypeDef] = None + statusMessage: Optional[str] = None + creationType: Optional[CreationTypeType] = None + etag: Optional[ETagTypeDef] = None + +class GetReferenceImportJobResponseTypeDef(BaseModel): + id: str + referenceStoreId: str + roleArn: str + status: ReferenceImportJobStatusType + statusMessage: str + creationTime: datetime + completionTime: datetime + sources: List[ImportReferenceSourceItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRunResponseTypeDef(BaseModel): + arn: str + id: str + status: RunStatusType + workflowId: str + workflowType: WorkflowTypeType + runId: str + roleArn: str + name: str + runGroupId: str + priority: int + definition: str + digest: str + parameters: Dict[str, Any] + storageCapacity: int + outputUri: str + logLevel: RunLogLevelType + resourceDigests: Dict[str, str] + startedBy: str + creationTime: datetime + startTime: datetime + stopTime: datetime + statusMessage: str + tags: Dict[str, str] + accelerators: Literal["GPU"] + retentionMode: RunRetentionModeType + failureReason: str + logLocation: RunLogLocationTypeDef + uuid: str + runOutputUri: str + storageType: StorageTypeType + workflowOwnerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSequenceStoreResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + fallbackLocation: str + s3Access: SequenceStoreS3AccessTypeDef + eTagAlgorithmFamily: ETagAlgorithmFamilyType + ResponseMetadata: ResponseMetadataTypeDef + +class GetShareResponseTypeDef(BaseModel): + share: ShareDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSharesResponseTypeDef(BaseModel): + shares: List[ShareDetailsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVariantImportResponseTypeDef(BaseModel): + id: str + destinationName: str + roleArn: str + status: JobStatusType + statusMessage: str + creationTime: datetime + updateTime: datetime + completionTime: datetime + items: List[VariantImportItemDetailTypeDef] + runLeftNormalization: bool + annotationFields: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReadSetImportJobsResponseTypeDef(BaseModel): + nextToken: str + importJobs: List[ImportReadSetJobItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportReadSetSourceItemTypeDef(BaseModel): + sourceFiles: SourceFilesTypeDef + sourceFileType: FileTypeType + status: ReadSetImportJobItemStatusType + subjectId: str + sampleId: str + statusMessage: Optional[str] = None + generatedFrom: Optional[str] = None + referenceArn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class StartReadSetImportJobSourceItemTypeDef(BaseModel): + sourceFiles: SourceFilesTypeDef + sourceFileType: FileTypeType + subjectId: str + sampleId: str + generatedFrom: Optional[str] = None + referenceArn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ListReferenceImportJobsResponseTypeDef(BaseModel): + nextToken: str + importJobs: List[ImportReferenceJobItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnnotationImportJobsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + ids: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + filter: Optional[ListAnnotationImportJobsFilterTypeDef] = None + +class ListAnnotationImportJobsRequestListAnnotationImportJobsPaginateTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + filter: Optional[ListAnnotationImportJobsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMultipartReadSetUploadsRequestListMultipartReadSetUploadsPaginateTypeDef(BaseModel): + sequenceStoreId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRunGroupsRequestListRunGroupsPaginateTypeDef(BaseModel): + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRunTasksRequestListRunTasksPaginateTypeDef(BaseModel): + id: str + status: Optional[TaskStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRunsRequestListRunsPaginateTypeDef(BaseModel): + name: Optional[str] = None + runGroupId: Optional[str] = None + status: Optional[RunStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSharesRequestListSharesPaginateTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + filter: Optional[FilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowsRequestListWorkflowsPaginateTypeDef(BaseModel): + type: Optional[WorkflowTypeType] = None + name: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnnotationStoreVersionsRequestListAnnotationStoreVersionsPaginateTypeDef(BaseModel): + name: str + filter: Optional[ListAnnotationStoreVersionsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnnotationStoreVersionsRequestRequestTypeDef(BaseModel): + name: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ListAnnotationStoreVersionsFilterTypeDef] = None + +class ListAnnotationStoresRequestListAnnotationStoresPaginateTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + filter: Optional[ListAnnotationStoresFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnnotationStoresRequestRequestTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ListAnnotationStoresFilterTypeDef] = None + +class ListMultipartReadSetUploadsResponseTypeDef(BaseModel): + nextToken: str + uploads: List[MultipartReadSetUploadListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReadSetUploadPartsResponseTypeDef(BaseModel): + nextToken: str + parts: List[ReadSetUploadPartListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReferencesResponseTypeDef(BaseModel): + nextToken: str + references: List[ReferenceListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRunGroupsResponseTypeDef(BaseModel): + items: List[RunGroupListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRunTasksResponseTypeDef(BaseModel): + items: List[TaskListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRunsResponseTypeDef(BaseModel): + items: List[RunListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVariantImportJobsRequestListVariantImportJobsPaginateTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + filter: Optional[ListVariantImportJobsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVariantImportJobsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + ids: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + filter: Optional[ListVariantImportJobsFilterTypeDef] = None + +class ListVariantImportJobsResponseTypeDef(BaseModel): + variantImportJobs: List[VariantImportJobItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVariantStoresRequestListVariantStoresPaginateTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + filter: Optional[ListVariantStoresFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVariantStoresRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + ids: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + filter: Optional[ListVariantStoresFilterTypeDef] = None + +class ListWorkflowsResponseTypeDef(BaseModel): + items: List[WorkflowListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TsvOptionsTypeDef(BaseModel): + readOptions: Optional[ReadOptionsTypeDef] = None + +class StartReadSetActivationJobRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + sources: Sequence[StartReadSetActivationJobSourceItemTypeDef] + clientToken: Optional[str] = None + +class StartReferenceImportJobRequestRequestTypeDef(BaseModel): + referenceStoreId: str + roleArn: str + sources: Sequence[StartReferenceImportJobSourceItemTypeDef] + clientToken: Optional[str] = None + +class StartVariantImportRequestRequestTypeDef(BaseModel): + destinationName: str + roleArn: str + items: Sequence[VariantImportItemSourceTypeDef] + runLeftNormalization: Optional[bool] = None + annotationFields: Optional[Mapping[str, str]] = None + +class StoreOptionsOutputTypeDef(BaseModel): + tsvStoreOptions: Optional[TsvStoreOptionsOutputTypeDef] = None + +class StoreOptionsTypeDef(BaseModel): + tsvStoreOptions: Optional[TsvStoreOptionsTypeDef] = None + +class VersionOptionsOutputTypeDef(BaseModel): + tsvVersionOptions: Optional[TsvVersionOptionsOutputTypeDef] = None + +class VersionOptionsTypeDef(BaseModel): + tsvVersionOptions: Optional[TsvVersionOptionsTypeDef] = None + +class ListReadSetActivationJobsRequestListReadSetActivationJobsPaginateTypeDef(BaseModel): + sequenceStoreId: str + filter: Optional[ActivateReadSetFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReadSetActivationJobsRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ActivateReadSetFilterTypeDef] = None + +class ListReadSetExportJobsRequestListReadSetExportJobsPaginateTypeDef(BaseModel): + sequenceStoreId: str + filter: Optional[ExportReadSetFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReadSetExportJobsRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ExportReadSetFilterTypeDef] = None + +class ListReadSetImportJobsRequestListReadSetImportJobsPaginateTypeDef(BaseModel): + sequenceStoreId: str + filter: Optional[ImportReadSetFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReadSetImportJobsRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ImportReadSetFilterTypeDef] = None + +class ListReferenceImportJobsRequestListReferenceImportJobsPaginateTypeDef(BaseModel): + referenceStoreId: str + filter: Optional[ImportReferenceFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReferenceImportJobsRequestRequestTypeDef(BaseModel): + referenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ImportReferenceFilterTypeDef] = None + +class ListReadSetsRequestListReadSetsPaginateTypeDef(BaseModel): + sequenceStoreId: str + filter: Optional[ReadSetFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReadSetsRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ReadSetFilterTypeDef] = None + +class ListReadSetUploadPartsRequestListReadSetUploadPartsPaginateTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + partSource: ReadSetPartSourceType + filter: Optional[ReadSetUploadPartListFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReadSetUploadPartsRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + uploadId: str + partSource: ReadSetPartSourceType + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ReadSetUploadPartListFilterTypeDef] = None + +class ListReferencesRequestListReferencesPaginateTypeDef(BaseModel): + referenceStoreId: str + filter: Optional[ReferenceFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReferencesRequestRequestTypeDef(BaseModel): + referenceStoreId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ReferenceFilterTypeDef] = None + +class ListReferenceStoresRequestListReferenceStoresPaginateTypeDef(BaseModel): + filter: Optional[ReferenceStoreFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReferenceStoresRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[ReferenceStoreFilterTypeDef] = None + +class ListSequenceStoresRequestListSequenceStoresPaginateTypeDef(BaseModel): + filter: Optional[SequenceStoreFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSequenceStoresRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + filter: Optional[SequenceStoreFilterTypeDef] = None + +class ListAnnotationStoresResponseTypeDef(BaseModel): + annotationStores: List[AnnotationStoreItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReferenceStoresResponseTypeDef(BaseModel): + nextToken: str + referenceStores: List[ReferenceStoreDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSequenceStoresResponseTypeDef(BaseModel): + nextToken: str + sequenceStores: List[SequenceStoreDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVariantStoresResponseTypeDef(BaseModel): + variantStores: List[VariantStoreItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReadSetFilesTypeDef(BaseModel): + source1: Optional[FileInformationTypeDef] = None + source2: Optional[FileInformationTypeDef] = None + index: Optional[FileInformationTypeDef] = None + +class ReferenceFilesTypeDef(BaseModel): + source: Optional[FileInformationTypeDef] = None + index: Optional[FileInformationTypeDef] = None + +class ListReadSetsResponseTypeDef(BaseModel): + nextToken: str + readSets: List[ReadSetListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetReadSetImportJobResponseTypeDef(BaseModel): + id: str + sequenceStoreId: str + roleArn: str + status: ReadSetImportJobStatusType + statusMessage: str + creationTime: datetime + completionTime: datetime + sources: List[ImportReadSetSourceItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartReadSetImportJobRequestRequestTypeDef(BaseModel): + sequenceStoreId: str + roleArn: str + sources: Sequence[StartReadSetImportJobSourceItemTypeDef] + clientToken: Optional[str] = None + +class FormatOptionsTypeDef(BaseModel): + tsvOptions: Optional[TsvOptionsTypeDef] = None + vcfOptions: Optional[VcfOptionsTypeDef] = None + +class CreateAnnotationStoreResponseTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + storeFormat: StoreFormatType + storeOptions: StoreOptionsOutputTypeDef + status: StoreStatusType + name: str + versionName: str + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnnotationStoreResponseTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + storeArn: str + name: str + description: str + sseConfig: SseConfigTypeDef + creationTime: datetime + updateTime: datetime + tags: Dict[str, str] + storeOptions: StoreOptionsOutputTypeDef + storeFormat: StoreFormatType + statusMessage: str + storeSizeBytes: int + numVersions: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnnotationStoreResponseTypeDef(BaseModel): + id: str + reference: ReferenceItemTypeDef + status: StoreStatusType + name: str + description: str + creationTime: datetime + updateTime: datetime + storeOptions: StoreOptionsOutputTypeDef + storeFormat: StoreFormatType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnnotationStoreRequestRequestTypeDef(BaseModel): + storeFormat: StoreFormatType + reference: Optional[ReferenceItemTypeDef] = None + name: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + versionName: Optional[str] = None + sseConfig: Optional[SseConfigTypeDef] = None + storeOptions: Optional[StoreOptionsTypeDef] = None + +class CreateAnnotationStoreVersionResponseTypeDef(BaseModel): + id: str + versionName: str + storeId: str + versionOptions: VersionOptionsOutputTypeDef + name: str + status: VersionStatusType + creationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnnotationStoreVersionResponseTypeDef(BaseModel): + storeId: str + id: str + status: VersionStatusType + versionArn: str + name: str + versionName: str + description: str + creationTime: datetime + updateTime: datetime + tags: Dict[str, str] + versionOptions: VersionOptionsOutputTypeDef + statusMessage: str + versionSizeBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnnotationStoreVersionRequestRequestTypeDef(BaseModel): + name: str + versionName: str + description: Optional[str] = None + versionOptions: Optional[VersionOptionsTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class GetReadSetMetadataResponseTypeDef(BaseModel): + id: str + arn: str + sequenceStoreId: str + subjectId: str + sampleId: str + status: ReadSetStatusType + name: str + description: str + fileType: FileTypeType + creationTime: datetime + sequenceInformation: SequenceInformationTypeDef + referenceArn: str + files: ReadSetFilesTypeDef + statusMessage: str + creationType: CreationTypeType + etag: ETagTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetReferenceMetadataResponseTypeDef(BaseModel): + id: str + arn: str + referenceStoreId: str + md5: str + status: ReferenceStatusType + name: str + description: str + creationTime: datetime + updateTime: datetime + files: ReferenceFilesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnnotationImportResponseTypeDef(BaseModel): + id: str + destinationName: str + versionName: str + roleArn: str + status: JobStatusType + statusMessage: str + creationTime: datetime + updateTime: datetime + completionTime: datetime + items: List[AnnotationImportItemDetailTypeDef] + runLeftNormalization: bool + formatOptions: FormatOptionsTypeDef + annotationFields: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartAnnotationImportRequestRequestTypeDef(BaseModel): + destinationName: str + roleArn: str + items: Sequence[AnnotationImportItemSourceTypeDef] + versionName: Optional[str] = None + formatOptions: Optional[FormatOptionsTypeDef] = None + runLeftNormalization: Optional[bool] = None + annotationFields: Optional[Mapping[str, str]] = None + diff --git a/aws_resource_validator/pydantic_models/omics_constants.py b/aws_resource_validator/pydantic_models/omics_constants.py new file mode 100644 index 00000000..6489b61f --- /dev/null +++ b/aws_resource_validator/pydantic_models/omics_constants.py @@ -0,0 +1,559 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceleratorsType = Literal["GPU"] +AnnotationImportJobCreatedWaiterName = Literal["annotation_import_job_created"] +AnnotationStoreCreatedWaiterName = Literal["annotation_store_created"] +AnnotationStoreDeletedWaiterName = Literal["annotation_store_deleted"] +AnnotationStoreVersionCreatedWaiterName = Literal["annotation_store_version_created"] +AnnotationStoreVersionDeletedWaiterName = Literal["annotation_store_version_deleted"] +AnnotationTypeType = Literal["CHR_POS", + "CHR_POS_REF_ALT", + "CHR_START_END_ONE_BASE", + "CHR_START_END_REF_ALT_ONE_BASE", + "CHR_START_END_REF_ALT_ZERO_BASE", + "CHR_START_END_ZERO_BASE", + "GENERIC",] +CreationTypeType = Literal["IMPORT", "UPLOAD"] +ETagAlgorithmFamilyType = Literal["MD5up", "SHA256up", "SHA512up"] +ETagAlgorithmType = Literal["BAM_MD5up", + "BAM_SHA256up", + "BAM_SHA512up", + "CRAM_MD5up", + "CRAM_SHA256up", + "CRAM_SHA512up", + "FASTQ_MD5up", + "FASTQ_SHA256up", + "FASTQ_SHA512up",] +EncryptionTypeType = Literal["KMS"] +FileTypeType = Literal["BAM", "CRAM", "FASTQ", "UBAM"] +FormatToHeaderKeyType = Literal["ALT", "CHR", "END", "POS", "REF", "START"] +JobStatusType = Literal["CANCELLED", "COMPLETED", "COMPLETED_WITH_FAILURES", "FAILED", "IN_PROGRESS", "SUBMITTED"] +ListAnnotationImportJobsPaginatorName = Literal["list_annotation_import_jobs"] +ListAnnotationStoreVersionsPaginatorName = Literal["list_annotation_store_versions"] +ListAnnotationStoresPaginatorName = Literal["list_annotation_stores"] +ListMultipartReadSetUploadsPaginatorName = Literal["list_multipart_read_set_uploads"] +ListReadSetActivationJobsPaginatorName = Literal["list_read_set_activation_jobs"] +ListReadSetExportJobsPaginatorName = Literal["list_read_set_export_jobs"] +ListReadSetImportJobsPaginatorName = Literal["list_read_set_import_jobs"] +ListReadSetUploadPartsPaginatorName = Literal["list_read_set_upload_parts"] +ListReadSetsPaginatorName = Literal["list_read_sets"] +ListReferenceImportJobsPaginatorName = Literal["list_reference_import_jobs"] +ListReferenceStoresPaginatorName = Literal["list_reference_stores"] +ListReferencesPaginatorName = Literal["list_references"] +ListRunGroupsPaginatorName = Literal["list_run_groups"] +ListRunTasksPaginatorName = Literal["list_run_tasks"] +ListRunsPaginatorName = Literal["list_runs"] +ListSequenceStoresPaginatorName = Literal["list_sequence_stores"] +ListSharesPaginatorName = Literal["list_shares"] +ListVariantImportJobsPaginatorName = Literal["list_variant_import_jobs"] +ListVariantStoresPaginatorName = Literal["list_variant_stores"] +ListWorkflowsPaginatorName = Literal["list_workflows"] +ReadSetActivationJobCompletedWaiterName = Literal["read_set_activation_job_completed"] +ReadSetActivationJobItemStatusType = Literal["FAILED", "FINISHED", "IN_PROGRESS", "NOT_STARTED"] +ReadSetActivationJobStatusType = Literal["CANCELLED", + "CANCELLING", + "COMPLETED", + "COMPLETED_WITH_FAILURES", + "FAILED", + "IN_PROGRESS", + "SUBMITTED",] +ReadSetExportJobCompletedWaiterName = Literal["read_set_export_job_completed"] +ReadSetExportJobItemStatusType = Literal["FAILED", "FINISHED", "IN_PROGRESS", "NOT_STARTED"] +ReadSetExportJobStatusType = Literal["CANCELLED", + "CANCELLING", + "COMPLETED", + "COMPLETED_WITH_FAILURES", + "FAILED", + "IN_PROGRESS", + "SUBMITTED",] +ReadSetFileType = Literal["INDEX", "SOURCE1", "SOURCE2"] +ReadSetImportJobCompletedWaiterName = Literal["read_set_import_job_completed"] +ReadSetImportJobItemStatusType = Literal["FAILED", "FINISHED", "IN_PROGRESS", "NOT_STARTED"] +ReadSetImportJobStatusType = Literal["CANCELLED", + "CANCELLING", + "COMPLETED", + "COMPLETED_WITH_FAILURES", + "FAILED", + "IN_PROGRESS", + "SUBMITTED",] +ReadSetPartSourceType = Literal["SOURCE1", "SOURCE2"] +ReadSetStatusType = Literal["ACTIVATING", "ACTIVE", "ARCHIVED", "DELETED", "DELETING", "PROCESSING_UPLOAD", "UPLOAD_FAILED"] +ReferenceFileType = Literal["INDEX", "SOURCE"] +ReferenceImportJobCompletedWaiterName = Literal["reference_import_job_completed"] +ReferenceImportJobItemStatusType = Literal["FAILED", "FINISHED", "IN_PROGRESS", "NOT_STARTED"] +ReferenceImportJobStatusType = Literal["CANCELLED", + "CANCELLING", + "COMPLETED", + "COMPLETED_WITH_FAILURES", + "FAILED", + "IN_PROGRESS", + "SUBMITTED",] +ReferenceStatusType = Literal["ACTIVE", "DELETED", "DELETING"] +ResourceOwnerType = Literal["OTHER", "SELF"] +RunCompletedWaiterName = Literal["run_completed"] +RunExportType = Literal["DEFINITION"] +RunLogLevelType = Literal["ALL", "ERROR", "FATAL", "OFF"] +RunRetentionModeType = Literal["REMOVE", "RETAIN"] +RunRunningWaiterName = Literal["run_running"] +RunStatusType = Literal["CANCELLED", "COMPLETED", "DELETED", "FAILED", "PENDING", "RUNNING", "STARTING", "STOPPING"] +SchemaValueTypeType = Literal["BOOLEAN", "DOUBLE", "FLOAT", "INT", "LONG", "STRING"] +ShareResourceTypeType = Literal["ANNOTATION_STORE", "VARIANT_STORE", "WORKFLOW"] +ShareStatusType = Literal["ACTIVATING", "ACTIVE", "DELETED", "DELETING", "FAILED", "PENDING"] +StorageTypeType = Literal["DYNAMIC", "STATIC"] +StoreFormatType = Literal["GFF", "TSV", "VCF"] +StoreStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +TaskCompletedWaiterName = Literal["task_completed"] +TaskRunningWaiterName = Literal["task_running"] +TaskStatusType = Literal["CANCELLED", "COMPLETED", "FAILED", "PENDING", "RUNNING", "STARTING", "STOPPING"] +VariantImportJobCreatedWaiterName = Literal["variant_import_job_created"] +VariantStoreCreatedWaiterName = Literal["variant_store_created"] +VariantStoreDeletedWaiterName = Literal["variant_store_deleted"] +VersionStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +WorkflowActiveWaiterName = Literal["workflow_active"] +WorkflowEngineType = Literal["CWL", "NEXTFLOW", "WDL"] +WorkflowExportType = Literal["DEFINITION"] +WorkflowStatusType = Literal["ACTIVE", "CREATING", "DELETED", "FAILED", "INACTIVE", "UPDATING"] +WorkflowTypeType = Literal["PRIVATE", "READY2RUN"] +OmicsServiceName = Literal["omics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_annotation_import_jobs", + "list_annotation_store_versions", + "list_annotation_stores", + "list_multipart_read_set_uploads", + "list_read_set_activation_jobs", + "list_read_set_export_jobs", + "list_read_set_import_jobs", + "list_read_set_upload_parts", + "list_read_sets", + "list_reference_import_jobs", + "list_reference_stores", + "list_references", + "list_run_groups", + "list_run_tasks", + "list_runs", + "list_sequence_stores", + "list_shares", + "list_variant_import_jobs", + "list_variant_stores", + "list_workflows",] +WaiterName = Literal["annotation_import_job_created", + "annotation_store_created", + "annotation_store_deleted", + "annotation_store_version_created", + "annotation_store_version_deleted", + "read_set_activation_job_completed", + "read_set_export_job_completed", + "read_set_import_job_completed", + "reference_import_job_completed", + "run_completed", + "run_running", + "task_completed", + "task_running", + "variant_import_job_created", + "variant_store_created", + "variant_store_deleted", + "workflow_active",] +RegionName = Literal["ap-southeast-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "il-central-1", + "us-east-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any] +StoreOptionsUnionTypeDef = Union['StoreOptionsTypeDef', 'StoreOptionsOutputTypeDef'] +VersionOptionsUnionTypeDef = Union['VersionOptionsTypeDef', 'VersionOptionsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/opensearch_classes.py b/aws_resource_validator/pydantic_models/opensearch_classes.py new file mode 100644 index 00000000..d86e9517 --- /dev/null +++ b/aws_resource_validator/pydantic_models/opensearch_classes.py @@ -0,0 +1,1288 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.opensearch_constants import * + +class NaturalLanguageQueryGenerationOptionsInputTypeDef(BaseModel): + DesiredState: Optional[NaturalLanguageQueryGenerationDesiredStateType] = None + +class NaturalLanguageQueryGenerationOptionsOutputTypeDef(BaseModel): + DesiredState: Optional[NaturalLanguageQueryGenerationDesiredStateType] = None + CurrentState: Optional[NaturalLanguageQueryGenerationCurrentStateType] = None + +class OptionStatusTypeDef(BaseModel): + CreationDate: datetime + UpdateDate: datetime + State: OptionStateType + UpdateVersion: Optional[int] = None + PendingDeletion: Optional[bool] = None + +class AWSDomainInformationTypeDef(BaseModel): + DomainName: str + OwnerId: Optional[str] = None + Region: Optional[str] = None + +class AcceptInboundConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AdditionalLimitTypeDef(BaseModel): + LimitName: Optional[str] = None + LimitValues: Optional[List[str]] = None + +class JWTOptionsInputTypeDef(BaseModel): + Enabled: Optional[bool] = None + SubjectKey: Optional[str] = None + RolesKey: Optional[str] = None + PublicKey: Optional[str] = None + +class MasterUserOptionsTypeDef(BaseModel): + MasterUserARN: Optional[str] = None + MasterUserName: Optional[str] = None + MasterUserPassword: Optional[str] = None + +class JWTOptionsOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + SubjectKey: Optional[str] = None + RolesKey: Optional[str] = None + PublicKey: Optional[str] = None + +class AssociatePackageRequestRequestTypeDef(BaseModel): + PackageID: str + DomainName: str + +class AuthorizeVpcEndpointAccessRequestRequestTypeDef(BaseModel): + DomainName: str + Account: str + +class AuthorizedPrincipalTypeDef(BaseModel): + PrincipalType: Optional[PrincipalTypeType] = None + Principal: Optional[str] = None + +class ScheduledAutoTuneDetailsTypeDef(BaseModel): + Date: Optional[datetime] = None + ActionType: Optional[ScheduledAutoTuneActionTypeType] = None + Action: Optional[str] = None + Severity: Optional[ScheduledAutoTuneSeverityTypeType] = None + +class DurationTypeDef(BaseModel): + Value: Optional[int] = None + Unit: Optional[Literal["HOURS"]] = None + +class AutoTuneOptionsOutputTypeDef(BaseModel): + State: Optional[AutoTuneStateType] = None + ErrorMessage: Optional[str] = None + UseOffPeakWindow: Optional[bool] = None + +class AutoTuneStatusTypeDef(BaseModel): + CreationDate: datetime + UpdateDate: datetime + State: AutoTuneStateType + UpdateVersion: Optional[int] = None + ErrorMessage: Optional[str] = None + PendingDeletion: Optional[bool] = None + +class AvailabilityZoneInfoTypeDef(BaseModel): + AvailabilityZoneName: Optional[str] = None + ZoneStatus: Optional[ZoneStatusType] = None + ConfiguredDataNodeCount: Optional[str] = None + AvailableDataNodeCount: Optional[str] = None + TotalShards: Optional[str] = None + TotalUnAssignedShards: Optional[str] = None + +class CancelDomainConfigChangeRequestRequestTypeDef(BaseModel): + DomainName: str + DryRun: Optional[bool] = None + +class CancelledChangePropertyTypeDef(BaseModel): + PropertyName: Optional[str] = None + CancelledValue: Optional[str] = None + ActiveValue: Optional[str] = None + +class CancelServiceSoftwareUpdateRequestRequestTypeDef(BaseModel): + DomainName: str + +class ServiceSoftwareOptionsTypeDef(BaseModel): + CurrentVersion: Optional[str] = None + NewVersion: Optional[str] = None + UpdateAvailable: Optional[bool] = None + Cancellable: Optional[bool] = None + UpdateStatus: Optional[DeploymentStatusType] = None + Description: Optional[str] = None + AutomatedUpdateDate: Optional[datetime] = None + OptionalDeployment: Optional[bool] = None + +class ChangeProgressDetailsTypeDef(BaseModel): + ChangeId: Optional[str] = None + Message: Optional[str] = None + ConfigChangeStatus: Optional[ConfigChangeStatusType] = None + InitiatedBy: Optional[InitiatedByType] = None + StartTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class ChangeProgressStageTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + Description: Optional[str] = None + LastUpdated: Optional[datetime] = None + +class ColdStorageOptionsTypeDef(BaseModel): + Enabled: bool + +class ZoneAwarenessConfigTypeDef(BaseModel): + AvailabilityZoneCount: Optional[int] = None + +class CognitoOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + UserPoolId: Optional[str] = None + IdentityPoolId: Optional[str] = None + RoleArn: Optional[str] = None + +class CompatibleVersionsMapTypeDef(BaseModel): + SourceVersion: Optional[str] = None + TargetVersions: Optional[List[str]] = None + +class CrossClusterSearchConnectionPropertiesTypeDef(BaseModel): + SkipUnavailable: Optional[SkipUnavailableStatusType] = None + +class DomainEndpointOptionsTypeDef(BaseModel): + EnforceHTTPS: Optional[bool] = None + TLSSecurityPolicy: Optional[TLSSecurityPolicyType] = None + CustomEndpointEnabled: Optional[bool] = None + CustomEndpoint: Optional[str] = None + CustomEndpointCertificateArn: Optional[str] = None + +class EBSOptionsTypeDef(BaseModel): + EBSEnabled: Optional[bool] = None + VolumeType: Optional[VolumeTypeType] = None + VolumeSize: Optional[int] = None + Iops: Optional[int] = None + Throughput: Optional[int] = None + +class EncryptionAtRestOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + +class LogPublishingOptionTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[str] = None + Enabled: Optional[bool] = None + +class NodeToNodeEncryptionOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class SnapshotOptionsTypeDef(BaseModel): + AutomatedSnapshotStartHour: Optional[int] = None + +class SoftwareUpdateOptionsTypeDef(BaseModel): + AutoSoftwareUpdateEnabled: Optional[bool] = None + +class VPCOptionsTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class OutboundConnectionStatusTypeDef(BaseModel): + StatusCode: Optional[OutboundConnectionStatusCodeType] = None + Message: Optional[str] = None + +class PackageSourceTypeDef(BaseModel): + S3BucketName: Optional[str] = None + S3Key: Optional[str] = None + +class S3GlueDataCatalogTypeDef(BaseModel): + RoleArn: Optional[str] = None + +class DeleteDataSourceRequestRequestTypeDef(BaseModel): + DomainName: str + Name: str + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DeleteInboundConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class DeleteOutboundConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class DeletePackageRequestRequestTypeDef(BaseModel): + PackageID: str + +class DeleteVpcEndpointRequestRequestTypeDef(BaseModel): + VpcEndpointId: str + +class VpcEndpointSummaryTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcEndpointOwner: Optional[str] = None + DomainArn: Optional[str] = None + Status: Optional[VpcEndpointStatusType] = None + +class DescribeDomainAutoTunesRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeDomainChangeProgressRequestRequestTypeDef(BaseModel): + DomainName: str + ChangeId: Optional[str] = None + +class DescribeDomainConfigRequestRequestTypeDef(BaseModel): + DomainName: str + +class DescribeDomainHealthRequestRequestTypeDef(BaseModel): + DomainName: str + +class DescribeDomainNodesRequestRequestTypeDef(BaseModel): + DomainName: str + +class DomainNodesStatusTypeDef(BaseModel): + NodeId: Optional[str] = None + NodeType: Optional[NodeTypeType] = None + AvailabilityZone: Optional[str] = None + InstanceType: Optional[OpenSearchPartitionInstanceTypeType] = None + NodeStatus: Optional[NodeStatusType] = None + StorageType: Optional[str] = None + StorageVolumeType: Optional[VolumeTypeType] = None + StorageSize: Optional[str] = None + +class DescribeDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DescribeDomainsRequestRequestTypeDef(BaseModel): + DomainNames: Sequence[str] + +class DescribeDryRunProgressRequestRequestTypeDef(BaseModel): + DomainName: str + DryRunId: Optional[str] = None + LoadDryRunConfig: Optional[bool] = None + +class DryRunResultsTypeDef(BaseModel): + DeploymentType: Optional[str] = None + Message: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class DescribeInstanceTypeLimitsRequestRequestTypeDef(BaseModel): + InstanceType: OpenSearchPartitionInstanceTypeType + EngineVersion: str + DomainName: Optional[str] = None + +class DescribePackagesFilterTypeDef(BaseModel): + Name: Optional[DescribePackagesFilterNameType] = None + Value: Optional[Sequence[str]] = None + +class DescribeReservedInstanceOfferingsRequestRequestTypeDef(BaseModel): + ReservedInstanceOfferingId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeReservedInstancesRequestRequestTypeDef(BaseModel): + ReservedInstanceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeVpcEndpointsRequestRequestTypeDef(BaseModel): + VpcEndpointIds: Sequence[str] + +class VpcEndpointErrorTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + ErrorCode: Optional[VpcEndpointErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class DissociatePackageRequestRequestTypeDef(BaseModel): + PackageID: str + DomainName: str + +class ModifyingPropertiesTypeDef(BaseModel): + Name: Optional[str] = None + ActiveValue: Optional[str] = None + PendingValue: Optional[str] = None + ValueType: Optional[PropertyValueTypeType] = None + +class DomainInfoTypeDef(BaseModel): + DomainName: Optional[str] = None + EngineType: Optional[EngineTypeType] = None + +class DomainMaintenanceDetailsTypeDef(BaseModel): + MaintenanceId: Optional[str] = None + DomainName: Optional[str] = None + Action: Optional[MaintenanceTypeType] = None + NodeId: Optional[str] = None + Status: Optional[MaintenanceStatusType] = None + StatusMessage: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ErrorDetailsTypeDef(BaseModel): + ErrorType: Optional[str] = None + ErrorMessage: Optional[str] = None + +class VPCDerivedInfoTypeDef(BaseModel): + VPCId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + AvailabilityZones: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class ValidationFailureTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class GetCompatibleVersionsRequestRequestTypeDef(BaseModel): + DomainName: Optional[str] = None + +class GetDataSourceRequestRequestTypeDef(BaseModel): + DomainName: str + Name: str + +class GetDomainMaintenanceStatusRequestRequestTypeDef(BaseModel): + DomainName: str + MaintenanceId: str + +class GetPackageVersionHistoryRequestRequestTypeDef(BaseModel): + PackageID: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetUpgradeHistoryRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetUpgradeStatusRequestRequestTypeDef(BaseModel): + DomainName: str + +class InboundConnectionStatusTypeDef(BaseModel): + StatusCode: Optional[InboundConnectionStatusCodeType] = None + Message: Optional[str] = None + +class InstanceCountLimitsTypeDef(BaseModel): + MinimumInstanceCount: Optional[int] = None + MaximumInstanceCount: Optional[int] = None + +class InstanceTypeDetailsTypeDef(BaseModel): + InstanceType: Optional[OpenSearchPartitionInstanceTypeType] = None + EncryptionEnabled: Optional[bool] = None + CognitoEnabled: Optional[bool] = None + AppLogsEnabled: Optional[bool] = None + AdvancedSecurityEnabled: Optional[bool] = None + WarmEnabled: Optional[bool] = None + InstanceRole: Optional[List[str]] = None + AvailabilityZones: Optional[List[str]] = None + +class ListDataSourcesRequestRequestTypeDef(BaseModel): + DomainName: str + +class ListDomainMaintenancesRequestRequestTypeDef(BaseModel): + DomainName: str + Action: Optional[MaintenanceTypeType] = None + Status: Optional[MaintenanceStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDomainNamesRequestRequestTypeDef(BaseModel): + EngineType: Optional[EngineTypeType] = None + +class ListDomainsForPackageRequestRequestTypeDef(BaseModel): + PackageID: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInstanceTypeDetailsRequestRequestTypeDef(BaseModel): + EngineVersion: str + DomainName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + RetrieveAZs: Optional[bool] = None + InstanceType: Optional[str] = None + +class ListPackagesForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListScheduledActionsRequestRequestTypeDef(BaseModel): + DomainName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ScheduledActionTypeDef(BaseModel): + Id: str + Type: ActionTypeType + Severity: ActionSeverityType + ScheduledTime: int + Description: Optional[str] = None + ScheduledBy: Optional[ScheduledByType] = None + Status: Optional[ActionStatusType] = None + Mandatory: Optional[bool] = None + Cancellable: Optional[bool] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + ARN: str + +class ListVersionsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListVpcEndpointAccessRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + +class ListVpcEndpointsForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + NextToken: Optional[str] = None + +class ListVpcEndpointsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class WindowStartTimeTypeDef(BaseModel): + Hours: int + Minutes: int + +class PluginPropertiesTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Version: Optional[str] = None + ClassName: Optional[str] = None + UncompressedSizeInBytes: Optional[int] = None + +class PurchaseReservedInstanceOfferingRequestRequestTypeDef(BaseModel): + ReservedInstanceOfferingId: str + ReservationName: str + InstanceCount: Optional[int] = None + +class RecurringChargeTypeDef(BaseModel): + RecurringChargeAmount: Optional[float] = None + RecurringChargeFrequency: Optional[str] = None + +class RejectInboundConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class RemoveTagsRequestRequestTypeDef(BaseModel): + ARN: str + TagKeys: Sequence[str] + +class RevokeVpcEndpointAccessRequestRequestTypeDef(BaseModel): + DomainName: str + Account: str + +class SAMLIdpTypeDef(BaseModel): + MetadataContent: str + EntityId: str + +class StartDomainMaintenanceRequestRequestTypeDef(BaseModel): + DomainName: str + Action: MaintenanceTypeType + NodeId: Optional[str] = None + +class StartServiceSoftwareUpdateRequestRequestTypeDef(BaseModel): + DomainName: str + ScheduleAt: Optional[ScheduleAtType] = None + DesiredStartTime: Optional[int] = None + +class StorageTypeLimitTypeDef(BaseModel): + LimitName: Optional[str] = None + LimitValues: Optional[List[str]] = None + +class UpdateScheduledActionRequestRequestTypeDef(BaseModel): + DomainName: str + ActionID: str + ActionType: ActionTypeType + ScheduleAt: ScheduleAtType + DesiredStartTime: Optional[int] = None + +class UpgradeDomainRequestRequestTypeDef(BaseModel): + DomainName: str + TargetVersion: str + PerformCheckOnly: Optional[bool] = None + AdvancedOptions: Optional[Mapping[str, str]] = None + +class UpgradeStepItemTypeDef(BaseModel): + UpgradeStep: Optional[UpgradeStepType] = None + UpgradeStepStatus: Optional[UpgradeStatusType] = None + Issues: Optional[List[str]] = None + ProgressPercent: Optional[float] = None + +class AIMLOptionsInputTypeDef(BaseModel): + NaturalLanguageQueryGenerationOptions: Optional[ NaturalLanguageQueryGenerationOptionsInputTypeDef ] = None + +class AIMLOptionsOutputTypeDef(BaseModel): + NaturalLanguageQueryGenerationOptions: Optional[ NaturalLanguageQueryGenerationOptionsOutputTypeDef ] = None + +class AccessPoliciesStatusTypeDef(BaseModel): + Options: str + Status: OptionStatusTypeDef + +class AdvancedOptionsStatusTypeDef(BaseModel): + Options: Dict[str, str] + Status: OptionStatusTypeDef + +class IPAddressTypeStatusTypeDef(BaseModel): + Options: IPAddressTypeType + Status: OptionStatusTypeDef + +class VersionStatusTypeDef(BaseModel): + Options: str + Status: OptionStatusTypeDef + +class DomainInformationContainerTypeDef(BaseModel): + AWSDomainInformation: Optional[AWSDomainInformationTypeDef] = None + +class AddDataSourceResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSourceResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainMaintenanceStatusResponseTypeDef(BaseModel): + Status: MaintenanceStatusType + StatusMessage: str + NodeId: str + Action: MaintenanceTypeType + CreatedAt: datetime + UpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetUpgradeStatusResponseTypeDef(BaseModel): + UpgradeStep: UpgradeStepType + StepStatus: UpgradeStatusType + UpgradeName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVersionsResponseTypeDef(BaseModel): + Versions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PurchaseReservedInstanceOfferingResponseTypeDef(BaseModel): + ReservedInstanceId: str + ReservationName: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDomainMaintenanceResponseTypeDef(BaseModel): + MaintenanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceResponseTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsRequestRequestTypeDef(BaseModel): + ARN: str + TagList: Sequence[TagTypeDef] + +class ListTagsResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizeVpcEndpointAccessResponseTypeDef(BaseModel): + AuthorizedPrincipal: AuthorizedPrincipalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointAccessResponseTypeDef(BaseModel): + AuthorizedPrincipalList: List[AuthorizedPrincipalTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AutoTuneDetailsTypeDef(BaseModel): + ScheduledAutoTuneDetails: Optional[ScheduledAutoTuneDetailsTypeDef] = None + +class AutoTuneMaintenanceScheduleOutputTypeDef(BaseModel): + StartAt: Optional[datetime] = None + Duration: Optional[DurationTypeDef] = None + CronExpressionForRecurrence: Optional[str] = None + +class AutoTuneMaintenanceScheduleTypeDef(BaseModel): + StartAt: Optional[TimestampTypeDef] = None + Duration: Optional[DurationTypeDef] = None + CronExpressionForRecurrence: Optional[str] = None + +class EnvironmentInfoTypeDef(BaseModel): + AvailabilityZoneInformation: Optional[List[AvailabilityZoneInfoTypeDef]] = None + +class CancelDomainConfigChangeResponseTypeDef(BaseModel): + CancelledChangeIds: List[str] + CancelledChangeProperties: List[CancelledChangePropertyTypeDef] + DryRun: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CancelServiceSoftwareUpdateResponseTypeDef(BaseModel): + ServiceSoftwareOptions: ServiceSoftwareOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartServiceSoftwareUpdateResponseTypeDef(BaseModel): + ServiceSoftwareOptions: ServiceSoftwareOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpgradeDomainResponseTypeDef(BaseModel): + UpgradeId: str + DomainName: str + TargetVersion: str + PerformCheckOnly: bool + AdvancedOptions: Dict[str, str] + ChangeProgressDetails: ChangeProgressDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeProgressStatusDetailsTypeDef(BaseModel): + ChangeId: Optional[str] = None + StartTime: Optional[datetime] = None + Status: Optional[OverallChangeStatusType] = None + PendingProperties: Optional[List[str]] = None + CompletedProperties: Optional[List[str]] = None + TotalNumberOfStages: Optional[int] = None + ChangeProgressStages: Optional[List[ChangeProgressStageTypeDef]] = None + LastUpdatedTime: Optional[datetime] = None + ConfigChangeStatus: Optional[ConfigChangeStatusType] = None + InitiatedBy: Optional[InitiatedByType] = None + +class ClusterConfigTypeDef(BaseModel): + InstanceType: Optional[OpenSearchPartitionInstanceTypeType] = None + InstanceCount: Optional[int] = None + DedicatedMasterEnabled: Optional[bool] = None + ZoneAwarenessEnabled: Optional[bool] = None + ZoneAwarenessConfig: Optional[ZoneAwarenessConfigTypeDef] = None + DedicatedMasterType: Optional[OpenSearchPartitionInstanceTypeType] = None + DedicatedMasterCount: Optional[int] = None + WarmEnabled: Optional[bool] = None + WarmType: Optional[OpenSearchWarmPartitionInstanceTypeType] = None + WarmCount: Optional[int] = None + ColdStorageOptions: Optional[ColdStorageOptionsTypeDef] = None + MultiAZWithStandbyEnabled: Optional[bool] = None + +class CognitoOptionsStatusTypeDef(BaseModel): + Options: CognitoOptionsTypeDef + Status: OptionStatusTypeDef + +class GetCompatibleVersionsResponseTypeDef(BaseModel): + CompatibleVersions: List[CompatibleVersionsMapTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ConnectionPropertiesTypeDef(BaseModel): + Endpoint: Optional[str] = None + CrossClusterSearch: Optional[CrossClusterSearchConnectionPropertiesTypeDef] = None + +class DomainEndpointOptionsStatusTypeDef(BaseModel): + Options: DomainEndpointOptionsTypeDef + Status: OptionStatusTypeDef + +class EBSOptionsStatusTypeDef(BaseModel): + Options: EBSOptionsTypeDef + Status: OptionStatusTypeDef + +class EncryptionAtRestOptionsStatusTypeDef(BaseModel): + Options: EncryptionAtRestOptionsTypeDef + Status: OptionStatusTypeDef + +class LogPublishingOptionsStatusTypeDef(BaseModel): + Options: Optional[Dict[LogTypeType, LogPublishingOptionTypeDef]] = None + Status: Optional[OptionStatusTypeDef] = None + +class NodeToNodeEncryptionOptionsStatusTypeDef(BaseModel): + Options: NodeToNodeEncryptionOptionsTypeDef + Status: OptionStatusTypeDef + +class SnapshotOptionsStatusTypeDef(BaseModel): + Options: SnapshotOptionsTypeDef + Status: OptionStatusTypeDef + +class SoftwareUpdateOptionsStatusTypeDef(BaseModel): + Options: Optional[SoftwareUpdateOptionsTypeDef] = None + Status: Optional[OptionStatusTypeDef] = None + +class CreateVpcEndpointRequestRequestTypeDef(BaseModel): + DomainArn: str + VpcOptions: VPCOptionsTypeDef + ClientToken: Optional[str] = None + +class UpdateVpcEndpointRequestRequestTypeDef(BaseModel): + VpcEndpointId: str + VpcOptions: VPCOptionsTypeDef + +class CreatePackageRequestRequestTypeDef(BaseModel): + PackageName: str + PackageType: PackageTypeType + PackageSource: PackageSourceTypeDef + PackageDescription: Optional[str] = None + +class UpdatePackageRequestRequestTypeDef(BaseModel): + PackageID: str + PackageSource: PackageSourceTypeDef + PackageDescription: Optional[str] = None + CommitMessage: Optional[str] = None + +class DataSourceTypeTypeDef(BaseModel): + S3GlueDataCatalog: Optional[S3GlueDataCatalogTypeDef] = None + +class DeleteVpcEndpointResponseTypeDef(BaseModel): + VpcEndpointSummary: VpcEndpointSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointsForDomainResponseTypeDef(BaseModel): + VpcEndpointSummaryList: List[VpcEndpointSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointsResponseTypeDef(BaseModel): + VpcEndpointSummaryList: List[VpcEndpointSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainNodesResponseTypeDef(BaseModel): + DomainNodesStatusList: List[DomainNodesStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInboundConnectionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeOutboundConnectionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribePackagesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[DescribePackagesFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDomainNamesResponseTypeDef(BaseModel): + DomainNames: List[DomainInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainMaintenancesResponseTypeDef(BaseModel): + DomainMaintenances: List[DomainMaintenanceDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DomainPackageDetailsTypeDef(BaseModel): + PackageID: Optional[str] = None + PackageName: Optional[str] = None + PackageType: Optional[PackageTypeType] = None + LastUpdated: Optional[datetime] = None + DomainName: Optional[str] = None + DomainPackageStatus: Optional[DomainPackageStatusType] = None + PackageVersion: Optional[str] = None + ReferencePath: Optional[str] = None + ErrorDetails: Optional[ErrorDetailsTypeDef] = None + +class VPCDerivedInfoStatusTypeDef(BaseModel): + Options: VPCDerivedInfoTypeDef + Status: OptionStatusTypeDef + +class VpcEndpointTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcEndpointOwner: Optional[str] = None + DomainArn: Optional[str] = None + VpcOptions: Optional[VPCDerivedInfoTypeDef] = None + Status: Optional[VpcEndpointStatusType] = None + Endpoint: Optional[str] = None + +class DryRunProgressStatusTypeDef(BaseModel): + DryRunId: str + DryRunStatus: str + CreationDate: str + UpdateDate: str + ValidationFailures: Optional[List[ValidationFailureTypeDef]] = None + +class InstanceLimitsTypeDef(BaseModel): + InstanceCountLimits: Optional[InstanceCountLimitsTypeDef] = None + +class ListInstanceTypeDetailsResponseTypeDef(BaseModel): + InstanceTypeDetails: List[InstanceTypeDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListScheduledActionsResponseTypeDef(BaseModel): + ScheduledActions: List[ScheduledActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateScheduledActionResponseTypeDef(BaseModel): + ScheduledAction: ScheduledActionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OffPeakWindowTypeDef(BaseModel): + WindowStartTime: Optional[WindowStartTimeTypeDef] = None + +class PackageDetailsTypeDef(BaseModel): + PackageID: Optional[str] = None + PackageName: Optional[str] = None + PackageType: Optional[PackageTypeType] = None + PackageDescription: Optional[str] = None + PackageStatus: Optional[PackageStatusType] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + AvailablePackageVersion: Optional[str] = None + ErrorDetails: Optional[ErrorDetailsTypeDef] = None + EngineVersion: Optional[str] = None + AvailablePluginProperties: Optional[PluginPropertiesTypeDef] = None + +class PackageVersionHistoryTypeDef(BaseModel): + PackageVersion: Optional[str] = None + CommitMessage: Optional[str] = None + CreatedAt: Optional[datetime] = None + PluginProperties: Optional[PluginPropertiesTypeDef] = None + +class ReservedInstanceOfferingTypeDef(BaseModel): + ReservedInstanceOfferingId: Optional[str] = None + InstanceType: Optional[OpenSearchPartitionInstanceTypeType] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + PaymentOption: Optional[ReservedInstancePaymentOptionType] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class ReservedInstanceTypeDef(BaseModel): + ReservationName: Optional[str] = None + ReservedInstanceId: Optional[str] = None + BillingSubscriptionId: Optional[int] = None + ReservedInstanceOfferingId: Optional[str] = None + InstanceType: Optional[OpenSearchPartitionInstanceTypeType] = None + StartTime: Optional[datetime] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + InstanceCount: Optional[int] = None + State: Optional[str] = None + PaymentOption: Optional[ReservedInstancePaymentOptionType] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class SAMLOptionsInputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Idp: Optional[SAMLIdpTypeDef] = None + MasterUserName: Optional[str] = None + MasterBackendRole: Optional[str] = None + SubjectKey: Optional[str] = None + RolesKey: Optional[str] = None + SessionTimeoutMinutes: Optional[int] = None + +class SAMLOptionsOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Idp: Optional[SAMLIdpTypeDef] = None + SubjectKey: Optional[str] = None + RolesKey: Optional[str] = None + SessionTimeoutMinutes: Optional[int] = None + +class StorageTypeTypeDef(BaseModel): + StorageTypeName: Optional[str] = None + StorageSubTypeName: Optional[str] = None + StorageTypeLimits: Optional[List[StorageTypeLimitTypeDef]] = None + +class UpgradeHistoryTypeDef(BaseModel): + UpgradeName: Optional[str] = None + StartTimestamp: Optional[datetime] = None + UpgradeStatus: Optional[UpgradeStatusType] = None + StepsList: Optional[List[UpgradeStepItemTypeDef]] = None + +class AIMLOptionsStatusTypeDef(BaseModel): + Options: Optional[AIMLOptionsOutputTypeDef] = None + Status: Optional[OptionStatusTypeDef] = None + +class InboundConnectionTypeDef(BaseModel): + LocalDomainInfo: Optional[DomainInformationContainerTypeDef] = None + RemoteDomainInfo: Optional[DomainInformationContainerTypeDef] = None + ConnectionId: Optional[str] = None + ConnectionStatus: Optional[InboundConnectionStatusTypeDef] = None + ConnectionMode: Optional[ConnectionModeType] = None + +class AutoTuneTypeDef(BaseModel): + AutoTuneType: Optional[Literal["SCHEDULED_ACTION"]] = None + AutoTuneDetails: Optional[AutoTuneDetailsTypeDef] = None + +class AutoTuneOptionsExtraOutputTypeDef(BaseModel): + DesiredState: Optional[AutoTuneDesiredStateType] = None + RollbackOnDisable: Optional[RollbackOnDisableType] = None + MaintenanceSchedules: Optional[List[AutoTuneMaintenanceScheduleOutputTypeDef]] = None + UseOffPeakWindow: Optional[bool] = None + +class AutoTuneOptionsInputTypeDef(BaseModel): + DesiredState: Optional[AutoTuneDesiredStateType] = None + MaintenanceSchedules: Optional[Sequence[AutoTuneMaintenanceScheduleTypeDef]] = None + UseOffPeakWindow: Optional[bool] = None + +class AutoTuneOptionsTypeDef(BaseModel): + DesiredState: Optional[AutoTuneDesiredStateType] = None + RollbackOnDisable: Optional[RollbackOnDisableType] = None + MaintenanceSchedules: Optional[Sequence[AutoTuneMaintenanceScheduleTypeDef]] = None + UseOffPeakWindow: Optional[bool] = None + +class DescribeDomainHealthResponseTypeDef(BaseModel): + DomainState: DomainStateType + AvailabilityZoneCount: str + ActiveAvailabilityZoneCount: str + StandByAvailabilityZoneCount: str + DataNodeCount: str + DedicatedMaster: bool + MasterEligibleNodeCount: str + WarmNodeCount: str + MasterNode: MasterNodeStatusType + ClusterHealth: DomainHealthType + TotalShards: str + TotalUnAssignedShards: str + EnvironmentInformation: List[EnvironmentInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainChangeProgressResponseTypeDef(BaseModel): + ChangeProgressStatus: ChangeProgressStatusDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterConfigStatusTypeDef(BaseModel): + Options: ClusterConfigTypeDef + Status: OptionStatusTypeDef + +class CreateOutboundConnectionRequestRequestTypeDef(BaseModel): + LocalDomainInfo: DomainInformationContainerTypeDef + RemoteDomainInfo: DomainInformationContainerTypeDef + ConnectionAlias: str + ConnectionMode: Optional[ConnectionModeType] = None + ConnectionProperties: Optional[ConnectionPropertiesTypeDef] = None + +class CreateOutboundConnectionResponseTypeDef(BaseModel): + LocalDomainInfo: DomainInformationContainerTypeDef + RemoteDomainInfo: DomainInformationContainerTypeDef + ConnectionAlias: str + ConnectionStatus: OutboundConnectionStatusTypeDef + ConnectionId: str + ConnectionMode: ConnectionModeType + ConnectionProperties: ConnectionPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OutboundConnectionTypeDef(BaseModel): + LocalDomainInfo: Optional[DomainInformationContainerTypeDef] = None + RemoteDomainInfo: Optional[DomainInformationContainerTypeDef] = None + ConnectionId: Optional[str] = None + ConnectionAlias: Optional[str] = None + ConnectionStatus: Optional[OutboundConnectionStatusTypeDef] = None + ConnectionMode: Optional[ConnectionModeType] = None + ConnectionProperties: Optional[ConnectionPropertiesTypeDef] = None + +class AddDataSourceRequestRequestTypeDef(BaseModel): + DomainName: str + Name: str + DataSourceType: DataSourceTypeTypeDef + Description: Optional[str] = None + +class DataSourceDetailsTypeDef(BaseModel): + DataSourceType: Optional[DataSourceTypeTypeDef] = None + Name: Optional[str] = None + Description: Optional[str] = None + Status: Optional[DataSourceStatusType] = None + +class GetDataSourceResponseTypeDef(BaseModel): + DataSourceType: DataSourceTypeTypeDef + Name: str + Description: str + Status: DataSourceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceRequestRequestTypeDef(BaseModel): + DomainName: str + Name: str + DataSourceType: DataSourceTypeTypeDef + Description: Optional[str] = None + Status: Optional[DataSourceStatusType] = None + +class AssociatePackageResponseTypeDef(BaseModel): + DomainPackageDetails: DomainPackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DissociatePackageResponseTypeDef(BaseModel): + DomainPackageDetails: DomainPackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsForPackageResponseTypeDef(BaseModel): + DomainPackageDetailsList: List[DomainPackageDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPackagesForDomainResponseTypeDef(BaseModel): + DomainPackageDetailsList: List[DomainPackageDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateVpcEndpointResponseTypeDef(BaseModel): + VpcEndpoint: VpcEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVpcEndpointsResponseTypeDef(BaseModel): + VpcEndpoints: List[VpcEndpointTypeDef] + VpcEndpointErrors: List[VpcEndpointErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVpcEndpointResponseTypeDef(BaseModel): + VpcEndpoint: VpcEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OffPeakWindowOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + OffPeakWindow: Optional[OffPeakWindowTypeDef] = None + +class CreatePackageResponseTypeDef(BaseModel): + PackageDetails: PackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePackageResponseTypeDef(BaseModel): + PackageDetails: PackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackagesResponseTypeDef(BaseModel): + PackageDetailsList: List[PackageDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdatePackageResponseTypeDef(BaseModel): + PackageDetails: PackageDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPackageVersionHistoryResponseTypeDef(BaseModel): + PackageID: str + PackageVersionHistoryList: List[PackageVersionHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReservedInstanceOfferingsResponseTypeDef(BaseModel): + ReservedInstanceOfferings: List[ReservedInstanceOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReservedInstancesResponseTypeDef(BaseModel): + ReservedInstances: List[ReservedInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AdvancedSecurityOptionsInputTypeDef(BaseModel): + Enabled: Optional[bool] = None + InternalUserDatabaseEnabled: Optional[bool] = None + MasterUserOptions: Optional[MasterUserOptionsTypeDef] = None + SAMLOptions: Optional[SAMLOptionsInputTypeDef] = None + JWTOptions: Optional[JWTOptionsInputTypeDef] = None + AnonymousAuthEnabled: Optional[bool] = None + +class AdvancedSecurityOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + InternalUserDatabaseEnabled: Optional[bool] = None + SAMLOptions: Optional[SAMLOptionsOutputTypeDef] = None + JWTOptions: Optional[JWTOptionsOutputTypeDef] = None + AnonymousAuthDisableDate: Optional[datetime] = None + AnonymousAuthEnabled: Optional[bool] = None + +class LimitsTypeDef(BaseModel): + StorageTypes: Optional[List[StorageTypeTypeDef]] = None + InstanceLimits: Optional[InstanceLimitsTypeDef] = None + AdditionalLimits: Optional[List[AdditionalLimitTypeDef]] = None + +class GetUpgradeHistoryResponseTypeDef(BaseModel): + UpgradeHistories: List[UpgradeHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AcceptInboundConnectionResponseTypeDef(BaseModel): + Connection: InboundConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInboundConnectionResponseTypeDef(BaseModel): + Connection: InboundConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInboundConnectionsResponseTypeDef(BaseModel): + Connections: List[InboundConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RejectInboundConnectionResponseTypeDef(BaseModel): + Connection: InboundConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainAutoTunesResponseTypeDef(BaseModel): + AutoTunes: List[AutoTuneTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AutoTuneOptionsStatusTypeDef(BaseModel): + Options: Optional[AutoTuneOptionsExtraOutputTypeDef] = None + Status: Optional[AutoTuneStatusTypeDef] = None + +class DeleteOutboundConnectionResponseTypeDef(BaseModel): + Connection: OutboundConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOutboundConnectionsResponseTypeDef(BaseModel): + Connections: List[OutboundConnectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDataSourcesResponseTypeDef(BaseModel): + DataSources: List[DataSourceDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OffPeakWindowOptionsStatusTypeDef(BaseModel): + Options: Optional[OffPeakWindowOptionsTypeDef] = None + Status: Optional[OptionStatusTypeDef] = None + +class CreateDomainRequestRequestTypeDef(BaseModel): + DomainName: str + EngineVersion: Optional[str] = None + ClusterConfig: Optional[ClusterConfigTypeDef] = None + EBSOptions: Optional[EBSOptionsTypeDef] = None + AccessPolicies: Optional[str] = None + IPAddressType: Optional[IPAddressTypeType] = None + SnapshotOptions: Optional[SnapshotOptionsTypeDef] = None + VPCOptions: Optional[VPCOptionsTypeDef] = None + CognitoOptions: Optional[CognitoOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsTypeDef] = None + AdvancedOptions: Optional[Mapping[str, str]] = None + LogPublishingOptions: Optional[Mapping[LogTypeType, LogPublishingOptionTypeDef]] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsInputTypeDef] = None + TagList: Optional[Sequence[TagTypeDef]] = None + AutoTuneOptions: Optional[AutoTuneOptionsInputTypeDef] = None + OffPeakWindowOptions: Optional[OffPeakWindowOptionsTypeDef] = None + SoftwareUpdateOptions: Optional[SoftwareUpdateOptionsTypeDef] = None + AIMLOptions: Optional[AIMLOptionsInputTypeDef] = None + +class UpdateDomainConfigRequestRequestTypeDef(BaseModel): + DomainName: str + ClusterConfig: Optional[ClusterConfigTypeDef] = None + EBSOptions: Optional[EBSOptionsTypeDef] = None + SnapshotOptions: Optional[SnapshotOptionsTypeDef] = None + VPCOptions: Optional[VPCOptionsTypeDef] = None + CognitoOptions: Optional[CognitoOptionsTypeDef] = None + AdvancedOptions: Optional[Mapping[str, str]] = None + AccessPolicies: Optional[str] = None + IPAddressType: Optional[IPAddressTypeType] = None + LogPublishingOptions: Optional[Mapping[LogTypeType, LogPublishingOptionTypeDef]] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsInputTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsTypeDef] = None + DryRun: Optional[bool] = None + DryRunMode: Optional[DryRunModeType] = None + OffPeakWindowOptions: Optional[OffPeakWindowOptionsTypeDef] = None + SoftwareUpdateOptions: Optional[SoftwareUpdateOptionsTypeDef] = None + AIMLOptions: Optional[AIMLOptionsInputTypeDef] = None + +class AdvancedSecurityOptionsStatusTypeDef(BaseModel): + Options: AdvancedSecurityOptionsTypeDef + Status: OptionStatusTypeDef + +class DomainStatusTypeDef(BaseModel): + DomainId: str + DomainName: str + ARN: str + ClusterConfig: ClusterConfigTypeDef + Created: Optional[bool] = None + Deleted: Optional[bool] = None + Endpoint: Optional[str] = None + EndpointV2: Optional[str] = None + Endpoints: Optional[Dict[str, str]] = None + DomainEndpointV2HostedZoneId: Optional[str] = None + Processing: Optional[bool] = None + UpgradeProcessing: Optional[bool] = None + EngineVersion: Optional[str] = None + EBSOptions: Optional[EBSOptionsTypeDef] = None + AccessPolicies: Optional[str] = None + IPAddressType: Optional[IPAddressTypeType] = None + SnapshotOptions: Optional[SnapshotOptionsTypeDef] = None + VPCOptions: Optional[VPCDerivedInfoTypeDef] = None + CognitoOptions: Optional[CognitoOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsTypeDef] = None + AdvancedOptions: Optional[Dict[str, str]] = None + LogPublishingOptions: Optional[Dict[LogTypeType, LogPublishingOptionTypeDef]] = None + ServiceSoftwareOptions: Optional[ServiceSoftwareOptionsTypeDef] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsOutputTypeDef] = None + ChangeProgressDetails: Optional[ChangeProgressDetailsTypeDef] = None + OffPeakWindowOptions: Optional[OffPeakWindowOptionsTypeDef] = None + SoftwareUpdateOptions: Optional[SoftwareUpdateOptionsTypeDef] = None + DomainProcessingStatus: Optional[DomainProcessingStatusTypeType] = None + ModifyingProperties: Optional[List[ModifyingPropertiesTypeDef]] = None + AIMLOptions: Optional[AIMLOptionsOutputTypeDef] = None + +class DescribeInstanceTypeLimitsResponseTypeDef(BaseModel): + LimitsByRole: Dict[str, LimitsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DomainConfigTypeDef(BaseModel): + EngineVersion: Optional[VersionStatusTypeDef] = None + ClusterConfig: Optional[ClusterConfigStatusTypeDef] = None + EBSOptions: Optional[EBSOptionsStatusTypeDef] = None + AccessPolicies: Optional[AccessPoliciesStatusTypeDef] = None + IPAddressType: Optional[IPAddressTypeStatusTypeDef] = None + SnapshotOptions: Optional[SnapshotOptionsStatusTypeDef] = None + VPCOptions: Optional[VPCDerivedInfoStatusTypeDef] = None + CognitoOptions: Optional[CognitoOptionsStatusTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsStatusTypeDef] = None + NodeToNodeEncryptionOptions: Optional[NodeToNodeEncryptionOptionsStatusTypeDef] = None + AdvancedOptions: Optional[AdvancedOptionsStatusTypeDef] = None + LogPublishingOptions: Optional[LogPublishingOptionsStatusTypeDef] = None + DomainEndpointOptions: Optional[DomainEndpointOptionsStatusTypeDef] = None + AdvancedSecurityOptions: Optional[AdvancedSecurityOptionsStatusTypeDef] = None + AutoTuneOptions: Optional[AutoTuneOptionsStatusTypeDef] = None + ChangeProgressDetails: Optional[ChangeProgressDetailsTypeDef] = None + OffPeakWindowOptions: Optional[OffPeakWindowOptionsStatusTypeDef] = None + SoftwareUpdateOptions: Optional[SoftwareUpdateOptionsStatusTypeDef] = None + ModifyingProperties: Optional[List[ModifyingPropertiesTypeDef]] = None + AIMLOptions: Optional[AIMLOptionsStatusTypeDef] = None + +class CreateDomainResponseTypeDef(BaseModel): + DomainStatus: DomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainResponseTypeDef(BaseModel): + DomainStatus: DomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainResponseTypeDef(BaseModel): + DomainStatus: DomainStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainsResponseTypeDef(BaseModel): + DomainStatusList: List[DomainStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDryRunProgressResponseTypeDef(BaseModel): + DryRunProgressStatus: DryRunProgressStatusTypeDef + DryRunConfig: DomainStatusTypeDef + DryRunResults: DryRunResultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainConfigResponseTypeDef(BaseModel): + DomainConfig: DomainConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainConfigResponseTypeDef(BaseModel): + DomainConfig: DomainConfigTypeDef + DryRunResults: DryRunResultsTypeDef + DryRunProgressStatus: DryRunProgressStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/opensearch_constants.py b/aws_resource_validator/pydantic_models/opensearch_constants.py new file mode 100644 index 00000000..fc1c88ff --- /dev/null +++ b/aws_resource_validator/pydantic_models/opensearch_constants.py @@ -0,0 +1,635 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionSeverityType = Literal["HIGH", "LOW", "MEDIUM"] +ActionStatusType = Literal["COMPLETED", "ELIGIBLE", "FAILED", "IN_PROGRESS", "NOT_ELIGIBLE", "PENDING_UPDATE"] +ActionTypeType = Literal["JVM_HEAP_SIZE_TUNING", "JVM_YOUNG_GEN_TUNING", "SERVICE_SOFTWARE_UPDATE"] +AutoTuneDesiredStateType = Literal["DISABLED", "ENABLED"] +AutoTuneStateType = Literal["DISABLED", + "DISABLED_AND_ROLLBACK_COMPLETE", + "DISABLED_AND_ROLLBACK_ERROR", + "DISABLED_AND_ROLLBACK_IN_PROGRESS", + "DISABLED_AND_ROLLBACK_SCHEDULED", + "DISABLE_IN_PROGRESS", + "ENABLED", + "ENABLE_IN_PROGRESS", + "ERROR",] +AutoTuneTypeType = Literal["SCHEDULED_ACTION"] +ConfigChangeStatusType = Literal["ApplyingChanges", + "Cancelled", + "Completed", + "Initializing", + "Pending", + "PendingUserInput", + "Validating", + "ValidationFailed",] +ConnectionModeType = Literal["DIRECT", "VPC_ENDPOINT"] +DataSourceStatusType = Literal["ACTIVE", "DISABLED"] +DeploymentStatusType = Literal["COMPLETED", "ELIGIBLE", "IN_PROGRESS", "NOT_ELIGIBLE", "PENDING_UPDATE"] +DescribePackagesFilterNameType = Literal["EngineVersion", "PackageID", "PackageName", "PackageStatus", "PackageType"] +DomainHealthType = Literal["Green", "NotAvailable", "Red", "Yellow"] +DomainPackageStatusType = Literal["ACTIVE", "ASSOCIATING", "ASSOCIATION_FAILED", "DISSOCIATING", "DISSOCIATION_FAILED"] +DomainProcessingStatusTypeType = Literal["Active", + "Creating", + "Deleting", + "Isolated", + "Modifying", + "UpdatingServiceSoftware", + "UpgradingEngineVersion",] +DomainStateType = Literal["Active", "NotAvailable", "Processing"] +DryRunModeType = Literal["Basic", "Verbose"] +EngineTypeType = Literal["Elasticsearch", "OpenSearch"] +IPAddressTypeType = Literal["dualstack", "ipv4"] +InboundConnectionStatusCodeType = Literal["ACTIVE", + "APPROVED", + "DELETED", + "DELETING", + "PENDING_ACCEPTANCE", + "PROVISIONING", + "REJECTED", + "REJECTING",] +InitiatedByType = Literal["CUSTOMER", "SERVICE"] +LogTypeType = Literal["AUDIT_LOGS", "ES_APPLICATION_LOGS", "INDEX_SLOW_LOGS", "SEARCH_SLOW_LOGS"] +MaintenanceStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "PENDING", "TIMED_OUT"] +MaintenanceTypeType = Literal["REBOOT_NODE", "RESTART_DASHBOARD", "RESTART_SEARCH_PROCESS"] +MasterNodeStatusType = Literal["Available", "UnAvailable"] +NaturalLanguageQueryGenerationCurrentStateType = Literal["DISABLE_COMPLETE", + "DISABLE_FAILED", + "DISABLE_IN_PROGRESS", + "ENABLE_COMPLETE", + "ENABLE_FAILED", + "ENABLE_IN_PROGRESS", + "NOT_ENABLED",] +NaturalLanguageQueryGenerationDesiredStateType = Literal["DISABLED", "ENABLED"] +NodeStatusType = Literal["Active", "NotAvailable", "StandBy"] +NodeTypeType = Literal["Data", "Master", "Ultrawarm"] +OpenSearchPartitionInstanceTypeType = Literal["c4.2xlarge.search", + "c4.4xlarge.search", + "c4.8xlarge.search", + "c4.large.search", + "c4.xlarge.search", + "c5.18xlarge.search", + "c5.2xlarge.search", + "c5.4xlarge.search", + "c5.9xlarge.search", + "c5.large.search", + "c5.xlarge.search", + "c6g.12xlarge.search", + "c6g.2xlarge.search", + "c6g.4xlarge.search", + "c6g.8xlarge.search", + "c6g.large.search", + "c6g.xlarge.search", + "d2.2xlarge.search", + "d2.4xlarge.search", + "d2.8xlarge.search", + "d2.xlarge.search", + "i2.2xlarge.search", + "i2.xlarge.search", + "i3.16xlarge.search", + "i3.2xlarge.search", + "i3.4xlarge.search", + "i3.8xlarge.search", + "i3.large.search", + "i3.xlarge.search", + "m3.2xlarge.search", + "m3.large.search", + "m3.medium.search", + "m3.xlarge.search", + "m4.10xlarge.search", + "m4.2xlarge.search", + "m4.4xlarge.search", + "m4.large.search", + "m4.xlarge.search", + "m5.12xlarge.search", + "m5.24xlarge.search", + "m5.2xlarge.search", + "m5.4xlarge.search", + "m5.large.search", + "m5.xlarge.search", + "m6g.12xlarge.search", + "m6g.2xlarge.search", + "m6g.4xlarge.search", + "m6g.8xlarge.search", + "m6g.large.search", + "m6g.xlarge.search", + "or1.12xlarge.search", + "or1.16xlarge.search", + "or1.2xlarge.search", + "or1.4xlarge.search", + "or1.8xlarge.search", + "or1.large.search", + "or1.medium.search", + "or1.xlarge.search", + "r3.2xlarge.search", + "r3.4xlarge.search", + "r3.8xlarge.search", + "r3.large.search", + "r3.xlarge.search", + "r4.16xlarge.search", + "r4.2xlarge.search", + "r4.4xlarge.search", + "r4.8xlarge.search", + "r4.large.search", + "r4.xlarge.search", + "r5.12xlarge.search", + "r5.24xlarge.search", + "r5.2xlarge.search", + "r5.4xlarge.search", + "r5.large.search", + "r5.xlarge.search", + "r6g.12xlarge.search", + "r6g.2xlarge.search", + "r6g.4xlarge.search", + "r6g.8xlarge.search", + "r6g.large.search", + "r6g.xlarge.search", + "r6gd.12xlarge.search", + "r6gd.16xlarge.search", + "r6gd.2xlarge.search", + "r6gd.4xlarge.search", + "r6gd.8xlarge.search", + "r6gd.large.search", + "r6gd.xlarge.search", + "t2.medium.search", + "t2.micro.search", + "t2.small.search", + "t3.2xlarge.search", + "t3.large.search", + "t3.medium.search", + "t3.micro.search", + "t3.nano.search", + "t3.small.search", + "t3.xlarge.search", + "t4g.medium.search", + "t4g.small.search", + "ultrawarm1.large.search", + "ultrawarm1.medium.search", + "ultrawarm1.xlarge.search",] +OpenSearchWarmPartitionInstanceTypeType = Literal["ultrawarm1.large.search", "ultrawarm1.medium.search", "ultrawarm1.xlarge.search"] +OptionStateType = Literal["Active", "Processing", "RequiresIndexDocuments"] +OutboundConnectionStatusCodeType = Literal["ACTIVE", + "APPROVED", + "DELETED", + "DELETING", + "PENDING_ACCEPTANCE", + "PROVISIONING", + "REJECTED", + "REJECTING", + "VALIDATING", + "VALIDATION_FAILED",] +OverallChangeStatusType = Literal["COMPLETED", "FAILED", "PENDING", "PROCESSING"] +PackageStatusType = Literal["AVAILABLE", + "COPYING", + "COPY_FAILED", + "DELETED", + "DELETE_FAILED", + "DELETING", + "VALIDATING", + "VALIDATION_FAILED",] +PackageTypeType = Literal["TXT-DICTIONARY", "ZIP-PLUGIN"] +PrincipalTypeType = Literal["AWS_ACCOUNT", "AWS_SERVICE"] +PropertyValueTypeType = Literal["PLAIN_TEXT", "STRINGIFIED_JSON"] +ReservedInstancePaymentOptionType = Literal["ALL_UPFRONT", "NO_UPFRONT", "PARTIAL_UPFRONT"] +RollbackOnDisableType = Literal["DEFAULT_ROLLBACK", "NO_ROLLBACK"] +ScheduleAtType = Literal["NOW", "OFF_PEAK_WINDOW", "TIMESTAMP"] +ScheduledAutoTuneActionTypeType = Literal["JVM_HEAP_SIZE_TUNING", "JVM_YOUNG_GEN_TUNING"] +ScheduledAutoTuneSeverityTypeType = Literal["HIGH", "LOW", "MEDIUM"] +ScheduledByType = Literal["CUSTOMER", "SYSTEM"] +SkipUnavailableStatusType = Literal["DISABLED", "ENABLED"] +TLSSecurityPolicyType = Literal["Policy-Min-TLS-1-0-2019-07", "Policy-Min-TLS-1-2-2019-07", "Policy-Min-TLS-1-2-PFS-2023-10"] +TimeUnitType = Literal["HOURS"] +UpgradeStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED", "SUCCEEDED_WITH_ISSUES"] +UpgradeStepType = Literal["PRE_UPGRADE_CHECK", "SNAPSHOT", "UPGRADE"] +VolumeTypeType = Literal["gp2", "gp3", "io1", "standard"] +VpcEndpointErrorCodeType = Literal["ENDPOINT_NOT_FOUND", "SERVER_ERROR"] +VpcEndpointStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +ZoneStatusType = Literal["Active", "NotAvailable", "StandBy"] +OpenSearchServiceServiceName = Literal["opensearch"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AutoTuneOptionsUnionTypeDef = Union['AutoTuneOptionsTypeDef', 'AutoTuneOptionsExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/opensearchserverless_classes.py b/aws_resource_validator/pydantic_models/opensearchserverless_classes.py new file mode 100644 index 00000000..df5abf09 --- /dev/null +++ b/aws_resource_validator/pydantic_models/opensearchserverless_classes.py @@ -0,0 +1,566 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.opensearchserverless_constants import * + +class AccessPolicyDetailTypeDef(BaseModel): + createdDate: Optional[int] = None + description: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + policy: Optional[Dict[str, Any]] = None + policyVersion: Optional[str] = None + type: Optional[Literal["data"]] = None + +class AccessPolicyStatsTypeDef(BaseModel): + DataPolicyCount: Optional[int] = None + +class AccessPolicySummaryTypeDef(BaseModel): + createdDate: Optional[int] = None + description: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + policyVersion: Optional[str] = None + type: Optional[Literal["data"]] = None + +class CapacityLimitsTypeDef(BaseModel): + maxIndexingCapacityInOCU: Optional[int] = None + maxSearchCapacityInOCU: Optional[int] = None + +class BatchGetCollectionRequestRequestTypeDef(BaseModel): + ids: Optional[Sequence[str]] = None + names: Optional[Sequence[str]] = None + +class CollectionDetailTypeDef(BaseModel): + arn: Optional[str] = None + collectionEndpoint: Optional[str] = None + createdDate: Optional[int] = None + dashboardEndpoint: Optional[str] = None + description: Optional[str] = None + id: Optional[str] = None + kmsKeyArn: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + standbyReplicas: Optional[StandbyReplicasType] = None + status: Optional[CollectionStatusType] = None + type: Optional[CollectionTypeType] = None + +class CollectionErrorDetailTypeDef(BaseModel): + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class LifecyclePolicyResourceIdentifierTypeDef(BaseModel): + resource: str + type: Literal["retention"] + +class EffectiveLifecyclePolicyDetailTypeDef(BaseModel): + noMinRetentionPeriod: Optional[bool] = None + policyName: Optional[str] = None + resource: Optional[str] = None + resourceType: Optional[Literal["index"]] = None + retentionPeriod: Optional[str] = None + type: Optional[Literal["retention"]] = None + +class EffectiveLifecyclePolicyErrorDetailTypeDef(BaseModel): + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + resource: Optional[str] = None + type: Optional[Literal["retention"]] = None + +class LifecyclePolicyIdentifierTypeDef(BaseModel): + name: str + type: Literal["retention"] + +class LifecyclePolicyDetailTypeDef(BaseModel): + createdDate: Optional[int] = None + description: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + policy: Optional[Dict[str, Any]] = None + policyVersion: Optional[str] = None + type: Optional[Literal["retention"]] = None + +class LifecyclePolicyErrorDetailTypeDef(BaseModel): + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + name: Optional[str] = None + type: Optional[Literal["retention"]] = None + +class BatchGetVpcEndpointRequestRequestTypeDef(BaseModel): + ids: Sequence[str] + +class VpcEndpointDetailTypeDef(BaseModel): + createdDate: Optional[int] = None + id: Optional[str] = None + name: Optional[str] = None + securityGroupIds: Optional[List[str]] = None + status: Optional[VpcEndpointStatusType] = None + subnetIds: Optional[List[str]] = None + vpcId: Optional[str] = None + +class VpcEndpointErrorDetailTypeDef(BaseModel): + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + id: Optional[str] = None + +class CollectionFiltersTypeDef(BaseModel): + name: Optional[str] = None + status: Optional[CollectionStatusType] = None + +class CollectionSummaryTypeDef(BaseModel): + arn: Optional[str] = None + id: Optional[str] = None + name: Optional[str] = None + status: Optional[CollectionStatusType] = None + +class CreateAccessPolicyRequestRequestTypeDef(BaseModel): + name: str + policy: str + type: Literal["data"] + clientToken: Optional[str] = None + description: Optional[str] = None + +class CreateCollectionDetailTypeDef(BaseModel): + arn: Optional[str] = None + createdDate: Optional[int] = None + description: Optional[str] = None + id: Optional[str] = None + kmsKeyArn: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + standbyReplicas: Optional[StandbyReplicasType] = None + status: Optional[CollectionStatusType] = None + type: Optional[CollectionTypeType] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class CreateLifecyclePolicyRequestRequestTypeDef(BaseModel): + name: str + policy: str + type: Literal["retention"] + clientToken: Optional[str] = None + description: Optional[str] = None + +class SamlConfigOptionsTypeDef(BaseModel): + metadata: str + groupAttribute: Optional[str] = None + sessionTimeout: Optional[int] = None + userAttribute: Optional[str] = None + +class CreateSecurityPolicyRequestRequestTypeDef(BaseModel): + name: str + policy: str + type: SecurityPolicyTypeType + clientToken: Optional[str] = None + description: Optional[str] = None + +class SecurityPolicyDetailTypeDef(BaseModel): + createdDate: Optional[int] = None + description: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + policy: Optional[Dict[str, Any]] = None + policyVersion: Optional[str] = None + type: Optional[SecurityPolicyTypeType] = None + +class CreateVpcEndpointDetailTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + status: Optional[VpcEndpointStatusType] = None + +class CreateVpcEndpointRequestRequestTypeDef(BaseModel): + name: str + subnetIds: Sequence[str] + vpcId: str + clientToken: Optional[str] = None + securityGroupIds: Optional[Sequence[str]] = None + +class DeleteAccessPolicyRequestRequestTypeDef(BaseModel): + name: str + type: Literal["data"] + clientToken: Optional[str] = None + +class DeleteCollectionDetailTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + status: Optional[CollectionStatusType] = None + +class DeleteCollectionRequestRequestTypeDef(BaseModel): + id: str + clientToken: Optional[str] = None + +class DeleteLifecyclePolicyRequestRequestTypeDef(BaseModel): + name: str + type: Literal["retention"] + clientToken: Optional[str] = None + +class DeleteSecurityConfigRequestRequestTypeDef(BaseModel): + id: str + clientToken: Optional[str] = None + +class DeleteSecurityPolicyRequestRequestTypeDef(BaseModel): + name: str + type: SecurityPolicyTypeType + clientToken: Optional[str] = None + +class DeleteVpcEndpointDetailTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + status: Optional[VpcEndpointStatusType] = None + +class DeleteVpcEndpointRequestRequestTypeDef(BaseModel): + id: str + clientToken: Optional[str] = None + +class GetAccessPolicyRequestRequestTypeDef(BaseModel): + name: str + type: Literal["data"] + +class LifecyclePolicyStatsTypeDef(BaseModel): + RetentionPolicyCount: Optional[int] = None + +class SecurityConfigStatsTypeDef(BaseModel): + SamlConfigCount: Optional[int] = None + +class SecurityPolicyStatsTypeDef(BaseModel): + EncryptionPolicyCount: Optional[int] = None + NetworkPolicyCount: Optional[int] = None + +class GetSecurityConfigRequestRequestTypeDef(BaseModel): + id: str + +class GetSecurityPolicyRequestRequestTypeDef(BaseModel): + name: str + type: SecurityPolicyTypeType + +class LifecyclePolicySummaryTypeDef(BaseModel): + createdDate: Optional[int] = None + description: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + policyVersion: Optional[str] = None + type: Optional[Literal["retention"]] = None + +class ListAccessPoliciesRequestRequestTypeDef(BaseModel): + type: Literal["data"] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resource: Optional[Sequence[str]] = None + +class ListLifecyclePoliciesRequestRequestTypeDef(BaseModel): + type: Literal["retention"] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resources: Optional[Sequence[str]] = None + +class ListSecurityConfigsRequestRequestTypeDef(BaseModel): + type: Literal["saml"] + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SecurityConfigSummaryTypeDef(BaseModel): + configVersion: Optional[str] = None + createdDate: Optional[int] = None + description: Optional[str] = None + id: Optional[str] = None + lastModifiedDate: Optional[int] = None + type: Optional[Literal["saml"]] = None + +class ListSecurityPoliciesRequestRequestTypeDef(BaseModel): + type: SecurityPolicyTypeType + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resource: Optional[Sequence[str]] = None + +class SecurityPolicySummaryTypeDef(BaseModel): + createdDate: Optional[int] = None + description: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + policyVersion: Optional[str] = None + type: Optional[SecurityPolicyTypeType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class VpcEndpointFiltersTypeDef(BaseModel): + status: Optional[VpcEndpointStatusType] = None + +class VpcEndpointSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + status: Optional[VpcEndpointStatusType] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAccessPolicyRequestRequestTypeDef(BaseModel): + name: str + policyVersion: str + type: Literal["data"] + clientToken: Optional[str] = None + description: Optional[str] = None + policy: Optional[str] = None + +class UpdateCollectionDetailTypeDef(BaseModel): + arn: Optional[str] = None + createdDate: Optional[int] = None + description: Optional[str] = None + id: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + status: Optional[CollectionStatusType] = None + type: Optional[CollectionTypeType] = None + +class UpdateCollectionRequestRequestTypeDef(BaseModel): + id: str + clientToken: Optional[str] = None + description: Optional[str] = None + +class UpdateLifecyclePolicyRequestRequestTypeDef(BaseModel): + name: str + policyVersion: str + type: Literal["retention"] + clientToken: Optional[str] = None + description: Optional[str] = None + policy: Optional[str] = None + +class UpdateSecurityPolicyRequestRequestTypeDef(BaseModel): + name: str + policyVersion: str + type: SecurityPolicyTypeType + clientToken: Optional[str] = None + description: Optional[str] = None + policy: Optional[str] = None + +class UpdateVpcEndpointDetailTypeDef(BaseModel): + id: Optional[str] = None + lastModifiedDate: Optional[int] = None + name: Optional[str] = None + securityGroupIds: Optional[List[str]] = None + status: Optional[VpcEndpointStatusType] = None + subnetIds: Optional[List[str]] = None + +class UpdateVpcEndpointRequestRequestTypeDef(BaseModel): + id: str + addSecurityGroupIds: Optional[Sequence[str]] = None + addSubnetIds: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + removeSecurityGroupIds: Optional[Sequence[str]] = None + removeSubnetIds: Optional[Sequence[str]] = None + +class AccountSettingsDetailTypeDef(BaseModel): + capacityLimits: Optional[CapacityLimitsTypeDef] = None + +class UpdateAccountSettingsRequestRequestTypeDef(BaseModel): + capacityLimits: Optional[CapacityLimitsTypeDef] = None + +class BatchGetCollectionResponseTypeDef(BaseModel): + collectionDetails: List[CollectionDetailTypeDef] + collectionErrorDetails: List[CollectionErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPolicyResponseTypeDef(BaseModel): + accessPolicyDetail: AccessPolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessPolicyResponseTypeDef(BaseModel): + accessPolicyDetail: AccessPolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessPoliciesResponseTypeDef(BaseModel): + accessPolicySummaries: List[AccessPolicySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessPolicyResponseTypeDef(BaseModel): + accessPolicyDetail: AccessPolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetEffectiveLifecyclePolicyRequestRequestTypeDef(BaseModel): + resourceIdentifiers: Sequence[LifecyclePolicyResourceIdentifierTypeDef] + +class BatchGetEffectiveLifecyclePolicyResponseTypeDef(BaseModel): + effectiveLifecyclePolicyDetails: List[EffectiveLifecyclePolicyDetailTypeDef] + effectiveLifecyclePolicyErrorDetails: List[EffectiveLifecyclePolicyErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetLifecyclePolicyRequestRequestTypeDef(BaseModel): + identifiers: Sequence[LifecyclePolicyIdentifierTypeDef] + +class CreateLifecyclePolicyResponseTypeDef(BaseModel): + lifecyclePolicyDetail: LifecyclePolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLifecyclePolicyResponseTypeDef(BaseModel): + lifecyclePolicyDetail: LifecyclePolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetLifecyclePolicyResponseTypeDef(BaseModel): + lifecyclePolicyDetails: List[LifecyclePolicyDetailTypeDef] + lifecyclePolicyErrorDetails: List[LifecyclePolicyErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetVpcEndpointResponseTypeDef(BaseModel): + vpcEndpointDetails: List[VpcEndpointDetailTypeDef] + vpcEndpointErrorDetails: List[VpcEndpointErrorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCollectionsRequestRequestTypeDef(BaseModel): + collectionFilters: Optional[CollectionFiltersTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListCollectionsResponseTypeDef(BaseModel): + collectionSummaries: List[CollectionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCollectionResponseTypeDef(BaseModel): + createCollectionDetail: CreateCollectionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCollectionRequestRequestTypeDef(BaseModel): + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + standbyReplicas: Optional[StandbyReplicasType] = None + tags: Optional[Sequence[TagTypeDef]] = None + type: Optional[CollectionTypeType] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateSecurityConfigRequestRequestTypeDef(BaseModel): + name: str + type: Literal["saml"] + clientToken: Optional[str] = None + description: Optional[str] = None + samlOptions: Optional[SamlConfigOptionsTypeDef] = None + +class SecurityConfigDetailTypeDef(BaseModel): + configVersion: Optional[str] = None + createdDate: Optional[int] = None + description: Optional[str] = None + id: Optional[str] = None + lastModifiedDate: Optional[int] = None + samlOptions: Optional[SamlConfigOptionsTypeDef] = None + type: Optional[Literal["saml"]] = None + +class UpdateSecurityConfigRequestRequestTypeDef(BaseModel): + configVersion: str + id: str + clientToken: Optional[str] = None + description: Optional[str] = None + samlOptions: Optional[SamlConfigOptionsTypeDef] = None + +class CreateSecurityPolicyResponseTypeDef(BaseModel): + securityPolicyDetail: SecurityPolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSecurityPolicyResponseTypeDef(BaseModel): + securityPolicyDetail: SecurityPolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityPolicyResponseTypeDef(BaseModel): + securityPolicyDetail: SecurityPolicyDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVpcEndpointResponseTypeDef(BaseModel): + createVpcEndpointDetail: CreateVpcEndpointDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCollectionResponseTypeDef(BaseModel): + deleteCollectionDetail: DeleteCollectionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVpcEndpointResponseTypeDef(BaseModel): + deleteVpcEndpointDetail: DeleteVpcEndpointDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPoliciesStatsResponseTypeDef(BaseModel): + AccessPolicyStats: AccessPolicyStatsTypeDef + LifecyclePolicyStats: LifecyclePolicyStatsTypeDef + SecurityConfigStats: SecurityConfigStatsTypeDef + SecurityPolicyStats: SecurityPolicyStatsTypeDef + TotalPolicyCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListLifecyclePoliciesResponseTypeDef(BaseModel): + lifecyclePolicySummaries: List[LifecyclePolicySummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityConfigsResponseTypeDef(BaseModel): + nextToken: str + securityConfigSummaries: List[SecurityConfigSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityPoliciesResponseTypeDef(BaseModel): + nextToken: str + securityPolicySummaries: List[SecurityPolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVpcEndpointsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + vpcEndpointFilters: Optional[VpcEndpointFiltersTypeDef] = None + +class ListVpcEndpointsResponseTypeDef(BaseModel): + nextToken: str + vpcEndpointSummaries: List[VpcEndpointSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCollectionResponseTypeDef(BaseModel): + updateCollectionDetail: UpdateCollectionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVpcEndpointResponseTypeDef(BaseModel): + UpdateVpcEndpointDetail: UpdateVpcEndpointDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountSettingsResponseTypeDef(BaseModel): + accountSettingsDetail: AccountSettingsDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountSettingsResponseTypeDef(BaseModel): + accountSettingsDetail: AccountSettingsDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSecurityConfigResponseTypeDef(BaseModel): + securityConfigDetail: SecurityConfigDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSecurityConfigResponseTypeDef(BaseModel): + securityConfigDetail: SecurityConfigDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityConfigResponseTypeDef(BaseModel): + securityConfigDetail: SecurityConfigDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/opensearchserverless_constants.py b/aws_resource_validator/pydantic_models/opensearchserverless_constants.py new file mode 100644 index 00000000..dd0105a2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/opensearchserverless_constants.py @@ -0,0 +1,405 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessPolicyTypeType = Literal["data"] +CollectionStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +CollectionTypeType = Literal["SEARCH", "TIMESERIES", "VECTORSEARCH"] +LifecyclePolicyTypeType = Literal["retention"] +ResourceTypeType = Literal["index"] +SecurityConfigTypeType = Literal["saml"] +SecurityPolicyTypeType = Literal["encryption", "network"] +StandbyReplicasType = Literal["DISABLED", "ENABLED"] +VpcEndpointStatusType = Literal["ACTIVE", "DELETING", "FAILED", "PENDING"] +OpenSearchServiceServerlessServiceName = Literal["opensearchserverless"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/opsworks_classes.py b/aws_resource_validator/pydantic_models/opsworks_classes.py new file mode 100644 index 00000000..c420eaaf --- /dev/null +++ b/aws_resource_validator/pydantic_models/opsworks_classes.py @@ -0,0 +1,1186 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.opsworks_constants import * + +class StackConfigurationManagerTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + +class DataSourceTypeDef(BaseModel): + Type: Optional[str] = None + Arn: Optional[str] = None + DatabaseName: Optional[str] = None + +class EnvironmentVariableTypeDef(BaseModel): + Key: str + Value: str + Secure: Optional[bool] = None + +class SourceTypeDef(BaseModel): + Type: Optional[SourceTypeType] = None + Url: Optional[str] = None + Username: Optional[str] = None + Password: Optional[str] = None + SshKey: Optional[str] = None + Revision: Optional[str] = None + +class SslConfigurationTypeDef(BaseModel): + Certificate: str + PrivateKey: str + Chain: Optional[str] = None + +class AssignInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + LayerIds: Sequence[str] + +class AssignVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + InstanceId: Optional[str] = None + +class AssociateElasticIpRequestRequestTypeDef(BaseModel): + ElasticIp: str + InstanceId: Optional[str] = None + +class AttachElasticLoadBalancerRequestRequestTypeDef(BaseModel): + ElasticLoadBalancerName: str + LayerId: str + +class AutoScalingThresholdsOutputTypeDef(BaseModel): + InstanceCount: Optional[int] = None + ThresholdsWaitTime: Optional[int] = None + IgnoreMetricsTime: Optional[int] = None + CpuThreshold: Optional[float] = None + MemoryThreshold: Optional[float] = None + LoadThreshold: Optional[float] = None + Alarms: Optional[List[str]] = None + +class AutoScalingThresholdsTypeDef(BaseModel): + InstanceCount: Optional[int] = None + ThresholdsWaitTime: Optional[int] = None + IgnoreMetricsTime: Optional[int] = None + CpuThreshold: Optional[float] = None + MemoryThreshold: Optional[float] = None + LoadThreshold: Optional[float] = None + Alarms: Optional[Sequence[str]] = None + +class EbsBlockDeviceTypeDef(BaseModel): + SnapshotId: Optional[str] = None + Iops: Optional[int] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[VolumeTypeType] = None + DeleteOnTermination: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ChefConfigurationTypeDef(BaseModel): + ManageBerkshelf: Optional[bool] = None + BerkshelfVersion: Optional[str] = None + +class CloudWatchLogsLogStreamTypeDef(BaseModel): + LogGroupName: Optional[str] = None + DatetimeFormat: Optional[str] = None + TimeZone: Optional[CloudWatchLogsTimeZoneType] = None + File: Optional[str] = None + FileFingerprintLines: Optional[str] = None + MultiLineStartPattern: Optional[str] = None + InitialPosition: Optional[CloudWatchLogsInitialPositionType] = None + Encoding: Optional[CloudWatchLogsEncodingType] = None + BufferDuration: Optional[int] = None + BatchCount: Optional[int] = None + BatchSize: Optional[int] = None + +class CommandTypeDef(BaseModel): + CommandId: Optional[str] = None + InstanceId: Optional[str] = None + DeploymentId: Optional[str] = None + CreatedAt: Optional[str] = None + AcknowledgedAt: Optional[str] = None + CompletedAt: Optional[str] = None + Status: Optional[str] = None + ExitCode: Optional[int] = None + LogUrl: Optional[str] = None + Type: Optional[str] = None + +class DeploymentCommandTypeDef(BaseModel): + Name: DeploymentCommandNameType + Args: Optional[Mapping[str, Sequence[str]]] = None + +class RecipesTypeDef(BaseModel): + Setup: Optional[Sequence[str]] = None + Configure: Optional[Sequence[str]] = None + Deploy: Optional[Sequence[str]] = None + Undeploy: Optional[Sequence[str]] = None + Shutdown: Optional[Sequence[str]] = None + +class VolumeConfigurationTypeDef(BaseModel): + MountPoint: str + NumberOfDisks: int + Size: int + RaidLevel: Optional[int] = None + VolumeType: Optional[str] = None + Iops: Optional[int] = None + Encrypted: Optional[bool] = None + +class CreateUserProfileRequestRequestTypeDef(BaseModel): + IamUserArn: str + SshUsername: Optional[str] = None + SshPublicKey: Optional[str] = None + AllowSelfManagement: Optional[bool] = None + +class DeleteAppRequestRequestTypeDef(BaseModel): + AppId: str + +class DeleteInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + DeleteElasticIp: Optional[bool] = None + DeleteVolumes: Optional[bool] = None + +class DeleteLayerRequestRequestTypeDef(BaseModel): + LayerId: str + +class DeleteStackRequestRequestTypeDef(BaseModel): + StackId: str + +class DeleteUserProfileRequestRequestTypeDef(BaseModel): + IamUserArn: str + +class DeploymentCommandOutputTypeDef(BaseModel): + Name: DeploymentCommandNameType + Args: Optional[Dict[str, List[str]]] = None + +class DeregisterEcsClusterRequestRequestTypeDef(BaseModel): + EcsClusterArn: str + +class DeregisterElasticIpRequestRequestTypeDef(BaseModel): + ElasticIp: str + +class DeregisterInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class DeregisterRdsDbInstanceRequestRequestTypeDef(BaseModel): + RdsDbInstanceArn: str + +class DeregisterVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeAppsRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + AppIds: Optional[Sequence[str]] = None + +class DescribeCommandsRequestRequestTypeDef(BaseModel): + DeploymentId: Optional[str] = None + InstanceId: Optional[str] = None + CommandIds: Optional[Sequence[str]] = None + +class DescribeDeploymentsRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + AppId: Optional[str] = None + DeploymentIds: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeEcsClustersRequestRequestTypeDef(BaseModel): + EcsClusterArns: Optional[Sequence[str]] = None + StackId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class EcsClusterTypeDef(BaseModel): + EcsClusterArn: Optional[str] = None + EcsClusterName: Optional[str] = None + StackId: Optional[str] = None + RegisteredAt: Optional[str] = None + +class DescribeElasticIpsRequestRequestTypeDef(BaseModel): + InstanceId: Optional[str] = None + StackId: Optional[str] = None + Ips: Optional[Sequence[str]] = None + +class ElasticIpTypeDef(BaseModel): + Ip: Optional[str] = None + Name: Optional[str] = None + Domain: Optional[str] = None + Region: Optional[str] = None + InstanceId: Optional[str] = None + +class DescribeElasticLoadBalancersRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + LayerIds: Optional[Sequence[str]] = None + +class ElasticLoadBalancerTypeDef(BaseModel): + ElasticLoadBalancerName: Optional[str] = None + Region: Optional[str] = None + DnsName: Optional[str] = None + StackId: Optional[str] = None + LayerId: Optional[str] = None + VpcId: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + Ec2InstanceIds: Optional[List[str]] = None + +class DescribeInstancesRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + LayerId: Optional[str] = None + InstanceIds: Optional[Sequence[str]] = None + +class DescribeLayersRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + LayerIds: Optional[Sequence[str]] = None + +class DescribeLoadBasedAutoScalingRequestRequestTypeDef(BaseModel): + LayerIds: Sequence[str] + +class SelfUserProfileTypeDef(BaseModel): + IamUserArn: Optional[str] = None + Name: Optional[str] = None + SshUsername: Optional[str] = None + SshPublicKey: Optional[str] = None + +class DescribePermissionsRequestRequestTypeDef(BaseModel): + IamUserArn: Optional[str] = None + StackId: Optional[str] = None + +class PermissionTypeDef(BaseModel): + StackId: Optional[str] = None + IamUserArn: Optional[str] = None + AllowSsh: Optional[bool] = None + AllowSudo: Optional[bool] = None + Level: Optional[str] = None + +class DescribeRaidArraysRequestRequestTypeDef(BaseModel): + InstanceId: Optional[str] = None + StackId: Optional[str] = None + RaidArrayIds: Optional[Sequence[str]] = None + +class RaidArrayTypeDef(BaseModel): + RaidArrayId: Optional[str] = None + InstanceId: Optional[str] = None + Name: Optional[str] = None + RaidLevel: Optional[int] = None + NumberOfDisks: Optional[int] = None + Size: Optional[int] = None + Device: Optional[str] = None + MountPoint: Optional[str] = None + AvailabilityZone: Optional[str] = None + CreatedAt: Optional[str] = None + StackId: Optional[str] = None + VolumeType: Optional[str] = None + Iops: Optional[int] = None + +class DescribeRdsDbInstancesRequestRequestTypeDef(BaseModel): + StackId: str + RdsDbInstanceArns: Optional[Sequence[str]] = None + +class RdsDbInstanceTypeDef(BaseModel): + RdsDbInstanceArn: Optional[str] = None + DbInstanceIdentifier: Optional[str] = None + DbUser: Optional[str] = None + DbPassword: Optional[str] = None + Region: Optional[str] = None + Address: Optional[str] = None + Engine: Optional[str] = None + StackId: Optional[str] = None + MissingOnRds: Optional[bool] = None + +class DescribeServiceErrorsRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + InstanceId: Optional[str] = None + ServiceErrorIds: Optional[Sequence[str]] = None + +class ServiceErrorTypeDef(BaseModel): + ServiceErrorId: Optional[str] = None + StackId: Optional[str] = None + InstanceId: Optional[str] = None + Type: Optional[str] = None + Message: Optional[str] = None + CreatedAt: Optional[str] = None + +class DescribeStackProvisioningParametersRequestRequestTypeDef(BaseModel): + StackId: str + +class DescribeStackSummaryRequestRequestTypeDef(BaseModel): + StackId: str + +class DescribeStacksRequestRequestTypeDef(BaseModel): + StackIds: Optional[Sequence[str]] = None + +class DescribeTimeBasedAutoScalingRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + +class DescribeUserProfilesRequestRequestTypeDef(BaseModel): + IamUserArns: Optional[Sequence[str]] = None + +class UserProfileTypeDef(BaseModel): + IamUserArn: Optional[str] = None + Name: Optional[str] = None + SshUsername: Optional[str] = None + SshPublicKey: Optional[str] = None + AllowSelfManagement: Optional[bool] = None + +class DescribeVolumesRequestRequestTypeDef(BaseModel): + InstanceId: Optional[str] = None + StackId: Optional[str] = None + RaidArrayId: Optional[str] = None + VolumeIds: Optional[Sequence[str]] = None + +class VolumeTypeDef(BaseModel): + VolumeId: Optional[str] = None + Ec2VolumeId: Optional[str] = None + Name: Optional[str] = None + RaidArrayId: Optional[str] = None + InstanceId: Optional[str] = None + Status: Optional[str] = None + Size: Optional[int] = None + Device: Optional[str] = None + MountPoint: Optional[str] = None + Region: Optional[str] = None + AvailabilityZone: Optional[str] = None + VolumeType: Optional[str] = None + Iops: Optional[int] = None + Encrypted: Optional[bool] = None + +class DetachElasticLoadBalancerRequestRequestTypeDef(BaseModel): + ElasticLoadBalancerName: str + LayerId: str + +class DisassociateElasticIpRequestRequestTypeDef(BaseModel): + ElasticIp: str + +class GetHostnameSuggestionRequestRequestTypeDef(BaseModel): + LayerId: str + +class GrantAccessRequestRequestTypeDef(BaseModel): + InstanceId: str + ValidForInMinutes: Optional[int] = None + +class TemporaryCredentialTypeDef(BaseModel): + Username: Optional[str] = None + Password: Optional[str] = None + ValidForInMinutes: Optional[int] = None + InstanceId: Optional[str] = None + +class InstanceIdentityTypeDef(BaseModel): + Document: Optional[str] = None + Signature: Optional[str] = None + +class ReportedOsTypeDef(BaseModel): + Family: Optional[str] = None + Name: Optional[str] = None + Version: Optional[str] = None + +class InstancesCountTypeDef(BaseModel): + Assigning: Optional[int] = None + Booting: Optional[int] = None + ConnectionLost: Optional[int] = None + Deregistering: Optional[int] = None + Online: Optional[int] = None + Pending: Optional[int] = None + Rebooting: Optional[int] = None + Registered: Optional[int] = None + Registering: Optional[int] = None + Requested: Optional[int] = None + RunningSetup: Optional[int] = None + SetupFailed: Optional[int] = None + ShuttingDown: Optional[int] = None + StartFailed: Optional[int] = None + StopFailed: Optional[int] = None + Stopped: Optional[int] = None + Stopping: Optional[int] = None + Terminated: Optional[int] = None + Terminating: Optional[int] = None + Unassigning: Optional[int] = None + +class RecipesOutputTypeDef(BaseModel): + Setup: Optional[List[str]] = None + Configure: Optional[List[str]] = None + Deploy: Optional[List[str]] = None + Undeploy: Optional[List[str]] = None + Shutdown: Optional[List[str]] = None + +class ShutdownEventConfigurationTypeDef(BaseModel): + ExecutionTimeout: Optional[int] = None + DelayUntilElbConnectionsDrained: Optional[bool] = None + +class ListTagsRequestRequestTypeDef(BaseModel): + ResourceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class OperatingSystemConfigurationManagerTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + +class RebootInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class RegisterEcsClusterRequestRequestTypeDef(BaseModel): + EcsClusterArn: str + StackId: str + +class RegisterElasticIpRequestRequestTypeDef(BaseModel): + ElasticIp: str + StackId: str + +class RegisterRdsDbInstanceRequestRequestTypeDef(BaseModel): + StackId: str + RdsDbInstanceArn: str + DbUser: str + DbPassword: str + +class RegisterVolumeRequestRequestTypeDef(BaseModel): + StackId: str + Ec2VolumeId: Optional[str] = None + +class SetPermissionRequestRequestTypeDef(BaseModel): + StackId: str + IamUserArn: str + AllowSsh: Optional[bool] = None + AllowSudo: Optional[bool] = None + Level: Optional[str] = None + +class WeeklyAutoScalingScheduleTypeDef(BaseModel): + Monday: Optional[Mapping[str, str]] = None + Tuesday: Optional[Mapping[str, str]] = None + Wednesday: Optional[Mapping[str, str]] = None + Thursday: Optional[Mapping[str, str]] = None + Friday: Optional[Mapping[str, str]] = None + Saturday: Optional[Mapping[str, str]] = None + Sunday: Optional[Mapping[str, str]] = None + +class StartInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class StartStackRequestRequestTypeDef(BaseModel): + StackId: str + +class StopInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + Force: Optional[bool] = None + +class StopStackRequestRequestTypeDef(BaseModel): + StackId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class WeeklyAutoScalingScheduleOutputTypeDef(BaseModel): + Monday: Optional[Dict[str, str]] = None + Tuesday: Optional[Dict[str, str]] = None + Wednesday: Optional[Dict[str, str]] = None + Thursday: Optional[Dict[str, str]] = None + Friday: Optional[Dict[str, str]] = None + Saturday: Optional[Dict[str, str]] = None + Sunday: Optional[Dict[str, str]] = None + +class UnassignInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class UnassignVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateElasticIpRequestRequestTypeDef(BaseModel): + ElasticIp: str + Name: Optional[str] = None + +class UpdateInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + LayerIds: Optional[Sequence[str]] = None + InstanceType: Optional[str] = None + AutoScalingType: Optional[AutoScalingTypeType] = None + Hostname: Optional[str] = None + Os: Optional[str] = None + AmiId: Optional[str] = None + SshKeyName: Optional[str] = None + Architecture: Optional[ArchitectureType] = None + InstallUpdatesOnBoot: Optional[bool] = None + EbsOptimized: Optional[bool] = None + AgentVersion: Optional[str] = None + +class UpdateMyUserProfileRequestRequestTypeDef(BaseModel): + SshPublicKey: Optional[str] = None + +class UpdateRdsDbInstanceRequestRequestTypeDef(BaseModel): + RdsDbInstanceArn: str + DbUser: Optional[str] = None + DbPassword: Optional[str] = None + +class UpdateUserProfileRequestRequestTypeDef(BaseModel): + IamUserArn: str + SshUsername: Optional[str] = None + SshPublicKey: Optional[str] = None + AllowSelfManagement: Optional[bool] = None + +class UpdateVolumeRequestRequestTypeDef(BaseModel): + VolumeId: str + Name: Optional[str] = None + MountPoint: Optional[str] = None + +class AgentVersionTypeDef(BaseModel): + Version: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + +class DescribeAgentVersionsRequestRequestTypeDef(BaseModel): + StackId: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + +class AppTypeDef(BaseModel): + AppId: Optional[str] = None + StackId: Optional[str] = None + Shortname: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + DataSources: Optional[List[DataSourceTypeDef]] = None + Type: Optional[AppTypeType] = None + AppSource: Optional[SourceTypeDef] = None + Domains: Optional[List[str]] = None + EnableSsl: Optional[bool] = None + SslConfiguration: Optional[SslConfigurationTypeDef] = None + Attributes: Optional[Dict[AppAttributesKeysType, str]] = None + CreatedAt: Optional[str] = None + Environment: Optional[List[EnvironmentVariableTypeDef]] = None + +class CreateAppRequestRequestTypeDef(BaseModel): + StackId: str + Name: str + Type: AppTypeType + Shortname: Optional[str] = None + Description: Optional[str] = None + DataSources: Optional[Sequence[DataSourceTypeDef]] = None + AppSource: Optional[SourceTypeDef] = None + Domains: Optional[Sequence[str]] = None + EnableSsl: Optional[bool] = None + SslConfiguration: Optional[SslConfigurationTypeDef] = None + Attributes: Optional[Mapping[AppAttributesKeysType, str]] = None + Environment: Optional[Sequence[EnvironmentVariableTypeDef]] = None + +class UpdateAppRequestRequestTypeDef(BaseModel): + AppId: str + Name: Optional[str] = None + Description: Optional[str] = None + DataSources: Optional[Sequence[DataSourceTypeDef]] = None + Type: Optional[AppTypeType] = None + AppSource: Optional[SourceTypeDef] = None + Domains: Optional[Sequence[str]] = None + EnableSsl: Optional[bool] = None + SslConfiguration: Optional[SslConfigurationTypeDef] = None + Attributes: Optional[Mapping[AppAttributesKeysType, str]] = None + Environment: Optional[Sequence[EnvironmentVariableTypeDef]] = None + +class LoadBasedAutoScalingConfigurationTypeDef(BaseModel): + LayerId: Optional[str] = None + Enable: Optional[bool] = None + UpScaling: Optional[AutoScalingThresholdsOutputTypeDef] = None + DownScaling: Optional[AutoScalingThresholdsOutputTypeDef] = None + +class SetLoadBasedAutoScalingRequestRequestTypeDef(BaseModel): + LayerId: str + Enable: Optional[bool] = None + UpScaling: Optional[AutoScalingThresholdsTypeDef] = None + DownScaling: Optional[AutoScalingThresholdsTypeDef] = None + +class BlockDeviceMappingTypeDef(BaseModel): + DeviceName: Optional[str] = None + NoDevice: Optional[str] = None + VirtualName: Optional[str] = None + Ebs: Optional[EbsBlockDeviceTypeDef] = None + +class ChefConfigurationResponseTypeDef(BaseModel): + ManageBerkshelf: bool + BerkshelfVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CloneStackResultTypeDef(BaseModel): + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppResultTypeDef(BaseModel): + AppId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentResultTypeDef(BaseModel): + DeploymentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceResultTypeDef(BaseModel): + InstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLayerResultTypeDef(BaseModel): + LayerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStackResultTypeDef(BaseModel): + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserProfileResultTypeDef(BaseModel): + IamUserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStackProvisioningParametersResultTypeDef(BaseModel): + AgentInstallerUrl: str + Parameters: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetHostnameSuggestionResultTypeDef(BaseModel): + LayerId: str + Hostname: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstancesCountResponseTypeDef(BaseModel): + Assigning: int + Booting: int + ConnectionLost: int + Deregistering: int + Online: int + Pending: int + Rebooting: int + Registered: int + Registering: int + Requested: int + RunningSetup: int + SetupFailed: int + ShuttingDown: int + StartFailed: int + StopFailed: int + Stopped: int + Stopping: int + Terminated: int + Terminating: int + Unassigning: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsResultTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RecipesResponseTypeDef(BaseModel): + Setup: List[str] + Configure: List[str] + Deploy: List[str] + Undeploy: List[str] + Shutdown: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterEcsClusterResultTypeDef(BaseModel): + EcsClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterElasticIpResultTypeDef(BaseModel): + ElasticIp: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterInstanceResultTypeDef(BaseModel): + InstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterVolumeResultTypeDef(BaseModel): + VolumeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SourceResponseTypeDef(BaseModel): + Type: SourceTypeType + Url: str + Username: str + Password: str + SshKey: str + Revision: str + ResponseMetadata: ResponseMetadataTypeDef + +class StackConfigurationManagerResponseTypeDef(BaseModel): + Name: str + Version: str + ResponseMetadata: ResponseMetadataTypeDef + +class CloneStackRequestRequestTypeDef(BaseModel): + SourceStackId: str + ServiceRoleArn: str + Name: Optional[str] = None + Region: Optional[str] = None + VpcId: Optional[str] = None + Attributes: Optional[Mapping[Literal["Color"], str]] = None + DefaultInstanceProfileArn: Optional[str] = None + DefaultOs: Optional[str] = None + HostnameTheme: Optional[str] = None + DefaultAvailabilityZone: Optional[str] = None + DefaultSubnetId: Optional[str] = None + CustomJson: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + ChefConfiguration: Optional[ChefConfigurationTypeDef] = None + UseCustomCookbooks: Optional[bool] = None + UseOpsworksSecurityGroups: Optional[bool] = None + CustomCookbooksSource: Optional[SourceTypeDef] = None + DefaultSshKeyName: Optional[str] = None + ClonePermissions: Optional[bool] = None + CloneAppIds: Optional[Sequence[str]] = None + DefaultRootDeviceType: Optional[RootDeviceTypeType] = None + AgentVersion: Optional[str] = None + +class CreateStackRequestRequestTypeDef(BaseModel): + Name: str + Region: str + ServiceRoleArn: str + DefaultInstanceProfileArn: str + VpcId: Optional[str] = None + Attributes: Optional[Mapping[Literal["Color"], str]] = None + DefaultOs: Optional[str] = None + HostnameTheme: Optional[str] = None + DefaultAvailabilityZone: Optional[str] = None + DefaultSubnetId: Optional[str] = None + CustomJson: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + ChefConfiguration: Optional[ChefConfigurationTypeDef] = None + UseCustomCookbooks: Optional[bool] = None + UseOpsworksSecurityGroups: Optional[bool] = None + CustomCookbooksSource: Optional[SourceTypeDef] = None + DefaultSshKeyName: Optional[str] = None + DefaultRootDeviceType: Optional[RootDeviceTypeType] = None + AgentVersion: Optional[str] = None + +class CreateStackRequestServiceResourceCreateStackTypeDef(BaseModel): + Name: str + Region: str + ServiceRoleArn: str + DefaultInstanceProfileArn: str + VpcId: Optional[str] = None + Attributes: Optional[Mapping[Literal["Color"], str]] = None + DefaultOs: Optional[str] = None + HostnameTheme: Optional[str] = None + DefaultAvailabilityZone: Optional[str] = None + DefaultSubnetId: Optional[str] = None + CustomJson: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + ChefConfiguration: Optional[ChefConfigurationTypeDef] = None + UseCustomCookbooks: Optional[bool] = None + UseOpsworksSecurityGroups: Optional[bool] = None + CustomCookbooksSource: Optional[SourceTypeDef] = None + DefaultSshKeyName: Optional[str] = None + DefaultRootDeviceType: Optional[RootDeviceTypeType] = None + AgentVersion: Optional[str] = None + +class StackTypeDef(BaseModel): + StackId: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + Region: Optional[str] = None + VpcId: Optional[str] = None + Attributes: Optional[Dict[Literal["Color"], str]] = None + ServiceRoleArn: Optional[str] = None + DefaultInstanceProfileArn: Optional[str] = None + DefaultOs: Optional[str] = None + HostnameTheme: Optional[str] = None + DefaultAvailabilityZone: Optional[str] = None + DefaultSubnetId: Optional[str] = None + CustomJson: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + ChefConfiguration: Optional[ChefConfigurationTypeDef] = None + UseCustomCookbooks: Optional[bool] = None + UseOpsworksSecurityGroups: Optional[bool] = None + CustomCookbooksSource: Optional[SourceTypeDef] = None + DefaultSshKeyName: Optional[str] = None + CreatedAt: Optional[str] = None + DefaultRootDeviceType: Optional[RootDeviceTypeType] = None + AgentVersion: Optional[str] = None + +class UpdateStackRequestRequestTypeDef(BaseModel): + StackId: str + Name: Optional[str] = None + Attributes: Optional[Mapping[Literal["Color"], str]] = None + ServiceRoleArn: Optional[str] = None + DefaultInstanceProfileArn: Optional[str] = None + DefaultOs: Optional[str] = None + HostnameTheme: Optional[str] = None + DefaultAvailabilityZone: Optional[str] = None + DefaultSubnetId: Optional[str] = None + CustomJson: Optional[str] = None + ConfigurationManager: Optional[StackConfigurationManagerTypeDef] = None + ChefConfiguration: Optional[ChefConfigurationTypeDef] = None + UseCustomCookbooks: Optional[bool] = None + CustomCookbooksSource: Optional[SourceTypeDef] = None + DefaultSshKeyName: Optional[str] = None + DefaultRootDeviceType: Optional[RootDeviceTypeType] = None + UseOpsworksSecurityGroups: Optional[bool] = None + AgentVersion: Optional[str] = None + +class CloudWatchLogsConfigurationOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + LogStreams: Optional[List[CloudWatchLogsLogStreamTypeDef]] = None + +class CloudWatchLogsConfigurationResponseTypeDef(BaseModel): + Enabled: bool + LogStreams: List[CloudWatchLogsLogStreamTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CloudWatchLogsConfigurationTypeDef(BaseModel): + Enabled: Optional[bool] = None + LogStreams: Optional[Sequence[CloudWatchLogsLogStreamTypeDef]] = None + +class DescribeCommandsResultTypeDef(BaseModel): + Commands: List[CommandTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentRequestRequestTypeDef(BaseModel): + StackId: str + Command: DeploymentCommandTypeDef + AppId: Optional[str] = None + InstanceIds: Optional[Sequence[str]] = None + LayerIds: Optional[Sequence[str]] = None + Comment: Optional[str] = None + CustomJson: Optional[str] = None + +class DeploymentTypeDef(BaseModel): + DeploymentId: Optional[str] = None + StackId: Optional[str] = None + AppId: Optional[str] = None + CreatedAt: Optional[str] = None + CompletedAt: Optional[str] = None + Duration: Optional[int] = None + IamUserArn: Optional[str] = None + Comment: Optional[str] = None + Command: Optional[DeploymentCommandOutputTypeDef] = None + Status: Optional[str] = None + CustomJson: Optional[str] = None + InstanceIds: Optional[List[str]] = None + +class DescribeAppsRequestAppExistsWaitTypeDef(BaseModel): + StackId: Optional[str] = None + AppIds: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDeploymentsRequestDeploymentSuccessfulWaitTypeDef(BaseModel): + StackId: Optional[str] = None + AppId: Optional[str] = None + DeploymentIds: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceOnlineWaitTypeDef(BaseModel): + StackId: Optional[str] = None + LayerId: Optional[str] = None + InstanceIds: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceRegisteredWaitTypeDef(BaseModel): + StackId: Optional[str] = None + LayerId: Optional[str] = None + InstanceIds: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceStoppedWaitTypeDef(BaseModel): + StackId: Optional[str] = None + LayerId: Optional[str] = None + InstanceIds: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeInstancesRequestInstanceTerminatedWaitTypeDef(BaseModel): + StackId: Optional[str] = None + LayerId: Optional[str] = None + InstanceIds: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEcsClustersRequestDescribeEcsClustersPaginateTypeDef(BaseModel): + EcsClusterArns: Optional[Sequence[str]] = None + StackId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEcsClustersResultTypeDef(BaseModel): + EcsClusters: List[EcsClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeElasticIpsResultTypeDef(BaseModel): + ElasticIps: List[ElasticIpTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeElasticLoadBalancersResultTypeDef(BaseModel): + ElasticLoadBalancers: List[ElasticLoadBalancerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMyUserProfileResultTypeDef(BaseModel): + UserProfile: SelfUserProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePermissionsResultTypeDef(BaseModel): + Permissions: List[PermissionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRaidArraysResultTypeDef(BaseModel): + RaidArrays: List[RaidArrayTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRdsDbInstancesResultTypeDef(BaseModel): + RdsDbInstances: List[RdsDbInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServiceErrorsResultTypeDef(BaseModel): + ServiceErrors: List[ServiceErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserProfilesResultTypeDef(BaseModel): + UserProfiles: List[UserProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVolumesResultTypeDef(BaseModel): + Volumes: List[VolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GrantAccessResultTypeDef(BaseModel): + TemporaryCredential: TemporaryCredentialTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterInstanceRequestRequestTypeDef(BaseModel): + StackId: str + Hostname: Optional[str] = None + PublicIp: Optional[str] = None + PrivateIp: Optional[str] = None + RsaPublicKey: Optional[str] = None + RsaPublicKeyFingerprint: Optional[str] = None + InstanceIdentity: Optional[InstanceIdentityTypeDef] = None + +class StackSummaryTypeDef(BaseModel): + StackId: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + LayersCount: Optional[int] = None + AppsCount: Optional[int] = None + InstancesCount: Optional[InstancesCountTypeDef] = None + +class LifecycleEventConfigurationResponseTypeDef(BaseModel): + Shutdown: ShutdownEventConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LifecycleEventConfigurationTypeDef(BaseModel): + Shutdown: Optional[ShutdownEventConfigurationTypeDef] = None + +class OperatingSystemTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Type: Optional[str] = None + ConfigurationManagers: Optional[List[OperatingSystemConfigurationManagerTypeDef]] = None + ReportedName: Optional[str] = None + ReportedVersion: Optional[str] = None + Supported: Optional[bool] = None + +class SetTimeBasedAutoScalingRequestRequestTypeDef(BaseModel): + InstanceId: str + AutoScalingSchedule: Optional[WeeklyAutoScalingScheduleTypeDef] = None + +class TimeBasedAutoScalingConfigurationTypeDef(BaseModel): + InstanceId: Optional[str] = None + AutoScalingSchedule: Optional[WeeklyAutoScalingScheduleOutputTypeDef] = None + +class DescribeAgentVersionsResultTypeDef(BaseModel): + AgentVersions: List[AgentVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppsResultTypeDef(BaseModel): + Apps: List[AppTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLoadBasedAutoScalingResultTypeDef(BaseModel): + LoadBasedAutoScalingConfigurations: List[LoadBasedAutoScalingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceRequestRequestTypeDef(BaseModel): + StackId: str + LayerIds: Sequence[str] + InstanceType: str + AutoScalingType: Optional[AutoScalingTypeType] = None + Hostname: Optional[str] = None + Os: Optional[str] = None + AmiId: Optional[str] = None + SshKeyName: Optional[str] = None + AvailabilityZone: Optional[str] = None + VirtualizationType: Optional[str] = None + SubnetId: Optional[str] = None + Architecture: Optional[ArchitectureType] = None + RootDeviceType: Optional[RootDeviceTypeType] = None + BlockDeviceMappings: Optional[Sequence[BlockDeviceMappingTypeDef]] = None + InstallUpdatesOnBoot: Optional[bool] = None + EbsOptimized: Optional[bool] = None + AgentVersion: Optional[str] = None + Tenancy: Optional[str] = None + +class InstanceTypeDef(BaseModel): + AgentVersion: Optional[str] = None + AmiId: Optional[str] = None + Architecture: Optional[ArchitectureType] = None + Arn: Optional[str] = None + AutoScalingType: Optional[AutoScalingTypeType] = None + AvailabilityZone: Optional[str] = None + BlockDeviceMappings: Optional[List[BlockDeviceMappingTypeDef]] = None + CreatedAt: Optional[str] = None + EbsOptimized: Optional[bool] = None + Ec2InstanceId: Optional[str] = None + EcsClusterArn: Optional[str] = None + EcsContainerInstanceArn: Optional[str] = None + ElasticIp: Optional[str] = None + Hostname: Optional[str] = None + InfrastructureClass: Optional[str] = None + InstallUpdatesOnBoot: Optional[bool] = None + InstanceId: Optional[str] = None + InstanceProfileArn: Optional[str] = None + InstanceType: Optional[str] = None + LastServiceErrorId: Optional[str] = None + LayerIds: Optional[List[str]] = None + Os: Optional[str] = None + Platform: Optional[str] = None + PrivateDns: Optional[str] = None + PrivateIp: Optional[str] = None + PublicDns: Optional[str] = None + PublicIp: Optional[str] = None + RegisteredBy: Optional[str] = None + ReportedAgentVersion: Optional[str] = None + ReportedOs: Optional[ReportedOsTypeDef] = None + RootDeviceType: Optional[RootDeviceTypeType] = None + RootDeviceVolumeId: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + SshHostDsaKeyFingerprint: Optional[str] = None + SshHostRsaKeyFingerprint: Optional[str] = None + SshKeyName: Optional[str] = None + StackId: Optional[str] = None + Status: Optional[str] = None + SubnetId: Optional[str] = None + Tenancy: Optional[str] = None + VirtualizationType: Optional[VirtualizationTypeType] = None + +class DescribeStacksResultTypeDef(BaseModel): + Stacks: List[StackTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeploymentsResultTypeDef(BaseModel): + Deployments: List[DeploymentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStackSummaryResultTypeDef(BaseModel): + StackSummary: StackSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLayerRequestRequestTypeDef(BaseModel): + StackId: str + Type: LayerTypeType + Name: str + Shortname: str + Attributes: Optional[Mapping[LayerAttributesKeysType, str]] = None + CloudWatchLogsConfiguration: Optional[CloudWatchLogsConfigurationTypeDef] = None + CustomInstanceProfileArn: Optional[str] = None + CustomJson: Optional[str] = None + CustomSecurityGroupIds: Optional[Sequence[str]] = None + Packages: Optional[Sequence[str]] = None + VolumeConfigurations: Optional[Sequence[VolumeConfigurationTypeDef]] = None + EnableAutoHealing: Optional[bool] = None + AutoAssignElasticIps: Optional[bool] = None + AutoAssignPublicIps: Optional[bool] = None + CustomRecipes: Optional[RecipesTypeDef] = None + InstallUpdatesOnBoot: Optional[bool] = None + UseEbsOptimizedInstances: Optional[bool] = None + LifecycleEventConfiguration: Optional[LifecycleEventConfigurationTypeDef] = None + +class CreateLayerRequestStackCreateLayerTypeDef(BaseModel): + Type: LayerTypeType + Name: str + Shortname: str + Attributes: Optional[Mapping[LayerAttributesKeysType, str]] = None + CloudWatchLogsConfiguration: Optional[CloudWatchLogsConfigurationTypeDef] = None + CustomInstanceProfileArn: Optional[str] = None + CustomJson: Optional[str] = None + CustomSecurityGroupIds: Optional[Sequence[str]] = None + Packages: Optional[Sequence[str]] = None + VolumeConfigurations: Optional[Sequence[VolumeConfigurationTypeDef]] = None + EnableAutoHealing: Optional[bool] = None + AutoAssignElasticIps: Optional[bool] = None + AutoAssignPublicIps: Optional[bool] = None + CustomRecipes: Optional[RecipesTypeDef] = None + InstallUpdatesOnBoot: Optional[bool] = None + UseEbsOptimizedInstances: Optional[bool] = None + LifecycleEventConfiguration: Optional[LifecycleEventConfigurationTypeDef] = None + +class LayerTypeDef(BaseModel): + Arn: Optional[str] = None + StackId: Optional[str] = None + LayerId: Optional[str] = None + Type: Optional[LayerTypeType] = None + Name: Optional[str] = None + Shortname: Optional[str] = None + Attributes: Optional[Dict[LayerAttributesKeysType, str]] = None + CloudWatchLogsConfiguration: Optional[CloudWatchLogsConfigurationOutputTypeDef] = None + CustomInstanceProfileArn: Optional[str] = None + CustomJson: Optional[str] = None + CustomSecurityGroupIds: Optional[List[str]] = None + DefaultSecurityGroupNames: Optional[List[str]] = None + Packages: Optional[List[str]] = None + VolumeConfigurations: Optional[List[VolumeConfigurationTypeDef]] = None + EnableAutoHealing: Optional[bool] = None + AutoAssignElasticIps: Optional[bool] = None + AutoAssignPublicIps: Optional[bool] = None + DefaultRecipes: Optional[RecipesOutputTypeDef] = None + CustomRecipes: Optional[RecipesOutputTypeDef] = None + CreatedAt: Optional[str] = None + InstallUpdatesOnBoot: Optional[bool] = None + UseEbsOptimizedInstances: Optional[bool] = None + LifecycleEventConfiguration: Optional[LifecycleEventConfigurationTypeDef] = None + +class UpdateLayerRequestRequestTypeDef(BaseModel): + LayerId: str + Name: Optional[str] = None + Shortname: Optional[str] = None + Attributes: Optional[Mapping[LayerAttributesKeysType, str]] = None + CloudWatchLogsConfiguration: Optional[CloudWatchLogsConfigurationTypeDef] = None + CustomInstanceProfileArn: Optional[str] = None + CustomJson: Optional[str] = None + CustomSecurityGroupIds: Optional[Sequence[str]] = None + Packages: Optional[Sequence[str]] = None + VolumeConfigurations: Optional[Sequence[VolumeConfigurationTypeDef]] = None + EnableAutoHealing: Optional[bool] = None + AutoAssignElasticIps: Optional[bool] = None + AutoAssignPublicIps: Optional[bool] = None + CustomRecipes: Optional[RecipesTypeDef] = None + InstallUpdatesOnBoot: Optional[bool] = None + UseEbsOptimizedInstances: Optional[bool] = None + LifecycleEventConfiguration: Optional[LifecycleEventConfigurationTypeDef] = None + +class DescribeOperatingSystemsResponseTypeDef(BaseModel): + OperatingSystems: List[OperatingSystemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTimeBasedAutoScalingResultTypeDef(BaseModel): + TimeBasedAutoScalingConfigurations: List[TimeBasedAutoScalingConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInstancesResultTypeDef(BaseModel): + Instances: List[InstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLayersResultTypeDef(BaseModel): + Layers: List[LayerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/opsworks_constants.py b/aws_resource_validator/pydantic_models/opsworks_constants.py new file mode 100644 index 00000000..783f2546 --- /dev/null +++ b/aws_resource_validator/pydantic_models/opsworks_constants.py @@ -0,0 +1,584 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppAttributesKeysType = Literal["AutoBundleOnDeploy", "AwsFlowRubySettings", "DocumentRoot", "RailsEnv"] +AppExistsWaiterName = Literal["app_exists"] +AppTypeType = Literal["aws-flow-ruby", "java", "nodejs", "other", "php", "rails", "static"] +ArchitectureType = Literal["i386", "x86_64"] +AutoScalingTypeType = Literal["load", "timer"] +CloudWatchLogsEncodingType = Literal["ascii", + "big5", + "big5hkscs", + "cp037", + "cp1006", + "cp1026", + "cp1140", + "cp1250", + "cp1251", + "cp1252", + "cp1253", + "cp1254", + "cp1255", + "cp1256", + "cp1257", + "cp1258", + "cp424", + "cp437", + "cp500", + "cp720", + "cp737", + "cp775", + "cp850", + "cp852", + "cp855", + "cp856", + "cp857", + "cp858", + "cp860", + "cp861", + "cp862", + "cp863", + "cp864", + "cp865", + "cp866", + "cp869", + "cp874", + "cp875", + "cp932", + "cp949", + "cp950", + "euc_jis_2004", + "euc_jisx0213", + "euc_jp", + "euc_kr", + "gb18030", + "gb2312", + "gbk", + "hz", + "iso2022_jp", + "iso2022_jp_1", + "iso2022_jp_2", + "iso2022_jp_2004", + "iso2022_jp_3", + "iso2022_jp_ext", + "iso2022_kr", + "iso8859_10", + "iso8859_13", + "iso8859_14", + "iso8859_15", + "iso8859_16", + "iso8859_2", + "iso8859_3", + "iso8859_4", + "iso8859_5", + "iso8859_6", + "iso8859_7", + "iso8859_8", + "iso8859_9", + "johab", + "koi8_r", + "koi8_u", + "latin_1", + "mac_cyrillic", + "mac_greek", + "mac_iceland", + "mac_latin2", + "mac_roman", + "mac_turkish", + "ptcp154", + "shift_jis", + "shift_jis_2004", + "shift_jisx0213", + "utf_16", + "utf_16_be", + "utf_16_le", + "utf_32", + "utf_32_be", + "utf_32_le", + "utf_7", + "utf_8", + "utf_8_sig",] +CloudWatchLogsInitialPositionType = Literal["end_of_file", "start_of_file"] +CloudWatchLogsTimeZoneType = Literal["LOCAL", "UTC"] +DeploymentCommandNameType = Literal["configure", + "deploy", + "execute_recipes", + "install_dependencies", + "restart", + "rollback", + "setup", + "start", + "stop", + "undeploy", + "update_custom_cookbooks", + "update_dependencies",] +DeploymentSuccessfulWaiterName = Literal["deployment_successful"] +DescribeEcsClustersPaginatorName = Literal["describe_ecs_clusters"] +InstanceOnlineWaiterName = Literal["instance_online"] +InstanceRegisteredWaiterName = Literal["instance_registered"] +InstanceStoppedWaiterName = Literal["instance_stopped"] +InstanceTerminatedWaiterName = Literal["instance_terminated"] +LayerAttributesKeysType = Literal["BundlerVersion", + "EcsClusterArn", + "EnableHaproxyStats", + "GangliaPassword", + "GangliaUrl", + "GangliaUser", + "HaproxyHealthCheckMethod", + "HaproxyHealthCheckUrl", + "HaproxyStatsPassword", + "HaproxyStatsUrl", + "HaproxyStatsUser", + "JavaAppServer", + "JavaAppServerVersion", + "Jvm", + "JvmOptions", + "JvmVersion", + "ManageBundler", + "MemcachedMemory", + "MysqlRootPassword", + "MysqlRootPasswordUbiquitous", + "NodejsVersion", + "PassengerVersion", + "RailsStack", + "RubyVersion", + "RubygemsVersion",] +LayerTypeType = Literal["aws-flow-ruby", + "custom", + "db-master", + "ecs-cluster", + "java-app", + "lb", + "memcached", + "monitoring-master", + "nodejs-app", + "php-app", + "rails-app", + "web",] +RootDeviceTypeType = Literal["ebs", "instance-store"] +SourceTypeType = Literal["archive", "git", "s3", "svn"] +StackAttributesKeysType = Literal["Color"] +VirtualizationTypeType = Literal["hvm", "paravirtual"] +VolumeTypeType = Literal["gp2", "io1", "standard"] +OpsWorksServiceName = Literal["opsworks"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_ecs_clusters"] +WaiterName = Literal["app_exists", + "deployment_successful", + "instance_online", + "instance_registered", + "instance_stopped", + "instance_terminated",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +AutoScalingThresholdsUnionTypeDef = Union[ 'AutoScalingThresholdsTypeDef', 'AutoScalingThresholdsOutputTypeDef' ] +DeploymentCommandUnionTypeDef = Union['DeploymentCommandTypeDef', 'DeploymentCommandOutputTypeDef'] +RecipesUnionTypeDef = Union['RecipesTypeDef', 'RecipesOutputTypeDef'] +WeeklyAutoScalingScheduleUnionTypeDef = Union[ 'WeeklyAutoScalingScheduleTypeDef', 'WeeklyAutoScalingScheduleOutputTypeDef' ] +CloudWatchLogsConfigurationUnionTypeDef = Union[ 'CloudWatchLogsConfigurationTypeDef', 'CloudWatchLogsConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/opsworkscm_classes.py b/aws_resource_validator/pydantic_models/opsworkscm_classes.py new file mode 100644 index 00000000..89fd2916 --- /dev/null +++ b/aws_resource_validator/pydantic_models/opsworkscm_classes.py @@ -0,0 +1,292 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.opsworkscm_constants import * + +class AccountAttributeTypeDef(BaseModel): + Name: Optional[str] = None + Maximum: Optional[int] = None + Used: Optional[int] = None + +class EngineAttributeTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BackupTypeDef(BaseModel): + BackupArn: Optional[str] = None + BackupId: Optional[str] = None + BackupType: Optional[BackupTypeType] = None + CreatedAt: Optional[datetime] = None + Description: Optional[str] = None + Engine: Optional[str] = None + EngineModel: Optional[str] = None + EngineVersion: Optional[str] = None + InstanceProfileArn: Optional[str] = None + InstanceType: Optional[str] = None + KeyPair: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + S3DataSize: Optional[int] = None + S3DataUrl: Optional[str] = None + S3LogUrl: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + ServerName: Optional[str] = None + ServiceRoleArn: Optional[str] = None + Status: Optional[BackupStatusType] = None + StatusDescription: Optional[str] = None + SubnetIds: Optional[List[str]] = None + ToolsVersion: Optional[str] = None + UserArn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteBackupRequestRequestTypeDef(BaseModel): + BackupId: str + +class DeleteServerRequestRequestTypeDef(BaseModel): + ServerName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeBackupsRequestRequestTypeDef(BaseModel): + BackupId: Optional[str] = None + ServerName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeEventsRequestRequestTypeDef(BaseModel): + ServerName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ServerEventTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + ServerName: Optional[str] = None + Message: Optional[str] = None + LogUrl: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeNodeAssociationStatusRequestRequestTypeDef(BaseModel): + NodeAssociationStatusToken: str + ServerName: str + +class DescribeServersRequestRequestTypeDef(BaseModel): + ServerName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RestoreServerRequestRequestTypeDef(BaseModel): + BackupId: str + ServerName: str + InstanceType: Optional[str] = None + KeyPair: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateServerEngineAttributesRequestRequestTypeDef(BaseModel): + ServerName: str + AttributeName: str + AttributeValue: Optional[str] = None + +class UpdateServerRequestRequestTypeDef(BaseModel): + ServerName: str + DisableAutomatedBackup: Optional[bool] = None + BackupRetentionCount: Optional[int] = None + PreferredMaintenanceWindow: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + +class AssociateNodeRequestRequestTypeDef(BaseModel): + ServerName: str + NodeName: str + EngineAttributes: Sequence[EngineAttributeTypeDef] + +class DisassociateNodeRequestRequestTypeDef(BaseModel): + ServerName: str + NodeName: str + EngineAttributes: Optional[Sequence[EngineAttributeTypeDef]] = None + +class ExportServerEngineAttributeRequestRequestTypeDef(BaseModel): + ExportAttributeName: str + ServerName: str + InputAttributes: Optional[Sequence[EngineAttributeTypeDef]] = None + +class ServerTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + BackupRetentionCount: Optional[int] = None + ServerName: Optional[str] = None + CreatedAt: Optional[datetime] = None + CloudFormationStackArn: Optional[str] = None + CustomDomain: Optional[str] = None + DisableAutomatedBackup: Optional[bool] = None + Endpoint: Optional[str] = None + Engine: Optional[str] = None + EngineModel: Optional[str] = None + EngineAttributes: Optional[List[EngineAttributeTypeDef]] = None + EngineVersion: Optional[str] = None + InstanceProfileArn: Optional[str] = None + InstanceType: Optional[str] = None + KeyPair: Optional[str] = None + MaintenanceStatus: Optional[MaintenanceStatusType] = None + PreferredMaintenanceWindow: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + ServiceRoleArn: Optional[str] = None + Status: Optional[ServerStatusType] = None + StatusReason: Optional[str] = None + SubnetIds: Optional[List[str]] = None + ServerArn: Optional[str] = None + +class StartMaintenanceRequestRequestTypeDef(BaseModel): + ServerName: str + EngineAttributes: Optional[Sequence[EngineAttributeTypeDef]] = None + +class AssociateNodeResponseTypeDef(BaseModel): + NodeAssociationStatusToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAttributesResponseTypeDef(BaseModel): + Attributes: List[AccountAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNodeAssociationStatusResponseTypeDef(BaseModel): + NodeAssociationStatus: NodeAssociationStatusType + EngineAttributes: List[EngineAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateNodeResponseTypeDef(BaseModel): + NodeAssociationStatusToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExportServerEngineAttributeResponseTypeDef(BaseModel): + EngineAttribute: EngineAttributeTypeDef + ServerName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackupResponseTypeDef(BaseModel): + Backup: BackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBackupsResponseTypeDef(BaseModel): + Backups: List[BackupTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBackupRequestRequestTypeDef(BaseModel): + ServerName: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateServerRequestRequestTypeDef(BaseModel): + Engine: str + ServerName: str + InstanceProfileArn: str + InstanceType: str + ServiceRoleArn: str + AssociatePublicIpAddress: Optional[bool] = None + CustomDomain: Optional[str] = None + CustomCertificate: Optional[str] = None + CustomPrivateKey: Optional[str] = None + DisableAutomatedBackup: Optional[bool] = None + EngineModel: Optional[str] = None + EngineVersion: Optional[str] = None + EngineAttributes: Optional[Sequence[EngineAttributeTypeDef]] = None + BackupRetentionCount: Optional[int] = None + KeyPair: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + BackupId: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class DescribeBackupsRequestDescribeBackupsPaginateTypeDef(BaseModel): + BackupId: Optional[str] = None + ServerName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsRequestDescribeEventsPaginateTypeDef(BaseModel): + ServerName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeServersRequestDescribeServersPaginateTypeDef(BaseModel): + ServerName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsResponseTypeDef(BaseModel): + ServerEvents: List[ServerEventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNodeAssociationStatusRequestNodeAssociatedWaitTypeDef(BaseModel): + NodeAssociationStatusToken: str + ServerName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class CreateServerResponseTypeDef(BaseModel): + Server: ServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServersResponseTypeDef(BaseModel): + Servers: List[ServerTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreServerResponseTypeDef(BaseModel): + Server: ServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartMaintenanceResponseTypeDef(BaseModel): + Server: ServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServerEngineAttributesResponseTypeDef(BaseModel): + Server: ServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServerResponseTypeDef(BaseModel): + Server: ServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/opsworkscm_constants.py b/aws_resource_validator/pydantic_models/opsworkscm_constants.py new file mode 100644 index 00000000..0244165e --- /dev/null +++ b/aws_resource_validator/pydantic_models/opsworkscm_constants.py @@ -0,0 +1,421 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BackupStatusType = Literal["DELETING", "FAILED", "IN_PROGRESS", "OK"] +BackupTypeType = Literal["AUTOMATED", "MANUAL"] +DescribeBackupsPaginatorName = Literal["describe_backups"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeServersPaginatorName = Literal["describe_servers"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +MaintenanceStatusType = Literal["FAILED", "SUCCESS"] +NodeAssociatedWaiterName = Literal["node_associated"] +NodeAssociationStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCESS"] +ServerStatusType = Literal["BACKING_UP", + "CONNECTION_LOST", + "CREATING", + "DELETING", + "FAILED", + "HEALTHY", + "MODIFYING", + "RESTORING", + "RUNNING", + "SETUP", + "TERMINATED", + "UNDER_MAINTENANCE", + "UNHEALTHY",] +OpsWorksCMServiceName = Literal["opsworkscm"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_backups", "describe_events", "describe_servers", "list_tags_for_resource"] +WaiterName = Literal["node_associated"] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/organizations_classes.py b/aws_resource_validator/pydantic_models/organizations_classes.py new file mode 100644 index 00000000..ed2a8eb0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/organizations_classes.py @@ -0,0 +1,600 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.organizations_constants import * + +class AcceptHandshakeRequestRequestTypeDef(BaseModel): + HandshakeId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AccountTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Email: Optional[str] = None + Name: Optional[str] = None + Status: Optional[AccountStatusType] = None + JoinedMethod: Optional[AccountJoinedMethodType] = None + JoinedTimestamp: Optional[datetime] = None + +class AttachPolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + TargetId: str + +class CancelHandshakeRequestRequestTypeDef(BaseModel): + HandshakeId: str + +class ChildTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[ChildTypeType] = None + +class CloseAccountRequestRequestTypeDef(BaseModel): + AccountId: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateAccountStatusTypeDef(BaseModel): + Id: Optional[str] = None + AccountName: Optional[str] = None + State: Optional[CreateAccountStateType] = None + RequestedTimestamp: Optional[datetime] = None + CompletedTimestamp: Optional[datetime] = None + AccountId: Optional[str] = None + GovCloudAccountId: Optional[str] = None + FailureReason: Optional[CreateAccountFailureReasonType] = None + +class CreateOrganizationRequestRequestTypeDef(BaseModel): + FeatureSet: Optional[OrganizationFeatureSetType] = None + +class OrganizationalUnitTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + +class DeclineHandshakeRequestRequestTypeDef(BaseModel): + HandshakeId: str + +class DelegatedAdministratorTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Email: Optional[str] = None + Name: Optional[str] = None + Status: Optional[AccountStatusType] = None + JoinedMethod: Optional[AccountJoinedMethodType] = None + JoinedTimestamp: Optional[datetime] = None + DelegationEnabledDate: Optional[datetime] = None + +class DelegatedServiceTypeDef(BaseModel): + ServicePrincipal: Optional[str] = None + DelegationEnabledDate: Optional[datetime] = None + +class DeleteOrganizationalUnitRequestRequestTypeDef(BaseModel): + OrganizationalUnitId: str + +class DeletePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + +class DeregisterDelegatedAdministratorRequestRequestTypeDef(BaseModel): + AccountId: str + ServicePrincipal: str + +class DescribeAccountRequestRequestTypeDef(BaseModel): + AccountId: str + +class DescribeCreateAccountStatusRequestRequestTypeDef(BaseModel): + CreateAccountRequestId: str + +class DescribeEffectivePolicyRequestRequestTypeDef(BaseModel): + PolicyType: EffectivePolicyTypeType + TargetId: Optional[str] = None + +class EffectivePolicyTypeDef(BaseModel): + PolicyContent: Optional[str] = None + LastUpdatedTimestamp: Optional[datetime] = None + TargetId: Optional[str] = None + PolicyType: Optional[EffectivePolicyTypeType] = None + +class DescribeHandshakeRequestRequestTypeDef(BaseModel): + HandshakeId: str + +class DescribeOrganizationalUnitRequestRequestTypeDef(BaseModel): + OrganizationalUnitId: str + +class DescribePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + +class DetachPolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + TargetId: str + +class DisableAWSServiceAccessRequestRequestTypeDef(BaseModel): + ServicePrincipal: str + +class DisablePolicyTypeRequestRequestTypeDef(BaseModel): + RootId: str + PolicyType: PolicyTypeType + +class EnableAWSServiceAccessRequestRequestTypeDef(BaseModel): + ServicePrincipal: str + +class EnablePolicyTypeRequestRequestTypeDef(BaseModel): + RootId: str + PolicyType: PolicyTypeType + +class EnabledServicePrincipalTypeDef(BaseModel): + ServicePrincipal: Optional[str] = None + DateEnabled: Optional[datetime] = None + +class HandshakeFilterTypeDef(BaseModel): + ActionType: Optional[ActionTypeType] = None + ParentHandshakeId: Optional[str] = None + +class HandshakePartyTypeDef(BaseModel): + Id: str + Type: HandshakePartyTypeType + +class HandshakeResourceTypeDef(BaseModel): + Value: Optional[str] = None + Type: Optional[HandshakeResourceTypeType] = None + Resources: Optional[List[Dict[str, Any]]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAWSServiceAccessForOrganizationRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAccountsForParentRequestRequestTypeDef(BaseModel): + ParentId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAccountsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListChildrenRequestRequestTypeDef(BaseModel): + ParentId: str + ChildType: ChildTypeType + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCreateAccountStatusRequestRequestTypeDef(BaseModel): + States: Optional[Sequence[CreateAccountStateType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDelegatedAdministratorsRequestRequestTypeDef(BaseModel): + ServicePrincipal: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDelegatedServicesForAccountRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListOrganizationalUnitsForParentRequestRequestTypeDef(BaseModel): + ParentId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListParentsRequestRequestTypeDef(BaseModel): + ChildId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ParentTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[ParentTypeType] = None + +class ListPoliciesForTargetRequestRequestTypeDef(BaseModel): + TargetId: str + Filter: PolicyTypeType + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PolicySummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Type: Optional[PolicyTypeType] = None + AwsManaged: Optional[bool] = None + +class ListPoliciesRequestRequestTypeDef(BaseModel): + Filter: PolicyTypeType + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRootsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + NextToken: Optional[str] = None + +class ListTargetsForPolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PolicyTargetSummaryTypeDef(BaseModel): + TargetId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[TargetTypeType] = None + +class MoveAccountRequestRequestTypeDef(BaseModel): + AccountId: str + SourceParentId: str + DestinationParentId: str + +class PolicyTypeSummaryTypeDef(BaseModel): + Type: Optional[PolicyTypeType] = None + Status: Optional[PolicyTypeStatusType] = None + +class RegisterDelegatedAdministratorRequestRequestTypeDef(BaseModel): + AccountId: str + ServicePrincipal: str + +class RemoveAccountFromOrganizationRequestRequestTypeDef(BaseModel): + AccountId: str + +class ResourcePolicySummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + TagKeys: Sequence[str] + +class UpdateOrganizationalUnitRequestRequestTypeDef(BaseModel): + OrganizationalUnitId: str + Name: Optional[str] = None + +class UpdatePolicyRequestRequestTypeDef(BaseModel): + PolicyId: str + Name: Optional[str] = None + Description: Optional[str] = None + Content: Optional[str] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountResponseTypeDef(BaseModel): + Account: AccountTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountsForParentResponseTypeDef(BaseModel): + Accounts: List[AccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAccountsResponseTypeDef(BaseModel): + Accounts: List[AccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListChildrenResponseTypeDef(BaseModel): + Children: List[ChildTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateAccountRequestRequestTypeDef(BaseModel): + Email: str + AccountName: str + RoleName: Optional[str] = None + IamUserAccessToBilling: Optional[IAMUserAccessToBillingType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateGovCloudAccountRequestRequestTypeDef(BaseModel): + Email: str + AccountName: str + RoleName: Optional[str] = None + IamUserAccessToBilling: Optional[IAMUserAccessToBillingType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateOrganizationalUnitRequestRequestTypeDef(BaseModel): + ParentId: str + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePolicyRequestRequestTypeDef(BaseModel): + Content: str + Description: str + Name: str + Type: PolicyTypeType + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + Content: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceId: str + Tags: Sequence[TagTypeDef] + +class CreateAccountResponseTypeDef(BaseModel): + CreateAccountStatus: CreateAccountStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGovCloudAccountResponseTypeDef(BaseModel): + CreateAccountStatus: CreateAccountStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCreateAccountStatusResponseTypeDef(BaseModel): + CreateAccountStatus: CreateAccountStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCreateAccountStatusResponseTypeDef(BaseModel): + CreateAccountStatuses: List[CreateAccountStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateOrganizationalUnitResponseTypeDef(BaseModel): + OrganizationalUnit: OrganizationalUnitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationalUnitResponseTypeDef(BaseModel): + OrganizationalUnit: OrganizationalUnitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationalUnitsForParentResponseTypeDef(BaseModel): + OrganizationalUnits: List[OrganizationalUnitTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateOrganizationalUnitResponseTypeDef(BaseModel): + OrganizationalUnit: OrganizationalUnitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDelegatedAdministratorsResponseTypeDef(BaseModel): + DelegatedAdministrators: List[DelegatedAdministratorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDelegatedServicesForAccountResponseTypeDef(BaseModel): + DelegatedServices: List[DelegatedServiceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeEffectivePolicyResponseTypeDef(BaseModel): + EffectivePolicy: EffectivePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAWSServiceAccessForOrganizationResponseTypeDef(BaseModel): + EnabledServicePrincipals: List[EnabledServicePrincipalTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListHandshakesForAccountRequestRequestTypeDef(BaseModel): + Filter: Optional[HandshakeFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListHandshakesForOrganizationRequestRequestTypeDef(BaseModel): + Filter: Optional[HandshakeFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class HandshakeTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Parties: Optional[List[HandshakePartyTypeDef]] = None + State: Optional[HandshakeStateType] = None + RequestedTimestamp: Optional[datetime] = None + ExpirationTimestamp: Optional[datetime] = None + Action: Optional[ActionTypeType] = None + Resources: Optional[List["HandshakeResourceTypeDef"]] = None + +class InviteAccountToOrganizationRequestRequestTypeDef(BaseModel): + Target: HandshakePartyTypeDef + Notes: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListAWSServiceAccessForOrganizationRequestListAWSServiceAccessForOrganizationPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountsForParentRequestListAccountsForParentPaginateTypeDef(BaseModel): + ParentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountsRequestListAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListChildrenRequestListChildrenPaginateTypeDef(BaseModel): + ParentId: str + ChildType: ChildTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCreateAccountStatusRequestListCreateAccountStatusPaginateTypeDef(BaseModel): + States: Optional[Sequence[CreateAccountStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDelegatedAdministratorsRequestListDelegatedAdministratorsPaginateTypeDef(BaseModel): + ServicePrincipal: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDelegatedServicesForAccountRequestListDelegatedServicesForAccountPaginateTypeDef(BaseModel): + AccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHandshakesForAccountRequestListHandshakesForAccountPaginateTypeDef(BaseModel): + Filter: Optional[HandshakeFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHandshakesForOrganizationRequestListHandshakesForOrganizationPaginateTypeDef(BaseModel): + Filter: Optional[HandshakeFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationalUnitsForParentRequestListOrganizationalUnitsForParentPaginateTypeDef(BaseModel): + ParentId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListParentsRequestListParentsPaginateTypeDef(BaseModel): + ChildId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesForTargetRequestListPoliciesForTargetPaginateTypeDef(BaseModel): + TargetId: str + Filter: PolicyTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesRequestListPoliciesPaginateTypeDef(BaseModel): + Filter: PolicyTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRootsRequestListRootsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetsForPolicyRequestListTargetsForPolicyPaginateTypeDef(BaseModel): + PolicyId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListParentsResponseTypeDef(BaseModel): + Parents: List[ParentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPoliciesForTargetResponseTypeDef(BaseModel): + Policies: List[PolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPoliciesResponseTypeDef(BaseModel): + Policies: List[PolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PolicyTypeDef(BaseModel): + PolicySummary: Optional[PolicySummaryTypeDef] = None + Content: Optional[str] = None + +class ListTargetsForPolicyResponseTypeDef(BaseModel): + Targets: List[PolicyTargetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class OrganizationTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + FeatureSet: Optional[OrganizationFeatureSetType] = None + MasterAccountArn: Optional[str] = None + MasterAccountId: Optional[str] = None + MasterAccountEmail: Optional[str] = None + AvailablePolicyTypes: Optional[List[PolicyTypeSummaryTypeDef]] = None + +class RootTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + PolicyTypes: Optional[List[PolicyTypeSummaryTypeDef]] = None + +class ResourcePolicyTypeDef(BaseModel): + ResourcePolicySummary: Optional[ResourcePolicySummaryTypeDef] = None + Content: Optional[str] = None + +class AcceptHandshakeResponseTypeDef(BaseModel): + Handshake: HandshakeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelHandshakeResponseTypeDef(BaseModel): + Handshake: HandshakeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeclineHandshakeResponseTypeDef(BaseModel): + Handshake: HandshakeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHandshakeResponseTypeDef(BaseModel): + Handshake: HandshakeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnableAllFeaturesResponseTypeDef(BaseModel): + Handshake: HandshakeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InviteAccountToOrganizationResponseTypeDef(BaseModel): + Handshake: HandshakeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListHandshakesForAccountResponseTypeDef(BaseModel): + Handshakes: List[HandshakeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListHandshakesForOrganizationResponseTypeDef(BaseModel): + Handshakes: List[HandshakeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreatePolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePolicyResponseTypeDef(BaseModel): + Policy: PolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOrganizationResponseTypeDef(BaseModel): + Organization: OrganizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationResponseTypeDef(BaseModel): + Organization: OrganizationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisablePolicyTypeResponseTypeDef(BaseModel): + Root: RootTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnablePolicyTypeResponseTypeDef(BaseModel): + Root: RootTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRootsResponseTypeDef(BaseModel): + Roots: List[RootTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeResourcePolicyResponseTypeDef(BaseModel): + ResourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + ResourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/organizations_constants.py b/aws_resource_validator/pydantic_models/organizations_constants.py new file mode 100644 index 00000000..fc564f08 --- /dev/null +++ b/aws_resource_validator/pydantic_models/organizations_constants.py @@ -0,0 +1,468 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountJoinedMethodType = Literal["CREATED", "INVITED"] +AccountStatusType = Literal["ACTIVE", "PENDING_CLOSURE", "SUSPENDED"] +ActionTypeType = Literal["ADD_ORGANIZATIONS_SERVICE_LINKED_ROLE", "APPROVE_ALL_FEATURES", "ENABLE_ALL_FEATURES", "INVITE"] +ChildTypeType = Literal["ACCOUNT", "ORGANIZATIONAL_UNIT"] +CreateAccountFailureReasonType = Literal["ACCOUNT_LIMIT_EXCEEDED", + "CONCURRENT_ACCOUNT_MODIFICATION", + "EMAIL_ALREADY_EXISTS", + "FAILED_BUSINESS_VALIDATION", + "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", + "INTERNAL_FAILURE", + "INVALID_ADDRESS", + "INVALID_EMAIL", + "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", + "INVALID_PAYMENT_INSTRUMENT", + "MISSING_BUSINESS_VALIDATION", + "MISSING_PAYMENT_INSTRUMENT", + "PENDING_BUSINESS_VALIDATION", + "UNKNOWN_BUSINESS_VALIDATION", + "UPDATE_EXISTING_RESOURCE_POLICY_WITH_TAGS_NOT_SUPPORTED",] +CreateAccountStateType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +EffectivePolicyTypeType = Literal["AISERVICES_OPT_OUT_POLICY", "BACKUP_POLICY", "TAG_POLICY"] +HandshakePartyTypeType = Literal["ACCOUNT", "EMAIL", "ORGANIZATION"] +HandshakeResourceTypeType = Literal["ACCOUNT", + "EMAIL", + "MASTER_EMAIL", + "MASTER_NAME", + "NOTES", + "ORGANIZATION", + "ORGANIZATION_FEATURE_SET", + "PARENT_HANDSHAKE",] +HandshakeStateType = Literal["ACCEPTED", "CANCELED", "DECLINED", "EXPIRED", "OPEN", "REQUESTED"] +IAMUserAccessToBillingType = Literal["ALLOW", "DENY"] +ListAWSServiceAccessForOrganizationPaginatorName = Literal["list_aws_service_access_for_organization"] +ListAccountsForParentPaginatorName = Literal["list_accounts_for_parent"] +ListAccountsPaginatorName = Literal["list_accounts"] +ListChildrenPaginatorName = Literal["list_children"] +ListCreateAccountStatusPaginatorName = Literal["list_create_account_status"] +ListDelegatedAdministratorsPaginatorName = Literal["list_delegated_administrators"] +ListDelegatedServicesForAccountPaginatorName = Literal["list_delegated_services_for_account"] +ListHandshakesForAccountPaginatorName = Literal["list_handshakes_for_account"] +ListHandshakesForOrganizationPaginatorName = Literal["list_handshakes_for_organization"] +ListOrganizationalUnitsForParentPaginatorName = Literal["list_organizational_units_for_parent"] +ListParentsPaginatorName = Literal["list_parents"] +ListPoliciesForTargetPaginatorName = Literal["list_policies_for_target"] +ListPoliciesPaginatorName = Literal["list_policies"] +ListRootsPaginatorName = Literal["list_roots"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListTargetsForPolicyPaginatorName = Literal["list_targets_for_policy"] +OrganizationFeatureSetType = Literal["ALL", "CONSOLIDATED_BILLING"] +ParentTypeType = Literal["ORGANIZATIONAL_UNIT", "ROOT"] +PolicyTypeStatusType = Literal["ENABLED", "PENDING_DISABLE", "PENDING_ENABLE"] +PolicyTypeType = Literal["AISERVICES_OPT_OUT_POLICY", "BACKUP_POLICY", "SERVICE_CONTROL_POLICY", "TAG_POLICY"] +TargetTypeType = Literal["ACCOUNT", "ORGANIZATIONAL_UNIT", "ROOT"] +OrganizationsServiceName = Literal["organizations"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_accounts", + "list_accounts_for_parent", + "list_aws_service_access_for_organization", + "list_children", + "list_create_account_status", + "list_delegated_administrators", + "list_delegated_services_for_account", + "list_handshakes_for_account", + "list_handshakes_for_organization", + "list_organizational_units_for_parent", + "list_parents", + "list_policies", + "list_policies_for_target", + "list_roots", + "list_tags_for_resource", + "list_targets_for_policy",] diff --git a/aws_resource_validator/pydantic_models/osis_classes.py b/aws_resource_validator/pydantic_models/osis_classes.py new file mode 100644 index 00000000..bf2ed854 --- /dev/null +++ b/aws_resource_validator/pydantic_models/osis_classes.py @@ -0,0 +1,235 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.osis_constants import * + +class BufferOptionsTypeDef(BaseModel): + PersistentBufferEnabled: bool + +class ChangeProgressStageTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[ChangeProgressStageStatusesType] = None + Description: Optional[str] = None + LastUpdatedAt: Optional[datetime] = None + +class CloudWatchLogDestinationTypeDef(BaseModel): + LogGroup: str + +class EncryptionAtRestOptionsTypeDef(BaseModel): + KmsKeyArn: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeletePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + +class GetPipelineBlueprintRequestRequestTypeDef(BaseModel): + BlueprintName: str + Format: Optional[str] = None + +class PipelineBlueprintTypeDef(BaseModel): + BlueprintName: Optional[str] = None + PipelineConfigurationBody: Optional[str] = None + DisplayName: Optional[str] = None + DisplayDescription: Optional[str] = None + Service: Optional[str] = None + UseCase: Optional[str] = None + +class GetPipelineChangeProgressRequestRequestTypeDef(BaseModel): + PipelineName: str + +class GetPipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + +class PipelineBlueprintSummaryTypeDef(BaseModel): + BlueprintName: Optional[str] = None + DisplayName: Optional[str] = None + DisplayDescription: Optional[str] = None + Service: Optional[str] = None + UseCase: Optional[str] = None + +class ListPipelinesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + Arn: str + +class PipelineDestinationTypeDef(BaseModel): + ServiceName: Optional[str] = None + Endpoint: Optional[str] = None + +class PipelineStatusReasonTypeDef(BaseModel): + Description: Optional[str] = None + +class ServiceVpcEndpointTypeDef(BaseModel): + ServiceName: Optional[Literal["OPENSEARCH_SERVERLESS"]] = None + VpcEndpointId: Optional[str] = None + +class StartPipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + +class StopPipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + Arn: str + TagKeys: Sequence[str] + +class ValidatePipelineRequestRequestTypeDef(BaseModel): + PipelineConfigurationBody: str + +class ValidationMessageTypeDef(BaseModel): + Message: Optional[str] = None + +class VpcAttachmentOptionsTypeDef(BaseModel): + AttachToVpc: bool + CidrBlock: Optional[str] = None + +class ChangeProgressStatusTypeDef(BaseModel): + StartTime: Optional[datetime] = None + Status: Optional[ChangeProgressStatusesType] = None + TotalNumberOfStages: Optional[int] = None + ChangeProgressStages: Optional[List[ChangeProgressStageTypeDef]] = None + +class LogPublishingOptionsTypeDef(BaseModel): + IsLoggingEnabled: Optional[bool] = None + CloudWatchLogDestination: Optional[CloudWatchLogDestinationTypeDef] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + Arn: str + Tags: Sequence[TagTypeDef] + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPipelineBlueprintResponseTypeDef(BaseModel): + Blueprint: PipelineBlueprintTypeDef + Format: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPipelineBlueprintsResponseTypeDef(BaseModel): + Blueprints: List[PipelineBlueprintSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PipelineSummaryTypeDef(BaseModel): + Status: Optional[PipelineStatusType] = None + StatusReason: Optional[PipelineStatusReasonTypeDef] = None + PipelineName: Optional[str] = None + PipelineArn: Optional[str] = None + MinUnits: Optional[int] = None + MaxUnits: Optional[int] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + Destinations: Optional[List[PipelineDestinationTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class ValidatePipelineResponseTypeDef(BaseModel): + isValid: bool + Errors: List[ValidationMessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VpcOptionsOutputTypeDef(BaseModel): + SubnetIds: List[str] + SecurityGroupIds: Optional[List[str]] = None + VpcAttachmentOptions: Optional[VpcAttachmentOptionsTypeDef] = None + VpcEndpointManagement: Optional[VpcEndpointManagementType] = None + +class VpcOptionsTypeDef(BaseModel): + SubnetIds: Sequence[str] + SecurityGroupIds: Optional[Sequence[str]] = None + VpcAttachmentOptions: Optional[VpcAttachmentOptionsTypeDef] = None + VpcEndpointManagement: Optional[VpcEndpointManagementType] = None + +class GetPipelineChangeProgressResponseTypeDef(BaseModel): + ChangeProgressStatuses: List[ChangeProgressStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + MinUnits: Optional[int] = None + MaxUnits: Optional[int] = None + PipelineConfigurationBody: Optional[str] = None + LogPublishingOptions: Optional[LogPublishingOptionsTypeDef] = None + BufferOptions: Optional[BufferOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + +class ListPipelinesResponseTypeDef(BaseModel): + Pipelines: List[PipelineSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class VpcEndpointTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcId: Optional[str] = None + VpcOptions: Optional[VpcOptionsOutputTypeDef] = None + +class CreatePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + MinUnits: int + MaxUnits: int + PipelineConfigurationBody: str + LogPublishingOptions: Optional[LogPublishingOptionsTypeDef] = None + VpcOptions: Optional[VpcOptionsTypeDef] = None + BufferOptions: Optional[BufferOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class PipelineTypeDef(BaseModel): + PipelineName: Optional[str] = None + PipelineArn: Optional[str] = None + MinUnits: Optional[int] = None + MaxUnits: Optional[int] = None + Status: Optional[PipelineStatusType] = None + StatusReason: Optional[PipelineStatusReasonTypeDef] = None + PipelineConfigurationBody: Optional[str] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + IngestEndpointUrls: Optional[List[str]] = None + LogPublishingOptions: Optional[LogPublishingOptionsTypeDef] = None + VpcEndpoints: Optional[List[VpcEndpointTypeDef]] = None + BufferOptions: Optional[BufferOptionsTypeDef] = None + EncryptionAtRestOptions: Optional[EncryptionAtRestOptionsTypeDef] = None + VpcEndpointService: Optional[str] = None + ServiceVpcEndpoints: Optional[List[ServiceVpcEndpointTypeDef]] = None + Destinations: Optional[List[PipelineDestinationTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreatePipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartPipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopPipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineResponseTypeDef(BaseModel): + Pipeline: PipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/osis_constants.py b/aws_resource_validator/pydantic_models/osis_constants.py new file mode 100644 index 00000000..79ebe9c6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/osis_constants.py @@ -0,0 +1,429 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChangeProgressStageStatusesType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "PENDING"] +ChangeProgressStatusesType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "PENDING"] +PipelineStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATING", + "DELETING", + "STARTING", + "START_FAILED", + "STOPPED", + "STOPPING", + "UPDATE_FAILED", + "UPDATING",] +VpcEndpointManagementType = Literal["CUSTOMER", "SERVICE"] +VpcEndpointServiceNameType = Literal["OPENSEARCH_SERVERLESS"] +OpenSearchIngestionServiceName = Literal["osis"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +VpcOptionsUnionTypeDef = Union['VpcOptionsTypeDef', 'VpcOptionsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/outposts_classes.py b/aws_resource_validator/pydantic_models/outposts_classes.py new file mode 100644 index 00000000..9545a13f --- /dev/null +++ b/aws_resource_validator/pydantic_models/outposts_classes.py @@ -0,0 +1,512 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.outposts_constants import * + +class AddressTypeDef(BaseModel): + AddressLine1: str + City: str + StateOrRegion: str + PostalCode: str + CountryCode: str + ContactName: Optional[str] = None + ContactPhoneNumber: Optional[str] = None + AddressLine2: Optional[str] = None + AddressLine3: Optional[str] = None + DistrictOrCounty: Optional[str] = None + Municipality: Optional[str] = None + +class AssetLocationTypeDef(BaseModel): + RackElevation: Optional[float] = None + +class ComputeAttributesTypeDef(BaseModel): + HostId: Optional[str] = None + State: Optional[ComputeAssetStateType] = None + InstanceFamilies: Optional[List[str]] = None + +class CancelCapacityTaskInputRequestTypeDef(BaseModel): + CapacityTaskId: str + OutpostIdentifier: str + +class CancelOrderInputRequestTypeDef(BaseModel): + OrderId: str + +class CapacityTaskFailureTypeDef(BaseModel): + Reason: str + Type: Optional[Literal["UNSUPPORTED_CAPACITY_CONFIGURATION"]] = None + +class CapacityTaskSummaryTypeDef(BaseModel): + CapacityTaskId: Optional[str] = None + OutpostId: Optional[str] = None + OrderId: Optional[str] = None + CapacityTaskStatus: Optional[CapacityTaskStatusType] = None + CreationDate: Optional[datetime] = None + CompletionDate: Optional[datetime] = None + LastModifiedDate: Optional[datetime] = None + +class EC2CapacityTypeDef(BaseModel): + Family: Optional[str] = None + MaxSize: Optional[str] = None + Quantity: Optional[str] = None + +class ConnectionDetailsTypeDef(BaseModel): + ClientPublicKey: Optional[str] = None + ServerPublicKey: Optional[str] = None + ServerEndpoint: Optional[str] = None + ClientTunnelAddress: Optional[str] = None + ServerTunnelAddress: Optional[str] = None + AllowedIps: Optional[List[str]] = None + +class LineItemRequestTypeDef(BaseModel): + CatalogItemId: Optional[str] = None + Quantity: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateOutpostInputRequestTypeDef(BaseModel): + Name: str + SiteId: str + Description: Optional[str] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + SupportedHardwareType: Optional[SupportedHardwareTypeType] = None + +class OutpostTypeDef(BaseModel): + OutpostId: Optional[str] = None + OwnerId: Optional[str] = None + OutpostArn: Optional[str] = None + SiteId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + LifeCycleStatus: Optional[str] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + SiteArn: Optional[str] = None + SupportedHardwareType: Optional[SupportedHardwareTypeType] = None + +class RackPhysicalPropertiesTypeDef(BaseModel): + PowerDrawKva: Optional[PowerDrawKvaType] = None + PowerPhase: Optional[PowerPhaseType] = None + PowerConnector: Optional[PowerConnectorType] = None + PowerFeedDrop: Optional[PowerFeedDropType] = None + UplinkGbps: Optional[UplinkGbpsType] = None + UplinkCount: Optional[UplinkCountType] = None + FiberOpticCableType: Optional[FiberOpticCableTypeType] = None + OpticalStandard: Optional[OpticalStandardType] = None + MaximumSupportedWeightLbs: Optional[MaximumSupportedWeightLbsType] = None + +class DeleteOutpostInputRequestTypeDef(BaseModel): + OutpostId: str + +class DeleteSiteInputRequestTypeDef(BaseModel): + SiteId: str + +class GetCapacityTaskInputRequestTypeDef(BaseModel): + CapacityTaskId: str + OutpostIdentifier: str + +class InstanceTypeCapacityTypeDef(BaseModel): + InstanceType: str + Count: int + +class GetCatalogItemInputRequestTypeDef(BaseModel): + CatalogItemId: str + +class GetConnectionRequestRequestTypeDef(BaseModel): + ConnectionId: str + +class GetOrderInputRequestTypeDef(BaseModel): + OrderId: str + +class GetOutpostInputRequestTypeDef(BaseModel): + OutpostId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetOutpostInstanceTypesInputRequestTypeDef(BaseModel): + OutpostId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class InstanceTypeItemTypeDef(BaseModel): + InstanceType: Optional[str] = None + +class GetOutpostSupportedInstanceTypesInputRequestTypeDef(BaseModel): + OutpostIdentifier: str + OrderId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetSiteAddressInputRequestTypeDef(BaseModel): + SiteId: str + AddressType: AddressTypeType + +class GetSiteInputRequestTypeDef(BaseModel): + SiteId: str + +class LineItemAssetInformationTypeDef(BaseModel): + AssetId: Optional[str] = None + MacAddressList: Optional[List[str]] = None + +class ShipmentInformationTypeDef(BaseModel): + ShipmentTrackingNumber: Optional[str] = None + ShipmentCarrier: Optional[ShipmentCarrierType] = None + +class ListAssetsInputRequestTypeDef(BaseModel): + OutpostIdentifier: str + HostIdFilter: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + StatusFilter: Optional[Sequence[AssetStateType]] = None + +class ListCapacityTasksInputRequestTypeDef(BaseModel): + OutpostIdentifierFilter: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + CapacityTaskStatusFilter: Optional[Sequence[CapacityTaskStatusType]] = None + +class ListCatalogItemsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ItemClassFilter: Optional[Sequence[CatalogItemClassType]] = None + SupportedStorageFilter: Optional[Sequence[SupportedStorageEnumType]] = None + EC2FamilyFilter: Optional[Sequence[str]] = None + +class ListOrdersInputRequestTypeDef(BaseModel): + OutpostIdentifierFilter: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OrderSummaryTypeDef(BaseModel): + OutpostId: Optional[str] = None + OrderId: Optional[str] = None + OrderType: Optional[OrderTypeType] = None + Status: Optional[OrderStatusType] = None + LineItemCountsByStatus: Optional[Dict[LineItemStatusType, int]] = None + OrderSubmissionDate: Optional[datetime] = None + OrderFulfilledDate: Optional[datetime] = None + +class ListOutpostsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + LifeCycleStatusFilter: Optional[Sequence[str]] = None + AvailabilityZoneFilter: Optional[Sequence[str]] = None + AvailabilityZoneIdFilter: Optional[Sequence[str]] = None + +class ListSitesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + OperatingAddressCountryCodeFilter: Optional[Sequence[str]] = None + OperatingAddressStateOrRegionFilter: Optional[Sequence[str]] = None + OperatingAddressCityFilter: Optional[Sequence[str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class StartConnectionRequestRequestTypeDef(BaseModel): + AssetId: str + ClientPublicKey: str + NetworkInterfaceDeviceIndex: int + DeviceSerialNumber: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateOutpostInputRequestTypeDef(BaseModel): + OutpostId: str + Name: Optional[str] = None + Description: Optional[str] = None + SupportedHardwareType: Optional[SupportedHardwareTypeType] = None + +class UpdateSiteInputRequestTypeDef(BaseModel): + SiteId: str + Name: Optional[str] = None + Description: Optional[str] = None + Notes: Optional[str] = None + +class UpdateSiteRackPhysicalPropertiesInputRequestTypeDef(BaseModel): + SiteId: str + PowerDrawKva: Optional[PowerDrawKvaType] = None + PowerPhase: Optional[PowerPhaseType] = None + PowerConnector: Optional[PowerConnectorType] = None + PowerFeedDrop: Optional[PowerFeedDropType] = None + UplinkGbps: Optional[UplinkGbpsType] = None + UplinkCount: Optional[UplinkCountType] = None + FiberOpticCableType: Optional[FiberOpticCableTypeType] = None + OpticalStandard: Optional[OpticalStandardType] = None + MaximumSupportedWeightLbs: Optional[MaximumSupportedWeightLbsType] = None + +class UpdateSiteAddressInputRequestTypeDef(BaseModel): + SiteId: str + AddressType: AddressTypeType + Address: AddressTypeDef + +class AssetInfoTypeDef(BaseModel): + AssetId: Optional[str] = None + RackId: Optional[str] = None + AssetType: Optional[Literal["COMPUTE"]] = None + ComputeAttributes: Optional[ComputeAttributesTypeDef] = None + AssetLocation: Optional[AssetLocationTypeDef] = None + +class CatalogItemTypeDef(BaseModel): + CatalogItemId: Optional[str] = None + ItemStatus: Optional[CatalogItemStatusType] = None + EC2Capacities: Optional[List[EC2CapacityTypeDef]] = None + PowerKva: Optional[float] = None + WeightLbs: Optional[int] = None + SupportedUplinkGbps: Optional[List[int]] = None + SupportedStorage: Optional[List[SupportedStorageEnumType]] = None + +class CreateOrderInputRequestTypeDef(BaseModel): + OutpostIdentifier: str + LineItems: Sequence[LineItemRequestTypeDef] + PaymentOption: PaymentOptionType + PaymentTerm: Optional[PaymentTermType] = None + +class GetConnectionResponseTypeDef(BaseModel): + ConnectionId: str + ConnectionDetails: ConnectionDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSiteAddressOutputTypeDef(BaseModel): + SiteId: str + AddressType: AddressTypeType + Address: AddressTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCapacityTasksOutputTypeDef(BaseModel): + CapacityTasks: List[CapacityTaskSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartConnectionResponseTypeDef(BaseModel): + ConnectionId: str + UnderlayIpAddress: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSiteAddressOutputTypeDef(BaseModel): + AddressType: AddressTypeType + Address: AddressTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOutpostOutputTypeDef(BaseModel): + Outpost: OutpostTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOutpostOutputTypeDef(BaseModel): + Outpost: OutpostTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOutpostsOutputTypeDef(BaseModel): + Outposts: List[OutpostTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateOutpostOutputTypeDef(BaseModel): + Outpost: OutpostTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSiteInputRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + Notes: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + OperatingAddress: Optional[AddressTypeDef] = None + ShippingAddress: Optional[AddressTypeDef] = None + RackPhysicalProperties: Optional[RackPhysicalPropertiesTypeDef] = None + +class SiteTypeDef(BaseModel): + SiteId: Optional[str] = None + AccountId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + SiteArn: Optional[str] = None + Notes: Optional[str] = None + OperatingAddressCountryCode: Optional[str] = None + OperatingAddressStateOrRegion: Optional[str] = None + OperatingAddressCity: Optional[str] = None + RackPhysicalProperties: Optional[RackPhysicalPropertiesTypeDef] = None + +class GetCapacityTaskOutputTypeDef(BaseModel): + CapacityTaskId: str + OutpostId: str + OrderId: str + RequestedInstancePools: List[InstanceTypeCapacityTypeDef] + DryRun: bool + CapacityTaskStatus: CapacityTaskStatusType + Failed: CapacityTaskFailureTypeDef + CreationDate: datetime + CompletionDate: datetime + LastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartCapacityTaskInputRequestTypeDef(BaseModel): + OutpostIdentifier: str + OrderId: str + InstancePools: Sequence[InstanceTypeCapacityTypeDef] + DryRun: Optional[bool] = None + +class StartCapacityTaskOutputTypeDef(BaseModel): + CapacityTaskId: str + OutpostId: str + OrderId: str + RequestedInstancePools: List[InstanceTypeCapacityTypeDef] + DryRun: bool + CapacityTaskStatus: CapacityTaskStatusType + Failed: CapacityTaskFailureTypeDef + CreationDate: datetime + CompletionDate: datetime + LastModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetOutpostInstanceTypesInputGetOutpostInstanceTypesPaginateTypeDef(BaseModel): + OutpostId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetOutpostSupportedInstanceTypesInputGetOutpostSupportedInstanceTypesPaginateTypeDef(BaseModel): + OutpostIdentifier: str + OrderId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetsInputListAssetsPaginateTypeDef(BaseModel): + OutpostIdentifier: str + HostIdFilter: Optional[Sequence[str]] = None + StatusFilter: Optional[Sequence[AssetStateType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCapacityTasksInputListCapacityTasksPaginateTypeDef(BaseModel): + OutpostIdentifierFilter: Optional[str] = None + CapacityTaskStatusFilter: Optional[Sequence[CapacityTaskStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCatalogItemsInputListCatalogItemsPaginateTypeDef(BaseModel): + ItemClassFilter: Optional[Sequence[CatalogItemClassType]] = None + SupportedStorageFilter: Optional[Sequence[SupportedStorageEnumType]] = None + EC2FamilyFilter: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrdersInputListOrdersPaginateTypeDef(BaseModel): + OutpostIdentifierFilter: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOutpostsInputListOutpostsPaginateTypeDef(BaseModel): + LifeCycleStatusFilter: Optional[Sequence[str]] = None + AvailabilityZoneFilter: Optional[Sequence[str]] = None + AvailabilityZoneIdFilter: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSitesInputListSitesPaginateTypeDef(BaseModel): + OperatingAddressCountryCodeFilter: Optional[Sequence[str]] = None + OperatingAddressStateOrRegionFilter: Optional[Sequence[str]] = None + OperatingAddressCityFilter: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetOutpostInstanceTypesOutputTypeDef(BaseModel): + InstanceTypes: List[InstanceTypeItemTypeDef] + NextToken: str + OutpostId: str + OutpostArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetOutpostSupportedInstanceTypesOutputTypeDef(BaseModel): + InstanceTypes: List[InstanceTypeItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LineItemTypeDef(BaseModel): + CatalogItemId: Optional[str] = None + LineItemId: Optional[str] = None + Quantity: Optional[int] = None + Status: Optional[LineItemStatusType] = None + ShipmentInformation: Optional[ShipmentInformationTypeDef] = None + AssetInformationList: Optional[List[LineItemAssetInformationTypeDef]] = None + PreviousLineItemId: Optional[str] = None + PreviousOrderId: Optional[str] = None + +class ListOrdersOutputTypeDef(BaseModel): + Orders: List[OrderSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssetsOutputTypeDef(BaseModel): + Assets: List[AssetInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCatalogItemOutputTypeDef(BaseModel): + CatalogItem: CatalogItemTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCatalogItemsOutputTypeDef(BaseModel): + CatalogItems: List[CatalogItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSiteOutputTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSiteOutputTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSitesOutputTypeDef(BaseModel): + Sites: List[SiteTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSiteOutputTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSiteRackPhysicalPropertiesOutputTypeDef(BaseModel): + Site: SiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OrderTypeDef(BaseModel): + OutpostId: Optional[str] = None + OrderId: Optional[str] = None + Status: Optional[OrderStatusType] = None + LineItems: Optional[List[LineItemTypeDef]] = None + PaymentOption: Optional[PaymentOptionType] = None + OrderSubmissionDate: Optional[datetime] = None + OrderFulfilledDate: Optional[datetime] = None + PaymentTerm: Optional[PaymentTermType] = None + OrderType: Optional[OrderTypeType] = None + +class CreateOrderOutputTypeDef(BaseModel): + Order: OrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOrderOutputTypeDef(BaseModel): + Order: OrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/outposts_constants.py b/aws_resource_validator/pydantic_models/outposts_constants.py new file mode 100644 index 00000000..536477bb --- /dev/null +++ b/aws_resource_validator/pydantic_models/outposts_constants.py @@ -0,0 +1,499 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AddressTypeType = Literal["OPERATING_ADDRESS", "SHIPPING_ADDRESS"] +AssetStateType = Literal["ACTIVE", "ISOLATED", "RETIRING"] +AssetTypeType = Literal["COMPUTE"] +CapacityTaskFailureTypeType = Literal["UNSUPPORTED_CAPACITY_CONFIGURATION"] +CapacityTaskStatusType = Literal["CANCELLED", "COMPLETED", "FAILED", "IN_PROGRESS", "REQUESTED"] +CatalogItemClassType = Literal["RACK", "SERVER"] +CatalogItemStatusType = Literal["AVAILABLE", "DISCONTINUED"] +ComputeAssetStateType = Literal["ACTIVE", "ISOLATED", "RETIRING"] +FiberOpticCableTypeType = Literal["MULTI_MODE", "SINGLE_MODE"] +GetOutpostInstanceTypesPaginatorName = Literal["get_outpost_instance_types"] +GetOutpostSupportedInstanceTypesPaginatorName = Literal["get_outpost_supported_instance_types"] +LineItemStatusType = Literal["BUILDING", + "CANCELLED", + "DELIVERED", + "ERROR", + "INSTALLED", + "INSTALLING", + "PREPARING", + "REPLACED", + "SHIPPED",] +ListAssetsPaginatorName = Literal["list_assets"] +ListCapacityTasksPaginatorName = Literal["list_capacity_tasks"] +ListCatalogItemsPaginatorName = Literal["list_catalog_items"] +ListOrdersPaginatorName = Literal["list_orders"] +ListOutpostsPaginatorName = Literal["list_outposts"] +ListSitesPaginatorName = Literal["list_sites"] +MaximumSupportedWeightLbsType = Literal["MAX_1400_LBS", "MAX_1600_LBS", "MAX_1800_LBS", "MAX_2000_LBS", "NO_LIMIT"] +OpticalStandardType = Literal["OPTIC_1000BASE_LX", + "OPTIC_1000BASE_SX", + "OPTIC_100GBASE_CWDM4", + "OPTIC_100GBASE_LR4", + "OPTIC_100GBASE_SR4", + "OPTIC_100G_PSM4_MSA", + "OPTIC_10GBASE_IR", + "OPTIC_10GBASE_LR", + "OPTIC_10GBASE_SR", + "OPTIC_40GBASE_ESR", + "OPTIC_40GBASE_IR4_LR4L", + "OPTIC_40GBASE_LR4", + "OPTIC_40GBASE_SR",] +OrderStatusType = Literal["CANCELLED", + "COMPLETED", + "ERROR", + "FULFILLED", + "INSTALLING", + "IN_PROGRESS", + "PENDING", + "PREPARING", + "PROCESSING", + "RECEIVED",] +OrderTypeType = Literal["OUTPOST", "REPLACEMENT"] +PaymentOptionType = Literal["ALL_UPFRONT", "NO_UPFRONT", "PARTIAL_UPFRONT"] +PaymentTermType = Literal["ONE_YEAR", "THREE_YEARS"] +PowerConnectorType = Literal["AH530P7W", "AH532P6W", "IEC309", "L6_30P"] +PowerDrawKvaType = Literal["POWER_10_KVA", "POWER_15_KVA", "POWER_30_KVA", "POWER_5_KVA"] +PowerFeedDropType = Literal["ABOVE_RACK", "BELOW_RACK"] +PowerPhaseType = Literal["SINGLE_PHASE", "THREE_PHASE"] +ShipmentCarrierType = Literal["DBS", "DHL", "EXPEDITORS", "FEDEX", "UPS"] +SupportedHardwareTypeType = Literal["RACK", "SERVER"] +SupportedStorageEnumType = Literal["EBS", "S3"] +UplinkCountType = Literal["UPLINK_COUNT_1", + "UPLINK_COUNT_12", + "UPLINK_COUNT_16", + "UPLINK_COUNT_2", + "UPLINK_COUNT_3", + "UPLINK_COUNT_4", + "UPLINK_COUNT_5", + "UPLINK_COUNT_6", + "UPLINK_COUNT_7", + "UPLINK_COUNT_8",] +UplinkGbpsType = Literal["UPLINK_100G", "UPLINK_10G", "UPLINK_1G", "UPLINK_40G"] +OutpostsServiceName = Literal["outposts"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_outpost_instance_types", + "get_outpost_supported_instance_types", + "list_assets", + "list_capacity_tasks", + "list_catalog_items", + "list_orders", + "list_outposts", + "list_sites",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/panorama_classes.py b/aws_resource_validator/pydantic_models/panorama_classes.py new file mode 100644 index 00000000..64e3f71e --- /dev/null +++ b/aws_resource_validator/pydantic_models/panorama_classes.py @@ -0,0 +1,621 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.panorama_constants import * + +class AlternateSoftwareMetadataTypeDef(BaseModel): + Version: Optional[str] = None + +class ReportedRuntimeContextStateTypeDef(BaseModel): + DesiredState: DesiredStateType + DeviceReportedStatus: DeviceReportedStatusType + DeviceReportedTime: datetime + RuntimeContextName: str + +class ManifestOverridesPayloadTypeDef(BaseModel): + PayloadData: Optional[str] = None + +class ManifestPayloadTypeDef(BaseModel): + PayloadData: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class JobTypeDef(BaseModel): + DeviceId: Optional[str] = None + JobId: Optional[str] = None + +class JobResourceTagsTypeDef(BaseModel): + ResourceType: Literal["PACKAGE"] + Tags: Mapping[str, str] + +class CreatePackageRequestRequestTypeDef(BaseModel): + PackageName: str + Tags: Optional[Mapping[str, str]] = None + +class StorageLocationTypeDef(BaseModel): + BinaryPrefixLocation: str + Bucket: str + GeneratedPrefixLocation: str + ManifestPrefixLocation: str + RepoPrefixLocation: str + +class DeleteDeviceRequestRequestTypeDef(BaseModel): + DeviceId: str + +class DeletePackageRequestRequestTypeDef(BaseModel): + PackageId: str + ForceDelete: Optional[bool] = None + +class DeregisterPackageVersionRequestRequestTypeDef(BaseModel): + PackageId: str + PackageVersion: str + PatchVersion: str + OwnerAccount: Optional[str] = None + UpdatedLatestPatchVersion: Optional[str] = None + +class DescribeApplicationInstanceDetailsRequestRequestTypeDef(BaseModel): + ApplicationInstanceId: str + +class DescribeApplicationInstanceRequestRequestTypeDef(BaseModel): + ApplicationInstanceId: str + +class DescribeDeviceJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeDeviceRequestRequestTypeDef(BaseModel): + DeviceId: str + +class LatestDeviceJobTypeDef(BaseModel): + ImageVersion: Optional[str] = None + JobType: Optional[JobTypeType] = None + Status: Optional[UpdateProgressType] = None + +class DescribeNodeFromTemplateJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeNodeRequestRequestTypeDef(BaseModel): + NodeId: str + OwnerAccount: Optional[str] = None + +class DescribePackageImportJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribePackageRequestRequestTypeDef(BaseModel): + PackageId: str + +class DescribePackageVersionRequestRequestTypeDef(BaseModel): + PackageId: str + PackageVersion: str + OwnerAccount: Optional[str] = None + PatchVersion: Optional[str] = None + +class OTAJobConfigTypeDef(BaseModel): + ImageVersion: str + AllowMajorVersionUpdate: Optional[bool] = None + +class DeviceJobTypeDef(BaseModel): + CreatedTime: Optional[datetime] = None + DeviceId: Optional[str] = None + DeviceName: Optional[str] = None + JobId: Optional[str] = None + JobType: Optional[JobTypeType] = None + +class StaticIpConnectionInfoTypeDef(BaseModel): + DefaultGateway: str + Dns: List[str] + IpAddress: str + Mask: str + +class EthernetStatusTypeDef(BaseModel): + ConnectionStatus: Optional[NetworkConnectionStatusType] = None + HwAddress: Optional[str] = None + IpAddress: Optional[str] = None + +class ListApplicationInstanceDependenciesRequestRequestTypeDef(BaseModel): + ApplicationInstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PackageObjectTypeDef(BaseModel): + Name: str + PackageVersion: str + PatchVersion: str + +class ListApplicationInstanceNodeInstancesRequestRequestTypeDef(BaseModel): + ApplicationInstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NodeInstanceTypeDef(BaseModel): + CurrentStatus: NodeInstanceStatusType + NodeInstanceId: str + NodeId: Optional[str] = None + NodeName: Optional[str] = None + PackageName: Optional[str] = None + PackagePatchVersion: Optional[str] = None + PackageVersion: Optional[str] = None + +class ListApplicationInstancesRequestRequestTypeDef(BaseModel): + DeviceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + StatusFilter: Optional[StatusFilterType] = None + +class ListDevicesJobsRequestRequestTypeDef(BaseModel): + DeviceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDevicesRequestRequestTypeDef(BaseModel): + DeviceAggregatedStatusFilter: Optional[DeviceAggregatedStatusType] = None + MaxResults: Optional[int] = None + NameFilter: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[ListDevicesSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListNodeFromTemplateJobsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NodeFromTemplateJobTypeDef(BaseModel): + CreatedTime: Optional[datetime] = None + JobId: Optional[str] = None + NodeName: Optional[str] = None + Status: Optional[NodeFromTemplateJobStatusType] = None + StatusMessage: Optional[str] = None + TemplateType: Optional[Literal["RTSP_CAMERA_STREAM"]] = None + +class ListNodesRequestRequestTypeDef(BaseModel): + Category: Optional[NodeCategoryType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + OwnerAccount: Optional[str] = None + PackageName: Optional[str] = None + PackageVersion: Optional[str] = None + PatchVersion: Optional[str] = None + +class NodeTypeDef(BaseModel): + Category: NodeCategoryType + CreatedTime: datetime + Name: str + NodeId: str + PackageId: str + PackageName: str + PackageVersion: str + PatchVersion: str + Description: Optional[str] = None + OwnerAccount: Optional[str] = None + PackageArn: Optional[str] = None + +class ListPackageImportJobsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PackageImportJobTypeDef(BaseModel): + CreatedTime: Optional[datetime] = None + JobId: Optional[str] = None + JobType: Optional[PackageImportJobTypeType] = None + LastUpdatedTime: Optional[datetime] = None + Status: Optional[PackageImportJobStatusType] = None + StatusMessage: Optional[str] = None + +class ListPackagesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PackageListItemTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + PackageId: Optional[str] = None + PackageName: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class NtpPayloadTypeDef(BaseModel): + NtpServers: List[str] + +class NtpStatusTypeDef(BaseModel): + ConnectionStatus: Optional[NetworkConnectionStatusType] = None + IpAddress: Optional[str] = None + NtpServerName: Optional[str] = None + +class NodeInputPortTypeDef(BaseModel): + DefaultValue: Optional[str] = None + Description: Optional[str] = None + MaxConnections: Optional[int] = None + Name: Optional[str] = None + Type: Optional[PortTypeType] = None + +class NodeOutputPortTypeDef(BaseModel): + Description: Optional[str] = None + Name: Optional[str] = None + Type: Optional[PortTypeType] = None + +class NodeSignalTypeDef(BaseModel): + NodeInstanceId: str + Signal: NodeSignalValueType + +class OutPutS3LocationTypeDef(BaseModel): + BucketName: str + ObjectKey: str + +class PackageVersionOutputConfigTypeDef(BaseModel): + PackageName: str + PackageVersion: str + MarkLatest: Optional[bool] = None + +class S3LocationTypeDef(BaseModel): + BucketName: str + ObjectKey: str + Region: Optional[str] = None + +class RegisterPackageVersionRequestRequestTypeDef(BaseModel): + PackageId: str + PackageVersion: str + PatchVersion: str + MarkLatest: Optional[bool] = None + OwnerAccount: Optional[str] = None + +class RemoveApplicationInstanceRequestRequestTypeDef(BaseModel): + ApplicationInstanceId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDeviceMetadataRequestRequestTypeDef(BaseModel): + DeviceId: str + Description: Optional[str] = None + +class ApplicationInstanceTypeDef(BaseModel): + ApplicationInstanceId: Optional[str] = None + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + DefaultRuntimeContextDevice: Optional[str] = None + DefaultRuntimeContextDeviceName: Optional[str] = None + Description: Optional[str] = None + HealthStatus: Optional[ApplicationInstanceHealthStatusType] = None + Name: Optional[str] = None + RuntimeContextStates: Optional[List[ReportedRuntimeContextStateTypeDef]] = None + Status: Optional[ApplicationInstanceStatusType] = None + StatusDescription: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class CreateApplicationInstanceRequestRequestTypeDef(BaseModel): + DefaultRuntimeContextDevice: str + ManifestPayload: ManifestPayloadTypeDef + ApplicationInstanceIdToReplace: Optional[str] = None + Description: Optional[str] = None + ManifestOverridesPayload: Optional[ManifestOverridesPayloadTypeDef] = None + Name: Optional[str] = None + RuntimeRoleArn: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateApplicationInstanceResponseTypeDef(BaseModel): + ApplicationInstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNodeFromTemplateJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePackageImportJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDeviceResponseTypeDef(BaseModel): + DeviceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationInstanceDetailsResponseTypeDef(BaseModel): + ApplicationInstanceId: str + ApplicationInstanceIdToReplace: str + CreatedTime: datetime + DefaultRuntimeContextDevice: str + Description: str + ManifestOverridesPayload: ManifestOverridesPayloadTypeDef + ManifestPayload: ManifestPayloadTypeDef + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationInstanceResponseTypeDef(BaseModel): + ApplicationInstanceId: str + ApplicationInstanceIdToReplace: str + Arn: str + CreatedTime: datetime + DefaultRuntimeContextDevice: str + DefaultRuntimeContextDeviceName: str + Description: str + HealthStatus: ApplicationInstanceHealthStatusType + LastUpdatedTime: datetime + Name: str + RuntimeContextStates: List[ReportedRuntimeContextStateTypeDef] + RuntimeRoleArn: str + Status: ApplicationInstanceStatusType + StatusDescription: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeviceJobResponseTypeDef(BaseModel): + CreatedTime: datetime + DeviceArn: str + DeviceId: str + DeviceName: str + DeviceType: DeviceTypeType + ImageVersion: str + JobId: str + JobType: JobTypeType + Status: UpdateProgressType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackageVersionResponseTypeDef(BaseModel): + IsLatestPatch: bool + OwnerAccount: str + PackageArn: str + PackageId: str + PackageName: str + PackageVersion: str + PatchVersion: str + RegisteredTime: datetime + Status: PackageVersionStatusType + StatusDescription: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionDeviceResponseTypeDef(BaseModel): + Arn: str + Certificates: bytes + DeviceId: str + IotThingName: str + Status: DeviceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class SignalApplicationInstanceNodeInstancesResponseTypeDef(BaseModel): + ApplicationInstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDeviceMetadataResponseTypeDef(BaseModel): + DeviceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobForDevicesResponseTypeDef(BaseModel): + Jobs: List[JobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNodeFromTemplateJobRequestRequestTypeDef(BaseModel): + NodeName: str + OutputPackageName: str + OutputPackageVersion: str + TemplateParameters: Mapping[str, str] + TemplateType: Literal["RTSP_CAMERA_STREAM"] + JobTags: Optional[Sequence[JobResourceTagsTypeDef]] = None + NodeDescription: Optional[str] = None + +class DescribeNodeFromTemplateJobResponseTypeDef(BaseModel): + CreatedTime: datetime + JobId: str + JobTags: List[JobResourceTagsTypeDef] + LastUpdatedTime: datetime + NodeDescription: str + NodeName: str + OutputPackageName: str + OutputPackageVersion: str + Status: NodeFromTemplateJobStatusType + StatusMessage: str + TemplateParameters: Dict[str, str] + TemplateType: Literal["RTSP_CAMERA_STREAM"] + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePackageResponseTypeDef(BaseModel): + Arn: str + PackageId: str + StorageLocation: StorageLocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePackageResponseTypeDef(BaseModel): + Arn: str + CreatedTime: datetime + PackageId: str + PackageName: str + ReadAccessPrincipalArns: List[str] + StorageLocation: StorageLocationTypeDef + Tags: Dict[str, str] + WriteAccessPrincipalArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeviceTypeDef(BaseModel): + Brand: Optional[DeviceBrandType] = None + CreatedTime: Optional[datetime] = None + CurrentSoftware: Optional[str] = None + Description: Optional[str] = None + DeviceAggregatedStatus: Optional[DeviceAggregatedStatusType] = None + DeviceId: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + LatestDeviceJob: Optional[LatestDeviceJobTypeDef] = None + LeaseExpirationTime: Optional[datetime] = None + Name: Optional[str] = None + ProvisioningStatus: Optional[DeviceStatusType] = None + Tags: Optional[Dict[str, str]] = None + Type: Optional[DeviceTypeType] = None + +class DeviceJobConfigTypeDef(BaseModel): + OTAJobConfig: Optional[OTAJobConfigTypeDef] = None + +class ListDevicesJobsResponseTypeDef(BaseModel): + DeviceJobs: List[DeviceJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EthernetPayloadTypeDef(BaseModel): + ConnectionType: ConnectionTypeType + StaticIpConnectionInfo: Optional[StaticIpConnectionInfoTypeDef] = None + +class ListApplicationInstanceDependenciesResponseTypeDef(BaseModel): + NextToken: str + PackageObjects: List[PackageObjectTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationInstanceNodeInstancesResponseTypeDef(BaseModel): + NextToken: str + NodeInstances: List[NodeInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListNodeFromTemplateJobsResponseTypeDef(BaseModel): + NextToken: str + NodeFromTemplateJobs: List[NodeFromTemplateJobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListNodesResponseTypeDef(BaseModel): + NextToken: str + Nodes: List[NodeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackageImportJobsResponseTypeDef(BaseModel): + NextToken: str + PackageImportJobs: List[PackageImportJobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPackagesResponseTypeDef(BaseModel): + NextToken: str + Packages: List[PackageListItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkStatusTypeDef(BaseModel): + Ethernet0Status: Optional[EthernetStatusTypeDef] = None + Ethernet1Status: Optional[EthernetStatusTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + NtpStatus: Optional[NtpStatusTypeDef] = None + +class NodeInterfaceTypeDef(BaseModel): + Inputs: List[NodeInputPortTypeDef] + Outputs: List[NodeOutputPortTypeDef] + +class SignalApplicationInstanceNodeInstancesRequestRequestTypeDef(BaseModel): + ApplicationInstanceId: str + NodeSignals: Sequence[NodeSignalTypeDef] + +class PackageImportJobOutputTypeDef(BaseModel): + OutputS3Location: OutPutS3LocationTypeDef + PackageId: str + PackageVersion: str + PatchVersion: str + +class PackageImportJobOutputConfigTypeDef(BaseModel): + PackageVersionOutputConfig: Optional[PackageVersionOutputConfigTypeDef] = None + +class PackageVersionInputConfigTypeDef(BaseModel): + S3Location: S3LocationTypeDef + +class ListApplicationInstancesResponseTypeDef(BaseModel): + ApplicationInstances: List[ApplicationInstanceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicesResponseTypeDef(BaseModel): + Devices: List[DeviceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobForDevicesRequestRequestTypeDef(BaseModel): + DeviceIds: Sequence[str] + JobType: JobTypeType + DeviceJobConfig: Optional[DeviceJobConfigTypeDef] = None + +class NetworkPayloadTypeDef(BaseModel): + Ethernet0: Optional[EthernetPayloadTypeDef] = None + Ethernet1: Optional[EthernetPayloadTypeDef] = None + Ntp: Optional[NtpPayloadTypeDef] = None + +class DescribeNodeResponseTypeDef(BaseModel): + AssetName: str + Category: NodeCategoryType + CreatedTime: datetime + Description: str + LastUpdatedTime: datetime + Name: str + NodeId: str + NodeInterface: NodeInterfaceTypeDef + OwnerAccount: str + PackageArn: str + PackageId: str + PackageName: str + PackageVersion: str + PatchVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class PackageImportJobInputConfigTypeDef(BaseModel): + PackageVersionInputConfig: Optional[PackageVersionInputConfigTypeDef] = None + +class DescribeDeviceResponseTypeDef(BaseModel): + AlternateSoftwares: List[AlternateSoftwareMetadataTypeDef] + Arn: str + Brand: DeviceBrandType + CreatedTime: datetime + CurrentNetworkingStatus: NetworkStatusTypeDef + CurrentSoftware: str + Description: str + DeviceAggregatedStatus: DeviceAggregatedStatusType + DeviceConnectionStatus: DeviceConnectionStatusType + DeviceId: str + LatestAlternateSoftware: str + LatestDeviceJob: LatestDeviceJobTypeDef + LatestSoftware: str + LeaseExpirationTime: datetime + Name: str + NetworkingConfiguration: NetworkPayloadTypeDef + ProvisioningStatus: DeviceStatusType + SerialNumber: str + Tags: Dict[str, str] + Type: DeviceTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionDeviceRequestRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + NetworkingConfiguration: Optional[NetworkPayloadTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreatePackageImportJobRequestRequestTypeDef(BaseModel): + ClientToken: str + InputConfig: PackageImportJobInputConfigTypeDef + JobType: PackageImportJobTypeType + OutputConfig: PackageImportJobOutputConfigTypeDef + JobTags: Optional[Sequence[JobResourceTagsTypeDef]] = None + +class DescribePackageImportJobResponseTypeDef(BaseModel): + ClientToken: str + CreatedTime: datetime + InputConfig: PackageImportJobInputConfigTypeDef + JobId: str + JobTags: List[JobResourceTagsTypeDef] + JobType: PackageImportJobTypeType + LastUpdatedTime: datetime + Output: PackageImportJobOutputTypeDef + OutputConfig: PackageImportJobOutputConfigTypeDef + Status: PackageImportJobStatusType + StatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/panorama_constants.py b/aws_resource_validator/pydantic_models/panorama_constants.py new file mode 100644 index 00000000..09e61c62 --- /dev/null +++ b/aws_resource_validator/pydantic_models/panorama_constants.py @@ -0,0 +1,449 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationInstanceHealthStatusType = Literal["ERROR", "NOT_AVAILABLE", "RUNNING"] +ApplicationInstanceStatusType = Literal["DEPLOYMENT_ERROR", + "DEPLOYMENT_FAILED", + "DEPLOYMENT_IN_PROGRESS", + "DEPLOYMENT_PENDING", + "DEPLOYMENT_REQUESTED", + "DEPLOYMENT_SUCCEEDED", + "REMOVAL_FAILED", + "REMOVAL_IN_PROGRESS", + "REMOVAL_PENDING", + "REMOVAL_REQUESTED", + "REMOVAL_SUCCEEDED",] +ConnectionTypeType = Literal["DHCP", "STATIC_IP"] +DesiredStateType = Literal["REMOVED", "RUNNING", "STOPPED"] +DeviceAggregatedStatusType = Literal["AWAITING_PROVISIONING", + "DELETING", + "ERROR", + "FAILED", + "LEASE_EXPIRED", + "OFFLINE", + "ONLINE", + "PENDING", + "REBOOTING", + "UPDATE_NEEDED",] +DeviceBrandType = Literal["AWS_PANORAMA", "LENOVO"] +DeviceConnectionStatusType = Literal["AWAITING_CREDENTIALS", "ERROR", "NOT_AVAILABLE", "OFFLINE", "ONLINE"] +DeviceReportedStatusType = Literal["INSTALL_ERROR", + "INSTALL_IN_PROGRESS", + "LAUNCHED", + "LAUNCH_ERROR", + "REMOVAL_FAILED", + "REMOVAL_IN_PROGRESS", + "RUNNING", + "STARTING", + "STOPPED", + "STOPPING", + "STOP_ERROR",] +DeviceStatusType = Literal["AWAITING_PROVISIONING", "DELETING", "ERROR", "FAILED", "PENDING", "SUCCEEDED"] +DeviceTypeType = Literal["PANORAMA_APPLIANCE", "PANORAMA_APPLIANCE_DEVELOPER_KIT"] +JobResourceTypeType = Literal["PACKAGE"] +JobTypeType = Literal["OTA", "REBOOT"] +ListDevicesSortByType = Literal["CREATED_TIME", "DEVICE_AGGREGATED_STATUS", "DEVICE_ID", "NAME"] +NetworkConnectionStatusType = Literal["CONNECTED", "CONNECTING", "NOT_CONNECTED"] +NodeCategoryType = Literal["BUSINESS_LOGIC", "MEDIA_SINK", "MEDIA_SOURCE", "ML_MODEL"] +NodeFromTemplateJobStatusType = Literal["FAILED", "PENDING", "SUCCEEDED"] +NodeInstanceStatusType = Literal["ERROR", "NOT_AVAILABLE", "PAUSED", "RUNNING"] +NodeSignalValueType = Literal["PAUSE", "RESUME"] +PackageImportJobStatusType = Literal["FAILED", "PENDING", "SUCCEEDED"] +PackageImportJobTypeType = Literal["MARKETPLACE_NODE_PACKAGE_VERSION", "NODE_PACKAGE_VERSION"] +PackageVersionStatusType = Literal["DELETING", "FAILED", "REGISTER_COMPLETED", "REGISTER_PENDING"] +PortTypeType = Literal["BOOLEAN", "FLOAT32", "INT32", "MEDIA", "STRING"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +StatusFilterType = Literal["DEPLOYMENT_ERROR", + "DEPLOYMENT_FAILED", + "DEPLOYMENT_SUCCEEDED", + "PROCESSING_DEPLOYMENT", + "PROCESSING_REMOVAL", + "REMOVAL_FAILED", + "REMOVAL_SUCCEEDED",] +TemplateTypeType = Literal["RTSP_CAMERA_STREAM"] +UpdateProgressType = Literal["COMPLETED", "DOWNLOADING", "FAILED", "IN_PROGRESS", "PENDING", "REBOOTING", "VERIFYING"] +PanoramaServiceName = Literal["panorama"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/payment_cryptography_classes.py b/aws_resource_validator/pydantic_models/payment_cryptography_classes.py new file mode 100644 index 00000000..aeff912b --- /dev/null +++ b/aws_resource_validator/pydantic_models/payment_cryptography_classes.py @@ -0,0 +1,322 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.payment_cryptography_constants import * + +class AliasTypeDef(BaseModel): + AliasName: str + KeyArn: Optional[str] = None + +class CreateAliasInputRequestTypeDef(BaseModel): + AliasName: str + KeyArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class DeleteAliasInputRequestTypeDef(BaseModel): + AliasName: str + +class DeleteKeyInputRequestTypeDef(BaseModel): + KeyIdentifier: str + DeleteKeyInDays: Optional[int] = None + +class ExportDukptInitialKeyTypeDef(BaseModel): + KeySerialNumber: str + +class ExportKeyCryptogramTypeDef(BaseModel): + CertificateAuthorityPublicKeyIdentifier: str + WrappingKeyCertificate: str + WrappingSpec: Optional[WrappingKeySpecType] = None + +class WrappedKeyTypeDef(BaseModel): + WrappingKeyArn: str + WrappedKeyMaterialFormat: WrappedKeyMaterialFormatType + KeyMaterial: str + KeyCheckValue: Optional[str] = None + KeyCheckValueAlgorithm: Optional[KeyCheckValueAlgorithmType] = None + +class GetAliasInputRequestTypeDef(BaseModel): + AliasName: str + +class GetKeyInputRequestTypeDef(BaseModel): + KeyIdentifier: str + +class GetParametersForExportInputRequestTypeDef(BaseModel): + KeyMaterialType: KeyMaterialTypeType + SigningKeyAlgorithm: KeyAlgorithmType + +class GetParametersForImportInputRequestTypeDef(BaseModel): + KeyMaterialType: KeyMaterialTypeType + WrappingKeyAlgorithm: KeyAlgorithmType + +class GetPublicKeyCertificateInputRequestTypeDef(BaseModel): + KeyIdentifier: str + +class ImportTr31KeyBlockTypeDef(BaseModel): + WrappingKeyIdentifier: str + WrappedKeyBlock: str + +class ImportTr34KeyBlockTypeDef(BaseModel): + CertificateAuthorityPublicKeyIdentifier: str + SigningKeyCertificate: str + ImportToken: str + WrappedKeyBlock: str + KeyBlockFormat: Literal["X9_TR34_2012"] + RandomNonce: Optional[str] = None + +class KeyModesOfUseTypeDef(BaseModel): + Encrypt: Optional[bool] = None + Decrypt: Optional[bool] = None + Wrap: Optional[bool] = None + Unwrap: Optional[bool] = None + Generate: Optional[bool] = None + Sign: Optional[bool] = None + Verify: Optional[bool] = None + DeriveKey: Optional[bool] = None + NoRestrictions: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAliasesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListKeysInputRequestTypeDef(BaseModel): + KeyState: Optional[KeyStateType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RestoreKeyInputRequestTypeDef(BaseModel): + KeyIdentifier: str + +class StartKeyUsageInputRequestTypeDef(BaseModel): + KeyIdentifier: str + +class StopKeyUsageInputRequestTypeDef(BaseModel): + KeyIdentifier: str + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAliasInputRequestTypeDef(BaseModel): + AliasName: str + KeyArn: Optional[str] = None + +class CreateAliasOutputTypeDef(BaseModel): + Alias: AliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAliasOutputTypeDef(BaseModel): + Alias: AliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetParametersForExportOutputTypeDef(BaseModel): + SigningKeyCertificate: str + SigningKeyCertificateChain: str + SigningKeyAlgorithm: KeyAlgorithmType + ExportToken: str + ParametersValidUntilTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetParametersForImportOutputTypeDef(BaseModel): + WrappingKeyCertificate: str + WrappingKeyCertificateChain: str + WrappingKeyAlgorithm: KeyAlgorithmType + ImportToken: str + ParametersValidUntilTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPublicKeyCertificateOutputTypeDef(BaseModel): + KeyCertificate: str + KeyCertificateChain: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesOutputTypeDef(BaseModel): + Aliases: List[AliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateAliasOutputTypeDef(BaseModel): + Alias: AliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class ExportAttributesTypeDef(BaseModel): + ExportDukptInitialKey: Optional[ExportDukptInitialKeyTypeDef] = None + KeyCheckValueAlgorithm: Optional[KeyCheckValueAlgorithmType] = None + +class ExportKeyOutputTypeDef(BaseModel): + WrappedKey: WrappedKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KeyAttributesTypeDef(BaseModel): + KeyUsage: KeyUsageType + KeyClass: KeyClassType + KeyAlgorithm: KeyAlgorithmType + KeyModesOfUse: KeyModesOfUseTypeDef + +class KeyBlockHeadersTypeDef(BaseModel): + KeyModesOfUse: Optional[KeyModesOfUseTypeDef] = None + KeyExportability: Optional[KeyExportabilityType] = None + KeyVersion: Optional[str] = None + OptionalBlocks: Optional[Mapping[str, str]] = None + +class ListAliasesInputListAliasesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKeysInputListKeysPaginateTypeDef(BaseModel): + KeyState: Optional[KeyStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceInputListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateKeyInputRequestTypeDef(BaseModel): + KeyAttributes: KeyAttributesTypeDef + Exportable: bool + KeyCheckValueAlgorithm: Optional[KeyCheckValueAlgorithmType] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ImportKeyCryptogramTypeDef(BaseModel): + KeyAttributes: KeyAttributesTypeDef + Exportable: bool + WrappedKeyCryptogram: str + ImportToken: str + WrappingSpec: Optional[WrappingKeySpecType] = None + +class KeySummaryTypeDef(BaseModel): + KeyArn: str + KeyState: KeyStateType + KeyAttributes: KeyAttributesTypeDef + KeyCheckValue: str + Exportable: bool + Enabled: bool + +class KeyTypeDef(BaseModel): + KeyArn: str + KeyAttributes: KeyAttributesTypeDef + KeyCheckValue: str + KeyCheckValueAlgorithm: KeyCheckValueAlgorithmType + Enabled: bool + Exportable: bool + KeyState: KeyStateType + KeyOrigin: KeyOriginType + CreateTimestamp: datetime + UsageStartTimestamp: Optional[datetime] = None + UsageStopTimestamp: Optional[datetime] = None + DeletePendingTimestamp: Optional[datetime] = None + DeleteTimestamp: Optional[datetime] = None + +class RootCertificatePublicKeyTypeDef(BaseModel): + KeyAttributes: KeyAttributesTypeDef + PublicKeyCertificate: str + +class TrustedCertificatePublicKeyTypeDef(BaseModel): + KeyAttributes: KeyAttributesTypeDef + PublicKeyCertificate: str + CertificateAuthorityPublicKeyIdentifier: str + +class ExportTr31KeyBlockTypeDef(BaseModel): + WrappingKeyIdentifier: str + KeyBlockHeaders: Optional[KeyBlockHeadersTypeDef] = None + +class ExportTr34KeyBlockTypeDef(BaseModel): + CertificateAuthorityPublicKeyIdentifier: str + WrappingKeyCertificate: str + ExportToken: str + KeyBlockFormat: Literal["X9_TR34_2012"] + RandomNonce: Optional[str] = None + KeyBlockHeaders: Optional[KeyBlockHeadersTypeDef] = None + +class ListKeysOutputTypeDef(BaseModel): + Keys: List[KeySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateKeyOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKeyOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKeyOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportKeyOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreKeyOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartKeyUsageOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopKeyUsageOutputTypeDef(BaseModel): + Key: KeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportKeyMaterialTypeDef(BaseModel): + RootCertificatePublicKey: Optional[RootCertificatePublicKeyTypeDef] = None + TrustedCertificatePublicKey: Optional[TrustedCertificatePublicKeyTypeDef] = None + Tr31KeyBlock: Optional[ImportTr31KeyBlockTypeDef] = None + Tr34KeyBlock: Optional[ImportTr34KeyBlockTypeDef] = None + KeyCryptogram: Optional[ImportKeyCryptogramTypeDef] = None + +class ExportKeyMaterialTypeDef(BaseModel): + Tr31KeyBlock: Optional[ExportTr31KeyBlockTypeDef] = None + Tr34KeyBlock: Optional[ExportTr34KeyBlockTypeDef] = None + KeyCryptogram: Optional[ExportKeyCryptogramTypeDef] = None + +class ImportKeyInputRequestTypeDef(BaseModel): + KeyMaterial: ImportKeyMaterialTypeDef + KeyCheckValueAlgorithm: Optional[KeyCheckValueAlgorithmType] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ExportKeyInputRequestTypeDef(BaseModel): + KeyMaterial: ExportKeyMaterialTypeDef + ExportKeyIdentifier: str + ExportAttributes: Optional[ExportAttributesTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/payment_cryptography_constants.py b/aws_resource_validator/pydantic_models/payment_cryptography_constants.py new file mode 100644 index 00000000..847d810e --- /dev/null +++ b/aws_resource_validator/pydantic_models/payment_cryptography_constants.py @@ -0,0 +1,440 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +KeyAlgorithmType = Literal["AES_128", "AES_192", "AES_256", "RSA_2048", "RSA_3072", "RSA_4096", "TDES_2KEY", "TDES_3KEY"] +KeyCheckValueAlgorithmType = Literal["ANSI_X9_24", "CMAC"] +KeyClassType = Literal["ASYMMETRIC_KEY_PAIR", "PRIVATE_KEY", "PUBLIC_KEY", "SYMMETRIC_KEY"] +KeyExportabilityType = Literal["EXPORTABLE", "NON_EXPORTABLE", "SENSITIVE"] +KeyMaterialTypeType = Literal["KEY_CRYPTOGRAM", + "ROOT_PUBLIC_KEY_CERTIFICATE", + "TR31_KEY_BLOCK", + "TR34_KEY_BLOCK", + "TRUSTED_PUBLIC_KEY_CERTIFICATE",] +KeyOriginType = Literal["AWS_PAYMENT_CRYPTOGRAPHY", "EXTERNAL"] +KeyStateType = Literal["CREATE_COMPLETE", "CREATE_IN_PROGRESS", "DELETE_COMPLETE", "DELETE_PENDING"] +KeyUsageType = Literal["TR31_B0_BASE_DERIVATION_KEY", + "TR31_C0_CARD_VERIFICATION_KEY", + "TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY", + "TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTION", + "TR31_E0_EMV_MKEY_APP_CRYPTOGRAMS", + "TR31_E1_EMV_MKEY_CONFIDENTIALITY", + "TR31_E2_EMV_MKEY_INTEGRITY", + "TR31_E4_EMV_MKEY_DYNAMIC_NUMBERS", + "TR31_E5_EMV_MKEY_CARD_PERSONALIZATION", + "TR31_E6_EMV_MKEY_OTHER", + "TR31_K0_KEY_ENCRYPTION_KEY", + "TR31_K1_KEY_BLOCK_PROTECTION_KEY", + "TR31_K2_TR34_ASYMMETRIC_KEY", + "TR31_K3_ASYMMETRIC_KEY_FOR_KEY_AGREEMENT", + "TR31_M1_ISO_9797_1_MAC_KEY", + "TR31_M3_ISO_9797_3_MAC_KEY", + "TR31_M6_ISO_9797_5_CMAC_KEY", + "TR31_M7_HMAC_KEY", + "TR31_P0_PIN_ENCRYPTION_KEY", + "TR31_P1_PIN_GENERATION_KEY", + "TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE", + "TR31_V1_IBM3624_PIN_VERIFICATION_KEY", + "TR31_V2_VISA_PIN_VERIFICATION_KEY",] +ListAliasesPaginatorName = Literal["list_aliases"] +ListKeysPaginatorName = Literal["list_keys"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +Tr34KeyBlockFormatType = Literal["X9_TR34_2012"] +WrappedKeyMaterialFormatType = Literal["KEY_CRYPTOGRAM", "TR31_KEY_BLOCK", "TR34_KEY_BLOCK"] +WrappingKeySpecType = Literal["RSA_OAEP_SHA_256", "RSA_OAEP_SHA_512"] +PaymentCryptographyControlPlaneServiceName = Literal["payment-cryptography"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_aliases", "list_keys", "list_tags_for_resource"] diff --git a/aws_resource_validator/pydantic_models/payment_cryptography_data_classes.py b/aws_resource_validator/pydantic_models/payment_cryptography_data_classes.py new file mode 100644 index 00000000..5de94db2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/payment_cryptography_data_classes.py @@ -0,0 +1,404 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.payment_cryptography_data_constants import * + +class AmexCardSecurityCodeVersion1TypeDef(BaseModel): + CardExpiryDate: str + +class AmexCardSecurityCodeVersion2TypeDef(BaseModel): + CardExpiryDate: str + ServiceCode: str + +class AsymmetricEncryptionAttributesTypeDef(BaseModel): + PaddingType: Optional[PaddingTypeType] = None + +class CardHolderVerificationValueTypeDef(BaseModel): + UnpredictableNumber: str + PanSequenceNumber: str + ApplicationTransactionCounter: str + +class CardVerificationValue1TypeDef(BaseModel): + CardExpiryDate: str + ServiceCode: str + +class CardVerificationValue2TypeDef(BaseModel): + CardExpiryDate: str + +class DynamicCardVerificationCodeTypeDef(BaseModel): + UnpredictableNumber: str + PanSequenceNumber: str + ApplicationTransactionCounter: str + TrackData: str + +class DynamicCardVerificationValueTypeDef(BaseModel): + PanSequenceNumber: str + CardExpiryDate: str + ServiceCode: str + ApplicationTransactionCounter: str + +class DiscoverDynamicCardVerificationCodeTypeDef(BaseModel): + CardExpiryDate: str + UnpredictableNumber: str + ApplicationTransactionCounter: str + +class CryptogramVerificationArpcMethod1TypeDef(BaseModel): + AuthResponseCode: str + +class CryptogramVerificationArpcMethod2TypeDef(BaseModel): + CardStatusUpdate: str + ProprietaryAuthenticationData: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DukptAttributesTypeDef(BaseModel): + KeySerialNumber: str + DukptDerivationType: DukptDerivationTypeType + +class DukptDerivationAttributesTypeDef(BaseModel): + KeySerialNumber: str + DukptKeyDerivationType: Optional[DukptDerivationTypeType] = None + DukptKeyVariant: Optional[DukptKeyVariantType] = None + +class DukptEncryptionAttributesTypeDef(BaseModel): + KeySerialNumber: str + Mode: Optional[DukptEncryptionModeType] = None + DukptKeyDerivationType: Optional[DukptDerivationTypeType] = None + DukptKeyVariant: Optional[DukptKeyVariantType] = None + InitializationVector: Optional[str] = None + +class EmvEncryptionAttributesTypeDef(BaseModel): + MajorKeyDerivationMode: EmvMajorKeyDerivationModeType + PrimaryAccountNumber: str + PanSequenceNumber: str + SessionDerivationData: str + Mode: Optional[EmvEncryptionModeType] = None + InitializationVector: Optional[str] = None + +class SymmetricEncryptionAttributesTypeDef(BaseModel): + Mode: EncryptionModeType + InitializationVector: Optional[str] = None + PaddingType: Optional[PaddingTypeType] = None + +class PinDataTypeDef(BaseModel): + PinOffset: Optional[str] = None + VerificationValue: Optional[str] = None + +class Ibm3624NaturalPinTypeDef(BaseModel): + DecimalizationTable: str + PinValidationDataPadCharacter: str + PinValidationData: str + +class Ibm3624PinFromOffsetTypeDef(BaseModel): + DecimalizationTable: str + PinValidationDataPadCharacter: str + PinValidationData: str + PinOffset: str + +class Ibm3624PinOffsetTypeDef(BaseModel): + EncryptedPinBlock: str + DecimalizationTable: str + PinValidationDataPadCharacter: str + PinValidationData: str + +class Ibm3624PinVerificationTypeDef(BaseModel): + DecimalizationTable: str + PinValidationDataPadCharacter: str + PinValidationData: str + PinOffset: str + +class Ibm3624RandomPinTypeDef(BaseModel): + DecimalizationTable: str + PinValidationDataPadCharacter: str + PinValidationData: str + +class MacAlgorithmDukptTypeDef(BaseModel): + KeySerialNumber: str + DukptKeyVariant: DukptKeyVariantType + DukptDerivationType: Optional[DukptDerivationTypeType] = None + +class SessionKeyDerivationValueTypeDef(BaseModel): + ApplicationCryptogram: Optional[str] = None + ApplicationTransactionCounter: Optional[str] = None + +class VisaPinTypeDef(BaseModel): + PinVerificationKeyIndex: int + +class VisaPinVerificationValueTypeDef(BaseModel): + EncryptedPinBlock: str + PinVerificationKeyIndex: int + +class VisaPinVerificationTypeDef(BaseModel): + PinVerificationKeyIndex: int + VerificationValue: str + +class SessionKeyAmexTypeDef(BaseModel): + PrimaryAccountNumber: str + PanSequenceNumber: str + +class SessionKeyEmv2000TypeDef(BaseModel): + PrimaryAccountNumber: str + PanSequenceNumber: str + ApplicationTransactionCounter: str + +class SessionKeyEmvCommonTypeDef(BaseModel): + PrimaryAccountNumber: str + PanSequenceNumber: str + ApplicationTransactionCounter: str + +class SessionKeyMastercardTypeDef(BaseModel): + PrimaryAccountNumber: str + PanSequenceNumber: str + ApplicationTransactionCounter: str + UnpredictableNumber: str + +class SessionKeyVisaTypeDef(BaseModel): + PrimaryAccountNumber: str + PanSequenceNumber: str + +class TranslationPinDataIsoFormat034TypeDef(BaseModel): + PrimaryAccountNumber: str + +class WrappedKeyMaterialTypeDef(BaseModel): + Tr31KeyBlock: Optional[str] = None + +class CardGenerationAttributesTypeDef(BaseModel): + AmexCardSecurityCodeVersion1: Optional[AmexCardSecurityCodeVersion1TypeDef] = None + AmexCardSecurityCodeVersion2: Optional[AmexCardSecurityCodeVersion2TypeDef] = None + CardVerificationValue1: Optional[CardVerificationValue1TypeDef] = None + CardVerificationValue2: Optional[CardVerificationValue2TypeDef] = None + CardHolderVerificationValue: Optional[CardHolderVerificationValueTypeDef] = None + DynamicCardVerificationCode: Optional[DynamicCardVerificationCodeTypeDef] = None + DynamicCardVerificationValue: Optional[DynamicCardVerificationValueTypeDef] = None + +class CardVerificationAttributesTypeDef(BaseModel): + AmexCardSecurityCodeVersion1: Optional[AmexCardSecurityCodeVersion1TypeDef] = None + AmexCardSecurityCodeVersion2: Optional[AmexCardSecurityCodeVersion2TypeDef] = None + CardVerificationValue1: Optional[CardVerificationValue1TypeDef] = None + CardVerificationValue2: Optional[CardVerificationValue2TypeDef] = None + CardHolderVerificationValue: Optional[CardHolderVerificationValueTypeDef] = None + DynamicCardVerificationCode: Optional[DynamicCardVerificationCodeTypeDef] = None + DynamicCardVerificationValue: Optional[DynamicCardVerificationValueTypeDef] = None + DiscoverDynamicCardVerificationCode: Optional[ DiscoverDynamicCardVerificationCodeTypeDef ] = None + +class CryptogramAuthResponseTypeDef(BaseModel): + ArpcMethod1: Optional[CryptogramVerificationArpcMethod1TypeDef] = None + ArpcMethod2: Optional[CryptogramVerificationArpcMethod2TypeDef] = None + +class DecryptDataOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + PlainText: str + ResponseMetadata: ResponseMetadataTypeDef + +class EncryptDataOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + CipherText: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateCardValidationDataOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + ValidationData: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateMacOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + Mac: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReEncryptDataOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + CipherText: str + ResponseMetadata: ResponseMetadataTypeDef + +class TranslatePinDataOutputTypeDef(BaseModel): + PinBlock: str + KeyArn: str + KeyCheckValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyAuthRequestCryptogramOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + AuthResponseValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyCardValidationDataOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyMacOutputTypeDef(BaseModel): + KeyArn: str + KeyCheckValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyPinDataOutputTypeDef(BaseModel): + VerificationKeyArn: str + VerificationKeyCheckValue: str + EncryptionKeyArn: str + EncryptionKeyCheckValue: str + ResponseMetadata: ResponseMetadataTypeDef + +class EncryptionDecryptionAttributesTypeDef(BaseModel): + Symmetric: Optional[SymmetricEncryptionAttributesTypeDef] = None + Asymmetric: Optional[AsymmetricEncryptionAttributesTypeDef] = None + Dukpt: Optional[DukptEncryptionAttributesTypeDef] = None + Emv: Optional[EmvEncryptionAttributesTypeDef] = None + +class ReEncryptionAttributesTypeDef(BaseModel): + Symmetric: Optional[SymmetricEncryptionAttributesTypeDef] = None + Dukpt: Optional[DukptEncryptionAttributesTypeDef] = None + +class GeneratePinDataOutputTypeDef(BaseModel): + GenerationKeyArn: str + GenerationKeyCheckValue: str + EncryptionKeyArn: str + EncryptionKeyCheckValue: str + EncryptedPinBlock: str + PinData: PinDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MacAlgorithmEmvTypeDef(BaseModel): + MajorKeyDerivationMode: MajorKeyDerivationModeType + PrimaryAccountNumber: str + PanSequenceNumber: str + SessionKeyDerivationMode: SessionKeyDerivationModeType + SessionKeyDerivationValue: SessionKeyDerivationValueTypeDef + +class PinGenerationAttributesTypeDef(BaseModel): + VisaPin: Optional[VisaPinTypeDef] = None + VisaPinVerificationValue: Optional[VisaPinVerificationValueTypeDef] = None + Ibm3624PinOffset: Optional[Ibm3624PinOffsetTypeDef] = None + Ibm3624NaturalPin: Optional[Ibm3624NaturalPinTypeDef] = None + Ibm3624RandomPin: Optional[Ibm3624RandomPinTypeDef] = None + Ibm3624PinFromOffset: Optional[Ibm3624PinFromOffsetTypeDef] = None + +class PinVerificationAttributesTypeDef(BaseModel): + VisaPin: Optional[VisaPinVerificationTypeDef] = None + Ibm3624Pin: Optional[Ibm3624PinVerificationTypeDef] = None + +class SessionKeyDerivationTypeDef(BaseModel): + EmvCommon: Optional[SessionKeyEmvCommonTypeDef] = None + Mastercard: Optional[SessionKeyMastercardTypeDef] = None + Emv2000: Optional[SessionKeyEmv2000TypeDef] = None + Amex: Optional[SessionKeyAmexTypeDef] = None + Visa: Optional[SessionKeyVisaTypeDef] = None + +class TranslationIsoFormatsTypeDef(BaseModel): + IsoFormat0: Optional[TranslationPinDataIsoFormat034TypeDef] = None + IsoFormat1: Optional[Mapping[str, Any]] = None + IsoFormat3: Optional[TranslationPinDataIsoFormat034TypeDef] = None + IsoFormat4: Optional[TranslationPinDataIsoFormat034TypeDef] = None + +class WrappedKeyTypeDef(BaseModel): + WrappedKeyMaterial: WrappedKeyMaterialTypeDef + KeyCheckValueAlgorithm: Optional[KeyCheckValueAlgorithmType] = None + +class GenerateCardValidationDataInputRequestTypeDef(BaseModel): + KeyIdentifier: str + PrimaryAccountNumber: str + GenerationAttributes: CardGenerationAttributesTypeDef + ValidationDataLength: Optional[int] = None + +class VerifyCardValidationDataInputRequestTypeDef(BaseModel): + KeyIdentifier: str + PrimaryAccountNumber: str + VerificationAttributes: CardVerificationAttributesTypeDef + ValidationData: str + +class MacAttributesTypeDef(BaseModel): + Algorithm: Optional[MacAlgorithmType] = None + EmvMac: Optional[MacAlgorithmEmvTypeDef] = None + DukptIso9797Algorithm1: Optional[MacAlgorithmDukptTypeDef] = None + DukptIso9797Algorithm3: Optional[MacAlgorithmDukptTypeDef] = None + DukptCmac: Optional[MacAlgorithmDukptTypeDef] = None + +class GeneratePinDataInputRequestTypeDef(BaseModel): + GenerationKeyIdentifier: str + EncryptionKeyIdentifier: str + GenerationAttributes: PinGenerationAttributesTypeDef + PrimaryAccountNumber: str + PinBlockFormat: PinBlockFormatForPinDataType + PinDataLength: Optional[int] = None + +class VerifyPinDataInputRequestTypeDef(BaseModel): + VerificationKeyIdentifier: str + EncryptionKeyIdentifier: str + VerificationAttributes: PinVerificationAttributesTypeDef + EncryptedPinBlock: str + PrimaryAccountNumber: str + PinBlockFormat: PinBlockFormatForPinDataType + PinDataLength: Optional[int] = None + DukptAttributes: Optional[DukptAttributesTypeDef] = None + +class VerifyAuthRequestCryptogramInputRequestTypeDef(BaseModel): + KeyIdentifier: str + TransactionData: str + AuthRequestCryptogram: str + MajorKeyDerivationMode: MajorKeyDerivationModeType + SessionKeyDerivationAttributes: SessionKeyDerivationTypeDef + AuthResponseAttributes: Optional[CryptogramAuthResponseTypeDef] = None + +class DecryptDataInputRequestTypeDef(BaseModel): + KeyIdentifier: str + CipherText: str + DecryptionAttributes: EncryptionDecryptionAttributesTypeDef + WrappedKey: Optional[WrappedKeyTypeDef] = None + +class EncryptDataInputRequestTypeDef(BaseModel): + KeyIdentifier: str + PlainText: str + EncryptionAttributes: EncryptionDecryptionAttributesTypeDef + WrappedKey: Optional[WrappedKeyTypeDef] = None + +class ReEncryptDataInputRequestTypeDef(BaseModel): + IncomingKeyIdentifier: str + OutgoingKeyIdentifier: str + CipherText: str + IncomingEncryptionAttributes: ReEncryptionAttributesTypeDef + OutgoingEncryptionAttributes: ReEncryptionAttributesTypeDef + IncomingWrappedKey: Optional[WrappedKeyTypeDef] = None + OutgoingWrappedKey: Optional[WrappedKeyTypeDef] = None + +class TranslatePinDataInputRequestTypeDef(BaseModel): + IncomingKeyIdentifier: str + OutgoingKeyIdentifier: str + IncomingTranslationAttributes: TranslationIsoFormatsTypeDef + OutgoingTranslationAttributes: TranslationIsoFormatsTypeDef + EncryptedPinBlock: str + IncomingDukptAttributes: Optional[DukptDerivationAttributesTypeDef] = None + OutgoingDukptAttributes: Optional[DukptDerivationAttributesTypeDef] = None + IncomingWrappedKey: Optional[WrappedKeyTypeDef] = None + OutgoingWrappedKey: Optional[WrappedKeyTypeDef] = None + +class GenerateMacInputRequestTypeDef(BaseModel): + KeyIdentifier: str + MessageData: str + GenerationAttributes: MacAttributesTypeDef + MacLength: Optional[int] = None + +class VerifyMacInputRequestTypeDef(BaseModel): + KeyIdentifier: str + MessageData: str + Mac: str + VerificationAttributes: MacAttributesTypeDef + MacLength: Optional[int] = None + diff --git a/aws_resource_validator/pydantic_models/payment_cryptography_data_constants.py b/aws_resource_validator/pydantic_models/payment_cryptography_data_constants.py new file mode 100644 index 00000000..61105d9e --- /dev/null +++ b/aws_resource_validator/pydantic_models/payment_cryptography_data_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DukptDerivationTypeType = Literal["AES_128", "AES_192", "AES_256", "TDES_2KEY", "TDES_3KEY"] +DukptEncryptionModeType = Literal["CBC", "ECB"] +DukptKeyVariantType = Literal["BIDIRECTIONAL", "REQUEST", "RESPONSE"] +EmvEncryptionModeType = Literal["CBC", "ECB"] +EmvMajorKeyDerivationModeType = Literal["EMV_OPTION_A", "EMV_OPTION_B"] +EncryptionModeType = Literal["CBC", "CFB", "CFB1", "CFB128", "CFB64", "CFB8", "ECB", "OFB"] +KeyCheckValueAlgorithmType = Literal["ANSI_X9_24", "CMAC"] +MacAlgorithmType = Literal["CMAC", + "HMAC_SHA224", + "HMAC_SHA256", + "HMAC_SHA384", + "HMAC_SHA512", + "ISO9797_ALGORITHM1", + "ISO9797_ALGORITHM3",] +MajorKeyDerivationModeType = Literal["EMV_OPTION_A", "EMV_OPTION_B"] +PaddingTypeType = Literal["OAEP_SHA1", "OAEP_SHA256", "OAEP_SHA512", "PKCS1"] +PinBlockFormatForPinDataType = Literal["ISO_FORMAT_0", "ISO_FORMAT_3"] +SessionKeyDerivationModeType = Literal["AMEX", "EMV2000", "EMV_COMMON_SESSION_KEY", "MASTERCARD_SESSION_KEY", "VISA"] +PaymentCryptographyDataPlaneServiceName = Literal["payment-cryptography-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/pca_connector_ad_classes.py b/aws_resource_validator/pydantic_models/pca_connector_ad_classes.py new file mode 100644 index 00000000..255a7015 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pca_connector_ad_classes.py @@ -0,0 +1,622 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pca_connector_ad_constants import * + +class AccessRightsTypeDef(BaseModel): + AutoEnroll: Optional[AccessRightType] = None + Enroll: Optional[AccessRightType] = None + +class ApplicationPolicyTypeDef(BaseModel): + PolicyObjectIdentifier: Optional[str] = None + PolicyType: Optional[ApplicationPolicyTypeType] = None + +class ValidityPeriodTypeDef(BaseModel): + Period: int + PeriodType: ValidityPeriodTypeType + +class VpcInformationPaginatorTypeDef(BaseModel): + SecurityGroupIds: List[str] + +class VpcInformationTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateDirectoryRegistrationRequestRequestTypeDef(BaseModel): + DirectoryId: str + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateServicePrincipalNameRequestRequestTypeDef(BaseModel): + ConnectorArn: str + DirectoryRegistrationArn: str + ClientToken: Optional[str] = None + +class DeleteConnectorRequestRequestTypeDef(BaseModel): + ConnectorArn: str + +class DeleteDirectoryRegistrationRequestRequestTypeDef(BaseModel): + DirectoryRegistrationArn: str + +class DeleteServicePrincipalNameRequestRequestTypeDef(BaseModel): + ConnectorArn: str + DirectoryRegistrationArn: str + +class DeleteTemplateGroupAccessControlEntryRequestRequestTypeDef(BaseModel): + GroupSecurityIdentifier: str + TemplateArn: str + +class DeleteTemplateRequestRequestTypeDef(BaseModel): + TemplateArn: str + +class DirectoryRegistrationSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryId: Optional[str] = None + Status: Optional[DirectoryRegistrationStatusType] = None + StatusReason: Optional[DirectoryRegistrationStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + +class DirectoryRegistrationTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryId: Optional[str] = None + Status: Optional[DirectoryRegistrationStatusType] = None + StatusReason: Optional[DirectoryRegistrationStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + +class EnrollmentFlagsV2TypeDef(BaseModel): + EnableKeyReuseOnNtTokenKeysetStorageFull: Optional[bool] = None + IncludeSymmetricAlgorithms: Optional[bool] = None + NoSecurityExtension: Optional[bool] = None + RemoveInvalidCertificateFromPersonalStore: Optional[bool] = None + UserInteractionRequired: Optional[bool] = None + +class EnrollmentFlagsV3TypeDef(BaseModel): + EnableKeyReuseOnNtTokenKeysetStorageFull: Optional[bool] = None + IncludeSymmetricAlgorithms: Optional[bool] = None + NoSecurityExtension: Optional[bool] = None + RemoveInvalidCertificateFromPersonalStore: Optional[bool] = None + UserInteractionRequired: Optional[bool] = None + +class EnrollmentFlagsV4TypeDef(BaseModel): + EnableKeyReuseOnNtTokenKeysetStorageFull: Optional[bool] = None + IncludeSymmetricAlgorithms: Optional[bool] = None + NoSecurityExtension: Optional[bool] = None + RemoveInvalidCertificateFromPersonalStore: Optional[bool] = None + UserInteractionRequired: Optional[bool] = None + +class GeneralFlagsV2TypeDef(BaseModel): + AutoEnrollment: Optional[bool] = None + MachineType: Optional[bool] = None + +class GeneralFlagsV3TypeDef(BaseModel): + AutoEnrollment: Optional[bool] = None + MachineType: Optional[bool] = None + +class GeneralFlagsV4TypeDef(BaseModel): + AutoEnrollment: Optional[bool] = None + MachineType: Optional[bool] = None + +class GetConnectorRequestRequestTypeDef(BaseModel): + ConnectorArn: str + +class GetDirectoryRegistrationRequestRequestTypeDef(BaseModel): + DirectoryRegistrationArn: str + +class GetServicePrincipalNameRequestRequestTypeDef(BaseModel): + ConnectorArn: str + DirectoryRegistrationArn: str + +class ServicePrincipalNameTypeDef(BaseModel): + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryRegistrationArn: Optional[str] = None + Status: Optional[ServicePrincipalNameStatusType] = None + StatusReason: Optional[ServicePrincipalNameStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + +class GetTemplateGroupAccessControlEntryRequestRequestTypeDef(BaseModel): + GroupSecurityIdentifier: str + TemplateArn: str + +class GetTemplateRequestRequestTypeDef(BaseModel): + TemplateArn: str + +class KeyUsageFlagsTypeDef(BaseModel): + DataEncipherment: Optional[bool] = None + DigitalSignature: Optional[bool] = None + KeyAgreement: Optional[bool] = None + KeyEncipherment: Optional[bool] = None + NonRepudiation: Optional[bool] = None + +class KeyUsagePropertyFlagsTypeDef(BaseModel): + Decrypt: Optional[bool] = None + KeyAgreement: Optional[bool] = None + Sign: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListConnectorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDirectoryRegistrationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServicePrincipalNamesRequestRequestTypeDef(BaseModel): + DirectoryRegistrationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ServicePrincipalNameSummaryTypeDef(BaseModel): + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryRegistrationArn: Optional[str] = None + Status: Optional[ServicePrincipalNameStatusType] = None + StatusReason: Optional[ServicePrincipalNameStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListTemplateGroupAccessControlEntriesRequestRequestTypeDef(BaseModel): + TemplateArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTemplatesRequestRequestTypeDef(BaseModel): + ConnectorArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PrivateKeyAttributesV2PaginatorTypeDef(BaseModel): + KeySpec: KeySpecType + MinimalKeyLength: int + CryptoProviders: Optional[List[str]] = None + +class PrivateKeyAttributesV2TypeDef(BaseModel): + KeySpec: KeySpecType + MinimalKeyLength: int + CryptoProviders: Optional[Sequence[str]] = None + +class PrivateKeyFlagsV2TypeDef(BaseModel): + ClientVersion: ClientCompatibilityV2Type + ExportableKey: Optional[bool] = None + StrongKeyProtectionRequired: Optional[bool] = None + +class PrivateKeyFlagsV3TypeDef(BaseModel): + ClientVersion: ClientCompatibilityV3Type + ExportableKey: Optional[bool] = None + RequireAlternateSignatureAlgorithm: Optional[bool] = None + StrongKeyProtectionRequired: Optional[bool] = None + +class PrivateKeyFlagsV4TypeDef(BaseModel): + ClientVersion: ClientCompatibilityV4Type + ExportableKey: Optional[bool] = None + RequireAlternateSignatureAlgorithm: Optional[bool] = None + RequireSameKeyRenewal: Optional[bool] = None + StrongKeyProtectionRequired: Optional[bool] = None + UseLegacyProvider: Optional[bool] = None + +class SubjectNameFlagsV2TypeDef(BaseModel): + RequireCommonName: Optional[bool] = None + RequireDirectoryPath: Optional[bool] = None + RequireDnsAsCn: Optional[bool] = None + RequireEmail: Optional[bool] = None + SanRequireDirectoryGuid: Optional[bool] = None + SanRequireDns: Optional[bool] = None + SanRequireDomainDns: Optional[bool] = None + SanRequireEmail: Optional[bool] = None + SanRequireSpn: Optional[bool] = None + SanRequireUpn: Optional[bool] = None + +class SubjectNameFlagsV3TypeDef(BaseModel): + RequireCommonName: Optional[bool] = None + RequireDirectoryPath: Optional[bool] = None + RequireDnsAsCn: Optional[bool] = None + RequireEmail: Optional[bool] = None + SanRequireDirectoryGuid: Optional[bool] = None + SanRequireDns: Optional[bool] = None + SanRequireDomainDns: Optional[bool] = None + SanRequireEmail: Optional[bool] = None + SanRequireSpn: Optional[bool] = None + SanRequireUpn: Optional[bool] = None + +class SubjectNameFlagsV4TypeDef(BaseModel): + RequireCommonName: Optional[bool] = None + RequireDirectoryPath: Optional[bool] = None + RequireDnsAsCn: Optional[bool] = None + RequireEmail: Optional[bool] = None + SanRequireDirectoryGuid: Optional[bool] = None + SanRequireDns: Optional[bool] = None + SanRequireDomainDns: Optional[bool] = None + SanRequireEmail: Optional[bool] = None + SanRequireSpn: Optional[bool] = None + SanRequireUpn: Optional[bool] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class TemplateRevisionTypeDef(BaseModel): + MajorRevision: int + MinorRevision: int + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AccessControlEntrySummaryTypeDef(BaseModel): + AccessRights: Optional[AccessRightsTypeDef] = None + CreatedAt: Optional[datetime] = None + GroupDisplayName: Optional[str] = None + GroupSecurityIdentifier: Optional[str] = None + TemplateArn: Optional[str] = None + UpdatedAt: Optional[datetime] = None + +class AccessControlEntryTypeDef(BaseModel): + AccessRights: Optional[AccessRightsTypeDef] = None + CreatedAt: Optional[datetime] = None + GroupDisplayName: Optional[str] = None + GroupSecurityIdentifier: Optional[str] = None + TemplateArn: Optional[str] = None + UpdatedAt: Optional[datetime] = None + +class CreateTemplateGroupAccessControlEntryRequestRequestTypeDef(BaseModel): + AccessRights: AccessRightsTypeDef + GroupDisplayName: str + GroupSecurityIdentifier: str + TemplateArn: str + ClientToken: Optional[str] = None + +class UpdateTemplateGroupAccessControlEntryRequestRequestTypeDef(BaseModel): + GroupSecurityIdentifier: str + TemplateArn: str + AccessRights: Optional[AccessRightsTypeDef] = None + GroupDisplayName: Optional[str] = None + +class ApplicationPoliciesPaginatorTypeDef(BaseModel): + Policies: List[ApplicationPolicyTypeDef] + Critical: Optional[bool] = None + +class ApplicationPoliciesTypeDef(BaseModel): + Policies: Sequence[ApplicationPolicyTypeDef] + Critical: Optional[bool] = None + +class CertificateValidityTypeDef(BaseModel): + RenewalPeriod: ValidityPeriodTypeDef + ValidityPeriod: ValidityPeriodTypeDef + +class ConnectorSummaryPaginatorTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityArn: Optional[str] = None + CertificateEnrollmentPolicyServerEndpoint: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryId: Optional[str] = None + Status: Optional[ConnectorStatusType] = None + StatusReason: Optional[ConnectorStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + VpcInformation: Optional[VpcInformationPaginatorTypeDef] = None + +class ConnectorSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityArn: Optional[str] = None + CertificateEnrollmentPolicyServerEndpoint: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryId: Optional[str] = None + Status: Optional[ConnectorStatusType] = None + StatusReason: Optional[ConnectorStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + VpcInformation: Optional[VpcInformationTypeDef] = None + +class ConnectorTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityArn: Optional[str] = None + CertificateEnrollmentPolicyServerEndpoint: Optional[str] = None + CreatedAt: Optional[datetime] = None + DirectoryId: Optional[str] = None + Status: Optional[ConnectorStatusType] = None + StatusReason: Optional[ConnectorStatusReasonType] = None + UpdatedAt: Optional[datetime] = None + VpcInformation: Optional[VpcInformationTypeDef] = None + +class CreateConnectorRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + DirectoryId: str + VpcInformation: VpcInformationTypeDef + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateConnectorResponseTypeDef(BaseModel): + ConnectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDirectoryRegistrationResponseTypeDef(BaseModel): + DirectoryRegistrationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateResponseTypeDef(BaseModel): + TemplateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDirectoryRegistrationsResponseTypeDef(BaseModel): + DirectoryRegistrations: List[DirectoryRegistrationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDirectoryRegistrationResponseTypeDef(BaseModel): + DirectoryRegistration: DirectoryRegistrationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServicePrincipalNameResponseTypeDef(BaseModel): + ServicePrincipalName: ServicePrincipalNameTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class KeyUsageTypeDef(BaseModel): + UsageFlags: KeyUsageFlagsTypeDef + Critical: Optional[bool] = None + +class KeyUsagePropertyTypeDef(BaseModel): + PropertyFlags: Optional[KeyUsagePropertyFlagsTypeDef] = None + PropertyType: Optional[Literal["ALL"]] = None + +class ListConnectorsRequestListConnectorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDirectoryRegistrationsRequestListDirectoryRegistrationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicePrincipalNamesRequestListServicePrincipalNamesPaginateTypeDef(BaseModel): + DirectoryRegistrationArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplateGroupAccessControlEntriesRequestListTemplateGroupAccessControlEntriesPaginateTypeDef(BaseModel): + TemplateArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplatesRequestListTemplatesPaginateTypeDef(BaseModel): + ConnectorArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicePrincipalNamesResponseTypeDef(BaseModel): + NextToken: str + ServicePrincipalNames: List[ServicePrincipalNameSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplateGroupAccessControlEntriesResponseTypeDef(BaseModel): + AccessControlEntries: List[AccessControlEntrySummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateGroupAccessControlEntryResponseTypeDef(BaseModel): + AccessControlEntry: AccessControlEntryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectorsResponsePaginatorTypeDef(BaseModel): + Connectors: List[ConnectorSummaryPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListConnectorsResponseTypeDef(BaseModel): + Connectors: List[ConnectorSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectorResponseTypeDef(BaseModel): + Connector: ConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExtensionsV2PaginatorTypeDef(BaseModel): + KeyUsage: KeyUsageTypeDef + ApplicationPolicies: Optional[ApplicationPoliciesPaginatorTypeDef] = None + +class ExtensionsV2TypeDef(BaseModel): + KeyUsage: KeyUsageTypeDef + ApplicationPolicies: Optional[ApplicationPoliciesTypeDef] = None + +class ExtensionsV3PaginatorTypeDef(BaseModel): + KeyUsage: KeyUsageTypeDef + ApplicationPolicies: Optional[ApplicationPoliciesPaginatorTypeDef] = None + +class ExtensionsV3TypeDef(BaseModel): + KeyUsage: KeyUsageTypeDef + ApplicationPolicies: Optional[ApplicationPoliciesTypeDef] = None + +class ExtensionsV4PaginatorTypeDef(BaseModel): + KeyUsage: KeyUsageTypeDef + ApplicationPolicies: Optional[ApplicationPoliciesPaginatorTypeDef] = None + +class ExtensionsV4TypeDef(BaseModel): + KeyUsage: KeyUsageTypeDef + ApplicationPolicies: Optional[ApplicationPoliciesTypeDef] = None + +class PrivateKeyAttributesV3PaginatorTypeDef(BaseModel): + Algorithm: PrivateKeyAlgorithmType + KeySpec: KeySpecType + KeyUsageProperty: KeyUsagePropertyTypeDef + MinimalKeyLength: int + CryptoProviders: Optional[List[str]] = None + +class PrivateKeyAttributesV3TypeDef(BaseModel): + Algorithm: PrivateKeyAlgorithmType + KeySpec: KeySpecType + KeyUsageProperty: KeyUsagePropertyTypeDef + MinimalKeyLength: int + CryptoProviders: Optional[Sequence[str]] = None + +class PrivateKeyAttributesV4PaginatorTypeDef(BaseModel): + KeySpec: KeySpecType + MinimalKeyLength: int + Algorithm: Optional[PrivateKeyAlgorithmType] = None + CryptoProviders: Optional[List[str]] = None + KeyUsageProperty: Optional[KeyUsagePropertyTypeDef] = None + +class PrivateKeyAttributesV4TypeDef(BaseModel): + KeySpec: KeySpecType + MinimalKeyLength: int + Algorithm: Optional[PrivateKeyAlgorithmType] = None + CryptoProviders: Optional[Sequence[str]] = None + KeyUsageProperty: Optional[KeyUsagePropertyTypeDef] = None + +class TemplateV2PaginatorTypeDef(BaseModel): + CertificateValidity: CertificateValidityTypeDef + EnrollmentFlags: EnrollmentFlagsV2TypeDef + Extensions: ExtensionsV2PaginatorTypeDef + GeneralFlags: GeneralFlagsV2TypeDef + PrivateKeyAttributes: PrivateKeyAttributesV2PaginatorTypeDef + PrivateKeyFlags: PrivateKeyFlagsV2TypeDef + SubjectNameFlags: SubjectNameFlagsV2TypeDef + SupersededTemplates: Optional[List[str]] = None + +class TemplateV2TypeDef(BaseModel): + CertificateValidity: CertificateValidityTypeDef + EnrollmentFlags: EnrollmentFlagsV2TypeDef + Extensions: ExtensionsV2TypeDef + GeneralFlags: GeneralFlagsV2TypeDef + PrivateKeyAttributes: PrivateKeyAttributesV2TypeDef + PrivateKeyFlags: PrivateKeyFlagsV2TypeDef + SubjectNameFlags: SubjectNameFlagsV2TypeDef + SupersededTemplates: Optional[Sequence[str]] = None + +class TemplateV3PaginatorTypeDef(BaseModel): + CertificateValidity: CertificateValidityTypeDef + EnrollmentFlags: EnrollmentFlagsV3TypeDef + Extensions: ExtensionsV3PaginatorTypeDef + GeneralFlags: GeneralFlagsV3TypeDef + HashAlgorithm: HashAlgorithmType + PrivateKeyAttributes: PrivateKeyAttributesV3PaginatorTypeDef + PrivateKeyFlags: PrivateKeyFlagsV3TypeDef + SubjectNameFlags: SubjectNameFlagsV3TypeDef + SupersededTemplates: Optional[List[str]] = None + +class TemplateV3TypeDef(BaseModel): + CertificateValidity: CertificateValidityTypeDef + EnrollmentFlags: EnrollmentFlagsV3TypeDef + Extensions: ExtensionsV3TypeDef + GeneralFlags: GeneralFlagsV3TypeDef + HashAlgorithm: HashAlgorithmType + PrivateKeyAttributes: PrivateKeyAttributesV3TypeDef + PrivateKeyFlags: PrivateKeyFlagsV3TypeDef + SubjectNameFlags: SubjectNameFlagsV3TypeDef + SupersededTemplates: Optional[Sequence[str]] = None + +class TemplateV4PaginatorTypeDef(BaseModel): + CertificateValidity: CertificateValidityTypeDef + EnrollmentFlags: EnrollmentFlagsV4TypeDef + Extensions: ExtensionsV4PaginatorTypeDef + GeneralFlags: GeneralFlagsV4TypeDef + PrivateKeyAttributes: PrivateKeyAttributesV4PaginatorTypeDef + PrivateKeyFlags: PrivateKeyFlagsV4TypeDef + SubjectNameFlags: SubjectNameFlagsV4TypeDef + HashAlgorithm: Optional[HashAlgorithmType] = None + SupersededTemplates: Optional[List[str]] = None + +class TemplateV4TypeDef(BaseModel): + CertificateValidity: CertificateValidityTypeDef + EnrollmentFlags: EnrollmentFlagsV4TypeDef + Extensions: ExtensionsV4TypeDef + GeneralFlags: GeneralFlagsV4TypeDef + PrivateKeyAttributes: PrivateKeyAttributesV4TypeDef + PrivateKeyFlags: PrivateKeyFlagsV4TypeDef + SubjectNameFlags: SubjectNameFlagsV4TypeDef + HashAlgorithm: Optional[HashAlgorithmType] = None + SupersededTemplates: Optional[Sequence[str]] = None + +class TemplateDefinitionPaginatorTypeDef(BaseModel): + TemplateV2: Optional[TemplateV2PaginatorTypeDef] = None + TemplateV3: Optional[TemplateV3PaginatorTypeDef] = None + TemplateV4: Optional[TemplateV4PaginatorTypeDef] = None + +class TemplateDefinitionTypeDef(BaseModel): + TemplateV2: Optional[TemplateV2TypeDef] = None + TemplateV3: Optional[TemplateV3TypeDef] = None + TemplateV4: Optional[TemplateV4TypeDef] = None + +class TemplateSummaryPaginatorTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Definition: Optional[TemplateDefinitionPaginatorTypeDef] = None + Name: Optional[str] = None + ObjectIdentifier: Optional[str] = None + PolicySchema: Optional[int] = None + Revision: Optional[TemplateRevisionTypeDef] = None + Status: Optional[TemplateStatusType] = None + UpdatedAt: Optional[datetime] = None + +class CreateTemplateRequestRequestTypeDef(BaseModel): + ConnectorArn: str + Definition: TemplateDefinitionTypeDef + Name: str + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class TemplateSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Definition: Optional[TemplateDefinitionTypeDef] = None + Name: Optional[str] = None + ObjectIdentifier: Optional[str] = None + PolicySchema: Optional[int] = None + Revision: Optional[TemplateRevisionTypeDef] = None + Status: Optional[TemplateStatusType] = None + UpdatedAt: Optional[datetime] = None + +class TemplateTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Definition: Optional[TemplateDefinitionTypeDef] = None + Name: Optional[str] = None + ObjectIdentifier: Optional[str] = None + PolicySchema: Optional[int] = None + Revision: Optional[TemplateRevisionTypeDef] = None + Status: Optional[TemplateStatusType] = None + UpdatedAt: Optional[datetime] = None + +class UpdateTemplateRequestRequestTypeDef(BaseModel): + TemplateArn: str + Definition: Optional[TemplateDefinitionTypeDef] = None + ReenrollAllCertificateHolders: Optional[bool] = None + +class ListTemplatesResponsePaginatorTypeDef(BaseModel): + NextToken: str + Templates: List[TemplateSummaryPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplatesResponseTypeDef(BaseModel): + NextToken: str + Templates: List[TemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateResponseTypeDef(BaseModel): + Template: TemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/pca_connector_ad_constants.py b/aws_resource_validator/pydantic_models/pca_connector_ad_constants.py new file mode 100644 index 00000000..f4f59cf9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pca_connector_ad_constants.py @@ -0,0 +1,506 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessRightType = Literal["ALLOW", "DENY"] +ApplicationPolicyTypeType = Literal["ALL_APPLICATION_POLICIES", + "ANY_PURPOSE", + "ATTESTATION_IDENTITY_KEY_CERTIFICATE", + "CERTIFICATE_REQUEST_AGENT", + "CLIENT_AUTHENTICATION", + "CODE_SIGNING", + "CTL_USAGE", + "DIGITAL_RIGHTS", + "DIRECTORY_SERVICE_EMAIL_REPLICATION", + "DISALLOWED_LIST", + "DNS_SERVER_TRUST", + "DOCUMENT_ENCRYPTION", + "DOCUMENT_SIGNING", + "DYNAMIC_CODE_GENERATOR", + "EARLY_LAUNCH_ANTIMALWARE_DRIVER", + "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", + "ENCLAVE", + "ENCRYPTING_FILE_SYSTEM", + "ENDORSEMENT_KEY_CERTIFICATE", + "FILE_RECOVERY", + "HAL_EXTENSION", + "IP_SECURITY_END_SYSTEM", + "IP_SECURITY_IKE_INTERMEDIATE", + "IP_SECURITY_TUNNEL_TERMINATION", + "IP_SECURITY_USER", + "ISOLATED_USER_MODE", + "KDC_AUTHENTICATION", + "KERNEL_MODE_CODE_SIGNING", + "KEY_PACK_LICENSES", + "KEY_RECOVERY", + "KEY_RECOVERY_AGENT", + "LICENSE_SERVER_VERIFICATION", + "LIFETIME_SIGNING", + "MICROSOFT_PUBLISHER", + "MICROSOFT_TIME_STAMPING", + "MICROSOFT_TRUST_LIST_SIGNING", + "OCSP_SIGNING", + "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", + "PLATFORM_CERTIFICATE", + "PREVIEW_BUILD_SIGNING", + "PRIVATE_KEY_ARCHIVAL", + "PROTECTED_PROCESS_LIGHT_VERIFICATION", + "PROTECTED_PROCESS_VERIFICATION", + "QUALIFIED_SUBORDINATION", + "REVOKED_LIST_SIGNER", + "ROOT_LIST_SIGNER", + "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", + "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", + "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", + "SECURE_EMAIL", + "SERVER_AUTHENTICATION", + "SMART_CARD_LOGIN", + "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", + "SPC_RELAXED_PE_MARKER_CHECK", + "TIME_STAMPING", + "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", + "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", + "WINDOWS_HARDWARE_DRIVER_VERIFICATION", + "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", + "WINDOWS_KITS_COMPONENT", + "WINDOWS_RT_VERIFICATION", + "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", + "WINDOWS_STORE", + "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", + "WINDOWS_TCB_COMPONENT", + "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", + "WINDOWS_UPDATE",] +ClientCompatibilityV2Type = Literal["WINDOWS_SERVER_2003", + "WINDOWS_SERVER_2008", + "WINDOWS_SERVER_2008_R2", + "WINDOWS_SERVER_2012", + "WINDOWS_SERVER_2012_R2", + "WINDOWS_SERVER_2016",] +ClientCompatibilityV3Type = Literal["WINDOWS_SERVER_2008", + "WINDOWS_SERVER_2008_R2", + "WINDOWS_SERVER_2012", + "WINDOWS_SERVER_2012_R2", + "WINDOWS_SERVER_2016",] +ClientCompatibilityV4Type = Literal["WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"] +ConnectorStatusReasonType = Literal["DIRECTORY_ACCESS_DENIED", + "INTERNAL_FAILURE", + "PRIVATECA_ACCESS_DENIED", + "PRIVATECA_RESOURCE_NOT_FOUND", + "SECURITY_GROUP_NOT_IN_VPC", + "VPC_ACCESS_DENIED", + "VPC_ENDPOINT_LIMIT_EXCEEDED", + "VPC_RESOURCE_NOT_FOUND",] +ConnectorStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +DirectoryRegistrationStatusReasonType = Literal["DIRECTORY_ACCESS_DENIED", + "DIRECTORY_NOT_ACTIVE", + "DIRECTORY_NOT_REACHABLE", + "DIRECTORY_RESOURCE_NOT_FOUND", + "DIRECTORY_TYPE_NOT_SUPPORTED", + "INTERNAL_FAILURE",] +DirectoryRegistrationStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +HashAlgorithmType = Literal["SHA256", "SHA384", "SHA512"] +KeySpecType = Literal["KEY_EXCHANGE", "SIGNATURE"] +KeyUsagePropertyTypeType = Literal["ALL"] +ListConnectorsPaginatorName = Literal["list_connectors"] +ListDirectoryRegistrationsPaginatorName = Literal["list_directory_registrations"] +ListServicePrincipalNamesPaginatorName = Literal["list_service_principal_names"] +ListTemplateGroupAccessControlEntriesPaginatorName = Literal["list_template_group_access_control_entries"] +ListTemplatesPaginatorName = Literal["list_templates"] +PrivateKeyAlgorithmType = Literal["ECDH_P256", "ECDH_P384", "ECDH_P521", "RSA"] +ServicePrincipalNameStatusReasonType = Literal["DIRECTORY_ACCESS_DENIED", + "DIRECTORY_NOT_REACHABLE", + "DIRECTORY_RESOURCE_NOT_FOUND", + "INTERNAL_FAILURE", + "SPN_EXISTS_ON_DIFFERENT_AD_OBJECT",] +ServicePrincipalNameStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +TemplateStatusType = Literal["ACTIVE", "DELETING"] +ValidityPeriodTypeType = Literal["DAYS", "HOURS", "MONTHS", "WEEKS", "YEARS"] +PcaConnectorAdServiceName = Literal["pca-connector-ad"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_connectors", + "list_directory_registrations", + "list_service_principal_names", + "list_template_group_access_control_entries", + "list_templates",] diff --git a/aws_resource_validator/pydantic_models/pca_connector_scep_classes.py b/aws_resource_validator/pydantic_models/pca_connector_scep_classes.py new file mode 100644 index 00000000..961b18b7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pca_connector_scep_classes.py @@ -0,0 +1,170 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pca_connector_scep_constants import * + +class ChallengeMetadataSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ChallengeMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ChallengeTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + Password: Optional[str] = None + +class OpenIdConfigurationTypeDef(BaseModel): + Issuer: Optional[str] = None + Subject: Optional[str] = None + Audience: Optional[str] = None + +class CreateChallengeRequestRequestTypeDef(BaseModel): + ConnectorArn: str + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteChallengeRequestRequestTypeDef(BaseModel): + ChallengeArn: str + +class DeleteConnectorRequestRequestTypeDef(BaseModel): + ConnectorArn: str + +class GetChallengeMetadataRequestRequestTypeDef(BaseModel): + ChallengeArn: str + +class GetChallengePasswordRequestRequestTypeDef(BaseModel): + ChallengeArn: str + +class GetConnectorRequestRequestTypeDef(BaseModel): + ConnectorArn: str + +class IntuneConfigurationTypeDef(BaseModel): + AzureApplicationId: str + Domain: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChallengeMetadataRequestRequestTypeDef(BaseModel): + ConnectorArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListConnectorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class CreateChallengeResponseTypeDef(BaseModel): + Challenge: ChallengeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorResponseTypeDef(BaseModel): + ConnectorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetChallengeMetadataResponseTypeDef(BaseModel): + ChallengeMetadata: ChallengeMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetChallengePasswordResponseTypeDef(BaseModel): + Password: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChallengeMetadataResponseTypeDef(BaseModel): + Challenges: List[ChallengeMetadataSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class MobileDeviceManagementTypeDef(BaseModel): + Intune: Optional[IntuneConfigurationTypeDef] = None + +class ListChallengeMetadataRequestListChallengeMetadataPaginateTypeDef(BaseModel): + ConnectorArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectorsRequestListConnectorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ConnectorSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityArn: Optional[str] = None + Type: Optional[ConnectorTypeType] = None + MobileDeviceManagement: Optional[MobileDeviceManagementTypeDef] = None + OpenIdConfiguration: Optional[OpenIdConfigurationTypeDef] = None + Status: Optional[ConnectorStatusType] = None + StatusReason: Optional[ConnectorStatusReasonType] = None + Endpoint: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ConnectorTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityArn: Optional[str] = None + Type: Optional[ConnectorTypeType] = None + MobileDeviceManagement: Optional[MobileDeviceManagementTypeDef] = None + OpenIdConfiguration: Optional[OpenIdConfigurationTypeDef] = None + Status: Optional[ConnectorStatusType] = None + StatusReason: Optional[ConnectorStatusReasonType] = None + Endpoint: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class CreateConnectorRequestRequestTypeDef(BaseModel): + CertificateAuthorityArn: str + MobileDeviceManagement: Optional[MobileDeviceManagementTypeDef] = None + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ListConnectorsResponseTypeDef(BaseModel): + Connectors: List[ConnectorSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetConnectorResponseTypeDef(BaseModel): + Connector: ConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/pca_connector_scep_constants.py b/aws_resource_validator/pydantic_models/pca_connector_scep_constants.py new file mode 100644 index 00000000..6bd12556 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pca_connector_scep_constants.py @@ -0,0 +1,408 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConnectorStatusReasonType = Literal["INTERNAL_FAILURE", + "PRIVATECA_ACCESS_DENIED", + "PRIVATECA_INVALID_STATE", + "PRIVATECA_RESOURCE_NOT_FOUND",] +ConnectorStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +ConnectorTypeType = Literal["GENERAL_PURPOSE", "INTUNE"] +ListChallengeMetadataPaginatorName = Literal["list_challenge_metadata"] +ListConnectorsPaginatorName = Literal["list_connectors"] +PrivateCAConnectorforSCEPServiceName = Literal["pca-connector-scep"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_challenge_metadata", "list_connectors"] diff --git a/aws_resource_validator/pydantic_models/personalize_classes.py b/aws_resource_validator/pydantic_models/personalize_classes.py new file mode 100644 index 00000000..d4bb37de --- /dev/null +++ b/aws_resource_validator/pydantic_models/personalize_classes.py @@ -0,0 +1,1242 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.personalize_constants import * + +class AlgorithmImageTypeDef(BaseModel): + dockerURI: str + name: Optional[str] = None + +class AutoMLConfigOutputTypeDef(BaseModel): + metricName: Optional[str] = None + recipeList: Optional[List[str]] = None + +class AutoMLConfigTypeDef(BaseModel): + metricName: Optional[str] = None + recipeList: Optional[Sequence[str]] = None + +class AutoMLResultTypeDef(BaseModel): + bestRecipeArn: Optional[str] = None + +class AutoTrainingConfigTypeDef(BaseModel): + schedulingExpression: Optional[str] = None + +class BatchInferenceJobConfigOutputTypeDef(BaseModel): + itemExplorationConfig: Optional[Dict[str, str]] = None + +class BatchInferenceJobConfigTypeDef(BaseModel): + itemExplorationConfig: Optional[Mapping[str, str]] = None + +class S3DataConfigTypeDef(BaseModel): + path: str + kmsKeyArn: Optional[str] = None + +class BatchInferenceJobSummaryTypeDef(BaseModel): + batchInferenceJobArn: Optional[str] = None + jobName: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + solutionVersionArn: Optional[str] = None + batchInferenceJobMode: Optional[BatchInferenceJobModeType] = None + +class BatchSegmentJobSummaryTypeDef(BaseModel): + batchSegmentJobArn: Optional[str] = None + jobName: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + solutionVersionArn: Optional[str] = None + +class CampaignConfigOutputTypeDef(BaseModel): + itemExplorationConfig: Optional[Dict[str, str]] = None + enableMetadataWithRecommendations: Optional[bool] = None + syncWithLatestSolutionVersion: Optional[bool] = None + +class CampaignConfigTypeDef(BaseModel): + itemExplorationConfig: Optional[Mapping[str, str]] = None + enableMetadataWithRecommendations: Optional[bool] = None + syncWithLatestSolutionVersion: Optional[bool] = None + +class CampaignSummaryTypeDef(BaseModel): + name: Optional[str] = None + campaignArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class CategoricalHyperParameterRangeOutputTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[List[str]] = None + +class CategoricalHyperParameterRangeTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class ContinuousHyperParameterRangeTypeDef(BaseModel): + name: Optional[str] = None + minValue: Optional[float] = None + maxValue: Optional[float] = None + +class TagTypeDef(BaseModel): + tagKey: str + tagValue: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DataSourceTypeDef(BaseModel): + dataLocation: Optional[str] = None + +class MetricAttributeTypeDef(BaseModel): + eventType: str + metricName: str + expression: str + +class CreateSchemaRequestRequestTypeDef(BaseModel): + name: str + schema: str + domain: Optional[DomainType] = None + +class DataDeletionJobSummaryTypeDef(BaseModel): + dataDeletionJobArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + jobName: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class DatasetExportJobSummaryTypeDef(BaseModel): + datasetExportJobArn: Optional[str] = None + jobName: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class DatasetGroupSummaryTypeDef(BaseModel): + name: Optional[str] = None + datasetGroupArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + domain: Optional[DomainType] = None + +class DatasetGroupTypeDef(BaseModel): + name: Optional[str] = None + datasetGroupArn: Optional[str] = None + status: Optional[str] = None + roleArn: Optional[str] = None + kmsKeyArn: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + domain: Optional[DomainType] = None + +class DatasetImportJobSummaryTypeDef(BaseModel): + datasetImportJobArn: Optional[str] = None + jobName: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + importMode: Optional[ImportModeType] = None + +class DatasetSchemaSummaryTypeDef(BaseModel): + name: Optional[str] = None + schemaArn: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + domain: Optional[DomainType] = None + +class DatasetSchemaTypeDef(BaseModel): + name: Optional[str] = None + schemaArn: Optional[str] = None + schema: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + domain: Optional[DomainType] = None + +class DatasetSummaryTypeDef(BaseModel): + name: Optional[str] = None + datasetArn: Optional[str] = None + datasetType: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class DatasetUpdateSummaryTypeDef(BaseModel): + schemaArn: Optional[str] = None + status: Optional[str] = None + failureReason: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class DefaultCategoricalHyperParameterRangeTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[List[str]] = None + isTunable: Optional[bool] = None + +class DefaultContinuousHyperParameterRangeTypeDef(BaseModel): + name: Optional[str] = None + minValue: Optional[float] = None + maxValue: Optional[float] = None + isTunable: Optional[bool] = None + +class DefaultIntegerHyperParameterRangeTypeDef(BaseModel): + name: Optional[str] = None + minValue: Optional[int] = None + maxValue: Optional[int] = None + isTunable: Optional[bool] = None + +class DeleteCampaignRequestRequestTypeDef(BaseModel): + campaignArn: str + +class DeleteDatasetGroupRequestRequestTypeDef(BaseModel): + datasetGroupArn: str + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + datasetArn: str + +class DeleteEventTrackerRequestRequestTypeDef(BaseModel): + eventTrackerArn: str + +class DeleteFilterRequestRequestTypeDef(BaseModel): + filterArn: str + +class DeleteMetricAttributionRequestRequestTypeDef(BaseModel): + metricAttributionArn: str + +class DeleteRecommenderRequestRequestTypeDef(BaseModel): + recommenderArn: str + +class DeleteSchemaRequestRequestTypeDef(BaseModel): + schemaArn: str + +class DeleteSolutionRequestRequestTypeDef(BaseModel): + solutionArn: str + +class DescribeAlgorithmRequestRequestTypeDef(BaseModel): + algorithmArn: str + +class DescribeBatchInferenceJobRequestRequestTypeDef(BaseModel): + batchInferenceJobArn: str + +class DescribeBatchSegmentJobRequestRequestTypeDef(BaseModel): + batchSegmentJobArn: str + +class DescribeCampaignRequestRequestTypeDef(BaseModel): + campaignArn: str + +class DescribeDataDeletionJobRequestRequestTypeDef(BaseModel): + dataDeletionJobArn: str + +class DescribeDatasetExportJobRequestRequestTypeDef(BaseModel): + datasetExportJobArn: str + +class DescribeDatasetGroupRequestRequestTypeDef(BaseModel): + datasetGroupArn: str + +class DescribeDatasetImportJobRequestRequestTypeDef(BaseModel): + datasetImportJobArn: str + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + datasetArn: str + +class DescribeEventTrackerRequestRequestTypeDef(BaseModel): + eventTrackerArn: str + +class EventTrackerTypeDef(BaseModel): + name: Optional[str] = None + eventTrackerArn: Optional[str] = None + accountId: Optional[str] = None + trackingId: Optional[str] = None + datasetGroupArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class DescribeFeatureTransformationRequestRequestTypeDef(BaseModel): + featureTransformationArn: str + +class FeatureTransformationTypeDef(BaseModel): + name: Optional[str] = None + featureTransformationArn: Optional[str] = None + defaultParameters: Optional[Dict[str, str]] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + status: Optional[str] = None + +class DescribeFilterRequestRequestTypeDef(BaseModel): + filterArn: str + +class FilterTypeDef(BaseModel): + name: Optional[str] = None + filterArn: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + datasetGroupArn: Optional[str] = None + failureReason: Optional[str] = None + filterExpression: Optional[str] = None + status: Optional[str] = None + +class DescribeMetricAttributionRequestRequestTypeDef(BaseModel): + metricAttributionArn: str + +class DescribeRecipeRequestRequestTypeDef(BaseModel): + recipeArn: str + +class RecipeTypeDef(BaseModel): + name: Optional[str] = None + recipeArn: Optional[str] = None + algorithmArn: Optional[str] = None + featureTransformationArn: Optional[str] = None + status: Optional[str] = None + description: Optional[str] = None + creationDateTime: Optional[datetime] = None + recipeType: Optional[str] = None + lastUpdatedDateTime: Optional[datetime] = None + +class DescribeRecommenderRequestRequestTypeDef(BaseModel): + recommenderArn: str + +class DescribeSchemaRequestRequestTypeDef(BaseModel): + schemaArn: str + +class DescribeSolutionRequestRequestTypeDef(BaseModel): + solutionArn: str + +class DescribeSolutionVersionRequestRequestTypeDef(BaseModel): + solutionVersionArn: str + +class EventTrackerSummaryTypeDef(BaseModel): + name: Optional[str] = None + eventTrackerArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class FieldsForThemeGenerationTypeDef(BaseModel): + itemName: str + +class FilterSummaryTypeDef(BaseModel): + name: Optional[str] = None + filterArn: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + datasetGroupArn: Optional[str] = None + failureReason: Optional[str] = None + status: Optional[str] = None + +class GetSolutionMetricsRequestRequestTypeDef(BaseModel): + solutionVersionArn: str + +class HPOObjectiveTypeDef(BaseModel): + type: Optional[str] = None + metricName: Optional[str] = None + metricRegex: Optional[str] = None + +class HPOResourceConfigTypeDef(BaseModel): + maxNumberOfTrainingJobs: Optional[str] = None + maxParallelTrainingJobs: Optional[str] = None + +class IntegerHyperParameterRangeTypeDef(BaseModel): + name: Optional[str] = None + minValue: Optional[int] = None + maxValue: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListBatchInferenceJobsRequestRequestTypeDef(BaseModel): + solutionVersionArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListBatchSegmentJobsRequestRequestTypeDef(BaseModel): + solutionVersionArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListCampaignsRequestRequestTypeDef(BaseModel): + solutionArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDataDeletionJobsRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatasetExportJobsRequestRequestTypeDef(BaseModel): + datasetArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatasetGroupsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatasetImportJobsRequestRequestTypeDef(BaseModel): + datasetArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDatasetsRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListEventTrackersRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFiltersRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListMetricAttributionMetricsRequestRequestTypeDef(BaseModel): + metricAttributionArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListMetricAttributionsRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class MetricAttributionSummaryTypeDef(BaseModel): + name: Optional[str] = None + metricAttributionArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class ListRecipesRequestRequestTypeDef(BaseModel): + recipeProvider: Optional[Literal["SERVICE"]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + domain: Optional[DomainType] = None + +class RecipeSummaryTypeDef(BaseModel): + name: Optional[str] = None + recipeArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + domain: Optional[DomainType] = None + +class ListRecommendersRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListSchemasRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListSolutionVersionsRequestRequestTypeDef(BaseModel): + solutionArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SolutionVersionSummaryTypeDef(BaseModel): + solutionVersionArn: Optional[str] = None + status: Optional[str] = None + trainingMode: Optional[TrainingModeType] = None + trainingType: Optional[TrainingTypeType] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class ListSolutionsRequestRequestTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SolutionSummaryTypeDef(BaseModel): + name: Optional[str] = None + solutionArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + recipeArn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class OptimizationObjectiveTypeDef(BaseModel): + itemAttribute: Optional[str] = None + objectiveSensitivity: Optional[ObjectiveSensitivityType] = None + +class TrainingDataConfigExtraOutputTypeDef(BaseModel): + excludedDatasetColumns: Optional[Dict[str, List[str]]] = None + +class TrainingDataConfigOutputTypeDef(BaseModel): + excludedDatasetColumns: Optional[Dict[str, List[str]]] = None + +class TrainingDataConfigTypeDef(BaseModel): + excludedDatasetColumns: Optional[Mapping[str, Sequence[str]]] = None + +class TunedHPOParamsTypeDef(BaseModel): + algorithmHyperParameters: Optional[Dict[str, str]] = None + +class StartRecommenderRequestRequestTypeDef(BaseModel): + recommenderArn: str + +class StopRecommenderRequestRequestTypeDef(BaseModel): + recommenderArn: str + +class StopSolutionVersionCreationRequestRequestTypeDef(BaseModel): + solutionVersionArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateDatasetRequestRequestTypeDef(BaseModel): + datasetArn: str + schemaArn: str + +class BatchInferenceJobInputTypeDef(BaseModel): + s3DataSource: S3DataConfigTypeDef + +class BatchInferenceJobOutputTypeDef(BaseModel): + s3DataDestination: S3DataConfigTypeDef + +class BatchSegmentJobInputTypeDef(BaseModel): + s3DataSource: S3DataConfigTypeDef + +class BatchSegmentJobOutputTypeDef(BaseModel): + s3DataDestination: S3DataConfigTypeDef + +class DatasetExportJobOutputTypeDef(BaseModel): + s3DataDestination: S3DataConfigTypeDef + +class MetricAttributionOutputTypeDef(BaseModel): + roleArn: str + s3DataDestination: Optional[S3DataConfigTypeDef] = None + +class CampaignUpdateSummaryTypeDef(BaseModel): + solutionVersionArn: Optional[str] = None + minProvisionedTPS: Optional[int] = None + campaignConfig: Optional[CampaignConfigOutputTypeDef] = None + status: Optional[str] = None + failureReason: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class UpdateCampaignRequestRequestTypeDef(BaseModel): + campaignArn: str + solutionVersionArn: Optional[str] = None + minProvisionedTPS: Optional[int] = None + campaignConfig: Optional[CampaignConfigTypeDef] = None + +class CreateCampaignRequestRequestTypeDef(BaseModel): + name: str + solutionVersionArn: str + minProvisionedTPS: Optional[int] = None + campaignConfig: Optional[CampaignConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDatasetGroupRequestRequestTypeDef(BaseModel): + name: str + roleArn: Optional[str] = None + kmsKeyArn: Optional[str] = None + domain: Optional[DomainType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDatasetRequestRequestTypeDef(BaseModel): + name: str + schemaArn: str + datasetGroupArn: str + datasetType: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEventTrackerRequestRequestTypeDef(BaseModel): + name: str + datasetGroupArn: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateFilterRequestRequestTypeDef(BaseModel): + name: str + datasetGroupArn: str + filterExpression: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSolutionVersionRequestRequestTypeDef(BaseModel): + solutionArn: str + name: Optional[str] = None + trainingMode: Optional[TrainingModeType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateBatchInferenceJobResponseTypeDef(BaseModel): + batchInferenceJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBatchSegmentJobResponseTypeDef(BaseModel): + batchSegmentJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCampaignResponseTypeDef(BaseModel): + campaignArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataDeletionJobResponseTypeDef(BaseModel): + dataDeletionJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetExportJobResponseTypeDef(BaseModel): + datasetExportJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetGroupResponseTypeDef(BaseModel): + datasetGroupArn: str + domain: DomainType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetImportJobResponseTypeDef(BaseModel): + datasetImportJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetResponseTypeDef(BaseModel): + datasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventTrackerResponseTypeDef(BaseModel): + eventTrackerArn: str + trackingId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFilterResponseTypeDef(BaseModel): + filterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMetricAttributionResponseTypeDef(BaseModel): + metricAttributionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecommenderResponseTypeDef(BaseModel): + recommenderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSchemaResponseTypeDef(BaseModel): + schemaArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSolutionResponseTypeDef(BaseModel): + solutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSolutionVersionResponseTypeDef(BaseModel): + solutionVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolutionMetricsResponseTypeDef(BaseModel): + solutionVersionArn: str + metrics: Dict[str, float] + ResponseMetadata: ResponseMetadataTypeDef + +class ListBatchInferenceJobsResponseTypeDef(BaseModel): + batchInferenceJobs: List[BatchInferenceJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListBatchSegmentJobsResponseTypeDef(BaseModel): + batchSegmentJobs: List[BatchSegmentJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCampaignsResponseTypeDef(BaseModel): + campaigns: List[CampaignSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartRecommenderResponseTypeDef(BaseModel): + recommenderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopRecommenderResponseTypeDef(BaseModel): + recommenderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCampaignResponseTypeDef(BaseModel): + campaignArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatasetResponseTypeDef(BaseModel): + datasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMetricAttributionResponseTypeDef(BaseModel): + metricAttributionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRecommenderResponseTypeDef(BaseModel): + recommenderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataDeletionJobRequestRequestTypeDef(BaseModel): + jobName: str + datasetGroupArn: str + dataSource: DataSourceTypeDef + roleArn: str + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDatasetImportJobRequestRequestTypeDef(BaseModel): + jobName: str + datasetArn: str + dataSource: DataSourceTypeDef + roleArn: str + tags: Optional[Sequence[TagTypeDef]] = None + importMode: Optional[ImportModeType] = None + publishAttributionMetricsToS3: Optional[bool] = None + +class DataDeletionJobTypeDef(BaseModel): + jobName: Optional[str] = None + dataDeletionJobArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + dataSource: Optional[DataSourceTypeDef] = None + roleArn: Optional[str] = None + status: Optional[str] = None + numDeleted: Optional[int] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class DatasetImportJobTypeDef(BaseModel): + jobName: Optional[str] = None + datasetImportJobArn: Optional[str] = None + datasetArn: Optional[str] = None + dataSource: Optional[DataSourceTypeDef] = None + roleArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + importMode: Optional[ImportModeType] = None + publishAttributionMetricsToS3: Optional[bool] = None + +class ListMetricAttributionMetricsResponseTypeDef(BaseModel): + metrics: List[MetricAttributeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataDeletionJobsResponseTypeDef(BaseModel): + dataDeletionJobs: List[DataDeletionJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetExportJobsResponseTypeDef(BaseModel): + datasetExportJobs: List[DatasetExportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetGroupsResponseTypeDef(BaseModel): + datasetGroups: List[DatasetGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetGroupResponseTypeDef(BaseModel): + datasetGroup: DatasetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetImportJobsResponseTypeDef(BaseModel): + datasetImportJobs: List[DatasetImportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchemasResponseTypeDef(BaseModel): + schemas: List[DatasetSchemaSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSchemaResponseTypeDef(BaseModel): + schema: DatasetSchemaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetsResponseTypeDef(BaseModel): + datasets: List[DatasetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DatasetTypeDef(BaseModel): + name: Optional[str] = None + datasetArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + datasetType: Optional[str] = None + schemaArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + latestDatasetUpdate: Optional[DatasetUpdateSummaryTypeDef] = None + trackingId: Optional[str] = None + +class DefaultHyperParameterRangesTypeDef(BaseModel): + integerHyperParameterRanges: Optional[List[DefaultIntegerHyperParameterRangeTypeDef]] = None + continuousHyperParameterRanges: Optional[ List[DefaultContinuousHyperParameterRangeTypeDef] ] = None + categoricalHyperParameterRanges: Optional[ List[DefaultCategoricalHyperParameterRangeTypeDef] ] = None + +class DescribeEventTrackerResponseTypeDef(BaseModel): + eventTracker: EventTrackerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFeatureTransformationResponseTypeDef(BaseModel): + featureTransformation: FeatureTransformationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFilterResponseTypeDef(BaseModel): + filter: FilterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRecipeResponseTypeDef(BaseModel): + recipe: RecipeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEventTrackersResponseTypeDef(BaseModel): + eventTrackers: List[EventTrackerSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ThemeGenerationConfigTypeDef(BaseModel): + fieldsForThemeGeneration: FieldsForThemeGenerationTypeDef + +class ListFiltersResponseTypeDef(BaseModel): + Filters: List[FilterSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class HyperParameterRangesOutputTypeDef(BaseModel): + integerHyperParameterRanges: Optional[List[IntegerHyperParameterRangeTypeDef]] = None + continuousHyperParameterRanges: Optional[List[ContinuousHyperParameterRangeTypeDef]] = None + categoricalHyperParameterRanges: Optional[ List[CategoricalHyperParameterRangeOutputTypeDef] ] = None + +class HyperParameterRangesTypeDef(BaseModel): + integerHyperParameterRanges: Optional[Sequence[IntegerHyperParameterRangeTypeDef]] = None + continuousHyperParameterRanges: Optional[ Sequence[ContinuousHyperParameterRangeTypeDef] ] = None + categoricalHyperParameterRanges: Optional[ Sequence[CategoricalHyperParameterRangeTypeDef] ] = None + +class ListBatchInferenceJobsRequestListBatchInferenceJobsPaginateTypeDef(BaseModel): + solutionVersionArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListBatchSegmentJobsRequestListBatchSegmentJobsPaginateTypeDef(BaseModel): + solutionVersionArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCampaignsRequestListCampaignsPaginateTypeDef(BaseModel): + solutionArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetExportJobsRequestListDatasetExportJobsPaginateTypeDef(BaseModel): + datasetArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetGroupsRequestListDatasetGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetImportJobsRequestListDatasetImportJobsPaginateTypeDef(BaseModel): + datasetArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetsRequestListDatasetsPaginateTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEventTrackersRequestListEventTrackersPaginateTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFiltersRequestListFiltersPaginateTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMetricAttributionMetricsRequestListMetricAttributionMetricsPaginateTypeDef(BaseModel): + metricAttributionArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMetricAttributionsRequestListMetricAttributionsPaginateTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecipesRequestListRecipesPaginateTypeDef(BaseModel): + recipeProvider: Optional[Literal["SERVICE"]] = None + domain: Optional[DomainType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendersRequestListRecommendersPaginateTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemasRequestListSchemasPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolutionVersionsRequestListSolutionVersionsPaginateTypeDef(BaseModel): + solutionArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolutionsRequestListSolutionsPaginateTypeDef(BaseModel): + datasetGroupArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMetricAttributionsResponseTypeDef(BaseModel): + metricAttributions: List[MetricAttributionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecipesResponseTypeDef(BaseModel): + recipes: List[RecipeSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSolutionVersionsResponseTypeDef(BaseModel): + solutionVersions: List[SolutionVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSolutionsResponseTypeDef(BaseModel): + solutions: List[SolutionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecommenderConfigExtraOutputTypeDef(BaseModel): + itemExplorationConfig: Optional[Dict[str, str]] = None + minRecommendationRequestsPerSecond: Optional[int] = None + trainingDataConfig: Optional[TrainingDataConfigExtraOutputTypeDef] = None + enableMetadataWithRecommendations: Optional[bool] = None + +class RecommenderConfigOutputTypeDef(BaseModel): + itemExplorationConfig: Optional[Dict[str, str]] = None + minRecommendationRequestsPerSecond: Optional[int] = None + trainingDataConfig: Optional[TrainingDataConfigOutputTypeDef] = None + enableMetadataWithRecommendations: Optional[bool] = None + +class RecommenderConfigTypeDef(BaseModel): + itemExplorationConfig: Optional[Mapping[str, str]] = None + minRecommendationRequestsPerSecond: Optional[int] = None + trainingDataConfig: Optional[TrainingDataConfigTypeDef] = None + enableMetadataWithRecommendations: Optional[bool] = None + +class BatchSegmentJobTypeDef(BaseModel): + jobName: Optional[str] = None + batchSegmentJobArn: Optional[str] = None + filterArn: Optional[str] = None + failureReason: Optional[str] = None + solutionVersionArn: Optional[str] = None + numResults: Optional[int] = None + jobInput: Optional[BatchSegmentJobInputTypeDef] = None + jobOutput: Optional[BatchSegmentJobOutputTypeDef] = None + roleArn: Optional[str] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class CreateBatchSegmentJobRequestRequestTypeDef(BaseModel): + jobName: str + solutionVersionArn: str + jobInput: BatchSegmentJobInputTypeDef + jobOutput: BatchSegmentJobOutputTypeDef + roleArn: str + filterArn: Optional[str] = None + numResults: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDatasetExportJobRequestRequestTypeDef(BaseModel): + jobName: str + datasetArn: str + roleArn: str + jobOutput: DatasetExportJobOutputTypeDef + ingestionMode: Optional[IngestionModeType] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class DatasetExportJobTypeDef(BaseModel): + jobName: Optional[str] = None + datasetExportJobArn: Optional[str] = None + datasetArn: Optional[str] = None + ingestionMode: Optional[IngestionModeType] = None + roleArn: Optional[str] = None + status: Optional[str] = None + jobOutput: Optional[DatasetExportJobOutputTypeDef] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class CreateMetricAttributionRequestRequestTypeDef(BaseModel): + name: str + datasetGroupArn: str + metrics: Sequence[MetricAttributeTypeDef] + metricsOutputConfig: MetricAttributionOutputTypeDef + +class MetricAttributionTypeDef(BaseModel): + name: Optional[str] = None + metricAttributionArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + metricsOutputConfig: Optional[MetricAttributionOutputTypeDef] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + failureReason: Optional[str] = None + +class UpdateMetricAttributionRequestRequestTypeDef(BaseModel): + addMetrics: Optional[Sequence[MetricAttributeTypeDef]] = None + removeMetrics: Optional[Sequence[str]] = None + metricsOutputConfig: Optional[MetricAttributionOutputTypeDef] = None + metricAttributionArn: Optional[str] = None + +class CampaignTypeDef(BaseModel): + name: Optional[str] = None + campaignArn: Optional[str] = None + solutionVersionArn: Optional[str] = None + minProvisionedTPS: Optional[int] = None + campaignConfig: Optional[CampaignConfigOutputTypeDef] = None + status: Optional[str] = None + failureReason: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + latestCampaignUpdate: Optional[CampaignUpdateSummaryTypeDef] = None + +class DescribeDataDeletionJobResponseTypeDef(BaseModel): + dataDeletionJob: DataDeletionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetImportJobResponseTypeDef(BaseModel): + datasetImportJob: DatasetImportJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetResponseTypeDef(BaseModel): + dataset: DatasetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AlgorithmTypeDef(BaseModel): + name: Optional[str] = None + algorithmArn: Optional[str] = None + algorithmImage: Optional[AlgorithmImageTypeDef] = None + defaultHyperParameters: Optional[Dict[str, str]] = None + defaultHyperParameterRanges: Optional[DefaultHyperParameterRangesTypeDef] = None + defaultResourceConfig: Optional[Dict[str, str]] = None + trainingInputMode: Optional[str] = None + roleArn: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class BatchInferenceJobTypeDef(BaseModel): + jobName: Optional[str] = None + batchInferenceJobArn: Optional[str] = None + filterArn: Optional[str] = None + failureReason: Optional[str] = None + solutionVersionArn: Optional[str] = None + numResults: Optional[int] = None + jobInput: Optional[BatchInferenceJobInputTypeDef] = None + jobOutput: Optional[BatchInferenceJobOutputTypeDef] = None + batchInferenceJobConfig: Optional[BatchInferenceJobConfigOutputTypeDef] = None + roleArn: Optional[str] = None + batchInferenceJobMode: Optional[BatchInferenceJobModeType] = None + themeGenerationConfig: Optional[ThemeGenerationConfigTypeDef] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class CreateBatchInferenceJobRequestRequestTypeDef(BaseModel): + jobName: str + solutionVersionArn: str + jobInput: BatchInferenceJobInputTypeDef + jobOutput: BatchInferenceJobOutputTypeDef + roleArn: str + filterArn: Optional[str] = None + numResults: Optional[int] = None + batchInferenceJobConfig: Optional[BatchInferenceJobConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + batchInferenceJobMode: Optional[BatchInferenceJobModeType] = None + themeGenerationConfig: Optional[ThemeGenerationConfigTypeDef] = None + +class HPOConfigOutputTypeDef(BaseModel): + hpoObjective: Optional[HPOObjectiveTypeDef] = None + hpoResourceConfig: Optional[HPOResourceConfigTypeDef] = None + algorithmHyperParameterRanges: Optional[HyperParameterRangesOutputTypeDef] = None + +class HPOConfigTypeDef(BaseModel): + hpoObjective: Optional[HPOObjectiveTypeDef] = None + hpoResourceConfig: Optional[HPOResourceConfigTypeDef] = None + algorithmHyperParameterRanges: Optional[HyperParameterRangesTypeDef] = None + +class RecommenderSummaryTypeDef(BaseModel): + name: Optional[str] = None + recommenderArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + recipeArn: Optional[str] = None + recommenderConfig: Optional[RecommenderConfigOutputTypeDef] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + +class RecommenderUpdateSummaryTypeDef(BaseModel): + recommenderConfig: Optional[RecommenderConfigOutputTypeDef] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + status: Optional[str] = None + failureReason: Optional[str] = None + +class CreateRecommenderRequestRequestTypeDef(BaseModel): + name: str + datasetGroupArn: str + recipeArn: str + recommenderConfig: Optional[RecommenderConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateRecommenderRequestRequestTypeDef(BaseModel): + recommenderArn: str + recommenderConfig: RecommenderConfigTypeDef + +class DescribeBatchSegmentJobResponseTypeDef(BaseModel): + batchSegmentJob: BatchSegmentJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatasetExportJobResponseTypeDef(BaseModel): + datasetExportJob: DatasetExportJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMetricAttributionResponseTypeDef(BaseModel): + metricAttribution: MetricAttributionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCampaignResponseTypeDef(BaseModel): + campaign: CampaignTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAlgorithmResponseTypeDef(BaseModel): + algorithm: AlgorithmTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBatchInferenceJobResponseTypeDef(BaseModel): + batchInferenceJob: BatchInferenceJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SolutionConfigOutputTypeDef(BaseModel): + eventValueThreshold: Optional[str] = None + hpoConfig: Optional[HPOConfigOutputTypeDef] = None + algorithmHyperParameters: Optional[Dict[str, str]] = None + featureTransformationParameters: Optional[Dict[str, str]] = None + autoMLConfig: Optional[AutoMLConfigOutputTypeDef] = None + optimizationObjective: Optional[OptimizationObjectiveTypeDef] = None + trainingDataConfig: Optional[TrainingDataConfigOutputTypeDef] = None + autoTrainingConfig: Optional[AutoTrainingConfigTypeDef] = None + +class SolutionConfigTypeDef(BaseModel): + eventValueThreshold: Optional[str] = None + hpoConfig: Optional[HPOConfigTypeDef] = None + algorithmHyperParameters: Optional[Mapping[str, str]] = None + featureTransformationParameters: Optional[Mapping[str, str]] = None + autoMLConfig: Optional[AutoMLConfigTypeDef] = None + optimizationObjective: Optional[OptimizationObjectiveTypeDef] = None + trainingDataConfig: Optional[TrainingDataConfigTypeDef] = None + autoTrainingConfig: Optional[AutoTrainingConfigTypeDef] = None + +class ListRecommendersResponseTypeDef(BaseModel): + recommenders: List[RecommenderSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecommenderTypeDef(BaseModel): + recommenderArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + name: Optional[str] = None + recipeArn: Optional[str] = None + recommenderConfig: Optional[RecommenderConfigOutputTypeDef] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + status: Optional[str] = None + failureReason: Optional[str] = None + latestRecommenderUpdate: Optional[RecommenderUpdateSummaryTypeDef] = None + modelMetrics: Optional[Dict[str, float]] = None + +class SolutionTypeDef(BaseModel): + name: Optional[str] = None + solutionArn: Optional[str] = None + performHPO: Optional[bool] = None + performAutoML: Optional[bool] = None + performAutoTraining: Optional[bool] = None + recipeArn: Optional[str] = None + datasetGroupArn: Optional[str] = None + eventType: Optional[str] = None + solutionConfig: Optional[SolutionConfigOutputTypeDef] = None + autoMLResult: Optional[AutoMLResultTypeDef] = None + status: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + latestSolutionVersion: Optional[SolutionVersionSummaryTypeDef] = None + +class SolutionVersionTypeDef(BaseModel): + name: Optional[str] = None + solutionVersionArn: Optional[str] = None + solutionArn: Optional[str] = None + performHPO: Optional[bool] = None + performAutoML: Optional[bool] = None + recipeArn: Optional[str] = None + eventType: Optional[str] = None + datasetGroupArn: Optional[str] = None + solutionConfig: Optional[SolutionConfigOutputTypeDef] = None + trainingHours: Optional[float] = None + trainingMode: Optional[TrainingModeType] = None + tunedHPOParams: Optional[TunedHPOParamsTypeDef] = None + status: Optional[str] = None + failureReason: Optional[str] = None + creationDateTime: Optional[datetime] = None + lastUpdatedDateTime: Optional[datetime] = None + trainingType: Optional[TrainingTypeType] = None + +class CreateSolutionRequestRequestTypeDef(BaseModel): + name: str + datasetGroupArn: str + performHPO: Optional[bool] = None + performAutoML: Optional[bool] = None + performAutoTraining: Optional[bool] = None + recipeArn: Optional[str] = None + eventType: Optional[str] = None + solutionConfig: Optional[SolutionConfigTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeRecommenderResponseTypeDef(BaseModel): + recommender: RecommenderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSolutionResponseTypeDef(BaseModel): + solution: SolutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSolutionVersionResponseTypeDef(BaseModel): + solutionVersion: SolutionVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/personalize_constants.py b/aws_resource_validator/pydantic_models/personalize_constants.py new file mode 100644 index 00000000..3cd549c7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/personalize_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BatchInferenceJobModeType = Literal["BATCH_INFERENCE", "THEME_GENERATION"] +DomainType = Literal["ECOMMERCE", "VIDEO_ON_DEMAND"] +ImportModeType = Literal["FULL", "INCREMENTAL"] +IngestionModeType = Literal["ALL", "BULK", "PUT"] +ListBatchInferenceJobsPaginatorName = Literal["list_batch_inference_jobs"] +ListBatchSegmentJobsPaginatorName = Literal["list_batch_segment_jobs"] +ListCampaignsPaginatorName = Literal["list_campaigns"] +ListDatasetExportJobsPaginatorName = Literal["list_dataset_export_jobs"] +ListDatasetGroupsPaginatorName = Literal["list_dataset_groups"] +ListDatasetImportJobsPaginatorName = Literal["list_dataset_import_jobs"] +ListDatasetsPaginatorName = Literal["list_datasets"] +ListEventTrackersPaginatorName = Literal["list_event_trackers"] +ListFiltersPaginatorName = Literal["list_filters"] +ListMetricAttributionMetricsPaginatorName = Literal["list_metric_attribution_metrics"] +ListMetricAttributionsPaginatorName = Literal["list_metric_attributions"] +ListRecipesPaginatorName = Literal["list_recipes"] +ListRecommendersPaginatorName = Literal["list_recommenders"] +ListSchemasPaginatorName = Literal["list_schemas"] +ListSolutionVersionsPaginatorName = Literal["list_solution_versions"] +ListSolutionsPaginatorName = Literal["list_solutions"] +ObjectiveSensitivityType = Literal["HIGH", "LOW", "MEDIUM", "OFF"] +RecipeProviderType = Literal["SERVICE"] +TrainingModeType = Literal["AUTOTRAIN", "FULL", "UPDATE"] +TrainingTypeType = Literal["AUTOMATIC", "MANUAL"] +PersonalizeServiceName = Literal["personalize"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_batch_inference_jobs", + "list_batch_segment_jobs", + "list_campaigns", + "list_dataset_export_jobs", + "list_dataset_groups", + "list_dataset_import_jobs", + "list_datasets", + "list_event_trackers", + "list_filters", + "list_metric_attribution_metrics", + "list_metric_attributions", + "list_recipes", + "list_recommenders", + "list_schemas", + "list_solution_versions", + "list_solutions",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] +BatchInferenceJobConfigUnionTypeDef = Union[ 'BatchInferenceJobConfigTypeDef', 'BatchInferenceJobConfigOutputTypeDef' ] +CampaignConfigUnionTypeDef = Union['CampaignConfigTypeDef', 'CampaignConfigOutputTypeDef'] +RecommenderConfigUnionTypeDef = Union['RecommenderConfigTypeDef', 'RecommenderConfigExtraOutputTypeDef'] +SolutionConfigUnionTypeDef = Union['SolutionConfigTypeDef', 'SolutionConfigOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/personalize_events_classes.py b/aws_resource_validator/pydantic_models/personalize_events_classes.py new file mode 100644 index 00000000..590c6cdf --- /dev/null +++ b/aws_resource_validator/pydantic_models/personalize_events_classes.py @@ -0,0 +1,82 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.personalize_events_constants import * + +class ActionTypeDef(BaseModel): + actionId: str + properties: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class MetricAttributionTypeDef(BaseModel): + eventAttributionSource: str + +class ItemTypeDef(BaseModel): + itemId: str + properties: Optional[str] = None + +class UserTypeDef(BaseModel): + userId: str + properties: Optional[str] = None + +class ActionInteractionTypeDef(BaseModel): + actionId: str + sessionId: str + timestamp: TimestampTypeDef + eventType: str + userId: Optional[str] = None + eventId: Optional[str] = None + recommendationId: Optional[str] = None + impression: Optional[Sequence[str]] = None + properties: Optional[str] = None + +class PutActionsRequestRequestTypeDef(BaseModel): + datasetArn: str + actions: Sequence[ActionTypeDef] + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EventTypeDef(BaseModel): + eventType: str + sentAt: TimestampTypeDef + eventId: Optional[str] = None + eventValue: Optional[float] = None + itemId: Optional[str] = None + properties: Optional[str] = None + recommendationId: Optional[str] = None + impression: Optional[Sequence[str]] = None + metricAttribution: Optional[MetricAttributionTypeDef] = None + +class PutItemsRequestRequestTypeDef(BaseModel): + datasetArn: str + items: Sequence[ItemTypeDef] + +class PutUsersRequestRequestTypeDef(BaseModel): + datasetArn: str + users: Sequence[UserTypeDef] + +class PutActionInteractionsRequestRequestTypeDef(BaseModel): + trackingId: str + actionInteractions: Sequence[ActionInteractionTypeDef] + +class PutEventsRequestRequestTypeDef(BaseModel): + trackingId: str + sessionId: str + eventList: Sequence[EventTypeDef] + userId: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/personalize_events_constants.py b/aws_resource_validator/pydantic_models/personalize_events_constants.py new file mode 100644 index 00000000..732b3c9b --- /dev/null +++ b/aws_resource_validator/pydantic_models/personalize_events_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +PersonalizeEventsServiceName = Literal["personalize-events"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/personalize_runtime_classes.py b/aws_resource_validator/pydantic_models/personalize_runtime_classes.py new file mode 100644 index 00000000..9df24317 --- /dev/null +++ b/aws_resource_validator/pydantic_models/personalize_runtime_classes.py @@ -0,0 +1,80 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.personalize_runtime_constants import * + +class GetActionRecommendationsRequestRequestTypeDef(BaseModel): + campaignArn: Optional[str] = None + userId: Optional[str] = None + numResults: Optional[int] = None + filterArn: Optional[str] = None + filterValues: Optional[Mapping[str, str]] = None + +class PredictedActionTypeDef(BaseModel): + actionId: Optional[str] = None + score: Optional[float] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class GetPersonalizedRankingRequestRequestTypeDef(BaseModel): + campaignArn: str + inputList: Sequence[str] + userId: str + context: Optional[Mapping[str, str]] = None + filterArn: Optional[str] = None + filterValues: Optional[Mapping[str, str]] = None + metadataColumns: Optional[Mapping[str, Sequence[str]]] = None + +class PredictedItemTypeDef(BaseModel): + itemId: Optional[str] = None + score: Optional[float] = None + promotionName: Optional[str] = None + metadata: Optional[Dict[str, str]] = None + reason: Optional[List[str]] = None + +class PromotionTypeDef(BaseModel): + name: Optional[str] = None + percentPromotedItems: Optional[int] = None + filterArn: Optional[str] = None + filterValues: Optional[Mapping[str, str]] = None + +class GetActionRecommendationsResponseTypeDef(BaseModel): + actionList: List[PredictedActionTypeDef] + recommendationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPersonalizedRankingResponseTypeDef(BaseModel): + personalizedRanking: List[PredictedItemTypeDef] + recommendationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationsResponseTypeDef(BaseModel): + itemList: List[PredictedItemTypeDef] + recommendationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationsRequestRequestTypeDef(BaseModel): + campaignArn: Optional[str] = None + itemId: Optional[str] = None + userId: Optional[str] = None + numResults: Optional[int] = None + context: Optional[Mapping[str, str]] = None + filterArn: Optional[str] = None + filterValues: Optional[Mapping[str, str]] = None + recommenderArn: Optional[str] = None + promotions: Optional[Sequence[PromotionTypeDef]] = None + metadataColumns: Optional[Mapping[str, Sequence[str]]] = None + diff --git a/aws_resource_validator/pydantic_models/personalize_runtime_constants.py b/aws_resource_validator/pydantic_models/personalize_runtime_constants.py new file mode 100644 index 00000000..43f6f52a --- /dev/null +++ b/aws_resource_validator/pydantic_models/personalize_runtime_constants.py @@ -0,0 +1,397 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +PersonalizeRuntimeServiceName = Literal["personalize-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/pi_classes.py b/aws_resource_validator/pydantic_models/pi_classes.py new file mode 100644 index 00000000..9f0f7479 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pi_classes.py @@ -0,0 +1,266 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pi_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AnalysisReportTypeDef(BaseModel): + AnalysisReportId: str + Identifier: Optional[str] = None + ServiceType: Optional[ServiceTypeType] = None + CreateTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Status: Optional[AnalysisStatusType] = None + Insights: Optional[List["InsightTypeDef"]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DataPointTypeDef(BaseModel): + Timestamp: datetime + Value: float + +class PerformanceInsightsMetricTypeDef(BaseModel): + Metric: Optional[str] = None + DisplayName: Optional[str] = None + Dimensions: Optional[Dict[str, str]] = None + Value: Optional[float] = None + +class DeletePerformanceAnalysisReportRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + AnalysisReportId: str + +class DimensionGroupTypeDef(BaseModel): + Group: str + Dimensions: Optional[Sequence[str]] = None + Limit: Optional[int] = None + +class DimensionKeyDescriptionTypeDef(BaseModel): + Dimensions: Optional[Dict[str, str]] = None + Total: Optional[float] = None + AdditionalMetrics: Optional[Dict[str, float]] = None + Partitions: Optional[List[float]] = None + +class ResponsePartitionKeyTypeDef(BaseModel): + Dimensions: Dict[str, str] + +class DimensionDetailTypeDef(BaseModel): + Identifier: Optional[str] = None + +class DimensionKeyDetailTypeDef(BaseModel): + Value: Optional[str] = None + Dimension: Optional[str] = None + Status: Optional[DetailStatusType] = None + +class FeatureMetadataTypeDef(BaseModel): + Status: Optional[FeatureStatusType] = None + +class GetDimensionKeyDetailsRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + Group: str + GroupIdentifier: str + RequestedDimensions: Optional[Sequence[str]] = None + +class GetPerformanceAnalysisReportRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + AnalysisReportId: str + TextFormat: Optional[TextFormatType] = None + AcceptLanguage: Optional[Literal["EN_US"]] = None + +class GetResourceMetadataRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + +class RecommendationTypeDef(BaseModel): + RecommendationId: Optional[str] = None + RecommendationDescription: Optional[str] = None + +class ListAvailableResourceDimensionsRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + Metrics: Sequence[str] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + AuthorizedActions: Optional[Sequence[FineGrainedActionType]] = None + +class ListAvailableResourceMetricsRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + MetricTypes: Sequence[str] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResponseResourceMetricTypeDef(BaseModel): + Metric: Optional[str] = None + Description: Optional[str] = None + Unit: Optional[str] = None + +class ListPerformanceAnalysisReportsRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ListTags: Optional[bool] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + ResourceARN: str + +class ResponseResourceMetricKeyTypeDef(BaseModel): + Metric: str + Dimensions: Optional[Dict[str, str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + ResourceARN: str + TagKeys: Sequence[str] + +class AnalysisReportSummaryTypeDef(BaseModel): + AnalysisReportId: Optional[str] = None + CreateTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Status: Optional[AnalysisStatusType] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreatePerformanceAnalysisReportRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePerformanceAnalysisReportResponseTypeDef(BaseModel): + AnalysisReportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPerformanceAnalysisReportResponseTypeDef(BaseModel): + AnalysisReport: AnalysisReportTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DataTypeDef(BaseModel): + PerformanceInsightsMetric: Optional[PerformanceInsightsMetricTypeDef] = None + +class DescribeDimensionKeysRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + Metric: str + GroupBy: DimensionGroupTypeDef + PeriodInSeconds: Optional[int] = None + AdditionalMetrics: Optional[Sequence[str]] = None + PartitionBy: Optional[DimensionGroupTypeDef] = None + Filter: Optional[Mapping[str, str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MetricQueryTypeDef(BaseModel): + Metric: str + GroupBy: Optional[DimensionGroupTypeDef] = None + Filter: Optional[Mapping[str, str]] = None + +class DescribeDimensionKeysResponseTypeDef(BaseModel): + AlignedStartTime: datetime + AlignedEndTime: datetime + PartitionKeys: List[ResponsePartitionKeyTypeDef] + Keys: List[DimensionKeyDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DimensionGroupDetailTypeDef(BaseModel): + Group: Optional[str] = None + Dimensions: Optional[List[DimensionDetailTypeDef]] = None + +class GetDimensionKeyDetailsResponseTypeDef(BaseModel): + Dimensions: List[DimensionKeyDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceMetadataResponseTypeDef(BaseModel): + Identifier: str + Features: Dict[str, FeatureMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAvailableResourceMetricsResponseTypeDef(BaseModel): + Metrics: List[ResponseResourceMetricTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MetricKeyDataPointsTypeDef(BaseModel): + Key: Optional[ResponseResourceMetricKeyTypeDef] = None + DataPoints: Optional[List[DataPointTypeDef]] = None + +class ListPerformanceAnalysisReportsResponseTypeDef(BaseModel): + AnalysisReports: List[AnalysisReportSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InsightTypeDef(BaseModel): + InsightId: str + InsightType: Optional[str] = None + Context: Optional[ContextTypeType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Severity: Optional[SeverityType] = None + SupportingInsights: Optional[List[Dict[str, Any]]] = None + Description: Optional[str] = None + Recommendations: Optional[List[RecommendationTypeDef]] = None + InsightData: Optional[List[DataTypeDef]] = None + BaselineData: Optional[List[DataTypeDef]] = None + +class GetResourceMetricsRequestRequestTypeDef(BaseModel): + ServiceType: ServiceTypeType + Identifier: str + MetricQueries: Sequence[MetricQueryTypeDef] + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + PeriodInSeconds: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + PeriodAlignment: Optional[PeriodAlignmentType] = None + +class MetricDimensionGroupsTypeDef(BaseModel): + Metric: Optional[str] = None + Groups: Optional[List[DimensionGroupDetailTypeDef]] = None + +class GetResourceMetricsResponseTypeDef(BaseModel): + AlignedStartTime: datetime + AlignedEndTime: datetime + Identifier: str + MetricList: List[MetricKeyDataPointsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAvailableResourceDimensionsResponseTypeDef(BaseModel): + MetricDimensions: List[MetricDimensionGroupsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/pi_constants.py b/aws_resource_validator/pydantic_models/pi_constants.py new file mode 100644 index 00000000..4395c964 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pi_constants.py @@ -0,0 +1,444 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceptLanguageType = Literal["EN_US"] +AnalysisStatusType = Literal["FAILED", "RUNNING", "SUCCEEDED"] +ContextTypeType = Literal["CAUSAL", "CONTEXTUAL"] +DetailStatusType = Literal["AVAILABLE", "PROCESSING", "UNAVAILABLE"] +FeatureStatusType = Literal["DISABLED", + "DISABLED_PENDING_REBOOT", + "ENABLED", + "ENABLED_PENDING_REBOOT", + "UNKNOWN", + "UNSUPPORTED",] +FineGrainedActionType = Literal["DescribeDimensionKeys", "GetDimensionKeyDetails", "GetResourceMetrics"] +PeriodAlignmentType = Literal["END_TIME", "START_TIME"] +ServiceTypeType = Literal["DOCDB", "RDS"] +SeverityType = Literal["HIGH", "LOW", "MEDIUM"] +TextFormatType = Literal["MARKDOWN", "PLAIN_TEXT"] +PIServiceName = Literal["pi"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/pinpoint_classes.py b/aws_resource_validator/pydantic_models/pinpoint_classes.py new file mode 100644 index 00000000..b0bd1325 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_classes.py @@ -0,0 +1,2789 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pinpoint_constants import * + +class ADMChannelRequestTypeDef(BaseModel): + ClientId: str + ClientSecret: str + Enabled: Optional[bool] = None + +class ADMChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class ADMMessageTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + ConsolidationKey: Optional[str] = None + Data: Optional[Mapping[str, str]] = None + ExpiresAfter: Optional[str] = None + IconReference: Optional[str] = None + ImageIconUrl: Optional[str] = None + ImageUrl: Optional[str] = None + MD5: Optional[str] = None + RawContent: Optional[str] = None + SilentPush: Optional[bool] = None + SmallImageIconUrl: Optional[str] = None + Sound: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class APNSChannelRequestTypeDef(BaseModel): + BundleId: Optional[str] = None + Certificate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + PrivateKey: Optional[str] = None + TeamId: Optional[str] = None + TokenKey: Optional[str] = None + TokenKeyId: Optional[str] = None + +class APNSChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + HasTokenKey: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class APNSMessageTypeDef(BaseModel): + APNSPushType: Optional[str] = None + Action: Optional[ActionType] = None + Badge: Optional[int] = None + Body: Optional[str] = None + Category: Optional[str] = None + CollapseId: Optional[str] = None + Data: Optional[Mapping[str, str]] = None + MediaUrl: Optional[str] = None + PreferredAuthenticationMethod: Optional[str] = None + Priority: Optional[str] = None + RawContent: Optional[str] = None + SilentPush: Optional[bool] = None + Sound: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + ThreadId: Optional[str] = None + TimeToLive: Optional[int] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class APNSPushNotificationTemplateTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + MediaUrl: Optional[str] = None + RawContent: Optional[str] = None + Sound: Optional[str] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class APNSSandboxChannelRequestTypeDef(BaseModel): + BundleId: Optional[str] = None + Certificate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + PrivateKey: Optional[str] = None + TeamId: Optional[str] = None + TokenKey: Optional[str] = None + TokenKeyId: Optional[str] = None + +class APNSSandboxChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + HasTokenKey: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class APNSVoipChannelRequestTypeDef(BaseModel): + BundleId: Optional[str] = None + Certificate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + PrivateKey: Optional[str] = None + TeamId: Optional[str] = None + TokenKey: Optional[str] = None + TokenKeyId: Optional[str] = None + +class APNSVoipChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + HasTokenKey: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class APNSVoipSandboxChannelRequestTypeDef(BaseModel): + BundleId: Optional[str] = None + Certificate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + PrivateKey: Optional[str] = None + TeamId: Optional[str] = None + TokenKey: Optional[str] = None + TokenKeyId: Optional[str] = None + +class APNSVoipSandboxChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + HasTokenKey: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class ActivityResponseTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + Id: str + End: Optional[str] = None + Result: Optional[str] = None + ScheduledStart: Optional[str] = None + Start: Optional[str] = None + State: Optional[str] = None + SuccessfulEndpointCount: Optional[int] = None + TimezonesCompletedCount: Optional[int] = None + TimezonesTotalCount: Optional[int] = None + TotalEndpointCount: Optional[int] = None + TreatmentId: Optional[str] = None + ExecutionMetrics: Optional[Dict[str, str]] = None + +class ContactCenterActivityTypeDef(BaseModel): + NextActivity: Optional[str] = None + +class HoldoutActivityTypeDef(BaseModel): + Percentage: int + NextActivity: Optional[str] = None + +class AddressConfigurationTypeDef(BaseModel): + BodyOverride: Optional[str] = None + ChannelType: Optional[ChannelTypeType] = None + Context: Optional[Mapping[str, str]] = None + RawContent: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + TitleOverride: Optional[str] = None + +class AndroidPushNotificationTemplateTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + ImageIconUrl: Optional[str] = None + ImageUrl: Optional[str] = None + RawContent: Optional[str] = None + SmallImageIconUrl: Optional[str] = None + Sound: Optional[str] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class ApplicationResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + tags: Optional[Dict[str, str]] = None + CreationDate: Optional[str] = None + +class JourneyTimeframeCapTypeDef(BaseModel): + Cap: Optional[int] = None + Days: Optional[int] = None + +class CampaignHookTypeDef(BaseModel): + LambdaFunctionName: Optional[str] = None + Mode: Optional[ModeType] = None + WebUrl: Optional[str] = None + +class CampaignLimitsTypeDef(BaseModel): + Daily: Optional[int] = None + MaximumDuration: Optional[int] = None + MessagesPerSecond: Optional[int] = None + Total: Optional[int] = None + Session: Optional[int] = None + +class QuietTimeTypeDef(BaseModel): + End: Optional[str] = None + Start: Optional[str] = None + +class AttributeDimensionOutputTypeDef(BaseModel): + Values: List[str] + AttributeType: Optional[AttributeTypeType] = None + +class AttributeDimensionTypeDef(BaseModel): + Values: Sequence[str] + AttributeType: Optional[AttributeTypeType] = None + +class AttributesResourceTypeDef(BaseModel): + ApplicationId: str + AttributeType: str + Attributes: Optional[List[str]] = None + +class BaiduChannelRequestTypeDef(BaseModel): + ApiKey: str + SecretKey: str + Enabled: Optional[bool] = None + +class BaiduChannelResponseTypeDef(BaseModel): + Credential: str + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class BaiduMessageTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + Data: Optional[Mapping[str, str]] = None + IconReference: Optional[str] = None + ImageIconUrl: Optional[str] = None + ImageUrl: Optional[str] = None + RawContent: Optional[str] = None + SilentPush: Optional[bool] = None + SmallImageIconUrl: Optional[str] = None + Sound: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + TimeToLive: Optional[int] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class CampaignCustomMessageTypeDef(BaseModel): + Data: Optional[str] = None + +class MessageHeaderTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class CampaignStateTypeDef(BaseModel): + CampaignStatus: Optional[CampaignStatusType] = None + +class CustomDeliveryConfigurationOutputTypeDef(BaseModel): + DeliveryUri: str + EndpointTypes: Optional[List[EndpointTypesElementType]] = None + +class CampaignSmsMessageTypeDef(BaseModel): + Body: Optional[str] = None + MessageType: Optional[MessageTypeType] = None + OriginationNumber: Optional[str] = None + SenderId: Optional[str] = None + EntityId: Optional[str] = None + TemplateId: Optional[str] = None + +class ChannelResponseTypeDef(BaseModel): + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class ClosedDaysRuleTypeDef(BaseModel): + Name: Optional[str] = None + StartDateTime: Optional[str] = None + EndDateTime: Optional[str] = None + +class WaitTimeTypeDef(BaseModel): + WaitFor: Optional[str] = None + WaitUntil: Optional[str] = None + +class CreateApplicationRequestTypeDef(BaseModel): + Name: str + tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateTemplateMessageBodyTypeDef(BaseModel): + Arn: Optional[str] = None + Message: Optional[str] = None + RequestID: Optional[str] = None + +class ExportJobRequestTypeDef(BaseModel): + RoleArn: str + S3UrlPrefix: str + SegmentId: Optional[str] = None + SegmentVersion: Optional[int] = None + +class ImportJobRequestTypeDef(BaseModel): + Format: FormatType + RoleArn: str + S3Url: str + DefineSegment: Optional[bool] = None + ExternalId: Optional[str] = None + RegisterEndpoints: Optional[bool] = None + SegmentId: Optional[str] = None + SegmentName: Optional[str] = None + +class TemplateCreateMessageBodyTypeDef(BaseModel): + Arn: Optional[str] = None + Message: Optional[str] = None + RequestID: Optional[str] = None + +class CreateRecommenderConfigurationTypeDef(BaseModel): + RecommendationProviderRoleArn: str + RecommendationProviderUri: str + Attributes: Optional[Mapping[str, str]] = None + Description: Optional[str] = None + Name: Optional[str] = None + RecommendationProviderIdType: Optional[str] = None + RecommendationTransformerUri: Optional[str] = None + RecommendationsDisplayName: Optional[str] = None + RecommendationsPerMessage: Optional[int] = None + +class RecommenderConfigurationResponseTypeDef(BaseModel): + CreationDate: str + Id: str + LastModifiedDate: str + RecommendationProviderRoleArn: str + RecommendationProviderUri: str + Attributes: Optional[Dict[str, str]] = None + Description: Optional[str] = None + Name: Optional[str] = None + RecommendationProviderIdType: Optional[str] = None + RecommendationTransformerUri: Optional[str] = None + RecommendationsDisplayName: Optional[str] = None + RecommendationsPerMessage: Optional[int] = None + +class SMSTemplateRequestTypeDef(BaseModel): + Body: Optional[str] = None + DefaultSubstitutions: Optional[str] = None + RecommenderId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + TemplateDescription: Optional[str] = None + +class VoiceTemplateRequestTypeDef(BaseModel): + Body: Optional[str] = None + DefaultSubstitutions: Optional[str] = None + LanguageCode: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + TemplateDescription: Optional[str] = None + VoiceId: Optional[str] = None + +class CustomDeliveryConfigurationTypeDef(BaseModel): + DeliveryUri: str + EndpointTypes: Optional[Sequence[EndpointTypesElementType]] = None + +class JourneyCustomMessageTypeDef(BaseModel): + Data: Optional[str] = None + +class DefaultButtonConfigurationTypeDef(BaseModel): + ButtonAction: ButtonActionType + Text: str + BackgroundColor: Optional[str] = None + BorderRadius: Optional[int] = None + Link: Optional[str] = None + TextColor: Optional[str] = None + +class DefaultMessageTypeDef(BaseModel): + Body: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + +class DefaultPushNotificationMessageTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + Data: Optional[Mapping[str, str]] = None + SilentPush: Optional[bool] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class DefaultPushNotificationTemplateTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + Sound: Optional[str] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class DeleteAdmChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteApnsChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteApnsSandboxChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteApnsVoipChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteApnsVoipSandboxChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteAppRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteBaiduChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class DeleteCampaignRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + +class DeleteEmailChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class EmailChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + ConfigurationSet: Optional[str] = None + CreationDate: Optional[str] = None + Enabled: Optional[bool] = None + FromAddress: Optional[str] = None + HasCredential: Optional[bool] = None + Id: Optional[str] = None + Identity: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + MessagesPerSecond: Optional[int] = None + RoleArn: Optional[str] = None + OrchestrationSendingRoleArn: Optional[str] = None + Version: Optional[int] = None + +class DeleteEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class MessageBodyTypeDef(BaseModel): + Message: Optional[str] = None + RequestID: Optional[str] = None + +class DeleteEndpointRequestRequestTypeDef(BaseModel): + ApplicationId: str + EndpointId: str + +class DeleteEventStreamRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class EventStreamTypeDef(BaseModel): + ApplicationId: str + DestinationStreamArn: str + RoleArn: str + ExternalId: Optional[str] = None + LastModifiedDate: Optional[str] = None + LastUpdatedBy: Optional[str] = None + +class DeleteGcmChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GCMChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + Credential: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + HasFcmServiceCredentials: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class DeleteInAppTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class DeleteJourneyRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + +class DeletePushTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class DeleteRecommenderConfigurationRequestRequestTypeDef(BaseModel): + RecommenderId: str + +class DeleteSegmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + +class DeleteSmsChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class SMSChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + PromotionalMessagesPerSecond: Optional[int] = None + SenderId: Optional[str] = None + ShortCode: Optional[str] = None + TransactionalMessagesPerSecond: Optional[int] = None + Version: Optional[int] = None + +class DeleteSmsTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class DeleteUserEndpointsRequestRequestTypeDef(BaseModel): + ApplicationId: str + UserId: str + +class DeleteVoiceChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class VoiceChannelResponseTypeDef(BaseModel): + Platform: str + ApplicationId: Optional[str] = None + CreationDate: Optional[str] = None + Enabled: Optional[bool] = None + HasCredential: Optional[bool] = None + Id: Optional[str] = None + IsArchived: Optional[bool] = None + LastModifiedBy: Optional[str] = None + LastModifiedDate: Optional[str] = None + Version: Optional[int] = None + +class DeleteVoiceTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class GCMMessageTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + CollapseKey: Optional[str] = None + Data: Optional[Mapping[str, str]] = None + IconReference: Optional[str] = None + ImageIconUrl: Optional[str] = None + ImageUrl: Optional[str] = None + PreferredAuthenticationMethod: Optional[str] = None + Priority: Optional[str] = None + RawContent: Optional[str] = None + RestrictedPackageName: Optional[str] = None + SilentPush: Optional[bool] = None + SmallImageIconUrl: Optional[str] = None + Sound: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + TimeToLive: Optional[int] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class SMSMessageTypeDef(BaseModel): + Body: Optional[str] = None + Keyword: Optional[str] = None + MediaUrl: Optional[str] = None + MessageType: Optional[MessageTypeType] = None + OriginationNumber: Optional[str] = None + SenderId: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + EntityId: Optional[str] = None + TemplateId: Optional[str] = None + +class VoiceMessageTypeDef(BaseModel): + Body: Optional[str] = None + LanguageCode: Optional[str] = None + OriginationNumber: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + VoiceId: Optional[str] = None + +class EmailChannelRequestTypeDef(BaseModel): + FromAddress: str + Identity: str + ConfigurationSet: Optional[str] = None + Enabled: Optional[bool] = None + RoleArn: Optional[str] = None + OrchestrationSendingRoleArn: Optional[str] = None + +class JourneyEmailMessageTypeDef(BaseModel): + FromAddress: Optional[str] = None + +class EndpointDemographicTypeDef(BaseModel): + AppVersion: Optional[str] = None + Locale: Optional[str] = None + Make: Optional[str] = None + Model: Optional[str] = None + ModelVersion: Optional[str] = None + Platform: Optional[str] = None + PlatformVersion: Optional[str] = None + Timezone: Optional[str] = None + +class EndpointLocationTypeDef(BaseModel): + City: Optional[str] = None + Country: Optional[str] = None + Latitude: Optional[float] = None + Longitude: Optional[float] = None + PostalCode: Optional[str] = None + Region: Optional[str] = None + +class EndpointUserTypeDef(BaseModel): + UserAttributes: Optional[Mapping[str, Sequence[str]]] = None + UserId: Optional[str] = None + +class EndpointItemResponseTypeDef(BaseModel): + Message: Optional[str] = None + StatusCode: Optional[int] = None + +class EndpointMessageResultTypeDef(BaseModel): + DeliveryStatus: DeliveryStatusType + StatusCode: int + Address: Optional[str] = None + MessageId: Optional[str] = None + StatusMessage: Optional[str] = None + UpdatedToken: Optional[str] = None + +class EndpointUserOutputTypeDef(BaseModel): + UserAttributes: Optional[Dict[str, List[str]]] = None + UserId: Optional[str] = None + +class EndpointSendConfigurationTypeDef(BaseModel): + BodyOverride: Optional[str] = None + Context: Optional[Mapping[str, str]] = None + RawContent: Optional[str] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + TitleOverride: Optional[str] = None + +class MetricDimensionTypeDef(BaseModel): + ComparisonOperator: str + Value: float + +class SetDimensionOutputTypeDef(BaseModel): + Values: List[str] + DimensionType: Optional[DimensionTypeType] = None + +class SetDimensionTypeDef(BaseModel): + Values: Sequence[str] + DimensionType: Optional[DimensionTypeType] = None + +class EventItemResponseTypeDef(BaseModel): + Message: Optional[str] = None + StatusCode: Optional[int] = None + +class SessionTypeDef(BaseModel): + Id: str + StartTimestamp: str + Duration: Optional[int] = None + StopTimestamp: Optional[str] = None + +class ExportJobResourceTypeDef(BaseModel): + RoleArn: str + S3UrlPrefix: str + SegmentId: Optional[str] = None + SegmentVersion: Optional[int] = None + +class GCMChannelRequestTypeDef(BaseModel): + ApiKey: Optional[str] = None + DefaultAuthenticationMethod: Optional[str] = None + Enabled: Optional[bool] = None + ServiceJson: Optional[str] = None + +class GPSCoordinatesTypeDef(BaseModel): + Latitude: float + Longitude: float + +class GetAdmChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApnsChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApnsSandboxChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApnsVoipChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApnsVoipSandboxChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetAppRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApplicationSettingsRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetAppsRequestRequestTypeDef(BaseModel): + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetBaiduChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetCampaignActivitiesRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetCampaignRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + +class GetCampaignVersionRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + Version: str + +class GetCampaignVersionsRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetCampaignsRequestRequestTypeDef(BaseModel): + ApplicationId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetChannelsRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetEmailChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class GetEndpointRequestRequestTypeDef(BaseModel): + ApplicationId: str + EndpointId: str + +class GetEventStreamRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetExportJobRequestRequestTypeDef(BaseModel): + ApplicationId: str + JobId: str + +class GetExportJobsRequestRequestTypeDef(BaseModel): + ApplicationId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetGcmChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetImportJobRequestRequestTypeDef(BaseModel): + ApplicationId: str + JobId: str + +class GetImportJobsRequestRequestTypeDef(BaseModel): + ApplicationId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetInAppMessagesRequestRequestTypeDef(BaseModel): + ApplicationId: str + EndpointId: str + +class GetInAppTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class GetJourneyExecutionActivityMetricsRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyActivityId: str + JourneyId: str + NextToken: Optional[str] = None + PageSize: Optional[str] = None + +class JourneyExecutionActivityMetricsResponseTypeDef(BaseModel): + ActivityType: str + ApplicationId: str + JourneyActivityId: str + JourneyId: str + LastEvaluatedTime: str + Metrics: Dict[str, str] + +class GetJourneyExecutionMetricsRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + NextToken: Optional[str] = None + PageSize: Optional[str] = None + +class JourneyExecutionMetricsResponseTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + LastEvaluatedTime: str + Metrics: Dict[str, str] + +class GetJourneyRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + +class GetJourneyRunExecutionActivityMetricsRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyActivityId: str + JourneyId: str + RunId: str + NextToken: Optional[str] = None + PageSize: Optional[str] = None + +class JourneyRunExecutionActivityMetricsResponseTypeDef(BaseModel): + ActivityType: str + ApplicationId: str + JourneyActivityId: str + JourneyId: str + LastEvaluatedTime: str + Metrics: Dict[str, str] + RunId: str + +class GetJourneyRunExecutionMetricsRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + RunId: str + NextToken: Optional[str] = None + PageSize: Optional[str] = None + +class JourneyRunExecutionMetricsResponseTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + LastEvaluatedTime: str + Metrics: Dict[str, str] + RunId: str + +class GetJourneyRunsRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetPushTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class GetRecommenderConfigurationRequestRequestTypeDef(BaseModel): + RecommenderId: str + +class GetRecommenderConfigurationsRequestRequestTypeDef(BaseModel): + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetSegmentExportJobsRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetSegmentImportJobsRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetSegmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + +class GetSegmentVersionRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + Version: str + +class GetSegmentVersionsRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetSegmentsRequestRequestTypeDef(BaseModel): + ApplicationId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class GetSmsChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetSmsTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class SMSTemplateResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: TemplateTypeType + Arn: Optional[str] = None + Body: Optional[str] = None + DefaultSubstitutions: Optional[str] = None + RecommenderId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + TemplateDescription: Optional[str] = None + Version: Optional[str] = None + +class GetUserEndpointsRequestRequestTypeDef(BaseModel): + ApplicationId: str + UserId: str + +class GetVoiceChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetVoiceTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + Version: Optional[str] = None + +class VoiceTemplateResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: TemplateTypeType + Arn: Optional[str] = None + Body: Optional[str] = None + DefaultSubstitutions: Optional[str] = None + LanguageCode: Optional[str] = None + tags: Optional[Dict[str, str]] = None + TemplateDescription: Optional[str] = None + Version: Optional[str] = None + VoiceId: Optional[str] = None + +class ImportJobResourceTypeDef(BaseModel): + Format: FormatType + RoleArn: str + S3Url: str + DefineSegment: Optional[bool] = None + ExternalId: Optional[str] = None + RegisterEndpoints: Optional[bool] = None + SegmentId: Optional[str] = None + SegmentName: Optional[str] = None + +class InAppMessageBodyConfigTypeDef(BaseModel): + Alignment: AlignmentType + Body: str + TextColor: str + +class OverrideButtonConfigurationTypeDef(BaseModel): + ButtonAction: ButtonActionType + Link: Optional[str] = None + +class InAppMessageHeaderConfigTypeDef(BaseModel): + Alignment: AlignmentType + Header: str + TextColor: str + +class JourneyChannelSettingsTypeDef(BaseModel): + ConnectCampaignArn: Optional[str] = None + ConnectCampaignExecutionRoleArn: Optional[str] = None + +class JourneyPushMessageTypeDef(BaseModel): + TimeToLive: Optional[str] = None + +class JourneyScheduleOutputTypeDef(BaseModel): + EndTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + Timezone: Optional[str] = None + +class JourneyRunResponseTypeDef(BaseModel): + CreationTime: str + LastUpdateTime: str + RunId: str + Status: JourneyRunStatusType + +class JourneySMSMessageTypeDef(BaseModel): + MessageType: Optional[MessageTypeType] = None + OriginationNumber: Optional[str] = None + SenderId: Optional[str] = None + EntityId: Optional[str] = None + TemplateId: Optional[str] = None + +class JourneyStateRequestTypeDef(BaseModel): + State: Optional[StateType] = None + +class ListJourneysRequestRequestTypeDef(BaseModel): + ApplicationId: str + PageSize: Optional[str] = None + Token: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagsModelOutputTypeDef(BaseModel): + tags: Dict[str, str] + +class ListTemplateVersionsRequestRequestTypeDef(BaseModel): + TemplateName: str + TemplateType: str + NextToken: Optional[str] = None + PageSize: Optional[str] = None + +class ListTemplatesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[str] = None + Prefix: Optional[str] = None + TemplateType: Optional[str] = None + +class MessageTypeDef(BaseModel): + Action: Optional[ActionType] = None + Body: Optional[str] = None + ImageIconUrl: Optional[str] = None + ImageSmallIconUrl: Optional[str] = None + ImageUrl: Optional[str] = None + JsonBody: Optional[str] = None + MediaUrl: Optional[str] = None + RawContent: Optional[str] = None + SilentPush: Optional[bool] = None + TimeToLive: Optional[int] = None + Title: Optional[str] = None + Url: Optional[str] = None + +class MessageResultTypeDef(BaseModel): + DeliveryStatus: DeliveryStatusType + StatusCode: int + MessageId: Optional[str] = None + StatusMessage: Optional[str] = None + UpdatedToken: Optional[str] = None + +class NumberValidateRequestTypeDef(BaseModel): + IsoCountryCode: Optional[str] = None + PhoneNumber: Optional[str] = None + +class NumberValidateResponseTypeDef(BaseModel): + Carrier: Optional[str] = None + City: Optional[str] = None + CleansedPhoneNumberE164: Optional[str] = None + CleansedPhoneNumberNational: Optional[str] = None + Country: Optional[str] = None + CountryCodeIso2: Optional[str] = None + CountryCodeNumeric: Optional[str] = None + County: Optional[str] = None + OriginalCountryCodeIso2: Optional[str] = None + OriginalPhoneNumber: Optional[str] = None + PhoneType: Optional[str] = None + PhoneTypeCode: Optional[int] = None + Timezone: Optional[str] = None + ZipCode: Optional[str] = None + +class OpenHoursRuleTypeDef(BaseModel): + StartTime: Optional[str] = None + EndTime: Optional[str] = None + +class WriteEventStreamTypeDef(BaseModel): + DestinationStreamArn: str + RoleArn: str + +class RandomSplitEntryTypeDef(BaseModel): + NextActivity: Optional[str] = None + Percentage: Optional[int] = None + +class RecencyDimensionTypeDef(BaseModel): + Duration: DurationType + RecencyType: RecencyTypeType + +class UpdateAttributesRequestTypeDef(BaseModel): + Blacklist: Optional[Sequence[str]] = None + +class ResultRowValueTypeDef(BaseModel): + Key: str + Type: str + Value: str + +class SMSChannelRequestTypeDef(BaseModel): + Enabled: Optional[bool] = None + SenderId: Optional[str] = None + ShortCode: Optional[str] = None + +class SegmentConditionTypeDef(BaseModel): + SegmentId: str + +class SegmentReferenceTypeDef(BaseModel): + Id: str + Version: Optional[int] = None + +class SegmentImportResourceTypeDef(BaseModel): + ExternalId: str + Format: FormatType + RoleArn: str + S3Url: str + Size: int + ChannelCounts: Optional[Dict[str, int]] = None + +class SendOTPMessageRequestParametersTypeDef(BaseModel): + BrandName: str + Channel: str + DestinationIdentity: str + OriginationIdentity: str + ReferenceId: str + AllowedAttempts: Optional[int] = None + CodeLength: Optional[int] = None + EntityId: Optional[str] = None + Language: Optional[str] = None + TemplateId: Optional[str] = None + ValidityPeriod: Optional[int] = None + +class SimpleEmailPartTypeDef(BaseModel): + Charset: Optional[str] = None + Data: Optional[str] = None + +class TagsModelTypeDef(BaseModel): + tags: Mapping[str, str] + +class TemplateActiveVersionRequestTypeDef(BaseModel): + Version: Optional[str] = None + +class TemplateTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + +class TemplateResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: TemplateTypeType + Arn: Optional[str] = None + DefaultSubstitutions: Optional[str] = None + tags: Optional[Dict[str, str]] = None + TemplateDescription: Optional[str] = None + Version: Optional[str] = None + +class TemplateVersionResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: str + DefaultSubstitutions: Optional[str] = None + TemplateDescription: Optional[str] = None + Version: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateRecommenderConfigurationTypeDef(BaseModel): + RecommendationProviderRoleArn: str + RecommendationProviderUri: str + Attributes: Optional[Mapping[str, str]] = None + Description: Optional[str] = None + Name: Optional[str] = None + RecommendationProviderIdType: Optional[str] = None + RecommendationTransformerUri: Optional[str] = None + RecommendationsDisplayName: Optional[str] = None + RecommendationsPerMessage: Optional[int] = None + +class VoiceChannelRequestTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class VerificationResponseTypeDef(BaseModel): + Valid: Optional[bool] = None + +class VerifyOTPMessageRequestParametersTypeDef(BaseModel): + DestinationIdentity: str + Otp: str + ReferenceId: str + +class UpdateAdmChannelRequestRequestTypeDef(BaseModel): + ADMChannelRequest: ADMChannelRequestTypeDef + ApplicationId: str + +class UpdateApnsChannelRequestRequestTypeDef(BaseModel): + APNSChannelRequest: APNSChannelRequestTypeDef + ApplicationId: str + +class UpdateApnsSandboxChannelRequestRequestTypeDef(BaseModel): + APNSSandboxChannelRequest: APNSSandboxChannelRequestTypeDef + ApplicationId: str + +class UpdateApnsVoipChannelRequestRequestTypeDef(BaseModel): + APNSVoipChannelRequest: APNSVoipChannelRequestTypeDef + ApplicationId: str + +class UpdateApnsVoipSandboxChannelRequestRequestTypeDef(BaseModel): + APNSVoipSandboxChannelRequest: APNSVoipSandboxChannelRequestTypeDef + ApplicationId: str + +class ActivitiesResponseTypeDef(BaseModel): + Item: List[ActivityResponseTypeDef] + NextToken: Optional[str] = None + +class ApplicationsResponseTypeDef(BaseModel): + Item: Optional[List[ApplicationResponseTypeDef]] = None + NextToken: Optional[str] = None + +class ApplicationSettingsJourneyLimitsTypeDef(BaseModel): + DailyCap: Optional[int] = None + TimeframeCap: Optional[JourneyTimeframeCapTypeDef] = None + TotalCap: Optional[int] = None + +class JourneyLimitsTypeDef(BaseModel): + DailyCap: Optional[int] = None + EndpointReentryCap: Optional[int] = None + MessagesPerSecond: Optional[int] = None + EndpointReentryInterval: Optional[str] = None + TimeframeCap: Optional[JourneyTimeframeCapTypeDef] = None + TotalCap: Optional[int] = None + +class UpdateBaiduChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + BaiduChannelRequest: BaiduChannelRequestTypeDef + +class RawEmailTypeDef(BaseModel): + Data: Optional[BlobTypeDef] = None + +class CampaignEmailMessageOutputTypeDef(BaseModel): + Body: Optional[str] = None + FromAddress: Optional[str] = None + Headers: Optional[List[MessageHeaderTypeDef]] = None + HtmlBody: Optional[str] = None + Title: Optional[str] = None + +class CampaignEmailMessageTypeDef(BaseModel): + Body: Optional[str] = None + FromAddress: Optional[str] = None + Headers: Optional[Sequence[MessageHeaderTypeDef]] = None + HtmlBody: Optional[str] = None + Title: Optional[str] = None + +class EmailTemplateRequestTypeDef(BaseModel): + DefaultSubstitutions: Optional[str] = None + HtmlPart: Optional[str] = None + RecommenderId: Optional[str] = None + Subject: Optional[str] = None + Headers: Optional[Sequence[MessageHeaderTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + TemplateDescription: Optional[str] = None + TextPart: Optional[str] = None + +class EmailTemplateResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: TemplateTypeType + Arn: Optional[str] = None + DefaultSubstitutions: Optional[str] = None + HtmlPart: Optional[str] = None + RecommenderId: Optional[str] = None + Subject: Optional[str] = None + Headers: Optional[List[MessageHeaderTypeDef]] = None + tags: Optional[Dict[str, str]] = None + TemplateDescription: Optional[str] = None + TextPart: Optional[str] = None + Version: Optional[str] = None + +class ChannelsResponseTypeDef(BaseModel): + Channels: Dict[str, ChannelResponseTypeDef] + +class ClosedDaysOutputTypeDef(BaseModel): + EMAIL: Optional[List[ClosedDaysRuleTypeDef]] = None + SMS: Optional[List[ClosedDaysRuleTypeDef]] = None + PUSH: Optional[List[ClosedDaysRuleTypeDef]] = None + VOICE: Optional[List[ClosedDaysRuleTypeDef]] = None + CUSTOM: Optional[List[ClosedDaysRuleTypeDef]] = None + +class ClosedDaysTypeDef(BaseModel): + EMAIL: Optional[Sequence[ClosedDaysRuleTypeDef]] = None + SMS: Optional[Sequence[ClosedDaysRuleTypeDef]] = None + PUSH: Optional[Sequence[ClosedDaysRuleTypeDef]] = None + VOICE: Optional[Sequence[ClosedDaysRuleTypeDef]] = None + CUSTOM: Optional[Sequence[ClosedDaysRuleTypeDef]] = None + +class WaitActivityTypeDef(BaseModel): + NextActivity: Optional[str] = None + WaitTime: Optional[WaitTimeTypeDef] = None + +class CreateAppRequestRequestTypeDef(BaseModel): + CreateApplicationRequest: CreateApplicationRequestTypeDef + +class CreateAppResponseTypeDef(BaseModel): + ApplicationResponse: ApplicationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAdmChannelResponseTypeDef(BaseModel): + ADMChannelResponse: ADMChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApnsChannelResponseTypeDef(BaseModel): + APNSChannelResponse: APNSChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApnsSandboxChannelResponseTypeDef(BaseModel): + APNSSandboxChannelResponse: APNSSandboxChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApnsVoipChannelResponseTypeDef(BaseModel): + APNSVoipChannelResponse: APNSVoipChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApnsVoipSandboxChannelResponseTypeDef(BaseModel): + APNSVoipSandboxChannelResponse: APNSVoipSandboxChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAppResponseTypeDef(BaseModel): + ApplicationResponse: ApplicationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBaiduChannelResponseTypeDef(BaseModel): + BaiduChannelResponse: BaiduChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAdmChannelResponseTypeDef(BaseModel): + ADMChannelResponse: ADMChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApnsChannelResponseTypeDef(BaseModel): + APNSChannelResponse: APNSChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApnsSandboxChannelResponseTypeDef(BaseModel): + APNSSandboxChannelResponse: APNSSandboxChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApnsVoipChannelResponseTypeDef(BaseModel): + APNSVoipChannelResponse: APNSVoipChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApnsVoipSandboxChannelResponseTypeDef(BaseModel): + APNSVoipSandboxChannelResponse: APNSVoipSandboxChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppResponseTypeDef(BaseModel): + ApplicationResponse: ApplicationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBaiduChannelResponseTypeDef(BaseModel): + BaiduChannelResponse: BaiduChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveAttributesResponseTypeDef(BaseModel): + AttributesResource: AttributesResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAdmChannelResponseTypeDef(BaseModel): + ADMChannelResponse: ADMChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApnsChannelResponseTypeDef(BaseModel): + APNSChannelResponse: APNSChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApnsSandboxChannelResponseTypeDef(BaseModel): + APNSSandboxChannelResponse: APNSSandboxChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApnsVoipChannelResponseTypeDef(BaseModel): + APNSVoipChannelResponse: APNSVoipChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApnsVoipSandboxChannelResponseTypeDef(BaseModel): + APNSVoipSandboxChannelResponse: APNSVoipSandboxChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBaiduChannelResponseTypeDef(BaseModel): + BaiduChannelResponse: BaiduChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEmailTemplateResponseTypeDef(BaseModel): + CreateTemplateMessageBody: CreateTemplateMessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePushTemplateResponseTypeDef(BaseModel): + CreateTemplateMessageBody: CreateTemplateMessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSmsTemplateResponseTypeDef(BaseModel): + CreateTemplateMessageBody: CreateTemplateMessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVoiceTemplateResponseTypeDef(BaseModel): + CreateTemplateMessageBody: CreateTemplateMessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExportJobRequestRequestTypeDef(BaseModel): + ApplicationId: str + ExportJobRequest: ExportJobRequestTypeDef + +class CreateImportJobRequestRequestTypeDef(BaseModel): + ApplicationId: str + ImportJobRequest: ImportJobRequestTypeDef + +class CreateInAppTemplateResponseTypeDef(BaseModel): + TemplateCreateMessageBody: TemplateCreateMessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecommenderConfigurationRequestRequestTypeDef(BaseModel): + CreateRecommenderConfiguration: CreateRecommenderConfigurationTypeDef + +class CreateRecommenderConfigurationResponseTypeDef(BaseModel): + RecommenderConfigurationResponse: RecommenderConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRecommenderConfigurationResponseTypeDef(BaseModel): + RecommenderConfigurationResponse: RecommenderConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommenderConfigurationResponseTypeDef(BaseModel): + RecommenderConfigurationResponse: RecommenderConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecommenderConfigurationsResponseTypeDef(BaseModel): + Item: List[RecommenderConfigurationResponseTypeDef] + NextToken: Optional[str] = None + +class UpdateRecommenderConfigurationResponseTypeDef(BaseModel): + RecommenderConfigurationResponse: RecommenderConfigurationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSmsTemplateRequestRequestTypeDef(BaseModel): + SMSTemplateRequest: SMSTemplateRequestTypeDef + TemplateName: str + +class UpdateSmsTemplateRequestRequestTypeDef(BaseModel): + SMSTemplateRequest: SMSTemplateRequestTypeDef + TemplateName: str + CreateNewVersion: Optional[bool] = None + Version: Optional[str] = None + +class CreateVoiceTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + VoiceTemplateRequest: VoiceTemplateRequestTypeDef + +class UpdateVoiceTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + VoiceTemplateRequest: VoiceTemplateRequestTypeDef + CreateNewVersion: Optional[bool] = None + Version: Optional[str] = None + +class CustomMessageActivityOutputTypeDef(BaseModel): + DeliveryUri: Optional[str] = None + EndpointTypes: Optional[List[EndpointTypesElementType]] = None + MessageConfig: Optional[JourneyCustomMessageTypeDef] = None + NextActivity: Optional[str] = None + TemplateName: Optional[str] = None + TemplateVersion: Optional[str] = None + +class CustomMessageActivityTypeDef(BaseModel): + DeliveryUri: Optional[str] = None + EndpointTypes: Optional[Sequence[EndpointTypesElementType]] = None + MessageConfig: Optional[JourneyCustomMessageTypeDef] = None + NextActivity: Optional[str] = None + TemplateName: Optional[str] = None + TemplateVersion: Optional[str] = None + +class PushNotificationTemplateRequestTypeDef(BaseModel): + ADM: Optional[AndroidPushNotificationTemplateTypeDef] = None + APNS: Optional[APNSPushNotificationTemplateTypeDef] = None + Baidu: Optional[AndroidPushNotificationTemplateTypeDef] = None + Default: Optional[DefaultPushNotificationTemplateTypeDef] = None + DefaultSubstitutions: Optional[str] = None + GCM: Optional[AndroidPushNotificationTemplateTypeDef] = None + RecommenderId: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + TemplateDescription: Optional[str] = None + +class PushNotificationTemplateResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: TemplateTypeType + ADM: Optional[AndroidPushNotificationTemplateTypeDef] = None + APNS: Optional[APNSPushNotificationTemplateTypeDef] = None + Arn: Optional[str] = None + Baidu: Optional[AndroidPushNotificationTemplateTypeDef] = None + Default: Optional[DefaultPushNotificationTemplateTypeDef] = None + DefaultSubstitutions: Optional[str] = None + GCM: Optional[AndroidPushNotificationTemplateTypeDef] = None + RecommenderId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + TemplateDescription: Optional[str] = None + Version: Optional[str] = None + +class DeleteEmailChannelResponseTypeDef(BaseModel): + EmailChannelResponse: EmailChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEmailChannelResponseTypeDef(BaseModel): + EmailChannelResponse: EmailChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEmailChannelResponseTypeDef(BaseModel): + EmailChannelResponse: EmailChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEmailTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInAppTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePushTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSmsTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVoiceTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEmailTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEndpointResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEndpointsBatchResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInAppTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePushTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSmsTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTemplateActiveVersionResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVoiceTemplateResponseTypeDef(BaseModel): + MessageBody: MessageBodyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventStreamResponseTypeDef(BaseModel): + EventStream: EventStreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEventStreamResponseTypeDef(BaseModel): + EventStream: EventStreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutEventStreamResponseTypeDef(BaseModel): + EventStream: EventStreamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGcmChannelResponseTypeDef(BaseModel): + GCMChannelResponse: GCMChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGcmChannelResponseTypeDef(BaseModel): + GCMChannelResponse: GCMChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGcmChannelResponseTypeDef(BaseModel): + GCMChannelResponse: GCMChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSmsChannelResponseTypeDef(BaseModel): + SMSChannelResponse: SMSChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSmsChannelResponseTypeDef(BaseModel): + SMSChannelResponse: SMSChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSmsChannelResponseTypeDef(BaseModel): + SMSChannelResponse: SMSChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVoiceChannelResponseTypeDef(BaseModel): + VoiceChannelResponse: VoiceChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceChannelResponseTypeDef(BaseModel): + VoiceChannelResponse: VoiceChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVoiceChannelResponseTypeDef(BaseModel): + VoiceChannelResponse: VoiceChannelResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEmailChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + EmailChannelRequest: EmailChannelRequestTypeDef + +class EmailMessageActivityTypeDef(BaseModel): + MessageConfig: Optional[JourneyEmailMessageTypeDef] = None + NextActivity: Optional[str] = None + TemplateName: Optional[str] = None + TemplateVersion: Optional[str] = None + +class EndpointBatchItemTypeDef(BaseModel): + Address: Optional[str] = None + Attributes: Optional[Mapping[str, Sequence[str]]] = None + ChannelType: Optional[ChannelTypeType] = None + Demographic: Optional[EndpointDemographicTypeDef] = None + EffectiveDate: Optional[str] = None + EndpointStatus: Optional[str] = None + Id: Optional[str] = None + Location: Optional[EndpointLocationTypeDef] = None + Metrics: Optional[Mapping[str, float]] = None + OptOut: Optional[str] = None + RequestId: Optional[str] = None + User: Optional[EndpointUserTypeDef] = None + +class EndpointRequestTypeDef(BaseModel): + Address: Optional[str] = None + Attributes: Optional[Mapping[str, Sequence[str]]] = None + ChannelType: Optional[ChannelTypeType] = None + Demographic: Optional[EndpointDemographicTypeDef] = None + EffectiveDate: Optional[str] = None + EndpointStatus: Optional[str] = None + Location: Optional[EndpointLocationTypeDef] = None + Metrics: Optional[Mapping[str, float]] = None + OptOut: Optional[str] = None + RequestId: Optional[str] = None + User: Optional[EndpointUserTypeDef] = None + +class PublicEndpointTypeDef(BaseModel): + Address: Optional[str] = None + Attributes: Optional[Mapping[str, Sequence[str]]] = None + ChannelType: Optional[ChannelTypeType] = None + Demographic: Optional[EndpointDemographicTypeDef] = None + EffectiveDate: Optional[str] = None + EndpointStatus: Optional[str] = None + Location: Optional[EndpointLocationTypeDef] = None + Metrics: Optional[Mapping[str, float]] = None + OptOut: Optional[str] = None + RequestId: Optional[str] = None + User: Optional[EndpointUserTypeDef] = None + +class SendUsersMessageResponseTypeDef(BaseModel): + ApplicationId: str + RequestId: Optional[str] = None + Result: Optional[Dict[str, Dict[str, EndpointMessageResultTypeDef]]] = None + +class EndpointResponseTypeDef(BaseModel): + Address: Optional[str] = None + ApplicationId: Optional[str] = None + Attributes: Optional[Dict[str, List[str]]] = None + ChannelType: Optional[ChannelTypeType] = None + CohortId: Optional[str] = None + CreationDate: Optional[str] = None + Demographic: Optional[EndpointDemographicTypeDef] = None + EffectiveDate: Optional[str] = None + EndpointStatus: Optional[str] = None + Id: Optional[str] = None + Location: Optional[EndpointLocationTypeDef] = None + Metrics: Optional[Dict[str, float]] = None + OptOut: Optional[str] = None + RequestId: Optional[str] = None + User: Optional[EndpointUserOutputTypeDef] = None + +class EventDimensionsOutputTypeDef(BaseModel): + Attributes: Optional[Dict[str, AttributeDimensionOutputTypeDef]] = None + EventType: Optional[SetDimensionOutputTypeDef] = None + Metrics: Optional[Dict[str, MetricDimensionTypeDef]] = None + +class SegmentDemographicsOutputTypeDef(BaseModel): + AppVersion: Optional[SetDimensionOutputTypeDef] = None + Channel: Optional[SetDimensionOutputTypeDef] = None + DeviceType: Optional[SetDimensionOutputTypeDef] = None + Make: Optional[SetDimensionOutputTypeDef] = None + Model: Optional[SetDimensionOutputTypeDef] = None + Platform: Optional[SetDimensionOutputTypeDef] = None + +class EventDimensionsTypeDef(BaseModel): + Attributes: Optional[Mapping[str, AttributeDimensionTypeDef]] = None + EventType: Optional[SetDimensionTypeDef] = None + Metrics: Optional[Mapping[str, MetricDimensionTypeDef]] = None + +class SegmentDemographicsTypeDef(BaseModel): + AppVersion: Optional[SetDimensionTypeDef] = None + Channel: Optional[SetDimensionTypeDef] = None + DeviceType: Optional[SetDimensionTypeDef] = None + Make: Optional[SetDimensionTypeDef] = None + Model: Optional[SetDimensionTypeDef] = None + Platform: Optional[SetDimensionTypeDef] = None + +class ItemResponseTypeDef(BaseModel): + EndpointItemResponse: Optional[EndpointItemResponseTypeDef] = None + EventsItemResponse: Optional[Dict[str, EventItemResponseTypeDef]] = None + +class EventTypeDef(BaseModel): + EventType: str + Timestamp: str + AppPackageName: Optional[str] = None + AppTitle: Optional[str] = None + AppVersionCode: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + ClientSdkVersion: Optional[str] = None + Metrics: Optional[Mapping[str, float]] = None + SdkName: Optional[str] = None + Session: Optional[SessionTypeDef] = None + +class ExportJobResponseTypeDef(BaseModel): + ApplicationId: str + CreationDate: str + Definition: ExportJobResourceTypeDef + Id: str + JobStatus: JobStatusType + Type: str + CompletedPieces: Optional[int] = None + CompletionDate: Optional[str] = None + FailedPieces: Optional[int] = None + Failures: Optional[List[str]] = None + TotalFailures: Optional[int] = None + TotalPieces: Optional[int] = None + TotalProcessed: Optional[int] = None + +class UpdateGcmChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + GCMChannelRequest: GCMChannelRequestTypeDef + +class GPSPointDimensionTypeDef(BaseModel): + Coordinates: GPSCoordinatesTypeDef + RangeInKilometers: Optional[float] = None + +class GetApplicationDateRangeKpiRequestRequestTypeDef(BaseModel): + ApplicationId: str + KpiName: str + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + PageSize: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + +class GetCampaignDateRangeKpiRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + KpiName: str + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + PageSize: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + +class GetJourneyDateRangeKpiRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + KpiName: str + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + PageSize: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + +class JourneyScheduleTypeDef(BaseModel): + EndTime: Optional[TimestampTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + Timezone: Optional[str] = None + +class GetJourneyExecutionActivityMetricsResponseTypeDef(BaseModel): + JourneyExecutionActivityMetricsResponse: JourneyExecutionActivityMetricsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJourneyExecutionMetricsResponseTypeDef(BaseModel): + JourneyExecutionMetricsResponse: JourneyExecutionMetricsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJourneyRunExecutionActivityMetricsResponseTypeDef(BaseModel): + JourneyRunExecutionActivityMetricsResponse: JourneyRunExecutionActivityMetricsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJourneyRunExecutionMetricsResponseTypeDef(BaseModel): + JourneyRunExecutionMetricsResponse: JourneyRunExecutionMetricsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSmsTemplateResponseTypeDef(BaseModel): + SMSTemplateResponse: SMSTemplateResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetVoiceTemplateResponseTypeDef(BaseModel): + VoiceTemplateResponse: VoiceTemplateResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportJobResponseTypeDef(BaseModel): + ApplicationId: str + CreationDate: str + Definition: ImportJobResourceTypeDef + Id: str + JobStatus: JobStatusType + Type: str + CompletedPieces: Optional[int] = None + CompletionDate: Optional[str] = None + FailedPieces: Optional[int] = None + Failures: Optional[List[str]] = None + TotalFailures: Optional[int] = None + TotalPieces: Optional[int] = None + TotalProcessed: Optional[int] = None + +class InAppMessageButtonTypeDef(BaseModel): + Android: Optional[OverrideButtonConfigurationTypeDef] = None + DefaultConfig: Optional[DefaultButtonConfigurationTypeDef] = None + IOS: Optional[OverrideButtonConfigurationTypeDef] = None + Web: Optional[OverrideButtonConfigurationTypeDef] = None + +class PushMessageActivityTypeDef(BaseModel): + MessageConfig: Optional[JourneyPushMessageTypeDef] = None + NextActivity: Optional[str] = None + TemplateName: Optional[str] = None + TemplateVersion: Optional[str] = None + +class JourneyRunsResponseTypeDef(BaseModel): + Item: List[JourneyRunResponseTypeDef] + NextToken: Optional[str] = None + +class SMSMessageActivityTypeDef(BaseModel): + MessageConfig: Optional[JourneySMSMessageTypeDef] = None + NextActivity: Optional[str] = None + TemplateName: Optional[str] = None + TemplateVersion: Optional[str] = None + +class UpdateJourneyStateRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + JourneyStateRequest: JourneyStateRequestTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + TagsModel: TagsModelOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MessageResponseTypeDef(BaseModel): + ApplicationId: str + EndpointResult: Optional[Dict[str, EndpointMessageResultTypeDef]] = None + RequestId: Optional[str] = None + Result: Optional[Dict[str, MessageResultTypeDef]] = None + +class PhoneNumberValidateRequestRequestTypeDef(BaseModel): + NumberValidateRequest: NumberValidateRequestTypeDef + +class PhoneNumberValidateResponseTypeDef(BaseModel): + NumberValidateResponse: NumberValidateResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OpenHoursOutputTypeDef(BaseModel): + EMAIL: Optional[Dict[DayOfWeekType, List[OpenHoursRuleTypeDef]]] = None + SMS: Optional[Dict[DayOfWeekType, List[OpenHoursRuleTypeDef]]] = None + PUSH: Optional[Dict[DayOfWeekType, List[OpenHoursRuleTypeDef]]] = None + VOICE: Optional[Dict[DayOfWeekType, List[OpenHoursRuleTypeDef]]] = None + CUSTOM: Optional[Dict[DayOfWeekType, List[OpenHoursRuleTypeDef]]] = None + +class OpenHoursTypeDef(BaseModel): + EMAIL: Optional[Mapping[DayOfWeekType, Sequence[OpenHoursRuleTypeDef]]] = None + SMS: Optional[Mapping[DayOfWeekType, Sequence[OpenHoursRuleTypeDef]]] = None + PUSH: Optional[Mapping[DayOfWeekType, Sequence[OpenHoursRuleTypeDef]]] = None + VOICE: Optional[Mapping[DayOfWeekType, Sequence[OpenHoursRuleTypeDef]]] = None + CUSTOM: Optional[Mapping[DayOfWeekType, Sequence[OpenHoursRuleTypeDef]]] = None + +class PutEventStreamRequestRequestTypeDef(BaseModel): + ApplicationId: str + WriteEventStream: WriteEventStreamTypeDef + +class RandomSplitActivityOutputTypeDef(BaseModel): + Branches: Optional[List[RandomSplitEntryTypeDef]] = None + +class RandomSplitActivityTypeDef(BaseModel): + Branches: Optional[Sequence[RandomSplitEntryTypeDef]] = None + +class SegmentBehaviorsTypeDef(BaseModel): + Recency: Optional[RecencyDimensionTypeDef] = None + +class RemoveAttributesRequestRequestTypeDef(BaseModel): + ApplicationId: str + AttributeType: str + UpdateAttributesRequest: UpdateAttributesRequestTypeDef + +class ResultRowTypeDef(BaseModel): + GroupedBys: List[ResultRowValueTypeDef] + Values: List[ResultRowValueTypeDef] + +class UpdateSmsChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + SMSChannelRequest: SMSChannelRequestTypeDef + +class SendOTPMessageRequestRequestTypeDef(BaseModel): + ApplicationId: str + SendOTPMessageRequestParameters: SendOTPMessageRequestParametersTypeDef + +class SimpleEmailTypeDef(BaseModel): + HtmlPart: Optional[SimpleEmailPartTypeDef] = None + Subject: Optional[SimpleEmailPartTypeDef] = None + TextPart: Optional[SimpleEmailPartTypeDef] = None + Headers: Optional[Sequence[MessageHeaderTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagsModel: TagsModelTypeDef + +class UpdateTemplateActiveVersionRequestRequestTypeDef(BaseModel): + TemplateActiveVersionRequest: TemplateActiveVersionRequestTypeDef + TemplateName: str + TemplateType: str + +class TemplateConfigurationTypeDef(BaseModel): + EmailTemplate: Optional[TemplateTypeDef] = None + PushTemplate: Optional[TemplateTypeDef] = None + SMSTemplate: Optional[TemplateTypeDef] = None + VoiceTemplate: Optional[TemplateTypeDef] = None + InAppTemplate: Optional[TemplateTypeDef] = None + +class TemplatesResponseTypeDef(BaseModel): + Item: List[TemplateResponseTypeDef] + NextToken: Optional[str] = None + +class TemplateVersionsResponseTypeDef(BaseModel): + Item: List[TemplateVersionResponseTypeDef] + Message: Optional[str] = None + NextToken: Optional[str] = None + RequestID: Optional[str] = None + +class UpdateRecommenderConfigurationRequestRequestTypeDef(BaseModel): + RecommenderId: str + UpdateRecommenderConfiguration: UpdateRecommenderConfigurationTypeDef + +class UpdateVoiceChannelRequestRequestTypeDef(BaseModel): + ApplicationId: str + VoiceChannelRequest: VoiceChannelRequestTypeDef + +class VerifyOTPMessageResponseTypeDef(BaseModel): + VerificationResponse: VerificationResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyOTPMessageRequestRequestTypeDef(BaseModel): + ApplicationId: str + VerifyOTPMessageRequestParameters: VerifyOTPMessageRequestParametersTypeDef + +class GetCampaignActivitiesResponseTypeDef(BaseModel): + ActivitiesResponse: ActivitiesResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppsResponseTypeDef(BaseModel): + ApplicationsResponse: ApplicationsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ApplicationSettingsResourceTypeDef(BaseModel): + ApplicationId: str + CampaignHook: Optional[CampaignHookTypeDef] = None + LastModifiedDate: Optional[str] = None + Limits: Optional[CampaignLimitsTypeDef] = None + QuietTime: Optional[QuietTimeTypeDef] = None + JourneyLimits: Optional[ApplicationSettingsJourneyLimitsTypeDef] = None + +class WriteApplicationSettingsRequestTypeDef(BaseModel): + CampaignHook: Optional[CampaignHookTypeDef] = None + CloudWatchMetricsEnabled: Optional[bool] = None + EventTaggingEnabled: Optional[bool] = None + Limits: Optional[CampaignLimitsTypeDef] = None + QuietTime: Optional[QuietTimeTypeDef] = None + JourneyLimits: Optional[ApplicationSettingsJourneyLimitsTypeDef] = None + +class CreateEmailTemplateRequestRequestTypeDef(BaseModel): + EmailTemplateRequest: EmailTemplateRequestTypeDef + TemplateName: str + +class UpdateEmailTemplateRequestRequestTypeDef(BaseModel): + EmailTemplateRequest: EmailTemplateRequestTypeDef + TemplateName: str + CreateNewVersion: Optional[bool] = None + Version: Optional[str] = None + +class GetEmailTemplateResponseTypeDef(BaseModel): + EmailTemplateResponse: EmailTemplateResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetChannelsResponseTypeDef(BaseModel): + ChannelsResponse: ChannelsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommenderConfigurationsResponseTypeDef(BaseModel): + ListRecommenderConfigurationsResponse: ListRecommenderConfigurationsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePushTemplateRequestRequestTypeDef(BaseModel): + PushNotificationTemplateRequest: PushNotificationTemplateRequestTypeDef + TemplateName: str + +class UpdatePushTemplateRequestRequestTypeDef(BaseModel): + PushNotificationTemplateRequest: PushNotificationTemplateRequestTypeDef + TemplateName: str + CreateNewVersion: Optional[bool] = None + Version: Optional[str] = None + +class GetPushTemplateResponseTypeDef(BaseModel): + PushNotificationTemplateResponse: PushNotificationTemplateResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointBatchRequestTypeDef(BaseModel): + Item: Sequence[EndpointBatchItemTypeDef] + +class UpdateEndpointRequestRequestTypeDef(BaseModel): + ApplicationId: str + EndpointId: str + EndpointRequest: EndpointRequestTypeDef + +class SendUsersMessagesResponseTypeDef(BaseModel): + SendUsersMessageResponse: SendUsersMessageResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEndpointResponseTypeDef(BaseModel): + EndpointResponse: EndpointResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointsResponseTypeDef(BaseModel): + Item: List[EndpointResponseTypeDef] + +class GetEndpointResponseTypeDef(BaseModel): + EndpointResponse: EndpointResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CampaignEventFilterOutputTypeDef(BaseModel): + Dimensions: EventDimensionsOutputTypeDef + FilterType: FilterTypeType + +class EventConditionOutputTypeDef(BaseModel): + Dimensions: Optional[EventDimensionsOutputTypeDef] = None + MessageActivity: Optional[str] = None + +class EventFilterOutputTypeDef(BaseModel): + Dimensions: EventDimensionsOutputTypeDef + FilterType: FilterTypeType + +class CampaignEventFilterTypeDef(BaseModel): + Dimensions: EventDimensionsTypeDef + FilterType: FilterTypeType + +class EventConditionTypeDef(BaseModel): + Dimensions: Optional[EventDimensionsTypeDef] = None + MessageActivity: Optional[str] = None + +class EventFilterTypeDef(BaseModel): + Dimensions: EventDimensionsTypeDef + FilterType: FilterTypeType + +class EventsResponseTypeDef(BaseModel): + Results: Optional[Dict[str, ItemResponseTypeDef]] = None + +class EventsBatchTypeDef(BaseModel): + Endpoint: PublicEndpointTypeDef + Events: Mapping[str, EventTypeDef] + +class CreateExportJobResponseTypeDef(BaseModel): + ExportJobResponse: ExportJobResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportJobsResponseTypeDef(BaseModel): + Item: List[ExportJobResponseTypeDef] + NextToken: Optional[str] = None + +class GetExportJobResponseTypeDef(BaseModel): + ExportJobResponse: ExportJobResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SegmentLocationOutputTypeDef(BaseModel): + Country: Optional[SetDimensionOutputTypeDef] = None + GPSPoint: Optional[GPSPointDimensionTypeDef] = None + +class SegmentLocationTypeDef(BaseModel): + Country: Optional[SetDimensionTypeDef] = None + GPSPoint: Optional[GPSPointDimensionTypeDef] = None + +class CreateImportJobResponseTypeDef(BaseModel): + ImportJobResponse: ImportJobResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetImportJobResponseTypeDef(BaseModel): + ImportJobResponse: ImportJobResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportJobsResponseTypeDef(BaseModel): + Item: List[ImportJobResponseTypeDef] + NextToken: Optional[str] = None + +class InAppMessageContentTypeDef(BaseModel): + BackgroundColor: Optional[str] = None + BodyConfig: Optional[InAppMessageBodyConfigTypeDef] = None + HeaderConfig: Optional[InAppMessageHeaderConfigTypeDef] = None + ImageUrl: Optional[str] = None + PrimaryBtn: Optional[InAppMessageButtonTypeDef] = None + SecondaryBtn: Optional[InAppMessageButtonTypeDef] = None + +class GetJourneyRunsResponseTypeDef(BaseModel): + JourneyRunsResponse: JourneyRunsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SendMessagesResponseTypeDef(BaseModel): + MessageResponse: MessageResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SendOTPMessageResponseTypeDef(BaseModel): + MessageResponse: MessageResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BaseKpiResultTypeDef(BaseModel): + Rows: List[ResultRowTypeDef] + +class EmailMessageTypeDef(BaseModel): + Body: Optional[str] = None + FeedbackForwardingAddress: Optional[str] = None + FromAddress: Optional[str] = None + RawEmail: Optional[RawEmailTypeDef] = None + ReplyToAddresses: Optional[Sequence[str]] = None + SimpleEmail: Optional[SimpleEmailTypeDef] = None + Substitutions: Optional[Mapping[str, Sequence[str]]] = None + +class ListTemplatesResponseTypeDef(BaseModel): + TemplatesResponse: TemplatesResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplateVersionsResponseTypeDef(BaseModel): + TemplateVersionsResponse: TemplateVersionsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationSettingsResponseTypeDef(BaseModel): + ApplicationSettingsResource: ApplicationSettingsResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationSettingsResponseTypeDef(BaseModel): + ApplicationSettingsResource: ApplicationSettingsResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationSettingsRequestRequestTypeDef(BaseModel): + ApplicationId: str + WriteApplicationSettingsRequest: WriteApplicationSettingsRequestTypeDef + +class UpdateEndpointsBatchRequestRequestTypeDef(BaseModel): + ApplicationId: str + EndpointBatchRequest: EndpointBatchRequestTypeDef + +class DeleteUserEndpointsResponseTypeDef(BaseModel): + EndpointsResponse: EndpointsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserEndpointsResponseTypeDef(BaseModel): + EndpointsResponse: EndpointsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InAppCampaignScheduleTypeDef(BaseModel): + EndDate: Optional[str] = None + EventFilter: Optional[CampaignEventFilterOutputTypeDef] = None + QuietTime: Optional[QuietTimeTypeDef] = None + +class ScheduleOutputTypeDef(BaseModel): + StartTime: str + EndTime: Optional[str] = None + EventFilter: Optional[CampaignEventFilterOutputTypeDef] = None + Frequency: Optional[FrequencyType] = None + IsLocalTime: Optional[bool] = None + QuietTime: Optional[QuietTimeTypeDef] = None + Timezone: Optional[str] = None + +class EventStartConditionOutputTypeDef(BaseModel): + EventFilter: Optional[EventFilterOutputTypeDef] = None + SegmentId: Optional[str] = None + +class ScheduleTypeDef(BaseModel): + StartTime: str + EndTime: Optional[str] = None + EventFilter: Optional[CampaignEventFilterTypeDef] = None + Frequency: Optional[FrequencyType] = None + IsLocalTime: Optional[bool] = None + QuietTime: Optional[QuietTimeTypeDef] = None + Timezone: Optional[str] = None + +class EventStartConditionTypeDef(BaseModel): + EventFilter: Optional[EventFilterTypeDef] = None + SegmentId: Optional[str] = None + +class PutEventsResponseTypeDef(BaseModel): + EventsResponse: EventsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EventsRequestTypeDef(BaseModel): + BatchItem: Mapping[str, EventsBatchTypeDef] + +class GetExportJobsResponseTypeDef(BaseModel): + ExportJobsResponse: ExportJobsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentExportJobsResponseTypeDef(BaseModel): + ExportJobsResponse: ExportJobsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SegmentDimensionsOutputTypeDef(BaseModel): + Attributes: Optional[Dict[str, AttributeDimensionOutputTypeDef]] = None + Behavior: Optional[SegmentBehaviorsTypeDef] = None + Demographic: Optional[SegmentDemographicsOutputTypeDef] = None + Location: Optional[SegmentLocationOutputTypeDef] = None + Metrics: Optional[Dict[str, MetricDimensionTypeDef]] = None + UserAttributes: Optional[Dict[str, AttributeDimensionOutputTypeDef]] = None + +class SegmentDimensionsTypeDef(BaseModel): + Attributes: Optional[Mapping[str, AttributeDimensionTypeDef]] = None + Behavior: Optional[SegmentBehaviorsTypeDef] = None + Demographic: Optional[SegmentDemographicsTypeDef] = None + Location: Optional[SegmentLocationTypeDef] = None + Metrics: Optional[Mapping[str, MetricDimensionTypeDef]] = None + UserAttributes: Optional[Mapping[str, AttributeDimensionTypeDef]] = None + +class GetImportJobsResponseTypeDef(BaseModel): + ImportJobsResponse: ImportJobsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentImportJobsResponseTypeDef(BaseModel): + ImportJobsResponse: ImportJobsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CampaignInAppMessageOutputTypeDef(BaseModel): + Body: Optional[str] = None + Content: Optional[List[InAppMessageContentTypeDef]] = None + CustomConfig: Optional[Dict[str, str]] = None + Layout: Optional[LayoutType] = None + +class CampaignInAppMessageTypeDef(BaseModel): + Body: Optional[str] = None + Content: Optional[Sequence[InAppMessageContentTypeDef]] = None + CustomConfig: Optional[Mapping[str, str]] = None + Layout: Optional[LayoutType] = None + +class InAppMessageTypeDef(BaseModel): + Content: Optional[List[InAppMessageContentTypeDef]] = None + CustomConfig: Optional[Dict[str, str]] = None + Layout: Optional[LayoutType] = None + +class InAppTemplateRequestTypeDef(BaseModel): + Content: Optional[Sequence[InAppMessageContentTypeDef]] = None + CustomConfig: Optional[Mapping[str, str]] = None + Layout: Optional[LayoutType] = None + tags: Optional[Mapping[str, str]] = None + TemplateDescription: Optional[str] = None + +class InAppTemplateResponseTypeDef(BaseModel): + CreationDate: str + LastModifiedDate: str + TemplateName: str + TemplateType: TemplateTypeType + Arn: Optional[str] = None + Content: Optional[List[InAppMessageContentTypeDef]] = None + CustomConfig: Optional[Dict[str, str]] = None + Layout: Optional[LayoutType] = None + tags: Optional[Dict[str, str]] = None + TemplateDescription: Optional[str] = None + Version: Optional[str] = None + +class ApplicationDateRangeKpiResponseTypeDef(BaseModel): + ApplicationId: str + EndTime: datetime + KpiName: str + KpiResult: BaseKpiResultTypeDef + StartTime: datetime + NextToken: Optional[str] = None + +class CampaignDateRangeKpiResponseTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + EndTime: datetime + KpiName: str + KpiResult: BaseKpiResultTypeDef + StartTime: datetime + NextToken: Optional[str] = None + +class JourneyDateRangeKpiResponseTypeDef(BaseModel): + ApplicationId: str + EndTime: datetime + JourneyId: str + KpiName: str + KpiResult: BaseKpiResultTypeDef + StartTime: datetime + NextToken: Optional[str] = None + +class DirectMessageConfigurationTypeDef(BaseModel): + ADMMessage: Optional[ADMMessageTypeDef] = None + APNSMessage: Optional[APNSMessageTypeDef] = None + BaiduMessage: Optional[BaiduMessageTypeDef] = None + DefaultMessage: Optional[DefaultMessageTypeDef] = None + DefaultPushNotificationMessage: Optional[DefaultPushNotificationMessageTypeDef] = None + EmailMessage: Optional[EmailMessageTypeDef] = None + GCMMessage: Optional[GCMMessageTypeDef] = None + SMSMessage: Optional[SMSMessageTypeDef] = None + VoiceMessage: Optional[VoiceMessageTypeDef] = None + +class StartConditionOutputTypeDef(BaseModel): + Description: Optional[str] = None + EventStartCondition: Optional[EventStartConditionOutputTypeDef] = None + SegmentStartCondition: Optional[SegmentConditionTypeDef] = None + +class StartConditionTypeDef(BaseModel): + Description: Optional[str] = None + EventStartCondition: Optional[EventStartConditionTypeDef] = None + SegmentStartCondition: Optional[SegmentConditionTypeDef] = None + +class PutEventsRequestRequestTypeDef(BaseModel): + ApplicationId: str + EventsRequest: EventsRequestTypeDef + +class SegmentGroupOutputTypeDef(BaseModel): + Dimensions: Optional[List[SegmentDimensionsOutputTypeDef]] = None + SourceSegments: Optional[List[SegmentReferenceTypeDef]] = None + SourceType: Optional[SourceTypeType] = None + Type: Optional[TypeType] = None + +class SimpleConditionOutputTypeDef(BaseModel): + EventCondition: Optional[EventConditionOutputTypeDef] = None + SegmentCondition: Optional[SegmentConditionTypeDef] = None + SegmentDimensions: Optional[SegmentDimensionsOutputTypeDef] = None + +class SegmentGroupTypeDef(BaseModel): + Dimensions: Optional[Sequence[SegmentDimensionsTypeDef]] = None + SourceSegments: Optional[Sequence[SegmentReferenceTypeDef]] = None + SourceType: Optional[SourceTypeType] = None + Type: Optional[TypeType] = None + +class SimpleConditionTypeDef(BaseModel): + EventCondition: Optional[EventConditionTypeDef] = None + SegmentCondition: Optional[SegmentConditionTypeDef] = None + SegmentDimensions: Optional[SegmentDimensionsTypeDef] = None + +class MessageConfigurationOutputTypeDef(BaseModel): + ADMMessage: Optional[MessageTypeDef] = None + APNSMessage: Optional[MessageTypeDef] = None + BaiduMessage: Optional[MessageTypeDef] = None + CustomMessage: Optional[CampaignCustomMessageTypeDef] = None + DefaultMessage: Optional[MessageTypeDef] = None + EmailMessage: Optional[CampaignEmailMessageOutputTypeDef] = None + GCMMessage: Optional[MessageTypeDef] = None + SMSMessage: Optional[CampaignSmsMessageTypeDef] = None + InAppMessage: Optional[CampaignInAppMessageOutputTypeDef] = None + +class MessageConfigurationTypeDef(BaseModel): + ADMMessage: Optional[MessageTypeDef] = None + APNSMessage: Optional[MessageTypeDef] = None + BaiduMessage: Optional[MessageTypeDef] = None + CustomMessage: Optional[CampaignCustomMessageTypeDef] = None + DefaultMessage: Optional[MessageTypeDef] = None + EmailMessage: Optional[CampaignEmailMessageTypeDef] = None + GCMMessage: Optional[MessageTypeDef] = None + SMSMessage: Optional[CampaignSmsMessageTypeDef] = None + InAppMessage: Optional[CampaignInAppMessageTypeDef] = None + +class InAppMessageCampaignTypeDef(BaseModel): + CampaignId: Optional[str] = None + DailyCap: Optional[int] = None + InAppMessage: Optional[InAppMessageTypeDef] = None + Priority: Optional[int] = None + Schedule: Optional[InAppCampaignScheduleTypeDef] = None + SessionCap: Optional[int] = None + TotalCap: Optional[int] = None + TreatmentId: Optional[str] = None + +class CreateInAppTemplateRequestRequestTypeDef(BaseModel): + InAppTemplateRequest: InAppTemplateRequestTypeDef + TemplateName: str + +class UpdateInAppTemplateRequestRequestTypeDef(BaseModel): + InAppTemplateRequest: InAppTemplateRequestTypeDef + TemplateName: str + CreateNewVersion: Optional[bool] = None + Version: Optional[str] = None + +class GetInAppTemplateResponseTypeDef(BaseModel): + InAppTemplateResponse: InAppTemplateResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationDateRangeKpiResponseTypeDef(BaseModel): + ApplicationDateRangeKpiResponse: ApplicationDateRangeKpiResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCampaignDateRangeKpiResponseTypeDef(BaseModel): + CampaignDateRangeKpiResponse: CampaignDateRangeKpiResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJourneyDateRangeKpiResponseTypeDef(BaseModel): + JourneyDateRangeKpiResponse: JourneyDateRangeKpiResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MessageRequestTypeDef(BaseModel): + MessageConfiguration: DirectMessageConfigurationTypeDef + Addresses: Optional[Mapping[str, AddressConfigurationTypeDef]] = None + Context: Optional[Mapping[str, str]] = None + Endpoints: Optional[Mapping[str, EndpointSendConfigurationTypeDef]] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + TraceId: Optional[str] = None + +class SendUsersMessageRequestTypeDef(BaseModel): + MessageConfiguration: DirectMessageConfigurationTypeDef + Users: Mapping[str, EndpointSendConfigurationTypeDef] + Context: Optional[Mapping[str, str]] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + TraceId: Optional[str] = None + +class SegmentGroupListOutputTypeDef(BaseModel): + Groups: Optional[List[SegmentGroupOutputTypeDef]] = None + Include: Optional[IncludeType] = None + +class ConditionOutputTypeDef(BaseModel): + Conditions: Optional[List[SimpleConditionOutputTypeDef]] = None + Operator: Optional[OperatorType] = None + +class MultiConditionalBranchOutputTypeDef(BaseModel): + Condition: Optional[SimpleConditionOutputTypeDef] = None + NextActivity: Optional[str] = None + +class SegmentGroupListTypeDef(BaseModel): + Groups: Optional[Sequence[SegmentGroupTypeDef]] = None + Include: Optional[IncludeType] = None + +class ConditionTypeDef(BaseModel): + Conditions: Optional[Sequence[SimpleConditionTypeDef]] = None + Operator: Optional[OperatorType] = None + +class MultiConditionalBranchTypeDef(BaseModel): + Condition: Optional[SimpleConditionTypeDef] = None + NextActivity: Optional[str] = None + +class TreatmentResourceTypeDef(BaseModel): + Id: str + SizePercent: int + CustomDeliveryConfiguration: Optional[CustomDeliveryConfigurationOutputTypeDef] = None + MessageConfiguration: Optional[MessageConfigurationOutputTypeDef] = None + Schedule: Optional[ScheduleOutputTypeDef] = None + State: Optional[CampaignStateTypeDef] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + TreatmentDescription: Optional[str] = None + TreatmentName: Optional[str] = None + +class WriteTreatmentResourceTypeDef(BaseModel): + SizePercent: int + CustomDeliveryConfiguration: Optional[CustomDeliveryConfigurationTypeDef] = None + MessageConfiguration: Optional[MessageConfigurationTypeDef] = None + Schedule: Optional[ScheduleTypeDef] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + TreatmentDescription: Optional[str] = None + TreatmentName: Optional[str] = None + +class InAppMessagesResponseTypeDef(BaseModel): + InAppMessageCampaigns: Optional[List[InAppMessageCampaignTypeDef]] = None + +class SendMessagesRequestRequestTypeDef(BaseModel): + ApplicationId: str + MessageRequest: MessageRequestTypeDef + +class SendUsersMessagesRequestRequestTypeDef(BaseModel): + ApplicationId: str + SendUsersMessageRequest: SendUsersMessageRequestTypeDef + +class SegmentResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + CreationDate: str + Id: str + SegmentType: SegmentTypeType + Dimensions: Optional[SegmentDimensionsOutputTypeDef] = None + ImportDefinition: Optional[SegmentImportResourceTypeDef] = None + LastModifiedDate: Optional[str] = None + Name: Optional[str] = None + SegmentGroups: Optional[SegmentGroupListOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + Version: Optional[int] = None + +class ConditionalSplitActivityOutputTypeDef(BaseModel): + Condition: Optional[ConditionOutputTypeDef] = None + EvaluationWaitTime: Optional[WaitTimeTypeDef] = None + FalseActivity: Optional[str] = None + TrueActivity: Optional[str] = None + +class MultiConditionalSplitActivityOutputTypeDef(BaseModel): + Branches: Optional[List[MultiConditionalBranchOutputTypeDef]] = None + DefaultActivity: Optional[str] = None + EvaluationWaitTime: Optional[WaitTimeTypeDef] = None + +class WriteSegmentRequestTypeDef(BaseModel): + Dimensions: Optional[SegmentDimensionsTypeDef] = None + Name: Optional[str] = None + SegmentGroups: Optional[SegmentGroupListTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class ConditionalSplitActivityTypeDef(BaseModel): + Condition: Optional[ConditionTypeDef] = None + EvaluationWaitTime: Optional[WaitTimeTypeDef] = None + FalseActivity: Optional[str] = None + TrueActivity: Optional[str] = None + +class MultiConditionalSplitActivityTypeDef(BaseModel): + Branches: Optional[Sequence[MultiConditionalBranchTypeDef]] = None + DefaultActivity: Optional[str] = None + EvaluationWaitTime: Optional[WaitTimeTypeDef] = None + +class CampaignResponseTypeDef(BaseModel): + ApplicationId: str + Arn: str + CreationDate: str + Id: str + LastModifiedDate: str + SegmentId: str + SegmentVersion: int + AdditionalTreatments: Optional[List[TreatmentResourceTypeDef]] = None + CustomDeliveryConfiguration: Optional[CustomDeliveryConfigurationOutputTypeDef] = None + DefaultState: Optional[CampaignStateTypeDef] = None + Description: Optional[str] = None + HoldoutPercent: Optional[int] = None + Hook: Optional[CampaignHookTypeDef] = None + IsPaused: Optional[bool] = None + Limits: Optional[CampaignLimitsTypeDef] = None + MessageConfiguration: Optional[MessageConfigurationOutputTypeDef] = None + Name: Optional[str] = None + Schedule: Optional[ScheduleOutputTypeDef] = None + State: Optional[CampaignStateTypeDef] = None + tags: Optional[Dict[str, str]] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + TreatmentDescription: Optional[str] = None + TreatmentName: Optional[str] = None + Version: Optional[int] = None + Priority: Optional[int] = None + +class WriteCampaignRequestTypeDef(BaseModel): + AdditionalTreatments: Optional[Sequence[WriteTreatmentResourceTypeDef]] = None + CustomDeliveryConfiguration: Optional[CustomDeliveryConfigurationTypeDef] = None + Description: Optional[str] = None + HoldoutPercent: Optional[int] = None + Hook: Optional[CampaignHookTypeDef] = None + IsPaused: Optional[bool] = None + Limits: Optional[CampaignLimitsTypeDef] = None + MessageConfiguration: Optional[MessageConfigurationTypeDef] = None + Name: Optional[str] = None + Schedule: Optional[ScheduleTypeDef] = None + SegmentId: Optional[str] = None + SegmentVersion: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + TemplateConfiguration: Optional[TemplateConfigurationTypeDef] = None + TreatmentDescription: Optional[str] = None + TreatmentName: Optional[str] = None + Priority: Optional[int] = None + +class GetInAppMessagesResponseTypeDef(BaseModel): + InAppMessagesResponse: InAppMessagesResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSegmentResponseTypeDef(BaseModel): + SegmentResponse: SegmentResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSegmentResponseTypeDef(BaseModel): + SegmentResponse: SegmentResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentResponseTypeDef(BaseModel): + SegmentResponse: SegmentResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentVersionResponseTypeDef(BaseModel): + SegmentResponse: SegmentResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SegmentsResponseTypeDef(BaseModel): + Item: List[SegmentResponseTypeDef] + NextToken: Optional[str] = None + +class UpdateSegmentResponseTypeDef(BaseModel): + SegmentResponse: SegmentResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ActivityOutputTypeDef(BaseModel): + CUSTOM: Optional[CustomMessageActivityOutputTypeDef] = None + ConditionalSplit: Optional[ConditionalSplitActivityOutputTypeDef] = None + Description: Optional[str] = None + EMAIL: Optional[EmailMessageActivityTypeDef] = None + Holdout: Optional[HoldoutActivityTypeDef] = None + MultiCondition: Optional[MultiConditionalSplitActivityOutputTypeDef] = None + PUSH: Optional[PushMessageActivityTypeDef] = None + RandomSplit: Optional[RandomSplitActivityOutputTypeDef] = None + SMS: Optional[SMSMessageActivityTypeDef] = None + Wait: Optional[WaitActivityTypeDef] = None + ContactCenter: Optional[ContactCenterActivityTypeDef] = None + +class CreateSegmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + WriteSegmentRequest: WriteSegmentRequestTypeDef + +class UpdateSegmentRequestRequestTypeDef(BaseModel): + ApplicationId: str + SegmentId: str + WriteSegmentRequest: WriteSegmentRequestTypeDef + +class ActivityTypeDef(BaseModel): + CUSTOM: Optional[CustomMessageActivityTypeDef] = None + ConditionalSplit: Optional[ConditionalSplitActivityTypeDef] = None + Description: Optional[str] = None + EMAIL: Optional[EmailMessageActivityTypeDef] = None + Holdout: Optional[HoldoutActivityTypeDef] = None + MultiCondition: Optional[MultiConditionalSplitActivityTypeDef] = None + PUSH: Optional[PushMessageActivityTypeDef] = None + RandomSplit: Optional[RandomSplitActivityTypeDef] = None + SMS: Optional[SMSMessageActivityTypeDef] = None + Wait: Optional[WaitActivityTypeDef] = None + ContactCenter: Optional[ContactCenterActivityTypeDef] = None + +class CampaignsResponseTypeDef(BaseModel): + Item: List[CampaignResponseTypeDef] + NextToken: Optional[str] = None + +class CreateCampaignResponseTypeDef(BaseModel): + CampaignResponse: CampaignResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCampaignResponseTypeDef(BaseModel): + CampaignResponse: CampaignResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCampaignResponseTypeDef(BaseModel): + CampaignResponse: CampaignResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCampaignVersionResponseTypeDef(BaseModel): + CampaignResponse: CampaignResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCampaignResponseTypeDef(BaseModel): + CampaignResponse: CampaignResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCampaignRequestRequestTypeDef(BaseModel): + ApplicationId: str + WriteCampaignRequest: WriteCampaignRequestTypeDef + +class UpdateCampaignRequestRequestTypeDef(BaseModel): + ApplicationId: str + CampaignId: str + WriteCampaignRequest: WriteCampaignRequestTypeDef + +class GetSegmentVersionsResponseTypeDef(BaseModel): + SegmentsResponse: SegmentsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentsResponseTypeDef(BaseModel): + SegmentsResponse: SegmentsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JourneyResponseTypeDef(BaseModel): + ApplicationId: str + Id: str + Name: str + Activities: Optional[Dict[str, ActivityOutputTypeDef]] = None + CreationDate: Optional[str] = None + LastModifiedDate: Optional[str] = None + Limits: Optional[JourneyLimitsTypeDef] = None + LocalTime: Optional[bool] = None + QuietTime: Optional[QuietTimeTypeDef] = None + RefreshFrequency: Optional[str] = None + Schedule: Optional[JourneyScheduleOutputTypeDef] = None + StartActivity: Optional[str] = None + StartCondition: Optional[StartConditionOutputTypeDef] = None + State: Optional[StateType] = None + tags: Optional[Dict[str, str]] = None + WaitForQuietTime: Optional[bool] = None + RefreshOnSegmentUpdate: Optional[bool] = None + JourneyChannelSettings: Optional[JourneyChannelSettingsTypeDef] = None + SendingSchedule: Optional[bool] = None + OpenHours: Optional[OpenHoursOutputTypeDef] = None + ClosedDays: Optional[ClosedDaysOutputTypeDef] = None + TimezoneEstimationMethods: Optional[List[TimezoneEstimationMethodsElementType]] = None + +class WriteJourneyRequestTypeDef(BaseModel): + Name: str + Activities: Optional[Mapping[str, ActivityTypeDef]] = None + CreationDate: Optional[str] = None + LastModifiedDate: Optional[str] = None + Limits: Optional[JourneyLimitsTypeDef] = None + LocalTime: Optional[bool] = None + QuietTime: Optional[QuietTimeTypeDef] = None + RefreshFrequency: Optional[str] = None + Schedule: Optional[JourneyScheduleTypeDef] = None + StartActivity: Optional[str] = None + StartCondition: Optional[StartConditionTypeDef] = None + State: Optional[StateType] = None + WaitForQuietTime: Optional[bool] = None + RefreshOnSegmentUpdate: Optional[bool] = None + JourneyChannelSettings: Optional[JourneyChannelSettingsTypeDef] = None + SendingSchedule: Optional[bool] = None + OpenHours: Optional[OpenHoursTypeDef] = None + ClosedDays: Optional[ClosedDaysTypeDef] = None + TimezoneEstimationMethods: Optional[Sequence[TimezoneEstimationMethodsElementType]] = None + +class GetCampaignVersionsResponseTypeDef(BaseModel): + CampaignsResponse: CampaignsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCampaignsResponseTypeDef(BaseModel): + CampaignsResponse: CampaignsResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJourneyResponseTypeDef(BaseModel): + JourneyResponse: JourneyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteJourneyResponseTypeDef(BaseModel): + JourneyResponse: JourneyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetJourneyResponseTypeDef(BaseModel): + JourneyResponse: JourneyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JourneysResponseTypeDef(BaseModel): + Item: List[JourneyResponseTypeDef] + NextToken: Optional[str] = None + +class UpdateJourneyResponseTypeDef(BaseModel): + JourneyResponse: JourneyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJourneyStateResponseTypeDef(BaseModel): + JourneyResponse: JourneyResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJourneyRequestRequestTypeDef(BaseModel): + ApplicationId: str + WriteJourneyRequest: WriteJourneyRequestTypeDef + +class UpdateJourneyRequestRequestTypeDef(BaseModel): + ApplicationId: str + JourneyId: str + WriteJourneyRequest: WriteJourneyRequestTypeDef + +class ListJourneysResponseTypeDef(BaseModel): + JourneysResponse: JourneysResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/pinpoint_constants.py b/aws_resource_validator/pydantic_models/pinpoint_constants.py new file mode 100644 index 00000000..14062696 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_constants.py @@ -0,0 +1,478 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionType = Literal["DEEP_LINK", "OPEN_APP", "URL"] +AlignmentType = Literal["CENTER", "LEFT", "RIGHT"] +AttributeTypeType = Literal["AFTER", "BEFORE", "BETWEEN", "CONTAINS", "EXCLUSIVE", "INCLUSIVE", "ON"] +ButtonActionType = Literal["CLOSE", "DEEP_LINK", "LINK"] +CampaignStatusType = Literal["COMPLETED", "DELETED", "EXECUTING", "INVALID", "PAUSED", "PENDING_NEXT_RUN", "SCHEDULED"] +ChannelTypeType = Literal["ADM", + "APNS", + "APNS_SANDBOX", + "APNS_VOIP", + "APNS_VOIP_SANDBOX", + "BAIDU", + "CUSTOM", + "EMAIL", + "GCM", + "IN_APP", + "PUSH", + "SMS", + "VOICE",] +DayOfWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DeliveryStatusType = Literal["DUPLICATE", + "OPT_OUT", + "PERMANENT_FAILURE", + "SUCCESSFUL", + "TEMPORARY_FAILURE", + "THROTTLED", + "UNKNOWN_FAILURE",] +DimensionTypeType = Literal["EXCLUSIVE", "INCLUSIVE"] +DurationType = Literal["DAY_14", "DAY_30", "DAY_7", "HR_24"] +EndpointTypesElementType = Literal["ADM", + "APNS", + "APNS_SANDBOX", + "APNS_VOIP", + "APNS_VOIP_SANDBOX", + "BAIDU", + "CUSTOM", + "EMAIL", + "GCM", + "IN_APP", + "PUSH", + "SMS", + "VOICE",] +FilterTypeType = Literal["ENDPOINT", "SYSTEM"] +FormatType = Literal["CSV", "JSON"] +FrequencyType = Literal["DAILY", "EVENT", "HOURLY", "IN_APP_EVENT", "MONTHLY", "ONCE", "WEEKLY"] +IncludeType = Literal["ALL", "ANY", "NONE"] +JobStatusType = Literal["COMPLETED", + "COMPLETING", + "CREATED", + "FAILED", + "FAILING", + "INITIALIZING", + "PENDING_JOB", + "PREPARING_FOR_INITIALIZATION", + "PROCESSING",] +JourneyRunStatusType = Literal["CANCELLED", "COMPLETED", "RUNNING", "SCHEDULED"] +LayoutType = Literal["BOTTOM_BANNER", "CAROUSEL", "MIDDLE_BANNER", "MOBILE_FEED", "OVERLAYS", "TOP_BANNER"] +MessageTypeType = Literal["PROMOTIONAL", "TRANSACTIONAL"] +ModeType = Literal["DELIVERY", "FILTER"] +OperatorType = Literal["ALL", "ANY"] +RecencyTypeType = Literal["ACTIVE", "INACTIVE"] +SegmentTypeType = Literal["DIMENSIONAL", "IMPORT"] +SourceTypeType = Literal["ALL", "ANY", "NONE"] +StateType = Literal["ACTIVE", "CANCELLED", "CLOSED", "COMPLETED", "DRAFT", "PAUSED"] +TemplateTypeType = Literal["EMAIL", "INAPP", "PUSH", "SMS", "VOICE"] +TimezoneEstimationMethodsElementType = Literal["PHONE_NUMBER", "POSTAL_CODE"] +TypeType = Literal["ALL", "ANY", "NONE"] +PinpointServiceName = Literal["pinpoint"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +TagsModelUnionTypeDef = Union['TagsModelTypeDef', 'TagsModelOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/pinpoint_email_classes.py b/aws_resource_validator/pydantic_models/pinpoint_email_classes.py new file mode 100644 index 00000000..183c759c --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_email_classes.py @@ -0,0 +1,504 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pinpoint_email_constants import * + +class BlacklistEntryTypeDef(BaseModel): + RblName: Optional[str] = None + ListingTime: Optional[datetime] = None + Description: Optional[str] = None + +class ContentTypeDef(BaseModel): + Data: str + Charset: Optional[str] = None + +class CloudWatchDimensionConfigurationTypeDef(BaseModel): + DimensionName: str + DimensionValueSource: DimensionValueSourceType + DefaultDimensionValue: str + +class DeliveryOptionsTypeDef(BaseModel): + TlsPolicy: Optional[TlsPolicyType] = None + SendingPoolName: Optional[str] = None + +class SendingOptionsTypeDef(BaseModel): + SendingEnabled: Optional[bool] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class TrackingOptionsTypeDef(BaseModel): + CustomRedirectDomain: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DkimAttributesTypeDef(BaseModel): + SigningEnabled: Optional[bool] = None + Status: Optional[DkimStatusType] = None + Tokens: Optional[List[str]] = None + +class DomainIspPlacementTypeDef(BaseModel): + IspName: Optional[str] = None + InboxRawCount: Optional[int] = None + SpamRawCount: Optional[int] = None + InboxPercentage: Optional[float] = None + SpamPercentage: Optional[float] = None + +class VolumeStatisticsTypeDef(BaseModel): + InboxRawCount: Optional[int] = None + SpamRawCount: Optional[int] = None + ProjectedInbox: Optional[int] = None + ProjectedSpam: Optional[int] = None + +class DedicatedIpTypeDef(BaseModel): + Ip: str + WarmupStatus: WarmupStatusType + WarmupPercentage: int + PoolName: Optional[str] = None + +class DeleteConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + +class DeleteConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteDedicatedIpPoolRequestRequestTypeDef(BaseModel): + PoolName: str + +class DeleteEmailIdentityRequestRequestTypeDef(BaseModel): + EmailIdentity: str + +class DeliverabilityTestReportTypeDef(BaseModel): + ReportId: Optional[str] = None + ReportName: Optional[str] = None + Subject: Optional[str] = None + FromEmailAddress: Optional[str] = None + CreateDate: Optional[datetime] = None + DeliverabilityTestStatus: Optional[DeliverabilityTestStatusType] = None + +class DestinationTypeDef(BaseModel): + ToAddresses: Optional[Sequence[str]] = None + CcAddresses: Optional[Sequence[str]] = None + BccAddresses: Optional[Sequence[str]] = None + +class DomainDeliverabilityCampaignTypeDef(BaseModel): + CampaignId: Optional[str] = None + ImageUrl: Optional[str] = None + Subject: Optional[str] = None + FromAddress: Optional[str] = None + SendingIps: Optional[List[str]] = None + FirstSeenDateTime: Optional[datetime] = None + LastSeenDateTime: Optional[datetime] = None + InboxCount: Optional[int] = None + SpamCount: Optional[int] = None + ReadRate: Optional[float] = None + DeleteRate: Optional[float] = None + ReadDeleteRate: Optional[float] = None + ProjectedVolume: Optional[int] = None + Esps: Optional[List[str]] = None + +class InboxPlacementTrackingOptionTypeDef(BaseModel): + Global: Optional[bool] = None + TrackedIsps: Optional[List[str]] = None + +class TemplateTypeDef(BaseModel): + TemplateArn: Optional[str] = None + TemplateData: Optional[str] = None + +class KinesisFirehoseDestinationTypeDef(BaseModel): + IamRoleArn: str + DeliveryStreamArn: str + +class PinpointDestinationTypeDef(BaseModel): + ApplicationArn: Optional[str] = None + +class SnsDestinationTypeDef(BaseModel): + TopicArn: str + +class SendQuotaTypeDef(BaseModel): + Max24HourSend: Optional[float] = None + MaxSendRate: Optional[float] = None + SentLast24Hours: Optional[float] = None + +class GetBlacklistReportsRequestRequestTypeDef(BaseModel): + BlacklistItemNames: Sequence[str] + +class GetConfigurationSetEventDestinationsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class GetConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class GetDedicatedIpRequestRequestTypeDef(BaseModel): + Ip: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetDedicatedIpsRequestRequestTypeDef(BaseModel): + PoolName: Optional[str] = None + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class GetDeliverabilityTestReportRequestRequestTypeDef(BaseModel): + ReportId: str + +class PlacementStatisticsTypeDef(BaseModel): + InboxPercentage: Optional[float] = None + SpamPercentage: Optional[float] = None + MissingPercentage: Optional[float] = None + SpfPercentage: Optional[float] = None + DkimPercentage: Optional[float] = None + +class GetDomainDeliverabilityCampaignRequestRequestTypeDef(BaseModel): + CampaignId: str + +class GetEmailIdentityRequestRequestTypeDef(BaseModel): + EmailIdentity: str + +class MailFromAttributesTypeDef(BaseModel): + MailFromDomain: str + MailFromDomainStatus: MailFromDomainStatusType + BehaviorOnMxFailure: BehaviorOnMxFailureType + +class IdentityInfoTypeDef(BaseModel): + IdentityType: Optional[IdentityTypeType] = None + IdentityName: Optional[str] = None + SendingEnabled: Optional[bool] = None + +class ListConfigurationSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListDedicatedIpPoolsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListDeliverabilityTestReportsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListEmailIdentitiesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class MessageTagTypeDef(BaseModel): + Name: str + Value: str + +class PutAccountDedicatedIpWarmupAttributesRequestRequestTypeDef(BaseModel): + AutoWarmupEnabled: Optional[bool] = None + +class PutAccountSendingAttributesRequestRequestTypeDef(BaseModel): + SendingEnabled: Optional[bool] = None + +class PutConfigurationSetDeliveryOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + TlsPolicy: Optional[TlsPolicyType] = None + SendingPoolName: Optional[str] = None + +class PutConfigurationSetReputationOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + ReputationMetricsEnabled: Optional[bool] = None + +class PutConfigurationSetSendingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + SendingEnabled: Optional[bool] = None + +class PutConfigurationSetTrackingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + CustomRedirectDomain: Optional[str] = None + +class PutDedicatedIpInPoolRequestRequestTypeDef(BaseModel): + Ip: str + DestinationPoolName: str + +class PutDedicatedIpWarmupAttributesRequestRequestTypeDef(BaseModel): + Ip: str + WarmupPercentage: int + +class PutEmailIdentityDkimAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + SigningEnabled: Optional[bool] = None + +class PutEmailIdentityFeedbackAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + EmailForwardingEnabled: Optional[bool] = None + +class PutEmailIdentityMailFromAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + MailFromDomain: Optional[str] = None + BehaviorOnMxFailure: Optional[BehaviorOnMxFailureType] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class RawMessageTypeDef(BaseModel): + Data: BlobTypeDef + +class BodyTypeDef(BaseModel): + Text: Optional[ContentTypeDef] = None + Html: Optional[ContentTypeDef] = None + +class CloudWatchDestinationTypeDef(BaseModel): + DimensionConfigurations: Sequence[CloudWatchDimensionConfigurationTypeDef] + +class CreateDedicatedIpPoolRequestRequestTypeDef(BaseModel): + PoolName: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEmailIdentityRequestRequestTypeDef(BaseModel): + EmailIdentity: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateDeliverabilityTestReportResponseTypeDef(BaseModel): + ReportId: str + DeliverabilityTestStatus: DeliverabilityTestStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlacklistReportsResponseTypeDef(BaseModel): + BlacklistReport: Dict[str, List[BlacklistEntryTypeDef]] + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationSetsResponseTypeDef(BaseModel): + ConfigurationSets: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDedicatedIpPoolsResponseTypeDef(BaseModel): + DedicatedIpPools: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEmailIdentityResponseTypeDef(BaseModel): + IdentityType: IdentityTypeType + VerifiedForSendingStatus: bool + DkimAttributes: DkimAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DailyVolumeTypeDef(BaseModel): + StartDate: Optional[datetime] = None + VolumeStatistics: Optional[VolumeStatisticsTypeDef] = None + DomainIspPlacements: Optional[List[DomainIspPlacementTypeDef]] = None + +class OverallVolumeTypeDef(BaseModel): + VolumeStatistics: Optional[VolumeStatisticsTypeDef] = None + ReadRatePercent: Optional[float] = None + DomainIspPlacements: Optional[List[DomainIspPlacementTypeDef]] = None + +class GetDedicatedIpResponseTypeDef(BaseModel): + DedicatedIp: DedicatedIpTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDedicatedIpsResponseTypeDef(BaseModel): + DedicatedIps: List[DedicatedIpTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeliverabilityTestReportsResponseTypeDef(BaseModel): + DeliverabilityTestReports: List[DeliverabilityTestReportTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDomainDeliverabilityCampaignResponseTypeDef(BaseModel): + DomainDeliverabilityCampaign: DomainDeliverabilityCampaignTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainDeliverabilityCampaignsResponseTypeDef(BaseModel): + DomainDeliverabilityCampaigns: List[DomainDeliverabilityCampaignTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DomainDeliverabilityTrackingOptionTypeDef(BaseModel): + Domain: Optional[str] = None + SubscriptionStartDate: Optional[datetime] = None + InboxPlacementTrackingOption: Optional[InboxPlacementTrackingOptionTypeDef] = None + +class GetAccountResponseTypeDef(BaseModel): + SendQuota: SendQuotaTypeDef + SendingEnabled: bool + DedicatedIpAutoWarmupEnabled: bool + EnforcementStatus: str + ProductionAccessEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetDedicatedIpsRequestGetDedicatedIpsPaginateTypeDef(BaseModel): + PoolName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationSetsRequestListConfigurationSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDedicatedIpPoolsRequestListDedicatedIpPoolsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeliverabilityTestReportsRequestListDeliverabilityTestReportsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEmailIdentitiesRequestListEmailIdentitiesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class IspPlacementTypeDef(BaseModel): + IspName: Optional[str] = None + PlacementStatistics: Optional[PlacementStatisticsTypeDef] = None + +class GetDomainStatisticsReportRequestRequestTypeDef(BaseModel): + Domain: str + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + +class ListDomainDeliverabilityCampaignsRequestRequestTypeDef(BaseModel): + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + SubscribedDomain: str + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ReputationOptionsTypeDef(BaseModel): + ReputationMetricsEnabled: Optional[bool] = None + LastFreshStart: Optional[TimestampTypeDef] = None + +class GetEmailIdentityResponseTypeDef(BaseModel): + IdentityType: IdentityTypeType + FeedbackForwardingStatus: bool + VerifiedForSendingStatus: bool + DkimAttributes: DkimAttributesTypeDef + MailFromAttributes: MailFromAttributesTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEmailIdentitiesResponseTypeDef(BaseModel): + EmailIdentities: List[IdentityInfoTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MessageTypeDef(BaseModel): + Subject: ContentTypeDef + Body: BodyTypeDef + +class EventDestinationDefinitionTypeDef(BaseModel): + Enabled: Optional[bool] = None + MatchingEventTypes: Optional[Sequence[EventTypeType]] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + CloudWatchDestination: Optional[CloudWatchDestinationTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + PinpointDestination: Optional[PinpointDestinationTypeDef] = None + +class EventDestinationTypeDef(BaseModel): + Name: str + MatchingEventTypes: List[EventTypeType] + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + CloudWatchDestination: Optional[CloudWatchDestinationTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + PinpointDestination: Optional[PinpointDestinationTypeDef] = None + +class GetDomainStatisticsReportResponseTypeDef(BaseModel): + OverallVolume: OverallVolumeTypeDef + DailyVolumes: List[DailyVolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliverabilityDashboardOptionsResponseTypeDef(BaseModel): + DashboardEnabled: bool + SubscriptionExpiryDate: datetime + AccountStatus: DeliverabilityDashboardAccountStatusType + ActiveSubscribedDomains: List[DomainDeliverabilityTrackingOptionTypeDef] + PendingExpirationSubscribedDomains: List[DomainDeliverabilityTrackingOptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutDeliverabilityDashboardOptionRequestRequestTypeDef(BaseModel): + DashboardEnabled: bool + SubscribedDomains: Optional[Sequence[DomainDeliverabilityTrackingOptionTypeDef]] = None + +class GetDeliverabilityTestReportResponseTypeDef(BaseModel): + DeliverabilityTestReport: DeliverabilityTestReportTypeDef + OverallPlacement: PlacementStatisticsTypeDef + IspPlacements: List[IspPlacementTypeDef] + Message: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + TrackingOptions: Optional[TrackingOptionsTypeDef] = None + DeliveryOptions: Optional[DeliveryOptionsTypeDef] = None + ReputationOptions: Optional[ReputationOptionsTypeDef] = None + SendingOptions: Optional[SendingOptionsTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetConfigurationSetResponseTypeDef(BaseModel): + ConfigurationSetName: str + TrackingOptions: TrackingOptionsTypeDef + DeliveryOptions: DeliveryOptionsTypeDef + ReputationOptions: ReputationOptionsTypeDef + SendingOptions: SendingOptionsTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EmailContentTypeDef(BaseModel): + Simple: Optional[MessageTypeDef] = None + Raw: Optional[RawMessageTypeDef] = None + Template: Optional[TemplateTypeDef] = None + +class CreateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + EventDestination: EventDestinationDefinitionTypeDef + +class UpdateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + EventDestination: EventDestinationDefinitionTypeDef + +class GetConfigurationSetEventDestinationsResponseTypeDef(BaseModel): + EventDestinations: List[EventDestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeliverabilityTestReportRequestRequestTypeDef(BaseModel): + FromEmailAddress: str + Content: EmailContentTypeDef + ReportName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class SendEmailRequestRequestTypeDef(BaseModel): + Destination: DestinationTypeDef + Content: EmailContentTypeDef + FromEmailAddress: Optional[str] = None + ReplyToAddresses: Optional[Sequence[str]] = None + FeedbackForwardingEmailAddress: Optional[str] = None + EmailTags: Optional[Sequence[MessageTagTypeDef]] = None + ConfigurationSetName: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/pinpoint_email_constants.py b/aws_resource_validator/pydantic_models/pinpoint_email_constants.py new file mode 100644 index 00000000..7780219b --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_email_constants.py @@ -0,0 +1,432 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BehaviorOnMxFailureType = Literal["REJECT_MESSAGE", "USE_DEFAULT_VALUE"] +DeliverabilityDashboardAccountStatusType = Literal["ACTIVE", "DISABLED", "PENDING_EXPIRATION"] +DeliverabilityTestStatusType = Literal["COMPLETED", "IN_PROGRESS"] +DimensionValueSourceType = Literal["EMAIL_HEADER", "LINK_TAG", "MESSAGE_TAG"] +DkimStatusType = Literal["FAILED", "NOT_STARTED", "PENDING", "SUCCESS", "TEMPORARY_FAILURE"] +EventTypeType = Literal["BOUNCE", "CLICK", "COMPLAINT", "DELIVERY", "OPEN", "REJECT", "RENDERING_FAILURE", "SEND"] +GetDedicatedIpsPaginatorName = Literal["get_dedicated_ips"] +IdentityTypeType = Literal["DOMAIN", "EMAIL_ADDRESS", "MANAGED_DOMAIN"] +ListConfigurationSetsPaginatorName = Literal["list_configuration_sets"] +ListDedicatedIpPoolsPaginatorName = Literal["list_dedicated_ip_pools"] +ListDeliverabilityTestReportsPaginatorName = Literal["list_deliverability_test_reports"] +ListEmailIdentitiesPaginatorName = Literal["list_email_identities"] +MailFromDomainStatusType = Literal["FAILED", "PENDING", "SUCCESS", "TEMPORARY_FAILURE"] +TlsPolicyType = Literal["OPTIONAL", "REQUIRE"] +WarmupStatusType = Literal["DONE", "IN_PROGRESS"] +PinpointEmailServiceName = Literal["pinpoint-email"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_dedicated_ips", + "list_configuration_sets", + "list_dedicated_ip_pools", + "list_deliverability_test_reports", + "list_email_identities",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/pinpoint_sms_voice_classes.py b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_classes.py new file mode 100644 index 00000000..7fbb05db --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_classes.py @@ -0,0 +1,102 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pinpoint_sms_voice_constants import * + +class CallInstructionsMessageTypeTypeDef(BaseModel): + Text: Optional[str] = None + +class CloudWatchLogsDestinationTypeDef(BaseModel): + IamRoleArn: Optional[str] = None + LogGroupArn: Optional[str] = None + +class CreateConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: Optional[str] = None + +class DeleteConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + +class DeleteConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class KinesisFirehoseDestinationTypeDef(BaseModel): + DeliveryStreamArn: Optional[str] = None + IamRoleArn: Optional[str] = None + +class SnsDestinationTypeDef(BaseModel): + TopicArn: Optional[str] = None + +class GetConfigurationSetEventDestinationsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class PlainTextMessageTypeTypeDef(BaseModel): + LanguageCode: Optional[str] = None + Text: Optional[str] = None + VoiceId: Optional[str] = None + +class SSMLMessageTypeTypeDef(BaseModel): + LanguageCode: Optional[str] = None + Text: Optional[str] = None + VoiceId: Optional[str] = None + +class EventDestinationDefinitionTypeDef(BaseModel): + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + MatchingEventTypes: Optional[Sequence[EventTypeType]] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + +class EventDestinationTypeDef(BaseModel): + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + MatchingEventTypes: Optional[List[EventTypeType]] = None + Name: Optional[str] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + +class SendVoiceMessageResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class VoiceMessageContentTypeDef(BaseModel): + CallInstructionsMessage: Optional[CallInstructionsMessageTypeTypeDef] = None + PlainTextMessage: Optional[PlainTextMessageTypeTypeDef] = None + SSMLMessage: Optional[SSMLMessageTypeTypeDef] = None + +class CreateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestination: Optional[EventDestinationDefinitionTypeDef] = None + EventDestinationName: Optional[str] = None + +class UpdateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + EventDestination: Optional[EventDestinationDefinitionTypeDef] = None + +class GetConfigurationSetEventDestinationsResponseTypeDef(BaseModel): + EventDestinations: List[EventDestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendVoiceMessageRequestRequestTypeDef(BaseModel): + CallerId: Optional[str] = None + ConfigurationSetName: Optional[str] = None + Content: Optional[VoiceMessageContentTypeDef] = None + DestinationPhoneNumber: Optional[str] = None + OriginationPhoneNumber: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/pinpoint_sms_voice_constants.py b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_constants.py new file mode 100644 index 00000000..086687bc --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EventTypeType = Literal["ANSWERED", "BUSY", "COMPLETED_CALL", "FAILED", "INITIATED_CALL", "NO_ANSWER", "RINGING"] +PinpointSMSVoiceServiceName = Literal["pinpoint-sms-voice"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_classes.py b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_classes.py new file mode 100644 index 00000000..5776d494 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_classes.py @@ -0,0 +1,1465 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pinpoint_sms_voice_v2_constants import * + +class AccountAttributeTypeDef(BaseModel): + Name: AccountAttributeNameType + Value: str + +class AccountLimitTypeDef(BaseModel): + Name: AccountLimitNameType + Used: int + Max: int + +class AssociateOriginationIdentityRequestRequestTypeDef(BaseModel): + PoolId: str + OriginationIdentity: str + IsoCountryCode: str + ClientToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociateProtectConfigurationRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + ConfigurationSetName: str + +class CloudWatchLogsDestinationTypeDef(BaseModel): + IamRoleArn: str + LogGroupArn: str + +class ConfigurationSetFilterTypeDef(BaseModel): + Name: ConfigurationSetFilterNameType + Values: Sequence[str] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class KinesisFirehoseDestinationTypeDef(BaseModel): + IamRoleArn: str + DeliveryStreamArn: str + +class SnsDestinationTypeDef(BaseModel): + TopicArn: str + +class CreateRegistrationAssociationRequestRequestTypeDef(BaseModel): + RegistrationId: str + ResourceId: str + +class CreateRegistrationVersionRequestRequestTypeDef(BaseModel): + RegistrationId: str + +class RegistrationVersionStatusHistoryTypeDef(BaseModel): + DraftTimestamp: datetime + SubmittedTimestamp: Optional[datetime] = None + ReviewingTimestamp: Optional[datetime] = None + ApprovedTimestamp: Optional[datetime] = None + DiscardedTimestamp: Optional[datetime] = None + DeniedTimestamp: Optional[datetime] = None + RevokedTimestamp: Optional[datetime] = None + ArchivedTimestamp: Optional[datetime] = None + +class DeleteConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteDefaultMessageTypeRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteDefaultSenderIdRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + +class DeleteKeywordRequestRequestTypeDef(BaseModel): + OriginationIdentity: str + Keyword: str + +class DeleteOptOutListRequestRequestTypeDef(BaseModel): + OptOutListName: str + +class DeleteOptedOutNumberRequestRequestTypeDef(BaseModel): + OptOutListName: str + OptedOutNumber: str + +class DeletePoolRequestRequestTypeDef(BaseModel): + PoolId: str + +class DeleteProtectConfigurationRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + +class DeleteRegistrationAttachmentRequestRequestTypeDef(BaseModel): + RegistrationAttachmentId: str + +class DeleteRegistrationFieldValueRequestRequestTypeDef(BaseModel): + RegistrationId: str + FieldPath: str + +class DeleteRegistrationRequestRequestTypeDef(BaseModel): + RegistrationId: str + +class DeleteVerifiedDestinationNumberRequestRequestTypeDef(BaseModel): + VerifiedDestinationNumberId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAccountAttributesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeAccountLimitsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class KeywordFilterTypeDef(BaseModel): + Name: Literal["keyword-action"] + Values: Sequence[str] + +class KeywordInformationTypeDef(BaseModel): + Keyword: str + KeywordMessage: str + KeywordAction: KeywordActionType + +class DescribeOptOutListsRequestRequestTypeDef(BaseModel): + OptOutListNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OptOutListInformationTypeDef(BaseModel): + OptOutListArn: str + OptOutListName: str + CreatedTimestamp: datetime + +class OptedOutFilterTypeDef(BaseModel): + Name: Literal["end-user-opted-out"] + Values: Sequence[str] + +class OptedOutNumberInformationTypeDef(BaseModel): + OptedOutNumber: str + OptedOutTimestamp: datetime + EndUserOptedOut: bool + +class PhoneNumberFilterTypeDef(BaseModel): + Name: PhoneNumberFilterNameType + Values: Sequence[str] + +class PhoneNumberInformationTypeDef(BaseModel): + PhoneNumberArn: str + PhoneNumber: str + Status: NumberStatusType + IsoCountryCode: str + MessageType: MessageTypeType + NumberCapabilities: List[NumberCapabilityType] + NumberType: NumberTypeType + MonthlyLeasingPrice: str + TwoWayEnabled: bool + SelfManagedOptOutsEnabled: bool + OptOutListName: str + DeletionProtectionEnabled: bool + CreatedTimestamp: datetime + PhoneNumberId: Optional[str] = None + TwoWayChannelArn: Optional[str] = None + TwoWayChannelRole: Optional[str] = None + PoolId: Optional[str] = None + RegistrationId: Optional[str] = None + +class PoolFilterTypeDef(BaseModel): + Name: PoolFilterNameType + Values: Sequence[str] + +class PoolInformationTypeDef(BaseModel): + PoolArn: str + PoolId: str + Status: PoolStatusType + MessageType: MessageTypeType + TwoWayEnabled: bool + SelfManagedOptOutsEnabled: bool + OptOutListName: str + SharedRoutesEnabled: bool + DeletionProtectionEnabled: bool + CreatedTimestamp: datetime + TwoWayChannelArn: Optional[str] = None + TwoWayChannelRole: Optional[str] = None + +class ProtectConfigurationFilterTypeDef(BaseModel): + Name: ProtectConfigurationFilterNameType + Values: Sequence[str] + +class ProtectConfigurationInformationTypeDef(BaseModel): + ProtectConfigurationArn: str + ProtectConfigurationId: str + CreatedTimestamp: datetime + AccountDefault: bool + DeletionProtectionEnabled: bool + +class RegistrationAttachmentFilterTypeDef(BaseModel): + Name: Literal["attachment-status"] + Values: Sequence[str] + +class RegistrationAttachmentsInformationTypeDef(BaseModel): + RegistrationAttachmentArn: str + RegistrationAttachmentId: str + AttachmentStatus: AttachmentStatusType + CreatedTimestamp: datetime + AttachmentUploadErrorReason: Optional[Literal["INTERNAL_ERROR"]] = None + +class DescribeRegistrationFieldDefinitionsRequestRequestTypeDef(BaseModel): + RegistrationType: str + SectionPath: Optional[str] = None + FieldPaths: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeRegistrationFieldValuesRequestRequestTypeDef(BaseModel): + RegistrationId: str + VersionNumber: Optional[int] = None + SectionPath: Optional[str] = None + FieldPaths: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RegistrationFieldValueInformationTypeDef(BaseModel): + FieldPath: str + SelectChoices: Optional[List[str]] = None + TextValue: Optional[str] = None + RegistrationAttachmentId: Optional[str] = None + DeniedReason: Optional[str] = None + +class DescribeRegistrationSectionDefinitionsRequestRequestTypeDef(BaseModel): + RegistrationType: str + SectionPaths: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RegistrationTypeFilterTypeDef(BaseModel): + Name: RegistrationTypeFilterNameType + Values: Sequence[str] + +class RegistrationVersionFilterTypeDef(BaseModel): + Name: Literal["registration-version-status"] + Values: Sequence[str] + +class RegistrationFilterTypeDef(BaseModel): + Name: RegistrationFilterNameType + Values: Sequence[str] + +class RegistrationInformationTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + RegistrationType: str + RegistrationStatus: RegistrationStatusType + CurrentVersionNumber: int + CreatedTimestamp: datetime + ApprovedVersionNumber: Optional[int] = None + LatestDeniedVersionNumber: Optional[int] = None + AdditionalAttributes: Optional[Dict[str, str]] = None + +class SenderIdAndCountryTypeDef(BaseModel): + SenderId: str + IsoCountryCode: str + +class SenderIdFilterTypeDef(BaseModel): + Name: SenderIdFilterNameType + Values: Sequence[str] + +class SenderIdInformationTypeDef(BaseModel): + SenderIdArn: str + SenderId: str + IsoCountryCode: str + MessageTypes: List[MessageTypeType] + MonthlyLeasingPrice: str + DeletionProtectionEnabled: bool + Registered: bool + RegistrationId: Optional[str] = None + +class DescribeSpendLimitsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SpendLimitTypeDef(BaseModel): + Name: SpendLimitNameType + EnforcedLimit: int + MaxLimit: int + Overridden: bool + +class VerifiedDestinationNumberFilterTypeDef(BaseModel): + Name: Literal["status"] + Values: Sequence[str] + +class VerifiedDestinationNumberInformationTypeDef(BaseModel): + VerifiedDestinationNumberArn: str + VerifiedDestinationNumberId: str + DestinationPhoneNumber: str + Status: VerificationStatusType + CreatedTimestamp: datetime + +class DisassociateOriginationIdentityRequestRequestTypeDef(BaseModel): + PoolId: str + OriginationIdentity: str + IsoCountryCode: str + ClientToken: Optional[str] = None + +class DisassociateProtectConfigurationRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + ConfigurationSetName: str + +class DiscardRegistrationVersionRequestRequestTypeDef(BaseModel): + RegistrationId: str + +class GetProtectConfigurationCountryRuleSetRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + NumberCapability: NumberCapabilityType + +class ProtectConfigurationCountryRuleSetInformationTypeDef(BaseModel): + ProtectStatus: ProtectStatusType + +class PoolOriginationIdentitiesFilterTypeDef(BaseModel): + Name: PoolOriginationIdentitiesFilterNameType + Values: Sequence[str] + +class OriginationIdentityMetadataTypeDef(BaseModel): + OriginationIdentityArn: str + OriginationIdentity: str + IsoCountryCode: str + NumberCapabilities: List[NumberCapabilityType] + PhoneNumber: Optional[str] = None + +class RegistrationAssociationFilterTypeDef(BaseModel): + Name: RegistrationAssociationFilterNameType + Values: Sequence[str] + +class RegistrationAssociationMetadataTypeDef(BaseModel): + ResourceArn: str + ResourceId: str + ResourceType: str + IsoCountryCode: Optional[str] = None + PhoneNumber: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PutKeywordRequestRequestTypeDef(BaseModel): + OriginationIdentity: str + Keyword: str + KeywordMessage: str + KeywordAction: Optional[KeywordActionType] = None + +class PutOptedOutNumberRequestRequestTypeDef(BaseModel): + OptOutListName: str + OptedOutNumber: str + +class PutRegistrationFieldValueRequestRequestTypeDef(BaseModel): + RegistrationId: str + FieldPath: str + SelectChoices: Optional[Sequence[str]] = None + TextValue: Optional[str] = None + RegistrationAttachmentId: Optional[str] = None + +class RegistrationDeniedReasonInformationTypeDef(BaseModel): + Reason: str + ShortDescription: str + LongDescription: Optional[str] = None + DocumentationTitle: Optional[str] = None + DocumentationLink: Optional[str] = None + +class SelectValidationTypeDef(BaseModel): + MinChoices: int + MaxChoices: int + Options: List[str] + +class TextValidationTypeDef(BaseModel): + MinLength: int + MaxLength: int + Pattern: str + +class SelectOptionDescriptionTypeDef(BaseModel): + Option: str + Title: Optional[str] = None + Description: Optional[str] = None + +class RegistrationSectionDisplayHintsTypeDef(BaseModel): + Title: str + ShortDescription: str + LongDescription: Optional[str] = None + DocumentationTitle: Optional[str] = None + DocumentationLink: Optional[str] = None + +class RegistrationTypeDisplayHintsTypeDef(BaseModel): + Title: str + ShortDescription: Optional[str] = None + LongDescription: Optional[str] = None + DocumentationTitle: Optional[str] = None + DocumentationLink: Optional[str] = None + +class SupportedAssociationTypeDef(BaseModel): + ResourceType: str + AssociationBehavior: RegistrationAssociationBehaviorType + DisassociationBehavior: RegistrationDisassociationBehaviorType + IsoCountryCode: Optional[str] = None + +class ReleasePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + +class ReleaseSenderIdRequestRequestTypeDef(BaseModel): + SenderId: str + IsoCountryCode: str + +class SendDestinationNumberVerificationCodeRequestRequestTypeDef(BaseModel): + VerifiedDestinationNumberId: str + VerificationChannel: VerificationChannelType + LanguageCode: Optional[LanguageCodeType] = None + OriginationIdentity: Optional[str] = None + ConfigurationSetName: Optional[str] = None + Context: Optional[Mapping[str, str]] = None + DestinationCountryParameters: Optional[ Mapping[DestinationCountryParameterKeyType, str] = None + +class SendMediaMessageRequestRequestTypeDef(BaseModel): + DestinationPhoneNumber: str + OriginationIdentity: str + MessageBody: Optional[str] = None + MediaUrls: Optional[Sequence[str]] = None + ConfigurationSetName: Optional[str] = None + MaxPrice: Optional[str] = None + TimeToLive: Optional[int] = None + Context: Optional[Mapping[str, str]] = None + DryRun: Optional[bool] = None + ProtectConfigurationId: Optional[str] = None + +class SendTextMessageRequestRequestTypeDef(BaseModel): + DestinationPhoneNumber: str + OriginationIdentity: Optional[str] = None + MessageBody: Optional[str] = None + MessageType: Optional[MessageTypeType] = None + Keyword: Optional[str] = None + ConfigurationSetName: Optional[str] = None + MaxPrice: Optional[str] = None + TimeToLive: Optional[int] = None + Context: Optional[Mapping[str, str]] = None + DestinationCountryParameters: Optional[ Mapping[DestinationCountryParameterKeyType, str] = None + DryRun: Optional[bool] = None + ProtectConfigurationId: Optional[str] = None + +class SendVoiceMessageRequestRequestTypeDef(BaseModel): + DestinationPhoneNumber: str + OriginationIdentity: str + MessageBody: Optional[str] = None + MessageBodyTextType: Optional[VoiceMessageBodyTextTypeType] = None + VoiceId: Optional[VoiceIdType] = None + ConfigurationSetName: Optional[str] = None + MaxPricePerMinute: Optional[str] = None + TimeToLive: Optional[int] = None + Context: Optional[Mapping[str, str]] = None + DryRun: Optional[bool] = None + ProtectConfigurationId: Optional[str] = None + +class SetAccountDefaultProtectConfigurationRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + +class SetDefaultMessageTypeRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + MessageType: MessageTypeType + +class SetDefaultSenderIdRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + SenderId: str + +class SetMediaMessageSpendLimitOverrideRequestRequestTypeDef(BaseModel): + MonthlyLimit: int + +class SetTextMessageSpendLimitOverrideRequestRequestTypeDef(BaseModel): + MonthlyLimit: int + +class SetVoiceMessageSpendLimitOverrideRequestRequestTypeDef(BaseModel): + MonthlyLimit: int + +class SubmitRegistrationVersionRequestRequestTypeDef(BaseModel): + RegistrationId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdatePhoneNumberRequestRequestTypeDef(BaseModel): + PhoneNumberId: str + TwoWayEnabled: Optional[bool] = None + TwoWayChannelArn: Optional[str] = None + TwoWayChannelRole: Optional[str] = None + SelfManagedOptOutsEnabled: Optional[bool] = None + OptOutListName: Optional[str] = None + DeletionProtectionEnabled: Optional[bool] = None + +class UpdatePoolRequestRequestTypeDef(BaseModel): + PoolId: str + TwoWayEnabled: Optional[bool] = None + TwoWayChannelArn: Optional[str] = None + TwoWayChannelRole: Optional[str] = None + SelfManagedOptOutsEnabled: Optional[bool] = None + OptOutListName: Optional[str] = None + SharedRoutesEnabled: Optional[bool] = None + DeletionProtectionEnabled: Optional[bool] = None + +class UpdateProtectConfigurationRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + DeletionProtectionEnabled: Optional[bool] = None + +class UpdateSenderIdRequestRequestTypeDef(BaseModel): + SenderId: str + IsoCountryCode: str + DeletionProtectionEnabled: Optional[bool] = None + +class VerifyDestinationNumberRequestRequestTypeDef(BaseModel): + VerifiedDestinationNumberId: str + VerificationCode: str + +class AssociateOriginationIdentityResultTypeDef(BaseModel): + PoolArn: str + PoolId: str + OriginationIdentityArn: str + OriginationIdentity: str + IsoCountryCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateProtectConfigurationResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + ProtectConfigurationArn: str + ProtectConfigurationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRegistrationAssociationResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + RegistrationType: str + ResourceArn: str + ResourceId: str + ResourceType: str + IsoCountryCode: str + PhoneNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAccountDefaultProtectConfigurationResultTypeDef(BaseModel): + DefaultProtectConfigurationArn: str + DefaultProtectConfigurationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDefaultMessageTypeResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + MessageType: MessageTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDefaultSenderIdResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + SenderId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKeywordResultTypeDef(BaseModel): + OriginationIdentityArn: str + OriginationIdentity: str + Keyword: str + KeywordMessage: str + KeywordAction: KeywordActionType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMediaMessageSpendLimitOverrideResultTypeDef(BaseModel): + MonthlyLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteOptOutListResultTypeDef(BaseModel): + OptOutListArn: str + OptOutListName: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteOptedOutNumberResultTypeDef(BaseModel): + OptOutListArn: str + OptOutListName: str + OptedOutNumber: str + OptedOutTimestamp: datetime + EndUserOptedOut: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePoolResultTypeDef(BaseModel): + PoolArn: str + PoolId: str + Status: PoolStatusType + MessageType: MessageTypeType + TwoWayEnabled: bool + TwoWayChannelArn: str + TwoWayChannelRole: str + SelfManagedOptOutsEnabled: bool + OptOutListName: str + SharedRoutesEnabled: bool + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProtectConfigurationResultTypeDef(BaseModel): + ProtectConfigurationArn: str + ProtectConfigurationId: str + CreatedTimestamp: datetime + AccountDefault: bool + DeletionProtectionEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegistrationAttachmentResultTypeDef(BaseModel): + RegistrationAttachmentArn: str + RegistrationAttachmentId: str + AttachmentStatus: AttachmentStatusType + AttachmentUploadErrorReason: Literal["INTERNAL_ERROR"] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegistrationFieldValueResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + VersionNumber: int + FieldPath: str + SelectChoices: List[str] + TextValue: str + RegistrationAttachmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegistrationResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + RegistrationType: str + RegistrationStatus: RegistrationStatusType + CurrentVersionNumber: int + ApprovedVersionNumber: int + LatestDeniedVersionNumber: int + AdditionalAttributes: Dict[str, str] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTextMessageSpendLimitOverrideResultTypeDef(BaseModel): + MonthlyLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVerifiedDestinationNumberResultTypeDef(BaseModel): + VerifiedDestinationNumberArn: str + VerifiedDestinationNumberId: str + DestinationPhoneNumber: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVoiceMessageSpendLimitOverrideResultTypeDef(BaseModel): + MonthlyLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAttributesResultTypeDef(BaseModel): + AccountAttributes: List[AccountAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeAccountLimitsResultTypeDef(BaseModel): + AccountLimits: List[AccountLimitTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DisassociateOriginationIdentityResultTypeDef(BaseModel): + PoolArn: str + PoolId: str + OriginationIdentityArn: str + OriginationIdentity: str + IsoCountryCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateProtectConfigurationResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + ProtectConfigurationArn: str + ProtectConfigurationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutKeywordResultTypeDef(BaseModel): + OriginationIdentityArn: str + OriginationIdentity: str + Keyword: str + KeywordMessage: str + KeywordAction: KeywordActionType + ResponseMetadata: ResponseMetadataTypeDef + +class PutOptedOutNumberResultTypeDef(BaseModel): + OptOutListArn: str + OptOutListName: str + OptedOutNumber: str + OptedOutTimestamp: datetime + EndUserOptedOut: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutRegistrationFieldValueResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + VersionNumber: int + FieldPath: str + SelectChoices: List[str] + TextValue: str + RegistrationAttachmentId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReleasePhoneNumberResultTypeDef(BaseModel): + PhoneNumberArn: str + PhoneNumberId: str + PhoneNumber: str + Status: NumberStatusType + IsoCountryCode: str + MessageType: MessageTypeType + NumberCapabilities: List[NumberCapabilityType] + NumberType: NumberTypeType + MonthlyLeasingPrice: str + TwoWayEnabled: bool + TwoWayChannelArn: str + TwoWayChannelRole: str + SelfManagedOptOutsEnabled: bool + OptOutListName: str + RegistrationId: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ReleaseSenderIdResultTypeDef(BaseModel): + SenderIdArn: str + SenderId: str + IsoCountryCode: str + MessageTypes: List[MessageTypeType] + MonthlyLeasingPrice: str + Registered: bool + RegistrationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendDestinationNumberVerificationCodeResultTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendMediaMessageResultTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendTextMessageResultTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendVoiceMessageResultTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetAccountDefaultProtectConfigurationResultTypeDef(BaseModel): + DefaultProtectConfigurationArn: str + DefaultProtectConfigurationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetDefaultMessageTypeResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + MessageType: MessageTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class SetDefaultSenderIdResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + SenderId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetMediaMessageSpendLimitOverrideResultTypeDef(BaseModel): + MonthlyLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class SetTextMessageSpendLimitOverrideResultTypeDef(BaseModel): + MonthlyLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class SetVoiceMessageSpendLimitOverrideResultTypeDef(BaseModel): + MonthlyLimit: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePhoneNumberResultTypeDef(BaseModel): + PhoneNumberArn: str + PhoneNumberId: str + PhoneNumber: str + Status: NumberStatusType + IsoCountryCode: str + MessageType: MessageTypeType + NumberCapabilities: List[NumberCapabilityType] + NumberType: NumberTypeType + MonthlyLeasingPrice: str + TwoWayEnabled: bool + TwoWayChannelArn: str + TwoWayChannelRole: str + SelfManagedOptOutsEnabled: bool + OptOutListName: str + DeletionProtectionEnabled: bool + RegistrationId: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePoolResultTypeDef(BaseModel): + PoolArn: str + PoolId: str + Status: PoolStatusType + MessageType: MessageTypeType + TwoWayEnabled: bool + TwoWayChannelArn: str + TwoWayChannelRole: str + SelfManagedOptOutsEnabled: bool + OptOutListName: str + SharedRoutesEnabled: bool + DeletionProtectionEnabled: bool + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProtectConfigurationResultTypeDef(BaseModel): + ProtectConfigurationArn: str + ProtectConfigurationId: str + CreatedTimestamp: datetime + AccountDefault: bool + DeletionProtectionEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSenderIdResultTypeDef(BaseModel): + SenderIdArn: str + SenderId: str + IsoCountryCode: str + MessageTypes: List[MessageTypeType] + MonthlyLeasingPrice: str + DeletionProtectionEnabled: bool + Registered: bool + RegistrationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyDestinationNumberResultTypeDef(BaseModel): + VerifiedDestinationNumberArn: str + VerifiedDestinationNumberId: str + DestinationPhoneNumber: str + Status: VerificationStatusType + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConfigurationSetsRequestRequestTypeDef(BaseModel): + ConfigurationSetNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[ConfigurationSetFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class CreateConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateConfigurationSetResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOptOutListRequestRequestTypeDef(BaseModel): + OptOutListName: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateOptOutListResultTypeDef(BaseModel): + OptOutListArn: str + OptOutListName: str + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePoolRequestRequestTypeDef(BaseModel): + OriginationIdentity: str + IsoCountryCode: str + MessageType: MessageTypeType + DeletionProtectionEnabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreatePoolResultTypeDef(BaseModel): + PoolArn: str + PoolId: str + Status: PoolStatusType + MessageType: MessageTypeType + TwoWayEnabled: bool + TwoWayChannelArn: str + TwoWayChannelRole: str + SelfManagedOptOutsEnabled: bool + OptOutListName: str + SharedRoutesEnabled: bool + DeletionProtectionEnabled: bool + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProtectConfigurationRequestRequestTypeDef(BaseModel): + ClientToken: Optional[str] = None + DeletionProtectionEnabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateProtectConfigurationResultTypeDef(BaseModel): + ProtectConfigurationArn: str + ProtectConfigurationId: str + CreatedTimestamp: datetime + AccountDefault: bool + DeletionProtectionEnabled: bool + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRegistrationAttachmentRequestRequestTypeDef(BaseModel): + AttachmentBody: Optional[BlobTypeDef] = None + AttachmentUrl: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateRegistrationAttachmentResultTypeDef(BaseModel): + RegistrationAttachmentArn: str + RegistrationAttachmentId: str + AttachmentStatus: AttachmentStatusType + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRegistrationRequestRequestTypeDef(BaseModel): + RegistrationType: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateRegistrationResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + RegistrationType: str + RegistrationStatus: RegistrationStatusType + CurrentVersionNumber: int + AdditionalAttributes: Dict[str, str] + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVerifiedDestinationNumberRequestRequestTypeDef(BaseModel): + DestinationPhoneNumber: str + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class CreateVerifiedDestinationNumberResultTypeDef(BaseModel): + VerifiedDestinationNumberArn: str + VerifiedDestinationNumberId: str + DestinationPhoneNumber: str + Status: VerificationStatusType + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResultTypeDef(BaseModel): + ResourceArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RequestPhoneNumberRequestRequestTypeDef(BaseModel): + IsoCountryCode: str + MessageType: MessageTypeType + NumberCapabilities: Sequence[NumberCapabilityType] + NumberType: RequestableNumberTypeType + OptOutListName: Optional[str] = None + PoolId: Optional[str] = None + RegistrationId: Optional[str] = None + DeletionProtectionEnabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class RequestPhoneNumberResultTypeDef(BaseModel): + PhoneNumberArn: str + PhoneNumberId: str + PhoneNumber: str + Status: NumberStatusType + IsoCountryCode: str + MessageType: MessageTypeType + NumberCapabilities: List[NumberCapabilityType] + NumberType: RequestableNumberTypeType + MonthlyLeasingPrice: str + TwoWayEnabled: bool + TwoWayChannelArn: str + TwoWayChannelRole: str + SelfManagedOptOutsEnabled: bool + OptOutListName: str + DeletionProtectionEnabled: bool + PoolId: str + RegistrationId: str + Tags: List[TagTypeDef] + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class RequestSenderIdRequestRequestTypeDef(BaseModel): + SenderId: str + IsoCountryCode: str + MessageTypes: Optional[Sequence[MessageTypeType]] = None + DeletionProtectionEnabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ClientToken: Optional[str] = None + +class RequestSenderIdResultTypeDef(BaseModel): + SenderIdArn: str + SenderId: str + IsoCountryCode: str + MessageTypes: List[MessageTypeType] + MonthlyLeasingPrice: str + DeletionProtectionEnabled: bool + Registered: bool + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + MatchingEventTypes: Sequence[EventTypeType] + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + ClientToken: Optional[str] = None + +class EventDestinationTypeDef(BaseModel): + EventDestinationName: str + Enabled: bool + MatchingEventTypes: List[EventTypeType] + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + +class UpdateEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + Enabled: Optional[bool] = None + MatchingEventTypes: Optional[Sequence[EventTypeType]] = None + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + +class CreateRegistrationVersionResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + VersionNumber: int + RegistrationVersionStatus: RegistrationVersionStatusType + RegistrationVersionStatusHistory: RegistrationVersionStatusHistoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DiscardRegistrationVersionResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + VersionNumber: int + RegistrationVersionStatus: RegistrationVersionStatusType + RegistrationVersionStatusHistory: RegistrationVersionStatusHistoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitRegistrationVersionResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + VersionNumber: int + RegistrationVersionStatus: RegistrationVersionStatusType + RegistrationVersionStatusHistory: RegistrationVersionStatusHistoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAttributesRequestDescribeAccountAttributesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAccountLimitsRequestDescribeAccountLimitsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeConfigurationSetsRequestDescribeConfigurationSetsPaginateTypeDef(BaseModel): + ConfigurationSetNames: Optional[Sequence[str]] = None + Filters: Optional[Sequence[ConfigurationSetFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOptOutListsRequestDescribeOptOutListsPaginateTypeDef(BaseModel): + OptOutListNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationFieldDefinitionsRequestDescribeRegistrationFieldDefinitionsPaginateTypeDef(BaseModel): + RegistrationType: str + SectionPath: Optional[str] = None + FieldPaths: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationFieldValuesRequestDescribeRegistrationFieldValuesPaginateTypeDef(BaseModel): + RegistrationId: str + VersionNumber: Optional[int] = None + SectionPath: Optional[str] = None + FieldPaths: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationSectionDefinitionsRequestDescribeRegistrationSectionDefinitionsPaginateTypeDef(BaseModel): + RegistrationType: str + SectionPaths: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSpendLimitsRequestDescribeSpendLimitsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeKeywordsRequestDescribeKeywordsPaginateTypeDef(BaseModel): + OriginationIdentity: str + Keywords: Optional[Sequence[str]] = None + Filters: Optional[Sequence[KeywordFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeKeywordsRequestRequestTypeDef(BaseModel): + OriginationIdentity: str + Keywords: Optional[Sequence[str]] = None + Filters: Optional[Sequence[KeywordFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeKeywordsResultTypeDef(BaseModel): + OriginationIdentityArn: str + OriginationIdentity: str + Keywords: List[KeywordInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOptOutListsResultTypeDef(BaseModel): + OptOutLists: List[OptOutListInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOptedOutNumbersRequestDescribeOptedOutNumbersPaginateTypeDef(BaseModel): + OptOutListName: str + OptedOutNumbers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[OptedOutFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOptedOutNumbersRequestRequestTypeDef(BaseModel): + OptOutListName: str + OptedOutNumbers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[OptedOutFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeOptedOutNumbersResultTypeDef(BaseModel): + OptOutListArn: str + OptOutListName: str + OptedOutNumbers: List[OptedOutNumberInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribePhoneNumbersRequestDescribePhoneNumbersPaginateTypeDef(BaseModel): + PhoneNumberIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[PhoneNumberFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePhoneNumbersRequestRequestTypeDef(BaseModel): + PhoneNumberIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[PhoneNumberFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribePhoneNumbersResultTypeDef(BaseModel): + PhoneNumbers: List[PhoneNumberInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribePoolsRequestDescribePoolsPaginateTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[PoolFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePoolsRequestRequestTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[PoolFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribePoolsResultTypeDef(BaseModel): + Pools: List[PoolInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeProtectConfigurationsRequestDescribeProtectConfigurationsPaginateTypeDef(BaseModel): + ProtectConfigurationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[ProtectConfigurationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeProtectConfigurationsRequestRequestTypeDef(BaseModel): + ProtectConfigurationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[ProtectConfigurationFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeProtectConfigurationsResultTypeDef(BaseModel): + ProtectConfigurations: List[ProtectConfigurationInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRegistrationAttachmentsRequestDescribeRegistrationAttachmentsPaginateTypeDef(BaseModel): + RegistrationAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[RegistrationAttachmentFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationAttachmentsRequestRequestTypeDef(BaseModel): + RegistrationAttachmentIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[RegistrationAttachmentFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeRegistrationAttachmentsResultTypeDef(BaseModel): + RegistrationAttachments: List[RegistrationAttachmentsInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRegistrationFieldValuesResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + VersionNumber: int + RegistrationFieldValues: List[RegistrationFieldValueInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRegistrationTypeDefinitionsRequestDescribeRegistrationTypeDefinitionsPaginateTypeDef(BaseModel): + RegistrationTypes: Optional[Sequence[str]] = None + Filters: Optional[Sequence[RegistrationTypeFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationTypeDefinitionsRequestRequestTypeDef(BaseModel): + RegistrationTypes: Optional[Sequence[str]] = None + Filters: Optional[Sequence[RegistrationTypeFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeRegistrationVersionsRequestDescribeRegistrationVersionsPaginateTypeDef(BaseModel): + RegistrationId: str + VersionNumbers: Optional[Sequence[int]] = None + Filters: Optional[Sequence[RegistrationVersionFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationVersionsRequestRequestTypeDef(BaseModel): + RegistrationId: str + VersionNumbers: Optional[Sequence[int]] = None + Filters: Optional[Sequence[RegistrationVersionFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeRegistrationsRequestDescribeRegistrationsPaginateTypeDef(BaseModel): + RegistrationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[RegistrationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRegistrationsRequestRequestTypeDef(BaseModel): + RegistrationIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[RegistrationFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeRegistrationsResultTypeDef(BaseModel): + Registrations: List[RegistrationInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSenderIdsRequestDescribeSenderIdsPaginateTypeDef(BaseModel): + SenderIds: Optional[Sequence[SenderIdAndCountryTypeDef]] = None + Filters: Optional[Sequence[SenderIdFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSenderIdsRequestRequestTypeDef(BaseModel): + SenderIds: Optional[Sequence[SenderIdAndCountryTypeDef]] = None + Filters: Optional[Sequence[SenderIdFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeSenderIdsResultTypeDef(BaseModel): + SenderIds: List[SenderIdInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSpendLimitsResultTypeDef(BaseModel): + SpendLimits: List[SpendLimitTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeVerifiedDestinationNumbersRequestDescribeVerifiedDestinationNumbersPaginateTypeDef(BaseModel): + VerifiedDestinationNumberIds: Optional[Sequence[str]] = None + DestinationPhoneNumbers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[VerifiedDestinationNumberFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVerifiedDestinationNumbersRequestRequestTypeDef(BaseModel): + VerifiedDestinationNumberIds: Optional[Sequence[str]] = None + DestinationPhoneNumbers: Optional[Sequence[str]] = None + Filters: Optional[Sequence[VerifiedDestinationNumberFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeVerifiedDestinationNumbersResultTypeDef(BaseModel): + VerifiedDestinationNumbers: List[VerifiedDestinationNumberInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetProtectConfigurationCountryRuleSetResultTypeDef(BaseModel): + ProtectConfigurationArn: str + ProtectConfigurationId: str + NumberCapability: NumberCapabilityType + CountryRuleSet: Dict[str, ProtectConfigurationCountryRuleSetInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProtectConfigurationCountryRuleSetRequestRequestTypeDef(BaseModel): + ProtectConfigurationId: str + NumberCapability: NumberCapabilityType + CountryRuleSetUpdates: Mapping[str, ProtectConfigurationCountryRuleSetInformationTypeDef] + +class UpdateProtectConfigurationCountryRuleSetResultTypeDef(BaseModel): + ProtectConfigurationArn: str + ProtectConfigurationId: str + NumberCapability: NumberCapabilityType + CountryRuleSet: Dict[str, ProtectConfigurationCountryRuleSetInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPoolOriginationIdentitiesRequestListPoolOriginationIdentitiesPaginateTypeDef(BaseModel): + PoolId: str + Filters: Optional[Sequence[PoolOriginationIdentitiesFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoolOriginationIdentitiesRequestRequestTypeDef(BaseModel): + PoolId: str + Filters: Optional[Sequence[PoolOriginationIdentitiesFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPoolOriginationIdentitiesResultTypeDef(BaseModel): + PoolArn: str + PoolId: str + OriginationIdentities: List[OriginationIdentityMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRegistrationAssociationsRequestListRegistrationAssociationsPaginateTypeDef(BaseModel): + RegistrationId: str + Filters: Optional[Sequence[RegistrationAssociationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegistrationAssociationsRequestRequestTypeDef(BaseModel): + RegistrationId: str + Filters: Optional[Sequence[RegistrationAssociationFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRegistrationAssociationsResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + RegistrationType: str + RegistrationAssociations: List[RegistrationAssociationMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RegistrationVersionInformationTypeDef(BaseModel): + VersionNumber: int + RegistrationVersionStatus: RegistrationVersionStatusType + RegistrationVersionStatusHistory: RegistrationVersionStatusHistoryTypeDef + DeniedReasons: Optional[List[RegistrationDeniedReasonInformationTypeDef]] = None + +class RegistrationFieldDisplayHintsTypeDef(BaseModel): + Title: str + ShortDescription: str + LongDescription: Optional[str] = None + DocumentationTitle: Optional[str] = None + DocumentationLink: Optional[str] = None + SelectOptionDescriptions: Optional[List[SelectOptionDescriptionTypeDef]] = None + TextValidationDescription: Optional[str] = None + ExampleTextValue: Optional[str] = None + +class RegistrationSectionDefinitionTypeDef(BaseModel): + SectionPath: str + DisplayHints: RegistrationSectionDisplayHintsTypeDef + +class RegistrationTypeDefinitionTypeDef(BaseModel): + RegistrationType: str + DisplayHints: RegistrationTypeDisplayHintsTypeDef + SupportedAssociations: Optional[List[SupportedAssociationTypeDef]] = None + +class ConfigurationSetInformationTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + EventDestinations: List[EventDestinationTypeDef] + CreatedTimestamp: datetime + DefaultMessageType: Optional[MessageTypeType] = None + DefaultSenderId: Optional[str] = None + ProtectConfigurationId: Optional[str] = None + +class CreateEventDestinationResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + EventDestination: EventDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteConfigurationSetResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + EventDestinations: List[EventDestinationTypeDef] + DefaultMessageType: MessageTypeType + DefaultSenderId: str + CreatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventDestinationResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + EventDestination: EventDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEventDestinationResultTypeDef(BaseModel): + ConfigurationSetArn: str + ConfigurationSetName: str + EventDestination: EventDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRegistrationVersionsResultTypeDef(BaseModel): + RegistrationArn: str + RegistrationId: str + RegistrationVersions: List[RegistrationVersionInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RegistrationFieldDefinitionTypeDef(BaseModel): + SectionPath: str + FieldPath: str + FieldType: FieldTypeType + FieldRequirement: FieldRequirementType + DisplayHints: RegistrationFieldDisplayHintsTypeDef + SelectValidation: Optional[SelectValidationTypeDef] = None + TextValidation: Optional[TextValidationTypeDef] = None + +class DescribeRegistrationSectionDefinitionsResultTypeDef(BaseModel): + RegistrationType: str + RegistrationSectionDefinitions: List[RegistrationSectionDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRegistrationTypeDefinitionsResultTypeDef(BaseModel): + RegistrationTypeDefinitions: List[RegistrationTypeDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeConfigurationSetsResultTypeDef(BaseModel): + ConfigurationSets: List[ConfigurationSetInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeRegistrationFieldDefinitionsResultTypeDef(BaseModel): + RegistrationType: str + RegistrationFieldDefinitions: List[RegistrationFieldDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_constants.py b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_constants.py new file mode 100644 index 00000000..b5f9e6e1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pinpoint_sms_voice_v2_constants.py @@ -0,0 +1,656 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountAttributeNameType = Literal["ACCOUNT_TIER", "DEFAULT_PROTECT_CONFIGURATION_ID"] +AccountLimitNameType = Literal["CONFIGURATION_SETS", + "OPT_OUT_LISTS", + "PHONE_NUMBERS", + "POOLS", + "REGISTRATIONS", + "REGISTRATION_ATTACHMENTS", + "SENDER_IDS", + "VERIFIED_DESTINATION_NUMBERS",] +AttachmentStatusType = Literal["DELETED", "UPLOAD_COMPLETE", "UPLOAD_FAILED", "UPLOAD_IN_PROGRESS"] +AttachmentUploadErrorReasonType = Literal["INTERNAL_ERROR"] +ConfigurationSetFilterNameType = Literal["default-message-type", + "default-sender-id", + "event-destination-name", + "matching-event-types", + "protect-configuration-id",] +DescribeAccountAttributesPaginatorName = Literal["describe_account_attributes"] +DescribeAccountLimitsPaginatorName = Literal["describe_account_limits"] +DescribeConfigurationSetsPaginatorName = Literal["describe_configuration_sets"] +DescribeKeywordsPaginatorName = Literal["describe_keywords"] +DescribeOptOutListsPaginatorName = Literal["describe_opt_out_lists"] +DescribeOptedOutNumbersPaginatorName = Literal["describe_opted_out_numbers"] +DescribePhoneNumbersPaginatorName = Literal["describe_phone_numbers"] +DescribePoolsPaginatorName = Literal["describe_pools"] +DescribeProtectConfigurationsPaginatorName = Literal["describe_protect_configurations"] +DescribeRegistrationAttachmentsPaginatorName = Literal["describe_registration_attachments"] +DescribeRegistrationFieldDefinitionsPaginatorName = Literal["describe_registration_field_definitions"] +DescribeRegistrationFieldValuesPaginatorName = Literal["describe_registration_field_values"] +DescribeRegistrationSectionDefinitionsPaginatorName = Literal["describe_registration_section_definitions"] +DescribeRegistrationTypeDefinitionsPaginatorName = Literal["describe_registration_type_definitions"] +DescribeRegistrationVersionsPaginatorName = Literal["describe_registration_versions"] +DescribeRegistrationsPaginatorName = Literal["describe_registrations"] +DescribeSenderIdsPaginatorName = Literal["describe_sender_ids"] +DescribeSpendLimitsPaginatorName = Literal["describe_spend_limits"] +DescribeVerifiedDestinationNumbersPaginatorName = Literal["describe_verified_destination_numbers"] +DestinationCountryParameterKeyType = Literal["IN_ENTITY_ID", "IN_TEMPLATE_ID"] +EventTypeType = Literal["ALL", + "MEDIA_ALL", + "MEDIA_BLOCKED", + "MEDIA_CARRIER_BLOCKED", + "MEDIA_CARRIER_UNREACHABLE", + "MEDIA_DELIVERED", + "MEDIA_FILE_INACCESSIBLE", + "MEDIA_FILE_SIZE_EXCEEDED", + "MEDIA_FILE_TYPE_UNSUPPORTED", + "MEDIA_INVALID", + "MEDIA_INVALID_MESSAGE", + "MEDIA_PENDING", + "MEDIA_QUEUED", + "MEDIA_SPAM", + "MEDIA_SUCCESSFUL", + "MEDIA_TTL_EXPIRED", + "MEDIA_UNKNOWN", + "MEDIA_UNREACHABLE", + "TEXT_ALL", + "TEXT_BLOCKED", + "TEXT_CARRIER_BLOCKED", + "TEXT_CARRIER_UNREACHABLE", + "TEXT_DELIVERED", + "TEXT_INVALID", + "TEXT_INVALID_MESSAGE", + "TEXT_PENDING", + "TEXT_QUEUED", + "TEXT_SENT", + "TEXT_SPAM", + "TEXT_SUCCESSFUL", + "TEXT_TTL_EXPIRED", + "TEXT_UNKNOWN", + "TEXT_UNREACHABLE", + "VOICE_ALL", + "VOICE_ANSWERED", + "VOICE_BUSY", + "VOICE_COMPLETED", + "VOICE_FAILED", + "VOICE_INITIATED", + "VOICE_NO_ANSWER", + "VOICE_RINGING", + "VOICE_TTL_EXPIRED",] +FieldRequirementType = Literal["CONDITIONAL", "OPTIONAL", "REQUIRED"] +FieldTypeType = Literal["ATTACHMENT", "SELECT", "TEXT"] +KeywordActionType = Literal["AUTOMATIC_RESPONSE", "OPT_IN", "OPT_OUT"] +KeywordFilterNameType = Literal["keyword-action"] +LanguageCodeType = Literal["DE_DE", + "EN_GB", + "EN_US", + "ES_419", + "ES_ES", + "FR_CA", + "FR_FR", + "IT_IT", + "JA_JP", + "KO_KR", + "PT_BR", + "ZH_CN", + "ZH_TW",] +ListPoolOriginationIdentitiesPaginatorName = Literal["list_pool_origination_identities"] +ListRegistrationAssociationsPaginatorName = Literal["list_registration_associations"] +MessageTypeType = Literal["PROMOTIONAL", "TRANSACTIONAL"] +NumberCapabilityType = Literal["MMS", "SMS", "VOICE"] +NumberStatusType = Literal["ACTIVE", "ASSOCIATING", "DELETED", "DISASSOCIATING", "PENDING"] +NumberTypeType = Literal["LONG_CODE", "SHORT_CODE", "SIMULATOR", "TEN_DLC", "TOLL_FREE"] +OptedOutFilterNameType = Literal["end-user-opted-out"] +PhoneNumberFilterNameType = Literal["deletion-protection-enabled", + "iso-country-code", + "message-type", + "number-capability", + "number-type", + "opt-out-list-name", + "self-managed-opt-outs-enabled", + "status", + "two-way-channel-arn", + "two-way-enabled",] +PoolFilterNameType = Literal["deletion-protection-enabled", + "message-type", + "opt-out-list-name", + "self-managed-opt-outs-enabled", + "shared-routes-enabled", + "status", + "two-way-channel-arn", + "two-way-enabled",] +PoolOriginationIdentitiesFilterNameType = Literal["iso-country-code", "number-capability"] +PoolStatusType = Literal["ACTIVE", "CREATING", "DELETING"] +ProtectConfigurationFilterNameType = Literal["account-default", "deletion-protection-enabled"] +ProtectStatusType = Literal["ALLOW", "BLOCK"] +RegistrationAssociationBehaviorType = Literal["ASSOCIATE_AFTER_COMPLETE", "ASSOCIATE_BEFORE_SUBMIT", "ASSOCIATE_ON_APPROVAL"] +RegistrationAssociationFilterNameType = Literal["iso-country-code", "resource-type"] +RegistrationAttachmentFilterNameType = Literal["attachment-status"] +RegistrationDisassociationBehaviorType = Literal["DELETE_REGISTRATION_DISASSOCIATES", + "DISASSOCIATE_ALL_ALLOWS_DELETE_REGISTRATION", + "DISASSOCIATE_ALL_CLOSES_REGISTRATION",] +RegistrationFilterNameType = Literal["registration-status", "registration-type"] +RegistrationStatusType = Literal["CLOSED", + "COMPLETE", + "CREATED", + "DELETED", + "PROVISIONING", + "REQUIRES_UPDATES", + "REVIEWING", + "SUBMITTED",] +RegistrationTypeFilterNameType = Literal["supported-association-iso-country-code", "supported-association-resource-type"] +RegistrationVersionFilterNameType = Literal["registration-version-status"] +RegistrationVersionStatusType = Literal["APPROVED", "ARCHIVED", "DENIED", "DISCARDED", "DRAFT", "REVIEWING", "REVOKED", "SUBMITTED"] +RequestableNumberTypeType = Literal["LONG_CODE", "SIMULATOR", "TEN_DLC", "TOLL_FREE"] +SenderIdFilterNameType = Literal["deletion-protection-enabled", "iso-country-code", "message-type", "registered", "sender-id"] +SpendLimitNameType = Literal["MEDIA_MESSAGE_MONTHLY_SPEND_LIMIT", + "TEXT_MESSAGE_MONTHLY_SPEND_LIMIT", + "VOICE_MESSAGE_MONTHLY_SPEND_LIMIT",] +VerificationChannelType = Literal["TEXT", "VOICE"] +VerificationStatusType = Literal["PENDING", "VERIFIED"] +VerifiedDestinationNumberFilterNameType = Literal["status"] +VoiceIdType = Literal["AMY", + "ASTRID", + "BIANCA", + "BRIAN", + "CAMILA", + "CARLA", + "CARMEN", + "CELINE", + "CHANTAL", + "CONCHITA", + "CRISTIANO", + "DORA", + "EMMA", + "ENRIQUE", + "EWA", + "FILIZ", + "GERAINT", + "GIORGIO", + "GWYNETH", + "HANS", + "INES", + "IVY", + "JACEK", + "JAN", + "JOANNA", + "JOEY", + "JUSTIN", + "KARL", + "KENDRA", + "KIMBERLY", + "LEA", + "LIV", + "LOTTE", + "LUCIA", + "LUPE", + "MADS", + "MAJA", + "MARLENE", + "MATHIEU", + "MATTHEW", + "MAXIM", + "MIA", + "MIGUEL", + "MIZUKI", + "NAJA", + "NICOLE", + "PENELOPE", + "RAVEENA", + "RICARDO", + "RUBEN", + "RUSSELL", + "SALLI", + "SEOYEON", + "TAKUMI", + "TATYANA", + "VICKI", + "VITORIA", + "ZEINA", + "ZHIYU",] +VoiceMessageBodyTextTypeType = Literal["SSML", "TEXT"] +PinpointSMSVoiceV2ServiceName = Literal["pinpoint-sms-voice-v2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_account_attributes", + "describe_account_limits", + "describe_configuration_sets", + "describe_keywords", + "describe_opt_out_lists", + "describe_opted_out_numbers", + "describe_phone_numbers", + "describe_pools", + "describe_protect_configurations", + "describe_registration_attachments", + "describe_registration_field_definitions", + "describe_registration_field_values", + "describe_registration_section_definitions", + "describe_registration_type_definitions", + "describe_registration_versions", + "describe_registrations", + "describe_sender_ids", + "describe_spend_limits", + "describe_verified_destination_numbers", + "list_pool_origination_identities", + "list_registration_associations",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/pipes_classes.py b/aws_resource_validator/pydantic_models/pipes_classes.py new file mode 100644 index 00000000..c4a96312 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pipes_classes.py @@ -0,0 +1,731 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pipes_constants import * + +class AwsVpcConfigurationOutputTypeDef(BaseModel): + Subnets: List[str] + SecurityGroups: Optional[List[str]] = None + AssignPublicIp: Optional[AssignPublicIpType] = None + +class AwsVpcConfigurationTypeDef(BaseModel): + Subnets: Sequence[str] + SecurityGroups: Optional[Sequence[str]] = None + AssignPublicIp: Optional[AssignPublicIpType] = None + +class BatchArrayPropertiesTypeDef(BaseModel): + Size: Optional[int] = None + +class BatchEnvironmentVariableTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class BatchResourceRequirementTypeDef(BaseModel): + Type: BatchResourceRequirementTypeType + Value: str + +class BatchJobDependencyTypeDef(BaseModel): + JobId: Optional[str] = None + Type: Optional[BatchJobDependencyTypeType] = None + +class BatchRetryStrategyTypeDef(BaseModel): + Attempts: Optional[int] = None + +class CapacityProviderStrategyItemTypeDef(BaseModel): + capacityProvider: str + weight: Optional[int] = None + base: Optional[int] = None + +class CloudwatchLogsLogDestinationParametersTypeDef(BaseModel): + LogGroupArn: str + +class CloudwatchLogsLogDestinationTypeDef(BaseModel): + LogGroupArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeadLetterConfigTypeDef(BaseModel): + Arn: Optional[str] = None + +class DeletePipeRequestRequestTypeDef(BaseModel): + Name: str + +class DescribePipeRequestRequestTypeDef(BaseModel): + Name: str + +class DimensionMappingTypeDef(BaseModel): + DimensionValue: str + DimensionValueType: Literal["VARCHAR"] + DimensionName: str + +class EcsEnvironmentFileTypeDef(BaseModel): + type: Literal["s3"] + value: str + +class EcsEnvironmentVariableTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class EcsResourceRequirementTypeDef(BaseModel): + type: EcsResourceRequirementTypeType + value: str + +class EcsEphemeralStorageTypeDef(BaseModel): + sizeInGiB: int + +class EcsInferenceAcceleratorOverrideTypeDef(BaseModel): + deviceName: Optional[str] = None + deviceType: Optional[str] = None + +class FilterTypeDef(BaseModel): + Pattern: Optional[str] = None + +class FirehoseLogDestinationParametersTypeDef(BaseModel): + DeliveryStreamArn: str + +class FirehoseLogDestinationTypeDef(BaseModel): + DeliveryStreamArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListPipesRequestRequestTypeDef(BaseModel): + NamePrefix: Optional[str] = None + DesiredState: Optional[RequestedPipeStateType] = None + CurrentState: Optional[PipeStateType] = None + SourcePrefix: Optional[str] = None + TargetPrefix: Optional[str] = None + NextToken: Optional[str] = None + Limit: Optional[int] = None + +class PipeTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + DesiredState: Optional[RequestedPipeStateType] = None + CurrentState: Optional[PipeStateType] = None + StateReason: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + Source: Optional[str] = None + Target: Optional[str] = None + Enrichment: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MQBrokerAccessCredentialsTypeDef(BaseModel): + BasicAuth: Optional[str] = None + +class MSKAccessCredentialsTypeDef(BaseModel): + SaslScram512Auth: Optional[str] = None + ClientCertificateTlsAuth: Optional[str] = None + +class MultiMeasureAttributeMappingTypeDef(BaseModel): + MeasureValue: str + MeasureValueType: MeasureValueTypeType + MultiMeasureAttributeName: str + +class PipeEnrichmentHttpParametersOutputTypeDef(BaseModel): + PathParameterValues: Optional[List[str]] = None + HeaderParameters: Optional[Dict[str, str]] = None + QueryStringParameters: Optional[Dict[str, str]] = None + +class PipeEnrichmentHttpParametersTypeDef(BaseModel): + PathParameterValues: Optional[Sequence[str]] = None + HeaderParameters: Optional[Mapping[str, str]] = None + QueryStringParameters: Optional[Mapping[str, str]] = None + +class S3LogDestinationParametersTypeDef(BaseModel): + BucketName: str + BucketOwner: str + OutputFormat: Optional[S3OutputFormatType] = None + Prefix: Optional[str] = None + +class S3LogDestinationTypeDef(BaseModel): + BucketName: Optional[str] = None + Prefix: Optional[str] = None + BucketOwner: Optional[str] = None + OutputFormat: Optional[S3OutputFormatType] = None + +class PipeSourceSqsQueueParametersTypeDef(BaseModel): + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class SelfManagedKafkaAccessConfigurationCredentialsTypeDef(BaseModel): + BasicAuth: Optional[str] = None + SaslScram512Auth: Optional[str] = None + SaslScram256Auth: Optional[str] = None + ClientCertificateTlsAuth: Optional[str] = None + +class SelfManagedKafkaAccessConfigurationVpcOutputTypeDef(BaseModel): + Subnets: Optional[List[str]] = None + SecurityGroup: Optional[List[str]] = None + +class SelfManagedKafkaAccessConfigurationVpcTypeDef(BaseModel): + Subnets: Optional[Sequence[str]] = None + SecurityGroup: Optional[Sequence[str]] = None + +class PipeTargetCloudWatchLogsParametersTypeDef(BaseModel): + LogStreamName: Optional[str] = None + Timestamp: Optional[str] = None + +class PlacementConstraintTypeDef(BaseModel): + type: Optional[PlacementConstraintTypeType] = None + expression: Optional[str] = None + +class PlacementStrategyTypeDef(BaseModel): + type: Optional[PlacementStrategyTypeType] = None + field: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class PipeTargetEventBridgeEventBusParametersOutputTypeDef(BaseModel): + EndpointId: Optional[str] = None + DetailType: Optional[str] = None + Source: Optional[str] = None + Resources: Optional[List[str]] = None + Time: Optional[str] = None + +class PipeTargetEventBridgeEventBusParametersTypeDef(BaseModel): + EndpointId: Optional[str] = None + DetailType: Optional[str] = None + Source: Optional[str] = None + Resources: Optional[Sequence[str]] = None + Time: Optional[str] = None + +class PipeTargetHttpParametersOutputTypeDef(BaseModel): + PathParameterValues: Optional[List[str]] = None + HeaderParameters: Optional[Dict[str, str]] = None + QueryStringParameters: Optional[Dict[str, str]] = None + +class PipeTargetHttpParametersTypeDef(BaseModel): + PathParameterValues: Optional[Sequence[str]] = None + HeaderParameters: Optional[Mapping[str, str]] = None + QueryStringParameters: Optional[Mapping[str, str]] = None + +class PipeTargetKinesisStreamParametersTypeDef(BaseModel): + PartitionKey: str + +class PipeTargetLambdaFunctionParametersTypeDef(BaseModel): + InvocationType: Optional[PipeTargetInvocationTypeType] = None + +class PipeTargetRedshiftDataParametersOutputTypeDef(BaseModel): + Database: str + Sqls: List[str] + SecretManagerArn: Optional[str] = None + DbUser: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + +class PipeTargetSqsQueueParametersTypeDef(BaseModel): + MessageGroupId: Optional[str] = None + MessageDeduplicationId: Optional[str] = None + +class PipeTargetStateMachineParametersTypeDef(BaseModel): + InvocationType: Optional[PipeTargetInvocationTypeType] = None + +class PipeTargetRedshiftDataParametersTypeDef(BaseModel): + Database: str + Sqls: Sequence[str] + SecretManagerArn: Optional[str] = None + DbUser: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + +class SageMakerPipelineParameterTypeDef(BaseModel): + Name: str + Value: str + +class SingleMeasureMappingTypeDef(BaseModel): + MeasureValue: str + MeasureValueType: MeasureValueTypeType + MeasureName: str + +class StartPipeRequestRequestTypeDef(BaseModel): + Name: str + +class StopPipeRequestRequestTypeDef(BaseModel): + Name: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdatePipeSourceSqsQueueParametersTypeDef(BaseModel): + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class NetworkConfigurationOutputTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationOutputTypeDef] = None + +class NetworkConfigurationTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationTypeDef] = None + +class BatchContainerOverridesOutputTypeDef(BaseModel): + Command: Optional[List[str]] = None + Environment: Optional[List[BatchEnvironmentVariableTypeDef]] = None + InstanceType: Optional[str] = None + ResourceRequirements: Optional[List[BatchResourceRequirementTypeDef]] = None + +class BatchContainerOverridesTypeDef(BaseModel): + Command: Optional[Sequence[str]] = None + Environment: Optional[Sequence[BatchEnvironmentVariableTypeDef]] = None + InstanceType: Optional[str] = None + ResourceRequirements: Optional[Sequence[BatchResourceRequirementTypeDef]] = None + +class CreatePipeResponseTypeDef(BaseModel): + Arn: str + Name: str + DesiredState: RequestedPipeStateType + CurrentState: PipeStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePipeResponseTypeDef(BaseModel): + Arn: str + Name: str + DesiredState: RequestedPipeStateDescribeResponseType + CurrentState: PipeStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartPipeResponseTypeDef(BaseModel): + Arn: str + Name: str + DesiredState: RequestedPipeStateType + CurrentState: PipeStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StopPipeResponseTypeDef(BaseModel): + Arn: str + Name: str + DesiredState: RequestedPipeStateType + CurrentState: PipeStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipeResponseTypeDef(BaseModel): + Arn: str + Name: str + DesiredState: RequestedPipeStateType + CurrentState: PipeStateType + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PipeSourceDynamoDBStreamParametersTypeDef(BaseModel): + StartingPosition: DynamoDBStreamStartPositionType + BatchSize: Optional[int] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + OnPartialBatchItemFailure: Optional[Literal["AUTOMATIC_BISECT"]] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + MaximumRecordAgeInSeconds: Optional[int] = None + MaximumRetryAttempts: Optional[int] = None + ParallelizationFactor: Optional[int] = None + +class PipeSourceKinesisStreamParametersOutputTypeDef(BaseModel): + StartingPosition: KinesisStreamStartPositionType + BatchSize: Optional[int] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + OnPartialBatchItemFailure: Optional[Literal["AUTOMATIC_BISECT"]] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + MaximumRecordAgeInSeconds: Optional[int] = None + MaximumRetryAttempts: Optional[int] = None + ParallelizationFactor: Optional[int] = None + StartingPositionTimestamp: Optional[datetime] = None + +class UpdatePipeSourceDynamoDBStreamParametersTypeDef(BaseModel): + BatchSize: Optional[int] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + OnPartialBatchItemFailure: Optional[Literal["AUTOMATIC_BISECT"]] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + MaximumRecordAgeInSeconds: Optional[int] = None + MaximumRetryAttempts: Optional[int] = None + ParallelizationFactor: Optional[int] = None + +class UpdatePipeSourceKinesisStreamParametersTypeDef(BaseModel): + BatchSize: Optional[int] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + OnPartialBatchItemFailure: Optional[Literal["AUTOMATIC_BISECT"]] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + MaximumRecordAgeInSeconds: Optional[int] = None + MaximumRetryAttempts: Optional[int] = None + ParallelizationFactor: Optional[int] = None + +class EcsContainerOverrideOutputTypeDef(BaseModel): + Command: Optional[List[str]] = None + Cpu: Optional[int] = None + Environment: Optional[List[EcsEnvironmentVariableTypeDef]] = None + EnvironmentFiles: Optional[List[EcsEnvironmentFileTypeDef]] = None + Memory: Optional[int] = None + MemoryReservation: Optional[int] = None + Name: Optional[str] = None + ResourceRequirements: Optional[List[EcsResourceRequirementTypeDef]] = None + +class EcsContainerOverrideTypeDef(BaseModel): + Command: Optional[Sequence[str]] = None + Cpu: Optional[int] = None + Environment: Optional[Sequence[EcsEnvironmentVariableTypeDef]] = None + EnvironmentFiles: Optional[Sequence[EcsEnvironmentFileTypeDef]] = None + Memory: Optional[int] = None + MemoryReservation: Optional[int] = None + Name: Optional[str] = None + ResourceRequirements: Optional[Sequence[EcsResourceRequirementTypeDef]] = None + +class FilterCriteriaOutputTypeDef(BaseModel): + Filters: Optional[List[FilterTypeDef]] = None + +class FilterCriteriaTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListPipesRequestListPipesPaginateTypeDef(BaseModel): + NamePrefix: Optional[str] = None + DesiredState: Optional[RequestedPipeStateType] = None + CurrentState: Optional[PipeStateType] = None + SourcePrefix: Optional[str] = None + TargetPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipesResponseTypeDef(BaseModel): + Pipes: List[PipeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PipeSourceActiveMQBrokerParametersTypeDef(BaseModel): + Credentials: MQBrokerAccessCredentialsTypeDef + QueueName: str + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class PipeSourceRabbitMQBrokerParametersTypeDef(BaseModel): + Credentials: MQBrokerAccessCredentialsTypeDef + QueueName: str + VirtualHost: Optional[str] = None + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class UpdatePipeSourceActiveMQBrokerParametersTypeDef(BaseModel): + Credentials: MQBrokerAccessCredentialsTypeDef + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class UpdatePipeSourceRabbitMQBrokerParametersTypeDef(BaseModel): + Credentials: MQBrokerAccessCredentialsTypeDef + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class PipeSourceManagedStreamingKafkaParametersTypeDef(BaseModel): + TopicName: str + StartingPosition: Optional[MSKStartPositionType] = None + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + ConsumerGroupID: Optional[str] = None + Credentials: Optional[MSKAccessCredentialsTypeDef] = None + +class UpdatePipeSourceManagedStreamingKafkaParametersTypeDef(BaseModel): + BatchSize: Optional[int] = None + Credentials: Optional[MSKAccessCredentialsTypeDef] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + +class MultiMeasureMappingOutputTypeDef(BaseModel): + MultiMeasureName: str + MultiMeasureAttributeMappings: List[MultiMeasureAttributeMappingTypeDef] + +class MultiMeasureMappingTypeDef(BaseModel): + MultiMeasureName: str + MultiMeasureAttributeMappings: Sequence[MultiMeasureAttributeMappingTypeDef] + +class PipeEnrichmentParametersOutputTypeDef(BaseModel): + InputTemplate: Optional[str] = None + HttpParameters: Optional[PipeEnrichmentHttpParametersOutputTypeDef] = None + +class PipeEnrichmentParametersTypeDef(BaseModel): + InputTemplate: Optional[str] = None + HttpParameters: Optional[PipeEnrichmentHttpParametersTypeDef] = None + +class PipeLogConfigurationParametersTypeDef(BaseModel): + Level: LogLevelType + S3LogDestination: Optional[S3LogDestinationParametersTypeDef] = None + FirehoseLogDestination: Optional[FirehoseLogDestinationParametersTypeDef] = None + CloudwatchLogsLogDestination: Optional[CloudwatchLogsLogDestinationParametersTypeDef] = None + IncludeExecutionData: Optional[Sequence[Literal["ALL"]]] = None + +class PipeLogConfigurationTypeDef(BaseModel): + S3LogDestination: Optional[S3LogDestinationTypeDef] = None + FirehoseLogDestination: Optional[FirehoseLogDestinationTypeDef] = None + CloudwatchLogsLogDestination: Optional[CloudwatchLogsLogDestinationTypeDef] = None + Level: Optional[LogLevelType] = None + IncludeExecutionData: Optional[List[Literal["ALL"]]] = None + +class PipeSourceKinesisStreamParametersTypeDef(BaseModel): + StartingPosition: KinesisStreamStartPositionType + BatchSize: Optional[int] = None + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + OnPartialBatchItemFailure: Optional[Literal["AUTOMATIC_BISECT"]] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + MaximumRecordAgeInSeconds: Optional[int] = None + MaximumRetryAttempts: Optional[int] = None + ParallelizationFactor: Optional[int] = None + StartingPositionTimestamp: Optional[TimestampTypeDef] = None + +class PipeSourceSelfManagedKafkaParametersOutputTypeDef(BaseModel): + TopicName: str + StartingPosition: Optional[SelfManagedKafkaStartPositionType] = None + AdditionalBootstrapServers: Optional[List[str]] = None + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + ConsumerGroupID: Optional[str] = None + Credentials: Optional[SelfManagedKafkaAccessConfigurationCredentialsTypeDef] = None + ServerRootCaCertificate: Optional[str] = None + Vpc: Optional[SelfManagedKafkaAccessConfigurationVpcOutputTypeDef] = None + +class PipeSourceSelfManagedKafkaParametersTypeDef(BaseModel): + TopicName: str + StartingPosition: Optional[SelfManagedKafkaStartPositionType] = None + AdditionalBootstrapServers: Optional[Sequence[str]] = None + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + ConsumerGroupID: Optional[str] = None + Credentials: Optional[SelfManagedKafkaAccessConfigurationCredentialsTypeDef] = None + ServerRootCaCertificate: Optional[str] = None + Vpc: Optional[SelfManagedKafkaAccessConfigurationVpcTypeDef] = None + +class UpdatePipeSourceSelfManagedKafkaParametersTypeDef(BaseModel): + BatchSize: Optional[int] = None + MaximumBatchingWindowInSeconds: Optional[int] = None + Credentials: Optional[SelfManagedKafkaAccessConfigurationCredentialsTypeDef] = None + ServerRootCaCertificate: Optional[str] = None + Vpc: Optional[SelfManagedKafkaAccessConfigurationVpcTypeDef] = None + +class PipeTargetSageMakerPipelineParametersOutputTypeDef(BaseModel): + PipelineParameterList: Optional[List[SageMakerPipelineParameterTypeDef]] = None + +class PipeTargetSageMakerPipelineParametersTypeDef(BaseModel): + PipelineParameterList: Optional[Sequence[SageMakerPipelineParameterTypeDef]] = None + +class PipeTargetBatchJobParametersOutputTypeDef(BaseModel): + JobDefinition: str + JobName: str + ArrayProperties: Optional[BatchArrayPropertiesTypeDef] = None + RetryStrategy: Optional[BatchRetryStrategyTypeDef] = None + ContainerOverrides: Optional[BatchContainerOverridesOutputTypeDef] = None + DependsOn: Optional[List[BatchJobDependencyTypeDef]] = None + Parameters: Optional[Dict[str, str]] = None + +class PipeTargetBatchJobParametersTypeDef(BaseModel): + JobDefinition: str + JobName: str + ArrayProperties: Optional[BatchArrayPropertiesTypeDef] = None + RetryStrategy: Optional[BatchRetryStrategyTypeDef] = None + ContainerOverrides: Optional[BatchContainerOverridesTypeDef] = None + DependsOn: Optional[Sequence[BatchJobDependencyTypeDef]] = None + Parameters: Optional[Mapping[str, str]] = None + +class EcsTaskOverrideOutputTypeDef(BaseModel): + ContainerOverrides: Optional[List[EcsContainerOverrideOutputTypeDef]] = None + Cpu: Optional[str] = None + EphemeralStorage: Optional[EcsEphemeralStorageTypeDef] = None + ExecutionRoleArn: Optional[str] = None + InferenceAcceleratorOverrides: Optional[List[EcsInferenceAcceleratorOverrideTypeDef]] = None + Memory: Optional[str] = None + TaskRoleArn: Optional[str] = None + +class EcsTaskOverrideTypeDef(BaseModel): + ContainerOverrides: Optional[Sequence[EcsContainerOverrideTypeDef]] = None + Cpu: Optional[str] = None + EphemeralStorage: Optional[EcsEphemeralStorageTypeDef] = None + ExecutionRoleArn: Optional[str] = None + InferenceAcceleratorOverrides: Optional[ Sequence[EcsInferenceAcceleratorOverrideTypeDef] ] = None + Memory: Optional[str] = None + TaskRoleArn: Optional[str] = None + +class PipeTargetTimestreamParametersOutputTypeDef(BaseModel): + TimeValue: str + VersionValue: str + DimensionMappings: List[DimensionMappingTypeDef] + EpochTimeUnit: Optional[EpochTimeUnitType] = None + TimeFieldType: Optional[TimeFieldTypeType] = None + TimestampFormat: Optional[str] = None + SingleMeasureMappings: Optional[List[SingleMeasureMappingTypeDef]] = None + MultiMeasureMappings: Optional[List[MultiMeasureMappingOutputTypeDef]] = None + +class PipeTargetTimestreamParametersTypeDef(BaseModel): + TimeValue: str + VersionValue: str + DimensionMappings: Sequence[DimensionMappingTypeDef] + EpochTimeUnit: Optional[EpochTimeUnitType] = None + TimeFieldType: Optional[TimeFieldTypeType] = None + TimestampFormat: Optional[str] = None + SingleMeasureMappings: Optional[Sequence[SingleMeasureMappingTypeDef]] = None + MultiMeasureMappings: Optional[Sequence[MultiMeasureMappingTypeDef]] = None + +class PipeSourceParametersOutputTypeDef(BaseModel): + FilterCriteria: Optional[FilterCriteriaOutputTypeDef] = None + KinesisStreamParameters: Optional[PipeSourceKinesisStreamParametersOutputTypeDef] = None + DynamoDBStreamParameters: Optional[PipeSourceDynamoDBStreamParametersTypeDef] = None + SqsQueueParameters: Optional[PipeSourceSqsQueueParametersTypeDef] = None + ActiveMQBrokerParameters: Optional[PipeSourceActiveMQBrokerParametersTypeDef] = None + RabbitMQBrokerParameters: Optional[PipeSourceRabbitMQBrokerParametersTypeDef] = None + ManagedStreamingKafkaParameters: Optional[ PipeSourceManagedStreamingKafkaParametersTypeDef ] = None + SelfManagedKafkaParameters: Optional[ PipeSourceSelfManagedKafkaParametersOutputTypeDef ] = None + +class PipeSourceParametersTypeDef(BaseModel): + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + KinesisStreamParameters: Optional[PipeSourceKinesisStreamParametersTypeDef] = None + DynamoDBStreamParameters: Optional[PipeSourceDynamoDBStreamParametersTypeDef] = None + SqsQueueParameters: Optional[PipeSourceSqsQueueParametersTypeDef] = None + ActiveMQBrokerParameters: Optional[PipeSourceActiveMQBrokerParametersTypeDef] = None + RabbitMQBrokerParameters: Optional[PipeSourceRabbitMQBrokerParametersTypeDef] = None + ManagedStreamingKafkaParameters: Optional[ PipeSourceManagedStreamingKafkaParametersTypeDef ] = None + SelfManagedKafkaParameters: Optional[PipeSourceSelfManagedKafkaParametersTypeDef] = None + +class UpdatePipeSourceParametersTypeDef(BaseModel): + FilterCriteria: Optional[FilterCriteriaTypeDef] = None + KinesisStreamParameters: Optional[UpdatePipeSourceKinesisStreamParametersTypeDef] = None + DynamoDBStreamParameters: Optional[UpdatePipeSourceDynamoDBStreamParametersTypeDef] = None + SqsQueueParameters: Optional[UpdatePipeSourceSqsQueueParametersTypeDef] = None + ActiveMQBrokerParameters: Optional[UpdatePipeSourceActiveMQBrokerParametersTypeDef] = None + RabbitMQBrokerParameters: Optional[UpdatePipeSourceRabbitMQBrokerParametersTypeDef] = None + ManagedStreamingKafkaParameters: Optional[ UpdatePipeSourceManagedStreamingKafkaParametersTypeDef ] = None + SelfManagedKafkaParameters: Optional[ UpdatePipeSourceSelfManagedKafkaParametersTypeDef ] = None + +class PipeTargetEcsTaskParametersOutputTypeDef(BaseModel): + TaskDefinitionArn: str + TaskCount: Optional[int] = None + LaunchType: Optional[LaunchTypeType] = None + NetworkConfiguration: Optional[NetworkConfigurationOutputTypeDef] = None + PlatformVersion: Optional[str] = None + Group: Optional[str] = None + CapacityProviderStrategy: Optional[List[CapacityProviderStrategyItemTypeDef]] = None + EnableECSManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + PlacementConstraints: Optional[List[PlacementConstraintTypeDef]] = None + PlacementStrategy: Optional[List[PlacementStrategyTypeDef]] = None + PropagateTags: Optional[Literal["TASK_DEFINITION"]] = None + ReferenceId: Optional[str] = None + Overrides: Optional[EcsTaskOverrideOutputTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class PipeTargetEcsTaskParametersTypeDef(BaseModel): + TaskDefinitionArn: str + TaskCount: Optional[int] = None + LaunchType: Optional[LaunchTypeType] = None + NetworkConfiguration: Optional[NetworkConfigurationTypeDef] = None + PlatformVersion: Optional[str] = None + Group: Optional[str] = None + CapacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + EnableECSManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + PlacementConstraints: Optional[Sequence[PlacementConstraintTypeDef]] = None + PlacementStrategy: Optional[Sequence[PlacementStrategyTypeDef]] = None + PropagateTags: Optional[Literal["TASK_DEFINITION"]] = None + ReferenceId: Optional[str] = None + Overrides: Optional[EcsTaskOverrideTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class PipeTargetParametersOutputTypeDef(BaseModel): + InputTemplate: Optional[str] = None + LambdaFunctionParameters: Optional[PipeTargetLambdaFunctionParametersTypeDef] = None + StepFunctionStateMachineParameters: Optional[PipeTargetStateMachineParametersTypeDef] = None + KinesisStreamParameters: Optional[PipeTargetKinesisStreamParametersTypeDef] = None + EcsTaskParameters: Optional[PipeTargetEcsTaskParametersOutputTypeDef] = None + BatchJobParameters: Optional[PipeTargetBatchJobParametersOutputTypeDef] = None + SqsQueueParameters: Optional[PipeTargetSqsQueueParametersTypeDef] = None + HttpParameters: Optional[PipeTargetHttpParametersOutputTypeDef] = None + RedshiftDataParameters: Optional[PipeTargetRedshiftDataParametersOutputTypeDef] = None + SageMakerPipelineParameters: Optional[ PipeTargetSageMakerPipelineParametersOutputTypeDef ] = None + EventBridgeEventBusParameters: Optional[ PipeTargetEventBridgeEventBusParametersOutputTypeDef ] = None + CloudWatchLogsParameters: Optional[PipeTargetCloudWatchLogsParametersTypeDef] = None + TimestreamParameters: Optional[PipeTargetTimestreamParametersOutputTypeDef] = None + +class PipeTargetParametersTypeDef(BaseModel): + InputTemplate: Optional[str] = None + LambdaFunctionParameters: Optional[PipeTargetLambdaFunctionParametersTypeDef] = None + StepFunctionStateMachineParameters: Optional[PipeTargetStateMachineParametersTypeDef] = None + KinesisStreamParameters: Optional[PipeTargetKinesisStreamParametersTypeDef] = None + EcsTaskParameters: Optional[PipeTargetEcsTaskParametersTypeDef] = None + BatchJobParameters: Optional[PipeTargetBatchJobParametersTypeDef] = None + SqsQueueParameters: Optional[PipeTargetSqsQueueParametersTypeDef] = None + HttpParameters: Optional[PipeTargetHttpParametersTypeDef] = None + RedshiftDataParameters: Optional[PipeTargetRedshiftDataParametersTypeDef] = None + SageMakerPipelineParameters: Optional[PipeTargetSageMakerPipelineParametersTypeDef] = None + EventBridgeEventBusParameters: Optional[ PipeTargetEventBridgeEventBusParametersTypeDef ] = None + CloudWatchLogsParameters: Optional[PipeTargetCloudWatchLogsParametersTypeDef] = None + TimestreamParameters: Optional[PipeTargetTimestreamParametersTypeDef] = None + +class DescribePipeResponseTypeDef(BaseModel): + Arn: str + Name: str + Description: str + DesiredState: RequestedPipeStateDescribeResponseType + CurrentState: PipeStateType + StateReason: str + Source: str + SourceParameters: PipeSourceParametersOutputTypeDef + Enrichment: str + EnrichmentParameters: PipeEnrichmentParametersOutputTypeDef + Target: str + TargetParameters: PipeTargetParametersOutputTypeDef + RoleArn: str + Tags: Dict[str, str] + CreationTime: datetime + LastModifiedTime: datetime + LogConfiguration: PipeLogConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePipeRequestRequestTypeDef(BaseModel): + Name: str + Source: str + Target: str + RoleArn: str + Description: Optional[str] = None + DesiredState: Optional[RequestedPipeStateType] = None + SourceParameters: Optional[PipeSourceParametersTypeDef] = None + Enrichment: Optional[str] = None + EnrichmentParameters: Optional[PipeEnrichmentParametersTypeDef] = None + TargetParameters: Optional[PipeTargetParametersTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + LogConfiguration: Optional[PipeLogConfigurationParametersTypeDef] = None + +class UpdatePipeRequestRequestTypeDef(BaseModel): + Name: str + RoleArn: str + Description: Optional[str] = None + DesiredState: Optional[RequestedPipeStateType] = None + SourceParameters: Optional[UpdatePipeSourceParametersTypeDef] = None + Enrichment: Optional[str] = None + EnrichmentParameters: Optional[PipeEnrichmentParametersTypeDef] = None + Target: Optional[str] = None + TargetParameters: Optional[PipeTargetParametersTypeDef] = None + LogConfiguration: Optional[PipeLogConfigurationParametersTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/pipes_constants.py b/aws_resource_validator/pydantic_models/pipes_constants.py new file mode 100644 index 00000000..2ff2fb4e --- /dev/null +++ b/aws_resource_validator/pydantic_models/pipes_constants.py @@ -0,0 +1,470 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssignPublicIpType = Literal["DISABLED", "ENABLED"] +BatchJobDependencyTypeType = Literal["N_TO_N", "SEQUENTIAL"] +BatchResourceRequirementTypeType = Literal["GPU", "MEMORY", "VCPU"] +DimensionValueTypeType = Literal["VARCHAR"] +DynamoDBStreamStartPositionType = Literal["LATEST", "TRIM_HORIZON"] +EcsEnvironmentFileTypeType = Literal["s3"] +EcsResourceRequirementTypeType = Literal["GPU", "InferenceAccelerator"] +EpochTimeUnitType = Literal["MICROSECONDS", "MILLISECONDS", "NANOSECONDS", "SECONDS"] +IncludeExecutionDataOptionType = Literal["ALL"] +KinesisStreamStartPositionType = Literal["AT_TIMESTAMP", "LATEST", "TRIM_HORIZON"] +LaunchTypeType = Literal["EC2", "EXTERNAL", "FARGATE"] +ListPipesPaginatorName = Literal["list_pipes"] +LogLevelType = Literal["ERROR", "INFO", "OFF", "TRACE"] +MSKStartPositionType = Literal["LATEST", "TRIM_HORIZON"] +MeasureValueTypeType = Literal["BIGINT", "BOOLEAN", "DOUBLE", "TIMESTAMP", "VARCHAR"] +OnPartialBatchItemFailureStreamsType = Literal["AUTOMATIC_BISECT"] +PipeStateType = Literal["CREATE_FAILED", + "CREATE_ROLLBACK_FAILED", + "CREATING", + "DELETE_FAILED", + "DELETE_ROLLBACK_FAILED", + "DELETING", + "RUNNING", + "STARTING", + "START_FAILED", + "STOPPED", + "STOPPING", + "STOP_FAILED", + "UPDATE_FAILED", + "UPDATE_ROLLBACK_FAILED", + "UPDATING",] +PipeTargetInvocationTypeType = Literal["FIRE_AND_FORGET", "REQUEST_RESPONSE"] +PlacementConstraintTypeType = Literal["distinctInstance", "memberOf"] +PlacementStrategyTypeType = Literal["binpack", "random", "spread"] +PropagateTagsType = Literal["TASK_DEFINITION"] +RequestedPipeStateDescribeResponseType = Literal["DELETED", "RUNNING", "STOPPED"] +RequestedPipeStateType = Literal["RUNNING", "STOPPED"] +S3OutputFormatType = Literal["json", "plain", "w3c"] +SelfManagedKafkaStartPositionType = Literal["LATEST", "TRIM_HORIZON"] +TimeFieldTypeType = Literal["EPOCH", "TIMESTAMP_FORMAT"] +EventBridgePipesServiceName = Literal["pipes"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_pipes"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +PipeEnrichmentParametersUnionTypeDef = Union[ 'PipeEnrichmentParametersTypeDef', 'PipeEnrichmentParametersOutputTypeDef' ] +PipeSourceParametersUnionTypeDef = Union[ 'PipeSourceParametersTypeDef', 'PipeSourceParametersOutputTypeDef' ] +PipeTargetParametersUnionTypeDef = Union[ 'PipeTargetParametersTypeDef', 'PipeTargetParametersOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/polly_classes.py b/aws_resource_validator/pydantic_models/polly_classes.py new file mode 100644 index 00000000..c34b869a --- /dev/null +++ b/aws_resource_validator/pydantic_models/polly_classes.py @@ -0,0 +1,166 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.polly_constants import * + +class DeleteLexiconInputRequestTypeDef(BaseModel): + Name: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeVoicesInputRequestTypeDef(BaseModel): + Engine: Optional[EngineType] = None + LanguageCode: Optional[LanguageCodeType] = None + IncludeAdditionalLanguageCodes: Optional[bool] = None + NextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class VoiceTypeDef(BaseModel): + Gender: Optional[GenderType] = None + Id: Optional[VoiceIdType] = None + LanguageCode: Optional[LanguageCodeType] = None + LanguageName: Optional[str] = None + Name: Optional[str] = None + AdditionalLanguageCodes: Optional[List[LanguageCodeType]] = None + SupportedEngines: Optional[List[EngineType]] = None + +class GetLexiconInputRequestTypeDef(BaseModel): + Name: str + +class LexiconAttributesTypeDef(BaseModel): + Alphabet: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LastModified: Optional[datetime] = None + LexiconArn: Optional[str] = None + LexemesCount: Optional[int] = None + Size: Optional[int] = None + +class LexiconTypeDef(BaseModel): + Content: Optional[str] = None + Name: Optional[str] = None + +class GetSpeechSynthesisTaskInputRequestTypeDef(BaseModel): + TaskId: str + +class SynthesisTaskTypeDef(BaseModel): + Engine: Optional[EngineType] = None + TaskId: Optional[str] = None + TaskStatus: Optional[TaskStatusType] = None + TaskStatusReason: Optional[str] = None + OutputUri: Optional[str] = None + CreationTime: Optional[datetime] = None + RequestCharacters: Optional[int] = None + SnsTopicArn: Optional[str] = None + LexiconNames: Optional[List[str]] = None + OutputFormat: Optional[OutputFormatType] = None + SampleRate: Optional[str] = None + SpeechMarkTypes: Optional[List[SpeechMarkTypeType]] = None + TextType: Optional[TextTypeType] = None + VoiceId: Optional[VoiceIdType] = None + LanguageCode: Optional[LanguageCodeType] = None + +class ListLexiconsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListSpeechSynthesisTasksInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Status: Optional[TaskStatusType] = None + +class PutLexiconInputRequestTypeDef(BaseModel): + Name: str + Content: str + +class StartSpeechSynthesisTaskInputRequestTypeDef(BaseModel): + OutputFormat: OutputFormatType + OutputS3BucketName: str + Text: str + VoiceId: VoiceIdType + Engine: Optional[EngineType] = None + LanguageCode: Optional[LanguageCodeType] = None + LexiconNames: Optional[Sequence[str]] = None + OutputS3KeyPrefix: Optional[str] = None + SampleRate: Optional[str] = None + SnsTopicArn: Optional[str] = None + SpeechMarkTypes: Optional[Sequence[SpeechMarkTypeType]] = None + TextType: Optional[TextTypeType] = None + +class SynthesizeSpeechInputRequestTypeDef(BaseModel): + OutputFormat: OutputFormatType + Text: str + VoiceId: VoiceIdType + Engine: Optional[EngineType] = None + LanguageCode: Optional[LanguageCodeType] = None + LexiconNames: Optional[Sequence[str]] = None + SampleRate: Optional[str] = None + SpeechMarkTypes: Optional[Sequence[SpeechMarkTypeType]] = None + TextType: Optional[TextTypeType] = None + +class DescribeVoicesInputDescribeVoicesPaginateTypeDef(BaseModel): + Engine: Optional[EngineType] = None + LanguageCode: Optional[LanguageCodeType] = None + IncludeAdditionalLanguageCodes: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLexiconsInputListLexiconsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpeechSynthesisTasksInputListSpeechSynthesisTasksPaginateTypeDef(BaseModel): + Status: Optional[TaskStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SynthesizeSpeechOutputTypeDef(BaseModel): + AudioStream: StreamingBody + ContentType: str + RequestCharacters: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVoicesOutputTypeDef(BaseModel): + Voices: List[VoiceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LexiconDescriptionTypeDef(BaseModel): + Name: Optional[str] = None + Attributes: Optional[LexiconAttributesTypeDef] = None + +class GetLexiconOutputTypeDef(BaseModel): + Lexicon: LexiconTypeDef + LexiconAttributes: LexiconAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSpeechSynthesisTaskOutputTypeDef(BaseModel): + SynthesisTask: SynthesisTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSpeechSynthesisTasksOutputTypeDef(BaseModel): + SynthesisTasks: List[SynthesisTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartSpeechSynthesisTaskOutputTypeDef(BaseModel): + SynthesisTask: SynthesisTaskTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLexiconsOutputTypeDef(BaseModel): + Lexicons: List[LexiconDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/polly_constants.py b/aws_resource_validator/pydantic_models/polly_constants.py new file mode 100644 index 00000000..acae43c7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/polly_constants.py @@ -0,0 +1,564 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeVoicesPaginatorName = Literal["describe_voices"] +EngineType = Literal["generative", "long-form", "neural", "standard"] +GenderType = Literal["Female", "Male"] +LanguageCodeType = Literal["ar-AE", + "arb", + "ca-ES", + "cmn-CN", + "cy-GB", + "da-DK", + "de-AT", + "de-DE", + "en-AU", + "en-GB", + "en-GB-WLS", + "en-IE", + "en-IN", + "en-NZ", + "en-US", + "en-ZA", + "es-ES", + "es-MX", + "es-US", + "fi-FI", + "fr-BE", + "fr-CA", + "fr-FR", + "hi-IN", + "is-IS", + "it-IT", + "ja-JP", + "ko-KR", + "nb-NO", + "nl-BE", + "nl-NL", + "pl-PL", + "pt-BR", + "pt-PT", + "ro-RO", + "ru-RU", + "sv-SE", + "tr-TR", + "yue-CN",] +ListLexiconsPaginatorName = Literal["list_lexicons"] +ListSpeechSynthesisTasksPaginatorName = Literal["list_speech_synthesis_tasks"] +OutputFormatType = Literal["json", "mp3", "ogg_vorbis", "pcm"] +SpeechMarkTypeType = Literal["sentence", "ssml", "viseme", "word"] +TaskStatusType = Literal["completed", "failed", "inProgress", "scheduled"] +TextTypeType = Literal["ssml", "text"] +VoiceIdType = Literal["Aditi", + "Adriano", + "Amy", + "Andres", + "Aria", + "Arlet", + "Arthur", + "Astrid", + "Ayanda", + "Bianca", + "Brian", + "Burcu", + "Camila", + "Carla", + "Carmen", + "Celine", + "Chantal", + "Conchita", + "Cristiano", + "Daniel", + "Danielle", + "Dora", + "Elin", + "Emma", + "Enrique", + "Ewa", + "Filiz", + "Gabrielle", + "Geraint", + "Giorgio", + "Gregory", + "Gwyneth", + "Hala", + "Hannah", + "Hans", + "Hiujin", + "Ida", + "Ines", + "Isabelle", + "Ivy", + "Jacek", + "Jan", + "Joanna", + "Joey", + "Justin", + "Kajal", + "Karl", + "Kazuha", + "Kendra", + "Kevin", + "Kimberly", + "Laura", + "Lea", + "Liam", + "Lisa", + "Liv", + "Lotte", + "Lucia", + "Lupe", + "Mads", + "Maja", + "Marlene", + "Mathieu", + "Matthew", + "Maxim", + "Mia", + "Miguel", + "Mizuki", + "Naja", + "Niamh", + "Nicole", + "Ola", + "Olivia", + "Pedro", + "Penelope", + "Raveena", + "Remi", + "Ricardo", + "Ruben", + "Russell", + "Ruth", + "Salli", + "Seoyeon", + "Sergio", + "Sofie", + "Stephen", + "Suvi", + "Takumi", + "Tatyana", + "Thiago", + "Tomoko", + "Vicki", + "Vitoria", + "Zayd", + "Zeina", + "Zhiyu",] +PollyServiceName = Literal["polly"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_voices", "list_lexicons", "list_speech_synthesis_tasks"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/pricing_classes.py b/aws_resource_validator/pydantic_models/pricing_classes.py new file mode 100644 index 00000000..7e2ade9c --- /dev/null +++ b/aws_resource_validator/pydantic_models/pricing_classes.py @@ -0,0 +1,123 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.pricing_constants import * + +class AttributeValueTypeDef(BaseModel): + Value: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeServicesRequestRequestTypeDef(BaseModel): + ServiceCode: Optional[str] = None + FormatVersion: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ServiceTypeDef(BaseModel): + ServiceCode: str + AttributeNames: Optional[List[str]] = None + +class FilterTypeDef(BaseModel): + Type: Literal["TERM_MATCH"] + Field: str + Value: str + +class GetAttributeValuesRequestRequestTypeDef(BaseModel): + ServiceCode: str + AttributeName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetPriceListFileUrlRequestRequestTypeDef(BaseModel): + PriceListArn: str + FileFormat: str + +class PriceListTypeDef(BaseModel): + PriceListArn: Optional[str] = None + RegionCode: Optional[str] = None + CurrencyCode: Optional[str] = None + FileFormats: Optional[List[str]] = None + +class DescribeServicesRequestDescribeServicesPaginateTypeDef(BaseModel): + ServiceCode: Optional[str] = None + FormatVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAttributeValuesRequestGetAttributeValuesPaginateTypeDef(BaseModel): + ServiceCode: str + AttributeName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAttributeValuesResponseTypeDef(BaseModel): + AttributeValues: List[AttributeValueTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPriceListFileUrlResponseTypeDef(BaseModel): + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProductsResponseTypeDef(BaseModel): + FormatVersion: str + PriceList: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServicesResponseTypeDef(BaseModel): + Services: List[ServiceTypeDef] + FormatVersion: str + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProductsRequestGetProductsPaginateTypeDef(BaseModel): + ServiceCode: str + Filters: Optional[Sequence[FilterTypeDef]] = None + FormatVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetProductsRequestRequestTypeDef(BaseModel): + ServiceCode: str + Filters: Optional[Sequence[FilterTypeDef]] = None + FormatVersion: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPriceListsRequestListPriceListsPaginateTypeDef(BaseModel): + ServiceCode: str + EffectiveDate: TimestampTypeDef + CurrencyCode: str + RegionCode: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPriceListsRequestRequestTypeDef(BaseModel): + ServiceCode: str + EffectiveDate: TimestampTypeDef + CurrencyCode: str + RegionCode: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPriceListsResponseTypeDef(BaseModel): + PriceLists: List[PriceListTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/pricing_constants.py b/aws_resource_validator/pydantic_models/pricing_constants.py new file mode 100644 index 00000000..8c83b425 --- /dev/null +++ b/aws_resource_validator/pydantic_models/pricing_constants.py @@ -0,0 +1,401 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeServicesPaginatorName = Literal["describe_services"] +FilterTypeType = Literal["TERM_MATCH"] +GetAttributeValuesPaginatorName = Literal["get_attribute_values"] +GetProductsPaginatorName = Literal["get_products"] +ListPriceListsPaginatorName = Literal["list_price_lists"] +PricingServiceName = Literal["pricing"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_services", "get_attribute_values", "get_products", "list_price_lists"] +RegionName = Literal["ap-south-1", "eu-central-1", "us-east-1"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/privatenetworks_classes.py b/aws_resource_validator/pydantic_models/privatenetworks_classes.py new file mode 100644 index 00000000..60be9500 --- /dev/null +++ b/aws_resource_validator/pydantic_models/privatenetworks_classes.py @@ -0,0 +1,393 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.privatenetworks_constants import * + +class AcknowledgeOrderReceiptRequestRequestTypeDef(BaseModel): + orderArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ActivateDeviceIdentifierRequestRequestTypeDef(BaseModel): + deviceIdentifierArn: str + clientToken: Optional[str] = None + +class DeviceIdentifierTypeDef(BaseModel): + createdAt: Optional[datetime] = None + deviceIdentifierArn: Optional[str] = None + iccid: Optional[str] = None + imsi: Optional[str] = None + networkArn: Optional[str] = None + orderArn: Optional[str] = None + status: Optional[DeviceIdentifierStatusType] = None + trafficGroupArn: Optional[str] = None + vendor: Optional[str] = None + +class AddressTypeDef(BaseModel): + city: str + country: str + name: str + postalCode: str + stateOrProvince: str + street1: str + company: Optional[str] = None + emailAddress: Optional[str] = None + phoneNumber: Optional[str] = None + street2: Optional[str] = None + street3: Optional[str] = None + +class CommitmentConfigurationTypeDef(BaseModel): + automaticRenewal: bool + commitmentLength: CommitmentLengthType + +class PositionTypeDef(BaseModel): + elevation: Optional[float] = None + elevationReference: Optional[ElevationReferenceType] = None + elevationUnit: Optional[Literal["FEET"]] = None + latitude: Optional[float] = None + longitude: Optional[float] = None + +class CreateNetworkRequestRequestTypeDef(BaseModel): + networkName: str + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class NetworkTypeDef(BaseModel): + networkArn: str + networkName: str + status: NetworkStatusType + createdAt: Optional[datetime] = None + description: Optional[str] = None + statusReason: Optional[str] = None + +class DeactivateDeviceIdentifierRequestRequestTypeDef(BaseModel): + deviceIdentifierArn: str + clientToken: Optional[str] = None + +class DeleteNetworkRequestRequestTypeDef(BaseModel): + networkArn: str + clientToken: Optional[str] = None + +class DeleteNetworkSiteRequestRequestTypeDef(BaseModel): + networkSiteArn: str + clientToken: Optional[str] = None + +class GetDeviceIdentifierRequestRequestTypeDef(BaseModel): + deviceIdentifierArn: str + +class GetNetworkRequestRequestTypeDef(BaseModel): + networkArn: str + +class GetNetworkResourceRequestRequestTypeDef(BaseModel): + networkResourceArn: str + +class GetNetworkSiteRequestRequestTypeDef(BaseModel): + networkSiteArn: str + +class GetOrderRequestRequestTypeDef(BaseModel): + orderArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDeviceIdentifiersRequestRequestTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[DeviceIdentifierFilterKeysType, Sequence[str]]] = None + maxResults: Optional[int] = None + startToken: Optional[str] = None + +class ListNetworkResourcesRequestRequestTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[NetworkResourceFilterKeysType, Sequence[str]]] = None + maxResults: Optional[int] = None + startToken: Optional[str] = None + +class ListNetworkSitesRequestRequestTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[Literal["STATUS"], Sequence[str]]] = None + maxResults: Optional[int] = None + startToken: Optional[str] = None + +class ListNetworksRequestRequestTypeDef(BaseModel): + filters: Optional[Mapping[Literal["STATUS"], Sequence[str]]] = None + maxResults: Optional[int] = None + startToken: Optional[str] = None + +class ListOrdersRequestRequestTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[OrderFilterKeysType, Sequence[str]]] = None + maxResults: Optional[int] = None + startToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class NameValuePairTypeDef(BaseModel): + name: str + value: Optional[str] = None + +class TrackingInformationTypeDef(BaseModel): + trackingNumber: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateNetworkSiteRequestRequestTypeDef(BaseModel): + networkSiteArn: str + clientToken: Optional[str] = None + description: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PingResponseTypeDef(BaseModel): + status: str + ResponseMetadata: ResponseMetadataTypeDef + +class ActivateDeviceIdentifierResponseTypeDef(BaseModel): + deviceIdentifier: DeviceIdentifierTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeactivateDeviceIdentifierResponseTypeDef(BaseModel): + deviceIdentifier: DeviceIdentifierTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeviceIdentifierResponseTypeDef(BaseModel): + deviceIdentifier: DeviceIdentifierTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeviceIdentifiersResponseTypeDef(BaseModel): + deviceIdentifiers: List[DeviceIdentifierTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReturnInformationTypeDef(BaseModel): + replacementOrderArn: Optional[str] = None + returnReason: Optional[str] = None + shippingAddress: Optional[AddressTypeDef] = None + shippingLabel: Optional[str] = None + +class ActivateNetworkSiteRequestRequestTypeDef(BaseModel): + networkSiteArn: str + shippingAddress: AddressTypeDef + clientToken: Optional[str] = None + commitmentConfiguration: Optional[CommitmentConfigurationTypeDef] = None + +class CommitmentInformationTypeDef(BaseModel): + commitmentConfiguration: CommitmentConfigurationTypeDef + expiresOn: Optional[datetime] = None + startAt: Optional[datetime] = None + +class OrderedResourceDefinitionTypeDef(BaseModel): + count: int + type: NetworkResourceDefinitionTypeType + commitmentConfiguration: Optional[CommitmentConfigurationTypeDef] = None + +class StartNetworkResourceUpdateRequestRequestTypeDef(BaseModel): + networkResourceArn: str + updateType: UpdateTypeType + commitmentConfiguration: Optional[CommitmentConfigurationTypeDef] = None + returnReason: Optional[str] = None + shippingAddress: Optional[AddressTypeDef] = None + +class ConfigureAccessPointRequestRequestTypeDef(BaseModel): + accessPointArn: str + cpiSecretKey: Optional[str] = None + cpiUserId: Optional[str] = None + cpiUserPassword: Optional[str] = None + cpiUsername: Optional[str] = None + position: Optional[PositionTypeDef] = None + +class CreateNetworkResponseTypeDef(BaseModel): + network: NetworkTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkResponseTypeDef(BaseModel): + network: NetworkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkResponseTypeDef(BaseModel): + network: NetworkTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListNetworksResponseTypeDef(BaseModel): + networks: List[NetworkTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeviceIdentifiersRequestListDeviceIdentifiersPaginateTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[DeviceIdentifierFilterKeysType, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNetworkResourcesRequestListNetworkResourcesPaginateTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[NetworkResourceFilterKeysType, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNetworkSitesRequestListNetworkSitesPaginateTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[Literal["STATUS"], Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNetworksRequestListNetworksPaginateTypeDef(BaseModel): + filters: Optional[Mapping[Literal["STATUS"], Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrdersRequestListOrdersPaginateTypeDef(BaseModel): + networkArn: str + filters: Optional[Mapping[OrderFilterKeysType, Sequence[str]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class NetworkResourceDefinitionTypeDef(BaseModel): + count: int + type: NetworkResourceDefinitionTypeType + options: Optional[List[NameValuePairTypeDef]] = None + +class NetworkResourceTypeDef(BaseModel): + attributes: Optional[List[NameValuePairTypeDef]] = None + commitmentInformation: Optional[CommitmentInformationTypeDef] = None + createdAt: Optional[datetime] = None + description: Optional[str] = None + health: Optional[HealthStatusType] = None + model: Optional[str] = None + networkArn: Optional[str] = None + networkResourceArn: Optional[str] = None + networkSiteArn: Optional[str] = None + orderArn: Optional[str] = None + position: Optional[PositionTypeDef] = None + returnInformation: Optional[ReturnInformationTypeDef] = None + serialNumber: Optional[str] = None + status: Optional[NetworkResourceStatusType] = None + statusReason: Optional[str] = None + type: Optional[Literal["RADIO_UNIT"]] = None + vendor: Optional[str] = None + +class OrderTypeDef(BaseModel): + acknowledgmentStatus: Optional[AcknowledgmentStatusType] = None + createdAt: Optional[datetime] = None + networkArn: Optional[str] = None + networkSiteArn: Optional[str] = None + orderArn: Optional[str] = None + orderedResources: Optional[List[OrderedResourceDefinitionTypeDef]] = None + shippingAddress: Optional[AddressTypeDef] = None + trackingInformation: Optional[List[TrackingInformationTypeDef]] = None + +class SitePlanTypeDef(BaseModel): + options: Optional[List[NameValuePairTypeDef]] = None + resourceDefinitions: Optional[List[NetworkResourceDefinitionTypeDef]] = None + +class ConfigureAccessPointResponseTypeDef(BaseModel): + accessPoint: NetworkResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkResourceResponseTypeDef(BaseModel): + networkResource: NetworkResourceTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListNetworkResourcesResponseTypeDef(BaseModel): + networkResources: List[NetworkResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartNetworkResourceUpdateResponseTypeDef(BaseModel): + networkResource: NetworkResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AcknowledgeOrderReceiptResponseTypeDef(BaseModel): + order: OrderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOrderResponseTypeDef(BaseModel): + order: OrderTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrdersResponseTypeDef(BaseModel): + nextToken: str + orders: List[OrderTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkSiteRequestRequestTypeDef(BaseModel): + networkArn: str + networkSiteName: str + availabilityZone: Optional[str] = None + availabilityZoneId: Optional[str] = None + clientToken: Optional[str] = None + description: Optional[str] = None + pendingPlan: Optional[SitePlanTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class NetworkSiteTypeDef(BaseModel): + networkArn: str + networkSiteArn: str + networkSiteName: str + status: NetworkSiteStatusType + availabilityZone: Optional[str] = None + availabilityZoneId: Optional[str] = None + createdAt: Optional[datetime] = None + currentPlan: Optional[SitePlanTypeDef] = None + description: Optional[str] = None + pendingPlan: Optional[SitePlanTypeDef] = None + statusReason: Optional[str] = None + +class UpdateNetworkSitePlanRequestRequestTypeDef(BaseModel): + networkSiteArn: str + pendingPlan: SitePlanTypeDef + clientToken: Optional[str] = None + +class ActivateNetworkSiteResponseTypeDef(BaseModel): + networkSite: NetworkSiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkSiteResponseTypeDef(BaseModel): + networkSite: NetworkSiteTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNetworkSiteResponseTypeDef(BaseModel): + networkSite: NetworkSiteTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkSiteResponseTypeDef(BaseModel): + networkSite: NetworkSiteTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListNetworkSitesResponseTypeDef(BaseModel): + networkSites: List[NetworkSiteTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNetworkSiteResponseTypeDef(BaseModel): + networkSite: NetworkSiteTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/privatenetworks_constants.py b/aws_resource_validator/pydantic_models/privatenetworks_constants.py new file mode 100644 index 00000000..766e52b3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/privatenetworks_constants.py @@ -0,0 +1,423 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcknowledgmentStatusType = Literal["ACKNOWLEDGED", "ACKNOWLEDGING", "UNACKNOWLEDGED"] +CommitmentLengthType = Literal["ONE_YEAR", "SIXTY_DAYS", "THREE_YEARS"] +DeviceIdentifierFilterKeysType = Literal["ORDER", "STATUS", "TRAFFIC_GROUP"] +DeviceIdentifierStatusType = Literal["ACTIVE", "INACTIVE"] +ElevationReferenceType = Literal["AGL", "AMSL"] +ElevationUnitType = Literal["FEET"] +HealthStatusType = Literal["HEALTHY", "INITIAL", "UNHEALTHY"] +ListDeviceIdentifiersPaginatorName = Literal["list_device_identifiers"] +ListNetworkResourcesPaginatorName = Literal["list_network_resources"] +ListNetworkSitesPaginatorName = Literal["list_network_sites"] +ListNetworksPaginatorName = Literal["list_networks"] +ListOrdersPaginatorName = Literal["list_orders"] +NetworkFilterKeysType = Literal["STATUS"] +NetworkResourceDefinitionTypeType = Literal["DEVICE_IDENTIFIER", "RADIO_UNIT"] +NetworkResourceFilterKeysType = Literal["ORDER", "STATUS"] +NetworkResourceStatusType = Literal["AVAILABLE", + "CREATING_SHIPPING_LABEL", + "DELETED", + "DELETING", + "PENDING", + "PENDING_RETURN", + "PROVISIONED", + "PROVISIONING", + "SHIPPED",] +NetworkResourceTypeType = Literal["RADIO_UNIT"] +NetworkSiteFilterKeysType = Literal["STATUS"] +NetworkSiteStatusType = Literal["AVAILABLE", "CREATED", "DELETED", "DEPROVISIONING", "PROVISIONING"] +NetworkStatusType = Literal["AVAILABLE", "CREATED", "DELETED", "DEPROVISIONING", "PROVISIONING"] +OrderFilterKeysType = Literal["NETWORK_SITE", "STATUS"] +UpdateTypeType = Literal["COMMITMENT", "REPLACE", "RETURN"] +Private5GServiceName = Literal["privatenetworks"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_device_identifiers", + "list_network_resources", + "list_network_sites", + "list_networks", + "list_orders",] diff --git a/aws_resource_validator/pydantic_models/proton_classes.py b/aws_resource_validator/pydantic_models/proton_classes.py new file mode 100644 index 00000000..cff24f83 --- /dev/null +++ b/aws_resource_validator/pydantic_models/proton_classes.py @@ -0,0 +1,1498 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.proton_constants import * + +class AcceptEnvironmentAccountConnectionInputRequestTypeDef(BaseModel): + id: str + +class EnvironmentAccountConnectionTypeDef(BaseModel): + arn: str + environmentAccountId: str + environmentName: str + id: str + lastModifiedAt: datetime + managementAccountId: str + requestedAt: datetime + roleArn: str + status: EnvironmentAccountConnectionStatusType + codebuildRoleArn: Optional[str] = None + componentRoleArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class RepositoryBranchTypeDef(BaseModel): + arn: str + branch: str + name: str + provider: RepositoryProviderType + +class CancelComponentDeploymentInputRequestTypeDef(BaseModel): + componentName: str + +class ComponentTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + environmentName: str + lastModifiedAt: datetime + name: str + deploymentStatusMessage: Optional[str] = None + description: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastClientRequestToken: Optional[str] = None + lastDeploymentAttemptedAt: Optional[datetime] = None + lastDeploymentSucceededAt: Optional[datetime] = None + lastSucceededDeploymentId: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + serviceSpec: Optional[str] = None + +class CancelEnvironmentDeploymentInputRequestTypeDef(BaseModel): + environmentName: str + +class CancelServiceInstanceDeploymentInputRequestTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + +class ServiceInstanceTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + environmentName: str + lastDeploymentAttemptedAt: datetime + lastDeploymentSucceededAt: datetime + name: str + serviceName: str + templateMajorVersion: str + templateMinorVersion: str + templateName: str + deploymentStatusMessage: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastClientRequestToken: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + spec: Optional[str] = None + +class CancelServicePipelineDeploymentInputRequestTypeDef(BaseModel): + serviceName: str + +class ServicePipelineTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + lastDeploymentAttemptedAt: datetime + lastDeploymentSucceededAt: datetime + templateMajorVersion: str + templateMinorVersion: str + templateName: str + deploymentStatusMessage: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + spec: Optional[str] = None + +class CompatibleEnvironmentTemplateInputTypeDef(BaseModel): + majorVersion: str + templateName: str + +class CompatibleEnvironmentTemplateTypeDef(BaseModel): + majorVersion: str + templateName: str + +class ComponentStateTypeDef(BaseModel): + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + serviceSpec: Optional[str] = None + templateFile: Optional[str] = None + +class ComponentSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + environmentName: str + lastModifiedAt: datetime + name: str + deploymentStatusMessage: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastDeploymentAttemptedAt: Optional[datetime] = None + lastDeploymentSucceededAt: Optional[datetime] = None + lastSucceededDeploymentId: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + +class ResourceCountsSummaryTypeDef(BaseModel): + total: int + behindMajor: Optional[int] = None + behindMinor: Optional[int] = None + failed: Optional[int] = None + upToDate: Optional[int] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class RepositoryBranchInputTypeDef(BaseModel): + branch: str + name: str + provider: RepositoryProviderType + +class EnvironmentTemplateTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + name: str + description: Optional[str] = None + displayName: Optional[str] = None + encryptionKey: Optional[str] = None + provisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + recommendedVersion: Optional[str] = None + +class EnvironmentTemplateVersionTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + majorVersion: str + minorVersion: str + status: TemplateVersionStatusType + templateName: str + description: Optional[str] = None + recommendedMinorVersion: Optional[str] = None + schema: Optional[str] = None + statusMessage: Optional[str] = None + +class RepositoryTypeDef(BaseModel): + arn: str + connectionArn: str + name: str + provider: RepositoryProviderType + encryptionKey: Optional[str] = None + +class CreateServiceSyncConfigInputRequestTypeDef(BaseModel): + branch: str + filePath: str + repositoryName: str + repositoryProvider: RepositoryProviderType + serviceName: str + +class ServiceSyncConfigTypeDef(BaseModel): + branch: str + filePath: str + repositoryName: str + repositoryProvider: RepositoryProviderType + serviceName: str + +class ServiceTemplateTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + name: str + description: Optional[str] = None + displayName: Optional[str] = None + encryptionKey: Optional[str] = None + pipelineProvisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + recommendedVersion: Optional[str] = None + +class CreateTemplateSyncConfigInputRequestTypeDef(BaseModel): + branch: str + repositoryName: str + repositoryProvider: RepositoryProviderType + templateName: str + templateType: TemplateTypeType + subdirectory: Optional[str] = None + +class TemplateSyncConfigTypeDef(BaseModel): + branch: str + repositoryName: str + repositoryProvider: RepositoryProviderType + templateName: str + templateType: TemplateTypeType + subdirectory: Optional[str] = None + +class DeleteComponentInputRequestTypeDef(BaseModel): + name: str + +class DeleteDeploymentInputRequestTypeDef(BaseModel): + id: str + +class DeleteEnvironmentAccountConnectionInputRequestTypeDef(BaseModel): + id: str + +class DeleteEnvironmentInputRequestTypeDef(BaseModel): + name: str + +class DeleteEnvironmentTemplateInputRequestTypeDef(BaseModel): + name: str + +class DeleteEnvironmentTemplateVersionInputRequestTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + +class DeleteRepositoryInputRequestTypeDef(BaseModel): + name: str + provider: RepositoryProviderType + +class DeleteServiceInputRequestTypeDef(BaseModel): + name: str + +class DeleteServiceSyncConfigInputRequestTypeDef(BaseModel): + serviceName: str + +class DeleteServiceTemplateInputRequestTypeDef(BaseModel): + name: str + +class DeleteServiceTemplateVersionInputRequestTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + +class DeleteTemplateSyncConfigInputRequestTypeDef(BaseModel): + templateName: str + templateType: TemplateTypeType + +class EnvironmentStateTypeDef(BaseModel): + templateMajorVersion: str + templateMinorVersion: str + templateName: str + spec: Optional[str] = None + +class ServiceInstanceStateTypeDef(BaseModel): + spec: str + templateMajorVersion: str + templateMinorVersion: str + templateName: str + lastSuccessfulComponentDeploymentIds: Optional[List[str]] = None + lastSuccessfulEnvironmentDeploymentId: Optional[str] = None + lastSuccessfulServicePipelineDeploymentId: Optional[str] = None + +class ServicePipelineStateTypeDef(BaseModel): + templateMajorVersion: str + templateMinorVersion: str + templateName: str + spec: Optional[str] = None + +class DeploymentSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + environmentName: str + id: str + lastModifiedAt: datetime + targetArn: str + targetResourceCreatedAt: datetime + targetResourceType: DeploymentTargetResourceTypeType + completedAt: Optional[datetime] = None + componentName: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + +class EnvironmentAccountConnectionSummaryTypeDef(BaseModel): + arn: str + environmentAccountId: str + environmentName: str + id: str + lastModifiedAt: datetime + managementAccountId: str + requestedAt: datetime + roleArn: str + status: EnvironmentAccountConnectionStatusType + componentRoleArn: Optional[str] = None + +class EnvironmentSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + lastDeploymentAttemptedAt: datetime + lastDeploymentSucceededAt: datetime + name: str + templateMajorVersion: str + templateMinorVersion: str + templateName: str + componentRoleArn: Optional[str] = None + deploymentStatusMessage: Optional[str] = None + description: Optional[str] = None + environmentAccountConnectionId: Optional[str] = None + environmentAccountId: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + protonServiceRoleArn: Optional[str] = None + provisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + +class EnvironmentTemplateFilterTypeDef(BaseModel): + majorVersion: str + templateName: str + +class EnvironmentTemplateSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + name: str + description: Optional[str] = None + displayName: Optional[str] = None + provisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + recommendedVersion: Optional[str] = None + +class EnvironmentTemplateVersionSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + majorVersion: str + minorVersion: str + status: TemplateVersionStatusType + templateName: str + description: Optional[str] = None + recommendedMinorVersion: Optional[str] = None + statusMessage: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetComponentInputRequestTypeDef(BaseModel): + name: str + +class GetDeploymentInputRequestTypeDef(BaseModel): + id: str + componentName: Optional[str] = None + environmentName: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + +class GetEnvironmentAccountConnectionInputRequestTypeDef(BaseModel): + id: str + +class GetEnvironmentInputRequestTypeDef(BaseModel): + name: str + +class GetEnvironmentTemplateInputRequestTypeDef(BaseModel): + name: str + +class GetEnvironmentTemplateVersionInputRequestTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + +class GetRepositoryInputRequestTypeDef(BaseModel): + name: str + provider: RepositoryProviderType + +class GetRepositorySyncStatusInputRequestTypeDef(BaseModel): + branch: str + repositoryName: str + repositoryProvider: RepositoryProviderType + syncType: SyncTypeType + +class GetServiceInputRequestTypeDef(BaseModel): + name: str + +class GetServiceInstanceInputRequestTypeDef(BaseModel): + name: str + serviceName: str + +class GetServiceInstanceSyncStatusInputRequestTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + +class RevisionTypeDef(BaseModel): + branch: str + directory: str + repositoryName: str + repositoryProvider: RepositoryProviderType + sha: str + +class GetServiceSyncBlockerSummaryInputRequestTypeDef(BaseModel): + serviceName: str + serviceInstanceName: Optional[str] = None + +class GetServiceSyncConfigInputRequestTypeDef(BaseModel): + serviceName: str + +class GetServiceTemplateInputRequestTypeDef(BaseModel): + name: str + +class GetServiceTemplateVersionInputRequestTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + +class GetTemplateSyncConfigInputRequestTypeDef(BaseModel): + templateName: str + templateType: TemplateTypeType + +class GetTemplateSyncStatusInputRequestTypeDef(BaseModel): + templateName: str + templateType: TemplateTypeType + templateVersion: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListComponentOutputsInputRequestTypeDef(BaseModel): + componentName: str + deploymentId: Optional[str] = None + nextToken: Optional[str] = None + +class OutputTypeDef(BaseModel): + key: Optional[str] = None + valueString: Optional[str] = None + +class ListComponentProvisionedResourcesInputRequestTypeDef(BaseModel): + componentName: str + nextToken: Optional[str] = None + +class ProvisionedResourceTypeDef(BaseModel): + identifier: Optional[str] = None + name: Optional[str] = None + provisioningEngine: Optional[ProvisionedResourceEngineType] = None + +class ListComponentsInputRequestTypeDef(BaseModel): + environmentName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + +class ListDeploymentsInputRequestTypeDef(BaseModel): + componentName: Optional[str] = None + environmentName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + +class ListEnvironmentAccountConnectionsInputRequestTypeDef(BaseModel): + requestedBy: EnvironmentAccountConnectionRequesterAccountTypeType + environmentName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + statuses: Optional[Sequence[EnvironmentAccountConnectionStatusType]] = None + +class ListEnvironmentOutputsInputRequestTypeDef(BaseModel): + environmentName: str + deploymentId: Optional[str] = None + nextToken: Optional[str] = None + +class ListEnvironmentProvisionedResourcesInputRequestTypeDef(BaseModel): + environmentName: str + nextToken: Optional[str] = None + +class ListEnvironmentTemplateVersionsInputRequestTypeDef(BaseModel): + templateName: str + majorVersion: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEnvironmentTemplatesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRepositoriesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RepositorySummaryTypeDef(BaseModel): + arn: str + connectionArn: str + name: str + provider: RepositoryProviderType + +class ListRepositorySyncDefinitionsInputRequestTypeDef(BaseModel): + repositoryName: str + repositoryProvider: RepositoryProviderType + syncType: SyncTypeType + nextToken: Optional[str] = None + +class RepositorySyncDefinitionTypeDef(BaseModel): + branch: str + directory: str + parent: str + target: str + +class ListServiceInstanceOutputsInputRequestTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + deploymentId: Optional[str] = None + nextToken: Optional[str] = None + +class ListServiceInstanceProvisionedResourcesInputRequestTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + nextToken: Optional[str] = None + +class ListServiceInstancesFilterTypeDef(BaseModel): + key: Optional[ListServiceInstancesFilterByType] = None + value: Optional[str] = None + +class ServiceInstanceSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + environmentName: str + lastDeploymentAttemptedAt: datetime + lastDeploymentSucceededAt: datetime + name: str + serviceName: str + templateMajorVersion: str + templateMinorVersion: str + templateName: str + deploymentStatusMessage: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + +class ListServicePipelineOutputsInputRequestTypeDef(BaseModel): + serviceName: str + deploymentId: Optional[str] = None + nextToken: Optional[str] = None + +class ListServicePipelineProvisionedResourcesInputRequestTypeDef(BaseModel): + serviceName: str + nextToken: Optional[str] = None + +class ListServiceTemplateVersionsInputRequestTypeDef(BaseModel): + templateName: str + majorVersion: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ServiceTemplateVersionSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + majorVersion: str + minorVersion: str + status: TemplateVersionStatusType + templateName: str + description: Optional[str] = None + recommendedMinorVersion: Optional[str] = None + statusMessage: Optional[str] = None + +class ListServiceTemplatesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ServiceTemplateSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + name: str + description: Optional[str] = None + displayName: Optional[str] = None + pipelineProvisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + recommendedVersion: Optional[str] = None + +class ListServicesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ServiceSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + name: str + status: ServiceStatusType + templateName: str + description: Optional[str] = None + statusMessage: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RejectEnvironmentAccountConnectionInputRequestTypeDef(BaseModel): + id: str + +class RepositorySyncEventTypeDef(BaseModel): + event: str + time: datetime + type: str + externalId: Optional[str] = None + +class ResourceSyncEventTypeDef(BaseModel): + event: str + time: datetime + type: str + externalId: Optional[str] = None + +class S3ObjectSourceTypeDef(BaseModel): + bucket: str + key: str + +class SyncBlockerContextTypeDef(BaseModel): + key: str + value: str + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateComponentInputRequestTypeDef(BaseModel): + deploymentType: ComponentDeploymentUpdateTypeType + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + serviceSpec: Optional[str] = None + templateFile: Optional[str] = None + +class UpdateEnvironmentAccountConnectionInputRequestTypeDef(BaseModel): + id: str + codebuildRoleArn: Optional[str] = None + componentRoleArn: Optional[str] = None + roleArn: Optional[str] = None + +class UpdateEnvironmentTemplateInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + displayName: Optional[str] = None + +class UpdateEnvironmentTemplateVersionInputRequestTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + description: Optional[str] = None + status: Optional[TemplateVersionStatusType] = None + +class UpdateServiceInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + spec: Optional[str] = None + +class UpdateServiceInstanceInputRequestTypeDef(BaseModel): + deploymentType: DeploymentUpdateTypeType + name: str + serviceName: str + clientToken: Optional[str] = None + spec: Optional[str] = None + templateMajorVersion: Optional[str] = None + templateMinorVersion: Optional[str] = None + +class UpdateServicePipelineInputRequestTypeDef(BaseModel): + deploymentType: DeploymentUpdateTypeType + serviceName: str + spec: str + templateMajorVersion: Optional[str] = None + templateMinorVersion: Optional[str] = None + +class UpdateServiceSyncBlockerInputRequestTypeDef(BaseModel): + id: str + resolvedReason: str + +class UpdateServiceSyncConfigInputRequestTypeDef(BaseModel): + branch: str + filePath: str + repositoryName: str + repositoryProvider: RepositoryProviderType + serviceName: str + +class UpdateServiceTemplateInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + displayName: Optional[str] = None + +class UpdateTemplateSyncConfigInputRequestTypeDef(BaseModel): + branch: str + repositoryName: str + repositoryProvider: RepositoryProviderType + templateName: str + templateType: TemplateTypeType + subdirectory: Optional[str] = None + +class AcceptEnvironmentAccountConnectionOutputTypeDef(BaseModel): + environmentAccountConnection: EnvironmentAccountConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentAccountConnectionOutputTypeDef(BaseModel): + environmentAccountConnection: EnvironmentAccountConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEnvironmentAccountConnectionOutputTypeDef(BaseModel): + environmentAccountConnection: EnvironmentAccountConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentAccountConnectionOutputTypeDef(BaseModel): + environmentAccountConnection: EnvironmentAccountConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RejectEnvironmentAccountConnectionOutputTypeDef(BaseModel): + environmentAccountConnection: EnvironmentAccountConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentAccountConnectionOutputTypeDef(BaseModel): + environmentAccountConnection: EnvironmentAccountConnectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AccountSettingsTypeDef(BaseModel): + pipelineCodebuildRoleArn: Optional[str] = None + pipelineProvisioningRepository: Optional[RepositoryBranchTypeDef] = None + pipelineServiceRoleArn: Optional[str] = None + +class EnvironmentTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + lastDeploymentAttemptedAt: datetime + lastDeploymentSucceededAt: datetime + name: str + templateMajorVersion: str + templateMinorVersion: str + templateName: str + codebuildRoleArn: Optional[str] = None + componentRoleArn: Optional[str] = None + deploymentStatusMessage: Optional[str] = None + description: Optional[str] = None + environmentAccountConnectionId: Optional[str] = None + environmentAccountId: Optional[str] = None + lastAttemptedDeploymentId: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + protonServiceRoleArn: Optional[str] = None + provisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + provisioningRepository: Optional[RepositoryBranchTypeDef] = None + spec: Optional[str] = None + +class CancelComponentDeploymentOutputTypeDef(BaseModel): + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateComponentOutputTypeDef(BaseModel): + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteComponentOutputTypeDef(BaseModel): + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentOutputTypeDef(BaseModel): + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateComponentOutputTypeDef(BaseModel): + component: ComponentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelServiceInstanceDeploymentOutputTypeDef(BaseModel): + serviceInstance: ServiceInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceInstanceOutputTypeDef(BaseModel): + serviceInstance: ServiceInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceInstanceOutputTypeDef(BaseModel): + serviceInstance: ServiceInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceInstanceOutputTypeDef(BaseModel): + serviceInstance: ServiceInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelServicePipelineDeploymentOutputTypeDef(BaseModel): + pipeline: ServicePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceTypeDef(BaseModel): + arn: str + createdAt: datetime + lastModifiedAt: datetime + name: str + spec: str + status: ServiceStatusType + templateName: str + branchName: Optional[str] = None + description: Optional[str] = None + pipeline: Optional[ServicePipelineTypeDef] = None + repositoryConnectionArn: Optional[str] = None + repositoryId: Optional[str] = None + statusMessage: Optional[str] = None + +class UpdateServicePipelineOutputTypeDef(BaseModel): + pipeline: ServicePipelineTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceTemplateVersionInputRequestTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + compatibleEnvironmentTemplates: Optional[ Sequence[CompatibleEnvironmentTemplateInputTypeDef] ] = None + description: Optional[str] = None + status: Optional[TemplateVersionStatusType] = None + supportedComponentSources: Optional[Sequence[Literal["DIRECTLY_DEFINED"]]] = None + +class ServiceTemplateVersionTypeDef(BaseModel): + arn: str + compatibleEnvironmentTemplates: List[CompatibleEnvironmentTemplateTypeDef] + createdAt: datetime + lastModifiedAt: datetime + majorVersion: str + minorVersion: str + status: TemplateVersionStatusType + templateName: str + description: Optional[str] = None + recommendedMinorVersion: Optional[str] = None + schema: Optional[str] = None + statusMessage: Optional[str] = None + supportedComponentSources: Optional[List[Literal["DIRECTLY_DEFINED"]]] = None + +class ListComponentsOutputTypeDef(BaseModel): + components: List[ComponentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CountsSummaryTypeDef(BaseModel): + components: Optional[ResourceCountsSummaryTypeDef] = None + environmentTemplates: Optional[ResourceCountsSummaryTypeDef] = None + environments: Optional[ResourceCountsSummaryTypeDef] = None + pipelines: Optional[ResourceCountsSummaryTypeDef] = None + serviceInstances: Optional[ResourceCountsSummaryTypeDef] = None + serviceTemplates: Optional[ResourceCountsSummaryTypeDef] = None + services: Optional[ResourceCountsSummaryTypeDef] = None + +class CreateComponentInputRequestTypeDef(BaseModel): + manifest: str + name: str + templateFile: str + clientToken: Optional[str] = None + description: Optional[str] = None + environmentName: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + serviceSpec: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEnvironmentAccountConnectionInputRequestTypeDef(BaseModel): + environmentName: str + managementAccountId: str + clientToken: Optional[str] = None + codebuildRoleArn: Optional[str] = None + componentRoleArn: Optional[str] = None + roleArn: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEnvironmentTemplateInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + displayName: Optional[str] = None + encryptionKey: Optional[str] = None + provisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRepositoryInputRequestTypeDef(BaseModel): + connectionArn: str + name: str + provider: RepositoryProviderType + encryptionKey: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateServiceInputRequestTypeDef(BaseModel): + name: str + spec: str + templateMajorVersion: str + templateName: str + branchName: Optional[str] = None + description: Optional[str] = None + repositoryConnectionArn: Optional[str] = None + repositoryId: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + templateMinorVersion: Optional[str] = None + +class CreateServiceInstanceInputRequestTypeDef(BaseModel): + name: str + serviceName: str + spec: str + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + templateMajorVersion: Optional[str] = None + templateMinorVersion: Optional[str] = None + +class CreateServiceTemplateInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + displayName: Optional[str] = None + encryptionKey: Optional[str] = None + pipelineProvisioning: Optional[Literal["CUSTOMER_MANAGED"]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + nextToken: str + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateEnvironmentInputRequestTypeDef(BaseModel): + name: str + spec: str + templateMajorVersion: str + templateName: str + codebuildRoleArn: Optional[str] = None + componentRoleArn: Optional[str] = None + description: Optional[str] = None + environmentAccountConnectionId: Optional[str] = None + protonServiceRoleArn: Optional[str] = None + provisioningRepository: Optional[RepositoryBranchInputTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + templateMinorVersion: Optional[str] = None + +class UpdateAccountSettingsInputRequestTypeDef(BaseModel): + deletePipelineProvisioningRepository: Optional[bool] = None + pipelineCodebuildRoleArn: Optional[str] = None + pipelineProvisioningRepository: Optional[RepositoryBranchInputTypeDef] = None + pipelineServiceRoleArn: Optional[str] = None + +class UpdateEnvironmentInputRequestTypeDef(BaseModel): + deploymentType: DeploymentUpdateTypeType + name: str + codebuildRoleArn: Optional[str] = None + componentRoleArn: Optional[str] = None + description: Optional[str] = None + environmentAccountConnectionId: Optional[str] = None + protonServiceRoleArn: Optional[str] = None + provisioningRepository: Optional[RepositoryBranchInputTypeDef] = None + spec: Optional[str] = None + templateMajorVersion: Optional[str] = None + templateMinorVersion: Optional[str] = None + +class CreateEnvironmentTemplateOutputTypeDef(BaseModel): + environmentTemplate: EnvironmentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEnvironmentTemplateOutputTypeDef(BaseModel): + environmentTemplate: EnvironmentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentTemplateOutputTypeDef(BaseModel): + environmentTemplate: EnvironmentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentTemplateOutputTypeDef(BaseModel): + environmentTemplate: EnvironmentTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentTemplateVersionOutputTypeDef(BaseModel): + environmentTemplateVersion: EnvironmentTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEnvironmentTemplateVersionOutputTypeDef(BaseModel): + environmentTemplateVersion: EnvironmentTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentTemplateVersionOutputTypeDef(BaseModel): + environmentTemplateVersion: EnvironmentTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentTemplateVersionOutputTypeDef(BaseModel): + environmentTemplateVersion: EnvironmentTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRepositoryOutputTypeDef(BaseModel): + repository: RepositoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRepositoryOutputTypeDef(BaseModel): + repository: RepositoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRepositoryOutputTypeDef(BaseModel): + repository: RepositoryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceSyncConfigOutputTypeDef(BaseModel): + serviceSyncConfig: ServiceSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceSyncConfigOutputTypeDef(BaseModel): + serviceSyncConfig: ServiceSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceSyncConfigOutputTypeDef(BaseModel): + serviceSyncConfig: ServiceSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceSyncConfigOutputTypeDef(BaseModel): + serviceSyncConfig: ServiceSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceTemplateOutputTypeDef(BaseModel): + serviceTemplate: ServiceTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceTemplateOutputTypeDef(BaseModel): + serviceTemplate: ServiceTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceTemplateOutputTypeDef(BaseModel): + serviceTemplate: ServiceTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceTemplateOutputTypeDef(BaseModel): + serviceTemplate: ServiceTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateSyncConfigOutputTypeDef(BaseModel): + templateSyncConfig: TemplateSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTemplateSyncConfigOutputTypeDef(BaseModel): + templateSyncConfig: TemplateSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateSyncConfigOutputTypeDef(BaseModel): + templateSyncConfig: TemplateSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTemplateSyncConfigOutputTypeDef(BaseModel): + templateSyncConfig: TemplateSyncConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentStateTypeDef(BaseModel): + component: Optional[ComponentStateTypeDef] = None + environment: Optional[EnvironmentStateTypeDef] = None + serviceInstance: Optional[ServiceInstanceStateTypeDef] = None + servicePipeline: Optional[ServicePipelineStateTypeDef] = None + +class ListDeploymentsOutputTypeDef(BaseModel): + deployments: List[DeploymentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentAccountConnectionsOutputTypeDef(BaseModel): + environmentAccountConnections: List[EnvironmentAccountConnectionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsOutputTypeDef(BaseModel): + environments: List[EnvironmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsInputRequestTypeDef(BaseModel): + environmentTemplates: Optional[Sequence[EnvironmentTemplateFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEnvironmentTemplatesOutputTypeDef(BaseModel): + nextToken: str + templates: List[EnvironmentTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentTemplateVersionsOutputTypeDef(BaseModel): + nextToken: str + templateVersions: List[EnvironmentTemplateVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetComponentInputComponentDeletedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetComponentInputComponentDeployedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetEnvironmentInputEnvironmentDeployedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetEnvironmentTemplateVersionInputEnvironmentTemplateVersionRegisteredWaitTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetServiceInputServiceCreatedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetServiceInputServiceDeletedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetServiceInputServicePipelineDeployedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetServiceInputServiceUpdatedWaitTypeDef(BaseModel): + name: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetServiceInstanceInputServiceInstanceDeployedWaitTypeDef(BaseModel): + name: str + serviceName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetServiceTemplateVersionInputServiceTemplateVersionRegisteredWaitTypeDef(BaseModel): + majorVersion: str + minorVersion: str + templateName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ListComponentOutputsInputListComponentOutputsPaginateTypeDef(BaseModel): + componentName: str + deploymentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentProvisionedResourcesInputListComponentProvisionedResourcesPaginateTypeDef(BaseModel): + componentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentsInputListComponentsPaginateTypeDef(BaseModel): + environmentName: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeploymentsInputListDeploymentsPaginateTypeDef(BaseModel): + componentName: Optional[str] = None + environmentName: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentAccountConnectionsInputListEnvironmentAccountConnectionsPaginateTypeDef(BaseModel): + requestedBy: EnvironmentAccountConnectionRequesterAccountTypeType + environmentName: Optional[str] = None + statuses: Optional[Sequence[EnvironmentAccountConnectionStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentOutputsInputListEnvironmentOutputsPaginateTypeDef(BaseModel): + environmentName: str + deploymentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentProvisionedResourcesInputListEnvironmentProvisionedResourcesPaginateTypeDef(BaseModel): + environmentName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentTemplateVersionsInputListEnvironmentTemplateVersionsPaginateTypeDef(BaseModel): + templateName: str + majorVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentTemplatesInputListEnvironmentTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsInputListEnvironmentsPaginateTypeDef(BaseModel): + environmentTemplates: Optional[Sequence[EnvironmentTemplateFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRepositoriesInputListRepositoriesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRepositorySyncDefinitionsInputListRepositorySyncDefinitionsPaginateTypeDef(BaseModel): + repositoryName: str + repositoryProvider: RepositoryProviderType + syncType: SyncTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceInstanceOutputsInputListServiceInstanceOutputsPaginateTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + deploymentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceInstanceProvisionedResourcesInputListServiceInstanceProvisionedResourcesPaginateTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicePipelineOutputsInputListServicePipelineOutputsPaginateTypeDef(BaseModel): + serviceName: str + deploymentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicePipelineProvisionedResourcesInputListServicePipelineProvisionedResourcesPaginateTypeDef(BaseModel): + serviceName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceTemplateVersionsInputListServiceTemplateVersionsPaginateTypeDef(BaseModel): + templateName: str + majorVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceTemplatesInputListServiceTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesInputListServicesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceInputListTagsForResourcePaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentOutputsOutputTypeDef(BaseModel): + nextToken: str + outputs: List[OutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentOutputsOutputTypeDef(BaseModel): + nextToken: str + outputs: List[OutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceInstanceOutputsOutputTypeDef(BaseModel): + nextToken: str + outputs: List[OutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicePipelineOutputsOutputTypeDef(BaseModel): + nextToken: str + outputs: List[OutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NotifyResourceDeploymentStatusChangeInputRequestTypeDef(BaseModel): + resourceArn: str + deploymentId: Optional[str] = None + outputs: Optional[Sequence[OutputTypeDef]] = None + status: Optional[ResourceDeploymentStatusType] = None + statusMessage: Optional[str] = None + +class ListComponentProvisionedResourcesOutputTypeDef(BaseModel): + nextToken: str + provisionedResources: List[ProvisionedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentProvisionedResourcesOutputTypeDef(BaseModel): + nextToken: str + provisionedResources: List[ProvisionedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceInstanceProvisionedResourcesOutputTypeDef(BaseModel): + nextToken: str + provisionedResources: List[ProvisionedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicePipelineProvisionedResourcesOutputTypeDef(BaseModel): + nextToken: str + provisionedResources: List[ProvisionedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositoriesOutputTypeDef(BaseModel): + nextToken: str + repositories: List[RepositorySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRepositorySyncDefinitionsOutputTypeDef(BaseModel): + nextToken: str + syncDefinitions: List[RepositorySyncDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceInstancesInputListServiceInstancesPaginateTypeDef(BaseModel): + filters: Optional[Sequence[ListServiceInstancesFilterTypeDef]] = None + serviceName: Optional[str] = None + sortBy: Optional[ListServiceInstancesSortByType] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceInstancesInputRequestTypeDef(BaseModel): + filters: Optional[Sequence[ListServiceInstancesFilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + serviceName: Optional[str] = None + sortBy: Optional[ListServiceInstancesSortByType] = None + sortOrder: Optional[SortOrderType] = None + +class ListServiceInstancesOutputTypeDef(BaseModel): + nextToken: str + serviceInstances: List[ServiceInstanceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceTemplateVersionsOutputTypeDef(BaseModel): + nextToken: str + templateVersions: List[ServiceTemplateVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceTemplatesOutputTypeDef(BaseModel): + nextToken: str + templates: List[ServiceTemplateSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesOutputTypeDef(BaseModel): + nextToken: str + services: List[ServiceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RepositorySyncAttemptTypeDef(BaseModel): + events: List[RepositorySyncEventTypeDef] + startedAt: datetime + status: RepositorySyncStatusType + +class ResourceSyncAttemptTypeDef(BaseModel): + events: List[ResourceSyncEventTypeDef] + initialRevision: RevisionTypeDef + startedAt: datetime + status: ResourceSyncStatusType + target: str + targetRevision: RevisionTypeDef + +class TemplateVersionSourceInputTypeDef(BaseModel): + s3: Optional[S3ObjectSourceTypeDef] = None + +class SyncBlockerTypeDef(BaseModel): + createdAt: datetime + createdReason: str + id: str + status: BlockerStatusType + type: Literal["AUTOMATED"] + contexts: Optional[List[SyncBlockerContextTypeDef]] = None + resolvedAt: Optional[datetime] = None + resolvedReason: Optional[str] = None + +class GetAccountSettingsOutputTypeDef(BaseModel): + accountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountSettingsOutputTypeDef(BaseModel): + accountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CancelEnvironmentDeploymentOutputTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentOutputTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEnvironmentOutputTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentOutputTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentOutputTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceOutputTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceOutputTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceOutputTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceOutputTypeDef(BaseModel): + service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceTemplateVersionOutputTypeDef(BaseModel): + serviceTemplateVersion: ServiceTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceTemplateVersionOutputTypeDef(BaseModel): + serviceTemplateVersion: ServiceTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceTemplateVersionOutputTypeDef(BaseModel): + serviceTemplateVersion: ServiceTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceTemplateVersionOutputTypeDef(BaseModel): + serviceTemplateVersion: ServiceTemplateVersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcesSummaryOutputTypeDef(BaseModel): + counts: CountsSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentTypeDef(BaseModel): + arn: str + createdAt: datetime + deploymentStatus: DeploymentStatusType + environmentName: str + id: str + lastModifiedAt: datetime + targetArn: str + targetResourceCreatedAt: datetime + targetResourceType: DeploymentTargetResourceTypeType + completedAt: Optional[datetime] = None + componentName: Optional[str] = None + deploymentStatusMessage: Optional[str] = None + initialState: Optional[DeploymentStateTypeDef] = None + lastAttemptedDeploymentId: Optional[str] = None + lastSucceededDeploymentId: Optional[str] = None + serviceInstanceName: Optional[str] = None + serviceName: Optional[str] = None + targetState: Optional[DeploymentStateTypeDef] = None + +class GetRepositorySyncStatusOutputTypeDef(BaseModel): + latestSync: RepositorySyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceInstanceSyncStatusOutputTypeDef(BaseModel): + desiredState: RevisionTypeDef + latestSuccessfulSync: ResourceSyncAttemptTypeDef + latestSync: ResourceSyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateSyncStatusOutputTypeDef(BaseModel): + desiredState: RevisionTypeDef + latestSuccessfulSync: ResourceSyncAttemptTypeDef + latestSync: ResourceSyncAttemptTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEnvironmentTemplateVersionInputRequestTypeDef(BaseModel): + source: TemplateVersionSourceInputTypeDef + templateName: str + clientToken: Optional[str] = None + description: Optional[str] = None + majorVersion: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateServiceTemplateVersionInputRequestTypeDef(BaseModel): + compatibleEnvironmentTemplates: Sequence[CompatibleEnvironmentTemplateInputTypeDef] + source: TemplateVersionSourceInputTypeDef + templateName: str + clientToken: Optional[str] = None + description: Optional[str] = None + majorVersion: Optional[str] = None + supportedComponentSources: Optional[Sequence[Literal["DIRECTLY_DEFINED"]]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ServiceSyncBlockerSummaryTypeDef(BaseModel): + serviceName: str + latestBlockers: Optional[List[SyncBlockerTypeDef]] = None + serviceInstanceName: Optional[str] = None + +class UpdateServiceSyncBlockerOutputTypeDef(BaseModel): + serviceInstanceName: str + serviceName: str + serviceSyncBlocker: SyncBlockerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDeploymentOutputTypeDef(BaseModel): + deployment: DeploymentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeploymentOutputTypeDef(BaseModel): + deployment: DeploymentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceSyncBlockerSummaryOutputTypeDef(BaseModel): + serviceSyncBlockerSummary: ServiceSyncBlockerSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/proton_constants.py b/aws_resource_validator/pydantic_models/proton_constants.py new file mode 100644 index 00000000..ca4b1b2f --- /dev/null +++ b/aws_resource_validator/pydantic_models/proton_constants.py @@ -0,0 +1,518 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BlockerStatusType = Literal["ACTIVE", "RESOLVED"] +BlockerTypeType = Literal["AUTOMATED"] +ComponentDeletedWaiterName = Literal["component_deleted"] +ComponentDeployedWaiterName = Literal["component_deployed"] +ComponentDeploymentUpdateTypeType = Literal["CURRENT_VERSION", "NONE"] +DeploymentStatusType = Literal["CANCELLED", + "CANCELLING", + "DELETE_COMPLETE", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "FAILED", + "IN_PROGRESS", + "SUCCEEDED",] +DeploymentTargetResourceTypeType = Literal["COMPONENT", "ENVIRONMENT", "SERVICE_INSTANCE", "SERVICE_PIPELINE"] +DeploymentUpdateTypeType = Literal["CURRENT_VERSION", "MAJOR_VERSION", "MINOR_VERSION", "NONE"] +EnvironmentAccountConnectionRequesterAccountTypeType = Literal["ENVIRONMENT_ACCOUNT", "MANAGEMENT_ACCOUNT"] +EnvironmentAccountConnectionStatusType = Literal["CONNECTED", "PENDING", "REJECTED"] +EnvironmentDeployedWaiterName = Literal["environment_deployed"] +EnvironmentTemplateVersionRegisteredWaiterName = Literal["environment_template_version_registered"] +ListComponentOutputsPaginatorName = Literal["list_component_outputs"] +ListComponentProvisionedResourcesPaginatorName = Literal["list_component_provisioned_resources"] +ListComponentsPaginatorName = Literal["list_components"] +ListDeploymentsPaginatorName = Literal["list_deployments"] +ListEnvironmentAccountConnectionsPaginatorName = Literal["list_environment_account_connections"] +ListEnvironmentOutputsPaginatorName = Literal["list_environment_outputs"] +ListEnvironmentProvisionedResourcesPaginatorName = Literal["list_environment_provisioned_resources"] +ListEnvironmentTemplateVersionsPaginatorName = Literal["list_environment_template_versions"] +ListEnvironmentTemplatesPaginatorName = Literal["list_environment_templates"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +ListRepositoriesPaginatorName = Literal["list_repositories"] +ListRepositorySyncDefinitionsPaginatorName = Literal["list_repository_sync_definitions"] +ListServiceInstanceOutputsPaginatorName = Literal["list_service_instance_outputs"] +ListServiceInstanceProvisionedResourcesPaginatorName = Literal["list_service_instance_provisioned_resources"] +ListServiceInstancesFilterByType = Literal["createdAtAfter", + "createdAtBefore", + "deployedTemplateVersionStatus", + "deploymentStatus", + "environmentName", + "lastDeploymentAttemptedAtAfter", + "lastDeploymentAttemptedAtBefore", + "name", + "serviceName", + "templateName",] +ListServiceInstancesPaginatorName = Literal["list_service_instances"] +ListServiceInstancesSortByType = Literal["createdAt", + "deploymentStatus", + "environmentName", + "lastDeploymentAttemptedAt", + "name", + "serviceName", + "templateName",] +ListServicePipelineOutputsPaginatorName = Literal["list_service_pipeline_outputs"] +ListServicePipelineProvisionedResourcesPaginatorName = Literal["list_service_pipeline_provisioned_resources"] +ListServiceTemplateVersionsPaginatorName = Literal["list_service_template_versions"] +ListServiceTemplatesPaginatorName = Literal["list_service_templates"] +ListServicesPaginatorName = Literal["list_services"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ProvisionedResourceEngineType = Literal["CLOUDFORMATION", "TERRAFORM"] +ProvisioningType = Literal["CUSTOMER_MANAGED"] +RepositoryProviderType = Literal["BITBUCKET", "GITHUB", "GITHUB_ENTERPRISE"] +RepositorySyncStatusType = Literal["FAILED", "INITIATED", "IN_PROGRESS", "QUEUED", "SUCCEEDED"] +ResourceDeploymentStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +ResourceSyncStatusType = Literal["FAILED", "INITIATED", "IN_PROGRESS", "SUCCEEDED"] +ServiceCreatedWaiterName = Literal["service_created"] +ServiceDeletedWaiterName = Literal["service_deleted"] +ServiceInstanceDeployedWaiterName = Literal["service_instance_deployed"] +ServicePipelineDeployedWaiterName = Literal["service_pipeline_deployed"] +ServiceStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_FAILED_CLEANUP_COMPLETE", + "CREATE_FAILED_CLEANUP_FAILED", + "CREATE_FAILED_CLEANUP_IN_PROGRESS", + "CREATE_IN_PROGRESS", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_COMPLETE_CLEANUP_FAILED", + "UPDATE_FAILED", + "UPDATE_FAILED_CLEANUP_COMPLETE", + "UPDATE_FAILED_CLEANUP_FAILED", + "UPDATE_FAILED_CLEANUP_IN_PROGRESS", + "UPDATE_IN_PROGRESS",] +ServiceTemplateSupportedComponentSourceTypeType = Literal["DIRECTLY_DEFINED"] +ServiceTemplateVersionRegisteredWaiterName = Literal["service_template_version_registered"] +ServiceUpdatedWaiterName = Literal["service_updated"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +SyncTypeType = Literal["SERVICE_SYNC", "TEMPLATE_SYNC"] +TemplateTypeType = Literal["ENVIRONMENT", "SERVICE"] +TemplateVersionStatusType = Literal["DRAFT", "PUBLISHED", "REGISTRATION_FAILED", "REGISTRATION_IN_PROGRESS"] +ProtonServiceName = Literal["proton"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_component_outputs", + "list_component_provisioned_resources", + "list_components", + "list_deployments", + "list_environment_account_connections", + "list_environment_outputs", + "list_environment_provisioned_resources", + "list_environment_template_versions", + "list_environment_templates", + "list_environments", + "list_repositories", + "list_repository_sync_definitions", + "list_service_instance_outputs", + "list_service_instance_provisioned_resources", + "list_service_instances", + "list_service_pipeline_outputs", + "list_service_pipeline_provisioned_resources", + "list_service_template_versions", + "list_service_templates", + "list_services", + "list_tags_for_resource",] +WaiterName = Literal["component_deleted", + "component_deployed", + "environment_deployed", + "environment_template_version_registered", + "service_created", + "service_deleted", + "service_instance_deployed", + "service_pipeline_deployed", + "service_template_version_registered", + "service_updated",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/qapps_classes.py b/aws_resource_validator/pydantic_models/qapps_classes.py new file mode 100644 index 00000000..6e66be62 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qapps_classes.py @@ -0,0 +1,437 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.qapps_constants import * + +class AssociateLibraryItemReviewInputRequestTypeDef(BaseModel): + instanceId: str + libraryItemId: str + +class AssociateQAppWithUserInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + +class FileUploadCardInputTypeDef(BaseModel): + title: str + id: str + type: CardTypeType + filename: Optional[str] = None + fileId: Optional[str] = None + allowOverride: Optional[bool] = None + +class QPluginCardInputTypeDef(BaseModel): + title: str + id: str + type: CardTypeType + prompt: str + pluginId: str + +class QQueryCardInputTypeDef(BaseModel): + title: str + id: str + type: CardTypeType + prompt: str + outputSource: Optional[CardOutputSourceType] = None + attributeFilter: Optional["AttributeFilterOutputTypeDef"] = None + +class TextInputCardInputTypeDef(BaseModel): + title: str + id: str + type: CardTypeType + placeholder: Optional[str] = None + defaultValue: Optional[str] = None + +class CardStatusTypeDef(BaseModel): + currentState: ExecutionStatusType + currentValue: str + +class FileUploadCardTypeDef(BaseModel): + id: str + title: str + dependencies: List[str] + type: CardTypeType + filename: Optional[str] = None + fileId: Optional[str] = None + allowOverride: Optional[bool] = None + +class QPluginCardTypeDef(BaseModel): + id: str + title: str + dependencies: List[str] + type: CardTypeType + prompt: str + pluginType: PluginTypeType + pluginId: str + +class QQueryCardTypeDef(BaseModel): + id: str + title: str + dependencies: List[str] + type: CardTypeType + prompt: str + outputSource: CardOutputSourceType + attributeFilter: Optional["AttributeFilterOutputTypeDef"] = None + +class TextInputCardTypeDef(BaseModel): + id: str + title: str + dependencies: List[str] + type: CardTypeType + placeholder: Optional[str] = None + defaultValue: Optional[str] = None + +class CardValueTypeDef(BaseModel): + cardId: str + value: str + +class CategoryTypeDef(BaseModel): + id: str + title: str + +class ConversationMessageTypeDef(BaseModel): + body: str + type: SenderType + +class CreateLibraryItemInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + appVersion: int + categories: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteLibraryItemInputRequestTypeDef(BaseModel): + instanceId: str + libraryItemId: str + +class DeleteQAppInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + +class DisassociateLibraryItemReviewInputRequestTypeDef(BaseModel): + instanceId: str + libraryItemId: str + +class DisassociateQAppFromUserInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + +class DocumentAttributeValueOutputTypeDef(BaseModel): + stringValue: Optional[str] = None + stringListValue: Optional[List[str]] = None + longValue: Optional[int] = None + dateValue: Optional[datetime] = None + +class GetLibraryItemInputRequestTypeDef(BaseModel): + instanceId: str + libraryItemId: str + appId: Optional[str] = None + +class GetQAppInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + +class GetQAppSessionInputRequestTypeDef(BaseModel): + instanceId: str + sessionId: str + +class ImportDocumentInputRequestTypeDef(BaseModel): + instanceId: str + cardId: str + appId: str + fileContentsBase64: str + fileName: str + scope: DocumentScopeType + sessionId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListLibraryItemsInputRequestTypeDef(BaseModel): + instanceId: str + limit: Optional[int] = None + nextToken: Optional[str] = None + categoryId: Optional[str] = None + +class ListQAppsInputRequestTypeDef(BaseModel): + instanceId: str + limit: Optional[int] = None + nextToken: Optional[str] = None + +class UserAppItemTypeDef(BaseModel): + appId: str + appArn: str + title: str + createdAt: datetime + description: Optional[str] = None + canEdit: Optional[bool] = None + status: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + +class StopQAppSessionInputRequestTypeDef(BaseModel): + instanceId: str + sessionId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tagKeys: Sequence[str] + +class UpdateLibraryItemInputRequestTypeDef(BaseModel): + instanceId: str + libraryItemId: str + status: Optional[LibraryItemStatusType] = None + categories: Optional[Sequence[str]] = None + +class CardInputTypeDef(BaseModel): + textInput: Optional[TextInputCardInputTypeDef] = None + qQuery: Optional[QQueryCardInputTypeDef] = None + qPlugin: Optional[QPluginCardInputTypeDef] = None + fileUpload: Optional[FileUploadCardInputTypeDef] = None + +class CardTypeDef(BaseModel): + textInput: Optional[TextInputCardTypeDef] = None + qQuery: Optional[QQueryCardTypeDef] = None + qPlugin: Optional[QPluginCardTypeDef] = None + fileUpload: Optional[FileUploadCardTypeDef] = None + +class StartQAppSessionInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + appVersion: int + initialValues: Optional[Sequence[CardValueTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateQAppSessionInputRequestTypeDef(BaseModel): + instanceId: str + sessionId: str + values: Optional[Sequence[CardValueTypeDef]] = None + +class LibraryItemMemberTypeDef(BaseModel): + libraryItemId: str + appId: str + appVersion: int + categories: List[CategoryTypeDef] + status: str + createdAt: datetime + createdBy: str + ratingCount: int + updatedAt: Optional[datetime] = None + updatedBy: Optional[str] = None + isRatedByUser: Optional[bool] = None + userCount: Optional[int] = None + +class PredictQAppInputOptionsTypeDef(BaseModel): + conversation: Optional[Sequence[ConversationMessageTypeDef]] = None + problemStatement: Optional[str] = None + +class CreateLibraryItemOutputTypeDef(BaseModel): + libraryItemId: str + status: str + createdAt: datetime + createdBy: str + updatedAt: datetime + updatedBy: str + ratingCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQAppOutputTypeDef(BaseModel): + appId: str + appArn: str + title: str + description: str + initialPrompt: str + appVersion: int + status: AppStatusType + createdAt: datetime + createdBy: str + updatedAt: datetime + updatedBy: str + requiredCapabilities: List[AppRequiredCapabilityType] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetLibraryItemOutputTypeDef(BaseModel): + libraryItemId: str + appId: str + appVersion: int + categories: List[CategoryTypeDef] + status: str + createdAt: datetime + createdBy: str + updatedAt: datetime + updatedBy: str + ratingCount: int + isRatedByUser: bool + userCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetQAppSessionOutputTypeDef(BaseModel): + sessionId: str + sessionArn: str + status: ExecutionStatusType + cardStatus: Dict[str, CardStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportDocumentOutputTypeDef(BaseModel): + fileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartQAppSessionOutputTypeDef(BaseModel): + sessionId: str + sessionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLibraryItemOutputTypeDef(BaseModel): + libraryItemId: str + appId: str + appVersion: int + categories: List[CategoryTypeDef] + status: str + createdAt: datetime + createdBy: str + updatedAt: datetime + updatedBy: str + ratingCount: int + isRatedByUser: bool + userCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateQAppOutputTypeDef(BaseModel): + appId: str + appArn: str + title: str + description: str + initialPrompt: str + appVersion: int + status: AppStatusType + createdAt: datetime + createdBy: str + updatedAt: datetime + updatedBy: str + requiredCapabilities: List[AppRequiredCapabilityType] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateQAppSessionOutputTypeDef(BaseModel): + sessionId: str + sessionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentAttributeOutputTypeDef(BaseModel): + name: str + value: DocumentAttributeValueOutputTypeDef + +class ListLibraryItemsInputListLibraryItemsPaginateTypeDef(BaseModel): + instanceId: str + categoryId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQAppsInputListQAppsPaginateTypeDef(BaseModel): + instanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQAppsOutputTypeDef(BaseModel): + apps: List[UserAppItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AppDefinitionInputOutputTypeDef(BaseModel): + cards: List[CardInputTypeDef] + initialPrompt: Optional[str] = None + +class AppDefinitionInputTypeDef(BaseModel): + cards: Sequence[CardInputTypeDef] + initialPrompt: Optional[str] = None + +class AppDefinitionTypeDef(BaseModel): + appDefinitionVersion: str + cards: List[CardTypeDef] + canEdit: Optional[bool] = None + +class ListLibraryItemsOutputTypeDef(BaseModel): + libraryItems: List[LibraryItemMemberTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PredictQAppInputRequestTypeDef(BaseModel): + instanceId: str + options: Optional[PredictQAppInputOptionsTypeDef] = None + +class AttributeFilterOutputTypeDef(BaseModel): + andAllFilters: Optional[List[Dict[str, Any]]] = None + orAllFilters: Optional[List[Dict[str, Any]]] = None + notFilter: Optional[Dict[str, Any]] = None + equalsTo: Optional[DocumentAttributeOutputTypeDef] = None + containsAll: Optional[DocumentAttributeOutputTypeDef] = None + containsAny: Optional[DocumentAttributeOutputTypeDef] = None + greaterThan: Optional[DocumentAttributeOutputTypeDef] = None + greaterThanOrEquals: Optional[DocumentAttributeOutputTypeDef] = None + lessThan: Optional[DocumentAttributeOutputTypeDef] = None + lessThanOrEquals: Optional[DocumentAttributeOutputTypeDef] = None + +class PredictAppDefinitionTypeDef(BaseModel): + title: str + appDefinition: AppDefinitionInputOutputTypeDef + description: Optional[str] = None + +class CreateQAppInputRequestTypeDef(BaseModel): + instanceId: str + title: str + appDefinition: AppDefinitionInputTypeDef + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateQAppInputRequestTypeDef(BaseModel): + instanceId: str + appId: str + title: Optional[str] = None + description: Optional[str] = None + appDefinition: Optional[AppDefinitionInputTypeDef] = None + +class GetQAppOutputTypeDef(BaseModel): + appId: str + appArn: str + title: str + description: str + initialPrompt: str + appVersion: int + status: AppStatusType + createdAt: datetime + createdBy: str + updatedAt: datetime + updatedBy: str + requiredCapabilities: List[AppRequiredCapabilityType] + appDefinition: AppDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PredictQAppOutputTypeDef(BaseModel): + app: PredictAppDefinitionTypeDef + problemStatement: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/qapps_constants.py b/aws_resource_validator/pydantic_models/qapps_constants.py new file mode 100644 index 00000000..de653158 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qapps_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppRequiredCapabilityType = Literal["CreatorMode", "FileUpload", "PluginMode", "RetrievalMode"] +AppStatusType = Literal["DELETED", "DRAFT", "PUBLISHED"] +CardOutputSourceType = Literal["approved-sources", "llm"] +CardTypeType = Literal["file-upload", "q-plugin", "q-query", "text-input"] +DocumentScopeType = Literal["APPLICATION", "SESSION"] +ExecutionStatusType = Literal["COMPLETED", "IN_PROGRESS", "WAITING"] +LibraryItemStatusType = Literal["DISABLED", "PUBLISHED"] +ListLibraryItemsPaginatorName = Literal["list_library_items"] +ListQAppsPaginatorName = Literal["list_q_apps"] +PluginTypeType = Literal["CUSTOM", "JIRA", "SALESFORCE", "SERVICE_NOW", "ZENDESK"] +SenderType = Literal["SYSTEM", "USER"] +QAppsServiceName = Literal["qapps"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_library_items", "list_q_apps"] +AppDefinitionInputUnionTypeDef = Union['AppDefinitionInputTypeDef', 'AppDefinitionInputOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/qbusiness_classes.py b/aws_resource_validator/pydantic_models/qbusiness_classes.py new file mode 100644 index 00000000..d1957729 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qbusiness_classes.py @@ -0,0 +1,1222 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.qbusiness_constants import * + +class S3TypeDef(BaseModel): + bucket: str + key: str + +class ActionExecutionPayloadFieldExtraOutputTypeDef(BaseModel): + value: Dict[str, Any] + +class ActionExecutionPayloadFieldOutputTypeDef(BaseModel): + value: Dict[str, Any] + +class ActionExecutionPayloadFieldTypeDef(BaseModel): + value: Mapping[str, Any] + +class ActionReviewPayloadFieldAllowedValueTypeDef(BaseModel): + value: Optional[Dict[str, Any]] = None + displayValue: Optional[Dict[str, Any]] = None + +class ApplicationTypeDef(BaseModel): + displayName: Optional[str] = None + applicationId: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + status: Optional[ApplicationStatusType] = None + +class AppliedAttachmentsConfigurationTypeDef(BaseModel): + attachmentsControlMode: Optional[AttachmentsControlModeType] = None + +class AppliedCreatorModeConfigurationTypeDef(BaseModel): + creatorModeControl: CreatorModeControlType + +class ErrorDetailTypeDef(BaseModel): + errorMessage: Optional[str] = None + errorCode: Optional[ErrorCodeType] = None + +class AttachmentsConfigurationTypeDef(BaseModel): + attachmentsControlMode: AttachmentsControlModeType + +class AuthChallengeRequestTypeDef(BaseModel): + authorizationUrl: str + +class AuthChallengeResponseTypeDef(BaseModel): + responseMap: Mapping[str, str] + +class BasicAuthConfigurationTypeDef(BaseModel): + secretArn: str + roleArn: str + +class DeleteDocumentTypeDef(BaseModel): + documentId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BlockedPhrasesConfigurationTypeDef(BaseModel): + blockedPhrases: Optional[List[str]] = None + systemMessageOverride: Optional[str] = None + +class BlockedPhrasesConfigurationUpdateTypeDef(BaseModel): + blockedPhrasesToCreateOrUpdate: Optional[Sequence[str]] = None + blockedPhrasesToDelete: Optional[Sequence[str]] = None + systemMessageOverride: Optional[str] = None + +class PluginConfigurationTypeDef(BaseModel): + pluginId: str + +class ContentBlockerRuleTypeDef(BaseModel): + systemMessageOverride: Optional[str] = None + +class EligibleDataSourceTypeDef(BaseModel): + indexId: Optional[str] = None + dataSourceId: Optional[str] = None + +class ConversationTypeDef(BaseModel): + conversationId: Optional[str] = None + title: Optional[str] = None + startTime: Optional[datetime] = None + +class EncryptionConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + +class PersonalizationConfigurationTypeDef(BaseModel): + personalizationControlMode: PersonalizationControlModeType + +class QAppsConfigurationTypeDef(BaseModel): + qAppsControlMode: QAppsControlModeType + +class TagTypeDef(BaseModel): + key: str + value: str + +class DataSourceVpcConfigurationTypeDef(BaseModel): + subnetIds: Sequence[str] + securityGroupIds: Sequence[str] + +class IndexCapacityConfigurationTypeDef(BaseModel): + units: Optional[int] = None + +class UserAliasTypeDef(BaseModel): + userId: str + indexId: Optional[str] = None + dataSourceId: Optional[str] = None + +class CreatorModeConfigurationTypeDef(BaseModel): + creatorModeControl: CreatorModeControlType + +class DataSourceSyncJobMetricsTypeDef(BaseModel): + documentsAdded: Optional[str] = None + documentsModified: Optional[str] = None + documentsDeleted: Optional[str] = None + documentsFailed: Optional[str] = None + documentsScanned: Optional[str] = None + +class DataSourceTypeDef(BaseModel): + displayName: Optional[str] = None + dataSourceId: Optional[str] = None + type: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + status: Optional[DataSourceStatusType] = None + +class DataSourceVpcConfigurationOutputTypeDef(BaseModel): + subnetIds: List[str] + securityGroupIds: List[str] + +class DateAttributeBoostingConfigurationTypeDef(BaseModel): + boostingLevel: DocumentAttributeBoostingLevelType + boostingDurationInSeconds: Optional[int] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class DeleteChatControlsConfigurationRequestRequestTypeDef(BaseModel): + applicationId: str + +class DeleteConversationRequestRequestTypeDef(BaseModel): + conversationId: str + applicationId: str + userId: Optional[str] = None + +class DeleteDataSourceRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + dataSourceId: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + groupName: str + dataSourceId: Optional[str] = None + +class DeleteIndexRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + +class DeletePluginRequestRequestTypeDef(BaseModel): + applicationId: str + pluginId: str + +class DeleteRetrieverRequestRequestTypeDef(BaseModel): + applicationId: str + retrieverId: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + applicationId: str + userId: str + +class DeleteWebExperienceRequestRequestTypeDef(BaseModel): + applicationId: str + webExperienceId: str + +class NumberAttributeBoostingConfigurationTypeDef(BaseModel): + boostingLevel: DocumentAttributeBoostingLevelType + boostingType: Optional[NumberAttributeBoostingTypeType] = None + +class StringAttributeBoostingConfigurationOutputTypeDef(BaseModel): + boostingLevel: DocumentAttributeBoostingLevelType + attributeValueBoosting: Optional[Dict[str, StringAttributeValueBoostingLevelType]] = None + +class StringListAttributeBoostingConfigurationTypeDef(BaseModel): + boostingLevel: DocumentAttributeBoostingLevelType + +class StringAttributeBoostingConfigurationTypeDef(BaseModel): + boostingLevel: DocumentAttributeBoostingLevelType + attributeValueBoosting: Optional[Mapping[str, StringAttributeValueBoostingLevelType]] = None + +class DocumentAttributeValueOutputTypeDef(BaseModel): + stringValue: Optional[str] = None + stringListValue: Optional[List[str]] = None + longValue: Optional[int] = None + dateValue: Optional[datetime] = None + +class DocumentAttributeConfigurationTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[AttributeTypeType] = None + search: Optional[StatusType] = None + +class GetApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetChatControlsConfigurationRequestRequestTypeDef(BaseModel): + applicationId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetDataSourceRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + dataSourceId: str + +class GetGroupRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + groupName: str + dataSourceId: Optional[str] = None + +class GetIndexRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + +class GetPluginRequestRequestTypeDef(BaseModel): + applicationId: str + pluginId: str + +class GetRetrieverRequestRequestTypeDef(BaseModel): + applicationId: str + retrieverId: str + +class GetUserRequestRequestTypeDef(BaseModel): + applicationId: str + userId: str + +class GetWebExperienceRequestRequestTypeDef(BaseModel): + applicationId: str + webExperienceId: str + +class MemberGroupTypeDef(BaseModel): + groupName: str + type: Optional[MembershipTypeType] = None + +class MemberUserTypeDef(BaseModel): + userId: str + type: Optional[MembershipTypeType] = None + +class GroupSummaryTypeDef(BaseModel): + groupName: Optional[str] = None + +class TextDocumentStatisticsTypeDef(BaseModel): + indexedTextBytes: Optional[int] = None + indexedTextDocumentCount: Optional[int] = None + +class IndexTypeDef(BaseModel): + displayName: Optional[str] = None + indexId: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + status: Optional[IndexStatusType] = None + +class KendraIndexConfigurationTypeDef(BaseModel): + indexId: str + +class ListApplicationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListConversationsRequestRequestTypeDef(BaseModel): + applicationId: str + userId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDataSourcesRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDocumentsRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + dataSourceIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListIndicesRequestRequestTypeDef(BaseModel): + applicationId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListMessagesRequestRequestTypeDef(BaseModel): + conversationId: str + applicationId: str + userId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPluginsRequestRequestTypeDef(BaseModel): + applicationId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PluginTypeDef(BaseModel): + pluginId: Optional[str] = None + displayName: Optional[str] = None + type: Optional[PluginTypeType] = None + serverUrl: Optional[str] = None + state: Optional[PluginStateType] = None + buildStatus: Optional[PluginBuildStatusType] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + +class ListRetrieversRequestRequestTypeDef(BaseModel): + applicationId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RetrieverTypeDef(BaseModel): + applicationId: Optional[str] = None + retrieverId: Optional[str] = None + type: Optional[RetrieverTypeType] = None + status: Optional[RetrieverStatusType] = None + displayName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + +class ListWebExperiencesRequestRequestTypeDef(BaseModel): + applicationId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class WebExperienceTypeDef(BaseModel): + webExperienceId: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + defaultEndpoint: Optional[str] = None + status: Optional[WebExperienceStatusType] = None + +class OAuth2ClientCredentialConfigurationTypeDef(BaseModel): + secretArn: str + roleArn: str + +class PrincipalGroupTypeDef(BaseModel): + access: ReadAccessTypeType + name: Optional[str] = None + membershipType: Optional[MembershipTypeType] = None + +class PrincipalUserTypeDef(BaseModel): + access: ReadAccessTypeType + id: Optional[str] = None + membershipType: Optional[MembershipTypeType] = None + +class UsersAndGroupsExtraOutputTypeDef(BaseModel): + userIds: Optional[List[str]] = None + userGroups: Optional[List[str]] = None + +class UsersAndGroupsOutputTypeDef(BaseModel): + userIds: Optional[List[str]] = None + userGroups: Optional[List[str]] = None + +class UsersAndGroupsTypeDef(BaseModel): + userIds: Optional[Sequence[str]] = None + userGroups: Optional[Sequence[str]] = None + +class SamlConfigurationTypeDef(BaseModel): + metadataXML: str + roleArn: str + userIdAttribute: str + userGroupAttribute: Optional[str] = None + +class SnippetExcerptTypeDef(BaseModel): + text: Optional[str] = None + +class StartDataSourceSyncJobRequestRequestTypeDef(BaseModel): + dataSourceId: str + applicationId: str + indexId: str + +class StopDataSourceSyncJobRequestRequestTypeDef(BaseModel): + dataSourceId: str + applicationId: str + indexId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tagKeys: Sequence[str] + +class APISchemaTypeDef(BaseModel): + payload: Optional[str] = None + s3: Optional[S3TypeDef] = None + +class ActionExecutionExtraOutputTypeDef(BaseModel): + pluginId: str + payload: Dict[str, ActionExecutionPayloadFieldExtraOutputTypeDef] + payloadFieldNameSeparator: str + +class ActionExecutionOutputTypeDef(BaseModel): + pluginId: str + payload: Dict[str, ActionExecutionPayloadFieldOutputTypeDef] + payloadFieldNameSeparator: str + +class ActionExecutionTypeDef(BaseModel): + pluginId: str + payload: Mapping[str, ActionExecutionPayloadFieldTypeDef] + payloadFieldNameSeparator: str + +class ActionReviewPayloadFieldTypeDef(BaseModel): + displayName: Optional[str] = None + displayOrder: Optional[int] = None + displayDescription: Optional[str] = None + type: Optional[ActionPayloadFieldTypeType] = None + value: Optional[Dict[str, Any]] = None + allowedValues: Optional[List[ActionReviewPayloadFieldAllowedValueTypeDef]] = None + allowedFormat: Optional[str] = None + required: Optional[bool] = None + +class AttachmentInputTypeDef(BaseModel): + name: str + data: BlobTypeDef + +class DocumentContentTypeDef(BaseModel): + blob: Optional[BlobTypeDef] = None + s3: Optional[S3TypeDef] = None + +class AttachmentOutputTypeDef(BaseModel): + name: Optional[str] = None + status: Optional[AttachmentStatusType] = None + error: Optional[ErrorDetailTypeDef] = None + +class DocumentDetailsTypeDef(BaseModel): + documentId: Optional[str] = None + status: Optional[DocumentStatusType] = None + error: Optional[ErrorDetailTypeDef] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + +class FailedDocumentTypeDef(BaseModel): + id: Optional[str] = None + error: Optional[ErrorDetailTypeDef] = None + dataSourceId: Optional[str] = None + +class GroupStatusDetailTypeDef(BaseModel): + status: Optional[GroupStatusType] = None + lastUpdatedAt: Optional[datetime] = None + errorDetail: Optional[ErrorDetailTypeDef] = None + +class BatchDeleteDocumentRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + documents: Sequence[DeleteDocumentTypeDef] + dataSourceSyncId: Optional[str] = None + +class CreateApplicationResponseTypeDef(BaseModel): + applicationId: str + applicationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceResponseTypeDef(BaseModel): + dataSourceId: str + dataSourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIndexResponseTypeDef(BaseModel): + indexId: str + indexArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePluginResponseTypeDef(BaseModel): + pluginId: str + pluginArn: str + buildStatus: PluginBuildStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRetrieverResponseTypeDef(BaseModel): + retrieverId: str + retrieverArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWebExperienceResponseTypeDef(BaseModel): + webExperienceId: str + webExperienceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + nextToken: str + applications: List[ApplicationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDataSourceSyncJobResponseTypeDef(BaseModel): + executionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChatModeConfigurationTypeDef(BaseModel): + pluginConfiguration: Optional[PluginConfigurationTypeDef] = None + +class ContentRetrievalRuleExtraOutputTypeDef(BaseModel): + eligibleDataSources: Optional[List[EligibleDataSourceTypeDef]] = None + +class ContentRetrievalRuleOutputTypeDef(BaseModel): + eligibleDataSources: Optional[List[EligibleDataSourceTypeDef]] = None + +class ContentRetrievalRuleTypeDef(BaseModel): + eligibleDataSources: Optional[Sequence[EligibleDataSourceTypeDef]] = None + +class ListConversationsResponseTypeDef(BaseModel): + nextToken: str + conversations: List[ConversationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationResponseTypeDef(BaseModel): + displayName: str + applicationId: str + applicationArn: str + identityCenterApplicationArn: str + roleArn: str + status: ApplicationStatusType + description: str + encryptionConfiguration: EncryptionConfigurationTypeDef + createdAt: datetime + updatedAt: datetime + error: ErrorDetailTypeDef + attachmentsConfiguration: AppliedAttachmentsConfigurationTypeDef + qAppsConfiguration: QAppsConfigurationTypeDef + personalizationConfiguration: PersonalizationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + applicationId: str + identityCenterInstanceArn: Optional[str] = None + displayName: Optional[str] = None + description: Optional[str] = None + roleArn: Optional[str] = None + attachmentsConfiguration: Optional[AttachmentsConfigurationTypeDef] = None + qAppsConfiguration: Optional[QAppsConfigurationTypeDef] = None + personalizationConfiguration: Optional[PersonalizationConfigurationTypeDef] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + displayName: str + roleArn: Optional[str] = None + identityCenterInstanceArn: Optional[str] = None + description: Optional[str] = None + encryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + clientToken: Optional[str] = None + attachmentsConfiguration: Optional[AttachmentsConfigurationTypeDef] = None + qAppsConfiguration: Optional[QAppsConfigurationTypeDef] = None + personalizationConfiguration: Optional[PersonalizationConfigurationTypeDef] = None + +class CreateWebExperienceRequestRequestTypeDef(BaseModel): + applicationId: str + title: Optional[str] = None + subtitle: Optional[str] = None + welcomeMessage: Optional[str] = None + samplePromptsControlMode: Optional[WebExperienceSamplePromptsControlModeType] = None + roleArn: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + clientToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceARN: str + tags: Sequence[TagTypeDef] + +class CreateIndexRequestRequestTypeDef(BaseModel): + applicationId: str + displayName: str + type: Optional[IndexTypeType] = None + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + capacityConfiguration: Optional[IndexCapacityConfigurationTypeDef] = None + clientToken: Optional[str] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + applicationId: str + userId: str + userAliases: Optional[Sequence[UserAliasTypeDef]] = None + clientToken: Optional[str] = None + +class GetUserResponseTypeDef(BaseModel): + userAliases: List[UserAliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserRequestRequestTypeDef(BaseModel): + applicationId: str + userId: str + userAliasesToUpdate: Optional[Sequence[UserAliasTypeDef]] = None + userAliasesToDelete: Optional[Sequence[UserAliasTypeDef]] = None + +class UpdateUserResponseTypeDef(BaseModel): + userAliasesAdded: List[UserAliasTypeDef] + userAliasesUpdated: List[UserAliasTypeDef] + userAliasesDeleted: List[UserAliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceSyncJobTypeDef(BaseModel): + executionId: Optional[str] = None + startTime: Optional[datetime] = None + endTime: Optional[datetime] = None + status: Optional[DataSourceSyncJobStatusType] = None + error: Optional[ErrorDetailTypeDef] = None + dataSourceErrorCode: Optional[str] = None + metrics: Optional[DataSourceSyncJobMetricsTypeDef] = None + +class ListDataSourcesResponseTypeDef(BaseModel): + dataSources: List[DataSourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentAttributeBoostingConfigurationOutputTypeDef(BaseModel): + numberConfiguration: Optional[NumberAttributeBoostingConfigurationTypeDef] = None + stringConfiguration: Optional[StringAttributeBoostingConfigurationOutputTypeDef] = None + dateConfiguration: Optional[DateAttributeBoostingConfigurationTypeDef] = None + stringListConfiguration: Optional[StringListAttributeBoostingConfigurationTypeDef] = None + +class DocumentAttributeBoostingConfigurationTypeDef(BaseModel): + numberConfiguration: Optional[NumberAttributeBoostingConfigurationTypeDef] = None + stringConfiguration: Optional[StringAttributeBoostingConfigurationTypeDef] = None + dateConfiguration: Optional[DateAttributeBoostingConfigurationTypeDef] = None + stringListConfiguration: Optional[StringListAttributeBoostingConfigurationTypeDef] = None + +class DocumentAttributeConditionOutputTypeDef(BaseModel): + key: str + operator: DocumentEnrichmentConditionOperatorType + value: Optional[DocumentAttributeValueOutputTypeDef] = None + +class DocumentAttributeTargetOutputTypeDef(BaseModel): + key: str + value: Optional[DocumentAttributeValueOutputTypeDef] = None + attributeValueOperator: Optional[Literal["DELETE"]] = None + +class UpdateIndexRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + displayName: Optional[str] = None + description: Optional[str] = None + capacityConfiguration: Optional[IndexCapacityConfigurationTypeDef] = None + documentAttributeConfigurations: Optional[ Sequence[DocumentAttributeConfigurationTypeDef] ] = None + +class DocumentAttributeValueTypeDef(BaseModel): + stringValue: Optional[str] = None + stringListValue: Optional[Sequence[str]] = None + longValue: Optional[int] = None + dateValue: Optional[TimestampTypeDef] = None + +class ListDataSourceSyncJobsRequestRequestTypeDef(BaseModel): + dataSourceId: str + applicationId: str + indexId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + statusFilter: Optional[DataSourceSyncJobStatusType] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + updatedEarlierThan: TimestampTypeDef + dataSourceId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class MessageUsefulnessFeedbackTypeDef(BaseModel): + usefulness: MessageUsefulnessType + submittedAt: TimestampTypeDef + reason: Optional[MessageUsefulnessReasonType] = None + comment: Optional[str] = None + +class GetChatControlsConfigurationRequestGetChatControlsConfigurationPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConversationsRequestListConversationsPaginateTypeDef(BaseModel): + applicationId: str + userId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourceSyncJobsRequestListDataSourceSyncJobsPaginateTypeDef(BaseModel): + dataSourceId: str + applicationId: str + indexId: str + startTime: Optional[TimestampTypeDef] = None + endTime: Optional[TimestampTypeDef] = None + statusFilter: Optional[DataSourceSyncJobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourcesRequestListDataSourcesPaginateTypeDef(BaseModel): + applicationId: str + indexId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDocumentsRequestListDocumentsPaginateTypeDef(BaseModel): + applicationId: str + indexId: str + dataSourceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + applicationId: str + indexId: str + updatedEarlierThan: TimestampTypeDef + dataSourceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIndicesRequestListIndicesPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMessagesRequestListMessagesPaginateTypeDef(BaseModel): + conversationId: str + applicationId: str + userId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPluginsRequestListPluginsPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRetrieversRequestListRetrieversPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWebExperiencesRequestListWebExperiencesPaginateTypeDef(BaseModel): + applicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GroupMembersTypeDef(BaseModel): + memberGroups: Optional[Sequence[MemberGroupTypeDef]] = None + memberUsers: Optional[Sequence[MemberUserTypeDef]] = None + +class ListGroupsResponseTypeDef(BaseModel): + nextToken: str + items: List[GroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IndexStatisticsTypeDef(BaseModel): + textDocumentStatistics: Optional[TextDocumentStatisticsTypeDef] = None + +class ListIndicesResponseTypeDef(BaseModel): + nextToken: str + indices: List[IndexTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPluginsResponseTypeDef(BaseModel): + nextToken: str + plugins: List[PluginTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRetrieversResponseTypeDef(BaseModel): + retrievers: List[RetrieverTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebExperiencesResponseTypeDef(BaseModel): + webExperiences: List[WebExperienceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PluginAuthConfigurationOutputTypeDef(BaseModel): + basicAuthConfiguration: Optional[BasicAuthConfigurationTypeDef] = None + oAuth2ClientCredentialConfiguration: Optional[ OAuth2ClientCredentialConfigurationTypeDef ] = None + noAuthConfiguration: Optional[Dict[str, Any]] = None + +class PluginAuthConfigurationTypeDef(BaseModel): + basicAuthConfiguration: Optional[BasicAuthConfigurationTypeDef] = None + oAuth2ClientCredentialConfiguration: Optional[ OAuth2ClientCredentialConfigurationTypeDef ] = None + noAuthConfiguration: Optional[Mapping[str, Any]] = None + +class PrincipalTypeDef(BaseModel): + user: Optional[PrincipalUserTypeDef] = None + group: Optional[PrincipalGroupTypeDef] = None + +class WebExperienceAuthConfigurationTypeDef(BaseModel): + samlConfiguration: Optional[SamlConfigurationTypeDef] = None + +class TextSegmentTypeDef(BaseModel): + beginOffset: Optional[int] = None + endOffset: Optional[int] = None + snippetExcerpt: Optional[SnippetExcerptTypeDef] = None + +class CustomPluginConfigurationTypeDef(BaseModel): + description: str + apiSchemaType: Literal["OPEN_API_V3"] + apiSchema: APISchemaTypeDef + +class ActionReviewTypeDef(BaseModel): + pluginId: Optional[str] = None + pluginType: Optional[PluginTypeType] = None + payload: Optional[Dict[str, ActionReviewPayloadFieldTypeDef]] = None + payloadFieldNameSeparator: Optional[str] = None + +class ListDocumentsResponseTypeDef(BaseModel): + documentDetailList: List[DocumentDetailsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteDocumentResponseTypeDef(BaseModel): + failedDocuments: List[FailedDocumentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutDocumentResponseTypeDef(BaseModel): + failedDocuments: List[FailedDocumentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupResponseTypeDef(BaseModel): + status: GroupStatusDetailTypeDef + statusHistory: List[GroupStatusDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ChatSyncInputRequestTypeDef(BaseModel): + applicationId: str + userId: Optional[str] = None + userGroups: Optional[Sequence[str]] = None + userMessage: Optional[str] = None + attachments: Optional[Sequence[AttachmentInputTypeDef]] = None + actionExecution: Optional[ActionExecutionTypeDef] = None + authChallengeResponse: Optional[AuthChallengeResponseTypeDef] = None + conversationId: Optional[str] = None + parentMessageId: Optional[str] = None + attributeFilter: Optional["AttributeFilterTypeDef"] = None + chatMode: Optional[ChatModeType] = None + chatModeConfiguration: Optional[ChatModeConfigurationTypeDef] = None + clientToken: Optional[str] = None + +class RuleConfigurationExtraOutputTypeDef(BaseModel): + contentBlockerRule: Optional[ContentBlockerRuleTypeDef] = None + contentRetrievalRule: Optional[ContentRetrievalRuleExtraOutputTypeDef] = None + +class RuleConfigurationOutputTypeDef(BaseModel): + contentBlockerRule: Optional[ContentBlockerRuleTypeDef] = None + contentRetrievalRule: Optional[ContentRetrievalRuleOutputTypeDef] = None + +class RuleConfigurationTypeDef(BaseModel): + contentBlockerRule: Optional[ContentBlockerRuleTypeDef] = None + contentRetrievalRule: Optional[ContentRetrievalRuleTypeDef] = None + +class ListDataSourceSyncJobsResponseTypeDef(BaseModel): + history: List[DataSourceSyncJobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NativeIndexConfigurationOutputTypeDef(BaseModel): + indexId: str + boostingOverride: Optional[ Dict[str, DocumentAttributeBoostingConfigurationOutputTypeDef] = None + +class NativeIndexConfigurationTypeDef(BaseModel): + indexId: str + boostingOverride: Optional[ Mapping[str, DocumentAttributeBoostingConfigurationTypeDef] = None + +class HookConfigurationOutputTypeDef(BaseModel): + invocationCondition: Optional[DocumentAttributeConditionOutputTypeDef] = None + lambdaArn: Optional[str] = None + s3BucketName: Optional[str] = None + roleArn: Optional[str] = None + +class InlineDocumentEnrichmentConfigurationOutputTypeDef(BaseModel): + condition: Optional[DocumentAttributeConditionOutputTypeDef] = None + target: Optional[DocumentAttributeTargetOutputTypeDef] = None + documentContentOperator: Optional[Literal["DELETE"]] = None + +class DocumentAttributeConditionTypeDef(BaseModel): + key: str + operator: DocumentEnrichmentConditionOperatorType + value: Optional[DocumentAttributeValueTypeDef] = None + +class DocumentAttributeTargetTypeDef(BaseModel): + key: str + value: Optional[DocumentAttributeValueTypeDef] = None + attributeValueOperator: Optional[Literal["DELETE"]] = None + +class DocumentAttributeTypeDef(BaseModel): + name: str + value: DocumentAttributeValueTypeDef + +class PutFeedbackRequestRequestTypeDef(BaseModel): + applicationId: str + conversationId: str + messageId: str + userId: Optional[str] = None + messageCopiedAt: Optional[TimestampTypeDef] = None + messageUsefulness: Optional[MessageUsefulnessFeedbackTypeDef] = None + +class PutGroupRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + groupName: str + type: MembershipTypeType + groupMembers: GroupMembersTypeDef + dataSourceId: Optional[str] = None + +class GetIndexResponseTypeDef(BaseModel): + applicationId: str + indexId: str + displayName: str + type: IndexTypeType + indexArn: str + status: IndexStatusType + description: str + createdAt: datetime + updatedAt: datetime + capacityConfiguration: IndexCapacityConfigurationTypeDef + documentAttributeConfigurations: List[DocumentAttributeConfigurationTypeDef] + error: ErrorDetailTypeDef + indexStatistics: IndexStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AccessControlTypeDef(BaseModel): + principals: Sequence[PrincipalTypeDef] + memberRelation: Optional[MemberRelationType] = None + +class GetWebExperienceResponseTypeDef(BaseModel): + applicationId: str + webExperienceId: str + webExperienceArn: str + defaultEndpoint: str + status: WebExperienceStatusType + createdAt: datetime + updatedAt: datetime + title: str + subtitle: str + welcomeMessage: str + samplePromptsControlMode: WebExperienceSamplePromptsControlModeType + roleArn: str + authenticationConfiguration: WebExperienceAuthConfigurationTypeDef + error: ErrorDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebExperienceRequestRequestTypeDef(BaseModel): + applicationId: str + webExperienceId: str + roleArn: Optional[str] = None + authenticationConfiguration: Optional[WebExperienceAuthConfigurationTypeDef] = None + title: Optional[str] = None + subtitle: Optional[str] = None + welcomeMessage: Optional[str] = None + samplePromptsControlMode: Optional[WebExperienceSamplePromptsControlModeType] = None + +class SourceAttributionTypeDef(BaseModel): + title: Optional[str] = None + snippet: Optional[str] = None + url: Optional[str] = None + citationNumber: Optional[int] = None + updatedAt: Optional[datetime] = None + textMessageSegments: Optional[List[TextSegmentTypeDef]] = None + +class CreatePluginRequestRequestTypeDef(BaseModel): + applicationId: str + displayName: str + type: PluginTypeType + authConfiguration: PluginAuthConfigurationTypeDef + serverUrl: Optional[str] = None + customPluginConfiguration: Optional[CustomPluginConfigurationTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + clientToken: Optional[str] = None + +class GetPluginResponseTypeDef(BaseModel): + applicationId: str + pluginId: str + displayName: str + type: PluginTypeType + serverUrl: str + authConfiguration: PluginAuthConfigurationOutputTypeDef + customPluginConfiguration: CustomPluginConfigurationTypeDef + buildStatus: PluginBuildStatusType + pluginArn: str + state: PluginStateType + createdAt: datetime + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePluginRequestRequestTypeDef(BaseModel): + applicationId: str + pluginId: str + displayName: Optional[str] = None + state: Optional[PluginStateType] = None + serverUrl: Optional[str] = None + customPluginConfiguration: Optional[CustomPluginConfigurationTypeDef] = None + authConfiguration: Optional[PluginAuthConfigurationTypeDef] = None + +class RuleExtraOutputTypeDef(BaseModel): + ruleType: RuleTypeType + includedUsersAndGroups: Optional[UsersAndGroupsExtraOutputTypeDef] = None + excludedUsersAndGroups: Optional[UsersAndGroupsExtraOutputTypeDef] = None + ruleConfiguration: Optional[RuleConfigurationExtraOutputTypeDef] = None + +class RuleOutputTypeDef(BaseModel): + ruleType: RuleTypeType + includedUsersAndGroups: Optional[UsersAndGroupsOutputTypeDef] = None + excludedUsersAndGroups: Optional[UsersAndGroupsOutputTypeDef] = None + ruleConfiguration: Optional[RuleConfigurationOutputTypeDef] = None + +class RuleTypeDef(BaseModel): + ruleType: RuleTypeType + includedUsersAndGroups: Optional[UsersAndGroupsTypeDef] = None + excludedUsersAndGroups: Optional[UsersAndGroupsTypeDef] = None + ruleConfiguration: Optional[RuleConfigurationTypeDef] = None + +class RetrieverConfigurationOutputTypeDef(BaseModel): + nativeIndexConfiguration: Optional[NativeIndexConfigurationOutputTypeDef] = None + kendraIndexConfiguration: Optional[KendraIndexConfigurationTypeDef] = None + +class RetrieverConfigurationTypeDef(BaseModel): + nativeIndexConfiguration: Optional[NativeIndexConfigurationTypeDef] = None + kendraIndexConfiguration: Optional[KendraIndexConfigurationTypeDef] = None + +class DocumentEnrichmentConfigurationOutputTypeDef(BaseModel): + inlineConfigurations: Optional[ List[InlineDocumentEnrichmentConfigurationOutputTypeDef] ] = None + preExtractionHookConfiguration: Optional[HookConfigurationOutputTypeDef] = None + postExtractionHookConfiguration: Optional[HookConfigurationOutputTypeDef] = None + +class HookConfigurationTypeDef(BaseModel): + invocationCondition: Optional[DocumentAttributeConditionTypeDef] = None + lambdaArn: Optional[str] = None + s3BucketName: Optional[str] = None + roleArn: Optional[str] = None + +class InlineDocumentEnrichmentConfigurationTypeDef(BaseModel): + condition: Optional[DocumentAttributeConditionTypeDef] = None + target: Optional[DocumentAttributeTargetTypeDef] = None + documentContentOperator: Optional[Literal["DELETE"]] = None + +class AttributeFilterTypeDef(BaseModel): + andAllFilters: Optional[Sequence[Dict[str, Any]]] = None + orAllFilters: Optional[Sequence[Dict[str, Any]]] = None + notFilter: Optional[Dict[str, Any]] = None + equalsTo: Optional[DocumentAttributeTypeDef] = None + containsAll: Optional[DocumentAttributeTypeDef] = None + containsAny: Optional[DocumentAttributeTypeDef] = None + greaterThan: Optional[DocumentAttributeTypeDef] = None + greaterThanOrEquals: Optional[DocumentAttributeTypeDef] = None + lessThan: Optional[DocumentAttributeTypeDef] = None + lessThanOrEquals: Optional[DocumentAttributeTypeDef] = None + +class AccessConfigurationTypeDef(BaseModel): + accessControls: Sequence[AccessControlTypeDef] + memberRelation: Optional[MemberRelationType] = None + +class ChatSyncOutputTypeDef(BaseModel): + conversationId: str + systemMessage: str + systemMessageId: str + userMessageId: str + actionReview: ActionReviewTypeDef + authChallengeRequest: AuthChallengeRequestTypeDef + sourceAttributions: List[SourceAttributionTypeDef] + failedAttachments: List[AttachmentOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MessageTypeDef(BaseModel): + messageId: Optional[str] = None + body: Optional[str] = None + time: Optional[datetime] = None + type: Optional[MessageTypeType] = None + attachments: Optional[List[AttachmentOutputTypeDef]] = None + sourceAttribution: Optional[List[SourceAttributionTypeDef]] = None + actionReview: Optional[ActionReviewTypeDef] = None + actionExecution: Optional[ActionExecutionOutputTypeDef] = None + +class TopicConfigurationExtraOutputTypeDef(BaseModel): + name: str + rules: List[RuleExtraOutputTypeDef] + description: Optional[str] = None + exampleChatMessages: Optional[List[str]] = None + +class TopicConfigurationOutputTypeDef(BaseModel): + name: str + rules: List[RuleOutputTypeDef] + description: Optional[str] = None + exampleChatMessages: Optional[List[str]] = None + +class TopicConfigurationTypeDef(BaseModel): + name: str + rules: Sequence[RuleTypeDef] + description: Optional[str] = None + exampleChatMessages: Optional[Sequence[str]] = None + +class GetRetrieverResponseTypeDef(BaseModel): + applicationId: str + retrieverId: str + retrieverArn: str + type: RetrieverTypeType + status: RetrieverStatusType + displayName: str + configuration: RetrieverConfigurationOutputTypeDef + roleArn: str + createdAt: datetime + updatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRetrieverRequestRequestTypeDef(BaseModel): + applicationId: str + type: RetrieverTypeType + displayName: str + configuration: RetrieverConfigurationTypeDef + roleArn: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateRetrieverRequestRequestTypeDef(BaseModel): + applicationId: str + retrieverId: str + configuration: Optional[RetrieverConfigurationTypeDef] = None + displayName: Optional[str] = None + roleArn: Optional[str] = None + +class GetDataSourceResponseTypeDef(BaseModel): + applicationId: str + indexId: str + dataSourceId: str + dataSourceArn: str + displayName: str + type: str + configuration: Dict[str, Any] + vpcConfiguration: DataSourceVpcConfigurationOutputTypeDef + createdAt: datetime + updatedAt: datetime + description: str + status: DataSourceStatusType + syncSchedule: str + roleArn: str + error: ErrorDetailTypeDef + documentEnrichmentConfiguration: DocumentEnrichmentConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentEnrichmentConfigurationTypeDef(BaseModel): + inlineConfigurations: Optional[Sequence[InlineDocumentEnrichmentConfigurationTypeDef]] = None + preExtractionHookConfiguration: Optional[HookConfigurationTypeDef] = None + postExtractionHookConfiguration: Optional[HookConfigurationTypeDef] = None + +class ListMessagesResponseTypeDef(BaseModel): + messages: List[MessageTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChatControlsConfigurationResponseTypeDef(BaseModel): + responseScope: ResponseScopeType + blockedPhrases: BlockedPhrasesConfigurationTypeDef + topicConfigurations: List[TopicConfigurationExtraOutputTypeDef] + creatorModeConfiguration: AppliedCreatorModeConfigurationTypeDef + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + displayName: str + configuration: Mapping[str, Any] + vpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + description: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + syncSchedule: Optional[str] = None + roleArn: Optional[str] = None + clientToken: Optional[str] = None + documentEnrichmentConfiguration: Optional[DocumentEnrichmentConfigurationTypeDef] = None + +class DocumentTypeDef(BaseModel): + id: str + attributes: Optional[Sequence[DocumentAttributeTypeDef]] = None + content: Optional[DocumentContentTypeDef] = None + contentType: Optional[ContentTypeType] = None + title: Optional[str] = None + accessConfiguration: Optional[AccessConfigurationTypeDef] = None + documentEnrichmentConfiguration: Optional[DocumentEnrichmentConfigurationTypeDef] = None + +class UpdateDataSourceRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + dataSourceId: str + displayName: Optional[str] = None + configuration: Optional[Mapping[str, Any]] = None + vpcConfiguration: Optional[DataSourceVpcConfigurationTypeDef] = None + description: Optional[str] = None + syncSchedule: Optional[str] = None + roleArn: Optional[str] = None + documentEnrichmentConfiguration: Optional[DocumentEnrichmentConfigurationTypeDef] = None + +class UpdateChatControlsConfigurationRequestRequestTypeDef(BaseModel): + applicationId: str + clientToken: Optional[str] = None + responseScope: Optional[ResponseScopeType] = None + blockedPhrasesConfigurationUpdate: Optional[BlockedPhrasesConfigurationUpdateTypeDef] = None + topicConfigurationsToCreateOrUpdate: Optional[ Sequence[TopicConfigurationUnionTypeDef] ] = None + topicConfigurationsToDelete: Optional[Sequence[TopicConfigurationUnionTypeDef]] = None + creatorModeConfiguration: Optional[CreatorModeConfigurationTypeDef] = None + +class BatchPutDocumentRequestRequestTypeDef(BaseModel): + applicationId: str + indexId: str + documents: Sequence[DocumentTypeDef] + roleArn: Optional[str] = None + dataSourceSyncId: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/qbusiness_constants.py b/aws_resource_validator/pydantic_models/qbusiness_constants.py new file mode 100644 index 00000000..f4e764fd --- /dev/null +++ b/aws_resource_validator/pydantic_models/qbusiness_constants.py @@ -0,0 +1,545 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +APISchemaTypeType = Literal["OPEN_API_V3"] +ActionPayloadFieldTypeType = Literal["ARRAY", "BOOLEAN", "NUMBER", "STRING"] +ApplicationStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +AttachmentStatusType = Literal["FAILED", "SUCCEEDED"] +AttachmentsControlModeType = Literal["DISABLED", "ENABLED"] +AttributeTypeType = Literal["DATE", "NUMBER", "STRING", "STRING_LIST"] +AttributeValueOperatorType = Literal["DELETE"] +ChatModeType = Literal["CREATOR_MODE", "PLUGIN_MODE", "RETRIEVAL_MODE"] +ContentTypeType = Literal["CSV", + "HTML", + "JSON", + "MD", + "MS_EXCEL", + "MS_WORD", + "PDF", + "PLAIN_TEXT", + "PPT", + "RTF", + "XML", + "XSLT",] +CreatorModeControlType = Literal["DISABLED", "ENABLED"] +DataSourceStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "PENDING_CREATION", "UPDATING"] +DataSourceSyncJobStatusType = Literal["ABORTED", "FAILED", "INCOMPLETE", "STOPPING", "SUCCEEDED", "SYNCING", "SYNCING_INDEXING"] +DocumentAttributeBoostingLevelType = Literal["HIGH", "LOW", "MEDIUM", "NONE", "VERY_HIGH"] +DocumentContentOperatorType = Literal["DELETE"] +DocumentEnrichmentConditionOperatorType = Literal["BEGINS_WITH", + "CONTAINS", + "EQUALS", + "EXISTS", + "GREATER_THAN", + "GREATER_THAN_OR_EQUALS", + "LESS_THAN", + "LESS_THAN_OR_EQUALS", + "NOT_CONTAINS", + "NOT_EQUALS", + "NOT_EXISTS",] +DocumentStatusType = Literal["DELETED", + "DELETING", + "DOCUMENT_FAILED_TO_INDEX", + "FAILED", + "INDEXED", + "PROCESSING", + "RECEIVED", + "UPDATED",] +ErrorCodeType = Literal["InternalError", "InvalidRequest", "ResourceInactive", "ResourceNotFound"] +GetChatControlsConfigurationPaginatorName = Literal["get_chat_controls_configuration"] +GroupStatusType = Literal["DELETED", "DELETING", "FAILED", "PROCESSING", "SUCCEEDED"] +IndexStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +IndexTypeType = Literal["ENTERPRISE", "STARTER"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListConversationsPaginatorName = Literal["list_conversations"] +ListDataSourceSyncJobsPaginatorName = Literal["list_data_source_sync_jobs"] +ListDataSourcesPaginatorName = Literal["list_data_sources"] +ListDocumentsPaginatorName = Literal["list_documents"] +ListGroupsPaginatorName = Literal["list_groups"] +ListIndicesPaginatorName = Literal["list_indices"] +ListMessagesPaginatorName = Literal["list_messages"] +ListPluginsPaginatorName = Literal["list_plugins"] +ListRetrieversPaginatorName = Literal["list_retrievers"] +ListWebExperiencesPaginatorName = Literal["list_web_experiences"] +MemberRelationType = Literal["AND", "OR"] +MembershipTypeType = Literal["DATASOURCE", "INDEX"] +MessageTypeType = Literal["SYSTEM", "USER"] +MessageUsefulnessReasonType = Literal["COMPLETE", + "FACTUALLY_CORRECT", + "HARMFUL_OR_UNSAFE", + "HELPFUL", + "INCORRECT_OR_MISSING_SOURCES", + "NOT_BASED_ON_DOCUMENTS", + "NOT_COMPLETE", + "NOT_CONCISE", + "NOT_FACTUALLY_CORRECT", + "NOT_HELPFUL", + "OTHER", + "RELEVANT_SOURCES",] +MessageUsefulnessType = Literal["NOT_USEFUL", "USEFUL"] +NumberAttributeBoostingTypeType = Literal["PRIORITIZE_LARGER_VALUES", "PRIORITIZE_SMALLER_VALUES"] +PersonalizationControlModeType = Literal["DISABLED", "ENABLED"] +PluginBuildStatusType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "READY", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +PluginStateType = Literal["DISABLED", "ENABLED"] +PluginTypeType = Literal["CUSTOM", "JIRA", "SALESFORCE", "SERVICE_NOW", "ZENDESK"] +QAppsControlModeType = Literal["DISABLED", "ENABLED"] +ReadAccessTypeType = Literal["ALLOW", "DENY"] +ResponseScopeType = Literal["ENTERPRISE_CONTENT_ONLY", "EXTENDED_KNOWLEDGE_ENABLED"] +RetrieverStatusType = Literal["ACTIVE", "CREATING", "FAILED"] +RetrieverTypeType = Literal["KENDRA_INDEX", "NATIVE_INDEX"] +RuleTypeType = Literal["CONTENT_BLOCKER_RULE", "CONTENT_RETRIEVAL_RULE"] +StatusType = Literal["DISABLED", "ENABLED"] +StringAttributeValueBoostingLevelType = Literal["HIGH", "LOW", "MEDIUM", "VERY_HIGH"] +WebExperienceSamplePromptsControlModeType = Literal["DISABLED", "ENABLED"] +WebExperienceStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "PENDING_AUTH_CONFIG"] +QBusinessServiceName = Literal["qbusiness"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_chat_controls_configuration", + "list_applications", + "list_conversations", + "list_data_source_sync_jobs", + "list_data_sources", + "list_documents", + "list_groups", + "list_indices", + "list_messages", + "list_plugins", + "list_retrievers", + "list_web_experiences",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +DataSourceVpcConfigurationUnionTypeDef = Union[ 'DataSourceVpcConfigurationTypeDef', 'DataSourceVpcConfigurationOutputTypeDef' ] +ActionExecutionUnionTypeDef = Union['ActionExecutionTypeDef', 'ActionExecutionExtraOutputTypeDef'] +PluginAuthConfigurationUnionTypeDef = Union[ 'PluginAuthConfigurationTypeDef', 'PluginAuthConfigurationOutputTypeDef' ] +RetrieverConfigurationUnionTypeDef = Union[ 'RetrieverConfigurationTypeDef', 'RetrieverConfigurationOutputTypeDef' ] +TopicConfigurationUnionTypeDef = Union[ 'TopicConfigurationTypeDef', 'TopicConfigurationExtraOutputTypeDef' ] +DocumentEnrichmentConfigurationUnionTypeDef = Union[ 'DocumentEnrichmentConfigurationTypeDef', 'DocumentEnrichmentConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/qconnect_classes.py b/aws_resource_validator/pydantic_models/qconnect_classes.py new file mode 100644 index 00000000..215be14a --- /dev/null +++ b/aws_resource_validator/pydantic_models/qconnect_classes.py @@ -0,0 +1,970 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.qconnect_constants import * + +class AmazonConnectGuideAssociationDataTypeDef(BaseModel): + flowId: Optional[str] = None + +class AppIntegrationsConfigurationExtraOutputTypeDef(BaseModel): + appIntegrationArn: str + objectFields: Optional[List[str]] = None + +class AppIntegrationsConfigurationOutputTypeDef(BaseModel): + appIntegrationArn: str + objectFields: Optional[List[str]] = None + +class AppIntegrationsConfigurationTypeDef(BaseModel): + appIntegrationArn: str + objectFields: Optional[Sequence[str]] = None + +class AssistantAssociationInputDataTypeDef(BaseModel): + knowledgeBaseId: Optional[str] = None + +class KnowledgeBaseAssociationDataTypeDef(BaseModel): + knowledgeBaseArn: Optional[str] = None + knowledgeBaseId: Optional[str] = None + +class AssistantCapabilityConfigurationTypeDef(BaseModel): + type: Optional[AssistantCapabilityTypeType] = None + +class AssistantIntegrationConfigurationTypeDef(BaseModel): + topicIntegrationArn: Optional[str] = None + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + +class ConnectConfigurationTypeDef(BaseModel): + instanceId: Optional[str] = None + +class RankingDataTypeDef(BaseModel): + relevanceLevel: Optional[RelevanceLevelType] = None + relevanceScore: Optional[float] = None + +class ContentDataTypeDef(BaseModel): + contentArn: str + contentId: str + contentType: str + knowledgeBaseArn: str + knowledgeBaseId: str + metadata: Dict[str, str] + name: str + revisionId: str + status: ContentStatusType + title: str + url: str + urlExpiry: datetime + linkOutUri: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class GenerativeContentFeedbackDataTypeDef(BaseModel): + relevance: RelevanceType + +class ContentReferenceTypeDef(BaseModel): + contentArn: Optional[str] = None + contentId: Optional[str] = None + knowledgeBaseArn: Optional[str] = None + knowledgeBaseId: Optional[str] = None + +class ContentSummaryTypeDef(BaseModel): + contentArn: str + contentId: str + contentType: str + knowledgeBaseArn: str + knowledgeBaseId: str + metadata: Dict[str, str] + name: str + revisionId: str + status: ContentStatusType + title: str + tags: Optional[Dict[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateContentRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + name: str + uploadId: str + clientToken: Optional[str] = None + metadata: Optional[Mapping[str, str]] = None + overrideLinkOutUri: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + title: Optional[str] = None + +class RenderingConfigurationTypeDef(BaseModel): + templateUri: Optional[str] = None + +class GroupingConfigurationTypeDef(BaseModel): + criteria: Optional[str] = None + values: Optional[Sequence[str]] = None + +class QuickResponseDataProviderTypeDef(BaseModel): + content: Optional[str] = None + +class GenerativeReferenceTypeDef(BaseModel): + generationId: Optional[str] = None + modelId: Optional[str] = None + +class DeleteAssistantAssociationRequestRequestTypeDef(BaseModel): + assistantAssociationId: str + assistantId: str + +class DeleteAssistantRequestRequestTypeDef(BaseModel): + assistantId: str + +class DeleteContentAssociationRequestRequestTypeDef(BaseModel): + contentAssociationId: str + contentId: str + knowledgeBaseId: str + +class DeleteContentRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + +class DeleteImportJobRequestRequestTypeDef(BaseModel): + importJobId: str + knowledgeBaseId: str + +class DeleteKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class DeleteQuickResponseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + quickResponseId: str + +class HighlightTypeDef(BaseModel): + beginOffsetInclusive: Optional[int] = None + endOffsetExclusive: Optional[int] = None + +class FilterTypeDef(BaseModel): + field: Literal["NAME"] + operator: Literal["EQUALS"] + value: str + +class GetAssistantAssociationRequestRequestTypeDef(BaseModel): + assistantAssociationId: str + assistantId: str + +class GetAssistantRequestRequestTypeDef(BaseModel): + assistantId: str + +class GetContentAssociationRequestRequestTypeDef(BaseModel): + contentAssociationId: str + contentId: str + knowledgeBaseId: str + +class GetContentRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + +class GetContentSummaryRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + +class GetImportJobRequestRequestTypeDef(BaseModel): + importJobId: str + knowledgeBaseId: str + +class GetKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class GetQuickResponseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + quickResponseId: str + +class GetRecommendationsRequestRequestTypeDef(BaseModel): + assistantId: str + sessionId: str + maxResults: Optional[int] = None + waitTimeSeconds: Optional[int] = None + +class GetSessionRequestRequestTypeDef(BaseModel): + assistantId: str + sessionId: str + +class GroupingConfigurationExtraOutputTypeDef(BaseModel): + criteria: Optional[str] = None + values: Optional[List[str]] = None + +class GroupingConfigurationOutputTypeDef(BaseModel): + criteria: Optional[str] = None + values: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssistantAssociationsRequestRequestTypeDef(BaseModel): + assistantId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAssistantsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListContentAssociationsRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListContentsRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImportJobsRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListKnowledgeBasesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListQuickResponsesRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QuickResponseSummaryTypeDef(BaseModel): + contentType: str + createdTime: datetime + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + channels: Optional[List[str]] = None + description: Optional[str] = None + isActive: Optional[bool] = None + lastModifiedBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class NotifyRecommendationsReceivedErrorTypeDef(BaseModel): + message: Optional[str] = None + recommendationId: Optional[str] = None + +class NotifyRecommendationsReceivedRequestRequestTypeDef(BaseModel): + assistantId: str + recommendationIds: Sequence[str] + sessionId: str + +class TagConditionTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class QueryConditionItemTypeDef(BaseModel): + comparator: Literal["EQUALS"] + field: Literal["RESULT_TYPE"] + value: str + +class QueryRecommendationTriggerDataTypeDef(BaseModel): + text: Optional[str] = None + +class QuickResponseContentProviderTypeDef(BaseModel): + content: Optional[str] = None + +class QuickResponseFilterFieldTypeDef(BaseModel): + name: str + operator: QuickResponseFilterOperatorType + includeNoExistence: Optional[bool] = None + values: Optional[Sequence[str]] = None + +class QuickResponseOrderFieldTypeDef(BaseModel): + name: str + order: Optional[OrderType] = None + +class QuickResponseQueryFieldTypeDef(BaseModel): + name: str + operator: QuickResponseQueryOperatorType + values: Sequence[str] + allowFuzziness: Optional[bool] = None + priority: Optional[PriorityType] = None + +class RemoveKnowledgeBaseTemplateUriRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class SessionSummaryTypeDef(BaseModel): + assistantArn: str + assistantId: str + sessionArn: str + sessionId: str + +class SessionIntegrationConfigurationTypeDef(BaseModel): + topicIntegrationArn: Optional[str] = None + +class StartContentUploadRequestRequestTypeDef(BaseModel): + contentType: str + knowledgeBaseId: str + presignedUrlTimeToLive: Optional[int] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateContentRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + metadata: Optional[Mapping[str, str]] = None + overrideLinkOutUri: Optional[str] = None + removeOverrideLinkOutUri: Optional[bool] = None + revisionId: Optional[str] = None + title: Optional[str] = None + uploadId: Optional[str] = None + +class UpdateKnowledgeBaseTemplateUriRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + templateUri: str + +class ContentAssociationContentsTypeDef(BaseModel): + amazonConnectGuideAssociation: Optional[AmazonConnectGuideAssociationDataTypeDef] = None + +class SourceConfigurationExtraOutputTypeDef(BaseModel): + appIntegrations: Optional[AppIntegrationsConfigurationExtraOutputTypeDef] = None + +class SourceConfigurationOutputTypeDef(BaseModel): + appIntegrations: Optional[AppIntegrationsConfigurationOutputTypeDef] = None + +class SourceConfigurationTypeDef(BaseModel): + appIntegrations: Optional[AppIntegrationsConfigurationTypeDef] = None + +class CreateAssistantAssociationRequestRequestTypeDef(BaseModel): + assistantId: str + association: AssistantAssociationInputDataTypeDef + associationType: Literal["KNOWLEDGE_BASE"] + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class AssistantAssociationOutputDataTypeDef(BaseModel): + knowledgeBaseAssociation: Optional[KnowledgeBaseAssociationDataTypeDef] = None + +class AssistantDataTypeDef(BaseModel): + assistantArn: str + assistantId: str + name: str + status: AssistantStatusType + type: Literal["AGENT"] + capabilityConfiguration: Optional[AssistantCapabilityConfigurationTypeDef] = None + description: Optional[str] = None + integrationConfiguration: Optional[AssistantIntegrationConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class AssistantSummaryTypeDef(BaseModel): + assistantArn: str + assistantId: str + name: str + status: AssistantStatusType + type: Literal["AGENT"] + capabilityConfiguration: Optional[AssistantCapabilityConfigurationTypeDef] = None + description: Optional[str] = None + integrationConfiguration: Optional[AssistantIntegrationConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateAssistantRequestRequestTypeDef(BaseModel): + name: str + type: Literal["AGENT"] + clientToken: Optional[str] = None + description: Optional[str] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class ConfigurationTypeDef(BaseModel): + connectConfiguration: Optional[ConnectConfigurationTypeDef] = None + +class GenerativeDataDetailsTypeDef(BaseModel): + completion: str + rankingData: RankingDataTypeDef + references: List["DataSummaryTypeDef"] + +class ContentFeedbackDataTypeDef(BaseModel): + generativeContentFeedbackData: Optional[GenerativeContentFeedbackDataTypeDef] = None + +class CreateContentResponseTypeDef(BaseModel): + content: ContentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContentResponseTypeDef(BaseModel): + content: ContentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContentSummaryResponseTypeDef(BaseModel): + contentSummary: ContentSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListContentsResponseTypeDef(BaseModel): + contentSummaries: List[ContentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchContentResponseTypeDef(BaseModel): + contentSummaries: List[ContentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartContentUploadResponseTypeDef(BaseModel): + headersToInclude: Dict[str, str] + uploadId: str + url: str + urlExpiry: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContentResponseTypeDef(BaseModel): + content: ContentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQuickResponseRequestRequestTypeDef(BaseModel): + content: QuickResponseDataProviderTypeDef + knowledgeBaseId: str + name: str + channels: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + contentType: Optional[str] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationTypeDef] = None + isActive: Optional[bool] = None + language: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateQuickResponseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + quickResponseId: str + channels: Optional[Sequence[str]] = None + content: Optional[QuickResponseDataProviderTypeDef] = None + contentType: Optional[str] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationTypeDef] = None + isActive: Optional[bool] = None + language: Optional[str] = None + name: Optional[str] = None + removeDescription: Optional[bool] = None + removeGroupingConfiguration: Optional[bool] = None + removeShortcutKey: Optional[bool] = None + shortcutKey: Optional[str] = None + +class DataReferenceTypeDef(BaseModel): + contentReference: Optional[ContentReferenceTypeDef] = None + generativeReference: Optional[GenerativeReferenceTypeDef] = None + +class DocumentTextTypeDef(BaseModel): + highlights: Optional[List[HighlightTypeDef]] = None + text: Optional[str] = None + +class SearchExpressionTypeDef(BaseModel): + filters: Sequence[FilterTypeDef] + +class ListAssistantAssociationsRequestListAssistantAssociationsPaginateTypeDef(BaseModel): + assistantId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssistantsRequestListAssistantsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContentAssociationsRequestListContentAssociationsPaginateTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContentsRequestListContentsPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportJobsRequestListImportJobsPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKnowledgeBasesRequestListKnowledgeBasesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQuickResponsesRequestListQuickResponsesPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQuickResponsesResponseTypeDef(BaseModel): + nextToken: str + quickResponseSummaries: List[QuickResponseSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NotifyRecommendationsReceivedResponseTypeDef(BaseModel): + errors: List[NotifyRecommendationsReceivedErrorTypeDef] + recommendationIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class OrConditionOutputTypeDef(BaseModel): + andConditions: Optional[List[TagConditionTypeDef]] = None + tagCondition: Optional[TagConditionTypeDef] = None + +class OrConditionTypeDef(BaseModel): + andConditions: Optional[Sequence[TagConditionTypeDef]] = None + tagCondition: Optional[TagConditionTypeDef] = None + +class QueryConditionTypeDef(BaseModel): + single: Optional[QueryConditionItemTypeDef] = None + +class RecommendationTriggerDataTypeDef(BaseModel): + query: Optional[QueryRecommendationTriggerDataTypeDef] = None + +class QuickResponseContentsTypeDef(BaseModel): + markdown: Optional[QuickResponseContentProviderTypeDef] = None + plainText: Optional[QuickResponseContentProviderTypeDef] = None + +class QuickResponseSearchExpressionTypeDef(BaseModel): + filters: Optional[Sequence[QuickResponseFilterFieldTypeDef]] = None + orderOnField: Optional[QuickResponseOrderFieldTypeDef] = None + queries: Optional[Sequence[QuickResponseQueryFieldTypeDef]] = None + +class SearchSessionsResponseTypeDef(BaseModel): + nextToken: str + sessionSummaries: List[SessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ContentAssociationDataTypeDef(BaseModel): + associationData: ContentAssociationContentsTypeDef + associationType: Literal["AMAZON_CONNECT_GUIDE"] + contentArn: str + contentAssociationArn: str + contentAssociationId: str + contentId: str + knowledgeBaseArn: str + knowledgeBaseId: str + tags: Optional[Dict[str, str]] = None + +class ContentAssociationSummaryTypeDef(BaseModel): + associationData: ContentAssociationContentsTypeDef + associationType: Literal["AMAZON_CONNECT_GUIDE"] + contentArn: str + contentAssociationArn: str + contentAssociationId: str + contentId: str + knowledgeBaseArn: str + knowledgeBaseId: str + tags: Optional[Dict[str, str]] = None + +class CreateContentAssociationRequestRequestTypeDef(BaseModel): + association: ContentAssociationContentsTypeDef + associationType: Literal["AMAZON_CONNECT_GUIDE"] + contentId: str + knowledgeBaseId: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class KnowledgeBaseDataTypeDef(BaseModel): + knowledgeBaseArn: str + knowledgeBaseId: str + knowledgeBaseType: KnowledgeBaseTypeType + name: str + status: KnowledgeBaseStatusType + description: Optional[str] = None + lastContentModificationTime: Optional[datetime] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class KnowledgeBaseSummaryTypeDef(BaseModel): + knowledgeBaseArn: str + knowledgeBaseId: str + knowledgeBaseType: KnowledgeBaseTypeType + name: str + status: KnowledgeBaseStatusType + description: Optional[str] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseType: KnowledgeBaseTypeType + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class AssistantAssociationDataTypeDef(BaseModel): + assistantArn: str + assistantAssociationArn: str + assistantAssociationId: str + assistantId: str + associationData: AssistantAssociationOutputDataTypeDef + associationType: Literal["KNOWLEDGE_BASE"] + tags: Optional[Dict[str, str]] = None + +class AssistantAssociationSummaryTypeDef(BaseModel): + assistantArn: str + assistantAssociationArn: str + assistantAssociationId: str + assistantId: str + associationData: AssistantAssociationOutputDataTypeDef + associationType: Literal["KNOWLEDGE_BASE"] + tags: Optional[Dict[str, str]] = None + +class CreateAssistantResponseTypeDef(BaseModel): + assistant: AssistantDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssistantResponseTypeDef(BaseModel): + assistant: AssistantDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssistantsResponseTypeDef(BaseModel): + assistantSummaries: List[AssistantSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExternalSourceConfigurationTypeDef(BaseModel): + configuration: ConfigurationTypeDef + source: Literal["AMAZON_CONNECT"] + +class PutFeedbackRequestRequestTypeDef(BaseModel): + assistantId: str + contentFeedback: ContentFeedbackDataTypeDef + targetId: str + targetType: TargetTypeType + +class PutFeedbackResponseTypeDef(BaseModel): + assistantArn: str + assistantId: str + contentFeedback: ContentFeedbackDataTypeDef + targetId: str + targetType: TargetTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DataSummaryTypeDef(BaseModel): + details: "DataDetailsTypeDef" + reference: DataReferenceTypeDef + +class DocumentTypeDef(BaseModel): + contentReference: ContentReferenceTypeDef + excerpt: Optional[DocumentTextTypeDef] = None + title: Optional[DocumentTextTypeDef] = None + +class TextDataTypeDef(BaseModel): + excerpt: Optional[DocumentTextTypeDef] = None + title: Optional[DocumentTextTypeDef] = None + +class SearchContentRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: SearchExpressionTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchContentRequestSearchContentPaginateTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: SearchExpressionTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchSessionsRequestRequestTypeDef(BaseModel): + assistantId: str + searchExpression: SearchExpressionTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchSessionsRequestSearchSessionsPaginateTypeDef(BaseModel): + assistantId: str + searchExpression: SearchExpressionTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class TagFilterOutputTypeDef(BaseModel): + andConditions: Optional[List[TagConditionTypeDef]] = None + orConditions: Optional[List[OrConditionOutputTypeDef]] = None + tagCondition: Optional[TagConditionTypeDef] = None + +class TagFilterTypeDef(BaseModel): + andConditions: Optional[Sequence[TagConditionTypeDef]] = None + orConditions: Optional[Sequence[OrConditionTypeDef]] = None + tagCondition: Optional[TagConditionTypeDef] = None + +class QueryAssistantRequestQueryAssistantPaginateTypeDef(BaseModel): + assistantId: str + queryText: str + queryCondition: Optional[Sequence[QueryConditionTypeDef]] = None + sessionId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class QueryAssistantRequestRequestTypeDef(BaseModel): + assistantId: str + queryText: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + queryCondition: Optional[Sequence[QueryConditionTypeDef]] = None + sessionId: Optional[str] = None + +class RecommendationTriggerTypeDef(BaseModel): + data: RecommendationTriggerDataTypeDef + id: str + recommendationIds: List[str] + source: RecommendationSourceTypeType + type: RecommendationTriggerTypeType + +class QuickResponseDataTypeDef(BaseModel): + contentType: str + createdTime: datetime + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + channels: Optional[List[str]] = None + contents: Optional[QuickResponseContentsTypeDef] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationOutputTypeDef] = None + isActive: Optional[bool] = None + language: Optional[str] = None + lastModifiedBy: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class QuickResponseSearchResultDataTypeDef(BaseModel): + contentType: str + contents: QuickResponseContentsTypeDef + createdTime: datetime + isActive: bool + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + attributesInterpolated: Optional[List[str]] = None + attributesNotInterpolated: Optional[List[str]] = None + channels: Optional[List[str]] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationOutputTypeDef] = None + language: Optional[str] = None + lastModifiedBy: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class SearchQuickResponsesRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: QuickResponseSearchExpressionTypeDef + attributes: Optional[Mapping[str, str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchQuickResponsesRequestSearchQuickResponsesPaginateTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: QuickResponseSearchExpressionTypeDef + attributes: Optional[Mapping[str, str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateContentAssociationResponseTypeDef(BaseModel): + contentAssociation: ContentAssociationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContentAssociationResponseTypeDef(BaseModel): + contentAssociation: ContentAssociationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListContentAssociationsResponseTypeDef(BaseModel): + contentAssociationSummaries: List[ContentAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKnowledgeBaseTemplateUriResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListKnowledgeBasesResponseTypeDef(BaseModel): + knowledgeBaseSummaries: List[KnowledgeBaseSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssistantAssociationResponseTypeDef(BaseModel): + assistantAssociation: AssistantAssociationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssistantAssociationResponseTypeDef(BaseModel): + assistantAssociation: AssistantAssociationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssistantAssociationsResponseTypeDef(BaseModel): + assistantAssociationSummaries: List[AssistantAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportJobDataTypeDef(BaseModel): + createdTime: datetime + importJobId: str + importJobType: Literal["QUICK_RESPONSES"] + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + status: ImportJobStatusType + uploadId: str + url: str + urlExpiry: datetime + externalSourceConfiguration: Optional[ExternalSourceConfigurationTypeDef] = None + failedRecordReport: Optional[str] = None + metadata: Optional[Dict[str, str]] = None + +class ImportJobSummaryTypeDef(BaseModel): + createdTime: datetime + importJobId: str + importJobType: Literal["QUICK_RESPONSES"] + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + status: ImportJobStatusType + uploadId: str + externalSourceConfiguration: Optional[ExternalSourceConfigurationTypeDef] = None + metadata: Optional[Dict[str, str]] = None + +class StartImportJobRequestRequestTypeDef(BaseModel): + importJobType: Literal["QUICK_RESPONSES"] + knowledgeBaseId: str + uploadId: str + clientToken: Optional[str] = None + externalSourceConfiguration: Optional[ExternalSourceConfigurationTypeDef] = None + metadata: Optional[Mapping[str, str]] = None + +class RecommendationDataTypeDef(BaseModel): + recommendationId: str + data: Optional["DataSummaryTypeDef"] = None + document: Optional[DocumentTypeDef] = None + relevanceLevel: Optional[RelevanceLevelType] = None + relevanceScore: Optional[float] = None + type: Optional[RecommendationTypeType] = None + +class ResultDataTypeDef(BaseModel): + resultId: str + data: Optional["DataSummaryTypeDef"] = None + document: Optional[DocumentTypeDef] = None + relevanceScore: Optional[float] = None + type: Optional[QueryResultTypeType] = None + +class ContentDataDetailsTypeDef(BaseModel): + rankingData: RankingDataTypeDef + textData: TextDataTypeDef + +class SourceContentDataDetailsTypeDef(BaseModel): + id: str + rankingData: RankingDataTypeDef + textData: TextDataTypeDef + type: Literal["KNOWLEDGE_CONTENT"] + +class SessionDataTypeDef(BaseModel): + name: str + sessionArn: str + sessionId: str + description: Optional[str] = None + integrationConfiguration: Optional[SessionIntegrationConfigurationTypeDef] = None + tagFilter: Optional[TagFilterOutputTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateSessionRequestRequestTypeDef(BaseModel): + assistantId: str + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + tagFilter: Optional[TagFilterTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateSessionRequestRequestTypeDef(BaseModel): + assistantId: str + sessionId: str + description: Optional[str] = None + tagFilter: Optional[TagFilterTypeDef] = None + +class CreateQuickResponseResponseTypeDef(BaseModel): + quickResponse: QuickResponseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetQuickResponseResponseTypeDef(BaseModel): + quickResponse: QuickResponseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateQuickResponseResponseTypeDef(BaseModel): + quickResponse: QuickResponseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchQuickResponsesResponseTypeDef(BaseModel): + nextToken: str + results: List[QuickResponseSearchResultDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetImportJobResponseTypeDef(BaseModel): + importJob: ImportJobDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportJobResponseTypeDef(BaseModel): + importJob: ImportJobDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListImportJobsResponseTypeDef(BaseModel): + importJobSummaries: List[ImportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationsResponseTypeDef(BaseModel): + recommendations: List[RecommendationDataTypeDef] + triggers: List[RecommendationTriggerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class QueryAssistantResponseTypeDef(BaseModel): + nextToken: str + results: List[ResultDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DataDetailsTypeDef(BaseModel): + contentData: Optional[ContentDataDetailsTypeDef] = None + generativeData: Optional["GenerativeDataDetailsTypeDef"] = None + sourceContentData: Optional[SourceContentDataDetailsTypeDef] = None + +class CreateSessionResponseTypeDef(BaseModel): + session: SessionDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSessionResponseTypeDef(BaseModel): + session: SessionDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSessionResponseTypeDef(BaseModel): + session: SessionDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/qconnect_constants.py b/aws_resource_validator/pydantic_models/qconnect_constants.py new file mode 100644 index 00000000..a486fae4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qconnect_constants.py @@ -0,0 +1,484 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssistantCapabilityTypeType = Literal["V1", "V2"] +AssistantStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS",] +AssistantTypeType = Literal["AGENT"] +AssociationTypeType = Literal["KNOWLEDGE_BASE"] +ContentAssociationTypeType = Literal["AMAZON_CONNECT_GUIDE"] +ContentStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_FAILED",] +ExternalSourceType = Literal["AMAZON_CONNECT"] +FilterFieldType = Literal["NAME"] +FilterOperatorType = Literal["EQUALS"] +ImportJobStatusType = Literal["COMPLETE", "DELETED", "DELETE_FAILED", "DELETE_IN_PROGRESS", "FAILED", "START_IN_PROGRESS"] +ImportJobTypeType = Literal["QUICK_RESPONSES"] +KnowledgeBaseStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS",] +KnowledgeBaseTypeType = Literal["CUSTOM", "EXTERNAL", "QUICK_RESPONSES"] +ListAssistantAssociationsPaginatorName = Literal["list_assistant_associations"] +ListAssistantsPaginatorName = Literal["list_assistants"] +ListContentAssociationsPaginatorName = Literal["list_content_associations"] +ListContentsPaginatorName = Literal["list_contents"] +ListImportJobsPaginatorName = Literal["list_import_jobs"] +ListKnowledgeBasesPaginatorName = Literal["list_knowledge_bases"] +ListQuickResponsesPaginatorName = Literal["list_quick_responses"] +OrderType = Literal["ASC", "DESC"] +PriorityType = Literal["HIGH", "LOW", "MEDIUM"] +QueryAssistantPaginatorName = Literal["query_assistant"] +QueryConditionComparisonOperatorType = Literal["EQUALS"] +QueryConditionFieldNameType = Literal["RESULT_TYPE"] +QueryResultTypeType = Literal["GENERATIVE_ANSWER", "KNOWLEDGE_CONTENT"] +QuickResponseFilterOperatorType = Literal["EQUALS", "PREFIX"] +QuickResponseQueryOperatorType = Literal["CONTAINS", "CONTAINS_AND_PREFIX"] +QuickResponseStatusType = Literal["CREATED", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +RecommendationSourceTypeType = Literal["ISSUE_DETECTION", "OTHER", "RULE_EVALUATION"] +RecommendationTriggerTypeType = Literal["GENERATIVE", "QUERY"] +RecommendationTypeType = Literal["GENERATIVE_ANSWER", "GENERATIVE_RESPONSE", "KNOWLEDGE_CONTENT"] +RelevanceLevelType = Literal["HIGH", "LOW", "MEDIUM"] +RelevanceType = Literal["HELPFUL", "NOT_HELPFUL"] +SearchContentPaginatorName = Literal["search_content"] +SearchQuickResponsesPaginatorName = Literal["search_quick_responses"] +SearchSessionsPaginatorName = Literal["search_sessions"] +SourceContentTypeType = Literal["KNOWLEDGE_CONTENT"] +TargetTypeType = Literal["RECOMMENDATION", "RESULT"] +QConnectServiceName = Literal["qconnect"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_assistant_associations", + "list_assistants", + "list_content_associations", + "list_contents", + "list_import_jobs", + "list_knowledge_bases", + "list_quick_responses", + "query_assistant", + "search_content", + "search_quick_responses", + "search_sessions",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +GroupingConfigurationUnionTypeDef = Union[ 'GroupingConfigurationTypeDef', 'GroupingConfigurationExtraOutputTypeDef' ] +SourceConfigurationUnionTypeDef = Union[ 'SourceConfigurationTypeDef', 'SourceConfigurationExtraOutputTypeDef' ] +TagFilterUnionTypeDef = Union['TagFilterTypeDef', 'TagFilterOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/qldb_classes.py b/aws_resource_validator/pydantic_models/qldb_classes.py new file mode 100644 index 00000000..2dc36048 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qldb_classes.py @@ -0,0 +1,261 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.qldb_constants import * + +class CancelJournalKinesisStreamRequestRequestTypeDef(BaseModel): + LedgerName: str + StreamId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateLedgerRequestRequestTypeDef(BaseModel): + Name: str + PermissionsMode: PermissionsModeType + Tags: Optional[Mapping[str, str]] = None + DeletionProtection: Optional[bool] = None + KmsKey: Optional[str] = None + +class DeleteLedgerRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeJournalKinesisStreamRequestRequestTypeDef(BaseModel): + LedgerName: str + StreamId: str + +class DescribeJournalS3ExportRequestRequestTypeDef(BaseModel): + Name: str + ExportId: str + +class DescribeLedgerRequestRequestTypeDef(BaseModel): + Name: str + +class LedgerEncryptionDescriptionTypeDef(BaseModel): + KmsKeyArn: str + EncryptionStatus: EncryptionStatusType + InaccessibleKmsKeyDateTime: Optional[datetime] = None + +class ValueHolderTypeDef(BaseModel): + IonText: Optional[str] = None + +class GetDigestRequestRequestTypeDef(BaseModel): + Name: str + +class KinesisConfigurationTypeDef(BaseModel): + StreamArn: str + AggregationEnabled: Optional[bool] = None + +class LedgerSummaryTypeDef(BaseModel): + Name: Optional[str] = None + State: Optional[LedgerStateType] = None + CreationDateTime: Optional[datetime] = None + +class ListJournalKinesisStreamsForLedgerRequestRequestTypeDef(BaseModel): + LedgerName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListJournalS3ExportsForLedgerRequestRequestTypeDef(BaseModel): + Name: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListJournalS3ExportsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLedgersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class S3EncryptionConfigurationTypeDef(BaseModel): + ObjectEncryptionType: S3ObjectEncryptionTypeType + KmsKeyArn: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateLedgerPermissionsModeRequestRequestTypeDef(BaseModel): + Name: str + PermissionsMode: PermissionsModeType + +class UpdateLedgerRequestRequestTypeDef(BaseModel): + Name: str + DeletionProtection: Optional[bool] = None + KmsKey: Optional[str] = None + +class CancelJournalKinesisStreamResponseTypeDef(BaseModel): + StreamId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLedgerResponseTypeDef(BaseModel): + Name: str + Arn: str + State: LedgerStateType + CreationDateTime: datetime + PermissionsMode: PermissionsModeType + DeletionProtection: bool + KmsKeyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportJournalToS3ResponseTypeDef(BaseModel): + ExportId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StreamJournalToKinesisResponseTypeDef(BaseModel): + StreamId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLedgerPermissionsModeResponseTypeDef(BaseModel): + Name: str + Arn: str + PermissionsMode: PermissionsModeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLedgerResponseTypeDef(BaseModel): + Name: str + Arn: str + State: LedgerStateType + CreationDateTime: datetime + PermissionsMode: PermissionsModeType + DeletionProtection: bool + EncryptionDescription: LedgerEncryptionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLedgerResponseTypeDef(BaseModel): + Name: str + Arn: str + State: LedgerStateType + CreationDateTime: datetime + DeletionProtection: bool + EncryptionDescription: LedgerEncryptionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlockRequestRequestTypeDef(BaseModel): + Name: str + BlockAddress: ValueHolderTypeDef + DigestTipAddress: Optional[ValueHolderTypeDef] = None + +class GetBlockResponseTypeDef(BaseModel): + Block: ValueHolderTypeDef + Proof: ValueHolderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDigestResponseTypeDef(BaseModel): + Digest: bytes + DigestTipAddress: ValueHolderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRevisionRequestRequestTypeDef(BaseModel): + Name: str + BlockAddress: ValueHolderTypeDef + DocumentId: str + DigestTipAddress: Optional[ValueHolderTypeDef] = None + +class GetRevisionResponseTypeDef(BaseModel): + Proof: ValueHolderTypeDef + Revision: ValueHolderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JournalKinesisStreamDescriptionTypeDef(BaseModel): + LedgerName: str + RoleArn: str + StreamId: str + Status: StreamStatusType + KinesisConfiguration: KinesisConfigurationTypeDef + StreamName: str + CreationTime: Optional[datetime] = None + InclusiveStartTime: Optional[datetime] = None + ExclusiveEndTime: Optional[datetime] = None + Arn: Optional[str] = None + ErrorCause: Optional[ErrorCauseType] = None + +class StreamJournalToKinesisRequestRequestTypeDef(BaseModel): + LedgerName: str + RoleArn: str + InclusiveStartTime: TimestampTypeDef + KinesisConfiguration: KinesisConfigurationTypeDef + StreamName: str + Tags: Optional[Mapping[str, str]] = None + ExclusiveEndTime: Optional[TimestampTypeDef] = None + +class ListLedgersResponseTypeDef(BaseModel): + Ledgers: List[LedgerSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class S3ExportConfigurationTypeDef(BaseModel): + Bucket: str + Prefix: str + EncryptionConfiguration: S3EncryptionConfigurationTypeDef + +class DescribeJournalKinesisStreamResponseTypeDef(BaseModel): + Stream: JournalKinesisStreamDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJournalKinesisStreamsForLedgerResponseTypeDef(BaseModel): + Streams: List[JournalKinesisStreamDescriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExportJournalToS3RequestRequestTypeDef(BaseModel): + Name: str + InclusiveStartTime: TimestampTypeDef + ExclusiveEndTime: TimestampTypeDef + S3ExportConfiguration: S3ExportConfigurationTypeDef + RoleArn: str + OutputFormat: Optional[OutputFormatType] = None + +class JournalS3ExportDescriptionTypeDef(BaseModel): + LedgerName: str + ExportId: str + ExportCreationTime: datetime + Status: ExportStatusType + InclusiveStartTime: datetime + ExclusiveEndTime: datetime + S3ExportConfiguration: S3ExportConfigurationTypeDef + RoleArn: str + OutputFormat: Optional[OutputFormatType] = None + +class DescribeJournalS3ExportResponseTypeDef(BaseModel): + ExportDescription: JournalS3ExportDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListJournalS3ExportsForLedgerResponseTypeDef(BaseModel): + JournalS3Exports: List[JournalS3ExportDescriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListJournalS3ExportsResponseTypeDef(BaseModel): + JournalS3Exports: List[JournalS3ExportDescriptionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/qldb_constants.py b/aws_resource_validator/pydantic_models/qldb_constants.py new file mode 100644 index 00000000..b777e78f --- /dev/null +++ b/aws_resource_validator/pydantic_models/qldb_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EncryptionStatusType = Literal["ENABLED", "KMS_KEY_INACCESSIBLE", "UPDATING"] +ErrorCauseType = Literal["IAM_PERMISSION_REVOKED", "KINESIS_STREAM_NOT_FOUND"] +ExportStatusType = Literal["CANCELLED", "COMPLETED", "IN_PROGRESS"] +LedgerStateType = Literal["ACTIVE", "CREATING", "DELETED", "DELETING"] +OutputFormatType = Literal["ION_BINARY", "ION_TEXT", "JSON"] +PermissionsModeType = Literal["ALLOW_ALL", "STANDARD"] +S3ObjectEncryptionTypeType = Literal["NO_ENCRYPTION", "SSE_KMS", "SSE_S3"] +StreamStatusType = Literal["ACTIVE", "CANCELED", "COMPLETED", "FAILED", "IMPAIRED"] +QLDBServiceName = Literal["qldb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/qldb_session_classes.py b/aws_resource_validator/pydantic_models/qldb_session_classes.py new file mode 100644 index 00000000..b74e91f2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qldb_session_classes.py @@ -0,0 +1,101 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.qldb_session_constants import * + +class TimingInformationTypeDef(BaseModel): + ProcessingTimeMilliseconds: Optional[int] = None + +class IOUsageTypeDef(BaseModel): + ReadIOs: Optional[int] = None + WriteIOs: Optional[int] = None + +class FetchPageRequestTypeDef(BaseModel): + TransactionId: str + NextPageToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class StartSessionRequestTypeDef(BaseModel): + LedgerName: str + +class AbortTransactionResultTypeDef(BaseModel): + TimingInformation: Optional[TimingInformationTypeDef] = None + +class EndSessionResultTypeDef(BaseModel): + TimingInformation: Optional[TimingInformationTypeDef] = None + +class StartSessionResultTypeDef(BaseModel): + SessionToken: Optional[str] = None + TimingInformation: Optional[TimingInformationTypeDef] = None + +class StartTransactionResultTypeDef(BaseModel): + TransactionId: Optional[str] = None + TimingInformation: Optional[TimingInformationTypeDef] = None + +class CommitTransactionRequestTypeDef(BaseModel): + TransactionId: str + CommitDigest: BlobTypeDef + +class ValueHolderTypeDef(BaseModel): + IonBinary: Optional[BlobTypeDef] = None + IonText: Optional[str] = None + +class CommitTransactionResultTypeDef(BaseModel): + TransactionId: Optional[str] = None + CommitDigest: Optional[bytes] = None + TimingInformation: Optional[TimingInformationTypeDef] = None + ConsumedIOs: Optional[IOUsageTypeDef] = None + +class ExecuteStatementRequestTypeDef(BaseModel): + TransactionId: str + Statement: str + Parameters: Optional[Sequence[ValueHolderTypeDef]] = None + +class PageTypeDef(BaseModel): + Values: Optional[List[ValueHolderTypeDef]] = None + NextPageToken: Optional[str] = None + +class SendCommandRequestRequestTypeDef(BaseModel): + SessionToken: Optional[str] = None + StartSession: Optional[StartSessionRequestTypeDef] = None + StartTransaction: Optional[Mapping[str, Any]] = None + EndSession: Optional[Mapping[str, Any]] = None + CommitTransaction: Optional[CommitTransactionRequestTypeDef] = None + AbortTransaction: Optional[Mapping[str, Any]] = None + ExecuteStatement: Optional[ExecuteStatementRequestTypeDef] = None + FetchPage: Optional[FetchPageRequestTypeDef] = None + +class ExecuteStatementResultTypeDef(BaseModel): + FirstPage: Optional[PageTypeDef] = None + TimingInformation: Optional[TimingInformationTypeDef] = None + ConsumedIOs: Optional[IOUsageTypeDef] = None + +class FetchPageResultTypeDef(BaseModel): + Page: Optional[PageTypeDef] = None + TimingInformation: Optional[TimingInformationTypeDef] = None + ConsumedIOs: Optional[IOUsageTypeDef] = None + +class SendCommandResultTypeDef(BaseModel): + StartSession: StartSessionResultTypeDef + StartTransaction: StartTransactionResultTypeDef + EndSession: EndSessionResultTypeDef + CommitTransaction: CommitTransactionResultTypeDef + AbortTransaction: AbortTransactionResultTypeDef + ExecuteStatement: ExecuteStatementResultTypeDef + FetchPage: FetchPageResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/qldb_session_constants.py b/aws_resource_validator/pydantic_models/qldb_session_constants.py new file mode 100644 index 00000000..16ff4033 --- /dev/null +++ b/aws_resource_validator/pydantic_models/qldb_session_constants.py @@ -0,0 +1,400 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +QLDBSessionServiceName = Literal["qldb-session"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/quicksight_classes.py b/aws_resource_validator/pydantic_models/quicksight_classes.py new file mode 100644 index 00000000..16b1462b --- /dev/null +++ b/aws_resource_validator/pydantic_models/quicksight_classes.py @@ -0,0 +1,8731 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.quicksight_constants import * + +class AccountCustomizationTypeDef(BaseModel): + DefaultTheme: Optional[str] = None + DefaultEmailCustomizationTemplate: Optional[str] = None + +class AccountInfoTypeDef(BaseModel): + AccountName: Optional[str] = None + Edition: Optional[EditionType] = None + NotificationEmail: Optional[str] = None + AuthenticationType: Optional[str] = None + AccountSubscriptionStatus: Optional[str] = None + IAMIdentityCenterInstanceArn: Optional[str] = None + +class AccountSettingsTypeDef(BaseModel): + AccountName: Optional[str] = None + Edition: Optional[EditionType] = None + DefaultNamespace: Optional[str] = None + NotificationEmail: Optional[str] = None + PublicSharingEnabled: Optional[bool] = None + TerminationProtectionEnabled: Optional[bool] = None + +class ActiveIAMPolicyAssignmentTypeDef(BaseModel): + AssignmentName: Optional[str] = None + PolicyArn: Optional[str] = None + +class AdHocFilteringOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class AttributeAggregationFunctionTypeDef(BaseModel): + SimpleAttributeAggregation: Optional[Literal["UNIQUE_VALUE"]] = None + ValueForMultipleValues: Optional[str] = None + +class ColumnIdentifierTypeDef(BaseModel): + DataSetIdentifier: str + ColumnName: str + +class AmazonElasticsearchParametersTypeDef(BaseModel): + Domain: str + +class AmazonOpenSearchParametersTypeDef(BaseModel): + Domain: str + +class AssetOptionsTypeDef(BaseModel): + Timezone: Optional[str] = None + WeekStart: Optional[DayOfTheWeekType] = None + +class CalculatedFieldTypeDef(BaseModel): + DataSetIdentifier: str + Name: str + Expression: str + +class DataSetIdentifierDeclarationTypeDef(BaseModel): + Identifier: str + DataSetArn: str + +class EntityTypeDef(BaseModel): + Path: Optional[str] = None + +class AnalysisSearchFilterTypeDef(BaseModel): + Operator: Optional[FilterOperatorType] = None + Name: Optional[AnalysisFilterAttributeType] = None + Value: Optional[str] = None + +class DataSetReferenceTypeDef(BaseModel): + DataSetPlaceholder: str + DataSetArn: str + +class AnalysisSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + AnalysisId: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ResourceStatusType] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class SheetTypeDef(BaseModel): + SheetId: Optional[str] = None + Name: Optional[str] = None + +class AnchorDateConfigurationTypeDef(BaseModel): + AnchorOption: Optional[Literal["NOW"]] = None + ParameterName: Optional[str] = None + +class AnonymousUserDashboardEmbeddingConfigurationTypeDef(BaseModel): + InitialDashboardId: str + +class DashboardVisualIdTypeDef(BaseModel): + DashboardId: str + SheetId: str + VisualId: str + +class AnonymousUserGenerativeQnAEmbeddingConfigurationTypeDef(BaseModel): + InitialTopicId: str + +class AnonymousUserQSearchBarEmbeddingConfigurationTypeDef(BaseModel): + InitialTopicId: str + +class ArcAxisDisplayRangeTypeDef(BaseModel): + Min: Optional[float] = None + Max: Optional[float] = None + +class ArcConfigurationTypeDef(BaseModel): + ArcAngle: Optional[float] = None + ArcThickness: Optional[ArcThicknessOptionsType] = None + +class ArcOptionsTypeDef(BaseModel): + ArcThickness: Optional[ArcThicknessType] = None + +class AssetBundleExportJobAnalysisOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[Literal["Name"]] + +class AssetBundleExportJobDashboardOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[Literal["Name"]] + +class AssetBundleExportJobDataSetOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[Literal["Name"]] + +class AssetBundleExportJobDataSourceOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[AssetBundleExportJobDataSourcePropertyToOverrideType] + +class AssetBundleExportJobRefreshScheduleOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[Literal["StartAfterDateTime"]] + +class AssetBundleExportJobResourceIdOverrideConfigurationTypeDef(BaseModel): + PrefixForAllResources: Optional[bool] = None + +class AssetBundleExportJobThemeOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[Literal["Name"]] + +class AssetBundleExportJobVPCConnectionOverridePropertiesOutputTypeDef(BaseModel): + Arn: str + Properties: List[AssetBundleExportJobVPCConnectionPropertyToOverrideType] + +class AssetBundleExportJobAnalysisOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[Literal["Name"]] + +class AssetBundleExportJobDashboardOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[Literal["Name"]] + +class AssetBundleExportJobDataSetOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[Literal["Name"]] + +class AssetBundleExportJobDataSourceOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[AssetBundleExportJobDataSourcePropertyToOverrideType] + +class AssetBundleExportJobRefreshScheduleOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[Literal["StartAfterDateTime"]] + +class AssetBundleExportJobThemeOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[Literal["Name"]] + +class AssetBundleExportJobVPCConnectionOverridePropertiesTypeDef(BaseModel): + Arn: str + Properties: Sequence[AssetBundleExportJobVPCConnectionPropertyToOverrideType] + +class AssetBundleExportJobErrorTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[str] = None + Message: Optional[str] = None + +class AssetBundleExportJobSummaryTypeDef(BaseModel): + JobStatus: Optional[AssetBundleExportJobStatusType] = None + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + AssetBundleExportJobId: Optional[str] = None + IncludeAllDependencies: Optional[bool] = None + ExportFormat: Optional[AssetBundleExportFormatType] = None + IncludePermissions: Optional[bool] = None + IncludeTags: Optional[bool] = None + +class AssetBundleExportJobValidationStrategyTypeDef(BaseModel): + StrictModeForAllResources: Optional[bool] = None + +class AssetBundleExportJobWarningTypeDef(BaseModel): + Arn: Optional[str] = None + Message: Optional[str] = None + +class AssetBundleImportJobAnalysisOverrideParametersTypeDef(BaseModel): + AnalysisId: str + Name: Optional[str] = None + +class AssetBundleResourcePermissionsOutputTypeDef(BaseModel): + Principals: List[str] + Actions: List[str] + +class AssetBundleResourcePermissionsTypeDef(BaseModel): + Principals: Sequence[str] + Actions: Sequence[str] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AssetBundleImportJobDashboardOverrideParametersTypeDef(BaseModel): + DashboardId: str + Name: Optional[str] = None + +class AssetBundleImportJobDataSetOverrideParametersTypeDef(BaseModel): + DataSetId: str + Name: Optional[str] = None + +class AssetBundleImportJobDataSourceCredentialPairTypeDef(BaseModel): + Username: str + Password: str + +class SslPropertiesTypeDef(BaseModel): + DisableSsl: Optional[bool] = None + +class VpcConnectionPropertiesTypeDef(BaseModel): + VpcConnectionArn: str + +class AssetBundleImportJobErrorTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[str] = None + Message: Optional[str] = None + +class AssetBundleImportJobRefreshScheduleOverrideParametersOutputTypeDef(BaseModel): + DataSetId: str + ScheduleId: str + StartAfterDateTime: Optional[datetime] = None + +class AssetBundleImportJobResourceIdOverrideConfigurationTypeDef(BaseModel): + PrefixForAllResources: Optional[str] = None + +class AssetBundleImportJobThemeOverrideParametersTypeDef(BaseModel): + ThemeId: str + Name: Optional[str] = None + +class AssetBundleImportJobVPCConnectionOverrideParametersOutputTypeDef(BaseModel): + VPCConnectionId: str + Name: Optional[str] = None + SubnetIds: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + DnsResolvers: Optional[List[str]] = None + RoleArn: Optional[str] = None + +class AssetBundleImportJobVPCConnectionOverrideParametersTypeDef(BaseModel): + VPCConnectionId: str + Name: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + DnsResolvers: Optional[Sequence[str]] = None + RoleArn: Optional[str] = None + +class AssetBundleImportJobOverrideValidationStrategyTypeDef(BaseModel): + StrictModeForAllResources: Optional[bool] = None + +class AssetBundleImportJobSummaryTypeDef(BaseModel): + JobStatus: Optional[AssetBundleImportJobStatusType] = None + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + AssetBundleImportJobId: Optional[str] = None + FailureAction: Optional[AssetBundleImportFailureActionType] = None + +class AssetBundleImportJobWarningTypeDef(BaseModel): + Arn: Optional[str] = None + Message: Optional[str] = None + +class AssetBundleImportSourceDescriptionTypeDef(BaseModel): + Body: Optional[str] = None + S3Uri: Optional[str] = None + +class AthenaParametersTypeDef(BaseModel): + WorkGroup: Optional[str] = None + RoleArn: Optional[str] = None + +class AuroraParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class AuroraPostgreSqlParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class AuthorizedTargetsByServiceTypeDef(BaseModel): + Service: Optional[Literal["REDSHIFT"]] = None + AuthorizedTargets: Optional[List[str]] = None + +class AwsIotAnalyticsParametersTypeDef(BaseModel): + DataSetName: str + +class DateAxisOptionsTypeDef(BaseModel): + MissingDateVisibility: Optional[VisibilityType] = None + +class AxisDisplayMinMaxRangeTypeDef(BaseModel): + Minimum: Optional[float] = None + Maximum: Optional[float] = None + +class AxisLinearScaleTypeDef(BaseModel): + StepCount: Optional[int] = None + StepSize: Optional[float] = None + +class AxisLogarithmicScaleTypeDef(BaseModel): + Base: Optional[float] = None + +class ItemsLimitConfigurationTypeDef(BaseModel): + ItemsLimit: Optional[int] = None + OtherCategories: Optional[OtherCategoriesType] = None + +class BigQueryParametersTypeDef(BaseModel): + ProjectId: str + DataSetRegion: Optional[str] = None + +class BinCountOptionsTypeDef(BaseModel): + Value: Optional[int] = None + +class BinWidthOptionsTypeDef(BaseModel): + Value: Optional[float] = None + BinCountLimit: Optional[int] = None + +class SectionAfterPageBreakTypeDef(BaseModel): + Status: Optional[SectionPageBreakStatusType] = None + +class BookmarksConfigurationsTypeDef(BaseModel): + Enabled: bool + +class BorderStyleTypeDef(BaseModel): + Show: Optional[bool] = None + +class BoxPlotStyleOptionsTypeDef(BaseModel): + FillStyle: Optional[BoxPlotFillStyleType] = None + +class PaginationConfigurationTypeDef(BaseModel): + PageSize: int + PageNumber: int + +class CalculatedColumnTypeDef(BaseModel): + ColumnName: str + ColumnId: str + Expression: str + +class CalculatedMeasureFieldTypeDef(BaseModel): + FieldId: str + Expression: str + +class CancelIngestionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + IngestionId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CastColumnTypeOperationTypeDef(BaseModel): + ColumnName: str + NewColumnType: ColumnDataTypeType + SubType: Optional[ColumnDataSubTypeType] = None + Format: Optional[str] = None + +class CustomFilterConfigurationTypeDef(BaseModel): + MatchOperator: CategoryFilterMatchOperatorType + NullOption: FilterNullOptionType + CategoryValue: Optional[str] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + ParameterName: Optional[str] = None + +class CustomFilterListConfigurationOutputTypeDef(BaseModel): + MatchOperator: CategoryFilterMatchOperatorType + NullOption: FilterNullOptionType + CategoryValues: Optional[List[str]] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + +class FilterListConfigurationOutputTypeDef(BaseModel): + MatchOperator: CategoryFilterMatchOperatorType + CategoryValues: Optional[List[str]] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + NullOption: Optional[FilterNullOptionType] = None + +class CustomFilterListConfigurationTypeDef(BaseModel): + MatchOperator: CategoryFilterMatchOperatorType + NullOption: FilterNullOptionType + CategoryValues: Optional[Sequence[str]] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + +class FilterListConfigurationTypeDef(BaseModel): + MatchOperator: CategoryFilterMatchOperatorType + CategoryValues: Optional[Sequence[str]] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + NullOption: Optional[FilterNullOptionType] = None + +class CellValueSynonymOutputTypeDef(BaseModel): + CellValue: Optional[str] = None + Synonyms: Optional[List[str]] = None + +class CellValueSynonymTypeDef(BaseModel): + CellValue: Optional[str] = None + Synonyms: Optional[Sequence[str]] = None + +class SimpleClusterMarkerTypeDef(BaseModel): + Color: Optional[str] = None + +class CollectiveConstantOutputTypeDef(BaseModel): + ValueList: Optional[List[str]] = None + +class CollectiveConstantTypeDef(BaseModel): + ValueList: Optional[Sequence[str]] = None + +class DataColorTypeDef(BaseModel): + Color: Optional[str] = None + DataValue: Optional[float] = None + +class CustomColorTypeDef(BaseModel): + Color: str + FieldValue: Optional[str] = None + SpecialValue: Optional[SpecialValueType] = None + +class ColumnDescriptionTypeDef(BaseModel): + Text: Optional[str] = None + +class ColumnGroupColumnSchemaTypeDef(BaseModel): + Name: Optional[str] = None + +class GeoSpatialColumnGroupOutputTypeDef(BaseModel): + Name: str + Columns: List[str] + CountryCode: Optional[Literal["US"]] = None + +class GeoSpatialColumnGroupTypeDef(BaseModel): + Name: str + Columns: Sequence[str] + CountryCode: Optional[Literal["US"]] = None + +class ColumnLevelPermissionRuleOutputTypeDef(BaseModel): + Principals: Optional[List[str]] = None + ColumnNames: Optional[List[str]] = None + +class ColumnLevelPermissionRuleTypeDef(BaseModel): + Principals: Optional[Sequence[str]] = None + ColumnNames: Optional[Sequence[str]] = None + +class ColumnSchemaTypeDef(BaseModel): + Name: Optional[str] = None + DataType: Optional[str] = None + GeographicRole: Optional[str] = None + +class ComparativeOrderOutputTypeDef(BaseModel): + UseOrdering: Optional[ColumnOrderingTypeType] = None + SpecifedOrder: Optional[List[str]] = None + TreatUndefinedSpecifiedValues: Optional[UndefinedSpecifiedValueTypeType] = None + +class ComparativeOrderTypeDef(BaseModel): + UseOrdering: Optional[ColumnOrderingTypeType] = None + SpecifedOrder: Optional[Sequence[str]] = None + TreatUndefinedSpecifiedValues: Optional[UndefinedSpecifiedValueTypeType] = None + +class ConditionalFormattingSolidColorTypeDef(BaseModel): + Expression: str + Color: Optional[str] = None + +class ConditionalFormattingCustomIconOptionsTypeDef(BaseModel): + Icon: Optional[IconType] = None + UnicodeIcon: Optional[str] = None + +class ConditionalFormattingIconDisplayConfigurationTypeDef(BaseModel): + IconDisplayOption: Optional[Literal["ICON_ONLY"]] = None + +class ConditionalFormattingIconSetTypeDef(BaseModel): + Expression: str + IconSetType: Optional[ConditionalFormattingIconSetTypeType] = None + +class ContextMenuOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class CreateAccountSubscriptionRequestRequestTypeDef(BaseModel): + AuthenticationMethod: AuthenticationMethodOptionType + AwsAccountId: str + AccountName: str + NotificationEmail: str + Edition: Optional[EditionType] = None + ActiveDirectoryName: Optional[str] = None + Realm: Optional[str] = None + DirectoryId: Optional[str] = None + AdminGroup: Optional[Sequence[str]] = None + AuthorGroup: Optional[Sequence[str]] = None + ReaderGroup: Optional[Sequence[str]] = None + AdminProGroup: Optional[Sequence[str]] = None + AuthorProGroup: Optional[Sequence[str]] = None + ReaderProGroup: Optional[Sequence[str]] = None + FirstName: Optional[str] = None + LastName: Optional[str] = None + EmailAddress: Optional[str] = None + ContactNumber: Optional[str] = None + IAMIdentityCenterInstanceArn: Optional[str] = None + +class SignupResponseTypeDef(BaseModel): + IAMUser: Optional[bool] = None + userLoginName: Optional[str] = None + accountName: Optional[str] = None + directoryType: Optional[str] = None + +class ValidationStrategyTypeDef(BaseModel): + Mode: ValidationStrategyModeType + +class DataSetUsageConfigurationTypeDef(BaseModel): + DisableUseAsDirectQuerySource: Optional[bool] = None + DisableUseAsImportedSource: Optional[bool] = None + +class RowLevelPermissionDataSetTypeDef(BaseModel): + Arn: str + PermissionPolicy: RowLevelPermissionPolicyType + Namespace: Optional[str] = None + FormatVersion: Optional[RowLevelPermissionFormatVersionType] = None + Status: Optional[StatusType] = None + +class CreateFolderMembershipRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + MemberId: str + MemberType: MemberTypeType + +class FolderMemberTypeDef(BaseModel): + MemberId: Optional[str] = None + MemberType: Optional[MemberTypeType] = None + +class CreateGroupMembershipRequestRequestTypeDef(BaseModel): + MemberName: str + GroupName: str + AwsAccountId: str + Namespace: str + +class GroupMemberTypeDef(BaseModel): + Arn: Optional[str] = None + MemberName: Optional[str] = None + +class CreateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + AwsAccountId: str + Namespace: str + Description: Optional[str] = None + +class GroupTypeDef(BaseModel): + Arn: Optional[str] = None + GroupName: Optional[str] = None + Description: Optional[str] = None + PrincipalId: Optional[str] = None + +class CreateIAMPolicyAssignmentRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssignmentName: str + AssignmentStatus: AssignmentStatusType + Namespace: str + PolicyArn: Optional[str] = None + Identities: Optional[Mapping[str, Sequence[str]]] = None + +class CreateIngestionRequestRequestTypeDef(BaseModel): + DataSetId: str + IngestionId: str + AwsAccountId: str + IngestionType: Optional[IngestionTypeType] = None + +class CreateRoleMembershipRequestRequestTypeDef(BaseModel): + MemberName: str + AwsAccountId: str + Namespace: str + Role: RoleType + +class CreateTemplateAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + AliasName: str + TemplateVersionNumber: int + +class TemplateAliasTypeDef(BaseModel): + AliasName: Optional[str] = None + Arn: Optional[str] = None + TemplateVersionNumber: Optional[int] = None + +class CreateThemeAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + AliasName: str + ThemeVersionNumber: int + +class ThemeAliasTypeDef(BaseModel): + Arn: Optional[str] = None + AliasName: Optional[str] = None + ThemeVersionNumber: Optional[int] = None + +class DecimalPlacesConfigurationTypeDef(BaseModel): + DecimalPlaces: int + +class NegativeValueConfigurationTypeDef(BaseModel): + DisplayMode: NegativeValueDisplayModeType + +class NullValueFormatConfigurationTypeDef(BaseModel): + NullString: str + +class LocalNavigationConfigurationTypeDef(BaseModel): + TargetSheetId: str + +class CustomActionURLOperationTypeDef(BaseModel): + URLTemplate: str + URLTarget: URLTargetConfigurationType + +class CustomNarrativeOptionsTypeDef(BaseModel): + Narrative: str + +class CustomParameterValuesOutputTypeDef(BaseModel): + StringValues: Optional[List[str]] = None + IntegerValues: Optional[List[int]] = None + DecimalValues: Optional[List[float]] = None + DateTimeValues: Optional[List[datetime]] = None + +class InputColumnTypeDef(BaseModel): + Name: str + Type: InputColumnDataTypeType + SubType: Optional[ColumnDataSubTypeType] = None + +class DataPointDrillUpDownOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class DataPointMenuLabelOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class DataPointTooltipOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class ExportToCSVOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class ExportWithHiddenFieldsOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class SheetControlsOptionTypeDef(BaseModel): + VisibilityState: Optional[DashboardUIStateType] = None + +class SheetLayoutElementMaximizationOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class VisualAxisSortOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class VisualMenuOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class DashboardSearchFilterTypeDef(BaseModel): + Operator: FilterOperatorType + Name: Optional[DashboardFilterAttributeType] = None + Value: Optional[str] = None + +class DashboardSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + DashboardId: Optional[str] = None + Name: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + PublishedVersionNumber: Optional[int] = None + LastPublishedTime: Optional[datetime] = None + +class DashboardVersionSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedTime: Optional[datetime] = None + VersionNumber: Optional[int] = None + Status: Optional[ResourceStatusType] = None + SourceEntityArn: Optional[str] = None + Description: Optional[str] = None + +class ExportHiddenFieldsOptionTypeDef(BaseModel): + AvailabilityStatus: Optional[DashboardBehaviorType] = None + +class DataAggregationTypeDef(BaseModel): + DatasetRowDateGranularity: Optional[TopicTimeGranularityType] = None + DefaultDateColumnName: Optional[str] = None + +class DataBarsOptionsTypeDef(BaseModel): + FieldId: str + PositiveColor: Optional[str] = None + NegativeColor: Optional[str] = None + +class DataColorPaletteOutputTypeDef(BaseModel): + Colors: Optional[List[str]] = None + MinMaxGradient: Optional[List[str]] = None + EmptyFillColor: Optional[str] = None + +class DataColorPaletteTypeDef(BaseModel): + Colors: Optional[Sequence[str]] = None + MinMaxGradient: Optional[Sequence[str]] = None + EmptyFillColor: Optional[str] = None + +class DataPathLabelTypeTypeDef(BaseModel): + FieldId: Optional[str] = None + FieldValue: Optional[str] = None + Visibility: Optional[VisibilityType] = None + +class FieldLabelTypeTypeDef(BaseModel): + FieldId: Optional[str] = None + Visibility: Optional[VisibilityType] = None + +class MaximumLabelTypeTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class MinimumLabelTypeTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class RangeEndsLabelTypeTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class DataPathTypeTypeDef(BaseModel): + PivotTableDataPathType: Optional[PivotTableDataPathTypeType] = None + +class DataSetSearchFilterTypeDef(BaseModel): + Operator: FilterOperatorType + Name: DataSetFilterAttributeType + Value: str + +class FieldFolderOutputTypeDef(BaseModel): + description: Optional[str] = None + columns: Optional[List[str]] = None + +class OutputColumnTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Type: Optional[ColumnDataTypeType] = None + SubType: Optional[ColumnDataSubTypeType] = None + +class DataSourceErrorInfoTypeDef(BaseModel): + Type: Optional[DataSourceErrorInfoTypeType] = None + Message: Optional[str] = None + +class DatabricksParametersTypeDef(BaseModel): + Host: str + Port: int + SqlEndpointPath: str + +class ExasolParametersTypeDef(BaseModel): + Host: str + Port: int + +class JiraParametersTypeDef(BaseModel): + SiteBaseUrl: str + +class MariaDbParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class MySqlParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class OracleParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class PostgreSqlParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class PrestoParametersTypeDef(BaseModel): + Host: str + Port: int + Catalog: str + +class RdsParametersTypeDef(BaseModel): + InstanceId: str + Database: str + +class ServiceNowParametersTypeDef(BaseModel): + SiteBaseUrl: str + +class SnowflakeParametersTypeDef(BaseModel): + Host: str + Database: str + Warehouse: str + +class SparkParametersTypeDef(BaseModel): + Host: str + Port: int + +class SqlServerParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class StarburstParametersTypeDef(BaseModel): + Host: str + Port: int + Catalog: str + ProductType: Optional[StarburstProductTypeType] = None + +class TeradataParametersTypeDef(BaseModel): + Host: str + Port: int + Database: str + +class TrinoParametersTypeDef(BaseModel): + Host: str + Port: int + Catalog: str + +class TwitterParametersTypeDef(BaseModel): + Query: str + MaxRows: int + +class DataSourceSearchFilterTypeDef(BaseModel): + Operator: FilterOperatorType + Name: DataSourceFilterAttributeType + Value: str + +class DataSourceSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + DataSourceId: Optional[str] = None + Name: Optional[str] = None + Type: Optional[DataSourceTypeType] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class DateTimeDatasetParameterDefaultValuesOutputTypeDef(BaseModel): + StaticValues: Optional[List[datetime]] = None + +class RollingDateConfigurationTypeDef(BaseModel): + Expression: str + DataSetIdentifier: Optional[str] = None + +class DateTimeValueWhenUnsetConfigurationOutputTypeDef(BaseModel): + ValueWhenUnsetOption: Optional[ValueWhenUnsetOptionType] = None + CustomValue: Optional[datetime] = None + +class MappedDataSetParameterTypeDef(BaseModel): + DataSetIdentifier: str + DataSetParameterName: str + +class DateTimeParameterOutputTypeDef(BaseModel): + Name: str + Values: List[datetime] + +class SheetControlInfoIconLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + InfoIconText: Optional[str] = None + +class DecimalDatasetParameterDefaultValuesOutputTypeDef(BaseModel): + StaticValues: Optional[List[float]] = None + +class DecimalDatasetParameterDefaultValuesTypeDef(BaseModel): + StaticValues: Optional[Sequence[float]] = None + +class DecimalValueWhenUnsetConfigurationTypeDef(BaseModel): + ValueWhenUnsetOption: Optional[ValueWhenUnsetOptionType] = None + CustomValue: Optional[float] = None + +class DecimalParameterOutputTypeDef(BaseModel): + Name: str + Values: List[float] + +class DecimalParameterTypeDef(BaseModel): + Name: str + Values: Sequence[float] + +class FilterSelectableValuesOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class FilterSelectableValuesTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + +class DeleteAccountCustomizationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: Optional[str] = None + +class DeleteAccountSubscriptionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + +class DeleteAnalysisRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + RecoveryWindowInDays: Optional[int] = None + ForceDeleteWithoutRecovery: Optional[bool] = None + +class DeleteDashboardRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + VersionNumber: Optional[int] = None + +class DeleteDataSetRefreshPropertiesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + +class DeleteDataSetRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + +class DeleteDataSourceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSourceId: str + +class DeleteFolderMembershipRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + MemberId: str + MemberType: MemberTypeType + +class DeleteFolderRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + +class DeleteGroupMembershipRequestRequestTypeDef(BaseModel): + MemberName: str + GroupName: str + AwsAccountId: str + Namespace: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + GroupName: str + AwsAccountId: str + Namespace: str + +class DeleteIAMPolicyAssignmentRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssignmentName: str + Namespace: str + +class DeleteIdentityPropagationConfigRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Service: Literal["REDSHIFT"] + +class DeleteNamespaceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + +class DeleteRefreshScheduleRequestRequestTypeDef(BaseModel): + DataSetId: str + AwsAccountId: str + ScheduleId: str + +class DeleteRoleCustomPermissionRequestRequestTypeDef(BaseModel): + Role: RoleType + AwsAccountId: str + Namespace: str + +class DeleteRoleMembershipRequestRequestTypeDef(BaseModel): + MemberName: str + Role: RoleType + AwsAccountId: str + Namespace: str + +class DeleteTemplateAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + AliasName: str + +class DeleteTemplateRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + VersionNumber: Optional[int] = None + +class DeleteThemeAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + AliasName: str + +class DeleteThemeRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + VersionNumber: Optional[int] = None + +class DeleteTopicRefreshScheduleRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + DatasetId: str + +class DeleteTopicRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + +class DeleteUserByPrincipalIdRequestRequestTypeDef(BaseModel): + PrincipalId: str + AwsAccountId: str + Namespace: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + UserName: str + AwsAccountId: str + Namespace: str + +class DeleteVPCConnectionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + VPCConnectionId: str + +class DescribeAccountCustomizationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: Optional[str] = None + Resolved: Optional[bool] = None + +class DescribeAccountSettingsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + +class DescribeAccountSubscriptionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + +class DescribeAnalysisDefinitionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + +class DescribeAnalysisPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + +class ResourcePermissionOutputTypeDef(BaseModel): + Principal: str + Actions: List[str] + +class DescribeAnalysisRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + +class DescribeAssetBundleExportJobRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssetBundleExportJobId: str + +class DescribeAssetBundleImportJobRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssetBundleImportJobId: str + +class DescribeDashboardDefinitionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + VersionNumber: Optional[int] = None + AliasName: Optional[str] = None + +class DescribeDashboardPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + +class DescribeDashboardRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + VersionNumber: Optional[int] = None + AliasName: Optional[str] = None + +class DescribeDashboardSnapshotJobRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + SnapshotJobId: str + +class DescribeDashboardSnapshotJobResultRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + SnapshotJobId: str + +class SnapshotJobErrorInfoTypeDef(BaseModel): + ErrorMessage: Optional[str] = None + ErrorType: Optional[str] = None + +class DescribeDataSetPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + +class DescribeDataSetRefreshPropertiesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + +class DescribeDataSetRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + +class DescribeDataSourcePermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSourceId: str + +class DescribeDataSourceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSourceId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeFolderPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + Namespace: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ResourcePermissionExtraOutputTypeDef(BaseModel): + Principal: str + Actions: List[str] + +class DescribeFolderRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + +class DescribeFolderResolvedPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + Namespace: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class FolderTypeDef(BaseModel): + FolderId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + FolderType: Optional[FolderTypeType] = None + FolderPath: Optional[List[str]] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + SharingModel: Optional[SharingModelType] = None + +class DescribeGroupMembershipRequestRequestTypeDef(BaseModel): + MemberName: str + GroupName: str + AwsAccountId: str + Namespace: str + +class DescribeGroupRequestRequestTypeDef(BaseModel): + GroupName: str + AwsAccountId: str + Namespace: str + +class DescribeIAMPolicyAssignmentRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssignmentName: str + Namespace: str + +class IAMPolicyAssignmentTypeDef(BaseModel): + AwsAccountId: Optional[str] = None + AssignmentId: Optional[str] = None + AssignmentName: Optional[str] = None + PolicyArn: Optional[str] = None + Identities: Optional[Dict[str, List[str]]] = None + AssignmentStatus: Optional[AssignmentStatusType] = None + +class DescribeIngestionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + IngestionId: str + +class DescribeIpRestrictionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + +class DescribeKeyRegistrationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DefaultKeyOnly: Optional[bool] = None + +class RegisteredCustomerManagedKeyTypeDef(BaseModel): + KeyArn: Optional[str] = None + DefaultKey: Optional[bool] = None + +class DescribeNamespaceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + +class DescribeRefreshScheduleRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + ScheduleId: str + +class DescribeRoleCustomPermissionRequestRequestTypeDef(BaseModel): + Role: RoleType + AwsAccountId: str + Namespace: str + +class DescribeTemplateAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + AliasName: str + +class DescribeTemplateDefinitionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + VersionNumber: Optional[int] = None + AliasName: Optional[str] = None + +class DescribeTemplatePermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + +class DescribeTemplateRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + VersionNumber: Optional[int] = None + AliasName: Optional[str] = None + +class DescribeThemeAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + AliasName: str + +class DescribeThemePermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + +class DescribeThemeRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + VersionNumber: Optional[int] = None + AliasName: Optional[str] = None + +class DescribeTopicPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + +class DescribeTopicRefreshRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + RefreshId: str + +class TopicRefreshDetailsTypeDef(BaseModel): + RefreshArn: Optional[str] = None + RefreshId: Optional[str] = None + RefreshStatus: Optional[TopicRefreshStatusType] = None + +class DescribeTopicRefreshScheduleRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + DatasetId: str + +class TopicRefreshScheduleOutputTypeDef(BaseModel): + IsEnabled: bool + BasedOnSpiceSchedule: bool + StartingAt: Optional[datetime] = None + Timezone: Optional[str] = None + RepeatAt: Optional[str] = None + TopicScheduleType: Optional[TopicScheduleTypeType] = None + +class DescribeTopicRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + +class DescribeUserRequestRequestTypeDef(BaseModel): + UserName: str + AwsAccountId: str + Namespace: str + +class UserTypeDef(BaseModel): + Arn: Optional[str] = None + UserName: Optional[str] = None + Email: Optional[str] = None + Role: Optional[UserRoleType] = None + IdentityType: Optional[IdentityTypeType] = None + Active: Optional[bool] = None + PrincipalId: Optional[str] = None + CustomPermissionsName: Optional[str] = None + ExternalLoginFederationProviderType: Optional[str] = None + ExternalLoginFederationProviderUrl: Optional[str] = None + ExternalLoginId: Optional[str] = None + +class DescribeVPCConnectionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + VPCConnectionId: str + +class NegativeFormatTypeDef(BaseModel): + Prefix: Optional[str] = None + Suffix: Optional[str] = None + +class DonutCenterOptionsTypeDef(BaseModel): + LabelVisibility: Optional[VisibilityType] = None + +class ListControlSelectAllOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class ErrorInfoTypeDef(BaseModel): + Type: Optional[IngestionErrorTypeType] = None + Message: Optional[str] = None + +class ExcludePeriodConfigurationTypeDef(BaseModel): + Amount: int + Granularity: TimeGranularityType + Status: Optional[WidgetStatusType] = None + +class FailedKeyRegistrationEntryTypeDef(BaseModel): + Message: str + StatusCode: int + SenderFault: bool + KeyArn: Optional[str] = None + +class FieldFolderTypeDef(BaseModel): + description: Optional[str] = None + columns: Optional[Sequence[str]] = None + +class FieldSortTypeDef(BaseModel): + FieldId: str + Direction: SortDirectionType + +class FieldTooltipItemTypeDef(BaseModel): + FieldId: str + Label: Optional[str] = None + Visibility: Optional[VisibilityType] = None + TooltipTarget: Optional[TooltipTargetType] = None + +class GeospatialMapStyleOptionsTypeDef(BaseModel): + BaseMapStyle: Optional[BaseMapStyleTypeType] = None + +class SameSheetTargetVisualConfigurationOutputTypeDef(BaseModel): + TargetVisuals: Optional[List[str]] = None + TargetVisualOptions: Optional[Literal["ALL_VISUALS"]] = None + +class SameSheetTargetVisualConfigurationTypeDef(BaseModel): + TargetVisuals: Optional[Sequence[str]] = None + TargetVisualOptions: Optional[Literal["ALL_VISUALS"]] = None + +class FilterOperationTypeDef(BaseModel): + ConditionExpression: str + +class FolderSearchFilterTypeDef(BaseModel): + Operator: Optional[FilterOperatorType] = None + Name: Optional[FolderFilterAttributeType] = None + Value: Optional[str] = None + +class FolderSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + FolderId: Optional[str] = None + Name: Optional[str] = None + FolderType: Optional[FolderTypeType] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + SharingModel: Optional[SharingModelType] = None + +class FontSizeTypeDef(BaseModel): + Relative: Optional[RelativeFontSizeType] = None + +class FontWeightTypeDef(BaseModel): + Name: Optional[FontWeightNameType] = None + +class FontTypeDef(BaseModel): + FontFamily: Optional[str] = None + +class TimeBasedForecastPropertiesTypeDef(BaseModel): + PeriodsForward: Optional[int] = None + PeriodsBackward: Optional[int] = None + UpperBoundary: Optional[float] = None + LowerBoundary: Optional[float] = None + PredictionInterval: Optional[int] = None + Seasonality: Optional[int] = None + +class WhatIfPointScenarioOutputTypeDef(BaseModel): + Date: datetime + Value: float + +class WhatIfRangeScenarioOutputTypeDef(BaseModel): + StartDate: datetime + EndDate: datetime + Value: float + +class FreeFormLayoutScreenCanvasSizeOptionsTypeDef(BaseModel): + OptimizedViewPortWidth: str + +class FreeFormLayoutElementBackgroundStyleTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + Color: Optional[str] = None + +class FreeFormLayoutElementBorderStyleTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + Color: Optional[str] = None + +class LoadingAnimationTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class GaugeChartColorConfigurationTypeDef(BaseModel): + ForegroundColor: Optional[str] = None + BackgroundColor: Optional[str] = None + +class SessionTagTypeDef(BaseModel): + Key: str + Value: str + +class GeospatialCoordinateBoundsTypeDef(BaseModel): + North: float + South: float + West: float + East: float + +class GeospatialHeatmapDataColorTypeDef(BaseModel): + Color: str + +class GetDashboardEmbedUrlRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + IdentityType: EmbeddingIdentityTypeType + SessionLifetimeInMinutes: Optional[int] = None + UndoRedoDisabled: Optional[bool] = None + ResetDisabled: Optional[bool] = None + StatePersistenceEnabled: Optional[bool] = None + UserArn: Optional[str] = None + Namespace: Optional[str] = None + AdditionalDashboardIds: Optional[Sequence[str]] = None + +class GetSessionEmbedUrlRequestRequestTypeDef(BaseModel): + AwsAccountId: str + EntryPoint: Optional[str] = None + SessionLifetimeInMinutes: Optional[int] = None + UserArn: Optional[str] = None + +class TableBorderOptionsTypeDef(BaseModel): + Color: Optional[str] = None + Thickness: Optional[int] = None + Style: Optional[TableBorderStyleType] = None + +class GradientStopTypeDef(BaseModel): + GradientOffset: float + DataValue: Optional[float] = None + Color: Optional[str] = None + +class GridLayoutScreenCanvasSizeOptionsTypeDef(BaseModel): + ResizeOption: ResizeOptionType + OptimizedViewPortWidth: Optional[str] = None + +class GridLayoutElementTypeDef(BaseModel): + ElementId: str + ElementType: LayoutElementTypeType + ColumnSpan: int + RowSpan: int + ColumnIndex: Optional[int] = None + RowIndex: Optional[int] = None + +class GroupSearchFilterTypeDef(BaseModel): + Operator: Literal["StartsWith"] + Name: Literal["GROUP_NAME"] + Value: str + +class GutterStyleTypeDef(BaseModel): + Show: Optional[bool] = None + +class IAMPolicyAssignmentSummaryTypeDef(BaseModel): + AssignmentName: Optional[str] = None + AssignmentStatus: Optional[AssignmentStatusType] = None + +class IdentityCenterConfigurationTypeDef(BaseModel): + EnableIdentityPropagation: Optional[bool] = None + +class LookbackWindowTypeDef(BaseModel): + ColumnName: str + Size: int + SizeUnit: LookbackWindowSizeUnitType + +class QueueInfoTypeDef(BaseModel): + WaitingOnIngestion: str + QueuedIngestion: str + +class RowInfoTypeDef(BaseModel): + RowsIngested: Optional[int] = None + RowsDropped: Optional[int] = None + TotalRowsInDataset: Optional[int] = None + +class IntegerDatasetParameterDefaultValuesOutputTypeDef(BaseModel): + StaticValues: Optional[List[int]] = None + +class IntegerDatasetParameterDefaultValuesTypeDef(BaseModel): + StaticValues: Optional[Sequence[int]] = None + +class IntegerValueWhenUnsetConfigurationTypeDef(BaseModel): + ValueWhenUnsetOption: Optional[ValueWhenUnsetOptionType] = None + CustomValue: Optional[int] = None + +class IntegerParameterOutputTypeDef(BaseModel): + Name: str + Values: List[int] + +class IntegerParameterTypeDef(BaseModel): + Name: str + Values: Sequence[int] + +class JoinKeyPropertiesTypeDef(BaseModel): + UniqueKey: Optional[bool] = None + +class KPISparklineOptionsTypeDef(BaseModel): + Type: KPISparklineTypeType + Visibility: Optional[VisibilityType] = None + Color: Optional[str] = None + TooltipVisibility: Optional[VisibilityType] = None + +class ProgressBarOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class SecondaryValueOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class TrendArrowOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class KPIVisualStandardLayoutTypeDef(BaseModel): + Type: KPIVisualStandardLayoutTypeType + +class LineChartLineStyleSettingsTypeDef(BaseModel): + LineVisibility: Optional[VisibilityType] = None + LineInterpolation: Optional[LineInterpolationType] = None + LineStyle: Optional[LineChartLineStyleType] = None + LineWidth: Optional[str] = None + +class LineChartMarkerStyleSettingsTypeDef(BaseModel): + MarkerVisibility: Optional[VisibilityType] = None + MarkerShape: Optional[LineChartMarkerShapeType] = None + MarkerSize: Optional[str] = None + MarkerColor: Optional[str] = None + +class MissingDataConfigurationTypeDef(BaseModel): + TreatmentOption: Optional[MissingDataTreatmentOptionType] = None + +class ResourcePermissionTypeDef(BaseModel): + Principal: str + Actions: Sequence[str] + +class ListAnalysesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAssetBundleExportJobsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAssetBundleImportJobsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListControlSearchOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class ListDashboardVersionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDashboardsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataSetsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataSourcesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFolderMembersRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MemberIdArnPairTypeDef(BaseModel): + MemberId: Optional[str] = None + MemberArn: Optional[str] = None + +class ListFoldersRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListGroupMembershipsRequestRequestTypeDef(BaseModel): + GroupName: str + AwsAccountId: str + Namespace: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIAMPolicyAssignmentsForUserRequestRequestTypeDef(BaseModel): + AwsAccountId: str + UserName: str + Namespace: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIAMPolicyAssignmentsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + AssignmentStatus: Optional[AssignmentStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIdentityPropagationConfigsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListIngestionsRequestRequestTypeDef(BaseModel): + DataSetId: str + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListNamespacesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRefreshSchedulesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + +class ListRoleMembershipsRequestRequestTypeDef(BaseModel): + Role: RoleType + AwsAccountId: str + Namespace: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListTemplateAliasesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTemplateVersionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TemplateVersionSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + VersionNumber: Optional[int] = None + CreatedTime: Optional[datetime] = None + Status: Optional[ResourceStatusType] = None + Description: Optional[str] = None + +class ListTemplatesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TemplateSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + TemplateId: Optional[str] = None + Name: Optional[str] = None + LatestVersionNumber: Optional[int] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class ListThemeAliasesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListThemeVersionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ThemeVersionSummaryTypeDef(BaseModel): + VersionNumber: Optional[int] = None + Arn: Optional[str] = None + Description: Optional[str] = None + CreatedTime: Optional[datetime] = None + Status: Optional[ResourceStatusType] = None + +class ListThemesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Type: Optional[ThemeTypeType] = None + +class ThemeSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + ThemeId: Optional[str] = None + LatestVersionNumber: Optional[int] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class ListTopicRefreshSchedulesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + +class ListTopicsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TopicSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + TopicId: Optional[str] = None + Name: Optional[str] = None + UserExperienceVersion: Optional[TopicUserExperienceVersionType] = None + +class ListUserGroupsRequestRequestTypeDef(BaseModel): + UserName: str + AwsAccountId: str + Namespace: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListVPCConnectionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class LongFormatTextTypeDef(BaseModel): + PlainText: Optional[str] = None + RichText: Optional[str] = None + +class ManifestFileLocationTypeDef(BaseModel): + Bucket: str + Key: str + +class MarginStyleTypeDef(BaseModel): + Show: Optional[bool] = None + +class NamedEntityDefinitionMetricOutputTypeDef(BaseModel): + Aggregation: Optional[NamedEntityAggTypeType] = None + AggregationFunctionParameters: Optional[Dict[str, str]] = None + +class NamedEntityDefinitionMetricTypeDef(BaseModel): + Aggregation: Optional[NamedEntityAggTypeType] = None + AggregationFunctionParameters: Optional[Mapping[str, str]] = None + +class NamespaceErrorTypeDef(BaseModel): + Type: Optional[NamespaceErrorTypeType] = None + Message: Optional[str] = None + +class NetworkInterfaceTypeDef(BaseModel): + SubnetId: Optional[str] = None + AvailabilityZone: Optional[str] = None + ErrorMessage: Optional[str] = None + Status: Optional[NetworkInterfaceStatusType] = None + NetworkInterfaceId: Optional[str] = None + +class NewDefaultValuesOutputTypeDef(BaseModel): + StringStaticValues: Optional[List[str]] = None + DecimalStaticValues: Optional[List[float]] = None + DateTimeStaticValues: Optional[List[datetime]] = None + IntegerStaticValues: Optional[List[int]] = None + +class NumericRangeFilterValueTypeDef(BaseModel): + StaticValue: Optional[float] = None + Parameter: Optional[str] = None + +class ThousandSeparatorOptionsTypeDef(BaseModel): + Symbol: Optional[NumericSeparatorSymbolType] = None + Visibility: Optional[VisibilityType] = None + +class PercentileAggregationTypeDef(BaseModel): + PercentileValue: Optional[float] = None + +class StringParameterOutputTypeDef(BaseModel): + Name: str + Values: List[str] + +class StringParameterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class PercentVisibleRangeTypeDef(BaseModel): + From: Optional[float] = None + To: Optional[float] = None + +class PivotTableConditionalFormattingScopeTypeDef(BaseModel): + Role: Optional[PivotTableConditionalFormattingScopeRoleType] = None + +class PivotTablePaginatedReportOptionsTypeDef(BaseModel): + VerticalOverflowVisibility: Optional[VisibilityType] = None + OverflowColumnHeaderVisibility: Optional[VisibilityType] = None + +class PivotTableFieldOptionTypeDef(BaseModel): + FieldId: str + CustomLabel: Optional[str] = None + Visibility: Optional[VisibilityType] = None + +class PivotTableFieldSubtotalOptionsTypeDef(BaseModel): + FieldId: Optional[str] = None + +class PivotTableRowsLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + CustomLabel: Optional[str] = None + +class RowAlternateColorOptionsOutputTypeDef(BaseModel): + Status: Optional[WidgetStatusType] = None + RowAlternateColors: Optional[List[str]] = None + UsePrimaryBackgroundColor: Optional[WidgetStatusType] = None + +class RowAlternateColorOptionsTypeDef(BaseModel): + Status: Optional[WidgetStatusType] = None + RowAlternateColors: Optional[Sequence[str]] = None + UsePrimaryBackgroundColor: Optional[WidgetStatusType] = None + +class ProjectOperationOutputTypeDef(BaseModel): + ProjectedColumns: List[str] + +class ProjectOperationTypeDef(BaseModel): + ProjectedColumns: Sequence[str] + +class RadarChartAreaStyleSettingsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class RangeConstantTypeDef(BaseModel): + Minimum: Optional[str] = None + Maximum: Optional[str] = None + +class RedshiftIAMParametersExtraOutputTypeDef(BaseModel): + RoleArn: str + DatabaseUser: Optional[str] = None + DatabaseGroups: Optional[List[str]] = None + AutoCreateDatabaseUser: Optional[bool] = None + +class RedshiftIAMParametersOutputTypeDef(BaseModel): + RoleArn: str + DatabaseUser: Optional[str] = None + DatabaseGroups: Optional[List[str]] = None + AutoCreateDatabaseUser: Optional[bool] = None + +class RedshiftIAMParametersTypeDef(BaseModel): + RoleArn: str + DatabaseUser: Optional[str] = None + DatabaseGroups: Optional[Sequence[str]] = None + AutoCreateDatabaseUser: Optional[bool] = None + +class ReferenceLineCustomLabelConfigurationTypeDef(BaseModel): + CustomLabel: str + +class ReferenceLineStaticDataConfigurationTypeDef(BaseModel): + Value: float + +class ReferenceLineStyleConfigurationTypeDef(BaseModel): + Pattern: Optional[ReferenceLinePatternTypeType] = None + Color: Optional[str] = None + +class ScheduleRefreshOnEntityTypeDef(BaseModel): + DayOfWeek: Optional[DayOfWeekType] = None + DayOfMonth: Optional[str] = None + +class StatePersistenceConfigurationsTypeDef(BaseModel): + Enabled: bool + +class RegisteredUserGenerativeQnAEmbeddingConfigurationTypeDef(BaseModel): + InitialTopicId: Optional[str] = None + +class RegisteredUserQSearchBarEmbeddingConfigurationTypeDef(BaseModel): + InitialTopicId: Optional[str] = None + +class RenameColumnOperationTypeDef(BaseModel): + ColumnName: str + NewColumnName: str + +class RestoreAnalysisRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + +class RowLevelPermissionTagRuleTypeDef(BaseModel): + TagKey: str + ColumnName: str + TagMultiValueDelimiter: Optional[str] = None + MatchAllValue: Optional[str] = None + +class S3BucketConfigurationTypeDef(BaseModel): + BucketName: str + BucketPrefix: str + BucketRegion: str + +class UploadSettingsTypeDef(BaseModel): + Format: Optional[FileFormatType] = None + StartFromRow: Optional[int] = None + ContainsHeader: Optional[bool] = None + TextQualifier: Optional[TextQualifierType] = None + Delimiter: Optional[str] = None + +class SpacingTypeDef(BaseModel): + Top: Optional[str] = None + Bottom: Optional[str] = None + Left: Optional[str] = None + Right: Optional[str] = None + +class SheetVisualScopingConfigurationOutputTypeDef(BaseModel): + SheetId: str + Scope: FilterVisualScopeType + VisualIds: Optional[List[str]] = None + +class SheetVisualScopingConfigurationTypeDef(BaseModel): + SheetId: str + Scope: FilterVisualScopeType + VisualIds: Optional[Sequence[str]] = None + +class SemanticEntityTypeOutputTypeDef(BaseModel): + TypeName: Optional[str] = None + SubTypeName: Optional[str] = None + TypeParameters: Optional[Dict[str, str]] = None + +class SemanticEntityTypeTypeDef(BaseModel): + TypeName: Optional[str] = None + SubTypeName: Optional[str] = None + TypeParameters: Optional[Mapping[str, str]] = None + +class SemanticTypeOutputTypeDef(BaseModel): + TypeName: Optional[str] = None + SubTypeName: Optional[str] = None + TypeParameters: Optional[Dict[str, str]] = None + TruthyCellValue: Optional[str] = None + TruthyCellValueSynonyms: Optional[List[str]] = None + FalseyCellValue: Optional[str] = None + FalseyCellValueSynonyms: Optional[List[str]] = None + +class SemanticTypeTypeDef(BaseModel): + TypeName: Optional[str] = None + SubTypeName: Optional[str] = None + TypeParameters: Optional[Mapping[str, str]] = None + TruthyCellValue: Optional[str] = None + TruthyCellValueSynonyms: Optional[Sequence[str]] = None + FalseyCellValue: Optional[str] = None + FalseyCellValueSynonyms: Optional[Sequence[str]] = None + +class SheetTextBoxTypeDef(BaseModel): + SheetTextBoxId: str + Content: Optional[str] = None + +class SheetElementConfigurationOverridesTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class ShortFormatTextTypeDef(BaseModel): + PlainText: Optional[str] = None + RichText: Optional[str] = None + +class YAxisOptionsTypeDef(BaseModel): + YAxis: Literal["PRIMARY_Y_AXIS"] + +class SmallMultiplesAxisPropertiesTypeDef(BaseModel): + Scale: Optional[SmallMultiplesAxisScaleType] = None + Placement: Optional[SmallMultiplesAxisPlacementType] = None + +class SnapshotAnonymousUserRedactedTypeDef(BaseModel): + RowLevelPermissionTagKeys: Optional[List[str]] = None + +class SnapshotFileSheetSelectionOutputTypeDef(BaseModel): + SheetId: str + SelectionScope: SnapshotFileSheetSelectionScopeType + VisualIds: Optional[List[str]] = None + +class SnapshotFileSheetSelectionTypeDef(BaseModel): + SheetId: str + SelectionScope: SnapshotFileSheetSelectionScopeType + VisualIds: Optional[Sequence[str]] = None + +class SnapshotJobResultErrorInfoTypeDef(BaseModel): + ErrorMessage: Optional[str] = None + ErrorType: Optional[str] = None + +class StringDatasetParameterDefaultValuesOutputTypeDef(BaseModel): + StaticValues: Optional[List[str]] = None + +class StringDatasetParameterDefaultValuesTypeDef(BaseModel): + StaticValues: Optional[Sequence[str]] = None + +class StringValueWhenUnsetConfigurationTypeDef(BaseModel): + ValueWhenUnsetOption: Optional[ValueWhenUnsetOptionType] = None + CustomValue: Optional[str] = None + +class TableStyleTargetTypeDef(BaseModel): + CellType: StyledCellTypeType + +class SuccessfulKeyRegistrationEntryTypeDef(BaseModel): + KeyArn: str + StatusCode: int + +class TableCellImageSizingConfigurationTypeDef(BaseModel): + TableCellImageScalingConfiguration: Optional[TableCellImageScalingConfigurationType] = None + +class TablePaginatedReportOptionsTypeDef(BaseModel): + VerticalOverflowVisibility: Optional[VisibilityType] = None + OverflowColumnHeaderVisibility: Optional[VisibilityType] = None + +class TableFieldCustomIconContentTypeDef(BaseModel): + Icon: Optional[Literal["LINK"]] = None + +class TablePinnedFieldOptionsOutputTypeDef(BaseModel): + PinnedLeftFields: Optional[List[str]] = None + +class TablePinnedFieldOptionsTypeDef(BaseModel): + PinnedLeftFields: Optional[Sequence[str]] = None + +class TemplateSourceTemplateTypeDef(BaseModel): + Arn: str + +class TextControlPlaceholderOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + +class UIColorPaletteTypeDef(BaseModel): + PrimaryForeground: Optional[str] = None + PrimaryBackground: Optional[str] = None + SecondaryForeground: Optional[str] = None + SecondaryBackground: Optional[str] = None + Accent: Optional[str] = None + AccentForeground: Optional[str] = None + Danger: Optional[str] = None + DangerForeground: Optional[str] = None + Warning: Optional[str] = None + WarningForeground: Optional[str] = None + Success: Optional[str] = None + SuccessForeground: Optional[str] = None + Dimension: Optional[str] = None + DimensionForeground: Optional[str] = None + Measure: Optional[str] = None + MeasureForeground: Optional[str] = None + +class ThemeErrorTypeDef(BaseModel): + Type: Optional[Literal["INTERNAL_FAILURE"]] = None + Message: Optional[str] = None + +class TopicSingularFilterConstantTypeDef(BaseModel): + ConstantType: Optional[ConstantTypeType] = None + SingularConstant: Optional[str] = None + +class TotalAggregationFunctionTypeDef(BaseModel): + SimpleTotalAggregationFunction: Optional[SimpleTotalAggregationFunctionType] = None + +class UntagColumnOperationOutputTypeDef(BaseModel): + ColumnName: str + TagNames: List[ColumnTagNameType] + +class UntagColumnOperationTypeDef(BaseModel): + ColumnName: str + TagNames: Sequence[ColumnTagNameType] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAccountSettingsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DefaultNamespace: str + NotificationEmail: Optional[str] = None + TerminationProtectionEnabled: Optional[bool] = None + +class UpdateDashboardLinksRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + LinkEntities: Sequence[str] + +class UpdateDashboardPublishedVersionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + VersionNumber: int + +class UpdateFolderRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + Name: str + +class UpdateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + AwsAccountId: str + Namespace: str + Description: Optional[str] = None + +class UpdateIAMPolicyAssignmentRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssignmentName: str + Namespace: str + AssignmentStatus: Optional[AssignmentStatusType] = None + PolicyArn: Optional[str] = None + Identities: Optional[Mapping[str, Sequence[str]]] = None + +class UpdateIdentityPropagationConfigRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Service: Literal["REDSHIFT"] + AuthorizedTargets: Optional[Sequence[str]] = None + +class UpdateIpRestrictionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + IpRestrictionRuleMap: Optional[Mapping[str, str]] = None + VpcIdRestrictionRuleMap: Optional[Mapping[str, str]] = None + VpcEndpointIdRestrictionRuleMap: Optional[Mapping[str, str]] = None + Enabled: Optional[bool] = None + +class UpdatePublicSharingSettingsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + PublicSharingEnabled: Optional[bool] = None + +class UpdateRoleCustomPermissionRequestRequestTypeDef(BaseModel): + CustomPermissionsName: str + Role: RoleType + AwsAccountId: str + Namespace: str + +class UpdateSPICECapacityConfigurationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + PurchaseMode: PurchaseModeType + +class UpdateTemplateAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + AliasName: str + TemplateVersionNumber: int + +class UpdateThemeAliasRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + AliasName: str + ThemeVersionNumber: int + +class UpdateUserRequestRequestTypeDef(BaseModel): + UserName: str + AwsAccountId: str + Namespace: str + Email: str + Role: UserRoleType + CustomPermissionsName: Optional[str] = None + UnapplyCustomPermissions: Optional[bool] = None + ExternalLoginFederationProviderType: Optional[str] = None + CustomFederationProviderUrl: Optional[str] = None + ExternalLoginId: Optional[str] = None + +class UpdateVPCConnectionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + VPCConnectionId: str + Name: str + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + RoleArn: str + DnsResolvers: Optional[Sequence[str]] = None + +class WaterfallChartGroupColorConfigurationTypeDef(BaseModel): + PositiveBarColor: Optional[str] = None + NegativeBarColor: Optional[str] = None + TotalBarColor: Optional[str] = None + +class WaterfallChartOptionsTypeDef(BaseModel): + TotalBarLabel: Optional[str] = None + +class WordCloudOptionsTypeDef(BaseModel): + WordOrientation: Optional[WordCloudWordOrientationType] = None + WordScaling: Optional[WordCloudWordScalingType] = None + CloudLayout: Optional[WordCloudCloudLayoutType] = None + WordCasing: Optional[WordCloudWordCasingType] = None + WordPadding: Optional[WordCloudWordPaddingType] = None + MaximumStringLength: Optional[int] = None + +class UpdateAccountCustomizationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AccountCustomization: AccountCustomizationTypeDef + Namespace: Optional[str] = None + +class AxisLabelReferenceOptionsTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + +class CascadingControlSourceTypeDef(BaseModel): + SourceSheetControlId: Optional[str] = None + ColumnToMatch: Optional[ColumnIdentifierTypeDef] = None + +class CategoryDrillDownFilterOutputTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + CategoryValues: List[str] + +class CategoryDrillDownFilterTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + CategoryValues: Sequence[str] + +class ContributionAnalysisDefaultOutputTypeDef(BaseModel): + MeasureFieldId: str + ContributorDimensions: List[ColumnIdentifierTypeDef] + +class ContributionAnalysisDefaultTypeDef(BaseModel): + MeasureFieldId: str + ContributorDimensions: Sequence[ColumnIdentifierTypeDef] + +class DynamicDefaultValueTypeDef(BaseModel): + DefaultValueColumn: ColumnIdentifierTypeDef + UserNameColumn: Optional[ColumnIdentifierTypeDef] = None + GroupNameColumn: Optional[ColumnIdentifierTypeDef] = None + +class FilterOperationSelectedFieldsConfigurationOutputTypeDef(BaseModel): + SelectedFields: Optional[List[str]] = None + SelectedFieldOptions: Optional[Literal["ALL_FIELDS"]] = None + SelectedColumns: Optional[List[ColumnIdentifierTypeDef]] = None + +class FilterOperationSelectedFieldsConfigurationTypeDef(BaseModel): + SelectedFields: Optional[Sequence[str]] = None + SelectedFieldOptions: Optional[Literal["ALL_FIELDS"]] = None + SelectedColumns: Optional[Sequence[ColumnIdentifierTypeDef]] = None + +class NumericEqualityDrillDownFilterTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Value: float + +class ParameterSelectableValuesOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + LinkToDataSetColumn: Optional[ColumnIdentifierTypeDef] = None + +class ParameterSelectableValuesTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + LinkToDataSetColumn: Optional[ColumnIdentifierTypeDef] = None + +class TimeRangeDrillDownFilterOutputTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + RangeMinimum: datetime + RangeMaximum: datetime + TimeGranularity: TimeGranularityType + +class AnalysisErrorTypeDef(BaseModel): + Type: Optional[AnalysisErrorTypeType] = None + Message: Optional[str] = None + ViolatedEntities: Optional[List[EntityTypeDef]] = None + +class DashboardErrorTypeDef(BaseModel): + Type: Optional[DashboardErrorTypeType] = None + Message: Optional[str] = None + ViolatedEntities: Optional[List[EntityTypeDef]] = None + +class TemplateErrorTypeDef(BaseModel): + Type: Optional[TemplateErrorTypeType] = None + Message: Optional[str] = None + ViolatedEntities: Optional[List[EntityTypeDef]] = None + +class SearchAnalysesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[AnalysisSearchFilterTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class AnalysisSourceTemplateTypeDef(BaseModel): + DataSetReferences: Sequence[DataSetReferenceTypeDef] + Arn: str + +class DashboardSourceTemplateTypeDef(BaseModel): + DataSetReferences: Sequence[DataSetReferenceTypeDef] + Arn: str + +class TemplateSourceAnalysisTypeDef(BaseModel): + Arn: str + DataSetReferences: Sequence[DataSetReferenceTypeDef] + +class AnonymousUserDashboardVisualEmbeddingConfigurationTypeDef(BaseModel): + InitialDashboardVisualId: DashboardVisualIdTypeDef + +class RegisteredUserDashboardVisualEmbeddingConfigurationTypeDef(BaseModel): + InitialDashboardVisualId: DashboardVisualIdTypeDef + +class ArcAxisConfigurationTypeDef(BaseModel): + Range: Optional[ArcAxisDisplayRangeTypeDef] = None + ReserveRange: Optional[int] = None + +class AssetBundleCloudFormationOverridePropertyConfigurationOutputTypeDef(BaseModel): + ResourceIdOverrideConfiguration: Optional[ AssetBundleExportJobResourceIdOverrideConfigurationTypeDef ] = None + VPCConnections: Optional[ List[AssetBundleExportJobVPCConnectionOverridePropertiesOutputTypeDef] ] = None + RefreshSchedules: Optional[ List[AssetBundleExportJobRefreshScheduleOverridePropertiesOutputTypeDef] ] = None + DataSources: Optional[ List[AssetBundleExportJobDataSourceOverridePropertiesOutputTypeDef] ] = None + DataSets: Optional[List[AssetBundleExportJobDataSetOverridePropertiesOutputTypeDef]] = None + Themes: Optional[List[AssetBundleExportJobThemeOverridePropertiesOutputTypeDef]] = None + Analyses: Optional[List[AssetBundleExportJobAnalysisOverridePropertiesOutputTypeDef]] = None + Dashboards: Optional[ List[AssetBundleExportJobDashboardOverridePropertiesOutputTypeDef] ] = None + +class AssetBundleCloudFormationOverridePropertyConfigurationTypeDef(BaseModel): + ResourceIdOverrideConfiguration: Optional[ AssetBundleExportJobResourceIdOverrideConfigurationTypeDef ] = None + VPCConnections: Optional[ Sequence[AssetBundleExportJobVPCConnectionOverridePropertiesTypeDef] ] = None + RefreshSchedules: Optional[ Sequence[AssetBundleExportJobRefreshScheduleOverridePropertiesTypeDef] ] = None + DataSources: Optional[ Sequence[AssetBundleExportJobDataSourceOverridePropertiesTypeDef] ] = None + DataSets: Optional[Sequence[AssetBundleExportJobDataSetOverridePropertiesTypeDef]] = None + Themes: Optional[Sequence[AssetBundleExportJobThemeOverridePropertiesTypeDef]] = None + Analyses: Optional[Sequence[AssetBundleExportJobAnalysisOverridePropertiesTypeDef]] = None + Dashboards: Optional[Sequence[AssetBundleExportJobDashboardOverridePropertiesTypeDef]] = None + +class AssetBundleImportJobAnalysisOverridePermissionsOutputTypeDef(BaseModel): + AnalysisIds: List[str] + Permissions: AssetBundleResourcePermissionsOutputTypeDef + +class AssetBundleImportJobDataSetOverridePermissionsOutputTypeDef(BaseModel): + DataSetIds: List[str] + Permissions: AssetBundleResourcePermissionsOutputTypeDef + +class AssetBundleImportJobDataSourceOverridePermissionsOutputTypeDef(BaseModel): + DataSourceIds: List[str] + Permissions: AssetBundleResourcePermissionsOutputTypeDef + +class AssetBundleImportJobThemeOverridePermissionsOutputTypeDef(BaseModel): + ThemeIds: List[str] + Permissions: AssetBundleResourcePermissionsOutputTypeDef + +class AssetBundleResourceLinkSharingConfigurationOutputTypeDef(BaseModel): + Permissions: Optional[AssetBundleResourcePermissionsOutputTypeDef] = None + +class AssetBundleImportJobAnalysisOverridePermissionsTypeDef(BaseModel): + AnalysisIds: Sequence[str] + Permissions: AssetBundleResourcePermissionsTypeDef + +class AssetBundleImportJobDataSetOverridePermissionsTypeDef(BaseModel): + DataSetIds: Sequence[str] + Permissions: AssetBundleResourcePermissionsTypeDef + +class AssetBundleImportJobDataSourceOverridePermissionsTypeDef(BaseModel): + DataSourceIds: Sequence[str] + Permissions: AssetBundleResourcePermissionsTypeDef + +class AssetBundleImportJobThemeOverridePermissionsTypeDef(BaseModel): + ThemeIds: Sequence[str] + Permissions: AssetBundleResourcePermissionsTypeDef + +class AssetBundleResourceLinkSharingConfigurationTypeDef(BaseModel): + Permissions: Optional[AssetBundleResourcePermissionsTypeDef] = None + +class AssetBundleImportJobAnalysisOverrideTagsOutputTypeDef(BaseModel): + AnalysisIds: List[str] + Tags: List[TagTypeDef] + +class AssetBundleImportJobAnalysisOverrideTagsTypeDef(BaseModel): + AnalysisIds: Sequence[str] + Tags: Sequence[TagTypeDef] + +class AssetBundleImportJobDashboardOverrideTagsOutputTypeDef(BaseModel): + DashboardIds: List[str] + Tags: List[TagTypeDef] + +class AssetBundleImportJobDashboardOverrideTagsTypeDef(BaseModel): + DashboardIds: Sequence[str] + Tags: Sequence[TagTypeDef] + +class AssetBundleImportJobDataSetOverrideTagsOutputTypeDef(BaseModel): + DataSetIds: List[str] + Tags: List[TagTypeDef] + +class AssetBundleImportJobDataSetOverrideTagsTypeDef(BaseModel): + DataSetIds: Sequence[str] + Tags: Sequence[TagTypeDef] + +class AssetBundleImportJobDataSourceOverrideTagsOutputTypeDef(BaseModel): + DataSourceIds: List[str] + Tags: List[TagTypeDef] + +class AssetBundleImportJobDataSourceOverrideTagsTypeDef(BaseModel): + DataSourceIds: Sequence[str] + Tags: Sequence[TagTypeDef] + +class AssetBundleImportJobThemeOverrideTagsOutputTypeDef(BaseModel): + ThemeIds: List[str] + Tags: List[TagTypeDef] + +class AssetBundleImportJobThemeOverrideTagsTypeDef(BaseModel): + ThemeIds: Sequence[str] + Tags: Sequence[TagTypeDef] + +class AssetBundleImportJobVPCConnectionOverrideTagsOutputTypeDef(BaseModel): + VPCConnectionIds: List[str] + Tags: List[TagTypeDef] + +class AssetBundleImportJobVPCConnectionOverrideTagsTypeDef(BaseModel): + VPCConnectionIds: Sequence[str] + Tags: Sequence[TagTypeDef] + +class CreateAccountCustomizationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AccountCustomization: AccountCustomizationTypeDef + Namespace: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateNamespaceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + IdentityStore: Literal["QUICKSIGHT"] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVPCConnectionRequestRequestTypeDef(BaseModel): + AwsAccountId: str + VPCConnectionId: str + Name: str + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + RoleArn: str + DnsResolvers: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class RegisterUserRequestRequestTypeDef(BaseModel): + IdentityType: IdentityTypeType + Email: str + UserRole: UserRoleType + AwsAccountId: str + Namespace: str + IamArn: Optional[str] = None + SessionName: Optional[str] = None + UserName: Optional[str] = None + CustomPermissionsName: Optional[str] = None + ExternalLoginFederationProviderType: Optional[str] = None + CustomFederationProviderUrl: Optional[str] = None + ExternalLoginId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class AssetBundleImportJobDataSourceCredentialsTypeDef(BaseModel): + CredentialPair: Optional[AssetBundleImportJobDataSourceCredentialPairTypeDef] = None + SecretArn: Optional[str] = None + +class AssetBundleImportJobRefreshScheduleOverrideParametersTypeDef(BaseModel): + DataSetId: str + ScheduleId: str + StartAfterDateTime: Optional[TimestampTypeDef] = None + +class CustomParameterValuesTypeDef(BaseModel): + StringValues: Optional[Sequence[str]] = None + IntegerValues: Optional[Sequence[int]] = None + DecimalValues: Optional[Sequence[float]] = None + DateTimeValues: Optional[Sequence[TimestampTypeDef]] = None + +class DateTimeDatasetParameterDefaultValuesTypeDef(BaseModel): + StaticValues: Optional[Sequence[TimestampTypeDef]] = None + +class DateTimeParameterTypeDef(BaseModel): + Name: str + Values: Sequence[TimestampTypeDef] + +class DateTimeValueWhenUnsetConfigurationTypeDef(BaseModel): + ValueWhenUnsetOption: Optional[ValueWhenUnsetOptionType] = None + CustomValue: Optional[TimestampTypeDef] = None + +class NewDefaultValuesTypeDef(BaseModel): + StringStaticValues: Optional[Sequence[str]] = None + DecimalStaticValues: Optional[Sequence[float]] = None + DateTimeStaticValues: Optional[Sequence[TimestampTypeDef]] = None + IntegerStaticValues: Optional[Sequence[int]] = None + +class TimeRangeDrillDownFilterTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + RangeMinimum: TimestampTypeDef + RangeMaximum: TimestampTypeDef + TimeGranularity: TimeGranularityType + +class TopicRefreshScheduleTypeDef(BaseModel): + IsEnabled: bool + BasedOnSpiceSchedule: bool + StartingAt: Optional[TimestampTypeDef] = None + Timezone: Optional[str] = None + RepeatAt: Optional[str] = None + TopicScheduleType: Optional[TopicScheduleTypeType] = None + +class WhatIfPointScenarioTypeDef(BaseModel): + Date: TimestampTypeDef + Value: float + +class WhatIfRangeScenarioTypeDef(BaseModel): + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + Value: float + +class AssetBundleImportSourceTypeDef(BaseModel): + Body: Optional[BlobTypeDef] = None + S3Uri: Optional[str] = None + +class AxisDisplayRangeOutputTypeDef(BaseModel): + MinMax: Optional[AxisDisplayMinMaxRangeTypeDef] = None + DataDriven: Optional[Dict[str, Any]] = None + +class AxisDisplayRangeTypeDef(BaseModel): + MinMax: Optional[AxisDisplayMinMaxRangeTypeDef] = None + DataDriven: Optional[Mapping[str, Any]] = None + +class AxisScaleTypeDef(BaseModel): + Linear: Optional[AxisLinearScaleTypeDef] = None + Logarithmic: Optional[AxisLogarithmicScaleTypeDef] = None + +class ScatterPlotSortConfigurationTypeDef(BaseModel): + ScatterPlotLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class HistogramBinOptionsTypeDef(BaseModel): + SelectedBinType: Optional[HistogramBinTypeType] = None + BinCount: Optional[BinCountOptionsTypeDef] = None + BinWidth: Optional[BinWidthOptionsTypeDef] = None + StartValue: Optional[float] = None + +class BodySectionRepeatPageBreakConfigurationTypeDef(BaseModel): + After: Optional[SectionAfterPageBreakTypeDef] = None + +class SectionPageBreakConfigurationTypeDef(BaseModel): + After: Optional[SectionAfterPageBreakTypeDef] = None + +class TileStyleTypeDef(BaseModel): + Border: Optional[BorderStyleTypeDef] = None + +class BoxPlotOptionsTypeDef(BaseModel): + StyleOptions: Optional[BoxPlotStyleOptionsTypeDef] = None + OutlierVisibility: Optional[VisibilityType] = None + AllDataPointsVisibility: Optional[VisibilityType] = None + +class CreateColumnsOperationOutputTypeDef(BaseModel): + Columns: List[CalculatedColumnTypeDef] + +class CreateColumnsOperationTypeDef(BaseModel): + Columns: Sequence[CalculatedColumnTypeDef] + +class CancelIngestionResponseTypeDef(BaseModel): + Arn: str + IngestionId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccountCustomizationResponseTypeDef(BaseModel): + Arn: str + AwsAccountId: str + Namespace: str + AccountCustomization: AccountCustomizationTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnalysisResponseTypeDef(BaseModel): + Arn: str + AnalysisId: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDashboardResponseTypeDef(BaseModel): + Arn: str + VersionArn: str + DashboardId: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSetResponseTypeDef(BaseModel): + Arn: str + DataSetId: str + IngestionArn: str + IngestionId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSourceResponseTypeDef(BaseModel): + Arn: str + DataSourceId: str + CreationStatus: ResourceStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFolderResponseTypeDef(BaseModel): + Status: int + Arn: str + FolderId: str + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIAMPolicyAssignmentResponseTypeDef(BaseModel): + AssignmentName: str + AssignmentId: str + AssignmentStatus: AssignmentStatusType + PolicyArn: str + Identities: Dict[str, List[str]] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIngestionResponseTypeDef(BaseModel): + Arn: str + IngestionId: str + IngestionStatus: IngestionStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNamespaceResponseTypeDef(BaseModel): + Arn: str + Name: str + CapacityRegion: str + CreationStatus: NamespaceStatusType + IdentityStore: Literal["QUICKSIGHT"] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRefreshScheduleResponseTypeDef(BaseModel): + Status: int + RequestId: str + ScheduleId: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRoleMembershipResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateResponseTypeDef(BaseModel): + Arn: str + VersionArn: str + TemplateId: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThemeResponseTypeDef(BaseModel): + Arn: str + VersionArn: str + ThemeId: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicRefreshScheduleResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + DatasetArn: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicResponseTypeDef(BaseModel): + Arn: str + TopicId: str + RefreshArn: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVPCConnectionResponseTypeDef(BaseModel): + Arn: str + VPCConnectionId: str + CreationStatus: VPCConnectionResourceStatusType + AvailabilityStatus: VPCConnectionAvailabilityStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAccountCustomizationResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAccountSubscriptionResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAnalysisResponseTypeDef(BaseModel): + Status: int + Arn: str + AnalysisId: str + DeletionTime: datetime + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDashboardResponseTypeDef(BaseModel): + Status: int + Arn: str + DashboardId: str + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSetRefreshPropertiesResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSetResponseTypeDef(BaseModel): + Arn: str + DataSetId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDataSourceResponseTypeDef(BaseModel): + Arn: str + DataSourceId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFolderMembershipResponseTypeDef(BaseModel): + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFolderResponseTypeDef(BaseModel): + Status: int + Arn: str + FolderId: str + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGroupMembershipResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGroupResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIAMPolicyAssignmentResponseTypeDef(BaseModel): + AssignmentName: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIdentityPropagationConfigResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNamespaceResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRefreshScheduleResponseTypeDef(BaseModel): + Status: int + RequestId: str + ScheduleId: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRoleCustomPermissionResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRoleMembershipResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTemplateAliasResponseTypeDef(BaseModel): + Status: int + TemplateId: str + AliasName: str + Arn: str + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTemplateResponseTypeDef(BaseModel): + RequestId: str + Arn: str + TemplateId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteThemeAliasResponseTypeDef(BaseModel): + AliasName: str + Arn: str + RequestId: str + Status: int + ThemeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteThemeResponseTypeDef(BaseModel): + Arn: str + RequestId: str + Status: int + ThemeId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTopicRefreshScheduleResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + DatasetArn: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTopicResponseTypeDef(BaseModel): + Arn: str + TopicId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteUserByPrincipalIdResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteUserResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVPCConnectionResponseTypeDef(BaseModel): + Arn: str + VPCConnectionId: str + DeletionStatus: VPCConnectionResourceStatusType + AvailabilityStatus: VPCConnectionAvailabilityStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountCustomizationResponseTypeDef(BaseModel): + Arn: str + AwsAccountId: str + Namespace: str + AccountCustomization: AccountCustomizationTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountSettingsResponseTypeDef(BaseModel): + AccountSettings: AccountSettingsTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountSubscriptionResponseTypeDef(BaseModel): + AccountInfo: AccountInfoTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIpRestrictionResponseTypeDef(BaseModel): + AwsAccountId: str + IpRestrictionRuleMap: Dict[str, str] + VpcIdRestrictionRuleMap: Dict[str, str] + VpcEndpointIdRestrictionRuleMap: Dict[str, str] + Enabled: bool + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRoleCustomPermissionResponseTypeDef(BaseModel): + CustomPermissionsName: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateEmbedUrlForAnonymousUserResponseTypeDef(BaseModel): + EmbedUrl: str + Status: int + RequestId: str + AnonymousUserArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateEmbedUrlForRegisteredUserResponseTypeDef(BaseModel): + EmbedUrl: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDashboardEmbedUrlResponseTypeDef(BaseModel): + EmbedUrl: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSessionEmbedUrlResponseTypeDef(BaseModel): + EmbedUrl: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnalysesResponseTypeDef(BaseModel): + AnalysisSummaryList: List[AnalysisSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAssetBundleExportJobsResponseTypeDef(BaseModel): + AssetBundleExportJobSummaryList: List[AssetBundleExportJobSummaryTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAssetBundleImportJobsResponseTypeDef(BaseModel): + AssetBundleImportJobSummaryList: List[AssetBundleImportJobSummaryTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIAMPolicyAssignmentsForUserResponseTypeDef(BaseModel): + ActiveAssignments: List[ActiveIAMPolicyAssignmentTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIdentityPropagationConfigsResponseTypeDef(BaseModel): + Services: List[AuthorizedTargetsByServiceTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListRoleMembershipsResponseTypeDef(BaseModel): + MembersList: List[str] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class PutDataSetRefreshPropertiesResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreAnalysisResponseTypeDef(BaseModel): + Status: int + Arn: str + AnalysisId: str + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchAnalysesResponseTypeDef(BaseModel): + AnalysisSummaryList: List[AnalysisSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartAssetBundleExportJobResponseTypeDef(BaseModel): + Arn: str + AssetBundleExportJobId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartAssetBundleImportJobResponseTypeDef(BaseModel): + Arn: str + AssetBundleImportJobId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartDashboardSnapshotJobResponseTypeDef(BaseModel): + Arn: str + SnapshotJobId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UntagResourceResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountCustomizationResponseTypeDef(BaseModel): + Arn: str + AwsAccountId: str + Namespace: str + AccountCustomization: AccountCustomizationTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountSettingsResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnalysisResponseTypeDef(BaseModel): + Arn: str + AnalysisId: str + UpdateStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDashboardLinksResponseTypeDef(BaseModel): + RequestId: str + Status: int + DashboardArn: str + LinkEntities: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDashboardPublishedVersionResponseTypeDef(BaseModel): + DashboardId: str + DashboardArn: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDashboardResponseTypeDef(BaseModel): + Arn: str + VersionArn: str + DashboardId: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSetPermissionsResponseTypeDef(BaseModel): + DataSetArn: str + DataSetId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSetResponseTypeDef(BaseModel): + Arn: str + DataSetId: str + IngestionArn: str + IngestionId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourcePermissionsResponseTypeDef(BaseModel): + DataSourceArn: str + DataSourceId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataSourceResponseTypeDef(BaseModel): + Arn: str + DataSourceId: str + UpdateStatus: ResourceStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFolderResponseTypeDef(BaseModel): + Status: int + Arn: str + FolderId: str + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIAMPolicyAssignmentResponseTypeDef(BaseModel): + AssignmentName: str + AssignmentId: str + PolicyArn: str + Identities: Dict[str, List[str]] + AssignmentStatus: AssignmentStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdentityPropagationConfigResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIpRestrictionResponseTypeDef(BaseModel): + AwsAccountId: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePublicSharingSettingsResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRefreshScheduleResponseTypeDef(BaseModel): + Status: int + RequestId: str + ScheduleId: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoleCustomPermissionResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSPICECapacityConfigurationResponseTypeDef(BaseModel): + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTemplateResponseTypeDef(BaseModel): + TemplateId: str + Arn: str + VersionArn: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateThemeResponseTypeDef(BaseModel): + ThemeId: str + Arn: str + VersionArn: str + CreationStatus: ResourceStatusType + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTopicRefreshScheduleResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + DatasetArn: str + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTopicResponseTypeDef(BaseModel): + TopicId: str + Arn: str + RefreshArn: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVPCConnectionResponseTypeDef(BaseModel): + Arn: str + VPCConnectionId: str + UpdateStatus: VPCConnectionResourceStatusType + AvailabilityStatus: VPCConnectionAvailabilityStatusType + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CategoryFilterConfigurationOutputTypeDef(BaseModel): + FilterListConfiguration: Optional[FilterListConfigurationOutputTypeDef] = None + CustomFilterListConfiguration: Optional[CustomFilterListConfigurationOutputTypeDef] = None + CustomFilterConfiguration: Optional[CustomFilterConfigurationTypeDef] = None + +class CategoryFilterConfigurationTypeDef(BaseModel): + FilterListConfiguration: Optional[FilterListConfigurationTypeDef] = None + CustomFilterListConfiguration: Optional[CustomFilterListConfigurationTypeDef] = None + CustomFilterConfiguration: Optional[CustomFilterConfigurationTypeDef] = None + +class ClusterMarkerTypeDef(BaseModel): + SimpleClusterMarker: Optional[SimpleClusterMarkerTypeDef] = None + +class TopicCategoryFilterConstantOutputTypeDef(BaseModel): + ConstantType: Optional[ConstantTypeType] = None + SingularConstant: Optional[str] = None + CollectiveConstant: Optional[CollectiveConstantOutputTypeDef] = None + +class TopicCategoryFilterConstantTypeDef(BaseModel): + ConstantType: Optional[ConstantTypeType] = None + SingularConstant: Optional[str] = None + CollectiveConstant: Optional[CollectiveConstantTypeDef] = None + +class ColorScaleOutputTypeDef(BaseModel): + Colors: List[DataColorTypeDef] + ColorFillType: ColorFillTypeType + NullValueColor: Optional[DataColorTypeDef] = None + +class ColorScaleTypeDef(BaseModel): + Colors: Sequence[DataColorTypeDef] + ColorFillType: ColorFillTypeType + NullValueColor: Optional[DataColorTypeDef] = None + +class ColorsConfigurationOutputTypeDef(BaseModel): + CustomColors: Optional[List[CustomColorTypeDef]] = None + +class ColorsConfigurationTypeDef(BaseModel): + CustomColors: Optional[Sequence[CustomColorTypeDef]] = None + +class ColumnTagTypeDef(BaseModel): + ColumnGeographicRole: Optional[GeoSpatialDataRoleType] = None + ColumnDescription: Optional[ColumnDescriptionTypeDef] = None + +class ColumnGroupSchemaOutputTypeDef(BaseModel): + Name: Optional[str] = None + ColumnGroupColumnSchemaList: Optional[List[ColumnGroupColumnSchemaTypeDef]] = None + +class ColumnGroupSchemaTypeDef(BaseModel): + Name: Optional[str] = None + ColumnGroupColumnSchemaList: Optional[Sequence[ColumnGroupColumnSchemaTypeDef]] = None + +class ColumnGroupOutputTypeDef(BaseModel): + GeoSpatialColumnGroup: Optional[GeoSpatialColumnGroupOutputTypeDef] = None + +class ColumnGroupTypeDef(BaseModel): + GeoSpatialColumnGroup: Optional[GeoSpatialColumnGroupTypeDef] = None + +class DataSetSchemaOutputTypeDef(BaseModel): + ColumnSchemaList: Optional[List[ColumnSchemaTypeDef]] = None + +class DataSetSchemaTypeDef(BaseModel): + ColumnSchemaList: Optional[Sequence[ColumnSchemaTypeDef]] = None + +class ConditionalFormattingCustomIconConditionTypeDef(BaseModel): + Expression: str + IconOptions: ConditionalFormattingCustomIconOptionsTypeDef + Color: Optional[str] = None + DisplayConfiguration: Optional[ConditionalFormattingIconDisplayConfigurationTypeDef] = None + +class CreateAccountSubscriptionResponseTypeDef(BaseModel): + SignupResponse: SignupResponseTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataSetSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + DataSetId: Optional[str] = None + Name: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + ImportMode: Optional[DataSetImportModeType] = None + RowLevelPermissionDataSet: Optional[RowLevelPermissionDataSetTypeDef] = None + RowLevelPermissionTagConfigurationApplied: Optional[bool] = None + ColumnLevelPermissionRulesApplied: Optional[bool] = None + +class CreateFolderMembershipResponseTypeDef(BaseModel): + Status: int + FolderMember: FolderMemberTypeDef + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupMembershipResponseTypeDef(BaseModel): + GroupMember: GroupMemberTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGroupMembershipResponseTypeDef(BaseModel): + GroupMember: GroupMemberTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupMembershipsResponseTypeDef(BaseModel): + GroupMemberList: List[GroupMemberTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsResponseTypeDef(BaseModel): + GroupList: List[GroupTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUserGroupsResponseTypeDef(BaseModel): + GroupList: List[GroupTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchGroupsResponseTypeDef(BaseModel): + GroupList: List[GroupTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateAliasResponseTypeDef(BaseModel): + TemplateAlias: TemplateAliasTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTemplateAliasResponseTypeDef(BaseModel): + TemplateAlias: TemplateAliasTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplateAliasesResponseTypeDef(BaseModel): + TemplateAliasList: List[TemplateAliasTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateTemplateAliasResponseTypeDef(BaseModel): + TemplateAlias: TemplateAliasTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateThemeAliasResponseTypeDef(BaseModel): + ThemeAlias: ThemeAliasTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeThemeAliasResponseTypeDef(BaseModel): + ThemeAlias: ThemeAliasTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListThemeAliasesResponseTypeDef(BaseModel): + ThemeAliasList: List[ThemeAliasTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateThemeAliasResponseTypeDef(BaseModel): + ThemeAlias: ThemeAliasTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CustomActionNavigationOperationTypeDef(BaseModel): + LocalNavigationConfiguration: Optional[LocalNavigationConfigurationTypeDef] = None + +class CustomValuesConfigurationOutputTypeDef(BaseModel): + CustomValues: CustomParameterValuesOutputTypeDef + IncludeNullValue: Optional[bool] = None + +class CustomSqlOutputTypeDef(BaseModel): + DataSourceArn: str + Name: str + SqlQuery: str + Columns: Optional[List[InputColumnTypeDef]] = None + +class CustomSqlTypeDef(BaseModel): + DataSourceArn: str + Name: str + SqlQuery: str + Columns: Optional[Sequence[InputColumnTypeDef]] = None + +class RelationalTableOutputTypeDef(BaseModel): + DataSourceArn: str + Name: str + InputColumns: List[InputColumnTypeDef] + Catalog: Optional[str] = None + Schema: Optional[str] = None + +class RelationalTableTypeDef(BaseModel): + DataSourceArn: str + Name: str + InputColumns: Sequence[InputColumnTypeDef] + Catalog: Optional[str] = None + Schema: Optional[str] = None + +class VisualInteractionOptionsTypeDef(BaseModel): + VisualMenuOption: Optional[VisualMenuOptionTypeDef] = None + ContextMenuOption: Optional[ContextMenuOptionTypeDef] = None + +class SearchDashboardsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[DashboardSearchFilterTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDashboardsResponseTypeDef(BaseModel): + DashboardSummaryList: List[DashboardSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchDashboardsResponseTypeDef(BaseModel): + DashboardSummaryList: List[DashboardSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDashboardVersionsResponseTypeDef(BaseModel): + DashboardVersionSummaryList: List[DashboardVersionSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DashboardVisualPublishOptionsTypeDef(BaseModel): + ExportHiddenFieldsOption: Optional[ExportHiddenFieldsOptionTypeDef] = None + +class TableInlineVisualizationTypeDef(BaseModel): + DataBars: Optional[DataBarsOptionsTypeDef] = None + +class DataLabelTypeTypeDef(BaseModel): + FieldLabelType: Optional[FieldLabelTypeTypeDef] = None + DataPathLabelType: Optional[DataPathLabelTypeTypeDef] = None + RangeEndsLabelType: Optional[RangeEndsLabelTypeTypeDef] = None + MinimumLabelType: Optional[MinimumLabelTypeTypeDef] = None + MaximumLabelType: Optional[MaximumLabelTypeTypeDef] = None + +class DataPathValueTypeDef(BaseModel): + FieldId: Optional[str] = None + FieldValue: Optional[str] = None + DataPathType: Optional[DataPathTypeTypeDef] = None + +class SearchDataSetsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[DataSetSearchFilterTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SearchDataSourcesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[DataSourceSearchFilterTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SearchDataSourcesResponseTypeDef(BaseModel): + DataSourceSummaries: List[DataSourceSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DateTimeDatasetParameterOutputTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + TimeGranularity: Optional[TimeGranularityType] = None + DefaultValues: Optional[DateTimeDatasetParameterDefaultValuesOutputTypeDef] = None + +class TimeRangeFilterValueOutputTypeDef(BaseModel): + StaticValue: Optional[datetime] = None + RollingDate: Optional[RollingDateConfigurationTypeDef] = None + Parameter: Optional[str] = None + +class TimeRangeFilterValueTypeDef(BaseModel): + StaticValue: Optional[TimestampTypeDef] = None + RollingDate: Optional[RollingDateConfigurationTypeDef] = None + Parameter: Optional[str] = None + +class DecimalDatasetParameterOutputTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + DefaultValues: Optional[DecimalDatasetParameterDefaultValuesOutputTypeDef] = None + +class DecimalDatasetParameterTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + DefaultValues: Optional[DecimalDatasetParameterDefaultValuesTypeDef] = None + +class DescribeAnalysisPermissionsResponseTypeDef(BaseModel): + AnalysisId: str + AnalysisArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataSetPermissionsResponseTypeDef(BaseModel): + DataSetArn: str + DataSetId: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataSourcePermissionsResponseTypeDef(BaseModel): + DataSourceArn: str + DataSourceId: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTemplatePermissionsResponseTypeDef(BaseModel): + TemplateId: str + TemplateArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeThemePermissionsResponseTypeDef(BaseModel): + ThemeId: str + ThemeArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTopicPermissionsResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class LinkSharingConfigurationOutputTypeDef(BaseModel): + Permissions: Optional[List[ResourcePermissionOutputTypeDef]] = None + +class UpdateAnalysisPermissionsResponseTypeDef(BaseModel): + AnalysisArn: str + AnalysisId: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFolderPermissionsResponseTypeDef(BaseModel): + Status: int + Arn: str + FolderId: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTemplatePermissionsResponseTypeDef(BaseModel): + TemplateId: str + TemplateArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateThemePermissionsResponseTypeDef(BaseModel): + ThemeId: str + ThemeArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTopicPermissionsResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFolderPermissionsRequestDescribeFolderPermissionsPaginateTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + Namespace: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAnalysesRequestListAnalysesPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetBundleExportJobsRequestListAssetBundleExportJobsPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssetBundleImportJobsRequestListAssetBundleImportJobsPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDashboardVersionsRequestListDashboardVersionsPaginateTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDashboardsRequestListDashboardsPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSetsRequestListDataSetsPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataSourcesRequestListDataSourcesPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFolderMembersRequestListFolderMembersPaginateTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFoldersRequestListFoldersPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupMembershipsRequestListGroupMembershipsPaginateTypeDef(BaseModel): + GroupName: str + AwsAccountId: str + Namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIAMPolicyAssignmentsForUserRequestListIAMPolicyAssignmentsForUserPaginateTypeDef(BaseModel): + AwsAccountId: str + UserName: str + Namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIAMPolicyAssignmentsRequestListIAMPolicyAssignmentsPaginateTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + AssignmentStatus: Optional[AssignmentStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIngestionsRequestListIngestionsPaginateTypeDef(BaseModel): + DataSetId: str + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNamespacesRequestListNamespacesPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoleMembershipsRequestListRoleMembershipsPaginateTypeDef(BaseModel): + Role: RoleType + AwsAccountId: str + Namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplateAliasesRequestListTemplateAliasesPaginateTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplateVersionsRequestListTemplateVersionsPaginateTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplatesRequestListTemplatesPaginateTypeDef(BaseModel): + AwsAccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThemeVersionsRequestListThemeVersionsPaginateTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListThemesRequestListThemesPaginateTypeDef(BaseModel): + AwsAccountId: str + Type: Optional[ThemeTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserGroupsRequestListUserGroupsPaginateTypeDef(BaseModel): + UserName: str + AwsAccountId: str + Namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchAnalysesRequestSearchAnalysesPaginateTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[AnalysisSearchFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchDashboardsRequestSearchDashboardsPaginateTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[DashboardSearchFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchDataSetsRequestSearchDataSetsPaginateTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[DataSetSearchFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchDataSourcesRequestSearchDataSourcesPaginateTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[DataSourceSearchFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFolderPermissionsResponseTypeDef(BaseModel): + Status: int + FolderId: str + Arn: str + Permissions: List[ResourcePermissionExtraOutputTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFolderResolvedPermissionsResponseTypeDef(BaseModel): + Status: int + FolderId: str + Arn: str + Permissions: List[ResourcePermissionExtraOutputTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeFolderResponseTypeDef(BaseModel): + Status: int + Folder: FolderTypeDef + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIAMPolicyAssignmentResponseTypeDef(BaseModel): + IAMPolicyAssignment: IAMPolicyAssignmentTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeKeyRegistrationResponseTypeDef(BaseModel): + AwsAccountId: str + KeyRegistration: List[RegisteredCustomerManagedKeyTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKeyRegistrationRequestRequestTypeDef(BaseModel): + AwsAccountId: str + KeyRegistration: Sequence[RegisteredCustomerManagedKeyTypeDef] + +class DescribeTopicRefreshResponseTypeDef(BaseModel): + RefreshDetails: TopicRefreshDetailsTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTopicRefreshScheduleResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + DatasetArn: str + RefreshSchedule: TopicRefreshScheduleOutputTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TopicRefreshScheduleSummaryTypeDef(BaseModel): + DatasetId: Optional[str] = None + DatasetArn: Optional[str] = None + DatasetName: Optional[str] = None + RefreshSchedule: Optional[TopicRefreshScheduleOutputTypeDef] = None + +class DescribeUserResponseTypeDef(BaseModel): + User: UserTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsersResponseTypeDef(BaseModel): + UserList: List[UserTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RegisterUserResponseTypeDef(BaseModel): + User: UserTypeDef + UserInvitationUrl: str + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserResponseTypeDef(BaseModel): + User: UserTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class DisplayFormatOptionsTypeDef(BaseModel): + UseBlankCellFormat: Optional[bool] = None + BlankCellFormat: Optional[str] = None + DateFormat: Optional[str] = None + DecimalSeparator: Optional[TopicNumericSeparatorSymbolType] = None + GroupingSeparator: Optional[str] = None + UseGrouping: Optional[bool] = None + FractionDigits: Optional[int] = None + Prefix: Optional[str] = None + Suffix: Optional[str] = None + UnitScaler: Optional[NumberScaleType] = None + NegativeFormat: Optional[NegativeFormatTypeDef] = None + CurrencySymbol: Optional[str] = None + +class DonutOptionsTypeDef(BaseModel): + ArcOptions: Optional[ArcOptionsTypeDef] = None + DonutCenterOptions: Optional[DonutCenterOptionsTypeDef] = None + +class FilterOperationTargetVisualsConfigurationOutputTypeDef(BaseModel): + SameSheetTargetVisualConfiguration: Optional[ SameSheetTargetVisualConfigurationOutputTypeDef ] = None + +class FilterOperationTargetVisualsConfigurationTypeDef(BaseModel): + SameSheetTargetVisualConfiguration: Optional[ SameSheetTargetVisualConfigurationTypeDef ] = None + +class SearchFoldersRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[FolderSearchFilterTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SearchFoldersRequestSearchFoldersPaginateTypeDef(BaseModel): + AwsAccountId: str + Filters: Sequence[FolderSearchFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFoldersResponseTypeDef(BaseModel): + Status: int + FolderSummaryList: List[FolderSummaryTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchFoldersResponseTypeDef(BaseModel): + Status: int + FolderSummaryList: List[FolderSummaryTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FontConfigurationTypeDef(BaseModel): + FontSize: Optional[FontSizeTypeDef] = None + FontDecoration: Optional[FontDecorationType] = None + FontColor: Optional[str] = None + FontWeight: Optional[FontWeightTypeDef] = None + FontStyle: Optional[FontStyleType] = None + +class TypographyOutputTypeDef(BaseModel): + FontFamilies: Optional[List[FontTypeDef]] = None + +class TypographyTypeDef(BaseModel): + FontFamilies: Optional[Sequence[FontTypeDef]] = None + +class ForecastScenarioOutputTypeDef(BaseModel): + WhatIfPointScenario: Optional[WhatIfPointScenarioOutputTypeDef] = None + WhatIfRangeScenario: Optional[WhatIfRangeScenarioOutputTypeDef] = None + +class FreeFormLayoutCanvasSizeOptionsTypeDef(BaseModel): + ScreenCanvasSizeOptions: Optional[FreeFormLayoutScreenCanvasSizeOptionsTypeDef] = None + +class SnapshotAnonymousUserTypeDef(BaseModel): + RowLevelPermissionTags: Optional[Sequence[SessionTagTypeDef]] = None + +class GeospatialWindowOptionsTypeDef(BaseModel): + Bounds: Optional[GeospatialCoordinateBoundsTypeDef] = None + MapZoomMode: Optional[MapZoomModeType] = None + +class GeospatialHeatmapColorScaleOutputTypeDef(BaseModel): + Colors: Optional[List[GeospatialHeatmapDataColorTypeDef]] = None + +class GeospatialHeatmapColorScaleTypeDef(BaseModel): + Colors: Optional[Sequence[GeospatialHeatmapDataColorTypeDef]] = None + +class TableSideBorderOptionsTypeDef(BaseModel): + InnerVertical: Optional[TableBorderOptionsTypeDef] = None + InnerHorizontal: Optional[TableBorderOptionsTypeDef] = None + Left: Optional[TableBorderOptionsTypeDef] = None + Right: Optional[TableBorderOptionsTypeDef] = None + Top: Optional[TableBorderOptionsTypeDef] = None + Bottom: Optional[TableBorderOptionsTypeDef] = None + +class GradientColorOutputTypeDef(BaseModel): + Stops: Optional[List[GradientStopTypeDef]] = None + +class GradientColorTypeDef(BaseModel): + Stops: Optional[Sequence[GradientStopTypeDef]] = None + +class GridLayoutCanvasSizeOptionsTypeDef(BaseModel): + ScreenCanvasSizeOptions: Optional[GridLayoutScreenCanvasSizeOptionsTypeDef] = None + +class SearchGroupsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + Filters: Sequence[GroupSearchFilterTypeDef] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SearchGroupsRequestSearchGroupsPaginateTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + Filters: Sequence[GroupSearchFilterTypeDef] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIAMPolicyAssignmentsResponseTypeDef(BaseModel): + IAMPolicyAssignments: List[IAMPolicyAssignmentSummaryTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class IncrementalRefreshTypeDef(BaseModel): + LookbackWindow: LookbackWindowTypeDef + +class IngestionTypeDef(BaseModel): + Arn: str + IngestionStatus: IngestionStatusType + CreatedTime: datetime + IngestionId: Optional[str] = None + ErrorInfo: Optional[ErrorInfoTypeDef] = None + RowInfo: Optional[RowInfoTypeDef] = None + QueueInfo: Optional[QueueInfoTypeDef] = None + IngestionTimeInSeconds: Optional[int] = None + IngestionSizeInBytes: Optional[int] = None + RequestSource: Optional[IngestionRequestSourceType] = None + RequestType: Optional[IngestionRequestTypeType] = None + +class IntegerDatasetParameterOutputTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + DefaultValues: Optional[IntegerDatasetParameterDefaultValuesOutputTypeDef] = None + +class IntegerDatasetParameterTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + DefaultValues: Optional[IntegerDatasetParameterDefaultValuesTypeDef] = None + +class JoinInstructionTypeDef(BaseModel): + LeftOperand: str + RightOperand: str + Type: JoinTypeType + OnClause: str + LeftJoinKeyProperties: Optional[JoinKeyPropertiesTypeDef] = None + RightJoinKeyProperties: Optional[JoinKeyPropertiesTypeDef] = None + +class KPIVisualLayoutOptionsTypeDef(BaseModel): + StandardLayout: Optional[KPIVisualStandardLayoutTypeDef] = None + +class LineChartDefaultSeriesSettingsTypeDef(BaseModel): + AxisBinding: Optional[AxisBindingType] = None + LineStyleSettings: Optional[LineChartLineStyleSettingsTypeDef] = None + MarkerStyleSettings: Optional[LineChartMarkerStyleSettingsTypeDef] = None + +class LineChartSeriesSettingsTypeDef(BaseModel): + LineStyleSettings: Optional[LineChartLineStyleSettingsTypeDef] = None + MarkerStyleSettings: Optional[LineChartMarkerStyleSettingsTypeDef] = None + +class LinkSharingConfigurationTypeDef(BaseModel): + Permissions: Optional[Sequence[ResourcePermissionTypeDef]] = None + +class ListFolderMembersResponseTypeDef(BaseModel): + Status: int + FolderMemberList: List[MemberIdArnPairTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTemplateVersionsResponseTypeDef(BaseModel): + TemplateVersionSummaryList: List[TemplateVersionSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTemplatesResponseTypeDef(BaseModel): + TemplateSummaryList: List[TemplateSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListThemeVersionsResponseTypeDef(BaseModel): + ThemeVersionSummaryList: List[ThemeVersionSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListThemesResponseTypeDef(BaseModel): + ThemeSummaryList: List[ThemeSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTopicsResponseTypeDef(BaseModel): + TopicsSummaries: List[TopicSummaryTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class VisualSubtitleLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + FormatText: Optional[LongFormatTextTypeDef] = None + +class S3ParametersTypeDef(BaseModel): + ManifestFileLocation: ManifestFileLocationTypeDef + RoleArn: Optional[str] = None + +class TileLayoutStyleTypeDef(BaseModel): + Gutter: Optional[GutterStyleTypeDef] = None + Margin: Optional[MarginStyleTypeDef] = None + +class NamedEntityDefinitionOutputTypeDef(BaseModel): + FieldName: Optional[str] = None + PropertyName: Optional[str] = None + PropertyRole: Optional[PropertyRoleType] = None + PropertyUsage: Optional[PropertyUsageType] = None + Metric: Optional[NamedEntityDefinitionMetricOutputTypeDef] = None + +class NamedEntityDefinitionTypeDef(BaseModel): + FieldName: Optional[str] = None + PropertyName: Optional[str] = None + PropertyRole: Optional[PropertyRoleType] = None + PropertyUsage: Optional[PropertyUsageType] = None + Metric: Optional[NamedEntityDefinitionMetricTypeDef] = None + +class NamespaceInfoV2TypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + CapacityRegion: Optional[str] = None + CreationStatus: Optional[NamespaceStatusType] = None + IdentityStore: Optional[Literal["QUICKSIGHT"]] = None + NamespaceError: Optional[NamespaceErrorTypeDef] = None + +class VPCConnectionSummaryTypeDef(BaseModel): + VPCConnectionId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + VPCId: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + DnsResolvers: Optional[List[str]] = None + Status: Optional[VPCConnectionResourceStatusType] = None + AvailabilityStatus: Optional[VPCConnectionAvailabilityStatusType] = None + NetworkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + RoleArn: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class VPCConnectionTypeDef(BaseModel): + VPCConnectionId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + VPCId: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + DnsResolvers: Optional[List[str]] = None + Status: Optional[VPCConnectionResourceStatusType] = None + AvailabilityStatus: Optional[VPCConnectionAvailabilityStatusType] = None + NetworkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + RoleArn: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class OverrideDatasetParameterOperationOutputTypeDef(BaseModel): + ParameterName: str + NewParameterName: Optional[str] = None + NewDefaultValues: Optional[NewDefaultValuesOutputTypeDef] = None + +class NumericSeparatorConfigurationTypeDef(BaseModel): + DecimalSeparator: Optional[NumericSeparatorSymbolType] = None + ThousandsSeparator: Optional[ThousandSeparatorOptionsTypeDef] = None + +class NumericalAggregationFunctionTypeDef(BaseModel): + SimpleNumericalAggregation: Optional[SimpleNumericalAggregationFunctionType] = None + PercentileAggregation: Optional[PercentileAggregationTypeDef] = None + +class ParametersOutputTypeDef(BaseModel): + StringParameters: Optional[List[StringParameterOutputTypeDef]] = None + IntegerParameters: Optional[List[IntegerParameterOutputTypeDef]] = None + DecimalParameters: Optional[List[DecimalParameterOutputTypeDef]] = None + DateTimeParameters: Optional[List[DateTimeParameterOutputTypeDef]] = None + +class VisibleRangeOptionsTypeDef(BaseModel): + PercentRange: Optional[PercentVisibleRangeTypeDef] = None + +class RadarChartSeriesSettingsTypeDef(BaseModel): + AreaStyleSettings: Optional[RadarChartAreaStyleSettingsTypeDef] = None + +class TopicRangeFilterConstantTypeDef(BaseModel): + ConstantType: Optional[ConstantTypeType] = None + RangeConstant: Optional[RangeConstantTypeDef] = None + +class RedshiftParametersExtraOutputTypeDef(BaseModel): + Database: str + Host: Optional[str] = None + Port: Optional[int] = None + ClusterId: Optional[str] = None + IAMParameters: Optional[RedshiftIAMParametersExtraOutputTypeDef] = None + IdentityCenterConfiguration: Optional[IdentityCenterConfigurationTypeDef] = None + +class RedshiftParametersOutputTypeDef(BaseModel): + Database: str + Host: Optional[str] = None + Port: Optional[int] = None + ClusterId: Optional[str] = None + IAMParameters: Optional[RedshiftIAMParametersOutputTypeDef] = None + IdentityCenterConfiguration: Optional[IdentityCenterConfigurationTypeDef] = None + +class RedshiftParametersTypeDef(BaseModel): + Database: str + Host: Optional[str] = None + Port: Optional[int] = None + ClusterId: Optional[str] = None + IAMParameters: Optional[RedshiftIAMParametersTypeDef] = None + IdentityCenterConfiguration: Optional[IdentityCenterConfigurationTypeDef] = None + +class RefreshFrequencyTypeDef(BaseModel): + Interval: RefreshIntervalType + RefreshOnDay: Optional[ScheduleRefreshOnEntityTypeDef] = None + Timezone: Optional[str] = None + TimeOfTheDay: Optional[str] = None + +class RegisteredUserConsoleFeatureConfigurationsTypeDef(BaseModel): + StatePersistence: Optional[StatePersistenceConfigurationsTypeDef] = None + +class RegisteredUserDashboardFeatureConfigurationsTypeDef(BaseModel): + StatePersistence: Optional[StatePersistenceConfigurationsTypeDef] = None + Bookmarks: Optional[BookmarksConfigurationsTypeDef] = None + +class RowLevelPermissionTagConfigurationOutputTypeDef(BaseModel): + TagRules: List[RowLevelPermissionTagRuleTypeDef] + Status: Optional[StatusType] = None + TagRuleConfigurations: Optional[List[List[str]]] = None + +class RowLevelPermissionTagConfigurationTypeDef(BaseModel): + TagRules: Sequence[RowLevelPermissionTagRuleTypeDef] + Status: Optional[StatusType] = None + TagRuleConfigurations: Optional[Sequence[Sequence[str]]] = None + +class SnapshotS3DestinationConfigurationTypeDef(BaseModel): + BucketConfiguration: S3BucketConfigurationTypeDef + +class S3SourceOutputTypeDef(BaseModel): + DataSourceArn: str + InputColumns: List[InputColumnTypeDef] + UploadSettings: Optional[UploadSettingsTypeDef] = None + +class S3SourceTypeDef(BaseModel): + DataSourceArn: str + InputColumns: Sequence[InputColumnTypeDef] + UploadSettings: Optional[UploadSettingsTypeDef] = None + +class SectionBasedLayoutPaperCanvasSizeOptionsTypeDef(BaseModel): + PaperSize: Optional[PaperSizeType] = None + PaperOrientation: Optional[PaperOrientationType] = None + PaperMargin: Optional[SpacingTypeDef] = None + +class SectionStyleTypeDef(BaseModel): + Height: Optional[str] = None + Padding: Optional[SpacingTypeDef] = None + +class SelectedSheetsFilterScopeConfigurationOutputTypeDef(BaseModel): + SheetVisualScopingConfigurations: Optional[ List[SheetVisualScopingConfigurationOutputTypeDef] ] = None + +class SelectedSheetsFilterScopeConfigurationTypeDef(BaseModel): + SheetVisualScopingConfigurations: Optional[ Sequence[SheetVisualScopingConfigurationTypeDef] ] = None + +class SheetElementRenderingRuleTypeDef(BaseModel): + Expression: str + ConfigurationOverrides: SheetElementConfigurationOverridesTypeDef + +class VisualTitleLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + FormatText: Optional[ShortFormatTextTypeDef] = None + +class SingleAxisOptionsTypeDef(BaseModel): + YAxisOptions: Optional[YAxisOptionsTypeDef] = None + +class SnapshotUserConfigurationRedactedTypeDef(BaseModel): + AnonymousUsers: Optional[List[SnapshotAnonymousUserRedactedTypeDef]] = None + +class SnapshotFileOutputTypeDef(BaseModel): + SheetSelections: List[SnapshotFileSheetSelectionOutputTypeDef] + FormatType: SnapshotFileFormatTypeType + +class SnapshotFileTypeDef(BaseModel): + SheetSelections: Sequence[SnapshotFileSheetSelectionTypeDef] + FormatType: SnapshotFileFormatTypeType + +class StringDatasetParameterOutputTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + DefaultValues: Optional[StringDatasetParameterDefaultValuesOutputTypeDef] = None + +class StringDatasetParameterTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + DefaultValues: Optional[StringDatasetParameterDefaultValuesTypeDef] = None + +class UpdateKeyRegistrationResponseTypeDef(BaseModel): + FailedKeyRegistration: List[FailedKeyRegistrationEntryTypeDef] + SuccessfulKeyRegistration: List[SuccessfulKeyRegistrationEntryTypeDef] + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TableFieldImageConfigurationTypeDef(BaseModel): + SizingOptions: Optional[TableCellImageSizingConfigurationTypeDef] = None + +class TopicNumericEqualityFilterTypeDef(BaseModel): + Constant: Optional[TopicSingularFilterConstantTypeDef] = None + Aggregation: Optional[NamedFilterAggTypeType] = None + +class TopicRelativeDateFilterTypeDef(BaseModel): + TimeGranularity: Optional[TopicTimeGranularityType] = None + RelativeDateFilterFunction: Optional[TopicRelativeDateFilterFunctionType] = None + Constant: Optional[TopicSingularFilterConstantTypeDef] = None + +class TotalAggregationOptionTypeDef(BaseModel): + FieldId: str + TotalAggregationFunction: TotalAggregationFunctionTypeDef + +class WaterfallChartColorConfigurationTypeDef(BaseModel): + GroupColorConfiguration: Optional[WaterfallChartGroupColorConfigurationTypeDef] = None + +class CascadingControlConfigurationOutputTypeDef(BaseModel): + SourceControls: Optional[List[CascadingControlSourceTypeDef]] = None + +class CascadingControlConfigurationTypeDef(BaseModel): + SourceControls: Optional[Sequence[CascadingControlSourceTypeDef]] = None + +class DateTimeDefaultValuesOutputTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[List[datetime]] = None + RollingDate: Optional[RollingDateConfigurationTypeDef] = None + +class DateTimeDefaultValuesTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[Sequence[TimestampTypeDef]] = None + RollingDate: Optional[RollingDateConfigurationTypeDef] = None + +class DecimalDefaultValuesOutputTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[List[float]] = None + +class DecimalDefaultValuesTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[Sequence[float]] = None + +class IntegerDefaultValuesOutputTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[List[int]] = None + +class IntegerDefaultValuesTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[Sequence[int]] = None + +class StringDefaultValuesOutputTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[List[str]] = None + +class StringDefaultValuesTypeDef(BaseModel): + DynamicValue: Optional[DynamicDefaultValueTypeDef] = None + StaticValues: Optional[Sequence[str]] = None + +class DrillDownFilterOutputTypeDef(BaseModel): + NumericEqualityFilter: Optional[NumericEqualityDrillDownFilterTypeDef] = None + CategoryFilter: Optional[CategoryDrillDownFilterOutputTypeDef] = None + TimeRangeFilter: Optional[TimeRangeDrillDownFilterOutputTypeDef] = None + +class AnalysisTypeDef(BaseModel): + AnalysisId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Status: Optional[ResourceStatusType] = None + Errors: Optional[List[AnalysisErrorTypeDef]] = None + DataSetArns: Optional[List[str]] = None + ThemeArn: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + Sheets: Optional[List[SheetTypeDef]] = None + +class DashboardVersionTypeDef(BaseModel): + CreatedTime: Optional[datetime] = None + Errors: Optional[List[DashboardErrorTypeDef]] = None + VersionNumber: Optional[int] = None + Status: Optional[ResourceStatusType] = None + Arn: Optional[str] = None + SourceEntityArn: Optional[str] = None + DataSetArns: Optional[List[str]] = None + Description: Optional[str] = None + ThemeArn: Optional[str] = None + Sheets: Optional[List[SheetTypeDef]] = None + +class AnalysisSourceEntityTypeDef(BaseModel): + SourceTemplate: Optional[AnalysisSourceTemplateTypeDef] = None + +class DashboardSourceEntityTypeDef(BaseModel): + SourceTemplate: Optional[DashboardSourceTemplateTypeDef] = None + +class TemplateSourceEntityTypeDef(BaseModel): + SourceAnalysis: Optional[TemplateSourceAnalysisTypeDef] = None + SourceTemplate: Optional[TemplateSourceTemplateTypeDef] = None + +class AnonymousUserEmbeddingExperienceConfigurationTypeDef(BaseModel): + Dashboard: Optional[AnonymousUserDashboardEmbeddingConfigurationTypeDef] = None + DashboardVisual: Optional[AnonymousUserDashboardVisualEmbeddingConfigurationTypeDef] = None + QSearchBar: Optional[AnonymousUserQSearchBarEmbeddingConfigurationTypeDef] = None + GenerativeQnA: Optional[AnonymousUserGenerativeQnAEmbeddingConfigurationTypeDef] = None + +class DescribeAssetBundleExportJobResponseTypeDef(BaseModel): + JobStatus: AssetBundleExportJobStatusType + DownloadUrl: str + Errors: List[AssetBundleExportJobErrorTypeDef] + Arn: str + CreatedTime: datetime + AssetBundleExportJobId: str + AwsAccountId: str + ResourceArns: List[str] + IncludeAllDependencies: bool + ExportFormat: AssetBundleExportFormatType + CloudFormationOverridePropertyConfiguration: AssetBundleCloudFormationOverridePropertyConfigurationOutputTypeDef + RequestId: str + Status: int + IncludePermissions: bool + IncludeTags: bool + ValidationStrategy: AssetBundleExportJobValidationStrategyTypeDef + Warnings: List[AssetBundleExportJobWarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartAssetBundleExportJobRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssetBundleExportJobId: str + ResourceArns: Sequence[str] + ExportFormat: AssetBundleExportFormatType + IncludeAllDependencies: Optional[bool] = None + CloudFormationOverridePropertyConfiguration: Optional[ AssetBundleCloudFormationOverridePropertyConfigurationTypeDef ] = None + IncludePermissions: Optional[bool] = None + IncludeTags: Optional[bool] = None + ValidationStrategy: Optional[AssetBundleExportJobValidationStrategyTypeDef] = None + +class AssetBundleImportJobDashboardOverridePermissionsOutputTypeDef(BaseModel): + DashboardIds: List[str] + Permissions: Optional[AssetBundleResourcePermissionsOutputTypeDef] = None + LinkSharingConfiguration: Optional[ AssetBundleResourceLinkSharingConfigurationOutputTypeDef ] = None + +class AssetBundleImportJobDashboardOverridePermissionsTypeDef(BaseModel): + DashboardIds: Sequence[str] + Permissions: Optional[AssetBundleResourcePermissionsTypeDef] = None + LinkSharingConfiguration: Optional[AssetBundleResourceLinkSharingConfigurationTypeDef] = None + +class AssetBundleImportJobOverrideTagsOutputTypeDef(BaseModel): + VPCConnections: Optional[ List[AssetBundleImportJobVPCConnectionOverrideTagsOutputTypeDef] ] = None + DataSources: Optional[List[AssetBundleImportJobDataSourceOverrideTagsOutputTypeDef]] = None + DataSets: Optional[List[AssetBundleImportJobDataSetOverrideTagsOutputTypeDef]] = None + Themes: Optional[List[AssetBundleImportJobThemeOverrideTagsOutputTypeDef]] = None + Analyses: Optional[List[AssetBundleImportJobAnalysisOverrideTagsOutputTypeDef]] = None + Dashboards: Optional[List[AssetBundleImportJobDashboardOverrideTagsOutputTypeDef]] = None + +class AssetBundleImportJobOverrideTagsTypeDef(BaseModel): + VPCConnections: Optional[ Sequence[AssetBundleImportJobVPCConnectionOverrideTagsTypeDef] ] = None + DataSources: Optional[Sequence[AssetBundleImportJobDataSourceOverrideTagsTypeDef]] = None + DataSets: Optional[Sequence[AssetBundleImportJobDataSetOverrideTagsTypeDef]] = None + Themes: Optional[Sequence[AssetBundleImportJobThemeOverrideTagsTypeDef]] = None + Analyses: Optional[Sequence[AssetBundleImportJobAnalysisOverrideTagsTypeDef]] = None + Dashboards: Optional[Sequence[AssetBundleImportJobDashboardOverrideTagsTypeDef]] = None + +class CustomValuesConfigurationTypeDef(BaseModel): + CustomValues: CustomParameterValuesTypeDef + IncludeNullValue: Optional[bool] = None + +class DateTimeDatasetParameterTypeDef(BaseModel): + Id: str + Name: str + ValueType: DatasetParameterValueTypeType + TimeGranularity: Optional[TimeGranularityType] = None + DefaultValues: Optional[DateTimeDatasetParameterDefaultValuesTypeDef] = None + +class ParametersTypeDef(BaseModel): + StringParameters: Optional[Sequence[StringParameterTypeDef]] = None + IntegerParameters: Optional[Sequence[IntegerParameterTypeDef]] = None + DecimalParameters: Optional[Sequence[DecimalParameterTypeDef]] = None + DateTimeParameters: Optional[Sequence[DateTimeParameterTypeDef]] = None + +class OverrideDatasetParameterOperationTypeDef(BaseModel): + ParameterName: str + NewParameterName: Optional[str] = None + NewDefaultValues: Optional[NewDefaultValuesTypeDef] = None + +class DrillDownFilterTypeDef(BaseModel): + NumericEqualityFilter: Optional[NumericEqualityDrillDownFilterTypeDef] = None + CategoryFilter: Optional[CategoryDrillDownFilterTypeDef] = None + TimeRangeFilter: Optional[TimeRangeDrillDownFilterTypeDef] = None + +class CreateTopicRefreshScheduleRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + DatasetArn: str + RefreshSchedule: TopicRefreshScheduleTypeDef + DatasetName: Optional[str] = None + +class UpdateTopicRefreshScheduleRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + DatasetId: str + RefreshSchedule: TopicRefreshScheduleTypeDef + +class ForecastScenarioTypeDef(BaseModel): + WhatIfPointScenario: Optional[WhatIfPointScenarioTypeDef] = None + WhatIfRangeScenario: Optional[WhatIfRangeScenarioTypeDef] = None + +class NumericAxisOptionsOutputTypeDef(BaseModel): + Scale: Optional[AxisScaleTypeDef] = None + Range: Optional[AxisDisplayRangeOutputTypeDef] = None + +class NumericAxisOptionsTypeDef(BaseModel): + Scale: Optional[AxisScaleTypeDef] = None + Range: Optional[AxisDisplayRangeTypeDef] = None + +class ClusterMarkerConfigurationTypeDef(BaseModel): + ClusterMarker: Optional[ClusterMarkerTypeDef] = None + +class TopicCategoryFilterOutputTypeDef(BaseModel): + CategoryFilterFunction: Optional[CategoryFilterFunctionType] = None + CategoryFilterType: Optional[CategoryFilterTypeType] = None + Constant: Optional[TopicCategoryFilterConstantOutputTypeDef] = None + Inverse: Optional[bool] = None + +class TopicCategoryFilterTypeDef(BaseModel): + CategoryFilterFunction: Optional[CategoryFilterFunctionType] = None + CategoryFilterType: Optional[CategoryFilterTypeType] = None + Constant: Optional[TopicCategoryFilterConstantTypeDef] = None + Inverse: Optional[bool] = None + +class TagColumnOperationOutputTypeDef(BaseModel): + ColumnName: str + Tags: List[ColumnTagTypeDef] + +class TagColumnOperationTypeDef(BaseModel): + ColumnName: str + Tags: Sequence[ColumnTagTypeDef] + +class DataSetConfigurationOutputTypeDef(BaseModel): + Placeholder: Optional[str] = None + DataSetSchema: Optional[DataSetSchemaOutputTypeDef] = None + ColumnGroupSchemaList: Optional[List[ColumnGroupSchemaOutputTypeDef]] = None + +class DataSetConfigurationTypeDef(BaseModel): + Placeholder: Optional[str] = None + DataSetSchema: Optional[DataSetSchemaTypeDef] = None + ColumnGroupSchemaList: Optional[Sequence[ColumnGroupSchemaTypeDef]] = None + +class ConditionalFormattingIconTypeDef(BaseModel): + IconSet: Optional[ConditionalFormattingIconSetTypeDef] = None + CustomCondition: Optional[ConditionalFormattingCustomIconConditionTypeDef] = None + +class ListDataSetsResponseTypeDef(BaseModel): + DataSetSummaries: List[DataSetSummaryTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchDataSetsResponseTypeDef(BaseModel): + DataSetSummaries: List[DataSetSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DestinationParameterValueConfigurationOutputTypeDef(BaseModel): + CustomValuesConfiguration: Optional[CustomValuesConfigurationOutputTypeDef] = None + SelectAllValueOptions: Optional[Literal["ALL_VALUES"]] = None + SourceParameterName: Optional[str] = None + SourceField: Optional[str] = None + SourceColumn: Optional[ColumnIdentifierTypeDef] = None + +class CustomContentConfigurationTypeDef(BaseModel): + ContentUrl: Optional[str] = None + ContentType: Optional[CustomContentTypeType] = None + ImageScaling: Optional[CustomContentImageScalingConfigurationType] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class DashboardPublishOptionsTypeDef(BaseModel): + AdHocFilteringOption: Optional[AdHocFilteringOptionTypeDef] = None + ExportToCSVOption: Optional[ExportToCSVOptionTypeDef] = None + SheetControlsOption: Optional[SheetControlsOptionTypeDef] = None + VisualPublishOptions: Optional[DashboardVisualPublishOptionsTypeDef] = None + SheetLayoutElementMaximizationOption: Optional[ SheetLayoutElementMaximizationOptionTypeDef ] = None + VisualMenuOption: Optional[VisualMenuOptionTypeDef] = None + VisualAxisSortOption: Optional[VisualAxisSortOptionTypeDef] = None + ExportWithHiddenFieldsOption: Optional[ExportWithHiddenFieldsOptionTypeDef] = None + DataPointDrillUpDownOption: Optional[DataPointDrillUpDownOptionTypeDef] = None + DataPointMenuLabelOption: Optional[DataPointMenuLabelOptionTypeDef] = None + DataPointTooltipOption: Optional[DataPointTooltipOptionTypeDef] = None + +class DataPathColorTypeDef(BaseModel): + Element: DataPathValueTypeDef + Color: str + TimeGranularity: Optional[TimeGranularityType] = None + +class DataPathSortOutputTypeDef(BaseModel): + Direction: SortDirectionType + SortPaths: List[DataPathValueTypeDef] + +class DataPathSortTypeDef(BaseModel): + Direction: SortDirectionType + SortPaths: Sequence[DataPathValueTypeDef] + +class PivotTableDataPathOptionOutputTypeDef(BaseModel): + DataPathList: List[DataPathValueTypeDef] + Width: Optional[str] = None + +class PivotTableDataPathOptionTypeDef(BaseModel): + DataPathList: Sequence[DataPathValueTypeDef] + Width: Optional[str] = None + +class PivotTableFieldCollapseStateTargetOutputTypeDef(BaseModel): + FieldId: Optional[str] = None + FieldDataPathValues: Optional[List[DataPathValueTypeDef]] = None + +class PivotTableFieldCollapseStateTargetTypeDef(BaseModel): + FieldId: Optional[str] = None + FieldDataPathValues: Optional[Sequence[DataPathValueTypeDef]] = None + +class DescribeDashboardPermissionsResponseTypeDef(BaseModel): + DashboardId: str + DashboardArn: str + Permissions: List[ResourcePermissionOutputTypeDef] + Status: int + RequestId: str + LinkSharingConfiguration: LinkSharingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDashboardPermissionsResponseTypeDef(BaseModel): + DashboardArn: str + DashboardId: str + Permissions: List[ResourcePermissionOutputTypeDef] + RequestId: str + Status: int + LinkSharingConfiguration: LinkSharingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTopicRefreshSchedulesResponseTypeDef(BaseModel): + TopicId: str + TopicArn: str + RefreshSchedules: List[TopicRefreshScheduleSummaryTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DefaultFormattingTypeDef(BaseModel): + DisplayFormat: Optional[DisplayFormatType] = None + DisplayFormatOptions: Optional[DisplayFormatOptionsTypeDef] = None + +class CustomActionFilterOperationOutputTypeDef(BaseModel): + SelectedFieldsConfiguration: FilterOperationSelectedFieldsConfigurationOutputTypeDef + TargetVisualsConfiguration: FilterOperationTargetVisualsConfigurationOutputTypeDef + +class CustomActionFilterOperationTypeDef(BaseModel): + SelectedFieldsConfiguration: FilterOperationSelectedFieldsConfigurationTypeDef + TargetVisualsConfiguration: FilterOperationTargetVisualsConfigurationTypeDef + +class AxisLabelOptionsTypeDef(BaseModel): + FontConfiguration: Optional[FontConfigurationTypeDef] = None + CustomLabel: Optional[str] = None + ApplyTo: Optional[AxisLabelReferenceOptionsTypeDef] = None + +class DataLabelOptionsOutputTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + CategoryLabelVisibility: Optional[VisibilityType] = None + MeasureLabelVisibility: Optional[VisibilityType] = None + DataLabelTypes: Optional[List[DataLabelTypeTypeDef]] = None + Position: Optional[DataLabelPositionType] = None + LabelContent: Optional[DataLabelContentType] = None + LabelFontConfiguration: Optional[FontConfigurationTypeDef] = None + LabelColor: Optional[str] = None + Overlap: Optional[DataLabelOverlapType] = None + TotalsVisibility: Optional[VisibilityType] = None + +class DataLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + CategoryLabelVisibility: Optional[VisibilityType] = None + MeasureLabelVisibility: Optional[VisibilityType] = None + DataLabelTypes: Optional[Sequence[DataLabelTypeTypeDef]] = None + Position: Optional[DataLabelPositionType] = None + LabelContent: Optional[DataLabelContentType] = None + LabelFontConfiguration: Optional[FontConfigurationTypeDef] = None + LabelColor: Optional[str] = None + Overlap: Optional[DataLabelOverlapType] = None + TotalsVisibility: Optional[VisibilityType] = None + +class FunnelChartDataLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + CategoryLabelVisibility: Optional[VisibilityType] = None + MeasureLabelVisibility: Optional[VisibilityType] = None + Position: Optional[DataLabelPositionType] = None + LabelFontConfiguration: Optional[FontConfigurationTypeDef] = None + LabelColor: Optional[str] = None + MeasureDataLabelStyle: Optional[FunnelChartMeasureDataLabelStyleType] = None + +class LabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + FontConfiguration: Optional[FontConfigurationTypeDef] = None + CustomLabel: Optional[str] = None + +class PanelTitleOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + FontConfiguration: Optional[FontConfigurationTypeDef] = None + HorizontalTextAlignment: Optional[HorizontalTextAlignmentType] = None + +class TableFieldCustomTextContentTypeDef(BaseModel): + FontConfiguration: FontConfigurationTypeDef + Value: Optional[str] = None + +class ForecastConfigurationOutputTypeDef(BaseModel): + ForecastProperties: Optional[TimeBasedForecastPropertiesTypeDef] = None + Scenario: Optional[ForecastScenarioOutputTypeDef] = None + +class DefaultFreeFormLayoutConfigurationTypeDef(BaseModel): + CanvasSizeOptions: FreeFormLayoutCanvasSizeOptionsTypeDef + +class SnapshotUserConfigurationTypeDef(BaseModel): + AnonymousUsers: Optional[Sequence[SnapshotAnonymousUserTypeDef]] = None + +class GeospatialHeatmapConfigurationOutputTypeDef(BaseModel): + HeatmapColor: Optional[GeospatialHeatmapColorScaleOutputTypeDef] = None + +class GeospatialHeatmapConfigurationTypeDef(BaseModel): + HeatmapColor: Optional[GeospatialHeatmapColorScaleTypeDef] = None + +class GlobalTableBorderOptionsTypeDef(BaseModel): + UniformBorder: Optional[TableBorderOptionsTypeDef] = None + SideSpecificBorder: Optional[TableSideBorderOptionsTypeDef] = None + +class ConditionalFormattingGradientColorOutputTypeDef(BaseModel): + Expression: str + Color: GradientColorOutputTypeDef + +class ConditionalFormattingGradientColorTypeDef(BaseModel): + Expression: str + Color: GradientColorTypeDef + +class DefaultGridLayoutConfigurationTypeDef(BaseModel): + CanvasSizeOptions: GridLayoutCanvasSizeOptionsTypeDef + +class GridLayoutConfigurationOutputTypeDef(BaseModel): + Elements: List[GridLayoutElementTypeDef] + CanvasSizeOptions: Optional[GridLayoutCanvasSizeOptionsTypeDef] = None + +class GridLayoutConfigurationTypeDef(BaseModel): + Elements: Sequence[GridLayoutElementTypeDef] + CanvasSizeOptions: Optional[GridLayoutCanvasSizeOptionsTypeDef] = None + +class RefreshConfigurationTypeDef(BaseModel): + IncrementalRefresh: IncrementalRefreshTypeDef + +class DescribeIngestionResponseTypeDef(BaseModel): + Ingestion: IngestionTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListIngestionsResponseTypeDef(BaseModel): + Ingestions: List[IngestionTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LogicalTableSourceTypeDef(BaseModel): + JoinInstruction: Optional[JoinInstructionTypeDef] = None + PhysicalTableId: Optional[str] = None + DataSetArn: Optional[str] = None + +class DataFieldSeriesItemTypeDef(BaseModel): + FieldId: str + AxisBinding: AxisBindingType + FieldValue: Optional[str] = None + Settings: Optional[LineChartSeriesSettingsTypeDef] = None + +class FieldSeriesItemTypeDef(BaseModel): + FieldId: str + AxisBinding: AxisBindingType + Settings: Optional[LineChartSeriesSettingsTypeDef] = None + +class CreateFolderRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + Name: Optional[str] = None + FolderType: Optional[FolderTypeType] = None + ParentFolderArn: Optional[str] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SharingModel: Optional[SharingModelType] = None + +class UpdateAnalysisPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateDashboardPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + GrantLinkPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokeLinkPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateDataSetPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateDataSourcePermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSourceId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateFolderPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + FolderId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateTemplatePermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateThemePermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class UpdateTopicPermissionsRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + GrantPermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RevokePermissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + +class SheetStyleTypeDef(BaseModel): + Tile: Optional[TileStyleTypeDef] = None + TileLayout: Optional[TileLayoutStyleTypeDef] = None + +class TopicNamedEntityOutputTypeDef(BaseModel): + EntityName: str + EntityDescription: Optional[str] = None + EntitySynonyms: Optional[List[str]] = None + SemanticEntityType: Optional[SemanticEntityTypeOutputTypeDef] = None + Definition: Optional[List[NamedEntityDefinitionOutputTypeDef]] = None + +class TopicNamedEntityTypeDef(BaseModel): + EntityName: str + EntityDescription: Optional[str] = None + EntitySynonyms: Optional[Sequence[str]] = None + SemanticEntityType: Optional[SemanticEntityTypeTypeDef] = None + Definition: Optional[Sequence[NamedEntityDefinitionTypeDef]] = None + +class DescribeNamespaceResponseTypeDef(BaseModel): + Namespace: NamespaceInfoV2TypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListNamespacesResponseTypeDef(BaseModel): + Namespaces: List[NamespaceInfoV2TypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListVPCConnectionsResponseTypeDef(BaseModel): + VPCConnectionSummaries: List[VPCConnectionSummaryTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeVPCConnectionResponseTypeDef(BaseModel): + VPCConnection: VPCConnectionTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CurrencyDisplayFormatConfigurationTypeDef(BaseModel): + Prefix: Optional[str] = None + Suffix: Optional[str] = None + SeparatorConfiguration: Optional[NumericSeparatorConfigurationTypeDef] = None + Symbol: Optional[str] = None + DecimalPlacesConfiguration: Optional[DecimalPlacesConfigurationTypeDef] = None + NumberScale: Optional[NumberScaleType] = None + NegativeValueConfiguration: Optional[NegativeValueConfigurationTypeDef] = None + NullValueFormatConfiguration: Optional[NullValueFormatConfigurationTypeDef] = None + +class NumberDisplayFormatConfigurationTypeDef(BaseModel): + Prefix: Optional[str] = None + Suffix: Optional[str] = None + SeparatorConfiguration: Optional[NumericSeparatorConfigurationTypeDef] = None + DecimalPlacesConfiguration: Optional[DecimalPlacesConfigurationTypeDef] = None + NumberScale: Optional[NumberScaleType] = None + NegativeValueConfiguration: Optional[NegativeValueConfigurationTypeDef] = None + NullValueFormatConfiguration: Optional[NullValueFormatConfigurationTypeDef] = None + +class PercentageDisplayFormatConfigurationTypeDef(BaseModel): + Prefix: Optional[str] = None + Suffix: Optional[str] = None + SeparatorConfiguration: Optional[NumericSeparatorConfigurationTypeDef] = None + DecimalPlacesConfiguration: Optional[DecimalPlacesConfigurationTypeDef] = None + NegativeValueConfiguration: Optional[NegativeValueConfigurationTypeDef] = None + NullValueFormatConfiguration: Optional[NullValueFormatConfigurationTypeDef] = None + +class AggregationFunctionTypeDef(BaseModel): + NumericalAggregationFunction: Optional[NumericalAggregationFunctionTypeDef] = None + CategoricalAggregationFunction: Optional[CategoricalAggregationFunctionType] = None + DateAggregationFunction: Optional[DateAggregationFunctionType] = None + AttributeAggregationFunction: Optional[AttributeAggregationFunctionTypeDef] = None + +class ScrollBarOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + VisibleRange: Optional[VisibleRangeOptionsTypeDef] = None + +class TopicDateRangeFilterTypeDef(BaseModel): + Inclusive: Optional[bool] = None + Constant: Optional[TopicRangeFilterConstantTypeDef] = None + +class TopicNumericRangeFilterTypeDef(BaseModel): + Inclusive: Optional[bool] = None + Constant: Optional[TopicRangeFilterConstantTypeDef] = None + Aggregation: Optional[NamedFilterAggTypeType] = None + +class DataSourceParametersExtraOutputTypeDef(BaseModel): + AmazonElasticsearchParameters: Optional[AmazonElasticsearchParametersTypeDef] = None + AthenaParameters: Optional[AthenaParametersTypeDef] = None + AuroraParameters: Optional[AuroraParametersTypeDef] = None + AuroraPostgreSqlParameters: Optional[AuroraPostgreSqlParametersTypeDef] = None + AwsIotAnalyticsParameters: Optional[AwsIotAnalyticsParametersTypeDef] = None + JiraParameters: Optional[JiraParametersTypeDef] = None + MariaDbParameters: Optional[MariaDbParametersTypeDef] = None + MySqlParameters: Optional[MySqlParametersTypeDef] = None + OracleParameters: Optional[OracleParametersTypeDef] = None + PostgreSqlParameters: Optional[PostgreSqlParametersTypeDef] = None + PrestoParameters: Optional[PrestoParametersTypeDef] = None + RdsParameters: Optional[RdsParametersTypeDef] = None + RedshiftParameters: Optional[RedshiftParametersExtraOutputTypeDef] = None + S3Parameters: Optional[S3ParametersTypeDef] = None + ServiceNowParameters: Optional[ServiceNowParametersTypeDef] = None + SnowflakeParameters: Optional[SnowflakeParametersTypeDef] = None + SparkParameters: Optional[SparkParametersTypeDef] = None + SqlServerParameters: Optional[SqlServerParametersTypeDef] = None + TeradataParameters: Optional[TeradataParametersTypeDef] = None + TwitterParameters: Optional[TwitterParametersTypeDef] = None + AmazonOpenSearchParameters: Optional[AmazonOpenSearchParametersTypeDef] = None + ExasolParameters: Optional[ExasolParametersTypeDef] = None + DatabricksParameters: Optional[DatabricksParametersTypeDef] = None + StarburstParameters: Optional[StarburstParametersTypeDef] = None + TrinoParameters: Optional[TrinoParametersTypeDef] = None + BigQueryParameters: Optional[BigQueryParametersTypeDef] = None + +class DataSourceParametersOutputTypeDef(BaseModel): + AmazonElasticsearchParameters: Optional[AmazonElasticsearchParametersTypeDef] = None + AthenaParameters: Optional[AthenaParametersTypeDef] = None + AuroraParameters: Optional[AuroraParametersTypeDef] = None + AuroraPostgreSqlParameters: Optional[AuroraPostgreSqlParametersTypeDef] = None + AwsIotAnalyticsParameters: Optional[AwsIotAnalyticsParametersTypeDef] = None + JiraParameters: Optional[JiraParametersTypeDef] = None + MariaDbParameters: Optional[MariaDbParametersTypeDef] = None + MySqlParameters: Optional[MySqlParametersTypeDef] = None + OracleParameters: Optional[OracleParametersTypeDef] = None + PostgreSqlParameters: Optional[PostgreSqlParametersTypeDef] = None + PrestoParameters: Optional[PrestoParametersTypeDef] = None + RdsParameters: Optional[RdsParametersTypeDef] = None + RedshiftParameters: Optional[RedshiftParametersOutputTypeDef] = None + S3Parameters: Optional[S3ParametersTypeDef] = None + ServiceNowParameters: Optional[ServiceNowParametersTypeDef] = None + SnowflakeParameters: Optional[SnowflakeParametersTypeDef] = None + SparkParameters: Optional[SparkParametersTypeDef] = None + SqlServerParameters: Optional[SqlServerParametersTypeDef] = None + TeradataParameters: Optional[TeradataParametersTypeDef] = None + TwitterParameters: Optional[TwitterParametersTypeDef] = None + AmazonOpenSearchParameters: Optional[AmazonOpenSearchParametersTypeDef] = None + ExasolParameters: Optional[ExasolParametersTypeDef] = None + DatabricksParameters: Optional[DatabricksParametersTypeDef] = None + StarburstParameters: Optional[StarburstParametersTypeDef] = None + TrinoParameters: Optional[TrinoParametersTypeDef] = None + BigQueryParameters: Optional[BigQueryParametersTypeDef] = None + +class DataSourceParametersTypeDef(BaseModel): + AmazonElasticsearchParameters: Optional[AmazonElasticsearchParametersTypeDef] = None + AthenaParameters: Optional[AthenaParametersTypeDef] = None + AuroraParameters: Optional[AuroraParametersTypeDef] = None + AuroraPostgreSqlParameters: Optional[AuroraPostgreSqlParametersTypeDef] = None + AwsIotAnalyticsParameters: Optional[AwsIotAnalyticsParametersTypeDef] = None + JiraParameters: Optional[JiraParametersTypeDef] = None + MariaDbParameters: Optional[MariaDbParametersTypeDef] = None + MySqlParameters: Optional[MySqlParametersTypeDef] = None + OracleParameters: Optional[OracleParametersTypeDef] = None + PostgreSqlParameters: Optional[PostgreSqlParametersTypeDef] = None + PrestoParameters: Optional[PrestoParametersTypeDef] = None + RdsParameters: Optional[RdsParametersTypeDef] = None + RedshiftParameters: Optional[RedshiftParametersTypeDef] = None + S3Parameters: Optional[S3ParametersTypeDef] = None + ServiceNowParameters: Optional[ServiceNowParametersTypeDef] = None + SnowflakeParameters: Optional[SnowflakeParametersTypeDef] = None + SparkParameters: Optional[SparkParametersTypeDef] = None + SqlServerParameters: Optional[SqlServerParametersTypeDef] = None + TeradataParameters: Optional[TeradataParametersTypeDef] = None + TwitterParameters: Optional[TwitterParametersTypeDef] = None + AmazonOpenSearchParameters: Optional[AmazonOpenSearchParametersTypeDef] = None + ExasolParameters: Optional[ExasolParametersTypeDef] = None + DatabricksParameters: Optional[DatabricksParametersTypeDef] = None + StarburstParameters: Optional[StarburstParametersTypeDef] = None + TrinoParameters: Optional[TrinoParametersTypeDef] = None + BigQueryParameters: Optional[BigQueryParametersTypeDef] = None + +class RefreshScheduleOutputTypeDef(BaseModel): + ScheduleId: str + ScheduleFrequency: RefreshFrequencyTypeDef + RefreshType: IngestionTypeType + StartAfterDateTime: Optional[datetime] = None + Arn: Optional[str] = None + +class RefreshScheduleTypeDef(BaseModel): + ScheduleId: str + ScheduleFrequency: RefreshFrequencyTypeDef + RefreshType: IngestionTypeType + StartAfterDateTime: Optional[TimestampTypeDef] = None + Arn: Optional[str] = None + +class RegisteredUserQuickSightConsoleEmbeddingConfigurationTypeDef(BaseModel): + InitialPath: Optional[str] = None + FeatureConfigurations: Optional[RegisteredUserConsoleFeatureConfigurationsTypeDef] = None + +class RegisteredUserDashboardEmbeddingConfigurationTypeDef(BaseModel): + InitialDashboardId: str + FeatureConfigurations: Optional[RegisteredUserDashboardFeatureConfigurationsTypeDef] = None + +class SnapshotDestinationConfigurationOutputTypeDef(BaseModel): + S3Destinations: Optional[List[SnapshotS3DestinationConfigurationTypeDef]] = None + +class SnapshotDestinationConfigurationTypeDef(BaseModel): + S3Destinations: Optional[Sequence[SnapshotS3DestinationConfigurationTypeDef]] = None + +class SnapshotJobS3ResultTypeDef(BaseModel): + S3DestinationConfiguration: Optional[SnapshotS3DestinationConfigurationTypeDef] = None + S3Uri: Optional[str] = None + ErrorInfo: Optional[List[SnapshotJobResultErrorInfoTypeDef]] = None + +class PhysicalTableOutputTypeDef(BaseModel): + RelationalTable: Optional[RelationalTableOutputTypeDef] = None + CustomSql: Optional[CustomSqlOutputTypeDef] = None + S3Source: Optional[S3SourceOutputTypeDef] = None + +class PhysicalTableTypeDef(BaseModel): + RelationalTable: Optional[RelationalTableTypeDef] = None + CustomSql: Optional[CustomSqlTypeDef] = None + S3Source: Optional[S3SourceTypeDef] = None + +class SectionBasedLayoutCanvasSizeOptionsTypeDef(BaseModel): + PaperCanvasSizeOptions: Optional[SectionBasedLayoutPaperCanvasSizeOptionsTypeDef] = None + +class FilterScopeConfigurationOutputTypeDef(BaseModel): + SelectedSheets: Optional[SelectedSheetsFilterScopeConfigurationOutputTypeDef] = None + AllSheets: Optional[Dict[str, Any]] = None + +class FilterScopeConfigurationTypeDef(BaseModel): + SelectedSheets: Optional[SelectedSheetsFilterScopeConfigurationTypeDef] = None + AllSheets: Optional[Mapping[str, Any]] = None + +class FreeFormLayoutElementOutputTypeDef(BaseModel): + ElementId: str + ElementType: LayoutElementTypeType + XAxisLocation: str + YAxisLocation: str + Width: str + Height: str + Visibility: Optional[VisibilityType] = None + RenderingRules: Optional[List[SheetElementRenderingRuleTypeDef]] = None + BorderStyle: Optional[FreeFormLayoutElementBorderStyleTypeDef] = None + SelectedBorderStyle: Optional[FreeFormLayoutElementBorderStyleTypeDef] = None + BackgroundStyle: Optional[FreeFormLayoutElementBackgroundStyleTypeDef] = None + LoadingAnimation: Optional[LoadingAnimationTypeDef] = None + +class FreeFormLayoutElementTypeDef(BaseModel): + ElementId: str + ElementType: LayoutElementTypeType + XAxisLocation: str + YAxisLocation: str + Width: str + Height: str + Visibility: Optional[VisibilityType] = None + RenderingRules: Optional[Sequence[SheetElementRenderingRuleTypeDef]] = None + BorderStyle: Optional[FreeFormLayoutElementBorderStyleTypeDef] = None + SelectedBorderStyle: Optional[FreeFormLayoutElementBorderStyleTypeDef] = None + BackgroundStyle: Optional[FreeFormLayoutElementBackgroundStyleTypeDef] = None + LoadingAnimation: Optional[LoadingAnimationTypeDef] = None + +class SnapshotFileGroupOutputTypeDef(BaseModel): + Files: Optional[List[SnapshotFileOutputTypeDef]] = None + +class SnapshotFileGroupTypeDef(BaseModel): + Files: Optional[Sequence[SnapshotFileTypeDef]] = None + +class DatasetParameterOutputTypeDef(BaseModel): + StringDatasetParameter: Optional[StringDatasetParameterOutputTypeDef] = None + DecimalDatasetParameter: Optional[DecimalDatasetParameterOutputTypeDef] = None + IntegerDatasetParameter: Optional[IntegerDatasetParameterOutputTypeDef] = None + DateTimeDatasetParameter: Optional[DateTimeDatasetParameterOutputTypeDef] = None + +class FilterCrossSheetControlOutputTypeDef(BaseModel): + FilterControlId: str + SourceFilterId: str + CascadingControlConfiguration: Optional[CascadingControlConfigurationOutputTypeDef] = None + +class FilterCrossSheetControlTypeDef(BaseModel): + FilterControlId: str + SourceFilterId: str + CascadingControlConfiguration: Optional[CascadingControlConfigurationTypeDef] = None + +class DateTimeParameterDeclarationOutputTypeDef(BaseModel): + Name: str + DefaultValues: Optional[DateTimeDefaultValuesOutputTypeDef] = None + TimeGranularity: Optional[TimeGranularityType] = None + ValueWhenUnset: Optional[DateTimeValueWhenUnsetConfigurationOutputTypeDef] = None + MappedDataSetParameters: Optional[List[MappedDataSetParameterTypeDef]] = None + +class DateTimeParameterDeclarationTypeDef(BaseModel): + Name: str + DefaultValues: Optional[DateTimeDefaultValuesTypeDef] = None + TimeGranularity: Optional[TimeGranularityType] = None + ValueWhenUnset: Optional[DateTimeValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[Sequence[MappedDataSetParameterTypeDef]] = None + +class DecimalParameterDeclarationOutputTypeDef(BaseModel): + ParameterValueType: ParameterValueTypeType + Name: str + DefaultValues: Optional[DecimalDefaultValuesOutputTypeDef] = None + ValueWhenUnset: Optional[DecimalValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[List[MappedDataSetParameterTypeDef]] = None + +class DecimalParameterDeclarationTypeDef(BaseModel): + ParameterValueType: ParameterValueTypeType + Name: str + DefaultValues: Optional[DecimalDefaultValuesTypeDef] = None + ValueWhenUnset: Optional[DecimalValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[Sequence[MappedDataSetParameterTypeDef]] = None + +class IntegerParameterDeclarationOutputTypeDef(BaseModel): + ParameterValueType: ParameterValueTypeType + Name: str + DefaultValues: Optional[IntegerDefaultValuesOutputTypeDef] = None + ValueWhenUnset: Optional[IntegerValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[List[MappedDataSetParameterTypeDef]] = None + +class IntegerParameterDeclarationTypeDef(BaseModel): + ParameterValueType: ParameterValueTypeType + Name: str + DefaultValues: Optional[IntegerDefaultValuesTypeDef] = None + ValueWhenUnset: Optional[IntegerValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[Sequence[MappedDataSetParameterTypeDef]] = None + +class StringParameterDeclarationOutputTypeDef(BaseModel): + ParameterValueType: ParameterValueTypeType + Name: str + DefaultValues: Optional[StringDefaultValuesOutputTypeDef] = None + ValueWhenUnset: Optional[StringValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[List[MappedDataSetParameterTypeDef]] = None + +class StringParameterDeclarationTypeDef(BaseModel): + ParameterValueType: ParameterValueTypeType + Name: str + DefaultValues: Optional[StringDefaultValuesTypeDef] = None + ValueWhenUnset: Optional[StringValueWhenUnsetConfigurationTypeDef] = None + MappedDataSetParameters: Optional[Sequence[MappedDataSetParameterTypeDef]] = None + +class DateTimeHierarchyOutputTypeDef(BaseModel): + HierarchyId: str + DrillDownFilters: Optional[List[DrillDownFilterOutputTypeDef]] = None + +class ExplicitHierarchyOutputTypeDef(BaseModel): + HierarchyId: str + Columns: List[ColumnIdentifierTypeDef] + DrillDownFilters: Optional[List[DrillDownFilterOutputTypeDef]] = None + +class PredefinedHierarchyOutputTypeDef(BaseModel): + HierarchyId: str + Columns: List[ColumnIdentifierTypeDef] + DrillDownFilters: Optional[List[DrillDownFilterOutputTypeDef]] = None + +class DescribeAnalysisResponseTypeDef(BaseModel): + Analysis: AnalysisTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DashboardTypeDef(BaseModel): + DashboardId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Version: Optional[DashboardVersionTypeDef] = None + CreatedTime: Optional[datetime] = None + LastPublishedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + LinkEntities: Optional[List[str]] = None + +class GenerateEmbedUrlForAnonymousUserRequestRequestTypeDef(BaseModel): + AwsAccountId: str + Namespace: str + AuthorizedResourceArns: Sequence[str] + ExperienceConfiguration: AnonymousUserEmbeddingExperienceConfigurationTypeDef + SessionLifetimeInMinutes: Optional[int] = None + SessionTags: Optional[Sequence[SessionTagTypeDef]] = None + AllowedDomains: Optional[Sequence[str]] = None + +class AssetBundleImportJobOverridePermissionsOutputTypeDef(BaseModel): + DataSources: Optional[ List[AssetBundleImportJobDataSourceOverridePermissionsOutputTypeDef] ] = None + DataSets: Optional[List[AssetBundleImportJobDataSetOverridePermissionsOutputTypeDef]] = None + Themes: Optional[List[AssetBundleImportJobThemeOverridePermissionsOutputTypeDef]] = None + Analyses: Optional[List[AssetBundleImportJobAnalysisOverridePermissionsOutputTypeDef]] = None + Dashboards: Optional[ List[AssetBundleImportJobDashboardOverridePermissionsOutputTypeDef] ] = None + +class AssetBundleImportJobOverridePermissionsTypeDef(BaseModel): + DataSources: Optional[ Sequence[AssetBundleImportJobDataSourceOverridePermissionsTypeDef] ] = None + DataSets: Optional[Sequence[AssetBundleImportJobDataSetOverridePermissionsTypeDef]] = None + Themes: Optional[Sequence[AssetBundleImportJobThemeOverridePermissionsTypeDef]] = None + Analyses: Optional[Sequence[AssetBundleImportJobAnalysisOverridePermissionsTypeDef]] = None + Dashboards: Optional[ Sequence[AssetBundleImportJobDashboardOverridePermissionsTypeDef] ] = None + +class DestinationParameterValueConfigurationTypeDef(BaseModel): + CustomValuesConfiguration: Optional[CustomValuesConfigurationTypeDef] = None + SelectAllValueOptions: Optional[Literal["ALL_VALUES"]] = None + SourceParameterName: Optional[str] = None + SourceField: Optional[str] = None + SourceColumn: Optional[ColumnIdentifierTypeDef] = None + +class DatasetParameterTypeDef(BaseModel): + StringDatasetParameter: Optional[StringDatasetParameterTypeDef] = None + DecimalDatasetParameter: Optional[DecimalDatasetParameterTypeDef] = None + IntegerDatasetParameter: Optional[IntegerDatasetParameterTypeDef] = None + DateTimeDatasetParameter: Optional[DateTimeDatasetParameterTypeDef] = None + +class DateTimeHierarchyTypeDef(BaseModel): + HierarchyId: str + DrillDownFilters: Optional[Sequence[DrillDownFilterTypeDef]] = None + +class ExplicitHierarchyTypeDef(BaseModel): + HierarchyId: str + Columns: Sequence[ColumnIdentifierTypeDef] + DrillDownFilters: Optional[Sequence[DrillDownFilterTypeDef]] = None + +class PredefinedHierarchyTypeDef(BaseModel): + HierarchyId: str + Columns: Sequence[ColumnIdentifierTypeDef] + DrillDownFilters: Optional[Sequence[DrillDownFilterTypeDef]] = None + +class ForecastConfigurationTypeDef(BaseModel): + ForecastProperties: Optional[TimeBasedForecastPropertiesTypeDef] = None + Scenario: Optional[ForecastScenarioTypeDef] = None + +class AxisDataOptionsOutputTypeDef(BaseModel): + NumericAxisOptions: Optional[NumericAxisOptionsOutputTypeDef] = None + DateAxisOptions: Optional[DateAxisOptionsTypeDef] = None + +class AxisDataOptionsTypeDef(BaseModel): + NumericAxisOptions: Optional[NumericAxisOptionsTypeDef] = None + DateAxisOptions: Optional[DateAxisOptionsTypeDef] = None + +class TransformOperationOutputTypeDef(BaseModel): + ProjectOperation: Optional[ProjectOperationOutputTypeDef] = None + FilterOperation: Optional[FilterOperationTypeDef] = None + CreateColumnsOperation: Optional[CreateColumnsOperationOutputTypeDef] = None + RenameColumnOperation: Optional[RenameColumnOperationTypeDef] = None + CastColumnTypeOperation: Optional[CastColumnTypeOperationTypeDef] = None + TagColumnOperation: Optional[TagColumnOperationOutputTypeDef] = None + UntagColumnOperation: Optional[UntagColumnOperationOutputTypeDef] = None + OverrideDatasetParameterOperation: Optional[ OverrideDatasetParameterOperationOutputTypeDef ] = None + +class TransformOperationTypeDef(BaseModel): + ProjectOperation: Optional[ProjectOperationTypeDef] = None + FilterOperation: Optional[FilterOperationTypeDef] = None + CreateColumnsOperation: Optional[CreateColumnsOperationTypeDef] = None + RenameColumnOperation: Optional[RenameColumnOperationTypeDef] = None + CastColumnTypeOperation: Optional[CastColumnTypeOperationTypeDef] = None + TagColumnOperation: Optional[TagColumnOperationTypeDef] = None + UntagColumnOperation: Optional[UntagColumnOperationTypeDef] = None + OverrideDatasetParameterOperation: Optional[OverrideDatasetParameterOperationTypeDef] = None + +class TemplateVersionTypeDef(BaseModel): + CreatedTime: Optional[datetime] = None + Errors: Optional[List[TemplateErrorTypeDef]] = None + VersionNumber: Optional[int] = None + Status: Optional[ResourceStatusType] = None + DataSetConfigurations: Optional[List[DataSetConfigurationOutputTypeDef]] = None + Description: Optional[str] = None + SourceEntityArn: Optional[str] = None + ThemeArn: Optional[str] = None + Sheets: Optional[List[SheetTypeDef]] = None + +class SetParameterValueConfigurationOutputTypeDef(BaseModel): + DestinationParameterName: str + Value: DestinationParameterValueConfigurationOutputTypeDef + +class VisualPaletteOutputTypeDef(BaseModel): + ChartColor: Optional[str] = None + ColorMap: Optional[List[DataPathColorTypeDef]] = None + +class VisualPaletteTypeDef(BaseModel): + ChartColor: Optional[str] = None + ColorMap: Optional[Sequence[DataPathColorTypeDef]] = None + +class PivotTableFieldCollapseStateOptionOutputTypeDef(BaseModel): + Target: PivotTableFieldCollapseStateTargetOutputTypeDef + State: Optional[PivotTableFieldCollapseStateType] = None + +class PivotTableFieldCollapseStateOptionTypeDef(BaseModel): + Target: PivotTableFieldCollapseStateTargetTypeDef + State: Optional[PivotTableFieldCollapseStateType] = None + +class TopicCalculatedFieldOutputTypeDef(BaseModel): + CalculatedFieldName: str + Expression: str + CalculatedFieldDescription: Optional[str] = None + CalculatedFieldSynonyms: Optional[List[str]] = None + IsIncludedInTopic: Optional[bool] = None + DisableIndexing: Optional[bool] = None + ColumnDataRole: Optional[ColumnDataRoleType] = None + TimeGranularity: Optional[TopicTimeGranularityType] = None + DefaultFormatting: Optional[DefaultFormattingTypeDef] = None + Aggregation: Optional[DefaultAggregationType] = None + ComparativeOrder: Optional[ComparativeOrderOutputTypeDef] = None + SemanticType: Optional[SemanticTypeOutputTypeDef] = None + AllowedAggregations: Optional[List[AuthorSpecifiedAggregationType]] = None + NotAllowedAggregations: Optional[List[AuthorSpecifiedAggregationType]] = None + NeverAggregateInFilter: Optional[bool] = None + CellValueSynonyms: Optional[List[CellValueSynonymOutputTypeDef]] = None + NonAdditive: Optional[bool] = None + +class TopicCalculatedFieldTypeDef(BaseModel): + CalculatedFieldName: str + Expression: str + CalculatedFieldDescription: Optional[str] = None + CalculatedFieldSynonyms: Optional[Sequence[str]] = None + IsIncludedInTopic: Optional[bool] = None + DisableIndexing: Optional[bool] = None + ColumnDataRole: Optional[ColumnDataRoleType] = None + TimeGranularity: Optional[TopicTimeGranularityType] = None + DefaultFormatting: Optional[DefaultFormattingTypeDef] = None + Aggregation: Optional[DefaultAggregationType] = None + ComparativeOrder: Optional[ComparativeOrderTypeDef] = None + SemanticType: Optional[SemanticTypeTypeDef] = None + AllowedAggregations: Optional[Sequence[AuthorSpecifiedAggregationType]] = None + NotAllowedAggregations: Optional[Sequence[AuthorSpecifiedAggregationType]] = None + NeverAggregateInFilter: Optional[bool] = None + CellValueSynonyms: Optional[Sequence[CellValueSynonymTypeDef]] = None + NonAdditive: Optional[bool] = None + +class TopicColumnOutputTypeDef(BaseModel): + ColumnName: str + ColumnFriendlyName: Optional[str] = None + ColumnDescription: Optional[str] = None + ColumnSynonyms: Optional[List[str]] = None + ColumnDataRole: Optional[ColumnDataRoleType] = None + Aggregation: Optional[DefaultAggregationType] = None + IsIncludedInTopic: Optional[bool] = None + DisableIndexing: Optional[bool] = None + ComparativeOrder: Optional[ComparativeOrderOutputTypeDef] = None + SemanticType: Optional[SemanticTypeOutputTypeDef] = None + TimeGranularity: Optional[TopicTimeGranularityType] = None + AllowedAggregations: Optional[List[AuthorSpecifiedAggregationType]] = None + NotAllowedAggregations: Optional[List[AuthorSpecifiedAggregationType]] = None + DefaultFormatting: Optional[DefaultFormattingTypeDef] = None + NeverAggregateInFilter: Optional[bool] = None + CellValueSynonyms: Optional[List[CellValueSynonymOutputTypeDef]] = None + NonAdditive: Optional[bool] = None + +class TopicColumnTypeDef(BaseModel): + ColumnName: str + ColumnFriendlyName: Optional[str] = None + ColumnDescription: Optional[str] = None + ColumnSynonyms: Optional[Sequence[str]] = None + ColumnDataRole: Optional[ColumnDataRoleType] = None + Aggregation: Optional[DefaultAggregationType] = None + IsIncludedInTopic: Optional[bool] = None + DisableIndexing: Optional[bool] = None + ComparativeOrder: Optional[ComparativeOrderTypeDef] = None + SemanticType: Optional[SemanticTypeTypeDef] = None + TimeGranularity: Optional[TopicTimeGranularityType] = None + AllowedAggregations: Optional[Sequence[AuthorSpecifiedAggregationType]] = None + NotAllowedAggregations: Optional[Sequence[AuthorSpecifiedAggregationType]] = None + DefaultFormatting: Optional[DefaultFormattingTypeDef] = None + NeverAggregateInFilter: Optional[bool] = None + CellValueSynonyms: Optional[Sequence[CellValueSynonymTypeDef]] = None + NonAdditive: Optional[bool] = None + +class ChartAxisLabelOptionsOutputTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + SortIconVisibility: Optional[VisibilityType] = None + AxisLabelOptions: Optional[List[AxisLabelOptionsTypeDef]] = None + +class ChartAxisLabelOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + SortIconVisibility: Optional[VisibilityType] = None + AxisLabelOptions: Optional[Sequence[AxisLabelOptionsTypeDef]] = None + +class AxisTickLabelOptionsTypeDef(BaseModel): + LabelOptions: Optional[LabelOptionsTypeDef] = None + RotationAngle: Optional[float] = None + +class DateTimePickerControlDisplayOptionsTypeDef(BaseModel): + TitleOptions: Optional[LabelOptionsTypeDef] = None + DateTimeFormat: Optional[str] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class DropDownControlDisplayOptionsTypeDef(BaseModel): + SelectAllOptions: Optional[ListControlSelectAllOptionsTypeDef] = None + TitleOptions: Optional[LabelOptionsTypeDef] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class LegendOptionsTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + Title: Optional[LabelOptionsTypeDef] = None + Position: Optional[LegendPositionType] = None + Width: Optional[str] = None + Height: Optional[str] = None + +class ListControlDisplayOptionsTypeDef(BaseModel): + SearchOptions: Optional[ListControlSearchOptionsTypeDef] = None + SelectAllOptions: Optional[ListControlSelectAllOptionsTypeDef] = None + TitleOptions: Optional[LabelOptionsTypeDef] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class RelativeDateTimeControlDisplayOptionsTypeDef(BaseModel): + TitleOptions: Optional[LabelOptionsTypeDef] = None + DateTimeFormat: Optional[str] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class SliderControlDisplayOptionsTypeDef(BaseModel): + TitleOptions: Optional[LabelOptionsTypeDef] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class TextAreaControlDisplayOptionsTypeDef(BaseModel): + TitleOptions: Optional[LabelOptionsTypeDef] = None + PlaceholderOptions: Optional[TextControlPlaceholderOptionsTypeDef] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class TextFieldControlDisplayOptionsTypeDef(BaseModel): + TitleOptions: Optional[LabelOptionsTypeDef] = None + PlaceholderOptions: Optional[TextControlPlaceholderOptionsTypeDef] = None + InfoIconLabelOptions: Optional[SheetControlInfoIconLabelOptionsTypeDef] = None + +class PanelConfigurationTypeDef(BaseModel): + Title: Optional[PanelTitleOptionsTypeDef] = None + BorderVisibility: Optional[VisibilityType] = None + BorderThickness: Optional[str] = None + BorderStyle: Optional[PanelBorderStyleType] = None + BorderColor: Optional[str] = None + GutterVisibility: Optional[VisibilityType] = None + GutterSpacing: Optional[str] = None + BackgroundVisibility: Optional[VisibilityType] = None + BackgroundColor: Optional[str] = None + +class TableFieldLinkContentConfigurationTypeDef(BaseModel): + CustomTextContent: Optional[TableFieldCustomTextContentTypeDef] = None + CustomIconContent: Optional[TableFieldCustomIconContentTypeDef] = None + +class GeospatialPointStyleOptionsOutputTypeDef(BaseModel): + SelectedPointStyle: Optional[GeospatialSelectedPointStyleType] = None + ClusterMarkerConfiguration: Optional[ClusterMarkerConfigurationTypeDef] = None + HeatmapConfiguration: Optional[GeospatialHeatmapConfigurationOutputTypeDef] = None + +class GeospatialPointStyleOptionsTypeDef(BaseModel): + SelectedPointStyle: Optional[GeospatialSelectedPointStyleType] = None + ClusterMarkerConfiguration: Optional[ClusterMarkerConfigurationTypeDef] = None + HeatmapConfiguration: Optional[GeospatialHeatmapConfigurationTypeDef] = None + +class TableCellStyleTypeDef(BaseModel): + Visibility: Optional[VisibilityType] = None + FontConfiguration: Optional[FontConfigurationTypeDef] = None + TextWrap: Optional[TextWrapType] = None + HorizontalTextAlignment: Optional[HorizontalTextAlignmentType] = None + VerticalTextAlignment: Optional[VerticalTextAlignmentType] = None + BackgroundColor: Optional[str] = None + Height: Optional[int] = None + Border: Optional[GlobalTableBorderOptionsTypeDef] = None + +class ConditionalFormattingColorOutputTypeDef(BaseModel): + Solid: Optional[ConditionalFormattingSolidColorTypeDef] = None + Gradient: Optional[ConditionalFormattingGradientColorOutputTypeDef] = None + +class ConditionalFormattingColorTypeDef(BaseModel): + Solid: Optional[ConditionalFormattingSolidColorTypeDef] = None + Gradient: Optional[ConditionalFormattingGradientColorTypeDef] = None + +class DefaultInteractiveLayoutConfigurationTypeDef(BaseModel): + Grid: Optional[DefaultGridLayoutConfigurationTypeDef] = None + FreeForm: Optional[DefaultFreeFormLayoutConfigurationTypeDef] = None + +class SheetControlLayoutConfigurationOutputTypeDef(BaseModel): + GridLayout: Optional[GridLayoutConfigurationOutputTypeDef] = None + +class SheetControlLayoutConfigurationTypeDef(BaseModel): + GridLayout: Optional[GridLayoutConfigurationTypeDef] = None + +class DataSetRefreshPropertiesTypeDef(BaseModel): + RefreshConfiguration: RefreshConfigurationTypeDef + +class SeriesItemTypeDef(BaseModel): + FieldSeriesItem: Optional[FieldSeriesItemTypeDef] = None + DataFieldSeriesItem: Optional[DataFieldSeriesItemTypeDef] = None + +class ThemeConfigurationOutputTypeDef(BaseModel): + DataColorPalette: Optional[DataColorPaletteOutputTypeDef] = None + UIColorPalette: Optional[UIColorPaletteTypeDef] = None + Sheet: Optional[SheetStyleTypeDef] = None + Typography: Optional[TypographyOutputTypeDef] = None + +class ThemeConfigurationTypeDef(BaseModel): + DataColorPalette: Optional[DataColorPaletteTypeDef] = None + UIColorPalette: Optional[UIColorPaletteTypeDef] = None + Sheet: Optional[SheetStyleTypeDef] = None + Typography: Optional[TypographyTypeDef] = None + +class ComparisonFormatConfigurationTypeDef(BaseModel): + NumberDisplayFormatConfiguration: Optional[NumberDisplayFormatConfigurationTypeDef] = None + PercentageDisplayFormatConfiguration: Optional[ PercentageDisplayFormatConfigurationTypeDef ] = None + +class NumericFormatConfigurationTypeDef(BaseModel): + NumberDisplayFormatConfiguration: Optional[NumberDisplayFormatConfigurationTypeDef] = None + CurrencyDisplayFormatConfiguration: Optional[ CurrencyDisplayFormatConfigurationTypeDef ] = None + PercentageDisplayFormatConfiguration: Optional[ PercentageDisplayFormatConfigurationTypeDef ] = None + +class AggregationSortConfigurationTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + SortDirection: SortDirectionType + AggregationFunction: Optional[AggregationFunctionTypeDef] = None + +class ColumnSortTypeDef(BaseModel): + SortBy: ColumnIdentifierTypeDef + Direction: SortDirectionType + AggregationFunction: Optional[AggregationFunctionTypeDef] = None + +class ColumnTooltipItemTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Label: Optional[str] = None + Visibility: Optional[VisibilityType] = None + Aggregation: Optional[AggregationFunctionTypeDef] = None + TooltipTarget: Optional[TooltipTargetType] = None + +class ReferenceLineDynamicDataConfigurationTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Calculation: NumericalAggregationFunctionTypeDef + MeasureAggregationFunction: Optional[AggregationFunctionTypeDef] = None + +class TopicFilterOutputTypeDef(BaseModel): + FilterName: str + OperandFieldName: str + FilterDescription: Optional[str] = None + FilterClass: Optional[FilterClassType] = None + FilterSynonyms: Optional[List[str]] = None + FilterType: Optional[NamedFilterTypeType] = None + CategoryFilter: Optional[TopicCategoryFilterOutputTypeDef] = None + NumericEqualityFilter: Optional[TopicNumericEqualityFilterTypeDef] = None + NumericRangeFilter: Optional[TopicNumericRangeFilterTypeDef] = None + DateRangeFilter: Optional[TopicDateRangeFilterTypeDef] = None + RelativeDateFilter: Optional[TopicRelativeDateFilterTypeDef] = None + +class TopicFilterTypeDef(BaseModel): + FilterName: str + OperandFieldName: str + FilterDescription: Optional[str] = None + FilterClass: Optional[FilterClassType] = None + FilterSynonyms: Optional[Sequence[str]] = None + FilterType: Optional[NamedFilterTypeType] = None + CategoryFilter: Optional[TopicCategoryFilterTypeDef] = None + NumericEqualityFilter: Optional[TopicNumericEqualityFilterTypeDef] = None + NumericRangeFilter: Optional[TopicNumericRangeFilterTypeDef] = None + DateRangeFilter: Optional[TopicDateRangeFilterTypeDef] = None + RelativeDateFilter: Optional[TopicRelativeDateFilterTypeDef] = None + +class AssetBundleImportJobDataSourceOverrideParametersOutputTypeDef(BaseModel): + DataSourceId: str + Name: Optional[str] = None + DataSourceParameters: Optional[DataSourceParametersOutputTypeDef] = None + VpcConnectionProperties: Optional[VpcConnectionPropertiesTypeDef] = None + SslProperties: Optional[SslPropertiesTypeDef] = None + Credentials: Optional[AssetBundleImportJobDataSourceCredentialsTypeDef] = None + +class DataSourceTypeDef(BaseModel): + Arn: Optional[str] = None + DataSourceId: Optional[str] = None + Name: Optional[str] = None + Type: Optional[DataSourceTypeType] = None + Status: Optional[ResourceStatusType] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + DataSourceParameters: Optional[DataSourceParametersOutputTypeDef] = None + AlternateDataSourceParameters: Optional[List[DataSourceParametersOutputTypeDef]] = None + VpcConnectionProperties: Optional[VpcConnectionPropertiesTypeDef] = None + SslProperties: Optional[SslPropertiesTypeDef] = None + ErrorInfo: Optional[DataSourceErrorInfoTypeDef] = None + SecretArn: Optional[str] = None + +class AssetBundleImportJobDataSourceOverrideParametersTypeDef(BaseModel): + DataSourceId: str + Name: Optional[str] = None + DataSourceParameters: Optional[DataSourceParametersTypeDef] = None + VpcConnectionProperties: Optional[VpcConnectionPropertiesTypeDef] = None + SslProperties: Optional[SslPropertiesTypeDef] = None + Credentials: Optional[AssetBundleImportJobDataSourceCredentialsTypeDef] = None + +class CredentialPairTypeDef(BaseModel): + Username: str + Password: str + AlternateDataSourceParameters: Optional[Sequence[DataSourceParametersTypeDef]] = None + +class DescribeRefreshScheduleResponseTypeDef(BaseModel): + RefreshSchedule: RefreshScheduleOutputTypeDef + Status: int + RequestId: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRefreshSchedulesResponseTypeDef(BaseModel): + RefreshSchedules: List[RefreshScheduleOutputTypeDef] + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRefreshScheduleRequestRequestTypeDef(BaseModel): + DataSetId: str + AwsAccountId: str + Schedule: RefreshScheduleTypeDef + +class UpdateRefreshScheduleRequestRequestTypeDef(BaseModel): + DataSetId: str + AwsAccountId: str + Schedule: RefreshScheduleTypeDef + +class RegisteredUserEmbeddingExperienceConfigurationTypeDef(BaseModel): + Dashboard: Optional[RegisteredUserDashboardEmbeddingConfigurationTypeDef] = None + QuickSightConsole: Optional[ RegisteredUserQuickSightConsoleEmbeddingConfigurationTypeDef ] = None + QSearchBar: Optional[RegisteredUserQSearchBarEmbeddingConfigurationTypeDef] = None + DashboardVisual: Optional[RegisteredUserDashboardVisualEmbeddingConfigurationTypeDef] = None + GenerativeQnA: Optional[RegisteredUserGenerativeQnAEmbeddingConfigurationTypeDef] = None + +class SnapshotJobResultFileGroupTypeDef(BaseModel): + Files: Optional[List[SnapshotFileOutputTypeDef]] = None + S3Results: Optional[List[SnapshotJobS3ResultTypeDef]] = None + +class DefaultSectionBasedLayoutConfigurationTypeDef(BaseModel): + CanvasSizeOptions: SectionBasedLayoutCanvasSizeOptionsTypeDef + +class FreeFormLayoutConfigurationOutputTypeDef(BaseModel): + Elements: List[FreeFormLayoutElementOutputTypeDef] + CanvasSizeOptions: Optional[FreeFormLayoutCanvasSizeOptionsTypeDef] = None + +class FreeFormSectionLayoutConfigurationOutputTypeDef(BaseModel): + Elements: List[FreeFormLayoutElementOutputTypeDef] + +class FreeFormLayoutConfigurationTypeDef(BaseModel): + Elements: Sequence[FreeFormLayoutElementTypeDef] + CanvasSizeOptions: Optional[FreeFormLayoutCanvasSizeOptionsTypeDef] = None + +class FreeFormSectionLayoutConfigurationTypeDef(BaseModel): + Elements: Sequence[FreeFormLayoutElementTypeDef] + +class SnapshotConfigurationOutputTypeDef(BaseModel): + FileGroups: List[SnapshotFileGroupOutputTypeDef] + DestinationConfiguration: Optional[SnapshotDestinationConfigurationOutputTypeDef] = None + Parameters: Optional[ParametersOutputTypeDef] = None + +class SnapshotConfigurationTypeDef(BaseModel): + FileGroups: Sequence[SnapshotFileGroupTypeDef] + DestinationConfiguration: Optional[SnapshotDestinationConfigurationTypeDef] = None + Parameters: Optional[ParametersTypeDef] = None + +class ParameterDeclarationOutputTypeDef(BaseModel): + StringParameterDeclaration: Optional[StringParameterDeclarationOutputTypeDef] = None + DecimalParameterDeclaration: Optional[DecimalParameterDeclarationOutputTypeDef] = None + IntegerParameterDeclaration: Optional[IntegerParameterDeclarationOutputTypeDef] = None + DateTimeParameterDeclaration: Optional[DateTimeParameterDeclarationOutputTypeDef] = None + +class ParameterDeclarationTypeDef(BaseModel): + StringParameterDeclaration: Optional[StringParameterDeclarationTypeDef] = None + DecimalParameterDeclaration: Optional[DecimalParameterDeclarationTypeDef] = None + IntegerParameterDeclaration: Optional[IntegerParameterDeclarationTypeDef] = None + DateTimeParameterDeclaration: Optional[DateTimeParameterDeclarationTypeDef] = None + +class ColumnHierarchyOutputTypeDef(BaseModel): + ExplicitHierarchy: Optional[ExplicitHierarchyOutputTypeDef] = None + DateTimeHierarchy: Optional[DateTimeHierarchyOutputTypeDef] = None + PredefinedHierarchy: Optional[PredefinedHierarchyOutputTypeDef] = None + +class DescribeDashboardResponseTypeDef(BaseModel): + Dashboard: DashboardTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetParameterValueConfigurationTypeDef(BaseModel): + DestinationParameterName: str + Value: DestinationParameterValueConfigurationTypeDef + +class ColumnHierarchyTypeDef(BaseModel): + ExplicitHierarchy: Optional[ExplicitHierarchyTypeDef] = None + DateTimeHierarchy: Optional[DateTimeHierarchyTypeDef] = None + PredefinedHierarchy: Optional[PredefinedHierarchyTypeDef] = None + +class LogicalTableOutputTypeDef(BaseModel): + Alias: str + Source: LogicalTableSourceTypeDef + DataTransforms: Optional[List[TransformOperationOutputTypeDef]] = None + +class LogicalTableTypeDef(BaseModel): + Alias: str + Source: LogicalTableSourceTypeDef + DataTransforms: Optional[Sequence[TransformOperationTypeDef]] = None + +class TemplateTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + Version: Optional[TemplateVersionTypeDef] = None + TemplateId: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + CreatedTime: Optional[datetime] = None + +class CustomActionSetParametersOperationOutputTypeDef(BaseModel): + ParameterValueConfigurations: List[SetParameterValueConfigurationOutputTypeDef] + +class PivotTableFieldOptionsOutputTypeDef(BaseModel): + SelectedFieldOptions: Optional[List[PivotTableFieldOptionTypeDef]] = None + DataPathOptions: Optional[List[PivotTableDataPathOptionOutputTypeDef]] = None + CollapseStateOptions: Optional[List[PivotTableFieldCollapseStateOptionOutputTypeDef]] = None + +class PivotTableFieldOptionsTypeDef(BaseModel): + SelectedFieldOptions: Optional[Sequence[PivotTableFieldOptionTypeDef]] = None + DataPathOptions: Optional[Sequence[PivotTableDataPathOptionTypeDef]] = None + CollapseStateOptions: Optional[Sequence[PivotTableFieldCollapseStateOptionTypeDef]] = None + +class AxisDisplayOptionsOutputTypeDef(BaseModel): + TickLabelOptions: Optional[AxisTickLabelOptionsTypeDef] = None + AxisLineVisibility: Optional[VisibilityType] = None + GridLineVisibility: Optional[VisibilityType] = None + DataOptions: Optional[AxisDataOptionsOutputTypeDef] = None + ScrollbarOptions: Optional[ScrollBarOptionsTypeDef] = None + AxisOffset: Optional[str] = None + +class AxisDisplayOptionsTypeDef(BaseModel): + TickLabelOptions: Optional[AxisTickLabelOptionsTypeDef] = None + AxisLineVisibility: Optional[VisibilityType] = None + GridLineVisibility: Optional[VisibilityType] = None + DataOptions: Optional[AxisDataOptionsTypeDef] = None + ScrollbarOptions: Optional[ScrollBarOptionsTypeDef] = None + AxisOffset: Optional[str] = None + +class DefaultDateTimePickerControlOptionsTypeDef(BaseModel): + Type: Optional[SheetControlDateTimePickerTypeType] = None + DisplayOptions: Optional[DateTimePickerControlDisplayOptionsTypeDef] = None + +class FilterDateTimePickerControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[DateTimePickerControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlDateTimePickerTypeType] = None + +class ParameterDateTimePickerControlTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + DisplayOptions: Optional[DateTimePickerControlDisplayOptionsTypeDef] = None + +class DefaultFilterDropDownControlOptionsOutputTypeDef(BaseModel): + DisplayOptions: Optional[DropDownControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesOutputTypeDef] = None + +class DefaultFilterDropDownControlOptionsTypeDef(BaseModel): + DisplayOptions: Optional[DropDownControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesTypeDef] = None + +class FilterDropDownControlOutputTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[DropDownControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesOutputTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationOutputTypeDef] = None + +class FilterDropDownControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[DropDownControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationTypeDef] = None + +class ParameterDropDownControlOutputTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + DisplayOptions: Optional[DropDownControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[ParameterSelectableValuesOutputTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationOutputTypeDef] = None + +class ParameterDropDownControlTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + DisplayOptions: Optional[DropDownControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[ParameterSelectableValuesTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationTypeDef] = None + +class DefaultFilterListControlOptionsOutputTypeDef(BaseModel): + DisplayOptions: Optional[ListControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesOutputTypeDef] = None + +class DefaultFilterListControlOptionsTypeDef(BaseModel): + DisplayOptions: Optional[ListControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesTypeDef] = None + +class FilterListControlOutputTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[ListControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesOutputTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationOutputTypeDef] = None + +class FilterListControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[ListControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[FilterSelectableValuesTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationTypeDef] = None + +class ParameterListControlOutputTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + DisplayOptions: Optional[ListControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[ParameterSelectableValuesOutputTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationOutputTypeDef] = None + +class ParameterListControlTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + DisplayOptions: Optional[ListControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlListTypeType] = None + SelectableValues: Optional[ParameterSelectableValuesTypeDef] = None + CascadingControlConfiguration: Optional[CascadingControlConfigurationTypeDef] = None + +class DefaultRelativeDateTimeControlOptionsTypeDef(BaseModel): + DisplayOptions: Optional[RelativeDateTimeControlDisplayOptionsTypeDef] = None + +class FilterRelativeDateTimeControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[RelativeDateTimeControlDisplayOptionsTypeDef] = None + +class DefaultSliderControlOptionsTypeDef(BaseModel): + MaximumValue: float + MinimumValue: float + StepSize: float + DisplayOptions: Optional[SliderControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlSliderTypeType] = None + +class FilterSliderControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + MaximumValue: float + MinimumValue: float + StepSize: float + DisplayOptions: Optional[SliderControlDisplayOptionsTypeDef] = None + Type: Optional[SheetControlSliderTypeType] = None + +class ParameterSliderControlTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + MaximumValue: float + MinimumValue: float + StepSize: float + DisplayOptions: Optional[SliderControlDisplayOptionsTypeDef] = None + +class DefaultTextAreaControlOptionsTypeDef(BaseModel): + Delimiter: Optional[str] = None + DisplayOptions: Optional[TextAreaControlDisplayOptionsTypeDef] = None + +class FilterTextAreaControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + Delimiter: Optional[str] = None + DisplayOptions: Optional[TextAreaControlDisplayOptionsTypeDef] = None + +class ParameterTextAreaControlTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + Delimiter: Optional[str] = None + DisplayOptions: Optional[TextAreaControlDisplayOptionsTypeDef] = None + +class DefaultTextFieldControlOptionsTypeDef(BaseModel): + DisplayOptions: Optional[TextFieldControlDisplayOptionsTypeDef] = None + +class FilterTextFieldControlTypeDef(BaseModel): + FilterControlId: str + Title: str + SourceFilterId: str + DisplayOptions: Optional[TextFieldControlDisplayOptionsTypeDef] = None + +class ParameterTextFieldControlTypeDef(BaseModel): + ParameterControlId: str + Title: str + SourceParameterName: str + DisplayOptions: Optional[TextFieldControlDisplayOptionsTypeDef] = None + +class SmallMultiplesOptionsTypeDef(BaseModel): + MaxVisibleRows: Optional[int] = None + MaxVisibleColumns: Optional[int] = None + PanelConfiguration: Optional[PanelConfigurationTypeDef] = None + XAxis: Optional[SmallMultiplesAxisPropertiesTypeDef] = None + YAxis: Optional[SmallMultiplesAxisPropertiesTypeDef] = None + +class TableFieldLinkConfigurationTypeDef(BaseModel): + Target: URLTargetConfigurationType + Content: TableFieldLinkContentConfigurationTypeDef + +class PivotTableOptionsOutputTypeDef(BaseModel): + MetricPlacement: Optional[PivotTableMetricPlacementType] = None + SingleMetricVisibility: Optional[VisibilityType] = None + ColumnNamesVisibility: Optional[VisibilityType] = None + ToggleButtonsVisibility: Optional[VisibilityType] = None + ColumnHeaderStyle: Optional[TableCellStyleTypeDef] = None + RowHeaderStyle: Optional[TableCellStyleTypeDef] = None + CellStyle: Optional[TableCellStyleTypeDef] = None + RowFieldNamesStyle: Optional[TableCellStyleTypeDef] = None + RowAlternateColorOptions: Optional[RowAlternateColorOptionsOutputTypeDef] = None + CollapsedRowDimensionsVisibility: Optional[VisibilityType] = None + RowsLayout: Optional[PivotTableRowsLayoutType] = None + RowsLabelOptions: Optional[PivotTableRowsLabelOptionsTypeDef] = None + DefaultCellWidth: Optional[str] = None + +class PivotTableOptionsTypeDef(BaseModel): + MetricPlacement: Optional[PivotTableMetricPlacementType] = None + SingleMetricVisibility: Optional[VisibilityType] = None + ColumnNamesVisibility: Optional[VisibilityType] = None + ToggleButtonsVisibility: Optional[VisibilityType] = None + ColumnHeaderStyle: Optional[TableCellStyleTypeDef] = None + RowHeaderStyle: Optional[TableCellStyleTypeDef] = None + CellStyle: Optional[TableCellStyleTypeDef] = None + RowFieldNamesStyle: Optional[TableCellStyleTypeDef] = None + RowAlternateColorOptions: Optional[RowAlternateColorOptionsTypeDef] = None + CollapsedRowDimensionsVisibility: Optional[VisibilityType] = None + RowsLayout: Optional[PivotTableRowsLayoutType] = None + RowsLabelOptions: Optional[PivotTableRowsLabelOptionsTypeDef] = None + DefaultCellWidth: Optional[str] = None + +class PivotTotalOptionsOutputTypeDef(BaseModel): + TotalsVisibility: Optional[VisibilityType] = None + Placement: Optional[TableTotalsPlacementType] = None + ScrollStatus: Optional[TableTotalsScrollStatusType] = None + CustomLabel: Optional[str] = None + TotalCellStyle: Optional[TableCellStyleTypeDef] = None + ValueCellStyle: Optional[TableCellStyleTypeDef] = None + MetricHeaderCellStyle: Optional[TableCellStyleTypeDef] = None + TotalAggregationOptions: Optional[List[TotalAggregationOptionTypeDef]] = None + +class PivotTotalOptionsTypeDef(BaseModel): + TotalsVisibility: Optional[VisibilityType] = None + Placement: Optional[TableTotalsPlacementType] = None + ScrollStatus: Optional[TableTotalsScrollStatusType] = None + CustomLabel: Optional[str] = None + TotalCellStyle: Optional[TableCellStyleTypeDef] = None + ValueCellStyle: Optional[TableCellStyleTypeDef] = None + MetricHeaderCellStyle: Optional[TableCellStyleTypeDef] = None + TotalAggregationOptions: Optional[Sequence[TotalAggregationOptionTypeDef]] = None + +class SubtotalOptionsOutputTypeDef(BaseModel): + TotalsVisibility: Optional[VisibilityType] = None + CustomLabel: Optional[str] = None + FieldLevel: Optional[PivotTableSubtotalLevelType] = None + FieldLevelOptions: Optional[List[PivotTableFieldSubtotalOptionsTypeDef]] = None + TotalCellStyle: Optional[TableCellStyleTypeDef] = None + ValueCellStyle: Optional[TableCellStyleTypeDef] = None + MetricHeaderCellStyle: Optional[TableCellStyleTypeDef] = None + StyleTargets: Optional[List[TableStyleTargetTypeDef]] = None + +class SubtotalOptionsTypeDef(BaseModel): + TotalsVisibility: Optional[VisibilityType] = None + CustomLabel: Optional[str] = None + FieldLevel: Optional[PivotTableSubtotalLevelType] = None + FieldLevelOptions: Optional[Sequence[PivotTableFieldSubtotalOptionsTypeDef]] = None + TotalCellStyle: Optional[TableCellStyleTypeDef] = None + ValueCellStyle: Optional[TableCellStyleTypeDef] = None + MetricHeaderCellStyle: Optional[TableCellStyleTypeDef] = None + StyleTargets: Optional[Sequence[TableStyleTargetTypeDef]] = None + +class TableOptionsOutputTypeDef(BaseModel): + Orientation: Optional[TableOrientationType] = None + HeaderStyle: Optional[TableCellStyleTypeDef] = None + CellStyle: Optional[TableCellStyleTypeDef] = None + RowAlternateColorOptions: Optional[RowAlternateColorOptionsOutputTypeDef] = None + +class TableOptionsTypeDef(BaseModel): + Orientation: Optional[TableOrientationType] = None + HeaderStyle: Optional[TableCellStyleTypeDef] = None + CellStyle: Optional[TableCellStyleTypeDef] = None + RowAlternateColorOptions: Optional[RowAlternateColorOptionsTypeDef] = None + +class TotalOptionsOutputTypeDef(BaseModel): + TotalsVisibility: Optional[VisibilityType] = None + Placement: Optional[TableTotalsPlacementType] = None + ScrollStatus: Optional[TableTotalsScrollStatusType] = None + CustomLabel: Optional[str] = None + TotalCellStyle: Optional[TableCellStyleTypeDef] = None + TotalAggregationOptions: Optional[List[TotalAggregationOptionTypeDef]] = None + +class TotalOptionsTypeDef(BaseModel): + TotalsVisibility: Optional[VisibilityType] = None + Placement: Optional[TableTotalsPlacementType] = None + ScrollStatus: Optional[TableTotalsScrollStatusType] = None + CustomLabel: Optional[str] = None + TotalCellStyle: Optional[TableCellStyleTypeDef] = None + TotalAggregationOptions: Optional[Sequence[TotalAggregationOptionTypeDef]] = None + +class GaugeChartArcConditionalFormattingOutputTypeDef(BaseModel): + ForegroundColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + +class GaugeChartPrimaryValueConditionalFormattingOutputTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIActualValueConditionalFormattingOutputTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIComparisonValueConditionalFormattingOutputTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIPrimaryValueConditionalFormattingOutputTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIProgressBarConditionalFormattingOutputTypeDef(BaseModel): + ForegroundColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + +class ShapeConditionalFormatOutputTypeDef(BaseModel): + BackgroundColor: ConditionalFormattingColorOutputTypeDef + +class TableRowConditionalFormattingOutputTypeDef(BaseModel): + BackgroundColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + TextColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + +class TextConditionalFormatOutputTypeDef(BaseModel): + BackgroundColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + TextColor: Optional[ConditionalFormattingColorOutputTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class GaugeChartArcConditionalFormattingTypeDef(BaseModel): + ForegroundColor: Optional[ConditionalFormattingColorTypeDef] = None + +class GaugeChartPrimaryValueConditionalFormattingTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIActualValueConditionalFormattingTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIComparisonValueConditionalFormattingTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIPrimaryValueConditionalFormattingTypeDef(BaseModel): + TextColor: Optional[ConditionalFormattingColorTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class KPIProgressBarConditionalFormattingTypeDef(BaseModel): + ForegroundColor: Optional[ConditionalFormattingColorTypeDef] = None + +class ShapeConditionalFormatTypeDef(BaseModel): + BackgroundColor: ConditionalFormattingColorTypeDef + +class TableRowConditionalFormattingTypeDef(BaseModel): + BackgroundColor: Optional[ConditionalFormattingColorTypeDef] = None + TextColor: Optional[ConditionalFormattingColorTypeDef] = None + +class TextConditionalFormatTypeDef(BaseModel): + BackgroundColor: Optional[ConditionalFormattingColorTypeDef] = None + TextColor: Optional[ConditionalFormattingColorTypeDef] = None + Icon: Optional[ConditionalFormattingIconTypeDef] = None + +class SheetControlLayoutOutputTypeDef(BaseModel): + Configuration: SheetControlLayoutConfigurationOutputTypeDef + +class SheetControlLayoutTypeDef(BaseModel): + Configuration: SheetControlLayoutConfigurationTypeDef + +class DescribeDataSetRefreshPropertiesResponseTypeDef(BaseModel): + RequestId: str + Status: int + DataSetRefreshProperties: DataSetRefreshPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutDataSetRefreshPropertiesRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + DataSetRefreshProperties: DataSetRefreshPropertiesTypeDef + +class ThemeVersionTypeDef(BaseModel): + VersionNumber: Optional[int] = None + Arn: Optional[str] = None + Description: Optional[str] = None + BaseThemeId: Optional[str] = None + CreatedTime: Optional[datetime] = None + Configuration: Optional[ThemeConfigurationOutputTypeDef] = None + Errors: Optional[List[ThemeErrorTypeDef]] = None + Status: Optional[ResourceStatusType] = None + +class CreateThemeRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + Name: str + BaseThemeId: str + Configuration: ThemeConfigurationTypeDef + VersionDescription: Optional[str] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateThemeRequestRequestTypeDef(BaseModel): + AwsAccountId: str + ThemeId: str + BaseThemeId: str + Name: Optional[str] = None + VersionDescription: Optional[str] = None + Configuration: Optional[ThemeConfigurationTypeDef] = None + +class ComparisonConfigurationTypeDef(BaseModel): + ComparisonMethod: Optional[ComparisonMethodType] = None + ComparisonFormat: Optional[ComparisonFormatConfigurationTypeDef] = None + +class DateTimeFormatConfigurationTypeDef(BaseModel): + DateTimeFormat: Optional[str] = None + NullValueFormatConfiguration: Optional[NullValueFormatConfigurationTypeDef] = None + NumericFormatConfiguration: Optional[NumericFormatConfigurationTypeDef] = None + +class NumberFormatConfigurationTypeDef(BaseModel): + FormatConfiguration: Optional[NumericFormatConfigurationTypeDef] = None + +class ReferenceLineValueLabelConfigurationTypeDef(BaseModel): + RelativePosition: Optional[ReferenceLineValueLabelRelativePositionType] = None + FormatConfiguration: Optional[NumericFormatConfigurationTypeDef] = None + +class StringFormatConfigurationTypeDef(BaseModel): + NullValueFormatConfiguration: Optional[NullValueFormatConfigurationTypeDef] = None + NumericFormatConfiguration: Optional[NumericFormatConfigurationTypeDef] = None + +class BodySectionDynamicCategoryDimensionConfigurationOutputTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Limit: Optional[int] = None + SortByMetrics: Optional[List[ColumnSortTypeDef]] = None + +class BodySectionDynamicCategoryDimensionConfigurationTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Limit: Optional[int] = None + SortByMetrics: Optional[Sequence[ColumnSortTypeDef]] = None + +class BodySectionDynamicNumericDimensionConfigurationOutputTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Limit: Optional[int] = None + SortByMetrics: Optional[List[ColumnSortTypeDef]] = None + +class BodySectionDynamicNumericDimensionConfigurationTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Limit: Optional[int] = None + SortByMetrics: Optional[Sequence[ColumnSortTypeDef]] = None + +class FieldSortOptionsTypeDef(BaseModel): + FieldSort: Optional[FieldSortTypeDef] = None + ColumnSort: Optional[ColumnSortTypeDef] = None + +class PivotTableSortByOutputTypeDef(BaseModel): + Field: Optional[FieldSortTypeDef] = None + Column: Optional[ColumnSortTypeDef] = None + DataPath: Optional[DataPathSortOutputTypeDef] = None + +class PivotTableSortByTypeDef(BaseModel): + Field: Optional[FieldSortTypeDef] = None + Column: Optional[ColumnSortTypeDef] = None + DataPath: Optional[DataPathSortTypeDef] = None + +class TooltipItemTypeDef(BaseModel): + FieldTooltipItem: Optional[FieldTooltipItemTypeDef] = None + ColumnTooltipItem: Optional[ColumnTooltipItemTypeDef] = None + +class ReferenceLineDataConfigurationTypeDef(BaseModel): + StaticConfiguration: Optional[ReferenceLineStaticDataConfigurationTypeDef] = None + DynamicConfiguration: Optional[ReferenceLineDynamicDataConfigurationTypeDef] = None + AxisBinding: Optional[AxisBindingType] = None + SeriesType: Optional[ReferenceLineSeriesTypeType] = None + +class DatasetMetadataOutputTypeDef(BaseModel): + DatasetArn: str + DatasetName: Optional[str] = None + DatasetDescription: Optional[str] = None + DataAggregation: Optional[DataAggregationTypeDef] = None + Filters: Optional[List[TopicFilterOutputTypeDef]] = None + Columns: Optional[List[TopicColumnOutputTypeDef]] = None + CalculatedFields: Optional[List[TopicCalculatedFieldOutputTypeDef]] = None + NamedEntities: Optional[List[TopicNamedEntityOutputTypeDef]] = None + +class DatasetMetadataTypeDef(BaseModel): + DatasetArn: str + DatasetName: Optional[str] = None + DatasetDescription: Optional[str] = None + DataAggregation: Optional[DataAggregationTypeDef] = None + Filters: Optional[Sequence[TopicFilterTypeDef]] = None + Columns: Optional[Sequence[TopicColumnTypeDef]] = None + CalculatedFields: Optional[Sequence[TopicCalculatedFieldTypeDef]] = None + NamedEntities: Optional[Sequence[TopicNamedEntityTypeDef]] = None + +class AssetBundleImportJobOverrideParametersOutputTypeDef(BaseModel): + ResourceIdOverrideConfiguration: Optional[ AssetBundleImportJobResourceIdOverrideConfigurationTypeDef ] = None + VPCConnections: Optional[ List[AssetBundleImportJobVPCConnectionOverrideParametersOutputTypeDef] ] = None + RefreshSchedules: Optional[ List[AssetBundleImportJobRefreshScheduleOverrideParametersOutputTypeDef] ] = None + DataSources: Optional[ List[AssetBundleImportJobDataSourceOverrideParametersOutputTypeDef] ] = None + DataSets: Optional[List[AssetBundleImportJobDataSetOverrideParametersTypeDef]] = None + Themes: Optional[List[AssetBundleImportJobThemeOverrideParametersTypeDef]] = None + Analyses: Optional[List[AssetBundleImportJobAnalysisOverrideParametersTypeDef]] = None + Dashboards: Optional[List[AssetBundleImportJobDashboardOverrideParametersTypeDef]] = None + +class DescribeDataSourceResponseTypeDef(BaseModel): + DataSource: DataSourceTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataSourcesResponseTypeDef(BaseModel): + DataSources: List[DataSourceTypeDef] + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssetBundleImportJobOverrideParametersTypeDef(BaseModel): + ResourceIdOverrideConfiguration: Optional[ AssetBundleImportJobResourceIdOverrideConfigurationTypeDef ] = None + VPCConnections: Optional[ Sequence[AssetBundleImportJobVPCConnectionOverrideParametersTypeDef] ] = None + RefreshSchedules: Optional[ Sequence[AssetBundleImportJobRefreshScheduleOverrideParametersTypeDef] ] = None + DataSources: Optional[ Sequence[AssetBundleImportJobDataSourceOverrideParametersTypeDef] ] = None + DataSets: Optional[Sequence[AssetBundleImportJobDataSetOverrideParametersTypeDef]] = None + Themes: Optional[Sequence[AssetBundleImportJobThemeOverrideParametersTypeDef]] = None + Analyses: Optional[Sequence[AssetBundleImportJobAnalysisOverrideParametersTypeDef]] = None + Dashboards: Optional[Sequence[AssetBundleImportJobDashboardOverrideParametersTypeDef]] = None + +class DataSourceCredentialsTypeDef(BaseModel): + CredentialPair: Optional[CredentialPairTypeDef] = None + CopySourceArn: Optional[str] = None + SecretArn: Optional[str] = None + +class GenerateEmbedUrlForRegisteredUserRequestRequestTypeDef(BaseModel): + AwsAccountId: str + UserArn: str + ExperienceConfiguration: RegisteredUserEmbeddingExperienceConfigurationTypeDef + SessionLifetimeInMinutes: Optional[int] = None + AllowedDomains: Optional[Sequence[str]] = None + +class AnonymousUserSnapshotJobResultTypeDef(BaseModel): + FileGroups: Optional[List[SnapshotJobResultFileGroupTypeDef]] = None + +class DefaultPaginatedLayoutConfigurationTypeDef(BaseModel): + SectionBased: Optional[DefaultSectionBasedLayoutConfigurationTypeDef] = None + +class SectionLayoutConfigurationOutputTypeDef(BaseModel): + FreeFormLayout: FreeFormSectionLayoutConfigurationOutputTypeDef + +class SectionLayoutConfigurationTypeDef(BaseModel): + FreeFormLayout: FreeFormSectionLayoutConfigurationTypeDef + +class DescribeDashboardSnapshotJobResponseTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + SnapshotJobId: str + UserConfiguration: SnapshotUserConfigurationRedactedTypeDef + SnapshotConfiguration: SnapshotConfigurationOutputTypeDef + Arn: str + JobStatus: SnapshotJobStatusType + CreatedTime: datetime + LastUpdatedTime: datetime + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class StartDashboardSnapshotJobRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + SnapshotJobId: str + UserConfiguration: SnapshotUserConfigurationTypeDef + SnapshotConfiguration: SnapshotConfigurationTypeDef + +class CustomActionSetParametersOperationTypeDef(BaseModel): + ParameterValueConfigurations: Sequence[SetParameterValueConfigurationTypeDef] + +class DataSetTypeDef(BaseModel): + Arn: Optional[str] = None + DataSetId: Optional[str] = None + Name: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + PhysicalTableMap: Optional[Dict[str, PhysicalTableOutputTypeDef]] = None + LogicalTableMap: Optional[Dict[str, LogicalTableOutputTypeDef]] = None + OutputColumns: Optional[List[OutputColumnTypeDef]] = None + ImportMode: Optional[DataSetImportModeType] = None + ConsumedSpiceCapacityInBytes: Optional[int] = None + ColumnGroups: Optional[List[ColumnGroupOutputTypeDef]] = None + FieldFolders: Optional[Dict[str, FieldFolderOutputTypeDef]] = None + RowLevelPermissionDataSet: Optional[RowLevelPermissionDataSetTypeDef] = None + RowLevelPermissionTagConfiguration: Optional[ RowLevelPermissionTagConfigurationOutputTypeDef ] = None + ColumnLevelPermissionRules: Optional[List[ColumnLevelPermissionRuleOutputTypeDef]] = None + DataSetUsageConfiguration: Optional[DataSetUsageConfigurationTypeDef] = None + DatasetParameters: Optional[List[DatasetParameterOutputTypeDef]] = None + +class DescribeTemplateResponseTypeDef(BaseModel): + Template: TemplateTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class VisualCustomActionOperationOutputTypeDef(BaseModel): + FilterOperation: Optional[CustomActionFilterOperationOutputTypeDef] = None + NavigationOperation: Optional[CustomActionNavigationOperationTypeDef] = None + URLOperation: Optional[CustomActionURLOperationTypeDef] = None + SetParametersOperation: Optional[CustomActionSetParametersOperationOutputTypeDef] = None + +class LineSeriesAxisDisplayOptionsOutputTypeDef(BaseModel): + AxisOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + MissingDataConfigurations: Optional[List[MissingDataConfigurationTypeDef]] = None + +class LineSeriesAxisDisplayOptionsTypeDef(BaseModel): + AxisOptions: Optional[AxisDisplayOptionsTypeDef] = None + MissingDataConfigurations: Optional[Sequence[MissingDataConfigurationTypeDef]] = None + +class DefaultFilterControlOptionsOutputTypeDef(BaseModel): + DefaultDateTimePickerOptions: Optional[DefaultDateTimePickerControlOptionsTypeDef] = None + DefaultListOptions: Optional[DefaultFilterListControlOptionsOutputTypeDef] = None + DefaultDropdownOptions: Optional[DefaultFilterDropDownControlOptionsOutputTypeDef] = None + DefaultTextFieldOptions: Optional[DefaultTextFieldControlOptionsTypeDef] = None + DefaultTextAreaOptions: Optional[DefaultTextAreaControlOptionsTypeDef] = None + DefaultSliderOptions: Optional[DefaultSliderControlOptionsTypeDef] = None + DefaultRelativeDateTimeOptions: Optional[DefaultRelativeDateTimeControlOptionsTypeDef] = None + +class DefaultFilterControlOptionsTypeDef(BaseModel): + DefaultDateTimePickerOptions: Optional[DefaultDateTimePickerControlOptionsTypeDef] = None + DefaultListOptions: Optional[DefaultFilterListControlOptionsTypeDef] = None + DefaultDropdownOptions: Optional[DefaultFilterDropDownControlOptionsTypeDef] = None + DefaultTextFieldOptions: Optional[DefaultTextFieldControlOptionsTypeDef] = None + DefaultTextAreaOptions: Optional[DefaultTextAreaControlOptionsTypeDef] = None + DefaultSliderOptions: Optional[DefaultSliderControlOptionsTypeDef] = None + DefaultRelativeDateTimeOptions: Optional[DefaultRelativeDateTimeControlOptionsTypeDef] = None + +class FilterControlOutputTypeDef(BaseModel): + DateTimePicker: Optional[FilterDateTimePickerControlTypeDef] = None + List: Optional[FilterListControlOutputTypeDef] = None + Dropdown: Optional[FilterDropDownControlOutputTypeDef] = None + TextField: Optional[FilterTextFieldControlTypeDef] = None + TextArea: Optional[FilterTextAreaControlTypeDef] = None + Slider: Optional[FilterSliderControlTypeDef] = None + RelativeDateTime: Optional[FilterRelativeDateTimeControlTypeDef] = None + CrossSheet: Optional[FilterCrossSheetControlOutputTypeDef] = None + +class FilterControlTypeDef(BaseModel): + DateTimePicker: Optional[FilterDateTimePickerControlTypeDef] = None + List: Optional[FilterListControlTypeDef] = None + Dropdown: Optional[FilterDropDownControlTypeDef] = None + TextField: Optional[FilterTextFieldControlTypeDef] = None + TextArea: Optional[FilterTextAreaControlTypeDef] = None + Slider: Optional[FilterSliderControlTypeDef] = None + RelativeDateTime: Optional[FilterRelativeDateTimeControlTypeDef] = None + CrossSheet: Optional[FilterCrossSheetControlTypeDef] = None + +class ParameterControlOutputTypeDef(BaseModel): + DateTimePicker: Optional[ParameterDateTimePickerControlTypeDef] = None + List: Optional[ParameterListControlOutputTypeDef] = None + Dropdown: Optional[ParameterDropDownControlOutputTypeDef] = None + TextField: Optional[ParameterTextFieldControlTypeDef] = None + TextArea: Optional[ParameterTextAreaControlTypeDef] = None + Slider: Optional[ParameterSliderControlTypeDef] = None + +class ParameterControlTypeDef(BaseModel): + DateTimePicker: Optional[ParameterDateTimePickerControlTypeDef] = None + List: Optional[ParameterListControlTypeDef] = None + Dropdown: Optional[ParameterDropDownControlTypeDef] = None + TextField: Optional[ParameterTextFieldControlTypeDef] = None + TextArea: Optional[ParameterTextAreaControlTypeDef] = None + Slider: Optional[ParameterSliderControlTypeDef] = None + +class TableFieldURLConfigurationTypeDef(BaseModel): + LinkConfiguration: Optional[TableFieldLinkConfigurationTypeDef] = None + ImageConfiguration: Optional[TableFieldImageConfigurationTypeDef] = None + +class PivotTableTotalOptionsOutputTypeDef(BaseModel): + RowSubtotalOptions: Optional[SubtotalOptionsOutputTypeDef] = None + ColumnSubtotalOptions: Optional[SubtotalOptionsOutputTypeDef] = None + RowTotalOptions: Optional[PivotTotalOptionsOutputTypeDef] = None + ColumnTotalOptions: Optional[PivotTotalOptionsOutputTypeDef] = None + +class PivotTableTotalOptionsTypeDef(BaseModel): + RowSubtotalOptions: Optional[SubtotalOptionsTypeDef] = None + ColumnSubtotalOptions: Optional[SubtotalOptionsTypeDef] = None + RowTotalOptions: Optional[PivotTotalOptionsTypeDef] = None + ColumnTotalOptions: Optional[PivotTotalOptionsTypeDef] = None + +class GaugeChartConditionalFormattingOptionOutputTypeDef(BaseModel): + PrimaryValue: Optional[GaugeChartPrimaryValueConditionalFormattingOutputTypeDef] = None + Arc: Optional[GaugeChartArcConditionalFormattingOutputTypeDef] = None + +class KPIConditionalFormattingOptionOutputTypeDef(BaseModel): + PrimaryValue: Optional[KPIPrimaryValueConditionalFormattingOutputTypeDef] = None + ProgressBar: Optional[KPIProgressBarConditionalFormattingOutputTypeDef] = None + ActualValue: Optional[KPIActualValueConditionalFormattingOutputTypeDef] = None + ComparisonValue: Optional[KPIComparisonValueConditionalFormattingOutputTypeDef] = None + +class FilledMapShapeConditionalFormattingOutputTypeDef(BaseModel): + FieldId: str + Format: Optional[ShapeConditionalFormatOutputTypeDef] = None + +class PivotTableCellConditionalFormattingOutputTypeDef(BaseModel): + FieldId: str + TextFormat: Optional[TextConditionalFormatOutputTypeDef] = None + Scope: Optional[PivotTableConditionalFormattingScopeTypeDef] = None + Scopes: Optional[List[PivotTableConditionalFormattingScopeTypeDef]] = None + +class TableCellConditionalFormattingOutputTypeDef(BaseModel): + FieldId: str + TextFormat: Optional[TextConditionalFormatOutputTypeDef] = None + +class GaugeChartConditionalFormattingOptionTypeDef(BaseModel): + PrimaryValue: Optional[GaugeChartPrimaryValueConditionalFormattingTypeDef] = None + Arc: Optional[GaugeChartArcConditionalFormattingTypeDef] = None + +class KPIConditionalFormattingOptionTypeDef(BaseModel): + PrimaryValue: Optional[KPIPrimaryValueConditionalFormattingTypeDef] = None + ProgressBar: Optional[KPIProgressBarConditionalFormattingTypeDef] = None + ActualValue: Optional[KPIActualValueConditionalFormattingTypeDef] = None + ComparisonValue: Optional[KPIComparisonValueConditionalFormattingTypeDef] = None + +class FilledMapShapeConditionalFormattingTypeDef(BaseModel): + FieldId: str + Format: Optional[ShapeConditionalFormatTypeDef] = None + +class PivotTableCellConditionalFormattingTypeDef(BaseModel): + FieldId: str + TextFormat: Optional[TextConditionalFormatTypeDef] = None + Scope: Optional[PivotTableConditionalFormattingScopeTypeDef] = None + Scopes: Optional[Sequence[PivotTableConditionalFormattingScopeTypeDef]] = None + +class TableCellConditionalFormattingTypeDef(BaseModel): + FieldId: str + TextFormat: Optional[TextConditionalFormatTypeDef] = None + +class ThemeTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + ThemeId: Optional[str] = None + Version: Optional[ThemeVersionTypeDef] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + Type: Optional[ThemeTypeType] = None + +class GaugeChartOptionsTypeDef(BaseModel): + PrimaryValueDisplayType: Optional[PrimaryValueDisplayTypeType] = None + Comparison: Optional[ComparisonConfigurationTypeDef] = None + ArcAxis: Optional[ArcAxisConfigurationTypeDef] = None + Arc: Optional[ArcConfigurationTypeDef] = None + PrimaryValueFontConfiguration: Optional[FontConfigurationTypeDef] = None + +class KPIOptionsTypeDef(BaseModel): + ProgressBar: Optional[ProgressBarOptionsTypeDef] = None + TrendArrows: Optional[TrendArrowOptionsTypeDef] = None + SecondaryValue: Optional[SecondaryValueOptionsTypeDef] = None + Comparison: Optional[ComparisonConfigurationTypeDef] = None + PrimaryValueDisplayType: Optional[PrimaryValueDisplayTypeType] = None + PrimaryValueFontConfiguration: Optional[FontConfigurationTypeDef] = None + SecondaryValueFontConfiguration: Optional[FontConfigurationTypeDef] = None + Sparkline: Optional[KPISparklineOptionsTypeDef] = None + VisualLayoutOptions: Optional[KPIVisualLayoutOptionsTypeDef] = None + +class DateDimensionFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + DateGranularity: Optional[TimeGranularityType] = None + HierarchyId: Optional[str] = None + FormatConfiguration: Optional[DateTimeFormatConfigurationTypeDef] = None + +class DateMeasureFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + AggregationFunction: Optional[DateAggregationFunctionType] = None + FormatConfiguration: Optional[DateTimeFormatConfigurationTypeDef] = None + +class NumericalDimensionFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + HierarchyId: Optional[str] = None + FormatConfiguration: Optional[NumberFormatConfigurationTypeDef] = None + +class NumericalMeasureFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + AggregationFunction: Optional[NumericalAggregationFunctionTypeDef] = None + FormatConfiguration: Optional[NumberFormatConfigurationTypeDef] = None + +class ReferenceLineLabelConfigurationTypeDef(BaseModel): + ValueLabelConfiguration: Optional[ReferenceLineValueLabelConfigurationTypeDef] = None + CustomLabelConfiguration: Optional[ReferenceLineCustomLabelConfigurationTypeDef] = None + FontConfiguration: Optional[FontConfigurationTypeDef] = None + FontColor: Optional[str] = None + HorizontalPosition: Optional[ReferenceLineLabelHorizontalPositionType] = None + VerticalPosition: Optional[ReferenceLineLabelVerticalPositionType] = None + +class CategoricalDimensionFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + HierarchyId: Optional[str] = None + FormatConfiguration: Optional[StringFormatConfigurationTypeDef] = None + +class CategoricalMeasureFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + AggregationFunction: Optional[CategoricalAggregationFunctionType] = None + FormatConfiguration: Optional[StringFormatConfigurationTypeDef] = None + +class FormatConfigurationTypeDef(BaseModel): + StringFormatConfiguration: Optional[StringFormatConfigurationTypeDef] = None + NumberFormatConfiguration: Optional[NumberFormatConfigurationTypeDef] = None + DateTimeFormatConfiguration: Optional[DateTimeFormatConfigurationTypeDef] = None + +class BodySectionRepeatDimensionConfigurationOutputTypeDef(BaseModel): + DynamicCategoryDimensionConfiguration: Optional[ BodySectionDynamicCategoryDimensionConfigurationOutputTypeDef ] = None + DynamicNumericDimensionConfiguration: Optional[ BodySectionDynamicNumericDimensionConfigurationOutputTypeDef ] = None + +class BodySectionRepeatDimensionConfigurationTypeDef(BaseModel): + DynamicCategoryDimensionConfiguration: Optional[ BodySectionDynamicCategoryDimensionConfigurationTypeDef ] = None + DynamicNumericDimensionConfiguration: Optional[ BodySectionDynamicNumericDimensionConfigurationTypeDef ] = None + +class BarChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + ColorSort: Optional[List[FieldSortOptionsTypeDef]] = None + ColorItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + SmallMultiplesSort: Optional[List[FieldSortOptionsTypeDef]] = None + SmallMultiplesLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class BarChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + ColorSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + ColorItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + SmallMultiplesSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + SmallMultiplesLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class BoxPlotSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + PaginationConfiguration: Optional[PaginationConfigurationTypeDef] = None + +class BoxPlotSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + PaginationConfiguration: Optional[PaginationConfigurationTypeDef] = None + +class ComboChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + ColorSort: Optional[List[FieldSortOptionsTypeDef]] = None + ColorItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class ComboChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + ColorSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + ColorItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class FilledMapSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + +class FilledMapSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + +class FunnelChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class FunnelChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class HeatMapSortConfigurationOutputTypeDef(BaseModel): + HeatMapRowSort: Optional[List[FieldSortOptionsTypeDef]] = None + HeatMapColumnSort: Optional[List[FieldSortOptionsTypeDef]] = None + HeatMapRowItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + HeatMapColumnItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class HeatMapSortConfigurationTypeDef(BaseModel): + HeatMapRowSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + HeatMapColumnSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + HeatMapRowItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + HeatMapColumnItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class KPISortConfigurationOutputTypeDef(BaseModel): + TrendGroupSort: Optional[List[FieldSortOptionsTypeDef]] = None + +class KPISortConfigurationTypeDef(BaseModel): + TrendGroupSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + +class LineChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + CategoryItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + ColorItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + SmallMultiplesSort: Optional[List[FieldSortOptionsTypeDef]] = None + SmallMultiplesLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class LineChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + CategoryItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + ColorItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + SmallMultiplesSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + SmallMultiplesLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class PieChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + SmallMultiplesSort: Optional[List[FieldSortOptionsTypeDef]] = None + SmallMultiplesLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class PieChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + SmallMultiplesSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + SmallMultiplesLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class RadarChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + ColorSort: Optional[List[FieldSortOptionsTypeDef]] = None + ColorItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class RadarChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + ColorSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + ColorItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class SankeyDiagramSortConfigurationOutputTypeDef(BaseModel): + WeightSort: Optional[List[FieldSortOptionsTypeDef]] = None + SourceItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + DestinationItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class SankeyDiagramSortConfigurationTypeDef(BaseModel): + WeightSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + SourceItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + DestinationItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class TableSortConfigurationOutputTypeDef(BaseModel): + RowSort: Optional[List[FieldSortOptionsTypeDef]] = None + PaginationConfiguration: Optional[PaginationConfigurationTypeDef] = None + +class TableSortConfigurationTypeDef(BaseModel): + RowSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + PaginationConfiguration: Optional[PaginationConfigurationTypeDef] = None + +class TreeMapSortConfigurationOutputTypeDef(BaseModel): + TreeMapSort: Optional[List[FieldSortOptionsTypeDef]] = None + TreeMapGroupItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class TreeMapSortConfigurationTypeDef(BaseModel): + TreeMapSort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + TreeMapGroupItemsLimitConfiguration: Optional[ItemsLimitConfigurationTypeDef] = None + +class WaterfallChartSortConfigurationOutputTypeDef(BaseModel): + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + BreakdownItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class WaterfallChartSortConfigurationTypeDef(BaseModel): + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + BreakdownItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + +class WordCloudSortConfigurationOutputTypeDef(BaseModel): + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + CategorySort: Optional[List[FieldSortOptionsTypeDef]] = None + +class WordCloudSortConfigurationTypeDef(BaseModel): + CategoryItemsLimit: Optional[ItemsLimitConfigurationTypeDef] = None + CategorySort: Optional[Sequence[FieldSortOptionsTypeDef]] = None + +class PivotFieldSortOptionsOutputTypeDef(BaseModel): + FieldId: str + SortBy: PivotTableSortByOutputTypeDef + +class PivotFieldSortOptionsTypeDef(BaseModel): + FieldId: str + SortBy: PivotTableSortByTypeDef + +class FieldBasedTooltipOutputTypeDef(BaseModel): + AggregationVisibility: Optional[VisibilityType] = None + TooltipTitleType: Optional[TooltipTitleTypeType] = None + TooltipFields: Optional[List[TooltipItemTypeDef]] = None + +class FieldBasedTooltipTypeDef(BaseModel): + AggregationVisibility: Optional[VisibilityType] = None + TooltipTitleType: Optional[TooltipTitleTypeType] = None + TooltipFields: Optional[Sequence[TooltipItemTypeDef]] = None + +class TopicDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + UserExperienceVersion: Optional[TopicUserExperienceVersionType] = None + DataSets: Optional[List[DatasetMetadataOutputTypeDef]] = None + +class TopicDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + UserExperienceVersion: Optional[TopicUserExperienceVersionType] = None + DataSets: Optional[Sequence[DatasetMetadataTypeDef]] = None + +class DescribeAssetBundleImportJobResponseTypeDef(BaseModel): + JobStatus: AssetBundleImportJobStatusType + Errors: List[AssetBundleImportJobErrorTypeDef] + RollbackErrors: List[AssetBundleImportJobErrorTypeDef] + Arn: str + CreatedTime: datetime + AssetBundleImportJobId: str + AwsAccountId: str + AssetBundleImportSource: AssetBundleImportSourceDescriptionTypeDef + OverrideParameters: AssetBundleImportJobOverrideParametersOutputTypeDef + FailureAction: AssetBundleImportFailureActionType + RequestId: str + Status: int + OverridePermissions: AssetBundleImportJobOverridePermissionsOutputTypeDef + OverrideTags: AssetBundleImportJobOverrideTagsOutputTypeDef + OverrideValidationStrategy: AssetBundleImportJobOverrideValidationStrategyTypeDef + Warnings: List[AssetBundleImportJobWarningTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartAssetBundleImportJobRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AssetBundleImportJobId: str + AssetBundleImportSource: AssetBundleImportSourceTypeDef + OverrideParameters: Optional[AssetBundleImportJobOverrideParametersTypeDef] = None + FailureAction: Optional[AssetBundleImportFailureActionType] = None + OverridePermissions: Optional[AssetBundleImportJobOverridePermissionsTypeDef] = None + OverrideTags: Optional[AssetBundleImportJobOverrideTagsTypeDef] = None + OverrideValidationStrategy: Optional[ AssetBundleImportJobOverrideValidationStrategyTypeDef ] = None + +class CreateDataSourceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSourceId: str + Name: str + Type: DataSourceTypeType + DataSourceParameters: Optional[DataSourceParametersTypeDef] = None + Credentials: Optional[DataSourceCredentialsTypeDef] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + VpcConnectionProperties: Optional[VpcConnectionPropertiesTypeDef] = None + SslProperties: Optional[SslPropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + FolderArns: Optional[Sequence[str]] = None + +class UpdateDataSourceRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSourceId: str + Name: str + DataSourceParameters: Optional[DataSourceParametersTypeDef] = None + Credentials: Optional[DataSourceCredentialsTypeDef] = None + VpcConnectionProperties: Optional[VpcConnectionPropertiesTypeDef] = None + SslProperties: Optional[SslPropertiesTypeDef] = None + +class SnapshotJobResultTypeDef(BaseModel): + AnonymousUsers: Optional[List[AnonymousUserSnapshotJobResultTypeDef]] = None + +class DefaultNewSheetConfigurationTypeDef(BaseModel): + InteractiveLayoutConfiguration: Optional[DefaultInteractiveLayoutConfigurationTypeDef] = None + PaginatedLayoutConfiguration: Optional[DefaultPaginatedLayoutConfigurationTypeDef] = None + SheetContentType: Optional[SheetContentTypeType] = None + +class BodySectionContentOutputTypeDef(BaseModel): + Layout: Optional[SectionLayoutConfigurationOutputTypeDef] = None + +class HeaderFooterSectionConfigurationOutputTypeDef(BaseModel): + SectionId: str + Layout: SectionLayoutConfigurationOutputTypeDef + Style: Optional[SectionStyleTypeDef] = None + +class BodySectionContentTypeDef(BaseModel): + Layout: Optional[SectionLayoutConfigurationTypeDef] = None + +class HeaderFooterSectionConfigurationTypeDef(BaseModel): + SectionId: str + Layout: SectionLayoutConfigurationTypeDef + Style: Optional[SectionStyleTypeDef] = None + +class VisualCustomActionOperationTypeDef(BaseModel): + FilterOperation: Optional[CustomActionFilterOperationTypeDef] = None + NavigationOperation: Optional[CustomActionNavigationOperationTypeDef] = None + URLOperation: Optional[CustomActionURLOperationTypeDef] = None + SetParametersOperation: Optional[CustomActionSetParametersOperationTypeDef] = None + +class DescribeDataSetResponseTypeDef(BaseModel): + DataSet: DataSetTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataSetRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + Name: str + PhysicalTableMap: Mapping[str, PhysicalTableUnionTypeDef] + ImportMode: DataSetImportModeType + LogicalTableMap: Optional[Mapping[str, LogicalTableUnionTypeDef]] = None + ColumnGroups: Optional[Sequence[ColumnGroupUnionTypeDef]] = None + FieldFolders: Optional[Mapping[str, FieldFolderUnionTypeDef]] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + RowLevelPermissionDataSet: Optional[RowLevelPermissionDataSetTypeDef] = None + RowLevelPermissionTagConfiguration: Optional[ RowLevelPermissionTagConfigurationTypeDef ] = None + ColumnLevelPermissionRules: Optional[Sequence[ColumnLevelPermissionRuleUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataSetUsageConfiguration: Optional[DataSetUsageConfigurationTypeDef] = None + DatasetParameters: Optional[Sequence[DatasetParameterUnionTypeDef]] = None + FolderArns: Optional[Sequence[str]] = None + +class UpdateDataSetRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DataSetId: str + Name: str + PhysicalTableMap: Mapping[str, PhysicalTableUnionTypeDef] + ImportMode: DataSetImportModeType + LogicalTableMap: Optional[Mapping[str, LogicalTableUnionTypeDef]] = None + ColumnGroups: Optional[Sequence[ColumnGroupUnionTypeDef]] = None + FieldFolders: Optional[Mapping[str, FieldFolderUnionTypeDef]] = None + RowLevelPermissionDataSet: Optional[RowLevelPermissionDataSetTypeDef] = None + RowLevelPermissionTagConfiguration: Optional[ RowLevelPermissionTagConfigurationTypeDef ] = None + ColumnLevelPermissionRules: Optional[Sequence[ColumnLevelPermissionRuleUnionTypeDef]] = None + DataSetUsageConfiguration: Optional[DataSetUsageConfigurationTypeDef] = None + DatasetParameters: Optional[Sequence[DatasetParameterUnionTypeDef]] = None + +class VisualCustomActionOutputTypeDef(BaseModel): + CustomActionId: str + Name: str + Trigger: VisualCustomActionTriggerType + ActionOperations: List[VisualCustomActionOperationOutputTypeDef] + Status: Optional[WidgetStatusType] = None + +class DefaultFilterControlConfigurationOutputTypeDef(BaseModel): + Title: str + ControlOptions: DefaultFilterControlOptionsOutputTypeDef + +class DefaultFilterControlConfigurationTypeDef(BaseModel): + Title: str + ControlOptions: DefaultFilterControlOptionsTypeDef + +class TableFieldOptionTypeDef(BaseModel): + FieldId: str + Width: Optional[str] = None + CustomLabel: Optional[str] = None + Visibility: Optional[VisibilityType] = None + URLStyling: Optional[TableFieldURLConfigurationTypeDef] = None + +class GaugeChartConditionalFormattingOutputTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ List[GaugeChartConditionalFormattingOptionOutputTypeDef] ] = None + +class KPIConditionalFormattingOutputTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ List[KPIConditionalFormattingOptionOutputTypeDef] ] = None + +class FilledMapConditionalFormattingOptionOutputTypeDef(BaseModel): + Shape: FilledMapShapeConditionalFormattingOutputTypeDef + +class PivotTableConditionalFormattingOptionOutputTypeDef(BaseModel): + Cell: Optional[PivotTableCellConditionalFormattingOutputTypeDef] = None + +class TableConditionalFormattingOptionOutputTypeDef(BaseModel): + Cell: Optional[TableCellConditionalFormattingOutputTypeDef] = None + Row: Optional[TableRowConditionalFormattingOutputTypeDef] = None + +class GaugeChartConditionalFormattingTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ Sequence[GaugeChartConditionalFormattingOptionTypeDef] ] = None + +class KPIConditionalFormattingTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ Sequence[KPIConditionalFormattingOptionTypeDef] ] = None + +class FilledMapConditionalFormattingOptionTypeDef(BaseModel): + Shape: FilledMapShapeConditionalFormattingTypeDef + +class PivotTableConditionalFormattingOptionTypeDef(BaseModel): + Cell: Optional[PivotTableCellConditionalFormattingTypeDef] = None + +class TableConditionalFormattingOptionTypeDef(BaseModel): + Cell: Optional[TableCellConditionalFormattingTypeDef] = None + Row: Optional[TableRowConditionalFormattingTypeDef] = None + +class DescribeThemeResponseTypeDef(BaseModel): + Theme: ThemeTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReferenceLineTypeDef(BaseModel): + DataConfiguration: ReferenceLineDataConfigurationTypeDef + Status: Optional[WidgetStatusType] = None + StyleConfiguration: Optional[ReferenceLineStyleConfigurationTypeDef] = None + LabelConfiguration: Optional[ReferenceLineLabelConfigurationTypeDef] = None + +class DimensionFieldTypeDef(BaseModel): + NumericalDimensionField: Optional[NumericalDimensionFieldTypeDef] = None + CategoricalDimensionField: Optional[CategoricalDimensionFieldTypeDef] = None + DateDimensionField: Optional[DateDimensionFieldTypeDef] = None + +class MeasureFieldTypeDef(BaseModel): + NumericalMeasureField: Optional[NumericalMeasureFieldTypeDef] = None + CategoricalMeasureField: Optional[CategoricalMeasureFieldTypeDef] = None + DateMeasureField: Optional[DateMeasureFieldTypeDef] = None + CalculatedMeasureField: Optional[CalculatedMeasureFieldTypeDef] = None + +class ColumnConfigurationOutputTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + FormatConfiguration: Optional[FormatConfigurationTypeDef] = None + Role: Optional[ColumnRoleType] = None + ColorsConfiguration: Optional[ColorsConfigurationOutputTypeDef] = None + +class ColumnConfigurationTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + FormatConfiguration: Optional[FormatConfigurationTypeDef] = None + Role: Optional[ColumnRoleType] = None + ColorsConfiguration: Optional[ColorsConfigurationTypeDef] = None + +class UnaggregatedFieldTypeDef(BaseModel): + FieldId: str + Column: ColumnIdentifierTypeDef + FormatConfiguration: Optional[FormatConfigurationTypeDef] = None + +class BodySectionRepeatConfigurationOutputTypeDef(BaseModel): + DimensionConfigurations: Optional[ List[BodySectionRepeatDimensionConfigurationOutputTypeDef] ] = None + PageBreakConfiguration: Optional[BodySectionRepeatPageBreakConfigurationTypeDef] = None + NonRepeatingVisuals: Optional[List[str]] = None + +class BodySectionRepeatConfigurationTypeDef(BaseModel): + DimensionConfigurations: Optional[ Sequence[BodySectionRepeatDimensionConfigurationTypeDef] ] = None + PageBreakConfiguration: Optional[BodySectionRepeatPageBreakConfigurationTypeDef] = None + NonRepeatingVisuals: Optional[Sequence[str]] = None + +class PivotTableSortConfigurationOutputTypeDef(BaseModel): + FieldSortOptions: Optional[List[PivotFieldSortOptionsOutputTypeDef]] = None + +class PivotTableSortConfigurationTypeDef(BaseModel): + FieldSortOptions: Optional[Sequence[PivotFieldSortOptionsTypeDef]] = None + +class TooltipOptionsOutputTypeDef(BaseModel): + TooltipVisibility: Optional[VisibilityType] = None + SelectedTooltipType: Optional[SelectedTooltipTypeType] = None + FieldBasedTooltip: Optional[FieldBasedTooltipOutputTypeDef] = None + +class TooltipOptionsTypeDef(BaseModel): + TooltipVisibility: Optional[VisibilityType] = None + SelectedTooltipType: Optional[SelectedTooltipTypeType] = None + FieldBasedTooltip: Optional[FieldBasedTooltipTypeDef] = None + +class DescribeTopicResponseTypeDef(BaseModel): + Arn: str + TopicId: str + Topic: TopicDetailsOutputTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + Topic: TopicDetailsTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateTopicRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TopicId: str + Topic: TopicDetailsTypeDef + +class DescribeDashboardSnapshotJobResultResponseTypeDef(BaseModel): + Arn: str + JobStatus: SnapshotJobStatusType + CreatedTime: datetime + LastUpdatedTime: datetime + Result: SnapshotJobResultTypeDef + ErrorInfo: SnapshotJobErrorInfoTypeDef + RequestId: str + Status: int + ResponseMetadata: ResponseMetadataTypeDef + +class AnalysisDefaultsTypeDef(BaseModel): + DefaultNewSheetConfiguration: DefaultNewSheetConfigurationTypeDef + +class VisualCustomActionTypeDef(BaseModel): + CustomActionId: str + Name: str + Trigger: VisualCustomActionTriggerType + ActionOperations: Sequence[VisualCustomActionOperationTypeDef] + Status: Optional[WidgetStatusType] = None + +class CustomContentVisualOutputTypeDef(BaseModel): + VisualId: str + DataSetIdentifier: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[CustomContentConfigurationTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class EmptyVisualOutputTypeDef(BaseModel): + VisualId: str + DataSetIdentifier: str + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class CategoryFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + Configuration: CategoryFilterConfigurationOutputTypeDef + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class CategoryInnerFilterOutputTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Configuration: CategoryFilterConfigurationOutputTypeDef + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class NumericEqualityFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + MatchOperator: NumericEqualityMatchOperatorType + NullOption: FilterNullOptionType + Value: Optional[float] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + AggregationFunction: Optional[AggregationFunctionTypeDef] = None + ParameterName: Optional[str] = None + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class NumericRangeFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + NullOption: FilterNullOptionType + IncludeMinimum: Optional[bool] = None + IncludeMaximum: Optional[bool] = None + RangeMinimum: Optional[NumericRangeFilterValueTypeDef] = None + RangeMaximum: Optional[NumericRangeFilterValueTypeDef] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + AggregationFunction: Optional[AggregationFunctionTypeDef] = None + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class RelativeDatesFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + AnchorDateConfiguration: AnchorDateConfigurationTypeDef + TimeGranularity: TimeGranularityType + RelativeDateType: RelativeDateTypeType + NullOption: FilterNullOptionType + MinimumGranularity: Optional[TimeGranularityType] = None + RelativeDateValue: Optional[int] = None + ParameterName: Optional[str] = None + ExcludePeriodConfiguration: Optional[ExcludePeriodConfigurationTypeDef] = None + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class TimeEqualityFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + Value: Optional[datetime] = None + ParameterName: Optional[str] = None + TimeGranularity: Optional[TimeGranularityType] = None + RollingDate: Optional[RollingDateConfigurationTypeDef] = None + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class TimeRangeFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + NullOption: FilterNullOptionType + IncludeMinimum: Optional[bool] = None + IncludeMaximum: Optional[bool] = None + RangeMinimumValue: Optional[TimeRangeFilterValueOutputTypeDef] = None + RangeMaximumValue: Optional[TimeRangeFilterValueOutputTypeDef] = None + ExcludePeriodConfiguration: Optional[ExcludePeriodConfigurationTypeDef] = None + TimeGranularity: Optional[TimeGranularityType] = None + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class TopBottomFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + AggregationSortConfigurations: List[AggregationSortConfigurationTypeDef] + Limit: Optional[int] = None + TimeGranularity: Optional[TimeGranularityType] = None + ParameterName: Optional[str] = None + DefaultFilterControlConfiguration: Optional[ DefaultFilterControlConfigurationOutputTypeDef ] = None + +class CategoryFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + Configuration: CategoryFilterConfigurationTypeDef + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class CategoryInnerFilterTypeDef(BaseModel): + Column: ColumnIdentifierTypeDef + Configuration: CategoryFilterConfigurationTypeDef + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class NumericEqualityFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + MatchOperator: NumericEqualityMatchOperatorType + NullOption: FilterNullOptionType + Value: Optional[float] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + AggregationFunction: Optional[AggregationFunctionTypeDef] = None + ParameterName: Optional[str] = None + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class NumericRangeFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + NullOption: FilterNullOptionType + IncludeMinimum: Optional[bool] = None + IncludeMaximum: Optional[bool] = None + RangeMinimum: Optional[NumericRangeFilterValueTypeDef] = None + RangeMaximum: Optional[NumericRangeFilterValueTypeDef] = None + SelectAllOptions: Optional[Literal["FILTER_ALL_VALUES"]] = None + AggregationFunction: Optional[AggregationFunctionTypeDef] = None + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class RelativeDatesFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + AnchorDateConfiguration: AnchorDateConfigurationTypeDef + TimeGranularity: TimeGranularityType + RelativeDateType: RelativeDateTypeType + NullOption: FilterNullOptionType + MinimumGranularity: Optional[TimeGranularityType] = None + RelativeDateValue: Optional[int] = None + ParameterName: Optional[str] = None + ExcludePeriodConfiguration: Optional[ExcludePeriodConfigurationTypeDef] = None + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class TimeEqualityFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + Value: Optional[TimestampTypeDef] = None + ParameterName: Optional[str] = None + TimeGranularity: Optional[TimeGranularityType] = None + RollingDate: Optional[RollingDateConfigurationTypeDef] = None + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class TimeRangeFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + NullOption: FilterNullOptionType + IncludeMinimum: Optional[bool] = None + IncludeMaximum: Optional[bool] = None + RangeMinimumValue: Optional[TimeRangeFilterValueTypeDef] = None + RangeMaximumValue: Optional[TimeRangeFilterValueTypeDef] = None + ExcludePeriodConfiguration: Optional[ExcludePeriodConfigurationTypeDef] = None + TimeGranularity: Optional[TimeGranularityType] = None + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class TopBottomFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + AggregationSortConfigurations: Sequence[AggregationSortConfigurationTypeDef] + Limit: Optional[int] = None + TimeGranularity: Optional[TimeGranularityType] = None + ParameterName: Optional[str] = None + DefaultFilterControlConfiguration: Optional[DefaultFilterControlConfigurationTypeDef] = None + +class TableFieldOptionsOutputTypeDef(BaseModel): + SelectedFieldOptions: Optional[List[TableFieldOptionTypeDef]] = None + Order: Optional[List[str]] = None + PinnedFieldOptions: Optional[TablePinnedFieldOptionsOutputTypeDef] = None + +class TableFieldOptionsTypeDef(BaseModel): + SelectedFieldOptions: Optional[Sequence[TableFieldOptionTypeDef]] = None + Order: Optional[Sequence[str]] = None + PinnedFieldOptions: Optional[TablePinnedFieldOptionsTypeDef] = None + +class FilledMapConditionalFormattingOutputTypeDef(BaseModel): + ConditionalFormattingOptions: List[FilledMapConditionalFormattingOptionOutputTypeDef] + +class PivotTableConditionalFormattingOutputTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ List[PivotTableConditionalFormattingOptionOutputTypeDef] ] = None + +class TableConditionalFormattingOutputTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ List[TableConditionalFormattingOptionOutputTypeDef] ] = None + +class FilledMapConditionalFormattingTypeDef(BaseModel): + ConditionalFormattingOptions: Sequence[FilledMapConditionalFormattingOptionTypeDef] + +class PivotTableConditionalFormattingTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ Sequence[PivotTableConditionalFormattingOptionTypeDef] ] = None + +class TableConditionalFormattingTypeDef(BaseModel): + ConditionalFormattingOptions: Optional[ Sequence[TableConditionalFormattingOptionTypeDef] ] = None + +class UniqueValuesComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Category: Optional[DimensionFieldTypeDef] = None + +class BarChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Category: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + Colors: Optional[List[DimensionFieldTypeDef]] = None + SmallMultiples: Optional[List[DimensionFieldTypeDef]] = None + +class BarChartAggregatedFieldWellsTypeDef(BaseModel): + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + Colors: Optional[Sequence[DimensionFieldTypeDef]] = None + SmallMultiples: Optional[Sequence[DimensionFieldTypeDef]] = None + +class BoxPlotAggregatedFieldWellsOutputTypeDef(BaseModel): + GroupBy: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class BoxPlotAggregatedFieldWellsTypeDef(BaseModel): + GroupBy: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class ComboChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Category: Optional[List[DimensionFieldTypeDef]] = None + BarValues: Optional[List[MeasureFieldTypeDef]] = None + Colors: Optional[List[DimensionFieldTypeDef]] = None + LineValues: Optional[List[MeasureFieldTypeDef]] = None + +class ComboChartAggregatedFieldWellsTypeDef(BaseModel): + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + BarValues: Optional[Sequence[MeasureFieldTypeDef]] = None + Colors: Optional[Sequence[DimensionFieldTypeDef]] = None + LineValues: Optional[Sequence[MeasureFieldTypeDef]] = None + +class FilledMapAggregatedFieldWellsOutputTypeDef(BaseModel): + Geospatial: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class FilledMapAggregatedFieldWellsTypeDef(BaseModel): + Geospatial: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class ForecastComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + PeriodsForward: Optional[int] = None + PeriodsBackward: Optional[int] = None + UpperBoundary: Optional[float] = None + LowerBoundary: Optional[float] = None + PredictionInterval: Optional[int] = None + Seasonality: Optional[ForecastComputationSeasonalityType] = None + CustomSeasonalityValue: Optional[int] = None + +class FunnelChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Category: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class FunnelChartAggregatedFieldWellsTypeDef(BaseModel): + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class GaugeChartFieldWellsOutputTypeDef(BaseModel): + Values: Optional[List[MeasureFieldTypeDef]] = None + TargetValues: Optional[List[MeasureFieldTypeDef]] = None + +class GaugeChartFieldWellsTypeDef(BaseModel): + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + TargetValues: Optional[Sequence[MeasureFieldTypeDef]] = None + +class GeospatialMapAggregatedFieldWellsOutputTypeDef(BaseModel): + Geospatial: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + Colors: Optional[List[DimensionFieldTypeDef]] = None + +class GeospatialMapAggregatedFieldWellsTypeDef(BaseModel): + Geospatial: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + Colors: Optional[Sequence[DimensionFieldTypeDef]] = None + +class GrowthRateComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + PeriodSize: Optional[int] = None + +class HeatMapAggregatedFieldWellsOutputTypeDef(BaseModel): + Rows: Optional[List[DimensionFieldTypeDef]] = None + Columns: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class HeatMapAggregatedFieldWellsTypeDef(BaseModel): + Rows: Optional[Sequence[DimensionFieldTypeDef]] = None + Columns: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class HistogramAggregatedFieldWellsOutputTypeDef(BaseModel): + Values: Optional[List[MeasureFieldTypeDef]] = None + +class HistogramAggregatedFieldWellsTypeDef(BaseModel): + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class KPIFieldWellsOutputTypeDef(BaseModel): + Values: Optional[List[MeasureFieldTypeDef]] = None + TargetValues: Optional[List[MeasureFieldTypeDef]] = None + TrendGroups: Optional[List[DimensionFieldTypeDef]] = None + +class KPIFieldWellsTypeDef(BaseModel): + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + TargetValues: Optional[Sequence[MeasureFieldTypeDef]] = None + TrendGroups: Optional[Sequence[DimensionFieldTypeDef]] = None + +class LineChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Category: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + Colors: Optional[List[DimensionFieldTypeDef]] = None + SmallMultiples: Optional[List[DimensionFieldTypeDef]] = None + +class LineChartAggregatedFieldWellsTypeDef(BaseModel): + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + Colors: Optional[Sequence[DimensionFieldTypeDef]] = None + SmallMultiples: Optional[Sequence[DimensionFieldTypeDef]] = None + +class MaximumMinimumComputationTypeDef(BaseModel): + ComputationId: str + Type: MaximumMinimumComputationTypeType + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + +class MetricComparisonComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + FromValue: Optional[MeasureFieldTypeDef] = None + TargetValue: Optional[MeasureFieldTypeDef] = None + +class PeriodOverPeriodComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + +class PeriodToDateComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + PeriodTimeGranularity: Optional[TimeGranularityType] = None + +class PieChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Category: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + SmallMultiples: Optional[List[DimensionFieldTypeDef]] = None + +class PieChartAggregatedFieldWellsTypeDef(BaseModel): + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + SmallMultiples: Optional[Sequence[DimensionFieldTypeDef]] = None + +class PivotTableAggregatedFieldWellsOutputTypeDef(BaseModel): + Rows: Optional[List[DimensionFieldTypeDef]] = None + Columns: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class PivotTableAggregatedFieldWellsTypeDef(BaseModel): + Rows: Optional[Sequence[DimensionFieldTypeDef]] = None + Columns: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class RadarChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Category: Optional[List[DimensionFieldTypeDef]] = None + Color: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class RadarChartAggregatedFieldWellsTypeDef(BaseModel): + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Color: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class SankeyDiagramAggregatedFieldWellsOutputTypeDef(BaseModel): + Source: Optional[List[DimensionFieldTypeDef]] = None + Destination: Optional[List[DimensionFieldTypeDef]] = None + Weight: Optional[List[MeasureFieldTypeDef]] = None + +class SankeyDiagramAggregatedFieldWellsTypeDef(BaseModel): + Source: Optional[Sequence[DimensionFieldTypeDef]] = None + Destination: Optional[Sequence[DimensionFieldTypeDef]] = None + Weight: Optional[Sequence[MeasureFieldTypeDef]] = None + +class ScatterPlotCategoricallyAggregatedFieldWellsOutputTypeDef(BaseModel): + XAxis: Optional[List[MeasureFieldTypeDef]] = None + YAxis: Optional[List[MeasureFieldTypeDef]] = None + Category: Optional[List[DimensionFieldTypeDef]] = None + Size: Optional[List[MeasureFieldTypeDef]] = None + Label: Optional[List[DimensionFieldTypeDef]] = None + +class ScatterPlotCategoricallyAggregatedFieldWellsTypeDef(BaseModel): + XAxis: Optional[Sequence[MeasureFieldTypeDef]] = None + YAxis: Optional[Sequence[MeasureFieldTypeDef]] = None + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Size: Optional[Sequence[MeasureFieldTypeDef]] = None + Label: Optional[Sequence[DimensionFieldTypeDef]] = None + +class ScatterPlotUnaggregatedFieldWellsOutputTypeDef(BaseModel): + XAxis: Optional[List[DimensionFieldTypeDef]] = None + YAxis: Optional[List[DimensionFieldTypeDef]] = None + Size: Optional[List[MeasureFieldTypeDef]] = None + Category: Optional[List[DimensionFieldTypeDef]] = None + Label: Optional[List[DimensionFieldTypeDef]] = None + +class ScatterPlotUnaggregatedFieldWellsTypeDef(BaseModel): + XAxis: Optional[Sequence[DimensionFieldTypeDef]] = None + YAxis: Optional[Sequence[DimensionFieldTypeDef]] = None + Size: Optional[Sequence[MeasureFieldTypeDef]] = None + Category: Optional[Sequence[DimensionFieldTypeDef]] = None + Label: Optional[Sequence[DimensionFieldTypeDef]] = None + +class TableAggregatedFieldWellsOutputTypeDef(BaseModel): + GroupBy: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + +class TableAggregatedFieldWellsTypeDef(BaseModel): + GroupBy: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + +class TopBottomMoversComputationTypeDef(BaseModel): + ComputationId: str + Type: TopBottomComputationTypeType + Name: Optional[str] = None + Time: Optional[DimensionFieldTypeDef] = None + Category: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + MoverSize: Optional[int] = None + SortOrder: Optional[TopBottomSortOrderType] = None + +class TopBottomRankedComputationTypeDef(BaseModel): + ComputationId: str + Type: TopBottomComputationTypeType + Name: Optional[str] = None + Category: Optional[DimensionFieldTypeDef] = None + Value: Optional[MeasureFieldTypeDef] = None + ResultSize: Optional[int] = None + +class TotalAggregationComputationTypeDef(BaseModel): + ComputationId: str + Name: Optional[str] = None + Value: Optional[MeasureFieldTypeDef] = None + +class TreeMapAggregatedFieldWellsOutputTypeDef(BaseModel): + Groups: Optional[List[DimensionFieldTypeDef]] = None + Sizes: Optional[List[MeasureFieldTypeDef]] = None + Colors: Optional[List[MeasureFieldTypeDef]] = None + +class TreeMapAggregatedFieldWellsTypeDef(BaseModel): + Groups: Optional[Sequence[DimensionFieldTypeDef]] = None + Sizes: Optional[Sequence[MeasureFieldTypeDef]] = None + Colors: Optional[Sequence[MeasureFieldTypeDef]] = None + +class WaterfallChartAggregatedFieldWellsOutputTypeDef(BaseModel): + Categories: Optional[List[DimensionFieldTypeDef]] = None + Values: Optional[List[MeasureFieldTypeDef]] = None + Breakdowns: Optional[List[DimensionFieldTypeDef]] = None + +class WaterfallChartAggregatedFieldWellsTypeDef(BaseModel): + Categories: Optional[Sequence[DimensionFieldTypeDef]] = None + Values: Optional[Sequence[MeasureFieldTypeDef]] = None + Breakdowns: Optional[Sequence[DimensionFieldTypeDef]] = None + +class WordCloudAggregatedFieldWellsOutputTypeDef(BaseModel): + GroupBy: Optional[List[DimensionFieldTypeDef]] = None + Size: Optional[List[MeasureFieldTypeDef]] = None + +class WordCloudAggregatedFieldWellsTypeDef(BaseModel): + GroupBy: Optional[Sequence[DimensionFieldTypeDef]] = None + Size: Optional[Sequence[MeasureFieldTypeDef]] = None + +class TableUnaggregatedFieldWellsOutputTypeDef(BaseModel): + Values: Optional[List[UnaggregatedFieldTypeDef]] = None + +class TableUnaggregatedFieldWellsTypeDef(BaseModel): + Values: Optional[Sequence[UnaggregatedFieldTypeDef]] = None + +class BodySectionConfigurationOutputTypeDef(BaseModel): + SectionId: str + Content: BodySectionContentOutputTypeDef + Style: Optional[SectionStyleTypeDef] = None + PageBreakConfiguration: Optional[SectionPageBreakConfigurationTypeDef] = None + RepeatConfiguration: Optional[BodySectionRepeatConfigurationOutputTypeDef] = None + +class BodySectionConfigurationTypeDef(BaseModel): + SectionId: str + Content: BodySectionContentTypeDef + Style: Optional[SectionStyleTypeDef] = None + PageBreakConfiguration: Optional[SectionPageBreakConfigurationTypeDef] = None + RepeatConfiguration: Optional[BodySectionRepeatConfigurationTypeDef] = None + +class CustomContentVisualTypeDef(BaseModel): + VisualId: str + DataSetIdentifier: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[CustomContentConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class EmptyVisualTypeDef(BaseModel): + VisualId: str + DataSetIdentifier: str + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class InnerFilterOutputTypeDef(BaseModel): + CategoryInnerFilter: Optional[CategoryInnerFilterOutputTypeDef] = None + +class InnerFilterTypeDef(BaseModel): + CategoryInnerFilter: Optional[CategoryInnerFilterTypeDef] = None + +class BarChartFieldWellsOutputTypeDef(BaseModel): + BarChartAggregatedFieldWells: Optional[BarChartAggregatedFieldWellsOutputTypeDef] = None + +class BarChartFieldWellsTypeDef(BaseModel): + BarChartAggregatedFieldWells: Optional[BarChartAggregatedFieldWellsTypeDef] = None + +class BoxPlotFieldWellsOutputTypeDef(BaseModel): + BoxPlotAggregatedFieldWells: Optional[BoxPlotAggregatedFieldWellsOutputTypeDef] = None + +class BoxPlotFieldWellsTypeDef(BaseModel): + BoxPlotAggregatedFieldWells: Optional[BoxPlotAggregatedFieldWellsTypeDef] = None + +class ComboChartFieldWellsOutputTypeDef(BaseModel): + ComboChartAggregatedFieldWells: Optional[ComboChartAggregatedFieldWellsOutputTypeDef] = None + +class ComboChartFieldWellsTypeDef(BaseModel): + ComboChartAggregatedFieldWells: Optional[ComboChartAggregatedFieldWellsTypeDef] = None + +class FilledMapFieldWellsOutputTypeDef(BaseModel): + FilledMapAggregatedFieldWells: Optional[FilledMapAggregatedFieldWellsOutputTypeDef] = None + +class FilledMapFieldWellsTypeDef(BaseModel): + FilledMapAggregatedFieldWells: Optional[FilledMapAggregatedFieldWellsTypeDef] = None + +class FunnelChartFieldWellsOutputTypeDef(BaseModel): + FunnelChartAggregatedFieldWells: Optional[ FunnelChartAggregatedFieldWellsOutputTypeDef ] = None + +class FunnelChartFieldWellsTypeDef(BaseModel): + FunnelChartAggregatedFieldWells: Optional[FunnelChartAggregatedFieldWellsTypeDef] = None + +class GaugeChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[GaugeChartFieldWellsOutputTypeDef] = None + GaugeChartOptions: Optional[GaugeChartOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + TooltipOptions: Optional[TooltipOptionsOutputTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + ColorConfiguration: Optional[GaugeChartColorConfigurationTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class GaugeChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[GaugeChartFieldWellsTypeDef] = None + GaugeChartOptions: Optional[GaugeChartOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + TooltipOptions: Optional[TooltipOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + ColorConfiguration: Optional[GaugeChartColorConfigurationTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class GeospatialMapFieldWellsOutputTypeDef(BaseModel): + GeospatialMapAggregatedFieldWells: Optional[ GeospatialMapAggregatedFieldWellsOutputTypeDef ] = None + +class GeospatialMapFieldWellsTypeDef(BaseModel): + GeospatialMapAggregatedFieldWells: Optional[GeospatialMapAggregatedFieldWellsTypeDef] = None + +class HeatMapFieldWellsOutputTypeDef(BaseModel): + HeatMapAggregatedFieldWells: Optional[HeatMapAggregatedFieldWellsOutputTypeDef] = None + +class HeatMapFieldWellsTypeDef(BaseModel): + HeatMapAggregatedFieldWells: Optional[HeatMapAggregatedFieldWellsTypeDef] = None + +class HistogramFieldWellsOutputTypeDef(BaseModel): + HistogramAggregatedFieldWells: Optional[HistogramAggregatedFieldWellsOutputTypeDef] = None + +class HistogramFieldWellsTypeDef(BaseModel): + HistogramAggregatedFieldWells: Optional[HistogramAggregatedFieldWellsTypeDef] = None + +class KPIConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[KPIFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[KPISortConfigurationOutputTypeDef] = None + KPIOptions: Optional[KPIOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class KPIConfigurationTypeDef(BaseModel): + FieldWells: Optional[KPIFieldWellsTypeDef] = None + SortConfiguration: Optional[KPISortConfigurationTypeDef] = None + KPIOptions: Optional[KPIOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class LineChartFieldWellsOutputTypeDef(BaseModel): + LineChartAggregatedFieldWells: Optional[LineChartAggregatedFieldWellsOutputTypeDef] = None + +class LineChartFieldWellsTypeDef(BaseModel): + LineChartAggregatedFieldWells: Optional[LineChartAggregatedFieldWellsTypeDef] = None + +class PieChartFieldWellsOutputTypeDef(BaseModel): + PieChartAggregatedFieldWells: Optional[PieChartAggregatedFieldWellsOutputTypeDef] = None + +class PieChartFieldWellsTypeDef(BaseModel): + PieChartAggregatedFieldWells: Optional[PieChartAggregatedFieldWellsTypeDef] = None + +class PivotTableFieldWellsOutputTypeDef(BaseModel): + PivotTableAggregatedFieldWells: Optional[PivotTableAggregatedFieldWellsOutputTypeDef] = None + +class PivotTableFieldWellsTypeDef(BaseModel): + PivotTableAggregatedFieldWells: Optional[PivotTableAggregatedFieldWellsTypeDef] = None + +class RadarChartFieldWellsOutputTypeDef(BaseModel): + RadarChartAggregatedFieldWells: Optional[RadarChartAggregatedFieldWellsOutputTypeDef] = None + +class RadarChartFieldWellsTypeDef(BaseModel): + RadarChartAggregatedFieldWells: Optional[RadarChartAggregatedFieldWellsTypeDef] = None + +class SankeyDiagramFieldWellsOutputTypeDef(BaseModel): + SankeyDiagramAggregatedFieldWells: Optional[ SankeyDiagramAggregatedFieldWellsOutputTypeDef ] = None + +class SankeyDiagramFieldWellsTypeDef(BaseModel): + SankeyDiagramAggregatedFieldWells: Optional[SankeyDiagramAggregatedFieldWellsTypeDef] = None + +class ScatterPlotFieldWellsOutputTypeDef(BaseModel): + ScatterPlotCategoricallyAggregatedFieldWells: Optional[ ScatterPlotCategoricallyAggregatedFieldWellsOutputTypeDef ] = None + ScatterPlotUnaggregatedFieldWells: Optional[ ScatterPlotUnaggregatedFieldWellsOutputTypeDef ] = None + +class ScatterPlotFieldWellsTypeDef(BaseModel): + ScatterPlotCategoricallyAggregatedFieldWells: Optional[ ScatterPlotCategoricallyAggregatedFieldWellsTypeDef ] = None + ScatterPlotUnaggregatedFieldWells: Optional[ScatterPlotUnaggregatedFieldWellsTypeDef] = None + +class ComputationTypeDef(BaseModel): + TopBottomRanked: Optional[TopBottomRankedComputationTypeDef] = None + TopBottomMovers: Optional[TopBottomMoversComputationTypeDef] = None + TotalAggregation: Optional[TotalAggregationComputationTypeDef] = None + MaximumMinimum: Optional[MaximumMinimumComputationTypeDef] = None + MetricComparison: Optional[MetricComparisonComputationTypeDef] = None + PeriodOverPeriod: Optional[PeriodOverPeriodComputationTypeDef] = None + PeriodToDate: Optional[PeriodToDateComputationTypeDef] = None + GrowthRate: Optional[GrowthRateComputationTypeDef] = None + UniqueValues: Optional[UniqueValuesComputationTypeDef] = None + Forecast: Optional[ForecastComputationTypeDef] = None + +class TreeMapFieldWellsOutputTypeDef(BaseModel): + TreeMapAggregatedFieldWells: Optional[TreeMapAggregatedFieldWellsOutputTypeDef] = None + +class TreeMapFieldWellsTypeDef(BaseModel): + TreeMapAggregatedFieldWells: Optional[TreeMapAggregatedFieldWellsTypeDef] = None + +class WaterfallChartFieldWellsOutputTypeDef(BaseModel): + WaterfallChartAggregatedFieldWells: Optional[ WaterfallChartAggregatedFieldWellsOutputTypeDef ] = None + +class WaterfallChartFieldWellsTypeDef(BaseModel): + WaterfallChartAggregatedFieldWells: Optional[ WaterfallChartAggregatedFieldWellsTypeDef ] = None + +class WordCloudFieldWellsOutputTypeDef(BaseModel): + WordCloudAggregatedFieldWells: Optional[WordCloudAggregatedFieldWellsOutputTypeDef] = None + +class WordCloudFieldWellsTypeDef(BaseModel): + WordCloudAggregatedFieldWells: Optional[WordCloudAggregatedFieldWellsTypeDef] = None + +class TableFieldWellsOutputTypeDef(BaseModel): + TableAggregatedFieldWells: Optional[TableAggregatedFieldWellsOutputTypeDef] = None + TableUnaggregatedFieldWells: Optional[TableUnaggregatedFieldWellsOutputTypeDef] = None + +class TableFieldWellsTypeDef(BaseModel): + TableAggregatedFieldWells: Optional[TableAggregatedFieldWellsTypeDef] = None + TableUnaggregatedFieldWells: Optional[TableUnaggregatedFieldWellsTypeDef] = None + +class SectionBasedLayoutConfigurationOutputTypeDef(BaseModel): + HeaderSections: List[HeaderFooterSectionConfigurationOutputTypeDef] + BodySections: List[BodySectionConfigurationOutputTypeDef] + FooterSections: List[HeaderFooterSectionConfigurationOutputTypeDef] + CanvasSizeOptions: SectionBasedLayoutCanvasSizeOptionsTypeDef + +class SectionBasedLayoutConfigurationTypeDef(BaseModel): + HeaderSections: Sequence[HeaderFooterSectionConfigurationTypeDef] + BodySections: Sequence[BodySectionConfigurationTypeDef] + FooterSections: Sequence[HeaderFooterSectionConfigurationTypeDef] + CanvasSizeOptions: SectionBasedLayoutCanvasSizeOptionsTypeDef + +class NestedFilterOutputTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + IncludeInnerSet: bool + InnerFilter: InnerFilterOutputTypeDef + +class NestedFilterTypeDef(BaseModel): + FilterId: str + Column: ColumnIdentifierTypeDef + IncludeInnerSet: bool + InnerFilter: InnerFilterTypeDef + +class BarChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[BarChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[BarChartSortConfigurationOutputTypeDef] = None + Orientation: Optional[BarChartOrientationType] = None + BarsArrangement: Optional[BarsArrangementType] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + SmallMultiplesOptions: Optional[SmallMultiplesOptionsTypeDef] = None + CategoryAxis: Optional[AxisDisplayOptionsOutputTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ValueAxis: Optional[AxisDisplayOptionsOutputTypeDef] = None + ValueLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + ReferenceLines: Optional[List[ReferenceLineTypeDef]] = None + ContributionAnalysisDefaults: Optional[List[ContributionAnalysisDefaultOutputTypeDef]] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class BarChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[BarChartFieldWellsTypeDef] = None + SortConfiguration: Optional[BarChartSortConfigurationTypeDef] = None + Orientation: Optional[BarChartOrientationType] = None + BarsArrangement: Optional[BarsArrangementType] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + SmallMultiplesOptions: Optional[SmallMultiplesOptionsTypeDef] = None + CategoryAxis: Optional[AxisDisplayOptionsTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ValueAxis: Optional[AxisDisplayOptionsTypeDef] = None + ValueLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + ReferenceLines: Optional[Sequence[ReferenceLineTypeDef]] = None + ContributionAnalysisDefaults: Optional[Sequence[ContributionAnalysisDefaultTypeDef]] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class BoxPlotChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[BoxPlotFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[BoxPlotSortConfigurationOutputTypeDef] = None + BoxPlotOptions: Optional[BoxPlotOptionsTypeDef] = None + CategoryAxis: Optional[AxisDisplayOptionsOutputTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + ReferenceLines: Optional[List[ReferenceLineTypeDef]] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class BoxPlotChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[BoxPlotFieldWellsTypeDef] = None + SortConfiguration: Optional[BoxPlotSortConfigurationTypeDef] = None + BoxPlotOptions: Optional[BoxPlotOptionsTypeDef] = None + CategoryAxis: Optional[AxisDisplayOptionsTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + ReferenceLines: Optional[Sequence[ReferenceLineTypeDef]] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class ComboChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[ComboChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[ComboChartSortConfigurationOutputTypeDef] = None + BarsArrangement: Optional[BarsArrangementType] = None + CategoryAxis: Optional[AxisDisplayOptionsOutputTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + SecondaryYAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + SecondaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + SingleAxisOptions: Optional[SingleAxisOptionsTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + BarDataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + LineDataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + ReferenceLines: Optional[List[ReferenceLineTypeDef]] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class ComboChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[ComboChartFieldWellsTypeDef] = None + SortConfiguration: Optional[ComboChartSortConfigurationTypeDef] = None + BarsArrangement: Optional[BarsArrangementType] = None + CategoryAxis: Optional[AxisDisplayOptionsTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + SecondaryYAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + SecondaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + SingleAxisOptions: Optional[SingleAxisOptionsTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + BarDataLabels: Optional[DataLabelOptionsTypeDef] = None + LineDataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + ReferenceLines: Optional[Sequence[ReferenceLineTypeDef]] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class FilledMapConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[FilledMapFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[FilledMapSortConfigurationOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + WindowOptions: Optional[GeospatialWindowOptionsTypeDef] = None + MapStyleOptions: Optional[GeospatialMapStyleOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class FilledMapConfigurationTypeDef(BaseModel): + FieldWells: Optional[FilledMapFieldWellsTypeDef] = None + SortConfiguration: Optional[FilledMapSortConfigurationTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + WindowOptions: Optional[GeospatialWindowOptionsTypeDef] = None + MapStyleOptions: Optional[GeospatialMapStyleOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class FunnelChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[FunnelChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[FunnelChartSortConfigurationOutputTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ValueLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + DataLabelOptions: Optional[FunnelChartDataLabelOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class FunnelChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[FunnelChartFieldWellsTypeDef] = None + SortConfiguration: Optional[FunnelChartSortConfigurationTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ValueLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + DataLabelOptions: Optional[FunnelChartDataLabelOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class GaugeChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[GaugeChartConfigurationOutputTypeDef] = None + ConditionalFormatting: Optional[GaugeChartConditionalFormattingOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class GaugeChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[GaugeChartConfigurationTypeDef] = None + ConditionalFormatting: Optional[GaugeChartConditionalFormattingTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class GeospatialMapConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[GeospatialMapFieldWellsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + WindowOptions: Optional[GeospatialWindowOptionsTypeDef] = None + MapStyleOptions: Optional[GeospatialMapStyleOptionsTypeDef] = None + PointStyleOptions: Optional[GeospatialPointStyleOptionsOutputTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class GeospatialMapConfigurationTypeDef(BaseModel): + FieldWells: Optional[GeospatialMapFieldWellsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + WindowOptions: Optional[GeospatialWindowOptionsTypeDef] = None + MapStyleOptions: Optional[GeospatialMapStyleOptionsTypeDef] = None + PointStyleOptions: Optional[GeospatialPointStyleOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class HeatMapConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[HeatMapFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[HeatMapSortConfigurationOutputTypeDef] = None + RowLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ColumnLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ColorScale: Optional[ColorScaleOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class HeatMapConfigurationTypeDef(BaseModel): + FieldWells: Optional[HeatMapFieldWellsTypeDef] = None + SortConfiguration: Optional[HeatMapSortConfigurationTypeDef] = None + RowLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ColumnLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ColorScale: Optional[ColorScaleTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class HistogramConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[HistogramFieldWellsOutputTypeDef] = None + XAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + XAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + YAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + BinOptions: Optional[HistogramBinOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class HistogramConfigurationTypeDef(BaseModel): + FieldWells: Optional[HistogramFieldWellsTypeDef] = None + XAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + XAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + YAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + BinOptions: Optional[HistogramBinOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class KPIVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[KPIConfigurationOutputTypeDef] = None + ConditionalFormatting: Optional[KPIConditionalFormattingOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class KPIVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[KPIConfigurationTypeDef] = None + ConditionalFormatting: Optional[KPIConditionalFormattingTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class LineChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[LineChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[LineChartSortConfigurationOutputTypeDef] = None + ForecastConfigurations: Optional[List[ForecastConfigurationOutputTypeDef]] = None + Type: Optional[LineChartTypeType] = None + SmallMultiplesOptions: Optional[SmallMultiplesOptionsTypeDef] = None + XAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + XAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[LineSeriesAxisDisplayOptionsOutputTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + SecondaryYAxisDisplayOptions: Optional[LineSeriesAxisDisplayOptionsOutputTypeDef] = None + SecondaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + SingleAxisOptions: Optional[SingleAxisOptionsTypeDef] = None + DefaultSeriesSettings: Optional[LineChartDefaultSeriesSettingsTypeDef] = None + Series: Optional[List[SeriesItemTypeDef]] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + ReferenceLines: Optional[List[ReferenceLineTypeDef]] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + ContributionAnalysisDefaults: Optional[List[ContributionAnalysisDefaultOutputTypeDef]] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class LineChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[LineChartFieldWellsTypeDef] = None + SortConfiguration: Optional[LineChartSortConfigurationTypeDef] = None + ForecastConfigurations: Optional[Sequence[ForecastConfigurationTypeDef]] = None + Type: Optional[LineChartTypeType] = None + SmallMultiplesOptions: Optional[SmallMultiplesOptionsTypeDef] = None + XAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + XAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[LineSeriesAxisDisplayOptionsTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + SecondaryYAxisDisplayOptions: Optional[LineSeriesAxisDisplayOptionsTypeDef] = None + SecondaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + SingleAxisOptions: Optional[SingleAxisOptionsTypeDef] = None + DefaultSeriesSettings: Optional[LineChartDefaultSeriesSettingsTypeDef] = None + Series: Optional[Sequence[SeriesItemTypeDef]] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + ReferenceLines: Optional[Sequence[ReferenceLineTypeDef]] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + ContributionAnalysisDefaults: Optional[Sequence[ContributionAnalysisDefaultTypeDef]] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class PieChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[PieChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[PieChartSortConfigurationOutputTypeDef] = None + DonutOptions: Optional[DonutOptionsTypeDef] = None + SmallMultiplesOptions: Optional[SmallMultiplesOptionsTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ValueLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + ContributionAnalysisDefaults: Optional[List[ContributionAnalysisDefaultOutputTypeDef]] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class PieChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[PieChartFieldWellsTypeDef] = None + SortConfiguration: Optional[PieChartSortConfigurationTypeDef] = None + DonutOptions: Optional[DonutOptionsTypeDef] = None + SmallMultiplesOptions: Optional[SmallMultiplesOptionsTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ValueLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + ContributionAnalysisDefaults: Optional[Sequence[ContributionAnalysisDefaultTypeDef]] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class PivotTableConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[PivotTableFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[PivotTableSortConfigurationOutputTypeDef] = None + TableOptions: Optional[PivotTableOptionsOutputTypeDef] = None + TotalOptions: Optional[PivotTableTotalOptionsOutputTypeDef] = None + FieldOptions: Optional[PivotTableFieldOptionsOutputTypeDef] = None + PaginatedReportOptions: Optional[PivotTablePaginatedReportOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class PivotTableConfigurationTypeDef(BaseModel): + FieldWells: Optional[PivotTableFieldWellsTypeDef] = None + SortConfiguration: Optional[PivotTableSortConfigurationTypeDef] = None + TableOptions: Optional[PivotTableOptionsTypeDef] = None + TotalOptions: Optional[PivotTableTotalOptionsTypeDef] = None + FieldOptions: Optional[PivotTableFieldOptionsTypeDef] = None + PaginatedReportOptions: Optional[PivotTablePaginatedReportOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class RadarChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[RadarChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[RadarChartSortConfigurationOutputTypeDef] = None + Shape: Optional[RadarChartShapeType] = None + BaseSeriesSettings: Optional[RadarChartSeriesSettingsTypeDef] = None + StartAngle: Optional[float] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + AlternateBandColorsVisibility: Optional[VisibilityType] = None + AlternateBandEvenColor: Optional[str] = None + AlternateBandOddColor: Optional[str] = None + CategoryAxis: Optional[AxisDisplayOptionsOutputTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ColorAxis: Optional[AxisDisplayOptionsOutputTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + AxesRangeScale: Optional[RadarChartAxesRangeScaleType] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class RadarChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[RadarChartFieldWellsTypeDef] = None + SortConfiguration: Optional[RadarChartSortConfigurationTypeDef] = None + Shape: Optional[RadarChartShapeType] = None + BaseSeriesSettings: Optional[RadarChartSeriesSettingsTypeDef] = None + StartAngle: Optional[float] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + AlternateBandColorsVisibility: Optional[VisibilityType] = None + AlternateBandEvenColor: Optional[str] = None + AlternateBandOddColor: Optional[str] = None + CategoryAxis: Optional[AxisDisplayOptionsTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ColorAxis: Optional[AxisDisplayOptionsTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + AxesRangeScale: Optional[RadarChartAxesRangeScaleType] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class SankeyDiagramChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[SankeyDiagramFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[SankeyDiagramSortConfigurationOutputTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class SankeyDiagramChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[SankeyDiagramFieldWellsTypeDef] = None + SortConfiguration: Optional[SankeyDiagramSortConfigurationTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class ScatterPlotConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[ScatterPlotFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[ScatterPlotSortConfigurationTypeDef] = None + XAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + XAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + YAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + YAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class ScatterPlotConfigurationTypeDef(BaseModel): + FieldWells: Optional[ScatterPlotFieldWellsTypeDef] = None + SortConfiguration: Optional[ScatterPlotSortConfigurationTypeDef] = None + XAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + XAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + YAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + YAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class InsightConfigurationOutputTypeDef(BaseModel): + Computations: Optional[List[ComputationTypeDef]] = None + CustomNarrative: Optional[CustomNarrativeOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class InsightConfigurationTypeDef(BaseModel): + Computations: Optional[Sequence[ComputationTypeDef]] = None + CustomNarrative: Optional[CustomNarrativeOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class TreeMapConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[TreeMapFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[TreeMapSortConfigurationOutputTypeDef] = None + GroupLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + SizeLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + ColorScale: Optional[ColorScaleOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + Tooltip: Optional[TooltipOptionsOutputTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class TreeMapConfigurationTypeDef(BaseModel): + FieldWells: Optional[TreeMapFieldWellsTypeDef] = None + SortConfiguration: Optional[TreeMapSortConfigurationTypeDef] = None + GroupLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + SizeLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ColorLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + ColorScale: Optional[ColorScaleTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + Tooltip: Optional[TooltipOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class WaterfallChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[WaterfallChartFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[WaterfallChartSortConfigurationOutputTypeDef] = None + WaterfallChartOptions: Optional[WaterfallChartOptionsTypeDef] = None + CategoryAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + CategoryAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[AxisDisplayOptionsOutputTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsOutputTypeDef] = None + VisualPalette: Optional[VisualPaletteOutputTypeDef] = None + ColorConfiguration: Optional[WaterfallChartColorConfigurationTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class WaterfallChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[WaterfallChartFieldWellsTypeDef] = None + SortConfiguration: Optional[WaterfallChartSortConfigurationTypeDef] = None + WaterfallChartOptions: Optional[WaterfallChartOptionsTypeDef] = None + CategoryAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + CategoryAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + PrimaryYAxisLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + PrimaryYAxisDisplayOptions: Optional[AxisDisplayOptionsTypeDef] = None + Legend: Optional[LegendOptionsTypeDef] = None + DataLabels: Optional[DataLabelOptionsTypeDef] = None + VisualPalette: Optional[VisualPaletteTypeDef] = None + ColorConfiguration: Optional[WaterfallChartColorConfigurationTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class WordCloudChartConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[WordCloudFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[WordCloudSortConfigurationOutputTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsOutputTypeDef] = None + WordCloudOptions: Optional[WordCloudOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class WordCloudChartConfigurationTypeDef(BaseModel): + FieldWells: Optional[WordCloudFieldWellsTypeDef] = None + SortConfiguration: Optional[WordCloudSortConfigurationTypeDef] = None + CategoryLabelOptions: Optional[ChartAxisLabelOptionsTypeDef] = None + WordCloudOptions: Optional[WordCloudOptionsTypeDef] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class TableConfigurationOutputTypeDef(BaseModel): + FieldWells: Optional[TableFieldWellsOutputTypeDef] = None + SortConfiguration: Optional[TableSortConfigurationOutputTypeDef] = None + TableOptions: Optional[TableOptionsOutputTypeDef] = None + TotalOptions: Optional[TotalOptionsOutputTypeDef] = None + FieldOptions: Optional[TableFieldOptionsOutputTypeDef] = None + PaginatedReportOptions: Optional[TablePaginatedReportOptionsTypeDef] = None + TableInlineVisualizations: Optional[List[TableInlineVisualizationTypeDef]] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class TableConfigurationTypeDef(BaseModel): + FieldWells: Optional[TableFieldWellsTypeDef] = None + SortConfiguration: Optional[TableSortConfigurationTypeDef] = None + TableOptions: Optional[TableOptionsTypeDef] = None + TotalOptions: Optional[TotalOptionsTypeDef] = None + FieldOptions: Optional[TableFieldOptionsTypeDef] = None + PaginatedReportOptions: Optional[TablePaginatedReportOptionsTypeDef] = None + TableInlineVisualizations: Optional[Sequence[TableInlineVisualizationTypeDef]] = None + Interactions: Optional[VisualInteractionOptionsTypeDef] = None + +class LayoutConfigurationOutputTypeDef(BaseModel): + GridLayout: Optional[GridLayoutConfigurationOutputTypeDef] = None + FreeFormLayout: Optional[FreeFormLayoutConfigurationOutputTypeDef] = None + SectionBasedLayout: Optional[SectionBasedLayoutConfigurationOutputTypeDef] = None + +class LayoutConfigurationTypeDef(BaseModel): + GridLayout: Optional[GridLayoutConfigurationTypeDef] = None + FreeFormLayout: Optional[FreeFormLayoutConfigurationTypeDef] = None + SectionBasedLayout: Optional[SectionBasedLayoutConfigurationTypeDef] = None + +class FilterOutputTypeDef(BaseModel): + CategoryFilter: Optional[CategoryFilterOutputTypeDef] = None + NumericRangeFilter: Optional[NumericRangeFilterOutputTypeDef] = None + NumericEqualityFilter: Optional[NumericEqualityFilterOutputTypeDef] = None + TimeEqualityFilter: Optional[TimeEqualityFilterOutputTypeDef] = None + TimeRangeFilter: Optional[TimeRangeFilterOutputTypeDef] = None + RelativeDatesFilter: Optional[RelativeDatesFilterOutputTypeDef] = None + TopBottomFilter: Optional[TopBottomFilterOutputTypeDef] = None + NestedFilter: Optional[NestedFilterOutputTypeDef] = None + +class FilterTypeDef(BaseModel): + CategoryFilter: Optional[CategoryFilterTypeDef] = None + NumericRangeFilter: Optional[NumericRangeFilterTypeDef] = None + NumericEqualityFilter: Optional[NumericEqualityFilterTypeDef] = None + TimeEqualityFilter: Optional[TimeEqualityFilterTypeDef] = None + TimeRangeFilter: Optional[TimeRangeFilterTypeDef] = None + RelativeDatesFilter: Optional[RelativeDatesFilterTypeDef] = None + TopBottomFilter: Optional[TopBottomFilterTypeDef] = None + NestedFilter: Optional[NestedFilterTypeDef] = None + +class BarChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[BarChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class BarChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[BarChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class BoxPlotVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[BoxPlotChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class BoxPlotVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[BoxPlotChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class ComboChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[ComboChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class ComboChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[ComboChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class FilledMapVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[FilledMapConfigurationOutputTypeDef] = None + ConditionalFormatting: Optional[FilledMapConditionalFormattingOutputTypeDef] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class FilledMapVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[FilledMapConfigurationTypeDef] = None + ConditionalFormatting: Optional[FilledMapConditionalFormattingTypeDef] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class FunnelChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[FunnelChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class FunnelChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[FunnelChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class GeospatialMapVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[GeospatialMapConfigurationOutputTypeDef] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class GeospatialMapVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[GeospatialMapConfigurationTypeDef] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class HeatMapVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[HeatMapConfigurationOutputTypeDef] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class HeatMapVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[HeatMapConfigurationTypeDef] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class HistogramVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[HistogramConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class HistogramVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[HistogramConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class LineChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[LineChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class LineChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[LineChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class PieChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[PieChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class PieChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[PieChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class PivotTableVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[PivotTableConfigurationOutputTypeDef] = None + ConditionalFormatting: Optional[PivotTableConditionalFormattingOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class PivotTableVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[PivotTableConfigurationTypeDef] = None + ConditionalFormatting: Optional[PivotTableConditionalFormattingTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class RadarChartVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[RadarChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class RadarChartVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[RadarChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class SankeyDiagramVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[SankeyDiagramChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class SankeyDiagramVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[SankeyDiagramChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class ScatterPlotVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[ScatterPlotConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class ScatterPlotVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[ScatterPlotConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class InsightVisualOutputTypeDef(BaseModel): + VisualId: str + DataSetIdentifier: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + InsightConfiguration: Optional[InsightConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class InsightVisualTypeDef(BaseModel): + VisualId: str + DataSetIdentifier: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + InsightConfiguration: Optional[InsightConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class TreeMapVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[TreeMapConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class TreeMapVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[TreeMapConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class WaterfallVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[WaterfallChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class WaterfallVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[WaterfallChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class WordCloudVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[WordCloudChartConfigurationOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + ColumnHierarchies: Optional[List[ColumnHierarchyOutputTypeDef]] = None + +class WordCloudVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[WordCloudChartConfigurationTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + ColumnHierarchies: Optional[Sequence[ColumnHierarchyTypeDef]] = None + +class TableVisualOutputTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[TableConfigurationOutputTypeDef] = None + ConditionalFormatting: Optional[TableConditionalFormattingOutputTypeDef] = None + Actions: Optional[List[VisualCustomActionOutputTypeDef]] = None + +class TableVisualTypeDef(BaseModel): + VisualId: str + Title: Optional[VisualTitleLabelOptionsTypeDef] = None + Subtitle: Optional[VisualSubtitleLabelOptionsTypeDef] = None + ChartConfiguration: Optional[TableConfigurationTypeDef] = None + ConditionalFormatting: Optional[TableConditionalFormattingTypeDef] = None + Actions: Optional[Sequence[VisualCustomActionTypeDef]] = None + +class LayoutOutputTypeDef(BaseModel): + Configuration: LayoutConfigurationOutputTypeDef + +class LayoutTypeDef(BaseModel): + Configuration: LayoutConfigurationTypeDef + +class FilterGroupOutputTypeDef(BaseModel): + FilterGroupId: str + Filters: List[FilterOutputTypeDef] + ScopeConfiguration: FilterScopeConfigurationOutputTypeDef + CrossDataset: CrossDatasetTypesType + Status: Optional[WidgetStatusType] = None + +class FilterGroupTypeDef(BaseModel): + FilterGroupId: str + Filters: Sequence[FilterTypeDef] + ScopeConfiguration: FilterScopeConfigurationTypeDef + CrossDataset: CrossDatasetTypesType + Status: Optional[WidgetStatusType] = None + +class VisualOutputTypeDef(BaseModel): + TableVisual: Optional[TableVisualOutputTypeDef] = None + PivotTableVisual: Optional[PivotTableVisualOutputTypeDef] = None + BarChartVisual: Optional[BarChartVisualOutputTypeDef] = None + KPIVisual: Optional[KPIVisualOutputTypeDef] = None + PieChartVisual: Optional[PieChartVisualOutputTypeDef] = None + GaugeChartVisual: Optional[GaugeChartVisualOutputTypeDef] = None + LineChartVisual: Optional[LineChartVisualOutputTypeDef] = None + HeatMapVisual: Optional[HeatMapVisualOutputTypeDef] = None + TreeMapVisual: Optional[TreeMapVisualOutputTypeDef] = None + GeospatialMapVisual: Optional[GeospatialMapVisualOutputTypeDef] = None + FilledMapVisual: Optional[FilledMapVisualOutputTypeDef] = None + FunnelChartVisual: Optional[FunnelChartVisualOutputTypeDef] = None + ScatterPlotVisual: Optional[ScatterPlotVisualOutputTypeDef] = None + ComboChartVisual: Optional[ComboChartVisualOutputTypeDef] = None + BoxPlotVisual: Optional[BoxPlotVisualOutputTypeDef] = None + WaterfallVisual: Optional[WaterfallVisualOutputTypeDef] = None + HistogramVisual: Optional[HistogramVisualOutputTypeDef] = None + WordCloudVisual: Optional[WordCloudVisualOutputTypeDef] = None + InsightVisual: Optional[InsightVisualOutputTypeDef] = None + SankeyDiagramVisual: Optional[SankeyDiagramVisualOutputTypeDef] = None + CustomContentVisual: Optional[CustomContentVisualOutputTypeDef] = None + EmptyVisual: Optional[EmptyVisualOutputTypeDef] = None + RadarChartVisual: Optional[RadarChartVisualOutputTypeDef] = None + +class VisualTypeDef(BaseModel): + TableVisual: Optional[TableVisualTypeDef] = None + PivotTableVisual: Optional[PivotTableVisualTypeDef] = None + BarChartVisual: Optional[BarChartVisualTypeDef] = None + KPIVisual: Optional[KPIVisualTypeDef] = None + PieChartVisual: Optional[PieChartVisualTypeDef] = None + GaugeChartVisual: Optional[GaugeChartVisualTypeDef] = None + LineChartVisual: Optional[LineChartVisualTypeDef] = None + HeatMapVisual: Optional[HeatMapVisualTypeDef] = None + TreeMapVisual: Optional[TreeMapVisualTypeDef] = None + GeospatialMapVisual: Optional[GeospatialMapVisualTypeDef] = None + FilledMapVisual: Optional[FilledMapVisualTypeDef] = None + FunnelChartVisual: Optional[FunnelChartVisualTypeDef] = None + ScatterPlotVisual: Optional[ScatterPlotVisualTypeDef] = None + ComboChartVisual: Optional[ComboChartVisualTypeDef] = None + BoxPlotVisual: Optional[BoxPlotVisualTypeDef] = None + WaterfallVisual: Optional[WaterfallVisualTypeDef] = None + HistogramVisual: Optional[HistogramVisualTypeDef] = None + WordCloudVisual: Optional[WordCloudVisualTypeDef] = None + InsightVisual: Optional[InsightVisualTypeDef] = None + SankeyDiagramVisual: Optional[SankeyDiagramVisualTypeDef] = None + CustomContentVisual: Optional[CustomContentVisualTypeDef] = None + EmptyVisual: Optional[EmptyVisualTypeDef] = None + RadarChartVisual: Optional[RadarChartVisualTypeDef] = None + +class SheetDefinitionOutputTypeDef(BaseModel): + SheetId: str + Title: Optional[str] = None + Description: Optional[str] = None + Name: Optional[str] = None + ParameterControls: Optional[List[ParameterControlOutputTypeDef]] = None + FilterControls: Optional[List[FilterControlOutputTypeDef]] = None + Visuals: Optional[List[VisualOutputTypeDef]] = None + TextBoxes: Optional[List[SheetTextBoxTypeDef]] = None + Layouts: Optional[List[LayoutOutputTypeDef]] = None + SheetControlLayouts: Optional[List[SheetControlLayoutOutputTypeDef]] = None + ContentType: Optional[SheetContentTypeType] = None + +class SheetDefinitionTypeDef(BaseModel): + SheetId: str + Title: Optional[str] = None + Description: Optional[str] = None + Name: Optional[str] = None + ParameterControls: Optional[Sequence[ParameterControlTypeDef]] = None + FilterControls: Optional[Sequence[FilterControlTypeDef]] = None + Visuals: Optional[Sequence[VisualTypeDef]] = None + TextBoxes: Optional[Sequence[SheetTextBoxTypeDef]] = None + Layouts: Optional[Sequence[LayoutTypeDef]] = None + SheetControlLayouts: Optional[Sequence[SheetControlLayoutTypeDef]] = None + ContentType: Optional[SheetContentTypeType] = None + +class AnalysisDefinitionOutputTypeDef(BaseModel): + DataSetIdentifierDeclarations: List[DataSetIdentifierDeclarationTypeDef] + Sheets: Optional[List[SheetDefinitionOutputTypeDef]] = None + CalculatedFields: Optional[List[CalculatedFieldTypeDef]] = None + ParameterDeclarations: Optional[List[ParameterDeclarationOutputTypeDef]] = None + FilterGroups: Optional[List[FilterGroupOutputTypeDef]] = None + ColumnConfigurations: Optional[List[ColumnConfigurationOutputTypeDef]] = None + AnalysisDefaults: Optional[AnalysisDefaultsTypeDef] = None + Options: Optional[AssetOptionsTypeDef] = None + +class DashboardVersionDefinitionOutputTypeDef(BaseModel): + DataSetIdentifierDeclarations: List[DataSetIdentifierDeclarationTypeDef] + Sheets: Optional[List[SheetDefinitionOutputTypeDef]] = None + CalculatedFields: Optional[List[CalculatedFieldTypeDef]] = None + ParameterDeclarations: Optional[List[ParameterDeclarationOutputTypeDef]] = None + FilterGroups: Optional[List[FilterGroupOutputTypeDef]] = None + ColumnConfigurations: Optional[List[ColumnConfigurationOutputTypeDef]] = None + AnalysisDefaults: Optional[AnalysisDefaultsTypeDef] = None + Options: Optional[AssetOptionsTypeDef] = None + +class TemplateVersionDefinitionOutputTypeDef(BaseModel): + DataSetConfigurations: List[DataSetConfigurationOutputTypeDef] + Sheets: Optional[List[SheetDefinitionOutputTypeDef]] = None + CalculatedFields: Optional[List[CalculatedFieldTypeDef]] = None + ParameterDeclarations: Optional[List[ParameterDeclarationOutputTypeDef]] = None + FilterGroups: Optional[List[FilterGroupOutputTypeDef]] = None + ColumnConfigurations: Optional[List[ColumnConfigurationOutputTypeDef]] = None + AnalysisDefaults: Optional[AnalysisDefaultsTypeDef] = None + Options: Optional[AssetOptionsTypeDef] = None + +class AnalysisDefinitionTypeDef(BaseModel): + DataSetIdentifierDeclarations: Sequence[DataSetIdentifierDeclarationTypeDef] + Sheets: Optional[Sequence[SheetDefinitionTypeDef]] = None + CalculatedFields: Optional[Sequence[CalculatedFieldTypeDef]] = None + ParameterDeclarations: Optional[Sequence[ParameterDeclarationTypeDef]] = None + FilterGroups: Optional[Sequence[FilterGroupTypeDef]] = None + ColumnConfigurations: Optional[Sequence[ColumnConfigurationTypeDef]] = None + AnalysisDefaults: Optional[AnalysisDefaultsTypeDef] = None + Options: Optional[AssetOptionsTypeDef] = None + +class DashboardVersionDefinitionTypeDef(BaseModel): + DataSetIdentifierDeclarations: Sequence[DataSetIdentifierDeclarationTypeDef] + Sheets: Optional[Sequence[SheetDefinitionTypeDef]] = None + CalculatedFields: Optional[Sequence[CalculatedFieldTypeDef]] = None + ParameterDeclarations: Optional[Sequence[ParameterDeclarationTypeDef]] = None + FilterGroups: Optional[Sequence[FilterGroupTypeDef]] = None + ColumnConfigurations: Optional[Sequence[ColumnConfigurationTypeDef]] = None + AnalysisDefaults: Optional[AnalysisDefaultsTypeDef] = None + Options: Optional[AssetOptionsTypeDef] = None + +class TemplateVersionDefinitionTypeDef(BaseModel): + DataSetConfigurations: Sequence[DataSetConfigurationTypeDef] + Sheets: Optional[Sequence[SheetDefinitionTypeDef]] = None + CalculatedFields: Optional[Sequence[CalculatedFieldTypeDef]] = None + ParameterDeclarations: Optional[Sequence[ParameterDeclarationTypeDef]] = None + FilterGroups: Optional[Sequence[FilterGroupTypeDef]] = None + ColumnConfigurations: Optional[Sequence[ColumnConfigurationTypeDef]] = None + AnalysisDefaults: Optional[AnalysisDefaultsTypeDef] = None + Options: Optional[AssetOptionsTypeDef] = None + +class DescribeAnalysisDefinitionResponseTypeDef(BaseModel): + AnalysisId: str + Name: str + Errors: List[AnalysisErrorTypeDef] + ResourceStatus: ResourceStatusType + ThemeArn: str + Definition: AnalysisDefinitionOutputTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDashboardDefinitionResponseTypeDef(BaseModel): + DashboardId: str + Errors: List[DashboardErrorTypeDef] + Name: str + ResourceStatus: ResourceStatusType + ThemeArn: str + Definition: DashboardVersionDefinitionOutputTypeDef + Status: int + RequestId: str + DashboardPublishOptions: DashboardPublishOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTemplateDefinitionResponseTypeDef(BaseModel): + Name: str + TemplateId: str + Errors: List[TemplateErrorTypeDef] + ResourceStatus: ResourceStatusType + ThemeArn: str + Definition: TemplateVersionDefinitionOutputTypeDef + Status: int + RequestId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAnalysisRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + Name: str + Parameters: Optional[ParametersTypeDef] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + SourceEntity: Optional[AnalysisSourceEntityTypeDef] = None + ThemeArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Definition: Optional[AnalysisDefinitionTypeDef] = None + ValidationStrategy: Optional[ValidationStrategyTypeDef] = None + FolderArns: Optional[Sequence[str]] = None + +class UpdateAnalysisRequestRequestTypeDef(BaseModel): + AwsAccountId: str + AnalysisId: str + Name: str + Parameters: Optional[ParametersTypeDef] = None + SourceEntity: Optional[AnalysisSourceEntityTypeDef] = None + ThemeArn: Optional[str] = None + Definition: Optional[AnalysisDefinitionTypeDef] = None + ValidationStrategy: Optional[ValidationStrategyTypeDef] = None + +class CreateDashboardRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + Name: str + Parameters: Optional[ParametersTypeDef] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + SourceEntity: Optional[DashboardSourceEntityTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + VersionDescription: Optional[str] = None + DashboardPublishOptions: Optional[DashboardPublishOptionsTypeDef] = None + ThemeArn: Optional[str] = None + Definition: Optional[DashboardVersionDefinitionTypeDef] = None + ValidationStrategy: Optional[ValidationStrategyTypeDef] = None + FolderArns: Optional[Sequence[str]] = None + LinkSharingConfiguration: Optional[LinkSharingConfigurationTypeDef] = None + LinkEntities: Optional[Sequence[str]] = None + +class UpdateDashboardRequestRequestTypeDef(BaseModel): + AwsAccountId: str + DashboardId: str + Name: str + SourceEntity: Optional[DashboardSourceEntityTypeDef] = None + Parameters: Optional[ParametersTypeDef] = None + VersionDescription: Optional[str] = None + DashboardPublishOptions: Optional[DashboardPublishOptionsTypeDef] = None + ThemeArn: Optional[str] = None + Definition: Optional[DashboardVersionDefinitionTypeDef] = None + ValidationStrategy: Optional[ValidationStrategyTypeDef] = None + +class CreateTemplateRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + Name: Optional[str] = None + Permissions: Optional[Sequence[ResourcePermissionUnionTypeDef]] = None + SourceEntity: Optional[TemplateSourceEntityTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + VersionDescription: Optional[str] = None + Definition: Optional[TemplateVersionDefinitionTypeDef] = None + ValidationStrategy: Optional[ValidationStrategyTypeDef] = None + +class UpdateTemplateRequestRequestTypeDef(BaseModel): + AwsAccountId: str + TemplateId: str + SourceEntity: Optional[TemplateSourceEntityTypeDef] = None + VersionDescription: Optional[str] = None + Name: Optional[str] = None + Definition: Optional[TemplateVersionDefinitionTypeDef] = None + ValidationStrategy: Optional[ValidationStrategyTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/quicksight_constants.py b/aws_resource_validator/pydantic_models/quicksight_constants.py new file mode 100644 index 00000000..64f43816 --- /dev/null +++ b/aws_resource_validator/pydantic_models/quicksight_constants.py @@ -0,0 +1,1000 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnalysisErrorTypeType = Literal["ACCESS_DENIED", + "COLUMN_GEOGRAPHIC_ROLE_MISMATCH", + "COLUMN_REPLACEMENT_MISSING", + "COLUMN_TYPE_MISMATCH", + "DATA_SET_NOT_FOUND", + "INTERNAL_FAILURE", + "PARAMETER_NOT_FOUND", + "PARAMETER_TYPE_INVALID", + "PARAMETER_VALUE_INCOMPATIBLE", + "SOURCE_NOT_FOUND",] +AnalysisFilterAttributeType = Literal["ANALYSIS_NAME", + "DIRECT_QUICKSIGHT_OWNER", + "DIRECT_QUICKSIGHT_SOLE_OWNER", + "DIRECT_QUICKSIGHT_VIEWER_OR_OWNER", + "QUICKSIGHT_OWNER", + "QUICKSIGHT_USER", + "QUICKSIGHT_VIEWER_OR_OWNER",] +AnchorOptionType = Literal["NOW"] +ArcThicknessOptionsType = Literal["LARGE", "MEDIUM", "SMALL"] +ArcThicknessType = Literal["LARGE", "MEDIUM", "SMALL", "WHOLE"] +AssetBundleExportFormatType = Literal["CLOUDFORMATION_JSON", "QUICKSIGHT_JSON"] +AssetBundleExportJobAnalysisPropertyToOverrideType = Literal["Name"] +AssetBundleExportJobDashboardPropertyToOverrideType = Literal["Name"] +AssetBundleExportJobDataSetPropertyToOverrideType = Literal["Name"] +AssetBundleExportJobDataSourcePropertyToOverrideType = Literal["Catalog", + "ClusterId", + "DataSetName", + "Database", + "DisableSsl", + "Domain", + "Host", + "InstanceId", + "ManifestFileLocation", + "Name", + "Password", + "Port", + "ProductType", + "RoleArn", + "SecretArn", + "Username", + "Warehouse", + "WorkGroup",] +AssetBundleExportJobRefreshSchedulePropertyToOverrideType = Literal["StartAfterDateTime"] +AssetBundleExportJobStatusType = Literal["FAILED", "IN_PROGRESS", "QUEUED_FOR_IMMEDIATE_EXECUTION", "SUCCESSFUL"] +AssetBundleExportJobThemePropertyToOverrideType = Literal["Name"] +AssetBundleExportJobVPCConnectionPropertyToOverrideType = Literal["DnsResolvers", "Name", "RoleArn"] +AssetBundleImportFailureActionType = Literal["DO_NOTHING", "ROLLBACK"] +AssetBundleImportJobStatusType = Literal["FAILED", + "FAILED_ROLLBACK_COMPLETED", + "FAILED_ROLLBACK_ERROR", + "FAILED_ROLLBACK_IN_PROGRESS", + "IN_PROGRESS", + "QUEUED_FOR_IMMEDIATE_EXECUTION", + "SUCCESSFUL",] +AssignmentStatusType = Literal["DISABLED", "DRAFT", "ENABLED"] +AuthenticationMethodOptionType = Literal["ACTIVE_DIRECTORY", "IAM_AND_QUICKSIGHT", "IAM_IDENTITY_CENTER", "IAM_ONLY"] +AuthorSpecifiedAggregationType = Literal["AVERAGE", + "COUNT", + "DISTINCT_COUNT", + "MAX", + "MEDIAN", + "MIN", + "PERCENTILE", + "STDEV", + "STDEVP", + "SUM", + "VAR", + "VARP",] +AxisBindingType = Literal["PRIMARY_YAXIS", "SECONDARY_YAXIS"] +BarChartOrientationType = Literal["HORIZONTAL", "VERTICAL"] +BarsArrangementType = Literal["CLUSTERED", "STACKED", "STACKED_PERCENT"] +BaseMapStyleTypeType = Literal["DARK_GRAY", "IMAGERY", "LIGHT_GRAY", "STREET"] +BoxPlotFillStyleType = Literal["SOLID", "TRANSPARENT"] +CategoricalAggregationFunctionType = Literal["COUNT", "DISTINCT_COUNT"] +CategoryFilterFunctionType = Literal["CONTAINS", "EXACT"] +CategoryFilterMatchOperatorType = Literal["CONTAINS", "DOES_NOT_CONTAIN", "DOES_NOT_EQUAL", "ENDS_WITH", "EQUALS", "STARTS_WITH"] +CategoryFilterSelectAllOptionsType = Literal["FILTER_ALL_VALUES"] +CategoryFilterTypeType = Literal["CUSTOM_FILTER", "CUSTOM_FILTER_LIST", "FILTER_LIST"] +ColorFillTypeType = Literal["DISCRETE", "GRADIENT"] +ColumnDataRoleType = Literal["DIMENSION", "MEASURE"] +ColumnDataSubTypeType = Literal["FIXED", "FLOAT"] +ColumnDataTypeType = Literal["DATETIME", "DECIMAL", "INTEGER", "STRING"] +ColumnOrderingTypeType = Literal["GREATER_IS_BETTER", "LESSER_IS_BETTER", "SPECIFIED"] +ColumnRoleType = Literal["DIMENSION", "MEASURE"] +ColumnTagNameType = Literal["COLUMN_DESCRIPTION", "COLUMN_GEOGRAPHIC_ROLE"] +ComparisonMethodType = Literal["DIFFERENCE", "PERCENT", "PERCENT_DIFFERENCE"] +ConditionalFormattingIconDisplayOptionType = Literal["ICON_ONLY"] +ConditionalFormattingIconSetTypeType = Literal["BARS", + "CARET_UP_MINUS_DOWN", + "CHECK_X", + "FLAGS", + "FOUR_COLOR_ARROW", + "FOUR_GRAY_ARROW", + "PLUS_MINUS", + "THREE_CIRCLE", + "THREE_COLOR_ARROW", + "THREE_GRAY_ARROW", + "THREE_SHAPE",] +ConstantTypeType = Literal["COLLECTIVE", "RANGE", "SINGULAR"] +CrossDatasetTypesType = Literal["ALL_DATASETS", "SINGLE_DATASET"] +CustomContentImageScalingConfigurationType = Literal["DO_NOT_SCALE", "FIT_TO_HEIGHT", "FIT_TO_WIDTH", "SCALE_TO_VISUAL"] +CustomContentTypeType = Literal["IMAGE", "OTHER_EMBEDDED_CONTENT"] +DashboardBehaviorType = Literal["DISABLED", "ENABLED"] +DashboardErrorTypeType = Literal["ACCESS_DENIED", + "COLUMN_GEOGRAPHIC_ROLE_MISMATCH", + "COLUMN_REPLACEMENT_MISSING", + "COLUMN_TYPE_MISMATCH", + "DATA_SET_NOT_FOUND", + "INTERNAL_FAILURE", + "PARAMETER_NOT_FOUND", + "PARAMETER_TYPE_INVALID", + "PARAMETER_VALUE_INCOMPATIBLE", + "SOURCE_NOT_FOUND",] +DashboardFilterAttributeType = Literal["DASHBOARD_NAME", + "DIRECT_QUICKSIGHT_OWNER", + "DIRECT_QUICKSIGHT_SOLE_OWNER", + "DIRECT_QUICKSIGHT_VIEWER_OR_OWNER", + "QUICKSIGHT_OWNER", + "QUICKSIGHT_USER", + "QUICKSIGHT_VIEWER_OR_OWNER",] +DashboardUIStateType = Literal["COLLAPSED", "EXPANDED"] +DataLabelContentType = Literal["PERCENT", "VALUE", "VALUE_AND_PERCENT"] +DataLabelOverlapType = Literal["DISABLE_OVERLAP", "ENABLE_OVERLAP"] +DataLabelPositionType = Literal["BOTTOM", "INSIDE", "LEFT", "OUTSIDE", "RIGHT", "TOP"] +DataSetFilterAttributeType = Literal["DATASET_NAME", + "DIRECT_QUICKSIGHT_OWNER", + "DIRECT_QUICKSIGHT_SOLE_OWNER", + "DIRECT_QUICKSIGHT_VIEWER_OR_OWNER", + "QUICKSIGHT_OWNER", + "QUICKSIGHT_VIEWER_OR_OWNER",] +DataSetImportModeType = Literal["DIRECT_QUERY", "SPICE"] +DataSourceErrorInfoTypeType = Literal["ACCESS_DENIED", + "CONFLICT", + "COPY_SOURCE_NOT_FOUND", + "ENGINE_VERSION_NOT_SUPPORTED", + "GENERIC_SQL_FAILURE", + "TIMEOUT", + "UNKNOWN", + "UNKNOWN_HOST",] +DataSourceFilterAttributeType = Literal["DATASOURCE_NAME", + "DIRECT_QUICKSIGHT_OWNER", + "DIRECT_QUICKSIGHT_SOLE_OWNER", + "DIRECT_QUICKSIGHT_VIEWER_OR_OWNER",] +DataSourceTypeType = Literal["ADOBE_ANALYTICS", + "AMAZON_ELASTICSEARCH", + "AMAZON_OPENSEARCH", + "ATHENA", + "AURORA", + "AURORA_POSTGRESQL", + "AWS_IOT_ANALYTICS", + "BIGQUERY", + "DATABRICKS", + "EXASOL", + "GITHUB", + "JIRA", + "MARIADB", + "MYSQL", + "ORACLE", + "POSTGRESQL", + "PRESTO", + "REDSHIFT", + "S3", + "SALESFORCE", + "SERVICENOW", + "SNOWFLAKE", + "SPARK", + "SQLSERVER", + "STARBURST", + "TERADATA", + "TIMESTREAM", + "TRINO", + "TWITTER",] +DatasetParameterValueTypeType = Literal["MULTI_VALUED", "SINGLE_VALUED"] +DateAggregationFunctionType = Literal["COUNT", "DISTINCT_COUNT", "MAX", "MIN"] +DayOfTheWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DayOfWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DefaultAggregationType = Literal["AVERAGE", + "COUNT", + "DISTINCT_COUNT", + "MAX", + "MEDIAN", + "MIN", + "STDEV", + "STDEVP", + "SUM", + "VAR", + "VARP",] +DescribeFolderPermissionsPaginatorName = Literal["describe_folder_permissions"] +DescribeFolderResolvedPermissionsPaginatorName = Literal["describe_folder_resolved_permissions"] +DisplayFormatType = Literal["AUTO", "CURRENCY", "DATE", "NUMBER", "PERCENT", "STRING"] +EditionType = Literal["ENTERPRISE", "ENTERPRISE_AND_Q", "STANDARD"] +EmbeddingIdentityTypeType = Literal["ANONYMOUS", "IAM", "QUICKSIGHT"] +FileFormatType = Literal["CLF", "CSV", "ELF", "JSON", "TSV", "XLSX"] +FilterClassType = Literal["CONDITIONAL_VALUE_FILTER", "ENFORCED_VALUE_FILTER", "NAMED_VALUE_FILTER"] +FilterNullOptionType = Literal["ALL_VALUES", "NON_NULLS_ONLY", "NULLS_ONLY"] +FilterOperatorType = Literal["StringEquals", "StringLike"] +FilterVisualScopeType = Literal["ALL_VISUALS", "SELECTED_VISUALS"] +FolderFilterAttributeType = Literal["DIRECT_QUICKSIGHT_OWNER", + "DIRECT_QUICKSIGHT_SOLE_OWNER", + "DIRECT_QUICKSIGHT_VIEWER_OR_OWNER", + "FOLDER_NAME", + "PARENT_FOLDER_ARN", + "QUICKSIGHT_OWNER", + "QUICKSIGHT_VIEWER_OR_OWNER",] +FolderTypeType = Literal["RESTRICTED", "SHARED"] +FontDecorationType = Literal["NONE", "UNDERLINE"] +FontStyleType = Literal["ITALIC", "NORMAL"] +FontWeightNameType = Literal["BOLD", "NORMAL"] +ForecastComputationSeasonalityType = Literal["AUTOMATIC", "CUSTOM"] +FunnelChartMeasureDataLabelStyleType = Literal["PERCENTAGE_BY_FIRST_STAGE", + "PERCENTAGE_BY_PREVIOUS_STAGE", + "VALUE_AND_PERCENTAGE_BY_FIRST_STAGE", + "VALUE_AND_PERCENTAGE_BY_PREVIOUS_STAGE", + "VALUE_ONLY",] +GeoSpatialCountryCodeType = Literal["US"] +GeoSpatialDataRoleType = Literal["CITY", "COUNTRY", "COUNTY", "LATITUDE", "LONGITUDE", "POSTCODE", "STATE"] +GeospatialSelectedPointStyleType = Literal["CLUSTER", "HEATMAP", "POINT"] +GroupFilterAttributeType = Literal["GROUP_NAME"] +GroupFilterOperatorType = Literal["StartsWith"] +HistogramBinTypeType = Literal["BIN_COUNT", "BIN_WIDTH"] +HorizontalTextAlignmentType = Literal["AUTO", "CENTER", "LEFT", "RIGHT"] +IconType = Literal["ARROW_DOWN", + "ARROW_DOWN_LEFT", + "ARROW_DOWN_RIGHT", + "ARROW_LEFT", + "ARROW_RIGHT", + "ARROW_UP", + "ARROW_UP_LEFT", + "ARROW_UP_RIGHT", + "CARET_DOWN", + "CARET_UP", + "CHECKMARK", + "CIRCLE", + "FACE_DOWN", + "FACE_FLAT", + "FACE_UP", + "FLAG", + "MINUS", + "ONE_BAR", + "PLUS", + "SQUARE", + "THREE_BAR", + "THUMBS_DOWN", + "THUMBS_UP", + "TRIANGLE", + "TWO_BAR", + "X",] +IdentityStoreType = Literal["QUICKSIGHT"] +IdentityTypeType = Literal["IAM", "IAM_IDENTITY_CENTER", "QUICKSIGHT"] +IngestionErrorTypeType = Literal["ACCOUNT_CAPACITY_LIMIT_EXCEEDED", + "CONNECTION_FAILURE", + "CURSOR_NOT_ENABLED", + "CUSTOMER_ERROR", + "DATA_SET_DELETED", + "DATA_SET_NOT_SPICE", + "DATA_SET_SIZE_LIMIT_EXCEEDED", + "DATA_SOURCE_AUTH_FAILED", + "DATA_SOURCE_CONNECTION_FAILED", + "DATA_SOURCE_NOT_FOUND", + "DATA_TOLERANCE_EXCEPTION", + "DUPLICATE_COLUMN_NAMES_FOUND", + "ELASTICSEARCH_CURSOR_NOT_ENABLED", + "FAILURE_TO_ASSUME_ROLE", + "FAILURE_TO_PROCESS_JSON_FILE", + "IAM_ROLE_NOT_AVAILABLE", + "INGESTION_CANCELED", + "INGESTION_SUPERSEDED", + "INTERNAL_SERVICE_ERROR", + "INVALID_DATAPREP_SYNTAX", + "INVALID_DATA_SOURCE_CONFIG", + "INVALID_DATE_FORMAT", + "IOT_DATA_SET_FILE_EMPTY", + "IOT_FILE_NOT_FOUND", + "OAUTH_TOKEN_FAILURE", + "PASSWORD_AUTHENTICATION_FAILURE", + "PERMISSION_DENIED", + "PERMISSION_NOT_FOUND", + "QUERY_TIMEOUT", + "REFRESH_SUPPRESSED_BY_EDIT", + "ROW_SIZE_LIMIT_EXCEEDED", + "S3_FILE_INACCESSIBLE", + "S3_MANIFEST_ERROR", + "S3_UPLOADED_FILE_DELETED", + "SOURCE_API_LIMIT_EXCEEDED_FAILURE", + "SOURCE_RESOURCE_LIMIT_EXCEEDED", + "SPICE_TABLE_NOT_FOUND", + "SQL_EXCEPTION", + "SQL_INVALID_PARAMETER_VALUE", + "SQL_NUMERIC_OVERFLOW", + "SQL_SCHEMA_MISMATCH_ERROR", + "SQL_TABLE_NOT_FOUND", + "SSL_CERTIFICATE_VALIDATION_FAILURE", + "UNRESOLVABLE_HOST", + "UNROUTABLE_HOST",] +IngestionRequestSourceType = Literal["MANUAL", "SCHEDULED"] +IngestionRequestTypeType = Literal["EDIT", "FULL_REFRESH", "INCREMENTAL_REFRESH", "INITIAL_INGESTION"] +IngestionStatusType = Literal["CANCELLED", "COMPLETED", "FAILED", "INITIALIZED", "QUEUED", "RUNNING"] +IngestionTypeType = Literal["FULL_REFRESH", "INCREMENTAL_REFRESH"] +InputColumnDataTypeType = Literal["BIT", "BOOLEAN", "DATETIME", "DECIMAL", "INTEGER", "JSON", "STRING"] +JoinTypeType = Literal["INNER", "LEFT", "OUTER", "RIGHT"] +KPISparklineTypeType = Literal["AREA", "LINE"] +KPIVisualStandardLayoutTypeType = Literal["CLASSIC", "VERTICAL"] +LayoutElementTypeType = Literal["FILTER_CONTROL", "PARAMETER_CONTROL", "TEXT_BOX", "VISUAL"] +LegendPositionType = Literal["AUTO", "BOTTOM", "RIGHT", "TOP"] +LineChartLineStyleType = Literal["DASHED", "DOTTED", "SOLID"] +LineChartMarkerShapeType = Literal["CIRCLE", "DIAMOND", "ROUNDED_SQUARE", "SQUARE", "TRIANGLE"] +LineChartTypeType = Literal["AREA", "LINE", "STACKED_AREA"] +LineInterpolationType = Literal["LINEAR", "SMOOTH", "STEPPED"] +ListAnalysesPaginatorName = Literal["list_analyses"] +ListAssetBundleExportJobsPaginatorName = Literal["list_asset_bundle_export_jobs"] +ListAssetBundleImportJobsPaginatorName = Literal["list_asset_bundle_import_jobs"] +ListDashboardVersionsPaginatorName = Literal["list_dashboard_versions"] +ListDashboardsPaginatorName = Literal["list_dashboards"] +ListDataSetsPaginatorName = Literal["list_data_sets"] +ListDataSourcesPaginatorName = Literal["list_data_sources"] +ListFolderMembersPaginatorName = Literal["list_folder_members"] +ListFoldersPaginatorName = Literal["list_folders"] +ListGroupMembershipsPaginatorName = Literal["list_group_memberships"] +ListGroupsPaginatorName = Literal["list_groups"] +ListIAMPolicyAssignmentsForUserPaginatorName = Literal["list_iam_policy_assignments_for_user"] +ListIAMPolicyAssignmentsPaginatorName = Literal["list_iam_policy_assignments"] +ListIngestionsPaginatorName = Literal["list_ingestions"] +ListNamespacesPaginatorName = Literal["list_namespaces"] +ListRoleMembershipsPaginatorName = Literal["list_role_memberships"] +ListTemplateAliasesPaginatorName = Literal["list_template_aliases"] +ListTemplateVersionsPaginatorName = Literal["list_template_versions"] +ListTemplatesPaginatorName = Literal["list_templates"] +ListThemeVersionsPaginatorName = Literal["list_theme_versions"] +ListThemesPaginatorName = Literal["list_themes"] +ListUserGroupsPaginatorName = Literal["list_user_groups"] +ListUsersPaginatorName = Literal["list_users"] +LookbackWindowSizeUnitType = Literal["DAY", "HOUR", "WEEK"] +MapZoomModeType = Literal["AUTO", "MANUAL"] +MaximumMinimumComputationTypeType = Literal["MAXIMUM", "MINIMUM"] +MemberTypeType = Literal["ANALYSIS", "DASHBOARD", "DATASET", "DATASOURCE", "TOPIC"] +MissingDataTreatmentOptionType = Literal["INTERPOLATE", "SHOW_AS_BLANK", "SHOW_AS_ZERO"] +NamedEntityAggTypeType = Literal["AVERAGE", + "COUNT", + "CUSTOM", + "DISTINCT_COUNT", + "MAX", + "MEDIAN", + "MIN", + "PERCENTILE", + "STDEV", + "STDEVP", + "SUM", + "VAR", + "VARP",] +NamedFilterAggTypeType = Literal["AVERAGE", + "COUNT", + "DISTINCT_COUNT", + "MAX", + "MEDIAN", + "MIN", + "NO_AGGREGATION", + "STDEV", + "STDEVP", + "SUM", + "VAR", + "VARP",] +NamedFilterTypeType = Literal["CATEGORY_FILTER", + "DATE_RANGE_FILTER", + "NUMERIC_EQUALITY_FILTER", + "NUMERIC_RANGE_FILTER", + "RELATIVE_DATE_FILTER",] +NamespaceErrorTypeType = Literal["INTERNAL_SERVICE_ERROR", "PERMISSION_DENIED"] +NamespaceStatusType = Literal["CREATED", "CREATING", "DELETING", "NON_RETRYABLE_FAILURE", "RETRYABLE_FAILURE"] +NegativeValueDisplayModeType = Literal["NEGATIVE", "POSITIVE"] +NetworkInterfaceStatusType = Literal["ATTACHMENT_FAILED_ROLLBACK_FAILED", + "AVAILABLE", + "CREATING", + "CREATION_FAILED", + "DELETED", + "DELETING", + "DELETION_FAILED", + "DELETION_SCHEDULED", + "UPDATE_FAILED", + "UPDATING",] +NumberScaleType = Literal["AUTO", "BILLIONS", "MILLIONS", "NONE", "THOUSANDS", "TRILLIONS"] +NumericEqualityMatchOperatorType = Literal["DOES_NOT_EQUAL", "EQUALS"] +NumericFilterSelectAllOptionsType = Literal["FILTER_ALL_VALUES"] +NumericSeparatorSymbolType = Literal["COMMA", "DOT", "SPACE"] +OtherCategoriesType = Literal["EXCLUDE", "INCLUDE"] +PanelBorderStyleType = Literal["DASHED", "DOTTED", "SOLID"] +PaperOrientationType = Literal["LANDSCAPE", "PORTRAIT"] +PaperSizeType = Literal["A0", + "A1", + "A2", + "A3", + "A4", + "A5", + "JIS_B4", + "JIS_B5", + "US_LEGAL", + "US_LETTER", + "US_TABLOID_LEDGER",] +ParameterValueTypeType = Literal["MULTI_VALUED", "SINGLE_VALUED"] +PivotTableConditionalFormattingScopeRoleType = Literal["FIELD", "FIELD_TOTAL", "GRAND_TOTAL"] +PivotTableDataPathTypeType = Literal["COUNT_METRIC_COLUMN", + "EMPTY_COLUMN_HEADER", + "HIERARCHY_ROWS_LAYOUT_COLUMN", + "MULTIPLE_ROW_METRICS_COLUMN",] +PivotTableFieldCollapseStateType = Literal["COLLAPSED", "EXPANDED"] +PivotTableMetricPlacementType = Literal["COLUMN", "ROW"] +PivotTableRowsLayoutType = Literal["HIERARCHY", "TABULAR"] +PivotTableSubtotalLevelType = Literal["ALL", "CUSTOM", "LAST"] +PrimaryValueDisplayTypeType = Literal["ACTUAL", "COMPARISON", "HIDDEN"] +PropertyRoleType = Literal["ID", "PRIMARY"] +PropertyUsageType = Literal["DIMENSION", "INHERIT", "MEASURE"] +PurchaseModeType = Literal["AUTO_PURCHASE", "MANUAL"] +RadarChartAxesRangeScaleType = Literal["AUTO", "INDEPENDENT", "SHARED"] +RadarChartShapeType = Literal["CIRCLE", "POLYGON"] +ReferenceLineLabelHorizontalPositionType = Literal["CENTER", "LEFT", "RIGHT"] +ReferenceLineLabelVerticalPositionType = Literal["ABOVE", "BELOW"] +ReferenceLinePatternTypeType = Literal["DASHED", "DOTTED", "SOLID"] +ReferenceLineSeriesTypeType = Literal["BAR", "LINE"] +ReferenceLineValueLabelRelativePositionType = Literal["AFTER_CUSTOM_LABEL", "BEFORE_CUSTOM_LABEL"] +RefreshIntervalType = Literal["DAILY", "HOURLY", "MINUTE15", "MINUTE30", "MONTHLY", "WEEKLY"] +RelativeDateTypeType = Literal["LAST", "NEXT", "NOW", "PREVIOUS", "THIS"] +RelativeFontSizeType = Literal["EXTRA_LARGE", "EXTRA_SMALL", "LARGE", "MEDIUM", "SMALL"] +ResizeOptionType = Literal["FIXED", "RESPONSIVE"] +ResourceStatusType = Literal["CREATION_FAILED", + "CREATION_IN_PROGRESS", + "CREATION_SUCCESSFUL", + "DELETED", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL",] +RoleType = Literal["ADMIN", "ADMIN_PRO", "AUTHOR", "AUTHOR_PRO", "READER", "READER_PRO"] +RowLevelPermissionFormatVersionType = Literal["VERSION_1", "VERSION_2"] +RowLevelPermissionPolicyType = Literal["DENY_ACCESS", "GRANT_ACCESS"] +SearchAnalysesPaginatorName = Literal["search_analyses"] +SearchDashboardsPaginatorName = Literal["search_dashboards"] +SearchDataSetsPaginatorName = Literal["search_data_sets"] +SearchDataSourcesPaginatorName = Literal["search_data_sources"] +SearchFoldersPaginatorName = Literal["search_folders"] +SearchGroupsPaginatorName = Literal["search_groups"] +SectionPageBreakStatusType = Literal["DISABLED", "ENABLED"] +SelectAllValueOptionsType = Literal["ALL_VALUES"] +SelectedFieldOptionsType = Literal["ALL_FIELDS"] +SelectedTooltipTypeType = Literal["BASIC", "DETAILED"] +ServiceTypeType = Literal["REDSHIFT"] +SharingModelType = Literal["ACCOUNT", "NAMESPACE"] +SheetContentTypeType = Literal["INTERACTIVE", "PAGINATED"] +SheetControlDateTimePickerTypeType = Literal["DATE_RANGE", "SINGLE_VALUED"] +SheetControlListTypeType = Literal["MULTI_SELECT", "SINGLE_SELECT"] +SheetControlSliderTypeType = Literal["RANGE", "SINGLE_POINT"] +SimpleAttributeAggregationFunctionType = Literal["UNIQUE_VALUE"] +SimpleNumericalAggregationFunctionType = Literal["AVERAGE", + "COUNT", + "DISTINCT_COUNT", + "MAX", + "MEDIAN", + "MIN", + "STDEV", + "STDEVP", + "SUM", + "VAR", + "VARP",] +SimpleTotalAggregationFunctionType = Literal["AVERAGE", "DEFAULT", "MAX", "MIN", "NONE", "SUM"] +SingleYAxisOptionType = Literal["PRIMARY_Y_AXIS"] +SmallMultiplesAxisPlacementType = Literal["INSIDE", "OUTSIDE"] +SmallMultiplesAxisScaleType = Literal["INDEPENDENT", "SHARED"] +SnapshotFileFormatTypeType = Literal["CSV", "EXCEL", "PDF"] +SnapshotFileSheetSelectionScopeType = Literal["ALL_VISUALS", "SELECTED_VISUALS"] +SnapshotJobStatusType = Literal["COMPLETED", "FAILED", "QUEUED", "RUNNING"] +SortDirectionType = Literal["ASC", "DESC"] +SpecialValueType = Literal["EMPTY", "NULL", "OTHER"] +StarburstProductTypeType = Literal["ENTERPRISE", "GALAXY"] +StatusType = Literal["DISABLED", "ENABLED"] +StyledCellTypeType = Literal["METRIC_HEADER", "TOTAL", "VALUE"] +TableBorderStyleType = Literal["NONE", "SOLID"] +TableCellImageScalingConfigurationType = Literal["DO_NOT_SCALE", "FIT_TO_CELL_HEIGHT", "FIT_TO_CELL_WIDTH"] +TableFieldIconSetTypeType = Literal["LINK"] +TableOrientationType = Literal["HORIZONTAL", "VERTICAL"] +TableTotalsPlacementType = Literal["AUTO", "END", "START"] +TableTotalsScrollStatusType = Literal["PINNED", "SCROLLED"] +TargetVisualOptionsType = Literal["ALL_VISUALS"] +TemplateErrorTypeType = Literal["ACCESS_DENIED", "DATA_SET_NOT_FOUND", "INTERNAL_FAILURE", "SOURCE_NOT_FOUND"] +TextQualifierType = Literal["DOUBLE_QUOTE", "SINGLE_QUOTE"] +TextWrapType = Literal["NONE", "WRAP"] +ThemeErrorTypeType = Literal["INTERNAL_FAILURE"] +ThemeTypeType = Literal["ALL", "CUSTOM", "QUICKSIGHT"] +TimeGranularityType = Literal["DAY", "HOUR", "MILLISECOND", "MINUTE", "MONTH", "QUARTER", "SECOND", "WEEK", "YEAR"] +TooltipTargetType = Literal["BAR", "BOTH", "LINE"] +TooltipTitleTypeType = Literal["NONE", "PRIMARY_VALUE"] +TopBottomComputationTypeType = Literal["BOTTOM", "TOP"] +TopBottomSortOrderType = Literal["ABSOLUTE_DIFFERENCE", "PERCENT_DIFFERENCE"] +TopicNumericSeparatorSymbolType = Literal["COMMA", "DOT"] +TopicRefreshStatusType = Literal["CANCELLED", "COMPLETED", "FAILED", "INITIALIZED", "RUNNING"] +TopicRelativeDateFilterFunctionType = Literal["LAST", "NEXT", "NOW", "PREVIOUS", "THIS"] +TopicScheduleTypeType = Literal["DAILY", "HOURLY", "MONTHLY", "WEEKLY"] +TopicTimeGranularityType = Literal["DAY", "HOUR", "MINUTE", "MONTH", "QUARTER", "SECOND", "WEEK", "YEAR"] +TopicUserExperienceVersionType = Literal["LEGACY", "NEW_READER_EXPERIENCE"] +URLTargetConfigurationType = Literal["NEW_TAB", "NEW_WINDOW", "SAME_TAB"] +UndefinedSpecifiedValueTypeType = Literal["LEAST", "MOST"] +UserRoleType = Literal["ADMIN", + "ADMIN_PRO", + "AUTHOR", + "AUTHOR_PRO", + "READER", + "READER_PRO", + "RESTRICTED_AUTHOR", + "RESTRICTED_READER",] +VPCConnectionAvailabilityStatusType = Literal["AVAILABLE", "PARTIALLY_AVAILABLE", "UNAVAILABLE"] +VPCConnectionResourceStatusType = Literal["CREATION_FAILED", + "CREATION_IN_PROGRESS", + "CREATION_SUCCESSFUL", + "DELETED", + "DELETION_FAILED", + "DELETION_IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL",] +ValidationStrategyModeType = Literal["LENIENT", "STRICT"] +ValueWhenUnsetOptionType = Literal["NULL", "RECOMMENDED_VALUE"] +VerticalTextAlignmentType = Literal["AUTO", "BOTTOM", "MIDDLE", "TOP"] +VisibilityType = Literal["HIDDEN", "VISIBLE"] +VisualCustomActionTriggerType = Literal["DATA_POINT_CLICK", "DATA_POINT_MENU"] +WidgetStatusType = Literal["DISABLED", "ENABLED"] +WordCloudCloudLayoutType = Literal["FLUID", "NORMAL"] +WordCloudWordCasingType = Literal["EXISTING_CASE", "LOWER_CASE"] +WordCloudWordOrientationType = Literal["HORIZONTAL", "HORIZONTAL_AND_VERTICAL"] +WordCloudWordPaddingType = Literal["LARGE", "MEDIUM", "NONE", "SMALL"] +WordCloudWordScalingType = Literal["EMPHASIZE", "NORMAL"] +QuickSightServiceName = Literal["quicksight"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_folder_permissions", + "describe_folder_resolved_permissions", + "list_analyses", + "list_asset_bundle_export_jobs", + "list_asset_bundle_import_jobs", + "list_dashboard_versions", + "list_dashboards", + "list_data_sets", + "list_data_sources", + "list_folder_members", + "list_folders", + "list_group_memberships", + "list_groups", + "list_iam_policy_assignments", + "list_iam_policy_assignments_for_user", + "list_ingestions", + "list_namespaces", + "list_role_memberships", + "list_template_aliases", + "list_template_versions", + "list_templates", + "list_theme_versions", + "list_themes", + "list_user_groups", + "list_users", + "search_analyses", + "search_dashboards", + "search_data_sets", + "search_data_sources", + "search_folders", + "search_groups",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any] +ColumnLevelPermissionRuleUnionTypeDef = Union[ 'ColumnLevelPermissionRuleTypeDef', 'ColumnLevelPermissionRuleOutputTypeDef' ] +FieldFolderUnionTypeDef = Union['FieldFolderTypeDef', 'FieldFolderOutputTypeDef'] +ResourcePermissionUnionTypeDef = Union[ 'ResourcePermissionTypeDef', 'ResourcePermissionExtraOutputTypeDef' ] +AssetBundleCloudFormationOverridePropertyConfigurationUnionTypeDef = Union[ 'AssetBundleCloudFormationOverridePropertyConfigurationTypeDef', 'AssetBundleCloudFormationOverridePropertyConfigurationOutputTypeDef', ] +TopicRefreshScheduleUnionTypeDef = Union[ 'TopicRefreshScheduleTypeDef', 'TopicRefreshScheduleOutputTypeDef' ] +ColumnGroupUnionTypeDef = Union['ColumnGroupTypeDef', 'ColumnGroupOutputTypeDef'] +LinkSharingConfigurationUnionTypeDef = Union[ 'LinkSharingConfigurationTypeDef', 'LinkSharingConfigurationOutputTypeDef' ] +RowLevelPermissionTagConfigurationUnionTypeDef = Union[ 'RowLevelPermissionTagConfigurationTypeDef', 'RowLevelPermissionTagConfigurationOutputTypeDef' ] +AssetBundleImportJobOverrideTagsUnionTypeDef = Union[ 'AssetBundleImportJobOverrideTagsTypeDef', 'AssetBundleImportJobOverrideTagsOutputTypeDef' ] +ParametersUnionTypeDef = Union['ParametersTypeDef', 'ParametersOutputTypeDef'] +DataSourceParametersUnionTypeDef = Union[ 'DataSourceParametersTypeDef', 'DataSourceParametersExtraOutputTypeDef' ] +RefreshScheduleUnionTypeDef = Union['RefreshScheduleTypeDef', 'RefreshScheduleOutputTypeDef'] +PhysicalTableUnionTypeDef = Union['PhysicalTableTypeDef', 'PhysicalTableOutputTypeDef'] +AssetBundleImportJobOverridePermissionsUnionTypeDef = Union[ 'AssetBundleImportJobOverridePermissionsTypeDef', 'AssetBundleImportJobOverridePermissionsOutputTypeDef', ] +DatasetParameterUnionTypeDef = Union['DatasetParameterTypeDef', 'DatasetParameterOutputTypeDef'] +ThemeConfigurationUnionTypeDef = Union['ThemeConfigurationTypeDef', 'ThemeConfigurationOutputTypeDef'] +SnapshotConfigurationUnionTypeDef = Union[ 'SnapshotConfigurationTypeDef', 'SnapshotConfigurationOutputTypeDef' ] +LogicalTableUnionTypeDef = Union['LogicalTableTypeDef', 'LogicalTableOutputTypeDef'] +AssetBundleImportJobOverrideParametersUnionTypeDef = Union[ 'AssetBundleImportJobOverrideParametersTypeDef', 'AssetBundleImportJobOverrideParametersOutputTypeDef', ] +TopicDetailsUnionTypeDef = Union['TopicDetailsTypeDef', 'TopicDetailsOutputTypeDef'] +AnalysisDefinitionUnionTypeDef = Union['AnalysisDefinitionTypeDef', 'AnalysisDefinitionOutputTypeDef'] +DashboardVersionDefinitionUnionTypeDef = Union[ 'DashboardVersionDefinitionTypeDef', 'DashboardVersionDefinitionOutputTypeDef' ] +TemplateVersionDefinitionUnionTypeDef = Union[ 'TemplateVersionDefinitionTypeDef', 'TemplateVersionDefinitionOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/ram_classes.py b/aws_resource_validator/pydantic_models/ram_classes.py new file mode 100644 index 00000000..0afee7c5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ram_classes.py @@ -0,0 +1,546 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ram_constants import * + +class AcceptResourceShareInvitationRequestRequestTypeDef(BaseModel): + resourceShareInvitationArn: str + clientToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociateResourceSharePermissionRequestRequestTypeDef(BaseModel): + resourceShareArn: str + permissionArn: str + replace: Optional[bool] = None + clientToken: Optional[str] = None + permissionVersion: Optional[int] = None + +class AssociateResourceShareRequestRequestTypeDef(BaseModel): + resourceShareArn: str + resourceArns: Optional[Sequence[str]] = None + principals: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + sources: Optional[Sequence[str]] = None + +class ResourceShareAssociationTypeDef(BaseModel): + resourceShareArn: Optional[str] = None + resourceShareName: Optional[str] = None + associatedEntity: Optional[str] = None + associationType: Optional[ResourceShareAssociationTypeType] = None + status: Optional[ResourceShareAssociationStatusType] = None + statusMessage: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + external: Optional[bool] = None + +class AssociatedPermissionTypeDef(BaseModel): + arn: Optional[str] = None + permissionVersion: Optional[str] = None + defaultVersion: Optional[bool] = None + resourceType: Optional[str] = None + status: Optional[str] = None + featureSet: Optional[PermissionFeatureSetType] = None + lastUpdatedTime: Optional[datetime] = None + resourceShareArn: Optional[str] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class CreatePermissionVersionRequestRequestTypeDef(BaseModel): + permissionArn: str + policyTemplate: str + clientToken: Optional[str] = None + +class DeletePermissionRequestRequestTypeDef(BaseModel): + permissionArn: str + clientToken: Optional[str] = None + +class DeletePermissionVersionRequestRequestTypeDef(BaseModel): + permissionArn: str + permissionVersion: int + clientToken: Optional[str] = None + +class DeleteResourceShareRequestRequestTypeDef(BaseModel): + resourceShareArn: str + clientToken: Optional[str] = None + +class DisassociateResourceSharePermissionRequestRequestTypeDef(BaseModel): + resourceShareArn: str + permissionArn: str + clientToken: Optional[str] = None + +class DisassociateResourceShareRequestRequestTypeDef(BaseModel): + resourceShareArn: str + resourceArns: Optional[Sequence[str]] = None + principals: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + sources: Optional[Sequence[str]] = None + +class GetPermissionRequestRequestTypeDef(BaseModel): + permissionArn: str + permissionVersion: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetResourcePoliciesRequestRequestTypeDef(BaseModel): + resourceArns: Sequence[str] + principal: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetResourceShareAssociationsRequestRequestTypeDef(BaseModel): + associationType: ResourceShareAssociationTypeType + resourceShareArns: Optional[Sequence[str]] = None + resourceArn: Optional[str] = None + principal: Optional[str] = None + associationStatus: Optional[ResourceShareAssociationStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetResourceShareInvitationsRequestRequestTypeDef(BaseModel): + resourceShareInvitationArns: Optional[Sequence[str]] = None + resourceShareArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TagFilterTypeDef(BaseModel): + tagKey: Optional[str] = None + tagValues: Optional[Sequence[str]] = None + +class ListPendingInvitationResourcesRequestRequestTypeDef(BaseModel): + resourceShareInvitationArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + resourceRegionScope: Optional[ResourceRegionScopeFilterType] = None + +class ResourceTypeDef(BaseModel): + arn: Optional[str] = None + type: Optional[str] = None + resourceShareArn: Optional[str] = None + resourceGroupArn: Optional[str] = None + status: Optional[ResourceStatusType] = None + statusMessage: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + resourceRegionScope: Optional[ResourceRegionScopeType] = None + +class ListPermissionAssociationsRequestRequestTypeDef(BaseModel): + permissionArn: Optional[str] = None + permissionVersion: Optional[int] = None + associationStatus: Optional[ResourceShareAssociationStatusType] = None + resourceType: Optional[str] = None + featureSet: Optional[PermissionFeatureSetType] = None + defaultVersion: Optional[bool] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPermissionVersionsRequestRequestTypeDef(BaseModel): + permissionArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListPermissionsRequestRequestTypeDef(BaseModel): + resourceType: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + permissionType: Optional[PermissionTypeFilterType] = None + +class ListPrincipalsRequestRequestTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + resourceArn: Optional[str] = None + principals: Optional[Sequence[str]] = None + resourceType: Optional[str] = None + resourceShareArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PrincipalTypeDef(BaseModel): + id: Optional[str] = None + resourceShareArn: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + external: Optional[bool] = None + +class ListReplacePermissionAssociationsWorkRequestRequestTypeDef(BaseModel): + workIds: Optional[Sequence[str]] = None + status: Optional[ReplacePermissionAssociationsWorkStatusType] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ReplacePermissionAssociationsWorkTypeDef(BaseModel): + id: Optional[str] = None + fromPermissionArn: Optional[str] = None + fromPermissionVersion: Optional[str] = None + toPermissionArn: Optional[str] = None + toPermissionVersion: Optional[str] = None + status: Optional[ReplacePermissionAssociationsWorkStatusType] = None + statusMessage: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + +class ListResourceSharePermissionsRequestRequestTypeDef(BaseModel): + resourceShareArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListResourceTypesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + resourceRegionScope: Optional[ResourceRegionScopeFilterType] = None + +class ServiceNameAndResourceTypeTypeDef(BaseModel): + resourceType: Optional[str] = None + serviceName: Optional[str] = None + resourceRegionScope: Optional[ResourceRegionScopeType] = None + +class ListResourcesRequestRequestTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + principal: Optional[str] = None + resourceType: Optional[str] = None + resourceArns: Optional[Sequence[str]] = None + resourceShareArns: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + resourceRegionScope: Optional[ResourceRegionScopeFilterType] = None + +class PromotePermissionCreatedFromPolicyRequestRequestTypeDef(BaseModel): + permissionArn: str + name: str + clientToken: Optional[str] = None + +class PromoteResourceShareCreatedFromPolicyRequestRequestTypeDef(BaseModel): + resourceShareArn: str + +class RejectResourceShareInvitationRequestRequestTypeDef(BaseModel): + resourceShareInvitationArn: str + clientToken: Optional[str] = None + +class ReplacePermissionAssociationsRequestRequestTypeDef(BaseModel): + fromPermissionArn: str + toPermissionArn: str + fromPermissionVersion: Optional[int] = None + clientToken: Optional[str] = None + +class SetDefaultPermissionVersionRequestRequestTypeDef(BaseModel): + permissionArn: str + permissionVersion: int + clientToken: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + tagKeys: Sequence[str] + resourceShareArn: Optional[str] = None + resourceArn: Optional[str] = None + +class UpdateResourceShareRequestRequestTypeDef(BaseModel): + resourceShareArn: str + name: Optional[str] = None + allowExternalPrincipals: Optional[bool] = None + clientToken: Optional[str] = None + +class AssociateResourceSharePermissionResponseTypeDef(BaseModel): + returnValue: bool + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePermissionResponseTypeDef(BaseModel): + returnValue: bool + clientToken: str + permissionStatus: PermissionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePermissionVersionResponseTypeDef(BaseModel): + returnValue: bool + clientToken: str + permissionStatus: PermissionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourceShareResponseTypeDef(BaseModel): + returnValue: bool + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResourceSharePermissionResponseTypeDef(BaseModel): + returnValue: bool + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class EnableSharingWithAwsOrganizationResponseTypeDef(BaseModel): + returnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePoliciesResponseTypeDef(BaseModel): + policies: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PromoteResourceShareCreatedFromPolicyResponseTypeDef(BaseModel): + returnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class SetDefaultPermissionVersionResponseTypeDef(BaseModel): + returnValue: bool + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateResourceShareResponseTypeDef(BaseModel): + resourceShareAssociations: List[ResourceShareAssociationTypeDef] + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResourceShareResponseTypeDef(BaseModel): + resourceShareAssociations: List[ResourceShareAssociationTypeDef] + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceShareAssociationsResponseTypeDef(BaseModel): + resourceShareAssociations: List[ResourceShareAssociationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceShareInvitationTypeDef(BaseModel): + resourceShareInvitationArn: Optional[str] = None + resourceShareName: Optional[str] = None + resourceShareArn: Optional[str] = None + senderAccountId: Optional[str] = None + receiverAccountId: Optional[str] = None + invitationTimestamp: Optional[datetime] = None + status: Optional[ResourceShareInvitationStatusType] = None + resourceShareAssociations: Optional[List[ResourceShareAssociationTypeDef]] = None + receiverArn: Optional[str] = None + +class ListPermissionAssociationsResponseTypeDef(BaseModel): + permissions: List[AssociatedPermissionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePermissionRequestRequestTypeDef(BaseModel): + name: str + resourceType: str + policyTemplate: str + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateResourceShareRequestRequestTypeDef(BaseModel): + name: str + resourceArns: Optional[Sequence[str]] = None + principals: Optional[Sequence[str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + allowExternalPrincipals: Optional[bool] = None + clientToken: Optional[str] = None + permissionArns: Optional[Sequence[str]] = None + sources: Optional[Sequence[str]] = None + +class ResourceSharePermissionDetailTypeDef(BaseModel): + arn: Optional[str] = None + version: Optional[str] = None + defaultVersion: Optional[bool] = None + name: Optional[str] = None + resourceType: Optional[str] = None + permission: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + isResourceTypeDefault: Optional[bool] = None + permissionType: Optional[PermissionTypeType] = None + featureSet: Optional[PermissionFeatureSetType] = None + status: Optional[PermissionStatusType] = None + tags: Optional[List[TagTypeDef]] = None + +class ResourceSharePermissionSummaryTypeDef(BaseModel): + arn: Optional[str] = None + version: Optional[str] = None + defaultVersion: Optional[bool] = None + name: Optional[str] = None + resourceType: Optional[str] = None + status: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + isResourceTypeDefault: Optional[bool] = None + permissionType: Optional[PermissionTypeType] = None + featureSet: Optional[PermissionFeatureSetType] = None + tags: Optional[List[TagTypeDef]] = None + +class ResourceShareTypeDef(BaseModel): + resourceShareArn: Optional[str] = None + name: Optional[str] = None + owningAccountId: Optional[str] = None + allowExternalPrincipals: Optional[bool] = None + status: Optional[ResourceShareStatusType] = None + statusMessage: Optional[str] = None + tags: Optional[List[TagTypeDef]] = None + creationTime: Optional[datetime] = None + lastUpdatedTime: Optional[datetime] = None + featureSet: Optional[ResourceShareFeatureSetType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + tags: Sequence[TagTypeDef] + resourceShareArn: Optional[str] = None + resourceArn: Optional[str] = None + +class GetResourcePoliciesRequestGetResourcePoliciesPaginateTypeDef(BaseModel): + resourceArns: Sequence[str] + principal: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourceShareAssociationsRequestGetResourceShareAssociationsPaginateTypeDef(BaseModel): + associationType: ResourceShareAssociationTypeType + resourceShareArns: Optional[Sequence[str]] = None + resourceArn: Optional[str] = None + principal: Optional[str] = None + associationStatus: Optional[ResourceShareAssociationStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourceShareInvitationsRequestGetResourceShareInvitationsPaginateTypeDef(BaseModel): + resourceShareInvitationArns: Optional[Sequence[str]] = None + resourceShareArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrincipalsRequestListPrincipalsPaginateTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + resourceArn: Optional[str] = None + principals: Optional[Sequence[str]] = None + resourceType: Optional[str] = None + resourceShareArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourcesRequestListResourcesPaginateTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + principal: Optional[str] = None + resourceType: Optional[str] = None + resourceArns: Optional[Sequence[str]] = None + resourceShareArns: Optional[Sequence[str]] = None + resourceRegionScope: Optional[ResourceRegionScopeFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourceSharesRequestGetResourceSharesPaginateTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + resourceShareArns: Optional[Sequence[str]] = None + resourceShareStatus: Optional[ResourceShareStatusType] = None + name: Optional[str] = None + tagFilters: Optional[Sequence[TagFilterTypeDef]] = None + permissionArn: Optional[str] = None + permissionVersion: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourceSharesRequestRequestTypeDef(BaseModel): + resourceOwner: ResourceOwnerType + resourceShareArns: Optional[Sequence[str]] = None + resourceShareStatus: Optional[ResourceShareStatusType] = None + name: Optional[str] = None + tagFilters: Optional[Sequence[TagFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + permissionArn: Optional[str] = None + permissionVersion: Optional[int] = None + +class ListPendingInvitationResourcesResponseTypeDef(BaseModel): + resources: List[ResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesResponseTypeDef(BaseModel): + resources: List[ResourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPrincipalsResponseTypeDef(BaseModel): + principals: List[PrincipalTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReplacePermissionAssociationsWorkResponseTypeDef(BaseModel): + replacePermissionAssociationsWorks: List[ReplacePermissionAssociationsWorkTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ReplacePermissionAssociationsResponseTypeDef(BaseModel): + replacePermissionAssociationsWork: ReplacePermissionAssociationsWorkTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceTypesResponseTypeDef(BaseModel): + resourceTypes: List[ServiceNameAndResourceTypeTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptResourceShareInvitationResponseTypeDef(BaseModel): + resourceShareInvitation: ResourceShareInvitationTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceShareInvitationsResponseTypeDef(BaseModel): + resourceShareInvitations: List[ResourceShareInvitationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RejectResourceShareInvitationResponseTypeDef(BaseModel): + resourceShareInvitation: ResourceShareInvitationTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePermissionVersionResponseTypeDef(BaseModel): + permission: ResourceSharePermissionDetailTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPermissionResponseTypeDef(BaseModel): + permission: ResourceSharePermissionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePermissionResponseTypeDef(BaseModel): + permission: ResourceSharePermissionSummaryTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionVersionsResponseTypeDef(BaseModel): + permissions: List[ResourceSharePermissionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionsResponseTypeDef(BaseModel): + permissions: List[ResourceSharePermissionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceSharePermissionsResponseTypeDef(BaseModel): + permissions: List[ResourceSharePermissionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PromotePermissionCreatedFromPolicyResponseTypeDef(BaseModel): + permission: ResourceSharePermissionSummaryTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceShareResponseTypeDef(BaseModel): + resourceShare: ResourceShareTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceSharesResponseTypeDef(BaseModel): + resourceShares: List[ResourceShareTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResourceShareResponseTypeDef(BaseModel): + resourceShare: ResourceShareTypeDef + clientToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ram_constants.py b/aws_resource_validator/pydantic_models/ram_constants.py new file mode 100644 index 00000000..d99dadcf --- /dev/null +++ b/aws_resource_validator/pydantic_models/ram_constants.py @@ -0,0 +1,442 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +GetResourcePoliciesPaginatorName = Literal["get_resource_policies"] +GetResourceShareAssociationsPaginatorName = Literal["get_resource_share_associations"] +GetResourceShareInvitationsPaginatorName = Literal["get_resource_share_invitations"] +GetResourceSharesPaginatorName = Literal["get_resource_shares"] +ListPrincipalsPaginatorName = Literal["list_principals"] +ListResourcesPaginatorName = Literal["list_resources"] +PermissionFeatureSetType = Literal["CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"] +PermissionStatusType = Literal["ATTACHABLE", "DELETED", "DELETING", "UNATTACHABLE"] +PermissionTypeFilterType = Literal["ALL", "AWS_MANAGED", "CUSTOMER_MANAGED"] +PermissionTypeType = Literal["AWS_MANAGED", "CUSTOMER_MANAGED"] +ReplacePermissionAssociationsWorkStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +ResourceOwnerType = Literal["OTHER-ACCOUNTS", "SELF"] +ResourceRegionScopeFilterType = Literal["ALL", "GLOBAL", "REGIONAL"] +ResourceRegionScopeType = Literal["GLOBAL", "REGIONAL"] +ResourceShareAssociationStatusType = Literal["ASSOCIATED", "ASSOCIATING", "DISASSOCIATED", "DISASSOCIATING", "FAILED"] +ResourceShareAssociationTypeType = Literal["PRINCIPAL", "RESOURCE"] +ResourceShareFeatureSetType = Literal["CREATED_FROM_POLICY", "PROMOTING_TO_STANDARD", "STANDARD"] +ResourceShareInvitationStatusType = Literal["ACCEPTED", "EXPIRED", "PENDING", "REJECTED"] +ResourceShareStatusType = Literal["ACTIVE", "DELETED", "DELETING", "FAILED", "PENDING"] +ResourceStatusType = Literal["AVAILABLE", "LIMIT_EXCEEDED", "PENDING", "UNAVAILABLE", "ZONAL_RESOURCE_INACCESSIBLE"] +RAMServiceName = Literal["ram"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_resource_policies", + "get_resource_share_associations", + "get_resource_share_invitations", + "get_resource_shares", + "list_principals", + "list_resources",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/rbin_classes.py b/aws_resource_validator/pydantic_models/rbin_classes.py new file mode 100644 index 00000000..5908b44f --- /dev/null +++ b/aws_resource_validator/pydantic_models/rbin_classes.py @@ -0,0 +1,175 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.rbin_constants import * + +class ResourceTagTypeDef(BaseModel): + ResourceTagKey: str + ResourceTagValue: Optional[str] = None + +class RetentionPeriodTypeDef(BaseModel): + RetentionPeriodValue: int + RetentionPeriodUnit: Literal["DAYS"] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteRuleRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetRuleRequestRequestTypeDef(BaseModel): + Identifier: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class UnlockDelayTypeDef(BaseModel): + UnlockDelayValue: int + UnlockDelayUnit: Literal["DAYS"] + +class UnlockRuleRequestRequestTypeDef(BaseModel): + Identifier: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class ListRulesRequestRequestTypeDef(BaseModel): + ResourceType: ResourceTypeType + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + LockState: Optional[LockStateType] = None + +class RuleSummaryTypeDef(BaseModel): + Identifier: Optional[str] = None + Description: Optional[str] = None + RetentionPeriod: Optional[RetentionPeriodTypeDef] = None + LockState: Optional[LockStateType] = None + RuleArn: Optional[str] = None + +class UpdateRuleRequestRequestTypeDef(BaseModel): + Identifier: str + RetentionPeriod: Optional[RetentionPeriodTypeDef] = None + Description: Optional[str] = None + ResourceType: Optional[ResourceTypeType] = None + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleResponseTypeDef(BaseModel): + Identifier: str + RetentionPeriod: RetentionPeriodTypeDef + Description: str + ResourceType: ResourceTypeType + ResourceTags: List[ResourceTagTypeDef] + Status: RuleStatusType + LockState: LockStateType + LockEndTime: datetime + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRulesRequestListRulesPaginateTypeDef(BaseModel): + ResourceType: ResourceTypeType + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + LockState: Optional[LockStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LockConfigurationTypeDef(BaseModel): + UnlockDelay: UnlockDelayTypeDef + +class ListRulesResponseTypeDef(BaseModel): + Rules: List[RuleSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleRequestRequestTypeDef(BaseModel): + RetentionPeriod: RetentionPeriodTypeDef + ResourceType: ResourceTypeType + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ResourceTags: Optional[Sequence[ResourceTagTypeDef]] = None + LockConfiguration: Optional[LockConfigurationTypeDef] = None + +class CreateRuleResponseTypeDef(BaseModel): + Identifier: str + RetentionPeriod: RetentionPeriodTypeDef + Description: str + Tags: List[TagTypeDef] + ResourceType: ResourceTypeType + ResourceTags: List[ResourceTagTypeDef] + Status: RuleStatusType + LockConfiguration: LockConfigurationTypeDef + LockState: LockStateType + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuleResponseTypeDef(BaseModel): + Identifier: str + Description: str + ResourceType: ResourceTypeType + RetentionPeriod: RetentionPeriodTypeDef + ResourceTags: List[ResourceTagTypeDef] + Status: RuleStatusType + LockConfiguration: LockConfigurationTypeDef + LockState: LockStateType + LockEndTime: datetime + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class LockRuleRequestRequestTypeDef(BaseModel): + Identifier: str + LockConfiguration: LockConfigurationTypeDef + +class LockRuleResponseTypeDef(BaseModel): + Identifier: str + Description: str + ResourceType: ResourceTypeType + RetentionPeriod: RetentionPeriodTypeDef + ResourceTags: List[ResourceTagTypeDef] + Status: RuleStatusType + LockConfiguration: LockConfigurationTypeDef + LockState: LockStateType + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UnlockRuleResponseTypeDef(BaseModel): + Identifier: str + Description: str + ResourceType: ResourceTypeType + RetentionPeriod: RetentionPeriodTypeDef + ResourceTags: List[ResourceTagTypeDef] + Status: RuleStatusType + LockConfiguration: LockConfigurationTypeDef + LockState: LockStateType + LockEndTime: datetime + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/rbin_constants.py b/aws_resource_validator/pydantic_models/rbin_constants.py new file mode 100644 index 00000000..5a79180a --- /dev/null +++ b/aws_resource_validator/pydantic_models/rbin_constants.py @@ -0,0 +1,423 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListRulesPaginatorName = Literal["list_rules"] +LockStateType = Literal["locked", "pending_unlock", "unlocked"] +ResourceTypeType = Literal["EBS_SNAPSHOT", "EC2_IMAGE"] +RetentionPeriodUnitType = Literal["DAYS"] +RuleStatusType = Literal["available", "pending"] +UnlockDelayUnitType = Literal["DAYS"] +RecycleBinServiceName = Literal["rbin"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_rules"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/rds_classes.py b/aws_resource_validator/pydantic_models/rds_classes.py new file mode 100644 index 00000000..57cfdfb8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rds_classes.py @@ -0,0 +1,3684 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.rds_constants import * + +class AccountQuotaTypeDef(BaseModel): + AccountQuotaName: Optional[str] = None + Used: Optional[int] = None + Max: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AddRoleToDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + RoleArn: str + FeatureName: Optional[str] = None + +class AddRoleToDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + RoleArn: str + FeatureName: str + +class AddSourceIdentifierToSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SourceIdentifier: str + +class EventSubscriptionTypeDef(BaseModel): + CustomerAwsId: Optional[str] = None + CustSubscriptionId: Optional[str] = None + SnsTopicArn: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + SourceType: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + EventCategoriesList: Optional[List[str]] = None + Enabled: Optional[bool] = None + EventSubscriptionArn: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ApplyPendingMaintenanceActionMessageRequestTypeDef(BaseModel): + ResourceIdentifier: str + ApplyAction: str + OptInType: str + +class AuthorizeDBSecurityGroupIngressMessageRequestTypeDef(BaseModel): + DBSecurityGroupName: str + CIDRIP: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupId: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class AvailableProcessorFeatureTypeDef(BaseModel): + Name: Optional[str] = None + DefaultValue: Optional[str] = None + AllowedValues: Optional[str] = None + +class BlueGreenDeploymentTaskTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + +class SwitchoverDetailTypeDef(BaseModel): + SourceMember: Optional[str] = None + TargetMember: Optional[str] = None + Status: Optional[str] = None + +class CancelExportTaskMessageRequestTypeDef(BaseModel): + ExportTaskIdentifier: str + +class CertificateDetailsTypeDef(BaseModel): + CAIdentifier: Optional[str] = None + ValidTill: Optional[datetime] = None + +class CertificateTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + CertificateType: Optional[str] = None + Thumbprint: Optional[str] = None + ValidFrom: Optional[datetime] = None + ValidTill: Optional[datetime] = None + CertificateArn: Optional[str] = None + CustomerOverride: Optional[bool] = None + CustomerOverrideValidTill: Optional[datetime] = None + +class CharacterSetTypeDef(BaseModel): + CharacterSetName: Optional[str] = None + CharacterSetDescription: Optional[str] = None + +class ClientGenerateDbAuthTokenRequestTypeDef(BaseModel): + DBHostname: str + Port: int + DBUsername: str + Region: Optional[Optional[str]] = None + +class CloudwatchLogsExportConfigurationTypeDef(BaseModel): + EnableLogTypes: Optional[Sequence[str]] = None + DisableLogTypes: Optional[Sequence[str]] = None + +class PendingCloudwatchLogsExportsTypeDef(BaseModel): + LogTypesToEnable: Optional[List[str]] = None + LogTypesToDisable: Optional[List[str]] = None + +class RdsCustomClusterConfigurationTypeDef(BaseModel): + InterconnectSubnetId: Optional[str] = None + TransitGatewayMulticastDomainId: Optional[str] = None + ReplicaMode: Optional[ReplicaModeType] = None + +class ConnectionPoolConfigurationInfoTypeDef(BaseModel): + MaxConnectionsPercent: Optional[int] = None + MaxIdleConnectionsPercent: Optional[int] = None + ConnectionBorrowTimeout: Optional[int] = None + SessionPinningFilters: Optional[List[str]] = None + InitQuery: Optional[str] = None + +class ConnectionPoolConfigurationTypeDef(BaseModel): + MaxConnectionsPercent: Optional[int] = None + MaxIdleConnectionsPercent: Optional[int] = None + ConnectionBorrowTimeout: Optional[int] = None + SessionPinningFilters: Optional[Sequence[str]] = None + InitQuery: Optional[str] = None + +class ContextAttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class DBClusterParameterGroupTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + DBClusterParameterGroupArn: Optional[str] = None + +class DBParameterGroupTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + DBParameterGroupArn: Optional[str] = None + +class ScalingConfigurationTypeDef(BaseModel): + MinCapacity: Optional[int] = None + MaxCapacity: Optional[int] = None + AutoPause: Optional[bool] = None + SecondsUntilAutoPause: Optional[int] = None + TimeoutAction: Optional[str] = None + SecondsBeforeTimeout: Optional[int] = None + +class ServerlessV2ScalingConfigurationTypeDef(BaseModel): + MinCapacity: Optional[float] = None + MaxCapacity: Optional[float] = None + +class ProcessorFeatureTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class DBProxyEndpointTypeDef(BaseModel): + DBProxyEndpointName: Optional[str] = None + DBProxyEndpointArn: Optional[str] = None + DBProxyName: Optional[str] = None + Status: Optional[DBProxyEndpointStatusType] = None + VpcId: Optional[str] = None + VpcSecurityGroupIds: Optional[List[str]] = None + VpcSubnetIds: Optional[List[str]] = None + Endpoint: Optional[str] = None + CreatedDate: Optional[datetime] = None + TargetRole: Optional[DBProxyEndpointTargetRoleType] = None + IsDefault: Optional[bool] = None + +class UserAuthConfigTypeDef(BaseModel): + Description: Optional[str] = None + UserName: Optional[str] = None + AuthScheme: Optional[Literal["SECRETS"]] = None + SecretArn: Optional[str] = None + IAMAuth: Optional[IAMAuthModeType] = None + ClientPasswordAuthType: Optional[ClientPasswordAuthTypeType] = None + +class CreateDBShardGroupMessageRequestTypeDef(BaseModel): + DBShardGroupIdentifier: str + DBClusterIdentifier: str + MaxACU: float + ComputeRedundancy: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + +class CreateGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + SourceDBClusterIdentifier: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + DeletionProtection: Optional[bool] = None + DatabaseName: Optional[str] = None + StorageEncrypted: Optional[bool] = None + +class CustomDBEngineVersionAMITypeDef(BaseModel): + ImageId: Optional[str] = None + Status: Optional[str] = None + +class RestoreWindowTypeDef(BaseModel): + EarliestTime: Optional[datetime] = None + LatestTime: Optional[datetime] = None + +class DBClusterBacktrackTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + BacktrackIdentifier: Optional[str] = None + BacktrackTo: Optional[datetime] = None + BacktrackedFrom: Optional[datetime] = None + BacktrackRequestCreationTime: Optional[datetime] = None + Status: Optional[str] = None + +class DBClusterEndpointTypeDef(BaseModel): + DBClusterEndpointIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBClusterEndpointResourceIdentifier: Optional[str] = None + Endpoint: Optional[str] = None + Status: Optional[str] = None + EndpointType: Optional[str] = None + CustomEndpointType: Optional[str] = None + StaticMembers: Optional[List[str]] = None + ExcludedMembers: Optional[List[str]] = None + DBClusterEndpointArn: Optional[str] = None + +class DBClusterMemberTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + IsClusterWriter: Optional[bool] = None + DBClusterParameterGroupStatus: Optional[str] = None + PromotionTier: Optional[int] = None + +class DBClusterOptionGroupStatusTypeDef(BaseModel): + DBClusterOptionGroupName: Optional[str] = None + Status: Optional[str] = None + +class ParameterOutputTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + ApplyType: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + ApplyMethod: Optional[ApplyMethodType] = None + SupportedEngineModes: Optional[List[str]] = None + +class DBClusterRoleTypeDef(BaseModel): + RoleArn: Optional[str] = None + Status: Optional[str] = None + FeatureName: Optional[str] = None + +class DBClusterSnapshotAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[str]] = None + +class DBClusterStatusInfoTypeDef(BaseModel): + StatusType: Optional[str] = None + Normal: Optional[bool] = None + Status: Optional[str] = None + Message: Optional[str] = None + +class DomainMembershipTypeDef(BaseModel): + Domain: Optional[str] = None + Status: Optional[str] = None + FQDN: Optional[str] = None + IAMRoleName: Optional[str] = None + OU: Optional[str] = None + AuthSecretArn: Optional[str] = None + DnsIps: Optional[List[str]] = None + +class LimitlessDatabaseTypeDef(BaseModel): + Status: Optional[LimitlessDatabaseStatusType] = None + MinRequiredACU: Optional[float] = None + +class MasterUserSecretTypeDef(BaseModel): + SecretArn: Optional[str] = None + SecretStatus: Optional[str] = None + KmsKeyId: Optional[str] = None + +class ScalingConfigurationInfoTypeDef(BaseModel): + MinCapacity: Optional[int] = None + MaxCapacity: Optional[int] = None + AutoPause: Optional[bool] = None + SecondsUntilAutoPause: Optional[int] = None + TimeoutAction: Optional[str] = None + SecondsBeforeTimeout: Optional[int] = None + +class ServerlessV2ScalingConfigurationInfoTypeDef(BaseModel): + MinCapacity: Optional[float] = None + MaxCapacity: Optional[float] = None + +class VpcSecurityGroupMembershipTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class TimezoneTypeDef(BaseModel): + TimezoneName: Optional[str] = None + +class UpgradeTargetTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Description: Optional[str] = None + AutoUpgrade: Optional[bool] = None + IsMajorVersionUpgrade: Optional[bool] = None + SupportedEngineModes: Optional[List[str]] = None + SupportsParallelQuery: Optional[bool] = None + SupportsGlobalDatabases: Optional[bool] = None + SupportsBabelfish: Optional[bool] = None + SupportsLimitlessDatabase: Optional[bool] = None + SupportsLocalWriteForwarding: Optional[bool] = None + SupportsIntegrations: Optional[bool] = None + +class DBInstanceAutomatedBackupsReplicationTypeDef(BaseModel): + DBInstanceAutomatedBackupsArn: Optional[str] = None + +class DBInstanceRoleTypeDef(BaseModel): + RoleArn: Optional[str] = None + FeatureName: Optional[str] = None + Status: Optional[str] = None + +class DBInstanceStatusInfoTypeDef(BaseModel): + StatusType: Optional[str] = None + Normal: Optional[bool] = None + Status: Optional[str] = None + Message: Optional[str] = None + +class DBParameterGroupStatusTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + +class DBSecurityGroupMembershipTypeDef(BaseModel): + DBSecurityGroupName: Optional[str] = None + Status: Optional[str] = None + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + HostedZoneId: Optional[str] = None + +class OptionGroupMembershipTypeDef(BaseModel): + OptionGroupName: Optional[str] = None + Status: Optional[str] = None + +class TargetHealthTypeDef(BaseModel): + State: Optional[TargetStateType] = None + Reason: Optional[TargetHealthReasonType] = None + Description: Optional[str] = None + +class UserAuthConfigInfoTypeDef(BaseModel): + Description: Optional[str] = None + UserName: Optional[str] = None + AuthScheme: Optional[Literal["SECRETS"]] = None + SecretArn: Optional[str] = None + IAMAuth: Optional[IAMAuthModeType] = None + ClientPasswordAuthType: Optional[ClientPasswordAuthTypeType] = None + +class DocLinkTypeDef(BaseModel): + Text: Optional[str] = None + Url: Optional[str] = None + +class EC2SecurityGroupTypeDef(BaseModel): + Status: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupId: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + +class IPRangeTypeDef(BaseModel): + Status: Optional[str] = None + CIDRIP: Optional[str] = None + +class DBShardGroupTypeDef(BaseModel): + DBShardGroupResourceId: Optional[str] = None + DBShardGroupIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + MaxACU: Optional[float] = None + ComputeRedundancy: Optional[int] = None + Status: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Endpoint: Optional[str] = None + +class DBSnapshotAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[str]] = None + +class DeleteBlueGreenDeploymentRequestRequestTypeDef(BaseModel): + BlueGreenDeploymentIdentifier: str + DeleteTarget: Optional[bool] = None + +class DeleteCustomDBEngineVersionMessageRequestTypeDef(BaseModel): + Engine: str + EngineVersion: str + +class DeleteDBClusterAutomatedBackupMessageRequestTypeDef(BaseModel): + DbClusterResourceId: str + +class DeleteDBClusterEndpointMessageRequestTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + +class DeleteDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SkipFinalSnapshot: Optional[bool] = None + FinalDBSnapshotIdentifier: Optional[str] = None + DeleteAutomatedBackups: Optional[bool] = None + +class DeleteDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + +class DeleteDBClusterSnapshotMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + +class DeleteDBInstanceAutomatedBackupMessageRequestTypeDef(BaseModel): + DbiResourceId: Optional[str] = None + DBInstanceAutomatedBackupsArn: Optional[str] = None + +class DeleteDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + SkipFinalSnapshot: Optional[bool] = None + FinalDBSnapshotIdentifier: Optional[str] = None + DeleteAutomatedBackups: Optional[bool] = None + +class DeleteDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + +class DeleteDBProxyEndpointRequestRequestTypeDef(BaseModel): + DBProxyEndpointName: str + +class DeleteDBProxyRequestRequestTypeDef(BaseModel): + DBProxyName: str + +class DeleteDBSecurityGroupMessageRequestTypeDef(BaseModel): + DBSecurityGroupName: str + +class DeleteDBShardGroupMessageRequestTypeDef(BaseModel): + DBShardGroupIdentifier: str + +class DeleteDBSnapshotMessageRequestTypeDef(BaseModel): + DBSnapshotIdentifier: str + +class DeleteDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + +class DeleteEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + +class DeleteGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + +class DeleteIntegrationMessageRequestTypeDef(BaseModel): + IntegrationIdentifier: str + +class DeleteOptionGroupMessageRequestTypeDef(BaseModel): + OptionGroupName: str + +class DeleteTenantDatabaseMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + TenantDBName: str + SkipFinalSnapshot: Optional[bool] = None + FinalDBSnapshotIdentifier: Optional[str] = None + +class DeregisterDBProxyTargetsRequestRequestTypeDef(BaseModel): + DBProxyName: str + TargetGroupName: Optional[str] = None + DBInstanceIdentifiers: Optional[Sequence[str]] = None + DBClusterIdentifiers: Optional[Sequence[str]] = None + +class FilterTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeDBClusterSnapshotAttributesMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeDBLogFilesDetailsTypeDef(BaseModel): + LogFileName: Optional[str] = None + LastWritten: Optional[int] = None + Size: Optional[int] = None + +class DescribeDBSnapshotAttributesMessageRequestTypeDef(BaseModel): + DBSnapshotIdentifier: str + +class DescribeValidDBInstanceModificationsMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + +class DisableHttpEndpointRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DoubleRangeTypeDef(BaseModel): + From: Optional[float] = None + To: Optional[float] = None + +class DownloadDBLogFilePortionMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + LogFileName: str + Marker: Optional[str] = None + NumberOfLines: Optional[int] = None + +class EnableHttpEndpointRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class EventCategoriesMapTypeDef(BaseModel): + SourceType: Optional[str] = None + EventCategories: Optional[List[str]] = None + +class EventTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + EventCategories: Optional[List[str]] = None + Date: Optional[datetime] = None + SourceArn: Optional[str] = None + +class ExportTaskTypeDef(BaseModel): + ExportTaskIdentifier: Optional[str] = None + SourceArn: Optional[str] = None + ExportOnly: Optional[List[str]] = None + SnapshotTime: Optional[datetime] = None + TaskStartTime: Optional[datetime] = None + TaskEndTime: Optional[datetime] = None + S3Bucket: Optional[str] = None + S3Prefix: Optional[str] = None + IamRoleArn: Optional[str] = None + KmsKeyId: Optional[str] = None + Status: Optional[str] = None + PercentProgress: Optional[int] = None + TotalExtractedDataInGB: Optional[int] = None + FailureCause: Optional[str] = None + WarningMessage: Optional[str] = None + SourceType: Optional[ExportSourceTypeType] = None + +class FailoverDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + TargetDBInstanceIdentifier: Optional[str] = None + +class FailoverGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + TargetDbClusterIdentifier: str + AllowDataLoss: Optional[bool] = None + Switchover: Optional[bool] = None + +class FailoverStateTypeDef(BaseModel): + Status: Optional[FailoverStatusType] = None + FromDbClusterArn: Optional[str] = None + ToDbClusterArn: Optional[str] = None + IsDataLossAllowed: Optional[bool] = None + +class GlobalClusterMemberTypeDef(BaseModel): + DBClusterArn: Optional[str] = None + Readers: Optional[List[str]] = None + IsWriter: Optional[bool] = None + GlobalWriteForwardingStatus: Optional[WriteForwardingStatusType] = None + SynchronizationStatus: Optional[GlobalClusterMemberSynchronizationStatusType] = None + +class IntegrationErrorTypeDef(BaseModel): + ErrorCode: str + ErrorMessage: Optional[str] = None + +class MinimumEngineVersionPerAllowedValueTypeDef(BaseModel): + AllowedValue: Optional[str] = None + MinimumEngineVersion: Optional[str] = None + +class ModifyActivityStreamRequestRequestTypeDef(BaseModel): + ResourceArn: Optional[str] = None + AuditPolicyState: Optional[AuditPolicyStateType] = None + +class ModifyCertificatesMessageRequestTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + RemoveCustomerOverride: Optional[bool] = None + +class ModifyCurrentDBClusterCapacityMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + Capacity: Optional[int] = None + SecondsBeforeTimeout: Optional[int] = None + TimeoutAction: Optional[str] = None + +class ModifyCustomDBEngineVersionMessageRequestTypeDef(BaseModel): + Engine: str + EngineVersion: str + Description: Optional[str] = None + Status: Optional[CustomEngineVersionStatusType] = None + +class ModifyDBClusterEndpointMessageRequestTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + EndpointType: Optional[str] = None + StaticMembers: Optional[Sequence[str]] = None + ExcludedMembers: Optional[Sequence[str]] = None + +class ModifyDBClusterSnapshotAttributeMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + AttributeName: str + ValuesToAdd: Optional[Sequence[str]] = None + ValuesToRemove: Optional[Sequence[str]] = None + +class ModifyDBProxyEndpointRequestRequestTypeDef(BaseModel): + DBProxyEndpointName: str + NewDBProxyEndpointName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + +class RecommendedActionUpdateTypeDef(BaseModel): + ActionId: str + Status: str + +class ModifyDBShardGroupMessageRequestTypeDef(BaseModel): + DBShardGroupIdentifier: str + MaxACU: Optional[float] = None + +class ModifyDBSnapshotAttributeMessageRequestTypeDef(BaseModel): + DBSnapshotIdentifier: str + AttributeName: str + ValuesToAdd: Optional[Sequence[str]] = None + ValuesToRemove: Optional[Sequence[str]] = None + +class ModifyDBSnapshotMessageRequestTypeDef(BaseModel): + DBSnapshotIdentifier: str + EngineVersion: Optional[str] = None + OptionGroupName: Optional[str] = None + +class ModifyDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + SubnetIds: Sequence[str] + DBSubnetGroupDescription: Optional[str] = None + +class ModifyEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: Optional[str] = None + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class ModifyGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + NewGlobalClusterIdentifier: Optional[str] = None + DeletionProtection: Optional[bool] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + +class ModifyIntegrationMessageRequestTypeDef(BaseModel): + IntegrationIdentifier: str + IntegrationName: Optional[str] = None + DataFilter: Optional[str] = None + Description: Optional[str] = None + +class ModifyTenantDatabaseMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + TenantDBName: str + MasterUserPassword: Optional[str] = None + NewTenantDBName: Optional[str] = None + +class OptionSettingTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + DefaultValue: Optional[str] = None + Description: Optional[str] = None + ApplyType: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + IsCollection: Optional[bool] = None + +class OptionVersionTypeDef(BaseModel): + Version: Optional[str] = None + IsDefault: Optional[bool] = None + +class OutpostTypeDef(BaseModel): + Arn: Optional[str] = None + +class ParameterExtraOutputTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + ApplyType: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + ApplyMethod: Optional[ApplyMethodType] = None + SupportedEngineModes: Optional[List[str]] = None + +class ParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + ApplyType: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + ApplyMethod: Optional[ApplyMethodType] = None + SupportedEngineModes: Optional[Sequence[str]] = None + +class PendingMaintenanceActionTypeDef(BaseModel): + Action: Optional[str] = None + AutoAppliedAfterDate: Optional[datetime] = None + ForcedApplyDate: Optional[datetime] = None + OptInStatus: Optional[str] = None + CurrentApplyDate: Optional[datetime] = None + Description: Optional[str] = None + +class PerformanceInsightsMetricDimensionGroupTypeDef(BaseModel): + Dimensions: Optional[List[str]] = None + Group: Optional[str] = None + Limit: Optional[int] = None + +class PromoteReadReplicaDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class PromoteReadReplicaMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + BackupRetentionPeriod: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + +class RangeTypeDef(BaseModel): + From: Optional[int] = None + To: Optional[int] = None + Step: Optional[int] = None + +class RebootDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class RebootDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + ForceFailover: Optional[bool] = None + +class RebootDBShardGroupMessageRequestTypeDef(BaseModel): + DBShardGroupIdentifier: str + +class RecommendedActionParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class RecurringChargeTypeDef(BaseModel): + RecurringChargeAmount: Optional[float] = None + RecurringChargeFrequency: Optional[str] = None + +class ScalarReferenceDetailsTypeDef(BaseModel): + Value: Optional[float] = None + +class RegisterDBProxyTargetsRequestRequestTypeDef(BaseModel): + DBProxyName: str + TargetGroupName: Optional[str] = None + DBInstanceIdentifiers: Optional[Sequence[str]] = None + DBClusterIdentifiers: Optional[Sequence[str]] = None + +class RemoveFromGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + DbClusterIdentifier: Optional[str] = None + +class RemoveRoleFromDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + RoleArn: str + FeatureName: Optional[str] = None + +class RemoveRoleFromDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + RoleArn: str + FeatureName: str + +class RemoveSourceIdentifierFromSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SourceIdentifier: str + +class RemoveTagsFromResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + TagKeys: Sequence[str] + +class RevokeDBSecurityGroupIngressMessageRequestTypeDef(BaseModel): + DBSecurityGroupName: str + CIDRIP: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupId: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + +class SourceRegionTypeDef(BaseModel): + RegionName: Optional[str] = None + Endpoint: Optional[str] = None + Status: Optional[str] = None + SupportsDBInstanceAutomatedBackupsReplication: Optional[bool] = None + +class StartActivityStreamRequestRequestTypeDef(BaseModel): + ResourceArn: str + Mode: ActivityStreamModeType + KmsKeyId: str + ApplyImmediately: Optional[bool] = None + EngineNativeAuditFieldsIncluded: Optional[bool] = None + +class StartDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class StartDBInstanceAutomatedBackupsReplicationMessageRequestTypeDef(BaseModel): + SourceDBInstanceArn: str + BackupRetentionPeriod: Optional[int] = None + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + SourceRegion: Optional[str] = None + +class StartDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + +class StartExportTaskMessageRequestTypeDef(BaseModel): + ExportTaskIdentifier: str + SourceArn: str + S3BucketName: str + IamRoleArn: str + KmsKeyId: str + S3Prefix: Optional[str] = None + ExportOnly: Optional[Sequence[str]] = None + +class StopActivityStreamRequestRequestTypeDef(BaseModel): + ResourceArn: str + ApplyImmediately: Optional[bool] = None + +class StopDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + +class StopDBInstanceAutomatedBackupsReplicationMessageRequestTypeDef(BaseModel): + SourceDBInstanceArn: str + +class StopDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBSnapshotIdentifier: Optional[str] = None + +class SwitchoverBlueGreenDeploymentRequestRequestTypeDef(BaseModel): + BlueGreenDeploymentIdentifier: str + SwitchoverTimeout: Optional[int] = None + +class SwitchoverGlobalClusterMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: str + TargetDbClusterIdentifier: str + +class SwitchoverReadReplicaMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + +class TenantDatabasePendingModifiedValuesTypeDef(BaseModel): + MasterUserPassword: Optional[str] = None + TenantDBName: Optional[str] = None + +class AccountAttributesMessageTypeDef(BaseModel): + AccountQuotas: List[AccountQuotaTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterBacktrackResponseTypeDef(BaseModel): + DBClusterIdentifier: str + BacktrackIdentifier: str + BacktrackTo: datetime + BacktrackedFrom: datetime + BacktrackRequestCreationTime: datetime + Status: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterCapacityInfoTypeDef(BaseModel): + DBClusterIdentifier: str + PendingCapacity: int + CurrentCapacity: int + SecondsBeforeTimeout: int + TimeoutAction: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterEndpointResponseTypeDef(BaseModel): + DBClusterEndpointIdentifier: str + DBClusterIdentifier: str + DBClusterEndpointResourceIdentifier: str + Endpoint: str + Status: str + EndpointType: str + CustomEndpointType: str + StaticMembers: List[str] + ExcludedMembers: List[str] + DBClusterEndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupNameMessageTypeDef(BaseModel): + DBClusterParameterGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBParameterGroupNameMessageTypeDef(BaseModel): + DBParameterGroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBShardGroupResponseTypeDef(BaseModel): + DBShardGroupResourceId: str + DBShardGroupIdentifier: str + DBClusterIdentifier: str + MaxACU: float + ComputeRedundancy: int + Status: str + PubliclyAccessible: bool + Endpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableHttpEndpointResponseTypeDef(BaseModel): + ResourceArn: str + HttpEndpointEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DownloadDBLogFilePortionDetailsTypeDef(BaseModel): + LogFileData: str + Marker: str + AdditionalDataPending: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnableHttpEndpointResponseTypeDef(BaseModel): + ResourceArn: str + HttpEndpointEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTaskResponseTypeDef(BaseModel): + ExportTaskIdentifier: str + SourceArn: str + ExportOnly: List[str] + SnapshotTime: datetime + TaskStartTime: datetime + TaskEndTime: datetime + S3Bucket: str + S3Prefix: str + IamRoleArn: str + KmsKeyId: str + Status: str + PercentProgress: int + TotalExtractedDataInGB: int + FailureCause: str + WarningMessage: str + SourceType: ExportSourceTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyActivityStreamResponseTypeDef(BaseModel): + KmsKeyId: str + KinesisStreamName: str + Status: ActivityStreamStatusType + Mode: ActivityStreamModeType + EngineNativeAuditFieldsIncluded: bool + PolicyStatus: ActivityStreamPolicyStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartActivityStreamResponseTypeDef(BaseModel): + KmsKeyId: str + KinesisStreamName: str + Status: ActivityStreamStatusType + Mode: ActivityStreamModeType + ApplyImmediately: bool + EngineNativeAuditFieldsIncluded: bool + ResponseMetadata: ResponseMetadataTypeDef + +class StopActivityStreamResponseTypeDef(BaseModel): + KmsKeyId: str + KinesisStreamName: str + Status: ActivityStreamStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class AddSourceIdentifierToSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EventSubscriptionsMessageTypeDef(BaseModel): + Marker: str + EventSubscriptionsList: List[EventSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveSourceIdentifierFromSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsToResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Tags: Sequence[TagTypeDef] + +class CopyDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + SourceDBClusterParameterGroupIdentifier: str + TargetDBClusterParameterGroupIdentifier: str + TargetDBClusterParameterGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CopyDBClusterSnapshotMessageRequestTypeDef(BaseModel): + SourceDBClusterSnapshotIdentifier: str + TargetDBClusterSnapshotIdentifier: str + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + CopyTags: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SourceRegion: Optional[str] = None + +class CopyDBParameterGroupMessageRequestTypeDef(BaseModel): + SourceDBParameterGroupIdentifier: str + TargetDBParameterGroupIdentifier: str + TargetDBParameterGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CopyDBSnapshotMessageRequestTypeDef(BaseModel): + SourceDBSnapshotIdentifier: str + TargetDBSnapshotIdentifier: str + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CopyTags: Optional[bool] = None + PreSignedUrl: Optional[str] = None + OptionGroupName: Optional[str] = None + TargetCustomAvailabilityZone: Optional[str] = None + CopyOptionGroup: Optional[bool] = None + SourceRegion: Optional[str] = None + +class CopyOptionGroupMessageRequestTypeDef(BaseModel): + SourceOptionGroupIdentifier: str + TargetOptionGroupIdentifier: str + TargetOptionGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateBlueGreenDeploymentRequestRequestTypeDef(BaseModel): + BlueGreenDeploymentName: str + Source: str + TargetEngineVersion: Optional[str] = None + TargetDBParameterGroupName: Optional[str] = None + TargetDBClusterParameterGroupName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TargetDBInstanceClass: Optional[str] = None + UpgradeTargetStorageConfig: Optional[bool] = None + +class CreateCustomDBEngineVersionMessageRequestTypeDef(BaseModel): + Engine: str + EngineVersion: str + DatabaseInstallationFilesS3BucketName: Optional[str] = None + DatabaseInstallationFilesS3Prefix: Optional[str] = None + ImageId: Optional[str] = None + KMSKeyId: Optional[str] = None + Description: Optional[str] = None + Manifest: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SourceCustomDbEngineVersionIdentifier: Optional[str] = None + UseAwsProvidedLatestImage: Optional[bool] = None + +class CreateDBClusterEndpointMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + DBClusterEndpointIdentifier: str + EndpointType: str + StaticMembers: Optional[Sequence[str]] = None + ExcludedMembers: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + DBParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBClusterSnapshotMessageRequestTypeDef(BaseModel): + DBClusterSnapshotIdentifier: str + DBClusterIdentifier: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + DBParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBProxyEndpointRequestRequestTypeDef(BaseModel): + DBProxyName: str + DBProxyEndpointName: str + VpcSubnetIds: Sequence[str] + VpcSecurityGroupIds: Optional[Sequence[str]] = None + TargetRole: Optional[DBProxyEndpointTargetRoleType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBSecurityGroupMessageRequestTypeDef(BaseModel): + DBSecurityGroupName: str + DBSecurityGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBSnapshotMessageRequestTypeDef(BaseModel): + DBSnapshotIdentifier: str + DBInstanceIdentifier: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDBSubnetGroupMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: str + DBSubnetGroupDescription: str + SubnetIds: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: str + SourceType: Optional[str] = None + EventCategories: Optional[Sequence[str]] = None + SourceIds: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateIntegrationMessageRequestTypeDef(BaseModel): + SourceArn: str + TargetArn: str + IntegrationName: str + KMSKeyId: Optional[str] = None + AdditionalEncryptionContext: Optional[Mapping[str, str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataFilter: Optional[str] = None + Description: Optional[str] = None + +class CreateOptionGroupMessageRequestTypeDef(BaseModel): + OptionGroupName: str + EngineName: str + MajorEngineVersion: str + OptionGroupDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTenantDatabaseMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + TenantDBName: str + MasterUsername: str + MasterUserPassword: str + CharacterSetName: Optional[str] = None + NcharCharacterSetName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DBClusterSnapshotTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + DBClusterSnapshotIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[datetime] = None + Engine: Optional[str] = None + EngineMode: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + PercentProgress: Optional[int] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DBClusterSnapshotArn: Optional[str] = None + SourceDBClusterSnapshotArn: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + TagList: Optional[List[TagTypeDef]] = None + DBSystemId: Optional[str] = None + StorageType: Optional[str] = None + DbClusterResourceId: Optional[str] = None + StorageThroughput: Optional[int] = None + +class DBSnapshotTenantDatabaseTypeDef(BaseModel): + DBSnapshotIdentifier: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + DbiResourceId: Optional[str] = None + EngineName: Optional[str] = None + SnapshotType: Optional[str] = None + TenantDatabaseCreateTime: Optional[datetime] = None + TenantDBName: Optional[str] = None + MasterUsername: Optional[str] = None + TenantDatabaseResourceId: Optional[str] = None + CharacterSetName: Optional[str] = None + DBSnapshotTenantDatabaseARN: Optional[str] = None + NcharCharacterSetName: Optional[str] = None + TagList: Optional[List[TagTypeDef]] = None + +class PurchaseReservedDBInstancesOfferingMessageRequestTypeDef(BaseModel): + ReservedDBInstancesOfferingId: str + ReservedDBInstanceId: Optional[str] = None + DBInstanceCount: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagListMessageTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OrderableDBInstanceOptionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + AvailabilityZoneGroup: Optional[str] = None + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + MultiAZCapable: Optional[bool] = None + ReadReplicaCapable: Optional[bool] = None + Vpc: Optional[bool] = None + SupportsStorageEncryption: Optional[bool] = None + StorageType: Optional[str] = None + SupportsIops: Optional[bool] = None + SupportsEnhancedMonitoring: Optional[bool] = None + SupportsIAMDatabaseAuthentication: Optional[bool] = None + SupportsPerformanceInsights: Optional[bool] = None + MinStorageSize: Optional[int] = None + MaxStorageSize: Optional[int] = None + MinIopsPerDbInstance: Optional[int] = None + MaxIopsPerDbInstance: Optional[int] = None + MinIopsPerGib: Optional[float] = None + MaxIopsPerGib: Optional[float] = None + AvailableProcessorFeatures: Optional[List[AvailableProcessorFeatureTypeDef]] = None + SupportedEngineModes: Optional[List[str]] = None + SupportsStorageAutoscaling: Optional[bool] = None + SupportsKerberosAuthentication: Optional[bool] = None + OutpostCapable: Optional[bool] = None + SupportedActivityStreamModes: Optional[List[str]] = None + SupportsGlobalDatabases: Optional[bool] = None + SupportsClusters: Optional[bool] = None + SupportedNetworkTypes: Optional[List[str]] = None + SupportsStorageThroughput: Optional[bool] = None + MinStorageThroughputPerDbInstance: Optional[int] = None + MaxStorageThroughputPerDbInstance: Optional[int] = None + MinStorageThroughputPerIops: Optional[float] = None + MaxStorageThroughputPerIops: Optional[float] = None + SupportsDedicatedLogVolume: Optional[bool] = None + +class BacktrackDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + BacktrackTo: TimestampTypeDef + Force: Optional[bool] = None + UseEarliestTimeOnPointInTimeUnavailable: Optional[bool] = None + +class BlueGreenDeploymentTypeDef(BaseModel): + BlueGreenDeploymentIdentifier: Optional[str] = None + BlueGreenDeploymentName: Optional[str] = None + Source: Optional[str] = None + Target: Optional[str] = None + SwitchoverDetails: Optional[List[SwitchoverDetailTypeDef]] = None + Tasks: Optional[List[BlueGreenDeploymentTaskTypeDef]] = None + Status: Optional[str] = None + StatusDetails: Optional[str] = None + CreateTime: Optional[datetime] = None + DeleteTime: Optional[datetime] = None + TagList: Optional[List[TagTypeDef]] = None + +class CertificateMessageTypeDef(BaseModel): + DefaultCertificateForNewLaunches: str + Certificates: List[CertificateTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyCertificatesResultTypeDef(BaseModel): + Certificate: CertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterPendingModifiedValuesTypeDef(BaseModel): + PendingCloudwatchLogsExports: Optional[PendingCloudwatchLogsExportsTypeDef] = None + DBClusterIdentifier: Optional[str] = None + MasterUserPassword: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + EngineVersion: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + AllocatedStorage: Optional[int] = None + RdsCustomClusterConfiguration: Optional[RdsCustomClusterConfigurationTypeDef] = None + Iops: Optional[int] = None + StorageType: Optional[str] = None + CertificateDetails: Optional[CertificateDetailsTypeDef] = None + +class DBProxyTargetGroupTypeDef(BaseModel): + DBProxyName: Optional[str] = None + TargetGroupName: Optional[str] = None + TargetGroupArn: Optional[str] = None + IsDefault: Optional[bool] = None + Status: Optional[str] = None + ConnectionPoolConfig: Optional[ConnectionPoolConfigurationInfoTypeDef] = None + CreatedDate: Optional[datetime] = None + UpdatedDate: Optional[datetime] = None + +class ModifyDBProxyTargetGroupRequestRequestTypeDef(BaseModel): + TargetGroupName: str + DBProxyName: str + ConnectionPoolConfig: Optional[ConnectionPoolConfigurationTypeDef] = None + NewName: Optional[str] = None + +class CopyDBClusterParameterGroupResultTypeDef(BaseModel): + DBClusterParameterGroup: DBClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterParameterGroupResultTypeDef(BaseModel): + DBClusterParameterGroup: DBClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupsMessageTypeDef(BaseModel): + Marker: str + DBClusterParameterGroups: List[DBClusterParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CopyDBParameterGroupResultTypeDef(BaseModel): + DBParameterGroup: DBParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBParameterGroupResultTypeDef(BaseModel): + DBParameterGroup: DBParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBParameterGroupsMessageTypeDef(BaseModel): + Marker: str + DBParameterGroups: List[DBParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + Engine: str + AvailabilityZones: Optional[Sequence[str]] = None + BackupRetentionPeriod: Optional[int] = None + CharacterSetName: Optional[str] = None + DatabaseName: Optional[str] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + DBSubnetGroupName: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + MasterUserPassword: Optional[str] = None + OptionGroupName: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSourceIdentifier: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + BacktrackWindow: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + EngineMode: Optional[str] = None + ScalingConfiguration: Optional[ScalingConfigurationTypeDef] = None + RdsCustomClusterConfiguration: Optional[RdsCustomClusterConfigurationTypeDef] = None + DeletionProtection: Optional[bool] = None + GlobalClusterIdentifier: Optional[str] = None + EnableHttpEndpoint: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + EnableGlobalWriteForwarding: Optional[bool] = None + DBClusterInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + StorageType: Optional[str] = None + Iops: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnableLimitlessDatabase: Optional[bool] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + NetworkType: Optional[str] = None + DBSystemId: Optional[str] = None + ManageMasterUserPassword: Optional[bool] = None + MasterUserSecretKmsKeyId: Optional[str] = None + EnableLocalWriteForwarding: Optional[bool] = None + CACertificateIdentifier: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + SourceRegion: Optional[str] = None + +class ModifyDBClusterMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + NewDBClusterIdentifier: Optional[str] = None + ApplyImmediately: Optional[bool] = None + BackupRetentionPeriod: Optional[int] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Port: Optional[int] = None + MasterUserPassword: Optional[str] = None + OptionGroupName: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + BacktrackWindow: Optional[int] = None + CloudwatchLogsExportConfiguration: Optional[CloudwatchLogsExportConfigurationTypeDef] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + DBInstanceParameterGroupName: Optional[str] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + ScalingConfiguration: Optional[ScalingConfigurationTypeDef] = None + DeletionProtection: Optional[bool] = None + EnableHttpEndpoint: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + EnableGlobalWriteForwarding: Optional[bool] = None + DBClusterInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + StorageType: Optional[str] = None + Iops: Optional[int] = None + AutoMinorVersionUpgrade: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + NetworkType: Optional[str] = None + ManageMasterUserPassword: Optional[bool] = None + RotateMasterUserPassword: Optional[bool] = None + MasterUserSecretKmsKeyId: Optional[str] = None + EngineMode: Optional[str] = None + AllowEngineModeChange: Optional[bool] = None + EnableLocalWriteForwarding: Optional[bool] = None + AwsBackupRecoveryPointArn: Optional[str] = None + EnableLimitlessDatabase: Optional[bool] = None + CACertificateIdentifier: Optional[str] = None + +class RestoreDBClusterFromS3MessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + Engine: str + MasterUsername: str + SourceEngine: str + SourceEngineVersion: str + S3BucketName: str + S3IngestionRoleArn: str + AvailabilityZones: Optional[Sequence[str]] = None + BackupRetentionPeriod: Optional[int] = None + CharacterSetName: Optional[str] = None + DatabaseName: Optional[str] = None + DBClusterParameterGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + DBSubnetGroupName: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUserPassword: Optional[str] = None + OptionGroupName: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + S3Prefix: Optional[str] = None + BacktrackWindow: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DeletionProtection: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + NetworkType: Optional[str] = None + ManageMasterUserPassword: Optional[bool] = None + MasterUserSecretKmsKeyId: Optional[str] = None + StorageType: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + +class RestoreDBClusterFromSnapshotMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + SnapshotIdentifier: str + Engine: str + AvailabilityZones: Optional[Sequence[str]] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + DBSubnetGroupName: Optional[str] = None + DatabaseName: Optional[str] = None + OptionGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + BacktrackWindow: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + EngineMode: Optional[str] = None + ScalingConfiguration: Optional[ScalingConfigurationTypeDef] = None + DBClusterParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + DBClusterInstanceClass: Optional[str] = None + StorageType: Optional[str] = None + Iops: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + NetworkType: Optional[str] = None + RdsCustomClusterConfiguration: Optional[RdsCustomClusterConfigurationTypeDef] = None + EngineLifecycleSupport: Optional[str] = None + +class RestoreDBClusterToPointInTimeMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + RestoreType: Optional[str] = None + SourceDBClusterIdentifier: Optional[str] = None + RestoreToTime: Optional[TimestampTypeDef] = None + UseLatestRestorableTime: Optional[bool] = None + Port: Optional[int] = None + DBSubnetGroupName: Optional[str] = None + OptionGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + BacktrackWindow: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + DBClusterParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + CopyTagsToSnapshot: Optional[bool] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + ScalingConfiguration: Optional[ScalingConfigurationTypeDef] = None + EngineMode: Optional[str] = None + DBClusterInstanceClass: Optional[str] = None + StorageType: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Iops: Optional[int] = None + ServerlessV2ScalingConfiguration: Optional[ServerlessV2ScalingConfigurationTypeDef] = None + NetworkType: Optional[str] = None + SourceDbClusterResourceId: Optional[str] = None + RdsCustomClusterConfiguration: Optional[RdsCustomClusterConfigurationTypeDef] = None + EngineLifecycleSupport: Optional[str] = None + +class CreateDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBInstanceClass: str + Engine: str + DBName: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUsername: Optional[str] = None + MasterUserPassword: Optional[str] = None + DBSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + DBParameterGroupName: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + Port: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + CharacterSetName: Optional[str] = None + NcharCharacterSetName: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DBClusterIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + TdeCredentialPassword: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + Domain: Optional[str] = None + DomainFqdn: Optional[str] = None + DomainOu: Optional[str] = None + DomainAuthSecretArn: Optional[str] = None + DomainDnsIps: Optional[Sequence[str]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + PromotionTier: Optional[int] = None + Timezone: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + ProcessorFeatures: Optional[Sequence[ProcessorFeatureTypeDef]] = None + DeletionProtection: Optional[bool] = None + MaxAllocatedStorage: Optional[int] = None + EnableCustomerOwnedIp: Optional[bool] = None + CustomIamInstanceProfile: Optional[str] = None + BackupTarget: Optional[str] = None + NetworkType: Optional[str] = None + StorageThroughput: Optional[int] = None + ManageMasterUserPassword: Optional[bool] = None + MasterUserSecretKmsKeyId: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + DBSystemId: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + MultiTenant: Optional[bool] = None + EngineLifecycleSupport: Optional[str] = None + +class CreateDBInstanceReadReplicaMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + SourceDBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + AvailabilityZone: Optional[str] = None + Port: Optional[int] = None + MultiAZ: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + DBParameterGroupName: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DBSubnetGroupName: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + StorageType: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + KmsKeyId: Optional[str] = None + PreSignedUrl: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + ProcessorFeatures: Optional[Sequence[ProcessorFeatureTypeDef]] = None + UseDefaultProcessorFeatures: Optional[bool] = None + DeletionProtection: Optional[bool] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + DomainFqdn: Optional[str] = None + DomainOu: Optional[str] = None + DomainAuthSecretArn: Optional[str] = None + DomainDnsIps: Optional[Sequence[str]] = None + ReplicaMode: Optional[ReplicaModeType] = None + MaxAllocatedStorage: Optional[int] = None + CustomIamInstanceProfile: Optional[str] = None + NetworkType: Optional[str] = None + StorageThroughput: Optional[int] = None + EnableCustomerOwnedIp: Optional[bool] = None + AllocatedStorage: Optional[int] = None + SourceDBClusterIdentifier: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + UpgradeStorageConfig: Optional[bool] = None + CACertificateIdentifier: Optional[str] = None + SourceRegion: Optional[str] = None + +class DBSnapshotTypeDef(BaseModel): + DBSnapshotIdentifier: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[datetime] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + VpcId: Optional[str] = None + InstanceCreateTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + PercentProgress: Optional[int] = None + SourceRegion: Optional[str] = None + SourceDBSnapshotIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DBSnapshotArn: Optional[str] = None + Timezone: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + ProcessorFeatures: Optional[List[ProcessorFeatureTypeDef]] = None + DbiResourceId: Optional[str] = None + TagList: Optional[List[TagTypeDef]] = None + OriginalSnapshotCreateTime: Optional[datetime] = None + SnapshotDatabaseTime: Optional[datetime] = None + SnapshotTarget: Optional[str] = None + StorageThroughput: Optional[int] = None + DBSystemId: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + MultiTenant: Optional[bool] = None + +class ModifyDBInstanceMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + AllocatedStorage: Optional[int] = None + DBInstanceClass: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + DBSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + ApplyImmediately: Optional[bool] = None + MasterUserPassword: Optional[str] = None + DBParameterGroupName: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AllowMajorVersionUpgrade: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + NewDBInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + TdeCredentialPassword: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + Domain: Optional[str] = None + DomainFqdn: Optional[str] = None + DomainOu: Optional[str] = None + DomainAuthSecretArn: Optional[str] = None + DomainDnsIps: Optional[Sequence[str]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + DBPortNumber: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + MonitoringRoleArn: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + DisableDomain: Optional[bool] = None + PromotionTier: Optional[int] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + CloudwatchLogsExportConfiguration: Optional[CloudwatchLogsExportConfigurationTypeDef] = None + ProcessorFeatures: Optional[Sequence[ProcessorFeatureTypeDef]] = None + UseDefaultProcessorFeatures: Optional[bool] = None + DeletionProtection: Optional[bool] = None + MaxAllocatedStorage: Optional[int] = None + CertificateRotationRestart: Optional[bool] = None + ReplicaMode: Optional[ReplicaModeType] = None + EnableCustomerOwnedIp: Optional[bool] = None + AwsBackupRecoveryPointArn: Optional[str] = None + AutomationMode: Optional[AutomationModeType] = None + ResumeFullAutomationModeMinutes: Optional[int] = None + NetworkType: Optional[str] = None + StorageThroughput: Optional[int] = None + ManageMasterUserPassword: Optional[bool] = None + RotateMasterUserPassword: Optional[bool] = None + MasterUserSecretKmsKeyId: Optional[str] = None + Engine: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + MultiTenant: Optional[bool] = None + +class PendingModifiedValuesTypeDef(BaseModel): + DBInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUserPassword: Optional[str] = None + Port: Optional[int] = None + BackupRetentionPeriod: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + DBInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + PendingCloudwatchLogsExports: Optional[PendingCloudwatchLogsExportsTypeDef] = None + ProcessorFeatures: Optional[List[ProcessorFeatureTypeDef]] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + AutomationMode: Optional[AutomationModeType] = None + ResumeFullAutomationModeTime: Optional[datetime] = None + StorageThroughput: Optional[int] = None + Engine: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + MultiTenant: Optional[bool] = None + +class RestoreDBInstanceFromDBSnapshotMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBSnapshotIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + MultiAZ: Optional[bool] = None + PubliclyAccessible: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + DBName: Optional[str] = None + Engine: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + TdeCredentialPassword: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Domain: Optional[str] = None + DomainFqdn: Optional[str] = None + DomainOu: Optional[str] = None + DomainAuthSecretArn: Optional[str] = None + DomainDnsIps: Optional[Sequence[str]] = None + CopyTagsToSnapshot: Optional[bool] = None + DomainIAMRoleName: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + ProcessorFeatures: Optional[Sequence[ProcessorFeatureTypeDef]] = None + UseDefaultProcessorFeatures: Optional[bool] = None + DBParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + EnableCustomerOwnedIp: Optional[bool] = None + CustomIamInstanceProfile: Optional[str] = None + BackupTarget: Optional[str] = None + NetworkType: Optional[str] = None + StorageThroughput: Optional[int] = None + DBClusterSnapshotIdentifier: Optional[str] = None + AllocatedStorage: Optional[int] = None + DedicatedLogVolume: Optional[bool] = None + CACertificateIdentifier: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + +class RestoreDBInstanceFromS3MessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + DBInstanceClass: str + Engine: str + SourceEngine: str + SourceEngineVersion: str + S3BucketName: str + S3IngestionRoleArn: str + DBName: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUsername: Optional[str] = None + MasterUserPassword: Optional[str] = None + DBSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + DBParameterGroupName: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + Port: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageType: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + S3Prefix: Optional[str] = None + EnablePerformanceInsights: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + ProcessorFeatures: Optional[Sequence[ProcessorFeatureTypeDef]] = None + UseDefaultProcessorFeatures: Optional[bool] = None + DeletionProtection: Optional[bool] = None + MaxAllocatedStorage: Optional[int] = None + NetworkType: Optional[str] = None + StorageThroughput: Optional[int] = None + ManageMasterUserPassword: Optional[bool] = None + MasterUserSecretKmsKeyId: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + CACertificateIdentifier: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + +class RestoreDBInstanceToPointInTimeMessageRequestTypeDef(BaseModel): + TargetDBInstanceIdentifier: str + SourceDBInstanceIdentifier: Optional[str] = None + RestoreTime: Optional[TimestampTypeDef] = None + UseLatestRestorableTime: Optional[bool] = None + DBInstanceClass: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroupName: Optional[str] = None + MultiAZ: Optional[bool] = None + PubliclyAccessible: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + LicenseModel: Optional[str] = None + DBName: Optional[str] = None + Engine: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + TdeCredentialPassword: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + Domain: Optional[str] = None + DomainIAMRoleName: Optional[str] = None + DomainFqdn: Optional[str] = None + DomainOu: Optional[str] = None + DomainAuthSecretArn: Optional[str] = None + DomainDnsIps: Optional[Sequence[str]] = None + EnableIAMDatabaseAuthentication: Optional[bool] = None + EnableCloudwatchLogsExports: Optional[Sequence[str]] = None + ProcessorFeatures: Optional[Sequence[ProcessorFeatureTypeDef]] = None + UseDefaultProcessorFeatures: Optional[bool] = None + DBParameterGroupName: Optional[str] = None + DeletionProtection: Optional[bool] = None + SourceDbiResourceId: Optional[str] = None + MaxAllocatedStorage: Optional[int] = None + SourceDBInstanceAutomatedBackupsArn: Optional[str] = None + EnableCustomerOwnedIp: Optional[bool] = None + CustomIamInstanceProfile: Optional[str] = None + BackupTarget: Optional[str] = None + NetworkType: Optional[str] = None + StorageThroughput: Optional[int] = None + AllocatedStorage: Optional[int] = None + DedicatedLogVolume: Optional[bool] = None + CACertificateIdentifier: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + +class CreateDBProxyEndpointResponseTypeDef(BaseModel): + DBProxyEndpoint: DBProxyEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBProxyEndpointResponseTypeDef(BaseModel): + DBProxyEndpoint: DBProxyEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBProxyEndpointsResponseTypeDef(BaseModel): + DBProxyEndpoints: List[DBProxyEndpointTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBProxyEndpointResponseTypeDef(BaseModel): + DBProxyEndpoint: DBProxyEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBProxyRequestRequestTypeDef(BaseModel): + DBProxyName: str + EngineFamily: EngineFamilyType + Auth: Sequence[UserAuthConfigTypeDef] + RoleArn: str + VpcSubnetIds: Sequence[str] + VpcSecurityGroupIds: Optional[Sequence[str]] = None + RequireTLS: Optional[bool] = None + IdleClientTimeout: Optional[int] = None + DebugLogging: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ModifyDBProxyRequestRequestTypeDef(BaseModel): + DBProxyName: str + NewDBProxyName: Optional[str] = None + Auth: Optional[Sequence[UserAuthConfigTypeDef]] = None + RequireTLS: Optional[bool] = None + IdleClientTimeout: Optional[int] = None + DebugLogging: Optional[bool] = None + RoleArn: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + +class DBClusterAutomatedBackupTypeDef(BaseModel): + Engine: Optional[str] = None + VpcId: Optional[str] = None + DBClusterAutomatedBackupsArn: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + RestoreWindow: Optional[RestoreWindowTypeDef] = None + MasterUsername: Optional[str] = None + DbClusterResourceId: Optional[str] = None + Region: Optional[str] = None + LicenseModel: Optional[str] = None + Status: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + ClusterCreateTime: Optional[datetime] = None + StorageEncrypted: Optional[bool] = None + AllocatedStorage: Optional[int] = None + EngineVersion: Optional[str] = None + DBClusterArn: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + EngineMode: Optional[str] = None + AvailabilityZones: Optional[List[str]] = None + Port: Optional[int] = None + KmsKeyId: Optional[str] = None + StorageType: Optional[str] = None + Iops: Optional[int] = None + AwsBackupRecoveryPointArn: Optional[str] = None + StorageThroughput: Optional[int] = None + +class DBClusterBacktrackMessageTypeDef(BaseModel): + Marker: str + DBClusterBacktracks: List[DBClusterBacktrackTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterEndpointMessageTypeDef(BaseModel): + Marker: str + DBClusterEndpoints: List[DBClusterEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterParameterGroupDetailsTypeDef(BaseModel): + Parameters: List[ParameterOutputTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBParameterGroupDetailsTypeDef(BaseModel): + Parameters: List[ParameterOutputTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class EngineDefaultsTypeDef(BaseModel): + DBParameterGroupFamily: Optional[str] = None + Marker: Optional[str] = None + Parameters: Optional[List[ParameterOutputTypeDef]] = None + +class DBClusterSnapshotAttributesResultTypeDef(BaseModel): + DBClusterSnapshotIdentifier: Optional[str] = None + DBClusterSnapshotAttributes: Optional[List[DBClusterSnapshotAttributeTypeDef]] = None + +class DBEngineVersionResponseTypeDef(BaseModel): + Engine: str + EngineVersion: str + DBParameterGroupFamily: str + DBEngineDescription: str + DBEngineVersionDescription: str + DefaultCharacterSet: CharacterSetTypeDef + Image: CustomDBEngineVersionAMITypeDef + DBEngineMediaType: str + SupportedCharacterSets: List[CharacterSetTypeDef] + SupportedNcharCharacterSets: List[CharacterSetTypeDef] + ValidUpgradeTarget: List[UpgradeTargetTypeDef] + SupportedTimezones: List[TimezoneTypeDef] + ExportableLogTypes: List[str] + SupportsLogExportsToCloudwatchLogs: bool + SupportsReadReplica: bool + SupportedEngineModes: List[str] + SupportedFeatureNames: List[str] + Status: str + SupportsParallelQuery: bool + SupportsGlobalDatabases: bool + MajorEngineVersion: str + DatabaseInstallationFilesS3BucketName: str + DatabaseInstallationFilesS3Prefix: str + DBEngineVersionArn: str + KMSKeyId: str + CreateTime: datetime + TagList: List[TagTypeDef] + SupportsBabelfish: bool + CustomDBEngineVersionManifest: str + SupportsLimitlessDatabase: bool + SupportsCertificateRotationWithoutRestart: bool + SupportedCACertificateIdentifiers: List[str] + SupportsLocalWriteForwarding: bool + SupportsIntegrations: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DBEngineVersionTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + DBEngineDescription: Optional[str] = None + DBEngineVersionDescription: Optional[str] = None + DefaultCharacterSet: Optional[CharacterSetTypeDef] = None + Image: Optional[CustomDBEngineVersionAMITypeDef] = None + DBEngineMediaType: Optional[str] = None + SupportedCharacterSets: Optional[List[CharacterSetTypeDef]] = None + SupportedNcharCharacterSets: Optional[List[CharacterSetTypeDef]] = None + ValidUpgradeTarget: Optional[List[UpgradeTargetTypeDef]] = None + SupportedTimezones: Optional[List[TimezoneTypeDef]] = None + ExportableLogTypes: Optional[List[str]] = None + SupportsLogExportsToCloudwatchLogs: Optional[bool] = None + SupportsReadReplica: Optional[bool] = None + SupportedEngineModes: Optional[List[str]] = None + SupportedFeatureNames: Optional[List[str]] = None + Status: Optional[str] = None + SupportsParallelQuery: Optional[bool] = None + SupportsGlobalDatabases: Optional[bool] = None + MajorEngineVersion: Optional[str] = None + DatabaseInstallationFilesS3BucketName: Optional[str] = None + DatabaseInstallationFilesS3Prefix: Optional[str] = None + DBEngineVersionArn: Optional[str] = None + KMSKeyId: Optional[str] = None + CreateTime: Optional[datetime] = None + TagList: Optional[List[TagTypeDef]] = None + SupportsBabelfish: Optional[bool] = None + CustomDBEngineVersionManifest: Optional[str] = None + SupportsLimitlessDatabase: Optional[bool] = None + SupportsCertificateRotationWithoutRestart: Optional[bool] = None + SupportedCACertificateIdentifiers: Optional[List[str]] = None + SupportsLocalWriteForwarding: Optional[bool] = None + SupportsIntegrations: Optional[bool] = None + +class DBInstanceAutomatedBackupTypeDef(BaseModel): + DBInstanceArn: Optional[str] = None + DbiResourceId: Optional[str] = None + Region: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + RestoreWindow: Optional[RestoreWindowTypeDef] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + VpcId: Optional[str] = None + InstanceCreateTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + TdeCredentialArn: Optional[str] = None + Encrypted: Optional[bool] = None + StorageType: Optional[str] = None + KmsKeyId: Optional[str] = None + Timezone: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + BackupRetentionPeriod: Optional[int] = None + DBInstanceAutomatedBackupsArn: Optional[str] = None + DBInstanceAutomatedBackupsReplications: Optional[ List[DBInstanceAutomatedBackupsReplicationTypeDef] ] = None + BackupTarget: Optional[str] = None + StorageThroughput: Optional[int] = None + AwsBackupRecoveryPointArn: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + MultiTenant: Optional[bool] = None + +class DBProxyTargetTypeDef(BaseModel): + TargetArn: Optional[str] = None + Endpoint: Optional[str] = None + TrackedClusterId: Optional[str] = None + RdsResourceId: Optional[str] = None + Port: Optional[int] = None + Type: Optional[TargetTypeType] = None + Role: Optional[TargetRoleType] = None + TargetHealth: Optional[TargetHealthTypeDef] = None + +class DBProxyTypeDef(BaseModel): + DBProxyName: Optional[str] = None + DBProxyArn: Optional[str] = None + Status: Optional[DBProxyStatusType] = None + EngineFamily: Optional[str] = None + VpcId: Optional[str] = None + VpcSecurityGroupIds: Optional[List[str]] = None + VpcSubnetIds: Optional[List[str]] = None + Auth: Optional[List[UserAuthConfigInfoTypeDef]] = None + RoleArn: Optional[str] = None + Endpoint: Optional[str] = None + RequireTLS: Optional[bool] = None + IdleClientTimeout: Optional[int] = None + DebugLogging: Optional[bool] = None + CreatedDate: Optional[datetime] = None + UpdatedDate: Optional[datetime] = None + +class DBSecurityGroupTypeDef(BaseModel): + OwnerId: Optional[str] = None + DBSecurityGroupName: Optional[str] = None + DBSecurityGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + EC2SecurityGroups: Optional[List[EC2SecurityGroupTypeDef]] = None + IPRanges: Optional[List[IPRangeTypeDef]] = None + DBSecurityGroupArn: Optional[str] = None + +class DescribeDBShardGroupsResponseTypeDef(BaseModel): + DBShardGroups: List[DBShardGroupTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DBSnapshotAttributesResultTypeDef(BaseModel): + DBSnapshotIdentifier: Optional[str] = None + DBSnapshotAttributes: Optional[List[DBSnapshotAttributeTypeDef]] = None + +class DescribeBlueGreenDeploymentsRequestRequestTypeDef(BaseModel): + BlueGreenDeploymentIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeCertificatesMessageRequestTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterAutomatedBackupsMessageRequestTypeDef(BaseModel): + DbClusterResourceId: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterBacktracksMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: str + BacktrackIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterEndpointsMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterEndpointIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterParameterGroupsMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterParametersMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBClusterSnapshotsMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbClusterResourceId: Optional[str] = None + +class DescribeDBClustersMessageRequestTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + +class DescribeDBEngineVersionsMessageRequestTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + DefaultOnly: Optional[bool] = None + ListSupportedCharacterSets: Optional[bool] = None + ListSupportedTimezones: Optional[bool] = None + IncludeAll: Optional[bool] = None + +class DescribeDBInstanceAutomatedBackupsMessageRequestTypeDef(BaseModel): + DbiResourceId: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + DBInstanceAutomatedBackupsArn: Optional[str] = None + +class DescribeDBInstancesMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBLogFilesMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: str + FilenameContains: Optional[str] = None + FileLastWritten: Optional[int] = None + FileSize: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBParameterGroupsMessageRequestTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBProxiesRequestRequestTypeDef(BaseModel): + DBProxyName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeDBProxyEndpointsRequestRequestTypeDef(BaseModel): + DBProxyName: Optional[str] = None + DBProxyEndpointName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeDBProxyTargetGroupsRequestRequestTypeDef(BaseModel): + DBProxyName: str + TargetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeDBProxyTargetsRequestRequestTypeDef(BaseModel): + DBProxyName: str + TargetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeDBRecommendationsMessageRequestTypeDef(BaseModel): + LastUpdatedAfter: Optional[TimestampTypeDef] = None + LastUpdatedBefore: Optional[TimestampTypeDef] = None + Locale: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBSecurityGroupsMessageRequestTypeDef(BaseModel): + DBSecurityGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDBShardGroupsMessageRequestTypeDef(BaseModel): + DBShardGroupIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeDBSnapshotTenantDatabasesMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + DbiResourceId: Optional[str] = None + +class DescribeDBSnapshotsMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbiResourceId: Optional[str] = None + +class DescribeDBSubnetGroupsMessageRequestTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEngineDefaultClusterParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEngineDefaultParametersMessageRequestTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventCategoriesMessageRequestTypeDef(BaseModel): + SourceType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeEventSubscriptionsMessageRequestTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventsMessageRequestTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeExportTasksMessageRequestTypeDef(BaseModel): + ExportTaskIdentifier: Optional[str] = None + SourceArn: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + SourceType: Optional[ExportSourceTypeType] = None + +class DescribeGlobalClustersMessageRequestTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeIntegrationsMessageRequestTypeDef(BaseModel): + IntegrationIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeOptionGroupOptionsMessageRequestTypeDef(BaseModel): + EngineName: str + MajorEngineVersion: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeOptionGroupsMessageRequestTypeDef(BaseModel): + OptionGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + EngineName: Optional[str] = None + MajorEngineVersion: Optional[str] = None + +class DescribeOrderableDBInstanceOptionsMessageRequestTypeDef(BaseModel): + Engine: str + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + AvailabilityZoneGroup: Optional[str] = None + Vpc: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribePendingMaintenanceActionsMessageRequestTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeReservedDBInstancesMessageRequestTypeDef(BaseModel): + ReservedDBInstanceId: Optional[str] = None + ReservedDBInstancesOfferingId: Optional[str] = None + DBInstanceClass: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MultiAZ: Optional[bool] = None + LeaseId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReservedDBInstancesOfferingsMessageRequestTypeDef(BaseModel): + ReservedDBInstancesOfferingId: Optional[str] = None + DBInstanceClass: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MultiAZ: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeSourceRegionsMessageRequestTypeDef(BaseModel): + RegionName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeTenantDatabasesMessageRequestTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + TenantDBName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class ListTagsForResourceMessageRequestTypeDef(BaseModel): + ResourceName: str + Filters: Optional[Sequence[FilterTypeDef]] = None + +class DescribeBlueGreenDeploymentsRequestDescribeBlueGreenDeploymentsPaginateTypeDef(BaseModel): + BlueGreenDeploymentIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCertificatesMessageDescribeCertificatesPaginateTypeDef(BaseModel): + CertificateIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterBacktracksMessageDescribeDBClusterBacktracksPaginateTypeDef(BaseModel): + DBClusterIdentifier: str + BacktrackIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterEndpointsMessageDescribeDBClusterEndpointsPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterEndpointIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterParameterGroupsMessageDescribeDBClusterParameterGroupsPaginateTypeDef(BaseModel): + DBClusterParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterParametersMessageDescribeDBClusterParametersPaginateTypeDef(BaseModel): + DBClusterParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterSnapshotsMessageDescribeDBClusterSnapshotsPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbClusterResourceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClustersMessageDescribeDBClustersPaginateTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeShared: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBEngineVersionsMessageDescribeDBEngineVersionsPaginateTypeDef(BaseModel): + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + DBParameterGroupFamily: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DefaultOnly: Optional[bool] = None + ListSupportedCharacterSets: Optional[bool] = None + ListSupportedTimezones: Optional[bool] = None + IncludeAll: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBInstanceAutomatedBackupsMessageDescribeDBInstanceAutomatedBackupsPaginateTypeDef(BaseModel): + DbiResourceId: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + DBInstanceAutomatedBackupsArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBInstancesMessageDescribeDBInstancesPaginateTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBLogFilesMessageDescribeDBLogFilesPaginateTypeDef(BaseModel): + DBInstanceIdentifier: str + FilenameContains: Optional[str] = None + FileLastWritten: Optional[int] = None + FileSize: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBParameterGroupsMessageDescribeDBParameterGroupsPaginateTypeDef(BaseModel): + DBParameterGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBParametersMessageDescribeDBParametersPaginateTypeDef(BaseModel): + DBParameterGroupName: str + Source: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBProxiesRequestDescribeDBProxiesPaginateTypeDef(BaseModel): + DBProxyName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBProxyEndpointsRequestDescribeDBProxyEndpointsPaginateTypeDef(BaseModel): + DBProxyName: Optional[str] = None + DBProxyEndpointName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBProxyTargetGroupsRequestDescribeDBProxyTargetGroupsPaginateTypeDef(BaseModel): + DBProxyName: str + TargetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBProxyTargetsRequestDescribeDBProxyTargetsPaginateTypeDef(BaseModel): + DBProxyName: str + TargetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBRecommendationsMessageDescribeDBRecommendationsPaginateTypeDef(BaseModel): + LastUpdatedAfter: Optional[TimestampTypeDef] = None + LastUpdatedBefore: Optional[TimestampTypeDef] = None + Locale: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBSecurityGroupsMessageDescribeDBSecurityGroupsPaginateTypeDef(BaseModel): + DBSecurityGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBSnapshotsMessageDescribeDBSnapshotsPaginateTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbiResourceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBSubnetGroupsMessageDescribeDBSubnetGroupsPaginateTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEngineDefaultClusterParametersMessageDescribeEngineDefaultClusterParametersPaginateTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEngineDefaultParametersMessageDescribeEngineDefaultParametersPaginateTypeDef(BaseModel): + DBParameterGroupFamily: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventSubscriptionsMessageDescribeEventSubscriptionsPaginateTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + EventCategories: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeExportTasksMessageDescribeExportTasksPaginateTypeDef(BaseModel): + ExportTaskIdentifier: Optional[str] = None + SourceArn: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + SourceType: Optional[ExportSourceTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGlobalClustersMessageDescribeGlobalClustersPaginateTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIntegrationsMessageDescribeIntegrationsPaginateTypeDef(BaseModel): + IntegrationIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOptionGroupOptionsMessageDescribeOptionGroupOptionsPaginateTypeDef(BaseModel): + EngineName: str + MajorEngineVersion: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOptionGroupsMessageDescribeOptionGroupsPaginateTypeDef(BaseModel): + OptionGroupName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + EngineName: Optional[str] = None + MajorEngineVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrderableDBInstanceOptionsMessageDescribeOrderableDBInstanceOptionsPaginateTypeDef(BaseModel): + Engine: str + EngineVersion: Optional[str] = None + DBInstanceClass: Optional[str] = None + LicenseModel: Optional[str] = None + AvailabilityZoneGroup: Optional[str] = None + Vpc: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedDBInstancesMessageDescribeReservedDBInstancesPaginateTypeDef(BaseModel): + ReservedDBInstanceId: Optional[str] = None + ReservedDBInstancesOfferingId: Optional[str] = None + DBInstanceClass: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MultiAZ: Optional[bool] = None + LeaseId: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedDBInstancesOfferingsMessageDescribeReservedDBInstancesOfferingsPaginateTypeDef(BaseModel): + ReservedDBInstancesOfferingId: Optional[str] = None + DBInstanceClass: Optional[str] = None + Duration: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MultiAZ: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSourceRegionsMessageDescribeSourceRegionsPaginateTypeDef(BaseModel): + RegionName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTenantDatabasesMessageDescribeTenantDatabasesPaginateTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + TenantDBName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DownloadDBLogFilePortionMessageDownloadDBLogFilePortionPaginateTypeDef(BaseModel): + DBInstanceIdentifier: str + LogFileName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDBClusterSnapshotsMessageDBClusterSnapshotAvailableWaitTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbClusterResourceId: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBClusterSnapshotsMessageDBClusterSnapshotDeletedWaitTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + DBClusterSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbClusterResourceId: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBClustersMessageDBClusterAvailableWaitTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBClustersMessageDBClusterDeletedWaitTypeDef(BaseModel): + DBClusterIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBInstancesMessageDBInstanceAvailableWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBInstancesMessageDBInstanceDeletedWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBSnapshotsMessageDBSnapshotAvailableWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbiResourceId: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBSnapshotsMessageDBSnapshotCompletedWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbiResourceId: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBSnapshotsMessageDBSnapshotDeletedWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBSnapshotIdentifier: Optional[str] = None + SnapshotType: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + IncludeShared: Optional[bool] = None + IncludePublic: Optional[bool] = None + DbiResourceId: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTenantDatabasesMessageTenantDatabaseAvailableWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + TenantDBName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTenantDatabasesMessageTenantDatabaseDeletedWaitTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + TenantDBName: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeDBLogFilesResponseTypeDef(BaseModel): + DescribeDBLogFiles: List[DescribeDBLogFilesDetailsTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventCategoriesMessageTypeDef(BaseModel): + EventCategoriesMapList: List[EventCategoriesMapTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EventsMessageTypeDef(BaseModel): + Marker: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportTasksMessageTypeDef(BaseModel): + Marker: str + ExportTasks: List[ExportTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalClusterTypeDef(BaseModel): + GlobalClusterIdentifier: Optional[str] = None + GlobalClusterResourceId: Optional[str] = None + GlobalClusterArn: Optional[str] = None + Status: Optional[str] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + EngineLifecycleSupport: Optional[str] = None + DatabaseName: Optional[str] = None + StorageEncrypted: Optional[bool] = None + DeletionProtection: Optional[bool] = None + GlobalClusterMembers: Optional[List[GlobalClusterMemberTypeDef]] = None + FailoverState: Optional[FailoverStateTypeDef] = None + +class IntegrationResponseTypeDef(BaseModel): + SourceArn: str + TargetArn: str + IntegrationName: str + IntegrationArn: str + KMSKeyId: str + AdditionalEncryptionContext: Dict[str, str] + Status: IntegrationStatusType + Tags: List[TagTypeDef] + CreateTime: datetime + Errors: List[IntegrationErrorTypeDef] + DataFilter: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class IntegrationTypeDef(BaseModel): + SourceArn: Optional[str] = None + TargetArn: Optional[str] = None + IntegrationName: Optional[str] = None + IntegrationArn: Optional[str] = None + KMSKeyId: Optional[str] = None + AdditionalEncryptionContext: Optional[Dict[str, str]] = None + Status: Optional[IntegrationStatusType] = None + Tags: Optional[List[TagTypeDef]] = None + CreateTime: Optional[datetime] = None + Errors: Optional[List[IntegrationErrorTypeDef]] = None + DataFilter: Optional[str] = None + Description: Optional[str] = None + +class OptionGroupOptionSettingTypeDef(BaseModel): + SettingName: Optional[str] = None + SettingDescription: Optional[str] = None + DefaultValue: Optional[str] = None + ApplyType: Optional[str] = None + AllowedValues: Optional[str] = None + IsModifiable: Optional[bool] = None + IsRequired: Optional[bool] = None + MinimumEngineVersionPerAllowedValue: Optional[ List[MinimumEngineVersionPerAllowedValueTypeDef] ] = None + +class ModifyDBRecommendationMessageRequestTypeDef(BaseModel): + RecommendationId: str + Locale: Optional[str] = None + Status: Optional[str] = None + RecommendedActionUpdates: Optional[Sequence[RecommendedActionUpdateTypeDef]] = None + +class OptionConfigurationTypeDef(BaseModel): + OptionName: str + Port: Optional[int] = None + OptionVersion: Optional[str] = None + DBSecurityGroupMemberships: Optional[Sequence[str]] = None + VpcSecurityGroupMemberships: Optional[Sequence[str]] = None + OptionSettings: Optional[Sequence[OptionSettingTypeDef]] = None + +class OptionTypeDef(BaseModel): + OptionName: Optional[str] = None + OptionDescription: Optional[str] = None + Persistent: Optional[bool] = None + Permanent: Optional[bool] = None + Port: Optional[int] = None + OptionVersion: Optional[str] = None + OptionSettings: Optional[List[OptionSettingTypeDef]] = None + DBSecurityGroupMemberships: Optional[List[DBSecurityGroupMembershipTypeDef]] = None + VpcSecurityGroupMemberships: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + SubnetOutpost: Optional[OutpostTypeDef] = None + SubnetStatus: Optional[str] = None + +class ResourcePendingMaintenanceActionsTypeDef(BaseModel): + ResourceIdentifier: Optional[str] = None + PendingMaintenanceActionDetails: Optional[List[PendingMaintenanceActionTypeDef]] = None + +class PerformanceInsightsMetricQueryTypeDef(BaseModel): + GroupBy: Optional[PerformanceInsightsMetricDimensionGroupTypeDef] = None + Metric: Optional[str] = None + +class ValidStorageOptionsTypeDef(BaseModel): + StorageType: Optional[str] = None + StorageSize: Optional[List[RangeTypeDef]] = None + ProvisionedIops: Optional[List[RangeTypeDef]] = None + IopsToStorageRatio: Optional[List[DoubleRangeTypeDef]] = None + SupportsStorageAutoscaling: Optional[bool] = None + ProvisionedStorageThroughput: Optional[List[RangeTypeDef]] = None + StorageThroughputToIopsRatio: Optional[List[DoubleRangeTypeDef]] = None + +class ReservedDBInstanceTypeDef(BaseModel): + ReservedDBInstanceId: Optional[str] = None + ReservedDBInstancesOfferingId: Optional[str] = None + DBInstanceClass: Optional[str] = None + StartTime: Optional[datetime] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + DBInstanceCount: Optional[int] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MultiAZ: Optional[bool] = None + State: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + ReservedDBInstanceArn: Optional[str] = None + LeaseId: Optional[str] = None + +class ReservedDBInstancesOfferingTypeDef(BaseModel): + ReservedDBInstancesOfferingId: Optional[str] = None + DBInstanceClass: Optional[str] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + ProductDescription: Optional[str] = None + OfferingType: Optional[str] = None + MultiAZ: Optional[bool] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + +class ReferenceDetailsTypeDef(BaseModel): + ScalarReferenceDetails: Optional[ScalarReferenceDetailsTypeDef] = None + +class SourceRegionMessageTypeDef(BaseModel): + Marker: str + SourceRegions: List[SourceRegionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TenantDatabaseTypeDef(BaseModel): + TenantDatabaseCreateTime: Optional[datetime] = None + DBInstanceIdentifier: Optional[str] = None + TenantDBName: Optional[str] = None + Status: Optional[str] = None + MasterUsername: Optional[str] = None + DbiResourceId: Optional[str] = None + TenantDatabaseResourceId: Optional[str] = None + TenantDatabaseARN: Optional[str] = None + CharacterSetName: Optional[str] = None + NcharCharacterSetName: Optional[str] = None + DeletionProtection: Optional[bool] = None + PendingModifiedValues: Optional[TenantDatabasePendingModifiedValuesTypeDef] = None + TagList: Optional[List[TagTypeDef]] = None + +class CopyDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterSnapshotMessageTypeDef(BaseModel): + Marker: str + DBClusterSnapshots: List[DBClusterSnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterSnapshotResultTypeDef(BaseModel): + DBClusterSnapshot: DBClusterSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBSnapshotTenantDatabasesMessageTypeDef(BaseModel): + Marker: str + DBSnapshotTenantDatabases: List[DBSnapshotTenantDatabaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OrderableDBInstanceOptionsMessageTypeDef(BaseModel): + OrderableDBInstanceOptions: List[OrderableDBInstanceOptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBlueGreenDeploymentResponseTypeDef(BaseModel): + BlueGreenDeployment: BlueGreenDeploymentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBlueGreenDeploymentResponseTypeDef(BaseModel): + BlueGreenDeployment: BlueGreenDeploymentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBlueGreenDeploymentsResponseTypeDef(BaseModel): + BlueGreenDeployments: List[BlueGreenDeploymentTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class SwitchoverBlueGreenDeploymentResponseTypeDef(BaseModel): + BlueGreenDeployment: BlueGreenDeploymentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AvailabilityZones: Optional[List[str]] = None + BackupRetentionPeriod: Optional[int] = None + CharacterSetName: Optional[str] = None + DatabaseName: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBClusterParameterGroup: Optional[str] = None + DBSubnetGroup: Optional[str] = None + Status: Optional[str] = None + AutomaticRestartTime: Optional[datetime] = None + PercentProgress: Optional[str] = None + EarliestRestorableTime: Optional[datetime] = None + Endpoint: Optional[str] = None + ReaderEndpoint: Optional[str] = None + CustomEndpoints: Optional[List[str]] = None + MultiAZ: Optional[bool] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + LatestRestorableTime: Optional[datetime] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + DBClusterOptionGroupMemberships: Optional[List[DBClusterOptionGroupStatusTypeDef]] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReplicationSourceIdentifier: Optional[str] = None + ReadReplicaIdentifiers: Optional[List[str]] = None + StatusInfos: Optional[List[DBClusterStatusInfoTypeDef]] = None + DBClusterMembers: Optional[List[DBClusterMemberTypeDef]] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + HostedZoneId: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterResourceId: Optional[str] = None + DBClusterArn: Optional[str] = None + AssociatedRoles: Optional[List[DBClusterRoleTypeDef]] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + CloneGroupId: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + EarliestBacktrackTime: Optional[datetime] = None + BacktrackWindow: Optional[int] = None + BacktrackConsumedChangeRecords: Optional[int] = None + EnabledCloudwatchLogsExports: Optional[List[str]] = None + Capacity: Optional[int] = None + EngineMode: Optional[str] = None + ScalingConfigurationInfo: Optional[ScalingConfigurationInfoTypeDef] = None + RdsCustomClusterConfiguration: Optional[RdsCustomClusterConfigurationTypeDef] = None + DeletionProtection: Optional[bool] = None + HttpEndpointEnabled: Optional[bool] = None + ActivityStreamMode: Optional[ActivityStreamModeType] = None + ActivityStreamStatus: Optional[ActivityStreamStatusType] = None + ActivityStreamKmsKeyId: Optional[str] = None + ActivityStreamKinesisStreamName: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + CrossAccountClone: Optional[bool] = None + DomainMemberships: Optional[List[DomainMembershipTypeDef]] = None + TagList: Optional[List[TagTypeDef]] = None + GlobalWriteForwardingStatus: Optional[WriteForwardingStatusType] = None + GlobalWriteForwardingRequested: Optional[bool] = None + PendingModifiedValues: Optional[ClusterPendingModifiedValuesTypeDef] = None + DBClusterInstanceClass: Optional[str] = None + StorageType: Optional[str] = None + Iops: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + ServerlessV2ScalingConfiguration: Optional[ ServerlessV2ScalingConfigurationInfoTypeDef ] = None + NetworkType: Optional[str] = None + DBSystemId: Optional[str] = None + MasterUserSecret: Optional[MasterUserSecretTypeDef] = None + IOOptimizedNextAllowedModificationTime: Optional[datetime] = None + LocalWriteForwardingStatus: Optional[LocalWriteForwardingStatusType] = None + AwsBackupRecoveryPointArn: Optional[str] = None + LimitlessDatabase: Optional[LimitlessDatabaseTypeDef] = None + StorageThroughput: Optional[int] = None + CertificateDetails: Optional[CertificateDetailsTypeDef] = None + EngineLifecycleSupport: Optional[str] = None + +class DescribeDBProxyTargetGroupsResponseTypeDef(BaseModel): + TargetGroups: List[DBProxyTargetGroupTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBProxyTargetGroupResponseTypeDef(BaseModel): + DBProxyTargetGroup: DBProxyTargetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyDBSnapshotResultTypeDef(BaseModel): + DBSnapshot: DBSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBSnapshotResultTypeDef(BaseModel): + DBSnapshot: DBSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBSnapshotMessageTypeDef(BaseModel): + Marker: str + DBSnapshots: List[DBSnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBSnapshotResultTypeDef(BaseModel): + DBSnapshot: DBSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBSnapshotResultTypeDef(BaseModel): + DBSnapshot: DBSnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterAutomatedBackupMessageTypeDef(BaseModel): + Marker: str + DBClusterAutomatedBackups: List[DBClusterAutomatedBackupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterAutomatedBackupResultTypeDef(BaseModel): + DBClusterAutomatedBackup: DBClusterAutomatedBackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEngineDefaultClusterParametersResultTypeDef(BaseModel): + EngineDefaults: EngineDefaultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEngineDefaultParametersResultTypeDef(BaseModel): + EngineDefaults: EngineDefaultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBClusterSnapshotAttributesResultTypeDef(BaseModel): + DBClusterSnapshotAttributesResult: DBClusterSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterSnapshotAttributeResultTypeDef(BaseModel): + DBClusterSnapshotAttributesResult: DBClusterSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBEngineVersionMessageTypeDef(BaseModel): + Marker: str + DBEngineVersions: List[DBEngineVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceAutomatedBackupMessageTypeDef(BaseModel): + Marker: str + DBInstanceAutomatedBackups: List[DBInstanceAutomatedBackupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBInstanceAutomatedBackupResultTypeDef(BaseModel): + DBInstanceAutomatedBackup: DBInstanceAutomatedBackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartDBInstanceAutomatedBackupsReplicationResultTypeDef(BaseModel): + DBInstanceAutomatedBackup: DBInstanceAutomatedBackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopDBInstanceAutomatedBackupsReplicationResultTypeDef(BaseModel): + DBInstanceAutomatedBackup: DBInstanceAutomatedBackupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBProxyTargetsResponseTypeDef(BaseModel): + Targets: List[DBProxyTargetTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterDBProxyTargetsResponseTypeDef(BaseModel): + DBProxyTargets: List[DBProxyTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBProxyResponseTypeDef(BaseModel): + DBProxy: DBProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBProxyResponseTypeDef(BaseModel): + DBProxy: DBProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBProxiesResponseTypeDef(BaseModel): + DBProxies: List[DBProxyTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBProxyResponseTypeDef(BaseModel): + DBProxy: DBProxyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizeDBSecurityGroupIngressResultTypeDef(BaseModel): + DBSecurityGroup: DBSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBSecurityGroupResultTypeDef(BaseModel): + DBSecurityGroup: DBSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBSecurityGroupMessageTypeDef(BaseModel): + Marker: str + DBSecurityGroups: List[DBSecurityGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeDBSecurityGroupIngressResultTypeDef(BaseModel): + DBSecurityGroup: DBSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDBSnapshotAttributesResultTypeDef(BaseModel): + DBSnapshotAttributesResult: DBSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBSnapshotAttributeResultTypeDef(BaseModel): + DBSnapshotAttributesResult: DBSnapshotAttributesResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GlobalClustersMessageTypeDef(BaseModel): + Marker: str + GlobalClusters: List[GlobalClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveFromGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SwitchoverGlobalClusterResultTypeDef(BaseModel): + GlobalCluster: GlobalClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIntegrationsResponseTypeDef(BaseModel): + Marker: str + Integrations: List[IntegrationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OptionGroupOptionTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + EngineName: Optional[str] = None + MajorEngineVersion: Optional[str] = None + MinimumRequiredMinorEngineVersion: Optional[str] = None + PortRequired: Optional[bool] = None + DefaultPort: Optional[int] = None + OptionsDependedOn: Optional[List[str]] = None + OptionsConflictsWith: Optional[List[str]] = None + Persistent: Optional[bool] = None + Permanent: Optional[bool] = None + RequiresAutoMinorEngineVersionUpgrade: Optional[bool] = None + VpcOnly: Optional[bool] = None + SupportsOptionVersionDowngrade: Optional[bool] = None + OptionGroupOptionSettings: Optional[List[OptionGroupOptionSettingTypeDef]] = None + OptionGroupOptionVersions: Optional[List[OptionVersionTypeDef]] = None + CopyableCrossAccount: Optional[bool] = None + +class ModifyOptionGroupMessageRequestTypeDef(BaseModel): + OptionGroupName: str + OptionsToInclude: Optional[Sequence[OptionConfigurationTypeDef]] = None + OptionsToRemove: Optional[Sequence[str]] = None + ApplyImmediately: Optional[bool] = None + +class OptionGroupTypeDef(BaseModel): + OptionGroupName: Optional[str] = None + OptionGroupDescription: Optional[str] = None + EngineName: Optional[str] = None + MajorEngineVersion: Optional[str] = None + Options: Optional[List[OptionTypeDef]] = None + AllowsVpcAndNonVpcInstanceMemberships: Optional[bool] = None + VpcId: Optional[str] = None + OptionGroupArn: Optional[str] = None + SourceOptionGroup: Optional[str] = None + SourceAccountId: Optional[str] = None + CopyTimestamp: Optional[datetime] = None + +class DBSubnetGroupTypeDef(BaseModel): + DBSubnetGroupName: Optional[str] = None + DBSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + DBSubnetGroupArn: Optional[str] = None + SupportedNetworkTypes: Optional[List[str]] = None + +class ModifyDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + Parameters: Sequence[ParameterUnionTypeDef] + +class ModifyDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + Parameters: Sequence[ParameterUnionTypeDef] + +class ResetDBClusterParameterGroupMessageRequestTypeDef(BaseModel): + DBClusterParameterGroupName: str + ResetAllParameters: Optional[bool] = None + Parameters: Optional[Sequence[ParameterUnionTypeDef]] = None + +class ResetDBParameterGroupMessageRequestTypeDef(BaseModel): + DBParameterGroupName: str + ResetAllParameters: Optional[bool] = None + Parameters: Optional[Sequence[ParameterUnionTypeDef]] = None + +class ApplyPendingMaintenanceActionResultTypeDef(BaseModel): + ResourcePendingMaintenanceActions: ResourcePendingMaintenanceActionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PendingMaintenanceActionsMessageTypeDef(BaseModel): + PendingMaintenanceActions: List[ResourcePendingMaintenanceActionsTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class MetricQueryTypeDef(BaseModel): + PerformanceInsightsMetricQuery: Optional[PerformanceInsightsMetricQueryTypeDef] = None + +class ValidDBInstanceModificationsMessageTypeDef(BaseModel): + Storage: Optional[List[ValidStorageOptionsTypeDef]] = None + ValidProcessorFeatures: Optional[List[AvailableProcessorFeatureTypeDef]] = None + SupportsDedicatedLogVolume: Optional[bool] = None + +class PurchaseReservedDBInstancesOfferingResultTypeDef(BaseModel): + ReservedDBInstance: ReservedDBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedDBInstanceMessageTypeDef(BaseModel): + Marker: str + ReservedDBInstances: List[ReservedDBInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedDBInstancesOfferingMessageTypeDef(BaseModel): + Marker: str + ReservedDBInstancesOfferings: List[ReservedDBInstancesOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MetricReferenceTypeDef(BaseModel): + Name: Optional[str] = None + ReferenceDetails: Optional[ReferenceDetailsTypeDef] = None + +class CreateTenantDatabaseResultTypeDef(BaseModel): + TenantDatabase: TenantDatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTenantDatabaseResultTypeDef(BaseModel): + TenantDatabase: TenantDatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyTenantDatabaseResultTypeDef(BaseModel): + TenantDatabase: TenantDatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TenantDatabasesMessageTypeDef(BaseModel): + Marker: str + TenantDatabases: List[TenantDatabaseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBClusterMessageTypeDef(BaseModel): + Marker: str + DBClusters: List[DBClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PromoteReadReplicaDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterFromS3ResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterFromSnapshotResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBClusterToPointInTimeResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopDBClusterResultTypeDef(BaseModel): + DBCluster: DBClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OptionGroupOptionsMessageTypeDef(BaseModel): + OptionGroupOptions: List[OptionGroupOptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CopyOptionGroupResultTypeDef(BaseModel): + OptionGroup: OptionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOptionGroupResultTypeDef(BaseModel): + OptionGroup: OptionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyOptionGroupResultTypeDef(BaseModel): + OptionGroup: OptionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OptionGroupsTypeDef(BaseModel): + OptionGroupsList: List[OptionGroupTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBSubnetGroupResultTypeDef(BaseModel): + DBSubnetGroup: DBSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceTypeDef(BaseModel): + DBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + Engine: Optional[str] = None + DBInstanceStatus: Optional[str] = None + AutomaticRestartTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + DBName: Optional[str] = None + Endpoint: Optional[EndpointTypeDef] = None + AllocatedStorage: Optional[int] = None + InstanceCreateTime: Optional[datetime] = None + PreferredBackupWindow: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + DBSecurityGroups: Optional[List[DBSecurityGroupMembershipTypeDef]] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + DBParameterGroups: Optional[List[DBParameterGroupStatusTypeDef]] = None + AvailabilityZone: Optional[str] = None + DBSubnetGroup: Optional[DBSubnetGroupTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[PendingModifiedValuesTypeDef] = None + LatestRestorableTime: Optional[datetime] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + ReadReplicaSourceDBInstanceIdentifier: Optional[str] = None + ReadReplicaDBInstanceIdentifiers: Optional[List[str]] = None + ReadReplicaDBClusterIdentifiers: Optional[List[str]] = None + ReplicaMode: Optional[ReplicaModeType] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupMemberships: Optional[List[OptionGroupMembershipTypeDef]] = None + CharacterSetName: Optional[str] = None + NcharCharacterSetName: Optional[str] = None + SecondaryAvailabilityZone: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + StatusInfos: Optional[List[DBInstanceStatusInfoTypeDef]] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + DbInstancePort: Optional[int] = None + DBClusterIdentifier: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbiResourceId: Optional[str] = None + CACertificateIdentifier: Optional[str] = None + DomainMemberships: Optional[List[DomainMembershipTypeDef]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + EnhancedMonitoringResourceArn: Optional[str] = None + MonitoringRoleArn: Optional[str] = None + PromotionTier: Optional[int] = None + DBInstanceArn: Optional[str] = None + Timezone: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKMSKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnabledCloudwatchLogsExports: Optional[List[str]] = None + ProcessorFeatures: Optional[List[ProcessorFeatureTypeDef]] = None + DeletionProtection: Optional[bool] = None + AssociatedRoles: Optional[List[DBInstanceRoleTypeDef]] = None + ListenerEndpoint: Optional[EndpointTypeDef] = None + MaxAllocatedStorage: Optional[int] = None + TagList: Optional[List[TagTypeDef]] = None + DBInstanceAutomatedBackupsReplications: Optional[ List[DBInstanceAutomatedBackupsReplicationTypeDef] ] = None + CustomerOwnedIpEnabled: Optional[bool] = None + AwsBackupRecoveryPointArn: Optional[str] = None + ActivityStreamStatus: Optional[ActivityStreamStatusType] = None + ActivityStreamKmsKeyId: Optional[str] = None + ActivityStreamKinesisStreamName: Optional[str] = None + ActivityStreamMode: Optional[ActivityStreamModeType] = None + ActivityStreamEngineNativeAuditFieldsIncluded: Optional[bool] = None + AutomationMode: Optional[AutomationModeType] = None + ResumeFullAutomationModeTime: Optional[datetime] = None + CustomIamInstanceProfile: Optional[str] = None + BackupTarget: Optional[str] = None + NetworkType: Optional[str] = None + ActivityStreamPolicyStatus: Optional[ActivityStreamPolicyStatusType] = None + StorageThroughput: Optional[int] = None + DBSystemId: Optional[str] = None + MasterUserSecret: Optional[MasterUserSecretTypeDef] = None + CertificateDetails: Optional[CertificateDetailsTypeDef] = None + ReadReplicaSourceDBClusterIdentifier: Optional[str] = None + PercentProgress: Optional[str] = None + DedicatedLogVolume: Optional[bool] = None + IsStorageConfigUpgradeAvailable: Optional[bool] = None + MultiTenant: Optional[bool] = None + EngineLifecycleSupport: Optional[str] = None + +class DBSubnetGroupMessageTypeDef(BaseModel): + Marker: str + DBSubnetGroups: List[DBSubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBSubnetGroupResultTypeDef(BaseModel): + DBSubnetGroup: DBSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeValidDBInstanceModificationsResultTypeDef(BaseModel): + ValidDBInstanceModificationsMessage: ValidDBInstanceModificationsMessageTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MetricTypeDef(BaseModel): + Name: Optional[str] = None + References: Optional[List[MetricReferenceTypeDef]] = None + StatisticsDetails: Optional[str] = None + MetricQuery: Optional[MetricQueryTypeDef] = None + +class CreateDBInstanceReadReplicaResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBInstanceMessageTypeDef(BaseModel): + Marker: str + DBInstances: List[DBInstanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PromoteReadReplicaResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBInstanceFromDBSnapshotResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBInstanceFromS3ResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreDBInstanceToPointInTimeResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopDBInstanceResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SwitchoverReadReplicaResultTypeDef(BaseModel): + DBInstance: DBInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PerformanceIssueDetailsTypeDef(BaseModel): + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Metrics: Optional[List[MetricTypeDef]] = None + Analysis: Optional[str] = None + +class IssueDetailsTypeDef(BaseModel): + PerformanceIssueDetails: Optional[PerformanceIssueDetailsTypeDef] = None + +class RecommendedActionTypeDef(BaseModel): + ActionId: Optional[str] = None + Title: Optional[str] = None + Description: Optional[str] = None + Operation: Optional[str] = None + Parameters: Optional[List[RecommendedActionParameterTypeDef]] = None + ApplyModes: Optional[List[str]] = None + Status: Optional[str] = None + IssueDetails: Optional[IssueDetailsTypeDef] = None + ContextAttributes: Optional[List[ContextAttributeTypeDef]] = None + +class DBRecommendationTypeDef(BaseModel): + RecommendationId: Optional[str] = None + TypeId: Optional[str] = None + Severity: Optional[str] = None + ResourceArn: Optional[str] = None + Status: Optional[str] = None + CreatedTime: Optional[datetime] = None + UpdatedTime: Optional[datetime] = None + Detection: Optional[str] = None + Recommendation: Optional[str] = None + Description: Optional[str] = None + Reason: Optional[str] = None + RecommendedActions: Optional[List[RecommendedActionTypeDef]] = None + Category: Optional[str] = None + Source: Optional[str] = None + TypeDetection: Optional[str] = None + TypeRecommendation: Optional[str] = None + Impact: Optional[str] = None + AdditionalInfo: Optional[str] = None + Links: Optional[List[DocLinkTypeDef]] = None + IssueDetails: Optional[IssueDetailsTypeDef] = None + +class DBRecommendationMessageTypeDef(BaseModel): + DBRecommendation: DBRecommendationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DBRecommendationsMessageTypeDef(BaseModel): + DBRecommendations: List[DBRecommendationTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/rds_constants.py b/aws_resource_validator/pydantic_models/rds_constants.py new file mode 100644 index 00000000..7b0a96f9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rds_constants.py @@ -0,0 +1,591 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActivityStreamModeType = Literal["async", "sync"] +ActivityStreamPolicyStatusType = Literal["locked", "locking-policy", "unlocked", "unlocking-policy"] +ActivityStreamStatusType = Literal["started", "starting", "stopped", "stopping"] +ApplyMethodType = Literal["immediate", "pending-reboot"] +AuditPolicyStateType = Literal["locked", "unlocked"] +AuthSchemeType = Literal["SECRETS"] +AutomationModeType = Literal["all-paused", "full"] +ClientPasswordAuthTypeType = Literal["MYSQL_NATIVE_PASSWORD", "POSTGRES_MD5", "POSTGRES_SCRAM_SHA_256", "SQL_SERVER_AUTHENTICATION"] +CustomEngineVersionStatusType = Literal["available", "inactive", "inactive-except-restore"] +DBClusterAvailableWaiterName = Literal["db_cluster_available"] +DBClusterDeletedWaiterName = Literal["db_cluster_deleted"] +DBClusterSnapshotAvailableWaiterName = Literal["db_cluster_snapshot_available"] +DBClusterSnapshotDeletedWaiterName = Literal["db_cluster_snapshot_deleted"] +DBInstanceAvailableWaiterName = Literal["db_instance_available"] +DBInstanceDeletedWaiterName = Literal["db_instance_deleted"] +DBProxyEndpointStatusType = Literal["available", + "creating", + "deleting", + "incompatible-network", + "insufficient-resource-limits", + "modifying",] +DBProxyEndpointTargetRoleType = Literal["READ_ONLY", "READ_WRITE"] +DBProxyStatusType = Literal["available", + "creating", + "deleting", + "incompatible-network", + "insufficient-resource-limits", + "modifying", + "reactivating", + "suspended", + "suspending",] +DBSnapshotAvailableWaiterName = Literal["db_snapshot_available"] +DBSnapshotCompletedWaiterName = Literal["db_snapshot_completed"] +DBSnapshotDeletedWaiterName = Literal["db_snapshot_deleted"] +DescribeBlueGreenDeploymentsPaginatorName = Literal["describe_blue_green_deployments"] +DescribeCertificatesPaginatorName = Literal["describe_certificates"] +DescribeDBClusterAutomatedBackupsPaginatorName = Literal["describe_db_cluster_automated_backups"] +DescribeDBClusterBacktracksPaginatorName = Literal["describe_db_cluster_backtracks"] +DescribeDBClusterEndpointsPaginatorName = Literal["describe_db_cluster_endpoints"] +DescribeDBClusterParameterGroupsPaginatorName = Literal["describe_db_cluster_parameter_groups"] +DescribeDBClusterParametersPaginatorName = Literal["describe_db_cluster_parameters"] +DescribeDBClusterSnapshotsPaginatorName = Literal["describe_db_cluster_snapshots"] +DescribeDBClustersPaginatorName = Literal["describe_db_clusters"] +DescribeDBEngineVersionsPaginatorName = Literal["describe_db_engine_versions"] +DescribeDBInstanceAutomatedBackupsPaginatorName = Literal["describe_db_instance_automated_backups"] +DescribeDBInstancesPaginatorName = Literal["describe_db_instances"] +DescribeDBLogFilesPaginatorName = Literal["describe_db_log_files"] +DescribeDBParameterGroupsPaginatorName = Literal["describe_db_parameter_groups"] +DescribeDBParametersPaginatorName = Literal["describe_db_parameters"] +DescribeDBProxiesPaginatorName = Literal["describe_db_proxies"] +DescribeDBProxyEndpointsPaginatorName = Literal["describe_db_proxy_endpoints"] +DescribeDBProxyTargetGroupsPaginatorName = Literal["describe_db_proxy_target_groups"] +DescribeDBProxyTargetsPaginatorName = Literal["describe_db_proxy_targets"] +DescribeDBRecommendationsPaginatorName = Literal["describe_db_recommendations"] +DescribeDBSecurityGroupsPaginatorName = Literal["describe_db_security_groups"] +DescribeDBSnapshotTenantDatabasesPaginatorName = Literal["describe_db_snapshot_tenant_databases"] +DescribeDBSnapshotsPaginatorName = Literal["describe_db_snapshots"] +DescribeDBSubnetGroupsPaginatorName = Literal["describe_db_subnet_groups"] +DescribeEngineDefaultClusterParametersPaginatorName = Literal["describe_engine_default_cluster_parameters"] +DescribeEngineDefaultParametersPaginatorName = Literal["describe_engine_default_parameters"] +DescribeEventSubscriptionsPaginatorName = Literal["describe_event_subscriptions"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeExportTasksPaginatorName = Literal["describe_export_tasks"] +DescribeGlobalClustersPaginatorName = Literal["describe_global_clusters"] +DescribeIntegrationsPaginatorName = Literal["describe_integrations"] +DescribeOptionGroupOptionsPaginatorName = Literal["describe_option_group_options"] +DescribeOptionGroupsPaginatorName = Literal["describe_option_groups"] +DescribeOrderableDBInstanceOptionsPaginatorName = Literal["describe_orderable_db_instance_options"] +DescribePendingMaintenanceActionsPaginatorName = Literal["describe_pending_maintenance_actions"] +DescribeReservedDBInstancesOfferingsPaginatorName = Literal["describe_reserved_db_instances_offerings"] +DescribeReservedDBInstancesPaginatorName = Literal["describe_reserved_db_instances"] +DescribeSourceRegionsPaginatorName = Literal["describe_source_regions"] +DescribeTenantDatabasesPaginatorName = Literal["describe_tenant_databases"] +DownloadDBLogFilePortionPaginatorName = Literal["download_db_log_file_portion"] +EngineFamilyType = Literal["MYSQL", "POSTGRESQL", "SQLSERVER"] +ExportSourceTypeType = Literal["CLUSTER", "SNAPSHOT"] +FailoverStatusType = Literal["cancelling", "failing-over", "pending"] +GlobalClusterMemberSynchronizationStatusType = Literal["connected", "pending-resync"] +IAMAuthModeType = Literal["DISABLED", "ENABLED", "REQUIRED"] +IntegrationStatusType = Literal["active", "creating", "deleting", "failed", "modifying", "needs_attention", "syncing"] +LimitlessDatabaseStatusType = Literal["active", + "disabled", + "disabling", + "enabled", + "enabling", + "error", + "modifying-max-capacity", + "not-in-use",] +LocalWriteForwardingStatusType = Literal["disabled", "disabling", "enabled", "enabling", "requested"] +ReplicaModeType = Literal["mounted", "open-read-only"] +SourceTypeType = Literal["blue-green-deployment", + "custom-engine-version", + "db-cluster", + "db-cluster-snapshot", + "db-instance", + "db-parameter-group", + "db-proxy", + "db-security-group", + "db-snapshot",] +TargetHealthReasonType = Literal["AUTH_FAILURE", + "CONNECTION_FAILED", + "INVALID_REPLICATION_STATE", + "PENDING_PROXY_CAPACITY", + "UNREACHABLE",] +TargetRoleType = Literal["READ_ONLY", "READ_WRITE", "UNKNOWN"] +TargetStateType = Literal["AVAILABLE", "REGISTERING", "UNAVAILABLE"] +TargetTypeType = Literal["RDS_INSTANCE", "RDS_SERVERLESS_ENDPOINT", "TRACKED_CLUSTER"] +TenantDatabaseAvailableWaiterName = Literal["tenant_database_available"] +TenantDatabaseDeletedWaiterName = Literal["tenant_database_deleted"] +WriteForwardingStatusType = Literal["disabled", "disabling", "enabled", "enabling", "unknown"] +RDSServiceName = Literal["rds"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_blue_green_deployments", + "describe_certificates", + "describe_db_cluster_automated_backups", + "describe_db_cluster_backtracks", + "describe_db_cluster_endpoints", + "describe_db_cluster_parameter_groups", + "describe_db_cluster_parameters", + "describe_db_cluster_snapshots", + "describe_db_clusters", + "describe_db_engine_versions", + "describe_db_instance_automated_backups", + "describe_db_instances", + "describe_db_log_files", + "describe_db_parameter_groups", + "describe_db_parameters", + "describe_db_proxies", + "describe_db_proxy_endpoints", + "describe_db_proxy_target_groups", + "describe_db_proxy_targets", + "describe_db_recommendations", + "describe_db_security_groups", + "describe_db_snapshot_tenant_databases", + "describe_db_snapshots", + "describe_db_subnet_groups", + "describe_engine_default_cluster_parameters", + "describe_engine_default_parameters", + "describe_event_subscriptions", + "describe_events", + "describe_export_tasks", + "describe_global_clusters", + "describe_integrations", + "describe_option_group_options", + "describe_option_groups", + "describe_orderable_db_instance_options", + "describe_pending_maintenance_actions", + "describe_reserved_db_instances", + "describe_reserved_db_instances_offerings", + "describe_source_regions", + "describe_tenant_databases", + "download_db_log_file_portion",] +WaiterName = Literal["db_cluster_available", + "db_cluster_deleted", + "db_cluster_snapshot_available", + "db_cluster_snapshot_deleted", + "db_instance_available", + "db_instance_deleted", + "db_snapshot_available", + "db_snapshot_completed", + "db_snapshot_deleted", + "tenant_database_available", + "tenant_database_deleted",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ParameterUnionTypeDef = Union['ParameterTypeDef', 'ParameterExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/rds_data_classes.py b/aws_resource_validator/pydantic_models/rds_data_classes.py new file mode 100644 index 00000000..a92e30b9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rds_data_classes.py @@ -0,0 +1,167 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.rds_data_constants import * + +class ArrayValueTypeDef(BaseModel): + booleanValues: Optional[Sequence[bool]] = None + longValues: Optional[Sequence[int]] = None + doubleValues: Optional[Sequence[float]] = None + stringValues: Optional[Sequence[str]] = None + arrayValues: Optional[Sequence[Dict[str, Any]]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BeginTransactionRequestRequestTypeDef(BaseModel): + resourceArn: str + secretArn: str + database: Optional[str] = None + schema: Optional[str] = None + +class ColumnMetadataTypeDef(BaseModel): + name: Optional[str] = None + type: Optional[int] = None + typeName: Optional[str] = None + label: Optional[str] = None + schemaName: Optional[str] = None + tableName: Optional[str] = None + isAutoIncrement: Optional[bool] = None + isSigned: Optional[bool] = None + isCurrency: Optional[bool] = None + isCaseSensitive: Optional[bool] = None + nullable: Optional[int] = None + precision: Optional[int] = None + scale: Optional[int] = None + arrayBaseColumnType: Optional[int] = None + +class CommitTransactionRequestRequestTypeDef(BaseModel): + resourceArn: str + secretArn: str + transactionId: str + +class ExecuteSqlRequestRequestTypeDef(BaseModel): + dbClusterOrInstanceArn: str + awsSecretStoreArn: str + sqlStatements: str + database: Optional[str] = None + schema: Optional[str] = None + +class ResultSetOptionsTypeDef(BaseModel): + decimalReturnType: Optional[DecimalReturnTypeType] = None + longReturnType: Optional[LongReturnTypeType] = None + +class RecordTypeDef(BaseModel): + values: Optional[List["ValueTypeDef"]] = None + +class RollbackTransactionRequestRequestTypeDef(BaseModel): + resourceArn: str + secretArn: str + transactionId: str + +class StructValueTypeDef(BaseModel): + attributes: Optional[List["ValueTypeDef"]] = None + +class ValueTypeDef(BaseModel): + isNull: Optional[bool] = None + bitValue: Optional[bool] = None + bigIntValue: Optional[int] = None + intValue: Optional[int] = None + doubleValue: Optional[float] = None + realValue: Optional[float] = None + stringValue: Optional[str] = None + blobValue: Optional[bytes] = None + arrayValues: Optional[List[Dict[str, Any]]] = None + structValue: Optional[Dict[str, Any]] = None + +class BeginTransactionResponseTypeDef(BaseModel): + transactionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CommitTransactionResponseTypeDef(BaseModel): + transactionStatus: str + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackTransactionResponseTypeDef(BaseModel): + transactionStatus: str + ResponseMetadata: ResponseMetadataTypeDef + +class FieldTypeDef(BaseModel): + isNull: Optional[bool] = None + booleanValue: Optional[bool] = None + longValue: Optional[int] = None + doubleValue: Optional[float] = None + stringValue: Optional[str] = None + blobValue: Optional[BlobTypeDef] = None + arrayValue: Optional["ArrayValueTypeDef"] = None + +class ResultSetMetadataTypeDef(BaseModel): + columnCount: Optional[int] = None + columnMetadata: Optional[List[ColumnMetadataTypeDef]] = None + +class ExecuteStatementResponseTypeDef(BaseModel): + records: List[List[FieldTypeDef]] + columnMetadata: List[ColumnMetadataTypeDef] + numberOfRecordsUpdated: int + generatedFields: List[FieldTypeDef] + formattedRecords: str + ResponseMetadata: ResponseMetadataTypeDef + +class SqlParameterTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[FieldTypeDef] = None + typeHint: Optional[TypeHintType] = None + +class UpdateResultTypeDef(BaseModel): + generatedFields: Optional[List[FieldTypeDef]] = None + +class ResultFrameTypeDef(BaseModel): + resultSetMetadata: Optional[ResultSetMetadataTypeDef] = None + records: Optional[List[RecordTypeDef]] = None + +class BatchExecuteStatementRequestRequestTypeDef(BaseModel): + resourceArn: str + secretArn: str + sql: str + database: Optional[str] = None + schema: Optional[str] = None + parameterSets: Optional[Sequence[Sequence[SqlParameterTypeDef]]] = None + transactionId: Optional[str] = None + +class ExecuteStatementRequestRequestTypeDef(BaseModel): + resourceArn: str + secretArn: str + sql: str + database: Optional[str] = None + schema: Optional[str] = None + parameters: Optional[Sequence[SqlParameterTypeDef]] = None + transactionId: Optional[str] = None + includeResultMetadata: Optional[bool] = None + continueAfterTimeout: Optional[bool] = None + resultSetOptions: Optional[ResultSetOptionsTypeDef] = None + formatRecordsAs: Optional[RecordsFormatTypeType] = None + +class BatchExecuteStatementResponseTypeDef(BaseModel): + updateResults: List[UpdateResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SqlStatementResultTypeDef(BaseModel): + resultFrame: Optional[ResultFrameTypeDef] = None + numberOfRecordsUpdated: Optional[int] = None + +class ExecuteSqlResponseTypeDef(BaseModel): + sqlStatementResults: List[SqlStatementResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/rds_data_constants.py b/aws_resource_validator/pydantic_models/rds_data_constants.py new file mode 100644 index 00000000..f9b25a60 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rds_data_constants.py @@ -0,0 +1,408 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DecimalReturnTypeType = Literal["DOUBLE_OR_LONG", "STRING"] +LongReturnTypeType = Literal["LONG", "STRING"] +RecordsFormatTypeType = Literal["JSON", "NONE"] +TypeHintType = Literal["DATE", "DECIMAL", "JSON", "TIME", "TIMESTAMP", "UUID"] +RDSDataServiceServiceName = Literal["rds-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/redshift_classes.py b/aws_resource_validator/pydantic_models/redshift_classes.py new file mode 100644 index 00000000..9d519bab --- /dev/null +++ b/aws_resource_validator/pydantic_models/redshift_classes.py @@ -0,0 +1,2281 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.redshift_constants import * + +class AcceptReservedNodeExchangeInputMessageRequestTypeDef(BaseModel): + ReservedNodeId: str + TargetReservedNodeOfferingId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AttributeValueTargetTypeDef(BaseModel): + AttributeValue: Optional[str] = None + +class AccountWithRestoreAccessTypeDef(BaseModel): + AccountId: Optional[str] = None + AccountAlias: Optional[str] = None + +class AquaConfigurationTypeDef(BaseModel): + AquaStatus: Optional[AquaStatusType] = None + AquaConfigurationStatus: Optional[AquaConfigurationStatusType] = None + +class AssociateDataShareConsumerMessageRequestTypeDef(BaseModel): + DataShareArn: str + AssociateEntireAccount: Optional[bool] = None + ConsumerArn: Optional[str] = None + ConsumerRegion: Optional[str] = None + AllowWrites: Optional[bool] = None + +class CertificateAssociationTypeDef(BaseModel): + CustomDomainName: Optional[str] = None + ClusterIdentifier: Optional[str] = None + +class AuthenticationProfileTypeDef(BaseModel): + AuthenticationProfileName: Optional[str] = None + AuthenticationProfileContent: Optional[str] = None + +class AuthorizeClusterSecurityGroupIngressMessageRequestTypeDef(BaseModel): + ClusterSecurityGroupName: str + CIDRIP: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + +class AuthorizeDataShareMessageRequestTypeDef(BaseModel): + DataShareArn: str + ConsumerIdentifier: str + AllowWrites: Optional[bool] = None + +class AuthorizeEndpointAccessMessageRequestTypeDef(BaseModel): + Account: str + ClusterIdentifier: Optional[str] = None + VpcIds: Optional[Sequence[str]] = None + +class AuthorizeSnapshotAccessMessageRequestTypeDef(BaseModel): + AccountWithRestoreAccess: str + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + SnapshotClusterIdentifier: Optional[str] = None + +class AuthorizedTokenIssuerExtraOutputTypeDef(BaseModel): + TrustedTokenIssuerArn: Optional[str] = None + AuthorizedAudiencesList: Optional[List[str]] = None + +class AuthorizedTokenIssuerOutputTypeDef(BaseModel): + TrustedTokenIssuerArn: Optional[str] = None + AuthorizedAudiencesList: Optional[List[str]] = None + +class AuthorizedTokenIssuerTypeDef(BaseModel): + TrustedTokenIssuerArn: Optional[str] = None + AuthorizedAudiencesList: Optional[Sequence[str]] = None + +class SupportedPlatformTypeDef(BaseModel): + Name: Optional[str] = None + +class DeleteClusterSnapshotMessageTypeDef(BaseModel): + SnapshotIdentifier: str + SnapshotClusterIdentifier: Optional[str] = None + +class SnapshotErrorMessageTypeDef(BaseModel): + SnapshotIdentifier: Optional[str] = None + SnapshotClusterIdentifier: Optional[str] = None + FailureCode: Optional[str] = None + FailureReason: Optional[str] = None + +class BatchModifyClusterSnapshotsMessageRequestTypeDef(BaseModel): + SnapshotIdentifierList: Sequence[str] + ManualSnapshotRetentionPeriod: Optional[int] = None + Force: Optional[bool] = None + +class CancelResizeMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class ClusterAssociatedToScheduleTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + ScheduleAssociationState: Optional[ScheduleStateType] = None + +class RevisionTargetTypeDef(BaseModel): + DatabaseRevision: Optional[str] = None + Description: Optional[str] = None + DatabaseRevisionReleaseDate: Optional[datetime] = None + +class ClusterIamRoleTypeDef(BaseModel): + IamRoleArn: Optional[str] = None + ApplyStatus: Optional[str] = None + +class ClusterNodeTypeDef(BaseModel): + NodeRole: Optional[str] = None + PrivateIPAddress: Optional[str] = None + PublicIPAddress: Optional[str] = None + +class ParameterTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterValue: Optional[str] = None + Description: Optional[str] = None + Source: Optional[str] = None + DataType: Optional[str] = None + AllowedValues: Optional[str] = None + ApplyType: Optional[ParameterApplyTypeType] = None + IsModifiable: Optional[bool] = None + MinimumEngineVersion: Optional[str] = None + +class ClusterParameterStatusTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + ParameterApplyErrorDescription: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ClusterSecurityGroupMembershipTypeDef(BaseModel): + ClusterSecurityGroupName: Optional[str] = None + Status: Optional[str] = None + +class ClusterSnapshotCopyStatusTypeDef(BaseModel): + DestinationRegion: Optional[str] = None + RetentionPeriod: Optional[int] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + SnapshotCopyGrantName: Optional[str] = None + +class DataTransferProgressTypeDef(BaseModel): + Status: Optional[str] = None + CurrentRateInMegaBytesPerSecond: Optional[float] = None + TotalDataInMegaBytes: Optional[int] = None + DataTransferredInMegaBytes: Optional[int] = None + EstimatedTimeToCompletionInSeconds: Optional[int] = None + ElapsedTimeInSeconds: Optional[int] = None + +class DeferredMaintenanceWindowTypeDef(BaseModel): + DeferMaintenanceIdentifier: Optional[str] = None + DeferMaintenanceStartTime: Optional[datetime] = None + DeferMaintenanceEndTime: Optional[datetime] = None + +class ElasticIpStatusTypeDef(BaseModel): + ElasticIp: Optional[str] = None + Status: Optional[str] = None + +class HsmStatusTypeDef(BaseModel): + HsmClientCertificateIdentifier: Optional[str] = None + HsmConfigurationIdentifier: Optional[str] = None + Status: Optional[str] = None + +class PendingModifiedValuesTypeDef(BaseModel): + MasterUserPassword: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + ClusterType: Optional[str] = None + ClusterVersion: Optional[str] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + ClusterIdentifier: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + EnhancedVpcRouting: Optional[bool] = None + MaintenanceTrackName: Optional[str] = None + EncryptionType: Optional[str] = None + +class ReservedNodeExchangeStatusTypeDef(BaseModel): + ReservedNodeExchangeRequestId: Optional[str] = None + Status: Optional[ReservedNodeExchangeStatusTypeType] = None + RequestTime: Optional[datetime] = None + SourceReservedNodeId: Optional[str] = None + SourceReservedNodeType: Optional[str] = None + SourceReservedNodeCount: Optional[int] = None + TargetReservedNodeOfferingId: Optional[str] = None + TargetReservedNodeType: Optional[str] = None + TargetReservedNodeCount: Optional[int] = None + +class ResizeInfoTypeDef(BaseModel): + ResizeType: Optional[str] = None + AllowCancelResize: Optional[bool] = None + +class RestoreStatusTypeDef(BaseModel): + Status: Optional[str] = None + CurrentRestoreRateInMegaBytesPerSecond: Optional[float] = None + SnapshotSizeInMegaBytes: Optional[int] = None + ProgressInMegaBytes: Optional[int] = None + ElapsedTimeInSeconds: Optional[int] = None + EstimatedTimeToCompletionInSeconds: Optional[int] = None + +class VpcSecurityGroupMembershipTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class ClusterVersionTypeDef(BaseModel): + ClusterVersion: Optional[str] = None + ClusterParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + +class CopyClusterSnapshotMessageRequestTypeDef(BaseModel): + SourceSnapshotIdentifier: str + TargetSnapshotIdentifier: str + SourceSnapshotClusterIdentifier: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + +class CreateAuthenticationProfileMessageRequestTypeDef(BaseModel): + AuthenticationProfileName: str + AuthenticationProfileContent: str + +class CreateCustomDomainAssociationMessageRequestTypeDef(BaseModel): + CustomDomainName: str + CustomDomainCertificateArn: str + ClusterIdentifier: str + +class CreateEndpointAccessMessageRequestTypeDef(BaseModel): + EndpointName: str + SubnetGroupName: str + ClusterIdentifier: Optional[str] = None + ResourceOwner: Optional[str] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + +class DataShareAssociationTypeDef(BaseModel): + ConsumerIdentifier: Optional[str] = None + Status: Optional[DataShareStatusType] = None + ConsumerRegion: Optional[str] = None + CreatedDate: Optional[datetime] = None + StatusChangeDate: Optional[datetime] = None + ProducerAllowedWrites: Optional[bool] = None + ConsumerAcceptedWrites: Optional[bool] = None + +class DeauthorizeDataShareMessageRequestTypeDef(BaseModel): + DataShareArn: str + ConsumerIdentifier: str + +class DeleteAuthenticationProfileMessageRequestTypeDef(BaseModel): + AuthenticationProfileName: str + +class DeleteClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + SkipFinalClusterSnapshot: Optional[bool] = None + FinalClusterSnapshotIdentifier: Optional[str] = None + FinalClusterSnapshotRetentionPeriod: Optional[int] = None + +class DeleteClusterParameterGroupMessageRequestTypeDef(BaseModel): + ParameterGroupName: str + +class DeleteClusterSecurityGroupMessageRequestTypeDef(BaseModel): + ClusterSecurityGroupName: str + +class DeleteClusterSnapshotMessageRequestTypeDef(BaseModel): + SnapshotIdentifier: str + SnapshotClusterIdentifier: Optional[str] = None + +class DeleteClusterSubnetGroupMessageRequestTypeDef(BaseModel): + ClusterSubnetGroupName: str + +class DeleteCustomDomainAssociationMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + CustomDomainName: str + +class DeleteEndpointAccessMessageRequestTypeDef(BaseModel): + EndpointName: str + +class DeleteEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + +class DeleteHsmClientCertificateMessageRequestTypeDef(BaseModel): + HsmClientCertificateIdentifier: str + +class DeleteHsmConfigurationMessageRequestTypeDef(BaseModel): + HsmConfigurationIdentifier: str + +class DeleteRedshiftIdcApplicationMessageRequestTypeDef(BaseModel): + RedshiftIdcApplicationArn: str + +class DeleteResourcePolicyMessageRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteScheduledActionMessageRequestTypeDef(BaseModel): + ScheduledActionName: str + +class DeleteSnapshotCopyGrantMessageRequestTypeDef(BaseModel): + SnapshotCopyGrantName: str + +class DeleteSnapshotScheduleMessageRequestTypeDef(BaseModel): + ScheduleIdentifier: str + +class DeleteTagsMessageRequestTypeDef(BaseModel): + ResourceName: str + TagKeys: Sequence[str] + +class DeleteUsageLimitMessageRequestTypeDef(BaseModel): + UsageLimitId: str + +class DescribeAccountAttributesMessageRequestTypeDef(BaseModel): + AttributeNames: Optional[Sequence[str]] = None + +class DescribeAuthenticationProfilesMessageRequestTypeDef(BaseModel): + AuthenticationProfileName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeClusterDbRevisionsMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeClusterParameterGroupsMessageRequestTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeClusterParametersMessageRequestTypeDef(BaseModel): + ParameterGroupName: str + Source: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeClusterSecurityGroupsMessageRequestTypeDef(BaseModel): + ClusterSecurityGroupName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class SnapshotSortingEntityTypeDef(BaseModel): + Attribute: SnapshotAttributeToSortByType + SortOrder: Optional[SortByOrderType] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeClusterSubnetGroupsMessageRequestTypeDef(BaseModel): + ClusterSubnetGroupName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeClusterTracksMessageRequestTypeDef(BaseModel): + MaintenanceTrackName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeClusterVersionsMessageRequestTypeDef(BaseModel): + ClusterVersion: Optional[str] = None + ClusterParameterGroupFamily: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeClustersMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeCustomDomainAssociationsMessageRequestTypeDef(BaseModel): + CustomDomainName: Optional[str] = None + CustomDomainCertificateArn: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDataSharesForConsumerMessageRequestTypeDef(BaseModel): + ConsumerArn: Optional[str] = None + Status: Optional[DataShareStatusForConsumerType] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDataSharesForProducerMessageRequestTypeDef(BaseModel): + ProducerArn: Optional[str] = None + Status: Optional[DataShareStatusForProducerType] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDataSharesMessageRequestTypeDef(BaseModel): + DataShareArn: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDefaultClusterParametersMessageRequestTypeDef(BaseModel): + ParameterGroupFamily: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEndpointAccessMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + ResourceOwner: Optional[str] = None + EndpointName: Optional[str] = None + VpcId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEndpointAuthorizationMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + Account: Optional[str] = None + Grantee: Optional[bool] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeEventCategoriesMessageRequestTypeDef(BaseModel): + SourceType: Optional[str] = None + +class DescribeEventSubscriptionsMessageRequestTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeHsmClientCertificatesMessageRequestTypeDef(BaseModel): + HsmClientCertificateIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeHsmConfigurationsMessageRequestTypeDef(BaseModel): + HsmConfigurationIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeInboundIntegrationsMessageRequestTypeDef(BaseModel): + IntegrationArn: Optional[str] = None + TargetArn: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeLoggingStatusMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class NodeConfigurationOptionsFilterTypeDef(BaseModel): + Name: Optional[NodeConfigurationOptionsFilterNameType] = None + Operator: Optional[OperatorTypeType] = None + Values: Optional[Sequence[str]] = None + +class DescribeOrderableClusterOptionsMessageRequestTypeDef(BaseModel): + ClusterVersion: Optional[str] = None + NodeType: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribePartnersInputMessageRequestTypeDef(BaseModel): + AccountId: str + ClusterIdentifier: str + DatabaseName: Optional[str] = None + PartnerName: Optional[str] = None + +class PartnerIntegrationInfoTypeDef(BaseModel): + DatabaseName: Optional[str] = None + PartnerName: Optional[str] = None + Status: Optional[PartnerIntegrationStatusType] = None + StatusMessage: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class DescribeRedshiftIdcApplicationsMessageRequestTypeDef(BaseModel): + RedshiftIdcApplicationArn: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReservedNodeExchangeStatusInputMessageRequestTypeDef(BaseModel): + ReservedNodeId: Optional[str] = None + ReservedNodeExchangeRequestId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReservedNodeOfferingsMessageRequestTypeDef(BaseModel): + ReservedNodeOfferingId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeReservedNodesMessageRequestTypeDef(BaseModel): + ReservedNodeId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeResizeMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class ScheduledActionFilterTypeDef(BaseModel): + Name: ScheduledActionFilterNameType + Values: Sequence[str] + +class DescribeSnapshotCopyGrantsMessageRequestTypeDef(BaseModel): + SnapshotCopyGrantName: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeSnapshotSchedulesMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + ScheduleIdentifier: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribeTableRestoreStatusMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + TableRestoreRequestId: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class DescribeTagsMessageRequestTypeDef(BaseModel): + ResourceName: Optional[str] = None + ResourceType: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DescribeUsageLimitsMessageRequestTypeDef(BaseModel): + UsageLimitId: Optional[str] = None + ClusterIdentifier: Optional[str] = None + FeatureType: Optional[UsageLimitFeatureTypeType] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + +class DisableLoggingMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class DisableSnapshotCopyMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class DisassociateDataShareConsumerMessageRequestTypeDef(BaseModel): + DataShareArn: str + DisassociateEntireAccount: Optional[bool] = None + ConsumerArn: Optional[str] = None + ConsumerRegion: Optional[str] = None + +class EnableLoggingMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + BucketName: Optional[str] = None + S3KeyPrefix: Optional[str] = None + LogDestinationType: Optional[LogDestinationTypeType] = None + LogExports: Optional[Sequence[str]] = None + +class EnableSnapshotCopyMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + DestinationRegion: str + RetentionPeriod: Optional[int] = None + SnapshotCopyGrantName: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + +class EndpointAuthorizationTypeDef(BaseModel): + Grantor: Optional[str] = None + Grantee: Optional[str] = None + ClusterIdentifier: Optional[str] = None + AuthorizeTime: Optional[datetime] = None + ClusterStatus: Optional[str] = None + Status: Optional[AuthorizationStatusType] = None + AllowedAllVPCs: Optional[bool] = None + AllowedVPCs: Optional[List[str]] = None + EndpointCount: Optional[int] = None + +class EventInfoMapTypeDef(BaseModel): + EventId: Optional[str] = None + EventCategories: Optional[List[str]] = None + EventDescription: Optional[str] = None + Severity: Optional[str] = None + +class EventTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + Message: Optional[str] = None + EventCategories: Optional[List[str]] = None + Severity: Optional[str] = None + Date: Optional[datetime] = None + EventId: Optional[str] = None + +class FailoverPrimaryComputeInputMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class GetClusterCredentialsMessageRequestTypeDef(BaseModel): + DbUser: str + DbName: Optional[str] = None + ClusterIdentifier: Optional[str] = None + DurationSeconds: Optional[int] = None + AutoCreate: Optional[bool] = None + DbGroups: Optional[Sequence[str]] = None + CustomDomainName: Optional[str] = None + +class GetClusterCredentialsWithIAMMessageRequestTypeDef(BaseModel): + DbName: Optional[str] = None + ClusterIdentifier: Optional[str] = None + DurationSeconds: Optional[int] = None + CustomDomainName: Optional[str] = None + +class GetReservedNodeExchangeConfigurationOptionsInputMessageRequestTypeDef(BaseModel): + ActionType: ReservedNodeExchangeActionTypeType + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class GetReservedNodeExchangeOfferingsInputMessageRequestTypeDef(BaseModel): + ReservedNodeId: str + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class GetResourcePolicyMessageRequestTypeDef(BaseModel): + ResourceArn: str + +class ResourcePolicyTypeDef(BaseModel): + ResourceArn: Optional[str] = None + Policy: Optional[str] = None + +class IntegrationErrorTypeDef(BaseModel): + ErrorCode: str + ErrorMessage: Optional[str] = None + +class LakeFormationQueryTypeDef(BaseModel): + Authorization: ServiceAuthorizationType + +class ListRecommendationsMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + NamespaceArn: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class ModifyAquaInputMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + AquaConfigurationStatus: Optional[AquaConfigurationStatusType] = None + +class ModifyAuthenticationProfileMessageRequestTypeDef(BaseModel): + AuthenticationProfileName: str + AuthenticationProfileContent: str + +class ModifyClusterDbRevisionMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + RevisionTarget: str + +class ModifyClusterIamRolesMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + AddIamRoles: Optional[Sequence[str]] = None + RemoveIamRoles: Optional[Sequence[str]] = None + DefaultIamRoleArn: Optional[str] = None + +class ModifyClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + ClusterType: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + ClusterSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + MasterUserPassword: Optional[str] = None + ClusterParameterGroupName: Optional[str] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + PreferredMaintenanceWindow: Optional[str] = None + ClusterVersion: Optional[str] = None + AllowVersionUpgrade: Optional[bool] = None + HsmClientCertificateIdentifier: Optional[str] = None + HsmConfigurationIdentifier: Optional[str] = None + NewClusterIdentifier: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ElasticIp: Optional[str] = None + EnhancedVpcRouting: Optional[bool] = None + MaintenanceTrackName: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + AvailabilityZoneRelocation: Optional[bool] = None + AvailabilityZone: Optional[str] = None + Port: Optional[int] = None + ManageMasterPassword: Optional[bool] = None + MasterPasswordSecretKmsKeyId: Optional[str] = None + IpAddressType: Optional[str] = None + MultiAZ: Optional[bool] = None + +class ModifyClusterSnapshotMessageRequestTypeDef(BaseModel): + SnapshotIdentifier: str + ManualSnapshotRetentionPeriod: Optional[int] = None + Force: Optional[bool] = None + +class ModifyClusterSnapshotScheduleMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + ScheduleIdentifier: Optional[str] = None + DisassociateSchedule: Optional[bool] = None + +class ModifyClusterSubnetGroupMessageRequestTypeDef(BaseModel): + ClusterSubnetGroupName: str + SubnetIds: Sequence[str] + Description: Optional[str] = None + +class ModifyCustomDomainAssociationMessageRequestTypeDef(BaseModel): + CustomDomainName: str + CustomDomainCertificateArn: str + ClusterIdentifier: str + +class ModifyEndpointAccessMessageRequestTypeDef(BaseModel): + EndpointName: str + VpcSecurityGroupIds: Optional[Sequence[str]] = None + +class ModifyEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: Optional[str] = None + SourceType: Optional[str] = None + SourceIds: Optional[Sequence[str]] = None + EventCategories: Optional[Sequence[str]] = None + Severity: Optional[str] = None + Enabled: Optional[bool] = None + +class ModifySnapshotCopyRetentionPeriodMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + RetentionPeriod: int + Manual: Optional[bool] = None + +class ModifySnapshotScheduleMessageRequestTypeDef(BaseModel): + ScheduleIdentifier: str + ScheduleDefinitions: Sequence[str] + +class ModifyUsageLimitMessageRequestTypeDef(BaseModel): + UsageLimitId: str + Amount: Optional[int] = None + BreachAction: Optional[UsageLimitBreachActionType] = None + +class NetworkInterfaceTypeDef(BaseModel): + NetworkInterfaceId: Optional[str] = None + SubnetId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + AvailabilityZone: Optional[str] = None + Ipv6Address: Optional[str] = None + +class NodeConfigurationOptionTypeDef(BaseModel): + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + EstimatedDiskUtilizationPercent: Optional[float] = None + Mode: Optional[ModeType] = None + +class PartnerIntegrationInputMessageRequestTypeDef(BaseModel): + AccountId: str + ClusterIdentifier: str + DatabaseName: str + PartnerName: str + +class PauseClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class PauseClusterMessageTypeDef(BaseModel): + ClusterIdentifier: str + +class PurchaseReservedNodeOfferingMessageRequestTypeDef(BaseModel): + ReservedNodeOfferingId: str + NodeCount: Optional[int] = None + +class PutResourcePolicyMessageRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class RebootClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class RecommendedActionTypeDef(BaseModel): + Text: Optional[str] = None + Database: Optional[str] = None + Command: Optional[str] = None + Type: Optional[RecommendedActionTypeType] = None + +class ReferenceLinkTypeDef(BaseModel): + Text: Optional[str] = None + Link: Optional[str] = None + +class RecurringChargeTypeDef(BaseModel): + RecurringChargeAmount: Optional[float] = None + RecurringChargeFrequency: Optional[str] = None + +class RejectDataShareMessageRequestTypeDef(BaseModel): + DataShareArn: str + +class ResizeClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + ClusterType: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + Classic: Optional[bool] = None + ReservedNodeId: Optional[str] = None + TargetReservedNodeOfferingId: Optional[str] = None + +class ResizeClusterMessageTypeDef(BaseModel): + ClusterIdentifier: str + ClusterType: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + Classic: Optional[bool] = None + ReservedNodeId: Optional[str] = None + TargetReservedNodeOfferingId: Optional[str] = None + +class RestoreFromClusterSnapshotMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + SnapshotClusterIdentifier: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + AllowVersionUpgrade: Optional[bool] = None + ClusterSubnetGroupName: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + OwnerAccount: Optional[str] = None + HsmClientCertificateIdentifier: Optional[str] = None + HsmConfigurationIdentifier: Optional[str] = None + ElasticIp: Optional[str] = None + ClusterParameterGroupName: Optional[str] = None + ClusterSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + PreferredMaintenanceWindow: Optional[str] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + KmsKeyId: Optional[str] = None + NodeType: Optional[str] = None + EnhancedVpcRouting: Optional[bool] = None + AdditionalInfo: Optional[str] = None + IamRoles: Optional[Sequence[str]] = None + MaintenanceTrackName: Optional[str] = None + SnapshotScheduleIdentifier: Optional[str] = None + NumberOfNodes: Optional[int] = None + AvailabilityZoneRelocation: Optional[bool] = None + AquaConfigurationStatus: Optional[AquaConfigurationStatusType] = None + DefaultIamRoleArn: Optional[str] = None + ReservedNodeId: Optional[str] = None + TargetReservedNodeOfferingId: Optional[str] = None + Encrypted: Optional[bool] = None + ManageMasterPassword: Optional[bool] = None + MasterPasswordSecretKmsKeyId: Optional[str] = None + IpAddressType: Optional[str] = None + MultiAZ: Optional[bool] = None + +class RestoreTableFromClusterSnapshotMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + SnapshotIdentifier: str + SourceDatabaseName: str + SourceTableName: str + NewTableName: str + SourceSchemaName: Optional[str] = None + TargetDatabaseName: Optional[str] = None + TargetSchemaName: Optional[str] = None + EnableCaseSensitiveIdentifier: Optional[bool] = None + +class TableRestoreStatusTypeDef(BaseModel): + TableRestoreRequestId: Optional[str] = None + Status: Optional[TableRestoreStatusTypeType] = None + Message: Optional[str] = None + RequestTime: Optional[datetime] = None + ProgressInMegaBytes: Optional[int] = None + TotalDataInMegaBytes: Optional[int] = None + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + SourceDatabaseName: Optional[str] = None + SourceSchemaName: Optional[str] = None + SourceTableName: Optional[str] = None + TargetDatabaseName: Optional[str] = None + TargetSchemaName: Optional[str] = None + NewTableName: Optional[str] = None + +class ResumeClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class ResumeClusterMessageTypeDef(BaseModel): + ClusterIdentifier: str + +class RevokeClusterSecurityGroupIngressMessageRequestTypeDef(BaseModel): + ClusterSecurityGroupName: str + CIDRIP: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + +class RevokeEndpointAccessMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + Account: Optional[str] = None + VpcIds: Optional[Sequence[str]] = None + Force: Optional[bool] = None + +class RevokeSnapshotAccessMessageRequestTypeDef(BaseModel): + AccountWithRestoreAccess: str + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + SnapshotClusterIdentifier: Optional[str] = None + +class RotateEncryptionKeyMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + +class SupportedOperationTypeDef(BaseModel): + OperationName: Optional[str] = None + +class UpdatePartnerStatusInputMessageRequestTypeDef(BaseModel): + AccountId: str + ClusterIdentifier: str + DatabaseName: str + PartnerName: str + Status: PartnerIntegrationStatusType + StatusMessage: Optional[str] = None + +class ClusterCredentialsTypeDef(BaseModel): + DbUser: str + DbPassword: str + Expiration: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterExtendedCredentialsTypeDef(BaseModel): + DbUser: str + DbPassword: str + Expiration: datetime + NextRefreshTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterParameterGroupNameMessageTypeDef(BaseModel): + ParameterGroupName: str + ParameterGroupStatus: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAuthenticationProfileResultTypeDef(BaseModel): + AuthenticationProfileName: str + AuthenticationProfileContent: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomDomainAssociationResultTypeDef(BaseModel): + CustomDomainName: str + CustomDomainCertificateArn: str + ClusterIdentifier: str + CustomDomainCertExpiryTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class CustomerStorageMessageTypeDef(BaseModel): + TotalBackupSizeInMegaBytes: float + TotalProvisionedStorageInMegaBytes: float + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAuthenticationProfileResultTypeDef(BaseModel): + AuthenticationProfileName: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointAuthorizationResponseTypeDef(BaseModel): + Grantor: str + Grantee: str + ClusterIdentifier: str + AuthorizeTime: datetime + ClusterStatus: str + Status: AuthorizationStatusType + AllowedAllVPCs: bool + AllowedVPCs: List[str] + EndpointCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingStatusTypeDef(BaseModel): + LoggingEnabled: bool + BucketName: str + S3KeyPrefix: str + LastSuccessfulDeliveryTime: datetime + LastFailureTime: datetime + LastFailureMessage: str + LogDestinationType: LogDestinationTypeType + LogExports: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyAuthenticationProfileResultTypeDef(BaseModel): + AuthenticationProfileName: str + AuthenticationProfileContent: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyCustomDomainAssociationResultTypeDef(BaseModel): + CustomDomainName: str + CustomDomainCertificateArn: str + ClusterIdentifier: str + CustomDomainCertExpiryTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class PartnerIntegrationOutputMessageTypeDef(BaseModel): + DatabaseName: str + PartnerName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResizeProgressMessageTypeDef(BaseModel): + TargetNodeType: str + TargetNumberOfNodes: int + TargetClusterType: str + Status: str + ImportTablesCompleted: List[str] + ImportTablesInProgress: List[str] + ImportTablesNotStarted: List[str] + AvgResizeRateInMegaBytesPerSecond: float + TotalResizeDataInMegaBytes: int + ProgressInMegaBytes: int + ElapsedTimeInSeconds: int + EstimatedTimeToCompletionInSeconds: int + ResizeType: str + Message: str + TargetEncryptionType: str + DataTransferProgressPercent: float + ResponseMetadata: ResponseMetadataTypeDef + +class AccountAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[AttributeValueTargetTypeDef]] = None + +class ModifyAquaOutputMessageTypeDef(BaseModel): + AquaConfiguration: AquaConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociationTypeDef(BaseModel): + CustomDomainCertificateArn: Optional[str] = None + CustomDomainCertificateExpiryDate: Optional[datetime] = None + CertificateAssociations: Optional[List[CertificateAssociationTypeDef]] = None + +class DescribeAuthenticationProfilesResultTypeDef(BaseModel): + AuthenticationProfiles: List[AuthenticationProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + SupportedPlatforms: Optional[List[SupportedPlatformTypeDef]] = None + +class BatchDeleteClusterSnapshotsRequestRequestTypeDef(BaseModel): + Identifiers: Sequence[DeleteClusterSnapshotMessageTypeDef] + +class BatchDeleteClusterSnapshotsResultTypeDef(BaseModel): + Resources: List[str] + Errors: List[SnapshotErrorMessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchModifyClusterSnapshotsOutputMessageTypeDef(BaseModel): + Resources: List[str] + Errors: List[SnapshotErrorMessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterDbRevisionTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + CurrentDatabaseRevision: Optional[str] = None + DatabaseRevisionReleaseDate: Optional[datetime] = None + RevisionTargets: Optional[List[RevisionTargetTypeDef]] = None + +class SecondaryClusterInfoTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + ClusterNodes: Optional[List[ClusterNodeTypeDef]] = None + +class ClusterParameterGroupDetailsTypeDef(BaseModel): + Parameters: List[ParameterTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DefaultClusterParametersTypeDef(BaseModel): + ParameterGroupFamily: Optional[str] = None + Marker: Optional[str] = None + Parameters: Optional[List[ParameterTypeDef]] = None + +class ModifyClusterParameterGroupMessageRequestTypeDef(BaseModel): + ParameterGroupName: str + Parameters: Sequence[ParameterTypeDef] + +class ResetClusterParameterGroupMessageRequestTypeDef(BaseModel): + ParameterGroupName: str + ResetAllParameters: Optional[bool] = None + Parameters: Optional[Sequence[ParameterTypeDef]] = None + +class ClusterParameterGroupStatusTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + ClusterParameterStatusList: Optional[List[ClusterParameterStatusTypeDef]] = None + +class ClusterParameterGroupTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + ParameterGroupFamily: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateClusterMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + NodeType: str + MasterUsername: str + DBName: Optional[str] = None + ClusterType: Optional[str] = None + MasterUserPassword: Optional[str] = None + ClusterSecurityGroups: Optional[Sequence[str]] = None + VpcSecurityGroupIds: Optional[Sequence[str]] = None + ClusterSubnetGroupName: Optional[str] = None + AvailabilityZone: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ClusterParameterGroupName: Optional[str] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + Port: Optional[int] = None + ClusterVersion: Optional[str] = None + AllowVersionUpgrade: Optional[bool] = None + NumberOfNodes: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + Encrypted: Optional[bool] = None + HsmClientCertificateIdentifier: Optional[str] = None + HsmConfigurationIdentifier: Optional[str] = None + ElasticIp: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnhancedVpcRouting: Optional[bool] = None + AdditionalInfo: Optional[str] = None + IamRoles: Optional[Sequence[str]] = None + MaintenanceTrackName: Optional[str] = None + SnapshotScheduleIdentifier: Optional[str] = None + AvailabilityZoneRelocation: Optional[bool] = None + AquaConfigurationStatus: Optional[AquaConfigurationStatusType] = None + DefaultIamRoleArn: Optional[str] = None + LoadSampleData: Optional[str] = None + ManageMasterPassword: Optional[bool] = None + MasterPasswordSecretKmsKeyId: Optional[str] = None + IpAddressType: Optional[str] = None + MultiAZ: Optional[bool] = None + RedshiftIdcApplicationArn: Optional[str] = None + +class CreateClusterParameterGroupMessageRequestTypeDef(BaseModel): + ParameterGroupName: str + ParameterGroupFamily: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateClusterSecurityGroupMessageRequestTypeDef(BaseModel): + ClusterSecurityGroupName: str + Description: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateClusterSnapshotMessageRequestTypeDef(BaseModel): + SnapshotIdentifier: str + ClusterIdentifier: str + ManualSnapshotRetentionPeriod: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateClusterSubnetGroupMessageRequestTypeDef(BaseModel): + ClusterSubnetGroupName: str + Description: str + SubnetIds: Sequence[str] + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEventSubscriptionMessageRequestTypeDef(BaseModel): + SubscriptionName: str + SnsTopicArn: str + SourceType: Optional[str] = None + SourceIds: Optional[Sequence[str]] = None + EventCategories: Optional[Sequence[str]] = None + Severity: Optional[str] = None + Enabled: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateHsmClientCertificateMessageRequestTypeDef(BaseModel): + HsmClientCertificateIdentifier: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateHsmConfigurationMessageRequestTypeDef(BaseModel): + HsmConfigurationIdentifier: str + Description: str + HsmIpAddress: str + HsmPartitionName: str + HsmPartitionPassword: str + HsmServerPublicCertificate: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotCopyGrantMessageRequestTypeDef(BaseModel): + SnapshotCopyGrantName: str + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotScheduleMessageRequestTypeDef(BaseModel): + ScheduleDefinitions: Optional[Sequence[str]] = None + ScheduleIdentifier: Optional[str] = None + ScheduleDescription: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DryRun: Optional[bool] = None + NextInvocations: Optional[int] = None + +class CreateTagsMessageRequestTypeDef(BaseModel): + ResourceName: str + Tags: Sequence[TagTypeDef] + +class CreateUsageLimitMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + FeatureType: UsageLimitFeatureTypeType + LimitType: UsageLimitLimitTypeType + Amount: int + Period: Optional[UsageLimitPeriodType] = None + BreachAction: Optional[UsageLimitBreachActionType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class EC2SecurityGroupTypeDef(BaseModel): + Status: Optional[str] = None + EC2SecurityGroupName: Optional[str] = None + EC2SecurityGroupOwnerId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class EventSubscriptionTypeDef(BaseModel): + CustomerAwsId: Optional[str] = None + CustSubscriptionId: Optional[str] = None + SnsTopicArn: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[datetime] = None + SourceType: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + EventCategoriesList: Optional[List[str]] = None + Severity: Optional[str] = None + Enabled: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + +class HsmClientCertificateTypeDef(BaseModel): + HsmClientCertificateIdentifier: Optional[str] = None + HsmClientCertificatePublicKey: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class HsmConfigurationTypeDef(BaseModel): + HsmConfigurationIdentifier: Optional[str] = None + Description: Optional[str] = None + HsmIpAddress: Optional[str] = None + HsmPartitionName: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class IPRangeTypeDef(BaseModel): + Status: Optional[str] = None + CIDRIP: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class SnapshotCopyGrantTypeDef(BaseModel): + SnapshotCopyGrantName: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class SnapshotScheduleResponseTypeDef(BaseModel): + ScheduleDefinitions: List[str] + ScheduleIdentifier: str + ScheduleDescription: str + Tags: List[TagTypeDef] + NextInvocations: List[datetime] + AssociatedClusterCount: int + AssociatedClusters: List[ClusterAssociatedToScheduleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SnapshotScheduleTypeDef(BaseModel): + ScheduleDefinitions: Optional[List[str]] = None + ScheduleIdentifier: Optional[str] = None + ScheduleDescription: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + NextInvocations: Optional[List[datetime]] = None + AssociatedClusterCount: Optional[int] = None + AssociatedClusters: Optional[List[ClusterAssociatedToScheduleTypeDef]] = None + +class SnapshotTypeDef(BaseModel): + SnapshotIdentifier: Optional[str] = None + ClusterIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[datetime] = None + Status: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + ClusterCreateTime: Optional[datetime] = None + MasterUsername: Optional[str] = None + ClusterVersion: Optional[str] = None + EngineFullVersion: Optional[str] = None + SnapshotType: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + DBName: Optional[str] = None + VpcId: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + EncryptedWithHSM: Optional[bool] = None + AccountsWithRestoreAccess: Optional[List[AccountWithRestoreAccessTypeDef]] = None + OwnerAccount: Optional[str] = None + TotalBackupSizeInMegaBytes: Optional[float] = None + ActualIncrementalBackupSizeInMegaBytes: Optional[float] = None + BackupProgressInMegaBytes: Optional[float] = None + CurrentBackupRateInMegaBytesPerSecond: Optional[float] = None + EstimatedSecondsToCompletion: Optional[int] = None + ElapsedTimeInSeconds: Optional[int] = None + SourceRegion: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + RestorableNodeTypes: Optional[List[str]] = None + EnhancedVpcRouting: Optional[bool] = None + MaintenanceTrackName: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + ManualSnapshotRemainingDays: Optional[int] = None + SnapshotRetentionStartTime: Optional[datetime] = None + MasterPasswordSecretArn: Optional[str] = None + MasterPasswordSecretKmsKeyId: Optional[str] = None + SnapshotArn: Optional[str] = None + +class TaggedResourceTypeDef(BaseModel): + Tag: Optional[TagTypeDef] = None + ResourceName: Optional[str] = None + ResourceType: Optional[str] = None + +class UsageLimitResponseTypeDef(BaseModel): + UsageLimitId: str + ClusterIdentifier: str + FeatureType: UsageLimitFeatureTypeType + LimitType: UsageLimitLimitTypeType + Amount: int + Period: UsageLimitPeriodType + BreachAction: UsageLimitBreachActionType + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UsageLimitTypeDef(BaseModel): + UsageLimitId: Optional[str] = None + ClusterIdentifier: Optional[str] = None + FeatureType: Optional[UsageLimitFeatureTypeType] = None + LimitType: Optional[UsageLimitLimitTypeType] = None + Amount: Optional[int] = None + Period: Optional[UsageLimitPeriodType] = None + BreachAction: Optional[UsageLimitBreachActionType] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribeReservedNodeExchangeStatusOutputMessageTypeDef(BaseModel): + ReservedNodeExchangeStatusDetails: List[ReservedNodeExchangeStatusTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterVersionsMessageTypeDef(BaseModel): + Marker: str + ClusterVersions: List[ClusterVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEventsMessageRequestTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + +class ModifyClusterMaintenanceMessageRequestTypeDef(BaseModel): + ClusterIdentifier: str + DeferMaintenance: Optional[bool] = None + DeferMaintenanceIdentifier: Optional[str] = None + DeferMaintenanceStartTime: Optional[TimestampTypeDef] = None + DeferMaintenanceEndTime: Optional[TimestampTypeDef] = None + DeferMaintenanceDuration: Optional[int] = None + +class DataShareResponseTypeDef(BaseModel): + DataShareArn: str + ProducerArn: str + AllowPubliclyAccessibleConsumers: bool + DataShareAssociations: List[DataShareAssociationTypeDef] + ManagedBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataShareTypeDef(BaseModel): + DataShareArn: Optional[str] = None + ProducerArn: Optional[str] = None + AllowPubliclyAccessibleConsumers: Optional[bool] = None + DataShareAssociations: Optional[List[DataShareAssociationTypeDef]] = None + ManagedBy: Optional[str] = None + +class DescribeClusterDbRevisionsMessageDescribeClusterDbRevisionsPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterParameterGroupsMessageDescribeClusterParameterGroupsPaginateTypeDef(BaseModel): + ParameterGroupName: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterParametersMessageDescribeClusterParametersPaginateTypeDef(BaseModel): + ParameterGroupName: str + Source: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterSecurityGroupsMessageDescribeClusterSecurityGroupsPaginateTypeDef(BaseModel): + ClusterSecurityGroupName: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterSubnetGroupsMessageDescribeClusterSubnetGroupsPaginateTypeDef(BaseModel): + ClusterSubnetGroupName: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterTracksMessageDescribeClusterTracksPaginateTypeDef(BaseModel): + MaintenanceTrackName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterVersionsMessageDescribeClusterVersionsPaginateTypeDef(BaseModel): + ClusterVersion: Optional[str] = None + ClusterParameterGroupFamily: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClustersMessageDescribeClustersPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCustomDomainAssociationsMessageDescribeCustomDomainAssociationsPaginateTypeDef(BaseModel): + CustomDomainName: Optional[str] = None + CustomDomainCertificateArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDataSharesForConsumerMessageDescribeDataSharesForConsumerPaginateTypeDef(BaseModel): + ConsumerArn: Optional[str] = None + Status: Optional[DataShareStatusForConsumerType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDataSharesForProducerMessageDescribeDataSharesForProducerPaginateTypeDef(BaseModel): + ProducerArn: Optional[str] = None + Status: Optional[DataShareStatusForProducerType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDataSharesMessageDescribeDataSharesPaginateTypeDef(BaseModel): + DataShareArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDefaultClusterParametersMessageDescribeDefaultClusterParametersPaginateTypeDef(BaseModel): + ParameterGroupFamily: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEndpointAccessMessageDescribeEndpointAccessPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + ResourceOwner: Optional[str] = None + EndpointName: Optional[str] = None + VpcId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEndpointAuthorizationMessageDescribeEndpointAuthorizationPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + Account: Optional[str] = None + Grantee: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventSubscriptionsMessageDescribeEventSubscriptionsPaginateTypeDef(BaseModel): + SubscriptionName: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEventsMessageDescribeEventsPaginateTypeDef(BaseModel): + SourceIdentifier: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Duration: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeHsmClientCertificatesMessageDescribeHsmClientCertificatesPaginateTypeDef(BaseModel): + HsmClientCertificateIdentifier: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeHsmConfigurationsMessageDescribeHsmConfigurationsPaginateTypeDef(BaseModel): + HsmConfigurationIdentifier: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInboundIntegrationsMessageDescribeInboundIntegrationsPaginateTypeDef(BaseModel): + IntegrationArn: Optional[str] = None + TargetArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrderableClusterOptionsMessageDescribeOrderableClusterOptionsPaginateTypeDef(BaseModel): + ClusterVersion: Optional[str] = None + NodeType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRedshiftIdcApplicationsMessageDescribeRedshiftIdcApplicationsPaginateTypeDef(BaseModel): + RedshiftIdcApplicationArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedNodeExchangeStatusInputMessageDescribeReservedNodeExchangeStatusPaginateTypeDef(BaseModel): + ReservedNodeId: Optional[str] = None + ReservedNodeExchangeRequestId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedNodeOfferingsMessageDescribeReservedNodeOfferingsPaginateTypeDef(BaseModel): + ReservedNodeOfferingId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeReservedNodesMessageDescribeReservedNodesPaginateTypeDef(BaseModel): + ReservedNodeId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotCopyGrantsMessageDescribeSnapshotCopyGrantsPaginateTypeDef(BaseModel): + SnapshotCopyGrantName: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSnapshotSchedulesMessageDescribeSnapshotSchedulesPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + ScheduleIdentifier: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTableRestoreStatusMessageDescribeTableRestoreStatusPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + TableRestoreRequestId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTagsMessageDescribeTagsPaginateTypeDef(BaseModel): + ResourceName: Optional[str] = None + ResourceType: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUsageLimitsMessageDescribeUsageLimitsPaginateTypeDef(BaseModel): + UsageLimitId: Optional[str] = None + ClusterIdentifier: Optional[str] = None + FeatureType: Optional[UsageLimitFeatureTypeType] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetReservedNodeExchangeConfigurationOptionsInputMessageGetReservedNodeExchangeConfigurationOptionsPaginateTypeDef(BaseModel): + ActionType: ReservedNodeExchangeActionTypeType + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetReservedNodeExchangeOfferingsInputMessageGetReservedNodeExchangeOfferingsPaginateTypeDef(BaseModel): + ReservedNodeId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationsMessageListRecommendationsPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + NamespaceArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterSnapshotsMessageDescribeClusterSnapshotsPaginateTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + SnapshotType: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + OwnerAccount: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + ClusterExists: Optional[bool] = None + SortingEntities: Optional[Sequence[SnapshotSortingEntityTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeClusterSnapshotsMessageRequestTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + SnapshotType: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + OwnerAccount: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + ClusterExists: Optional[bool] = None + SortingEntities: Optional[Sequence[SnapshotSortingEntityTypeDef]] = None + +class DescribeClusterSnapshotsMessageSnapshotAvailableWaitTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + SnapshotType: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + OwnerAccount: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + ClusterExists: Optional[bool] = None + SortingEntities: Optional[Sequence[SnapshotSortingEntityTypeDef]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClustersMessageClusterAvailableWaitTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClustersMessageClusterDeletedWaitTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClustersMessageClusterRestoredWaitTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + MaxRecords: Optional[int] = None + Marker: Optional[str] = None + TagKeys: Optional[Sequence[str]] = None + TagValues: Optional[Sequence[str]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNodeConfigurationOptionsMessageDescribeNodeConfigurationOptionsPaginateTypeDef(BaseModel): + ActionType: ActionTypeType + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + OwnerAccount: Optional[str] = None + Filters: Optional[Sequence[NodeConfigurationOptionsFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeNodeConfigurationOptionsMessageRequestTypeDef(BaseModel): + ActionType: ActionTypeType + ClusterIdentifier: Optional[str] = None + SnapshotIdentifier: Optional[str] = None + SnapshotArn: Optional[str] = None + OwnerAccount: Optional[str] = None + Filters: Optional[Sequence[NodeConfigurationOptionsFilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class DescribePartnersOutputMessageTypeDef(BaseModel): + PartnerIntegrationInfoList: List[PartnerIntegrationInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeScheduledActionsMessageDescribeScheduledActionsPaginateTypeDef(BaseModel): + ScheduledActionName: Optional[str] = None + TargetActionType: Optional[ScheduledActionTypeValuesType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Active: Optional[bool] = None + Filters: Optional[Sequence[ScheduledActionFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeScheduledActionsMessageRequestTypeDef(BaseModel): + ScheduledActionName: Optional[str] = None + TargetActionType: Optional[ScheduledActionTypeValuesType] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Active: Optional[bool] = None + Filters: Optional[Sequence[ScheduledActionFilterTypeDef]] = None + Marker: Optional[str] = None + MaxRecords: Optional[int] = None + +class EndpointAuthorizationListTypeDef(BaseModel): + EndpointAuthorizationList: List[EndpointAuthorizationTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventCategoriesMapTypeDef(BaseModel): + SourceType: Optional[str] = None + Events: Optional[List[EventInfoMapTypeDef]] = None + +class EventsMessageTypeDef(BaseModel): + Marker: str + Events: List[EventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResultTypeDef(BaseModel): + ResourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResultTypeDef(BaseModel): + ResourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InboundIntegrationTypeDef(BaseModel): + IntegrationArn: Optional[str] = None + SourceArn: Optional[str] = None + TargetArn: Optional[str] = None + Status: Optional[ZeroETLIntegrationStatusType] = None + Errors: Optional[List[IntegrationErrorTypeDef]] = None + CreateTime: Optional[datetime] = None + +class LakeFormationScopeUnionTypeDef(BaseModel): + LakeFormationQuery: Optional[LakeFormationQueryTypeDef] = None + +class VpcEndpointTypeDef(BaseModel): + VpcEndpointId: Optional[str] = None + VpcId: Optional[str] = None + NetworkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + +class NodeConfigurationOptionsMessageTypeDef(BaseModel): + NodeConfigurationOptionList: List[NodeConfigurationOptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationTypeDef(BaseModel): + Id: Optional[str] = None + ClusterIdentifier: Optional[str] = None + NamespaceArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + RecommendationType: Optional[str] = None + Title: Optional[str] = None + Description: Optional[str] = None + Observation: Optional[str] = None + ImpactRanking: Optional[ImpactRankingTypeType] = None + RecommendationText: Optional[str] = None + RecommendedActions: Optional[List[RecommendedActionTypeDef]] = None + ReferenceLinks: Optional[List[ReferenceLinkTypeDef]] = None + +class ReservedNodeOfferingTypeDef(BaseModel): + ReservedNodeOfferingId: Optional[str] = None + NodeType: Optional[str] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + OfferingType: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + ReservedNodeOfferingType: Optional[ReservedNodeOfferingTypeType] = None + +class ReservedNodeTypeDef(BaseModel): + ReservedNodeId: Optional[str] = None + ReservedNodeOfferingId: Optional[str] = None + NodeType: Optional[str] = None + StartTime: Optional[datetime] = None + Duration: Optional[int] = None + FixedPrice: Optional[float] = None + UsagePrice: Optional[float] = None + CurrencyCode: Optional[str] = None + NodeCount: Optional[int] = None + State: Optional[str] = None + OfferingType: Optional[str] = None + RecurringCharges: Optional[List[RecurringChargeTypeDef]] = None + ReservedNodeOfferingType: Optional[ReservedNodeOfferingTypeType] = None + +class RestoreTableFromClusterSnapshotResultTypeDef(BaseModel): + TableRestoreStatus: TableRestoreStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TableRestoreStatusMessageTypeDef(BaseModel): + TableRestoreStatusDetails: List[TableRestoreStatusTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduledActionTypeTypeDef(BaseModel): + ResizeCluster: Optional[ResizeClusterMessageTypeDef] = None + PauseCluster: Optional[PauseClusterMessageTypeDef] = None + ResumeCluster: Optional[ResumeClusterMessageTypeDef] = None + +class UpdateTargetTypeDef(BaseModel): + MaintenanceTrackName: Optional[str] = None + DatabaseVersion: Optional[str] = None + SupportedOperations: Optional[List[SupportedOperationTypeDef]] = None + +class AccountAttributeListTypeDef(BaseModel): + AccountAttributes: List[AccountAttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CustomDomainAssociationsMessageTypeDef(BaseModel): + Marker: str + Associations: List[AssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OrderableClusterOptionTypeDef(BaseModel): + ClusterVersion: Optional[str] = None + ClusterType: Optional[str] = None + NodeType: Optional[str] = None + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + +class SubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AvailabilityZoneTypeDef] = None + SubnetStatus: Optional[str] = None + +class ClusterDbRevisionsMessageTypeDef(BaseModel): + Marker: str + ClusterDbRevisions: List[ClusterDbRevisionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDefaultClusterParametersResultTypeDef(BaseModel): + DefaultClusterParameters: DefaultClusterParametersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterParameterGroupsMessageTypeDef(BaseModel): + Marker: str + ParameterGroups: List[ClusterParameterGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterParameterGroupResultTypeDef(BaseModel): + ClusterParameterGroup: ClusterParameterGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EventSubscriptionsMessageTypeDef(BaseModel): + Marker: str + EventSubscriptionsList: List[EventSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyEventSubscriptionResultTypeDef(BaseModel): + EventSubscription: EventSubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHsmClientCertificateResultTypeDef(BaseModel): + HsmClientCertificate: HsmClientCertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HsmClientCertificateMessageTypeDef(BaseModel): + Marker: str + HsmClientCertificates: List[HsmClientCertificateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHsmConfigurationResultTypeDef(BaseModel): + HsmConfiguration: HsmConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HsmConfigurationMessageTypeDef(BaseModel): + Marker: str + HsmConfigurations: List[HsmConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterSecurityGroupTypeDef(BaseModel): + ClusterSecurityGroupName: Optional[str] = None + Description: Optional[str] = None + EC2SecurityGroups: Optional[List[EC2SecurityGroupTypeDef]] = None + IPRanges: Optional[List[IPRangeTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateSnapshotCopyGrantResultTypeDef(BaseModel): + SnapshotCopyGrant: SnapshotCopyGrantTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SnapshotCopyGrantMessageTypeDef(BaseModel): + Marker: str + SnapshotCopyGrants: List[SnapshotCopyGrantTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotSchedulesOutputMessageTypeDef(BaseModel): + SnapshotSchedules: List[SnapshotScheduleTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class AuthorizeSnapshotAccessResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CopyClusterSnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterSnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterSnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClusterSnapshotResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeSnapshotAccessResultTypeDef(BaseModel): + Snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SnapshotMessageTypeDef(BaseModel): + Marker: str + Snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TaggedResourceListMessageTypeDef(BaseModel): + TaggedResources: List[TaggedResourceTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class UsageLimitListTypeDef(BaseModel): + UsageLimits: List[UsageLimitTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataSharesForConsumerResultTypeDef(BaseModel): + DataShares: List[DataShareTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataSharesForProducerResultTypeDef(BaseModel): + DataShares: List[DataShareTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDataSharesResultTypeDef(BaseModel): + DataShares: List[DataShareTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class EventCategoriesMessageTypeDef(BaseModel): + EventCategoriesMapList: List[EventCategoriesMapTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InboundIntegrationsMessageTypeDef(BaseModel): + Marker: str + InboundIntegrations: List[InboundIntegrationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceIntegrationsUnionExtraOutputTypeDef(BaseModel): + LakeFormation: Optional[List[LakeFormationScopeUnionTypeDef]] = None + +class ServiceIntegrationsUnionOutputTypeDef(BaseModel): + LakeFormation: Optional[List[LakeFormationScopeUnionTypeDef]] = None + +class ServiceIntegrationsUnionTypeDef(BaseModel): + LakeFormation: Optional[Sequence[LakeFormationScopeUnionTypeDef]] = None + +class EndpointAccessResponseTypeDef(BaseModel): + ClusterIdentifier: str + ResourceOwner: str + SubnetGroupName: str + EndpointStatus: str + EndpointName: str + EndpointCreateTime: datetime + Port: int + Address: str + VpcSecurityGroups: List[VpcSecurityGroupMembershipTypeDef] + VpcEndpoint: VpcEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointAccessTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + ResourceOwner: Optional[str] = None + SubnetGroupName: Optional[str] = None + EndpointStatus: Optional[str] = None + EndpointName: Optional[str] = None + EndpointCreateTime: Optional[datetime] = None + Port: Optional[int] = None + Address: Optional[str] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + VpcEndpoint: Optional[VpcEndpointTypeDef] = None + +class EndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + VpcEndpoints: Optional[List[VpcEndpointTypeDef]] = None + +class ListRecommendationsResultTypeDef(BaseModel): + Recommendations: List[RecommendationTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReservedNodeExchangeOfferingsOutputMessageTypeDef(BaseModel): + Marker: str + ReservedNodeOfferings: List[ReservedNodeOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedNodeOfferingsMessageTypeDef(BaseModel): + Marker: str + ReservedNodeOfferings: List[ReservedNodeOfferingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AcceptReservedNodeExchangeOutputMessageTypeDef(BaseModel): + ExchangedReservedNode: ReservedNodeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PurchaseReservedNodeOfferingResultTypeDef(BaseModel): + ReservedNode: ReservedNodeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReservedNodeConfigurationOptionTypeDef(BaseModel): + SourceReservedNode: Optional[ReservedNodeTypeDef] = None + TargetReservedNodeCount: Optional[int] = None + TargetReservedNodeOffering: Optional[ReservedNodeOfferingTypeDef] = None + +class ReservedNodesMessageTypeDef(BaseModel): + Marker: str + ReservedNodes: List[ReservedNodeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScheduledActionMessageRequestTypeDef(BaseModel): + ScheduledActionName: str + TargetAction: ScheduledActionTypeTypeDef + Schedule: str + IamRole: str + ScheduledActionDescription: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Enable: Optional[bool] = None + +class ModifyScheduledActionMessageRequestTypeDef(BaseModel): + ScheduledActionName: str + TargetAction: Optional[ScheduledActionTypeTypeDef] = None + Schedule: Optional[str] = None + IamRole: Optional[str] = None + ScheduledActionDescription: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Enable: Optional[bool] = None + +class ScheduledActionResponseTypeDef(BaseModel): + ScheduledActionName: str + TargetAction: ScheduledActionTypeTypeDef + Schedule: str + IamRole: str + ScheduledActionDescription: str + State: ScheduledActionStateType + NextInvocations: List[datetime] + StartTime: datetime + EndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduledActionTypeDef(BaseModel): + ScheduledActionName: Optional[str] = None + TargetAction: Optional[ScheduledActionTypeTypeDef] = None + Schedule: Optional[str] = None + IamRole: Optional[str] = None + ScheduledActionDescription: Optional[str] = None + State: Optional[ScheduledActionStateType] = None + NextInvocations: Optional[List[datetime]] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class MaintenanceTrackTypeDef(BaseModel): + MaintenanceTrackName: Optional[str] = None + DatabaseVersion: Optional[str] = None + UpdateTargets: Optional[List[UpdateTargetTypeDef]] = None + +class OrderableClusterOptionsMessageTypeDef(BaseModel): + OrderableClusterOptions: List[OrderableClusterOptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterSubnetGroupTypeDef(BaseModel): + ClusterSubnetGroupName: Optional[str] = None + Description: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[SubnetTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + SupportedClusterIpAddressTypes: Optional[List[str]] = None + +class AuthorizeClusterSecurityGroupIngressResultTypeDef(BaseModel): + ClusterSecurityGroup: ClusterSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterSecurityGroupMessageTypeDef(BaseModel): + Marker: str + ClusterSecurityGroups: List[ClusterSecurityGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterSecurityGroupResultTypeDef(BaseModel): + ClusterSecurityGroup: ClusterSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RevokeClusterSecurityGroupIngressResultTypeDef(BaseModel): + ClusterSecurityGroup: ClusterSecurityGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RedshiftIdcApplicationTypeDef(BaseModel): + IdcInstanceArn: Optional[str] = None + RedshiftIdcApplicationName: Optional[str] = None + RedshiftIdcApplicationArn: Optional[str] = None + IdentityNamespace: Optional[str] = None + IdcDisplayName: Optional[str] = None + IamRoleArn: Optional[str] = None + IdcManagedApplicationArn: Optional[str] = None + IdcOnboardStatus: Optional[str] = None + AuthorizedTokenIssuerList: Optional[List[AuthorizedTokenIssuerOutputTypeDef]] = None + ServiceIntegrations: Optional[List[ServiceIntegrationsUnionOutputTypeDef]] = None + +class EndpointAccessListTypeDef(BaseModel): + EndpointAccessList: List[EndpointAccessTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterTypeDef(BaseModel): + ClusterIdentifier: Optional[str] = None + NodeType: Optional[str] = None + ClusterStatus: Optional[str] = None + ClusterAvailabilityStatus: Optional[str] = None + ModifyStatus: Optional[str] = None + MasterUsername: Optional[str] = None + DBName: Optional[str] = None + Endpoint: Optional[EndpointTypeDef] = None + ClusterCreateTime: Optional[datetime] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + ClusterSecurityGroups: Optional[List[ClusterSecurityGroupMembershipTypeDef]] = None + VpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + ClusterParameterGroups: Optional[List[ClusterParameterGroupStatusTypeDef]] = None + ClusterSubnetGroupName: Optional[str] = None + VpcId: Optional[str] = None + AvailabilityZone: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[PendingModifiedValuesTypeDef] = None + ClusterVersion: Optional[str] = None + AllowVersionUpgrade: Optional[bool] = None + NumberOfNodes: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + Encrypted: Optional[bool] = None + RestoreStatus: Optional[RestoreStatusTypeDef] = None + DataTransferProgress: Optional[DataTransferProgressTypeDef] = None + HsmStatus: Optional[HsmStatusTypeDef] = None + ClusterSnapshotCopyStatus: Optional[ClusterSnapshotCopyStatusTypeDef] = None + ClusterPublicKey: Optional[str] = None + ClusterNodes: Optional[List[ClusterNodeTypeDef]] = None + ElasticIpStatus: Optional[ElasticIpStatusTypeDef] = None + ClusterRevisionNumber: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + EnhancedVpcRouting: Optional[bool] = None + IamRoles: Optional[List[ClusterIamRoleTypeDef]] = None + PendingActions: Optional[List[str]] = None + MaintenanceTrackName: Optional[str] = None + ElasticResizeNumberOfNodeOptions: Optional[str] = None + DeferredMaintenanceWindows: Optional[List[DeferredMaintenanceWindowTypeDef]] = None + SnapshotScheduleIdentifier: Optional[str] = None + SnapshotScheduleState: Optional[ScheduleStateType] = None + ExpectedNextSnapshotScheduleTime: Optional[datetime] = None + ExpectedNextSnapshotScheduleTimeStatus: Optional[str] = None + NextMaintenanceWindowStartTime: Optional[datetime] = None + ResizeInfo: Optional[ResizeInfoTypeDef] = None + AvailabilityZoneRelocationStatus: Optional[str] = None + ClusterNamespaceArn: Optional[str] = None + TotalStorageCapacityInMegaBytes: Optional[int] = None + AquaConfiguration: Optional[AquaConfigurationTypeDef] = None + DefaultIamRoleArn: Optional[str] = None + ReservedNodeExchangeStatus: Optional[ReservedNodeExchangeStatusTypeDef] = None + CustomDomainName: Optional[str] = None + CustomDomainCertificateArn: Optional[str] = None + CustomDomainCertificateExpiryDate: Optional[datetime] = None + MasterPasswordSecretArn: Optional[str] = None + MasterPasswordSecretKmsKeyId: Optional[str] = None + IpAddressType: Optional[str] = None + MultiAZ: Optional[str] = None + MultiAZSecondary: Optional[SecondaryClusterInfoTypeDef] = None + +class GetReservedNodeExchangeConfigurationOptionsOutputMessageTypeDef(BaseModel): + Marker: str + ReservedNodeConfigurationOptionList: List[ReservedNodeConfigurationOptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ScheduledActionsMessageTypeDef(BaseModel): + Marker: str + ScheduledActions: List[ScheduledActionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TrackListMessageTypeDef(BaseModel): + MaintenanceTracks: List[MaintenanceTrackTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ClusterSubnetGroupMessageTypeDef(BaseModel): + Marker: str + ClusterSubnetGroups: List[ClusterSubnetGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterSubnetGroupResultTypeDef(BaseModel): + ClusterSubnetGroup: ClusterSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClusterSubnetGroupResultTypeDef(BaseModel): + ClusterSubnetGroup: ClusterSubnetGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRedshiftIdcApplicationResultTypeDef(BaseModel): + RedshiftIdcApplication: RedshiftIdcApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRedshiftIdcApplicationsResultTypeDef(BaseModel): + RedshiftIdcApplications: List[RedshiftIdcApplicationTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyRedshiftIdcApplicationResultTypeDef(BaseModel): + RedshiftIdcApplication: RedshiftIdcApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRedshiftIdcApplicationMessageRequestTypeDef(BaseModel): + IdcInstanceArn: str + RedshiftIdcApplicationName: str + IdcDisplayName: str + IamRoleArn: str + IdentityNamespace: Optional[str] = None + AuthorizedTokenIssuerList: Optional[Sequence[AuthorizedTokenIssuerUnionTypeDef]] = None + ServiceIntegrations: Optional[Sequence[ServiceIntegrationsUnionUnionTypeDef]] = None + +class ModifyRedshiftIdcApplicationMessageRequestTypeDef(BaseModel): + RedshiftIdcApplicationArn: str + IdentityNamespace: Optional[str] = None + IamRoleArn: Optional[str] = None + IdcDisplayName: Optional[str] = None + AuthorizedTokenIssuerList: Optional[Sequence[AuthorizedTokenIssuerUnionTypeDef]] = None + ServiceIntegrations: Optional[Sequence[ServiceIntegrationsUnionUnionTypeDef]] = None + +class ClustersMessageTypeDef(BaseModel): + Marker: str + Clusters: List[ClusterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisableSnapshotCopyResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnableSnapshotCopyResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class FailoverPrimaryComputeResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClusterDbRevisionResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClusterIamRolesResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClusterMaintenanceResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifyClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModifySnapshotCopyRetentionPeriodResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PauseClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RebootClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResizeClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreFromClusterSnapshotResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResumeClusterResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RotateEncryptionKeyResultTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/redshift_constants.py b/aws_resource_validator/pydantic_models/redshift_constants.py new file mode 100644 index 00000000..518ab42c --- /dev/null +++ b/aws_resource_validator/pydantic_models/redshift_constants.py @@ -0,0 +1,544 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionTypeType = Literal["recommend-node-config", "resize-cluster", "restore-cluster"] +AquaConfigurationStatusType = Literal["auto", "disabled", "enabled"] +AquaStatusType = Literal["applying", "disabled", "enabled"] +AuthorizationStatusType = Literal["Authorized", "Revoking"] +ClusterAvailableWaiterName = Literal["cluster_available"] +ClusterDeletedWaiterName = Literal["cluster_deleted"] +ClusterRestoredWaiterName = Literal["cluster_restored"] +DataShareStatusForConsumerType = Literal["ACTIVE", "AVAILABLE"] +DataShareStatusForProducerType = Literal["ACTIVE", "AUTHORIZED", "DEAUTHORIZED", "PENDING_AUTHORIZATION", "REJECTED"] +DataShareStatusType = Literal["ACTIVE", "AUTHORIZED", "AVAILABLE", "DEAUTHORIZED", "PENDING_AUTHORIZATION", "REJECTED"] +DescribeClusterDbRevisionsPaginatorName = Literal["describe_cluster_db_revisions"] +DescribeClusterParameterGroupsPaginatorName = Literal["describe_cluster_parameter_groups"] +DescribeClusterParametersPaginatorName = Literal["describe_cluster_parameters"] +DescribeClusterSecurityGroupsPaginatorName = Literal["describe_cluster_security_groups"] +DescribeClusterSnapshotsPaginatorName = Literal["describe_cluster_snapshots"] +DescribeClusterSubnetGroupsPaginatorName = Literal["describe_cluster_subnet_groups"] +DescribeClusterTracksPaginatorName = Literal["describe_cluster_tracks"] +DescribeClusterVersionsPaginatorName = Literal["describe_cluster_versions"] +DescribeClustersPaginatorName = Literal["describe_clusters"] +DescribeCustomDomainAssociationsPaginatorName = Literal["describe_custom_domain_associations"] +DescribeDataSharesForConsumerPaginatorName = Literal["describe_data_shares_for_consumer"] +DescribeDataSharesForProducerPaginatorName = Literal["describe_data_shares_for_producer"] +DescribeDataSharesPaginatorName = Literal["describe_data_shares"] +DescribeDefaultClusterParametersPaginatorName = Literal["describe_default_cluster_parameters"] +DescribeEndpointAccessPaginatorName = Literal["describe_endpoint_access"] +DescribeEndpointAuthorizationPaginatorName = Literal["describe_endpoint_authorization"] +DescribeEventSubscriptionsPaginatorName = Literal["describe_event_subscriptions"] +DescribeEventsPaginatorName = Literal["describe_events"] +DescribeHsmClientCertificatesPaginatorName = Literal["describe_hsm_client_certificates"] +DescribeHsmConfigurationsPaginatorName = Literal["describe_hsm_configurations"] +DescribeInboundIntegrationsPaginatorName = Literal["describe_inbound_integrations"] +DescribeNodeConfigurationOptionsPaginatorName = Literal["describe_node_configuration_options"] +DescribeOrderableClusterOptionsPaginatorName = Literal["describe_orderable_cluster_options"] +DescribeRedshiftIdcApplicationsPaginatorName = Literal["describe_redshift_idc_applications"] +DescribeReservedNodeExchangeStatusPaginatorName = Literal["describe_reserved_node_exchange_status"] +DescribeReservedNodeOfferingsPaginatorName = Literal["describe_reserved_node_offerings"] +DescribeReservedNodesPaginatorName = Literal["describe_reserved_nodes"] +DescribeScheduledActionsPaginatorName = Literal["describe_scheduled_actions"] +DescribeSnapshotCopyGrantsPaginatorName = Literal["describe_snapshot_copy_grants"] +DescribeSnapshotSchedulesPaginatorName = Literal["describe_snapshot_schedules"] +DescribeTableRestoreStatusPaginatorName = Literal["describe_table_restore_status"] +DescribeTagsPaginatorName = Literal["describe_tags"] +DescribeUsageLimitsPaginatorName = Literal["describe_usage_limits"] +GetReservedNodeExchangeConfigurationOptionsPaginatorName = Literal["get_reserved_node_exchange_configuration_options"] +GetReservedNodeExchangeOfferingsPaginatorName = Literal["get_reserved_node_exchange_offerings"] +ImpactRankingTypeType = Literal["HIGH", "LOW", "MEDIUM"] +ListRecommendationsPaginatorName = Literal["list_recommendations"] +LogDestinationTypeType = Literal["cloudwatch", "s3"] +ModeType = Literal["high-performance", "standard"] +NodeConfigurationOptionsFilterNameType = Literal["EstimatedDiskUtilizationPercent", "Mode", "NodeType", "NumberOfNodes"] +OperatorTypeType = Literal["between", "eq", "ge", "gt", "in", "le", "lt"] +ParameterApplyTypeType = Literal["dynamic", "static"] +PartnerIntegrationStatusType = Literal["Active", "ConnectionFailure", "Inactive", "RuntimeFailure"] +RecommendedActionTypeType = Literal["CLI", "SQL"] +ReservedNodeExchangeActionTypeType = Literal["resize-cluster", "restore-cluster"] +ReservedNodeExchangeStatusTypeType = Literal["FAILED", "IN_PROGRESS", "PENDING", "REQUESTED", "RETRYING", "SUCCEEDED"] +ReservedNodeOfferingTypeType = Literal["Regular", "Upgradable"] +ScheduleStateType = Literal["ACTIVE", "FAILED", "MODIFYING"] +ScheduledActionFilterNameType = Literal["cluster-identifier", "iam-role"] +ScheduledActionStateType = Literal["ACTIVE", "DISABLED"] +ScheduledActionTypeValuesType = Literal["PauseCluster", "ResizeCluster", "ResumeCluster"] +ServiceAuthorizationType = Literal["Disabled", "Enabled"] +SnapshotAttributeToSortByType = Literal["CREATE_TIME", "SOURCE_TYPE", "TOTAL_SIZE"] +SnapshotAvailableWaiterName = Literal["snapshot_available"] +SortByOrderType = Literal["ASC", "DESC"] +SourceTypeType = Literal["cluster", + "cluster-parameter-group", + "cluster-security-group", + "cluster-snapshot", + "scheduled-action",] +TableRestoreStatusTypeType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "PENDING", "SUCCEEDED"] +UsageLimitBreachActionType = Literal["disable", "emit-metric", "log"] +UsageLimitFeatureTypeType = Literal["concurrency-scaling", "cross-region-datasharing", "spectrum"] +UsageLimitLimitTypeType = Literal["data-scanned", "time"] +UsageLimitPeriodType = Literal["daily", "monthly", "weekly"] +ZeroETLIntegrationStatusType = Literal["active", "creating", "deleting", "failed", "modifying", "needs_attention", "syncing"] +RedshiftServiceName = Literal["redshift"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_cluster_db_revisions", + "describe_cluster_parameter_groups", + "describe_cluster_parameters", + "describe_cluster_security_groups", + "describe_cluster_snapshots", + "describe_cluster_subnet_groups", + "describe_cluster_tracks", + "describe_cluster_versions", + "describe_clusters", + "describe_custom_domain_associations", + "describe_data_shares", + "describe_data_shares_for_consumer", + "describe_data_shares_for_producer", + "describe_default_cluster_parameters", + "describe_endpoint_access", + "describe_endpoint_authorization", + "describe_event_subscriptions", + "describe_events", + "describe_hsm_client_certificates", + "describe_hsm_configurations", + "describe_inbound_integrations", + "describe_node_configuration_options", + "describe_orderable_cluster_options", + "describe_redshift_idc_applications", + "describe_reserved_node_exchange_status", + "describe_reserved_node_offerings", + "describe_reserved_nodes", + "describe_scheduled_actions", + "describe_snapshot_copy_grants", + "describe_snapshot_schedules", + "describe_table_restore_status", + "describe_tags", + "describe_usage_limits", + "get_reserved_node_exchange_configuration_options", + "get_reserved_node_exchange_offerings", + "list_recommendations",] +WaiterName = Literal["cluster_available", "cluster_deleted", "cluster_restored", "snapshot_available"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AuthorizedTokenIssuerUnionTypeDef = Union[ 'AuthorizedTokenIssuerTypeDef', 'AuthorizedTokenIssuerExtraOutputTypeDef' ] +ServiceIntegrationsUnionUnionTypeDef = Union[ 'ServiceIntegrationsUnionTypeDef', 'ServiceIntegrationsUnionExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/redshift_data_classes.py b/aws_resource_validator/pydantic_models/redshift_data_classes.py new file mode 100644 index 00000000..474feb50 --- /dev/null +++ b/aws_resource_validator/pydantic_models/redshift_data_classes.py @@ -0,0 +1,295 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.redshift_data_constants import * + +class BatchExecuteStatementInputRequestTypeDef(BaseModel): + Database: str + Sqls: Sequence[str] + ClientToken: Optional[str] = None + ClusterIdentifier: Optional[str] = None + DbUser: Optional[str] = None + SecretArn: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + WorkgroupName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CancelStatementRequestRequestTypeDef(BaseModel): + Id: str + +class ColumnMetadataTypeDef(BaseModel): + columnDefault: Optional[str] = None + isCaseSensitive: Optional[bool] = None + isCurrency: Optional[bool] = None + isSigned: Optional[bool] = None + label: Optional[str] = None + length: Optional[int] = None + name: Optional[str] = None + nullable: Optional[int] = None + precision: Optional[int] = None + scale: Optional[int] = None + schemaName: Optional[str] = None + tableName: Optional[str] = None + typeName: Optional[str] = None + +class DescribeStatementRequestRequestTypeDef(BaseModel): + Id: str + +class SqlParameterTypeDef(BaseModel): + name: str + value: str + +class SubStatementDataTypeDef(BaseModel): + Id: str + CreatedAt: Optional[datetime] = None + Duration: Optional[int] = None + Error: Optional[str] = None + HasResultSet: Optional[bool] = None + QueryString: Optional[str] = None + RedshiftQueryId: Optional[int] = None + ResultRows: Optional[int] = None + ResultSize: Optional[int] = None + Status: Optional[StatementStatusStringType] = None + UpdatedAt: Optional[datetime] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeTableRequestRequestTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + ConnectedDatabase: Optional[str] = None + DbUser: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Schema: Optional[str] = None + SecretArn: Optional[str] = None + Table: Optional[str] = None + WorkgroupName: Optional[str] = None + +class FieldTypeDef(BaseModel): + blobValue: Optional[bytes] = None + booleanValue: Optional[bool] = None + doubleValue: Optional[float] = None + isNull: Optional[bool] = None + longValue: Optional[int] = None + stringValue: Optional[str] = None + +class GetStatementResultRequestRequestTypeDef(BaseModel): + Id: str + NextToken: Optional[str] = None + +class ListDatabasesRequestRequestTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + DbUser: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SecretArn: Optional[str] = None + WorkgroupName: Optional[str] = None + +class ListSchemasRequestRequestTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + ConnectedDatabase: Optional[str] = None + DbUser: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SchemaPattern: Optional[str] = None + SecretArn: Optional[str] = None + WorkgroupName: Optional[str] = None + +class ListStatementsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + RoleLevel: Optional[bool] = None + StatementName: Optional[str] = None + Status: Optional[StatusStringType] = None + +class ListTablesRequestRequestTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + ConnectedDatabase: Optional[str] = None + DbUser: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SchemaPattern: Optional[str] = None + SecretArn: Optional[str] = None + TablePattern: Optional[str] = None + WorkgroupName: Optional[str] = None + +class TableMemberTypeDef(BaseModel): + name: Optional[str] = None + schema: Optional[str] = None + type: Optional[str] = None + +class BatchExecuteStatementOutputTypeDef(BaseModel): + ClusterIdentifier: str + CreatedAt: datetime + Database: str + DbUser: str + Id: str + SecretArn: str + WorkgroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelStatementResponseTypeDef(BaseModel): + Status: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteStatementOutputTypeDef(BaseModel): + ClusterIdentifier: str + CreatedAt: datetime + Database: str + DbUser: str + Id: str + SecretArn: str + WorkgroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatabasesResponseTypeDef(BaseModel): + Databases: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchemasResponseTypeDef(BaseModel): + NextToken: str + Schemas: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTableResponseTypeDef(BaseModel): + ColumnList: List[ColumnMetadataTypeDef] + NextToken: str + TableName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteStatementInputRequestTypeDef(BaseModel): + Database: str + Sql: str + ClientToken: Optional[str] = None + ClusterIdentifier: Optional[str] = None + DbUser: Optional[str] = None + Parameters: Optional[Sequence[SqlParameterTypeDef]] = None + SecretArn: Optional[str] = None + StatementName: Optional[str] = None + WithEvent: Optional[bool] = None + WorkgroupName: Optional[str] = None + +class StatementDataTypeDef(BaseModel): + Id: str + CreatedAt: Optional[datetime] = None + IsBatchStatement: Optional[bool] = None + QueryParameters: Optional[List[SqlParameterTypeDef]] = None + QueryString: Optional[str] = None + QueryStrings: Optional[List[str]] = None + SecretArn: Optional[str] = None + StatementName: Optional[str] = None + Status: Optional[StatusStringType] = None + UpdatedAt: Optional[datetime] = None + +class DescribeStatementResponseTypeDef(BaseModel): + ClusterIdentifier: str + CreatedAt: datetime + Database: str + DbUser: str + Duration: int + Error: str + HasResultSet: bool + Id: str + QueryParameters: List[SqlParameterTypeDef] + QueryString: str + RedshiftPid: int + RedshiftQueryId: int + ResultRows: int + ResultSize: int + SecretArn: str + Status: StatusStringType + SubStatements: List[SubStatementDataTypeDef] + UpdatedAt: datetime + WorkgroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTableRequestDescribeTablePaginateTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + ConnectedDatabase: Optional[str] = None + DbUser: Optional[str] = None + Schema: Optional[str] = None + SecretArn: Optional[str] = None + Table: Optional[str] = None + WorkgroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetStatementResultRequestGetStatementResultPaginateTypeDef(BaseModel): + Id: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatabasesRequestListDatabasesPaginateTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + DbUser: Optional[str] = None + SecretArn: Optional[str] = None + WorkgroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemasRequestListSchemasPaginateTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + ConnectedDatabase: Optional[str] = None + DbUser: Optional[str] = None + SchemaPattern: Optional[str] = None + SecretArn: Optional[str] = None + WorkgroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStatementsRequestListStatementsPaginateTypeDef(BaseModel): + RoleLevel: Optional[bool] = None + StatementName: Optional[str] = None + Status: Optional[StatusStringType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTablesRequestListTablesPaginateTypeDef(BaseModel): + Database: str + ClusterIdentifier: Optional[str] = None + ConnectedDatabase: Optional[str] = None + DbUser: Optional[str] = None + SchemaPattern: Optional[str] = None + SecretArn: Optional[str] = None + TablePattern: Optional[str] = None + WorkgroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetStatementResultResponseTypeDef(BaseModel): + ColumnMetadata: List[ColumnMetadataTypeDef] + NextToken: str + Records: List[List[FieldTypeDef]] + TotalNumRows: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListTablesResponseTypeDef(BaseModel): + NextToken: str + Tables: List[TableMemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStatementsResponseTypeDef(BaseModel): + NextToken: str + Statements: List[StatementDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/redshift_data_constants.py b/aws_resource_validator/pydantic_models/redshift_data_constants.py new file mode 100644 index 00000000..8a71333a --- /dev/null +++ b/aws_resource_validator/pydantic_models/redshift_data_constants.py @@ -0,0 +1,402 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeTablePaginatorName = Literal["describe_table"] +GetStatementResultPaginatorName = Literal["get_statement_result"] +ListDatabasesPaginatorName = Literal["list_databases"] +ListSchemasPaginatorName = Literal["list_schemas"] +ListStatementsPaginatorName = Literal["list_statements"] +ListTablesPaginatorName = Literal["list_tables"] +StatementStatusStringType = Literal["ABORTED", "FAILED", "FINISHED", "PICKED", "STARTED", "SUBMITTED"] +StatusStringType = Literal["ABORTED", "ALL", "FAILED", "FINISHED", "PICKED", "STARTED", "SUBMITTED"] +RedshiftDataAPIServiceServiceName = Literal["redshift-data"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_table", + "get_statement_result", + "list_databases", + "list_schemas", + "list_statements", + "list_tables",] diff --git a/aws_resource_validator/pydantic_models/redshift_serverless_classes.py b/aws_resource_validator/pydantic_models/redshift_serverless_classes.py new file mode 100644 index 00000000..f30960ba --- /dev/null +++ b/aws_resource_validator/pydantic_models/redshift_serverless_classes.py @@ -0,0 +1,815 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.redshift_serverless_constants import * + +class AssociationTypeDef(BaseModel): + customDomainCertificateArn: Optional[str] = None + customDomainCertificateExpiryTime: Optional[datetime] = None + customDomainName: Optional[str] = None + workgroupName: Optional[str] = None + +class ConfigParameterTypeDef(BaseModel): + parameterKey: Optional[str] = None + parameterValue: Optional[str] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class SnapshotTypeDef(BaseModel): + accountsWithProvisionedRestoreAccess: Optional[List[str]] = None + accountsWithRestoreAccess: Optional[List[str]] = None + actualIncrementalBackupSizeInMegaBytes: Optional[float] = None + adminPasswordSecretArn: Optional[str] = None + adminPasswordSecretKmsKeyId: Optional[str] = None + adminUsername: Optional[str] = None + backupProgressInMegaBytes: Optional[float] = None + currentBackupRateInMegaBytesPerSecond: Optional[float] = None + elapsedTimeInSeconds: Optional[int] = None + estimatedSecondsToCompletion: Optional[int] = None + kmsKeyId: Optional[str] = None + namespaceArn: Optional[str] = None + namespaceName: Optional[str] = None + ownerAccount: Optional[str] = None + snapshotArn: Optional[str] = None + snapshotCreateTime: Optional[datetime] = None + snapshotName: Optional[str] = None + snapshotRemainingDays: Optional[int] = None + snapshotRetentionPeriod: Optional[int] = None + snapshotRetentionStartTime: Optional[datetime] = None + status: Optional[SnapshotStatusType] = None + totalBackupSizeInMegaBytes: Optional[float] = None + +class CreateCustomDomainAssociationRequestRequestTypeDef(BaseModel): + customDomainCertificateArn: str + customDomainName: str + workgroupName: str + +class CreateEndpointAccessRequestRequestTypeDef(BaseModel): + endpointName: str + subnetIds: Sequence[str] + workgroupName: str + ownerAccount: Optional[str] = None + vpcSecurityGroupIds: Optional[Sequence[str]] = None + +class NamespaceTypeDef(BaseModel): + adminPasswordSecretArn: Optional[str] = None + adminPasswordSecretKmsKeyId: Optional[str] = None + adminUsername: Optional[str] = None + creationDate: Optional[datetime] = None + dbName: Optional[str] = None + defaultIamRoleArn: Optional[str] = None + iamRoles: Optional[List[str]] = None + kmsKeyId: Optional[str] = None + logExports: Optional[List[LogExportType]] = None + namespaceArn: Optional[str] = None + namespaceId: Optional[str] = None + namespaceName: Optional[str] = None + status: Optional[NamespaceStatusType] = None + +class CreateSnapshotCopyConfigurationRequestRequestTypeDef(BaseModel): + destinationRegion: str + namespaceName: str + destinationKmsKeyId: Optional[str] = None + snapshotRetentionPeriod: Optional[int] = None + +class SnapshotCopyConfigurationTypeDef(BaseModel): + destinationKmsKeyId: Optional[str] = None + destinationRegion: Optional[str] = None + namespaceName: Optional[str] = None + snapshotCopyConfigurationArn: Optional[str] = None + snapshotCopyConfigurationId: Optional[str] = None + snapshotRetentionPeriod: Optional[int] = None + +class CreateUsageLimitRequestRequestTypeDef(BaseModel): + amount: int + resourceArn: str + usageType: UsageLimitUsageTypeType + breachAction: Optional[UsageLimitBreachActionType] = None + period: Optional[UsageLimitPeriodType] = None + +class UsageLimitTypeDef(BaseModel): + amount: Optional[int] = None + breachAction: Optional[UsageLimitBreachActionType] = None + period: Optional[UsageLimitPeriodType] = None + resourceArn: Optional[str] = None + usageLimitArn: Optional[str] = None + usageLimitId: Optional[str] = None + usageType: Optional[UsageLimitUsageTypeType] = None + +class DeleteCustomDomainAssociationRequestRequestTypeDef(BaseModel): + customDomainName: str + workgroupName: str + +class DeleteEndpointAccessRequestRequestTypeDef(BaseModel): + endpointName: str + +class DeleteNamespaceRequestRequestTypeDef(BaseModel): + namespaceName: str + finalSnapshotName: Optional[str] = None + finalSnapshotRetentionPeriod: Optional[int] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + +class DeleteScheduledActionRequestRequestTypeDef(BaseModel): + scheduledActionName: str + +class DeleteSnapshotCopyConfigurationRequestRequestTypeDef(BaseModel): + snapshotCopyConfigurationId: str + +class DeleteSnapshotRequestRequestTypeDef(BaseModel): + snapshotName: str + +class DeleteUsageLimitRequestRequestTypeDef(BaseModel): + usageLimitId: str + +class DeleteWorkgroupRequestRequestTypeDef(BaseModel): + workgroupName: str + +class VpcSecurityGroupMembershipTypeDef(BaseModel): + status: Optional[str] = None + vpcSecurityGroupId: Optional[str] = None + +class GetCredentialsRequestRequestTypeDef(BaseModel): + customDomainName: Optional[str] = None + dbName: Optional[str] = None + durationSeconds: Optional[int] = None + workgroupName: Optional[str] = None + +class GetCustomDomainAssociationRequestRequestTypeDef(BaseModel): + customDomainName: str + workgroupName: str + +class GetEndpointAccessRequestRequestTypeDef(BaseModel): + endpointName: str + +class GetNamespaceRequestRequestTypeDef(BaseModel): + namespaceName: str + +class GetRecoveryPointRequestRequestTypeDef(BaseModel): + recoveryPointId: str + +class RecoveryPointTypeDef(BaseModel): + namespaceArn: Optional[str] = None + namespaceName: Optional[str] = None + recoveryPointCreateTime: Optional[datetime] = None + recoveryPointId: Optional[str] = None + totalSizeInMegaBytes: Optional[float] = None + workgroupName: Optional[str] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ResourcePolicyTypeDef(BaseModel): + policy: Optional[str] = None + resourceArn: Optional[str] = None + +class GetScheduledActionRequestRequestTypeDef(BaseModel): + scheduledActionName: str + +class GetSnapshotRequestRequestTypeDef(BaseModel): + ownerAccount: Optional[str] = None + snapshotArn: Optional[str] = None + snapshotName: Optional[str] = None + +class GetTableRestoreStatusRequestRequestTypeDef(BaseModel): + tableRestoreRequestId: str + +class TableRestoreStatusTypeDef(BaseModel): + message: Optional[str] = None + namespaceName: Optional[str] = None + newTableName: Optional[str] = None + progressInMegaBytes: Optional[int] = None + recoveryPointId: Optional[str] = None + requestTime: Optional[datetime] = None + snapshotName: Optional[str] = None + sourceDatabaseName: Optional[str] = None + sourceSchemaName: Optional[str] = None + sourceTableName: Optional[str] = None + status: Optional[str] = None + tableRestoreRequestId: Optional[str] = None + targetDatabaseName: Optional[str] = None + targetSchemaName: Optional[str] = None + totalDataInMegaBytes: Optional[int] = None + workgroupName: Optional[str] = None + +class GetUsageLimitRequestRequestTypeDef(BaseModel): + usageLimitId: str + +class GetWorkgroupRequestRequestTypeDef(BaseModel): + workgroupName: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListCustomDomainAssociationsRequestRequestTypeDef(BaseModel): + customDomainCertificateArn: Optional[str] = None + customDomainName: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListEndpointAccessRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + ownerAccount: Optional[str] = None + vpcId: Optional[str] = None + workgroupName: Optional[str] = None + +class ListNamespacesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListScheduledActionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + namespaceName: Optional[str] = None + nextToken: Optional[str] = None + +class ScheduledActionAssociationTypeDef(BaseModel): + namespaceName: Optional[str] = None + scheduledActionName: Optional[str] = None + +class ListSnapshotCopyConfigurationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + namespaceName: Optional[str] = None + nextToken: Optional[str] = None + +class ListTableRestoreStatusRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + namespaceName: Optional[str] = None + nextToken: Optional[str] = None + workgroupName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListUsageLimitsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resourceArn: Optional[str] = None + usageType: Optional[UsageLimitUsageTypeType] = None + +class ListWorkgroupsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + ownerAccount: Optional[str] = None + +class NetworkInterfaceTypeDef(BaseModel): + availabilityZone: Optional[str] = None + networkInterfaceId: Optional[str] = None + privateIpAddress: Optional[str] = None + subnetId: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + policy: str + resourceArn: str + +class RestoreFromRecoveryPointRequestRequestTypeDef(BaseModel): + namespaceName: str + recoveryPointId: str + workgroupName: str + +class RestoreFromSnapshotRequestRequestTypeDef(BaseModel): + namespaceName: str + workgroupName: str + adminPasswordSecretKmsKeyId: Optional[str] = None + manageAdminPassword: Optional[bool] = None + ownerAccount: Optional[str] = None + snapshotArn: Optional[str] = None + snapshotName: Optional[str] = None + +class RestoreTableFromRecoveryPointRequestRequestTypeDef(BaseModel): + namespaceName: str + newTableName: str + recoveryPointId: str + sourceDatabaseName: str + sourceTableName: str + workgroupName: str + activateCaseSensitiveIdentifier: Optional[bool] = None + sourceSchemaName: Optional[str] = None + targetDatabaseName: Optional[str] = None + targetSchemaName: Optional[str] = None + +class RestoreTableFromSnapshotRequestRequestTypeDef(BaseModel): + namespaceName: str + newTableName: str + snapshotName: str + sourceDatabaseName: str + sourceTableName: str + workgroupName: str + activateCaseSensitiveIdentifier: Optional[bool] = None + sourceSchemaName: Optional[str] = None + targetDatabaseName: Optional[str] = None + targetSchemaName: Optional[str] = None + +class ScheduleOutputTypeDef(BaseModel): + at: Optional[datetime] = None + cron: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateCustomDomainAssociationRequestRequestTypeDef(BaseModel): + customDomainCertificateArn: str + customDomainName: str + workgroupName: str + +class UpdateEndpointAccessRequestRequestTypeDef(BaseModel): + endpointName: str + vpcSecurityGroupIds: Optional[Sequence[str]] = None + +class UpdateNamespaceRequestRequestTypeDef(BaseModel): + namespaceName: str + adminPasswordSecretKmsKeyId: Optional[str] = None + adminUserPassword: Optional[str] = None + adminUsername: Optional[str] = None + defaultIamRoleArn: Optional[str] = None + iamRoles: Optional[Sequence[str]] = None + kmsKeyId: Optional[str] = None + logExports: Optional[Sequence[LogExportType]] = None + manageAdminPassword: Optional[bool] = None + +class UpdateSnapshotCopyConfigurationRequestRequestTypeDef(BaseModel): + snapshotCopyConfigurationId: str + snapshotRetentionPeriod: Optional[int] = None + +class UpdateSnapshotRequestRequestTypeDef(BaseModel): + snapshotName: str + retentionPeriod: Optional[int] = None + +class UpdateUsageLimitRequestRequestTypeDef(BaseModel): + usageLimitId: str + amount: Optional[int] = None + breachAction: Optional[UsageLimitBreachActionType] = None + +class UpdateWorkgroupRequestRequestTypeDef(BaseModel): + workgroupName: str + baseCapacity: Optional[int] = None + configParameters: Optional[Sequence[ConfigParameterTypeDef]] = None + enhancedVpcRouting: Optional[bool] = None + maxCapacity: Optional[int] = None + port: Optional[int] = None + publiclyAccessible: Optional[bool] = None + securityGroupIds: Optional[Sequence[str]] = None + subnetIds: Optional[Sequence[str]] = None + +class ConvertRecoveryPointToSnapshotRequestRequestTypeDef(BaseModel): + recoveryPointId: str + snapshotName: str + retentionPeriod: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateNamespaceRequestRequestTypeDef(BaseModel): + namespaceName: str + adminPasswordSecretKmsKeyId: Optional[str] = None + adminUserPassword: Optional[str] = None + adminUsername: Optional[str] = None + dbName: Optional[str] = None + defaultIamRoleArn: Optional[str] = None + iamRoles: Optional[Sequence[str]] = None + kmsKeyId: Optional[str] = None + logExports: Optional[Sequence[LogExportType]] = None + manageAdminPassword: Optional[bool] = None + redshiftIdcApplicationArn: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotRequestRequestTypeDef(BaseModel): + namespaceName: str + snapshotName: str + retentionPeriod: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotScheduleActionParametersOutputTypeDef(BaseModel): + namespaceName: str + snapshotNamePrefix: str + retentionPeriod: Optional[int] = None + tags: Optional[List[TagTypeDef]] = None + +class CreateSnapshotScheduleActionParametersTypeDef(BaseModel): + namespaceName: str + snapshotNamePrefix: str + retentionPeriod: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateWorkgroupRequestRequestTypeDef(BaseModel): + namespaceName: str + workgroupName: str + baseCapacity: Optional[int] = None + configParameters: Optional[Sequence[ConfigParameterTypeDef]] = None + enhancedVpcRouting: Optional[bool] = None + maxCapacity: Optional[int] = None + port: Optional[int] = None + publiclyAccessible: Optional[bool] = None + securityGroupIds: Optional[Sequence[str]] = None + subnetIds: Optional[Sequence[str]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateCustomDomainAssociationResponseTypeDef(BaseModel): + customDomainCertificateArn: str + customDomainCertificateExpiryTime: datetime + customDomainName: str + workgroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCredentialsResponseTypeDef(BaseModel): + dbPassword: str + dbUser: str + expiration: datetime + nextRefreshTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomDomainAssociationResponseTypeDef(BaseModel): + customDomainCertificateArn: str + customDomainCertificateExpiryTime: datetime + customDomainName: str + workgroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomDomainAssociationsResponseTypeDef(BaseModel): + associations: List[AssociationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCustomDomainAssociationResponseTypeDef(BaseModel): + customDomainCertificateArn: str + customDomainCertificateExpiryTime: datetime + customDomainName: str + workgroupName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConvertRecoveryPointToSnapshotResponseTypeDef(BaseModel): + snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSnapshotResponseTypeDef(BaseModel): + snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotResponseTypeDef(BaseModel): + snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSnapshotResponseTypeDef(BaseModel): + snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSnapshotsResponseTypeDef(BaseModel): + nextToken: str + snapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSnapshotResponseTypeDef(BaseModel): + snapshot: SnapshotTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNamespaceResponseTypeDef(BaseModel): + namespace: NamespaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNamespaceResponseTypeDef(BaseModel): + namespace: NamespaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNamespaceResponseTypeDef(BaseModel): + namespace: NamespaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListNamespacesResponseTypeDef(BaseModel): + namespaces: List[NamespaceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreFromRecoveryPointResponseTypeDef(BaseModel): + namespace: NamespaceTypeDef + recoveryPointId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreFromSnapshotResponseTypeDef(BaseModel): + namespace: NamespaceTypeDef + ownerAccount: str + snapshotName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNamespaceResponseTypeDef(BaseModel): + namespace: NamespaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecoveryPointsRequestRequestTypeDef(BaseModel): + endTime: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + namespaceArn: Optional[str] = None + namespaceName: Optional[str] = None + nextToken: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + +class ListSnapshotsRequestRequestTypeDef(BaseModel): + endTime: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + namespaceArn: Optional[str] = None + namespaceName: Optional[str] = None + nextToken: Optional[str] = None + ownerAccount: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + +class ScheduleTypeDef(BaseModel): + at: Optional[TimestampTypeDef] = None + cron: Optional[str] = None + +class CreateSnapshotCopyConfigurationResponseTypeDef(BaseModel): + snapshotCopyConfiguration: SnapshotCopyConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotCopyConfigurationResponseTypeDef(BaseModel): + snapshotCopyConfiguration: SnapshotCopyConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSnapshotCopyConfigurationsResponseTypeDef(BaseModel): + nextToken: str + snapshotCopyConfigurations: List[SnapshotCopyConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSnapshotCopyConfigurationResponseTypeDef(BaseModel): + snapshotCopyConfiguration: SnapshotCopyConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUsageLimitResponseTypeDef(BaseModel): + usageLimit: UsageLimitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteUsageLimitResponseTypeDef(BaseModel): + usageLimit: UsageLimitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUsageLimitResponseTypeDef(BaseModel): + usageLimit: UsageLimitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUsageLimitsResponseTypeDef(BaseModel): + nextToken: str + usageLimits: List[UsageLimitTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUsageLimitResponseTypeDef(BaseModel): + usageLimit: UsageLimitTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecoveryPointResponseTypeDef(BaseModel): + recoveryPoint: RecoveryPointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecoveryPointsResponseTypeDef(BaseModel): + nextToken: str + recoveryPoints: List[RecoveryPointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + resourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + resourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTableRestoreStatusResponseTypeDef(BaseModel): + tableRestoreStatus: TableRestoreStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTableRestoreStatusResponseTypeDef(BaseModel): + nextToken: str + tableRestoreStatuses: List[TableRestoreStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreTableFromRecoveryPointResponseTypeDef(BaseModel): + tableRestoreStatus: TableRestoreStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreTableFromSnapshotResponseTypeDef(BaseModel): + tableRestoreStatus: TableRestoreStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomDomainAssociationsRequestListCustomDomainAssociationsPaginateTypeDef(BaseModel): + customDomainCertificateArn: Optional[str] = None + customDomainName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEndpointAccessRequestListEndpointAccessPaginateTypeDef(BaseModel): + ownerAccount: Optional[str] = None + vpcId: Optional[str] = None + workgroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNamespacesRequestListNamespacesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecoveryPointsRequestListRecoveryPointsPaginateTypeDef(BaseModel): + endTime: Optional[TimestampTypeDef] = None + namespaceArn: Optional[str] = None + namespaceName: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScheduledActionsRequestListScheduledActionsPaginateTypeDef(BaseModel): + namespaceName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSnapshotCopyConfigurationsRequestListSnapshotCopyConfigurationsPaginateTypeDef(BaseModel): + namespaceName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSnapshotsRequestListSnapshotsPaginateTypeDef(BaseModel): + endTime: Optional[TimestampTypeDef] = None + namespaceArn: Optional[str] = None + namespaceName: Optional[str] = None + ownerAccount: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTableRestoreStatusRequestListTableRestoreStatusPaginateTypeDef(BaseModel): + namespaceName: Optional[str] = None + workgroupName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsageLimitsRequestListUsageLimitsPaginateTypeDef(BaseModel): + resourceArn: Optional[str] = None + usageType: Optional[UsageLimitUsageTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkgroupsRequestListWorkgroupsPaginateTypeDef(BaseModel): + ownerAccount: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScheduledActionsResponseTypeDef(BaseModel): + nextToken: str + scheduledActions: List[ScheduledActionAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VpcEndpointTypeDef(BaseModel): + networkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + vpcEndpointId: Optional[str] = None + vpcId: Optional[str] = None + +class TargetActionOutputTypeDef(BaseModel): + createSnapshot: Optional[CreateSnapshotScheduleActionParametersOutputTypeDef] = None + +class TargetActionTypeDef(BaseModel): + createSnapshot: Optional[CreateSnapshotScheduleActionParametersTypeDef] = None + +class EndpointAccessTypeDef(BaseModel): + address: Optional[str] = None + endpointArn: Optional[str] = None + endpointCreateTime: Optional[datetime] = None + endpointName: Optional[str] = None + endpointStatus: Optional[str] = None + port: Optional[int] = None + subnetIds: Optional[List[str]] = None + vpcEndpoint: Optional[VpcEndpointTypeDef] = None + vpcSecurityGroups: Optional[List[VpcSecurityGroupMembershipTypeDef]] = None + workgroupName: Optional[str] = None + +class EndpointTypeDef(BaseModel): + address: Optional[str] = None + port: Optional[int] = None + vpcEndpoints: Optional[List[VpcEndpointTypeDef]] = None + +class ScheduledActionResponseTypeDef(BaseModel): + endTime: Optional[datetime] = None + namespaceName: Optional[str] = None + nextInvocations: Optional[List[datetime]] = None + roleArn: Optional[str] = None + schedule: Optional[ScheduleOutputTypeDef] = None + scheduledActionDescription: Optional[str] = None + scheduledActionName: Optional[str] = None + scheduledActionUuid: Optional[str] = None + startTime: Optional[datetime] = None + state: Optional[StateType] = None + targetAction: Optional[TargetActionOutputTypeDef] = None + +class CreateScheduledActionRequestRequestTypeDef(BaseModel): + namespaceName: str + roleArn: str + schedule: ScheduleTypeDef + scheduledActionName: str + targetAction: TargetActionTypeDef + enabled: Optional[bool] = None + endTime: Optional[TimestampTypeDef] = None + scheduledActionDescription: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + +class UpdateScheduledActionRequestRequestTypeDef(BaseModel): + scheduledActionName: str + enabled: Optional[bool] = None + endTime: Optional[TimestampTypeDef] = None + roleArn: Optional[str] = None + schedule: Optional[ScheduleTypeDef] = None + scheduledActionDescription: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + targetAction: Optional[TargetActionTypeDef] = None + +class CreateEndpointAccessResponseTypeDef(BaseModel): + endpoint: EndpointAccessTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteEndpointAccessResponseTypeDef(BaseModel): + endpoint: EndpointAccessTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEndpointAccessResponseTypeDef(BaseModel): + endpoint: EndpointAccessTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEndpointAccessResponseTypeDef(BaseModel): + endpoints: List[EndpointAccessTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEndpointAccessResponseTypeDef(BaseModel): + endpoint: EndpointAccessTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class WorkgroupTypeDef(BaseModel): + baseCapacity: Optional[int] = None + configParameters: Optional[List[ConfigParameterTypeDef]] = None + creationDate: Optional[datetime] = None + crossAccountVpcs: Optional[List[str]] = None + customDomainCertificateArn: Optional[str] = None + customDomainCertificateExpiryTime: Optional[datetime] = None + customDomainName: Optional[str] = None + endpoint: Optional[EndpointTypeDef] = None + enhancedVpcRouting: Optional[bool] = None + maxCapacity: Optional[int] = None + namespaceName: Optional[str] = None + patchVersion: Optional[str] = None + port: Optional[int] = None + publiclyAccessible: Optional[bool] = None + securityGroupIds: Optional[List[str]] = None + status: Optional[WorkgroupStatusType] = None + subnetIds: Optional[List[str]] = None + workgroupArn: Optional[str] = None + workgroupId: Optional[str] = None + workgroupName: Optional[str] = None + workgroupVersion: Optional[str] = None + +class CreateScheduledActionResponseTypeDef(BaseModel): + scheduledAction: ScheduledActionResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteScheduledActionResponseTypeDef(BaseModel): + scheduledAction: ScheduledActionResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetScheduledActionResponseTypeDef(BaseModel): + scheduledAction: ScheduledActionResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateScheduledActionResponseTypeDef(BaseModel): + scheduledAction: ScheduledActionResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkgroupResponseTypeDef(BaseModel): + workgroup: WorkgroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkgroupResponseTypeDef(BaseModel): + workgroup: WorkgroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkgroupResponseTypeDef(BaseModel): + workgroup: WorkgroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkgroupsResponseTypeDef(BaseModel): + nextToken: str + workgroups: List[WorkgroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkgroupResponseTypeDef(BaseModel): + workgroup: WorkgroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/redshift_serverless_constants.py b/aws_resource_validator/pydantic_models/redshift_serverless_constants.py new file mode 100644 index 00000000..767499ad --- /dev/null +++ b/aws_resource_validator/pydantic_models/redshift_serverless_constants.py @@ -0,0 +1,443 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListCustomDomainAssociationsPaginatorName = Literal["list_custom_domain_associations"] +ListEndpointAccessPaginatorName = Literal["list_endpoint_access"] +ListNamespacesPaginatorName = Literal["list_namespaces"] +ListRecoveryPointsPaginatorName = Literal["list_recovery_points"] +ListScheduledActionsPaginatorName = Literal["list_scheduled_actions"] +ListSnapshotCopyConfigurationsPaginatorName = Literal["list_snapshot_copy_configurations"] +ListSnapshotsPaginatorName = Literal["list_snapshots"] +ListTableRestoreStatusPaginatorName = Literal["list_table_restore_status"] +ListUsageLimitsPaginatorName = Literal["list_usage_limits"] +ListWorkgroupsPaginatorName = Literal["list_workgroups"] +LogExportType = Literal["connectionlog", "useractivitylog", "userlog"] +NamespaceStatusType = Literal["AVAILABLE", "DELETING", "MODIFYING"] +SnapshotStatusType = Literal["AVAILABLE", "CANCELLED", "COPYING", "CREATING", "DELETED", "FAILED"] +StateType = Literal["ACTIVE", "DISABLED"] +UsageLimitBreachActionType = Literal["deactivate", "emit-metric", "log"] +UsageLimitPeriodType = Literal["daily", "monthly", "weekly"] +UsageLimitUsageTypeType = Literal["cross-region-datasharing", "serverless-compute"] +WorkgroupStatusType = Literal["AVAILABLE", "CREATING", "DELETING", "MODIFYING"] +RedshiftServerlessServiceName = Literal["redshift-serverless"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_custom_domain_associations", + "list_endpoint_access", + "list_namespaces", + "list_recovery_points", + "list_scheduled_actions", + "list_snapshot_copy_configurations", + "list_snapshots", + "list_table_restore_status", + "list_usage_limits", + "list_workgroups",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ScheduleUnionTypeDef = Union['ScheduleTypeDef', 'ScheduleOutputTypeDef'] +TargetActionUnionTypeDef = Union['TargetActionTypeDef', 'TargetActionOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/rekognition_classes.py b/aws_resource_validator/pydantic_models/rekognition_classes.py new file mode 100644 index 00000000..591ec51d --- /dev/null +++ b/aws_resource_validator/pydantic_models/rekognition_classes.py @@ -0,0 +1,1624 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.rekognition_constants import * + +class AgeRangeTypeDef(BaseModel): + Low: Optional[int] = None + High: Optional[int] = None + +class AssociateFacesRequestRequestTypeDef(BaseModel): + CollectionId: str + UserId: str + FaceIds: Sequence[str] + UserMatchThreshold: Optional[float] = None + ClientRequestToken: Optional[str] = None + +class AssociatedFaceTypeDef(BaseModel): + FaceId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UnsuccessfulFaceAssociationTypeDef(BaseModel): + FaceId: Optional[str] = None + UserId: Optional[str] = None + Confidence: Optional[float] = None + Reasons: Optional[List[UnsuccessfulFaceAssociationReasonType]] = None + +class AudioMetadataTypeDef(BaseModel): + Codec: Optional[str] = None + DurationMillis: Optional[int] = None + SampleRate: Optional[int] = None + NumberOfChannels: Optional[int] = None + +class BoundingBoxTypeDef(BaseModel): + Width: Optional[float] = None + Height: Optional[float] = None + Left: Optional[float] = None + Top: Optional[float] = None + +class S3ObjectTypeDef(BaseModel): + Bucket: Optional[str] = None + Name: Optional[str] = None + Version: Optional[str] = None + +class BeardTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class BlackFrameTypeDef(BaseModel): + MaxPixelThreshold: Optional[float] = None + MinCoveragePercentage: Optional[float] = None + +class KnownGenderTypeDef(BaseModel): + Type: Optional[KnownGenderTypeType] = None + +class EmotionTypeDef(BaseModel): + Type: Optional[EmotionNameType] = None + Confidence: Optional[float] = None + +class ImageQualityTypeDef(BaseModel): + Brightness: Optional[float] = None + Sharpness: Optional[float] = None + +class LandmarkTypeDef(BaseModel): + Type: Optional[LandmarkTypeType] = None + X: Optional[float] = None + Y: Optional[float] = None + +class PoseTypeDef(BaseModel): + Roll: Optional[float] = None + Yaw: Optional[float] = None + Pitch: Optional[float] = None + +class SmileTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class ConnectedHomeSettingsForUpdateTypeDef(BaseModel): + Labels: Optional[Sequence[str]] = None + MinConfidence: Optional[float] = None + +class ConnectedHomeSettingsOutputTypeDef(BaseModel): + Labels: List[str] + MinConfidence: Optional[float] = None + +class ConnectedHomeSettingsTypeDef(BaseModel): + Labels: Sequence[str] + MinConfidence: Optional[float] = None + +class ContentTypeTypeDef(BaseModel): + Confidence: Optional[float] = None + Name: Optional[str] = None + +class ModerationLabelTypeDef(BaseModel): + Confidence: Optional[float] = None + Name: Optional[str] = None + ParentName: Optional[str] = None + TaxonomyLevel: Optional[int] = None + +class OutputConfigTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3KeyPrefix: Optional[str] = None + +class CoversBodyPartTypeDef(BaseModel): + Confidence: Optional[float] = None + Value: Optional[bool] = None + +class CreateCollectionRequestRequestTypeDef(BaseModel): + CollectionId: str + Tags: Optional[Mapping[str, str]] = None + +class LivenessOutputConfigTypeDef(BaseModel): + S3Bucket: str + S3KeyPrefix: Optional[str] = None + +class CreateProjectRequestRequestTypeDef(BaseModel): + ProjectName: str + Feature: Optional[CustomizationFeatureType] = None + AutoUpdate: Optional[ProjectAutoUpdateType] = None + Tags: Optional[Mapping[str, str]] = None + +class StreamProcessorDataSharingPreferenceTypeDef(BaseModel): + OptIn: bool + +class StreamProcessorNotificationChannelTypeDef(BaseModel): + SNSTopicArn: str + +class CreateUserRequestRequestTypeDef(BaseModel): + CollectionId: str + UserId: str + ClientRequestToken: Optional[str] = None + +class CustomizationFeatureContentModerationConfigTypeDef(BaseModel): + ConfidenceThreshold: Optional[float] = None + +class DatasetStatsTypeDef(BaseModel): + LabeledEntries: Optional[int] = None + TotalEntries: Optional[int] = None + TotalLabels: Optional[int] = None + ErrorEntries: Optional[int] = None + +class DatasetLabelStatsTypeDef(BaseModel): + EntryCount: Optional[int] = None + BoundingBoxCount: Optional[int] = None + +class DatasetMetadataTypeDef(BaseModel): + CreationTimestamp: Optional[datetime] = None + DatasetType: Optional[DatasetTypeType] = None + DatasetArn: Optional[str] = None + Status: Optional[DatasetStatusType] = None + StatusMessage: Optional[str] = None + StatusMessageCode: Optional[DatasetStatusMessageCodeType] = None + +class DeleteCollectionRequestRequestTypeDef(BaseModel): + CollectionId: str + +class DeleteDatasetRequestRequestTypeDef(BaseModel): + DatasetArn: str + +class DeleteFacesRequestRequestTypeDef(BaseModel): + CollectionId: str + FaceIds: Sequence[str] + +class UnsuccessfulFaceDeletionTypeDef(BaseModel): + FaceId: Optional[str] = None + UserId: Optional[str] = None + Reasons: Optional[List[UnsuccessfulFaceDeletionReasonType]] = None + +class DeleteProjectPolicyRequestRequestTypeDef(BaseModel): + ProjectArn: str + PolicyName: str + PolicyRevisionId: Optional[str] = None + +class DeleteProjectRequestRequestTypeDef(BaseModel): + ProjectArn: str + +class DeleteProjectVersionRequestRequestTypeDef(BaseModel): + ProjectVersionArn: str + +class DeleteStreamProcessorRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + CollectionId: str + UserId: str + ClientRequestToken: Optional[str] = None + +class DescribeCollectionRequestRequestTypeDef(BaseModel): + CollectionId: str + +class DescribeDatasetRequestRequestTypeDef(BaseModel): + DatasetArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeProjectVersionsRequestRequestTypeDef(BaseModel): + ProjectArn: str + VersionNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeProjectsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ProjectNames: Optional[Sequence[str]] = None + Features: Optional[Sequence[CustomizationFeatureType]] = None + +class DescribeStreamProcessorRequestRequestTypeDef(BaseModel): + Name: str + +class DetectLabelsImageQualityTypeDef(BaseModel): + Brightness: Optional[float] = None + Sharpness: Optional[float] = None + Contrast: Optional[float] = None + +class DominantColorTypeDef(BaseModel): + Red: Optional[int] = None + Blue: Optional[int] = None + Green: Optional[int] = None + HexCode: Optional[str] = None + CSSColor: Optional[str] = None + SimplifiedColor: Optional[str] = None + PixelPercent: Optional[float] = None + +class DetectLabelsImagePropertiesSettingsTypeDef(BaseModel): + MaxDominantColors: Optional[int] = None + +class GeneralLabelsSettingsTypeDef(BaseModel): + LabelInclusionFilters: Optional[Sequence[str]] = None + LabelExclusionFilters: Optional[Sequence[str]] = None + LabelCategoryInclusionFilters: Optional[Sequence[str]] = None + LabelCategoryExclusionFilters: Optional[Sequence[str]] = None + +class HumanLoopActivationOutputTypeDef(BaseModel): + HumanLoopArn: Optional[str] = None + HumanLoopActivationReasons: Optional[List[str]] = None + HumanLoopActivationConditionsEvaluationResults: Optional[str] = None + +class ProtectiveEquipmentSummarizationAttributesTypeDef(BaseModel): + MinConfidence: float + RequiredEquipmentTypes: Sequence[ProtectiveEquipmentTypeType] + +class ProtectiveEquipmentSummaryTypeDef(BaseModel): + PersonsWithRequiredEquipment: Optional[List[int]] = None + PersonsWithoutRequiredEquipment: Optional[List[int]] = None + PersonsIndeterminate: Optional[List[int]] = None + +class DetectionFilterTypeDef(BaseModel): + MinConfidence: Optional[float] = None + MinBoundingBoxHeight: Optional[float] = None + MinBoundingBoxWidth: Optional[float] = None + +class DisassociateFacesRequestRequestTypeDef(BaseModel): + CollectionId: str + UserId: str + FaceIds: Sequence[str] + ClientRequestToken: Optional[str] = None + +class DisassociatedFaceTypeDef(BaseModel): + FaceId: Optional[str] = None + +class UnsuccessfulFaceDisassociationTypeDef(BaseModel): + FaceId: Optional[str] = None + UserId: Optional[str] = None + Reasons: Optional[List[UnsuccessfulFaceDisassociationReasonType]] = None + +class DistributeDatasetTypeDef(BaseModel): + Arn: str + +class EyeDirectionTypeDef(BaseModel): + Yaw: Optional[float] = None + Pitch: Optional[float] = None + Confidence: Optional[float] = None + +class EyeOpenTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class EyeglassesTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class FaceOccludedTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class GenderTypeDef(BaseModel): + Value: Optional[GenderTypeType] = None + Confidence: Optional[float] = None + +class MouthOpenTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class MustacheTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class SunglassesTypeDef(BaseModel): + Value: Optional[bool] = None + Confidence: Optional[float] = None + +class FaceSearchSettingsTypeDef(BaseModel): + CollectionId: Optional[str] = None + FaceMatchThreshold: Optional[float] = None + +class PointTypeDef(BaseModel): + X: Optional[float] = None + Y: Optional[float] = None + +class GetCelebrityInfoRequestRequestTypeDef(BaseModel): + Id: str + +class GetCelebrityRecognitionRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[CelebrityRecognitionSortByType] = None + +class VideoMetadataTypeDef(BaseModel): + Codec: Optional[str] = None + DurationMillis: Optional[int] = None + Format: Optional[str] = None + FrameRate: Optional[float] = None + FrameHeight: Optional[int] = None + FrameWidth: Optional[int] = None + ColorRange: Optional[VideoColorRangeType] = None + +class GetContentModerationRequestMetadataTypeDef(BaseModel): + SortBy: Optional[ContentModerationSortByType] = None + AggregateBy: Optional[ContentModerationAggregateByType] = None + +class GetContentModerationRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[ContentModerationSortByType] = None + AggregateBy: Optional[ContentModerationAggregateByType] = None + +class GetFaceDetectionRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetFaceLivenessSessionResultsRequestRequestTypeDef(BaseModel): + SessionId: str + +class GetFaceSearchRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[FaceSearchSortByType] = None + +class GetLabelDetectionRequestMetadataTypeDef(BaseModel): + SortBy: Optional[LabelDetectionSortByType] = None + AggregateBy: Optional[LabelDetectionAggregateByType] = None + +class GetLabelDetectionRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[LabelDetectionSortByType] = None + AggregateBy: Optional[LabelDetectionAggregateByType] = None + +class GetMediaAnalysisJobRequestRequestTypeDef(BaseModel): + JobId: str + +class MediaAnalysisJobFailureDetailsTypeDef(BaseModel): + Code: Optional[MediaAnalysisJobFailureCodeType] = None + Message: Optional[str] = None + +class MediaAnalysisOutputConfigTypeDef(BaseModel): + S3Bucket: str + S3KeyPrefix: Optional[str] = None + +class GetPersonTrackingRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[PersonTrackingSortByType] = None + +class GetSegmentDetectionRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SegmentTypeInfoTypeDef(BaseModel): + Type: Optional[SegmentTypeType] = None + ModelVersion: Optional[str] = None + +class GetTextDetectionRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class HumanLoopDataAttributesTypeDef(BaseModel): + ContentClassifiers: Optional[Sequence[ContentClassifierType]] = None + +class KinesisDataStreamTypeDef(BaseModel): + Arn: Optional[str] = None + +class KinesisVideoStreamStartSelectorTypeDef(BaseModel): + ProducerTimestamp: Optional[int] = None + FragmentNumber: Optional[str] = None + +class KinesisVideoStreamTypeDef(BaseModel): + Arn: Optional[str] = None + +class LabelAliasTypeDef(BaseModel): + Name: Optional[str] = None + +class LabelCategoryTypeDef(BaseModel): + Name: Optional[str] = None + +class ParentTypeDef(BaseModel): + Name: Optional[str] = None + +class ListCollectionsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDatasetEntriesRequestRequestTypeDef(BaseModel): + DatasetArn: str + ContainsLabels: Optional[Sequence[str]] = None + Labeled: Optional[bool] = None + SourceRefContains: Optional[str] = None + HasErrors: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDatasetLabelsRequestRequestTypeDef(BaseModel): + DatasetArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFacesRequestRequestTypeDef(BaseModel): + CollectionId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + UserId: Optional[str] = None + FaceIds: Optional[Sequence[str]] = None + +class ListMediaAnalysisJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProjectPoliciesRequestRequestTypeDef(BaseModel): + ProjectArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ProjectPolicyTypeDef(BaseModel): + ProjectArn: Optional[str] = None + PolicyName: Optional[str] = None + PolicyRevisionId: Optional[str] = None + PolicyDocument: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class ListStreamProcessorsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class StreamProcessorTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[StreamProcessorStatusType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListUsersRequestRequestTypeDef(BaseModel): + CollectionId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UserTypeDef(BaseModel): + UserId: Optional[str] = None + UserStatus: Optional[UserStatusType] = None + +class MatchedUserTypeDef(BaseModel): + UserId: Optional[str] = None + UserStatus: Optional[UserStatusType] = None + +class MediaAnalysisDetectModerationLabelsConfigTypeDef(BaseModel): + MinConfidence: Optional[float] = None + ProjectVersion: Optional[str] = None + +class MediaAnalysisModelVersionsTypeDef(BaseModel): + Moderation: Optional[str] = None + +class NotificationChannelTypeDef(BaseModel): + SNSTopicArn: str + RoleArn: str + +class PutProjectPolicyRequestRequestTypeDef(BaseModel): + ProjectArn: str + PolicyName: str + PolicyDocument: str + PolicyRevisionId: Optional[str] = None + +class S3DestinationTypeDef(BaseModel): + Bucket: Optional[str] = None + KeyPrefix: Optional[str] = None + +class SearchFacesRequestRequestTypeDef(BaseModel): + CollectionId: str + FaceId: str + MaxFaces: Optional[int] = None + FaceMatchThreshold: Optional[float] = None + +class SearchUsersRequestRequestTypeDef(BaseModel): + CollectionId: str + UserId: Optional[str] = None + FaceId: Optional[str] = None + UserMatchThreshold: Optional[float] = None + MaxUsers: Optional[int] = None + +class SearchedFaceTypeDef(BaseModel): + FaceId: Optional[str] = None + +class SearchedUserTypeDef(BaseModel): + UserId: Optional[str] = None + +class ShotSegmentTypeDef(BaseModel): + Index: Optional[int] = None + Confidence: Optional[float] = None + +class TechnicalCueSegmentTypeDef(BaseModel): + Type: Optional[TechnicalCueTypeType] = None + Confidence: Optional[float] = None + +class StartProjectVersionRequestRequestTypeDef(BaseModel): + ProjectVersionArn: str + MinInferenceUnits: int + MaxInferenceUnits: Optional[int] = None + +class StartShotDetectionFilterTypeDef(BaseModel): + MinSegmentConfidence: Optional[float] = None + +class StreamProcessingStopSelectorTypeDef(BaseModel): + MaxDurationInSeconds: Optional[int] = None + +class StopProjectVersionRequestRequestTypeDef(BaseModel): + ProjectVersionArn: str + +class StopStreamProcessorRequestRequestTypeDef(BaseModel): + Name: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class CopyProjectVersionResponseTypeDef(BaseModel): + ProjectVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCollectionResponseTypeDef(BaseModel): + StatusCode: int + CollectionArn: str + FaceModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatasetResponseTypeDef(BaseModel): + DatasetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFaceLivenessSessionResponseTypeDef(BaseModel): + SessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectResponseTypeDef(BaseModel): + ProjectArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectVersionResponseTypeDef(BaseModel): + ProjectVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStreamProcessorResponseTypeDef(BaseModel): + StreamProcessorArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteCollectionResponseTypeDef(BaseModel): + StatusCode: int + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectResponseTypeDef(BaseModel): + Status: ProjectStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProjectVersionResponseTypeDef(BaseModel): + Status: ProjectVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCollectionResponseTypeDef(BaseModel): + FaceCount: int + FaceModelVersion: str + CollectionARN: str + CreationTimestamp: datetime + UserCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListCollectionsResponseTypeDef(BaseModel): + CollectionIds: List[str] + FaceModelVersions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDatasetEntriesResponseTypeDef(BaseModel): + DatasetEntries: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutProjectPolicyResponseTypeDef(BaseModel): + PolicyRevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartCelebrityRecognitionResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartContentModerationResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFaceDetectionResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFaceSearchResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartLabelDetectionResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMediaAnalysisJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartPersonTrackingResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartProjectVersionResponseTypeDef(BaseModel): + Status: ProjectVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StartSegmentDetectionResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartStreamProcessorResponseTypeDef(BaseModel): + SessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartTextDetectionResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopProjectVersionResponseTypeDef(BaseModel): + Status: ProjectVersionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateFacesResponseTypeDef(BaseModel): + AssociatedFaces: List[AssociatedFaceTypeDef] + UnsuccessfulFaceAssociations: List[UnsuccessfulFaceAssociationTypeDef] + UserStatus: UserStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ComparedSourceImageFaceTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Confidence: Optional[float] = None + +class FaceTypeDef(BaseModel): + FaceId: Optional[str] = None + BoundingBox: Optional[BoundingBoxTypeDef] = None + ImageId: Optional[str] = None + ExternalImageId: Optional[str] = None + Confidence: Optional[float] = None + IndexFacesModelVersion: Optional[str] = None + UserId: Optional[str] = None + +class AuditImageTypeDef(BaseModel): + Bytes: Optional[bytes] = None + S3Object: Optional[S3ObjectTypeDef] = None + BoundingBox: Optional[BoundingBoxTypeDef] = None + +class GroundTruthManifestTypeDef(BaseModel): + S3Object: Optional[S3ObjectTypeDef] = None + +class MediaAnalysisInputTypeDef(BaseModel): + S3Object: S3ObjectTypeDef + +class MediaAnalysisManifestSummaryTypeDef(BaseModel): + S3Object: Optional[S3ObjectTypeDef] = None + +class SummaryTypeDef(BaseModel): + S3Object: Optional[S3ObjectTypeDef] = None + +class VideoTypeDef(BaseModel): + S3Object: Optional[S3ObjectTypeDef] = None + +class StartTechnicalCueDetectionFilterTypeDef(BaseModel): + MinSegmentConfidence: Optional[float] = None + BlackFrame: Optional[BlackFrameTypeDef] = None + +class DatasetChangesTypeDef(BaseModel): + GroundTruth: BlobTypeDef + +class ImageTypeDef(BaseModel): + Bytes: Optional[BlobTypeDef] = None + S3Object: Optional[S3ObjectTypeDef] = None + +class GetCelebrityInfoResponseTypeDef(BaseModel): + Urls: List[str] + Name: str + KnownGender: KnownGenderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ComparedFaceTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Confidence: Optional[float] = None + Landmarks: Optional[List[LandmarkTypeDef]] = None + Pose: Optional[PoseTypeDef] = None + Quality: Optional[ImageQualityTypeDef] = None + Emotions: Optional[List[EmotionTypeDef]] = None + Smile: Optional[SmileTypeDef] = None + +class StreamProcessorSettingsForUpdateTypeDef(BaseModel): + ConnectedHomeForUpdate: Optional[ConnectedHomeSettingsForUpdateTypeDef] = None + +class ContentModerationDetectionTypeDef(BaseModel): + Timestamp: Optional[int] = None + ModerationLabel: Optional[ModerationLabelTypeDef] = None + StartTimestampMillis: Optional[int] = None + EndTimestampMillis: Optional[int] = None + DurationMillis: Optional[int] = None + ContentTypes: Optional[List[ContentTypeTypeDef]] = None + +class CopyProjectVersionRequestRequestTypeDef(BaseModel): + SourceProjectArn: str + SourceProjectVersionArn: str + DestinationProjectArn: str + VersionName: str + OutputConfig: OutputConfigTypeDef + Tags: Optional[Mapping[str, str]] = None + KmsKeyId: Optional[str] = None + +class EquipmentDetectionTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Confidence: Optional[float] = None + Type: Optional[ProtectiveEquipmentTypeType] = None + CoversBodyPart: Optional[CoversBodyPartTypeDef] = None + +class CreateFaceLivenessSessionRequestSettingsTypeDef(BaseModel): + OutputConfig: Optional[LivenessOutputConfigTypeDef] = None + AuditImagesLimit: Optional[int] = None + +class CustomizationFeatureConfigTypeDef(BaseModel): + ContentModeration: Optional[CustomizationFeatureContentModerationConfigTypeDef] = None + +class DatasetDescriptionTypeDef(BaseModel): + CreationTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Status: Optional[DatasetStatusType] = None + StatusMessage: Optional[str] = None + StatusMessageCode: Optional[DatasetStatusMessageCodeType] = None + DatasetStats: Optional[DatasetStatsTypeDef] = None + +class DatasetLabelDescriptionTypeDef(BaseModel): + LabelName: Optional[str] = None + LabelStats: Optional[DatasetLabelStatsTypeDef] = None + +class ProjectDescriptionTypeDef(BaseModel): + ProjectArn: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + Status: Optional[ProjectStatusType] = None + Datasets: Optional[List[DatasetMetadataTypeDef]] = None + Feature: Optional[CustomizationFeatureType] = None + AutoUpdate: Optional[ProjectAutoUpdateType] = None + +class DeleteFacesResponseTypeDef(BaseModel): + DeletedFaces: List[str] + UnsuccessfulFaceDeletions: List[UnsuccessfulFaceDeletionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProjectVersionsRequestDescribeProjectVersionsPaginateTypeDef(BaseModel): + ProjectArn: str + VersionNames: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeProjectsRequestDescribeProjectsPaginateTypeDef(BaseModel): + ProjectNames: Optional[Sequence[str]] = None + Features: Optional[Sequence[CustomizationFeatureType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCollectionsRequestListCollectionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetEntriesRequestListDatasetEntriesPaginateTypeDef(BaseModel): + DatasetArn: str + ContainsLabels: Optional[Sequence[str]] = None + Labeled: Optional[bool] = None + SourceRefContains: Optional[str] = None + HasErrors: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatasetLabelsRequestListDatasetLabelsPaginateTypeDef(BaseModel): + DatasetArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFacesRequestListFacesPaginateTypeDef(BaseModel): + CollectionId: str + UserId: Optional[str] = None + FaceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProjectPoliciesRequestListProjectPoliciesPaginateTypeDef(BaseModel): + ProjectArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStreamProcessorsRequestListStreamProcessorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + CollectionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeProjectVersionsRequestProjectVersionRunningWaitTypeDef(BaseModel): + ProjectArn: str + VersionNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeProjectVersionsRequestProjectVersionTrainingCompletedWaitTypeDef(BaseModel): + ProjectArn: str + VersionNames: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DetectLabelsImageBackgroundTypeDef(BaseModel): + Quality: Optional[DetectLabelsImageQualityTypeDef] = None + DominantColors: Optional[List[DominantColorTypeDef]] = None + +class DetectLabelsImageForegroundTypeDef(BaseModel): + Quality: Optional[DetectLabelsImageQualityTypeDef] = None + DominantColors: Optional[List[DominantColorTypeDef]] = None + +class InstanceTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Confidence: Optional[float] = None + DominantColors: Optional[List[DominantColorTypeDef]] = None + +class DetectLabelsSettingsTypeDef(BaseModel): + GeneralLabels: Optional[GeneralLabelsSettingsTypeDef] = None + ImageProperties: Optional[DetectLabelsImagePropertiesSettingsTypeDef] = None + +class LabelDetectionSettingsTypeDef(BaseModel): + GeneralLabels: Optional[GeneralLabelsSettingsTypeDef] = None + +class DetectModerationLabelsResponseTypeDef(BaseModel): + ModerationLabels: List[ModerationLabelTypeDef] + ModerationModelVersion: str + HumanLoopActivationOutput: HumanLoopActivationOutputTypeDef + ProjectVersion: str + ContentTypes: List[ContentTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateFacesResponseTypeDef(BaseModel): + DisassociatedFaces: List[DisassociatedFaceTypeDef] + UnsuccessfulFaceDisassociations: List[UnsuccessfulFaceDisassociationTypeDef] + UserStatus: UserStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DistributeDatasetEntriesRequestRequestTypeDef(BaseModel): + Datasets: Sequence[DistributeDatasetTypeDef] + +class FaceDetailTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + AgeRange: Optional[AgeRangeTypeDef] = None + Smile: Optional[SmileTypeDef] = None + Eyeglasses: Optional[EyeglassesTypeDef] = None + Sunglasses: Optional[SunglassesTypeDef] = None + Gender: Optional[GenderTypeDef] = None + Beard: Optional[BeardTypeDef] = None + Mustache: Optional[MustacheTypeDef] = None + EyesOpen: Optional[EyeOpenTypeDef] = None + MouthOpen: Optional[MouthOpenTypeDef] = None + Emotions: Optional[List[EmotionTypeDef]] = None + Landmarks: Optional[List[LandmarkTypeDef]] = None + Pose: Optional[PoseTypeDef] = None + Quality: Optional[ImageQualityTypeDef] = None + Confidence: Optional[float] = None + FaceOccluded: Optional[FaceOccludedTypeDef] = None + EyeDirection: Optional[EyeDirectionTypeDef] = None + +class StreamProcessorSettingsOutputTypeDef(BaseModel): + FaceSearch: Optional[FaceSearchSettingsTypeDef] = None + ConnectedHome: Optional[ConnectedHomeSettingsOutputTypeDef] = None + +class StreamProcessorSettingsTypeDef(BaseModel): + FaceSearch: Optional[FaceSearchSettingsTypeDef] = None + ConnectedHome: Optional[ConnectedHomeSettingsTypeDef] = None + +class GeometryTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Polygon: Optional[List[PointTypeDef]] = None + +class RegionOfInterestOutputTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Polygon: Optional[List[PointTypeDef]] = None + +class RegionOfInterestTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Polygon: Optional[Sequence[PointTypeDef]] = None + +class HumanLoopConfigTypeDef(BaseModel): + HumanLoopName: str + FlowDefinitionArn: str + DataAttributes: Optional[HumanLoopDataAttributesTypeDef] = None + +class StreamProcessingStartSelectorTypeDef(BaseModel): + KVSStreamStartSelector: Optional[KinesisVideoStreamStartSelectorTypeDef] = None + +class StreamProcessorInputTypeDef(BaseModel): + KinesisVideoStream: Optional[KinesisVideoStreamTypeDef] = None + +class ListProjectPoliciesResponseTypeDef(BaseModel): + ProjectPolicies: List[ProjectPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStreamProcessorsResponseTypeDef(BaseModel): + StreamProcessors: List[StreamProcessorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UserMatchTypeDef(BaseModel): + Similarity: Optional[float] = None + User: Optional[MatchedUserTypeDef] = None + +class MediaAnalysisOperationsConfigTypeDef(BaseModel): + DetectModerationLabels: Optional[MediaAnalysisDetectModerationLabelsConfigTypeDef] = None + +class MediaAnalysisResultsTypeDef(BaseModel): + S3Object: Optional[S3ObjectTypeDef] = None + ModelVersions: Optional[MediaAnalysisModelVersionsTypeDef] = None + +class StreamProcessorOutputTypeDef(BaseModel): + KinesisDataStream: Optional[KinesisDataStreamTypeDef] = None + S3Destination: Optional[S3DestinationTypeDef] = None + +class SegmentDetectionTypeDef(BaseModel): + Type: Optional[SegmentTypeType] = None + StartTimestampMillis: Optional[int] = None + EndTimestampMillis: Optional[int] = None + DurationMillis: Optional[int] = None + StartTimecodeSMPTE: Optional[str] = None + EndTimecodeSMPTE: Optional[str] = None + DurationSMPTE: Optional[str] = None + TechnicalCueSegment: Optional[TechnicalCueSegmentTypeDef] = None + ShotSegment: Optional[ShotSegmentTypeDef] = None + StartFrameNumber: Optional[int] = None + EndFrameNumber: Optional[int] = None + DurationFrames: Optional[int] = None + +class FaceMatchTypeDef(BaseModel): + Similarity: Optional[float] = None + Face: Optional[FaceTypeDef] = None + +class ListFacesResponseTypeDef(BaseModel): + Faces: List[FaceTypeDef] + FaceModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetFaceLivenessSessionResultsResponseTypeDef(BaseModel): + SessionId: str + Status: LivenessSessionStatusType + Confidence: float + ReferenceImage: AuditImageTypeDef + AuditImages: List[AuditImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssetTypeDef(BaseModel): + GroundTruthManifest: Optional[GroundTruthManifestTypeDef] = None + +class DatasetSourceTypeDef(BaseModel): + GroundTruthManifest: Optional[GroundTruthManifestTypeDef] = None + DatasetArn: Optional[str] = None + +class EvaluationResultTypeDef(BaseModel): + F1Score: Optional[float] = None + Summary: Optional[SummaryTypeDef] = None + +class StartCelebrityRecognitionRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + ClientRequestToken: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + +class StartContentModerationRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + MinConfidence: Optional[float] = None + ClientRequestToken: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + +class StartFaceDetectionRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + ClientRequestToken: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + FaceAttributes: Optional[FaceAttributesType] = None + JobTag: Optional[str] = None + +class StartFaceSearchRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + CollectionId: str + ClientRequestToken: Optional[str] = None + FaceMatchThreshold: Optional[float] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + +class StartPersonTrackingRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + ClientRequestToken: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + +class StartSegmentDetectionFiltersTypeDef(BaseModel): + TechnicalCueFilter: Optional[StartTechnicalCueDetectionFilterTypeDef] = None + ShotFilter: Optional[StartShotDetectionFilterTypeDef] = None + +class UpdateDatasetEntriesRequestRequestTypeDef(BaseModel): + DatasetArn: str + Changes: DatasetChangesTypeDef + +class CompareFacesRequestRequestTypeDef(BaseModel): + SourceImage: ImageTypeDef + TargetImage: ImageTypeDef + SimilarityThreshold: Optional[float] = None + QualityFilter: Optional[QualityFilterType] = None + +class DetectCustomLabelsRequestRequestTypeDef(BaseModel): + ProjectVersionArn: str + Image: ImageTypeDef + MaxResults: Optional[int] = None + MinConfidence: Optional[float] = None + +class DetectFacesRequestRequestTypeDef(BaseModel): + Image: ImageTypeDef + Attributes: Optional[Sequence[AttributeType]] = None + +class DetectProtectiveEquipmentRequestRequestTypeDef(BaseModel): + Image: ImageTypeDef + SummarizationAttributes: Optional[ProtectiveEquipmentSummarizationAttributesTypeDef] = None + +class IndexFacesRequestRequestTypeDef(BaseModel): + CollectionId: str + Image: ImageTypeDef + ExternalImageId: Optional[str] = None + DetectionAttributes: Optional[Sequence[AttributeType]] = None + MaxFaces: Optional[int] = None + QualityFilter: Optional[QualityFilterType] = None + +class RecognizeCelebritiesRequestRequestTypeDef(BaseModel): + Image: ImageTypeDef + +class SearchFacesByImageRequestRequestTypeDef(BaseModel): + CollectionId: str + Image: ImageTypeDef + MaxFaces: Optional[int] = None + FaceMatchThreshold: Optional[float] = None + QualityFilter: Optional[QualityFilterType] = None + +class SearchUsersByImageRequestRequestTypeDef(BaseModel): + CollectionId: str + Image: ImageTypeDef + UserMatchThreshold: Optional[float] = None + MaxUsers: Optional[int] = None + QualityFilter: Optional[QualityFilterType] = None + +class CelebrityTypeDef(BaseModel): + Urls: Optional[List[str]] = None + Name: Optional[str] = None + Id: Optional[str] = None + Face: Optional[ComparedFaceTypeDef] = None + MatchConfidence: Optional[float] = None + KnownGender: Optional[KnownGenderTypeDef] = None + +class CompareFacesMatchTypeDef(BaseModel): + Similarity: Optional[float] = None + Face: Optional[ComparedFaceTypeDef] = None + +class GetContentModerationResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + ModerationLabels: List[ContentModerationDetectionTypeDef] + ModerationModelVersion: str + JobId: str + Video: VideoTypeDef + JobTag: str + GetRequestMetadata: GetContentModerationRequestMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ProtectiveEquipmentBodyPartTypeDef(BaseModel): + Name: Optional[BodyPartType] = None + Confidence: Optional[float] = None + EquipmentDetections: Optional[List[EquipmentDetectionTypeDef]] = None + +class CreateFaceLivenessSessionRequestRequestTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + Settings: Optional[CreateFaceLivenessSessionRequestSettingsTypeDef] = None + ClientRequestToken: Optional[str] = None + +class DescribeDatasetResponseTypeDef(BaseModel): + DatasetDescription: DatasetDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatasetLabelsResponseTypeDef(BaseModel): + DatasetLabelDescriptions: List[DatasetLabelDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeProjectsResponseTypeDef(BaseModel): + ProjectDescriptions: List[ProjectDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DetectLabelsImagePropertiesTypeDef(BaseModel): + Quality: Optional[DetectLabelsImageQualityTypeDef] = None + DominantColors: Optional[List[DominantColorTypeDef]] = None + Foreground: Optional[DetectLabelsImageForegroundTypeDef] = None + Background: Optional[DetectLabelsImageBackgroundTypeDef] = None + +class LabelTypeDef(BaseModel): + Name: Optional[str] = None + Confidence: Optional[float] = None + Instances: Optional[List[InstanceTypeDef]] = None + Parents: Optional[List[ParentTypeDef]] = None + Aliases: Optional[List[LabelAliasTypeDef]] = None + Categories: Optional[List[LabelCategoryTypeDef]] = None + +class DetectLabelsRequestRequestTypeDef(BaseModel): + Image: ImageTypeDef + MaxLabels: Optional[int] = None + MinConfidence: Optional[float] = None + Features: Optional[Sequence[DetectLabelsFeatureNameType]] = None + Settings: Optional[DetectLabelsSettingsTypeDef] = None + +class StartLabelDetectionRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + ClientRequestToken: Optional[str] = None + MinConfidence: Optional[float] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + Features: Optional[Sequence[Literal["GENERAL_LABELS"]]] = None + Settings: Optional[LabelDetectionSettingsTypeDef] = None + +class CelebrityDetailTypeDef(BaseModel): + Urls: Optional[List[str]] = None + Name: Optional[str] = None + Id: Optional[str] = None + Confidence: Optional[float] = None + BoundingBox: Optional[BoundingBoxTypeDef] = None + Face: Optional[FaceDetailTypeDef] = None + KnownGender: Optional[KnownGenderTypeDef] = None + +class DetectFacesResponseTypeDef(BaseModel): + FaceDetails: List[FaceDetailTypeDef] + OrientationCorrection: OrientationCorrectionType + ResponseMetadata: ResponseMetadataTypeDef + +class FaceDetectionTypeDef(BaseModel): + Timestamp: Optional[int] = None + Face: Optional[FaceDetailTypeDef] = None + +class FaceRecordTypeDef(BaseModel): + Face: Optional[FaceTypeDef] = None + FaceDetail: Optional[FaceDetailTypeDef] = None + +class PersonDetailTypeDef(BaseModel): + Index: Optional[int] = None + BoundingBox: Optional[BoundingBoxTypeDef] = None + Face: Optional[FaceDetailTypeDef] = None + +class SearchedFaceDetailsTypeDef(BaseModel): + FaceDetail: Optional[FaceDetailTypeDef] = None + +class UnindexedFaceTypeDef(BaseModel): + Reasons: Optional[List[ReasonType]] = None + FaceDetail: Optional[FaceDetailTypeDef] = None + +class UnsearchedFaceTypeDef(BaseModel): + FaceDetails: Optional[FaceDetailTypeDef] = None + Reasons: Optional[List[UnsearchedFaceReasonType]] = None + +class CustomLabelTypeDef(BaseModel): + Name: Optional[str] = None + Confidence: Optional[float] = None + Geometry: Optional[GeometryTypeDef] = None + +class TextDetectionTypeDef(BaseModel): + DetectedText: Optional[str] = None + Type: Optional[TextTypesType] = None + Id: Optional[int] = None + ParentId: Optional[int] = None + Confidence: Optional[float] = None + Geometry: Optional[GeometryTypeDef] = None + +class DetectTextFiltersTypeDef(BaseModel): + WordFilter: Optional[DetectionFilterTypeDef] = None + RegionsOfInterest: Optional[Sequence[RegionOfInterestTypeDef]] = None + +class StartTextDetectionFiltersTypeDef(BaseModel): + WordFilter: Optional[DetectionFilterTypeDef] = None + RegionsOfInterest: Optional[Sequence[RegionOfInterestTypeDef]] = None + +class DetectModerationLabelsRequestRequestTypeDef(BaseModel): + Image: ImageTypeDef + MinConfidence: Optional[float] = None + HumanLoopConfig: Optional[HumanLoopConfigTypeDef] = None + ProjectVersion: Optional[str] = None + +class StartStreamProcessorRequestRequestTypeDef(BaseModel): + Name: str + StartSelector: Optional[StreamProcessingStartSelectorTypeDef] = None + StopSelector: Optional[StreamProcessingStopSelectorTypeDef] = None + +class SearchUsersResponseTypeDef(BaseModel): + UserMatches: List[UserMatchTypeDef] + FaceModelVersion: str + SearchedFace: SearchedFaceTypeDef + SearchedUser: SearchedUserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartMediaAnalysisJobRequestRequestTypeDef(BaseModel): + OperationsConfig: MediaAnalysisOperationsConfigTypeDef + Input: MediaAnalysisInputTypeDef + OutputConfig: MediaAnalysisOutputConfigTypeDef + ClientRequestToken: Optional[str] = None + JobName: Optional[str] = None + KmsKeyId: Optional[str] = None + +class GetMediaAnalysisJobResponseTypeDef(BaseModel): + JobId: str + JobName: str + OperationsConfig: MediaAnalysisOperationsConfigTypeDef + Status: MediaAnalysisJobStatusType + FailureDetails: MediaAnalysisJobFailureDetailsTypeDef + CreationTimestamp: datetime + CompletionTimestamp: datetime + Input: MediaAnalysisInputTypeDef + OutputConfig: MediaAnalysisOutputConfigTypeDef + KmsKeyId: str + Results: MediaAnalysisResultsTypeDef + ManifestSummary: MediaAnalysisManifestSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MediaAnalysisJobDescriptionTypeDef(BaseModel): + JobId: str + OperationsConfig: MediaAnalysisOperationsConfigTypeDef + Status: MediaAnalysisJobStatusType + CreationTimestamp: datetime + Input: MediaAnalysisInputTypeDef + OutputConfig: MediaAnalysisOutputConfigTypeDef + JobName: Optional[str] = None + FailureDetails: Optional[MediaAnalysisJobFailureDetailsTypeDef] = None + CompletionTimestamp: Optional[datetime] = None + KmsKeyId: Optional[str] = None + Results: Optional[MediaAnalysisResultsTypeDef] = None + ManifestSummary: Optional[MediaAnalysisManifestSummaryTypeDef] = None + +class DescribeStreamProcessorResponseTypeDef(BaseModel): + Name: str + StreamProcessorArn: str + Status: StreamProcessorStatusType + StatusMessage: str + CreationTimestamp: datetime + LastUpdateTimestamp: datetime + Input: StreamProcessorInputTypeDef + Output: StreamProcessorOutputTypeDef + RoleArn: str + Settings: StreamProcessorSettingsOutputTypeDef + NotificationChannel: StreamProcessorNotificationChannelTypeDef + KmsKeyId: str + RegionsOfInterest: List[RegionOfInterestOutputTypeDef] + DataSharingPreference: StreamProcessorDataSharingPreferenceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSegmentDetectionResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: List[VideoMetadataTypeDef] + AudioMetadata: List[AudioMetadataTypeDef] + Segments: List[SegmentDetectionTypeDef] + SelectedSegmentTypes: List[SegmentTypeInfoTypeDef] + JobId: str + Video: VideoTypeDef + JobTag: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SearchFacesByImageResponseTypeDef(BaseModel): + SearchedFaceBoundingBox: BoundingBoxTypeDef + SearchedFaceConfidence: float + FaceMatches: List[FaceMatchTypeDef] + FaceModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchFacesResponseTypeDef(BaseModel): + SearchedFaceId: str + FaceMatches: List[FaceMatchTypeDef] + FaceModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestingDataExtraOutputTypeDef(BaseModel): + Assets: Optional[List[AssetTypeDef]] = None + AutoCreate: Optional[bool] = None + +class TestingDataOutputTypeDef(BaseModel): + Assets: Optional[List[AssetTypeDef]] = None + AutoCreate: Optional[bool] = None + +class TestingDataTypeDef(BaseModel): + Assets: Optional[Sequence[AssetTypeDef]] = None + AutoCreate: Optional[bool] = None + +class TrainingDataExtraOutputTypeDef(BaseModel): + Assets: Optional[List[AssetTypeDef]] = None + +class TrainingDataOutputTypeDef(BaseModel): + Assets: Optional[List[AssetTypeDef]] = None + +class TrainingDataTypeDef(BaseModel): + Assets: Optional[Sequence[AssetTypeDef]] = None + +class ValidationDataTypeDef(BaseModel): + Assets: Optional[List[AssetTypeDef]] = None + +class CreateDatasetRequestRequestTypeDef(BaseModel): + DatasetType: DatasetTypeType + ProjectArn: str + DatasetSource: Optional[DatasetSourceTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class StartSegmentDetectionRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + SegmentTypes: Sequence[SegmentTypeType] + ClientRequestToken: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + Filters: Optional[StartSegmentDetectionFiltersTypeDef] = None + +class RecognizeCelebritiesResponseTypeDef(BaseModel): + CelebrityFaces: List[CelebrityTypeDef] + UnrecognizedFaces: List[ComparedFaceTypeDef] + OrientationCorrection: OrientationCorrectionType + ResponseMetadata: ResponseMetadataTypeDef + +class CompareFacesResponseTypeDef(BaseModel): + SourceImageFace: ComparedSourceImageFaceTypeDef + FaceMatches: List[CompareFacesMatchTypeDef] + UnmatchedFaces: List[ComparedFaceTypeDef] + SourceImageOrientationCorrection: OrientationCorrectionType + TargetImageOrientationCorrection: OrientationCorrectionType + ResponseMetadata: ResponseMetadataTypeDef + +class ProtectiveEquipmentPersonTypeDef(BaseModel): + BodyParts: Optional[List[ProtectiveEquipmentBodyPartTypeDef]] = None + BoundingBox: Optional[BoundingBoxTypeDef] = None + Confidence: Optional[float] = None + Id: Optional[int] = None + +class DetectLabelsResponseTypeDef(BaseModel): + Labels: List[LabelTypeDef] + OrientationCorrection: OrientationCorrectionType + LabelModelVersion: str + ImageProperties: DetectLabelsImagePropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LabelDetectionTypeDef(BaseModel): + Timestamp: Optional[int] = None + Label: Optional[LabelTypeDef] = None + StartTimestampMillis: Optional[int] = None + EndTimestampMillis: Optional[int] = None + DurationMillis: Optional[int] = None + +class CelebrityRecognitionTypeDef(BaseModel): + Timestamp: Optional[int] = None + Celebrity: Optional[CelebrityDetailTypeDef] = None + +class GetFaceDetectionResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + Faces: List[FaceDetectionTypeDef] + JobId: str + Video: VideoTypeDef + JobTag: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PersonDetectionTypeDef(BaseModel): + Timestamp: Optional[int] = None + Person: Optional[PersonDetailTypeDef] = None + +class PersonMatchTypeDef(BaseModel): + Timestamp: Optional[int] = None + Person: Optional[PersonDetailTypeDef] = None + FaceMatches: Optional[List[FaceMatchTypeDef]] = None + +class IndexFacesResponseTypeDef(BaseModel): + FaceRecords: List[FaceRecordTypeDef] + OrientationCorrection: OrientationCorrectionType + FaceModelVersion: str + UnindexedFaces: List[UnindexedFaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchUsersByImageResponseTypeDef(BaseModel): + UserMatches: List[UserMatchTypeDef] + FaceModelVersion: str + SearchedFace: SearchedFaceDetailsTypeDef + UnsearchedFaces: List[UnsearchedFaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetectCustomLabelsResponseTypeDef(BaseModel): + CustomLabels: List[CustomLabelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DetectTextResponseTypeDef(BaseModel): + TextDetections: List[TextDetectionTypeDef] + TextModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class TextDetectionResultTypeDef(BaseModel): + Timestamp: Optional[int] = None + TextDetection: Optional[TextDetectionTypeDef] = None + +class DetectTextRequestRequestTypeDef(BaseModel): + Image: ImageTypeDef + Filters: Optional[DetectTextFiltersTypeDef] = None + +class CreateStreamProcessorRequestRequestTypeDef(BaseModel): + Input: StreamProcessorInputTypeDef + Output: StreamProcessorOutputTypeDef + Name: str + Settings: StreamProcessorSettingsTypeDef + RoleArn: str + Tags: Optional[Mapping[str, str]] = None + NotificationChannel: Optional[StreamProcessorNotificationChannelTypeDef] = None + KmsKeyId: Optional[str] = None + RegionsOfInterest: Optional[Sequence[RegionOfInterestUnionTypeDef]] = None + DataSharingPreference: Optional[StreamProcessorDataSharingPreferenceTypeDef] = None + +class UpdateStreamProcessorRequestRequestTypeDef(BaseModel): + Name: str + SettingsForUpdate: Optional[StreamProcessorSettingsForUpdateTypeDef] = None + RegionsOfInterestForUpdate: Optional[Sequence[RegionOfInterestUnionTypeDef]] = None + DataSharingPreferenceForUpdate: Optional[StreamProcessorDataSharingPreferenceTypeDef] = None + ParametersToDelete: Optional[Sequence[StreamProcessorParameterToDeleteType]] = None + +class StartTextDetectionRequestRequestTypeDef(BaseModel): + Video: VideoTypeDef + ClientRequestToken: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + JobTag: Optional[str] = None + Filters: Optional[StartTextDetectionFiltersTypeDef] = None + +class ListMediaAnalysisJobsResponseTypeDef(BaseModel): + MediaAnalysisJobs: List[MediaAnalysisJobDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateProjectVersionRequestRequestTypeDef(BaseModel): + ProjectArn: str + VersionName: str + OutputConfig: OutputConfigTypeDef + TrainingData: Optional[TrainingDataTypeDef] = None + TestingData: Optional[TestingDataTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + KmsKeyId: Optional[str] = None + VersionDescription: Optional[str] = None + FeatureConfig: Optional[CustomizationFeatureConfigTypeDef] = None + +class TestingDataResultTypeDef(BaseModel): + Input: Optional[TestingDataOutputTypeDef] = None + Output: Optional[TestingDataOutputTypeDef] = None + Validation: Optional[ValidationDataTypeDef] = None + +class TrainingDataResultTypeDef(BaseModel): + Input: Optional[TrainingDataOutputTypeDef] = None + Output: Optional[TrainingDataOutputTypeDef] = None + Validation: Optional[ValidationDataTypeDef] = None + +class DetectProtectiveEquipmentResponseTypeDef(BaseModel): + ProtectiveEquipmentModelVersion: str + Persons: List[ProtectiveEquipmentPersonTypeDef] + Summary: ProtectiveEquipmentSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLabelDetectionResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + Labels: List[LabelDetectionTypeDef] + LabelModelVersion: str + JobId: str + Video: VideoTypeDef + JobTag: str + GetRequestMetadata: GetLabelDetectionRequestMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCelebrityRecognitionResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + Celebrities: List[CelebrityRecognitionTypeDef] + JobId: str + Video: VideoTypeDef + JobTag: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetPersonTrackingResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + Persons: List[PersonDetectionTypeDef] + JobId: str + Video: VideoTypeDef + JobTag: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetFaceSearchResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + Persons: List[PersonMatchTypeDef] + JobId: str + Video: VideoTypeDef + JobTag: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTextDetectionResponseTypeDef(BaseModel): + JobStatus: VideoJobStatusType + StatusMessage: str + VideoMetadata: VideoMetadataTypeDef + TextDetections: List[TextDetectionResultTypeDef] + TextModelVersion: str + JobId: str + Video: VideoTypeDef + JobTag: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ProjectVersionDescriptionTypeDef(BaseModel): + ProjectVersionArn: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + MinInferenceUnits: Optional[int] = None + Status: Optional[ProjectVersionStatusType] = None + StatusMessage: Optional[str] = None + BillableTrainingTimeInSeconds: Optional[int] = None + TrainingEndTimestamp: Optional[datetime] = None + OutputConfig: Optional[OutputConfigTypeDef] = None + TrainingDataResult: Optional[TrainingDataResultTypeDef] = None + TestingDataResult: Optional[TestingDataResultTypeDef] = None + EvaluationResult: Optional[EvaluationResultTypeDef] = None + ManifestSummary: Optional[GroundTruthManifestTypeDef] = None + KmsKeyId: Optional[str] = None + MaxInferenceUnits: Optional[int] = None + SourceProjectVersionArn: Optional[str] = None + VersionDescription: Optional[str] = None + Feature: Optional[CustomizationFeatureType] = None + BaseModelVersion: Optional[str] = None + FeatureConfig: Optional[CustomizationFeatureConfigTypeDef] = None + +class DescribeProjectVersionsResponseTypeDef(BaseModel): + ProjectVersionDescriptions: List[ProjectVersionDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/rekognition_constants.py b/aws_resource_validator/pydantic_models/rekognition_constants.py new file mode 100644 index 00000000..22e3ea27 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rekognition_constants.py @@ -0,0 +1,564 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttributeType = Literal["AGE_RANGE", + "ALL", + "BEARD", + "DEFAULT", + "EMOTIONS", + "EYEGLASSES", + "EYES_OPEN", + "EYE_DIRECTION", + "FACE_OCCLUDED", + "GENDER", + "MOUTH_OPEN", + "MUSTACHE", + "SMILE", + "SUNGLASSES",] +BodyPartType = Literal["FACE", "HEAD", "LEFT_HAND", "RIGHT_HAND"] +CelebrityRecognitionSortByType = Literal["ID", "TIMESTAMP"] +ContentClassifierType = Literal["FreeOfAdultContent", "FreeOfPersonallyIdentifiableInformation"] +ContentModerationAggregateByType = Literal["SEGMENTS", "TIMESTAMPS"] +ContentModerationSortByType = Literal["NAME", "TIMESTAMP"] +CustomizationFeatureType = Literal["CONTENT_MODERATION", "CUSTOM_LABELS"] +DatasetStatusMessageCodeType = Literal["CLIENT_ERROR", "SERVICE_ERROR", "SUCCESS"] +DatasetStatusType = Literal["CREATE_COMPLETE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "UPDATE_COMPLETE", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +DatasetTypeType = Literal["TEST", "TRAIN"] +DescribeProjectVersionsPaginatorName = Literal["describe_project_versions"] +DescribeProjectsPaginatorName = Literal["describe_projects"] +DetectLabelsFeatureNameType = Literal["GENERAL_LABELS", "IMAGE_PROPERTIES"] +EmotionNameType = Literal["ANGRY", "CALM", "CONFUSED", "DISGUSTED", "FEAR", "HAPPY", "SAD", "SURPRISED", "UNKNOWN"] +FaceAttributesType = Literal["ALL", "DEFAULT"] +FaceSearchSortByType = Literal["INDEX", "TIMESTAMP"] +GenderTypeType = Literal["Female", "Male"] +KnownGenderTypeType = Literal["Female", "Male", "Nonbinary", "Unlisted"] +LabelDetectionAggregateByType = Literal["SEGMENTS", "TIMESTAMPS"] +LabelDetectionFeatureNameType = Literal["GENERAL_LABELS"] +LabelDetectionSortByType = Literal["NAME", "TIMESTAMP"] +LandmarkTypeType = Literal["chinBottom", + "eyeLeft", + "eyeRight", + "leftEyeBrowLeft", + "leftEyeBrowRight", + "leftEyeBrowUp", + "leftEyeDown", + "leftEyeLeft", + "leftEyeRight", + "leftEyeUp", + "leftPupil", + "midJawlineLeft", + "midJawlineRight", + "mouthDown", + "mouthLeft", + "mouthRight", + "mouthUp", + "nose", + "noseLeft", + "noseRight", + "rightEyeBrowLeft", + "rightEyeBrowRight", + "rightEyeBrowUp", + "rightEyeDown", + "rightEyeLeft", + "rightEyeRight", + "rightEyeUp", + "rightPupil", + "upperJawlineLeft", + "upperJawlineRight",] +ListCollectionsPaginatorName = Literal["list_collections"] +ListDatasetEntriesPaginatorName = Literal["list_dataset_entries"] +ListDatasetLabelsPaginatorName = Literal["list_dataset_labels"] +ListFacesPaginatorName = Literal["list_faces"] +ListProjectPoliciesPaginatorName = Literal["list_project_policies"] +ListStreamProcessorsPaginatorName = Literal["list_stream_processors"] +ListUsersPaginatorName = Literal["list_users"] +LivenessSessionStatusType = Literal["CREATED", "EXPIRED", "FAILED", "IN_PROGRESS", "SUCCEEDED"] +MediaAnalysisJobFailureCodeType = Literal["ACCESS_DENIED", + "INTERNAL_ERROR", + "INVALID_KMS_KEY", + "INVALID_MANIFEST", + "INVALID_OUTPUT_CONFIG", + "INVALID_S3_OBJECT", + "RESOURCE_NOT_FOUND", + "RESOURCE_NOT_READY", + "THROTTLED",] +MediaAnalysisJobStatusType = Literal["CREATED", "FAILED", "IN_PROGRESS", "QUEUED", "SUCCEEDED"] +OrientationCorrectionType = Literal["ROTATE_0", "ROTATE_180", "ROTATE_270", "ROTATE_90"] +PersonTrackingSortByType = Literal["INDEX", "TIMESTAMP"] +ProjectAutoUpdateType = Literal["DISABLED", "ENABLED"] +ProjectStatusType = Literal["CREATED", "CREATING", "DELETING"] +ProjectVersionRunningWaiterName = Literal["project_version_running"] +ProjectVersionStatusType = Literal["COPYING_COMPLETED", + "COPYING_FAILED", + "COPYING_IN_PROGRESS", + "DELETING", + "DEPRECATED", + "EXPIRED", + "FAILED", + "RUNNING", + "STARTING", + "STOPPED", + "STOPPING", + "TRAINING_COMPLETED", + "TRAINING_FAILED", + "TRAINING_IN_PROGRESS",] +ProjectVersionTrainingCompletedWaiterName = Literal["project_version_training_completed"] +ProtectiveEquipmentTypeType = Literal["FACE_COVER", "HAND_COVER", "HEAD_COVER"] +QualityFilterType = Literal["AUTO", "HIGH", "LOW", "MEDIUM", "NONE"] +ReasonType = Literal["EXCEEDS_MAX_FACES", + "EXTREME_POSE", + "LOW_BRIGHTNESS", + "LOW_CONFIDENCE", + "LOW_FACE_QUALITY", + "LOW_SHARPNESS", + "SMALL_BOUNDING_BOX",] +SegmentTypeType = Literal["SHOT", "TECHNICAL_CUE"] +StreamProcessorParameterToDeleteType = Literal["ConnectedHomeMinConfidence", "RegionsOfInterest"] +StreamProcessorStatusType = Literal["FAILED", "RUNNING", "STARTING", "STOPPED", "STOPPING", "UPDATING"] +TechnicalCueTypeType = Literal["BlackFrames", "ColorBars", "Content", "EndCredits", "OpeningCredits", "Slate", "StudioLogo"] +TextTypesType = Literal["LINE", "WORD"] +UnsearchedFaceReasonType = Literal["EXCEEDS_MAX_FACES", + "EXTREME_POSE", + "FACE_NOT_LARGEST", + "LOW_BRIGHTNESS", + "LOW_CONFIDENCE", + "LOW_FACE_QUALITY", + "LOW_SHARPNESS", + "SMALL_BOUNDING_BOX",] +UnsuccessfulFaceAssociationReasonType = Literal["ASSOCIATED_TO_A_DIFFERENT_USER", "FACE_NOT_FOUND", "LOW_MATCH_CONFIDENCE"] +UnsuccessfulFaceDeletionReasonType = Literal["ASSOCIATED_TO_AN_EXISTING_USER", "FACE_NOT_FOUND"] +UnsuccessfulFaceDisassociationReasonType = Literal["ASSOCIATED_TO_A_DIFFERENT_USER", "FACE_NOT_FOUND"] +UserStatusType = Literal["ACTIVE", "CREATED", "CREATING", "UPDATING"] +VideoColorRangeType = Literal["FULL", "LIMITED"] +VideoJobStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +RekognitionServiceName = Literal["rekognition"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_project_versions", + "describe_projects", + "list_collections", + "list_dataset_entries", + "list_dataset_labels", + "list_faces", + "list_project_policies", + "list_stream_processors", + "list_users",] +WaiterName = Literal["project_version_running", "project_version_training_completed"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "il-central-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +StreamProcessorSettingsUnionTypeDef = Union[ 'StreamProcessorSettingsTypeDef', 'StreamProcessorSettingsOutputTypeDef' ] +RegionOfInterestUnionTypeDef = Union['RegionOfInterestTypeDef', 'RegionOfInterestOutputTypeDef'] +TestingDataUnionTypeDef = Union['TestingDataTypeDef', 'TestingDataExtraOutputTypeDef'] +TrainingDataUnionTypeDef = Union['TrainingDataTypeDef', 'TrainingDataExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/repostspace_classes.py b/aws_resource_validator/pydantic_models/repostspace_classes.py new file mode 100644 index 00000000..8558ea7b --- /dev/null +++ b/aws_resource_validator/pydantic_models/repostspace_classes.py @@ -0,0 +1,135 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.repostspace_constants import * + +class CreateSpaceInputRequestTypeDef(BaseModel): + name: str + subdomain: str + tier: TierLevelType + description: Optional[str] = None + roleArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + userKMSKey: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteSpaceInputRequestTypeDef(BaseModel): + spaceId: str + +class DeregisterAdminInputRequestTypeDef(BaseModel): + adminId: str + spaceId: str + +class GetSpaceInputRequestTypeDef(BaseModel): + spaceId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListSpacesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SpaceDataTypeDef(BaseModel): + arn: str + configurationStatus: ConfigurationStatusType + createDateTime: datetime + name: str + randomDomain: str + spaceId: str + status: str + storageLimit: int + tier: TierLevelType + vanityDomain: str + vanityDomainStatus: VanityDomainStatusType + contentSize: Optional[int] = None + deleteDateTime: Optional[datetime] = None + description: Optional[str] = None + userCount: Optional[int] = None + userKMSKey: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RegisterAdminInputRequestTypeDef(BaseModel): + adminId: str + spaceId: str + +class SendInvitesInputRequestTypeDef(BaseModel): + accessorIds: Sequence[str] + body: str + spaceId: str + title: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateSpaceInputRequestTypeDef(BaseModel): + spaceId: str + description: Optional[str] = None + roleArn: Optional[str] = None + tier: Optional[TierLevelType] = None + +class CreateSpaceOutputTypeDef(BaseModel): + spaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetSpaceOutputTypeDef(BaseModel): + arn: str + clientId: str + configurationStatus: ConfigurationStatusType + contentSize: int + createDateTime: datetime + customerRoleArn: str + deleteDateTime: datetime + description: str + groupAdmins: List[str] + name: str + randomDomain: str + spaceId: str + status: str + storageLimit: int + tier: TierLevelType + userAdmins: List[str] + userCount: int + userKMSKey: str + vanityDomain: str + vanityDomainStatus: VanityDomainStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSpacesInputListSpacesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpacesOutputTypeDef(BaseModel): + nextToken: str + spaces: List[SpaceDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/repostspace_constants.py b/aws_resource_validator/pydantic_models/repostspace_constants.py new file mode 100644 index 00000000..19ef5b18 --- /dev/null +++ b/aws_resource_validator/pydantic_models/repostspace_constants.py @@ -0,0 +1,393 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConfigurationStatusType = Literal["CONFIGURED", "UNCONFIGURED"] +ListSpacesPaginatorName = Literal["list_spaces"] +TierLevelType = Literal["BASIC", "STANDARD"] +VanityDomainStatusType = Literal["APPROVED", "PENDING", "UNAPPROVED"] +rePostPrivateServiceName = Literal["repostspace"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_spaces"] diff --git a/aws_resource_validator/pydantic_models/resiliencehub_classes.py b/aws_resource_validator/pydantic_models/resiliencehub_classes.py new file mode 100644 index 00000000..233d061f --- /dev/null +++ b/aws_resource_validator/pydantic_models/resiliencehub_classes.py @@ -0,0 +1,999 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.resiliencehub_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class RecommendationItemTypeDef(BaseModel): + alreadyImplemented: Optional[bool] = None + excludeReason: Optional[ExcludeRecommendationReasonType] = None + excluded: Optional[bool] = None + resourceId: Optional[str] = None + targetAccountId: Optional[str] = None + targetRegion: Optional[str] = None + +class CostTypeDef(BaseModel): + amount: float + currency: str + frequency: CostFrequencyType + +class DisruptionComplianceTypeDef(BaseModel): + complianceStatus: ComplianceStatusType + achievableRpoInSecs: Optional[int] = None + achievableRtoInSecs: Optional[int] = None + currentRpoInSecs: Optional[int] = None + currentRtoInSecs: Optional[int] = None + message: Optional[str] = None + rpoDescription: Optional[str] = None + rpoReferenceId: Optional[str] = None + rtoDescription: Optional[str] = None + rtoReferenceId: Optional[str] = None + +class AppComponentTypeDef(BaseModel): + name: str + type: str + additionalInfo: Optional[Dict[str, List[str]]] = None + id: Optional[str] = None + +class EksSourceClusterNamespaceTypeDef(BaseModel): + eksClusterArn: str + namespace: str + +class TerraformSourceTypeDef(BaseModel): + s3StateFileUrl: str + +class AppSummaryTypeDef(BaseModel): + appArn: str + creationTime: datetime + name: str + assessmentSchedule: Optional[AppAssessmentScheduleTypeType] = None + complianceStatus: Optional[AppComplianceStatusTypeType] = None + description: Optional[str] = None + driftStatus: Optional[AppDriftStatusTypeType] = None + lastAppComplianceEvaluationTime: Optional[datetime] = None + resiliencyScore: Optional[float] = None + rpoInSecs: Optional[int] = None + rtoInSecs: Optional[int] = None + status: Optional[AppStatusTypeType] = None + +class EventSubscriptionTypeDef(BaseModel): + eventType: EventTypeType + name: str + snsTopicArn: Optional[str] = None + +class PermissionModelOutputTypeDef(BaseModel): + type: PermissionModelTypeType + crossAccountRoleArns: Optional[List[str]] = None + invokerRoleName: Optional[str] = None + +class AppVersionSummaryTypeDef(BaseModel): + appVersion: str + creationTime: Optional[datetime] = None + identifier: Optional[int] = None + versionName: Optional[str] = None + +class BatchUpdateRecommendationStatusFailedEntryTypeDef(BaseModel): + entryId: str + errorMessage: str + +class UpdateRecommendationStatusItemTypeDef(BaseModel): + resourceId: Optional[str] = None + targetAccountId: Optional[str] = None + targetRegion: Optional[str] = None + +class RecommendationDisruptionComplianceTypeDef(BaseModel): + expectedComplianceStatus: ComplianceStatusType + expectedRpoDescription: Optional[str] = None + expectedRpoInSecs: Optional[int] = None + expectedRtoDescription: Optional[str] = None + expectedRtoInSecs: Optional[int] = None + +class PermissionModelTypeDef(BaseModel): + type: PermissionModelTypeType + crossAccountRoleArns: Optional[Sequence[str]] = None + invokerRoleName: Optional[str] = None + +class CreateAppVersionAppComponentRequestRequestTypeDef(BaseModel): + appArn: str + name: str + type: str + additionalInfo: Optional[Mapping[str, Sequence[str]]] = None + clientToken: Optional[str] = None + id: Optional[str] = None + +class LogicalResourceIdTypeDef(BaseModel): + identifier: str + eksSourceName: Optional[str] = None + logicalStackName: Optional[str] = None + resourceGroupName: Optional[str] = None + terraformSourceName: Optional[str] = None + +class CreateRecommendationTemplateRequestRequestTypeDef(BaseModel): + assessmentArn: str + name: str + bucketName: Optional[str] = None + clientToken: Optional[str] = None + format: Optional[TemplateFormatType] = None + recommendationIds: Optional[Sequence[str]] = None + recommendationTypes: Optional[Sequence[RenderRecommendationTypeType]] = None + tags: Optional[Mapping[str, str]] = None + +class FailurePolicyTypeDef(BaseModel): + rpoInSecs: int + rtoInSecs: int + +class DeleteAppAssessmentRequestRequestTypeDef(BaseModel): + assessmentArn: str + clientToken: Optional[str] = None + +class DeleteAppRequestRequestTypeDef(BaseModel): + appArn: str + clientToken: Optional[str] = None + forceDelete: Optional[bool] = None + +class DeleteAppVersionAppComponentRequestRequestTypeDef(BaseModel): + appArn: str + id: str + clientToken: Optional[str] = None + +class DeleteRecommendationTemplateRequestRequestTypeDef(BaseModel): + recommendationTemplateArn: str + clientToken: Optional[str] = None + +class DeleteResiliencyPolicyRequestRequestTypeDef(BaseModel): + policyArn: str + clientToken: Optional[str] = None + +class DescribeAppAssessmentRequestRequestTypeDef(BaseModel): + assessmentArn: str + +class DescribeAppRequestRequestTypeDef(BaseModel): + appArn: str + +class DescribeAppVersionAppComponentRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + id: str + +class DescribeAppVersionRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + +class DescribeAppVersionResourcesResolutionStatusRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + resolutionId: Optional[str] = None + +class DescribeAppVersionTemplateRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + +class DescribeDraftAppVersionResourcesImportStatusRequestRequestTypeDef(BaseModel): + appArn: str + +class DescribeResiliencyPolicyRequestRequestTypeDef(BaseModel): + policyArn: str + +class EksSourceOutputTypeDef(BaseModel): + eksClusterArn: str + namespaces: List[str] + +class EksSourceTypeDef(BaseModel): + eksClusterArn: str + namespaces: Sequence[str] + +class ListAlarmRecommendationsRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppAssessmentComplianceDriftsRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAppAssessmentResourceDriftsRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppAssessmentsRequestRequestTypeDef(BaseModel): + appArn: Optional[str] = None + assessmentName: Optional[str] = None + assessmentStatus: Optional[Sequence[AssessmentStatusType]] = None + complianceStatus: Optional[ComplianceStatusType] = None + invoker: Optional[AssessmentInvokerType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + reverseOrder: Optional[bool] = None + +class ListAppComponentCompliancesRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppComponentRecommendationsRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppInputSourcesRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppVersionAppComponentsRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppVersionResourceMappingsRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAppVersionResourcesRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resolutionId: Optional[str] = None + +class ListRecommendationTemplatesRequestRequestTypeDef(BaseModel): + assessmentArn: Optional[str] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + recommendationTemplateArn: Optional[str] = None + reverseOrder: Optional[bool] = None + status: Optional[Sequence[RecommendationTemplateStatusType]] = None + +class ListResiliencyPoliciesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + policyName: Optional[str] = None + +class ListSopRecommendationsRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSuggestedResiliencyPoliciesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTestRecommendationsRequestRequestTypeDef(BaseModel): + assessmentArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListUnsupportedAppVersionResourcesRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + resolutionId: Optional[str] = None + +class PhysicalResourceIdTypeDef(BaseModel): + identifier: str + type: PhysicalIdentifierTypeType + awsAccountId: Optional[str] = None + awsRegion: Optional[str] = None + +class PublishAppVersionRequestRequestTypeDef(BaseModel): + appArn: str + versionName: Optional[str] = None + +class PutDraftAppVersionTemplateRequestRequestTypeDef(BaseModel): + appArn: str + appTemplateBody: str + +class S3LocationTypeDef(BaseModel): + bucket: Optional[str] = None + prefix: Optional[str] = None + +class RemoveDraftAppVersionResourceMappingsRequestRequestTypeDef(BaseModel): + appArn: str + appRegistryAppNames: Optional[Sequence[str]] = None + eksSourceNames: Optional[Sequence[str]] = None + logicalStackNames: Optional[Sequence[str]] = None + resourceGroupNames: Optional[Sequence[str]] = None + resourceNames: Optional[Sequence[str]] = None + terraformSourceNames: Optional[Sequence[str]] = None + +class ScoringComponentResiliencyScoreTypeDef(BaseModel): + excludedCount: Optional[int] = None + outstandingCount: Optional[int] = None + possibleScore: Optional[float] = None + score: Optional[float] = None + +class ResolveAppVersionResourcesRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + +class ResourceErrorTypeDef(BaseModel): + logicalResourceId: Optional[str] = None + physicalResourceId: Optional[str] = None + reason: Optional[str] = None + +class StartAppAssessmentRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + assessmentName: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAppVersionAppComponentRequestRequestTypeDef(BaseModel): + appArn: str + id: str + additionalInfo: Optional[Mapping[str, Sequence[str]]] = None + name: Optional[str] = None + type: Optional[str] = None + +class UpdateAppVersionRequestRequestTypeDef(BaseModel): + appArn: str + additionalInfo: Optional[Mapping[str, Sequence[str]]] = None + +class DeleteAppAssessmentResponseTypeDef(BaseModel): + assessmentArn: str + assessmentStatus: AssessmentStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAppResponseTypeDef(BaseModel): + appArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRecommendationTemplateResponseTypeDef(BaseModel): + recommendationTemplateArn: str + status: RecommendationTemplateStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResiliencyPolicyResponseTypeDef(BaseModel): + policyArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppVersionResourcesResolutionStatusResponseTypeDef(BaseModel): + appArn: str + appVersion: str + errorMessage: str + resolutionId: str + status: ResourceResolutionStatusTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppVersionResponseTypeDef(BaseModel): + additionalInfo: Dict[str, List[str]] + appArn: str + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppVersionTemplateResponseTypeDef(BaseModel): + appArn: str + appTemplateBody: str + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDraftAppVersionResourcesImportStatusResponseTypeDef(BaseModel): + appArn: str + appVersion: str + errorMessage: str + status: ResourceImportStatusTypeType + statusChangeTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PublishAppVersionResponseTypeDef(BaseModel): + appArn: str + appVersion: str + identifier: int + versionName: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutDraftAppVersionTemplateResponseTypeDef(BaseModel): + appArn: str + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveDraftAppVersionResourceMappingsResponseTypeDef(BaseModel): + appArn: str + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResolveAppVersionResourcesResponseTypeDef(BaseModel): + appArn: str + appVersion: str + resolutionId: str + status: ResourceResolutionStatusTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppVersionResponseTypeDef(BaseModel): + additionalInfo: Dict[str, List[str]] + appArn: str + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class AlarmRecommendationTypeDef(BaseModel): + name: str + recommendationId: str + referenceId: str + type: AlarmTypeType + appComponentName: Optional[str] = None + appComponentNames: Optional[List[str]] = None + description: Optional[str] = None + items: Optional[List[RecommendationItemTypeDef]] = None + prerequisite: Optional[str] = None + recommendationStatus: Optional[RecommendationStatusType] = None + +class SopRecommendationTypeDef(BaseModel): + recommendationId: str + referenceId: str + serviceType: Literal["SSM"] + appComponentName: Optional[str] = None + description: Optional[str] = None + items: Optional[List[RecommendationItemTypeDef]] = None + name: Optional[str] = None + prerequisite: Optional[str] = None + recommendationStatus: Optional[RecommendationStatusType] = None + +class TestRecommendationTypeDef(BaseModel): + referenceId: str + appComponentName: Optional[str] = None + dependsOnAlarms: Optional[List[str]] = None + description: Optional[str] = None + intent: Optional[str] = None + items: Optional[List[RecommendationItemTypeDef]] = None + name: Optional[str] = None + prerequisite: Optional[str] = None + recommendationId: Optional[str] = None + recommendationStatus: Optional[RecommendationStatusType] = None + risk: Optional[TestRiskType] = None + type: Optional[TestTypeType] = None + +class AppAssessmentSummaryTypeDef(BaseModel): + assessmentArn: str + assessmentStatus: AssessmentStatusType + appArn: Optional[str] = None + appVersion: Optional[str] = None + assessmentName: Optional[str] = None + complianceStatus: Optional[ComplianceStatusType] = None + cost: Optional[CostTypeDef] = None + driftStatus: Optional[DriftStatusType] = None + endTime: Optional[datetime] = None + invoker: Optional[AssessmentInvokerType] = None + message: Optional[str] = None + resiliencyScore: Optional[float] = None + startTime: Optional[datetime] = None + versionName: Optional[str] = None + +class ComplianceDriftTypeDef(BaseModel): + actualReferenceId: Optional[str] = None + actualValue: Optional[Dict[DisruptionTypeType, DisruptionComplianceTypeDef]] = None + appId: Optional[str] = None + appVersion: Optional[str] = None + diffType: Optional[DifferenceTypeType] = None + driftType: Optional[DriftTypeType] = None + entityId: Optional[str] = None + entityType: Optional[str] = None + expectedReferenceId: Optional[str] = None + expectedValue: Optional[Dict[DisruptionTypeType, DisruptionComplianceTypeDef]] = None + +class CreateAppVersionAppComponentResponseTypeDef(BaseModel): + appArn: str + appComponent: AppComponentTypeDef + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAppVersionAppComponentResponseTypeDef(BaseModel): + appArn: str + appComponent: AppComponentTypeDef + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppVersionAppComponentResponseTypeDef(BaseModel): + appArn: str + appComponent: AppComponentTypeDef + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppVersionAppComponentsResponseTypeDef(BaseModel): + appArn: str + appComponents: List[AppComponentTypeDef] + appVersion: str + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppVersionAppComponentResponseTypeDef(BaseModel): + appArn: str + appComponent: AppComponentTypeDef + appVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class AppInputSourceTypeDef(BaseModel): + importType: ResourceMappingTypeType + eksSourceClusterNamespace: Optional[EksSourceClusterNamespaceTypeDef] = None + resourceCount: Optional[int] = None + sourceArn: Optional[str] = None + sourceName: Optional[str] = None + terraformSource: Optional[TerraformSourceTypeDef] = None + +class DeleteAppInputSourceRequestRequestTypeDef(BaseModel): + appArn: str + clientToken: Optional[str] = None + eksSourceClusterNamespace: Optional[EksSourceClusterNamespaceTypeDef] = None + sourceArn: Optional[str] = None + terraformSource: Optional[TerraformSourceTypeDef] = None + +class ListAppsResponseTypeDef(BaseModel): + appSummaries: List[AppSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AppTypeDef(BaseModel): + appArn: str + creationTime: datetime + name: str + assessmentSchedule: Optional[AppAssessmentScheduleTypeType] = None + complianceStatus: Optional[AppComplianceStatusTypeType] = None + description: Optional[str] = None + driftStatus: Optional[AppDriftStatusTypeType] = None + eventSubscriptions: Optional[List[EventSubscriptionTypeDef]] = None + lastAppComplianceEvaluationTime: Optional[datetime] = None + lastDriftEvaluationTime: Optional[datetime] = None + lastResiliencyScoreEvaluationTime: Optional[datetime] = None + permissionModel: Optional[PermissionModelOutputTypeDef] = None + policyArn: Optional[str] = None + resiliencyScore: Optional[float] = None + rpoInSecs: Optional[int] = None + rtoInSecs: Optional[int] = None + status: Optional[AppStatusTypeType] = None + tags: Optional[Dict[str, str]] = None + +class ListAppVersionsResponseTypeDef(BaseModel): + appVersions: List[AppVersionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateRecommendationStatusSuccessfulEntryTypeDef(BaseModel): + entryId: str + excluded: bool + item: UpdateRecommendationStatusItemTypeDef + referenceId: str + excludeReason: Optional[ExcludeRecommendationReasonType] = None + +class UpdateRecommendationStatusRequestEntryTypeDef(BaseModel): + entryId: str + excluded: bool + item: UpdateRecommendationStatusItemTypeDef + referenceId: str + excludeReason: Optional[ExcludeRecommendationReasonType] = None + +class ConfigRecommendationTypeDef(BaseModel): + name: str + optimizationType: ConfigRecommendationOptimizationTypeType + referenceId: str + appComponentName: Optional[str] = None + compliance: Optional[Dict[DisruptionTypeType, DisruptionComplianceTypeDef]] = None + cost: Optional[CostTypeDef] = None + description: Optional[str] = None + haArchitecture: Optional[HaArchitectureType] = None + recommendationCompliance: Optional[ Dict[DisruptionTypeType, RecommendationDisruptionComplianceTypeDef] = None + suggestedChanges: Optional[List[str]] = None + +class CreateAppRequestRequestTypeDef(BaseModel): + name: str + assessmentSchedule: Optional[AppAssessmentScheduleTypeType] = None + clientToken: Optional[str] = None + description: Optional[str] = None + eventSubscriptions: Optional[Sequence[EventSubscriptionTypeDef]] = None + permissionModel: Optional[PermissionModelTypeDef] = None + policyArn: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateAppRequestRequestTypeDef(BaseModel): + appArn: str + assessmentSchedule: Optional[AppAssessmentScheduleTypeType] = None + clearResiliencyPolicyArn: Optional[bool] = None + description: Optional[str] = None + eventSubscriptions: Optional[Sequence[EventSubscriptionTypeDef]] = None + permissionModel: Optional[PermissionModelTypeDef] = None + policyArn: Optional[str] = None + +class CreateAppVersionResourceRequestRequestTypeDef(BaseModel): + appArn: str + appComponents: Sequence[str] + logicalResourceId: LogicalResourceIdTypeDef + physicalResourceId: str + resourceType: str + additionalInfo: Optional[Mapping[str, Sequence[str]]] = None + awsAccountId: Optional[str] = None + awsRegion: Optional[str] = None + clientToken: Optional[str] = None + resourceName: Optional[str] = None + +class DeleteAppVersionResourceRequestRequestTypeDef(BaseModel): + appArn: str + awsAccountId: Optional[str] = None + awsRegion: Optional[str] = None + clientToken: Optional[str] = None + logicalResourceId: Optional[LogicalResourceIdTypeDef] = None + physicalResourceId: Optional[str] = None + resourceName: Optional[str] = None + +class DescribeAppVersionResourceRequestRequestTypeDef(BaseModel): + appArn: str + appVersion: str + awsAccountId: Optional[str] = None + awsRegion: Optional[str] = None + logicalResourceId: Optional[LogicalResourceIdTypeDef] = None + physicalResourceId: Optional[str] = None + resourceName: Optional[str] = None + +class ResourceIdentifierTypeDef(BaseModel): + logicalResourceId: Optional[LogicalResourceIdTypeDef] = None + resourceType: Optional[str] = None + +class UpdateAppVersionResourceRequestRequestTypeDef(BaseModel): + appArn: str + additionalInfo: Optional[Mapping[str, Sequence[str]]] = None + appComponents: Optional[Sequence[str]] = None + awsAccountId: Optional[str] = None + awsRegion: Optional[str] = None + excluded: Optional[bool] = None + logicalResourceId: Optional[LogicalResourceIdTypeDef] = None + physicalResourceId: Optional[str] = None + resourceName: Optional[str] = None + resourceType: Optional[str] = None + +class CreateResiliencyPolicyRequestRequestTypeDef(BaseModel): + policy: Mapping[DisruptionTypeType, FailurePolicyTypeDef] + policyName: str + tier: ResiliencyPolicyTierType + clientToken: Optional[str] = None + dataLocationConstraint: Optional[DataLocationConstraintType] = None + policyDescription: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class ResiliencyPolicyTypeDef(BaseModel): + creationTime: Optional[datetime] = None + dataLocationConstraint: Optional[DataLocationConstraintType] = None + estimatedCostTier: Optional[EstimatedCostTierType] = None + policy: Optional[Dict[DisruptionTypeType, FailurePolicyTypeDef]] = None + policyArn: Optional[str] = None + policyDescription: Optional[str] = None + policyName: Optional[str] = None + tags: Optional[Dict[str, str]] = None + tier: Optional[ResiliencyPolicyTierType] = None + +class UpdateResiliencyPolicyRequestRequestTypeDef(BaseModel): + policyArn: str + dataLocationConstraint: Optional[DataLocationConstraintType] = None + policy: Optional[Mapping[DisruptionTypeType, FailurePolicyTypeDef]] = None + policyDescription: Optional[str] = None + policyName: Optional[str] = None + tier: Optional[ResiliencyPolicyTierType] = None + +class ImportResourcesToDraftAppVersionResponseTypeDef(BaseModel): + appArn: str + appVersion: str + eksSources: List[EksSourceOutputTypeDef] + sourceArns: List[str] + status: ResourceImportStatusTypeType + terraformSources: List[TerraformSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppAssessmentResourceDriftsRequestListAppAssessmentResourceDriftsPaginateTypeDef(BaseModel): + assessmentArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppVersionsRequestRequestTypeDef(BaseModel): + appArn: str + endTime: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + startTime: Optional[TimestampTypeDef] = None + +class ListAppsRequestRequestTypeDef(BaseModel): + appArn: Optional[str] = None + fromLastAssessmentTime: Optional[TimestampTypeDef] = None + maxResults: Optional[int] = None + name: Optional[str] = None + nextToken: Optional[str] = None + reverseOrder: Optional[bool] = None + toLastAssessmentTime: Optional[TimestampTypeDef] = None + +class PhysicalResourceTypeDef(BaseModel): + logicalResourceId: LogicalResourceIdTypeDef + physicalResourceId: PhysicalResourceIdTypeDef + resourceType: str + additionalInfo: Optional[Dict[str, List[str]]] = None + appComponents: Optional[List[AppComponentTypeDef]] = None + excluded: Optional[bool] = None + parentResourceName: Optional[str] = None + resourceName: Optional[str] = None + sourceType: Optional[ResourceSourceTypeType] = None + +class ResourceMappingTypeDef(BaseModel): + mappingType: ResourceMappingTypeType + physicalResourceId: PhysicalResourceIdTypeDef + appRegistryAppName: Optional[str] = None + eksSourceName: Optional[str] = None + logicalStackName: Optional[str] = None + resourceGroupName: Optional[str] = None + resourceName: Optional[str] = None + terraformSourceName: Optional[str] = None + +class UnsupportedResourceTypeDef(BaseModel): + logicalResourceId: LogicalResourceIdTypeDef + physicalResourceId: PhysicalResourceIdTypeDef + resourceType: str + unsupportedResourceStatus: Optional[str] = None + +class RecommendationTemplateTypeDef(BaseModel): + assessmentArn: str + format: TemplateFormatType + name: str + recommendationTemplateArn: str + recommendationTypes: List[RenderRecommendationTypeType] + status: RecommendationTemplateStatusType + appArn: Optional[str] = None + endTime: Optional[datetime] = None + message: Optional[str] = None + needsReplacements: Optional[bool] = None + recommendationIds: Optional[List[str]] = None + startTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + templatesLocation: Optional[S3LocationTypeDef] = None + +class ResiliencyScoreTypeDef(BaseModel): + disruptionScore: Dict[DisruptionTypeType, float] + score: float + componentScore: Optional[ Dict[ResiliencyScoreTypeType, ScoringComponentResiliencyScoreTypeDef] = None + +class ResourceErrorsDetailsTypeDef(BaseModel): + hasMoreErrors: Optional[bool] = None + resourceErrors: Optional[List[ResourceErrorTypeDef]] = None + +class ListAlarmRecommendationsResponseTypeDef(BaseModel): + alarmRecommendations: List[AlarmRecommendationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSopRecommendationsResponseTypeDef(BaseModel): + nextToken: str + sopRecommendations: List[SopRecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTestRecommendationsResponseTypeDef(BaseModel): + nextToken: str + testRecommendations: List[TestRecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppAssessmentsResponseTypeDef(BaseModel): + assessmentSummaries: List[AppAssessmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppAssessmentComplianceDriftsResponseTypeDef(BaseModel): + complianceDrifts: List[ComplianceDriftTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAppInputSourceResponseTypeDef(BaseModel): + appArn: str + appInputSource: AppInputSourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppInputSourcesResponseTypeDef(BaseModel): + appInputSources: List[AppInputSourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppResponseTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppResponseTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppResponseTypeDef(BaseModel): + app: AppTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateRecommendationStatusResponseTypeDef(BaseModel): + appArn: str + failedEntries: List[BatchUpdateRecommendationStatusFailedEntryTypeDef] + successfulEntries: List[BatchUpdateRecommendationStatusSuccessfulEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateRecommendationStatusRequestRequestTypeDef(BaseModel): + appArn: str + requestEntries: Sequence[UpdateRecommendationStatusRequestEntryTypeDef] + +class ComponentRecommendationTypeDef(BaseModel): + appComponentName: str + configRecommendations: List[ConfigRecommendationTypeDef] + recommendationStatus: RecommendationComplianceStatusType + +class ResourceDriftTypeDef(BaseModel): + appArn: Optional[str] = None + appVersion: Optional[str] = None + diffType: Optional[DifferenceTypeType] = None + referenceId: Optional[str] = None + resourceIdentifier: Optional[ResourceIdentifierTypeDef] = None + +class CreateResiliencyPolicyResponseTypeDef(BaseModel): + policy: ResiliencyPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResiliencyPolicyResponseTypeDef(BaseModel): + policy: ResiliencyPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResiliencyPoliciesResponseTypeDef(BaseModel): + nextToken: str + resiliencyPolicies: List[ResiliencyPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSuggestedResiliencyPoliciesResponseTypeDef(BaseModel): + nextToken: str + resiliencyPolicies: List[ResiliencyPolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResiliencyPolicyResponseTypeDef(BaseModel): + policy: ResiliencyPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportResourcesToDraftAppVersionRequestRequestTypeDef(BaseModel): + appArn: str + eksSources: Optional[Sequence[EksSourceUnionTypeDef]] = None + importStrategy: Optional[ResourceImportStrategyTypeType] = None + sourceArns: Optional[Sequence[str]] = None + terraformSources: Optional[Sequence[TerraformSourceTypeDef]] = None + +class CreateAppVersionResourceResponseTypeDef(BaseModel): + appArn: str + appVersion: str + physicalResource: PhysicalResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAppVersionResourceResponseTypeDef(BaseModel): + appArn: str + appVersion: str + physicalResource: PhysicalResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppVersionResourceResponseTypeDef(BaseModel): + appArn: str + appVersion: str + physicalResource: PhysicalResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppVersionResourcesResponseTypeDef(BaseModel): + nextToken: str + physicalResources: List[PhysicalResourceTypeDef] + resolutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppVersionResourceResponseTypeDef(BaseModel): + appArn: str + appVersion: str + physicalResource: PhysicalResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AddDraftAppVersionResourceMappingsRequestRequestTypeDef(BaseModel): + appArn: str + resourceMappings: Sequence[ResourceMappingTypeDef] + +class AddDraftAppVersionResourceMappingsResponseTypeDef(BaseModel): + appArn: str + appVersion: str + resourceMappings: List[ResourceMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppVersionResourceMappingsResponseTypeDef(BaseModel): + nextToken: str + resourceMappings: List[ResourceMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListUnsupportedAppVersionResourcesResponseTypeDef(BaseModel): + nextToken: str + resolutionId: str + unsupportedResources: List[UnsupportedResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecommendationTemplateResponseTypeDef(BaseModel): + recommendationTemplate: RecommendationTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecommendationTemplatesResponseTypeDef(BaseModel): + nextToken: str + recommendationTemplates: List[RecommendationTemplateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AppComponentComplianceTypeDef(BaseModel): + appComponentName: Optional[str] = None + compliance: Optional[Dict[DisruptionTypeType, DisruptionComplianceTypeDef]] = None + cost: Optional[CostTypeDef] = None + message: Optional[str] = None + resiliencyScore: Optional[ResiliencyScoreTypeDef] = None + status: Optional[ComplianceStatusType] = None + +class AppAssessmentTypeDef(BaseModel): + assessmentArn: str + assessmentStatus: AssessmentStatusType + invoker: AssessmentInvokerType + appArn: Optional[str] = None + appVersion: Optional[str] = None + assessmentName: Optional[str] = None + compliance: Optional[Dict[DisruptionTypeType, DisruptionComplianceTypeDef]] = None + complianceStatus: Optional[ComplianceStatusType] = None + cost: Optional[CostTypeDef] = None + driftStatus: Optional[DriftStatusType] = None + endTime: Optional[datetime] = None + message: Optional[str] = None + policy: Optional[ResiliencyPolicyTypeDef] = None + resiliencyScore: Optional[ResiliencyScoreTypeDef] = None + resourceErrorsDetails: Optional[ResourceErrorsDetailsTypeDef] = None + startTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + versionName: Optional[str] = None + +class ListAppComponentRecommendationsResponseTypeDef(BaseModel): + componentRecommendations: List[ComponentRecommendationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppAssessmentResourceDriftsResponseTypeDef(BaseModel): + nextToken: str + resourceDrifts: List[ResourceDriftTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppComponentCompliancesResponseTypeDef(BaseModel): + componentCompliances: List[AppComponentComplianceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAppAssessmentResponseTypeDef(BaseModel): + assessment: AppAssessmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartAppAssessmentResponseTypeDef(BaseModel): + assessment: AppAssessmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/resiliencehub_constants.py b/aws_resource_validator/pydantic_models/resiliencehub_constants.py new file mode 100644 index 00000000..c1f214a6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/resiliencehub_constants.py @@ -0,0 +1,463 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlarmTypeType = Literal["Canary", "Composite", "Event", "Logs", "Metric"] +AppAssessmentScheduleTypeType = Literal["Daily", "Disabled"] +AppComplianceStatusTypeType = Literal["ChangesDetected", "NotAssessed", "PolicyBreached", "PolicyMet"] +AppDriftStatusTypeType = Literal["Detected", "NotChecked", "NotDetected"] +AppStatusTypeType = Literal["Active", "Deleting"] +AssessmentInvokerType = Literal["System", "User"] +AssessmentStatusType = Literal["Failed", "InProgress", "Pending", "Success"] +ComplianceStatusType = Literal["PolicyBreached", "PolicyMet"] +ConfigRecommendationOptimizationTypeType = Literal["BestAZRecovery", + "BestAttainable", + "BestRegionRecovery", + "LeastChange", + "LeastCost", + "LeastErrors",] +CostFrequencyType = Literal["Daily", "Hourly", "Monthly", "Yearly"] +DataLocationConstraintType = Literal["AnyLocation", "SameContinent", "SameCountry"] +DifferenceTypeType = Literal["Added", "NotEqual", "Removed"] +DisruptionTypeType = Literal["AZ", "Hardware", "Region", "Software"] +DriftStatusType = Literal["Detected", "NotChecked", "NotDetected"] +DriftTypeType = Literal["AppComponentResiliencyComplianceStatus", "ApplicationCompliance"] +EstimatedCostTierType = Literal["L1", "L2", "L3", "L4"] +EventTypeType = Literal["DriftDetected", "ScheduledAssessmentFailure"] +ExcludeRecommendationReasonType = Literal["AlreadyImplemented", "ComplexityOfImplementation", "NotRelevant"] +HaArchitectureType = Literal["BackupAndRestore", "MultiSite", "NoRecoveryPlan", "PilotLight", "WarmStandby"] +ListAppAssessmentResourceDriftsPaginatorName = Literal["list_app_assessment_resource_drifts"] +PermissionModelTypeType = Literal["LegacyIAMUser", "RoleBased"] +PhysicalIdentifierTypeType = Literal["Arn", "Native"] +RecommendationComplianceStatusType = Literal["BreachedCanMeet", "BreachedUnattainable", "MetCanImprove"] +RecommendationStatusType = Literal["Excluded", "Implemented", "Inactive", "NotImplemented"] +RecommendationTemplateStatusType = Literal["Failed", "InProgress", "Pending", "Success"] +RenderRecommendationTypeType = Literal["Alarm", "Sop", "Test"] +ResiliencyPolicyTierType = Literal["CoreServices", "Critical", "Important", "MissionCritical", "NonCritical", "NotApplicable"] +ResiliencyScoreTypeType = Literal["Alarm", "Compliance", "Sop", "Test"] +ResourceImportStatusTypeType = Literal["Failed", "InProgress", "Pending", "Success"] +ResourceImportStrategyTypeType = Literal["AddOnly", "ReplaceAll"] +ResourceMappingTypeType = Literal["AppRegistryApp", "CfnStack", "EKS", "Resource", "ResourceGroup", "Terraform"] +ResourceResolutionStatusTypeType = Literal["Failed", "InProgress", "Pending", "Success"] +ResourceSourceTypeType = Literal["AppTemplate", "Discovered"] +SopServiceTypeType = Literal["SSM"] +TemplateFormatType = Literal["CfnJson", "CfnYaml"] +TestRiskType = Literal["High", "Medium", "Small"] +TestTypeType = Literal["AZ", "Hardware", "Region", "Software"] +ResilienceHubServiceName = Literal["resiliencehub"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_app_assessment_resource_drifts"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +PermissionModelUnionTypeDef = Union['PermissionModelTypeDef', 'PermissionModelOutputTypeDef'] +EksSourceUnionTypeDef = Union['EksSourceTypeDef', 'EksSourceOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/resource_explorer_2_classes.py b/aws_resource_validator/pydantic_models/resource_explorer_2_classes.py new file mode 100644 index 00000000..56ae3b14 --- /dev/null +++ b/aws_resource_validator/pydantic_models/resource_explorer_2_classes.py @@ -0,0 +1,270 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.resource_explorer_2_constants import * + +class AssociateDefaultViewInputRequestTypeDef(BaseModel): + ViewArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchGetViewErrorTypeDef(BaseModel): + ErrorMessage: str + ViewArn: str + +class BatchGetViewInputRequestTypeDef(BaseModel): + ViewArns: Optional[Sequence[str]] = None + +class CreateIndexInputRequestTypeDef(BaseModel): + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class IncludedPropertyTypeDef(BaseModel): + Name: str + +class SearchFilterTypeDef(BaseModel): + FilterString: str + +class DeleteIndexInputRequestTypeDef(BaseModel): + Arn: str + +class DeleteViewInputRequestTypeDef(BaseModel): + ViewArn: str + +class OrgConfigurationTypeDef(BaseModel): + AWSServiceAccessStatus: AWSServiceAccessStatusType + ServiceLinkedRole: Optional[str] = None + +class GetViewInputRequestTypeDef(BaseModel): + ViewArn: str + +class IndexTypeDef(BaseModel): + Arn: Optional[str] = None + Region: Optional[str] = None + Type: Optional[IndexTypeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListIndexesForMembersInputRequestTypeDef(BaseModel): + AccountIdList: Sequence[str] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MemberIndexTypeDef(BaseModel): + AccountId: Optional[str] = None + Arn: Optional[str] = None + Region: Optional[str] = None + Type: Optional[IndexTypeType] = None + +class ListIndexesInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Regions: Optional[Sequence[str]] = None + Type: Optional[IndexTypeType] = None + +class ListSupportedResourceTypesInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SupportedResourceTypeTypeDef(BaseModel): + ResourceType: Optional[str] = None + Service: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class ListViewsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ResourceCountTypeDef(BaseModel): + Complete: Optional[bool] = None + TotalResources: Optional[int] = None + +class ResourcePropertyTypeDef(BaseModel): + Data: Optional[Dict[str, Any]] = None + LastReportedAt: Optional[datetime] = None + Name: Optional[str] = None + +class SearchInputRequestTypeDef(BaseModel): + QueryString: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ViewArn: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + Tags: Optional[Mapping[str, str]] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateIndexTypeInputRequestTypeDef(BaseModel): + Arn: str + Type: IndexTypeType + +class AssociateDefaultViewOutputTypeDef(BaseModel): + ViewArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIndexOutputTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + State: IndexStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIndexOutputTypeDef(BaseModel): + Arn: str + LastUpdatedAt: datetime + State: IndexStateType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteViewOutputTypeDef(BaseModel): + ViewArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDefaultViewOutputTypeDef(BaseModel): + ViewArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIndexOutputTypeDef(BaseModel): + Arn: str + CreatedAt: datetime + LastUpdatedAt: datetime + ReplicatingFrom: List[str] + ReplicatingTo: List[str] + State: IndexStateType + Tags: Dict[str, str] + Type: IndexTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListViewsOutputTypeDef(BaseModel): + NextToken: str + Views: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIndexTypeOutputTypeDef(BaseModel): + Arn: str + LastUpdatedAt: datetime + State: IndexStateType + Type: IndexTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateViewInputRequestTypeDef(BaseModel): + ViewName: str + ClientToken: Optional[str] = None + Filters: Optional[SearchFilterTypeDef] = None + IncludedProperties: Optional[Sequence[IncludedPropertyTypeDef]] = None + Scope: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateViewInputRequestTypeDef(BaseModel): + ViewArn: str + Filters: Optional[SearchFilterTypeDef] = None + IncludedProperties: Optional[Sequence[IncludedPropertyTypeDef]] = None + +class ViewTypeDef(BaseModel): + Filters: Optional[SearchFilterTypeDef] = None + IncludedProperties: Optional[List[IncludedPropertyTypeDef]] = None + LastUpdatedAt: Optional[datetime] = None + Owner: Optional[str] = None + Scope: Optional[str] = None + ViewArn: Optional[str] = None + +class GetAccountLevelServiceConfigurationOutputTypeDef(BaseModel): + OrgConfiguration: OrgConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListIndexesOutputTypeDef(BaseModel): + Indexes: List[IndexTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIndexesForMembersInputListIndexesForMembersPaginateTypeDef(BaseModel): + AccountIdList: Sequence[str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIndexesInputListIndexesPaginateTypeDef(BaseModel): + Regions: Optional[Sequence[str]] = None + Type: Optional[IndexTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSupportedResourceTypesInputListSupportedResourceTypesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListViewsInputListViewsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchInputSearchPaginateTypeDef(BaseModel): + QueryString: str + ViewArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIndexesForMembersOutputTypeDef(BaseModel): + Indexes: List[MemberIndexTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSupportedResourceTypesOutputTypeDef(BaseModel): + NextToken: str + ResourceTypes: List[SupportedResourceTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceTypeDef(BaseModel): + Arn: Optional[str] = None + LastReportedAt: Optional[datetime] = None + OwningAccountId: Optional[str] = None + Properties: Optional[List[ResourcePropertyTypeDef]] = None + Region: Optional[str] = None + ResourceType: Optional[str] = None + Service: Optional[str] = None + +class BatchGetViewOutputTypeDef(BaseModel): + Errors: List[BatchGetViewErrorTypeDef] + Views: List[ViewTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateViewOutputTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetViewOutputTypeDef(BaseModel): + Tags: Dict[str, str] + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateViewOutputTypeDef(BaseModel): + View: ViewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchOutputTypeDef(BaseModel): + Count: ResourceCountTypeDef + NextToken: str + Resources: List[ResourceTypeDef] + ViewArn: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/resource_explorer_2_constants.py b/aws_resource_validator/pydantic_models/resource_explorer_2_constants.py new file mode 100644 index 00000000..9fb1ca42 --- /dev/null +++ b/aws_resource_validator/pydantic_models/resource_explorer_2_constants.py @@ -0,0 +1,423 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AWSServiceAccessStatusType = Literal["DISABLED", "ENABLED"] +IndexStateType = Literal["ACTIVE", "CREATING", "DELETED", "DELETING", "UPDATING"] +IndexTypeType = Literal["AGGREGATOR", "LOCAL"] +ListIndexesForMembersPaginatorName = Literal["list_indexes_for_members"] +ListIndexesPaginatorName = Literal["list_indexes"] +ListSupportedResourceTypesPaginatorName = Literal["list_supported_resource_types"] +ListViewsPaginatorName = Literal["list_views"] +SearchPaginatorName = Literal["search"] +ResourceExplorerServiceName = Literal["resource-explorer-2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_indexes", + "list_indexes_for_members", + "list_supported_resource_types", + "list_views", + "search",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/resource_groups_classes.py b/aws_resource_validator/pydantic_models/resource_groups_classes.py new file mode 100644 index 00000000..0b84b7e2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/resource_groups_classes.py @@ -0,0 +1,266 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.resource_groups_constants import * + +class AccountSettingsTypeDef(BaseModel): + GroupLifecycleEventsDesiredStatus: Optional[GroupLifecycleEventsDesiredStatusType] = None + GroupLifecycleEventsStatus: Optional[GroupLifecycleEventsStatusType] = None + GroupLifecycleEventsStatusMessage: Optional[str] = None + +class ResourceQueryTypeDef(BaseModel): + Type: QueryTypeType + Query: str + +class GroupTypeDef(BaseModel): + GroupArn: str + Name: str + Description: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteGroupInputRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + Group: Optional[str] = None + +class FailedResourceTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ErrorMessage: Optional[str] = None + ErrorCode: Optional[str] = None + +class GetGroupConfigurationInputRequestTypeDef(BaseModel): + Group: Optional[str] = None + +class GetGroupInputRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + Group: Optional[str] = None + +class GetGroupQueryInputRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + Group: Optional[str] = None + +class GetTagsInputRequestTypeDef(BaseModel): + Arn: str + +class GroupConfigurationParameterTypeDef(BaseModel): + Name: str + Values: Optional[Sequence[str]] = None + +class GroupFilterTypeDef(BaseModel): + Name: GroupFilterNameType + Values: Sequence[str] + +class GroupIdentifierTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupArn: Optional[str] = None + +class GroupResourcesInputRequestTypeDef(BaseModel): + Group: str + ResourceArns: Sequence[str] + +class PendingResourceTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ResourceFilterTypeDef(BaseModel): + Name: Literal["resource-type"] + Values: Sequence[str] + +class ResourceIdentifierTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + +class ResourceStatusTypeDef(BaseModel): + Name: Optional[Literal["PENDING"]] = None + +class QueryErrorTypeDef(BaseModel): + ErrorCode: Optional[QueryErrorCodeType] = None + Message: Optional[str] = None + +class TagInputRequestTypeDef(BaseModel): + Arn: str + Tags: Mapping[str, str] + +class UngroupResourcesInputRequestTypeDef(BaseModel): + Group: str + ResourceArns: Sequence[str] + +class UntagInputRequestTypeDef(BaseModel): + Arn: str + Keys: Sequence[str] + +class UpdateAccountSettingsInputRequestTypeDef(BaseModel): + GroupLifecycleEventsDesiredStatus: Optional[GroupLifecycleEventsDesiredStatusType] = None + +class UpdateGroupInputRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + Group: Optional[str] = None + Description: Optional[str] = None + +class GroupQueryTypeDef(BaseModel): + GroupName: str + ResourceQuery: ResourceQueryTypeDef + +class SearchResourcesInputRequestTypeDef(BaseModel): + ResourceQuery: ResourceQueryTypeDef + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class UpdateGroupQueryInputRequestTypeDef(BaseModel): + ResourceQuery: ResourceQueryTypeDef + GroupName: Optional[str] = None + Group: Optional[str] = None + +class DeleteGroupOutputTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountSettingsOutputTypeDef(BaseModel): + AccountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupOutputTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTagsOutputTypeDef(BaseModel): + Arn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class TagOutputTypeDef(BaseModel): + Arn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UntagOutputTypeDef(BaseModel): + Arn: str + Keys: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountSettingsOutputTypeDef(BaseModel): + AccountSettings: AccountSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGroupOutputTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GroupConfigurationItemTypeDef(BaseModel): + Type: str + Parameters: Optional[Sequence[GroupConfigurationParameterTypeDef]] = None + +class ListGroupsInputRequestTypeDef(BaseModel): + Filters: Optional[Sequence[GroupFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListGroupsOutputTypeDef(BaseModel): + GroupIdentifiers: List[GroupIdentifierTypeDef] + Groups: List[GroupTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GroupResourcesOutputTypeDef(BaseModel): + Succeeded: List[str] + Failed: List[FailedResourceTypeDef] + Pending: List[PendingResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UngroupResourcesOutputTypeDef(BaseModel): + Succeeded: List[str] + Failed: List[FailedResourceTypeDef] + Pending: List[PendingResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsInputListGroupsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[GroupFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchResourcesInputSearchResourcesPaginateTypeDef(BaseModel): + ResourceQuery: ResourceQueryTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupResourcesInputListGroupResourcesPaginateTypeDef(BaseModel): + GroupName: Optional[str] = None + Group: Optional[str] = None + Filters: Optional[Sequence[ResourceFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupResourcesInputRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + Group: Optional[str] = None + Filters: Optional[Sequence[ResourceFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListGroupResourcesItemTypeDef(BaseModel): + Identifier: Optional[ResourceIdentifierTypeDef] = None + Status: Optional[ResourceStatusTypeDef] = None + +class SearchResourcesOutputTypeDef(BaseModel): + ResourceIdentifiers: List[ResourceIdentifierTypeDef] + NextToken: str + QueryErrors: List[QueryErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupQueryOutputTypeDef(BaseModel): + GroupQuery: GroupQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGroupQueryOutputTypeDef(BaseModel): + GroupQuery: GroupQueryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupInputRequestTypeDef(BaseModel): + Name: str + Description: Optional[str] = None + ResourceQuery: Optional[ResourceQueryTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + Configuration: Optional[Sequence[GroupConfigurationItemTypeDef]] = None + +class GroupConfigurationTypeDef(BaseModel): + Configuration: Optional[List[GroupConfigurationItemTypeDef]] = None + ProposedConfiguration: Optional[List[GroupConfigurationItemTypeDef]] = None + Status: Optional[GroupConfigurationStatusType] = None + FailureReason: Optional[str] = None + +class PutGroupConfigurationInputRequestTypeDef(BaseModel): + Group: Optional[str] = None + Configuration: Optional[Sequence[GroupConfigurationItemTypeDef]] = None + +class ListGroupResourcesOutputTypeDef(BaseModel): + Resources: List[ListGroupResourcesItemTypeDef] + ResourceIdentifiers: List[ResourceIdentifierTypeDef] + NextToken: str + QueryErrors: List[QueryErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupOutputTypeDef(BaseModel): + Group: GroupTypeDef + ResourceQuery: ResourceQueryTypeDef + Tags: Dict[str, str] + GroupConfiguration: GroupConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupConfigurationOutputTypeDef(BaseModel): + GroupConfiguration: GroupConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/resource_groups_constants.py b/aws_resource_validator/pydantic_models/resource_groups_constants.py new file mode 100644 index 00000000..5e70e18a --- /dev/null +++ b/aws_resource_validator/pydantic_models/resource_groups_constants.py @@ -0,0 +1,439 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +GroupConfigurationStatusType = Literal["UPDATE_COMPLETE", "UPDATE_FAILED", "UPDATING"] +GroupFilterNameType = Literal["configuration-type", "resource-type"] +GroupLifecycleEventsDesiredStatusType = Literal["ACTIVE", "INACTIVE"] +GroupLifecycleEventsStatusType = Literal["ACTIVE", "ERROR", "INACTIVE", "IN_PROGRESS"] +ListGroupResourcesPaginatorName = Literal["list_group_resources"] +ListGroupsPaginatorName = Literal["list_groups"] +QueryErrorCodeType = Literal["CLOUDFORMATION_STACK_INACTIVE", + "CLOUDFORMATION_STACK_NOT_EXISTING", + "CLOUDFORMATION_STACK_UNASSUMABLE_ROLE", + "RESOURCE_TYPE_NOT_SUPPORTED",] +QueryTypeType = Literal["CLOUDFORMATION_STACK_1_0", "TAG_FILTERS_1_0"] +ResourceFilterNameType = Literal["resource-type"] +ResourceStatusValueType = Literal["PENDING"] +SearchResourcesPaginatorName = Literal["search_resources"] +ResourceGroupsServiceName = Literal["resource-groups"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_group_resources", "list_groups", "search_resources"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/resourcegroupstaggingapi_classes.py b/aws_resource_validator/pydantic_models/resourcegroupstaggingapi_classes.py new file mode 100644 index 00000000..c2870f69 --- /dev/null +++ b/aws_resource_validator/pydantic_models/resourcegroupstaggingapi_classes.py @@ -0,0 +1,151 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.resourcegroupstaggingapi_constants import * + +class ComplianceDetailsTypeDef(BaseModel): + NoncompliantKeys: Optional[List[str]] = None + KeysWithNoncompliantValues: Optional[List[str]] = None + ComplianceStatus: Optional[bool] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class FailureInfoTypeDef(BaseModel): + StatusCode: Optional[int] = None + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetComplianceSummaryInputRequestTypeDef(BaseModel): + TargetIdFilters: Optional[Sequence[str]] = None + RegionFilters: Optional[Sequence[str]] = None + ResourceTypeFilters: Optional[Sequence[str]] = None + TagKeyFilters: Optional[Sequence[str]] = None + GroupBy: Optional[Sequence[GroupByAttributeType]] = None + MaxResults: Optional[int] = None + PaginationToken: Optional[str] = None + +class SummaryTypeDef(BaseModel): + LastUpdated: Optional[str] = None + TargetId: Optional[str] = None + TargetIdType: Optional[TargetIdTypeType] = None + Region: Optional[str] = None + ResourceType: Optional[str] = None + NonCompliantResources: Optional[int] = None + +class TagFilterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class GetTagKeysInputRequestTypeDef(BaseModel): + PaginationToken: Optional[str] = None + +class GetTagValuesInputRequestTypeDef(BaseModel): + Key: str + PaginationToken: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class StartReportCreationInputRequestTypeDef(BaseModel): + S3Bucket: str + +class TagResourcesInputRequestTypeDef(BaseModel): + ResourceARNList: Sequence[str] + Tags: Mapping[str, str] + +class UntagResourcesInputRequestTypeDef(BaseModel): + ResourceARNList: Sequence[str] + TagKeys: Sequence[str] + +class DescribeReportCreationOutputTypeDef(BaseModel): + Status: str + S3Location: str + ErrorMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTagKeysOutputTypeDef(BaseModel): + PaginationToken: str + TagKeys: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTagValuesOutputTypeDef(BaseModel): + PaginationToken: str + TagValues: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourcesOutputTypeDef(BaseModel): + FailedResourcesMap: Dict[str, FailureInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UntagResourcesOutputTypeDef(BaseModel): + FailedResourcesMap: Dict[str, FailureInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetComplianceSummaryInputGetComplianceSummaryPaginateTypeDef(BaseModel): + TargetIdFilters: Optional[Sequence[str]] = None + RegionFilters: Optional[Sequence[str]] = None + ResourceTypeFilters: Optional[Sequence[str]] = None + TagKeyFilters: Optional[Sequence[str]] = None + GroupBy: Optional[Sequence[GroupByAttributeType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTagKeysInputGetTagKeysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTagValuesInputGetTagValuesPaginateTypeDef(BaseModel): + Key: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetComplianceSummaryOutputTypeDef(BaseModel): + SummaryList: List[SummaryTypeDef] + PaginationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcesInputGetResourcesPaginateTypeDef(BaseModel): + TagFilters: Optional[Sequence[TagFilterTypeDef]] = None + TagsPerPage: Optional[int] = None + ResourceTypeFilters: Optional[Sequence[str]] = None + IncludeComplianceDetails: Optional[bool] = None + ExcludeCompliantResources: Optional[bool] = None + ResourceARNList: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourcesInputRequestTypeDef(BaseModel): + PaginationToken: Optional[str] = None + TagFilters: Optional[Sequence[TagFilterTypeDef]] = None + ResourcesPerPage: Optional[int] = None + TagsPerPage: Optional[int] = None + ResourceTypeFilters: Optional[Sequence[str]] = None + IncludeComplianceDetails: Optional[bool] = None + ExcludeCompliantResources: Optional[bool] = None + ResourceARNList: Optional[Sequence[str]] = None + +class ResourceTagMappingTypeDef(BaseModel): + ResourceARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ComplianceDetails: Optional[ComplianceDetailsTypeDef] = None + +class GetResourcesOutputTypeDef(BaseModel): + PaginationToken: str + ResourceTagMappingList: List[ResourceTagMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/resourcegroupstaggingapi_constants.py b/aws_resource_validator/pydantic_models/resourcegroupstaggingapi_constants.py new file mode 100644 index 00000000..198f8071 --- /dev/null +++ b/aws_resource_validator/pydantic_models/resourcegroupstaggingapi_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ErrorCodeType = Literal["InternalServiceException", "InvalidParameterException"] +GetComplianceSummaryPaginatorName = Literal["get_compliance_summary"] +GetResourcesPaginatorName = Literal["get_resources"] +GetTagKeysPaginatorName = Literal["get_tag_keys"] +GetTagValuesPaginatorName = Literal["get_tag_values"] +GroupByAttributeType = Literal["REGION", "RESOURCE_TYPE", "TARGET_ID"] +TargetIdTypeType = Literal["ACCOUNT", "OU", "ROOT"] +ResourceGroupsTaggingAPIServiceName = Literal["resourcegroupstaggingapi"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_compliance_summary", "get_resources", "get_tag_keys", "get_tag_values"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/robomaker_classes.py b/aws_resource_validator/pydantic_models/robomaker_classes.py new file mode 100644 index 00000000..67aeb747 --- /dev/null +++ b/aws_resource_validator/pydantic_models/robomaker_classes.py @@ -0,0 +1,1112 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.robomaker_constants import * + +class BatchDeleteWorldsRequestRequestTypeDef(BaseModel): + worlds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchDescribeSimulationJobRequestRequestTypeDef(BaseModel): + jobs: Sequence[str] + +class BatchPolicyTypeDef(BaseModel): + timeoutInSeconds: Optional[int] = None + maxConcurrency: Optional[int] = None + +class CancelDeploymentJobRequestRequestTypeDef(BaseModel): + job: str + +class CancelSimulationJobBatchRequestRequestTypeDef(BaseModel): + batch: str + +class CancelSimulationJobRequestRequestTypeDef(BaseModel): + job: str + +class CancelWorldExportJobRequestRequestTypeDef(BaseModel): + job: str + +class CancelWorldGenerationJobRequestRequestTypeDef(BaseModel): + job: str + +class ComputeResponseTypeDef(BaseModel): + simulationUnitLimit: Optional[int] = None + computeType: Optional[ComputeTypeType] = None + gpuUnitLimit: Optional[int] = None + +class ComputeTypeDef(BaseModel): + simulationUnitLimit: Optional[int] = None + computeType: Optional[ComputeTypeType] = None + gpuUnitLimit: Optional[int] = None + +class CreateFleetRequestRequestTypeDef(BaseModel): + name: str + tags: Optional[Mapping[str, str]] = None + +class EnvironmentTypeDef(BaseModel): + uri: Optional[str] = None + +class RobotSoftwareSuiteTypeDef(BaseModel): + name: Optional[RobotSoftwareSuiteTypeType] = None + version: Optional[RobotSoftwareSuiteVersionTypeType] = None + +class SourceConfigTypeDef(BaseModel): + s3Bucket: Optional[str] = None + s3Key: Optional[str] = None + architecture: Optional[ArchitectureType] = None + +class SourceTypeDef(BaseModel): + s3Bucket: Optional[str] = None + s3Key: Optional[str] = None + etag: Optional[str] = None + architecture: Optional[ArchitectureType] = None + +class CreateRobotApplicationVersionRequestRequestTypeDef(BaseModel): + application: str + currentRevisionId: Optional[str] = None + s3Etags: Optional[Sequence[str]] = None + imageDigest: Optional[str] = None + +class CreateRobotRequestRequestTypeDef(BaseModel): + name: str + architecture: ArchitectureType + greengrassGroupId: str + tags: Optional[Mapping[str, str]] = None + +class RenderingEngineTypeDef(BaseModel): + name: Optional[Literal["OGRE"]] = None + version: Optional[str] = None + +class SimulationSoftwareSuiteTypeDef(BaseModel): + name: Optional[SimulationSoftwareSuiteTypeType] = None + version: Optional[str] = None + +class CreateSimulationApplicationVersionRequestRequestTypeDef(BaseModel): + application: str + currentRevisionId: Optional[str] = None + s3Etags: Optional[Sequence[str]] = None + imageDigest: Optional[str] = None + +class DataSourceConfigTypeDef(BaseModel): + name: str + s3Bucket: str + s3Keys: Sequence[str] + type: Optional[DataSourceTypeType] = None + destination: Optional[str] = None + +class LoggingConfigTypeDef(BaseModel): + recordAllRosTopics: Optional[bool] = None + +class OutputLocationTypeDef(BaseModel): + s3Bucket: Optional[str] = None + s3Prefix: Optional[str] = None + +class VPCConfigTypeDef(BaseModel): + subnets: Sequence[str] + securityGroups: Optional[Sequence[str]] = None + assignPublicIp: Optional[bool] = None + +class VPCConfigResponseTypeDef(BaseModel): + subnets: Optional[List[str]] = None + securityGroups: Optional[List[str]] = None + vpcId: Optional[str] = None + assignPublicIp: Optional[bool] = None + +class WorldCountTypeDef(BaseModel): + floorplanCount: Optional[int] = None + interiorCountPerFloorplan: Optional[int] = None + +class TemplateLocationTypeDef(BaseModel): + s3Bucket: str + s3Key: str + +class S3KeyOutputTypeDef(BaseModel): + s3Key: Optional[str] = None + etag: Optional[str] = None + +class DeleteFleetRequestRequestTypeDef(BaseModel): + fleet: str + +class DeleteRobotApplicationRequestRequestTypeDef(BaseModel): + application: str + applicationVersion: Optional[str] = None + +class DeleteRobotRequestRequestTypeDef(BaseModel): + robot: str + +class DeleteSimulationApplicationRequestRequestTypeDef(BaseModel): + application: str + applicationVersion: Optional[str] = None + +class DeleteWorldTemplateRequestRequestTypeDef(BaseModel): + template: str + +class DeploymentLaunchConfigPaginatorTypeDef(BaseModel): + packageName: str + launchFile: str + preLaunchFile: Optional[str] = None + postLaunchFile: Optional[str] = None + environmentVariables: Optional[Dict[str, str]] = None + +class DeploymentLaunchConfigTypeDef(BaseModel): + packageName: str + launchFile: str + preLaunchFile: Optional[str] = None + postLaunchFile: Optional[str] = None + environmentVariables: Optional[Mapping[str, str]] = None + +class S3ObjectTypeDef(BaseModel): + bucket: str + key: str + etag: Optional[str] = None + +class DeregisterRobotRequestRequestTypeDef(BaseModel): + fleet: str + robot: str + +class DescribeDeploymentJobRequestRequestTypeDef(BaseModel): + job: str + +class DescribeFleetRequestRequestTypeDef(BaseModel): + fleet: str + +class RobotTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + fleetArn: Optional[str] = None + status: Optional[RobotStatusType] = None + greenGrassGroupId: Optional[str] = None + createdAt: Optional[datetime] = None + architecture: Optional[ArchitectureType] = None + lastDeploymentJob: Optional[str] = None + lastDeploymentTime: Optional[datetime] = None + +class DescribeRobotApplicationRequestRequestTypeDef(BaseModel): + application: str + applicationVersion: Optional[str] = None + +class DescribeRobotRequestRequestTypeDef(BaseModel): + robot: str + +class DescribeSimulationApplicationRequestRequestTypeDef(BaseModel): + application: str + applicationVersion: Optional[str] = None + +class DescribeSimulationJobBatchRequestRequestTypeDef(BaseModel): + batch: str + +class SimulationJobSummaryTypeDef(BaseModel): + arn: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + status: Optional[SimulationJobStatusType] = None + simulationApplicationNames: Optional[List[str]] = None + robotApplicationNames: Optional[List[str]] = None + dataSourceNames: Optional[List[str]] = None + computeType: Optional[ComputeTypeType] = None + +class DescribeSimulationJobRequestRequestTypeDef(BaseModel): + job: str + +class NetworkInterfaceTypeDef(BaseModel): + networkInterfaceId: Optional[str] = None + privateIpAddress: Optional[str] = None + publicIpAddress: Optional[str] = None + +class DescribeWorldExportJobRequestRequestTypeDef(BaseModel): + job: str + +class DescribeWorldGenerationJobRequestRequestTypeDef(BaseModel): + job: str + +class DescribeWorldRequestRequestTypeDef(BaseModel): + world: str + +class DescribeWorldTemplateRequestRequestTypeDef(BaseModel): + template: str + +class WorldFailureTypeDef(BaseModel): + failureCode: Optional[WorldGenerationJobErrorCodeType] = None + sampleFailureReason: Optional[str] = None + failureCount: Optional[int] = None + +class FilterTypeDef(BaseModel): + name: Optional[str] = None + values: Optional[Sequence[str]] = None + +class FleetTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + createdAt: Optional[datetime] = None + lastDeploymentStatus: Optional[DeploymentStatusType] = None + lastDeploymentJob: Optional[str] = None + lastDeploymentTime: Optional[datetime] = None + +class GetWorldTemplateBodyRequestRequestTypeDef(BaseModel): + template: Optional[str] = None + generationJob: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class SimulationJobBatchSummaryTypeDef(BaseModel): + arn: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + createdAt: Optional[datetime] = None + status: Optional[SimulationJobBatchStatusType] = None + failedRequestCount: Optional[int] = None + pendingRequestCount: Optional[int] = None + createdRequestCount: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListWorldTemplatesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class TemplateSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + version: Optional[str] = None + +class WorldSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + generationJob: Optional[str] = None + template: Optional[str] = None + +class PortMappingTypeDef(BaseModel): + jobPort: int + applicationPort: int + enableOnPublicIp: Optional[bool] = None + +class ProgressDetailTypeDef(BaseModel): + currentProgress: Optional[RobotDeploymentStepType] = None + percentDone: Optional[float] = None + estimatedTimeRemainingSeconds: Optional[int] = None + targetResource: Optional[str] = None + +class RegisterRobotRequestRequestTypeDef(BaseModel): + fleet: str + robot: str + +class RestartSimulationJobRequestRequestTypeDef(BaseModel): + job: str + +class ToolTypeDef(BaseModel): + name: str + command: str + streamUI: Optional[bool] = None + streamOutputToCloudWatch: Optional[bool] = None + exitBehavior: Optional[ExitBehaviorType] = None + +class UploadConfigurationTypeDef(BaseModel): + name: str + path: str + uploadBehavior: UploadBehaviorType + +class WorldConfigTypeDef(BaseModel): + world: Optional[str] = None + +class SyncDeploymentJobRequestRequestTypeDef(BaseModel): + clientRequestToken: str + fleet: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class BatchDeleteWorldsResponseTypeDef(BaseModel): + unprocessedWorlds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetResponseTypeDef(BaseModel): + arn: str + name: str + createdAt: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRobotResponseTypeDef(BaseModel): + arn: str + name: str + createdAt: datetime + greengrassGroupId: str + architecture: ArchitectureType + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorldTemplateResponseTypeDef(BaseModel): + arn: str + clientRequestToken: str + createdAt: datetime + name: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterRobotResponseTypeDef(BaseModel): + fleet: str + robot: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRobotResponseTypeDef(BaseModel): + arn: str + name: str + fleetArn: str + status: RobotStatusType + greengrassGroupId: str + createdAt: datetime + architecture: ArchitectureType + lastDeploymentJob: str + lastDeploymentTime: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorldResponseTypeDef(BaseModel): + arn: str + generationJob: str + template: str + createdAt: datetime + tags: Dict[str, str] + worldDescriptionBody: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorldTemplateResponseTypeDef(BaseModel): + arn: str + clientRequestToken: str + name: str + createdAt: datetime + lastUpdatedAt: datetime + tags: Dict[str, str] + version: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorldTemplateBodyResponseTypeDef(BaseModel): + templateBody: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterRobotResponseTypeDef(BaseModel): + fleet: str + robot: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorldTemplateResponseTypeDef(BaseModel): + arn: str + name: str + createdAt: datetime + lastUpdatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class RobotApplicationSummaryTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + version: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + robotSoftwareSuite: Optional[RobotSoftwareSuiteTypeDef] = None + +class CreateRobotApplicationRequestRequestTypeDef(BaseModel): + name: str + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + sources: Optional[Sequence[SourceConfigTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + environment: Optional[EnvironmentTypeDef] = None + +class UpdateRobotApplicationRequestRequestTypeDef(BaseModel): + application: str + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + sources: Optional[Sequence[SourceConfigTypeDef]] = None + currentRevisionId: Optional[str] = None + environment: Optional[EnvironmentTypeDef] = None + +class CreateRobotApplicationResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + lastUpdatedAt: datetime + revisionId: str + tags: Dict[str, str] + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRobotApplicationVersionResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + lastUpdatedAt: datetime + revisionId: str + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRobotApplicationResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + revisionId: str + lastUpdatedAt: datetime + tags: Dict[str, str] + environment: EnvironmentTypeDef + imageDigest: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRobotApplicationResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + lastUpdatedAt: datetime + revisionId: str + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSimulationApplicationRequestRequestTypeDef(BaseModel): + name: str + simulationSoftwareSuite: SimulationSoftwareSuiteTypeDef + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + sources: Optional[Sequence[SourceConfigTypeDef]] = None + renderingEngine: Optional[RenderingEngineTypeDef] = None + tags: Optional[Mapping[str, str]] = None + environment: Optional[EnvironmentTypeDef] = None + +class CreateSimulationApplicationResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + simulationSoftwareSuite: SimulationSoftwareSuiteTypeDef + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + renderingEngine: RenderingEngineTypeDef + lastUpdatedAt: datetime + revisionId: str + tags: Dict[str, str] + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSimulationApplicationVersionResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + simulationSoftwareSuite: SimulationSoftwareSuiteTypeDef + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + renderingEngine: RenderingEngineTypeDef + lastUpdatedAt: datetime + revisionId: str + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSimulationApplicationResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + simulationSoftwareSuite: SimulationSoftwareSuiteTypeDef + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + renderingEngine: RenderingEngineTypeDef + revisionId: str + lastUpdatedAt: datetime + tags: Dict[str, str] + environment: EnvironmentTypeDef + imageDigest: str + ResponseMetadata: ResponseMetadataTypeDef + +class SimulationApplicationSummaryTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + version: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + robotSoftwareSuite: Optional[RobotSoftwareSuiteTypeDef] = None + simulationSoftwareSuite: Optional[SimulationSoftwareSuiteTypeDef] = None + +class UpdateSimulationApplicationRequestRequestTypeDef(BaseModel): + application: str + simulationSoftwareSuite: SimulationSoftwareSuiteTypeDef + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + sources: Optional[Sequence[SourceConfigTypeDef]] = None + renderingEngine: Optional[RenderingEngineTypeDef] = None + currentRevisionId: Optional[str] = None + environment: Optional[EnvironmentTypeDef] = None + +class UpdateSimulationApplicationResponseTypeDef(BaseModel): + arn: str + name: str + version: str + sources: List[SourceTypeDef] + simulationSoftwareSuite: SimulationSoftwareSuiteTypeDef + robotSoftwareSuite: RobotSoftwareSuiteTypeDef + renderingEngine: RenderingEngineTypeDef + lastUpdatedAt: datetime + revisionId: str + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorldExportJobRequestRequestTypeDef(BaseModel): + worlds: Sequence[str] + outputLocation: OutputLocationTypeDef + iamRole: str + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateWorldExportJobResponseTypeDef(BaseModel): + arn: str + status: WorldExportJobStatusType + createdAt: datetime + failureCode: WorldExportJobErrorCodeType + clientRequestToken: str + outputLocation: OutputLocationTypeDef + iamRole: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorldExportJobResponseTypeDef(BaseModel): + arn: str + status: WorldExportJobStatusType + createdAt: datetime + failureCode: WorldExportJobErrorCodeType + failureReason: str + clientRequestToken: str + worlds: List[str] + outputLocation: OutputLocationTypeDef + iamRole: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class WorldExportJobSummaryTypeDef(BaseModel): + arn: Optional[str] = None + status: Optional[WorldExportJobStatusType] = None + createdAt: Optional[datetime] = None + worlds: Optional[List[str]] = None + outputLocation: Optional[OutputLocationTypeDef] = None + +class CreateWorldGenerationJobRequestRequestTypeDef(BaseModel): + template: str + worldCount: WorldCountTypeDef + clientRequestToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + worldTags: Optional[Mapping[str, str]] = None + +class CreateWorldGenerationJobResponseTypeDef(BaseModel): + arn: str + status: WorldGenerationJobStatusType + createdAt: datetime + failureCode: WorldGenerationJobErrorCodeType + clientRequestToken: str + template: str + worldCount: WorldCountTypeDef + tags: Dict[str, str] + worldTags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class WorldGenerationJobSummaryTypeDef(BaseModel): + arn: Optional[str] = None + template: Optional[str] = None + createdAt: Optional[datetime] = None + status: Optional[WorldGenerationJobStatusType] = None + worldCount: Optional[WorldCountTypeDef] = None + succeededWorldCount: Optional[int] = None + failedWorldCount: Optional[int] = None + +class CreateWorldTemplateRequestRequestTypeDef(BaseModel): + clientRequestToken: Optional[str] = None + name: Optional[str] = None + templateBody: Optional[str] = None + templateLocation: Optional[TemplateLocationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateWorldTemplateRequestRequestTypeDef(BaseModel): + template: str + name: Optional[str] = None + templateBody: Optional[str] = None + templateLocation: Optional[TemplateLocationTypeDef] = None + +class DataSourceTypeDef(BaseModel): + name: Optional[str] = None + s3Bucket: Optional[str] = None + s3Keys: Optional[List[S3KeyOutputTypeDef]] = None + type: Optional[DataSourceTypeType] = None + destination: Optional[str] = None + +class DeploymentApplicationConfigPaginatorTypeDef(BaseModel): + application: str + applicationVersion: str + launchConfig: DeploymentLaunchConfigPaginatorTypeDef + +class DeploymentApplicationConfigTypeDef(BaseModel): + application: str + applicationVersion: str + launchConfig: DeploymentLaunchConfigTypeDef + +class DeploymentConfigTypeDef(BaseModel): + concurrentDeploymentPercentage: Optional[int] = None + failureThresholdPercentage: Optional[int] = None + robotDeploymentTimeoutInSeconds: Optional[int] = None + downloadConditionFile: Optional[S3ObjectTypeDef] = None + +class DescribeFleetResponseTypeDef(BaseModel): + name: str + arn: str + robots: List[RobotTypeDef] + createdAt: datetime + lastDeploymentStatus: DeploymentStatusType + lastDeploymentJob: str + lastDeploymentTime: datetime + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRobotsResponseTypeDef(BaseModel): + robots: List[RobotTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSimulationJobsResponseTypeDef(BaseModel): + simulationJobSummaries: List[SimulationJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class FailureSummaryTypeDef(BaseModel): + totalFailureCount: Optional[int] = None + failures: Optional[List[WorldFailureTypeDef]] = None + +class ListDeploymentJobsRequestRequestTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListFleetsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListRobotApplicationsRequestRequestTypeDef(BaseModel): + versionQualifier: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListRobotsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListSimulationApplicationsRequestRequestTypeDef(BaseModel): + versionQualifier: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListSimulationJobBatchesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListSimulationJobsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListWorldExportJobsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListWorldGenerationJobsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListWorldsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[FilterTypeDef]] = None + +class ListFleetsResponseTypeDef(BaseModel): + fleetDetails: List[FleetTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentJobsRequestListDeploymentJobsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFleetsRequestListFleetsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRobotApplicationsRequestListRobotApplicationsPaginateTypeDef(BaseModel): + versionQualifier: Optional[str] = None + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRobotsRequestListRobotsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSimulationApplicationsRequestListSimulationApplicationsPaginateTypeDef(BaseModel): + versionQualifier: Optional[str] = None + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSimulationJobBatchesRequestListSimulationJobBatchesPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSimulationJobsRequestListSimulationJobsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorldExportJobsRequestListWorldExportJobsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorldGenerationJobsRequestListWorldGenerationJobsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorldTemplatesRequestListWorldTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorldsRequestListWorldsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSimulationJobBatchesResponseTypeDef(BaseModel): + simulationJobBatchSummaries: List[SimulationJobBatchSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorldTemplatesResponseTypeDef(BaseModel): + templateSummaries: List[TemplateSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorldsResponseTypeDef(BaseModel): + worldSummaries: List[WorldSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PortForwardingConfigTypeDef(BaseModel): + portMappings: Optional[List[PortMappingTypeDef]] = None + +class RobotDeploymentTypeDef(BaseModel): + arn: Optional[str] = None + deploymentStartTime: Optional[datetime] = None + deploymentFinishTime: Optional[datetime] = None + status: Optional[RobotStatusType] = None + progressDetail: Optional[ProgressDetailTypeDef] = None + failureReason: Optional[str] = None + failureCode: Optional[DeploymentJobErrorCodeType] = None + +class ListRobotApplicationsResponseTypeDef(BaseModel): + robotApplicationSummaries: List[RobotApplicationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSimulationApplicationsResponseTypeDef(BaseModel): + simulationApplicationSummaries: List[SimulationApplicationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorldExportJobsResponseTypeDef(BaseModel): + worldExportJobSummaries: List[WorldExportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorldGenerationJobsResponseTypeDef(BaseModel): + worldGenerationJobSummaries: List[WorldGenerationJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeploymentJobRequestRequestTypeDef(BaseModel): + clientRequestToken: str + fleet: str + deploymentApplicationConfigs: Sequence[DeploymentApplicationConfigTypeDef] + deploymentConfig: Optional[DeploymentConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateDeploymentJobResponseTypeDef(BaseModel): + arn: str + fleet: str + status: DeploymentStatusType + deploymentApplicationConfigs: List[DeploymentApplicationConfigTypeDef] + failureReason: str + failureCode: DeploymentJobErrorCodeType + createdAt: datetime + deploymentConfig: DeploymentConfigTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeploymentJobPaginatorTypeDef(BaseModel): + arn: Optional[str] = None + fleet: Optional[str] = None + status: Optional[DeploymentStatusType] = None + deploymentApplicationConfigs: Optional[ List[DeploymentApplicationConfigPaginatorTypeDef] ] = None + deploymentConfig: Optional[DeploymentConfigTypeDef] = None + failureReason: Optional[str] = None + failureCode: Optional[DeploymentJobErrorCodeType] = None + createdAt: Optional[datetime] = None + +class DeploymentJobTypeDef(BaseModel): + arn: Optional[str] = None + fleet: Optional[str] = None + status: Optional[DeploymentStatusType] = None + deploymentApplicationConfigs: Optional[List[DeploymentApplicationConfigTypeDef]] = None + deploymentConfig: Optional[DeploymentConfigTypeDef] = None + failureReason: Optional[str] = None + failureCode: Optional[DeploymentJobErrorCodeType] = None + createdAt: Optional[datetime] = None + +class SyncDeploymentJobResponseTypeDef(BaseModel): + arn: str + fleet: str + status: DeploymentStatusType + deploymentConfig: DeploymentConfigTypeDef + deploymentApplicationConfigs: List[DeploymentApplicationConfigTypeDef] + failureReason: str + failureCode: DeploymentJobErrorCodeType + createdAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class FinishedWorldsSummaryTypeDef(BaseModel): + finishedCount: Optional[int] = None + succeededWorlds: Optional[List[str]] = None + failureSummary: Optional[FailureSummaryTypeDef] = None + +class LaunchConfigTypeDef(BaseModel): + packageName: Optional[str] = None + launchFile: Optional[str] = None + environmentVariables: Optional[Dict[str, str]] = None + portForwardingConfig: Optional[PortForwardingConfigTypeDef] = None + streamUI: Optional[bool] = None + command: Optional[List[str]] = None + +class DescribeDeploymentJobResponseTypeDef(BaseModel): + arn: str + fleet: str + status: DeploymentStatusType + deploymentConfig: DeploymentConfigTypeDef + deploymentApplicationConfigs: List[DeploymentApplicationConfigTypeDef] + failureReason: str + failureCode: DeploymentJobErrorCodeType + createdAt: datetime + robotDeploymentSummary: List[RobotDeploymentTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentJobsResponsePaginatorTypeDef(BaseModel): + deploymentJobs: List[DeploymentJobPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeploymentJobsResponseTypeDef(BaseModel): + deploymentJobs: List[DeploymentJobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorldGenerationJobResponseTypeDef(BaseModel): + arn: str + status: WorldGenerationJobStatusType + createdAt: datetime + failureCode: WorldGenerationJobErrorCodeType + failureReason: str + clientRequestToken: str + template: str + worldCount: WorldCountTypeDef + finishedWorldsSummary: FinishedWorldsSummaryTypeDef + tags: Dict[str, str] + worldTags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class RobotApplicationConfigTypeDef(BaseModel): + application: str + launchConfig: LaunchConfigTypeDef + applicationVersion: Optional[str] = None + uploadConfigurations: Optional[List[UploadConfigurationTypeDef]] = None + useDefaultUploadConfigurations: Optional[bool] = None + tools: Optional[List[ToolTypeDef]] = None + useDefaultTools: Optional[bool] = None + +class SimulationApplicationConfigTypeDef(BaseModel): + application: str + launchConfig: LaunchConfigTypeDef + applicationVersion: Optional[str] = None + uploadConfigurations: Optional[List[UploadConfigurationTypeDef]] = None + worldConfigs: Optional[List[WorldConfigTypeDef]] = None + useDefaultUploadConfigurations: Optional[bool] = None + tools: Optional[List[ToolTypeDef]] = None + useDefaultTools: Optional[bool] = None + +class CreateSimulationJobRequestRequestTypeDef(BaseModel): + maxJobDurationInSeconds: int + iamRole: str + clientRequestToken: Optional[str] = None + outputLocation: Optional[OutputLocationTypeDef] = None + loggingConfig: Optional[LoggingConfigTypeDef] = None + failureBehavior: Optional[FailureBehaviorType] = None + robotApplications: Optional[Sequence[RobotApplicationConfigTypeDef]] = None + simulationApplications: Optional[Sequence[SimulationApplicationConfigTypeDef]] = None + dataSources: Optional[Sequence[DataSourceConfigTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + vpcConfig: Optional[VPCConfigTypeDef] = None + compute: Optional[ComputeTypeDef] = None + +class CreateSimulationJobResponseTypeDef(BaseModel): + arn: str + status: SimulationJobStatusType + lastStartedAt: datetime + lastUpdatedAt: datetime + failureBehavior: FailureBehaviorType + failureCode: SimulationJobErrorCodeType + clientRequestToken: str + outputLocation: OutputLocationTypeDef + loggingConfig: LoggingConfigTypeDef + maxJobDurationInSeconds: int + simulationTimeMillis: int + iamRole: str + robotApplications: List[RobotApplicationConfigTypeDef] + simulationApplications: List[SimulationApplicationConfigTypeDef] + dataSources: List[DataSourceTypeDef] + tags: Dict[str, str] + vpcConfig: VPCConfigResponseTypeDef + compute: ComputeResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSimulationJobResponseTypeDef(BaseModel): + arn: str + name: str + status: SimulationJobStatusType + lastStartedAt: datetime + lastUpdatedAt: datetime + failureBehavior: FailureBehaviorType + failureCode: SimulationJobErrorCodeType + failureReason: str + clientRequestToken: str + outputLocation: OutputLocationTypeDef + loggingConfig: LoggingConfigTypeDef + maxJobDurationInSeconds: int + simulationTimeMillis: int + iamRole: str + robotApplications: List[RobotApplicationConfigTypeDef] + simulationApplications: List[SimulationApplicationConfigTypeDef] + dataSources: List[DataSourceTypeDef] + tags: Dict[str, str] + vpcConfig: VPCConfigResponseTypeDef + networkInterface: NetworkInterfaceTypeDef + compute: ComputeResponseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SimulationJobRequestTypeDef(BaseModel): + maxJobDurationInSeconds: int + outputLocation: Optional[OutputLocationTypeDef] = None + loggingConfig: Optional[LoggingConfigTypeDef] = None + iamRole: Optional[str] = None + failureBehavior: Optional[FailureBehaviorType] = None + useDefaultApplications: Optional[bool] = None + robotApplications: Optional[List[RobotApplicationConfigTypeDef]] = None + simulationApplications: Optional[List[SimulationApplicationConfigTypeDef]] = None + dataSources: Optional[List[DataSourceConfigTypeDef]] = None + vpcConfig: Optional[VPCConfigTypeDef] = None + compute: Optional[ComputeTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class SimulationJobTypeDef(BaseModel): + arn: Optional[str] = None + name: Optional[str] = None + status: Optional[SimulationJobStatusType] = None + lastStartedAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + failureBehavior: Optional[FailureBehaviorType] = None + failureCode: Optional[SimulationJobErrorCodeType] = None + failureReason: Optional[str] = None + clientRequestToken: Optional[str] = None + outputLocation: Optional[OutputLocationTypeDef] = None + loggingConfig: Optional[LoggingConfigTypeDef] = None + maxJobDurationInSeconds: Optional[int] = None + simulationTimeMillis: Optional[int] = None + iamRole: Optional[str] = None + robotApplications: Optional[List[RobotApplicationConfigTypeDef]] = None + simulationApplications: Optional[List[SimulationApplicationConfigTypeDef]] = None + dataSources: Optional[List[DataSourceTypeDef]] = None + tags: Optional[Dict[str, str]] = None + vpcConfig: Optional[VPCConfigResponseTypeDef] = None + networkInterface: Optional[NetworkInterfaceTypeDef] = None + compute: Optional[ComputeResponseTypeDef] = None + +class FailedCreateSimulationJobRequestTypeDef(BaseModel): + request: Optional[SimulationJobRequestTypeDef] = None + failureReason: Optional[str] = None + failureCode: Optional[SimulationJobErrorCodeType] = None + failedAt: Optional[datetime] = None + +class StartSimulationJobBatchRequestRequestTypeDef(BaseModel): + createSimulationJobRequests: Sequence[SimulationJobRequestTypeDef] + clientRequestToken: Optional[str] = None + batchPolicy: Optional[BatchPolicyTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class BatchDescribeSimulationJobResponseTypeDef(BaseModel): + jobs: List[SimulationJobTypeDef] + unprocessedJobs: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSimulationJobBatchResponseTypeDef(BaseModel): + arn: str + status: SimulationJobBatchStatusType + lastUpdatedAt: datetime + createdAt: datetime + clientRequestToken: str + batchPolicy: BatchPolicyTypeDef + failureCode: Literal["InternalServiceError"] + failureReason: str + failedRequests: List[FailedCreateSimulationJobRequestTypeDef] + pendingRequests: List[SimulationJobRequestTypeDef] + createdRequests: List[SimulationJobSummaryTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartSimulationJobBatchResponseTypeDef(BaseModel): + arn: str + status: SimulationJobBatchStatusType + createdAt: datetime + clientRequestToken: str + batchPolicy: BatchPolicyTypeDef + failureCode: Literal["InternalServiceError"] + failureReason: str + failedRequests: List[FailedCreateSimulationJobRequestTypeDef] + pendingRequests: List[SimulationJobRequestTypeDef] + createdRequests: List[SimulationJobSummaryTypeDef] + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/robomaker_constants.py b/aws_resource_validator/pydantic_models/robomaker_constants.py new file mode 100644 index 00000000..09c4bb2a --- /dev/null +++ b/aws_resource_validator/pydantic_models/robomaker_constants.py @@ -0,0 +1,525 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ArchitectureType = Literal["ARM64", "ARMHF", "X86_64"] +ComputeTypeType = Literal["CPU", "GPU_AND_CPU"] +DataSourceTypeType = Literal["Archive", "File", "Prefix"] +DeploymentJobErrorCodeType = Literal["BadLambdaAssociated", + "BadPermissionError", + "DeploymentFleetDoesNotExist", + "DownloadConditionFailed", + "EnvironmentSetupError", + "EtagMismatch", + "ExtractingBundleFailure", + "FailureThresholdBreached", + "FleetDeploymentTimeout", + "GreengrassDeploymentFailed", + "GreengrassGroupVersionDoesNotExist", + "InternalServerError", + "InvalidGreengrassGroup", + "LambdaDeleted", + "MissingRobotApplicationArchitecture", + "MissingRobotArchitecture", + "MissingRobotDeploymentResource", + "PostLaunchFileFailure", + "PreLaunchFileFailure", + "ResourceNotFound", + "RobotAgentConnectionTimeout", + "RobotApplicationDoesNotExist", + "RobotDeploymentAborted", + "RobotDeploymentNoResponse",] +DeploymentStatusType = Literal["Canceled", "Failed", "InProgress", "Pending", "Preparing", "Succeeded"] +ExitBehaviorType = Literal["FAIL", "RESTART"] +FailureBehaviorType = Literal["Continue", "Fail"] +ListDeploymentJobsPaginatorName = Literal["list_deployment_jobs"] +ListFleetsPaginatorName = Literal["list_fleets"] +ListRobotApplicationsPaginatorName = Literal["list_robot_applications"] +ListRobotsPaginatorName = Literal["list_robots"] +ListSimulationApplicationsPaginatorName = Literal["list_simulation_applications"] +ListSimulationJobBatchesPaginatorName = Literal["list_simulation_job_batches"] +ListSimulationJobsPaginatorName = Literal["list_simulation_jobs"] +ListWorldExportJobsPaginatorName = Literal["list_world_export_jobs"] +ListWorldGenerationJobsPaginatorName = Literal["list_world_generation_jobs"] +ListWorldTemplatesPaginatorName = Literal["list_world_templates"] +ListWorldsPaginatorName = Literal["list_worlds"] +RenderingEngineTypeType = Literal["OGRE"] +RobotDeploymentStepType = Literal["DownloadingExtracting", + "ExecutingDownloadCondition", + "ExecutingPostLaunch", + "ExecutingPreLaunch", + "Finished", + "Launching", + "Validating",] +RobotSoftwareSuiteTypeType = Literal["General", "ROS", "ROS2"] +RobotSoftwareSuiteVersionTypeType = Literal["Dashing", "Foxy", "Kinetic", "Melodic"] +RobotStatusType = Literal["Available", "Deploying", "Failed", "InSync", "NoResponse", "PendingNewDeployment", "Registered"] +SimulationJobBatchErrorCodeType = Literal["InternalServiceError"] +SimulationJobBatchStatusType = Literal["Canceled", + "Canceling", + "Completed", + "Completing", + "Failed", + "InProgress", + "Pending", + "TimedOut", + "TimingOut",] +SimulationJobErrorCodeType = Literal["BadPermissionsCloudwatchLogs", + "BadPermissionsRobotApplication", + "BadPermissionsS3Object", + "BadPermissionsS3Output", + "BadPermissionsSimulationApplication", + "BadPermissionsUserCredentials", + "BatchCanceled", + "BatchTimedOut", + "ENILimitExceeded", + "InternalServiceError", + "InvalidBundleRobotApplication", + "InvalidBundleSimulationApplication", + "InvalidInput", + "InvalidS3Resource", + "LimitExceeded", + "MismatchedEtag", + "RequestThrottled", + "ResourceNotFound", + "RobotApplicationCrash", + "RobotApplicationHealthCheckFailure", + "RobotApplicationVersionMismatchedEtag", + "SimulationApplicationCrash", + "SimulationApplicationHealthCheckFailure", + "SimulationApplicationVersionMismatchedEtag", + "SubnetIpLimitExceeded", + "ThrottlingError", + "UploadContentMismatchError", + "WrongRegionRobotApplication", + "WrongRegionS3Bucket", + "WrongRegionS3Output", + "WrongRegionSimulationApplication",] +SimulationJobStatusType = Literal["Canceled", + "Completed", + "Failed", + "Pending", + "Preparing", + "Restarting", + "Running", + "RunningFailed", + "Terminated", + "Terminating",] +SimulationSoftwareSuiteTypeType = Literal["Gazebo", "RosbagPlay", "SimulationRuntime"] +UploadBehaviorType = Literal["UPLOAD_ON_TERMINATE", "UPLOAD_ROLLING_AUTO_REMOVE"] +WorldExportJobErrorCodeType = Literal["AccessDenied", + "InternalServiceError", + "InvalidInput", + "LimitExceeded", + "RequestThrottled", + "ResourceNotFound",] +WorldExportJobStatusType = Literal["Canceled", "Canceling", "Completed", "Failed", "Pending", "Running"] +WorldGenerationJobErrorCodeType = Literal["AllWorldGenerationFailed", + "InternalServiceError", + "InvalidInput", + "LimitExceeded", + "RequestThrottled", + "ResourceNotFound",] +WorldGenerationJobStatusType = Literal["Canceled", "Canceling", "Completed", "Failed", "PartialFailed", "Pending", "Running"] +RoboMakerServiceName = Literal["robomaker"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_deployment_jobs", + "list_fleets", + "list_robot_applications", + "list_robots", + "list_simulation_applications", + "list_simulation_job_batches", + "list_simulation_jobs", + "list_world_export_jobs", + "list_world_generation_jobs", + "list_world_templates", + "list_worlds",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/rolesanywhere_classes.py b/aws_resource_validator/pydantic_models/rolesanywhere_classes.py new file mode 100644 index 00000000..480015d5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rolesanywhere_classes.py @@ -0,0 +1,288 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.rolesanywhere_constants import * + +class MappingRuleTypeDef(BaseModel): + specifier: str + +class TagTypeDef(BaseModel): + key: str + value: str + +class NotificationSettingTypeDef(BaseModel): + enabled: bool + event: NotificationEventType + channel: Optional[Literal["ALL"]] = None + threshold: Optional[int] = None + +class CredentialSummaryTypeDef(BaseModel): + enabled: Optional[bool] = None + failed: Optional[bool] = None + issuer: Optional[str] = None + seenAt: Optional[datetime] = None + serialNumber: Optional[str] = None + x509CertificateData: Optional[str] = None + +class CrlDetailTypeDef(BaseModel): + createdAt: Optional[datetime] = None + crlArn: Optional[str] = None + crlData: Optional[bytes] = None + crlId: Optional[str] = None + enabled: Optional[bool] = None + name: Optional[str] = None + trustAnchorArn: Optional[str] = None + updatedAt: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteAttributeMappingRequestRequestTypeDef(BaseModel): + certificateField: CertificateFieldType + profileId: str + specifiers: Optional[Sequence[str]] = None + +class InstancePropertyTypeDef(BaseModel): + failed: Optional[bool] = None + properties: Optional[Dict[str, str]] = None + seenAt: Optional[datetime] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + pageSize: Optional[int] = None + +class SubjectSummaryTypeDef(BaseModel): + createdAt: Optional[datetime] = None + enabled: Optional[bool] = None + lastSeenAt: Optional[datetime] = None + subjectArn: Optional[str] = None + subjectId: Optional[str] = None + updatedAt: Optional[datetime] = None + x509Subject: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class NotificationSettingDetailTypeDef(BaseModel): + enabled: bool + event: NotificationEventType + channel: Optional[Literal["ALL"]] = None + configuredBy: Optional[str] = None + threshold: Optional[int] = None + +class NotificationSettingKeyTypeDef(BaseModel): + event: NotificationEventType + channel: Optional[Literal["ALL"]] = None + +class ScalarCrlRequestRequestTypeDef(BaseModel): + crlId: str + +class ScalarProfileRequestRequestTypeDef(BaseModel): + profileId: str + +class ScalarSubjectRequestRequestTypeDef(BaseModel): + subjectId: str + +class ScalarTrustAnchorRequestRequestTypeDef(BaseModel): + trustAnchorId: str + +class SourceDataTypeDef(BaseModel): + acmPcaArn: Optional[str] = None + x509CertificateData: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateProfileRequestRequestTypeDef(BaseModel): + profileId: str + durationSeconds: Optional[int] = None + managedPolicyArns: Optional[Sequence[str]] = None + name: Optional[str] = None + roleArns: Optional[Sequence[str]] = None + sessionPolicy: Optional[str] = None + +class AttributeMappingTypeDef(BaseModel): + certificateField: Optional[CertificateFieldType] = None + mappingRules: Optional[List[MappingRuleTypeDef]] = None + +class PutAttributeMappingRequestRequestTypeDef(BaseModel): + certificateField: CertificateFieldType + mappingRules: Sequence[MappingRuleTypeDef] + profileId: str + +class UpdateCrlRequestRequestTypeDef(BaseModel): + crlId: str + crlData: Optional[BlobTypeDef] = None + name: Optional[str] = None + +class CreateProfileRequestRequestTypeDef(BaseModel): + name: str + roleArns: Sequence[str] + durationSeconds: Optional[int] = None + enabled: Optional[bool] = None + managedPolicyArns: Optional[Sequence[str]] = None + requireInstanceProperties: Optional[bool] = None + sessionPolicy: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ImportCrlRequestRequestTypeDef(BaseModel): + crlData: BlobTypeDef + name: str + trustAnchorArn: str + enabled: Optional[bool] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class PutNotificationSettingsRequestRequestTypeDef(BaseModel): + notificationSettings: Sequence[NotificationSettingTypeDef] + trustAnchorId: str + +class CrlDetailResponseTypeDef(BaseModel): + crl: CrlDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCrlsResponseTypeDef(BaseModel): + crls: List[CrlDetailTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubjectDetailTypeDef(BaseModel): + createdAt: Optional[datetime] = None + credentials: Optional[List[CredentialSummaryTypeDef]] = None + enabled: Optional[bool] = None + instanceProperties: Optional[List[InstancePropertyTypeDef]] = None + lastSeenAt: Optional[datetime] = None + subjectArn: Optional[str] = None + subjectId: Optional[str] = None + updatedAt: Optional[datetime] = None + x509Subject: Optional[str] = None + +class ListRequestListCrlsPaginateTypeDef(BaseModel): + pageSize: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRequestListProfilesPaginateTypeDef(BaseModel): + pageSize: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRequestListSubjectsPaginateTypeDef(BaseModel): + pageSize: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRequestListTrustAnchorsPaginateTypeDef(BaseModel): + pageSize: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubjectsResponseTypeDef(BaseModel): + nextToken: str + subjects: List[SubjectSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResetNotificationSettingsRequestRequestTypeDef(BaseModel): + notificationSettingKeys: Sequence[NotificationSettingKeyTypeDef] + trustAnchorId: str + +class SourceTypeDef(BaseModel): + sourceData: Optional[SourceDataTypeDef] = None + sourceType: Optional[TrustAnchorTypeType] = None + +class ProfileDetailTypeDef(BaseModel): + attributeMappings: Optional[List[AttributeMappingTypeDef]] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + durationSeconds: Optional[int] = None + enabled: Optional[bool] = None + managedPolicyArns: Optional[List[str]] = None + name: Optional[str] = None + profileArn: Optional[str] = None + profileId: Optional[str] = None + requireInstanceProperties: Optional[bool] = None + roleArns: Optional[List[str]] = None + sessionPolicy: Optional[str] = None + updatedAt: Optional[datetime] = None + +class SubjectDetailResponseTypeDef(BaseModel): + subject: SubjectDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrustAnchorRequestRequestTypeDef(BaseModel): + name: str + source: SourceTypeDef + enabled: Optional[bool] = None + notificationSettings: Optional[Sequence[NotificationSettingTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class TrustAnchorDetailTypeDef(BaseModel): + createdAt: Optional[datetime] = None + enabled: Optional[bool] = None + name: Optional[str] = None + notificationSettings: Optional[List[NotificationSettingDetailTypeDef]] = None + source: Optional[SourceTypeDef] = None + trustAnchorArn: Optional[str] = None + trustAnchorId: Optional[str] = None + updatedAt: Optional[datetime] = None + +class UpdateTrustAnchorRequestRequestTypeDef(BaseModel): + trustAnchorId: str + name: Optional[str] = None + source: Optional[SourceTypeDef] = None + +class DeleteAttributeMappingResponseTypeDef(BaseModel): + profile: ProfileDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfilesResponseTypeDef(BaseModel): + nextToken: str + profiles: List[ProfileDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ProfileDetailResponseTypeDef(BaseModel): + profile: ProfileDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAttributeMappingResponseTypeDef(BaseModel): + profile: ProfileDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrustAnchorsResponseTypeDef(BaseModel): + nextToken: str + trustAnchors: List[TrustAnchorDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutNotificationSettingsResponseTypeDef(BaseModel): + trustAnchor: TrustAnchorDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResetNotificationSettingsResponseTypeDef(BaseModel): + trustAnchor: TrustAnchorDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TrustAnchorDetailResponseTypeDef(BaseModel): + trustAnchor: TrustAnchorDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/rolesanywhere_constants.py b/aws_resource_validator/pydantic_models/rolesanywhere_constants.py new file mode 100644 index 00000000..7b038340 --- /dev/null +++ b/aws_resource_validator/pydantic_models/rolesanywhere_constants.py @@ -0,0 +1,435 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CertificateFieldType = Literal["x509Issuer", "x509SAN", "x509Subject"] +ListCrlsPaginatorName = Literal["list_crls"] +ListProfilesPaginatorName = Literal["list_profiles"] +ListSubjectsPaginatorName = Literal["list_subjects"] +ListTrustAnchorsPaginatorName = Literal["list_trust_anchors"] +NotificationChannelType = Literal["ALL"] +NotificationEventType = Literal["CA_CERTIFICATE_EXPIRY", "END_ENTITY_CERTIFICATE_EXPIRY"] +TrustAnchorTypeType = Literal["AWS_ACM_PCA", "CERTIFICATE_BUNDLE", "SELF_SIGNED_REPOSITORY"] +IAMRolesAnywhereServiceName = Literal["rolesanywhere"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_crls", "list_profiles", "list_subjects", "list_trust_anchors"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/route53_classes.py b/aws_resource_validator/pydantic_models/route53_classes.py new file mode 100644 index 00000000..335430a1 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_classes.py @@ -0,0 +1,1019 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53_constants import * + +class AccountLimitTypeDef(BaseModel): + Type: AccountLimitTypeType + Value: int + +class ActivateKeySigningKeyRequestRequestTypeDef(BaseModel): + HostedZoneId: str + Name: str + +class ChangeInfoTypeDef(BaseModel): + Id: str + Status: ChangeStatusType + SubmittedAt: datetime + Comment: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AlarmIdentifierTypeDef(BaseModel): + Region: CloudWatchRegionType + Name: str + +class AliasTargetTypeDef(BaseModel): + HostedZoneId: str + DNSName: str + EvaluateTargetHealth: bool + +class VPCTypeDef(BaseModel): + VPCRegion: Optional[VPCRegionType] = None + VPCId: Optional[str] = None + +class CidrCollectionChangeTypeDef(BaseModel): + LocationName: str + Action: CidrCollectionChangeActionType + CidrList: Sequence[str] + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class CidrBlockSummaryTypeDef(BaseModel): + CidrBlock: Optional[str] = None + LocationName: Optional[str] = None + +class CidrCollectionTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Version: Optional[int] = None + +class CidrRoutingConfigTypeDef(BaseModel): + CollectionId: str + LocationName: str + +class DimensionTypeDef(BaseModel): + Name: str + Value: str + +class CollectionSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Version: Optional[int] = None + +class CoordinatesTypeDef(BaseModel): + Latitude: str + Longitude: str + +class CreateCidrCollectionRequestRequestTypeDef(BaseModel): + Name: str + CallerReference: str + +class HostedZoneConfigTypeDef(BaseModel): + Comment: Optional[str] = None + PrivateZone: Optional[bool] = None + +class DelegationSetTypeDef(BaseModel): + NameServers: List[str] + Id: Optional[str] = None + CallerReference: Optional[str] = None + +class CreateKeySigningKeyRequestRequestTypeDef(BaseModel): + CallerReference: str + HostedZoneId: str + KeyManagementServiceArn: str + Name: str + Status: str + +class KeySigningKeyTypeDef(BaseModel): + Name: Optional[str] = None + KmsArn: Optional[str] = None + Flag: Optional[int] = None + SigningAlgorithmMnemonic: Optional[str] = None + SigningAlgorithmType: Optional[int] = None + DigestAlgorithmMnemonic: Optional[str] = None + DigestAlgorithmType: Optional[int] = None + KeyTag: Optional[int] = None + DigestValue: Optional[str] = None + PublicKey: Optional[str] = None + DSRecord: Optional[str] = None + DNSKEYRecord: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + CreatedDate: Optional[datetime] = None + LastModifiedDate: Optional[datetime] = None + +class CreateQueryLoggingConfigRequestRequestTypeDef(BaseModel): + HostedZoneId: str + CloudWatchLogsLogGroupArn: str + +class QueryLoggingConfigTypeDef(BaseModel): + Id: str + HostedZoneId: str + CloudWatchLogsLogGroupArn: str + +class CreateReusableDelegationSetRequestRequestTypeDef(BaseModel): + CallerReference: str + HostedZoneId: Optional[str] = None + +class CreateTrafficPolicyInstanceRequestRequestTypeDef(BaseModel): + HostedZoneId: str + Name: str + TTL: int + TrafficPolicyId: str + TrafficPolicyVersion: int + +class TrafficPolicyInstanceTypeDef(BaseModel): + Id: str + HostedZoneId: str + Name: str + TTL: int + State: str + Message: str + TrafficPolicyId: str + TrafficPolicyVersion: int + TrafficPolicyType: RRTypeType + +class CreateTrafficPolicyRequestRequestTypeDef(BaseModel): + Name: str + Document: str + Comment: Optional[str] = None + +class TrafficPolicyTypeDef(BaseModel): + Id: str + Version: int + Name: str + Type: RRTypeType + Document: str + Comment: Optional[str] = None + +class CreateTrafficPolicyVersionRequestRequestTypeDef(BaseModel): + Id: str + Document: str + Comment: Optional[str] = None + +class DNSSECStatusTypeDef(BaseModel): + ServeSignature: Optional[str] = None + StatusMessage: Optional[str] = None + +class DeactivateKeySigningKeyRequestRequestTypeDef(BaseModel): + HostedZoneId: str + Name: str + +class DeleteCidrCollectionRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteHealthCheckRequestRequestTypeDef(BaseModel): + HealthCheckId: str + +class DeleteHostedZoneRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteKeySigningKeyRequestRequestTypeDef(BaseModel): + HostedZoneId: str + Name: str + +class DeleteQueryLoggingConfigRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteReusableDelegationSetRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteTrafficPolicyInstanceRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteTrafficPolicyRequestRequestTypeDef(BaseModel): + Id: str + Version: int + +class DisableHostedZoneDNSSECRequestRequestTypeDef(BaseModel): + HostedZoneId: str + +class EnableHostedZoneDNSSECRequestRequestTypeDef(BaseModel): + HostedZoneId: str + +class GeoLocationDetailsTypeDef(BaseModel): + ContinentCode: Optional[str] = None + ContinentName: Optional[str] = None + CountryCode: Optional[str] = None + CountryName: Optional[str] = None + SubdivisionCode: Optional[str] = None + SubdivisionName: Optional[str] = None + +class GeoLocationTypeDef(BaseModel): + ContinentCode: Optional[str] = None + CountryCode: Optional[str] = None + SubdivisionCode: Optional[str] = None + +class GetAccountLimitRequestRequestTypeDef(BaseModel): + Type: AccountLimitTypeType + +class GetChangeRequestRequestTypeDef(BaseModel): + Id: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetDNSSECRequestRequestTypeDef(BaseModel): + HostedZoneId: str + +class GetGeoLocationRequestRequestTypeDef(BaseModel): + ContinentCode: Optional[str] = None + CountryCode: Optional[str] = None + SubdivisionCode: Optional[str] = None + +class GetHealthCheckLastFailureReasonRequestRequestTypeDef(BaseModel): + HealthCheckId: str + +class GetHealthCheckRequestRequestTypeDef(BaseModel): + HealthCheckId: str + +class GetHealthCheckStatusRequestRequestTypeDef(BaseModel): + HealthCheckId: str + +class GetHostedZoneLimitRequestRequestTypeDef(BaseModel): + Type: HostedZoneLimitTypeType + HostedZoneId: str + +class HostedZoneLimitTypeDef(BaseModel): + Type: HostedZoneLimitTypeType + Value: int + +class GetHostedZoneRequestRequestTypeDef(BaseModel): + Id: str + +class GetQueryLoggingConfigRequestRequestTypeDef(BaseModel): + Id: str + +class GetReusableDelegationSetLimitRequestRequestTypeDef(BaseModel): + Type: Literal["MAX_ZONES_BY_REUSABLE_DELEGATION_SET"] + DelegationSetId: str + +class ReusableDelegationSetLimitTypeDef(BaseModel): + Type: Literal["MAX_ZONES_BY_REUSABLE_DELEGATION_SET"] + Value: int + +class GetReusableDelegationSetRequestRequestTypeDef(BaseModel): + Id: str + +class GetTrafficPolicyInstanceRequestRequestTypeDef(BaseModel): + Id: str + +class GetTrafficPolicyRequestRequestTypeDef(BaseModel): + Id: str + Version: int + +class StatusReportTypeDef(BaseModel): + Status: Optional[str] = None + CheckedTime: Optional[datetime] = None + +class LinkedServiceTypeDef(BaseModel): + ServicePrincipal: Optional[str] = None + Description: Optional[str] = None + +class HostedZoneOwnerTypeDef(BaseModel): + OwningAccount: Optional[str] = None + OwningService: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListCidrBlocksRequestRequestTypeDef(BaseModel): + CollectionId: str + LocationName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[str] = None + +class ListCidrCollectionsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[str] = None + +class ListCidrLocationsRequestRequestTypeDef(BaseModel): + CollectionId: str + NextToken: Optional[str] = None + MaxResults: Optional[str] = None + +class LocationSummaryTypeDef(BaseModel): + LocationName: Optional[str] = None + +class ListGeoLocationsRequestRequestTypeDef(BaseModel): + StartContinentCode: Optional[str] = None + StartCountryCode: Optional[str] = None + StartSubdivisionCode: Optional[str] = None + MaxItems: Optional[str] = None + +class ListHealthChecksRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListHostedZonesByNameRequestRequestTypeDef(BaseModel): + DNSName: Optional[str] = None + HostedZoneId: Optional[str] = None + MaxItems: Optional[str] = None + +class ListHostedZonesByVPCRequestRequestTypeDef(BaseModel): + VPCId: str + VPCRegion: VPCRegionType + MaxItems: Optional[str] = None + NextToken: Optional[str] = None + +class ListHostedZonesRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + DelegationSetId: Optional[str] = None + HostedZoneType: Optional[Literal["PrivateHostedZone"]] = None + +class ListQueryLoggingConfigsRequestRequestTypeDef(BaseModel): + HostedZoneId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[str] = None + +class ListResourceRecordSetsRequestRequestTypeDef(BaseModel): + HostedZoneId: str + StartRecordName: Optional[str] = None + StartRecordType: Optional[RRTypeType] = None + StartRecordIdentifier: Optional[str] = None + MaxItems: Optional[str] = None + +class ListReusableDelegationSetsRequestRequestTypeDef(BaseModel): + Marker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceType: TagResourceTypeType + ResourceId: str + +class ListTagsForResourcesRequestRequestTypeDef(BaseModel): + ResourceType: TagResourceTypeType + ResourceIds: Sequence[str] + +class ListTrafficPoliciesRequestRequestTypeDef(BaseModel): + TrafficPolicyIdMarker: Optional[str] = None + MaxItems: Optional[str] = None + +class TrafficPolicySummaryTypeDef(BaseModel): + Id: str + Name: str + Type: RRTypeType + LatestVersion: int + TrafficPolicyCount: int + +class ListTrafficPolicyInstancesByHostedZoneRequestRequestTypeDef(BaseModel): + HostedZoneId: str + TrafficPolicyInstanceNameMarker: Optional[str] = None + TrafficPolicyInstanceTypeMarker: Optional[RRTypeType] = None + MaxItems: Optional[str] = None + +class ListTrafficPolicyInstancesByPolicyRequestRequestTypeDef(BaseModel): + TrafficPolicyId: str + TrafficPolicyVersion: int + HostedZoneIdMarker: Optional[str] = None + TrafficPolicyInstanceNameMarker: Optional[str] = None + TrafficPolicyInstanceTypeMarker: Optional[RRTypeType] = None + MaxItems: Optional[str] = None + +class ListTrafficPolicyInstancesRequestRequestTypeDef(BaseModel): + HostedZoneIdMarker: Optional[str] = None + TrafficPolicyInstanceNameMarker: Optional[str] = None + TrafficPolicyInstanceTypeMarker: Optional[RRTypeType] = None + MaxItems: Optional[str] = None + +class ListTrafficPolicyVersionsRequestRequestTypeDef(BaseModel): + Id: str + TrafficPolicyVersionMarker: Optional[str] = None + MaxItems: Optional[str] = None + +class ListVPCAssociationAuthorizationsRequestRequestTypeDef(BaseModel): + HostedZoneId: str + NextToken: Optional[str] = None + MaxResults: Optional[str] = None + +class ResourceRecordTypeDef(BaseModel): + Value: str + +class TestDNSAnswerRequestRequestTypeDef(BaseModel): + HostedZoneId: str + RecordName: str + RecordType: RRTypeType + ResolverIP: Optional[str] = None + EDNS0ClientSubnetIP: Optional[str] = None + EDNS0ClientSubnetMask: Optional[str] = None + +class UpdateHostedZoneCommentRequestRequestTypeDef(BaseModel): + Id: str + Comment: Optional[str] = None + +class UpdateTrafficPolicyCommentRequestRequestTypeDef(BaseModel): + Id: str + Version: int + Comment: str + +class UpdateTrafficPolicyInstanceRequestRequestTypeDef(BaseModel): + Id: str + TTL: int + TrafficPolicyId: str + TrafficPolicyVersion: int + +class ActivateKeySigningKeyResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateVPCWithHostedZoneResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeCidrCollectionResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeResourceRecordSetsResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeactivateKeySigningKeyResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteHostedZoneResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteKeySigningKeyResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisableHostedZoneDNSSECResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateVPCFromHostedZoneResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnableHostedZoneDNSSECResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountLimitResponseTypeDef(BaseModel): + Limit: AccountLimitTypeDef + Count: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetChangeResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCheckerIpRangesResponseTypeDef(BaseModel): + CheckerIpRanges: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetHealthCheckCountResponseTypeDef(BaseModel): + HealthCheckCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetHostedZoneCountResponseTypeDef(BaseModel): + HostedZoneCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrafficPolicyInstanceCountResponseTypeDef(BaseModel): + TrafficPolicyInstanceCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class TestDNSAnswerResponseTypeDef(BaseModel): + Nameserver: str + RecordName: str + RecordType: RRTypeType + RecordData: List[str] + ResponseCode: str + Protocol: str + ResponseMetadata: ResponseMetadataTypeDef + +class HealthCheckConfigPaginatorTypeDef(BaseModel): + Type: HealthCheckTypeType + IPAddress: Optional[str] = None + Port: Optional[int] = None + ResourcePath: Optional[str] = None + FullyQualifiedDomainName: Optional[str] = None + SearchString: Optional[str] = None + RequestInterval: Optional[int] = None + FailureThreshold: Optional[int] = None + MeasureLatency: Optional[bool] = None + Inverted: Optional[bool] = None + Disabled: Optional[bool] = None + HealthThreshold: Optional[int] = None + ChildHealthChecks: Optional[List[str]] = None + EnableSNI: Optional[bool] = None + Regions: Optional[List[HealthCheckRegionType]] = None + AlarmIdentifier: Optional[AlarmIdentifierTypeDef] = None + InsufficientDataHealthStatus: Optional[InsufficientDataHealthStatusType] = None + RoutingControlArn: Optional[str] = None + +class HealthCheckConfigTypeDef(BaseModel): + Type: HealthCheckTypeType + IPAddress: Optional[str] = None + Port: Optional[int] = None + ResourcePath: Optional[str] = None + FullyQualifiedDomainName: Optional[str] = None + SearchString: Optional[str] = None + RequestInterval: Optional[int] = None + FailureThreshold: Optional[int] = None + MeasureLatency: Optional[bool] = None + Inverted: Optional[bool] = None + Disabled: Optional[bool] = None + HealthThreshold: Optional[int] = None + ChildHealthChecks: Optional[Sequence[str]] = None + EnableSNI: Optional[bool] = None + Regions: Optional[Sequence[HealthCheckRegionType]] = None + AlarmIdentifier: Optional[AlarmIdentifierTypeDef] = None + InsufficientDataHealthStatus: Optional[InsufficientDataHealthStatusType] = None + RoutingControlArn: Optional[str] = None + +class UpdateHealthCheckRequestRequestTypeDef(BaseModel): + HealthCheckId: str + HealthCheckVersion: Optional[int] = None + IPAddress: Optional[str] = None + Port: Optional[int] = None + ResourcePath: Optional[str] = None + FullyQualifiedDomainName: Optional[str] = None + SearchString: Optional[str] = None + FailureThreshold: Optional[int] = None + Inverted: Optional[bool] = None + Disabled: Optional[bool] = None + HealthThreshold: Optional[int] = None + ChildHealthChecks: Optional[Sequence[str]] = None + EnableSNI: Optional[bool] = None + Regions: Optional[Sequence[HealthCheckRegionType]] = None + AlarmIdentifier: Optional[AlarmIdentifierTypeDef] = None + InsufficientDataHealthStatus: Optional[InsufficientDataHealthStatusType] = None + ResetElements: Optional[Sequence[ResettableElementNameType]] = None + +class AssociateVPCWithHostedZoneRequestRequestTypeDef(BaseModel): + HostedZoneId: str + VPC: VPCTypeDef + Comment: Optional[str] = None + +class CreateVPCAssociationAuthorizationRequestRequestTypeDef(BaseModel): + HostedZoneId: str + VPC: VPCTypeDef + +class CreateVPCAssociationAuthorizationResponseTypeDef(BaseModel): + HostedZoneId: str + VPC: VPCTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVPCAssociationAuthorizationRequestRequestTypeDef(BaseModel): + HostedZoneId: str + VPC: VPCTypeDef + +class DisassociateVPCFromHostedZoneRequestRequestTypeDef(BaseModel): + HostedZoneId: str + VPC: VPCTypeDef + Comment: Optional[str] = None + +class ListVPCAssociationAuthorizationsResponseTypeDef(BaseModel): + HostedZoneId: str + NextToken: str + VPCs: List[VPCTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeCidrCollectionRequestRequestTypeDef(BaseModel): + Id: str + Changes: Sequence[CidrCollectionChangeTypeDef] + CollectionVersion: Optional[int] = None + +class ChangeTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceType: TagResourceTypeType + ResourceId: str + AddTags: Optional[Sequence[TagTypeDef]] = None + RemoveTagKeys: Optional[Sequence[str]] = None + +class ResourceTagSetTypeDef(BaseModel): + ResourceType: Optional[TagResourceTypeType] = None + ResourceId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ListCidrBlocksResponseTypeDef(BaseModel): + NextToken: str + CidrBlocks: List[CidrBlockSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCidrCollectionResponseTypeDef(BaseModel): + Collection: CidrCollectionTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class CloudWatchAlarmConfigurationTypeDef(BaseModel): + EvaluationPeriods: int + Threshold: float + ComparisonOperator: ComparisonOperatorType + Period: int + MetricName: str + Namespace: str + Statistic: StatisticType + Dimensions: Optional[List[DimensionTypeDef]] = None + +class ListCidrCollectionsResponseTypeDef(BaseModel): + NextToken: str + CidrCollections: List[CollectionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GeoProximityLocationTypeDef(BaseModel): + AWSRegion: Optional[str] = None + LocalZoneGroup: Optional[str] = None + Coordinates: Optional[CoordinatesTypeDef] = None + Bias: Optional[int] = None + +class CreateHostedZoneRequestRequestTypeDef(BaseModel): + Name: str + CallerReference: str + VPC: Optional[VPCTypeDef] = None + HostedZoneConfig: Optional[HostedZoneConfigTypeDef] = None + DelegationSetId: Optional[str] = None + +class CreateReusableDelegationSetResponseTypeDef(BaseModel): + DelegationSet: DelegationSetTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReusableDelegationSetResponseTypeDef(BaseModel): + DelegationSet: DelegationSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListReusableDelegationSetsResponseTypeDef(BaseModel): + DelegationSets: List[DelegationSetTypeDef] + Marker: str + IsTruncated: bool + NextMarker: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKeySigningKeyResponseTypeDef(BaseModel): + ChangeInfo: ChangeInfoTypeDef + KeySigningKey: KeySigningKeyTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQueryLoggingConfigResponseTypeDef(BaseModel): + QueryLoggingConfig: QueryLoggingConfigTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueryLoggingConfigResponseTypeDef(BaseModel): + QueryLoggingConfig: QueryLoggingConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueryLoggingConfigsResponseTypeDef(BaseModel): + QueryLoggingConfigs: List[QueryLoggingConfigTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrafficPolicyInstanceResponseTypeDef(BaseModel): + TrafficPolicyInstance: TrafficPolicyInstanceTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrafficPolicyInstanceResponseTypeDef(BaseModel): + TrafficPolicyInstance: TrafficPolicyInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrafficPolicyInstancesByHostedZoneResponseTypeDef(BaseModel): + TrafficPolicyInstances: List[TrafficPolicyInstanceTypeDef] + TrafficPolicyInstanceNameMarker: str + TrafficPolicyInstanceTypeMarker: RRTypeType + IsTruncated: bool + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrafficPolicyInstancesByPolicyResponseTypeDef(BaseModel): + TrafficPolicyInstances: List[TrafficPolicyInstanceTypeDef] + HostedZoneIdMarker: str + TrafficPolicyInstanceNameMarker: str + TrafficPolicyInstanceTypeMarker: RRTypeType + IsTruncated: bool + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrafficPolicyInstancesResponseTypeDef(BaseModel): + TrafficPolicyInstances: List[TrafficPolicyInstanceTypeDef] + HostedZoneIdMarker: str + TrafficPolicyInstanceNameMarker: str + TrafficPolicyInstanceTypeMarker: RRTypeType + IsTruncated: bool + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrafficPolicyInstanceResponseTypeDef(BaseModel): + TrafficPolicyInstance: TrafficPolicyInstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrafficPolicyResponseTypeDef(BaseModel): + TrafficPolicy: TrafficPolicyTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrafficPolicyVersionResponseTypeDef(BaseModel): + TrafficPolicy: TrafficPolicyTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrafficPolicyResponseTypeDef(BaseModel): + TrafficPolicy: TrafficPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrafficPolicyVersionsResponseTypeDef(BaseModel): + TrafficPolicies: List[TrafficPolicyTypeDef] + IsTruncated: bool + TrafficPolicyVersionMarker: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrafficPolicyCommentResponseTypeDef(BaseModel): + TrafficPolicy: TrafficPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDNSSECResponseTypeDef(BaseModel): + Status: DNSSECStatusTypeDef + KeySigningKeys: List[KeySigningKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetGeoLocationResponseTypeDef(BaseModel): + GeoLocationDetails: GeoLocationDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListGeoLocationsResponseTypeDef(BaseModel): + GeoLocationDetailsList: List[GeoLocationDetailsTypeDef] + IsTruncated: bool + NextContinentCode: str + NextCountryCode: str + NextSubdivisionCode: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChangeRequestResourceRecordSetsChangedWaitTypeDef(BaseModel): + Id: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetHostedZoneLimitResponseTypeDef(BaseModel): + Limit: HostedZoneLimitTypeDef + Count: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetReusableDelegationSetLimitResponseTypeDef(BaseModel): + Limit: ReusableDelegationSetLimitTypeDef + Count: int + ResponseMetadata: ResponseMetadataTypeDef + +class HealthCheckObservationTypeDef(BaseModel): + Region: Optional[HealthCheckRegionType] = None + IPAddress: Optional[str] = None + StatusReport: Optional[StatusReportTypeDef] = None + +class HostedZoneTypeDef(BaseModel): + Id: str + Name: str + CallerReference: str + Config: Optional[HostedZoneConfigTypeDef] = None + ResourceRecordSetCount: Optional[int] = None + LinkedService: Optional[LinkedServiceTypeDef] = None + +class HostedZoneSummaryTypeDef(BaseModel): + HostedZoneId: str + Name: str + Owner: HostedZoneOwnerTypeDef + +class ListCidrBlocksRequestListCidrBlocksPaginateTypeDef(BaseModel): + CollectionId: str + LocationName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCidrCollectionsRequestListCidrCollectionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCidrLocationsRequestListCidrLocationsPaginateTypeDef(BaseModel): + CollectionId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHealthChecksRequestListHealthChecksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHostedZonesRequestListHostedZonesPaginateTypeDef(BaseModel): + DelegationSetId: Optional[str] = None + HostedZoneType: Optional[Literal["PrivateHostedZone"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueryLoggingConfigsRequestListQueryLoggingConfigsPaginateTypeDef(BaseModel): + HostedZoneId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceRecordSetsRequestListResourceRecordSetsPaginateTypeDef(BaseModel): + HostedZoneId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVPCAssociationAuthorizationsRequestListVPCAssociationAuthorizationsPaginateTypeDef(BaseModel): + HostedZoneId: str + MaxResults: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCidrLocationsResponseTypeDef(BaseModel): + NextToken: str + CidrLocations: List[LocationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrafficPoliciesResponseTypeDef(BaseModel): + TrafficPolicySummaries: List[TrafficPolicySummaryTypeDef] + IsTruncated: bool + TrafficPolicyIdMarker: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHealthCheckRequestRequestTypeDef(BaseModel): + CallerReference: str + HealthCheckConfig: HealthCheckConfigTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceTagSet: ResourceTagSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourcesResponseTypeDef(BaseModel): + ResourceTagSets: List[ResourceTagSetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class HealthCheckPaginatorTypeDef(BaseModel): + Id: str + CallerReference: str + HealthCheckConfig: HealthCheckConfigPaginatorTypeDef + HealthCheckVersion: int + LinkedService: Optional[LinkedServiceTypeDef] = None + CloudWatchAlarmConfiguration: Optional[CloudWatchAlarmConfigurationTypeDef] = None + +class HealthCheckTypeDef(BaseModel): + Id: str + CallerReference: str + HealthCheckConfig: HealthCheckConfigTypeDef + HealthCheckVersion: int + LinkedService: Optional[LinkedServiceTypeDef] = None + CloudWatchAlarmConfiguration: Optional[CloudWatchAlarmConfigurationTypeDef] = None + +class ResourceRecordSetPaginatorTypeDef(BaseModel): + Name: str + Type: RRTypeType + SetIdentifier: Optional[str] = None + Weight: Optional[int] = None + Region: Optional[ResourceRecordSetRegionType] = None + GeoLocation: Optional[GeoLocationTypeDef] = None + Failover: Optional[ResourceRecordSetFailoverType] = None + MultiValueAnswer: Optional[bool] = None + TTL: Optional[int] = None + ResourceRecords: Optional[List[ResourceRecordTypeDef]] = None + AliasTarget: Optional[AliasTargetTypeDef] = None + HealthCheckId: Optional[str] = None + TrafficPolicyInstanceId: Optional[str] = None + CidrRoutingConfig: Optional[CidrRoutingConfigTypeDef] = None + GeoProximityLocation: Optional[GeoProximityLocationTypeDef] = None + +class ResourceRecordSetTypeDef(BaseModel): + Name: str + Type: RRTypeType + SetIdentifier: Optional[str] = None + Weight: Optional[int] = None + Region: Optional[ResourceRecordSetRegionType] = None + GeoLocation: Optional[GeoLocationTypeDef] = None + Failover: Optional[ResourceRecordSetFailoverType] = None + MultiValueAnswer: Optional[bool] = None + TTL: Optional[int] = None + ResourceRecords: Optional[Sequence[ResourceRecordTypeDef]] = None + AliasTarget: Optional[AliasTargetTypeDef] = None + HealthCheckId: Optional[str] = None + TrafficPolicyInstanceId: Optional[str] = None + CidrRoutingConfig: Optional[CidrRoutingConfigTypeDef] = None + GeoProximityLocation: Optional[GeoProximityLocationTypeDef] = None + +class GetHealthCheckLastFailureReasonResponseTypeDef(BaseModel): + HealthCheckObservations: List[HealthCheckObservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetHealthCheckStatusResponseTypeDef(BaseModel): + HealthCheckObservations: List[HealthCheckObservationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHostedZoneResponseTypeDef(BaseModel): + HostedZone: HostedZoneTypeDef + ChangeInfo: ChangeInfoTypeDef + DelegationSet: DelegationSetTypeDef + VPC: VPCTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetHostedZoneResponseTypeDef(BaseModel): + HostedZone: HostedZoneTypeDef + DelegationSet: DelegationSetTypeDef + VPCs: List[VPCTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListHostedZonesByNameResponseTypeDef(BaseModel): + HostedZones: List[HostedZoneTypeDef] + DNSName: str + HostedZoneId: str + IsTruncated: bool + NextDNSName: str + NextHostedZoneId: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListHostedZonesResponseTypeDef(BaseModel): + HostedZones: List[HostedZoneTypeDef] + Marker: str + IsTruncated: bool + NextMarker: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHostedZoneCommentResponseTypeDef(BaseModel): + HostedZone: HostedZoneTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListHostedZonesByVPCResponseTypeDef(BaseModel): + HostedZoneSummaries: List[HostedZoneSummaryTypeDef] + MaxItems: str + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListHealthChecksResponsePaginatorTypeDef(BaseModel): + HealthChecks: List[HealthCheckPaginatorTypeDef] + Marker: str + IsTruncated: bool + NextMarker: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHealthCheckResponseTypeDef(BaseModel): + HealthCheck: HealthCheckTypeDef + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetHealthCheckResponseTypeDef(BaseModel): + HealthCheck: HealthCheckTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListHealthChecksResponseTypeDef(BaseModel): + HealthChecks: List[HealthCheckTypeDef] + Marker: str + IsTruncated: bool + NextMarker: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHealthCheckResponseTypeDef(BaseModel): + HealthCheck: HealthCheckTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceRecordSetsResponsePaginatorTypeDef(BaseModel): + ResourceRecordSets: List[ResourceRecordSetPaginatorTypeDef] + IsTruncated: bool + NextRecordName: str + NextRecordType: RRTypeType + NextRecordIdentifier: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeTypeDef(BaseModel): + Action: ChangeActionType + ResourceRecordSet: ResourceRecordSetTypeDef + +class ListResourceRecordSetsResponseTypeDef(BaseModel): + ResourceRecordSets: List[ResourceRecordSetTypeDef] + IsTruncated: bool + NextRecordName: str + NextRecordType: RRTypeType + NextRecordIdentifier: str + MaxItems: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeBatchTypeDef(BaseModel): + Changes: Sequence[ChangeTypeDef] + Comment: Optional[str] = None + +class ChangeResourceRecordSetsRequestRequestTypeDef(BaseModel): + HostedZoneId: str + ChangeBatch: ChangeBatchTypeDef + diff --git a/aws_resource_validator/pydantic_models/route53_constants.py b/aws_resource_validator/pydantic_models/route53_constants.py new file mode 100644 index 00000000..3687564d --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_constants.py @@ -0,0 +1,548 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountLimitTypeType = Literal["MAX_HEALTH_CHECKS_BY_OWNER", + "MAX_HOSTED_ZONES_BY_OWNER", + "MAX_REUSABLE_DELEGATION_SETS_BY_OWNER", + "MAX_TRAFFIC_POLICIES_BY_OWNER", + "MAX_TRAFFIC_POLICY_INSTANCES_BY_OWNER",] +ChangeActionType = Literal["CREATE", "DELETE", "UPSERT"] +ChangeStatusType = Literal["INSYNC", "PENDING"] +CidrCollectionChangeActionType = Literal["DELETE_IF_EXISTS", "PUT"] +CloudWatchRegionType = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "cn-north-1", + "cn-northwest-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-gov-east-1", + "us-gov-west-1", + "us-iso-east-1", + "us-iso-west-1", + "us-isob-east-1", + "us-west-1", + "us-west-2",] +ComparisonOperatorType = Literal["GreaterThanOrEqualToThreshold", + "GreaterThanThreshold", + "LessThanOrEqualToThreshold", + "LessThanThreshold",] +HealthCheckRegionType = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-west-1", + "sa-east-1", + "us-east-1", + "us-west-1", + "us-west-2",] +HealthCheckTypeType = Literal["CALCULATED", + "CLOUDWATCH_METRIC", + "HTTP", + "HTTPS", + "HTTPS_STR_MATCH", + "HTTP_STR_MATCH", + "RECOVERY_CONTROL", + "TCP",] +HostedZoneLimitTypeType = Literal["MAX_RRSETS_BY_ZONE", "MAX_VPCS_ASSOCIATED_BY_ZONE"] +HostedZoneTypeType = Literal["PrivateHostedZone"] +InsufficientDataHealthStatusType = Literal["Healthy", "LastKnownStatus", "Unhealthy"] +ListCidrBlocksPaginatorName = Literal["list_cidr_blocks"] +ListCidrCollectionsPaginatorName = Literal["list_cidr_collections"] +ListCidrLocationsPaginatorName = Literal["list_cidr_locations"] +ListHealthChecksPaginatorName = Literal["list_health_checks"] +ListHostedZonesPaginatorName = Literal["list_hosted_zones"] +ListQueryLoggingConfigsPaginatorName = Literal["list_query_logging_configs"] +ListResourceRecordSetsPaginatorName = Literal["list_resource_record_sets"] +ListVPCAssociationAuthorizationsPaginatorName = Literal["list_vpc_association_authorizations"] +RRTypeType = Literal["A", "AAAA", "CAA", "CNAME", "DS", "MX", "NAPTR", "NS", "PTR", "SOA", "SPF", "SRV", "TXT"] +ResettableElementNameType = Literal["ChildHealthChecks", "FullyQualifiedDomainName", "Regions", "ResourcePath"] +ResourceRecordSetFailoverType = Literal["PRIMARY", "SECONDARY"] +ResourceRecordSetRegionType = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "cn-north-1", + "cn-northwest-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ResourceRecordSetsChangedWaiterName = Literal["resource_record_sets_changed"] +ReusableDelegationSetLimitTypeType = Literal["MAX_ZONES_BY_REUSABLE_DELEGATION_SET"] +StatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +TagResourceTypeType = Literal["healthcheck", "hostedzone"] +VPCRegionType = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "cn-north-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-gov-east-1", + "us-gov-west-1", + "us-iso-east-1", + "us-iso-west-1", + "us-isob-east-1", + "us-west-1", + "us-west-2",] +Route53ServiceName = Literal["route53"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_cidr_blocks", + "list_cidr_collections", + "list_cidr_locations", + "list_health_checks", + "list_hosted_zones", + "list_query_logging_configs", + "list_resource_record_sets", + "list_vpc_association_authorizations",] +WaiterName = Literal["resource_record_sets_changed"] diff --git a/aws_resource_validator/pydantic_models/route53_recovery_cluster_classes.py b/aws_resource_validator/pydantic_models/route53_recovery_cluster_classes.py new file mode 100644 index 00000000..3149fc82 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_recovery_cluster_classes.py @@ -0,0 +1,69 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53_recovery_cluster_constants import * + +class GetRoutingControlStateRequestRequestTypeDef(BaseModel): + RoutingControlArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListRoutingControlsRequestRequestTypeDef(BaseModel): + ControlPanelArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RoutingControlTypeDef(BaseModel): + ControlPanelArn: Optional[str] = None + ControlPanelName: Optional[str] = None + RoutingControlArn: Optional[str] = None + RoutingControlName: Optional[str] = None + RoutingControlState: Optional[RoutingControlStateType] = None + Owner: Optional[str] = None + +class UpdateRoutingControlStateEntryTypeDef(BaseModel): + RoutingControlArn: str + RoutingControlState: RoutingControlStateType + +class UpdateRoutingControlStateRequestRequestTypeDef(BaseModel): + RoutingControlArn: str + RoutingControlState: RoutingControlStateType + SafetyRulesToOverride: Optional[Sequence[str]] = None + +class GetRoutingControlStateResponseTypeDef(BaseModel): + RoutingControlArn: str + RoutingControlState: RoutingControlStateType + RoutingControlName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoutingControlsRequestListRoutingControlsPaginateTypeDef(BaseModel): + ControlPanelArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoutingControlsResponseTypeDef(BaseModel): + RoutingControls: List[RoutingControlTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoutingControlStatesRequestRequestTypeDef(BaseModel): + UpdateRoutingControlStateEntries: Sequence[UpdateRoutingControlStateEntryTypeDef] + SafetyRulesToOverride: Optional[Sequence[str]] = None + diff --git a/aws_resource_validator/pydantic_models/route53_recovery_cluster_constants.py b/aws_resource_validator/pydantic_models/route53_recovery_cluster_constants.py new file mode 100644 index 00000000..abfd25c4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_recovery_cluster_constants.py @@ -0,0 +1,391 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListRoutingControlsPaginatorName = Literal["list_routing_controls"] +RoutingControlStateType = Literal["Off", "On"] +Route53RecoveryClusterServiceName = Literal["route53-recovery-cluster"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_routing_controls"] diff --git a/aws_resource_validator/pydantic_models/route53_recovery_control_config_classes.py b/aws_resource_validator/pydantic_models/route53_recovery_control_config_classes.py new file mode 100644 index 00000000..8b13fc75 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_recovery_control_config_classes.py @@ -0,0 +1,327 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53_recovery_control_config_constants import * + +class RuleConfigTypeDef(BaseModel): + Inverted: bool + Threshold: int + Type: RuleTypeType + +class AssertionRuleUpdateTypeDef(BaseModel): + Name: str + SafetyRuleArn: str + WaitPeriodMs: int + +class ClusterEndpointTypeDef(BaseModel): + Endpoint: Optional[str] = None + Region: Optional[str] = None + +class ControlPanelTypeDef(BaseModel): + ClusterArn: Optional[str] = None + ControlPanelArn: Optional[str] = None + DefaultControlPanel: Optional[bool] = None + Name: Optional[str] = None + RoutingControlCount: Optional[int] = None + Status: Optional[StatusType] = None + Owner: Optional[str] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateControlPanelRequestRequestTypeDef(BaseModel): + ClusterArn: str + ControlPanelName: str + ClientToken: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateRoutingControlRequestRequestTypeDef(BaseModel): + ClusterArn: str + RoutingControlName: str + ClientToken: Optional[str] = None + ControlPanelArn: Optional[str] = None + +class RoutingControlTypeDef(BaseModel): + ControlPanelArn: Optional[str] = None + Name: Optional[str] = None + RoutingControlArn: Optional[str] = None + Status: Optional[StatusType] = None + Owner: Optional[str] = None + +class DeleteClusterRequestRequestTypeDef(BaseModel): + ClusterArn: str + +class DeleteControlPanelRequestRequestTypeDef(BaseModel): + ControlPanelArn: str + +class DeleteRoutingControlRequestRequestTypeDef(BaseModel): + RoutingControlArn: str + +class DeleteSafetyRuleRequestRequestTypeDef(BaseModel): + SafetyRuleArn: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeClusterRequestRequestTypeDef(BaseModel): + ClusterArn: str + +class DescribeControlPanelRequestRequestTypeDef(BaseModel): + ControlPanelArn: str + +class DescribeRoutingControlRequestRequestTypeDef(BaseModel): + RoutingControlArn: str + +class DescribeSafetyRuleRequestRequestTypeDef(BaseModel): + SafetyRuleArn: str + +class GatingRuleUpdateTypeDef(BaseModel): + Name: str + SafetyRuleArn: str + WaitPeriodMs: int + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssociatedRoute53HealthChecksRequestRequestTypeDef(BaseModel): + RoutingControlArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClustersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListControlPanelsRequestRequestTypeDef(BaseModel): + ClusterArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRoutingControlsRequestRequestTypeDef(BaseModel): + ControlPanelArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSafetyRulesRequestRequestTypeDef(BaseModel): + ControlPanelArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateControlPanelRequestRequestTypeDef(BaseModel): + ControlPanelArn: str + ControlPanelName: str + +class UpdateRoutingControlRequestRequestTypeDef(BaseModel): + RoutingControlArn: str + RoutingControlName: str + +class AssertionRuleTypeDef(BaseModel): + AssertedControls: List[str] + ControlPanelArn: str + Name: str + RuleConfig: RuleConfigTypeDef + SafetyRuleArn: str + Status: StatusType + WaitPeriodMs: int + Owner: Optional[str] = None + +class GatingRuleTypeDef(BaseModel): + ControlPanelArn: str + GatingControls: List[str] + Name: str + RuleConfig: RuleConfigTypeDef + SafetyRuleArn: str + Status: StatusType + TargetControls: List[str] + WaitPeriodMs: int + Owner: Optional[str] = None + +class NewAssertionRuleTypeDef(BaseModel): + AssertedControls: Sequence[str] + ControlPanelArn: str + Name: str + RuleConfig: RuleConfigTypeDef + WaitPeriodMs: int + +class NewGatingRuleTypeDef(BaseModel): + ControlPanelArn: str + GatingControls: Sequence[str] + Name: str + RuleConfig: RuleConfigTypeDef + TargetControls: Sequence[str] + WaitPeriodMs: int + +class ClusterTypeDef(BaseModel): + ClusterArn: Optional[str] = None + ClusterEndpoints: Optional[List[ClusterEndpointTypeDef]] = None + Name: Optional[str] = None + Status: Optional[StatusType] = None + Owner: Optional[str] = None + +class CreateControlPanelResponseTypeDef(BaseModel): + ControlPanel: ControlPanelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeControlPanelResponseTypeDef(BaseModel): + ControlPanel: ControlPanelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedRoute53HealthChecksResponseTypeDef(BaseModel): + HealthCheckIds: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListControlPanelsResponseTypeDef(BaseModel): + ControlPanels: List[ControlPanelTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateControlPanelResponseTypeDef(BaseModel): + ControlPanel: ControlPanelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRoutingControlResponseTypeDef(BaseModel): + RoutingControl: RoutingControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRoutingControlResponseTypeDef(BaseModel): + RoutingControl: RoutingControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRoutingControlsResponseTypeDef(BaseModel): + NextToken: str + RoutingControls: List[RoutingControlTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRoutingControlResponseTypeDef(BaseModel): + RoutingControl: RoutingControlTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClusterRequestClusterCreatedWaitTypeDef(BaseModel): + ClusterArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeClusterRequestClusterDeletedWaitTypeDef(BaseModel): + ClusterArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeControlPanelRequestControlPanelCreatedWaitTypeDef(BaseModel): + ControlPanelArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeControlPanelRequestControlPanelDeletedWaitTypeDef(BaseModel): + ControlPanelArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeRoutingControlRequestRoutingControlCreatedWaitTypeDef(BaseModel): + RoutingControlArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeRoutingControlRequestRoutingControlDeletedWaitTypeDef(BaseModel): + RoutingControlArn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class UpdateSafetyRuleRequestRequestTypeDef(BaseModel): + AssertionRuleUpdate: Optional[AssertionRuleUpdateTypeDef] = None + GatingRuleUpdate: Optional[GatingRuleUpdateTypeDef] = None + +class ListClustersRequestListClustersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListControlPanelsRequestListControlPanelsPaginateTypeDef(BaseModel): + ClusterArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRoutingControlsRequestListRoutingControlsPaginateTypeDef(BaseModel): + ControlPanelArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSafetyRulesRequestListSafetyRulesPaginateTypeDef(BaseModel): + ControlPanelArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateSafetyRuleResponseTypeDef(BaseModel): + AssertionRule: AssertionRuleTypeDef + GatingRule: GatingRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSafetyRuleResponseTypeDef(BaseModel): + AssertionRule: AssertionRuleTypeDef + GatingRule: GatingRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RuleTypeDef(BaseModel): + ASSERTION: Optional[AssertionRuleTypeDef] = None + GATING: Optional[GatingRuleTypeDef] = None + +class UpdateSafetyRuleResponseTypeDef(BaseModel): + AssertionRule: AssertionRuleTypeDef + GatingRule: GatingRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSafetyRuleRequestRequestTypeDef(BaseModel): + AssertionRule: Optional[NewAssertionRuleTypeDef] = None + ClientToken: Optional[str] = None + GatingRule: Optional[NewGatingRuleTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeClusterResponseTypeDef(BaseModel): + Cluster: ClusterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersResponseTypeDef(BaseModel): + Clusters: List[ClusterTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSafetyRulesResponseTypeDef(BaseModel): + NextToken: str + SafetyRules: List[RuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/route53_recovery_control_config_constants.py b/aws_resource_validator/pydantic_models/route53_recovery_control_config_constants.py new file mode 100644 index 00000000..ed761257 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_recovery_control_config_constants.py @@ -0,0 +1,412 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ClusterCreatedWaiterName = Literal["cluster_created"] +ClusterDeletedWaiterName = Literal["cluster_deleted"] +ControlPanelCreatedWaiterName = Literal["control_panel_created"] +ControlPanelDeletedWaiterName = Literal["control_panel_deleted"] +ListAssociatedRoute53HealthChecksPaginatorName = Literal["list_associated_route53_health_checks"] +ListClustersPaginatorName = Literal["list_clusters"] +ListControlPanelsPaginatorName = Literal["list_control_panels"] +ListRoutingControlsPaginatorName = Literal["list_routing_controls"] +ListSafetyRulesPaginatorName = Literal["list_safety_rules"] +RoutingControlCreatedWaiterName = Literal["routing_control_created"] +RoutingControlDeletedWaiterName = Literal["routing_control_deleted"] +RuleTypeType = Literal["AND", "ATLEAST", "OR"] +StatusType = Literal["DEPLOYED", "PENDING", "PENDING_DELETION"] +Route53RecoveryControlConfigServiceName = Literal["route53-recovery-control-config"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_associated_route53_health_checks", + "list_clusters", + "list_control_panels", + "list_routing_controls", + "list_safety_rules",] +WaiterName = Literal["cluster_created", + "cluster_deleted", + "control_panel_created", + "control_panel_deleted", + "routing_control_created", + "routing_control_deleted",] diff --git a/aws_resource_validator/pydantic_models/route53_recovery_readiness_classes.py b/aws_resource_validator/pydantic_models/route53_recovery_readiness_classes.py new file mode 100644 index 00000000..00e6fca3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_recovery_readiness_classes.py @@ -0,0 +1,448 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53_recovery_readiness_constants import * + +class CellOutputTypeDef(BaseModel): + CellArn: str + CellName: str + Cells: List[str] + ParentReadinessScopes: List[str] + Tags: Optional[Dict[str, str]] = None + +class CreateCellRequestRequestTypeDef(BaseModel): + CellName: str + Cells: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateCrossAccountAuthorizationRequestRequestTypeDef(BaseModel): + CrossAccountAuthorization: str + +class CreateReadinessCheckRequestRequestTypeDef(BaseModel): + ReadinessCheckName: str + ResourceSetName: str + Tags: Optional[Mapping[str, str]] = None + +class CreateRecoveryGroupRequestRequestTypeDef(BaseModel): + RecoveryGroupName: str + Cells: Optional[Sequence[str]] = None + Tags: Optional[Mapping[str, str]] = None + +class DeleteCellRequestRequestTypeDef(BaseModel): + CellName: str + +class DeleteCrossAccountAuthorizationRequestRequestTypeDef(BaseModel): + CrossAccountAuthorization: str + +class DeleteReadinessCheckRequestRequestTypeDef(BaseModel): + ReadinessCheckName: str + +class DeleteRecoveryGroupRequestRequestTypeDef(BaseModel): + RecoveryGroupName: str + +class DeleteResourceSetRequestRequestTypeDef(BaseModel): + ResourceSetName: str + +class GetArchitectureRecommendationsRequestRequestTypeDef(BaseModel): + RecoveryGroupName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RecommendationTypeDef(BaseModel): + RecommendationText: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetCellReadinessSummaryRequestRequestTypeDef(BaseModel): + CellName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ReadinessCheckSummaryTypeDef(BaseModel): + Readiness: Optional[ReadinessType] = None + ReadinessCheckName: Optional[str] = None + +class GetCellRequestRequestTypeDef(BaseModel): + CellName: str + +class GetReadinessCheckRequestRequestTypeDef(BaseModel): + ReadinessCheckName: str + +class GetReadinessCheckResourceStatusRequestRequestTypeDef(BaseModel): + ReadinessCheckName: str + ResourceIdentifier: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetReadinessCheckStatusRequestRequestTypeDef(BaseModel): + ReadinessCheckName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MessageTypeDef(BaseModel): + MessageText: Optional[str] = None + +class ResourceResultTypeDef(BaseModel): + LastCheckedTimestamp: datetime + Readiness: ReadinessType + ComponentId: Optional[str] = None + ResourceArn: Optional[str] = None + +class GetRecoveryGroupReadinessSummaryRequestRequestTypeDef(BaseModel): + RecoveryGroupName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetRecoveryGroupRequestRequestTypeDef(BaseModel): + RecoveryGroupName: str + +class GetResourceSetRequestRequestTypeDef(BaseModel): + ResourceSetName: str + +class ListCellsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCrossAccountAuthorizationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListReadinessChecksRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ReadinessCheckOutputTypeDef(BaseModel): + ReadinessCheckArn: str + ResourceSet: str + ReadinessCheckName: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ListRecoveryGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RecoveryGroupOutputTypeDef(BaseModel): + Cells: List[str] + RecoveryGroupArn: str + RecoveryGroupName: str + Tags: Optional[Dict[str, str]] = None + +class ListResourceSetsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRulesOutputTypeDef(BaseModel): + ResourceType: str + RuleDescription: str + RuleId: str + +class ListRulesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ResourceType: Optional[str] = None + +class ListTagsForResourcesRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class NLBResourceTypeDef(BaseModel): + Arn: Optional[str] = None + +class R53ResourceRecordTypeDef(BaseModel): + DomainName: Optional[str] = None + RecordSetId: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateCellRequestRequestTypeDef(BaseModel): + CellName: str + Cells: Sequence[str] + +class UpdateReadinessCheckRequestRequestTypeDef(BaseModel): + ReadinessCheckName: str + ResourceSetName: str + +class UpdateRecoveryGroupRequestRequestTypeDef(BaseModel): + Cells: Sequence[str] + RecoveryGroupName: str + +class CreateCellResponseTypeDef(BaseModel): + CellArn: str + CellName: str + Cells: List[str] + ParentReadinessScopes: List[str] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCrossAccountAuthorizationResponseTypeDef(BaseModel): + CrossAccountAuthorization: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReadinessCheckResponseTypeDef(BaseModel): + ReadinessCheckArn: str + ReadinessCheckName: str + ResourceSet: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRecoveryGroupResponseTypeDef(BaseModel): + Cells: List[str] + RecoveryGroupArn: str + RecoveryGroupName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetCellResponseTypeDef(BaseModel): + CellArn: str + CellName: str + Cells: List[str] + ParentReadinessScopes: List[str] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetReadinessCheckResponseTypeDef(BaseModel): + ReadinessCheckArn: str + ReadinessCheckName: str + ResourceSet: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecoveryGroupResponseTypeDef(BaseModel): + Cells: List[str] + RecoveryGroupArn: str + RecoveryGroupName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCellsResponseTypeDef(BaseModel): + Cells: List[CellOutputTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCrossAccountAuthorizationsResponseTypeDef(BaseModel): + CrossAccountAuthorizations: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourcesResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCellResponseTypeDef(BaseModel): + CellArn: str + CellName: str + Cells: List[str] + ParentReadinessScopes: List[str] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReadinessCheckResponseTypeDef(BaseModel): + ReadinessCheckArn: str + ReadinessCheckName: str + ResourceSet: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRecoveryGroupResponseTypeDef(BaseModel): + Cells: List[str] + RecoveryGroupArn: str + RecoveryGroupName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetArchitectureRecommendationsResponseTypeDef(BaseModel): + LastAuditTimestamp: datetime + NextToken: str + Recommendations: List[RecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCellReadinessSummaryRequestGetCellReadinessSummaryPaginateTypeDef(BaseModel): + CellName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetReadinessCheckResourceStatusRequestGetReadinessCheckResourceStatusPaginateTypeDef(BaseModel): + ReadinessCheckName: str + ResourceIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetReadinessCheckStatusRequestGetReadinessCheckStatusPaginateTypeDef(BaseModel): + ReadinessCheckName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetRecoveryGroupReadinessSummaryRequestGetRecoveryGroupReadinessSummaryPaginateTypeDef(BaseModel): + RecoveryGroupName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCellsRequestListCellsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCrossAccountAuthorizationsRequestListCrossAccountAuthorizationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReadinessChecksRequestListReadinessChecksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecoveryGroupsRequestListRecoveryGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceSetsRequestListResourceSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesRequestListRulesPaginateTypeDef(BaseModel): + ResourceType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetCellReadinessSummaryResponseTypeDef(BaseModel): + NextToken: str + Readiness: ReadinessType + ReadinessChecks: List[ReadinessCheckSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecoveryGroupReadinessSummaryResponseTypeDef(BaseModel): + NextToken: str + Readiness: ReadinessType + ReadinessChecks: List[ReadinessCheckSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RuleResultTypeDef(BaseModel): + LastCheckedTimestamp: datetime + Messages: List[MessageTypeDef] + Readiness: ReadinessType + RuleId: str + +class GetReadinessCheckStatusResponseTypeDef(BaseModel): + Messages: List[MessageTypeDef] + NextToken: str + Readiness: ReadinessType + Resources: List[ResourceResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReadinessChecksResponseTypeDef(BaseModel): + NextToken: str + ReadinessChecks: List[ReadinessCheckOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecoveryGroupsResponseTypeDef(BaseModel): + NextToken: str + RecoveryGroups: List[RecoveryGroupOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRulesResponseTypeDef(BaseModel): + NextToken: str + Rules: List[ListRulesOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TargetResourceTypeDef(BaseModel): + NLBResource: Optional[NLBResourceTypeDef] = None + R53Resource: Optional[R53ResourceRecordTypeDef] = None + +class GetReadinessCheckResourceStatusResponseTypeDef(BaseModel): + NextToken: str + Readiness: ReadinessType + Rules: List[RuleResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DNSTargetResourceTypeDef(BaseModel): + DomainName: Optional[str] = None + HostedZoneArn: Optional[str] = None + RecordSetId: Optional[str] = None + RecordType: Optional[str] = None + TargetResource: Optional[TargetResourceTypeDef] = None + +class ResourcePaginatorTypeDef(BaseModel): + ComponentId: Optional[str] = None + DnsTargetResource: Optional[DNSTargetResourceTypeDef] = None + ReadinessScopes: Optional[List[str]] = None + ResourceArn: Optional[str] = None + +class ResourceTypeDef(BaseModel): + ComponentId: Optional[str] = None + DnsTargetResource: Optional[DNSTargetResourceTypeDef] = None + ReadinessScopes: Optional[Sequence[str]] = None + ResourceArn: Optional[str] = None + +class ResourceSetOutputPaginatorTypeDef(BaseModel): + ResourceSetArn: str + ResourceSetName: str + ResourceSetType: str + Resources: List[ResourcePaginatorTypeDef] + Tags: Optional[Dict[str, str]] = None + +class CreateResourceSetRequestRequestTypeDef(BaseModel): + ResourceSetName: str + ResourceSetType: str + Resources: Sequence[ResourceTypeDef] + Tags: Optional[Mapping[str, str]] = None + +class CreateResourceSetResponseTypeDef(BaseModel): + ResourceSetArn: str + ResourceSetName: str + ResourceSetType: str + Resources: List[ResourceTypeDef] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourceSetResponseTypeDef(BaseModel): + ResourceSetArn: str + ResourceSetName: str + ResourceSetType: str + Resources: List[ResourceTypeDef] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceSetOutputTypeDef(BaseModel): + ResourceSetArn: str + ResourceSetName: str + ResourceSetType: str + Resources: List[ResourceTypeDef] + Tags: Optional[Dict[str, str]] = None + +class UpdateResourceSetRequestRequestTypeDef(BaseModel): + ResourceSetName: str + ResourceSetType: str + Resources: Sequence[ResourceTypeDef] + +class UpdateResourceSetResponseTypeDef(BaseModel): + ResourceSetArn: str + ResourceSetName: str + ResourceSetType: str + Resources: List[ResourceTypeDef] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceSetsResponsePaginatorTypeDef(BaseModel): + NextToken: str + ResourceSets: List[ResourceSetOutputPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourceSetsResponseTypeDef(BaseModel): + NextToken: str + ResourceSets: List[ResourceSetOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/route53_recovery_readiness_constants.py b/aws_resource_validator/pydantic_models/route53_recovery_readiness_constants.py new file mode 100644 index 00000000..094647c5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53_recovery_readiness_constants.py @@ -0,0 +1,409 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +GetCellReadinessSummaryPaginatorName = Literal["get_cell_readiness_summary"] +GetReadinessCheckResourceStatusPaginatorName = Literal["get_readiness_check_resource_status"] +GetReadinessCheckStatusPaginatorName = Literal["get_readiness_check_status"] +GetRecoveryGroupReadinessSummaryPaginatorName = Literal["get_recovery_group_readiness_summary"] +ListCellsPaginatorName = Literal["list_cells"] +ListCrossAccountAuthorizationsPaginatorName = Literal["list_cross_account_authorizations"] +ListReadinessChecksPaginatorName = Literal["list_readiness_checks"] +ListRecoveryGroupsPaginatorName = Literal["list_recovery_groups"] +ListResourceSetsPaginatorName = Literal["list_resource_sets"] +ListRulesPaginatorName = Literal["list_rules"] +ReadinessType = Literal["NOT_AUTHORIZED", "NOT_READY", "READY", "UNKNOWN"] +Route53RecoveryReadinessServiceName = Literal["route53-recovery-readiness"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_cell_readiness_summary", + "get_readiness_check_resource_status", + "get_readiness_check_status", + "get_recovery_group_readiness_summary", + "list_cells", + "list_cross_account_authorizations", + "list_readiness_checks", + "list_recovery_groups", + "list_resource_sets", + "list_rules",] diff --git a/aws_resource_validator/pydantic_models/route53domains_classes.py b/aws_resource_validator/pydantic_models/route53domains_classes.py new file mode 100644 index 00000000..73d2217b --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53domains_classes.py @@ -0,0 +1,482 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53domains_constants import * + +class AcceptDomainTransferFromAnotherAwsAccountRequestRequestTypeDef(BaseModel): + DomainName: str + Password: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DnssecSigningAttributesTypeDef(BaseModel): + Algorithm: Optional[int] = None + Flags: Optional[int] = None + PublicKey: Optional[str] = None + +class BillingRecordTypeDef(BaseModel): + DomainName: Optional[str] = None + Operation: Optional[OperationTypeType] = None + InvoiceId: Optional[str] = None + BillDate: Optional[datetime] = None + Price: Optional[float] = None + +class CancelDomainTransferToAnotherAwsAccountRequestRequestTypeDef(BaseModel): + DomainName: str + +class CheckDomainAvailabilityRequestRequestTypeDef(BaseModel): + DomainName: str + IdnLangCode: Optional[str] = None + +class CheckDomainTransferabilityRequestRequestTypeDef(BaseModel): + DomainName: str + AuthCode: Optional[str] = None + +class DomainTransferabilityTypeDef(BaseModel): + Transferable: Optional[TransferableType] = None + +class ConsentTypeDef(BaseModel): + MaxPrice: float + Currency: str + +class ExtraParamTypeDef(BaseModel): + Name: ExtraParamNameType + Value: str + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DeleteTagsForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + TagsToDelete: Sequence[str] + +class DisableDomainAutoRenewRequestRequestTypeDef(BaseModel): + DomainName: str + +class DisableDomainTransferLockRequestRequestTypeDef(BaseModel): + DomainName: str + +class DisassociateDelegationSignerFromDomainRequestRequestTypeDef(BaseModel): + DomainName: str + Id: str + +class DnssecKeyTypeDef(BaseModel): + Algorithm: Optional[int] = None + Flags: Optional[int] = None + PublicKey: Optional[str] = None + DigestType: Optional[int] = None + Digest: Optional[str] = None + KeyTag: Optional[int] = None + Id: Optional[str] = None + +class PriceWithCurrencyTypeDef(BaseModel): + Price: float + Currency: str + +class DomainSuggestionTypeDef(BaseModel): + DomainName: Optional[str] = None + Availability: Optional[str] = None + +class DomainSummaryTypeDef(BaseModel): + DomainName: Optional[str] = None + AutoRenew: Optional[bool] = None + TransferLock: Optional[bool] = None + Expiry: Optional[datetime] = None + +class EnableDomainAutoRenewRequestRequestTypeDef(BaseModel): + DomainName: str + +class EnableDomainTransferLockRequestRequestTypeDef(BaseModel): + DomainName: str + +class FilterConditionTypeDef(BaseModel): + Name: ListDomainsAttributeNameType + Operator: OperatorType + Values: Sequence[str] + +class GetContactReachabilityStatusRequestRequestTypeDef(BaseModel): + domainName: Optional[str] = None + +class GetDomainDetailRequestRequestTypeDef(BaseModel): + DomainName: str + +class NameserverOutputTypeDef(BaseModel): + Name: str + GlueIps: Optional[List[str]] = None + +class GetDomainSuggestionsRequestRequestTypeDef(BaseModel): + DomainName: str + SuggestionCount: int + OnlyAvailable: bool + +class GetOperationDetailRequestRequestTypeDef(BaseModel): + OperationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class SortConditionTypeDef(BaseModel): + Name: ListDomainsAttributeNameType + SortOrder: SortOrderType + +class OperationSummaryTypeDef(BaseModel): + OperationId: Optional[str] = None + Status: Optional[OperationStatusType] = None + Type: Optional[OperationTypeType] = None + SubmittedDate: Optional[datetime] = None + DomainName: Optional[str] = None + Message: Optional[str] = None + StatusFlag: Optional[StatusFlagType] = None + LastUpdatedDate: Optional[datetime] = None + +class ListPricesRequestRequestTypeDef(BaseModel): + Tld: Optional[str] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListTagsForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class NameserverTypeDef(BaseModel): + Name: str + GlueIps: Optional[Sequence[str]] = None + +class PushDomainRequestRequestTypeDef(BaseModel): + DomainName: str + Target: str + +class RejectDomainTransferFromAnotherAwsAccountRequestRequestTypeDef(BaseModel): + DomainName: str + +class RenewDomainRequestRequestTypeDef(BaseModel): + DomainName: str + CurrentExpiryYear: int + DurationInYears: Optional[int] = None + +class ResendContactReachabilityEmailRequestRequestTypeDef(BaseModel): + domainName: Optional[str] = None + +class ResendOperationAuthorizationRequestRequestTypeDef(BaseModel): + OperationId: str + +class RetrieveDomainAuthCodeRequestRequestTypeDef(BaseModel): + DomainName: str + +class TransferDomainToAnotherAwsAccountRequestRequestTypeDef(BaseModel): + DomainName: str + AccountId: str + +class UpdateDomainContactPrivacyRequestRequestTypeDef(BaseModel): + DomainName: str + AdminPrivacy: Optional[bool] = None + RegistrantPrivacy: Optional[bool] = None + TechPrivacy: Optional[bool] = None + BillingPrivacy: Optional[bool] = None + +class AcceptDomainTransferFromAnotherAwsAccountResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateDelegationSignerToDomainResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelDomainTransferToAnotherAwsAccountResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CheckDomainAvailabilityResponseTypeDef(BaseModel): + Availability: DomainAvailabilityType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDomainResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableDomainTransferLockResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateDelegationSignerFromDomainResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EnableDomainTransferLockResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetContactReachabilityStatusResponseTypeDef(BaseModel): + domainName: str + status: ReachabilityStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetOperationDetailResponseTypeDef(BaseModel): + OperationId: str + Status: OperationStatusType + Message: str + DomainName: str + Type: OperationTypeType + SubmittedDate: datetime + LastUpdatedDate: datetime + StatusFlag: StatusFlagType + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterDomainResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RejectDomainTransferFromAnotherAwsAccountResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RenewDomainResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResendContactReachabilityEmailResponseTypeDef(BaseModel): + domainName: str + emailAddress: str + isAlreadyVerified: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RetrieveDomainAuthCodeResponseTypeDef(BaseModel): + AuthCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class TransferDomainResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TransferDomainToAnotherAwsAccountResponseTypeDef(BaseModel): + OperationId: str + Password: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainContactPrivacyResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainContactResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainNameserversResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateDelegationSignerToDomainRequestRequestTypeDef(BaseModel): + DomainName: str + SigningAttributes: DnssecSigningAttributesTypeDef + +class ViewBillingResponseTypeDef(BaseModel): + NextPageMarker: str + BillingRecords: List[BillingRecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CheckDomainTransferabilityResponseTypeDef(BaseModel): + Transferability: DomainTransferabilityTypeDef + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class ContactDetailOutputTypeDef(BaseModel): + FirstName: Optional[str] = None + LastName: Optional[str] = None + ContactType: Optional[ContactTypeType] = None + OrganizationName: Optional[str] = None + AddressLine1: Optional[str] = None + AddressLine2: Optional[str] = None + City: Optional[str] = None + State: Optional[str] = None + CountryCode: Optional[CountryCodeType] = None + ZipCode: Optional[str] = None + PhoneNumber: Optional[str] = None + Email: Optional[str] = None + Fax: Optional[str] = None + ExtraParams: Optional[List[ExtraParamTypeDef]] = None + +class ContactDetailTypeDef(BaseModel): + FirstName: Optional[str] = None + LastName: Optional[str] = None + ContactType: Optional[ContactTypeType] = None + OrganizationName: Optional[str] = None + AddressLine1: Optional[str] = None + AddressLine2: Optional[str] = None + City: Optional[str] = None + State: Optional[str] = None + CountryCode: Optional[CountryCodeType] = None + ZipCode: Optional[str] = None + PhoneNumber: Optional[str] = None + Email: Optional[str] = None + Fax: Optional[str] = None + ExtraParams: Optional[Sequence[ExtraParamTypeDef]] = None + +class DomainPriceTypeDef(BaseModel): + Name: Optional[str] = None + RegistrationPrice: Optional[PriceWithCurrencyTypeDef] = None + TransferPrice: Optional[PriceWithCurrencyTypeDef] = None + RenewalPrice: Optional[PriceWithCurrencyTypeDef] = None + ChangeOwnershipPrice: Optional[PriceWithCurrencyTypeDef] = None + RestorationPrice: Optional[PriceWithCurrencyTypeDef] = None + +class GetDomainSuggestionsResponseTypeDef(BaseModel): + SuggestionsList: List[DomainSuggestionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsResponseTypeDef(BaseModel): + Domains: List[DomainSummaryTypeDef] + NextPageMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPricesRequestListPricesPaginateTypeDef(BaseModel): + Tld: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsRequestListDomainsPaginateTypeDef(BaseModel): + FilterConditions: Optional[Sequence[FilterConditionTypeDef]] = None + SortCondition: Optional[SortConditionTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + FilterConditions: Optional[Sequence[FilterConditionTypeDef]] = None + SortCondition: Optional[SortConditionTypeDef] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ListOperationsRequestListOperationsPaginateTypeDef(BaseModel): + SubmittedSince: Optional[TimestampTypeDef] = None + Status: Optional[Sequence[OperationStatusType]] = None + Type: Optional[Sequence[OperationTypeType]] = None + SortBy: Optional[Literal["SubmittedDate"]] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOperationsRequestRequestTypeDef(BaseModel): + SubmittedSince: Optional[TimestampTypeDef] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + Status: Optional[Sequence[OperationStatusType]] = None + Type: Optional[Sequence[OperationTypeType]] = None + SortBy: Optional[Literal["SubmittedDate"]] = None + SortOrder: Optional[SortOrderType] = None + +class ViewBillingRequestRequestTypeDef(BaseModel): + Start: Optional[TimestampTypeDef] = None + End: Optional[TimestampTypeDef] = None + Marker: Optional[str] = None + MaxItems: Optional[int] = None + +class ViewBillingRequestViewBillingPaginateTypeDef(BaseModel): + Start: Optional[TimestampTypeDef] = None + End: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOperationsResponseTypeDef(BaseModel): + Operations: List[OperationSummaryTypeDef] + NextPageMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForDomainResponseTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTagsForDomainRequestRequestTypeDef(BaseModel): + DomainName: str + TagsToUpdate: Optional[Sequence[TagTypeDef]] = None + +class GetDomainDetailResponseTypeDef(BaseModel): + DomainName: str + Nameservers: List[NameserverOutputTypeDef] + AutoRenew: bool + AdminContact: ContactDetailOutputTypeDef + RegistrantContact: ContactDetailOutputTypeDef + TechContact: ContactDetailOutputTypeDef + AdminPrivacy: bool + RegistrantPrivacy: bool + TechPrivacy: bool + RegistrarName: str + WhoIsServer: str + RegistrarUrl: str + AbuseContactEmail: str + AbuseContactPhone: str + RegistryDomainId: str + CreationDate: datetime + UpdatedDate: datetime + ExpirationDate: datetime + Reseller: str + DnsSec: str + StatusList: List[str] + DnssecKeys: List[DnssecKeyTypeDef] + BillingContact: ContactDetailOutputTypeDef + BillingPrivacy: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterDomainRequestRequestTypeDef(BaseModel): + DomainName: str + DurationInYears: int + AdminContact: ContactDetailTypeDef + RegistrantContact: ContactDetailTypeDef + TechContact: ContactDetailTypeDef + IdnLangCode: Optional[str] = None + AutoRenew: Optional[bool] = None + PrivacyProtectAdminContact: Optional[bool] = None + PrivacyProtectRegistrantContact: Optional[bool] = None + PrivacyProtectTechContact: Optional[bool] = None + BillingContact: Optional[ContactDetailTypeDef] = None + PrivacyProtectBillingContact: Optional[bool] = None + +class UpdateDomainContactRequestRequestTypeDef(BaseModel): + DomainName: str + AdminContact: Optional[ContactDetailTypeDef] = None + RegistrantContact: Optional[ContactDetailTypeDef] = None + TechContact: Optional[ContactDetailTypeDef] = None + Consent: Optional[ConsentTypeDef] = None + BillingContact: Optional[ContactDetailTypeDef] = None + +class ListPricesResponseTypeDef(BaseModel): + Prices: List[DomainPriceTypeDef] + NextPageMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class TransferDomainRequestRequestTypeDef(BaseModel): + DomainName: str + DurationInYears: int + AdminContact: ContactDetailTypeDef + RegistrantContact: ContactDetailTypeDef + TechContact: ContactDetailTypeDef + IdnLangCode: Optional[str] = None + Nameservers: Optional[Sequence[NameserverUnionTypeDef]] = None + AuthCode: Optional[str] = None + AutoRenew: Optional[bool] = None + PrivacyProtectAdminContact: Optional[bool] = None + PrivacyProtectRegistrantContact: Optional[bool] = None + PrivacyProtectTechContact: Optional[bool] = None + BillingContact: Optional[ContactDetailTypeDef] = None + PrivacyProtectBillingContact: Optional[bool] = None + +class UpdateDomainNameserversRequestRequestTypeDef(BaseModel): + DomainName: str + Nameservers: Sequence[NameserverUnionTypeDef] + FIAuthKey: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/route53domains_constants.py b/aws_resource_validator/pydantic_models/route53domains_constants.py new file mode 100644 index 00000000..6e087a64 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53domains_constants.py @@ -0,0 +1,738 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ContactTypeType = Literal["ASSOCIATION", "COMPANY", "PERSON", "PUBLIC_BODY", "RESELLER"] +CountryCodeType = Literal["AC", + "AD", + "AE", + "AF", + "AG", + "AI", + "AL", + "AM", + "AN", + "AO", + "AQ", + "AR", + "AS", + "AT", + "AU", + "AW", + "AX", + "AZ", + "BA", + "BB", + "BD", + "BE", + "BF", + "BG", + "BH", + "BI", + "BJ", + "BL", + "BM", + "BN", + "BO", + "BQ", + "BR", + "BS", + "BT", + "BV", + "BW", + "BY", + "BZ", + "CA", + "CC", + "CD", + "CF", + "CG", + "CH", + "CI", + "CK", + "CL", + "CM", + "CN", + "CO", + "CR", + "CU", + "CV", + "CW", + "CX", + "CY", + "CZ", + "DE", + "DJ", + "DK", + "DM", + "DO", + "DZ", + "EC", + "EE", + "EG", + "EH", + "ER", + "ES", + "ET", + "FI", + "FJ", + "FK", + "FM", + "FO", + "FR", + "GA", + "GB", + "GD", + "GE", + "GF", + "GG", + "GH", + "GI", + "GL", + "GM", + "GN", + "GP", + "GQ", + "GR", + "GS", + "GT", + "GU", + "GW", + "GY", + "HK", + "HM", + "HN", + "HR", + "HT", + "HU", + "ID", + "IE", + "IL", + "IM", + "IN", + "IO", + "IQ", + "IR", + "IS", + "IT", + "JE", + "JM", + "JO", + "JP", + "KE", + "KG", + "KH", + "KI", + "KM", + "KN", + "KP", + "KR", + "KW", + "KY", + "KZ", + "LA", + "LB", + "LC", + "LI", + "LK", + "LR", + "LS", + "LT", + "LU", + "LV", + "LY", + "MA", + "MC", + "MD", + "ME", + "MF", + "MG", + "MH", + "MK", + "ML", + "MM", + "MN", + "MO", + "MP", + "MQ", + "MR", + "MS", + "MT", + "MU", + "MV", + "MW", + "MX", + "MY", + "MZ", + "NA", + "NC", + "NE", + "NF", + "NG", + "NI", + "NL", + "NO", + "NP", + "NR", + "NU", + "NZ", + "OM", + "PA", + "PE", + "PF", + "PG", + "PH", + "PK", + "PL", + "PM", + "PN", + "PR", + "PS", + "PT", + "PW", + "PY", + "QA", + "RE", + "RO", + "RS", + "RU", + "RW", + "SA", + "SB", + "SC", + "SD", + "SE", + "SG", + "SH", + "SI", + "SJ", + "SK", + "SL", + "SM", + "SN", + "SO", + "SR", + "SS", + "ST", + "SV", + "SX", + "SY", + "SZ", + "TC", + "TD", + "TF", + "TG", + "TH", + "TJ", + "TK", + "TL", + "TM", + "TN", + "TO", + "TP", + "TR", + "TT", + "TV", + "TW", + "TZ", + "UA", + "UG", + "US", + "UY", + "UZ", + "VA", + "VC", + "VE", + "VG", + "VI", + "VN", + "VU", + "WF", + "WS", + "YE", + "YT", + "ZA", + "ZM", + "ZW",] +DomainAvailabilityType = Literal["AVAILABLE", + "AVAILABLE_PREORDER", + "AVAILABLE_RESERVED", + "DONT_KNOW", + "INVALID_NAME_FOR_TLD", + "PENDING", + "RESERVED", + "UNAVAILABLE", + "UNAVAILABLE_PREMIUM", + "UNAVAILABLE_RESTRICTED",] +ExtraParamNameType = Literal["AU_ID_NUMBER", + "AU_ID_TYPE", + "AU_PRIORITY_TOKEN", + "BIRTH_CITY", + "BIRTH_COUNTRY", + "BIRTH_DATE_IN_YYYY_MM_DD", + "BIRTH_DEPARTMENT", + "BRAND_NUMBER", + "CA_BUSINESS_ENTITY_TYPE", + "CA_LEGAL_REPRESENTATIVE", + "CA_LEGAL_REPRESENTATIVE_CAPACITY", + "CA_LEGAL_TYPE", + "DOCUMENT_NUMBER", + "DUNS_NUMBER", + "ES_IDENTIFICATION", + "ES_IDENTIFICATION_TYPE", + "ES_LEGAL_FORM", + "EU_COUNTRY_OF_CITIZENSHIP", + "FI_BUSINESS_NUMBER", + "FI_ID_NUMBER", + "FI_NATIONALITY", + "FI_ORGANIZATION_TYPE", + "IT_NATIONALITY", + "IT_PIN", + "IT_REGISTRANT_ENTITY_TYPE", + "RU_PASSPORT_DATA", + "SE_ID_NUMBER", + "SG_ID_NUMBER", + "UK_COMPANY_NUMBER", + "UK_CONTACT_TYPE", + "VAT_NUMBER",] +ListDomainsAttributeNameType = Literal["DomainName", "Expiry"] +ListDomainsPaginatorName = Literal["list_domains"] +ListOperationsPaginatorName = Literal["list_operations"] +ListOperationsSortAttributeNameType = Literal["SubmittedDate"] +ListPricesPaginatorName = Literal["list_prices"] +OperationStatusType = Literal["ERROR", "FAILED", "IN_PROGRESS", "SUBMITTED", "SUCCESSFUL"] +OperationTypeType = Literal["ADD_DNSSEC", + "CHANGE_DOMAIN_OWNER", + "CHANGE_PRIVACY_PROTECTION", + "DELETE_DOMAIN", + "DISABLE_AUTORENEW", + "DOMAIN_LOCK", + "ENABLE_AUTORENEW", + "EXPIRE_DOMAIN", + "INTERNAL_TRANSFER_IN_DOMAIN", + "INTERNAL_TRANSFER_OUT_DOMAIN", + "PUSH_DOMAIN", + "REGISTER_DOMAIN", + "RELEASE_TO_GANDI", + "REMOVE_DNSSEC", + "RENEW_DOMAIN", + "TRANSFER_IN_DOMAIN", + "TRANSFER_ON_RENEW", + "TRANSFER_OUT_DOMAIN", + "UPDATE_DOMAIN_CONTACT", + "UPDATE_NAMESERVER",] +OperatorType = Literal["BEGINS_WITH", "GE", "LE"] +ReachabilityStatusType = Literal["DONE", "EXPIRED", "PENDING"] +SortOrderType = Literal["ASC", "DESC"] +StatusFlagType = Literal["PENDING_ACCEPTANCE", + "PENDING_AUTHORIZATION", + "PENDING_CUSTOMER_ACTION", + "PENDING_PAYMENT_VERIFICATION", + "PENDING_SUPPORT_CASE",] +TransferableType = Literal["DOMAIN_IN_ANOTHER_ACCOUNT", + "DOMAIN_IN_OWN_ACCOUNT", + "DONT_KNOW", + "PREMIUM_DOMAIN", + "TRANSFERABLE", + "UNTRANSFERABLE",] +ViewBillingPaginatorName = Literal["view_billing"] +Route53DomainsServiceName = Literal["route53domains"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_domains", "list_operations", "list_prices", "view_billing"] +RegionName = Literal["us-east-1"] +TimestampTypeDef = Union[datetime, str] +NameserverUnionTypeDef = Union['NameserverTypeDef', 'NameserverOutputTypeDef'] +ContactDetailUnionTypeDef = Union['ContactDetailTypeDef', 'ContactDetailOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/route53profiles_classes.py b/aws_resource_validator/pydantic_models/route53profiles_classes.py new file mode 100644 index 00000000..6a67a3eb --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53profiles_classes.py @@ -0,0 +1,212 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53profiles_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ProfileAssociationTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + Id: Optional[str] = None + ModificationTime: Optional[datetime] = None + Name: Optional[str] = None + OwnerId: Optional[str] = None + ProfileId: Optional[str] = None + ResourceId: Optional[str] = None + Status: Optional[ProfileStatusType] = None + StatusMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociateResourceToProfileRequestRequestTypeDef(BaseModel): + Name: str + ProfileId: str + ResourceArn: str + ResourceProperties: Optional[str] = None + +class ProfileResourceAssociationTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + Id: Optional[str] = None + ModificationTime: Optional[datetime] = None + Name: Optional[str] = None + OwnerId: Optional[str] = None + ProfileId: Optional[str] = None + ResourceArn: Optional[str] = None + ResourceProperties: Optional[str] = None + ResourceType: Optional[str] = None + Status: Optional[ProfileStatusType] = None + StatusMessage: Optional[str] = None + +class ProfileTypeDef(BaseModel): + Arn: Optional[str] = None + ClientToken: Optional[str] = None + CreationTime: Optional[datetime] = None + Id: Optional[str] = None + ModificationTime: Optional[datetime] = None + Name: Optional[str] = None + OwnerId: Optional[str] = None + ShareStatus: Optional[ShareStatusType] = None + Status: Optional[ProfileStatusType] = None + StatusMessage: Optional[str] = None + +class DeleteProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + +class DisassociateProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + ResourceId: str + +class DisassociateResourceFromProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + ResourceArn: str + +class GetProfileAssociationRequestRequestTypeDef(BaseModel): + ProfileAssociationId: str + +class GetProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + +class GetProfileResourceAssociationRequestRequestTypeDef(BaseModel): + ProfileResourceAssociationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListProfileAssociationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ProfileId: Optional[str] = None + ResourceId: Optional[str] = None + +class ListProfileResourceAssociationsRequestRequestTypeDef(BaseModel): + ProfileId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ResourceType: Optional[str] = None + +class ListProfilesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ProfileSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + ShareStatus: Optional[ShareStatusType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateProfileResourceAssociationRequestRequestTypeDef(BaseModel): + ProfileResourceAssociationId: str + Name: Optional[str] = None + ResourceProperties: Optional[str] = None + +class AssociateProfileRequestRequestTypeDef(BaseModel): + Name: str + ProfileId: str + ResourceId: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateProfileRequestRequestTypeDef(BaseModel): + ClientToken: str + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class AssociateProfileResponseTypeDef(BaseModel): + ProfileAssociation: ProfileAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateProfileResponseTypeDef(BaseModel): + ProfileAssociation: ProfileAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileAssociationResponseTypeDef(BaseModel): + ProfileAssociation: ProfileAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfileAssociationsResponseTypeDef(BaseModel): + ProfileAssociations: List[ProfileAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateResourceToProfileResponseTypeDef(BaseModel): + ProfileResourceAssociation: ProfileResourceAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResourceFromProfileResponseTypeDef(BaseModel): + ProfileResourceAssociation: ProfileResourceAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileResourceAssociationResponseTypeDef(BaseModel): + ProfileResourceAssociation: ProfileResourceAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfileResourceAssociationsResponseTypeDef(BaseModel): + ProfileResourceAssociations: List[ProfileResourceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateProfileResourceAssociationResponseTypeDef(BaseModel): + ProfileResourceAssociation: ProfileResourceAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileResponseTypeDef(BaseModel): + Profile: ProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteProfileResponseTypeDef(BaseModel): + Profile: ProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileResponseTypeDef(BaseModel): + Profile: ProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfileAssociationsRequestListProfileAssociationsPaginateTypeDef(BaseModel): + ProfileId: Optional[str] = None + ResourceId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfileResourceAssociationsRequestListProfileResourceAssociationsPaginateTypeDef(BaseModel): + ProfileId: str + ResourceType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfilesRequestListProfilesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfilesResponseTypeDef(BaseModel): + ProfileSummaries: List[ProfileSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/route53profiles_constants.py b/aws_resource_validator/pydantic_models/route53profiles_constants.py new file mode 100644 index 00000000..97fe8809 --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53profiles_constants.py @@ -0,0 +1,403 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListProfileAssociationsPaginatorName = Literal["list_profile_associations"] +ListProfileResourceAssociationsPaginatorName = Literal["list_profile_resource_associations"] +ListProfilesPaginatorName = Literal["list_profiles"] +ProfileStatusType = Literal["COMPLETE", "CREATING", "DELETED", "DELETING", "FAILED", "UPDATING"] +ShareStatusType = Literal["NOT_SHARED", "SHARED_BY_ME", "SHARED_WITH_ME"] +Route53ProfilesServiceName = Literal["route53profiles"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_profile_associations", "list_profile_resource_associations", "list_profiles"] diff --git a/aws_resource_validator/pydantic_models/route53resolver_classes.py b/aws_resource_validator/pydantic_models/route53resolver_classes.py new file mode 100644 index 00000000..f7bc046f --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53resolver_classes.py @@ -0,0 +1,917 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.route53resolver_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class FirewallRuleGroupAssociationTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + FirewallRuleGroupId: Optional[str] = None + VpcId: Optional[str] = None + Name: Optional[str] = None + Priority: Optional[int] = None + MutationProtection: Optional[MutationProtectionStatusType] = None + ManagedOwnerName: Optional[str] = None + Status: Optional[FirewallRuleGroupAssociationStatusType] = None + StatusMessage: Optional[str] = None + CreatorRequestId: Optional[str] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class IpAddressUpdateTypeDef(BaseModel): + IpId: Optional[str] = None + SubnetId: Optional[str] = None + Ip: Optional[str] = None + Ipv6: Optional[str] = None + +class ResolverEndpointTypeDef(BaseModel): + Id: Optional[str] = None + CreatorRequestId: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + Direction: Optional[ResolverEndpointDirectionType] = None + IpAddressCount: Optional[int] = None + HostVPCId: Optional[str] = None + Status: Optional[ResolverEndpointStatusType] = None + StatusMessage: Optional[str] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + OutpostArn: Optional[str] = None + PreferredInstanceType: Optional[str] = None + ResolverEndpointType: Optional[ResolverEndpointTypeType] = None + Protocols: Optional[List[ProtocolType]] = None + +class AssociateResolverQueryLogConfigRequestRequestTypeDef(BaseModel): + ResolverQueryLogConfigId: str + ResourceId: str + +class ResolverQueryLogConfigAssociationTypeDef(BaseModel): + Id: Optional[str] = None + ResolverQueryLogConfigId: Optional[str] = None + ResourceId: Optional[str] = None + Status: Optional[ResolverQueryLogConfigAssociationStatusType] = None + Error: Optional[ResolverQueryLogConfigAssociationErrorType] = None + ErrorMessage: Optional[str] = None + CreationTime: Optional[str] = None + +class AssociateResolverRuleRequestRequestTypeDef(BaseModel): + ResolverRuleId: str + VPCId: str + Name: Optional[str] = None + +class ResolverRuleAssociationTypeDef(BaseModel): + Id: Optional[str] = None + ResolverRuleId: Optional[str] = None + Name: Optional[str] = None + VPCId: Optional[str] = None + Status: Optional[ResolverRuleAssociationStatusType] = None + StatusMessage: Optional[str] = None + +class FirewallDomainListTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + DomainCount: Optional[int] = None + Status: Optional[FirewallDomainListStatusType] = None + StatusMessage: Optional[str] = None + ManagedOwnerName: Optional[str] = None + CreatorRequestId: Optional[str] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + +class FirewallRuleGroupTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + RuleCount: Optional[int] = None + Status: Optional[FirewallRuleGroupStatusType] = None + StatusMessage: Optional[str] = None + OwnerId: Optional[str] = None + CreatorRequestId: Optional[str] = None + ShareStatus: Optional[ShareStatusType] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + +class CreateFirewallRuleRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + FirewallRuleGroupId: str + FirewallDomainListId: str + Priority: int + Action: ActionType + Name: str + BlockResponse: Optional[BlockResponseType] = None + BlockOverrideDomain: Optional[str] = None + BlockOverrideDnsType: Optional[Literal["CNAME"]] = None + BlockOverrideTtl: Optional[int] = None + FirewallDomainRedirectionAction: Optional[FirewallDomainRedirectionActionType] = None + Qtype: Optional[str] = None + +class FirewallRuleTypeDef(BaseModel): + FirewallRuleGroupId: Optional[str] = None + FirewallDomainListId: Optional[str] = None + Name: Optional[str] = None + Priority: Optional[int] = None + Action: Optional[ActionType] = None + BlockResponse: Optional[BlockResponseType] = None + BlockOverrideDomain: Optional[str] = None + BlockOverrideDnsType: Optional[Literal["CNAME"]] = None + BlockOverrideTtl: Optional[int] = None + CreatorRequestId: Optional[str] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + FirewallDomainRedirectionAction: Optional[FirewallDomainRedirectionActionType] = None + Qtype: Optional[str] = None + +class OutpostResolverTypeDef(BaseModel): + Arn: Optional[str] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + CreatorRequestId: Optional[str] = None + Id: Optional[str] = None + InstanceCount: Optional[int] = None + PreferredInstanceType: Optional[str] = None + Name: Optional[str] = None + Status: Optional[OutpostResolverStatusType] = None + StatusMessage: Optional[str] = None + OutpostArn: Optional[str] = None + +class IpAddressRequestTypeDef(BaseModel): + SubnetId: str + Ip: Optional[str] = None + Ipv6: Optional[str] = None + +class ResolverQueryLogConfigTypeDef(BaseModel): + Id: Optional[str] = None + OwnerId: Optional[str] = None + Status: Optional[ResolverQueryLogConfigStatusType] = None + ShareStatus: Optional[ShareStatusType] = None + AssociationCount: Optional[int] = None + Arn: Optional[str] = None + Name: Optional[str] = None + DestinationArn: Optional[str] = None + CreatorRequestId: Optional[str] = None + CreationTime: Optional[str] = None + +class TargetAddressTypeDef(BaseModel): + Ip: Optional[str] = None + Port: Optional[int] = None + Ipv6: Optional[str] = None + Protocol: Optional[ProtocolType] = None + +class DeleteFirewallDomainListRequestRequestTypeDef(BaseModel): + FirewallDomainListId: str + +class DeleteFirewallRuleGroupRequestRequestTypeDef(BaseModel): + FirewallRuleGroupId: str + +class DeleteFirewallRuleRequestRequestTypeDef(BaseModel): + FirewallRuleGroupId: str + FirewallDomainListId: str + Qtype: Optional[str] = None + +class DeleteOutpostResolverRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteResolverEndpointRequestRequestTypeDef(BaseModel): + ResolverEndpointId: str + +class DeleteResolverQueryLogConfigRequestRequestTypeDef(BaseModel): + ResolverQueryLogConfigId: str + +class DeleteResolverRuleRequestRequestTypeDef(BaseModel): + ResolverRuleId: str + +class DisassociateFirewallRuleGroupRequestRequestTypeDef(BaseModel): + FirewallRuleGroupAssociationId: str + +class DisassociateResolverQueryLogConfigRequestRequestTypeDef(BaseModel): + ResolverQueryLogConfigId: str + ResourceId: str + +class DisassociateResolverRuleRequestRequestTypeDef(BaseModel): + VPCId: str + ResolverRuleId: str + +class FilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class FirewallConfigTypeDef(BaseModel): + Id: Optional[str] = None + ResourceId: Optional[str] = None + OwnerId: Optional[str] = None + FirewallFailOpen: Optional[FirewallFailOpenStatusType] = None + +class FirewallDomainListMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + CreatorRequestId: Optional[str] = None + ManagedOwnerName: Optional[str] = None + +class FirewallRuleGroupMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + OwnerId: Optional[str] = None + CreatorRequestId: Optional[str] = None + ShareStatus: Optional[ShareStatusType] = None + +class GetFirewallConfigRequestRequestTypeDef(BaseModel): + ResourceId: str + +class GetFirewallDomainListRequestRequestTypeDef(BaseModel): + FirewallDomainListId: str + +class GetFirewallRuleGroupAssociationRequestRequestTypeDef(BaseModel): + FirewallRuleGroupAssociationId: str + +class GetFirewallRuleGroupPolicyRequestRequestTypeDef(BaseModel): + Arn: str + +class GetFirewallRuleGroupRequestRequestTypeDef(BaseModel): + FirewallRuleGroupId: str + +class GetOutpostResolverRequestRequestTypeDef(BaseModel): + Id: str + +class GetResolverConfigRequestRequestTypeDef(BaseModel): + ResourceId: str + +class ResolverConfigTypeDef(BaseModel): + Id: Optional[str] = None + ResourceId: Optional[str] = None + OwnerId: Optional[str] = None + AutodefinedReverse: Optional[ResolverAutodefinedReverseStatusType] = None + +class GetResolverDnssecConfigRequestRequestTypeDef(BaseModel): + ResourceId: str + +class ResolverDnssecConfigTypeDef(BaseModel): + Id: Optional[str] = None + OwnerId: Optional[str] = None + ResourceId: Optional[str] = None + ValidationStatus: Optional[ResolverDNSSECValidationStatusType] = None + +class GetResolverEndpointRequestRequestTypeDef(BaseModel): + ResolverEndpointId: str + +class GetResolverQueryLogConfigAssociationRequestRequestTypeDef(BaseModel): + ResolverQueryLogConfigAssociationId: str + +class GetResolverQueryLogConfigPolicyRequestRequestTypeDef(BaseModel): + Arn: str + +class GetResolverQueryLogConfigRequestRequestTypeDef(BaseModel): + ResolverQueryLogConfigId: str + +class GetResolverRuleAssociationRequestRequestTypeDef(BaseModel): + ResolverRuleAssociationId: str + +class GetResolverRulePolicyRequestRequestTypeDef(BaseModel): + Arn: str + +class GetResolverRuleRequestRequestTypeDef(BaseModel): + ResolverRuleId: str + +class ImportFirewallDomainsRequestRequestTypeDef(BaseModel): + FirewallDomainListId: str + Operation: Literal["REPLACE"] + DomainFileUrl: str + +class IpAddressResponseTypeDef(BaseModel): + IpId: Optional[str] = None + SubnetId: Optional[str] = None + Ip: Optional[str] = None + Ipv6: Optional[str] = None + Status: Optional[IpAddressStatusType] = None + StatusMessage: Optional[str] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListFirewallConfigsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFirewallDomainListsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFirewallDomainsRequestRequestTypeDef(BaseModel): + FirewallDomainListId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFirewallRuleGroupAssociationsRequestRequestTypeDef(BaseModel): + FirewallRuleGroupId: Optional[str] = None + VpcId: Optional[str] = None + Priority: Optional[int] = None + Status: Optional[FirewallRuleGroupAssociationStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFirewallRuleGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFirewallRulesRequestRequestTypeDef(BaseModel): + FirewallRuleGroupId: str + Priority: Optional[int] = None + Action: Optional[ActionType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOutpostResolversRequestRequestTypeDef(BaseModel): + OutpostArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListResolverConfigsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListResolverEndpointIpAddressesRequestRequestTypeDef(BaseModel): + ResolverEndpointId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PutFirewallRuleGroupPolicyRequestRequestTypeDef(BaseModel): + Arn: str + FirewallRuleGroupPolicy: str + +class PutResolverQueryLogConfigPolicyRequestRequestTypeDef(BaseModel): + Arn: str + ResolverQueryLogConfigPolicy: str + +class PutResolverRulePolicyRequestRequestTypeDef(BaseModel): + Arn: str + ResolverRulePolicy: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateFirewallConfigRequestRequestTypeDef(BaseModel): + ResourceId: str + FirewallFailOpen: FirewallFailOpenStatusType + +class UpdateFirewallDomainsRequestRequestTypeDef(BaseModel): + FirewallDomainListId: str + Operation: FirewallDomainUpdateOperationType + Domains: Sequence[str] + +class UpdateFirewallRuleGroupAssociationRequestRequestTypeDef(BaseModel): + FirewallRuleGroupAssociationId: str + Priority: Optional[int] = None + MutationProtection: Optional[MutationProtectionStatusType] = None + Name: Optional[str] = None + +class UpdateFirewallRuleRequestRequestTypeDef(BaseModel): + FirewallRuleGroupId: str + FirewallDomainListId: str + Priority: Optional[int] = None + Action: Optional[ActionType] = None + BlockResponse: Optional[BlockResponseType] = None + BlockOverrideDomain: Optional[str] = None + BlockOverrideDnsType: Optional[Literal["CNAME"]] = None + BlockOverrideTtl: Optional[int] = None + Name: Optional[str] = None + FirewallDomainRedirectionAction: Optional[FirewallDomainRedirectionActionType] = None + Qtype: Optional[str] = None + +class UpdateIpAddressTypeDef(BaseModel): + IpId: str + Ipv6: str + +class UpdateOutpostResolverRequestRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + InstanceCount: Optional[int] = None + PreferredInstanceType: Optional[str] = None + +class UpdateResolverConfigRequestRequestTypeDef(BaseModel): + ResourceId: str + AutodefinedReverseFlag: AutodefinedReverseFlagType + +class UpdateResolverDnssecConfigRequestRequestTypeDef(BaseModel): + ResourceId: str + Validation: ValidationType + +class AssociateFirewallRuleGroupRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + FirewallRuleGroupId: str + VpcId: str + Priority: int + Name: str + MutationProtection: Optional[MutationProtectionStatusType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateFirewallDomainListRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateFirewallRuleGroupRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + Name: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateOutpostResolverRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + Name: str + PreferredInstanceType: str + OutpostArn: str + InstanceCount: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateResolverQueryLogConfigRequestRequestTypeDef(BaseModel): + Name: str + DestinationArn: str + CreatorRequestId: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class AssociateFirewallRuleGroupResponseTypeDef(BaseModel): + FirewallRuleGroupAssociation: FirewallRuleGroupAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateFirewallRuleGroupResponseTypeDef(BaseModel): + FirewallRuleGroupAssociation: FirewallRuleGroupAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFirewallRuleGroupAssociationResponseTypeDef(BaseModel): + FirewallRuleGroupAssociation: FirewallRuleGroupAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFirewallRuleGroupPolicyResponseTypeDef(BaseModel): + FirewallRuleGroupPolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverQueryLogConfigPolicyResponseTypeDef(BaseModel): + ResolverQueryLogConfigPolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverRulePolicyResponseTypeDef(BaseModel): + ResolverRulePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportFirewallDomainsResponseTypeDef(BaseModel): + Id: str + Name: str + Status: FirewallDomainListStatusType + StatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFirewallDomainsResponseTypeDef(BaseModel): + Domains: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFirewallRuleGroupAssociationsResponseTypeDef(BaseModel): + FirewallRuleGroupAssociations: List[FirewallRuleGroupAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutFirewallRuleGroupPolicyResponseTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutResolverQueryLogConfigPolicyResponseTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class PutResolverRulePolicyResponseTypeDef(BaseModel): + ReturnValue: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallDomainsResponseTypeDef(BaseModel): + Id: str + Name: str + Status: FirewallDomainListStatusType + StatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFirewallRuleGroupAssociationResponseTypeDef(BaseModel): + FirewallRuleGroupAssociation: FirewallRuleGroupAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateResolverEndpointIpAddressRequestRequestTypeDef(BaseModel): + ResolverEndpointId: str + IpAddress: IpAddressUpdateTypeDef + +class DisassociateResolverEndpointIpAddressRequestRequestTypeDef(BaseModel): + ResolverEndpointId: str + IpAddress: IpAddressUpdateTypeDef + +class AssociateResolverEndpointIpAddressResponseTypeDef(BaseModel): + ResolverEndpoint: ResolverEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResolverEndpointResponseTypeDef(BaseModel): + ResolverEndpoint: ResolverEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResolverEndpointResponseTypeDef(BaseModel): + ResolverEndpoint: ResolverEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResolverEndpointIpAddressResponseTypeDef(BaseModel): + ResolverEndpoint: ResolverEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverEndpointResponseTypeDef(BaseModel): + ResolverEndpoint: ResolverEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverEndpointsResponseTypeDef(BaseModel): + MaxResults: int + ResolverEndpoints: List[ResolverEndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateResolverEndpointResponseTypeDef(BaseModel): + ResolverEndpoint: ResolverEndpointTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateResolverQueryLogConfigResponseTypeDef(BaseModel): + ResolverQueryLogConfigAssociation: ResolverQueryLogConfigAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResolverQueryLogConfigResponseTypeDef(BaseModel): + ResolverQueryLogConfigAssociation: ResolverQueryLogConfigAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverQueryLogConfigAssociationResponseTypeDef(BaseModel): + ResolverQueryLogConfigAssociation: ResolverQueryLogConfigAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverQueryLogConfigAssociationsResponseTypeDef(BaseModel): + TotalCount: int + TotalFilteredCount: int + ResolverQueryLogConfigAssociations: List[ResolverQueryLogConfigAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociateResolverRuleResponseTypeDef(BaseModel): + ResolverRuleAssociation: ResolverRuleAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResolverRuleResponseTypeDef(BaseModel): + ResolverRuleAssociation: ResolverRuleAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverRuleAssociationResponseTypeDef(BaseModel): + ResolverRuleAssociation: ResolverRuleAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverRuleAssociationsResponseTypeDef(BaseModel): + MaxResults: int + ResolverRuleAssociations: List[ResolverRuleAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateFirewallDomainListResponseTypeDef(BaseModel): + FirewallDomainList: FirewallDomainListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFirewallDomainListResponseTypeDef(BaseModel): + FirewallDomainList: FirewallDomainListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFirewallDomainListResponseTypeDef(BaseModel): + FirewallDomainList: FirewallDomainListTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFirewallRuleGroupResponseTypeDef(BaseModel): + FirewallRuleGroup: FirewallRuleGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFirewallRuleGroupResponseTypeDef(BaseModel): + FirewallRuleGroup: FirewallRuleGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFirewallRuleGroupResponseTypeDef(BaseModel): + FirewallRuleGroup: FirewallRuleGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFirewallRuleResponseTypeDef(BaseModel): + FirewallRule: FirewallRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFirewallRuleResponseTypeDef(BaseModel): + FirewallRule: FirewallRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFirewallRulesResponseTypeDef(BaseModel): + FirewallRules: List[FirewallRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateFirewallRuleResponseTypeDef(BaseModel): + FirewallRule: FirewallRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOutpostResolverResponseTypeDef(BaseModel): + OutpostResolver: OutpostResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteOutpostResolverResponseTypeDef(BaseModel): + OutpostResolver: OutpostResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOutpostResolverResponseTypeDef(BaseModel): + OutpostResolver: OutpostResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOutpostResolversResponseTypeDef(BaseModel): + OutpostResolvers: List[OutpostResolverTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateOutpostResolverResponseTypeDef(BaseModel): + OutpostResolver: OutpostResolverTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResolverEndpointRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + SecurityGroupIds: Sequence[str] + Direction: ResolverEndpointDirectionType + IpAddresses: Sequence[IpAddressRequestTypeDef] + Name: Optional[str] = None + OutpostArn: Optional[str] = None + PreferredInstanceType: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ResolverEndpointType: Optional[ResolverEndpointTypeType] = None + Protocols: Optional[Sequence[ProtocolType]] = None + +class CreateResolverQueryLogConfigResponseTypeDef(BaseModel): + ResolverQueryLogConfig: ResolverQueryLogConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResolverQueryLogConfigResponseTypeDef(BaseModel): + ResolverQueryLogConfig: ResolverQueryLogConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverQueryLogConfigResponseTypeDef(BaseModel): + ResolverQueryLogConfig: ResolverQueryLogConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverQueryLogConfigsResponseTypeDef(BaseModel): + TotalCount: int + TotalFilteredCount: int + ResolverQueryLogConfigs: List[ResolverQueryLogConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateResolverRuleRequestRequestTypeDef(BaseModel): + CreatorRequestId: str + RuleType: RuleTypeOptionType + Name: Optional[str] = None + DomainName: Optional[str] = None + TargetIps: Optional[Sequence[TargetAddressTypeDef]] = None + ResolverEndpointId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ResolverRuleConfigTypeDef(BaseModel): + Name: Optional[str] = None + TargetIps: Optional[Sequence[TargetAddressTypeDef]] = None + ResolverEndpointId: Optional[str] = None + +class ResolverRuleTypeDef(BaseModel): + Id: Optional[str] = None + CreatorRequestId: Optional[str] = None + Arn: Optional[str] = None + DomainName: Optional[str] = None + Status: Optional[ResolverRuleStatusType] = None + StatusMessage: Optional[str] = None + RuleType: Optional[RuleTypeOptionType] = None + Name: Optional[str] = None + TargetIps: Optional[List[TargetAddressTypeDef]] = None + ResolverEndpointId: Optional[str] = None + OwnerId: Optional[str] = None + ShareStatus: Optional[ShareStatusType] = None + CreationTime: Optional[str] = None + ModificationTime: Optional[str] = None + +class ListResolverDnssecConfigsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListResolverEndpointsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListResolverQueryLogConfigAssociationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + +class ListResolverQueryLogConfigsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + +class ListResolverRuleAssociationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListResolverRulesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class GetFirewallConfigResponseTypeDef(BaseModel): + FirewallConfig: FirewallConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFirewallConfigsResponseTypeDef(BaseModel): + FirewallConfigs: List[FirewallConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateFirewallConfigResponseTypeDef(BaseModel): + FirewallConfig: FirewallConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListFirewallDomainListsResponseTypeDef(BaseModel): + FirewallDomainLists: List[FirewallDomainListMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFirewallRuleGroupsResponseTypeDef(BaseModel): + FirewallRuleGroups: List[FirewallRuleGroupMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetResolverConfigResponseTypeDef(BaseModel): + ResolverConfig: ResolverConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverConfigsResponseTypeDef(BaseModel): + ResolverConfigs: List[ResolverConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateResolverConfigResponseTypeDef(BaseModel): + ResolverConfig: ResolverConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverDnssecConfigResponseTypeDef(BaseModel): + ResolverDNSSECConfig: ResolverDnssecConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverDnssecConfigsResponseTypeDef(BaseModel): + ResolverDnssecConfigs: List[ResolverDnssecConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateResolverDnssecConfigResponseTypeDef(BaseModel): + ResolverDNSSECConfig: ResolverDnssecConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverEndpointIpAddressesResponseTypeDef(BaseModel): + MaxResults: int + IpAddresses: List[IpAddressResponseTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFirewallConfigsRequestListFirewallConfigsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFirewallDomainListsRequestListFirewallDomainListsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFirewallDomainsRequestListFirewallDomainsPaginateTypeDef(BaseModel): + FirewallDomainListId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFirewallRuleGroupsRequestListFirewallRuleGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFirewallRulesRequestListFirewallRulesPaginateTypeDef(BaseModel): + FirewallRuleGroupId: str + Priority: Optional[int] = None + Action: Optional[ActionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOutpostResolversRequestListOutpostResolversPaginateTypeDef(BaseModel): + OutpostArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverConfigsRequestListResolverConfigsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverDnssecConfigsRequestListResolverDnssecConfigsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverEndpointIpAddressesRequestListResolverEndpointIpAddressesPaginateTypeDef(BaseModel): + ResolverEndpointId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverEndpointsRequestListResolverEndpointsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverQueryLogConfigAssociationsRequestListResolverQueryLogConfigAssociationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverQueryLogConfigsRequestListResolverQueryLogConfigsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverRuleAssociationsRequestListResolverRuleAssociationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResolverRulesRequestListResolverRulesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class UpdateResolverEndpointRequestRequestTypeDef(BaseModel): + ResolverEndpointId: str + Name: Optional[str] = None + ResolverEndpointType: Optional[ResolverEndpointTypeType] = None + UpdateIpAddresses: Optional[Sequence[UpdateIpAddressTypeDef]] = None + Protocols: Optional[Sequence[ProtocolType]] = None + +class UpdateResolverRuleRequestRequestTypeDef(BaseModel): + ResolverRuleId: str + Config: ResolverRuleConfigTypeDef + +class CreateResolverRuleResponseTypeDef(BaseModel): + ResolverRule: ResolverRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResolverRuleResponseTypeDef(BaseModel): + ResolverRule: ResolverRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetResolverRuleResponseTypeDef(BaseModel): + ResolverRule: ResolverRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListResolverRulesResponseTypeDef(BaseModel): + MaxResults: int + ResolverRules: List[ResolverRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateResolverRuleResponseTypeDef(BaseModel): + ResolverRule: ResolverRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/route53resolver_constants.py b/aws_resource_validator/pydantic_models/route53resolver_constants.py new file mode 100644 index 00000000..f0ebad3c --- /dev/null +++ b/aws_resource_validator/pydantic_models/route53resolver_constants.py @@ -0,0 +1,517 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionType = Literal["ALERT", "ALLOW", "BLOCK"] +AutodefinedReverseFlagType = Literal["DISABLE", "ENABLE", "USE_LOCAL_RESOURCE_SETTING"] +BlockOverrideDnsTypeType = Literal["CNAME"] +BlockResponseType = Literal["NODATA", "NXDOMAIN", "OVERRIDE"] +FirewallDomainImportOperationType = Literal["REPLACE"] +FirewallDomainListStatusType = Literal["COMPLETE", "COMPLETE_IMPORT_FAILED", "DELETING", "IMPORTING", "UPDATING"] +FirewallDomainRedirectionActionType = Literal["INSPECT_REDIRECTION_DOMAIN", "TRUST_REDIRECTION_DOMAIN"] +FirewallDomainUpdateOperationType = Literal["ADD", "REMOVE", "REPLACE"] +FirewallFailOpenStatusType = Literal["DISABLED", "ENABLED", "USE_LOCAL_RESOURCE_SETTING"] +FirewallRuleGroupAssociationStatusType = Literal["COMPLETE", "DELETING", "UPDATING"] +FirewallRuleGroupStatusType = Literal["COMPLETE", "DELETING", "UPDATING"] +IpAddressStatusType = Literal["ATTACHED", + "ATTACHING", + "CREATING", + "DELETE_FAILED_FAS_EXPIRED", + "DELETING", + "DETACHING", + "FAILED_CREATION", + "FAILED_RESOURCE_GONE", + "REMAP_ATTACHING", + "REMAP_DETACHING", + "UPDATE_FAILED", + "UPDATING",] +ListFirewallConfigsPaginatorName = Literal["list_firewall_configs"] +ListFirewallDomainListsPaginatorName = Literal["list_firewall_domain_lists"] +ListFirewallDomainsPaginatorName = Literal["list_firewall_domains"] +ListFirewallRuleGroupAssociationsPaginatorName = Literal["list_firewall_rule_group_associations"] +ListFirewallRuleGroupsPaginatorName = Literal["list_firewall_rule_groups"] +ListFirewallRulesPaginatorName = Literal["list_firewall_rules"] +ListOutpostResolversPaginatorName = Literal["list_outpost_resolvers"] +ListResolverConfigsPaginatorName = Literal["list_resolver_configs"] +ListResolverDnssecConfigsPaginatorName = Literal["list_resolver_dnssec_configs"] +ListResolverEndpointIpAddressesPaginatorName = Literal["list_resolver_endpoint_ip_addresses"] +ListResolverEndpointsPaginatorName = Literal["list_resolver_endpoints"] +ListResolverQueryLogConfigAssociationsPaginatorName = Literal["list_resolver_query_log_config_associations"] +ListResolverQueryLogConfigsPaginatorName = Literal["list_resolver_query_log_configs"] +ListResolverRuleAssociationsPaginatorName = Literal["list_resolver_rule_associations"] +ListResolverRulesPaginatorName = Literal["list_resolver_rules"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +MutationProtectionStatusType = Literal["DISABLED", "ENABLED"] +OutpostResolverStatusType = Literal["ACTION_NEEDED", + "CREATING", + "DELETING", + "FAILED_CREATION", + "FAILED_DELETION", + "OPERATIONAL", + "UPDATING",] +ProtocolType = Literal["Do53", "DoH", "DoH-FIPS"] +ResolverAutodefinedReverseStatusType = Literal["DISABLED", + "DISABLING", + "ENABLED", + "ENABLING", + "UPDATING_TO_USE_LOCAL_RESOURCE_SETTING", + "USE_LOCAL_RESOURCE_SETTING",] +ResolverDNSSECValidationStatusType = Literal["DISABLED", + "DISABLING", + "ENABLED", + "ENABLING", + "UPDATING_TO_USE_LOCAL_RESOURCE_SETTING", + "USE_LOCAL_RESOURCE_SETTING",] +ResolverEndpointDirectionType = Literal["INBOUND", "OUTBOUND"] +ResolverEndpointStatusType = Literal["ACTION_NEEDED", "AUTO_RECOVERING", "CREATING", "DELETING", "OPERATIONAL", "UPDATING"] +ResolverEndpointTypeType = Literal["DUALSTACK", "IPV4", "IPV6"] +ResolverQueryLogConfigAssociationErrorType = Literal["ACCESS_DENIED", "DESTINATION_NOT_FOUND", "INTERNAL_SERVICE_ERROR", "NONE"] +ResolverQueryLogConfigAssociationStatusType = Literal["ACTION_NEEDED", "ACTIVE", "CREATING", "DELETING", "FAILED"] +ResolverQueryLogConfigStatusType = Literal["CREATED", "CREATING", "DELETING", "FAILED"] +ResolverRuleAssociationStatusType = Literal["COMPLETE", "CREATING", "DELETING", "FAILED", "OVERRIDDEN"] +ResolverRuleStatusType = Literal["COMPLETE", "DELETING", "FAILED", "UPDATING"] +RuleTypeOptionType = Literal["FORWARD", "RECURSIVE", "SYSTEM"] +ShareStatusType = Literal["NOT_SHARED", "SHARED_BY_ME", "SHARED_WITH_ME"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +ValidationType = Literal["DISABLE", "ENABLE", "USE_LOCAL_RESOURCE_SETTING"] +Route53ResolverServiceName = Literal["route53resolver"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_firewall_configs", + "list_firewall_domain_lists", + "list_firewall_domains", + "list_firewall_rule_group_associations", + "list_firewall_rule_groups", + "list_firewall_rules", + "list_outpost_resolvers", + "list_resolver_configs", + "list_resolver_dnssec_configs", + "list_resolver_endpoint_ip_addresses", + "list_resolver_endpoints", + "list_resolver_query_log_config_associations", + "list_resolver_query_log_configs", + "list_resolver_rule_associations", + "list_resolver_rules", + "list_tags_for_resource",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/rum_classes.py b/aws_resource_validator/pydantic_models/rum_classes.py new file mode 100644 index 00000000..e75ef1fd --- /dev/null +++ b/aws_resource_validator/pydantic_models/rum_classes.py @@ -0,0 +1,275 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.rum_constants import * + +class AppMonitorConfigurationTypeDef(BaseModel): + AllowCookies: Optional[bool] = None + EnableXRay: Optional[bool] = None + ExcludedPages: Optional[Sequence[str]] = None + FavoritePages: Optional[Sequence[str]] = None + GuestRoleArn: Optional[str] = None + IdentityPoolId: Optional[str] = None + IncludedPages: Optional[Sequence[str]] = None + SessionSampleRate: Optional[float] = None + Telemetries: Optional[Sequence[TelemetryType]] = None + +class AppMonitorDetailsTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + version: Optional[str] = None + +class AppMonitorSummaryTypeDef(BaseModel): + Created: Optional[str] = None + Id: Optional[str] = None + LastModified: Optional[str] = None + Name: Optional[str] = None + State: Optional[StateEnumType] = None + +class CustomEventsTypeDef(BaseModel): + Status: Optional[CustomEventsStatusType] = None + +class MetricDefinitionRequestTypeDef(BaseModel): + Name: str + DimensionKeys: Optional[Mapping[str, str]] = None + EventPattern: Optional[str] = None + Namespace: Optional[str] = None + UnitLabel: Optional[str] = None + ValueKey: Optional[str] = None + +class MetricDefinitionTypeDef(BaseModel): + MetricDefinitionId: str + Name: str + DimensionKeys: Optional[Dict[str, str]] = None + EventPattern: Optional[str] = None + Namespace: Optional[str] = None + UnitLabel: Optional[str] = None + ValueKey: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchDeleteRumMetricDefinitionsErrorTypeDef(BaseModel): + ErrorCode: str + ErrorMessage: str + MetricDefinitionId: str + +class BatchDeleteRumMetricDefinitionsRequestRequestTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + MetricDefinitionIds: Sequence[str] + DestinationArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class BatchGetRumMetricDefinitionsRequestRequestTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + DestinationArn: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class CwLogTypeDef(BaseModel): + CwLogEnabled: Optional[bool] = None + CwLogGroup: Optional[str] = None + +class DeleteAppMonitorRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteRumMetricsDestinationRequestRequestTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + DestinationArn: Optional[str] = None + +class QueryFilterTypeDef(BaseModel): + Name: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class TimeRangeTypeDef(BaseModel): + After: int + Before: Optional[int] = None + +class GetAppMonitorRequestRequestTypeDef(BaseModel): + Name: str + +class ListAppMonitorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRumMetricsDestinationsRequestRequestTypeDef(BaseModel): + AppMonitorName: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MetricDestinationSummaryTypeDef(BaseModel): + Destination: Optional[MetricDestinationType] = None + DestinationArn: Optional[str] = None + IamRoleArn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class UserDetailsTypeDef(BaseModel): + sessionId: Optional[str] = None + userId: Optional[str] = None + +class PutRumMetricsDestinationRequestRequestTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + DestinationArn: Optional[str] = None + IamRoleArn: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class CreateAppMonitorRequestRequestTypeDef(BaseModel): + Domain: str + Name: str + AppMonitorConfiguration: Optional[AppMonitorConfigurationTypeDef] = None + CustomEvents: Optional[CustomEventsTypeDef] = None + CwLogEnabled: Optional[bool] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateAppMonitorRequestRequestTypeDef(BaseModel): + Name: str + AppMonitorConfiguration: Optional[AppMonitorConfigurationTypeDef] = None + CustomEvents: Optional[CustomEventsTypeDef] = None + CwLogEnabled: Optional[bool] = None + Domain: Optional[str] = None + +class BatchCreateRumMetricDefinitionsErrorTypeDef(BaseModel): + ErrorCode: str + ErrorMessage: str + MetricDefinition: MetricDefinitionRequestTypeDef + +class BatchCreateRumMetricDefinitionsRequestRequestTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + MetricDefinitions: Sequence[MetricDefinitionRequestTypeDef] + DestinationArn: Optional[str] = None + +class UpdateRumMetricDefinitionRequestRequestTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + MetricDefinition: MetricDefinitionRequestTypeDef + MetricDefinitionId: str + DestinationArn: Optional[str] = None + +class BatchGetRumMetricDefinitionsResponseTypeDef(BaseModel): + MetricDefinitions: List[MetricDefinitionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppMonitorResponseTypeDef(BaseModel): + Id: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppMonitorDataResponseTypeDef(BaseModel): + Events: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAppMonitorsResponseTypeDef(BaseModel): + AppMonitorSummaries: List[AppMonitorSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceArn: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteRumMetricDefinitionsResponseTypeDef(BaseModel): + Errors: List[BatchDeleteRumMetricDefinitionsErrorTypeDef] + MetricDefinitionIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetRumMetricDefinitionsRequestBatchGetRumMetricDefinitionsPaginateTypeDef(BaseModel): + AppMonitorName: str + Destination: MetricDestinationType + DestinationArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppMonitorsRequestListAppMonitorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRumMetricsDestinationsRequestListRumMetricsDestinationsPaginateTypeDef(BaseModel): + AppMonitorName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DataStorageTypeDef(BaseModel): + CwLog: Optional[CwLogTypeDef] = None + +class GetAppMonitorDataRequestGetAppMonitorDataPaginateTypeDef(BaseModel): + Name: str + TimeRange: TimeRangeTypeDef + Filters: Optional[Sequence[QueryFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetAppMonitorDataRequestRequestTypeDef(BaseModel): + Name: str + TimeRange: TimeRangeTypeDef + Filters: Optional[Sequence[QueryFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListRumMetricsDestinationsResponseTypeDef(BaseModel): + Destinations: List[MetricDestinationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RumEventTypeDef(BaseModel): + details: str + id: str + timestamp: TimestampTypeDef + type: str + metadata: Optional[str] = None + +class BatchCreateRumMetricDefinitionsResponseTypeDef(BaseModel): + Errors: List[BatchCreateRumMetricDefinitionsErrorTypeDef] + MetricDefinitions: List[MetricDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AppMonitorTypeDef(BaseModel): + AppMonitorConfiguration: Optional[AppMonitorConfigurationTypeDef] = None + Created: Optional[str] = None + CustomEvents: Optional[CustomEventsTypeDef] = None + DataStorage: Optional[DataStorageTypeDef] = None + Domain: Optional[str] = None + Id: Optional[str] = None + LastModified: Optional[str] = None + Name: Optional[str] = None + State: Optional[StateEnumType] = None + Tags: Optional[Dict[str, str]] = None + +class PutRumEventsRequestRequestTypeDef(BaseModel): + AppMonitorDetails: AppMonitorDetailsTypeDef + BatchId: str + Id: str + RumEvents: Sequence[RumEventTypeDef] + UserDetails: UserDetailsTypeDef + +class GetAppMonitorResponseTypeDef(BaseModel): + AppMonitor: AppMonitorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/rum_constants.py b/aws_resource_validator/pydantic_models/rum_constants.py new file mode 100644 index 00000000..a90243ca --- /dev/null +++ b/aws_resource_validator/pydantic_models/rum_constants.py @@ -0,0 +1,416 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BatchGetRumMetricDefinitionsPaginatorName = Literal["batch_get_rum_metric_definitions"] +CustomEventsStatusType = Literal["DISABLED", "ENABLED"] +GetAppMonitorDataPaginatorName = Literal["get_app_monitor_data"] +ListAppMonitorsPaginatorName = Literal["list_app_monitors"] +ListRumMetricsDestinationsPaginatorName = Literal["list_rum_metrics_destinations"] +MetricDestinationType = Literal["CloudWatch", "Evidently"] +StateEnumType = Literal["ACTIVE", "CREATED", "DELETING"] +TelemetryType = Literal["errors", "http", "performance"] +CloudWatchRUMServiceName = Literal["rum"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["batch_get_rum_metric_definitions", + "get_app_monitor_data", + "list_app_monitors", + "list_rum_metrics_destinations",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-east-2", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/s3_classes.py b/aws_resource_validator/pydantic_models/s3_classes.py new file mode 100644 index 00000000..000befcb --- /dev/null +++ b/aws_resource_validator/pydantic_models/s3_classes.py @@ -0,0 +1,3101 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.s3_constants import * + +class AbortIncompleteMultipartUploadTypeDef(BaseModel): + DaysAfterInitiation: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AbortMultipartUploadRequestMultipartUploadAbortTypeDef(BaseModel): + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class AbortMultipartUploadRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + UploadId: str + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class AccelerateConfigurationTypeDef(BaseModel): + Status: Optional[BucketAccelerateStatusType] = None + +class OwnerTypeDef(BaseModel): + DisplayName: Optional[str] = None + ID: Optional[str] = None + +class AccessControlTranslationTypeDef(BaseModel): + Owner: Literal["Destination"] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AnalyticsS3BucketDestinationTypeDef(BaseModel): + Format: Literal["CSV"] + Bucket: str + BucketAccountId: Optional[str] = None + Prefix: Optional[str] = None + +class CopySourceTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + +class BucketDownloadFileRequestTypeDef(BaseModel): + Key: str + Filename: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class BucketInfoTypeDef(BaseModel): + DataRedundancy: Optional[Literal["SingleAvailabilityZone"]] = None + Type: Optional[Literal["Directory"]] = None + +class BucketTypeDef(BaseModel): + Name: Optional[str] = None + CreationDate: Optional[datetime] = None + +class BucketUploadFileRequestTypeDef(BaseModel): + Filename: str + Key: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class CORSRuleTypeDef(BaseModel): + AllowedMethods: Sequence[str] + AllowedOrigins: Sequence[str] + ID: Optional[str] = None + AllowedHeaders: Optional[Sequence[str]] = None + ExposeHeaders: Optional[Sequence[str]] = None + MaxAgeSeconds: Optional[int] = None + +class CORSRuleExtraOutputTypeDef(BaseModel): + AllowedMethods: List[str] + AllowedOrigins: List[str] + ID: Optional[str] = None + AllowedHeaders: Optional[List[str]] = None + ExposeHeaders: Optional[List[str]] = None + MaxAgeSeconds: Optional[int] = None + +class CORSRuleOutputTypeDef(BaseModel): + AllowedMethods: List[str] + AllowedOrigins: List[str] + ID: Optional[str] = None + AllowedHeaders: Optional[List[str]] = None + ExposeHeaders: Optional[List[str]] = None + MaxAgeSeconds: Optional[int] = None + +class CSVInputTypeDef(BaseModel): + FileHeaderInfo: Optional[FileHeaderInfoType] = None + Comments: Optional[str] = None + QuoteEscapeCharacter: Optional[str] = None + RecordDelimiter: Optional[str] = None + FieldDelimiter: Optional[str] = None + QuoteCharacter: Optional[str] = None + AllowQuotedRecordDelimiter: Optional[bool] = None + +class CSVOutputTypeDef(BaseModel): + QuoteFields: Optional[QuoteFieldsType] = None + QuoteEscapeCharacter: Optional[str] = None + RecordDelimiter: Optional[str] = None + FieldDelimiter: Optional[str] = None + QuoteCharacter: Optional[str] = None + +class ChecksumTypeDef(BaseModel): + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + +class ClientDownloadFileRequestTypeDef(BaseModel): + Bucket: str + Key: str + Filename: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ClientGeneratePresignedPostRequestTypeDef(BaseModel): + Bucket: str + Key: str + Fields: Optional[Optional[Dict[str, Any]]] = None + Conditions: Optional[Union[List[Any], Dict[str, Any], None]] = None + ExpiresIn: Optional[int] = None + +class ClientUploadFileRequestTypeDef(BaseModel): + Filename: str + Bucket: str + Key: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class CloudFunctionConfigurationOutputTypeDef(BaseModel): + Id: Optional[str] = None + Event: Optional[EventType] = None + Events: Optional[List[EventType]] = None + CloudFunction: Optional[str] = None + InvocationRole: Optional[str] = None + +class CloudFunctionConfigurationTypeDef(BaseModel): + Id: Optional[str] = None + Event: Optional[EventType] = None + Events: Optional[Sequence[EventType]] = None + CloudFunction: Optional[str] = None + InvocationRole: Optional[str] = None + +class CommonPrefixTypeDef(BaseModel): + Prefix: Optional[str] = None + +class CompletedPartTypeDef(BaseModel): + ETag: Optional[str] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + PartNumber: Optional[int] = None + +class ConditionTypeDef(BaseModel): + HttpErrorCodeReturnedEquals: Optional[str] = None + KeyPrefixEquals: Optional[str] = None + +class CopyObjectResultTypeDef(BaseModel): + ETag: Optional[str] = None + LastModified: Optional[datetime] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + +class CopyPartResultTypeDef(BaseModel): + ETag: Optional[str] = None + LastModified: Optional[datetime] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + +class LocationInfoTypeDef(BaseModel): + Type: Optional[Literal["AvailabilityZone"]] = None + Name: Optional[str] = None + +class SessionCredentialsTypeDef(BaseModel): + AccessKeyId: str + SecretAccessKey: str + SessionToken: str + Expiration: datetime + +class CreateSessionRequestRequestTypeDef(BaseModel): + Bucket: str + SessionMode: Optional[SessionModeType] = None + +class DefaultRetentionTypeDef(BaseModel): + Mode: Optional[ObjectLockRetentionModeType] = None + Days: Optional[int] = None + Years: Optional[int] = None + +class DeleteBucketAnalyticsConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketCorsRequestBucketCorsDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketCorsRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketEncryptionRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketIntelligentTieringConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + +class DeleteBucketInventoryConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketLifecycleRequestBucketLifecycleConfigurationDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketLifecycleRequestBucketLifecycleDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketLifecycleRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketMetricsConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketOwnershipControlsRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketPolicyRequestBucketPolicyDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketPolicyRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketReplicationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketRequestBucketDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketTaggingRequestBucketTaggingDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketTaggingRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketWebsiteRequestBucketWebsiteDeleteTypeDef(BaseModel): + ExpectedBucketOwner: Optional[str] = None + +class DeleteBucketWebsiteRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class DeleteMarkerReplicationTypeDef(BaseModel): + Status: Optional[DeleteMarkerReplicationStatusType] = None + +class DeleteObjectRequestObjectDeleteTypeDef(BaseModel): + MFA: Optional[str] = None + VersionId: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + BypassGovernanceRetention: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + +class DeleteObjectRequestObjectSummaryDeleteTypeDef(BaseModel): + MFA: Optional[str] = None + VersionId: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + BypassGovernanceRetention: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + +class DeleteObjectRequestObjectVersionDeleteTypeDef(BaseModel): + MFA: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + BypassGovernanceRetention: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + +class DeleteObjectRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + MFA: Optional[str] = None + VersionId: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + BypassGovernanceRetention: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + +class DeleteObjectTaggingRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class DeletedObjectTypeDef(BaseModel): + Key: Optional[str] = None + VersionId: Optional[str] = None + DeleteMarker: Optional[bool] = None + DeleteMarkerVersionId: Optional[str] = None + +class ErrorTypeDef(BaseModel): + Key: Optional[str] = None + VersionId: Optional[str] = None + Code: Optional[str] = None + Message: Optional[str] = None + +class DeletePublicAccessBlockRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class ObjectIdentifierTypeDef(BaseModel): + Key: str + VersionId: Optional[str] = None + +class EncryptionConfigurationTypeDef(BaseModel): + ReplicaKmsKeyID: Optional[str] = None + +class EncryptionTypeDef(BaseModel): + EncryptionType: ServerSideEncryptionType + KMSKeyId: Optional[str] = None + KMSContext: Optional[str] = None + +class ErrorDocumentTypeDef(BaseModel): + Key: str + +class ExistingObjectReplicationTypeDef(BaseModel): + Status: ExistingObjectReplicationStatusType + +class FilterRuleTypeDef(BaseModel): + Name: Optional[FilterRuleNameType] = None + Value: Optional[str] = None + +class GetBucketAccelerateConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + +class GetBucketAclRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketAnalyticsConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketCorsRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketEncryptionRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketIntelligentTieringConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + +class GetBucketInventoryConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketLifecycleConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketLifecycleRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketLocationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketLoggingRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketMetricsConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketNotificationConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketOwnershipControlsRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketPolicyRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class PolicyStatusTypeDef(BaseModel): + IsPublic: Optional[bool] = None + +class GetBucketPolicyStatusRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketReplicationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketRequestPaymentRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketTaggingRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetBucketVersioningRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class IndexDocumentTypeDef(BaseModel): + Suffix: str + +class RedirectAllRequestsToTypeDef(BaseModel): + HostName: str + Protocol: Optional[ProtocolType] = None + +class GetBucketWebsiteRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GetObjectAclRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class ObjectPartTypeDef(BaseModel): + PartNumber: Optional[int] = None + Size: Optional[int] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + +class GetObjectAttributesRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + ObjectAttributes: Sequence[ObjectAttributesType] + VersionId: Optional[str] = None + MaxParts: Optional[int] = None + PartNumberMarker: Optional[int] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class ObjectLockLegalHoldTypeDef(BaseModel): + Status: Optional[ObjectLockLegalHoldStatusType] = None + +class GetObjectLegalHoldRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class GetObjectLockConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class ObjectLockRetentionOutputTypeDef(BaseModel): + Mode: Optional[ObjectLockRetentionModeType] = None + RetainUntilDate: Optional[datetime] = None + +class GetObjectRetentionRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class GetObjectTaggingRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + +class GetObjectTorrentRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class PublicAccessBlockConfigurationTypeDef(BaseModel): + BlockPublicAcls: Optional[bool] = None + IgnorePublicAcls: Optional[bool] = None + BlockPublicPolicy: Optional[bool] = None + RestrictPublicBuckets: Optional[bool] = None + +class GetPublicAccessBlockRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class GlacierJobParametersTypeDef(BaseModel): + Tier: TierType + +class GranteeTypeDef(BaseModel): + Type: TypeType + DisplayName: Optional[str] = None + EmailAddress: Optional[str] = None + ID: Optional[str] = None + URI: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class HeadBucketRequestRequestTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + +class InitiatorTypeDef(BaseModel): + ID: Optional[str] = None + DisplayName: Optional[str] = None + +class JSONInputTypeDef(BaseModel): + Type: Optional[JSONTypeType] = None + +class TieringTypeDef(BaseModel): + Days: int + AccessTier: IntelligentTieringAccessTierType + +class InventoryFilterTypeDef(BaseModel): + Prefix: str + +class InventoryScheduleTypeDef(BaseModel): + Frequency: InventoryFrequencyType + +class SSEKMSTypeDef(BaseModel): + KeyId: str + +class JSONOutputTypeDef(BaseModel): + RecordDelimiter: Optional[str] = None + +class LifecycleExpirationExtraExtraOutputTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + +class LifecycleExpirationExtraOutputTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + +class LifecycleExpirationOutputTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + +class NoncurrentVersionExpirationTypeDef(BaseModel): + NoncurrentDays: Optional[int] = None + NewerNoncurrentVersions: Optional[int] = None + +class NoncurrentVersionTransitionTypeDef(BaseModel): + NoncurrentDays: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + NewerNoncurrentVersions: Optional[int] = None + +class TransitionExtraOutputTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + +class TransitionOutputTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + +class ListBucketAnalyticsConfigurationsRequestRequestTypeDef(BaseModel): + Bucket: str + ContinuationToken: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class ListBucketIntelligentTieringConfigurationsRequestRequestTypeDef(BaseModel): + Bucket: str + ContinuationToken: Optional[str] = None + +class ListBucketInventoryConfigurationsRequestRequestTypeDef(BaseModel): + Bucket: str + ContinuationToken: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class ListBucketMetricsConfigurationsRequestRequestTypeDef(BaseModel): + Bucket: str + ContinuationToken: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDirectoryBucketsRequestRequestTypeDef(BaseModel): + ContinuationToken: Optional[str] = None + MaxDirectoryBuckets: Optional[int] = None + +class ListMultipartUploadsRequestRequestTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + KeyMarker: Optional[str] = None + MaxUploads: Optional[int] = None + Prefix: Optional[str] = None + UploadIdMarker: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + +class ListObjectVersionsRequestRequestTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + KeyMarker: Optional[str] = None + MaxKeys: Optional[int] = None + Prefix: Optional[str] = None + VersionIdMarker: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + OptionalObjectAttributes: Optional[Sequence[Literal["RestoreStatus"]]] = None + +class ListObjectsRequestRequestTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + Marker: Optional[str] = None + MaxKeys: Optional[int] = None + Prefix: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + OptionalObjectAttributes: Optional[Sequence[Literal["RestoreStatus"]]] = None + +class ListObjectsV2RequestRequestTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + MaxKeys: Optional[int] = None + Prefix: Optional[str] = None + ContinuationToken: Optional[str] = None + FetchOwner: Optional[bool] = None + StartAfter: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + OptionalObjectAttributes: Optional[Sequence[Literal["RestoreStatus"]]] = None + +class PartTypeDef(BaseModel): + PartNumber: Optional[int] = None + LastModified: Optional[datetime] = None + ETag: Optional[str] = None + Size: Optional[int] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + +class ListPartsRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + UploadId: str + MaxParts: Optional[int] = None + PartNumberMarker: Optional[int] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + +class MetadataEntryTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class ReplicationTimeValueTypeDef(BaseModel): + Minutes: Optional[int] = None + +class QueueConfigurationDeprecatedOutputTypeDef(BaseModel): + Id: Optional[str] = None + Event: Optional[EventType] = None + Events: Optional[List[EventType]] = None + Queue: Optional[str] = None + +class TopicConfigurationDeprecatedOutputTypeDef(BaseModel): + Id: Optional[str] = None + Events: Optional[List[EventType]] = None + Event: Optional[EventType] = None + Topic: Optional[str] = None + +class QueueConfigurationDeprecatedTypeDef(BaseModel): + Id: Optional[str] = None + Event: Optional[EventType] = None + Events: Optional[Sequence[EventType]] = None + Queue: Optional[str] = None + +class TopicConfigurationDeprecatedTypeDef(BaseModel): + Id: Optional[str] = None + Events: Optional[Sequence[EventType]] = None + Event: Optional[EventType] = None + Topic: Optional[str] = None + +class ObjectDownloadFileRequestTypeDef(BaseModel): + Filename: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class RestoreStatusTypeDef(BaseModel): + IsRestoreInProgress: Optional[bool] = None + RestoreExpiryDate: Optional[datetime] = None + +class ObjectUploadFileRequestTypeDef(BaseModel): + Filename: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class OwnershipControlsRuleTypeDef(BaseModel): + ObjectOwnership: ObjectOwnershipType + +class PartitionedPrefixTypeDef(BaseModel): + PartitionDateSource: Optional[PartitionDateSourceType] = None + +class ProgressTypeDef(BaseModel): + BytesScanned: Optional[int] = None + BytesProcessed: Optional[int] = None + BytesReturned: Optional[int] = None + +class PutBucketPolicyRequestBucketPolicyPutTypeDef(BaseModel): + Policy: str + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ConfirmRemoveSelfBucketAccess: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketPolicyRequestRequestTypeDef(BaseModel): + Bucket: str + Policy: str + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ConfirmRemoveSelfBucketAccess: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + +class RequestPaymentConfigurationTypeDef(BaseModel): + Payer: PayerType + +class PutBucketVersioningRequestBucketVersioningEnableTypeDef(BaseModel): + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + MFA: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class VersioningConfigurationTypeDef(BaseModel): + MFADelete: Optional[MFADeleteType] = None + Status: Optional[BucketVersioningStatusType] = None + +class PutBucketVersioningRequestBucketVersioningSuspendTypeDef(BaseModel): + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + MFA: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class RecordsEventTypeDef(BaseModel): + Payload: Optional[bytes] = None + +class RedirectTypeDef(BaseModel): + HostName: Optional[str] = None + HttpRedirectCode: Optional[str] = None + Protocol: Optional[ProtocolType] = None + ReplaceKeyPrefixWith: Optional[str] = None + ReplaceKeyWith: Optional[str] = None + +class ReplicaModificationsTypeDef(BaseModel): + Status: ReplicaModificationsStatusType + +class RequestProgressTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class TransitionExtraExtraOutputTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + +class ScanRangeTypeDef(BaseModel): + Start: Optional[int] = None + End: Optional[int] = None + +class ServerSideEncryptionByDefaultTypeDef(BaseModel): + SSEAlgorithm: ServerSideEncryptionType + KMSMasterKeyID: Optional[str] = None + +class SseKmsEncryptedObjectsTypeDef(BaseModel): + Status: SseKmsEncryptedObjectsStatusType + +class StatsTypeDef(BaseModel): + BytesScanned: Optional[int] = None + BytesProcessed: Optional[int] = None + BytesReturned: Optional[int] = None + +class AbortMultipartUploadOutputTypeDef(BaseModel): + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class CompleteMultipartUploadOutputTypeDef(BaseModel): + Location: str + Bucket: str + Key: str + Expiration: str + ETag: str + ChecksumCRC32: str + ChecksumCRC32C: str + ChecksumSHA1: str + ChecksumSHA256: str + ServerSideEncryption: ServerSideEncryptionType + VersionId: str + SSEKMSKeyId: str + BucketKeyEnabled: bool + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBucketOutputTypeDef(BaseModel): + Location: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMultipartUploadOutputTypeDef(BaseModel): + AbortDate: datetime + AbortRuleId: str + Bucket: str + Key: str + UploadId: str + ServerSideEncryption: ServerSideEncryptionType + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + SSEKMSEncryptionContext: str + BucketKeyEnabled: bool + RequestCharged: Literal["requester"] + ChecksumAlgorithm: ChecksumAlgorithmType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteObjectOutputTypeDef(BaseModel): + DeleteMarker: bool + VersionId: str + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteObjectTaggingOutputTypeDef(BaseModel): + VersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketAccelerateConfigurationOutputTypeDef(BaseModel): + Status: BucketAccelerateStatusType + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketLocationOutputTypeDef(BaseModel): + LocationConstraint: BucketLocationConstraintType + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketPolicyOutputTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketRequestPaymentOutputTypeDef(BaseModel): + Payer: PayerType + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketVersioningOutputTypeDef(BaseModel): + Status: BucketVersioningStatusType + MFADelete: MFADeleteStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectOutputTypeDef(BaseModel): + Body: StreamingBody + DeleteMarker: bool + AcceptRanges: str + Expiration: str + Restore: str + LastModified: datetime + ContentLength: int + ETag: str + ChecksumCRC32: str + ChecksumCRC32C: str + ChecksumSHA1: str + ChecksumSHA256: str + MissingMeta: int + VersionId: str + CacheControl: str + ContentDisposition: str + ContentEncoding: str + ContentLanguage: str + ContentRange: str + ContentType: str + Expires: datetime + WebsiteRedirectLocation: str + ServerSideEncryption: ServerSideEncryptionType + Metadata: Dict[str, str] + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + BucketKeyEnabled: bool + StorageClass: StorageClassType + RequestCharged: Literal["requester"] + ReplicationStatus: ReplicationStatusType + PartsCount: int + TagCount: int + ObjectLockMode: ObjectLockModeType + ObjectLockRetainUntilDate: datetime + ObjectLockLegalHoldStatus: ObjectLockLegalHoldStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectTorrentOutputTypeDef(BaseModel): + Body: StreamingBody + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class HeadBucketOutputTypeDef(BaseModel): + BucketLocationType: Literal["AvailabilityZone"] + BucketLocationName: str + BucketRegion: str + AccessPointAlias: bool + ResponseMetadata: ResponseMetadataTypeDef + +class HeadObjectOutputTypeDef(BaseModel): + DeleteMarker: bool + AcceptRanges: str + Expiration: str + Restore: str + ArchiveStatus: ArchiveStatusType + LastModified: datetime + ContentLength: int + ChecksumCRC32: str + ChecksumCRC32C: str + ChecksumSHA1: str + ChecksumSHA256: str + ETag: str + MissingMeta: int + VersionId: str + CacheControl: str + ContentDisposition: str + ContentEncoding: str + ContentLanguage: str + ContentType: str + Expires: datetime + WebsiteRedirectLocation: str + ServerSideEncryption: ServerSideEncryptionType + Metadata: Dict[str, str] + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + BucketKeyEnabled: bool + StorageClass: StorageClassType + RequestCharged: Literal["requester"] + ReplicationStatus: ReplicationStatusType + PartsCount: int + ObjectLockMode: ObjectLockModeType + ObjectLockRetainUntilDate: datetime + ObjectLockLegalHoldStatus: ObjectLockLegalHoldStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectAclOutputTypeDef(BaseModel): + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectLegalHoldOutputTypeDef(BaseModel): + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectLockConfigurationOutputTypeDef(BaseModel): + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectOutputTypeDef(BaseModel): + Expiration: str + ETag: str + ChecksumCRC32: str + ChecksumCRC32C: str + ChecksumSHA1: str + ChecksumSHA256: str + ServerSideEncryption: ServerSideEncryptionType + VersionId: str + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + SSEKMSEncryptionContext: str + BucketKeyEnabled: bool + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectRetentionOutputTypeDef(BaseModel): + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectTaggingOutputTypeDef(BaseModel): + VersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreObjectOutputTypeDef(BaseModel): + RequestCharged: Literal["requester"] + RestoreOutputPath: str + ResponseMetadata: ResponseMetadataTypeDef + +class UploadPartOutputTypeDef(BaseModel): + ServerSideEncryption: ServerSideEncryptionType + ETag: str + ChecksumCRC32: str + ChecksumCRC32C: str + ChecksumSHA1: str + ChecksumSHA256: str + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + BucketKeyEnabled: bool + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketAccelerateConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + AccelerateConfiguration: AccelerateConfigurationTypeDef + ExpectedBucketOwner: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class DeleteMarkerEntryTypeDef(BaseModel): + Owner: Optional[OwnerTypeDef] = None + Key: Optional[str] = None + VersionId: Optional[str] = None + IsLatest: Optional[bool] = None + LastModified: Optional[datetime] = None + +class AnalyticsAndOperatorOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class AnalyticsAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetBucketTaggingOutputTypeDef(BaseModel): + TagSet: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectTaggingOutputTypeDef(BaseModel): + VersionId: str + TagSet: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IntelligentTieringAndOperatorOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class IntelligentTieringAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class LifecycleRuleAndOperatorExtraOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + +class LifecycleRuleAndOperatorOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + +class LifecycleRuleAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + +class MetricsAndOperatorOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + AccessPointArn: Optional[str] = None + +class MetricsAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AccessPointArn: Optional[str] = None + +class ReplicationRuleAndOperatorOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class ReplicationRuleAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TaggingTypeDef(BaseModel): + TagSet: Sequence[TagTypeDef] + +class AnalyticsExportDestinationTypeDef(BaseModel): + S3BucketDestination: AnalyticsS3BucketDestinationTypeDef + +class UploadPartRequestMultipartUploadPartUploadTypeDef(BaseModel): + Body: Optional[BlobTypeDef] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class UploadPartRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + PartNumber: int + UploadId: str + Body: Optional[BlobTypeDef] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + +class BucketCopyRequestTypeDef(BaseModel): + CopySource: CopySourceTypeDef + Key: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + SourceClient: Optional[Optional[BaseClient]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ClientCopyRequestTypeDef(BaseModel): + CopySource: CopySourceTypeDef + Bucket: str + Key: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + SourceClient: Optional[Optional[BaseClient]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ObjectCopyRequestTypeDef(BaseModel): + CopySource: CopySourceTypeDef + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + SourceClient: Optional[Optional[BaseClient]] = None + Config: Optional[Optional[TransferConfig]] = None + +class BucketDownloadFileobjRequestTypeDef(BaseModel): + Key: str + Fileobj: FileobjTypeDef + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class BucketUploadFileobjRequestTypeDef(BaseModel): + Fileobj: FileobjTypeDef + Key: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ClientDownloadFileobjRequestTypeDef(BaseModel): + Bucket: str + Key: str + Fileobj: FileobjTypeDef + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ClientUploadFileobjRequestTypeDef(BaseModel): + Fileobj: FileobjTypeDef + Bucket: str + Key: str + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ObjectDownloadFileobjRequestTypeDef(BaseModel): + Fileobj: FileobjTypeDef + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ObjectUploadFileobjRequestTypeDef(BaseModel): + Fileobj: FileobjTypeDef + ExtraArgs: Optional[Optional[Dict[str, Any]]] = None + Callback: Optional[Optional[Callable[..., Any]]] = None + Config: Optional[Optional[TransferConfig]] = None + +class ListBucketsOutputTypeDef(BaseModel): + Buckets: List[BucketTypeDef] + Owner: OwnerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDirectoryBucketsOutputTypeDef(BaseModel): + Buckets: List[BucketTypeDef] + ContinuationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CORSConfigurationTypeDef(BaseModel): + CORSRules: Sequence[CORSRuleTypeDef] + +class GetBucketCorsOutputTypeDef(BaseModel): + CORSRules: List[CORSRuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CompletedMultipartUploadTypeDef(BaseModel): + Parts: Optional[Sequence[CompletedPartTypeDef]] = None + +class CopyObjectOutputTypeDef(BaseModel): + CopyObjectResult: CopyObjectResultTypeDef + Expiration: str + CopySourceVersionId: str + VersionId: str + ServerSideEncryption: ServerSideEncryptionType + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + SSEKMSEncryptionContext: str + BucketKeyEnabled: bool + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class CopyObjectRequestObjectCopyFromTypeDef(BaseModel): + CopySource: str + ACL: Optional[ObjectCannedACLType] = None + CacheControl: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentType: Optional[str] = None + CopySourceIfMatch: Optional[str] = None + CopySourceIfModifiedSince: Optional[TimestampTypeDef] = None + CopySourceIfNoneMatch: Optional[str] = None + CopySourceIfUnmodifiedSince: Optional[TimestampTypeDef] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + MetadataDirective: Optional[MetadataDirectiveType] = None + TaggingDirective: Optional[TaggingDirectiveType] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + CopySourceSSECustomerAlgorithm: Optional[str] = None + CopySourceSSECustomerKey: Optional[str] = None + CopySourceSSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + ExpectedSourceBucketOwner: Optional[str] = None + +class CopyObjectRequestObjectSummaryCopyFromTypeDef(BaseModel): + CopySource: str + ACL: Optional[ObjectCannedACLType] = None + CacheControl: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentType: Optional[str] = None + CopySourceIfMatch: Optional[str] = None + CopySourceIfModifiedSince: Optional[TimestampTypeDef] = None + CopySourceIfNoneMatch: Optional[str] = None + CopySourceIfUnmodifiedSince: Optional[TimestampTypeDef] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + MetadataDirective: Optional[MetadataDirectiveType] = None + TaggingDirective: Optional[TaggingDirectiveType] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + CopySourceSSECustomerAlgorithm: Optional[str] = None + CopySourceSSECustomerKey: Optional[str] = None + CopySourceSSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + ExpectedSourceBucketOwner: Optional[str] = None + +class CreateMultipartUploadRequestObjectInitiateMultipartUploadTypeDef(BaseModel): + ACL: Optional[ObjectCannedACLType] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentType: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class CreateMultipartUploadRequestObjectSummaryInitiateMultipartUploadTypeDef(BaseModel): + ACL: Optional[ObjectCannedACLType] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentType: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class CreateMultipartUploadRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + ACL: Optional[ObjectCannedACLType] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentType: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class GetObjectRequestObjectGetTypeDef(BaseModel): + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + VersionId: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + +class GetObjectRequestObjectSummaryGetTypeDef(BaseModel): + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + VersionId: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + +class GetObjectRequestObjectVersionGetTypeDef(BaseModel): + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + +class GetObjectRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + VersionId: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + +class HeadObjectRequestObjectVersionHeadTypeDef(BaseModel): + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + +class HeadObjectRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + VersionId: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + +class LifecycleExpirationTypeDef(BaseModel): + Date: Optional[TimestampTypeDef] = None + Days: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + +class ObjectLockRetentionTypeDef(BaseModel): + Mode: Optional[ObjectLockRetentionModeType] = None + RetainUntilDate: Optional[TimestampTypeDef] = None + +class PutObjectRequestBucketPutObjectTypeDef(BaseModel): + Key: str + ACL: Optional[ObjectCannedACLType] = None + Body: Optional[BlobTypeDef] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ContentType: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutObjectRequestObjectPutTypeDef(BaseModel): + ACL: Optional[ObjectCannedACLType] = None + Body: Optional[BlobTypeDef] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ContentType: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutObjectRequestObjectSummaryPutTypeDef(BaseModel): + ACL: Optional[ObjectCannedACLType] = None + Body: Optional[BlobTypeDef] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ContentType: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutObjectRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + ACL: Optional[ObjectCannedACLType] = None + Body: Optional[BlobTypeDef] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ContentType: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + +class TransitionTypeDef(BaseModel): + Date: Optional[TimestampTypeDef] = None + Days: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + +class WriteGetObjectResponseRequestRequestTypeDef(BaseModel): + RequestRoute: str + RequestToken: str + Body: Optional[BlobTypeDef] = None + StatusCode: Optional[int] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + AcceptRanges: Optional[str] = None + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentLength: Optional[int] = None + ContentRange: Optional[str] = None + ContentType: Optional[str] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + DeleteMarker: Optional[bool] = None + ETag: Optional[str] = None + Expires: Optional[TimestampTypeDef] = None + Expiration: Optional[str] = None + LastModified: Optional[TimestampTypeDef] = None + MissingMeta: Optional[int] = None + Metadata: Optional[Mapping[str, str]] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + PartsCount: Optional[int] = None + ReplicationStatus: Optional[ReplicationStatusType] = None + RequestCharged: Optional[Literal["requester"]] = None + Restore: Optional[str] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + SSECustomerAlgorithm: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + StorageClass: Optional[StorageClassType] = None + TagCount: Optional[int] = None + VersionId: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + +class UploadPartCopyOutputTypeDef(BaseModel): + CopySourceVersionId: str + CopyPartResult: CopyPartResultTypeDef + ServerSideEncryption: ServerSideEncryptionType + SSECustomerAlgorithm: str + SSECustomerKeyMD5: str + SSEKMSKeyId: str + BucketKeyEnabled: bool + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBucketConfigurationTypeDef(BaseModel): + LocationConstraint: Optional[BucketLocationConstraintType] = None + Location: Optional[LocationInfoTypeDef] = None + Bucket: Optional[BucketInfoTypeDef] = None + +class CreateSessionOutputTypeDef(BaseModel): + Credentials: SessionCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ObjectLockRuleTypeDef(BaseModel): + DefaultRetention: Optional[DefaultRetentionTypeDef] = None + +class DeleteObjectsOutputTypeDef(BaseModel): + Deleted: List[DeletedObjectTypeDef] + RequestCharged: Literal["requester"] + Errors: List[ErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTypeDef(BaseModel): + Objects: Sequence[ObjectIdentifierTypeDef] + Quiet: Optional[bool] = None + +class S3KeyFilterExtraOutputTypeDef(BaseModel): + FilterRules: Optional[List[FilterRuleTypeDef]] = None + +class S3KeyFilterOutputTypeDef(BaseModel): + FilterRules: Optional[List[FilterRuleTypeDef]] = None + +class S3KeyFilterTypeDef(BaseModel): + FilterRules: Optional[Sequence[FilterRuleTypeDef]] = None + +class GetBucketPolicyStatusOutputTypeDef(BaseModel): + PolicyStatus: PolicyStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectAttributesPartsTypeDef(BaseModel): + TotalPartsCount: Optional[int] = None + PartNumberMarker: Optional[int] = None + NextPartNumberMarker: Optional[int] = None + MaxParts: Optional[int] = None + IsTruncated: Optional[bool] = None + Parts: Optional[List[ObjectPartTypeDef]] = None + +class GetObjectLegalHoldOutputTypeDef(BaseModel): + LegalHold: ObjectLockLegalHoldTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectLegalHoldRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + LegalHold: Optional[ObjectLockLegalHoldTypeDef] = None + RequestPayer: Optional[Literal["requester"]] = None + VersionId: Optional[str] = None + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class GetObjectRetentionOutputTypeDef(BaseModel): + Retention: ObjectLockRetentionOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPublicAccessBlockOutputTypeDef(BaseModel): + PublicAccessBlockConfiguration: PublicAccessBlockConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutPublicAccessBlockRequestRequestTypeDef(BaseModel): + Bucket: str + PublicAccessBlockConfiguration: PublicAccessBlockConfigurationTypeDef + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class GrantTypeDef(BaseModel): + Grantee: Optional[GranteeTypeDef] = None + Permission: Optional[PermissionType] = None + +class TargetGrantTypeDef(BaseModel): + Grantee: Optional[GranteeTypeDef] = None + Permission: Optional[BucketLogsPermissionType] = None + +class HeadBucketRequestBucketExistsWaitTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class HeadBucketRequestBucketNotExistsWaitTypeDef(BaseModel): + Bucket: str + ExpectedBucketOwner: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class HeadObjectRequestObjectExistsWaitTypeDef(BaseModel): + Bucket: str + Key: str + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + VersionId: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class HeadObjectRequestObjectNotExistsWaitTypeDef(BaseModel): + Bucket: str + Key: str + IfMatch: Optional[str] = None + IfModifiedSince: Optional[TimestampTypeDef] = None + IfNoneMatch: Optional[str] = None + IfUnmodifiedSince: Optional[TimestampTypeDef] = None + Range: Optional[str] = None + ResponseCacheControl: Optional[str] = None + ResponseContentDisposition: Optional[str] = None + ResponseContentEncoding: Optional[str] = None + ResponseContentLanguage: Optional[str] = None + ResponseContentType: Optional[str] = None + ResponseExpires: Optional[TimestampTypeDef] = None + VersionId: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PartNumber: Optional[int] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumMode: Optional[Literal["ENABLED"]] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class MultipartUploadTypeDef(BaseModel): + UploadId: Optional[str] = None + Key: Optional[str] = None + Initiated: Optional[datetime] = None + StorageClass: Optional[StorageClassType] = None + Owner: Optional[OwnerTypeDef] = None + Initiator: Optional[InitiatorTypeDef] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class InputSerializationTypeDef(BaseModel): + CSV: Optional[CSVInputTypeDef] = None + CompressionType: Optional[CompressionTypeType] = None + JSON: Optional[JSONInputTypeDef] = None + Parquet: Optional[Mapping[str, Any]] = None + +class InventoryEncryptionOutputTypeDef(BaseModel): + SSES3: Optional[Dict[str, Any]] = None + SSEKMS: Optional[SSEKMSTypeDef] = None + +class InventoryEncryptionTypeDef(BaseModel): + SSES3: Optional[Mapping[str, Any]] = None + SSEKMS: Optional[SSEKMSTypeDef] = None + +class OutputSerializationTypeDef(BaseModel): + CSV: Optional[CSVOutputTypeDef] = None + JSON: Optional[JSONOutputTypeDef] = None + +class RuleOutputTypeDef(BaseModel): + Prefix: str + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationOutputTypeDef] = None + ID: Optional[str] = None + Transition: Optional[TransitionOutputTypeDef] = None + NoncurrentVersionTransition: Optional[NoncurrentVersionTransitionTypeDef] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class ListDirectoryBucketsRequestListDirectoryBucketsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMultipartUploadsRequestListMultipartUploadsPaginateTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + Prefix: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectVersionsRequestListObjectVersionsPaginateTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + Prefix: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + OptionalObjectAttributes: Optional[Sequence[Literal["RestoreStatus"]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectsRequestListObjectsPaginateTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + Prefix: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + OptionalObjectAttributes: Optional[Sequence[Literal["RestoreStatus"]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListObjectsV2RequestListObjectsV2PaginateTypeDef(BaseModel): + Bucket: str + Delimiter: Optional[str] = None + EncodingType: Optional[Literal["url"]] = None + Prefix: Optional[str] = None + FetchOwner: Optional[bool] = None + StartAfter: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + OptionalObjectAttributes: Optional[Sequence[Literal["RestoreStatus"]]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPartsRequestListPartsPaginateTypeDef(BaseModel): + Bucket: str + Key: str + UploadId: str + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPartsOutputTypeDef(BaseModel): + AbortDate: datetime + AbortRuleId: str + Bucket: str + Key: str + UploadId: str + PartNumberMarker: int + NextPartNumberMarker: int + MaxParts: int + IsTruncated: bool + Parts: List[PartTypeDef] + Initiator: InitiatorTypeDef + Owner: OwnerTypeDef + StorageClass: StorageClassType + RequestCharged: Literal["requester"] + ChecksumAlgorithm: ChecksumAlgorithmType + ResponseMetadata: ResponseMetadataTypeDef + +class MetricsTypeDef(BaseModel): + Status: MetricsStatusType + EventThreshold: Optional[ReplicationTimeValueTypeDef] = None + +class ReplicationTimeTypeDef(BaseModel): + Status: ReplicationTimeStatusType + Time: ReplicationTimeValueTypeDef + +class NotificationConfigurationDeprecatedResponseTypeDef(BaseModel): + TopicConfiguration: TopicConfigurationDeprecatedOutputTypeDef + QueueConfiguration: QueueConfigurationDeprecatedOutputTypeDef + CloudFunctionConfiguration: CloudFunctionConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class NotificationConfigurationDeprecatedTypeDef(BaseModel): + TopicConfiguration: Optional[TopicConfigurationDeprecatedTypeDef] = None + QueueConfiguration: Optional[QueueConfigurationDeprecatedTypeDef] = None + CloudFunctionConfiguration: Optional[CloudFunctionConfigurationTypeDef] = None + +class ObjectTypeDef(BaseModel): + Key: Optional[str] = None + LastModified: Optional[datetime] = None + ETag: Optional[str] = None + ChecksumAlgorithm: Optional[List[ChecksumAlgorithmType]] = None + Size: Optional[int] = None + StorageClass: Optional[ObjectStorageClassType] = None + Owner: Optional[OwnerTypeDef] = None + RestoreStatus: Optional[RestoreStatusTypeDef] = None + +class ObjectVersionTypeDef(BaseModel): + ETag: Optional[str] = None + ChecksumAlgorithm: Optional[List[ChecksumAlgorithmType]] = None + Size: Optional[int] = None + StorageClass: Optional[Literal["STANDARD"]] = None + Key: Optional[str] = None + VersionId: Optional[str] = None + IsLatest: Optional[bool] = None + LastModified: Optional[datetime] = None + Owner: Optional[OwnerTypeDef] = None + RestoreStatus: Optional[RestoreStatusTypeDef] = None + +class OwnershipControlsOutputTypeDef(BaseModel): + Rules: List[OwnershipControlsRuleTypeDef] + +class OwnershipControlsTypeDef(BaseModel): + Rules: Sequence[OwnershipControlsRuleTypeDef] + +class TargetObjectKeyFormatExtraOutputTypeDef(BaseModel): + SimplePrefix: Optional[Dict[str, Any]] = None + PartitionedPrefix: Optional[PartitionedPrefixTypeDef] = None + +class TargetObjectKeyFormatOutputTypeDef(BaseModel): + SimplePrefix: Optional[Dict[str, Any]] = None + PartitionedPrefix: Optional[PartitionedPrefixTypeDef] = None + +class TargetObjectKeyFormatTypeDef(BaseModel): + SimplePrefix: Optional[Mapping[str, Any]] = None + PartitionedPrefix: Optional[PartitionedPrefixTypeDef] = None + +class ProgressEventTypeDef(BaseModel): + Details: Optional[ProgressTypeDef] = None + +class PutBucketRequestPaymentRequestBucketRequestPaymentPutTypeDef(BaseModel): + RequestPaymentConfiguration: RequestPaymentConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketRequestPaymentRequestRequestTypeDef(BaseModel): + Bucket: str + RequestPaymentConfiguration: RequestPaymentConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketVersioningRequestBucketVersioningPutTypeDef(BaseModel): + VersioningConfiguration: VersioningConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + MFA: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketVersioningRequestRequestTypeDef(BaseModel): + Bucket: str + VersioningConfiguration: VersioningConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + MFA: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class RoutingRuleTypeDef(BaseModel): + Redirect: RedirectTypeDef + Condition: Optional[ConditionTypeDef] = None + +class RuleExtraOutputTypeDef(BaseModel): + Prefix: str + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationExtraExtraOutputTypeDef] = None + ID: Optional[str] = None + Transition: Optional[TransitionExtraExtraOutputTypeDef] = None + NoncurrentVersionTransition: Optional[NoncurrentVersionTransitionTypeDef] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class ServerSideEncryptionRuleTypeDef(BaseModel): + ApplyServerSideEncryptionByDefault: Optional[ServerSideEncryptionByDefaultTypeDef] = None + BucketKeyEnabled: Optional[bool] = None + +class SourceSelectionCriteriaTypeDef(BaseModel): + SseKmsEncryptedObjects: Optional[SseKmsEncryptedObjectsTypeDef] = None + ReplicaModifications: Optional[ReplicaModificationsTypeDef] = None + +class StatsEventTypeDef(BaseModel): + Details: Optional[StatsTypeDef] = None + +class AnalyticsFilterOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + And: Optional[AnalyticsAndOperatorOutputTypeDef] = None + +class AnalyticsFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + And: Optional[AnalyticsAndOperatorTypeDef] = None + +class IntelligentTieringFilterOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + And: Optional[IntelligentTieringAndOperatorOutputTypeDef] = None + +class IntelligentTieringFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + And: Optional[IntelligentTieringAndOperatorTypeDef] = None + +class LifecycleRuleFilterExtraOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + And: Optional[LifecycleRuleAndOperatorExtraOutputTypeDef] = None + +class LifecycleRuleFilterOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + And: Optional[LifecycleRuleAndOperatorOutputTypeDef] = None + +class LifecycleRuleFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + And: Optional[LifecycleRuleAndOperatorTypeDef] = None + +class MetricsFilterOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + AccessPointArn: Optional[str] = None + And: Optional[MetricsAndOperatorOutputTypeDef] = None + +class MetricsFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + AccessPointArn: Optional[str] = None + And: Optional[MetricsAndOperatorTypeDef] = None + +class ReplicationRuleFilterOutputTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + And: Optional[ReplicationRuleAndOperatorOutputTypeDef] = None + +class ReplicationRuleFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[TagTypeDef] = None + And: Optional[ReplicationRuleAndOperatorTypeDef] = None + +class PutBucketTaggingRequestBucketTaggingPutTypeDef(BaseModel): + Tagging: TaggingTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketTaggingRequestRequestTypeDef(BaseModel): + Bucket: str + Tagging: TaggingTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutObjectTaggingRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + Tagging: TaggingTypeDef + VersionId: Optional[str] = None + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + +class StorageClassAnalysisDataExportTypeDef(BaseModel): + OutputSchemaVersion: Literal["V_1"] + Destination: AnalyticsExportDestinationTypeDef + +class CopyObjectRequestRequestTypeDef(BaseModel): + Bucket: str + CopySource: CopySourceOrStrTypeDef + Key: str + ACL: Optional[ObjectCannedACLType] = None + CacheControl: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + ContentType: Optional[str] = None + CopySourceIfMatch: Optional[str] = None + CopySourceIfModifiedSince: Optional[TimestampTypeDef] = None + CopySourceIfNoneMatch: Optional[str] = None + CopySourceIfUnmodifiedSince: Optional[TimestampTypeDef] = None + Expires: Optional[TimestampTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWriteACP: Optional[str] = None + Metadata: Optional[Mapping[str, str]] = None + MetadataDirective: Optional[MetadataDirectiveType] = None + TaggingDirective: Optional[TaggingDirectiveType] = None + ServerSideEncryption: Optional[ServerSideEncryptionType] = None + StorageClass: Optional[StorageClassType] = None + WebsiteRedirectLocation: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + SSEKMSEncryptionContext: Optional[str] = None + BucketKeyEnabled: Optional[bool] = None + CopySourceSSECustomerAlgorithm: Optional[str] = None + CopySourceSSECustomerKey: Optional[str] = None + CopySourceSSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + Tagging: Optional[str] = None + ObjectLockMode: Optional[ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + ObjectLockLegalHoldStatus: Optional[ObjectLockLegalHoldStatusType] = None + ExpectedBucketOwner: Optional[str] = None + ExpectedSourceBucketOwner: Optional[str] = None + +class UploadPartCopyRequestMultipartUploadPartCopyFromTypeDef(BaseModel): + CopySource: CopySourceOrStrTypeDef + CopySourceIfMatch: Optional[str] = None + CopySourceIfModifiedSince: Optional[TimestampTypeDef] = None + CopySourceIfNoneMatch: Optional[str] = None + CopySourceIfUnmodifiedSince: Optional[TimestampTypeDef] = None + CopySourceRange: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + CopySourceSSECustomerAlgorithm: Optional[str] = None + CopySourceSSECustomerKey: Optional[str] = None + CopySourceSSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + ExpectedSourceBucketOwner: Optional[str] = None + +class UploadPartCopyRequestRequestTypeDef(BaseModel): + Bucket: str + CopySource: CopySourceOrStrTypeDef + Key: str + PartNumber: int + UploadId: str + CopySourceIfMatch: Optional[str] = None + CopySourceIfModifiedSince: Optional[TimestampTypeDef] = None + CopySourceIfNoneMatch: Optional[str] = None + CopySourceIfUnmodifiedSince: Optional[TimestampTypeDef] = None + CopySourceRange: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + CopySourceSSECustomerAlgorithm: Optional[str] = None + CopySourceSSECustomerKey: Optional[str] = None + CopySourceSSECustomerKeyMD5: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + ExpectedSourceBucketOwner: Optional[str] = None + +class PutBucketCorsRequestBucketCorsPutTypeDef(BaseModel): + CORSConfiguration: CORSConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketCorsRequestRequestTypeDef(BaseModel): + Bucket: str + CORSConfiguration: CORSConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class CompleteMultipartUploadRequestMultipartUploadCompleteTypeDef(BaseModel): + MultipartUpload: Optional[CompletedMultipartUploadTypeDef] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + +class CompleteMultipartUploadRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + UploadId: str + MultipartUpload: Optional[CompletedMultipartUploadTypeDef] = None + ChecksumCRC32: Optional[str] = None + ChecksumCRC32C: Optional[str] = None + ChecksumSHA1: Optional[str] = None + ChecksumSHA256: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + ExpectedBucketOwner: Optional[str] = None + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + +class PutObjectRetentionRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + Retention: Optional[ObjectLockRetentionTypeDef] = None + RequestPayer: Optional[Literal["requester"]] = None + VersionId: Optional[str] = None + BypassGovernanceRetention: Optional[bool] = None + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class RuleTypeDef(BaseModel): + Prefix: str + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationTypeDef] = None + ID: Optional[str] = None + Transition: Optional[TransitionTypeDef] = None + NoncurrentVersionTransition: Optional[NoncurrentVersionTransitionTypeDef] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class CreateBucketRequestBucketCreateTypeDef(BaseModel): + ACL: Optional[BucketCannedACLType] = None + CreateBucketConfiguration: Optional[CreateBucketConfigurationTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + ObjectLockEnabledForBucket: Optional[bool] = None + ObjectOwnership: Optional[ObjectOwnershipType] = None + +class CreateBucketRequestRequestTypeDef(BaseModel): + Bucket: str + ACL: Optional[BucketCannedACLType] = None + CreateBucketConfiguration: Optional[CreateBucketConfigurationTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + ObjectLockEnabledForBucket: Optional[bool] = None + ObjectOwnership: Optional[ObjectOwnershipType] = None + +class CreateBucketRequestServiceResourceCreateBucketTypeDef(BaseModel): + Bucket: str + ACL: Optional[BucketCannedACLType] = None + CreateBucketConfiguration: Optional[CreateBucketConfigurationTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + ObjectLockEnabledForBucket: Optional[bool] = None + ObjectOwnership: Optional[ObjectOwnershipType] = None + +class ObjectLockConfigurationTypeDef(BaseModel): + ObjectLockEnabled: Optional[Literal["Enabled"]] = None + Rule: Optional[ObjectLockRuleTypeDef] = None + +class DeleteObjectsRequestBucketDeleteObjectsTypeDef(BaseModel): + Delete: DeleteTypeDef + MFA: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + BypassGovernanceRetention: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class DeleteObjectsRequestRequestTypeDef(BaseModel): + Bucket: str + Delete: DeleteTypeDef + MFA: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + BypassGovernanceRetention: Optional[bool] = None + ExpectedBucketOwner: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + +class NotificationConfigurationFilterExtraOutputTypeDef(BaseModel): + Key: Optional[S3KeyFilterExtraOutputTypeDef] = None + +class NotificationConfigurationFilterOutputTypeDef(BaseModel): + Key: Optional[S3KeyFilterOutputTypeDef] = None + +class NotificationConfigurationFilterTypeDef(BaseModel): + Key: Optional[S3KeyFilterTypeDef] = None + +class GetObjectAttributesOutputTypeDef(BaseModel): + DeleteMarker: bool + LastModified: datetime + VersionId: str + RequestCharged: Literal["requester"] + ETag: str + Checksum: ChecksumTypeDef + ObjectParts: GetObjectAttributesPartsTypeDef + StorageClass: StorageClassType + ObjectSize: int + ResponseMetadata: ResponseMetadataTypeDef + +class AccessControlPolicyTypeDef(BaseModel): + Grants: Optional[Sequence[GrantTypeDef]] = None + Owner: Optional[OwnerTypeDef] = None + +class GetBucketAclOutputTypeDef(BaseModel): + Owner: OwnerTypeDef + Grants: List[GrantTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetObjectAclOutputTypeDef(BaseModel): + Owner: OwnerTypeDef + Grants: List[GrantTypeDef] + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + +class S3LocationTypeDef(BaseModel): + BucketName: str + Prefix: str + Encryption: Optional[EncryptionTypeDef] = None + CannedACL: Optional[ObjectCannedACLType] = None + AccessControlList: Optional[Sequence[GrantTypeDef]] = None + Tagging: Optional[TaggingTypeDef] = None + UserMetadata: Optional[Sequence[MetadataEntryTypeDef]] = None + StorageClass: Optional[StorageClassType] = None + +class ListMultipartUploadsOutputTypeDef(BaseModel): + Bucket: str + KeyMarker: str + UploadIdMarker: str + NextKeyMarker: str + Prefix: str + Delimiter: str + NextUploadIdMarker: str + MaxUploads: int + IsTruncated: bool + Uploads: List[MultipartUploadTypeDef] + EncodingType: Literal["url"] + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + CommonPrefixes: Optional[List[CommonPrefixTypeDef]] = None + +class InventoryS3BucketDestinationOutputTypeDef(BaseModel): + Bucket: str + Format: InventoryFormatType + AccountId: Optional[str] = None + Prefix: Optional[str] = None + Encryption: Optional[InventoryEncryptionOutputTypeDef] = None + +class InventoryS3BucketDestinationTypeDef(BaseModel): + Bucket: str + Format: InventoryFormatType + AccountId: Optional[str] = None + Prefix: Optional[str] = None + Encryption: Optional[InventoryEncryptionTypeDef] = None + +class SelectObjectContentRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + Expression: str + ExpressionType: Literal["SQL"] + InputSerialization: InputSerializationTypeDef + OutputSerialization: OutputSerializationTypeDef + SSECustomerAlgorithm: Optional[str] = None + SSECustomerKey: Optional[str] = None + SSECustomerKeyMD5: Optional[str] = None + RequestProgress: Optional[RequestProgressTypeDef] = None + ScanRange: Optional[ScanRangeTypeDef] = None + ExpectedBucketOwner: Optional[str] = None + +class SelectParametersTypeDef(BaseModel): + InputSerialization: InputSerializationTypeDef + ExpressionType: Literal["SQL"] + Expression: str + OutputSerialization: OutputSerializationTypeDef + +class GetBucketLifecycleOutputTypeDef(BaseModel): + Rules: List[RuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DestinationTypeDef(BaseModel): + Bucket: str + Account: Optional[str] = None + StorageClass: Optional[StorageClassType] = None + AccessControlTranslation: Optional[AccessControlTranslationTypeDef] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + ReplicationTime: Optional[ReplicationTimeTypeDef] = None + Metrics: Optional[MetricsTypeDef] = None + +class PutBucketNotificationRequestRequestTypeDef(BaseModel): + Bucket: str + NotificationConfiguration: NotificationConfigurationDeprecatedTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class ListObjectsOutputTypeDef(BaseModel): + IsTruncated: bool + Marker: str + NextMarker: str + Name: str + Prefix: str + Delimiter: str + MaxKeys: int + EncodingType: Literal["url"] + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + Contents: Optional[List[ObjectTypeDef]] = None + CommonPrefixes: Optional[List[CommonPrefixTypeDef]] = None + +class ListObjectsV2OutputTypeDef(BaseModel): + IsTruncated: bool + Name: str + Prefix: str + Delimiter: str + MaxKeys: int + EncodingType: Literal["url"] + KeyCount: int + ContinuationToken: str + NextContinuationToken: str + StartAfter: str + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + Contents: Optional[List[ObjectTypeDef]] = None + CommonPrefixes: Optional[List[CommonPrefixTypeDef]] = None + +class ListObjectVersionsOutputTypeDef(BaseModel): + IsTruncated: bool + KeyMarker: str + VersionIdMarker: str + NextKeyMarker: str + NextVersionIdMarker: str + Versions: List[ObjectVersionTypeDef] + DeleteMarkers: List[DeleteMarkerEntryTypeDef] + Name: str + Prefix: str + Delimiter: str + MaxKeys: int + EncodingType: Literal["url"] + RequestCharged: Literal["requester"] + ResponseMetadata: ResponseMetadataTypeDef + CommonPrefixes: Optional[List[CommonPrefixTypeDef]] = None + +class GetBucketOwnershipControlsOutputTypeDef(BaseModel): + OwnershipControls: OwnershipControlsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketOwnershipControlsRequestRequestTypeDef(BaseModel): + Bucket: str + OwnershipControls: OwnershipControlsTypeDef + ContentMD5: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class LoggingEnabledExtraOutputTypeDef(BaseModel): + TargetBucket: str + TargetPrefix: str + TargetGrants: Optional[List[TargetGrantTypeDef]] = None + TargetObjectKeyFormat: Optional[TargetObjectKeyFormatExtraOutputTypeDef] = None + +class LoggingEnabledOutputTypeDef(BaseModel): + TargetBucket: str + TargetPrefix: str + TargetGrants: Optional[List[TargetGrantTypeDef]] = None + TargetObjectKeyFormat: Optional[TargetObjectKeyFormatOutputTypeDef] = None + +class LoggingEnabledTypeDef(BaseModel): + TargetBucket: str + TargetPrefix: str + TargetGrants: Optional[Sequence[TargetGrantTypeDef]] = None + TargetObjectKeyFormat: Optional[TargetObjectKeyFormatTypeDef] = None + +class GetBucketWebsiteOutputTypeDef(BaseModel): + RedirectAllRequestsTo: RedirectAllRequestsToTypeDef + IndexDocument: IndexDocumentTypeDef + ErrorDocument: ErrorDocumentTypeDef + RoutingRules: List[RoutingRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class WebsiteConfigurationTypeDef(BaseModel): + ErrorDocument: Optional[ErrorDocumentTypeDef] = None + IndexDocument: Optional[IndexDocumentTypeDef] = None + RedirectAllRequestsTo: Optional[RedirectAllRequestsToTypeDef] = None + RoutingRules: Optional[Sequence[RoutingRuleTypeDef]] = None + +class ServerSideEncryptionConfigurationOutputTypeDef(BaseModel): + Rules: List[ServerSideEncryptionRuleTypeDef] + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + Rules: Sequence[ServerSideEncryptionRuleTypeDef] + +class SelectObjectContentEventStreamTypeDef(BaseModel): + Records: Optional[RecordsEventTypeDef] = None + Stats: Optional[StatsEventTypeDef] = None + Progress: Optional[ProgressEventTypeDef] = None + Cont: Optional[Dict[str, Any]] = None + End: Optional[Dict[str, Any]] = None + +class IntelligentTieringConfigurationOutputTypeDef(BaseModel): + Id: str + Status: IntelligentTieringStatusType + Tierings: List[TieringTypeDef] + Filter: Optional[IntelligentTieringFilterOutputTypeDef] = None + +class IntelligentTieringConfigurationTypeDef(BaseModel): + Id: str + Status: IntelligentTieringStatusType + Tierings: Sequence[TieringTypeDef] + Filter: Optional[IntelligentTieringFilterTypeDef] = None + +class LifecycleRuleExtraOutputTypeDef(BaseModel): + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationExtraOutputTypeDef] = None + ID: Optional[str] = None + Prefix: Optional[str] = None + Filter: Optional[LifecycleRuleFilterExtraOutputTypeDef] = None + Transitions: Optional[List[TransitionExtraOutputTypeDef]] = None + NoncurrentVersionTransitions: Optional[List[NoncurrentVersionTransitionTypeDef]] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class LifecycleRuleOutputTypeDef(BaseModel): + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationOutputTypeDef] = None + ID: Optional[str] = None + Prefix: Optional[str] = None + Filter: Optional[LifecycleRuleFilterOutputTypeDef] = None + Transitions: Optional[List[TransitionOutputTypeDef]] = None + NoncurrentVersionTransitions: Optional[List[NoncurrentVersionTransitionTypeDef]] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class LifecycleRuleTypeDef(BaseModel): + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationTypeDef] = None + ID: Optional[str] = None + Prefix: Optional[str] = None + Filter: Optional[LifecycleRuleFilterTypeDef] = None + Transitions: Optional[Sequence[TransitionTypeDef]] = None + NoncurrentVersionTransitions: Optional[Sequence[NoncurrentVersionTransitionTypeDef]] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class MetricsConfigurationOutputTypeDef(BaseModel): + Id: str + Filter: Optional[MetricsFilterOutputTypeDef] = None + +class MetricsConfigurationTypeDef(BaseModel): + Id: str + Filter: Optional[MetricsFilterTypeDef] = None + +class StorageClassAnalysisTypeDef(BaseModel): + DataExport: Optional[StorageClassAnalysisDataExportTypeDef] = None + +class LifecycleConfigurationTypeDef(BaseModel): + Rules: Sequence[RuleTypeDef] + +class GetObjectLockConfigurationOutputTypeDef(BaseModel): + ObjectLockConfiguration: ObjectLockConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutObjectLockConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + ObjectLockConfiguration: Optional[ObjectLockConfigurationTypeDef] = None + RequestPayer: Optional[Literal["requester"]] = None + Token: Optional[str] = None + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class LambdaFunctionConfigurationExtraOutputTypeDef(BaseModel): + LambdaFunctionArn: str + Events: List[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterExtraOutputTypeDef] = None + +class QueueConfigurationExtraOutputTypeDef(BaseModel): + QueueArn: str + Events: List[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterExtraOutputTypeDef] = None + +class TopicConfigurationExtraOutputTypeDef(BaseModel): + TopicArn: str + Events: List[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterExtraOutputTypeDef] = None + +class LambdaFunctionConfigurationOutputTypeDef(BaseModel): + LambdaFunctionArn: str + Events: List[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterOutputTypeDef] = None + +class QueueConfigurationOutputTypeDef(BaseModel): + QueueArn: str + Events: List[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterOutputTypeDef] = None + +class TopicConfigurationOutputTypeDef(BaseModel): + TopicArn: str + Events: List[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterOutputTypeDef] = None + +class LambdaFunctionConfigurationTypeDef(BaseModel): + LambdaFunctionArn: str + Events: Sequence[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterTypeDef] = None + +class QueueConfigurationTypeDef(BaseModel): + QueueArn: str + Events: Sequence[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterTypeDef] = None + +class TopicConfigurationTypeDef(BaseModel): + TopicArn: str + Events: Sequence[EventType] + Id: Optional[str] = None + Filter: Optional[NotificationConfigurationFilterTypeDef] = None + +class PutBucketAclRequestBucketAclPutTypeDef(BaseModel): + ACL: Optional[BucketCannedACLType] = None + AccessControlPolicy: Optional[AccessControlPolicyTypeDef] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketAclRequestRequestTypeDef(BaseModel): + Bucket: str + ACL: Optional[BucketCannedACLType] = None + AccessControlPolicy: Optional[AccessControlPolicyTypeDef] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class PutObjectAclRequestObjectAclPutTypeDef(BaseModel): + ACL: Optional[ObjectCannedACLType] = None + AccessControlPolicy: Optional[AccessControlPolicyTypeDef] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + VersionId: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class PutObjectAclRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + ACL: Optional[ObjectCannedACLType] = None + AccessControlPolicy: Optional[AccessControlPolicyTypeDef] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + RequestPayer: Optional[Literal["requester"]] = None + VersionId: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + +class OutputLocationTypeDef(BaseModel): + S3: Optional[S3LocationTypeDef] = None + +class InventoryDestinationOutputTypeDef(BaseModel): + S3BucketDestination: InventoryS3BucketDestinationOutputTypeDef + +class InventoryDestinationTypeDef(BaseModel): + S3BucketDestination: InventoryS3BucketDestinationTypeDef + +class ReplicationRuleOutputTypeDef(BaseModel): + Status: ReplicationRuleStatusType + Destination: DestinationTypeDef + ID: Optional[str] = None + Priority: Optional[int] = None + Prefix: Optional[str] = None + Filter: Optional[ReplicationRuleFilterOutputTypeDef] = None + SourceSelectionCriteria: Optional[SourceSelectionCriteriaTypeDef] = None + ExistingObjectReplication: Optional[ExistingObjectReplicationTypeDef] = None + DeleteMarkerReplication: Optional[DeleteMarkerReplicationTypeDef] = None + +class ReplicationRuleTypeDef(BaseModel): + Status: ReplicationRuleStatusType + Destination: DestinationTypeDef + ID: Optional[str] = None + Priority: Optional[int] = None + Prefix: Optional[str] = None + Filter: Optional[ReplicationRuleFilterTypeDef] = None + SourceSelectionCriteria: Optional[SourceSelectionCriteriaTypeDef] = None + ExistingObjectReplication: Optional[ExistingObjectReplicationTypeDef] = None + DeleteMarkerReplication: Optional[DeleteMarkerReplicationTypeDef] = None + +class GetBucketLoggingOutputTypeDef(BaseModel): + LoggingEnabled: LoggingEnabledOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BucketLoggingStatusTypeDef(BaseModel): + LoggingEnabled: Optional[LoggingEnabledTypeDef] = None + +class PutBucketWebsiteRequestBucketWebsitePutTypeDef(BaseModel): + WebsiteConfiguration: WebsiteConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketWebsiteRequestRequestTypeDef(BaseModel): + Bucket: str + WebsiteConfiguration: WebsiteConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class GetBucketEncryptionOutputTypeDef(BaseModel): + ServerSideEncryptionConfiguration: ServerSideEncryptionConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketEncryptionRequestRequestTypeDef(BaseModel): + Bucket: str + ServerSideEncryptionConfiguration: ServerSideEncryptionConfigurationTypeDef + ContentMD5: Optional[str] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class SelectObjectContentOutputTypeDef(BaseModel): + Payload: "EventStream[SelectObjectContentEventStreamTypeDef]" + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketIntelligentTieringConfigurationOutputTypeDef(BaseModel): + IntelligentTieringConfiguration: IntelligentTieringConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBucketIntelligentTieringConfigurationsOutputTypeDef(BaseModel): + IsTruncated: bool + ContinuationToken: str + NextContinuationToken: str + IntelligentTieringConfigurationList: List[IntelligentTieringConfigurationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketIntelligentTieringConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + IntelligentTieringConfiguration: IntelligentTieringConfigurationTypeDef + +class GetBucketLifecycleConfigurationOutputTypeDef(BaseModel): + Rules: List[LifecycleRuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BucketLifecycleConfigurationTypeDef(BaseModel): + Rules: Sequence[LifecycleRuleTypeDef] + +class GetBucketMetricsConfigurationOutputTypeDef(BaseModel): + MetricsConfiguration: MetricsConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBucketMetricsConfigurationsOutputTypeDef(BaseModel): + IsTruncated: bool + ContinuationToken: str + NextContinuationToken: str + MetricsConfigurationList: List[MetricsConfigurationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketMetricsConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + MetricsConfiguration: MetricsConfigurationTypeDef + ExpectedBucketOwner: Optional[str] = None + +class AnalyticsConfigurationOutputTypeDef(BaseModel): + Id: str + StorageClassAnalysis: StorageClassAnalysisTypeDef + Filter: Optional[AnalyticsFilterOutputTypeDef] = None + +class AnalyticsConfigurationTypeDef(BaseModel): + Id: str + StorageClassAnalysis: StorageClassAnalysisTypeDef + Filter: Optional[AnalyticsFilterTypeDef] = None + +class PutBucketLifecycleRequestBucketLifecyclePutTypeDef(BaseModel): + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + LifecycleConfiguration: Optional[LifecycleConfigurationTypeDef] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketLifecycleRequestRequestTypeDef(BaseModel): + Bucket: str + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + LifecycleConfiguration: Optional[LifecycleConfigurationTypeDef] = None + ExpectedBucketOwner: Optional[str] = None + +class NotificationConfigurationResponseTypeDef(BaseModel): + TopicConfigurations: List[TopicConfigurationOutputTypeDef] + QueueConfigurations: List[QueueConfigurationOutputTypeDef] + LambdaFunctionConfigurations: List[LambdaFunctionConfigurationOutputTypeDef] + EventBridgeConfiguration: Dict[str, Any] + ResponseMetadata: ResponseMetadataTypeDef + +class NotificationConfigurationTypeDef(BaseModel): + TopicConfigurations: Optional[Sequence[TopicConfigurationTypeDef]] = None + QueueConfigurations: Optional[Sequence[QueueConfigurationTypeDef]] = None + LambdaFunctionConfigurations: Optional[Sequence[LambdaFunctionConfigurationTypeDef]] = None + EventBridgeConfiguration: Optional[Mapping[str, Any]] = None + +class RestoreRequestTypeDef(BaseModel): + Days: Optional[int] = None + GlacierJobParameters: Optional[GlacierJobParametersTypeDef] = None + Type: Optional[Literal["SELECT"]] = None + Tier: Optional[TierType] = None + Description: Optional[str] = None + SelectParameters: Optional[SelectParametersTypeDef] = None + OutputLocation: Optional[OutputLocationTypeDef] = None + +class InventoryConfigurationOutputTypeDef(BaseModel): + Destination: InventoryDestinationOutputTypeDef + IsEnabled: bool + Id: str + IncludedObjectVersions: InventoryIncludedObjectVersionsType + Schedule: InventoryScheduleTypeDef + Filter: Optional[InventoryFilterTypeDef] = None + OptionalFields: Optional[List[InventoryOptionalFieldType]] = None + +class InventoryConfigurationTypeDef(BaseModel): + Destination: InventoryDestinationTypeDef + IsEnabled: bool + Id: str + IncludedObjectVersions: InventoryIncludedObjectVersionsType + Schedule: InventoryScheduleTypeDef + Filter: Optional[InventoryFilterTypeDef] = None + OptionalFields: Optional[Sequence[InventoryOptionalFieldType]] = None + +class ReplicationConfigurationOutputTypeDef(BaseModel): + Role: str + Rules: List[ReplicationRuleOutputTypeDef] + +class ReplicationConfigurationTypeDef(BaseModel): + Role: str + Rules: Sequence[ReplicationRuleTypeDef] + +class PutBucketLoggingRequestBucketLoggingPutTypeDef(BaseModel): + BucketLoggingStatus: BucketLoggingStatusTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketLoggingRequestRequestTypeDef(BaseModel): + Bucket: str + BucketLoggingStatus: BucketLoggingStatusTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketLifecycleConfigurationRequestBucketLifecycleConfigurationPutTypeDef(BaseModel): + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + LifecycleConfiguration: Optional[BucketLifecycleConfigurationTypeDef] = None + ExpectedBucketOwner: Optional[str] = None + +class PutBucketLifecycleConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + LifecycleConfiguration: Optional[BucketLifecycleConfigurationTypeDef] = None + ExpectedBucketOwner: Optional[str] = None + +class GetBucketAnalyticsConfigurationOutputTypeDef(BaseModel): + AnalyticsConfiguration: AnalyticsConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBucketAnalyticsConfigurationsOutputTypeDef(BaseModel): + IsTruncated: bool + ContinuationToken: str + NextContinuationToken: str + AnalyticsConfigurationList: List[AnalyticsConfigurationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketAnalyticsConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + AnalyticsConfiguration: AnalyticsConfigurationTypeDef + ExpectedBucketOwner: Optional[str] = None + +class PutBucketNotificationConfigurationRequestBucketNotificationPutTypeDef(BaseModel): + NotificationConfiguration: NotificationConfigurationTypeDef + ExpectedBucketOwner: Optional[str] = None + SkipDestinationValidation: Optional[bool] = None + +class PutBucketNotificationConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + NotificationConfiguration: NotificationConfigurationTypeDef + ExpectedBucketOwner: Optional[str] = None + SkipDestinationValidation: Optional[bool] = None + +class RestoreObjectRequestObjectRestoreObjectTypeDef(BaseModel): + VersionId: Optional[str] = None + RestoreRequest: Optional[RestoreRequestTypeDef] = None + RequestPayer: Optional[Literal["requester"]] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class RestoreObjectRequestObjectSummaryRestoreObjectTypeDef(BaseModel): + VersionId: Optional[str] = None + RestoreRequest: Optional[RestoreRequestTypeDef] = None + RequestPayer: Optional[Literal["requester"]] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class RestoreObjectRequestRequestTypeDef(BaseModel): + Bucket: str + Key: str + VersionId: Optional[str] = None + RestoreRequest: Optional[RestoreRequestTypeDef] = None + RequestPayer: Optional[Literal["requester"]] = None + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + ExpectedBucketOwner: Optional[str] = None + +class GetBucketInventoryConfigurationOutputTypeDef(BaseModel): + InventoryConfiguration: InventoryConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListBucketInventoryConfigurationsOutputTypeDef(BaseModel): + ContinuationToken: str + InventoryConfigurationList: List[InventoryConfigurationOutputTypeDef] + IsTruncated: bool + NextContinuationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketInventoryConfigurationRequestRequestTypeDef(BaseModel): + Bucket: str + Id: str + InventoryConfiguration: InventoryConfigurationTypeDef + ExpectedBucketOwner: Optional[str] = None + +class GetBucketReplicationOutputTypeDef(BaseModel): + ReplicationConfiguration: ReplicationConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketReplicationRequestRequestTypeDef(BaseModel): + Bucket: str + ReplicationConfiguration: ReplicationConfigurationTypeDef + ChecksumAlgorithm: Optional[ChecksumAlgorithmType] = None + Token: Optional[str] = None + ExpectedBucketOwner: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/s3_constants.py b/aws_resource_validator/pydantic_models/s3_constants.py new file mode 100644 index 00000000..f73026da --- /dev/null +++ b/aws_resource_validator/pydantic_models/s3_constants.py @@ -0,0 +1,614 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AnalyticsS3ExportFileFormatType = Literal["CSV"] +ArchiveStatusType = Literal["ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS"] +BucketAccelerateStatusType = Literal["Enabled", "Suspended"] +BucketCannedACLType = Literal["authenticated-read", "private", "public-read", "public-read-write"] +BucketExistsWaiterName = Literal["bucket_exists"] +BucketLocationConstraintType = Literal["EU", + "af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "cn-north-1", + "cn-northwest-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-2", + "us-gov-east-1", + "us-gov-west-1", + "us-west-1", + "us-west-2",] +BucketLogsPermissionType = Literal["FULL_CONTROL", "READ", "WRITE"] +BucketNotExistsWaiterName = Literal["bucket_not_exists"] +BucketTypeType = Literal["Directory"] +BucketVersioningStatusType = Literal["Enabled", "Suspended"] +ChecksumAlgorithmType = Literal["CRC32", "CRC32C", "SHA1", "SHA256"] +ChecksumModeType = Literal["ENABLED"] +CompressionTypeType = Literal["BZIP2", "GZIP", "NONE"] +DataRedundancyType = Literal["SingleAvailabilityZone"] +DeleteMarkerReplicationStatusType = Literal["Disabled", "Enabled"] +EncodingTypeType = Literal["url"] +EventType = Literal["s3:IntelligentTiering", + "s3:LifecycleExpiration:*", + "s3:LifecycleExpiration:Delete", + "s3:LifecycleExpiration:DeleteMarkerCreated", + "s3:LifecycleTransition", + "s3:ObjectAcl:Put", + "s3:ObjectCreated:*", + "s3:ObjectCreated:CompleteMultipartUpload", + "s3:ObjectCreated:Copy", + "s3:ObjectCreated:Post", + "s3:ObjectCreated:Put", + "s3:ObjectRemoved:*", + "s3:ObjectRemoved:Delete", + "s3:ObjectRemoved:DeleteMarkerCreated", + "s3:ObjectRestore:*", + "s3:ObjectRestore:Completed", + "s3:ObjectRestore:Delete", + "s3:ObjectRestore:Post", + "s3:ObjectTagging:*", + "s3:ObjectTagging:Delete", + "s3:ObjectTagging:Put", + "s3:ReducedRedundancyLostObject", + "s3:Replication:*", + "s3:Replication:OperationFailedReplication", + "s3:Replication:OperationMissedThreshold", + "s3:Replication:OperationNotTracked", + "s3:Replication:OperationReplicatedAfterThreshold",] +ExistingObjectReplicationStatusType = Literal["Disabled", "Enabled"] +ExpirationStatusType = Literal["Disabled", "Enabled"] +ExpressionTypeType = Literal["SQL"] +FileHeaderInfoType = Literal["IGNORE", "NONE", "USE"] +FilterRuleNameType = Literal["prefix", "suffix"] +IntelligentTieringAccessTierType = Literal["ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS"] +IntelligentTieringStatusType = Literal["Disabled", "Enabled"] +InventoryFormatType = Literal["CSV", "ORC", "Parquet"] +InventoryFrequencyType = Literal["Daily", "Weekly"] +InventoryIncludedObjectVersionsType = Literal["All", "Current"] +InventoryOptionalFieldType = Literal["BucketKeyStatus", + "ChecksumAlgorithm", + "ETag", + "EncryptionStatus", + "IntelligentTieringAccessTier", + "IsMultipartUploaded", + "LastModifiedDate", + "ObjectAccessControlList", + "ObjectLockLegalHoldStatus", + "ObjectLockMode", + "ObjectLockRetainUntilDate", + "ObjectOwner", + "ReplicationStatus", + "Size", + "StorageClass",] +JSONTypeType = Literal["DOCUMENT", "LINES"] +ListDirectoryBucketsPaginatorName = Literal["list_directory_buckets"] +ListMultipartUploadsPaginatorName = Literal["list_multipart_uploads"] +ListObjectVersionsPaginatorName = Literal["list_object_versions"] +ListObjectsPaginatorName = Literal["list_objects"] +ListObjectsV2PaginatorName = Literal["list_objects_v2"] +ListPartsPaginatorName = Literal["list_parts"] +LocationTypeType = Literal["AvailabilityZone"] +MFADeleteStatusType = Literal["Disabled", "Enabled"] +MFADeleteType = Literal["Disabled", "Enabled"] +MetadataDirectiveType = Literal["COPY", "REPLACE"] +MetricsStatusType = Literal["Disabled", "Enabled"] +ObjectAttributesType = Literal["Checksum", "ETag", "ObjectParts", "ObjectSize", "StorageClass"] +ObjectCannedACLType = Literal["authenticated-read", + "aws-exec-read", + "bucket-owner-full-control", + "bucket-owner-read", + "private", + "public-read", + "public-read-write",] +ObjectExistsWaiterName = Literal["object_exists"] +ObjectLockEnabledType = Literal["Enabled"] +ObjectLockLegalHoldStatusType = Literal["OFF", "ON"] +ObjectLockModeType = Literal["COMPLIANCE", "GOVERNANCE"] +ObjectLockRetentionModeType = Literal["COMPLIANCE", "GOVERNANCE"] +ObjectNotExistsWaiterName = Literal["object_not_exists"] +ObjectOwnershipType = Literal["BucketOwnerEnforced", "BucketOwnerPreferred", "ObjectWriter"] +ObjectStorageClassType = Literal["DEEP_ARCHIVE", + "EXPRESS_ONEZONE", + "GLACIER", + "GLACIER_IR", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "OUTPOSTS", + "REDUCED_REDUNDANCY", + "SNOW", + "STANDARD", + "STANDARD_IA",] +ObjectVersionStorageClassType = Literal["STANDARD"] +OptionalObjectAttributesType = Literal["RestoreStatus"] +OwnerOverrideType = Literal["Destination"] +PartitionDateSourceType = Literal["DeliveryTime", "EventTime"] +PayerType = Literal["BucketOwner", "Requester"] +PermissionType = Literal["FULL_CONTROL", "READ", "READ_ACP", "WRITE", "WRITE_ACP"] +ProtocolType = Literal["http", "https"] +QuoteFieldsType = Literal["ALWAYS", "ASNEEDED"] +ReplicaModificationsStatusType = Literal["Disabled", "Enabled"] +ReplicationRuleStatusType = Literal["Disabled", "Enabled"] +ReplicationStatusType = Literal["COMPLETE", "COMPLETED", "FAILED", "PENDING", "REPLICA"] +ReplicationTimeStatusType = Literal["Disabled", "Enabled"] +RequestChargedType = Literal["requester"] +RequestPayerType = Literal["requester"] +RestoreRequestTypeType = Literal["SELECT"] +ServerSideEncryptionType = Literal["AES256", "aws:kms", "aws:kms:dsse"] +SessionModeType = Literal["ReadOnly", "ReadWrite"] +SseKmsEncryptedObjectsStatusType = Literal["Disabled", "Enabled"] +StorageClassAnalysisSchemaVersionType = Literal["V_1"] +StorageClassType = Literal["DEEP_ARCHIVE", + "EXPRESS_ONEZONE", + "GLACIER", + "GLACIER_IR", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "OUTPOSTS", + "REDUCED_REDUNDANCY", + "SNOW", + "STANDARD", + "STANDARD_IA",] +TaggingDirectiveType = Literal["COPY", "REPLACE"] +TierType = Literal["Bulk", "Expedited", "Standard"] +TransitionStorageClassType = Literal["DEEP_ARCHIVE", "GLACIER", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA"] +TypeType = Literal["AmazonCustomerByEmail", "CanonicalUser", "Group"] +S3ServiceName = Literal["s3"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_directory_buckets", + "list_multipart_uploads", + "list_object_versions", + "list_objects", + "list_objects_v2", + "list_parts",] +WaiterName = Literal["bucket_exists", "bucket_not_exists", "object_exists", "object_not_exists"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +FileobjTypeDef = Union[IO[Any] +TimestampTypeDef = Union[datetime, str] +CopySourceOrStrTypeDef = Union[str, 'CopySourceTypeDef'] +ObjectLockRetentionUnionTypeDef = Union[ 'ObjectLockRetentionTypeDef', 'ObjectLockRetentionOutputTypeDef' ] +OwnershipControlsUnionTypeDef = Union['OwnershipControlsTypeDef', 'OwnershipControlsOutputTypeDef'] +ServerSideEncryptionConfigurationUnionTypeDef = Union[ 'ServerSideEncryptionConfigurationTypeDef', 'ServerSideEncryptionConfigurationOutputTypeDef' ] +IntelligentTieringConfigurationUnionTypeDef = Union[ 'IntelligentTieringConfigurationTypeDef', 'IntelligentTieringConfigurationOutputTypeDef' ] +MetricsConfigurationUnionTypeDef = Union[ 'MetricsConfigurationTypeDef', 'MetricsConfigurationOutputTypeDef' ] +AnalyticsConfigurationUnionTypeDef = Union[ 'AnalyticsConfigurationTypeDef', 'AnalyticsConfigurationOutputTypeDef' ] +InventoryConfigurationUnionTypeDef = Union[ 'InventoryConfigurationTypeDef', 'InventoryConfigurationOutputTypeDef' ] +ReplicationConfigurationUnionTypeDef = Union[ 'ReplicationConfigurationTypeDef', 'ReplicationConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/s3control_classes.py b/aws_resource_validator/pydantic_models/s3control_classes.py new file mode 100644 index 00000000..714dddb2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/s3control_classes.py @@ -0,0 +1,1402 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.s3control_constants import * + +class AbortIncompleteMultipartUploadTypeDef(BaseModel): + DaysAfterInitiation: Optional[int] = None + +class AccessControlTranslationTypeDef(BaseModel): + Owner: Literal["Destination"] + +class AccessGrantsLocationConfigurationTypeDef(BaseModel): + S3SubPrefix: Optional[str] = None + +class VpcConfigurationTypeDef(BaseModel): + VpcId: str + +class ActivityMetricsTypeDef(BaseModel): + IsEnabled: Optional[bool] = None + +class AdvancedCostOptimizationMetricsTypeDef(BaseModel): + IsEnabled: Optional[bool] = None + +class AdvancedDataProtectionMetricsTypeDef(BaseModel): + IsEnabled: Optional[bool] = None + +class DetailedStatusCodesMetricsTypeDef(BaseModel): + IsEnabled: Optional[bool] = None + +class AssociateAccessGrantsIdentityCenterRequestRequestTypeDef(BaseModel): + AccountId: str + IdentityCenterArn: str + +class AsyncErrorDetailsTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + Resource: Optional[str] = None + RequestId: Optional[str] = None + +class DeleteMultiRegionAccessPointInputTypeDef(BaseModel): + Name: str + +class PutMultiRegionAccessPointPolicyInputTypeDef(BaseModel): + Name: str + Policy: str + +class AwsLambdaTransformationTypeDef(BaseModel): + FunctionArn: str + FunctionPayload: Optional[str] = None + +class CloudWatchMetricsTypeDef(BaseModel): + IsEnabled: bool + +class GranteeTypeDef(BaseModel): + GranteeType: Optional[GranteeTypeType] = None + GranteeIdentifier: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ObjectLambdaAccessPointAliasTypeDef(BaseModel): + Value: Optional[str] = None + Status: Optional[ObjectLambdaAccessPointAliasStatusType] = None + +class PublicAccessBlockConfigurationTypeDef(BaseModel): + BlockPublicAcls: Optional[bool] = None + IgnorePublicAcls: Optional[bool] = None + BlockPublicPolicy: Optional[bool] = None + RestrictPublicBuckets: Optional[bool] = None + +class CreateBucketConfigurationTypeDef(BaseModel): + LocationConstraint: Optional[BucketLocationConstraintType] = None + +class JobReportTypeDef(BaseModel): + Enabled: bool + Bucket: Optional[str] = None + Format: Optional[Literal["Report_CSV_20180820"]] = None + Prefix: Optional[str] = None + ReportScope: Optional[JobReportScopeType] = None + +class S3TagTypeDef(BaseModel): + Key: str + Value: str + +class RegionTypeDef(BaseModel): + Bucket: str + BucketAccountId: Optional[str] = None + +class CredentialsTypeDef(BaseModel): + AccessKeyId: Optional[str] = None + SecretAccessKey: Optional[str] = None + SessionToken: Optional[str] = None + Expiration: Optional[datetime] = None + +class DeleteAccessGrantRequestRequestTypeDef(BaseModel): + AccountId: str + AccessGrantId: str + +class DeleteAccessGrantsInstanceRequestRequestTypeDef(BaseModel): + AccountId: str + +class DeleteAccessGrantsInstanceResourcePolicyRequestRequestTypeDef(BaseModel): + AccountId: str + +class DeleteAccessGrantsLocationRequestRequestTypeDef(BaseModel): + AccountId: str + AccessGrantsLocationId: str + +class DeleteAccessPointForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class DeleteAccessPointPolicyForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class DeleteAccessPointPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class DeleteAccessPointRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class DeleteBucketLifecycleConfigurationRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class DeleteBucketPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class DeleteBucketReplicationRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class DeleteBucketRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class DeleteBucketTaggingRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class DeleteJobTaggingRequestRequestTypeDef(BaseModel): + AccountId: str + JobId: str + +class DeleteMarkerReplicationTypeDef(BaseModel): + Status: DeleteMarkerReplicationStatusType + +class DeletePublicAccessBlockRequestRequestTypeDef(BaseModel): + AccountId: str + +class DeleteStorageLensConfigurationRequestRequestTypeDef(BaseModel): + ConfigId: str + AccountId: str + +class DeleteStorageLensConfigurationTaggingRequestRequestTypeDef(BaseModel): + ConfigId: str + AccountId: str + +class DeleteStorageLensGroupRequestRequestTypeDef(BaseModel): + Name: str + AccountId: str + +class DescribeJobRequestRequestTypeDef(BaseModel): + AccountId: str + JobId: str + +class DescribeMultiRegionAccessPointOperationRequestRequestTypeDef(BaseModel): + AccountId: str + RequestTokenARN: str + +class EncryptionConfigurationTypeDef(BaseModel): + ReplicaKmsKeyID: Optional[str] = None + +class DissociateAccessGrantsIdentityCenterRequestRequestTypeDef(BaseModel): + AccountId: str + +class EstablishedMultiRegionAccessPointPolicyTypeDef(BaseModel): + Policy: Optional[str] = None + +class ExcludeTypeDef(BaseModel): + Buckets: Optional[List[str]] = None + Regions: Optional[List[str]] = None + +class ExistingObjectReplicationTypeDef(BaseModel): + Status: ExistingObjectReplicationStatusType + +class SSEKMSEncryptionTypeDef(BaseModel): + KeyId: str + +class GetAccessGrantRequestRequestTypeDef(BaseModel): + AccountId: str + AccessGrantId: str + +class GetAccessGrantsInstanceForPrefixRequestRequestTypeDef(BaseModel): + AccountId: str + S3Prefix: str + +class GetAccessGrantsInstanceRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetAccessGrantsInstanceResourcePolicyRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetAccessGrantsLocationRequestRequestTypeDef(BaseModel): + AccountId: str + AccessGrantsLocationId: str + +class GetAccessPointConfigurationForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetAccessPointForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetAccessPointPolicyForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetAccessPointPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetAccessPointPolicyStatusForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class PolicyStatusTypeDef(BaseModel): + IsPublic: Optional[bool] = None + +class GetAccessPointPolicyStatusRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetAccessPointRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetBucketLifecycleConfigurationRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class GetBucketPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class GetBucketReplicationRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class GetBucketRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class GetBucketTaggingRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class GetBucketVersioningRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + +class GetDataAccessRequestRequestTypeDef(BaseModel): + AccountId: str + Target: str + Permission: PermissionType + DurationSeconds: Optional[int] = None + Privilege: Optional[PrivilegeType] = None + TargetType: Optional[Literal["Object"]] = None + +class GetJobTaggingRequestRequestTypeDef(BaseModel): + AccountId: str + JobId: str + +class GetMultiRegionAccessPointPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetMultiRegionAccessPointPolicyStatusRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetMultiRegionAccessPointRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + +class GetMultiRegionAccessPointRoutesRequestRequestTypeDef(BaseModel): + AccountId: str + Mrap: str + +class MultiRegionAccessPointRouteTypeDef(BaseModel): + TrafficDialPercentage: int + Bucket: Optional[str] = None + Region: Optional[str] = None + +class GetPublicAccessBlockRequestRequestTypeDef(BaseModel): + AccountId: str + +class GetStorageLensConfigurationRequestRequestTypeDef(BaseModel): + ConfigId: str + AccountId: str + +class GetStorageLensConfigurationTaggingRequestRequestTypeDef(BaseModel): + ConfigId: str + AccountId: str + +class StorageLensTagTypeDef(BaseModel): + Key: str + Value: str + +class GetStorageLensGroupRequestRequestTypeDef(BaseModel): + Name: str + AccountId: str + +class IncludeTypeDef(BaseModel): + Buckets: Optional[List[str]] = None + Regions: Optional[List[str]] = None + +class JobFailureTypeDef(BaseModel): + FailureCode: Optional[str] = None + FailureReason: Optional[str] = None + +class KeyNameConstraintTypeDef(BaseModel): + MatchAnyPrefix: Optional[Sequence[str]] = None + MatchAnySuffix: Optional[Sequence[str]] = None + MatchAnySubstring: Optional[Sequence[str]] = None + +class JobManifestLocationTypeDef(BaseModel): + ObjectArn: str + ETag: str + ObjectVersionId: Optional[str] = None + +class JobManifestSpecTypeDef(BaseModel): + Format: JobManifestFormatType + Fields: Optional[Sequence[JobManifestFieldNameType]] = None + +class LambdaInvokeOperationTypeDef(BaseModel): + FunctionArn: Optional[str] = None + InvocationSchemaVersion: Optional[str] = None + UserArguments: Optional[Mapping[str, str]] = None + +class S3InitiateRestoreObjectOperationTypeDef(BaseModel): + ExpirationInDays: Optional[int] = None + GlacierJobTier: Optional[S3GlacierJobTierType] = None + +class JobTimersTypeDef(BaseModel): + ElapsedTimeInActiveSeconds: Optional[int] = None + +class LifecycleExpirationTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + +class NoncurrentVersionExpirationTypeDef(BaseModel): + NoncurrentDays: Optional[int] = None + NewerNoncurrentVersions: Optional[int] = None + +class NoncurrentVersionTransitionTypeDef(BaseModel): + NoncurrentDays: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + +class TransitionTypeDef(BaseModel): + Date: Optional[datetime] = None + Days: Optional[int] = None + StorageClass: Optional[TransitionStorageClassType] = None + +class ListAccessGrantsInstanceEntryTypeDef(BaseModel): + AccessGrantsInstanceId: Optional[str] = None + AccessGrantsInstanceArn: Optional[str] = None + CreatedAt: Optional[datetime] = None + IdentityCenterArn: Optional[str] = None + +class ListAccessGrantsInstancesRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAccessGrantsLocationsEntryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + AccessGrantsLocationId: Optional[str] = None + AccessGrantsLocationArn: Optional[str] = None + LocationScope: Optional[str] = None + IAMRoleArn: Optional[str] = None + +class ListAccessGrantsLocationsRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + LocationScope: Optional[str] = None + +class ListAccessGrantsRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + GranteeType: Optional[GranteeTypeType] = None + GranteeIdentifier: Optional[str] = None + Permission: Optional[PermissionType] = None + GrantScope: Optional[str] = None + ApplicationArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccessPointsForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAccessPointsRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + AccountId: str + JobStatuses: Optional[Sequence[JobStatusType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMultiRegionAccessPointsRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRegionalBucketsRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + OutpostId: Optional[str] = None + +class RegionalBucketTypeDef(BaseModel): + Bucket: str + PublicAccessBlockEnabled: bool + CreationDate: datetime + BucketArn: Optional[str] = None + OutpostId: Optional[str] = None + +class ListStorageLensConfigurationEntryTypeDef(BaseModel): + Id: str + StorageLensArn: str + HomeRegion: str + IsEnabled: Optional[bool] = None + +class ListStorageLensConfigurationsRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + +class ListStorageLensGroupEntryTypeDef(BaseModel): + Name: str + StorageLensGroupArn: str + HomeRegion: str + +class ListStorageLensGroupsRequestRequestTypeDef(BaseModel): + AccountId: str + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + AccountId: str + ResourceArn: str + +class MatchObjectAgeTypeDef(BaseModel): + DaysGreaterThan: Optional[int] = None + DaysLessThan: Optional[int] = None + +class MatchObjectSizeTypeDef(BaseModel): + BytesGreaterThan: Optional[int] = None + BytesLessThan: Optional[int] = None + +class ReplicationTimeValueTypeDef(BaseModel): + Minutes: Optional[int] = None + +class ProposedMultiRegionAccessPointPolicyTypeDef(BaseModel): + Policy: Optional[str] = None + +class MultiRegionAccessPointRegionalResponseTypeDef(BaseModel): + Name: Optional[str] = None + RequestStatus: Optional[str] = None + +class RegionReportTypeDef(BaseModel): + Bucket: Optional[str] = None + Region: Optional[str] = None + BucketAccountId: Optional[str] = None + +class SelectionCriteriaTypeDef(BaseModel): + Delimiter: Optional[str] = None + MaxDepth: Optional[int] = None + MinStorageBytesPercentage: Optional[float] = None + +class PutAccessGrantsInstanceResourcePolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Policy: str + Organization: Optional[str] = None + +class PutAccessPointPolicyForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + Policy: str + +class PutAccessPointPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + Policy: str + +class PutBucketPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + Policy: str + ConfirmRemoveSelfBucketAccess: Optional[bool] = None + +class VersioningConfigurationTypeDef(BaseModel): + MFADelete: Optional[MFADeleteType] = None + Status: Optional[BucketVersioningStatusType] = None + +class ReplicaModificationsTypeDef(BaseModel): + Status: ReplicaModificationsStatusType + +class S3ObjectOwnerTypeDef(BaseModel): + ID: Optional[str] = None + DisplayName: Optional[str] = None + +class S3GranteeTypeDef(BaseModel): + TypeIdentifier: Optional[S3GranteeTypeIdentifierType] = None + Identifier: Optional[str] = None + DisplayName: Optional[str] = None + +class S3ObjectLockLegalHoldTypeDef(BaseModel): + Status: S3ObjectLockLegalHoldStatusType + +class SSEKMSTypeDef(BaseModel): + KeyId: str + +class SseKmsEncryptedObjectsTypeDef(BaseModel): + Status: SseKmsEncryptedObjectsStatusType + +class StorageLensAwsOrgTypeDef(BaseModel): + Arn: str + +class StorageLensGroupLevelSelectionCriteriaTypeDef(BaseModel): + Include: Optional[List[str]] = None + Exclude: Optional[List[str]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + AccountId: str + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAccessGrantsLocationRequestRequestTypeDef(BaseModel): + AccountId: str + AccessGrantsLocationId: str + IAMRoleArn: str + +class UpdateJobPriorityRequestRequestTypeDef(BaseModel): + AccountId: str + JobId: str + Priority: int + +class UpdateJobStatusRequestRequestTypeDef(BaseModel): + AccountId: str + JobId: str + RequestedJobStatus: RequestedJobStatusType + StatusUpdateReason: Optional[str] = None + +class AccessPointTypeDef(BaseModel): + Name: str + NetworkOrigin: NetworkOriginType + Bucket: str + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + AccessPointArn: Optional[str] = None + Alias: Optional[str] = None + BucketAccountId: Optional[str] = None + +class DeleteMultiRegionAccessPointRequestRequestTypeDef(BaseModel): + AccountId: str + ClientToken: str + Details: DeleteMultiRegionAccessPointInputTypeDef + +class PutMultiRegionAccessPointPolicyRequestRequestTypeDef(BaseModel): + AccountId: str + ClientToken: str + Details: PutMultiRegionAccessPointPolicyInputTypeDef + +class ObjectLambdaContentTransformationTypeDef(BaseModel): + AwsLambda: Optional[AwsLambdaTransformationTypeDef] = None + +class ListAccessGrantEntryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + AccessGrantId: Optional[str] = None + AccessGrantArn: Optional[str] = None + Grantee: Optional[GranteeTypeDef] = None + Permission: Optional[PermissionType] = None + AccessGrantsLocationId: Optional[str] = None + AccessGrantsLocationConfiguration: Optional[AccessGrantsLocationConfigurationTypeDef] = None + GrantScope: Optional[str] = None + ApplicationArn: Optional[str] = None + +class CreateAccessGrantRequestRequestTypeDef(BaseModel): + AccountId: str + AccessGrantsLocationId: str + Grantee: GranteeTypeDef + Permission: PermissionType + AccessGrantsLocationConfiguration: Optional[AccessGrantsLocationConfigurationTypeDef] = None + ApplicationArn: Optional[str] = None + S3PrefixType: Optional[Literal["Object"]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAccessGrantsInstanceRequestRequestTypeDef(BaseModel): + AccountId: str + IdentityCenterArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAccessGrantsLocationRequestRequestTypeDef(BaseModel): + AccountId: str + LocationScope: str + IAMRoleArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + AccountId: str + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateAccessGrantResultTypeDef(BaseModel): + CreatedAt: datetime + AccessGrantId: str + AccessGrantArn: str + Grantee: GranteeTypeDef + AccessGrantsLocationId: str + AccessGrantsLocationConfiguration: AccessGrantsLocationConfigurationTypeDef + Permission: PermissionType + ApplicationArn: str + GrantScope: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessGrantsInstanceResultTypeDef(BaseModel): + CreatedAt: datetime + AccessGrantsInstanceId: str + AccessGrantsInstanceArn: str + IdentityCenterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessGrantsLocationResultTypeDef(BaseModel): + CreatedAt: datetime + AccessGrantsLocationId: str + AccessGrantsLocationArn: str + LocationScope: str + IAMRoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPointResultTypeDef(BaseModel): + AccessPointArn: str + Alias: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBucketResultTypeDef(BaseModel): + Location: str + BucketArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobResultTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMultiRegionAccessPointResultTypeDef(BaseModel): + RequestTokenARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMultiRegionAccessPointResultTypeDef(BaseModel): + RequestTokenARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessGrantResultTypeDef(BaseModel): + CreatedAt: datetime + AccessGrantId: str + AccessGrantArn: str + Grantee: GranteeTypeDef + Permission: PermissionType + AccessGrantsLocationId: str + AccessGrantsLocationConfiguration: AccessGrantsLocationConfigurationTypeDef + GrantScope: str + ApplicationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessGrantsInstanceForPrefixResultTypeDef(BaseModel): + AccessGrantsInstanceArn: str + AccessGrantsInstanceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessGrantsInstanceResourcePolicyResultTypeDef(BaseModel): + Policy: str + Organization: str + CreatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessGrantsInstanceResultTypeDef(BaseModel): + AccessGrantsInstanceArn: str + AccessGrantsInstanceId: str + IdentityCenterArn: str + CreatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessGrantsLocationResultTypeDef(BaseModel): + CreatedAt: datetime + AccessGrantsLocationId: str + AccessGrantsLocationArn: str + LocationScope: str + IAMRoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessPointPolicyForObjectLambdaResultTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessPointPolicyResultTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketPolicyResultTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketResultTypeDef(BaseModel): + Bucket: str + PublicAccessBlockEnabled: bool + CreationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetBucketVersioningResultTypeDef(BaseModel): + Status: BucketVersioningStatusType + MFADelete: MFADeleteStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResultTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccessGrantsInstanceResourcePolicyResultTypeDef(BaseModel): + Policy: str + Organization: str + CreatedAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutMultiRegionAccessPointPolicyResultTypeDef(BaseModel): + RequestTokenARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessGrantsLocationResultTypeDef(BaseModel): + CreatedAt: datetime + AccessGrantsLocationId: str + AccessGrantsLocationArn: str + LocationScope: str + IAMRoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobPriorityResultTypeDef(BaseModel): + JobId: str + Priority: int + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateJobStatusResultTypeDef(BaseModel): + JobId: str + Status: JobStatusType + StatusUpdateReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccessPointForObjectLambdaResultTypeDef(BaseModel): + ObjectLambdaAccessPointArn: str + Alias: ObjectLambdaAccessPointAliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ObjectLambdaAccessPointTypeDef(BaseModel): + Name: str + ObjectLambdaAccessPointArn: Optional[str] = None + Alias: Optional[ObjectLambdaAccessPointAliasTypeDef] = None + +class CreateAccessPointRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + Bucket: str + VpcConfiguration: Optional[VpcConfigurationTypeDef] = None + PublicAccessBlockConfiguration: Optional[PublicAccessBlockConfigurationTypeDef] = None + BucketAccountId: Optional[str] = None + +class GetAccessPointForObjectLambdaResultTypeDef(BaseModel): + Name: str + PublicAccessBlockConfiguration: PublicAccessBlockConfigurationTypeDef + CreationDate: datetime + Alias: ObjectLambdaAccessPointAliasTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessPointResultTypeDef(BaseModel): + Name: str + Bucket: str + NetworkOrigin: NetworkOriginType + VpcConfiguration: VpcConfigurationTypeDef + PublicAccessBlockConfiguration: PublicAccessBlockConfigurationTypeDef + CreationDate: datetime + Alias: str + AccessPointArn: str + Endpoints: Dict[str, str] + BucketAccountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPublicAccessBlockOutputTypeDef(BaseModel): + PublicAccessBlockConfiguration: PublicAccessBlockConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutPublicAccessBlockRequestRequestTypeDef(BaseModel): + PublicAccessBlockConfiguration: PublicAccessBlockConfigurationTypeDef + AccountId: str + +class CreateBucketRequestRequestTypeDef(BaseModel): + Bucket: str + ACL: Optional[BucketCannedACLType] = None + CreateBucketConfiguration: Optional[CreateBucketConfigurationTypeDef] = None + GrantFullControl: Optional[str] = None + GrantRead: Optional[str] = None + GrantReadACP: Optional[str] = None + GrantWrite: Optional[str] = None + GrantWriteACP: Optional[str] = None + ObjectLockEnabledForBucket: Optional[bool] = None + OutpostId: Optional[str] = None + +class GetBucketTaggingResultTypeDef(BaseModel): + TagSet: List[S3TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobTaggingResultTypeDef(BaseModel): + Tags: List[S3TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LifecycleRuleAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[S3TagTypeDef]] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + +class PutJobTaggingRequestRequestTypeDef(BaseModel): + AccountId: str + JobId: str + Tags: Sequence[S3TagTypeDef] + +class ReplicationRuleAndOperatorTypeDef(BaseModel): + Prefix: Optional[str] = None + Tags: Optional[List[S3TagTypeDef]] = None + +class S3SetObjectTaggingOperationTypeDef(BaseModel): + TagSet: Optional[Sequence[S3TagTypeDef]] = None + +class TaggingTypeDef(BaseModel): + TagSet: Sequence[S3TagTypeDef] + +class CreateMultiRegionAccessPointInputTypeDef(BaseModel): + Name: str + Regions: Sequence[RegionTypeDef] + PublicAccessBlock: Optional[PublicAccessBlockConfigurationTypeDef] = None + +class GetDataAccessResultTypeDef(BaseModel): + Credentials: CredentialsTypeDef + MatchedGrantTarget: str + ResponseMetadata: ResponseMetadataTypeDef + +class GeneratedManifestEncryptionTypeDef(BaseModel): + SSES3: Optional[Mapping[str, Any]] = None + SSEKMS: Optional[SSEKMSEncryptionTypeDef] = None + +class GetAccessPointPolicyStatusForObjectLambdaResultTypeDef(BaseModel): + PolicyStatus: PolicyStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessPointPolicyStatusResultTypeDef(BaseModel): + PolicyStatus: PolicyStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMultiRegionAccessPointPolicyStatusResultTypeDef(BaseModel): + Established: PolicyStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMultiRegionAccessPointRoutesResultTypeDef(BaseModel): + Mrap: str + Routes: List[MultiRegionAccessPointRouteTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubmitMultiRegionAccessPointRoutesRequestRequestTypeDef(BaseModel): + AccountId: str + Mrap: str + RouteUpdates: Sequence[MultiRegionAccessPointRouteTypeDef] + +class GetStorageLensConfigurationTaggingResultTypeDef(BaseModel): + Tags: List[StorageLensTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutStorageLensConfigurationTaggingRequestRequestTypeDef(BaseModel): + ConfigId: str + AccountId: str + Tags: Sequence[StorageLensTagTypeDef] + +class JobManifestGeneratorFilterTypeDef(BaseModel): + EligibleForReplication: Optional[bool] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + ObjectReplicationStatuses: Optional[Sequence[ReplicationStatusType]] = None + KeyNameConstraint: Optional[KeyNameConstraintTypeDef] = None + ObjectSizeGreaterThanBytes: Optional[int] = None + ObjectSizeLessThanBytes: Optional[int] = None + MatchAnyStorageClass: Optional[Sequence[S3StorageClassType]] = None + +class S3ObjectMetadataTypeDef(BaseModel): + CacheControl: Optional[str] = None + ContentDisposition: Optional[str] = None + ContentEncoding: Optional[str] = None + ContentLanguage: Optional[str] = None + UserMetadata: Optional[Mapping[str, str]] = None + ContentLength: Optional[int] = None + ContentMD5: Optional[str] = None + ContentType: Optional[str] = None + HttpExpiresDate: Optional[TimestampTypeDef] = None + RequesterCharged: Optional[bool] = None + SSEAlgorithm: Optional[S3SSEAlgorithmType] = None + +class S3RetentionTypeDef(BaseModel): + RetainUntilDate: Optional[TimestampTypeDef] = None + Mode: Optional[S3ObjectLockRetentionModeType] = None + +class S3GeneratedManifestDescriptorTypeDef(BaseModel): + Format: Optional[Literal["S3InventoryReport_CSV_20211130"]] = None + Location: Optional[JobManifestLocationTypeDef] = None + +class JobManifestTypeDef(BaseModel): + Spec: JobManifestSpecTypeDef + Location: JobManifestLocationTypeDef + +class JobProgressSummaryTypeDef(BaseModel): + TotalNumberOfTasks: Optional[int] = None + NumberOfTasksSucceeded: Optional[int] = None + NumberOfTasksFailed: Optional[int] = None + Timers: Optional[JobTimersTypeDef] = None + +class ListAccessGrantsInstancesResultTypeDef(BaseModel): + NextToken: str + AccessGrantsInstancesList: List[ListAccessGrantsInstanceEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessGrantsLocationsResultTypeDef(BaseModel): + NextToken: str + AccessGrantsLocationsList: List[ListAccessGrantsLocationsEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessPointsForObjectLambdaRequestListAccessPointsForObjectLambdaPaginateTypeDef(BaseModel): + AccountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegionalBucketsResultTypeDef(BaseModel): + RegionalBucketList: List[RegionalBucketTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStorageLensConfigurationsResultTypeDef(BaseModel): + NextToken: str + StorageLensConfigurationList: List[ListStorageLensConfigurationEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListStorageLensGroupsResultTypeDef(BaseModel): + NextToken: str + StorageLensGroupList: List[ListStorageLensGroupEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StorageLensGroupAndOperatorTypeDef(BaseModel): + MatchAnyPrefix: Optional[Sequence[str]] = None + MatchAnySuffix: Optional[Sequence[str]] = None + MatchAnyTag: Optional[Sequence[S3TagTypeDef]] = None + MatchObjectAge: Optional[MatchObjectAgeTypeDef] = None + MatchObjectSize: Optional[MatchObjectSizeTypeDef] = None + +class StorageLensGroupOrOperatorTypeDef(BaseModel): + MatchAnyPrefix: Optional[Sequence[str]] = None + MatchAnySuffix: Optional[Sequence[str]] = None + MatchAnyTag: Optional[Sequence[S3TagTypeDef]] = None + MatchObjectAge: Optional[MatchObjectAgeTypeDef] = None + MatchObjectSize: Optional[MatchObjectSizeTypeDef] = None + +class MetricsTypeDef(BaseModel): + Status: MetricsStatusType + EventThreshold: Optional[ReplicationTimeValueTypeDef] = None + +class ReplicationTimeTypeDef(BaseModel): + Status: ReplicationTimeStatusType + Time: ReplicationTimeValueTypeDef + +class MultiRegionAccessPointPolicyDocumentTypeDef(BaseModel): + Established: Optional[EstablishedMultiRegionAccessPointPolicyTypeDef] = None + Proposed: Optional[ProposedMultiRegionAccessPointPolicyTypeDef] = None + +class MultiRegionAccessPointsAsyncResponseTypeDef(BaseModel): + Regions: Optional[List[MultiRegionAccessPointRegionalResponseTypeDef]] = None + +class MultiRegionAccessPointReportTypeDef(BaseModel): + Name: Optional[str] = None + Alias: Optional[str] = None + CreatedAt: Optional[datetime] = None + PublicAccessBlock: Optional[PublicAccessBlockConfigurationTypeDef] = None + Status: Optional[MultiRegionAccessPointStatusType] = None + Regions: Optional[List[RegionReportTypeDef]] = None + +class PrefixLevelStorageMetricsTypeDef(BaseModel): + IsEnabled: Optional[bool] = None + SelectionCriteria: Optional[SelectionCriteriaTypeDef] = None + +class PutBucketVersioningRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + VersioningConfiguration: VersioningConfigurationTypeDef + MFA: Optional[str] = None + +class S3GrantTypeDef(BaseModel): + Grantee: Optional[S3GranteeTypeDef] = None + Permission: Optional[S3PermissionType] = None + +class S3SetObjectLegalHoldOperationTypeDef(BaseModel): + LegalHold: S3ObjectLockLegalHoldTypeDef + +class StorageLensDataExportEncryptionTypeDef(BaseModel): + SSES3: Optional[Dict[str, Any]] = None + SSEKMS: Optional[SSEKMSTypeDef] = None + +class SourceSelectionCriteriaTypeDef(BaseModel): + SseKmsEncryptedObjects: Optional[SseKmsEncryptedObjectsTypeDef] = None + ReplicaModifications: Optional[ReplicaModificationsTypeDef] = None + +class StorageLensGroupLevelTypeDef(BaseModel): + SelectionCriteria: Optional[StorageLensGroupLevelSelectionCriteriaTypeDef] = None + +class ListAccessPointsResultTypeDef(BaseModel): + AccessPointList: List[AccessPointTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ObjectLambdaTransformationConfigurationTypeDef(BaseModel): + Actions: Sequence[ObjectLambdaTransformationConfigurationActionType] + ContentTransformation: ObjectLambdaContentTransformationTypeDef + +class ListAccessGrantsResultTypeDef(BaseModel): + NextToken: str + AccessGrantsList: List[ListAccessGrantEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessPointsForObjectLambdaResultTypeDef(BaseModel): + ObjectLambdaAccessPointList: List[ObjectLambdaAccessPointTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LifecycleRuleFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[S3TagTypeDef] = None + And: Optional[LifecycleRuleAndOperatorTypeDef] = None + ObjectSizeGreaterThan: Optional[int] = None + ObjectSizeLessThan: Optional[int] = None + +class ReplicationRuleFilterTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[S3TagTypeDef] = None + And: Optional[ReplicationRuleAndOperatorTypeDef] = None + +class PutBucketTaggingRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + Tagging: TaggingTypeDef + +class AsyncRequestParametersTypeDef(BaseModel): + CreateMultiRegionAccessPointRequest: Optional[ CreateMultiRegionAccessPointInputTypeDef ] = None + DeleteMultiRegionAccessPointRequest: Optional[ DeleteMultiRegionAccessPointInputTypeDef ] = None + PutMultiRegionAccessPointPolicyRequest: Optional[ PutMultiRegionAccessPointPolicyInputTypeDef ] = None + +class CreateMultiRegionAccessPointRequestRequestTypeDef(BaseModel): + AccountId: str + ClientToken: str + Details: CreateMultiRegionAccessPointInputTypeDef + +class S3ManifestOutputLocationTypeDef(BaseModel): + Bucket: str + ManifestFormat: Literal["S3InventoryReport_CSV_20211130"] + ExpectedManifestBucketOwner: Optional[str] = None + ManifestPrefix: Optional[str] = None + ManifestEncryption: Optional[GeneratedManifestEncryptionTypeDef] = None + +class S3SetObjectRetentionOperationTypeDef(BaseModel): + Retention: S3RetentionTypeDef + BypassGovernanceRetention: Optional[bool] = None + +class JobListDescriptorTypeDef(BaseModel): + JobId: Optional[str] = None + Description: Optional[str] = None + Operation: Optional[OperationNameType] = None + Priority: Optional[int] = None + Status: Optional[JobStatusType] = None + CreationTime: Optional[datetime] = None + TerminationDate: Optional[datetime] = None + ProgressSummary: Optional[JobProgressSummaryTypeDef] = None + +class StorageLensGroupFilterTypeDef(BaseModel): + MatchAnyPrefix: Optional[Sequence[str]] = None + MatchAnySuffix: Optional[Sequence[str]] = None + MatchAnyTag: Optional[Sequence[S3TagTypeDef]] = None + MatchObjectAge: Optional[MatchObjectAgeTypeDef] = None + MatchObjectSize: Optional[MatchObjectSizeTypeDef] = None + And: Optional[StorageLensGroupAndOperatorTypeDef] = None + Or: Optional[StorageLensGroupOrOperatorTypeDef] = None + +class DestinationTypeDef(BaseModel): + Bucket: str + Account: Optional[str] = None + ReplicationTime: Optional[ReplicationTimeTypeDef] = None + AccessControlTranslation: Optional[AccessControlTranslationTypeDef] = None + EncryptionConfiguration: Optional[EncryptionConfigurationTypeDef] = None + Metrics: Optional[MetricsTypeDef] = None + StorageClass: Optional[ReplicationStorageClassType] = None + +class GetMultiRegionAccessPointPolicyResultTypeDef(BaseModel): + Policy: MultiRegionAccessPointPolicyDocumentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AsyncResponseDetailsTypeDef(BaseModel): + MultiRegionAccessPointDetails: Optional[MultiRegionAccessPointsAsyncResponseTypeDef] = None + ErrorDetails: Optional[AsyncErrorDetailsTypeDef] = None + +class GetMultiRegionAccessPointResultTypeDef(BaseModel): + AccessPoint: MultiRegionAccessPointReportTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMultiRegionAccessPointsResultTypeDef(BaseModel): + AccessPoints: List[MultiRegionAccessPointReportTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PrefixLevelTypeDef(BaseModel): + StorageMetrics: PrefixLevelStorageMetricsTypeDef + +class S3AccessControlListTypeDef(BaseModel): + Owner: S3ObjectOwnerTypeDef + Grants: Optional[Sequence[S3GrantTypeDef]] = None + +class S3CopyObjectOperationTypeDef(BaseModel): + TargetResource: Optional[str] = None + CannedAccessControlList: Optional[S3CannedAccessControlListType] = None + AccessControlGrants: Optional[Sequence[S3GrantTypeDef]] = None + MetadataDirective: Optional[S3MetadataDirectiveType] = None + ModifiedSinceConstraint: Optional[TimestampTypeDef] = None + NewObjectMetadata: Optional[S3ObjectMetadataTypeDef] = None + NewObjectTagging: Optional[Sequence[S3TagTypeDef]] = None + RedirectLocation: Optional[str] = None + RequesterPays: Optional[bool] = None + StorageClass: Optional[S3StorageClassType] = None + UnModifiedSinceConstraint: Optional[TimestampTypeDef] = None + SSEAwsKmsKeyId: Optional[str] = None + TargetKeyPrefix: Optional[str] = None + ObjectLockLegalHoldStatus: Optional[S3ObjectLockLegalHoldStatusType] = None + ObjectLockMode: Optional[S3ObjectLockModeType] = None + ObjectLockRetainUntilDate: Optional[TimestampTypeDef] = None + BucketKeyEnabled: Optional[bool] = None + ChecksumAlgorithm: Optional[S3ChecksumAlgorithmType] = None + +class S3BucketDestinationTypeDef(BaseModel): + Format: FormatType + OutputSchemaVersion: Literal["V_1"] + AccountId: str + Arn: str + Prefix: Optional[str] = None + Encryption: Optional[StorageLensDataExportEncryptionTypeDef] = None + +class ObjectLambdaConfigurationTypeDef(BaseModel): + SupportingAccessPoint: str + TransformationConfigurations: Sequence[ObjectLambdaTransformationConfigurationTypeDef] + CloudWatchMetricsEnabled: Optional[bool] = None + AllowedFeatures: Optional[Sequence[ObjectLambdaAllowedFeatureType]] = None + +class LifecycleRuleTypeDef(BaseModel): + Status: ExpirationStatusType + Expiration: Optional[LifecycleExpirationTypeDef] = None + ID: Optional[str] = None + Filter: Optional[LifecycleRuleFilterTypeDef] = None + Transitions: Optional[List[TransitionTypeDef]] = None + NoncurrentVersionTransitions: Optional[List[NoncurrentVersionTransitionTypeDef]] = None + NoncurrentVersionExpiration: Optional[NoncurrentVersionExpirationTypeDef] = None + AbortIncompleteMultipartUpload: Optional[AbortIncompleteMultipartUploadTypeDef] = None + +class S3JobManifestGeneratorTypeDef(BaseModel): + SourceBucket: str + EnableManifestOutput: bool + ExpectedBucketOwner: Optional[str] = None + ManifestOutputLocation: Optional[S3ManifestOutputLocationTypeDef] = None + Filter: Optional[JobManifestGeneratorFilterTypeDef] = None + +class ListJobsResultTypeDef(BaseModel): + NextToken: str + Jobs: List[JobListDescriptorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StorageLensGroupTypeDef(BaseModel): + Name: str + Filter: StorageLensGroupFilterTypeDef + StorageLensGroupArn: Optional[str] = None + +class ReplicationRuleTypeDef(BaseModel): + Status: ReplicationRuleStatusType + Destination: DestinationTypeDef + Bucket: str + ID: Optional[str] = None + Priority: Optional[int] = None + Prefix: Optional[str] = None + Filter: Optional[ReplicationRuleFilterTypeDef] = None + SourceSelectionCriteria: Optional[SourceSelectionCriteriaTypeDef] = None + ExistingObjectReplication: Optional[ExistingObjectReplicationTypeDef] = None + DeleteMarkerReplication: Optional[DeleteMarkerReplicationTypeDef] = None + +class AsyncOperationTypeDef(BaseModel): + CreationTime: Optional[datetime] = None + Operation: Optional[AsyncOperationNameType] = None + RequestTokenARN: Optional[str] = None + RequestParameters: Optional[AsyncRequestParametersTypeDef] = None + RequestStatus: Optional[str] = None + ResponseDetails: Optional[AsyncResponseDetailsTypeDef] = None + +class BucketLevelTypeDef(BaseModel): + ActivityMetrics: Optional[ActivityMetricsTypeDef] = None + PrefixLevel: Optional[PrefixLevelTypeDef] = None + AdvancedCostOptimizationMetrics: Optional[AdvancedCostOptimizationMetricsTypeDef] = None + AdvancedDataProtectionMetrics: Optional[AdvancedDataProtectionMetricsTypeDef] = None + DetailedStatusCodesMetrics: Optional[DetailedStatusCodesMetricsTypeDef] = None + +class S3AccessControlPolicyTypeDef(BaseModel): + AccessControlList: Optional[S3AccessControlListTypeDef] = None + CannedAccessControlList: Optional[S3CannedAccessControlListType] = None + +class StorageLensDataExportTypeDef(BaseModel): + S3BucketDestination: Optional[S3BucketDestinationTypeDef] = None + CloudWatchMetrics: Optional[CloudWatchMetricsTypeDef] = None + +class CreateAccessPointForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + Configuration: ObjectLambdaConfigurationTypeDef + +class GetAccessPointConfigurationForObjectLambdaResultTypeDef(BaseModel): + Configuration: ObjectLambdaConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccessPointConfigurationForObjectLambdaRequestRequestTypeDef(BaseModel): + AccountId: str + Name: str + Configuration: ObjectLambdaConfigurationTypeDef + +class GetBucketLifecycleConfigurationResultTypeDef(BaseModel): + Rules: List[LifecycleRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LifecycleConfigurationTypeDef(BaseModel): + Rules: Optional[Sequence[LifecycleRuleTypeDef]] = None + +class JobManifestGeneratorTypeDef(BaseModel): + S3JobManifestGenerator: Optional[S3JobManifestGeneratorTypeDef] = None + +class CreateStorageLensGroupRequestRequestTypeDef(BaseModel): + AccountId: str + StorageLensGroup: StorageLensGroupTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetStorageLensGroupResultTypeDef(BaseModel): + StorageLensGroup: StorageLensGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStorageLensGroupRequestRequestTypeDef(BaseModel): + Name: str + AccountId: str + StorageLensGroup: StorageLensGroupTypeDef + +class ReplicationConfigurationTypeDef(BaseModel): + Role: str + Rules: List[ReplicationRuleTypeDef] + +class DescribeMultiRegionAccessPointOperationResultTypeDef(BaseModel): + AsyncOperation: AsyncOperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AccountLevelTypeDef(BaseModel): + BucketLevel: BucketLevelTypeDef + ActivityMetrics: Optional[ActivityMetricsTypeDef] = None + AdvancedCostOptimizationMetrics: Optional[AdvancedCostOptimizationMetricsTypeDef] = None + AdvancedDataProtectionMetrics: Optional[AdvancedDataProtectionMetricsTypeDef] = None + DetailedStatusCodesMetrics: Optional[DetailedStatusCodesMetricsTypeDef] = None + StorageLensGroupLevel: Optional[StorageLensGroupLevelTypeDef] = None + +class S3SetObjectAclOperationTypeDef(BaseModel): + AccessControlPolicy: Optional[S3AccessControlPolicyTypeDef] = None + +class PutBucketLifecycleConfigurationRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + LifecycleConfiguration: Optional[LifecycleConfigurationTypeDef] = None + +class GetBucketReplicationResultTypeDef(BaseModel): + ReplicationConfiguration: ReplicationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutBucketReplicationRequestRequestTypeDef(BaseModel): + AccountId: str + Bucket: str + ReplicationConfiguration: ReplicationConfigurationTypeDef + +class StorageLensConfigurationTypeDef(BaseModel): + Id: str + AccountLevel: AccountLevelTypeDef + IsEnabled: bool + Include: Optional[IncludeTypeDef] = None + Exclude: Optional[ExcludeTypeDef] = None + DataExport: Optional[StorageLensDataExportTypeDef] = None + AwsOrg: Optional[StorageLensAwsOrgTypeDef] = None + StorageLensArn: Optional[str] = None + +class JobOperationTypeDef(BaseModel): + LambdaInvoke: Optional[LambdaInvokeOperationTypeDef] = None + S3PutObjectCopy: Optional[S3CopyObjectOperationTypeDef] = None + S3PutObjectAcl: Optional[S3SetObjectAclOperationTypeDef] = None + S3PutObjectTagging: Optional[S3SetObjectTaggingOperationTypeDef] = None + S3DeleteObjectTagging: Optional[Mapping[str, Any]] = None + S3InitiateRestoreObject: Optional[S3InitiateRestoreObjectOperationTypeDef] = None + S3PutObjectLegalHold: Optional[S3SetObjectLegalHoldOperationTypeDef] = None + S3PutObjectRetention: Optional[S3SetObjectRetentionOperationTypeDef] = None + S3ReplicateObject: Optional[Mapping[str, Any]] = None + +class GetStorageLensConfigurationResultTypeDef(BaseModel): + StorageLensConfiguration: StorageLensConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutStorageLensConfigurationRequestRequestTypeDef(BaseModel): + ConfigId: str + AccountId: str + StorageLensConfiguration: StorageLensConfigurationTypeDef + Tags: Optional[Sequence[StorageLensTagTypeDef]] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + AccountId: str + Operation: JobOperationTypeDef + Report: JobReportTypeDef + ClientRequestToken: str + Priority: int + RoleArn: str + ConfirmationRequired: Optional[bool] = None + Manifest: Optional[JobManifestTypeDef] = None + Description: Optional[str] = None + Tags: Optional[Sequence[S3TagTypeDef]] = None + ManifestGenerator: Optional[JobManifestGeneratorTypeDef] = None + +class JobDescriptorTypeDef(BaseModel): + JobId: Optional[str] = None + ConfirmationRequired: Optional[bool] = None + Description: Optional[str] = None + JobArn: Optional[str] = None + Status: Optional[JobStatusType] = None + Manifest: Optional[JobManifestTypeDef] = None + Operation: Optional[JobOperationTypeDef] = None + Priority: Optional[int] = None + ProgressSummary: Optional[JobProgressSummaryTypeDef] = None + StatusUpdateReason: Optional[str] = None + FailureReasons: Optional[List[JobFailureTypeDef]] = None + Report: Optional[JobReportTypeDef] = None + CreationTime: Optional[datetime] = None + TerminationDate: Optional[datetime] = None + RoleArn: Optional[str] = None + SuspendedDate: Optional[datetime] = None + SuspendedCause: Optional[str] = None + ManifestGenerator: Optional[JobManifestGeneratorTypeDef] = None + GeneratedManifestDescriptor: Optional[S3GeneratedManifestDescriptorTypeDef] = None + +class DescribeJobResultTypeDef(BaseModel): + Job: JobDescriptorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/s3control_constants.py b/aws_resource_validator/pydantic_models/s3control_constants.py new file mode 100644 index 00000000..0acec2d4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/s3control_constants.py @@ -0,0 +1,521 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AsyncOperationNameType = Literal["CreateMultiRegionAccessPoint", + "DeleteMultiRegionAccessPoint", + "PutMultiRegionAccessPointPolicy",] +BucketCannedACLType = Literal["authenticated-read", "private", "public-read", "public-read-write"] +BucketLocationConstraintType = Literal["EU", + "ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "cn-north-1", + "eu-central-1", + "eu-west-1", + "sa-east-1", + "us-west-1", + "us-west-2",] +BucketVersioningStatusType = Literal["Enabled", "Suspended"] +DeleteMarkerReplicationStatusType = Literal["Disabled", "Enabled"] +ExistingObjectReplicationStatusType = Literal["Disabled", "Enabled"] +ExpirationStatusType = Literal["Disabled", "Enabled"] +FormatType = Literal["CSV", "Parquet"] +GeneratedManifestFormatType = Literal["S3InventoryReport_CSV_20211130"] +GranteeTypeType = Literal["DIRECTORY_GROUP", "DIRECTORY_USER", "IAM"] +JobManifestFieldNameType = Literal["Bucket", "Ignore", "Key", "VersionId"] +JobManifestFormatType = Literal["S3BatchOperations_CSV_20180820", "S3InventoryReport_CSV_20161130"] +JobReportFormatType = Literal["Report_CSV_20180820"] +JobReportScopeType = Literal["AllTasks", "FailedTasksOnly"] +JobStatusType = Literal["Active", + "Cancelled", + "Cancelling", + "Complete", + "Completing", + "Failed", + "Failing", + "New", + "Paused", + "Pausing", + "Preparing", + "Ready", + "Suspended",] +ListAccessPointsForObjectLambdaPaginatorName = Literal["list_access_points_for_object_lambda"] +MFADeleteStatusType = Literal["Disabled", "Enabled"] +MFADeleteType = Literal["Disabled", "Enabled"] +MetricsStatusType = Literal["Disabled", "Enabled"] +MultiRegionAccessPointStatusType = Literal["CREATING", + "DELETING", + "INCONSISTENT_ACROSS_REGIONS", + "PARTIALLY_CREATED", + "PARTIALLY_DELETED", + "READY",] +NetworkOriginType = Literal["Internet", "VPC"] +ObjectLambdaAccessPointAliasStatusType = Literal["PROVISIONING", "READY"] +ObjectLambdaAllowedFeatureType = Literal["GetObject-PartNumber", "GetObject-Range", "HeadObject-PartNumber", "HeadObject-Range"] +ObjectLambdaTransformationConfigurationActionType = Literal["GetObject", "HeadObject", "ListObjects", "ListObjectsV2"] +OperationNameType = Literal["LambdaInvoke", + "S3DeleteObjectTagging", + "S3InitiateRestoreObject", + "S3PutObjectAcl", + "S3PutObjectCopy", + "S3PutObjectLegalHold", + "S3PutObjectRetention", + "S3PutObjectTagging", + "S3ReplicateObject",] +OutputSchemaVersionType = Literal["V_1"] +OwnerOverrideType = Literal["Destination"] +PermissionType = Literal["READ", "READWRITE", "WRITE"] +PrivilegeType = Literal["Default", "Minimal"] +ReplicaModificationsStatusType = Literal["Disabled", "Enabled"] +ReplicationRuleStatusType = Literal["Disabled", "Enabled"] +ReplicationStatusType = Literal["COMPLETED", "FAILED", "NONE", "REPLICA"] +ReplicationStorageClassType = Literal["DEEP_ARCHIVE", + "GLACIER", + "GLACIER_IR", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "OUTPOSTS", + "REDUCED_REDUNDANCY", + "STANDARD", + "STANDARD_IA",] +ReplicationTimeStatusType = Literal["Disabled", "Enabled"] +RequestedJobStatusType = Literal["Cancelled", "Ready"] +S3CannedAccessControlListType = Literal["authenticated-read", + "aws-exec-read", + "bucket-owner-full-control", + "bucket-owner-read", + "private", + "public-read", + "public-read-write",] +S3ChecksumAlgorithmType = Literal["CRC32", "CRC32C", "SHA1", "SHA256"] +S3GlacierJobTierType = Literal["BULK", "STANDARD"] +S3GranteeTypeIdentifierType = Literal["emailAddress", "id", "uri"] +S3MetadataDirectiveType = Literal["COPY", "REPLACE"] +S3ObjectLockLegalHoldStatusType = Literal["OFF", "ON"] +S3ObjectLockModeType = Literal["COMPLIANCE", "GOVERNANCE"] +S3ObjectLockRetentionModeType = Literal["COMPLIANCE", "GOVERNANCE"] +S3PermissionType = Literal["FULL_CONTROL", "READ", "READ_ACP", "WRITE", "WRITE_ACP"] +S3PrefixTypeType = Literal["Object"] +S3SSEAlgorithmType = Literal["AES256", "KMS"] +S3StorageClassType = Literal["DEEP_ARCHIVE", + "GLACIER", + "GLACIER_IR", + "INTELLIGENT_TIERING", + "ONEZONE_IA", + "STANDARD", + "STANDARD_IA",] +SseKmsEncryptedObjectsStatusType = Literal["Disabled", "Enabled"] +TransitionStorageClassType = Literal["DEEP_ARCHIVE", "GLACIER", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA"] +S3ControlServiceName = Literal["s3control"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_access_points_for_object_lambda"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/s3outposts_classes.py b/aws_resource_validator/pydantic_models/s3outposts_classes.py new file mode 100644 index 00000000..babf014f --- /dev/null +++ b/aws_resource_validator/pydantic_models/s3outposts_classes.py @@ -0,0 +1,109 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.s3outposts_constants import * + +class CreateEndpointRequestRequestTypeDef(BaseModel): + OutpostId: str + SubnetId: str + SecurityGroupId: str + AccessType: Optional[EndpointAccessTypeType] = None + CustomerOwnedIpv4Pool: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteEndpointRequestRequestTypeDef(BaseModel): + EndpointId: str + OutpostId: str + +class FailedReasonTypeDef(BaseModel): + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class NetworkInterfaceTypeDef(BaseModel): + NetworkInterfaceId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEndpointsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListOutpostsWithS3RequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OutpostTypeDef(BaseModel): + OutpostArn: Optional[str] = None + S3OutpostArn: Optional[str] = None + OutpostId: Optional[str] = None + OwnerId: Optional[str] = None + CapacityInBytes: Optional[int] = None + +class ListSharedEndpointsRequestRequestTypeDef(BaseModel): + OutpostId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class CreateEndpointResultTypeDef(BaseModel): + EndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class EndpointTypeDef(BaseModel): + EndpointArn: Optional[str] = None + OutpostsId: Optional[str] = None + CidrBlock: Optional[str] = None + Status: Optional[EndpointStatusType] = None + CreationTime: Optional[datetime] = None + NetworkInterfaces: Optional[List[NetworkInterfaceTypeDef]] = None + VpcId: Optional[str] = None + SubnetId: Optional[str] = None + SecurityGroupId: Optional[str] = None + AccessType: Optional[EndpointAccessTypeType] = None + CustomerOwnedIpv4Pool: Optional[str] = None + FailedReason: Optional[FailedReasonTypeDef] = None + +class ListEndpointsRequestListEndpointsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOutpostsWithS3RequestListOutpostsWithS3PaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSharedEndpointsRequestListSharedEndpointsPaginateTypeDef(BaseModel): + OutpostId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOutpostsWithS3ResultTypeDef(BaseModel): + Outposts: List[OutpostTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListEndpointsResultTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSharedEndpointsResultTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/s3outposts_constants.py b/aws_resource_validator/pydantic_models/s3outposts_constants.py new file mode 100644 index 00000000..bb749ed3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/s3outposts_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EndpointAccessTypeType = Literal["CustomerOwnedIp", "Private"] +EndpointStatusType = Literal["Available", "Create_Failed", "Delete_Failed", "Deleting", "Pending"] +ListEndpointsPaginatorName = Literal["list_endpoints"] +ListOutpostsWithS3PaginatorName = Literal["list_outposts_with_s3"] +ListSharedEndpointsPaginatorName = Literal["list_shared_endpoints"] +S3OutpostsServiceName = Literal["s3outposts"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_endpoints", "list_outposts_with_s3", "list_shared_endpoints"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_classes.py b/aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_classes.py new file mode 100644 index 00000000..1b09cc04 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_classes.py @@ -0,0 +1,91 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_a2i_runtime_constants import * + +class DeleteHumanLoopRequestRequestTypeDef(BaseModel): + HumanLoopName: str + +class DescribeHumanLoopRequestRequestTypeDef(BaseModel): + HumanLoopName: str + +class HumanLoopOutputTypeDef(BaseModel): + OutputS3Uri: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class HumanLoopDataAttributesTypeDef(BaseModel): + ContentClassifiers: Sequence[ContentClassifierType] + +class HumanLoopInputTypeDef(BaseModel): + InputContent: str + +class HumanLoopSummaryTypeDef(BaseModel): + HumanLoopName: Optional[str] = None + HumanLoopStatus: Optional[HumanLoopStatusType] = None + CreationTime: Optional[datetime] = None + FailureReason: Optional[str] = None + FlowDefinitionArn: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class StopHumanLoopRequestRequestTypeDef(BaseModel): + HumanLoopName: str + +class DescribeHumanLoopResponseTypeDef(BaseModel): + CreationTime: datetime + FailureReason: str + FailureCode: str + HumanLoopStatus: HumanLoopStatusType + HumanLoopName: str + HumanLoopArn: str + FlowDefinitionArn: str + HumanLoopOutput: HumanLoopOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartHumanLoopResponseTypeDef(BaseModel): + HumanLoopArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartHumanLoopRequestRequestTypeDef(BaseModel): + HumanLoopName: str + FlowDefinitionArn: str + HumanLoopInput: HumanLoopInputTypeDef + DataAttributes: Optional[HumanLoopDataAttributesTypeDef] = None + +class ListHumanLoopsResponseTypeDef(BaseModel): + HumanLoopSummaries: List[HumanLoopSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListHumanLoopsRequestListHumanLoopsPaginateTypeDef(BaseModel): + FlowDefinitionArn: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHumanLoopsRequestRequestTypeDef(BaseModel): + FlowDefinitionArn: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + diff --git a/aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_constants.py b/aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_constants.py new file mode 100644 index 00000000..9c268be2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_a2i_runtime_constants.py @@ -0,0 +1,394 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ContentClassifierType = Literal["FreeOfAdultContent", "FreeOfPersonallyIdentifiableInformation"] +HumanLoopStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +ListHumanLoopsPaginatorName = Literal["list_human_loops"] +SortOrderType = Literal["Ascending", "Descending"] +AugmentedAIRuntimeServiceName = Literal["sagemaker-a2i-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_human_loops"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/sagemaker_classes.py b/aws_resource_validator/pydantic_models/sagemaker_classes.py new file mode 100644 index 00000000..38f92b25 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_classes.py @@ -0,0 +1,9411 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_constants import * + +class ActionSourceTypeDef(BaseModel): + SourceUri: str + SourceType: Optional[str] = None + SourceId: Optional[str] = None + +class AddAssociationRequestRequestTypeDef(BaseModel): + SourceArn: str + DestinationArn: str + AssociationType: Optional[AssociationEdgeTypeType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AdditionalS3DataSourceTypeDef(BaseModel): + S3DataType: AdditionalS3DataSourceDataTypeType + S3Uri: str + CompressionType: Optional[CompressionTypeType] = None + +class AgentVersionTypeDef(BaseModel): + Version: str + AgentCount: int + +class AlarmTypeDef(BaseModel): + AlarmName: Optional[str] = None + +class MetricDefinitionTypeDef(BaseModel): + Name: str + Regex: str + +class AlgorithmStatusItemTypeDef(BaseModel): + Name: str + Status: DetailedAlgorithmStatusType + FailureReason: Optional[str] = None + +class AlgorithmSummaryTypeDef(BaseModel): + AlgorithmName: str + AlgorithmArn: str + CreationTime: datetime + AlgorithmStatus: AlgorithmStatusType + AlgorithmDescription: Optional[str] = None + +class AmazonQSettingsTypeDef(BaseModel): + Status: Optional[FeatureStatusType] = None + QProfileArn: Optional[str] = None + +class AnnotationConsolidationConfigTypeDef(BaseModel): + AnnotationConsolidationLambdaArn: str + +class ResourceSpecTypeDef(BaseModel): + SageMakerImageArn: Optional[str] = None + SageMakerImageVersionArn: Optional[str] = None + SageMakerImageVersionAlias: Optional[str] = None + InstanceType: Optional[AppInstanceTypeType] = None + LifecycleConfigArn: Optional[str] = None + +class AppSpecificationExtraOutputTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + +class AppSpecificationOutputTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + +class AppSpecificationTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[Sequence[str]] = None + ContainerArguments: Optional[Sequence[str]] = None + +class ArtifactSourceTypeTypeDef(BaseModel): + SourceIdType: ArtifactSourceIdTypeType + Value: str + +class AssociateTrialComponentRequestRequestTypeDef(BaseModel): + TrialComponentName: str + TrialName: str + +class AsyncInferenceClientConfigTypeDef(BaseModel): + MaxConcurrentInvocationsPerInstance: Optional[int] = None + +class AsyncInferenceNotificationConfigOutputTypeDef(BaseModel): + SuccessTopic: Optional[str] = None + ErrorTopic: Optional[str] = None + IncludeInferenceResponseIn: Optional[List[AsyncNotificationTopicTypesType]] = None + +class AsyncInferenceNotificationConfigTypeDef(BaseModel): + SuccessTopic: Optional[str] = None + ErrorTopic: Optional[str] = None + IncludeInferenceResponseIn: Optional[Sequence[AsyncNotificationTopicTypesType]] = None + +class AthenaDatasetDefinitionTypeDef(BaseModel): + Catalog: str + Database: str + QueryString: str + OutputS3Uri: str + OutputFormat: AthenaResultFormatType + WorkGroup: Optional[str] = None + KmsKeyId: Optional[str] = None + OutputCompression: Optional[AthenaResultCompressionTypeType] = None + +class AutoMLAlgorithmConfigOutputTypeDef(BaseModel): + AutoMLAlgorithms: List[AutoMLAlgorithmType] + +class AutoMLAlgorithmConfigTypeDef(BaseModel): + AutoMLAlgorithms: Sequence[AutoMLAlgorithmType] + +class AutoMLCandidateStepTypeDef(BaseModel): + CandidateStepType: CandidateStepTypeType + CandidateStepArn: str + CandidateStepName: str + +class AutoMLContainerDefinitionTypeDef(BaseModel): + Image: str + ModelDataUrl: str + Environment: Optional[Dict[str, str]] = None + +class FinalAutoMLJobObjectiveMetricTypeDef(BaseModel): + MetricName: AutoMLMetricEnumType + Value: float + Type: Optional[AutoMLJobObjectiveTypeType] = None + StandardMetricName: Optional[AutoMLMetricEnumType] = None + +class AutoMLS3DataSourceTypeDef(BaseModel): + S3DataType: AutoMLS3DataTypeType + S3Uri: str + +class AutoMLDataSplitConfigTypeDef(BaseModel): + ValidationFraction: Optional[float] = None + +class AutoMLJobArtifactsTypeDef(BaseModel): + CandidateDefinitionNotebookLocation: Optional[str] = None + DataExplorationNotebookLocation: Optional[str] = None + +class AutoMLJobCompletionCriteriaTypeDef(BaseModel): + MaxCandidates: Optional[int] = None + MaxRuntimePerTrainingJobInSeconds: Optional[int] = None + MaxAutoMLJobRuntimeInSeconds: Optional[int] = None + +class AutoMLJobObjectiveTypeDef(BaseModel): + MetricName: AutoMLMetricEnumType + +class AutoMLJobStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + +class AutoMLPartialFailureReasonTypeDef(BaseModel): + PartialFailureMessage: Optional[str] = None + +class AutoMLOutputDataConfigTypeDef(BaseModel): + S3OutputPath: str + KmsKeyId: Optional[str] = None + +class TabularResolvedAttributesTypeDef(BaseModel): + ProblemType: Optional[ProblemTypeType] = None + +class TextGenerationResolvedAttributesTypeDef(BaseModel): + BaseModelName: Optional[str] = None + +class VpcConfigOutputTypeDef(BaseModel): + SecurityGroupIds: List[str] + Subnets: List[str] + +class VpcConfigTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + Subnets: Sequence[str] + +class AutoParameterTypeDef(BaseModel): + Name: str + ValueHint: str + +class AutotuneTypeDef(BaseModel): + Mode: Literal["Enabled"] + +class BatchDataCaptureConfigTypeDef(BaseModel): + DestinationS3Uri: str + KmsKeyId: Optional[str] = None + GenerateInferenceId: Optional[bool] = None + +class BatchDescribeModelPackageErrorTypeDef(BaseModel): + ErrorCode: str + ErrorResponse: str + +class BatchDescribeModelPackageInputRequestTypeDef(BaseModel): + ModelPackageArnList: Sequence[str] + +class BestObjectiveNotImprovingTypeDef(BaseModel): + MaxNumberOfTrainingJobsNotImproving: Optional[int] = None + +class MetricsSourceTypeDef(BaseModel): + ContentType: str + S3Uri: str + ContentDigest: Optional[str] = None + +class CacheHitResultTypeDef(BaseModel): + SourcePipelineExecutionArn: Optional[str] = None + +class OutputParameterTypeDef(BaseModel): + Name: str + Value: str + +class CandidateArtifactLocationsTypeDef(BaseModel): + Explainability: str + ModelInsights: Optional[str] = None + BacktestResults: Optional[str] = None + +class MetricDatumTypeDef(BaseModel): + MetricName: Optional[AutoMLMetricEnumType] = None + Value: Optional[float] = None + Set: Optional[MetricSetSourceType] = None + StandardMetricName: Optional[AutoMLMetricExtendedEnumType] = None + +class DirectDeploySettingsTypeDef(BaseModel): + Status: Optional[FeatureStatusType] = None + +class GenerativeAiSettingsTypeDef(BaseModel): + AmazonBedrockRoleArn: Optional[str] = None + +class IdentityProviderOAuthSettingTypeDef(BaseModel): + DataSourceName: Optional[DataSourceNameType] = None + Status: Optional[FeatureStatusType] = None + SecretArn: Optional[str] = None + +class KendraSettingsTypeDef(BaseModel): + Status: Optional[FeatureStatusType] = None + +class ModelRegisterSettingsTypeDef(BaseModel): + Status: Optional[FeatureStatusType] = None + CrossAccountModelRegisterRoleArn: Optional[str] = None + +class TimeSeriesForecastingSettingsTypeDef(BaseModel): + Status: Optional[FeatureStatusType] = None + AmazonForecastRoleArn: Optional[str] = None + +class WorkspaceSettingsTypeDef(BaseModel): + S3ArtifactPath: Optional[str] = None + S3KmsKeyId: Optional[str] = None + +class CapacitySizeTypeDef(BaseModel): + Type: CapacitySizeTypeType + Value: int + +class CaptureContentTypeHeaderOutputTypeDef(BaseModel): + CsvContentTypes: Optional[List[str]] = None + JsonContentTypes: Optional[List[str]] = None + +class CaptureContentTypeHeaderTypeDef(BaseModel): + CsvContentTypes: Optional[Sequence[str]] = None + JsonContentTypes: Optional[Sequence[str]] = None + +class CaptureOptionTypeDef(BaseModel): + CaptureMode: CaptureModeType + +class CategoricalParameterOutputTypeDef(BaseModel): + Name: str + Value: List[str] + +class CategoricalParameterRangeExtraOutputTypeDef(BaseModel): + Name: str + Values: List[str] + +class CategoricalParameterRangeOutputTypeDef(BaseModel): + Name: str + Values: List[str] + +class CategoricalParameterRangeSpecificationOutputTypeDef(BaseModel): + Values: List[str] + +class CategoricalParameterRangeSpecificationTypeDef(BaseModel): + Values: Sequence[str] + +class CategoricalParameterRangeTypeDef(BaseModel): + Name: str + Values: Sequence[str] + +class CategoricalParameterTypeDef(BaseModel): + Name: str + Value: Sequence[str] + +class ShuffleConfigTypeDef(BaseModel): + Seed: int + +class ChannelSpecificationOutputTypeDef(BaseModel): + Name: str + SupportedContentTypes: List[str] + SupportedInputModes: List[TrainingInputModeType] + Description: Optional[str] = None + IsRequired: Optional[bool] = None + SupportedCompressionTypes: Optional[List[CompressionTypeType]] = None + +class ChannelSpecificationTypeDef(BaseModel): + Name: str + SupportedContentTypes: Sequence[str] + SupportedInputModes: Sequence[TrainingInputModeType] + Description: Optional[str] = None + IsRequired: Optional[bool] = None + SupportedCompressionTypes: Optional[Sequence[CompressionTypeType]] = None + +class CheckpointConfigTypeDef(BaseModel): + S3Uri: str + LocalPath: Optional[str] = None + +class ClarifyCheckStepMetadataTypeDef(BaseModel): + CheckType: Optional[str] = None + BaselineUsedForDriftCheckConstraints: Optional[str] = None + CalculatedBaselineConstraints: Optional[str] = None + ModelPackageGroupName: Optional[str] = None + ViolationReport: Optional[str] = None + CheckJobArn: Optional[str] = None + SkipCheck: Optional[bool] = None + RegisterNewBaseline: Optional[bool] = None + +class ClarifyInferenceConfigOutputTypeDef(BaseModel): + FeaturesAttribute: Optional[str] = None + ContentTemplate: Optional[str] = None + MaxRecordCount: Optional[int] = None + MaxPayloadInMB: Optional[int] = None + ProbabilityIndex: Optional[int] = None + LabelIndex: Optional[int] = None + ProbabilityAttribute: Optional[str] = None + LabelAttribute: Optional[str] = None + LabelHeaders: Optional[List[str]] = None + FeatureHeaders: Optional[List[str]] = None + FeatureTypes: Optional[List[ClarifyFeatureTypeType]] = None + +class ClarifyInferenceConfigTypeDef(BaseModel): + FeaturesAttribute: Optional[str] = None + ContentTemplate: Optional[str] = None + MaxRecordCount: Optional[int] = None + MaxPayloadInMB: Optional[int] = None + ProbabilityIndex: Optional[int] = None + LabelIndex: Optional[int] = None + ProbabilityAttribute: Optional[str] = None + LabelAttribute: Optional[str] = None + LabelHeaders: Optional[Sequence[str]] = None + FeatureHeaders: Optional[Sequence[str]] = None + FeatureTypes: Optional[Sequence[ClarifyFeatureTypeType]] = None + +class ClarifyShapBaselineConfigTypeDef(BaseModel): + MimeType: Optional[str] = None + ShapBaseline: Optional[str] = None + ShapBaselineUri: Optional[str] = None + +class ClarifyTextConfigTypeDef(BaseModel): + Language: ClarifyTextLanguageType + Granularity: ClarifyTextGranularityType + +class ClusterEbsVolumeConfigTypeDef(BaseModel): + VolumeSizeInGB: int + +class ClusterLifeCycleConfigTypeDef(BaseModel): + SourceS3Uri: str + OnCreate: str + +class ClusterInstancePlacementTypeDef(BaseModel): + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + +class ClusterInstanceStatusDetailsTypeDef(BaseModel): + Status: ClusterInstanceStatusType + Message: Optional[str] = None + +class ClusterSummaryTypeDef(BaseModel): + ClusterArn: str + ClusterName: str + CreationTime: datetime + ClusterStatus: ClusterStatusType + +class ContainerConfigExtraOutputTypeDef(BaseModel): + ContainerArguments: Optional[List[str]] = None + ContainerEntrypoint: Optional[List[str]] = None + ContainerEnvironmentVariables: Optional[Dict[str, str]] = None + +class FileSystemConfigTypeDef(BaseModel): + MountPath: Optional[str] = None + DefaultUid: Optional[int] = None + DefaultGid: Optional[int] = None + +class ContainerConfigOutputTypeDef(BaseModel): + ContainerArguments: Optional[List[str]] = None + ContainerEntrypoint: Optional[List[str]] = None + ContainerEnvironmentVariables: Optional[Dict[str, str]] = None + +class ContainerConfigTypeDef(BaseModel): + ContainerArguments: Optional[Sequence[str]] = None + ContainerEntrypoint: Optional[Sequence[str]] = None + ContainerEnvironmentVariables: Optional[Mapping[str, str]] = None + +class CustomImageTypeDef(BaseModel): + ImageName: str + AppImageConfigName: str + ImageVersionNumber: Optional[int] = None + +class GitConfigTypeDef(BaseModel): + RepositoryUrl: str + Branch: Optional[str] = None + SecretArn: Optional[str] = None + +class CodeRepositoryTypeDef(BaseModel): + RepositoryUrl: str + +class CognitoConfigTypeDef(BaseModel): + UserPool: str + ClientId: str + +class CognitoMemberDefinitionTypeDef(BaseModel): + UserPool: str + UserGroup: str + ClientId: str + +class VectorConfigTypeDef(BaseModel): + Dimension: int + +class CollectionConfigurationExtraOutputTypeDef(BaseModel): + CollectionName: Optional[str] = None + CollectionParameters: Optional[Dict[str, str]] = None + +class CollectionConfigurationOutputTypeDef(BaseModel): + CollectionName: Optional[str] = None + CollectionParameters: Optional[Dict[str, str]] = None + +class CollectionConfigurationTypeDef(BaseModel): + CollectionName: Optional[str] = None + CollectionParameters: Optional[Mapping[str, str]] = None + +class CompilationJobSummaryTypeDef(BaseModel): + CompilationJobName: str + CompilationJobArn: str + CreationTime: datetime + CompilationJobStatus: CompilationJobStatusType + CompilationStartTime: Optional[datetime] = None + CompilationEndTime: Optional[datetime] = None + CompilationTargetDevice: Optional[TargetDeviceType] = None + CompilationTargetPlatformOs: Optional[TargetPlatformOsType] = None + CompilationTargetPlatformArch: Optional[TargetPlatformArchType] = None + CompilationTargetPlatformAccelerator: Optional[TargetPlatformAcceleratorType] = None + LastModifiedTime: Optional[datetime] = None + +class ConditionStepMetadataTypeDef(BaseModel): + Outcome: Optional[ConditionOutcomeType] = None + +class MultiModelConfigTypeDef(BaseModel): + ModelCacheSetting: Optional[ModelCacheSettingType] = None + +class ContextSourceTypeDef(BaseModel): + SourceUri: str + SourceType: Optional[str] = None + SourceId: Optional[str] = None + +class ContinuousParameterRangeSpecificationTypeDef(BaseModel): + MinValue: str + MaxValue: str + +class ContinuousParameterRangeTypeDef(BaseModel): + Name: str + MinValue: str + MaxValue: str + ScalingType: Optional[HyperParameterScalingTypeType] = None + +class ConvergenceDetectedTypeDef(BaseModel): + CompleteOnConvergence: Optional[CompleteOnConvergenceType] = None + +class MetadataPropertiesTypeDef(BaseModel): + CommitId: Optional[str] = None + Repository: Optional[str] = None + GeneratedBy: Optional[str] = None + ProjectId: Optional[str] = None + +class ModelDeployConfigTypeDef(BaseModel): + AutoGenerateEndpointName: Optional[bool] = None + EndpointName: Optional[str] = None + +class InputConfigTypeDef(BaseModel): + S3Uri: str + Framework: FrameworkType + DataInputConfig: Optional[str] = None + FrameworkVersion: Optional[str] = None + +class NeoVpcConfigTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + Subnets: Sequence[str] + +class StoppingConditionTypeDef(BaseModel): + MaxRuntimeInSeconds: Optional[int] = None + MaxWaitTimeInSeconds: Optional[int] = None + MaxPendingTimeInSeconds: Optional[int] = None + +class DataQualityAppSpecificationTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[Sequence[str]] = None + ContainerArguments: Optional[Sequence[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + Environment: Optional[Mapping[str, str]] = None + +class MonitoringStoppingConditionTypeDef(BaseModel): + MaxRuntimeInSeconds: int + +class EdgeOutputConfigTypeDef(BaseModel): + S3OutputLocation: str + KmsKeyId: Optional[str] = None + PresetDeploymentType: Optional[Literal["GreengrassV2Component"]] = None + PresetDeploymentConfig: Optional[str] = None + +class EdgeDeploymentModelConfigTypeDef(BaseModel): + ModelHandle: str + EdgePackagingJobName: str + +class ThroughputConfigTypeDef(BaseModel): + ThroughputMode: ThroughputModeType + ProvisionedReadCapacityUnits: Optional[int] = None + ProvisionedWriteCapacityUnits: Optional[int] = None + +class FlowDefinitionOutputConfigTypeDef(BaseModel): + S3OutputPath: str + KmsKeyId: Optional[str] = None + +class HumanLoopRequestSourceTypeDef(BaseModel): + AwsManagedHumanLoopRequestSource: AwsManagedHumanLoopRequestSourceType + +class HubS3StorageConfigTypeDef(BaseModel): + S3OutputPath: Optional[str] = None + +class UiTemplateTypeDef(BaseModel): + Content: str + +class CreateImageVersionRequestRequestTypeDef(BaseModel): + BaseImage: str + ClientToken: str + ImageName: str + Aliases: Optional[Sequence[str]] = None + VendorGuidance: Optional[VendorGuidanceType] = None + JobType: Optional[JobTypeType] = None + MLFramework: Optional[str] = None + ProgrammingLang: Optional[str] = None + Processor: Optional[ProcessorType] = None + Horovod: Optional[bool] = None + ReleaseNotes: Optional[str] = None + +class InferenceComponentRuntimeConfigTypeDef(BaseModel): + CopyCount: int + +class LabelingJobOutputConfigTypeDef(BaseModel): + S3OutputPath: str + KmsKeyId: Optional[str] = None + SnsTopicArn: Optional[str] = None + +class LabelingJobStoppingConditionsTypeDef(BaseModel): + MaxHumanLabeledObjectCount: Optional[int] = None + MaxPercentageOfInputDatasetLabeled: Optional[int] = None + +class ModelBiasAppSpecificationTypeDef(BaseModel): + ImageUri: str + ConfigUri: str + Environment: Optional[Mapping[str, str]] = None + +class ModelCardExportOutputConfigTypeDef(BaseModel): + S3OutputPath: str + +class ModelCardSecurityConfigTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + +class ModelExplainabilityAppSpecificationTypeDef(BaseModel): + ImageUri: str + ConfigUri: str + Environment: Optional[Mapping[str, str]] = None + +class InferenceExecutionConfigTypeDef(BaseModel): + Mode: InferenceExecutionModeType + +class ModelPackageModelCardTypeDef(BaseModel): + ModelCardContent: Optional[str] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + +class ModelPackageSecurityConfigTypeDef(BaseModel): + KmsKeyId: str + +class ModelQualityAppSpecificationTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[Sequence[str]] = None + ContainerArguments: Optional[Sequence[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + ProblemType: Optional[MonitoringProblemTypeType] = None + Environment: Optional[Mapping[str, str]] = None + +class InstanceMetadataServiceConfigurationTypeDef(BaseModel): + MinimumInstanceMetadataServiceVersion: str + +class NotebookInstanceLifecycleHookTypeDef(BaseModel): + Content: Optional[str] = None + +class OptimizationJobOutputConfigTypeDef(BaseModel): + S3OutputLocation: str + KmsKeyId: Optional[str] = None + +class OptimizationVpcConfigTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + Subnets: Sequence[str] + +class ParallelismConfigurationTypeDef(BaseModel): + MaxParallelExecutionSteps: int + +class PipelineDefinitionS3LocationTypeDef(BaseModel): + Bucket: str + ObjectKey: str + VersionId: Optional[str] = None + +class CreatePresignedDomainUrlRequestRequestTypeDef(BaseModel): + DomainId: str + UserProfileName: str + SessionExpirationDurationInSeconds: Optional[int] = None + ExpiresInSeconds: Optional[int] = None + SpaceName: Optional[str] = None + LandingUri: Optional[str] = None + +class CreatePresignedMlflowTrackingServerUrlRequestRequestTypeDef(BaseModel): + TrackingServerName: str + ExpiresInSeconds: Optional[int] = None + SessionExpirationDurationInSeconds: Optional[int] = None + +class CreatePresignedNotebookInstanceUrlInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + SessionExpirationDurationInSeconds: Optional[int] = None + +class ExperimentConfigTypeDef(BaseModel): + ExperimentName: Optional[str] = None + TrialName: Optional[str] = None + TrialComponentDisplayName: Optional[str] = None + RunName: Optional[str] = None + +class ProcessingStoppingConditionTypeDef(BaseModel): + MaxRuntimeInSeconds: int + +class OwnershipSettingsTypeDef(BaseModel): + OwnerUserProfileName: str + +class SpaceSharingSettingsTypeDef(BaseModel): + SharingType: SharingTypeType + +class InfraCheckConfigTypeDef(BaseModel): + EnableInfraCheck: Optional[bool] = None + +class OutputDataConfigTypeDef(BaseModel): + S3OutputPath: str + KmsKeyId: Optional[str] = None + CompressionType: Optional[OutputCompressionTypeType] = None + +class ProfilerConfigTypeDef(BaseModel): + S3OutputPath: Optional[str] = None + ProfilingIntervalInMilliseconds: Optional[int] = None + ProfilingParameters: Optional[Mapping[str, str]] = None + DisableProfiler: Optional[bool] = None + +class RemoteDebugConfigTypeDef(BaseModel): + EnableRemoteDebug: Optional[bool] = None + +class RetryStrategyTypeDef(BaseModel): + MaximumRetryAttempts: int + +class SessionChainingConfigTypeDef(BaseModel): + EnableSessionTagChaining: Optional[bool] = None + +class TensorBoardOutputConfigTypeDef(BaseModel): + S3OutputPath: str + LocalPath: Optional[str] = None + +class DataProcessingTypeDef(BaseModel): + InputFilter: Optional[str] = None + OutputFilter: Optional[str] = None + JoinSource: Optional[JoinSourceType] = None + +class ModelClientConfigTypeDef(BaseModel): + InvocationsTimeoutInSeconds: Optional[int] = None + InvocationsMaxRetries: Optional[int] = None + +class TransformOutputTypeDef(BaseModel): + S3OutputPath: str + Accept: Optional[str] = None + AssembleWith: Optional[AssemblyTypeType] = None + KmsKeyId: Optional[str] = None + +class TransformResourcesTypeDef(BaseModel): + InstanceType: TransformInstanceTypeType + InstanceCount: int + VolumeKmsKeyId: Optional[str] = None + +class TrialComponentArtifactTypeDef(BaseModel): + Value: str + MediaType: Optional[str] = None + +class TrialComponentParameterValueTypeDef(BaseModel): + StringValue: Optional[str] = None + NumberValue: Optional[float] = None + +class TrialComponentStatusTypeDef(BaseModel): + PrimaryStatus: Optional[TrialComponentPrimaryStatusType] = None + Message: Optional[str] = None + +class OidcConfigTypeDef(BaseModel): + ClientId: str + ClientSecret: str + Issuer: str + AuthorizationEndpoint: str + TokenEndpoint: str + UserInfoEndpoint: str + LogoutEndpoint: str + JwksUri: str + Scope: Optional[str] = None + AuthenticationRequestExtraParams: Optional[Mapping[str, str]] = None + +class SourceIpConfigTypeDef(BaseModel): + Cidrs: Sequence[str] + +class WorkforceVpcConfigRequestTypeDef(BaseModel): + VpcId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + Subnets: Optional[Sequence[str]] = None + +class NotificationConfigurationTypeDef(BaseModel): + NotificationTopicArn: Optional[str] = None + +class EFSFileSystemConfigTypeDef(BaseModel): + FileSystemId: str + FileSystemPath: Optional[str] = None + +class EFSFileSystemTypeDef(BaseModel): + FileSystemId: str + +class CustomPosixUserConfigTypeDef(BaseModel): + Uid: int + Gid: int + +class CustomizedMetricSpecificationTypeDef(BaseModel): + MetricName: Optional[str] = None + Namespace: Optional[str] = None + Statistic: Optional[StatisticType] = None + +class DataCaptureConfigSummaryTypeDef(BaseModel): + EnableCapture: bool + CaptureStatus: CaptureStatusType + CurrentSamplingPercentage: int + DestinationS3Uri: str + KmsKeyId: str + +class DataCatalogConfigTypeDef(BaseModel): + TableName: str + Catalog: str + Database: str + +class DataQualityAppSpecificationOutputTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + Environment: Optional[Dict[str, str]] = None + +class MonitoringConstraintsResourceTypeDef(BaseModel): + S3Uri: Optional[str] = None + +class MonitoringStatisticsResourceTypeDef(BaseModel): + S3Uri: Optional[str] = None + +class EndpointInputTypeDef(BaseModel): + EndpointName: str + LocalPath: str + S3InputMode: Optional[ProcessingS3InputModeType] = None + S3DataDistributionType: Optional[ProcessingS3DataDistributionTypeType] = None + FeaturesAttribute: Optional[str] = None + InferenceAttribute: Optional[str] = None + ProbabilityAttribute: Optional[str] = None + ProbabilityThresholdAttribute: Optional[float] = None + StartTimeOffset: Optional[str] = None + EndTimeOffset: Optional[str] = None + ExcludeFeaturesAttribute: Optional[str] = None + +class FileSystemDataSourceTypeDef(BaseModel): + FileSystemId: str + FileSystemAccessMode: FileSystemAccessModeType + FileSystemType: FileSystemTypeType + DirectoryPath: str + +class S3DataSourceExtraOutputTypeDef(BaseModel): + S3DataType: S3DataTypeType + S3Uri: str + S3DataDistributionType: Optional[S3DataDistributionType] = None + AttributeNames: Optional[List[str]] = None + InstanceGroupNames: Optional[List[str]] = None + +class S3DataSourceOutputTypeDef(BaseModel): + S3DataType: S3DataTypeType + S3Uri: str + S3DataDistributionType: Optional[S3DataDistributionType] = None + AttributeNames: Optional[List[str]] = None + InstanceGroupNames: Optional[List[str]] = None + +class S3DataSourceTypeDef(BaseModel): + S3DataType: S3DataTypeType + S3Uri: str + S3DataDistributionType: Optional[S3DataDistributionType] = None + AttributeNames: Optional[Sequence[str]] = None + InstanceGroupNames: Optional[Sequence[str]] = None + +class RedshiftDatasetDefinitionTypeDef(BaseModel): + ClusterId: str + Database: str + DbUser: str + QueryString: str + ClusterRoleArn: str + OutputS3Uri: str + OutputFormat: RedshiftResultFormatType + KmsKeyId: Optional[str] = None + OutputCompression: Optional[RedshiftResultCompressionTypeType] = None + +class DebugRuleConfigurationExtraOutputTypeDef(BaseModel): + RuleConfigurationName: str + RuleEvaluatorImage: str + LocalPath: Optional[str] = None + S3OutputPath: Optional[str] = None + InstanceType: Optional[ProcessingInstanceTypeType] = None + VolumeSizeInGB: Optional[int] = None + RuleParameters: Optional[Dict[str, str]] = None + +class DebugRuleConfigurationOutputTypeDef(BaseModel): + RuleConfigurationName: str + RuleEvaluatorImage: str + LocalPath: Optional[str] = None + S3OutputPath: Optional[str] = None + InstanceType: Optional[ProcessingInstanceTypeType] = None + VolumeSizeInGB: Optional[int] = None + RuleParameters: Optional[Dict[str, str]] = None + +class DebugRuleConfigurationTypeDef(BaseModel): + RuleConfigurationName: str + RuleEvaluatorImage: str + LocalPath: Optional[str] = None + S3OutputPath: Optional[str] = None + InstanceType: Optional[ProcessingInstanceTypeType] = None + VolumeSizeInGB: Optional[int] = None + RuleParameters: Optional[Mapping[str, str]] = None + +class DebugRuleEvaluationStatusTypeDef(BaseModel): + RuleConfigurationName: Optional[str] = None + RuleEvaluationJobArn: Optional[str] = None + RuleEvaluationStatus: Optional[RuleEvaluationStatusType] = None + StatusDetails: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + +class DefaultEbsStorageSettingsTypeDef(BaseModel): + DefaultEbsVolumeSizeInGb: int + MaximumEbsVolumeSizeInGb: int + +class DeleteActionRequestRequestTypeDef(BaseModel): + ActionName: str + +class DeleteAlgorithmInputRequestTypeDef(BaseModel): + AlgorithmName: str + +class DeleteAppImageConfigRequestRequestTypeDef(BaseModel): + AppImageConfigName: str + +class DeleteAppRequestRequestTypeDef(BaseModel): + DomainId: str + AppType: AppTypeType + AppName: str + UserProfileName: Optional[str] = None + SpaceName: Optional[str] = None + +class DeleteAssociationRequestRequestTypeDef(BaseModel): + SourceArn: str + DestinationArn: str + +class DeleteClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + +class DeleteCodeRepositoryInputRequestTypeDef(BaseModel): + CodeRepositoryName: str + +class DeleteCompilationJobRequestRequestTypeDef(BaseModel): + CompilationJobName: str + +class DeleteContextRequestRequestTypeDef(BaseModel): + ContextName: str + +class DeleteDataQualityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class DeleteDeviceFleetRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + +class RetentionPolicyTypeDef(BaseModel): + HomeEfsFileSystem: Optional[RetentionTypeType] = None + +class DeleteEdgeDeploymentPlanRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + +class DeleteEdgeDeploymentStageRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + StageName: str + +class DeleteEndpointConfigInputRequestTypeDef(BaseModel): + EndpointConfigName: str + +class DeleteEndpointInputRequestTypeDef(BaseModel): + EndpointName: str + +class DeleteExperimentRequestRequestTypeDef(BaseModel): + ExperimentName: str + +class DeleteFeatureGroupRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + +class DeleteFlowDefinitionRequestRequestTypeDef(BaseModel): + FlowDefinitionName: str + +class DeleteHubContentReferenceRequestRequestTypeDef(BaseModel): + HubName: str + HubContentType: HubContentTypeType + HubContentName: str + +class DeleteHubContentRequestRequestTypeDef(BaseModel): + HubName: str + HubContentType: HubContentTypeType + HubContentName: str + HubContentVersion: str + +class DeleteHubRequestRequestTypeDef(BaseModel): + HubName: str + +class DeleteHumanTaskUiRequestRequestTypeDef(BaseModel): + HumanTaskUiName: str + +class DeleteHyperParameterTuningJobRequestRequestTypeDef(BaseModel): + HyperParameterTuningJobName: str + +class DeleteImageRequestRequestTypeDef(BaseModel): + ImageName: str + +class DeleteImageVersionRequestRequestTypeDef(BaseModel): + ImageName: str + Version: Optional[int] = None + Alias: Optional[str] = None + +class DeleteInferenceComponentInputRequestTypeDef(BaseModel): + InferenceComponentName: str + +class DeleteInferenceExperimentRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteMlflowTrackingServerRequestRequestTypeDef(BaseModel): + TrackingServerName: str + +class DeleteModelBiasJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class DeleteModelCardRequestRequestTypeDef(BaseModel): + ModelCardName: str + +class DeleteModelExplainabilityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class DeleteModelInputRequestTypeDef(BaseModel): + ModelName: str + +class DeleteModelPackageGroupInputRequestTypeDef(BaseModel): + ModelPackageGroupName: str + +class DeleteModelPackageGroupPolicyInputRequestTypeDef(BaseModel): + ModelPackageGroupName: str + +class DeleteModelPackageInputRequestTypeDef(BaseModel): + ModelPackageName: str + +class DeleteModelQualityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class DeleteMonitoringScheduleRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + +class DeleteNotebookInstanceInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + +class DeleteNotebookInstanceLifecycleConfigInputRequestTypeDef(BaseModel): + NotebookInstanceLifecycleConfigName: str + +class DeleteOptimizationJobRequestRequestTypeDef(BaseModel): + OptimizationJobName: str + +class DeletePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + ClientRequestToken: str + +class DeleteProjectInputRequestTypeDef(BaseModel): + ProjectName: str + +class DeleteSpaceRequestRequestTypeDef(BaseModel): + DomainId: str + SpaceName: str + +class DeleteStudioLifecycleConfigRequestRequestTypeDef(BaseModel): + StudioLifecycleConfigName: str + +class DeleteTagsInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class DeleteTrialComponentRequestRequestTypeDef(BaseModel): + TrialComponentName: str + +class DeleteTrialRequestRequestTypeDef(BaseModel): + TrialName: str + +class DeleteUserProfileRequestRequestTypeDef(BaseModel): + DomainId: str + UserProfileName: str + +class DeleteWorkforceRequestRequestTypeDef(BaseModel): + WorkforceName: str + +class DeleteWorkteamRequestRequestTypeDef(BaseModel): + WorkteamName: str + +class DeployedImageTypeDef(BaseModel): + SpecifiedImage: Optional[str] = None + ResolvedImage: Optional[str] = None + ResolutionTime: Optional[datetime] = None + +class RealTimeInferenceRecommendationTypeDef(BaseModel): + RecommendationId: str + InstanceType: ProductionVariantInstanceTypeType + Environment: Optional[Dict[str, str]] = None + +class DeviceSelectionConfigOutputTypeDef(BaseModel): + DeviceSubsetType: DeviceSubsetTypeType + Percentage: Optional[int] = None + DeviceNames: Optional[List[str]] = None + DeviceNameContains: Optional[str] = None + +class EdgeDeploymentConfigTypeDef(BaseModel): + FailureHandlingPolicy: FailureHandlingPolicyType + +class EdgeDeploymentStatusTypeDef(BaseModel): + StageStatus: StageStatusType + EdgeDeploymentSuccessInStage: int + EdgeDeploymentPendingInStage: int + EdgeDeploymentFailedInStage: int + EdgeDeploymentStatusMessage: Optional[str] = None + EdgeDeploymentStageStartTime: Optional[datetime] = None + +class DeviceSelectionConfigTypeDef(BaseModel): + DeviceSubsetType: DeviceSubsetTypeType + Percentage: Optional[int] = None + DeviceNames: Optional[Sequence[str]] = None + DeviceNameContains: Optional[str] = None + +class DeregisterDevicesRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + DeviceNames: Sequence[str] + +class DerivedInformationTypeDef(BaseModel): + DerivedDataInputConfig: Optional[str] = None + +class DescribeActionRequestRequestTypeDef(BaseModel): + ActionName: str + +class DescribeAlgorithmInputRequestTypeDef(BaseModel): + AlgorithmName: str + +class DescribeAppImageConfigRequestRequestTypeDef(BaseModel): + AppImageConfigName: str + +class DescribeAppRequestRequestTypeDef(BaseModel): + DomainId: str + AppType: AppTypeType + AppName: str + UserProfileName: Optional[str] = None + SpaceName: Optional[str] = None + +class DescribeArtifactRequestRequestTypeDef(BaseModel): + ArtifactArn: str + +class DescribeAutoMLJobRequestRequestTypeDef(BaseModel): + AutoMLJobName: str + +class ModelDeployResultTypeDef(BaseModel): + EndpointName: Optional[str] = None + +class DescribeAutoMLJobV2RequestRequestTypeDef(BaseModel): + AutoMLJobName: str + +class DescribeClusterNodeRequestRequestTypeDef(BaseModel): + ClusterName: str + NodeId: str + +class DescribeClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + +class DescribeCodeRepositoryInputRequestTypeDef(BaseModel): + CodeRepositoryName: str + +class DescribeCompilationJobRequestRequestTypeDef(BaseModel): + CompilationJobName: str + +class ModelArtifactsTypeDef(BaseModel): + S3ModelArtifacts: str + +class ModelDigestsTypeDef(BaseModel): + ArtifactDigest: Optional[str] = None + +class NeoVpcConfigOutputTypeDef(BaseModel): + SecurityGroupIds: List[str] + Subnets: List[str] + +class DescribeContextRequestRequestTypeDef(BaseModel): + ContextName: str + +class DescribeDataQualityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class DescribeDeviceFleetRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + +class DescribeDeviceRequestRequestTypeDef(BaseModel): + DeviceName: str + DeviceFleetName: str + NextToken: Optional[str] = None + +class EdgeModelTypeDef(BaseModel): + ModelName: str + ModelVersion: str + LatestSampleTime: Optional[datetime] = None + LatestInference: Optional[datetime] = None + +class DescribeDomainRequestRequestTypeDef(BaseModel): + DomainId: str + +class DescribeEdgeDeploymentPlanRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeEdgePackagingJobRequestRequestTypeDef(BaseModel): + EdgePackagingJobName: str + +class EdgePresetDeploymentOutputTypeDef(BaseModel): + Type: Literal["GreengrassV2Component"] + Artifact: Optional[str] = None + Status: Optional[EdgePresetDeploymentStatusType] = None + StatusMessage: Optional[str] = None + +class DescribeEndpointConfigInputRequestTypeDef(BaseModel): + EndpointConfigName: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeEndpointInputRequestTypeDef(BaseModel): + EndpointName: str + +class DescribeExperimentRequestRequestTypeDef(BaseModel): + ExperimentName: str + +class ExperimentSourceTypeDef(BaseModel): + SourceArn: str + SourceType: Optional[str] = None + +class DescribeFeatureGroupRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + NextToken: Optional[str] = None + +class LastUpdateStatusTypeDef(BaseModel): + Status: LastUpdateStatusValueType + FailureReason: Optional[str] = None + +class OfflineStoreStatusTypeDef(BaseModel): + Status: OfflineStoreStatusValueType + BlockedReason: Optional[str] = None + +class ThroughputConfigDescriptionTypeDef(BaseModel): + ThroughputMode: ThroughputModeType + ProvisionedReadCapacityUnits: Optional[int] = None + ProvisionedWriteCapacityUnits: Optional[int] = None + +class DescribeFeatureMetadataRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + FeatureName: str + +class FeatureParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class DescribeFlowDefinitionRequestRequestTypeDef(BaseModel): + FlowDefinitionName: str + +class DescribeHubContentRequestRequestTypeDef(BaseModel): + HubName: str + HubContentType: HubContentTypeType + HubContentName: str + HubContentVersion: Optional[str] = None + +class HubContentDependencyTypeDef(BaseModel): + DependencyOriginPath: Optional[str] = None + DependencyCopyPath: Optional[str] = None + +class DescribeHubRequestRequestTypeDef(BaseModel): + HubName: str + +class DescribeHumanTaskUiRequestRequestTypeDef(BaseModel): + HumanTaskUiName: str + +class UiTemplateInfoTypeDef(BaseModel): + Url: Optional[str] = None + ContentSha256: Optional[str] = None + +class DescribeHyperParameterTuningJobRequestRequestTypeDef(BaseModel): + HyperParameterTuningJobName: str + +class HyperParameterTuningJobCompletionDetailsTypeDef(BaseModel): + NumberOfTrainingJobsObjectiveNotImproving: Optional[int] = None + ConvergenceDetectedTime: Optional[datetime] = None + +class HyperParameterTuningJobConsumedResourcesTypeDef(BaseModel): + RuntimeInSeconds: Optional[int] = None + +class ObjectiveStatusCountersTypeDef(BaseModel): + Succeeded: Optional[int] = None + Pending: Optional[int] = None + Failed: Optional[int] = None + +class TrainingJobStatusCountersTypeDef(BaseModel): + Completed: Optional[int] = None + InProgress: Optional[int] = None + RetryableError: Optional[int] = None + NonRetryableError: Optional[int] = None + Stopped: Optional[int] = None + +class DescribeImageRequestRequestTypeDef(BaseModel): + ImageName: str + +class DescribeImageVersionRequestRequestTypeDef(BaseModel): + ImageName: str + Version: Optional[int] = None + Alias: Optional[str] = None + +class DescribeInferenceComponentInputRequestTypeDef(BaseModel): + InferenceComponentName: str + +class InferenceComponentRuntimeConfigSummaryTypeDef(BaseModel): + DesiredCopyCount: Optional[int] = None + CurrentCopyCount: Optional[int] = None + +class DescribeInferenceExperimentRequestRequestTypeDef(BaseModel): + Name: str + +class EndpointMetadataTypeDef(BaseModel): + EndpointName: str + EndpointConfigName: Optional[str] = None + EndpointStatus: Optional[EndpointStatusType] = None + FailureReason: Optional[str] = None + +class InferenceExperimentScheduleOutputTypeDef(BaseModel): + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class DescribeInferenceRecommendationsJobRequestRequestTypeDef(BaseModel): + JobName: str + +class DescribeLabelingJobRequestRequestTypeDef(BaseModel): + LabelingJobName: str + +class LabelCountersTypeDef(BaseModel): + TotalLabeled: Optional[int] = None + HumanLabeled: Optional[int] = None + MachineLabeled: Optional[int] = None + FailedNonRetryableError: Optional[int] = None + Unlabeled: Optional[int] = None + +class LabelingJobOutputTypeDef(BaseModel): + OutputDatasetS3Uri: str + FinalActiveLearningModelArn: Optional[str] = None + +class DescribeLineageGroupRequestRequestTypeDef(BaseModel): + LineageGroupName: str + +class DescribeMlflowTrackingServerRequestRequestTypeDef(BaseModel): + TrackingServerName: str + +class DescribeModelBiasJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class ModelBiasAppSpecificationOutputTypeDef(BaseModel): + ImageUri: str + ConfigUri: str + Environment: Optional[Dict[str, str]] = None + +class DescribeModelCardExportJobRequestRequestTypeDef(BaseModel): + ModelCardExportJobArn: str + +class ModelCardExportArtifactsTypeDef(BaseModel): + S3ExportArtifacts: str + +class DescribeModelCardRequestRequestTypeDef(BaseModel): + ModelCardName: str + ModelCardVersion: Optional[int] = None + +class DescribeModelExplainabilityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class ModelExplainabilityAppSpecificationOutputTypeDef(BaseModel): + ImageUri: str + ConfigUri: str + Environment: Optional[Dict[str, str]] = None + +class DescribeModelInputRequestTypeDef(BaseModel): + ModelName: str + +class DescribeModelPackageGroupInputRequestTypeDef(BaseModel): + ModelPackageGroupName: str + +class DescribeModelPackageInputRequestTypeDef(BaseModel): + ModelPackageName: str + +class DescribeModelQualityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + +class ModelQualityAppSpecificationOutputTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + ProblemType: Optional[MonitoringProblemTypeType] = None + Environment: Optional[Dict[str, str]] = None + +class DescribeMonitoringScheduleRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + +class MonitoringExecutionSummaryTypeDef(BaseModel): + MonitoringScheduleName: str + ScheduledTime: datetime + CreationTime: datetime + LastModifiedTime: datetime + MonitoringExecutionStatus: ExecutionStatusType + ProcessingJobArn: Optional[str] = None + EndpointName: Optional[str] = None + FailureReason: Optional[str] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringType: Optional[MonitoringTypeType] = None + +class DescribeNotebookInstanceInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + +class DescribeNotebookInstanceLifecycleConfigInputRequestTypeDef(BaseModel): + NotebookInstanceLifecycleConfigName: str + +class DescribeOptimizationJobRequestRequestTypeDef(BaseModel): + OptimizationJobName: str + +class OptimizationOutputTypeDef(BaseModel): + RecommendedInferenceImage: Optional[str] = None + +class OptimizationVpcConfigOutputTypeDef(BaseModel): + SecurityGroupIds: List[str] + Subnets: List[str] + +class DescribePipelineDefinitionForExecutionRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: str + +class DescribePipelineExecutionRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: str + +class PipelineExperimentConfigTypeDef(BaseModel): + ExperimentName: Optional[str] = None + TrialName: Optional[str] = None + +class DescribePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + +class DescribeProcessingJobRequestRequestTypeDef(BaseModel): + ProcessingJobName: str + +class DescribeProjectInputRequestTypeDef(BaseModel): + ProjectName: str + +class ServiceCatalogProvisionedProductDetailsTypeDef(BaseModel): + ProvisionedProductId: Optional[str] = None + ProvisionedProductStatusMessage: Optional[str] = None + +class DescribeSpaceRequestRequestTypeDef(BaseModel): + DomainId: str + SpaceName: str + +class DescribeStudioLifecycleConfigRequestRequestTypeDef(BaseModel): + StudioLifecycleConfigName: str + +class DescribeSubscribedWorkteamRequestRequestTypeDef(BaseModel): + WorkteamArn: str + +class SubscribedWorkteamTypeDef(BaseModel): + WorkteamArn: str + MarketplaceTitle: Optional[str] = None + SellerName: Optional[str] = None + MarketplaceDescription: Optional[str] = None + ListingId: Optional[str] = None + +class DescribeTrainingJobRequestRequestTypeDef(BaseModel): + TrainingJobName: str + +class MetricDataTypeDef(BaseModel): + MetricName: Optional[str] = None + Value: Optional[float] = None + Timestamp: Optional[datetime] = None + +class ProfilerConfigOutputTypeDef(BaseModel): + S3OutputPath: Optional[str] = None + ProfilingIntervalInMilliseconds: Optional[int] = None + ProfilingParameters: Optional[Dict[str, str]] = None + DisableProfiler: Optional[bool] = None + +class ProfilerRuleConfigurationOutputTypeDef(BaseModel): + RuleConfigurationName: str + RuleEvaluatorImage: str + LocalPath: Optional[str] = None + S3OutputPath: Optional[str] = None + InstanceType: Optional[ProcessingInstanceTypeType] = None + VolumeSizeInGB: Optional[int] = None + RuleParameters: Optional[Dict[str, str]] = None + +class ProfilerRuleEvaluationStatusTypeDef(BaseModel): + RuleConfigurationName: Optional[str] = None + RuleEvaluationJobArn: Optional[str] = None + RuleEvaluationStatus: Optional[RuleEvaluationStatusType] = None + StatusDetails: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + +class SecondaryStatusTransitionTypeDef(BaseModel): + Status: SecondaryStatusType + StartTime: datetime + EndTime: Optional[datetime] = None + StatusMessage: Optional[str] = None + +class WarmPoolStatusTypeDef(BaseModel): + Status: WarmPoolResourceStatusType + ResourceRetainedBillableTimeInSeconds: Optional[int] = None + ReusedByJob: Optional[str] = None + +class DescribeTransformJobRequestRequestTypeDef(BaseModel): + TransformJobName: str + +class DescribeTrialComponentRequestRequestTypeDef(BaseModel): + TrialComponentName: str + +class TrialComponentMetricSummaryTypeDef(BaseModel): + MetricName: Optional[str] = None + SourceArn: Optional[str] = None + TimeStamp: Optional[datetime] = None + Max: Optional[float] = None + Min: Optional[float] = None + Last: Optional[float] = None + Count: Optional[int] = None + Avg: Optional[float] = None + StdDev: Optional[float] = None + +class TrialComponentSourceTypeDef(BaseModel): + SourceArn: str + SourceType: Optional[str] = None + +class DescribeTrialRequestRequestTypeDef(BaseModel): + TrialName: str + +class TrialSourceTypeDef(BaseModel): + SourceArn: str + SourceType: Optional[str] = None + +class DescribeUserProfileRequestRequestTypeDef(BaseModel): + DomainId: str + UserProfileName: str + +class DescribeWorkforceRequestRequestTypeDef(BaseModel): + WorkforceName: str + +class DescribeWorkteamRequestRequestTypeDef(BaseModel): + WorkteamName: str + +class ProductionVariantServerlessUpdateConfigTypeDef(BaseModel): + MaxConcurrency: Optional[int] = None + ProvisionedConcurrency: Optional[int] = None + +class DeviceDeploymentSummaryTypeDef(BaseModel): + EdgeDeploymentPlanArn: str + EdgeDeploymentPlanName: str + StageName: str + DeviceName: str + DeviceArn: str + DeployedStageName: Optional[str] = None + DeviceFleetName: Optional[str] = None + DeviceDeploymentStatus: Optional[DeviceDeploymentStatusType] = None + DeviceDeploymentStatusMessage: Optional[str] = None + Description: Optional[str] = None + DeploymentStartTime: Optional[datetime] = None + +class DeviceFleetSummaryTypeDef(BaseModel): + DeviceFleetArn: str + DeviceFleetName: str + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class DeviceStatsTypeDef(BaseModel): + ConnectedDeviceCount: int + RegisteredDeviceCount: int + +class EdgeModelSummaryTypeDef(BaseModel): + ModelName: str + ModelVersion: str + +class DeviceTypeDef(BaseModel): + DeviceName: str + Description: Optional[str] = None + IotThingName: Optional[str] = None + +class DisassociateTrialComponentRequestRequestTypeDef(BaseModel): + TrialComponentName: str + TrialName: str + +class DockerSettingsOutputTypeDef(BaseModel): + EnableDockerAccess: Optional[FeatureStatusType] = None + VpcOnlyTrustedAccounts: Optional[List[str]] = None + +class DockerSettingsTypeDef(BaseModel): + EnableDockerAccess: Optional[FeatureStatusType] = None + VpcOnlyTrustedAccounts: Optional[Sequence[str]] = None + +class DomainDetailsTypeDef(BaseModel): + DomainArn: Optional[str] = None + DomainId: Optional[str] = None + DomainName: Optional[str] = None + Status: Optional[DomainStatusType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + Url: Optional[str] = None + +class FileSourceTypeDef(BaseModel): + S3Uri: str + ContentType: Optional[str] = None + ContentDigest: Optional[str] = None + +class EMRStepMetadataTypeDef(BaseModel): + ClusterId: Optional[str] = None + StepId: Optional[str] = None + StepName: Optional[str] = None + LogFilePath: Optional[str] = None + +class EbsStorageSettingsTypeDef(BaseModel): + EbsVolumeSizeInGb: int + +class EdgeDeploymentPlanSummaryTypeDef(BaseModel): + EdgeDeploymentPlanArn: str + EdgeDeploymentPlanName: str + DeviceFleetName: str + EdgeDeploymentSuccess: int + EdgeDeploymentPending: int + EdgeDeploymentFailed: int + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class EdgeModelStatTypeDef(BaseModel): + ModelName: str + ModelVersion: str + OfflineDeviceCount: int + ConnectedDeviceCount: int + ActiveDeviceCount: int + SamplingDeviceCount: int + +class EdgePackagingJobSummaryTypeDef(BaseModel): + EdgePackagingJobArn: str + EdgePackagingJobName: str + EdgePackagingJobStatus: EdgePackagingJobStatusType + CompilationJobName: Optional[str] = None + ModelName: Optional[str] = None + ModelVersion: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class EdgeTypeDef(BaseModel): + SourceArn: Optional[str] = None + DestinationArn: Optional[str] = None + AssociationType: Optional[AssociationEdgeTypeType] = None + +class EndpointConfigSummaryTypeDef(BaseModel): + EndpointConfigName: str + EndpointConfigArn: str + CreationTime: datetime + +class EndpointInfoTypeDef(BaseModel): + EndpointName: Optional[str] = None + +class ProductionVariantServerlessConfigTypeDef(BaseModel): + MemorySizeInMB: int + MaxConcurrency: int + ProvisionedConcurrency: Optional[int] = None + +class InferenceMetricsTypeDef(BaseModel): + MaxInvocations: int + ModelLatency: int + +class EndpointSummaryTypeDef(BaseModel): + EndpointName: str + EndpointArn: str + CreationTime: datetime + LastModifiedTime: datetime + EndpointStatus: EndpointStatusType + +class EnvironmentParameterTypeDef(BaseModel): + Key: str + ValueType: str + Value: str + +class FailStepMetadataTypeDef(BaseModel): + ErrorMessage: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: str + Operator: Optional[OperatorType] = None + Value: Optional[str] = None + +class FinalHyperParameterTuningJobObjectiveMetricTypeDef(BaseModel): + MetricName: str + Value: float + Type: Optional[HyperParameterTuningJobObjectiveTypeType] = None + +class FlowDefinitionSummaryTypeDef(BaseModel): + FlowDefinitionName: str + FlowDefinitionArn: str + FlowDefinitionStatus: FlowDefinitionStatusType + CreationTime: datetime + FailureReason: Optional[str] = None + +class GetDeviceFleetReportRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + +class GetLineageGroupPolicyRequestRequestTypeDef(BaseModel): + LineageGroupName: str + +class GetModelPackageGroupPolicyInputRequestTypeDef(BaseModel): + ModelPackageGroupName: str + +class ScalingPolicyObjectiveTypeDef(BaseModel): + MinInvocationsPerMinute: Optional[int] = None + MaxInvocationsPerMinute: Optional[int] = None + +class ScalingPolicyMetricTypeDef(BaseModel): + InvocationsPerInstance: Optional[int] = None + ModelLatency: Optional[int] = None + +class PropertyNameSuggestionTypeDef(BaseModel): + PropertyName: Optional[str] = None + +class GitConfigForUpdateTypeDef(BaseModel): + SecretArn: Optional[str] = None + +class HolidayConfigAttributesTypeDef(BaseModel): + CountryCode: Optional[str] = None + +class HubContentInfoTypeDef(BaseModel): + HubContentName: str + HubContentArn: str + HubContentVersion: str + HubContentType: HubContentTypeType + DocumentSchemaVersion: str + HubContentStatus: HubContentStatusType + CreationTime: datetime + SageMakerPublicHubContentArn: Optional[str] = None + HubContentDisplayName: Optional[str] = None + HubContentDescription: Optional[str] = None + SupportStatus: Optional[HubContentSupportStatusType] = None + HubContentSearchKeywords: Optional[List[str]] = None + OriginalCreationTime: Optional[datetime] = None + +class HubInfoTypeDef(BaseModel): + HubName: str + HubArn: str + HubStatus: HubStatusType + CreationTime: datetime + LastModifiedTime: datetime + HubDisplayName: Optional[str] = None + HubDescription: Optional[str] = None + HubSearchKeywords: Optional[List[str]] = None + +class HumanLoopActivationConditionsConfigTypeDef(BaseModel): + HumanLoopActivationConditions: str + +class UiConfigTypeDef(BaseModel): + UiTemplateS3Uri: Optional[str] = None + HumanTaskUiArn: Optional[str] = None + +class HumanTaskUiSummaryTypeDef(BaseModel): + HumanTaskUiName: str + HumanTaskUiArn: str + CreationTime: datetime + +class HyperParameterTuningJobObjectiveTypeDef(BaseModel): + Type: HyperParameterTuningJobObjectiveTypeType + MetricName: str + +class VpcConfigExtraOutputTypeDef(BaseModel): + SecurityGroupIds: List[str] + Subnets: List[str] + +class HyperParameterTuningInstanceConfigTypeDef(BaseModel): + InstanceType: TrainingInstanceTypeType + InstanceCount: int + VolumeSizeInGB: int + +class ResourceLimitsTypeDef(BaseModel): + MaxParallelTrainingJobs: int + MaxNumberOfTrainingJobs: Optional[int] = None + MaxRuntimeInSeconds: Optional[int] = None + +class HyperbandStrategyConfigTypeDef(BaseModel): + MinResource: Optional[int] = None + MaxResource: Optional[int] = None + +class ParentHyperParameterTuningJobTypeDef(BaseModel): + HyperParameterTuningJobName: Optional[str] = None + +class IamIdentityTypeDef(BaseModel): + Arn: Optional[str] = None + PrincipalId: Optional[str] = None + SourceIdentity: Optional[str] = None + +class IamPolicyConstraintsTypeDef(BaseModel): + SourceIp: Optional[EnabledOrDisabledType] = None + VpcSourceIp: Optional[EnabledOrDisabledType] = None + +class RepositoryAuthConfigTypeDef(BaseModel): + RepositoryCredentialsProviderArn: str + +class ImageTypeDef(BaseModel): + CreationTime: datetime + ImageArn: str + ImageName: str + ImageStatus: ImageStatusType + LastModifiedTime: datetime + Description: Optional[str] = None + DisplayName: Optional[str] = None + FailureReason: Optional[str] = None + +class ImageVersionTypeDef(BaseModel): + CreationTime: datetime + ImageArn: str + ImageVersionArn: str + ImageVersionStatus: ImageVersionStatusType + LastModifiedTime: datetime + Version: int + FailureReason: Optional[str] = None + +class InferenceComponentComputeResourceRequirementsTypeDef(BaseModel): + MinMemoryRequiredInMb: int + NumberOfCpuCoresRequired: Optional[float] = None + NumberOfAcceleratorDevicesRequired: Optional[float] = None + MaxMemoryRequiredInMb: Optional[int] = None + +class InferenceComponentContainerSpecificationTypeDef(BaseModel): + Image: Optional[str] = None + ArtifactUrl: Optional[str] = None + Environment: Optional[Mapping[str, str]] = None + +class InferenceComponentStartupParametersTypeDef(BaseModel): + ModelDataDownloadTimeoutInSeconds: Optional[int] = None + ContainerStartupHealthCheckTimeoutInSeconds: Optional[int] = None + +class InferenceComponentSummaryTypeDef(BaseModel): + CreationTime: datetime + InferenceComponentArn: str + InferenceComponentName: str + EndpointArn: str + EndpointName: str + VariantName: str + LastModifiedTime: datetime + InferenceComponentStatus: Optional[InferenceComponentStatusType] = None + +class InferenceExperimentScheduleExtraOutputTypeDef(BaseModel): + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class InferenceHubAccessConfigTypeDef(BaseModel): + HubContentArn: str + +class RecommendationMetricsTypeDef(BaseModel): + CostPerHour: Optional[float] = None + CostPerInference: Optional[float] = None + MaxInvocations: Optional[int] = None + ModelLatency: Optional[int] = None + CpuUtilization: Optional[float] = None + MemoryUtilization: Optional[float] = None + ModelSetupTime: Optional[int] = None + +class InferenceRecommendationsJobTypeDef(BaseModel): + JobName: str + JobDescription: str + JobType: RecommendationJobTypeType + JobArn: str + Status: RecommendationJobStatusType + CreationTime: datetime + RoleArn: str + LastModifiedTime: datetime + CompletionTime: Optional[datetime] = None + FailureReason: Optional[str] = None + ModelName: Optional[str] = None + SamplePayloadUrl: Optional[str] = None + ModelPackageVersionArn: Optional[str] = None + +class InstanceGroupTypeDef(BaseModel): + InstanceType: TrainingInstanceTypeType + InstanceCount: int + InstanceGroupName: str + +class IntegerParameterRangeSpecificationTypeDef(BaseModel): + MinValue: str + MaxValue: str + +class IntegerParameterRangeTypeDef(BaseModel): + Name: str + MinValue: str + MaxValue: str + ScalingType: Optional[HyperParameterScalingTypeType] = None + +class KernelSpecTypeDef(BaseModel): + Name: str + DisplayName: Optional[str] = None + +class LabelCountersForWorkteamTypeDef(BaseModel): + HumanLabeled: Optional[int] = None + PendingHuman: Optional[int] = None + Total: Optional[int] = None + +class LabelingJobDataAttributesExtraOutputTypeDef(BaseModel): + ContentClassifiers: Optional[List[ContentClassifierType]] = None + +class LabelingJobDataAttributesOutputTypeDef(BaseModel): + ContentClassifiers: Optional[List[ContentClassifierType]] = None + +class LabelingJobDataAttributesTypeDef(BaseModel): + ContentClassifiers: Optional[Sequence[ContentClassifierType]] = None + +class LabelingJobS3DataSourceTypeDef(BaseModel): + ManifestS3Uri: str + +class LabelingJobSnsDataSourceTypeDef(BaseModel): + SnsTopicArn: str + +class LineageGroupSummaryTypeDef(BaseModel): + LineageGroupArn: Optional[str] = None + LineageGroupName: Optional[str] = None + DisplayName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAliasesRequestRequestTypeDef(BaseModel): + ImageName: str + Alias: Optional[str] = None + Version: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAppsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[Literal["CreationTime"]] = None + DomainIdEquals: Optional[str] = None + UserProfileNameEquals: Optional[str] = None + SpaceNameEquals: Optional[str] = None + +class ListCandidatesForAutoMLJobRequestRequestTypeDef(BaseModel): + AutoMLJobName: str + StatusEquals: Optional[CandidateStatusType] = None + CandidateNameEquals: Optional[str] = None + SortOrder: Optional[AutoMLSortOrderType] = None + SortBy: Optional[CandidateSortByType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MonitoringJobDefinitionSummaryTypeDef(BaseModel): + MonitoringJobDefinitionName: str + MonitoringJobDefinitionArn: str + CreationTime: datetime + EndpointName: str + +class ListDomainsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInferenceRecommendationsJobStepsRequestRequestTypeDef(BaseModel): + JobName: str + Status: Optional[RecommendationJobStatusType] = None + StepType: Optional[Literal["BENCHMARK"]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TrackingServerSummaryTypeDef(BaseModel): + TrackingServerArn: Optional[str] = None + TrackingServerName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + TrackingServerStatus: Optional[TrackingServerStatusType] = None + IsActive: Optional[IsTrackingServerActiveType] = None + MlflowVersion: Optional[str] = None + +class ModelCardExportJobSummaryTypeDef(BaseModel): + ModelCardExportJobName: str + ModelCardExportJobArn: str + Status: ModelCardExportJobStatusType + ModelCardName: str + ModelCardVersion: int + CreatedAt: datetime + LastModifiedAt: datetime + +class ModelCardVersionSummaryTypeDef(BaseModel): + ModelCardName: str + ModelCardArn: str + ModelCardStatus: ModelCardStatusType + ModelCardVersion: int + CreationTime: datetime + LastModifiedTime: Optional[datetime] = None + +class ModelCardSummaryTypeDef(BaseModel): + ModelCardName: str + ModelCardArn: str + ModelCardStatus: ModelCardStatusType + CreationTime: datetime + LastModifiedTime: Optional[datetime] = None + +class ModelMetadataSummaryTypeDef(BaseModel): + Domain: str + Framework: str + Task: str + Model: str + FrameworkVersion: str + +class ModelPackageGroupSummaryTypeDef(BaseModel): + ModelPackageGroupName: str + ModelPackageGroupArn: str + CreationTime: datetime + ModelPackageGroupStatus: ModelPackageGroupStatusType + ModelPackageGroupDescription: Optional[str] = None + +class ModelPackageSummaryTypeDef(BaseModel): + ModelPackageArn: str + CreationTime: datetime + ModelPackageStatus: ModelPackageStatusType + ModelPackageName: Optional[str] = None + ModelPackageGroupName: Optional[str] = None + ModelPackageVersion: Optional[int] = None + ModelPackageDescription: Optional[str] = None + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + +class ModelSummaryTypeDef(BaseModel): + ModelName: str + ModelArn: str + CreationTime: datetime + +class MonitoringAlertHistorySummaryTypeDef(BaseModel): + MonitoringScheduleName: str + MonitoringAlertName: str + CreationTime: datetime + AlertStatus: MonitoringAlertStatusType + +class ListMonitoringAlertsRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MonitoringScheduleSummaryTypeDef(BaseModel): + MonitoringScheduleName: str + MonitoringScheduleArn: str + CreationTime: datetime + LastModifiedTime: datetime + MonitoringScheduleStatus: ScheduleStatusType + EndpointName: Optional[str] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringType: Optional[MonitoringTypeType] = None + +class NotebookInstanceLifecycleConfigSummaryTypeDef(BaseModel): + NotebookInstanceLifecycleConfigName: str + NotebookInstanceLifecycleConfigArn: str + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class NotebookInstanceSummaryTypeDef(BaseModel): + NotebookInstanceName: str + NotebookInstanceArn: str + NotebookInstanceStatus: Optional[NotebookInstanceStatusType] = None + Url: Optional[str] = None + InstanceType: Optional[InstanceTypeType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + NotebookInstanceLifecycleConfigName: Optional[str] = None + DefaultCodeRepository: Optional[str] = None + AdditionalCodeRepositories: Optional[List[str]] = None + +class OptimizationJobSummaryTypeDef(BaseModel): + OptimizationJobName: str + OptimizationJobArn: str + CreationTime: datetime + OptimizationJobStatus: OptimizationJobStatusType + DeploymentInstanceType: OptimizationJobDeploymentInstanceTypeType + OptimizationTypes: List[str] + OptimizationStartTime: Optional[datetime] = None + OptimizationEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class ListPipelineExecutionStepsRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortOrder: Optional[SortOrderType] = None + +class PipelineExecutionSummaryTypeDef(BaseModel): + PipelineExecutionArn: Optional[str] = None + StartTime: Optional[datetime] = None + PipelineExecutionStatus: Optional[PipelineExecutionStatusType] = None + PipelineExecutionDescription: Optional[str] = None + PipelineExecutionDisplayName: Optional[str] = None + PipelineExecutionFailureReason: Optional[str] = None + +class ListPipelineParametersForExecutionRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ParameterTypeDef(BaseModel): + Name: str + Value: str + +class PipelineSummaryTypeDef(BaseModel): + PipelineArn: Optional[str] = None + PipelineName: Optional[str] = None + PipelineDisplayName: Optional[str] = None + PipelineDescription: Optional[str] = None + RoleArn: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LastExecutionTime: Optional[datetime] = None + +class ProcessingJobSummaryTypeDef(BaseModel): + ProcessingJobName: str + ProcessingJobArn: str + CreationTime: datetime + ProcessingJobStatus: ProcessingJobStatusType + ProcessingEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + FailureReason: Optional[str] = None + ExitMessage: Optional[str] = None + +class ProjectSummaryTypeDef(BaseModel): + ProjectName: str + ProjectArn: str + ProjectId: str + CreationTime: datetime + ProjectStatus: ProjectStatusType + ProjectDescription: Optional[str] = None + +class ResourceCatalogTypeDef(BaseModel): + ResourceCatalogArn: str + ResourceCatalogName: str + Description: str + CreationTime: datetime + +class ListSpacesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[SpaceSortKeyType] = None + DomainIdEquals: Optional[str] = None + SpaceNameContains: Optional[str] = None + +class ListStageDevicesRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + StageName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ExcludeDevicesDeployedInOtherStage: Optional[bool] = None + +class StudioLifecycleConfigDetailsTypeDef(BaseModel): + StudioLifecycleConfigArn: Optional[str] = None + StudioLifecycleConfigName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + StudioLifecycleConfigAppType: Optional[StudioLifecycleConfigAppTypeType] = None + +class ListSubscribedWorkteamsRequestRequestTypeDef(BaseModel): + NameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsInputRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTrainingJobsForHyperParameterTuningJobRequestRequestTypeDef(BaseModel): + HyperParameterTuningJobName: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StatusEquals: Optional[TrainingJobStatusType] = None + SortBy: Optional[TrainingJobSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + +class TransformJobSummaryTypeDef(BaseModel): + TransformJobName: str + TransformJobArn: str + CreationTime: datetime + TransformJobStatus: TransformJobStatusType + TransformEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + FailureReason: Optional[str] = None + +class ListUserProfilesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[UserProfileSortKeyType] = None + DomainIdEquals: Optional[str] = None + UserProfileNameContains: Optional[str] = None + +class UserProfileDetailsTypeDef(BaseModel): + DomainId: Optional[str] = None + UserProfileName: Optional[str] = None + Status: Optional[UserProfileStatusType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class ListWorkforcesRequestRequestTypeDef(BaseModel): + SortBy: Optional[ListWorkforcesSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListWorkteamsRequestRequestTypeDef(BaseModel): + SortBy: Optional[ListWorkteamsSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OidcMemberDefinitionExtraOutputTypeDef(BaseModel): + Groups: Optional[List[str]] = None + +class OidcMemberDefinitionOutputTypeDef(BaseModel): + Groups: Optional[List[str]] = None + +class OidcMemberDefinitionTypeDef(BaseModel): + Groups: Optional[Sequence[str]] = None + +class PredefinedMetricSpecificationTypeDef(BaseModel): + PredefinedMetricType: Optional[str] = None + +class ModelAccessConfigTypeDef(BaseModel): + AcceptEula: bool + +class MonitoringGroundTruthS3InputTypeDef(BaseModel): + S3Uri: Optional[str] = None + +class ModelCompilationConfigOutputTypeDef(BaseModel): + Image: Optional[str] = None + OverrideEnvironment: Optional[Dict[str, str]] = None + +class ModelCompilationConfigTypeDef(BaseModel): + Image: Optional[str] = None + OverrideEnvironment: Optional[Mapping[str, str]] = None + +class ModelDashboardEndpointTypeDef(BaseModel): + EndpointName: str + EndpointArn: str + CreationTime: datetime + LastModifiedTime: datetime + EndpointStatus: EndpointStatusType + +class ModelDashboardIndicatorActionTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class RealTimeInferenceConfigTypeDef(BaseModel): + InstanceType: InstanceTypeType + InstanceCount: int + +class ModelInputTypeDef(BaseModel): + DataInputConfig: str + +class ModelLatencyThresholdTypeDef(BaseModel): + Percentile: Optional[str] = None + ValueInMilliseconds: Optional[int] = None + +class ModelMetadataFilterTypeDef(BaseModel): + Name: ModelMetadataFilterTypeType + Value: str + +class ModelPackageStatusItemTypeDef(BaseModel): + Name: str + Status: DetailedModelPackageStatusType + FailureReason: Optional[str] = None + +class ModelQuantizationConfigOutputTypeDef(BaseModel): + Image: Optional[str] = None + OverrideEnvironment: Optional[Dict[str, str]] = None + +class ModelQuantizationConfigTypeDef(BaseModel): + Image: Optional[str] = None + OverrideEnvironment: Optional[Mapping[str, str]] = None + +class ModelStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + +class MonitoringAppSpecificationExtraOutputTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + +class MonitoringAppSpecificationOutputTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + +class MonitoringAppSpecificationTypeDef(BaseModel): + ImageUri: str + ContainerEntrypoint: Optional[Sequence[str]] = None + ContainerArguments: Optional[Sequence[str]] = None + RecordPreprocessorSourceUri: Optional[str] = None + PostAnalyticsProcessorSourceUri: Optional[str] = None + +class MonitoringClusterConfigTypeDef(BaseModel): + InstanceCount: int + InstanceType: ProcessingInstanceTypeType + VolumeSizeInGB: int + VolumeKmsKeyId: Optional[str] = None + +class MonitoringCsvDatasetFormatTypeDef(BaseModel): + Header: Optional[bool] = None + +class MonitoringJsonDatasetFormatTypeDef(BaseModel): + Line: Optional[bool] = None + +class MonitoringS3OutputTypeDef(BaseModel): + S3Uri: str + LocalPath: str + S3UploadMode: Optional[ProcessingS3UploadModeType] = None + +class ScheduleConfigTypeDef(BaseModel): + ScheduleExpression: str + DataAnalysisStartTime: Optional[str] = None + DataAnalysisEndTime: Optional[str] = None + +class S3StorageConfigTypeDef(BaseModel): + S3Uri: str + KmsKeyId: Optional[str] = None + ResolvedOutputS3Uri: Optional[str] = None + +class OidcConfigForResponseTypeDef(BaseModel): + ClientId: Optional[str] = None + Issuer: Optional[str] = None + AuthorizationEndpoint: Optional[str] = None + TokenEndpoint: Optional[str] = None + UserInfoEndpoint: Optional[str] = None + LogoutEndpoint: Optional[str] = None + JwksUri: Optional[str] = None + Scope: Optional[str] = None + AuthenticationRequestExtraParams: Optional[Dict[str, str]] = None + +class OnlineStoreSecurityConfigTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + +class TtlDurationTypeDef(BaseModel): + Unit: Optional[TtlDurationUnitType] = None + Value: Optional[int] = None + +class OptimizationModelAccessConfigTypeDef(BaseModel): + AcceptEula: bool + +class TargetPlatformTypeDef(BaseModel): + Os: TargetPlatformOsType + Arch: TargetPlatformArchType + Accelerator: Optional[TargetPlatformAcceleratorType] = None + +class OwnershipSettingsSummaryTypeDef(BaseModel): + OwnerUserProfileName: Optional[str] = None + +class ParentTypeDef(BaseModel): + TrialName: Optional[str] = None + ExperimentName: Optional[str] = None + +class ProductionVariantManagedInstanceScalingTypeDef(BaseModel): + Status: Optional[ManagedInstanceScalingStatusType] = None + MinInstanceCount: Optional[int] = None + MaxInstanceCount: Optional[int] = None + +class ProductionVariantRoutingConfigTypeDef(BaseModel): + RoutingStrategy: RoutingStrategyType + +class ProductionVariantStatusTypeDef(BaseModel): + Status: VariantStatusType + StatusMessage: Optional[str] = None + StartTime: Optional[datetime] = None + +class PhaseTypeDef(BaseModel): + InitialNumberOfUsers: Optional[int] = None + SpawnRate: Optional[int] = None + DurationInSeconds: Optional[int] = None + +class ProcessingJobStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + +class QualityCheckStepMetadataTypeDef(BaseModel): + CheckType: Optional[str] = None + BaselineUsedForDriftCheckStatistics: Optional[str] = None + BaselineUsedForDriftCheckConstraints: Optional[str] = None + CalculatedBaselineStatistics: Optional[str] = None + CalculatedBaselineConstraints: Optional[str] = None + ModelPackageGroupName: Optional[str] = None + ViolationReport: Optional[str] = None + CheckJobArn: Optional[str] = None + SkipCheck: Optional[bool] = None + RegisterNewBaseline: Optional[bool] = None + +class RegisterModelStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + +class TrainingJobStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + +class TransformJobStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + +class TuningJobStepMetaDataTypeDef(BaseModel): + Arn: Optional[str] = None + +class SelectiveExecutionResultTypeDef(BaseModel): + SourcePipelineExecutionArn: Optional[str] = None + +class ProcessingClusterConfigTypeDef(BaseModel): + InstanceCount: int + InstanceType: ProcessingInstanceTypeType + VolumeSizeInGB: int + VolumeKmsKeyId: Optional[str] = None + +class ProcessingFeatureStoreOutputTypeDef(BaseModel): + FeatureGroupName: str + +class ProcessingS3InputTypeDef(BaseModel): + S3Uri: str + S3DataType: ProcessingS3DataTypeType + LocalPath: Optional[str] = None + S3InputMode: Optional[ProcessingS3InputModeType] = None + S3DataDistributionType: Optional[ProcessingS3DataDistributionTypeType] = None + S3CompressionType: Optional[ProcessingS3CompressionTypeType] = None + +class ProcessingS3OutputTypeDef(BaseModel): + S3Uri: str + LocalPath: str + S3UploadMode: ProcessingS3UploadModeType + +class ProductionVariantCoreDumpConfigTypeDef(BaseModel): + DestinationS3Uri: str + KmsKeyId: Optional[str] = None + +class ProfilerConfigExtraOutputTypeDef(BaseModel): + S3OutputPath: Optional[str] = None + ProfilingIntervalInMilliseconds: Optional[int] = None + ProfilingParameters: Optional[Dict[str, str]] = None + DisableProfiler: Optional[bool] = None + +class ProfilerConfigForUpdateTypeDef(BaseModel): + S3OutputPath: Optional[str] = None + ProfilingIntervalInMilliseconds: Optional[int] = None + ProfilingParameters: Optional[Mapping[str, str]] = None + DisableProfiler: Optional[bool] = None + +class ProfilerRuleConfigurationTypeDef(BaseModel): + RuleConfigurationName: str + RuleEvaluatorImage: str + LocalPath: Optional[str] = None + S3OutputPath: Optional[str] = None + InstanceType: Optional[ProcessingInstanceTypeType] = None + VolumeSizeInGB: Optional[int] = None + RuleParameters: Optional[Mapping[str, str]] = None + +class PropertyNameQueryTypeDef(BaseModel): + PropertyNameHint: str + +class ProvisioningParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class USDTypeDef(BaseModel): + Dollars: Optional[int] = None + Cents: Optional[int] = None + TenthFractionsOfACent: Optional[int] = None + +class PutModelPackageGroupPolicyInputRequestTypeDef(BaseModel): + ModelPackageGroupName: str + ResourcePolicy: str + +class VertexTypeDef(BaseModel): + Arn: Optional[str] = None + Type: Optional[str] = None + LineageType: Optional[LineageTypeType] = None + +class RStudioServerProAppSettingsTypeDef(BaseModel): + AccessStatus: Optional[RStudioServerProAccessStatusType] = None + UserGroup: Optional[RStudioServerProUserGroupType] = None + +class RecommendationJobCompiledOutputConfigTypeDef(BaseModel): + S3OutputUri: Optional[str] = None + +class RecommendationJobPayloadConfigOutputTypeDef(BaseModel): + SamplePayloadUrl: Optional[str] = None + SupportedContentTypes: Optional[List[str]] = None + +class RecommendationJobPayloadConfigTypeDef(BaseModel): + SamplePayloadUrl: Optional[str] = None + SupportedContentTypes: Optional[Sequence[str]] = None + +class RecommendationJobResourceLimitTypeDef(BaseModel): + MaxNumberOfTests: Optional[int] = None + MaxParallelOfTests: Optional[int] = None + +class RecommendationJobVpcConfigOutputTypeDef(BaseModel): + SecurityGroupIds: List[str] + Subnets: List[str] + +class RecommendationJobVpcConfigTypeDef(BaseModel): + SecurityGroupIds: Sequence[str] + Subnets: Sequence[str] + +class RemoteDebugConfigForUpdateTypeDef(BaseModel): + EnableRemoteDebug: Optional[bool] = None + +class RenderableTaskTypeDef(BaseModel): + Input: str + +class RenderingErrorTypeDef(BaseModel): + Code: str + Message: str + +class ResourceConfigForUpdateTypeDef(BaseModel): + KeepAlivePeriodInSeconds: int + +class VisibilityConditionsTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class SelectedStepTypeDef(BaseModel): + StepName: str + +class SendPipelineExecutionStepFailureRequestRequestTypeDef(BaseModel): + CallbackToken: str + FailureReason: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class ShadowModelVariantConfigTypeDef(BaseModel): + ShadowModelVariantName: str + SamplingPercentage: int + +class SharingSettingsTypeDef(BaseModel): + NotebookOutputOption: Optional[NotebookOutputOptionType] = None + S3OutputPath: Optional[str] = None + S3KmsKeyId: Optional[str] = None + +class SourceIpConfigExtraOutputTypeDef(BaseModel): + Cidrs: List[str] + +class SourceIpConfigOutputTypeDef(BaseModel): + Cidrs: List[str] + +class SpaceSharingSettingsSummaryTypeDef(BaseModel): + SharingType: Optional[SharingTypeType] = None + +class StairsTypeDef(BaseModel): + DurationInSeconds: Optional[int] = None + NumberOfSteps: Optional[int] = None + UsersPerStep: Optional[int] = None + +class StartEdgeDeploymentStageRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + StageName: str + +class StartInferenceExperimentRequestRequestTypeDef(BaseModel): + Name: str + +class StartMlflowTrackingServerRequestRequestTypeDef(BaseModel): + TrackingServerName: str + +class StartMonitoringScheduleRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + +class StartNotebookInstanceInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + +class StopAutoMLJobRequestRequestTypeDef(BaseModel): + AutoMLJobName: str + +class StopCompilationJobRequestRequestTypeDef(BaseModel): + CompilationJobName: str + +class StopEdgeDeploymentStageRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + StageName: str + +class StopEdgePackagingJobRequestRequestTypeDef(BaseModel): + EdgePackagingJobName: str + +class StopHyperParameterTuningJobRequestRequestTypeDef(BaseModel): + HyperParameterTuningJobName: str + +class StopInferenceRecommendationsJobRequestRequestTypeDef(BaseModel): + JobName: str + +class StopLabelingJobRequestRequestTypeDef(BaseModel): + LabelingJobName: str + +class StopMlflowTrackingServerRequestRequestTypeDef(BaseModel): + TrackingServerName: str + +class StopMonitoringScheduleRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + +class StopNotebookInstanceInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + +class StopOptimizationJobRequestRequestTypeDef(BaseModel): + OptimizationJobName: str + +class StopPipelineExecutionRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: str + ClientRequestToken: str + +class StopProcessingJobRequestRequestTypeDef(BaseModel): + ProcessingJobName: str + +class StopTrainingJobRequestRequestTypeDef(BaseModel): + TrainingJobName: str + +class StopTransformJobRequestRequestTypeDef(BaseModel): + TransformJobName: str + +class StudioWebPortalSettingsOutputTypeDef(BaseModel): + HiddenMlTools: Optional[List[MlToolsType]] = None + HiddenAppTypes: Optional[List[AppTypeType]] = None + +class StudioWebPortalSettingsTypeDef(BaseModel): + HiddenMlTools: Optional[Sequence[MlToolsType]] = None + HiddenAppTypes: Optional[Sequence[AppTypeType]] = None + +class ThroughputConfigUpdateTypeDef(BaseModel): + ThroughputMode: Optional[ThroughputModeType] = None + ProvisionedReadCapacityUnits: Optional[int] = None + ProvisionedWriteCapacityUnits: Optional[int] = None + +class TimeSeriesConfigOutputTypeDef(BaseModel): + TargetAttributeName: str + TimestampAttributeName: str + ItemIdentifierAttributeName: str + GroupingAttributeNames: Optional[List[str]] = None + +class TimeSeriesConfigTypeDef(BaseModel): + TargetAttributeName: str + TimestampAttributeName: str + ItemIdentifierAttributeName: str + GroupingAttributeNames: Optional[Sequence[str]] = None + +class TimeSeriesTransformationsOutputTypeDef(BaseModel): + Filling: Optional[Dict[str, Dict[FillingTypeType, str]]] = None + Aggregation: Optional[Dict[str, AggregationTransformationValueType]] = None + +class TimeSeriesTransformationsTypeDef(BaseModel): + Filling: Optional[Mapping[str, Mapping[FillingTypeType, str]]] = None + Aggregation: Optional[Mapping[str, AggregationTransformationValueType]] = None + +class TrainingRepositoryAuthConfigTypeDef(BaseModel): + TrainingRepositoryCredentialsProviderArn: str + +class TransformS3DataSourceTypeDef(BaseModel): + S3DataType: S3DataTypeType + S3Uri: str + +class UpdateActionRequestRequestTypeDef(BaseModel): + ActionName: str + Description: Optional[str] = None + Status: Optional[ActionStatusType] = None + Properties: Optional[Mapping[str, str]] = None + PropertiesToRemove: Optional[Sequence[str]] = None + +class UpdateArtifactRequestRequestTypeDef(BaseModel): + ArtifactArn: str + ArtifactName: Optional[str] = None + Properties: Optional[Mapping[str, str]] = None + PropertiesToRemove: Optional[Sequence[str]] = None + +class UpdateClusterSoftwareRequestRequestTypeDef(BaseModel): + ClusterName: str + +class UpdateContextRequestRequestTypeDef(BaseModel): + ContextName: str + Description: Optional[str] = None + Properties: Optional[Mapping[str, str]] = None + PropertiesToRemove: Optional[Sequence[str]] = None + +class VariantPropertyTypeDef(BaseModel): + VariantPropertyType: VariantPropertyTypeType + +class UpdateExperimentRequestRequestTypeDef(BaseModel): + ExperimentName: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + +class UpdateHubRequestRequestTypeDef(BaseModel): + HubName: str + HubDescription: Optional[str] = None + HubDisplayName: Optional[str] = None + HubSearchKeywords: Optional[Sequence[str]] = None + +class UpdateImageRequestRequestTypeDef(BaseModel): + ImageName: str + DeleteProperties: Optional[Sequence[str]] = None + Description: Optional[str] = None + DisplayName: Optional[str] = None + RoleArn: Optional[str] = None + +class UpdateImageVersionRequestRequestTypeDef(BaseModel): + ImageName: str + Alias: Optional[str] = None + Version: Optional[int] = None + AliasesToAdd: Optional[Sequence[str]] = None + AliasesToDelete: Optional[Sequence[str]] = None + VendorGuidance: Optional[VendorGuidanceType] = None + JobType: Optional[JobTypeType] = None + MLFramework: Optional[str] = None + ProgrammingLang: Optional[str] = None + Processor: Optional[ProcessorType] = None + Horovod: Optional[bool] = None + ReleaseNotes: Optional[str] = None + +class UpdateMlflowTrackingServerRequestRequestTypeDef(BaseModel): + TrackingServerName: str + ArtifactStoreUri: Optional[str] = None + TrackingServerSize: Optional[TrackingServerSizeType] = None + AutomaticModelRegistration: Optional[bool] = None + WeeklyMaintenanceWindowStart: Optional[str] = None + +class UpdateModelCardRequestRequestTypeDef(BaseModel): + ModelCardName: str + Content: Optional[str] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + +class UpdateMonitoringAlertRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + MonitoringAlertName: str + DatapointsToAlert: int + EvaluationPeriod: int + +class UpdateTrialRequestRequestTypeDef(BaseModel): + TrialName: str + DisplayName: Optional[str] = None + +class WorkforceVpcConfigResponseTypeDef(BaseModel): + VpcId: str + SecurityGroupIds: List[str] + Subnets: List[str] + VpcEndpointId: Optional[str] = None + +class ActionSummaryTypeDef(BaseModel): + ActionArn: Optional[str] = None + ActionName: Optional[str] = None + Source: Optional[ActionSourceTypeDef] = None + ActionType: Optional[str] = None + Status: Optional[ActionStatusType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class AddAssociationResponseTypeDef(BaseModel): + SourceArn: str + DestinationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateTrialComponentResponseTypeDef(BaseModel): + TrialComponentArn: str + TrialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateActionResponseTypeDef(BaseModel): + ActionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAlgorithmOutputTypeDef(BaseModel): + AlgorithmArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppImageConfigResponseTypeDef(BaseModel): + AppImageConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppResponseTypeDef(BaseModel): + AppArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateArtifactResponseTypeDef(BaseModel): + ArtifactArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAutoMLJobResponseTypeDef(BaseModel): + AutoMLJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAutoMLJobV2ResponseTypeDef(BaseModel): + AutoMLJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterResponseTypeDef(BaseModel): + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCodeRepositoryOutputTypeDef(BaseModel): + CodeRepositoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCompilationJobResponseTypeDef(BaseModel): + CompilationJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContextResponseTypeDef(BaseModel): + ContextArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDataQualityJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainResponseTypeDef(BaseModel): + DomainArn: str + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEdgeDeploymentPlanResponseTypeDef(BaseModel): + EdgeDeploymentPlanArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointConfigOutputTypeDef(BaseModel): + EndpointConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointOutputTypeDef(BaseModel): + EndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperimentResponseTypeDef(BaseModel): + ExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFeatureGroupResponseTypeDef(BaseModel): + FeatureGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowDefinitionResponseTypeDef(BaseModel): + FlowDefinitionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHubContentReferenceResponseTypeDef(BaseModel): + HubArn: str + HubContentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHubResponseTypeDef(BaseModel): + HubArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHumanTaskUiResponseTypeDef(BaseModel): + HumanTaskUiArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHyperParameterTuningJobResponseTypeDef(BaseModel): + HyperParameterTuningJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageResponseTypeDef(BaseModel): + ImageArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImageVersionResponseTypeDef(BaseModel): + ImageVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInferenceComponentOutputTypeDef(BaseModel): + InferenceComponentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInferenceExperimentResponseTypeDef(BaseModel): + InferenceExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInferenceRecommendationsJobResponseTypeDef(BaseModel): + JobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLabelingJobResponseTypeDef(BaseModel): + LabelingJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMlflowTrackingServerResponseTypeDef(BaseModel): + TrackingServerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelBiasJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelCardExportJobResponseTypeDef(BaseModel): + ModelCardExportJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelCardResponseTypeDef(BaseModel): + ModelCardArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelExplainabilityJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelOutputTypeDef(BaseModel): + ModelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelPackageGroupOutputTypeDef(BaseModel): + ModelPackageGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelPackageOutputTypeDef(BaseModel): + ModelPackageArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelQualityJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMonitoringScheduleResponseTypeDef(BaseModel): + MonitoringScheduleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNotebookInstanceLifecycleConfigOutputTypeDef(BaseModel): + NotebookInstanceLifecycleConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNotebookInstanceOutputTypeDef(BaseModel): + NotebookInstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOptimizationJobResponseTypeDef(BaseModel): + OptimizationJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePipelineResponseTypeDef(BaseModel): + PipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePresignedDomainUrlResponseTypeDef(BaseModel): + AuthorizedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePresignedMlflowTrackingServerUrlResponseTypeDef(BaseModel): + AuthorizedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePresignedNotebookInstanceUrlOutputTypeDef(BaseModel): + AuthorizedUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProcessingJobResponseTypeDef(BaseModel): + ProcessingJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProjectOutputTypeDef(BaseModel): + ProjectArn: str + ProjectId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSpaceResponseTypeDef(BaseModel): + SpaceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStudioLifecycleConfigResponseTypeDef(BaseModel): + StudioLifecycleConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrainingJobResponseTypeDef(BaseModel): + TrainingJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTransformJobResponseTypeDef(BaseModel): + TransformJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrialComponentResponseTypeDef(BaseModel): + TrialComponentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrialResponseTypeDef(BaseModel): + TrialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserProfileResponseTypeDef(BaseModel): + UserProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkforceResponseTypeDef(BaseModel): + WorkforceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkteamResponseTypeDef(BaseModel): + WorkteamArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteActionResponseTypeDef(BaseModel): + ActionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteArtifactResponseTypeDef(BaseModel): + ArtifactArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAssociationResponseTypeDef(BaseModel): + SourceArn: str + DestinationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteClusterResponseTypeDef(BaseModel): + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteContextResponseTypeDef(BaseModel): + ContextArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteExperimentResponseTypeDef(BaseModel): + ExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInferenceExperimentResponseTypeDef(BaseModel): + InferenceExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMlflowTrackingServerResponseTypeDef(BaseModel): + TrackingServerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePipelineResponseTypeDef(BaseModel): + PipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrialComponentResponseTypeDef(BaseModel): + TrialComponentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTrialResponseTypeDef(BaseModel): + TrialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWorkteamResponseTypeDef(BaseModel): + Success: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageResponseTypeDef(BaseModel): + CreationTime: datetime + Description: str + DisplayName: str + FailureReason: str + ImageArn: str + ImageName: str + ImageStatus: ImageStatusType + LastModifiedTime: datetime + RoleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageVersionResponseTypeDef(BaseModel): + BaseImage: str + ContainerImage: str + CreationTime: datetime + FailureReason: str + ImageArn: str + ImageVersionArn: str + ImageVersionStatus: ImageVersionStatusType + LastModifiedTime: datetime + Version: int + VendorGuidance: VendorGuidanceType + JobType: JobTypeType + MLFramework: str + ProgrammingLang: str + Processor: ProcessorType + Horovod: bool + ReleaseNotes: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePipelineDefinitionForExecutionResponseTypeDef(BaseModel): + PipelineDefinition: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStudioLifecycleConfigResponseTypeDef(BaseModel): + StudioLifecycleConfigArn: str + StudioLifecycleConfigName: str + CreationTime: datetime + LastModifiedTime: datetime + StudioLifecycleConfigContent: str + StudioLifecycleConfigAppType: StudioLifecycleConfigAppTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateTrialComponentResponseTypeDef(BaseModel): + TrialComponentArn: str + TrialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetLineageGroupPolicyResponseTypeDef(BaseModel): + LineageGroupArn: str + ResourcePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetModelPackageGroupPolicyOutputTypeDef(BaseModel): + ResourcePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSagemakerServicecatalogPortfolioStatusOutputTypeDef(BaseModel): + Status: SagemakerServicecatalogStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ImportHubContentResponseTypeDef(BaseModel): + HubArn: str + HubContentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesResponseTypeDef(BaseModel): + SageMakerImageVersionAliases: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutModelPackageGroupPolicyOutputTypeDef(BaseModel): + ModelPackageGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RetryPipelineExecutionResponseTypeDef(BaseModel): + PipelineExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendPipelineExecutionStepFailureResponseTypeDef(BaseModel): + PipelineExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendPipelineExecutionStepSuccessResponseTypeDef(BaseModel): + PipelineExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartInferenceExperimentResponseTypeDef(BaseModel): + InferenceExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMlflowTrackingServerResponseTypeDef(BaseModel): + TrackingServerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartPipelineExecutionResponseTypeDef(BaseModel): + PipelineExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopInferenceExperimentResponseTypeDef(BaseModel): + InferenceExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopMlflowTrackingServerResponseTypeDef(BaseModel): + TrackingServerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopPipelineExecutionResponseTypeDef(BaseModel): + PipelineExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateActionResponseTypeDef(BaseModel): + ActionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppImageConfigResponseTypeDef(BaseModel): + AppImageConfigArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateArtifactResponseTypeDef(BaseModel): + ArtifactArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterResponseTypeDef(BaseModel): + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateClusterSoftwareResponseTypeDef(BaseModel): + ClusterArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCodeRepositoryOutputTypeDef(BaseModel): + CodeRepositoryArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContextResponseTypeDef(BaseModel): + ContextArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainResponseTypeDef(BaseModel): + DomainArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEndpointOutputTypeDef(BaseModel): + EndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEndpointWeightsAndCapacitiesOutputTypeDef(BaseModel): + EndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateExperimentResponseTypeDef(BaseModel): + ExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFeatureGroupResponseTypeDef(BaseModel): + FeatureGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHubResponseTypeDef(BaseModel): + HubArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateImageResponseTypeDef(BaseModel): + ImageArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateImageVersionResponseTypeDef(BaseModel): + ImageVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInferenceComponentOutputTypeDef(BaseModel): + InferenceComponentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInferenceComponentRuntimeConfigOutputTypeDef(BaseModel): + InferenceComponentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInferenceExperimentResponseTypeDef(BaseModel): + InferenceExperimentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMlflowTrackingServerResponseTypeDef(BaseModel): + TrackingServerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelCardResponseTypeDef(BaseModel): + ModelCardArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelPackageOutputTypeDef(BaseModel): + ModelPackageArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMonitoringAlertResponseTypeDef(BaseModel): + MonitoringScheduleArn: str + MonitoringAlertName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMonitoringScheduleResponseTypeDef(BaseModel): + MonitoringScheduleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineExecutionResponseTypeDef(BaseModel): + PipelineExecutionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePipelineResponseTypeDef(BaseModel): + PipelineArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProjectOutputTypeDef(BaseModel): + ProjectArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSpaceResponseTypeDef(BaseModel): + SpaceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrainingJobResponseTypeDef(BaseModel): + TrainingJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrialComponentResponseTypeDef(BaseModel): + TrialComponentArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrialResponseTypeDef(BaseModel): + TrialArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserProfileResponseTypeDef(BaseModel): + UserProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class AddTagsOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExperimentRequestRequestTypeDef(BaseModel): + ExperimentName: str + DisplayName: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateHubContentReferenceRequestRequestTypeDef(BaseModel): + HubName: str + SageMakerPublicHubContentArn: str + HubContentName: Optional[str] = None + MinVersion: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateImageRequestRequestTypeDef(BaseModel): + ImageName: str + RoleArn: str + Description: Optional[str] = None + DisplayName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateMlflowTrackingServerRequestRequestTypeDef(BaseModel): + TrackingServerName: str + ArtifactStoreUri: str + RoleArn: str + TrackingServerSize: Optional[TrackingServerSizeType] = None + MlflowVersion: Optional[str] = None + AutomaticModelRegistration: Optional[bool] = None + WeeklyMaintenanceWindowStart: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelPackageGroupInputRequestTypeDef(BaseModel): + ModelPackageGroupName: str + ModelPackageGroupDescription: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateStudioLifecycleConfigRequestRequestTypeDef(BaseModel): + StudioLifecycleConfigName: str + StudioLifecycleConfigContent: str + StudioLifecycleConfigAppType: StudioLifecycleConfigAppTypeType + Tags: Optional[Sequence[TagTypeDef]] = None + +class ImportHubContentRequestRequestTypeDef(BaseModel): + HubContentName: str + HubContentType: HubContentTypeType + DocumentSchemaVersion: str + HubName: str + HubContentDocument: str + HubContentVersion: Optional[str] = None + HubContentDisplayName: Optional[str] = None + HubContentDescription: Optional[str] = None + HubContentMarkdown: Optional[str] = None + HubContentSearchKeywords: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AutoRollbackConfigOutputTypeDef(BaseModel): + Alarms: Optional[List[AlarmTypeDef]] = None + +class AutoRollbackConfigTypeDef(BaseModel): + Alarms: Optional[Sequence[AlarmTypeDef]] = None + +class HyperParameterAlgorithmSpecificationExtraOutputTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + TrainingImage: Optional[str] = None + AlgorithmName: Optional[str] = None + MetricDefinitions: Optional[List[MetricDefinitionTypeDef]] = None + +class HyperParameterAlgorithmSpecificationOutputTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + TrainingImage: Optional[str] = None + AlgorithmName: Optional[str] = None + MetricDefinitions: Optional[List[MetricDefinitionTypeDef]] = None + +class HyperParameterAlgorithmSpecificationTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + TrainingImage: Optional[str] = None + AlgorithmName: Optional[str] = None + MetricDefinitions: Optional[Sequence[MetricDefinitionTypeDef]] = None + +class AlgorithmStatusDetailsTypeDef(BaseModel): + ValidationStatuses: Optional[List[AlgorithmStatusItemTypeDef]] = None + ImageScanStatuses: Optional[List[AlgorithmStatusItemTypeDef]] = None + +class ListAlgorithmsOutputTypeDef(BaseModel): + AlgorithmSummaryList: List[AlgorithmSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AppDetailsTypeDef(BaseModel): + DomainId: Optional[str] = None + UserProfileName: Optional[str] = None + SpaceName: Optional[str] = None + AppType: Optional[AppTypeType] = None + AppName: Optional[str] = None + Status: Optional[AppStatusType] = None + CreationTime: Optional[datetime] = None + ResourceSpec: Optional[ResourceSpecTypeDef] = None + +class CreateAppRequestRequestTypeDef(BaseModel): + DomainId: str + AppType: AppTypeType + AppName: str + UserProfileName: Optional[str] = None + SpaceName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ResourceSpec: Optional[ResourceSpecTypeDef] = None + +class DescribeAppResponseTypeDef(BaseModel): + AppArn: str + AppType: AppTypeType + AppName: str + DomainId: str + UserProfileName: str + SpaceName: str + Status: AppStatusType + LastHealthCheckTimestamp: datetime + LastUserActivityTimestamp: datetime + CreationTime: datetime + FailureReason: str + ResourceSpec: ResourceSpecTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RStudioServerProDomainSettingsForUpdateTypeDef(BaseModel): + DomainExecutionRoleArn: str + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + RStudioConnectUrl: Optional[str] = None + RStudioPackageManagerUrl: Optional[str] = None + +class RStudioServerProDomainSettingsTypeDef(BaseModel): + DomainExecutionRoleArn: str + RStudioConnectUrl: Optional[str] = None + RStudioPackageManagerUrl: Optional[str] = None + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + +class SpaceCodeEditorAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + +class TensorBoardAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + +class ArtifactSourceExtraOutputTypeDef(BaseModel): + SourceUri: str + SourceTypes: Optional[List[ArtifactSourceTypeTypeDef]] = None + +class ArtifactSourceOutputTypeDef(BaseModel): + SourceUri: str + SourceTypes: Optional[List[ArtifactSourceTypeTypeDef]] = None + +class ArtifactSourceTypeDef(BaseModel): + SourceUri: str + SourceTypes: Optional[Sequence[ArtifactSourceTypeTypeDef]] = None + +class AsyncInferenceOutputConfigOutputTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + S3OutputPath: Optional[str] = None + NotificationConfig: Optional[AsyncInferenceNotificationConfigOutputTypeDef] = None + S3FailurePath: Optional[str] = None + +class AsyncInferenceOutputConfigTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + S3OutputPath: Optional[str] = None + NotificationConfig: Optional[AsyncInferenceNotificationConfigTypeDef] = None + S3FailurePath: Optional[str] = None + +class AutoMLCandidateGenerationConfigOutputTypeDef(BaseModel): + FeatureSpecificationS3Uri: Optional[str] = None + AlgorithmsConfig: Optional[List[AutoMLAlgorithmConfigOutputTypeDef]] = None + +class CandidateGenerationConfigOutputTypeDef(BaseModel): + AlgorithmsConfig: Optional[List[AutoMLAlgorithmConfigOutputTypeDef]] = None + +class AutoMLCandidateGenerationConfigTypeDef(BaseModel): + FeatureSpecificationS3Uri: Optional[str] = None + AlgorithmsConfig: Optional[Sequence[AutoMLAlgorithmConfigTypeDef]] = None + +class CandidateGenerationConfigTypeDef(BaseModel): + AlgorithmsConfig: Optional[Sequence[AutoMLAlgorithmConfigTypeDef]] = None + +class AutoMLDataSourceTypeDef(BaseModel): + S3DataSource: AutoMLS3DataSourceTypeDef + +class ImageClassificationJobConfigTypeDef(BaseModel): + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + +class TextClassificationJobConfigTypeDef(BaseModel): + ContentColumn: str + TargetLabelColumn: str + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + +class ResolvedAttributesTypeDef(BaseModel): + AutoMLJobObjective: Optional[AutoMLJobObjectiveTypeDef] = None + ProblemType: Optional[ProblemTypeType] = None + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + +class AutoMLJobSummaryTypeDef(BaseModel): + AutoMLJobName: str + AutoMLJobArn: str + AutoMLJobStatus: AutoMLJobStatusType + AutoMLJobSecondaryStatus: AutoMLJobSecondaryStatusType + CreationTime: datetime + LastModifiedTime: datetime + EndTime: Optional[datetime] = None + FailureReason: Optional[str] = None + PartialFailureReasons: Optional[List[AutoMLPartialFailureReasonTypeDef]] = None + +class AutoMLProblemTypeResolvedAttributesTypeDef(BaseModel): + TabularResolvedAttributes: Optional[TabularResolvedAttributesTypeDef] = None + TextGenerationResolvedAttributes: Optional[TextGenerationResolvedAttributesTypeDef] = None + +class AutoMLSecurityConfigOutputTypeDef(BaseModel): + VolumeKmsKeyId: Optional[str] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class LabelingJobResourceConfigOutputTypeDef(BaseModel): + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class MonitoringNetworkConfigOutputTypeDef(BaseModel): + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableNetworkIsolation: Optional[bool] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class NetworkConfigOutputTypeDef(BaseModel): + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableNetworkIsolation: Optional[bool] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + +class AutoMLSecurityConfigTypeDef(BaseModel): + VolumeKmsKeyId: Optional[str] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class LabelingJobResourceConfigTypeDef(BaseModel): + VolumeKmsKeyId: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class MonitoringNetworkConfigTypeDef(BaseModel): + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableNetworkIsolation: Optional[bool] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class NetworkConfigTypeDef(BaseModel): + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableNetworkIsolation: Optional[bool] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + +class BiasTypeDef(BaseModel): + Report: Optional[MetricsSourceTypeDef] = None + PreTrainingReport: Optional[MetricsSourceTypeDef] = None + PostTrainingReport: Optional[MetricsSourceTypeDef] = None + +class DriftCheckModelDataQualityTypeDef(BaseModel): + Statistics: Optional[MetricsSourceTypeDef] = None + Constraints: Optional[MetricsSourceTypeDef] = None + +class DriftCheckModelQualityTypeDef(BaseModel): + Statistics: Optional[MetricsSourceTypeDef] = None + Constraints: Optional[MetricsSourceTypeDef] = None + +class ExplainabilityTypeDef(BaseModel): + Report: Optional[MetricsSourceTypeDef] = None + +class ModelDataQualityTypeDef(BaseModel): + Statistics: Optional[MetricsSourceTypeDef] = None + Constraints: Optional[MetricsSourceTypeDef] = None + +class ModelQualityTypeDef(BaseModel): + Statistics: Optional[MetricsSourceTypeDef] = None + Constraints: Optional[MetricsSourceTypeDef] = None + +class CallbackStepMetadataTypeDef(BaseModel): + CallbackToken: Optional[str] = None + SqsQueueUrl: Optional[str] = None + OutputParameters: Optional[List[OutputParameterTypeDef]] = None + +class LambdaStepMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + OutputParameters: Optional[List[OutputParameterTypeDef]] = None + +class SendPipelineExecutionStepSuccessRequestRequestTypeDef(BaseModel): + CallbackToken: str + OutputParameters: Optional[Sequence[OutputParameterTypeDef]] = None + ClientRequestToken: Optional[str] = None + +class CandidatePropertiesTypeDef(BaseModel): + CandidateArtifactLocations: Optional[CandidateArtifactLocationsTypeDef] = None + CandidateMetrics: Optional[List[MetricDatumTypeDef]] = None + +class CanvasAppSettingsOutputTypeDef(BaseModel): + TimeSeriesForecastingSettings: Optional[TimeSeriesForecastingSettingsTypeDef] = None + ModelRegisterSettings: Optional[ModelRegisterSettingsTypeDef] = None + WorkspaceSettings: Optional[WorkspaceSettingsTypeDef] = None + IdentityProviderOAuthSettings: Optional[List[IdentityProviderOAuthSettingTypeDef]] = None + DirectDeploySettings: Optional[DirectDeploySettingsTypeDef] = None + KendraSettings: Optional[KendraSettingsTypeDef] = None + GenerativeAiSettings: Optional[GenerativeAiSettingsTypeDef] = None + +class CanvasAppSettingsTypeDef(BaseModel): + TimeSeriesForecastingSettings: Optional[TimeSeriesForecastingSettingsTypeDef] = None + ModelRegisterSettings: Optional[ModelRegisterSettingsTypeDef] = None + WorkspaceSettings: Optional[WorkspaceSettingsTypeDef] = None + IdentityProviderOAuthSettings: Optional[Sequence[IdentityProviderOAuthSettingTypeDef]] = None + DirectDeploySettings: Optional[DirectDeploySettingsTypeDef] = None + KendraSettings: Optional[KendraSettingsTypeDef] = None + GenerativeAiSettings: Optional[GenerativeAiSettingsTypeDef] = None + +class RollingUpdatePolicyTypeDef(BaseModel): + MaximumBatchSize: CapacitySizeTypeDef + WaitIntervalInSeconds: int + MaximumExecutionTimeoutInSeconds: Optional[int] = None + RollbackMaximumBatchSize: Optional[CapacitySizeTypeDef] = None + +class TrafficRoutingConfigTypeDef(BaseModel): + Type: TrafficRoutingConfigTypeType + WaitIntervalInSeconds: int + CanarySize: Optional[CapacitySizeTypeDef] = None + LinearStepSize: Optional[CapacitySizeTypeDef] = None + +class InferenceExperimentDataStorageConfigOutputTypeDef(BaseModel): + Destination: str + KmsKey: Optional[str] = None + ContentType: Optional[CaptureContentTypeHeaderOutputTypeDef] = None + +class InferenceExperimentDataStorageConfigTypeDef(BaseModel): + Destination: str + KmsKey: Optional[str] = None + ContentType: Optional[CaptureContentTypeHeaderTypeDef] = None + +class DataCaptureConfigOutputTypeDef(BaseModel): + InitialSamplingPercentage: int + DestinationS3Uri: str + CaptureOptions: List[CaptureOptionTypeDef] + EnableCapture: Optional[bool] = None + KmsKeyId: Optional[str] = None + CaptureContentTypeHeader: Optional[CaptureContentTypeHeaderOutputTypeDef] = None + +class DataCaptureConfigTypeDef(BaseModel): + InitialSamplingPercentage: int + DestinationS3Uri: str + CaptureOptions: Sequence[CaptureOptionTypeDef] + EnableCapture: Optional[bool] = None + KmsKeyId: Optional[str] = None + CaptureContentTypeHeader: Optional[CaptureContentTypeHeaderTypeDef] = None + +class EnvironmentParameterRangesOutputTypeDef(BaseModel): + CategoricalParameterRanges: Optional[List[CategoricalParameterOutputTypeDef]] = None + +class EnvironmentParameterRangesTypeDef(BaseModel): + CategoricalParameterRanges: Optional[Sequence[CategoricalParameterTypeDef]] = None + +class ClarifyShapConfigTypeDef(BaseModel): + ShapBaselineConfig: ClarifyShapBaselineConfigTypeDef + NumberOfSamples: Optional[int] = None + UseLogit: Optional[bool] = None + Seed: Optional[int] = None + TextConfig: Optional[ClarifyTextConfigTypeDef] = None + +class ClusterInstanceStorageConfigTypeDef(BaseModel): + EbsVolumeConfig: Optional[ClusterEbsVolumeConfigTypeDef] = None + +class ClusterNodeSummaryTypeDef(BaseModel): + InstanceGroupName: str + InstanceId: str + InstanceType: ClusterInstanceTypeType + LaunchTime: datetime + InstanceStatus: ClusterInstanceStatusDetailsTypeDef + +class ListClustersResponseTypeDef(BaseModel): + NextToken: str + ClusterSummaries: List[ClusterSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CodeEditorAppImageConfigExtraOutputTypeDef(BaseModel): + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + ContainerConfig: Optional[ContainerConfigExtraOutputTypeDef] = None + +class JupyterLabAppImageConfigExtraOutputTypeDef(BaseModel): + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + ContainerConfig: Optional[ContainerConfigExtraOutputTypeDef] = None + +class CodeEditorAppImageConfigOutputTypeDef(BaseModel): + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + ContainerConfig: Optional[ContainerConfigOutputTypeDef] = None + +class JupyterLabAppImageConfigOutputTypeDef(BaseModel): + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + ContainerConfig: Optional[ContainerConfigOutputTypeDef] = None + +class CodeEditorAppImageConfigTypeDef(BaseModel): + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + ContainerConfig: Optional[ContainerConfigTypeDef] = None + +class JupyterLabAppImageConfigTypeDef(BaseModel): + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + ContainerConfig: Optional[ContainerConfigTypeDef] = None + +class CodeEditorAppSettingsOutputTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[List[CustomImageTypeDef]] = None + LifecycleConfigArns: Optional[List[str]] = None + +class CodeEditorAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[Sequence[CustomImageTypeDef]] = None + LifecycleConfigArns: Optional[Sequence[str]] = None + +class KernelGatewayAppSettingsOutputTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[List[CustomImageTypeDef]] = None + LifecycleConfigArns: Optional[List[str]] = None + +class KernelGatewayAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[Sequence[CustomImageTypeDef]] = None + LifecycleConfigArns: Optional[Sequence[str]] = None + +class RSessionAppSettingsOutputTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[List[CustomImageTypeDef]] = None + +class RSessionAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[Sequence[CustomImageTypeDef]] = None + +class CodeRepositorySummaryTypeDef(BaseModel): + CodeRepositoryName: str + CodeRepositoryArn: str + CreationTime: datetime + LastModifiedTime: datetime + GitConfig: Optional[GitConfigTypeDef] = None + +class CreateCodeRepositoryInputRequestTypeDef(BaseModel): + CodeRepositoryName: str + GitConfig: GitConfigTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeCodeRepositoryOutputTypeDef(BaseModel): + CodeRepositoryName: str + CodeRepositoryArn: str + CreationTime: datetime + LastModifiedTime: datetime + GitConfig: GitConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JupyterLabAppSettingsOutputTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[List[CustomImageTypeDef]] = None + LifecycleConfigArns: Optional[List[str]] = None + CodeRepositories: Optional[List[CodeRepositoryTypeDef]] = None + +class JupyterLabAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CustomImages: Optional[Sequence[CustomImageTypeDef]] = None + LifecycleConfigArns: Optional[Sequence[str]] = None + CodeRepositories: Optional[Sequence[CodeRepositoryTypeDef]] = None + +class JupyterServerAppSettingsOutputTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + LifecycleConfigArns: Optional[List[str]] = None + CodeRepositories: Optional[List[CodeRepositoryTypeDef]] = None + +class JupyterServerAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + LifecycleConfigArns: Optional[Sequence[str]] = None + CodeRepositories: Optional[Sequence[CodeRepositoryTypeDef]] = None + +class SpaceJupyterLabAppSettingsOutputTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CodeRepositories: Optional[List[CodeRepositoryTypeDef]] = None + +class SpaceJupyterLabAppSettingsTypeDef(BaseModel): + DefaultResourceSpec: Optional[ResourceSpecTypeDef] = None + CodeRepositories: Optional[Sequence[CodeRepositoryTypeDef]] = None + +class CollectionConfigTypeDef(BaseModel): + VectorConfig: Optional[VectorConfigTypeDef] = None + +class DebugHookConfigExtraOutputTypeDef(BaseModel): + S3OutputPath: str + LocalPath: Optional[str] = None + HookParameters: Optional[Dict[str, str]] = None + CollectionConfigurations: Optional[List[CollectionConfigurationExtraOutputTypeDef]] = None + +class DebugHookConfigOutputTypeDef(BaseModel): + S3OutputPath: str + LocalPath: Optional[str] = None + HookParameters: Optional[Dict[str, str]] = None + CollectionConfigurations: Optional[List[CollectionConfigurationOutputTypeDef]] = None + +class DebugHookConfigTypeDef(BaseModel): + S3OutputPath: str + LocalPath: Optional[str] = None + HookParameters: Optional[Mapping[str, str]] = None + CollectionConfigurations: Optional[Sequence[CollectionConfigurationTypeDef]] = None + +class ListCompilationJobsResponseTypeDef(BaseModel): + CompilationJobSummaries: List[CompilationJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ContextSummaryTypeDef(BaseModel): + ContextArn: Optional[str] = None + ContextName: Optional[str] = None + Source: Optional[ContextSourceTypeDef] = None + ContextType: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class CreateContextRequestRequestTypeDef(BaseModel): + ContextName: str + Source: ContextSourceTypeDef + ContextType: str + Description: Optional[str] = None + Properties: Optional[Mapping[str, str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TuningJobCompletionCriteriaTypeDef(BaseModel): + TargetObjectiveMetricValue: Optional[float] = None + BestObjectiveNotImproving: Optional[BestObjectiveNotImprovingTypeDef] = None + ConvergenceDetected: Optional[ConvergenceDetectedTypeDef] = None + +class CreateActionRequestRequestTypeDef(BaseModel): + ActionName: str + Source: ActionSourceTypeDef + ActionType: str + Description: Optional[str] = None + Status: Optional[ActionStatusType] = None + Properties: Optional[Mapping[str, str]] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTrialRequestRequestTypeDef(BaseModel): + TrialName: str + ExperimentName: str + DisplayName: Optional[str] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateDeviceFleetRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + OutputConfig: EdgeOutputConfigTypeDef + RoleArn: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + EnableIotRoleAlias: Optional[bool] = None + +class CreateEdgePackagingJobRequestRequestTypeDef(BaseModel): + EdgePackagingJobName: str + CompilationJobName: str + ModelName: str + ModelVersion: str + RoleArn: str + OutputConfig: EdgeOutputConfigTypeDef + ResourceKey: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeDeviceFleetResponseTypeDef(BaseModel): + DeviceFleetName: str + DeviceFleetArn: str + OutputConfig: EdgeOutputConfigTypeDef + Description: str + CreationTime: datetime + LastModifiedTime: datetime + RoleArn: str + IotRoleAlias: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDeviceFleetRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + OutputConfig: EdgeOutputConfigTypeDef + RoleArn: Optional[str] = None + Description: Optional[str] = None + EnableIotRoleAlias: Optional[bool] = None + +class CreateHubRequestRequestTypeDef(BaseModel): + HubName: str + HubDescription: str + HubDisplayName: Optional[str] = None + HubSearchKeywords: Optional[Sequence[str]] = None + S3StorageConfig: Optional[HubS3StorageConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeHubResponseTypeDef(BaseModel): + HubName: str + HubArn: str + HubDisplayName: str + HubDescription: str + HubSearchKeywords: List[str] + S3StorageConfig: HubS3StorageConfigTypeDef + HubStatus: HubStatusType + FailureReason: str + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateHumanTaskUiRequestRequestTypeDef(BaseModel): + HumanTaskUiName: str + UiTemplate: UiTemplateTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateInferenceComponentRuntimeConfigInputRequestTypeDef(BaseModel): + InferenceComponentName: str + DesiredRuntimeConfig: InferenceComponentRuntimeConfigTypeDef + +class CreateModelCardExportJobRequestRequestTypeDef(BaseModel): + ModelCardName: str + ModelCardExportJobName: str + OutputConfig: ModelCardExportOutputConfigTypeDef + ModelCardVersion: Optional[int] = None + +class CreateModelCardRequestRequestTypeDef(BaseModel): + ModelCardName: str + Content: str + ModelCardStatus: ModelCardStatusType + SecurityConfig: Optional[ModelCardSecurityConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateNotebookInstanceInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + InstanceType: InstanceTypeType + RoleArn: str + SubnetId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + LifecycleConfigName: Optional[str] = None + DirectInternetAccess: Optional[DirectInternetAccessType] = None + VolumeSizeInGB: Optional[int] = None + AcceleratorTypes: Optional[Sequence[NotebookInstanceAcceleratorTypeType]] = None + DefaultCodeRepository: Optional[str] = None + AdditionalCodeRepositories: Optional[Sequence[str]] = None + RootAccess: Optional[RootAccessType] = None + PlatformIdentifier: Optional[str] = None + InstanceMetadataServiceConfiguration: Optional[ InstanceMetadataServiceConfigurationTypeDef ] = None + +class DescribeNotebookInstanceOutputTypeDef(BaseModel): + NotebookInstanceArn: str + NotebookInstanceName: str + NotebookInstanceStatus: NotebookInstanceStatusType + FailureReason: str + Url: str + InstanceType: InstanceTypeType + SubnetId: str + SecurityGroups: List[str] + RoleArn: str + KmsKeyId: str + NetworkInterfaceId: str + LastModifiedTime: datetime + CreationTime: datetime + NotebookInstanceLifecycleConfigName: str + DirectInternetAccess: DirectInternetAccessType + VolumeSizeInGB: int + AcceleratorTypes: List[NotebookInstanceAcceleratorTypeType] + DefaultCodeRepository: str + AdditionalCodeRepositories: List[str] + RootAccess: RootAccessType + PlatformIdentifier: str + InstanceMetadataServiceConfiguration: InstanceMetadataServiceConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNotebookInstanceInputRequestTypeDef(BaseModel): + NotebookInstanceName: str + InstanceType: Optional[InstanceTypeType] = None + RoleArn: Optional[str] = None + LifecycleConfigName: Optional[str] = None + DisassociateLifecycleConfig: Optional[bool] = None + VolumeSizeInGB: Optional[int] = None + DefaultCodeRepository: Optional[str] = None + AdditionalCodeRepositories: Optional[Sequence[str]] = None + AcceleratorTypes: Optional[Sequence[NotebookInstanceAcceleratorTypeType]] = None + DisassociateAcceleratorTypes: Optional[bool] = None + DisassociateDefaultCodeRepository: Optional[bool] = None + DisassociateAdditionalCodeRepositories: Optional[bool] = None + RootAccess: Optional[RootAccessType] = None + InstanceMetadataServiceConfiguration: Optional[ InstanceMetadataServiceConfigurationTypeDef ] = None + +class CreateNotebookInstanceLifecycleConfigInputRequestTypeDef(BaseModel): + NotebookInstanceLifecycleConfigName: str + OnCreate: Optional[Sequence[NotebookInstanceLifecycleHookTypeDef]] = None + OnStart: Optional[Sequence[NotebookInstanceLifecycleHookTypeDef]] = None + +class DescribeNotebookInstanceLifecycleConfigOutputTypeDef(BaseModel): + NotebookInstanceLifecycleConfigArn: str + NotebookInstanceLifecycleConfigName: str + OnCreate: List[NotebookInstanceLifecycleHookTypeDef] + OnStart: List[NotebookInstanceLifecycleHookTypeDef] + LastModifiedTime: datetime + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNotebookInstanceLifecycleConfigInputRequestTypeDef(BaseModel): + NotebookInstanceLifecycleConfigName: str + OnCreate: Optional[Sequence[NotebookInstanceLifecycleHookTypeDef]] = None + OnStart: Optional[Sequence[NotebookInstanceLifecycleHookTypeDef]] = None + +class RetryPipelineExecutionRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: str + ClientRequestToken: str + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + +class UpdatePipelineExecutionRequestRequestTypeDef(BaseModel): + PipelineExecutionArn: str + PipelineExecutionDescription: Optional[str] = None + PipelineExecutionDisplayName: Optional[str] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + +class CreatePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + ClientRequestToken: str + RoleArn: str + PipelineDisplayName: Optional[str] = None + PipelineDefinition: Optional[str] = None + PipelineDefinitionS3Location: Optional[PipelineDefinitionS3LocationTypeDef] = None + PipelineDescription: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + +class UpdatePipelineRequestRequestTypeDef(BaseModel): + PipelineName: str + PipelineDisplayName: Optional[str] = None + PipelineDefinition: Optional[str] = None + PipelineDefinitionS3Location: Optional[PipelineDefinitionS3LocationTypeDef] = None + PipelineDescription: Optional[str] = None + RoleArn: Optional[str] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + +class InferenceExperimentScheduleTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + +class ListActionsRequestRequestTypeDef(BaseModel): + SourceUri: Optional[str] = None + ActionType: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortActionsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAlgorithmsInputRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[AlgorithmSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListAppImageConfigsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + ModifiedTimeBefore: Optional[TimestampTypeDef] = None + ModifiedTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[AppImageConfigSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + +class ListArtifactsRequestRequestTypeDef(BaseModel): + SourceUri: Optional[str] = None + ArtifactType: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[Literal["CreationTime"]] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAssociationsRequestRequestTypeDef(BaseModel): + SourceArn: Optional[str] = None + DestinationArn: Optional[str] = None + SourceType: Optional[str] = None + DestinationType: Optional[str] = None + AssociationType: Optional[AssociationEdgeTypeType] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortAssociationsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAutoMLJobsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[AutoMLJobStatusType] = None + SortOrder: Optional[AutoMLSortOrderType] = None + SortBy: Optional[AutoMLSortByType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClusterNodesRequestRequestTypeDef(BaseModel): + ClusterName: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + InstanceGroupNameContains: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[ClusterSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListClustersRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[ClusterSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListCodeRepositoriesInputRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[CodeRepositorySortByType] = None + SortOrder: Optional[CodeRepositorySortOrderType] = None + +class ListCompilationJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[CompilationJobStatusType] = None + SortBy: Optional[ListCompilationJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListContextsRequestRequestTypeDef(BaseModel): + SourceUri: Optional[str] = None + ContextType: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortContextsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDataQualityJobDefinitionsRequestRequestTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class ListDeviceFleetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[ListDeviceFleetsSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListDevicesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + LatestHeartbeatAfter: Optional[TimestampTypeDef] = None + ModelName: Optional[str] = None + DeviceFleetName: Optional[str] = None + +class ListEdgeDeploymentPlansRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + DeviceFleetNameContains: Optional[str] = None + SortBy: Optional[ListEdgeDeploymentPlansSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListEdgePackagingJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + ModelNameContains: Optional[str] = None + StatusEquals: Optional[EdgePackagingJobStatusType] = None + SortBy: Optional[ListEdgePackagingJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListEndpointConfigsInputRequestTypeDef(BaseModel): + SortBy: Optional[EndpointConfigSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class ListEndpointsInputRequestTypeDef(BaseModel): + SortBy: Optional[EndpointSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[EndpointStatusType] = None + +class ListExperimentsRequestRequestTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortExperimentsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFeatureGroupsRequestRequestTypeDef(BaseModel): + NameContains: Optional[str] = None + FeatureGroupStatusEquals: Optional[FeatureGroupStatusType] = None + OfflineStoreStatusEquals: Optional[OfflineStoreStatusValueType] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[FeatureGroupSortOrderType] = None + SortBy: Optional[FeatureGroupSortByType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFlowDefinitionsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListHubContentVersionsRequestRequestTypeDef(BaseModel): + HubName: str + HubContentType: HubContentTypeType + HubContentName: str + MinVersion: Optional[str] = None + MaxSchemaVersion: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[HubContentSortByType] = None + SortOrder: Optional[SortOrderType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHubContentsRequestRequestTypeDef(BaseModel): + HubName: str + HubContentType: HubContentTypeType + NameContains: Optional[str] = None + MaxSchemaVersion: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[HubContentSortByType] = None + SortOrder: Optional[SortOrderType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHubsRequestRequestTypeDef(BaseModel): + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[HubSortByType] = None + SortOrder: Optional[SortOrderType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHumanTaskUisRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListHyperParameterTuningJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortBy: Optional[HyperParameterTuningJobSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + StatusEquals: Optional[HyperParameterTuningJobStatusType] = None + +class ListImageVersionsRequestRequestTypeDef(BaseModel): + ImageName: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[ImageVersionSortByType] = None + SortOrder: Optional[ImageVersionSortOrderType] = None + +class ListImagesRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[ImageSortByType] = None + SortOrder: Optional[ImageSortOrderType] = None + +class ListInferenceComponentsInputRequestTypeDef(BaseModel): + SortBy: Optional[InferenceComponentSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[InferenceComponentStatusType] = None + EndpointNameEquals: Optional[str] = None + VariantNameEquals: Optional[str] = None + +class ListInferenceExperimentsRequestRequestTypeDef(BaseModel): + NameContains: Optional[str] = None + Type: Optional[Literal["ShadowMode"]] = None + StatusEquals: Optional[InferenceExperimentStatusType] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortInferenceExperimentsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInferenceRecommendationsJobsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[RecommendationJobStatusType] = None + SortBy: Optional[ListInferenceRecommendationsJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ModelNameEquals: Optional[str] = None + ModelPackageVersionArnEquals: Optional[str] = None + +class ListLabelingJobsForWorkteamRequestRequestTypeDef(BaseModel): + WorkteamArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + JobReferenceCodeContains: Optional[str] = None + SortBy: Optional[Literal["CreationTime"]] = None + SortOrder: Optional[SortOrderType] = None + +class ListLabelingJobsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + NameContains: Optional[str] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + StatusEquals: Optional[LabelingJobStatusType] = None + +class ListLineageGroupsRequestRequestTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortLineageGroupsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMlflowTrackingServersRequestRequestTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + TrackingServerStatus: Optional[TrackingServerStatusType] = None + MlflowVersion: Optional[str] = None + SortBy: Optional[SortTrackingServerByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListModelBiasJobDefinitionsRequestRequestTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class ListModelCardExportJobsRequestRequestTypeDef(BaseModel): + ModelCardName: str + ModelCardVersion: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + ModelCardExportJobNameContains: Optional[str] = None + StatusEquals: Optional[ModelCardExportJobStatusType] = None + SortBy: Optional[ModelCardExportJobSortByType] = None + SortOrder: Optional[ModelCardExportJobSortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListModelCardVersionsRequestRequestTypeDef(BaseModel): + ModelCardName: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + NextToken: Optional[str] = None + SortBy: Optional[Literal["Version"]] = None + SortOrder: Optional[ModelCardSortOrderType] = None + +class ListModelCardsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + NextToken: Optional[str] = None + SortBy: Optional[ModelCardSortByType] = None + SortOrder: Optional[ModelCardSortOrderType] = None + +class ListModelExplainabilityJobDefinitionsRequestRequestTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class ListModelPackageGroupsInputRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[ModelPackageGroupSortByType] = None + SortOrder: Optional[SortOrderType] = None + CrossAccountFilterOption: Optional[CrossAccountFilterOptionType] = None + +class ListModelPackagesInputRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + ModelPackageGroupName: Optional[str] = None + ModelPackageType: Optional[ModelPackageTypeType] = None + NextToken: Optional[str] = None + SortBy: Optional[ModelPackageSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListModelQualityJobDefinitionsRequestRequestTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class ListModelsInputRequestTypeDef(BaseModel): + SortBy: Optional[ModelSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + +class ListMonitoringAlertHistoryRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: Optional[str] = None + MonitoringAlertName: Optional[str] = None + SortBy: Optional[MonitoringAlertHistorySortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[MonitoringAlertStatusType] = None + +class ListMonitoringExecutionsRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: Optional[str] = None + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringExecutionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ScheduledTimeBefore: Optional[TimestampTypeDef] = None + ScheduledTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[ExecutionStatusType] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringTypeEquals: Optional[MonitoringTypeType] = None + +class ListMonitoringSchedulesRequestRequestTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringScheduleSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[ScheduleStatusType] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringTypeEquals: Optional[MonitoringTypeType] = None + +class ListNotebookInstanceLifecycleConfigsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortBy: Optional[NotebookInstanceLifecycleConfigSortKeyType] = None + SortOrder: Optional[NotebookInstanceLifecycleConfigSortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + +class ListNotebookInstancesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + SortBy: Optional[NotebookInstanceSortKeyType] = None + SortOrder: Optional[NotebookInstanceSortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[NotebookInstanceStatusType] = None + NotebookInstanceLifecycleConfigNameContains: Optional[str] = None + DefaultCodeRepositoryContains: Optional[str] = None + AdditionalCodeRepositoryEquals: Optional[str] = None + +class ListOptimizationJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + OptimizationContains: Optional[str] = None + NameContains: Optional[str] = None + StatusEquals: Optional[OptimizationJobStatusType] = None + SortBy: Optional[ListOptimizationJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + +class ListPipelineExecutionsRequestRequestTypeDef(BaseModel): + PipelineName: str + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortPipelineExecutionsByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListPipelinesRequestRequestTypeDef(BaseModel): + PipelineNamePrefix: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortPipelinesByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProcessingJobsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[ProcessingJobStatusType] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListProjectsInputRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + SortBy: Optional[ProjectSortByType] = None + SortOrder: Optional[ProjectSortOrderType] = None + +class ListResourceCatalogsRequestRequestTypeDef(BaseModel): + NameContains: Optional[str] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[ResourceCatalogSortOrderType] = None + SortBy: Optional[Literal["CreationTime"]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListStudioLifecycleConfigsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + NameContains: Optional[str] = None + AppTypeEquals: Optional[StudioLifecycleConfigAppTypeType] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + ModifiedTimeBefore: Optional[TimestampTypeDef] = None + ModifiedTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[StudioLifecycleConfigSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + +class ListTrainingJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[TrainingJobStatusType] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + WarmPoolStatusEquals: Optional[WarmPoolResourceStatusType] = None + +class ListTransformJobsRequestRequestTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[TransformJobStatusType] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTrialComponentsRequestRequestTypeDef(BaseModel): + ExperimentName: Optional[str] = None + TrialName: Optional[str] = None + SourceArn: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortTrialComponentsByType] = None + SortOrder: Optional[SortOrderType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTrialsRequestRequestTypeDef(BaseModel): + ExperimentName: Optional[str] = None + TrialComponentName: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortTrialsByType] = None + SortOrder: Optional[SortOrderType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class QueryFiltersTypeDef(BaseModel): + Types: Optional[Sequence[str]] = None + LineageTypes: Optional[Sequence[LineageTypeType]] = None + CreatedBefore: Optional[TimestampTypeDef] = None + CreatedAfter: Optional[TimestampTypeDef] = None + ModifiedBefore: Optional[TimestampTypeDef] = None + ModifiedAfter: Optional[TimestampTypeDef] = None + Properties: Optional[Mapping[str, str]] = None + +class CreateTrialComponentRequestRequestTypeDef(BaseModel): + TrialComponentName: str + DisplayName: Optional[str] = None + Status: Optional[TrialComponentStatusTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Parameters: Optional[Mapping[str, TrialComponentParameterValueTypeDef]] = None + InputArtifacts: Optional[Mapping[str, TrialComponentArtifactTypeDef]] = None + OutputArtifacts: Optional[Mapping[str, TrialComponentArtifactTypeDef]] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateTrialComponentRequestRequestTypeDef(BaseModel): + TrialComponentName: str + DisplayName: Optional[str] = None + Status: Optional[TrialComponentStatusTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + Parameters: Optional[Mapping[str, TrialComponentParameterValueTypeDef]] = None + ParametersToRemove: Optional[Sequence[str]] = None + InputArtifacts: Optional[Mapping[str, TrialComponentArtifactTypeDef]] = None + InputArtifactsToRemove: Optional[Sequence[str]] = None + OutputArtifacts: Optional[Mapping[str, TrialComponentArtifactTypeDef]] = None + OutputArtifactsToRemove: Optional[Sequence[str]] = None + +class CreateWorkforceRequestRequestTypeDef(BaseModel): + WorkforceName: str + CognitoConfig: Optional[CognitoConfigTypeDef] = None + OidcConfig: Optional[OidcConfigTypeDef] = None + SourceIpConfig: Optional[SourceIpConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + WorkforceVpcConfig: Optional[WorkforceVpcConfigRequestTypeDef] = None + +class UpdateWorkforceRequestRequestTypeDef(BaseModel): + WorkforceName: str + SourceIpConfig: Optional[SourceIpConfigTypeDef] = None + OidcConfig: Optional[OidcConfigTypeDef] = None + WorkforceVpcConfig: Optional[WorkforceVpcConfigRequestTypeDef] = None + +class CustomFileSystemConfigTypeDef(BaseModel): + EFSFileSystemConfig: Optional[EFSFileSystemConfigTypeDef] = None + +class CustomFileSystemTypeDef(BaseModel): + EFSFileSystem: Optional[EFSFileSystemTypeDef] = None + +class ModelBiasBaselineConfigTypeDef(BaseModel): + BaseliningJobName: Optional[str] = None + ConstraintsResource: Optional[MonitoringConstraintsResourceTypeDef] = None + +class ModelExplainabilityBaselineConfigTypeDef(BaseModel): + BaseliningJobName: Optional[str] = None + ConstraintsResource: Optional[MonitoringConstraintsResourceTypeDef] = None + +class ModelQualityBaselineConfigTypeDef(BaseModel): + BaseliningJobName: Optional[str] = None + ConstraintsResource: Optional[MonitoringConstraintsResourceTypeDef] = None + +class DataQualityBaselineConfigTypeDef(BaseModel): + BaseliningJobName: Optional[str] = None + ConstraintsResource: Optional[MonitoringConstraintsResourceTypeDef] = None + StatisticsResource: Optional[MonitoringStatisticsResourceTypeDef] = None + +class MonitoringBaselineConfigTypeDef(BaseModel): + BaseliningJobName: Optional[str] = None + ConstraintsResource: Optional[MonitoringConstraintsResourceTypeDef] = None + StatisticsResource: Optional[MonitoringStatisticsResourceTypeDef] = None + +class DataSourceExtraOutputTypeDef(BaseModel): + S3DataSource: Optional[S3DataSourceExtraOutputTypeDef] = None + FileSystemDataSource: Optional[FileSystemDataSourceTypeDef] = None + +class DataSourceOutputTypeDef(BaseModel): + S3DataSource: Optional[S3DataSourceOutputTypeDef] = None + FileSystemDataSource: Optional[FileSystemDataSourceTypeDef] = None + +class DataSourceTypeDef(BaseModel): + S3DataSource: Optional[S3DataSourceTypeDef] = None + FileSystemDataSource: Optional[FileSystemDataSourceTypeDef] = None + +class DatasetDefinitionTypeDef(BaseModel): + AthenaDatasetDefinition: Optional[AthenaDatasetDefinitionTypeDef] = None + RedshiftDatasetDefinition: Optional[RedshiftDatasetDefinitionTypeDef] = None + LocalPath: Optional[str] = None + DataDistributionType: Optional[DataDistributionTypeType] = None + InputMode: Optional[InputModeType] = None + +class DefaultSpaceStorageSettingsTypeDef(BaseModel): + DefaultEbsStorageSettings: Optional[DefaultEbsStorageSettingsTypeDef] = None + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainId: str + RetentionPolicy: Optional[RetentionPolicyTypeDef] = None + +class InferenceComponentContainerSpecificationSummaryTypeDef(BaseModel): + DeployedImage: Optional[DeployedImageTypeDef] = None + ArtifactUrl: Optional[str] = None + Environment: Optional[Dict[str, str]] = None + +class DeploymentRecommendationTypeDef(BaseModel): + RecommendationStatus: RecommendationStatusType + RealTimeInferenceRecommendations: Optional[ List[RealTimeInferenceRecommendationTypeDef] ] = None + +class DeploymentStageStatusSummaryTypeDef(BaseModel): + StageName: str + DeviceSelectionConfig: DeviceSelectionConfigOutputTypeDef + DeploymentConfig: EdgeDeploymentConfigTypeDef + DeploymentStatus: EdgeDeploymentStatusTypeDef + +class DeploymentStageTypeDef(BaseModel): + StageName: str + DeviceSelectionConfig: DeviceSelectionConfigTypeDef + DeploymentConfig: Optional[EdgeDeploymentConfigTypeDef] = None + +class DescribeDeviceResponseTypeDef(BaseModel): + DeviceArn: str + DeviceName: str + Description: str + DeviceFleetName: str + IotThingName: str + RegistrationTime: datetime + LatestHeartbeat: datetime + Models: List[EdgeModelTypeDef] + MaxModels: int + AgentVersion: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeEdgePackagingJobResponseTypeDef(BaseModel): + EdgePackagingJobArn: str + EdgePackagingJobName: str + CompilationJobName: str + ModelName: str + ModelVersion: str + RoleArn: str + OutputConfig: EdgeOutputConfigTypeDef + ResourceKey: str + EdgePackagingJobStatus: EdgePackagingJobStatusType + EdgePackagingJobStatusMessage: str + CreationTime: datetime + LastModifiedTime: datetime + ModelArtifact: str + ModelSignature: str + PresetDeploymentOutput: EdgePresetDeploymentOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointInputEndpointDeletedWaitTypeDef(BaseModel): + EndpointName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeEndpointInputEndpointInServiceWaitTypeDef(BaseModel): + EndpointName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImageRequestImageCreatedWaitTypeDef(BaseModel): + ImageName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImageRequestImageDeletedWaitTypeDef(BaseModel): + ImageName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImageRequestImageUpdatedWaitTypeDef(BaseModel): + ImageName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImageVersionRequestImageVersionCreatedWaitTypeDef(BaseModel): + ImageName: str + Version: Optional[int] = None + Alias: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeImageVersionRequestImageVersionDeletedWaitTypeDef(BaseModel): + ImageName: str + Version: Optional[int] = None + Alias: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNotebookInstanceInputNotebookInstanceDeletedWaitTypeDef(BaseModel): + NotebookInstanceName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNotebookInstanceInputNotebookInstanceInServiceWaitTypeDef(BaseModel): + NotebookInstanceName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeNotebookInstanceInputNotebookInstanceStoppedWaitTypeDef(BaseModel): + NotebookInstanceName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeProcessingJobRequestProcessingJobCompletedOrStoppedWaitTypeDef(BaseModel): + ProcessingJobName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTrainingJobRequestTrainingJobCompletedOrStoppedWaitTypeDef(BaseModel): + TrainingJobName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeTransformJobRequestTransformJobCompletedOrStoppedWaitTypeDef(BaseModel): + TransformJobName: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ExperimentSummaryTypeDef(BaseModel): + ExperimentArn: Optional[str] = None + ExperimentName: Optional[str] = None + DisplayName: Optional[str] = None + ExperimentSource: Optional[ExperimentSourceTypeDef] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class FeatureGroupSummaryTypeDef(BaseModel): + FeatureGroupName: str + FeatureGroupArn: str + CreationTime: datetime + FeatureGroupStatus: Optional[FeatureGroupStatusType] = None + OfflineStoreStatus: Optional[OfflineStoreStatusTypeDef] = None + +class DescribeFeatureMetadataResponseTypeDef(BaseModel): + FeatureGroupArn: str + FeatureGroupName: str + FeatureName: str + FeatureType: FeatureTypeType + CreationTime: datetime + LastModifiedTime: datetime + Description: str + Parameters: List[FeatureParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FeatureMetadataTypeDef(BaseModel): + FeatureGroupArn: Optional[str] = None + FeatureGroupName: Optional[str] = None + FeatureName: Optional[str] = None + FeatureType: Optional[FeatureTypeType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + Description: Optional[str] = None + Parameters: Optional[List[FeatureParameterTypeDef]] = None + +class UpdateFeatureMetadataRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + FeatureName: str + Description: Optional[str] = None + ParameterAdditions: Optional[Sequence[FeatureParameterTypeDef]] = None + ParameterRemovals: Optional[Sequence[str]] = None + +class DescribeHubContentResponseTypeDef(BaseModel): + HubContentName: str + HubContentArn: str + HubContentVersion: str + HubContentType: HubContentTypeType + DocumentSchemaVersion: str + HubName: str + HubArn: str + HubContentDisplayName: str + HubContentDescription: str + HubContentMarkdown: str + HubContentDocument: str + SageMakerPublicHubContentArn: str + ReferenceMinVersion: str + SupportStatus: HubContentSupportStatusType + HubContentSearchKeywords: List[str] + HubContentDependencies: List[HubContentDependencyTypeDef] + HubContentStatus: HubContentStatusType + FailureReason: str + CreationTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHumanTaskUiResponseTypeDef(BaseModel): + HumanTaskUiArn: str + HumanTaskUiName: str + HumanTaskUiStatus: HumanTaskUiStatusType + CreationTime: datetime + UiTemplate: UiTemplateInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InferenceExperimentSummaryTypeDef(BaseModel): + Name: str + Type: Literal["ShadowMode"] + Status: InferenceExperimentStatusType + CreationTime: datetime + LastModifiedTime: datetime + Schedule: Optional[InferenceExperimentScheduleOutputTypeDef] = None + StatusReason: Optional[str] = None + Description: Optional[str] = None + CompletionTime: Optional[datetime] = None + RoleArn: Optional[str] = None + +class DescribeModelCardExportJobResponseTypeDef(BaseModel): + ModelCardExportJobName: str + ModelCardExportJobArn: str + Status: ModelCardExportJobStatusType + ModelCardName: str + ModelCardVersion: int + OutputConfig: ModelCardExportOutputConfigTypeDef + CreatedAt: datetime + LastModifiedAt: datetime + FailureReason: str + ExportArtifacts: ModelCardExportArtifactsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMonitoringExecutionsResponseTypeDef(BaseModel): + MonitoringExecutionSummaries: List[MonitoringExecutionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeSubscribedWorkteamResponseTypeDef(BaseModel): + SubscribedWorkteam: SubscribedWorkteamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscribedWorkteamsResponseTypeDef(BaseModel): + SubscribedWorkteams: List[SubscribedWorkteamTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TrainingJobSummaryTypeDef(BaseModel): + TrainingJobName: str + TrainingJobArn: str + CreationTime: datetime + TrainingJobStatus: TrainingJobStatusType + TrainingEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + WarmPoolStatus: Optional[WarmPoolStatusTypeDef] = None + +class TrialSummaryTypeDef(BaseModel): + TrialArn: Optional[str] = None + TrialName: Optional[str] = None + DisplayName: Optional[str] = None + TrialSource: Optional[TrialSourceTypeDef] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class DesiredWeightAndCapacityTypeDef(BaseModel): + VariantName: str + DesiredWeight: Optional[float] = None + DesiredInstanceCount: Optional[int] = None + ServerlessUpdateConfig: Optional[ProductionVariantServerlessUpdateConfigTypeDef] = None + +class ListStageDevicesResponseTypeDef(BaseModel): + DeviceDeploymentSummaries: List[DeviceDeploymentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDeviceFleetsResponseTypeDef(BaseModel): + DeviceFleetSummaries: List[DeviceFleetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeviceSummaryTypeDef(BaseModel): + DeviceName: str + DeviceArn: str + Description: Optional[str] = None + DeviceFleetName: Optional[str] = None + IotThingName: Optional[str] = None + RegistrationTime: Optional[datetime] = None + LatestHeartbeat: Optional[datetime] = None + Models: Optional[List[EdgeModelSummaryTypeDef]] = None + AgentVersion: Optional[str] = None + +class RegisterDevicesRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + Devices: Sequence[DeviceTypeDef] + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateDevicesRequestRequestTypeDef(BaseModel): + DeviceFleetName: str + Devices: Sequence[DeviceTypeDef] + +class ListDomainsResponseTypeDef(BaseModel): + Domains: List[DomainDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DriftCheckBiasTypeDef(BaseModel): + ConfigFile: Optional[FileSourceTypeDef] = None + PreTrainingConstraints: Optional[MetricsSourceTypeDef] = None + PostTrainingConstraints: Optional[MetricsSourceTypeDef] = None + +class DriftCheckExplainabilityTypeDef(BaseModel): + Constraints: Optional[MetricsSourceTypeDef] = None + ConfigFile: Optional[FileSourceTypeDef] = None + +class SpaceStorageSettingsTypeDef(BaseModel): + EbsStorageSettings: Optional[EbsStorageSettingsTypeDef] = None + +class ListEdgeDeploymentPlansResponseTypeDef(BaseModel): + EdgeDeploymentPlanSummaries: List[EdgeDeploymentPlanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDeviceFleetReportResponseTypeDef(BaseModel): + DeviceFleetArn: str + DeviceFleetName: str + OutputConfig: EdgeOutputConfigTypeDef + Description: str + ReportGenerated: datetime + DeviceStats: DeviceStatsTypeDef + AgentVersions: List[AgentVersionTypeDef] + ModelStats: List[EdgeModelStatTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListEdgePackagingJobsResponseTypeDef(BaseModel): + EdgePackagingJobSummaries: List[EdgePackagingJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEndpointConfigsOutputTypeDef(BaseModel): + EndpointConfigs: List[EndpointConfigSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EndpointOutputConfigurationTypeDef(BaseModel): + EndpointName: str + VariantName: str + InstanceType: Optional[ProductionVariantInstanceTypeType] = None + InitialInstanceCount: Optional[int] = None + ServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + +class EndpointPerformanceTypeDef(BaseModel): + Metrics: InferenceMetricsTypeDef + EndpointInfo: EndpointInfoTypeDef + +class ListEndpointsOutputTypeDef(BaseModel): + Endpoints: List[EndpointSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ModelConfigurationTypeDef(BaseModel): + InferenceSpecificationName: Optional[str] = None + EnvironmentParameters: Optional[List[EnvironmentParameterTypeDef]] = None + CompilationJobName: Optional[str] = None + +class NestedFiltersTypeDef(BaseModel): + NestedPropertyName: str + Filters: Sequence[FilterTypeDef] + +class HyperParameterTrainingJobSummaryTypeDef(BaseModel): + TrainingJobName: str + TrainingJobArn: str + CreationTime: datetime + TrainingJobStatus: TrainingJobStatusType + TunedHyperParameters: Dict[str, str] + TrainingJobDefinitionName: Optional[str] = None + TuningJobName: Optional[str] = None + TrainingStartTime: Optional[datetime] = None + TrainingEndTime: Optional[datetime] = None + FailureReason: Optional[str] = None + FinalHyperParameterTuningJobObjectiveMetric: Optional[ FinalHyperParameterTuningJobObjectiveMetricTypeDef ] = None + ObjectiveStatus: Optional[ObjectiveStatusType] = None + +class ListFlowDefinitionsResponseTypeDef(BaseModel): + FlowDefinitionSummaries: List[FlowDefinitionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetScalingConfigurationRecommendationRequestRequestTypeDef(BaseModel): + InferenceRecommendationsJobName: str + RecommendationId: Optional[str] = None + EndpointName: Optional[str] = None + TargetCpuUtilizationPerCore: Optional[int] = None + ScalingPolicyObjective: Optional[ScalingPolicyObjectiveTypeDef] = None + +class GetSearchSuggestionsResponseTypeDef(BaseModel): + PropertyNameSuggestions: List[PropertyNameSuggestionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCodeRepositoryInputRequestTypeDef(BaseModel): + CodeRepositoryName: str + GitConfig: Optional[GitConfigForUpdateTypeDef] = None + +class ListHubContentVersionsResponseTypeDef(BaseModel): + HubContentSummaries: List[HubContentInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListHubContentsResponseTypeDef(BaseModel): + HubContentSummaries: List[HubContentInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListHubsResponseTypeDef(BaseModel): + HubSummaries: List[HubInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class HumanLoopActivationConfigTypeDef(BaseModel): + HumanLoopActivationConditionsConfig: HumanLoopActivationConditionsConfigTypeDef + +class ListHumanTaskUisResponseTypeDef(BaseModel): + HumanTaskUiSummaries: List[HumanTaskUiSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class NetworkConfigExtraOutputTypeDef(BaseModel): + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableNetworkIsolation: Optional[bool] = None + VpcConfig: Optional[VpcConfigExtraOutputTypeDef] = None + +class HyperParameterTuningResourceConfigExtraOutputTypeDef(BaseModel): + InstanceType: Optional[TrainingInstanceTypeType] = None + InstanceCount: Optional[int] = None + VolumeSizeInGB: Optional[int] = None + VolumeKmsKeyId: Optional[str] = None + AllocationStrategy: Optional[Literal["Prioritized"]] = None + InstanceConfigs: Optional[List[HyperParameterTuningInstanceConfigTypeDef]] = None + +class HyperParameterTuningResourceConfigOutputTypeDef(BaseModel): + InstanceType: Optional[TrainingInstanceTypeType] = None + InstanceCount: Optional[int] = None + VolumeSizeInGB: Optional[int] = None + VolumeKmsKeyId: Optional[str] = None + AllocationStrategy: Optional[Literal["Prioritized"]] = None + InstanceConfigs: Optional[List[HyperParameterTuningInstanceConfigTypeDef]] = None + +class HyperParameterTuningResourceConfigTypeDef(BaseModel): + InstanceType: Optional[TrainingInstanceTypeType] = None + InstanceCount: Optional[int] = None + VolumeSizeInGB: Optional[int] = None + VolumeKmsKeyId: Optional[str] = None + AllocationStrategy: Optional[Literal["Prioritized"]] = None + InstanceConfigs: Optional[Sequence[HyperParameterTuningInstanceConfigTypeDef]] = None + +class HyperParameterTuningJobSummaryTypeDef(BaseModel): + HyperParameterTuningJobName: str + HyperParameterTuningJobArn: str + HyperParameterTuningJobStatus: HyperParameterTuningJobStatusType + Strategy: HyperParameterTuningJobStrategyTypeType + CreationTime: datetime + TrainingJobStatusCounters: TrainingJobStatusCountersTypeDef + ObjectiveStatusCounters: ObjectiveStatusCountersTypeDef + HyperParameterTuningEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + ResourceLimits: Optional[ResourceLimitsTypeDef] = None + +class HyperParameterTuningJobStrategyConfigTypeDef(BaseModel): + HyperbandStrategyConfig: Optional[HyperbandStrategyConfigTypeDef] = None + +class HyperParameterTuningJobWarmStartConfigExtraOutputTypeDef(BaseModel): + ParentHyperParameterTuningJobs: List[ParentHyperParameterTuningJobTypeDef] + WarmStartType: HyperParameterTuningJobWarmStartTypeType + +class HyperParameterTuningJobWarmStartConfigOutputTypeDef(BaseModel): + ParentHyperParameterTuningJobs: List[ParentHyperParameterTuningJobTypeDef] + WarmStartType: HyperParameterTuningJobWarmStartTypeType + +class HyperParameterTuningJobWarmStartConfigTypeDef(BaseModel): + ParentHyperParameterTuningJobs: Sequence[ParentHyperParameterTuningJobTypeDef] + WarmStartType: HyperParameterTuningJobWarmStartTypeType + +class UserContextTypeDef(BaseModel): + UserProfileArn: Optional[str] = None + UserProfileName: Optional[str] = None + DomainId: Optional[str] = None + IamIdentity: Optional[IamIdentityTypeDef] = None + +class S3PresignTypeDef(BaseModel): + IamPolicyConstraints: Optional[IamPolicyConstraintsTypeDef] = None + +class ImageConfigTypeDef(BaseModel): + RepositoryAccessMode: RepositoryAccessModeType + RepositoryAuthConfig: Optional[RepositoryAuthConfigTypeDef] = None + +class ListImagesResponseTypeDef(BaseModel): + Images: List[ImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListImageVersionsResponseTypeDef(BaseModel): + ImageVersions: List[ImageVersionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InferenceComponentSpecificationTypeDef(BaseModel): + ComputeResourceRequirements: InferenceComponentComputeResourceRequirementsTypeDef + ModelName: Optional[str] = None + Container: Optional[InferenceComponentContainerSpecificationTypeDef] = None + StartupParameters: Optional[InferenceComponentStartupParametersTypeDef] = None + +class ListInferenceComponentsOutputTypeDef(BaseModel): + InferenceComponents: List[InferenceComponentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListInferenceRecommendationsJobsResponseTypeDef(BaseModel): + InferenceRecommendationsJobs: List[InferenceRecommendationsJobTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ResourceConfigExtraOutputTypeDef(BaseModel): + VolumeSizeInGB: int + InstanceType: Optional[TrainingInstanceTypeType] = None + InstanceCount: Optional[int] = None + VolumeKmsKeyId: Optional[str] = None + KeepAlivePeriodInSeconds: Optional[int] = None + InstanceGroups: Optional[List[InstanceGroupTypeDef]] = None + +class ResourceConfigOutputTypeDef(BaseModel): + VolumeSizeInGB: int + InstanceType: Optional[TrainingInstanceTypeType] = None + InstanceCount: Optional[int] = None + VolumeKmsKeyId: Optional[str] = None + KeepAlivePeriodInSeconds: Optional[int] = None + InstanceGroups: Optional[List[InstanceGroupTypeDef]] = None + +class ResourceConfigTypeDef(BaseModel): + VolumeSizeInGB: int + InstanceType: Optional[TrainingInstanceTypeType] = None + InstanceCount: Optional[int] = None + VolumeKmsKeyId: Optional[str] = None + KeepAlivePeriodInSeconds: Optional[int] = None + InstanceGroups: Optional[Sequence[InstanceGroupTypeDef]] = None + +class ParameterRangeOutputTypeDef(BaseModel): + IntegerParameterRangeSpecification: Optional[ IntegerParameterRangeSpecificationTypeDef ] = None + ContinuousParameterRangeSpecification: Optional[ ContinuousParameterRangeSpecificationTypeDef ] = None + CategoricalParameterRangeSpecification: Optional[ CategoricalParameterRangeSpecificationOutputTypeDef ] = None + +class ParameterRangeTypeDef(BaseModel): + IntegerParameterRangeSpecification: Optional[ IntegerParameterRangeSpecificationTypeDef ] = None + ContinuousParameterRangeSpecification: Optional[ ContinuousParameterRangeSpecificationTypeDef ] = None + CategoricalParameterRangeSpecification: Optional[ CategoricalParameterRangeSpecificationTypeDef ] = None + +class ParameterRangesExtraOutputTypeDef(BaseModel): + IntegerParameterRanges: Optional[List[IntegerParameterRangeTypeDef]] = None + ContinuousParameterRanges: Optional[List[ContinuousParameterRangeTypeDef]] = None + CategoricalParameterRanges: Optional[ List[CategoricalParameterRangeExtraOutputTypeDef] ] = None + AutoParameters: Optional[List[AutoParameterTypeDef]] = None + +class ParameterRangesOutputTypeDef(BaseModel): + IntegerParameterRanges: Optional[List[IntegerParameterRangeTypeDef]] = None + ContinuousParameterRanges: Optional[List[ContinuousParameterRangeTypeDef]] = None + CategoricalParameterRanges: Optional[List[CategoricalParameterRangeOutputTypeDef]] = None + AutoParameters: Optional[List[AutoParameterTypeDef]] = None + +class ParameterRangesTypeDef(BaseModel): + IntegerParameterRanges: Optional[Sequence[IntegerParameterRangeTypeDef]] = None + ContinuousParameterRanges: Optional[Sequence[ContinuousParameterRangeTypeDef]] = None + CategoricalParameterRanges: Optional[Sequence[CategoricalParameterRangeTypeDef]] = None + AutoParameters: Optional[Sequence[AutoParameterTypeDef]] = None + +class KernelGatewayImageConfigExtraOutputTypeDef(BaseModel): + KernelSpecs: List[KernelSpecTypeDef] + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + +class KernelGatewayImageConfigOutputTypeDef(BaseModel): + KernelSpecs: List[KernelSpecTypeDef] + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + +class KernelGatewayImageConfigTypeDef(BaseModel): + KernelSpecs: Sequence[KernelSpecTypeDef] + FileSystemConfig: Optional[FileSystemConfigTypeDef] = None + +class LabelingJobForWorkteamSummaryTypeDef(BaseModel): + JobReferenceCode: str + WorkRequesterAccountId: str + CreationTime: datetime + LabelingJobName: Optional[str] = None + LabelCounters: Optional[LabelCountersForWorkteamTypeDef] = None + NumberOfHumanWorkersPerDataObject: Optional[int] = None + +class LabelingJobDataSourceTypeDef(BaseModel): + S3DataSource: Optional[LabelingJobS3DataSourceTypeDef] = None + SnsDataSource: Optional[LabelingJobSnsDataSourceTypeDef] = None + +class ListLineageGroupsResponseTypeDef(BaseModel): + LineageGroupSummaries: List[LineageGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListActionsRequestListActionsPaginateTypeDef(BaseModel): + SourceUri: Optional[str] = None + ActionType: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortActionsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAlgorithmsInputListAlgorithmsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[AlgorithmSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAliasesRequestListAliasesPaginateTypeDef(BaseModel): + ImageName: str + Alias: Optional[str] = None + Version: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppImageConfigsRequestListAppImageConfigsPaginateTypeDef(BaseModel): + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + ModifiedTimeBefore: Optional[TimestampTypeDef] = None + ModifiedTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[AppImageConfigSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppsRequestListAppsPaginateTypeDef(BaseModel): + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[Literal["CreationTime"]] = None + DomainIdEquals: Optional[str] = None + UserProfileNameEquals: Optional[str] = None + SpaceNameEquals: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListArtifactsRequestListArtifactsPaginateTypeDef(BaseModel): + SourceUri: Optional[str] = None + ArtifactType: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[Literal["CreationTime"]] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociationsRequestListAssociationsPaginateTypeDef(BaseModel): + SourceArn: Optional[str] = None + DestinationArn: Optional[str] = None + SourceType: Optional[str] = None + DestinationType: Optional[str] = None + AssociationType: Optional[AssociationEdgeTypeType] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortAssociationsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAutoMLJobsRequestListAutoMLJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[AutoMLJobStatusType] = None + SortOrder: Optional[AutoMLSortOrderType] = None + SortBy: Optional[AutoMLSortByType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCandidatesForAutoMLJobRequestListCandidatesForAutoMLJobPaginateTypeDef(BaseModel): + AutoMLJobName: str + StatusEquals: Optional[CandidateStatusType] = None + CandidateNameEquals: Optional[str] = None + SortOrder: Optional[AutoMLSortOrderType] = None + SortBy: Optional[CandidateSortByType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClusterNodesRequestListClusterNodesPaginateTypeDef(BaseModel): + ClusterName: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + InstanceGroupNameContains: Optional[str] = None + SortBy: Optional[ClusterSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersRequestListClustersPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[ClusterSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCodeRepositoriesInputListCodeRepositoriesPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[CodeRepositorySortByType] = None + SortOrder: Optional[CodeRepositorySortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCompilationJobsRequestListCompilationJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[CompilationJobStatusType] = None + SortBy: Optional[ListCompilationJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContextsRequestListContextsPaginateTypeDef(BaseModel): + SourceUri: Optional[str] = None + ContextType: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortContextsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataQualityJobDefinitionsRequestListDataQualityJobDefinitionsPaginateTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceFleetsRequestListDeviceFleetsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[ListDeviceFleetsSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevicesRequestListDevicesPaginateTypeDef(BaseModel): + LatestHeartbeatAfter: Optional[TimestampTypeDef] = None + ModelName: Optional[str] = None + DeviceFleetName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsRequestListDomainsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEdgeDeploymentPlansRequestListEdgeDeploymentPlansPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + DeviceFleetNameContains: Optional[str] = None + SortBy: Optional[ListEdgeDeploymentPlansSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEdgePackagingJobsRequestListEdgePackagingJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + ModelNameContains: Optional[str] = None + StatusEquals: Optional[EdgePackagingJobStatusType] = None + SortBy: Optional[ListEdgePackagingJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEndpointConfigsInputListEndpointConfigsPaginateTypeDef(BaseModel): + SortBy: Optional[EndpointConfigSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEndpointsInputListEndpointsPaginateTypeDef(BaseModel): + SortBy: Optional[EndpointSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[EndpointStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExperimentsRequestListExperimentsPaginateTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortExperimentsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFeatureGroupsRequestListFeatureGroupsPaginateTypeDef(BaseModel): + NameContains: Optional[str] = None + FeatureGroupStatusEquals: Optional[FeatureGroupStatusType] = None + OfflineStoreStatusEquals: Optional[OfflineStoreStatusValueType] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[FeatureGroupSortOrderType] = None + SortBy: Optional[FeatureGroupSortByType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFlowDefinitionsRequestListFlowDefinitionsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHumanTaskUisRequestListHumanTaskUisPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListHyperParameterTuningJobsRequestListHyperParameterTuningJobsPaginateTypeDef(BaseModel): + SortBy: Optional[HyperParameterTuningJobSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + StatusEquals: Optional[HyperParameterTuningJobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImageVersionsRequestListImageVersionsPaginateTypeDef(BaseModel): + ImageName: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[ImageVersionSortByType] = None + SortOrder: Optional[ImageVersionSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImagesRequestListImagesPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[ImageSortByType] = None + SortOrder: Optional[ImageSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInferenceComponentsInputListInferenceComponentsPaginateTypeDef(BaseModel): + SortBy: Optional[InferenceComponentSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[InferenceComponentStatusType] = None + EndpointNameEquals: Optional[str] = None + VariantNameEquals: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInferenceExperimentsRequestListInferenceExperimentsPaginateTypeDef(BaseModel): + NameContains: Optional[str] = None + Type: Optional[Literal["ShadowMode"]] = None + StatusEquals: Optional[InferenceExperimentStatusType] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortInferenceExperimentsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInferenceRecommendationsJobStepsRequestListInferenceRecommendationsJobStepsPaginateTypeDef(BaseModel): + JobName: str + Status: Optional[RecommendationJobStatusType] = None + StepType: Optional[Literal["BENCHMARK"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInferenceRecommendationsJobsRequestListInferenceRecommendationsJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[RecommendationJobStatusType] = None + SortBy: Optional[ListInferenceRecommendationsJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + ModelNameEquals: Optional[str] = None + ModelPackageVersionArnEquals: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLabelingJobsForWorkteamRequestListLabelingJobsForWorkteamPaginateTypeDef(BaseModel): + WorkteamArn: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + JobReferenceCodeContains: Optional[str] = None + SortBy: Optional[Literal["CreationTime"]] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLabelingJobsRequestListLabelingJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + StatusEquals: Optional[LabelingJobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLineageGroupsRequestListLineageGroupsPaginateTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortLineageGroupsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMlflowTrackingServersRequestListMlflowTrackingServersPaginateTypeDef(BaseModel): + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + TrackingServerStatus: Optional[TrackingServerStatusType] = None + MlflowVersion: Optional[str] = None + SortBy: Optional[SortTrackingServerByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelBiasJobDefinitionsRequestListModelBiasJobDefinitionsPaginateTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelCardExportJobsRequestListModelCardExportJobsPaginateTypeDef(BaseModel): + ModelCardName: str + ModelCardVersion: Optional[int] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + ModelCardExportJobNameContains: Optional[str] = None + StatusEquals: Optional[ModelCardExportJobStatusType] = None + SortBy: Optional[ModelCardExportJobSortByType] = None + SortOrder: Optional[ModelCardExportJobSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelCardVersionsRequestListModelCardVersionsPaginateTypeDef(BaseModel): + ModelCardName: str + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + SortBy: Optional[Literal["Version"]] = None + SortOrder: Optional[ModelCardSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelCardsRequestListModelCardsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + SortBy: Optional[ModelCardSortByType] = None + SortOrder: Optional[ModelCardSortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelExplainabilityJobDefinitionsRequestListModelExplainabilityJobDefinitionsPaginateTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelPackageGroupsInputListModelPackageGroupsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + SortBy: Optional[ModelPackageGroupSortByType] = None + SortOrder: Optional[SortOrderType] = None + CrossAccountFilterOption: Optional[CrossAccountFilterOptionType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelPackagesInputListModelPackagesPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + ModelPackageGroupName: Optional[str] = None + ModelPackageType: Optional[ModelPackageTypeType] = None + SortBy: Optional[ModelPackageSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelQualityJobDefinitionsRequestListModelQualityJobDefinitionsPaginateTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringJobDefinitionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelsInputListModelsPaginateTypeDef(BaseModel): + SortBy: Optional[ModelSortKeyType] = None + SortOrder: Optional[OrderKeyType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitoringAlertHistoryRequestListMonitoringAlertHistoryPaginateTypeDef(BaseModel): + MonitoringScheduleName: Optional[str] = None + MonitoringAlertName: Optional[str] = None + SortBy: Optional[MonitoringAlertHistorySortKeyType] = None + SortOrder: Optional[SortOrderType] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[MonitoringAlertStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitoringAlertsRequestListMonitoringAlertsPaginateTypeDef(BaseModel): + MonitoringScheduleName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitoringExecutionsRequestListMonitoringExecutionsPaginateTypeDef(BaseModel): + MonitoringScheduleName: Optional[str] = None + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringExecutionSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + ScheduledTimeBefore: Optional[TimestampTypeDef] = None + ScheduledTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[ExecutionStatusType] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringTypeEquals: Optional[MonitoringTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMonitoringSchedulesRequestListMonitoringSchedulesPaginateTypeDef(BaseModel): + EndpointName: Optional[str] = None + SortBy: Optional[MonitoringScheduleSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[ScheduleStatusType] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringTypeEquals: Optional[MonitoringTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotebookInstanceLifecycleConfigsInputListNotebookInstanceLifecycleConfigsPaginateTypeDef(BaseModel): + SortBy: Optional[NotebookInstanceLifecycleConfigSortKeyType] = None + SortOrder: Optional[NotebookInstanceLifecycleConfigSortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNotebookInstancesInputListNotebookInstancesPaginateTypeDef(BaseModel): + SortBy: Optional[NotebookInstanceSortKeyType] = None + SortOrder: Optional[NotebookInstanceSortOrderType] = None + NameContains: Optional[str] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + StatusEquals: Optional[NotebookInstanceStatusType] = None + NotebookInstanceLifecycleConfigNameContains: Optional[str] = None + DefaultCodeRepositoryContains: Optional[str] = None + AdditionalCodeRepositoryEquals: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOptimizationJobsRequestListOptimizationJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + OptimizationContains: Optional[str] = None + NameContains: Optional[str] = None + StatusEquals: Optional[OptimizationJobStatusType] = None + SortBy: Optional[ListOptimizationJobsSortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelineExecutionStepsRequestListPipelineExecutionStepsPaginateTypeDef(BaseModel): + PipelineExecutionArn: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelineExecutionsRequestListPipelineExecutionsPaginateTypeDef(BaseModel): + PipelineName: str + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortPipelineExecutionsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelineParametersForExecutionRequestListPipelineParametersForExecutionPaginateTypeDef(BaseModel): + PipelineExecutionArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPipelinesRequestListPipelinesPaginateTypeDef(BaseModel): + PipelineNamePrefix: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortPipelinesByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProcessingJobsRequestListProcessingJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[ProcessingJobStatusType] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceCatalogsRequestListResourceCatalogsPaginateTypeDef(BaseModel): + NameContains: Optional[str] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + SortOrder: Optional[ResourceCatalogSortOrderType] = None + SortBy: Optional[Literal["CreationTime"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpacesRequestListSpacesPaginateTypeDef(BaseModel): + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[SpaceSortKeyType] = None + DomainIdEquals: Optional[str] = None + SpaceNameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStageDevicesRequestListStageDevicesPaginateTypeDef(BaseModel): + EdgeDeploymentPlanName: str + StageName: str + ExcludeDevicesDeployedInOtherStage: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStudioLifecycleConfigsRequestListStudioLifecycleConfigsPaginateTypeDef(BaseModel): + NameContains: Optional[str] = None + AppTypeEquals: Optional[StudioLifecycleConfigAppTypeType] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + CreationTimeAfter: Optional[TimestampTypeDef] = None + ModifiedTimeBefore: Optional[TimestampTypeDef] = None + ModifiedTimeAfter: Optional[TimestampTypeDef] = None + SortBy: Optional[StudioLifecycleConfigSortKeyType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscribedWorkteamsRequestListSubscribedWorkteamsPaginateTypeDef(BaseModel): + NameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsInputListTagsPaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrainingJobsForHyperParameterTuningJobRequestListTrainingJobsForHyperParameterTuningJobPaginateTypeDef(BaseModel): + HyperParameterTuningJobName: str + StatusEquals: Optional[TrainingJobStatusType] = None + SortBy: Optional[TrainingJobSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrainingJobsRequestListTrainingJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[TrainingJobStatusType] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + WarmPoolStatusEquals: Optional[WarmPoolResourceStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTransformJobsRequestListTransformJobsPaginateTypeDef(BaseModel): + CreationTimeAfter: Optional[TimestampTypeDef] = None + CreationTimeBefore: Optional[TimestampTypeDef] = None + LastModifiedTimeAfter: Optional[TimestampTypeDef] = None + LastModifiedTimeBefore: Optional[TimestampTypeDef] = None + NameContains: Optional[str] = None + StatusEquals: Optional[TransformJobStatusType] = None + SortBy: Optional[SortByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrialComponentsRequestListTrialComponentsPaginateTypeDef(BaseModel): + ExperimentName: Optional[str] = None + TrialName: Optional[str] = None + SourceArn: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortTrialComponentsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrialsRequestListTrialsPaginateTypeDef(BaseModel): + ExperimentName: Optional[str] = None + TrialComponentName: Optional[str] = None + CreatedAfter: Optional[TimestampTypeDef] = None + CreatedBefore: Optional[TimestampTypeDef] = None + SortBy: Optional[SortTrialsByType] = None + SortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUserProfilesRequestListUserProfilesPaginateTypeDef(BaseModel): + SortOrder: Optional[SortOrderType] = None + SortBy: Optional[UserProfileSortKeyType] = None + DomainIdEquals: Optional[str] = None + UserProfileNameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkforcesRequestListWorkforcesPaginateTypeDef(BaseModel): + SortBy: Optional[ListWorkforcesSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkteamsRequestListWorkteamsPaginateTypeDef(BaseModel): + SortBy: Optional[ListWorkteamsSortByOptionsType] = None + SortOrder: Optional[SortOrderType] = None + NameContains: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataQualityJobDefinitionsResponseTypeDef(BaseModel): + JobDefinitionSummaries: List[MonitoringJobDefinitionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelBiasJobDefinitionsResponseTypeDef(BaseModel): + JobDefinitionSummaries: List[MonitoringJobDefinitionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelExplainabilityJobDefinitionsResponseTypeDef(BaseModel): + JobDefinitionSummaries: List[MonitoringJobDefinitionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelQualityJobDefinitionsResponseTypeDef(BaseModel): + JobDefinitionSummaries: List[MonitoringJobDefinitionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMlflowTrackingServersResponseTypeDef(BaseModel): + TrackingServerSummaries: List[TrackingServerSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelCardExportJobsResponseTypeDef(BaseModel): + ModelCardExportJobSummaries: List[ModelCardExportJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelCardVersionsResponseTypeDef(BaseModel): + ModelCardVersionSummaryList: List[ModelCardVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelCardsResponseTypeDef(BaseModel): + ModelCardSummaries: List[ModelCardSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelMetadataResponseTypeDef(BaseModel): + ModelMetadataSummaries: List[ModelMetadataSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelPackageGroupsOutputTypeDef(BaseModel): + ModelPackageGroupSummaryList: List[ModelPackageGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelPackagesOutputTypeDef(BaseModel): + ModelPackageSummaryList: List[ModelPackageSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListModelsOutputTypeDef(BaseModel): + Models: List[ModelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMonitoringAlertHistoryResponseTypeDef(BaseModel): + MonitoringAlertHistory: List[MonitoringAlertHistorySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMonitoringSchedulesResponseTypeDef(BaseModel): + MonitoringScheduleSummaries: List[MonitoringScheduleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNotebookInstanceLifecycleConfigsOutputTypeDef(BaseModel): + NotebookInstanceLifecycleConfigs: List[NotebookInstanceLifecycleConfigSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListNotebookInstancesOutputTypeDef(BaseModel): + NotebookInstances: List[NotebookInstanceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListOptimizationJobsResponseTypeDef(BaseModel): + OptimizationJobSummaries: List[OptimizationJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPipelineExecutionsResponseTypeDef(BaseModel): + PipelineExecutionSummaries: List[PipelineExecutionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPipelineParametersForExecutionResponseTypeDef(BaseModel): + PipelineParameters: List[ParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPipelinesResponseTypeDef(BaseModel): + PipelineSummaries: List[PipelineSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProcessingJobsResponseTypeDef(BaseModel): + ProcessingJobSummaries: List[ProcessingJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProjectsOutputTypeDef(BaseModel): + ProjectSummaryList: List[ProjectSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceCatalogsResponseTypeDef(BaseModel): + ResourceCatalogs: List[ResourceCatalogTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListStudioLifecycleConfigsResponseTypeDef(BaseModel): + StudioLifecycleConfigs: List[StudioLifecycleConfigDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTransformJobsResponseTypeDef(BaseModel): + TransformJobSummaries: List[TransformJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUserProfilesResponseTypeDef(BaseModel): + UserProfiles: List[UserProfileDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MemberDefinitionExtraOutputTypeDef(BaseModel): + CognitoMemberDefinition: Optional[CognitoMemberDefinitionTypeDef] = None + OidcMemberDefinition: Optional[OidcMemberDefinitionExtraOutputTypeDef] = None + +class MemberDefinitionOutputTypeDef(BaseModel): + CognitoMemberDefinition: Optional[CognitoMemberDefinitionTypeDef] = None + OidcMemberDefinition: Optional[OidcMemberDefinitionOutputTypeDef] = None + +class MemberDefinitionTypeDef(BaseModel): + CognitoMemberDefinition: Optional[CognitoMemberDefinitionTypeDef] = None + OidcMemberDefinition: Optional[OidcMemberDefinitionTypeDef] = None + +class MetricSpecificationTypeDef(BaseModel): + Predefined: Optional[PredefinedMetricSpecificationTypeDef] = None + Customized: Optional[CustomizedMetricSpecificationTypeDef] = None + +class S3ModelDataSourceTypeDef(BaseModel): + S3Uri: str + S3DataType: S3ModelDataTypeType + CompressionType: ModelCompressionTypeType + ModelAccessConfig: Optional[ModelAccessConfigTypeDef] = None + HubAccessConfig: Optional[InferenceHubAccessConfigTypeDef] = None + +class TextGenerationJobConfigOutputTypeDef(BaseModel): + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + BaseModelName: Optional[str] = None + TextGenerationHyperParameters: Optional[Dict[str, str]] = None + ModelAccessConfig: Optional[ModelAccessConfigTypeDef] = None + +class TextGenerationJobConfigTypeDef(BaseModel): + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + BaseModelName: Optional[str] = None + TextGenerationHyperParameters: Optional[Mapping[str, str]] = None + ModelAccessConfig: Optional[ModelAccessConfigTypeDef] = None + +class MonitoringAlertActionsTypeDef(BaseModel): + ModelDashboardIndicator: Optional[ModelDashboardIndicatorActionTypeDef] = None + +class ModelInfrastructureConfigTypeDef(BaseModel): + InfrastructureType: Literal["RealTimeInference"] + RealTimeInferenceConfig: RealTimeInferenceConfigTypeDef + +class RecommendationJobStoppingConditionsOutputTypeDef(BaseModel): + MaxInvocations: Optional[int] = None + ModelLatencyThresholds: Optional[List[ModelLatencyThresholdTypeDef]] = None + FlatInvocations: Optional[FlatInvocationsType] = None + +class RecommendationJobStoppingConditionsTypeDef(BaseModel): + MaxInvocations: Optional[int] = None + ModelLatencyThresholds: Optional[Sequence[ModelLatencyThresholdTypeDef]] = None + FlatInvocations: Optional[FlatInvocationsType] = None + +class ModelMetadataSearchExpressionTypeDef(BaseModel): + Filters: Optional[Sequence[ModelMetadataFilterTypeDef]] = None + +class ModelPackageStatusDetailsTypeDef(BaseModel): + ValidationStatuses: List[ModelPackageStatusItemTypeDef] + ImageScanStatuses: Optional[List[ModelPackageStatusItemTypeDef]] = None + +class OptimizationConfigOutputTypeDef(BaseModel): + ModelQuantizationConfig: Optional[ModelQuantizationConfigOutputTypeDef] = None + ModelCompilationConfig: Optional[ModelCompilationConfigOutputTypeDef] = None + +class OptimizationConfigTypeDef(BaseModel): + ModelQuantizationConfig: Optional[ModelQuantizationConfigTypeDef] = None + ModelCompilationConfig: Optional[ModelCompilationConfigTypeDef] = None + +class MonitoringResourcesTypeDef(BaseModel): + ClusterConfig: MonitoringClusterConfigTypeDef + +class MonitoringDatasetFormatExtraOutputTypeDef(BaseModel): + Csv: Optional[MonitoringCsvDatasetFormatTypeDef] = None + Json: Optional[MonitoringJsonDatasetFormatTypeDef] = None + Parquet: Optional[Dict[str, Any]] = None + +class MonitoringDatasetFormatOutputTypeDef(BaseModel): + Csv: Optional[MonitoringCsvDatasetFormatTypeDef] = None + Json: Optional[MonitoringJsonDatasetFormatTypeDef] = None + Parquet: Optional[Dict[str, Any]] = None + +class MonitoringDatasetFormatTypeDef(BaseModel): + Csv: Optional[MonitoringCsvDatasetFormatTypeDef] = None + Json: Optional[MonitoringJsonDatasetFormatTypeDef] = None + Parquet: Optional[Mapping[str, Any]] = None + +class MonitoringOutputTypeDef(BaseModel): + S3Output: MonitoringS3OutputTypeDef + +class OfflineStoreConfigTypeDef(BaseModel): + S3StorageConfig: S3StorageConfigTypeDef + DisableGlueTableCreation: Optional[bool] = None + DataCatalogConfig: Optional[DataCatalogConfigTypeDef] = None + TableFormat: Optional[TableFormatType] = None + +class OnlineStoreConfigTypeDef(BaseModel): + SecurityConfig: Optional[OnlineStoreSecurityConfigTypeDef] = None + EnableOnlineStore: Optional[bool] = None + TtlDuration: Optional[TtlDurationTypeDef] = None + StorageType: Optional[StorageTypeType] = None + +class OnlineStoreConfigUpdateTypeDef(BaseModel): + TtlDuration: Optional[TtlDurationTypeDef] = None + +class OptimizationJobModelSourceS3TypeDef(BaseModel): + S3Uri: Optional[str] = None + ModelAccessConfig: Optional[OptimizationModelAccessConfigTypeDef] = None + +class OutputConfigTypeDef(BaseModel): + S3OutputLocation: str + TargetDevice: Optional[TargetDeviceType] = None + TargetPlatform: Optional[TargetPlatformTypeDef] = None + CompilerOptions: Optional[str] = None + KmsKeyId: Optional[str] = None + +class PendingProductionVariantSummaryTypeDef(BaseModel): + VariantName: str + DeployedImages: Optional[List[DeployedImageTypeDef]] = None + CurrentWeight: Optional[float] = None + DesiredWeight: Optional[float] = None + CurrentInstanceCount: Optional[int] = None + DesiredInstanceCount: Optional[int] = None + InstanceType: Optional[ProductionVariantInstanceTypeType] = None + AcceleratorType: Optional[ProductionVariantAcceleratorTypeType] = None + VariantStatus: Optional[List[ProductionVariantStatusTypeDef]] = None + CurrentServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + DesiredServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + ManagedInstanceScaling: Optional[ProductionVariantManagedInstanceScalingTypeDef] = None + RoutingConfig: Optional[ProductionVariantRoutingConfigTypeDef] = None + +class ProductionVariantSummaryTypeDef(BaseModel): + VariantName: str + DeployedImages: Optional[List[DeployedImageTypeDef]] = None + CurrentWeight: Optional[float] = None + DesiredWeight: Optional[float] = None + CurrentInstanceCount: Optional[int] = None + DesiredInstanceCount: Optional[int] = None + VariantStatus: Optional[List[ProductionVariantStatusTypeDef]] = None + CurrentServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + DesiredServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + ManagedInstanceScaling: Optional[ProductionVariantManagedInstanceScalingTypeDef] = None + RoutingConfig: Optional[ProductionVariantRoutingConfigTypeDef] = None + +class ProcessingResourcesTypeDef(BaseModel): + ClusterConfig: ProcessingClusterConfigTypeDef + +class ProcessingOutputTypeDef(BaseModel): + OutputName: str + S3Output: Optional[ProcessingS3OutputTypeDef] = None + FeatureStoreOutput: Optional[ProcessingFeatureStoreOutputTypeDef] = None + AppManaged: Optional[bool] = None + +class ProductionVariantTypeDef(BaseModel): + VariantName: str + ModelName: Optional[str] = None + InitialInstanceCount: Optional[int] = None + InstanceType: Optional[ProductionVariantInstanceTypeType] = None + InitialVariantWeight: Optional[float] = None + AcceleratorType: Optional[ProductionVariantAcceleratorTypeType] = None + CoreDumpConfig: Optional[ProductionVariantCoreDumpConfigTypeDef] = None + ServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + VolumeSizeInGB: Optional[int] = None + ModelDataDownloadTimeoutInSeconds: Optional[int] = None + ContainerStartupHealthCheckTimeoutInSeconds: Optional[int] = None + EnableSSMAccess: Optional[bool] = None + ManagedInstanceScaling: Optional[ProductionVariantManagedInstanceScalingTypeDef] = None + RoutingConfig: Optional[ProductionVariantRoutingConfigTypeDef] = None + InferenceAmiVersion: Optional[Literal["al2-ami-sagemaker-inference-gpu-2"]] = None + +class SuggestionQueryTypeDef(BaseModel): + PropertyNameQuery: Optional[PropertyNameQueryTypeDef] = None + +class ServiceCatalogProvisioningDetailsExtraOutputTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: Optional[str] = None + PathId: Optional[str] = None + ProvisioningParameters: Optional[List[ProvisioningParameterTypeDef]] = None + +class ServiceCatalogProvisioningDetailsOutputTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: Optional[str] = None + PathId: Optional[str] = None + ProvisioningParameters: Optional[List[ProvisioningParameterTypeDef]] = None + +class ServiceCatalogProvisioningDetailsTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: Optional[str] = None + PathId: Optional[str] = None + ProvisioningParameters: Optional[Sequence[ProvisioningParameterTypeDef]] = None + +class ServiceCatalogProvisioningUpdateDetailsTypeDef(BaseModel): + ProvisioningArtifactId: Optional[str] = None + ProvisioningParameters: Optional[Sequence[ProvisioningParameterTypeDef]] = None + +class PublicWorkforceTaskPriceTypeDef(BaseModel): + AmountInUsd: Optional[USDTypeDef] = None + +class QueryLineageResponseTypeDef(BaseModel): + Vertices: List[VertexTypeDef] + Edges: List[EdgeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RecommendationJobOutputConfigTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + CompiledOutputConfig: Optional[RecommendationJobCompiledOutputConfigTypeDef] = None + +class RecommendationJobContainerConfigOutputTypeDef(BaseModel): + Domain: Optional[str] = None + Task: Optional[str] = None + Framework: Optional[str] = None + FrameworkVersion: Optional[str] = None + PayloadConfig: Optional[RecommendationJobPayloadConfigOutputTypeDef] = None + NearestModelName: Optional[str] = None + SupportedInstanceTypes: Optional[List[str]] = None + SupportedEndpointType: Optional[RecommendationJobSupportedEndpointTypeType] = None + DataInputConfig: Optional[str] = None + SupportedResponseMIMETypes: Optional[List[str]] = None + +class RecommendationJobContainerConfigTypeDef(BaseModel): + Domain: Optional[str] = None + Task: Optional[str] = None + Framework: Optional[str] = None + FrameworkVersion: Optional[str] = None + PayloadConfig: Optional[RecommendationJobPayloadConfigTypeDef] = None + NearestModelName: Optional[str] = None + SupportedInstanceTypes: Optional[Sequence[str]] = None + SupportedEndpointType: Optional[RecommendationJobSupportedEndpointTypeType] = None + DataInputConfig: Optional[str] = None + SupportedResponseMIMETypes: Optional[Sequence[str]] = None + +class RenderUiTemplateRequestRequestTypeDef(BaseModel): + Task: RenderableTaskTypeDef + RoleArn: str + UiTemplate: Optional[UiTemplateTypeDef] = None + HumanTaskUiArn: Optional[str] = None + +class RenderUiTemplateResponseTypeDef(BaseModel): + RenderedContent: str + Errors: List[RenderingErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchRequestRequestTypeDef(BaseModel): + Resource: ResourceTypeType + SearchExpression: Optional["SearchExpressionTypeDef"] = None + SortBy: Optional[str] = None + SortOrder: Optional[SearchSortOrderType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + CrossAccountFilterOption: Optional[CrossAccountFilterOptionType] = None + VisibilityConditions: Optional[Sequence[VisibilityConditionsTypeDef]] = None + +class SelectiveExecutionConfigExtraOutputTypeDef(BaseModel): + SelectedSteps: List[SelectedStepTypeDef] + SourcePipelineExecutionArn: Optional[str] = None + +class SelectiveExecutionConfigOutputTypeDef(BaseModel): + SelectedSteps: List[SelectedStepTypeDef] + SourcePipelineExecutionArn: Optional[str] = None + +class SelectiveExecutionConfigTypeDef(BaseModel): + SelectedSteps: Sequence[SelectedStepTypeDef] + SourcePipelineExecutionArn: Optional[str] = None + +class ShadowModeConfigOutputTypeDef(BaseModel): + SourceModelVariantName: str + ShadowModelVariants: List[ShadowModelVariantConfigTypeDef] + +class ShadowModeConfigTypeDef(BaseModel): + SourceModelVariantName: str + ShadowModelVariants: Sequence[ShadowModelVariantConfigTypeDef] + +class TrafficPatternOutputTypeDef(BaseModel): + TrafficType: Optional[TrafficTypeType] = None + Phases: Optional[List[PhaseTypeDef]] = None + Stairs: Optional[StairsTypeDef] = None + +class TrafficPatternTypeDef(BaseModel): + TrafficType: Optional[TrafficTypeType] = None + Phases: Optional[Sequence[PhaseTypeDef]] = None + Stairs: Optional[StairsTypeDef] = None + +class TrainingImageConfigTypeDef(BaseModel): + TrainingRepositoryAccessMode: TrainingRepositoryAccessModeType + TrainingRepositoryAuthConfig: Optional[TrainingRepositoryAuthConfigTypeDef] = None + +class TransformDataSourceTypeDef(BaseModel): + S3DataSource: TransformS3DataSourceTypeDef + +class WorkforceTypeDef(BaseModel): + WorkforceName: str + WorkforceArn: str + LastUpdatedDate: Optional[datetime] = None + SourceIpConfig: Optional[SourceIpConfigOutputTypeDef] = None + SubDomain: Optional[str] = None + CognitoConfig: Optional[CognitoConfigTypeDef] = None + OidcConfig: Optional[OidcConfigForResponseTypeDef] = None + CreateDate: Optional[datetime] = None + WorkforceVpcConfig: Optional[WorkforceVpcConfigResponseTypeDef] = None + Status: Optional[WorkforceStatusType] = None + FailureReason: Optional[str] = None + +class ListActionsResponseTypeDef(BaseModel): + ActionSummaries: List[ActionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAppsResponseTypeDef(BaseModel): + Apps: List[AppDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DomainSettingsForUpdateTypeDef(BaseModel): + RStudioServerProDomainSettingsForUpdate: Optional[ RStudioServerProDomainSettingsForUpdateTypeDef ] = None + ExecutionRoleIdentityConfig: Optional[ExecutionRoleIdentityConfigType] = None + SecurityGroupIds: Optional[Sequence[str]] = None + DockerSettings: Optional[DockerSettingsTypeDef] = None + AmazonQSettings: Optional[AmazonQSettingsTypeDef] = None + +class DomainSettingsOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + RStudioServerProDomainSettings: Optional[RStudioServerProDomainSettingsTypeDef] = None + ExecutionRoleIdentityConfig: Optional[ExecutionRoleIdentityConfigType] = None + DockerSettings: Optional[DockerSettingsOutputTypeDef] = None + AmazonQSettings: Optional[AmazonQSettingsTypeDef] = None + +class DomainSettingsTypeDef(BaseModel): + SecurityGroupIds: Optional[Sequence[str]] = None + RStudioServerProDomainSettings: Optional[RStudioServerProDomainSettingsTypeDef] = None + ExecutionRoleIdentityConfig: Optional[ExecutionRoleIdentityConfigType] = None + DockerSettings: Optional[DockerSettingsTypeDef] = None + AmazonQSettings: Optional[AmazonQSettingsTypeDef] = None + +class ArtifactSummaryTypeDef(BaseModel): + ArtifactArn: Optional[str] = None + ArtifactName: Optional[str] = None + Source: Optional[ArtifactSourceOutputTypeDef] = None + ArtifactType: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class CreateArtifactRequestRequestTypeDef(BaseModel): + Source: ArtifactSourceTypeDef + ArtifactType: str + ArtifactName: Optional[str] = None + Properties: Optional[Mapping[str, str]] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DeleteArtifactRequestRequestTypeDef(BaseModel): + ArtifactArn: Optional[str] = None + Source: Optional[ArtifactSourceTypeDef] = None + +class AsyncInferenceConfigOutputTypeDef(BaseModel): + OutputConfig: AsyncInferenceOutputConfigOutputTypeDef + ClientConfig: Optional[AsyncInferenceClientConfigTypeDef] = None + +class AsyncInferenceConfigTypeDef(BaseModel): + OutputConfig: AsyncInferenceOutputConfigTypeDef + ClientConfig: Optional[AsyncInferenceClientConfigTypeDef] = None + +class TabularJobConfigOutputTypeDef(BaseModel): + TargetAttributeName: str + CandidateGenerationConfig: Optional[CandidateGenerationConfigOutputTypeDef] = None + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + FeatureSpecificationS3Uri: Optional[str] = None + Mode: Optional[AutoMLModeType] = None + GenerateCandidateDefinitionsOnly: Optional[bool] = None + ProblemType: Optional[ProblemTypeType] = None + SampleWeightAttributeName: Optional[str] = None + +class TimeSeriesForecastingJobConfigOutputTypeDef(BaseModel): + ForecastFrequency: str + ForecastHorizon: int + TimeSeriesConfig: TimeSeriesConfigOutputTypeDef + FeatureSpecificationS3Uri: Optional[str] = None + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + ForecastQuantiles: Optional[List[str]] = None + Transformations: Optional[TimeSeriesTransformationsOutputTypeDef] = None + HolidayConfig: Optional[List[HolidayConfigAttributesTypeDef]] = None + CandidateGenerationConfig: Optional[CandidateGenerationConfigOutputTypeDef] = None + +class TabularJobConfigTypeDef(BaseModel): + TargetAttributeName: str + CandidateGenerationConfig: Optional[CandidateGenerationConfigTypeDef] = None + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + FeatureSpecificationS3Uri: Optional[str] = None + Mode: Optional[AutoMLModeType] = None + GenerateCandidateDefinitionsOnly: Optional[bool] = None + ProblemType: Optional[ProblemTypeType] = None + SampleWeightAttributeName: Optional[str] = None + +class TimeSeriesForecastingJobConfigTypeDef(BaseModel): + ForecastFrequency: str + ForecastHorizon: int + TimeSeriesConfig: TimeSeriesConfigTypeDef + FeatureSpecificationS3Uri: Optional[str] = None + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + ForecastQuantiles: Optional[Sequence[str]] = None + Transformations: Optional[TimeSeriesTransformationsTypeDef] = None + HolidayConfig: Optional[Sequence[HolidayConfigAttributesTypeDef]] = None + CandidateGenerationConfig: Optional[CandidateGenerationConfigTypeDef] = None + +class AutoMLChannelTypeDef(BaseModel): + TargetAttributeName: str + DataSource: Optional[AutoMLDataSourceTypeDef] = None + CompressionType: Optional[CompressionTypeType] = None + ContentType: Optional[str] = None + ChannelType: Optional[AutoMLChannelTypeType] = None + SampleWeightAttributeName: Optional[str] = None + +class AutoMLJobChannelTypeDef(BaseModel): + ChannelType: Optional[AutoMLChannelTypeType] = None + ContentType: Optional[str] = None + CompressionType: Optional[CompressionTypeType] = None + DataSource: Optional[AutoMLDataSourceTypeDef] = None + +class ListAutoMLJobsResponseTypeDef(BaseModel): + AutoMLJobSummaries: List[AutoMLJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AutoMLResolvedAttributesTypeDef(BaseModel): + AutoMLJobObjective: Optional[AutoMLJobObjectiveTypeDef] = None + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + AutoMLProblemTypeResolvedAttributes: Optional[ AutoMLProblemTypeResolvedAttributesTypeDef ] = None + +class AutoMLJobConfigOutputTypeDef(BaseModel): + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + SecurityConfig: Optional[AutoMLSecurityConfigOutputTypeDef] = None + CandidateGenerationConfig: Optional[AutoMLCandidateGenerationConfigOutputTypeDef] = None + DataSplitConfig: Optional[AutoMLDataSplitConfigTypeDef] = None + Mode: Optional[AutoMLModeType] = None + +class LabelingJobAlgorithmsConfigOutputTypeDef(BaseModel): + LabelingJobAlgorithmSpecificationArn: str + InitialActiveLearningModelArn: Optional[str] = None + LabelingJobResourceConfig: Optional[LabelingJobResourceConfigOutputTypeDef] = None + +class AutoMLJobConfigTypeDef(BaseModel): + CompletionCriteria: Optional[AutoMLJobCompletionCriteriaTypeDef] = None + SecurityConfig: Optional[AutoMLSecurityConfigTypeDef] = None + CandidateGenerationConfig: Optional[AutoMLCandidateGenerationConfigTypeDef] = None + DataSplitConfig: Optional[AutoMLDataSplitConfigTypeDef] = None + Mode: Optional[AutoMLModeType] = None + +class LabelingJobAlgorithmsConfigTypeDef(BaseModel): + LabelingJobAlgorithmSpecificationArn: str + InitialActiveLearningModelArn: Optional[str] = None + LabelingJobResourceConfig: Optional[LabelingJobResourceConfigTypeDef] = None + +class ModelMetricsTypeDef(BaseModel): + ModelQuality: Optional[ModelQualityTypeDef] = None + ModelDataQuality: Optional[ModelDataQualityTypeDef] = None + Bias: Optional[BiasTypeDef] = None + Explainability: Optional[ExplainabilityTypeDef] = None + +class PipelineExecutionStepMetadataTypeDef(BaseModel): + TrainingJob: Optional[TrainingJobStepMetadataTypeDef] = None + ProcessingJob: Optional[ProcessingJobStepMetadataTypeDef] = None + TransformJob: Optional[TransformJobStepMetadataTypeDef] = None + TuningJob: Optional[TuningJobStepMetaDataTypeDef] = None + Model: Optional[ModelStepMetadataTypeDef] = None + RegisterModel: Optional[RegisterModelStepMetadataTypeDef] = None + Condition: Optional[ConditionStepMetadataTypeDef] = None + Callback: Optional[CallbackStepMetadataTypeDef] = None + Lambda: Optional[LambdaStepMetadataTypeDef] = None + EMR: Optional[EMRStepMetadataTypeDef] = None + QualityCheck: Optional[QualityCheckStepMetadataTypeDef] = None + ClarifyCheck: Optional[ClarifyCheckStepMetadataTypeDef] = None + Fail: Optional[FailStepMetadataTypeDef] = None + AutoMLJob: Optional[AutoMLJobStepMetadataTypeDef] = None + +class AutoMLCandidateTypeDef(BaseModel): + CandidateName: str + ObjectiveStatus: ObjectiveStatusType + CandidateSteps: List[AutoMLCandidateStepTypeDef] + CandidateStatus: CandidateStatusType + CreationTime: datetime + LastModifiedTime: datetime + FinalAutoMLJobObjectiveMetric: Optional[FinalAutoMLJobObjectiveMetricTypeDef] = None + InferenceContainers: Optional[List[AutoMLContainerDefinitionTypeDef]] = None + EndTime: Optional[datetime] = None + FailureReason: Optional[str] = None + CandidateProperties: Optional[CandidatePropertiesTypeDef] = None + InferenceContainerDefinitions: Optional[ Dict[AutoMLProcessingUnitType, List[AutoMLContainerDefinitionTypeDef]] = None + +class BlueGreenUpdatePolicyTypeDef(BaseModel): + TrafficRoutingConfiguration: TrafficRoutingConfigTypeDef + TerminationWaitInSeconds: Optional[int] = None + MaximumExecutionTimeoutInSeconds: Optional[int] = None + +class EndpointInputConfigurationOutputTypeDef(BaseModel): + InstanceType: Optional[ProductionVariantInstanceTypeType] = None + ServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + InferenceSpecificationName: Optional[str] = None + EnvironmentParameterRanges: Optional[EnvironmentParameterRangesOutputTypeDef] = None + +class EndpointInputConfigurationTypeDef(BaseModel): + InstanceType: Optional[ProductionVariantInstanceTypeType] = None + ServerlessConfig: Optional[ProductionVariantServerlessConfigTypeDef] = None + InferenceSpecificationName: Optional[str] = None + EnvironmentParameterRanges: Optional[EnvironmentParameterRangesTypeDef] = None + +class ClarifyExplainerConfigOutputTypeDef(BaseModel): + ShapConfig: ClarifyShapConfigTypeDef + EnableExplanations: Optional[str] = None + InferenceConfig: Optional[ClarifyInferenceConfigOutputTypeDef] = None + +class ClarifyExplainerConfigTypeDef(BaseModel): + ShapConfig: ClarifyShapConfigTypeDef + EnableExplanations: Optional[str] = None + InferenceConfig: Optional[ClarifyInferenceConfigTypeDef] = None + +class ClusterInstanceGroupDetailsTypeDef(BaseModel): + CurrentCount: Optional[int] = None + TargetCount: Optional[int] = None + InstanceGroupName: Optional[str] = None + InstanceType: Optional[ClusterInstanceTypeType] = None + LifeCycleConfig: Optional[ClusterLifeCycleConfigTypeDef] = None + ExecutionRole: Optional[str] = None + ThreadsPerCore: Optional[int] = None + InstanceStorageConfigs: Optional[List[ClusterInstanceStorageConfigTypeDef]] = None + +class ClusterInstanceGroupSpecificationTypeDef(BaseModel): + InstanceCount: int + InstanceGroupName: str + InstanceType: ClusterInstanceTypeType + LifeCycleConfig: ClusterLifeCycleConfigTypeDef + ExecutionRole: str + ThreadsPerCore: Optional[int] = None + InstanceStorageConfigs: Optional[Sequence[ClusterInstanceStorageConfigTypeDef]] = None + +class ClusterNodeDetailsTypeDef(BaseModel): + InstanceGroupName: Optional[str] = None + InstanceId: Optional[str] = None + InstanceStatus: Optional[ClusterInstanceStatusDetailsTypeDef] = None + InstanceType: Optional[ClusterInstanceTypeType] = None + LaunchTime: Optional[datetime] = None + LifeCycleConfig: Optional[ClusterLifeCycleConfigTypeDef] = None + ThreadsPerCore: Optional[int] = None + InstanceStorageConfigs: Optional[List[ClusterInstanceStorageConfigTypeDef]] = None + PrivatePrimaryIp: Optional[str] = None + PrivateDnsHostname: Optional[str] = None + Placement: Optional[ClusterInstancePlacementTypeDef] = None + +class ListClusterNodesResponseTypeDef(BaseModel): + NextToken: str + ClusterNodeSummaries: List[ClusterNodeSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListCodeRepositoriesOutputTypeDef(BaseModel): + CodeRepositorySummaryList: List[CodeRepositorySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FeatureDefinitionTypeDef(BaseModel): + FeatureName: str + FeatureType: FeatureTypeType + CollectionType: Optional[CollectionTypeType] = None + CollectionConfig: Optional[CollectionConfigTypeDef] = None + +class ListContextsResponseTypeDef(BaseModel): + ContextSummaries: List[ContextSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class QueryLineageRequestRequestTypeDef(BaseModel): + StartArns: Optional[Sequence[str]] = None + Direction: Optional[DirectionType] = None + IncludeEdges: Optional[bool] = None + Filters: Optional[QueryFiltersTypeDef] = None + MaxDepth: Optional[int] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ChannelExtraOutputTypeDef(BaseModel): + ChannelName: str + DataSource: DataSourceExtraOutputTypeDef + ContentType: Optional[str] = None + CompressionType: Optional[CompressionTypeType] = None + RecordWrapperType: Optional[RecordWrapperType] = None + InputMode: Optional[TrainingInputModeType] = None + ShuffleConfig: Optional[ShuffleConfigTypeDef] = None + +class ChannelOutputTypeDef(BaseModel): + ChannelName: str + DataSource: DataSourceOutputTypeDef + ContentType: Optional[str] = None + CompressionType: Optional[CompressionTypeType] = None + RecordWrapperType: Optional[RecordWrapperType] = None + InputMode: Optional[TrainingInputModeType] = None + ShuffleConfig: Optional[ShuffleConfigTypeDef] = None + +class ChannelTypeDef(BaseModel): + ChannelName: str + DataSource: DataSourceTypeDef + ContentType: Optional[str] = None + CompressionType: Optional[CompressionTypeType] = None + RecordWrapperType: Optional[RecordWrapperType] = None + InputMode: Optional[TrainingInputModeType] = None + ShuffleConfig: Optional[ShuffleConfigTypeDef] = None + +class ProcessingInputTypeDef(BaseModel): + InputName: str + AppManaged: Optional[bool] = None + S3Input: Optional[ProcessingS3InputTypeDef] = None + DatasetDefinition: Optional[DatasetDefinitionTypeDef] = None + +class DefaultSpaceSettingsOutputTypeDef(BaseModel): + ExecutionRole: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + JupyterServerAppSettings: Optional[JupyterServerAppSettingsOutputTypeDef] = None + KernelGatewayAppSettings: Optional[KernelGatewayAppSettingsOutputTypeDef] = None + JupyterLabAppSettings: Optional[JupyterLabAppSettingsOutputTypeDef] = None + SpaceStorageSettings: Optional[DefaultSpaceStorageSettingsTypeDef] = None + CustomPosixUserConfig: Optional[CustomPosixUserConfigTypeDef] = None + CustomFileSystemConfigs: Optional[List[CustomFileSystemConfigTypeDef]] = None + +class DefaultSpaceSettingsTypeDef(BaseModel): + ExecutionRole: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + JupyterServerAppSettings: Optional[JupyterServerAppSettingsTypeDef] = None + KernelGatewayAppSettings: Optional[KernelGatewayAppSettingsTypeDef] = None + JupyterLabAppSettings: Optional[JupyterLabAppSettingsTypeDef] = None + SpaceStorageSettings: Optional[DefaultSpaceStorageSettingsTypeDef] = None + CustomPosixUserConfig: Optional[CustomPosixUserConfigTypeDef] = None + CustomFileSystemConfigs: Optional[Sequence[CustomFileSystemConfigTypeDef]] = None + +class UserSettingsOutputTypeDef(BaseModel): + ExecutionRole: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SharingSettings: Optional[SharingSettingsTypeDef] = None + JupyterServerAppSettings: Optional[JupyterServerAppSettingsOutputTypeDef] = None + KernelGatewayAppSettings: Optional[KernelGatewayAppSettingsOutputTypeDef] = None + TensorBoardAppSettings: Optional[TensorBoardAppSettingsTypeDef] = None + RStudioServerProAppSettings: Optional[RStudioServerProAppSettingsTypeDef] = None + RSessionAppSettings: Optional[RSessionAppSettingsOutputTypeDef] = None + CanvasAppSettings: Optional[CanvasAppSettingsOutputTypeDef] = None + CodeEditorAppSettings: Optional[CodeEditorAppSettingsOutputTypeDef] = None + JupyterLabAppSettings: Optional[JupyterLabAppSettingsOutputTypeDef] = None + SpaceStorageSettings: Optional[DefaultSpaceStorageSettingsTypeDef] = None + DefaultLandingUri: Optional[str] = None + StudioWebPortal: Optional[StudioWebPortalType] = None + CustomPosixUserConfig: Optional[CustomPosixUserConfigTypeDef] = None + CustomFileSystemConfigs: Optional[List[CustomFileSystemConfigTypeDef]] = None + StudioWebPortalSettings: Optional[StudioWebPortalSettingsOutputTypeDef] = None + +class UserSettingsTypeDef(BaseModel): + ExecutionRole: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + SharingSettings: Optional[SharingSettingsTypeDef] = None + JupyterServerAppSettings: Optional[JupyterServerAppSettingsTypeDef] = None + KernelGatewayAppSettings: Optional[KernelGatewayAppSettingsTypeDef] = None + TensorBoardAppSettings: Optional[TensorBoardAppSettingsTypeDef] = None + RStudioServerProAppSettings: Optional[RStudioServerProAppSettingsTypeDef] = None + RSessionAppSettings: Optional[RSessionAppSettingsTypeDef] = None + CanvasAppSettings: Optional[CanvasAppSettingsTypeDef] = None + CodeEditorAppSettings: Optional[CodeEditorAppSettingsTypeDef] = None + JupyterLabAppSettings: Optional[JupyterLabAppSettingsTypeDef] = None + SpaceStorageSettings: Optional[DefaultSpaceStorageSettingsTypeDef] = None + DefaultLandingUri: Optional[str] = None + StudioWebPortal: Optional[StudioWebPortalType] = None + CustomPosixUserConfig: Optional[CustomPosixUserConfigTypeDef] = None + CustomFileSystemConfigs: Optional[Sequence[CustomFileSystemConfigTypeDef]] = None + StudioWebPortalSettings: Optional[StudioWebPortalSettingsTypeDef] = None + +class InferenceComponentSpecificationSummaryTypeDef(BaseModel): + ModelName: Optional[str] = None + Container: Optional[InferenceComponentContainerSpecificationSummaryTypeDef] = None + StartupParameters: Optional[InferenceComponentStartupParametersTypeDef] = None + ComputeResourceRequirements: Optional[ InferenceComponentComputeResourceRequirementsTypeDef ] = None + +class DescribeEdgeDeploymentPlanResponseTypeDef(BaseModel): + EdgeDeploymentPlanArn: str + EdgeDeploymentPlanName: str + ModelConfigs: List[EdgeDeploymentModelConfigTypeDef] + DeviceFleetName: str + EdgeDeploymentSuccess: int + EdgeDeploymentPending: int + EdgeDeploymentFailed: int + Stages: List[DeploymentStageStatusSummaryTypeDef] + CreationTime: datetime + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateEdgeDeploymentPlanRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + ModelConfigs: Sequence[EdgeDeploymentModelConfigTypeDef] + DeviceFleetName: str + Stages: Optional[Sequence[DeploymentStageTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateEdgeDeploymentStageRequestRequestTypeDef(BaseModel): + EdgeDeploymentPlanName: str + Stages: Sequence[DeploymentStageTypeDef] + +class ListExperimentsResponseTypeDef(BaseModel): + ExperimentSummaries: List[ExperimentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListFeatureGroupsResponseTypeDef(BaseModel): + FeatureGroupSummaries: List[FeatureGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListInferenceExperimentsResponseTypeDef(BaseModel): + InferenceExperiments: List[InferenceExperimentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrainingJobsResponseTypeDef(BaseModel): + TrainingJobSummaries: List[TrainingJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTrialsResponseTypeDef(BaseModel): + TrialSummaries: List[TrialSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateEndpointWeightsAndCapacitiesInputRequestTypeDef(BaseModel): + EndpointName: str + DesiredWeightsAndCapacities: Sequence[DesiredWeightAndCapacityTypeDef] + +class ListDevicesResponseTypeDef(BaseModel): + DeviceSummaries: List[DeviceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DriftCheckBaselinesTypeDef(BaseModel): + Bias: Optional[DriftCheckBiasTypeDef] = None + Explainability: Optional[DriftCheckExplainabilityTypeDef] = None + ModelQuality: Optional[DriftCheckModelQualityTypeDef] = None + ModelDataQuality: Optional[DriftCheckModelDataQualityTypeDef] = None + +class SpaceSettingsOutputTypeDef(BaseModel): + JupyterServerAppSettings: Optional[JupyterServerAppSettingsOutputTypeDef] = None + KernelGatewayAppSettings: Optional[KernelGatewayAppSettingsOutputTypeDef] = None + CodeEditorAppSettings: Optional[SpaceCodeEditorAppSettingsTypeDef] = None + JupyterLabAppSettings: Optional[SpaceJupyterLabAppSettingsOutputTypeDef] = None + AppType: Optional[AppTypeType] = None + SpaceStorageSettings: Optional[SpaceStorageSettingsTypeDef] = None + CustomFileSystems: Optional[List[CustomFileSystemTypeDef]] = None + +class SpaceSettingsSummaryTypeDef(BaseModel): + AppType: Optional[AppTypeType] = None + SpaceStorageSettings: Optional[SpaceStorageSettingsTypeDef] = None + +class SpaceSettingsTypeDef(BaseModel): + JupyterServerAppSettings: Optional[JupyterServerAppSettingsTypeDef] = None + KernelGatewayAppSettings: Optional[KernelGatewayAppSettingsTypeDef] = None + CodeEditorAppSettings: Optional[SpaceCodeEditorAppSettingsTypeDef] = None + JupyterLabAppSettings: Optional[SpaceJupyterLabAppSettingsTypeDef] = None + AppType: Optional[AppTypeType] = None + SpaceStorageSettings: Optional[SpaceStorageSettingsTypeDef] = None + CustomFileSystems: Optional[Sequence[CustomFileSystemTypeDef]] = None + +class InferenceRecommendationTypeDef(BaseModel): + EndpointConfiguration: EndpointOutputConfigurationTypeDef + ModelConfiguration: ModelConfigurationTypeDef + RecommendationId: Optional[str] = None + Metrics: Optional[RecommendationMetricsTypeDef] = None + InvocationEndTime: Optional[datetime] = None + InvocationStartTime: Optional[datetime] = None + +class RecommendationJobInferenceBenchmarkTypeDef(BaseModel): + ModelConfiguration: ModelConfigurationTypeDef + Metrics: Optional[RecommendationMetricsTypeDef] = None + EndpointMetrics: Optional[InferenceMetricsTypeDef] = None + EndpointConfiguration: Optional[EndpointOutputConfigurationTypeDef] = None + FailureReason: Optional[str] = None + InvocationEndTime: Optional[datetime] = None + InvocationStartTime: Optional[datetime] = None + +class SearchExpressionTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + NestedFilters: Optional[Sequence[NestedFiltersTypeDef]] = None + SubExpressions: Optional[Sequence[Dict[str, Any]]] = None + Operator: Optional[BooleanOperatorType] = None + +class ListTrainingJobsForHyperParameterTuningJobResponseTypeDef(BaseModel): + TrainingJobSummaries: List[HyperParameterTrainingJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListHyperParameterTuningJobsResponseTypeDef(BaseModel): + HyperParameterTuningJobSummaries: List[HyperParameterTuningJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociationSummaryTypeDef(BaseModel): + SourceArn: Optional[str] = None + DestinationArn: Optional[str] = None + SourceType: Optional[str] = None + DestinationType: Optional[str] = None + AssociationType: Optional[AssociationEdgeTypeType] = None + SourceName: Optional[str] = None + DestinationName: Optional[str] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + +class DescribeActionResponseTypeDef(BaseModel): + ActionName: str + ActionArn: str + Source: ActionSourceTypeDef + ActionType: str + Description: str + Status: ActionStatusType + Properties: Dict[str, str] + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + MetadataProperties: MetadataPropertiesTypeDef + LineageGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeArtifactResponseTypeDef(BaseModel): + ArtifactName: str + ArtifactArn: str + Source: ArtifactSourceOutputTypeDef + ArtifactType: str + Properties: Dict[str, str] + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + MetadataProperties: MetadataPropertiesTypeDef + LineageGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeContextResponseTypeDef(BaseModel): + ContextName: str + ContextArn: str + Source: ContextSourceTypeDef + ContextType: str + Description: str + Properties: Dict[str, str] + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + LineageGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExperimentResponseTypeDef(BaseModel): + ExperimentName: str + ExperimentArn: str + DisplayName: str + Source: ExperimentSourceTypeDef + Description: str + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeLineageGroupResponseTypeDef(BaseModel): + LineageGroupName: str + LineageGroupArn: str + DisplayName: str + Description: str + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMlflowTrackingServerResponseTypeDef(BaseModel): + TrackingServerArn: str + TrackingServerName: str + ArtifactStoreUri: str + TrackingServerSize: TrackingServerSizeType + MlflowVersion: str + RoleArn: str + TrackingServerStatus: TrackingServerStatusType + IsActive: IsTrackingServerActiveType + TrackingServerUrl: str + WeeklyMaintenanceWindowStart: str + AutomaticModelRegistration: bool + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelCardResponseTypeDef(BaseModel): + ModelCardArn: str + ModelCardName: str + ModelCardVersion: int + Content: str + ModelCardStatus: ModelCardStatusType + SecurityConfig: ModelCardSecurityConfigTypeDef + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + ModelCardProcessingStatus: ModelCardProcessingStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelPackageGroupOutputTypeDef(BaseModel): + ModelPackageGroupName: str + ModelPackageGroupArn: str + ModelPackageGroupDescription: str + CreationTime: datetime + CreatedBy: UserContextTypeDef + ModelPackageGroupStatus: ModelPackageGroupStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePipelineResponseTypeDef(BaseModel): + PipelineArn: str + PipelineName: str + PipelineDisplayName: str + PipelineDefinition: str + PipelineDescription: str + RoleArn: str + PipelineStatus: PipelineStatusType + CreationTime: datetime + LastModifiedTime: datetime + LastRunTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedBy: UserContextTypeDef + ParallelismConfiguration: ParallelismConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrialComponentResponseTypeDef(BaseModel): + TrialComponentName: str + TrialComponentArn: str + DisplayName: str + Source: TrialComponentSourceTypeDef + Status: TrialComponentStatusTypeDef + StartTime: datetime + EndTime: datetime + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + Parameters: Dict[str, TrialComponentParameterValueTypeDef] + InputArtifacts: Dict[str, TrialComponentArtifactTypeDef] + OutputArtifacts: Dict[str, TrialComponentArtifactTypeDef] + MetadataProperties: MetadataPropertiesTypeDef + Metrics: List[TrialComponentMetricSummaryTypeDef] + LineageGroupArn: str + Sources: List[TrialComponentSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrialResponseTypeDef(BaseModel): + TrialName: str + TrialArn: str + DisplayName: str + ExperimentName: str + Source: TrialSourceTypeDef + CreationTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + MetadataProperties: MetadataPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExperimentTypeDef(BaseModel): + ExperimentName: Optional[str] = None + ExperimentArn: Optional[str] = None + DisplayName: Optional[str] = None + Source: Optional[ExperimentSourceTypeDef] = None + Description: Optional[str] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class ModelCardTypeDef(BaseModel): + ModelCardArn: Optional[str] = None + ModelCardName: Optional[str] = None + ModelCardVersion: Optional[int] = None + Content: Optional[str] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + SecurityConfig: Optional[ModelCardSecurityConfigTypeDef] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + ModelId: Optional[str] = None + RiskRating: Optional[str] = None + ModelPackageGroupName: Optional[str] = None + +class ModelDashboardModelCardTypeDef(BaseModel): + ModelCardArn: Optional[str] = None + ModelCardName: Optional[str] = None + ModelCardVersion: Optional[int] = None + ModelCardStatus: Optional[ModelCardStatusType] = None + SecurityConfig: Optional[ModelCardSecurityConfigTypeDef] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + ModelId: Optional[str] = None + RiskRating: Optional[str] = None + +class ModelPackageGroupTypeDef(BaseModel): + ModelPackageGroupName: Optional[str] = None + ModelPackageGroupArn: Optional[str] = None + ModelPackageGroupDescription: Optional[str] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + ModelPackageGroupStatus: Optional[ModelPackageGroupStatusType] = None + Tags: Optional[List[TagTypeDef]] = None + +class PipelineTypeDef(BaseModel): + PipelineArn: Optional[str] = None + PipelineName: Optional[str] = None + PipelineDisplayName: Optional[str] = None + PipelineDescription: Optional[str] = None + RoleArn: Optional[str] = None + PipelineStatus: Optional[PipelineStatusType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LastRunTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class TrialComponentSimpleSummaryTypeDef(BaseModel): + TrialComponentName: Optional[str] = None + TrialComponentArn: Optional[str] = None + TrialComponentSource: Optional[TrialComponentSourceTypeDef] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + +class TrialComponentSummaryTypeDef(BaseModel): + TrialComponentName: Optional[str] = None + TrialComponentArn: Optional[str] = None + DisplayName: Optional[str] = None + TrialComponentSource: Optional[TrialComponentSourceTypeDef] = None + Status: Optional[TrialComponentStatusTypeDef] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + +class WorkerAccessConfigurationTypeDef(BaseModel): + S3Presign: Optional[S3PresignTypeDef] = None + +class CreateInferenceComponentInputRequestTypeDef(BaseModel): + InferenceComponentName: str + EndpointName: str + VariantName: str + Specification: InferenceComponentSpecificationTypeDef + RuntimeConfig: InferenceComponentRuntimeConfigTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateInferenceComponentInputRequestTypeDef(BaseModel): + InferenceComponentName: str + Specification: Optional[InferenceComponentSpecificationTypeDef] = None + RuntimeConfig: Optional[InferenceComponentRuntimeConfigTypeDef] = None + +class HyperParameterSpecificationOutputTypeDef(BaseModel): + Name: str + Type: ParameterTypeType + Description: Optional[str] = None + Range: Optional[ParameterRangeOutputTypeDef] = None + IsTunable: Optional[bool] = None + IsRequired: Optional[bool] = None + DefaultValue: Optional[str] = None + +class HyperParameterSpecificationTypeDef(BaseModel): + Name: str + Type: ParameterTypeType + Description: Optional[str] = None + Range: Optional[ParameterRangeTypeDef] = None + IsTunable: Optional[bool] = None + IsRequired: Optional[bool] = None + DefaultValue: Optional[str] = None + +class HyperParameterTuningJobConfigExtraOutputTypeDef(BaseModel): + Strategy: HyperParameterTuningJobStrategyTypeType + ResourceLimits: ResourceLimitsTypeDef + StrategyConfig: Optional[HyperParameterTuningJobStrategyConfigTypeDef] = None + HyperParameterTuningJobObjective: Optional[HyperParameterTuningJobObjectiveTypeDef] = None + ParameterRanges: Optional[ParameterRangesExtraOutputTypeDef] = None + TrainingJobEarlyStoppingType: Optional[TrainingJobEarlyStoppingTypeType] = None + TuningJobCompletionCriteria: Optional[TuningJobCompletionCriteriaTypeDef] = None + RandomSeed: Optional[int] = None + +class HyperParameterTuningJobConfigOutputTypeDef(BaseModel): + Strategy: HyperParameterTuningJobStrategyTypeType + ResourceLimits: ResourceLimitsTypeDef + StrategyConfig: Optional[HyperParameterTuningJobStrategyConfigTypeDef] = None + HyperParameterTuningJobObjective: Optional[HyperParameterTuningJobObjectiveTypeDef] = None + ParameterRanges: Optional[ParameterRangesOutputTypeDef] = None + TrainingJobEarlyStoppingType: Optional[TrainingJobEarlyStoppingTypeType] = None + TuningJobCompletionCriteria: Optional[TuningJobCompletionCriteriaTypeDef] = None + RandomSeed: Optional[int] = None + +class HyperParameterTuningJobConfigTypeDef(BaseModel): + Strategy: HyperParameterTuningJobStrategyTypeType + ResourceLimits: ResourceLimitsTypeDef + StrategyConfig: Optional[HyperParameterTuningJobStrategyConfigTypeDef] = None + HyperParameterTuningJobObjective: Optional[HyperParameterTuningJobObjectiveTypeDef] = None + ParameterRanges: Optional[ParameterRangesTypeDef] = None + TrainingJobEarlyStoppingType: Optional[TrainingJobEarlyStoppingTypeType] = None + TuningJobCompletionCriteria: Optional[TuningJobCompletionCriteriaTypeDef] = None + RandomSeed: Optional[int] = None + +class AppImageConfigDetailsTypeDef(BaseModel): + AppImageConfigArn: Optional[str] = None + AppImageConfigName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + KernelGatewayImageConfig: Optional[KernelGatewayImageConfigOutputTypeDef] = None + JupyterLabAppImageConfig: Optional[JupyterLabAppImageConfigOutputTypeDef] = None + CodeEditorAppImageConfig: Optional[CodeEditorAppImageConfigOutputTypeDef] = None + +class DescribeAppImageConfigResponseTypeDef(BaseModel): + AppImageConfigArn: str + AppImageConfigName: str + CreationTime: datetime + LastModifiedTime: datetime + KernelGatewayImageConfig: KernelGatewayImageConfigOutputTypeDef + JupyterLabAppImageConfig: JupyterLabAppImageConfigOutputTypeDef + CodeEditorAppImageConfig: CodeEditorAppImageConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppImageConfigRequestRequestTypeDef(BaseModel): + AppImageConfigName: str + Tags: Optional[Sequence[TagTypeDef]] = None + KernelGatewayImageConfig: Optional[KernelGatewayImageConfigTypeDef] = None + JupyterLabAppImageConfig: Optional[JupyterLabAppImageConfigTypeDef] = None + CodeEditorAppImageConfig: Optional[CodeEditorAppImageConfigTypeDef] = None + +class UpdateAppImageConfigRequestRequestTypeDef(BaseModel): + AppImageConfigName: str + KernelGatewayImageConfig: Optional[KernelGatewayImageConfigTypeDef] = None + JupyterLabAppImageConfig: Optional[JupyterLabAppImageConfigTypeDef] = None + CodeEditorAppImageConfig: Optional[CodeEditorAppImageConfigTypeDef] = None + +class ListLabelingJobsForWorkteamResponseTypeDef(BaseModel): + LabelingJobSummaryList: List[LabelingJobForWorkteamSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LabelingJobInputConfigExtraOutputTypeDef(BaseModel): + DataSource: LabelingJobDataSourceTypeDef + DataAttributes: Optional[LabelingJobDataAttributesExtraOutputTypeDef] = None + +class LabelingJobInputConfigOutputTypeDef(BaseModel): + DataSource: LabelingJobDataSourceTypeDef + DataAttributes: Optional[LabelingJobDataAttributesOutputTypeDef] = None + +class LabelingJobInputConfigTypeDef(BaseModel): + DataSource: LabelingJobDataSourceTypeDef + DataAttributes: Optional[LabelingJobDataAttributesTypeDef] = None + +class TargetTrackingScalingPolicyConfigurationTypeDef(BaseModel): + MetricSpecification: Optional[MetricSpecificationTypeDef] = None + TargetValue: Optional[float] = None + +class AdditionalModelDataSourceTypeDef(BaseModel): + ChannelName: str + S3DataSource: S3ModelDataSourceTypeDef + +class ModelDataSourceTypeDef(BaseModel): + S3DataSource: Optional[S3ModelDataSourceTypeDef] = None + +class MonitoringAlertSummaryTypeDef(BaseModel): + MonitoringAlertName: str + CreationTime: datetime + LastModifiedTime: datetime + AlertStatus: MonitoringAlertStatusType + DatapointsToAlert: int + EvaluationPeriod: int + Actions: MonitoringAlertActionsTypeDef + +class ModelVariantConfigSummaryTypeDef(BaseModel): + ModelName: str + VariantName: str + InfrastructureConfig: ModelInfrastructureConfigTypeDef + Status: ModelVariantStatusType + +class ModelVariantConfigTypeDef(BaseModel): + ModelName: str + VariantName: str + InfrastructureConfig: ModelInfrastructureConfigTypeDef + +class ListModelMetadataRequestListModelMetadataPaginateTypeDef(BaseModel): + SearchExpression: Optional[ModelMetadataSearchExpressionTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListModelMetadataRequestRequestTypeDef(BaseModel): + SearchExpression: Optional[ModelMetadataSearchExpressionTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class BatchTransformInputExtraOutputTypeDef(BaseModel): + DataCapturedDestinationS3Uri: str + DatasetFormat: MonitoringDatasetFormatExtraOutputTypeDef + LocalPath: str + S3InputMode: Optional[ProcessingS3InputModeType] = None + S3DataDistributionType: Optional[ProcessingS3DataDistributionTypeType] = None + FeaturesAttribute: Optional[str] = None + InferenceAttribute: Optional[str] = None + ProbabilityAttribute: Optional[str] = None + ProbabilityThresholdAttribute: Optional[float] = None + StartTimeOffset: Optional[str] = None + EndTimeOffset: Optional[str] = None + ExcludeFeaturesAttribute: Optional[str] = None + +class BatchTransformInputOutputTypeDef(BaseModel): + DataCapturedDestinationS3Uri: str + DatasetFormat: MonitoringDatasetFormatOutputTypeDef + LocalPath: str + S3InputMode: Optional[ProcessingS3InputModeType] = None + S3DataDistributionType: Optional[ProcessingS3DataDistributionTypeType] = None + FeaturesAttribute: Optional[str] = None + InferenceAttribute: Optional[str] = None + ProbabilityAttribute: Optional[str] = None + ProbabilityThresholdAttribute: Optional[float] = None + StartTimeOffset: Optional[str] = None + EndTimeOffset: Optional[str] = None + ExcludeFeaturesAttribute: Optional[str] = None + +class BatchTransformInputTypeDef(BaseModel): + DataCapturedDestinationS3Uri: str + DatasetFormat: MonitoringDatasetFormatTypeDef + LocalPath: str + S3InputMode: Optional[ProcessingS3InputModeType] = None + S3DataDistributionType: Optional[ProcessingS3DataDistributionTypeType] = None + FeaturesAttribute: Optional[str] = None + InferenceAttribute: Optional[str] = None + ProbabilityAttribute: Optional[str] = None + ProbabilityThresholdAttribute: Optional[float] = None + StartTimeOffset: Optional[str] = None + EndTimeOffset: Optional[str] = None + ExcludeFeaturesAttribute: Optional[str] = None + +class MonitoringOutputConfigExtraOutputTypeDef(BaseModel): + MonitoringOutputs: List[MonitoringOutputTypeDef] + KmsKeyId: Optional[str] = None + +class MonitoringOutputConfigOutputTypeDef(BaseModel): + MonitoringOutputs: List[MonitoringOutputTypeDef] + KmsKeyId: Optional[str] = None + +class MonitoringOutputConfigTypeDef(BaseModel): + MonitoringOutputs: Sequence[MonitoringOutputTypeDef] + KmsKeyId: Optional[str] = None + +class OptimizationJobModelSourceTypeDef(BaseModel): + S3: Optional[OptimizationJobModelSourceS3TypeDef] = None + +class CreateCompilationJobRequestRequestTypeDef(BaseModel): + CompilationJobName: str + RoleArn: str + OutputConfig: OutputConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + ModelPackageVersionArn: Optional[str] = None + InputConfig: Optional[InputConfigTypeDef] = None + VpcConfig: Optional[NeoVpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeCompilationJobResponseTypeDef(BaseModel): + CompilationJobName: str + CompilationJobArn: str + CompilationJobStatus: CompilationJobStatusType + CompilationStartTime: datetime + CompilationEndTime: datetime + StoppingCondition: StoppingConditionTypeDef + InferenceImage: str + ModelPackageVersionArn: str + CreationTime: datetime + LastModifiedTime: datetime + FailureReason: str + ModelArtifacts: ModelArtifactsTypeDef + ModelDigests: ModelDigestsTypeDef + RoleArn: str + InputConfig: InputConfigTypeDef + OutputConfig: OutputConfigTypeDef + VpcConfig: NeoVpcConfigOutputTypeDef + DerivedInformation: DerivedInformationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PendingDeploymentSummaryTypeDef(BaseModel): + EndpointConfigName: str + ProductionVariants: Optional[List[PendingProductionVariantSummaryTypeDef]] = None + StartTime: Optional[datetime] = None + ShadowProductionVariants: Optional[List[PendingProductionVariantSummaryTypeDef]] = None + +class ProcessingOutputConfigExtraOutputTypeDef(BaseModel): + Outputs: List[ProcessingOutputTypeDef] + KmsKeyId: Optional[str] = None + +class ProcessingOutputConfigOutputTypeDef(BaseModel): + Outputs: List[ProcessingOutputTypeDef] + KmsKeyId: Optional[str] = None + +class ProcessingOutputConfigTypeDef(BaseModel): + Outputs: Sequence[ProcessingOutputTypeDef] + KmsKeyId: Optional[str] = None + +class UpdateTrainingJobRequestRequestTypeDef(BaseModel): + TrainingJobName: str + ProfilerConfig: Optional[ProfilerConfigForUpdateTypeDef] = None + ProfilerRuleConfigurations: Optional[Sequence[ProfilerRuleConfigurationUnionTypeDef]] = None + ResourceConfig: Optional[ResourceConfigForUpdateTypeDef] = None + RemoteDebugConfig: Optional[RemoteDebugConfigForUpdateTypeDef] = None + +class GetSearchSuggestionsRequestRequestTypeDef(BaseModel): + Resource: ResourceTypeType + SuggestionQuery: Optional[SuggestionQueryTypeDef] = None + +class DescribeProjectOutputTypeDef(BaseModel): + ProjectArn: str + ProjectName: str + ProjectId: str + ProjectDescription: str + ServiceCatalogProvisioningDetails: ServiceCatalogProvisioningDetailsOutputTypeDef + ServiceCatalogProvisionedProductDetails: ServiceCatalogProvisionedProductDetailsTypeDef + ProjectStatus: ProjectStatusType + CreatedBy: UserContextTypeDef + CreationTime: datetime + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProjectTypeDef(BaseModel): + ProjectArn: Optional[str] = None + ProjectName: Optional[str] = None + ProjectId: Optional[str] = None + ProjectDescription: Optional[str] = None + ServiceCatalogProvisioningDetails: Optional[ ServiceCatalogProvisioningDetailsOutputTypeDef ] = None + ServiceCatalogProvisionedProductDetails: Optional[ ServiceCatalogProvisionedProductDetailsTypeDef ] = None + ProjectStatus: Optional[ProjectStatusType] = None + CreatedBy: Optional[UserContextTypeDef] = None + CreationTime: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + +class CreateProjectInputRequestTypeDef(BaseModel): + ProjectName: str + ServiceCatalogProvisioningDetails: ServiceCatalogProvisioningDetailsTypeDef + ProjectDescription: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateProjectInputRequestTypeDef(BaseModel): + ProjectName: str + ProjectDescription: Optional[str] = None + ServiceCatalogProvisioningUpdateDetails: Optional[ ServiceCatalogProvisioningUpdateDetailsTypeDef ] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class HumanLoopConfigOutputTypeDef(BaseModel): + WorkteamArn: str + HumanTaskUiArn: str + TaskTitle: str + TaskDescription: str + TaskCount: int + TaskAvailabilityLifetimeInSeconds: Optional[int] = None + TaskTimeLimitInSeconds: Optional[int] = None + TaskKeywords: Optional[List[str]] = None + PublicWorkforceTaskPrice: Optional[PublicWorkforceTaskPriceTypeDef] = None + +class HumanLoopConfigTypeDef(BaseModel): + WorkteamArn: str + HumanTaskUiArn: str + TaskTitle: str + TaskDescription: str + TaskCount: int + TaskAvailabilityLifetimeInSeconds: Optional[int] = None + TaskTimeLimitInSeconds: Optional[int] = None + TaskKeywords: Optional[Sequence[str]] = None + PublicWorkforceTaskPrice: Optional[PublicWorkforceTaskPriceTypeDef] = None + +class HumanTaskConfigOutputTypeDef(BaseModel): + WorkteamArn: str + UiConfig: UiConfigTypeDef + PreHumanTaskLambdaArn: str + TaskTitle: str + TaskDescription: str + NumberOfHumanWorkersPerDataObject: int + TaskTimeLimitInSeconds: int + AnnotationConsolidationConfig: AnnotationConsolidationConfigTypeDef + TaskKeywords: Optional[List[str]] = None + TaskAvailabilityLifetimeInSeconds: Optional[int] = None + MaxConcurrentTaskCount: Optional[int] = None + PublicWorkforceTaskPrice: Optional[PublicWorkforceTaskPriceTypeDef] = None + +class HumanTaskConfigTypeDef(BaseModel): + WorkteamArn: str + UiConfig: UiConfigTypeDef + PreHumanTaskLambdaArn: str + TaskTitle: str + TaskDescription: str + NumberOfHumanWorkersPerDataObject: int + TaskTimeLimitInSeconds: int + AnnotationConsolidationConfig: AnnotationConsolidationConfigTypeDef + TaskKeywords: Optional[Sequence[str]] = None + TaskAvailabilityLifetimeInSeconds: Optional[int] = None + MaxConcurrentTaskCount: Optional[int] = None + PublicWorkforceTaskPrice: Optional[PublicWorkforceTaskPriceTypeDef] = None + +class DescribePipelineExecutionResponseTypeDef(BaseModel): + PipelineArn: str + PipelineExecutionArn: str + PipelineExecutionDisplayName: str + PipelineExecutionStatus: PipelineExecutionStatusType + PipelineExecutionDescription: str + PipelineExperimentConfig: PipelineExperimentConfigTypeDef + FailureReason: str + CreationTime: datetime + LastModifiedTime: datetime + CreatedBy: UserContextTypeDef + LastModifiedBy: UserContextTypeDef + ParallelismConfiguration: ParallelismConfigurationTypeDef + SelectiveExecutionConfig: SelectiveExecutionConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PipelineExecutionTypeDef(BaseModel): + PipelineArn: Optional[str] = None + PipelineExecutionArn: Optional[str] = None + PipelineExecutionDisplayName: Optional[str] = None + PipelineExecutionStatus: Optional[PipelineExecutionStatusType] = None + PipelineExecutionDescription: Optional[str] = None + PipelineExperimentConfig: Optional[PipelineExperimentConfigTypeDef] = None + FailureReason: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + SelectiveExecutionConfig: Optional[SelectiveExecutionConfigOutputTypeDef] = None + PipelineParameters: Optional[List[ParameterTypeDef]] = None + +class StartPipelineExecutionRequestRequestTypeDef(BaseModel): + PipelineName: str + ClientRequestToken: str + PipelineExecutionDisplayName: Optional[str] = None + PipelineParameters: Optional[Sequence[ParameterTypeDef]] = None + PipelineExecutionDescription: Optional[str] = None + ParallelismConfiguration: Optional[ParallelismConfigurationTypeDef] = None + SelectiveExecutionConfig: Optional[SelectiveExecutionConfigTypeDef] = None + +class AlgorithmSpecificationExtraOutputTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + TrainingImage: Optional[str] = None + AlgorithmName: Optional[str] = None + MetricDefinitions: Optional[List[MetricDefinitionTypeDef]] = None + EnableSageMakerMetricsTimeSeries: Optional[bool] = None + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + TrainingImageConfig: Optional[TrainingImageConfigTypeDef] = None + +class AlgorithmSpecificationOutputTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + TrainingImage: Optional[str] = None + AlgorithmName: Optional[str] = None + MetricDefinitions: Optional[List[MetricDefinitionTypeDef]] = None + EnableSageMakerMetricsTimeSeries: Optional[bool] = None + ContainerEntrypoint: Optional[List[str]] = None + ContainerArguments: Optional[List[str]] = None + TrainingImageConfig: Optional[TrainingImageConfigTypeDef] = None + +class AlgorithmSpecificationTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + TrainingImage: Optional[str] = None + AlgorithmName: Optional[str] = None + MetricDefinitions: Optional[Sequence[MetricDefinitionTypeDef]] = None + EnableSageMakerMetricsTimeSeries: Optional[bool] = None + ContainerEntrypoint: Optional[Sequence[str]] = None + ContainerArguments: Optional[Sequence[str]] = None + TrainingImageConfig: Optional[TrainingImageConfigTypeDef] = None + +class TransformInputTypeDef(BaseModel): + DataSource: TransformDataSourceTypeDef + ContentType: Optional[str] = None + CompressionType: Optional[CompressionTypeType] = None + SplitType: Optional[SplitTypeType] = None + +class DescribeWorkforceResponseTypeDef(BaseModel): + Workforce: WorkforceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkforcesResponseTypeDef(BaseModel): + Workforces: List[WorkforceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateWorkforceResponseTypeDef(BaseModel): + Workforce: WorkforceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListArtifactsResponseTypeDef(BaseModel): + ArtifactSummaries: List[ArtifactSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AutoMLProblemTypeConfigOutputTypeDef(BaseModel): + ImageClassificationJobConfig: Optional[ImageClassificationJobConfigTypeDef] = None + TextClassificationJobConfig: Optional[TextClassificationJobConfigTypeDef] = None + TimeSeriesForecastingJobConfig: Optional[TimeSeriesForecastingJobConfigOutputTypeDef] = None + TabularJobConfig: Optional[TabularJobConfigOutputTypeDef] = None + TextGenerationJobConfig: Optional[TextGenerationJobConfigOutputTypeDef] = None + +class AutoMLProblemTypeConfigTypeDef(BaseModel): + ImageClassificationJobConfig: Optional[ImageClassificationJobConfigTypeDef] = None + TextClassificationJobConfig: Optional[TextClassificationJobConfigTypeDef] = None + TimeSeriesForecastingJobConfig: Optional[TimeSeriesForecastingJobConfigTypeDef] = None + TabularJobConfig: Optional[TabularJobConfigTypeDef] = None + TextGenerationJobConfig: Optional[TextGenerationJobConfigTypeDef] = None + +class CreateAutoMLJobRequestRequestTypeDef(BaseModel): + AutoMLJobName: str + InputDataConfig: Sequence[AutoMLChannelTypeDef] + OutputDataConfig: AutoMLOutputDataConfigTypeDef + RoleArn: str + ProblemType: Optional[ProblemTypeType] = None + AutoMLJobObjective: Optional[AutoMLJobObjectiveTypeDef] = None + AutoMLJobConfig: Optional[AutoMLJobConfigTypeDef] = None + GenerateCandidateDefinitionsOnly: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ModelDeployConfig: Optional[ModelDeployConfigTypeDef] = None + +class PipelineExecutionStepTypeDef(BaseModel): + StepName: Optional[str] = None + StepDisplayName: Optional[str] = None + StepDescription: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + StepStatus: Optional[StepStatusType] = None + CacheHitResult: Optional[CacheHitResultTypeDef] = None + FailureReason: Optional[str] = None + Metadata: Optional[PipelineExecutionStepMetadataTypeDef] = None + AttemptCount: Optional[int] = None + SelectiveExecutionResult: Optional[SelectiveExecutionResultTypeDef] = None + +class DescribeAutoMLJobResponseTypeDef(BaseModel): + AutoMLJobName: str + AutoMLJobArn: str + InputDataConfig: List[AutoMLChannelTypeDef] + OutputDataConfig: AutoMLOutputDataConfigTypeDef + RoleArn: str + AutoMLJobObjective: AutoMLJobObjectiveTypeDef + ProblemType: ProblemTypeType + AutoMLJobConfig: AutoMLJobConfigOutputTypeDef + CreationTime: datetime + EndTime: datetime + LastModifiedTime: datetime + FailureReason: str + PartialFailureReasons: List[AutoMLPartialFailureReasonTypeDef] + BestCandidate: AutoMLCandidateTypeDef + AutoMLJobStatus: AutoMLJobStatusType + AutoMLJobSecondaryStatus: AutoMLJobSecondaryStatusType + GenerateCandidateDefinitionsOnly: bool + AutoMLJobArtifacts: AutoMLJobArtifactsTypeDef + ResolvedAttributes: ResolvedAttributesTypeDef + ModelDeployConfig: ModelDeployConfigTypeDef + ModelDeployResult: ModelDeployResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCandidatesForAutoMLJobResponseTypeDef(BaseModel): + Candidates: List[AutoMLCandidateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DeploymentConfigOutputTypeDef(BaseModel): + BlueGreenUpdatePolicy: Optional[BlueGreenUpdatePolicyTypeDef] = None + RollingUpdatePolicy: Optional[RollingUpdatePolicyTypeDef] = None + AutoRollbackConfiguration: Optional[AutoRollbackConfigOutputTypeDef] = None + +class DeploymentConfigTypeDef(BaseModel): + BlueGreenUpdatePolicy: Optional[BlueGreenUpdatePolicyTypeDef] = None + RollingUpdatePolicy: Optional[RollingUpdatePolicyTypeDef] = None + AutoRollbackConfiguration: Optional[AutoRollbackConfigTypeDef] = None + +class RecommendationJobInputConfigOutputTypeDef(BaseModel): + ModelPackageVersionArn: Optional[str] = None + ModelName: Optional[str] = None + JobDurationInSeconds: Optional[int] = None + TrafficPattern: Optional[TrafficPatternOutputTypeDef] = None + ResourceLimit: Optional[RecommendationJobResourceLimitTypeDef] = None + EndpointConfigurations: Optional[List[EndpointInputConfigurationOutputTypeDef]] = None + VolumeKmsKeyId: Optional[str] = None + ContainerConfig: Optional[RecommendationJobContainerConfigOutputTypeDef] = None + Endpoints: Optional[List[EndpointInfoTypeDef]] = None + VpcConfig: Optional[RecommendationJobVpcConfigOutputTypeDef] = None + +class RecommendationJobInputConfigTypeDef(BaseModel): + ModelPackageVersionArn: Optional[str] = None + ModelName: Optional[str] = None + JobDurationInSeconds: Optional[int] = None + TrafficPattern: Optional[TrafficPatternTypeDef] = None + ResourceLimit: Optional[RecommendationJobResourceLimitTypeDef] = None + EndpointConfigurations: Optional[Sequence[EndpointInputConfigurationTypeDef]] = None + VolumeKmsKeyId: Optional[str] = None + ContainerConfig: Optional[RecommendationJobContainerConfigTypeDef] = None + Endpoints: Optional[Sequence[EndpointInfoTypeDef]] = None + VpcConfig: Optional[RecommendationJobVpcConfigTypeDef] = None + +class ExplainerConfigOutputTypeDef(BaseModel): + ClarifyExplainerConfig: Optional[ClarifyExplainerConfigOutputTypeDef] = None + +class ExplainerConfigTypeDef(BaseModel): + ClarifyExplainerConfig: Optional[ClarifyExplainerConfigTypeDef] = None + +class DescribeClusterResponseTypeDef(BaseModel): + ClusterArn: str + ClusterName: str + ClusterStatus: ClusterStatusType + CreationTime: datetime + FailureMessage: str + InstanceGroups: List[ClusterInstanceGroupDetailsTypeDef] + VpcConfig: VpcConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + InstanceGroups: Sequence[ClusterInstanceGroupSpecificationTypeDef] + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateClusterRequestRequestTypeDef(BaseModel): + ClusterName: str + InstanceGroups: Sequence[ClusterInstanceGroupSpecificationTypeDef] + +class DescribeClusterNodeResponseTypeDef(BaseModel): + NodeDetails: ClusterNodeDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFeatureGroupRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + RecordIdentifierFeatureName: str + EventTimeFeatureName: str + FeatureDefinitions: Sequence[FeatureDefinitionTypeDef] + OnlineStoreConfig: Optional[OnlineStoreConfigTypeDef] = None + OfflineStoreConfig: Optional[OfflineStoreConfigTypeDef] = None + ThroughputConfig: Optional[ThroughputConfigTypeDef] = None + RoleArn: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeFeatureGroupResponseTypeDef(BaseModel): + FeatureGroupArn: str + FeatureGroupName: str + RecordIdentifierFeatureName: str + EventTimeFeatureName: str + FeatureDefinitions: List[FeatureDefinitionTypeDef] + CreationTime: datetime + LastModifiedTime: datetime + OnlineStoreConfig: OnlineStoreConfigTypeDef + OfflineStoreConfig: OfflineStoreConfigTypeDef + ThroughputConfig: ThroughputConfigDescriptionTypeDef + RoleArn: str + FeatureGroupStatus: FeatureGroupStatusType + OfflineStoreStatus: OfflineStoreStatusTypeDef + LastUpdateStatus: LastUpdateStatusTypeDef + FailureReason: str + Description: str + NextToken: str + OnlineStoreTotalSizeBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class FeatureGroupTypeDef(BaseModel): + FeatureGroupArn: Optional[str] = None + FeatureGroupName: Optional[str] = None + RecordIdentifierFeatureName: Optional[str] = None + EventTimeFeatureName: Optional[str] = None + FeatureDefinitions: Optional[List[FeatureDefinitionTypeDef]] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + OnlineStoreConfig: Optional[OnlineStoreConfigTypeDef] = None + OfflineStoreConfig: Optional[OfflineStoreConfigTypeDef] = None + RoleArn: Optional[str] = None + FeatureGroupStatus: Optional[FeatureGroupStatusType] = None + OfflineStoreStatus: Optional[OfflineStoreStatusTypeDef] = None + LastUpdateStatus: Optional[LastUpdateStatusTypeDef] = None + FailureReason: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class UpdateFeatureGroupRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + FeatureAdditions: Optional[Sequence[FeatureDefinitionTypeDef]] = None + OnlineStoreConfig: Optional[OnlineStoreConfigUpdateTypeDef] = None + ThroughputConfig: Optional[ThroughputConfigUpdateTypeDef] = None + +class HyperParameterTrainingJobDefinitionExtraOutputTypeDef(BaseModel): + AlgorithmSpecification: HyperParameterAlgorithmSpecificationExtraOutputTypeDef + RoleArn: str + OutputDataConfig: OutputDataConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + DefinitionName: Optional[str] = None + TuningObjective: Optional[HyperParameterTuningJobObjectiveTypeDef] = None + HyperParameterRanges: Optional[ParameterRangesExtraOutputTypeDef] = None + StaticHyperParameters: Optional[Dict[str, str]] = None + InputDataConfig: Optional[List[ChannelExtraOutputTypeDef]] = None + VpcConfig: Optional[VpcConfigExtraOutputTypeDef] = None + ResourceConfig: Optional[ResourceConfigExtraOutputTypeDef] = None + HyperParameterTuningResourceConfig: Optional[ HyperParameterTuningResourceConfigExtraOutputTypeDef ] = None + EnableNetworkIsolation: Optional[bool] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableManagedSpotTraining: Optional[bool] = None + CheckpointConfig: Optional[CheckpointConfigTypeDef] = None + RetryStrategy: Optional[RetryStrategyTypeDef] = None + Environment: Optional[Dict[str, str]] = None + +class HyperParameterTrainingJobDefinitionOutputTypeDef(BaseModel): + AlgorithmSpecification: HyperParameterAlgorithmSpecificationOutputTypeDef + RoleArn: str + OutputDataConfig: OutputDataConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + DefinitionName: Optional[str] = None + TuningObjective: Optional[HyperParameterTuningJobObjectiveTypeDef] = None + HyperParameterRanges: Optional[ParameterRangesOutputTypeDef] = None + StaticHyperParameters: Optional[Dict[str, str]] = None + InputDataConfig: Optional[List[ChannelOutputTypeDef]] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + ResourceConfig: Optional[ResourceConfigOutputTypeDef] = None + HyperParameterTuningResourceConfig: Optional[ HyperParameterTuningResourceConfigOutputTypeDef ] = None + EnableNetworkIsolation: Optional[bool] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableManagedSpotTraining: Optional[bool] = None + CheckpointConfig: Optional[CheckpointConfigTypeDef] = None + RetryStrategy: Optional[RetryStrategyTypeDef] = None + Environment: Optional[Dict[str, str]] = None + +class TrainingJobDefinitionOutputTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + InputDataConfig: List[ChannelOutputTypeDef] + OutputDataConfig: OutputDataConfigTypeDef + ResourceConfig: ResourceConfigOutputTypeDef + StoppingCondition: StoppingConditionTypeDef + HyperParameters: Optional[Dict[str, str]] = None + +class HyperParameterTrainingJobDefinitionTypeDef(BaseModel): + AlgorithmSpecification: HyperParameterAlgorithmSpecificationTypeDef + RoleArn: str + OutputDataConfig: OutputDataConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + DefinitionName: Optional[str] = None + TuningObjective: Optional[HyperParameterTuningJobObjectiveTypeDef] = None + HyperParameterRanges: Optional[ParameterRangesTypeDef] = None + StaticHyperParameters: Optional[Mapping[str, str]] = None + InputDataConfig: Optional[Sequence[ChannelTypeDef]] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + ResourceConfig: Optional[ResourceConfigTypeDef] = None + HyperParameterTuningResourceConfig: Optional[ HyperParameterTuningResourceConfigTypeDef ] = None + EnableNetworkIsolation: Optional[bool] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableManagedSpotTraining: Optional[bool] = None + CheckpointConfig: Optional[CheckpointConfigTypeDef] = None + RetryStrategy: Optional[RetryStrategyTypeDef] = None + Environment: Optional[Mapping[str, str]] = None + +class TrainingJobDefinitionTypeDef(BaseModel): + TrainingInputMode: TrainingInputModeType + InputDataConfig: Sequence[ChannelTypeDef] + OutputDataConfig: OutputDataConfigTypeDef + ResourceConfig: ResourceConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + HyperParameters: Optional[Mapping[str, str]] = None + +class DescribeDomainResponseTypeDef(BaseModel): + DomainArn: str + DomainId: str + DomainName: str + HomeEfsFileSystemId: str + SingleSignOnManagedApplicationInstanceId: str + SingleSignOnApplicationArn: str + Status: DomainStatusType + CreationTime: datetime + LastModifiedTime: datetime + FailureReason: str + SecurityGroupIdForDomainBoundary: str + AuthMode: AuthModeType + DefaultUserSettings: UserSettingsOutputTypeDef + DomainSettings: DomainSettingsOutputTypeDef + AppNetworkAccessType: AppNetworkAccessTypeType + HomeEfsFileSystemKmsKeyId: str + SubnetIds: List[str] + Url: str + VpcId: str + KmsKeyId: str + AppSecurityGroupManagement: AppSecurityGroupManagementType + DefaultSpaceSettings: DefaultSpaceSettingsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserProfileResponseTypeDef(BaseModel): + DomainId: str + UserProfileArn: str + UserProfileName: str + HomeEfsFileSystemUid: str + Status: UserProfileStatusType + LastModifiedTime: datetime + CreationTime: datetime + FailureReason: str + SingleSignOnUserIdentifier: str + SingleSignOnUserValue: str + UserSettings: UserSettingsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainRequestRequestTypeDef(BaseModel): + DomainName: str + AuthMode: AuthModeType + DefaultUserSettings: UserSettingsTypeDef + SubnetIds: Sequence[str] + VpcId: str + DomainSettings: Optional[DomainSettingsTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AppNetworkAccessType: Optional[AppNetworkAccessTypeType] = None + HomeEfsFileSystemKmsKeyId: Optional[str] = None + KmsKeyId: Optional[str] = None + AppSecurityGroupManagement: Optional[AppSecurityGroupManagementType] = None + DefaultSpaceSettings: Optional[DefaultSpaceSettingsTypeDef] = None + +class CreateUserProfileRequestRequestTypeDef(BaseModel): + DomainId: str + UserProfileName: str + SingleSignOnUserIdentifier: Optional[str] = None + SingleSignOnUserValue: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + UserSettings: Optional[UserSettingsTypeDef] = None + +class UpdateDomainRequestRequestTypeDef(BaseModel): + DomainId: str + DefaultUserSettings: Optional[UserSettingsTypeDef] = None + DomainSettingsForUpdate: Optional[DomainSettingsForUpdateTypeDef] = None + AppSecurityGroupManagement: Optional[AppSecurityGroupManagementType] = None + DefaultSpaceSettings: Optional[DefaultSpaceSettingsTypeDef] = None + SubnetIds: Optional[Sequence[str]] = None + AppNetworkAccessType: Optional[AppNetworkAccessTypeType] = None + +class UpdateUserProfileRequestRequestTypeDef(BaseModel): + DomainId: str + UserProfileName: str + UserSettings: Optional[UserSettingsTypeDef] = None + +class DescribeInferenceComponentOutputTypeDef(BaseModel): + InferenceComponentName: str + InferenceComponentArn: str + EndpointName: str + EndpointArn: str + VariantName: str + FailureReason: str + Specification: InferenceComponentSpecificationSummaryTypeDef + RuntimeConfig: InferenceComponentRuntimeConfigSummaryTypeDef + CreationTime: datetime + LastModifiedTime: datetime + InferenceComponentStatus: InferenceComponentStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSpaceResponseTypeDef(BaseModel): + DomainId: str + SpaceArn: str + SpaceName: str + HomeEfsFileSystemUid: str + Status: SpaceStatusType + LastModifiedTime: datetime + CreationTime: datetime + FailureReason: str + SpaceSettings: SpaceSettingsOutputTypeDef + OwnershipSettings: OwnershipSettingsTypeDef + SpaceSharingSettings: SpaceSharingSettingsTypeDef + SpaceDisplayName: str + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class SpaceDetailsTypeDef(BaseModel): + DomainId: Optional[str] = None + SpaceName: Optional[str] = None + Status: Optional[SpaceStatusType] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + SpaceSettingsSummary: Optional[SpaceSettingsSummaryTypeDef] = None + SpaceSharingSettingsSummary: Optional[SpaceSharingSettingsSummaryTypeDef] = None + OwnershipSettingsSummary: Optional[OwnershipSettingsSummaryTypeDef] = None + SpaceDisplayName: Optional[str] = None + +class CreateSpaceRequestRequestTypeDef(BaseModel): + DomainId: str + SpaceName: str + Tags: Optional[Sequence[TagTypeDef]] = None + SpaceSettings: Optional[SpaceSettingsTypeDef] = None + OwnershipSettings: Optional[OwnershipSettingsTypeDef] = None + SpaceSharingSettings: Optional[SpaceSharingSettingsTypeDef] = None + SpaceDisplayName: Optional[str] = None + +class UpdateSpaceRequestRequestTypeDef(BaseModel): + DomainId: str + SpaceName: str + SpaceSettings: Optional[SpaceSettingsTypeDef] = None + SpaceDisplayName: Optional[str] = None + +class InferenceRecommendationsJobStepTypeDef(BaseModel): + StepType: Literal["BENCHMARK"] + JobName: str + Status: RecommendationJobStatusType + InferenceBenchmark: Optional[RecommendationJobInferenceBenchmarkTypeDef] = None + +class SearchRequestSearchPaginateTypeDef(BaseModel): + Resource: ResourceTypeType + SearchExpression: Optional[SearchExpressionTypeDef] = None + SortBy: Optional[str] = None + SortOrder: Optional[SearchSortOrderType] = None + CrossAccountFilterOption: Optional[CrossAccountFilterOptionType] = None + VisibilityConditions: Optional[Sequence[VisibilityConditionsTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociationsResponseTypeDef(BaseModel): + AssociationSummaries: List[AssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TrialTypeDef(BaseModel): + TrialName: Optional[str] = None + TrialArn: Optional[str] = None + DisplayName: Optional[str] = None + ExperimentName: Optional[str] = None + Source: Optional[TrialSourceTypeDef] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + TrialComponentSummaries: Optional[List[TrialComponentSimpleSummaryTypeDef]] = None + +class ListTrialComponentsResponseTypeDef(BaseModel): + TrialComponentSummaries: List[TrialComponentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class WorkteamTypeDef(BaseModel): + WorkteamName: str + MemberDefinitions: List[MemberDefinitionOutputTypeDef] + WorkteamArn: str + Description: str + WorkforceArn: Optional[str] = None + ProductListingIds: Optional[List[str]] = None + SubDomain: Optional[str] = None + CreateDate: Optional[datetime] = None + LastUpdatedDate: Optional[datetime] = None + NotificationConfiguration: Optional[NotificationConfigurationTypeDef] = None + WorkerAccessConfiguration: Optional[WorkerAccessConfigurationTypeDef] = None + +class TrainingSpecificationOutputTypeDef(BaseModel): + TrainingImage: str + SupportedTrainingInstanceTypes: List[TrainingInstanceTypeType] + TrainingChannels: List[ChannelSpecificationOutputTypeDef] + TrainingImageDigest: Optional[str] = None + SupportedHyperParameters: Optional[List[HyperParameterSpecificationOutputTypeDef]] = None + SupportsDistributedTraining: Optional[bool] = None + MetricDefinitions: Optional[List[MetricDefinitionTypeDef]] = None + SupportedTuningJobObjectiveMetrics: Optional[ List[HyperParameterTuningJobObjectiveTypeDef] ] = None + AdditionalS3DataSource: Optional[AdditionalS3DataSourceTypeDef] = None + +class TrainingSpecificationTypeDef(BaseModel): + TrainingImage: str + SupportedTrainingInstanceTypes: Sequence[TrainingInstanceTypeType] + TrainingChannels: Sequence[ChannelSpecificationTypeDef] + TrainingImageDigest: Optional[str] = None + SupportedHyperParameters: Optional[Sequence[HyperParameterSpecificationTypeDef]] = None + SupportsDistributedTraining: Optional[bool] = None + MetricDefinitions: Optional[Sequence[MetricDefinitionTypeDef]] = None + SupportedTuningJobObjectiveMetrics: Optional[ Sequence[HyperParameterTuningJobObjectiveTypeDef] ] = None + AdditionalS3DataSource: Optional[AdditionalS3DataSourceTypeDef] = None + +class ListAppImageConfigsResponseTypeDef(BaseModel): + AppImageConfigs: List[AppImageConfigDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class LabelingJobSummaryTypeDef(BaseModel): + LabelingJobName: str + LabelingJobArn: str + CreationTime: datetime + LastModifiedTime: datetime + LabelingJobStatus: LabelingJobStatusType + LabelCounters: LabelCountersTypeDef + WorkteamArn: str + PreHumanTaskLambdaArn: str + AnnotationConsolidationLambdaArn: Optional[str] = None + FailureReason: Optional[str] = None + LabelingJobOutput: Optional[LabelingJobOutputTypeDef] = None + InputConfig: Optional[LabelingJobInputConfigOutputTypeDef] = None + +class CreateWorkteamRequestRequestTypeDef(BaseModel): + WorkteamName: str + MemberDefinitions: Sequence[MemberDefinitionUnionTypeDef] + Description: str + WorkforceName: Optional[str] = None + NotificationConfiguration: Optional[NotificationConfigurationTypeDef] = None + WorkerAccessConfiguration: Optional[WorkerAccessConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateWorkteamRequestRequestTypeDef(BaseModel): + WorkteamName: str + MemberDefinitions: Optional[Sequence[MemberDefinitionUnionTypeDef]] = None + Description: Optional[str] = None + NotificationConfiguration: Optional[NotificationConfigurationTypeDef] = None + WorkerAccessConfiguration: Optional[WorkerAccessConfigurationTypeDef] = None + +class ScalingPolicyTypeDef(BaseModel): + TargetTracking: Optional[TargetTrackingScalingPolicyConfigurationTypeDef] = None + +class ContainerDefinitionExtraOutputTypeDef(BaseModel): + ContainerHostname: Optional[str] = None + Image: Optional[str] = None + ImageConfig: Optional[ImageConfigTypeDef] = None + Mode: Optional[ContainerModeType] = None + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + AdditionalModelDataSources: Optional[List[AdditionalModelDataSourceTypeDef]] = None + Environment: Optional[Dict[str, str]] = None + ModelPackageName: Optional[str] = None + InferenceSpecificationName: Optional[str] = None + MultiModelConfig: Optional[MultiModelConfigTypeDef] = None + +class ContainerDefinitionOutputTypeDef(BaseModel): + ContainerHostname: Optional[str] = None + Image: Optional[str] = None + ImageConfig: Optional[ImageConfigTypeDef] = None + Mode: Optional[ContainerModeType] = None + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + AdditionalModelDataSources: Optional[List[AdditionalModelDataSourceTypeDef]] = None + Environment: Optional[Dict[str, str]] = None + ModelPackageName: Optional[str] = None + InferenceSpecificationName: Optional[str] = None + MultiModelConfig: Optional[MultiModelConfigTypeDef] = None + +class ContainerDefinitionTypeDef(BaseModel): + ContainerHostname: Optional[str] = None + Image: Optional[str] = None + ImageConfig: Optional[ImageConfigTypeDef] = None + Mode: Optional[ContainerModeType] = None + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + AdditionalModelDataSources: Optional[Sequence[AdditionalModelDataSourceTypeDef]] = None + Environment: Optional[Mapping[str, str]] = None + ModelPackageName: Optional[str] = None + InferenceSpecificationName: Optional[str] = None + MultiModelConfig: Optional[MultiModelConfigTypeDef] = None + +class ModelPackageContainerDefinitionExtraOutputTypeDef(BaseModel): + Image: str + ContainerHostname: Optional[str] = None + ImageDigest: Optional[str] = None + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + ProductId: Optional[str] = None + Environment: Optional[Dict[str, str]] = None + ModelInput: Optional[ModelInputTypeDef] = None + Framework: Optional[str] = None + FrameworkVersion: Optional[str] = None + NearestModelName: Optional[str] = None + AdditionalS3DataSource: Optional[AdditionalS3DataSourceTypeDef] = None + +class ModelPackageContainerDefinitionOutputTypeDef(BaseModel): + Image: str + ContainerHostname: Optional[str] = None + ImageDigest: Optional[str] = None + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + ProductId: Optional[str] = None + Environment: Optional[Dict[str, str]] = None + ModelInput: Optional[ModelInputTypeDef] = None + Framework: Optional[str] = None + FrameworkVersion: Optional[str] = None + NearestModelName: Optional[str] = None + AdditionalS3DataSource: Optional[AdditionalS3DataSourceTypeDef] = None + +class ModelPackageContainerDefinitionTypeDef(BaseModel): + Image: str + ContainerHostname: Optional[str] = None + ImageDigest: Optional[str] = None + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + ProductId: Optional[str] = None + Environment: Optional[Mapping[str, str]] = None + ModelInput: Optional[ModelInputTypeDef] = None + Framework: Optional[str] = None + FrameworkVersion: Optional[str] = None + NearestModelName: Optional[str] = None + AdditionalS3DataSource: Optional[AdditionalS3DataSourceTypeDef] = None + +class SourceAlgorithmTypeDef(BaseModel): + AlgorithmName: str + ModelDataUrl: Optional[str] = None + ModelDataSource: Optional[ModelDataSourceTypeDef] = None + +class ListMonitoringAlertsResponseTypeDef(BaseModel): + MonitoringAlertSummaries: List[MonitoringAlertSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInferenceExperimentResponseTypeDef(BaseModel): + Arn: str + Name: str + Type: Literal["ShadowMode"] + Schedule: InferenceExperimentScheduleOutputTypeDef + Status: InferenceExperimentStatusType + StatusReason: str + Description: str + CreationTime: datetime + CompletionTime: datetime + LastModifiedTime: datetime + RoleArn: str + EndpointMetadata: EndpointMetadataTypeDef + ModelVariants: List[ModelVariantConfigSummaryTypeDef] + DataStorageConfig: InferenceExperimentDataStorageConfigOutputTypeDef + ShadowModeConfig: ShadowModeConfigOutputTypeDef + KmsKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInferenceExperimentRequestRequestTypeDef(BaseModel): + Name: str + Type: Literal["ShadowMode"] + RoleArn: str + EndpointName: str + ModelVariants: Sequence[ModelVariantConfigTypeDef] + ShadowModeConfig: ShadowModeConfigTypeDef + Schedule: Optional[InferenceExperimentScheduleTypeDef] = None + Description: Optional[str] = None + DataStorageConfig: Optional[InferenceExperimentDataStorageConfigTypeDef] = None + KmsKey: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StopInferenceExperimentRequestRequestTypeDef(BaseModel): + Name: str + ModelVariantActions: Mapping[str, ModelVariantActionType] + DesiredModelVariants: Optional[Sequence[ModelVariantConfigTypeDef]] = None + DesiredState: Optional[InferenceExperimentStopDesiredStateType] = None + Reason: Optional[str] = None + +class UpdateInferenceExperimentRequestRequestTypeDef(BaseModel): + Name: str + Schedule: Optional[InferenceExperimentScheduleTypeDef] = None + Description: Optional[str] = None + ModelVariants: Optional[Sequence[ModelVariantConfigTypeDef]] = None + DataStorageConfig: Optional[InferenceExperimentDataStorageConfigTypeDef] = None + ShadowModeConfig: Optional[ShadowModeConfigTypeDef] = None + +class MonitoringInputExtraOutputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputExtraOutputTypeDef] = None + +class DataQualityJobInputOutputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputOutputTypeDef] = None + +class ModelBiasJobInputOutputTypeDef(BaseModel): + GroundTruthS3Input: MonitoringGroundTruthS3InputTypeDef + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputOutputTypeDef] = None + +class ModelExplainabilityJobInputOutputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputOutputTypeDef] = None + +class ModelQualityJobInputOutputTypeDef(BaseModel): + GroundTruthS3Input: MonitoringGroundTruthS3InputTypeDef + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputOutputTypeDef] = None + +class MonitoringInputOutputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputOutputTypeDef] = None + +class DataQualityJobInputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputTypeDef] = None + +class ModelBiasJobInputTypeDef(BaseModel): + GroundTruthS3Input: MonitoringGroundTruthS3InputTypeDef + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputTypeDef] = None + +class ModelExplainabilityJobInputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputTypeDef] = None + +class ModelQualityJobInputTypeDef(BaseModel): + GroundTruthS3Input: MonitoringGroundTruthS3InputTypeDef + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputTypeDef] = None + +class MonitoringInputTypeDef(BaseModel): + EndpointInput: Optional[EndpointInputTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputTypeDef] = None + +class CreateOptimizationJobRequestRequestTypeDef(BaseModel): + OptimizationJobName: str + RoleArn: str + ModelSource: OptimizationJobModelSourceTypeDef + DeploymentInstanceType: OptimizationJobDeploymentInstanceTypeType + OptimizationConfigs: Sequence[OptimizationConfigUnionTypeDef] + OutputConfig: OptimizationJobOutputConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + OptimizationEnvironment: Optional[Mapping[str, str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + VpcConfig: Optional[OptimizationVpcConfigTypeDef] = None + +class DescribeOptimizationJobResponseTypeDef(BaseModel): + OptimizationJobArn: str + OptimizationJobStatus: OptimizationJobStatusType + OptimizationStartTime: datetime + OptimizationEndTime: datetime + CreationTime: datetime + LastModifiedTime: datetime + FailureReason: str + OptimizationJobName: str + ModelSource: OptimizationJobModelSourceTypeDef + OptimizationEnvironment: Dict[str, str] + DeploymentInstanceType: OptimizationJobDeploymentInstanceTypeType + OptimizationConfigs: List[OptimizationConfigOutputTypeDef] + OutputConfig: OptimizationJobOutputConfigTypeDef + OptimizationOutput: OptimizationOutputTypeDef + RoleArn: str + StoppingCondition: StoppingConditionTypeDef + VpcConfig: OptimizationVpcConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProcessingJobResponseTypeDef(BaseModel): + ProcessingInputs: List[ProcessingInputTypeDef] + ProcessingOutputConfig: ProcessingOutputConfigOutputTypeDef + ProcessingJobName: str + ProcessingResources: ProcessingResourcesTypeDef + StoppingCondition: ProcessingStoppingConditionTypeDef + AppSpecification: AppSpecificationOutputTypeDef + Environment: Dict[str, str] + NetworkConfig: NetworkConfigOutputTypeDef + RoleArn: str + ExperimentConfig: ExperimentConfigTypeDef + ProcessingJobArn: str + ProcessingJobStatus: ProcessingJobStatusType + ExitMessage: str + FailureReason: str + ProcessingEndTime: datetime + ProcessingStartTime: datetime + LastModifiedTime: datetime + CreationTime: datetime + MonitoringScheduleArn: str + AutoMLJobArn: str + TrainingJobArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProcessingJobTypeDef(BaseModel): + ProcessingInputs: Optional[List[ProcessingInputTypeDef]] = None + ProcessingOutputConfig: Optional[ProcessingOutputConfigOutputTypeDef] = None + ProcessingJobName: Optional[str] = None + ProcessingResources: Optional[ProcessingResourcesTypeDef] = None + StoppingCondition: Optional[ProcessingStoppingConditionTypeDef] = None + AppSpecification: Optional[AppSpecificationOutputTypeDef] = None + Environment: Optional[Dict[str, str]] = None + NetworkConfig: Optional[NetworkConfigOutputTypeDef] = None + RoleArn: Optional[str] = None + ExperimentConfig: Optional[ExperimentConfigTypeDef] = None + ProcessingJobArn: Optional[str] = None + ProcessingJobStatus: Optional[ProcessingJobStatusType] = None + ExitMessage: Optional[str] = None + FailureReason: Optional[str] = None + ProcessingEndTime: Optional[datetime] = None + ProcessingStartTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + MonitoringScheduleArn: Optional[str] = None + AutoMLJobArn: Optional[str] = None + TrainingJobArn: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateProcessingJobRequestRequestTypeDef(BaseModel): + ProcessingJobName: str + ProcessingResources: ProcessingResourcesTypeDef + AppSpecification: AppSpecificationTypeDef + RoleArn: str + ProcessingInputs: Optional[Sequence[ProcessingInputTypeDef]] = None + ProcessingOutputConfig: Optional[ProcessingOutputConfigTypeDef] = None + StoppingCondition: Optional[ProcessingStoppingConditionTypeDef] = None + Environment: Optional[Mapping[str, str]] = None + NetworkConfig: Optional[NetworkConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ExperimentConfig: Optional[ExperimentConfigTypeDef] = None + +class DescribeFlowDefinitionResponseTypeDef(BaseModel): + FlowDefinitionArn: str + FlowDefinitionName: str + FlowDefinitionStatus: FlowDefinitionStatusType + CreationTime: datetime + HumanLoopRequestSource: HumanLoopRequestSourceTypeDef + HumanLoopActivationConfig: HumanLoopActivationConfigTypeDef + HumanLoopConfig: HumanLoopConfigOutputTypeDef + OutputConfig: FlowDefinitionOutputConfigTypeDef + RoleArn: str + FailureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFlowDefinitionRequestRequestTypeDef(BaseModel): + FlowDefinitionName: str + OutputConfig: FlowDefinitionOutputConfigTypeDef + RoleArn: str + HumanLoopRequestSource: Optional[HumanLoopRequestSourceTypeDef] = None + HumanLoopActivationConfig: Optional[HumanLoopActivationConfigTypeDef] = None + HumanLoopConfig: Optional[HumanLoopConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeLabelingJobResponseTypeDef(BaseModel): + LabelingJobStatus: LabelingJobStatusType + LabelCounters: LabelCountersTypeDef + FailureReason: str + CreationTime: datetime + LastModifiedTime: datetime + JobReferenceCode: str + LabelingJobName: str + LabelingJobArn: str + LabelAttributeName: str + InputConfig: LabelingJobInputConfigOutputTypeDef + OutputConfig: LabelingJobOutputConfigTypeDef + RoleArn: str + LabelCategoryConfigS3Uri: str + StoppingConditions: LabelingJobStoppingConditionsTypeDef + LabelingJobAlgorithmsConfig: LabelingJobAlgorithmsConfigOutputTypeDef + HumanTaskConfig: HumanTaskConfigOutputTypeDef + Tags: List[TagTypeDef] + LabelingJobOutput: LabelingJobOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLabelingJobRequestRequestTypeDef(BaseModel): + LabelingJobName: str + LabelAttributeName: str + InputConfig: LabelingJobInputConfigTypeDef + OutputConfig: LabelingJobOutputConfigTypeDef + RoleArn: str + HumanTaskConfig: HumanTaskConfigTypeDef + LabelCategoryConfigS3Uri: Optional[str] = None + StoppingConditions: Optional[LabelingJobStoppingConditionsTypeDef] = None + LabelingJobAlgorithmsConfig: Optional[LabelingJobAlgorithmsConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeTrainingJobResponseTypeDef(BaseModel): + TrainingJobName: str + TrainingJobArn: str + TuningJobArn: str + LabelingJobArn: str + AutoMLJobArn: str + ModelArtifacts: ModelArtifactsTypeDef + TrainingJobStatus: TrainingJobStatusType + SecondaryStatus: SecondaryStatusType + FailureReason: str + HyperParameters: Dict[str, str] + AlgorithmSpecification: AlgorithmSpecificationOutputTypeDef + RoleArn: str + InputDataConfig: List[ChannelOutputTypeDef] + OutputDataConfig: OutputDataConfigTypeDef + ResourceConfig: ResourceConfigOutputTypeDef + WarmPoolStatus: WarmPoolStatusTypeDef + VpcConfig: VpcConfigOutputTypeDef + StoppingCondition: StoppingConditionTypeDef + CreationTime: datetime + TrainingStartTime: datetime + TrainingEndTime: datetime + LastModifiedTime: datetime + SecondaryStatusTransitions: List[SecondaryStatusTransitionTypeDef] + FinalMetricDataList: List[MetricDataTypeDef] + EnableNetworkIsolation: bool + EnableInterContainerTrafficEncryption: bool + EnableManagedSpotTraining: bool + CheckpointConfig: CheckpointConfigTypeDef + TrainingTimeInSeconds: int + BillableTimeInSeconds: int + DebugHookConfig: DebugHookConfigOutputTypeDef + ExperimentConfig: ExperimentConfigTypeDef + DebugRuleConfigurations: List[DebugRuleConfigurationOutputTypeDef] + TensorBoardOutputConfig: TensorBoardOutputConfigTypeDef + DebugRuleEvaluationStatuses: List[DebugRuleEvaluationStatusTypeDef] + ProfilerConfig: ProfilerConfigOutputTypeDef + ProfilerRuleConfigurations: List[ProfilerRuleConfigurationOutputTypeDef] + ProfilerRuleEvaluationStatuses: List[ProfilerRuleEvaluationStatusTypeDef] + ProfilingStatus: ProfilingStatusType + Environment: Dict[str, str] + RetryStrategy: RetryStrategyTypeDef + RemoteDebugConfig: RemoteDebugConfigTypeDef + InfraCheckConfig: InfraCheckConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TrainingJobTypeDef(BaseModel): + TrainingJobName: Optional[str] = None + TrainingJobArn: Optional[str] = None + TuningJobArn: Optional[str] = None + LabelingJobArn: Optional[str] = None + AutoMLJobArn: Optional[str] = None + ModelArtifacts: Optional[ModelArtifactsTypeDef] = None + TrainingJobStatus: Optional[TrainingJobStatusType] = None + SecondaryStatus: Optional[SecondaryStatusType] = None + FailureReason: Optional[str] = None + HyperParameters: Optional[Dict[str, str]] = None + AlgorithmSpecification: Optional[AlgorithmSpecificationOutputTypeDef] = None + RoleArn: Optional[str] = None + InputDataConfig: Optional[List[ChannelOutputTypeDef]] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + ResourceConfig: Optional[ResourceConfigOutputTypeDef] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + StoppingCondition: Optional[StoppingConditionTypeDef] = None + CreationTime: Optional[datetime] = None + TrainingStartTime: Optional[datetime] = None + TrainingEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + SecondaryStatusTransitions: Optional[List[SecondaryStatusTransitionTypeDef]] = None + FinalMetricDataList: Optional[List[MetricDataTypeDef]] = None + EnableNetworkIsolation: Optional[bool] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableManagedSpotTraining: Optional[bool] = None + CheckpointConfig: Optional[CheckpointConfigTypeDef] = None + TrainingTimeInSeconds: Optional[int] = None + BillableTimeInSeconds: Optional[int] = None + DebugHookConfig: Optional[DebugHookConfigOutputTypeDef] = None + ExperimentConfig: Optional[ExperimentConfigTypeDef] = None + DebugRuleConfigurations: Optional[List[DebugRuleConfigurationOutputTypeDef]] = None + TensorBoardOutputConfig: Optional[TensorBoardOutputConfigTypeDef] = None + DebugRuleEvaluationStatuses: Optional[List[DebugRuleEvaluationStatusTypeDef]] = None + ProfilerConfig: Optional[ProfilerConfigOutputTypeDef] = None + Environment: Optional[Dict[str, str]] = None + RetryStrategy: Optional[RetryStrategyTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateTransformJobRequestRequestTypeDef(BaseModel): + TransformJobName: str + ModelName: str + TransformInput: TransformInputTypeDef + TransformOutput: TransformOutputTypeDef + TransformResources: TransformResourcesTypeDef + MaxConcurrentTransforms: Optional[int] = None + ModelClientConfig: Optional[ModelClientConfigTypeDef] = None + MaxPayloadInMB: Optional[int] = None + BatchStrategy: Optional[BatchStrategyType] = None + Environment: Optional[Mapping[str, str]] = None + DataCaptureConfig: Optional[BatchDataCaptureConfigTypeDef] = None + DataProcessing: Optional[DataProcessingTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ExperimentConfig: Optional[ExperimentConfigTypeDef] = None + +class DescribeTransformJobResponseTypeDef(BaseModel): + TransformJobName: str + TransformJobArn: str + TransformJobStatus: TransformJobStatusType + FailureReason: str + ModelName: str + MaxConcurrentTransforms: int + ModelClientConfig: ModelClientConfigTypeDef + MaxPayloadInMB: int + BatchStrategy: BatchStrategyType + Environment: Dict[str, str] + TransformInput: TransformInputTypeDef + TransformOutput: TransformOutputTypeDef + DataCaptureConfig: BatchDataCaptureConfigTypeDef + TransformResources: TransformResourcesTypeDef + CreationTime: datetime + TransformStartTime: datetime + TransformEndTime: datetime + LabelingJobArn: str + AutoMLJobArn: str + DataProcessing: DataProcessingTypeDef + ExperimentConfig: ExperimentConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TransformJobDefinitionExtraOutputTypeDef(BaseModel): + TransformInput: TransformInputTypeDef + TransformOutput: TransformOutputTypeDef + TransformResources: TransformResourcesTypeDef + MaxConcurrentTransforms: Optional[int] = None + MaxPayloadInMB: Optional[int] = None + BatchStrategy: Optional[BatchStrategyType] = None + Environment: Optional[Dict[str, str]] = None + +class TransformJobDefinitionOutputTypeDef(BaseModel): + TransformInput: TransformInputTypeDef + TransformOutput: TransformOutputTypeDef + TransformResources: TransformResourcesTypeDef + MaxConcurrentTransforms: Optional[int] = None + MaxPayloadInMB: Optional[int] = None + BatchStrategy: Optional[BatchStrategyType] = None + Environment: Optional[Dict[str, str]] = None + +class TransformJobDefinitionTypeDef(BaseModel): + TransformInput: TransformInputTypeDef + TransformOutput: TransformOutputTypeDef + TransformResources: TransformResourcesTypeDef + MaxConcurrentTransforms: Optional[int] = None + MaxPayloadInMB: Optional[int] = None + BatchStrategy: Optional[BatchStrategyType] = None + Environment: Optional[Mapping[str, str]] = None + +class TransformJobTypeDef(BaseModel): + TransformJobName: Optional[str] = None + TransformJobArn: Optional[str] = None + TransformJobStatus: Optional[TransformJobStatusType] = None + FailureReason: Optional[str] = None + ModelName: Optional[str] = None + MaxConcurrentTransforms: Optional[int] = None + ModelClientConfig: Optional[ModelClientConfigTypeDef] = None + MaxPayloadInMB: Optional[int] = None + BatchStrategy: Optional[BatchStrategyType] = None + Environment: Optional[Dict[str, str]] = None + TransformInput: Optional[TransformInputTypeDef] = None + TransformOutput: Optional[TransformOutputTypeDef] = None + DataCaptureConfig: Optional[BatchDataCaptureConfigTypeDef] = None + TransformResources: Optional[TransformResourcesTypeDef] = None + CreationTime: Optional[datetime] = None + TransformStartTime: Optional[datetime] = None + TransformEndTime: Optional[datetime] = None + LabelingJobArn: Optional[str] = None + AutoMLJobArn: Optional[str] = None + DataProcessing: Optional[DataProcessingTypeDef] = None + ExperimentConfig: Optional[ExperimentConfigTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribeAutoMLJobV2ResponseTypeDef(BaseModel): + AutoMLJobName: str + AutoMLJobArn: str + AutoMLJobInputDataConfig: List[AutoMLJobChannelTypeDef] + OutputDataConfig: AutoMLOutputDataConfigTypeDef + RoleArn: str + AutoMLJobObjective: AutoMLJobObjectiveTypeDef + AutoMLProblemTypeConfig: AutoMLProblemTypeConfigOutputTypeDef + AutoMLProblemTypeConfigName: AutoMLProblemTypeConfigNameType + CreationTime: datetime + EndTime: datetime + LastModifiedTime: datetime + FailureReason: str + PartialFailureReasons: List[AutoMLPartialFailureReasonTypeDef] + BestCandidate: AutoMLCandidateTypeDef + AutoMLJobStatus: AutoMLJobStatusType + AutoMLJobSecondaryStatus: AutoMLJobSecondaryStatusType + AutoMLJobArtifacts: AutoMLJobArtifactsTypeDef + ResolvedAttributes: AutoMLResolvedAttributesTypeDef + ModelDeployConfig: ModelDeployConfigTypeDef + ModelDeployResult: ModelDeployResultTypeDef + DataSplitConfig: AutoMLDataSplitConfigTypeDef + SecurityConfig: AutoMLSecurityConfigOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAutoMLJobV2RequestRequestTypeDef(BaseModel): + AutoMLJobName: str + AutoMLJobInputDataConfig: Sequence[AutoMLJobChannelTypeDef] + OutputDataConfig: AutoMLOutputDataConfigTypeDef + AutoMLProblemTypeConfig: AutoMLProblemTypeConfigTypeDef + RoleArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + SecurityConfig: Optional[AutoMLSecurityConfigTypeDef] = None + AutoMLJobObjective: Optional[AutoMLJobObjectiveTypeDef] = None + ModelDeployConfig: Optional[ModelDeployConfigTypeDef] = None + DataSplitConfig: Optional[AutoMLDataSplitConfigTypeDef] = None + +class ListPipelineExecutionStepsResponseTypeDef(BaseModel): + PipelineExecutionSteps: List[PipelineExecutionStepTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateEndpointInputRequestTypeDef(BaseModel): + EndpointName: str + EndpointConfigName: str + DeploymentConfig: Optional[DeploymentConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateEndpointInputRequestTypeDef(BaseModel): + EndpointName: str + EndpointConfigName: str + RetainAllVariantProperties: Optional[bool] = None + ExcludeRetainedVariantProperties: Optional[Sequence[VariantPropertyTypeDef]] = None + DeploymentConfig: Optional[DeploymentConfigTypeDef] = None + RetainDeploymentConfig: Optional[bool] = None + +class DescribeInferenceRecommendationsJobResponseTypeDef(BaseModel): + JobName: str + JobDescription: str + JobType: RecommendationJobTypeType + JobArn: str + RoleArn: str + Status: RecommendationJobStatusType + CreationTime: datetime + CompletionTime: datetime + LastModifiedTime: datetime + FailureReason: str + InputConfig: RecommendationJobInputConfigOutputTypeDef + StoppingConditions: RecommendationJobStoppingConditionsOutputTypeDef + InferenceRecommendations: List[InferenceRecommendationTypeDef] + EndpointPerformances: List[EndpointPerformanceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInferenceRecommendationsJobRequestRequestTypeDef(BaseModel): + JobName: str + JobType: RecommendationJobTypeType + RoleArn: str + InputConfig: RecommendationJobInputConfigTypeDef + JobDescription: Optional[str] = None + StoppingConditions: Optional[RecommendationJobStoppingConditionsTypeDef] = None + OutputConfig: Optional[RecommendationJobOutputConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeEndpointConfigOutputTypeDef(BaseModel): + EndpointConfigName: str + EndpointConfigArn: str + ProductionVariants: List[ProductionVariantTypeDef] + DataCaptureConfig: DataCaptureConfigOutputTypeDef + KmsKeyId: str + CreationTime: datetime + AsyncInferenceConfig: AsyncInferenceConfigOutputTypeDef + ExplainerConfig: ExplainerConfigOutputTypeDef + ShadowProductionVariants: List[ProductionVariantTypeDef] + ExecutionRoleArn: str + VpcConfig: VpcConfigOutputTypeDef + EnableNetworkIsolation: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEndpointOutputTypeDef(BaseModel): + EndpointName: str + EndpointArn: str + EndpointConfigName: str + ProductionVariants: List[ProductionVariantSummaryTypeDef] + DataCaptureConfig: DataCaptureConfigSummaryTypeDef + EndpointStatus: EndpointStatusType + FailureReason: str + CreationTime: datetime + LastModifiedTime: datetime + LastDeploymentConfig: DeploymentConfigOutputTypeDef + AsyncInferenceConfig: AsyncInferenceConfigOutputTypeDef + PendingDeploymentSummary: PendingDeploymentSummaryTypeDef + ExplainerConfig: ExplainerConfigOutputTypeDef + ShadowProductionVariants: List[ProductionVariantSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointConfigInputRequestTypeDef(BaseModel): + EndpointConfigName: str + ProductionVariants: Sequence[ProductionVariantTypeDef] + DataCaptureConfig: Optional[DataCaptureConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + AsyncInferenceConfig: Optional[AsyncInferenceConfigTypeDef] = None + ExplainerConfig: Optional[ExplainerConfigTypeDef] = None + ShadowProductionVariants: Optional[Sequence[ProductionVariantTypeDef]] = None + ExecutionRoleArn: Optional[str] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + EnableNetworkIsolation: Optional[bool] = None + +class DescribeHyperParameterTuningJobResponseTypeDef(BaseModel): + HyperParameterTuningJobName: str + HyperParameterTuningJobArn: str + HyperParameterTuningJobConfig: HyperParameterTuningJobConfigOutputTypeDef + TrainingJobDefinition: HyperParameterTrainingJobDefinitionOutputTypeDef + TrainingJobDefinitions: List[HyperParameterTrainingJobDefinitionOutputTypeDef] + HyperParameterTuningJobStatus: HyperParameterTuningJobStatusType + CreationTime: datetime + HyperParameterTuningEndTime: datetime + LastModifiedTime: datetime + TrainingJobStatusCounters: TrainingJobStatusCountersTypeDef + ObjectiveStatusCounters: ObjectiveStatusCountersTypeDef + BestTrainingJob: HyperParameterTrainingJobSummaryTypeDef + OverallBestTrainingJob: HyperParameterTrainingJobSummaryTypeDef + WarmStartConfig: HyperParameterTuningJobWarmStartConfigOutputTypeDef + Autotune: AutotuneTypeDef + FailureReason: str + TuningJobCompletionDetails: HyperParameterTuningJobCompletionDetailsTypeDef + ConsumedResources: HyperParameterTuningJobConsumedResourcesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HyperParameterTuningJobSearchEntityTypeDef(BaseModel): + HyperParameterTuningJobName: Optional[str] = None + HyperParameterTuningJobArn: Optional[str] = None + HyperParameterTuningJobConfig: Optional[HyperParameterTuningJobConfigOutputTypeDef] = None + TrainingJobDefinition: Optional[HyperParameterTrainingJobDefinitionOutputTypeDef] = None + TrainingJobDefinitions: Optional[ List[HyperParameterTrainingJobDefinitionOutputTypeDef] ] = None + HyperParameterTuningJobStatus: Optional[HyperParameterTuningJobStatusType] = None + CreationTime: Optional[datetime] = None + HyperParameterTuningEndTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + TrainingJobStatusCounters: Optional[TrainingJobStatusCountersTypeDef] = None + ObjectiveStatusCounters: Optional[ObjectiveStatusCountersTypeDef] = None + BestTrainingJob: Optional[HyperParameterTrainingJobSummaryTypeDef] = None + OverallBestTrainingJob: Optional[HyperParameterTrainingJobSummaryTypeDef] = None + WarmStartConfig: Optional[HyperParameterTuningJobWarmStartConfigOutputTypeDef] = None + FailureReason: Optional[str] = None + TuningJobCompletionDetails: Optional[HyperParameterTuningJobCompletionDetailsTypeDef] = None + ConsumedResources: Optional[HyperParameterTuningJobConsumedResourcesTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateTrainingJobRequestRequestTypeDef(BaseModel): + TrainingJobName: str + AlgorithmSpecification: AlgorithmSpecificationTypeDef + RoleArn: str + OutputDataConfig: OutputDataConfigTypeDef + ResourceConfig: ResourceConfigTypeDef + StoppingCondition: StoppingConditionTypeDef + HyperParameters: Optional[Mapping[str, str]] = None + InputDataConfig: Optional[Sequence[ChannelUnionTypeDef]] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + EnableNetworkIsolation: Optional[bool] = None + EnableInterContainerTrafficEncryption: Optional[bool] = None + EnableManagedSpotTraining: Optional[bool] = None + CheckpointConfig: Optional[CheckpointConfigTypeDef] = None + DebugHookConfig: Optional[DebugHookConfigTypeDef] = None + DebugRuleConfigurations: Optional[Sequence[DebugRuleConfigurationUnionTypeDef]] = None + TensorBoardOutputConfig: Optional[TensorBoardOutputConfigTypeDef] = None + ExperimentConfig: Optional[ExperimentConfigTypeDef] = None + ProfilerConfig: Optional[ProfilerConfigTypeDef] = None + ProfilerRuleConfigurations: Optional[Sequence[ProfilerRuleConfigurationUnionTypeDef]] = None + Environment: Optional[Mapping[str, str]] = None + RetryStrategy: Optional[RetryStrategyTypeDef] = None + RemoteDebugConfig: Optional[RemoteDebugConfigTypeDef] = None + InfraCheckConfig: Optional[InfraCheckConfigTypeDef] = None + SessionChainingConfig: Optional[SessionChainingConfigTypeDef] = None + +class ListSpacesResponseTypeDef(BaseModel): + Spaces: List[SpaceDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListInferenceRecommendationsJobStepsResponseTypeDef(BaseModel): + Steps: List[InferenceRecommendationsJobStepTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeWorkteamResponseTypeDef(BaseModel): + Workteam: WorkteamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkteamsResponseTypeDef(BaseModel): + Workteams: List[WorkteamTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateWorkteamResponseTypeDef(BaseModel): + Workteam: WorkteamTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLabelingJobsResponseTypeDef(BaseModel): + LabelingJobSummaryList: List[LabelingJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DynamicScalingConfigurationTypeDef(BaseModel): + MinCapacity: Optional[int] = None + MaxCapacity: Optional[int] = None + ScaleInCooldown: Optional[int] = None + ScaleOutCooldown: Optional[int] = None + ScalingPolicies: Optional[List[ScalingPolicyTypeDef]] = None + +class DescribeModelOutputTypeDef(BaseModel): + ModelName: str + PrimaryContainer: ContainerDefinitionOutputTypeDef + Containers: List[ContainerDefinitionOutputTypeDef] + InferenceExecutionConfig: InferenceExecutionConfigTypeDef + ExecutionRoleArn: str + VpcConfig: VpcConfigOutputTypeDef + CreationTime: datetime + ModelArn: str + EnableNetworkIsolation: bool + DeploymentRecommendation: DeploymentRecommendationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModelTypeDef(BaseModel): + ModelName: Optional[str] = None + PrimaryContainer: Optional[ContainerDefinitionOutputTypeDef] = None + Containers: Optional[List[ContainerDefinitionOutputTypeDef]] = None + InferenceExecutionConfig: Optional[InferenceExecutionConfigTypeDef] = None + ExecutionRoleArn: Optional[str] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + CreationTime: Optional[datetime] = None + ModelArn: Optional[str] = None + EnableNetworkIsolation: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + DeploymentRecommendation: Optional[DeploymentRecommendationTypeDef] = None + +class AdditionalInferenceSpecificationDefinitionExtraOutputTypeDef(BaseModel): + Name: str + Containers: List[ModelPackageContainerDefinitionExtraOutputTypeDef] + Description: Optional[str] = None + SupportedTransformInstanceTypes: Optional[List[TransformInstanceTypeType]] = None + SupportedRealtimeInferenceInstanceTypes: Optional[ List[ProductionVariantInstanceTypeType] ] = None + SupportedContentTypes: Optional[List[str]] = None + SupportedResponseMIMETypes: Optional[List[str]] = None + +class InferenceSpecificationExtraOutputTypeDef(BaseModel): + Containers: List[ModelPackageContainerDefinitionExtraOutputTypeDef] + SupportedTransformInstanceTypes: Optional[List[TransformInstanceTypeType]] = None + SupportedRealtimeInferenceInstanceTypes: Optional[ List[ProductionVariantInstanceTypeType] ] = None + SupportedContentTypes: Optional[List[str]] = None + SupportedResponseMIMETypes: Optional[List[str]] = None + +class AdditionalInferenceSpecificationDefinitionOutputTypeDef(BaseModel): + Name: str + Containers: List[ModelPackageContainerDefinitionOutputTypeDef] + Description: Optional[str] = None + SupportedTransformInstanceTypes: Optional[List[TransformInstanceTypeType]] = None + SupportedRealtimeInferenceInstanceTypes: Optional[ List[ProductionVariantInstanceTypeType] ] = None + SupportedContentTypes: Optional[List[str]] = None + SupportedResponseMIMETypes: Optional[List[str]] = None + +class InferenceSpecificationOutputTypeDef(BaseModel): + Containers: List[ModelPackageContainerDefinitionOutputTypeDef] + SupportedTransformInstanceTypes: Optional[List[TransformInstanceTypeType]] = None + SupportedRealtimeInferenceInstanceTypes: Optional[ List[ProductionVariantInstanceTypeType] ] = None + SupportedContentTypes: Optional[List[str]] = None + SupportedResponseMIMETypes: Optional[List[str]] = None + +class AdditionalInferenceSpecificationDefinitionTypeDef(BaseModel): + Name: str + Containers: Sequence[ModelPackageContainerDefinitionTypeDef] + Description: Optional[str] = None + SupportedTransformInstanceTypes: Optional[Sequence[TransformInstanceTypeType]] = None + SupportedRealtimeInferenceInstanceTypes: Optional[ Sequence[ProductionVariantInstanceTypeType] ] = None + SupportedContentTypes: Optional[Sequence[str]] = None + SupportedResponseMIMETypes: Optional[Sequence[str]] = None + +class InferenceSpecificationTypeDef(BaseModel): + Containers: Sequence[ModelPackageContainerDefinitionTypeDef] + SupportedTransformInstanceTypes: Optional[Sequence[TransformInstanceTypeType]] = None + SupportedRealtimeInferenceInstanceTypes: Optional[ Sequence[ProductionVariantInstanceTypeType] ] = None + SupportedContentTypes: Optional[Sequence[str]] = None + SupportedResponseMIMETypes: Optional[Sequence[str]] = None + +class SourceAlgorithmSpecificationExtraOutputTypeDef(BaseModel): + SourceAlgorithms: List[SourceAlgorithmTypeDef] + +class SourceAlgorithmSpecificationOutputTypeDef(BaseModel): + SourceAlgorithms: List[SourceAlgorithmTypeDef] + +class SourceAlgorithmSpecificationTypeDef(BaseModel): + SourceAlgorithms: Sequence[SourceAlgorithmTypeDef] + +class MonitoringJobDefinitionExtraOutputTypeDef(BaseModel): + MonitoringInputs: List[MonitoringInputExtraOutputTypeDef] + MonitoringOutputConfig: MonitoringOutputConfigExtraOutputTypeDef + MonitoringResources: MonitoringResourcesTypeDef + MonitoringAppSpecification: MonitoringAppSpecificationExtraOutputTypeDef + RoleArn: str + BaselineConfig: Optional[MonitoringBaselineConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Environment: Optional[Dict[str, str]] = None + NetworkConfig: Optional[NetworkConfigExtraOutputTypeDef] = None + +class DescribeDataQualityJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + JobDefinitionName: str + CreationTime: datetime + DataQualityBaselineConfig: DataQualityBaselineConfigTypeDef + DataQualityAppSpecification: DataQualityAppSpecificationOutputTypeDef + DataQualityJobInput: DataQualityJobInputOutputTypeDef + DataQualityJobOutputConfig: MonitoringOutputConfigOutputTypeDef + JobResources: MonitoringResourcesTypeDef + NetworkConfig: MonitoringNetworkConfigOutputTypeDef + RoleArn: str + StoppingCondition: MonitoringStoppingConditionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelBiasJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + JobDefinitionName: str + CreationTime: datetime + ModelBiasBaselineConfig: ModelBiasBaselineConfigTypeDef + ModelBiasAppSpecification: ModelBiasAppSpecificationOutputTypeDef + ModelBiasJobInput: ModelBiasJobInputOutputTypeDef + ModelBiasJobOutputConfig: MonitoringOutputConfigOutputTypeDef + JobResources: MonitoringResourcesTypeDef + NetworkConfig: MonitoringNetworkConfigOutputTypeDef + RoleArn: str + StoppingCondition: MonitoringStoppingConditionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelExplainabilityJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + JobDefinitionName: str + CreationTime: datetime + ModelExplainabilityBaselineConfig: ModelExplainabilityBaselineConfigTypeDef + ModelExplainabilityAppSpecification: ModelExplainabilityAppSpecificationOutputTypeDef + ModelExplainabilityJobInput: ModelExplainabilityJobInputOutputTypeDef + ModelExplainabilityJobOutputConfig: MonitoringOutputConfigOutputTypeDef + JobResources: MonitoringResourcesTypeDef + NetworkConfig: MonitoringNetworkConfigOutputTypeDef + RoleArn: str + StoppingCondition: MonitoringStoppingConditionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelQualityJobDefinitionResponseTypeDef(BaseModel): + JobDefinitionArn: str + JobDefinitionName: str + CreationTime: datetime + ModelQualityBaselineConfig: ModelQualityBaselineConfigTypeDef + ModelQualityAppSpecification: ModelQualityAppSpecificationOutputTypeDef + ModelQualityJobInput: ModelQualityJobInputOutputTypeDef + ModelQualityJobOutputConfig: MonitoringOutputConfigOutputTypeDef + JobResources: MonitoringResourcesTypeDef + NetworkConfig: MonitoringNetworkConfigOutputTypeDef + RoleArn: str + StoppingCondition: MonitoringStoppingConditionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MonitoringJobDefinitionOutputTypeDef(BaseModel): + MonitoringInputs: List[MonitoringInputOutputTypeDef] + MonitoringOutputConfig: MonitoringOutputConfigOutputTypeDef + MonitoringResources: MonitoringResourcesTypeDef + MonitoringAppSpecification: MonitoringAppSpecificationOutputTypeDef + RoleArn: str + BaselineConfig: Optional[MonitoringBaselineConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Environment: Optional[Dict[str, str]] = None + NetworkConfig: Optional[NetworkConfigOutputTypeDef] = None + +class CreateDataQualityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + DataQualityAppSpecification: DataQualityAppSpecificationTypeDef + DataQualityJobInput: DataQualityJobInputTypeDef + DataQualityJobOutputConfig: MonitoringOutputConfigTypeDef + JobResources: MonitoringResourcesTypeDef + RoleArn: str + DataQualityBaselineConfig: Optional[DataQualityBaselineConfigTypeDef] = None + NetworkConfig: Optional[MonitoringNetworkConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelBiasJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + ModelBiasAppSpecification: ModelBiasAppSpecificationTypeDef + ModelBiasJobInput: ModelBiasJobInputTypeDef + ModelBiasJobOutputConfig: MonitoringOutputConfigTypeDef + JobResources: MonitoringResourcesTypeDef + RoleArn: str + ModelBiasBaselineConfig: Optional[ModelBiasBaselineConfigTypeDef] = None + NetworkConfig: Optional[MonitoringNetworkConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelExplainabilityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + ModelExplainabilityAppSpecification: ModelExplainabilityAppSpecificationTypeDef + ModelExplainabilityJobInput: ModelExplainabilityJobInputTypeDef + ModelExplainabilityJobOutputConfig: MonitoringOutputConfigTypeDef + JobResources: MonitoringResourcesTypeDef + RoleArn: str + ModelExplainabilityBaselineConfig: Optional[ModelExplainabilityBaselineConfigTypeDef] = None + NetworkConfig: Optional[MonitoringNetworkConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelQualityJobDefinitionRequestRequestTypeDef(BaseModel): + JobDefinitionName: str + ModelQualityAppSpecification: ModelQualityAppSpecificationTypeDef + ModelQualityJobInput: ModelQualityJobInputTypeDef + ModelQualityJobOutputConfig: MonitoringOutputConfigTypeDef + JobResources: MonitoringResourcesTypeDef + RoleArn: str + ModelQualityBaselineConfig: Optional[ModelQualityBaselineConfigTypeDef] = None + NetworkConfig: Optional[MonitoringNetworkConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MonitoringJobDefinitionTypeDef(BaseModel): + MonitoringInputs: Sequence[MonitoringInputTypeDef] + MonitoringOutputConfig: MonitoringOutputConfigTypeDef + MonitoringResources: MonitoringResourcesTypeDef + MonitoringAppSpecification: MonitoringAppSpecificationTypeDef + RoleArn: str + BaselineConfig: Optional[MonitoringBaselineConfigTypeDef] = None + StoppingCondition: Optional[MonitoringStoppingConditionTypeDef] = None + Environment: Optional[Mapping[str, str]] = None + NetworkConfig: Optional[NetworkConfigTypeDef] = None + +class ModelPackageValidationProfileExtraOutputTypeDef(BaseModel): + ProfileName: str + TransformJobDefinition: TransformJobDefinitionExtraOutputTypeDef + +class AlgorithmValidationProfileOutputTypeDef(BaseModel): + ProfileName: str + TrainingJobDefinition: TrainingJobDefinitionOutputTypeDef + TransformJobDefinition: Optional[TransformJobDefinitionOutputTypeDef] = None + +class ModelPackageValidationProfileOutputTypeDef(BaseModel): + ProfileName: str + TransformJobDefinition: TransformJobDefinitionOutputTypeDef + +class AlgorithmValidationProfileTypeDef(BaseModel): + ProfileName: str + TrainingJobDefinition: TrainingJobDefinitionTypeDef + TransformJobDefinition: Optional[TransformJobDefinitionTypeDef] = None + +class ModelPackageValidationProfileTypeDef(BaseModel): + ProfileName: str + TransformJobDefinition: TransformJobDefinitionTypeDef + +class TrialComponentSourceDetailTypeDef(BaseModel): + SourceArn: Optional[str] = None + TrainingJob: Optional[TrainingJobTypeDef] = None + ProcessingJob: Optional[ProcessingJobTypeDef] = None + TransformJob: Optional[TransformJobTypeDef] = None + +class CreateHyperParameterTuningJobRequestRequestTypeDef(BaseModel): + HyperParameterTuningJobName: str + HyperParameterTuningJobConfig: HyperParameterTuningJobConfigTypeDef + TrainingJobDefinition: Optional[HyperParameterTrainingJobDefinitionTypeDef] = None + TrainingJobDefinitions: Optional[ Sequence[HyperParameterTrainingJobDefinitionUnionTypeDef] ] = None + WarmStartConfig: Optional[HyperParameterTuningJobWarmStartConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Autotune: Optional[AutotuneTypeDef] = None + +class GetScalingConfigurationRecommendationResponseTypeDef(BaseModel): + InferenceRecommendationsJobName: str + RecommendationId: str + EndpointName: str + TargetCpuUtilizationPerCore: int + ScalingPolicyObjective: ScalingPolicyObjectiveTypeDef + Metric: ScalingPolicyMetricTypeDef + DynamicScalingConfiguration: DynamicScalingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateModelInputRequestTypeDef(BaseModel): + ModelName: str + PrimaryContainer: Optional[ContainerDefinitionTypeDef] = None + Containers: Optional[Sequence[ContainerDefinitionUnionTypeDef]] = None + InferenceExecutionConfig: Optional[InferenceExecutionConfigTypeDef] = None + ExecutionRoleArn: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + VpcConfig: Optional[VpcConfigTypeDef] = None + EnableNetworkIsolation: Optional[bool] = None + +class BatchDescribeModelPackageSummaryTypeDef(BaseModel): + ModelPackageGroupName: str + ModelPackageArn: str + CreationTime: datetime + InferenceSpecification: InferenceSpecificationOutputTypeDef + ModelPackageStatus: ModelPackageStatusType + ModelPackageVersion: Optional[int] = None + ModelPackageDescription: Optional[str] = None + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + +class MonitoringScheduleConfigExtraOutputTypeDef(BaseModel): + ScheduleConfig: Optional[ScheduleConfigTypeDef] = None + MonitoringJobDefinition: Optional[MonitoringJobDefinitionExtraOutputTypeDef] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringType: Optional[MonitoringTypeType] = None + +class MonitoringScheduleConfigOutputTypeDef(BaseModel): + ScheduleConfig: Optional[ScheduleConfigTypeDef] = None + MonitoringJobDefinition: Optional[MonitoringJobDefinitionOutputTypeDef] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringType: Optional[MonitoringTypeType] = None + +class MonitoringScheduleConfigTypeDef(BaseModel): + ScheduleConfig: Optional[ScheduleConfigTypeDef] = None + MonitoringJobDefinition: Optional[MonitoringJobDefinitionTypeDef] = None + MonitoringJobDefinitionName: Optional[str] = None + MonitoringType: Optional[MonitoringTypeType] = None + +class ModelPackageValidationSpecificationExtraOutputTypeDef(BaseModel): + ValidationRole: str + ValidationProfiles: List[ModelPackageValidationProfileExtraOutputTypeDef] + +class AlgorithmValidationSpecificationOutputTypeDef(BaseModel): + ValidationRole: str + ValidationProfiles: List[AlgorithmValidationProfileOutputTypeDef] + +class ModelPackageValidationSpecificationOutputTypeDef(BaseModel): + ValidationRole: str + ValidationProfiles: List[ModelPackageValidationProfileOutputTypeDef] + +class AlgorithmValidationSpecificationTypeDef(BaseModel): + ValidationRole: str + ValidationProfiles: Sequence[AlgorithmValidationProfileTypeDef] + +class ModelPackageValidationSpecificationTypeDef(BaseModel): + ValidationRole: str + ValidationProfiles: Sequence[ModelPackageValidationProfileTypeDef] + +class TrialComponentTypeDef(BaseModel): + TrialComponentName: Optional[str] = None + DisplayName: Optional[str] = None + TrialComponentArn: Optional[str] = None + Source: Optional[TrialComponentSourceTypeDef] = None + Status: Optional[TrialComponentStatusTypeDef] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + CreatedBy: Optional[UserContextTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + Parameters: Optional[Dict[str, TrialComponentParameterValueTypeDef]] = None + InputArtifacts: Optional[Dict[str, TrialComponentArtifactTypeDef]] = None + OutputArtifacts: Optional[Dict[str, TrialComponentArtifactTypeDef]] = None + Metrics: Optional[List[TrialComponentMetricSummaryTypeDef]] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + SourceDetail: Optional[TrialComponentSourceDetailTypeDef] = None + LineageGroupArn: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + Parents: Optional[List[ParentTypeDef]] = None + RunName: Optional[str] = None + +class BatchDescribeModelPackageOutputTypeDef(BaseModel): + ModelPackageSummaries: Dict[str, BatchDescribeModelPackageSummaryTypeDef] + BatchDescribeModelPackageErrorMap: Dict[str, BatchDescribeModelPackageErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateModelPackageInputRequestTypeDef(BaseModel): + ModelPackageArn: str + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + ApprovalDescription: Optional[str] = None + CustomerMetadataProperties: Optional[Mapping[str, str]] = None + CustomerMetadataPropertiesToRemove: Optional[Sequence[str]] = None + AdditionalInferenceSpecificationsToAdd: Optional[ Sequence[AdditionalInferenceSpecificationDefinitionUnionTypeDef] ] = None + InferenceSpecification: Optional[InferenceSpecificationTypeDef] = None + SourceUri: Optional[str] = None + ModelCard: Optional[ModelPackageModelCardTypeDef] = None + +class DescribeMonitoringScheduleResponseTypeDef(BaseModel): + MonitoringScheduleArn: str + MonitoringScheduleName: str + MonitoringScheduleStatus: ScheduleStatusType + MonitoringType: MonitoringTypeType + FailureReason: str + CreationTime: datetime + LastModifiedTime: datetime + MonitoringScheduleConfig: MonitoringScheduleConfigOutputTypeDef + EndpointName: str + LastMonitoringExecutionSummary: MonitoringExecutionSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModelDashboardMonitoringScheduleTypeDef(BaseModel): + MonitoringScheduleArn: Optional[str] = None + MonitoringScheduleName: Optional[str] = None + MonitoringScheduleStatus: Optional[ScheduleStatusType] = None + MonitoringType: Optional[MonitoringTypeType] = None + FailureReason: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + MonitoringScheduleConfig: Optional[MonitoringScheduleConfigOutputTypeDef] = None + EndpointName: Optional[str] = None + MonitoringAlertSummaries: Optional[List[MonitoringAlertSummaryTypeDef]] = None + LastMonitoringExecutionSummary: Optional[MonitoringExecutionSummaryTypeDef] = None + BatchTransformInput: Optional[BatchTransformInputOutputTypeDef] = None + +class MonitoringScheduleTypeDef(BaseModel): + MonitoringScheduleArn: Optional[str] = None + MonitoringScheduleName: Optional[str] = None + MonitoringScheduleStatus: Optional[ScheduleStatusType] = None + MonitoringType: Optional[MonitoringTypeType] = None + FailureReason: Optional[str] = None + CreationTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + MonitoringScheduleConfig: Optional[MonitoringScheduleConfigOutputTypeDef] = None + EndpointName: Optional[str] = None + LastMonitoringExecutionSummary: Optional[MonitoringExecutionSummaryTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + +class CreateMonitoringScheduleRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + MonitoringScheduleConfig: MonitoringScheduleConfigTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateMonitoringScheduleRequestRequestTypeDef(BaseModel): + MonitoringScheduleName: str + MonitoringScheduleConfig: MonitoringScheduleConfigTypeDef + +class DescribeAlgorithmOutputTypeDef(BaseModel): + AlgorithmName: str + AlgorithmArn: str + AlgorithmDescription: str + CreationTime: datetime + TrainingSpecification: TrainingSpecificationOutputTypeDef + InferenceSpecification: InferenceSpecificationOutputTypeDef + ValidationSpecification: AlgorithmValidationSpecificationOutputTypeDef + AlgorithmStatus: AlgorithmStatusType + AlgorithmStatusDetails: AlgorithmStatusDetailsTypeDef + ProductId: str + CertifyForMarketplace: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeModelPackageOutputTypeDef(BaseModel): + ModelPackageName: str + ModelPackageGroupName: str + ModelPackageVersion: int + ModelPackageArn: str + ModelPackageDescription: str + CreationTime: datetime + InferenceSpecification: InferenceSpecificationOutputTypeDef + SourceAlgorithmSpecification: SourceAlgorithmSpecificationOutputTypeDef + ValidationSpecification: ModelPackageValidationSpecificationOutputTypeDef + ModelPackageStatus: ModelPackageStatusType + ModelPackageStatusDetails: ModelPackageStatusDetailsTypeDef + CertifyForMarketplace: bool + ModelApprovalStatus: ModelApprovalStatusType + CreatedBy: UserContextTypeDef + MetadataProperties: MetadataPropertiesTypeDef + ModelMetrics: ModelMetricsTypeDef + LastModifiedTime: datetime + LastModifiedBy: UserContextTypeDef + ApprovalDescription: str + Domain: str + Task: str + SamplePayloadUrl: str + CustomerMetadataProperties: Dict[str, str] + DriftCheckBaselines: DriftCheckBaselinesTypeDef + AdditionalInferenceSpecifications: List[ AdditionalInferenceSpecificationDefinitionOutputTypeDef ] + SkipModelValidation: SkipModelValidationType + SourceUri: str + SecurityConfig: ModelPackageSecurityConfigTypeDef + ModelCard: ModelPackageModelCardTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ModelPackageTypeDef(BaseModel): + ModelPackageName: Optional[str] = None + ModelPackageGroupName: Optional[str] = None + ModelPackageVersion: Optional[int] = None + ModelPackageArn: Optional[str] = None + ModelPackageDescription: Optional[str] = None + CreationTime: Optional[datetime] = None + InferenceSpecification: Optional[InferenceSpecificationOutputTypeDef] = None + SourceAlgorithmSpecification: Optional[SourceAlgorithmSpecificationOutputTypeDef] = None + ValidationSpecification: Optional[ModelPackageValidationSpecificationOutputTypeDef] = None + ModelPackageStatus: Optional[ModelPackageStatusType] = None + ModelPackageStatusDetails: Optional[ModelPackageStatusDetailsTypeDef] = None + CertifyForMarketplace: Optional[bool] = None + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + CreatedBy: Optional[UserContextTypeDef] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + ModelMetrics: Optional[ModelMetricsTypeDef] = None + LastModifiedTime: Optional[datetime] = None + LastModifiedBy: Optional[UserContextTypeDef] = None + ApprovalDescription: Optional[str] = None + Domain: Optional[str] = None + Task: Optional[str] = None + SamplePayloadUrl: Optional[str] = None + AdditionalInferenceSpecifications: Optional[ List[AdditionalInferenceSpecificationDefinitionOutputTypeDef] ] = None + SourceUri: Optional[str] = None + SecurityConfig: Optional[ModelPackageSecurityConfigTypeDef] = None + ModelCard: Optional[ModelPackageModelCardTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + CustomerMetadataProperties: Optional[Dict[str, str]] = None + DriftCheckBaselines: Optional[DriftCheckBaselinesTypeDef] = None + SkipModelValidation: Optional[SkipModelValidationType] = None + +class CreateAlgorithmInputRequestTypeDef(BaseModel): + AlgorithmName: str + TrainingSpecification: TrainingSpecificationTypeDef + AlgorithmDescription: Optional[str] = None + InferenceSpecification: Optional[InferenceSpecificationTypeDef] = None + ValidationSpecification: Optional[AlgorithmValidationSpecificationTypeDef] = None + CertifyForMarketplace: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateModelPackageInputRequestTypeDef(BaseModel): + ModelPackageName: Optional[str] = None + ModelPackageGroupName: Optional[str] = None + ModelPackageDescription: Optional[str] = None + InferenceSpecification: Optional[InferenceSpecificationTypeDef] = None + ValidationSpecification: Optional[ModelPackageValidationSpecificationTypeDef] = None + SourceAlgorithmSpecification: Optional[SourceAlgorithmSpecificationTypeDef] = None + CertifyForMarketplace: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ModelApprovalStatus: Optional[ModelApprovalStatusType] = None + MetadataProperties: Optional[MetadataPropertiesTypeDef] = None + ModelMetrics: Optional[ModelMetricsTypeDef] = None + ClientToken: Optional[str] = None + Domain: Optional[str] = None + Task: Optional[str] = None + SamplePayloadUrl: Optional[str] = None + CustomerMetadataProperties: Optional[Mapping[str, str]] = None + DriftCheckBaselines: Optional[DriftCheckBaselinesTypeDef] = None + AdditionalInferenceSpecifications: Optional[ Sequence[AdditionalInferenceSpecificationDefinitionUnionTypeDef] ] = None + SkipModelValidation: Optional[SkipModelValidationType] = None + SourceUri: Optional[str] = None + SecurityConfig: Optional[ModelPackageSecurityConfigTypeDef] = None + ModelCard: Optional[ModelPackageModelCardTypeDef] = None + +class ModelDashboardModelTypeDef(BaseModel): + Model: Optional[ModelTypeDef] = None + Endpoints: Optional[List[ModelDashboardEndpointTypeDef]] = None + LastBatchTransformJob: Optional[TransformJobTypeDef] = None + MonitoringSchedules: Optional[List[ModelDashboardMonitoringScheduleTypeDef]] = None + ModelCard: Optional[ModelDashboardModelCardTypeDef] = None + +class EndpointTypeDef(BaseModel): + EndpointName: str + EndpointArn: str + EndpointConfigName: str + EndpointStatus: EndpointStatusType + CreationTime: datetime + LastModifiedTime: datetime + ProductionVariants: Optional[List[ProductionVariantSummaryTypeDef]] = None + DataCaptureConfig: Optional[DataCaptureConfigSummaryTypeDef] = None + FailureReason: Optional[str] = None + MonitoringSchedules: Optional[List[MonitoringScheduleTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + ShadowProductionVariants: Optional[List[ProductionVariantSummaryTypeDef]] = None + +class SearchRecordTypeDef(BaseModel): + TrainingJob: Optional[TrainingJobTypeDef] = None + Experiment: Optional[ExperimentTypeDef] = None + Trial: Optional[TrialTypeDef] = None + TrialComponent: Optional[TrialComponentTypeDef] = None + Endpoint: Optional[EndpointTypeDef] = None + ModelPackage: Optional[ModelPackageTypeDef] = None + ModelPackageGroup: Optional[ModelPackageGroupTypeDef] = None + Pipeline: Optional[PipelineTypeDef] = None + PipelineExecution: Optional[PipelineExecutionTypeDef] = None + FeatureGroup: Optional[FeatureGroupTypeDef] = None + FeatureMetadata: Optional[FeatureMetadataTypeDef] = None + Project: Optional[ProjectTypeDef] = None + HyperParameterTuningJob: Optional[HyperParameterTuningJobSearchEntityTypeDef] = None + ModelCard: Optional[ModelCardTypeDef] = None + Model: Optional[ModelDashboardModelTypeDef] = None + +class SearchResponseTypeDef(BaseModel): + Results: List[SearchRecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/sagemaker_constants.py b/aws_resource_validator/pydantic_models/sagemaker_constants.py new file mode 100644 index 00000000..cc631868 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_constants.py @@ -0,0 +1,2002 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping", "Unknown"] +AdditionalS3DataSourceDataTypeType = Literal["S3Object", "S3Prefix"] +AggregationTransformationValueType = Literal["avg", "first", "max", "min", "sum"] +AlgorithmSortByType = Literal["CreationTime", "Name"] +AlgorithmStatusType = Literal["Completed", "Deleting", "Failed", "InProgress", "Pending"] +AppImageConfigSortKeyType = Literal["CreationTime", "LastModifiedTime", "Name"] +AppInstanceTypeType = Literal["ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c6i.12xlarge", + "ml.c6i.16xlarge", + "ml.c6i.24xlarge", + "ml.c6i.2xlarge", + "ml.c6i.32xlarge", + "ml.c6i.4xlarge", + "ml.c6i.8xlarge", + "ml.c6i.large", + "ml.c6i.xlarge", + "ml.c6id.12xlarge", + "ml.c6id.16xlarge", + "ml.c6id.24xlarge", + "ml.c6id.2xlarge", + "ml.c6id.32xlarge", + "ml.c6id.4xlarge", + "ml.c6id.8xlarge", + "ml.c6id.large", + "ml.c6id.xlarge", + "ml.c7i.12xlarge", + "ml.c7i.16xlarge", + "ml.c7i.24xlarge", + "ml.c7i.2xlarge", + "ml.c7i.48xlarge", + "ml.c7i.4xlarge", + "ml.c7i.8xlarge", + "ml.c7i.large", + "ml.c7i.xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.g6.12xlarge", + "ml.g6.16xlarge", + "ml.g6.24xlarge", + "ml.g6.2xlarge", + "ml.g6.48xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.xlarge", + "ml.geospatial.interactive", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m6i.12xlarge", + "ml.m6i.16xlarge", + "ml.m6i.24xlarge", + "ml.m6i.2xlarge", + "ml.m6i.32xlarge", + "ml.m6i.4xlarge", + "ml.m6i.8xlarge", + "ml.m6i.large", + "ml.m6i.xlarge", + "ml.m6id.12xlarge", + "ml.m6id.16xlarge", + "ml.m6id.24xlarge", + "ml.m6id.2xlarge", + "ml.m6id.32xlarge", + "ml.m6id.4xlarge", + "ml.m6id.8xlarge", + "ml.m6id.large", + "ml.m6id.xlarge", + "ml.m7i.12xlarge", + "ml.m7i.16xlarge", + "ml.m7i.24xlarge", + "ml.m7i.2xlarge", + "ml.m7i.48xlarge", + "ml.m7i.4xlarge", + "ml.m7i.8xlarge", + "ml.m7i.large", + "ml.m7i.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3dn.24xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r6i.12xlarge", + "ml.r6i.16xlarge", + "ml.r6i.24xlarge", + "ml.r6i.2xlarge", + "ml.r6i.32xlarge", + "ml.r6i.4xlarge", + "ml.r6i.8xlarge", + "ml.r6i.large", + "ml.r6i.xlarge", + "ml.r6id.12xlarge", + "ml.r6id.16xlarge", + "ml.r6id.24xlarge", + "ml.r6id.2xlarge", + "ml.r6id.32xlarge", + "ml.r6id.4xlarge", + "ml.r6id.8xlarge", + "ml.r6id.large", + "ml.r6id.xlarge", + "ml.r7i.12xlarge", + "ml.r7i.16xlarge", + "ml.r7i.24xlarge", + "ml.r7i.2xlarge", + "ml.r7i.48xlarge", + "ml.r7i.4xlarge", + "ml.r7i.8xlarge", + "ml.r7i.large", + "ml.r7i.xlarge", + "ml.t3.2xlarge", + "ml.t3.large", + "ml.t3.medium", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.xlarge", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge", + "system",] +AppNetworkAccessTypeType = Literal["PublicInternetOnly", "VpcOnly"] +AppSecurityGroupManagementType = Literal["Customer", "Service"] +AppSortKeyType = Literal["CreationTime"] +AppStatusType = Literal["Deleted", "Deleting", "Failed", "InService", "Pending"] +AppTypeType = Literal["Canvas", + "CodeEditor", + "DetailedProfiler", + "JupyterLab", + "JupyterServer", + "KernelGateway", + "RSessionGateway", + "RStudioServerPro", + "TensorBoard",] +ArtifactSourceIdTypeType = Literal["Custom", "MD5Hash", "S3ETag", "S3Version"] +AssemblyTypeType = Literal["Line", "None"] +AssociationEdgeTypeType = Literal["AssociatedWith", "ContributedTo", "DerivedFrom", "Produced", "SameAs"] +AsyncNotificationTopicTypesType = Literal["ERROR_NOTIFICATION_TOPIC", "SUCCESS_NOTIFICATION_TOPIC"] +AthenaResultCompressionTypeType = Literal["GZIP", "SNAPPY", "ZLIB"] +AthenaResultFormatType = Literal["AVRO", "JSON", "ORC", "PARQUET", "TEXTFILE"] +AuthModeType = Literal["IAM", "SSO"] +AutoMLAlgorithmType = Literal["arima", + "catboost", + "cnn-qr", + "deepar", + "ets", + "extra-trees", + "fastai", + "lightgbm", + "linear-learner", + "mlp", + "nn-torch", + "npts", + "prophet", + "randomforest", + "xgboost",] +AutoMLChannelTypeType = Literal["training", "validation"] +AutoMLJobObjectiveTypeType = Literal["Maximize", "Minimize"] +AutoMLJobSecondaryStatusType = Literal["AnalyzingData", + "CandidateDefinitionsGenerated", + "Completed", + "DeployingModel", + "ExplainabilityError", + "Failed", + "FeatureEngineering", + "GeneratingExplainabilityReport", + "GeneratingModelInsightsReport", + "MaxAutoMLJobRuntimeReached", + "MaxCandidatesReached", + "ModelDeploymentError", + "ModelInsightsError", + "ModelTuning", + "PreTraining", + "Starting", + "Stopped", + "Stopping", + "TrainingModels",] +AutoMLJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +AutoMLMetricEnumType = Literal["AUC", + "Accuracy", + "AverageWeightedQuantileLoss", + "BalancedAccuracy", + "F1", + "F1macro", + "MAE", + "MAPE", + "MASE", + "MSE", + "Precision", + "PrecisionMacro", + "R2", + "RMSE", + "Recall", + "RecallMacro", + "WAPE",] +AutoMLMetricExtendedEnumType = Literal["AUC", + "Accuracy", + "AverageWeightedQuantileLoss", + "BalancedAccuracy", + "F1", + "F1macro", + "InferenceLatency", + "LogLoss", + "MAE", + "MAPE", + "MASE", + "MSE", + "Perplexity", + "Precision", + "PrecisionMacro", + "R2", + "RMSE", + "Recall", + "RecallMacro", + "Rouge1", + "Rouge2", + "RougeL", + "RougeLSum", + "TrainingLoss", + "ValidationLoss", + "WAPE",] +AutoMLModeType = Literal["AUTO", "ENSEMBLING", "HYPERPARAMETER_TUNING"] +AutoMLProblemTypeConfigNameType = Literal["ImageClassification", + "Tabular", + "TextClassification", + "TextGeneration", + "TimeSeriesForecasting",] +AutoMLProcessingUnitType = Literal["CPU", "GPU"] +AutoMLS3DataTypeType = Literal["AugmentedManifestFile", "ManifestFile", "S3Prefix"] +AutoMLSortByType = Literal["CreationTime", "Name", "Status"] +AutoMLSortOrderType = Literal["Ascending", "Descending"] +AutotuneModeType = Literal["Enabled"] +AwsManagedHumanLoopRequestSourceType = Literal["AWS/Rekognition/DetectModerationLabels/Image/V3", "AWS/Textract/AnalyzeDocument/Forms/V1"] +BatchStrategyType = Literal["MultiRecord", "SingleRecord"] +BooleanOperatorType = Literal["And", "Or"] +CandidateSortByType = Literal["CreationTime", "FinalObjectiveMetricValue", "Status"] +CandidateStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +CandidateStepTypeType = Literal["AWS::SageMaker::ProcessingJob", "AWS::SageMaker::TrainingJob", "AWS::SageMaker::TransformJob"] +CapacitySizeTypeType = Literal["CAPACITY_PERCENT", "INSTANCE_COUNT"] +CaptureModeType = Literal["Input", "InputAndOutput", "Output"] +CaptureStatusType = Literal["Started", "Stopped"] +ClarifyFeatureTypeType = Literal["categorical", "numerical", "text"] +ClarifyTextGranularityType = Literal["paragraph", "sentence", "token"] +ClarifyTextLanguageType = Literal["af", + "ar", + "bg", + "bn", + "ca", + "cs", + "da", + "de", + "el", + "en", + "es", + "et", + "eu", + "fa", + "fi", + "fr", + "ga", + "gu", + "he", + "hi", + "hr", + "hu", + "hy", + "id", + "is", + "it", + "kn", + "ky", + "lb", + "lij", + "lt", + "lv", + "mk", + "ml", + "mr", + "nb", + "ne", + "nl", + "pl", + "pt", + "ro", + "ru", + "sa", + "si", + "sk", + "sl", + "sq", + "sr", + "sv", + "ta", + "te", + "tl", + "tn", + "tr", + "tt", + "uk", + "ur", + "xx", + "yo", + "zh",] +ClusterInstanceStatusType = Literal["Failure", "Pending", "Running", "ShuttingDown", "SystemUpdating"] +ClusterInstanceTypeType = Literal["ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5n.18xlarge", + "ml.c5n.2xlarge", + "ml.c5n.4xlarge", + "ml.c5n.9xlarge", + "ml.c5n.large", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.t3.2xlarge", + "ml.t3.large", + "ml.t3.medium", + "ml.t3.xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge",] +ClusterSortByType = Literal["CREATION_TIME", "NAME"] +ClusterStatusType = Literal["Creating", "Deleting", "Failed", "InService", "RollingBack", "SystemUpdating", "Updating"] +CodeRepositorySortByType = Literal["CreationTime", "LastModifiedTime", "Name"] +CodeRepositorySortOrderType = Literal["Ascending", "Descending"] +CollectionTypeType = Literal["List", "Set", "Vector"] +CompilationJobStatusType = Literal["COMPLETED", "FAILED", "INPROGRESS", "STARTING", "STOPPED", "STOPPING"] +CompleteOnConvergenceType = Literal["Disabled", "Enabled"] +CompressionTypeType = Literal["Gzip", "None"] +ConditionOutcomeType = Literal["False", "True"] +ContainerModeType = Literal["MultiModel", "SingleModel"] +ContentClassifierType = Literal["FreeOfAdultContent", "FreeOfPersonallyIdentifiableInformation"] +CrossAccountFilterOptionType = Literal["CrossAccount", "SameAccount"] +DataDistributionTypeType = Literal["FullyReplicated", "ShardedByS3Key"] +DataSourceNameType = Literal["SalesforceGenie", "Snowflake"] +DetailedAlgorithmStatusType = Literal["Completed", "Failed", "InProgress", "NotStarted"] +DetailedModelPackageStatusType = Literal["Completed", "Failed", "InProgress", "NotStarted"] +DeviceDeploymentStatusType = Literal["DEPLOYED", "FAILED", "INPROGRESS", "READYTODEPLOY", "STOPPED", "STOPPING"] +DeviceSubsetTypeType = Literal["NAMECONTAINS", "PERCENTAGE", "SELECTION"] +DirectInternetAccessType = Literal["Disabled", "Enabled"] +DirectionType = Literal["Ascendants", "Both", "Descendants"] +DomainStatusType = Literal["Delete_Failed", "Deleting", "Failed", "InService", "Pending", "Update_Failed", "Updating"] +EdgePackagingJobStatusType = Literal["COMPLETED", "FAILED", "INPROGRESS", "STARTING", "STOPPED", "STOPPING"] +EdgePresetDeploymentStatusType = Literal["COMPLETED", "FAILED"] +EdgePresetDeploymentTypeType = Literal["GreengrassV2Component"] +EnabledOrDisabledType = Literal["Disabled", "Enabled"] +EndpointConfigSortKeyType = Literal["CreationTime", "Name"] +EndpointDeletedWaiterName = Literal["endpoint_deleted"] +EndpointInServiceWaiterName = Literal["endpoint_in_service"] +EndpointSortKeyType = Literal["CreationTime", "Name", "Status"] +EndpointStatusType = Literal["Creating", + "Deleting", + "Failed", + "InService", + "OutOfService", + "RollingBack", + "SystemUpdating", + "UpdateRollbackFailed", + "Updating",] +ExecutionRoleIdentityConfigType = Literal["DISABLED", "USER_PROFILE_NAME"] +ExecutionStatusType = Literal["Completed", "CompletedWithViolations", "Failed", "InProgress", "Pending", "Stopped", "Stopping"] +FailureHandlingPolicyType = Literal["DO_NOTHING", "ROLLBACK_ON_FAILURE"] +FeatureGroupSortByType = Literal["CreationTime", "FeatureGroupStatus", "Name", "OfflineStoreStatus"] +FeatureGroupSortOrderType = Literal["Ascending", "Descending"] +FeatureGroupStatusType = Literal["CreateFailed", "Created", "Creating", "DeleteFailed", "Deleting"] +FeatureStatusType = Literal["DISABLED", "ENABLED"] +FeatureTypeType = Literal["Fractional", "Integral", "String"] +FileSystemAccessModeType = Literal["ro", "rw"] +FileSystemTypeType = Literal["EFS", "FSxLustre"] +FillingTypeType = Literal["backfill", + "backfill_value", + "frontfill", + "frontfill_value", + "futurefill", + "futurefill_value", + "middlefill", + "middlefill_value",] +FlatInvocationsType = Literal["Continue", "Stop"] +FlowDefinitionStatusType = Literal["Active", "Deleting", "Failed", "Initializing"] +FrameworkType = Literal["DARKNET", "KERAS", "MXNET", "ONNX", "PYTORCH", "SKLEARN", "TENSORFLOW", "TFLITE", "XGBOOST"] +HubContentSortByType = Literal["CreationTime", "HubContentName", "HubContentStatus"] +HubContentStatusType = Literal["Available", "DeleteFailed", "Deleting", "ImportFailed", "Importing"] +HubContentSupportStatusType = Literal["Deprecated", "Supported"] +HubContentTypeType = Literal["Model", "ModelReference", "Notebook"] +HubSortByType = Literal["AccountIdOwner", "CreationTime", "HubName", "HubStatus"] +HubStatusType = Literal["CreateFailed", "Creating", "DeleteFailed", "Deleting", "InService", "UpdateFailed", "Updating"] +HumanTaskUiStatusType = Literal["Active", "Deleting"] +HyperParameterScalingTypeType = Literal["Auto", "Linear", "Logarithmic", "ReverseLogarithmic"] +HyperParameterTuningAllocationStrategyType = Literal["Prioritized"] +HyperParameterTuningJobObjectiveTypeType = Literal["Maximize", "Minimize"] +HyperParameterTuningJobSortByOptionsType = Literal["CreationTime", "Name", "Status"] +HyperParameterTuningJobStatusType = Literal["Completed", "DeleteFailed", "Deleting", "Failed", "InProgress", "Stopped", "Stopping"] +HyperParameterTuningJobStrategyTypeType = Literal["Bayesian", "Grid", "Hyperband", "Random"] +HyperParameterTuningJobWarmStartTypeType = Literal["IdenticalDataAndAlgorithm", "TransferLearning"] +ImageCreatedWaiterName = Literal["image_created"] +ImageDeletedWaiterName = Literal["image_deleted"] +ImageSortByType = Literal["CREATION_TIME", "IMAGE_NAME", "LAST_MODIFIED_TIME"] +ImageSortOrderType = Literal["ASCENDING", "DESCENDING"] +ImageStatusType = Literal["CREATED", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING", "UPDATE_FAILED", "UPDATING"] +ImageUpdatedWaiterName = Literal["image_updated"] +ImageVersionCreatedWaiterName = Literal["image_version_created"] +ImageVersionDeletedWaiterName = Literal["image_version_deleted"] +ImageVersionSortByType = Literal["CREATION_TIME", "LAST_MODIFIED_TIME", "VERSION"] +ImageVersionSortOrderType = Literal["ASCENDING", "DESCENDING"] +ImageVersionStatusType = Literal["CREATED", "CREATE_FAILED", "CREATING", "DELETE_FAILED", "DELETING"] +InferenceComponentSortKeyType = Literal["CreationTime", "Name", "Status"] +InferenceComponentStatusType = Literal["Creating", "Deleting", "Failed", "InService", "Updating"] +InferenceExecutionModeType = Literal["Direct", "Serial"] +InferenceExperimentStatusType = Literal["Cancelled", "Completed", "Created", "Creating", "Running", "Starting", "Stopping", "Updating"] +InferenceExperimentStopDesiredStateType = Literal["Cancelled", "Completed"] +InferenceExperimentTypeType = Literal["ShadowMode"] +InputModeType = Literal["File", "Pipe"] +InstanceTypeType = Literal["ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c4.xlarge", + "ml.c5.18xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.xlarge", + "ml.c5d.18xlarge", + "ml.c5d.2xlarge", + "ml.c5d.4xlarge", + "ml.c5d.9xlarge", + "ml.c5d.xlarge", + "ml.c6i.12xlarge", + "ml.c6i.16xlarge", + "ml.c6i.24xlarge", + "ml.c6i.2xlarge", + "ml.c6i.32xlarge", + "ml.c6i.4xlarge", + "ml.c6i.8xlarge", + "ml.c6i.large", + "ml.c6i.xlarge", + "ml.c6id.12xlarge", + "ml.c6id.16xlarge", + "ml.c6id.24xlarge", + "ml.c6id.2xlarge", + "ml.c6id.32xlarge", + "ml.c6id.4xlarge", + "ml.c6id.8xlarge", + "ml.c6id.large", + "ml.c6id.xlarge", + "ml.c7i.12xlarge", + "ml.c7i.16xlarge", + "ml.c7i.24xlarge", + "ml.c7i.2xlarge", + "ml.c7i.48xlarge", + "ml.c7i.4xlarge", + "ml.c7i.8xlarge", + "ml.c7i.large", + "ml.c7i.xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.g6.12xlarge", + "ml.g6.16xlarge", + "ml.g6.24xlarge", + "ml.g6.2xlarge", + "ml.g6.48xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.xlarge", + "ml.inf1.24xlarge", + "ml.inf1.2xlarge", + "ml.inf1.6xlarge", + "ml.inf1.xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m6i.12xlarge", + "ml.m6i.16xlarge", + "ml.m6i.24xlarge", + "ml.m6i.2xlarge", + "ml.m6i.32xlarge", + "ml.m6i.4xlarge", + "ml.m6i.8xlarge", + "ml.m6i.large", + "ml.m6i.xlarge", + "ml.m6id.12xlarge", + "ml.m6id.16xlarge", + "ml.m6id.24xlarge", + "ml.m6id.2xlarge", + "ml.m6id.32xlarge", + "ml.m6id.4xlarge", + "ml.m6id.8xlarge", + "ml.m6id.large", + "ml.m6id.xlarge", + "ml.m7i.12xlarge", + "ml.m7i.16xlarge", + "ml.m7i.24xlarge", + "ml.m7i.2xlarge", + "ml.m7i.48xlarge", + "ml.m7i.4xlarge", + "ml.m7i.8xlarge", + "ml.m7i.large", + "ml.m7i.xlarge", + "ml.p2.16xlarge", + "ml.p2.8xlarge", + "ml.p2.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3dn.24xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r6i.12xlarge", + "ml.r6i.16xlarge", + "ml.r6i.24xlarge", + "ml.r6i.2xlarge", + "ml.r6i.32xlarge", + "ml.r6i.4xlarge", + "ml.r6i.8xlarge", + "ml.r6i.large", + "ml.r6i.xlarge", + "ml.r6id.12xlarge", + "ml.r6id.16xlarge", + "ml.r6id.24xlarge", + "ml.r6id.2xlarge", + "ml.r6id.32xlarge", + "ml.r6id.4xlarge", + "ml.r6id.8xlarge", + "ml.r6id.large", + "ml.r6id.xlarge", + "ml.r7i.12xlarge", + "ml.r7i.16xlarge", + "ml.r7i.24xlarge", + "ml.r7i.2xlarge", + "ml.r7i.48xlarge", + "ml.r7i.4xlarge", + "ml.r7i.8xlarge", + "ml.r7i.large", + "ml.r7i.xlarge", + "ml.t2.2xlarge", + "ml.t2.large", + "ml.t2.medium", + "ml.t2.xlarge", + "ml.t3.2xlarge", + "ml.t3.large", + "ml.t3.medium", + "ml.t3.xlarge",] +IsTrackingServerActiveType = Literal["Active", "Inactive"] +JobTypeType = Literal["INFERENCE", "NOTEBOOK_KERNEL", "TRAINING"] +JoinSourceType = Literal["Input", "None"] +LabelingJobStatusType = Literal["Completed", "Failed", "InProgress", "Initializing", "Stopped", "Stopping"] +LastUpdateStatusValueType = Literal["Failed", "InProgress", "Successful"] +LineageTypeType = Literal["Action", "Artifact", "Context", "TrialComponent"] +ListActionsPaginatorName = Literal["list_actions"] +ListAlgorithmsPaginatorName = Literal["list_algorithms"] +ListAliasesPaginatorName = Literal["list_aliases"] +ListAppImageConfigsPaginatorName = Literal["list_app_image_configs"] +ListAppsPaginatorName = Literal["list_apps"] +ListArtifactsPaginatorName = Literal["list_artifacts"] +ListAssociationsPaginatorName = Literal["list_associations"] +ListAutoMLJobsPaginatorName = Literal["list_auto_ml_jobs"] +ListCandidatesForAutoMLJobPaginatorName = Literal["list_candidates_for_auto_ml_job"] +ListClusterNodesPaginatorName = Literal["list_cluster_nodes"] +ListClustersPaginatorName = Literal["list_clusters"] +ListCodeRepositoriesPaginatorName = Literal["list_code_repositories"] +ListCompilationJobsPaginatorName = Literal["list_compilation_jobs"] +ListCompilationJobsSortByType = Literal["CreationTime", "Name", "Status"] +ListContextsPaginatorName = Literal["list_contexts"] +ListDataQualityJobDefinitionsPaginatorName = Literal["list_data_quality_job_definitions"] +ListDeviceFleetsPaginatorName = Literal["list_device_fleets"] +ListDeviceFleetsSortByType = Literal["CREATION_TIME", "LAST_MODIFIED_TIME", "NAME"] +ListDevicesPaginatorName = Literal["list_devices"] +ListDomainsPaginatorName = Literal["list_domains"] +ListEdgeDeploymentPlansPaginatorName = Literal["list_edge_deployment_plans"] +ListEdgeDeploymentPlansSortByType = Literal["CREATION_TIME", "DEVICE_FLEET_NAME", "LAST_MODIFIED_TIME", "NAME"] +ListEdgePackagingJobsPaginatorName = Literal["list_edge_packaging_jobs"] +ListEdgePackagingJobsSortByType = Literal["CREATION_TIME", "LAST_MODIFIED_TIME", "MODEL_NAME", "NAME", "STATUS"] +ListEndpointConfigsPaginatorName = Literal["list_endpoint_configs"] +ListEndpointsPaginatorName = Literal["list_endpoints"] +ListExperimentsPaginatorName = Literal["list_experiments"] +ListFeatureGroupsPaginatorName = Literal["list_feature_groups"] +ListFlowDefinitionsPaginatorName = Literal["list_flow_definitions"] +ListHumanTaskUisPaginatorName = Literal["list_human_task_uis"] +ListHyperParameterTuningJobsPaginatorName = Literal["list_hyper_parameter_tuning_jobs"] +ListImageVersionsPaginatorName = Literal["list_image_versions"] +ListImagesPaginatorName = Literal["list_images"] +ListInferenceComponentsPaginatorName = Literal["list_inference_components"] +ListInferenceExperimentsPaginatorName = Literal["list_inference_experiments"] +ListInferenceRecommendationsJobStepsPaginatorName = Literal["list_inference_recommendations_job_steps"] +ListInferenceRecommendationsJobsPaginatorName = Literal["list_inference_recommendations_jobs"] +ListInferenceRecommendationsJobsSortByType = Literal["CreationTime", "Name", "Status"] +ListLabelingJobsForWorkteamPaginatorName = Literal["list_labeling_jobs_for_workteam"] +ListLabelingJobsForWorkteamSortByOptionsType = Literal["CreationTime"] +ListLabelingJobsPaginatorName = Literal["list_labeling_jobs"] +ListLineageGroupsPaginatorName = Literal["list_lineage_groups"] +ListMlflowTrackingServersPaginatorName = Literal["list_mlflow_tracking_servers"] +ListModelBiasJobDefinitionsPaginatorName = Literal["list_model_bias_job_definitions"] +ListModelCardExportJobsPaginatorName = Literal["list_model_card_export_jobs"] +ListModelCardVersionsPaginatorName = Literal["list_model_card_versions"] +ListModelCardsPaginatorName = Literal["list_model_cards"] +ListModelExplainabilityJobDefinitionsPaginatorName = Literal["list_model_explainability_job_definitions"] +ListModelMetadataPaginatorName = Literal["list_model_metadata"] +ListModelPackageGroupsPaginatorName = Literal["list_model_package_groups"] +ListModelPackagesPaginatorName = Literal["list_model_packages"] +ListModelQualityJobDefinitionsPaginatorName = Literal["list_model_quality_job_definitions"] +ListModelsPaginatorName = Literal["list_models"] +ListMonitoringAlertHistoryPaginatorName = Literal["list_monitoring_alert_history"] +ListMonitoringAlertsPaginatorName = Literal["list_monitoring_alerts"] +ListMonitoringExecutionsPaginatorName = Literal["list_monitoring_executions"] +ListMonitoringSchedulesPaginatorName = Literal["list_monitoring_schedules"] +ListNotebookInstanceLifecycleConfigsPaginatorName = Literal["list_notebook_instance_lifecycle_configs"] +ListNotebookInstancesPaginatorName = Literal["list_notebook_instances"] +ListOptimizationJobsPaginatorName = Literal["list_optimization_jobs"] +ListOptimizationJobsSortByType = Literal["CreationTime", "Name", "Status"] +ListPipelineExecutionStepsPaginatorName = Literal["list_pipeline_execution_steps"] +ListPipelineExecutionsPaginatorName = Literal["list_pipeline_executions"] +ListPipelineParametersForExecutionPaginatorName = Literal["list_pipeline_parameters_for_execution"] +ListPipelinesPaginatorName = Literal["list_pipelines"] +ListProcessingJobsPaginatorName = Literal["list_processing_jobs"] +ListResourceCatalogsPaginatorName = Literal["list_resource_catalogs"] +ListSpacesPaginatorName = Literal["list_spaces"] +ListStageDevicesPaginatorName = Literal["list_stage_devices"] +ListStudioLifecycleConfigsPaginatorName = Literal["list_studio_lifecycle_configs"] +ListSubscribedWorkteamsPaginatorName = Literal["list_subscribed_workteams"] +ListTagsPaginatorName = Literal["list_tags"] +ListTrainingJobsForHyperParameterTuningJobPaginatorName = Literal["list_training_jobs_for_hyper_parameter_tuning_job"] +ListTrainingJobsPaginatorName = Literal["list_training_jobs"] +ListTransformJobsPaginatorName = Literal["list_transform_jobs"] +ListTrialComponentsPaginatorName = Literal["list_trial_components"] +ListTrialsPaginatorName = Literal["list_trials"] +ListUserProfilesPaginatorName = Literal["list_user_profiles"] +ListWorkforcesPaginatorName = Literal["list_workforces"] +ListWorkforcesSortByOptionsType = Literal["CreateDate", "Name"] +ListWorkteamsPaginatorName = Literal["list_workteams"] +ListWorkteamsSortByOptionsType = Literal["CreateDate", "Name"] +ManagedInstanceScalingStatusType = Literal["DISABLED", "ENABLED"] +MetricSetSourceType = Literal["Test", "Train", "Validation"] +MlToolsType = Literal["AutoMl", + "DataWrangler", + "EmrClusters", + "Endpoints", + "Experiments", + "FeatureStore", + "InferenceRecommender", + "JumpStart", + "ModelEvaluation", + "Models", + "Pipelines", + "Projects", + "Training",] +ModelApprovalStatusType = Literal["Approved", "PendingManualApproval", "Rejected"] +ModelCacheSettingType = Literal["Disabled", "Enabled"] +ModelCardExportJobSortByType = Literal["CreationTime", "Name", "Status"] +ModelCardExportJobSortOrderType = Literal["Ascending", "Descending"] +ModelCardExportJobStatusType = Literal["Completed", "Failed", "InProgress"] +ModelCardProcessingStatusType = Literal["ContentDeleted", + "DeleteCompleted", + "DeleteFailed", + "DeleteInProgress", + "DeletePending", + "ExportJobsDeleted",] +ModelCardSortByType = Literal["CreationTime", "Name"] +ModelCardSortOrderType = Literal["Ascending", "Descending"] +ModelCardStatusType = Literal["Approved", "Archived", "Draft", "PendingReview"] +ModelCardVersionSortByType = Literal["Version"] +ModelCompressionTypeType = Literal["Gzip", "None"] +ModelInfrastructureTypeType = Literal["RealTimeInference"] +ModelMetadataFilterTypeType = Literal["Domain", "Framework", "FrameworkVersion", "Task"] +ModelPackageGroupSortByType = Literal["CreationTime", "Name"] +ModelPackageGroupStatusType = Literal["Completed", "DeleteFailed", "Deleting", "Failed", "InProgress", "Pending"] +ModelPackageSortByType = Literal["CreationTime", "Name"] +ModelPackageStatusType = Literal["Completed", "Deleting", "Failed", "InProgress", "Pending"] +ModelPackageTypeType = Literal["Both", "Unversioned", "Versioned"] +ModelSortKeyType = Literal["CreationTime", "Name"] +ModelVariantActionType = Literal["Promote", "Remove", "Retain"] +ModelVariantStatusType = Literal["Creating", "Deleted", "Deleting", "InService", "Updating"] +MonitoringAlertHistorySortKeyType = Literal["CreationTime", "Status"] +MonitoringAlertStatusType = Literal["InAlert", "OK"] +MonitoringExecutionSortKeyType = Literal["CreationTime", "ScheduledTime", "Status"] +MonitoringJobDefinitionSortKeyType = Literal["CreationTime", "Name"] +MonitoringProblemTypeType = Literal["BinaryClassification", "MulticlassClassification", "Regression"] +MonitoringScheduleSortKeyType = Literal["CreationTime", "Name", "Status"] +MonitoringTypeType = Literal["DataQuality", "ModelBias", "ModelExplainability", "ModelQuality"] +NotebookInstanceAcceleratorTypeType = Literal["ml.eia1.large", + "ml.eia1.medium", + "ml.eia1.xlarge", + "ml.eia2.large", + "ml.eia2.medium", + "ml.eia2.xlarge",] +NotebookInstanceDeletedWaiterName = Literal["notebook_instance_deleted"] +NotebookInstanceInServiceWaiterName = Literal["notebook_instance_in_service"] +NotebookInstanceLifecycleConfigSortKeyType = Literal["CreationTime", "LastModifiedTime", "Name"] +NotebookInstanceLifecycleConfigSortOrderType = Literal["Ascending", "Descending"] +NotebookInstanceSortKeyType = Literal["CreationTime", "Name", "Status"] +NotebookInstanceSortOrderType = Literal["Ascending", "Descending"] +NotebookInstanceStatusType = Literal["Deleting", "Failed", "InService", "Pending", "Stopped", "Stopping", "Updating"] +NotebookInstanceStoppedWaiterName = Literal["notebook_instance_stopped"] +NotebookOutputOptionType = Literal["Allowed", "Disabled"] +ObjectiveStatusType = Literal["Failed", "Pending", "Succeeded"] +OfflineStoreStatusValueType = Literal["Active", "Blocked", "Disabled"] +OperatorType = Literal["Contains", + "Equals", + "Exists", + "GreaterThan", + "GreaterThanOrEqualTo", + "In", + "LessThan", + "LessThanOrEqualTo", + "NotEquals", + "NotExists",] +OptimizationJobDeploymentInstanceTypeType = Literal["ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.g6.12xlarge", + "ml.g6.16xlarge", + "ml.g6.24xlarge", + "ml.g6.2xlarge", + "ml.g6.48xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.xlarge", + "ml.inf2.24xlarge", + "ml.inf2.48xlarge", + "ml.inf2.8xlarge", + "ml.inf2.xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge",] +OptimizationJobStatusType = Literal["COMPLETED", "FAILED", "INPROGRESS", "STARTING", "STOPPED", "STOPPING"] +OrderKeyType = Literal["Ascending", "Descending"] +OutputCompressionTypeType = Literal["GZIP", "NONE"] +ParameterTypeType = Literal["Categorical", "Continuous", "FreeText", "Integer"] +PipelineExecutionStatusType = Literal["Executing", "Failed", "Stopped", "Stopping", "Succeeded"] +PipelineStatusType = Literal["Active", "Deleting"] +ProblemTypeType = Literal["BinaryClassification", "MulticlassClassification", "Regression"] +ProcessingInstanceTypeType = Literal["ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c4.xlarge", + "ml.c5.18xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.p2.16xlarge", + "ml.p2.8xlarge", + "ml.p2.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.t3.2xlarge", + "ml.t3.large", + "ml.t3.medium", + "ml.t3.xlarge",] +ProcessingJobCompletedOrStoppedWaiterName = Literal["processing_job_completed_or_stopped"] +ProcessingJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +ProcessingS3CompressionTypeType = Literal["Gzip", "None"] +ProcessingS3DataDistributionTypeType = Literal["FullyReplicated", "ShardedByS3Key"] +ProcessingS3DataTypeType = Literal["ManifestFile", "S3Prefix"] +ProcessingS3InputModeType = Literal["File", "Pipe"] +ProcessingS3UploadModeType = Literal["Continuous", "EndOfJob"] +ProcessorType = Literal["CPU", "GPU"] +ProductionVariantAcceleratorTypeType = Literal["ml.eia1.large", + "ml.eia1.medium", + "ml.eia1.xlarge", + "ml.eia2.large", + "ml.eia2.medium", + "ml.eia2.xlarge",] +ProductionVariantInferenceAmiVersionType = Literal["al2-ami-sagemaker-inference-gpu-2"] +ProductionVariantInstanceTypeType = Literal["ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c4.large", + "ml.c4.xlarge", + "ml.c5.18xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5d.18xlarge", + "ml.c5d.2xlarge", + "ml.c5d.4xlarge", + "ml.c5d.9xlarge", + "ml.c5d.large", + "ml.c5d.xlarge", + "ml.c6g.12xlarge", + "ml.c6g.16xlarge", + "ml.c6g.2xlarge", + "ml.c6g.4xlarge", + "ml.c6g.8xlarge", + "ml.c6g.large", + "ml.c6g.xlarge", + "ml.c6gd.12xlarge", + "ml.c6gd.16xlarge", + "ml.c6gd.2xlarge", + "ml.c6gd.4xlarge", + "ml.c6gd.8xlarge", + "ml.c6gd.large", + "ml.c6gd.xlarge", + "ml.c6gn.12xlarge", + "ml.c6gn.16xlarge", + "ml.c6gn.2xlarge", + "ml.c6gn.4xlarge", + "ml.c6gn.8xlarge", + "ml.c6gn.large", + "ml.c6gn.xlarge", + "ml.c6i.12xlarge", + "ml.c6i.16xlarge", + "ml.c6i.24xlarge", + "ml.c6i.2xlarge", + "ml.c6i.32xlarge", + "ml.c6i.4xlarge", + "ml.c6i.8xlarge", + "ml.c6i.large", + "ml.c6i.xlarge", + "ml.c7g.12xlarge", + "ml.c7g.16xlarge", + "ml.c7g.2xlarge", + "ml.c7g.4xlarge", + "ml.c7g.8xlarge", + "ml.c7g.large", + "ml.c7g.xlarge", + "ml.c7i.12xlarge", + "ml.c7i.16xlarge", + "ml.c7i.24xlarge", + "ml.c7i.2xlarge", + "ml.c7i.48xlarge", + "ml.c7i.4xlarge", + "ml.c7i.8xlarge", + "ml.c7i.large", + "ml.c7i.xlarge", + "ml.dl1.24xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.g6.12xlarge", + "ml.g6.16xlarge", + "ml.g6.24xlarge", + "ml.g6.2xlarge", + "ml.g6.48xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.xlarge", + "ml.inf1.24xlarge", + "ml.inf1.2xlarge", + "ml.inf1.6xlarge", + "ml.inf1.xlarge", + "ml.inf2.24xlarge", + "ml.inf2.48xlarge", + "ml.inf2.8xlarge", + "ml.inf2.xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5d.12xlarge", + "ml.m5d.24xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m6g.12xlarge", + "ml.m6g.16xlarge", + "ml.m6g.2xlarge", + "ml.m6g.4xlarge", + "ml.m6g.8xlarge", + "ml.m6g.large", + "ml.m6g.xlarge", + "ml.m6gd.12xlarge", + "ml.m6gd.16xlarge", + "ml.m6gd.2xlarge", + "ml.m6gd.4xlarge", + "ml.m6gd.8xlarge", + "ml.m6gd.large", + "ml.m6gd.xlarge", + "ml.m7i.12xlarge", + "ml.m7i.16xlarge", + "ml.m7i.24xlarge", + "ml.m7i.2xlarge", + "ml.m7i.48xlarge", + "ml.m7i.4xlarge", + "ml.m7i.8xlarge", + "ml.m7i.large", + "ml.m7i.xlarge", + "ml.p2.16xlarge", + "ml.p2.8xlarge", + "ml.p2.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.r5.12xlarge", + "ml.r5.24xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5d.12xlarge", + "ml.r5d.24xlarge", + "ml.r5d.2xlarge", + "ml.r5d.4xlarge", + "ml.r5d.large", + "ml.r5d.xlarge", + "ml.r6g.12xlarge", + "ml.r6g.16xlarge", + "ml.r6g.2xlarge", + "ml.r6g.4xlarge", + "ml.r6g.8xlarge", + "ml.r6g.large", + "ml.r6g.xlarge", + "ml.r6gd.12xlarge", + "ml.r6gd.16xlarge", + "ml.r6gd.2xlarge", + "ml.r6gd.4xlarge", + "ml.r6gd.8xlarge", + "ml.r6gd.large", + "ml.r6gd.xlarge", + "ml.r7i.12xlarge", + "ml.r7i.16xlarge", + "ml.r7i.24xlarge", + "ml.r7i.2xlarge", + "ml.r7i.48xlarge", + "ml.r7i.4xlarge", + "ml.r7i.8xlarge", + "ml.r7i.large", + "ml.r7i.xlarge", + "ml.t2.2xlarge", + "ml.t2.large", + "ml.t2.medium", + "ml.t2.xlarge", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge",] +ProfilingStatusType = Literal["Disabled", "Enabled"] +ProjectSortByType = Literal["CreationTime", "Name"] +ProjectSortOrderType = Literal["Ascending", "Descending"] +ProjectStatusType = Literal["CreateCompleted", + "CreateFailed", + "CreateInProgress", + "DeleteCompleted", + "DeleteFailed", + "DeleteInProgress", + "Pending", + "UpdateCompleted", + "UpdateFailed", + "UpdateInProgress",] +RStudioServerProAccessStatusType = Literal["DISABLED", "ENABLED"] +RStudioServerProUserGroupType = Literal["R_STUDIO_ADMIN", "R_STUDIO_USER"] +RecommendationJobStatusType = Literal["COMPLETED", "DELETED", "DELETING", "FAILED", "IN_PROGRESS", "PENDING", "STOPPED", "STOPPING"] +RecommendationJobSupportedEndpointTypeType = Literal["RealTime", "Serverless"] +RecommendationJobTypeType = Literal["Advanced", "Default"] +RecommendationStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "NOT_APPLICABLE"] +RecommendationStepTypeType = Literal["BENCHMARK"] +RecordWrapperType = Literal["None", "RecordIO"] +RedshiftResultCompressionTypeType = Literal["BZIP2", "GZIP", "None", "SNAPPY", "ZSTD"] +RedshiftResultFormatType = Literal["CSV", "PARQUET"] +RepositoryAccessModeType = Literal["Platform", "Vpc"] +ResourceCatalogSortByType = Literal["CreationTime"] +ResourceCatalogSortOrderType = Literal["Ascending", "Descending"] +ResourceTypeType = Literal["Endpoint", + "Experiment", + "ExperimentTrial", + "ExperimentTrialComponent", + "FeatureGroup", + "FeatureMetadata", + "HyperParameterTuningJob", + "Image", + "ImageVersion", + "Model", + "ModelCard", + "ModelPackage", + "ModelPackageGroup", + "Pipeline", + "PipelineExecution", + "Project", + "TrainingJob",] +RetentionTypeType = Literal["Delete", "Retain"] +RootAccessType = Literal["Disabled", "Enabled"] +RoutingStrategyType = Literal["LEAST_OUTSTANDING_REQUESTS", "RANDOM"] +RuleEvaluationStatusType = Literal["Error", "InProgress", "IssuesFound", "NoIssuesFound", "Stopped", "Stopping"] +S3DataDistributionType = Literal["FullyReplicated", "ShardedByS3Key"] +S3DataTypeType = Literal["AugmentedManifestFile", "ManifestFile", "S3Prefix"] +S3ModelDataTypeType = Literal["S3Object", "S3Prefix"] +SagemakerServicecatalogStatusType = Literal["Disabled", "Enabled"] +ScheduleStatusType = Literal["Failed", "Pending", "Scheduled", "Stopped"] +SearchPaginatorName = Literal["search"] +SearchSortOrderType = Literal["Ascending", "Descending"] +SecondaryStatusType = Literal["Completed", + "Downloading", + "DownloadingTrainingImage", + "Failed", + "Interrupted", + "LaunchingMLInstances", + "MaxRuntimeExceeded", + "MaxWaitTimeExceeded", + "Pending", + "PreparingTrainingStack", + "Restarting", + "Starting", + "Stopped", + "Stopping", + "Training", + "Updating", + "Uploading",] +SharingTypeType = Literal["Private", "Shared"] +SkipModelValidationType = Literal["All", "None"] +SortActionsByType = Literal["CreationTime", "Name"] +SortArtifactsByType = Literal["CreationTime"] +SortAssociationsByType = Literal["CreationTime", "DestinationArn", "DestinationType", "SourceArn", "SourceType"] +SortByType = Literal["CreationTime", "Name", "Status"] +SortContextsByType = Literal["CreationTime", "Name"] +SortExperimentsByType = Literal["CreationTime", "Name"] +SortInferenceExperimentsByType = Literal["CreationTime", "Name", "Status"] +SortLineageGroupsByType = Literal["CreationTime", "Name"] +SortOrderType = Literal["Ascending", "Descending"] +SortPipelineExecutionsByType = Literal["CreationTime", "PipelineExecutionArn"] +SortPipelinesByType = Literal["CreationTime", "Name"] +SortTrackingServerByType = Literal["CreationTime", "Name", "Status"] +SortTrialComponentsByType = Literal["CreationTime", "Name"] +SortTrialsByType = Literal["CreationTime", "Name"] +SpaceSortKeyType = Literal["CreationTime", "LastModifiedTime"] +SpaceStatusType = Literal["Delete_Failed", "Deleting", "Failed", "InService", "Pending", "Update_Failed", "Updating"] +SplitTypeType = Literal["Line", "None", "RecordIO", "TFRecord"] +StageStatusType = Literal["CREATING", + "DEPLOYED", + "FAILED", + "INPROGRESS", + "READYTODEPLOY", + "STARTING", + "STOPPED", + "STOPPING",] +StatisticType = Literal["Average", "Maximum", "Minimum", "SampleCount", "Sum"] +StepStatusType = Literal["Executing", "Failed", "Starting", "Stopped", "Stopping", "Succeeded"] +StorageTypeType = Literal["InMemory", "Standard"] +StudioLifecycleConfigAppTypeType = Literal["CodeEditor", "JupyterLab", "JupyterServer", "KernelGateway"] +StudioLifecycleConfigSortKeyType = Literal["CreationTime", "LastModifiedTime", "Name"] +StudioWebPortalType = Literal["DISABLED", "ENABLED"] +TableFormatType = Literal["Default", "Glue", "Iceberg"] +TargetDeviceType = Literal["aisage", + "amba_cv2", + "amba_cv22", + "amba_cv25", + "coreml", + "deeplens", + "imx8mplus", + "imx8qm", + "jacinto_tda4vm", + "jetson_nano", + "jetson_tx1", + "jetson_tx2", + "jetson_xavier", + "lambda", + "ml_c4", + "ml_c5", + "ml_c6g", + "ml_eia2", + "ml_g4dn", + "ml_inf1", + "ml_inf2", + "ml_m4", + "ml_m5", + "ml_m6g", + "ml_p2", + "ml_p3", + "ml_trn1", + "qcs603", + "qcs605", + "rasp3b", + "rasp4b", + "rk3288", + "rk3399", + "sbe_c", + "sitara_am57x", + "x86_win32", + "x86_win64",] +TargetPlatformAcceleratorType = Literal["INTEL_GRAPHICS", "MALI", "NNA", "NVIDIA"] +TargetPlatformArchType = Literal["ARM64", "ARM_EABI", "ARM_EABIHF", "X86", "X86_64"] +TargetPlatformOsType = Literal["ANDROID", "LINUX"] +ThroughputModeType = Literal["OnDemand", "Provisioned"] +TrackingServerSizeType = Literal["Large", "Medium", "Small"] +TrackingServerStatusType = Literal["CreateFailed", + "Created", + "Creating", + "DeleteFailed", + "Deleting", + "MaintenanceComplete", + "MaintenanceFailed", + "MaintenanceInProgress", + "StartFailed", + "Started", + "Starting", + "StopFailed", + "Stopped", + "Stopping", + "UpdateFailed", + "Updated", + "Updating",] +TrafficRoutingConfigTypeType = Literal["ALL_AT_ONCE", "CANARY", "LINEAR"] +TrafficTypeType = Literal["PHASES", "STAIRS"] +TrainingInputModeType = Literal["FastFile", "File", "Pipe"] +TrainingInstanceTypeType = Literal["ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c4.xlarge", + "ml.c5.18xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.xlarge", + "ml.c5n.18xlarge", + "ml.c5n.2xlarge", + "ml.c5n.4xlarge", + "ml.c5n.9xlarge", + "ml.c5n.xlarge", + "ml.c6i.12xlarge", + "ml.c6i.16xlarge", + "ml.c6i.24xlarge", + "ml.c6i.2xlarge", + "ml.c6i.32xlarge", + "ml.c6i.4xlarge", + "ml.c6i.8xlarge", + "ml.c6i.xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m6i.12xlarge", + "ml.m6i.16xlarge", + "ml.m6i.24xlarge", + "ml.m6i.2xlarge", + "ml.m6i.32xlarge", + "ml.m6i.4xlarge", + "ml.m6i.8xlarge", + "ml.m6i.large", + "ml.m6i.xlarge", + "ml.p2.16xlarge", + "ml.p2.8xlarge", + "ml.p2.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3dn.24xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.p5.48xlarge", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge",] +TrainingJobCompletedOrStoppedWaiterName = Literal["training_job_completed_or_stopped"] +TrainingJobEarlyStoppingTypeType = Literal["Auto", "Off"] +TrainingJobSortByOptionsType = Literal["CreationTime", "FinalObjectiveMetricValue", "Name", "Status"] +TrainingJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +TrainingRepositoryAccessModeType = Literal["Platform", "Vpc"] +TransformInstanceTypeType = Literal["ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c4.xlarge", + "ml.c5.18xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.xlarge", + "ml.c6i.12xlarge", + "ml.c6i.16xlarge", + "ml.c6i.24xlarge", + "ml.c6i.2xlarge", + "ml.c6i.32xlarge", + "ml.c6i.4xlarge", + "ml.c6i.8xlarge", + "ml.c6i.large", + "ml.c6i.xlarge", + "ml.c7i.12xlarge", + "ml.c7i.16xlarge", + "ml.c7i.24xlarge", + "ml.c7i.2xlarge", + "ml.c7i.48xlarge", + "ml.c7i.4xlarge", + "ml.c7i.8xlarge", + "ml.c7i.large", + "ml.c7i.xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.2xlarge", + "ml.g5.48xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m6i.12xlarge", + "ml.m6i.16xlarge", + "ml.m6i.24xlarge", + "ml.m6i.2xlarge", + "ml.m6i.32xlarge", + "ml.m6i.4xlarge", + "ml.m6i.8xlarge", + "ml.m6i.large", + "ml.m6i.xlarge", + "ml.m7i.12xlarge", + "ml.m7i.16xlarge", + "ml.m7i.24xlarge", + "ml.m7i.2xlarge", + "ml.m7i.48xlarge", + "ml.m7i.4xlarge", + "ml.m7i.8xlarge", + "ml.m7i.large", + "ml.m7i.xlarge", + "ml.p2.16xlarge", + "ml.p2.8xlarge", + "ml.p2.xlarge", + "ml.p3.16xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.r6i.12xlarge", + "ml.r6i.16xlarge", + "ml.r6i.24xlarge", + "ml.r6i.2xlarge", + "ml.r6i.32xlarge", + "ml.r6i.4xlarge", + "ml.r6i.8xlarge", + "ml.r6i.large", + "ml.r6i.xlarge", + "ml.r7i.12xlarge", + "ml.r7i.16xlarge", + "ml.r7i.24xlarge", + "ml.r7i.2xlarge", + "ml.r7i.48xlarge", + "ml.r7i.4xlarge", + "ml.r7i.8xlarge", + "ml.r7i.large", + "ml.r7i.xlarge",] +TransformJobCompletedOrStoppedWaiterName = Literal["transform_job_completed_or_stopped"] +TransformJobStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +TrialComponentPrimaryStatusType = Literal["Completed", "Failed", "InProgress", "Stopped", "Stopping"] +TtlDurationUnitType = Literal["Days", "Hours", "Minutes", "Seconds", "Weeks"] +UserProfileSortKeyType = Literal["CreationTime", "LastModifiedTime"] +UserProfileStatusType = Literal["Delete_Failed", "Deleting", "Failed", "InService", "Pending", "Update_Failed", "Updating"] +VariantPropertyTypeType = Literal["DataCaptureConfig", "DesiredInstanceCount", "DesiredWeight"] +VariantStatusType = Literal["ActivatingTraffic", "Baking", "Creating", "Deleting", "Updating"] +VendorGuidanceType = Literal["ARCHIVED", "NOT_PROVIDED", "STABLE", "TO_BE_ARCHIVED"] +WarmPoolResourceStatusType = Literal["Available", "InUse", "Reused", "Terminated"] +WorkforceStatusType = Literal["Active", "Deleting", "Failed", "Initializing", "Updating"] +SageMakerServiceName = Literal["sagemaker"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_actions", + "list_algorithms", + "list_aliases", + "list_app_image_configs", + "list_apps", + "list_artifacts", + "list_associations", + "list_auto_ml_jobs", + "list_candidates_for_auto_ml_job", + "list_cluster_nodes", + "list_clusters", + "list_code_repositories", + "list_compilation_jobs", + "list_contexts", + "list_data_quality_job_definitions", + "list_device_fleets", + "list_devices", + "list_domains", + "list_edge_deployment_plans", + "list_edge_packaging_jobs", + "list_endpoint_configs", + "list_endpoints", + "list_experiments", + "list_feature_groups", + "list_flow_definitions", + "list_human_task_uis", + "list_hyper_parameter_tuning_jobs", + "list_image_versions", + "list_images", + "list_inference_components", + "list_inference_experiments", + "list_inference_recommendations_job_steps", + "list_inference_recommendations_jobs", + "list_labeling_jobs", + "list_labeling_jobs_for_workteam", + "list_lineage_groups", + "list_mlflow_tracking_servers", + "list_model_bias_job_definitions", + "list_model_card_export_jobs", + "list_model_card_versions", + "list_model_cards", + "list_model_explainability_job_definitions", + "list_model_metadata", + "list_model_package_groups", + "list_model_packages", + "list_model_quality_job_definitions", + "list_models", + "list_monitoring_alert_history", + "list_monitoring_alerts", + "list_monitoring_executions", + "list_monitoring_schedules", + "list_notebook_instance_lifecycle_configs", + "list_notebook_instances", + "list_optimization_jobs", + "list_pipeline_execution_steps", + "list_pipeline_executions", + "list_pipeline_parameters_for_execution", + "list_pipelines", + "list_processing_jobs", + "list_resource_catalogs", + "list_spaces", + "list_stage_devices", + "list_studio_lifecycle_configs", + "list_subscribed_workteams", + "list_tags", + "list_training_jobs", + "list_training_jobs_for_hyper_parameter_tuning_job", + "list_transform_jobs", + "list_trial_components", + "list_trials", + "list_user_profiles", + "list_workforces", + "list_workteams", + "search",] +WaiterName = Literal["endpoint_deleted", + "endpoint_in_service", + "image_created", + "image_deleted", + "image_updated", + "image_version_created", + "image_version_deleted", + "notebook_instance_deleted", + "notebook_instance_in_service", + "notebook_instance_stopped", + "processing_job_completed_or_stopped", + "training_job_completed_or_stopped", + "transform_job_completed_or_stopped",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +AppSpecificationUnionTypeDef = Union['AppSpecificationTypeDef', 'AppSpecificationExtraOutputTypeDef'] +DataQualityAppSpecificationUnionTypeDef = Union[ 'DataQualityAppSpecificationTypeDef', 'DataQualityAppSpecificationOutputTypeDef' ] +DebugRuleConfigurationUnionTypeDef = Union[ 'DebugRuleConfigurationTypeDef', 'DebugRuleConfigurationExtraOutputTypeDef' ] +NeoVpcConfigUnionTypeDef = Union['NeoVpcConfigTypeDef', 'NeoVpcConfigOutputTypeDef'] +ModelBiasAppSpecificationUnionTypeDef = Union[ 'ModelBiasAppSpecificationTypeDef', 'ModelBiasAppSpecificationOutputTypeDef' ] +ModelExplainabilityAppSpecificationUnionTypeDef = Union[ 'ModelExplainabilityAppSpecificationTypeDef', 'ModelExplainabilityAppSpecificationOutputTypeDef' ] +ModelQualityAppSpecificationUnionTypeDef = Union[ 'ModelQualityAppSpecificationTypeDef', 'ModelQualityAppSpecificationOutputTypeDef' ] +OptimizationVpcConfigUnionTypeDef = Union[ 'OptimizationVpcConfigTypeDef', 'OptimizationVpcConfigOutputTypeDef' ] +VpcConfigUnionTypeDef = Union['VpcConfigTypeDef', 'VpcConfigExtraOutputTypeDef'] +ProfilerConfigUnionTypeDef = Union['ProfilerConfigTypeDef', 'ProfilerConfigExtraOutputTypeDef'] +ProfilerRuleConfigurationUnionTypeDef = Union[ 'ProfilerRuleConfigurationTypeDef', 'ProfilerRuleConfigurationOutputTypeDef' ] +SourceIpConfigUnionTypeDef = Union['SourceIpConfigTypeDef', 'SourceIpConfigExtraOutputTypeDef'] +ArtifactSourceUnionTypeDef = Union['ArtifactSourceTypeDef', 'ArtifactSourceExtraOutputTypeDef'] +AutoMLSecurityConfigUnionTypeDef = Union[ 'AutoMLSecurityConfigTypeDef', 'AutoMLSecurityConfigOutputTypeDef' ] +MonitoringNetworkConfigUnionTypeDef = Union[ 'MonitoringNetworkConfigTypeDef', 'MonitoringNetworkConfigOutputTypeDef' ] +InferenceExperimentDataStorageConfigUnionTypeDef = Union[ 'InferenceExperimentDataStorageConfigTypeDef', 'InferenceExperimentDataStorageConfigOutputTypeDef' ] +DataCaptureConfigUnionTypeDef = Union['DataCaptureConfigTypeDef', 'DataCaptureConfigOutputTypeDef'] +CodeEditorAppImageConfigUnionTypeDef = Union[ 'CodeEditorAppImageConfigTypeDef', 'CodeEditorAppImageConfigExtraOutputTypeDef' ] +JupyterLabAppImageConfigUnionTypeDef = Union[ 'JupyterLabAppImageConfigTypeDef', 'JupyterLabAppImageConfigExtraOutputTypeDef' ] +DebugHookConfigUnionTypeDef = Union['DebugHookConfigTypeDef', 'DebugHookConfigExtraOutputTypeDef'] +InferenceExperimentScheduleUnionTypeDef = Union[ 'InferenceExperimentScheduleTypeDef', 'InferenceExperimentScheduleExtraOutputTypeDef' ] +NetworkConfigUnionTypeDef = Union['NetworkConfigTypeDef', 'NetworkConfigExtraOutputTypeDef'] +HyperParameterTuningJobWarmStartConfigUnionTypeDef = Union[ 'HyperParameterTuningJobWarmStartConfigTypeDef', 'HyperParameterTuningJobWarmStartConfigExtraOutputTypeDef', ] +ResourceConfigUnionTypeDef = Union['ResourceConfigTypeDef', 'ResourceConfigExtraOutputTypeDef'] +KernelGatewayImageConfigUnionTypeDef = Union[ 'KernelGatewayImageConfigTypeDef', 'KernelGatewayImageConfigExtraOutputTypeDef' ] +MemberDefinitionUnionTypeDef = Union['MemberDefinitionTypeDef', 'MemberDefinitionExtraOutputTypeDef'] +RecommendationJobStoppingConditionsUnionTypeDef = Union[ 'RecommendationJobStoppingConditionsTypeDef', 'RecommendationJobStoppingConditionsOutputTypeDef' ] +OptimizationConfigUnionTypeDef = Union['OptimizationConfigTypeDef', 'OptimizationConfigOutputTypeDef'] +ServiceCatalogProvisioningDetailsUnionTypeDef = Union[ 'ServiceCatalogProvisioningDetailsTypeDef', 'ServiceCatalogProvisioningDetailsExtraOutputTypeDef' ] +SelectiveExecutionConfigUnionTypeDef = Union[ 'SelectiveExecutionConfigTypeDef', 'SelectiveExecutionConfigExtraOutputTypeDef' ] +ShadowModeConfigUnionTypeDef = Union['ShadowModeConfigTypeDef', 'ShadowModeConfigOutputTypeDef'] +DomainSettingsUnionTypeDef = Union['DomainSettingsTypeDef', 'DomainSettingsOutputTypeDef'] +AsyncInferenceConfigUnionTypeDef = Union[ 'AsyncInferenceConfigTypeDef', 'AsyncInferenceConfigOutputTypeDef' ] +AutoMLJobConfigUnionTypeDef = Union['AutoMLJobConfigTypeDef', 'AutoMLJobConfigOutputTypeDef'] +LabelingJobAlgorithmsConfigUnionTypeDef = Union[ 'LabelingJobAlgorithmsConfigTypeDef', 'LabelingJobAlgorithmsConfigOutputTypeDef' ] +ChannelUnionTypeDef = Union['ChannelTypeDef', 'ChannelExtraOutputTypeDef'] +DefaultSpaceSettingsUnionTypeDef = Union[ 'DefaultSpaceSettingsTypeDef', 'DefaultSpaceSettingsOutputTypeDef' ] +UserSettingsUnionTypeDef = Union['UserSettingsTypeDef', 'UserSettingsOutputTypeDef'] +SpaceSettingsUnionTypeDef = Union['SpaceSettingsTypeDef', 'SpaceSettingsOutputTypeDef'] +HyperParameterTuningJobConfigUnionTypeDef = Union[ 'HyperParameterTuningJobConfigTypeDef', 'HyperParameterTuningJobConfigExtraOutputTypeDef' ] +LabelingJobInputConfigUnionTypeDef = Union[ 'LabelingJobInputConfigTypeDef', 'LabelingJobInputConfigExtraOutputTypeDef' ] +MonitoringOutputConfigUnionTypeDef = Union[ 'MonitoringOutputConfigTypeDef', 'MonitoringOutputConfigExtraOutputTypeDef' ] +ProcessingOutputConfigUnionTypeDef = Union[ 'ProcessingOutputConfigTypeDef', 'ProcessingOutputConfigExtraOutputTypeDef' ] +HumanLoopConfigUnionTypeDef = Union['HumanLoopConfigTypeDef', 'HumanLoopConfigOutputTypeDef'] +HumanTaskConfigUnionTypeDef = Union['HumanTaskConfigTypeDef', 'HumanTaskConfigOutputTypeDef'] +AlgorithmSpecificationUnionTypeDef = Union[ 'AlgorithmSpecificationTypeDef', 'AlgorithmSpecificationExtraOutputTypeDef' ] +AutoMLProblemTypeConfigUnionTypeDef = Union[ 'AutoMLProblemTypeConfigTypeDef', 'AutoMLProblemTypeConfigOutputTypeDef' ] +DeploymentConfigUnionTypeDef = Union['DeploymentConfigTypeDef', 'DeploymentConfigOutputTypeDef'] +RecommendationJobInputConfigUnionTypeDef = Union[ 'RecommendationJobInputConfigTypeDef', 'RecommendationJobInputConfigOutputTypeDef' ] +ExplainerConfigUnionTypeDef = Union['ExplainerConfigTypeDef', 'ExplainerConfigOutputTypeDef'] +HyperParameterTrainingJobDefinitionUnionTypeDef = Union[ 'HyperParameterTrainingJobDefinitionTypeDef', 'HyperParameterTrainingJobDefinitionExtraOutputTypeDef', ] +TrainingSpecificationUnionTypeDef = Union[ 'TrainingSpecificationTypeDef', 'TrainingSpecificationOutputTypeDef' ] +ContainerDefinitionUnionTypeDef = Union[ 'ContainerDefinitionTypeDef', 'ContainerDefinitionExtraOutputTypeDef' ] +DataQualityJobInputUnionTypeDef = Union[ 'DataQualityJobInputTypeDef', 'DataQualityJobInputOutputTypeDef' ] +ModelBiasJobInputUnionTypeDef = Union['ModelBiasJobInputTypeDef', 'ModelBiasJobInputOutputTypeDef'] +ModelExplainabilityJobInputUnionTypeDef = Union[ 'ModelExplainabilityJobInputTypeDef', 'ModelExplainabilityJobInputOutputTypeDef' ] +ModelQualityJobInputUnionTypeDef = Union[ 'ModelQualityJobInputTypeDef', 'ModelQualityJobInputOutputTypeDef' ] +AdditionalInferenceSpecificationDefinitionUnionTypeDef = Union[ 'AdditionalInferenceSpecificationDefinitionTypeDef', 'AdditionalInferenceSpecificationDefinitionExtraOutputTypeDef', ] +InferenceSpecificationUnionTypeDef = Union[ 'InferenceSpecificationTypeDef', 'InferenceSpecificationExtraOutputTypeDef' ] +SourceAlgorithmSpecificationUnionTypeDef = Union[ 'SourceAlgorithmSpecificationTypeDef', 'SourceAlgorithmSpecificationExtraOutputTypeDef' ] +MonitoringScheduleConfigUnionTypeDef = Union[ 'MonitoringScheduleConfigTypeDef', 'MonitoringScheduleConfigExtraOutputTypeDef' ] +AlgorithmValidationSpecificationUnionTypeDef = Union[ 'AlgorithmValidationSpecificationTypeDef', 'AlgorithmValidationSpecificationOutputTypeDef' ] +ModelPackageValidationSpecificationUnionTypeDef = Union[ 'ModelPackageValidationSpecificationTypeDef', 'ModelPackageValidationSpecificationExtraOutputTypeDef', ] diff --git a/aws_resource_validator/pydantic_models/sagemaker_edge_classes.py b/aws_resource_validator/pydantic_models/sagemaker_edge_classes.py new file mode 100644 index 00000000..308b507d --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_edge_classes.py @@ -0,0 +1,95 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_edge_constants import * + +class ChecksumTypeDef(BaseModel): + Type: Optional[Literal["SHA1"]] = None + Sum: Optional[str] = None + +class DeploymentModelTypeDef(BaseModel): + ModelHandle: Optional[str] = None + ModelName: Optional[str] = None + ModelVersion: Optional[str] = None + DesiredState: Optional[ModelStateType] = None + State: Optional[ModelStateType] = None + Status: Optional[DeploymentStatusType] = None + StatusReason: Optional[str] = None + RollbackFailureReason: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetDeploymentsRequestRequestTypeDef(BaseModel): + DeviceName: str + DeviceFleetName: str + +class GetDeviceRegistrationRequestRequestTypeDef(BaseModel): + DeviceName: str + DeviceFleetName: str + +class DefinitionTypeDef(BaseModel): + ModelHandle: Optional[str] = None + S3Url: Optional[str] = None + Checksum: Optional[ChecksumTypeDef] = None + State: Optional[ModelStateType] = None + +class DeploymentResultTypeDef(BaseModel): + DeploymentName: Optional[str] = None + DeploymentStatus: Optional[str] = None + DeploymentStatusMessage: Optional[str] = None + DeploymentStartTime: Optional[TimestampTypeDef] = None + DeploymentEndTime: Optional[TimestampTypeDef] = None + DeploymentModels: Optional[Sequence[DeploymentModelTypeDef]] = None + +class EdgeMetricTypeDef(BaseModel): + Dimension: Optional[str] = None + MetricName: Optional[str] = None + Value: Optional[float] = None + Timestamp: Optional[TimestampTypeDef] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeviceRegistrationResultTypeDef(BaseModel): + DeviceRegistration: str + CacheTTL: str + ResponseMetadata: ResponseMetadataTypeDef + +class EdgeDeploymentTypeDef(BaseModel): + DeploymentName: Optional[str] = None + Type: Optional[Literal["Model"]] = None + FailureHandlingPolicy: Optional[FailureHandlingPolicyType] = None + Definitions: Optional[List[DefinitionTypeDef]] = None + +class ModelTypeDef(BaseModel): + ModelName: Optional[str] = None + ModelVersion: Optional[str] = None + LatestSampleTime: Optional[TimestampTypeDef] = None + LatestInference: Optional[TimestampTypeDef] = None + ModelMetrics: Optional[Sequence[EdgeMetricTypeDef]] = None + +class GetDeploymentsResultTypeDef(BaseModel): + Deployments: List[EdgeDeploymentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendHeartbeatRequestRequestTypeDef(BaseModel): + AgentVersion: str + DeviceName: str + DeviceFleetName: str + AgentMetrics: Optional[Sequence[EdgeMetricTypeDef]] = None + Models: Optional[Sequence[ModelTypeDef]] = None + DeploymentResult: Optional[DeploymentResultTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/sagemaker_edge_constants.py b/aws_resource_validator/pydantic_models/sagemaker_edge_constants.py new file mode 100644 index 00000000..c9a87fdf --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_edge_constants.py @@ -0,0 +1,395 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChecksumTypeType = Literal["SHA1"] +DeploymentStatusType = Literal["FAIL", "SUCCESS"] +DeploymentTypeType = Literal["Model"] +FailureHandlingPolicyType = Literal["DO_NOTHING", "ROLLBACK_ON_FAILURE"] +ModelStateType = Literal["DEPLOY", "UNDEPLOY"] +SagemakerEdgeManagerServiceName = Literal["sagemaker-edge"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", "eu-central-1", "eu-west-1", "us-east-1", "us-east-2", "us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_classes.py b/aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_classes.py new file mode 100644 index 00000000..470dcbb2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_classes.py @@ -0,0 +1,83 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_featurestore_runtime_constants import * + +class BatchGetRecordErrorTypeDef(BaseModel): + FeatureGroupName: str + RecordIdentifierValueAsString: str + ErrorCode: str + ErrorMessage: str + +class BatchGetRecordIdentifierTypeDef(BaseModel): + FeatureGroupName: str + RecordIdentifiersValueAsString: Sequence[str] + FeatureNames: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class FeatureValueTypeDef(BaseModel): + FeatureName: str + ValueAsString: Optional[str] = None + ValueAsStringList: Optional[List[str]] = None + +class DeleteRecordRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + RecordIdentifierValueAsString: str + EventTime: str + TargetStores: Optional[Sequence[TargetStoreType]] = None + DeletionMode: Optional[DeletionModeType] = None + +class GetRecordRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + RecordIdentifierValueAsString: str + FeatureNames: Optional[Sequence[str]] = None + ExpirationTimeResponse: Optional[ExpirationTimeResponseType] = None + +class TtlDurationTypeDef(BaseModel): + Unit: TtlDurationUnitType + Value: int + +class BatchGetRecordRequestRequestTypeDef(BaseModel): + Identifiers: Sequence[BatchGetRecordIdentifierTypeDef] + ExpirationTimeResponse: Optional[ExpirationTimeResponseType] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetRecordResultDetailTypeDef(BaseModel): + FeatureGroupName: str + RecordIdentifierValueAsString: str + Record: List[FeatureValueTypeDef] + ExpiresAt: Optional[str] = None + +class GetRecordResponseTypeDef(BaseModel): + Record: List[FeatureValueTypeDef] + ExpiresAt: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutRecordRequestRequestTypeDef(BaseModel): + FeatureGroupName: str + Record: Sequence[FeatureValueTypeDef] + TargetStores: Optional[Sequence[TargetStoreType]] = None + TtlDuration: Optional[TtlDurationTypeDef] = None + +class BatchGetRecordResponseTypeDef(BaseModel): + Records: List[BatchGetRecordResultDetailTypeDef] + Errors: List[BatchGetRecordErrorTypeDef] + UnprocessedIdentifiers: List[BatchGetRecordIdentifierTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_constants.py b/aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_constants.py new file mode 100644 index 00000000..e1ce0add --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_featurestore_runtime_constants.py @@ -0,0 +1,395 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DeletionModeType = Literal["HardDelete", "SoftDelete"] +ExpirationTimeResponseType = Literal["Disabled", "Enabled"] +TargetStoreType = Literal["OfflineStore", "OnlineStore"] +TtlDurationUnitType = Literal["Days", "Hours", "Minutes", "Seconds", "Weeks"] +SageMakerFeatureStoreRuntimeServiceName = Literal["sagemaker-featurestore-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/sagemaker_geospatial_classes.py b/aws_resource_validator/pydantic_models/sagemaker_geospatial_classes.py new file mode 100644 index 00000000..00fb87c7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_geospatial_classes.py @@ -0,0 +1,522 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_geospatial_constants import * + +class MultiPolygonGeometryInputTypeDef(BaseModel): + Coordinates: List[List[List[List[float]]]] + +class PolygonGeometryInputTypeDef(BaseModel): + Coordinates: List[List[List[float]]] + +class AssetValueTypeDef(BaseModel): + Href: Optional[str] = None + +class CloudRemovalConfigInputTypeDef(BaseModel): + AlgorithmName: Optional[Literal["INTERPOLATION"]] = None + InterpolationValue: Optional[str] = None + TargetBands: Optional[List[str]] = None + +class OperationTypeDef(BaseModel): + Equation: str + Name: str + OutputType: Optional[OutputTypeType] = None + +class DeleteEarthObservationJobInputRequestTypeDef(BaseModel): + Arn: str + +class DeleteVectorEnrichmentJobInputRequestTypeDef(BaseModel): + Arn: str + +class EarthObservationJobErrorDetailsTypeDef(BaseModel): + Message: Optional[str] = None + Type: Optional[EarthObservationJobErrorTypeType] = None + +class EoCloudCoverInputTypeDef(BaseModel): + LowerBound: float + UpperBound: float + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ExportErrorDetailsOutputTypeDef(BaseModel): + Message: Optional[str] = None + Type: Optional[ExportErrorTypeType] = None + +class ExportS3DataInputTypeDef(BaseModel): + S3Uri: str + KmsKeyId: Optional[str] = None + +class VectorEnrichmentJobS3DataTypeDef(BaseModel): + S3Uri: str + KmsKeyId: Optional[str] = None + +class FilterTypeDef(BaseModel): + Name: str + Type: str + Maximum: Optional[float] = None + Minimum: Optional[float] = None + +class GeoMosaicConfigInputTypeDef(BaseModel): + AlgorithmName: Optional[AlgorithmNameGeoMosaicType] = None + TargetBands: Optional[List[str]] = None + +class GeometryTypeDef(BaseModel): + Coordinates: List[List[List[float]]] + Type: str + +class GetEarthObservationJobInputRequestTypeDef(BaseModel): + Arn: str + +class OutputBandTypeDef(BaseModel): + BandName: str + OutputDataType: OutputTypeType + +class GetRasterDataCollectionInputRequestTypeDef(BaseModel): + Arn: str + +class GetTileInputRequestTypeDef(BaseModel): + Arn: str + ImageAssets: Sequence[str] + Target: TargetOptionsType + x: int + y: int + z: int + ExecutionRoleArn: Optional[str] = None + ImageMask: Optional[bool] = None + OutputDataType: Optional[OutputTypeType] = None + OutputFormat: Optional[str] = None + PropertyFilters: Optional[str] = None + TimeRangeFilter: Optional[str] = None + +class GetVectorEnrichmentJobInputRequestTypeDef(BaseModel): + Arn: str + +class VectorEnrichmentJobErrorDetailsTypeDef(BaseModel): + ErrorMessage: Optional[str] = None + ErrorType: Optional[VectorEnrichmentJobErrorTypeType] = None + +class VectorEnrichmentJobExportErrorDetailsTypeDef(BaseModel): + Message: Optional[str] = None + Type: Optional[VectorEnrichmentJobExportErrorTypeType] = None + +class PropertiesTypeDef(BaseModel): + EoCloudCover: Optional[float] = None + LandsatCloudCoverLand: Optional[float] = None + Platform: Optional[str] = None + ViewOffNadir: Optional[float] = None + ViewSunAzimuth: Optional[float] = None + ViewSunElevation: Optional[float] = None + +class TemporalStatisticsConfigInputTypeDef(BaseModel): + Statistics: List[TemporalStatisticsType] + GroupBy: Optional[GroupByType] = None + TargetBands: Optional[List[str]] = None + +class ZonalStatisticsConfigInputTypeDef(BaseModel): + Statistics: List[ZonalStatisticsType] + ZoneS3Path: str + TargetBands: Optional[List[str]] = None + ZoneS3PathKmsKeyId: Optional[str] = None + +class LandsatCloudCoverLandInputTypeDef(BaseModel): + LowerBound: float + UpperBound: float + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEarthObservationJobInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + StatusEquals: Optional[EarthObservationJobStatusType] = None + +class ListEarthObservationJobOutputConfigTypeDef(BaseModel): + Arn: str + CreationTime: datetime + DurationInSeconds: int + Name: str + OperationType: str + Status: EarthObservationJobStatusType + Tags: Optional[Dict[str, str]] = None + +class ListRasterDataCollectionsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListVectorEnrichmentJobInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + StatusEquals: Optional[str] = None + +class ListVectorEnrichmentJobOutputConfigTypeDef(BaseModel): + Arn: str + CreationTime: datetime + DurationInSeconds: int + Name: str + Status: VectorEnrichmentJobStatusType + Type: VectorEnrichmentJobTypeType + Tags: Optional[Dict[str, str]] = None + +class MapMatchingConfigTypeDef(BaseModel): + IdAttributeName: str + TimestampAttributeName: str + XAttributeName: str + YAttributeName: str + +class UserDefinedTypeDef(BaseModel): + Unit: Literal["METERS"] + Value: float + +class PlatformInputTypeDef(BaseModel): + Value: str + ComparisonOperator: Optional[ComparisonOperatorType] = None + +class ViewOffNadirInputTypeDef(BaseModel): + LowerBound: float + UpperBound: float + +class ViewSunAzimuthInputTypeDef(BaseModel): + LowerBound: float + UpperBound: float + +class ViewSunElevationInputTypeDef(BaseModel): + LowerBound: float + UpperBound: float + +class TimeRangeFilterOutputTypeDef(BaseModel): + EndTime: datetime + StartTime: datetime + +class ReverseGeocodingConfigTypeDef(BaseModel): + XAttributeName: str + YAttributeName: str + +class StopEarthObservationJobInputRequestTypeDef(BaseModel): + Arn: str + +class StopVectorEnrichmentJobInputRequestTypeDef(BaseModel): + Arn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AreaOfInterestGeometryTypeDef(BaseModel): + MultiPolygonGeometry: Optional[MultiPolygonGeometryInputTypeDef] = None + PolygonGeometry: Optional[PolygonGeometryInputTypeDef] = None + +class CustomIndicesInputTypeDef(BaseModel): + Operations: Optional[List[OperationTypeDef]] = None + +class GetTileOutputTypeDef(BaseModel): + BinaryFile: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ExportErrorDetailsTypeDef(BaseModel): + ExportResults: Optional[ExportErrorDetailsOutputTypeDef] = None + ExportSourceImages: Optional[ExportErrorDetailsOutputTypeDef] = None + +class OutputConfigInputTypeDef(BaseModel): + S3Data: ExportS3DataInputTypeDef + +class ExportVectorEnrichmentJobOutputConfigTypeDef(BaseModel): + S3Data: VectorEnrichmentJobS3DataTypeDef + +class VectorEnrichmentJobDataSourceConfigInputTypeDef(BaseModel): + S3Data: Optional[VectorEnrichmentJobS3DataTypeDef] = None + +class GetRasterDataCollectionOutputTypeDef(BaseModel): + Arn: str + Description: str + DescriptionPageUrl: str + ImageSourceBands: List[str] + Name: str + SupportedFilters: List[FilterTypeDef] + Tags: Dict[str, str] + Type: DataCollectionTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class RasterDataCollectionMetadataTypeDef(BaseModel): + Arn: str + Description: str + Name: str + SupportedFilters: List[FilterTypeDef] + Type: DataCollectionTypeType + DescriptionPageUrl: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ItemSourceTypeDef(BaseModel): + DateTime: datetime + Geometry: GeometryTypeDef + Id: str + Assets: Optional[Dict[str, AssetValueTypeDef]] = None + Properties: Optional[PropertiesTypeDef] = None + +class ListEarthObservationJobInputListEarthObservationJobsPaginateTypeDef(BaseModel): + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + StatusEquals: Optional[EarthObservationJobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRasterDataCollectionsInputListRasterDataCollectionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVectorEnrichmentJobInputListVectorEnrichmentJobsPaginateTypeDef(BaseModel): + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + StatusEquals: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEarthObservationJobOutputTypeDef(BaseModel): + EarthObservationJobSummaries: List[ListEarthObservationJobOutputConfigTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVectorEnrichmentJobOutputTypeDef(BaseModel): + NextToken: str + VectorEnrichmentJobSummaries: List[ListVectorEnrichmentJobOutputConfigTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OutputResolutionResamplingInputTypeDef(BaseModel): + UserDefined: UserDefinedTypeDef + +class OutputResolutionStackInputTypeDef(BaseModel): + Predefined: Optional[PredefinedResolutionType] = None + UserDefined: Optional[UserDefinedTypeDef] = None + +class PropertyTypeDef(BaseModel): + EoCloudCover: Optional[EoCloudCoverInputTypeDef] = None + LandsatCloudCoverLand: Optional[LandsatCloudCoverLandInputTypeDef] = None + Platform: Optional[PlatformInputTypeDef] = None + ViewOffNadir: Optional[ViewOffNadirInputTypeDef] = None + ViewSunAzimuth: Optional[ViewSunAzimuthInputTypeDef] = None + ViewSunElevation: Optional[ViewSunElevationInputTypeDef] = None + +class VectorEnrichmentJobConfigTypeDef(BaseModel): + MapMatchingConfig: Optional[MapMatchingConfigTypeDef] = None + ReverseGeocodingConfig: Optional[ReverseGeocodingConfigTypeDef] = None + +class TimeRangeFilterInputTypeDef(BaseModel): + EndTime: TimestampTypeDef + StartTime: TimestampTypeDef + +class AreaOfInterestTypeDef(BaseModel): + AreaOfInterestGeometry: Optional[AreaOfInterestGeometryTypeDef] = None + +class BandMathConfigInputTypeDef(BaseModel): + CustomIndices: Optional[CustomIndicesInputTypeDef] = None + PredefinedIndices: Optional[List[str]] = None + +class ExportEarthObservationJobInputRequestTypeDef(BaseModel): + Arn: str + ExecutionRoleArn: str + OutputConfig: OutputConfigInputTypeDef + ClientToken: Optional[str] = None + ExportSourceImages: Optional[bool] = None + +class ExportEarthObservationJobOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + ExecutionRoleArn: str + ExportSourceImages: bool + ExportStatus: EarthObservationJobExportStatusType + OutputConfig: OutputConfigInputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExportVectorEnrichmentJobInputRequestTypeDef(BaseModel): + Arn: str + ExecutionRoleArn: str + OutputConfig: ExportVectorEnrichmentJobOutputConfigTypeDef + ClientToken: Optional[str] = None + +class ExportVectorEnrichmentJobOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + ExecutionRoleArn: str + ExportStatus: VectorEnrichmentJobExportStatusType + OutputConfig: ExportVectorEnrichmentJobOutputConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class VectorEnrichmentJobInputConfigTypeDef(BaseModel): + DataSourceConfig: VectorEnrichmentJobDataSourceConfigInputTypeDef + DocumentType: Literal["CSV"] + +class ListRasterDataCollectionsOutputTypeDef(BaseModel): + NextToken: str + RasterDataCollectionSummaries: List[RasterDataCollectionMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchRasterDataCollectionOutputTypeDef(BaseModel): + ApproximateResultCount: int + Items: List[ItemSourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResamplingConfigInputTypeDef(BaseModel): + OutputResolution: OutputResolutionResamplingInputTypeDef + AlgorithmName: Optional[AlgorithmNameResamplingType] = None + TargetBands: Optional[List[str]] = None + +class StackConfigInputTypeDef(BaseModel): + OutputResolution: Optional[OutputResolutionStackInputTypeDef] = None + TargetBands: Optional[List[str]] = None + +class PropertyFilterTypeDef(BaseModel): + Property: PropertyTypeDef + +class GetVectorEnrichmentJobOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + DurationInSeconds: int + ErrorDetails: VectorEnrichmentJobErrorDetailsTypeDef + ExecutionRoleArn: str + ExportErrorDetails: VectorEnrichmentJobExportErrorDetailsTypeDef + ExportStatus: VectorEnrichmentJobExportStatusType + InputConfig: VectorEnrichmentJobInputConfigTypeDef + JobConfig: VectorEnrichmentJobConfigTypeDef + KmsKeyId: str + Name: str + Status: VectorEnrichmentJobStatusType + Tags: Dict[str, str] + Type: VectorEnrichmentJobTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class StartVectorEnrichmentJobInputRequestTypeDef(BaseModel): + ExecutionRoleArn: str + InputConfig: VectorEnrichmentJobInputConfigTypeDef + JobConfig: VectorEnrichmentJobConfigTypeDef + Name: str + ClientToken: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class StartVectorEnrichmentJobOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + DurationInSeconds: int + ExecutionRoleArn: str + InputConfig: VectorEnrichmentJobInputConfigTypeDef + JobConfig: VectorEnrichmentJobConfigTypeDef + KmsKeyId: str + Name: str + Status: VectorEnrichmentJobStatusType + Tags: Dict[str, str] + Type: VectorEnrichmentJobTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class JobConfigInputTypeDef(BaseModel): + BandMathConfig: Optional[BandMathConfigInputTypeDef] = None + CloudMaskingConfig: Optional[Dict[str, Any]] = None + CloudRemovalConfig: Optional[CloudRemovalConfigInputTypeDef] = None + GeoMosaicConfig: Optional[GeoMosaicConfigInputTypeDef] = None + LandCoverSegmentationConfig: Optional[Dict[str, Any]] = None + ResamplingConfig: Optional[ResamplingConfigInputTypeDef] = None + StackConfig: Optional[StackConfigInputTypeDef] = None + TemporalStatisticsConfig: Optional[TemporalStatisticsConfigInputTypeDef] = None + ZonalStatisticsConfig: Optional[ZonalStatisticsConfigInputTypeDef] = None + +class PropertyFiltersTypeDef(BaseModel): + LogicalOperator: Optional[Literal["AND"]] = None + Properties: Optional[List[PropertyFilterTypeDef]] = None + +class RasterDataCollectionQueryInputTypeDef(BaseModel): + RasterDataCollectionArn: str + TimeRangeFilter: TimeRangeFilterInputTypeDef + AreaOfInterest: Optional[AreaOfInterestTypeDef] = None + PropertyFilters: Optional[PropertyFiltersTypeDef] = None + +class RasterDataCollectionQueryOutputTypeDef(BaseModel): + RasterDataCollectionArn: str + RasterDataCollectionName: str + TimeRangeFilter: TimeRangeFilterOutputTypeDef + AreaOfInterest: Optional[AreaOfInterestTypeDef] = None + PropertyFilters: Optional[PropertyFiltersTypeDef] = None + +class RasterDataCollectionQueryWithBandFilterInputTypeDef(BaseModel): + TimeRangeFilter: TimeRangeFilterInputTypeDef + AreaOfInterest: Optional[AreaOfInterestTypeDef] = None + BandFilter: Optional[Sequence[str]] = None + PropertyFilters: Optional[PropertyFiltersTypeDef] = None + +class InputConfigInputTypeDef(BaseModel): + PreviousEarthObservationJobArn: Optional[str] = None + RasterDataCollectionQuery: Optional[RasterDataCollectionQueryInputTypeDef] = None + +class InputConfigOutputTypeDef(BaseModel): + PreviousEarthObservationJobArn: Optional[str] = None + RasterDataCollectionQuery: Optional[RasterDataCollectionQueryOutputTypeDef] = None + +class SearchRasterDataCollectionInputRequestTypeDef(BaseModel): + Arn: str + RasterDataCollectionQuery: RasterDataCollectionQueryWithBandFilterInputTypeDef + NextToken: Optional[str] = None + +class StartEarthObservationJobInputRequestTypeDef(BaseModel): + ExecutionRoleArn: str + InputConfig: InputConfigInputTypeDef + JobConfig: JobConfigInputTypeDef + Name: str + ClientToken: Optional[str] = None + KmsKeyId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class GetEarthObservationJobOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + DurationInSeconds: int + ErrorDetails: EarthObservationJobErrorDetailsTypeDef + ExecutionRoleArn: str + ExportErrorDetails: ExportErrorDetailsTypeDef + ExportStatus: EarthObservationJobExportStatusType + InputConfig: InputConfigOutputTypeDef + JobConfig: JobConfigInputTypeDef + KmsKeyId: str + Name: str + OutputBands: List[OutputBandTypeDef] + Status: EarthObservationJobStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartEarthObservationJobOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + DurationInSeconds: int + ExecutionRoleArn: str + InputConfig: InputConfigOutputTypeDef + JobConfig: JobConfigInputTypeDef + KmsKeyId: str + Name: str + Status: EarthObservationJobStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sagemaker_geospatial_constants.py b/aws_resource_validator/pydantic_models/sagemaker_geospatial_constants.py new file mode 100644 index 00000000..fe5dd97a --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_geospatial_constants.py @@ -0,0 +1,458 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AlgorithmNameCloudRemovalType = Literal["INTERPOLATION"] +AlgorithmNameGeoMosaicType = Literal["AVERAGE", + "BILINEAR", + "CUBIC", + "CUBICSPLINE", + "LANCZOS", + "MAX", + "MED", + "MIN", + "MODE", + "NEAR", + "Q1", + "Q3", + "RMS", + "SUM",] +AlgorithmNameResamplingType = Literal["AVERAGE", + "BILINEAR", + "CUBIC", + "CUBICSPLINE", + "LANCZOS", + "MAX", + "MED", + "MIN", + "MODE", + "NEAR", + "Q1", + "Q3", + "RMS", + "SUM",] +ComparisonOperatorType = Literal["EQUALS", "NOT_EQUALS", "STARTS_WITH"] +DataCollectionTypeType = Literal["PREMIUM", "PUBLIC", "USER"] +EarthObservationJobErrorTypeType = Literal["CLIENT_ERROR", "SERVER_ERROR"] +EarthObservationJobExportStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +EarthObservationJobStatusType = Literal["COMPLETED", + "DELETED", + "DELETING", + "FAILED", + "INITIALIZING", + "IN_PROGRESS", + "STOPPED", + "STOPPING",] +ExportErrorTypeType = Literal["CLIENT_ERROR", "SERVER_ERROR"] +GroupByType = Literal["ALL", "YEARLY"] +ListEarthObservationJobsPaginatorName = Literal["list_earth_observation_jobs"] +ListRasterDataCollectionsPaginatorName = Literal["list_raster_data_collections"] +ListVectorEnrichmentJobsPaginatorName = Literal["list_vector_enrichment_jobs"] +LogicalOperatorType = Literal["AND"] +OutputTypeType = Literal["FLOAT32", "FLOAT64", "INT16", "INT32", "UINT16"] +PredefinedResolutionType = Literal["AVERAGE", "HIGHEST", "LOWEST"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +TargetOptionsType = Literal["INPUT", "OUTPUT"] +TemporalStatisticsType = Literal["MEAN", "MEDIAN", "STANDARD_DEVIATION"] +UnitType = Literal["METERS"] +VectorEnrichmentJobDocumentTypeType = Literal["CSV"] +VectorEnrichmentJobErrorTypeType = Literal["CLIENT_ERROR", "SERVER_ERROR"] +VectorEnrichmentJobExportErrorTypeType = Literal["CLIENT_ERROR", "SERVER_ERROR"] +VectorEnrichmentJobExportStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +VectorEnrichmentJobStatusType = Literal["COMPLETED", + "DELETED", + "DELETING", + "FAILED", + "INITIALIZING", + "IN_PROGRESS", + "STOPPED", + "STOPPING",] +VectorEnrichmentJobTypeType = Literal["MAP_MATCHING", "REVERSE_GEOCODING"] +ZonalStatisticsType = Literal["MAX", "MEAN", "MEDIAN", "MIN", "STANDARD_DEVIATION", "SUM"] +SageMakergeospatialcapabilitiesServiceName = Literal["sagemaker-geospatial"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_earth_observation_jobs", "list_raster_data_collections", "list_vector_enrichment_jobs"] +RegionName = Literal["us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/sagemaker_metrics_classes.py b/aws_resource_validator/pydantic_models/sagemaker_metrics_classes.py new file mode 100644 index 00000000..697f6bc2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_metrics_classes.py @@ -0,0 +1,38 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_metrics_constants import * + +class BatchPutMetricsErrorTypeDef(BaseModel): + Code: Optional[PutMetricsErrorCodeType] = None + MetricIndex: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BatchPutMetricsResponseTypeDef(BaseModel): + Errors: List[BatchPutMetricsErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RawMetricDataTypeDef(BaseModel): + MetricName: str + Timestamp: TimestampTypeDef + Value: float + Step: Optional[int] = None + +class BatchPutMetricsRequestRequestTypeDef(BaseModel): + TrialComponentName: str + MetricData: Sequence[RawMetricDataTypeDef] + diff --git a/aws_resource_validator/pydantic_models/sagemaker_metrics_constants.py b/aws_resource_validator/pydantic_models/sagemaker_metrics_constants.py new file mode 100644 index 00000000..1a54b85d --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_metrics_constants.py @@ -0,0 +1,418 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +PutMetricsErrorCodeType = Literal["CONFLICT_ERROR", "INTERNAL_ERROR", "METRIC_LIMIT_EXCEEDED", "VALIDATION_ERROR"] +SageMakerMetricsServiceName = Literal["sagemaker-metrics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/sagemaker_runtime_classes.py b/aws_resource_validator/pydantic_models/sagemaker_runtime_classes.py new file mode 100644 index 00000000..74542451 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_runtime_classes.py @@ -0,0 +1,89 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sagemaker_runtime_constants import * + +class InternalStreamFailureTypeDef(BaseModel): + Message: Optional[str] = None + +class InvokeEndpointAsyncInputRequestTypeDef(BaseModel): + EndpointName: str + InputLocation: str + ContentType: Optional[str] = None + Accept: Optional[str] = None + CustomAttributes: Optional[str] = None + InferenceId: Optional[str] = None + RequestTTLSeconds: Optional[int] = None + InvocationTimeoutSeconds: Optional[int] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ModelStreamErrorTypeDef(BaseModel): + Message: Optional[str] = None + ErrorCode: Optional[str] = None + +class PayloadPartTypeDef(BaseModel): + Bytes: Optional[bytes] = None + +class InvokeEndpointInputRequestTypeDef(BaseModel): + EndpointName: str + Body: BlobTypeDef + ContentType: Optional[str] = None + Accept: Optional[str] = None + CustomAttributes: Optional[str] = None + TargetModel: Optional[str] = None + TargetVariant: Optional[str] = None + TargetContainerHostname: Optional[str] = None + InferenceId: Optional[str] = None + EnableExplanations: Optional[str] = None + InferenceComponentName: Optional[str] = None + +class InvokeEndpointWithResponseStreamInputRequestTypeDef(BaseModel): + EndpointName: str + Body: BlobTypeDef + ContentType: Optional[str] = None + Accept: Optional[str] = None + CustomAttributes: Optional[str] = None + TargetVariant: Optional[str] = None + TargetContainerHostname: Optional[str] = None + InferenceId: Optional[str] = None + InferenceComponentName: Optional[str] = None + +class InvokeEndpointAsyncOutputTypeDef(BaseModel): + InferenceId: str + OutputLocation: str + FailureLocation: str + ResponseMetadata: ResponseMetadataTypeDef + +class InvokeEndpointOutputTypeDef(BaseModel): + Body: StreamingBody + ContentType: str + InvokedProductionVariant: str + CustomAttributes: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResponseStreamTypeDef(BaseModel): + PayloadPart: Optional[PayloadPartTypeDef] = None + ModelStreamError: Optional[ModelStreamErrorTypeDef] = None + InternalStreamFailure: Optional[InternalStreamFailureTypeDef] = None + +class InvokeEndpointWithResponseStreamOutputTypeDef(BaseModel): + Body: "EventStream[ResponseStreamTypeDef]" + ContentType: str + InvokedProductionVariant: str + CustomAttributes: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sagemaker_runtime_constants.py b/aws_resource_validator/pydantic_models/sagemaker_runtime_constants.py new file mode 100644 index 00000000..d6c3c1ca --- /dev/null +++ b/aws_resource_validator/pydantic_models/sagemaker_runtime_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +SageMakerRuntimeServiceName = Literal["sagemaker-runtime"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/savingsplans_classes.py b/aws_resource_validator/pydantic_models/savingsplans_classes.py new file mode 100644 index 00000000..d3e18542 --- /dev/null +++ b/aws_resource_validator/pydantic_models/savingsplans_classes.py @@ -0,0 +1,210 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.savingsplans_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteQueuedSavingsPlanRequestRequestTypeDef(BaseModel): + savingsPlanId: str + +class SavingsPlanRateFilterTypeDef(BaseModel): + name: Optional[SavingsPlanRateFilterNameType] = None + values: Optional[Sequence[str]] = None + +class SavingsPlanOfferingRateFilterElementTypeDef(BaseModel): + name: Optional[SavingsPlanRateFilterAttributeType] = None + values: Optional[Sequence[str]] = None + +class SavingsPlanOfferingFilterElementTypeDef(BaseModel): + name: Optional[SavingsPlanOfferingFilterAttributeType] = None + values: Optional[Sequence[str]] = None + +class SavingsPlanFilterTypeDef(BaseModel): + name: Optional[SavingsPlansFilterNameType] = None + values: Optional[Sequence[str]] = None + +class SavingsPlanTypeDef(BaseModel): + offeringId: Optional[str] = None + savingsPlanId: Optional[str] = None + savingsPlanArn: Optional[str] = None + description: Optional[str] = None + start: Optional[str] = None + end: Optional[str] = None + state: Optional[SavingsPlanStateType] = None + region: Optional[str] = None + ec2InstanceFamily: Optional[str] = None + savingsPlanType: Optional[SavingsPlanTypeType] = None + paymentOption: Optional[SavingsPlanPaymentOptionType] = None + productTypes: Optional[List[SavingsPlanProductTypeType]] = None + currency: Optional[CurrencyCodeType] = None + commitment: Optional[str] = None + upfrontPaymentAmount: Optional[str] = None + recurringPaymentAmount: Optional[str] = None + termDurationInSeconds: Optional[int] = None + tags: Optional[Dict[str, str]] = None + returnableUntil: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ParentSavingsPlanOfferingTypeDef(BaseModel): + offeringId: Optional[str] = None + paymentOption: Optional[SavingsPlanPaymentOptionType] = None + planType: Optional[SavingsPlanTypeType] = None + durationSeconds: Optional[int] = None + currency: Optional[CurrencyCodeType] = None + planDescription: Optional[str] = None + +class ReturnSavingsPlanRequestRequestTypeDef(BaseModel): + savingsPlanId: str + clientToken: Optional[str] = None + +class SavingsPlanOfferingPropertyTypeDef(BaseModel): + name: Optional[SavingsPlanOfferingPropertyKeyType] = None + value: Optional[str] = None + +class SavingsPlanOfferingRatePropertyTypeDef(BaseModel): + name: Optional[str] = None + value: Optional[str] = None + +class SavingsPlanRatePropertyTypeDef(BaseModel): + name: Optional[SavingsPlanRatePropertyKeyType] = None + value: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CreateSavingsPlanRequestRequestTypeDef(BaseModel): + savingsPlanOfferingId: str + commitment: str + upfrontPaymentAmount: Optional[str] = None + purchaseTime: Optional[TimestampTypeDef] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateSavingsPlanResponseTypeDef(BaseModel): + savingsPlanId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ReturnSavingsPlanResponseTypeDef(BaseModel): + savingsPlanId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSavingsPlanRatesRequestRequestTypeDef(BaseModel): + savingsPlanId: str + filters: Optional[Sequence[SavingsPlanRateFilterTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeSavingsPlansOfferingRatesRequestRequestTypeDef(BaseModel): + savingsPlanOfferingIds: Optional[Sequence[str]] = None + savingsPlanPaymentOptions: Optional[Sequence[SavingsPlanPaymentOptionType]] = None + savingsPlanTypes: Optional[Sequence[SavingsPlanTypeType]] = None + products: Optional[Sequence[SavingsPlanProductTypeType]] = None + serviceCodes: Optional[Sequence[SavingsPlanRateServiceCodeType]] = None + usageTypes: Optional[Sequence[str]] = None + operations: Optional[Sequence[str]] = None + filters: Optional[Sequence[SavingsPlanOfferingRateFilterElementTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeSavingsPlansOfferingsRequestRequestTypeDef(BaseModel): + offeringIds: Optional[Sequence[str]] = None + paymentOptions: Optional[Sequence[SavingsPlanPaymentOptionType]] = None + productType: Optional[SavingsPlanProductTypeType] = None + planTypes: Optional[Sequence[SavingsPlanTypeType]] = None + durations: Optional[Sequence[int]] = None + currencies: Optional[Sequence[CurrencyCodeType]] = None + descriptions: Optional[Sequence[str]] = None + serviceCodes: Optional[Sequence[str]] = None + usageTypes: Optional[Sequence[str]] = None + operations: Optional[Sequence[str]] = None + filters: Optional[Sequence[SavingsPlanOfferingFilterElementTypeDef]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeSavingsPlansRequestRequestTypeDef(BaseModel): + savingsPlanArns: Optional[Sequence[str]] = None + savingsPlanIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + states: Optional[Sequence[SavingsPlanStateType]] = None + filters: Optional[Sequence[SavingsPlanFilterTypeDef]] = None + +class DescribeSavingsPlansResponseTypeDef(BaseModel): + savingsPlans: List[SavingsPlanTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SavingsPlanOfferingTypeDef(BaseModel): + offeringId: Optional[str] = None + productTypes: Optional[List[SavingsPlanProductTypeType]] = None + planType: Optional[SavingsPlanTypeType] = None + description: Optional[str] = None + paymentOption: Optional[SavingsPlanPaymentOptionType] = None + durationSeconds: Optional[int] = None + currency: Optional[CurrencyCodeType] = None + serviceCode: Optional[str] = None + usageType: Optional[str] = None + operation: Optional[str] = None + properties: Optional[List[SavingsPlanOfferingPropertyTypeDef]] = None + +class SavingsPlanOfferingRateTypeDef(BaseModel): + savingsPlanOffering: Optional[ParentSavingsPlanOfferingTypeDef] = None + rate: Optional[str] = None + unit: Optional[SavingsPlanRateUnitType] = None + productType: Optional[SavingsPlanProductTypeType] = None + serviceCode: Optional[SavingsPlanRateServiceCodeType] = None + usageType: Optional[str] = None + operation: Optional[str] = None + properties: Optional[List[SavingsPlanOfferingRatePropertyTypeDef]] = None + +class SavingsPlanRateTypeDef(BaseModel): + rate: Optional[str] = None + currency: Optional[CurrencyCodeType] = None + unit: Optional[SavingsPlanRateUnitType] = None + productType: Optional[SavingsPlanProductTypeType] = None + serviceCode: Optional[SavingsPlanRateServiceCodeType] = None + usageType: Optional[str] = None + operation: Optional[str] = None + properties: Optional[List[SavingsPlanRatePropertyTypeDef]] = None + +class DescribeSavingsPlansOfferingsResponseTypeDef(BaseModel): + searchResults: List[SavingsPlanOfferingTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSavingsPlansOfferingRatesResponseTypeDef(BaseModel): + searchResults: List[SavingsPlanOfferingRateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSavingsPlanRatesResponseTypeDef(BaseModel): + savingsPlanId: str + searchResults: List[SavingsPlanRateTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/savingsplans_constants.py b/aws_resource_validator/pydantic_models/savingsplans_constants.py new file mode 100644 index 00000000..fb4fba43 --- /dev/null +++ b/aws_resource_validator/pydantic_models/savingsplans_constants.py @@ -0,0 +1,429 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CurrencyCodeType = Literal["CNY", "USD"] +SavingsPlanOfferingFilterAttributeType = Literal["instanceFamily", "region"] +SavingsPlanOfferingPropertyKeyType = Literal["instanceFamily", "region"] +SavingsPlanPaymentOptionType = Literal["All Upfront", "No Upfront", "Partial Upfront"] +SavingsPlanProductTypeType = Literal["EC2", "Fargate", "Lambda", "SageMaker"] +SavingsPlanRateFilterAttributeType = Literal["instanceFamily", "instanceType", "productDescription", "productId", "region", "tenancy"] +SavingsPlanRateFilterNameType = Literal["instanceType", + "operation", + "productDescription", + "productType", + "region", + "serviceCode", + "tenancy", + "usageType",] +SavingsPlanRatePropertyKeyType = Literal["instanceFamily", "instanceType", "productDescription", "region", "tenancy"] +SavingsPlanRateServiceCodeType = Literal["AWSLambda", "AmazonEC2", "AmazonECS", "AmazonEKS", "AmazonSageMaker"] +SavingsPlanRateUnitType = Literal["Hrs", "Lambda-GB-Second", "Request"] +SavingsPlanStateType = Literal["active", + "payment-failed", + "payment-pending", + "pending-return", + "queued", + "queued-deleted", + "retired", + "returned",] +SavingsPlanTypeType = Literal["Compute", "EC2Instance", "SageMaker"] +SavingsPlansFilterNameType = Literal["commitment", + "ec2-instance-family", + "end", + "payment-option", + "region", + "savings-plan-type", + "start", + "term", + "upfront",] +SavingsPlansServiceName = Literal["savingsplans"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/scheduler_classes.py b/aws_resource_validator/pydantic_models/scheduler_classes.py new file mode 100644 index 00000000..34720f02 --- /dev/null +++ b/aws_resource_validator/pydantic_models/scheduler_classes.py @@ -0,0 +1,261 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.scheduler_constants import * + +class AwsVpcConfigurationTypeDef(BaseModel): + Subnets: Sequence[str] + AssignPublicIp: Optional[AssignPublicIpType] = None + SecurityGroups: Optional[Sequence[str]] = None + +class CapacityProviderStrategyItemTypeDef(BaseModel): + capacityProvider: str + base: Optional[int] = None + weight: Optional[int] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class FlexibleTimeWindowTypeDef(BaseModel): + Mode: FlexibleTimeWindowModeType + MaximumWindowInMinutes: Optional[int] = None + +class DeadLetterConfigTypeDef(BaseModel): + Arn: Optional[str] = None + +class DeleteScheduleGroupInputRequestTypeDef(BaseModel): + Name: str + ClientToken: Optional[str] = None + +class DeleteScheduleInputRequestTypeDef(BaseModel): + Name: str + ClientToken: Optional[str] = None + GroupName: Optional[str] = None + +class PlacementConstraintTypeDef(BaseModel): + expression: Optional[str] = None + type: Optional[PlacementConstraintTypeType] = None + +class PlacementStrategyTypeDef(BaseModel): + field: Optional[str] = None + type: Optional[PlacementStrategyTypeType] = None + +class EventBridgeParametersTypeDef(BaseModel): + DetailType: str + Source: str + +class GetScheduleGroupInputRequestTypeDef(BaseModel): + Name: str + +class GetScheduleInputRequestTypeDef(BaseModel): + Name: str + GroupName: Optional[str] = None + +class KinesisParametersTypeDef(BaseModel): + PartitionKey: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListScheduleGroupsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NamePrefix: Optional[str] = None + NextToken: Optional[str] = None + +class ScheduleGroupSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CreationDate: Optional[datetime] = None + LastModificationDate: Optional[datetime] = None + Name: Optional[str] = None + State: Optional[ScheduleGroupStateType] = None + +class ListSchedulesInputRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + MaxResults: Optional[int] = None + NamePrefix: Optional[str] = None + NextToken: Optional[str] = None + State: Optional[ScheduleStateType] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class RetryPolicyTypeDef(BaseModel): + MaximumEventAgeInSeconds: Optional[int] = None + MaximumRetryAttempts: Optional[int] = None + +class SageMakerPipelineParameterTypeDef(BaseModel): + Name: str + Value: str + +class TargetSummaryTypeDef(BaseModel): + Arn: str + +class SqsParametersTypeDef(BaseModel): + MessageGroupId: Optional[str] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class NetworkConfigurationTypeDef(BaseModel): + awsvpcConfiguration: Optional[AwsVpcConfigurationTypeDef] = None + +class CreateScheduleGroupInputRequestTypeDef(BaseModel): + Name: str + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateScheduleGroupOutputTypeDef(BaseModel): + ScheduleGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScheduleOutputTypeDef(BaseModel): + ScheduleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetScheduleGroupOutputTypeDef(BaseModel): + Arn: str + CreationDate: datetime + LastModificationDate: datetime + Name: str + State: ScheduleGroupStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateScheduleOutputTypeDef(BaseModel): + ScheduleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListScheduleGroupsInputListScheduleGroupsPaginateTypeDef(BaseModel): + NamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchedulesInputListSchedulesPaginateTypeDef(BaseModel): + GroupName: Optional[str] = None + NamePrefix: Optional[str] = None + State: Optional[ScheduleStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListScheduleGroupsOutputTypeDef(BaseModel): + NextToken: str + ScheduleGroups: List[ScheduleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SageMakerPipelineParametersTypeDef(BaseModel): + PipelineParameterList: Optional[Sequence[SageMakerPipelineParameterTypeDef]] = None + +class ScheduleSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CreationDate: Optional[datetime] = None + GroupName: Optional[str] = None + LastModificationDate: Optional[datetime] = None + Name: Optional[str] = None + State: Optional[ScheduleStateType] = None + Target: Optional[TargetSummaryTypeDef] = None + +class EcsParametersTypeDef(BaseModel): + TaskDefinitionArn: str + CapacityProviderStrategy: Optional[Sequence[CapacityProviderStrategyItemTypeDef]] = None + EnableECSManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + Group: Optional[str] = None + LaunchType: Optional[LaunchTypeType] = None + NetworkConfiguration: Optional[NetworkConfigurationTypeDef] = None + PlacementConstraints: Optional[Sequence[PlacementConstraintTypeDef]] = None + PlacementStrategy: Optional[Sequence[PlacementStrategyTypeDef]] = None + PlatformVersion: Optional[str] = None + PropagateTags: Optional[Literal["TASK_DEFINITION"]] = None + ReferenceId: Optional[str] = None + Tags: Optional[Sequence[Mapping[str, str]]] = None + TaskCount: Optional[int] = None + +class ListSchedulesOutputTypeDef(BaseModel): + NextToken: str + Schedules: List[ScheduleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TargetTypeDef(BaseModel): + Arn: str + RoleArn: str + DeadLetterConfig: Optional[DeadLetterConfigTypeDef] = None + EcsParameters: Optional[EcsParametersTypeDef] = None + EventBridgeParameters: Optional[EventBridgeParametersTypeDef] = None + Input: Optional[str] = None + KinesisParameters: Optional[KinesisParametersTypeDef] = None + RetryPolicy: Optional[RetryPolicyTypeDef] = None + SageMakerPipelineParameters: Optional[SageMakerPipelineParametersTypeDef] = None + SqsParameters: Optional[SqsParametersTypeDef] = None + +class CreateScheduleInputRequestTypeDef(BaseModel): + FlexibleTimeWindow: FlexibleTimeWindowTypeDef + Name: str + ScheduleExpression: str + Target: TargetTypeDef + ActionAfterCompletion: Optional[ActionAfterCompletionType] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + EndDate: Optional[TimestampTypeDef] = None + GroupName: Optional[str] = None + KmsKeyArn: Optional[str] = None + ScheduleExpressionTimezone: Optional[str] = None + StartDate: Optional[TimestampTypeDef] = None + State: Optional[ScheduleStateType] = None + +class GetScheduleOutputTypeDef(BaseModel): + ActionAfterCompletion: ActionAfterCompletionType + Arn: str + CreationDate: datetime + Description: str + EndDate: datetime + FlexibleTimeWindow: FlexibleTimeWindowTypeDef + GroupName: str + KmsKeyArn: str + LastModificationDate: datetime + Name: str + ScheduleExpression: str + ScheduleExpressionTimezone: str + StartDate: datetime + State: ScheduleStateType + Target: TargetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateScheduleInputRequestTypeDef(BaseModel): + FlexibleTimeWindow: FlexibleTimeWindowTypeDef + Name: str + ScheduleExpression: str + Target: TargetTypeDef + ActionAfterCompletion: Optional[ActionAfterCompletionType] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + EndDate: Optional[TimestampTypeDef] = None + GroupName: Optional[str] = None + KmsKeyArn: Optional[str] = None + ScheduleExpressionTimezone: Optional[str] = None + StartDate: Optional[TimestampTypeDef] = None + State: Optional[ScheduleStateType] = None + diff --git a/aws_resource_validator/pydantic_models/scheduler_constants.py b/aws_resource_validator/pydantic_models/scheduler_constants.py new file mode 100644 index 00000000..b51e8458 --- /dev/null +++ b/aws_resource_validator/pydantic_models/scheduler_constants.py @@ -0,0 +1,428 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionAfterCompletionType = Literal["DELETE", "NONE"] +AssignPublicIpType = Literal["DISABLED", "ENABLED"] +FlexibleTimeWindowModeType = Literal["FLEXIBLE", "OFF"] +LaunchTypeType = Literal["EC2", "EXTERNAL", "FARGATE"] +ListScheduleGroupsPaginatorName = Literal["list_schedule_groups"] +ListSchedulesPaginatorName = Literal["list_schedules"] +PlacementConstraintTypeType = Literal["distinctInstance", "memberOf"] +PlacementStrategyTypeType = Literal["binpack", "random", "spread"] +PropagateTagsType = Literal["TASK_DEFINITION"] +ScheduleGroupStateType = Literal["ACTIVE", "DELETING"] +ScheduleStateType = Literal["DISABLED", "ENABLED"] +EventBridgeSchedulerServiceName = Literal["scheduler"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_schedule_groups", "list_schedules"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/schemas_classes.py b/aws_resource_validator/pydantic_models/schemas_classes.py new file mode 100644 index 00000000..d3b5381c --- /dev/null +++ b/aws_resource_validator/pydantic_models/schemas_classes.py @@ -0,0 +1,413 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.schemas_constants import * + +class CreateDiscovererRequestRequestTypeDef(BaseModel): + SourceArn: str + Description: Optional[str] = None + CrossAccount: Optional[bool] = None + Tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateRegistryRequestRequestTypeDef(BaseModel): + RegistryName: str + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateSchemaRequestRequestTypeDef(BaseModel): + Content: str + RegistryName: str + SchemaName: str + Type: TypeType + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class DeleteDiscovererRequestRequestTypeDef(BaseModel): + DiscovererId: str + +class DeleteRegistryRequestRequestTypeDef(BaseModel): + RegistryName: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + RegistryName: Optional[str] = None + +class DeleteSchemaRequestRequestTypeDef(BaseModel): + RegistryName: str + SchemaName: str + +class DeleteSchemaVersionRequestRequestTypeDef(BaseModel): + RegistryName: str + SchemaName: str + SchemaVersion: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeCodeBindingRequestRequestTypeDef(BaseModel): + Language: str + RegistryName: str + SchemaName: str + SchemaVersion: Optional[str] = None + +class DescribeDiscovererRequestRequestTypeDef(BaseModel): + DiscovererId: str + +class DescribeRegistryRequestRequestTypeDef(BaseModel): + RegistryName: str + +class DescribeSchemaRequestRequestTypeDef(BaseModel): + RegistryName: str + SchemaName: str + SchemaVersion: Optional[str] = None + +class DiscovererSummaryTypeDef(BaseModel): + DiscovererArn: Optional[str] = None + DiscovererId: Optional[str] = None + SourceArn: Optional[str] = None + State: Optional[DiscovererStateType] = None + CrossAccount: Optional[bool] = None + Tags: Optional[Dict[str, str]] = None + +class ExportSchemaRequestRequestTypeDef(BaseModel): + RegistryName: str + SchemaName: str + Type: str + SchemaVersion: Optional[str] = None + +class GetCodeBindingSourceRequestRequestTypeDef(BaseModel): + Language: str + RegistryName: str + SchemaName: str + SchemaVersion: Optional[str] = None + +class GetDiscoveredSchemaRequestRequestTypeDef(BaseModel): + Events: Sequence[str] + Type: TypeType + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + RegistryName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDiscoverersRequestRequestTypeDef(BaseModel): + DiscovererIdPrefix: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + SourceArnPrefix: Optional[str] = None + +class ListRegistriesRequestRequestTypeDef(BaseModel): + Limit: Optional[int] = None + NextToken: Optional[str] = None + RegistryNamePrefix: Optional[str] = None + Scope: Optional[str] = None + +class RegistrySummaryTypeDef(BaseModel): + RegistryArn: Optional[str] = None + RegistryName: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ListSchemaVersionsRequestRequestTypeDef(BaseModel): + RegistryName: str + SchemaName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class SchemaVersionSummaryTypeDef(BaseModel): + SchemaArn: Optional[str] = None + SchemaName: Optional[str] = None + SchemaVersion: Optional[str] = None + Type: Optional[TypeType] = None + +class ListSchemasRequestRequestTypeDef(BaseModel): + RegistryName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + SchemaNamePrefix: Optional[str] = None + +class SchemaSummaryTypeDef(BaseModel): + LastModified: Optional[datetime] = None + SchemaArn: Optional[str] = None + SchemaName: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + VersionCount: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PutCodeBindingRequestRequestTypeDef(BaseModel): + Language: str + RegistryName: str + SchemaName: str + SchemaVersion: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + Policy: str + RegistryName: Optional[str] = None + RevisionId: Optional[str] = None + +class SearchSchemaVersionSummaryTypeDef(BaseModel): + CreatedDate: Optional[datetime] = None + SchemaVersion: Optional[str] = None + Type: Optional[TypeType] = None + +class SearchSchemasRequestRequestTypeDef(BaseModel): + Keywords: str + RegistryName: str + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class StartDiscovererRequestRequestTypeDef(BaseModel): + DiscovererId: str + +class StopDiscovererRequestRequestTypeDef(BaseModel): + DiscovererId: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateDiscovererRequestRequestTypeDef(BaseModel): + DiscovererId: str + Description: Optional[str] = None + CrossAccount: Optional[bool] = None + +class UpdateRegistryRequestRequestTypeDef(BaseModel): + RegistryName: str + Description: Optional[str] = None + +class UpdateSchemaRequestRequestTypeDef(BaseModel): + RegistryName: str + SchemaName: str + ClientTokenId: Optional[str] = None + Content: Optional[str] = None + Description: Optional[str] = None + Type: Optional[TypeType] = None + +class CreateDiscovererResponseTypeDef(BaseModel): + Description: str + DiscovererArn: str + DiscovererId: str + SourceArn: str + State: DiscovererStateType + CrossAccount: bool + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRegistryResponseTypeDef(BaseModel): + Description: str + RegistryArn: str + RegistryName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSchemaResponseTypeDef(BaseModel): + Description: str + LastModified: datetime + SchemaArn: str + SchemaName: str + SchemaVersion: str + Tags: Dict[str, str] + Type: str + VersionCreatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCodeBindingResponseTypeDef(BaseModel): + CreationDate: datetime + LastModified: datetime + SchemaVersion: str + Status: CodeGenerationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDiscovererResponseTypeDef(BaseModel): + Description: str + DiscovererArn: str + DiscovererId: str + SourceArn: str + State: DiscovererStateType + CrossAccount: bool + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRegistryResponseTypeDef(BaseModel): + Description: str + RegistryArn: str + RegistryName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSchemaResponseTypeDef(BaseModel): + Content: str + Description: str + LastModified: datetime + SchemaArn: str + SchemaName: str + SchemaVersion: str + Tags: Dict[str, str] + Type: str + VersionCreatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportSchemaResponseTypeDef(BaseModel): + Content: str + SchemaArn: str + SchemaName: str + SchemaVersion: str + Type: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCodeBindingSourceResponseTypeDef(BaseModel): + Body: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetDiscoveredSchemaResponseTypeDef(BaseModel): + Content: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + Policy: str + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutCodeBindingResponseTypeDef(BaseModel): + CreationDate: datetime + LastModified: datetime + SchemaVersion: str + Status: CodeGenerationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + Policy: str + RevisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDiscovererResponseTypeDef(BaseModel): + DiscovererId: str + State: DiscovererStateType + ResponseMetadata: ResponseMetadataTypeDef + +class StopDiscovererResponseTypeDef(BaseModel): + DiscovererId: str + State: DiscovererStateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDiscovererResponseTypeDef(BaseModel): + Description: str + DiscovererArn: str + DiscovererId: str + SourceArn: str + State: DiscovererStateType + CrossAccount: bool + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegistryResponseTypeDef(BaseModel): + Description: str + RegistryArn: str + RegistryName: str + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSchemaResponseTypeDef(BaseModel): + Description: str + LastModified: datetime + SchemaArn: str + SchemaName: str + SchemaVersion: str + Tags: Dict[str, str] + Type: str + VersionCreatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCodeBindingRequestCodeBindingExistsWaitTypeDef(BaseModel): + Language: str + RegistryName: str + SchemaName: str + SchemaVersion: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class ListDiscoverersResponseTypeDef(BaseModel): + Discoverers: List[DiscovererSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDiscoverersRequestListDiscoverersPaginateTypeDef(BaseModel): + DiscovererIdPrefix: Optional[str] = None + SourceArnPrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegistriesRequestListRegistriesPaginateTypeDef(BaseModel): + RegistryNamePrefix: Optional[str] = None + Scope: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemaVersionsRequestListSchemaVersionsPaginateTypeDef(BaseModel): + RegistryName: str + SchemaName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSchemasRequestListSchemasPaginateTypeDef(BaseModel): + RegistryName: str + SchemaNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchSchemasRequestSearchSchemasPaginateTypeDef(BaseModel): + Keywords: str + RegistryName: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegistriesResponseTypeDef(BaseModel): + NextToken: str + Registries: List[RegistrySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchemaVersionsResponseTypeDef(BaseModel): + NextToken: str + SchemaVersions: List[SchemaVersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSchemasResponseTypeDef(BaseModel): + NextToken: str + Schemas: List[SchemaSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchSchemaSummaryTypeDef(BaseModel): + RegistryName: Optional[str] = None + SchemaArn: Optional[str] = None + SchemaName: Optional[str] = None + SchemaVersions: Optional[List[SearchSchemaVersionSummaryTypeDef]] = None + +class SearchSchemasResponseTypeDef(BaseModel): + NextToken: str + Schemas: List[SearchSchemaSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/schemas_constants.py b/aws_resource_validator/pydantic_models/schemas_constants.py new file mode 100644 index 00000000..246b14ea --- /dev/null +++ b/aws_resource_validator/pydantic_models/schemas_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CodeBindingExistsWaiterName = Literal["code_binding_exists"] +CodeGenerationStatusType = Literal["CREATE_COMPLETE", "CREATE_FAILED", "CREATE_IN_PROGRESS"] +DiscovererStateType = Literal["STARTED", "STOPPED"] +ListDiscoverersPaginatorName = Literal["list_discoverers"] +ListRegistriesPaginatorName = Literal["list_registries"] +ListSchemaVersionsPaginatorName = Literal["list_schema_versions"] +ListSchemasPaginatorName = Literal["list_schemas"] +SearchSchemasPaginatorName = Literal["search_schemas"] +TypeType = Literal["JSONSchemaDraft4", "OpenApi3"] +SchemasServiceName = Literal["schemas"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_discoverers", "list_registries", "list_schema_versions", "list_schemas", "search_schemas"] +WaiterName = Literal["code_binding_exists"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/sdb_classes.py b/aws_resource_validator/pydantic_models/sdb_classes.py new file mode 100644 index 00000000..0a91b94f --- /dev/null +++ b/aws_resource_validator/pydantic_models/sdb_classes.py @@ -0,0 +1,133 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sdb_constants import * + +class AttributeTypeDef(BaseModel): + Name: str + Value: str + AlternateNameEncoding: Optional[str] = None + AlternateValueEncoding: Optional[str] = None + +class CreateDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class UpdateConditionTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + Exists: Optional[bool] = None + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainName: str + +class DomainMetadataRequestRequestTypeDef(BaseModel): + DomainName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetAttributesRequestRequestTypeDef(BaseModel): + DomainName: str + ItemName: str + AttributeNames: Optional[Sequence[str]] = None + ConsistentRead: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + MaxNumberOfDomains: Optional[int] = None + NextToken: Optional[str] = None + +class ReplaceableAttributeTypeDef(BaseModel): + Name: str + Value: str + Replace: Optional[bool] = None + +class SelectRequestRequestTypeDef(BaseModel): + SelectExpression: str + NextToken: Optional[str] = None + ConsistentRead: Optional[bool] = None + +class DeletableItemTypeDef(BaseModel): + Name: str + Attributes: Optional[Sequence[AttributeTypeDef]] = None + +class ItemTypeDef(BaseModel): + Name: str + Attributes: List[AttributeTypeDef] + AlternateNameEncoding: Optional[str] = None + +class DeleteAttributesRequestRequestTypeDef(BaseModel): + DomainName: str + ItemName: str + Attributes: Optional[Sequence[AttributeTypeDef]] = None + Expected: Optional[UpdateConditionTypeDef] = None + +class DomainMetadataResultTypeDef(BaseModel): + ItemCount: int + ItemNamesSizeBytes: int + AttributeNameCount: int + AttributeNamesSizeBytes: int + AttributeValueCount: int + AttributeValuesSizeBytes: int + Timestamp: int + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAttributesResultTypeDef(BaseModel): + Attributes: List[AttributeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsResultTypeDef(BaseModel): + DomainNames: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsRequestListDomainsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SelectRequestSelectPaginateTypeDef(BaseModel): + SelectExpression: str + ConsistentRead: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PutAttributesRequestRequestTypeDef(BaseModel): + DomainName: str + ItemName: str + Attributes: Sequence[ReplaceableAttributeTypeDef] + Expected: Optional[UpdateConditionTypeDef] = None + +class ReplaceableItemTypeDef(BaseModel): + Name: str + Attributes: Sequence[ReplaceableAttributeTypeDef] + +class BatchDeleteAttributesRequestRequestTypeDef(BaseModel): + DomainName: str + Items: Sequence[DeletableItemTypeDef] + +class SelectResultTypeDef(BaseModel): + Items: List[ItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutAttributesRequestRequestTypeDef(BaseModel): + DomainName: str + Items: Sequence[ReplaceableItemTypeDef] + diff --git a/aws_resource_validator/pydantic_models/sdb_constants.py b/aws_resource_validator/pydantic_models/sdb_constants.py new file mode 100644 index 00000000..ba4fcd83 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sdb_constants.py @@ -0,0 +1,399 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListDomainsPaginatorName = Literal["list_domains"] +SelectPaginatorName = Literal["select"] +SimpleDBServiceName = Literal["sdb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_domains", "select"] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "eu-west-1", + "sa-east-1", + "us-east-1", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/secretsmanager_classes.py b/aws_resource_validator/pydantic_models/secretsmanager_classes.py new file mode 100644 index 00000000..6ab89f53 --- /dev/null +++ b/aws_resource_validator/pydantic_models/secretsmanager_classes.py @@ -0,0 +1,361 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.secretsmanager_constants import * + +class APIErrorTypeTypeDef(BaseModel): + SecretId: Optional[str] = None + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class FilterTypeDef(BaseModel): + Key: Optional[FilterNameStringTypeType] = None + Values: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class SecretValueEntryTypeDef(BaseModel): + ARN: Optional[str] = None + Name: Optional[str] = None + VersionId: Optional[str] = None + SecretBinary: Optional[bytes] = None + SecretString: Optional[str] = None + VersionStages: Optional[List[str]] = None + CreatedDate: Optional[datetime] = None + +class CancelRotateSecretRequestRequestTypeDef(BaseModel): + SecretId: str + +class ReplicaRegionTypeTypeDef(BaseModel): + Region: Optional[str] = None + KmsKeyId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ReplicationStatusTypeTypeDef(BaseModel): + Region: Optional[str] = None + KmsKeyId: Optional[str] = None + Status: Optional[StatusTypeType] = None + StatusMessage: Optional[str] = None + LastAccessedDate: Optional[datetime] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + SecretId: str + +class DeleteSecretRequestRequestTypeDef(BaseModel): + SecretId: str + RecoveryWindowInDays: Optional[int] = None + ForceDeleteWithoutRecovery: Optional[bool] = None + +class DescribeSecretRequestRequestTypeDef(BaseModel): + SecretId: str + +class RotationRulesTypeTypeDef(BaseModel): + AutomaticallyAfterDays: Optional[int] = None + Duration: Optional[str] = None + ScheduleExpression: Optional[str] = None + +class GetRandomPasswordRequestRequestTypeDef(BaseModel): + PasswordLength: Optional[int] = None + ExcludeCharacters: Optional[str] = None + ExcludeNumbers: Optional[bool] = None + ExcludePunctuation: Optional[bool] = None + ExcludeUppercase: Optional[bool] = None + ExcludeLowercase: Optional[bool] = None + IncludeSpace: Optional[bool] = None + RequireEachIncludedType: Optional[bool] = None + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + SecretId: str + +class GetSecretValueRequestRequestTypeDef(BaseModel): + SecretId: str + VersionId: Optional[str] = None + VersionStage: Optional[str] = None + +class ListSecretVersionIdsRequestRequestTypeDef(BaseModel): + SecretId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + IncludeDeprecated: Optional[bool] = None + +class SecretVersionsListEntryTypeDef(BaseModel): + VersionId: Optional[str] = None + VersionStages: Optional[List[str]] = None + LastAccessedDate: Optional[datetime] = None + CreatedDate: Optional[datetime] = None + KmsKeyIds: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + SecretId: str + ResourcePolicy: str + BlockPublicPolicy: Optional[bool] = None + +class RemoveRegionsFromReplicationRequestRequestTypeDef(BaseModel): + SecretId: str + RemoveReplicaRegions: Sequence[str] + +class RestoreSecretRequestRequestTypeDef(BaseModel): + SecretId: str + +class StopReplicationToReplicaRequestRequestTypeDef(BaseModel): + SecretId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + SecretId: str + TagKeys: Sequence[str] + +class UpdateSecretVersionStageRequestRequestTypeDef(BaseModel): + SecretId: str + VersionStage: str + RemoveFromVersionId: Optional[str] = None + MoveToVersionId: Optional[str] = None + +class ValidateResourcePolicyRequestRequestTypeDef(BaseModel): + ResourcePolicy: str + SecretId: Optional[str] = None + +class ValidationErrorsEntryTypeDef(BaseModel): + CheckName: Optional[str] = None + ErrorMessage: Optional[str] = None + +class BatchGetSecretValueRequestRequestTypeDef(BaseModel): + SecretIdList: Optional[Sequence[str]] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSecretsRequestRequestTypeDef(BaseModel): + IncludePlannedDeletion: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + SortOrder: Optional[SortOrderTypeType] = None + +class CancelRotateSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + VersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteResourcePolicyResponseTypeDef(BaseModel): + ARN: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + DeletionDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetRandomPasswordResponseTypeDef(BaseModel): + RandomPassword: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + ARN: str + Name: str + ResourcePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSecretValueResponseTypeDef(BaseModel): + ARN: str + Name: str + VersionId: str + SecretBinary: bytes + SecretString: str + VersionStages: List[str] + CreatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + ARN: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSecretValueResponseTypeDef(BaseModel): + ARN: str + Name: str + VersionId: str + VersionStages: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RestoreSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class RotateSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + VersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopReplicationToReplicaResponseTypeDef(BaseModel): + ARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + VersionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecretVersionStageResponseTypeDef(BaseModel): + ARN: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetSecretValueResponseTypeDef(BaseModel): + SecretValues: List[SecretValueEntryTypeDef] + Errors: List[APIErrorTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutSecretValueRequestRequestTypeDef(BaseModel): + SecretId: str + ClientRequestToken: Optional[str] = None + SecretBinary: Optional[BlobTypeDef] = None + SecretString: Optional[str] = None + VersionStages: Optional[Sequence[str]] = None + RotationToken: Optional[str] = None + +class UpdateSecretRequestRequestTypeDef(BaseModel): + SecretId: str + ClientRequestToken: Optional[str] = None + Description: Optional[str] = None + KmsKeyId: Optional[str] = None + SecretBinary: Optional[BlobTypeDef] = None + SecretString: Optional[str] = None + +class ReplicateSecretToRegionsRequestRequestTypeDef(BaseModel): + SecretId: str + AddReplicaRegions: Sequence[ReplicaRegionTypeTypeDef] + ForceOverwriteReplicaSecret: Optional[bool] = None + +class CreateSecretRequestRequestTypeDef(BaseModel): + Name: str + ClientRequestToken: Optional[str] = None + Description: Optional[str] = None + KmsKeyId: Optional[str] = None + SecretBinary: Optional[BlobTypeDef] = None + SecretString: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AddReplicaRegions: Optional[Sequence[ReplicaRegionTypeTypeDef]] = None + ForceOverwriteReplicaSecret: Optional[bool] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + SecretId: str + Tags: Sequence[TagTypeDef] + +class CreateSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + VersionId: str + ReplicationStatus: List[ReplicationStatusTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveRegionsFromReplicationResponseTypeDef(BaseModel): + ARN: str + ReplicationStatus: List[ReplicationStatusTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ReplicateSecretToRegionsResponseTypeDef(BaseModel): + ARN: str + ReplicationStatus: List[ReplicationStatusTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSecretResponseTypeDef(BaseModel): + ARN: str + Name: str + Description: str + KmsKeyId: str + RotationEnabled: bool + RotationLambdaARN: str + RotationRules: RotationRulesTypeTypeDef + LastRotatedDate: datetime + LastChangedDate: datetime + LastAccessedDate: datetime + DeletedDate: datetime + NextRotationDate: datetime + Tags: List[TagTypeDef] + VersionIdsToStages: Dict[str, List[str]] + OwningService: str + CreatedDate: datetime + PrimaryRegion: str + ReplicationStatus: List[ReplicationStatusTypeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RotateSecretRequestRequestTypeDef(BaseModel): + SecretId: str + ClientRequestToken: Optional[str] = None + RotationLambdaARN: Optional[str] = None + RotationRules: Optional[RotationRulesTypeTypeDef] = None + RotateImmediately: Optional[bool] = None + +class SecretListEntryTypeDef(BaseModel): + ARN: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + KmsKeyId: Optional[str] = None + RotationEnabled: Optional[bool] = None + RotationLambdaARN: Optional[str] = None + RotationRules: Optional[RotationRulesTypeTypeDef] = None + LastRotatedDate: Optional[datetime] = None + LastChangedDate: Optional[datetime] = None + LastAccessedDate: Optional[datetime] = None + DeletedDate: Optional[datetime] = None + NextRotationDate: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + SecretVersionsToStages: Optional[Dict[str, List[str]]] = None + OwningService: Optional[str] = None + CreatedDate: Optional[datetime] = None + PrimaryRegion: Optional[str] = None + +class ListSecretVersionIdsResponseTypeDef(BaseModel): + Versions: List[SecretVersionsListEntryTypeDef] + ARN: str + Name: str + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSecretsRequestListSecretsPaginateTypeDef(BaseModel): + IncludePlannedDeletion: Optional[bool] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + SortOrder: Optional[SortOrderTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ValidateResourcePolicyResponseTypeDef(BaseModel): + PolicyValidationPassed: bool + ValidationErrors: List[ValidationErrorsEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecretsResponseTypeDef(BaseModel): + SecretList: List[SecretListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/secretsmanager_constants.py b/aws_resource_validator/pydantic_models/secretsmanager_constants.py new file mode 100644 index 00000000..2b4e9ebd --- /dev/null +++ b/aws_resource_validator/pydantic_models/secretsmanager_constants.py @@ -0,0 +1,434 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +FilterNameStringTypeType = Literal["all", "description", "name", "owning-service", "primary-region", "tag-key", "tag-value"] +ListSecretsPaginatorName = Literal["list_secrets"] +SortOrderTypeType = Literal["asc", "desc"] +StatusTypeType = Literal["Failed", "InProgress", "InSync"] +SecretsManagerServiceName = Literal["secretsmanager"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_secrets"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/securityhub_classes.py b/aws_resource_validator/pydantic_models/securityhub_classes.py new file mode 100644 index 00000000..c9e2e2ac --- /dev/null +++ b/aws_resource_validator/pydantic_models/securityhub_classes.py @@ -0,0 +1,9600 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.securityhub_constants import * + +class AcceptAdministratorInvitationRequestRequestTypeDef(BaseModel): + AdministratorId: str + InvitationId: str + +class AcceptInvitationRequestRequestTypeDef(BaseModel): + MasterId: str + InvitationId: str + +class AccountDetailsTypeDef(BaseModel): + AccountId: str + Email: Optional[str] = None + +class DnsRequestActionTypeDef(BaseModel): + Domain: Optional[str] = None + Protocol: Optional[str] = None + Blocked: Optional[bool] = None + +class ActionLocalIpDetailsTypeDef(BaseModel): + IpAddressV4: Optional[str] = None + +class ActionLocalPortDetailsTypeDef(BaseModel): + Port: Optional[int] = None + PortName: Optional[str] = None + +class CityTypeDef(BaseModel): + CityName: Optional[str] = None + +class CountryTypeDef(BaseModel): + CountryCode: Optional[str] = None + CountryName: Optional[str] = None + +class GeoLocationTypeDef(BaseModel): + Lon: Optional[float] = None + Lat: Optional[float] = None + +class IpOrganizationDetailsTypeDef(BaseModel): + Asn: Optional[int] = None + AsnOrg: Optional[str] = None + Isp: Optional[str] = None + Org: Optional[str] = None + +class ActionRemotePortDetailsTypeDef(BaseModel): + Port: Optional[int] = None + PortName: Optional[str] = None + +class ActionTargetTypeDef(BaseModel): + ActionTargetArn: str + Name: str + Description: str + +class AdjustmentTypeDef(BaseModel): + Metric: Optional[str] = None + Reason: Optional[str] = None + +class AdminAccountTypeDef(BaseModel): + AccountId: Optional[str] = None + Status: Optional[AdminStatusType] = None + +class AssociatedStandardTypeDef(BaseModel): + StandardsId: Optional[str] = None + +class AssociationFiltersTypeDef(BaseModel): + ConfigurationPolicyId: Optional[str] = None + AssociationType: Optional[AssociationTypeType] = None + AssociationStatus: Optional[ConfigurationPolicyAssociationStatusType] = None + +class AssociationStateDetailsTypeDef(BaseModel): + State: Optional[str] = None + StatusMessage: Optional[str] = None + +class NoteUpdateTypeDef(BaseModel): + Text: str + UpdatedBy: str + +class RelatedFindingTypeDef(BaseModel): + ProductArn: str + Id: str + +class SeverityUpdateTypeDef(BaseModel): + Normalized: Optional[int] = None + Product: Optional[float] = None + Label: Optional[SeverityLabelType] = None + +class WorkflowUpdateTypeDef(BaseModel): + Status: Optional[WorkflowStatusType] = None + +class MapFilterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Comparison: Optional[MapFilterComparisonType] = None + +class NumberFilterTypeDef(BaseModel): + Gte: Optional[float] = None + Lte: Optional[float] = None + Gt: Optional[float] = None + Lt: Optional[float] = None + Eq: Optional[float] = None + +class StringFilterTypeDef(BaseModel): + Value: Optional[str] = None + Comparison: Optional[StringFilterComparisonType] = None + +class AutomationRulesMetadataTypeDef(BaseModel): + RuleArn: Optional[str] = None + RuleStatus: Optional[RuleStatusType] = None + RuleOrder: Optional[int] = None + RuleName: Optional[str] = None + Description: Optional[str] = None + IsTerminal: Optional[bool] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + CreatedBy: Optional[str] = None + +class AvailabilityZoneTypeDef(BaseModel): + ZoneName: Optional[str] = None + SubnetId: Optional[str] = None + +class AwsAmazonMqBrokerEncryptionOptionsDetailsTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + UseAwsOwnedKey: Optional[bool] = None + +class AwsAmazonMqBrokerLdapServerMetadataDetailsExtraOutputTypeDef(BaseModel): + Hosts: Optional[List[str]] = None + RoleBase: Optional[str] = None + RoleName: Optional[str] = None + RoleSearchMatching: Optional[str] = None + RoleSearchSubtree: Optional[bool] = None + ServiceAccountUsername: Optional[str] = None + UserBase: Optional[str] = None + UserRoleName: Optional[str] = None + UserSearchMatching: Optional[str] = None + UserSearchSubtree: Optional[bool] = None + +class AwsAmazonMqBrokerMaintenanceWindowStartTimeDetailsTypeDef(BaseModel): + DayOfWeek: Optional[str] = None + TimeOfDay: Optional[str] = None + TimeZone: Optional[str] = None + +class AwsAmazonMqBrokerUsersDetailsTypeDef(BaseModel): + PendingChange: Optional[str] = None + Username: Optional[str] = None + +class AwsAmazonMqBrokerLdapServerMetadataDetailsOutputTypeDef(BaseModel): + Hosts: Optional[List[str]] = None + RoleBase: Optional[str] = None + RoleName: Optional[str] = None + RoleSearchMatching: Optional[str] = None + RoleSearchSubtree: Optional[bool] = None + ServiceAccountUsername: Optional[str] = None + UserBase: Optional[str] = None + UserRoleName: Optional[str] = None + UserSearchMatching: Optional[str] = None + UserSearchSubtree: Optional[bool] = None + +class AwsAmazonMqBrokerLdapServerMetadataDetailsTypeDef(BaseModel): + Hosts: Optional[Sequence[str]] = None + RoleBase: Optional[str] = None + RoleName: Optional[str] = None + RoleSearchMatching: Optional[str] = None + RoleSearchSubtree: Optional[bool] = None + ServiceAccountUsername: Optional[str] = None + UserBase: Optional[str] = None + UserRoleName: Optional[str] = None + UserSearchMatching: Optional[str] = None + UserSearchSubtree: Optional[bool] = None + +class AwsAmazonMqBrokerLogsPendingDetailsTypeDef(BaseModel): + Audit: Optional[bool] = None + General: Optional[bool] = None + +class AwsApiCallActionDomainDetailsTypeDef(BaseModel): + Domain: Optional[str] = None + +class AwsApiGatewayAccessLogSettingsTypeDef(BaseModel): + Format: Optional[str] = None + DestinationArn: Optional[str] = None + +class AwsApiGatewayCanarySettingsExtraOutputTypeDef(BaseModel): + PercentTraffic: Optional[float] = None + DeploymentId: Optional[str] = None + StageVariableOverrides: Optional[Dict[str, str]] = None + UseStageCache: Optional[bool] = None + +class AwsApiGatewayCanarySettingsOutputTypeDef(BaseModel): + PercentTraffic: Optional[float] = None + DeploymentId: Optional[str] = None + StageVariableOverrides: Optional[Dict[str, str]] = None + UseStageCache: Optional[bool] = None + +class AwsApiGatewayCanarySettingsTypeDef(BaseModel): + PercentTraffic: Optional[float] = None + DeploymentId: Optional[str] = None + StageVariableOverrides: Optional[Mapping[str, str]] = None + UseStageCache: Optional[bool] = None + +class AwsApiGatewayEndpointConfigurationExtraOutputTypeDef(BaseModel): + Types: Optional[List[str]] = None + +class AwsApiGatewayEndpointConfigurationOutputTypeDef(BaseModel): + Types: Optional[List[str]] = None + +class AwsApiGatewayEndpointConfigurationTypeDef(BaseModel): + Types: Optional[Sequence[str]] = None + +class AwsApiGatewayMethodSettingsTypeDef(BaseModel): + MetricsEnabled: Optional[bool] = None + LoggingLevel: Optional[str] = None + DataTraceEnabled: Optional[bool] = None + ThrottlingBurstLimit: Optional[int] = None + ThrottlingRateLimit: Optional[float] = None + CachingEnabled: Optional[bool] = None + CacheTtlInSeconds: Optional[int] = None + CacheDataEncrypted: Optional[bool] = None + RequireAuthorizationForCacheControl: Optional[bool] = None + UnauthorizedCacheControlHeaderStrategy: Optional[str] = None + HttpMethod: Optional[str] = None + ResourcePath: Optional[str] = None + +class AwsCorsConfigurationExtraOutputTypeDef(BaseModel): + AllowOrigins: Optional[List[str]] = None + AllowCredentials: Optional[bool] = None + ExposeHeaders: Optional[List[str]] = None + MaxAge: Optional[int] = None + AllowMethods: Optional[List[str]] = None + AllowHeaders: Optional[List[str]] = None + +class AwsCorsConfigurationOutputTypeDef(BaseModel): + AllowOrigins: Optional[List[str]] = None + AllowCredentials: Optional[bool] = None + ExposeHeaders: Optional[List[str]] = None + MaxAge: Optional[int] = None + AllowMethods: Optional[List[str]] = None + AllowHeaders: Optional[List[str]] = None + +class AwsCorsConfigurationTypeDef(BaseModel): + AllowOrigins: Optional[Sequence[str]] = None + AllowCredentials: Optional[bool] = None + ExposeHeaders: Optional[Sequence[str]] = None + MaxAge: Optional[int] = None + AllowMethods: Optional[Sequence[str]] = None + AllowHeaders: Optional[Sequence[str]] = None + +class AwsApiGatewayV2RouteSettingsTypeDef(BaseModel): + DetailedMetricsEnabled: Optional[bool] = None + LoggingLevel: Optional[str] = None + DataTraceEnabled: Optional[bool] = None + ThrottlingBurstLimit: Optional[int] = None + ThrottlingRateLimit: Optional[float] = None + +class AwsAppSyncGraphQlApiLambdaAuthorizerConfigDetailsTypeDef(BaseModel): + AuthorizerResultTtlInSeconds: Optional[int] = None + AuthorizerUri: Optional[str] = None + IdentityValidationExpression: Optional[str] = None + +class AwsAppSyncGraphQlApiOpenIdConnectConfigDetailsTypeDef(BaseModel): + AuthTtL: Optional[int] = None + ClientId: Optional[str] = None + IatTtL: Optional[int] = None + Issuer: Optional[str] = None + +class AwsAppSyncGraphQlApiUserPoolConfigDetailsTypeDef(BaseModel): + AppIdClientRegex: Optional[str] = None + AwsRegion: Optional[str] = None + DefaultAction: Optional[str] = None + UserPoolId: Optional[str] = None + +class AwsAppSyncGraphQlApiLogConfigDetailsTypeDef(BaseModel): + CloudWatchLogsRoleArn: Optional[str] = None + ExcludeVerboseContent: Optional[bool] = None + FieldLogLevel: Optional[str] = None + +class AwsAthenaWorkGroupConfigurationResultConfigurationEncryptionConfigurationDetailsTypeDef(BaseModel): + EncryptionOption: Optional[str] = None + KmsKey: Optional[str] = None + +class AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetailsTypeDef(BaseModel): + Value: Optional[str] = None + +class AwsAutoScalingAutoScalingGroupLaunchTemplateLaunchTemplateSpecificationTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetailsTypeDef(BaseModel): + OnDemandAllocationStrategy: Optional[str] = None + OnDemandBaseCapacity: Optional[int] = None + OnDemandPercentageAboveBaseCapacity: Optional[int] = None + SpotAllocationStrategy: Optional[str] = None + SpotInstancePools: Optional[int] = None + SpotMaxPrice: Optional[str] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationTypeDef(BaseModel): + LaunchTemplateId: Optional[str] = None + LaunchTemplateName: Optional[str] = None + Version: Optional[str] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetailsTypeDef(BaseModel): + InstanceType: Optional[str] = None + WeightedCapacity: Optional[str] = None + +class AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetailsTypeDef(BaseModel): + DeleteOnTermination: Optional[bool] = None + Encrypted: Optional[bool] = None + Iops: Optional[int] = None + SnapshotId: Optional[str] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[str] = None + +class AwsAutoScalingLaunchConfigurationInstanceMonitoringDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsAutoScalingLaunchConfigurationMetadataOptionsTypeDef(BaseModel): + HttpEndpoint: Optional[str] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpTokens: Optional[str] = None + +class AwsBackupBackupPlanAdvancedBackupSettingsDetailsExtraOutputTypeDef(BaseModel): + BackupOptions: Optional[Dict[str, str]] = None + ResourceType: Optional[str] = None + +class AwsBackupBackupPlanAdvancedBackupSettingsDetailsOutputTypeDef(BaseModel): + BackupOptions: Optional[Dict[str, str]] = None + ResourceType: Optional[str] = None + +class AwsBackupBackupPlanAdvancedBackupSettingsDetailsTypeDef(BaseModel): + BackupOptions: Optional[Mapping[str, str]] = None + ResourceType: Optional[str] = None + +class AwsBackupBackupPlanLifecycleDetailsTypeDef(BaseModel): + DeleteAfterDays: Optional[int] = None + MoveToColdStorageAfterDays: Optional[int] = None + +class AwsBackupBackupVaultNotificationsDetailsExtraOutputTypeDef(BaseModel): + BackupVaultEvents: Optional[List[str]] = None + SnsTopicArn: Optional[str] = None + +class AwsBackupBackupVaultNotificationsDetailsOutputTypeDef(BaseModel): + BackupVaultEvents: Optional[List[str]] = None + SnsTopicArn: Optional[str] = None + +class AwsBackupBackupVaultNotificationsDetailsTypeDef(BaseModel): + BackupVaultEvents: Optional[Sequence[str]] = None + SnsTopicArn: Optional[str] = None + +class AwsBackupRecoveryPointCalculatedLifecycleDetailsTypeDef(BaseModel): + DeleteAt: Optional[str] = None + MoveToColdStorageAt: Optional[str] = None + +class AwsBackupRecoveryPointCreatedByDetailsTypeDef(BaseModel): + BackupPlanArn: Optional[str] = None + BackupPlanId: Optional[str] = None + BackupPlanVersion: Optional[str] = None + BackupRuleId: Optional[str] = None + +class AwsBackupRecoveryPointLifecycleDetailsTypeDef(BaseModel): + DeleteAfterDays: Optional[int] = None + MoveToColdStorageAfterDays: Optional[int] = None + +class AwsCertificateManagerCertificateExtendedKeyUsageTypeDef(BaseModel): + Name: Optional[str] = None + OId: Optional[str] = None + +class AwsCertificateManagerCertificateKeyUsageTypeDef(BaseModel): + Name: Optional[str] = None + +class AwsCertificateManagerCertificateOptionsTypeDef(BaseModel): + CertificateTransparencyLoggingPreference: Optional[str] = None + +class AwsCertificateManagerCertificateResourceRecordTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + Value: Optional[str] = None + +class AwsCloudFormationStackDriftInformationDetailsTypeDef(BaseModel): + StackDriftStatus: Optional[str] = None + +class AwsCloudFormationStackOutputsDetailsTypeDef(BaseModel): + Description: Optional[str] = None + OutputKey: Optional[str] = None + OutputValue: Optional[str] = None + +class AwsCloudFrontDistributionCacheBehaviorTypeDef(BaseModel): + ViewerProtocolPolicy: Optional[str] = None + +class AwsCloudFrontDistributionDefaultCacheBehaviorTypeDef(BaseModel): + ViewerProtocolPolicy: Optional[str] = None + +class AwsCloudFrontDistributionLoggingTypeDef(BaseModel): + Bucket: Optional[str] = None + Enabled: Optional[bool] = None + IncludeCookies: Optional[bool] = None + Prefix: Optional[str] = None + +class AwsCloudFrontDistributionViewerCertificateTypeDef(BaseModel): + AcmCertificateArn: Optional[str] = None + Certificate: Optional[str] = None + CertificateSource: Optional[str] = None + CloudFrontDefaultCertificate: Optional[bool] = None + IamCertificateId: Optional[str] = None + MinimumProtocolVersion: Optional[str] = None + SslSupportMethod: Optional[str] = None + +class AwsCloudFrontDistributionOriginSslProtocolsExtraOutputTypeDef(BaseModel): + Items: Optional[List[str]] = None + Quantity: Optional[int] = None + +class AwsCloudFrontDistributionOriginSslProtocolsOutputTypeDef(BaseModel): + Items: Optional[List[str]] = None + Quantity: Optional[int] = None + +class AwsCloudFrontDistributionOriginSslProtocolsTypeDef(BaseModel): + Items: Optional[Sequence[str]] = None + Quantity: Optional[int] = None + +class AwsCloudFrontDistributionOriginGroupFailoverStatusCodesExtraOutputTypeDef(BaseModel): + Items: Optional[List[int]] = None + Quantity: Optional[int] = None + +class AwsCloudFrontDistributionOriginGroupFailoverStatusCodesOutputTypeDef(BaseModel): + Items: Optional[List[int]] = None + Quantity: Optional[int] = None + +class AwsCloudFrontDistributionOriginGroupFailoverStatusCodesTypeDef(BaseModel): + Items: Optional[Sequence[int]] = None + Quantity: Optional[int] = None + +class AwsCloudFrontDistributionOriginS3OriginConfigTypeDef(BaseModel): + OriginAccessIdentity: Optional[str] = None + +class AwsCloudTrailTrailDetailsTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[str] = None + CloudWatchLogsRoleArn: Optional[str] = None + HasCustomEventSelectors: Optional[bool] = None + HomeRegion: Optional[str] = None + IncludeGlobalServiceEvents: Optional[bool] = None + IsMultiRegionTrail: Optional[bool] = None + IsOrganizationTrail: Optional[bool] = None + KmsKeyId: Optional[str] = None + LogFileValidationEnabled: Optional[bool] = None + Name: Optional[str] = None + S3BucketName: Optional[str] = None + S3KeyPrefix: Optional[str] = None + SnsTopicArn: Optional[str] = None + SnsTopicName: Optional[str] = None + TrailArn: Optional[str] = None + +class AwsCloudWatchAlarmDimensionsDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class AwsCodeBuildProjectArtifactsDetailsTypeDef(BaseModel): + ArtifactIdentifier: Optional[str] = None + EncryptionDisabled: Optional[bool] = None + Location: Optional[str] = None + Name: Optional[str] = None + NamespaceType: Optional[str] = None + OverrideArtifactName: Optional[bool] = None + Packaging: Optional[str] = None + Path: Optional[str] = None + Type: Optional[str] = None + +class AwsCodeBuildProjectSourceTypeDef(BaseModel): + Type: Optional[str] = None + Location: Optional[str] = None + GitCloneDepth: Optional[int] = None + InsecureSsl: Optional[bool] = None + +class AwsCodeBuildProjectVpcConfigExtraOutputTypeDef(BaseModel): + VpcId: Optional[str] = None + Subnets: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class AwsCodeBuildProjectVpcConfigOutputTypeDef(BaseModel): + VpcId: Optional[str] = None + Subnets: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class AwsCodeBuildProjectVpcConfigTypeDef(BaseModel): + VpcId: Optional[str] = None + Subnets: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class AwsCodeBuildProjectEnvironmentEnvironmentVariablesDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + Value: Optional[str] = None + +class AwsCodeBuildProjectEnvironmentRegistryCredentialTypeDef(BaseModel): + Credential: Optional[str] = None + CredentialProvider: Optional[str] = None + +class AwsCodeBuildProjectLogsConfigCloudWatchLogsDetailsTypeDef(BaseModel): + GroupName: Optional[str] = None + Status: Optional[str] = None + StreamName: Optional[str] = None + +class AwsCodeBuildProjectLogsConfigS3LogsDetailsTypeDef(BaseModel): + EncryptionDisabled: Optional[bool] = None + Location: Optional[str] = None + Status: Optional[str] = None + +class AwsDmsEndpointDetailsTypeDef(BaseModel): + CertificateArn: Optional[str] = None + DatabaseName: Optional[str] = None + EndpointArn: Optional[str] = None + EndpointIdentifier: Optional[str] = None + EndpointType: Optional[str] = None + EngineName: Optional[str] = None + ExternalId: Optional[str] = None + ExtraConnectionAttributes: Optional[str] = None + KmsKeyId: Optional[str] = None + Port: Optional[int] = None + ServerName: Optional[str] = None + SslMode: Optional[str] = None + Username: Optional[str] = None + +class AwsDmsReplicationInstanceReplicationSubnetGroupDetailsTypeDef(BaseModel): + ReplicationSubnetGroupIdentifier: Optional[str] = None + +class AwsDmsReplicationInstanceVpcSecurityGroupsDetailsTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + +class AwsDmsReplicationTaskDetailsTypeDef(BaseModel): + CdcStartPosition: Optional[str] = None + CdcStartTime: Optional[str] = None + CdcStopPosition: Optional[str] = None + MigrationType: Optional[str] = None + Id: Optional[str] = None + ResourceIdentifier: Optional[str] = None + ReplicationInstanceArn: Optional[str] = None + ReplicationTaskIdentifier: Optional[str] = None + ReplicationTaskSettings: Optional[str] = None + SourceEndpointArn: Optional[str] = None + TableMappings: Optional[str] = None + TargetEndpointArn: Optional[str] = None + TaskData: Optional[str] = None + +class AwsDynamoDbTableAttributeDefinitionTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeType: Optional[str] = None + +class AwsDynamoDbTableBillingModeSummaryTypeDef(BaseModel): + BillingMode: Optional[str] = None + LastUpdateToPayPerRequestDateTime: Optional[str] = None + +class AwsDynamoDbTableKeySchemaTypeDef(BaseModel): + AttributeName: Optional[str] = None + KeyType: Optional[str] = None + +class AwsDynamoDbTableProvisionedThroughputTypeDef(BaseModel): + LastDecreaseDateTime: Optional[str] = None + LastIncreaseDateTime: Optional[str] = None + NumberOfDecreasesToday: Optional[int] = None + ReadCapacityUnits: Optional[int] = None + WriteCapacityUnits: Optional[int] = None + +class AwsDynamoDbTableRestoreSummaryTypeDef(BaseModel): + SourceBackupArn: Optional[str] = None + SourceTableArn: Optional[str] = None + RestoreDateTime: Optional[str] = None + RestoreInProgress: Optional[bool] = None + +class AwsDynamoDbTableSseDescriptionTypeDef(BaseModel): + InaccessibleEncryptionDateTime: Optional[str] = None + Status: Optional[str] = None + SseType: Optional[str] = None + KmsMasterKeyArn: Optional[str] = None + +class AwsDynamoDbTableStreamSpecificationTypeDef(BaseModel): + StreamEnabled: Optional[bool] = None + StreamViewType: Optional[str] = None + +class AwsDynamoDbTableProjectionExtraOutputTypeDef(BaseModel): + NonKeyAttributes: Optional[List[str]] = None + ProjectionType: Optional[str] = None + +class AwsDynamoDbTableProjectionOutputTypeDef(BaseModel): + NonKeyAttributes: Optional[List[str]] = None + ProjectionType: Optional[str] = None + +class AwsDynamoDbTableProjectionTypeDef(BaseModel): + NonKeyAttributes: Optional[Sequence[str]] = None + ProjectionType: Optional[str] = None + +class AwsDynamoDbTableProvisionedThroughputOverrideTypeDef(BaseModel): + ReadCapacityUnits: Optional[int] = None + +class AwsEc2ClientVpnEndpointAuthenticationOptionsActiveDirectoryDetailsTypeDef(BaseModel): + DirectoryId: Optional[str] = None + +class AwsEc2ClientVpnEndpointAuthenticationOptionsFederatedAuthenticationDetailsTypeDef(BaseModel): + SamlProviderArn: Optional[str] = None + SelfServiceSamlProviderArn: Optional[str] = None + +class AwsEc2ClientVpnEndpointAuthenticationOptionsMutualAuthenticationDetailsTypeDef(BaseModel): + ClientRootCertificateChain: Optional[str] = None + +class AwsEc2ClientVpnEndpointClientConnectOptionsStatusDetailsTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class AwsEc2ClientVpnEndpointClientLoginBannerOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + BannerText: Optional[str] = None + +class AwsEc2ClientVpnEndpointConnectionLogOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + CloudwatchLogGroup: Optional[str] = None + CloudwatchLogStream: Optional[str] = None + +class AwsEc2EipDetailsTypeDef(BaseModel): + InstanceId: Optional[str] = None + PublicIp: Optional[str] = None + AllocationId: Optional[str] = None + AssociationId: Optional[str] = None + Domain: Optional[str] = None + PublicIpv4Pool: Optional[str] = None + NetworkBorderGroup: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NetworkInterfaceOwnerId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + +class AwsEc2InstanceMetadataOptionsTypeDef(BaseModel): + HttpEndpoint: Optional[str] = None + HttpProtocolIpv6: Optional[str] = None + HttpPutResponseHopLimit: Optional[int] = None + HttpTokens: Optional[str] = None + InstanceMetadataTags: Optional[str] = None + +class AwsEc2InstanceMonitoringDetailsTypeDef(BaseModel): + State: Optional[str] = None + +class AwsEc2InstanceNetworkInterfacesDetailsTypeDef(BaseModel): + NetworkInterfaceId: Optional[str] = None + +class AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetailsTypeDef(BaseModel): + DeleteOnTermination: Optional[bool] = None + Encrypted: Optional[bool] = None + Iops: Optional[int] = None + KmsKeyId: Optional[str] = None + SnapshotId: Optional[str] = None + Throughput: Optional[int] = None + VolumeSize: Optional[int] = None + VolumeType: Optional[str] = None + +class AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetailsTypeDef(BaseModel): + CapacityReservationId: Optional[str] = None + CapacityReservationResourceGroupArn: Optional[str] = None + +class AwsEc2LaunchTemplateDataCpuOptionsDetailsTypeDef(BaseModel): + CoreCount: Optional[int] = None + ThreadsPerCore: Optional[int] = None + +class AwsEc2LaunchTemplateDataCreditSpecificationDetailsTypeDef(BaseModel): + CpuCredits: Optional[str] = None + +class AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetailsTypeDef(BaseModel): + Type: Optional[str] = None + +class AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetailsTypeDef(BaseModel): + Count: Optional[int] = None + Type: Optional[str] = None + +class AwsEc2LaunchTemplateDataEnclaveOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsEc2LaunchTemplateDataHibernationOptionsDetailsTypeDef(BaseModel): + Configured: Optional[bool] = None + +class AwsEc2LaunchTemplateDataIamInstanceProfileDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class AwsEc2LaunchTemplateDataLicenseSetDetailsTypeDef(BaseModel): + LicenseConfigurationArn: Optional[str] = None + +class AwsEc2LaunchTemplateDataMaintenanceOptionsDetailsTypeDef(BaseModel): + AutoRecovery: Optional[str] = None + +class AwsEc2LaunchTemplateDataMetadataOptionsDetailsTypeDef(BaseModel): + HttpEndpoint: Optional[str] = None + HttpProtocolIpv6: Optional[str] = None + HttpTokens: Optional[str] = None + HttpPutResponseHopLimit: Optional[int] = None + InstanceMetadataTags: Optional[str] = None + +class AwsEc2LaunchTemplateDataMonitoringDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsEc2LaunchTemplateDataPlacementDetailsTypeDef(BaseModel): + Affinity: Optional[str] = None + AvailabilityZone: Optional[str] = None + GroupName: Optional[str] = None + HostId: Optional[str] = None + HostResourceGroupArn: Optional[str] = None + PartitionNumber: Optional[int] = None + SpreadDomain: Optional[str] = None + Tenancy: Optional[str] = None + +class AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetailsTypeDef(BaseModel): + EnableResourceNameDnsAAAARecord: Optional[bool] = None + EnableResourceNameDnsARecord: Optional[bool] = None + HostnameType: Optional[str] = None + +class AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetailsTypeDef(BaseModel): + BlockDurationMinutes: Optional[int] = None + InstanceInterruptionBehavior: Optional[str] = None + MaxPrice: Optional[str] = None + SpotInstanceType: Optional[str] = None + ValidUntil: Optional[str] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetailsTypeDef(BaseModel): + Max: Optional[int] = None + Min: Optional[int] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetailsTypeDef(BaseModel): + Max: Optional[int] = None + Min: Optional[int] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetailsTypeDef(BaseModel): + Max: Optional[int] = None + Min: Optional[int] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetailsTypeDef(BaseModel): + Max: Optional[float] = None + Min: Optional[float] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetailsTypeDef(BaseModel): + Max: Optional[int] = None + Min: Optional[int] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetailsTypeDef(BaseModel): + Max: Optional[int] = None + Min: Optional[int] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetailsTypeDef(BaseModel): + Max: Optional[float] = None + Min: Optional[float] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetailsTypeDef(BaseModel): + Max: Optional[int] = None + Min: Optional[int] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetailsTypeDef(BaseModel): + Ipv4Prefix: Optional[str] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetailsTypeDef(BaseModel): + Ipv6Address: Optional[str] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetailsTypeDef(BaseModel): + Ipv6Prefix: Optional[str] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetailsTypeDef(BaseModel): + Primary: Optional[bool] = None + PrivateIpAddress: Optional[str] = None + +class AwsEc2NetworkAclAssociationTypeDef(BaseModel): + NetworkAclAssociationId: Optional[str] = None + NetworkAclId: Optional[str] = None + SubnetId: Optional[str] = None + +class IcmpTypeCodeTypeDef(BaseModel): + Code: Optional[int] = None + Type: Optional[int] = None + +class PortRangeFromToTypeDef(BaseModel): + From: Optional[int] = None + To: Optional[int] = None + +class AwsEc2NetworkInterfaceAttachmentTypeDef(BaseModel): + AttachTime: Optional[str] = None + AttachmentId: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + DeviceIndex: Optional[int] = None + InstanceId: Optional[str] = None + InstanceOwnerId: Optional[str] = None + Status: Optional[str] = None + +class AwsEc2NetworkInterfaceIpV6AddressDetailTypeDef(BaseModel): + IpV6Address: Optional[str] = None + +class AwsEc2NetworkInterfacePrivateIpAddressDetailTypeDef(BaseModel): + PrivateIpAddress: Optional[str] = None + PrivateDnsName: Optional[str] = None + +class AwsEc2NetworkInterfaceSecurityGroupTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + +class PropagatingVgwSetDetailsTypeDef(BaseModel): + GatewayId: Optional[str] = None + +class RouteSetDetailsTypeDef(BaseModel): + CarrierGatewayId: Optional[str] = None + CoreNetworkArn: Optional[str] = None + DestinationCidrBlock: Optional[str] = None + DestinationIpv6CidrBlock: Optional[str] = None + DestinationPrefixListId: Optional[str] = None + EgressOnlyInternetGatewayId: Optional[str] = None + GatewayId: Optional[str] = None + InstanceId: Optional[str] = None + InstanceOwnerId: Optional[str] = None + LocalGatewayId: Optional[str] = None + NatGatewayId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + Origin: Optional[str] = None + State: Optional[str] = None + TransitGatewayId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + +class AwsEc2SecurityGroupIpRangeTypeDef(BaseModel): + CidrIp: Optional[str] = None + +class AwsEc2SecurityGroupIpv6RangeTypeDef(BaseModel): + CidrIpv6: Optional[str] = None + +class AwsEc2SecurityGroupPrefixListIdTypeDef(BaseModel): + PrefixListId: Optional[str] = None + +class AwsEc2SecurityGroupUserIdGroupPairTypeDef(BaseModel): + GroupId: Optional[str] = None + GroupName: Optional[str] = None + PeeringStatus: Optional[str] = None + UserId: Optional[str] = None + VpcId: Optional[str] = None + VpcPeeringConnectionId: Optional[str] = None + +class Ipv6CidrBlockAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + Ipv6CidrBlock: Optional[str] = None + CidrBlockState: Optional[str] = None + +class AwsEc2TransitGatewayDetailsExtraOutputTypeDef(BaseModel): + Id: Optional[str] = None + Description: Optional[str] = None + DefaultRouteTablePropagation: Optional[str] = None + AutoAcceptSharedAttachments: Optional[str] = None + DefaultRouteTableAssociation: Optional[str] = None + TransitGatewayCidrBlocks: Optional[List[str]] = None + AssociationDefaultRouteTableId: Optional[str] = None + PropagationDefaultRouteTableId: Optional[str] = None + VpnEcmpSupport: Optional[str] = None + DnsSupport: Optional[str] = None + MulticastSupport: Optional[str] = None + AmazonSideAsn: Optional[int] = None + +class AwsEc2TransitGatewayDetailsOutputTypeDef(BaseModel): + Id: Optional[str] = None + Description: Optional[str] = None + DefaultRouteTablePropagation: Optional[str] = None + AutoAcceptSharedAttachments: Optional[str] = None + DefaultRouteTableAssociation: Optional[str] = None + TransitGatewayCidrBlocks: Optional[List[str]] = None + AssociationDefaultRouteTableId: Optional[str] = None + PropagationDefaultRouteTableId: Optional[str] = None + VpnEcmpSupport: Optional[str] = None + DnsSupport: Optional[str] = None + MulticastSupport: Optional[str] = None + AmazonSideAsn: Optional[int] = None + +class AwsEc2TransitGatewayDetailsTypeDef(BaseModel): + Id: Optional[str] = None + Description: Optional[str] = None + DefaultRouteTablePropagation: Optional[str] = None + AutoAcceptSharedAttachments: Optional[str] = None + DefaultRouteTableAssociation: Optional[str] = None + TransitGatewayCidrBlocks: Optional[Sequence[str]] = None + AssociationDefaultRouteTableId: Optional[str] = None + PropagationDefaultRouteTableId: Optional[str] = None + VpnEcmpSupport: Optional[str] = None + DnsSupport: Optional[str] = None + MulticastSupport: Optional[str] = None + AmazonSideAsn: Optional[int] = None + +class AwsEc2VolumeAttachmentTypeDef(BaseModel): + AttachTime: Optional[str] = None + DeleteOnTermination: Optional[bool] = None + InstanceId: Optional[str] = None + Status: Optional[str] = None + +class CidrBlockAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + CidrBlock: Optional[str] = None + CidrBlockState: Optional[str] = None + +class AwsEc2VpcEndpointServiceServiceTypeDetailsTypeDef(BaseModel): + ServiceType: Optional[str] = None + +class AwsEc2VpcPeeringConnectionStatusDetailsTypeDef(BaseModel): + Code: Optional[str] = None + Message: Optional[str] = None + +class VpcInfoCidrBlockSetDetailsTypeDef(BaseModel): + CidrBlock: Optional[str] = None + +class VpcInfoIpv6CidrBlockSetDetailsTypeDef(BaseModel): + Ipv6CidrBlock: Optional[str] = None + +class VpcInfoPeeringOptionsDetailsTypeDef(BaseModel): + AllowDnsResolutionFromRemoteVpc: Optional[bool] = None + AllowEgressFromLocalClassicLinkToRemoteVpc: Optional[bool] = None + AllowEgressFromLocalVpcToRemoteClassicLink: Optional[bool] = None + +class AwsEc2VpnConnectionRoutesDetailsTypeDef(BaseModel): + DestinationCidrBlock: Optional[str] = None + State: Optional[str] = None + +class AwsEc2VpnConnectionVgwTelemetryDetailsTypeDef(BaseModel): + AcceptedRouteCount: Optional[int] = None + CertificateArn: Optional[str] = None + LastStatusChange: Optional[str] = None + OutsideIpAddress: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + +class AwsEc2VpnConnectionOptionsTunnelOptionsDetailsExtraOutputTypeDef(BaseModel): + DpdTimeoutSeconds: Optional[int] = None + IkeVersions: Optional[List[str]] = None + OutsideIpAddress: Optional[str] = None + Phase1DhGroupNumbers: Optional[List[int]] = None + Phase1EncryptionAlgorithms: Optional[List[str]] = None + Phase1IntegrityAlgorithms: Optional[List[str]] = None + Phase1LifetimeSeconds: Optional[int] = None + Phase2DhGroupNumbers: Optional[List[int]] = None + Phase2EncryptionAlgorithms: Optional[List[str]] = None + Phase2IntegrityAlgorithms: Optional[List[str]] = None + Phase2LifetimeSeconds: Optional[int] = None + PreSharedKey: Optional[str] = None + RekeyFuzzPercentage: Optional[int] = None + RekeyMarginTimeSeconds: Optional[int] = None + ReplayWindowSize: Optional[int] = None + TunnelInsideCidr: Optional[str] = None + +class AwsEc2VpnConnectionOptionsTunnelOptionsDetailsOutputTypeDef(BaseModel): + DpdTimeoutSeconds: Optional[int] = None + IkeVersions: Optional[List[str]] = None + OutsideIpAddress: Optional[str] = None + Phase1DhGroupNumbers: Optional[List[int]] = None + Phase1EncryptionAlgorithms: Optional[List[str]] = None + Phase1IntegrityAlgorithms: Optional[List[str]] = None + Phase1LifetimeSeconds: Optional[int] = None + Phase2DhGroupNumbers: Optional[List[int]] = None + Phase2EncryptionAlgorithms: Optional[List[str]] = None + Phase2IntegrityAlgorithms: Optional[List[str]] = None + Phase2LifetimeSeconds: Optional[int] = None + PreSharedKey: Optional[str] = None + RekeyFuzzPercentage: Optional[int] = None + RekeyMarginTimeSeconds: Optional[int] = None + ReplayWindowSize: Optional[int] = None + TunnelInsideCidr: Optional[str] = None + +class AwsEc2VpnConnectionOptionsTunnelOptionsDetailsTypeDef(BaseModel): + DpdTimeoutSeconds: Optional[int] = None + IkeVersions: Optional[Sequence[str]] = None + OutsideIpAddress: Optional[str] = None + Phase1DhGroupNumbers: Optional[Sequence[int]] = None + Phase1EncryptionAlgorithms: Optional[Sequence[str]] = None + Phase1IntegrityAlgorithms: Optional[Sequence[str]] = None + Phase1LifetimeSeconds: Optional[int] = None + Phase2DhGroupNumbers: Optional[Sequence[int]] = None + Phase2EncryptionAlgorithms: Optional[Sequence[str]] = None + Phase2IntegrityAlgorithms: Optional[Sequence[str]] = None + Phase2LifetimeSeconds: Optional[int] = None + PreSharedKey: Optional[str] = None + RekeyFuzzPercentage: Optional[int] = None + RekeyMarginTimeSeconds: Optional[int] = None + ReplayWindowSize: Optional[int] = None + TunnelInsideCidr: Optional[str] = None + +class AwsEcrContainerImageDetailsExtraOutputTypeDef(BaseModel): + RegistryId: Optional[str] = None + RepositoryName: Optional[str] = None + Architecture: Optional[str] = None + ImageDigest: Optional[str] = None + ImageTags: Optional[List[str]] = None + ImagePublishedAt: Optional[str] = None + +class AwsEcrContainerImageDetailsOutputTypeDef(BaseModel): + RegistryId: Optional[str] = None + RepositoryName: Optional[str] = None + Architecture: Optional[str] = None + ImageDigest: Optional[str] = None + ImageTags: Optional[List[str]] = None + ImagePublishedAt: Optional[str] = None + +class AwsEcrContainerImageDetailsTypeDef(BaseModel): + RegistryId: Optional[str] = None + RepositoryName: Optional[str] = None + Architecture: Optional[str] = None + ImageDigest: Optional[str] = None + ImageTags: Optional[Sequence[str]] = None + ImagePublishedAt: Optional[str] = None + +class AwsEcrRepositoryImageScanningConfigurationDetailsTypeDef(BaseModel): + ScanOnPush: Optional[bool] = None + +class AwsEcrRepositoryLifecyclePolicyDetailsTypeDef(BaseModel): + LifecyclePolicyText: Optional[str] = None + RegistryId: Optional[str] = None + +class AwsEcsClusterClusterSettingsDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetailsTypeDef(BaseModel): + CloudWatchEncryptionEnabled: Optional[bool] = None + CloudWatchLogGroupName: Optional[str] = None + S3BucketName: Optional[str] = None + S3EncryptionEnabled: Optional[bool] = None + S3KeyPrefix: Optional[str] = None + +class AwsEcsClusterDefaultCapacityProviderStrategyDetailsTypeDef(BaseModel): + Base: Optional[int] = None + CapacityProvider: Optional[str] = None + Weight: Optional[int] = None + +class AwsMountPointTypeDef(BaseModel): + SourceVolume: Optional[str] = None + ContainerPath: Optional[str] = None + +class AwsEcsServiceCapacityProviderStrategyDetailsTypeDef(BaseModel): + Base: Optional[int] = None + CapacityProvider: Optional[str] = None + Weight: Optional[int] = None + +class AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetailsTypeDef(BaseModel): + Enable: Optional[bool] = None + Rollback: Optional[bool] = None + +class AwsEcsServiceDeploymentControllerDetailsTypeDef(BaseModel): + Type: Optional[str] = None + +class AwsEcsServiceLoadBalancersDetailsTypeDef(BaseModel): + ContainerName: Optional[str] = None + ContainerPort: Optional[int] = None + LoadBalancerName: Optional[str] = None + TargetGroupArn: Optional[str] = None + +class AwsEcsServicePlacementConstraintsDetailsTypeDef(BaseModel): + Expression: Optional[str] = None + Type: Optional[str] = None + +class AwsEcsServicePlacementStrategiesDetailsTypeDef(BaseModel): + Field: Optional[str] = None + Type: Optional[str] = None + +class AwsEcsServiceServiceRegistriesDetailsTypeDef(BaseModel): + ContainerName: Optional[str] = None + ContainerPort: Optional[int] = None + Port: Optional[int] = None + RegistryArn: Optional[str] = None + +class AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetailsExtraOutputTypeDef(BaseModel): + AssignPublicIp: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + Subnets: Optional[List[str]] = None + +class AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetailsOutputTypeDef(BaseModel): + AssignPublicIp: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + Subnets: Optional[List[str]] = None + +class AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetailsTypeDef(BaseModel): + AssignPublicIp: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + Subnets: Optional[Sequence[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetailsTypeDef(BaseModel): + Condition: Optional[str] = None + ContainerName: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetailsTypeDef(BaseModel): + Type: Optional[str] = None + Value: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetailsTypeDef(BaseModel): + Hostname: Optional[str] = None + IpAddress: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetailsExtraOutputTypeDef(BaseModel): + Options: Optional[Dict[str, str]] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetailsExtraOutputTypeDef(BaseModel): + Command: Optional[List[str]] = None + Interval: Optional[int] = None + Retries: Optional[int] = None + StartPeriod: Optional[int] = None + Timeout: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetailsTypeDef(BaseModel): + ContainerPath: Optional[str] = None + ReadOnly: Optional[bool] = None + SourceVolume: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetailsTypeDef(BaseModel): + ContainerPort: Optional[int] = None + HostPort: Optional[int] = None + Protocol: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetailsTypeDef(BaseModel): + CredentialsParameter: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetailsTypeDef(BaseModel): + Type: Optional[str] = None + Value: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsSecretsDetailsTypeDef(BaseModel): + Name: Optional[str] = None + ValueFrom: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetailsTypeDef(BaseModel): + Namespace: Optional[str] = None + Value: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetailsTypeDef(BaseModel): + HardLimit: Optional[int] = None + Name: Optional[str] = None + SoftLimit: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetailsTypeDef(BaseModel): + ReadOnly: Optional[bool] = None + SourceContainer: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetailsOutputTypeDef(BaseModel): + Options: Optional[Dict[str, str]] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetailsOutputTypeDef(BaseModel): + Command: Optional[List[str]] = None + Interval: Optional[int] = None + Retries: Optional[int] = None + StartPeriod: Optional[int] = None + Timeout: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetailsTypeDef(BaseModel): + Options: Optional[Mapping[str, str]] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetailsTypeDef(BaseModel): + Command: Optional[Sequence[str]] = None + Interval: Optional[int] = None + Retries: Optional[int] = None + StartPeriod: Optional[int] = None + Timeout: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetailsExtraOutputTypeDef(BaseModel): + Add: Optional[List[str]] = None + Drop: Optional[List[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetailsOutputTypeDef(BaseModel): + Add: Optional[List[str]] = None + Drop: Optional[List[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetailsTypeDef(BaseModel): + Add: Optional[Sequence[str]] = None + Drop: Optional[Sequence[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetailsExtraOutputTypeDef(BaseModel): + ContainerPath: Optional[str] = None + HostPath: Optional[str] = None + Permissions: Optional[List[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetailsExtraOutputTypeDef(BaseModel): + ContainerPath: Optional[str] = None + MountOptions: Optional[List[str]] = None + Size: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetailsOutputTypeDef(BaseModel): + ContainerPath: Optional[str] = None + HostPath: Optional[str] = None + Permissions: Optional[List[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetailsOutputTypeDef(BaseModel): + ContainerPath: Optional[str] = None + MountOptions: Optional[List[str]] = None + Size: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetailsTypeDef(BaseModel): + ContainerPath: Optional[str] = None + HostPath: Optional[str] = None + Permissions: Optional[Sequence[str]] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetailsTypeDef(BaseModel): + ContainerPath: Optional[str] = None + MountOptions: Optional[Sequence[str]] = None + Size: Optional[int] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetailsTypeDef(BaseModel): + Name: Optional[str] = None + ValueFrom: Optional[str] = None + +class AwsEcsTaskDefinitionInferenceAcceleratorsDetailsTypeDef(BaseModel): + DeviceName: Optional[str] = None + DeviceType: Optional[str] = None + +class AwsEcsTaskDefinitionPlacementConstraintsDetailsTypeDef(BaseModel): + Expression: Optional[str] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetailsExtraOutputTypeDef(BaseModel): + Autoprovision: Optional[bool] = None + Driver: Optional[str] = None + DriverOpts: Optional[Dict[str, str]] = None + Labels: Optional[Dict[str, str]] = None + Scope: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesHostDetailsTypeDef(BaseModel): + SourcePath: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetailsOutputTypeDef(BaseModel): + Autoprovision: Optional[bool] = None + Driver: Optional[str] = None + DriverOpts: Optional[Dict[str, str]] = None + Labels: Optional[Dict[str, str]] = None + Scope: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetailsTypeDef(BaseModel): + Autoprovision: Optional[bool] = None + Driver: Optional[str] = None + DriverOpts: Optional[Mapping[str, str]] = None + Labels: Optional[Mapping[str, str]] = None + Scope: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetailsTypeDef(BaseModel): + AccessPointId: Optional[str] = None + Iam: Optional[str] = None + +class AwsEcsTaskVolumeHostDetailsTypeDef(BaseModel): + SourcePath: Optional[str] = None + +class AwsEfsAccessPointPosixUserDetailsExtraOutputTypeDef(BaseModel): + Gid: Optional[str] = None + SecondaryGids: Optional[List[str]] = None + Uid: Optional[str] = None + +class AwsEfsAccessPointPosixUserDetailsOutputTypeDef(BaseModel): + Gid: Optional[str] = None + SecondaryGids: Optional[List[str]] = None + Uid: Optional[str] = None + +class AwsEfsAccessPointPosixUserDetailsTypeDef(BaseModel): + Gid: Optional[str] = None + SecondaryGids: Optional[Sequence[str]] = None + Uid: Optional[str] = None + +class AwsEfsAccessPointRootDirectoryCreationInfoDetailsTypeDef(BaseModel): + OwnerGid: Optional[str] = None + OwnerUid: Optional[str] = None + Permissions: Optional[str] = None + +class AwsEksClusterResourcesVpcConfigDetailsExtraOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + EndpointPublicAccess: Optional[bool] = None + +class AwsEksClusterResourcesVpcConfigDetailsOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + EndpointPublicAccess: Optional[bool] = None + +class AwsEksClusterResourcesVpcConfigDetailsTypeDef(BaseModel): + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + EndpointPublicAccess: Optional[bool] = None + +class AwsEksClusterLoggingClusterLoggingDetailsExtraOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Types: Optional[List[str]] = None + +class AwsEksClusterLoggingClusterLoggingDetailsOutputTypeDef(BaseModel): + Enabled: Optional[bool] = None + Types: Optional[List[str]] = None + +class AwsEksClusterLoggingClusterLoggingDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + Types: Optional[Sequence[str]] = None + +class AwsElasticBeanstalkEnvironmentEnvironmentLinkTypeDef(BaseModel): + EnvironmentName: Optional[str] = None + LinkName: Optional[str] = None + +class AwsElasticBeanstalkEnvironmentOptionSettingTypeDef(BaseModel): + Namespace: Optional[str] = None + OptionName: Optional[str] = None + ResourceName: Optional[str] = None + Value: Optional[str] = None + +class AwsElasticBeanstalkEnvironmentTierTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + Version: Optional[str] = None + +class AwsElasticsearchDomainDomainEndpointOptionsTypeDef(BaseModel): + EnforceHTTPS: Optional[bool] = None + TLSSecurityPolicy: Optional[str] = None + +class AwsElasticsearchDomainEncryptionAtRestOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + +class AwsElasticsearchDomainNodeToNodeEncryptionOptionsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsElasticsearchDomainServiceSoftwareOptionsTypeDef(BaseModel): + AutomatedUpdateDate: Optional[str] = None + Cancellable: Optional[bool] = None + CurrentVersion: Optional[str] = None + Description: Optional[str] = None + NewVersion: Optional[str] = None + UpdateAvailable: Optional[bool] = None + UpdateStatus: Optional[str] = None + +class AwsElasticsearchDomainVPCOptionsExtraOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + VPCId: Optional[str] = None + +class AwsElasticsearchDomainVPCOptionsOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + VPCId: Optional[str] = None + +class AwsElasticsearchDomainVPCOptionsTypeDef(BaseModel): + AvailabilityZones: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + VPCId: Optional[str] = None + +class AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetailsTypeDef(BaseModel): + AvailabilityZoneCount: Optional[int] = None + +class AwsElasticsearchDomainLogPublishingOptionsLogConfigTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[str] = None + Enabled: Optional[bool] = None + +class AwsElbAppCookieStickinessPolicyTypeDef(BaseModel): + CookieName: Optional[str] = None + PolicyName: Optional[str] = None + +class AwsElbLbCookieStickinessPolicyTypeDef(BaseModel): + CookieExpirationPeriod: Optional[int] = None + PolicyName: Optional[str] = None + +class AwsElbLoadBalancerAccessLogTypeDef(BaseModel): + EmitInterval: Optional[int] = None + Enabled: Optional[bool] = None + S3BucketName: Optional[str] = None + S3BucketPrefix: Optional[str] = None + +class AwsElbLoadBalancerAdditionalAttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class AwsElbLoadBalancerConnectionDrainingTypeDef(BaseModel): + Enabled: Optional[bool] = None + Timeout: Optional[int] = None + +class AwsElbLoadBalancerConnectionSettingsTypeDef(BaseModel): + IdleTimeout: Optional[int] = None + +class AwsElbLoadBalancerCrossZoneLoadBalancingTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsElbLoadBalancerBackendServerDescriptionExtraOutputTypeDef(BaseModel): + InstancePort: Optional[int] = None + PolicyNames: Optional[List[str]] = None + +class AwsElbLoadBalancerBackendServerDescriptionOutputTypeDef(BaseModel): + InstancePort: Optional[int] = None + PolicyNames: Optional[List[str]] = None + +class AwsElbLoadBalancerBackendServerDescriptionTypeDef(BaseModel): + InstancePort: Optional[int] = None + PolicyNames: Optional[Sequence[str]] = None + +class AwsElbLoadBalancerHealthCheckTypeDef(BaseModel): + HealthyThreshold: Optional[int] = None + Interval: Optional[int] = None + Target: Optional[str] = None + Timeout: Optional[int] = None + UnhealthyThreshold: Optional[int] = None + +class AwsElbLoadBalancerInstanceTypeDef(BaseModel): + InstanceId: Optional[str] = None + +class AwsElbLoadBalancerSourceSecurityGroupTypeDef(BaseModel): + GroupName: Optional[str] = None + OwnerAlias: Optional[str] = None + +class AwsElbLoadBalancerListenerTypeDef(BaseModel): + InstancePort: Optional[int] = None + InstanceProtocol: Optional[str] = None + LoadBalancerPort: Optional[int] = None + Protocol: Optional[str] = None + SslCertificateId: Optional[str] = None + +class AwsElbv2LoadBalancerAttributeTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class LoadBalancerStateTypeDef(BaseModel): + Code: Optional[str] = None + Reason: Optional[str] = None + +class AwsEventSchemasRegistryDetailsTypeDef(BaseModel): + Description: Optional[str] = None + RegistryArn: Optional[str] = None + RegistryName: Optional[str] = None + +class AwsEventsEndpointEventBusesDetailsTypeDef(BaseModel): + EventBusArn: Optional[str] = None + +class AwsEventsEndpointReplicationConfigDetailsTypeDef(BaseModel): + State: Optional[str] = None + +class AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetailsTypeDef(BaseModel): + HealthCheck: Optional[str] = None + +class AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetailsTypeDef(BaseModel): + Route: Optional[str] = None + +class AwsEventsEventbusDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + Policy: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesCloudTrailDetailsTypeDef(BaseModel): + Status: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesDnsLogsDetailsTypeDef(BaseModel): + Status: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesFlowLogsDetailsTypeDef(BaseModel): + Status: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesS3LogsDetailsTypeDef(BaseModel): + Status: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesKubernetesAuditLogsDetailsTypeDef(BaseModel): + Status: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesMalwareProtectionScanEc2InstanceWithFindingsEbsVolumesDetailsTypeDef(BaseModel): + Reason: Optional[str] = None + Status: Optional[str] = None + +class AwsGuardDutyDetectorFeaturesDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[str] = None + +class AwsIamAccessKeySessionContextAttributesTypeDef(BaseModel): + MfaAuthenticated: Optional[bool] = None + CreationDate: Optional[str] = None + +class AwsIamAccessKeySessionContextSessionIssuerTypeDef(BaseModel): + Type: Optional[str] = None + PrincipalId: Optional[str] = None + Arn: Optional[str] = None + AccountId: Optional[str] = None + UserName: Optional[str] = None + +class AwsIamAttachedManagedPolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyArn: Optional[str] = None + +class AwsIamGroupPolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + +class AwsIamInstanceProfileRoleTypeDef(BaseModel): + Arn: Optional[str] = None + AssumeRolePolicyDocument: Optional[str] = None + CreateDate: Optional[str] = None + Path: Optional[str] = None + RoleId: Optional[str] = None + RoleName: Optional[str] = None + +class AwsIamPermissionsBoundaryTypeDef(BaseModel): + PermissionsBoundaryArn: Optional[str] = None + PermissionsBoundaryType: Optional[str] = None + +class AwsIamPolicyVersionTypeDef(BaseModel): + VersionId: Optional[str] = None + IsDefaultVersion: Optional[bool] = None + CreateDate: Optional[str] = None + +class AwsIamRolePolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + +class AwsIamUserPolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + +class AwsKinesisStreamStreamEncryptionDetailsTypeDef(BaseModel): + EncryptionType: Optional[str] = None + KeyId: Optional[str] = None + +class AwsKmsKeyDetailsTypeDef(BaseModel): + AWSAccountId: Optional[str] = None + CreationDate: Optional[float] = None + KeyId: Optional[str] = None + KeyManager: Optional[str] = None + KeyState: Optional[str] = None + Origin: Optional[str] = None + Description: Optional[str] = None + KeyRotationStatus: Optional[bool] = None + +class AwsLambdaFunctionCodeTypeDef(BaseModel): + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + S3ObjectVersion: Optional[str] = None + ZipFile: Optional[str] = None + +class AwsLambdaFunctionDeadLetterConfigTypeDef(BaseModel): + TargetArn: Optional[str] = None + +class AwsLambdaFunctionLayerTypeDef(BaseModel): + Arn: Optional[str] = None + CodeSize: Optional[int] = None + +class AwsLambdaFunctionTracingConfigTypeDef(BaseModel): + Mode: Optional[str] = None + +class AwsLambdaFunctionVpcConfigExtraOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + VpcId: Optional[str] = None + +class AwsLambdaFunctionVpcConfigOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + VpcId: Optional[str] = None + +class AwsLambdaFunctionVpcConfigTypeDef(BaseModel): + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + VpcId: Optional[str] = None + +class AwsLambdaFunctionEnvironmentErrorTypeDef(BaseModel): + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class AwsLambdaLayerVersionDetailsExtraOutputTypeDef(BaseModel): + Version: Optional[int] = None + CompatibleRuntimes: Optional[List[str]] = None + CreatedDate: Optional[str] = None + +class AwsLambdaLayerVersionDetailsOutputTypeDef(BaseModel): + Version: Optional[int] = None + CompatibleRuntimes: Optional[List[str]] = None + CreatedDate: Optional[str] = None + +class AwsLambdaLayerVersionDetailsTypeDef(BaseModel): + Version: Optional[int] = None + CompatibleRuntimes: Optional[Sequence[str]] = None + CreatedDate: Optional[str] = None + +class AwsMskClusterClusterInfoClientAuthenticationTlsDetailsExtraOutputTypeDef(BaseModel): + CertificateAuthorityArnList: Optional[List[str]] = None + Enabled: Optional[bool] = None + +class AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsMskClusterClusterInfoClientAuthenticationTlsDetailsOutputTypeDef(BaseModel): + CertificateAuthorityArnList: Optional[List[str]] = None + Enabled: Optional[bool] = None + +class AwsMskClusterClusterInfoClientAuthenticationTlsDetailsTypeDef(BaseModel): + CertificateAuthorityArnList: Optional[Sequence[str]] = None + Enabled: Optional[bool] = None + +class AwsMskClusterClusterInfoClientAuthenticationSaslIamDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsMskClusterClusterInfoClientAuthenticationSaslScramDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetailsTypeDef(BaseModel): + DataVolumeKMSKeyId: Optional[str] = None + +class AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetailsTypeDef(BaseModel): + InCluster: Optional[bool] = None + ClientBroker: Optional[str] = None + +class AwsNetworkFirewallFirewallSubnetMappingsDetailsTypeDef(BaseModel): + SubnetId: Optional[str] = None + +class AwsOpenSearchServiceDomainMasterUserOptionsDetailsTypeDef(BaseModel): + MasterUserArn: Optional[str] = None + MasterUserName: Optional[str] = None + MasterUserPassword: Optional[str] = None + +class AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetailsTypeDef(BaseModel): + AvailabilityZoneCount: Optional[int] = None + +class AwsOpenSearchServiceDomainDomainEndpointOptionsDetailsTypeDef(BaseModel): + CustomEndpointCertificateArn: Optional[str] = None + CustomEndpointEnabled: Optional[bool] = None + EnforceHTTPS: Optional[bool] = None + CustomEndpoint: Optional[str] = None + TLSSecurityPolicy: Optional[str] = None + +class AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + KmsKeyId: Optional[str] = None + +class AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsOpenSearchServiceDomainServiceSoftwareOptionsDetailsTypeDef(BaseModel): + AutomatedUpdateDate: Optional[str] = None + Cancellable: Optional[bool] = None + CurrentVersion: Optional[str] = None + Description: Optional[str] = None + NewVersion: Optional[str] = None + UpdateAvailable: Optional[bool] = None + UpdateStatus: Optional[str] = None + OptionalDeployment: Optional[bool] = None + +class AwsOpenSearchServiceDomainVpcOptionsDetailsExtraOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + +class AwsOpenSearchServiceDomainVpcOptionsDetailsOutputTypeDef(BaseModel): + SecurityGroupIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + +class AwsOpenSearchServiceDomainVpcOptionsDetailsTypeDef(BaseModel): + SecurityGroupIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + +class AwsOpenSearchServiceDomainLogPublishingOptionTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[str] = None + Enabled: Optional[bool] = None + +class AwsRdsDbClusterAssociatedRoleTypeDef(BaseModel): + RoleArn: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbClusterMemberTypeDef(BaseModel): + IsClusterWriter: Optional[bool] = None + PromotionTier: Optional[int] = None + DbInstanceIdentifier: Optional[str] = None + DbClusterParameterGroupStatus: Optional[str] = None + +class AwsRdsDbClusterOptionGroupMembershipTypeDef(BaseModel): + DbClusterOptionGroupName: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbDomainMembershipTypeDef(BaseModel): + Domain: Optional[str] = None + Status: Optional[str] = None + Fqdn: Optional[str] = None + IamRoleName: Optional[str] = None + +class AwsRdsDbInstanceVpcSecurityGroupTypeDef(BaseModel): + VpcSecurityGroupId: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbClusterSnapshotDbClusterSnapshotAttributeExtraOutputTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[str]] = None + +class AwsRdsDbClusterSnapshotDbClusterSnapshotAttributeOutputTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[List[str]] = None + +class AwsRdsDbClusterSnapshotDbClusterSnapshotAttributeTypeDef(BaseModel): + AttributeName: Optional[str] = None + AttributeValues: Optional[Sequence[str]] = None + +class AwsRdsDbInstanceAssociatedRoleTypeDef(BaseModel): + RoleArn: Optional[str] = None + FeatureName: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbInstanceEndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + HostedZoneId: Optional[str] = None + +class AwsRdsDbOptionGroupMembershipTypeDef(BaseModel): + OptionGroupName: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbParameterGroupTypeDef(BaseModel): + DbParameterGroupName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + +class AwsRdsDbProcessorFeatureTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class AwsRdsDbStatusInfoTypeDef(BaseModel): + StatusType: Optional[str] = None + Normal: Optional[bool] = None + Status: Optional[str] = None + Message: Optional[str] = None + +class AwsRdsPendingCloudWatchLogsExportsExtraOutputTypeDef(BaseModel): + LogTypesToEnable: Optional[List[str]] = None + LogTypesToDisable: Optional[List[str]] = None + +class AwsRdsPendingCloudWatchLogsExportsOutputTypeDef(BaseModel): + LogTypesToEnable: Optional[List[str]] = None + LogTypesToDisable: Optional[List[str]] = None + +class AwsRdsPendingCloudWatchLogsExportsTypeDef(BaseModel): + LogTypesToEnable: Optional[Sequence[str]] = None + LogTypesToDisable: Optional[Sequence[str]] = None + +class AwsRdsDbSecurityGroupEc2SecurityGroupTypeDef(BaseModel): + Ec2SecurityGroupId: Optional[str] = None + Ec2SecurityGroupName: Optional[str] = None + Ec2SecurityGroupOwnerId: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbSecurityGroupIpRangeTypeDef(BaseModel): + CidrIp: Optional[str] = None + Status: Optional[str] = None + +class AwsRdsDbSubnetGroupSubnetAvailabilityZoneTypeDef(BaseModel): + Name: Optional[str] = None + +class AwsRdsEventSubscriptionDetailsExtraOutputTypeDef(BaseModel): + CustSubscriptionId: Optional[str] = None + CustomerAwsId: Optional[str] = None + Enabled: Optional[bool] = None + EventCategoriesList: Optional[List[str]] = None + EventSubscriptionArn: Optional[str] = None + SnsTopicArn: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + SourceType: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + +class AwsRdsEventSubscriptionDetailsOutputTypeDef(BaseModel): + CustSubscriptionId: Optional[str] = None + CustomerAwsId: Optional[str] = None + Enabled: Optional[bool] = None + EventCategoriesList: Optional[List[str]] = None + EventSubscriptionArn: Optional[str] = None + SnsTopicArn: Optional[str] = None + SourceIdsList: Optional[List[str]] = None + SourceType: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + +class AwsRdsEventSubscriptionDetailsTypeDef(BaseModel): + CustSubscriptionId: Optional[str] = None + CustomerAwsId: Optional[str] = None + Enabled: Optional[bool] = None + EventCategoriesList: Optional[Sequence[str]] = None + EventSubscriptionArn: Optional[str] = None + SnsTopicArn: Optional[str] = None + SourceIdsList: Optional[Sequence[str]] = None + SourceType: Optional[str] = None + Status: Optional[str] = None + SubscriptionCreationTime: Optional[str] = None + +class AwsRedshiftClusterClusterNodeTypeDef(BaseModel): + NodeRole: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PublicIpAddress: Optional[str] = None + +class AwsRedshiftClusterClusterParameterStatusTypeDef(BaseModel): + ParameterName: Optional[str] = None + ParameterApplyStatus: Optional[str] = None + ParameterApplyErrorDescription: Optional[str] = None + +class AwsRedshiftClusterClusterSecurityGroupTypeDef(BaseModel): + ClusterSecurityGroupName: Optional[str] = None + Status: Optional[str] = None + +class AwsRedshiftClusterClusterSnapshotCopyStatusTypeDef(BaseModel): + DestinationRegion: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + RetentionPeriod: Optional[int] = None + SnapshotCopyGrantName: Optional[str] = None + +class AwsRedshiftClusterDeferredMaintenanceWindowTypeDef(BaseModel): + DeferMaintenanceEndTime: Optional[str] = None + DeferMaintenanceIdentifier: Optional[str] = None + DeferMaintenanceStartTime: Optional[str] = None + +class AwsRedshiftClusterElasticIpStatusTypeDef(BaseModel): + ElasticIp: Optional[str] = None + Status: Optional[str] = None + +class AwsRedshiftClusterEndpointTypeDef(BaseModel): + Address: Optional[str] = None + Port: Optional[int] = None + +class AwsRedshiftClusterHsmStatusTypeDef(BaseModel): + HsmClientCertificateIdentifier: Optional[str] = None + HsmConfigurationIdentifier: Optional[str] = None + Status: Optional[str] = None + +class AwsRedshiftClusterIamRoleTypeDef(BaseModel): + ApplyStatus: Optional[str] = None + IamRoleArn: Optional[str] = None + +class AwsRedshiftClusterLoggingStatusTypeDef(BaseModel): + BucketName: Optional[str] = None + LastFailureMessage: Optional[str] = None + LastFailureTime: Optional[str] = None + LastSuccessfulDeliveryTime: Optional[str] = None + LoggingEnabled: Optional[bool] = None + S3KeyPrefix: Optional[str] = None + +class AwsRedshiftClusterPendingModifiedValuesTypeDef(BaseModel): + AutomatedSnapshotRetentionPeriod: Optional[int] = None + ClusterIdentifier: Optional[str] = None + ClusterType: Optional[str] = None + ClusterVersion: Optional[str] = None + EncryptionType: Optional[str] = None + EnhancedVpcRouting: Optional[bool] = None + MaintenanceTrackName: Optional[str] = None + MasterUserPassword: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + PubliclyAccessible: Optional[bool] = None + +class AwsRedshiftClusterResizeInfoTypeDef(BaseModel): + AllowCancelResize: Optional[bool] = None + ResizeType: Optional[str] = None + +class AwsRedshiftClusterRestoreStatusTypeDef(BaseModel): + CurrentRestoreRateInMegaBytesPerSecond: Optional[float] = None + ElapsedTimeInSeconds: Optional[int] = None + EstimatedTimeToCompletionInSeconds: Optional[int] = None + ProgressInMegaBytes: Optional[int] = None + SnapshotSizeInMegaBytes: Optional[int] = None + Status: Optional[str] = None + +class AwsRedshiftClusterVpcSecurityGroupTypeDef(BaseModel): + Status: Optional[str] = None + VpcSecurityGroupId: Optional[str] = None + +class AwsRoute53HostedZoneConfigDetailsTypeDef(BaseModel): + Comment: Optional[str] = None + +class AwsRoute53HostedZoneVpcDetailsTypeDef(BaseModel): + Id: Optional[str] = None + Region: Optional[str] = None + +class CloudWatchLogsLogGroupArnConfigDetailsTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[str] = None + HostedZoneId: Optional[str] = None + Id: Optional[str] = None + +class AwsS3AccessPointVpcConfigurationDetailsTypeDef(BaseModel): + VpcId: Optional[str] = None + +class AwsS3AccountPublicAccessBlockDetailsTypeDef(BaseModel): + BlockPublicAcls: Optional[bool] = None + BlockPublicPolicy: Optional[bool] = None + IgnorePublicAcls: Optional[bool] = None + RestrictPublicBuckets: Optional[bool] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetailsTypeDef(BaseModel): + Days: Optional[int] = None + StorageClass: Optional[str] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetailsTypeDef(BaseModel): + Date: Optional[str] = None + Days: Optional[int] = None + StorageClass: Optional[str] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetailsTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetailsTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class AwsS3BucketBucketVersioningConfigurationTypeDef(BaseModel): + IsMfaDeleteEnabled: Optional[bool] = None + Status: Optional[str] = None + +class AwsS3BucketLoggingConfigurationTypeDef(BaseModel): + DestinationBucketName: Optional[str] = None + LogFilePrefix: Optional[str] = None + +class AwsS3BucketNotificationConfigurationS3KeyFilterRuleTypeDef(BaseModel): + Name: Optional[AwsS3BucketNotificationConfigurationS3KeyFilterRuleNameType] = None + Value: Optional[str] = None + +class AwsS3BucketObjectLockConfigurationRuleDefaultRetentionDetailsTypeDef(BaseModel): + Days: Optional[int] = None + Mode: Optional[str] = None + Years: Optional[int] = None + +class AwsS3BucketServerSideEncryptionByDefaultTypeDef(BaseModel): + SSEAlgorithm: Optional[str] = None + KMSMasterKeyID: Optional[str] = None + +class AwsS3BucketWebsiteConfigurationRedirectToTypeDef(BaseModel): + Hostname: Optional[str] = None + Protocol: Optional[str] = None + +class AwsS3BucketWebsiteConfigurationRoutingRuleConditionTypeDef(BaseModel): + HttpErrorCodeReturnedEquals: Optional[str] = None + KeyPrefixEquals: Optional[str] = None + +class AwsS3BucketWebsiteConfigurationRoutingRuleRedirectTypeDef(BaseModel): + Hostname: Optional[str] = None + HttpRedirectCode: Optional[str] = None + Protocol: Optional[str] = None + ReplaceKeyPrefixWith: Optional[str] = None + ReplaceKeyWith: Optional[str] = None + +class AwsS3ObjectDetailsTypeDef(BaseModel): + LastModified: Optional[str] = None + ETag: Optional[str] = None + VersionId: Optional[str] = None + ContentType: Optional[str] = None + ServerSideEncryption: Optional[str] = None + SSEKMSKeyId: Optional[str] = None + +class AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetailsTypeDef(BaseModel): + MinimumInstanceMetadataServiceVersion: Optional[str] = None + +class AwsSecretsManagerSecretRotationRulesTypeDef(BaseModel): + AutomaticallyAfterDays: Optional[int] = None + +class GeneratorDetailsExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Labels: Optional[List[str]] = None + +class MalwareTypeDef(BaseModel): + Name: str + Type: Optional[MalwareTypeType] = None + Path: Optional[str] = None + State: Optional[MalwareStateType] = None + +class NoteTypeDef(BaseModel): + Text: str + UpdatedBy: str + UpdatedAt: str + +class PatchSummaryTypeDef(BaseModel): + Id: str + InstalledCount: Optional[int] = None + MissingCount: Optional[int] = None + FailedCount: Optional[int] = None + InstalledOtherCount: Optional[int] = None + InstalledRejectedCount: Optional[int] = None + InstalledPendingReboot: Optional[int] = None + OperationStartTime: Optional[str] = None + OperationEndTime: Optional[str] = None + RebootOption: Optional[str] = None + Operation: Optional[str] = None + +class ProcessDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Path: Optional[str] = None + Pid: Optional[int] = None + ParentPid: Optional[int] = None + LaunchedAt: Optional[str] = None + TerminatedAt: Optional[str] = None + +class SeverityTypeDef(BaseModel): + Product: Optional[float] = None + Label: Optional[SeverityLabelType] = None + Normalized: Optional[int] = None + Original: Optional[str] = None + +class ThreatIntelIndicatorTypeDef(BaseModel): + Type: Optional[ThreatIntelIndicatorTypeType] = None + Value: Optional[str] = None + Category: Optional[ThreatIntelIndicatorCategoryType] = None + LastObservedAt: Optional[str] = None + Source: Optional[str] = None + SourceUrl: Optional[str] = None + +class WorkflowTypeDef(BaseModel): + Status: Optional[WorkflowStatusType] = None + +class BooleanFilterTypeDef(BaseModel): + Value: Optional[bool] = None + +class IpFilterTypeDef(BaseModel): + Cidr: Optional[str] = None + +class KeywordFilterTypeDef(BaseModel): + Value: Optional[str] = None + +class AwsSecurityFindingIdentifierTypeDef(BaseModel): + Id: str + ProductArn: str + +class GeneratorDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Labels: Optional[List[str]] = None + +class GeneratorDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Labels: Optional[Sequence[str]] = None + +class AwsSnsTopicSubscriptionTypeDef(BaseModel): + Endpoint: Optional[str] = None + Protocol: Optional[str] = None + +class AwsSqsQueueDetailsTypeDef(BaseModel): + KmsDataKeyReusePeriodSeconds: Optional[int] = None + KmsMasterKeyId: Optional[str] = None + QueueName: Optional[str] = None + DeadLetterTargetArn: Optional[str] = None + +class AwsSsmComplianceSummaryTypeDef(BaseModel): + Status: Optional[str] = None + CompliantCriticalCount: Optional[int] = None + CompliantHighCount: Optional[int] = None + CompliantMediumCount: Optional[int] = None + ExecutionType: Optional[str] = None + NonCompliantCriticalCount: Optional[int] = None + CompliantInformationalCount: Optional[int] = None + NonCompliantInformationalCount: Optional[int] = None + CompliantUnspecifiedCount: Optional[int] = None + NonCompliantLowCount: Optional[int] = None + NonCompliantHighCount: Optional[int] = None + CompliantLowCount: Optional[int] = None + ComplianceType: Optional[str] = None + PatchBaselineId: Optional[str] = None + OverallSeverity: Optional[str] = None + NonCompliantMediumCount: Optional[int] = None + NonCompliantUnspecifiedCount: Optional[int] = None + PatchGroup: Optional[str] = None + +class AwsStepFunctionStateMachineTracingConfigurationDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class AwsStepFunctionStateMachineLoggingConfigurationDestinationsCloudWatchLogsLogGroupDetailsTypeDef(BaseModel): + LogGroupArn: Optional[str] = None + +class AwsWafRateBasedRuleMatchPredicateTypeDef(BaseModel): + DataId: Optional[str] = None + Negated: Optional[bool] = None + Type: Optional[str] = None + +class AwsWafRegionalRateBasedRuleMatchPredicateTypeDef(BaseModel): + DataId: Optional[str] = None + Negated: Optional[bool] = None + Type: Optional[str] = None + +class AwsWafRegionalRulePredicateListDetailsTypeDef(BaseModel): + DataId: Optional[str] = None + Negated: Optional[bool] = None + Type: Optional[str] = None + +class AwsWafRegionalRuleGroupRulesActionDetailsTypeDef(BaseModel): + Type: Optional[str] = None + +class AwsWafRegionalWebAclRulesListActionDetailsTypeDef(BaseModel): + Type: Optional[str] = None + +class AwsWafRegionalWebAclRulesListOverrideActionDetailsTypeDef(BaseModel): + Type: Optional[str] = None + +class AwsWafRulePredicateListDetailsTypeDef(BaseModel): + DataId: Optional[str] = None + Negated: Optional[bool] = None + Type: Optional[str] = None + +class AwsWafRuleGroupRulesActionDetailsTypeDef(BaseModel): + Type: Optional[str] = None + +class WafActionTypeDef(BaseModel): + Type: Optional[str] = None + +class WafExcludedRuleTypeDef(BaseModel): + RuleId: Optional[str] = None + +class WafOverrideActionTypeDef(BaseModel): + Type: Optional[str] = None + +class AwsWafv2CustomHttpHeaderTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class AwsWafv2VisibilityConfigDetailsTypeDef(BaseModel): + CloudWatchMetricsEnabled: Optional[bool] = None + MetricName: Optional[str] = None + SampledRequestsEnabled: Optional[bool] = None + +class AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetailsTypeDef(BaseModel): + ImmunityTime: Optional[int] = None + +class AwsXrayEncryptionConfigDetailsTypeDef(BaseModel): + KeyId: Optional[str] = None + Status: Optional[str] = None + Type: Optional[str] = None + +class BatchDeleteAutomationRulesRequestRequestTypeDef(BaseModel): + AutomationRulesArns: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UnprocessedAutomationRuleTypeDef(BaseModel): + RuleArn: Optional[str] = None + ErrorCode: Optional[int] = None + ErrorMessage: Optional[str] = None + +class BatchDisableStandardsRequestRequestTypeDef(BaseModel): + StandardsSubscriptionArns: Sequence[str] + +class StandardsSubscriptionRequestTypeDef(BaseModel): + StandardsArn: str + StandardsInput: Optional[Mapping[str, str]] = None + +class BatchGetAutomationRulesRequestRequestTypeDef(BaseModel): + AutomationRulesArns: Sequence[str] + +class ConfigurationPolicyAssociationSummaryTypeDef(BaseModel): + ConfigurationPolicyId: Optional[str] = None + TargetId: Optional[str] = None + TargetType: Optional[TargetTypeType] = None + AssociationType: Optional[AssociationTypeType] = None + UpdatedAt: Optional[datetime] = None + AssociationStatus: Optional[ConfigurationPolicyAssociationStatusType] = None + AssociationStatusMessage: Optional[str] = None + +class BatchGetSecurityControlsRequestRequestTypeDef(BaseModel): + SecurityControlIds: Sequence[str] + +class UnprocessedSecurityControlTypeDef(BaseModel): + SecurityControlId: str + ErrorCode: UnprocessedErrorCodeType + ErrorReason: Optional[str] = None + +class StandardsControlAssociationIdTypeDef(BaseModel): + SecurityControlId: str + StandardsArn: str + +class StandardsControlAssociationDetailTypeDef(BaseModel): + StandardsArn: str + SecurityControlId: str + SecurityControlArn: str + AssociationStatus: AssociationStatusType + RelatedRequirements: Optional[List[str]] = None + UpdatedAt: Optional[datetime] = None + UpdatedReason: Optional[str] = None + StandardsControlTitle: Optional[str] = None + StandardsControlDescription: Optional[str] = None + StandardsControlArns: Optional[List[str]] = None + +class ImportFindingsErrorTypeDef(BaseModel): + Id: str + ErrorCode: str + ErrorMessage: str + +class StandardsControlAssociationUpdateTypeDef(BaseModel): + StandardsArn: str + SecurityControlId: str + AssociationStatus: AssociationStatusType + UpdatedReason: Optional[str] = None + +class BooleanConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[bool] = None + +class CellTypeDef(BaseModel): + Column: Optional[int] = None + Row: Optional[int] = None + ColumnName: Optional[str] = None + CellReference: Optional[str] = None + +class ClassificationStatusTypeDef(BaseModel): + Code: Optional[str] = None + Reason: Optional[str] = None + +class CodeVulnerabilitiesFilePathTypeDef(BaseModel): + EndLine: Optional[int] = None + FileName: Optional[str] = None + FilePath: Optional[str] = None + StartLine: Optional[int] = None + +class SecurityControlParameterExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[List[str]] = None + +class StatusReasonTypeDef(BaseModel): + ReasonCode: str + Description: Optional[str] = None + +class SecurityControlParameterOutputTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[List[str]] = None + +class SecurityControlParameterTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[Sequence[str]] = None + +class DoubleConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[float] = None + Min: Optional[float] = None + Max: Optional[float] = None + +class EnumConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + AllowedValues: Optional[List[str]] = None + +class EnumListConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[List[str]] = None + MaxItems: Optional[int] = None + AllowedValues: Optional[List[str]] = None + +class IntegerConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[int] = None + Min: Optional[int] = None + Max: Optional[int] = None + +class IntegerListConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[List[int]] = None + Min: Optional[int] = None + Max: Optional[int] = None + MaxItems: Optional[int] = None + +class StringConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[str] = None + Re2Expression: Optional[str] = None + ExpressionDescription: Optional[str] = None + +class StringListConfigurationOptionsTypeDef(BaseModel): + DefaultValue: Optional[List[str]] = None + Re2Expression: Optional[str] = None + MaxItems: Optional[int] = None + ExpressionDescription: Optional[str] = None + +class TargetTypeDef(BaseModel): + AccountId: Optional[str] = None + OrganizationalUnitId: Optional[str] = None + RootId: Optional[str] = None + +class ConfigurationPolicySummaryTypeDef(BaseModel): + Arn: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + UpdatedAt: Optional[datetime] = None + ServiceEnabled: Optional[bool] = None + +class VolumeMountTypeDef(BaseModel): + Name: Optional[str] = None + MountPath: Optional[str] = None + +class CreateActionTargetRequestRequestTypeDef(BaseModel): + Name: str + Description: str + Id: str + +class CreateFindingAggregatorRequestRequestTypeDef(BaseModel): + RegionLinkingMode: str + Regions: Optional[Sequence[str]] = None + +class ResultTypeDef(BaseModel): + AccountId: Optional[str] = None + ProcessingResult: Optional[str] = None + +class DateRangeTypeDef(BaseModel): + Value: Optional[int] = None + Unit: Optional[Literal["DAYS"]] = None + +class DeclineInvitationsRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class DeleteActionTargetRequestRequestTypeDef(BaseModel): + ActionTargetArn: str + +class DeleteConfigurationPolicyRequestRequestTypeDef(BaseModel): + Identifier: str + +class DeleteFindingAggregatorRequestRequestTypeDef(BaseModel): + FindingAggregatorArn: str + +class DeleteInsightRequestRequestTypeDef(BaseModel): + InsightArn: str + +class DeleteInvitationsRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class DeleteMembersRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeActionTargetsRequestRequestTypeDef(BaseModel): + ActionTargetArns: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeHubRequestRequestTypeDef(BaseModel): + HubArn: Optional[str] = None + +class OrganizationConfigurationTypeDef(BaseModel): + ConfigurationType: Optional[OrganizationConfigurationConfigurationTypeType] = None + Status: Optional[OrganizationConfigurationStatusType] = None + StatusMessage: Optional[str] = None + +class DescribeProductsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ProductArn: Optional[str] = None + +class ProductTypeDef(BaseModel): + ProductArn: str + ProductName: Optional[str] = None + CompanyName: Optional[str] = None + Description: Optional[str] = None + Categories: Optional[List[str]] = None + IntegrationTypes: Optional[List[IntegrationTypeType]] = None + MarketplaceUrl: Optional[str] = None + ActivationUrl: Optional[str] = None + ProductSubscriptionResourcePolicy: Optional[str] = None + +class DescribeStandardsControlsRequestRequestTypeDef(BaseModel): + StandardsSubscriptionArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class StandardsControlTypeDef(BaseModel): + StandardsControlArn: Optional[str] = None + ControlStatus: Optional[ControlStatusType] = None + DisabledReason: Optional[str] = None + ControlStatusUpdatedAt: Optional[datetime] = None + ControlId: Optional[str] = None + Title: Optional[str] = None + Description: Optional[str] = None + RemediationUrl: Optional[str] = None + SeverityRating: Optional[SeverityRatingType] = None + RelatedRequirements: Optional[List[str]] = None + +class DescribeStandardsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DisableImportFindingsForProductRequestRequestTypeDef(BaseModel): + ProductSubscriptionArn: str + +class DisableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + AdminAccountId: str + +class DisassociateMembersRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class EnableImportFindingsForProductRequestRequestTypeDef(BaseModel): + ProductArn: str + +class EnableOrganizationAdminAccountRequestRequestTypeDef(BaseModel): + AdminAccountId: str + +class EnableSecurityHubRequestRequestTypeDef(BaseModel): + Tags: Optional[Mapping[str, str]] = None + EnableDefaultStandards: Optional[bool] = None + ControlFindingGenerator: Optional[ControlFindingGeneratorType] = None + +class FilePathsTypeDef(BaseModel): + FilePath: Optional[str] = None + FileName: Optional[str] = None + ResourceId: Optional[str] = None + Hash: Optional[str] = None + +class FindingAggregatorTypeDef(BaseModel): + FindingAggregatorArn: Optional[str] = None + +class FindingHistoryUpdateSourceTypeDef(BaseModel): + Type: Optional[FindingHistoryUpdateSourceTypeType] = None + Identity: Optional[str] = None + +class FindingHistoryUpdateTypeDef(BaseModel): + UpdatedField: Optional[str] = None + OldValue: Optional[str] = None + NewValue: Optional[str] = None + +class FindingProviderSeverityTypeDef(BaseModel): + Label: Optional[SeverityLabelType] = None + Original: Optional[str] = None + +class FirewallPolicyStatefulRuleGroupReferencesDetailsTypeDef(BaseModel): + ResourceArn: Optional[str] = None + +class FirewallPolicyStatelessRuleGroupReferencesDetailsTypeDef(BaseModel): + Priority: Optional[int] = None + ResourceArn: Optional[str] = None + +class InvitationTypeDef(BaseModel): + AccountId: Optional[str] = None + InvitationId: Optional[str] = None + InvitedAt: Optional[datetime] = None + MemberStatus: Optional[str] = None + +class GetConfigurationPolicyRequestRequestTypeDef(BaseModel): + Identifier: str + +class GetEnabledStandardsRequestRequestTypeDef(BaseModel): + StandardsSubscriptionArns: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetFindingAggregatorRequestRequestTypeDef(BaseModel): + FindingAggregatorArn: str + +class SortCriterionTypeDef(BaseModel): + Field: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + +class GetInsightResultsRequestRequestTypeDef(BaseModel): + InsightArn: str + +class GetInsightsRequestRequestTypeDef(BaseModel): + InsightArns: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetMembersRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class MemberTypeDef(BaseModel): + AccountId: Optional[str] = None + Email: Optional[str] = None + MasterId: Optional[str] = None + AdministratorId: Optional[str] = None + MemberStatus: Optional[str] = None + InvitedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class GetSecurityControlDefinitionRequestRequestTypeDef(BaseModel): + SecurityControlId: str + +class InsightResultValueTypeDef(BaseModel): + GroupByAttributeValue: str + Count: int + +class InviteMembersRequestRequestTypeDef(BaseModel): + AccountIds: Sequence[str] + +class ListAutomationRulesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListConfigurationPoliciesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListEnabledProductsForImportRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFindingAggregatorsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListInvitationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListMembersRequestRequestTypeDef(BaseModel): + OnlyAssociated: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOrganizationAdminAccountsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSecurityControlDefinitionsRequestRequestTypeDef(BaseModel): + StandardsArn: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListStandardsControlAssociationsRequestRequestTypeDef(BaseModel): + SecurityControlId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class StandardsControlAssociationSummaryTypeDef(BaseModel): + StandardsArn: str + SecurityControlId: str + SecurityControlArn: str + AssociationStatus: AssociationStatusType + RelatedRequirements: Optional[List[str]] = None + UpdatedAt: Optional[datetime] = None + UpdatedReason: Optional[str] = None + StandardsControlTitle: Optional[str] = None + StandardsControlDescription: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PortRangeTypeDef(BaseModel): + Begin: Optional[int] = None + End: Optional[int] = None + +class RangeTypeDef(BaseModel): + Start: Optional[int] = None + End: Optional[int] = None + StartColumn: Optional[int] = None + +class RecordTypeDef(BaseModel): + JsonPath: Optional[str] = None + RecordIndex: Optional[int] = None + +class ParameterValueOutputTypeDef(BaseModel): + Integer: Optional[int] = None + IntegerList: Optional[List[int]] = None + Double: Optional[float] = None + String: Optional[str] = None + StringList: Optional[List[str]] = None + Boolean: Optional[bool] = None + Enum: Optional[str] = None + EnumList: Optional[List[str]] = None + +class ParameterValueTypeDef(BaseModel): + Integer: Optional[int] = None + IntegerList: Optional[Sequence[int]] = None + Double: Optional[float] = None + String: Optional[str] = None + StringList: Optional[Sequence[str]] = None + Boolean: Optional[bool] = None + Enum: Optional[str] = None + EnumList: Optional[Sequence[str]] = None + +class RecommendationTypeDef(BaseModel): + Text: Optional[str] = None + Url: Optional[str] = None + +class RuleGroupSourceListDetailsExtraOutputTypeDef(BaseModel): + GeneratedRulesType: Optional[str] = None + TargetTypes: Optional[List[str]] = None + Targets: Optional[List[str]] = None + +class RuleGroupSourceListDetailsOutputTypeDef(BaseModel): + GeneratedRulesType: Optional[str] = None + TargetTypes: Optional[List[str]] = None + Targets: Optional[List[str]] = None + +class RuleGroupSourceListDetailsTypeDef(BaseModel): + GeneratedRulesType: Optional[str] = None + TargetTypes: Optional[Sequence[str]] = None + Targets: Optional[Sequence[str]] = None + +class RuleGroupSourceStatefulRulesHeaderDetailsTypeDef(BaseModel): + Destination: Optional[str] = None + DestinationPort: Optional[str] = None + Direction: Optional[str] = None + Protocol: Optional[str] = None + Source: Optional[str] = None + SourcePort: Optional[str] = None + +class RuleGroupSourceStatefulRulesOptionsDetailsExtraOutputTypeDef(BaseModel): + Keyword: Optional[str] = None + Settings: Optional[List[str]] = None + +class RuleGroupSourceStatefulRulesOptionsDetailsOutputTypeDef(BaseModel): + Keyword: Optional[str] = None + Settings: Optional[List[str]] = None + +class RuleGroupSourceStatefulRulesOptionsDetailsTypeDef(BaseModel): + Keyword: Optional[str] = None + Settings: Optional[Sequence[str]] = None + +class RuleGroupSourceStatelessRuleMatchAttributesDestinationPortsTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class RuleGroupSourceStatelessRuleMatchAttributesDestinationsTypeDef(BaseModel): + AddressDefinition: Optional[str] = None + +class RuleGroupSourceStatelessRuleMatchAttributesSourcePortsTypeDef(BaseModel): + FromPort: Optional[int] = None + ToPort: Optional[int] = None + +class RuleGroupSourceStatelessRuleMatchAttributesSourcesTypeDef(BaseModel): + AddressDefinition: Optional[str] = None + +class RuleGroupSourceStatelessRuleMatchAttributesTcpFlagsExtraOutputTypeDef(BaseModel): + Flags: Optional[List[str]] = None + Masks: Optional[List[str]] = None + +class RuleGroupSourceStatelessRuleMatchAttributesTcpFlagsOutputTypeDef(BaseModel): + Flags: Optional[List[str]] = None + Masks: Optional[List[str]] = None + +class RuleGroupSourceStatelessRuleMatchAttributesTcpFlagsTypeDef(BaseModel): + Flags: Optional[Sequence[str]] = None + Masks: Optional[Sequence[str]] = None + +class RuleGroupVariablesIpSetsDetailsExtraOutputTypeDef(BaseModel): + Definition: Optional[List[str]] = None + +class RuleGroupVariablesPortSetsDetailsExtraOutputTypeDef(BaseModel): + Definition: Optional[List[str]] = None + +class RuleGroupVariablesIpSetsDetailsOutputTypeDef(BaseModel): + Definition: Optional[List[str]] = None + +class RuleGroupVariablesIpSetsDetailsTypeDef(BaseModel): + Definition: Optional[Sequence[str]] = None + +class RuleGroupVariablesPortSetsDetailsOutputTypeDef(BaseModel): + Definition: Optional[List[str]] = None + +class RuleGroupVariablesPortSetsDetailsTypeDef(BaseModel): + Definition: Optional[Sequence[str]] = None + +class SoftwarePackageTypeDef(BaseModel): + Name: Optional[str] = None + Version: Optional[str] = None + Epoch: Optional[str] = None + Release: Optional[str] = None + Architecture: Optional[str] = None + PackageManager: Optional[str] = None + FilePath: Optional[str] = None + FixedInVersion: Optional[str] = None + Remediation: Optional[str] = None + SourceLayerHash: Optional[str] = None + SourceLayerArn: Optional[str] = None + +class StandardsManagedByTypeDef(BaseModel): + Company: Optional[str] = None + Product: Optional[str] = None + +class StandardsStatusReasonTypeDef(BaseModel): + StatusReasonCode: StatusReasonCodeType + +class StatelessCustomPublishMetricActionDimensionTypeDef(BaseModel): + Value: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateActionTargetRequestRequestTypeDef(BaseModel): + ActionTargetArn: str + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateFindingAggregatorRequestRequestTypeDef(BaseModel): + FindingAggregatorArn: str + RegionLinkingMode: str + Regions: Optional[Sequence[str]] = None + +class UpdateSecurityHubConfigurationRequestRequestTypeDef(BaseModel): + AutoEnableControls: Optional[bool] = None + ControlFindingGenerator: Optional[ControlFindingGeneratorType] = None + +class UpdateStandardsControlRequestRequestTypeDef(BaseModel): + StandardsControlArn: str + ControlStatus: Optional[ControlStatusType] = None + DisabledReason: Optional[str] = None + +class VulnerabilityVendorTypeDef(BaseModel): + Name: str + Url: Optional[str] = None + VendorSeverity: Optional[str] = None + VendorCreatedAt: Optional[str] = None + VendorUpdatedAt: Optional[str] = None + +class CreateMembersRequestRequestTypeDef(BaseModel): + AccountDetails: Sequence[AccountDetailsTypeDef] + +class ActionRemoteIpDetailsTypeDef(BaseModel): + IpAddressV4: Optional[str] = None + Organization: Optional[IpOrganizationDetailsTypeDef] = None + Country: Optional[CountryTypeDef] = None + City: Optional[CityTypeDef] = None + GeoLocation: Optional[GeoLocationTypeDef] = None + +class CvssExtraOutputTypeDef(BaseModel): + Version: Optional[str] = None + BaseScore: Optional[float] = None + BaseVector: Optional[str] = None + Source: Optional[str] = None + Adjustments: Optional[List[AdjustmentTypeDef]] = None + +class CvssOutputTypeDef(BaseModel): + Version: Optional[str] = None + BaseScore: Optional[float] = None + BaseVector: Optional[str] = None + Source: Optional[str] = None + Adjustments: Optional[List[AdjustmentTypeDef]] = None + +class CvssTypeDef(BaseModel): + Version: Optional[str] = None + BaseScore: Optional[float] = None + BaseVector: Optional[str] = None + Source: Optional[str] = None + Adjustments: Optional[Sequence[AdjustmentTypeDef]] = None + +class ListConfigurationPolicyAssociationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[AssociationFiltersTypeDef] = None + +class AssociationSetDetailsTypeDef(BaseModel): + AssociationState: Optional[AssociationStateDetailsTypeDef] = None + GatewayId: Optional[str] = None + Main: Optional[bool] = None + RouteTableAssociationId: Optional[str] = None + RouteTableId: Optional[str] = None + SubnetId: Optional[str] = None + +class AutomationRulesFindingFieldsUpdateOutputTypeDef(BaseModel): + Note: Optional[NoteUpdateTypeDef] = None + Severity: Optional[SeverityUpdateTypeDef] = None + VerificationState: Optional[VerificationStateType] = None + Confidence: Optional[int] = None + Criticality: Optional[int] = None + Types: Optional[List[str]] = None + UserDefinedFields: Optional[Dict[str, str]] = None + Workflow: Optional[WorkflowUpdateTypeDef] = None + RelatedFindings: Optional[List[RelatedFindingTypeDef]] = None + +class AutomationRulesFindingFieldsUpdateTypeDef(BaseModel): + Note: Optional[NoteUpdateTypeDef] = None + Severity: Optional[SeverityUpdateTypeDef] = None + VerificationState: Optional[VerificationStateType] = None + Confidence: Optional[int] = None + Criticality: Optional[int] = None + Types: Optional[Sequence[str]] = None + UserDefinedFields: Optional[Mapping[str, str]] = None + Workflow: Optional[WorkflowUpdateTypeDef] = None + RelatedFindings: Optional[Sequence[RelatedFindingTypeDef]] = None + +class AwsAmazonMqBrokerLogsDetailsTypeDef(BaseModel): + Audit: Optional[bool] = None + General: Optional[bool] = None + AuditLogGroup: Optional[str] = None + GeneralLogGroup: Optional[str] = None + Pending: Optional[AwsAmazonMqBrokerLogsPendingDetailsTypeDef] = None + +class AwsApiGatewayRestApiDetailsExtraOutputTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedDate: Optional[str] = None + Version: Optional[str] = None + BinaryMediaTypes: Optional[List[str]] = None + MinimumCompressionSize: Optional[int] = None + ApiKeySource: Optional[str] = None + EndpointConfiguration: Optional[AwsApiGatewayEndpointConfigurationExtraOutputTypeDef] = None + +class AwsApiGatewayRestApiDetailsOutputTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedDate: Optional[str] = None + Version: Optional[str] = None + BinaryMediaTypes: Optional[List[str]] = None + MinimumCompressionSize: Optional[int] = None + ApiKeySource: Optional[str] = None + EndpointConfiguration: Optional[AwsApiGatewayEndpointConfigurationOutputTypeDef] = None + +class AwsApiGatewayRestApiDetailsTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedDate: Optional[str] = None + Version: Optional[str] = None + BinaryMediaTypes: Optional[Sequence[str]] = None + MinimumCompressionSize: Optional[int] = None + ApiKeySource: Optional[str] = None + EndpointConfiguration: Optional[AwsApiGatewayEndpointConfigurationTypeDef] = None + +class AwsApiGatewayStageDetailsExtraOutputTypeDef(BaseModel): + DeploymentId: Optional[str] = None + ClientCertificateId: Optional[str] = None + StageName: Optional[str] = None + Description: Optional[str] = None + CacheClusterEnabled: Optional[bool] = None + CacheClusterSize: Optional[str] = None + CacheClusterStatus: Optional[str] = None + MethodSettings: Optional[List[AwsApiGatewayMethodSettingsTypeDef]] = None + Variables: Optional[Dict[str, str]] = None + DocumentationVersion: Optional[str] = None + AccessLogSettings: Optional[AwsApiGatewayAccessLogSettingsTypeDef] = None + CanarySettings: Optional[AwsApiGatewayCanarySettingsExtraOutputTypeDef] = None + TracingEnabled: Optional[bool] = None + CreatedDate: Optional[str] = None + LastUpdatedDate: Optional[str] = None + WebAclArn: Optional[str] = None + +class AwsApiGatewayStageDetailsOutputTypeDef(BaseModel): + DeploymentId: Optional[str] = None + ClientCertificateId: Optional[str] = None + StageName: Optional[str] = None + Description: Optional[str] = None + CacheClusterEnabled: Optional[bool] = None + CacheClusterSize: Optional[str] = None + CacheClusterStatus: Optional[str] = None + MethodSettings: Optional[List[AwsApiGatewayMethodSettingsTypeDef]] = None + Variables: Optional[Dict[str, str]] = None + DocumentationVersion: Optional[str] = None + AccessLogSettings: Optional[AwsApiGatewayAccessLogSettingsTypeDef] = None + CanarySettings: Optional[AwsApiGatewayCanarySettingsOutputTypeDef] = None + TracingEnabled: Optional[bool] = None + CreatedDate: Optional[str] = None + LastUpdatedDate: Optional[str] = None + WebAclArn: Optional[str] = None + +class AwsApiGatewayStageDetailsTypeDef(BaseModel): + DeploymentId: Optional[str] = None + ClientCertificateId: Optional[str] = None + StageName: Optional[str] = None + Description: Optional[str] = None + CacheClusterEnabled: Optional[bool] = None + CacheClusterSize: Optional[str] = None + CacheClusterStatus: Optional[str] = None + MethodSettings: Optional[Sequence[AwsApiGatewayMethodSettingsTypeDef]] = None + Variables: Optional[Mapping[str, str]] = None + DocumentationVersion: Optional[str] = None + AccessLogSettings: Optional[AwsApiGatewayAccessLogSettingsTypeDef] = None + CanarySettings: Optional[AwsApiGatewayCanarySettingsTypeDef] = None + TracingEnabled: Optional[bool] = None + CreatedDate: Optional[str] = None + LastUpdatedDate: Optional[str] = None + WebAclArn: Optional[str] = None + +class AwsApiGatewayV2ApiDetailsExtraOutputTypeDef(BaseModel): + ApiEndpoint: Optional[str] = None + ApiId: Optional[str] = None + ApiKeySelectionExpression: Optional[str] = None + CreatedDate: Optional[str] = None + Description: Optional[str] = None + Version: Optional[str] = None + Name: Optional[str] = None + ProtocolType: Optional[str] = None + RouteSelectionExpression: Optional[str] = None + CorsConfiguration: Optional[AwsCorsConfigurationExtraOutputTypeDef] = None + +class AwsApiGatewayV2ApiDetailsOutputTypeDef(BaseModel): + ApiEndpoint: Optional[str] = None + ApiId: Optional[str] = None + ApiKeySelectionExpression: Optional[str] = None + CreatedDate: Optional[str] = None + Description: Optional[str] = None + Version: Optional[str] = None + Name: Optional[str] = None + ProtocolType: Optional[str] = None + RouteSelectionExpression: Optional[str] = None + CorsConfiguration: Optional[AwsCorsConfigurationOutputTypeDef] = None + +class AwsApiGatewayV2ApiDetailsTypeDef(BaseModel): + ApiEndpoint: Optional[str] = None + ApiId: Optional[str] = None + ApiKeySelectionExpression: Optional[str] = None + CreatedDate: Optional[str] = None + Description: Optional[str] = None + Version: Optional[str] = None + Name: Optional[str] = None + ProtocolType: Optional[str] = None + RouteSelectionExpression: Optional[str] = None + CorsConfiguration: Optional[AwsCorsConfigurationTypeDef] = None + +class AwsApiGatewayV2StageDetailsExtraOutputTypeDef(BaseModel): + ClientCertificateId: Optional[str] = None + CreatedDate: Optional[str] = None + Description: Optional[str] = None + DefaultRouteSettings: Optional[AwsApiGatewayV2RouteSettingsTypeDef] = None + DeploymentId: Optional[str] = None + LastUpdatedDate: Optional[str] = None + RouteSettings: Optional[AwsApiGatewayV2RouteSettingsTypeDef] = None + StageName: Optional[str] = None + StageVariables: Optional[Dict[str, str]] = None + AccessLogSettings: Optional[AwsApiGatewayAccessLogSettingsTypeDef] = None + AutoDeploy: Optional[bool] = None + LastDeploymentStatusMessage: Optional[str] = None + ApiGatewayManaged: Optional[bool] = None + +class AwsApiGatewayV2StageDetailsOutputTypeDef(BaseModel): + ClientCertificateId: Optional[str] = None + CreatedDate: Optional[str] = None + Description: Optional[str] = None + DefaultRouteSettings: Optional[AwsApiGatewayV2RouteSettingsTypeDef] = None + DeploymentId: Optional[str] = None + LastUpdatedDate: Optional[str] = None + RouteSettings: Optional[AwsApiGatewayV2RouteSettingsTypeDef] = None + StageName: Optional[str] = None + StageVariables: Optional[Dict[str, str]] = None + AccessLogSettings: Optional[AwsApiGatewayAccessLogSettingsTypeDef] = None + AutoDeploy: Optional[bool] = None + LastDeploymentStatusMessage: Optional[str] = None + ApiGatewayManaged: Optional[bool] = None + +class AwsApiGatewayV2StageDetailsTypeDef(BaseModel): + ClientCertificateId: Optional[str] = None + CreatedDate: Optional[str] = None + Description: Optional[str] = None + DefaultRouteSettings: Optional[AwsApiGatewayV2RouteSettingsTypeDef] = None + DeploymentId: Optional[str] = None + LastUpdatedDate: Optional[str] = None + RouteSettings: Optional[AwsApiGatewayV2RouteSettingsTypeDef] = None + StageName: Optional[str] = None + StageVariables: Optional[Mapping[str, str]] = None + AccessLogSettings: Optional[AwsApiGatewayAccessLogSettingsTypeDef] = None + AutoDeploy: Optional[bool] = None + LastDeploymentStatusMessage: Optional[str] = None + ApiGatewayManaged: Optional[bool] = None + +class AwsAppSyncGraphQlApiAdditionalAuthenticationProvidersDetailsTypeDef(BaseModel): + AuthenticationType: Optional[str] = None + LambdaAuthorizerConfig: Optional[ AwsAppSyncGraphQlApiLambdaAuthorizerConfigDetailsTypeDef ] = None + OpenIdConnectConfig: Optional[AwsAppSyncGraphQlApiOpenIdConnectConfigDetailsTypeDef] = None + UserPoolConfig: Optional[AwsAppSyncGraphQlApiUserPoolConfigDetailsTypeDef] = None + +class AwsAthenaWorkGroupConfigurationResultConfigurationDetailsTypeDef(BaseModel): + EncryptionConfiguration: Optional[ AwsAthenaWorkGroupConfigurationResultConfigurationEncryptionConfigurationDetailsTypeDef ] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetailsExtraOutputTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationTypeDef ] = None + Overrides: Optional[ List[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetailsTypeDef ] ] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetailsOutputTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationTypeDef ] = None + Overrides: Optional[ List[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetailsTypeDef ] ] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetailsTypeDef(BaseModel): + LaunchTemplateSpecification: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationTypeDef ] = None + Overrides: Optional[ Sequence[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetailsTypeDef ] ] = None + +class AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetailsTypeDef(BaseModel): + DeviceName: Optional[str] = None + Ebs: Optional[AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetailsTypeDef] = None + NoDevice: Optional[bool] = None + VirtualName: Optional[str] = None + +class AwsBackupBackupPlanRuleCopyActionsDetailsTypeDef(BaseModel): + DestinationBackupVaultArn: Optional[str] = None + Lifecycle: Optional[AwsBackupBackupPlanLifecycleDetailsTypeDef] = None + +class AwsBackupBackupVaultDetailsExtraOutputTypeDef(BaseModel): + BackupVaultArn: Optional[str] = None + BackupVaultName: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + Notifications: Optional[AwsBackupBackupVaultNotificationsDetailsExtraOutputTypeDef] = None + AccessPolicy: Optional[str] = None + +class AwsBackupBackupVaultDetailsOutputTypeDef(BaseModel): + BackupVaultArn: Optional[str] = None + BackupVaultName: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + Notifications: Optional[AwsBackupBackupVaultNotificationsDetailsOutputTypeDef] = None + AccessPolicy: Optional[str] = None + +class AwsBackupBackupVaultDetailsTypeDef(BaseModel): + BackupVaultArn: Optional[str] = None + BackupVaultName: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + Notifications: Optional[AwsBackupBackupVaultNotificationsDetailsTypeDef] = None + AccessPolicy: Optional[str] = None + +class AwsBackupRecoveryPointDetailsTypeDef(BaseModel): + BackupSizeInBytes: Optional[int] = None + BackupVaultArn: Optional[str] = None + BackupVaultName: Optional[str] = None + CalculatedLifecycle: Optional[AwsBackupRecoveryPointCalculatedLifecycleDetailsTypeDef] = None + CompletionDate: Optional[str] = None + CreatedBy: Optional[AwsBackupRecoveryPointCreatedByDetailsTypeDef] = None + CreationDate: Optional[str] = None + EncryptionKeyArn: Optional[str] = None + IamRoleArn: Optional[str] = None + IsEncrypted: Optional[bool] = None + LastRestoreTime: Optional[str] = None + Lifecycle: Optional[AwsBackupRecoveryPointLifecycleDetailsTypeDef] = None + RecoveryPointArn: Optional[str] = None + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + SourceBackupVaultArn: Optional[str] = None + Status: Optional[str] = None + StatusMessage: Optional[str] = None + StorageClass: Optional[str] = None + +class AwsCertificateManagerCertificateDomainValidationOptionExtraOutputTypeDef(BaseModel): + DomainName: Optional[str] = None + ResourceRecord: Optional[AwsCertificateManagerCertificateResourceRecordTypeDef] = None + ValidationDomain: Optional[str] = None + ValidationEmails: Optional[List[str]] = None + ValidationMethod: Optional[str] = None + ValidationStatus: Optional[str] = None + +class AwsCertificateManagerCertificateDomainValidationOptionOutputTypeDef(BaseModel): + DomainName: Optional[str] = None + ResourceRecord: Optional[AwsCertificateManagerCertificateResourceRecordTypeDef] = None + ValidationDomain: Optional[str] = None + ValidationEmails: Optional[List[str]] = None + ValidationMethod: Optional[str] = None + ValidationStatus: Optional[str] = None + +class AwsCertificateManagerCertificateDomainValidationOptionTypeDef(BaseModel): + DomainName: Optional[str] = None + ResourceRecord: Optional[AwsCertificateManagerCertificateResourceRecordTypeDef] = None + ValidationDomain: Optional[str] = None + ValidationEmails: Optional[Sequence[str]] = None + ValidationMethod: Optional[str] = None + ValidationStatus: Optional[str] = None + +class AwsCloudFormationStackDetailsExtraOutputTypeDef(BaseModel): + Capabilities: Optional[List[str]] = None + CreationTime: Optional[str] = None + Description: Optional[str] = None + DisableRollback: Optional[bool] = None + DriftInformation: Optional[AwsCloudFormationStackDriftInformationDetailsTypeDef] = None + EnableTerminationProtection: Optional[bool] = None + LastUpdatedTime: Optional[str] = None + NotificationArns: Optional[List[str]] = None + Outputs: Optional[List[AwsCloudFormationStackOutputsDetailsTypeDef]] = None + RoleArn: Optional[str] = None + StackId: Optional[str] = None + StackName: Optional[str] = None + StackStatus: Optional[str] = None + StackStatusReason: Optional[str] = None + TimeoutInMinutes: Optional[int] = None + +class AwsCloudFormationStackDetailsOutputTypeDef(BaseModel): + Capabilities: Optional[List[str]] = None + CreationTime: Optional[str] = None + Description: Optional[str] = None + DisableRollback: Optional[bool] = None + DriftInformation: Optional[AwsCloudFormationStackDriftInformationDetailsTypeDef] = None + EnableTerminationProtection: Optional[bool] = None + LastUpdatedTime: Optional[str] = None + NotificationArns: Optional[List[str]] = None + Outputs: Optional[List[AwsCloudFormationStackOutputsDetailsTypeDef]] = None + RoleArn: Optional[str] = None + StackId: Optional[str] = None + StackName: Optional[str] = None + StackStatus: Optional[str] = None + StackStatusReason: Optional[str] = None + TimeoutInMinutes: Optional[int] = None + +class AwsCloudFormationStackDetailsTypeDef(BaseModel): + Capabilities: Optional[Sequence[str]] = None + CreationTime: Optional[str] = None + Description: Optional[str] = None + DisableRollback: Optional[bool] = None + DriftInformation: Optional[AwsCloudFormationStackDriftInformationDetailsTypeDef] = None + EnableTerminationProtection: Optional[bool] = None + LastUpdatedTime: Optional[str] = None + NotificationArns: Optional[Sequence[str]] = None + Outputs: Optional[Sequence[AwsCloudFormationStackOutputsDetailsTypeDef]] = None + RoleArn: Optional[str] = None + StackId: Optional[str] = None + StackName: Optional[str] = None + StackStatus: Optional[str] = None + StackStatusReason: Optional[str] = None + TimeoutInMinutes: Optional[int] = None + +class AwsCloudFrontDistributionCacheBehaviorsExtraOutputTypeDef(BaseModel): + Items: Optional[List[AwsCloudFrontDistributionCacheBehaviorTypeDef]] = None + +class AwsCloudFrontDistributionCacheBehaviorsOutputTypeDef(BaseModel): + Items: Optional[List[AwsCloudFrontDistributionCacheBehaviorTypeDef]] = None + +class AwsCloudFrontDistributionCacheBehaviorsTypeDef(BaseModel): + Items: Optional[Sequence[AwsCloudFrontDistributionCacheBehaviorTypeDef]] = None + +class AwsCloudFrontDistributionOriginCustomOriginConfigExtraOutputTypeDef(BaseModel): + HttpPort: Optional[int] = None + HttpsPort: Optional[int] = None + OriginKeepaliveTimeout: Optional[int] = None + OriginProtocolPolicy: Optional[str] = None + OriginReadTimeout: Optional[int] = None + OriginSslProtocols: Optional[ AwsCloudFrontDistributionOriginSslProtocolsExtraOutputTypeDef ] = None + +class AwsCloudFrontDistributionOriginCustomOriginConfigOutputTypeDef(BaseModel): + HttpPort: Optional[int] = None + HttpsPort: Optional[int] = None + OriginKeepaliveTimeout: Optional[int] = None + OriginProtocolPolicy: Optional[str] = None + OriginReadTimeout: Optional[int] = None + OriginSslProtocols: Optional[AwsCloudFrontDistributionOriginSslProtocolsOutputTypeDef] = None + +class AwsCloudFrontDistributionOriginCustomOriginConfigTypeDef(BaseModel): + HttpPort: Optional[int] = None + HttpsPort: Optional[int] = None + OriginKeepaliveTimeout: Optional[int] = None + OriginProtocolPolicy: Optional[str] = None + OriginReadTimeout: Optional[int] = None + OriginSslProtocols: Optional[AwsCloudFrontDistributionOriginSslProtocolsTypeDef] = None + +class AwsCloudFrontDistributionOriginGroupFailoverExtraOutputTypeDef(BaseModel): + StatusCodes: Optional[ AwsCloudFrontDistributionOriginGroupFailoverStatusCodesExtraOutputTypeDef ] = None + +class AwsCloudFrontDistributionOriginGroupFailoverOutputTypeDef(BaseModel): + StatusCodes: Optional[ AwsCloudFrontDistributionOriginGroupFailoverStatusCodesOutputTypeDef ] = None + +class AwsCloudFrontDistributionOriginGroupFailoverTypeDef(BaseModel): + StatusCodes: Optional[AwsCloudFrontDistributionOriginGroupFailoverStatusCodesTypeDef] = None + +class AwsCloudWatchAlarmDetailsExtraOutputTypeDef(BaseModel): + ActionsEnabled: Optional[bool] = None + AlarmActions: Optional[List[str]] = None + AlarmArn: Optional[str] = None + AlarmConfigurationUpdatedTimestamp: Optional[str] = None + AlarmDescription: Optional[str] = None + AlarmName: Optional[str] = None + ComparisonOperator: Optional[str] = None + DatapointsToAlarm: Optional[int] = None + Dimensions: Optional[List[AwsCloudWatchAlarmDimensionsDetailsTypeDef]] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + EvaluationPeriods: Optional[int] = None + ExtendedStatistic: Optional[str] = None + InsufficientDataActions: Optional[List[str]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + OkActions: Optional[List[str]] = None + Period: Optional[int] = None + Statistic: Optional[str] = None + Threshold: Optional[float] = None + ThresholdMetricId: Optional[str] = None + TreatMissingData: Optional[str] = None + Unit: Optional[str] = None + +class AwsCloudWatchAlarmDetailsOutputTypeDef(BaseModel): + ActionsEnabled: Optional[bool] = None + AlarmActions: Optional[List[str]] = None + AlarmArn: Optional[str] = None + AlarmConfigurationUpdatedTimestamp: Optional[str] = None + AlarmDescription: Optional[str] = None + AlarmName: Optional[str] = None + ComparisonOperator: Optional[str] = None + DatapointsToAlarm: Optional[int] = None + Dimensions: Optional[List[AwsCloudWatchAlarmDimensionsDetailsTypeDef]] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + EvaluationPeriods: Optional[int] = None + ExtendedStatistic: Optional[str] = None + InsufficientDataActions: Optional[List[str]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + OkActions: Optional[List[str]] = None + Period: Optional[int] = None + Statistic: Optional[str] = None + Threshold: Optional[float] = None + ThresholdMetricId: Optional[str] = None + TreatMissingData: Optional[str] = None + Unit: Optional[str] = None + +class AwsCloudWatchAlarmDetailsTypeDef(BaseModel): + ActionsEnabled: Optional[bool] = None + AlarmActions: Optional[Sequence[str]] = None + AlarmArn: Optional[str] = None + AlarmConfigurationUpdatedTimestamp: Optional[str] = None + AlarmDescription: Optional[str] = None + AlarmName: Optional[str] = None + ComparisonOperator: Optional[str] = None + DatapointsToAlarm: Optional[int] = None + Dimensions: Optional[Sequence[AwsCloudWatchAlarmDimensionsDetailsTypeDef]] = None + EvaluateLowSampleCountPercentile: Optional[str] = None + EvaluationPeriods: Optional[int] = None + ExtendedStatistic: Optional[str] = None + InsufficientDataActions: Optional[Sequence[str]] = None + MetricName: Optional[str] = None + Namespace: Optional[str] = None + OkActions: Optional[Sequence[str]] = None + Period: Optional[int] = None + Statistic: Optional[str] = None + Threshold: Optional[float] = None + ThresholdMetricId: Optional[str] = None + TreatMissingData: Optional[str] = None + Unit: Optional[str] = None + +class AwsCodeBuildProjectEnvironmentExtraOutputTypeDef(BaseModel): + Certificate: Optional[str] = None + EnvironmentVariables: Optional[ List[AwsCodeBuildProjectEnvironmentEnvironmentVariablesDetailsTypeDef] ] = None + PrivilegedMode: Optional[bool] = None + ImagePullCredentialsType: Optional[str] = None + RegistryCredential: Optional[AwsCodeBuildProjectEnvironmentRegistryCredentialTypeDef] = None + Type: Optional[str] = None + +class AwsCodeBuildProjectEnvironmentOutputTypeDef(BaseModel): + Certificate: Optional[str] = None + EnvironmentVariables: Optional[ List[AwsCodeBuildProjectEnvironmentEnvironmentVariablesDetailsTypeDef] ] = None + PrivilegedMode: Optional[bool] = None + ImagePullCredentialsType: Optional[str] = None + RegistryCredential: Optional[AwsCodeBuildProjectEnvironmentRegistryCredentialTypeDef] = None + Type: Optional[str] = None + +class AwsCodeBuildProjectEnvironmentTypeDef(BaseModel): + Certificate: Optional[str] = None + EnvironmentVariables: Optional[ Sequence[AwsCodeBuildProjectEnvironmentEnvironmentVariablesDetailsTypeDef] ] = None + PrivilegedMode: Optional[bool] = None + ImagePullCredentialsType: Optional[str] = None + RegistryCredential: Optional[AwsCodeBuildProjectEnvironmentRegistryCredentialTypeDef] = None + Type: Optional[str] = None + +class AwsCodeBuildProjectLogsConfigDetailsTypeDef(BaseModel): + CloudWatchLogs: Optional[AwsCodeBuildProjectLogsConfigCloudWatchLogsDetailsTypeDef] = None + S3Logs: Optional[AwsCodeBuildProjectLogsConfigS3LogsDetailsTypeDef] = None + +class AwsDmsReplicationInstanceDetailsExtraOutputTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AutoMinorVersionUpgrade: Optional[bool] = None + AvailabilityZone: Optional[str] = None + EngineVersion: Optional[str] = None + KmsKeyId: Optional[str] = None + MultiAZ: Optional[bool] = None + PreferredMaintenanceWindow: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ReplicationInstanceClass: Optional[str] = None + ReplicationInstanceIdentifier: Optional[str] = None + ReplicationSubnetGroup: Optional[ AwsDmsReplicationInstanceReplicationSubnetGroupDetailsTypeDef ] = None + VpcSecurityGroups: Optional[ List[AwsDmsReplicationInstanceVpcSecurityGroupsDetailsTypeDef] ] = None + +class AwsDmsReplicationInstanceDetailsOutputTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AutoMinorVersionUpgrade: Optional[bool] = None + AvailabilityZone: Optional[str] = None + EngineVersion: Optional[str] = None + KmsKeyId: Optional[str] = None + MultiAZ: Optional[bool] = None + PreferredMaintenanceWindow: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ReplicationInstanceClass: Optional[str] = None + ReplicationInstanceIdentifier: Optional[str] = None + ReplicationSubnetGroup: Optional[ AwsDmsReplicationInstanceReplicationSubnetGroupDetailsTypeDef ] = None + VpcSecurityGroups: Optional[ List[AwsDmsReplicationInstanceVpcSecurityGroupsDetailsTypeDef] ] = None + +class AwsDmsReplicationInstanceDetailsTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AutoMinorVersionUpgrade: Optional[bool] = None + AvailabilityZone: Optional[str] = None + EngineVersion: Optional[str] = None + KmsKeyId: Optional[str] = None + MultiAZ: Optional[bool] = None + PreferredMaintenanceWindow: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ReplicationInstanceClass: Optional[str] = None + ReplicationInstanceIdentifier: Optional[str] = None + ReplicationSubnetGroup: Optional[ AwsDmsReplicationInstanceReplicationSubnetGroupDetailsTypeDef ] = None + VpcSecurityGroups: Optional[ Sequence[AwsDmsReplicationInstanceVpcSecurityGroupsDetailsTypeDef] ] = None + +class AwsDynamoDbTableGlobalSecondaryIndexExtraOutputTypeDef(BaseModel): + Backfilling: Optional[bool] = None + IndexArn: Optional[str] = None + IndexName: Optional[str] = None + IndexSizeBytes: Optional[int] = None + IndexStatus: Optional[str] = None + ItemCount: Optional[int] = None + KeySchema: Optional[List[AwsDynamoDbTableKeySchemaTypeDef]] = None + Projection: Optional[AwsDynamoDbTableProjectionExtraOutputTypeDef] = None + ProvisionedThroughput: Optional[AwsDynamoDbTableProvisionedThroughputTypeDef] = None + +class AwsDynamoDbTableLocalSecondaryIndexExtraOutputTypeDef(BaseModel): + IndexArn: Optional[str] = None + IndexName: Optional[str] = None + KeySchema: Optional[List[AwsDynamoDbTableKeySchemaTypeDef]] = None + Projection: Optional[AwsDynamoDbTableProjectionExtraOutputTypeDef] = None + +class AwsDynamoDbTableGlobalSecondaryIndexOutputTypeDef(BaseModel): + Backfilling: Optional[bool] = None + IndexArn: Optional[str] = None + IndexName: Optional[str] = None + IndexSizeBytes: Optional[int] = None + IndexStatus: Optional[str] = None + ItemCount: Optional[int] = None + KeySchema: Optional[List[AwsDynamoDbTableKeySchemaTypeDef]] = None + Projection: Optional[AwsDynamoDbTableProjectionOutputTypeDef] = None + ProvisionedThroughput: Optional[AwsDynamoDbTableProvisionedThroughputTypeDef] = None + +class AwsDynamoDbTableLocalSecondaryIndexOutputTypeDef(BaseModel): + IndexArn: Optional[str] = None + IndexName: Optional[str] = None + KeySchema: Optional[List[AwsDynamoDbTableKeySchemaTypeDef]] = None + Projection: Optional[AwsDynamoDbTableProjectionOutputTypeDef] = None + +class AwsDynamoDbTableGlobalSecondaryIndexTypeDef(BaseModel): + Backfilling: Optional[bool] = None + IndexArn: Optional[str] = None + IndexName: Optional[str] = None + IndexSizeBytes: Optional[int] = None + IndexStatus: Optional[str] = None + ItemCount: Optional[int] = None + KeySchema: Optional[Sequence[AwsDynamoDbTableKeySchemaTypeDef]] = None + Projection: Optional[AwsDynamoDbTableProjectionTypeDef] = None + ProvisionedThroughput: Optional[AwsDynamoDbTableProvisionedThroughputTypeDef] = None + +class AwsDynamoDbTableLocalSecondaryIndexTypeDef(BaseModel): + IndexArn: Optional[str] = None + IndexName: Optional[str] = None + KeySchema: Optional[Sequence[AwsDynamoDbTableKeySchemaTypeDef]] = None + Projection: Optional[AwsDynamoDbTableProjectionTypeDef] = None + +class AwsDynamoDbTableReplicaGlobalSecondaryIndexTypeDef(BaseModel): + IndexName: Optional[str] = None + ProvisionedThroughputOverride: Optional[ AwsDynamoDbTableProvisionedThroughputOverrideTypeDef ] = None + +class AwsEc2ClientVpnEndpointAuthenticationOptionsDetailsTypeDef(BaseModel): + Type: Optional[str] = None + ActiveDirectory: Optional[ AwsEc2ClientVpnEndpointAuthenticationOptionsActiveDirectoryDetailsTypeDef ] = None + MutualAuthentication: Optional[ AwsEc2ClientVpnEndpointAuthenticationOptionsMutualAuthenticationDetailsTypeDef ] = None + FederatedAuthentication: Optional[ AwsEc2ClientVpnEndpointAuthenticationOptionsFederatedAuthenticationDetailsTypeDef ] = None + +class AwsEc2ClientVpnEndpointClientConnectOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + LambdaFunctionArn: Optional[str] = None + Status: Optional[AwsEc2ClientVpnEndpointClientConnectOptionsStatusDetailsTypeDef] = None + +class AwsEc2InstanceDetailsExtraOutputTypeDef(BaseModel): + Type: Optional[str] = None + ImageId: Optional[str] = None + IpV4Addresses: Optional[List[str]] = None + IpV6Addresses: Optional[List[str]] = None + KeyName: Optional[str] = None + IamInstanceProfileArn: Optional[str] = None + VpcId: Optional[str] = None + SubnetId: Optional[str] = None + LaunchedAt: Optional[str] = None + NetworkInterfaces: Optional[List[AwsEc2InstanceNetworkInterfacesDetailsTypeDef]] = None + VirtualizationType: Optional[str] = None + MetadataOptions: Optional[AwsEc2InstanceMetadataOptionsTypeDef] = None + Monitoring: Optional[AwsEc2InstanceMonitoringDetailsTypeDef] = None + +class AwsEc2InstanceDetailsOutputTypeDef(BaseModel): + Type: Optional[str] = None + ImageId: Optional[str] = None + IpV4Addresses: Optional[List[str]] = None + IpV6Addresses: Optional[List[str]] = None + KeyName: Optional[str] = None + IamInstanceProfileArn: Optional[str] = None + VpcId: Optional[str] = None + SubnetId: Optional[str] = None + LaunchedAt: Optional[str] = None + NetworkInterfaces: Optional[List[AwsEc2InstanceNetworkInterfacesDetailsTypeDef]] = None + VirtualizationType: Optional[str] = None + MetadataOptions: Optional[AwsEc2InstanceMetadataOptionsTypeDef] = None + Monitoring: Optional[AwsEc2InstanceMonitoringDetailsTypeDef] = None + +class AwsEc2InstanceDetailsTypeDef(BaseModel): + Type: Optional[str] = None + ImageId: Optional[str] = None + IpV4Addresses: Optional[Sequence[str]] = None + IpV6Addresses: Optional[Sequence[str]] = None + KeyName: Optional[str] = None + IamInstanceProfileArn: Optional[str] = None + VpcId: Optional[str] = None + SubnetId: Optional[str] = None + LaunchedAt: Optional[str] = None + NetworkInterfaces: Optional[Sequence[AwsEc2InstanceNetworkInterfacesDetailsTypeDef]] = None + VirtualizationType: Optional[str] = None + MetadataOptions: Optional[AwsEc2InstanceMetadataOptionsTypeDef] = None + Monitoring: Optional[AwsEc2InstanceMonitoringDetailsTypeDef] = None + +class AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetailsTypeDef(BaseModel): + DeviceName: Optional[str] = None + Ebs: Optional[AwsEc2LaunchTemplateDataBlockDeviceMappingSetEbsDetailsTypeDef] = None + NoDevice: Optional[str] = None + VirtualName: Optional[str] = None + +class AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetailsTypeDef(BaseModel): + CapacityReservationPreference: Optional[str] = None + CapacityReservationTarget: Optional[ AwsEc2LaunchTemplateDataCapacityReservationSpecificationCapacityReservationTargetDetailsTypeDef ] = None + +class AwsEc2LaunchTemplateDataInstanceMarketOptionsDetailsTypeDef(BaseModel): + MarketType: Optional[str] = None + SpotOptions: Optional[ AwsEc2LaunchTemplateDataInstanceMarketOptionsSpotOptionsDetailsTypeDef ] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsDetailsExtraOutputTypeDef(BaseModel): + AcceleratorCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetailsTypeDef ] = None + AcceleratorManufacturers: Optional[List[str]] = None + AcceleratorNames: Optional[List[str]] = None + AcceleratorTotalMemoryMiB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetailsTypeDef ] = None + AcceleratorTypes: Optional[List[str]] = None + BareMetal: Optional[str] = None + BaselineEbsBandwidthMbps: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetailsTypeDef ] = None + BurstablePerformance: Optional[str] = None + CpuManufacturers: Optional[List[str]] = None + ExcludedInstanceTypes: Optional[List[str]] = None + InstanceGenerations: Optional[List[str]] = None + LocalStorage: Optional[str] = None + LocalStorageTypes: Optional[List[str]] = None + MemoryGiBPerVCpu: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetailsTypeDef ] = None + MemoryMiB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetailsTypeDef ] = None + NetworkInterfaceCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetailsTypeDef ] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + RequireHibernateSupport: Optional[bool] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + TotalLocalStorageGB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetailsTypeDef ] = None + VCpuCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetailsTypeDef ] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsDetailsOutputTypeDef(BaseModel): + AcceleratorCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetailsTypeDef ] = None + AcceleratorManufacturers: Optional[List[str]] = None + AcceleratorNames: Optional[List[str]] = None + AcceleratorTotalMemoryMiB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetailsTypeDef ] = None + AcceleratorTypes: Optional[List[str]] = None + BareMetal: Optional[str] = None + BaselineEbsBandwidthMbps: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetailsTypeDef ] = None + BurstablePerformance: Optional[str] = None + CpuManufacturers: Optional[List[str]] = None + ExcludedInstanceTypes: Optional[List[str]] = None + InstanceGenerations: Optional[List[str]] = None + LocalStorage: Optional[str] = None + LocalStorageTypes: Optional[List[str]] = None + MemoryGiBPerVCpu: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetailsTypeDef ] = None + MemoryMiB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetailsTypeDef ] = None + NetworkInterfaceCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetailsTypeDef ] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + RequireHibernateSupport: Optional[bool] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + TotalLocalStorageGB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetailsTypeDef ] = None + VCpuCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetailsTypeDef ] = None + +class AwsEc2LaunchTemplateDataInstanceRequirementsDetailsTypeDef(BaseModel): + AcceleratorCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorCountDetailsTypeDef ] = None + AcceleratorManufacturers: Optional[Sequence[str]] = None + AcceleratorNames: Optional[Sequence[str]] = None + AcceleratorTotalMemoryMiB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsAcceleratorTotalMemoryMiBDetailsTypeDef ] = None + AcceleratorTypes: Optional[Sequence[str]] = None + BareMetal: Optional[str] = None + BaselineEbsBandwidthMbps: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsBaselineEbsBandwidthMbpsDetailsTypeDef ] = None + BurstablePerformance: Optional[str] = None + CpuManufacturers: Optional[Sequence[str]] = None + ExcludedInstanceTypes: Optional[Sequence[str]] = None + InstanceGenerations: Optional[Sequence[str]] = None + LocalStorage: Optional[str] = None + LocalStorageTypes: Optional[Sequence[str]] = None + MemoryGiBPerVCpu: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsMemoryGiBPerVCpuDetailsTypeDef ] = None + MemoryMiB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsMemoryMiBDetailsTypeDef ] = None + NetworkInterfaceCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsNetworkInterfaceCountDetailsTypeDef ] = None + OnDemandMaxPricePercentageOverLowestPrice: Optional[int] = None + RequireHibernateSupport: Optional[bool] = None + SpotMaxPricePercentageOverLowestPrice: Optional[int] = None + TotalLocalStorageGB: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsTotalLocalStorageGBDetailsTypeDef ] = None + VCpuCount: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsVCpuCountDetailsTypeDef ] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetDetailsExtraOutputTypeDef(BaseModel): + AssociateCarrierIpAddress: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[List[str]] = None + InterfaceType: Optional[str] = None + Ipv4PrefixCount: Optional[int] = None + Ipv4Prefixes: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetailsTypeDef] ] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetailsTypeDef] ] = None + Ipv6PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetailsTypeDef] ] = None + NetworkCardIndex: Optional[int] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetailsTypeDef] ] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetDetailsOutputTypeDef(BaseModel): + AssociateCarrierIpAddress: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[List[str]] = None + InterfaceType: Optional[str] = None + Ipv4PrefixCount: Optional[int] = None + Ipv4Prefixes: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetailsTypeDef] ] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetailsTypeDef] ] = None + Ipv6PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetailsTypeDef] ] = None + NetworkCardIndex: Optional[int] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetailsTypeDef] ] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + +class AwsEc2LaunchTemplateDataNetworkInterfaceSetDetailsTypeDef(BaseModel): + AssociateCarrierIpAddress: Optional[bool] = None + AssociatePublicIpAddress: Optional[bool] = None + DeleteOnTermination: Optional[bool] = None + Description: Optional[str] = None + DeviceIndex: Optional[int] = None + Groups: Optional[Sequence[str]] = None + InterfaceType: Optional[str] = None + Ipv4PrefixCount: Optional[int] = None + Ipv4Prefixes: Optional[ Sequence[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv4PrefixesDetailsTypeDef] ] = None + Ipv6AddressCount: Optional[int] = None + Ipv6Addresses: Optional[ Sequence[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6AddressesDetailsTypeDef] ] = None + Ipv6PrefixCount: Optional[int] = None + Ipv6Prefixes: Optional[ Sequence[AwsEc2LaunchTemplateDataNetworkInterfaceSetIpv6PrefixesDetailsTypeDef] ] = None + NetworkCardIndex: Optional[int] = None + NetworkInterfaceId: Optional[str] = None + PrivateIpAddress: Optional[str] = None + PrivateIpAddresses: Optional[ Sequence[AwsEc2LaunchTemplateDataNetworkInterfaceSetPrivateIpAddressesDetailsTypeDef] ] = None + SecondaryPrivateIpAddressCount: Optional[int] = None + SubnetId: Optional[str] = None + +class AwsEc2NetworkAclEntryTypeDef(BaseModel): + CidrBlock: Optional[str] = None + Egress: Optional[bool] = None + IcmpTypeCode: Optional[IcmpTypeCodeTypeDef] = None + Ipv6CidrBlock: Optional[str] = None + PortRange: Optional[PortRangeFromToTypeDef] = None + Protocol: Optional[str] = None + RuleAction: Optional[str] = None + RuleNumber: Optional[int] = None + +class AwsEc2NetworkInterfaceDetailsExtraOutputTypeDef(BaseModel): + Attachment: Optional[AwsEc2NetworkInterfaceAttachmentTypeDef] = None + NetworkInterfaceId: Optional[str] = None + SecurityGroups: Optional[List[AwsEc2NetworkInterfaceSecurityGroupTypeDef]] = None + SourceDestCheck: Optional[bool] = None + IpV6Addresses: Optional[List[AwsEc2NetworkInterfaceIpV6AddressDetailTypeDef]] = None + PrivateIpAddresses: Optional[ List[AwsEc2NetworkInterfacePrivateIpAddressDetailTypeDef] ] = None + PublicDnsName: Optional[str] = None + PublicIp: Optional[str] = None + +class AwsEc2NetworkInterfaceDetailsOutputTypeDef(BaseModel): + Attachment: Optional[AwsEc2NetworkInterfaceAttachmentTypeDef] = None + NetworkInterfaceId: Optional[str] = None + SecurityGroups: Optional[List[AwsEc2NetworkInterfaceSecurityGroupTypeDef]] = None + SourceDestCheck: Optional[bool] = None + IpV6Addresses: Optional[List[AwsEc2NetworkInterfaceIpV6AddressDetailTypeDef]] = None + PrivateIpAddresses: Optional[ List[AwsEc2NetworkInterfacePrivateIpAddressDetailTypeDef] ] = None + PublicDnsName: Optional[str] = None + PublicIp: Optional[str] = None + +class AwsEc2NetworkInterfaceDetailsTypeDef(BaseModel): + Attachment: Optional[AwsEc2NetworkInterfaceAttachmentTypeDef] = None + NetworkInterfaceId: Optional[str] = None + SecurityGroups: Optional[Sequence[AwsEc2NetworkInterfaceSecurityGroupTypeDef]] = None + SourceDestCheck: Optional[bool] = None + IpV6Addresses: Optional[Sequence[AwsEc2NetworkInterfaceIpV6AddressDetailTypeDef]] = None + PrivateIpAddresses: Optional[ Sequence[AwsEc2NetworkInterfacePrivateIpAddressDetailTypeDef] ] = None + PublicDnsName: Optional[str] = None + PublicIp: Optional[str] = None + +class AwsEc2SecurityGroupIpPermissionExtraOutputTypeDef(BaseModel): + IpProtocol: Optional[str] = None + FromPort: Optional[int] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[List[AwsEc2SecurityGroupUserIdGroupPairTypeDef]] = None + IpRanges: Optional[List[AwsEc2SecurityGroupIpRangeTypeDef]] = None + Ipv6Ranges: Optional[List[AwsEc2SecurityGroupIpv6RangeTypeDef]] = None + PrefixListIds: Optional[List[AwsEc2SecurityGroupPrefixListIdTypeDef]] = None + +class AwsEc2SecurityGroupIpPermissionOutputTypeDef(BaseModel): + IpProtocol: Optional[str] = None + FromPort: Optional[int] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[List[AwsEc2SecurityGroupUserIdGroupPairTypeDef]] = None + IpRanges: Optional[List[AwsEc2SecurityGroupIpRangeTypeDef]] = None + Ipv6Ranges: Optional[List[AwsEc2SecurityGroupIpv6RangeTypeDef]] = None + PrefixListIds: Optional[List[AwsEc2SecurityGroupPrefixListIdTypeDef]] = None + +class AwsEc2SecurityGroupIpPermissionTypeDef(BaseModel): + IpProtocol: Optional[str] = None + FromPort: Optional[int] = None + ToPort: Optional[int] = None + UserIdGroupPairs: Optional[Sequence[AwsEc2SecurityGroupUserIdGroupPairTypeDef]] = None + IpRanges: Optional[Sequence[AwsEc2SecurityGroupIpRangeTypeDef]] = None + Ipv6Ranges: Optional[Sequence[AwsEc2SecurityGroupIpv6RangeTypeDef]] = None + PrefixListIds: Optional[Sequence[AwsEc2SecurityGroupPrefixListIdTypeDef]] = None + +class AwsEc2SubnetDetailsExtraOutputTypeDef(BaseModel): + AssignIpv6AddressOnCreation: Optional[bool] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + AvailableIpAddressCount: Optional[int] = None + CidrBlock: Optional[str] = None + DefaultForAz: Optional[bool] = None + MapPublicIpOnLaunch: Optional[bool] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + SubnetArn: Optional[str] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + Ipv6CidrBlockAssociationSet: Optional[List[Ipv6CidrBlockAssociationTypeDef]] = None + +class AwsEc2SubnetDetailsOutputTypeDef(BaseModel): + AssignIpv6AddressOnCreation: Optional[bool] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + AvailableIpAddressCount: Optional[int] = None + CidrBlock: Optional[str] = None + DefaultForAz: Optional[bool] = None + MapPublicIpOnLaunch: Optional[bool] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + SubnetArn: Optional[str] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + Ipv6CidrBlockAssociationSet: Optional[List[Ipv6CidrBlockAssociationTypeDef]] = None + +class AwsEc2SubnetDetailsTypeDef(BaseModel): + AssignIpv6AddressOnCreation: Optional[bool] = None + AvailabilityZone: Optional[str] = None + AvailabilityZoneId: Optional[str] = None + AvailableIpAddressCount: Optional[int] = None + CidrBlock: Optional[str] = None + DefaultForAz: Optional[bool] = None + MapPublicIpOnLaunch: Optional[bool] = None + OwnerId: Optional[str] = None + State: Optional[str] = None + SubnetArn: Optional[str] = None + SubnetId: Optional[str] = None + VpcId: Optional[str] = None + Ipv6CidrBlockAssociationSet: Optional[Sequence[Ipv6CidrBlockAssociationTypeDef]] = None + +class AwsEc2VolumeDetailsExtraOutputTypeDef(BaseModel): + CreateTime: Optional[str] = None + DeviceName: Optional[str] = None + Encrypted: Optional[bool] = None + Size: Optional[int] = None + SnapshotId: Optional[str] = None + Status: Optional[str] = None + KmsKeyId: Optional[str] = None + Attachments: Optional[List[AwsEc2VolumeAttachmentTypeDef]] = None + VolumeId: Optional[str] = None + VolumeType: Optional[str] = None + VolumeScanStatus: Optional[str] = None + +class AwsEc2VolumeDetailsOutputTypeDef(BaseModel): + CreateTime: Optional[str] = None + DeviceName: Optional[str] = None + Encrypted: Optional[bool] = None + Size: Optional[int] = None + SnapshotId: Optional[str] = None + Status: Optional[str] = None + KmsKeyId: Optional[str] = None + Attachments: Optional[List[AwsEc2VolumeAttachmentTypeDef]] = None + VolumeId: Optional[str] = None + VolumeType: Optional[str] = None + VolumeScanStatus: Optional[str] = None + +class AwsEc2VolumeDetailsTypeDef(BaseModel): + CreateTime: Optional[str] = None + DeviceName: Optional[str] = None + Encrypted: Optional[bool] = None + Size: Optional[int] = None + SnapshotId: Optional[str] = None + Status: Optional[str] = None + KmsKeyId: Optional[str] = None + Attachments: Optional[Sequence[AwsEc2VolumeAttachmentTypeDef]] = None + VolumeId: Optional[str] = None + VolumeType: Optional[str] = None + VolumeScanStatus: Optional[str] = None + +class AwsEc2VpcDetailsExtraOutputTypeDef(BaseModel): + CidrBlockAssociationSet: Optional[List[CidrBlockAssociationTypeDef]] = None + Ipv6CidrBlockAssociationSet: Optional[List[Ipv6CidrBlockAssociationTypeDef]] = None + DhcpOptionsId: Optional[str] = None + State: Optional[str] = None + +class AwsEc2VpcDetailsOutputTypeDef(BaseModel): + CidrBlockAssociationSet: Optional[List[CidrBlockAssociationTypeDef]] = None + Ipv6CidrBlockAssociationSet: Optional[List[Ipv6CidrBlockAssociationTypeDef]] = None + DhcpOptionsId: Optional[str] = None + State: Optional[str] = None + +class AwsEc2VpcDetailsTypeDef(BaseModel): + CidrBlockAssociationSet: Optional[Sequence[CidrBlockAssociationTypeDef]] = None + Ipv6CidrBlockAssociationSet: Optional[Sequence[Ipv6CidrBlockAssociationTypeDef]] = None + DhcpOptionsId: Optional[str] = None + State: Optional[str] = None + +class AwsEc2VpcEndpointServiceDetailsExtraOutputTypeDef(BaseModel): + AcceptanceRequired: Optional[bool] = None + AvailabilityZones: Optional[List[str]] = None + BaseEndpointDnsNames: Optional[List[str]] = None + ManagesVpcEndpoints: Optional[bool] = None + GatewayLoadBalancerArns: Optional[List[str]] = None + NetworkLoadBalancerArns: Optional[List[str]] = None + PrivateDnsName: Optional[str] = None + ServiceId: Optional[str] = None + ServiceName: Optional[str] = None + ServiceState: Optional[str] = None + ServiceType: Optional[List[AwsEc2VpcEndpointServiceServiceTypeDetailsTypeDef]] = None + +class AwsEc2VpcEndpointServiceDetailsOutputTypeDef(BaseModel): + AcceptanceRequired: Optional[bool] = None + AvailabilityZones: Optional[List[str]] = None + BaseEndpointDnsNames: Optional[List[str]] = None + ManagesVpcEndpoints: Optional[bool] = None + GatewayLoadBalancerArns: Optional[List[str]] = None + NetworkLoadBalancerArns: Optional[List[str]] = None + PrivateDnsName: Optional[str] = None + ServiceId: Optional[str] = None + ServiceName: Optional[str] = None + ServiceState: Optional[str] = None + ServiceType: Optional[List[AwsEc2VpcEndpointServiceServiceTypeDetailsTypeDef]] = None + +class AwsEc2VpcEndpointServiceDetailsTypeDef(BaseModel): + AcceptanceRequired: Optional[bool] = None + AvailabilityZones: Optional[Sequence[str]] = None + BaseEndpointDnsNames: Optional[Sequence[str]] = None + ManagesVpcEndpoints: Optional[bool] = None + GatewayLoadBalancerArns: Optional[Sequence[str]] = None + NetworkLoadBalancerArns: Optional[Sequence[str]] = None + PrivateDnsName: Optional[str] = None + ServiceId: Optional[str] = None + ServiceName: Optional[str] = None + ServiceState: Optional[str] = None + ServiceType: Optional[Sequence[AwsEc2VpcEndpointServiceServiceTypeDetailsTypeDef]] = None + +class AwsEc2VpcPeeringConnectionVpcInfoDetailsExtraOutputTypeDef(BaseModel): + CidrBlock: Optional[str] = None + CidrBlockSet: Optional[List[VpcInfoCidrBlockSetDetailsTypeDef]] = None + Ipv6CidrBlockSet: Optional[List[VpcInfoIpv6CidrBlockSetDetailsTypeDef]] = None + OwnerId: Optional[str] = None + PeeringOptions: Optional[VpcInfoPeeringOptionsDetailsTypeDef] = None + Region: Optional[str] = None + VpcId: Optional[str] = None + +class AwsEc2VpcPeeringConnectionVpcInfoDetailsOutputTypeDef(BaseModel): + CidrBlock: Optional[str] = None + CidrBlockSet: Optional[List[VpcInfoCidrBlockSetDetailsTypeDef]] = None + Ipv6CidrBlockSet: Optional[List[VpcInfoIpv6CidrBlockSetDetailsTypeDef]] = None + OwnerId: Optional[str] = None + PeeringOptions: Optional[VpcInfoPeeringOptionsDetailsTypeDef] = None + Region: Optional[str] = None + VpcId: Optional[str] = None + +class AwsEc2VpcPeeringConnectionVpcInfoDetailsTypeDef(BaseModel): + CidrBlock: Optional[str] = None + CidrBlockSet: Optional[Sequence[VpcInfoCidrBlockSetDetailsTypeDef]] = None + Ipv6CidrBlockSet: Optional[Sequence[VpcInfoIpv6CidrBlockSetDetailsTypeDef]] = None + OwnerId: Optional[str] = None + PeeringOptions: Optional[VpcInfoPeeringOptionsDetailsTypeDef] = None + Region: Optional[str] = None + VpcId: Optional[str] = None + +class AwsEc2VpnConnectionOptionsDetailsExtraOutputTypeDef(BaseModel): + StaticRoutesOnly: Optional[bool] = None + TunnelOptions: Optional[ List[AwsEc2VpnConnectionOptionsTunnelOptionsDetailsExtraOutputTypeDef] ] = None + +class AwsEc2VpnConnectionOptionsDetailsOutputTypeDef(BaseModel): + StaticRoutesOnly: Optional[bool] = None + TunnelOptions: Optional[ List[AwsEc2VpnConnectionOptionsTunnelOptionsDetailsOutputTypeDef] ] = None + +class AwsEc2VpnConnectionOptionsDetailsTypeDef(BaseModel): + StaticRoutesOnly: Optional[bool] = None + TunnelOptions: Optional[ Sequence[AwsEc2VpnConnectionOptionsTunnelOptionsDetailsTypeDef] ] = None + +class AwsEcrRepositoryDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + ImageScanningConfiguration: Optional[ AwsEcrRepositoryImageScanningConfigurationDetailsTypeDef ] = None + ImageTagMutability: Optional[str] = None + LifecyclePolicy: Optional[AwsEcrRepositoryLifecyclePolicyDetailsTypeDef] = None + RepositoryName: Optional[str] = None + RepositoryPolicyText: Optional[str] = None + +class AwsEcsClusterConfigurationExecuteCommandConfigurationDetailsTypeDef(BaseModel): + KmsKeyId: Optional[str] = None + LogConfiguration: Optional[ AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetailsTypeDef ] = None + Logging: Optional[str] = None + +class AwsEcsContainerDetailsExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Image: Optional[str] = None + MountPoints: Optional[List[AwsMountPointTypeDef]] = None + Privileged: Optional[bool] = None + +class AwsEcsContainerDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + Image: Optional[str] = None + MountPoints: Optional[List[AwsMountPointTypeDef]] = None + Privileged: Optional[bool] = None + +class AwsEcsContainerDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Image: Optional[str] = None + MountPoints: Optional[Sequence[AwsMountPointTypeDef]] = None + Privileged: Optional[bool] = None + +class AwsEcsServiceDeploymentConfigurationDetailsTypeDef(BaseModel): + DeploymentCircuitBreaker: Optional[ AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetailsTypeDef ] = None + MaximumPercent: Optional[int] = None + MinimumHealthyPercent: Optional[int] = None + +class AwsEcsServiceNetworkConfigurationDetailsExtraOutputTypeDef(BaseModel): + AwsVpcConfiguration: Optional[ AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetailsExtraOutputTypeDef ] = None + +class AwsEcsServiceNetworkConfigurationDetailsOutputTypeDef(BaseModel): + AwsVpcConfiguration: Optional[ AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetailsOutputTypeDef ] = None + +class AwsEcsServiceNetworkConfigurationDetailsTypeDef(BaseModel): + AwsVpcConfiguration: Optional[ AwsEcsServiceNetworkConfigurationAwsVpcConfigurationDetailsTypeDef ] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetailsExtraOutputTypeDef(BaseModel): + Capabilities: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetailsExtraOutputTypeDef ] = None + Devices: Optional[ List[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetailsExtraOutputTypeDef ] ] = None + InitProcessEnabled: Optional[bool] = None + MaxSwap: Optional[int] = None + SharedMemorySize: Optional[int] = None + Swappiness: Optional[int] = None + Tmpfs: Optional[ List[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetailsExtraOutputTypeDef ] ] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetailsOutputTypeDef(BaseModel): + Capabilities: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetailsOutputTypeDef ] = None + Devices: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetailsOutputTypeDef] ] = None + InitProcessEnabled: Optional[bool] = None + MaxSwap: Optional[int] = None + SharedMemorySize: Optional[int] = None + Swappiness: Optional[int] = None + Tmpfs: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetailsOutputTypeDef] ] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetailsTypeDef(BaseModel): + Capabilities: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersCapabilitiesDetailsTypeDef ] = None + Devices: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetailsTypeDef] ] = None + InitProcessEnabled: Optional[bool] = None + MaxSwap: Optional[int] = None + SharedMemorySize: Optional[int] = None + Swappiness: Optional[int] = None + Tmpfs: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetailsTypeDef] ] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetailsExtraOutputTypeDef(BaseModel): + LogDriver: Optional[str] = None + Options: Optional[Dict[str, str]] = None + SecretOptions: Optional[ List[ AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetailsTypeDef ] ] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetailsOutputTypeDef(BaseModel): + LogDriver: Optional[str] = None + Options: Optional[Dict[str, str]] = None + SecretOptions: Optional[ List[ AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetailsTypeDef ] ] = None + +class AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetailsTypeDef(BaseModel): + LogDriver: Optional[str] = None + Options: Optional[Mapping[str, str]] = None + SecretOptions: Optional[ Sequence[ AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationSecretOptionsDetailsTypeDef ] ] = None + +class AwsEcsTaskDefinitionProxyConfigurationDetailsExtraOutputTypeDef(BaseModel): + ContainerName: Optional[str] = None + ProxyConfigurationProperties: Optional[ List[AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetailsTypeDef] ] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionProxyConfigurationDetailsOutputTypeDef(BaseModel): + ContainerName: Optional[str] = None + ProxyConfigurationProperties: Optional[ List[AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetailsTypeDef] ] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionProxyConfigurationDetailsTypeDef(BaseModel): + ContainerName: Optional[str] = None + ProxyConfigurationProperties: Optional[ Sequence[ AwsEcsTaskDefinitionProxyConfigurationProxyConfigurationPropertiesDetailsTypeDef ] ] = None + Type: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetailsTypeDef(BaseModel): + AuthorizationConfig: Optional[ AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationAuthorizationConfigDetailsTypeDef ] = None + FilesystemId: Optional[str] = None + RootDirectory: Optional[str] = None + TransitEncryption: Optional[str] = None + TransitEncryptionPort: Optional[int] = None + +class AwsEcsTaskVolumeDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Host: Optional[AwsEcsTaskVolumeHostDetailsTypeDef] = None + +class AwsEfsAccessPointRootDirectoryDetailsTypeDef(BaseModel): + CreationInfo: Optional[AwsEfsAccessPointRootDirectoryCreationInfoDetailsTypeDef] = None + Path: Optional[str] = None + +class AwsEksClusterLoggingDetailsExtraOutputTypeDef(BaseModel): + ClusterLogging: Optional[ List[AwsEksClusterLoggingClusterLoggingDetailsExtraOutputTypeDef] ] = None + +class AwsEksClusterLoggingDetailsOutputTypeDef(BaseModel): + ClusterLogging: Optional[List[AwsEksClusterLoggingClusterLoggingDetailsOutputTypeDef]] = None + +class AwsEksClusterLoggingDetailsTypeDef(BaseModel): + ClusterLogging: Optional[Sequence[AwsEksClusterLoggingClusterLoggingDetailsTypeDef]] = None + +class AwsElasticBeanstalkEnvironmentDetailsExtraOutputTypeDef(BaseModel): + ApplicationName: Optional[str] = None + Cname: Optional[str] = None + DateCreated: Optional[str] = None + DateUpdated: Optional[str] = None + Description: Optional[str] = None + EndpointUrl: Optional[str] = None + EnvironmentArn: Optional[str] = None + EnvironmentId: Optional[str] = None + EnvironmentLinks: Optional[List[AwsElasticBeanstalkEnvironmentEnvironmentLinkTypeDef]] = None + EnvironmentName: Optional[str] = None + OptionSettings: Optional[List[AwsElasticBeanstalkEnvironmentOptionSettingTypeDef]] = None + PlatformArn: Optional[str] = None + SolutionStackName: Optional[str] = None + Status: Optional[str] = None + Tier: Optional[AwsElasticBeanstalkEnvironmentTierTypeDef] = None + VersionLabel: Optional[str] = None + +class AwsElasticBeanstalkEnvironmentDetailsOutputTypeDef(BaseModel): + ApplicationName: Optional[str] = None + Cname: Optional[str] = None + DateCreated: Optional[str] = None + DateUpdated: Optional[str] = None + Description: Optional[str] = None + EndpointUrl: Optional[str] = None + EnvironmentArn: Optional[str] = None + EnvironmentId: Optional[str] = None + EnvironmentLinks: Optional[List[AwsElasticBeanstalkEnvironmentEnvironmentLinkTypeDef]] = None + EnvironmentName: Optional[str] = None + OptionSettings: Optional[List[AwsElasticBeanstalkEnvironmentOptionSettingTypeDef]] = None + PlatformArn: Optional[str] = None + SolutionStackName: Optional[str] = None + Status: Optional[str] = None + Tier: Optional[AwsElasticBeanstalkEnvironmentTierTypeDef] = None + VersionLabel: Optional[str] = None + +class AwsElasticBeanstalkEnvironmentDetailsTypeDef(BaseModel): + ApplicationName: Optional[str] = None + Cname: Optional[str] = None + DateCreated: Optional[str] = None + DateUpdated: Optional[str] = None + Description: Optional[str] = None + EndpointUrl: Optional[str] = None + EnvironmentArn: Optional[str] = None + EnvironmentId: Optional[str] = None + EnvironmentLinks: Optional[ Sequence[AwsElasticBeanstalkEnvironmentEnvironmentLinkTypeDef] ] = None + EnvironmentName: Optional[str] = None + OptionSettings: Optional[Sequence[AwsElasticBeanstalkEnvironmentOptionSettingTypeDef]] = None + PlatformArn: Optional[str] = None + SolutionStackName: Optional[str] = None + Status: Optional[str] = None + Tier: Optional[AwsElasticBeanstalkEnvironmentTierTypeDef] = None + VersionLabel: Optional[str] = None + +class AwsElasticsearchDomainElasticsearchClusterConfigDetailsTypeDef(BaseModel): + DedicatedMasterCount: Optional[int] = None + DedicatedMasterEnabled: Optional[bool] = None + DedicatedMasterType: Optional[str] = None + InstanceCount: Optional[int] = None + InstanceType: Optional[str] = None + ZoneAwarenessConfig: Optional[ AwsElasticsearchDomainElasticsearchClusterConfigZoneAwarenessConfigDetailsTypeDef ] = None + ZoneAwarenessEnabled: Optional[bool] = None + +class AwsElasticsearchDomainLogPublishingOptionsTypeDef(BaseModel): + IndexSlowLogs: Optional[AwsElasticsearchDomainLogPublishingOptionsLogConfigTypeDef] = None + SearchSlowLogs: Optional[AwsElasticsearchDomainLogPublishingOptionsLogConfigTypeDef] = None + AuditLogs: Optional[AwsElasticsearchDomainLogPublishingOptionsLogConfigTypeDef] = None + +class AwsElbLoadBalancerPoliciesExtraOutputTypeDef(BaseModel): + AppCookieStickinessPolicies: Optional[List[AwsElbAppCookieStickinessPolicyTypeDef]] = None + LbCookieStickinessPolicies: Optional[List[AwsElbLbCookieStickinessPolicyTypeDef]] = None + OtherPolicies: Optional[List[str]] = None + +class AwsElbLoadBalancerPoliciesOutputTypeDef(BaseModel): + AppCookieStickinessPolicies: Optional[List[AwsElbAppCookieStickinessPolicyTypeDef]] = None + LbCookieStickinessPolicies: Optional[List[AwsElbLbCookieStickinessPolicyTypeDef]] = None + OtherPolicies: Optional[List[str]] = None + +class AwsElbLoadBalancerPoliciesTypeDef(BaseModel): + AppCookieStickinessPolicies: Optional[ Sequence[AwsElbAppCookieStickinessPolicyTypeDef] ] = None + LbCookieStickinessPolicies: Optional[Sequence[AwsElbLbCookieStickinessPolicyTypeDef]] = None + OtherPolicies: Optional[Sequence[str]] = None + +class AwsElbLoadBalancerAttributesExtraOutputTypeDef(BaseModel): + AccessLog: Optional[AwsElbLoadBalancerAccessLogTypeDef] = None + ConnectionDraining: Optional[AwsElbLoadBalancerConnectionDrainingTypeDef] = None + ConnectionSettings: Optional[AwsElbLoadBalancerConnectionSettingsTypeDef] = None + CrossZoneLoadBalancing: Optional[AwsElbLoadBalancerCrossZoneLoadBalancingTypeDef] = None + AdditionalAttributes: Optional[List[AwsElbLoadBalancerAdditionalAttributeTypeDef]] = None + +class AwsElbLoadBalancerAttributesOutputTypeDef(BaseModel): + AccessLog: Optional[AwsElbLoadBalancerAccessLogTypeDef] = None + ConnectionDraining: Optional[AwsElbLoadBalancerConnectionDrainingTypeDef] = None + ConnectionSettings: Optional[AwsElbLoadBalancerConnectionSettingsTypeDef] = None + CrossZoneLoadBalancing: Optional[AwsElbLoadBalancerCrossZoneLoadBalancingTypeDef] = None + AdditionalAttributes: Optional[List[AwsElbLoadBalancerAdditionalAttributeTypeDef]] = None + +class AwsElbLoadBalancerAttributesTypeDef(BaseModel): + AccessLog: Optional[AwsElbLoadBalancerAccessLogTypeDef] = None + ConnectionDraining: Optional[AwsElbLoadBalancerConnectionDrainingTypeDef] = None + ConnectionSettings: Optional[AwsElbLoadBalancerConnectionSettingsTypeDef] = None + CrossZoneLoadBalancing: Optional[AwsElbLoadBalancerCrossZoneLoadBalancingTypeDef] = None + AdditionalAttributes: Optional[Sequence[AwsElbLoadBalancerAdditionalAttributeTypeDef]] = None + +class AwsElbLoadBalancerListenerDescriptionExtraOutputTypeDef(BaseModel): + Listener: Optional[AwsElbLoadBalancerListenerTypeDef] = None + PolicyNames: Optional[List[str]] = None + +class AwsElbLoadBalancerListenerDescriptionOutputTypeDef(BaseModel): + Listener: Optional[AwsElbLoadBalancerListenerTypeDef] = None + PolicyNames: Optional[List[str]] = None + +class AwsElbLoadBalancerListenerDescriptionTypeDef(BaseModel): + Listener: Optional[AwsElbLoadBalancerListenerTypeDef] = None + PolicyNames: Optional[Sequence[str]] = None + +class AwsElbv2LoadBalancerDetailsExtraOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + CanonicalHostedZoneId: Optional[str] = None + CreatedTime: Optional[str] = None + DNSName: Optional[str] = None + IpAddressType: Optional[str] = None + Scheme: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + State: Optional[LoadBalancerStateTypeDef] = None + Type: Optional[str] = None + VpcId: Optional[str] = None + LoadBalancerAttributes: Optional[List[AwsElbv2LoadBalancerAttributeTypeDef]] = None + +class AwsElbv2LoadBalancerDetailsOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[AvailabilityZoneTypeDef]] = None + CanonicalHostedZoneId: Optional[str] = None + CreatedTime: Optional[str] = None + DNSName: Optional[str] = None + IpAddressType: Optional[str] = None + Scheme: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + State: Optional[LoadBalancerStateTypeDef] = None + Type: Optional[str] = None + VpcId: Optional[str] = None + LoadBalancerAttributes: Optional[List[AwsElbv2LoadBalancerAttributeTypeDef]] = None + +class AwsElbv2LoadBalancerDetailsTypeDef(BaseModel): + AvailabilityZones: Optional[Sequence[AvailabilityZoneTypeDef]] = None + CanonicalHostedZoneId: Optional[str] = None + CreatedTime: Optional[str] = None + DNSName: Optional[str] = None + IpAddressType: Optional[str] = None + Scheme: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + State: Optional[LoadBalancerStateTypeDef] = None + Type: Optional[str] = None + VpcId: Optional[str] = None + LoadBalancerAttributes: Optional[Sequence[AwsElbv2LoadBalancerAttributeTypeDef]] = None + +class AwsEventsEndpointRoutingConfigFailoverConfigDetailsTypeDef(BaseModel): + Primary: Optional[AwsEventsEndpointRoutingConfigFailoverConfigPrimaryDetailsTypeDef] = None + Secondary: Optional[ AwsEventsEndpointRoutingConfigFailoverConfigSecondaryDetailsTypeDef ] = None + +class AwsGuardDutyDetectorDataSourcesKubernetesDetailsTypeDef(BaseModel): + AuditLogs: Optional[AwsGuardDutyDetectorDataSourcesKubernetesAuditLogsDetailsTypeDef] = None + +class AwsGuardDutyDetectorDataSourcesMalwareProtectionScanEc2InstanceWithFindingsDetailsTypeDef(BaseModel): + EbsVolumes: Optional[ AwsGuardDutyDetectorDataSourcesMalwareProtectionScanEc2InstanceWithFindingsEbsVolumesDetailsTypeDef ] = None + +class AwsIamAccessKeySessionContextTypeDef(BaseModel): + Attributes: Optional[AwsIamAccessKeySessionContextAttributesTypeDef] = None + SessionIssuer: Optional[AwsIamAccessKeySessionContextSessionIssuerTypeDef] = None + +class AwsIamGroupDetailsExtraOutputTypeDef(BaseModel): + AttachedManagedPolicies: Optional[List[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + GroupPolicyList: Optional[List[AwsIamGroupPolicyTypeDef]] = None + Path: Optional[str] = None + +class AwsIamGroupDetailsOutputTypeDef(BaseModel): + AttachedManagedPolicies: Optional[List[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + GroupPolicyList: Optional[List[AwsIamGroupPolicyTypeDef]] = None + Path: Optional[str] = None + +class AwsIamGroupDetailsTypeDef(BaseModel): + AttachedManagedPolicies: Optional[Sequence[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + GroupId: Optional[str] = None + GroupName: Optional[str] = None + GroupPolicyList: Optional[Sequence[AwsIamGroupPolicyTypeDef]] = None + Path: Optional[str] = None + +class AwsIamInstanceProfileExtraOutputTypeDef(BaseModel): + Arn: Optional[str] = None + CreateDate: Optional[str] = None + InstanceProfileId: Optional[str] = None + InstanceProfileName: Optional[str] = None + Path: Optional[str] = None + Roles: Optional[List[AwsIamInstanceProfileRoleTypeDef]] = None + +class AwsIamInstanceProfileOutputTypeDef(BaseModel): + Arn: Optional[str] = None + CreateDate: Optional[str] = None + InstanceProfileId: Optional[str] = None + InstanceProfileName: Optional[str] = None + Path: Optional[str] = None + Roles: Optional[List[AwsIamInstanceProfileRoleTypeDef]] = None + +class AwsIamInstanceProfileTypeDef(BaseModel): + Arn: Optional[str] = None + CreateDate: Optional[str] = None + InstanceProfileId: Optional[str] = None + InstanceProfileName: Optional[str] = None + Path: Optional[str] = None + Roles: Optional[Sequence[AwsIamInstanceProfileRoleTypeDef]] = None + +class AwsIamPolicyDetailsExtraOutputTypeDef(BaseModel): + AttachmentCount: Optional[int] = None + CreateDate: Optional[str] = None + DefaultVersionId: Optional[str] = None + Description: Optional[str] = None + IsAttachable: Optional[bool] = None + Path: Optional[str] = None + PermissionsBoundaryUsageCount: Optional[int] = None + PolicyId: Optional[str] = None + PolicyName: Optional[str] = None + PolicyVersionList: Optional[List[AwsIamPolicyVersionTypeDef]] = None + UpdateDate: Optional[str] = None + +class AwsIamPolicyDetailsOutputTypeDef(BaseModel): + AttachmentCount: Optional[int] = None + CreateDate: Optional[str] = None + DefaultVersionId: Optional[str] = None + Description: Optional[str] = None + IsAttachable: Optional[bool] = None + Path: Optional[str] = None + PermissionsBoundaryUsageCount: Optional[int] = None + PolicyId: Optional[str] = None + PolicyName: Optional[str] = None + PolicyVersionList: Optional[List[AwsIamPolicyVersionTypeDef]] = None + UpdateDate: Optional[str] = None + +class AwsIamPolicyDetailsTypeDef(BaseModel): + AttachmentCount: Optional[int] = None + CreateDate: Optional[str] = None + DefaultVersionId: Optional[str] = None + Description: Optional[str] = None + IsAttachable: Optional[bool] = None + Path: Optional[str] = None + PermissionsBoundaryUsageCount: Optional[int] = None + PolicyId: Optional[str] = None + PolicyName: Optional[str] = None + PolicyVersionList: Optional[Sequence[AwsIamPolicyVersionTypeDef]] = None + UpdateDate: Optional[str] = None + +class AwsIamUserDetailsExtraOutputTypeDef(BaseModel): + AttachedManagedPolicies: Optional[List[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + GroupList: Optional[List[str]] = None + Path: Optional[str] = None + PermissionsBoundary: Optional[AwsIamPermissionsBoundaryTypeDef] = None + UserId: Optional[str] = None + UserName: Optional[str] = None + UserPolicyList: Optional[List[AwsIamUserPolicyTypeDef]] = None + +class AwsIamUserDetailsOutputTypeDef(BaseModel): + AttachedManagedPolicies: Optional[List[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + GroupList: Optional[List[str]] = None + Path: Optional[str] = None + PermissionsBoundary: Optional[AwsIamPermissionsBoundaryTypeDef] = None + UserId: Optional[str] = None + UserName: Optional[str] = None + UserPolicyList: Optional[List[AwsIamUserPolicyTypeDef]] = None + +class AwsIamUserDetailsTypeDef(BaseModel): + AttachedManagedPolicies: Optional[Sequence[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + GroupList: Optional[Sequence[str]] = None + Path: Optional[str] = None + PermissionsBoundary: Optional[AwsIamPermissionsBoundaryTypeDef] = None + UserId: Optional[str] = None + UserName: Optional[str] = None + UserPolicyList: Optional[Sequence[AwsIamUserPolicyTypeDef]] = None + +class AwsKinesisStreamDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + StreamEncryption: Optional[AwsKinesisStreamStreamEncryptionDetailsTypeDef] = None + ShardCount: Optional[int] = None + RetentionPeriodHours: Optional[int] = None + +class AwsLambdaFunctionEnvironmentExtraOutputTypeDef(BaseModel): + Variables: Optional[Dict[str, str]] = None + Error: Optional[AwsLambdaFunctionEnvironmentErrorTypeDef] = None + +class AwsLambdaFunctionEnvironmentOutputTypeDef(BaseModel): + Variables: Optional[Dict[str, str]] = None + Error: Optional[AwsLambdaFunctionEnvironmentErrorTypeDef] = None + +class AwsLambdaFunctionEnvironmentTypeDef(BaseModel): + Variables: Optional[Mapping[str, str]] = None + Error: Optional[AwsLambdaFunctionEnvironmentErrorTypeDef] = None + +class AwsMskClusterClusterInfoClientAuthenticationSaslDetailsTypeDef(BaseModel): + Iam: Optional[AwsMskClusterClusterInfoClientAuthenticationSaslIamDetailsTypeDef] = None + Scram: Optional[AwsMskClusterClusterInfoClientAuthenticationSaslScramDetailsTypeDef] = None + +class AwsMskClusterClusterInfoEncryptionInfoDetailsTypeDef(BaseModel): + EncryptionInTransit: Optional[ AwsMskClusterClusterInfoEncryptionInfoEncryptionInTransitDetailsTypeDef ] = None + EncryptionAtRest: Optional[ AwsMskClusterClusterInfoEncryptionInfoEncryptionAtRestDetailsTypeDef ] = None + +class AwsNetworkFirewallFirewallDetailsExtraOutputTypeDef(BaseModel): + DeleteProtection: Optional[bool] = None + Description: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallId: Optional[str] = None + FirewallName: Optional[str] = None + FirewallPolicyArn: Optional[str] = None + FirewallPolicyChangeProtection: Optional[bool] = None + SubnetChangeProtection: Optional[bool] = None + SubnetMappings: Optional[List[AwsNetworkFirewallFirewallSubnetMappingsDetailsTypeDef]] = None + VpcId: Optional[str] = None + +class AwsNetworkFirewallFirewallDetailsOutputTypeDef(BaseModel): + DeleteProtection: Optional[bool] = None + Description: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallId: Optional[str] = None + FirewallName: Optional[str] = None + FirewallPolicyArn: Optional[str] = None + FirewallPolicyChangeProtection: Optional[bool] = None + SubnetChangeProtection: Optional[bool] = None + SubnetMappings: Optional[List[AwsNetworkFirewallFirewallSubnetMappingsDetailsTypeDef]] = None + VpcId: Optional[str] = None + +class AwsNetworkFirewallFirewallDetailsTypeDef(BaseModel): + DeleteProtection: Optional[bool] = None + Description: Optional[str] = None + FirewallArn: Optional[str] = None + FirewallId: Optional[str] = None + FirewallName: Optional[str] = None + FirewallPolicyArn: Optional[str] = None + FirewallPolicyChangeProtection: Optional[bool] = None + SubnetChangeProtection: Optional[bool] = None + SubnetMappings: Optional[ Sequence[AwsNetworkFirewallFirewallSubnetMappingsDetailsTypeDef] ] = None + VpcId: Optional[str] = None + +class AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetailsTypeDef(BaseModel): + Enabled: Optional[bool] = None + InternalUserDatabaseEnabled: Optional[bool] = None + MasterUserOptions: Optional[AwsOpenSearchServiceDomainMasterUserOptionsDetailsTypeDef] = None + +class AwsOpenSearchServiceDomainClusterConfigDetailsTypeDef(BaseModel): + InstanceCount: Optional[int] = None + WarmEnabled: Optional[bool] = None + WarmCount: Optional[int] = None + DedicatedMasterEnabled: Optional[bool] = None + ZoneAwarenessConfig: Optional[ AwsOpenSearchServiceDomainClusterConfigZoneAwarenessConfigDetailsTypeDef ] = None + DedicatedMasterCount: Optional[int] = None + InstanceType: Optional[str] = None + WarmType: Optional[str] = None + ZoneAwarenessEnabled: Optional[bool] = None + DedicatedMasterType: Optional[str] = None + +class AwsOpenSearchServiceDomainLogPublishingOptionsDetailsTypeDef(BaseModel): + IndexSlowLogs: Optional[AwsOpenSearchServiceDomainLogPublishingOptionTypeDef] = None + SearchSlowLogs: Optional[AwsOpenSearchServiceDomainLogPublishingOptionTypeDef] = None + AuditLogs: Optional[AwsOpenSearchServiceDomainLogPublishingOptionTypeDef] = None + +class AwsRdsDbClusterDetailsExtraOutputTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AvailabilityZones: Optional[List[str]] = None + BackupRetentionPeriod: Optional[int] = None + DatabaseName: Optional[str] = None + Status: Optional[str] = None + Endpoint: Optional[str] = None + ReaderEndpoint: Optional[str] = None + CustomEndpoints: Optional[List[str]] = None + MultiAz: Optional[bool] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReadReplicaIdentifiers: Optional[List[str]] = None + VpcSecurityGroups: Optional[List[AwsRdsDbInstanceVpcSecurityGroupTypeDef]] = None + HostedZoneId: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterResourceId: Optional[str] = None + AssociatedRoles: Optional[List[AwsRdsDbClusterAssociatedRoleTypeDef]] = None + ClusterCreateTime: Optional[str] = None + EnabledCloudWatchLogsExports: Optional[List[str]] = None + EngineMode: Optional[str] = None + DeletionProtection: Optional[bool] = None + HttpEndpointEnabled: Optional[bool] = None + ActivityStreamStatus: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + CrossAccountClone: Optional[bool] = None + DomainMemberships: Optional[List[AwsRdsDbDomainMembershipTypeDef]] = None + DbClusterParameterGroup: Optional[str] = None + DbSubnetGroup: Optional[str] = None + DbClusterOptionGroupMemberships: Optional[ List[AwsRdsDbClusterOptionGroupMembershipTypeDef] ] = None + DbClusterIdentifier: Optional[str] = None + DbClusterMembers: Optional[List[AwsRdsDbClusterMemberTypeDef]] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + +class AwsRdsDbClusterDetailsOutputTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AvailabilityZones: Optional[List[str]] = None + BackupRetentionPeriod: Optional[int] = None + DatabaseName: Optional[str] = None + Status: Optional[str] = None + Endpoint: Optional[str] = None + ReaderEndpoint: Optional[str] = None + CustomEndpoints: Optional[List[str]] = None + MultiAz: Optional[bool] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReadReplicaIdentifiers: Optional[List[str]] = None + VpcSecurityGroups: Optional[List[AwsRdsDbInstanceVpcSecurityGroupTypeDef]] = None + HostedZoneId: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterResourceId: Optional[str] = None + AssociatedRoles: Optional[List[AwsRdsDbClusterAssociatedRoleTypeDef]] = None + ClusterCreateTime: Optional[str] = None + EnabledCloudWatchLogsExports: Optional[List[str]] = None + EngineMode: Optional[str] = None + DeletionProtection: Optional[bool] = None + HttpEndpointEnabled: Optional[bool] = None + ActivityStreamStatus: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + CrossAccountClone: Optional[bool] = None + DomainMemberships: Optional[List[AwsRdsDbDomainMembershipTypeDef]] = None + DbClusterParameterGroup: Optional[str] = None + DbSubnetGroup: Optional[str] = None + DbClusterOptionGroupMemberships: Optional[ List[AwsRdsDbClusterOptionGroupMembershipTypeDef] ] = None + DbClusterIdentifier: Optional[str] = None + DbClusterMembers: Optional[List[AwsRdsDbClusterMemberTypeDef]] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + +class AwsRdsDbClusterDetailsTypeDef(BaseModel): + AllocatedStorage: Optional[int] = None + AvailabilityZones: Optional[Sequence[str]] = None + BackupRetentionPeriod: Optional[int] = None + DatabaseName: Optional[str] = None + Status: Optional[str] = None + Endpoint: Optional[str] = None + ReaderEndpoint: Optional[str] = None + CustomEndpoints: Optional[Sequence[str]] = None + MultiAz: Optional[bool] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + Port: Optional[int] = None + MasterUsername: Optional[str] = None + PreferredBackupWindow: Optional[str] = None + PreferredMaintenanceWindow: Optional[str] = None + ReadReplicaIdentifiers: Optional[Sequence[str]] = None + VpcSecurityGroups: Optional[Sequence[AwsRdsDbInstanceVpcSecurityGroupTypeDef]] = None + HostedZoneId: Optional[str] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterResourceId: Optional[str] = None + AssociatedRoles: Optional[Sequence[AwsRdsDbClusterAssociatedRoleTypeDef]] = None + ClusterCreateTime: Optional[str] = None + EnabledCloudWatchLogsExports: Optional[Sequence[str]] = None + EngineMode: Optional[str] = None + DeletionProtection: Optional[bool] = None + HttpEndpointEnabled: Optional[bool] = None + ActivityStreamStatus: Optional[str] = None + CopyTagsToSnapshot: Optional[bool] = None + CrossAccountClone: Optional[bool] = None + DomainMemberships: Optional[Sequence[AwsRdsDbDomainMembershipTypeDef]] = None + DbClusterParameterGroup: Optional[str] = None + DbSubnetGroup: Optional[str] = None + DbClusterOptionGroupMemberships: Optional[ Sequence[AwsRdsDbClusterOptionGroupMembershipTypeDef] ] = None + DbClusterIdentifier: Optional[str] = None + DbClusterMembers: Optional[Sequence[AwsRdsDbClusterMemberTypeDef]] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + AutoMinorVersionUpgrade: Optional[bool] = None + +class AwsRdsDbClusterSnapshotDetailsExtraOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + SnapshotCreateTime: Optional[str] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + ClusterCreateTime: Optional[str] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + PercentProgress: Optional[int] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterIdentifier: Optional[str] = None + DbClusterSnapshotIdentifier: Optional[str] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + DbClusterSnapshotAttributes: Optional[ List[AwsRdsDbClusterSnapshotDbClusterSnapshotAttributeExtraOutputTypeDef] ] = None + +class AwsRdsDbClusterSnapshotDetailsOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + SnapshotCreateTime: Optional[str] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + ClusterCreateTime: Optional[str] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + PercentProgress: Optional[int] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterIdentifier: Optional[str] = None + DbClusterSnapshotIdentifier: Optional[str] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + DbClusterSnapshotAttributes: Optional[ List[AwsRdsDbClusterSnapshotDbClusterSnapshotAttributeOutputTypeDef] ] = None + +class AwsRdsDbClusterSnapshotDetailsTypeDef(BaseModel): + AvailabilityZones: Optional[Sequence[str]] = None + SnapshotCreateTime: Optional[str] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + VpcId: Optional[str] = None + ClusterCreateTime: Optional[str] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + PercentProgress: Optional[int] = None + StorageEncrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + DbClusterIdentifier: Optional[str] = None + DbClusterSnapshotIdentifier: Optional[str] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + DbClusterSnapshotAttributes: Optional[ Sequence[AwsRdsDbClusterSnapshotDbClusterSnapshotAttributeTypeDef] ] = None + +class AwsRdsDbSnapshotDetailsExtraOutputTypeDef(BaseModel): + DbSnapshotIdentifier: Optional[str] = None + DbInstanceIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[str] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + VpcId: Optional[str] = None + InstanceCreateTime: Optional[str] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + PercentProgress: Optional[int] = None + SourceRegion: Optional[str] = None + SourceDbSnapshotIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + Timezone: Optional[str] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + ProcessorFeatures: Optional[List[AwsRdsDbProcessorFeatureTypeDef]] = None + DbiResourceId: Optional[str] = None + +class AwsRdsDbSnapshotDetailsOutputTypeDef(BaseModel): + DbSnapshotIdentifier: Optional[str] = None + DbInstanceIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[str] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + VpcId: Optional[str] = None + InstanceCreateTime: Optional[str] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + PercentProgress: Optional[int] = None + SourceRegion: Optional[str] = None + SourceDbSnapshotIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + Timezone: Optional[str] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + ProcessorFeatures: Optional[List[AwsRdsDbProcessorFeatureTypeDef]] = None + DbiResourceId: Optional[str] = None + +class AwsRdsDbSnapshotDetailsTypeDef(BaseModel): + DbSnapshotIdentifier: Optional[str] = None + DbInstanceIdentifier: Optional[str] = None + SnapshotCreateTime: Optional[str] = None + Engine: Optional[str] = None + AllocatedStorage: Optional[int] = None + Status: Optional[str] = None + Port: Optional[int] = None + AvailabilityZone: Optional[str] = None + VpcId: Optional[str] = None + InstanceCreateTime: Optional[str] = None + MasterUsername: Optional[str] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + SnapshotType: Optional[str] = None + Iops: Optional[int] = None + OptionGroupName: Optional[str] = None + PercentProgress: Optional[int] = None + SourceRegion: Optional[str] = None + SourceDbSnapshotIdentifier: Optional[str] = None + StorageType: Optional[str] = None + TdeCredentialArn: Optional[str] = None + Encrypted: Optional[bool] = None + KmsKeyId: Optional[str] = None + Timezone: Optional[str] = None + IamDatabaseAuthenticationEnabled: Optional[bool] = None + ProcessorFeatures: Optional[Sequence[AwsRdsDbProcessorFeatureTypeDef]] = None + DbiResourceId: Optional[str] = None + +class AwsRdsDbPendingModifiedValuesExtraOutputTypeDef(BaseModel): + DbInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUserPassword: Optional[str] = None + Port: Optional[int] = None + BackupRetentionPeriod: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + DbInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + CaCertificateIdentifier: Optional[str] = None + DbSubnetGroupName: Optional[str] = None + PendingCloudWatchLogsExports: Optional[ AwsRdsPendingCloudWatchLogsExportsExtraOutputTypeDef ] = None + ProcessorFeatures: Optional[List[AwsRdsDbProcessorFeatureTypeDef]] = None + +class AwsRdsDbPendingModifiedValuesOutputTypeDef(BaseModel): + DbInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUserPassword: Optional[str] = None + Port: Optional[int] = None + BackupRetentionPeriod: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + DbInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + CaCertificateIdentifier: Optional[str] = None + DbSubnetGroupName: Optional[str] = None + PendingCloudWatchLogsExports: Optional[ AwsRdsPendingCloudWatchLogsExportsOutputTypeDef ] = None + ProcessorFeatures: Optional[List[AwsRdsDbProcessorFeatureTypeDef]] = None + +class AwsRdsDbPendingModifiedValuesTypeDef(BaseModel): + DbInstanceClass: Optional[str] = None + AllocatedStorage: Optional[int] = None + MasterUserPassword: Optional[str] = None + Port: Optional[int] = None + BackupRetentionPeriod: Optional[int] = None + MultiAZ: Optional[bool] = None + EngineVersion: Optional[str] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + DbInstanceIdentifier: Optional[str] = None + StorageType: Optional[str] = None + CaCertificateIdentifier: Optional[str] = None + DbSubnetGroupName: Optional[str] = None + PendingCloudWatchLogsExports: Optional[AwsRdsPendingCloudWatchLogsExportsTypeDef] = None + ProcessorFeatures: Optional[Sequence[AwsRdsDbProcessorFeatureTypeDef]] = None + +class AwsRdsDbSecurityGroupDetailsExtraOutputTypeDef(BaseModel): + DbSecurityGroupArn: Optional[str] = None + DbSecurityGroupDescription: Optional[str] = None + DbSecurityGroupName: Optional[str] = None + Ec2SecurityGroups: Optional[List[AwsRdsDbSecurityGroupEc2SecurityGroupTypeDef]] = None + IpRanges: Optional[List[AwsRdsDbSecurityGroupIpRangeTypeDef]] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + +class AwsRdsDbSecurityGroupDetailsOutputTypeDef(BaseModel): + DbSecurityGroupArn: Optional[str] = None + DbSecurityGroupDescription: Optional[str] = None + DbSecurityGroupName: Optional[str] = None + Ec2SecurityGroups: Optional[List[AwsRdsDbSecurityGroupEc2SecurityGroupTypeDef]] = None + IpRanges: Optional[List[AwsRdsDbSecurityGroupIpRangeTypeDef]] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + +class AwsRdsDbSecurityGroupDetailsTypeDef(BaseModel): + DbSecurityGroupArn: Optional[str] = None + DbSecurityGroupDescription: Optional[str] = None + DbSecurityGroupName: Optional[str] = None + Ec2SecurityGroups: Optional[Sequence[AwsRdsDbSecurityGroupEc2SecurityGroupTypeDef]] = None + IpRanges: Optional[Sequence[AwsRdsDbSecurityGroupIpRangeTypeDef]] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + +class AwsRdsDbSubnetGroupSubnetTypeDef(BaseModel): + SubnetIdentifier: Optional[str] = None + SubnetAvailabilityZone: Optional[AwsRdsDbSubnetGroupSubnetAvailabilityZoneTypeDef] = None + SubnetStatus: Optional[str] = None + +class AwsRedshiftClusterClusterParameterGroupExtraOutputTypeDef(BaseModel): + ClusterParameterStatusList: Optional[ List[AwsRedshiftClusterClusterParameterStatusTypeDef] ] = None + ParameterApplyStatus: Optional[str] = None + ParameterGroupName: Optional[str] = None + +class AwsRedshiftClusterClusterParameterGroupOutputTypeDef(BaseModel): + ClusterParameterStatusList: Optional[ List[AwsRedshiftClusterClusterParameterStatusTypeDef] ] = None + ParameterApplyStatus: Optional[str] = None + ParameterGroupName: Optional[str] = None + +class AwsRedshiftClusterClusterParameterGroupTypeDef(BaseModel): + ClusterParameterStatusList: Optional[ Sequence[AwsRedshiftClusterClusterParameterStatusTypeDef] ] = None + ParameterApplyStatus: Optional[str] = None + ParameterGroupName: Optional[str] = None + +class AwsRoute53HostedZoneObjectDetailsTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Config: Optional[AwsRoute53HostedZoneConfigDetailsTypeDef] = None + +class AwsRoute53QueryLoggingConfigDetailsTypeDef(BaseModel): + CloudWatchLogsLogGroupArn: Optional[CloudWatchLogsLogGroupArnConfigDetailsTypeDef] = None + +class AwsS3AccessPointDetailsTypeDef(BaseModel): + AccessPointArn: Optional[str] = None + Alias: Optional[str] = None + Bucket: Optional[str] = None + BucketAccountId: Optional[str] = None + Name: Optional[str] = None + NetworkOrigin: Optional[str] = None + PublicAccessBlockConfiguration: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + VpcConfiguration: Optional[AwsS3AccessPointVpcConfigurationDetailsTypeDef] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetailsTypeDef(BaseModel): + Prefix: Optional[str] = None + Tag: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsTagDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsS3BucketNotificationConfigurationS3KeyFilterExtraOutputTypeDef(BaseModel): + FilterRules: Optional[ List[AwsS3BucketNotificationConfigurationS3KeyFilterRuleTypeDef] ] = None + +class AwsS3BucketNotificationConfigurationS3KeyFilterOutputTypeDef(BaseModel): + FilterRules: Optional[ List[AwsS3BucketNotificationConfigurationS3KeyFilterRuleTypeDef] ] = None + +class AwsS3BucketNotificationConfigurationS3KeyFilterTypeDef(BaseModel): + FilterRules: Optional[ Sequence[AwsS3BucketNotificationConfigurationS3KeyFilterRuleTypeDef] ] = None + +class AwsS3BucketObjectLockConfigurationRuleDetailsTypeDef(BaseModel): + DefaultRetention: Optional[ AwsS3BucketObjectLockConfigurationRuleDefaultRetentionDetailsTypeDef ] = None + +class AwsS3BucketServerSideEncryptionRuleTypeDef(BaseModel): + ApplyServerSideEncryptionByDefault: Optional[ AwsS3BucketServerSideEncryptionByDefaultTypeDef ] = None + +class AwsS3BucketWebsiteConfigurationRoutingRuleTypeDef(BaseModel): + Condition: Optional[AwsS3BucketWebsiteConfigurationRoutingRuleConditionTypeDef] = None + Redirect: Optional[AwsS3BucketWebsiteConfigurationRoutingRuleRedirectTypeDef] = None + +class AwsSageMakerNotebookInstanceDetailsExtraOutputTypeDef(BaseModel): + AcceleratorTypes: Optional[List[str]] = None + AdditionalCodeRepositories: Optional[List[str]] = None + DefaultCodeRepository: Optional[str] = None + DirectInternetAccess: Optional[str] = None + FailureReason: Optional[str] = None + InstanceMetadataServiceConfiguration: Optional[ AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KmsKeyId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NotebookInstanceArn: Optional[str] = None + NotebookInstanceLifecycleConfigName: Optional[str] = None + NotebookInstanceName: Optional[str] = None + NotebookInstanceStatus: Optional[str] = None + PlatformIdentifier: Optional[str] = None + RoleArn: Optional[str] = None + RootAccess: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SubnetId: Optional[str] = None + Url: Optional[str] = None + VolumeSizeInGB: Optional[int] = None + +class AwsSageMakerNotebookInstanceDetailsOutputTypeDef(BaseModel): + AcceleratorTypes: Optional[List[str]] = None + AdditionalCodeRepositories: Optional[List[str]] = None + DefaultCodeRepository: Optional[str] = None + DirectInternetAccess: Optional[str] = None + FailureReason: Optional[str] = None + InstanceMetadataServiceConfiguration: Optional[ AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KmsKeyId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NotebookInstanceArn: Optional[str] = None + NotebookInstanceLifecycleConfigName: Optional[str] = None + NotebookInstanceName: Optional[str] = None + NotebookInstanceStatus: Optional[str] = None + PlatformIdentifier: Optional[str] = None + RoleArn: Optional[str] = None + RootAccess: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SubnetId: Optional[str] = None + Url: Optional[str] = None + VolumeSizeInGB: Optional[int] = None + +class AwsSageMakerNotebookInstanceDetailsTypeDef(BaseModel): + AcceleratorTypes: Optional[Sequence[str]] = None + AdditionalCodeRepositories: Optional[Sequence[str]] = None + DefaultCodeRepository: Optional[str] = None + DirectInternetAccess: Optional[str] = None + FailureReason: Optional[str] = None + InstanceMetadataServiceConfiguration: Optional[ AwsSageMakerNotebookInstanceMetadataServiceConfigurationDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KmsKeyId: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NotebookInstanceArn: Optional[str] = None + NotebookInstanceLifecycleConfigName: Optional[str] = None + NotebookInstanceName: Optional[str] = None + NotebookInstanceStatus: Optional[str] = None + PlatformIdentifier: Optional[str] = None + RoleArn: Optional[str] = None + RootAccess: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + SubnetId: Optional[str] = None + Url: Optional[str] = None + VolumeSizeInGB: Optional[int] = None + +class AwsSecretsManagerSecretDetailsTypeDef(BaseModel): + RotationRules: Optional[AwsSecretsManagerSecretRotationRulesTypeDef] = None + RotationOccurredWithinFrequency: Optional[bool] = None + KmsKeyId: Optional[str] = None + RotationEnabled: Optional[bool] = None + RotationLambdaArn: Optional[str] = None + Deleted: Optional[bool] = None + Name: Optional[str] = None + Description: Optional[str] = None + +class BatchUpdateFindingsRequestRequestTypeDef(BaseModel): + FindingIdentifiers: Sequence[AwsSecurityFindingIdentifierTypeDef] + Note: Optional[NoteUpdateTypeDef] = None + Severity: Optional[SeverityUpdateTypeDef] = None + VerificationState: Optional[VerificationStateType] = None + Confidence: Optional[int] = None + Criticality: Optional[int] = None + Types: Optional[Sequence[str]] = None + UserDefinedFields: Optional[Mapping[str, str]] = None + Workflow: Optional[WorkflowUpdateTypeDef] = None + RelatedFindings: Optional[Sequence[RelatedFindingTypeDef]] = None + +class BatchUpdateFindingsUnprocessedFindingTypeDef(BaseModel): + FindingIdentifier: AwsSecurityFindingIdentifierTypeDef + ErrorCode: str + ErrorMessage: str + +class AwsSnsTopicDetailsExtraOutputTypeDef(BaseModel): + KmsMasterKeyId: Optional[str] = None + Subscription: Optional[List[AwsSnsTopicSubscriptionTypeDef]] = None + TopicName: Optional[str] = None + Owner: Optional[str] = None + SqsSuccessFeedbackRoleArn: Optional[str] = None + SqsFailureFeedbackRoleArn: Optional[str] = None + ApplicationSuccessFeedbackRoleArn: Optional[str] = None + FirehoseSuccessFeedbackRoleArn: Optional[str] = None + FirehoseFailureFeedbackRoleArn: Optional[str] = None + HttpSuccessFeedbackRoleArn: Optional[str] = None + HttpFailureFeedbackRoleArn: Optional[str] = None + +class AwsSnsTopicDetailsOutputTypeDef(BaseModel): + KmsMasterKeyId: Optional[str] = None + Subscription: Optional[List[AwsSnsTopicSubscriptionTypeDef]] = None + TopicName: Optional[str] = None + Owner: Optional[str] = None + SqsSuccessFeedbackRoleArn: Optional[str] = None + SqsFailureFeedbackRoleArn: Optional[str] = None + ApplicationSuccessFeedbackRoleArn: Optional[str] = None + FirehoseSuccessFeedbackRoleArn: Optional[str] = None + FirehoseFailureFeedbackRoleArn: Optional[str] = None + HttpSuccessFeedbackRoleArn: Optional[str] = None + HttpFailureFeedbackRoleArn: Optional[str] = None + +class AwsSnsTopicDetailsTypeDef(BaseModel): + KmsMasterKeyId: Optional[str] = None + Subscription: Optional[Sequence[AwsSnsTopicSubscriptionTypeDef]] = None + TopicName: Optional[str] = None + Owner: Optional[str] = None + SqsSuccessFeedbackRoleArn: Optional[str] = None + SqsFailureFeedbackRoleArn: Optional[str] = None + ApplicationSuccessFeedbackRoleArn: Optional[str] = None + FirehoseSuccessFeedbackRoleArn: Optional[str] = None + FirehoseFailureFeedbackRoleArn: Optional[str] = None + HttpSuccessFeedbackRoleArn: Optional[str] = None + HttpFailureFeedbackRoleArn: Optional[str] = None + +class AwsSsmPatchTypeDef(BaseModel): + ComplianceSummary: Optional[AwsSsmComplianceSummaryTypeDef] = None + +class AwsStepFunctionStateMachineLoggingConfigurationDestinationsDetailsTypeDef(BaseModel): + CloudWatchLogsLogGroup: Optional[ AwsStepFunctionStateMachineLoggingConfigurationDestinationsCloudWatchLogsLogGroupDetailsTypeDef ] = None + +class AwsWafRateBasedRuleDetailsExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RateKey: Optional[str] = None + RateLimit: Optional[int] = None + RuleId: Optional[str] = None + MatchPredicates: Optional[List[AwsWafRateBasedRuleMatchPredicateTypeDef]] = None + +class AwsWafRateBasedRuleDetailsOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RateKey: Optional[str] = None + RateLimit: Optional[int] = None + RuleId: Optional[str] = None + MatchPredicates: Optional[List[AwsWafRateBasedRuleMatchPredicateTypeDef]] = None + +class AwsWafRateBasedRuleDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RateKey: Optional[str] = None + RateLimit: Optional[int] = None + RuleId: Optional[str] = None + MatchPredicates: Optional[Sequence[AwsWafRateBasedRuleMatchPredicateTypeDef]] = None + +class AwsWafRegionalRateBasedRuleDetailsExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RateKey: Optional[str] = None + RateLimit: Optional[int] = None + RuleId: Optional[str] = None + MatchPredicates: Optional[List[AwsWafRegionalRateBasedRuleMatchPredicateTypeDef]] = None + +class AwsWafRegionalRateBasedRuleDetailsOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RateKey: Optional[str] = None + RateLimit: Optional[int] = None + RuleId: Optional[str] = None + MatchPredicates: Optional[List[AwsWafRegionalRateBasedRuleMatchPredicateTypeDef]] = None + +class AwsWafRegionalRateBasedRuleDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RateKey: Optional[str] = None + RateLimit: Optional[int] = None + RuleId: Optional[str] = None + MatchPredicates: Optional[Sequence[AwsWafRegionalRateBasedRuleMatchPredicateTypeDef]] = None + +class AwsWafRegionalRuleDetailsExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + PredicateList: Optional[List[AwsWafRegionalRulePredicateListDetailsTypeDef]] = None + RuleId: Optional[str] = None + +class AwsWafRegionalRuleDetailsOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + PredicateList: Optional[List[AwsWafRegionalRulePredicateListDetailsTypeDef]] = None + RuleId: Optional[str] = None + +class AwsWafRegionalRuleDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + PredicateList: Optional[Sequence[AwsWafRegionalRulePredicateListDetailsTypeDef]] = None + RuleId: Optional[str] = None + +class AwsWafRegionalRuleGroupRulesDetailsTypeDef(BaseModel): + Action: Optional[AwsWafRegionalRuleGroupRulesActionDetailsTypeDef] = None + Priority: Optional[int] = None + RuleId: Optional[str] = None + Type: Optional[str] = None + +class AwsWafRegionalWebAclRulesListDetailsTypeDef(BaseModel): + Action: Optional[AwsWafRegionalWebAclRulesListActionDetailsTypeDef] = None + OverrideAction: Optional[AwsWafRegionalWebAclRulesListOverrideActionDetailsTypeDef] = None + Priority: Optional[int] = None + RuleId: Optional[str] = None + Type: Optional[str] = None + +class AwsWafRuleDetailsExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + PredicateList: Optional[List[AwsWafRulePredicateListDetailsTypeDef]] = None + RuleId: Optional[str] = None + +class AwsWafRuleDetailsOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + PredicateList: Optional[List[AwsWafRulePredicateListDetailsTypeDef]] = None + RuleId: Optional[str] = None + +class AwsWafRuleDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + PredicateList: Optional[Sequence[AwsWafRulePredicateListDetailsTypeDef]] = None + RuleId: Optional[str] = None + +class AwsWafRuleGroupRulesDetailsTypeDef(BaseModel): + Action: Optional[AwsWafRuleGroupRulesActionDetailsTypeDef] = None + Priority: Optional[int] = None + RuleId: Optional[str] = None + Type: Optional[str] = None + +class AwsWafWebAclRuleExtraOutputTypeDef(BaseModel): + Action: Optional[WafActionTypeDef] = None + ExcludedRules: Optional[List[WafExcludedRuleTypeDef]] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Priority: Optional[int] = None + RuleId: Optional[str] = None + Type: Optional[str] = None + +class AwsWafWebAclRuleOutputTypeDef(BaseModel): + Action: Optional[WafActionTypeDef] = None + ExcludedRules: Optional[List[WafExcludedRuleTypeDef]] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Priority: Optional[int] = None + RuleId: Optional[str] = None + Type: Optional[str] = None + +class AwsWafWebAclRuleTypeDef(BaseModel): + Action: Optional[WafActionTypeDef] = None + ExcludedRules: Optional[Sequence[WafExcludedRuleTypeDef]] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Priority: Optional[int] = None + RuleId: Optional[str] = None + Type: Optional[str] = None + +class AwsWafv2CustomRequestHandlingDetailsExtraOutputTypeDef(BaseModel): + InsertHeaders: Optional[List[AwsWafv2CustomHttpHeaderTypeDef]] = None + +class AwsWafv2CustomRequestHandlingDetailsOutputTypeDef(BaseModel): + InsertHeaders: Optional[List[AwsWafv2CustomHttpHeaderTypeDef]] = None + +class AwsWafv2CustomRequestHandlingDetailsTypeDef(BaseModel): + InsertHeaders: Optional[Sequence[AwsWafv2CustomHttpHeaderTypeDef]] = None + +class AwsWafv2CustomResponseDetailsExtraOutputTypeDef(BaseModel): + CustomResponseBodyKey: Optional[str] = None + ResponseCode: Optional[int] = None + ResponseHeaders: Optional[List[AwsWafv2CustomHttpHeaderTypeDef]] = None + +class AwsWafv2CustomResponseDetailsOutputTypeDef(BaseModel): + CustomResponseBodyKey: Optional[str] = None + ResponseCode: Optional[int] = None + ResponseHeaders: Optional[List[AwsWafv2CustomHttpHeaderTypeDef]] = None + +class AwsWafv2CustomResponseDetailsTypeDef(BaseModel): + CustomResponseBodyKey: Optional[str] = None + ResponseCode: Optional[int] = None + ResponseHeaders: Optional[Sequence[AwsWafv2CustomHttpHeaderTypeDef]] = None + +class AwsWafv2WebAclCaptchaConfigDetailsTypeDef(BaseModel): + ImmunityTimeProperty: Optional[ AwsWafv2WebAclCaptchaConfigImmunityTimePropertyDetailsTypeDef ] = None + +class CreateActionTargetResponseTypeDef(BaseModel): + ActionTargetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAutomationRuleResponseTypeDef(BaseModel): + RuleArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFindingAggregatorResponseTypeDef(BaseModel): + FindingAggregatorArn: str + FindingAggregationRegion: str + RegionLinkingMode: str + Regions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInsightResponseTypeDef(BaseModel): + InsightArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteActionTargetResponseTypeDef(BaseModel): + ActionTargetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInsightResponseTypeDef(BaseModel): + InsightArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeActionTargetsResponseTypeDef(BaseModel): + ActionTargets: List[ActionTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeHubResponseTypeDef(BaseModel): + HubArn: str + SubscribedAt: str + AutoEnableControls: bool + ControlFindingGenerator: ControlFindingGeneratorType + ResponseMetadata: ResponseMetadataTypeDef + +class EnableImportFindingsForProductResponseTypeDef(BaseModel): + ProductSubscriptionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfigurationPolicyAssociationResponseTypeDef(BaseModel): + ConfigurationPolicyId: str + TargetId: str + TargetType: TargetTypeType + AssociationType: AssociationTypeType + UpdatedAt: datetime + AssociationStatus: ConfigurationPolicyAssociationStatusType + AssociationStatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFindingAggregatorResponseTypeDef(BaseModel): + FindingAggregatorArn: str + FindingAggregationRegion: str + RegionLinkingMode: str + Regions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetInvitationsCountResponseTypeDef(BaseModel): + InvitationsCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListAutomationRulesResponseTypeDef(BaseModel): + AutomationRulesMetadata: List[AutomationRulesMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListEnabledProductsForImportResponseTypeDef(BaseModel): + ProductSubscriptions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListOrganizationAdminAccountsResponseTypeDef(BaseModel): + AdminAccounts: List[AdminAccountTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartConfigurationPolicyAssociationResponseTypeDef(BaseModel): + ConfigurationPolicyId: str + TargetId: str + TargetType: TargetTypeType + AssociationType: AssociationTypeType + UpdatedAt: datetime + AssociationStatus: ConfigurationPolicyAssociationStatusType + AssociationStatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFindingAggregatorResponseTypeDef(BaseModel): + FindingAggregatorArn: str + FindingAggregationRegion: str + RegionLinkingMode: str + Regions: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDeleteAutomationRulesResponseTypeDef(BaseModel): + ProcessedAutomationRules: List[str] + UnprocessedAutomationRules: List[UnprocessedAutomationRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateAutomationRulesResponseTypeDef(BaseModel): + ProcessedAutomationRules: List[str] + UnprocessedAutomationRules: List[UnprocessedAutomationRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchEnableStandardsRequestRequestTypeDef(BaseModel): + StandardsSubscriptionRequests: Sequence[StandardsSubscriptionRequestTypeDef] + +class ListConfigurationPolicyAssociationsResponseTypeDef(BaseModel): + ConfigurationPolicyAssociationSummaries: List[ ConfigurationPolicyAssociationSummaryTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGetStandardsControlAssociationsRequestRequestTypeDef(BaseModel): + StandardsControlAssociationIds: Sequence[StandardsControlAssociationIdTypeDef] + +class UnprocessedStandardsControlAssociationTypeDef(BaseModel): + StandardsControlAssociationId: StandardsControlAssociationIdTypeDef + ErrorCode: UnprocessedErrorCodeType + ErrorReason: Optional[str] = None + +class BatchImportFindingsResponseTypeDef(BaseModel): + FailedCount: int + SuccessCount: int + FailedFindings: List[ImportFindingsErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateStandardsControlAssociationsRequestRequestTypeDef(BaseModel): + StandardsControlAssociationUpdates: Sequence[StandardsControlAssociationUpdateTypeDef] + +class UnprocessedStandardsControlAssociationUpdateTypeDef(BaseModel): + StandardsControlAssociationUpdate: StandardsControlAssociationUpdateTypeDef + ErrorCode: UnprocessedErrorCodeType + ErrorReason: Optional[str] = None + +class VulnerabilityCodeVulnerabilitiesExtraOutputTypeDef(BaseModel): + Cwes: Optional[List[str]] = None + FilePath: Optional[CodeVulnerabilitiesFilePathTypeDef] = None + SourceArn: Optional[str] = None + +class VulnerabilityCodeVulnerabilitiesOutputTypeDef(BaseModel): + Cwes: Optional[List[str]] = None + FilePath: Optional[CodeVulnerabilitiesFilePathTypeDef] = None + SourceArn: Optional[str] = None + +class VulnerabilityCodeVulnerabilitiesTypeDef(BaseModel): + Cwes: Optional[Sequence[str]] = None + FilePath: Optional[CodeVulnerabilitiesFilePathTypeDef] = None + SourceArn: Optional[str] = None + +class ComplianceExtraOutputTypeDef(BaseModel): + Status: Optional[ComplianceStatusType] = None + RelatedRequirements: Optional[List[str]] = None + StatusReasons: Optional[List[StatusReasonTypeDef]] = None + SecurityControlId: Optional[str] = None + AssociatedStandards: Optional[List[AssociatedStandardTypeDef]] = None + SecurityControlParameters: Optional[List[SecurityControlParameterExtraOutputTypeDef]] = None + +class ComplianceOutputTypeDef(BaseModel): + Status: Optional[ComplianceStatusType] = None + RelatedRequirements: Optional[List[str]] = None + StatusReasons: Optional[List[StatusReasonTypeDef]] = None + SecurityControlId: Optional[str] = None + AssociatedStandards: Optional[List[AssociatedStandardTypeDef]] = None + SecurityControlParameters: Optional[List[SecurityControlParameterOutputTypeDef]] = None + +class ComplianceTypeDef(BaseModel): + Status: Optional[ComplianceStatusType] = None + RelatedRequirements: Optional[Sequence[str]] = None + StatusReasons: Optional[Sequence[StatusReasonTypeDef]] = None + SecurityControlId: Optional[str] = None + AssociatedStandards: Optional[Sequence[AssociatedStandardTypeDef]] = None + SecurityControlParameters: Optional[Sequence[SecurityControlParameterTypeDef]] = None + +class ConfigurationOptionsTypeDef(BaseModel): + Integer: Optional[IntegerConfigurationOptionsTypeDef] = None + IntegerList: Optional[IntegerListConfigurationOptionsTypeDef] = None + Double: Optional[DoubleConfigurationOptionsTypeDef] = None + String: Optional[StringConfigurationOptionsTypeDef] = None + StringList: Optional[StringListConfigurationOptionsTypeDef] = None + Boolean: Optional[BooleanConfigurationOptionsTypeDef] = None + Enum: Optional[EnumConfigurationOptionsTypeDef] = None + EnumList: Optional[EnumListConfigurationOptionsTypeDef] = None + +class ConfigurationPolicyAssociationTypeDef(BaseModel): + Target: Optional[TargetTypeDef] = None + +class GetConfigurationPolicyAssociationRequestRequestTypeDef(BaseModel): + Target: TargetTypeDef + +class StartConfigurationPolicyAssociationRequestRequestTypeDef(BaseModel): + ConfigurationPolicyIdentifier: str + Target: TargetTypeDef + +class StartConfigurationPolicyDisassociationRequestRequestTypeDef(BaseModel): + ConfigurationPolicyIdentifier: str + Target: Optional[TargetTypeDef] = None + +class ListConfigurationPoliciesResponseTypeDef(BaseModel): + ConfigurationPolicySummaries: List[ConfigurationPolicySummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ContainerDetailsExtraOutputTypeDef(BaseModel): + ContainerRuntime: Optional[str] = None + Name: Optional[str] = None + ImageId: Optional[str] = None + ImageName: Optional[str] = None + LaunchedAt: Optional[str] = None + VolumeMounts: Optional[List[VolumeMountTypeDef]] = None + Privileged: Optional[bool] = None + +class ContainerDetailsOutputTypeDef(BaseModel): + ContainerRuntime: Optional[str] = None + Name: Optional[str] = None + ImageId: Optional[str] = None + ImageName: Optional[str] = None + LaunchedAt: Optional[str] = None + VolumeMounts: Optional[List[VolumeMountTypeDef]] = None + Privileged: Optional[bool] = None + +class ContainerDetailsTypeDef(BaseModel): + ContainerRuntime: Optional[str] = None + Name: Optional[str] = None + ImageId: Optional[str] = None + ImageName: Optional[str] = None + LaunchedAt: Optional[str] = None + VolumeMounts: Optional[Sequence[VolumeMountTypeDef]] = None + Privileged: Optional[bool] = None + +class CreateMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[ResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeclineInvitationsResponseTypeDef(BaseModel): + UnprocessedAccounts: List[ResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteInvitationsResponseTypeDef(BaseModel): + UnprocessedAccounts: List[ResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[ResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InviteMembersResponseTypeDef(BaseModel): + UnprocessedAccounts: List[ResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DateFilterTypeDef(BaseModel): + Start: Optional[str] = None + End: Optional[str] = None + DateRange: Optional[DateRangeTypeDef] = None + +class DescribeActionTargetsRequestDescribeActionTargetsPaginateTypeDef(BaseModel): + ActionTargetArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeProductsRequestDescribeProductsPaginateTypeDef(BaseModel): + ProductArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStandardsControlsRequestDescribeStandardsControlsPaginateTypeDef(BaseModel): + StandardsSubscriptionArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeStandardsRequestDescribeStandardsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetEnabledStandardsRequestGetEnabledStandardsPaginateTypeDef(BaseModel): + StandardsSubscriptionArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetInsightsRequestGetInsightsPaginateTypeDef(BaseModel): + InsightArns: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationPoliciesRequestListConfigurationPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConfigurationPolicyAssociationsRequestListConfigurationPolicyAssociationsPaginateTypeDef(BaseModel): + Filters: Optional[AssociationFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnabledProductsForImportRequestListEnabledProductsForImportPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFindingAggregatorsRequestListFindingAggregatorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInvitationsRequestListInvitationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMembersRequestListMembersPaginateTypeDef(BaseModel): + OnlyAssociated: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationAdminAccountsRequestListOrganizationAdminAccountsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityControlDefinitionsRequestListSecurityControlDefinitionsPaginateTypeDef(BaseModel): + StandardsArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStandardsControlAssociationsRequestListStandardsControlAssociationsPaginateTypeDef(BaseModel): + SecurityControlId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOrganizationConfigurationResponseTypeDef(BaseModel): + AutoEnable: bool + MemberAccountLimitReached: bool + AutoEnableStandards: AutoEnableStandardsType + OrganizationConfiguration: OrganizationConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateOrganizationConfigurationRequestRequestTypeDef(BaseModel): + AutoEnable: bool + AutoEnableStandards: Optional[AutoEnableStandardsType] = None + OrganizationConfiguration: Optional[OrganizationConfigurationTypeDef] = None + +class DescribeProductsResponseTypeDef(BaseModel): + Products: List[ProductTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeStandardsControlsResponseTypeDef(BaseModel): + Controls: List[StandardsControlTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ThreatExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Severity: Optional[str] = None + ItemCount: Optional[int] = None + FilePaths: Optional[List[FilePathsTypeDef]] = None + +class ThreatOutputTypeDef(BaseModel): + Name: Optional[str] = None + Severity: Optional[str] = None + ItemCount: Optional[int] = None + FilePaths: Optional[List[FilePathsTypeDef]] = None + +class ThreatTypeDef(BaseModel): + Name: Optional[str] = None + Severity: Optional[str] = None + ItemCount: Optional[int] = None + FilePaths: Optional[Sequence[FilePathsTypeDef]] = None + +class ListFindingAggregatorsResponseTypeDef(BaseModel): + FindingAggregators: List[FindingAggregatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FindingHistoryRecordTypeDef(BaseModel): + FindingIdentifier: Optional[AwsSecurityFindingIdentifierTypeDef] = None + UpdateTime: Optional[datetime] = None + FindingCreated: Optional[bool] = None + UpdateSource: Optional[FindingHistoryUpdateSourceTypeDef] = None + Updates: Optional[List[FindingHistoryUpdateTypeDef]] = None + NextToken: Optional[str] = None + +class FindingProviderFieldsExtraOutputTypeDef(BaseModel): + Confidence: Optional[int] = None + Criticality: Optional[int] = None + RelatedFindings: Optional[List[RelatedFindingTypeDef]] = None + Severity: Optional[FindingProviderSeverityTypeDef] = None + Types: Optional[List[str]] = None + +class FindingProviderFieldsOutputTypeDef(BaseModel): + Confidence: Optional[int] = None + Criticality: Optional[int] = None + RelatedFindings: Optional[List[RelatedFindingTypeDef]] = None + Severity: Optional[FindingProviderSeverityTypeDef] = None + Types: Optional[List[str]] = None + +class FindingProviderFieldsTypeDef(BaseModel): + Confidence: Optional[int] = None + Criticality: Optional[int] = None + RelatedFindings: Optional[Sequence[RelatedFindingTypeDef]] = None + Severity: Optional[FindingProviderSeverityTypeDef] = None + Types: Optional[Sequence[str]] = None + +class GetAdministratorAccountResponseTypeDef(BaseModel): + Administrator: InvitationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMasterAccountResponseTypeDef(BaseModel): + Master: InvitationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInvitationsResponseTypeDef(BaseModel): + Invitations: List[InvitationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetFindingHistoryRequestGetFindingHistoryPaginateTypeDef(BaseModel): + FindingIdentifier: AwsSecurityFindingIdentifierTypeDef + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetFindingHistoryRequestRequestTypeDef(BaseModel): + FindingIdentifier: AwsSecurityFindingIdentifierTypeDef + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetMembersResponseTypeDef(BaseModel): + Members: List[MemberTypeDef] + UnprocessedAccounts: List[ResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMembersResponseTypeDef(BaseModel): + Members: List[MemberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InsightResultsTypeDef(BaseModel): + InsightArn: str + GroupByAttribute: str + ResultValues: List[InsightResultValueTypeDef] + +class ListStandardsControlAssociationsResponseTypeDef(BaseModel): + StandardsControlAssociationSummaries: List[StandardsControlAssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class NetworkPathComponentDetailsExtraOutputTypeDef(BaseModel): + Address: Optional[List[str]] = None + PortRanges: Optional[List[PortRangeTypeDef]] = None + +class NetworkPathComponentDetailsOutputTypeDef(BaseModel): + Address: Optional[List[str]] = None + PortRanges: Optional[List[PortRangeTypeDef]] = None + +class NetworkPathComponentDetailsTypeDef(BaseModel): + Address: Optional[Sequence[str]] = None + PortRanges: Optional[Sequence[PortRangeTypeDef]] = None + +class NetworkTypeDef(BaseModel): + Direction: Optional[NetworkDirectionType] = None + Protocol: Optional[str] = None + OpenPortRange: Optional[PortRangeTypeDef] = None + SourceIpV4: Optional[str] = None + SourceIpV6: Optional[str] = None + SourcePort: Optional[int] = None + SourceDomain: Optional[str] = None + SourceMac: Optional[str] = None + DestinationIpV4: Optional[str] = None + DestinationIpV6: Optional[str] = None + DestinationPort: Optional[int] = None + DestinationDomain: Optional[str] = None + +class PageTypeDef(BaseModel): + PageNumber: Optional[int] = None + LineRange: Optional[RangeTypeDef] = None + OffsetRange: Optional[RangeTypeDef] = None + +class ParameterConfigurationOutputTypeDef(BaseModel): + ValueType: ParameterValueTypeType + Value: Optional[ParameterValueOutputTypeDef] = None + +class ParameterConfigurationTypeDef(BaseModel): + ValueType: ParameterValueTypeType + Value: Optional[ParameterValueTypeDef] = None + +class RemediationTypeDef(BaseModel): + Recommendation: Optional[RecommendationTypeDef] = None + +class RuleGroupSourceStatefulRulesDetailsExtraOutputTypeDef(BaseModel): + Action: Optional[str] = None + Header: Optional[RuleGroupSourceStatefulRulesHeaderDetailsTypeDef] = None + RuleOptions: Optional[ List[RuleGroupSourceStatefulRulesOptionsDetailsExtraOutputTypeDef] ] = None + +class RuleGroupSourceStatefulRulesDetailsOutputTypeDef(BaseModel): + Action: Optional[str] = None + Header: Optional[RuleGroupSourceStatefulRulesHeaderDetailsTypeDef] = None + RuleOptions: Optional[List[RuleGroupSourceStatefulRulesOptionsDetailsOutputTypeDef]] = None + +class RuleGroupSourceStatefulRulesDetailsTypeDef(BaseModel): + Action: Optional[str] = None + Header: Optional[RuleGroupSourceStatefulRulesHeaderDetailsTypeDef] = None + RuleOptions: Optional[Sequence[RuleGroupSourceStatefulRulesOptionsDetailsTypeDef]] = None + +class RuleGroupSourceStatelessRuleMatchAttributesExtraOutputTypeDef(BaseModel): + DestinationPorts: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesDestinationPortsTypeDef] ] = None + Destinations: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesDestinationsTypeDef] ] = None + Protocols: Optional[List[int]] = None + SourcePorts: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesSourcePortsTypeDef] ] = None + Sources: Optional[List[RuleGroupSourceStatelessRuleMatchAttributesSourcesTypeDef]] = None + TcpFlags: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesTcpFlagsExtraOutputTypeDef] ] = None + +class RuleGroupSourceStatelessRuleMatchAttributesOutputTypeDef(BaseModel): + DestinationPorts: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesDestinationPortsTypeDef] ] = None + Destinations: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesDestinationsTypeDef] ] = None + Protocols: Optional[List[int]] = None + SourcePorts: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesSourcePortsTypeDef] ] = None + Sources: Optional[List[RuleGroupSourceStatelessRuleMatchAttributesSourcesTypeDef]] = None + TcpFlags: Optional[ List[RuleGroupSourceStatelessRuleMatchAttributesTcpFlagsOutputTypeDef] ] = None + +class RuleGroupSourceStatelessRuleMatchAttributesTypeDef(BaseModel): + DestinationPorts: Optional[ Sequence[RuleGroupSourceStatelessRuleMatchAttributesDestinationPortsTypeDef] ] = None + Destinations: Optional[ Sequence[RuleGroupSourceStatelessRuleMatchAttributesDestinationsTypeDef] ] = None + Protocols: Optional[Sequence[int]] = None + SourcePorts: Optional[ Sequence[RuleGroupSourceStatelessRuleMatchAttributesSourcePortsTypeDef] ] = None + Sources: Optional[Sequence[RuleGroupSourceStatelessRuleMatchAttributesSourcesTypeDef]] = None + TcpFlags: Optional[ Sequence[RuleGroupSourceStatelessRuleMatchAttributesTcpFlagsTypeDef] ] = None + +class RuleGroupVariablesExtraOutputTypeDef(BaseModel): + IpSets: Optional[RuleGroupVariablesIpSetsDetailsExtraOutputTypeDef] = None + PortSets: Optional[RuleGroupVariablesPortSetsDetailsExtraOutputTypeDef] = None + +class RuleGroupVariablesOutputTypeDef(BaseModel): + IpSets: Optional[RuleGroupVariablesIpSetsDetailsOutputTypeDef] = None + PortSets: Optional[RuleGroupVariablesPortSetsDetailsOutputTypeDef] = None + +class RuleGroupVariablesTypeDef(BaseModel): + IpSets: Optional[RuleGroupVariablesIpSetsDetailsTypeDef] = None + PortSets: Optional[RuleGroupVariablesPortSetsDetailsTypeDef] = None + +class StandardTypeDef(BaseModel): + StandardsArn: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + EnabledByDefault: Optional[bool] = None + StandardsManagedBy: Optional[StandardsManagedByTypeDef] = None + +class StandardsSubscriptionTypeDef(BaseModel): + StandardsSubscriptionArn: str + StandardsArn: str + StandardsInput: Dict[str, str] + StandardsStatus: StandardsStatusType + StandardsStatusReason: Optional[StandardsStatusReasonTypeDef] = None + +class StatelessCustomPublishMetricActionExtraOutputTypeDef(BaseModel): + Dimensions: Optional[List[StatelessCustomPublishMetricActionDimensionTypeDef]] = None + +class StatelessCustomPublishMetricActionOutputTypeDef(BaseModel): + Dimensions: Optional[List[StatelessCustomPublishMetricActionDimensionTypeDef]] = None + +class StatelessCustomPublishMetricActionTypeDef(BaseModel): + Dimensions: Optional[Sequence[StatelessCustomPublishMetricActionDimensionTypeDef]] = None + +class AwsApiCallActionExtraOutputTypeDef(BaseModel): + Api: Optional[str] = None + ServiceName: Optional[str] = None + CallerType: Optional[str] = None + RemoteIpDetails: Optional[ActionRemoteIpDetailsTypeDef] = None + DomainDetails: Optional[AwsApiCallActionDomainDetailsTypeDef] = None + AffectedResources: Optional[Dict[str, str]] = None + FirstSeen: Optional[str] = None + LastSeen: Optional[str] = None + +class AwsApiCallActionOutputTypeDef(BaseModel): + Api: Optional[str] = None + ServiceName: Optional[str] = None + CallerType: Optional[str] = None + RemoteIpDetails: Optional[ActionRemoteIpDetailsTypeDef] = None + DomainDetails: Optional[AwsApiCallActionDomainDetailsTypeDef] = None + AffectedResources: Optional[Dict[str, str]] = None + FirstSeen: Optional[str] = None + LastSeen: Optional[str] = None + +class AwsApiCallActionTypeDef(BaseModel): + Api: Optional[str] = None + ServiceName: Optional[str] = None + CallerType: Optional[str] = None + RemoteIpDetails: Optional[ActionRemoteIpDetailsTypeDef] = None + DomainDetails: Optional[AwsApiCallActionDomainDetailsTypeDef] = None + AffectedResources: Optional[Mapping[str, str]] = None + FirstSeen: Optional[str] = None + LastSeen: Optional[str] = None + +class NetworkConnectionActionTypeDef(BaseModel): + ConnectionDirection: Optional[str] = None + RemoteIpDetails: Optional[ActionRemoteIpDetailsTypeDef] = None + RemotePortDetails: Optional[ActionRemotePortDetailsTypeDef] = None + LocalPortDetails: Optional[ActionLocalPortDetailsTypeDef] = None + Protocol: Optional[str] = None + Blocked: Optional[bool] = None + +class PortProbeDetailTypeDef(BaseModel): + LocalPortDetails: Optional[ActionLocalPortDetailsTypeDef] = None + LocalIpDetails: Optional[ActionLocalIpDetailsTypeDef] = None + RemoteIpDetails: Optional[ActionRemoteIpDetailsTypeDef] = None + +class AwsEc2RouteTableDetailsExtraOutputTypeDef(BaseModel): + AssociationSet: Optional[List[AssociationSetDetailsTypeDef]] = None + OwnerId: Optional[str] = None + PropagatingVgwSet: Optional[List[PropagatingVgwSetDetailsTypeDef]] = None + RouteTableId: Optional[str] = None + RouteSet: Optional[List[RouteSetDetailsTypeDef]] = None + VpcId: Optional[str] = None + +class AwsEc2RouteTableDetailsOutputTypeDef(BaseModel): + AssociationSet: Optional[List[AssociationSetDetailsTypeDef]] = None + OwnerId: Optional[str] = None + PropagatingVgwSet: Optional[List[PropagatingVgwSetDetailsTypeDef]] = None + RouteTableId: Optional[str] = None + RouteSet: Optional[List[RouteSetDetailsTypeDef]] = None + VpcId: Optional[str] = None + +class AwsEc2RouteTableDetailsTypeDef(BaseModel): + AssociationSet: Optional[Sequence[AssociationSetDetailsTypeDef]] = None + OwnerId: Optional[str] = None + PropagatingVgwSet: Optional[Sequence[PropagatingVgwSetDetailsTypeDef]] = None + RouteTableId: Optional[str] = None + RouteSet: Optional[Sequence[RouteSetDetailsTypeDef]] = None + VpcId: Optional[str] = None + +class AutomationRulesActionOutputTypeDef(BaseModel): + Type: Optional[Literal["FINDING_FIELDS_UPDATE"]] = None + FindingFieldsUpdate: Optional[AutomationRulesFindingFieldsUpdateOutputTypeDef] = None + +class AutomationRulesActionTypeDef(BaseModel): + Type: Optional[Literal["FINDING_FIELDS_UPDATE"]] = None + FindingFieldsUpdate: Optional[AutomationRulesFindingFieldsUpdateTypeDef] = None + +class AwsAmazonMqBrokerDetailsExtraOutputTypeDef(BaseModel): + AuthenticationStrategy: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + BrokerArn: Optional[str] = None + BrokerName: Optional[str] = None + DeploymentMode: Optional[str] = None + EncryptionOptions: Optional[AwsAmazonMqBrokerEncryptionOptionsDetailsTypeDef] = None + EngineType: Optional[str] = None + EngineVersion: Optional[str] = None + HostInstanceType: Optional[str] = None + BrokerId: Optional[str] = None + LdapServerMetadata: Optional[ AwsAmazonMqBrokerLdapServerMetadataDetailsExtraOutputTypeDef ] = None + Logs: Optional[AwsAmazonMqBrokerLogsDetailsTypeDef] = None + MaintenanceWindowStartTime: Optional[ AwsAmazonMqBrokerMaintenanceWindowStartTimeDetailsTypeDef ] = None + PubliclyAccessible: Optional[bool] = None + SecurityGroups: Optional[List[str]] = None + StorageType: Optional[str] = None + SubnetIds: Optional[List[str]] = None + Users: Optional[List[AwsAmazonMqBrokerUsersDetailsTypeDef]] = None + +class AwsAmazonMqBrokerDetailsOutputTypeDef(BaseModel): + AuthenticationStrategy: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + BrokerArn: Optional[str] = None + BrokerName: Optional[str] = None + DeploymentMode: Optional[str] = None + EncryptionOptions: Optional[AwsAmazonMqBrokerEncryptionOptionsDetailsTypeDef] = None + EngineType: Optional[str] = None + EngineVersion: Optional[str] = None + HostInstanceType: Optional[str] = None + BrokerId: Optional[str] = None + LdapServerMetadata: Optional[AwsAmazonMqBrokerLdapServerMetadataDetailsOutputTypeDef] = None + Logs: Optional[AwsAmazonMqBrokerLogsDetailsTypeDef] = None + MaintenanceWindowStartTime: Optional[ AwsAmazonMqBrokerMaintenanceWindowStartTimeDetailsTypeDef ] = None + PubliclyAccessible: Optional[bool] = None + SecurityGroups: Optional[List[str]] = None + StorageType: Optional[str] = None + SubnetIds: Optional[List[str]] = None + Users: Optional[List[AwsAmazonMqBrokerUsersDetailsTypeDef]] = None + +class AwsAmazonMqBrokerDetailsTypeDef(BaseModel): + AuthenticationStrategy: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + BrokerArn: Optional[str] = None + BrokerName: Optional[str] = None + DeploymentMode: Optional[str] = None + EncryptionOptions: Optional[AwsAmazonMqBrokerEncryptionOptionsDetailsTypeDef] = None + EngineType: Optional[str] = None + EngineVersion: Optional[str] = None + HostInstanceType: Optional[str] = None + BrokerId: Optional[str] = None + LdapServerMetadata: Optional[AwsAmazonMqBrokerLdapServerMetadataDetailsTypeDef] = None + Logs: Optional[AwsAmazonMqBrokerLogsDetailsTypeDef] = None + MaintenanceWindowStartTime: Optional[ AwsAmazonMqBrokerMaintenanceWindowStartTimeDetailsTypeDef ] = None + PubliclyAccessible: Optional[bool] = None + SecurityGroups: Optional[Sequence[str]] = None + StorageType: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + Users: Optional[Sequence[AwsAmazonMqBrokerUsersDetailsTypeDef]] = None + +class AwsAppSyncGraphQlApiDetailsExtraOutputTypeDef(BaseModel): + ApiId: Optional[str] = None + Id: Optional[str] = None + OpenIdConnectConfig: Optional[AwsAppSyncGraphQlApiOpenIdConnectConfigDetailsTypeDef] = None + Name: Optional[str] = None + LambdaAuthorizerConfig: Optional[ AwsAppSyncGraphQlApiLambdaAuthorizerConfigDetailsTypeDef ] = None + XrayEnabled: Optional[bool] = None + Arn: Optional[str] = None + UserPoolConfig: Optional[AwsAppSyncGraphQlApiUserPoolConfigDetailsTypeDef] = None + AuthenticationType: Optional[str] = None + LogConfig: Optional[AwsAppSyncGraphQlApiLogConfigDetailsTypeDef] = None + AdditionalAuthenticationProviders: Optional[ List[AwsAppSyncGraphQlApiAdditionalAuthenticationProvidersDetailsTypeDef] ] = None + WafWebAclArn: Optional[str] = None + +class AwsAppSyncGraphQlApiDetailsOutputTypeDef(BaseModel): + ApiId: Optional[str] = None + Id: Optional[str] = None + OpenIdConnectConfig: Optional[AwsAppSyncGraphQlApiOpenIdConnectConfigDetailsTypeDef] = None + Name: Optional[str] = None + LambdaAuthorizerConfig: Optional[ AwsAppSyncGraphQlApiLambdaAuthorizerConfigDetailsTypeDef ] = None + XrayEnabled: Optional[bool] = None + Arn: Optional[str] = None + UserPoolConfig: Optional[AwsAppSyncGraphQlApiUserPoolConfigDetailsTypeDef] = None + AuthenticationType: Optional[str] = None + LogConfig: Optional[AwsAppSyncGraphQlApiLogConfigDetailsTypeDef] = None + AdditionalAuthenticationProviders: Optional[ List[AwsAppSyncGraphQlApiAdditionalAuthenticationProvidersDetailsTypeDef] ] = None + WafWebAclArn: Optional[str] = None + +class AwsAppSyncGraphQlApiDetailsTypeDef(BaseModel): + ApiId: Optional[str] = None + Id: Optional[str] = None + OpenIdConnectConfig: Optional[AwsAppSyncGraphQlApiOpenIdConnectConfigDetailsTypeDef] = None + Name: Optional[str] = None + LambdaAuthorizerConfig: Optional[ AwsAppSyncGraphQlApiLambdaAuthorizerConfigDetailsTypeDef ] = None + XrayEnabled: Optional[bool] = None + Arn: Optional[str] = None + UserPoolConfig: Optional[AwsAppSyncGraphQlApiUserPoolConfigDetailsTypeDef] = None + AuthenticationType: Optional[str] = None + LogConfig: Optional[AwsAppSyncGraphQlApiLogConfigDetailsTypeDef] = None + AdditionalAuthenticationProviders: Optional[ Sequence[AwsAppSyncGraphQlApiAdditionalAuthenticationProvidersDetailsTypeDef] ] = None + WafWebAclArn: Optional[str] = None + +class AwsAthenaWorkGroupConfigurationDetailsTypeDef(BaseModel): + ResultConfiguration: Optional[ AwsAthenaWorkGroupConfigurationResultConfigurationDetailsTypeDef ] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetailsExtraOutputTypeDef(BaseModel): + InstancesDistribution: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetailsTypeDef ] = None + LaunchTemplate: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetailsExtraOutputTypeDef ] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetailsOutputTypeDef(BaseModel): + InstancesDistribution: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetailsTypeDef ] = None + LaunchTemplate: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetailsOutputTypeDef ] = None + +class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetailsTypeDef(BaseModel): + InstancesDistribution: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetailsTypeDef ] = None + LaunchTemplate: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetailsTypeDef ] = None + +class AwsAutoScalingLaunchConfigurationDetailsExtraOutputTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + BlockDeviceMappings: Optional[ List[AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetailsTypeDef] ] = None + ClassicLinkVpcId: Optional[str] = None + ClassicLinkVpcSecurityGroups: Optional[List[str]] = None + CreatedTime: Optional[str] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[str] = None + ImageId: Optional[str] = None + InstanceMonitoring: Optional[ AwsAutoScalingLaunchConfigurationInstanceMonitoringDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LaunchConfigurationName: Optional[str] = None + PlacementTenancy: Optional[str] = None + RamdiskId: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SpotPrice: Optional[str] = None + UserData: Optional[str] = None + MetadataOptions: Optional[AwsAutoScalingLaunchConfigurationMetadataOptionsTypeDef] = None + +class AwsAutoScalingLaunchConfigurationDetailsOutputTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + BlockDeviceMappings: Optional[ List[AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetailsTypeDef] ] = None + ClassicLinkVpcId: Optional[str] = None + ClassicLinkVpcSecurityGroups: Optional[List[str]] = None + CreatedTime: Optional[str] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[str] = None + ImageId: Optional[str] = None + InstanceMonitoring: Optional[ AwsAutoScalingLaunchConfigurationInstanceMonitoringDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LaunchConfigurationName: Optional[str] = None + PlacementTenancy: Optional[str] = None + RamdiskId: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SpotPrice: Optional[str] = None + UserData: Optional[str] = None + MetadataOptions: Optional[AwsAutoScalingLaunchConfigurationMetadataOptionsTypeDef] = None + +class AwsAutoScalingLaunchConfigurationDetailsTypeDef(BaseModel): + AssociatePublicIpAddress: Optional[bool] = None + BlockDeviceMappings: Optional[ Sequence[AwsAutoScalingLaunchConfigurationBlockDeviceMappingsDetailsTypeDef] ] = None + ClassicLinkVpcId: Optional[str] = None + ClassicLinkVpcSecurityGroups: Optional[Sequence[str]] = None + CreatedTime: Optional[str] = None + EbsOptimized: Optional[bool] = None + IamInstanceProfile: Optional[str] = None + ImageId: Optional[str] = None + InstanceMonitoring: Optional[ AwsAutoScalingLaunchConfigurationInstanceMonitoringDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LaunchConfigurationName: Optional[str] = None + PlacementTenancy: Optional[str] = None + RamdiskId: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + SpotPrice: Optional[str] = None + UserData: Optional[str] = None + MetadataOptions: Optional[AwsAutoScalingLaunchConfigurationMetadataOptionsTypeDef] = None + +class AwsBackupBackupPlanRuleDetailsExtraOutputTypeDef(BaseModel): + TargetBackupVault: Optional[str] = None + StartWindowMinutes: Optional[int] = None + ScheduleExpression: Optional[str] = None + RuleName: Optional[str] = None + RuleId: Optional[str] = None + EnableContinuousBackup: Optional[bool] = None + CompletionWindowMinutes: Optional[int] = None + CopyActions: Optional[List[AwsBackupBackupPlanRuleCopyActionsDetailsTypeDef]] = None + Lifecycle: Optional[AwsBackupBackupPlanLifecycleDetailsTypeDef] = None + +class AwsBackupBackupPlanRuleDetailsOutputTypeDef(BaseModel): + TargetBackupVault: Optional[str] = None + StartWindowMinutes: Optional[int] = None + ScheduleExpression: Optional[str] = None + RuleName: Optional[str] = None + RuleId: Optional[str] = None + EnableContinuousBackup: Optional[bool] = None + CompletionWindowMinutes: Optional[int] = None + CopyActions: Optional[List[AwsBackupBackupPlanRuleCopyActionsDetailsTypeDef]] = None + Lifecycle: Optional[AwsBackupBackupPlanLifecycleDetailsTypeDef] = None + +class AwsBackupBackupPlanRuleDetailsTypeDef(BaseModel): + TargetBackupVault: Optional[str] = None + StartWindowMinutes: Optional[int] = None + ScheduleExpression: Optional[str] = None + RuleName: Optional[str] = None + RuleId: Optional[str] = None + EnableContinuousBackup: Optional[bool] = None + CompletionWindowMinutes: Optional[int] = None + CopyActions: Optional[Sequence[AwsBackupBackupPlanRuleCopyActionsDetailsTypeDef]] = None + Lifecycle: Optional[AwsBackupBackupPlanLifecycleDetailsTypeDef] = None + +class AwsCertificateManagerCertificateRenewalSummaryExtraOutputTypeDef(BaseModel): + DomainValidationOptions: Optional[ List[AwsCertificateManagerCertificateDomainValidationOptionExtraOutputTypeDef] ] = None + RenewalStatus: Optional[str] = None + RenewalStatusReason: Optional[str] = None + UpdatedAt: Optional[str] = None + +class AwsCertificateManagerCertificateRenewalSummaryOutputTypeDef(BaseModel): + DomainValidationOptions: Optional[ List[AwsCertificateManagerCertificateDomainValidationOptionOutputTypeDef] ] = None + RenewalStatus: Optional[str] = None + RenewalStatusReason: Optional[str] = None + UpdatedAt: Optional[str] = None + +class AwsCertificateManagerCertificateRenewalSummaryTypeDef(BaseModel): + DomainValidationOptions: Optional[ Sequence[AwsCertificateManagerCertificateDomainValidationOptionTypeDef] ] = None + RenewalStatus: Optional[str] = None + RenewalStatusReason: Optional[str] = None + UpdatedAt: Optional[str] = None + +class AwsCloudFrontDistributionOriginItemExtraOutputTypeDef(BaseModel): + DomainName: Optional[str] = None + Id: Optional[str] = None + OriginPath: Optional[str] = None + S3OriginConfig: Optional[AwsCloudFrontDistributionOriginS3OriginConfigTypeDef] = None + CustomOriginConfig: Optional[ AwsCloudFrontDistributionOriginCustomOriginConfigExtraOutputTypeDef ] = None + +class AwsCloudFrontDistributionOriginItemOutputTypeDef(BaseModel): + DomainName: Optional[str] = None + Id: Optional[str] = None + OriginPath: Optional[str] = None + S3OriginConfig: Optional[AwsCloudFrontDistributionOriginS3OriginConfigTypeDef] = None + CustomOriginConfig: Optional[ AwsCloudFrontDistributionOriginCustomOriginConfigOutputTypeDef ] = None + +class AwsCloudFrontDistributionOriginItemTypeDef(BaseModel): + DomainName: Optional[str] = None + Id: Optional[str] = None + OriginPath: Optional[str] = None + S3OriginConfig: Optional[AwsCloudFrontDistributionOriginS3OriginConfigTypeDef] = None + CustomOriginConfig: Optional[AwsCloudFrontDistributionOriginCustomOriginConfigTypeDef] = None + +class AwsCloudFrontDistributionOriginGroupExtraOutputTypeDef(BaseModel): + FailoverCriteria: Optional[ AwsCloudFrontDistributionOriginGroupFailoverExtraOutputTypeDef ] = None + +class AwsCloudFrontDistributionOriginGroupOutputTypeDef(BaseModel): + FailoverCriteria: Optional[AwsCloudFrontDistributionOriginGroupFailoverOutputTypeDef] = None + +class AwsCloudFrontDistributionOriginGroupTypeDef(BaseModel): + FailoverCriteria: Optional[AwsCloudFrontDistributionOriginGroupFailoverTypeDef] = None + +class AwsCodeBuildProjectDetailsExtraOutputTypeDef(BaseModel): + EncryptionKey: Optional[str] = None + Artifacts: Optional[List[AwsCodeBuildProjectArtifactsDetailsTypeDef]] = None + Environment: Optional[AwsCodeBuildProjectEnvironmentExtraOutputTypeDef] = None + Name: Optional[str] = None + Source: Optional[AwsCodeBuildProjectSourceTypeDef] = None + ServiceRole: Optional[str] = None + LogsConfig: Optional[AwsCodeBuildProjectLogsConfigDetailsTypeDef] = None + VpcConfig: Optional[AwsCodeBuildProjectVpcConfigExtraOutputTypeDef] = None + SecondaryArtifacts: Optional[List[AwsCodeBuildProjectArtifactsDetailsTypeDef]] = None + +class AwsCodeBuildProjectDetailsOutputTypeDef(BaseModel): + EncryptionKey: Optional[str] = None + Artifacts: Optional[List[AwsCodeBuildProjectArtifactsDetailsTypeDef]] = None + Environment: Optional[AwsCodeBuildProjectEnvironmentOutputTypeDef] = None + Name: Optional[str] = None + Source: Optional[AwsCodeBuildProjectSourceTypeDef] = None + ServiceRole: Optional[str] = None + LogsConfig: Optional[AwsCodeBuildProjectLogsConfigDetailsTypeDef] = None + VpcConfig: Optional[AwsCodeBuildProjectVpcConfigOutputTypeDef] = None + SecondaryArtifacts: Optional[List[AwsCodeBuildProjectArtifactsDetailsTypeDef]] = None + +class AwsCodeBuildProjectDetailsTypeDef(BaseModel): + EncryptionKey: Optional[str] = None + Artifacts: Optional[Sequence[AwsCodeBuildProjectArtifactsDetailsTypeDef]] = None + Environment: Optional[AwsCodeBuildProjectEnvironmentTypeDef] = None + Name: Optional[str] = None + Source: Optional[AwsCodeBuildProjectSourceTypeDef] = None + ServiceRole: Optional[str] = None + LogsConfig: Optional[AwsCodeBuildProjectLogsConfigDetailsTypeDef] = None + VpcConfig: Optional[AwsCodeBuildProjectVpcConfigTypeDef] = None + SecondaryArtifacts: Optional[Sequence[AwsCodeBuildProjectArtifactsDetailsTypeDef]] = None + +class AwsDynamoDbTableReplicaExtraOutputTypeDef(BaseModel): + GlobalSecondaryIndexes: Optional[ List[AwsDynamoDbTableReplicaGlobalSecondaryIndexTypeDef] ] = None + KmsMasterKeyId: Optional[str] = None + ProvisionedThroughputOverride: Optional[ AwsDynamoDbTableProvisionedThroughputOverrideTypeDef ] = None + RegionName: Optional[str] = None + ReplicaStatus: Optional[str] = None + ReplicaStatusDescription: Optional[str] = None + +class AwsDynamoDbTableReplicaOutputTypeDef(BaseModel): + GlobalSecondaryIndexes: Optional[ List[AwsDynamoDbTableReplicaGlobalSecondaryIndexTypeDef] ] = None + KmsMasterKeyId: Optional[str] = None + ProvisionedThroughputOverride: Optional[ AwsDynamoDbTableProvisionedThroughputOverrideTypeDef ] = None + RegionName: Optional[str] = None + ReplicaStatus: Optional[str] = None + ReplicaStatusDescription: Optional[str] = None + +class AwsDynamoDbTableReplicaTypeDef(BaseModel): + GlobalSecondaryIndexes: Optional[ Sequence[AwsDynamoDbTableReplicaGlobalSecondaryIndexTypeDef] ] = None + KmsMasterKeyId: Optional[str] = None + ProvisionedThroughputOverride: Optional[ AwsDynamoDbTableProvisionedThroughputOverrideTypeDef ] = None + RegionName: Optional[str] = None + ReplicaStatus: Optional[str] = None + ReplicaStatusDescription: Optional[str] = None + +class AwsEc2ClientVpnEndpointDetailsExtraOutputTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + Description: Optional[str] = None + ClientCidrBlock: Optional[str] = None + DnsServer: Optional[List[str]] = None + SplitTunnel: Optional[bool] = None + TransportProtocol: Optional[str] = None + VpnPort: Optional[int] = None + ServerCertificateArn: Optional[str] = None + AuthenticationOptions: Optional[ List[AwsEc2ClientVpnEndpointAuthenticationOptionsDetailsTypeDef] ] = None + ConnectionLogOptions: Optional[ AwsEc2ClientVpnEndpointConnectionLogOptionsDetailsTypeDef ] = None + SecurityGroupIdSet: Optional[List[str]] = None + VpcId: Optional[str] = None + SelfServicePortalUrl: Optional[str] = None + ClientConnectOptions: Optional[ AwsEc2ClientVpnEndpointClientConnectOptionsDetailsTypeDef ] = None + SessionTimeoutHours: Optional[int] = None + ClientLoginBannerOptions: Optional[ AwsEc2ClientVpnEndpointClientLoginBannerOptionsDetailsTypeDef ] = None + +class AwsEc2ClientVpnEndpointDetailsOutputTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + Description: Optional[str] = None + ClientCidrBlock: Optional[str] = None + DnsServer: Optional[List[str]] = None + SplitTunnel: Optional[bool] = None + TransportProtocol: Optional[str] = None + VpnPort: Optional[int] = None + ServerCertificateArn: Optional[str] = None + AuthenticationOptions: Optional[ List[AwsEc2ClientVpnEndpointAuthenticationOptionsDetailsTypeDef] ] = None + ConnectionLogOptions: Optional[ AwsEc2ClientVpnEndpointConnectionLogOptionsDetailsTypeDef ] = None + SecurityGroupIdSet: Optional[List[str]] = None + VpcId: Optional[str] = None + SelfServicePortalUrl: Optional[str] = None + ClientConnectOptions: Optional[ AwsEc2ClientVpnEndpointClientConnectOptionsDetailsTypeDef ] = None + SessionTimeoutHours: Optional[int] = None + ClientLoginBannerOptions: Optional[ AwsEc2ClientVpnEndpointClientLoginBannerOptionsDetailsTypeDef ] = None + +class AwsEc2ClientVpnEndpointDetailsTypeDef(BaseModel): + ClientVpnEndpointId: Optional[str] = None + Description: Optional[str] = None + ClientCidrBlock: Optional[str] = None + DnsServer: Optional[Sequence[str]] = None + SplitTunnel: Optional[bool] = None + TransportProtocol: Optional[str] = None + VpnPort: Optional[int] = None + ServerCertificateArn: Optional[str] = None + AuthenticationOptions: Optional[ Sequence[AwsEc2ClientVpnEndpointAuthenticationOptionsDetailsTypeDef] ] = None + ConnectionLogOptions: Optional[ AwsEc2ClientVpnEndpointConnectionLogOptionsDetailsTypeDef ] = None + SecurityGroupIdSet: Optional[Sequence[str]] = None + VpcId: Optional[str] = None + SelfServicePortalUrl: Optional[str] = None + ClientConnectOptions: Optional[ AwsEc2ClientVpnEndpointClientConnectOptionsDetailsTypeDef ] = None + SessionTimeoutHours: Optional[int] = None + ClientLoginBannerOptions: Optional[ AwsEc2ClientVpnEndpointClientLoginBannerOptionsDetailsTypeDef ] = None + +class AwsEc2LaunchTemplateDataDetailsExtraOutputTypeDef(BaseModel): + BlockDeviceMappingSet: Optional[ List[AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetailsTypeDef] ] = None + CapacityReservationSpecification: Optional[ AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetailsTypeDef ] = None + CpuOptions: Optional[AwsEc2LaunchTemplateDataCpuOptionsDetailsTypeDef] = None + CreditSpecification: Optional[ AwsEc2LaunchTemplateDataCreditSpecificationDetailsTypeDef ] = None + DisableApiStop: Optional[bool] = None + DisableApiTermination: Optional[bool] = None + EbsOptimized: Optional[bool] = None + ElasticGpuSpecificationSet: Optional[ List[AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetailsTypeDef] ] = None + ElasticInferenceAcceleratorSet: Optional[ List[AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetailsTypeDef] ] = None + EnclaveOptions: Optional[AwsEc2LaunchTemplateDataEnclaveOptionsDetailsTypeDef] = None + HibernationOptions: Optional[AwsEc2LaunchTemplateDataHibernationOptionsDetailsTypeDef] = None + IamInstanceProfile: Optional[AwsEc2LaunchTemplateDataIamInstanceProfileDetailsTypeDef] = None + ImageId: Optional[str] = None + InstanceInitiatedShutdownBehavior: Optional[str] = None + InstanceMarketOptions: Optional[ AwsEc2LaunchTemplateDataInstanceMarketOptionsDetailsTypeDef ] = None + InstanceRequirements: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsDetailsExtraOutputTypeDef ] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LicenseSet: Optional[List[AwsEc2LaunchTemplateDataLicenseSetDetailsTypeDef]] = None + MaintenanceOptions: Optional[AwsEc2LaunchTemplateDataMaintenanceOptionsDetailsTypeDef] = None + MetadataOptions: Optional[AwsEc2LaunchTemplateDataMetadataOptionsDetailsTypeDef] = None + Monitoring: Optional[AwsEc2LaunchTemplateDataMonitoringDetailsTypeDef] = None + NetworkInterfaceSet: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetDetailsExtraOutputTypeDef] ] = None + Placement: Optional[AwsEc2LaunchTemplateDataPlacementDetailsTypeDef] = None + PrivateDnsNameOptions: Optional[ AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetailsTypeDef ] = None + RamDiskId: Optional[str] = None + SecurityGroupIdSet: Optional[List[str]] = None + SecurityGroupSet: Optional[List[str]] = None + UserData: Optional[str] = None + +class AwsEc2LaunchTemplateDataDetailsOutputTypeDef(BaseModel): + BlockDeviceMappingSet: Optional[ List[AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetailsTypeDef] ] = None + CapacityReservationSpecification: Optional[ AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetailsTypeDef ] = None + CpuOptions: Optional[AwsEc2LaunchTemplateDataCpuOptionsDetailsTypeDef] = None + CreditSpecification: Optional[ AwsEc2LaunchTemplateDataCreditSpecificationDetailsTypeDef ] = None + DisableApiStop: Optional[bool] = None + DisableApiTermination: Optional[bool] = None + EbsOptimized: Optional[bool] = None + ElasticGpuSpecificationSet: Optional[ List[AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetailsTypeDef] ] = None + ElasticInferenceAcceleratorSet: Optional[ List[AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetailsTypeDef] ] = None + EnclaveOptions: Optional[AwsEc2LaunchTemplateDataEnclaveOptionsDetailsTypeDef] = None + HibernationOptions: Optional[AwsEc2LaunchTemplateDataHibernationOptionsDetailsTypeDef] = None + IamInstanceProfile: Optional[AwsEc2LaunchTemplateDataIamInstanceProfileDetailsTypeDef] = None + ImageId: Optional[str] = None + InstanceInitiatedShutdownBehavior: Optional[str] = None + InstanceMarketOptions: Optional[ AwsEc2LaunchTemplateDataInstanceMarketOptionsDetailsTypeDef ] = None + InstanceRequirements: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsDetailsOutputTypeDef ] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LicenseSet: Optional[List[AwsEc2LaunchTemplateDataLicenseSetDetailsTypeDef]] = None + MaintenanceOptions: Optional[AwsEc2LaunchTemplateDataMaintenanceOptionsDetailsTypeDef] = None + MetadataOptions: Optional[AwsEc2LaunchTemplateDataMetadataOptionsDetailsTypeDef] = None + Monitoring: Optional[AwsEc2LaunchTemplateDataMonitoringDetailsTypeDef] = None + NetworkInterfaceSet: Optional[ List[AwsEc2LaunchTemplateDataNetworkInterfaceSetDetailsOutputTypeDef] ] = None + Placement: Optional[AwsEc2LaunchTemplateDataPlacementDetailsTypeDef] = None + PrivateDnsNameOptions: Optional[ AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetailsTypeDef ] = None + RamDiskId: Optional[str] = None + SecurityGroupIdSet: Optional[List[str]] = None + SecurityGroupSet: Optional[List[str]] = None + UserData: Optional[str] = None + +class AwsEc2LaunchTemplateDataDetailsTypeDef(BaseModel): + BlockDeviceMappingSet: Optional[ Sequence[AwsEc2LaunchTemplateDataBlockDeviceMappingSetDetailsTypeDef] ] = None + CapacityReservationSpecification: Optional[ AwsEc2LaunchTemplateDataCapacityReservationSpecificationDetailsTypeDef ] = None + CpuOptions: Optional[AwsEc2LaunchTemplateDataCpuOptionsDetailsTypeDef] = None + CreditSpecification: Optional[ AwsEc2LaunchTemplateDataCreditSpecificationDetailsTypeDef ] = None + DisableApiStop: Optional[bool] = None + DisableApiTermination: Optional[bool] = None + EbsOptimized: Optional[bool] = None + ElasticGpuSpecificationSet: Optional[ Sequence[AwsEc2LaunchTemplateDataElasticGpuSpecificationSetDetailsTypeDef] ] = None + ElasticInferenceAcceleratorSet: Optional[ Sequence[AwsEc2LaunchTemplateDataElasticInferenceAcceleratorSetDetailsTypeDef] ] = None + EnclaveOptions: Optional[AwsEc2LaunchTemplateDataEnclaveOptionsDetailsTypeDef] = None + HibernationOptions: Optional[AwsEc2LaunchTemplateDataHibernationOptionsDetailsTypeDef] = None + IamInstanceProfile: Optional[AwsEc2LaunchTemplateDataIamInstanceProfileDetailsTypeDef] = None + ImageId: Optional[str] = None + InstanceInitiatedShutdownBehavior: Optional[str] = None + InstanceMarketOptions: Optional[ AwsEc2LaunchTemplateDataInstanceMarketOptionsDetailsTypeDef ] = None + InstanceRequirements: Optional[ AwsEc2LaunchTemplateDataInstanceRequirementsDetailsTypeDef ] = None + InstanceType: Optional[str] = None + KernelId: Optional[str] = None + KeyName: Optional[str] = None + LicenseSet: Optional[Sequence[AwsEc2LaunchTemplateDataLicenseSetDetailsTypeDef]] = None + MaintenanceOptions: Optional[AwsEc2LaunchTemplateDataMaintenanceOptionsDetailsTypeDef] = None + MetadataOptions: Optional[AwsEc2LaunchTemplateDataMetadataOptionsDetailsTypeDef] = None + Monitoring: Optional[AwsEc2LaunchTemplateDataMonitoringDetailsTypeDef] = None + NetworkInterfaceSet: Optional[ Sequence[AwsEc2LaunchTemplateDataNetworkInterfaceSetDetailsTypeDef] ] = None + Placement: Optional[AwsEc2LaunchTemplateDataPlacementDetailsTypeDef] = None + PrivateDnsNameOptions: Optional[ AwsEc2LaunchTemplateDataPrivateDnsNameOptionsDetailsTypeDef ] = None + RamDiskId: Optional[str] = None + SecurityGroupIdSet: Optional[Sequence[str]] = None + SecurityGroupSet: Optional[Sequence[str]] = None + UserData: Optional[str] = None + +class AwsEc2NetworkAclDetailsExtraOutputTypeDef(BaseModel): + IsDefault: Optional[bool] = None + NetworkAclId: Optional[str] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + Associations: Optional[List[AwsEc2NetworkAclAssociationTypeDef]] = None + Entries: Optional[List[AwsEc2NetworkAclEntryTypeDef]] = None + +class AwsEc2NetworkAclDetailsOutputTypeDef(BaseModel): + IsDefault: Optional[bool] = None + NetworkAclId: Optional[str] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + Associations: Optional[List[AwsEc2NetworkAclAssociationTypeDef]] = None + Entries: Optional[List[AwsEc2NetworkAclEntryTypeDef]] = None + +class AwsEc2NetworkAclDetailsTypeDef(BaseModel): + IsDefault: Optional[bool] = None + NetworkAclId: Optional[str] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + Associations: Optional[Sequence[AwsEc2NetworkAclAssociationTypeDef]] = None + Entries: Optional[Sequence[AwsEc2NetworkAclEntryTypeDef]] = None + +class AwsEc2SecurityGroupDetailsExtraOutputTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + IpPermissions: Optional[List[AwsEc2SecurityGroupIpPermissionExtraOutputTypeDef]] = None + IpPermissionsEgress: Optional[List[AwsEc2SecurityGroupIpPermissionExtraOutputTypeDef]] = None + +class AwsEc2SecurityGroupDetailsOutputTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + IpPermissions: Optional[List[AwsEc2SecurityGroupIpPermissionOutputTypeDef]] = None + IpPermissionsEgress: Optional[List[AwsEc2SecurityGroupIpPermissionOutputTypeDef]] = None + +class AwsEc2SecurityGroupDetailsTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupId: Optional[str] = None + OwnerId: Optional[str] = None + VpcId: Optional[str] = None + IpPermissions: Optional[Sequence[AwsEc2SecurityGroupIpPermissionTypeDef]] = None + IpPermissionsEgress: Optional[Sequence[AwsEc2SecurityGroupIpPermissionTypeDef]] = None + +class AwsEc2VpcPeeringConnectionDetailsExtraOutputTypeDef(BaseModel): + AccepterVpcInfo: Optional[AwsEc2VpcPeeringConnectionVpcInfoDetailsExtraOutputTypeDef] = None + ExpirationTime: Optional[str] = None + RequesterVpcInfo: Optional[AwsEc2VpcPeeringConnectionVpcInfoDetailsExtraOutputTypeDef] = None + Status: Optional[AwsEc2VpcPeeringConnectionStatusDetailsTypeDef] = None + VpcPeeringConnectionId: Optional[str] = None + +class AwsEc2VpcPeeringConnectionDetailsOutputTypeDef(BaseModel): + AccepterVpcInfo: Optional[AwsEc2VpcPeeringConnectionVpcInfoDetailsOutputTypeDef] = None + ExpirationTime: Optional[str] = None + RequesterVpcInfo: Optional[AwsEc2VpcPeeringConnectionVpcInfoDetailsOutputTypeDef] = None + Status: Optional[AwsEc2VpcPeeringConnectionStatusDetailsTypeDef] = None + VpcPeeringConnectionId: Optional[str] = None + +class AwsEc2VpcPeeringConnectionDetailsTypeDef(BaseModel): + AccepterVpcInfo: Optional[AwsEc2VpcPeeringConnectionVpcInfoDetailsTypeDef] = None + ExpirationTime: Optional[str] = None + RequesterVpcInfo: Optional[AwsEc2VpcPeeringConnectionVpcInfoDetailsTypeDef] = None + Status: Optional[AwsEc2VpcPeeringConnectionStatusDetailsTypeDef] = None + VpcPeeringConnectionId: Optional[str] = None + +class AwsEc2VpnConnectionDetailsExtraOutputTypeDef(BaseModel): + VpnConnectionId: Optional[str] = None + State: Optional[str] = None + CustomerGatewayId: Optional[str] = None + CustomerGatewayConfiguration: Optional[str] = None + Type: Optional[str] = None + VpnGatewayId: Optional[str] = None + Category: Optional[str] = None + VgwTelemetry: Optional[List[AwsEc2VpnConnectionVgwTelemetryDetailsTypeDef]] = None + Options: Optional[AwsEc2VpnConnectionOptionsDetailsExtraOutputTypeDef] = None + Routes: Optional[List[AwsEc2VpnConnectionRoutesDetailsTypeDef]] = None + TransitGatewayId: Optional[str] = None + +class AwsEc2VpnConnectionDetailsOutputTypeDef(BaseModel): + VpnConnectionId: Optional[str] = None + State: Optional[str] = None + CustomerGatewayId: Optional[str] = None + CustomerGatewayConfiguration: Optional[str] = None + Type: Optional[str] = None + VpnGatewayId: Optional[str] = None + Category: Optional[str] = None + VgwTelemetry: Optional[List[AwsEc2VpnConnectionVgwTelemetryDetailsTypeDef]] = None + Options: Optional[AwsEc2VpnConnectionOptionsDetailsOutputTypeDef] = None + Routes: Optional[List[AwsEc2VpnConnectionRoutesDetailsTypeDef]] = None + TransitGatewayId: Optional[str] = None + +class AwsEc2VpnConnectionDetailsTypeDef(BaseModel): + VpnConnectionId: Optional[str] = None + State: Optional[str] = None + CustomerGatewayId: Optional[str] = None + CustomerGatewayConfiguration: Optional[str] = None + Type: Optional[str] = None + VpnGatewayId: Optional[str] = None + Category: Optional[str] = None + VgwTelemetry: Optional[Sequence[AwsEc2VpnConnectionVgwTelemetryDetailsTypeDef]] = None + Options: Optional[AwsEc2VpnConnectionOptionsDetailsTypeDef] = None + Routes: Optional[Sequence[AwsEc2VpnConnectionRoutesDetailsTypeDef]] = None + TransitGatewayId: Optional[str] = None + +class AwsEcsClusterConfigurationDetailsTypeDef(BaseModel): + ExecuteCommandConfiguration: Optional[ AwsEcsClusterConfigurationExecuteCommandConfigurationDetailsTypeDef ] = None + +class AwsEcsServiceDetailsExtraOutputTypeDef(BaseModel): + CapacityProviderStrategy: Optional[ List[AwsEcsServiceCapacityProviderStrategyDetailsTypeDef] ] = None + Cluster: Optional[str] = None + DeploymentConfiguration: Optional[AwsEcsServiceDeploymentConfigurationDetailsTypeDef] = None + DeploymentController: Optional[AwsEcsServiceDeploymentControllerDetailsTypeDef] = None + DesiredCount: Optional[int] = None + EnableEcsManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + HealthCheckGracePeriodSeconds: Optional[int] = None + LaunchType: Optional[str] = None + LoadBalancers: Optional[List[AwsEcsServiceLoadBalancersDetailsTypeDef]] = None + Name: Optional[str] = None + NetworkConfiguration: Optional[ AwsEcsServiceNetworkConfigurationDetailsExtraOutputTypeDef ] = None + PlacementConstraints: Optional[List[AwsEcsServicePlacementConstraintsDetailsTypeDef]] = None + PlacementStrategies: Optional[List[AwsEcsServicePlacementStrategiesDetailsTypeDef]] = None + PlatformVersion: Optional[str] = None + PropagateTags: Optional[str] = None + Role: Optional[str] = None + SchedulingStrategy: Optional[str] = None + ServiceArn: Optional[str] = None + ServiceName: Optional[str] = None + ServiceRegistries: Optional[List[AwsEcsServiceServiceRegistriesDetailsTypeDef]] = None + TaskDefinition: Optional[str] = None + +class AwsEcsServiceDetailsOutputTypeDef(BaseModel): + CapacityProviderStrategy: Optional[ List[AwsEcsServiceCapacityProviderStrategyDetailsTypeDef] ] = None + Cluster: Optional[str] = None + DeploymentConfiguration: Optional[AwsEcsServiceDeploymentConfigurationDetailsTypeDef] = None + DeploymentController: Optional[AwsEcsServiceDeploymentControllerDetailsTypeDef] = None + DesiredCount: Optional[int] = None + EnableEcsManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + HealthCheckGracePeriodSeconds: Optional[int] = None + LaunchType: Optional[str] = None + LoadBalancers: Optional[List[AwsEcsServiceLoadBalancersDetailsTypeDef]] = None + Name: Optional[str] = None + NetworkConfiguration: Optional[AwsEcsServiceNetworkConfigurationDetailsOutputTypeDef] = None + PlacementConstraints: Optional[List[AwsEcsServicePlacementConstraintsDetailsTypeDef]] = None + PlacementStrategies: Optional[List[AwsEcsServicePlacementStrategiesDetailsTypeDef]] = None + PlatformVersion: Optional[str] = None + PropagateTags: Optional[str] = None + Role: Optional[str] = None + SchedulingStrategy: Optional[str] = None + ServiceArn: Optional[str] = None + ServiceName: Optional[str] = None + ServiceRegistries: Optional[List[AwsEcsServiceServiceRegistriesDetailsTypeDef]] = None + TaskDefinition: Optional[str] = None + +class AwsEcsServiceDetailsTypeDef(BaseModel): + CapacityProviderStrategy: Optional[ Sequence[AwsEcsServiceCapacityProviderStrategyDetailsTypeDef] ] = None + Cluster: Optional[str] = None + DeploymentConfiguration: Optional[AwsEcsServiceDeploymentConfigurationDetailsTypeDef] = None + DeploymentController: Optional[AwsEcsServiceDeploymentControllerDetailsTypeDef] = None + DesiredCount: Optional[int] = None + EnableEcsManagedTags: Optional[bool] = None + EnableExecuteCommand: Optional[bool] = None + HealthCheckGracePeriodSeconds: Optional[int] = None + LaunchType: Optional[str] = None + LoadBalancers: Optional[Sequence[AwsEcsServiceLoadBalancersDetailsTypeDef]] = None + Name: Optional[str] = None + NetworkConfiguration: Optional[AwsEcsServiceNetworkConfigurationDetailsTypeDef] = None + PlacementConstraints: Optional[ Sequence[AwsEcsServicePlacementConstraintsDetailsTypeDef] ] = None + PlacementStrategies: Optional[ Sequence[AwsEcsServicePlacementStrategiesDetailsTypeDef] ] = None + PlatformVersion: Optional[str] = None + PropagateTags: Optional[str] = None + Role: Optional[str] = None + SchedulingStrategy: Optional[str] = None + ServiceArn: Optional[str] = None + ServiceName: Optional[str] = None + ServiceRegistries: Optional[Sequence[AwsEcsServiceServiceRegistriesDetailsTypeDef]] = None + TaskDefinition: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsDetailsExtraOutputTypeDef(BaseModel): + Command: Optional[List[str]] = None + Cpu: Optional[int] = None + DependsOn: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetailsTypeDef] ] = None + DisableNetworking: Optional[bool] = None + DnsSearchDomains: Optional[List[str]] = None + DnsServers: Optional[List[str]] = None + DockerLabels: Optional[Dict[str, str]] = None + DockerSecurityOptions: Optional[List[str]] = None + EntryPoint: Optional[List[str]] = None + Environment: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetailsTypeDef] ] = None + EnvironmentFiles: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetailsTypeDef] ] = None + Essential: Optional[bool] = None + ExtraHosts: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetailsTypeDef] ] = None + FirelensConfiguration: Optional[ AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetailsExtraOutputTypeDef ] = None + HealthCheck: Optional[ AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetailsExtraOutputTypeDef ] = None + Hostname: Optional[str] = None + Image: Optional[str] = None + Interactive: Optional[bool] = None + Links: Optional[List[str]] = None + LinuxParameters: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetailsExtraOutputTypeDef ] = None + LogConfiguration: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetailsExtraOutputTypeDef ] = None + Memory: Optional[int] = None + MemoryReservation: Optional[int] = None + MountPoints: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetailsTypeDef] ] = None + Name: Optional[str] = None + PortMappings: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetailsTypeDef] ] = None + Privileged: Optional[bool] = None + PseudoTerminal: Optional[bool] = None + ReadonlyRootFilesystem: Optional[bool] = None + RepositoryCredentials: Optional[ AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetailsTypeDef ] = None + ResourceRequirements: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetailsTypeDef] ] = None + Secrets: Optional[List[AwsEcsTaskDefinitionContainerDefinitionsSecretsDetailsTypeDef]] = None + StartTimeout: Optional[int] = None + StopTimeout: Optional[int] = None + SystemControls: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetailsTypeDef] ] = None + Ulimits: Optional[List[AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetailsTypeDef]] = None + User: Optional[str] = None + VolumesFrom: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetailsTypeDef] ] = None + WorkingDirectory: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsDetailsOutputTypeDef(BaseModel): + Command: Optional[List[str]] = None + Cpu: Optional[int] = None + DependsOn: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetailsTypeDef] ] = None + DisableNetworking: Optional[bool] = None + DnsSearchDomains: Optional[List[str]] = None + DnsServers: Optional[List[str]] = None + DockerLabels: Optional[Dict[str, str]] = None + DockerSecurityOptions: Optional[List[str]] = None + EntryPoint: Optional[List[str]] = None + Environment: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetailsTypeDef] ] = None + EnvironmentFiles: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetailsTypeDef] ] = None + Essential: Optional[bool] = None + ExtraHosts: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetailsTypeDef] ] = None + FirelensConfiguration: Optional[ AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetailsOutputTypeDef ] = None + HealthCheck: Optional[ AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetailsOutputTypeDef ] = None + Hostname: Optional[str] = None + Image: Optional[str] = None + Interactive: Optional[bool] = None + Links: Optional[List[str]] = None + LinuxParameters: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetailsOutputTypeDef ] = None + LogConfiguration: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetailsOutputTypeDef ] = None + Memory: Optional[int] = None + MemoryReservation: Optional[int] = None + MountPoints: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetailsTypeDef] ] = None + Name: Optional[str] = None + PortMappings: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetailsTypeDef] ] = None + Privileged: Optional[bool] = None + PseudoTerminal: Optional[bool] = None + ReadonlyRootFilesystem: Optional[bool] = None + RepositoryCredentials: Optional[ AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetailsTypeDef ] = None + ResourceRequirements: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetailsTypeDef] ] = None + Secrets: Optional[List[AwsEcsTaskDefinitionContainerDefinitionsSecretsDetailsTypeDef]] = None + StartTimeout: Optional[int] = None + StopTimeout: Optional[int] = None + SystemControls: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetailsTypeDef] ] = None + Ulimits: Optional[List[AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetailsTypeDef]] = None + User: Optional[str] = None + VolumesFrom: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetailsTypeDef] ] = None + WorkingDirectory: Optional[str] = None + +class AwsEcsTaskDefinitionContainerDefinitionsDetailsTypeDef(BaseModel): + Command: Optional[Sequence[str]] = None + Cpu: Optional[int] = None + DependsOn: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsDependsOnDetailsTypeDef] ] = None + DisableNetworking: Optional[bool] = None + DnsSearchDomains: Optional[Sequence[str]] = None + DnsServers: Optional[Sequence[str]] = None + DockerLabels: Optional[Mapping[str, str]] = None + DockerSecurityOptions: Optional[Sequence[str]] = None + EntryPoint: Optional[Sequence[str]] = None + Environment: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsEnvironmentDetailsTypeDef] ] = None + EnvironmentFiles: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsEnvironmentFilesDetailsTypeDef] ] = None + Essential: Optional[bool] = None + ExtraHosts: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsExtraHostsDetailsTypeDef] ] = None + FirelensConfiguration: Optional[ AwsEcsTaskDefinitionContainerDefinitionsFirelensConfigurationDetailsTypeDef ] = None + HealthCheck: Optional[ AwsEcsTaskDefinitionContainerDefinitionsHealthCheckDetailsTypeDef ] = None + Hostname: Optional[str] = None + Image: Optional[str] = None + Interactive: Optional[bool] = None + Links: Optional[Sequence[str]] = None + LinuxParameters: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDetailsTypeDef ] = None + LogConfiguration: Optional[ AwsEcsTaskDefinitionContainerDefinitionsLogConfigurationDetailsTypeDef ] = None + Memory: Optional[int] = None + MemoryReservation: Optional[int] = None + MountPoints: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsMountPointsDetailsTypeDef] ] = None + Name: Optional[str] = None + PortMappings: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsPortMappingsDetailsTypeDef] ] = None + Privileged: Optional[bool] = None + PseudoTerminal: Optional[bool] = None + ReadonlyRootFilesystem: Optional[bool] = None + RepositoryCredentials: Optional[ AwsEcsTaskDefinitionContainerDefinitionsRepositoryCredentialsDetailsTypeDef ] = None + ResourceRequirements: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsResourceRequirementsDetailsTypeDef] ] = None + Secrets: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsSecretsDetailsTypeDef] ] = None + StartTimeout: Optional[int] = None + StopTimeout: Optional[int] = None + SystemControls: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsSystemControlsDetailsTypeDef] ] = None + Ulimits: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsUlimitsDetailsTypeDef] ] = None + User: Optional[str] = None + VolumesFrom: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetailsTypeDef] ] = None + WorkingDirectory: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesDetailsExtraOutputTypeDef(BaseModel): + DockerVolumeConfiguration: Optional[ AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetailsExtraOutputTypeDef ] = None + EfsVolumeConfiguration: Optional[ AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetailsTypeDef ] = None + Host: Optional[AwsEcsTaskDefinitionVolumesHostDetailsTypeDef] = None + Name: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesDetailsOutputTypeDef(BaseModel): + DockerVolumeConfiguration: Optional[ AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetailsOutputTypeDef ] = None + EfsVolumeConfiguration: Optional[ AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetailsTypeDef ] = None + Host: Optional[AwsEcsTaskDefinitionVolumesHostDetailsTypeDef] = None + Name: Optional[str] = None + +class AwsEcsTaskDefinitionVolumesDetailsTypeDef(BaseModel): + DockerVolumeConfiguration: Optional[ AwsEcsTaskDefinitionVolumesDockerVolumeConfigurationDetailsTypeDef ] = None + EfsVolumeConfiguration: Optional[ AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetailsTypeDef ] = None + Host: Optional[AwsEcsTaskDefinitionVolumesHostDetailsTypeDef] = None + Name: Optional[str] = None + +class AwsEcsTaskDetailsExtraOutputTypeDef(BaseModel): + ClusterArn: Optional[str] = None + TaskDefinitionArn: Optional[str] = None + Version: Optional[str] = None + CreatedAt: Optional[str] = None + StartedAt: Optional[str] = None + StartedBy: Optional[str] = None + Group: Optional[str] = None + Volumes: Optional[List[AwsEcsTaskVolumeDetailsTypeDef]] = None + Containers: Optional[List[AwsEcsContainerDetailsExtraOutputTypeDef]] = None + +class AwsEcsTaskDetailsOutputTypeDef(BaseModel): + ClusterArn: Optional[str] = None + TaskDefinitionArn: Optional[str] = None + Version: Optional[str] = None + CreatedAt: Optional[str] = None + StartedAt: Optional[str] = None + StartedBy: Optional[str] = None + Group: Optional[str] = None + Volumes: Optional[List[AwsEcsTaskVolumeDetailsTypeDef]] = None + Containers: Optional[List[AwsEcsContainerDetailsOutputTypeDef]] = None + +class AwsEcsTaskDetailsTypeDef(BaseModel): + ClusterArn: Optional[str] = None + TaskDefinitionArn: Optional[str] = None + Version: Optional[str] = None + CreatedAt: Optional[str] = None + StartedAt: Optional[str] = None + StartedBy: Optional[str] = None + Group: Optional[str] = None + Volumes: Optional[Sequence[AwsEcsTaskVolumeDetailsTypeDef]] = None + Containers: Optional[Sequence[AwsEcsContainerDetailsTypeDef]] = None + +class AwsEfsAccessPointDetailsExtraOutputTypeDef(BaseModel): + AccessPointId: Optional[str] = None + Arn: Optional[str] = None + ClientToken: Optional[str] = None + FileSystemId: Optional[str] = None + PosixUser: Optional[AwsEfsAccessPointPosixUserDetailsExtraOutputTypeDef] = None + RootDirectory: Optional[AwsEfsAccessPointRootDirectoryDetailsTypeDef] = None + +class AwsEfsAccessPointDetailsOutputTypeDef(BaseModel): + AccessPointId: Optional[str] = None + Arn: Optional[str] = None + ClientToken: Optional[str] = None + FileSystemId: Optional[str] = None + PosixUser: Optional[AwsEfsAccessPointPosixUserDetailsOutputTypeDef] = None + RootDirectory: Optional[AwsEfsAccessPointRootDirectoryDetailsTypeDef] = None + +class AwsEfsAccessPointDetailsTypeDef(BaseModel): + AccessPointId: Optional[str] = None + Arn: Optional[str] = None + ClientToken: Optional[str] = None + FileSystemId: Optional[str] = None + PosixUser: Optional[AwsEfsAccessPointPosixUserDetailsTypeDef] = None + RootDirectory: Optional[AwsEfsAccessPointRootDirectoryDetailsTypeDef] = None + +class AwsEksClusterDetailsExtraOutputTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityData: Optional[str] = None + ClusterStatus: Optional[str] = None + Endpoint: Optional[str] = None + Name: Optional[str] = None + ResourcesVpcConfig: Optional[AwsEksClusterResourcesVpcConfigDetailsExtraOutputTypeDef] = None + RoleArn: Optional[str] = None + Version: Optional[str] = None + Logging: Optional[AwsEksClusterLoggingDetailsExtraOutputTypeDef] = None + +class AwsEksClusterDetailsOutputTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityData: Optional[str] = None + ClusterStatus: Optional[str] = None + Endpoint: Optional[str] = None + Name: Optional[str] = None + ResourcesVpcConfig: Optional[AwsEksClusterResourcesVpcConfigDetailsOutputTypeDef] = None + RoleArn: Optional[str] = None + Version: Optional[str] = None + Logging: Optional[AwsEksClusterLoggingDetailsOutputTypeDef] = None + +class AwsEksClusterDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateAuthorityData: Optional[str] = None + ClusterStatus: Optional[str] = None + Endpoint: Optional[str] = None + Name: Optional[str] = None + ResourcesVpcConfig: Optional[AwsEksClusterResourcesVpcConfigDetailsTypeDef] = None + RoleArn: Optional[str] = None + Version: Optional[str] = None + Logging: Optional[AwsEksClusterLoggingDetailsTypeDef] = None + +class AwsElasticsearchDomainDetailsExtraOutputTypeDef(BaseModel): + AccessPolicies: Optional[str] = None + DomainEndpointOptions: Optional[AwsElasticsearchDomainDomainEndpointOptionsTypeDef] = None + DomainId: Optional[str] = None + DomainName: Optional[str] = None + Endpoint: Optional[str] = None + Endpoints: Optional[Dict[str, str]] = None + ElasticsearchVersion: Optional[str] = None + ElasticsearchClusterConfig: Optional[ AwsElasticsearchDomainElasticsearchClusterConfigDetailsTypeDef ] = None + EncryptionAtRestOptions: Optional[ AwsElasticsearchDomainEncryptionAtRestOptionsTypeDef ] = None + LogPublishingOptions: Optional[AwsElasticsearchDomainLogPublishingOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[ AwsElasticsearchDomainNodeToNodeEncryptionOptionsTypeDef ] = None + ServiceSoftwareOptions: Optional[AwsElasticsearchDomainServiceSoftwareOptionsTypeDef] = None + VPCOptions: Optional[AwsElasticsearchDomainVPCOptionsExtraOutputTypeDef] = None + +class AwsElasticsearchDomainDetailsOutputTypeDef(BaseModel): + AccessPolicies: Optional[str] = None + DomainEndpointOptions: Optional[AwsElasticsearchDomainDomainEndpointOptionsTypeDef] = None + DomainId: Optional[str] = None + DomainName: Optional[str] = None + Endpoint: Optional[str] = None + Endpoints: Optional[Dict[str, str]] = None + ElasticsearchVersion: Optional[str] = None + ElasticsearchClusterConfig: Optional[ AwsElasticsearchDomainElasticsearchClusterConfigDetailsTypeDef ] = None + EncryptionAtRestOptions: Optional[ AwsElasticsearchDomainEncryptionAtRestOptionsTypeDef ] = None + LogPublishingOptions: Optional[AwsElasticsearchDomainLogPublishingOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[ AwsElasticsearchDomainNodeToNodeEncryptionOptionsTypeDef ] = None + ServiceSoftwareOptions: Optional[AwsElasticsearchDomainServiceSoftwareOptionsTypeDef] = None + VPCOptions: Optional[AwsElasticsearchDomainVPCOptionsOutputTypeDef] = None + +class AwsElasticsearchDomainDetailsTypeDef(BaseModel): + AccessPolicies: Optional[str] = None + DomainEndpointOptions: Optional[AwsElasticsearchDomainDomainEndpointOptionsTypeDef] = None + DomainId: Optional[str] = None + DomainName: Optional[str] = None + Endpoint: Optional[str] = None + Endpoints: Optional[Mapping[str, str]] = None + ElasticsearchVersion: Optional[str] = None + ElasticsearchClusterConfig: Optional[ AwsElasticsearchDomainElasticsearchClusterConfigDetailsTypeDef ] = None + EncryptionAtRestOptions: Optional[ AwsElasticsearchDomainEncryptionAtRestOptionsTypeDef ] = None + LogPublishingOptions: Optional[AwsElasticsearchDomainLogPublishingOptionsTypeDef] = None + NodeToNodeEncryptionOptions: Optional[ AwsElasticsearchDomainNodeToNodeEncryptionOptionsTypeDef ] = None + ServiceSoftwareOptions: Optional[AwsElasticsearchDomainServiceSoftwareOptionsTypeDef] = None + VPCOptions: Optional[AwsElasticsearchDomainVPCOptionsTypeDef] = None + +class AwsElbLoadBalancerDetailsExtraOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + BackendServerDescriptions: Optional[ List[AwsElbLoadBalancerBackendServerDescriptionExtraOutputTypeDef] ] = None + CanonicalHostedZoneName: Optional[str] = None + CanonicalHostedZoneNameID: Optional[str] = None + CreatedTime: Optional[str] = None + DnsName: Optional[str] = None + HealthCheck: Optional[AwsElbLoadBalancerHealthCheckTypeDef] = None + Instances: Optional[List[AwsElbLoadBalancerInstanceTypeDef]] = None + ListenerDescriptions: Optional[ List[AwsElbLoadBalancerListenerDescriptionExtraOutputTypeDef] ] = None + LoadBalancerAttributes: Optional[AwsElbLoadBalancerAttributesExtraOutputTypeDef] = None + LoadBalancerName: Optional[str] = None + Policies: Optional[AwsElbLoadBalancerPoliciesExtraOutputTypeDef] = None + Scheme: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SourceSecurityGroup: Optional[AwsElbLoadBalancerSourceSecurityGroupTypeDef] = None + Subnets: Optional[List[str]] = None + VpcId: Optional[str] = None + +class AwsElbLoadBalancerDetailsOutputTypeDef(BaseModel): + AvailabilityZones: Optional[List[str]] = None + BackendServerDescriptions: Optional[ List[AwsElbLoadBalancerBackendServerDescriptionOutputTypeDef] ] = None + CanonicalHostedZoneName: Optional[str] = None + CanonicalHostedZoneNameID: Optional[str] = None + CreatedTime: Optional[str] = None + DnsName: Optional[str] = None + HealthCheck: Optional[AwsElbLoadBalancerHealthCheckTypeDef] = None + Instances: Optional[List[AwsElbLoadBalancerInstanceTypeDef]] = None + ListenerDescriptions: Optional[ List[AwsElbLoadBalancerListenerDescriptionOutputTypeDef] ] = None + LoadBalancerAttributes: Optional[AwsElbLoadBalancerAttributesOutputTypeDef] = None + LoadBalancerName: Optional[str] = None + Policies: Optional[AwsElbLoadBalancerPoliciesOutputTypeDef] = None + Scheme: Optional[str] = None + SecurityGroups: Optional[List[str]] = None + SourceSecurityGroup: Optional[AwsElbLoadBalancerSourceSecurityGroupTypeDef] = None + Subnets: Optional[List[str]] = None + VpcId: Optional[str] = None + +class AwsElbLoadBalancerDetailsTypeDef(BaseModel): + AvailabilityZones: Optional[Sequence[str]] = None + BackendServerDescriptions: Optional[ Sequence[AwsElbLoadBalancerBackendServerDescriptionTypeDef] ] = None + CanonicalHostedZoneName: Optional[str] = None + CanonicalHostedZoneNameID: Optional[str] = None + CreatedTime: Optional[str] = None + DnsName: Optional[str] = None + HealthCheck: Optional[AwsElbLoadBalancerHealthCheckTypeDef] = None + Instances: Optional[Sequence[AwsElbLoadBalancerInstanceTypeDef]] = None + ListenerDescriptions: Optional[Sequence[AwsElbLoadBalancerListenerDescriptionTypeDef]] = None + LoadBalancerAttributes: Optional[AwsElbLoadBalancerAttributesTypeDef] = None + LoadBalancerName: Optional[str] = None + Policies: Optional[AwsElbLoadBalancerPoliciesTypeDef] = None + Scheme: Optional[str] = None + SecurityGroups: Optional[Sequence[str]] = None + SourceSecurityGroup: Optional[AwsElbLoadBalancerSourceSecurityGroupTypeDef] = None + Subnets: Optional[Sequence[str]] = None + VpcId: Optional[str] = None + +class AwsEventsEndpointRoutingConfigDetailsTypeDef(BaseModel): + FailoverConfig: Optional[AwsEventsEndpointRoutingConfigFailoverConfigDetailsTypeDef] = None + +class AwsGuardDutyDetectorDataSourcesMalwareProtectionDetailsTypeDef(BaseModel): + ScanEc2InstanceWithFindings: Optional[ AwsGuardDutyDetectorDataSourcesMalwareProtectionScanEc2InstanceWithFindingsDetailsTypeDef ] = None + ServiceRole: Optional[str] = None + +class AwsIamAccessKeyDetailsTypeDef(BaseModel): + UserName: Optional[str] = None + Status: Optional[AwsIamAccessKeyStatusType] = None + CreatedAt: Optional[str] = None + PrincipalId: Optional[str] = None + PrincipalType: Optional[str] = None + PrincipalName: Optional[str] = None + AccountId: Optional[str] = None + AccessKeyId: Optional[str] = None + SessionContext: Optional[AwsIamAccessKeySessionContextTypeDef] = None + +class AwsIamRoleDetailsExtraOutputTypeDef(BaseModel): + AssumeRolePolicyDocument: Optional[str] = None + AttachedManagedPolicies: Optional[List[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + InstanceProfileList: Optional[List[AwsIamInstanceProfileExtraOutputTypeDef]] = None + PermissionsBoundary: Optional[AwsIamPermissionsBoundaryTypeDef] = None + RoleId: Optional[str] = None + RoleName: Optional[str] = None + RolePolicyList: Optional[List[AwsIamRolePolicyTypeDef]] = None + MaxSessionDuration: Optional[int] = None + Path: Optional[str] = None + +class AwsIamRoleDetailsOutputTypeDef(BaseModel): + AssumeRolePolicyDocument: Optional[str] = None + AttachedManagedPolicies: Optional[List[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + InstanceProfileList: Optional[List[AwsIamInstanceProfileOutputTypeDef]] = None + PermissionsBoundary: Optional[AwsIamPermissionsBoundaryTypeDef] = None + RoleId: Optional[str] = None + RoleName: Optional[str] = None + RolePolicyList: Optional[List[AwsIamRolePolicyTypeDef]] = None + MaxSessionDuration: Optional[int] = None + Path: Optional[str] = None + +class AwsIamRoleDetailsTypeDef(BaseModel): + AssumeRolePolicyDocument: Optional[str] = None + AttachedManagedPolicies: Optional[Sequence[AwsIamAttachedManagedPolicyTypeDef]] = None + CreateDate: Optional[str] = None + InstanceProfileList: Optional[Sequence[AwsIamInstanceProfileTypeDef]] = None + PermissionsBoundary: Optional[AwsIamPermissionsBoundaryTypeDef] = None + RoleId: Optional[str] = None + RoleName: Optional[str] = None + RolePolicyList: Optional[Sequence[AwsIamRolePolicyTypeDef]] = None + MaxSessionDuration: Optional[int] = None + Path: Optional[str] = None + +class AwsLambdaFunctionDetailsExtraOutputTypeDef(BaseModel): + Code: Optional[AwsLambdaFunctionCodeTypeDef] = None + CodeSha256: Optional[str] = None + DeadLetterConfig: Optional[AwsLambdaFunctionDeadLetterConfigTypeDef] = None + Environment: Optional[AwsLambdaFunctionEnvironmentExtraOutputTypeDef] = None + FunctionName: Optional[str] = None + Handler: Optional[str] = None + KmsKeyArn: Optional[str] = None + LastModified: Optional[str] = None + Layers: Optional[List[AwsLambdaFunctionLayerTypeDef]] = None + MasterArn: Optional[str] = None + MemorySize: Optional[int] = None + RevisionId: Optional[str] = None + Role: Optional[str] = None + Runtime: Optional[str] = None + Timeout: Optional[int] = None + TracingConfig: Optional[AwsLambdaFunctionTracingConfigTypeDef] = None + VpcConfig: Optional[AwsLambdaFunctionVpcConfigExtraOutputTypeDef] = None + Version: Optional[str] = None + Architectures: Optional[List[str]] = None + PackageType: Optional[str] = None + +class AwsLambdaFunctionDetailsOutputTypeDef(BaseModel): + Code: Optional[AwsLambdaFunctionCodeTypeDef] = None + CodeSha256: Optional[str] = None + DeadLetterConfig: Optional[AwsLambdaFunctionDeadLetterConfigTypeDef] = None + Environment: Optional[AwsLambdaFunctionEnvironmentOutputTypeDef] = None + FunctionName: Optional[str] = None + Handler: Optional[str] = None + KmsKeyArn: Optional[str] = None + LastModified: Optional[str] = None + Layers: Optional[List[AwsLambdaFunctionLayerTypeDef]] = None + MasterArn: Optional[str] = None + MemorySize: Optional[int] = None + RevisionId: Optional[str] = None + Role: Optional[str] = None + Runtime: Optional[str] = None + Timeout: Optional[int] = None + TracingConfig: Optional[AwsLambdaFunctionTracingConfigTypeDef] = None + VpcConfig: Optional[AwsLambdaFunctionVpcConfigOutputTypeDef] = None + Version: Optional[str] = None + Architectures: Optional[List[str]] = None + PackageType: Optional[str] = None + +class AwsLambdaFunctionDetailsTypeDef(BaseModel): + Code: Optional[AwsLambdaFunctionCodeTypeDef] = None + CodeSha256: Optional[str] = None + DeadLetterConfig: Optional[AwsLambdaFunctionDeadLetterConfigTypeDef] = None + Environment: Optional[AwsLambdaFunctionEnvironmentTypeDef] = None + FunctionName: Optional[str] = None + Handler: Optional[str] = None + KmsKeyArn: Optional[str] = None + LastModified: Optional[str] = None + Layers: Optional[Sequence[AwsLambdaFunctionLayerTypeDef]] = None + MasterArn: Optional[str] = None + MemorySize: Optional[int] = None + RevisionId: Optional[str] = None + Role: Optional[str] = None + Runtime: Optional[str] = None + Timeout: Optional[int] = None + TracingConfig: Optional[AwsLambdaFunctionTracingConfigTypeDef] = None + VpcConfig: Optional[AwsLambdaFunctionVpcConfigTypeDef] = None + Version: Optional[str] = None + Architectures: Optional[Sequence[str]] = None + PackageType: Optional[str] = None + +class AwsMskClusterClusterInfoClientAuthenticationDetailsExtraOutputTypeDef(BaseModel): + Sasl: Optional[AwsMskClusterClusterInfoClientAuthenticationSaslDetailsTypeDef] = None + Unauthenticated: Optional[ AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetailsTypeDef ] = None + Tls: Optional[ AwsMskClusterClusterInfoClientAuthenticationTlsDetailsExtraOutputTypeDef ] = None + +class AwsMskClusterClusterInfoClientAuthenticationDetailsOutputTypeDef(BaseModel): + Sasl: Optional[AwsMskClusterClusterInfoClientAuthenticationSaslDetailsTypeDef] = None + Unauthenticated: Optional[ AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetailsTypeDef ] = None + Tls: Optional[AwsMskClusterClusterInfoClientAuthenticationTlsDetailsOutputTypeDef] = None + +class AwsMskClusterClusterInfoClientAuthenticationDetailsTypeDef(BaseModel): + Sasl: Optional[AwsMskClusterClusterInfoClientAuthenticationSaslDetailsTypeDef] = None + Unauthenticated: Optional[ AwsMskClusterClusterInfoClientAuthenticationUnauthenticatedDetailsTypeDef ] = None + Tls: Optional[AwsMskClusterClusterInfoClientAuthenticationTlsDetailsTypeDef] = None + +class AwsOpenSearchServiceDomainDetailsExtraOutputTypeDef(BaseModel): + Arn: Optional[str] = None + AccessPolicies: Optional[str] = None + DomainName: Optional[str] = None + Id: Optional[str] = None + DomainEndpoint: Optional[str] = None + EngineVersion: Optional[str] = None + EncryptionAtRestOptions: Optional[ AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetailsTypeDef ] = None + NodeToNodeEncryptionOptions: Optional[ AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetailsTypeDef ] = None + ServiceSoftwareOptions: Optional[ AwsOpenSearchServiceDomainServiceSoftwareOptionsDetailsTypeDef ] = None + ClusterConfig: Optional[AwsOpenSearchServiceDomainClusterConfigDetailsTypeDef] = None + DomainEndpointOptions: Optional[ AwsOpenSearchServiceDomainDomainEndpointOptionsDetailsTypeDef ] = None + VpcOptions: Optional[AwsOpenSearchServiceDomainVpcOptionsDetailsExtraOutputTypeDef] = None + LogPublishingOptions: Optional[ AwsOpenSearchServiceDomainLogPublishingOptionsDetailsTypeDef ] = None + DomainEndpoints: Optional[Dict[str, str]] = None + AdvancedSecurityOptions: Optional[ AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetailsTypeDef ] = None + +class AwsOpenSearchServiceDomainDetailsOutputTypeDef(BaseModel): + Arn: Optional[str] = None + AccessPolicies: Optional[str] = None + DomainName: Optional[str] = None + Id: Optional[str] = None + DomainEndpoint: Optional[str] = None + EngineVersion: Optional[str] = None + EncryptionAtRestOptions: Optional[ AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetailsTypeDef ] = None + NodeToNodeEncryptionOptions: Optional[ AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetailsTypeDef ] = None + ServiceSoftwareOptions: Optional[ AwsOpenSearchServiceDomainServiceSoftwareOptionsDetailsTypeDef ] = None + ClusterConfig: Optional[AwsOpenSearchServiceDomainClusterConfigDetailsTypeDef] = None + DomainEndpointOptions: Optional[ AwsOpenSearchServiceDomainDomainEndpointOptionsDetailsTypeDef ] = None + VpcOptions: Optional[AwsOpenSearchServiceDomainVpcOptionsDetailsOutputTypeDef] = None + LogPublishingOptions: Optional[ AwsOpenSearchServiceDomainLogPublishingOptionsDetailsTypeDef ] = None + DomainEndpoints: Optional[Dict[str, str]] = None + AdvancedSecurityOptions: Optional[ AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetailsTypeDef ] = None + +class AwsOpenSearchServiceDomainDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + AccessPolicies: Optional[str] = None + DomainName: Optional[str] = None + Id: Optional[str] = None + DomainEndpoint: Optional[str] = None + EngineVersion: Optional[str] = None + EncryptionAtRestOptions: Optional[ AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetailsTypeDef ] = None + NodeToNodeEncryptionOptions: Optional[ AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetailsTypeDef ] = None + ServiceSoftwareOptions: Optional[ AwsOpenSearchServiceDomainServiceSoftwareOptionsDetailsTypeDef ] = None + ClusterConfig: Optional[AwsOpenSearchServiceDomainClusterConfigDetailsTypeDef] = None + DomainEndpointOptions: Optional[ AwsOpenSearchServiceDomainDomainEndpointOptionsDetailsTypeDef ] = None + VpcOptions: Optional[AwsOpenSearchServiceDomainVpcOptionsDetailsTypeDef] = None + LogPublishingOptions: Optional[ AwsOpenSearchServiceDomainLogPublishingOptionsDetailsTypeDef ] = None + DomainEndpoints: Optional[Mapping[str, str]] = None + AdvancedSecurityOptions: Optional[ AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetailsTypeDef ] = None + +class AwsRdsDbSubnetGroupExtraOutputTypeDef(BaseModel): + DbSubnetGroupName: Optional[str] = None + DbSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[AwsRdsDbSubnetGroupSubnetTypeDef]] = None + DbSubnetGroupArn: Optional[str] = None + +class AwsRdsDbSubnetGroupOutputTypeDef(BaseModel): + DbSubnetGroupName: Optional[str] = None + DbSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[List[AwsRdsDbSubnetGroupSubnetTypeDef]] = None + DbSubnetGroupArn: Optional[str] = None + +class AwsRdsDbSubnetGroupTypeDef(BaseModel): + DbSubnetGroupName: Optional[str] = None + DbSubnetGroupDescription: Optional[str] = None + VpcId: Optional[str] = None + SubnetGroupStatus: Optional[str] = None + Subnets: Optional[Sequence[AwsRdsDbSubnetGroupSubnetTypeDef]] = None + DbSubnetGroupArn: Optional[str] = None + +class AwsRedshiftClusterDetailsExtraOutputTypeDef(BaseModel): + AllowVersionUpgrade: Optional[bool] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + AvailabilityZone: Optional[str] = None + ClusterAvailabilityStatus: Optional[str] = None + ClusterCreateTime: Optional[str] = None + ClusterIdentifier: Optional[str] = None + ClusterNodes: Optional[List[AwsRedshiftClusterClusterNodeTypeDef]] = None + ClusterParameterGroups: Optional[ List[AwsRedshiftClusterClusterParameterGroupExtraOutputTypeDef] ] = None + ClusterPublicKey: Optional[str] = None + ClusterRevisionNumber: Optional[str] = None + ClusterSecurityGroups: Optional[List[AwsRedshiftClusterClusterSecurityGroupTypeDef]] = None + ClusterSnapshotCopyStatus: Optional[ AwsRedshiftClusterClusterSnapshotCopyStatusTypeDef ] = None + ClusterStatus: Optional[str] = None + ClusterSubnetGroupName: Optional[str] = None + ClusterVersion: Optional[str] = None + DBName: Optional[str] = None + DeferredMaintenanceWindows: Optional[ List[AwsRedshiftClusterDeferredMaintenanceWindowTypeDef] ] = None + ElasticIpStatus: Optional[AwsRedshiftClusterElasticIpStatusTypeDef] = None + ElasticResizeNumberOfNodeOptions: Optional[str] = None + Encrypted: Optional[bool] = None + Endpoint: Optional[AwsRedshiftClusterEndpointTypeDef] = None + EnhancedVpcRouting: Optional[bool] = None + ExpectedNextSnapshotScheduleTime: Optional[str] = None + ExpectedNextSnapshotScheduleTimeStatus: Optional[str] = None + HsmStatus: Optional[AwsRedshiftClusterHsmStatusTypeDef] = None + IamRoles: Optional[List[AwsRedshiftClusterIamRoleTypeDef]] = None + KmsKeyId: Optional[str] = None + MaintenanceTrackName: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + MasterUsername: Optional[str] = None + NextMaintenanceWindowStartTime: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + PendingActions: Optional[List[str]] = None + PendingModifiedValues: Optional[AwsRedshiftClusterPendingModifiedValuesTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ResizeInfo: Optional[AwsRedshiftClusterResizeInfoTypeDef] = None + RestoreStatus: Optional[AwsRedshiftClusterRestoreStatusTypeDef] = None + SnapshotScheduleIdentifier: Optional[str] = None + SnapshotScheduleState: Optional[str] = None + VpcId: Optional[str] = None + VpcSecurityGroups: Optional[List[AwsRedshiftClusterVpcSecurityGroupTypeDef]] = None + LoggingStatus: Optional[AwsRedshiftClusterLoggingStatusTypeDef] = None + +class AwsRedshiftClusterDetailsOutputTypeDef(BaseModel): + AllowVersionUpgrade: Optional[bool] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + AvailabilityZone: Optional[str] = None + ClusterAvailabilityStatus: Optional[str] = None + ClusterCreateTime: Optional[str] = None + ClusterIdentifier: Optional[str] = None + ClusterNodes: Optional[List[AwsRedshiftClusterClusterNodeTypeDef]] = None + ClusterParameterGroups: Optional[ List[AwsRedshiftClusterClusterParameterGroupOutputTypeDef] ] = None + ClusterPublicKey: Optional[str] = None + ClusterRevisionNumber: Optional[str] = None + ClusterSecurityGroups: Optional[List[AwsRedshiftClusterClusterSecurityGroupTypeDef]] = None + ClusterSnapshotCopyStatus: Optional[ AwsRedshiftClusterClusterSnapshotCopyStatusTypeDef ] = None + ClusterStatus: Optional[str] = None + ClusterSubnetGroupName: Optional[str] = None + ClusterVersion: Optional[str] = None + DBName: Optional[str] = None + DeferredMaintenanceWindows: Optional[ List[AwsRedshiftClusterDeferredMaintenanceWindowTypeDef] ] = None + ElasticIpStatus: Optional[AwsRedshiftClusterElasticIpStatusTypeDef] = None + ElasticResizeNumberOfNodeOptions: Optional[str] = None + Encrypted: Optional[bool] = None + Endpoint: Optional[AwsRedshiftClusterEndpointTypeDef] = None + EnhancedVpcRouting: Optional[bool] = None + ExpectedNextSnapshotScheduleTime: Optional[str] = None + ExpectedNextSnapshotScheduleTimeStatus: Optional[str] = None + HsmStatus: Optional[AwsRedshiftClusterHsmStatusTypeDef] = None + IamRoles: Optional[List[AwsRedshiftClusterIamRoleTypeDef]] = None + KmsKeyId: Optional[str] = None + MaintenanceTrackName: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + MasterUsername: Optional[str] = None + NextMaintenanceWindowStartTime: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + PendingActions: Optional[List[str]] = None + PendingModifiedValues: Optional[AwsRedshiftClusterPendingModifiedValuesTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ResizeInfo: Optional[AwsRedshiftClusterResizeInfoTypeDef] = None + RestoreStatus: Optional[AwsRedshiftClusterRestoreStatusTypeDef] = None + SnapshotScheduleIdentifier: Optional[str] = None + SnapshotScheduleState: Optional[str] = None + VpcId: Optional[str] = None + VpcSecurityGroups: Optional[List[AwsRedshiftClusterVpcSecurityGroupTypeDef]] = None + LoggingStatus: Optional[AwsRedshiftClusterLoggingStatusTypeDef] = None + +class AwsRedshiftClusterDetailsTypeDef(BaseModel): + AllowVersionUpgrade: Optional[bool] = None + AutomatedSnapshotRetentionPeriod: Optional[int] = None + AvailabilityZone: Optional[str] = None + ClusterAvailabilityStatus: Optional[str] = None + ClusterCreateTime: Optional[str] = None + ClusterIdentifier: Optional[str] = None + ClusterNodes: Optional[Sequence[AwsRedshiftClusterClusterNodeTypeDef]] = None + ClusterParameterGroups: Optional[ Sequence[AwsRedshiftClusterClusterParameterGroupTypeDef] ] = None + ClusterPublicKey: Optional[str] = None + ClusterRevisionNumber: Optional[str] = None + ClusterSecurityGroups: Optional[ Sequence[AwsRedshiftClusterClusterSecurityGroupTypeDef] ] = None + ClusterSnapshotCopyStatus: Optional[ AwsRedshiftClusterClusterSnapshotCopyStatusTypeDef ] = None + ClusterStatus: Optional[str] = None + ClusterSubnetGroupName: Optional[str] = None + ClusterVersion: Optional[str] = None + DBName: Optional[str] = None + DeferredMaintenanceWindows: Optional[ Sequence[AwsRedshiftClusterDeferredMaintenanceWindowTypeDef] ] = None + ElasticIpStatus: Optional[AwsRedshiftClusterElasticIpStatusTypeDef] = None + ElasticResizeNumberOfNodeOptions: Optional[str] = None + Encrypted: Optional[bool] = None + Endpoint: Optional[AwsRedshiftClusterEndpointTypeDef] = None + EnhancedVpcRouting: Optional[bool] = None + ExpectedNextSnapshotScheduleTime: Optional[str] = None + ExpectedNextSnapshotScheduleTimeStatus: Optional[str] = None + HsmStatus: Optional[AwsRedshiftClusterHsmStatusTypeDef] = None + IamRoles: Optional[Sequence[AwsRedshiftClusterIamRoleTypeDef]] = None + KmsKeyId: Optional[str] = None + MaintenanceTrackName: Optional[str] = None + ManualSnapshotRetentionPeriod: Optional[int] = None + MasterUsername: Optional[str] = None + NextMaintenanceWindowStartTime: Optional[str] = None + NodeType: Optional[str] = None + NumberOfNodes: Optional[int] = None + PendingActions: Optional[Sequence[str]] = None + PendingModifiedValues: Optional[AwsRedshiftClusterPendingModifiedValuesTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + ResizeInfo: Optional[AwsRedshiftClusterResizeInfoTypeDef] = None + RestoreStatus: Optional[AwsRedshiftClusterRestoreStatusTypeDef] = None + SnapshotScheduleIdentifier: Optional[str] = None + SnapshotScheduleState: Optional[str] = None + VpcId: Optional[str] = None + VpcSecurityGroups: Optional[Sequence[AwsRedshiftClusterVpcSecurityGroupTypeDef]] = None + LoggingStatus: Optional[AwsRedshiftClusterLoggingStatusTypeDef] = None + +class AwsRoute53HostedZoneDetailsExtraOutputTypeDef(BaseModel): + HostedZone: Optional[AwsRoute53HostedZoneObjectDetailsTypeDef] = None + Vpcs: Optional[List[AwsRoute53HostedZoneVpcDetailsTypeDef]] = None + NameServers: Optional[List[str]] = None + QueryLoggingConfig: Optional[AwsRoute53QueryLoggingConfigDetailsTypeDef] = None + +class AwsRoute53HostedZoneDetailsOutputTypeDef(BaseModel): + HostedZone: Optional[AwsRoute53HostedZoneObjectDetailsTypeDef] = None + Vpcs: Optional[List[AwsRoute53HostedZoneVpcDetailsTypeDef]] = None + NameServers: Optional[List[str]] = None + QueryLoggingConfig: Optional[AwsRoute53QueryLoggingConfigDetailsTypeDef] = None + +class AwsRoute53HostedZoneDetailsTypeDef(BaseModel): + HostedZone: Optional[AwsRoute53HostedZoneObjectDetailsTypeDef] = None + Vpcs: Optional[Sequence[AwsRoute53HostedZoneVpcDetailsTypeDef]] = None + NameServers: Optional[Sequence[str]] = None + QueryLoggingConfig: Optional[AwsRoute53QueryLoggingConfigDetailsTypeDef] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetailsExtraOutputTypeDef(BaseModel): + Operands: Optional[ List[AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetailsTypeDef] ] = None + Prefix: Optional[str] = None + Tag: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetailsOutputTypeDef(BaseModel): + Operands: Optional[ List[AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetailsTypeDef] ] = None + Prefix: Optional[str] = None + Tag: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetailsTypeDef(BaseModel): + Operands: Optional[ Sequence[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateOperandsDetailsTypeDef ] ] = None + Prefix: Optional[str] = None + Tag: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateTagDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsS3BucketNotificationConfigurationFilterExtraOutputTypeDef(BaseModel): + S3KeyFilter: Optional[ AwsS3BucketNotificationConfigurationS3KeyFilterExtraOutputTypeDef ] = None + +class AwsS3BucketNotificationConfigurationFilterOutputTypeDef(BaseModel): + S3KeyFilter: Optional[AwsS3BucketNotificationConfigurationS3KeyFilterOutputTypeDef] = None + +class AwsS3BucketNotificationConfigurationFilterTypeDef(BaseModel): + S3KeyFilter: Optional[AwsS3BucketNotificationConfigurationS3KeyFilterTypeDef] = None + +class AwsS3BucketObjectLockConfigurationTypeDef(BaseModel): + ObjectLockEnabled: Optional[str] = None + Rule: Optional[AwsS3BucketObjectLockConfigurationRuleDetailsTypeDef] = None + +class AwsS3BucketServerSideEncryptionConfigurationExtraOutputTypeDef(BaseModel): + Rules: Optional[List[AwsS3BucketServerSideEncryptionRuleTypeDef]] = None + +class AwsS3BucketServerSideEncryptionConfigurationOutputTypeDef(BaseModel): + Rules: Optional[List[AwsS3BucketServerSideEncryptionRuleTypeDef]] = None + +class AwsS3BucketServerSideEncryptionConfigurationTypeDef(BaseModel): + Rules: Optional[Sequence[AwsS3BucketServerSideEncryptionRuleTypeDef]] = None + +class AwsS3BucketWebsiteConfigurationExtraOutputTypeDef(BaseModel): + ErrorDocument: Optional[str] = None + IndexDocumentSuffix: Optional[str] = None + RedirectAllRequestsTo: Optional[AwsS3BucketWebsiteConfigurationRedirectToTypeDef] = None + RoutingRules: Optional[List[AwsS3BucketWebsiteConfigurationRoutingRuleTypeDef]] = None + +class AwsS3BucketWebsiteConfigurationOutputTypeDef(BaseModel): + ErrorDocument: Optional[str] = None + IndexDocumentSuffix: Optional[str] = None + RedirectAllRequestsTo: Optional[AwsS3BucketWebsiteConfigurationRedirectToTypeDef] = None + RoutingRules: Optional[List[AwsS3BucketWebsiteConfigurationRoutingRuleTypeDef]] = None + +class AwsS3BucketWebsiteConfigurationTypeDef(BaseModel): + ErrorDocument: Optional[str] = None + IndexDocumentSuffix: Optional[str] = None + RedirectAllRequestsTo: Optional[AwsS3BucketWebsiteConfigurationRedirectToTypeDef] = None + RoutingRules: Optional[Sequence[AwsS3BucketWebsiteConfigurationRoutingRuleTypeDef]] = None + +class BatchUpdateFindingsResponseTypeDef(BaseModel): + ProcessedFindings: List[AwsSecurityFindingIdentifierTypeDef] + UnprocessedFindings: List[BatchUpdateFindingsUnprocessedFindingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AwsSsmPatchComplianceDetailsTypeDef(BaseModel): + Patch: Optional[AwsSsmPatchTypeDef] = None + +class AwsStepFunctionStateMachineLoggingConfigurationDetailsExtraOutputTypeDef(BaseModel): + Destinations: Optional[ List[AwsStepFunctionStateMachineLoggingConfigurationDestinationsDetailsTypeDef] ] = None + IncludeExecutionData: Optional[bool] = None + Level: Optional[str] = None + +class AwsStepFunctionStateMachineLoggingConfigurationDetailsOutputTypeDef(BaseModel): + Destinations: Optional[ List[AwsStepFunctionStateMachineLoggingConfigurationDestinationsDetailsTypeDef] ] = None + IncludeExecutionData: Optional[bool] = None + Level: Optional[str] = None + +class AwsStepFunctionStateMachineLoggingConfigurationDetailsTypeDef(BaseModel): + Destinations: Optional[ Sequence[AwsStepFunctionStateMachineLoggingConfigurationDestinationsDetailsTypeDef] ] = None + IncludeExecutionData: Optional[bool] = None + Level: Optional[str] = None + +class AwsWafRegionalRuleGroupDetailsExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RuleGroupId: Optional[str] = None + Rules: Optional[List[AwsWafRegionalRuleGroupRulesDetailsTypeDef]] = None + +class AwsWafRegionalRuleGroupDetailsOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RuleGroupId: Optional[str] = None + Rules: Optional[List[AwsWafRegionalRuleGroupRulesDetailsTypeDef]] = None + +class AwsWafRegionalRuleGroupDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RuleGroupId: Optional[str] = None + Rules: Optional[Sequence[AwsWafRegionalRuleGroupRulesDetailsTypeDef]] = None + +class AwsWafRegionalWebAclDetailsExtraOutputTypeDef(BaseModel): + DefaultAction: Optional[str] = None + MetricName: Optional[str] = None + Name: Optional[str] = None + RulesList: Optional[List[AwsWafRegionalWebAclRulesListDetailsTypeDef]] = None + WebAclId: Optional[str] = None + +class AwsWafRegionalWebAclDetailsOutputTypeDef(BaseModel): + DefaultAction: Optional[str] = None + MetricName: Optional[str] = None + Name: Optional[str] = None + RulesList: Optional[List[AwsWafRegionalWebAclRulesListDetailsTypeDef]] = None + WebAclId: Optional[str] = None + +class AwsWafRegionalWebAclDetailsTypeDef(BaseModel): + DefaultAction: Optional[str] = None + MetricName: Optional[str] = None + Name: Optional[str] = None + RulesList: Optional[Sequence[AwsWafRegionalWebAclRulesListDetailsTypeDef]] = None + WebAclId: Optional[str] = None + +class AwsWafRuleGroupDetailsExtraOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RuleGroupId: Optional[str] = None + Rules: Optional[List[AwsWafRuleGroupRulesDetailsTypeDef]] = None + +class AwsWafRuleGroupDetailsOutputTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RuleGroupId: Optional[str] = None + Rules: Optional[List[AwsWafRuleGroupRulesDetailsTypeDef]] = None + +class AwsWafRuleGroupDetailsTypeDef(BaseModel): + MetricName: Optional[str] = None + Name: Optional[str] = None + RuleGroupId: Optional[str] = None + Rules: Optional[Sequence[AwsWafRuleGroupRulesDetailsTypeDef]] = None + +class AwsWafWebAclDetailsExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + DefaultAction: Optional[str] = None + Rules: Optional[List[AwsWafWebAclRuleExtraOutputTypeDef]] = None + WebAclId: Optional[str] = None + +class AwsWafWebAclDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + DefaultAction: Optional[str] = None + Rules: Optional[List[AwsWafWebAclRuleOutputTypeDef]] = None + WebAclId: Optional[str] = None + +class AwsWafWebAclDetailsTypeDef(BaseModel): + Name: Optional[str] = None + DefaultAction: Optional[str] = None + Rules: Optional[Sequence[AwsWafWebAclRuleTypeDef]] = None + WebAclId: Optional[str] = None + +class AwsWafv2ActionAllowDetailsExtraOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[ AwsWafv2CustomRequestHandlingDetailsExtraOutputTypeDef ] = None + +class AwsWafv2RulesActionCaptchaDetailsExtraOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[ AwsWafv2CustomRequestHandlingDetailsExtraOutputTypeDef ] = None + +class AwsWafv2RulesActionCountDetailsExtraOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[ AwsWafv2CustomRequestHandlingDetailsExtraOutputTypeDef ] = None + +class AwsWafv2ActionAllowDetailsOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[AwsWafv2CustomRequestHandlingDetailsOutputTypeDef] = None + +class AwsWafv2RulesActionCaptchaDetailsOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[AwsWafv2CustomRequestHandlingDetailsOutputTypeDef] = None + +class AwsWafv2RulesActionCountDetailsOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[AwsWafv2CustomRequestHandlingDetailsOutputTypeDef] = None + +class AwsWafv2ActionAllowDetailsTypeDef(BaseModel): + CustomRequestHandling: Optional[AwsWafv2CustomRequestHandlingDetailsTypeDef] = None + +class AwsWafv2RulesActionCaptchaDetailsTypeDef(BaseModel): + CustomRequestHandling: Optional[AwsWafv2CustomRequestHandlingDetailsTypeDef] = None + +class AwsWafv2RulesActionCountDetailsTypeDef(BaseModel): + CustomRequestHandling: Optional[AwsWafv2CustomRequestHandlingDetailsTypeDef] = None + +class AwsWafv2ActionBlockDetailsExtraOutputTypeDef(BaseModel): + CustomResponse: Optional[AwsWafv2CustomResponseDetailsExtraOutputTypeDef] = None + +class AwsWafv2ActionBlockDetailsOutputTypeDef(BaseModel): + CustomResponse: Optional[AwsWafv2CustomResponseDetailsOutputTypeDef] = None + +class AwsWafv2ActionBlockDetailsTypeDef(BaseModel): + CustomResponse: Optional[AwsWafv2CustomResponseDetailsTypeDef] = None + +class BatchGetStandardsControlAssociationsResponseTypeDef(BaseModel): + StandardsControlAssociationDetails: List[StandardsControlAssociationDetailTypeDef] + UnprocessedAssociations: List[UnprocessedStandardsControlAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateStandardsControlAssociationsResponseTypeDef(BaseModel): + UnprocessedAssociationUpdates: List[UnprocessedStandardsControlAssociationUpdateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class VulnerabilityExtraOutputTypeDef(BaseModel): + Id: str + VulnerablePackages: Optional[List[SoftwarePackageTypeDef]] = None + Cvss: Optional[List[CvssExtraOutputTypeDef]] = None + RelatedVulnerabilities: Optional[List[str]] = None + Vendor: Optional[VulnerabilityVendorTypeDef] = None + ReferenceUrls: Optional[List[str]] = None + FixAvailable: Optional[VulnerabilityFixAvailableType] = None + EpssScore: Optional[float] = None + ExploitAvailable: Optional[VulnerabilityExploitAvailableType] = None + LastKnownExploitAt: Optional[str] = None + CodeVulnerabilities: Optional[ List[VulnerabilityCodeVulnerabilitiesExtraOutputTypeDef] ] = None + +class VulnerabilityOutputTypeDef(BaseModel): + Id: str + VulnerablePackages: Optional[List[SoftwarePackageTypeDef]] = None + Cvss: Optional[List[CvssOutputTypeDef]] = None + RelatedVulnerabilities: Optional[List[str]] = None + Vendor: Optional[VulnerabilityVendorTypeDef] = None + ReferenceUrls: Optional[List[str]] = None + FixAvailable: Optional[VulnerabilityFixAvailableType] = None + EpssScore: Optional[float] = None + ExploitAvailable: Optional[VulnerabilityExploitAvailableType] = None + LastKnownExploitAt: Optional[str] = None + CodeVulnerabilities: Optional[List[VulnerabilityCodeVulnerabilitiesOutputTypeDef]] = None + +class VulnerabilityTypeDef(BaseModel): + Id: str + VulnerablePackages: Optional[Sequence[SoftwarePackageTypeDef]] = None + Cvss: Optional[Sequence[CvssTypeDef]] = None + RelatedVulnerabilities: Optional[Sequence[str]] = None + Vendor: Optional[VulnerabilityVendorTypeDef] = None + ReferenceUrls: Optional[Sequence[str]] = None + FixAvailable: Optional[VulnerabilityFixAvailableType] = None + EpssScore: Optional[float] = None + ExploitAvailable: Optional[VulnerabilityExploitAvailableType] = None + LastKnownExploitAt: Optional[str] = None + CodeVulnerabilities: Optional[Sequence[VulnerabilityCodeVulnerabilitiesTypeDef]] = None + +class ParameterDefinitionTypeDef(BaseModel): + Description: str + ConfigurationOptions: ConfigurationOptionsTypeDef + +class BatchGetConfigurationPolicyAssociationsRequestRequestTypeDef(BaseModel): + ConfigurationPolicyAssociationIdentifiers: Sequence[ ConfigurationPolicyAssociationTypeDef ] + +class UnprocessedConfigurationPolicyAssociationTypeDef(BaseModel): + ConfigurationPolicyAssociationIdentifiers: Optional[ ConfigurationPolicyAssociationTypeDef ] = None + ErrorCode: Optional[str] = None + ErrorReason: Optional[str] = None + +class AutomationRulesFindingFiltersOutputTypeDef(BaseModel): + ProductArn: Optional[List[StringFilterTypeDef]] = None + AwsAccountId: Optional[List[StringFilterTypeDef]] = None + Id: Optional[List[StringFilterTypeDef]] = None + GeneratorId: Optional[List[StringFilterTypeDef]] = None + Type: Optional[List[StringFilterTypeDef]] = None + FirstObservedAt: Optional[List[DateFilterTypeDef]] = None + LastObservedAt: Optional[List[DateFilterTypeDef]] = None + CreatedAt: Optional[List[DateFilterTypeDef]] = None + UpdatedAt: Optional[List[DateFilterTypeDef]] = None + Confidence: Optional[List[NumberFilterTypeDef]] = None + Criticality: Optional[List[NumberFilterTypeDef]] = None + Title: Optional[List[StringFilterTypeDef]] = None + Description: Optional[List[StringFilterTypeDef]] = None + SourceUrl: Optional[List[StringFilterTypeDef]] = None + ProductName: Optional[List[StringFilterTypeDef]] = None + CompanyName: Optional[List[StringFilterTypeDef]] = None + SeverityLabel: Optional[List[StringFilterTypeDef]] = None + ResourceType: Optional[List[StringFilterTypeDef]] = None + ResourceId: Optional[List[StringFilterTypeDef]] = None + ResourcePartition: Optional[List[StringFilterTypeDef]] = None + ResourceRegion: Optional[List[StringFilterTypeDef]] = None + ResourceTags: Optional[List[MapFilterTypeDef]] = None + ResourceDetailsOther: Optional[List[MapFilterTypeDef]] = None + ComplianceStatus: Optional[List[StringFilterTypeDef]] = None + ComplianceSecurityControlId: Optional[List[StringFilterTypeDef]] = None + ComplianceAssociatedStandardsId: Optional[List[StringFilterTypeDef]] = None + VerificationState: Optional[List[StringFilterTypeDef]] = None + WorkflowStatus: Optional[List[StringFilterTypeDef]] = None + RecordState: Optional[List[StringFilterTypeDef]] = None + RelatedFindingsProductArn: Optional[List[StringFilterTypeDef]] = None + RelatedFindingsId: Optional[List[StringFilterTypeDef]] = None + NoteText: Optional[List[StringFilterTypeDef]] = None + NoteUpdatedAt: Optional[List[DateFilterTypeDef]] = None + NoteUpdatedBy: Optional[List[StringFilterTypeDef]] = None + UserDefinedFields: Optional[List[MapFilterTypeDef]] = None + ResourceApplicationArn: Optional[List[StringFilterTypeDef]] = None + ResourceApplicationName: Optional[List[StringFilterTypeDef]] = None + AwsAccountName: Optional[List[StringFilterTypeDef]] = None + +class AutomationRulesFindingFiltersTypeDef(BaseModel): + ProductArn: Optional[Sequence[StringFilterTypeDef]] = None + AwsAccountId: Optional[Sequence[StringFilterTypeDef]] = None + Id: Optional[Sequence[StringFilterTypeDef]] = None + GeneratorId: Optional[Sequence[StringFilterTypeDef]] = None + Type: Optional[Sequence[StringFilterTypeDef]] = None + FirstObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + LastObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + CreatedAt: Optional[Sequence[DateFilterTypeDef]] = None + UpdatedAt: Optional[Sequence[DateFilterTypeDef]] = None + Confidence: Optional[Sequence[NumberFilterTypeDef]] = None + Criticality: Optional[Sequence[NumberFilterTypeDef]] = None + Title: Optional[Sequence[StringFilterTypeDef]] = None + Description: Optional[Sequence[StringFilterTypeDef]] = None + SourceUrl: Optional[Sequence[StringFilterTypeDef]] = None + ProductName: Optional[Sequence[StringFilterTypeDef]] = None + CompanyName: Optional[Sequence[StringFilterTypeDef]] = None + SeverityLabel: Optional[Sequence[StringFilterTypeDef]] = None + ResourceType: Optional[Sequence[StringFilterTypeDef]] = None + ResourceId: Optional[Sequence[StringFilterTypeDef]] = None + ResourcePartition: Optional[Sequence[StringFilterTypeDef]] = None + ResourceRegion: Optional[Sequence[StringFilterTypeDef]] = None + ResourceTags: Optional[Sequence[MapFilterTypeDef]] = None + ResourceDetailsOther: Optional[Sequence[MapFilterTypeDef]] = None + ComplianceStatus: Optional[Sequence[StringFilterTypeDef]] = None + ComplianceSecurityControlId: Optional[Sequence[StringFilterTypeDef]] = None + ComplianceAssociatedStandardsId: Optional[Sequence[StringFilterTypeDef]] = None + VerificationState: Optional[Sequence[StringFilterTypeDef]] = None + WorkflowStatus: Optional[Sequence[StringFilterTypeDef]] = None + RecordState: Optional[Sequence[StringFilterTypeDef]] = None + RelatedFindingsProductArn: Optional[Sequence[StringFilterTypeDef]] = None + RelatedFindingsId: Optional[Sequence[StringFilterTypeDef]] = None + NoteText: Optional[Sequence[StringFilterTypeDef]] = None + NoteUpdatedAt: Optional[Sequence[DateFilterTypeDef]] = None + NoteUpdatedBy: Optional[Sequence[StringFilterTypeDef]] = None + UserDefinedFields: Optional[Sequence[MapFilterTypeDef]] = None + ResourceApplicationArn: Optional[Sequence[StringFilterTypeDef]] = None + ResourceApplicationName: Optional[Sequence[StringFilterTypeDef]] = None + AwsAccountName: Optional[Sequence[StringFilterTypeDef]] = None + +class AwsSecurityFindingFiltersExtraOutputTypeDef(BaseModel): + ProductArn: Optional[List[StringFilterTypeDef]] = None + AwsAccountId: Optional[List[StringFilterTypeDef]] = None + Id: Optional[List[StringFilterTypeDef]] = None + GeneratorId: Optional[List[StringFilterTypeDef]] = None + Region: Optional[List[StringFilterTypeDef]] = None + Type: Optional[List[StringFilterTypeDef]] = None + FirstObservedAt: Optional[List[DateFilterTypeDef]] = None + LastObservedAt: Optional[List[DateFilterTypeDef]] = None + CreatedAt: Optional[List[DateFilterTypeDef]] = None + UpdatedAt: Optional[List[DateFilterTypeDef]] = None + SeverityProduct: Optional[List[NumberFilterTypeDef]] = None + SeverityNormalized: Optional[List[NumberFilterTypeDef]] = None + SeverityLabel: Optional[List[StringFilterTypeDef]] = None + Confidence: Optional[List[NumberFilterTypeDef]] = None + Criticality: Optional[List[NumberFilterTypeDef]] = None + Title: Optional[List[StringFilterTypeDef]] = None + Description: Optional[List[StringFilterTypeDef]] = None + RecommendationText: Optional[List[StringFilterTypeDef]] = None + SourceUrl: Optional[List[StringFilterTypeDef]] = None + ProductFields: Optional[List[MapFilterTypeDef]] = None + ProductName: Optional[List[StringFilterTypeDef]] = None + CompanyName: Optional[List[StringFilterTypeDef]] = None + UserDefinedFields: Optional[List[MapFilterTypeDef]] = None + MalwareName: Optional[List[StringFilterTypeDef]] = None + MalwareType: Optional[List[StringFilterTypeDef]] = None + MalwarePath: Optional[List[StringFilterTypeDef]] = None + MalwareState: Optional[List[StringFilterTypeDef]] = None + NetworkDirection: Optional[List[StringFilterTypeDef]] = None + NetworkProtocol: Optional[List[StringFilterTypeDef]] = None + NetworkSourceIpV4: Optional[List[IpFilterTypeDef]] = None + NetworkSourceIpV6: Optional[List[IpFilterTypeDef]] = None + NetworkSourcePort: Optional[List[NumberFilterTypeDef]] = None + NetworkSourceDomain: Optional[List[StringFilterTypeDef]] = None + NetworkSourceMac: Optional[List[StringFilterTypeDef]] = None + NetworkDestinationIpV4: Optional[List[IpFilterTypeDef]] = None + NetworkDestinationIpV6: Optional[List[IpFilterTypeDef]] = None + NetworkDestinationPort: Optional[List[NumberFilterTypeDef]] = None + NetworkDestinationDomain: Optional[List[StringFilterTypeDef]] = None + ProcessName: Optional[List[StringFilterTypeDef]] = None + ProcessPath: Optional[List[StringFilterTypeDef]] = None + ProcessPid: Optional[List[NumberFilterTypeDef]] = None + ProcessParentPid: Optional[List[NumberFilterTypeDef]] = None + ProcessLaunchedAt: Optional[List[DateFilterTypeDef]] = None + ProcessTerminatedAt: Optional[List[DateFilterTypeDef]] = None + ThreatIntelIndicatorType: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorValue: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorCategory: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorLastObservedAt: Optional[List[DateFilterTypeDef]] = None + ThreatIntelIndicatorSource: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorSourceUrl: Optional[List[StringFilterTypeDef]] = None + ResourceType: Optional[List[StringFilterTypeDef]] = None + ResourceId: Optional[List[StringFilterTypeDef]] = None + ResourcePartition: Optional[List[StringFilterTypeDef]] = None + ResourceRegion: Optional[List[StringFilterTypeDef]] = None + ResourceTags: Optional[List[MapFilterTypeDef]] = None + ResourceAwsEc2InstanceType: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceImageId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceIpV4Addresses: Optional[List[IpFilterTypeDef]] = None + ResourceAwsEc2InstanceIpV6Addresses: Optional[List[IpFilterTypeDef]] = None + ResourceAwsEc2InstanceKeyName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceIamInstanceProfileArn: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceVpcId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceSubnetId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceLaunchedAt: Optional[List[DateFilterTypeDef]] = None + ResourceAwsS3BucketOwnerId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsS3BucketOwnerName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyUserName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyPrincipalName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyStatus: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyCreatedAt: Optional[List[DateFilterTypeDef]] = None + ResourceAwsIamUserUserName: Optional[List[StringFilterTypeDef]] = None + ResourceContainerName: Optional[List[StringFilterTypeDef]] = None + ResourceContainerImageId: Optional[List[StringFilterTypeDef]] = None + ResourceContainerImageName: Optional[List[StringFilterTypeDef]] = None + ResourceContainerLaunchedAt: Optional[List[DateFilterTypeDef]] = None + ResourceDetailsOther: Optional[List[MapFilterTypeDef]] = None + ComplianceStatus: Optional[List[StringFilterTypeDef]] = None + VerificationState: Optional[List[StringFilterTypeDef]] = None + WorkflowState: Optional[List[StringFilterTypeDef]] = None + WorkflowStatus: Optional[List[StringFilterTypeDef]] = None + RecordState: Optional[List[StringFilterTypeDef]] = None + RelatedFindingsProductArn: Optional[List[StringFilterTypeDef]] = None + RelatedFindingsId: Optional[List[StringFilterTypeDef]] = None + NoteText: Optional[List[StringFilterTypeDef]] = None + NoteUpdatedAt: Optional[List[DateFilterTypeDef]] = None + NoteUpdatedBy: Optional[List[StringFilterTypeDef]] = None + Keyword: Optional[List[KeywordFilterTypeDef]] = None + FindingProviderFieldsConfidence: Optional[List[NumberFilterTypeDef]] = None + FindingProviderFieldsCriticality: Optional[List[NumberFilterTypeDef]] = None + FindingProviderFieldsRelatedFindingsId: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsRelatedFindingsProductArn: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsSeverityLabel: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsSeverityOriginal: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsTypes: Optional[List[StringFilterTypeDef]] = None + Sample: Optional[List[BooleanFilterTypeDef]] = None + ComplianceSecurityControlId: Optional[List[StringFilterTypeDef]] = None + ComplianceAssociatedStandardsId: Optional[List[StringFilterTypeDef]] = None + VulnerabilitiesExploitAvailable: Optional[List[StringFilterTypeDef]] = None + VulnerabilitiesFixAvailable: Optional[List[StringFilterTypeDef]] = None + ComplianceSecurityControlParametersName: Optional[List[StringFilterTypeDef]] = None + ComplianceSecurityControlParametersValue: Optional[List[StringFilterTypeDef]] = None + AwsAccountName: Optional[List[StringFilterTypeDef]] = None + ResourceApplicationName: Optional[List[StringFilterTypeDef]] = None + ResourceApplicationArn: Optional[List[StringFilterTypeDef]] = None + +class AwsSecurityFindingFiltersOutputTypeDef(BaseModel): + ProductArn: Optional[List[StringFilterTypeDef]] = None + AwsAccountId: Optional[List[StringFilterTypeDef]] = None + Id: Optional[List[StringFilterTypeDef]] = None + GeneratorId: Optional[List[StringFilterTypeDef]] = None + Region: Optional[List[StringFilterTypeDef]] = None + Type: Optional[List[StringFilterTypeDef]] = None + FirstObservedAt: Optional[List[DateFilterTypeDef]] = None + LastObservedAt: Optional[List[DateFilterTypeDef]] = None + CreatedAt: Optional[List[DateFilterTypeDef]] = None + UpdatedAt: Optional[List[DateFilterTypeDef]] = None + SeverityProduct: Optional[List[NumberFilterTypeDef]] = None + SeverityNormalized: Optional[List[NumberFilterTypeDef]] = None + SeverityLabel: Optional[List[StringFilterTypeDef]] = None + Confidence: Optional[List[NumberFilterTypeDef]] = None + Criticality: Optional[List[NumberFilterTypeDef]] = None + Title: Optional[List[StringFilterTypeDef]] = None + Description: Optional[List[StringFilterTypeDef]] = None + RecommendationText: Optional[List[StringFilterTypeDef]] = None + SourceUrl: Optional[List[StringFilterTypeDef]] = None + ProductFields: Optional[List[MapFilterTypeDef]] = None + ProductName: Optional[List[StringFilterTypeDef]] = None + CompanyName: Optional[List[StringFilterTypeDef]] = None + UserDefinedFields: Optional[List[MapFilterTypeDef]] = None + MalwareName: Optional[List[StringFilterTypeDef]] = None + MalwareType: Optional[List[StringFilterTypeDef]] = None + MalwarePath: Optional[List[StringFilterTypeDef]] = None + MalwareState: Optional[List[StringFilterTypeDef]] = None + NetworkDirection: Optional[List[StringFilterTypeDef]] = None + NetworkProtocol: Optional[List[StringFilterTypeDef]] = None + NetworkSourceIpV4: Optional[List[IpFilterTypeDef]] = None + NetworkSourceIpV6: Optional[List[IpFilterTypeDef]] = None + NetworkSourcePort: Optional[List[NumberFilterTypeDef]] = None + NetworkSourceDomain: Optional[List[StringFilterTypeDef]] = None + NetworkSourceMac: Optional[List[StringFilterTypeDef]] = None + NetworkDestinationIpV4: Optional[List[IpFilterTypeDef]] = None + NetworkDestinationIpV6: Optional[List[IpFilterTypeDef]] = None + NetworkDestinationPort: Optional[List[NumberFilterTypeDef]] = None + NetworkDestinationDomain: Optional[List[StringFilterTypeDef]] = None + ProcessName: Optional[List[StringFilterTypeDef]] = None + ProcessPath: Optional[List[StringFilterTypeDef]] = None + ProcessPid: Optional[List[NumberFilterTypeDef]] = None + ProcessParentPid: Optional[List[NumberFilterTypeDef]] = None + ProcessLaunchedAt: Optional[List[DateFilterTypeDef]] = None + ProcessTerminatedAt: Optional[List[DateFilterTypeDef]] = None + ThreatIntelIndicatorType: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorValue: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorCategory: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorLastObservedAt: Optional[List[DateFilterTypeDef]] = None + ThreatIntelIndicatorSource: Optional[List[StringFilterTypeDef]] = None + ThreatIntelIndicatorSourceUrl: Optional[List[StringFilterTypeDef]] = None + ResourceType: Optional[List[StringFilterTypeDef]] = None + ResourceId: Optional[List[StringFilterTypeDef]] = None + ResourcePartition: Optional[List[StringFilterTypeDef]] = None + ResourceRegion: Optional[List[StringFilterTypeDef]] = None + ResourceTags: Optional[List[MapFilterTypeDef]] = None + ResourceAwsEc2InstanceType: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceImageId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceIpV4Addresses: Optional[List[IpFilterTypeDef]] = None + ResourceAwsEc2InstanceIpV6Addresses: Optional[List[IpFilterTypeDef]] = None + ResourceAwsEc2InstanceKeyName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceIamInstanceProfileArn: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceVpcId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceSubnetId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceLaunchedAt: Optional[List[DateFilterTypeDef]] = None + ResourceAwsS3BucketOwnerId: Optional[List[StringFilterTypeDef]] = None + ResourceAwsS3BucketOwnerName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyUserName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyPrincipalName: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyStatus: Optional[List[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyCreatedAt: Optional[List[DateFilterTypeDef]] = None + ResourceAwsIamUserUserName: Optional[List[StringFilterTypeDef]] = None + ResourceContainerName: Optional[List[StringFilterTypeDef]] = None + ResourceContainerImageId: Optional[List[StringFilterTypeDef]] = None + ResourceContainerImageName: Optional[List[StringFilterTypeDef]] = None + ResourceContainerLaunchedAt: Optional[List[DateFilterTypeDef]] = None + ResourceDetailsOther: Optional[List[MapFilterTypeDef]] = None + ComplianceStatus: Optional[List[StringFilterTypeDef]] = None + VerificationState: Optional[List[StringFilterTypeDef]] = None + WorkflowState: Optional[List[StringFilterTypeDef]] = None + WorkflowStatus: Optional[List[StringFilterTypeDef]] = None + RecordState: Optional[List[StringFilterTypeDef]] = None + RelatedFindingsProductArn: Optional[List[StringFilterTypeDef]] = None + RelatedFindingsId: Optional[List[StringFilterTypeDef]] = None + NoteText: Optional[List[StringFilterTypeDef]] = None + NoteUpdatedAt: Optional[List[DateFilterTypeDef]] = None + NoteUpdatedBy: Optional[List[StringFilterTypeDef]] = None + Keyword: Optional[List[KeywordFilterTypeDef]] = None + FindingProviderFieldsConfidence: Optional[List[NumberFilterTypeDef]] = None + FindingProviderFieldsCriticality: Optional[List[NumberFilterTypeDef]] = None + FindingProviderFieldsRelatedFindingsId: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsRelatedFindingsProductArn: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsSeverityLabel: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsSeverityOriginal: Optional[List[StringFilterTypeDef]] = None + FindingProviderFieldsTypes: Optional[List[StringFilterTypeDef]] = None + Sample: Optional[List[BooleanFilterTypeDef]] = None + ComplianceSecurityControlId: Optional[List[StringFilterTypeDef]] = None + ComplianceAssociatedStandardsId: Optional[List[StringFilterTypeDef]] = None + VulnerabilitiesExploitAvailable: Optional[List[StringFilterTypeDef]] = None + VulnerabilitiesFixAvailable: Optional[List[StringFilterTypeDef]] = None + ComplianceSecurityControlParametersName: Optional[List[StringFilterTypeDef]] = None + ComplianceSecurityControlParametersValue: Optional[List[StringFilterTypeDef]] = None + AwsAccountName: Optional[List[StringFilterTypeDef]] = None + ResourceApplicationName: Optional[List[StringFilterTypeDef]] = None + ResourceApplicationArn: Optional[List[StringFilterTypeDef]] = None + +class AwsSecurityFindingFiltersTypeDef(BaseModel): + ProductArn: Optional[Sequence[StringFilterTypeDef]] = None + AwsAccountId: Optional[Sequence[StringFilterTypeDef]] = None + Id: Optional[Sequence[StringFilterTypeDef]] = None + GeneratorId: Optional[Sequence[StringFilterTypeDef]] = None + Region: Optional[Sequence[StringFilterTypeDef]] = None + Type: Optional[Sequence[StringFilterTypeDef]] = None + FirstObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + LastObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + CreatedAt: Optional[Sequence[DateFilterTypeDef]] = None + UpdatedAt: Optional[Sequence[DateFilterTypeDef]] = None + SeverityProduct: Optional[Sequence[NumberFilterTypeDef]] = None + SeverityNormalized: Optional[Sequence[NumberFilterTypeDef]] = None + SeverityLabel: Optional[Sequence[StringFilterTypeDef]] = None + Confidence: Optional[Sequence[NumberFilterTypeDef]] = None + Criticality: Optional[Sequence[NumberFilterTypeDef]] = None + Title: Optional[Sequence[StringFilterTypeDef]] = None + Description: Optional[Sequence[StringFilterTypeDef]] = None + RecommendationText: Optional[Sequence[StringFilterTypeDef]] = None + SourceUrl: Optional[Sequence[StringFilterTypeDef]] = None + ProductFields: Optional[Sequence[MapFilterTypeDef]] = None + ProductName: Optional[Sequence[StringFilterTypeDef]] = None + CompanyName: Optional[Sequence[StringFilterTypeDef]] = None + UserDefinedFields: Optional[Sequence[MapFilterTypeDef]] = None + MalwareName: Optional[Sequence[StringFilterTypeDef]] = None + MalwareType: Optional[Sequence[StringFilterTypeDef]] = None + MalwarePath: Optional[Sequence[StringFilterTypeDef]] = None + MalwareState: Optional[Sequence[StringFilterTypeDef]] = None + NetworkDirection: Optional[Sequence[StringFilterTypeDef]] = None + NetworkProtocol: Optional[Sequence[StringFilterTypeDef]] = None + NetworkSourceIpV4: Optional[Sequence[IpFilterTypeDef]] = None + NetworkSourceIpV6: Optional[Sequence[IpFilterTypeDef]] = None + NetworkSourcePort: Optional[Sequence[NumberFilterTypeDef]] = None + NetworkSourceDomain: Optional[Sequence[StringFilterTypeDef]] = None + NetworkSourceMac: Optional[Sequence[StringFilterTypeDef]] = None + NetworkDestinationIpV4: Optional[Sequence[IpFilterTypeDef]] = None + NetworkDestinationIpV6: Optional[Sequence[IpFilterTypeDef]] = None + NetworkDestinationPort: Optional[Sequence[NumberFilterTypeDef]] = None + NetworkDestinationDomain: Optional[Sequence[StringFilterTypeDef]] = None + ProcessName: Optional[Sequence[StringFilterTypeDef]] = None + ProcessPath: Optional[Sequence[StringFilterTypeDef]] = None + ProcessPid: Optional[Sequence[NumberFilterTypeDef]] = None + ProcessParentPid: Optional[Sequence[NumberFilterTypeDef]] = None + ProcessLaunchedAt: Optional[Sequence[DateFilterTypeDef]] = None + ProcessTerminatedAt: Optional[Sequence[DateFilterTypeDef]] = None + ThreatIntelIndicatorType: Optional[Sequence[StringFilterTypeDef]] = None + ThreatIntelIndicatorValue: Optional[Sequence[StringFilterTypeDef]] = None + ThreatIntelIndicatorCategory: Optional[Sequence[StringFilterTypeDef]] = None + ThreatIntelIndicatorLastObservedAt: Optional[Sequence[DateFilterTypeDef]] = None + ThreatIntelIndicatorSource: Optional[Sequence[StringFilterTypeDef]] = None + ThreatIntelIndicatorSourceUrl: Optional[Sequence[StringFilterTypeDef]] = None + ResourceType: Optional[Sequence[StringFilterTypeDef]] = None + ResourceId: Optional[Sequence[StringFilterTypeDef]] = None + ResourcePartition: Optional[Sequence[StringFilterTypeDef]] = None + ResourceRegion: Optional[Sequence[StringFilterTypeDef]] = None + ResourceTags: Optional[Sequence[MapFilterTypeDef]] = None + ResourceAwsEc2InstanceType: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceImageId: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceIpV4Addresses: Optional[Sequence[IpFilterTypeDef]] = None + ResourceAwsEc2InstanceIpV6Addresses: Optional[Sequence[IpFilterTypeDef]] = None + ResourceAwsEc2InstanceKeyName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceIamInstanceProfileArn: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceVpcId: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceSubnetId: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsEc2InstanceLaunchedAt: Optional[Sequence[DateFilterTypeDef]] = None + ResourceAwsS3BucketOwnerId: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsS3BucketOwnerName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyUserName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyPrincipalName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyStatus: Optional[Sequence[StringFilterTypeDef]] = None + ResourceAwsIamAccessKeyCreatedAt: Optional[Sequence[DateFilterTypeDef]] = None + ResourceAwsIamUserUserName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceContainerName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceContainerImageId: Optional[Sequence[StringFilterTypeDef]] = None + ResourceContainerImageName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceContainerLaunchedAt: Optional[Sequence[DateFilterTypeDef]] = None + ResourceDetailsOther: Optional[Sequence[MapFilterTypeDef]] = None + ComplianceStatus: Optional[Sequence[StringFilterTypeDef]] = None + VerificationState: Optional[Sequence[StringFilterTypeDef]] = None + WorkflowState: Optional[Sequence[StringFilterTypeDef]] = None + WorkflowStatus: Optional[Sequence[StringFilterTypeDef]] = None + RecordState: Optional[Sequence[StringFilterTypeDef]] = None + RelatedFindingsProductArn: Optional[Sequence[StringFilterTypeDef]] = None + RelatedFindingsId: Optional[Sequence[StringFilterTypeDef]] = None + NoteText: Optional[Sequence[StringFilterTypeDef]] = None + NoteUpdatedAt: Optional[Sequence[DateFilterTypeDef]] = None + NoteUpdatedBy: Optional[Sequence[StringFilterTypeDef]] = None + Keyword: Optional[Sequence[KeywordFilterTypeDef]] = None + FindingProviderFieldsConfidence: Optional[Sequence[NumberFilterTypeDef]] = None + FindingProviderFieldsCriticality: Optional[Sequence[NumberFilterTypeDef]] = None + FindingProviderFieldsRelatedFindingsId: Optional[Sequence[StringFilterTypeDef]] = None + FindingProviderFieldsRelatedFindingsProductArn: Optional[ Sequence[StringFilterTypeDef] ] = None + FindingProviderFieldsSeverityLabel: Optional[Sequence[StringFilterTypeDef]] = None + FindingProviderFieldsSeverityOriginal: Optional[Sequence[StringFilterTypeDef]] = None + FindingProviderFieldsTypes: Optional[Sequence[StringFilterTypeDef]] = None + Sample: Optional[Sequence[BooleanFilterTypeDef]] = None + ComplianceSecurityControlId: Optional[Sequence[StringFilterTypeDef]] = None + ComplianceAssociatedStandardsId: Optional[Sequence[StringFilterTypeDef]] = None + VulnerabilitiesExploitAvailable: Optional[Sequence[StringFilterTypeDef]] = None + VulnerabilitiesFixAvailable: Optional[Sequence[StringFilterTypeDef]] = None + ComplianceSecurityControlParametersName: Optional[Sequence[StringFilterTypeDef]] = None + ComplianceSecurityControlParametersValue: Optional[Sequence[StringFilterTypeDef]] = None + AwsAccountName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceApplicationName: Optional[Sequence[StringFilterTypeDef]] = None + ResourceApplicationArn: Optional[Sequence[StringFilterTypeDef]] = None + +class GetFindingHistoryResponseTypeDef(BaseModel): + Records: List[FindingHistoryRecordTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetInsightResultsResponseTypeDef(BaseModel): + InsightResults: InsightResultsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class NetworkHeaderExtraOutputTypeDef(BaseModel): + Protocol: Optional[str] = None + Destination: Optional[NetworkPathComponentDetailsExtraOutputTypeDef] = None + Source: Optional[NetworkPathComponentDetailsExtraOutputTypeDef] = None + +class NetworkHeaderOutputTypeDef(BaseModel): + Protocol: Optional[str] = None + Destination: Optional[NetworkPathComponentDetailsOutputTypeDef] = None + Source: Optional[NetworkPathComponentDetailsOutputTypeDef] = None + +class NetworkHeaderTypeDef(BaseModel): + Protocol: Optional[str] = None + Destination: Optional[NetworkPathComponentDetailsTypeDef] = None + Source: Optional[NetworkPathComponentDetailsTypeDef] = None + +class OccurrencesExtraOutputTypeDef(BaseModel): + LineRanges: Optional[List[RangeTypeDef]] = None + OffsetRanges: Optional[List[RangeTypeDef]] = None + Pages: Optional[List[PageTypeDef]] = None + Records: Optional[List[RecordTypeDef]] = None + Cells: Optional[List[CellTypeDef]] = None + +class OccurrencesOutputTypeDef(BaseModel): + LineRanges: Optional[List[RangeTypeDef]] = None + OffsetRanges: Optional[List[RangeTypeDef]] = None + Pages: Optional[List[PageTypeDef]] = None + Records: Optional[List[RecordTypeDef]] = None + Cells: Optional[List[CellTypeDef]] = None + +class OccurrencesTypeDef(BaseModel): + LineRanges: Optional[Sequence[RangeTypeDef]] = None + OffsetRanges: Optional[Sequence[RangeTypeDef]] = None + Pages: Optional[Sequence[PageTypeDef]] = None + Records: Optional[Sequence[RecordTypeDef]] = None + Cells: Optional[Sequence[CellTypeDef]] = None + +class SecurityControlCustomParameterOutputTypeDef(BaseModel): + SecurityControlId: Optional[str] = None + Parameters: Optional[Dict[str, ParameterConfigurationOutputTypeDef]] = None + +class SecurityControlTypeDef(BaseModel): + SecurityControlId: str + SecurityControlArn: str + Title: str + Description: str + RemediationUrl: str + SeverityRating: SeverityRatingType + SecurityControlStatus: ControlStatusType + UpdateStatus: Optional[UpdateStatusType] = None + Parameters: Optional[Dict[str, ParameterConfigurationOutputTypeDef]] = None + LastUpdateReason: Optional[str] = None + +class SecurityControlCustomParameterTypeDef(BaseModel): + SecurityControlId: Optional[str] = None + Parameters: Optional[Mapping[str, ParameterConfigurationTypeDef]] = None + +class RuleGroupSourceStatelessRuleDefinitionExtraOutputTypeDef(BaseModel): + Actions: Optional[List[str]] = None + MatchAttributes: Optional[ RuleGroupSourceStatelessRuleMatchAttributesExtraOutputTypeDef ] = None + +class RuleGroupSourceStatelessRuleDefinitionOutputTypeDef(BaseModel): + Actions: Optional[List[str]] = None + MatchAttributes: Optional[RuleGroupSourceStatelessRuleMatchAttributesOutputTypeDef] = None + +class RuleGroupSourceStatelessRuleDefinitionTypeDef(BaseModel): + Actions: Optional[Sequence[str]] = None + MatchAttributes: Optional[RuleGroupSourceStatelessRuleMatchAttributesTypeDef] = None + +class DescribeStandardsResponseTypeDef(BaseModel): + Standards: List[StandardTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchDisableStandardsResponseTypeDef(BaseModel): + StandardsSubscriptions: List[StandardsSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchEnableStandardsResponseTypeDef(BaseModel): + StandardsSubscriptions: List[StandardsSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnabledStandardsResponseTypeDef(BaseModel): + StandardsSubscriptions: List[StandardsSubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StatelessCustomActionDefinitionExtraOutputTypeDef(BaseModel): + PublishMetricAction: Optional[StatelessCustomPublishMetricActionExtraOutputTypeDef] = None + +class StatelessCustomActionDefinitionOutputTypeDef(BaseModel): + PublishMetricAction: Optional[StatelessCustomPublishMetricActionOutputTypeDef] = None + +class StatelessCustomActionDefinitionTypeDef(BaseModel): + PublishMetricAction: Optional[StatelessCustomPublishMetricActionTypeDef] = None + +class PortProbeActionExtraOutputTypeDef(BaseModel): + PortProbeDetails: Optional[List[PortProbeDetailTypeDef]] = None + Blocked: Optional[bool] = None + +class PortProbeActionOutputTypeDef(BaseModel): + PortProbeDetails: Optional[List[PortProbeDetailTypeDef]] = None + Blocked: Optional[bool] = None + +class PortProbeActionTypeDef(BaseModel): + PortProbeDetails: Optional[Sequence[PortProbeDetailTypeDef]] = None + Blocked: Optional[bool] = None + +class AwsAthenaWorkGroupDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + State: Optional[str] = None + Configuration: Optional[AwsAthenaWorkGroupConfigurationDetailsTypeDef] = None + +class AwsAutoScalingAutoScalingGroupDetailsExtraOutputTypeDef(BaseModel): + LaunchConfigurationName: Optional[str] = None + LoadBalancerNames: Optional[List[str]] = None + HealthCheckType: Optional[str] = None + HealthCheckGracePeriod: Optional[int] = None + CreatedTime: Optional[str] = None + MixedInstancesPolicy: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetailsExtraOutputTypeDef ] = None + AvailabilityZones: Optional[ List[AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetailsTypeDef] ] = None + LaunchTemplate: Optional[ AwsAutoScalingAutoScalingGroupLaunchTemplateLaunchTemplateSpecificationTypeDef ] = None + CapacityRebalance: Optional[bool] = None + +class AwsAutoScalingAutoScalingGroupDetailsOutputTypeDef(BaseModel): + LaunchConfigurationName: Optional[str] = None + LoadBalancerNames: Optional[List[str]] = None + HealthCheckType: Optional[str] = None + HealthCheckGracePeriod: Optional[int] = None + CreatedTime: Optional[str] = None + MixedInstancesPolicy: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetailsOutputTypeDef ] = None + AvailabilityZones: Optional[ List[AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetailsTypeDef] ] = None + LaunchTemplate: Optional[ AwsAutoScalingAutoScalingGroupLaunchTemplateLaunchTemplateSpecificationTypeDef ] = None + CapacityRebalance: Optional[bool] = None + +class AwsAutoScalingAutoScalingGroupDetailsTypeDef(BaseModel): + LaunchConfigurationName: Optional[str] = None + LoadBalancerNames: Optional[Sequence[str]] = None + HealthCheckType: Optional[str] = None + HealthCheckGracePeriod: Optional[int] = None + CreatedTime: Optional[str] = None + MixedInstancesPolicy: Optional[ AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetailsTypeDef ] = None + AvailabilityZones: Optional[ Sequence[AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetailsTypeDef] ] = None + LaunchTemplate: Optional[ AwsAutoScalingAutoScalingGroupLaunchTemplateLaunchTemplateSpecificationTypeDef ] = None + CapacityRebalance: Optional[bool] = None + +class AwsBackupBackupPlanBackupPlanDetailsExtraOutputTypeDef(BaseModel): + BackupPlanName: Optional[str] = None + AdvancedBackupSettings: Optional[ List[AwsBackupBackupPlanAdvancedBackupSettingsDetailsExtraOutputTypeDef] ] = None + BackupPlanRule: Optional[List[AwsBackupBackupPlanRuleDetailsExtraOutputTypeDef]] = None + +class AwsBackupBackupPlanBackupPlanDetailsOutputTypeDef(BaseModel): + BackupPlanName: Optional[str] = None + AdvancedBackupSettings: Optional[ List[AwsBackupBackupPlanAdvancedBackupSettingsDetailsOutputTypeDef] ] = None + BackupPlanRule: Optional[List[AwsBackupBackupPlanRuleDetailsOutputTypeDef]] = None + +class AwsBackupBackupPlanBackupPlanDetailsTypeDef(BaseModel): + BackupPlanName: Optional[str] = None + AdvancedBackupSettings: Optional[ Sequence[AwsBackupBackupPlanAdvancedBackupSettingsDetailsTypeDef] ] = None + BackupPlanRule: Optional[Sequence[AwsBackupBackupPlanRuleDetailsTypeDef]] = None + +class AwsCertificateManagerCertificateDetailsExtraOutputTypeDef(BaseModel): + CertificateAuthorityArn: Optional[str] = None + CreatedAt: Optional[str] = None + DomainName: Optional[str] = None + DomainValidationOptions: Optional[ List[AwsCertificateManagerCertificateDomainValidationOptionExtraOutputTypeDef] ] = None + ExtendedKeyUsages: Optional[ List[AwsCertificateManagerCertificateExtendedKeyUsageTypeDef] ] = None + FailureReason: Optional[str] = None + ImportedAt: Optional[str] = None + InUseBy: Optional[List[str]] = None + IssuedAt: Optional[str] = None + Issuer: Optional[str] = None + KeyAlgorithm: Optional[str] = None + KeyUsages: Optional[List[AwsCertificateManagerCertificateKeyUsageTypeDef]] = None + NotAfter: Optional[str] = None + NotBefore: Optional[str] = None + Options: Optional[AwsCertificateManagerCertificateOptionsTypeDef] = None + RenewalEligibility: Optional[str] = None + RenewalSummary: Optional[ AwsCertificateManagerCertificateRenewalSummaryExtraOutputTypeDef ] = None + Serial: Optional[str] = None + SignatureAlgorithm: Optional[str] = None + Status: Optional[str] = None + Subject: Optional[str] = None + SubjectAlternativeNames: Optional[List[str]] = None + Type: Optional[str] = None + +class AwsCertificateManagerCertificateDetailsOutputTypeDef(BaseModel): + CertificateAuthorityArn: Optional[str] = None + CreatedAt: Optional[str] = None + DomainName: Optional[str] = None + DomainValidationOptions: Optional[ List[AwsCertificateManagerCertificateDomainValidationOptionOutputTypeDef] ] = None + ExtendedKeyUsages: Optional[ List[AwsCertificateManagerCertificateExtendedKeyUsageTypeDef] ] = None + FailureReason: Optional[str] = None + ImportedAt: Optional[str] = None + InUseBy: Optional[List[str]] = None + IssuedAt: Optional[str] = None + Issuer: Optional[str] = None + KeyAlgorithm: Optional[str] = None + KeyUsages: Optional[List[AwsCertificateManagerCertificateKeyUsageTypeDef]] = None + NotAfter: Optional[str] = None + NotBefore: Optional[str] = None + Options: Optional[AwsCertificateManagerCertificateOptionsTypeDef] = None + RenewalEligibility: Optional[str] = None + RenewalSummary: Optional[AwsCertificateManagerCertificateRenewalSummaryOutputTypeDef] = None + Serial: Optional[str] = None + SignatureAlgorithm: Optional[str] = None + Status: Optional[str] = None + Subject: Optional[str] = None + SubjectAlternativeNames: Optional[List[str]] = None + Type: Optional[str] = None + +class AwsCertificateManagerCertificateDetailsTypeDef(BaseModel): + CertificateAuthorityArn: Optional[str] = None + CreatedAt: Optional[str] = None + DomainName: Optional[str] = None + DomainValidationOptions: Optional[ Sequence[AwsCertificateManagerCertificateDomainValidationOptionTypeDef] ] = None + ExtendedKeyUsages: Optional[ Sequence[AwsCertificateManagerCertificateExtendedKeyUsageTypeDef] ] = None + FailureReason: Optional[str] = None + ImportedAt: Optional[str] = None + InUseBy: Optional[Sequence[str]] = None + IssuedAt: Optional[str] = None + Issuer: Optional[str] = None + KeyAlgorithm: Optional[str] = None + KeyUsages: Optional[Sequence[AwsCertificateManagerCertificateKeyUsageTypeDef]] = None + NotAfter: Optional[str] = None + NotBefore: Optional[str] = None + Options: Optional[AwsCertificateManagerCertificateOptionsTypeDef] = None + RenewalEligibility: Optional[str] = None + RenewalSummary: Optional[AwsCertificateManagerCertificateRenewalSummaryTypeDef] = None + Serial: Optional[str] = None + SignatureAlgorithm: Optional[str] = None + Status: Optional[str] = None + Subject: Optional[str] = None + SubjectAlternativeNames: Optional[Sequence[str]] = None + Type: Optional[str] = None + +class AwsCloudFrontDistributionOriginsExtraOutputTypeDef(BaseModel): + Items: Optional[List[AwsCloudFrontDistributionOriginItemExtraOutputTypeDef]] = None + +class AwsCloudFrontDistributionOriginsOutputTypeDef(BaseModel): + Items: Optional[List[AwsCloudFrontDistributionOriginItemOutputTypeDef]] = None + +class AwsCloudFrontDistributionOriginsTypeDef(BaseModel): + Items: Optional[Sequence[AwsCloudFrontDistributionOriginItemTypeDef]] = None + +class AwsCloudFrontDistributionOriginGroupsExtraOutputTypeDef(BaseModel): + Items: Optional[List[AwsCloudFrontDistributionOriginGroupExtraOutputTypeDef]] = None + +class AwsCloudFrontDistributionOriginGroupsOutputTypeDef(BaseModel): + Items: Optional[List[AwsCloudFrontDistributionOriginGroupOutputTypeDef]] = None + +class AwsCloudFrontDistributionOriginGroupsTypeDef(BaseModel): + Items: Optional[Sequence[AwsCloudFrontDistributionOriginGroupTypeDef]] = None + +class AwsDynamoDbTableDetailsExtraOutputTypeDef(BaseModel): + AttributeDefinitions: Optional[List[AwsDynamoDbTableAttributeDefinitionTypeDef]] = None + BillingModeSummary: Optional[AwsDynamoDbTableBillingModeSummaryTypeDef] = None + CreationDateTime: Optional[str] = None + GlobalSecondaryIndexes: Optional[ List[AwsDynamoDbTableGlobalSecondaryIndexExtraOutputTypeDef] ] = None + GlobalTableVersion: Optional[str] = None + ItemCount: Optional[int] = None + KeySchema: Optional[List[AwsDynamoDbTableKeySchemaTypeDef]] = None + LatestStreamArn: Optional[str] = None + LatestStreamLabel: Optional[str] = None + LocalSecondaryIndexes: Optional[ List[AwsDynamoDbTableLocalSecondaryIndexExtraOutputTypeDef] ] = None + ProvisionedThroughput: Optional[AwsDynamoDbTableProvisionedThroughputTypeDef] = None + Replicas: Optional[List[AwsDynamoDbTableReplicaExtraOutputTypeDef]] = None + RestoreSummary: Optional[AwsDynamoDbTableRestoreSummaryTypeDef] = None + SseDescription: Optional[AwsDynamoDbTableSseDescriptionTypeDef] = None + StreamSpecification: Optional[AwsDynamoDbTableStreamSpecificationTypeDef] = None + TableId: Optional[str] = None + TableName: Optional[str] = None + TableSizeBytes: Optional[int] = None + TableStatus: Optional[str] = None + DeletionProtectionEnabled: Optional[bool] = None + +class AwsDynamoDbTableDetailsOutputTypeDef(BaseModel): + AttributeDefinitions: Optional[List[AwsDynamoDbTableAttributeDefinitionTypeDef]] = None + BillingModeSummary: Optional[AwsDynamoDbTableBillingModeSummaryTypeDef] = None + CreationDateTime: Optional[str] = None + GlobalSecondaryIndexes: Optional[ List[AwsDynamoDbTableGlobalSecondaryIndexOutputTypeDef] ] = None + GlobalTableVersion: Optional[str] = None + ItemCount: Optional[int] = None + KeySchema: Optional[List[AwsDynamoDbTableKeySchemaTypeDef]] = None + LatestStreamArn: Optional[str] = None + LatestStreamLabel: Optional[str] = None + LocalSecondaryIndexes: Optional[ List[AwsDynamoDbTableLocalSecondaryIndexOutputTypeDef] ] = None + ProvisionedThroughput: Optional[AwsDynamoDbTableProvisionedThroughputTypeDef] = None + Replicas: Optional[List[AwsDynamoDbTableReplicaOutputTypeDef]] = None + RestoreSummary: Optional[AwsDynamoDbTableRestoreSummaryTypeDef] = None + SseDescription: Optional[AwsDynamoDbTableSseDescriptionTypeDef] = None + StreamSpecification: Optional[AwsDynamoDbTableStreamSpecificationTypeDef] = None + TableId: Optional[str] = None + TableName: Optional[str] = None + TableSizeBytes: Optional[int] = None + TableStatus: Optional[str] = None + DeletionProtectionEnabled: Optional[bool] = None + +class AwsDynamoDbTableDetailsTypeDef(BaseModel): + AttributeDefinitions: Optional[Sequence[AwsDynamoDbTableAttributeDefinitionTypeDef]] = None + BillingModeSummary: Optional[AwsDynamoDbTableBillingModeSummaryTypeDef] = None + CreationDateTime: Optional[str] = None + GlobalSecondaryIndexes: Optional[ Sequence[AwsDynamoDbTableGlobalSecondaryIndexTypeDef] ] = None + GlobalTableVersion: Optional[str] = None + ItemCount: Optional[int] = None + KeySchema: Optional[Sequence[AwsDynamoDbTableKeySchemaTypeDef]] = None + LatestStreamArn: Optional[str] = None + LatestStreamLabel: Optional[str] = None + LocalSecondaryIndexes: Optional[Sequence[AwsDynamoDbTableLocalSecondaryIndexTypeDef]] = None + ProvisionedThroughput: Optional[AwsDynamoDbTableProvisionedThroughputTypeDef] = None + Replicas: Optional[Sequence[AwsDynamoDbTableReplicaTypeDef]] = None + RestoreSummary: Optional[AwsDynamoDbTableRestoreSummaryTypeDef] = None + SseDescription: Optional[AwsDynamoDbTableSseDescriptionTypeDef] = None + StreamSpecification: Optional[AwsDynamoDbTableStreamSpecificationTypeDef] = None + TableId: Optional[str] = None + TableName: Optional[str] = None + TableSizeBytes: Optional[int] = None + TableStatus: Optional[str] = None + DeletionProtectionEnabled: Optional[bool] = None + +class AwsEc2LaunchTemplateDetailsExtraOutputTypeDef(BaseModel): + LaunchTemplateName: Optional[str] = None + Id: Optional[str] = None + LaunchTemplateData: Optional[AwsEc2LaunchTemplateDataDetailsExtraOutputTypeDef] = None + DefaultVersionNumber: Optional[int] = None + LatestVersionNumber: Optional[int] = None + +class AwsEc2LaunchTemplateDetailsOutputTypeDef(BaseModel): + LaunchTemplateName: Optional[str] = None + Id: Optional[str] = None + LaunchTemplateData: Optional[AwsEc2LaunchTemplateDataDetailsOutputTypeDef] = None + DefaultVersionNumber: Optional[int] = None + LatestVersionNumber: Optional[int] = None + +class AwsEc2LaunchTemplateDetailsTypeDef(BaseModel): + LaunchTemplateName: Optional[str] = None + Id: Optional[str] = None + LaunchTemplateData: Optional[AwsEc2LaunchTemplateDataDetailsTypeDef] = None + DefaultVersionNumber: Optional[int] = None + LatestVersionNumber: Optional[int] = None + +class AwsEcsClusterDetailsExtraOutputTypeDef(BaseModel): + ClusterArn: Optional[str] = None + ActiveServicesCount: Optional[int] = None + CapacityProviders: Optional[List[str]] = None + ClusterSettings: Optional[List[AwsEcsClusterClusterSettingsDetailsTypeDef]] = None + Configuration: Optional[AwsEcsClusterConfigurationDetailsTypeDef] = None + DefaultCapacityProviderStrategy: Optional[ List[AwsEcsClusterDefaultCapacityProviderStrategyDetailsTypeDef] ] = None + ClusterName: Optional[str] = None + RegisteredContainerInstancesCount: Optional[int] = None + RunningTasksCount: Optional[int] = None + Status: Optional[str] = None + +class AwsEcsClusterDetailsOutputTypeDef(BaseModel): + ClusterArn: Optional[str] = None + ActiveServicesCount: Optional[int] = None + CapacityProviders: Optional[List[str]] = None + ClusterSettings: Optional[List[AwsEcsClusterClusterSettingsDetailsTypeDef]] = None + Configuration: Optional[AwsEcsClusterConfigurationDetailsTypeDef] = None + DefaultCapacityProviderStrategy: Optional[ List[AwsEcsClusterDefaultCapacityProviderStrategyDetailsTypeDef] ] = None + ClusterName: Optional[str] = None + RegisteredContainerInstancesCount: Optional[int] = None + RunningTasksCount: Optional[int] = None + Status: Optional[str] = None + +class AwsEcsClusterDetailsTypeDef(BaseModel): + ClusterArn: Optional[str] = None + ActiveServicesCount: Optional[int] = None + CapacityProviders: Optional[Sequence[str]] = None + ClusterSettings: Optional[Sequence[AwsEcsClusterClusterSettingsDetailsTypeDef]] = None + Configuration: Optional[AwsEcsClusterConfigurationDetailsTypeDef] = None + DefaultCapacityProviderStrategy: Optional[ Sequence[AwsEcsClusterDefaultCapacityProviderStrategyDetailsTypeDef] ] = None + ClusterName: Optional[str] = None + RegisteredContainerInstancesCount: Optional[int] = None + RunningTasksCount: Optional[int] = None + Status: Optional[str] = None + +class AwsEcsTaskDefinitionDetailsExtraOutputTypeDef(BaseModel): + ContainerDefinitions: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsDetailsExtraOutputTypeDef] ] = None + Cpu: Optional[str] = None + ExecutionRoleArn: Optional[str] = None + Family: Optional[str] = None + InferenceAccelerators: Optional[ List[AwsEcsTaskDefinitionInferenceAcceleratorsDetailsTypeDef] ] = None + IpcMode: Optional[str] = None + Memory: Optional[str] = None + NetworkMode: Optional[str] = None + PidMode: Optional[str] = None + PlacementConstraints: Optional[ List[AwsEcsTaskDefinitionPlacementConstraintsDetailsTypeDef] ] = None + ProxyConfiguration: Optional[ AwsEcsTaskDefinitionProxyConfigurationDetailsExtraOutputTypeDef ] = None + RequiresCompatibilities: Optional[List[str]] = None + TaskRoleArn: Optional[str] = None + Volumes: Optional[List[AwsEcsTaskDefinitionVolumesDetailsExtraOutputTypeDef]] = None + Status: Optional[str] = None + +class AwsEcsTaskDefinitionDetailsOutputTypeDef(BaseModel): + ContainerDefinitions: Optional[ List[AwsEcsTaskDefinitionContainerDefinitionsDetailsOutputTypeDef] ] = None + Cpu: Optional[str] = None + ExecutionRoleArn: Optional[str] = None + Family: Optional[str] = None + InferenceAccelerators: Optional[ List[AwsEcsTaskDefinitionInferenceAcceleratorsDetailsTypeDef] ] = None + IpcMode: Optional[str] = None + Memory: Optional[str] = None + NetworkMode: Optional[str] = None + PidMode: Optional[str] = None + PlacementConstraints: Optional[ List[AwsEcsTaskDefinitionPlacementConstraintsDetailsTypeDef] ] = None + ProxyConfiguration: Optional[ AwsEcsTaskDefinitionProxyConfigurationDetailsOutputTypeDef ] = None + RequiresCompatibilities: Optional[List[str]] = None + TaskRoleArn: Optional[str] = None + Volumes: Optional[List[AwsEcsTaskDefinitionVolumesDetailsOutputTypeDef]] = None + Status: Optional[str] = None + +class AwsEcsTaskDefinitionDetailsTypeDef(BaseModel): + ContainerDefinitions: Optional[ Sequence[AwsEcsTaskDefinitionContainerDefinitionsDetailsTypeDef] ] = None + Cpu: Optional[str] = None + ExecutionRoleArn: Optional[str] = None + Family: Optional[str] = None + InferenceAccelerators: Optional[ Sequence[AwsEcsTaskDefinitionInferenceAcceleratorsDetailsTypeDef] ] = None + IpcMode: Optional[str] = None + Memory: Optional[str] = None + NetworkMode: Optional[str] = None + PidMode: Optional[str] = None + PlacementConstraints: Optional[ Sequence[AwsEcsTaskDefinitionPlacementConstraintsDetailsTypeDef] ] = None + ProxyConfiguration: Optional[AwsEcsTaskDefinitionProxyConfigurationDetailsTypeDef] = None + RequiresCompatibilities: Optional[Sequence[str]] = None + TaskRoleArn: Optional[str] = None + Volumes: Optional[Sequence[AwsEcsTaskDefinitionVolumesDetailsTypeDef]] = None + Status: Optional[str] = None + +class AwsEventsEndpointDetailsExtraOutputTypeDef(BaseModel): + Arn: Optional[str] = None + Description: Optional[str] = None + EndpointId: Optional[str] = None + EndpointUrl: Optional[str] = None + EventBuses: Optional[List[AwsEventsEndpointEventBusesDetailsTypeDef]] = None + Name: Optional[str] = None + ReplicationConfig: Optional[AwsEventsEndpointReplicationConfigDetailsTypeDef] = None + RoleArn: Optional[str] = None + RoutingConfig: Optional[AwsEventsEndpointRoutingConfigDetailsTypeDef] = None + State: Optional[str] = None + StateReason: Optional[str] = None + +class AwsEventsEndpointDetailsOutputTypeDef(BaseModel): + Arn: Optional[str] = None + Description: Optional[str] = None + EndpointId: Optional[str] = None + EndpointUrl: Optional[str] = None + EventBuses: Optional[List[AwsEventsEndpointEventBusesDetailsTypeDef]] = None + Name: Optional[str] = None + ReplicationConfig: Optional[AwsEventsEndpointReplicationConfigDetailsTypeDef] = None + RoleArn: Optional[str] = None + RoutingConfig: Optional[AwsEventsEndpointRoutingConfigDetailsTypeDef] = None + State: Optional[str] = None + StateReason: Optional[str] = None + +class AwsEventsEndpointDetailsTypeDef(BaseModel): + Arn: Optional[str] = None + Description: Optional[str] = None + EndpointId: Optional[str] = None + EndpointUrl: Optional[str] = None + EventBuses: Optional[Sequence[AwsEventsEndpointEventBusesDetailsTypeDef]] = None + Name: Optional[str] = None + ReplicationConfig: Optional[AwsEventsEndpointReplicationConfigDetailsTypeDef] = None + RoleArn: Optional[str] = None + RoutingConfig: Optional[AwsEventsEndpointRoutingConfigDetailsTypeDef] = None + State: Optional[str] = None + StateReason: Optional[str] = None + +class AwsGuardDutyDetectorDataSourcesDetailsTypeDef(BaseModel): + CloudTrail: Optional[AwsGuardDutyDetectorDataSourcesCloudTrailDetailsTypeDef] = None + DnsLogs: Optional[AwsGuardDutyDetectorDataSourcesDnsLogsDetailsTypeDef] = None + FlowLogs: Optional[AwsGuardDutyDetectorDataSourcesFlowLogsDetailsTypeDef] = None + Kubernetes: Optional[AwsGuardDutyDetectorDataSourcesKubernetesDetailsTypeDef] = None + MalwareProtection: Optional[ AwsGuardDutyDetectorDataSourcesMalwareProtectionDetailsTypeDef ] = None + S3Logs: Optional[AwsGuardDutyDetectorDataSourcesS3LogsDetailsTypeDef] = None + +class AwsMskClusterClusterInfoDetailsExtraOutputTypeDef(BaseModel): + EncryptionInfo: Optional[AwsMskClusterClusterInfoEncryptionInfoDetailsTypeDef] = None + CurrentVersion: Optional[str] = None + NumberOfBrokerNodes: Optional[int] = None + ClusterName: Optional[str] = None + ClientAuthentication: Optional[ AwsMskClusterClusterInfoClientAuthenticationDetailsExtraOutputTypeDef ] = None + EnhancedMonitoring: Optional[str] = None + +class AwsMskClusterClusterInfoDetailsOutputTypeDef(BaseModel): + EncryptionInfo: Optional[AwsMskClusterClusterInfoEncryptionInfoDetailsTypeDef] = None + CurrentVersion: Optional[str] = None + NumberOfBrokerNodes: Optional[int] = None + ClusterName: Optional[str] = None + ClientAuthentication: Optional[ AwsMskClusterClusterInfoClientAuthenticationDetailsOutputTypeDef ] = None + EnhancedMonitoring: Optional[str] = None + +class AwsMskClusterClusterInfoDetailsTypeDef(BaseModel): + EncryptionInfo: Optional[AwsMskClusterClusterInfoEncryptionInfoDetailsTypeDef] = None + CurrentVersion: Optional[str] = None + NumberOfBrokerNodes: Optional[int] = None + ClusterName: Optional[str] = None + ClientAuthentication: Optional[ AwsMskClusterClusterInfoClientAuthenticationDetailsTypeDef ] = None + EnhancedMonitoring: Optional[str] = None + +class AwsRdsDbInstanceDetailsExtraOutputTypeDef(BaseModel): + AssociatedRoles: Optional[List[AwsRdsDbInstanceAssociatedRoleTypeDef]] = None + CACertificateIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + DbInstancePort: Optional[int] = None + DbiResourceId: Optional[str] = None + DBName: Optional[str] = None + DeletionProtection: Optional[bool] = None + Endpoint: Optional[AwsRdsDbInstanceEndpointTypeDef] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + InstanceCreateTime: Optional[str] = None + KmsKeyId: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + StorageEncrypted: Optional[bool] = None + TdeCredentialArn: Optional[str] = None + VpcSecurityGroups: Optional[List[AwsRdsDbInstanceVpcSecurityGroupTypeDef]] = None + MultiAz: Optional[bool] = None + EnhancedMonitoringResourceArn: Optional[str] = None + DbInstanceStatus: Optional[str] = None + MasterUsername: Optional[str] = None + AllocatedStorage: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + DbSecurityGroups: Optional[List[str]] = None + DbParameterGroups: Optional[List[AwsRdsDbParameterGroupTypeDef]] = None + AvailabilityZone: Optional[str] = None + DbSubnetGroup: Optional[AwsRdsDbSubnetGroupExtraOutputTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[AwsRdsDbPendingModifiedValuesExtraOutputTypeDef] = None + LatestRestorableTime: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + ReadReplicaSourceDBInstanceIdentifier: Optional[str] = None + ReadReplicaDBInstanceIdentifiers: Optional[List[str]] = None + ReadReplicaDBClusterIdentifiers: Optional[List[str]] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupMemberships: Optional[List[AwsRdsDbOptionGroupMembershipTypeDef]] = None + CharacterSetName: Optional[str] = None + SecondaryAvailabilityZone: Optional[str] = None + StatusInfos: Optional[List[AwsRdsDbStatusInfoTypeDef]] = None + StorageType: Optional[str] = None + DomainMemberships: Optional[List[AwsRdsDbDomainMembershipTypeDef]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + PromotionTier: Optional[int] = None + Timezone: Optional[str] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKmsKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnabledCloudWatchLogsExports: Optional[List[str]] = None + ProcessorFeatures: Optional[List[AwsRdsDbProcessorFeatureTypeDef]] = None + ListenerEndpoint: Optional[AwsRdsDbInstanceEndpointTypeDef] = None + MaxAllocatedStorage: Optional[int] = None + +class AwsRdsDbInstanceDetailsOutputTypeDef(BaseModel): + AssociatedRoles: Optional[List[AwsRdsDbInstanceAssociatedRoleTypeDef]] = None + CACertificateIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + DbInstancePort: Optional[int] = None + DbiResourceId: Optional[str] = None + DBName: Optional[str] = None + DeletionProtection: Optional[bool] = None + Endpoint: Optional[AwsRdsDbInstanceEndpointTypeDef] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + InstanceCreateTime: Optional[str] = None + KmsKeyId: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + StorageEncrypted: Optional[bool] = None + TdeCredentialArn: Optional[str] = None + VpcSecurityGroups: Optional[List[AwsRdsDbInstanceVpcSecurityGroupTypeDef]] = None + MultiAz: Optional[bool] = None + EnhancedMonitoringResourceArn: Optional[str] = None + DbInstanceStatus: Optional[str] = None + MasterUsername: Optional[str] = None + AllocatedStorage: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + DbSecurityGroups: Optional[List[str]] = None + DbParameterGroups: Optional[List[AwsRdsDbParameterGroupTypeDef]] = None + AvailabilityZone: Optional[str] = None + DbSubnetGroup: Optional[AwsRdsDbSubnetGroupOutputTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[AwsRdsDbPendingModifiedValuesOutputTypeDef] = None + LatestRestorableTime: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + ReadReplicaSourceDBInstanceIdentifier: Optional[str] = None + ReadReplicaDBInstanceIdentifiers: Optional[List[str]] = None + ReadReplicaDBClusterIdentifiers: Optional[List[str]] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupMemberships: Optional[List[AwsRdsDbOptionGroupMembershipTypeDef]] = None + CharacterSetName: Optional[str] = None + SecondaryAvailabilityZone: Optional[str] = None + StatusInfos: Optional[List[AwsRdsDbStatusInfoTypeDef]] = None + StorageType: Optional[str] = None + DomainMemberships: Optional[List[AwsRdsDbDomainMembershipTypeDef]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + PromotionTier: Optional[int] = None + Timezone: Optional[str] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKmsKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnabledCloudWatchLogsExports: Optional[List[str]] = None + ProcessorFeatures: Optional[List[AwsRdsDbProcessorFeatureTypeDef]] = None + ListenerEndpoint: Optional[AwsRdsDbInstanceEndpointTypeDef] = None + MaxAllocatedStorage: Optional[int] = None + +class AwsRdsDbInstanceDetailsTypeDef(BaseModel): + AssociatedRoles: Optional[Sequence[AwsRdsDbInstanceAssociatedRoleTypeDef]] = None + CACertificateIdentifier: Optional[str] = None + DBClusterIdentifier: Optional[str] = None + DBInstanceIdentifier: Optional[str] = None + DBInstanceClass: Optional[str] = None + DbInstancePort: Optional[int] = None + DbiResourceId: Optional[str] = None + DBName: Optional[str] = None + DeletionProtection: Optional[bool] = None + Endpoint: Optional[AwsRdsDbInstanceEndpointTypeDef] = None + Engine: Optional[str] = None + EngineVersion: Optional[str] = None + IAMDatabaseAuthenticationEnabled: Optional[bool] = None + InstanceCreateTime: Optional[str] = None + KmsKeyId: Optional[str] = None + PubliclyAccessible: Optional[bool] = None + StorageEncrypted: Optional[bool] = None + TdeCredentialArn: Optional[str] = None + VpcSecurityGroups: Optional[Sequence[AwsRdsDbInstanceVpcSecurityGroupTypeDef]] = None + MultiAz: Optional[bool] = None + EnhancedMonitoringResourceArn: Optional[str] = None + DbInstanceStatus: Optional[str] = None + MasterUsername: Optional[str] = None + AllocatedStorage: Optional[int] = None + PreferredBackupWindow: Optional[str] = None + BackupRetentionPeriod: Optional[int] = None + DbSecurityGroups: Optional[Sequence[str]] = None + DbParameterGroups: Optional[Sequence[AwsRdsDbParameterGroupTypeDef]] = None + AvailabilityZone: Optional[str] = None + DbSubnetGroup: Optional[AwsRdsDbSubnetGroupTypeDef] = None + PreferredMaintenanceWindow: Optional[str] = None + PendingModifiedValues: Optional[AwsRdsDbPendingModifiedValuesTypeDef] = None + LatestRestorableTime: Optional[str] = None + AutoMinorVersionUpgrade: Optional[bool] = None + ReadReplicaSourceDBInstanceIdentifier: Optional[str] = None + ReadReplicaDBInstanceIdentifiers: Optional[Sequence[str]] = None + ReadReplicaDBClusterIdentifiers: Optional[Sequence[str]] = None + LicenseModel: Optional[str] = None + Iops: Optional[int] = None + OptionGroupMemberships: Optional[Sequence[AwsRdsDbOptionGroupMembershipTypeDef]] = None + CharacterSetName: Optional[str] = None + SecondaryAvailabilityZone: Optional[str] = None + StatusInfos: Optional[Sequence[AwsRdsDbStatusInfoTypeDef]] = None + StorageType: Optional[str] = None + DomainMemberships: Optional[Sequence[AwsRdsDbDomainMembershipTypeDef]] = None + CopyTagsToSnapshot: Optional[bool] = None + MonitoringInterval: Optional[int] = None + MonitoringRoleArn: Optional[str] = None + PromotionTier: Optional[int] = None + Timezone: Optional[str] = None + PerformanceInsightsEnabled: Optional[bool] = None + PerformanceInsightsKmsKeyId: Optional[str] = None + PerformanceInsightsRetentionPeriod: Optional[int] = None + EnabledCloudWatchLogsExports: Optional[Sequence[str]] = None + ProcessorFeatures: Optional[Sequence[AwsRdsDbProcessorFeatureTypeDef]] = None + ListenerEndpoint: Optional[AwsRdsDbInstanceEndpointTypeDef] = None + MaxAllocatedStorage: Optional[int] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterDetailsExtraOutputTypeDef(BaseModel): + Predicate: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetailsExtraOutputTypeDef ] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterDetailsOutputTypeDef(BaseModel): + Predicate: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetailsOutputTypeDef ] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesFilterDetailsTypeDef(BaseModel): + Predicate: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterPredicateDetailsTypeDef ] = None + +class AwsS3BucketNotificationConfigurationDetailExtraOutputTypeDef(BaseModel): + Events: Optional[List[str]] = None + Filter: Optional[AwsS3BucketNotificationConfigurationFilterExtraOutputTypeDef] = None + Destination: Optional[str] = None + Type: Optional[str] = None + +class AwsS3BucketNotificationConfigurationDetailOutputTypeDef(BaseModel): + Events: Optional[List[str]] = None + Filter: Optional[AwsS3BucketNotificationConfigurationFilterOutputTypeDef] = None + Destination: Optional[str] = None + Type: Optional[str] = None + +class AwsS3BucketNotificationConfigurationDetailTypeDef(BaseModel): + Events: Optional[Sequence[str]] = None + Filter: Optional[AwsS3BucketNotificationConfigurationFilterTypeDef] = None + Destination: Optional[str] = None + Type: Optional[str] = None + +class AwsStepFunctionStateMachineDetailsExtraOutputTypeDef(BaseModel): + Label: Optional[str] = None + LoggingConfiguration: Optional[ AwsStepFunctionStateMachineLoggingConfigurationDetailsExtraOutputTypeDef ] = None + Name: Optional[str] = None + RoleArn: Optional[str] = None + StateMachineArn: Optional[str] = None + Status: Optional[str] = None + TracingConfiguration: Optional[ AwsStepFunctionStateMachineTracingConfigurationDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsStepFunctionStateMachineDetailsOutputTypeDef(BaseModel): + Label: Optional[str] = None + LoggingConfiguration: Optional[ AwsStepFunctionStateMachineLoggingConfigurationDetailsOutputTypeDef ] = None + Name: Optional[str] = None + RoleArn: Optional[str] = None + StateMachineArn: Optional[str] = None + Status: Optional[str] = None + TracingConfiguration: Optional[ AwsStepFunctionStateMachineTracingConfigurationDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsStepFunctionStateMachineDetailsTypeDef(BaseModel): + Label: Optional[str] = None + LoggingConfiguration: Optional[ AwsStepFunctionStateMachineLoggingConfigurationDetailsTypeDef ] = None + Name: Optional[str] = None + RoleArn: Optional[str] = None + StateMachineArn: Optional[str] = None + Status: Optional[str] = None + TracingConfiguration: Optional[ AwsStepFunctionStateMachineTracingConfigurationDetailsTypeDef ] = None + Type: Optional[str] = None + +class AwsWafv2RulesActionDetailsExtraOutputTypeDef(BaseModel): + Allow: Optional[AwsWafv2ActionAllowDetailsExtraOutputTypeDef] = None + Block: Optional[AwsWafv2ActionBlockDetailsExtraOutputTypeDef] = None + Captcha: Optional[AwsWafv2RulesActionCaptchaDetailsExtraOutputTypeDef] = None + Count: Optional[AwsWafv2RulesActionCountDetailsExtraOutputTypeDef] = None + +class AwsWafv2WebAclActionDetailsExtraOutputTypeDef(BaseModel): + Allow: Optional[AwsWafv2ActionAllowDetailsExtraOutputTypeDef] = None + Block: Optional[AwsWafv2ActionBlockDetailsExtraOutputTypeDef] = None + +class AwsWafv2RulesActionDetailsOutputTypeDef(BaseModel): + Allow: Optional[AwsWafv2ActionAllowDetailsOutputTypeDef] = None + Block: Optional[AwsWafv2ActionBlockDetailsOutputTypeDef] = None + Captcha: Optional[AwsWafv2RulesActionCaptchaDetailsOutputTypeDef] = None + Count: Optional[AwsWafv2RulesActionCountDetailsOutputTypeDef] = None + +class AwsWafv2WebAclActionDetailsOutputTypeDef(BaseModel): + Allow: Optional[AwsWafv2ActionAllowDetailsOutputTypeDef] = None + Block: Optional[AwsWafv2ActionBlockDetailsOutputTypeDef] = None + +class AwsWafv2RulesActionDetailsTypeDef(BaseModel): + Allow: Optional[AwsWafv2ActionAllowDetailsTypeDef] = None + Block: Optional[AwsWafv2ActionBlockDetailsTypeDef] = None + Captcha: Optional[AwsWafv2RulesActionCaptchaDetailsTypeDef] = None + Count: Optional[AwsWafv2RulesActionCountDetailsTypeDef] = None + +class AwsWafv2WebAclActionDetailsTypeDef(BaseModel): + Allow: Optional[AwsWafv2ActionAllowDetailsTypeDef] = None + Block: Optional[AwsWafv2ActionBlockDetailsTypeDef] = None + +class SecurityControlDefinitionTypeDef(BaseModel): + SecurityControlId: str + Title: str + Description: str + RemediationUrl: str + SeverityRating: SeverityRatingType + CurrentRegionAvailability: RegionAvailabilityStatusType + CustomizableProperties: Optional[List[Literal["Parameters"]]] = None + ParameterDefinitions: Optional[Dict[str, ParameterDefinitionTypeDef]] = None + +class BatchGetConfigurationPolicyAssociationsResponseTypeDef(BaseModel): + ConfigurationPolicyAssociations: List[ConfigurationPolicyAssociationSummaryTypeDef] + UnprocessedConfigurationPolicyAssociations: List[ UnprocessedConfigurationPolicyAssociationTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class AutomationRulesConfigTypeDef(BaseModel): + RuleArn: Optional[str] = None + RuleStatus: Optional[RuleStatusType] = None + RuleOrder: Optional[int] = None + RuleName: Optional[str] = None + Description: Optional[str] = None + IsTerminal: Optional[bool] = None + Criteria: Optional[AutomationRulesFindingFiltersOutputTypeDef] = None + Actions: Optional[List[AutomationRulesActionOutputTypeDef]] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + CreatedBy: Optional[str] = None + +class UpdateAutomationRulesRequestItemTypeDef(BaseModel): + RuleArn: str + RuleStatus: Optional[RuleStatusType] = None + RuleOrder: Optional[int] = None + Description: Optional[str] = None + RuleName: Optional[str] = None + IsTerminal: Optional[bool] = None + Criteria: Optional[AutomationRulesFindingFiltersTypeDef] = None + Actions: Optional[Sequence[AutomationRulesActionTypeDef]] = None + +class InsightTypeDef(BaseModel): + InsightArn: str + Name: str + Filters: AwsSecurityFindingFiltersOutputTypeDef + GroupByAttribute: str + +class CreateInsightRequestRequestTypeDef(BaseModel): + Name: str + Filters: AwsSecurityFindingFiltersTypeDef + GroupByAttribute: str + +class GetFindingsRequestGetFindingsPaginateTypeDef(BaseModel): + Filters: Optional[AwsSecurityFindingFiltersTypeDef] = None + SortCriteria: Optional[Sequence[SortCriterionTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetFindingsRequestRequestTypeDef(BaseModel): + Filters: Optional[AwsSecurityFindingFiltersTypeDef] = None + SortCriteria: Optional[Sequence[SortCriterionTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class UpdateFindingsRequestRequestTypeDef(BaseModel): + Filters: AwsSecurityFindingFiltersTypeDef + Note: Optional[NoteUpdateTypeDef] = None + RecordState: Optional[RecordStateType] = None + +class UpdateInsightRequestRequestTypeDef(BaseModel): + InsightArn: str + Name: Optional[str] = None + Filters: Optional[AwsSecurityFindingFiltersTypeDef] = None + GroupByAttribute: Optional[str] = None + +class NetworkPathComponentExtraOutputTypeDef(BaseModel): + ComponentId: Optional[str] = None + ComponentType: Optional[str] = None + Egress: Optional[NetworkHeaderExtraOutputTypeDef] = None + Ingress: Optional[NetworkHeaderExtraOutputTypeDef] = None + +class NetworkPathComponentOutputTypeDef(BaseModel): + ComponentId: Optional[str] = None + ComponentType: Optional[str] = None + Egress: Optional[NetworkHeaderOutputTypeDef] = None + Ingress: Optional[NetworkHeaderOutputTypeDef] = None + +class NetworkPathComponentTypeDef(BaseModel): + ComponentId: Optional[str] = None + ComponentType: Optional[str] = None + Egress: Optional[NetworkHeaderTypeDef] = None + Ingress: Optional[NetworkHeaderTypeDef] = None + +class CustomDataIdentifiersDetectionsExtraOutputTypeDef(BaseModel): + Count: Optional[int] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Occurrences: Optional[OccurrencesExtraOutputTypeDef] = None + +class SensitiveDataDetectionsExtraOutputTypeDef(BaseModel): + Count: Optional[int] = None + Type: Optional[str] = None + Occurrences: Optional[OccurrencesExtraOutputTypeDef] = None + +class CustomDataIdentifiersDetectionsOutputTypeDef(BaseModel): + Count: Optional[int] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Occurrences: Optional[OccurrencesOutputTypeDef] = None + +class SensitiveDataDetectionsOutputTypeDef(BaseModel): + Count: Optional[int] = None + Type: Optional[str] = None + Occurrences: Optional[OccurrencesOutputTypeDef] = None + +class CustomDataIdentifiersDetectionsTypeDef(BaseModel): + Count: Optional[int] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Occurrences: Optional[OccurrencesTypeDef] = None + +class SensitiveDataDetectionsTypeDef(BaseModel): + Count: Optional[int] = None + Type: Optional[str] = None + Occurrences: Optional[OccurrencesTypeDef] = None + +class SecurityControlsConfigurationOutputTypeDef(BaseModel): + EnabledSecurityControlIdentifiers: Optional[List[str]] = None + DisabledSecurityControlIdentifiers: Optional[List[str]] = None + SecurityControlCustomParameters: Optional[ List[SecurityControlCustomParameterOutputTypeDef] ] = None + +class BatchGetSecurityControlsResponseTypeDef(BaseModel): + SecurityControls: List[SecurityControlTypeDef] + UnprocessedIds: List[UnprocessedSecurityControlTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSecurityControlRequestRequestTypeDef(BaseModel): + SecurityControlId: str + Parameters: Mapping[str, ParameterConfigurationUnionTypeDef] + LastUpdateReason: Optional[str] = None + +class SecurityControlsConfigurationTypeDef(BaseModel): + EnabledSecurityControlIdentifiers: Optional[Sequence[str]] = None + DisabledSecurityControlIdentifiers: Optional[Sequence[str]] = None + SecurityControlCustomParameters: Optional[ Sequence[SecurityControlCustomParameterTypeDef] ] = None + +class RuleGroupSourceStatelessRulesDetailsExtraOutputTypeDef(BaseModel): + Priority: Optional[int] = None + RuleDefinition: Optional[RuleGroupSourceStatelessRuleDefinitionExtraOutputTypeDef] = None + +class RuleGroupSourceStatelessRulesDetailsOutputTypeDef(BaseModel): + Priority: Optional[int] = None + RuleDefinition: Optional[RuleGroupSourceStatelessRuleDefinitionOutputTypeDef] = None + +class RuleGroupSourceStatelessRulesDetailsTypeDef(BaseModel): + Priority: Optional[int] = None + RuleDefinition: Optional[RuleGroupSourceStatelessRuleDefinitionTypeDef] = None + +class FirewallPolicyStatelessCustomActionsDetailsExtraOutputTypeDef(BaseModel): + ActionDefinition: Optional[StatelessCustomActionDefinitionExtraOutputTypeDef] = None + ActionName: Optional[str] = None + +class RuleGroupSourceCustomActionsDetailsExtraOutputTypeDef(BaseModel): + ActionDefinition: Optional[StatelessCustomActionDefinitionExtraOutputTypeDef] = None + ActionName: Optional[str] = None + +class FirewallPolicyStatelessCustomActionsDetailsOutputTypeDef(BaseModel): + ActionDefinition: Optional[StatelessCustomActionDefinitionOutputTypeDef] = None + ActionName: Optional[str] = None + +class RuleGroupSourceCustomActionsDetailsOutputTypeDef(BaseModel): + ActionDefinition: Optional[StatelessCustomActionDefinitionOutputTypeDef] = None + ActionName: Optional[str] = None + +class FirewallPolicyStatelessCustomActionsDetailsTypeDef(BaseModel): + ActionDefinition: Optional[StatelessCustomActionDefinitionTypeDef] = None + ActionName: Optional[str] = None + +class RuleGroupSourceCustomActionsDetailsTypeDef(BaseModel): + ActionDefinition: Optional[StatelessCustomActionDefinitionTypeDef] = None + ActionName: Optional[str] = None + +class ActionExtraOutputTypeDef(BaseModel): + ActionType: Optional[str] = None + NetworkConnectionAction: Optional[NetworkConnectionActionTypeDef] = None + AwsApiCallAction: Optional[AwsApiCallActionExtraOutputTypeDef] = None + DnsRequestAction: Optional[DnsRequestActionTypeDef] = None + PortProbeAction: Optional[PortProbeActionExtraOutputTypeDef] = None + +class ActionOutputTypeDef(BaseModel): + ActionType: Optional[str] = None + NetworkConnectionAction: Optional[NetworkConnectionActionTypeDef] = None + AwsApiCallAction: Optional[AwsApiCallActionOutputTypeDef] = None + DnsRequestAction: Optional[DnsRequestActionTypeDef] = None + PortProbeAction: Optional[PortProbeActionOutputTypeDef] = None + +class ActionTypeDef(BaseModel): + ActionType: Optional[str] = None + NetworkConnectionAction: Optional[NetworkConnectionActionTypeDef] = None + AwsApiCallAction: Optional[AwsApiCallActionTypeDef] = None + DnsRequestAction: Optional[DnsRequestActionTypeDef] = None + PortProbeAction: Optional[PortProbeActionTypeDef] = None + +class CreateAutomationRuleRequestRequestTypeDef(BaseModel): + RuleOrder: int + RuleName: str + Description: str + Criteria: AutomationRulesFindingFiltersTypeDef + Actions: Sequence[AutomationRulesActionUnionTypeDef] + Tags: Optional[Mapping[str, str]] = None + RuleStatus: Optional[RuleStatusType] = None + IsTerminal: Optional[bool] = None + +class AwsBackupBackupPlanDetailsExtraOutputTypeDef(BaseModel): + BackupPlan: Optional[AwsBackupBackupPlanBackupPlanDetailsExtraOutputTypeDef] = None + BackupPlanArn: Optional[str] = None + BackupPlanId: Optional[str] = None + VersionId: Optional[str] = None + +class AwsBackupBackupPlanDetailsOutputTypeDef(BaseModel): + BackupPlan: Optional[AwsBackupBackupPlanBackupPlanDetailsOutputTypeDef] = None + BackupPlanArn: Optional[str] = None + BackupPlanId: Optional[str] = None + VersionId: Optional[str] = None + +class AwsBackupBackupPlanDetailsTypeDef(BaseModel): + BackupPlan: Optional[AwsBackupBackupPlanBackupPlanDetailsTypeDef] = None + BackupPlanArn: Optional[str] = None + BackupPlanId: Optional[str] = None + VersionId: Optional[str] = None + +class AwsCloudFrontDistributionDetailsExtraOutputTypeDef(BaseModel): + CacheBehaviors: Optional[AwsCloudFrontDistributionCacheBehaviorsExtraOutputTypeDef] = None + DefaultCacheBehavior: Optional[AwsCloudFrontDistributionDefaultCacheBehaviorTypeDef] = None + DefaultRootObject: Optional[str] = None + DomainName: Optional[str] = None + ETag: Optional[str] = None + LastModifiedTime: Optional[str] = None + Logging: Optional[AwsCloudFrontDistributionLoggingTypeDef] = None + Origins: Optional[AwsCloudFrontDistributionOriginsExtraOutputTypeDef] = None + OriginGroups: Optional[AwsCloudFrontDistributionOriginGroupsExtraOutputTypeDef] = None + ViewerCertificate: Optional[AwsCloudFrontDistributionViewerCertificateTypeDef] = None + Status: Optional[str] = None + WebAclId: Optional[str] = None + +class AwsCloudFrontDistributionDetailsOutputTypeDef(BaseModel): + CacheBehaviors: Optional[AwsCloudFrontDistributionCacheBehaviorsOutputTypeDef] = None + DefaultCacheBehavior: Optional[AwsCloudFrontDistributionDefaultCacheBehaviorTypeDef] = None + DefaultRootObject: Optional[str] = None + DomainName: Optional[str] = None + ETag: Optional[str] = None + LastModifiedTime: Optional[str] = None + Logging: Optional[AwsCloudFrontDistributionLoggingTypeDef] = None + Origins: Optional[AwsCloudFrontDistributionOriginsOutputTypeDef] = None + OriginGroups: Optional[AwsCloudFrontDistributionOriginGroupsOutputTypeDef] = None + ViewerCertificate: Optional[AwsCloudFrontDistributionViewerCertificateTypeDef] = None + Status: Optional[str] = None + WebAclId: Optional[str] = None + +class AwsCloudFrontDistributionDetailsTypeDef(BaseModel): + CacheBehaviors: Optional[AwsCloudFrontDistributionCacheBehaviorsTypeDef] = None + DefaultCacheBehavior: Optional[AwsCloudFrontDistributionDefaultCacheBehaviorTypeDef] = None + DefaultRootObject: Optional[str] = None + DomainName: Optional[str] = None + ETag: Optional[str] = None + LastModifiedTime: Optional[str] = None + Logging: Optional[AwsCloudFrontDistributionLoggingTypeDef] = None + Origins: Optional[AwsCloudFrontDistributionOriginsTypeDef] = None + OriginGroups: Optional[AwsCloudFrontDistributionOriginGroupsTypeDef] = None + ViewerCertificate: Optional[AwsCloudFrontDistributionViewerCertificateTypeDef] = None + Status: Optional[str] = None + WebAclId: Optional[str] = None + +class AwsGuardDutyDetectorDetailsExtraOutputTypeDef(BaseModel): + DataSources: Optional[AwsGuardDutyDetectorDataSourcesDetailsTypeDef] = None + Features: Optional[List[AwsGuardDutyDetectorFeaturesDetailsTypeDef]] = None + FindingPublishingFrequency: Optional[str] = None + ServiceRole: Optional[str] = None + Status: Optional[str] = None + +class AwsGuardDutyDetectorDetailsOutputTypeDef(BaseModel): + DataSources: Optional[AwsGuardDutyDetectorDataSourcesDetailsTypeDef] = None + Features: Optional[List[AwsGuardDutyDetectorFeaturesDetailsTypeDef]] = None + FindingPublishingFrequency: Optional[str] = None + ServiceRole: Optional[str] = None + Status: Optional[str] = None + +class AwsGuardDutyDetectorDetailsTypeDef(BaseModel): + DataSources: Optional[AwsGuardDutyDetectorDataSourcesDetailsTypeDef] = None + Features: Optional[Sequence[AwsGuardDutyDetectorFeaturesDetailsTypeDef]] = None + FindingPublishingFrequency: Optional[str] = None + ServiceRole: Optional[str] = None + Status: Optional[str] = None + +class AwsMskClusterDetailsExtraOutputTypeDef(BaseModel): + ClusterInfo: Optional[AwsMskClusterClusterInfoDetailsExtraOutputTypeDef] = None + +class AwsMskClusterDetailsOutputTypeDef(BaseModel): + ClusterInfo: Optional[AwsMskClusterClusterInfoDetailsOutputTypeDef] = None + +class AwsMskClusterDetailsTypeDef(BaseModel): + ClusterInfo: Optional[AwsMskClusterClusterInfoDetailsTypeDef] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesDetailsExtraOutputTypeDef(BaseModel): + AbortIncompleteMultipartUpload: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetailsTypeDef ] = None + ExpirationDate: Optional[str] = None + ExpirationInDays: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + Filter: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterDetailsExtraOutputTypeDef ] = None + ID: Optional[str] = None + NoncurrentVersionExpirationInDays: Optional[int] = None + NoncurrentVersionTransitions: Optional[ List[ AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetailsTypeDef ] ] = None + Prefix: Optional[str] = None + Status: Optional[str] = None + Transitions: Optional[ List[AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetailsTypeDef] ] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesDetailsOutputTypeDef(BaseModel): + AbortIncompleteMultipartUpload: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetailsTypeDef ] = None + ExpirationDate: Optional[str] = None + ExpirationInDays: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + Filter: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesFilterDetailsOutputTypeDef ] = None + ID: Optional[str] = None + NoncurrentVersionExpirationInDays: Optional[int] = None + NoncurrentVersionTransitions: Optional[ List[ AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetailsTypeDef ] ] = None + Prefix: Optional[str] = None + Status: Optional[str] = None + Transitions: Optional[ List[AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetailsTypeDef] ] = None + +class AwsS3BucketBucketLifecycleConfigurationRulesDetailsTypeDef(BaseModel): + AbortIncompleteMultipartUpload: Optional[ AwsS3BucketBucketLifecycleConfigurationRulesAbortIncompleteMultipartUploadDetailsTypeDef ] = None + ExpirationDate: Optional[str] = None + ExpirationInDays: Optional[int] = None + ExpiredObjectDeleteMarker: Optional[bool] = None + Filter: Optional[AwsS3BucketBucketLifecycleConfigurationRulesFilterDetailsTypeDef] = None + ID: Optional[str] = None + NoncurrentVersionExpirationInDays: Optional[int] = None + NoncurrentVersionTransitions: Optional[ Sequence[ AwsS3BucketBucketLifecycleConfigurationRulesNoncurrentVersionTransitionsDetailsTypeDef ] ] = None + Prefix: Optional[str] = None + Status: Optional[str] = None + Transitions: Optional[ Sequence[AwsS3BucketBucketLifecycleConfigurationRulesTransitionsDetailsTypeDef] ] = None + +class AwsS3BucketNotificationConfigurationExtraOutputTypeDef(BaseModel): + Configurations: Optional[ List[AwsS3BucketNotificationConfigurationDetailExtraOutputTypeDef] ] = None + +class AwsS3BucketNotificationConfigurationOutputTypeDef(BaseModel): + Configurations: Optional[ List[AwsS3BucketNotificationConfigurationDetailOutputTypeDef] ] = None + +class AwsS3BucketNotificationConfigurationTypeDef(BaseModel): + Configurations: Optional[Sequence[AwsS3BucketNotificationConfigurationDetailTypeDef]] = None + +class AwsWafv2RulesDetailsExtraOutputTypeDef(BaseModel): + Action: Optional[AwsWafv2RulesActionDetailsExtraOutputTypeDef] = None + Name: Optional[str] = None + OverrideAction: Optional[str] = None + Priority: Optional[int] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2RulesDetailsOutputTypeDef(BaseModel): + Action: Optional[AwsWafv2RulesActionDetailsOutputTypeDef] = None + Name: Optional[str] = None + OverrideAction: Optional[str] = None + Priority: Optional[int] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2RulesDetailsTypeDef(BaseModel): + Action: Optional[AwsWafv2RulesActionDetailsTypeDef] = None + Name: Optional[str] = None + OverrideAction: Optional[str] = None + Priority: Optional[int] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class GetSecurityControlDefinitionResponseTypeDef(BaseModel): + SecurityControlDefinition: SecurityControlDefinitionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityControlDefinitionsResponseTypeDef(BaseModel): + SecurityControlDefinitions: List[SecurityControlDefinitionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchGetAutomationRulesResponseTypeDef(BaseModel): + Rules: List[AutomationRulesConfigTypeDef] + UnprocessedAutomationRules: List[UnprocessedAutomationRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateAutomationRulesRequestRequestTypeDef(BaseModel): + UpdateAutomationRulesRequestItems: Sequence[UpdateAutomationRulesRequestItemTypeDef] + +class GetInsightsResponseTypeDef(BaseModel): + Insights: List[InsightTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CustomDataIdentifiersResultExtraOutputTypeDef(BaseModel): + Detections: Optional[List[CustomDataIdentifiersDetectionsExtraOutputTypeDef]] = None + TotalCount: Optional[int] = None + +class SensitiveDataResultExtraOutputTypeDef(BaseModel): + Category: Optional[str] = None + Detections: Optional[List[SensitiveDataDetectionsExtraOutputTypeDef]] = None + TotalCount: Optional[int] = None + +class CustomDataIdentifiersResultOutputTypeDef(BaseModel): + Detections: Optional[List[CustomDataIdentifiersDetectionsOutputTypeDef]] = None + TotalCount: Optional[int] = None + +class SensitiveDataResultOutputTypeDef(BaseModel): + Category: Optional[str] = None + Detections: Optional[List[SensitiveDataDetectionsOutputTypeDef]] = None + TotalCount: Optional[int] = None + +class CustomDataIdentifiersResultTypeDef(BaseModel): + Detections: Optional[Sequence[CustomDataIdentifiersDetectionsTypeDef]] = None + TotalCount: Optional[int] = None + +class SensitiveDataResultTypeDef(BaseModel): + Category: Optional[str] = None + Detections: Optional[Sequence[SensitiveDataDetectionsTypeDef]] = None + TotalCount: Optional[int] = None + +class SecurityHubPolicyOutputTypeDef(BaseModel): + ServiceEnabled: Optional[bool] = None + EnabledStandardIdentifiers: Optional[List[str]] = None + SecurityControlsConfiguration: Optional[SecurityControlsConfigurationOutputTypeDef] = None + +class SecurityHubPolicyTypeDef(BaseModel): + ServiceEnabled: Optional[bool] = None + EnabledStandardIdentifiers: Optional[Sequence[str]] = None + SecurityControlsConfiguration: Optional[SecurityControlsConfigurationTypeDef] = None + +class FirewallPolicyDetailsExtraOutputTypeDef(BaseModel): + StatefulRuleGroupReferences: Optional[ List[FirewallPolicyStatefulRuleGroupReferencesDetailsTypeDef] ] = None + StatelessCustomActions: Optional[ List[FirewallPolicyStatelessCustomActionsDetailsExtraOutputTypeDef] ] = None + StatelessDefaultActions: Optional[List[str]] = None + StatelessFragmentDefaultActions: Optional[List[str]] = None + StatelessRuleGroupReferences: Optional[ List[FirewallPolicyStatelessRuleGroupReferencesDetailsTypeDef] ] = None + +class RuleGroupSourceStatelessRulesAndCustomActionsDetailsExtraOutputTypeDef(BaseModel): + CustomActions: Optional[List[RuleGroupSourceCustomActionsDetailsExtraOutputTypeDef]] = None + StatelessRules: Optional[List[RuleGroupSourceStatelessRulesDetailsExtraOutputTypeDef]] = None + +class FirewallPolicyDetailsOutputTypeDef(BaseModel): + StatefulRuleGroupReferences: Optional[ List[FirewallPolicyStatefulRuleGroupReferencesDetailsTypeDef] ] = None + StatelessCustomActions: Optional[ List[FirewallPolicyStatelessCustomActionsDetailsOutputTypeDef] ] = None + StatelessDefaultActions: Optional[List[str]] = None + StatelessFragmentDefaultActions: Optional[List[str]] = None + StatelessRuleGroupReferences: Optional[ List[FirewallPolicyStatelessRuleGroupReferencesDetailsTypeDef] ] = None + +class RuleGroupSourceStatelessRulesAndCustomActionsDetailsOutputTypeDef(BaseModel): + CustomActions: Optional[List[RuleGroupSourceCustomActionsDetailsOutputTypeDef]] = None + StatelessRules: Optional[List[RuleGroupSourceStatelessRulesDetailsOutputTypeDef]] = None + +class FirewallPolicyDetailsTypeDef(BaseModel): + StatefulRuleGroupReferences: Optional[ Sequence[FirewallPolicyStatefulRuleGroupReferencesDetailsTypeDef] ] = None + StatelessCustomActions: Optional[ Sequence[FirewallPolicyStatelessCustomActionsDetailsTypeDef] ] = None + StatelessDefaultActions: Optional[Sequence[str]] = None + StatelessFragmentDefaultActions: Optional[Sequence[str]] = None + StatelessRuleGroupReferences: Optional[ Sequence[FirewallPolicyStatelessRuleGroupReferencesDetailsTypeDef] ] = None + +class RuleGroupSourceStatelessRulesAndCustomActionsDetailsTypeDef(BaseModel): + CustomActions: Optional[Sequence[RuleGroupSourceCustomActionsDetailsTypeDef]] = None + StatelessRules: Optional[Sequence[RuleGroupSourceStatelessRulesDetailsTypeDef]] = None + +class AwsS3BucketBucketLifecycleConfigurationDetailsExtraOutputTypeDef(BaseModel): + Rules: Optional[ List[AwsS3BucketBucketLifecycleConfigurationRulesDetailsExtraOutputTypeDef] ] = None + +class AwsS3BucketBucketLifecycleConfigurationDetailsOutputTypeDef(BaseModel): + Rules: Optional[ List[AwsS3BucketBucketLifecycleConfigurationRulesDetailsOutputTypeDef] ] = None + +class AwsS3BucketBucketLifecycleConfigurationDetailsTypeDef(BaseModel): + Rules: Optional[Sequence[AwsS3BucketBucketLifecycleConfigurationRulesDetailsTypeDef]] = None + +class AwsWafv2RuleGroupDetailsExtraOutputTypeDef(BaseModel): + Capacity: Optional[int] = None + Description: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + Rules: Optional[List[AwsWafv2RulesDetailsExtraOutputTypeDef]] = None + Scope: Optional[str] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2WebAclDetailsExtraOutputTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + ManagedbyFirewallManager: Optional[bool] = None + Id: Optional[str] = None + Capacity: Optional[int] = None + CaptchaConfig: Optional[AwsWafv2WebAclCaptchaConfigDetailsTypeDef] = None + DefaultAction: Optional[AwsWafv2WebAclActionDetailsExtraOutputTypeDef] = None + Description: Optional[str] = None + Rules: Optional[List[AwsWafv2RulesDetailsExtraOutputTypeDef]] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2RuleGroupDetailsOutputTypeDef(BaseModel): + Capacity: Optional[int] = None + Description: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + Rules: Optional[List[AwsWafv2RulesDetailsOutputTypeDef]] = None + Scope: Optional[str] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2WebAclDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + ManagedbyFirewallManager: Optional[bool] = None + Id: Optional[str] = None + Capacity: Optional[int] = None + CaptchaConfig: Optional[AwsWafv2WebAclCaptchaConfigDetailsTypeDef] = None + DefaultAction: Optional[AwsWafv2WebAclActionDetailsOutputTypeDef] = None + Description: Optional[str] = None + Rules: Optional[List[AwsWafv2RulesDetailsOutputTypeDef]] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2RuleGroupDetailsTypeDef(BaseModel): + Capacity: Optional[int] = None + Description: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + Rules: Optional[Sequence[AwsWafv2RulesDetailsTypeDef]] = None + Scope: Optional[str] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class AwsWafv2WebAclDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + ManagedbyFirewallManager: Optional[bool] = None + Id: Optional[str] = None + Capacity: Optional[int] = None + CaptchaConfig: Optional[AwsWafv2WebAclCaptchaConfigDetailsTypeDef] = None + DefaultAction: Optional[AwsWafv2WebAclActionDetailsTypeDef] = None + Description: Optional[str] = None + Rules: Optional[Sequence[AwsWafv2RulesDetailsTypeDef]] = None + VisibilityConfig: Optional[AwsWafv2VisibilityConfigDetailsTypeDef] = None + +class ClassificationResultExtraOutputTypeDef(BaseModel): + MimeType: Optional[str] = None + SizeClassified: Optional[int] = None + AdditionalOccurrences: Optional[bool] = None + Status: Optional[ClassificationStatusTypeDef] = None + SensitiveData: Optional[List[SensitiveDataResultExtraOutputTypeDef]] = None + CustomDataIdentifiers: Optional[CustomDataIdentifiersResultExtraOutputTypeDef] = None + +class ClassificationResultOutputTypeDef(BaseModel): + MimeType: Optional[str] = None + SizeClassified: Optional[int] = None + AdditionalOccurrences: Optional[bool] = None + Status: Optional[ClassificationStatusTypeDef] = None + SensitiveData: Optional[List[SensitiveDataResultOutputTypeDef]] = None + CustomDataIdentifiers: Optional[CustomDataIdentifiersResultOutputTypeDef] = None + +class ClassificationResultTypeDef(BaseModel): + MimeType: Optional[str] = None + SizeClassified: Optional[int] = None + AdditionalOccurrences: Optional[bool] = None + Status: Optional[ClassificationStatusTypeDef] = None + SensitiveData: Optional[Sequence[SensitiveDataResultTypeDef]] = None + CustomDataIdentifiers: Optional[CustomDataIdentifiersResultTypeDef] = None + +class PolicyOutputTypeDef(BaseModel): + SecurityHub: Optional[SecurityHubPolicyOutputTypeDef] = None + +class PolicyTypeDef(BaseModel): + SecurityHub: Optional[SecurityHubPolicyTypeDef] = None + +class AwsNetworkFirewallFirewallPolicyDetailsExtraOutputTypeDef(BaseModel): + FirewallPolicy: Optional[FirewallPolicyDetailsExtraOutputTypeDef] = None + FirewallPolicyArn: Optional[str] = None + FirewallPolicyId: Optional[str] = None + FirewallPolicyName: Optional[str] = None + Description: Optional[str] = None + +class RuleGroupSourceExtraOutputTypeDef(BaseModel): + RulesSourceList: Optional[RuleGroupSourceListDetailsExtraOutputTypeDef] = None + RulesString: Optional[str] = None + StatefulRules: Optional[List[RuleGroupSourceStatefulRulesDetailsExtraOutputTypeDef]] = None + StatelessRulesAndCustomActions: Optional[ RuleGroupSourceStatelessRulesAndCustomActionsDetailsExtraOutputTypeDef ] = None + +class AwsNetworkFirewallFirewallPolicyDetailsOutputTypeDef(BaseModel): + FirewallPolicy: Optional[FirewallPolicyDetailsOutputTypeDef] = None + FirewallPolicyArn: Optional[str] = None + FirewallPolicyId: Optional[str] = None + FirewallPolicyName: Optional[str] = None + Description: Optional[str] = None + +class RuleGroupSourceOutputTypeDef(BaseModel): + RulesSourceList: Optional[RuleGroupSourceListDetailsOutputTypeDef] = None + RulesString: Optional[str] = None + StatefulRules: Optional[List[RuleGroupSourceStatefulRulesDetailsOutputTypeDef]] = None + StatelessRulesAndCustomActions: Optional[ RuleGroupSourceStatelessRulesAndCustomActionsDetailsOutputTypeDef ] = None + +class AwsNetworkFirewallFirewallPolicyDetailsTypeDef(BaseModel): + FirewallPolicy: Optional[FirewallPolicyDetailsTypeDef] = None + FirewallPolicyArn: Optional[str] = None + FirewallPolicyId: Optional[str] = None + FirewallPolicyName: Optional[str] = None + Description: Optional[str] = None + +class RuleGroupSourceTypeDef(BaseModel): + RulesSourceList: Optional[RuleGroupSourceListDetailsTypeDef] = None + RulesString: Optional[str] = None + StatefulRules: Optional[Sequence[RuleGroupSourceStatefulRulesDetailsTypeDef]] = None + StatelessRulesAndCustomActions: Optional[ RuleGroupSourceStatelessRulesAndCustomActionsDetailsTypeDef ] = None + +class AwsS3BucketDetailsExtraOutputTypeDef(BaseModel): + OwnerId: Optional[str] = None + OwnerName: Optional[str] = None + OwnerAccountId: Optional[str] = None + CreatedAt: Optional[str] = None + ServerSideEncryptionConfiguration: Optional[ AwsS3BucketServerSideEncryptionConfigurationExtraOutputTypeDef ] = None + BucketLifecycleConfiguration: Optional[ AwsS3BucketBucketLifecycleConfigurationDetailsExtraOutputTypeDef ] = None + PublicAccessBlockConfiguration: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + AccessControlList: Optional[str] = None + BucketLoggingConfiguration: Optional[AwsS3BucketLoggingConfigurationTypeDef] = None + BucketWebsiteConfiguration: Optional[ AwsS3BucketWebsiteConfigurationExtraOutputTypeDef ] = None + BucketNotificationConfiguration: Optional[ AwsS3BucketNotificationConfigurationExtraOutputTypeDef ] = None + BucketVersioningConfiguration: Optional[ AwsS3BucketBucketVersioningConfigurationTypeDef ] = None + ObjectLockConfiguration: Optional[AwsS3BucketObjectLockConfigurationTypeDef] = None + Name: Optional[str] = None + +class AwsS3BucketDetailsOutputTypeDef(BaseModel): + OwnerId: Optional[str] = None + OwnerName: Optional[str] = None + OwnerAccountId: Optional[str] = None + CreatedAt: Optional[str] = None + ServerSideEncryptionConfiguration: Optional[ AwsS3BucketServerSideEncryptionConfigurationOutputTypeDef ] = None + BucketLifecycleConfiguration: Optional[ AwsS3BucketBucketLifecycleConfigurationDetailsOutputTypeDef ] = None + PublicAccessBlockConfiguration: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + AccessControlList: Optional[str] = None + BucketLoggingConfiguration: Optional[AwsS3BucketLoggingConfigurationTypeDef] = None + BucketWebsiteConfiguration: Optional[AwsS3BucketWebsiteConfigurationOutputTypeDef] = None + BucketNotificationConfiguration: Optional[ AwsS3BucketNotificationConfigurationOutputTypeDef ] = None + BucketVersioningConfiguration: Optional[ AwsS3BucketBucketVersioningConfigurationTypeDef ] = None + ObjectLockConfiguration: Optional[AwsS3BucketObjectLockConfigurationTypeDef] = None + Name: Optional[str] = None + +class AwsS3BucketDetailsTypeDef(BaseModel): + OwnerId: Optional[str] = None + OwnerName: Optional[str] = None + OwnerAccountId: Optional[str] = None + CreatedAt: Optional[str] = None + ServerSideEncryptionConfiguration: Optional[ AwsS3BucketServerSideEncryptionConfigurationTypeDef ] = None + BucketLifecycleConfiguration: Optional[ AwsS3BucketBucketLifecycleConfigurationDetailsTypeDef ] = None + PublicAccessBlockConfiguration: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + AccessControlList: Optional[str] = None + BucketLoggingConfiguration: Optional[AwsS3BucketLoggingConfigurationTypeDef] = None + BucketWebsiteConfiguration: Optional[AwsS3BucketWebsiteConfigurationTypeDef] = None + BucketNotificationConfiguration: Optional[AwsS3BucketNotificationConfigurationTypeDef] = None + BucketVersioningConfiguration: Optional[ AwsS3BucketBucketVersioningConfigurationTypeDef ] = None + ObjectLockConfiguration: Optional[AwsS3BucketObjectLockConfigurationTypeDef] = None + Name: Optional[str] = None + +class DataClassificationDetailsExtraOutputTypeDef(BaseModel): + DetailedResultsLocation: Optional[str] = None + Result: Optional[ClassificationResultExtraOutputTypeDef] = None + +class DataClassificationDetailsOutputTypeDef(BaseModel): + DetailedResultsLocation: Optional[str] = None + Result: Optional[ClassificationResultOutputTypeDef] = None + +class DataClassificationDetailsTypeDef(BaseModel): + DetailedResultsLocation: Optional[str] = None + Result: Optional[ClassificationResultTypeDef] = None + +class CreateConfigurationPolicyResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Description: str + UpdatedAt: datetime + CreatedAt: datetime + ConfigurationPolicy: PolicyOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetConfigurationPolicyResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Description: str + UpdatedAt: datetime + CreatedAt: datetime + ConfigurationPolicy: PolicyOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConfigurationPolicyResponseTypeDef(BaseModel): + Arn: str + Id: str + Name: str + Description: str + UpdatedAt: datetime + CreatedAt: datetime + ConfigurationPolicy: PolicyOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationPolicyRequestRequestTypeDef(BaseModel): + Name: str + ConfigurationPolicy: PolicyTypeDef + Description: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class UpdateConfigurationPolicyRequestRequestTypeDef(BaseModel): + Identifier: str + Name: Optional[str] = None + Description: Optional[str] = None + UpdatedReason: Optional[str] = None + ConfigurationPolicy: Optional[PolicyTypeDef] = None + +class RuleGroupDetailsExtraOutputTypeDef(BaseModel): + RuleVariables: Optional[RuleGroupVariablesExtraOutputTypeDef] = None + RulesSource: Optional[RuleGroupSourceExtraOutputTypeDef] = None + +class RuleGroupDetailsOutputTypeDef(BaseModel): + RuleVariables: Optional[RuleGroupVariablesOutputTypeDef] = None + RulesSource: Optional[RuleGroupSourceOutputTypeDef] = None + +class RuleGroupDetailsTypeDef(BaseModel): + RuleVariables: Optional[RuleGroupVariablesTypeDef] = None + RulesSource: Optional[RuleGroupSourceTypeDef] = None + +class AwsNetworkFirewallRuleGroupDetailsExtraOutputTypeDef(BaseModel): + Capacity: Optional[int] = None + Description: Optional[str] = None + RuleGroup: Optional[RuleGroupDetailsExtraOutputTypeDef] = None + RuleGroupArn: Optional[str] = None + RuleGroupId: Optional[str] = None + RuleGroupName: Optional[str] = None + Type: Optional[str] = None + +class AwsNetworkFirewallRuleGroupDetailsOutputTypeDef(BaseModel): + Capacity: Optional[int] = None + Description: Optional[str] = None + RuleGroup: Optional[RuleGroupDetailsOutputTypeDef] = None + RuleGroupArn: Optional[str] = None + RuleGroupId: Optional[str] = None + RuleGroupName: Optional[str] = None + Type: Optional[str] = None + +class AwsNetworkFirewallRuleGroupDetailsTypeDef(BaseModel): + Capacity: Optional[int] = None + Description: Optional[str] = None + RuleGroup: Optional[RuleGroupDetailsTypeDef] = None + RuleGroupArn: Optional[str] = None + RuleGroupId: Optional[str] = None + RuleGroupName: Optional[str] = None + Type: Optional[str] = None + +class ResourceDetailsExtraOutputTypeDef(BaseModel): + AwsAutoScalingAutoScalingGroup: Optional[ AwsAutoScalingAutoScalingGroupDetailsExtraOutputTypeDef ] = None + AwsCodeBuildProject: Optional[AwsCodeBuildProjectDetailsExtraOutputTypeDef] = None + AwsCloudFrontDistribution: Optional[ AwsCloudFrontDistributionDetailsExtraOutputTypeDef ] = None + AwsEc2Instance: Optional[AwsEc2InstanceDetailsExtraOutputTypeDef] = None + AwsEc2NetworkInterface: Optional[AwsEc2NetworkInterfaceDetailsExtraOutputTypeDef] = None + AwsEc2SecurityGroup: Optional[AwsEc2SecurityGroupDetailsExtraOutputTypeDef] = None + AwsEc2Volume: Optional[AwsEc2VolumeDetailsExtraOutputTypeDef] = None + AwsEc2Vpc: Optional[AwsEc2VpcDetailsExtraOutputTypeDef] = None + AwsEc2Eip: Optional[AwsEc2EipDetailsTypeDef] = None + AwsEc2Subnet: Optional[AwsEc2SubnetDetailsExtraOutputTypeDef] = None + AwsEc2NetworkAcl: Optional[AwsEc2NetworkAclDetailsExtraOutputTypeDef] = None + AwsElbv2LoadBalancer: Optional[AwsElbv2LoadBalancerDetailsExtraOutputTypeDef] = None + AwsElasticBeanstalkEnvironment: Optional[ AwsElasticBeanstalkEnvironmentDetailsExtraOutputTypeDef ] = None + AwsElasticsearchDomain: Optional[AwsElasticsearchDomainDetailsExtraOutputTypeDef] = None + AwsS3Bucket: Optional[AwsS3BucketDetailsExtraOutputTypeDef] = None + AwsS3AccountPublicAccessBlock: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + AwsS3Object: Optional[AwsS3ObjectDetailsTypeDef] = None + AwsSecretsManagerSecret: Optional[AwsSecretsManagerSecretDetailsTypeDef] = None + AwsIamAccessKey: Optional[AwsIamAccessKeyDetailsTypeDef] = None + AwsIamUser: Optional[AwsIamUserDetailsExtraOutputTypeDef] = None + AwsIamPolicy: Optional[AwsIamPolicyDetailsExtraOutputTypeDef] = None + AwsApiGatewayV2Stage: Optional[AwsApiGatewayV2StageDetailsExtraOutputTypeDef] = None + AwsApiGatewayV2Api: Optional[AwsApiGatewayV2ApiDetailsExtraOutputTypeDef] = None + AwsDynamoDbTable: Optional[AwsDynamoDbTableDetailsExtraOutputTypeDef] = None + AwsApiGatewayStage: Optional[AwsApiGatewayStageDetailsExtraOutputTypeDef] = None + AwsApiGatewayRestApi: Optional[AwsApiGatewayRestApiDetailsExtraOutputTypeDef] = None + AwsCloudTrailTrail: Optional[AwsCloudTrailTrailDetailsTypeDef] = None + AwsSsmPatchCompliance: Optional[AwsSsmPatchComplianceDetailsTypeDef] = None + AwsCertificateManagerCertificate: Optional[ AwsCertificateManagerCertificateDetailsExtraOutputTypeDef ] = None + AwsRedshiftCluster: Optional[AwsRedshiftClusterDetailsExtraOutputTypeDef] = None + AwsElbLoadBalancer: Optional[AwsElbLoadBalancerDetailsExtraOutputTypeDef] = None + AwsIamGroup: Optional[AwsIamGroupDetailsExtraOutputTypeDef] = None + AwsIamRole: Optional[AwsIamRoleDetailsExtraOutputTypeDef] = None + AwsKmsKey: Optional[AwsKmsKeyDetailsTypeDef] = None + AwsLambdaFunction: Optional[AwsLambdaFunctionDetailsExtraOutputTypeDef] = None + AwsLambdaLayerVersion: Optional[AwsLambdaLayerVersionDetailsExtraOutputTypeDef] = None + AwsRdsDbInstance: Optional[AwsRdsDbInstanceDetailsExtraOutputTypeDef] = None + AwsSnsTopic: Optional[AwsSnsTopicDetailsExtraOutputTypeDef] = None + AwsSqsQueue: Optional[AwsSqsQueueDetailsTypeDef] = None + AwsWafWebAcl: Optional[AwsWafWebAclDetailsExtraOutputTypeDef] = None + AwsRdsDbSnapshot: Optional[AwsRdsDbSnapshotDetailsExtraOutputTypeDef] = None + AwsRdsDbClusterSnapshot: Optional[AwsRdsDbClusterSnapshotDetailsExtraOutputTypeDef] = None + AwsRdsDbCluster: Optional[AwsRdsDbClusterDetailsExtraOutputTypeDef] = None + AwsEcsCluster: Optional[AwsEcsClusterDetailsExtraOutputTypeDef] = None + AwsEcsContainer: Optional[AwsEcsContainerDetailsExtraOutputTypeDef] = None + AwsEcsTaskDefinition: Optional[AwsEcsTaskDefinitionDetailsExtraOutputTypeDef] = None + Container: Optional[ContainerDetailsExtraOutputTypeDef] = None + Other: Optional[Dict[str, str]] = None + AwsRdsEventSubscription: Optional[AwsRdsEventSubscriptionDetailsExtraOutputTypeDef] = None + AwsEcsService: Optional[AwsEcsServiceDetailsExtraOutputTypeDef] = None + AwsAutoScalingLaunchConfiguration: Optional[ AwsAutoScalingLaunchConfigurationDetailsExtraOutputTypeDef ] = None + AwsEc2VpnConnection: Optional[AwsEc2VpnConnectionDetailsExtraOutputTypeDef] = None + AwsEcrContainerImage: Optional[AwsEcrContainerImageDetailsExtraOutputTypeDef] = None + AwsOpenSearchServiceDomain: Optional[ AwsOpenSearchServiceDomainDetailsExtraOutputTypeDef ] = None + AwsEc2VpcEndpointService: Optional[AwsEc2VpcEndpointServiceDetailsExtraOutputTypeDef] = None + AwsXrayEncryptionConfig: Optional[AwsXrayEncryptionConfigDetailsTypeDef] = None + AwsWafRateBasedRule: Optional[AwsWafRateBasedRuleDetailsExtraOutputTypeDef] = None + AwsWafRegionalRateBasedRule: Optional[ AwsWafRegionalRateBasedRuleDetailsExtraOutputTypeDef ] = None + AwsEcrRepository: Optional[AwsEcrRepositoryDetailsTypeDef] = None + AwsEksCluster: Optional[AwsEksClusterDetailsExtraOutputTypeDef] = None + AwsNetworkFirewallFirewallPolicy: Optional[ AwsNetworkFirewallFirewallPolicyDetailsExtraOutputTypeDef ] = None + AwsNetworkFirewallFirewall: Optional[ AwsNetworkFirewallFirewallDetailsExtraOutputTypeDef ] = None + AwsNetworkFirewallRuleGroup: Optional[ AwsNetworkFirewallRuleGroupDetailsExtraOutputTypeDef ] = None + AwsRdsDbSecurityGroup: Optional[AwsRdsDbSecurityGroupDetailsExtraOutputTypeDef] = None + AwsKinesisStream: Optional[AwsKinesisStreamDetailsTypeDef] = None + AwsEc2TransitGateway: Optional[AwsEc2TransitGatewayDetailsExtraOutputTypeDef] = None + AwsEfsAccessPoint: Optional[AwsEfsAccessPointDetailsExtraOutputTypeDef] = None + AwsCloudFormationStack: Optional[AwsCloudFormationStackDetailsExtraOutputTypeDef] = None + AwsCloudWatchAlarm: Optional[AwsCloudWatchAlarmDetailsExtraOutputTypeDef] = None + AwsEc2VpcPeeringConnection: Optional[ AwsEc2VpcPeeringConnectionDetailsExtraOutputTypeDef ] = None + AwsWafRegionalRuleGroup: Optional[AwsWafRegionalRuleGroupDetailsExtraOutputTypeDef] = None + AwsWafRegionalRule: Optional[AwsWafRegionalRuleDetailsExtraOutputTypeDef] = None + AwsWafRegionalWebAcl: Optional[AwsWafRegionalWebAclDetailsExtraOutputTypeDef] = None + AwsWafRule: Optional[AwsWafRuleDetailsExtraOutputTypeDef] = None + AwsWafRuleGroup: Optional[AwsWafRuleGroupDetailsExtraOutputTypeDef] = None + AwsEcsTask: Optional[AwsEcsTaskDetailsExtraOutputTypeDef] = None + AwsBackupBackupVault: Optional[AwsBackupBackupVaultDetailsExtraOutputTypeDef] = None + AwsBackupBackupPlan: Optional[AwsBackupBackupPlanDetailsExtraOutputTypeDef] = None + AwsBackupRecoveryPoint: Optional[AwsBackupRecoveryPointDetailsTypeDef] = None + AwsEc2LaunchTemplate: Optional[AwsEc2LaunchTemplateDetailsExtraOutputTypeDef] = None + AwsSageMakerNotebookInstance: Optional[ AwsSageMakerNotebookInstanceDetailsExtraOutputTypeDef ] = None + AwsWafv2WebAcl: Optional[AwsWafv2WebAclDetailsExtraOutputTypeDef] = None + AwsWafv2RuleGroup: Optional[AwsWafv2RuleGroupDetailsExtraOutputTypeDef] = None + AwsEc2RouteTable: Optional[AwsEc2RouteTableDetailsExtraOutputTypeDef] = None + AwsAmazonMqBroker: Optional[AwsAmazonMqBrokerDetailsExtraOutputTypeDef] = None + AwsAppSyncGraphQlApi: Optional[AwsAppSyncGraphQlApiDetailsExtraOutputTypeDef] = None + AwsEventSchemasRegistry: Optional[AwsEventSchemasRegistryDetailsTypeDef] = None + AwsGuardDutyDetector: Optional[AwsGuardDutyDetectorDetailsExtraOutputTypeDef] = None + AwsStepFunctionStateMachine: Optional[ AwsStepFunctionStateMachineDetailsExtraOutputTypeDef ] = None + AwsAthenaWorkGroup: Optional[AwsAthenaWorkGroupDetailsTypeDef] = None + AwsEventsEventbus: Optional[AwsEventsEventbusDetailsTypeDef] = None + AwsDmsEndpoint: Optional[AwsDmsEndpointDetailsTypeDef] = None + AwsEventsEndpoint: Optional[AwsEventsEndpointDetailsExtraOutputTypeDef] = None + AwsDmsReplicationTask: Optional[AwsDmsReplicationTaskDetailsTypeDef] = None + AwsDmsReplicationInstance: Optional[ AwsDmsReplicationInstanceDetailsExtraOutputTypeDef ] = None + AwsRoute53HostedZone: Optional[AwsRoute53HostedZoneDetailsExtraOutputTypeDef] = None + AwsMskCluster: Optional[AwsMskClusterDetailsExtraOutputTypeDef] = None + AwsS3AccessPoint: Optional[AwsS3AccessPointDetailsTypeDef] = None + AwsEc2ClientVpnEndpoint: Optional[AwsEc2ClientVpnEndpointDetailsExtraOutputTypeDef] = None + +class ResourceDetailsOutputTypeDef(BaseModel): + AwsAutoScalingAutoScalingGroup: Optional[ AwsAutoScalingAutoScalingGroupDetailsOutputTypeDef ] = None + AwsCodeBuildProject: Optional[AwsCodeBuildProjectDetailsOutputTypeDef] = None + AwsCloudFrontDistribution: Optional[AwsCloudFrontDistributionDetailsOutputTypeDef] = None + AwsEc2Instance: Optional[AwsEc2InstanceDetailsOutputTypeDef] = None + AwsEc2NetworkInterface: Optional[AwsEc2NetworkInterfaceDetailsOutputTypeDef] = None + AwsEc2SecurityGroup: Optional[AwsEc2SecurityGroupDetailsOutputTypeDef] = None + AwsEc2Volume: Optional[AwsEc2VolumeDetailsOutputTypeDef] = None + AwsEc2Vpc: Optional[AwsEc2VpcDetailsOutputTypeDef] = None + AwsEc2Eip: Optional[AwsEc2EipDetailsTypeDef] = None + AwsEc2Subnet: Optional[AwsEc2SubnetDetailsOutputTypeDef] = None + AwsEc2NetworkAcl: Optional[AwsEc2NetworkAclDetailsOutputTypeDef] = None + AwsElbv2LoadBalancer: Optional[AwsElbv2LoadBalancerDetailsOutputTypeDef] = None + AwsElasticBeanstalkEnvironment: Optional[ AwsElasticBeanstalkEnvironmentDetailsOutputTypeDef ] = None + AwsElasticsearchDomain: Optional[AwsElasticsearchDomainDetailsOutputTypeDef] = None + AwsS3Bucket: Optional[AwsS3BucketDetailsOutputTypeDef] = None + AwsS3AccountPublicAccessBlock: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + AwsS3Object: Optional[AwsS3ObjectDetailsTypeDef] = None + AwsSecretsManagerSecret: Optional[AwsSecretsManagerSecretDetailsTypeDef] = None + AwsIamAccessKey: Optional[AwsIamAccessKeyDetailsTypeDef] = None + AwsIamUser: Optional[AwsIamUserDetailsOutputTypeDef] = None + AwsIamPolicy: Optional[AwsIamPolicyDetailsOutputTypeDef] = None + AwsApiGatewayV2Stage: Optional[AwsApiGatewayV2StageDetailsOutputTypeDef] = None + AwsApiGatewayV2Api: Optional[AwsApiGatewayV2ApiDetailsOutputTypeDef] = None + AwsDynamoDbTable: Optional[AwsDynamoDbTableDetailsOutputTypeDef] = None + AwsApiGatewayStage: Optional[AwsApiGatewayStageDetailsOutputTypeDef] = None + AwsApiGatewayRestApi: Optional[AwsApiGatewayRestApiDetailsOutputTypeDef] = None + AwsCloudTrailTrail: Optional[AwsCloudTrailTrailDetailsTypeDef] = None + AwsSsmPatchCompliance: Optional[AwsSsmPatchComplianceDetailsTypeDef] = None + AwsCertificateManagerCertificate: Optional[ AwsCertificateManagerCertificateDetailsOutputTypeDef ] = None + AwsRedshiftCluster: Optional[AwsRedshiftClusterDetailsOutputTypeDef] = None + AwsElbLoadBalancer: Optional[AwsElbLoadBalancerDetailsOutputTypeDef] = None + AwsIamGroup: Optional[AwsIamGroupDetailsOutputTypeDef] = None + AwsIamRole: Optional[AwsIamRoleDetailsOutputTypeDef] = None + AwsKmsKey: Optional[AwsKmsKeyDetailsTypeDef] = None + AwsLambdaFunction: Optional[AwsLambdaFunctionDetailsOutputTypeDef] = None + AwsLambdaLayerVersion: Optional[AwsLambdaLayerVersionDetailsOutputTypeDef] = None + AwsRdsDbInstance: Optional[AwsRdsDbInstanceDetailsOutputTypeDef] = None + AwsSnsTopic: Optional[AwsSnsTopicDetailsOutputTypeDef] = None + AwsSqsQueue: Optional[AwsSqsQueueDetailsTypeDef] = None + AwsWafWebAcl: Optional[AwsWafWebAclDetailsOutputTypeDef] = None + AwsRdsDbSnapshot: Optional[AwsRdsDbSnapshotDetailsOutputTypeDef] = None + AwsRdsDbClusterSnapshot: Optional[AwsRdsDbClusterSnapshotDetailsOutputTypeDef] = None + AwsRdsDbCluster: Optional[AwsRdsDbClusterDetailsOutputTypeDef] = None + AwsEcsCluster: Optional[AwsEcsClusterDetailsOutputTypeDef] = None + AwsEcsContainer: Optional[AwsEcsContainerDetailsOutputTypeDef] = None + AwsEcsTaskDefinition: Optional[AwsEcsTaskDefinitionDetailsOutputTypeDef] = None + Container: Optional[ContainerDetailsOutputTypeDef] = None + Other: Optional[Dict[str, str]] = None + AwsRdsEventSubscription: Optional[AwsRdsEventSubscriptionDetailsOutputTypeDef] = None + AwsEcsService: Optional[AwsEcsServiceDetailsOutputTypeDef] = None + AwsAutoScalingLaunchConfiguration: Optional[ AwsAutoScalingLaunchConfigurationDetailsOutputTypeDef ] = None + AwsEc2VpnConnection: Optional[AwsEc2VpnConnectionDetailsOutputTypeDef] = None + AwsEcrContainerImage: Optional[AwsEcrContainerImageDetailsOutputTypeDef] = None + AwsOpenSearchServiceDomain: Optional[AwsOpenSearchServiceDomainDetailsOutputTypeDef] = None + AwsEc2VpcEndpointService: Optional[AwsEc2VpcEndpointServiceDetailsOutputTypeDef] = None + AwsXrayEncryptionConfig: Optional[AwsXrayEncryptionConfigDetailsTypeDef] = None + AwsWafRateBasedRule: Optional[AwsWafRateBasedRuleDetailsOutputTypeDef] = None + AwsWafRegionalRateBasedRule: Optional[AwsWafRegionalRateBasedRuleDetailsOutputTypeDef] = None + AwsEcrRepository: Optional[AwsEcrRepositoryDetailsTypeDef] = None + AwsEksCluster: Optional[AwsEksClusterDetailsOutputTypeDef] = None + AwsNetworkFirewallFirewallPolicy: Optional[ AwsNetworkFirewallFirewallPolicyDetailsOutputTypeDef ] = None + AwsNetworkFirewallFirewall: Optional[AwsNetworkFirewallFirewallDetailsOutputTypeDef] = None + AwsNetworkFirewallRuleGroup: Optional[AwsNetworkFirewallRuleGroupDetailsOutputTypeDef] = None + AwsRdsDbSecurityGroup: Optional[AwsRdsDbSecurityGroupDetailsOutputTypeDef] = None + AwsKinesisStream: Optional[AwsKinesisStreamDetailsTypeDef] = None + AwsEc2TransitGateway: Optional[AwsEc2TransitGatewayDetailsOutputTypeDef] = None + AwsEfsAccessPoint: Optional[AwsEfsAccessPointDetailsOutputTypeDef] = None + AwsCloudFormationStack: Optional[AwsCloudFormationStackDetailsOutputTypeDef] = None + AwsCloudWatchAlarm: Optional[AwsCloudWatchAlarmDetailsOutputTypeDef] = None + AwsEc2VpcPeeringConnection: Optional[AwsEc2VpcPeeringConnectionDetailsOutputTypeDef] = None + AwsWafRegionalRuleGroup: Optional[AwsWafRegionalRuleGroupDetailsOutputTypeDef] = None + AwsWafRegionalRule: Optional[AwsWafRegionalRuleDetailsOutputTypeDef] = None + AwsWafRegionalWebAcl: Optional[AwsWafRegionalWebAclDetailsOutputTypeDef] = None + AwsWafRule: Optional[AwsWafRuleDetailsOutputTypeDef] = None + AwsWafRuleGroup: Optional[AwsWafRuleGroupDetailsOutputTypeDef] = None + AwsEcsTask: Optional[AwsEcsTaskDetailsOutputTypeDef] = None + AwsBackupBackupVault: Optional[AwsBackupBackupVaultDetailsOutputTypeDef] = None + AwsBackupBackupPlan: Optional[AwsBackupBackupPlanDetailsOutputTypeDef] = None + AwsBackupRecoveryPoint: Optional[AwsBackupRecoveryPointDetailsTypeDef] = None + AwsEc2LaunchTemplate: Optional[AwsEc2LaunchTemplateDetailsOutputTypeDef] = None + AwsSageMakerNotebookInstance: Optional[ AwsSageMakerNotebookInstanceDetailsOutputTypeDef ] = None + AwsWafv2WebAcl: Optional[AwsWafv2WebAclDetailsOutputTypeDef] = None + AwsWafv2RuleGroup: Optional[AwsWafv2RuleGroupDetailsOutputTypeDef] = None + AwsEc2RouteTable: Optional[AwsEc2RouteTableDetailsOutputTypeDef] = None + AwsAmazonMqBroker: Optional[AwsAmazonMqBrokerDetailsOutputTypeDef] = None + AwsAppSyncGraphQlApi: Optional[AwsAppSyncGraphQlApiDetailsOutputTypeDef] = None + AwsEventSchemasRegistry: Optional[AwsEventSchemasRegistryDetailsTypeDef] = None + AwsGuardDutyDetector: Optional[AwsGuardDutyDetectorDetailsOutputTypeDef] = None + AwsStepFunctionStateMachine: Optional[AwsStepFunctionStateMachineDetailsOutputTypeDef] = None + AwsAthenaWorkGroup: Optional[AwsAthenaWorkGroupDetailsTypeDef] = None + AwsEventsEventbus: Optional[AwsEventsEventbusDetailsTypeDef] = None + AwsDmsEndpoint: Optional[AwsDmsEndpointDetailsTypeDef] = None + AwsEventsEndpoint: Optional[AwsEventsEndpointDetailsOutputTypeDef] = None + AwsDmsReplicationTask: Optional[AwsDmsReplicationTaskDetailsTypeDef] = None + AwsDmsReplicationInstance: Optional[AwsDmsReplicationInstanceDetailsOutputTypeDef] = None + AwsRoute53HostedZone: Optional[AwsRoute53HostedZoneDetailsOutputTypeDef] = None + AwsMskCluster: Optional[AwsMskClusterDetailsOutputTypeDef] = None + AwsS3AccessPoint: Optional[AwsS3AccessPointDetailsTypeDef] = None + AwsEc2ClientVpnEndpoint: Optional[AwsEc2ClientVpnEndpointDetailsOutputTypeDef] = None + +class ResourceDetailsTypeDef(BaseModel): + AwsAutoScalingAutoScalingGroup: Optional[AwsAutoScalingAutoScalingGroupDetailsTypeDef] = None + AwsCodeBuildProject: Optional[AwsCodeBuildProjectDetailsTypeDef] = None + AwsCloudFrontDistribution: Optional[AwsCloudFrontDistributionDetailsTypeDef] = None + AwsEc2Instance: Optional[AwsEc2InstanceDetailsTypeDef] = None + AwsEc2NetworkInterface: Optional[AwsEc2NetworkInterfaceDetailsTypeDef] = None + AwsEc2SecurityGroup: Optional[AwsEc2SecurityGroupDetailsTypeDef] = None + AwsEc2Volume: Optional[AwsEc2VolumeDetailsTypeDef] = None + AwsEc2Vpc: Optional[AwsEc2VpcDetailsTypeDef] = None + AwsEc2Eip: Optional[AwsEc2EipDetailsTypeDef] = None + AwsEc2Subnet: Optional[AwsEc2SubnetDetailsTypeDef] = None + AwsEc2NetworkAcl: Optional[AwsEc2NetworkAclDetailsTypeDef] = None + AwsElbv2LoadBalancer: Optional[AwsElbv2LoadBalancerDetailsTypeDef] = None + AwsElasticBeanstalkEnvironment: Optional[AwsElasticBeanstalkEnvironmentDetailsTypeDef] = None + AwsElasticsearchDomain: Optional[AwsElasticsearchDomainDetailsTypeDef] = None + AwsS3Bucket: Optional[AwsS3BucketDetailsTypeDef] = None + AwsS3AccountPublicAccessBlock: Optional[AwsS3AccountPublicAccessBlockDetailsTypeDef] = None + AwsS3Object: Optional[AwsS3ObjectDetailsTypeDef] = None + AwsSecretsManagerSecret: Optional[AwsSecretsManagerSecretDetailsTypeDef] = None + AwsIamAccessKey: Optional[AwsIamAccessKeyDetailsTypeDef] = None + AwsIamUser: Optional[AwsIamUserDetailsTypeDef] = None + AwsIamPolicy: Optional[AwsIamPolicyDetailsTypeDef] = None + AwsApiGatewayV2Stage: Optional[AwsApiGatewayV2StageDetailsTypeDef] = None + AwsApiGatewayV2Api: Optional[AwsApiGatewayV2ApiDetailsTypeDef] = None + AwsDynamoDbTable: Optional[AwsDynamoDbTableDetailsTypeDef] = None + AwsApiGatewayStage: Optional[AwsApiGatewayStageDetailsTypeDef] = None + AwsApiGatewayRestApi: Optional[AwsApiGatewayRestApiDetailsTypeDef] = None + AwsCloudTrailTrail: Optional[AwsCloudTrailTrailDetailsTypeDef] = None + AwsSsmPatchCompliance: Optional[AwsSsmPatchComplianceDetailsTypeDef] = None + AwsCertificateManagerCertificate: Optional[ AwsCertificateManagerCertificateDetailsTypeDef ] = None + AwsRedshiftCluster: Optional[AwsRedshiftClusterDetailsTypeDef] = None + AwsElbLoadBalancer: Optional[AwsElbLoadBalancerDetailsTypeDef] = None + AwsIamGroup: Optional[AwsIamGroupDetailsTypeDef] = None + AwsIamRole: Optional[AwsIamRoleDetailsTypeDef] = None + AwsKmsKey: Optional[AwsKmsKeyDetailsTypeDef] = None + AwsLambdaFunction: Optional[AwsLambdaFunctionDetailsTypeDef] = None + AwsLambdaLayerVersion: Optional[AwsLambdaLayerVersionDetailsTypeDef] = None + AwsRdsDbInstance: Optional[AwsRdsDbInstanceDetailsTypeDef] = None + AwsSnsTopic: Optional[AwsSnsTopicDetailsTypeDef] = None + AwsSqsQueue: Optional[AwsSqsQueueDetailsTypeDef] = None + AwsWafWebAcl: Optional[AwsWafWebAclDetailsTypeDef] = None + AwsRdsDbSnapshot: Optional[AwsRdsDbSnapshotDetailsTypeDef] = None + AwsRdsDbClusterSnapshot: Optional[AwsRdsDbClusterSnapshotDetailsTypeDef] = None + AwsRdsDbCluster: Optional[AwsRdsDbClusterDetailsTypeDef] = None + AwsEcsCluster: Optional[AwsEcsClusterDetailsTypeDef] = None + AwsEcsContainer: Optional[AwsEcsContainerDetailsTypeDef] = None + AwsEcsTaskDefinition: Optional[AwsEcsTaskDefinitionDetailsTypeDef] = None + Container: Optional[ContainerDetailsTypeDef] = None + Other: Optional[Mapping[str, str]] = None + AwsRdsEventSubscription: Optional[AwsRdsEventSubscriptionDetailsTypeDef] = None + AwsEcsService: Optional[AwsEcsServiceDetailsTypeDef] = None + AwsAutoScalingLaunchConfiguration: Optional[ AwsAutoScalingLaunchConfigurationDetailsTypeDef ] = None + AwsEc2VpnConnection: Optional[AwsEc2VpnConnectionDetailsTypeDef] = None + AwsEcrContainerImage: Optional[AwsEcrContainerImageDetailsTypeDef] = None + AwsOpenSearchServiceDomain: Optional[AwsOpenSearchServiceDomainDetailsTypeDef] = None + AwsEc2VpcEndpointService: Optional[AwsEc2VpcEndpointServiceDetailsTypeDef] = None + AwsXrayEncryptionConfig: Optional[AwsXrayEncryptionConfigDetailsTypeDef] = None + AwsWafRateBasedRule: Optional[AwsWafRateBasedRuleDetailsTypeDef] = None + AwsWafRegionalRateBasedRule: Optional[AwsWafRegionalRateBasedRuleDetailsTypeDef] = None + AwsEcrRepository: Optional[AwsEcrRepositoryDetailsTypeDef] = None + AwsEksCluster: Optional[AwsEksClusterDetailsTypeDef] = None + AwsNetworkFirewallFirewallPolicy: Optional[ AwsNetworkFirewallFirewallPolicyDetailsTypeDef ] = None + AwsNetworkFirewallFirewall: Optional[AwsNetworkFirewallFirewallDetailsTypeDef] = None + AwsNetworkFirewallRuleGroup: Optional[AwsNetworkFirewallRuleGroupDetailsTypeDef] = None + AwsRdsDbSecurityGroup: Optional[AwsRdsDbSecurityGroupDetailsTypeDef] = None + AwsKinesisStream: Optional[AwsKinesisStreamDetailsTypeDef] = None + AwsEc2TransitGateway: Optional[AwsEc2TransitGatewayDetailsTypeDef] = None + AwsEfsAccessPoint: Optional[AwsEfsAccessPointDetailsTypeDef] = None + AwsCloudFormationStack: Optional[AwsCloudFormationStackDetailsTypeDef] = None + AwsCloudWatchAlarm: Optional[AwsCloudWatchAlarmDetailsTypeDef] = None + AwsEc2VpcPeeringConnection: Optional[AwsEc2VpcPeeringConnectionDetailsTypeDef] = None + AwsWafRegionalRuleGroup: Optional[AwsWafRegionalRuleGroupDetailsTypeDef] = None + AwsWafRegionalRule: Optional[AwsWafRegionalRuleDetailsTypeDef] = None + AwsWafRegionalWebAcl: Optional[AwsWafRegionalWebAclDetailsTypeDef] = None + AwsWafRule: Optional[AwsWafRuleDetailsTypeDef] = None + AwsWafRuleGroup: Optional[AwsWafRuleGroupDetailsTypeDef] = None + AwsEcsTask: Optional[AwsEcsTaskDetailsTypeDef] = None + AwsBackupBackupVault: Optional[AwsBackupBackupVaultDetailsTypeDef] = None + AwsBackupBackupPlan: Optional[AwsBackupBackupPlanDetailsTypeDef] = None + AwsBackupRecoveryPoint: Optional[AwsBackupRecoveryPointDetailsTypeDef] = None + AwsEc2LaunchTemplate: Optional[AwsEc2LaunchTemplateDetailsTypeDef] = None + AwsSageMakerNotebookInstance: Optional[AwsSageMakerNotebookInstanceDetailsTypeDef] = None + AwsWafv2WebAcl: Optional[AwsWafv2WebAclDetailsTypeDef] = None + AwsWafv2RuleGroup: Optional[AwsWafv2RuleGroupDetailsTypeDef] = None + AwsEc2RouteTable: Optional[AwsEc2RouteTableDetailsTypeDef] = None + AwsAmazonMqBroker: Optional[AwsAmazonMqBrokerDetailsTypeDef] = None + AwsAppSyncGraphQlApi: Optional[AwsAppSyncGraphQlApiDetailsTypeDef] = None + AwsEventSchemasRegistry: Optional[AwsEventSchemasRegistryDetailsTypeDef] = None + AwsGuardDutyDetector: Optional[AwsGuardDutyDetectorDetailsTypeDef] = None + AwsStepFunctionStateMachine: Optional[AwsStepFunctionStateMachineDetailsTypeDef] = None + AwsAthenaWorkGroup: Optional[AwsAthenaWorkGroupDetailsTypeDef] = None + AwsEventsEventbus: Optional[AwsEventsEventbusDetailsTypeDef] = None + AwsDmsEndpoint: Optional[AwsDmsEndpointDetailsTypeDef] = None + AwsEventsEndpoint: Optional[AwsEventsEndpointDetailsTypeDef] = None + AwsDmsReplicationTask: Optional[AwsDmsReplicationTaskDetailsTypeDef] = None + AwsDmsReplicationInstance: Optional[AwsDmsReplicationInstanceDetailsTypeDef] = None + AwsRoute53HostedZone: Optional[AwsRoute53HostedZoneDetailsTypeDef] = None + AwsMskCluster: Optional[AwsMskClusterDetailsTypeDef] = None + AwsS3AccessPoint: Optional[AwsS3AccessPointDetailsTypeDef] = None + AwsEc2ClientVpnEndpoint: Optional[AwsEc2ClientVpnEndpointDetailsTypeDef] = None + +class ResourceExtraOutputTypeDef(BaseModel): + Type: str + Id: str + Partition: Optional[PartitionType] = None + Region: Optional[str] = None + ResourceRole: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + DataClassification: Optional[DataClassificationDetailsExtraOutputTypeDef] = None + Details: Optional[ResourceDetailsExtraOutputTypeDef] = None + ApplicationName: Optional[str] = None + ApplicationArn: Optional[str] = None + +class ResourceOutputTypeDef(BaseModel): + Type: str + Id: str + Partition: Optional[PartitionType] = None + Region: Optional[str] = None + ResourceRole: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + DataClassification: Optional[DataClassificationDetailsOutputTypeDef] = None + Details: Optional[ResourceDetailsOutputTypeDef] = None + ApplicationName: Optional[str] = None + ApplicationArn: Optional[str] = None + +class ResourceTypeDef(BaseModel): + Type: str + Id: str + Partition: Optional[PartitionType] = None + Region: Optional[str] = None + ResourceRole: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + DataClassification: Optional[DataClassificationDetailsTypeDef] = None + Details: Optional[ResourceDetailsTypeDef] = None + ApplicationName: Optional[str] = None + ApplicationArn: Optional[str] = None + +class AwsSecurityFindingExtraOutputTypeDef(BaseModel): + SchemaVersion: str + Id: str + ProductArn: str + GeneratorId: str + AwsAccountId: str + CreatedAt: str + UpdatedAt: str + Title: str + Description: str + Resources: List[ResourceExtraOutputTypeDef] + ProductName: Optional[str] = None + CompanyName: Optional[str] = None + Region: Optional[str] = None + Types: Optional[List[str]] = None + FirstObservedAt: Optional[str] = None + LastObservedAt: Optional[str] = None + Severity: Optional[SeverityTypeDef] = None + Confidence: Optional[int] = None + Criticality: Optional[int] = None + Remediation: Optional[RemediationTypeDef] = None + SourceUrl: Optional[str] = None + ProductFields: Optional[Dict[str, str]] = None + UserDefinedFields: Optional[Dict[str, str]] = None + Malware: Optional[List[MalwareTypeDef]] = None + Network: Optional[NetworkTypeDef] = None + NetworkPath: Optional[List[NetworkPathComponentExtraOutputTypeDef]] = None + Process: Optional[ProcessDetailsTypeDef] = None + Threats: Optional[List[ThreatExtraOutputTypeDef]] = None + ThreatIntelIndicators: Optional[List[ThreatIntelIndicatorTypeDef]] = None + Compliance: Optional[ComplianceExtraOutputTypeDef] = None + VerificationState: Optional[VerificationStateType] = None + WorkflowState: Optional[WorkflowStateType] = None + Workflow: Optional[WorkflowTypeDef] = None + RecordState: Optional[RecordStateType] = None + RelatedFindings: Optional[List[RelatedFindingTypeDef]] = None + Note: Optional[NoteTypeDef] = None + Vulnerabilities: Optional[List[VulnerabilityExtraOutputTypeDef]] = None + PatchSummary: Optional[PatchSummaryTypeDef] = None + Action: Optional[ActionExtraOutputTypeDef] = None + FindingProviderFields: Optional[FindingProviderFieldsExtraOutputTypeDef] = None + Sample: Optional[bool] = None + GeneratorDetails: Optional[GeneratorDetailsExtraOutputTypeDef] = None + ProcessedAt: Optional[str] = None + AwsAccountName: Optional[str] = None + +class AwsSecurityFindingOutputTypeDef(BaseModel): + SchemaVersion: str + Id: str + ProductArn: str + GeneratorId: str + AwsAccountId: str + CreatedAt: str + UpdatedAt: str + Title: str + Description: str + Resources: List[ResourceOutputTypeDef] + ProductName: Optional[str] = None + CompanyName: Optional[str] = None + Region: Optional[str] = None + Types: Optional[List[str]] = None + FirstObservedAt: Optional[str] = None + LastObservedAt: Optional[str] = None + Severity: Optional[SeverityTypeDef] = None + Confidence: Optional[int] = None + Criticality: Optional[int] = None + Remediation: Optional[RemediationTypeDef] = None + SourceUrl: Optional[str] = None + ProductFields: Optional[Dict[str, str]] = None + UserDefinedFields: Optional[Dict[str, str]] = None + Malware: Optional[List[MalwareTypeDef]] = None + Network: Optional[NetworkTypeDef] = None + NetworkPath: Optional[List[NetworkPathComponentOutputTypeDef]] = None + Process: Optional[ProcessDetailsTypeDef] = None + Threats: Optional[List[ThreatOutputTypeDef]] = None + ThreatIntelIndicators: Optional[List[ThreatIntelIndicatorTypeDef]] = None + Compliance: Optional[ComplianceOutputTypeDef] = None + VerificationState: Optional[VerificationStateType] = None + WorkflowState: Optional[WorkflowStateType] = None + Workflow: Optional[WorkflowTypeDef] = None + RecordState: Optional[RecordStateType] = None + RelatedFindings: Optional[List[RelatedFindingTypeDef]] = None + Note: Optional[NoteTypeDef] = None + Vulnerabilities: Optional[List[VulnerabilityOutputTypeDef]] = None + PatchSummary: Optional[PatchSummaryTypeDef] = None + Action: Optional[ActionOutputTypeDef] = None + FindingProviderFields: Optional[FindingProviderFieldsOutputTypeDef] = None + Sample: Optional[bool] = None + GeneratorDetails: Optional[GeneratorDetailsOutputTypeDef] = None + ProcessedAt: Optional[str] = None + AwsAccountName: Optional[str] = None + +class AwsSecurityFindingTypeDef(BaseModel): + SchemaVersion: str + Id: str + ProductArn: str + GeneratorId: str + AwsAccountId: str + CreatedAt: str + UpdatedAt: str + Title: str + Description: str + Resources: Sequence[ResourceTypeDef] + ProductName: Optional[str] = None + CompanyName: Optional[str] = None + Region: Optional[str] = None + Types: Optional[Sequence[str]] = None + FirstObservedAt: Optional[str] = None + LastObservedAt: Optional[str] = None + Severity: Optional[SeverityTypeDef] = None + Confidence: Optional[int] = None + Criticality: Optional[int] = None + Remediation: Optional[RemediationTypeDef] = None + SourceUrl: Optional[str] = None + ProductFields: Optional[Mapping[str, str]] = None + UserDefinedFields: Optional[Mapping[str, str]] = None + Malware: Optional[Sequence[MalwareTypeDef]] = None + Network: Optional[NetworkTypeDef] = None + NetworkPath: Optional[Sequence[NetworkPathComponentTypeDef]] = None + Process: Optional[ProcessDetailsTypeDef] = None + Threats: Optional[Sequence[ThreatTypeDef]] = None + ThreatIntelIndicators: Optional[Sequence[ThreatIntelIndicatorTypeDef]] = None + Compliance: Optional[ComplianceTypeDef] = None + VerificationState: Optional[VerificationStateType] = None + WorkflowState: Optional[WorkflowStateType] = None + Workflow: Optional[WorkflowTypeDef] = None + RecordState: Optional[RecordStateType] = None + RelatedFindings: Optional[Sequence[RelatedFindingTypeDef]] = None + Note: Optional[NoteTypeDef] = None + Vulnerabilities: Optional[Sequence[VulnerabilityTypeDef]] = None + PatchSummary: Optional[PatchSummaryTypeDef] = None + Action: Optional[ActionTypeDef] = None + FindingProviderFields: Optional[FindingProviderFieldsTypeDef] = None + Sample: Optional[bool] = None + GeneratorDetails: Optional[GeneratorDetailsTypeDef] = None + ProcessedAt: Optional[str] = None + AwsAccountName: Optional[str] = None + +class GetFindingsResponseTypeDef(BaseModel): + Findings: List[AwsSecurityFindingOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class BatchImportFindingsRequestRequestTypeDef(BaseModel): + Findings: Sequence[AwsSecurityFindingUnionTypeDef] + diff --git a/aws_resource_validator/pydantic_models/securityhub_constants.py b/aws_resource_validator/pydantic_models/securityhub_constants.py new file mode 100644 index 00000000..13b47c64 --- /dev/null +++ b/aws_resource_validator/pydantic_models/securityhub_constants.py @@ -0,0 +1,537 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdminStatusType = Literal["DISABLE_IN_PROGRESS", "ENABLED"] +AssociationStatusType = Literal["DISABLED", "ENABLED"] +AssociationTypeType = Literal["APPLIED", "INHERITED"] +AutoEnableStandardsType = Literal["DEFAULT", "NONE"] +AutomationRulesActionTypeType = Literal["FINDING_FIELDS_UPDATE"] +AwsIamAccessKeyStatusType = Literal["Active", "Inactive"] +AwsS3BucketNotificationConfigurationS3KeyFilterRuleNameType = Literal["Prefix", "Suffix"] +ComplianceStatusType = Literal["FAILED", "NOT_AVAILABLE", "PASSED", "WARNING"] +ConfigurationPolicyAssociationStatusType = Literal["FAILED", "PENDING", "SUCCESS"] +ControlFindingGeneratorType = Literal["SECURITY_CONTROL", "STANDARD_CONTROL"] +ControlStatusType = Literal["DISABLED", "ENABLED"] +DateRangeUnitType = Literal["DAYS"] +DescribeActionTargetsPaginatorName = Literal["describe_action_targets"] +DescribeProductsPaginatorName = Literal["describe_products"] +DescribeStandardsControlsPaginatorName = Literal["describe_standards_controls"] +DescribeStandardsPaginatorName = Literal["describe_standards"] +FindingHistoryUpdateSourceTypeType = Literal["BATCH_IMPORT_FINDINGS", "BATCH_UPDATE_FINDINGS"] +GetEnabledStandardsPaginatorName = Literal["get_enabled_standards"] +GetFindingHistoryPaginatorName = Literal["get_finding_history"] +GetFindingsPaginatorName = Literal["get_findings"] +GetInsightsPaginatorName = Literal["get_insights"] +IntegrationTypeType = Literal["RECEIVE_FINDINGS_FROM_SECURITY_HUB", + "SEND_FINDINGS_TO_SECURITY_HUB", + "UPDATE_FINDINGS_IN_SECURITY_HUB",] +ListConfigurationPoliciesPaginatorName = Literal["list_configuration_policies"] +ListConfigurationPolicyAssociationsPaginatorName = Literal["list_configuration_policy_associations"] +ListEnabledProductsForImportPaginatorName = Literal["list_enabled_products_for_import"] +ListFindingAggregatorsPaginatorName = Literal["list_finding_aggregators"] +ListInvitationsPaginatorName = Literal["list_invitations"] +ListMembersPaginatorName = Literal["list_members"] +ListOrganizationAdminAccountsPaginatorName = Literal["list_organization_admin_accounts"] +ListSecurityControlDefinitionsPaginatorName = Literal["list_security_control_definitions"] +ListStandardsControlAssociationsPaginatorName = Literal["list_standards_control_associations"] +MalwareStateType = Literal["OBSERVED", "REMOVAL_FAILED", "REMOVED"] +MalwareTypeType = Literal["ADWARE", + "BLENDED_THREAT", + "BOTNET_AGENT", + "COIN_MINER", + "EXPLOIT_KIT", + "KEYLOGGER", + "MACRO", + "POTENTIALLY_UNWANTED", + "RANSOMWARE", + "REMOTE_ACCESS", + "ROOTKIT", + "SPYWARE", + "TROJAN", + "VIRUS", + "WORM",] +MapFilterComparisonType = Literal["CONTAINS", "EQUALS", "NOT_CONTAINS", "NOT_EQUALS"] +NetworkDirectionType = Literal["IN", "OUT"] +OrganizationConfigurationConfigurationTypeType = Literal["CENTRAL", "LOCAL"] +OrganizationConfigurationStatusType = Literal["ENABLED", "FAILED", "PENDING"] +ParameterValueTypeType = Literal["CUSTOM", "DEFAULT"] +PartitionType = Literal["aws", "aws-cn", "aws-us-gov"] +RecordStateType = Literal["ACTIVE", "ARCHIVED"] +RegionAvailabilityStatusType = Literal["AVAILABLE", "UNAVAILABLE"] +RuleStatusType = Literal["DISABLED", "ENABLED"] +SecurityControlPropertyType = Literal["Parameters"] +SeverityLabelType = Literal["CRITICAL", "HIGH", "INFORMATIONAL", "LOW", "MEDIUM"] +SeverityRatingType = Literal["CRITICAL", "HIGH", "LOW", "MEDIUM"] +SortOrderType = Literal["asc", "desc"] +StandardsStatusType = Literal["DELETING", "FAILED", "INCOMPLETE", "PENDING", "READY"] +StatusReasonCodeType = Literal["INTERNAL_ERROR", "NO_AVAILABLE_CONFIGURATION_RECORDER"] +StringFilterComparisonType = Literal["CONTAINS", "EQUALS", "NOT_CONTAINS", "NOT_EQUALS", "PREFIX", "PREFIX_NOT_EQUALS"] +TargetTypeType = Literal["ACCOUNT", "ORGANIZATIONAL_UNIT", "ROOT"] +ThreatIntelIndicatorCategoryType = Literal["BACKDOOR", "CARD_STEALER", "COMMAND_AND_CONTROL", "DROP_SITE", "EXPLOIT_SITE", "KEYLOGGER"] +ThreatIntelIndicatorTypeType = Literal["DOMAIN", + "EMAIL_ADDRESS", + "HASH_MD5", + "HASH_SHA1", + "HASH_SHA256", + "HASH_SHA512", + "IPV4_ADDRESS", + "IPV6_ADDRESS", + "MUTEX", + "PROCESS", + "URL",] +UnprocessedErrorCodeType = Literal["ACCESS_DENIED", "INVALID_INPUT", "LIMIT_EXCEEDED", "NOT_FOUND"] +UpdateStatusType = Literal["READY", "UPDATING"] +VerificationStateType = Literal["BENIGN_POSITIVE", "FALSE_POSITIVE", "TRUE_POSITIVE", "UNKNOWN"] +VulnerabilityExploitAvailableType = Literal["NO", "YES"] +VulnerabilityFixAvailableType = Literal["NO", "PARTIAL", "YES"] +WorkflowStateType = Literal["ASSIGNED", "DEFERRED", "IN_PROGRESS", "NEW", "RESOLVED"] +WorkflowStatusType = Literal["NEW", "NOTIFIED", "RESOLVED", "SUPPRESSED"] +SecurityHubServiceName = Literal["securityhub"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_action_targets", + "describe_products", + "describe_standards", + "describe_standards_controls", + "get_enabled_standards", + "get_finding_history", + "get_findings", + "get_insights", + "list_configuration_policies", + "list_configuration_policy_associations", + "list_enabled_products_for_import", + "list_finding_aggregators", + "list_invitations", + "list_members", + "list_organization_admin_accounts", + "list_security_control_definitions", + "list_standards_control_associations",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +ParameterConfigurationUnionTypeDef = Union[ 'ParameterConfigurationTypeDef', 'ParameterConfigurationOutputTypeDef' ] +AutomationRulesActionUnionTypeDef = Union[ 'AutomationRulesActionTypeDef', 'AutomationRulesActionOutputTypeDef' ] +AutomationRulesFindingFiltersUnionTypeDef = Union[ 'AutomationRulesFindingFiltersTypeDef', 'AutomationRulesFindingFiltersOutputTypeDef' ] +AwsSecurityFindingFiltersUnionTypeDef = Union[ 'AwsSecurityFindingFiltersTypeDef', 'AwsSecurityFindingFiltersExtraOutputTypeDef' ] +PolicyUnionTypeDef = Union['PolicyTypeDef', 'PolicyOutputTypeDef'] +AwsSecurityFindingUnionTypeDef = Union[ 'AwsSecurityFindingTypeDef', 'AwsSecurityFindingExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/securitylake_classes.py b/aws_resource_validator/pydantic_models/securitylake_classes.py new file mode 100644 index 00000000..e1d680b5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/securitylake_classes.py @@ -0,0 +1,387 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.securitylake_constants import * + +class AwsIdentityTypeDef(BaseModel): + externalId: str + principal: str + +class AwsLogSourceConfigurationTypeDef(BaseModel): + regions: Sequence[str] + sourceName: AwsLogSourceNameType + accounts: Optional[Sequence[str]] = None + sourceVersion: Optional[str] = None + +class AwsLogSourceResourceTypeDef(BaseModel): + sourceName: Optional[AwsLogSourceNameType] = None + sourceVersion: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateDataLakeExceptionSubscriptionRequestRequestTypeDef(BaseModel): + notificationEndpoint: str + subscriptionProtocol: str + exceptionTimeToLive: Optional[int] = None + +class TagTypeDef(BaseModel): + key: str + value: str + +class CustomLogSourceAttributesTypeDef(BaseModel): + crawlerArn: Optional[str] = None + databaseArn: Optional[str] = None + tableArn: Optional[str] = None + +class CustomLogSourceCrawlerConfigurationTypeDef(BaseModel): + roleArn: str + +class CustomLogSourceProviderTypeDef(BaseModel): + location: Optional[str] = None + roleArn: Optional[str] = None + +class DataLakeEncryptionConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + +class DataLakeReplicationConfigurationTypeDef(BaseModel): + regions: Optional[Sequence[str]] = None + roleArn: Optional[str] = None + +class DataLakeExceptionTypeDef(BaseModel): + exception: Optional[str] = None + region: Optional[str] = None + remediation: Optional[str] = None + timestamp: Optional[datetime] = None + +class DataLakeLifecycleExpirationTypeDef(BaseModel): + days: Optional[int] = None + +class DataLakeLifecycleTransitionTypeDef(BaseModel): + days: Optional[int] = None + storageClass: Optional[str] = None + +class DataLakeReplicationConfigurationOutputTypeDef(BaseModel): + regions: Optional[List[str]] = None + roleArn: Optional[str] = None + +class DataLakeSourceStatusTypeDef(BaseModel): + resource: Optional[str] = None + status: Optional[SourceCollectionStatusType] = None + +class DataLakeUpdateExceptionTypeDef(BaseModel): + code: Optional[str] = None + reason: Optional[str] = None + +class DeleteCustomLogSourceRequestRequestTypeDef(BaseModel): + sourceName: str + sourceVersion: Optional[str] = None + +class DeleteDataLakeRequestRequestTypeDef(BaseModel): + regions: Sequence[str] + +class DeleteSubscriberNotificationRequestRequestTypeDef(BaseModel): + subscriberId: str + +class DeleteSubscriberRequestRequestTypeDef(BaseModel): + subscriberId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetDataLakeSourcesRequestRequestTypeDef(BaseModel): + accounts: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class GetSubscriberRequestRequestTypeDef(BaseModel): + subscriberId: str + +class HttpsNotificationConfigurationTypeDef(BaseModel): + endpoint: str + targetRoleArn: str + authorizationApiKeyName: Optional[str] = None + authorizationApiKeyValue: Optional[str] = None + httpMethod: Optional[HttpMethodType] = None + +class ListDataLakeExceptionsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + regions: Optional[Sequence[str]] = None + +class ListDataLakesRequestRequestTypeDef(BaseModel): + regions: Optional[Sequence[str]] = None + +class ListSubscribersRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RegisterDataLakeDelegatedAdministratorRequestRequestTypeDef(BaseModel): + accountId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateDataLakeExceptionSubscriptionRequestRequestTypeDef(BaseModel): + notificationEndpoint: str + subscriptionProtocol: str + exceptionTimeToLive: Optional[int] = None + +class CreateAwsLogSourceRequestRequestTypeDef(BaseModel): + sources: Sequence[AwsLogSourceConfigurationTypeDef] + +class DeleteAwsLogSourceRequestRequestTypeDef(BaseModel): + sources: Sequence[AwsLogSourceConfigurationTypeDef] + +class DataLakeAutoEnableNewAccountConfigurationOutputTypeDef(BaseModel): + region: str + sources: List[AwsLogSourceResourceTypeDef] + +class DataLakeAutoEnableNewAccountConfigurationTypeDef(BaseModel): + region: str + sources: Sequence[AwsLogSourceResourceTypeDef] + +class CreateAwsLogSourceResponseTypeDef(BaseModel): + failed: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriberNotificationResponseTypeDef(BaseModel): + subscriberEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAwsLogSourceResponseTypeDef(BaseModel): + failed: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataLakeExceptionSubscriptionResponseTypeDef(BaseModel): + exceptionTimeToLive: int + notificationEndpoint: str + subscriptionProtocol: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSubscriberNotificationResponseTypeDef(BaseModel): + subscriberEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CustomLogSourceConfigurationTypeDef(BaseModel): + crawlerConfiguration: CustomLogSourceCrawlerConfigurationTypeDef + providerIdentity: AwsIdentityTypeDef + +class CustomLogSourceResourceTypeDef(BaseModel): + attributes: Optional[CustomLogSourceAttributesTypeDef] = None + provider: Optional[CustomLogSourceProviderTypeDef] = None + sourceName: Optional[str] = None + sourceVersion: Optional[str] = None + +class ListDataLakeExceptionsResponseTypeDef(BaseModel): + exceptions: List[DataLakeExceptionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataLakeLifecycleConfigurationOutputTypeDef(BaseModel): + expiration: Optional[DataLakeLifecycleExpirationTypeDef] = None + transitions: Optional[List[DataLakeLifecycleTransitionTypeDef]] = None + +class DataLakeLifecycleConfigurationTypeDef(BaseModel): + expiration: Optional[DataLakeLifecycleExpirationTypeDef] = None + transitions: Optional[Sequence[DataLakeLifecycleTransitionTypeDef]] = None + +class DataLakeSourceTypeDef(BaseModel): + account: Optional[str] = None + eventClasses: Optional[List[str]] = None + sourceName: Optional[str] = None + sourceStatuses: Optional[List[DataLakeSourceStatusTypeDef]] = None + +class DataLakeUpdateStatusTypeDef(BaseModel): + exception: Optional[DataLakeUpdateExceptionTypeDef] = None + requestId: Optional[str] = None + status: Optional[DataLakeStatusType] = None + +class GetDataLakeSourcesRequestGetDataLakeSourcesPaginateTypeDef(BaseModel): + accounts: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDataLakeExceptionsRequestListDataLakeExceptionsPaginateTypeDef(BaseModel): + regions: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscribersRequestListSubscribersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class NotificationConfigurationTypeDef(BaseModel): + httpsNotificationConfiguration: Optional[HttpsNotificationConfigurationTypeDef] = None + sqsNotificationConfiguration: Optional[Mapping[str, Any]] = None + +class GetDataLakeOrganizationConfigurationResponseTypeDef(BaseModel): + autoEnableNewAccount: List[DataLakeAutoEnableNewAccountConfigurationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCustomLogSourceRequestRequestTypeDef(BaseModel): + configuration: CustomLogSourceConfigurationTypeDef + sourceName: str + eventClasses: Optional[Sequence[str]] = None + sourceVersion: Optional[str] = None + +class CreateCustomLogSourceResponseTypeDef(BaseModel): + source: CustomLogSourceResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class LogSourceResourceTypeDef(BaseModel): + awsLogSource: Optional[AwsLogSourceResourceTypeDef] = None + customLogSource: Optional[CustomLogSourceResourceTypeDef] = None + +class DataLakeConfigurationTypeDef(BaseModel): + region: str + encryptionConfiguration: Optional[DataLakeEncryptionConfigurationTypeDef] = None + lifecycleConfiguration: Optional[DataLakeLifecycleConfigurationTypeDef] = None + replicationConfiguration: Optional[DataLakeReplicationConfigurationTypeDef] = None + +class GetDataLakeSourcesResponseTypeDef(BaseModel): + dataLakeArn: str + dataLakeSources: List[DataLakeSourceTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DataLakeResourceTypeDef(BaseModel): + dataLakeArn: str + region: str + createStatus: Optional[DataLakeStatusType] = None + encryptionConfiguration: Optional[DataLakeEncryptionConfigurationTypeDef] = None + lifecycleConfiguration: Optional[DataLakeLifecycleConfigurationOutputTypeDef] = None + replicationConfiguration: Optional[DataLakeReplicationConfigurationOutputTypeDef] = None + s3BucketArn: Optional[str] = None + updateStatus: Optional[DataLakeUpdateStatusTypeDef] = None + +class CreateSubscriberNotificationRequestRequestTypeDef(BaseModel): + configuration: NotificationConfigurationTypeDef + subscriberId: str + +class UpdateSubscriberNotificationRequestRequestTypeDef(BaseModel): + configuration: NotificationConfigurationTypeDef + subscriberId: str + +class CreateDataLakeOrganizationConfigurationRequestRequestTypeDef(BaseModel): + autoEnableNewAccount: Optional[ Sequence[DataLakeAutoEnableNewAccountConfigurationUnionTypeDef] ] = None + +class DeleteDataLakeOrganizationConfigurationRequestRequestTypeDef(BaseModel): + autoEnableNewAccount: Optional[ Sequence[DataLakeAutoEnableNewAccountConfigurationUnionTypeDef] ] = None + +class CreateSubscriberRequestRequestTypeDef(BaseModel): + sources: Sequence[LogSourceResourceTypeDef] + subscriberIdentity: AwsIdentityTypeDef + subscriberName: str + accessTypes: Optional[Sequence[AccessTypeType]] = None + subscriberDescription: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListLogSourcesRequestListLogSourcesPaginateTypeDef(BaseModel): + accounts: Optional[Sequence[str]] = None + regions: Optional[Sequence[str]] = None + sources: Optional[Sequence[LogSourceResourceTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLogSourcesRequestRequestTypeDef(BaseModel): + accounts: Optional[Sequence[str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + regions: Optional[Sequence[str]] = None + sources: Optional[Sequence[LogSourceResourceTypeDef]] = None + +class LogSourceTypeDef(BaseModel): + account: Optional[str] = None + region: Optional[str] = None + sources: Optional[List[LogSourceResourceTypeDef]] = None + +class SubscriberResourceTypeDef(BaseModel): + sources: List[LogSourceResourceTypeDef] + subscriberArn: str + subscriberId: str + subscriberIdentity: AwsIdentityTypeDef + subscriberName: str + accessTypes: Optional[List[AccessTypeType]] = None + createdAt: Optional[datetime] = None + resourceShareArn: Optional[str] = None + resourceShareName: Optional[str] = None + roleArn: Optional[str] = None + s3BucketArn: Optional[str] = None + subscriberDescription: Optional[str] = None + subscriberEndpoint: Optional[str] = None + subscriberStatus: Optional[SubscriberStatusType] = None + updatedAt: Optional[datetime] = None + +class UpdateSubscriberRequestRequestTypeDef(BaseModel): + subscriberId: str + sources: Optional[Sequence[LogSourceResourceTypeDef]] = None + subscriberDescription: Optional[str] = None + subscriberIdentity: Optional[AwsIdentityTypeDef] = None + subscriberName: Optional[str] = None + +class CreateDataLakeRequestRequestTypeDef(BaseModel): + configurations: Sequence[DataLakeConfigurationTypeDef] + metaStoreManagerRoleArn: str + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateDataLakeRequestRequestTypeDef(BaseModel): + configurations: Sequence[DataLakeConfigurationTypeDef] + metaStoreManagerRoleArn: Optional[str] = None + +class CreateDataLakeResponseTypeDef(BaseModel): + dataLakes: List[DataLakeResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDataLakesResponseTypeDef(BaseModel): + dataLakes: List[DataLakeResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDataLakeResponseTypeDef(BaseModel): + dataLakes: List[DataLakeResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListLogSourcesResponseTypeDef(BaseModel): + nextToken: str + sources: List[LogSourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSubscriberResponseTypeDef(BaseModel): + subscriber: SubscriberResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriberResponseTypeDef(BaseModel): + subscriber: SubscriberResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscribersResponseTypeDef(BaseModel): + nextToken: str + subscribers: List[SubscriberResourceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSubscriberResponseTypeDef(BaseModel): + subscriber: SubscriberResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/securitylake_constants.py b/aws_resource_validator/pydantic_models/securitylake_constants.py new file mode 100644 index 00000000..7253e34f --- /dev/null +++ b/aws_resource_validator/pydantic_models/securitylake_constants.py @@ -0,0 +1,435 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessTypeType = Literal["LAKEFORMATION", "S3"] +AwsLogSourceNameType = Literal["CLOUD_TRAIL_MGMT", + "EKS_AUDIT", + "LAMBDA_EXECUTION", + "ROUTE53", + "S3_DATA", + "SH_FINDINGS", + "VPC_FLOW", + "WAF",] +DataLakeStatusType = Literal["COMPLETED", "FAILED", "INITIALIZED", "PENDING"] +GetDataLakeSourcesPaginatorName = Literal["get_data_lake_sources"] +HttpMethodType = Literal["POST", "PUT"] +ListDataLakeExceptionsPaginatorName = Literal["list_data_lake_exceptions"] +ListLogSourcesPaginatorName = Literal["list_log_sources"] +ListSubscribersPaginatorName = Literal["list_subscribers"] +SourceCollectionStatusType = Literal["COLLECTING", "MISCONFIGURED", "NOT_COLLECTING"] +SubscriberStatusType = Literal["ACTIVE", "DEACTIVATED", "PENDING", "READY"] +SecurityLakeServiceName = Literal["securitylake"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_data_lake_sources", "list_data_lake_exceptions", "list_log_sources", "list_subscribers"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +DataLakeAutoEnableNewAccountConfigurationUnionTypeDef = Union[ 'DataLakeAutoEnableNewAccountConfigurationTypeDef', 'DataLakeAutoEnableNewAccountConfigurationOutputTypeDef', ] diff --git a/aws_resource_validator/pydantic_models/serverlessrepo_classes.py b/aws_resource_validator/pydantic_models/serverlessrepo_classes.py new file mode 100644 index 00000000..d939c01d --- /dev/null +++ b/aws_resource_validator/pydantic_models/serverlessrepo_classes.py @@ -0,0 +1,308 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.serverlessrepo_constants import * + +class ApplicationDependencySummaryTypeDef(BaseModel): + ApplicationId: str + SemanticVersion: str + +class ApplicationPolicyStatementTypeDef(BaseModel): + Actions: List[str] + Principals: List[str] + PrincipalOrgIDs: Optional[List[str]] = None + StatementId: Optional[str] = None + +class ApplicationSummaryTypeDef(BaseModel): + ApplicationId: str + Author: str + Description: str + Name: str + CreationTime: Optional[str] = None + HomePageUrl: Optional[str] = None + Labels: Optional[List[str]] = None + SpdxLicenseId: Optional[str] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + Author: str + Description: str + Name: str + HomePageUrl: Optional[str] = None + Labels: Optional[Sequence[str]] = None + LicenseBody: Optional[str] = None + LicenseUrl: Optional[str] = None + ReadmeBody: Optional[str] = None + ReadmeUrl: Optional[str] = None + SemanticVersion: Optional[str] = None + SourceCodeArchiveUrl: Optional[str] = None + SourceCodeUrl: Optional[str] = None + SpdxLicenseId: Optional[str] = None + TemplateBody: Optional[str] = None + TemplateUrl: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateApplicationVersionRequestRequestTypeDef(BaseModel): + ApplicationId: str + SemanticVersion: str + SourceCodeArchiveUrl: Optional[str] = None + SourceCodeUrl: Optional[str] = None + TemplateBody: Optional[str] = None + TemplateUrl: Optional[str] = None + +class ParameterDefinitionTypeDef(BaseModel): + Name: str + ReferencedByResources: List[str] + AllowedPattern: Optional[str] = None + AllowedValues: Optional[List[str]] = None + ConstraintDescription: Optional[str] = None + DefaultValue: Optional[str] = None + Description: Optional[str] = None + MaxLength: Optional[int] = None + MaxValue: Optional[int] = None + MinLength: Optional[int] = None + MinValue: Optional[int] = None + NoEcho: Optional[bool] = None + Type: Optional[str] = None + +class ParameterValueTypeDef(BaseModel): + Name: str + Value: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateCloudFormationTemplateRequestRequestTypeDef(BaseModel): + ApplicationId: str + SemanticVersion: Optional[str] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApplicationPolicyRequestRequestTypeDef(BaseModel): + ApplicationId: str + +class GetApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + SemanticVersion: Optional[str] = None + +class GetCloudFormationTemplateRequestRequestTypeDef(BaseModel): + ApplicationId: str + TemplateId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationDependenciesRequestRequestTypeDef(BaseModel): + ApplicationId: str + MaxItems: Optional[int] = None + NextToken: Optional[str] = None + SemanticVersion: Optional[str] = None + +class ListApplicationVersionsRequestRequestTypeDef(BaseModel): + ApplicationId: str + MaxItems: Optional[int] = None + NextToken: Optional[str] = None + +class VersionSummaryTypeDef(BaseModel): + ApplicationId: str + CreationTime: str + SemanticVersion: str + SourceCodeUrl: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + MaxItems: Optional[int] = None + NextToken: Optional[str] = None + +class RollbackTriggerTypeDef(BaseModel): + Arn: str + Type: str + +class UnshareApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + OrganizationId: str + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + ApplicationId: str + Author: Optional[str] = None + Description: Optional[str] = None + HomePageUrl: Optional[str] = None + Labels: Optional[Sequence[str]] = None + ReadmeBody: Optional[str] = None + ReadmeUrl: Optional[str] = None + +class PutApplicationPolicyRequestRequestTypeDef(BaseModel): + ApplicationId: str + Statements: Sequence[ApplicationPolicyStatementTypeDef] + +class CreateCloudFormationChangeSetResponseTypeDef(BaseModel): + ApplicationId: str + ChangeSetId: str + SemanticVersion: str + StackId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCloudFormationTemplateResponseTypeDef(BaseModel): + ApplicationId: str + CreationTime: str + ExpirationTime: str + SemanticVersion: str + Status: StatusType + TemplateId: str + TemplateUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationPolicyResponseTypeDef(BaseModel): + Statements: List[ApplicationPolicyStatementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetCloudFormationTemplateResponseTypeDef(BaseModel): + ApplicationId: str + CreationTime: str + ExpirationTime: str + SemanticVersion: str + Status: StatusType + TemplateId: str + TemplateUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationDependenciesResponseTypeDef(BaseModel): + Dependencies: List[ApplicationDependencySummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + Applications: List[ApplicationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutApplicationPolicyResponseTypeDef(BaseModel): + Statements: List[ApplicationPolicyStatementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationVersionResponseTypeDef(BaseModel): + ApplicationId: str + CreationTime: str + ParameterDefinitions: List[ParameterDefinitionTypeDef] + RequiredCapabilities: List[CapabilityType] + ResourcesSupported: bool + SemanticVersion: str + SourceCodeArchiveUrl: str + SourceCodeUrl: str + TemplateUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class VersionTypeDef(BaseModel): + ApplicationId: str + CreationTime: str + ParameterDefinitions: List[ParameterDefinitionTypeDef] + RequiredCapabilities: List[CapabilityType] + ResourcesSupported: bool + SemanticVersion: str + TemplateUrl: str + SourceCodeArchiveUrl: Optional[str] = None + SourceCodeUrl: Optional[str] = None + +class ListApplicationDependenciesRequestListApplicationDependenciesPaginateTypeDef(BaseModel): + ApplicationId: str + SemanticVersion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationVersionsRequestListApplicationVersionsPaginateTypeDef(BaseModel): + ApplicationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationVersionsResponseTypeDef(BaseModel): + NextToken: str + Versions: List[VersionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RollbackConfigurationTypeDef(BaseModel): + MonitoringTimeInMinutes: Optional[int] = None + RollbackTriggers: Optional[Sequence[RollbackTriggerTypeDef]] = None + +class CreateApplicationResponseTypeDef(BaseModel): + ApplicationId: str + Author: str + CreationTime: str + Description: str + HomePageUrl: str + IsVerifiedAuthor: bool + Labels: List[str] + LicenseUrl: str + Name: str + ReadmeUrl: str + SpdxLicenseId: str + VerifiedAuthorUrl: str + Version: VersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationResponseTypeDef(BaseModel): + ApplicationId: str + Author: str + CreationTime: str + Description: str + HomePageUrl: str + IsVerifiedAuthor: bool + Labels: List[str] + LicenseUrl: str + Name: str + ReadmeUrl: str + SpdxLicenseId: str + VerifiedAuthorUrl: str + Version: VersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationResponseTypeDef(BaseModel): + ApplicationId: str + Author: str + CreationTime: str + Description: str + HomePageUrl: str + IsVerifiedAuthor: bool + Labels: List[str] + LicenseUrl: str + Name: str + ReadmeUrl: str + SpdxLicenseId: str + VerifiedAuthorUrl: str + Version: VersionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCloudFormationChangeSetRequestRequestTypeDef(BaseModel): + ApplicationId: str + StackName: str + Capabilities: Optional[Sequence[str]] = None + ChangeSetName: Optional[str] = None + ClientToken: Optional[str] = None + Description: Optional[str] = None + NotificationArns: Optional[Sequence[str]] = None + ParameterOverrides: Optional[Sequence[ParameterValueTypeDef]] = None + ResourceTypes: Optional[Sequence[str]] = None + RollbackConfiguration: Optional[RollbackConfigurationTypeDef] = None + SemanticVersion: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TemplateId: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/serverlessrepo_constants.py b/aws_resource_validator/pydantic_models/serverlessrepo_constants.py new file mode 100644 index 00000000..6ac23655 --- /dev/null +++ b/aws_resource_validator/pydantic_models/serverlessrepo_constants.py @@ -0,0 +1,412 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CapabilityType = Literal["CAPABILITY_AUTO_EXPAND", "CAPABILITY_IAM", "CAPABILITY_NAMED_IAM", "CAPABILITY_RESOURCE_POLICY"] +ListApplicationDependenciesPaginatorName = Literal["list_application_dependencies"] +ListApplicationVersionsPaginatorName = Literal["list_application_versions"] +ListApplicationsPaginatorName = Literal["list_applications"] +StatusType = Literal["ACTIVE", "EXPIRED", "PREPARING"] +ServerlessApplicationRepositoryServiceName = Literal["serverlessrepo"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_application_dependencies", "list_application_versions", "list_applications"] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/service_quotas_classes.py b/aws_resource_validator/pydantic_models/service_quotas_classes.py new file mode 100644 index 00000000..e0dde796 --- /dev/null +++ b/aws_resource_validator/pydantic_models/service_quotas_classes.py @@ -0,0 +1,271 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.service_quotas_constants import * + +class DeleteServiceQuotaIncreaseRequestFromTemplateRequestRequestTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + AwsRegion: str + +class ErrorReasonTypeDef(BaseModel): + ErrorCode: Optional[ErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class GetAWSDefaultServiceQuotaRequestRequestTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetRequestedServiceQuotaChangeRequestRequestTypeDef(BaseModel): + RequestId: str + +class GetServiceQuotaIncreaseRequestFromTemplateRequestRequestTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + AwsRegion: str + +class ServiceQuotaIncreaseRequestInTemplateTypeDef(BaseModel): + ServiceCode: Optional[str] = None + ServiceName: Optional[str] = None + QuotaCode: Optional[str] = None + QuotaName: Optional[str] = None + DesiredValue: Optional[float] = None + AwsRegion: Optional[str] = None + Unit: Optional[str] = None + GlobalQuota: Optional[bool] = None + +class GetServiceQuotaRequestRequestTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + ContextId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAWSDefaultServiceQuotasRequestRequestTypeDef(BaseModel): + ServiceCode: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRequestedServiceQuotaChangeHistoryByQuotaRequestRequestTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + Status: Optional[RequestStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + QuotaRequestedAtLevel: Optional[AppliedLevelEnumType] = None + +class ListRequestedServiceQuotaChangeHistoryRequestRequestTypeDef(BaseModel): + ServiceCode: Optional[str] = None + Status: Optional[RequestStatusType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + QuotaRequestedAtLevel: Optional[AppliedLevelEnumType] = None + +class ListServiceQuotaIncreaseRequestsInTemplateRequestRequestTypeDef(BaseModel): + ServiceCode: Optional[str] = None + AwsRegion: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListServiceQuotasRequestRequestTypeDef(BaseModel): + ServiceCode: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + QuotaCode: Optional[str] = None + QuotaAppliedAtLevel: Optional[AppliedLevelEnumType] = None + +class ListServicesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ServiceInfoTypeDef(BaseModel): + ServiceCode: Optional[str] = None + ServiceName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class MetricInfoTypeDef(BaseModel): + MetricNamespace: Optional[str] = None + MetricName: Optional[str] = None + MetricDimensions: Optional[Dict[str, str]] = None + MetricStatisticRecommendation: Optional[str] = None + +class PutServiceQuotaIncreaseRequestIntoTemplateRequestRequestTypeDef(BaseModel): + QuotaCode: str + ServiceCode: str + AwsRegion: str + DesiredValue: float + +class QuotaContextInfoTypeDef(BaseModel): + ContextScope: Optional[QuotaContextScopeType] = None + ContextScopeType: Optional[str] = None + ContextId: Optional[str] = None + +class QuotaPeriodTypeDef(BaseModel): + PeriodValue: Optional[int] = None + PeriodUnit: Optional[PeriodUnitType] = None + +class RequestServiceQuotaIncreaseRequestRequestTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + DesiredValue: float + ContextId: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class GetAssociationForServiceQuotaTemplateResponseTypeDef(BaseModel): + ServiceQuotaTemplateAssociationStatus: ServiceQuotaTemplateAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceQuotaIncreaseRequestFromTemplateResponseTypeDef(BaseModel): + ServiceQuotaIncreaseRequestInTemplate: ServiceQuotaIncreaseRequestInTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceQuotaIncreaseRequestsInTemplateResponseTypeDef(BaseModel): + ServiceQuotaIncreaseRequestInTemplateList: List[ ServiceQuotaIncreaseRequestInTemplateTypeDef ] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutServiceQuotaIncreaseRequestIntoTemplateResponseTypeDef(BaseModel): + ServiceQuotaIncreaseRequestInTemplate: ServiceQuotaIncreaseRequestInTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAWSDefaultServiceQuotasRequestListAWSDefaultServiceQuotasPaginateTypeDef(BaseModel): + ServiceCode: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRequestedServiceQuotaChangeHistoryByQuotaRequestListRequestedServiceQuotaChangeHistoryByQuotaPaginateTypeDef(BaseModel): + ServiceCode: str + QuotaCode: str + Status: Optional[RequestStatusType] = None + QuotaRequestedAtLevel: Optional[AppliedLevelEnumType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRequestedServiceQuotaChangeHistoryRequestListRequestedServiceQuotaChangeHistoryPaginateTypeDef(BaseModel): + ServiceCode: Optional[str] = None + Status: Optional[RequestStatusType] = None + QuotaRequestedAtLevel: Optional[AppliedLevelEnumType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceQuotaIncreaseRequestsInTemplateRequestListServiceQuotaIncreaseRequestsInTemplatePaginateTypeDef(BaseModel): + ServiceCode: Optional[str] = None + AwsRegion: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceQuotasRequestListServiceQuotasPaginateTypeDef(BaseModel): + ServiceCode: str + QuotaCode: Optional[str] = None + QuotaAppliedAtLevel: Optional[AppliedLevelEnumType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesRequestListServicesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesResponseTypeDef(BaseModel): + NextToken: str + Services: List[ServiceInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class RequestedServiceQuotaChangeTypeDef(BaseModel): + Id: Optional[str] = None + CaseId: Optional[str] = None + ServiceCode: Optional[str] = None + ServiceName: Optional[str] = None + QuotaCode: Optional[str] = None + QuotaName: Optional[str] = None + DesiredValue: Optional[float] = None + Status: Optional[RequestStatusType] = None + Created: Optional[datetime] = None + LastUpdated: Optional[datetime] = None + Requester: Optional[str] = None + QuotaArn: Optional[str] = None + GlobalQuota: Optional[bool] = None + Unit: Optional[str] = None + QuotaRequestedAtLevel: Optional[AppliedLevelEnumType] = None + QuotaContext: Optional[QuotaContextInfoTypeDef] = None + +class ServiceQuotaTypeDef(BaseModel): + ServiceCode: Optional[str] = None + ServiceName: Optional[str] = None + QuotaArn: Optional[str] = None + QuotaCode: Optional[str] = None + QuotaName: Optional[str] = None + Value: Optional[float] = None + Unit: Optional[str] = None + Adjustable: Optional[bool] = None + GlobalQuota: Optional[bool] = None + UsageMetric: Optional[MetricInfoTypeDef] = None + Period: Optional[QuotaPeriodTypeDef] = None + ErrorReason: Optional[ErrorReasonTypeDef] = None + QuotaAppliedAtLevel: Optional[AppliedLevelEnumType] = None + QuotaContext: Optional[QuotaContextInfoTypeDef] = None + +class GetRequestedServiceQuotaChangeResponseTypeDef(BaseModel): + RequestedQuota: RequestedServiceQuotaChangeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRequestedServiceQuotaChangeHistoryByQuotaResponseTypeDef(BaseModel): + NextToken: str + RequestedQuotas: List[RequestedServiceQuotaChangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRequestedServiceQuotaChangeHistoryResponseTypeDef(BaseModel): + NextToken: str + RequestedQuotas: List[RequestedServiceQuotaChangeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RequestServiceQuotaIncreaseResponseTypeDef(BaseModel): + RequestedQuota: RequestedServiceQuotaChangeTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAWSDefaultServiceQuotaResponseTypeDef(BaseModel): + Quota: ServiceQuotaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceQuotaResponseTypeDef(BaseModel): + Quota: ServiceQuotaTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAWSDefaultServiceQuotasResponseTypeDef(BaseModel): + NextToken: str + Quotas: List[ServiceQuotaTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceQuotasResponseTypeDef(BaseModel): + NextToken: str + Quotas: List[ServiceQuotaTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/service_quotas_constants.py b/aws_resource_validator/pydantic_models/service_quotas_constants.py new file mode 100644 index 00000000..28870914 --- /dev/null +++ b/aws_resource_validator/pydantic_models/service_quotas_constants.py @@ -0,0 +1,437 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppliedLevelEnumType = Literal["ACCOUNT", "ALL", "RESOURCE"] +ErrorCodeType = Literal["DEPENDENCY_ACCESS_DENIED_ERROR", + "DEPENDENCY_SERVICE_ERROR", + "DEPENDENCY_THROTTLING_ERROR", + "SERVICE_QUOTA_NOT_AVAILABLE_ERROR",] +ListAWSDefaultServiceQuotasPaginatorName = Literal["list_aws_default_service_quotas"] +ListRequestedServiceQuotaChangeHistoryByQuotaPaginatorName = Literal["list_requested_service_quota_change_history_by_quota"] +ListRequestedServiceQuotaChangeHistoryPaginatorName = Literal["list_requested_service_quota_change_history"] +ListServiceQuotaIncreaseRequestsInTemplatePaginatorName = Literal["list_service_quota_increase_requests_in_template"] +ListServiceQuotasPaginatorName = Literal["list_service_quotas"] +ListServicesPaginatorName = Literal["list_services"] +PeriodUnitType = Literal["DAY", "HOUR", "MICROSECOND", "MILLISECOND", "MINUTE", "SECOND", "WEEK"] +QuotaContextScopeType = Literal["ACCOUNT", "RESOURCE"] +RequestStatusType = Literal["APPROVED", "CASE_CLOSED", "CASE_OPENED", "DENIED", "INVALID_REQUEST", "NOT_APPROVED", "PENDING"] +ServiceQuotaTemplateAssociationStatusType = Literal["ASSOCIATED", "DISASSOCIATED"] +ServiceQuotasServiceName = Literal["service-quotas"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_aws_default_service_quotas", + "list_requested_service_quota_change_history", + "list_requested_service_quota_change_history_by_quota", + "list_service_quota_increase_requests_in_template", + "list_service_quotas", + "list_services",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/servicecatalog_appregistry_classes.py b/aws_resource_validator/pydantic_models/servicecatalog_appregistry_classes.py new file mode 100644 index 00000000..675bd70c --- /dev/null +++ b/aws_resource_validator/pydantic_models/servicecatalog_appregistry_classes.py @@ -0,0 +1,349 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.servicecatalog_appregistry_constants import * + +class TagQueryConfigurationTypeDef(BaseModel): + tagKey: Optional[str] = None + +class ApplicationSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + +class ResourcesListItemTypeDef(BaseModel): + resourceArn: Optional[str] = None + errorMessage: Optional[str] = None + status: Optional[str] = None + resourceType: Optional[str] = None + +class ApplicationTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + applicationTag: Optional[Dict[str, str]] = None + +class AssociateAttributeGroupRequestRequestTypeDef(BaseModel): + application: str + attributeGroup: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociateResourceRequestRequestTypeDef(BaseModel): + application: str + resourceType: ResourceTypeType + resource: str + options: Optional[Sequence[AssociationOptionType]] = None + +class AttributeGroupDetailsTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + name: Optional[str] = None + createdBy: Optional[str] = None + +class AttributeGroupSummaryTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + createdBy: Optional[str] = None + +class AttributeGroupTypeDef(BaseModel): + id: Optional[str] = None + arn: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + creationTime: Optional[datetime] = None + lastUpdateTime: Optional[datetime] = None + tags: Optional[Dict[str, str]] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + name: str + clientToken: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateAttributeGroupRequestRequestTypeDef(BaseModel): + name: str + attributes: str + clientToken: str + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + application: str + +class DeleteAttributeGroupRequestRequestTypeDef(BaseModel): + attributeGroup: str + +class DisassociateAttributeGroupRequestRequestTypeDef(BaseModel): + application: str + attributeGroup: str + +class DisassociateResourceRequestRequestTypeDef(BaseModel): + application: str + resourceType: ResourceTypeType + resource: str + +class GetApplicationRequestRequestTypeDef(BaseModel): + application: str + +class GetAssociatedResourceRequestRequestTypeDef(BaseModel): + application: str + resourceType: ResourceTypeType + resource: str + nextToken: Optional[str] = None + resourceTagStatus: Optional[Sequence[ResourceItemStatusType]] = None + maxResults: Optional[int] = None + +class GetAttributeGroupRequestRequestTypeDef(BaseModel): + attributeGroup: str + +class ResourceGroupTypeDef(BaseModel): + state: Optional[ResourceGroupStateType] = None + arn: Optional[str] = None + errorMessage: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssociatedAttributeGroupsRequestRequestTypeDef(BaseModel): + application: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAssociatedResourcesRequestRequestTypeDef(BaseModel): + application: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAttributeGroupsForApplicationRequestRequestTypeDef(BaseModel): + application: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListAttributeGroupsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ResourceDetailsTypeDef(BaseModel): + tagValue: Optional[str] = None + +class SyncResourceRequestRequestTypeDef(BaseModel): + resourceType: ResourceTypeType + resource: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + application: str + name: Optional[str] = None + description: Optional[str] = None + +class UpdateAttributeGroupRequestRequestTypeDef(BaseModel): + attributeGroup: str + name: Optional[str] = None + description: Optional[str] = None + attributes: Optional[str] = None + +class AppRegistryConfigurationTypeDef(BaseModel): + tagQueryConfiguration: Optional[TagQueryConfigurationTypeDef] = None + +class ApplicationTagResultTypeDef(BaseModel): + applicationTagStatus: Optional[ApplicationTagStatusType] = None + errorMessage: Optional[str] = None + resources: Optional[List[ResourcesListItemTypeDef]] = None + nextToken: Optional[str] = None + +class AssociateAttributeGroupResponseTypeDef(BaseModel): + applicationArn: str + attributeGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateResourceResponseTypeDef(BaseModel): + applicationArn: str + resourceArn: str + options: List[AssociationOptionType] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationResponseTypeDef(BaseModel): + application: ApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteApplicationResponseTypeDef(BaseModel): + application: ApplicationSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateAttributeGroupResponseTypeDef(BaseModel): + applicationArn: str + attributeGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateResourceResponseTypeDef(BaseModel): + applicationArn: str + resourceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAttributeGroupResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + attributes: str + creationTime: datetime + lastUpdateTime: datetime + tags: Dict[str, str] + createdBy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsResponseTypeDef(BaseModel): + applications: List[ApplicationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedAttributeGroupsResponseTypeDef(BaseModel): + attributeGroups: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SyncResourceResponseTypeDef(BaseModel): + applicationArn: str + resourceArn: str + actionTaken: SyncActionType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationResponseTypeDef(BaseModel): + application: ApplicationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttributeGroupsForApplicationResponseTypeDef(BaseModel): + attributeGroupsDetails: List[AttributeGroupDetailsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAttributeGroupResponseTypeDef(BaseModel): + attributeGroup: AttributeGroupSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAttributeGroupsResponseTypeDef(BaseModel): + attributeGroups: List[AttributeGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAttributeGroupResponseTypeDef(BaseModel): + attributeGroup: AttributeGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAttributeGroupResponseTypeDef(BaseModel): + attributeGroup: AttributeGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IntegrationsTypeDef(BaseModel): + resourceGroup: Optional[ResourceGroupTypeDef] = None + applicationTagResourceGroup: Optional[ResourceGroupTypeDef] = None + +class ResourceIntegrationsTypeDef(BaseModel): + resourceGroup: Optional[ResourceGroupTypeDef] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedAttributeGroupsRequestListAssociatedAttributeGroupsPaginateTypeDef(BaseModel): + application: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociatedResourcesRequestListAssociatedResourcesPaginateTypeDef(BaseModel): + application: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttributeGroupsRequestListAttributeGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ResourceInfoTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + resourceType: Optional[ResourceTypeType] = None + resourceDetails: Optional[ResourceDetailsTypeDef] = None + options: Optional[List[AssociationOptionType]] = None + +class GetConfigurationResponseTypeDef(BaseModel): + configuration: AppRegistryConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutConfigurationRequestRequestTypeDef(BaseModel): + configuration: AppRegistryConfigurationTypeDef + +class GetApplicationResponseTypeDef(BaseModel): + id: str + arn: str + name: str + description: str + creationTime: datetime + lastUpdateTime: datetime + associatedResourceCount: int + tags: Dict[str, str] + integrations: IntegrationsTypeDef + applicationTag: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceTypeDef(BaseModel): + name: Optional[str] = None + arn: Optional[str] = None + associationTime: Optional[datetime] = None + integrations: Optional[ResourceIntegrationsTypeDef] = None + +class ListAssociatedResourcesResponseTypeDef(BaseModel): + resources: List[ResourceInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssociatedResourceResponseTypeDef(BaseModel): + resource: ResourceTypeDef + options: List[AssociationOptionType] + applicationTagResult: ApplicationTagResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/servicecatalog_appregistry_constants.py b/aws_resource_validator/pydantic_models/servicecatalog_appregistry_constants.py new file mode 100644 index 00000000..3355b46a --- /dev/null +++ b/aws_resource_validator/pydantic_models/servicecatalog_appregistry_constants.py @@ -0,0 +1,432 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationTagStatusType = Literal["FAILURE", "IN_PROGRESS", "SUCCESS"] +AssociationOptionType = Literal["APPLY_APPLICATION_TAG", "SKIP_APPLICATION_TAG"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListAssociatedAttributeGroupsPaginatorName = Literal["list_associated_attribute_groups"] +ListAssociatedResourcesPaginatorName = Literal["list_associated_resources"] +ListAttributeGroupsForApplicationPaginatorName = Literal["list_attribute_groups_for_application"] +ListAttributeGroupsPaginatorName = Literal["list_attribute_groups"] +ResourceGroupStateType = Literal["CREATE_COMPLETE", "CREATE_FAILED", "CREATING", "UPDATE_COMPLETE", "UPDATE_FAILED", "UPDATING"] +ResourceItemStatusType = Literal["FAILED", "IN_PROGRESS", "SKIPPED", "SUCCESS"] +ResourceTypeType = Literal["CFN_STACK", "RESOURCE_TAG_VALUE"] +SyncActionType = Literal["NO_ACTION", "START_SYNC"] +AppRegistryServiceName = Literal["servicecatalog-appregistry"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applications", + "list_associated_attribute_groups", + "list_associated_resources", + "list_attribute_groups", + "list_attribute_groups_for_application",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/servicecatalog_classes.py b/aws_resource_validator/pydantic_models/servicecatalog_classes.py new file mode 100644 index 00000000..935f36d9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/servicecatalog_classes.py @@ -0,0 +1,1404 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.servicecatalog_constants import * + +class AcceptPortfolioShareInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + PortfolioShareType: Optional[PortfolioShareTypeType] = None + +class AccessLevelFilterTypeDef(BaseModel): + Key: Optional[AccessLevelFilterKeyType] = None + Value: Optional[str] = None + +class AssociateBudgetWithResourceInputRequestTypeDef(BaseModel): + BudgetName: str + ResourceId: str + +class AssociatePrincipalWithPortfolioInputRequestTypeDef(BaseModel): + PortfolioId: str + PrincipalARN: str + PrincipalType: PrincipalTypeType + AcceptLanguage: Optional[str] = None + +class AssociateProductWithPortfolioInputRequestTypeDef(BaseModel): + ProductId: str + PortfolioId: str + AcceptLanguage: Optional[str] = None + SourcePortfolioId: Optional[str] = None + +class AssociateServiceActionWithProvisioningArtifactInputRequestTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + ServiceActionId: str + AcceptLanguage: Optional[str] = None + IdempotencyToken: Optional[str] = None + +class AssociateTagOptionWithResourceInputRequestTypeDef(BaseModel): + ResourceId: str + TagOptionId: str + +class ServiceActionAssociationTypeDef(BaseModel): + ServiceActionId: str + ProductId: str + ProvisioningArtifactId: str + +class FailedServiceActionAssociationTypeDef(BaseModel): + ServiceActionId: Optional[str] = None + ProductId: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + ErrorCode: Optional[ServiceActionAssociationErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class BudgetDetailTypeDef(BaseModel): + BudgetName: Optional[str] = None + +class CloudWatchDashboardTypeDef(BaseModel): + Name: Optional[str] = None + +class CodeStarParametersTypeDef(BaseModel): + ConnectionArn: str + Repository: str + Branch: str + ArtifactPath: str + +class ConstraintDetailTypeDef(BaseModel): + ConstraintId: Optional[str] = None + Type: Optional[str] = None + Description: Optional[str] = None + Owner: Optional[str] = None + ProductId: Optional[str] = None + PortfolioId: Optional[str] = None + +class ConstraintSummaryTypeDef(BaseModel): + Type: Optional[str] = None + Description: Optional[str] = None + +class CopyProductInputRequestTypeDef(BaseModel): + SourceProductArn: str + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + TargetProductId: Optional[str] = None + TargetProductName: Optional[str] = None + SourceProvisioningArtifactIdentifiers: Optional[Sequence[Mapping[Literal["Id"], str]]] = None + CopyOptions: Optional[Sequence[Literal["CopyTags"]]] = None + +class CreateConstraintInputRequestTypeDef(BaseModel): + PortfolioId: str + ProductId: str + Parameters: str + Type: str + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + Description: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class PortfolioDetailTypeDef(BaseModel): + Id: Optional[str] = None + ARN: Optional[str] = None + DisplayName: Optional[str] = None + Description: Optional[str] = None + CreatedTime: Optional[datetime] = None + ProviderName: Optional[str] = None + +class OrganizationNodeTypeDef(BaseModel): + Type: Optional[OrganizationNodeTypeType] = None + Value: Optional[str] = None + +class ProvisioningArtifactPropertiesTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Info: Optional[Mapping[str, str]] = None + Type: Optional[ProvisioningArtifactTypeType] = None + DisableTemplateValidation: Optional[bool] = None + +class ProvisioningArtifactDetailTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Type: Optional[ProvisioningArtifactTypeType] = None + CreatedTime: Optional[datetime] = None + Active: Optional[bool] = None + Guidance: Optional[ProvisioningArtifactGuidanceType] = None + SourceRevision: Optional[str] = None + +class UpdateProvisioningParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + UsePreviousValue: Optional[bool] = None + +class CreateServiceActionInputRequestTypeDef(BaseModel): + Name: str + DefinitionType: Literal["SSM_AUTOMATION"] + Definition: Mapping[ServiceActionDefinitionKeyType, str] + IdempotencyToken: str + Description: Optional[str] = None + AcceptLanguage: Optional[str] = None + +class CreateTagOptionInputRequestTypeDef(BaseModel): + Key: str + Value: str + +class TagOptionDetailTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Active: Optional[bool] = None + Id: Optional[str] = None + Owner: Optional[str] = None + +class DeleteConstraintInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DeletePortfolioInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DeleteProductInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DeleteProvisionedProductPlanInputRequestTypeDef(BaseModel): + PlanId: str + AcceptLanguage: Optional[str] = None + IgnoreErrors: Optional[bool] = None + +class DeleteProvisioningArtifactInputRequestTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + AcceptLanguage: Optional[str] = None + +class DeleteServiceActionInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + IdempotencyToken: Optional[str] = None + +class DeleteTagOptionInputRequestTypeDef(BaseModel): + Id: str + +class DescribeConstraintInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DescribeCopyProductStatusInputRequestTypeDef(BaseModel): + CopyProductToken: str + AcceptLanguage: Optional[str] = None + +class DescribePortfolioInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DescribePortfolioShareStatusInputRequestTypeDef(BaseModel): + PortfolioShareToken: str + +class DescribePortfolioSharesInputRequestTypeDef(BaseModel): + PortfolioId: str + Type: DescribePortfolioShareTypeType + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class PortfolioShareDetailTypeDef(BaseModel): + PrincipalId: Optional[str] = None + Type: Optional[DescribePortfolioShareTypeType] = None + Accepted: Optional[bool] = None + ShareTagOptions: Optional[bool] = None + SharePrincipals: Optional[bool] = None + +class DescribeProductAsAdminInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + SourcePortfolioId: Optional[str] = None + +class ProvisioningArtifactSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedTime: Optional[datetime] = None + ProvisioningArtifactMetadata: Optional[Dict[str, str]] = None + +class DescribeProductInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + +class LaunchPathTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + +class ProductViewSummaryTypeDef(BaseModel): + Id: Optional[str] = None + ProductId: Optional[str] = None + Name: Optional[str] = None + Owner: Optional[str] = None + ShortDescription: Optional[str] = None + Type: Optional[ProductTypeType] = None + Distributor: Optional[str] = None + HasDefaultPath: Optional[bool] = None + SupportEmail: Optional[str] = None + SupportDescription: Optional[str] = None + SupportUrl: Optional[str] = None + +class ProvisioningArtifactTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedTime: Optional[datetime] = None + Guidance: Optional[ProvisioningArtifactGuidanceType] = None + +class DescribeProductViewInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DescribeProvisionedProductInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + +class ProvisionedProductDetailTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Type: Optional[str] = None + Id: Optional[str] = None + Status: Optional[ProvisionedProductStatusType] = None + StatusMessage: Optional[str] = None + CreatedTime: Optional[datetime] = None + IdempotencyToken: Optional[str] = None + LastRecordId: Optional[str] = None + LastProvisioningRecordId: Optional[str] = None + LastSuccessfulProvisioningRecordId: Optional[str] = None + ProductId: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + LaunchRoleArn: Optional[str] = None + +class DescribeProvisionedProductPlanInputRequestTypeDef(BaseModel): + PlanId: str + AcceptLanguage: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class DescribeProvisioningArtifactInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + ProductId: Optional[str] = None + ProvisioningArtifactName: Optional[str] = None + ProductName: Optional[str] = None + Verbose: Optional[bool] = None + IncludeProvisioningArtifactParameters: Optional[bool] = None + +class DescribeProvisioningParametersInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + ProductId: Optional[str] = None + ProductName: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + ProvisioningArtifactName: Optional[str] = None + PathId: Optional[str] = None + PathName: Optional[str] = None + +class ProvisioningArtifactOutputTypeDef(BaseModel): + Key: Optional[str] = None + Description: Optional[str] = None + +class ProvisioningArtifactPreferencesTypeDef(BaseModel): + StackSetAccounts: Optional[List[str]] = None + StackSetRegions: Optional[List[str]] = None + +class TagOptionSummaryTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[List[str]] = None + +class UsageInstructionTypeDef(BaseModel): + Type: Optional[str] = None + Value: Optional[str] = None + +class DescribeRecordInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class RecordOutputTypeDef(BaseModel): + OutputKey: Optional[str] = None + OutputValue: Optional[str] = None + Description: Optional[str] = None + +class DescribeServiceActionExecutionParametersInputRequestTypeDef(BaseModel): + ProvisionedProductId: str + ServiceActionId: str + AcceptLanguage: Optional[str] = None + +class ExecutionParameterTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[str] = None + DefaultValues: Optional[List[str]] = None + +class DescribeServiceActionInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + +class DescribeTagOptionInputRequestTypeDef(BaseModel): + Id: str + +class DisassociateBudgetFromResourceInputRequestTypeDef(BaseModel): + BudgetName: str + ResourceId: str + +class DisassociatePrincipalFromPortfolioInputRequestTypeDef(BaseModel): + PortfolioId: str + PrincipalARN: str + AcceptLanguage: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + +class DisassociateProductFromPortfolioInputRequestTypeDef(BaseModel): + ProductId: str + PortfolioId: str + AcceptLanguage: Optional[str] = None + +class DisassociateServiceActionFromProvisioningArtifactInputRequestTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + ServiceActionId: str + AcceptLanguage: Optional[str] = None + IdempotencyToken: Optional[str] = None + +class DisassociateTagOptionFromResourceInputRequestTypeDef(BaseModel): + ResourceId: str + TagOptionId: str + +class UniqueTagResourceIdentifierTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ExecuteProvisionedProductPlanInputRequestTypeDef(BaseModel): + PlanId: str + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + +class ExecuteProvisionedProductServiceActionInputRequestTypeDef(BaseModel): + ProvisionedProductId: str + ServiceActionId: str + ExecuteToken: str + AcceptLanguage: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + +class GetProvisionedProductOutputsInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + ProvisionedProductId: Optional[str] = None + ProvisionedProductName: Optional[str] = None + OutputKeys: Optional[Sequence[str]] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ImportAsProvisionedProductInputRequestTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + ProvisionedProductName: str + PhysicalId: str + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + +class LastSyncTypeDef(BaseModel): + LastSyncTime: Optional[datetime] = None + LastSyncStatus: Optional[LastSyncStatusType] = None + LastSyncStatusMessage: Optional[str] = None + LastSuccessfulSyncTime: Optional[datetime] = None + LastSuccessfulSyncProvisioningArtifactId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAcceptedPortfolioSharesInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + PortfolioShareType: Optional[PortfolioShareTypeType] = None + +class ListBudgetsForResourceInputRequestTypeDef(BaseModel): + ResourceId: str + AcceptLanguage: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ListConstraintsForPortfolioInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + ProductId: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ListLaunchPathsInputRequestTypeDef(BaseModel): + ProductId: str + AcceptLanguage: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ListOrganizationPortfolioAccessInputRequestTypeDef(BaseModel): + PortfolioId: str + OrganizationNodeType: OrganizationNodeTypeType + AcceptLanguage: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListPortfolioAccessInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + OrganizationParentId: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListPortfoliosForProductInputRequestTypeDef(BaseModel): + ProductId: str + AcceptLanguage: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListPortfoliosInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListPrincipalsForPortfolioInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class PrincipalTypeDef(BaseModel): + PrincipalARN: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + +class ProvisionedProductPlanSummaryTypeDef(BaseModel): + PlanName: Optional[str] = None + PlanId: Optional[str] = None + ProvisionProductId: Optional[str] = None + ProvisionProductName: Optional[str] = None + PlanType: Optional[Literal["CLOUDFORMATION"]] = None + ProvisioningArtifactId: Optional[str] = None + +class ListProvisioningArtifactsForServiceActionInputRequestTypeDef(BaseModel): + ServiceActionId: str + PageSize: Optional[int] = None + PageToken: Optional[str] = None + AcceptLanguage: Optional[str] = None + +class ListProvisioningArtifactsInputRequestTypeDef(BaseModel): + ProductId: str + AcceptLanguage: Optional[str] = None + +class ListRecordHistorySearchFilterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ListResourcesForTagOptionInputRequestTypeDef(BaseModel): + TagOptionId: str + ResourceType: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ResourceDetailTypeDef(BaseModel): + Id: Optional[str] = None + ARN: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CreatedTime: Optional[datetime] = None + +class ListServiceActionsForProvisioningArtifactInputRequestTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + PageSize: Optional[int] = None + PageToken: Optional[str] = None + AcceptLanguage: Optional[str] = None + +class ServiceActionSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + DefinitionType: Optional[Literal["SSM_AUTOMATION"]] = None + +class ListServiceActionsInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ListStackInstancesForProvisionedProductInputRequestTypeDef(BaseModel): + ProvisionedProductId: str + AcceptLanguage: Optional[str] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + +class StackInstanceTypeDef(BaseModel): + Account: Optional[str] = None + Region: Optional[str] = None + StackInstanceStatus: Optional[StackInstanceStatusType] = None + +class ListTagOptionsFiltersTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + Active: Optional[bool] = None + +class NotifyTerminateProvisionedProductEngineWorkflowResultInputRequestTypeDef(BaseModel): + WorkflowToken: str + RecordId: str + Status: EngineWorkflowStatusType + IdempotencyToken: str + FailureReason: Optional[str] = None + +class ParameterConstraintsTypeDef(BaseModel): + AllowedValues: Optional[List[str]] = None + AllowedPattern: Optional[str] = None + ConstraintDescription: Optional[str] = None + MaxLength: Optional[str] = None + MinLength: Optional[str] = None + MaxValue: Optional[str] = None + MinValue: Optional[str] = None + +class ProductViewAggregationValueTypeDef(BaseModel): + Value: Optional[str] = None + ApproximateCount: Optional[int] = None + +class ProvisioningParameterTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ProvisioningPreferencesTypeDef(BaseModel): + StackSetAccounts: Optional[Sequence[str]] = None + StackSetRegions: Optional[Sequence[str]] = None + StackSetFailureToleranceCount: Optional[int] = None + StackSetFailureTolerancePercentage: Optional[int] = None + StackSetMaxConcurrencyCount: Optional[int] = None + StackSetMaxConcurrencyPercentage: Optional[int] = None + +class RecordErrorTypeDef(BaseModel): + Code: Optional[str] = None + Description: Optional[str] = None + +class RecordTagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class RejectPortfolioShareInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + PortfolioShareType: Optional[PortfolioShareTypeType] = None + +class ResourceTargetDefinitionTypeDef(BaseModel): + Attribute: Optional[ResourceAttributeType] = None + Name: Optional[str] = None + RequiresRecreation: Optional[RequiresRecreationType] = None + +class SearchProductsAsAdminInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PortfolioId: Optional[str] = None + Filters: Optional[Mapping[ProductViewFilterByType, Sequence[str]]] = None + SortBy: Optional[ProductViewSortByType] = None + SortOrder: Optional[SortOrderType] = None + PageToken: Optional[str] = None + PageSize: Optional[int] = None + ProductSource: Optional[Literal["ACCOUNT"]] = None + +class SearchProductsInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + Filters: Optional[Mapping[ProductViewFilterByType, Sequence[str]]] = None + PageSize: Optional[int] = None + SortBy: Optional[ProductViewSortByType] = None + SortOrder: Optional[SortOrderType] = None + PageToken: Optional[str] = None + +class ShareErrorTypeDef(BaseModel): + Accounts: Optional[List[str]] = None + Message: Optional[str] = None + Error: Optional[str] = None + +class TerminateProvisionedProductInputRequestTypeDef(BaseModel): + TerminateToken: str + ProvisionedProductName: Optional[str] = None + ProvisionedProductId: Optional[str] = None + IgnoreErrors: Optional[bool] = None + AcceptLanguage: Optional[str] = None + RetainPhysicalResources: Optional[bool] = None + +class UpdateConstraintInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + Description: Optional[str] = None + Parameters: Optional[str] = None + +class UpdateProvisioningPreferencesTypeDef(BaseModel): + StackSetAccounts: Optional[Sequence[str]] = None + StackSetRegions: Optional[Sequence[str]] = None + StackSetFailureToleranceCount: Optional[int] = None + StackSetFailureTolerancePercentage: Optional[int] = None + StackSetMaxConcurrencyCount: Optional[int] = None + StackSetMaxConcurrencyPercentage: Optional[int] = None + StackSetOperationType: Optional[StackSetOperationTypeType] = None + +class UpdateProvisionedProductPropertiesInputRequestTypeDef(BaseModel): + ProvisionedProductId: str + ProvisionedProductProperties: Mapping[PropertyKeyType, str] + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + +class UpdateProvisioningArtifactInputRequestTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + AcceptLanguage: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Active: Optional[bool] = None + Guidance: Optional[ProvisioningArtifactGuidanceType] = None + +class UpdateServiceActionInputRequestTypeDef(BaseModel): + Id: str + Name: Optional[str] = None + Definition: Optional[Mapping[ServiceActionDefinitionKeyType, str]] = None + Description: Optional[str] = None + AcceptLanguage: Optional[str] = None + +class UpdateTagOptionInputRequestTypeDef(BaseModel): + Id: str + Value: Optional[str] = None + Active: Optional[bool] = None + +class ListProvisionedProductPlansInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + ProvisionProductId: Optional[str] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + +class ScanProvisionedProductsInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class SearchProvisionedProductsInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + Filters: Optional[Mapping[Literal["SearchQuery"], Sequence[str]]] = None + SortBy: Optional[str] = None + SortOrder: Optional[SortOrderType] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class BatchAssociateServiceActionWithProvisioningArtifactInputRequestTypeDef(BaseModel): + ServiceActionAssociations: Sequence[ServiceActionAssociationTypeDef] + AcceptLanguage: Optional[str] = None + +class BatchDisassociateServiceActionFromProvisioningArtifactInputRequestTypeDef(BaseModel): + ServiceActionAssociations: Sequence[ServiceActionAssociationTypeDef] + AcceptLanguage: Optional[str] = None + +class BatchAssociateServiceActionWithProvisioningArtifactOutputTypeDef(BaseModel): + FailedServiceActionAssociations: List[FailedServiceActionAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchDisassociateServiceActionFromProvisioningArtifactOutputTypeDef(BaseModel): + FailedServiceActionAssociations: List[FailedServiceActionAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CopyProductOutputTypeDef(BaseModel): + CopyProductToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePortfolioShareOutputTypeDef(BaseModel): + PortfolioShareToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisionedProductPlanOutputTypeDef(BaseModel): + PlanName: str + PlanId: str + ProvisionProductId: str + ProvisionedProductName: str + ProvisioningArtifactId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePortfolioShareOutputTypeDef(BaseModel): + PortfolioShareToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCopyProductStatusOutputTypeDef(BaseModel): + CopyProductStatus: CopyProductStatusType + TargetProductId: str + StatusDetail: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAWSOrganizationsAccessStatusOutputTypeDef(BaseModel): + AccessStatus: AccessStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListPortfolioAccessOutputTypeDef(BaseModel): + AccountIds: List[str] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePortfolioShareOutputTypeDef(BaseModel): + PortfolioShareToken: str + Status: ShareStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProvisionedProductPropertiesOutputTypeDef(BaseModel): + ProvisionedProductId: str + ProvisionedProductProperties: Dict[PropertyKeyType, str] + RecordId: str + Status: RecordStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListBudgetsForResourceOutputTypeDef(BaseModel): + Budgets: List[BudgetDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SourceConnectionParametersTypeDef(BaseModel): + CodeStar: Optional[CodeStarParametersTypeDef] = None + +class CreateConstraintOutputTypeDef(BaseModel): + ConstraintDetail: ConstraintDetailTypeDef + ConstraintParameters: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConstraintOutputTypeDef(BaseModel): + ConstraintDetail: ConstraintDetailTypeDef + ConstraintParameters: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListConstraintsForPortfolioOutputTypeDef(BaseModel): + ConstraintDetails: List[ConstraintDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConstraintOutputTypeDef(BaseModel): + ConstraintDetail: ConstraintDetailTypeDef + ConstraintParameters: str + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePortfolioInputRequestTypeDef(BaseModel): + DisplayName: str + ProviderName: str + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class LaunchPathSummaryTypeDef(BaseModel): + Id: Optional[str] = None + ConstraintSummaries: Optional[List[ConstraintSummaryTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + Name: Optional[str] = None + +class ProvisionedProductAttributeTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Type: Optional[str] = None + Id: Optional[str] = None + Status: Optional[ProvisionedProductStatusType] = None + StatusMessage: Optional[str] = None + CreatedTime: Optional[datetime] = None + IdempotencyToken: Optional[str] = None + LastRecordId: Optional[str] = None + LastProvisioningRecordId: Optional[str] = None + LastSuccessfulProvisioningRecordId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + PhysicalId: Optional[str] = None + ProductId: Optional[str] = None + ProductName: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + ProvisioningArtifactName: Optional[str] = None + UserArn: Optional[str] = None + UserArnSession: Optional[str] = None + +class UpdatePortfolioInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + DisplayName: Optional[str] = None + Description: Optional[str] = None + ProviderName: Optional[str] = None + AddTags: Optional[Sequence[TagTypeDef]] = None + RemoveTags: Optional[Sequence[str]] = None + +class CreatePortfolioOutputTypeDef(BaseModel): + PortfolioDetail: PortfolioDetailTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAcceptedPortfolioSharesOutputTypeDef(BaseModel): + PortfolioDetails: List[PortfolioDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPortfoliosForProductOutputTypeDef(BaseModel): + PortfolioDetails: List[PortfolioDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPortfoliosOutputTypeDef(BaseModel): + PortfolioDetails: List[PortfolioDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePortfolioOutputTypeDef(BaseModel): + PortfolioDetail: PortfolioDetailTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePortfolioShareInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + AccountId: Optional[str] = None + OrganizationNode: Optional[OrganizationNodeTypeDef] = None + ShareTagOptions: Optional[bool] = None + SharePrincipals: Optional[bool] = None + +class DeletePortfolioShareInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + AccountId: Optional[str] = None + OrganizationNode: Optional[OrganizationNodeTypeDef] = None + +class ListOrganizationPortfolioAccessOutputTypeDef(BaseModel): + OrganizationNodes: List[OrganizationNodeTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePortfolioShareInputRequestTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + AccountId: Optional[str] = None + OrganizationNode: Optional[OrganizationNodeTypeDef] = None + ShareTagOptions: Optional[bool] = None + SharePrincipals: Optional[bool] = None + +class CreateProvisioningArtifactInputRequestTypeDef(BaseModel): + ProductId: str + Parameters: ProvisioningArtifactPropertiesTypeDef + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + +class CreateProvisioningArtifactOutputTypeDef(BaseModel): + ProvisioningArtifactDetail: ProvisioningArtifactDetailTypeDef + Info: Dict[str, str] + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisioningArtifactsOutputTypeDef(BaseModel): + ProvisioningArtifactDetails: List[ProvisioningArtifactDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProvisioningArtifactOutputTypeDef(BaseModel): + ProvisioningArtifactDetail: ProvisioningArtifactDetailTypeDef + Info: Dict[str, str] + Status: StatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProvisionedProductPlanInputRequestTypeDef(BaseModel): + PlanName: str + PlanType: Literal["CLOUDFORMATION"] + ProductId: str + ProvisionedProductName: str + ProvisioningArtifactId: str + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + NotificationArns: Optional[Sequence[str]] = None + PathId: Optional[str] = None + ProvisioningParameters: Optional[Sequence[UpdateProvisioningParameterTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ProvisionedProductPlanDetailsTypeDef(BaseModel): + CreatedTime: Optional[datetime] = None + PathId: Optional[str] = None + ProductId: Optional[str] = None + PlanName: Optional[str] = None + PlanId: Optional[str] = None + ProvisionProductId: Optional[str] = None + ProvisionProductName: Optional[str] = None + PlanType: Optional[Literal["CLOUDFORMATION"]] = None + ProvisioningArtifactId: Optional[str] = None + Status: Optional[ProvisionedProductPlanStatusType] = None + UpdatedTime: Optional[datetime] = None + NotificationArns: Optional[List[str]] = None + ProvisioningParameters: Optional[List[UpdateProvisioningParameterTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + StatusMessage: Optional[str] = None + +class CreateTagOptionOutputTypeDef(BaseModel): + TagOptionDetail: TagOptionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePortfolioOutputTypeDef(BaseModel): + PortfolioDetail: PortfolioDetailTypeDef + Tags: List[TagTypeDef] + TagOptions: List[TagOptionDetailTypeDef] + Budgets: List[BudgetDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTagOptionOutputTypeDef(BaseModel): + TagOptionDetail: TagOptionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagOptionsOutputTypeDef(BaseModel): + TagOptionDetails: List[TagOptionDetailTypeDef] + PageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTagOptionOutputTypeDef(BaseModel): + TagOptionDetail: TagOptionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePortfolioSharesOutputTypeDef(BaseModel): + NextPageToken: str + PortfolioShareDetails: List[PortfolioShareDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProductOutputTypeDef(BaseModel): + ProductViewSummary: ProductViewSummaryTypeDef + ProvisioningArtifacts: List[ProvisioningArtifactTypeDef] + Budgets: List[BudgetDetailTypeDef] + LaunchPaths: List[LaunchPathTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProductViewOutputTypeDef(BaseModel): + ProductViewSummary: ProductViewSummaryTypeDef + ProvisioningArtifacts: List[ProvisioningArtifactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisioningArtifactViewTypeDef(BaseModel): + ProductViewSummary: Optional[ProductViewSummaryTypeDef] = None + ProvisioningArtifact: Optional[ProvisioningArtifactTypeDef] = None + +class DescribeProvisionedProductOutputTypeDef(BaseModel): + ProvisionedProductDetail: ProvisionedProductDetailTypeDef + CloudWatchDashboards: List[CloudWatchDashboardTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ScanProvisionedProductsOutputTypeDef(BaseModel): + ProvisionedProducts: List[ProvisionedProductDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetProvisionedProductOutputsOutputTypeDef(BaseModel): + Outputs: List[RecordOutputTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NotifyUpdateProvisionedProductEngineWorkflowResultInputRequestTypeDef(BaseModel): + WorkflowToken: str + RecordId: str + Status: EngineWorkflowStatusType + IdempotencyToken: str + FailureReason: Optional[str] = None + Outputs: Optional[Sequence[RecordOutputTypeDef]] = None + +class DescribeServiceActionExecutionParametersOutputTypeDef(BaseModel): + ServiceActionParameters: List[ExecutionParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class EngineWorkflowResourceIdentifierTypeDef(BaseModel): + UniqueTag: Optional[UniqueTagResourceIdentifierTypeDef] = None + +class ListAcceptedPortfolioSharesInputListAcceptedPortfolioSharesPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PortfolioShareType: Optional[PortfolioShareTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConstraintsForPortfolioInputListConstraintsForPortfolioPaginateTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + ProductId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLaunchPathsInputListLaunchPathsPaginateTypeDef(BaseModel): + ProductId: str + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationPortfolioAccessInputListOrganizationPortfolioAccessPaginateTypeDef(BaseModel): + PortfolioId: str + OrganizationNodeType: OrganizationNodeTypeType + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPortfoliosForProductInputListPortfoliosForProductPaginateTypeDef(BaseModel): + ProductId: str + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPortfoliosInputListPortfoliosPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrincipalsForPortfolioInputListPrincipalsForPortfolioPaginateTypeDef(BaseModel): + PortfolioId: str + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProvisionedProductPlansInputListProvisionedProductPlansPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + ProvisionProductId: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProvisioningArtifactsForServiceActionInputListProvisioningArtifactsForServiceActionPaginateTypeDef(BaseModel): + ServiceActionId: str + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourcesForTagOptionInputListResourcesForTagOptionPaginateTypeDef(BaseModel): + TagOptionId: str + ResourceType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceActionsForProvisioningArtifactInputListServiceActionsForProvisioningArtifactPaginateTypeDef(BaseModel): + ProductId: str + ProvisioningArtifactId: str + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceActionsInputListServiceActionsPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ScanProvisionedProductsInputScanProvisionedProductsPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchProductsAsAdminInputSearchProductsAsAdminPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + PortfolioId: Optional[str] = None + Filters: Optional[Mapping[ProductViewFilterByType, Sequence[str]]] = None + SortBy: Optional[ProductViewSortByType] = None + SortOrder: Optional[SortOrderType] = None + ProductSource: Optional[Literal["ACCOUNT"]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPrincipalsForPortfolioOutputTypeDef(BaseModel): + Principals: List[PrincipalTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisionedProductPlansOutputTypeDef(BaseModel): + ProvisionedProductPlans: List[ProvisionedProductPlanSummaryTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecordHistoryInputListRecordHistoryPaginateTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + SearchFilter: Optional[ListRecordHistorySearchFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecordHistoryInputRequestTypeDef(BaseModel): + AcceptLanguage: Optional[str] = None + AccessLevelFilter: Optional[AccessLevelFilterTypeDef] = None + SearchFilter: Optional[ListRecordHistorySearchFilterTypeDef] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ListResourcesForTagOptionOutputTypeDef(BaseModel): + ResourceDetails: List[ResourceDetailTypeDef] + PageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceActionsForProvisioningArtifactOutputTypeDef(BaseModel): + ServiceActionSummaries: List[ServiceActionSummaryTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceActionsOutputTypeDef(BaseModel): + ServiceActionSummaries: List[ServiceActionSummaryTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceActionDetailTypeDef(BaseModel): + ServiceActionSummary: Optional[ServiceActionSummaryTypeDef] = None + Definition: Optional[Dict[ServiceActionDefinitionKeyType, str]] = None + +class ListStackInstancesForProvisionedProductOutputTypeDef(BaseModel): + StackInstances: List[StackInstanceTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagOptionsInputListTagOptionsPaginateTypeDef(BaseModel): + Filters: Optional[ListTagOptionsFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagOptionsInputRequestTypeDef(BaseModel): + Filters: Optional[ListTagOptionsFiltersTypeDef] = None + PageSize: Optional[int] = None + PageToken: Optional[str] = None + +class ProvisioningArtifactParameterTypeDef(BaseModel): + ParameterKey: Optional[str] = None + DefaultValue: Optional[str] = None + ParameterType: Optional[str] = None + IsNoEcho: Optional[bool] = None + Description: Optional[str] = None + ParameterConstraints: Optional[ParameterConstraintsTypeDef] = None + +class SearchProductsOutputTypeDef(BaseModel): + ProductViewSummaries: List[ProductViewSummaryTypeDef] + ProductViewAggregations: Dict[str, List[ProductViewAggregationValueTypeDef]] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionProductInputRequestTypeDef(BaseModel): + ProvisionedProductName: str + ProvisionToken: str + AcceptLanguage: Optional[str] = None + ProductId: Optional[str] = None + ProductName: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + ProvisioningArtifactName: Optional[str] = None + PathId: Optional[str] = None + PathName: Optional[str] = None + ProvisioningParameters: Optional[Sequence[ProvisioningParameterTypeDef]] = None + ProvisioningPreferences: Optional[ProvisioningPreferencesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + NotificationArns: Optional[Sequence[str]] = None + +class RecordDetailTypeDef(BaseModel): + RecordId: Optional[str] = None + ProvisionedProductName: Optional[str] = None + Status: Optional[RecordStatusType] = None + CreatedTime: Optional[datetime] = None + UpdatedTime: Optional[datetime] = None + ProvisionedProductType: Optional[str] = None + RecordType: Optional[str] = None + ProvisionedProductId: Optional[str] = None + ProductId: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + PathId: Optional[str] = None + RecordErrors: Optional[List[RecordErrorTypeDef]] = None + RecordTags: Optional[List[RecordTagTypeDef]] = None + LaunchRoleArn: Optional[str] = None + +class ResourceChangeDetailTypeDef(BaseModel): + Target: Optional[ResourceTargetDefinitionTypeDef] = None + Evaluation: Optional[EvaluationTypeType] = None + CausingEntity: Optional[str] = None + +class ShareDetailsTypeDef(BaseModel): + SuccessfulShares: Optional[List[str]] = None + ShareErrors: Optional[List[ShareErrorTypeDef]] = None + +class UpdateProvisionedProductInputRequestTypeDef(BaseModel): + UpdateToken: str + AcceptLanguage: Optional[str] = None + ProvisionedProductName: Optional[str] = None + ProvisionedProductId: Optional[str] = None + ProductId: Optional[str] = None + ProductName: Optional[str] = None + ProvisioningArtifactId: Optional[str] = None + ProvisioningArtifactName: Optional[str] = None + PathId: Optional[str] = None + PathName: Optional[str] = None + ProvisioningParameters: Optional[Sequence[UpdateProvisioningParameterTypeDef]] = None + ProvisioningPreferences: Optional[UpdateProvisioningPreferencesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class SourceConnectionDetailTypeDef(BaseModel): + Type: Optional[Literal["CODESTAR"]] = None + ConnectionParameters: Optional[SourceConnectionParametersTypeDef] = None + LastSync: Optional[LastSyncTypeDef] = None + +class SourceConnectionTypeDef(BaseModel): + ConnectionParameters: SourceConnectionParametersTypeDef + Type: Optional[Literal["CODESTAR"]] = None + +class ListLaunchPathsOutputTypeDef(BaseModel): + LaunchPathSummaries: List[LaunchPathSummaryTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchProvisionedProductsOutputTypeDef(BaseModel): + ProvisionedProducts: List[ProvisionedProductAttributeTypeDef] + TotalResultsCount: int + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProvisioningArtifactsForServiceActionOutputTypeDef(BaseModel): + ProvisioningArtifactViews: List[ProvisioningArtifactViewTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NotifyProvisionProductEngineWorkflowResultInputRequestTypeDef(BaseModel): + WorkflowToken: str + RecordId: str + Status: EngineWorkflowStatusType + IdempotencyToken: str + FailureReason: Optional[str] = None + ResourceIdentifier: Optional[EngineWorkflowResourceIdentifierTypeDef] = None + Outputs: Optional[Sequence[RecordOutputTypeDef]] = None + +class CreateServiceActionOutputTypeDef(BaseModel): + ServiceActionDetail: ServiceActionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServiceActionOutputTypeDef(BaseModel): + ServiceActionDetail: ServiceActionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceActionOutputTypeDef(BaseModel): + ServiceActionDetail: ServiceActionDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProvisioningArtifactOutputTypeDef(BaseModel): + ProvisioningArtifactDetail: ProvisioningArtifactDetailTypeDef + Info: Dict[str, str] + Status: StatusType + ProvisioningArtifactParameters: List[ProvisioningArtifactParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProvisioningParametersOutputTypeDef(BaseModel): + ProvisioningArtifactParameters: List[ProvisioningArtifactParameterTypeDef] + ConstraintSummaries: List[ConstraintSummaryTypeDef] + UsageInstructions: List[UsageInstructionTypeDef] + TagOptions: List[TagOptionSummaryTypeDef] + ProvisioningArtifactPreferences: ProvisioningArtifactPreferencesTypeDef + ProvisioningArtifactOutputs: List[ProvisioningArtifactOutputTypeDef] + ProvisioningArtifactOutputKeys: List[ProvisioningArtifactOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRecordOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + RecordOutputs: List[RecordOutputTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteProvisionedProductPlanOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExecuteProvisionedProductServiceActionOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportAsProvisionedProductOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecordHistoryOutputTypeDef(BaseModel): + RecordDetails: List[RecordDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionProductOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateProvisionedProductOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProvisionedProductOutputTypeDef(BaseModel): + RecordDetail: RecordDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceChangeTypeDef(BaseModel): + Action: Optional[ChangeActionType] = None + LogicalResourceId: Optional[str] = None + PhysicalResourceId: Optional[str] = None + ResourceType: Optional[str] = None + Replacement: Optional[ReplacementType] = None + Scope: Optional[List[ResourceAttributeType]] = None + Details: Optional[List[ResourceChangeDetailTypeDef]] = None + +class DescribePortfolioShareStatusOutputTypeDef(BaseModel): + PortfolioShareToken: str + PortfolioId: str + OrganizationNodeValue: str + Status: ShareStatusType + ShareDetails: ShareDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProductViewDetailTypeDef(BaseModel): + ProductViewSummary: Optional[ProductViewSummaryTypeDef] = None + Status: Optional[StatusType] = None + ProductARN: Optional[str] = None + CreatedTime: Optional[datetime] = None + SourceConnection: Optional[SourceConnectionDetailTypeDef] = None + +class CreateProductInputRequestTypeDef(BaseModel): + Name: str + Owner: str + ProductType: ProductTypeType + IdempotencyToken: str + AcceptLanguage: Optional[str] = None + Description: Optional[str] = None + Distributor: Optional[str] = None + SupportDescription: Optional[str] = None + SupportEmail: Optional[str] = None + SupportUrl: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ProvisioningArtifactParameters: Optional[ProvisioningArtifactPropertiesTypeDef] = None + SourceConnection: Optional[SourceConnectionTypeDef] = None + +class UpdateProductInputRequestTypeDef(BaseModel): + Id: str + AcceptLanguage: Optional[str] = None + Name: Optional[str] = None + Owner: Optional[str] = None + Description: Optional[str] = None + Distributor: Optional[str] = None + SupportDescription: Optional[str] = None + SupportEmail: Optional[str] = None + SupportUrl: Optional[str] = None + AddTags: Optional[Sequence[TagTypeDef]] = None + RemoveTags: Optional[Sequence[str]] = None + SourceConnection: Optional[SourceConnectionTypeDef] = None + +class DescribeProvisionedProductPlanOutputTypeDef(BaseModel): + ProvisionedProductPlanDetails: ProvisionedProductPlanDetailsTypeDef + ResourceChanges: List[ResourceChangeTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProductOutputTypeDef(BaseModel): + ProductViewDetail: ProductViewDetailTypeDef + ProvisioningArtifactDetail: ProvisioningArtifactDetailTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProductAsAdminOutputTypeDef(BaseModel): + ProductViewDetail: ProductViewDetailTypeDef + ProvisioningArtifactSummaries: List[ProvisioningArtifactSummaryTypeDef] + Tags: List[TagTypeDef] + TagOptions: List[TagOptionDetailTypeDef] + Budgets: List[BudgetDetailTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchProductsAsAdminOutputTypeDef(BaseModel): + ProductViewDetails: List[ProductViewDetailTypeDef] + NextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProductOutputTypeDef(BaseModel): + ProductViewDetail: ProductViewDetailTypeDef + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/servicecatalog_constants.py b/aws_resource_validator/pydantic_models/servicecatalog_constants.py new file mode 100644 index 00000000..f26d492d --- /dev/null +++ b/aws_resource_validator/pydantic_models/servicecatalog_constants.py @@ -0,0 +1,506 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessLevelFilterKeyType = Literal["Account", "Role", "User"] +AccessStatusType = Literal["DISABLED", "ENABLED", "UNDER_CHANGE"] +ChangeActionType = Literal["ADD", "MODIFY", "REMOVE"] +CopyOptionType = Literal["CopyTags"] +CopyProductStatusType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +DescribePortfolioShareTypeType = Literal["ACCOUNT", "ORGANIZATION", "ORGANIZATIONAL_UNIT", "ORGANIZATION_MEMBER_ACCOUNT"] +EngineWorkflowStatusType = Literal["FAILED", "SUCCEEDED"] +EvaluationTypeType = Literal["DYNAMIC", "STATIC"] +LastSyncStatusType = Literal["FAILED", "SUCCEEDED"] +ListAcceptedPortfolioSharesPaginatorName = Literal["list_accepted_portfolio_shares"] +ListConstraintsForPortfolioPaginatorName = Literal["list_constraints_for_portfolio"] +ListLaunchPathsPaginatorName = Literal["list_launch_paths"] +ListOrganizationPortfolioAccessPaginatorName = Literal["list_organization_portfolio_access"] +ListPortfoliosForProductPaginatorName = Literal["list_portfolios_for_product"] +ListPortfoliosPaginatorName = Literal["list_portfolios"] +ListPrincipalsForPortfolioPaginatorName = Literal["list_principals_for_portfolio"] +ListProvisionedProductPlansPaginatorName = Literal["list_provisioned_product_plans"] +ListProvisioningArtifactsForServiceActionPaginatorName = Literal["list_provisioning_artifacts_for_service_action"] +ListRecordHistoryPaginatorName = Literal["list_record_history"] +ListResourcesForTagOptionPaginatorName = Literal["list_resources_for_tag_option"] +ListServiceActionsForProvisioningArtifactPaginatorName = Literal["list_service_actions_for_provisioning_artifact"] +ListServiceActionsPaginatorName = Literal["list_service_actions"] +ListTagOptionsPaginatorName = Literal["list_tag_options"] +OrganizationNodeTypeType = Literal["ACCOUNT", "ORGANIZATION", "ORGANIZATIONAL_UNIT"] +PortfolioShareTypeType = Literal["AWS_ORGANIZATIONS", "AWS_SERVICECATALOG", "IMPORTED"] +PrincipalTypeType = Literal["IAM", "IAM_PATTERN"] +ProductSourceType = Literal["ACCOUNT"] +ProductTypeType = Literal["CLOUD_FORMATION_TEMPLATE", + "EXTERNAL", + "MARKETPLACE", + "TERRAFORM_CLOUD", + "TERRAFORM_OPEN_SOURCE",] +ProductViewFilterByType = Literal["FullTextSearch", "Owner", "ProductType", "SourceProductId"] +ProductViewSortByType = Literal["CreationDate", "Title", "VersionCount"] +PropertyKeyType = Literal["LAUNCH_ROLE", "OWNER"] +ProvisionedProductPlanStatusType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_SUCCESS", + "EXECUTE_FAILED", + "EXECUTE_IN_PROGRESS", + "EXECUTE_SUCCESS",] +ProvisionedProductPlanTypeType = Literal["CLOUDFORMATION"] +ProvisionedProductStatusType = Literal["AVAILABLE", "ERROR", "PLAN_IN_PROGRESS", "TAINTED", "UNDER_CHANGE"] +ProvisionedProductViewFilterByType = Literal["SearchQuery"] +ProvisioningArtifactGuidanceType = Literal["DEFAULT", "DEPRECATED"] +ProvisioningArtifactPropertyNameType = Literal["Id"] +ProvisioningArtifactTypeType = Literal["CLOUD_FORMATION_TEMPLATE", + "EXTERNAL", + "MARKETPLACE_AMI", + "MARKETPLACE_CAR", + "TERRAFORM_CLOUD", + "TERRAFORM_OPEN_SOURCE",] +RecordStatusType = Literal["CREATED", "FAILED", "IN_PROGRESS", "IN_PROGRESS_IN_ERROR", "SUCCEEDED"] +ReplacementType = Literal["CONDITIONAL", "FALSE", "TRUE"] +RequiresRecreationType = Literal["ALWAYS", "CONDITIONALLY", "NEVER"] +ResourceAttributeType = Literal["CREATIONPOLICY", "DELETIONPOLICY", "METADATA", "PROPERTIES", "TAGS", "UPDATEPOLICY"] +ScanProvisionedProductsPaginatorName = Literal["scan_provisioned_products"] +SearchProductsAsAdminPaginatorName = Literal["search_products_as_admin"] +ServiceActionAssociationErrorCodeType = Literal["DUPLICATE_RESOURCE", + "INTERNAL_FAILURE", + "INVALID_PARAMETER", + "LIMIT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "THROTTLING",] +ServiceActionDefinitionKeyType = Literal["AssumeRole", "Name", "Parameters", "Version"] +ServiceActionDefinitionTypeType = Literal["SSM_AUTOMATION"] +ShareStatusType = Literal["COMPLETED", "COMPLETED_WITH_ERRORS", "ERROR", "IN_PROGRESS", "NOT_STARTED"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +SourceTypeType = Literal["CODESTAR"] +StackInstanceStatusType = Literal["CURRENT", "INOPERABLE", "OUTDATED"] +StackSetOperationTypeType = Literal["CREATE", "DELETE", "UPDATE"] +StatusType = Literal["AVAILABLE", "CREATING", "FAILED"] +ServiceCatalogServiceName = Literal["servicecatalog"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_accepted_portfolio_shares", + "list_constraints_for_portfolio", + "list_launch_paths", + "list_organization_portfolio_access", + "list_portfolios", + "list_portfolios_for_product", + "list_principals_for_portfolio", + "list_provisioned_product_plans", + "list_provisioning_artifacts_for_service_action", + "list_record_history", + "list_resources_for_tag_option", + "list_service_actions", + "list_service_actions_for_provisioning_artifact", + "list_tag_options", + "scan_provisioned_products", + "search_products_as_admin",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/servicediscovery_classes.py b/aws_resource_validator/pydantic_models/servicediscovery_classes.py new file mode 100644 index 00000000..f342f613 --- /dev/null +++ b/aws_resource_validator/pydantic_models/servicediscovery_classes.py @@ -0,0 +1,471 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.servicediscovery_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class HealthCheckConfigTypeDef(BaseModel): + Type: HealthCheckTypeType + ResourcePath: Optional[str] = None + FailureThreshold: Optional[int] = None + +class HealthCheckCustomConfigTypeDef(BaseModel): + FailureThreshold: Optional[int] = None + +class DeleteNamespaceRequestRequestTypeDef(BaseModel): + Id: str + +class DeleteServiceRequestRequestTypeDef(BaseModel): + Id: str + +class DeregisterInstanceRequestRequestTypeDef(BaseModel): + ServiceId: str + InstanceId: str + +class DiscoverInstancesRequestRequestTypeDef(BaseModel): + NamespaceName: str + ServiceName: str + MaxResults: Optional[int] = None + QueryParameters: Optional[Mapping[str, str]] = None + OptionalParameters: Optional[Mapping[str, str]] = None + HealthStatus: Optional[HealthStatusFilterType] = None + +class HttpInstanceSummaryTypeDef(BaseModel): + InstanceId: Optional[str] = None + NamespaceName: Optional[str] = None + ServiceName: Optional[str] = None + HealthStatus: Optional[HealthStatusType] = None + Attributes: Optional[Dict[str, str]] = None + +class DiscoverInstancesRevisionRequestRequestTypeDef(BaseModel): + NamespaceName: str + ServiceName: str + +class DnsRecordTypeDef(BaseModel): + Type: RecordTypeType + TTL: int + +class SOATypeDef(BaseModel): + TTL: int + +class GetInstanceRequestRequestTypeDef(BaseModel): + ServiceId: str + InstanceId: str + +class InstanceTypeDef(BaseModel): + Id: str + CreatorRequestId: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + +class GetInstancesHealthStatusRequestRequestTypeDef(BaseModel): + ServiceId: str + Instances: Optional[Sequence[str]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetNamespaceRequestRequestTypeDef(BaseModel): + Id: str + +class GetOperationRequestRequestTypeDef(BaseModel): + OperationId: str + +class OperationTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[OperationTypeType] = None + Status: Optional[OperationStatusType] = None + ErrorMessage: Optional[str] = None + ErrorCode: Optional[str] = None + CreateDate: Optional[datetime] = None + UpdateDate: Optional[datetime] = None + Targets: Optional[Dict[OperationTargetTypeType, str]] = None + +class GetServiceRequestRequestTypeDef(BaseModel): + Id: str + +class HttpNamespaceChangeTypeDef(BaseModel): + Description: str + +class HttpPropertiesTypeDef(BaseModel): + HttpName: Optional[str] = None + +class InstanceSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListInstancesRequestRequestTypeDef(BaseModel): + ServiceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class NamespaceFilterTypeDef(BaseModel): + Name: NamespaceFilterNameType + Values: Sequence[str] + Condition: Optional[FilterConditionType] = None + +class OperationFilterTypeDef(BaseModel): + Name: OperationFilterNameType + Values: Sequence[str] + Condition: Optional[FilterConditionType] = None + +class OperationSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Status: Optional[OperationStatusType] = None + +class ServiceFilterTypeDef(BaseModel): + Name: Literal["NAMESPACE_ID"] + Values: Sequence[str] + Condition: Optional[FilterConditionType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class SOAChangeTypeDef(BaseModel): + TTL: int + +class RegisterInstanceRequestRequestTypeDef(BaseModel): + ServiceId: str + InstanceId: str + Attributes: Mapping[str, str] + CreatorRequestId: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateInstanceCustomHealthStatusRequestRequestTypeDef(BaseModel): + ServiceId: str + InstanceId: str + Status: CustomHealthStatusType + +class CreateHttpNamespaceRequestRequestTypeDef(BaseModel): + Name: str + CreatorRequestId: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateHttpNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePrivateDnsNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePublicDnsNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterInstanceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DiscoverInstancesRevisionResponseTypeDef(BaseModel): + InstancesRevision: int + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetInstancesHealthStatusResponseTypeDef(BaseModel): + Status: Dict[str, HealthStatusType] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterInstanceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHttpNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePrivateDnsNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePublicDnsNamespaceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceResponseTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DiscoverInstancesResponseTypeDef(BaseModel): + Instances: List[HttpInstanceSummaryTypeDef] + InstancesRevision: int + ResponseMetadata: ResponseMetadataTypeDef + +class DnsConfigChangeTypeDef(BaseModel): + DnsRecords: Sequence[DnsRecordTypeDef] + +class DnsConfigPaginatorTypeDef(BaseModel): + DnsRecords: List[DnsRecordTypeDef] + NamespaceId: Optional[str] = None + RoutingPolicy: Optional[RoutingPolicyType] = None + +class DnsConfigTypeDef(BaseModel): + DnsRecords: Sequence[DnsRecordTypeDef] + NamespaceId: Optional[str] = None + RoutingPolicy: Optional[RoutingPolicyType] = None + +class DnsPropertiesTypeDef(BaseModel): + HostedZoneId: Optional[str] = None + SOA: Optional[SOATypeDef] = None + +class PrivateDnsPropertiesMutableTypeDef(BaseModel): + SOA: SOATypeDef + +class PublicDnsPropertiesMutableTypeDef(BaseModel): + SOA: SOATypeDef + +class GetInstanceResponseTypeDef(BaseModel): + Instance: InstanceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetOperationResponseTypeDef(BaseModel): + Operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHttpNamespaceRequestRequestTypeDef(BaseModel): + Id: str + Namespace: HttpNamespaceChangeTypeDef + UpdaterRequestId: Optional[str] = None + +class ListInstancesResponseTypeDef(BaseModel): + Instances: List[InstanceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstancesRequestListInstancesPaginateTypeDef(BaseModel): + ServiceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNamespacesRequestListNamespacesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[NamespaceFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListNamespacesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[NamespaceFilterTypeDef]] = None + +class ListOperationsRequestListOperationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[OperationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOperationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[OperationFilterTypeDef]] = None + +class ListOperationsResponseTypeDef(BaseModel): + Operations: List[OperationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesRequestListServicesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ServiceFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[ServiceFilterTypeDef]] = None + +class PrivateDnsPropertiesMutableChangeTypeDef(BaseModel): + SOA: SOAChangeTypeDef + +class PublicDnsPropertiesMutableChangeTypeDef(BaseModel): + SOA: SOAChangeTypeDef + +class ServiceChangeTypeDef(BaseModel): + Description: Optional[str] = None + DnsConfig: Optional[DnsConfigChangeTypeDef] = None + HealthCheckConfig: Optional[HealthCheckConfigTypeDef] = None + +class ServiceSummaryPaginatorTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ServiceTypeType] = None + Description: Optional[str] = None + InstanceCount: Optional[int] = None + DnsConfig: Optional[DnsConfigPaginatorTypeDef] = None + HealthCheckConfig: Optional[HealthCheckConfigTypeDef] = None + HealthCheckCustomConfig: Optional[HealthCheckCustomConfigTypeDef] = None + CreateDate: Optional[datetime] = None + +class CreateServiceRequestRequestTypeDef(BaseModel): + Name: str + NamespaceId: Optional[str] = None + CreatorRequestId: Optional[str] = None + Description: Optional[str] = None + DnsConfig: Optional[DnsConfigTypeDef] = None + HealthCheckConfig: Optional[HealthCheckConfigTypeDef] = None + HealthCheckCustomConfig: Optional[HealthCheckCustomConfigTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Type: Optional[Literal["HTTP"]] = None + +class ServiceSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ServiceTypeType] = None + Description: Optional[str] = None + InstanceCount: Optional[int] = None + DnsConfig: Optional[DnsConfigTypeDef] = None + HealthCheckConfig: Optional[HealthCheckConfigTypeDef] = None + HealthCheckCustomConfig: Optional[HealthCheckCustomConfigTypeDef] = None + CreateDate: Optional[datetime] = None + +class ServiceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + NamespaceId: Optional[str] = None + Description: Optional[str] = None + InstanceCount: Optional[int] = None + DnsConfig: Optional[DnsConfigTypeDef] = None + Type: Optional[ServiceTypeType] = None + HealthCheckConfig: Optional[HealthCheckConfigTypeDef] = None + HealthCheckCustomConfig: Optional[HealthCheckCustomConfigTypeDef] = None + CreateDate: Optional[datetime] = None + CreatorRequestId: Optional[str] = None + +class NamespacePropertiesTypeDef(BaseModel): + DnsProperties: Optional[DnsPropertiesTypeDef] = None + HttpProperties: Optional[HttpPropertiesTypeDef] = None + +class PrivateDnsNamespacePropertiesTypeDef(BaseModel): + DnsProperties: PrivateDnsPropertiesMutableTypeDef + +class PublicDnsNamespacePropertiesTypeDef(BaseModel): + DnsProperties: PublicDnsPropertiesMutableTypeDef + +class PrivateDnsNamespacePropertiesChangeTypeDef(BaseModel): + DnsProperties: PrivateDnsPropertiesMutableChangeTypeDef + +class PublicDnsNamespacePropertiesChangeTypeDef(BaseModel): + DnsProperties: PublicDnsPropertiesMutableChangeTypeDef + +class UpdateServiceRequestRequestTypeDef(BaseModel): + Id: str + Service: ServiceChangeTypeDef + +class ListServicesResponsePaginatorTypeDef(BaseModel): + Services: List[ServiceSummaryPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesResponseTypeDef(BaseModel): + Services: List[ServiceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceResponseTypeDef(BaseModel): + Service: ServiceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class NamespaceSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[NamespaceTypeType] = None + Description: Optional[str] = None + ServiceCount: Optional[int] = None + Properties: Optional[NamespacePropertiesTypeDef] = None + CreateDate: Optional[datetime] = None + +class NamespaceTypeDef(BaseModel): + Id: Optional[str] = None + Arn: Optional[str] = None + Name: Optional[str] = None + Type: Optional[NamespaceTypeType] = None + Description: Optional[str] = None + ServiceCount: Optional[int] = None + Properties: Optional[NamespacePropertiesTypeDef] = None + CreateDate: Optional[datetime] = None + CreatorRequestId: Optional[str] = None + +class CreatePrivateDnsNamespaceRequestRequestTypeDef(BaseModel): + Name: str + Vpc: str + CreatorRequestId: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Properties: Optional[PrivateDnsNamespacePropertiesTypeDef] = None + +class CreatePublicDnsNamespaceRequestRequestTypeDef(BaseModel): + Name: str + CreatorRequestId: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Properties: Optional[PublicDnsNamespacePropertiesTypeDef] = None + +class PrivateDnsNamespaceChangeTypeDef(BaseModel): + Description: Optional[str] = None + Properties: Optional[PrivateDnsNamespacePropertiesChangeTypeDef] = None + +class PublicDnsNamespaceChangeTypeDef(BaseModel): + Description: Optional[str] = None + Properties: Optional[PublicDnsNamespacePropertiesChangeTypeDef] = None + +class ListNamespacesResponseTypeDef(BaseModel): + Namespaces: List[NamespaceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetNamespaceResponseTypeDef(BaseModel): + Namespace: NamespaceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePrivateDnsNamespaceRequestRequestTypeDef(BaseModel): + Id: str + Namespace: PrivateDnsNamespaceChangeTypeDef + UpdaterRequestId: Optional[str] = None + +class UpdatePublicDnsNamespaceRequestRequestTypeDef(BaseModel): + Id: str + Namespace: PublicDnsNamespaceChangeTypeDef + UpdaterRequestId: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/servicediscovery_constants.py b/aws_resource_validator/pydantic_models/servicediscovery_constants.py new file mode 100644 index 00000000..f73347fe --- /dev/null +++ b/aws_resource_validator/pydantic_models/servicediscovery_constants.py @@ -0,0 +1,452 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CustomHealthStatusType = Literal["HEALTHY", "UNHEALTHY"] +FilterConditionType = Literal["BEGINS_WITH", "BETWEEN", "EQ", "IN"] +HealthCheckTypeType = Literal["HTTP", "HTTPS", "TCP"] +HealthStatusFilterType = Literal["ALL", "HEALTHY", "HEALTHY_OR_ELSE_ALL", "UNHEALTHY"] +HealthStatusType = Literal["HEALTHY", "UNHEALTHY", "UNKNOWN"] +ListInstancesPaginatorName = Literal["list_instances"] +ListNamespacesPaginatorName = Literal["list_namespaces"] +ListOperationsPaginatorName = Literal["list_operations"] +ListServicesPaginatorName = Literal["list_services"] +NamespaceFilterNameType = Literal["HTTP_NAME", "NAME", "TYPE"] +NamespaceTypeType = Literal["DNS_PRIVATE", "DNS_PUBLIC", "HTTP"] +OperationFilterNameType = Literal["NAMESPACE_ID", "SERVICE_ID", "STATUS", "TYPE", "UPDATE_DATE"] +OperationStatusType = Literal["FAIL", "PENDING", "SUBMITTED", "SUCCESS"] +OperationTargetTypeType = Literal["INSTANCE", "NAMESPACE", "SERVICE"] +OperationTypeType = Literal["CREATE_NAMESPACE", + "DELETE_NAMESPACE", + "DEREGISTER_INSTANCE", + "REGISTER_INSTANCE", + "UPDATE_NAMESPACE", + "UPDATE_SERVICE",] +RecordTypeType = Literal["A", "AAAA", "CNAME", "SRV"] +RoutingPolicyType = Literal["MULTIVALUE", "WEIGHTED"] +ServiceFilterNameType = Literal["NAMESPACE_ID"] +ServiceTypeOptionType = Literal["HTTP"] +ServiceTypeType = Literal["DNS", "DNS_HTTP", "HTTP"] +ServiceDiscoveryServiceName = Literal["servicediscovery"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_instances", "list_namespaces", "list_operations", "list_services"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/ses_classes.py b/aws_resource_validator/pydantic_models/ses_classes.py new file mode 100644 index 00000000..2ba256f7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ses_classes.py @@ -0,0 +1,701 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ses_constants import * + +class AddHeaderActionTypeDef(BaseModel): + HeaderName: str + HeaderValue: str + +class ContentTypeDef(BaseModel): + Data: str + Charset: Optional[str] = None + +class BounceActionTypeDef(BaseModel): + SmtpReplyCode: str + Message: str + Sender: str + TopicArn: Optional[str] = None + StatusCode: Optional[str] = None + +class BulkEmailDestinationStatusTypeDef(BaseModel): + Status: Optional[BulkEmailStatusType] = None + Error: Optional[str] = None + MessageId: Optional[str] = None + +class DestinationTypeDef(BaseModel): + ToAddresses: Optional[Sequence[str]] = None + CcAddresses: Optional[Sequence[str]] = None + BccAddresses: Optional[Sequence[str]] = None + +class MessageTagTypeDef(BaseModel): + Name: str + Value: str + +class CloneReceiptRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: str + OriginalRuleSetName: str + +class CloudWatchDimensionConfigurationTypeDef(BaseModel): + DimensionName: str + DimensionValueSource: DimensionValueSourceType + DefaultDimensionValue: str + +class ConfigurationSetTypeDef(BaseModel): + Name: str + +class TrackingOptionsTypeDef(BaseModel): + CustomRedirectDomain: Optional[str] = None + +class CreateCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + FromEmailAddress: str + TemplateSubject: str + TemplateContent: str + SuccessRedirectionURL: str + FailureRedirectionURL: str + +class CreateReceiptRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: str + +class TemplateTypeDef(BaseModel): + TemplateName: str + SubjectPart: Optional[str] = None + TextPart: Optional[str] = None + HtmlPart: Optional[str] = None + +class CustomVerificationEmailTemplateTypeDef(BaseModel): + TemplateName: Optional[str] = None + FromEmailAddress: Optional[str] = None + TemplateSubject: Optional[str] = None + SuccessRedirectionURL: Optional[str] = None + FailureRedirectionURL: Optional[str] = None + +class DeleteConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + +class DeleteConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteConfigurationSetTrackingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class DeleteIdentityPolicyRequestRequestTypeDef(BaseModel): + Identity: str + PolicyName: str + +class DeleteIdentityRequestRequestTypeDef(BaseModel): + Identity: str + +class DeleteReceiptFilterRequestRequestTypeDef(BaseModel): + FilterName: str + +class DeleteReceiptRuleRequestRequestTypeDef(BaseModel): + RuleSetName: str + RuleName: str + +class DeleteReceiptRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: str + +class DeleteTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class DeleteVerifiedEmailAddressRequestRequestTypeDef(BaseModel): + EmailAddress: str + +class DeliveryOptionsTypeDef(BaseModel): + TlsPolicy: Optional[TlsPolicyType] = None + +class ReceiptRuleSetMetadataTypeDef(BaseModel): + Name: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DescribeConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + ConfigurationSetAttributeNames: Optional[Sequence[ConfigurationSetAttributeType]] = None + +class ReputationOptionsTypeDef(BaseModel): + SendingEnabled: Optional[bool] = None + ReputationMetricsEnabled: Optional[bool] = None + LastFreshStart: Optional[datetime] = None + +class DescribeReceiptRuleRequestRequestTypeDef(BaseModel): + RuleSetName: str + RuleName: str + +class DescribeReceiptRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: str + +class KinesisFirehoseDestinationTypeDef(BaseModel): + IAMRoleARN: str + DeliveryStreamARN: str + +class SNSDestinationTypeDef(BaseModel): + TopicARN: str + +class ExtensionFieldTypeDef(BaseModel): + Name: str + Value: str + +class GetCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class GetIdentityDkimAttributesRequestRequestTypeDef(BaseModel): + Identities: Sequence[str] + +class IdentityDkimAttributesTypeDef(BaseModel): + DkimEnabled: bool + DkimVerificationStatus: VerificationStatusType + DkimTokens: Optional[List[str]] = None + +class GetIdentityMailFromDomainAttributesRequestRequestTypeDef(BaseModel): + Identities: Sequence[str] + +class IdentityMailFromDomainAttributesTypeDef(BaseModel): + MailFromDomain: str + MailFromDomainStatus: CustomMailFromStatusType + BehaviorOnMXFailure: BehaviorOnMXFailureType + +class GetIdentityNotificationAttributesRequestRequestTypeDef(BaseModel): + Identities: Sequence[str] + +class IdentityNotificationAttributesTypeDef(BaseModel): + BounceTopic: str + ComplaintTopic: str + DeliveryTopic: str + ForwardingEnabled: bool + HeadersInBounceNotificationsEnabled: Optional[bool] = None + HeadersInComplaintNotificationsEnabled: Optional[bool] = None + HeadersInDeliveryNotificationsEnabled: Optional[bool] = None + +class GetIdentityPoliciesRequestRequestTypeDef(BaseModel): + Identity: str + PolicyNames: Sequence[str] + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetIdentityVerificationAttributesRequestRequestTypeDef(BaseModel): + Identities: Sequence[str] + +class IdentityVerificationAttributesTypeDef(BaseModel): + VerificationStatus: VerificationStatusType + VerificationToken: Optional[str] = None + +class SendDataPointTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + DeliveryAttempts: Optional[int] = None + Bounces: Optional[int] = None + Complaints: Optional[int] = None + Rejects: Optional[int] = None + +class GetTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class LambdaActionTypeDef(BaseModel): + FunctionArn: str + TopicArn: Optional[str] = None + InvocationType: Optional[InvocationTypeType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListConfigurationSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxItems: Optional[int] = None + +class ListCustomVerificationEmailTemplatesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListIdentitiesRequestRequestTypeDef(BaseModel): + IdentityType: Optional[IdentityTypeType] = None + NextToken: Optional[str] = None + MaxItems: Optional[int] = None + +class ListIdentityPoliciesRequestRequestTypeDef(BaseModel): + Identity: str + +class ListReceiptRuleSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListTemplatesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxItems: Optional[int] = None + +class TemplateMetadataTypeDef(BaseModel): + Name: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class PutIdentityPolicyRequestRequestTypeDef(BaseModel): + Identity: str + PolicyName: str + Policy: str + +class S3ActionTypeDef(BaseModel): + BucketName: str + TopicArn: Optional[str] = None + ObjectKeyPrefix: Optional[str] = None + KmsKeyArn: Optional[str] = None + +class SNSActionTypeDef(BaseModel): + TopicArn: str + Encoding: Optional[SNSActionEncodingType] = None + +class StopActionTypeDef(BaseModel): + Scope: Literal["RuleSet"] + TopicArn: Optional[str] = None + +class WorkmailActionTypeDef(BaseModel): + OrganizationArn: str + TopicArn: Optional[str] = None + +class ReceiptIpFilterTypeDef(BaseModel): + Policy: ReceiptFilterPolicyType + Cidr: str + +class ReorderReceiptRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: str + RuleNames: Sequence[str] + +class SendCustomVerificationEmailRequestRequestTypeDef(BaseModel): + EmailAddress: str + TemplateName: str + ConfigurationSetName: Optional[str] = None + +class SetActiveReceiptRuleSetRequestRequestTypeDef(BaseModel): + RuleSetName: Optional[str] = None + +class SetIdentityDkimEnabledRequestRequestTypeDef(BaseModel): + Identity: str + DkimEnabled: bool + +class SetIdentityFeedbackForwardingEnabledRequestRequestTypeDef(BaseModel): + Identity: str + ForwardingEnabled: bool + +class SetIdentityHeadersInNotificationsEnabledRequestRequestTypeDef(BaseModel): + Identity: str + NotificationType: NotificationTypeType + Enabled: bool + +class SetIdentityMailFromDomainRequestRequestTypeDef(BaseModel): + Identity: str + MailFromDomain: Optional[str] = None + BehaviorOnMXFailure: Optional[BehaviorOnMXFailureType] = None + +class SetIdentityNotificationTopicRequestRequestTypeDef(BaseModel): + Identity: str + NotificationType: NotificationTypeType + SnsTopic: Optional[str] = None + +class SetReceiptRulePositionRequestRequestTypeDef(BaseModel): + RuleSetName: str + RuleName: str + After: Optional[str] = None + +class TestRenderTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + TemplateData: str + +class UpdateAccountSendingEnabledRequestRequestTypeDef(BaseModel): + Enabled: Optional[bool] = None + +class UpdateConfigurationSetReputationMetricsEnabledRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + Enabled: bool + +class UpdateConfigurationSetSendingEnabledRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + Enabled: bool + +class UpdateCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + FromEmailAddress: Optional[str] = None + TemplateSubject: Optional[str] = None + TemplateContent: Optional[str] = None + SuccessRedirectionURL: Optional[str] = None + FailureRedirectionURL: Optional[str] = None + +class VerifyDomainDkimRequestRequestTypeDef(BaseModel): + Domain: str + +class VerifyDomainIdentityRequestRequestTypeDef(BaseModel): + Domain: str + +class VerifyEmailAddressRequestRequestTypeDef(BaseModel): + EmailAddress: str + +class VerifyEmailIdentityRequestRequestTypeDef(BaseModel): + EmailAddress: str + +class RawMessageTypeDef(BaseModel): + Data: BlobTypeDef + +class BodyTypeDef(BaseModel): + Text: Optional[ContentTypeDef] = None + Html: Optional[ContentTypeDef] = None + +class BulkEmailDestinationTypeDef(BaseModel): + Destination: DestinationTypeDef + ReplacementTags: Optional[Sequence[MessageTagTypeDef]] = None + ReplacementTemplateData: Optional[str] = None + +class SendTemplatedEmailRequestRequestTypeDef(BaseModel): + Source: str + Destination: DestinationTypeDef + Template: str + TemplateData: str + ReplyToAddresses: Optional[Sequence[str]] = None + ReturnPath: Optional[str] = None + SourceArn: Optional[str] = None + ReturnPathArn: Optional[str] = None + Tags: Optional[Sequence[MessageTagTypeDef]] = None + ConfigurationSetName: Optional[str] = None + TemplateArn: Optional[str] = None + +class CloudWatchDestinationOutputTypeDef(BaseModel): + DimensionConfigurations: List[CloudWatchDimensionConfigurationTypeDef] + +class CloudWatchDestinationTypeDef(BaseModel): + DimensionConfigurations: Sequence[CloudWatchDimensionConfigurationTypeDef] + +class CreateConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSet: ConfigurationSetTypeDef + +class CreateConfigurationSetTrackingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + TrackingOptions: TrackingOptionsTypeDef + +class UpdateConfigurationSetTrackingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + TrackingOptions: TrackingOptionsTypeDef + +class CreateTemplateRequestRequestTypeDef(BaseModel): + Template: TemplateTypeDef + +class UpdateTemplateRequestRequestTypeDef(BaseModel): + Template: TemplateTypeDef + +class PutConfigurationSetDeliveryOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + DeliveryOptions: Optional[DeliveryOptionsTypeDef] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountSendingEnabledResponseTypeDef(BaseModel): + Enabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomVerificationEmailTemplateResponseTypeDef(BaseModel): + TemplateName: str + FromEmailAddress: str + TemplateSubject: str + TemplateContent: str + SuccessRedirectionURL: str + FailureRedirectionURL: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityPoliciesResponseTypeDef(BaseModel): + Policies: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSendQuotaResponseTypeDef(BaseModel): + Max24HourSend: float + MaxSendRate: float + SentLast24Hours: float + ResponseMetadata: ResponseMetadataTypeDef + +class GetTemplateResponseTypeDef(BaseModel): + Template: TemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationSetsResponseTypeDef(BaseModel): + ConfigurationSets: List[ConfigurationSetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCustomVerificationEmailTemplatesResponseTypeDef(BaseModel): + CustomVerificationEmailTemplates: List[CustomVerificationEmailTemplateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIdentitiesResponseTypeDef(BaseModel): + Identities: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListIdentityPoliciesResponseTypeDef(BaseModel): + PolicyNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListReceiptRuleSetsResponseTypeDef(BaseModel): + RuleSets: List[ReceiptRuleSetMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListVerifiedEmailAddressesResponseTypeDef(BaseModel): + VerifiedEmailAddresses: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class SendBounceResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendBulkTemplatedEmailResponseTypeDef(BaseModel): + Status: List[BulkEmailDestinationStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendCustomVerificationEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendRawEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendTemplatedEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestRenderTemplateResponseTypeDef(BaseModel): + RenderedTemplate: str + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyDomainDkimResponseTypeDef(BaseModel): + DkimTokens: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class VerifyDomainIdentityResponseTypeDef(BaseModel): + VerificationToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityDkimAttributesResponseTypeDef(BaseModel): + DkimAttributes: Dict[str, IdentityDkimAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityMailFromDomainAttributesResponseTypeDef(BaseModel): + MailFromDomainAttributes: Dict[str, IdentityMailFromDomainAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityNotificationAttributesResponseTypeDef(BaseModel): + NotificationAttributes: Dict[str, IdentityNotificationAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentityVerificationAttributesRequestIdentityExistsWaitTypeDef(BaseModel): + Identities: Sequence[str] + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetIdentityVerificationAttributesResponseTypeDef(BaseModel): + VerificationAttributes: Dict[str, IdentityVerificationAttributesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSendStatisticsResponseTypeDef(BaseModel): + SendDataPoints: List[SendDataPointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationSetsRequestListConfigurationSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomVerificationEmailTemplatesRequestListCustomVerificationEmailTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIdentitiesRequestListIdentitiesPaginateTypeDef(BaseModel): + IdentityType: Optional[IdentityTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReceiptRuleSetsRequestListReceiptRuleSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplatesRequestListTemplatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTemplatesResponseTypeDef(BaseModel): + TemplatesMetadata: List[TemplateMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MessageDsnTypeDef(BaseModel): + ReportingMta: str + ArrivalDate: Optional[TimestampTypeDef] = None + ExtensionFields: Optional[Sequence[ExtensionFieldTypeDef]] = None + +class RecipientDsnFieldsTypeDef(BaseModel): + Action: DsnActionType + Status: str + FinalRecipient: Optional[str] = None + RemoteMta: Optional[str] = None + DiagnosticCode: Optional[str] = None + LastAttemptDate: Optional[TimestampTypeDef] = None + ExtensionFields: Optional[Sequence[ExtensionFieldTypeDef]] = None + +class ReceiptActionTypeDef(BaseModel): + S3Action: Optional[S3ActionTypeDef] = None + BounceAction: Optional[BounceActionTypeDef] = None + WorkmailAction: Optional[WorkmailActionTypeDef] = None + LambdaAction: Optional[LambdaActionTypeDef] = None + StopAction: Optional[StopActionTypeDef] = None + AddHeaderAction: Optional[AddHeaderActionTypeDef] = None + SNSAction: Optional[SNSActionTypeDef] = None + +class ReceiptFilterTypeDef(BaseModel): + Name: str + IpFilter: ReceiptIpFilterTypeDef + +class SendRawEmailRequestRequestTypeDef(BaseModel): + RawMessage: RawMessageTypeDef + Source: Optional[str] = None + Destinations: Optional[Sequence[str]] = None + FromArn: Optional[str] = None + SourceArn: Optional[str] = None + ReturnPathArn: Optional[str] = None + Tags: Optional[Sequence[MessageTagTypeDef]] = None + ConfigurationSetName: Optional[str] = None + +class MessageTypeDef(BaseModel): + Subject: ContentTypeDef + Body: BodyTypeDef + +class SendBulkTemplatedEmailRequestRequestTypeDef(BaseModel): + Source: str + Template: str + Destinations: Sequence[BulkEmailDestinationTypeDef] + SourceArn: Optional[str] = None + ReplyToAddresses: Optional[Sequence[str]] = None + ReturnPath: Optional[str] = None + ReturnPathArn: Optional[str] = None + ConfigurationSetName: Optional[str] = None + DefaultTags: Optional[Sequence[MessageTagTypeDef]] = None + TemplateArn: Optional[str] = None + DefaultTemplateData: Optional[str] = None + +class EventDestinationOutputTypeDef(BaseModel): + Name: str + MatchingEventTypes: List[EventTypeType] + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + CloudWatchDestination: Optional[CloudWatchDestinationOutputTypeDef] = None + SNSDestination: Optional[SNSDestinationTypeDef] = None + +class EventDestinationTypeDef(BaseModel): + Name: str + MatchingEventTypes: Sequence[EventTypeType] + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + CloudWatchDestination: Optional[CloudWatchDestinationTypeDef] = None + SNSDestination: Optional[SNSDestinationTypeDef] = None + +class BouncedRecipientInfoTypeDef(BaseModel): + Recipient: str + RecipientArn: Optional[str] = None + BounceType: Optional[BounceTypeType] = None + RecipientDsnFields: Optional[RecipientDsnFieldsTypeDef] = None + +class ReceiptRuleOutputTypeDef(BaseModel): + Name: str + Enabled: Optional[bool] = None + TlsPolicy: Optional[TlsPolicyType] = None + Recipients: Optional[List[str]] = None + Actions: Optional[List[ReceiptActionTypeDef]] = None + ScanEnabled: Optional[bool] = None + +class ReceiptRuleTypeDef(BaseModel): + Name: str + Enabled: Optional[bool] = None + TlsPolicy: Optional[TlsPolicyType] = None + Recipients: Optional[Sequence[str]] = None + Actions: Optional[Sequence[ReceiptActionTypeDef]] = None + ScanEnabled: Optional[bool] = None + +class CreateReceiptFilterRequestRequestTypeDef(BaseModel): + Filter: ReceiptFilterTypeDef + +class ListReceiptFiltersResponseTypeDef(BaseModel): + Filters: List[ReceiptFilterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendEmailRequestRequestTypeDef(BaseModel): + Source: str + Destination: DestinationTypeDef + Message: MessageTypeDef + ReplyToAddresses: Optional[Sequence[str]] = None + ReturnPath: Optional[str] = None + SourceArn: Optional[str] = None + ReturnPathArn: Optional[str] = None + Tags: Optional[Sequence[MessageTagTypeDef]] = None + ConfigurationSetName: Optional[str] = None + +class DescribeConfigurationSetResponseTypeDef(BaseModel): + ConfigurationSet: ConfigurationSetTypeDef + EventDestinations: List[EventDestinationOutputTypeDef] + TrackingOptions: TrackingOptionsTypeDef + DeliveryOptions: DeliveryOptionsTypeDef + ReputationOptions: ReputationOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestination: EventDestinationTypeDef + +class UpdateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestination: EventDestinationTypeDef + +class SendBounceRequestRequestTypeDef(BaseModel): + OriginalMessageId: str + BounceSender: str + BouncedRecipientInfoList: Sequence[BouncedRecipientInfoTypeDef] + Explanation: Optional[str] = None + MessageDsn: Optional[MessageDsnTypeDef] = None + BounceSenderArn: Optional[str] = None + +class DescribeActiveReceiptRuleSetResponseTypeDef(BaseModel): + Metadata: ReceiptRuleSetMetadataTypeDef + Rules: List[ReceiptRuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReceiptRuleResponseTypeDef(BaseModel): + Rule: ReceiptRuleOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeReceiptRuleSetResponseTypeDef(BaseModel): + Metadata: ReceiptRuleSetMetadataTypeDef + Rules: List[ReceiptRuleOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReceiptRuleRequestRequestTypeDef(BaseModel): + RuleSetName: str + Rule: ReceiptRuleTypeDef + After: Optional[str] = None + +class UpdateReceiptRuleRequestRequestTypeDef(BaseModel): + RuleSetName: str + Rule: ReceiptRuleTypeDef + diff --git a/aws_resource_validator/pydantic_models/ses_constants.py b/aws_resource_validator/pydantic_models/ses_constants.py new file mode 100644 index 00000000..6705e115 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ses_constants.py @@ -0,0 +1,472 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BehaviorOnMXFailureType = Literal["RejectMessage", "UseDefaultValue"] +BounceTypeType = Literal["ContentRejected", + "DoesNotExist", + "ExceededQuota", + "MessageTooLarge", + "TemporaryFailure", + "Undefined",] +BulkEmailStatusType = Literal["AccountDailyQuotaExceeded", + "AccountSendingPaused", + "AccountSuspended", + "AccountThrottled", + "ConfigurationSetDoesNotExist", + "ConfigurationSetSendingPaused", + "Failed", + "InvalidParameterValue", + "InvalidSendingPoolName", + "MailFromDomainNotVerified", + "MessageRejected", + "Success", + "TemplateDoesNotExist", + "TransientFailure",] +ConfigurationSetAttributeType = Literal["deliveryOptions", "eventDestinations", "reputationOptions", "trackingOptions"] +CustomMailFromStatusType = Literal["Failed", "Pending", "Success", "TemporaryFailure"] +DimensionValueSourceType = Literal["emailHeader", "linkTag", "messageTag"] +DsnActionType = Literal["delayed", "delivered", "expanded", "failed", "relayed"] +EventTypeType = Literal["bounce", "click", "complaint", "delivery", "open", "reject", "renderingFailure", "send"] +IdentityExistsWaiterName = Literal["identity_exists"] +IdentityTypeType = Literal["Domain", "EmailAddress"] +InvocationTypeType = Literal["Event", "RequestResponse"] +ListConfigurationSetsPaginatorName = Literal["list_configuration_sets"] +ListCustomVerificationEmailTemplatesPaginatorName = Literal["list_custom_verification_email_templates"] +ListIdentitiesPaginatorName = Literal["list_identities"] +ListReceiptRuleSetsPaginatorName = Literal["list_receipt_rule_sets"] +ListTemplatesPaginatorName = Literal["list_templates"] +NotificationTypeType = Literal["Bounce", "Complaint", "Delivery"] +ReceiptFilterPolicyType = Literal["Allow", "Block"] +SNSActionEncodingType = Literal["Base64", "UTF-8"] +StopScopeType = Literal["RuleSet"] +TlsPolicyType = Literal["Optional", "Require"] +VerificationStatusType = Literal["Failed", "NotStarted", "Pending", "Success", "TemporaryFailure"] +SESServiceName = Literal["ses"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qapps", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_configuration_sets", + "list_custom_verification_email_templates", + "list_identities", + "list_receipt_rule_sets", + "list_templates",] +WaiterName = Literal["identity_exists"] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +EventDestinationUnionTypeDef = Union['EventDestinationTypeDef', 'EventDestinationOutputTypeDef'] +ReceiptRuleUnionTypeDef = Union['ReceiptRuleTypeDef', 'ReceiptRuleOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/sesv2_classes.py b/aws_resource_validator/pydantic_models/sesv2_classes.py new file mode 100644 index 00000000..fadf2249 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sesv2_classes.py @@ -0,0 +1,1199 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sesv2_constants import * + +class ReviewDetailsTypeDef(BaseModel): + Status: Optional[ReviewStatusType] = None + CaseId: Optional[str] = None + +class MetricDataErrorTypeDef(BaseModel): + Id: Optional[str] = None + Code: Optional[QueryErrorCodeType] = None + Message: Optional[str] = None + +class MetricDataResultTypeDef(BaseModel): + Id: Optional[str] = None + Timestamps: Optional[List[datetime]] = None + Values: Optional[List[int]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BlacklistEntryTypeDef(BaseModel): + RblName: Optional[str] = None + ListingTime: Optional[datetime] = None + Description: Optional[str] = None + +class ContentTypeDef(BaseModel): + Data: str + Charset: Optional[str] = None + +class BounceTypeDef(BaseModel): + BounceType: Optional[BounceTypeType] = None + BounceSubType: Optional[str] = None + DiagnosticCode: Optional[str] = None + +class BulkEmailEntryResultTypeDef(BaseModel): + Status: Optional[BulkEmailStatusType] = None + Error: Optional[str] = None + MessageId: Optional[str] = None + +class DestinationTypeDef(BaseModel): + ToAddresses: Optional[Sequence[str]] = None + CcAddresses: Optional[Sequence[str]] = None + BccAddresses: Optional[Sequence[str]] = None + +class MessageHeaderTypeDef(BaseModel): + Name: str + Value: str + +class MessageTagTypeDef(BaseModel): + Name: str + Value: str + +class CancelExportJobRequestRequestTypeDef(BaseModel): + JobId: str + +class CloudWatchDimensionConfigurationTypeDef(BaseModel): + DimensionName: str + DimensionValueSource: DimensionValueSourceType + DefaultDimensionValue: str + +class ComplaintTypeDef(BaseModel): + ComplaintSubType: Optional[str] = None + ComplaintFeedbackType: Optional[str] = None + +class ContactListDestinationTypeDef(BaseModel): + ContactListName: str + ContactListImportAction: ContactListImportActionType + +class ContactListTypeDef(BaseModel): + ContactListName: Optional[str] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class TopicPreferenceTypeDef(BaseModel): + TopicName: str + SubscriptionStatus: SubscriptionStatusType + +class DeliveryOptionsTypeDef(BaseModel): + TlsPolicy: Optional[TlsPolicyType] = None + SendingPoolName: Optional[str] = None + +class SendingOptionsTypeDef(BaseModel): + SendingEnabled: Optional[bool] = None + +class SuppressionOptionsTypeDef(BaseModel): + SuppressedReasons: Optional[Sequence[SuppressionListReasonType]] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class TrackingOptionsTypeDef(BaseModel): + CustomRedirectDomain: str + +class TopicTypeDef(BaseModel): + TopicName: str + DisplayName: str + DefaultSubscriptionStatus: SubscriptionStatusType + Description: Optional[str] = None + +class CreateCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + FromEmailAddress: str + TemplateSubject: str + TemplateContent: str + SuccessRedirectionURL: str + FailureRedirectionURL: str + +class CreateEmailIdentityPolicyRequestRequestTypeDef(BaseModel): + EmailIdentity: str + PolicyName: str + Policy: str + +class DkimSigningAttributesTypeDef(BaseModel): + DomainSigningSelector: Optional[str] = None + DomainSigningPrivateKey: Optional[str] = None + NextSigningKeyLength: Optional[DkimSigningKeyLengthType] = None + +class DkimAttributesTypeDef(BaseModel): + SigningEnabled: Optional[bool] = None + Status: Optional[DkimStatusType] = None + Tokens: Optional[List[str]] = None + SigningAttributesOrigin: Optional[DkimSigningAttributesOriginType] = None + NextSigningKeyLength: Optional[DkimSigningKeyLengthType] = None + CurrentSigningKeyLength: Optional[DkimSigningKeyLengthType] = None + LastKeyGenerationTimestamp: Optional[datetime] = None + +class EmailTemplateContentTypeDef(BaseModel): + Subject: Optional[str] = None + Text: Optional[str] = None + Html: Optional[str] = None + +class ExportDestinationTypeDef(BaseModel): + DataFormat: DataFormatType + S3Url: Optional[str] = None + +class ImportDataSourceTypeDef(BaseModel): + S3Url: str + DataFormat: DataFormatType + +class CustomVerificationEmailTemplateMetadataTypeDef(BaseModel): + TemplateName: Optional[str] = None + FromEmailAddress: Optional[str] = None + TemplateSubject: Optional[str] = None + SuccessRedirectionURL: Optional[str] = None + FailureRedirectionURL: Optional[str] = None + +class DomainIspPlacementTypeDef(BaseModel): + IspName: Optional[str] = None + InboxRawCount: Optional[int] = None + SpamRawCount: Optional[int] = None + InboxPercentage: Optional[float] = None + SpamPercentage: Optional[float] = None + +class VolumeStatisticsTypeDef(BaseModel): + InboxRawCount: Optional[int] = None + SpamRawCount: Optional[int] = None + ProjectedInbox: Optional[int] = None + ProjectedSpam: Optional[int] = None + +class DashboardAttributesTypeDef(BaseModel): + EngagementMetrics: Optional[FeatureStatusType] = None + +class DashboardOptionsTypeDef(BaseModel): + EngagementMetrics: Optional[FeatureStatusType] = None + +class DedicatedIpPoolTypeDef(BaseModel): + PoolName: str + ScalingMode: ScalingModeType + +class DedicatedIpTypeDef(BaseModel): + Ip: str + WarmupStatus: WarmupStatusType + WarmupPercentage: int + PoolName: Optional[str] = None + +class DeleteConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + +class DeleteConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class DeleteContactListRequestRequestTypeDef(BaseModel): + ContactListName: str + +class DeleteContactRequestRequestTypeDef(BaseModel): + ContactListName: str + EmailAddress: str + +class DeleteCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class DeleteDedicatedIpPoolRequestRequestTypeDef(BaseModel): + PoolName: str + +class DeleteEmailIdentityPolicyRequestRequestTypeDef(BaseModel): + EmailIdentity: str + PolicyName: str + +class DeleteEmailIdentityRequestRequestTypeDef(BaseModel): + EmailIdentity: str + +class DeleteEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class DeleteSuppressedDestinationRequestRequestTypeDef(BaseModel): + EmailAddress: str + +class DeliverabilityTestReportTypeDef(BaseModel): + ReportId: Optional[str] = None + ReportName: Optional[str] = None + Subject: Optional[str] = None + FromEmailAddress: Optional[str] = None + CreateDate: Optional[datetime] = None + DeliverabilityTestStatus: Optional[DeliverabilityTestStatusType] = None + +class DomainDeliverabilityCampaignTypeDef(BaseModel): + CampaignId: Optional[str] = None + ImageUrl: Optional[str] = None + Subject: Optional[str] = None + FromAddress: Optional[str] = None + SendingIps: Optional[List[str]] = None + FirstSeenDateTime: Optional[datetime] = None + LastSeenDateTime: Optional[datetime] = None + InboxCount: Optional[int] = None + SpamCount: Optional[int] = None + ReadRate: Optional[float] = None + DeleteRate: Optional[float] = None + ReadDeleteRate: Optional[float] = None + ProjectedVolume: Optional[int] = None + Esps: Optional[List[str]] = None + +class InboxPlacementTrackingOptionOutputTypeDef(BaseModel): + Global: Optional[bool] = None + TrackedIsps: Optional[List[str]] = None + +class InboxPlacementTrackingOptionTypeDef(BaseModel): + Global: Optional[bool] = None + TrackedIsps: Optional[Sequence[str]] = None + +class EmailTemplateMetadataTypeDef(BaseModel): + TemplateName: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + +class EventBridgeDestinationTypeDef(BaseModel): + EventBusArn: str + +class KinesisFirehoseDestinationTypeDef(BaseModel): + IamRoleArn: str + DeliveryStreamArn: str + +class PinpointDestinationTypeDef(BaseModel): + ApplicationArn: Optional[str] = None + +class SnsDestinationTypeDef(BaseModel): + TopicArn: str + +class ExportJobSummaryTypeDef(BaseModel): + JobId: Optional[str] = None + ExportSourceType: Optional[ExportSourceTypeType] = None + JobStatus: Optional[JobStatusType] = None + CreatedTimestamp: Optional[datetime] = None + CompletedTimestamp: Optional[datetime] = None + +class ExportMetricTypeDef(BaseModel): + Name: Optional[MetricType] = None + Aggregation: Optional[MetricAggregationType] = None + +class ExportStatisticsTypeDef(BaseModel): + ProcessedRecordsCount: Optional[int] = None + ExportedRecordsCount: Optional[int] = None + +class FailureInfoTypeDef(BaseModel): + FailedRecordsS3Url: Optional[str] = None + ErrorMessage: Optional[str] = None + +class SendQuotaTypeDef(BaseModel): + Max24HourSend: Optional[float] = None + MaxSendRate: Optional[float] = None + SentLast24Hours: Optional[float] = None + +class SuppressionAttributesTypeDef(BaseModel): + SuppressedReasons: Optional[List[SuppressionListReasonType]] = None + +class GetBlacklistReportsRequestRequestTypeDef(BaseModel): + BlacklistItemNames: Sequence[str] + +class GetConfigurationSetEventDestinationsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class GetConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class ReputationOptionsOutputTypeDef(BaseModel): + ReputationMetricsEnabled: Optional[bool] = None + LastFreshStart: Optional[datetime] = None + +class SuppressionOptionsOutputTypeDef(BaseModel): + SuppressedReasons: Optional[List[SuppressionListReasonType]] = None + +class GetContactListRequestRequestTypeDef(BaseModel): + ContactListName: str + +class GetContactRequestRequestTypeDef(BaseModel): + ContactListName: str + EmailAddress: str + +class GetCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class GetDedicatedIpPoolRequestRequestTypeDef(BaseModel): + PoolName: str + +class GetDedicatedIpRequestRequestTypeDef(BaseModel): + Ip: str + +class GetDedicatedIpsRequestRequestTypeDef(BaseModel): + PoolName: Optional[str] = None + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class GetDeliverabilityTestReportRequestRequestTypeDef(BaseModel): + ReportId: str + +class PlacementStatisticsTypeDef(BaseModel): + InboxPercentage: Optional[float] = None + SpamPercentage: Optional[float] = None + MissingPercentage: Optional[float] = None + SpfPercentage: Optional[float] = None + DkimPercentage: Optional[float] = None + +class GetDomainDeliverabilityCampaignRequestRequestTypeDef(BaseModel): + CampaignId: str + +class GetEmailIdentityPoliciesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + +class GetEmailIdentityRequestRequestTypeDef(BaseModel): + EmailIdentity: str + +class MailFromAttributesTypeDef(BaseModel): + MailFromDomain: str + MailFromDomainStatus: MailFromDomainStatusType + BehaviorOnMxFailure: BehaviorOnMxFailureType + +class GetEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + +class GetExportJobRequestRequestTypeDef(BaseModel): + JobId: str + +class GetImportJobRequestRequestTypeDef(BaseModel): + JobId: str + +class GetMessageInsightsRequestRequestTypeDef(BaseModel): + MessageId: str + +class GetSuppressedDestinationRequestRequestTypeDef(BaseModel): + EmailAddress: str + +class GuardianAttributesTypeDef(BaseModel): + OptimizedSharedDelivery: Optional[FeatureStatusType] = None + +class GuardianOptionsTypeDef(BaseModel): + OptimizedSharedDelivery: Optional[FeatureStatusType] = None + +class IdentityInfoTypeDef(BaseModel): + IdentityType: Optional[IdentityTypeType] = None + IdentityName: Optional[str] = None + SendingEnabled: Optional[bool] = None + VerificationStatus: Optional[VerificationStatusType] = None + +class SuppressionListDestinationTypeDef(BaseModel): + SuppressionListImportAction: SuppressionListImportActionType + +class ListConfigurationSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListContactListsRequestRequestTypeDef(BaseModel): + PageSize: Optional[int] = None + NextToken: Optional[str] = None + +class TopicFilterTypeDef(BaseModel): + TopicName: Optional[str] = None + UseDefaultIfPreferenceUnavailable: Optional[bool] = None + +class ListCustomVerificationEmailTemplatesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListDedicatedIpPoolsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListDeliverabilityTestReportsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListEmailIdentitiesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListEmailTemplatesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListExportJobsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[int] = None + ExportSourceType: Optional[ExportSourceTypeType] = None + JobStatus: Optional[JobStatusType] = None + +class ListImportJobsRequestRequestTypeDef(BaseModel): + ImportDestinationType: Optional[ImportDestinationTypeType] = None + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListManagementOptionsTypeDef(BaseModel): + ContactListName: str + TopicName: Optional[str] = None + +class ListRecommendationsRequestRequestTypeDef(BaseModel): + Filter: Optional[Mapping[ListRecommendationsFilterKeyType, str]] = None + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class RecommendationTypeDef(BaseModel): + ResourceArn: Optional[str] = None + Type: Optional[RecommendationTypeType] = None + Description: Optional[str] = None + Status: Optional[RecommendationStatusType] = None + CreatedTimestamp: Optional[datetime] = None + LastUpdatedTimestamp: Optional[datetime] = None + Impact: Optional[RecommendationImpactType] = None + +class SuppressedDestinationSummaryTypeDef(BaseModel): + EmailAddress: str + Reason: SuppressionListReasonType + LastUpdateTime: datetime + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class MessageInsightsFiltersOutputTypeDef(BaseModel): + FromEmailAddress: Optional[List[str]] = None + Destination: Optional[List[str]] = None + Subject: Optional[List[str]] = None + Isp: Optional[List[str]] = None + LastDeliveryEvent: Optional[List[DeliveryEventTypeType]] = None + LastEngagementEvent: Optional[List[EngagementEventTypeType]] = None + +class MessageInsightsFiltersTypeDef(BaseModel): + FromEmailAddress: Optional[Sequence[str]] = None + Destination: Optional[Sequence[str]] = None + Subject: Optional[Sequence[str]] = None + Isp: Optional[Sequence[str]] = None + LastDeliveryEvent: Optional[Sequence[DeliveryEventTypeType]] = None + LastEngagementEvent: Optional[Sequence[EngagementEventTypeType]] = None + +class PutAccountDedicatedIpWarmupAttributesRequestRequestTypeDef(BaseModel): + AutoWarmupEnabled: Optional[bool] = None + +class PutAccountDetailsRequestRequestTypeDef(BaseModel): + MailType: MailTypeType + WebsiteURL: str + UseCaseDescription: str + ContactLanguage: Optional[ContactLanguageType] = None + AdditionalContactEmailAddresses: Optional[Sequence[str]] = None + ProductionAccessEnabled: Optional[bool] = None + +class PutAccountSendingAttributesRequestRequestTypeDef(BaseModel): + SendingEnabled: Optional[bool] = None + +class PutAccountSuppressionAttributesRequestRequestTypeDef(BaseModel): + SuppressedReasons: Optional[Sequence[SuppressionListReasonType]] = None + +class PutConfigurationSetDeliveryOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + TlsPolicy: Optional[TlsPolicyType] = None + SendingPoolName: Optional[str] = None + +class PutConfigurationSetReputationOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + ReputationMetricsEnabled: Optional[bool] = None + +class PutConfigurationSetSendingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + SendingEnabled: Optional[bool] = None + +class PutConfigurationSetSuppressionOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + SuppressedReasons: Optional[Sequence[SuppressionListReasonType]] = None + +class PutConfigurationSetTrackingOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + CustomRedirectDomain: Optional[str] = None + +class PutDedicatedIpInPoolRequestRequestTypeDef(BaseModel): + Ip: str + DestinationPoolName: str + +class PutDedicatedIpPoolScalingAttributesRequestRequestTypeDef(BaseModel): + PoolName: str + ScalingMode: ScalingModeType + +class PutDedicatedIpWarmupAttributesRequestRequestTypeDef(BaseModel): + Ip: str + WarmupPercentage: int + +class PutEmailIdentityConfigurationSetAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + ConfigurationSetName: Optional[str] = None + +class PutEmailIdentityDkimAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + SigningEnabled: Optional[bool] = None + +class PutEmailIdentityFeedbackAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + EmailForwardingEnabled: Optional[bool] = None + +class PutEmailIdentityMailFromAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + MailFromDomain: Optional[str] = None + BehaviorOnMxFailure: Optional[BehaviorOnMxFailureType] = None + +class PutSuppressedDestinationRequestRequestTypeDef(BaseModel): + EmailAddress: str + Reason: SuppressionListReasonType + +class ReplacementTemplateTypeDef(BaseModel): + ReplacementTemplateData: Optional[str] = None + +class SOARecordTypeDef(BaseModel): + PrimaryNameServer: Optional[str] = None + AdminEmail: Optional[str] = None + SerialNumber: Optional[int] = None + +class SendCustomVerificationEmailRequestRequestTypeDef(BaseModel): + EmailAddress: str + TemplateName: str + ConfigurationSetName: Optional[str] = None + +class SuppressedDestinationAttributesTypeDef(BaseModel): + MessageId: Optional[str] = None + FeedbackId: Optional[str] = None + +class TestRenderEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + TemplateData: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateCustomVerificationEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + FromEmailAddress: str + TemplateSubject: str + TemplateContent: str + SuccessRedirectionURL: str + FailureRedirectionURL: str + +class UpdateEmailIdentityPolicyRequestRequestTypeDef(BaseModel): + EmailIdentity: str + PolicyName: str + Policy: str + +class AccountDetailsTypeDef(BaseModel): + MailType: Optional[MailTypeType] = None + WebsiteURL: Optional[str] = None + ContactLanguage: Optional[ContactLanguageType] = None + UseCaseDescription: Optional[str] = None + AdditionalContactEmailAddresses: Optional[List[str]] = None + ReviewDetails: Optional[ReviewDetailsTypeDef] = None + +class BatchGetMetricDataQueryTypeDef(BaseModel): + Id: str + Namespace: Literal["VDM"] + Metric: MetricType + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + Dimensions: Optional[Mapping[MetricDimensionNameType, str]] = None + +class GetDomainStatisticsReportRequestRequestTypeDef(BaseModel): + Domain: str + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + +class ListDomainDeliverabilityCampaignsRequestRequestTypeDef(BaseModel): + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + SubscribedDomain: str + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ListSuppressedDestinationsRequestRequestTypeDef(BaseModel): + Reasons: Optional[Sequence[SuppressionListReasonType]] = None + StartDate: Optional[TimestampTypeDef] = None + EndDate: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + PageSize: Optional[int] = None + +class ReputationOptionsTypeDef(BaseModel): + ReputationMetricsEnabled: Optional[bool] = None + LastFreshStart: Optional[TimestampTypeDef] = None + +class BatchGetMetricDataResponseTypeDef(BaseModel): + Results: List[MetricDataResultTypeDef] + Errors: List[MetricDataErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDeliverabilityTestReportResponseTypeDef(BaseModel): + ReportId: str + DeliverabilityTestStatus: DeliverabilityTestStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExportJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImportJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCustomVerificationEmailTemplateResponseTypeDef(BaseModel): + TemplateName: str + FromEmailAddress: str + TemplateSubject: str + TemplateContent: str + SuccessRedirectionURL: str + FailureRedirectionURL: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEmailIdentityPoliciesResponseTypeDef(BaseModel): + Policies: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListConfigurationSetsResponseTypeDef(BaseModel): + ConfigurationSets: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDedicatedIpPoolsResponseTypeDef(BaseModel): + DedicatedIpPools: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PutEmailIdentityDkimSigningAttributesResponseTypeDef(BaseModel): + DkimStatus: DkimStatusType + DkimTokens: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class SendCustomVerificationEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendEmailResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestRenderEmailTemplateResponseTypeDef(BaseModel): + RenderedTemplate: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBlacklistReportsResponseTypeDef(BaseModel): + BlacklistReport: Dict[str, List[BlacklistEntryTypeDef]] + ResponseMetadata: ResponseMetadataTypeDef + +class RawMessageTypeDef(BaseModel): + Data: BlobTypeDef + +class BodyTypeDef(BaseModel): + Text: Optional[ContentTypeDef] = None + Html: Optional[ContentTypeDef] = None + +class SendBulkEmailResponseTypeDef(BaseModel): + BulkEmailEntryResults: List[BulkEmailEntryResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TemplateTypeDef(BaseModel): + TemplateName: Optional[str] = None + TemplateArn: Optional[str] = None + TemplateData: Optional[str] = None + Headers: Optional[Sequence[MessageHeaderTypeDef]] = None + +class CloudWatchDestinationOutputTypeDef(BaseModel): + DimensionConfigurations: List[CloudWatchDimensionConfigurationTypeDef] + +class CloudWatchDestinationTypeDef(BaseModel): + DimensionConfigurations: Sequence[CloudWatchDimensionConfigurationTypeDef] + +class EventDetailsTypeDef(BaseModel): + Bounce: Optional[BounceTypeDef] = None + Complaint: Optional[ComplaintTypeDef] = None + +class ListContactListsResponseTypeDef(BaseModel): + ContactLists: List[ContactListTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ContactTypeDef(BaseModel): + EmailAddress: Optional[str] = None + TopicPreferences: Optional[List[TopicPreferenceTypeDef]] = None + TopicDefaultPreferences: Optional[List[TopicPreferenceTypeDef]] = None + UnsubscribeAll: Optional[bool] = None + LastUpdatedTimestamp: Optional[datetime] = None + +class CreateContactRequestRequestTypeDef(BaseModel): + ContactListName: str + EmailAddress: str + TopicPreferences: Optional[Sequence[TopicPreferenceTypeDef]] = None + UnsubscribeAll: Optional[bool] = None + AttributesData: Optional[str] = None + +class GetContactResponseTypeDef(BaseModel): + ContactListName: str + EmailAddress: str + TopicPreferences: List[TopicPreferenceTypeDef] + TopicDefaultPreferences: List[TopicPreferenceTypeDef] + UnsubscribeAll: bool + AttributesData: str + CreatedTimestamp: datetime + LastUpdatedTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContactRequestRequestTypeDef(BaseModel): + ContactListName: str + EmailAddress: str + TopicPreferences: Optional[Sequence[TopicPreferenceTypeDef]] = None + UnsubscribeAll: Optional[bool] = None + AttributesData: Optional[str] = None + +class CreateDedicatedIpPoolRequestRequestTypeDef(BaseModel): + PoolName: str + Tags: Optional[Sequence[TagTypeDef]] = None + ScalingMode: Optional[ScalingModeType] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateContactListRequestRequestTypeDef(BaseModel): + ContactListName: str + Topics: Optional[Sequence[TopicTypeDef]] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetContactListResponseTypeDef(BaseModel): + ContactListName: str + Topics: List[TopicTypeDef] + Description: str + CreatedTimestamp: datetime + LastUpdatedTimestamp: datetime + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContactListRequestRequestTypeDef(BaseModel): + ContactListName: str + Topics: Optional[Sequence[TopicTypeDef]] = None + Description: Optional[str] = None + +class CreateEmailIdentityRequestRequestTypeDef(BaseModel): + EmailIdentity: str + Tags: Optional[Sequence[TagTypeDef]] = None + DkimSigningAttributes: Optional[DkimSigningAttributesTypeDef] = None + ConfigurationSetName: Optional[str] = None + +class PutEmailIdentityDkimSigningAttributesRequestRequestTypeDef(BaseModel): + EmailIdentity: str + SigningAttributesOrigin: DkimSigningAttributesOriginType + SigningAttributes: Optional[DkimSigningAttributesTypeDef] = None + +class CreateEmailIdentityResponseTypeDef(BaseModel): + IdentityType: IdentityTypeType + VerifiedForSendingStatus: bool + DkimAttributes: DkimAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + TemplateContent: EmailTemplateContentTypeDef + +class GetEmailTemplateResponseTypeDef(BaseModel): + TemplateName: str + TemplateContent: EmailTemplateContentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEmailTemplateRequestRequestTypeDef(BaseModel): + TemplateName: str + TemplateContent: EmailTemplateContentTypeDef + +class ListCustomVerificationEmailTemplatesResponseTypeDef(BaseModel): + CustomVerificationEmailTemplates: List[CustomVerificationEmailTemplateMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DailyVolumeTypeDef(BaseModel): + StartDate: Optional[datetime] = None + VolumeStatistics: Optional[VolumeStatisticsTypeDef] = None + DomainIspPlacements: Optional[List[DomainIspPlacementTypeDef]] = None + +class OverallVolumeTypeDef(BaseModel): + VolumeStatistics: Optional[VolumeStatisticsTypeDef] = None + ReadRatePercent: Optional[float] = None + DomainIspPlacements: Optional[List[DomainIspPlacementTypeDef]] = None + +class GetDedicatedIpPoolResponseTypeDef(BaseModel): + DedicatedIpPool: DedicatedIpPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDedicatedIpResponseTypeDef(BaseModel): + DedicatedIp: DedicatedIpTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDedicatedIpsResponseTypeDef(BaseModel): + DedicatedIps: List[DedicatedIpTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDeliverabilityTestReportsResponseTypeDef(BaseModel): + DeliverabilityTestReports: List[DeliverabilityTestReportTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDomainDeliverabilityCampaignResponseTypeDef(BaseModel): + DomainDeliverabilityCampaign: DomainDeliverabilityCampaignTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainDeliverabilityCampaignsResponseTypeDef(BaseModel): + DomainDeliverabilityCampaigns: List[DomainDeliverabilityCampaignTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DomainDeliverabilityTrackingOptionOutputTypeDef(BaseModel): + Domain: Optional[str] = None + SubscriptionStartDate: Optional[datetime] = None + InboxPlacementTrackingOption: Optional[InboxPlacementTrackingOptionOutputTypeDef] = None + +class DomainDeliverabilityTrackingOptionTypeDef(BaseModel): + Domain: Optional[str] = None + SubscriptionStartDate: Optional[TimestampTypeDef] = None + InboxPlacementTrackingOption: Optional[InboxPlacementTrackingOptionTypeDef] = None + +class ListEmailTemplatesResponseTypeDef(BaseModel): + TemplatesMetadata: List[EmailTemplateMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListExportJobsResponseTypeDef(BaseModel): + ExportJobs: List[ExportJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MetricsDataSourceOutputTypeDef(BaseModel): + Dimensions: Dict[MetricDimensionNameType, List[str]] + Namespace: Literal["VDM"] + Metrics: List[ExportMetricTypeDef] + StartDate: datetime + EndDate: datetime + +class MetricsDataSourceTypeDef(BaseModel): + Dimensions: Mapping[MetricDimensionNameType, Sequence[str]] + Namespace: Literal["VDM"] + Metrics: Sequence[ExportMetricTypeDef] + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + +class IspPlacementTypeDef(BaseModel): + IspName: Optional[str] = None + PlacementStatistics: Optional[PlacementStatisticsTypeDef] = None + +class VdmAttributesTypeDef(BaseModel): + VdmEnabled: FeatureStatusType + DashboardAttributes: Optional[DashboardAttributesTypeDef] = None + GuardianAttributes: Optional[GuardianAttributesTypeDef] = None + +class VdmOptionsTypeDef(BaseModel): + DashboardOptions: Optional[DashboardOptionsTypeDef] = None + GuardianOptions: Optional[GuardianOptionsTypeDef] = None + +class ListEmailIdentitiesResponseTypeDef(BaseModel): + EmailIdentities: List[IdentityInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ImportDestinationTypeDef(BaseModel): + SuppressionListDestination: Optional[SuppressionListDestinationTypeDef] = None + ContactListDestination: Optional[ContactListDestinationTypeDef] = None + +class ListContactsFilterTypeDef(BaseModel): + FilteredStatus: Optional[SubscriptionStatusType] = None + TopicFilter: Optional[TopicFilterTypeDef] = None + +class ListRecommendationsResponseTypeDef(BaseModel): + Recommendations: List[RecommendationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSuppressedDestinationsResponseTypeDef(BaseModel): + SuppressedDestinationSummaries: List[SuppressedDestinationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MessageInsightsDataSourceOutputTypeDef(BaseModel): + StartDate: datetime + EndDate: datetime + Include: Optional[MessageInsightsFiltersOutputTypeDef] = None + Exclude: Optional[MessageInsightsFiltersOutputTypeDef] = None + MaxResults: Optional[int] = None + +class MessageInsightsDataSourceTypeDef(BaseModel): + StartDate: TimestampTypeDef + EndDate: TimestampTypeDef + Include: Optional[MessageInsightsFiltersTypeDef] = None + Exclude: Optional[MessageInsightsFiltersTypeDef] = None + MaxResults: Optional[int] = None + +class ReplacementEmailContentTypeDef(BaseModel): + ReplacementTemplate: Optional[ReplacementTemplateTypeDef] = None + +class VerificationInfoTypeDef(BaseModel): + LastCheckedTimestamp: Optional[datetime] = None + LastSuccessTimestamp: Optional[datetime] = None + ErrorType: Optional[VerificationErrorType] = None + SOARecord: Optional[SOARecordTypeDef] = None + +class SuppressedDestinationTypeDef(BaseModel): + EmailAddress: str + Reason: SuppressionListReasonType + LastUpdateTime: datetime + Attributes: Optional[SuppressedDestinationAttributesTypeDef] = None + +class BatchGetMetricDataRequestRequestTypeDef(BaseModel): + Queries: Sequence[BatchGetMetricDataQueryTypeDef] + +class MessageTypeDef(BaseModel): + Subject: ContentTypeDef + Body: BodyTypeDef + Headers: Optional[Sequence[MessageHeaderTypeDef]] = None + +class BulkEmailContentTypeDef(BaseModel): + Template: Optional[TemplateTypeDef] = None + +class EventDestinationTypeDef(BaseModel): + Name: str + MatchingEventTypes: List[EventTypeType] + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + CloudWatchDestination: Optional[CloudWatchDestinationOutputTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + EventBridgeDestination: Optional[EventBridgeDestinationTypeDef] = None + PinpointDestination: Optional[PinpointDestinationTypeDef] = None + +class EventDestinationDefinitionTypeDef(BaseModel): + Enabled: Optional[bool] = None + MatchingEventTypes: Optional[Sequence[EventTypeType]] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + CloudWatchDestination: Optional[CloudWatchDestinationTypeDef] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + EventBridgeDestination: Optional[EventBridgeDestinationTypeDef] = None + PinpointDestination: Optional[PinpointDestinationTypeDef] = None + +class InsightsEventTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + Type: Optional[EventTypeType] = None + Details: Optional[EventDetailsTypeDef] = None + +class ListContactsResponseTypeDef(BaseModel): + Contacts: List[ContactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetDomainStatisticsReportResponseTypeDef(BaseModel): + OverallVolume: OverallVolumeTypeDef + DailyVolumes: List[DailyVolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliverabilityDashboardOptionsResponseTypeDef(BaseModel): + DashboardEnabled: bool + SubscriptionExpiryDate: datetime + AccountStatus: DeliverabilityDashboardAccountStatusType + ActiveSubscribedDomains: List[DomainDeliverabilityTrackingOptionOutputTypeDef] + PendingExpirationSubscribedDomains: List[DomainDeliverabilityTrackingOptionOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeliverabilityTestReportResponseTypeDef(BaseModel): + DeliverabilityTestReport: DeliverabilityTestReportTypeDef + OverallPlacement: PlacementStatisticsTypeDef + IspPlacements: List[IspPlacementTypeDef] + Message: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountResponseTypeDef(BaseModel): + DedicatedIpAutoWarmupEnabled: bool + EnforcementStatus: str + ProductionAccessEnabled: bool + SendQuota: SendQuotaTypeDef + SendingEnabled: bool + SuppressionAttributes: SuppressionAttributesTypeDef + Details: AccountDetailsTypeDef + VdmAttributes: VdmAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutAccountVdmAttributesRequestRequestTypeDef(BaseModel): + VdmAttributes: VdmAttributesTypeDef + +class CreateConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + TrackingOptions: Optional[TrackingOptionsTypeDef] = None + DeliveryOptions: Optional[DeliveryOptionsTypeDef] = None + ReputationOptions: Optional[ReputationOptionsTypeDef] = None + SendingOptions: Optional[SendingOptionsTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SuppressionOptions: Optional[SuppressionOptionsTypeDef] = None + VdmOptions: Optional[VdmOptionsTypeDef] = None + +class GetConfigurationSetResponseTypeDef(BaseModel): + ConfigurationSetName: str + TrackingOptions: TrackingOptionsTypeDef + DeliveryOptions: DeliveryOptionsTypeDef + ReputationOptions: ReputationOptionsOutputTypeDef + SendingOptions: SendingOptionsTypeDef + Tags: List[TagTypeDef] + SuppressionOptions: SuppressionOptionsOutputTypeDef + VdmOptions: VdmOptionsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutConfigurationSetVdmOptionsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + VdmOptions: Optional[VdmOptionsTypeDef] = None + +class CreateImportJobRequestRequestTypeDef(BaseModel): + ImportDestination: ImportDestinationTypeDef + ImportDataSource: ImportDataSourceTypeDef + +class GetImportJobResponseTypeDef(BaseModel): + JobId: str + ImportDestination: ImportDestinationTypeDef + ImportDataSource: ImportDataSourceTypeDef + FailureInfo: FailureInfoTypeDef + JobStatus: JobStatusType + CreatedTimestamp: datetime + CompletedTimestamp: datetime + ProcessedRecordsCount: int + FailedRecordsCount: int + ResponseMetadata: ResponseMetadataTypeDef + +class ImportJobSummaryTypeDef(BaseModel): + JobId: Optional[str] = None + ImportDestination: Optional[ImportDestinationTypeDef] = None + JobStatus: Optional[JobStatusType] = None + CreatedTimestamp: Optional[datetime] = None + ProcessedRecordsCount: Optional[int] = None + FailedRecordsCount: Optional[int] = None + +class ListContactsRequestRequestTypeDef(BaseModel): + ContactListName: str + Filter: Optional[ListContactsFilterTypeDef] = None + PageSize: Optional[int] = None + NextToken: Optional[str] = None + +class ExportDataSourceOutputTypeDef(BaseModel): + MetricsDataSource: Optional[MetricsDataSourceOutputTypeDef] = None + MessageInsightsDataSource: Optional[MessageInsightsDataSourceOutputTypeDef] = None + +class ExportDataSourceTypeDef(BaseModel): + MetricsDataSource: Optional[MetricsDataSourceTypeDef] = None + MessageInsightsDataSource: Optional[MessageInsightsDataSourceTypeDef] = None + +class BulkEmailEntryTypeDef(BaseModel): + Destination: DestinationTypeDef + ReplacementTags: Optional[Sequence[MessageTagTypeDef]] = None + ReplacementEmailContent: Optional[ReplacementEmailContentTypeDef] = None + ReplacementHeaders: Optional[Sequence[MessageHeaderTypeDef]] = None + +class GetEmailIdentityResponseTypeDef(BaseModel): + IdentityType: IdentityTypeType + FeedbackForwardingStatus: bool + VerifiedForSendingStatus: bool + DkimAttributes: DkimAttributesTypeDef + MailFromAttributes: MailFromAttributesTypeDef + Policies: Dict[str, str] + Tags: List[TagTypeDef] + ConfigurationSetName: str + VerificationStatus: VerificationStatusType + VerificationInfo: VerificationInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSuppressedDestinationResponseTypeDef(BaseModel): + SuppressedDestination: SuppressedDestinationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmailContentTypeDef(BaseModel): + Simple: Optional[MessageTypeDef] = None + Raw: Optional[RawMessageTypeDef] = None + Template: Optional[TemplateTypeDef] = None + +class GetConfigurationSetEventDestinationsResponseTypeDef(BaseModel): + EventDestinations: List[EventDestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + EventDestination: EventDestinationDefinitionTypeDef + +class UpdateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + EventDestination: EventDestinationDefinitionTypeDef + +class EmailInsightsTypeDef(BaseModel): + Destination: Optional[str] = None + Isp: Optional[str] = None + Events: Optional[List[InsightsEventTypeDef]] = None + +class PutDeliverabilityDashboardOptionRequestRequestTypeDef(BaseModel): + DashboardEnabled: bool + SubscribedDomains: Optional[Sequence[DomainDeliverabilityTrackingOptionUnionTypeDef]] = None + +class ListImportJobsResponseTypeDef(BaseModel): + ImportJobs: List[ImportJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetExportJobResponseTypeDef(BaseModel): + JobId: str + ExportSourceType: ExportSourceTypeType + JobStatus: JobStatusType + ExportDestination: ExportDestinationTypeDef + ExportDataSource: ExportDataSourceOutputTypeDef + CreatedTimestamp: datetime + CompletedTimestamp: datetime + FailureInfo: FailureInfoTypeDef + Statistics: ExportStatisticsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateExportJobRequestRequestTypeDef(BaseModel): + ExportDataSource: ExportDataSourceTypeDef + ExportDestination: ExportDestinationTypeDef + +class SendBulkEmailRequestRequestTypeDef(BaseModel): + DefaultContent: BulkEmailContentTypeDef + BulkEmailEntries: Sequence[BulkEmailEntryTypeDef] + FromEmailAddress: Optional[str] = None + FromEmailAddressIdentityArn: Optional[str] = None + ReplyToAddresses: Optional[Sequence[str]] = None + FeedbackForwardingEmailAddress: Optional[str] = None + FeedbackForwardingEmailAddressIdentityArn: Optional[str] = None + DefaultEmailTags: Optional[Sequence[MessageTagTypeDef]] = None + ConfigurationSetName: Optional[str] = None + +class CreateDeliverabilityTestReportRequestRequestTypeDef(BaseModel): + FromEmailAddress: str + Content: EmailContentTypeDef + ReportName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class SendEmailRequestRequestTypeDef(BaseModel): + Content: EmailContentTypeDef + FromEmailAddress: Optional[str] = None + FromEmailAddressIdentityArn: Optional[str] = None + Destination: Optional[DestinationTypeDef] = None + ReplyToAddresses: Optional[Sequence[str]] = None + FeedbackForwardingEmailAddress: Optional[str] = None + FeedbackForwardingEmailAddressIdentityArn: Optional[str] = None + EmailTags: Optional[Sequence[MessageTagTypeDef]] = None + ConfigurationSetName: Optional[str] = None + ListManagementOptions: Optional[ListManagementOptionsTypeDef] = None + +class GetMessageInsightsResponseTypeDef(BaseModel): + MessageId: str + FromEmailAddress: str + Subject: str + EmailTags: List[MessageTagTypeDef] + Insights: List[EmailInsightsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sesv2_constants.py b/aws_resource_validator/pydantic_models/sesv2_constants.py new file mode 100644 index 00000000..f3b21a59 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sesv2_constants.py @@ -0,0 +1,498 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BehaviorOnMxFailureType = Literal["REJECT_MESSAGE", "USE_DEFAULT_VALUE"] +BounceTypeType = Literal["PERMANENT", "TRANSIENT", "UNDETERMINED"] +BulkEmailStatusType = Literal["ACCOUNT_DAILY_QUOTA_EXCEEDED", + "ACCOUNT_SENDING_PAUSED", + "ACCOUNT_SUSPENDED", + "ACCOUNT_THROTTLED", + "CONFIGURATION_SET_NOT_FOUND", + "CONFIGURATION_SET_SENDING_PAUSED", + "FAILED", + "INVALID_PARAMETER", + "INVALID_SENDING_POOL_NAME", + "MAIL_FROM_DOMAIN_NOT_VERIFIED", + "MESSAGE_REJECTED", + "SUCCESS", + "TEMPLATE_NOT_FOUND", + "TRANSIENT_FAILURE",] +ContactLanguageType = Literal["EN", "JA"] +ContactListImportActionType = Literal["DELETE", "PUT"] +DataFormatType = Literal["CSV", "JSON"] +DeliverabilityDashboardAccountStatusType = Literal["ACTIVE", "DISABLED", "PENDING_EXPIRATION"] +DeliverabilityTestStatusType = Literal["COMPLETED", "IN_PROGRESS"] +DeliveryEventTypeType = Literal["COMPLAINT", "DELIVERY", "PERMANENT_BOUNCE", "SEND", "TRANSIENT_BOUNCE", "UNDETERMINED_BOUNCE"] +DimensionValueSourceType = Literal["EMAIL_HEADER", "LINK_TAG", "MESSAGE_TAG"] +DkimSigningAttributesOriginType = Literal["AWS_SES", "EXTERNAL"] +DkimSigningKeyLengthType = Literal["RSA_1024_BIT", "RSA_2048_BIT"] +DkimStatusType = Literal["FAILED", "NOT_STARTED", "PENDING", "SUCCESS", "TEMPORARY_FAILURE"] +EngagementEventTypeType = Literal["CLICK", "OPEN"] +EventTypeType = Literal["BOUNCE", + "CLICK", + "COMPLAINT", + "DELIVERY", + "DELIVERY_DELAY", + "OPEN", + "REJECT", + "RENDERING_FAILURE", + "SEND", + "SUBSCRIPTION",] +ExportSourceTypeType = Literal["MESSAGE_INSIGHTS", "METRICS_DATA"] +FeatureStatusType = Literal["DISABLED", "ENABLED"] +IdentityTypeType = Literal["DOMAIN", "EMAIL_ADDRESS", "MANAGED_DOMAIN"] +ImportDestinationTypeType = Literal["CONTACT_LIST", "SUPPRESSION_LIST"] +JobStatusType = Literal["CANCELLED", "COMPLETED", "CREATED", "FAILED", "PROCESSING"] +ListRecommendationsFilterKeyType = Literal["IMPACT", "RESOURCE_ARN", "STATUS", "TYPE"] +MailFromDomainStatusType = Literal["FAILED", "PENDING", "SUCCESS", "TEMPORARY_FAILURE"] +MailTypeType = Literal["MARKETING", "TRANSACTIONAL"] +MetricAggregationType = Literal["RATE", "VOLUME"] +MetricDimensionNameType = Literal["CONFIGURATION_SET", "EMAIL_IDENTITY", "ISP"] +MetricNamespaceType = Literal["VDM"] +MetricType = Literal["CLICK", + "COMPLAINT", + "DELIVERY", + "DELIVERY_CLICK", + "DELIVERY_COMPLAINT", + "DELIVERY_OPEN", + "OPEN", + "PERMANENT_BOUNCE", + "SEND", + "TRANSIENT_BOUNCE",] +QueryErrorCodeType = Literal["ACCESS_DENIED", "INTERNAL_FAILURE"] +RecommendationImpactType = Literal["HIGH", "LOW"] +RecommendationStatusType = Literal["FIXED", "OPEN"] +RecommendationTypeType = Literal["BIMI", "DKIM", "DMARC", "SPF"] +ReviewStatusType = Literal["DENIED", "FAILED", "GRANTED", "PENDING"] +ScalingModeType = Literal["MANAGED", "STANDARD"] +SubscriptionStatusType = Literal["OPT_IN", "OPT_OUT"] +SuppressionListImportActionType = Literal["DELETE", "PUT"] +SuppressionListReasonType = Literal["BOUNCE", "COMPLAINT"] +TlsPolicyType = Literal["OPTIONAL", "REQUIRE"] +VerificationErrorType = Literal["DNS_SERVER_ERROR", "HOST_NOT_FOUND", "INVALID_VALUE", "SERVICE_ERROR", "TYPE_NOT_FOUND"] +VerificationStatusType = Literal["FAILED", "NOT_STARTED", "PENDING", "SUCCESS", "TEMPORARY_FAILURE"] +WarmupStatusType = Literal["DONE", "IN_PROGRESS"] +SESV2ServiceName = Literal["sesv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any] +SuppressionOptionsUnionTypeDef = Union['SuppressionOptionsTypeDef', 'SuppressionOptionsOutputTypeDef'] +ReputationOptionsUnionTypeDef = Union['ReputationOptionsTypeDef', 'ReputationOptionsOutputTypeDef'] +DomainDeliverabilityTrackingOptionUnionTypeDef = Union[ 'DomainDeliverabilityTrackingOptionTypeDef', 'DomainDeliverabilityTrackingOptionOutputTypeDef' ] +ExportDataSourceUnionTypeDef = Union['ExportDataSourceTypeDef', 'ExportDataSourceOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/shield_classes.py b/aws_resource_validator/pydantic_models/shield_classes.py new file mode 100644 index 00000000..ff23ab1d --- /dev/null +++ b/aws_resource_validator/pydantic_models/shield_classes.py @@ -0,0 +1,358 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.shield_constants import * + +class ResponseActionOutputTypeDef(BaseModel): + Block: Optional[Dict[str, Any]] = None + Count: Optional[Dict[str, Any]] = None + +class AssociateDRTLogBucketRequestRequestTypeDef(BaseModel): + LogBucket: str + +class AssociateDRTRoleRequestRequestTypeDef(BaseModel): + RoleArn: str + +class AssociateHealthCheckRequestRequestTypeDef(BaseModel): + ProtectionId: str + HealthCheckArn: str + +class EmergencyContactTypeDef(BaseModel): + EmailAddress: str + PhoneNumber: Optional[str] = None + ContactNotes: Optional[str] = None + +class MitigationTypeDef(BaseModel): + MitigationName: Optional[str] = None + +class SummarizedCounterTypeDef(BaseModel): + Name: Optional[str] = None + Max: Optional[float] = None + Average: Optional[float] = None + Sum: Optional[float] = None + N: Optional[int] = None + Unit: Optional[str] = None + +class ContributorTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[int] = None + +class AttackVectorDescriptionTypeDef(BaseModel): + VectorType: str + +class AttackVolumeStatisticsTypeDef(BaseModel): + Max: float + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteProtectionGroupRequestRequestTypeDef(BaseModel): + ProtectionGroupId: str + +class DeleteProtectionRequestRequestTypeDef(BaseModel): + ProtectionId: str + +class DescribeAttackRequestRequestTypeDef(BaseModel): + AttackId: str + +class TimeRangeOutputTypeDef(BaseModel): + FromInclusive: Optional[datetime] = None + ToExclusive: Optional[datetime] = None + +class DescribeProtectionGroupRequestRequestTypeDef(BaseModel): + ProtectionGroupId: str + +class ProtectionGroupTypeDef(BaseModel): + ProtectionGroupId: str + Aggregation: ProtectionGroupAggregationType + Pattern: ProtectionGroupPatternType + Members: List[str] + ResourceType: Optional[ProtectedResourceTypeType] = None + ProtectionGroupArn: Optional[str] = None + +class DescribeProtectionRequestRequestTypeDef(BaseModel): + ProtectionId: Optional[str] = None + ResourceArn: Optional[str] = None + +class DisableApplicationLayerAutomaticResponseRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DisassociateDRTLogBucketRequestRequestTypeDef(BaseModel): + LogBucket: str + +class DisassociateHealthCheckRequestRequestTypeDef(BaseModel): + ProtectionId: str + HealthCheckArn: str + +class ResponseActionTypeDef(BaseModel): + Block: Optional[Mapping[str, Any]] = None + Count: Optional[Mapping[str, Any]] = None + +class InclusionProtectionFiltersTypeDef(BaseModel): + ResourceArns: Optional[Sequence[str]] = None + ProtectionNames: Optional[Sequence[str]] = None + ResourceTypes: Optional[Sequence[ProtectedResourceTypeType]] = None + +class InclusionProtectionGroupFiltersTypeDef(BaseModel): + ProtectionGroupIds: Optional[Sequence[str]] = None + Patterns: Optional[Sequence[ProtectionGroupPatternType]] = None + ResourceTypes: Optional[Sequence[ProtectedResourceTypeType]] = None + Aggregations: Optional[Sequence[ProtectionGroupAggregationType]] = None + +class LimitTypeDef(BaseModel): + Type: Optional[str] = None + Max: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListResourcesInProtectionGroupRequestRequestTypeDef(BaseModel): + ProtectionGroupId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class ProtectionGroupArbitraryPatternLimitsTypeDef(BaseModel): + MaxMembers: int + +class ResponseActionExtraOutputTypeDef(BaseModel): + Block: Optional[Dict[str, Any]] = None + Count: Optional[Dict[str, Any]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateProtectionGroupRequestRequestTypeDef(BaseModel): + ProtectionGroupId: str + Aggregation: ProtectionGroupAggregationType + Pattern: ProtectionGroupPatternType + ResourceType: Optional[ProtectedResourceTypeType] = None + Members: Optional[Sequence[str]] = None + +class UpdateSubscriptionRequestRequestTypeDef(BaseModel): + AutoRenew: Optional[AutoRenewType] = None + +class ApplicationLayerAutomaticResponseConfigurationTypeDef(BaseModel): + Status: ApplicationLayerAutomaticResponseStatusType + Action: ResponseActionOutputTypeDef + +class AssociateProactiveEngagementDetailsRequestRequestTypeDef(BaseModel): + EmergencyContactList: Sequence[EmergencyContactTypeDef] + +class UpdateEmergencyContactSettingsRequestRequestTypeDef(BaseModel): + EmergencyContactList: Optional[Sequence[EmergencyContactTypeDef]] = None + +class SummarizedAttackVectorTypeDef(BaseModel): + VectorType: str + VectorCounters: Optional[List[SummarizedCounterTypeDef]] = None + +class AttackPropertyTypeDef(BaseModel): + AttackLayer: Optional[AttackLayerType] = None + AttackPropertyIdentifier: Optional[AttackPropertyIdentifierType] = None + TopContributors: Optional[List[ContributorTypeDef]] = None + Unit: Optional[UnitType] = None + Total: Optional[int] = None + +class AttackSummaryTypeDef(BaseModel): + AttackId: Optional[str] = None + ResourceArn: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + AttackVectors: Optional[List[AttackVectorDescriptionTypeDef]] = None + +class AttackVolumeTypeDef(BaseModel): + BitsPerSecond: Optional[AttackVolumeStatisticsTypeDef] = None + PacketsPerSecond: Optional[AttackVolumeStatisticsTypeDef] = None + RequestsPerSecond: Optional[AttackVolumeStatisticsTypeDef] = None + +class CreateProtectionGroupRequestRequestTypeDef(BaseModel): + ProtectionGroupId: str + Aggregation: ProtectionGroupAggregationType + Pattern: ProtectionGroupPatternType + ResourceType: Optional[ProtectedResourceTypeType] = None + Members: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateProtectionRequestRequestTypeDef(BaseModel): + Name: str + ResourceArn: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateProtectionResponseTypeDef(BaseModel): + ProtectionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDRTAccessResponseTypeDef(BaseModel): + RoleArn: str + LogBucketList: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEmergencyContactSettingsResponseTypeDef(BaseModel): + EmergencyContactList: List[EmergencyContactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionStateResponseTypeDef(BaseModel): + SubscriptionState: SubscriptionStateType + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesInProtectionGroupResponseTypeDef(BaseModel): + ResourceArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProtectionGroupResponseTypeDef(BaseModel): + ProtectionGroup: ProtectionGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProtectionGroupsResponseTypeDef(BaseModel): + ProtectionGroups: List[ProtectionGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EnableApplicationLayerAutomaticResponseRequestRequestTypeDef(BaseModel): + ResourceArn: str + Action: ResponseActionTypeDef + +class UpdateApplicationLayerAutomaticResponseRequestRequestTypeDef(BaseModel): + ResourceArn: str + Action: ResponseActionTypeDef + +class ListProtectionsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + InclusionFilters: Optional[InclusionProtectionFiltersTypeDef] = None + +class ListProtectionGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + InclusionFilters: Optional[InclusionProtectionGroupFiltersTypeDef] = None + +class ProtectionLimitsTypeDef(BaseModel): + ProtectedResourceTypeLimits: List[LimitTypeDef] + +class ListProtectionsRequestListProtectionsPaginateTypeDef(BaseModel): + InclusionFilters: Optional[InclusionProtectionFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ProtectionGroupPatternTypeLimitsTypeDef(BaseModel): + ArbitraryPatternLimits: ProtectionGroupArbitraryPatternLimitsTypeDef + +class TimeRangeTypeDef(BaseModel): + FromInclusive: Optional[TimestampTypeDef] = None + ToExclusive: Optional[TimestampTypeDef] = None + +class ProtectionTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + ResourceArn: Optional[str] = None + HealthCheckIds: Optional[List[str]] = None + ProtectionArn: Optional[str] = None + ApplicationLayerAutomaticResponseConfiguration: Optional[ ApplicationLayerAutomaticResponseConfigurationTypeDef ] = None + +class SubResourceSummaryTypeDef(BaseModel): + Type: Optional[SubResourceTypeType] = None + Id: Optional[str] = None + AttackVectors: Optional[List[SummarizedAttackVectorTypeDef]] = None + Counters: Optional[List[SummarizedCounterTypeDef]] = None + +class ListAttacksResponseTypeDef(BaseModel): + AttackSummaries: List[AttackSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AttackStatisticsDataItemTypeDef(BaseModel): + AttackCount: int + AttackVolume: Optional[AttackVolumeTypeDef] = None + +class ProtectionGroupLimitsTypeDef(BaseModel): + MaxProtectionGroups: int + PatternTypeLimits: ProtectionGroupPatternTypeLimitsTypeDef + +class ListAttacksRequestListAttacksPaginateTypeDef(BaseModel): + ResourceArns: Optional[Sequence[str]] = None + StartTime: Optional[TimeRangeTypeDef] = None + EndTime: Optional[TimeRangeTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAttacksRequestRequestTypeDef(BaseModel): + ResourceArns: Optional[Sequence[str]] = None + StartTime: Optional[TimeRangeTypeDef] = None + EndTime: Optional[TimeRangeTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeProtectionResponseTypeDef(BaseModel): + Protection: ProtectionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListProtectionsResponseTypeDef(BaseModel): + Protections: List[ProtectionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AttackDetailTypeDef(BaseModel): + AttackId: Optional[str] = None + ResourceArn: Optional[str] = None + SubResources: Optional[List[SubResourceSummaryTypeDef]] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + AttackCounters: Optional[List[SummarizedCounterTypeDef]] = None + AttackProperties: Optional[List[AttackPropertyTypeDef]] = None + Mitigations: Optional[List[MitigationTypeDef]] = None + +class DescribeAttackStatisticsResponseTypeDef(BaseModel): + TimeRange: TimeRangeOutputTypeDef + DataItems: List[AttackStatisticsDataItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SubscriptionLimitsTypeDef(BaseModel): + ProtectionLimits: ProtectionLimitsTypeDef + ProtectionGroupLimits: ProtectionGroupLimitsTypeDef + +class DescribeAttackResponseTypeDef(BaseModel): + Attack: AttackDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SubscriptionTypeDef(BaseModel): + SubscriptionLimits: SubscriptionLimitsTypeDef + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + TimeCommitmentInSeconds: Optional[int] = None + AutoRenew: Optional[AutoRenewType] = None + Limits: Optional[List[LimitTypeDef]] = None + ProactiveEngagementStatus: Optional[ProactiveEngagementStatusType] = None + SubscriptionArn: Optional[str] = None + +class DescribeSubscriptionResponseTypeDef(BaseModel): + Subscription: SubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/shield_constants.py b/aws_resource_validator/pydantic_models/shield_constants.py new file mode 100644 index 00000000..5fb86545 --- /dev/null +++ b/aws_resource_validator/pydantic_models/shield_constants.py @@ -0,0 +1,428 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationLayerAutomaticResponseStatusType = Literal["DISABLED", "ENABLED"] +AttackLayerType = Literal["APPLICATION", "NETWORK"] +AttackPropertyIdentifierType = Literal["DESTINATION_URL", + "REFERRER", + "SOURCE_ASN", + "SOURCE_COUNTRY", + "SOURCE_IP_ADDRESS", + "SOURCE_USER_AGENT", + "WORDPRESS_PINGBACK_REFLECTOR", + "WORDPRESS_PINGBACK_SOURCE",] +AutoRenewType = Literal["DISABLED", "ENABLED"] +ListAttacksPaginatorName = Literal["list_attacks"] +ListProtectionsPaginatorName = Literal["list_protections"] +ProactiveEngagementStatusType = Literal["DISABLED", "ENABLED", "PENDING"] +ProtectedResourceTypeType = Literal["APPLICATION_LOAD_BALANCER", + "CLASSIC_LOAD_BALANCER", + "CLOUDFRONT_DISTRIBUTION", + "ELASTIC_IP_ALLOCATION", + "GLOBAL_ACCELERATOR", + "ROUTE_53_HOSTED_ZONE",] +ProtectionGroupAggregationType = Literal["MAX", "MEAN", "SUM"] +ProtectionGroupPatternType = Literal["ALL", "ARBITRARY", "BY_RESOURCE_TYPE"] +SubResourceTypeType = Literal["IP", "URL"] +SubscriptionStateType = Literal["ACTIVE", "INACTIVE"] +UnitType = Literal["BITS", "BYTES", "PACKETS", "REQUESTS"] +ShieldServiceName = Literal["shield"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_attacks", "list_protections"] +TimestampTypeDef = Union[datetime, str] +ResponseActionUnionTypeDef = Union['ResponseActionTypeDef', 'ResponseActionExtraOutputTypeDef'] +TimeRangeUnionTypeDef = Union['TimeRangeTypeDef', 'TimeRangeOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/signer_classes.py b/aws_resource_validator/pydantic_models/signer_classes.py new file mode 100644 index 00000000..7c77449a --- /dev/null +++ b/aws_resource_validator/pydantic_models/signer_classes.py @@ -0,0 +1,380 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.signer_constants import * + +class AddProfilePermissionRequestRequestTypeDef(BaseModel): + profileName: str + action: str + principal: str + statementId: str + profileVersion: Optional[str] = None + revisionId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CancelSigningProfileRequestRequestTypeDef(BaseModel): + profileName: str + +class DescribeSigningJobRequestRequestTypeDef(BaseModel): + jobId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class SigningJobRevocationRecordTypeDef(BaseModel): + reason: Optional[str] = None + revokedAt: Optional[datetime] = None + revokedBy: Optional[str] = None + +class SigningMaterialTypeDef(BaseModel): + certificateArn: str + +class S3DestinationTypeDef(BaseModel): + bucketName: Optional[str] = None + prefix: Optional[str] = None + +class EncryptionAlgorithmOptionsTypeDef(BaseModel): + allowedValues: List[EncryptionAlgorithmType] + defaultValue: EncryptionAlgorithmType + +class GetSigningPlatformRequestRequestTypeDef(BaseModel): + platformId: str + +class SigningImageFormatTypeDef(BaseModel): + supportedFormats: List[ImageFormatType] + defaultFormat: ImageFormatType + +class GetSigningProfileRequestRequestTypeDef(BaseModel): + profileName: str + profileOwner: Optional[str] = None + +class SignatureValidityPeriodTypeDef(BaseModel): + value: Optional[int] = None + type: Optional[ValidityTypeType] = None + +class SigningProfileRevocationRecordTypeDef(BaseModel): + revocationEffectiveFrom: Optional[datetime] = None + revokedAt: Optional[datetime] = None + revokedBy: Optional[str] = None + +class HashAlgorithmOptionsTypeDef(BaseModel): + allowedValues: List[HashAlgorithmType] + defaultValue: HashAlgorithmType + +class ListProfilePermissionsRequestRequestTypeDef(BaseModel): + profileName: str + nextToken: Optional[str] = None + +class PermissionTypeDef(BaseModel): + action: Optional[str] = None + principal: Optional[str] = None + statementId: Optional[str] = None + profileVersion: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListSigningPlatformsRequestRequestTypeDef(BaseModel): + category: Optional[str] = None + partner: Optional[str] = None + target: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSigningProfilesRequestRequestTypeDef(BaseModel): + includeCanceled: Optional[bool] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + platformId: Optional[str] = None + statuses: Optional[Sequence[SigningProfileStatusType]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class RemoveProfilePermissionRequestRequestTypeDef(BaseModel): + profileName: str + revisionId: str + statementId: str + +class RevokeSignatureRequestRequestTypeDef(BaseModel): + jobId: str + reason: str + jobOwner: Optional[str] = None + +class S3SignedObjectTypeDef(BaseModel): + bucketName: Optional[str] = None + key: Optional[str] = None + +class S3SourceTypeDef(BaseModel): + bucketName: str + key: str + version: str + +class SigningConfigurationOverridesTypeDef(BaseModel): + encryptionAlgorithm: Optional[EncryptionAlgorithmType] = None + hashAlgorithm: Optional[HashAlgorithmType] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class AddProfilePermissionResponseTypeDef(BaseModel): + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetRevocationStatusResponseTypeDef(BaseModel): + revokedEntities: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutSigningProfileResponseTypeDef(BaseModel): + arn: str + profileVersion: str + profileVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveProfilePermissionResponseTypeDef(BaseModel): + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SignPayloadResponseTypeDef(BaseModel): + jobId: str + jobOwner: str + metadata: Dict[str, str] + signature: bytes + ResponseMetadata: ResponseMetadataTypeDef + +class StartSigningJobResponseTypeDef(BaseModel): + jobId: str + jobOwner: str + ResponseMetadata: ResponseMetadataTypeDef + +class SignPayloadRequestRequestTypeDef(BaseModel): + profileName: str + payload: BlobTypeDef + payloadFormat: str + profileOwner: Optional[str] = None + +class DescribeSigningJobRequestSuccessfulSigningJobWaitTypeDef(BaseModel): + jobId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DestinationTypeDef(BaseModel): + s3: Optional[S3DestinationTypeDef] = None + +class GetRevocationStatusRequestRequestTypeDef(BaseModel): + signatureTimestamp: TimestampTypeDef + platformId: str + profileVersionArn: str + jobArn: str + certificateHashes: Sequence[str] + +class ListSigningJobsRequestRequestTypeDef(BaseModel): + status: Optional[SigningStatusType] = None + platformId: Optional[str] = None + requestedBy: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + isRevoked: Optional[bool] = None + signatureExpiresBefore: Optional[TimestampTypeDef] = None + signatureExpiresAfter: Optional[TimestampTypeDef] = None + jobInvoker: Optional[str] = None + +class RevokeSigningProfileRequestRequestTypeDef(BaseModel): + profileName: str + profileVersion: str + reason: str + effectiveTime: TimestampTypeDef + +class SigningProfileTypeDef(BaseModel): + profileName: Optional[str] = None + profileVersion: Optional[str] = None + profileVersionArn: Optional[str] = None + signingMaterial: Optional[SigningMaterialTypeDef] = None + signatureValidityPeriod: Optional[SignatureValidityPeriodTypeDef] = None + platformId: Optional[str] = None + platformDisplayName: Optional[str] = None + signingParameters: Optional[Dict[str, str]] = None + status: Optional[SigningProfileStatusType] = None + arn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class SigningConfigurationTypeDef(BaseModel): + encryptionAlgorithmOptions: EncryptionAlgorithmOptionsTypeDef + hashAlgorithmOptions: HashAlgorithmOptionsTypeDef + +class ListProfilePermissionsResponseTypeDef(BaseModel): + revisionId: str + policySizeBytes: int + permissions: List[PermissionTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSigningJobsRequestListSigningJobsPaginateTypeDef(BaseModel): + status: Optional[SigningStatusType] = None + platformId: Optional[str] = None + requestedBy: Optional[str] = None + isRevoked: Optional[bool] = None + signatureExpiresBefore: Optional[TimestampTypeDef] = None + signatureExpiresAfter: Optional[TimestampTypeDef] = None + jobInvoker: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSigningPlatformsRequestListSigningPlatformsPaginateTypeDef(BaseModel): + category: Optional[str] = None + partner: Optional[str] = None + target: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSigningProfilesRequestListSigningProfilesPaginateTypeDef(BaseModel): + includeCanceled: Optional[bool] = None + platformId: Optional[str] = None + statuses: Optional[Sequence[SigningProfileStatusType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SignedObjectTypeDef(BaseModel): + s3: Optional[S3SignedObjectTypeDef] = None + +class SourceTypeDef(BaseModel): + s3: Optional[S3SourceTypeDef] = None + +class SigningPlatformOverridesTypeDef(BaseModel): + signingConfiguration: Optional[SigningConfigurationOverridesTypeDef] = None + signingImageFormat: Optional[ImageFormatType] = None + +class ListSigningProfilesResponseTypeDef(BaseModel): + profiles: List[SigningProfileTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSigningPlatformResponseTypeDef(BaseModel): + platformId: str + displayName: str + partner: str + target: str + category: Literal["AWSIoT"] + signingConfiguration: SigningConfigurationTypeDef + signingImageFormat: SigningImageFormatTypeDef + maxSizeInMB: int + revocationSupported: bool + ResponseMetadata: ResponseMetadataTypeDef + +class SigningPlatformTypeDef(BaseModel): + platformId: Optional[str] = None + displayName: Optional[str] = None + partner: Optional[str] = None + target: Optional[str] = None + category: Optional[Literal["AWSIoT"]] = None + signingConfiguration: Optional[SigningConfigurationTypeDef] = None + signingImageFormat: Optional[SigningImageFormatTypeDef] = None + maxSizeInMB: Optional[int] = None + revocationSupported: Optional[bool] = None + +class SigningJobTypeDef(BaseModel): + jobId: Optional[str] = None + source: Optional[SourceTypeDef] = None + signedObject: Optional[SignedObjectTypeDef] = None + signingMaterial: Optional[SigningMaterialTypeDef] = None + createdAt: Optional[datetime] = None + status: Optional[SigningStatusType] = None + isRevoked: Optional[bool] = None + profileName: Optional[str] = None + profileVersion: Optional[str] = None + platformId: Optional[str] = None + platformDisplayName: Optional[str] = None + signatureExpiresAt: Optional[datetime] = None + jobOwner: Optional[str] = None + jobInvoker: Optional[str] = None + +class StartSigningJobRequestRequestTypeDef(BaseModel): + source: SourceTypeDef + destination: DestinationTypeDef + profileName: str + clientRequestToken: str + profileOwner: Optional[str] = None + +class DescribeSigningJobResponseTypeDef(BaseModel): + jobId: str + source: SourceTypeDef + signingMaterial: SigningMaterialTypeDef + platformId: str + platformDisplayName: str + profileName: str + profileVersion: str + overrides: SigningPlatformOverridesTypeDef + signingParameters: Dict[str, str] + createdAt: datetime + completedAt: datetime + signatureExpiresAt: datetime + requestedBy: str + status: SigningStatusType + statusReason: str + revocationRecord: SigningJobRevocationRecordTypeDef + signedObject: SignedObjectTypeDef + jobOwner: str + jobInvoker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSigningProfileResponseTypeDef(BaseModel): + profileName: str + profileVersion: str + profileVersionArn: str + revocationRecord: SigningProfileRevocationRecordTypeDef + signingMaterial: SigningMaterialTypeDef + platformId: str + platformDisplayName: str + signatureValidityPeriod: SignatureValidityPeriodTypeDef + overrides: SigningPlatformOverridesTypeDef + signingParameters: Dict[str, str] + status: SigningProfileStatusType + statusReason: str + arn: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutSigningProfileRequestRequestTypeDef(BaseModel): + profileName: str + platformId: str + signingMaterial: Optional[SigningMaterialTypeDef] = None + signatureValidityPeriod: Optional[SignatureValidityPeriodTypeDef] = None + overrides: Optional[SigningPlatformOverridesTypeDef] = None + signingParameters: Optional[Mapping[str, str]] = None + tags: Optional[Mapping[str, str]] = None + +class ListSigningPlatformsResponseTypeDef(BaseModel): + platforms: List[SigningPlatformTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSigningJobsResponseTypeDef(BaseModel): + jobs: List[SigningJobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/signer_constants.py b/aws_resource_validator/pydantic_models/signer_constants.py new file mode 100644 index 00000000..480faa5a --- /dev/null +++ b/aws_resource_validator/pydantic_models/signer_constants.py @@ -0,0 +1,432 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CategoryType = Literal["AWSIoT"] +EncryptionAlgorithmType = Literal["ECDSA", "RSA"] +HashAlgorithmType = Literal["SHA1", "SHA256"] +ImageFormatType = Literal["JSON", "JSONDetached", "JSONEmbedded"] +ListSigningJobsPaginatorName = Literal["list_signing_jobs"] +ListSigningPlatformsPaginatorName = Literal["list_signing_platforms"] +ListSigningProfilesPaginatorName = Literal["list_signing_profiles"] +SigningProfileStatusType = Literal["Active", "Canceled", "Revoked"] +SigningStatusType = Literal["Failed", "InProgress", "Succeeded"] +SuccessfulSigningJobWaiterName = Literal["successful_signing_job"] +ValidityTypeType = Literal["DAYS", "MONTHS", "YEARS"] +SignerServiceName = Literal["signer"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_signing_jobs", "list_signing_platforms", "list_signing_profiles"] +WaiterName = Literal["successful_signing_job"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/simspaceweaver_classes.py b/aws_resource_validator/pydantic_models/simspaceweaver_classes.py new file mode 100644 index 00000000..f344bba7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/simspaceweaver_classes.py @@ -0,0 +1,202 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.simspaceweaver_constants import * + +class CloudWatchLogsLogGroupTypeDef(BaseModel): + LogGroupArn: Optional[str] = None + +class S3DestinationTypeDef(BaseModel): + BucketName: str + ObjectKeyPrefix: Optional[str] = None + +class DeleteAppInputRequestTypeDef(BaseModel): + App: str + Domain: str + Simulation: str + +class DeleteSimulationInputRequestTypeDef(BaseModel): + Simulation: str + +class DescribeAppInputRequestTypeDef(BaseModel): + App: str + Domain: str + Simulation: str + +class LaunchOverridesTypeDef(BaseModel): + LaunchCommands: Optional[List[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DescribeSimulationInputRequestTypeDef(BaseModel): + Simulation: str + +class S3LocationTypeDef(BaseModel): + BucketName: str + ObjectKey: str + +class DomainTypeDef(BaseModel): + Lifecycle: Optional[LifecycleManagementStrategyType] = None + Name: Optional[str] = None + +class ListAppsInputRequestTypeDef(BaseModel): + Simulation: str + Domain: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SimulationAppMetadataTypeDef(BaseModel): + Domain: Optional[str] = None + Name: Optional[str] = None + Simulation: Optional[str] = None + Status: Optional[SimulationAppStatusType] = None + TargetStatus: Optional[SimulationAppTargetStatusType] = None + +class ListSimulationsInputRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SimulationMetadataTypeDef(BaseModel): + Arn: Optional[str] = None + CreationTime: Optional[datetime] = None + Name: Optional[str] = None + Status: Optional[SimulationStatusType] = None + TargetStatus: Optional[SimulationTargetStatusType] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + +class SimulationClockTypeDef(BaseModel): + Status: Optional[ClockStatusType] = None + TargetStatus: Optional[ClockTargetStatusType] = None + +class SimulationAppPortMappingTypeDef(BaseModel): + Actual: Optional[int] = None + Declared: Optional[int] = None + +class StartClockInputRequestTypeDef(BaseModel): + Simulation: str + +class StopAppInputRequestTypeDef(BaseModel): + App: str + Domain: str + Simulation: str + +class StopClockInputRequestTypeDef(BaseModel): + Simulation: str + +class StopSimulationInputRequestTypeDef(BaseModel): + Simulation: str + +class TagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class LogDestinationTypeDef(BaseModel): + CloudWatchLogsLogGroup: Optional[CloudWatchLogsLogGroupTypeDef] = None + +class CreateSnapshotInputRequestTypeDef(BaseModel): + Destination: S3DestinationTypeDef + Simulation: str + +class StartAppInputRequestTypeDef(BaseModel): + Domain: str + Name: str + Simulation: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + LaunchOverrides: Optional[LaunchOverridesTypeDef] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartAppOutputTypeDef(BaseModel): + Domain: str + Name: str + Simulation: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSimulationOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + ExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSimulationInputRequestTypeDef(BaseModel): + Name: str + RoleArn: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + MaximumDuration: Optional[str] = None + SchemaS3Location: Optional[S3LocationTypeDef] = None + SnapshotS3Location: Optional[S3LocationTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + +class ListAppsOutputTypeDef(BaseModel): + Apps: List[SimulationAppMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSimulationsOutputTypeDef(BaseModel): + NextToken: str + Simulations: List[SimulationMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LiveSimulationStateTypeDef(BaseModel): + Clocks: Optional[List[SimulationClockTypeDef]] = None + Domains: Optional[List[DomainTypeDef]] = None + +class SimulationAppEndpointInfoTypeDef(BaseModel): + Address: Optional[str] = None + IngressPortMappings: Optional[List[SimulationAppPortMappingTypeDef]] = None + +class LoggingConfigurationTypeDef(BaseModel): + Destinations: Optional[List[LogDestinationTypeDef]] = None + +class DescribeAppOutputTypeDef(BaseModel): + Description: str + Domain: str + EndpointInfo: SimulationAppEndpointInfoTypeDef + LaunchOverrides: LaunchOverridesTypeDef + Name: str + Simulation: str + Status: SimulationAppStatusType + TargetStatus: SimulationAppTargetStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSimulationOutputTypeDef(BaseModel): + Arn: str + CreationTime: datetime + Description: str + ExecutionId: str + LiveSimulationState: LiveSimulationStateTypeDef + LoggingConfiguration: LoggingConfigurationTypeDef + MaximumDuration: str + Name: str + RoleArn: str + SchemaError: str + SchemaS3Location: S3LocationTypeDef + SnapshotS3Location: S3LocationTypeDef + StartError: str + Status: SimulationStatusType + TargetStatus: SimulationTargetStatusType + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/simspaceweaver_constants.py b/aws_resource_validator/pydantic_models/simspaceweaver_constants.py new file mode 100644 index 00000000..6e9cb68e --- /dev/null +++ b/aws_resource_validator/pydantic_models/simspaceweaver_constants.py @@ -0,0 +1,411 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ClockStatusType = Literal["STARTED", "STARTING", "STOPPED", "STOPPING", "UNKNOWN"] +ClockTargetStatusType = Literal["STARTED", "STOPPED", "UNKNOWN"] +LifecycleManagementStrategyType = Literal["ByRequest", "BySpatialSubdivision", "PerWorker", "Unknown"] +SimulationAppStatusType = Literal["ERROR", "STARTED", "STARTING", "STOPPED", "STOPPING", "UNKNOWN"] +SimulationAppTargetStatusType = Literal["STARTED", "STOPPED", "UNKNOWN"] +SimulationStatusType = Literal["DELETED", + "DELETING", + "FAILED", + "SNAPSHOT_IN_PROGRESS", + "STARTED", + "STARTING", + "STOPPED", + "STOPPING", + "UNKNOWN",] +SimulationTargetStatusType = Literal["DELETED", "STARTED", "STOPPED", "UNKNOWN"] +SimSpaceWeaverServiceName = Literal["simspaceweaver"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-southeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/sms_classes.py b/aws_resource_validator/pydantic_models/sms_classes.py new file mode 100644 index 00000000..5443b60b --- /dev/null +++ b/aws_resource_validator/pydantic_models/sms_classes.py @@ -0,0 +1,474 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sms_constants import * + +class LaunchDetailsTypeDef(BaseModel): + latestLaunchTime: Optional[datetime] = None + stackName: Optional[str] = None + stackId: Optional[str] = None + +class ConnectorTypeDef(BaseModel): + connectorId: Optional[str] = None + version: Optional[str] = None + status: Optional[ConnectorStatusType] = None + capabilityList: Optional[List[ConnectorCapabilityType]] = None + vmManagerName: Optional[str] = None + vmManagerType: Optional[VmManagerTypeType] = None + vmManagerId: Optional[str] = None + ipAddress: Optional[str] = None + macAddress: Optional[str] = None + associatedOn: Optional[datetime] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteAppLaunchConfigurationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class DeleteAppReplicationConfigurationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class DeleteAppRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + forceStopAppReplication: Optional[bool] = None + forceTerminateApp: Optional[bool] = None + +class DeleteAppValidationConfigurationRequestRequestTypeDef(BaseModel): + appId: str + +class DeleteReplicationJobRequestRequestTypeDef(BaseModel): + replicationJobId: str + +class DisassociateConnectorRequestRequestTypeDef(BaseModel): + connectorId: str + +class GenerateChangeSetRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + changesetFormat: Optional[OutputFormatType] = None + +class S3LocationTypeDef(BaseModel): + bucket: Optional[str] = None + key: Optional[str] = None + +class GenerateTemplateRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + templateFormat: Optional[OutputFormatType] = None + +class GetAppLaunchConfigurationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class GetAppReplicationConfigurationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class GetAppRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class GetAppValidationConfigurationRequestRequestTypeDef(BaseModel): + appId: str + +class GetAppValidationOutputRequestRequestTypeDef(BaseModel): + appId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetConnectorsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetReplicationJobsRequestRequestTypeDef(BaseModel): + replicationJobId: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class GetReplicationRunsRequestRequestTypeDef(BaseModel): + replicationJobId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class VmServerAddressTypeDef(BaseModel): + vmManagerId: Optional[str] = None + vmId: Optional[str] = None + +class ImportAppCatalogRequestRequestTypeDef(BaseModel): + roleName: Optional[str] = None + +class LaunchAppRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class ListAppsRequestRequestTypeDef(BaseModel): + appIds: Optional[Sequence[str]] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class NotificationContextTypeDef(BaseModel): + validationId: Optional[str] = None + status: Optional[ValidationStatusType] = None + statusMessage: Optional[str] = None + +class ReplicationRunStageDetailsTypeDef(BaseModel): + stage: Optional[str] = None + stageProgress: Optional[str] = None + +class ServerReplicationParametersTypeDef(BaseModel): + seedTime: Optional[datetime] = None + frequency: Optional[int] = None + runOnce: Optional[bool] = None + licenseType: Optional[LicenseTypeType] = None + numberOfRecentAmisToKeep: Optional[int] = None + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + +class StartAppReplicationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class StartOnDemandAppReplicationRequestRequestTypeDef(BaseModel): + appId: str + description: Optional[str] = None + +class StartOnDemandReplicationRunRequestRequestTypeDef(BaseModel): + replicationJobId: str + description: Optional[str] = None + +class StopAppReplicationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class TerminateAppRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + +class AppSummaryTypeDef(BaseModel): + appId: Optional[str] = None + importedAppId: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + status: Optional[AppStatusType] = None + statusMessage: Optional[str] = None + replicationConfigurationStatus: Optional[AppReplicationConfigurationStatusType] = None + replicationStatus: Optional[AppReplicationStatusType] = None + replicationStatusMessage: Optional[str] = None + latestReplicationTime: Optional[datetime] = None + launchConfigurationStatus: Optional[AppLaunchConfigurationStatusType] = None + launchStatus: Optional[AppLaunchStatusType] = None + launchStatusMessage: Optional[str] = None + launchDetails: Optional[LaunchDetailsTypeDef] = None + creationTime: Optional[datetime] = None + lastModified: Optional[datetime] = None + roleName: Optional[str] = None + totalServerGroups: Optional[int] = None + totalServers: Optional[int] = None + +class CreateReplicationJobResponseTypeDef(BaseModel): + replicationJobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectorsResponseTypeDef(BaseModel): + connectorList: List[ConnectorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartOnDemandReplicationRunResponseTypeDef(BaseModel): + replicationRunId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReplicationJobRequestRequestTypeDef(BaseModel): + serverId: str + seedReplicationTime: TimestampTypeDef + frequency: Optional[int] = None + runOnce: Optional[bool] = None + licenseType: Optional[LicenseTypeType] = None + roleName: Optional[str] = None + description: Optional[str] = None + numberOfRecentAmisToKeep: Optional[int] = None + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + +class UpdateReplicationJobRequestRequestTypeDef(BaseModel): + replicationJobId: str + frequency: Optional[int] = None + nextReplicationRunStartTime: Optional[TimestampTypeDef] = None + licenseType: Optional[LicenseTypeType] = None + roleName: Optional[str] = None + description: Optional[str] = None + numberOfRecentAmisToKeep: Optional[int] = None + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + +class GenerateChangeSetResponseTypeDef(BaseModel): + s3Location: S3LocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateTemplateResponseTypeDef(BaseModel): + s3Location: S3LocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SSMOutputTypeDef(BaseModel): + s3Location: Optional[S3LocationTypeDef] = None + +class SourceTypeDef(BaseModel): + s3Location: Optional[S3LocationTypeDef] = None + +class UserDataTypeDef(BaseModel): + s3Location: Optional[S3LocationTypeDef] = None + +class GetConnectorsRequestGetConnectorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetReplicationJobsRequestGetReplicationJobsPaginateTypeDef(BaseModel): + replicationJobId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetReplicationRunsRequestGetReplicationRunsPaginateTypeDef(BaseModel): + replicationJobId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAppsRequestListAppsPaginateTypeDef(BaseModel): + appIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetServersRequestGetServersPaginateTypeDef(BaseModel): + vmServerAddressList: Optional[Sequence[VmServerAddressTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetServersRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + vmServerAddressList: Optional[Sequence[VmServerAddressTypeDef]] = None + +class VmServerTypeDef(BaseModel): + vmServerAddress: Optional[VmServerAddressTypeDef] = None + vmName: Optional[str] = None + vmManagerName: Optional[str] = None + vmManagerType: Optional[VmManagerTypeType] = None + vmPath: Optional[str] = None + +class NotifyAppValidationOutputRequestRequestTypeDef(BaseModel): + appId: str + notificationContext: Optional[NotificationContextTypeDef] = None + +class ReplicationRunTypeDef(BaseModel): + replicationRunId: Optional[str] = None + state: Optional[ReplicationRunStateType] = None + type: Optional[ReplicationRunTypeType] = None + stageDetails: Optional[ReplicationRunStageDetailsTypeDef] = None + statusMessage: Optional[str] = None + amiId: Optional[str] = None + scheduledStartTime: Optional[datetime] = None + completedTime: Optional[datetime] = None + description: Optional[str] = None + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + +class ListAppsResponseTypeDef(BaseModel): + apps: List[AppSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AppValidationOutputTypeDef(BaseModel): + ssmOutput: Optional[SSMOutputTypeDef] = None + +class SSMValidationParametersTypeDef(BaseModel): + source: Optional[SourceTypeDef] = None + instanceId: Optional[str] = None + scriptType: Optional[ScriptTypeType] = None + command: Optional[str] = None + executionTimeoutSeconds: Optional[int] = None + outputS3BucketName: Optional[str] = None + +class UserDataValidationParametersTypeDef(BaseModel): + source: Optional[SourceTypeDef] = None + scriptType: Optional[ScriptTypeType] = None + +class ServerTypeDef(BaseModel): + serverId: Optional[str] = None + serverType: Optional[Literal["VIRTUAL_MACHINE"]] = None + vmServer: Optional[VmServerTypeDef] = None + replicationJobId: Optional[str] = None + replicationJobTerminated: Optional[bool] = None + +class ReplicationJobTypeDef(BaseModel): + replicationJobId: Optional[str] = None + serverId: Optional[str] = None + serverType: Optional[Literal["VIRTUAL_MACHINE"]] = None + vmServer: Optional[VmServerTypeDef] = None + seedReplicationTime: Optional[datetime] = None + frequency: Optional[int] = None + runOnce: Optional[bool] = None + nextReplicationRunStartTime: Optional[datetime] = None + licenseType: Optional[LicenseTypeType] = None + roleName: Optional[str] = None + latestAmiId: Optional[str] = None + state: Optional[ReplicationJobStateType] = None + statusMessage: Optional[str] = None + description: Optional[str] = None + numberOfRecentAmisToKeep: Optional[int] = None + encrypted: Optional[bool] = None + kmsKeyId: Optional[str] = None + replicationRunList: Optional[List[ReplicationRunTypeDef]] = None + +class AppValidationConfigurationTypeDef(BaseModel): + validationId: Optional[str] = None + name: Optional[str] = None + appValidationStrategy: Optional[Literal["SSM"]] = None + ssmValidationParameters: Optional[SSMValidationParametersTypeDef] = None + +class GetServersResponseTypeDef(BaseModel): + lastModifiedOn: datetime + serverCatalogStatus: ServerCatalogStatusType + serverList: List[ServerTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ServerGroupTypeDef(BaseModel): + serverGroupId: Optional[str] = None + name: Optional[str] = None + serverList: Optional[Sequence[ServerTypeDef]] = None + +class ServerLaunchConfigurationTypeDef(BaseModel): + server: Optional[ServerTypeDef] = None + logicalId: Optional[str] = None + vpc: Optional[str] = None + subnet: Optional[str] = None + securityGroup: Optional[str] = None + ec2KeyName: Optional[str] = None + userData: Optional[UserDataTypeDef] = None + instanceType: Optional[str] = None + associatePublicIpAddress: Optional[bool] = None + iamInstanceProfileName: Optional[str] = None + configureScript: Optional[S3LocationTypeDef] = None + configureScriptType: Optional[ScriptTypeType] = None + +class ServerReplicationConfigurationTypeDef(BaseModel): + server: Optional[ServerTypeDef] = None + serverReplicationParameters: Optional[ServerReplicationParametersTypeDef] = None + +class ServerValidationConfigurationTypeDef(BaseModel): + server: Optional[ServerTypeDef] = None + validationId: Optional[str] = None + name: Optional[str] = None + serverValidationStrategy: Optional[Literal["USERDATA"]] = None + userDataValidationParameters: Optional[UserDataValidationParametersTypeDef] = None + +class ServerValidationOutputTypeDef(BaseModel): + server: Optional[ServerTypeDef] = None + +class GetReplicationJobsResponseTypeDef(BaseModel): + replicationJobList: List[ReplicationJobTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReplicationRunsResponseTypeDef(BaseModel): + replicationJob: ReplicationJobTypeDef + replicationRunList: List[ReplicationRunTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAppRequestRequestTypeDef(BaseModel): + name: Optional[str] = None + description: Optional[str] = None + roleName: Optional[str] = None + clientToken: Optional[str] = None + serverGroups: Optional[Sequence[ServerGroupTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateAppResponseTypeDef(BaseModel): + appSummary: AppSummaryTypeDef + serverGroups: List[ServerGroupTypeDef] + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetAppResponseTypeDef(BaseModel): + appSummary: AppSummaryTypeDef + serverGroups: List[ServerGroupTypeDef] + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAppRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + name: Optional[str] = None + description: Optional[str] = None + roleName: Optional[str] = None + serverGroups: Optional[Sequence[ServerGroupTypeDef]] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateAppResponseTypeDef(BaseModel): + appSummary: AppSummaryTypeDef + serverGroups: List[ServerGroupTypeDef] + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ServerGroupLaunchConfigurationTypeDef(BaseModel): + serverGroupId: Optional[str] = None + launchOrder: Optional[int] = None + serverLaunchConfigurations: Optional[List[ServerLaunchConfigurationTypeDef]] = None + +class ServerGroupReplicationConfigurationTypeDef(BaseModel): + serverGroupId: Optional[str] = None + serverReplicationConfigurations: Optional[List[ServerReplicationConfigurationTypeDef]] = None + +class ServerGroupValidationConfigurationTypeDef(BaseModel): + serverGroupId: Optional[str] = None + serverValidationConfigurations: Optional[List[ServerValidationConfigurationTypeDef]] = None + +class ValidationOutputTypeDef(BaseModel): + validationId: Optional[str] = None + name: Optional[str] = None + status: Optional[ValidationStatusType] = None + statusMessage: Optional[str] = None + latestValidationTime: Optional[datetime] = None + appValidationOutput: Optional[AppValidationOutputTypeDef] = None + serverValidationOutput: Optional[ServerValidationOutputTypeDef] = None + +class GetAppLaunchConfigurationResponseTypeDef(BaseModel): + appId: str + roleName: str + autoLaunch: bool + serverGroupLaunchConfigurations: List[ServerGroupLaunchConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppLaunchConfigurationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + roleName: Optional[str] = None + autoLaunch: Optional[bool] = None + serverGroupLaunchConfigurations: Optional[ Sequence[ServerGroupLaunchConfigurationTypeDef] ] = None + +class GetAppReplicationConfigurationResponseTypeDef(BaseModel): + serverGroupReplicationConfigurations: List[ServerGroupReplicationConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppReplicationConfigurationRequestRequestTypeDef(BaseModel): + appId: Optional[str] = None + serverGroupReplicationConfigurations: Optional[ Sequence[ServerGroupReplicationConfigurationTypeDef] ] = None + +class GetAppValidationConfigurationResponseTypeDef(BaseModel): + appValidationConfigurations: List[AppValidationConfigurationTypeDef] + serverGroupValidationConfigurations: List[ServerGroupValidationConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAppValidationConfigurationRequestRequestTypeDef(BaseModel): + appId: str + appValidationConfigurations: Optional[Sequence[AppValidationConfigurationTypeDef]] = None + serverGroupValidationConfigurations: Optional[ Sequence[ServerGroupValidationConfigurationTypeDef] ] = None + +class GetAppValidationOutputResponseTypeDef(BaseModel): + validationOutputList: List[ValidationOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sms_constants.py b/aws_resource_validator/pydantic_models/sms_constants.py new file mode 100644 index 00000000..18505e3b --- /dev/null +++ b/aws_resource_validator/pydantic_models/sms_constants.py @@ -0,0 +1,451 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AppLaunchConfigurationStatusType = Literal["CONFIGURED", "NOT_CONFIGURED"] +AppLaunchStatusType = Literal["CONFIGURATION_INVALID", + "CONFIGURATION_IN_PROGRESS", + "DELTA_LAUNCH_FAILED", + "DELTA_LAUNCH_IN_PROGRESS", + "LAUNCHED", + "LAUNCH_FAILED", + "LAUNCH_IN_PROGRESS", + "LAUNCH_PENDING", + "PARTIALLY_LAUNCHED", + "READY_FOR_CONFIGURATION", + "READY_FOR_LAUNCH", + "TERMINATED", + "TERMINATE_FAILED", + "TERMINATE_IN_PROGRESS", + "VALIDATION_IN_PROGRESS",] +AppReplicationConfigurationStatusType = Literal["CONFIGURED", "NOT_CONFIGURED"] +AppReplicationStatusType = Literal["CONFIGURATION_INVALID", + "CONFIGURATION_IN_PROGRESS", + "DELTA_REPLICATED", + "DELTA_REPLICATION_FAILED", + "DELTA_REPLICATION_IN_PROGRESS", + "PARTIALLY_REPLICATED", + "READY_FOR_CONFIGURATION", + "READY_FOR_REPLICATION", + "REPLICATED", + "REPLICATION_FAILED", + "REPLICATION_IN_PROGRESS", + "REPLICATION_PENDING", + "REPLICATION_STOPPED", + "REPLICATION_STOPPING", + "REPLICATION_STOP_FAILED", + "VALIDATION_IN_PROGRESS",] +AppStatusType = Literal["ACTIVE", "CREATING", "DELETED", "DELETE_FAILED", "DELETING", "UPDATING"] +AppValidationStrategyType = Literal["SSM"] +ConnectorCapabilityType = Literal["HYPERV-MANAGER", "SCVMM", "SMS_OPTIMIZED", "SNAPSHOT_BATCHING", "VSPHERE"] +ConnectorStatusType = Literal["HEALTHY", "UNHEALTHY"] +GetConnectorsPaginatorName = Literal["get_connectors"] +GetReplicationJobsPaginatorName = Literal["get_replication_jobs"] +GetReplicationRunsPaginatorName = Literal["get_replication_runs"] +GetServersPaginatorName = Literal["get_servers"] +LicenseTypeType = Literal["AWS", "BYOL"] +ListAppsPaginatorName = Literal["list_apps"] +OutputFormatType = Literal["JSON", "YAML"] +ReplicationJobStateType = Literal["ACTIVE", + "COMPLETED", + "DELETED", + "DELETING", + "FAILED", + "FAILING", + "PAUSED_ON_FAILURE", + "PENDING",] +ReplicationRunStateType = Literal["ACTIVE", "COMPLETED", "DELETED", "DELETING", "FAILED", "MISSED", "PENDING"] +ReplicationRunTypeType = Literal["AUTOMATIC", "ON_DEMAND"] +ScriptTypeType = Literal["POWERSHELL_SCRIPT", "SHELL_SCRIPT"] +ServerCatalogStatusType = Literal["AVAILABLE", "DELETED", "EXPIRED", "IMPORTING", "NOT_IMPORTED"] +ServerTypeType = Literal["VIRTUAL_MACHINE"] +ServerValidationStrategyType = Literal["USERDATA"] +ValidationStatusType = Literal["FAILED", "IN_PROGRESS", "PENDING", "READY_FOR_VALIDATION", "SUCCEEDED"] +VmManagerTypeType = Literal["HYPERV-MANAGER", "SCVMM", "VSPHERE"] +SMSServiceName = Literal["sms"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_connectors", "get_replication_jobs", "get_replication_runs", "get_servers", "list_apps"] +RegionName = Literal["us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/sms_voice_classes.py b/aws_resource_validator/pydantic_models/sms_voice_classes.py new file mode 100644 index 00000000..c8ca3ac6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sms_voice_classes.py @@ -0,0 +1,111 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sms_voice_constants import * + +class CallInstructionsMessageTypeTypeDef(BaseModel): + Text: Optional[str] = None + +class CloudWatchLogsDestinationTypeDef(BaseModel): + IamRoleArn: Optional[str] = None + LogGroupArn: Optional[str] = None + +class CreateConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: Optional[str] = None + +class DeleteConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + +class DeleteConfigurationSetRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class KinesisFirehoseDestinationTypeDef(BaseModel): + DeliveryStreamArn: Optional[str] = None + IamRoleArn: Optional[str] = None + +class SnsDestinationTypeDef(BaseModel): + TopicArn: Optional[str] = None + +class GetConfigurationSetEventDestinationsRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ListConfigurationSetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + PageSize: Optional[str] = None + +class PlainTextMessageTypeTypeDef(BaseModel): + LanguageCode: Optional[str] = None + Text: Optional[str] = None + VoiceId: Optional[str] = None + +class SSMLMessageTypeTypeDef(BaseModel): + LanguageCode: Optional[str] = None + Text: Optional[str] = None + VoiceId: Optional[str] = None + +class EventDestinationDefinitionTypeDef(BaseModel): + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + MatchingEventTypes: Optional[Sequence[EventTypeType]] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + +class EventDestinationTypeDef(BaseModel): + CloudWatchLogsDestination: Optional[CloudWatchLogsDestinationTypeDef] = None + Enabled: Optional[bool] = None + KinesisFirehoseDestination: Optional[KinesisFirehoseDestinationTypeDef] = None + MatchingEventTypes: Optional[List[EventTypeType]] = None + Name: Optional[str] = None + SnsDestination: Optional[SnsDestinationTypeDef] = None + +class ListConfigurationSetsResponseTypeDef(BaseModel): + ConfigurationSets: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendVoiceMessageResponseTypeDef(BaseModel): + MessageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class VoiceMessageContentTypeDef(BaseModel): + CallInstructionsMessage: Optional[CallInstructionsMessageTypeTypeDef] = None + PlainTextMessage: Optional[PlainTextMessageTypeTypeDef] = None + SSMLMessage: Optional[SSMLMessageTypeTypeDef] = None + +class CreateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestination: Optional[EventDestinationDefinitionTypeDef] = None + EventDestinationName: Optional[str] = None + +class UpdateConfigurationSetEventDestinationRequestRequestTypeDef(BaseModel): + ConfigurationSetName: str + EventDestinationName: str + EventDestination: Optional[EventDestinationDefinitionTypeDef] = None + +class GetConfigurationSetEventDestinationsResponseTypeDef(BaseModel): + EventDestinations: List[EventDestinationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendVoiceMessageRequestRequestTypeDef(BaseModel): + CallerId: Optional[str] = None + ConfigurationSetName: Optional[str] = None + Content: Optional[VoiceMessageContentTypeDef] = None + DestinationPhoneNumber: Optional[str] = None + OriginationPhoneNumber: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/sms_voice_constants.py b/aws_resource_validator/pydantic_models/sms_voice_constants.py new file mode 100644 index 00000000..a07b2b22 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sms_voice_constants.py @@ -0,0 +1,389 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +EventTypeType = Literal["ANSWERED", "BUSY", "COMPLETED_CALL", "FAILED", "INITIATED_CALL", "NO_ANSWER", "RINGING"] +PinpointSMSVoiceServiceName = Literal["sms-voice"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/snow_device_management_classes.py b/aws_resource_validator/pydantic_models/snow_device_management_classes.py new file mode 100644 index 00000000..56c8ab9b --- /dev/null +++ b/aws_resource_validator/pydantic_models/snow_device_management_classes.py @@ -0,0 +1,264 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.snow_device_management_constants import * + +class CancelTaskInputRequestTypeDef(BaseModel): + taskId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CapacityTypeDef(BaseModel): + available: Optional[int] = None + name: Optional[str] = None + total: Optional[int] = None + unit: Optional[str] = None + used: Optional[int] = None + +class CommandTypeDef(BaseModel): + reboot: Optional[Mapping[str, Any]] = None + unlock: Optional[Mapping[str, Any]] = None + +class CpuOptionsTypeDef(BaseModel): + coreCount: Optional[int] = None + threadsPerCore: Optional[int] = None + +class DescribeDeviceEc2InputRequestTypeDef(BaseModel): + instanceIds: Sequence[str] + managedDeviceId: str + +class DescribeDeviceInputRequestTypeDef(BaseModel): + managedDeviceId: str + +class PhysicalNetworkInterfaceTypeDef(BaseModel): + defaultGateway: Optional[str] = None + ipAddress: Optional[str] = None + ipAddressAssignment: Optional[IpAddressAssignmentType] = None + macAddress: Optional[str] = None + netmask: Optional[str] = None + physicalConnectorType: Optional[PhysicalConnectorTypeType] = None + physicalNetworkInterfaceId: Optional[str] = None + +class SoftwareInformationTypeDef(BaseModel): + installState: Optional[str] = None + installedVersion: Optional[str] = None + installingVersion: Optional[str] = None + +class DescribeExecutionInputRequestTypeDef(BaseModel): + managedDeviceId: str + taskId: str + +class DescribeTaskInputRequestTypeDef(BaseModel): + taskId: str + +class DeviceSummaryTypeDef(BaseModel): + associatedWithJob: Optional[str] = None + managedDeviceArn: Optional[str] = None + managedDeviceId: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class EbsInstanceBlockDeviceTypeDef(BaseModel): + attachTime: Optional[datetime] = None + deleteOnTermination: Optional[bool] = None + status: Optional[AttachmentStatusType] = None + volumeId: Optional[str] = None + +class ExecutionSummaryTypeDef(BaseModel): + executionId: Optional[str] = None + managedDeviceId: Optional[str] = None + state: Optional[ExecutionStateType] = None + taskId: Optional[str] = None + +class InstanceStateTypeDef(BaseModel): + code: Optional[int] = None + name: Optional[InstanceStateNameType] = None + +class SecurityGroupIdentifierTypeDef(BaseModel): + groupId: Optional[str] = None + groupName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDeviceResourcesInputRequestTypeDef(BaseModel): + managedDeviceId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + type: Optional[str] = None + +class ResourceSummaryTypeDef(BaseModel): + resourceType: str + arn: Optional[str] = None + id: Optional[str] = None + +class ListDevicesInputRequestTypeDef(BaseModel): + jobId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListExecutionsInputRequestTypeDef(BaseModel): + taskId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + state: Optional[ExecutionStateType] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class ListTasksInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + state: Optional[TaskStateType] = None + +class TaskSummaryTypeDef(BaseModel): + taskId: str + state: Optional[TaskStateType] = None + tags: Optional[Dict[str, str]] = None + taskArn: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class CancelTaskOutputTypeDef(BaseModel): + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTaskOutputTypeDef(BaseModel): + taskArn: str + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExecutionOutputTypeDef(BaseModel): + executionId: str + lastUpdatedAt: datetime + managedDeviceId: str + startedAt: datetime + state: ExecutionStateType + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTaskOutputTypeDef(BaseModel): + completedAt: datetime + createdAt: datetime + description: str + lastUpdatedAt: datetime + state: TaskStateType + tags: Dict[str, str] + targets: List[str] + taskArn: str + taskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTaskInputRequestTypeDef(BaseModel): + command: CommandTypeDef + targets: Sequence[str] + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DescribeDeviceOutputTypeDef(BaseModel): + associatedWithJob: str + deviceCapacities: List[CapacityTypeDef] + deviceState: UnlockStateType + deviceType: str + lastReachedOutAt: datetime + lastUpdatedAt: datetime + managedDeviceArn: str + managedDeviceId: str + physicalNetworkInterfaces: List[PhysicalNetworkInterfaceTypeDef] + software: SoftwareInformationTypeDef + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicesOutputTypeDef(BaseModel): + devices: List[DeviceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceBlockDeviceMappingTypeDef(BaseModel): + deviceName: Optional[str] = None + ebs: Optional[EbsInstanceBlockDeviceTypeDef] = None + +class ListExecutionsOutputTypeDef(BaseModel): + executions: List[ExecutionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeviceResourcesInputListDeviceResourcesPaginateTypeDef(BaseModel): + managedDeviceId: str + type: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDevicesInputListDevicesPaginateTypeDef(BaseModel): + jobId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExecutionsInputListExecutionsPaginateTypeDef(BaseModel): + taskId: str + state: Optional[ExecutionStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTasksInputListTasksPaginateTypeDef(BaseModel): + state: Optional[TaskStateType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDeviceResourcesOutputTypeDef(BaseModel): + nextToken: str + resources: List[ResourceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTasksOutputTypeDef(BaseModel): + nextToken: str + tasks: List[TaskSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceTypeDef(BaseModel): + amiLaunchIndex: Optional[int] = None + blockDeviceMappings: Optional[List[InstanceBlockDeviceMappingTypeDef]] = None + cpuOptions: Optional[CpuOptionsTypeDef] = None + createdAt: Optional[datetime] = None + imageId: Optional[str] = None + instanceId: Optional[str] = None + instanceType: Optional[str] = None + privateIpAddress: Optional[str] = None + publicIpAddress: Optional[str] = None + rootDeviceName: Optional[str] = None + securityGroups: Optional[List[SecurityGroupIdentifierTypeDef]] = None + state: Optional[InstanceStateTypeDef] = None + updatedAt: Optional[datetime] = None + +class InstanceSummaryTypeDef(BaseModel): + instance: Optional[InstanceTypeDef] = None + lastUpdatedAt: Optional[datetime] = None + +class DescribeDeviceEc2OutputTypeDef(BaseModel): + instances: List[InstanceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/snow_device_management_constants.py b/aws_resource_validator/pydantic_models/snow_device_management_constants.py new file mode 100644 index 00000000..8e471f96 --- /dev/null +++ b/aws_resource_validator/pydantic_models/snow_device_management_constants.py @@ -0,0 +1,400 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AttachmentStatusType = Literal["ATTACHED", "ATTACHING", "DETACHED", "DETACHING"] +ExecutionStateType = Literal["CANCELED", "FAILED", "IN_PROGRESS", "QUEUED", "REJECTED", "SUCCEEDED", "TIMED_OUT"] +InstanceStateNameType = Literal["PENDING", "RUNNING", "SHUTTING_DOWN", "STOPPED", "STOPPING", "TERMINATED"] +IpAddressAssignmentType = Literal["DHCP", "STATIC"] +ListDeviceResourcesPaginatorName = Literal["list_device_resources"] +ListDevicesPaginatorName = Literal["list_devices"] +ListExecutionsPaginatorName = Literal["list_executions"] +ListTasksPaginatorName = Literal["list_tasks"] +PhysicalConnectorTypeType = Literal["QSFP", "RJ45", "RJ45_2", "SFP_PLUS", "WIFI"] +TaskStateType = Literal["CANCELED", "COMPLETED", "IN_PROGRESS"] +UnlockStateType = Literal["LOCKED", "UNLOCKED", "UNLOCKING"] +SnowDeviceManagementServiceName = Literal["snow-device-management"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_device_resources", "list_devices", "list_executions", "list_tasks"] diff --git a/aws_resource_validator/pydantic_models/snowball_classes.py b/aws_resource_validator/pydantic_models/snowball_classes.py new file mode 100644 index 00000000..4948b092 --- /dev/null +++ b/aws_resource_validator/pydantic_models/snowball_classes.py @@ -0,0 +1,521 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.snowball_constants import * + +class AddressTypeDef(BaseModel): + AddressId: Optional[str] = None + Name: Optional[str] = None + Company: Optional[str] = None + Street1: Optional[str] = None + Street2: Optional[str] = None + Street3: Optional[str] = None + City: Optional[str] = None + StateOrProvince: Optional[str] = None + PrefectureOrDistrict: Optional[str] = None + Landmark: Optional[str] = None + Country: Optional[str] = None + PostalCode: Optional[str] = None + PhoneNumber: Optional[str] = None + IsRestricted: Optional[bool] = None + Type: Optional[AddressTypeType] = None + +class CancelClusterRequestRequestTypeDef(BaseModel): + ClusterId: str + +class CancelJobRequestRequestTypeDef(BaseModel): + JobId: str + +class ClusterListEntryTypeDef(BaseModel): + ClusterId: Optional[str] = None + ClusterState: Optional[ClusterStateType] = None + CreationDate: Optional[datetime] = None + Description: Optional[str] = None + +class NotificationOutputTypeDef(BaseModel): + SnsTopicARN: Optional[str] = None + JobStatesToNotify: Optional[List[JobStateType]] = None + NotifyAll: Optional[bool] = None + DevicePickupSnsTopicARN: Optional[str] = None + +class CompatibleImageTypeDef(BaseModel): + AmiId: Optional[str] = None + Name: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class NotificationTypeDef(BaseModel): + SnsTopicARN: Optional[str] = None + JobStatesToNotify: Optional[Sequence[JobStateType]] = None + NotifyAll: Optional[bool] = None + DevicePickupSnsTopicARN: Optional[str] = None + +class JobListEntryTypeDef(BaseModel): + JobId: Optional[str] = None + JobState: Optional[JobStateType] = None + IsMaster: Optional[bool] = None + JobType: Optional[JobTypeType] = None + SnowballType: Optional[SnowballTypeType] = None + CreationDate: Optional[datetime] = None + Description: Optional[str] = None + +class CreateLongTermPricingRequestRequestTypeDef(BaseModel): + LongTermPricingType: LongTermPricingTypeType + SnowballType: SnowballTypeType + IsLongTermPricingAutoRenew: Optional[bool] = None + +class CreateReturnShippingLabelRequestRequestTypeDef(BaseModel): + JobId: str + ShippingOption: Optional[ShippingOptionType] = None + +class DataTransferTypeDef(BaseModel): + BytesTransferred: Optional[int] = None + ObjectsTransferred: Optional[int] = None + TotalBytes: Optional[int] = None + TotalObjects: Optional[int] = None + +class ServiceVersionTypeDef(BaseModel): + Version: Optional[str] = None + +class DescribeAddressRequestRequestTypeDef(BaseModel): + AddressId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAddressesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeClusterRequestRequestTypeDef(BaseModel): + ClusterId: str + +class DescribeJobRequestRequestTypeDef(BaseModel): + JobId: str + +class DescribeReturnShippingLabelRequestRequestTypeDef(BaseModel): + JobId: str + +class EKSOnDeviceServiceConfigurationTypeDef(BaseModel): + KubernetesVersion: Optional[str] = None + EKSAnywhereVersion: Optional[str] = None + +class Ec2AmiResourceTypeDef(BaseModel): + AmiId: str + SnowballAmiId: Optional[str] = None + +class EventTriggerDefinitionTypeDef(BaseModel): + EventResourceARN: Optional[str] = None + +class GetJobManifestRequestRequestTypeDef(BaseModel): + JobId: str + +class GetJobUnlockCodeRequestRequestTypeDef(BaseModel): + JobId: str + +class GetSoftwareUpdatesRequestRequestTypeDef(BaseModel): + JobId: str + +class INDTaxDocumentsTypeDef(BaseModel): + GSTIN: Optional[str] = None + +class JobLogsTypeDef(BaseModel): + JobCompletionReportURI: Optional[str] = None + JobSuccessLogURI: Optional[str] = None + JobFailureLogURI: Optional[str] = None + +class PickupDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + PhoneNumber: Optional[str] = None + Email: Optional[str] = None + IdentificationNumber: Optional[str] = None + IdentificationExpirationDate: Optional[datetime] = None + IdentificationIssuingOrg: Optional[str] = None + DevicePickupId: Optional[str] = None + +class KeyRangeTypeDef(BaseModel): + BeginMarker: Optional[str] = None + EndMarker: Optional[str] = None + +class ListClusterJobsRequestRequestTypeDef(BaseModel): + ClusterId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListClustersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListCompatibleImagesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListJobsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListLongTermPricingRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class LongTermPricingListEntryTypeDef(BaseModel): + LongTermPricingId: Optional[str] = None + LongTermPricingEndDate: Optional[datetime] = None + LongTermPricingStartDate: Optional[datetime] = None + LongTermPricingType: Optional[LongTermPricingTypeType] = None + CurrentActiveJob: Optional[str] = None + ReplacementJob: Optional[str] = None + IsLongTermPricingAutoRenew: Optional[bool] = None + LongTermPricingStatus: Optional[str] = None + SnowballType: Optional[SnowballTypeType] = None + JobIds: Optional[List[str]] = None + +class ListPickupLocationsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class NFSOnDeviceServiceConfigurationTypeDef(BaseModel): + StorageLimit: Optional[int] = None + StorageUnit: Optional[Literal["TB"]] = None + +class S3OnDeviceServiceConfigurationTypeDef(BaseModel): + StorageLimit: Optional[float] = None + StorageUnit: Optional[Literal["TB"]] = None + ServiceSize: Optional[int] = None + FaultTolerance: Optional[int] = None + +class TGWOnDeviceServiceConfigurationTypeDef(BaseModel): + StorageLimit: Optional[int] = None + StorageUnit: Optional[Literal["TB"]] = None + +class TargetOnDeviceServiceTypeDef(BaseModel): + ServiceName: Optional[DeviceServiceNameType] = None + TransferOption: Optional[TransferOptionType] = None + +class ShipmentTypeDef(BaseModel): + Status: Optional[str] = None + TrackingNumber: Optional[str] = None + +class WirelessConnectionTypeDef(BaseModel): + IsWifiEnabled: Optional[bool] = None + +class UpdateJobShipmentStateRequestRequestTypeDef(BaseModel): + JobId: str + ShipmentState: ShipmentStateType + +class UpdateLongTermPricingRequestRequestTypeDef(BaseModel): + LongTermPricingId: str + ReplacementJob: Optional[str] = None + IsLongTermPricingAutoRenew: Optional[bool] = None + +class CreateAddressRequestRequestTypeDef(BaseModel): + Address: AddressTypeDef + +class CreateAddressResultTypeDef(BaseModel): + AddressId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateJobResultTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLongTermPricingResultTypeDef(BaseModel): + LongTermPricingId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReturnShippingLabelResultTypeDef(BaseModel): + Status: ShippingLabelStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddressResultTypeDef(BaseModel): + Address: AddressTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAddressesResultTypeDef(BaseModel): + Addresses: List[AddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeReturnShippingLabelResultTypeDef(BaseModel): + Status: ShippingLabelStatusType + ExpirationDate: datetime + ReturnShippingLabelURI: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobManifestResultTypeDef(BaseModel): + ManifestURI: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetJobUnlockCodeResultTypeDef(BaseModel): + UnlockCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSnowballUsageResultTypeDef(BaseModel): + SnowballLimit: int + SnowballsInUse: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetSoftwareUpdatesResultTypeDef(BaseModel): + UpdatesURI: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListClustersResultTypeDef(BaseModel): + ClusterListEntries: List[ClusterListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCompatibleImagesResultTypeDef(BaseModel): + CompatibleImages: List[CompatibleImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPickupLocationsResultTypeDef(BaseModel): + Addresses: List[AddressTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateClusterResultTypeDef(BaseModel): + ClusterId: str + JobListEntries: List[JobListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListClusterJobsResultTypeDef(BaseModel): + JobListEntries: List[JobListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListJobsResultTypeDef(BaseModel): + JobListEntries: List[JobListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DependentServiceTypeDef(BaseModel): + ServiceName: Optional[ServiceNameType] = None + ServiceVersion: Optional[ServiceVersionTypeDef] = None + +class DescribeAddressesRequestDescribeAddressesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClusterJobsRequestListClusterJobsPaginateTypeDef(BaseModel): + ClusterId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClustersRequestListClustersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCompatibleImagesRequestListCompatibleImagesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListJobsRequestListJobsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLongTermPricingRequestListLongTermPricingPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LambdaResourceOutputTypeDef(BaseModel): + LambdaArn: Optional[str] = None + EventTriggers: Optional[List[EventTriggerDefinitionTypeDef]] = None + +class LambdaResourceTypeDef(BaseModel): + LambdaArn: Optional[str] = None + EventTriggers: Optional[Sequence[EventTriggerDefinitionTypeDef]] = None + +class TaxDocumentsTypeDef(BaseModel): + IND: Optional[INDTaxDocumentsTypeDef] = None + +class ListLongTermPricingResultTypeDef(BaseModel): + LongTermPricingEntries: List[LongTermPricingListEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class OnDeviceServiceConfigurationTypeDef(BaseModel): + NFSOnDeviceService: Optional[NFSOnDeviceServiceConfigurationTypeDef] = None + TGWOnDeviceService: Optional[TGWOnDeviceServiceConfigurationTypeDef] = None + EKSOnDeviceService: Optional[EKSOnDeviceServiceConfigurationTypeDef] = None + S3OnDeviceService: Optional[S3OnDeviceServiceConfigurationTypeDef] = None + +class PickupDetailsTypeDef(BaseModel): + Name: Optional[str] = None + PhoneNumber: Optional[str] = None + Email: Optional[str] = None + IdentificationNumber: Optional[str] = None + IdentificationExpirationDate: Optional[TimestampTypeDef] = None + IdentificationIssuingOrg: Optional[str] = None + DevicePickupId: Optional[str] = None + +class S3ResourceOutputTypeDef(BaseModel): + BucketArn: Optional[str] = None + KeyRange: Optional[KeyRangeTypeDef] = None + TargetOnDeviceServices: Optional[List[TargetOnDeviceServiceTypeDef]] = None + +class S3ResourceTypeDef(BaseModel): + BucketArn: Optional[str] = None + KeyRange: Optional[KeyRangeTypeDef] = None + TargetOnDeviceServices: Optional[Sequence[TargetOnDeviceServiceTypeDef]] = None + +class ShippingDetailsTypeDef(BaseModel): + ShippingOption: Optional[ShippingOptionType] = None + InboundShipment: Optional[ShipmentTypeDef] = None + OutboundShipment: Optional[ShipmentTypeDef] = None + +class SnowconeDeviceConfigurationTypeDef(BaseModel): + WirelessConnection: Optional[WirelessConnectionTypeDef] = None + +class ListServiceVersionsRequestRequestTypeDef(BaseModel): + ServiceName: ServiceNameType + DependentServices: Optional[Sequence[DependentServiceTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServiceVersionsResultTypeDef(BaseModel): + ServiceVersions: List[ServiceVersionTypeDef] + ServiceName: ServiceNameType + DependentServices: List[DependentServiceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class JobResourceOutputTypeDef(BaseModel): + S3Resources: Optional[List[S3ResourceOutputTypeDef]] = None + LambdaResources: Optional[List[LambdaResourceOutputTypeDef]] = None + Ec2AmiResources: Optional[List[Ec2AmiResourceTypeDef]] = None + +class JobResourceTypeDef(BaseModel): + S3Resources: Optional[Sequence[S3ResourceTypeDef]] = None + LambdaResources: Optional[Sequence[LambdaResourceTypeDef]] = None + Ec2AmiResources: Optional[Sequence[Ec2AmiResourceTypeDef]] = None + +class DeviceConfigurationTypeDef(BaseModel): + SnowconeDeviceConfiguration: Optional[SnowconeDeviceConfigurationTypeDef] = None + +class ClusterMetadataTypeDef(BaseModel): + ClusterId: Optional[str] = None + Description: Optional[str] = None + KmsKeyARN: Optional[str] = None + RoleARN: Optional[str] = None + ClusterState: Optional[ClusterStateType] = None + JobType: Optional[JobTypeType] = None + SnowballType: Optional[SnowballTypeType] = None + CreationDate: Optional[datetime] = None + Resources: Optional[JobResourceOutputTypeDef] = None + AddressId: Optional[str] = None + ShippingOption: Optional[ShippingOptionType] = None + Notification: Optional[NotificationOutputTypeDef] = None + ForwardingAddressId: Optional[str] = None + TaxDocuments: Optional[TaxDocumentsTypeDef] = None + OnDeviceServiceConfiguration: Optional[OnDeviceServiceConfigurationTypeDef] = None + +class CreateClusterRequestRequestTypeDef(BaseModel): + JobType: JobTypeType + AddressId: str + SnowballType: SnowballTypeType + ShippingOption: ShippingOptionType + Resources: Optional[JobResourceTypeDef] = None + OnDeviceServiceConfiguration: Optional[OnDeviceServiceConfigurationTypeDef] = None + Description: Optional[str] = None + KmsKeyARN: Optional[str] = None + RoleARN: Optional[str] = None + Notification: Optional[NotificationTypeDef] = None + ForwardingAddressId: Optional[str] = None + TaxDocuments: Optional[TaxDocumentsTypeDef] = None + RemoteManagement: Optional[RemoteManagementType] = None + InitialClusterSize: Optional[int] = None + ForceCreateJobs: Optional[bool] = None + LongTermPricingIds: Optional[Sequence[str]] = None + SnowballCapacityPreference: Optional[SnowballCapacityType] = None + +class UpdateClusterRequestRequestTypeDef(BaseModel): + ClusterId: str + RoleARN: Optional[str] = None + Description: Optional[str] = None + Resources: Optional[JobResourceTypeDef] = None + OnDeviceServiceConfiguration: Optional[OnDeviceServiceConfigurationTypeDef] = None + AddressId: Optional[str] = None + ShippingOption: Optional[ShippingOptionType] = None + Notification: Optional[NotificationTypeDef] = None + ForwardingAddressId: Optional[str] = None + +class UpdateJobRequestRequestTypeDef(BaseModel): + JobId: str + RoleARN: Optional[str] = None + Notification: Optional[NotificationTypeDef] = None + Resources: Optional[JobResourceTypeDef] = None + OnDeviceServiceConfiguration: Optional[OnDeviceServiceConfigurationTypeDef] = None + AddressId: Optional[str] = None + ShippingOption: Optional[ShippingOptionType] = None + Description: Optional[str] = None + SnowballCapacityPreference: Optional[SnowballCapacityType] = None + ForwardingAddressId: Optional[str] = None + PickupDetails: Optional[PickupDetailsTypeDef] = None + +class CreateJobRequestRequestTypeDef(BaseModel): + JobType: Optional[JobTypeType] = None + Resources: Optional[JobResourceTypeDef] = None + OnDeviceServiceConfiguration: Optional[OnDeviceServiceConfigurationTypeDef] = None + Description: Optional[str] = None + AddressId: Optional[str] = None + KmsKeyARN: Optional[str] = None + RoleARN: Optional[str] = None + SnowballCapacityPreference: Optional[SnowballCapacityType] = None + ShippingOption: Optional[ShippingOptionType] = None + Notification: Optional[NotificationTypeDef] = None + ClusterId: Optional[str] = None + SnowballType: Optional[SnowballTypeType] = None + ForwardingAddressId: Optional[str] = None + TaxDocuments: Optional[TaxDocumentsTypeDef] = None + DeviceConfiguration: Optional[DeviceConfigurationTypeDef] = None + RemoteManagement: Optional[RemoteManagementType] = None + LongTermPricingId: Optional[str] = None + ImpactLevel: Optional[ImpactLevelType] = None + PickupDetails: Optional[PickupDetailsTypeDef] = None + +class JobMetadataTypeDef(BaseModel): + JobId: Optional[str] = None + JobState: Optional[JobStateType] = None + JobType: Optional[JobTypeType] = None + SnowballType: Optional[SnowballTypeType] = None + CreationDate: Optional[datetime] = None + Resources: Optional[JobResourceOutputTypeDef] = None + Description: Optional[str] = None + KmsKeyARN: Optional[str] = None + RoleARN: Optional[str] = None + AddressId: Optional[str] = None + ShippingDetails: Optional[ShippingDetailsTypeDef] = None + SnowballCapacityPreference: Optional[SnowballCapacityType] = None + Notification: Optional[NotificationOutputTypeDef] = None + DataTransferProgress: Optional[DataTransferTypeDef] = None + JobLogInfo: Optional[JobLogsTypeDef] = None + ClusterId: Optional[str] = None + ForwardingAddressId: Optional[str] = None + TaxDocuments: Optional[TaxDocumentsTypeDef] = None + DeviceConfiguration: Optional[DeviceConfigurationTypeDef] = None + RemoteManagement: Optional[RemoteManagementType] = None + LongTermPricingId: Optional[str] = None + OnDeviceServiceConfiguration: Optional[OnDeviceServiceConfigurationTypeDef] = None + ImpactLevel: Optional[ImpactLevelType] = None + PickupDetails: Optional[PickupDetailsOutputTypeDef] = None + SnowballId: Optional[str] = None + +class DescribeClusterResultTypeDef(BaseModel): + ClusterMetadata: ClusterMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeJobResultTypeDef(BaseModel): + JobMetadata: JobMetadataTypeDef + SubJobMetadata: List[JobMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/snowball_constants.py b/aws_resource_validator/pydantic_models/snowball_constants.py new file mode 100644 index 00000000..475aa52b --- /dev/null +++ b/aws_resource_validator/pydantic_models/snowball_constants.py @@ -0,0 +1,475 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AddressTypeType = Literal["AWS_SHIP", "CUST_PICKUP"] +ClusterStateType = Literal["AwaitingQuorum", "Cancelled", "Complete", "InUse", "Pending"] +DescribeAddressesPaginatorName = Literal["describe_addresses"] +DeviceServiceNameType = Literal["NFS_ON_DEVICE_SERVICE", "S3_ON_DEVICE_SERVICE"] +ImpactLevelType = Literal["IL2", "IL4", "IL5", "IL6", "IL99"] +JobStateType = Literal["Cancelled", + "Complete", + "InProgress", + "InTransitToAWS", + "InTransitToCustomer", + "Listing", + "New", + "Pending", + "PreparingAppliance", + "PreparingShipment", + "WithAWS", + "WithAWSSortingFacility", + "WithCustomer",] +JobTypeType = Literal["EXPORT", "IMPORT", "LOCAL_USE"] +ListClusterJobsPaginatorName = Literal["list_cluster_jobs"] +ListClustersPaginatorName = Literal["list_clusters"] +ListCompatibleImagesPaginatorName = Literal["list_compatible_images"] +ListJobsPaginatorName = Literal["list_jobs"] +ListLongTermPricingPaginatorName = Literal["list_long_term_pricing"] +LongTermPricingTypeType = Literal["OneMonth", "OneYear", "ThreeYear"] +RemoteManagementType = Literal["INSTALLED_AUTOSTART", "INSTALLED_ONLY", "NOT_INSTALLED"] +ServiceNameType = Literal["EKS_ANYWHERE", "KUBERNETES"] +ShipmentStateType = Literal["RECEIVED", "RETURNED"] +ShippingLabelStatusType = Literal["Failed", "InProgress", "Succeeded", "TimedOut"] +ShippingOptionType = Literal["EXPRESS", "NEXT_DAY", "SECOND_DAY", "STANDARD"] +SnowballCapacityType = Literal["NoPreference", "T100", "T13", "T14", "T240", "T32", "T42", "T50", "T8", "T80", "T98"] +SnowballTypeType = Literal["EDGE", + "EDGE_C", + "EDGE_CG", + "EDGE_S", + "RACK_5U_C", + "SNC1_HDD", + "SNC1_SSD", + "STANDARD", + "V3_5C", + "V3_5S",] +StorageUnitType = Literal["TB"] +TransferOptionType = Literal["EXPORT", "IMPORT", "LOCAL_USE"] +SnowballServiceName = Literal["snowball"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_addresses", + "list_cluster_jobs", + "list_clusters", + "list_compatible_images", + "list_jobs", + "list_long_term_pricing",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +NotificationUnionTypeDef = Union['NotificationTypeDef', 'NotificationOutputTypeDef'] +PickupDetailsUnionTypeDef = Union['PickupDetailsTypeDef', 'PickupDetailsOutputTypeDef'] +JobResourceUnionTypeDef = Union['JobResourceTypeDef', 'JobResourceOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/sns_classes.py b/aws_resource_validator/pydantic_models/sns_classes.py new file mode 100644 index 00000000..07ba17c2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sns_classes.py @@ -0,0 +1,448 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sns_constants import * + +class AddPermissionInputRequestTypeDef(BaseModel): + TopicArn: str + Label: str + AWSAccountId: Sequence[str] + ActionName: Sequence[str] + +class AddPermissionInputTopicAddPermissionTypeDef(BaseModel): + Label: str + AWSAccountId: Sequence[str] + ActionName: Sequence[str] + +class BatchResultErrorEntryTypeDef(BaseModel): + Id: str + Code: str + SenderFault: bool + Message: Optional[str] = None + +class CheckIfPhoneNumberIsOptedOutInputRequestTypeDef(BaseModel): + phoneNumber: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ConfirmSubscriptionInputRequestTypeDef(BaseModel): + TopicArn: str + Token: str + AuthenticateOnUnsubscribe: Optional[str] = None + +class ConfirmSubscriptionInputTopicConfirmSubscriptionTypeDef(BaseModel): + Token: str + AuthenticateOnUnsubscribe: Optional[str] = None + +class CreatePlatformApplicationInputRequestTypeDef(BaseModel): + Name: str + Platform: str + Attributes: Mapping[str, str] + +class CreatePlatformApplicationInputServiceResourceCreatePlatformApplicationTypeDef(BaseModel): + Name: str + Platform: str + Attributes: Mapping[str, str] + +class CreatePlatformEndpointInputPlatformApplicationCreatePlatformEndpointTypeDef(BaseModel): + Token: str + CustomUserData: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + +class CreatePlatformEndpointInputRequestTypeDef(BaseModel): + PlatformApplicationArn: str + Token: str + CustomUserData: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + +class CreateSMSSandboxPhoneNumberInputRequestTypeDef(BaseModel): + PhoneNumber: str + LanguageCode: Optional[LanguageCodeStringType] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteEndpointInputRequestTypeDef(BaseModel): + EndpointArn: str + +class DeletePlatformApplicationInputRequestTypeDef(BaseModel): + PlatformApplicationArn: str + +class DeleteSMSSandboxPhoneNumberInputRequestTypeDef(BaseModel): + PhoneNumber: str + +class DeleteTopicInputRequestTypeDef(BaseModel): + TopicArn: str + +class EndpointTypeDef(BaseModel): + EndpointArn: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + +class GetDataProtectionPolicyInputRequestTypeDef(BaseModel): + ResourceArn: str + +class GetEndpointAttributesInputRequestTypeDef(BaseModel): + EndpointArn: str + +class GetPlatformApplicationAttributesInputRequestTypeDef(BaseModel): + PlatformApplicationArn: str + +class GetSMSAttributesInputRequestTypeDef(BaseModel): + attributes: Optional[Sequence[str]] = None + +class GetSubscriptionAttributesInputRequestTypeDef(BaseModel): + SubscriptionArn: str + +class GetTopicAttributesInputRequestTypeDef(BaseModel): + TopicArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListEndpointsByPlatformApplicationInputRequestTypeDef(BaseModel): + PlatformApplicationArn: str + NextToken: Optional[str] = None + +class ListOriginationNumbersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PhoneNumberInformationTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + PhoneNumber: Optional[str] = None + Status: Optional[str] = None + Iso2CountryCode: Optional[str] = None + RouteType: Optional[RouteTypeType] = None + NumberCapabilities: Optional[List[NumberCapabilityType]] = None + +class ListPhoneNumbersOptedOutInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class ListPlatformApplicationsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class PlatformApplicationTypeDef(BaseModel): + PlatformApplicationArn: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + +class ListSMSSandboxPhoneNumbersInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class SMSSandboxPhoneNumberTypeDef(BaseModel): + PhoneNumber: Optional[str] = None + Status: Optional[SMSSandboxPhoneNumberVerificationStatusType] = None + +class ListSubscriptionsByTopicInputRequestTypeDef(BaseModel): + TopicArn: str + NextToken: Optional[str] = None + +class SubscriptionTypeDef(BaseModel): + SubscriptionArn: Optional[str] = None + Owner: Optional[str] = None + Protocol: Optional[str] = None + Endpoint: Optional[str] = None + TopicArn: Optional[str] = None + +class ListSubscriptionsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListTopicsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class TopicTypeDef(BaseModel): + TopicArn: Optional[str] = None + +class OptInPhoneNumberInputRequestTypeDef(BaseModel): + phoneNumber: str + +class PublishBatchResultEntryTypeDef(BaseModel): + Id: Optional[str] = None + MessageId: Optional[str] = None + SequenceNumber: Optional[str] = None + +class PutDataProtectionPolicyInputRequestTypeDef(BaseModel): + ResourceArn: str + DataProtectionPolicy: str + +class RemovePermissionInputRequestTypeDef(BaseModel): + TopicArn: str + Label: str + +class RemovePermissionInputTopicRemovePermissionTypeDef(BaseModel): + Label: str + +class SetEndpointAttributesInputPlatformEndpointSetAttributesTypeDef(BaseModel): + Attributes: Mapping[str, str] + +class SetEndpointAttributesInputRequestTypeDef(BaseModel): + EndpointArn: str + Attributes: Mapping[str, str] + +class SetPlatformApplicationAttributesInputPlatformApplicationSetAttributesTypeDef(BaseModel): + Attributes: Mapping[str, str] + +class SetPlatformApplicationAttributesInputRequestTypeDef(BaseModel): + PlatformApplicationArn: str + Attributes: Mapping[str, str] + +class SetSMSAttributesInputRequestTypeDef(BaseModel): + attributes: Mapping[str, str] + +class SetSubscriptionAttributesInputRequestTypeDef(BaseModel): + SubscriptionArn: str + AttributeName: str + AttributeValue: Optional[str] = None + +class SetSubscriptionAttributesInputSubscriptionSetAttributesTypeDef(BaseModel): + AttributeName: str + AttributeValue: Optional[str] = None + +class SetTopicAttributesInputRequestTypeDef(BaseModel): + TopicArn: str + AttributeName: str + AttributeValue: Optional[str] = None + +class SetTopicAttributesInputTopicSetAttributesTypeDef(BaseModel): + AttributeName: str + AttributeValue: Optional[str] = None + +class SubscribeInputRequestTypeDef(BaseModel): + TopicArn: str + Protocol: str + Endpoint: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + ReturnSubscriptionArn: Optional[bool] = None + +class SubscribeInputTopicSubscribeTypeDef(BaseModel): + Protocol: str + Endpoint: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + ReturnSubscriptionArn: Optional[bool] = None + +class UnsubscribeInputRequestTypeDef(BaseModel): + SubscriptionArn: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class VerifySMSSandboxPhoneNumberInputRequestTypeDef(BaseModel): + PhoneNumber: str + OneTimePassword: str + +class MessageAttributeValueTypeDef(BaseModel): + DataType: str + StringValue: Optional[str] = None + BinaryValue: Optional[BlobTypeDef] = None + +class CheckIfPhoneNumberIsOptedOutResponseTypeDef(BaseModel): + isOptedOut: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ConfirmSubscriptionResponseTypeDef(BaseModel): + SubscriptionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateEndpointResponseTypeDef(BaseModel): + EndpointArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePlatformApplicationResponseTypeDef(BaseModel): + PlatformApplicationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicResponseTypeDef(BaseModel): + TopicArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetDataProtectionPolicyResponseTypeDef(BaseModel): + DataProtectionPolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetEndpointAttributesResponseTypeDef(BaseModel): + Attributes: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetPlatformApplicationAttributesResponseTypeDef(BaseModel): + Attributes: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSMSAttributesResponseTypeDef(BaseModel): + attributes: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSMSSandboxAccountStatusResultTypeDef(BaseModel): + IsInSandbox: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetSubscriptionAttributesResponseTypeDef(BaseModel): + Attributes: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTopicAttributesResponseTypeDef(BaseModel): + Attributes: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPhoneNumbersOptedOutResponseTypeDef(BaseModel): + phoneNumbers: List[str] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PublishResponseTypeDef(BaseModel): + MessageId: str + SequenceNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class SubscribeResponseTypeDef(BaseModel): + SubscriptionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTopicInputRequestTypeDef(BaseModel): + Name: str + Attributes: Optional[Mapping[str, str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataProtectionPolicy: Optional[str] = None + +class CreateTopicInputServiceResourceCreateTopicTypeDef(BaseModel): + Name: str + Attributes: Optional[Mapping[str, str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataProtectionPolicy: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class ListEndpointsByPlatformApplicationResponseTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListOriginationNumbersRequestListOriginationNumbersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPhoneNumbersOptedOutInputListPhoneNumbersOptedOutPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPlatformApplicationsInputListPlatformApplicationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSMSSandboxPhoneNumbersInputListSMSSandboxPhoneNumbersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionsByTopicInputListSubscriptionsByTopicPaginateTypeDef(BaseModel): + TopicArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscriptionsInputListSubscriptionsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTopicsInputListTopicsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOriginationNumbersResultTypeDef(BaseModel): + PhoneNumbers: List[PhoneNumberInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListPlatformApplicationsResponseTypeDef(BaseModel): + PlatformApplications: List[PlatformApplicationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSMSSandboxPhoneNumbersResultTypeDef(BaseModel): + PhoneNumbers: List[SMSSandboxPhoneNumberTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSubscriptionsByTopicResponseTypeDef(BaseModel): + Subscriptions: List[SubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListSubscriptionsResponseTypeDef(BaseModel): + Subscriptions: List[SubscriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTopicsResponseTypeDef(BaseModel): + Topics: List[TopicTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PublishBatchResponseTypeDef(BaseModel): + Successful: List[PublishBatchResultEntryTypeDef] + Failed: List[BatchResultErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PublishBatchRequestEntryTypeDef(BaseModel): + Id: str + Message: str + Subject: Optional[str] = None + MessageStructure: Optional[str] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class PublishInputPlatformEndpointPublishTypeDef(BaseModel): + Message: str + TopicArn: Optional[str] = None + PhoneNumber: Optional[str] = None + Subject: Optional[str] = None + MessageStructure: Optional[str] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class PublishInputRequestTypeDef(BaseModel): + Message: str + TopicArn: Optional[str] = None + TargetArn: Optional[str] = None + PhoneNumber: Optional[str] = None + Subject: Optional[str] = None + MessageStructure: Optional[str] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class PublishInputTopicPublishTypeDef(BaseModel): + Message: str + TargetArn: Optional[str] = None + PhoneNumber: Optional[str] = None + Subject: Optional[str] = None + MessageStructure: Optional[str] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class PublishBatchInputRequestTypeDef(BaseModel): + TopicArn: str + PublishBatchRequestEntries: Sequence[PublishBatchRequestEntryTypeDef] + diff --git a/aws_resource_validator/pydantic_models/sns_constants.py b/aws_resource_validator/pydantic_models/sns_constants.py new file mode 100644 index 00000000..6cfc5ccb --- /dev/null +++ b/aws_resource_validator/pydantic_models/sns_constants.py @@ -0,0 +1,459 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +LanguageCodeStringType = Literal["de-DE", + "en-GB", + "en-US", + "es-419", + "es-ES", + "fr-CA", + "fr-FR", + "it-IT", + "ja-JP", + "kr-KR", + "pt-BR", + "zh-CN", + "zh-TW",] +ListEndpointsByPlatformApplicationPaginatorName = Literal["list_endpoints_by_platform_application"] +ListOriginationNumbersPaginatorName = Literal["list_origination_numbers"] +ListPhoneNumbersOptedOutPaginatorName = Literal["list_phone_numbers_opted_out"] +ListPlatformApplicationsPaginatorName = Literal["list_platform_applications"] +ListSMSSandboxPhoneNumbersPaginatorName = Literal["list_sms_sandbox_phone_numbers"] +ListSubscriptionsByTopicPaginatorName = Literal["list_subscriptions_by_topic"] +ListSubscriptionsPaginatorName = Literal["list_subscriptions"] +ListTopicsPaginatorName = Literal["list_topics"] +NumberCapabilityType = Literal["MMS", "SMS", "VOICE"] +RouteTypeType = Literal["Premium", "Promotional", "Transactional"] +SMSSandboxPhoneNumberVerificationStatusType = Literal["Pending", "Verified"] +SNSServiceName = Literal["sns"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_endpoints_by_platform_application", + "list_origination_numbers", + "list_phone_numbers_opted_out", + "list_platform_applications", + "list_sms_sandbox_phone_numbers", + "list_subscriptions", + "list_subscriptions_by_topic", + "list_topics",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/sqs_classes.py b/aws_resource_validator/pydantic_models/sqs_classes.py new file mode 100644 index 00000000..6ba150ef --- /dev/null +++ b/aws_resource_validator/pydantic_models/sqs_classes.py @@ -0,0 +1,342 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sqs_constants import * + +class AddPermissionRequestQueueAddPermissionTypeDef(BaseModel): + Label: str + AWSAccountIds: Sequence[str] + Actions: Sequence[str] + +class AddPermissionRequestRequestTypeDef(BaseModel): + QueueUrl: str + Label: str + AWSAccountIds: Sequence[str] + Actions: Sequence[str] + +class BatchResultErrorEntryTypeDef(BaseModel): + Id: str + SenderFault: bool + Code: str + Message: Optional[str] = None + +class CancelMessageMoveTaskRequestRequestTypeDef(BaseModel): + TaskHandle: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ChangeMessageVisibilityBatchRequestEntryTypeDef(BaseModel): + Id: str + ReceiptHandle: str + VisibilityTimeout: Optional[int] = None + +class ChangeMessageVisibilityBatchResultEntryTypeDef(BaseModel): + Id: str + +class ChangeMessageVisibilityRequestMessageChangeVisibilityTypeDef(BaseModel): + VisibilityTimeout: int + +class ChangeMessageVisibilityRequestRequestTypeDef(BaseModel): + QueueUrl: str + ReceiptHandle: str + VisibilityTimeout: int + +class CreateQueueRequestRequestTypeDef(BaseModel): + QueueName: str + Attributes: Optional[Mapping[QueueAttributeNameType, str]] = None + tags: Optional[Mapping[str, str]] = None + +class CreateQueueRequestServiceResourceCreateQueueTypeDef(BaseModel): + QueueName: str + Attributes: Optional[Mapping[QueueAttributeNameType, str]] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteMessageBatchRequestEntryTypeDef(BaseModel): + Id: str + ReceiptHandle: str + +class DeleteMessageBatchResultEntryTypeDef(BaseModel): + Id: str + +class DeleteMessageRequestRequestTypeDef(BaseModel): + QueueUrl: str + ReceiptHandle: str + +class DeleteQueueRequestRequestTypeDef(BaseModel): + QueueUrl: str + +class GetQueueAttributesRequestRequestTypeDef(BaseModel): + QueueUrl: str + AttributeNames: Optional[Sequence[QueueAttributeFilterType]] = None + +class GetQueueUrlRequestRequestTypeDef(BaseModel): + QueueName: str + QueueOwnerAWSAccountId: Optional[str] = None + +class GetQueueUrlRequestServiceResourceGetQueueByNameTypeDef(BaseModel): + QueueName: str + QueueOwnerAWSAccountId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDeadLetterSourceQueuesRequestRequestTypeDef(BaseModel): + QueueUrl: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMessageMoveTasksRequestRequestTypeDef(BaseModel): + SourceArn: str + MaxResults: Optional[int] = None + +class ListMessageMoveTasksResultEntryTypeDef(BaseModel): + TaskHandle: Optional[str] = None + Status: Optional[str] = None + SourceArn: Optional[str] = None + DestinationArn: Optional[str] = None + MaxNumberOfMessagesPerSecond: Optional[int] = None + ApproximateNumberOfMessagesMoved: Optional[int] = None + ApproximateNumberOfMessagesToMove: Optional[int] = None + FailureReason: Optional[str] = None + StartedTimestamp: Optional[int] = None + +class ListQueueTagsRequestRequestTypeDef(BaseModel): + QueueUrl: str + +class ListQueuesRequestRequestTypeDef(BaseModel): + QueueNamePrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MessageAttributeValueExtraOutputTypeDef(BaseModel): + DataType: str + StringValue: Optional[str] = None + BinaryValue: Optional[bytes] = None + StringListValues: Optional[List[str]] = None + BinaryListValues: Optional[List[bytes]] = None + +class MessageAttributeValueOutputTypeDef(BaseModel): + DataType: str + StringValue: Optional[str] = None + BinaryValue: Optional[bytes] = None + StringListValues: Optional[List[str]] = None + BinaryListValues: Optional[List[bytes]] = None + +class PurgeQueueRequestRequestTypeDef(BaseModel): + QueueUrl: str + +class ReceiveMessageRequestQueueReceiveMessagesTypeDef(BaseModel): + AttributeNames: Optional[Sequence[QueueAttributeFilterType]] = None + MessageSystemAttributeNames: Optional[Sequence[MessageSystemAttributeNameType]] = None + MessageAttributeNames: Optional[Sequence[str]] = None + MaxNumberOfMessages: Optional[int] = None + VisibilityTimeout: Optional[int] = None + WaitTimeSeconds: Optional[int] = None + ReceiveRequestAttemptId: Optional[str] = None + +class ReceiveMessageRequestRequestTypeDef(BaseModel): + QueueUrl: str + AttributeNames: Optional[Sequence[QueueAttributeFilterType]] = None + MessageSystemAttributeNames: Optional[Sequence[MessageSystemAttributeNameType]] = None + MessageAttributeNames: Optional[Sequence[str]] = None + MaxNumberOfMessages: Optional[int] = None + VisibilityTimeout: Optional[int] = None + WaitTimeSeconds: Optional[int] = None + ReceiveRequestAttemptId: Optional[str] = None + +class RemovePermissionRequestQueueRemovePermissionTypeDef(BaseModel): + Label: str + +class RemovePermissionRequestRequestTypeDef(BaseModel): + QueueUrl: str + Label: str + +class SendMessageBatchResultEntryTypeDef(BaseModel): + Id: str + MessageId: str + MD5OfMessageBody: str + MD5OfMessageAttributes: Optional[str] = None + MD5OfMessageSystemAttributes: Optional[str] = None + SequenceNumber: Optional[str] = None + +class SetQueueAttributesRequestQueueSetAttributesTypeDef(BaseModel): + Attributes: Mapping[QueueAttributeNameType, str] + +class SetQueueAttributesRequestRequestTypeDef(BaseModel): + QueueUrl: str + Attributes: Mapping[QueueAttributeNameType, str] + +class StartMessageMoveTaskRequestRequestTypeDef(BaseModel): + SourceArn: str + DestinationArn: Optional[str] = None + MaxNumberOfMessagesPerSecond: Optional[int] = None + +class TagQueueRequestRequestTypeDef(BaseModel): + QueueUrl: str + Tags: Mapping[str, str] + +class UntagQueueRequestRequestTypeDef(BaseModel): + QueueUrl: str + TagKeys: Sequence[str] + +class MessageAttributeValueTypeDef(BaseModel): + DataType: str + StringValue: Optional[str] = None + BinaryValue: Optional[BlobTypeDef] = None + StringListValues: Optional[Sequence[str]] = None + BinaryListValues: Optional[Sequence[BlobTypeDef]] = None + +class MessageSystemAttributeValueTypeDef(BaseModel): + DataType: str + StringValue: Optional[str] = None + BinaryValue: Optional[BlobTypeDef] = None + StringListValues: Optional[Sequence[str]] = None + BinaryListValues: Optional[Sequence[BlobTypeDef]] = None + +class CancelMessageMoveTaskResultTypeDef(BaseModel): + ApproximateNumberOfMessagesMoved: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQueueResultTypeDef(BaseModel): + QueueUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueueAttributesResultTypeDef(BaseModel): + Attributes: Dict[QueueAttributeNameType, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetQueueUrlResultTypeDef(BaseModel): + QueueUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeadLetterSourceQueuesResultTypeDef(BaseModel): + queueUrls: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListQueueTagsResultTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListQueuesResultTypeDef(BaseModel): + QueueUrls: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SendMessageResultTypeDef(BaseModel): + MD5OfMessageBody: str + MD5OfMessageAttributes: str + MD5OfMessageSystemAttributes: str + MessageId: str + SequenceNumber: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMessageMoveTaskResultTypeDef(BaseModel): + TaskHandle: str + ResponseMetadata: ResponseMetadataTypeDef + +class ChangeMessageVisibilityBatchRequestQueueChangeMessageVisibilityBatchTypeDef(BaseModel): + Entries: Sequence[ChangeMessageVisibilityBatchRequestEntryTypeDef] + +class ChangeMessageVisibilityBatchRequestRequestTypeDef(BaseModel): + QueueUrl: str + Entries: Sequence[ChangeMessageVisibilityBatchRequestEntryTypeDef] + +class ChangeMessageVisibilityBatchResultTypeDef(BaseModel): + Successful: List[ChangeMessageVisibilityBatchResultEntryTypeDef] + Failed: List[BatchResultErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMessageBatchRequestQueueDeleteMessagesTypeDef(BaseModel): + Entries: Sequence[DeleteMessageBatchRequestEntryTypeDef] + +class DeleteMessageBatchRequestRequestTypeDef(BaseModel): + QueueUrl: str + Entries: Sequence[DeleteMessageBatchRequestEntryTypeDef] + +class DeleteMessageBatchResultTypeDef(BaseModel): + Successful: List[DeleteMessageBatchResultEntryTypeDef] + Failed: List[BatchResultErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDeadLetterSourceQueuesRequestListDeadLetterSourceQueuesPaginateTypeDef(BaseModel): + QueueUrl: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQueuesRequestListQueuesPaginateTypeDef(BaseModel): + QueueNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMessageMoveTasksResultTypeDef(BaseModel): + Results: List[ListMessageMoveTasksResultEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MessageTypeDef(BaseModel): + MessageId: Optional[str] = None + ReceiptHandle: Optional[str] = None + MD5OfBody: Optional[str] = None + Body: Optional[str] = None + Attributes: Optional[Dict[MessageSystemAttributeNameType, str]] = None + MD5OfMessageAttributes: Optional[str] = None + MessageAttributes: Optional[Dict[str, MessageAttributeValueOutputTypeDef]] = None + +class SendMessageBatchResultTypeDef(BaseModel): + Successful: List[SendMessageBatchResultEntryTypeDef] + Failed: List[BatchResultErrorEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendMessageBatchRequestEntryTypeDef(BaseModel): + Id: str + MessageBody: str + DelaySeconds: Optional[int] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + MessageSystemAttributes: Optional[ Mapping[Literal["AWSTraceHeader"], MessageSystemAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class SendMessageRequestQueueSendMessageTypeDef(BaseModel): + MessageBody: str + DelaySeconds: Optional[int] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueTypeDef]] = None + MessageSystemAttributes: Optional[ Mapping[Literal["AWSTraceHeader"], MessageSystemAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class ReceiveMessageResultTypeDef(BaseModel): + Messages: List[MessageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SendMessageRequestRequestTypeDef(BaseModel): + QueueUrl: str + MessageBody: str + DelaySeconds: Optional[int] = None + MessageAttributes: Optional[Mapping[str, MessageAttributeValueUnionTypeDef]] = None + MessageSystemAttributes: Optional[ Mapping[Literal["AWSTraceHeader"], MessageSystemAttributeValueTypeDef]] = None + MessageDeduplicationId: Optional[str] = None + MessageGroupId: Optional[str] = None + +class SendMessageBatchRequestQueueSendMessagesTypeDef(BaseModel): + Entries: Sequence[SendMessageBatchRequestEntryTypeDef] + +class SendMessageBatchRequestRequestTypeDef(BaseModel): + QueueUrl: str + Entries: Sequence[SendMessageBatchRequestEntryTypeDef] + diff --git a/aws_resource_validator/pydantic_models/sqs_constants.py b/aws_resource_validator/pydantic_models/sqs_constants.py new file mode 100644 index 00000000..21ef51eb --- /dev/null +++ b/aws_resource_validator/pydantic_models/sqs_constants.py @@ -0,0 +1,494 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListDeadLetterSourceQueuesPaginatorName = Literal["list_dead_letter_source_queues"] +ListQueuesPaginatorName = Literal["list_queues"] +MessageSystemAttributeNameForSendsType = Literal["AWSTraceHeader"] +MessageSystemAttributeNameType = Literal["AWSTraceHeader", + "All", + "ApproximateFirstReceiveTimestamp", + "ApproximateReceiveCount", + "DeadLetterQueueSourceArn", + "MessageDeduplicationId", + "MessageGroupId", + "SenderId", + "SentTimestamp", + "SequenceNumber",] +QueueAttributeFilterType = Literal["AWSTraceHeader", + "All", + "ApproximateFirstReceiveTimestamp", + "ApproximateNumberOfMessages", + "ApproximateNumberOfMessagesDelayed", + "ApproximateNumberOfMessagesNotVisible", + "ApproximateReceiveCount", + "ContentBasedDeduplication", + "CreatedTimestamp", + "DeduplicationScope", + "DelaySeconds", + "FifoQueue", + "FifoThroughputLimit", + "KmsDataKeyReusePeriodSeconds", + "KmsMasterKeyId", + "LastModifiedTimestamp", + "MaximumMessageSize", + "MessageDeduplicationId", + "MessageGroupId", + "MessageRetentionPeriod", + "Policy", + "QueueArn", + "ReceiveMessageWaitTimeSeconds", + "RedriveAllowPolicy", + "RedrivePolicy", + "SenderId", + "SentTimestamp", + "SequenceNumber", + "SqsManagedSseEnabled", + "VisibilityTimeout",] +QueueAttributeNameType = Literal["All", + "ApproximateNumberOfMessages", + "ApproximateNumberOfMessagesDelayed", + "ApproximateNumberOfMessagesNotVisible", + "ContentBasedDeduplication", + "CreatedTimestamp", + "DeduplicationScope", + "DelaySeconds", + "FifoQueue", + "FifoThroughputLimit", + "KmsDataKeyReusePeriodSeconds", + "KmsMasterKeyId", + "LastModifiedTimestamp", + "MaximumMessageSize", + "MessageRetentionPeriod", + "Policy", + "QueueArn", + "ReceiveMessageWaitTimeSeconds", + "RedriveAllowPolicy", + "RedrivePolicy", + "SqsManagedSseEnabled", + "VisibilityTimeout",] +SQSServiceName = Literal["sqs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_dead_letter_source_queues", "list_queues"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any]] +MessageAttributeValueUnionTypeDef = Union[ 'MessageAttributeValueTypeDef', 'MessageAttributeValueExtraOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/ssm_classes.py b/aws_resource_validator/pydantic_models/ssm_classes.py new file mode 100644 index 00000000..d88369ba --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_classes.py @@ -0,0 +1,3292 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ssm_constants import * + +class AccountSharingInfoTypeDef(BaseModel): + AccountId: Optional[str] = None + SharedDocumentVersion: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AlarmTypeDef(BaseModel): + Name: str + +class AlarmStateInformationTypeDef(BaseModel): + Name: str + State: ExternalAlarmStateType + +class AssociateOpsItemRelatedItemRequestRequestTypeDef(BaseModel): + OpsItemId: str + AssociationType: str + ResourceType: str + ResourceUri: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociationOverviewTypeDef(BaseModel): + Status: Optional[str] = None + DetailedStatus: Optional[str] = None + AssociationStatusAggregatedCount: Optional[Dict[str, int]] = None + +class AssociationStatusOutputTypeDef(BaseModel): + Date: datetime + Name: AssociationStatusNameType + Message: str + AdditionalInfo: Optional[str] = None + +class TargetOutputTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[List[str]] = None + +class AssociationExecutionFilterTypeDef(BaseModel): + Key: AssociationExecutionFilterKeyType + Value: str + Type: AssociationFilterOperatorTypeType + +class OutputSourceTypeDef(BaseModel): + OutputSourceId: Optional[str] = None + OutputSourceType: Optional[str] = None + +class AssociationExecutionTargetsFilterTypeDef(BaseModel): + Key: AssociationExecutionTargetsFilterKeyType + Value: str + +class AssociationFilterTypeDef(BaseModel): + key: AssociationFilterKeyType + value: str + +class AttachmentContentTypeDef(BaseModel): + Name: Optional[str] = None + Size: Optional[int] = None + Hash: Optional[str] = None + HashType: Optional[Literal["Sha256"]] = None + Url: Optional[str] = None + +class AttachmentInformationTypeDef(BaseModel): + Name: Optional[str] = None + +class AttachmentsSourceTypeDef(BaseModel): + Key: Optional[AttachmentsSourceKeyType] = None + Values: Optional[Sequence[str]] = None + Name: Optional[str] = None + +class AutomationExecutionFilterTypeDef(BaseModel): + Key: AutomationExecutionFilterKeyType + Values: Sequence[str] + +class ResolvedTargetsTypeDef(BaseModel): + ParameterValues: Optional[List[str]] = None + Truncated: Optional[bool] = None + +class ProgressCountersTypeDef(BaseModel): + TotalSteps: Optional[int] = None + SuccessSteps: Optional[int] = None + FailedSteps: Optional[int] = None + CancelledSteps: Optional[int] = None + TimedOutSteps: Optional[int] = None + +class PatchSourceTypeDef(BaseModel): + Name: str + Products: Sequence[str] + Configuration: str + +class CancelCommandRequestRequestTypeDef(BaseModel): + CommandId: str + InstanceIds: Optional[Sequence[str]] = None + +class CancelMaintenanceWindowExecutionRequestRequestTypeDef(BaseModel): + WindowExecutionId: str + +class CloudWatchOutputConfigTypeDef(BaseModel): + CloudWatchLogGroupName: Optional[str] = None + CloudWatchOutputEnabled: Optional[bool] = None + +class CommandFilterTypeDef(BaseModel): + key: CommandFilterKeyType + value: str + +class CommandPluginTypeDef(BaseModel): + Name: Optional[str] = None + Status: Optional[CommandPluginStatusType] = None + StatusDetails: Optional[str] = None + ResponseCode: Optional[int] = None + ResponseStartDateTime: Optional[datetime] = None + ResponseFinishDateTime: Optional[datetime] = None + Output: Optional[str] = None + StandardOutputUrl: Optional[str] = None + StandardErrorUrl: Optional[str] = None + OutputS3Region: Optional[str] = None + OutputS3BucketName: Optional[str] = None + OutputS3KeyPrefix: Optional[str] = None + +class NotificationConfigOutputTypeDef(BaseModel): + NotificationArn: Optional[str] = None + NotificationEvents: Optional[List[NotificationEventType]] = None + NotificationType: Optional[NotificationTypeType] = None + +class ComplianceExecutionSummaryExtraOutputTypeDef(BaseModel): + ExecutionTime: datetime + ExecutionId: Optional[str] = None + ExecutionType: Optional[str] = None + +class ComplianceExecutionSummaryOutputTypeDef(BaseModel): + ExecutionTime: datetime + ExecutionId: Optional[str] = None + ExecutionType: Optional[str] = None + +class ComplianceItemEntryTypeDef(BaseModel): + Severity: ComplianceSeverityType + Status: ComplianceStatusType + Id: Optional[str] = None + Title: Optional[str] = None + Details: Optional[Mapping[str, str]] = None + +class ComplianceStringFilterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + Type: Optional[ComplianceQueryOperatorTypeType] = None + +class SeveritySummaryTypeDef(BaseModel): + CriticalCount: Optional[int] = None + HighCount: Optional[int] = None + MediumCount: Optional[int] = None + LowCount: Optional[int] = None + InformationalCount: Optional[int] = None + UnspecifiedCount: Optional[int] = None + +class RegistrationMetadataItemTypeDef(BaseModel): + Key: str + Value: str + +class TargetTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class DocumentRequiresTypeDef(BaseModel): + Name: str + Version: Optional[str] = None + RequireType: Optional[str] = None + VersionName: Optional[str] = None + +class OpsItemDataValueTypeDef(BaseModel): + Value: Optional[str] = None + Type: Optional[OpsItemDataTypeType] = None + +class OpsItemNotificationTypeDef(BaseModel): + Arn: Optional[str] = None + +class RelatedOpsItemTypeDef(BaseModel): + OpsItemId: str + +class MetadataValueTypeDef(BaseModel): + Value: Optional[str] = None + +class DeleteActivationRequestRequestTypeDef(BaseModel): + ActivationId: str + +class DeleteAssociationRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + InstanceId: Optional[str] = None + AssociationId: Optional[str] = None + +class DeleteDocumentRequestRequestTypeDef(BaseModel): + Name: str + DocumentVersion: Optional[str] = None + VersionName: Optional[str] = None + Force: Optional[bool] = None + +class DeleteInventoryRequestRequestTypeDef(BaseModel): + TypeName: str + SchemaDeleteOption: Optional[InventorySchemaDeleteOptionType] = None + DryRun: Optional[bool] = None + ClientToken: Optional[str] = None + +class DeleteMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + +class DeleteOpsItemRequestRequestTypeDef(BaseModel): + OpsItemId: str + +class DeleteOpsMetadataRequestRequestTypeDef(BaseModel): + OpsMetadataArn: str + +class DeleteParameterRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteParametersRequestRequestTypeDef(BaseModel): + Names: Sequence[str] + +class DeletePatchBaselineRequestRequestTypeDef(BaseModel): + BaselineId: str + +class DeleteResourceDataSyncRequestRequestTypeDef(BaseModel): + SyncName: str + SyncType: Optional[str] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + PolicyId: str + PolicyHash: str + +class DeregisterManagedInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + +class DeregisterPatchBaselineForPatchGroupRequestRequestTypeDef(BaseModel): + BaselineId: str + PatchGroup: str + +class DeregisterTargetFromMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + WindowTargetId: str + Safe: Optional[bool] = None + +class DeregisterTaskFromMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + WindowTaskId: str + +class DescribeActivationsFilterTypeDef(BaseModel): + FilterKey: Optional[DescribeActivationsFilterKeysType] = None + FilterValues: Optional[Sequence[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAssociationRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + InstanceId: Optional[str] = None + AssociationId: Optional[str] = None + AssociationVersion: Optional[str] = None + +class StepExecutionFilterTypeDef(BaseModel): + Key: StepExecutionFilterKeyType + Values: Sequence[str] + +class PatchOrchestratorFilterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class PatchTypeDef(BaseModel): + Id: Optional[str] = None + ReleaseDate: Optional[datetime] = None + Title: Optional[str] = None + Description: Optional[str] = None + ContentUrl: Optional[str] = None + Vendor: Optional[str] = None + ProductFamily: Optional[str] = None + Product: Optional[str] = None + Classification: Optional[str] = None + MsrcSeverity: Optional[str] = None + KbNumber: Optional[str] = None + MsrcNumber: Optional[str] = None + Language: Optional[str] = None + AdvisoryIds: Optional[List[str]] = None + BugzillaIds: Optional[List[str]] = None + CVEIds: Optional[List[str]] = None + Name: Optional[str] = None + Epoch: Optional[int] = None + Version: Optional[str] = None + Release: Optional[str] = None + Arch: Optional[str] = None + Severity: Optional[str] = None + Repository: Optional[str] = None + +class DescribeDocumentPermissionRequestRequestTypeDef(BaseModel): + Name: str + PermissionType: Literal["Share"] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeDocumentRequestRequestTypeDef(BaseModel): + Name: str + DocumentVersion: Optional[str] = None + VersionName: Optional[str] = None + +class DescribeEffectiveInstanceAssociationsRequestRequestTypeDef(BaseModel): + InstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class InstanceAssociationTypeDef(BaseModel): + AssociationId: Optional[str] = None + InstanceId: Optional[str] = None + Content: Optional[str] = None + AssociationVersion: Optional[str] = None + +class DescribeEffectivePatchesForPatchBaselineRequestRequestTypeDef(BaseModel): + BaselineId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstanceAssociationsStatusRequestRequestTypeDef(BaseModel): + InstanceId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class InstanceInformationFilterTypeDef(BaseModel): + key: InstanceInformationFilterKeyType + valueSet: Sequence[str] + +class InstanceInformationStringFilterTypeDef(BaseModel): + Key: str + Values: Sequence[str] + +class InstancePatchStateFilterTypeDef(BaseModel): + Key: str + Values: Sequence[str] + Type: InstancePatchStateOperatorTypeType + +class InstancePatchStateTypeDef(BaseModel): + InstanceId: str + PatchGroup: str + BaselineId: str + OperationStartTime: datetime + OperationEndTime: datetime + Operation: PatchOperationTypeType + SnapshotId: Optional[str] = None + InstallOverrideList: Optional[str] = None + OwnerInformation: Optional[str] = None + InstalledCount: Optional[int] = None + InstalledOtherCount: Optional[int] = None + InstalledPendingRebootCount: Optional[int] = None + InstalledRejectedCount: Optional[int] = None + MissingCount: Optional[int] = None + FailedCount: Optional[int] = None + UnreportedNotApplicableCount: Optional[int] = None + NotApplicableCount: Optional[int] = None + LastNoRebootInstallOperationTime: Optional[datetime] = None + RebootOption: Optional[RebootOptionType] = None + CriticalNonCompliantCount: Optional[int] = None + SecurityNonCompliantCount: Optional[int] = None + OtherNonCompliantCount: Optional[int] = None + +class DescribeInstancePatchStatesRequestRequestTypeDef(BaseModel): + InstanceIds: Sequence[str] + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PatchComplianceDataTypeDef(BaseModel): + Title: str + KBId: str + Classification: str + Severity: str + State: PatchComplianceDataStateType + InstalledTime: datetime + CVEIds: Optional[str] = None + +class InstancePropertyFilterTypeDef(BaseModel): + key: InstancePropertyFilterKeyType + valueSet: Sequence[str] + +class InstancePropertyStringFilterTypeDef(BaseModel): + Key: str + Values: Sequence[str] + Operator: Optional[InstancePropertyFilterOperatorType] = None + +class DescribeInventoryDeletionsRequestRequestTypeDef(BaseModel): + DeletionId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MaintenanceWindowFilterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class MaintenanceWindowExecutionTaskInvocationIdentityTypeDef(BaseModel): + WindowExecutionId: Optional[str] = None + TaskExecutionId: Optional[str] = None + InvocationId: Optional[str] = None + ExecutionId: Optional[str] = None + TaskType: Optional[MaintenanceWindowTaskTypeType] = None + Parameters: Optional[str] = None + Status: Optional[MaintenanceWindowExecutionStatusType] = None + StatusDetails: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + OwnerInformation: Optional[str] = None + WindowTargetId: Optional[str] = None + +class MaintenanceWindowExecutionTypeDef(BaseModel): + WindowId: Optional[str] = None + WindowExecutionId: Optional[str] = None + Status: Optional[MaintenanceWindowExecutionStatusType] = None + StatusDetails: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class ScheduledWindowExecutionTypeDef(BaseModel): + WindowId: Optional[str] = None + Name: Optional[str] = None + ExecutionTime: Optional[str] = None + +class MaintenanceWindowIdentityForTargetTypeDef(BaseModel): + WindowId: Optional[str] = None + Name: Optional[str] = None + +class MaintenanceWindowIdentityTypeDef(BaseModel): + WindowId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Enabled: Optional[bool] = None + Duration: Optional[int] = None + Cutoff: Optional[int] = None + Schedule: Optional[str] = None + ScheduleTimezone: Optional[str] = None + ScheduleOffset: Optional[int] = None + EndDate: Optional[str] = None + StartDate: Optional[str] = None + NextExecutionTime: Optional[str] = None + +class OpsItemFilterTypeDef(BaseModel): + Key: OpsItemFilterKeyType + Values: Sequence[str] + Operator: OpsItemFilterOperatorType + +class ParameterStringFilterTypeDef(BaseModel): + Key: str + Option: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class ParametersFilterTypeDef(BaseModel): + Key: ParametersFilterKeyType + Values: Sequence[str] + +class PatchBaselineIdentityTypeDef(BaseModel): + BaselineId: Optional[str] = None + BaselineName: Optional[str] = None + OperatingSystem: Optional[OperatingSystemType] = None + BaselineDescription: Optional[str] = None + DefaultBaseline: Optional[bool] = None + +class DescribePatchGroupStateRequestRequestTypeDef(BaseModel): + PatchGroup: str + +class DescribePatchPropertiesRequestRequestTypeDef(BaseModel): + OperatingSystem: OperatingSystemType + Property: PatchPropertyType + PatchSet: Optional[PatchSetType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SessionFilterTypeDef(BaseModel): + key: SessionFilterKeyType + value: str + +class DisassociateOpsItemRelatedItemRequestRequestTypeDef(BaseModel): + OpsItemId: str + AssociationId: str + +class DocumentDefaultVersionDescriptionTypeDef(BaseModel): + Name: Optional[str] = None + DefaultVersion: Optional[str] = None + DefaultVersionName: Optional[str] = None + +class DocumentParameterTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[DocumentParameterTypeType] = None + Description: Optional[str] = None + DefaultValue: Optional[str] = None + +class ReviewInformationTypeDef(BaseModel): + ReviewedTime: Optional[datetime] = None + Status: Optional[ReviewStatusType] = None + Reviewer: Optional[str] = None + +class DocumentFilterTypeDef(BaseModel): + key: DocumentFilterKeyType + value: str + +class DocumentKeyValuesFilterTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[Sequence[str]] = None + +class DocumentReviewCommentSourceTypeDef(BaseModel): + Type: Optional[Literal["Comment"]] = None + Content: Optional[str] = None + +class DocumentVersionInfoTypeDef(BaseModel): + Name: Optional[str] = None + DisplayName: Optional[str] = None + DocumentVersion: Optional[str] = None + VersionName: Optional[str] = None + CreatedDate: Optional[datetime] = None + IsDefaultVersion: Optional[bool] = None + DocumentFormat: Optional[DocumentFormatType] = None + Status: Optional[DocumentStatusType] = None + StatusInformation: Optional[str] = None + ReviewStatus: Optional[ReviewStatusType] = None + +class PatchStatusTypeDef(BaseModel): + DeploymentStatus: Optional[PatchDeploymentStatusType] = None + ComplianceLevel: Optional[PatchComplianceLevelType] = None + ApprovalDate: Optional[datetime] = None + +class FailureDetailsTypeDef(BaseModel): + FailureStage: Optional[str] = None + FailureType: Optional[str] = None + Details: Optional[Dict[str, List[str]]] = None + +class GetAutomationExecutionRequestRequestTypeDef(BaseModel): + AutomationExecutionId: str + +class GetCalendarStateRequestRequestTypeDef(BaseModel): + CalendarNames: Sequence[str] + AtTime: Optional[str] = None + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class GetCommandInvocationRequestRequestTypeDef(BaseModel): + CommandId: str + InstanceId: str + PluginName: Optional[str] = None + +class GetConnectionStatusRequestRequestTypeDef(BaseModel): + Target: str + +class GetDefaultPatchBaselineRequestRequestTypeDef(BaseModel): + OperatingSystem: Optional[OperatingSystemType] = None + +class GetDocumentRequestRequestTypeDef(BaseModel): + Name: str + VersionName: Optional[str] = None + DocumentVersion: Optional[str] = None + DocumentFormat: Optional[DocumentFormatType] = None + +class InventoryFilterTypeDef(BaseModel): + Key: str + Values: Sequence[str] + Type: Optional[InventoryQueryOperatorTypeType] = None + +class ResultAttributeTypeDef(BaseModel): + TypeName: str + +class GetInventorySchemaRequestRequestTypeDef(BaseModel): + TypeName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Aggregator: Optional[bool] = None + SubType: Optional[bool] = None + +class GetMaintenanceWindowExecutionRequestRequestTypeDef(BaseModel): + WindowExecutionId: str + +class GetMaintenanceWindowExecutionTaskInvocationRequestRequestTypeDef(BaseModel): + WindowExecutionId: str + TaskId: str + InvocationId: str + +class GetMaintenanceWindowExecutionTaskRequestRequestTypeDef(BaseModel): + WindowExecutionId: str + TaskId: str + +class MaintenanceWindowTaskParameterValueExpressionOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class GetMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + +class GetMaintenanceWindowTaskRequestRequestTypeDef(BaseModel): + WindowId: str + WindowTaskId: str + +class LoggingInfoTypeDef(BaseModel): + S3BucketName: str + S3Region: str + S3KeyPrefix: Optional[str] = None + +class GetOpsItemRequestRequestTypeDef(BaseModel): + OpsItemId: str + OpsItemArn: Optional[str] = None + +class GetOpsMetadataRequestRequestTypeDef(BaseModel): + OpsMetadataArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class OpsFilterTypeDef(BaseModel): + Key: str + Values: Sequence[str] + Type: Optional[OpsFilterOperatorTypeType] = None + +class OpsResultAttributeTypeDef(BaseModel): + TypeName: str + +class GetParameterHistoryRequestRequestTypeDef(BaseModel): + Name: str + WithDecryption: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetParameterRequestRequestTypeDef(BaseModel): + Name: str + WithDecryption: Optional[bool] = None + +class ParameterTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[ParameterTypeType] = None + Value: Optional[str] = None + Version: Optional[int] = None + Selector: Optional[str] = None + SourceResult: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + ARN: Optional[str] = None + DataType: Optional[str] = None + +class GetParametersRequestRequestTypeDef(BaseModel): + Names: Sequence[str] + WithDecryption: Optional[bool] = None + +class GetPatchBaselineForPatchGroupRequestRequestTypeDef(BaseModel): + PatchGroup: str + OperatingSystem: Optional[OperatingSystemType] = None + +class GetPatchBaselineRequestRequestTypeDef(BaseModel): + BaselineId: str + +class PatchSourceOutputTypeDef(BaseModel): + Name: str + Products: List[str] + Configuration: str + +class GetResourcePoliciesRequestRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetResourcePoliciesResponseEntryTypeDef(BaseModel): + PolicyId: Optional[str] = None + PolicyHash: Optional[str] = None + Policy: Optional[str] = None + +class GetServiceSettingRequestRequestTypeDef(BaseModel): + SettingId: str + +class ServiceSettingTypeDef(BaseModel): + SettingId: Optional[str] = None + SettingValue: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedUser: Optional[str] = None + ARN: Optional[str] = None + Status: Optional[str] = None + +class InstanceAggregatedAssociationOverviewTypeDef(BaseModel): + DetailedStatus: Optional[str] = None + InstanceAssociationStatusAggregatedCount: Optional[Dict[str, int]] = None + +class S3OutputLocationTypeDef(BaseModel): + OutputS3Region: Optional[str] = None + OutputS3BucketName: Optional[str] = None + OutputS3KeyPrefix: Optional[str] = None + +class S3OutputUrlTypeDef(BaseModel): + OutputUrl: Optional[str] = None + +class InventoryDeletionSummaryItemTypeDef(BaseModel): + Version: Optional[str] = None + Count: Optional[int] = None + RemainingCount: Optional[int] = None + +class InventoryItemAttributeTypeDef(BaseModel): + Name: str + DataType: InventoryAttributeDataTypeType + +class InventoryItemTypeDef(BaseModel): + TypeName: str + SchemaVersion: str + CaptureTime: str + ContentHash: Optional[str] = None + Content: Optional[Sequence[Mapping[str, str]]] = None + Context: Optional[Mapping[str, str]] = None + +class InventoryResultItemTypeDef(BaseModel): + TypeName: str + SchemaVersion: str + Content: List[Dict[str, str]] + CaptureTime: Optional[str] = None + ContentHash: Optional[str] = None + +class LabelParameterVersionRequestRequestTypeDef(BaseModel): + Name: str + Labels: Sequence[str] + ParameterVersion: Optional[int] = None + +class ListAssociationVersionsRequestRequestTypeDef(BaseModel): + AssociationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListDocumentMetadataHistoryRequestRequestTypeDef(BaseModel): + Name: str + Metadata: Literal["DocumentReviews"] + DocumentVersion: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDocumentVersionsRequestRequestTypeDef(BaseModel): + Name: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class OpsItemEventFilterTypeDef(BaseModel): + Key: Literal["OpsItemId"] + Values: Sequence[str] + Operator: Literal["Equal"] + +class OpsItemRelatedItemsFilterTypeDef(BaseModel): + Key: OpsItemRelatedItemsFilterKeyType + Values: Sequence[str] + Operator: Literal["Equal"] + +class OpsMetadataFilterTypeDef(BaseModel): + Key: str + Values: Sequence[str] + +class OpsMetadataTypeDef(BaseModel): + ResourceId: Optional[str] = None + OpsMetadataArn: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedUser: Optional[str] = None + CreationDate: Optional[datetime] = None + +class ListResourceDataSyncRequestRequestTypeDef(BaseModel): + SyncType: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceType: ResourceTypeForTaggingType + ResourceId: str + +class MaintenanceWindowAutomationParametersOutputTypeDef(BaseModel): + DocumentVersion: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + +class MaintenanceWindowAutomationParametersTypeDef(BaseModel): + DocumentVersion: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + +class MaintenanceWindowLambdaParametersOutputTypeDef(BaseModel): + ClientContext: Optional[str] = None + Qualifier: Optional[str] = None + Payload: Optional[bytes] = None + +class NotificationConfigTypeDef(BaseModel): + NotificationArn: Optional[str] = None + NotificationEvents: Optional[Sequence[NotificationEventType]] = None + NotificationType: Optional[NotificationTypeType] = None + +class MaintenanceWindowStepFunctionsParametersTypeDef(BaseModel): + Input: Optional[str] = None + Name: Optional[str] = None + +class MaintenanceWindowTaskParameterValueExpressionExtraOutputTypeDef(BaseModel): + Values: Optional[List[str]] = None + +class MaintenanceWindowTaskParameterValueExpressionTypeDef(BaseModel): + Values: Optional[Sequence[str]] = None + +class ModifyDocumentPermissionRequestRequestTypeDef(BaseModel): + Name: str + PermissionType: Literal["Share"] + AccountIdsToAdd: Optional[Sequence[str]] = None + AccountIdsToRemove: Optional[Sequence[str]] = None + SharedDocumentVersion: Optional[str] = None + +class NotificationConfigExtraOutputTypeDef(BaseModel): + NotificationArn: Optional[str] = None + NotificationEvents: Optional[List[NotificationEventType]] = None + NotificationType: Optional[NotificationTypeType] = None + +class OpsEntityItemTypeDef(BaseModel): + CaptureTime: Optional[str] = None + Content: Optional[List[Dict[str, str]]] = None + +class OpsItemIdentityTypeDef(BaseModel): + Arn: Optional[str] = None + +class ParameterInlinePolicyTypeDef(BaseModel): + PolicyText: Optional[str] = None + PolicyType: Optional[str] = None + PolicyStatus: Optional[str] = None + +class ParentStepDetailsTypeDef(BaseModel): + StepExecutionId: Optional[str] = None + StepName: Optional[str] = None + Action: Optional[str] = None + Iteration: Optional[int] = None + IteratorValue: Optional[str] = None + +class PatchFilterOutputTypeDef(BaseModel): + Key: PatchFilterKeyType + Values: List[str] + +class PatchFilterTypeDef(BaseModel): + Key: PatchFilterKeyType + Values: Sequence[str] + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + PolicyId: Optional[str] = None + PolicyHash: Optional[str] = None + +class RegisterDefaultPatchBaselineRequestRequestTypeDef(BaseModel): + BaselineId: str + +class RegisterPatchBaselineForPatchGroupRequestRequestTypeDef(BaseModel): + BaselineId: str + PatchGroup: str + +class RemoveTagsFromResourceRequestRequestTypeDef(BaseModel): + ResourceType: ResourceTypeForTaggingType + ResourceId: str + TagKeys: Sequence[str] + +class ResetServiceSettingRequestRequestTypeDef(BaseModel): + SettingId: str + +class ResourceDataSyncOrganizationalUnitTypeDef(BaseModel): + OrganizationalUnitId: Optional[str] = None + +class ResourceDataSyncDestinationDataSharingTypeDef(BaseModel): + DestinationDataSharingType: Optional[str] = None + +class ResumeSessionRequestRequestTypeDef(BaseModel): + SessionId: str + +class TargetExtraOutputTypeDef(BaseModel): + Key: Optional[str] = None + Values: Optional[List[str]] = None + +class SendAutomationSignalRequestRequestTypeDef(BaseModel): + AutomationExecutionId: str + SignalType: SignalTypeType + Payload: Optional[Mapping[str, Sequence[str]]] = None + +class SessionManagerOutputUrlTypeDef(BaseModel): + S3OutputUrl: Optional[str] = None + CloudWatchOutputUrl: Optional[str] = None + +class StartAssociationsOnceRequestRequestTypeDef(BaseModel): + AssociationIds: Sequence[str] + +class StartSessionRequestRequestTypeDef(BaseModel): + Target: str + DocumentName: Optional[str] = None + Reason: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + +class StopAutomationExecutionRequestRequestTypeDef(BaseModel): + AutomationExecutionId: str + Type: Optional[StopTypeType] = None + +class TerminateSessionRequestRequestTypeDef(BaseModel): + SessionId: str + +class UnlabelParameterVersionRequestRequestTypeDef(BaseModel): + Name: str + ParameterVersion: int + Labels: Sequence[str] + +class UpdateDocumentDefaultVersionRequestRequestTypeDef(BaseModel): + Name: str + DocumentVersion: str + +class UpdateMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + Name: Optional[str] = None + Description: Optional[str] = None + StartDate: Optional[str] = None + EndDate: Optional[str] = None + Schedule: Optional[str] = None + ScheduleTimezone: Optional[str] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + Cutoff: Optional[int] = None + AllowUnassociatedTargets: Optional[bool] = None + Enabled: Optional[bool] = None + Replace: Optional[bool] = None + +class UpdateManagedInstanceRoleRequestRequestTypeDef(BaseModel): + InstanceId: str + IamRole: str + +class UpdateServiceSettingRequestRequestTypeDef(BaseModel): + SettingId: str + SettingValue: str + +class ActivationTypeDef(BaseModel): + ActivationId: Optional[str] = None + Description: Optional[str] = None + DefaultInstanceName: Optional[str] = None + IamRole: Optional[str] = None + RegistrationLimit: Optional[int] = None + RegistrationsCount: Optional[int] = None + ExpirationDate: Optional[datetime] = None + Expired: Optional[bool] = None + CreatedDate: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class AddTagsToResourceRequestRequestTypeDef(BaseModel): + ResourceType: ResourceTypeForTaggingType + ResourceId: str + Tags: Sequence[TagTypeDef] + +class CreateMaintenanceWindowRequestRequestTypeDef(BaseModel): + Name: str + Schedule: str + Duration: int + Cutoff: int + AllowUnassociatedTargets: bool + Description: Optional[str] = None + StartDate: Optional[str] = None + EndDate: Optional[str] = None + ScheduleTimezone: Optional[str] = None + ScheduleOffset: Optional[int] = None + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class PutParameterRequestRequestTypeDef(BaseModel): + Name: str + Value: str + Description: Optional[str] = None + Type: Optional[ParameterTypeType] = None + KeyId: Optional[str] = None + Overwrite: Optional[bool] = None + AllowedPattern: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Tier: Optional[ParameterTierType] = None + Policies: Optional[str] = None + DataType: Optional[str] = None + +class AlarmConfigurationExtraOutputTypeDef(BaseModel): + Alarms: List[AlarmTypeDef] + IgnorePollAlarmFailure: Optional[bool] = None + +class AlarmConfigurationOutputTypeDef(BaseModel): + Alarms: List[AlarmTypeDef] + IgnorePollAlarmFailure: Optional[bool] = None + +class AlarmConfigurationTypeDef(BaseModel): + Alarms: Sequence[AlarmTypeDef] + IgnorePollAlarmFailure: Optional[bool] = None + +class AssociateOpsItemRelatedItemResponseTypeDef(BaseModel): + AssociationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelMaintenanceWindowExecutionResultTypeDef(BaseModel): + WindowExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateActivationResultTypeDef(BaseModel): + ActivationId: str + ActivationCode: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMaintenanceWindowResultTypeDef(BaseModel): + WindowId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOpsItemResponseTypeDef(BaseModel): + OpsItemId: str + OpsItemArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOpsMetadataResultTypeDef(BaseModel): + OpsMetadataArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePatchBaselineResultTypeDef(BaseModel): + BaselineId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteMaintenanceWindowResultTypeDef(BaseModel): + WindowId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteParametersResultTypeDef(BaseModel): + DeletedParameters: List[str] + InvalidParameters: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeletePatchBaselineResultTypeDef(BaseModel): + BaselineId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterPatchBaselineForPatchGroupResultTypeDef(BaseModel): + BaselineId: str + PatchGroup: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterTargetFromMaintenanceWindowResultTypeDef(BaseModel): + WindowId: str + WindowTargetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeregisterTaskFromMaintenanceWindowResultTypeDef(BaseModel): + WindowId: str + WindowTaskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDocumentPermissionResponseTypeDef(BaseModel): + AccountIds: List[str] + AccountSharingInfoList: List[AccountSharingInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribePatchGroupStateResultTypeDef(BaseModel): + Instances: int + InstancesWithInstalledPatches: int + InstancesWithInstalledOtherPatches: int + InstancesWithInstalledPendingRebootPatches: int + InstancesWithInstalledRejectedPatches: int + InstancesWithMissingPatches: int + InstancesWithFailedPatches: int + InstancesWithNotApplicablePatches: int + InstancesWithUnreportedNotApplicablePatches: int + InstancesWithCriticalNonCompliantPatches: int + InstancesWithSecurityNonCompliantPatches: int + InstancesWithOtherNonCompliantPatches: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePatchPropertiesResultTypeDef(BaseModel): + Properties: List[Dict[str, str]] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCalendarStateResponseTypeDef(BaseModel): + State: CalendarStateType + AtTime: str + NextTransitionTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetConnectionStatusResponseTypeDef(BaseModel): + Target: str + Status: ConnectionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetDefaultPatchBaselineResultTypeDef(BaseModel): + BaselineId: str + OperatingSystem: OperatingSystemType + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeployablePatchSnapshotForInstanceResultTypeDef(BaseModel): + InstanceId: str + SnapshotId: str + SnapshotDownloadUrl: str + Product: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMaintenanceWindowExecutionResultTypeDef(BaseModel): + WindowExecutionId: str + TaskIds: List[str] + Status: MaintenanceWindowExecutionStatusType + StatusDetails: str + StartTime: datetime + EndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetMaintenanceWindowExecutionTaskInvocationResultTypeDef(BaseModel): + WindowExecutionId: str + TaskExecutionId: str + InvocationId: str + ExecutionId: str + TaskType: MaintenanceWindowTaskTypeType + Parameters: str + Status: MaintenanceWindowExecutionStatusType + StatusDetails: str + StartTime: datetime + EndTime: datetime + OwnerInformation: str + WindowTargetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMaintenanceWindowResultTypeDef(BaseModel): + WindowId: str + Name: str + Description: str + StartDate: str + EndDate: str + Schedule: str + ScheduleTimezone: str + ScheduleOffset: int + NextExecutionTime: str + Duration: int + Cutoff: int + AllowUnassociatedTargets: bool + Enabled: bool + CreatedDate: datetime + ModifiedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPatchBaselineForPatchGroupResultTypeDef(BaseModel): + BaselineId: str + PatchGroup: str + OperatingSystem: OperatingSystemType + ResponseMetadata: ResponseMetadataTypeDef + +class LabelParameterVersionResultTypeDef(BaseModel): + InvalidLabels: List[str] + ParameterVersion: int + ResponseMetadata: ResponseMetadataTypeDef + +class ListInventoryEntriesResultTypeDef(BaseModel): + TypeName: str + InstanceId: str + SchemaVersion: str + CaptureTime: str + Entries: List[Dict[str, str]] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResultTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutInventoryResultTypeDef(BaseModel): + Message: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutParameterResultTypeDef(BaseModel): + Version: int + Tier: ParameterTierType + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResponseTypeDef(BaseModel): + PolicyId: str + PolicyHash: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterDefaultPatchBaselineResultTypeDef(BaseModel): + BaselineId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterPatchBaselineForPatchGroupResultTypeDef(BaseModel): + BaselineId: str + PatchGroup: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTargetWithMaintenanceWindowResultTypeDef(BaseModel): + WindowTargetId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTaskWithMaintenanceWindowResultTypeDef(BaseModel): + WindowTaskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResumeSessionResponseTypeDef(BaseModel): + SessionId: str + TokenValue: str + StreamUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAutomationExecutionResultTypeDef(BaseModel): + AutomationExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartChangeRequestExecutionResultTypeDef(BaseModel): + AutomationExecutionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartSessionResponseTypeDef(BaseModel): + SessionId: str + TokenValue: str + StreamUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateSessionResponseTypeDef(BaseModel): + SessionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UnlabelParameterVersionResultTypeDef(BaseModel): + RemovedLabels: List[str] + InvalidLabels: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMaintenanceWindowResultTypeDef(BaseModel): + WindowId: str + Name: str + Description: str + StartDate: str + EndDate: str + Schedule: str + ScheduleTimezone: str + ScheduleOffset: int + Duration: int + Cutoff: int + AllowUnassociatedTargets: bool + Enabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateOpsMetadataResultTypeDef(BaseModel): + OpsMetadataArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociationTypeDef(BaseModel): + Name: Optional[str] = None + InstanceId: Optional[str] = None + AssociationId: Optional[str] = None + AssociationVersion: Optional[str] = None + DocumentVersion: Optional[str] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + LastExecutionDate: Optional[datetime] = None + Overview: Optional[AssociationOverviewTypeDef] = None + ScheduleExpression: Optional[str] = None + AssociationName: Optional[str] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + +class MaintenanceWindowTargetTypeDef(BaseModel): + WindowId: Optional[str] = None + WindowTargetId: Optional[str] = None + ResourceType: Optional[MaintenanceWindowResourceTypeType] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + OwnerInformation: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + +class UpdateMaintenanceWindowTargetResultTypeDef(BaseModel): + WindowId: str + WindowTargetId: str + Targets: List[TargetOutputTypeDef] + OwnerInformation: str + Name: str + Description: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAssociationExecutionsRequestRequestTypeDef(BaseModel): + AssociationId: str + Filters: Optional[Sequence[AssociationExecutionFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class AssociationExecutionTargetTypeDef(BaseModel): + AssociationId: Optional[str] = None + AssociationVersion: Optional[str] = None + ExecutionId: Optional[str] = None + ResourceId: Optional[str] = None + ResourceType: Optional[str] = None + Status: Optional[str] = None + DetailedStatus: Optional[str] = None + LastExecutionDate: Optional[datetime] = None + OutputSource: Optional[OutputSourceTypeDef] = None + +class DescribeAssociationExecutionTargetsRequestRequestTypeDef(BaseModel): + AssociationId: str + ExecutionId: str + Filters: Optional[Sequence[AssociationExecutionTargetsFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAssociationsRequestRequestTypeDef(BaseModel): + AssociationFilterList: Optional[Sequence[AssociationFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class AssociationStatusTypeDef(BaseModel): + Date: TimestampTypeDef + Name: AssociationStatusNameType + Message: str + AdditionalInfo: Optional[str] = None + +class ComplianceExecutionSummaryTypeDef(BaseModel): + ExecutionTime: TimestampTypeDef + ExecutionId: Optional[str] = None + ExecutionType: Optional[str] = None + +class UpdateDocumentRequestRequestTypeDef(BaseModel): + Content: str + Name: str + Attachments: Optional[Sequence[AttachmentsSourceTypeDef]] = None + DisplayName: Optional[str] = None + VersionName: Optional[str] = None + DocumentVersion: Optional[str] = None + DocumentFormat: Optional[DocumentFormatType] = None + TargetType: Optional[str] = None + +class DescribeAutomationExecutionsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[AutomationExecutionFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MaintenanceWindowLambdaParametersTypeDef(BaseModel): + ClientContext: Optional[str] = None + Qualifier: Optional[str] = None + Payload: Optional[BlobTypeDef] = None + +class GetCommandInvocationResultTypeDef(BaseModel): + CommandId: str + InstanceId: str + Comment: str + DocumentName: str + DocumentVersion: str + PluginName: str + ResponseCode: int + ExecutionStartDateTime: str + ExecutionElapsedTime: str + ExecutionEndDateTime: str + Status: CommandInvocationStatusType + StatusDetails: str + StandardOutputContent: str + StandardOutputUrl: str + StandardErrorContent: str + StandardErrorUrl: str + CloudWatchOutputConfig: CloudWatchOutputConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCommandInvocationsRequestRequestTypeDef(BaseModel): + CommandId: Optional[str] = None + InstanceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[CommandFilterTypeDef]] = None + Details: Optional[bool] = None + +class ListCommandsRequestRequestTypeDef(BaseModel): + CommandId: Optional[str] = None + InstanceId: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[CommandFilterTypeDef]] = None + +class CommandInvocationTypeDef(BaseModel): + CommandId: Optional[str] = None + InstanceId: Optional[str] = None + InstanceName: Optional[str] = None + Comment: Optional[str] = None + DocumentName: Optional[str] = None + DocumentVersion: Optional[str] = None + RequestedDateTime: Optional[datetime] = None + Status: Optional[CommandInvocationStatusType] = None + StatusDetails: Optional[str] = None + TraceOutput: Optional[str] = None + StandardOutputUrl: Optional[str] = None + StandardErrorUrl: Optional[str] = None + CommandPlugins: Optional[List[CommandPluginTypeDef]] = None + ServiceRole: Optional[str] = None + NotificationConfig: Optional[NotificationConfigOutputTypeDef] = None + CloudWatchOutputConfig: Optional[CloudWatchOutputConfigTypeDef] = None + +class MaintenanceWindowRunCommandParametersOutputTypeDef(BaseModel): + Comment: Optional[str] = None + CloudWatchOutputConfig: Optional[CloudWatchOutputConfigTypeDef] = None + DocumentHash: Optional[str] = None + DocumentHashType: Optional[DocumentHashTypeType] = None + DocumentVersion: Optional[str] = None + NotificationConfig: Optional[NotificationConfigOutputTypeDef] = None + OutputS3BucketName: Optional[str] = None + OutputS3KeyPrefix: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + ServiceRoleArn: Optional[str] = None + TimeoutSeconds: Optional[int] = None + +class ComplianceItemTypeDef(BaseModel): + ComplianceType: Optional[str] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + Id: Optional[str] = None + Title: Optional[str] = None + Status: Optional[ComplianceStatusType] = None + Severity: Optional[ComplianceSeverityType] = None + ExecutionSummary: Optional[ComplianceExecutionSummaryOutputTypeDef] = None + Details: Optional[Dict[str, str]] = None + +class ListComplianceItemsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ComplianceStringFilterTypeDef]] = None + ResourceIds: Optional[Sequence[str]] = None + ResourceTypes: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListComplianceSummariesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ComplianceStringFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListResourceComplianceSummariesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ComplianceStringFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class CompliantSummaryTypeDef(BaseModel): + CompliantCount: Optional[int] = None + SeveritySummary: Optional[SeveritySummaryTypeDef] = None + +class NonCompliantSummaryTypeDef(BaseModel): + NonCompliantCount: Optional[int] = None + SeveritySummary: Optional[SeveritySummaryTypeDef] = None + +class CreateActivationRequestRequestTypeDef(BaseModel): + IamRole: str + Description: Optional[str] = None + DefaultInstanceName: Optional[str] = None + RegistrationLimit: Optional[int] = None + ExpirationDate: Optional[TimestampTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + RegistrationMetadata: Optional[Sequence[RegistrationMetadataItemTypeDef]] = None + +class CreateDocumentRequestRequestTypeDef(BaseModel): + Content: str + Name: str + Requires: Optional[Sequence[DocumentRequiresTypeDef]] = None + Attachments: Optional[Sequence[AttachmentsSourceTypeDef]] = None + DisplayName: Optional[str] = None + VersionName: Optional[str] = None + DocumentType: Optional[DocumentTypeType] = None + DocumentFormat: Optional[DocumentFormatType] = None + TargetType: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DocumentIdentifierTypeDef(BaseModel): + Name: Optional[str] = None + CreatedDate: Optional[datetime] = None + DisplayName: Optional[str] = None + Owner: Optional[str] = None + VersionName: Optional[str] = None + PlatformTypes: Optional[List[PlatformTypeType]] = None + DocumentVersion: Optional[str] = None + DocumentType: Optional[DocumentTypeType] = None + SchemaVersion: Optional[str] = None + DocumentFormat: Optional[DocumentFormatType] = None + TargetType: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + Requires: Optional[List[DocumentRequiresTypeDef]] = None + ReviewStatus: Optional[ReviewStatusType] = None + Author: Optional[str] = None + +class GetDocumentResultTypeDef(BaseModel): + Name: str + CreatedDate: datetime + DisplayName: str + VersionName: str + DocumentVersion: str + Status: DocumentStatusType + StatusInformation: str + Content: str + DocumentType: DocumentTypeType + DocumentFormat: DocumentFormatType + Requires: List[DocumentRequiresTypeDef] + AttachmentsContent: List[AttachmentContentTypeDef] + ReviewStatus: ReviewStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class OpsItemSummaryTypeDef(BaseModel): + CreatedBy: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastModifiedBy: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + Priority: Optional[int] = None + Source: Optional[str] = None + Status: Optional[OpsItemStatusType] = None + OpsItemId: Optional[str] = None + Title: Optional[str] = None + OperationalData: Optional[Dict[str, OpsItemDataValueTypeDef]] = None + Category: Optional[str] = None + Severity: Optional[str] = None + OpsItemType: Optional[str] = None + ActualStartTime: Optional[datetime] = None + ActualEndTime: Optional[datetime] = None + PlannedStartTime: Optional[datetime] = None + PlannedEndTime: Optional[datetime] = None + +class CreateOpsItemRequestRequestTypeDef(BaseModel): + Description: str + Source: str + Title: str + OpsItemType: Optional[str] = None + OperationalData: Optional[Mapping[str, OpsItemDataValueTypeDef]] = None + Notifications: Optional[Sequence[OpsItemNotificationTypeDef]] = None + Priority: Optional[int] = None + RelatedOpsItems: Optional[Sequence[RelatedOpsItemTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + Category: Optional[str] = None + Severity: Optional[str] = None + ActualStartTime: Optional[TimestampTypeDef] = None + ActualEndTime: Optional[TimestampTypeDef] = None + PlannedStartTime: Optional[TimestampTypeDef] = None + PlannedEndTime: Optional[TimestampTypeDef] = None + AccountId: Optional[str] = None + +class OpsItemTypeDef(BaseModel): + CreatedBy: Optional[str] = None + OpsItemType: Optional[str] = None + CreatedTime: Optional[datetime] = None + Description: Optional[str] = None + LastModifiedBy: Optional[str] = None + LastModifiedTime: Optional[datetime] = None + Notifications: Optional[List[OpsItemNotificationTypeDef]] = None + Priority: Optional[int] = None + RelatedOpsItems: Optional[List[RelatedOpsItemTypeDef]] = None + Status: Optional[OpsItemStatusType] = None + OpsItemId: Optional[str] = None + Version: Optional[str] = None + Title: Optional[str] = None + Source: Optional[str] = None + OperationalData: Optional[Dict[str, OpsItemDataValueTypeDef]] = None + Category: Optional[str] = None + Severity: Optional[str] = None + ActualStartTime: Optional[datetime] = None + ActualEndTime: Optional[datetime] = None + PlannedStartTime: Optional[datetime] = None + PlannedEndTime: Optional[datetime] = None + OpsItemArn: Optional[str] = None + +class UpdateOpsItemRequestRequestTypeDef(BaseModel): + OpsItemId: str + Description: Optional[str] = None + OperationalData: Optional[Mapping[str, OpsItemDataValueTypeDef]] = None + OperationalDataToDelete: Optional[Sequence[str]] = None + Notifications: Optional[Sequence[OpsItemNotificationTypeDef]] = None + Priority: Optional[int] = None + RelatedOpsItems: Optional[Sequence[RelatedOpsItemTypeDef]] = None + Status: Optional[OpsItemStatusType] = None + Title: Optional[str] = None + Category: Optional[str] = None + Severity: Optional[str] = None + ActualStartTime: Optional[TimestampTypeDef] = None + ActualEndTime: Optional[TimestampTypeDef] = None + PlannedStartTime: Optional[TimestampTypeDef] = None + PlannedEndTime: Optional[TimestampTypeDef] = None + OpsItemArn: Optional[str] = None + +class CreateOpsMetadataRequestRequestTypeDef(BaseModel): + ResourceId: str + Metadata: Optional[Mapping[str, MetadataValueTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class GetOpsMetadataResultTypeDef(BaseModel): + ResourceId: str + Metadata: Dict[str, MetadataValueTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateOpsMetadataRequestRequestTypeDef(BaseModel): + OpsMetadataArn: str + MetadataToUpdate: Optional[Mapping[str, MetadataValueTypeDef]] = None + KeysToDelete: Optional[Sequence[str]] = None + +class DescribeActivationsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[DescribeActivationsFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeActivationsRequestDescribeActivationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[DescribeActivationsFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAssociationExecutionTargetsRequestDescribeAssociationExecutionTargetsPaginateTypeDef(BaseModel): + AssociationId: str + ExecutionId: str + Filters: Optional[Sequence[AssociationExecutionTargetsFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAssociationExecutionsRequestDescribeAssociationExecutionsPaginateTypeDef(BaseModel): + AssociationId: str + Filters: Optional[Sequence[AssociationExecutionFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAutomationExecutionsRequestDescribeAutomationExecutionsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[AutomationExecutionFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEffectiveInstanceAssociationsRequestDescribeEffectiveInstanceAssociationsPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeEffectivePatchesForPatchBaselineRequestDescribeEffectivePatchesForPatchBaselinePaginateTypeDef(BaseModel): + BaselineId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceAssociationsStatusRequestDescribeInstanceAssociationsStatusPaginateTypeDef(BaseModel): + InstanceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstancePatchStatesRequestDescribeInstancePatchStatesPaginateTypeDef(BaseModel): + InstanceIds: Sequence[str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInventoryDeletionsRequestDescribeInventoryDeletionsPaginateTypeDef(BaseModel): + DeletionId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePatchPropertiesRequestDescribePatchPropertiesPaginateTypeDef(BaseModel): + OperatingSystem: OperatingSystemType + Property: PatchPropertyType + PatchSet: Optional[PatchSetType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetInventorySchemaRequestGetInventorySchemaPaginateTypeDef(BaseModel): + TypeName: Optional[str] = None + Aggregator: Optional[bool] = None + SubType: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetParameterHistoryRequestGetParameterHistoryPaginateTypeDef(BaseModel): + Name: str + WithDecryption: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourcePoliciesRequestGetResourcePoliciesPaginateTypeDef(BaseModel): + ResourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociationVersionsRequestListAssociationVersionsPaginateTypeDef(BaseModel): + AssociationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssociationsRequestListAssociationsPaginateTypeDef(BaseModel): + AssociationFilterList: Optional[Sequence[AssociationFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCommandInvocationsRequestListCommandInvocationsPaginateTypeDef(BaseModel): + CommandId: Optional[str] = None + InstanceId: Optional[str] = None + Filters: Optional[Sequence[CommandFilterTypeDef]] = None + Details: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCommandsRequestListCommandsPaginateTypeDef(BaseModel): + CommandId: Optional[str] = None + InstanceId: Optional[str] = None + Filters: Optional[Sequence[CommandFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComplianceItemsRequestListComplianceItemsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ComplianceStringFilterTypeDef]] = None + ResourceIds: Optional[Sequence[str]] = None + ResourceTypes: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComplianceSummariesRequestListComplianceSummariesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ComplianceStringFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDocumentVersionsRequestListDocumentVersionsPaginateTypeDef(BaseModel): + Name: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceComplianceSummariesRequestListResourceComplianceSummariesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ComplianceStringFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceDataSyncRequestListResourceDataSyncPaginateTypeDef(BaseModel): + SyncType: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAutomationStepExecutionsRequestDescribeAutomationStepExecutionsPaginateTypeDef(BaseModel): + AutomationExecutionId: str + Filters: Optional[Sequence[StepExecutionFilterTypeDef]] = None + ReverseOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAutomationStepExecutionsRequestRequestTypeDef(BaseModel): + AutomationExecutionId: str + Filters: Optional[Sequence[StepExecutionFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ReverseOrder: Optional[bool] = None + +class DescribeAvailablePatchesRequestDescribeAvailablePatchesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeAvailablePatchesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstancePatchesRequestDescribeInstancePatchesPaginateTypeDef(BaseModel): + InstanceId: str + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstancePatchesRequestRequestTypeDef(BaseModel): + InstanceId: str + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribePatchBaselinesRequestDescribePatchBaselinesPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePatchBaselinesRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribePatchGroupsRequestDescribePatchGroupsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribePatchGroupsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + NextToken: Optional[str] = None + +class DescribeAvailablePatchesResultTypeDef(BaseModel): + Patches: List[PatchTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeEffectiveInstanceAssociationsResultTypeDef(BaseModel): + Associations: List[InstanceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstanceInformationRequestDescribeInstanceInformationPaginateTypeDef(BaseModel): + InstanceInformationFilterList: Optional[Sequence[InstanceInformationFilterTypeDef]] = None + Filters: Optional[Sequence[InstanceInformationStringFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceInformationRequestRequestTypeDef(BaseModel): + InstanceInformationFilterList: Optional[Sequence[InstanceInformationFilterTypeDef]] = None + Filters: Optional[Sequence[InstanceInformationStringFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeInstancePatchStatesForPatchGroupRequestDescribeInstancePatchStatesForPatchGroupPaginateTypeDef(BaseModel): + PatchGroup: str + Filters: Optional[Sequence[InstancePatchStateFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstancePatchStatesForPatchGroupRequestRequestTypeDef(BaseModel): + PatchGroup: str + Filters: Optional[Sequence[InstancePatchStateFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeInstancePatchStatesForPatchGroupResultTypeDef(BaseModel): + InstancePatchStates: List[InstancePatchStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstancePatchStatesResultTypeDef(BaseModel): + InstancePatchStates: List[InstancePatchStateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstancePatchesResultTypeDef(BaseModel): + Patches: List[PatchComplianceDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstancePropertiesRequestDescribeInstancePropertiesPaginateTypeDef(BaseModel): + InstancePropertyFilterList: Optional[Sequence[InstancePropertyFilterTypeDef]] = None + FiltersWithOperator: Optional[Sequence[InstancePropertyStringFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstancePropertiesRequestRequestTypeDef(BaseModel): + InstancePropertyFilterList: Optional[Sequence[InstancePropertyFilterTypeDef]] = None + FiltersWithOperator: Optional[Sequence[InstancePropertyStringFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowExecutionTaskInvocationsRequestDescribeMaintenanceWindowExecutionTaskInvocationsPaginateTypeDef(BaseModel): + WindowExecutionId: str + TaskId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowExecutionTaskInvocationsRequestRequestTypeDef(BaseModel): + WindowExecutionId: str + TaskId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowExecutionTasksRequestDescribeMaintenanceWindowExecutionTasksPaginateTypeDef(BaseModel): + WindowExecutionId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowExecutionTasksRequestRequestTypeDef(BaseModel): + WindowExecutionId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowExecutionsRequestDescribeMaintenanceWindowExecutionsPaginateTypeDef(BaseModel): + WindowId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowExecutionsRequestRequestTypeDef(BaseModel): + WindowId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowTargetsRequestDescribeMaintenanceWindowTargetsPaginateTypeDef(BaseModel): + WindowId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowTargetsRequestRequestTypeDef(BaseModel): + WindowId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowTasksRequestDescribeMaintenanceWindowTasksPaginateTypeDef(BaseModel): + WindowId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowTasksRequestRequestTypeDef(BaseModel): + WindowId: str + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowsRequestDescribeMaintenanceWindowsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[MaintenanceWindowFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowExecutionTaskInvocationsResultTypeDef(BaseModel): + WindowExecutionTaskInvocationIdentities: List[ MaintenanceWindowExecutionTaskInvocationIdentityTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowExecutionsResultTypeDef(BaseModel): + WindowExecutions: List[MaintenanceWindowExecutionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowScheduleResultTypeDef(BaseModel): + ScheduledWindowExecutions: List[ScheduledWindowExecutionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowsForTargetResultTypeDef(BaseModel): + WindowIdentities: List[MaintenanceWindowIdentityForTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowsResultTypeDef(BaseModel): + WindowIdentities: List[MaintenanceWindowIdentityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOpsItemsRequestDescribeOpsItemsPaginateTypeDef(BaseModel): + OpsItemFilters: Optional[Sequence[OpsItemFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeOpsItemsRequestRequestTypeDef(BaseModel): + OpsItemFilters: Optional[Sequence[OpsItemFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetParametersByPathRequestGetParametersByPathPaginateTypeDef(BaseModel): + Path: str + Recursive: Optional[bool] = None + ParameterFilters: Optional[Sequence[ParameterStringFilterTypeDef]] = None + WithDecryption: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetParametersByPathRequestRequestTypeDef(BaseModel): + Path: str + Recursive: Optional[bool] = None + ParameterFilters: Optional[Sequence[ParameterStringFilterTypeDef]] = None + WithDecryption: Optional[bool] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeParametersRequestDescribeParametersPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[ParametersFilterTypeDef]] = None + ParameterFilters: Optional[Sequence[ParameterStringFilterTypeDef]] = None + Shared: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeParametersRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[ParametersFilterTypeDef]] = None + ParameterFilters: Optional[Sequence[ParameterStringFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Shared: Optional[bool] = None + +class DescribePatchBaselinesResultTypeDef(BaseModel): + BaselineIdentities: List[PatchBaselineIdentityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PatchGroupPatchBaselineMappingTypeDef(BaseModel): + PatchGroup: Optional[str] = None + BaselineIdentity: Optional[PatchBaselineIdentityTypeDef] = None + +class DescribeSessionsRequestDescribeSessionsPaginateTypeDef(BaseModel): + State: SessionStateType + Filters: Optional[Sequence[SessionFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSessionsRequestRequestTypeDef(BaseModel): + State: SessionStateType + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[SessionFilterTypeDef]] = None + +class UpdateDocumentDefaultVersionResultTypeDef(BaseModel): + Description: DocumentDefaultVersionDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentDescriptionTypeDef(BaseModel): + Sha1: Optional[str] = None + Hash: Optional[str] = None + HashType: Optional[DocumentHashTypeType] = None + Name: Optional[str] = None + DisplayName: Optional[str] = None + VersionName: Optional[str] = None + Owner: Optional[str] = None + CreatedDate: Optional[datetime] = None + Status: Optional[DocumentStatusType] = None + StatusInformation: Optional[str] = None + DocumentVersion: Optional[str] = None + Description: Optional[str] = None + Parameters: Optional[List[DocumentParameterTypeDef]] = None + PlatformTypes: Optional[List[PlatformTypeType]] = None + DocumentType: Optional[DocumentTypeType] = None + SchemaVersion: Optional[str] = None + LatestVersion: Optional[str] = None + DefaultVersion: Optional[str] = None + DocumentFormat: Optional[DocumentFormatType] = None + TargetType: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + AttachmentsInformation: Optional[List[AttachmentInformationTypeDef]] = None + Requires: Optional[List[DocumentRequiresTypeDef]] = None + Author: Optional[str] = None + ReviewInformation: Optional[List[ReviewInformationTypeDef]] = None + ApprovedVersion: Optional[str] = None + PendingReviewVersion: Optional[str] = None + ReviewStatus: Optional[ReviewStatusType] = None + Category: Optional[List[str]] = None + CategoryEnum: Optional[List[str]] = None + +class ListDocumentsRequestListDocumentsPaginateTypeDef(BaseModel): + DocumentFilterList: Optional[Sequence[DocumentFilterTypeDef]] = None + Filters: Optional[Sequence[DocumentKeyValuesFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDocumentsRequestRequestTypeDef(BaseModel): + DocumentFilterList: Optional[Sequence[DocumentFilterTypeDef]] = None + Filters: Optional[Sequence[DocumentKeyValuesFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DocumentReviewerResponseSourceTypeDef(BaseModel): + CreateTime: Optional[datetime] = None + UpdatedTime: Optional[datetime] = None + ReviewStatus: Optional[ReviewStatusType] = None + Comment: Optional[List[DocumentReviewCommentSourceTypeDef]] = None + Reviewer: Optional[str] = None + +class DocumentReviewsTypeDef(BaseModel): + Action: DocumentReviewActionType + Comment: Optional[Sequence[DocumentReviewCommentSourceTypeDef]] = None + +class ListDocumentVersionsResultTypeDef(BaseModel): + DocumentVersions: List[DocumentVersionInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class EffectivePatchTypeDef(BaseModel): + Patch: Optional[PatchTypeDef] = None + PatchStatus: Optional[PatchStatusTypeDef] = None + +class GetCommandInvocationRequestCommandExecutedWaitTypeDef(BaseModel): + CommandId: str + InstanceId: str + PluginName: Optional[str] = None + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class InventoryGroupTypeDef(BaseModel): + Name: str + Filters: Sequence[InventoryFilterTypeDef] + +class ListInventoryEntriesRequestRequestTypeDef(BaseModel): + InstanceId: str + TypeName: str + Filters: Optional[Sequence[InventoryFilterTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetInventoryRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[InventoryFilterTypeDef]] = None + Aggregators: Optional[Sequence["InventoryAggregatorTypeDef"]] = None + ResultAttributes: Optional[Sequence[ResultAttributeTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OpsAggregatorTypeDef(BaseModel): + AggregatorType: Optional[str] = None + TypeName: Optional[str] = None + AttributeName: Optional[str] = None + Values: Optional[Mapping[str, str]] = None + Filters: Optional[Sequence[OpsFilterTypeDef]] = None + Aggregators: Optional[Sequence[Dict[str, Any]]] = None + +class GetOpsSummaryRequestRequestTypeDef(BaseModel): + SyncName: Optional[str] = None + Filters: Optional[Sequence[OpsFilterTypeDef]] = None + Aggregators: Optional[Sequence["OpsAggregatorTypeDef"]] = None + ResultAttributes: Optional[Sequence[OpsResultAttributeTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetParameterResultTypeDef(BaseModel): + Parameter: ParameterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetParametersByPathResultTypeDef(BaseModel): + Parameters: List[ParameterTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetParametersResultTypeDef(BaseModel): + Parameters: List[ParameterTypeDef] + InvalidParameters: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePoliciesResponseTypeDef(BaseModel): + Policies: List[GetResourcePoliciesResponseEntryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetServiceSettingResultTypeDef(BaseModel): + ServiceSetting: ServiceSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ResetServiceSettingResultTypeDef(BaseModel): + ServiceSetting: ServiceSettingTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InstanceInformationTypeDef(BaseModel): + InstanceId: Optional[str] = None + PingStatus: Optional[PingStatusType] = None + LastPingDateTime: Optional[datetime] = None + AgentVersion: Optional[str] = None + IsLatestVersion: Optional[bool] = None + PlatformType: Optional[PlatformTypeType] = None + PlatformName: Optional[str] = None + PlatformVersion: Optional[str] = None + ActivationId: Optional[str] = None + IamRole: Optional[str] = None + RegistrationDate: Optional[datetime] = None + ResourceType: Optional[ResourceTypeType] = None + Name: Optional[str] = None + IPAddress: Optional[str] = None + ComputerName: Optional[str] = None + AssociationStatus: Optional[str] = None + LastAssociationExecutionDate: Optional[datetime] = None + LastSuccessfulAssociationExecutionDate: Optional[datetime] = None + AssociationOverview: Optional[InstanceAggregatedAssociationOverviewTypeDef] = None + SourceId: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + +class InstancePropertyTypeDef(BaseModel): + Name: Optional[str] = None + InstanceId: Optional[str] = None + InstanceType: Optional[str] = None + InstanceRole: Optional[str] = None + KeyName: Optional[str] = None + InstanceState: Optional[str] = None + Architecture: Optional[str] = None + IPAddress: Optional[str] = None + LaunchTime: Optional[datetime] = None + PingStatus: Optional[PingStatusType] = None + LastPingDateTime: Optional[datetime] = None + AgentVersion: Optional[str] = None + PlatformType: Optional[PlatformTypeType] = None + PlatformName: Optional[str] = None + PlatformVersion: Optional[str] = None + ActivationId: Optional[str] = None + IamRole: Optional[str] = None + RegistrationDate: Optional[datetime] = None + ResourceType: Optional[str] = None + ComputerName: Optional[str] = None + AssociationStatus: Optional[str] = None + LastAssociationExecutionDate: Optional[datetime] = None + LastSuccessfulAssociationExecutionDate: Optional[datetime] = None + AssociationOverview: Optional[InstanceAggregatedAssociationOverviewTypeDef] = None + SourceId: Optional[str] = None + SourceType: Optional[SourceTypeType] = None + +class InstanceAssociationOutputLocationTypeDef(BaseModel): + S3Location: Optional[S3OutputLocationTypeDef] = None + +class InstanceAssociationOutputUrlTypeDef(BaseModel): + S3OutputUrl: Optional[S3OutputUrlTypeDef] = None + +class InventoryDeletionSummaryTypeDef(BaseModel): + TotalCount: Optional[int] = None + RemainingCount: Optional[int] = None + SummaryItems: Optional[List[InventoryDeletionSummaryItemTypeDef]] = None + +class InventoryItemSchemaTypeDef(BaseModel): + TypeName: str + Attributes: List[InventoryItemAttributeTypeDef] + Version: Optional[str] = None + DisplayName: Optional[str] = None + +class PutInventoryRequestRequestTypeDef(BaseModel): + InstanceId: str + Items: Sequence[InventoryItemTypeDef] + +class InventoryResultEntityTypeDef(BaseModel): + Id: Optional[str] = None + Data: Optional[Dict[str, InventoryResultItemTypeDef]] = None + +class ListOpsItemEventsRequestListOpsItemEventsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[OpsItemEventFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOpsItemEventsRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[OpsItemEventFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOpsItemRelatedItemsRequestListOpsItemRelatedItemsPaginateTypeDef(BaseModel): + OpsItemId: Optional[str] = None + Filters: Optional[Sequence[OpsItemRelatedItemsFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOpsItemRelatedItemsRequestRequestTypeDef(BaseModel): + OpsItemId: Optional[str] = None + Filters: Optional[Sequence[OpsItemRelatedItemsFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOpsMetadataRequestListOpsMetadataPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[OpsMetadataFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOpsMetadataRequestRequestTypeDef(BaseModel): + Filters: Optional[Sequence[OpsMetadataFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListOpsMetadataResultTypeDef(BaseModel): + OpsMetadataList: List[OpsMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MaintenanceWindowRunCommandParametersTypeDef(BaseModel): + Comment: Optional[str] = None + CloudWatchOutputConfig: Optional[CloudWatchOutputConfigTypeDef] = None + DocumentHash: Optional[str] = None + DocumentHashType: Optional[DocumentHashTypeType] = None + DocumentVersion: Optional[str] = None + NotificationConfig: Optional[NotificationConfigTypeDef] = None + OutputS3BucketName: Optional[str] = None + OutputS3KeyPrefix: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + ServiceRoleArn: Optional[str] = None + TimeoutSeconds: Optional[int] = None + +class OpsEntityTypeDef(BaseModel): + Id: Optional[str] = None + Data: Optional[Dict[str, OpsEntityItemTypeDef]] = None + +class OpsItemEventSummaryTypeDef(BaseModel): + OpsItemId: Optional[str] = None + EventId: Optional[str] = None + Source: Optional[str] = None + DetailType: Optional[str] = None + Detail: Optional[str] = None + CreatedBy: Optional[OpsItemIdentityTypeDef] = None + CreatedTime: Optional[datetime] = None + +class OpsItemRelatedItemSummaryTypeDef(BaseModel): + OpsItemId: Optional[str] = None + AssociationId: Optional[str] = None + ResourceType: Optional[str] = None + AssociationType: Optional[str] = None + ResourceUri: Optional[str] = None + CreatedBy: Optional[OpsItemIdentityTypeDef] = None + CreatedTime: Optional[datetime] = None + LastModifiedBy: Optional[OpsItemIdentityTypeDef] = None + LastModifiedTime: Optional[datetime] = None + +class ParameterHistoryTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional[ParameterTypeType] = None + KeyId: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedUser: Optional[str] = None + Description: Optional[str] = None + Value: Optional[str] = None + AllowedPattern: Optional[str] = None + Version: Optional[int] = None + Labels: Optional[List[str]] = None + Tier: Optional[ParameterTierType] = None + Policies: Optional[List[ParameterInlinePolicyTypeDef]] = None + DataType: Optional[str] = None + +class ParameterMetadataTypeDef(BaseModel): + Name: Optional[str] = None + ARN: Optional[str] = None + Type: Optional[ParameterTypeType] = None + KeyId: Optional[str] = None + LastModifiedDate: Optional[datetime] = None + LastModifiedUser: Optional[str] = None + Description: Optional[str] = None + AllowedPattern: Optional[str] = None + Version: Optional[int] = None + Tier: Optional[ParameterTierType] = None + Policies: Optional[List[ParameterInlinePolicyTypeDef]] = None + DataType: Optional[str] = None + +class PatchFilterGroupOutputTypeDef(BaseModel): + PatchFilters: List[PatchFilterOutputTypeDef] + +class PatchFilterGroupTypeDef(BaseModel): + PatchFilters: Sequence[PatchFilterTypeDef] + +class ResourceDataSyncAwsOrganizationsSourceOutputTypeDef(BaseModel): + OrganizationSourceType: str + OrganizationalUnits: Optional[List[ResourceDataSyncOrganizationalUnitTypeDef]] = None + +class ResourceDataSyncAwsOrganizationsSourceTypeDef(BaseModel): + OrganizationSourceType: str + OrganizationalUnits: Optional[Sequence[ResourceDataSyncOrganizationalUnitTypeDef]] = None + +class ResourceDataSyncS3DestinationTypeDef(BaseModel): + BucketName: str + SyncFormat: Literal["JsonSerDe"] + Region: str + Prefix: Optional[str] = None + AWSKMSKeyARN: Optional[str] = None + DestinationDataSharing: Optional[ResourceDataSyncDestinationDataSharingTypeDef] = None + +class SessionTypeDef(BaseModel): + SessionId: Optional[str] = None + Target: Optional[str] = None + Status: Optional[SessionStatusType] = None + StartDate: Optional[datetime] = None + EndDate: Optional[datetime] = None + DocumentName: Optional[str] = None + Owner: Optional[str] = None + Reason: Optional[str] = None + Details: Optional[str] = None + OutputUrl: Optional[SessionManagerOutputUrlTypeDef] = None + MaxSessionDuration: Optional[str] = None + +class DescribeActivationsResultTypeDef(BaseModel): + ActivationList: List[ActivationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TargetLocationExtraOutputTypeDef(BaseModel): + Accounts: Optional[List[str]] = None + Regions: Optional[List[str]] = None + TargetLocationMaxConcurrency: Optional[str] = None + TargetLocationMaxErrors: Optional[str] = None + ExecutionRoleName: Optional[str] = None + TargetLocationAlarmConfiguration: Optional[AlarmConfigurationExtraOutputTypeDef] = None + +class AssociationExecutionTypeDef(BaseModel): + AssociationId: Optional[str] = None + AssociationVersion: Optional[str] = None + ExecutionId: Optional[str] = None + Status: Optional[str] = None + DetailedStatus: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastExecutionDate: Optional[datetime] = None + ResourceCountByStatus: Optional[str] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + +class CommandTypeDef(BaseModel): + CommandId: Optional[str] = None + DocumentName: Optional[str] = None + DocumentVersion: Optional[str] = None + Comment: Optional[str] = None + ExpiresAfter: Optional[datetime] = None + Parameters: Optional[Dict[str, List[str]]] = None + InstanceIds: Optional[List[str]] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + RequestedDateTime: Optional[datetime] = None + Status: Optional[CommandStatusType] = None + StatusDetails: Optional[str] = None + OutputS3Region: Optional[str] = None + OutputS3BucketName: Optional[str] = None + OutputS3KeyPrefix: Optional[str] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + TargetCount: Optional[int] = None + CompletedCount: Optional[int] = None + ErrorCount: Optional[int] = None + DeliveryTimedOutCount: Optional[int] = None + ServiceRole: Optional[str] = None + NotificationConfig: Optional[NotificationConfigOutputTypeDef] = None + CloudWatchOutputConfig: Optional[CloudWatchOutputConfigTypeDef] = None + TimeoutSeconds: Optional[int] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + +class GetMaintenanceWindowExecutionTaskResultTypeDef(BaseModel): + WindowExecutionId: str + TaskExecutionId: str + TaskArn: str + ServiceRole: str + Type: MaintenanceWindowTaskTypeType + TaskParameters: List[ Dict[str, MaintenanceWindowTaskParameterValueExpressionOutputTypeDef] + Priority: int + MaxConcurrency: str + MaxErrors: str + Status: MaintenanceWindowExecutionStatusType + StatusDetails: str + StartTime: datetime + EndTime: datetime + AlarmConfiguration: AlarmConfigurationOutputTypeDef + TriggeredAlarms: List[AlarmStateInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MaintenanceWindowExecutionTaskIdentityTypeDef(BaseModel): + WindowExecutionId: Optional[str] = None + TaskExecutionId: Optional[str] = None + Status: Optional[MaintenanceWindowExecutionStatusType] = None + StatusDetails: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + TaskArn: Optional[str] = None + TaskType: Optional[MaintenanceWindowTaskTypeType] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + +class MaintenanceWindowTaskTypeDef(BaseModel): + WindowId: Optional[str] = None + WindowTaskId: Optional[str] = None + TaskArn: Optional[str] = None + Type: Optional[MaintenanceWindowTaskTypeType] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + TaskParameters: Optional[ Dict[str, MaintenanceWindowTaskParameterValueExpressionOutputTypeDef] = None + Priority: Optional[int] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + ServiceRoleArn: Optional[str] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + CutoffBehavior: Optional[MaintenanceWindowTaskCutoffBehaviorType] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + +class TargetLocationOutputTypeDef(BaseModel): + Accounts: Optional[List[str]] = None + Regions: Optional[List[str]] = None + TargetLocationMaxConcurrency: Optional[str] = None + TargetLocationMaxErrors: Optional[str] = None + ExecutionRoleName: Optional[str] = None + TargetLocationAlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + +class TargetLocationTypeDef(BaseModel): + Accounts: Optional[Sequence[str]] = None + Regions: Optional[Sequence[str]] = None + TargetLocationMaxConcurrency: Optional[str] = None + TargetLocationMaxErrors: Optional[str] = None + ExecutionRoleName: Optional[str] = None + TargetLocationAlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class ListAssociationsResultTypeDef(BaseModel): + Associations: List[AssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowTargetsResultTypeDef(BaseModel): + Targets: List[MaintenanceWindowTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeAssociationExecutionTargetsResultTypeDef(BaseModel): + AssociationExecutionTargets: List[AssociationExecutionTargetTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateAssociationStatusRequestRequestTypeDef(BaseModel): + Name: str + InstanceId: str + AssociationStatus: AssociationStatusTypeDef + +class PutComplianceItemsRequestRequestTypeDef(BaseModel): + ResourceId: str + ResourceType: str + ComplianceType: str + ExecutionSummary: ComplianceExecutionSummaryTypeDef + Items: Sequence[ComplianceItemEntryTypeDef] + ItemContentHash: Optional[str] = None + UploadType: Optional[ComplianceUploadTypeType] = None + +class ListCommandInvocationsResultTypeDef(BaseModel): + CommandInvocations: List[CommandInvocationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MaintenanceWindowTaskInvocationParametersOutputTypeDef(BaseModel): + RunCommand: Optional[MaintenanceWindowRunCommandParametersOutputTypeDef] = None + Automation: Optional[MaintenanceWindowAutomationParametersOutputTypeDef] = None + StepFunctions: Optional[MaintenanceWindowStepFunctionsParametersTypeDef] = None + Lambda: Optional[MaintenanceWindowLambdaParametersOutputTypeDef] = None + +class ListComplianceItemsResultTypeDef(BaseModel): + ComplianceItems: List[ComplianceItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ComplianceSummaryItemTypeDef(BaseModel): + ComplianceType: Optional[str] = None + CompliantSummary: Optional[CompliantSummaryTypeDef] = None + NonCompliantSummary: Optional[NonCompliantSummaryTypeDef] = None + +class ResourceComplianceSummaryItemTypeDef(BaseModel): + ComplianceType: Optional[str] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + Status: Optional[ComplianceStatusType] = None + OverallSeverity: Optional[ComplianceSeverityType] = None + ExecutionSummary: Optional[ComplianceExecutionSummaryOutputTypeDef] = None + CompliantSummary: Optional[CompliantSummaryTypeDef] = None + NonCompliantSummary: Optional[NonCompliantSummaryTypeDef] = None + +class ListDocumentsResultTypeDef(BaseModel): + DocumentIdentifiers: List[DocumentIdentifierTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeOpsItemsResponseTypeDef(BaseModel): + OpsItemSummaries: List[OpsItemSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetOpsItemResponseTypeDef(BaseModel): + OpsItem: OpsItemTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePatchGroupsResultTypeDef(BaseModel): + Mappings: List[PatchGroupPatchBaselineMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateDocumentResultTypeDef(BaseModel): + DocumentDescription: DocumentDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDocumentResultTypeDef(BaseModel): + Document: DocumentDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDocumentResultTypeDef(BaseModel): + DocumentDescription: DocumentDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentMetadataResponseInfoTypeDef(BaseModel): + ReviewerResponse: Optional[List[DocumentReviewerResponseSourceTypeDef]] = None + +class UpdateDocumentMetadataRequestRequestTypeDef(BaseModel): + Name: str + DocumentReviews: DocumentReviewsTypeDef + DocumentVersion: Optional[str] = None + +class DescribeEffectivePatchesForPatchBaselineResultTypeDef(BaseModel): + EffectivePatches: List[EffectivePatchTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InventoryAggregatorTypeDef(BaseModel): + Expression: Optional[str] = None + Aggregators: Optional[Sequence[Dict[str, Any]]] = None + Groups: Optional[Sequence[InventoryGroupTypeDef]] = None + +class GetOpsSummaryRequestGetOpsSummaryPaginateTypeDef(BaseModel): + SyncName: Optional[str] = None + Filters: Optional[Sequence[OpsFilterTypeDef]] = None + Aggregators: Optional[Sequence[OpsAggregatorTypeDef]] = None + ResultAttributes: Optional[Sequence[OpsResultAttributeTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceInformationResultTypeDef(BaseModel): + InstanceInformationList: List[InstanceInformationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInstancePropertiesResultTypeDef(BaseModel): + InstanceProperties: List[InstancePropertyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class InstanceAssociationStatusInfoTypeDef(BaseModel): + AssociationId: Optional[str] = None + Name: Optional[str] = None + DocumentVersion: Optional[str] = None + AssociationVersion: Optional[str] = None + InstanceId: Optional[str] = None + ExecutionDate: Optional[datetime] = None + Status: Optional[str] = None + DetailedStatus: Optional[str] = None + ExecutionSummary: Optional[str] = None + ErrorCode: Optional[str] = None + OutputUrl: Optional[InstanceAssociationOutputUrlTypeDef] = None + AssociationName: Optional[str] = None + +class DeleteInventoryResultTypeDef(BaseModel): + DeletionId: str + TypeName: str + DeletionSummary: InventoryDeletionSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class InventoryDeletionStatusItemTypeDef(BaseModel): + DeletionId: Optional[str] = None + TypeName: Optional[str] = None + DeletionStartTime: Optional[datetime] = None + LastStatus: Optional[InventoryDeletionStatusType] = None + LastStatusMessage: Optional[str] = None + DeletionSummary: Optional[InventoryDeletionSummaryTypeDef] = None + LastStatusUpdateTime: Optional[datetime] = None + +class GetInventorySchemaResultTypeDef(BaseModel): + Schemas: List[InventoryItemSchemaTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetInventoryResultTypeDef(BaseModel): + Entities: List[InventoryResultEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MaintenanceWindowTaskInvocationParametersTypeDef(BaseModel): + RunCommand: Optional[MaintenanceWindowRunCommandParametersTypeDef] = None + Automation: Optional[MaintenanceWindowAutomationParametersTypeDef] = None + StepFunctions: Optional[MaintenanceWindowStepFunctionsParametersTypeDef] = None + Lambda: Optional[MaintenanceWindowLambdaParametersTypeDef] = None + +class GetOpsSummaryResultTypeDef(BaseModel): + Entities: List[OpsEntityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListOpsItemEventsResponseTypeDef(BaseModel): + Summaries: List[OpsItemEventSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListOpsItemRelatedItemsResponseTypeDef(BaseModel): + Summaries: List[OpsItemRelatedItemSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetParameterHistoryResultTypeDef(BaseModel): + Parameters: List[ParameterHistoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeParametersResultTypeDef(BaseModel): + Parameters: List[ParameterMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class PatchRuleOutputTypeDef(BaseModel): + PatchFilterGroup: PatchFilterGroupOutputTypeDef + ComplianceLevel: Optional[PatchComplianceLevelType] = None + ApproveAfterDays: Optional[int] = None + ApproveUntilDate: Optional[str] = None + EnableNonSecurity: Optional[bool] = None + +class PatchRuleTypeDef(BaseModel): + PatchFilterGroup: PatchFilterGroupTypeDef + ComplianceLevel: Optional[PatchComplianceLevelType] = None + ApproveAfterDays: Optional[int] = None + ApproveUntilDate: Optional[str] = None + EnableNonSecurity: Optional[bool] = None + +class ResourceDataSyncSourceWithStateTypeDef(BaseModel): + SourceType: Optional[str] = None + AwsOrganizationsSource: Optional[ResourceDataSyncAwsOrganizationsSourceOutputTypeDef] = None + SourceRegions: Optional[List[str]] = None + IncludeFutureRegions: Optional[bool] = None + State: Optional[str] = None + EnableAllOpsDataSources: Optional[bool] = None + +class ResourceDataSyncSourceTypeDef(BaseModel): + SourceType: str + SourceRegions: Sequence[str] + AwsOrganizationsSource: Optional[ResourceDataSyncAwsOrganizationsSourceTypeDef] = None + IncludeFutureRegions: Optional[bool] = None + EnableAllOpsDataSources: Optional[bool] = None + +class DescribeMaintenanceWindowScheduleRequestRequestTypeDef(BaseModel): + WindowId: Optional[str] = None + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + ResourceType: Optional[MaintenanceWindowResourceTypeType] = None + Filters: Optional[Sequence[PatchOrchestratorFilterTypeDef]] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowsForTargetRequestDescribeMaintenanceWindowsForTargetPaginateTypeDef(BaseModel): + Targets: Sequence[TargetUnionTypeDef] + ResourceType: MaintenanceWindowResourceTypeType + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeMaintenanceWindowsForTargetRequestRequestTypeDef(BaseModel): + Targets: Sequence[TargetUnionTypeDef] + ResourceType: MaintenanceWindowResourceTypeType + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class RegisterTargetWithMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + ResourceType: MaintenanceWindowResourceTypeType + Targets: Sequence[TargetUnionTypeDef] + OwnerInformation: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + +class SendCommandRequestRequestTypeDef(BaseModel): + DocumentName: str + InstanceIds: Optional[Sequence[str]] = None + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + DocumentVersion: Optional[str] = None + DocumentHash: Optional[str] = None + DocumentHashType: Optional[DocumentHashTypeType] = None + TimeoutSeconds: Optional[int] = None + Comment: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + OutputS3Region: Optional[str] = None + OutputS3BucketName: Optional[str] = None + OutputS3KeyPrefix: Optional[str] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + ServiceRoleArn: Optional[str] = None + NotificationConfig: Optional[NotificationConfigTypeDef] = None + CloudWatchOutputConfig: Optional[CloudWatchOutputConfigTypeDef] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class UpdateMaintenanceWindowTargetRequestRequestTypeDef(BaseModel): + WindowId: str + WindowTargetId: str + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + OwnerInformation: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Replace: Optional[bool] = None + +class DescribeSessionsResponseTypeDef(BaseModel): + Sessions: List[SessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RunbookExtraOutputTypeDef(BaseModel): + DocumentName: str + DocumentVersion: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + TargetParameterName: Optional[str] = None + Targets: Optional[List[TargetExtraOutputTypeDef]] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + TargetLocations: Optional[List[TargetLocationExtraOutputTypeDef]] = None + +class DescribeAssociationExecutionsResultTypeDef(BaseModel): + AssociationExecutions: List[AssociationExecutionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCommandsResultTypeDef(BaseModel): + Commands: List[CommandTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class SendCommandResultTypeDef(BaseModel): + Command: CommandTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMaintenanceWindowExecutionTasksResultTypeDef(BaseModel): + WindowExecutionTaskIdentities: List[MaintenanceWindowExecutionTaskIdentityTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeMaintenanceWindowTasksResultTypeDef(BaseModel): + Tasks: List[MaintenanceWindowTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class AssociationDescriptionTypeDef(BaseModel): + Name: Optional[str] = None + InstanceId: Optional[str] = None + AssociationVersion: Optional[str] = None + Date: Optional[datetime] = None + LastUpdateAssociationDate: Optional[datetime] = None + Status: Optional[AssociationStatusOutputTypeDef] = None + Overview: Optional[AssociationOverviewTypeDef] = None + DocumentVersion: Optional[str] = None + AutomationTargetParameterName: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + AssociationId: Optional[str] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + ScheduleExpression: Optional[str] = None + OutputLocation: Optional[InstanceAssociationOutputLocationTypeDef] = None + LastExecutionDate: Optional[datetime] = None + LastSuccessfulExecutionDate: Optional[datetime] = None + AssociationName: Optional[str] = None + MaxErrors: Optional[str] = None + MaxConcurrency: Optional[str] = None + ComplianceSeverity: Optional[AssociationComplianceSeverityType] = None + SyncCompliance: Optional[AssociationSyncComplianceType] = None + ApplyOnlyAtCronInterval: Optional[bool] = None + CalendarNames: Optional[List[str]] = None + TargetLocations: Optional[List[TargetLocationOutputTypeDef]] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + +class AssociationVersionInfoTypeDef(BaseModel): + AssociationId: Optional[str] = None + AssociationVersion: Optional[str] = None + CreatedDate: Optional[datetime] = None + Name: Optional[str] = None + DocumentVersion: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + ScheduleExpression: Optional[str] = None + OutputLocation: Optional[InstanceAssociationOutputLocationTypeDef] = None + AssociationName: Optional[str] = None + MaxErrors: Optional[str] = None + MaxConcurrency: Optional[str] = None + ComplianceSeverity: Optional[AssociationComplianceSeverityType] = None + SyncCompliance: Optional[AssociationSyncComplianceType] = None + ApplyOnlyAtCronInterval: Optional[bool] = None + CalendarNames: Optional[List[str]] = None + TargetLocations: Optional[List[TargetLocationOutputTypeDef]] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + +class CreateAssociationBatchRequestEntryOutputTypeDef(BaseModel): + Name: str + InstanceId: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + AutomationTargetParameterName: Optional[str] = None + DocumentVersion: Optional[str] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + ScheduleExpression: Optional[str] = None + OutputLocation: Optional[InstanceAssociationOutputLocationTypeDef] = None + AssociationName: Optional[str] = None + MaxErrors: Optional[str] = None + MaxConcurrency: Optional[str] = None + ComplianceSeverity: Optional[AssociationComplianceSeverityType] = None + SyncCompliance: Optional[AssociationSyncComplianceType] = None + ApplyOnlyAtCronInterval: Optional[bool] = None + CalendarNames: Optional[List[str]] = None + TargetLocations: Optional[List[TargetLocationOutputTypeDef]] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + +class RunbookOutputTypeDef(BaseModel): + DocumentName: str + DocumentVersion: Optional[str] = None + Parameters: Optional[Dict[str, List[str]]] = None + TargetParameterName: Optional[str] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + TargetLocations: Optional[List[TargetLocationOutputTypeDef]] = None + +class StepExecutionTypeDef(BaseModel): + StepName: Optional[str] = None + Action: Optional[str] = None + TimeoutSeconds: Optional[int] = None + OnFailure: Optional[str] = None + MaxAttempts: Optional[int] = None + ExecutionStartTime: Optional[datetime] = None + ExecutionEndTime: Optional[datetime] = None + StepStatus: Optional[AutomationExecutionStatusType] = None + ResponseCode: Optional[str] = None + Inputs: Optional[Dict[str, str]] = None + Outputs: Optional[Dict[str, List[str]]] = None + Response: Optional[str] = None + FailureMessage: Optional[str] = None + FailureDetails: Optional[FailureDetailsTypeDef] = None + StepExecutionId: Optional[str] = None + OverriddenParameters: Optional[Dict[str, List[str]]] = None + IsEnd: Optional[bool] = None + NextStep: Optional[str] = None + IsCritical: Optional[bool] = None + ValidNextSteps: Optional[List[str]] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + TargetLocation: Optional[TargetLocationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + ParentStepDetails: Optional[ParentStepDetailsTypeDef] = None + +class CreateAssociationBatchRequestEntryTypeDef(BaseModel): + Name: str + InstanceId: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + AutomationTargetParameterName: Optional[str] = None + DocumentVersion: Optional[str] = None + Targets: Optional[Sequence[TargetTypeDef]] = None + ScheduleExpression: Optional[str] = None + OutputLocation: Optional[InstanceAssociationOutputLocationTypeDef] = None + AssociationName: Optional[str] = None + MaxErrors: Optional[str] = None + MaxConcurrency: Optional[str] = None + ComplianceSeverity: Optional[AssociationComplianceSeverityType] = None + SyncCompliance: Optional[AssociationSyncComplianceType] = None + ApplyOnlyAtCronInterval: Optional[bool] = None + CalendarNames: Optional[Sequence[str]] = None + TargetLocations: Optional[Sequence[TargetLocationTypeDef]] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[Sequence[Mapping[str, Sequence[str]]]] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class RunbookTypeDef(BaseModel): + DocumentName: str + DocumentVersion: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + TargetParameterName: Optional[str] = None + Targets: Optional[Sequence[TargetTypeDef]] = None + TargetMaps: Optional[Sequence[Mapping[str, Sequence[str]]]] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + TargetLocations: Optional[Sequence[TargetLocationTypeDef]] = None + +class GetMaintenanceWindowTaskResultTypeDef(BaseModel): + WindowId: str + WindowTaskId: str + Targets: List[TargetOutputTypeDef] + TaskArn: str + ServiceRoleArn: str + TaskType: MaintenanceWindowTaskTypeType + TaskParameters: Dict[str, MaintenanceWindowTaskParameterValueExpressionOutputTypeDef] + TaskInvocationParameters: MaintenanceWindowTaskInvocationParametersOutputTypeDef + Priority: int + MaxConcurrency: str + MaxErrors: str + LoggingInfo: LoggingInfoTypeDef + Name: str + Description: str + CutoffBehavior: MaintenanceWindowTaskCutoffBehaviorType + AlarmConfiguration: AlarmConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMaintenanceWindowTaskResultTypeDef(BaseModel): + WindowId: str + WindowTaskId: str + Targets: List[TargetOutputTypeDef] + TaskArn: str + ServiceRoleArn: str + TaskParameters: Dict[str, MaintenanceWindowTaskParameterValueExpressionOutputTypeDef] + TaskInvocationParameters: MaintenanceWindowTaskInvocationParametersOutputTypeDef + Priority: int + MaxConcurrency: str + MaxErrors: str + LoggingInfo: LoggingInfoTypeDef + Name: str + Description: str + CutoffBehavior: MaintenanceWindowTaskCutoffBehaviorType + AlarmConfiguration: AlarmConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListComplianceSummariesResultTypeDef(BaseModel): + ComplianceSummaryItems: List[ComplianceSummaryItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListResourceComplianceSummariesResultTypeDef(BaseModel): + ResourceComplianceSummaryItems: List[ResourceComplianceSummaryItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDocumentMetadataHistoryResponseTypeDef(BaseModel): + Name: str + DocumentVersion: str + Author: str + Metadata: DocumentMetadataResponseInfoTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetInventoryRequestGetInventoryPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[InventoryFilterTypeDef]] = None + Aggregators: Optional[Sequence[InventoryAggregatorTypeDef]] = None + ResultAttributes: Optional[Sequence[ResultAttributeTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeInstanceAssociationsStatusResultTypeDef(BaseModel): + InstanceAssociationStatusInfos: List[InstanceAssociationStatusInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeInventoryDeletionsResultTypeDef(BaseModel): + InventoryDeletions: List[InventoryDeletionStatusItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RegisterTaskWithMaintenanceWindowRequestRequestTypeDef(BaseModel): + WindowId: str + TaskArn: str + TaskType: MaintenanceWindowTaskTypeType + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + ServiceRoleArn: Optional[str] = None + TaskParameters: Optional[ Mapping[str, MaintenanceWindowTaskParameterValueExpressionUnionTypeDef] = None + TaskInvocationParameters: Optional[MaintenanceWindowTaskInvocationParametersTypeDef] = None + Priority: Optional[int] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + Name: Optional[str] = None + Description: Optional[str] = None + ClientToken: Optional[str] = None + CutoffBehavior: Optional[MaintenanceWindowTaskCutoffBehaviorType] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class UpdateMaintenanceWindowTaskRequestRequestTypeDef(BaseModel): + WindowId: str + WindowTaskId: str + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + TaskArn: Optional[str] = None + ServiceRoleArn: Optional[str] = None + TaskParameters: Optional[ Mapping[str, MaintenanceWindowTaskParameterValueExpressionUnionTypeDef] = None + TaskInvocationParameters: Optional[MaintenanceWindowTaskInvocationParametersTypeDef] = None + Priority: Optional[int] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + LoggingInfo: Optional[LoggingInfoTypeDef] = None + Name: Optional[str] = None + Description: Optional[str] = None + Replace: Optional[bool] = None + CutoffBehavior: Optional[MaintenanceWindowTaskCutoffBehaviorType] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class PatchRuleGroupOutputTypeDef(BaseModel): + PatchRules: List[PatchRuleOutputTypeDef] + +class PatchRuleGroupTypeDef(BaseModel): + PatchRules: Sequence[PatchRuleTypeDef] + +class ResourceDataSyncItemTypeDef(BaseModel): + SyncName: Optional[str] = None + SyncType: Optional[str] = None + SyncSource: Optional[ResourceDataSyncSourceWithStateTypeDef] = None + S3Destination: Optional[ResourceDataSyncS3DestinationTypeDef] = None + LastSyncTime: Optional[datetime] = None + LastSuccessfulSyncTime: Optional[datetime] = None + SyncLastModifiedTime: Optional[datetime] = None + LastStatus: Optional[LastResourceDataSyncStatusType] = None + SyncCreatedTime: Optional[datetime] = None + LastSyncStatusMessage: Optional[str] = None + +class CreateResourceDataSyncRequestRequestTypeDef(BaseModel): + SyncName: str + S3Destination: Optional[ResourceDataSyncS3DestinationTypeDef] = None + SyncType: Optional[str] = None + SyncSource: Optional[ResourceDataSyncSourceTypeDef] = None + +class UpdateResourceDataSyncRequestRequestTypeDef(BaseModel): + SyncName: str + SyncType: str + SyncSource: ResourceDataSyncSourceTypeDef + +class CreateAssociationResultTypeDef(BaseModel): + AssociationDescription: AssociationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAssociationResultTypeDef(BaseModel): + AssociationDescription: AssociationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssociationResultTypeDef(BaseModel): + AssociationDescription: AssociationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAssociationStatusResultTypeDef(BaseModel): + AssociationDescription: AssociationDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociationVersionsResultTypeDef(BaseModel): + AssociationVersions: List[AssociationVersionInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FailedCreateAssociationTypeDef(BaseModel): + Entry: Optional[CreateAssociationBatchRequestEntryOutputTypeDef] = None + Message: Optional[str] = None + Fault: Optional[FaultType] = None + +class AutomationExecutionMetadataTypeDef(BaseModel): + AutomationExecutionId: Optional[str] = None + DocumentName: Optional[str] = None + DocumentVersion: Optional[str] = None + AutomationExecutionStatus: Optional[AutomationExecutionStatusType] = None + ExecutionStartTime: Optional[datetime] = None + ExecutionEndTime: Optional[datetime] = None + ExecutedBy: Optional[str] = None + LogFile: Optional[str] = None + Outputs: Optional[Dict[str, List[str]]] = None + Mode: Optional[ExecutionModeType] = None + ParentAutomationExecutionId: Optional[str] = None + CurrentStepName: Optional[str] = None + CurrentAction: Optional[str] = None + FailureMessage: Optional[str] = None + TargetParameterName: Optional[str] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + ResolvedTargets: Optional[ResolvedTargetsTypeDef] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + Target: Optional[str] = None + AutomationType: Optional[AutomationTypeType] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + AutomationSubtype: Optional[Literal["ChangeRequest"]] = None + ScheduledTime: Optional[datetime] = None + Runbooks: Optional[List[RunbookOutputTypeDef]] = None + OpsItemId: Optional[str] = None + AssociationId: Optional[str] = None + ChangeRequestName: Optional[str] = None + +class AutomationExecutionTypeDef(BaseModel): + AutomationExecutionId: Optional[str] = None + DocumentName: Optional[str] = None + DocumentVersion: Optional[str] = None + ExecutionStartTime: Optional[datetime] = None + ExecutionEndTime: Optional[datetime] = None + AutomationExecutionStatus: Optional[AutomationExecutionStatusType] = None + StepExecutions: Optional[List[StepExecutionTypeDef]] = None + StepExecutionsTruncated: Optional[bool] = None + Parameters: Optional[Dict[str, List[str]]] = None + Outputs: Optional[Dict[str, List[str]]] = None + FailureMessage: Optional[str] = None + Mode: Optional[ExecutionModeType] = None + ParentAutomationExecutionId: Optional[str] = None + ExecutedBy: Optional[str] = None + CurrentStepName: Optional[str] = None + CurrentAction: Optional[str] = None + TargetParameterName: Optional[str] = None + Targets: Optional[List[TargetOutputTypeDef]] = None + TargetMaps: Optional[List[Dict[str, List[str]]]] = None + ResolvedTargets: Optional[ResolvedTargetsTypeDef] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + Target: Optional[str] = None + TargetLocations: Optional[List[TargetLocationOutputTypeDef]] = None + ProgressCounters: Optional[ProgressCountersTypeDef] = None + AlarmConfiguration: Optional[AlarmConfigurationOutputTypeDef] = None + TriggeredAlarms: Optional[List[AlarmStateInformationTypeDef]] = None + AutomationSubtype: Optional[Literal["ChangeRequest"]] = None + ScheduledTime: Optional[datetime] = None + Runbooks: Optional[List[RunbookOutputTypeDef]] = None + OpsItemId: Optional[str] = None + AssociationId: Optional[str] = None + ChangeRequestName: Optional[str] = None + Variables: Optional[Dict[str, List[str]]] = None + +class DescribeAutomationStepExecutionsResultTypeDef(BaseModel): + StepExecutions: List[StepExecutionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateAssociationRequestRequestTypeDef(BaseModel): + Name: str + DocumentVersion: Optional[str] = None + InstanceId: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + ScheduleExpression: Optional[str] = None + OutputLocation: Optional[InstanceAssociationOutputLocationTypeDef] = None + AssociationName: Optional[str] = None + AutomationTargetParameterName: Optional[str] = None + MaxErrors: Optional[str] = None + MaxConcurrency: Optional[str] = None + ComplianceSeverity: Optional[AssociationComplianceSeverityType] = None + SyncCompliance: Optional[AssociationSyncComplianceType] = None + ApplyOnlyAtCronInterval: Optional[bool] = None + CalendarNames: Optional[Sequence[str]] = None + TargetLocations: Optional[Sequence[TargetLocationUnionTypeDef]] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[Sequence[Mapping[str, Sequence[str]]]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class StartAutomationExecutionRequestRequestTypeDef(BaseModel): + DocumentName: str + DocumentVersion: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + ClientToken: Optional[str] = None + Mode: Optional[ExecutionModeType] = None + TargetParameterName: Optional[str] = None + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + TargetMaps: Optional[Sequence[Mapping[str, Sequence[str]]]] = None + MaxConcurrency: Optional[str] = None + MaxErrors: Optional[str] = None + TargetLocations: Optional[Sequence[TargetLocationUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class UpdateAssociationRequestRequestTypeDef(BaseModel): + AssociationId: str + Parameters: Optional[Mapping[str, Sequence[str]]] = None + DocumentVersion: Optional[str] = None + ScheduleExpression: Optional[str] = None + OutputLocation: Optional[InstanceAssociationOutputLocationTypeDef] = None + Name: Optional[str] = None + Targets: Optional[Sequence[TargetUnionTypeDef]] = None + AssociationName: Optional[str] = None + AssociationVersion: Optional[str] = None + AutomationTargetParameterName: Optional[str] = None + MaxErrors: Optional[str] = None + MaxConcurrency: Optional[str] = None + ComplianceSeverity: Optional[AssociationComplianceSeverityType] = None + SyncCompliance: Optional[AssociationSyncComplianceType] = None + ApplyOnlyAtCronInterval: Optional[bool] = None + CalendarNames: Optional[Sequence[str]] = None + TargetLocations: Optional[Sequence[TargetLocationUnionTypeDef]] = None + ScheduleOffset: Optional[int] = None + Duration: Optional[int] = None + TargetMaps: Optional[Sequence[Mapping[str, Sequence[str]]]] = None + AlarmConfiguration: Optional[AlarmConfigurationTypeDef] = None + +class GetPatchBaselineResultTypeDef(BaseModel): + BaselineId: str + Name: str + OperatingSystem: OperatingSystemType + GlobalFilters: PatchFilterGroupOutputTypeDef + ApprovalRules: PatchRuleGroupOutputTypeDef + ApprovedPatches: List[str] + ApprovedPatchesComplianceLevel: PatchComplianceLevelType + ApprovedPatchesEnableNonSecurity: bool + RejectedPatches: List[str] + RejectedPatchesAction: PatchActionType + PatchGroups: List[str] + CreatedDate: datetime + ModifiedDate: datetime + Description: str + Sources: List[PatchSourceOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePatchBaselineResultTypeDef(BaseModel): + BaselineId: str + Name: str + OperatingSystem: OperatingSystemType + GlobalFilters: PatchFilterGroupOutputTypeDef + ApprovalRules: PatchRuleGroupOutputTypeDef + ApprovedPatches: List[str] + ApprovedPatchesComplianceLevel: PatchComplianceLevelType + ApprovedPatchesEnableNonSecurity: bool + RejectedPatches: List[str] + RejectedPatchesAction: PatchActionType + CreatedDate: datetime + ModifiedDate: datetime + Description: str + Sources: List[PatchSourceOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BaselineOverrideTypeDef(BaseModel): + OperatingSystem: Optional[OperatingSystemType] = None + GlobalFilters: Optional[PatchFilterGroupTypeDef] = None + ApprovalRules: Optional[PatchRuleGroupTypeDef] = None + ApprovedPatches: Optional[Sequence[str]] = None + ApprovedPatchesComplianceLevel: Optional[PatchComplianceLevelType] = None + RejectedPatches: Optional[Sequence[str]] = None + RejectedPatchesAction: Optional[PatchActionType] = None + ApprovedPatchesEnableNonSecurity: Optional[bool] = None + Sources: Optional[Sequence[PatchSourceTypeDef]] = None + +class CreatePatchBaselineRequestRequestTypeDef(BaseModel): + Name: str + OperatingSystem: Optional[OperatingSystemType] = None + GlobalFilters: Optional[PatchFilterGroupTypeDef] = None + ApprovalRules: Optional[PatchRuleGroupTypeDef] = None + ApprovedPatches: Optional[Sequence[str]] = None + ApprovedPatchesComplianceLevel: Optional[PatchComplianceLevelType] = None + ApprovedPatchesEnableNonSecurity: Optional[bool] = None + RejectedPatches: Optional[Sequence[str]] = None + RejectedPatchesAction: Optional[PatchActionType] = None + Description: Optional[str] = None + Sources: Optional[Sequence[PatchSourceUnionTypeDef]] = None + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdatePatchBaselineRequestRequestTypeDef(BaseModel): + BaselineId: str + Name: Optional[str] = None + GlobalFilters: Optional[PatchFilterGroupTypeDef] = None + ApprovalRules: Optional[PatchRuleGroupTypeDef] = None + ApprovedPatches: Optional[Sequence[str]] = None + ApprovedPatchesComplianceLevel: Optional[PatchComplianceLevelType] = None + ApprovedPatchesEnableNonSecurity: Optional[bool] = None + RejectedPatches: Optional[Sequence[str]] = None + RejectedPatchesAction: Optional[PatchActionType] = None + Description: Optional[str] = None + Sources: Optional[Sequence[PatchSourceUnionTypeDef]] = None + Replace: Optional[bool] = None + +class ListResourceDataSyncResultTypeDef(BaseModel): + ResourceDataSyncItems: List[ResourceDataSyncItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateAssociationBatchResultTypeDef(BaseModel): + Successful: List[AssociationDescriptionTypeDef] + Failed: List[FailedCreateAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAutomationExecutionsResultTypeDef(BaseModel): + AutomationExecutionMetadataList: List[AutomationExecutionMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetAutomationExecutionResultTypeDef(BaseModel): + AutomationExecution: AutomationExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssociationBatchRequestRequestTypeDef(BaseModel): + Entries: Sequence[CreateAssociationBatchRequestEntryUnionTypeDef] + +class StartChangeRequestExecutionRequestRequestTypeDef(BaseModel): + DocumentName: str + Runbooks: Sequence[RunbookUnionTypeDef] + ScheduledTime: Optional[TimestampTypeDef] = None + DocumentVersion: Optional[str] = None + Parameters: Optional[Mapping[str, Sequence[str]]] = None + ChangeRequestName: Optional[str] = None + ClientToken: Optional[str] = None + AutoApprove: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + ScheduledEndTime: Optional[TimestampTypeDef] = None + ChangeDetails: Optional[str] = None + +class GetDeployablePatchSnapshotForInstanceRequestRequestTypeDef(BaseModel): + InstanceId: str + SnapshotId: str + BaselineOverride: Optional[BaselineOverrideTypeDef] = None + diff --git a/aws_resource_validator/pydantic_models/ssm_constants.py b/aws_resource_validator/pydantic_models/ssm_constants.py new file mode 100644 index 00000000..727d8981 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_constants.py @@ -0,0 +1,799 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssociationComplianceSeverityType = Literal["CRITICAL", "HIGH", "LOW", "MEDIUM", "UNSPECIFIED"] +AssociationExecutionFilterKeyType = Literal["CreatedTime", "ExecutionId", "Status"] +AssociationExecutionTargetsFilterKeyType = Literal["ResourceId", "ResourceType", "Status"] +AssociationFilterKeyType = Literal["AssociationId", + "AssociationName", + "AssociationStatusName", + "InstanceId", + "LastExecutedAfter", + "LastExecutedBefore", + "Name", + "ResourceGroupName",] +AssociationFilterOperatorTypeType = Literal["EQUAL", "GREATER_THAN", "LESS_THAN"] +AssociationStatusNameType = Literal["Failed", "Pending", "Success"] +AssociationSyncComplianceType = Literal["AUTO", "MANUAL"] +AttachmentHashTypeType = Literal["Sha256"] +AttachmentsSourceKeyType = Literal["AttachmentReference", "S3FileUrl", "SourceUrl"] +AutomationExecutionFilterKeyType = Literal["AutomationSubtype", + "AutomationType", + "CurrentAction", + "DocumentNamePrefix", + "ExecutionId", + "ExecutionStatus", + "OpsItemId", + "ParentExecutionId", + "StartTimeAfter", + "StartTimeBefore", + "TagKey", + "TargetResourceGroup",] +AutomationExecutionStatusType = Literal["Approved", + "Cancelled", + "Cancelling", + "ChangeCalendarOverrideApproved", + "ChangeCalendarOverrideRejected", + "CompletedWithFailure", + "CompletedWithSuccess", + "Exited", + "Failed", + "InProgress", + "Pending", + "PendingApproval", + "PendingChangeCalendarOverride", + "Rejected", + "RunbookInProgress", + "Scheduled", + "Success", + "TimedOut", + "Waiting",] +AutomationSubtypeType = Literal["ChangeRequest"] +AutomationTypeType = Literal["CrossAccount", "Local"] +CalendarStateType = Literal["CLOSED", "OPEN"] +CommandExecutedWaiterName = Literal["command_executed"] +CommandFilterKeyType = Literal["DocumentName", "ExecutionStage", "InvokedAfter", "InvokedBefore", "Status"] +CommandInvocationStatusType = Literal["Cancelled", "Cancelling", "Delayed", "Failed", "InProgress", "Pending", "Success", "TimedOut"] +CommandPluginStatusType = Literal["Cancelled", "Failed", "InProgress", "Pending", "Success", "TimedOut"] +CommandStatusType = Literal["Cancelled", "Cancelling", "Failed", "InProgress", "Pending", "Success", "TimedOut"] +ComplianceQueryOperatorTypeType = Literal["BEGIN_WITH", "EQUAL", "GREATER_THAN", "LESS_THAN", "NOT_EQUAL"] +ComplianceSeverityType = Literal["CRITICAL", "HIGH", "INFORMATIONAL", "LOW", "MEDIUM", "UNSPECIFIED"] +ComplianceStatusType = Literal["COMPLIANT", "NON_COMPLIANT"] +ComplianceUploadTypeType = Literal["COMPLETE", "PARTIAL"] +ConnectionStatusType = Literal["connected", "notconnected"] +DescribeActivationsFilterKeysType = Literal["ActivationIds", "DefaultInstanceName", "IamRole"] +DescribeActivationsPaginatorName = Literal["describe_activations"] +DescribeAssociationExecutionTargetsPaginatorName = Literal["describe_association_execution_targets"] +DescribeAssociationExecutionsPaginatorName = Literal["describe_association_executions"] +DescribeAutomationExecutionsPaginatorName = Literal["describe_automation_executions"] +DescribeAutomationStepExecutionsPaginatorName = Literal["describe_automation_step_executions"] +DescribeAvailablePatchesPaginatorName = Literal["describe_available_patches"] +DescribeEffectiveInstanceAssociationsPaginatorName = Literal["describe_effective_instance_associations"] +DescribeEffectivePatchesForPatchBaselinePaginatorName = Literal["describe_effective_patches_for_patch_baseline"] +DescribeInstanceAssociationsStatusPaginatorName = Literal["describe_instance_associations_status"] +DescribeInstanceInformationPaginatorName = Literal["describe_instance_information"] +DescribeInstancePatchStatesForPatchGroupPaginatorName = Literal["describe_instance_patch_states_for_patch_group"] +DescribeInstancePatchStatesPaginatorName = Literal["describe_instance_patch_states"] +DescribeInstancePatchesPaginatorName = Literal["describe_instance_patches"] +DescribeInstancePropertiesPaginatorName = Literal["describe_instance_properties"] +DescribeInventoryDeletionsPaginatorName = Literal["describe_inventory_deletions"] +DescribeMaintenanceWindowExecutionTaskInvocationsPaginatorName = Literal["describe_maintenance_window_execution_task_invocations"] +DescribeMaintenanceWindowExecutionTasksPaginatorName = Literal["describe_maintenance_window_execution_tasks"] +DescribeMaintenanceWindowExecutionsPaginatorName = Literal["describe_maintenance_window_executions"] +DescribeMaintenanceWindowSchedulePaginatorName = Literal["describe_maintenance_window_schedule"] +DescribeMaintenanceWindowTargetsPaginatorName = Literal["describe_maintenance_window_targets"] +DescribeMaintenanceWindowTasksPaginatorName = Literal["describe_maintenance_window_tasks"] +DescribeMaintenanceWindowsForTargetPaginatorName = Literal["describe_maintenance_windows_for_target"] +DescribeMaintenanceWindowsPaginatorName = Literal["describe_maintenance_windows"] +DescribeOpsItemsPaginatorName = Literal["describe_ops_items"] +DescribeParametersPaginatorName = Literal["describe_parameters"] +DescribePatchBaselinesPaginatorName = Literal["describe_patch_baselines"] +DescribePatchGroupsPaginatorName = Literal["describe_patch_groups"] +DescribePatchPropertiesPaginatorName = Literal["describe_patch_properties"] +DescribeSessionsPaginatorName = Literal["describe_sessions"] +DocumentFilterKeyType = Literal["DocumentType", "Name", "Owner", "PlatformTypes"] +DocumentFormatType = Literal["JSON", "TEXT", "YAML"] +DocumentHashTypeType = Literal["Sha1", "Sha256"] +DocumentMetadataEnumType = Literal["DocumentReviews"] +DocumentParameterTypeType = Literal["String", "StringList"] +DocumentPermissionTypeType = Literal["Share"] +DocumentReviewActionType = Literal["Approve", "Reject", "SendForReview", "UpdateReview"] +DocumentReviewCommentTypeType = Literal["Comment"] +DocumentStatusType = Literal["Active", "Creating", "Deleting", "Failed", "Updating"] +DocumentTypeType = Literal["ApplicationConfiguration", + "ApplicationConfigurationSchema", + "Automation", + "Automation.ChangeTemplate", + "ChangeCalendar", + "CloudFormation", + "Command", + "ConformancePackTemplate", + "DeploymentStrategy", + "Package", + "Policy", + "ProblemAnalysis", + "ProblemAnalysisTemplate", + "QuickSetup", + "Session",] +ExecutionModeType = Literal["Auto", "Interactive"] +ExternalAlarmStateType = Literal["ALARM", "UNKNOWN"] +FaultType = Literal["Client", "Server", "Unknown"] +GetInventoryPaginatorName = Literal["get_inventory"] +GetInventorySchemaPaginatorName = Literal["get_inventory_schema"] +GetOpsSummaryPaginatorName = Literal["get_ops_summary"] +GetParameterHistoryPaginatorName = Literal["get_parameter_history"] +GetParametersByPathPaginatorName = Literal["get_parameters_by_path"] +GetResourcePoliciesPaginatorName = Literal["get_resource_policies"] +InstanceInformationFilterKeyType = Literal["ActivationIds", + "AgentVersion", + "AssociationStatus", + "IamRole", + "InstanceIds", + "PingStatus", + "PlatformTypes", + "ResourceType",] +InstancePatchStateOperatorTypeType = Literal["Equal", "GreaterThan", "LessThan", "NotEqual"] +InstancePropertyFilterKeyType = Literal["ActivationIds", + "AgentVersion", + "AssociationStatus", + "DocumentName", + "IamRole", + "InstanceIds", + "PingStatus", + "PlatformTypes", + "ResourceType",] +InstancePropertyFilterOperatorType = Literal["BeginWith", "Equal", "GreaterThan", "LessThan", "NotEqual"] +InventoryAttributeDataTypeType = Literal["number", "string"] +InventoryDeletionStatusType = Literal["Complete", "InProgress"] +InventoryQueryOperatorTypeType = Literal["BeginWith", "Equal", "Exists", "GreaterThan", "LessThan", "NotEqual"] +InventorySchemaDeleteOptionType = Literal["DeleteSchema", "DisableSchema"] +LastResourceDataSyncStatusType = Literal["Failed", "InProgress", "Successful"] +ListAssociationVersionsPaginatorName = Literal["list_association_versions"] +ListAssociationsPaginatorName = Literal["list_associations"] +ListCommandInvocationsPaginatorName = Literal["list_command_invocations"] +ListCommandsPaginatorName = Literal["list_commands"] +ListComplianceItemsPaginatorName = Literal["list_compliance_items"] +ListComplianceSummariesPaginatorName = Literal["list_compliance_summaries"] +ListDocumentVersionsPaginatorName = Literal["list_document_versions"] +ListDocumentsPaginatorName = Literal["list_documents"] +ListOpsItemEventsPaginatorName = Literal["list_ops_item_events"] +ListOpsItemRelatedItemsPaginatorName = Literal["list_ops_item_related_items"] +ListOpsMetadataPaginatorName = Literal["list_ops_metadata"] +ListResourceComplianceSummariesPaginatorName = Literal["list_resource_compliance_summaries"] +ListResourceDataSyncPaginatorName = Literal["list_resource_data_sync"] +MaintenanceWindowExecutionStatusType = Literal["CANCELLED", + "CANCELLING", + "FAILED", + "IN_PROGRESS", + "PENDING", + "SKIPPED_OVERLAPPING", + "SUCCESS", + "TIMED_OUT",] +MaintenanceWindowResourceTypeType = Literal["INSTANCE", "RESOURCE_GROUP"] +MaintenanceWindowTaskCutoffBehaviorType = Literal["CANCEL_TASK", "CONTINUE_TASK"] +MaintenanceWindowTaskTypeType = Literal["AUTOMATION", "LAMBDA", "RUN_COMMAND", "STEP_FUNCTIONS"] +NotificationEventType = Literal["All", "Cancelled", "Failed", "InProgress", "Success", "TimedOut"] +NotificationTypeType = Literal["Command", "Invocation"] +OperatingSystemType = Literal["ALMA_LINUX", + "AMAZON_LINUX", + "AMAZON_LINUX_2", + "AMAZON_LINUX_2022", + "AMAZON_LINUX_2023", + "CENTOS", + "DEBIAN", + "MACOS", + "ORACLE_LINUX", + "RASPBIAN", + "REDHAT_ENTERPRISE_LINUX", + "ROCKY_LINUX", + "SUSE", + "UBUNTU", + "WINDOWS",] +OpsFilterOperatorTypeType = Literal["BeginWith", "Equal", "Exists", "GreaterThan", "LessThan", "NotEqual"] +OpsItemDataTypeType = Literal["SearchableString", "String"] +OpsItemEventFilterKeyType = Literal["OpsItemId"] +OpsItemEventFilterOperatorType = Literal["Equal"] +OpsItemFilterKeyType = Literal["AccountId", + "ActualEndTime", + "ActualStartTime", + "AutomationId", + "Category", + "ChangeRequestByApproverArn", + "ChangeRequestByApproverName", + "ChangeRequestByRequesterArn", + "ChangeRequestByRequesterName", + "ChangeRequestByTargetsResourceGroup", + "ChangeRequestByTemplate", + "CreatedBy", + "CreatedTime", + "InsightByType", + "LastModifiedTime", + "OperationalData", + "OperationalDataKey", + "OperationalDataValue", + "OpsItemId", + "OpsItemType", + "PlannedEndTime", + "PlannedStartTime", + "Priority", + "ResourceId", + "Severity", + "Source", + "Status", + "Title",] +OpsItemFilterOperatorType = Literal["Contains", "Equal", "GreaterThan", "LessThan"] +OpsItemRelatedItemsFilterKeyType = Literal["AssociationId", "ResourceType", "ResourceUri"] +OpsItemRelatedItemsFilterOperatorType = Literal["Equal"] +OpsItemStatusType = Literal["Approved", + "Cancelled", + "Cancelling", + "ChangeCalendarOverrideApproved", + "ChangeCalendarOverrideRejected", + "Closed", + "CompletedWithFailure", + "CompletedWithSuccess", + "Failed", + "InProgress", + "Open", + "Pending", + "PendingApproval", + "PendingChangeCalendarOverride", + "Rejected", + "Resolved", + "RunbookInProgress", + "Scheduled", + "TimedOut",] +ParameterTierType = Literal["Advanced", "Intelligent-Tiering", "Standard"] +ParameterTypeType = Literal["SecureString", "String", "StringList"] +ParametersFilterKeyType = Literal["KeyId", "Name", "Type"] +PatchActionType = Literal["ALLOW_AS_DEPENDENCY", "BLOCK"] +PatchComplianceDataStateType = Literal["FAILED", + "INSTALLED", + "INSTALLED_OTHER", + "INSTALLED_PENDING_REBOOT", + "INSTALLED_REJECTED", + "MISSING", + "NOT_APPLICABLE",] +PatchComplianceLevelType = Literal["CRITICAL", "HIGH", "INFORMATIONAL", "LOW", "MEDIUM", "UNSPECIFIED"] +PatchDeploymentStatusType = Literal["APPROVED", "EXPLICIT_APPROVED", "EXPLICIT_REJECTED", "PENDING_APPROVAL"] +PatchFilterKeyType = Literal["ADVISORY_ID", + "ARCH", + "BUGZILLA_ID", + "CLASSIFICATION", + "CVE_ID", + "EPOCH", + "MSRC_SEVERITY", + "NAME", + "PATCH_ID", + "PATCH_SET", + "PRIORITY", + "PRODUCT", + "PRODUCT_FAMILY", + "RELEASE", + "REPOSITORY", + "SECTION", + "SECURITY", + "SEVERITY", + "VERSION",] +PatchOperationTypeType = Literal["Install", "Scan"] +PatchPropertyType = Literal["CLASSIFICATION", "MSRC_SEVERITY", "PRIORITY", "PRODUCT", "PRODUCT_FAMILY", "SEVERITY"] +PatchSetType = Literal["APPLICATION", "OS"] +PingStatusType = Literal["ConnectionLost", "Inactive", "Online"] +PlatformTypeType = Literal["Linux", "MacOS", "Windows"] +RebootOptionType = Literal["NoReboot", "RebootIfNeeded"] +ResourceDataSyncS3FormatType = Literal["JsonSerDe"] +ResourceTypeForTaggingType = Literal["Association", + "Automation", + "Document", + "MaintenanceWindow", + "ManagedInstance", + "OpsItem", + "OpsMetadata", + "Parameter", + "PatchBaseline",] +ResourceTypeType = Literal["EC2Instance", "ManagedInstance"] +ReviewStatusType = Literal["APPROVED", "NOT_REVIEWED", "PENDING", "REJECTED"] +SessionFilterKeyType = Literal["InvokedAfter", "InvokedBefore", "Owner", "SessionId", "Status", "Target"] +SessionStateType = Literal["Active", "History"] +SessionStatusType = Literal["Connected", "Connecting", "Disconnected", "Failed", "Terminated", "Terminating"] +SignalTypeType = Literal["Approve", "Reject", "Resume", "StartStep", "StopStep"] +SourceTypeType = Literal["AWS::EC2::Instance", "AWS::IoT::Thing", "AWS::SSM::ManagedInstance"] +StepExecutionFilterKeyType = Literal["Action", + "ParentStepExecutionId", + "ParentStepIteration", + "ParentStepIteratorValue", + "StartTimeAfter", + "StartTimeBefore", + "StepExecutionId", + "StepExecutionStatus", + "StepName",] +StopTypeType = Literal["Cancel", "Complete"] +SSMServiceName = Literal["ssm"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_activations", + "describe_association_execution_targets", + "describe_association_executions", + "describe_automation_executions", + "describe_automation_step_executions", + "describe_available_patches", + "describe_effective_instance_associations", + "describe_effective_patches_for_patch_baseline", + "describe_instance_associations_status", + "describe_instance_information", + "describe_instance_patch_states", + "describe_instance_patch_states_for_patch_group", + "describe_instance_patches", + "describe_instance_properties", + "describe_inventory_deletions", + "describe_maintenance_window_execution_task_invocations", + "describe_maintenance_window_execution_tasks", + "describe_maintenance_window_executions", + "describe_maintenance_window_schedule", + "describe_maintenance_window_targets", + "describe_maintenance_window_tasks", + "describe_maintenance_windows", + "describe_maintenance_windows_for_target", + "describe_ops_items", + "describe_parameters", + "describe_patch_baselines", + "describe_patch_groups", + "describe_patch_properties", + "describe_sessions", + "get_inventory", + "get_inventory_schema", + "get_ops_summary", + "get_parameter_history", + "get_parameters_by_path", + "get_resource_policies", + "list_association_versions", + "list_associations", + "list_command_invocations", + "list_commands", + "list_compliance_items", + "list_compliance_summaries", + "list_document_versions", + "list_documents", + "list_ops_item_events", + "list_ops_item_related_items", + "list_ops_metadata", + "list_resource_compliance_summaries", + "list_resource_data_sync",] +WaiterName = Literal["command_executed"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +BlobTypeDef = Union[str, bytes, IO[Any] +PatchSourceUnionTypeDef = Union['PatchSourceTypeDef', 'PatchSourceOutputTypeDef'] +MaintenanceWindowTaskParameterValueExpressionUnionTypeDef = Union[ 'MaintenanceWindowTaskParameterValueExpressionTypeDef', 'MaintenanceWindowTaskParameterValueExpressionExtraOutputTypeDef', ] +NotificationConfigUnionTypeDef = Union[ 'NotificationConfigTypeDef', 'NotificationConfigExtraOutputTypeDef' ] +TargetUnionTypeDef = Union['TargetTypeDef', 'TargetExtraOutputTypeDef'] +AlarmConfigurationUnionTypeDef = Union[ 'AlarmConfigurationTypeDef', 'AlarmConfigurationExtraOutputTypeDef' ] +AssociationStatusUnionTypeDef = Union['AssociationStatusTypeDef', 'AssociationStatusOutputTypeDef'] +ComplianceExecutionSummaryUnionTypeDef = Union[ 'ComplianceExecutionSummaryTypeDef', 'ComplianceExecutionSummaryExtraOutputTypeDef' ] +PatchFilterGroupUnionTypeDef = Union['PatchFilterGroupTypeDef', 'PatchFilterGroupOutputTypeDef'] +TargetLocationUnionTypeDef = Union['TargetLocationTypeDef', 'TargetLocationExtraOutputTypeDef'] +MaintenanceWindowTaskInvocationParametersUnionTypeDef = Union[ 'MaintenanceWindowTaskInvocationParametersTypeDef', 'MaintenanceWindowTaskInvocationParametersOutputTypeDef', ] +CreateAssociationBatchRequestEntryUnionTypeDef = Union[ 'CreateAssociationBatchRequestEntryTypeDef', 'CreateAssociationBatchRequestEntryOutputTypeDef' ] +RunbookUnionTypeDef = Union['RunbookTypeDef', 'RunbookExtraOutputTypeDef'] +PatchRuleGroupUnionTypeDef = Union['PatchRuleGroupTypeDef', 'PatchRuleGroupOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/ssm_contacts_classes.py b/aws_resource_validator/pydantic_models/ssm_contacts_classes.py new file mode 100644 index 00000000..619ae135 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_contacts_classes.py @@ -0,0 +1,553 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ssm_contacts_constants import * + +class AcceptPageRequestRequestTypeDef(BaseModel): + PageId: str + AcceptType: AcceptTypeType + AcceptCode: str + ContactChannelId: Optional[str] = None + Note: Optional[str] = None + AcceptCodeValidation: Optional[AcceptCodeValidationType] = None + +class ActivateContactChannelRequestRequestTypeDef(BaseModel): + ContactChannelId: str + ActivationCode: str + +class ChannelTargetInfoTypeDef(BaseModel): + ContactChannelId: str + RetryIntervalInMinutes: Optional[int] = None + +class ContactChannelAddressTypeDef(BaseModel): + SimpleAddress: Optional[str] = None + +class ContactTargetInfoTypeDef(BaseModel): + IsEssential: bool + ContactId: Optional[str] = None + +class ContactTypeDef(BaseModel): + ContactArn: str + Alias: str + Type: ContactTypeType + DisplayName: Optional[str] = None + +class HandOffTimeTypeDef(BaseModel): + HourOfDay: int + MinuteOfHour: int + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + Key: Optional[str] = None + Value: Optional[str] = None + +class DeactivateContactChannelRequestRequestTypeDef(BaseModel): + ContactChannelId: str + +class DeleteContactChannelRequestRequestTypeDef(BaseModel): + ContactChannelId: str + +class DeleteContactRequestRequestTypeDef(BaseModel): + ContactId: str + +class DeleteRotationOverrideRequestRequestTypeDef(BaseModel): + RotationId: str + RotationOverrideId: str + +class DeleteRotationRequestRequestTypeDef(BaseModel): + RotationId: str + +class DescribeEngagementRequestRequestTypeDef(BaseModel): + EngagementId: str + +class DescribePageRequestRequestTypeDef(BaseModel): + PageId: str + +class EngagementTypeDef(BaseModel): + EngagementArn: str + ContactArn: str + Sender: str + IncidentId: Optional[str] = None + StartTime: Optional[datetime] = None + StopTime: Optional[datetime] = None + +class GetContactChannelRequestRequestTypeDef(BaseModel): + ContactChannelId: str + +class GetContactPolicyRequestRequestTypeDef(BaseModel): + ContactArn: str + +class GetContactRequestRequestTypeDef(BaseModel): + ContactId: str + +class GetRotationOverrideRequestRequestTypeDef(BaseModel): + RotationId: str + RotationOverrideId: str + +class GetRotationRequestRequestTypeDef(BaseModel): + RotationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListContactChannelsRequestRequestTypeDef(BaseModel): + ContactId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListContactsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + AliasPrefix: Optional[str] = None + Type: Optional[ContactTypeType] = None + +class ListPageReceiptsRequestRequestTypeDef(BaseModel): + PageId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ReceiptTypeDef(BaseModel): + ReceiptType: ReceiptTypeType + ReceiptTime: datetime + ContactChannelArn: Optional[str] = None + ReceiptInfo: Optional[str] = None + +class ListPageResolutionsRequestRequestTypeDef(BaseModel): + PageId: str + NextToken: Optional[str] = None + +class ResolutionContactTypeDef(BaseModel): + ContactArn: str + Type: ContactTypeType + StageIndex: Optional[int] = None + +class ListPagesByContactRequestRequestTypeDef(BaseModel): + ContactId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PageTypeDef(BaseModel): + PageArn: str + EngagementArn: str + ContactArn: str + Sender: str + IncidentId: Optional[str] = None + SentTime: Optional[datetime] = None + DeliveryTime: Optional[datetime] = None + ReadTime: Optional[datetime] = None + +class ListPagesByEngagementRequestRequestTypeDef(BaseModel): + EngagementId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RotationOverrideTypeDef(BaseModel): + RotationOverrideId: str + NewContactIds: List[str] + StartTime: datetime + EndTime: datetime + CreateTime: datetime + +class ListRotationsRequestRequestTypeDef(BaseModel): + RotationNamePrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class PutContactPolicyRequestRequestTypeDef(BaseModel): + ContactArn: str + Policy: str + +class ShiftDetailsTypeDef(BaseModel): + OverriddenContactIds: List[str] + +class SendActivationCodeRequestRequestTypeDef(BaseModel): + ContactChannelId: str + +class StartEngagementRequestRequestTypeDef(BaseModel): + ContactId: str + Sender: str + Subject: str + Content: str + PublicSubject: Optional[str] = None + PublicContent: Optional[str] = None + IncidentId: Optional[str] = None + IdempotencyToken: Optional[str] = None + +class StopEngagementRequestRequestTypeDef(BaseModel): + EngagementId: str + Reason: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class ContactChannelTypeDef(BaseModel): + ContactChannelArn: str + ContactArn: str + Name: str + DeliveryAddress: ContactChannelAddressTypeDef + ActivationStatus: ActivationStatusType + Type: Optional[ChannelTypeType] = None + +class CreateContactChannelRequestRequestTypeDef(BaseModel): + ContactId: str + Name: str + Type: ChannelTypeType + DeliveryAddress: ContactChannelAddressTypeDef + DeferActivation: Optional[bool] = None + IdempotencyToken: Optional[str] = None + +class UpdateContactChannelRequestRequestTypeDef(BaseModel): + ContactChannelId: str + Name: Optional[str] = None + DeliveryAddress: Optional[ContactChannelAddressTypeDef] = None + +class TargetTypeDef(BaseModel): + ChannelTargetInfo: Optional[ChannelTargetInfoTypeDef] = None + ContactTargetInfo: Optional[ContactTargetInfoTypeDef] = None + +class CoverageTimeTypeDef(BaseModel): + Start: Optional[HandOffTimeTypeDef] = None + End: Optional[HandOffTimeTypeDef] = None + +class MonthlySettingTypeDef(BaseModel): + DayOfMonth: int + HandOffTime: HandOffTimeTypeDef + +class WeeklySettingTypeDef(BaseModel): + DayOfWeek: DayOfWeekType + HandOffTime: HandOffTimeTypeDef + +class CreateContactChannelResultTypeDef(BaseModel): + ContactChannelArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateContactResultTypeDef(BaseModel): + ContactArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRotationOverrideResultTypeDef(BaseModel): + RotationOverrideId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRotationResultTypeDef(BaseModel): + RotationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEngagementResultTypeDef(BaseModel): + ContactArn: str + EngagementArn: str + Sender: str + Subject: str + Content: str + PublicSubject: str + PublicContent: str + IncidentId: str + StartTime: datetime + StopTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePageResultTypeDef(BaseModel): + PageArn: str + EngagementArn: str + ContactArn: str + Sender: str + Subject: str + Content: str + PublicSubject: str + PublicContent: str + IncidentId: str + SentTime: datetime + ReadTime: datetime + DeliveryTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetContactChannelResultTypeDef(BaseModel): + ContactArn: str + ContactChannelArn: str + Name: str + Type: ChannelTypeType + DeliveryAddress: ContactChannelAddressTypeDef + ActivationStatus: ActivationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetContactPolicyResultTypeDef(BaseModel): + ContactArn: str + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRotationOverrideResultTypeDef(BaseModel): + RotationOverrideId: str + RotationArn: str + NewContactIds: List[str] + StartTime: datetime + EndTime: datetime + CreateTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListContactsResultTypeDef(BaseModel): + NextToken: str + Contacts: List[ContactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartEngagementResultTypeDef(BaseModel): + EngagementArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResultTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateRotationOverrideRequestRequestTypeDef(BaseModel): + RotationId: str + NewContactIds: Sequence[str] + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + IdempotencyToken: Optional[str] = None + +class ListRotationOverridesRequestRequestTypeDef(BaseModel): + RotationId: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListRotationShiftsRequestRequestTypeDef(BaseModel): + RotationId: str + EndTime: TimestampTypeDef + StartTime: Optional[TimestampTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PreviewOverrideTypeDef(BaseModel): + NewMembers: Optional[Sequence[str]] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + +class TimeRangeTypeDef(BaseModel): + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + +class ListEngagementsResultTypeDef(BaseModel): + NextToken: str + Engagements: List[EngagementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListContactChannelsRequestListContactChannelsPaginateTypeDef(BaseModel): + ContactId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContactsRequestListContactsPaginateTypeDef(BaseModel): + AliasPrefix: Optional[str] = None + Type: Optional[ContactTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPageReceiptsRequestListPageReceiptsPaginateTypeDef(BaseModel): + PageId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPageResolutionsRequestListPageResolutionsPaginateTypeDef(BaseModel): + PageId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPagesByContactRequestListPagesByContactPaginateTypeDef(BaseModel): + ContactId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPagesByEngagementRequestListPagesByEngagementPaginateTypeDef(BaseModel): + EngagementId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRotationOverridesRequestListRotationOverridesPaginateTypeDef(BaseModel): + RotationId: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRotationShiftsRequestListRotationShiftsPaginateTypeDef(BaseModel): + RotationId: str + EndTime: TimestampTypeDef + StartTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRotationsRequestListRotationsPaginateTypeDef(BaseModel): + RotationNamePrefix: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPageReceiptsResultTypeDef(BaseModel): + NextToken: str + Receipts: List[ReceiptTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPageResolutionsResultTypeDef(BaseModel): + NextToken: str + PageResolutions: List[ResolutionContactTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPagesByContactResultTypeDef(BaseModel): + NextToken: str + Pages: List[PageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPagesByEngagementResultTypeDef(BaseModel): + NextToken: str + Pages: List[PageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRotationOverridesResultTypeDef(BaseModel): + RotationOverrides: List[RotationOverrideTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RotationShiftTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + ContactIds: Optional[List[str]] = None + Type: Optional[ShiftTypeType] = None + ShiftDetails: Optional[ShiftDetailsTypeDef] = None + +class ListContactChannelsResultTypeDef(BaseModel): + NextToken: str + ContactChannels: List[ContactChannelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StageTypeDef(BaseModel): + DurationInMinutes: int + Targets: Sequence[TargetTypeDef] + +class RecurrenceSettingsTypeDef(BaseModel): + NumberOfOnCalls: int + RecurrenceMultiplier: int + MonthlySettings: Optional[Sequence[MonthlySettingTypeDef]] = None + WeeklySettings: Optional[Sequence[WeeklySettingTypeDef]] = None + DailySettings: Optional[Sequence[HandOffTimeTypeDef]] = None + ShiftCoverages: Optional[Mapping[DayOfWeekType, Sequence[CoverageTimeTypeDef]]] = None + +class ListEngagementsRequestListEngagementsPaginateTypeDef(BaseModel): + IncidentId: Optional[str] = None + TimeRangeValue: Optional[TimeRangeTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEngagementsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + IncidentId: Optional[str] = None + TimeRangeValue: Optional[TimeRangeTypeDef] = None + +class ListPreviewRotationShiftsResultTypeDef(BaseModel): + RotationShifts: List[RotationShiftTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRotationShiftsResultTypeDef(BaseModel): + RotationShifts: List[RotationShiftTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PlanTypeDef(BaseModel): + Stages: Optional[Sequence[StageTypeDef]] = None + RotationIds: Optional[Sequence[str]] = None + +class CreateRotationRequestRequestTypeDef(BaseModel): + Name: str + ContactIds: Sequence[str] + TimeZoneId: str + Recurrence: RecurrenceSettingsTypeDef + StartTime: Optional[TimestampTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + IdempotencyToken: Optional[str] = None + +class GetRotationResultTypeDef(BaseModel): + RotationArn: str + Name: str + ContactIds: List[str] + StartTime: datetime + TimeZoneId: str + Recurrence: RecurrenceSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListPreviewRotationShiftsRequestListPreviewRotationShiftsPaginateTypeDef(BaseModel): + EndTime: TimestampTypeDef + Members: Sequence[str] + TimeZoneId: str + Recurrence: RecurrenceSettingsTypeDef + RotationStartTime: Optional[TimestampTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + Overrides: Optional[Sequence[PreviewOverrideTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPreviewRotationShiftsRequestRequestTypeDef(BaseModel): + EndTime: TimestampTypeDef + Members: Sequence[str] + TimeZoneId: str + Recurrence: RecurrenceSettingsTypeDef + RotationStartTime: Optional[TimestampTypeDef] = None + StartTime: Optional[TimestampTypeDef] = None + Overrides: Optional[Sequence[PreviewOverrideTypeDef]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RotationTypeDef(BaseModel): + RotationArn: str + Name: str + ContactIds: Optional[List[str]] = None + StartTime: Optional[datetime] = None + TimeZoneId: Optional[str] = None + Recurrence: Optional[RecurrenceSettingsTypeDef] = None + +class UpdateRotationRequestRequestTypeDef(BaseModel): + RotationId: str + Recurrence: RecurrenceSettingsTypeDef + ContactIds: Optional[Sequence[str]] = None + StartTime: Optional[TimestampTypeDef] = None + TimeZoneId: Optional[str] = None + +class CreateContactRequestRequestTypeDef(BaseModel): + Alias: str + Type: ContactTypeType + Plan: PlanTypeDef + DisplayName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + IdempotencyToken: Optional[str] = None + +class GetContactResultTypeDef(BaseModel): + ContactArn: str + Alias: str + DisplayName: str + Type: ContactTypeType + Plan: PlanTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContactRequestRequestTypeDef(BaseModel): + ContactId: str + DisplayName: Optional[str] = None + Plan: Optional[PlanTypeDef] = None + +class ListRotationsResultTypeDef(BaseModel): + NextToken: str + Rotations: List[RotationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ssm_contacts_constants.py b/aws_resource_validator/pydantic_models/ssm_contacts_constants.py new file mode 100644 index 00000000..74c9cae4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_contacts_constants.py @@ -0,0 +1,435 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AcceptCodeValidationType = Literal["ENFORCE", "IGNORE"] +AcceptTypeType = Literal["DELIVERED", "READ"] +ActivationStatusType = Literal["ACTIVATED", "NOT_ACTIVATED"] +ChannelTypeType = Literal["EMAIL", "SMS", "VOICE"] +ContactTypeType = Literal["ESCALATION", "ONCALL_SCHEDULE", "PERSONAL"] +DayOfWeekType = Literal["FRI", "MON", "SAT", "SUN", "THU", "TUE", "WED"] +ListContactChannelsPaginatorName = Literal["list_contact_channels"] +ListContactsPaginatorName = Literal["list_contacts"] +ListEngagementsPaginatorName = Literal["list_engagements"] +ListPageReceiptsPaginatorName = Literal["list_page_receipts"] +ListPageResolutionsPaginatorName = Literal["list_page_resolutions"] +ListPagesByContactPaginatorName = Literal["list_pages_by_contact"] +ListPagesByEngagementPaginatorName = Literal["list_pages_by_engagement"] +ListPreviewRotationShiftsPaginatorName = Literal["list_preview_rotation_shifts"] +ListRotationOverridesPaginatorName = Literal["list_rotation_overrides"] +ListRotationShiftsPaginatorName = Literal["list_rotation_shifts"] +ListRotationsPaginatorName = Literal["list_rotations"] +ReceiptTypeType = Literal["DELIVERED", "ERROR", "READ", "SENT", "STOP"] +ShiftTypeType = Literal["OVERRIDDEN", "REGULAR"] +SSMContactsServiceName = Literal["ssm-contacts"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_contact_channels", + "list_contacts", + "list_engagements", + "list_page_receipts", + "list_page_resolutions", + "list_pages_by_contact", + "list_pages_by_engagement", + "list_preview_rotation_shifts", + "list_rotation_overrides", + "list_rotation_shifts", + "list_rotations",] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/ssm_incidents_classes.py b/aws_resource_validator/pydantic_models/ssm_incidents_classes.py new file mode 100644 index 00000000..423e3092 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_incidents_classes.py @@ -0,0 +1,528 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ssm_incidents_constants import * + +class AddRegionActionTypeDef(BaseModel): + regionName: str + sseKmsKeyId: Optional[str] = None + +class AttributeValueListTypeDef(BaseModel): + integerValues: Optional[Sequence[int]] = None + stringValues: Optional[Sequence[str]] = None + +class AutomationExecutionTypeDef(BaseModel): + ssmExecutionArn: Optional[str] = None + +class BatchGetIncidentFindingsErrorTypeDef(BaseModel): + code: str + findingId: str + message: str + +class BatchGetIncidentFindingsInputRequestTypeDef(BaseModel): + findingIds: Sequence[str] + incidentRecordArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ChatChannelTypeDef(BaseModel): + chatbotSns: Optional[Sequence[str]] = None + empty: Optional[Mapping[str, Any]] = None + +class CloudFormationStackUpdateTypeDef(BaseModel): + stackArn: str + startTime: datetime + endTime: Optional[datetime] = None + +class CodeDeployDeploymentTypeDef(BaseModel): + deploymentGroupArn: str + deploymentId: str + startTime: datetime + endTime: Optional[datetime] = None + +class RegionMapInputValueTypeDef(BaseModel): + sseKmsKeyId: Optional[str] = None + +class EventReferenceTypeDef(BaseModel): + relatedItemId: Optional[str] = None + resource: Optional[str] = None + +class DeleteIncidentRecordInputRequestTypeDef(BaseModel): + arn: str + +class DeleteRegionActionTypeDef(BaseModel): + regionName: str + +class DeleteReplicationSetInputRequestTypeDef(BaseModel): + arn: str + +class DeleteResourcePolicyInputRequestTypeDef(BaseModel): + policyId: str + resourceArn: str + +class DeleteResponsePlanInputRequestTypeDef(BaseModel): + arn: str + +class DeleteTimelineEventInputRequestTypeDef(BaseModel): + eventId: str + incidentRecordArn: str + +class DynamicSsmParameterValueTypeDef(BaseModel): + variable: Optional[VariableTypeType] = None + +class FindingSummaryTypeDef(BaseModel): + id: str + lastModifiedTime: datetime + +class GetIncidentRecordInputRequestTypeDef(BaseModel): + arn: str + +class GetReplicationSetInputRequestTypeDef(BaseModel): + arn: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetResourcePoliciesInputRequestTypeDef(BaseModel): + resourceArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ResourcePolicyTypeDef(BaseModel): + policyDocument: str + policyId: str + ramResourceShareRegion: str + +class GetResponsePlanInputRequestTypeDef(BaseModel): + arn: str + +class GetTimelineEventInputRequestTypeDef(BaseModel): + eventId: str + incidentRecordArn: str + +class IncidentRecordSourceTypeDef(BaseModel): + createdBy: str + source: str + invokedBy: Optional[str] = None + resourceArn: Optional[str] = None + +class NotificationTargetItemTypeDef(BaseModel): + snsTopicArn: Optional[str] = None + +class PagerDutyIncidentDetailTypeDef(BaseModel): + id: str + autoResolve: Optional[bool] = None + secretId: Optional[str] = None + +class ListIncidentFindingsInputRequestTypeDef(BaseModel): + incidentRecordArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListRelatedItemsInputRequestTypeDef(BaseModel): + incidentRecordArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListReplicationSetsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListResponsePlansInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ResponsePlanSummaryTypeDef(BaseModel): + arn: str + name: str + displayName: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class PagerDutyIncidentConfigurationTypeDef(BaseModel): + serviceId: str + +class PutResourcePolicyInputRequestTypeDef(BaseModel): + policy: str + resourceArn: str + +class RegionInfoTypeDef(BaseModel): + status: RegionStatusType + statusUpdateDateTime: datetime + sseKmsKeyId: Optional[str] = None + statusMessage: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateDeletionProtectionInputRequestTypeDef(BaseModel): + arn: str + deletionProtected: bool + clientToken: Optional[str] = None + +class CreateReplicationSetOutputTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResponsePlanOutputTypeDef(BaseModel): + arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTimelineEventOutputTypeDef(BaseModel): + eventId: str + incidentRecordArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReplicationSetsOutputTypeDef(BaseModel): + nextToken: str + replicationSetArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyOutputTypeDef(BaseModel): + policyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartIncidentOutputTypeDef(BaseModel): + incidentRecordArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class FindingDetailsTypeDef(BaseModel): + cloudFormationStackUpdate: Optional[CloudFormationStackUpdateTypeDef] = None + codeDeployDeployment: Optional[CodeDeployDeploymentTypeDef] = None + +class ConditionTypeDef(BaseModel): + after: Optional[TimestampTypeDef] = None + before: Optional[TimestampTypeDef] = None + equals: Optional[AttributeValueListTypeDef] = None + +class TriggerDetailsTypeDef(BaseModel): + source: str + timestamp: TimestampTypeDef + rawData: Optional[str] = None + triggerArn: Optional[str] = None + +class CreateReplicationSetInputRequestTypeDef(BaseModel): + regions: Mapping[str, RegionMapInputValueTypeDef] + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateTimelineEventInputRequestTypeDef(BaseModel): + eventData: str + eventTime: TimestampTypeDef + eventType: str + incidentRecordArn: str + clientToken: Optional[str] = None + eventReferences: Optional[Sequence[EventReferenceTypeDef]] = None + +class EventSummaryTypeDef(BaseModel): + eventId: str + eventTime: datetime + eventType: str + eventUpdatedTime: datetime + incidentRecordArn: str + eventReferences: Optional[List[EventReferenceTypeDef]] = None + +class TimelineEventTypeDef(BaseModel): + eventData: str + eventId: str + eventTime: datetime + eventType: str + eventUpdatedTime: datetime + incidentRecordArn: str + eventReferences: Optional[List[EventReferenceTypeDef]] = None + +class UpdateTimelineEventInputRequestTypeDef(BaseModel): + eventId: str + incidentRecordArn: str + clientToken: Optional[str] = None + eventData: Optional[str] = None + eventReferences: Optional[Sequence[EventReferenceTypeDef]] = None + eventTime: Optional[TimestampTypeDef] = None + eventType: Optional[str] = None + +class UpdateReplicationSetActionTypeDef(BaseModel): + addRegionAction: Optional[AddRegionActionTypeDef] = None + deleteRegionAction: Optional[DeleteRegionActionTypeDef] = None + +class SsmAutomationTypeDef(BaseModel): + documentName: str + roleArn: str + documentVersion: Optional[str] = None + dynamicParameters: Optional[Mapping[str, DynamicSsmParameterValueTypeDef]] = None + parameters: Optional[Mapping[str, Sequence[str]]] = None + targetAccount: Optional[SsmTargetAccountType] = None + +class ListIncidentFindingsOutputTypeDef(BaseModel): + findings: List[FindingSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReplicationSetInputWaitForReplicationSetActiveWaitTypeDef(BaseModel): + arn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetReplicationSetInputWaitForReplicationSetDeletedWaitTypeDef(BaseModel): + arn: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class GetResourcePoliciesInputGetResourcePoliciesPaginateTypeDef(BaseModel): + resourceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIncidentFindingsInputListIncidentFindingsPaginateTypeDef(BaseModel): + incidentRecordArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRelatedItemsInputListRelatedItemsPaginateTypeDef(BaseModel): + incidentRecordArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListReplicationSetsInputListReplicationSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResponsePlansInputListResponsePlansPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetResourcePoliciesOutputTypeDef(BaseModel): + nextToken: str + resourcePolicies: List[ResourcePolicyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IncidentRecordSummaryTypeDef(BaseModel): + arn: str + creationTime: datetime + impact: int + incidentRecordSource: IncidentRecordSourceTypeDef + status: IncidentRecordStatusType + title: str + resolvedTime: Optional[datetime] = None + +class IncidentRecordTypeDef(BaseModel): + arn: str + creationTime: datetime + dedupeString: str + impact: int + incidentRecordSource: IncidentRecordSourceTypeDef + lastModifiedBy: str + lastModifiedTime: datetime + status: IncidentRecordStatusType + title: str + automationExecutions: Optional[List[AutomationExecutionTypeDef]] = None + chatChannel: Optional[ChatChannelTypeDef] = None + notificationTargets: Optional[List[NotificationTargetItemTypeDef]] = None + resolvedTime: Optional[datetime] = None + summary: Optional[str] = None + +class IncidentTemplateTypeDef(BaseModel): + impact: int + title: str + dedupeString: Optional[str] = None + incidentTags: Optional[Mapping[str, str]] = None + notificationTargets: Optional[Sequence[NotificationTargetItemTypeDef]] = None + summary: Optional[str] = None + +class UpdateIncidentRecordInputRequestTypeDef(BaseModel): + arn: str + chatChannel: Optional[ChatChannelTypeDef] = None + clientToken: Optional[str] = None + impact: Optional[int] = None + notificationTargets: Optional[Sequence[NotificationTargetItemTypeDef]] = None + status: Optional[IncidentRecordStatusType] = None + summary: Optional[str] = None + title: Optional[str] = None + +class ItemValueTypeDef(BaseModel): + arn: Optional[str] = None + metricDefinition: Optional[str] = None + pagerDutyIncidentDetail: Optional[PagerDutyIncidentDetailTypeDef] = None + url: Optional[str] = None + +class ListResponsePlansOutputTypeDef(BaseModel): + nextToken: str + responsePlanSummaries: List[ResponsePlanSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PagerDutyConfigurationTypeDef(BaseModel): + name: str + pagerDutyIncidentConfiguration: PagerDutyIncidentConfigurationTypeDef + secretId: str + +class ReplicationSetTypeDef(BaseModel): + createdBy: str + createdTime: datetime + deletionProtected: bool + lastModifiedBy: str + lastModifiedTime: datetime + regionMap: Dict[str, RegionInfoTypeDef] + status: ReplicationSetStatusType + arn: Optional[str] = None + +class FindingTypeDef(BaseModel): + creationTime: datetime + id: str + lastModifiedTime: datetime + details: Optional[FindingDetailsTypeDef] = None + +class FilterTypeDef(BaseModel): + condition: ConditionTypeDef + key: str + +class ListTimelineEventsOutputTypeDef(BaseModel): + eventSummaries: List[EventSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTimelineEventOutputTypeDef(BaseModel): + event: TimelineEventTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReplicationSetInputRequestTypeDef(BaseModel): + actions: Sequence[UpdateReplicationSetActionTypeDef] + arn: str + clientToken: Optional[str] = None + +class ActionTypeDef(BaseModel): + ssmAutomation: Optional[SsmAutomationTypeDef] = None + +class ListIncidentRecordsOutputTypeDef(BaseModel): + incidentRecordSummaries: List[IncidentRecordSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIncidentRecordOutputTypeDef(BaseModel): + incidentRecord: IncidentRecordTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ItemIdentifierTypeDef(BaseModel): + type: ItemTypeType + value: ItemValueTypeDef + +class IntegrationTypeDef(BaseModel): + pagerDutyConfiguration: Optional[PagerDutyConfigurationTypeDef] = None + +class GetReplicationSetOutputTypeDef(BaseModel): + replicationSet: ReplicationSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetIncidentFindingsOutputTypeDef(BaseModel): + errors: List[BatchGetIncidentFindingsErrorTypeDef] + findings: List[FindingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListIncidentRecordsInputListIncidentRecordsPaginateTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIncidentRecordsInputRequestTypeDef(BaseModel): + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTimelineEventsInputListTimelineEventsPaginateTypeDef(BaseModel): + incidentRecordArn: str + filters: Optional[Sequence[FilterTypeDef]] = None + sortBy: Optional[Literal["EVENT_TIME"]] = None + sortOrder: Optional[SortOrderType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTimelineEventsInputRequestTypeDef(BaseModel): + incidentRecordArn: str + filters: Optional[Sequence[FilterTypeDef]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + sortBy: Optional[Literal["EVENT_TIME"]] = None + sortOrder: Optional[SortOrderType] = None + +class RelatedItemTypeDef(BaseModel): + identifier: ItemIdentifierTypeDef + generatedId: Optional[str] = None + title: Optional[str] = None + +class CreateResponsePlanInputRequestTypeDef(BaseModel): + incidentTemplate: IncidentTemplateTypeDef + name: str + actions: Optional[Sequence[ActionTypeDef]] = None + chatChannel: Optional[ChatChannelTypeDef] = None + clientToken: Optional[str] = None + displayName: Optional[str] = None + engagements: Optional[Sequence[str]] = None + integrations: Optional[Sequence[IntegrationTypeDef]] = None + tags: Optional[Mapping[str, str]] = None + +class GetResponsePlanOutputTypeDef(BaseModel): + actions: List[ActionTypeDef] + arn: str + chatChannel: ChatChannelTypeDef + displayName: str + engagements: List[str] + incidentTemplate: IncidentTemplateTypeDef + integrations: List[IntegrationTypeDef] + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResponsePlanInputRequestTypeDef(BaseModel): + arn: str + actions: Optional[Sequence[ActionTypeDef]] = None + chatChannel: Optional[ChatChannelTypeDef] = None + clientToken: Optional[str] = None + displayName: Optional[str] = None + engagements: Optional[Sequence[str]] = None + incidentTemplateDedupeString: Optional[str] = None + incidentTemplateImpact: Optional[int] = None + incidentTemplateNotificationTargets: Optional[Sequence[NotificationTargetItemTypeDef]] = None + incidentTemplateSummary: Optional[str] = None + incidentTemplateTags: Optional[Mapping[str, str]] = None + incidentTemplateTitle: Optional[str] = None + integrations: Optional[Sequence[IntegrationTypeDef]] = None + +class ListRelatedItemsOutputTypeDef(BaseModel): + nextToken: str + relatedItems: List[RelatedItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RelatedItemsUpdateTypeDef(BaseModel): + itemToAdd: Optional[RelatedItemTypeDef] = None + itemToRemove: Optional[ItemIdentifierTypeDef] = None + +class StartIncidentInputRequestTypeDef(BaseModel): + responsePlanArn: str + clientToken: Optional[str] = None + impact: Optional[int] = None + relatedItems: Optional[Sequence[RelatedItemTypeDef]] = None + title: Optional[str] = None + triggerDetails: Optional[TriggerDetailsTypeDef] = None + +class UpdateRelatedItemsInputRequestTypeDef(BaseModel): + incidentRecordArn: str + relatedItemsUpdate: RelatedItemsUpdateTypeDef + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/ssm_incidents_constants.py b/aws_resource_validator/pydantic_models/ssm_incidents_constants.py new file mode 100644 index 00000000..5085f48e --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_incidents_constants.py @@ -0,0 +1,438 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +GetResourcePoliciesPaginatorName = Literal["get_resource_policies"] +IncidentRecordStatusType = Literal["OPEN", "RESOLVED"] +ItemTypeType = Literal["ANALYSIS", + "ATTACHMENT", + "AUTOMATION", + "INCIDENT", + "INVOLVED_RESOURCE", + "METRIC", + "OTHER", + "PARENT", + "TASK",] +ListIncidentFindingsPaginatorName = Literal["list_incident_findings"] +ListIncidentRecordsPaginatorName = Literal["list_incident_records"] +ListRelatedItemsPaginatorName = Literal["list_related_items"] +ListReplicationSetsPaginatorName = Literal["list_replication_sets"] +ListResponsePlansPaginatorName = Literal["list_response_plans"] +ListTimelineEventsPaginatorName = Literal["list_timeline_events"] +RegionStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED"] +ReplicationSetStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +SortOrderType = Literal["ASCENDING", "DESCENDING"] +SsmTargetAccountType = Literal["IMPACTED_ACCOUNT", "RESPONSE_PLAN_OWNER_ACCOUNT"] +TimelineEventSortType = Literal["EVENT_TIME"] +VariableTypeType = Literal["INCIDENT_RECORD_ARN", "INVOLVED_RESOURCES"] +WaitForReplicationSetActiveWaiterName = Literal["wait_for_replication_set_active"] +WaitForReplicationSetDeletedWaiterName = Literal["wait_for_replication_set_deleted"] +SSMIncidentsServiceName = Literal["ssm-incidents"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_resource_policies", + "list_incident_findings", + "list_incident_records", + "list_related_items", + "list_replication_sets", + "list_response_plans", + "list_timeline_events",] +WaiterName = Literal["wait_for_replication_set_active", "wait_for_replication_set_deleted"] +RegionName = Literal["ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/ssm_sap_classes.py b/aws_resource_validator/pydantic_models/ssm_sap_classes.py new file mode 100644 index 00000000..8aaefc91 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_sap_classes.py @@ -0,0 +1,369 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.ssm_sap_constants import * + +class ApplicationCredentialTypeDef(BaseModel): + DatabaseName: str + CredentialType: Literal["ADMIN"] + SecretId: str + +class ApplicationSummaryTypeDef(BaseModel): + Id: Optional[str] = None + DiscoveryStatus: Optional[ApplicationDiscoveryStatusType] = None + Type: Optional[ApplicationTypeType] = None + Arn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ApplicationTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[ApplicationTypeType] = None + Arn: Optional[str] = None + AppRegistryArn: Optional[str] = None + Status: Optional[ApplicationStatusType] = None + DiscoveryStatus: Optional[ApplicationDiscoveryStatusType] = None + Components: Optional[List[str]] = None + LastUpdated: Optional[datetime] = None + StatusMessage: Optional[str] = None + +class IpAddressMemberTypeDef(BaseModel): + IpAddress: Optional[str] = None + Primary: Optional[bool] = None + AllocationType: Optional[AllocationTypeType] = None + +class BackintConfigTypeDef(BaseModel): + BackintMode: Literal["AWSBackup"] + EnsureNoBackupInProcess: bool + +class ComponentSummaryTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ComponentId: Optional[str] = None + ComponentType: Optional[ComponentTypeType] = None + Tags: Optional[Dict[str, str]] = None + Arn: Optional[str] = None + +class DatabaseConnectionTypeDef(BaseModel): + DatabaseConnectionMethod: Optional[DatabaseConnectionMethodType] = None + DatabaseArn: Optional[str] = None + ConnectionIp: Optional[str] = None + +class HostTypeDef(BaseModel): + HostName: Optional[str] = None + HostIp: Optional[str] = None + EC2InstanceId: Optional[str] = None + InstanceId: Optional[str] = None + HostRole: Optional[HostRoleType] = None + OsVersion: Optional[str] = None + +class ResilienceTypeDef(BaseModel): + HsrTier: Optional[str] = None + HsrReplicationMode: Optional[ReplicationModeType] = None + HsrOperationMode: Optional[OperationModeType] = None + ClusterStatus: Optional[ClusterStatusType] = None + EnqueueReplication: Optional[bool] = None + +class DatabaseSummaryTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ComponentId: Optional[str] = None + DatabaseId: Optional[str] = None + DatabaseType: Optional[DatabaseTypeType] = None + Arn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class DeleteResourcePermissionInputRequestTypeDef(BaseModel): + ResourceArn: str + ActionType: Optional[Literal["RESTORE"]] = None + SourceResourceArn: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeregisterApplicationInputRequestTypeDef(BaseModel): + ApplicationId: str + +class FilterTypeDef(BaseModel): + Name: str + Value: str + Operator: FilterOperatorType + +class GetApplicationInputRequestTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ApplicationArn: Optional[str] = None + AppRegistryArn: Optional[str] = None + +class GetComponentInputRequestTypeDef(BaseModel): + ApplicationId: str + ComponentId: str + +class GetDatabaseInputRequestTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ComponentId: Optional[str] = None + DatabaseId: Optional[str] = None + DatabaseArn: Optional[str] = None + +class GetOperationInputRequestTypeDef(BaseModel): + OperationId: str + +class OperationTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[str] = None + Status: Optional[OperationStatusType] = None + StatusMessage: Optional[str] = None + Properties: Optional[Dict[str, str]] = None + ResourceType: Optional[str] = None + ResourceId: Optional[str] = None + ResourceArn: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class GetResourcePermissionInputRequestTypeDef(BaseModel): + ResourceArn: str + ActionType: Optional[Literal["RESTORE"]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListComponentsInputRequestTypeDef(BaseModel): + ApplicationId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDatabasesInputRequestTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ComponentId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ResourceTypeDef(BaseModel): + ResourceArn: Optional[str] = None + ResourceType: Optional[str] = None + +class PutResourcePermissionInputRequestTypeDef(BaseModel): + ActionType: Literal["RESTORE"] + SourceResourceArn: str + ResourceArn: str + +class StartApplicationInputRequestTypeDef(BaseModel): + ApplicationId: str + +class StartApplicationRefreshInputRequestTypeDef(BaseModel): + ApplicationId: str + +class StopApplicationInputRequestTypeDef(BaseModel): + ApplicationId: str + StopConnectedEntity: Optional[Literal["DBMS"]] = None + IncludeEc2InstanceShutdown: Optional[bool] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class DatabaseTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ComponentId: Optional[str] = None + Credentials: Optional[List[ApplicationCredentialTypeDef]] = None + DatabaseId: Optional[str] = None + DatabaseName: Optional[str] = None + DatabaseType: Optional[DatabaseTypeType] = None + Arn: Optional[str] = None + Status: Optional[DatabaseStatusType] = None + PrimaryHost: Optional[str] = None + SQLPort: Optional[int] = None + LastUpdated: Optional[datetime] = None + +class RegisterApplicationInputRequestTypeDef(BaseModel): + ApplicationId: str + ApplicationType: ApplicationTypeType + Instances: Sequence[str] + SapInstanceNumber: Optional[str] = None + Sid: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + Credentials: Optional[Sequence[ApplicationCredentialTypeDef]] = None + DatabaseArn: Optional[str] = None + +class AssociatedHostTypeDef(BaseModel): + Hostname: Optional[str] = None + Ec2InstanceId: Optional[str] = None + IpAddresses: Optional[List[IpAddressMemberTypeDef]] = None + OsVersion: Optional[str] = None + +class UpdateApplicationSettingsInputRequestTypeDef(BaseModel): + ApplicationId: str + CredentialsToAddOrUpdate: Optional[Sequence[ApplicationCredentialTypeDef]] = None + CredentialsToRemove: Optional[Sequence[ApplicationCredentialTypeDef]] = None + Backint: Optional[BackintConfigTypeDef] = None + DatabaseArn: Optional[str] = None + +class DeleteResourcePermissionOutputTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationOutputTypeDef(BaseModel): + Application: ApplicationTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePermissionOutputTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsOutputTypeDef(BaseModel): + Applications: List[ApplicationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListComponentsOutputTypeDef(BaseModel): + Components: List[ComponentSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListDatabasesOutputTypeDef(BaseModel): + Databases: List[DatabaseSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePermissionOutputTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterApplicationOutputTypeDef(BaseModel): + Application: ApplicationTypeDef + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartApplicationOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartApplicationRefreshOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StopApplicationOutputTypeDef(BaseModel): + OperationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationSettingsOutputTypeDef(BaseModel): + Message: str + OperationIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationsInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListOperationEventsInputRequestTypeDef(BaseModel): + OperationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class ListOperationsInputRequestTypeDef(BaseModel): + ApplicationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + Filters: Optional[Sequence[FilterTypeDef]] = None + +class GetOperationOutputTypeDef(BaseModel): + Operation: OperationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListOperationsOutputTypeDef(BaseModel): + Operations: List[OperationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListApplicationsInputListApplicationsPaginateTypeDef(BaseModel): + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListComponentsInputListComponentsPaginateTypeDef(BaseModel): + ApplicationId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDatabasesInputListDatabasesPaginateTypeDef(BaseModel): + ApplicationId: Optional[str] = None + ComponentId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOperationEventsInputListOperationEventsPaginateTypeDef(BaseModel): + OperationId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOperationsInputListOperationsPaginateTypeDef(BaseModel): + ApplicationId: str + Filters: Optional[Sequence[FilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class OperationEventTypeDef(BaseModel): + Description: Optional[str] = None + Resource: Optional[ResourceTypeDef] = None + Status: Optional[OperationEventStatusType] = None + StatusMessage: Optional[str] = None + Timestamp: Optional[datetime] = None + +class GetDatabaseOutputTypeDef(BaseModel): + Database: DatabaseTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ComponentTypeDef(BaseModel): + ComponentId: Optional[str] = None + Sid: Optional[str] = None + SystemNumber: Optional[str] = None + ParentComponent: Optional[str] = None + ChildComponents: Optional[List[str]] = None + ApplicationId: Optional[str] = None + ComponentType: Optional[ComponentTypeType] = None + Status: Optional[ComponentStatusType] = None + SapHostname: Optional[str] = None + SapFeature: Optional[str] = None + SapKernelVersion: Optional[str] = None + HdbVersion: Optional[str] = None + Resilience: Optional[ResilienceTypeDef] = None + AssociatedHost: Optional[AssociatedHostTypeDef] = None + Databases: Optional[List[str]] = None + Hosts: Optional[List[HostTypeDef]] = None + PrimaryHost: Optional[str] = None + DatabaseConnection: Optional[DatabaseConnectionTypeDef] = None + LastUpdated: Optional[datetime] = None + Arn: Optional[str] = None + +class ListOperationEventsOutputTypeDef(BaseModel): + OperationEvents: List[OperationEventTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetComponentOutputTypeDef(BaseModel): + Component: ComponentTypeDef + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/ssm_sap_constants.py b/aws_resource_validator/pydantic_models/ssm_sap_constants.py new file mode 100644 index 00000000..94fd2ac4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/ssm_sap_constants.py @@ -0,0 +1,449 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AllocationTypeType = Literal["ELASTIC_IP", "OVERLAY", "UNKNOWN", "VPC_SUBNET"] +ApplicationDiscoveryStatusType = Literal["DELETING", "REFRESH_FAILED", "REGISTERING", "REGISTRATION_FAILED", "SUCCESS"] +ApplicationStatusType = Literal["ACTIVATED", "DELETING", "FAILED", "REGISTERING", "STARTING", "STOPPED", "STOPPING", "UNKNOWN"] +ApplicationTypeType = Literal["HANA", "SAP_ABAP"] +BackintModeType = Literal["AWSBackup"] +ClusterStatusType = Literal["MAINTENANCE", "NONE", "OFFLINE", "ONLINE", "STANDBY"] +ComponentStatusType = Literal["ACTIVATED", "RUNNING", "RUNNING_WITH_ERROR", "STARTING", "STOPPED", "STOPPING", "UNDEFINED"] +ComponentTypeType = Literal["ABAP", "ASCS", "DIALOG", "ERS", "HANA", "HANA_NODE", "WD", "WEBDISP"] +ConnectedEntityTypeType = Literal["DBMS"] +CredentialTypeType = Literal["ADMIN"] +DatabaseConnectionMethodType = Literal["DIRECT", "OVERLAY"] +DatabaseStatusType = Literal["ERROR", "RUNNING", "STARTING", "STOPPED", "UNKNOWN", "WARNING"] +DatabaseTypeType = Literal["SYSTEM", "TENANT"] +FilterOperatorType = Literal["Equals", "GreaterThanOrEquals", "LessThanOrEquals"] +HostRoleType = Literal["LEADER", "STANDBY", "UNKNOWN", "WORKER"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListComponentsPaginatorName = Literal["list_components"] +ListDatabasesPaginatorName = Literal["list_databases"] +ListOperationEventsPaginatorName = Literal["list_operation_events"] +ListOperationsPaginatorName = Literal["list_operations"] +OperationEventStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +OperationModeType = Literal["DELTA_DATASHIPPING", "LOGREPLAY", "LOGREPLAY_READACCESS", "NONE", "PRIMARY"] +OperationStatusType = Literal["ERROR", "INPROGRESS", "SUCCESS"] +PermissionActionTypeType = Literal["RESTORE"] +ReplicationModeType = Literal["ASYNC", "NONE", "PRIMARY", "SYNC", "SYNCMEM"] +SsmSapServiceName = Literal["ssm-sap"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_applications", + "list_components", + "list_databases", + "list_operation_events", + "list_operations",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/sso_admin_classes.py b/aws_resource_validator/pydantic_models/sso_admin_classes.py new file mode 100644 index 00000000..4f3b432e --- /dev/null +++ b/aws_resource_validator/pydantic_models/sso_admin_classes.py @@ -0,0 +1,905 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sso_admin_constants import * + +class AccessControlAttributeValueTypeDef(BaseModel): + Source: Sequence[str] + +class AccountAssignmentForPrincipalTypeDef(BaseModel): + AccountId: Optional[str] = None + PermissionSetArn: Optional[str] = None + PrincipalId: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + +class AccountAssignmentOperationStatusMetadataTypeDef(BaseModel): + CreatedDate: Optional[datetime] = None + RequestId: Optional[str] = None + Status: Optional[StatusValuesType] = None + +class AccountAssignmentOperationStatusTypeDef(BaseModel): + CreatedDate: Optional[datetime] = None + FailureReason: Optional[str] = None + PermissionSetArn: Optional[str] = None + PrincipalId: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + RequestId: Optional[str] = None + Status: Optional[StatusValuesType] = None + TargetId: Optional[str] = None + TargetType: Optional[Literal["AWS_ACCOUNT"]] = None + +class AccountAssignmentTypeDef(BaseModel): + AccountId: Optional[str] = None + PermissionSetArn: Optional[str] = None + PrincipalId: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + +class ApplicationAssignmentForPrincipalTypeDef(BaseModel): + ApplicationArn: Optional[str] = None + PrincipalId: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + +class ApplicationAssignmentTypeDef(BaseModel): + ApplicationArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + +class DisplayDataTypeDef(BaseModel): + Description: Optional[str] = None + DisplayName: Optional[str] = None + IconUrl: Optional[str] = None + +class CustomerManagedPolicyReferenceTypeDef(BaseModel): + Name: str + Path: Optional[str] = None + +class AttachManagedPolicyToPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + ManagedPolicyArn: str + PermissionSetArn: str + +class AttachedManagedPolicyTypeDef(BaseModel): + Arn: Optional[str] = None + Name: Optional[str] = None + +class IamAuthenticationMethodTypeDef(BaseModel): + ActorPolicy: Dict[str, Any] + +class AuthorizationCodeGrantTypeDef(BaseModel): + RedirectUris: Optional[List[str]] = None + +class AuthorizedTokenIssuerTypeDef(BaseModel): + AuthorizedAudiences: Optional[List[str]] = None + TrustedTokenIssuerArn: Optional[str] = None + +class CreateAccountAssignmentRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + TargetId: str + TargetType: Literal["AWS_ACCOUNT"] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateApplicationAssignmentRequestRequestTypeDef(BaseModel): + ApplicationArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class PermissionSetTypeDef(BaseModel): + CreatedDate: Optional[datetime] = None + Description: Optional[str] = None + Name: Optional[str] = None + PermissionSetArn: Optional[str] = None + RelayState: Optional[str] = None + SessionDuration: Optional[str] = None + +class DeleteAccountAssignmentRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + TargetId: str + TargetType: Literal["AWS_ACCOUNT"] + +class DeleteApplicationAccessScopeRequestRequestTypeDef(BaseModel): + ApplicationArn: str + Scope: str + +class DeleteApplicationAssignmentRequestRequestTypeDef(BaseModel): + ApplicationArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + +class DeleteApplicationAuthenticationMethodRequestRequestTypeDef(BaseModel): + ApplicationArn: str + AuthenticationMethodType: Literal["IAM"] + +class DeleteApplicationGrantRequestRequestTypeDef(BaseModel): + ApplicationArn: str + GrantType: GrantTypeType + +class DeleteApplicationRequestRequestTypeDef(BaseModel): + ApplicationArn: str + +class DeleteInlinePolicyFromPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + +class DeleteInstanceAccessControlAttributeConfigurationRequestRequestTypeDef(BaseModel): + InstanceArn: str + +class DeleteInstanceRequestRequestTypeDef(BaseModel): + InstanceArn: str + +class DeletePermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + +class DeletePermissionsBoundaryFromPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + +class DeleteTrustedTokenIssuerRequestRequestTypeDef(BaseModel): + TrustedTokenIssuerArn: str + +class DescribeAccountAssignmentCreationStatusRequestRequestTypeDef(BaseModel): + AccountAssignmentCreationRequestId: str + InstanceArn: str + +class DescribeAccountAssignmentDeletionStatusRequestRequestTypeDef(BaseModel): + AccountAssignmentDeletionRequestId: str + InstanceArn: str + +class DescribeApplicationAssignmentRequestRequestTypeDef(BaseModel): + ApplicationArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + +class DescribeApplicationProviderRequestRequestTypeDef(BaseModel): + ApplicationProviderArn: str + +class DescribeApplicationRequestRequestTypeDef(BaseModel): + ApplicationArn: str + +class DescribeInstanceAccessControlAttributeConfigurationRequestRequestTypeDef(BaseModel): + InstanceArn: str + +class DescribeInstanceRequestRequestTypeDef(BaseModel): + InstanceArn: str + +class DescribePermissionSetProvisioningStatusRequestRequestTypeDef(BaseModel): + InstanceArn: str + ProvisionPermissionSetRequestId: str + +class PermissionSetProvisioningStatusTypeDef(BaseModel): + AccountId: Optional[str] = None + CreatedDate: Optional[datetime] = None + FailureReason: Optional[str] = None + PermissionSetArn: Optional[str] = None + RequestId: Optional[str] = None + Status: Optional[StatusValuesType] = None + +class DescribePermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + +class DescribeTrustedTokenIssuerRequestRequestTypeDef(BaseModel): + TrustedTokenIssuerArn: str + +class DetachManagedPolicyFromPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + ManagedPolicyArn: str + PermissionSetArn: str + +class GetApplicationAccessScopeRequestRequestTypeDef(BaseModel): + ApplicationArn: str + Scope: str + +class GetApplicationAssignmentConfigurationRequestRequestTypeDef(BaseModel): + ApplicationArn: str + +class GetApplicationAuthenticationMethodRequestRequestTypeDef(BaseModel): + ApplicationArn: str + AuthenticationMethodType: Literal["IAM"] + +class GetApplicationGrantRequestRequestTypeDef(BaseModel): + ApplicationArn: str + GrantType: GrantTypeType + +class GetInlinePolicyForPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + +class GetPermissionsBoundaryForPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + +class InstanceMetadataTypeDef(BaseModel): + CreatedDate: Optional[datetime] = None + IdentityStoreId: Optional[str] = None + InstanceArn: Optional[str] = None + Name: Optional[str] = None + OwnerAccountId: Optional[str] = None + Status: Optional[InstanceStatusType] = None + +class OperationStatusFilterTypeDef(BaseModel): + Status: Optional[StatusValuesType] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccountAssignmentsFilterTypeDef(BaseModel): + AccountId: Optional[str] = None + +class ListAccountAssignmentsRequestRequestTypeDef(BaseModel): + AccountId: str + InstanceArn: str + PermissionSetArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAccountsForProvisionedPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ProvisioningStatus: Optional[ProvisioningStatusType] = None + +class ListApplicationAccessScopesRequestRequestTypeDef(BaseModel): + ApplicationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ScopeDetailsTypeDef(BaseModel): + Scope: str + AuthorizedTargets: Optional[List[str]] = None + +class ListApplicationAssignmentsFilterTypeDef(BaseModel): + ApplicationArn: Optional[str] = None + +class ListApplicationAssignmentsRequestRequestTypeDef(BaseModel): + ApplicationArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListApplicationAuthenticationMethodsRequestRequestTypeDef(BaseModel): + ApplicationArn: str + NextToken: Optional[str] = None + +class ListApplicationGrantsRequestRequestTypeDef(BaseModel): + ApplicationArn: str + NextToken: Optional[str] = None + +class ListApplicationProvidersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListApplicationsFilterTypeDef(BaseModel): + ApplicationAccount: Optional[str] = None + ApplicationProvider: Optional[str] = None + +class ListCustomerManagedPolicyReferencesInPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListInstancesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListManagedPoliciesInPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PermissionSetProvisioningStatusMetadataTypeDef(BaseModel): + CreatedDate: Optional[datetime] = None + RequestId: Optional[str] = None + Status: Optional[StatusValuesType] = None + +class ListPermissionSetsProvisionedToAccountRequestRequestTypeDef(BaseModel): + AccountId: str + InstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ProvisioningStatus: Optional[ProvisioningStatusType] = None + +class ListPermissionSetsRequestRequestTypeDef(BaseModel): + InstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + InstanceArn: Optional[str] = None + NextToken: Optional[str] = None + +class ListTrustedTokenIssuersRequestRequestTypeDef(BaseModel): + InstanceArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class TrustedTokenIssuerMetadataTypeDef(BaseModel): + Name: Optional[str] = None + TrustedTokenIssuerArn: Optional[str] = None + TrustedTokenIssuerType: Optional[Literal["OIDC_JWT"]] = None + +class OidcJwtConfigurationTypeDef(BaseModel): + ClaimAttributePath: str + IdentityStoreAttributePath: str + IssuerUrl: str + JwksRetrievalOption: Literal["OPEN_ID_DISCOVERY"] + +class OidcJwtUpdateConfigurationTypeDef(BaseModel): + ClaimAttributePath: Optional[str] = None + IdentityStoreAttributePath: Optional[str] = None + JwksRetrievalOption: Optional[Literal["OPEN_ID_DISCOVERY"]] = None + +class SignInOptionsTypeDef(BaseModel): + Origin: SignInOriginType + ApplicationUrl: Optional[str] = None + +class ProvisionPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + TargetType: ProvisionTargetTypeType + TargetId: Optional[str] = None + +class PutApplicationAccessScopeRequestRequestTypeDef(BaseModel): + ApplicationArn: str + Scope: str + AuthorizedTargets: Optional[Sequence[str]] = None + +class PutApplicationAssignmentConfigurationRequestRequestTypeDef(BaseModel): + ApplicationArn: str + AssignmentRequired: bool + +class PutInlinePolicyToPermissionSetRequestRequestTypeDef(BaseModel): + InlinePolicy: str + InstanceArn: str + PermissionSetArn: str + +class ResourceServerScopeDetailsTypeDef(BaseModel): + DetailedTitle: Optional[str] = None + LongDescription: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + InstanceArn: Optional[str] = None + +class UpdateInstanceRequestRequestTypeDef(BaseModel): + InstanceArn: str + Name: str + +class UpdatePermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + Description: Optional[str] = None + RelayState: Optional[str] = None + SessionDuration: Optional[str] = None + +class AccessControlAttributeTypeDef(BaseModel): + Key: str + Value: AccessControlAttributeValueTypeDef + +class AttachCustomerManagedPolicyReferenceToPermissionSetRequestRequestTypeDef(BaseModel): + CustomerManagedPolicyReference: CustomerManagedPolicyReferenceTypeDef + InstanceArn: str + PermissionSetArn: str + +class DetachCustomerManagedPolicyReferenceFromPermissionSetRequestRequestTypeDef(BaseModel): + CustomerManagedPolicyReference: CustomerManagedPolicyReferenceTypeDef + InstanceArn: str + PermissionSetArn: str + +class PermissionsBoundaryTypeDef(BaseModel): + CustomerManagedPolicyReference: Optional[CustomerManagedPolicyReferenceTypeDef] = None + ManagedPolicyArn: Optional[str] = None + +class AuthenticationMethodTypeDef(BaseModel): + Iam: Optional[IamAuthenticationMethodTypeDef] = None + +class JwtBearerGrantTypeDef(BaseModel): + AuthorizedTokenIssuers: Optional[List[AuthorizedTokenIssuerTypeDef]] = None + +class CreateAccountAssignmentResponseTypeDef(BaseModel): + AccountAssignmentCreationStatus: AccountAssignmentOperationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateApplicationResponseTypeDef(BaseModel): + ApplicationArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceResponseTypeDef(BaseModel): + InstanceArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrustedTokenIssuerResponseTypeDef(BaseModel): + TrustedTokenIssuerArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAccountAssignmentResponseTypeDef(BaseModel): + AccountAssignmentDeletionStatus: AccountAssignmentOperationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAssignmentCreationStatusResponseTypeDef(BaseModel): + AccountAssignmentCreationStatus: AccountAssignmentOperationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountAssignmentDeletionStatusResponseTypeDef(BaseModel): + AccountAssignmentDeletionStatus: AccountAssignmentOperationStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeApplicationAssignmentResponseTypeDef(BaseModel): + ApplicationArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInstanceResponseTypeDef(BaseModel): + CreatedDate: datetime + IdentityStoreId: str + InstanceArn: str + Name: str + OwnerAccountId: str + Status: InstanceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationAccessScopeResponseTypeDef(BaseModel): + AuthorizedTargets: List[str] + Scope: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationAssignmentConfigurationResponseTypeDef(BaseModel): + AssignmentRequired: bool + ResponseMetadata: ResponseMetadataTypeDef + +class GetInlinePolicyForPermissionSetResponseTypeDef(BaseModel): + InlinePolicy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAssignmentCreationStatusResponseTypeDef(BaseModel): + AccountAssignmentsCreationStatus: List[AccountAssignmentOperationStatusMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAssignmentDeletionStatusResponseTypeDef(BaseModel): + AccountAssignmentsDeletionStatus: List[AccountAssignmentOperationStatusMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAssignmentsForPrincipalResponseTypeDef(BaseModel): + AccountAssignments: List[AccountAssignmentForPrincipalTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAssignmentsResponseTypeDef(BaseModel): + AccountAssignments: List[AccountAssignmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountsForProvisionedPermissionSetResponseTypeDef(BaseModel): + AccountIds: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationAssignmentsForPrincipalResponseTypeDef(BaseModel): + ApplicationAssignments: List[ApplicationAssignmentForPrincipalTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationAssignmentsResponseTypeDef(BaseModel): + ApplicationAssignments: List[ApplicationAssignmentTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCustomerManagedPolicyReferencesInPermissionSetResponseTypeDef(BaseModel): + CustomerManagedPolicyReferences: List[CustomerManagedPolicyReferenceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListManagedPoliciesInPermissionSetResponseTypeDef(BaseModel): + AttachedManagedPolicies: List[AttachedManagedPolicyTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionSetsProvisionedToAccountResponseTypeDef(BaseModel): + NextToken: str + PermissionSets: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPermissionSetsResponseTypeDef(BaseModel): + NextToken: str + PermissionSets: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceRequestRequestTypeDef(BaseModel): + ClientToken: Optional[str] = None + Name: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + Name: str + Description: Optional[str] = None + RelayState: Optional[str] = None + SessionDuration: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + NextToken: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + InstanceArn: Optional[str] = None + +class CreatePermissionSetResponseTypeDef(BaseModel): + PermissionSet: PermissionSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePermissionSetResponseTypeDef(BaseModel): + PermissionSet: PermissionSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribePermissionSetProvisioningStatusResponseTypeDef(BaseModel): + PermissionSetProvisioningStatus: PermissionSetProvisioningStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ProvisionPermissionSetResponseTypeDef(BaseModel): + PermissionSetProvisioningStatus: PermissionSetProvisioningStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListInstancesResponseTypeDef(BaseModel): + Instances: List[InstanceMetadataTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountAssignmentCreationStatusRequestRequestTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[OperationStatusFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAccountAssignmentDeletionStatusRequestRequestTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[OperationStatusFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPermissionSetProvisioningStatusRequestRequestTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[OperationStatusFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAccountAssignmentCreationStatusRequestListAccountAssignmentCreationStatusPaginateTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[OperationStatusFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountAssignmentDeletionStatusRequestListAccountAssignmentDeletionStatusPaginateTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[OperationStatusFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountAssignmentsRequestListAccountAssignmentsPaginateTypeDef(BaseModel): + AccountId: str + InstanceArn: str + PermissionSetArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountsForProvisionedPermissionSetRequestListAccountsForProvisionedPermissionSetPaginateTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + ProvisioningStatus: Optional[ProvisioningStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationAccessScopesRequestListApplicationAccessScopesPaginateTypeDef(BaseModel): + ApplicationArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationAssignmentsRequestListApplicationAssignmentsPaginateTypeDef(BaseModel): + ApplicationArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationAuthenticationMethodsRequestListApplicationAuthenticationMethodsPaginateTypeDef(BaseModel): + ApplicationArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationGrantsRequestListApplicationGrantsPaginateTypeDef(BaseModel): + ApplicationArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationProvidersRequestListApplicationProvidersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCustomerManagedPolicyReferencesInPermissionSetRequestListCustomerManagedPolicyReferencesInPermissionSetPaginateTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListInstancesRequestListInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListManagedPoliciesInPermissionSetRequestListManagedPoliciesInPermissionSetPaginateTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionSetProvisioningStatusRequestListPermissionSetProvisioningStatusPaginateTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[OperationStatusFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionSetsProvisionedToAccountRequestListPermissionSetsProvisionedToAccountPaginateTypeDef(BaseModel): + AccountId: str + InstanceArn: str + ProvisioningStatus: Optional[ProvisioningStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPermissionSetsRequestListPermissionSetsPaginateTypeDef(BaseModel): + InstanceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceArn: str + InstanceArn: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTrustedTokenIssuersRequestListTrustedTokenIssuersPaginateTypeDef(BaseModel): + InstanceArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountAssignmentsForPrincipalRequestListAccountAssignmentsForPrincipalPaginateTypeDef(BaseModel): + InstanceArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + Filter: Optional[ListAccountAssignmentsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountAssignmentsForPrincipalRequestRequestTypeDef(BaseModel): + InstanceArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + Filter: Optional[ListAccountAssignmentsFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListApplicationAccessScopesResponseTypeDef(BaseModel): + NextToken: str + Scopes: List[ScopeDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationAssignmentsForPrincipalRequestListApplicationAssignmentsForPrincipalPaginateTypeDef(BaseModel): + InstanceArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + Filter: Optional[ListApplicationAssignmentsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationAssignmentsForPrincipalRequestRequestTypeDef(BaseModel): + InstanceArn: str + PrincipalId: str + PrincipalType: PrincipalTypeType + Filter: Optional[ListApplicationAssignmentsFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListApplicationsRequestListApplicationsPaginateTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[ListApplicationsFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListApplicationsRequestRequestTypeDef(BaseModel): + InstanceArn: str + Filter: Optional[ListApplicationsFilterTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListPermissionSetProvisioningStatusResponseTypeDef(BaseModel): + NextToken: str + PermissionSetsProvisioningStatus: List[PermissionSetProvisioningStatusMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrustedTokenIssuersResponseTypeDef(BaseModel): + NextToken: str + TrustedTokenIssuers: List[TrustedTokenIssuerMetadataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TrustedTokenIssuerConfigurationTypeDef(BaseModel): + OidcJwtConfiguration: Optional[OidcJwtConfigurationTypeDef] = None + +class TrustedTokenIssuerUpdateConfigurationTypeDef(BaseModel): + OidcJwtConfiguration: Optional[OidcJwtUpdateConfigurationTypeDef] = None + +class PortalOptionsTypeDef(BaseModel): + SignInOptions: Optional[SignInOptionsTypeDef] = None + Visibility: Optional[ApplicationVisibilityType] = None + +class UpdateApplicationPortalOptionsTypeDef(BaseModel): + SignInOptions: Optional[SignInOptionsTypeDef] = None + +class ResourceServerConfigTypeDef(BaseModel): + Scopes: Optional[Dict[str, ResourceServerScopeDetailsTypeDef]] = None + +class InstanceAccessControlAttributeConfigurationTypeDef(BaseModel): + AccessControlAttributes: Sequence[AccessControlAttributeTypeDef] + +class GetPermissionsBoundaryForPermissionSetResponseTypeDef(BaseModel): + PermissionsBoundary: PermissionsBoundaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutPermissionsBoundaryToPermissionSetRequestRequestTypeDef(BaseModel): + InstanceArn: str + PermissionSetArn: str + PermissionsBoundary: PermissionsBoundaryTypeDef + +class AuthenticationMethodItemTypeDef(BaseModel): + AuthenticationMethod: Optional[AuthenticationMethodTypeDef] = None + AuthenticationMethodType: Optional[Literal["IAM"]] = None + +class GetApplicationAuthenticationMethodResponseTypeDef(BaseModel): + AuthenticationMethod: AuthenticationMethodTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutApplicationAuthenticationMethodRequestRequestTypeDef(BaseModel): + ApplicationArn: str + AuthenticationMethod: AuthenticationMethodTypeDef + AuthenticationMethodType: Literal["IAM"] + +class GrantTypeDef(BaseModel): + AuthorizationCode: Optional[AuthorizationCodeGrantTypeDef] = None + JwtBearer: Optional[JwtBearerGrantTypeDef] = None + RefreshToken: Optional[Dict[str, Any]] = None + TokenExchange: Optional[Dict[str, Any]] = None + +class CreateTrustedTokenIssuerRequestRequestTypeDef(BaseModel): + InstanceArn: str + Name: str + TrustedTokenIssuerConfiguration: TrustedTokenIssuerConfigurationTypeDef + TrustedTokenIssuerType: Literal["OIDC_JWT"] + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeTrustedTokenIssuerResponseTypeDef(BaseModel): + Name: str + TrustedTokenIssuerArn: str + TrustedTokenIssuerConfiguration: TrustedTokenIssuerConfigurationTypeDef + TrustedTokenIssuerType: Literal["OIDC_JWT"] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrustedTokenIssuerRequestRequestTypeDef(BaseModel): + TrustedTokenIssuerArn: str + Name: Optional[str] = None + TrustedTokenIssuerConfiguration: Optional[ TrustedTokenIssuerUpdateConfigurationTypeDef ] = None + +class ApplicationTypeDef(BaseModel): + ApplicationAccount: Optional[str] = None + ApplicationArn: Optional[str] = None + ApplicationProviderArn: Optional[str] = None + CreatedDate: Optional[datetime] = None + Description: Optional[str] = None + InstanceArn: Optional[str] = None + Name: Optional[str] = None + PortalOptions: Optional[PortalOptionsTypeDef] = None + Status: Optional[ApplicationStatusType] = None + +class CreateApplicationRequestRequestTypeDef(BaseModel): + ApplicationProviderArn: str + InstanceArn: str + Name: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + PortalOptions: Optional[PortalOptionsTypeDef] = None + Status: Optional[ApplicationStatusType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeApplicationResponseTypeDef(BaseModel): + ApplicationAccount: str + ApplicationArn: str + ApplicationProviderArn: str + CreatedDate: datetime + Description: str + InstanceArn: str + Name: str + PortalOptions: PortalOptionsTypeDef + Status: ApplicationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateApplicationRequestRequestTypeDef(BaseModel): + ApplicationArn: str + Description: Optional[str] = None + Name: Optional[str] = None + PortalOptions: Optional[UpdateApplicationPortalOptionsTypeDef] = None + Status: Optional[ApplicationStatusType] = None + +class ApplicationProviderTypeDef(BaseModel): + ApplicationProviderArn: str + DisplayData: Optional[DisplayDataTypeDef] = None + FederationProtocol: Optional[FederationProtocolType] = None + ResourceServerConfig: Optional[ResourceServerConfigTypeDef] = None + +class DescribeApplicationProviderResponseTypeDef(BaseModel): + ApplicationProviderArn: str + DisplayData: DisplayDataTypeDef + FederationProtocol: FederationProtocolType + ResourceServerConfig: ResourceServerConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateInstanceAccessControlAttributeConfigurationRequestRequestTypeDef(BaseModel): + InstanceAccessControlAttributeConfiguration: ( InstanceAccessControlAttributeConfigurationTypeDef ) + InstanceArn: str + +class DescribeInstanceAccessControlAttributeConfigurationResponseTypeDef(BaseModel): + InstanceAccessControlAttributeConfiguration: ( InstanceAccessControlAttributeConfigurationTypeDef ) + Status: InstanceAccessControlAttributeConfigurationStatusType + StatusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateInstanceAccessControlAttributeConfigurationRequestRequestTypeDef(BaseModel): + InstanceAccessControlAttributeConfiguration: ( InstanceAccessControlAttributeConfigurationTypeDef ) + InstanceArn: str + +class ListApplicationAuthenticationMethodsResponseTypeDef(BaseModel): + AuthenticationMethods: List[AuthenticationMethodItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetApplicationGrantResponseTypeDef(BaseModel): + Grant: GrantTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GrantItemTypeDef(BaseModel): + Grant: GrantTypeDef + GrantType: GrantTypeType + +class PutApplicationGrantRequestRequestTypeDef(BaseModel): + ApplicationArn: str + Grant: GrantTypeDef + GrantType: GrantTypeType + +class ListApplicationsResponseTypeDef(BaseModel): + Applications: List[ApplicationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationProvidersResponseTypeDef(BaseModel): + ApplicationProviders: List[ApplicationProviderTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListApplicationGrantsResponseTypeDef(BaseModel): + Grants: List[GrantItemTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sso_admin_constants.py b/aws_resource_validator/pydantic_models/sso_admin_constants.py new file mode 100644 index 00000000..9dfd0b80 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sso_admin_constants.py @@ -0,0 +1,470 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplicationStatusType = Literal["DISABLED", "ENABLED"] +ApplicationVisibilityType = Literal["DISABLED", "ENABLED"] +AuthenticationMethodTypeType = Literal["IAM"] +FederationProtocolType = Literal["OAUTH", "SAML"] +GrantTypeType = Literal["authorization_code", + "refresh_token", + "urn:ietf:params:oauth:grant-type:jwt-bearer", + "urn:ietf:params:oauth:grant-type:token-exchange",] +InstanceAccessControlAttributeConfigurationStatusType = Literal["CREATION_FAILED", "CREATION_IN_PROGRESS", "ENABLED"] +InstanceStatusType = Literal["ACTIVE", "CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS"] +JwksRetrievalOptionType = Literal["OPEN_ID_DISCOVERY"] +ListAccountAssignmentCreationStatusPaginatorName = Literal["list_account_assignment_creation_status"] +ListAccountAssignmentDeletionStatusPaginatorName = Literal["list_account_assignment_deletion_status"] +ListAccountAssignmentsForPrincipalPaginatorName = Literal["list_account_assignments_for_principal"] +ListAccountAssignmentsPaginatorName = Literal["list_account_assignments"] +ListAccountsForProvisionedPermissionSetPaginatorName = Literal["list_accounts_for_provisioned_permission_set"] +ListApplicationAccessScopesPaginatorName = Literal["list_application_access_scopes"] +ListApplicationAssignmentsForPrincipalPaginatorName = Literal["list_application_assignments_for_principal"] +ListApplicationAssignmentsPaginatorName = Literal["list_application_assignments"] +ListApplicationAuthenticationMethodsPaginatorName = Literal["list_application_authentication_methods"] +ListApplicationGrantsPaginatorName = Literal["list_application_grants"] +ListApplicationProvidersPaginatorName = Literal["list_application_providers"] +ListApplicationsPaginatorName = Literal["list_applications"] +ListCustomerManagedPolicyReferencesInPermissionSetPaginatorName = Literal["list_customer_managed_policy_references_in_permission_set"] +ListInstancesPaginatorName = Literal["list_instances"] +ListManagedPoliciesInPermissionSetPaginatorName = Literal["list_managed_policies_in_permission_set"] +ListPermissionSetProvisioningStatusPaginatorName = Literal["list_permission_set_provisioning_status"] +ListPermissionSetsPaginatorName = Literal["list_permission_sets"] +ListPermissionSetsProvisionedToAccountPaginatorName = Literal["list_permission_sets_provisioned_to_account"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListTrustedTokenIssuersPaginatorName = Literal["list_trusted_token_issuers"] +PrincipalTypeType = Literal["GROUP", "USER"] +ProvisionTargetTypeType = Literal["ALL_PROVISIONED_ACCOUNTS", "AWS_ACCOUNT"] +ProvisioningStatusType = Literal["LATEST_PERMISSION_SET_NOT_PROVISIONED", "LATEST_PERMISSION_SET_PROVISIONED"] +SignInOriginType = Literal["APPLICATION", "IDENTITY_CENTER"] +StatusValuesType = Literal["FAILED", "IN_PROGRESS", "SUCCEEDED"] +TargetTypeType = Literal["AWS_ACCOUNT"] +TrustedTokenIssuerTypeType = Literal["OIDC_JWT"] +SSOAdminServiceName = Literal["sso-admin"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_account_assignment_creation_status", + "list_account_assignment_deletion_status", + "list_account_assignments", + "list_account_assignments_for_principal", + "list_accounts_for_provisioned_permission_set", + "list_application_access_scopes", + "list_application_assignments", + "list_application_assignments_for_principal", + "list_application_authentication_methods", + "list_application_grants", + "list_application_providers", + "list_applications", + "list_customer_managed_policy_references_in_permission_set", + "list_instances", + "list_managed_policies_in_permission_set", + "list_permission_set_provisioning_status", + "list_permission_sets", + "list_permission_sets_provisioned_to_account", + "list_tags_for_resource", + "list_trusted_token_issuers",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/sso_classes.py b/aws_resource_validator/pydantic_models/sso_classes.py new file mode 100644 index 00000000..5d2cea59 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sso_classes.py @@ -0,0 +1,85 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sso_constants import * + +class AccountInfoTypeDef(BaseModel): + accountId: Optional[str] = None + accountName: Optional[str] = None + emailAddress: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class GetRoleCredentialsRequestRequestTypeDef(BaseModel): + roleName: str + accountId: str + accessToken: str + +class RoleCredentialsTypeDef(BaseModel): + accessKeyId: Optional[str] = None + secretAccessKey: Optional[str] = None + sessionToken: Optional[str] = None + expiration: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccountRolesRequestRequestTypeDef(BaseModel): + accessToken: str + accountId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class RoleInfoTypeDef(BaseModel): + roleName: Optional[str] = None + accountId: Optional[str] = None + +class ListAccountsRequestRequestTypeDef(BaseModel): + accessToken: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class LogoutRequestRequestTypeDef(BaseModel): + accessToken: str + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountsResponseTypeDef(BaseModel): + nextToken: str + accountList: List[AccountInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRoleCredentialsResponseTypeDef(BaseModel): + roleCredentials: RoleCredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountRolesRequestListAccountRolesPaginateTypeDef(BaseModel): + accessToken: str + accountId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountsRequestListAccountsPaginateTypeDef(BaseModel): + accessToken: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountRolesResponseTypeDef(BaseModel): + nextToken: str + roleList: List[RoleInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sso_constants.py b/aws_resource_validator/pydantic_models/sso_constants.py new file mode 100644 index 00000000..bf76dcd8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sso_constants.py @@ -0,0 +1,415 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ListAccountRolesPaginatorName = Literal["list_account_roles"] +ListAccountsPaginatorName = Literal["list_accounts"] +SSOServiceName = Literal["sso"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_account_roles", "list_accounts"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/sso_oidc_classes.py b/aws_resource_validator/pydantic_models/sso_oidc_classes.py new file mode 100644 index 00000000..ec3df4e5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sso_oidc_classes.py @@ -0,0 +1,94 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sso_oidc_constants import * + +class CreateTokenRequestRequestTypeDef(BaseModel): + clientId: str + clientSecret: str + grantType: str + deviceCode: Optional[str] = None + code: Optional[str] = None + refreshToken: Optional[str] = None + scope: Optional[Sequence[str]] = None + redirectUri: Optional[str] = None + codeVerifier: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateTokenWithIAMRequestRequestTypeDef(BaseModel): + clientId: str + grantType: str + code: Optional[str] = None + refreshToken: Optional[str] = None + assertion: Optional[str] = None + scope: Optional[Sequence[str]] = None + redirectUri: Optional[str] = None + subjectToken: Optional[str] = None + subjectTokenType: Optional[str] = None + requestedTokenType: Optional[str] = None + codeVerifier: Optional[str] = None + +class RegisterClientRequestRequestTypeDef(BaseModel): + clientName: str + clientType: str + scopes: Optional[Sequence[str]] = None + redirectUris: Optional[Sequence[str]] = None + grantTypes: Optional[Sequence[str]] = None + issuerUrl: Optional[str] = None + entitledApplicationArn: Optional[str] = None + +class StartDeviceAuthorizationRequestRequestTypeDef(BaseModel): + clientId: str + clientSecret: str + startUrl: str + +class CreateTokenResponseTypeDef(BaseModel): + accessToken: str + tokenType: str + expiresIn: int + refreshToken: str + idToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTokenWithIAMResponseTypeDef(BaseModel): + accessToken: str + tokenType: str + expiresIn: int + refreshToken: str + idToken: str + issuedTokenType: str + scope: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterClientResponseTypeDef(BaseModel): + clientId: str + clientSecret: str + clientIdIssuedAt: int + clientSecretExpiresAt: int + authorizationEndpoint: str + tokenEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDeviceAuthorizationResponseTypeDef(BaseModel): + deviceCode: str + userCode: str + verificationUri: str + verificationUriComplete: str + expiresIn: int + interval: int + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sso_oidc_constants.py b/aws_resource_validator/pydantic_models/sso_oidc_constants.py new file mode 100644 index 00000000..96457df8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sso_oidc_constants.py @@ -0,0 +1,425 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +SSOOIDCServiceName = Literal["sso-oidc"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/stepfunctions_classes.py b/aws_resource_validator/pydantic_models/stepfunctions_classes.py new file mode 100644 index 00000000..e8829854 --- /dev/null +++ b/aws_resource_validator/pydantic_models/stepfunctions_classes.py @@ -0,0 +1,752 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.stepfunctions_constants import * + +class ActivityFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class ActivityListItemTypeDef(BaseModel): + activityArn: str + name: str + creationDate: datetime + +class ActivityScheduleFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class HistoryEventExecutionDataDetailsTypeDef(BaseModel): + truncated: Optional[bool] = None + +class ActivityStartedEventDetailsTypeDef(BaseModel): + workerName: Optional[str] = None + +class ActivityTimedOutEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class BillingDetailsTypeDef(BaseModel): + billedMemoryUsedInMB: Optional[int] = None + billedDurationInMilliseconds: Optional[int] = None + +class CloudWatchEventsExecutionDataDetailsTypeDef(BaseModel): + included: Optional[bool] = None + +class CloudWatchLogsLogGroupTypeDef(BaseModel): + logGroupArn: Optional[str] = None + +class TagTypeDef(BaseModel): + key: Optional[str] = None + value: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class RoutingConfigurationListItemTypeDef(BaseModel): + stateMachineVersionArn: str + weight: int + +class TracingConfigurationTypeDef(BaseModel): + enabled: Optional[bool] = None + +class DeleteActivityInputRequestTypeDef(BaseModel): + activityArn: str + +class DeleteStateMachineAliasInputRequestTypeDef(BaseModel): + stateMachineAliasArn: str + +class DeleteStateMachineInputRequestTypeDef(BaseModel): + stateMachineArn: str + +class DeleteStateMachineVersionInputRequestTypeDef(BaseModel): + stateMachineVersionArn: str + +class DescribeActivityInputRequestTypeDef(BaseModel): + activityArn: str + +class DescribeExecutionInputRequestTypeDef(BaseModel): + executionArn: str + +class DescribeMapRunInputRequestTypeDef(BaseModel): + mapRunArn: str + +class MapRunExecutionCountsTypeDef(BaseModel): + pending: int + running: int + succeeded: int + failed: int + timedOut: int + aborted: int + total: int + resultsWritten: int + failuresNotRedrivable: Optional[int] = None + pendingRedrive: Optional[int] = None + +class MapRunItemCountsTypeDef(BaseModel): + pending: int + running: int + succeeded: int + failed: int + timedOut: int + aborted: int + total: int + resultsWritten: int + failuresNotRedrivable: Optional[int] = None + pendingRedrive: Optional[int] = None + +class DescribeStateMachineAliasInputRequestTypeDef(BaseModel): + stateMachineAliasArn: str + +class DescribeStateMachineForExecutionInputRequestTypeDef(BaseModel): + executionArn: str + +class DescribeStateMachineInputRequestTypeDef(BaseModel): + stateMachineArn: str + +class ExecutionAbortedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class ExecutionFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class ExecutionListItemTypeDef(BaseModel): + executionArn: str + stateMachineArn: str + name: str + status: ExecutionStatusType + startDate: datetime + stopDate: Optional[datetime] = None + mapRunArn: Optional[str] = None + itemCount: Optional[int] = None + stateMachineVersionArn: Optional[str] = None + stateMachineAliasArn: Optional[str] = None + redriveCount: Optional[int] = None + redriveDate: Optional[datetime] = None + +class ExecutionRedrivenEventDetailsTypeDef(BaseModel): + redriveCount: Optional[int] = None + +class ExecutionTimedOutEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class GetActivityTaskInputRequestTypeDef(BaseModel): + activityArn: str + workerName: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetExecutionHistoryInputRequestTypeDef(BaseModel): + executionArn: str + maxResults: Optional[int] = None + reverseOrder: Optional[bool] = None + nextToken: Optional[str] = None + includeExecutionData: Optional[bool] = None + +class LambdaFunctionFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class LambdaFunctionScheduleFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class LambdaFunctionStartFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class LambdaFunctionTimedOutEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class MapIterationEventDetailsTypeDef(BaseModel): + name: Optional[str] = None + index: Optional[int] = None + +class MapRunFailedEventDetailsTypeDef(BaseModel): + error: Optional[str] = None + cause: Optional[str] = None + +class MapRunRedrivenEventDetailsTypeDef(BaseModel): + mapRunArn: Optional[str] = None + redriveCount: Optional[int] = None + +class MapRunStartedEventDetailsTypeDef(BaseModel): + mapRunArn: Optional[str] = None + +class MapStateStartedEventDetailsTypeDef(BaseModel): + length: Optional[int] = None + +class TaskFailedEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + error: Optional[str] = None + cause: Optional[str] = None + +class TaskStartFailedEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + error: Optional[str] = None + cause: Optional[str] = None + +class TaskStartedEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + +class TaskSubmitFailedEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + error: Optional[str] = None + cause: Optional[str] = None + +class TaskTimedOutEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + error: Optional[str] = None + cause: Optional[str] = None + +class InspectionDataRequestTypeDef(BaseModel): + protocol: Optional[str] = None + method: Optional[str] = None + url: Optional[str] = None + headers: Optional[str] = None + body: Optional[str] = None + +class InspectionDataResponseTypeDef(BaseModel): + protocol: Optional[str] = None + statusCode: Optional[str] = None + statusMessage: Optional[str] = None + headers: Optional[str] = None + body: Optional[str] = None + +class TaskCredentialsTypeDef(BaseModel): + roleArn: Optional[str] = None + +class ListActivitiesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListExecutionsInputRequestTypeDef(BaseModel): + stateMachineArn: Optional[str] = None + statusFilter: Optional[ExecutionStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + mapRunArn: Optional[str] = None + redriveFilter: Optional[ExecutionRedriveFilterType] = None + +class ListMapRunsInputRequestTypeDef(BaseModel): + executionArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class MapRunListItemTypeDef(BaseModel): + executionArn: str + mapRunArn: str + stateMachineArn: str + startDate: datetime + stopDate: Optional[datetime] = None + +class ListStateMachineAliasesInputRequestTypeDef(BaseModel): + stateMachineArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class StateMachineAliasListItemTypeDef(BaseModel): + stateMachineAliasArn: str + creationDate: datetime + +class ListStateMachineVersionsInputRequestTypeDef(BaseModel): + stateMachineArn: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class StateMachineVersionListItemTypeDef(BaseModel): + stateMachineVersionArn: str + creationDate: datetime + +class ListStateMachinesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class StateMachineListItemTypeDef(BaseModel): + stateMachineArn: str + name: str + type: StateMachineTypeType + creationDate: datetime + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class PublishStateMachineVersionInputRequestTypeDef(BaseModel): + stateMachineArn: str + revisionId: Optional[str] = None + description: Optional[str] = None + +class RedriveExecutionInputRequestTypeDef(BaseModel): + executionArn: str + clientToken: Optional[str] = None + +class SendTaskFailureInputRequestTypeDef(BaseModel): + taskToken: str + error: Optional[str] = None + cause: Optional[str] = None + +class SendTaskHeartbeatInputRequestTypeDef(BaseModel): + taskToken: str + +class SendTaskSuccessInputRequestTypeDef(BaseModel): + taskToken: str + output: str + +class StartExecutionInputRequestTypeDef(BaseModel): + stateMachineArn: str + name: Optional[str] = None + input: Optional[str] = None + traceHeader: Optional[str] = None + +class StartSyncExecutionInputRequestTypeDef(BaseModel): + stateMachineArn: str + name: Optional[str] = None + input: Optional[str] = None + traceHeader: Optional[str] = None + +class StopExecutionInputRequestTypeDef(BaseModel): + executionArn: str + error: Optional[str] = None + cause: Optional[str] = None + +class TestStateInputRequestTypeDef(BaseModel): + definition: str + roleArn: str + input: Optional[str] = None + inspectionLevel: Optional[InspectionLevelType] = None + revealSecrets: Optional[bool] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateMapRunInputRequestTypeDef(BaseModel): + mapRunArn: str + maxConcurrency: Optional[int] = None + toleratedFailurePercentage: Optional[float] = None + toleratedFailureCount: Optional[int] = None + +class ValidateStateMachineDefinitionDiagnosticTypeDef(BaseModel): + severity: Literal["ERROR"] + code: str + message: str + location: Optional[str] = None + +class ValidateStateMachineDefinitionInputRequestTypeDef(BaseModel): + definition: str + type: Optional[StateMachineTypeType] = None + +class ActivityScheduledEventDetailsTypeDef(BaseModel): + resource: str + input: Optional[str] = None + inputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + timeoutInSeconds: Optional[int] = None + heartbeatInSeconds: Optional[int] = None + +class ActivitySucceededEventDetailsTypeDef(BaseModel): + output: Optional[str] = None + outputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class ExecutionStartedEventDetailsTypeDef(BaseModel): + input: Optional[str] = None + inputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + roleArn: Optional[str] = None + stateMachineAliasArn: Optional[str] = None + stateMachineVersionArn: Optional[str] = None + +class ExecutionSucceededEventDetailsTypeDef(BaseModel): + output: Optional[str] = None + outputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class LambdaFunctionSucceededEventDetailsTypeDef(BaseModel): + output: Optional[str] = None + outputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class StateEnteredEventDetailsTypeDef(BaseModel): + name: str + input: Optional[str] = None + inputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class StateExitedEventDetailsTypeDef(BaseModel): + name: str + output: Optional[str] = None + outputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class TaskSubmittedEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + output: Optional[str] = None + outputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class TaskSucceededEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + output: Optional[str] = None + outputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + +class LogDestinationTypeDef(BaseModel): + cloudWatchLogsLogGroup: Optional[CloudWatchLogsLogGroupTypeDef] = None + +class CreateActivityInputRequestTypeDef(BaseModel): + name: str + tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + +class CreateActivityOutputTypeDef(BaseModel): + activityArn: str + creationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStateMachineAliasOutputTypeDef(BaseModel): + stateMachineAliasArn: str + creationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStateMachineOutputTypeDef(BaseModel): + stateMachineArn: str + creationDate: datetime + stateMachineVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeActivityOutputTypeDef(BaseModel): + activityArn: str + name: str + creationDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExecutionOutputTypeDef(BaseModel): + executionArn: str + stateMachineArn: str + name: str + status: ExecutionStatusType + startDate: datetime + stopDate: datetime + input: str + inputDetails: CloudWatchEventsExecutionDataDetailsTypeDef + output: str + outputDetails: CloudWatchEventsExecutionDataDetailsTypeDef + traceHeader: str + mapRunArn: str + error: str + cause: str + stateMachineVersionArn: str + stateMachineAliasArn: str + redriveCount: int + redriveDate: datetime + redriveStatus: ExecutionRedriveStatusType + redriveStatusReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetActivityTaskOutputTypeDef(BaseModel): + taskToken: str + input: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListActivitiesOutputTypeDef(BaseModel): + activities: List[ActivityListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PublishStateMachineVersionOutputTypeDef(BaseModel): + creationDate: datetime + stateMachineVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class RedriveExecutionOutputTypeDef(BaseModel): + redriveDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartExecutionOutputTypeDef(BaseModel): + executionArn: str + startDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class StartSyncExecutionOutputTypeDef(BaseModel): + executionArn: str + stateMachineArn: str + name: str + startDate: datetime + stopDate: datetime + status: SyncExecutionStatusType + error: str + cause: str + input: str + inputDetails: CloudWatchEventsExecutionDataDetailsTypeDef + output: str + outputDetails: CloudWatchEventsExecutionDataDetailsTypeDef + traceHeader: str + billingDetails: BillingDetailsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StopExecutionOutputTypeDef(BaseModel): + stopDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStateMachineAliasOutputTypeDef(BaseModel): + updateDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStateMachineOutputTypeDef(BaseModel): + updateDate: datetime + revisionId: str + stateMachineVersionArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStateMachineAliasInputRequestTypeDef(BaseModel): + name: str + routingConfiguration: Sequence[RoutingConfigurationListItemTypeDef] + description: Optional[str] = None + +class DescribeStateMachineAliasOutputTypeDef(BaseModel): + stateMachineAliasArn: str + name: str + description: str + routingConfiguration: List[RoutingConfigurationListItemTypeDef] + creationDate: datetime + updateDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateStateMachineAliasInputRequestTypeDef(BaseModel): + stateMachineAliasArn: str + description: Optional[str] = None + routingConfiguration: Optional[Sequence[RoutingConfigurationListItemTypeDef]] = None + +class DescribeMapRunOutputTypeDef(BaseModel): + mapRunArn: str + executionArn: str + status: MapRunStatusType + startDate: datetime + stopDate: datetime + maxConcurrency: int + toleratedFailurePercentage: float + toleratedFailureCount: int + itemCounts: MapRunItemCountsTypeDef + executionCounts: MapRunExecutionCountsTypeDef + redriveCount: int + redriveDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListExecutionsOutputTypeDef(BaseModel): + executions: List[ExecutionListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetExecutionHistoryInputGetExecutionHistoryPaginateTypeDef(BaseModel): + executionArn: str + reverseOrder: Optional[bool] = None + includeExecutionData: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListActivitiesInputListActivitiesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExecutionsInputListExecutionsPaginateTypeDef(BaseModel): + stateMachineArn: Optional[str] = None + statusFilter: Optional[ExecutionStatusType] = None + mapRunArn: Optional[str] = None + redriveFilter: Optional[ExecutionRedriveFilterType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMapRunsInputListMapRunsPaginateTypeDef(BaseModel): + executionArn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListStateMachinesInputListStateMachinesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class InspectionDataTypeDef(BaseModel): + input: Optional[str] = None + afterInputPath: Optional[str] = None + afterParameters: Optional[str] = None + result: Optional[str] = None + afterResultSelector: Optional[str] = None + afterResultPath: Optional[str] = None + request: Optional[InspectionDataRequestTypeDef] = None + response: Optional[InspectionDataResponseTypeDef] = None + +class LambdaFunctionScheduledEventDetailsTypeDef(BaseModel): + resource: str + input: Optional[str] = None + inputDetails: Optional[HistoryEventExecutionDataDetailsTypeDef] = None + timeoutInSeconds: Optional[int] = None + taskCredentials: Optional[TaskCredentialsTypeDef] = None + +class TaskScheduledEventDetailsTypeDef(BaseModel): + resourceType: str + resource: str + region: str + parameters: str + timeoutInSeconds: Optional[int] = None + heartbeatInSeconds: Optional[int] = None + taskCredentials: Optional[TaskCredentialsTypeDef] = None + +class ListMapRunsOutputTypeDef(BaseModel): + mapRuns: List[MapRunListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStateMachineAliasesOutputTypeDef(BaseModel): + stateMachineAliases: List[StateMachineAliasListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStateMachineVersionsOutputTypeDef(BaseModel): + stateMachineVersions: List[StateMachineVersionListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListStateMachinesOutputTypeDef(BaseModel): + stateMachines: List[StateMachineListItemTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateStateMachineDefinitionOutputTypeDef(BaseModel): + result: ValidateStateMachineDefinitionResultCodeType + diagnostics: List[ValidateStateMachineDefinitionDiagnosticTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class LoggingConfigurationOutputTypeDef(BaseModel): + level: Optional[LogLevelType] = None + includeExecutionData: Optional[bool] = None + destinations: Optional[List[LogDestinationTypeDef]] = None + +class LoggingConfigurationTypeDef(BaseModel): + level: Optional[LogLevelType] = None + includeExecutionData: Optional[bool] = None + destinations: Optional[Sequence[LogDestinationTypeDef]] = None + +class TestStateOutputTypeDef(BaseModel): + output: str + error: str + cause: str + inspectionData: InspectionDataTypeDef + nextState: str + status: TestExecutionStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class HistoryEventTypeDef(BaseModel): + timestamp: datetime + type: HistoryEventTypeType + id: int + previousEventId: Optional[int] = None + activityFailedEventDetails: Optional[ActivityFailedEventDetailsTypeDef] = None + activityScheduleFailedEventDetails: Optional[ ActivityScheduleFailedEventDetailsTypeDef ] = None + activityScheduledEventDetails: Optional[ActivityScheduledEventDetailsTypeDef] = None + activityStartedEventDetails: Optional[ActivityStartedEventDetailsTypeDef] = None + activitySucceededEventDetails: Optional[ActivitySucceededEventDetailsTypeDef] = None + activityTimedOutEventDetails: Optional[ActivityTimedOutEventDetailsTypeDef] = None + taskFailedEventDetails: Optional[TaskFailedEventDetailsTypeDef] = None + taskScheduledEventDetails: Optional[TaskScheduledEventDetailsTypeDef] = None + taskStartFailedEventDetails: Optional[TaskStartFailedEventDetailsTypeDef] = None + taskStartedEventDetails: Optional[TaskStartedEventDetailsTypeDef] = None + taskSubmitFailedEventDetails: Optional[TaskSubmitFailedEventDetailsTypeDef] = None + taskSubmittedEventDetails: Optional[TaskSubmittedEventDetailsTypeDef] = None + taskSucceededEventDetails: Optional[TaskSucceededEventDetailsTypeDef] = None + taskTimedOutEventDetails: Optional[TaskTimedOutEventDetailsTypeDef] = None + executionFailedEventDetails: Optional[ExecutionFailedEventDetailsTypeDef] = None + executionStartedEventDetails: Optional[ExecutionStartedEventDetailsTypeDef] = None + executionSucceededEventDetails: Optional[ExecutionSucceededEventDetailsTypeDef] = None + executionAbortedEventDetails: Optional[ExecutionAbortedEventDetailsTypeDef] = None + executionTimedOutEventDetails: Optional[ExecutionTimedOutEventDetailsTypeDef] = None + executionRedrivenEventDetails: Optional[ExecutionRedrivenEventDetailsTypeDef] = None + mapStateStartedEventDetails: Optional[MapStateStartedEventDetailsTypeDef] = None + mapIterationStartedEventDetails: Optional[MapIterationEventDetailsTypeDef] = None + mapIterationSucceededEventDetails: Optional[MapIterationEventDetailsTypeDef] = None + mapIterationFailedEventDetails: Optional[MapIterationEventDetailsTypeDef] = None + mapIterationAbortedEventDetails: Optional[MapIterationEventDetailsTypeDef] = None + lambdaFunctionFailedEventDetails: Optional[LambdaFunctionFailedEventDetailsTypeDef] = None + lambdaFunctionScheduleFailedEventDetails: Optional[ LambdaFunctionScheduleFailedEventDetailsTypeDef ] = None + lambdaFunctionScheduledEventDetails: Optional[ LambdaFunctionScheduledEventDetailsTypeDef ] = None + lambdaFunctionStartFailedEventDetails: Optional[ LambdaFunctionStartFailedEventDetailsTypeDef ] = None + lambdaFunctionSucceededEventDetails: Optional[ LambdaFunctionSucceededEventDetailsTypeDef ] = None + lambdaFunctionTimedOutEventDetails: Optional[ LambdaFunctionTimedOutEventDetailsTypeDef ] = None + stateEnteredEventDetails: Optional[StateEnteredEventDetailsTypeDef] = None + stateExitedEventDetails: Optional[StateExitedEventDetailsTypeDef] = None + mapRunStartedEventDetails: Optional[MapRunStartedEventDetailsTypeDef] = None + mapRunFailedEventDetails: Optional[MapRunFailedEventDetailsTypeDef] = None + mapRunRedrivenEventDetails: Optional[MapRunRedrivenEventDetailsTypeDef] = None + +class DescribeStateMachineForExecutionOutputTypeDef(BaseModel): + stateMachineArn: str + name: str + definition: str + roleArn: str + updateDate: datetime + loggingConfiguration: LoggingConfigurationOutputTypeDef + tracingConfiguration: TracingConfigurationTypeDef + mapRunArn: str + label: str + revisionId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStateMachineOutputTypeDef(BaseModel): + stateMachineArn: str + name: str + status: StateMachineStatusType + definition: str + roleArn: str + type: StateMachineTypeType + creationDate: datetime + loggingConfiguration: LoggingConfigurationOutputTypeDef + tracingConfiguration: TracingConfigurationTypeDef + label: str + revisionId: str + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStateMachineInputRequestTypeDef(BaseModel): + name: str + definition: str + roleArn: str + type: Optional[StateMachineTypeType] = None + loggingConfiguration: Optional[LoggingConfigurationTypeDef] = None + tags: Optional[Sequence[TagTypeDef]] = None + tracingConfiguration: Optional[TracingConfigurationTypeDef] = None + publish: Optional[bool] = None + versionDescription: Optional[str] = None + +class UpdateStateMachineInputRequestTypeDef(BaseModel): + stateMachineArn: str + definition: Optional[str] = None + roleArn: Optional[str] = None + loggingConfiguration: Optional[LoggingConfigurationTypeDef] = None + tracingConfiguration: Optional[TracingConfigurationTypeDef] = None + publish: Optional[bool] = None + versionDescription: Optional[str] = None + +class GetExecutionHistoryOutputTypeDef(BaseModel): + events: List[HistoryEventTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/stepfunctions_constants.py b/aws_resource_validator/pydantic_models/stepfunctions_constants.py new file mode 100644 index 00000000..a12e3e4f --- /dev/null +++ b/aws_resource_validator/pydantic_models/stepfunctions_constants.py @@ -0,0 +1,512 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ExecutionRedriveFilterType = Literal["NOT_REDRIVEN", "REDRIVEN"] +ExecutionRedriveStatusType = Literal["NOT_REDRIVABLE", "REDRIVABLE", "REDRIVABLE_BY_MAP_RUN"] +ExecutionStatusType = Literal["ABORTED", "FAILED", "PENDING_REDRIVE", "RUNNING", "SUCCEEDED", "TIMED_OUT"] +GetExecutionHistoryPaginatorName = Literal["get_execution_history"] +HistoryEventTypeType = Literal["ActivityFailed", + "ActivityScheduleFailed", + "ActivityScheduled", + "ActivityStarted", + "ActivitySucceeded", + "ActivityTimedOut", + "ChoiceStateEntered", + "ChoiceStateExited", + "ExecutionAborted", + "ExecutionFailed", + "ExecutionRedriven", + "ExecutionStarted", + "ExecutionSucceeded", + "ExecutionTimedOut", + "FailStateEntered", + "LambdaFunctionFailed", + "LambdaFunctionScheduleFailed", + "LambdaFunctionScheduled", + "LambdaFunctionStartFailed", + "LambdaFunctionStarted", + "LambdaFunctionSucceeded", + "LambdaFunctionTimedOut", + "MapIterationAborted", + "MapIterationFailed", + "MapIterationStarted", + "MapIterationSucceeded", + "MapRunAborted", + "MapRunFailed", + "MapRunRedriven", + "MapRunStarted", + "MapRunSucceeded", + "MapStateAborted", + "MapStateEntered", + "MapStateExited", + "MapStateFailed", + "MapStateStarted", + "MapStateSucceeded", + "ParallelStateAborted", + "ParallelStateEntered", + "ParallelStateExited", + "ParallelStateFailed", + "ParallelStateStarted", + "ParallelStateSucceeded", + "PassStateEntered", + "PassStateExited", + "SucceedStateEntered", + "SucceedStateExited", + "TaskFailed", + "TaskScheduled", + "TaskStartFailed", + "TaskStarted", + "TaskStateAborted", + "TaskStateEntered", + "TaskStateExited", + "TaskSubmitFailed", + "TaskSubmitted", + "TaskSucceeded", + "TaskTimedOut", + "WaitStateAborted", + "WaitStateEntered", + "WaitStateExited",] +InspectionLevelType = Literal["DEBUG", "INFO", "TRACE"] +ListActivitiesPaginatorName = Literal["list_activities"] +ListExecutionsPaginatorName = Literal["list_executions"] +ListMapRunsPaginatorName = Literal["list_map_runs"] +ListStateMachinesPaginatorName = Literal["list_state_machines"] +LogLevelType = Literal["ALL", "ERROR", "FATAL", "OFF"] +MapRunStatusType = Literal["ABORTED", "FAILED", "RUNNING", "SUCCEEDED"] +StateMachineStatusType = Literal["ACTIVE", "DELETING"] +StateMachineTypeType = Literal["EXPRESS", "STANDARD"] +SyncExecutionStatusType = Literal["FAILED", "SUCCEEDED", "TIMED_OUT"] +TestExecutionStatusType = Literal["CAUGHT_ERROR", "FAILED", "RETRIABLE", "SUCCEEDED"] +ValidateStateMachineDefinitionResultCodeType = Literal["FAIL", "OK"] +ValidateStateMachineDefinitionSeverityType = Literal["ERROR"] +SFNServiceName = Literal["stepfunctions"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_execution_history", + "list_activities", + "list_executions", + "list_map_runs", + "list_state_machines",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +LoggingConfigurationUnionTypeDef = Union[ 'LoggingConfigurationTypeDef', 'LoggingConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/storagegateway_classes.py b/aws_resource_validator/pydantic_models/storagegateway_classes.py new file mode 100644 index 00000000..937987a3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/storagegateway_classes.py @@ -0,0 +1,1300 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.storagegateway_constants import * + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AddCacheInputRequestTypeDef(BaseModel): + GatewayARN: str + DiskIds: Sequence[str] + +class AddUploadBufferInputRequestTypeDef(BaseModel): + GatewayARN: str + DiskIds: Sequence[str] + +class AddWorkingStorageInputRequestTypeDef(BaseModel): + GatewayARN: str + DiskIds: Sequence[str] + +class AssignTapePoolInputRequestTypeDef(BaseModel): + TapeARN: str + PoolId: str + BypassGovernanceRetention: Optional[bool] = None + +class CacheAttributesTypeDef(BaseModel): + CacheStaleTimeoutInSeconds: Optional[int] = None + +class EndpointNetworkConfigurationTypeDef(BaseModel): + IpAddresses: Optional[Sequence[str]] = None + +class AttachVolumeInputRequestTypeDef(BaseModel): + GatewayARN: str + VolumeARN: str + NetworkInterfaceId: str + TargetName: Optional[str] = None + DiskId: Optional[str] = None + +class AutomaticTapeCreationRuleTypeDef(BaseModel): + TapeBarcodePrefix: str + PoolId: str + TapeSizeInBytes: int + MinimumNumTapes: int + Worm: Optional[bool] = None + +class BandwidthRateLimitIntervalOutputTypeDef(BaseModel): + StartHourOfDay: int + StartMinuteOfHour: int + EndHourOfDay: int + EndMinuteOfHour: int + DaysOfWeek: List[int] + AverageUploadRateLimitInBitsPerSec: Optional[int] = None + AverageDownloadRateLimitInBitsPerSec: Optional[int] = None + +class BandwidthRateLimitIntervalTypeDef(BaseModel): + StartHourOfDay: int + StartMinuteOfHour: int + EndHourOfDay: int + EndMinuteOfHour: int + DaysOfWeek: Sequence[int] + AverageUploadRateLimitInBitsPerSec: Optional[int] = None + AverageDownloadRateLimitInBitsPerSec: Optional[int] = None + +class VolumeiSCSIAttributesTypeDef(BaseModel): + TargetARN: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NetworkInterfacePort: Optional[int] = None + LunNumber: Optional[int] = None + ChapEnabled: Optional[bool] = None + +class CancelArchivalInputRequestTypeDef(BaseModel): + GatewayARN: str + TapeARN: str + +class CancelRetrievalInputRequestTypeDef(BaseModel): + GatewayARN: str + TapeARN: str + +class ChapInfoTypeDef(BaseModel): + TargetARN: Optional[str] = None + SecretToAuthenticateInitiator: Optional[str] = None + InitiatorName: Optional[str] = None + SecretToAuthenticateTarget: Optional[str] = None + +class NFSFileShareDefaultsTypeDef(BaseModel): + FileMode: Optional[str] = None + DirectoryMode: Optional[str] = None + GroupId: Optional[int] = None + OwnerId: Optional[int] = None + +class DeleteAutomaticTapeCreationPolicyInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DeleteBandwidthRateLimitInputRequestTypeDef(BaseModel): + GatewayARN: str + BandwidthType: str + +class DeleteChapCredentialsInputRequestTypeDef(BaseModel): + TargetARN: str + InitiatorName: str + +class DeleteFileShareInputRequestTypeDef(BaseModel): + FileShareARN: str + ForceDelete: Optional[bool] = None + +class DeleteGatewayInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DeleteSnapshotScheduleInputRequestTypeDef(BaseModel): + VolumeARN: str + +class DeleteTapeArchiveInputRequestTypeDef(BaseModel): + TapeARN: str + BypassGovernanceRetention: Optional[bool] = None + +class DeleteTapeInputRequestTypeDef(BaseModel): + GatewayARN: str + TapeARN: str + BypassGovernanceRetention: Optional[bool] = None + +class DeleteTapePoolInputRequestTypeDef(BaseModel): + PoolARN: str + +class DeleteVolumeInputRequestTypeDef(BaseModel): + VolumeARN: str + +class DescribeAvailabilityMonitorTestInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DescribeBandwidthRateLimitInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DescribeBandwidthRateLimitScheduleInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DescribeCacheInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DescribeCachediSCSIVolumesInputRequestTypeDef(BaseModel): + VolumeARNs: Sequence[str] + +class DescribeChapCredentialsInputRequestTypeDef(BaseModel): + TargetARN: str + +class DescribeFileSystemAssociationsInputRequestTypeDef(BaseModel): + FileSystemAssociationARNList: Sequence[str] + +class DescribeGatewayInformationInputRequestTypeDef(BaseModel): + GatewayARN: str + +class NetworkInterfaceTypeDef(BaseModel): + Ipv4Address: Optional[str] = None + MacAddress: Optional[str] = None + Ipv6Address: Optional[str] = None + +class DescribeMaintenanceStartTimeInputRequestTypeDef(BaseModel): + GatewayARN: str + +class SoftwareUpdatePreferencesTypeDef(BaseModel): + AutomaticUpdatePolicy: Optional[AutomaticUpdatePolicyType] = None + +class DescribeNFSFileSharesInputRequestTypeDef(BaseModel): + FileShareARNList: Sequence[str] + +class DescribeSMBFileSharesInputRequestTypeDef(BaseModel): + FileShareARNList: Sequence[str] + +class DescribeSMBSettingsInputRequestTypeDef(BaseModel): + GatewayARN: str + +class SMBLocalGroupsOutputTypeDef(BaseModel): + GatewayAdmins: Optional[List[str]] = None + +class DescribeSnapshotScheduleInputRequestTypeDef(BaseModel): + VolumeARN: str + +class DescribeStorediSCSIVolumesInputRequestTypeDef(BaseModel): + VolumeARNs: Sequence[str] + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeTapeArchivesInputRequestTypeDef(BaseModel): + TapeARNs: Optional[Sequence[str]] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class TapeArchiveTypeDef(BaseModel): + TapeARN: Optional[str] = None + TapeBarcode: Optional[str] = None + TapeCreatedDate: Optional[datetime] = None + TapeSizeInBytes: Optional[int] = None + CompletionTime: Optional[datetime] = None + RetrievedTo: Optional[str] = None + TapeStatus: Optional[str] = None + TapeUsedInBytes: Optional[int] = None + KMSKey: Optional[str] = None + PoolId: Optional[str] = None + Worm: Optional[bool] = None + RetentionStartDate: Optional[datetime] = None + PoolEntryDate: Optional[datetime] = None + +class DescribeTapeRecoveryPointsInputRequestTypeDef(BaseModel): + GatewayARN: str + Marker: Optional[str] = None + Limit: Optional[int] = None + +class TapeRecoveryPointInfoTypeDef(BaseModel): + TapeARN: Optional[str] = None + TapeRecoveryPointTime: Optional[datetime] = None + TapeSizeInBytes: Optional[int] = None + TapeStatus: Optional[str] = None + +class DescribeTapesInputRequestTypeDef(BaseModel): + GatewayARN: str + TapeARNs: Optional[Sequence[str]] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class TapeTypeDef(BaseModel): + TapeARN: Optional[str] = None + TapeBarcode: Optional[str] = None + TapeCreatedDate: Optional[datetime] = None + TapeSizeInBytes: Optional[int] = None + TapeStatus: Optional[str] = None + VTLDevice: Optional[str] = None + Progress: Optional[float] = None + TapeUsedInBytes: Optional[int] = None + KMSKey: Optional[str] = None + PoolId: Optional[str] = None + Worm: Optional[bool] = None + RetentionStartDate: Optional[datetime] = None + PoolEntryDate: Optional[datetime] = None + +class DescribeUploadBufferInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DescribeVTLDevicesInputRequestTypeDef(BaseModel): + GatewayARN: str + VTLDeviceARNs: Optional[Sequence[str]] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class DescribeWorkingStorageInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DetachVolumeInputRequestTypeDef(BaseModel): + VolumeARN: str + ForceDetach: Optional[bool] = None + +class DeviceiSCSIAttributesTypeDef(BaseModel): + TargetARN: Optional[str] = None + NetworkInterfaceId: Optional[str] = None + NetworkInterfacePort: Optional[int] = None + ChapEnabled: Optional[bool] = None + +class DisableGatewayInputRequestTypeDef(BaseModel): + GatewayARN: str + +class DisassociateFileSystemInputRequestTypeDef(BaseModel): + FileSystemAssociationARN: str + ForceDelete: Optional[bool] = None + +class DiskTypeDef(BaseModel): + DiskId: Optional[str] = None + DiskPath: Optional[str] = None + DiskNode: Optional[str] = None + DiskStatus: Optional[str] = None + DiskSizeInBytes: Optional[int] = None + DiskAllocationType: Optional[str] = None + DiskAllocationResource: Optional[str] = None + DiskAttributeList: Optional[List[str]] = None + +class EndpointNetworkConfigurationOutputTypeDef(BaseModel): + IpAddresses: Optional[List[str]] = None + +class FileShareInfoTypeDef(BaseModel): + FileShareType: Optional[FileShareTypeType] = None + FileShareARN: Optional[str] = None + FileShareId: Optional[str] = None + FileShareStatus: Optional[str] = None + GatewayARN: Optional[str] = None + +class FileSystemAssociationStatusDetailTypeDef(BaseModel): + ErrorCode: Optional[str] = None + +class FileSystemAssociationSummaryTypeDef(BaseModel): + FileSystemAssociationId: Optional[str] = None + FileSystemAssociationARN: Optional[str] = None + FileSystemAssociationStatus: Optional[str] = None + GatewayARN: Optional[str] = None + +class GatewayInfoTypeDef(BaseModel): + GatewayId: Optional[str] = None + GatewayARN: Optional[str] = None + GatewayType: Optional[str] = None + GatewayOperationalState: Optional[str] = None + GatewayName: Optional[str] = None + Ec2InstanceId: Optional[str] = None + Ec2InstanceRegion: Optional[str] = None + HostEnvironment: Optional[HostEnvironmentType] = None + HostEnvironmentId: Optional[str] = None + DeprecationDate: Optional[str] = None + SoftwareVersion: Optional[str] = None + +class JoinDomainInputRequestTypeDef(BaseModel): + GatewayARN: str + DomainName: str + UserName: str + Password: str + OrganizationalUnit: Optional[str] = None + DomainControllers: Optional[Sequence[str]] = None + TimeoutInSeconds: Optional[int] = None + +class ListAutomaticTapeCreationPoliciesInputRequestTypeDef(BaseModel): + GatewayARN: Optional[str] = None + +class ListFileSharesInputRequestTypeDef(BaseModel): + GatewayARN: Optional[str] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class ListFileSystemAssociationsInputRequestTypeDef(BaseModel): + GatewayARN: Optional[str] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class ListGatewaysInputRequestTypeDef(BaseModel): + Marker: Optional[str] = None + Limit: Optional[int] = None + +class ListLocalDisksInputRequestTypeDef(BaseModel): + GatewayARN: str + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + Marker: Optional[str] = None + Limit: Optional[int] = None + +class ListTapePoolsInputRequestTypeDef(BaseModel): + PoolARNs: Optional[Sequence[str]] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class PoolInfoTypeDef(BaseModel): + PoolARN: Optional[str] = None + PoolName: Optional[str] = None + StorageClass: Optional[TapeStorageClassType] = None + RetentionLockType: Optional[RetentionLockTypeType] = None + RetentionLockTimeInDays: Optional[int] = None + PoolStatus: Optional[PoolStatusType] = None + +class ListTapesInputRequestTypeDef(BaseModel): + TapeARNs: Optional[Sequence[str]] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class TapeInfoTypeDef(BaseModel): + TapeARN: Optional[str] = None + TapeBarcode: Optional[str] = None + TapeSizeInBytes: Optional[int] = None + TapeStatus: Optional[str] = None + GatewayARN: Optional[str] = None + PoolId: Optional[str] = None + RetentionStartDate: Optional[datetime] = None + PoolEntryDate: Optional[datetime] = None + +class ListVolumeInitiatorsInputRequestTypeDef(BaseModel): + VolumeARN: str + +class ListVolumeRecoveryPointsInputRequestTypeDef(BaseModel): + GatewayARN: str + +class VolumeRecoveryPointInfoTypeDef(BaseModel): + VolumeARN: Optional[str] = None + VolumeSizeInBytes: Optional[int] = None + VolumeUsageInBytes: Optional[int] = None + VolumeRecoveryPointTime: Optional[str] = None + +class ListVolumesInputRequestTypeDef(BaseModel): + GatewayARN: Optional[str] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class VolumeInfoTypeDef(BaseModel): + VolumeARN: Optional[str] = None + VolumeId: Optional[str] = None + GatewayARN: Optional[str] = None + GatewayId: Optional[str] = None + VolumeType: Optional[str] = None + VolumeSizeInBytes: Optional[int] = None + VolumeAttachmentStatus: Optional[str] = None + +class NotifyWhenUploadedInputRequestTypeDef(BaseModel): + FileShareARN: str + +class RefreshCacheInputRequestTypeDef(BaseModel): + FileShareARN: str + FolderList: Optional[Sequence[str]] = None + Recursive: Optional[bool] = None + +class RemoveTagsFromResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class ResetCacheInputRequestTypeDef(BaseModel): + GatewayARN: str + +class RetrieveTapeArchiveInputRequestTypeDef(BaseModel): + TapeARN: str + GatewayARN: str + +class RetrieveTapeRecoveryPointInputRequestTypeDef(BaseModel): + TapeARN: str + GatewayARN: str + +class SMBLocalGroupsTypeDef(BaseModel): + GatewayAdmins: Optional[Sequence[str]] = None + +class SetLocalConsolePasswordInputRequestTypeDef(BaseModel): + GatewayARN: str + LocalConsolePassword: str + +class SetSMBGuestPasswordInputRequestTypeDef(BaseModel): + GatewayARN: str + Password: str + +class ShutdownGatewayInputRequestTypeDef(BaseModel): + GatewayARN: str + +class StartAvailabilityMonitorTestInputRequestTypeDef(BaseModel): + GatewayARN: str + +class StartGatewayInputRequestTypeDef(BaseModel): + GatewayARN: str + +class UpdateBandwidthRateLimitInputRequestTypeDef(BaseModel): + GatewayARN: str + AverageUploadRateLimitInBitsPerSec: Optional[int] = None + AverageDownloadRateLimitInBitsPerSec: Optional[int] = None + +class UpdateChapCredentialsInputRequestTypeDef(BaseModel): + TargetARN: str + SecretToAuthenticateInitiator: str + InitiatorName: str + SecretToAuthenticateTarget: Optional[str] = None + +class UpdateGatewayInformationInputRequestTypeDef(BaseModel): + GatewayARN: str + GatewayName: Optional[str] = None + GatewayTimezone: Optional[str] = None + CloudWatchLogGroupARN: Optional[str] = None + GatewayCapacity: Optional[GatewayCapacityType] = None + +class UpdateGatewaySoftwareNowInputRequestTypeDef(BaseModel): + GatewayARN: str + +class UpdateSMBFileShareVisibilityInputRequestTypeDef(BaseModel): + GatewayARN: str + FileSharesVisible: bool + +class UpdateSMBSecurityStrategyInputRequestTypeDef(BaseModel): + GatewayARN: str + SMBSecurityStrategy: SMBSecurityStrategyType + +class UpdateVTLDeviceTypeInputRequestTypeDef(BaseModel): + VTLDeviceARN: str + DeviceType: str + +class ActivateGatewayInputRequestTypeDef(BaseModel): + ActivationKey: str + GatewayName: str + GatewayTimezone: str + GatewayRegion: str + GatewayType: Optional[str] = None + TapeDriveType: Optional[str] = None + MediumChangerType: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class AddTagsToResourceInputRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateCachediSCSIVolumeInputRequestTypeDef(BaseModel): + GatewayARN: str + VolumeSizeInBytes: int + TargetName: str + NetworkInterfaceId: str + ClientToken: str + SnapshotId: Optional[str] = None + SourceVolumeARN: Optional[str] = None + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotFromVolumeRecoveryPointInputRequestTypeDef(BaseModel): + VolumeARN: str + SnapshotDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateSnapshotInputRequestTypeDef(BaseModel): + VolumeARN: str + SnapshotDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateStorediSCSIVolumeInputRequestTypeDef(BaseModel): + GatewayARN: str + DiskId: str + PreserveExistingData: bool + TargetName: str + NetworkInterfaceId: str + SnapshotId: Optional[str] = None + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTapePoolInputRequestTypeDef(BaseModel): + PoolName: str + StorageClass: TapeStorageClassType + RetentionLockType: Optional[RetentionLockTypeType] = None + RetentionLockTimeInDays: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTapeWithBarcodeInputRequestTypeDef(BaseModel): + GatewayARN: str + TapeSizeInBytes: int + TapeBarcode: str + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + PoolId: Optional[str] = None + Worm: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTapesInputRequestTypeDef(BaseModel): + GatewayARN: str + TapeSizeInBytes: int + ClientToken: str + NumTapesToCreate: int + TapeBarcodePrefix: str + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + PoolId: Optional[str] = None + Worm: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateSnapshotScheduleInputRequestTypeDef(BaseModel): + VolumeARN: str + StartAt: int + RecurrenceInHours: int + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ActivateGatewayOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddCacheOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddTagsToResourceOutputTypeDef(BaseModel): + ResourceARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddUploadBufferOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddWorkingStorageOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssignTapePoolOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateFileSystemOutputTypeDef(BaseModel): + FileSystemAssociationARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class AttachVolumeOutputTypeDef(BaseModel): + VolumeARN: str + TargetARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelArchivalOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CancelRetrievalOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCachediSCSIVolumeOutputTypeDef(BaseModel): + VolumeARN: str + TargetARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNFSFileShareOutputTypeDef(BaseModel): + FileShareARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSMBFileShareOutputTypeDef(BaseModel): + FileShareARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSnapshotFromVolumeRecoveryPointOutputTypeDef(BaseModel): + SnapshotId: str + VolumeARN: str + VolumeRecoveryPointTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSnapshotOutputTypeDef(BaseModel): + VolumeARN: str + SnapshotId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStorediSCSIVolumeOutputTypeDef(BaseModel): + VolumeARN: str + VolumeSizeInBytes: int + TargetARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTapePoolOutputTypeDef(BaseModel): + PoolARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTapeWithBarcodeOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTapesOutputTypeDef(BaseModel): + TapeARNs: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAutomaticTapeCreationPolicyOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteBandwidthRateLimitOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteChapCredentialsOutputTypeDef(BaseModel): + TargetARN: str + InitiatorName: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFileShareOutputTypeDef(BaseModel): + FileShareARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGatewayOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSnapshotScheduleOutputTypeDef(BaseModel): + VolumeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTapeArchiveOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTapeOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTapePoolOutputTypeDef(BaseModel): + PoolARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteVolumeOutputTypeDef(BaseModel): + VolumeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAvailabilityMonitorTestOutputTypeDef(BaseModel): + GatewayARN: str + Status: AvailabilityMonitorTestStatusType + StartTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeBandwidthRateLimitOutputTypeDef(BaseModel): + GatewayARN: str + AverageUploadRateLimitInBitsPerSec: int + AverageDownloadRateLimitInBitsPerSec: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCacheOutputTypeDef(BaseModel): + GatewayARN: str + DiskIds: List[str] + CacheAllocatedInBytes: int + CacheUsedPercentage: float + CacheDirtyPercentage: float + CacheHitPercentage: float + CacheMissPercentage: float + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSnapshotScheduleOutputTypeDef(BaseModel): + VolumeARN: str + StartAt: int + RecurrenceInHours: int + Description: str + Timezone: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUploadBufferOutputTypeDef(BaseModel): + GatewayARN: str + DiskIds: List[str] + UploadBufferUsedInBytes: int + UploadBufferAllocatedInBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkingStorageOutputTypeDef(BaseModel): + GatewayARN: str + DiskIds: List[str] + WorkingStorageUsedInBytes: int + WorkingStorageAllocatedInBytes: int + ResponseMetadata: ResponseMetadataTypeDef + +class DetachVolumeOutputTypeDef(BaseModel): + VolumeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisableGatewayOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateFileSystemOutputTypeDef(BaseModel): + FileSystemAssociationARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class JoinDomainOutputTypeDef(BaseModel): + GatewayARN: str + ActiveDirectoryStatus: ActiveDirectoryStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + ResourceARN: str + Marker: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVolumeInitiatorsOutputTypeDef(BaseModel): + Initiators: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class NotifyWhenUploadedOutputTypeDef(BaseModel): + FileShareARN: str + NotificationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RefreshCacheOutputTypeDef(BaseModel): + FileShareARN: str + NotificationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RemoveTagsFromResourceOutputTypeDef(BaseModel): + ResourceARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResetCacheOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class RetrieveTapeArchiveOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class RetrieveTapeRecoveryPointOutputTypeDef(BaseModel): + TapeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetLocalConsolePasswordOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class SetSMBGuestPasswordOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class ShutdownGatewayOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartAvailabilityMonitorTestOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartGatewayOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAutomaticTapeCreationPolicyOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBandwidthRateLimitOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBandwidthRateLimitScheduleOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateChapCredentialsOutputTypeDef(BaseModel): + TargetARN: str + InitiatorName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateFileSystemAssociationOutputTypeDef(BaseModel): + FileSystemAssociationARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewayInformationOutputTypeDef(BaseModel): + GatewayARN: str + GatewayName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGatewaySoftwareNowOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMaintenanceStartTimeOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNFSFileShareOutputTypeDef(BaseModel): + FileShareARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSMBFileShareOutputTypeDef(BaseModel): + FileShareARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSMBFileShareVisibilityOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSMBLocalGroupsOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSMBSecurityStrategyOutputTypeDef(BaseModel): + GatewayARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSnapshotScheduleOutputTypeDef(BaseModel): + VolumeARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVTLDeviceTypeOutputTypeDef(BaseModel): + VTLDeviceARN: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSMBFileShareInputRequestTypeDef(BaseModel): + ClientToken: str + GatewayARN: str + Role: str + LocationARN: str + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + DefaultStorageClass: Optional[str] = None + ObjectACL: Optional[ObjectACLType] = None + ReadOnly: Optional[bool] = None + GuessMIMETypeEnabled: Optional[bool] = None + RequesterPays: Optional[bool] = None + SMBACLEnabled: Optional[bool] = None + AccessBasedEnumeration: Optional[bool] = None + AdminUserList: Optional[Sequence[str]] = None + ValidUserList: Optional[Sequence[str]] = None + InvalidUserList: Optional[Sequence[str]] = None + AuditDestinationARN: Optional[str] = None + Authentication: Optional[str] = None + CaseSensitivity: Optional[CaseSensitivityType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + FileShareName: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + NotificationPolicy: Optional[str] = None + VPCEndpointDNSName: Optional[str] = None + BucketRegion: Optional[str] = None + OplocksEnabled: Optional[bool] = None + +class SMBFileShareInfoTypeDef(BaseModel): + FileShareARN: Optional[str] = None + FileShareId: Optional[str] = None + FileShareStatus: Optional[str] = None + GatewayARN: Optional[str] = None + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + Path: Optional[str] = None + Role: Optional[str] = None + LocationARN: Optional[str] = None + DefaultStorageClass: Optional[str] = None + ObjectACL: Optional[ObjectACLType] = None + ReadOnly: Optional[bool] = None + GuessMIMETypeEnabled: Optional[bool] = None + RequesterPays: Optional[bool] = None + SMBACLEnabled: Optional[bool] = None + AccessBasedEnumeration: Optional[bool] = None + AdminUserList: Optional[List[str]] = None + ValidUserList: Optional[List[str]] = None + InvalidUserList: Optional[List[str]] = None + AuditDestinationARN: Optional[str] = None + Authentication: Optional[str] = None + CaseSensitivity: Optional[CaseSensitivityType] = None + Tags: Optional[List[TagTypeDef]] = None + FileShareName: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + NotificationPolicy: Optional[str] = None + VPCEndpointDNSName: Optional[str] = None + BucketRegion: Optional[str] = None + OplocksEnabled: Optional[bool] = None + +class UpdateFileSystemAssociationInputRequestTypeDef(BaseModel): + FileSystemAssociationARN: str + UserName: Optional[str] = None + Password: Optional[str] = None + AuditDestinationARN: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + +class UpdateSMBFileShareInputRequestTypeDef(BaseModel): + FileShareARN: str + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + DefaultStorageClass: Optional[str] = None + ObjectACL: Optional[ObjectACLType] = None + ReadOnly: Optional[bool] = None + GuessMIMETypeEnabled: Optional[bool] = None + RequesterPays: Optional[bool] = None + SMBACLEnabled: Optional[bool] = None + AccessBasedEnumeration: Optional[bool] = None + AdminUserList: Optional[Sequence[str]] = None + ValidUserList: Optional[Sequence[str]] = None + InvalidUserList: Optional[Sequence[str]] = None + AuditDestinationARN: Optional[str] = None + CaseSensitivity: Optional[CaseSensitivityType] = None + FileShareName: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + NotificationPolicy: Optional[str] = None + OplocksEnabled: Optional[bool] = None + +class AssociateFileSystemInputRequestTypeDef(BaseModel): + UserName: str + Password: str + ClientToken: str + GatewayARN: str + LocationARN: str + Tags: Optional[Sequence[TagTypeDef]] = None + AuditDestinationARN: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + EndpointNetworkConfiguration: Optional[EndpointNetworkConfigurationTypeDef] = None + +class AutomaticTapeCreationPolicyInfoTypeDef(BaseModel): + AutomaticTapeCreationRules: Optional[List[AutomaticTapeCreationRuleTypeDef]] = None + GatewayARN: Optional[str] = None + +class UpdateAutomaticTapeCreationPolicyInputRequestTypeDef(BaseModel): + AutomaticTapeCreationRules: Sequence[AutomaticTapeCreationRuleTypeDef] + GatewayARN: str + +class DescribeBandwidthRateLimitScheduleOutputTypeDef(BaseModel): + GatewayARN: str + BandwidthRateLimitIntervals: List[BandwidthRateLimitIntervalOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CachediSCSIVolumeTypeDef(BaseModel): + VolumeARN: Optional[str] = None + VolumeId: Optional[str] = None + VolumeType: Optional[str] = None + VolumeStatus: Optional[str] = None + VolumeAttachmentStatus: Optional[str] = None + VolumeSizeInBytes: Optional[int] = None + VolumeProgress: Optional[float] = None + SourceSnapshotId: Optional[str] = None + VolumeiSCSIAttributes: Optional[VolumeiSCSIAttributesTypeDef] = None + CreatedDate: Optional[datetime] = None + VolumeUsedInBytes: Optional[int] = None + KMSKey: Optional[str] = None + TargetName: Optional[str] = None + +class StorediSCSIVolumeTypeDef(BaseModel): + VolumeARN: Optional[str] = None + VolumeId: Optional[str] = None + VolumeType: Optional[str] = None + VolumeStatus: Optional[str] = None + VolumeAttachmentStatus: Optional[str] = None + VolumeSizeInBytes: Optional[int] = None + VolumeProgress: Optional[float] = None + VolumeDiskId: Optional[str] = None + SourceSnapshotId: Optional[str] = None + PreservedExistingData: Optional[bool] = None + VolumeiSCSIAttributes: Optional[VolumeiSCSIAttributesTypeDef] = None + CreatedDate: Optional[datetime] = None + VolumeUsedInBytes: Optional[int] = None + KMSKey: Optional[str] = None + TargetName: Optional[str] = None + +class DescribeChapCredentialsOutputTypeDef(BaseModel): + ChapCredentials: List[ChapInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNFSFileShareInputRequestTypeDef(BaseModel): + ClientToken: str + GatewayARN: str + Role: str + LocationARN: str + NFSFileShareDefaults: Optional[NFSFileShareDefaultsTypeDef] = None + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + DefaultStorageClass: Optional[str] = None + ObjectACL: Optional[ObjectACLType] = None + ClientList: Optional[Sequence[str]] = None + Squash: Optional[str] = None + ReadOnly: Optional[bool] = None + GuessMIMETypeEnabled: Optional[bool] = None + RequesterPays: Optional[bool] = None + Tags: Optional[Sequence[TagTypeDef]] = None + FileShareName: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + NotificationPolicy: Optional[str] = None + VPCEndpointDNSName: Optional[str] = None + BucketRegion: Optional[str] = None + AuditDestinationARN: Optional[str] = None + +class NFSFileShareInfoTypeDef(BaseModel): + NFSFileShareDefaults: Optional[NFSFileShareDefaultsTypeDef] = None + FileShareARN: Optional[str] = None + FileShareId: Optional[str] = None + FileShareStatus: Optional[str] = None + GatewayARN: Optional[str] = None + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + Path: Optional[str] = None + Role: Optional[str] = None + LocationARN: Optional[str] = None + DefaultStorageClass: Optional[str] = None + ObjectACL: Optional[ObjectACLType] = None + ClientList: Optional[List[str]] = None + Squash: Optional[str] = None + ReadOnly: Optional[bool] = None + GuessMIMETypeEnabled: Optional[bool] = None + RequesterPays: Optional[bool] = None + Tags: Optional[List[TagTypeDef]] = None + FileShareName: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + NotificationPolicy: Optional[str] = None + VPCEndpointDNSName: Optional[str] = None + BucketRegion: Optional[str] = None + AuditDestinationARN: Optional[str] = None + +class UpdateNFSFileShareInputRequestTypeDef(BaseModel): + FileShareARN: str + KMSEncrypted: Optional[bool] = None + KMSKey: Optional[str] = None + NFSFileShareDefaults: Optional[NFSFileShareDefaultsTypeDef] = None + DefaultStorageClass: Optional[str] = None + ObjectACL: Optional[ObjectACLType] = None + ClientList: Optional[Sequence[str]] = None + Squash: Optional[str] = None + ReadOnly: Optional[bool] = None + GuessMIMETypeEnabled: Optional[bool] = None + RequesterPays: Optional[bool] = None + FileShareName: Optional[str] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + NotificationPolicy: Optional[str] = None + AuditDestinationARN: Optional[str] = None + +class DescribeGatewayInformationOutputTypeDef(BaseModel): + GatewayARN: str + GatewayId: str + GatewayName: str + GatewayTimezone: str + GatewayState: str + GatewayNetworkInterfaces: List[NetworkInterfaceTypeDef] + GatewayType: str + NextUpdateAvailabilityDate: str + LastSoftwareUpdate: str + Ec2InstanceId: str + Ec2InstanceRegion: str + Tags: List[TagTypeDef] + VPCEndpoint: str + CloudWatchLogGroupARN: str + HostEnvironment: HostEnvironmentType + EndpointType: str + SoftwareUpdatesEndDate: str + DeprecationDate: str + GatewayCapacity: GatewayCapacityType + SupportedGatewayCapacities: List[GatewayCapacityType] + HostEnvironmentId: str + SoftwareVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMaintenanceStartTimeOutputTypeDef(BaseModel): + GatewayARN: str + HourOfDay: int + MinuteOfHour: int + DayOfWeek: int + DayOfMonth: int + Timezone: str + SoftwareUpdatePreferences: SoftwareUpdatePreferencesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMaintenanceStartTimeInputRequestTypeDef(BaseModel): + GatewayARN: str + HourOfDay: Optional[int] = None + MinuteOfHour: Optional[int] = None + DayOfWeek: Optional[int] = None + DayOfMonth: Optional[int] = None + SoftwareUpdatePreferences: Optional[SoftwareUpdatePreferencesTypeDef] = None + +class DescribeSMBSettingsOutputTypeDef(BaseModel): + GatewayARN: str + DomainName: str + ActiveDirectoryStatus: ActiveDirectoryStatusType + SMBGuestPasswordSet: bool + SMBSecurityStrategy: SMBSecurityStrategyType + FileSharesVisible: bool + SMBLocalGroups: SMBLocalGroupsOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTapeArchivesInputDescribeTapeArchivesPaginateTypeDef(BaseModel): + TapeARNs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTapeRecoveryPointsInputDescribeTapeRecoveryPointsPaginateTypeDef(BaseModel): + GatewayARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTapesInputDescribeTapesPaginateTypeDef(BaseModel): + GatewayARN: str + TapeARNs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeVTLDevicesInputDescribeVTLDevicesPaginateTypeDef(BaseModel): + GatewayARN: str + VTLDeviceARNs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFileSharesInputListFileSharesPaginateTypeDef(BaseModel): + GatewayARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFileSystemAssociationsInputListFileSystemAssociationsPaginateTypeDef(BaseModel): + GatewayARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGatewaysInputListGatewaysPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceInputListTagsForResourcePaginateTypeDef(BaseModel): + ResourceARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTapePoolsInputListTapePoolsPaginateTypeDef(BaseModel): + PoolARNs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTapesInputListTapesPaginateTypeDef(BaseModel): + TapeARNs: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListVolumesInputListVolumesPaginateTypeDef(BaseModel): + GatewayARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeTapeArchivesOutputTypeDef(BaseModel): + TapeArchives: List[TapeArchiveTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTapeRecoveryPointsOutputTypeDef(BaseModel): + GatewayARN: str + TapeRecoveryPointInfos: List[TapeRecoveryPointInfoTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTapesOutputTypeDef(BaseModel): + Tapes: List[TapeTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class VTLDeviceTypeDef(BaseModel): + VTLDeviceARN: Optional[str] = None + VTLDeviceType: Optional[str] = None + VTLDeviceVendor: Optional[str] = None + VTLDeviceProductIdentifier: Optional[str] = None + DeviceiSCSIAttributes: Optional[DeviceiSCSIAttributesTypeDef] = None + +class ListLocalDisksOutputTypeDef(BaseModel): + GatewayARN: str + Disks: List[DiskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListFileSharesOutputTypeDef(BaseModel): + Marker: str + NextMarker: str + FileShareInfoList: List[FileShareInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class FileSystemAssociationInfoTypeDef(BaseModel): + FileSystemAssociationARN: Optional[str] = None + LocationARN: Optional[str] = None + FileSystemAssociationStatus: Optional[str] = None + AuditDestinationARN: Optional[str] = None + GatewayARN: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + CacheAttributes: Optional[CacheAttributesTypeDef] = None + EndpointNetworkConfiguration: Optional[EndpointNetworkConfigurationOutputTypeDef] = None + FileSystemAssociationStatusDetails: Optional[ List[FileSystemAssociationStatusDetailTypeDef] ] = None + +class ListFileSystemAssociationsOutputTypeDef(BaseModel): + Marker: str + NextMarker: str + FileSystemAssociationSummaryList: List[FileSystemAssociationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGatewaysOutputTypeDef(BaseModel): + Gateways: List[GatewayInfoTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTapePoolsOutputTypeDef(BaseModel): + PoolInfos: List[PoolInfoTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTapesOutputTypeDef(BaseModel): + TapeInfos: List[TapeInfoTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListVolumeRecoveryPointsOutputTypeDef(BaseModel): + GatewayARN: str + VolumeRecoveryPointInfos: List[VolumeRecoveryPointInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListVolumesOutputTypeDef(BaseModel): + GatewayARN: str + Marker: str + VolumeInfos: List[VolumeInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSMBLocalGroupsInputRequestTypeDef(BaseModel): + GatewayARN: str + SMBLocalGroups: SMBLocalGroupsTypeDef + +class DescribeSMBFileSharesOutputTypeDef(BaseModel): + SMBFileShareInfoList: List[SMBFileShareInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAutomaticTapeCreationPoliciesOutputTypeDef(BaseModel): + AutomaticTapeCreationPolicyInfos: List[AutomaticTapeCreationPolicyInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBandwidthRateLimitScheduleInputRequestTypeDef(BaseModel): + GatewayARN: str + BandwidthRateLimitIntervals: Sequence[BandwidthRateLimitIntervalUnionTypeDef] + +class DescribeCachediSCSIVolumesOutputTypeDef(BaseModel): + CachediSCSIVolumes: List[CachediSCSIVolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeStorediSCSIVolumesOutputTypeDef(BaseModel): + StorediSCSIVolumes: List[StorediSCSIVolumeTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNFSFileSharesOutputTypeDef(BaseModel): + NFSFileShareInfoList: List[NFSFileShareInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeVTLDevicesOutputTypeDef(BaseModel): + GatewayARN: str + VTLDevices: List[VTLDeviceTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFileSystemAssociationsOutputTypeDef(BaseModel): + FileSystemAssociationInfoList: List[FileSystemAssociationInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/storagegateway_constants.py b/aws_resource_validator/pydantic_models/storagegateway_constants.py new file mode 100644 index 00000000..8da1aae2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/storagegateway_constants.py @@ -0,0 +1,468 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActiveDirectoryStatusType = Literal["ACCESS_DENIED", "DETACHED", "JOINED", "JOINING", "NETWORK_ERROR", "TIMEOUT", "UNKNOWN_ERROR"] +AutomaticUpdatePolicyType = Literal["ALL_VERSIONS", "EMERGENCY_VERSIONS_ONLY"] +AvailabilityMonitorTestStatusType = Literal["COMPLETE", "FAILED", "PENDING"] +CaseSensitivityType = Literal["CaseSensitive", "ClientSpecified"] +DescribeTapeArchivesPaginatorName = Literal["describe_tape_archives"] +DescribeTapeRecoveryPointsPaginatorName = Literal["describe_tape_recovery_points"] +DescribeTapesPaginatorName = Literal["describe_tapes"] +DescribeVTLDevicesPaginatorName = Literal["describe_vtl_devices"] +FileShareTypeType = Literal["NFS", "SMB"] +GatewayCapacityType = Literal["Large", "Medium", "Small"] +HostEnvironmentType = Literal["EC2", "HYPER-V", "KVM", "OTHER", "SNOWBALL", "VMWARE"] +ListFileSharesPaginatorName = Literal["list_file_shares"] +ListFileSystemAssociationsPaginatorName = Literal["list_file_system_associations"] +ListGatewaysPaginatorName = Literal["list_gateways"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListTapePoolsPaginatorName = Literal["list_tape_pools"] +ListTapesPaginatorName = Literal["list_tapes"] +ListVolumesPaginatorName = Literal["list_volumes"] +ObjectACLType = Literal["authenticated-read", + "aws-exec-read", + "bucket-owner-full-control", + "bucket-owner-read", + "private", + "public-read", + "public-read-write",] +PoolStatusType = Literal["ACTIVE", "DELETED"] +RetentionLockTypeType = Literal["COMPLIANCE", "GOVERNANCE", "NONE"] +SMBSecurityStrategyType = Literal["ClientSpecified", "MandatoryEncryption", "MandatoryEncryptionNoAes128", "MandatorySigning"] +TapeStorageClassType = Literal["DEEP_ARCHIVE", "GLACIER"] +StorageGatewayServiceName = Literal["storagegateway"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_tape_archives", + "describe_tape_recovery_points", + "describe_tapes", + "describe_vtl_devices", + "list_file_shares", + "list_file_system_associations", + "list_gateways", + "list_tags_for_resource", + "list_tape_pools", + "list_tapes", + "list_volumes",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BandwidthRateLimitIntervalUnionTypeDef = Union[ 'BandwidthRateLimitIntervalTypeDef', 'BandwidthRateLimitIntervalOutputTypeDef' ] +EndpointNetworkConfigurationUnionTypeDef = Union[ 'EndpointNetworkConfigurationTypeDef', 'EndpointNetworkConfigurationOutputTypeDef' ] +SMBLocalGroupsUnionTypeDef = Union['SMBLocalGroupsTypeDef', 'SMBLocalGroupsOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/sts_classes.py b/aws_resource_validator/pydantic_models/sts_classes.py new file mode 100644 index 00000000..fd1724cf --- /dev/null +++ b/aws_resource_validator/pydantic_models/sts_classes.py @@ -0,0 +1,147 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.sts_constants import * + +class PolicyDescriptorTypeTypeDef(BaseModel): + arn: Optional[str] = None + +class ProvidedContextTypeDef(BaseModel): + ProviderArn: Optional[str] = None + ContextAssertion: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class AssumedRoleUserTypeDef(BaseModel): + AssumedRoleId: str + Arn: str + +class CredentialsTypeDef(BaseModel): + AccessKeyId: str + SecretAccessKey: str + SessionToken: str + Expiration: datetime + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DecodeAuthorizationMessageRequestRequestTypeDef(BaseModel): + EncodedMessage: str + +class FederatedUserTypeDef(BaseModel): + FederatedUserId: str + Arn: str + +class GetAccessKeyInfoRequestRequestTypeDef(BaseModel): + AccessKeyId: str + +class GetSessionTokenRequestRequestTypeDef(BaseModel): + DurationSeconds: Optional[int] = None + SerialNumber: Optional[str] = None + TokenCode: Optional[str] = None + +class AssumeRoleWithSAMLRequestRequestTypeDef(BaseModel): + RoleArn: str + PrincipalArn: str + SAMLAssertion: str + PolicyArns: Optional[Sequence[PolicyDescriptorTypeTypeDef]] = None + Policy: Optional[str] = None + DurationSeconds: Optional[int] = None + +class AssumeRoleWithWebIdentityRequestRequestTypeDef(BaseModel): + RoleArn: str + RoleSessionName: str + WebIdentityToken: str + ProviderId: Optional[str] = None + PolicyArns: Optional[Sequence[PolicyDescriptorTypeTypeDef]] = None + Policy: Optional[str] = None + DurationSeconds: Optional[int] = None + +class AssumeRoleRequestRequestTypeDef(BaseModel): + RoleArn: str + RoleSessionName: str + PolicyArns: Optional[Sequence[PolicyDescriptorTypeTypeDef]] = None + Policy: Optional[str] = None + DurationSeconds: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + TransitiveTagKeys: Optional[Sequence[str]] = None + ExternalId: Optional[str] = None + SerialNumber: Optional[str] = None + TokenCode: Optional[str] = None + SourceIdentity: Optional[str] = None + ProvidedContexts: Optional[Sequence[ProvidedContextTypeDef]] = None + +class GetFederationTokenRequestRequestTypeDef(BaseModel): + Name: str + Policy: Optional[str] = None + PolicyArns: Optional[Sequence[PolicyDescriptorTypeTypeDef]] = None + DurationSeconds: Optional[int] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class AssumeRoleResponseTypeDef(BaseModel): + Credentials: CredentialsTypeDef + AssumedRoleUser: AssumedRoleUserTypeDef + PackedPolicySize: int + SourceIdentity: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssumeRoleWithSAMLResponseTypeDef(BaseModel): + Credentials: CredentialsTypeDef + AssumedRoleUser: AssumedRoleUserTypeDef + PackedPolicySize: int + Subject: str + SubjectType: str + Issuer: str + Audience: str + NameQualifier: str + SourceIdentity: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssumeRoleWithWebIdentityResponseTypeDef(BaseModel): + Credentials: CredentialsTypeDef + SubjectFromWebIdentityToken: str + AssumedRoleUser: AssumedRoleUserTypeDef + PackedPolicySize: int + Provider: str + Audience: str + SourceIdentity: str + ResponseMetadata: ResponseMetadataTypeDef + +class DecodeAuthorizationMessageResponseTypeDef(BaseModel): + DecodedMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessKeyInfoResponseTypeDef(BaseModel): + Account: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCallerIdentityResponseTypeDef(BaseModel): + UserId: str + Account: str + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSessionTokenResponseTypeDef(BaseModel): + Credentials: CredentialsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFederationTokenResponseTypeDef(BaseModel): + Credentials: CredentialsTypeDef + FederatedUser: FederatedUserTypeDef + PackedPolicySize: int + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/sts_constants.py b/aws_resource_validator/pydantic_models/sts_constants.py new file mode 100644 index 00000000..60a4b845 --- /dev/null +++ b/aws_resource_validator/pydantic_models/sts_constants.py @@ -0,0 +1,416 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +STSServiceName = Literal["sts"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/supplychain_classes.py b/aws_resource_validator/pydantic_models/supplychain_classes.py new file mode 100644 index 00000000..599941a6 --- /dev/null +++ b/aws_resource_validator/pydantic_models/supplychain_classes.py @@ -0,0 +1,56 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.supplychain_constants import * + +class BillOfMaterialsImportJobTypeDef(BaseModel): + instanceId: str + jobId: str + status: ConfigurationJobStatusType + s3uri: str + message: Optional[str] = None + +class CreateBillOfMaterialsImportJobRequestRequestTypeDef(BaseModel): + instanceId: str + s3uri: str + clientToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class GetBillOfMaterialsImportJobRequestRequestTypeDef(BaseModel): + instanceId: str + jobId: str + +class CreateBillOfMaterialsImportJobResponseTypeDef(BaseModel): + jobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBillOfMaterialsImportJobResponseTypeDef(BaseModel): + job: BillOfMaterialsImportJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SendDataIntegrationEventResponseTypeDef(BaseModel): + eventId: str + ResponseMetadata: ResponseMetadataTypeDef + +class SendDataIntegrationEventRequestRequestTypeDef(BaseModel): + instanceId: str + eventType: DataIntegrationEventTypeType + data: str + eventGroupId: str + eventTimestamp: Optional[TimestampTypeDef] = None + clientToken: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/supplychain_constants.py b/aws_resource_validator/pydantic_models/supplychain_constants.py new file mode 100644 index 00000000..78da66ef --- /dev/null +++ b/aws_resource_validator/pydantic_models/supplychain_constants.py @@ -0,0 +1,413 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ConfigurationJobStatusType = Literal["FAILED", "IN_PROGRESS", "NEW", "QUEUED", "SUCCESS"] +DataIntegrationEventTypeType = Literal["scn.data.forecast", + "scn.data.inboundorder", + "scn.data.inboundorderline", + "scn.data.inboundorderlineschedule", + "scn.data.inventorylevel", + "scn.data.outboundorderline", + "scn.data.outboundshipment", + "scn.data.processheader", + "scn.data.processoperation", + "scn.data.processproduct", + "scn.data.reservation", + "scn.data.shipment", + "scn.data.shipmentstop", + "scn.data.shipmentstoporder", + "scn.data.supplyplan",] +SupplyChainServiceName = Literal["supplychain"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/support_app_classes.py b/aws_resource_validator/pydantic_models/support_app_classes.py new file mode 100644 index 00000000..9a8c7e26 --- /dev/null +++ b/aws_resource_validator/pydantic_models/support_app_classes.py @@ -0,0 +1,105 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.support_app_constants import * + +class CreateSlackChannelConfigurationRequestRequestTypeDef(BaseModel): + channelId: str + channelRoleArn: str + notifyOnCaseSeverity: NotificationSeverityLevelType + teamId: str + channelName: Optional[str] = None + notifyOnAddCorrespondenceToCase: Optional[bool] = None + notifyOnCreateOrReopenCase: Optional[bool] = None + notifyOnResolveCase: Optional[bool] = None + +class DeleteSlackChannelConfigurationRequestRequestTypeDef(BaseModel): + channelId: str + teamId: str + +class DeleteSlackWorkspaceConfigurationRequestRequestTypeDef(BaseModel): + teamId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class ListSlackChannelConfigurationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class SlackChannelConfigurationTypeDef(BaseModel): + channelId: str + teamId: str + channelName: Optional[str] = None + channelRoleArn: Optional[str] = None + notifyOnAddCorrespondenceToCase: Optional[bool] = None + notifyOnCaseSeverity: Optional[NotificationSeverityLevelType] = None + notifyOnCreateOrReopenCase: Optional[bool] = None + notifyOnResolveCase: Optional[bool] = None + +class ListSlackWorkspaceConfigurationsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + +class SlackWorkspaceConfigurationTypeDef(BaseModel): + teamId: str + allowOrganizationMemberAccount: Optional[bool] = None + teamName: Optional[str] = None + +class PutAccountAliasRequestRequestTypeDef(BaseModel): + accountAlias: str + +class RegisterSlackWorkspaceForOrganizationRequestRequestTypeDef(BaseModel): + teamId: str + +class UpdateSlackChannelConfigurationRequestRequestTypeDef(BaseModel): + channelId: str + teamId: str + channelName: Optional[str] = None + channelRoleArn: Optional[str] = None + notifyOnAddCorrespondenceToCase: Optional[bool] = None + notifyOnCaseSeverity: Optional[NotificationSeverityLevelType] = None + notifyOnCreateOrReopenCase: Optional[bool] = None + notifyOnResolveCase: Optional[bool] = None + +class GetAccountAliasResultTypeDef(BaseModel): + accountAlias: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterSlackWorkspaceForOrganizationResultTypeDef(BaseModel): + accountType: AccountTypeType + teamId: str + teamName: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSlackChannelConfigurationResultTypeDef(BaseModel): + channelId: str + channelName: str + channelRoleArn: str + notifyOnAddCorrespondenceToCase: bool + notifyOnCaseSeverity: NotificationSeverityLevelType + notifyOnCreateOrReopenCase: bool + notifyOnResolveCase: bool + teamId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSlackChannelConfigurationsResultTypeDef(BaseModel): + nextToken: str + slackChannelConfigurations: List[SlackChannelConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSlackWorkspaceConfigurationsResultTypeDef(BaseModel): + nextToken: str + slackWorkspaceConfigurations: List[SlackWorkspaceConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/support_app_constants.py b/aws_resource_validator/pydantic_models/support_app_constants.py new file mode 100644 index 00000000..e55f2679 --- /dev/null +++ b/aws_resource_validator/pydantic_models/support_app_constants.py @@ -0,0 +1,391 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountTypeType = Literal["management", "member"] +NotificationSeverityLevelType = Literal["all", "high", "none"] +SupportAppServiceName = Literal["support-app"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["eu-west-1", "us-east-1", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/support_classes.py b/aws_resource_validator/pydantic_models/support_classes.py new file mode 100644 index 00000000..cb7b0090 --- /dev/null +++ b/aws_resource_validator/pydantic_models/support_classes.py @@ -0,0 +1,305 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.support_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AddCommunicationToCaseRequestRequestTypeDef(BaseModel): + communicationBody: str + caseId: Optional[str] = None + ccEmailAddresses: Optional[Sequence[str]] = None + attachmentSetId: Optional[str] = None + +class AttachmentDetailsTypeDef(BaseModel): + attachmentId: Optional[str] = None + fileName: Optional[str] = None + +class AttachmentOutputTypeDef(BaseModel): + fileName: Optional[str] = None + data: Optional[bytes] = None + +class CategoryTypeDef(BaseModel): + code: Optional[str] = None + name: Optional[str] = None + +class DateIntervalTypeDef(BaseModel): + startDateTime: Optional[str] = None + endDateTime: Optional[str] = None + +class SupportedHourTypeDef(BaseModel): + startTime: Optional[str] = None + endTime: Optional[str] = None + +class CreateCaseRequestRequestTypeDef(BaseModel): + subject: str + communicationBody: str + serviceCode: Optional[str] = None + severityCode: Optional[str] = None + categoryCode: Optional[str] = None + ccEmailAddresses: Optional[Sequence[str]] = None + language: Optional[str] = None + issueType: Optional[str] = None + attachmentSetId: Optional[str] = None + +class DescribeAttachmentRequestRequestTypeDef(BaseModel): + attachmentId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeCasesRequestRequestTypeDef(BaseModel): + caseIdList: Optional[Sequence[str]] = None + displayId: Optional[str] = None + afterTime: Optional[str] = None + beforeTime: Optional[str] = None + includeResolvedCases: Optional[bool] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + language: Optional[str] = None + includeCommunications: Optional[bool] = None + +class DescribeCommunicationsRequestRequestTypeDef(BaseModel): + caseId: str + beforeTime: Optional[str] = None + afterTime: Optional[str] = None + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class DescribeCreateCaseOptionsRequestRequestTypeDef(BaseModel): + issueType: str + serviceCode: str + language: str + categoryCode: str + +class DescribeServicesRequestRequestTypeDef(BaseModel): + serviceCodeList: Optional[Sequence[str]] = None + language: Optional[str] = None + +class DescribeSeverityLevelsRequestRequestTypeDef(BaseModel): + language: Optional[str] = None + +class SeverityLevelTypeDef(BaseModel): + code: Optional[str] = None + name: Optional[str] = None + +class DescribeSupportedLanguagesRequestRequestTypeDef(BaseModel): + issueType: str + serviceCode: str + categoryCode: str + +class SupportedLanguageTypeDef(BaseModel): + code: Optional[str] = None + language: Optional[str] = None + display: Optional[str] = None + +class DescribeTrustedAdvisorCheckRefreshStatusesRequestRequestTypeDef(BaseModel): + checkIds: Sequence[str] + +class TrustedAdvisorCheckRefreshStatusTypeDef(BaseModel): + checkId: str + status: str + millisUntilNextRefreshable: int + +class DescribeTrustedAdvisorCheckResultRequestRequestTypeDef(BaseModel): + checkId: str + language: Optional[str] = None + +class DescribeTrustedAdvisorCheckSummariesRequestRequestTypeDef(BaseModel): + checkIds: Sequence[str] + +class DescribeTrustedAdvisorChecksRequestRequestTypeDef(BaseModel): + language: str + +class TrustedAdvisorCheckDescriptionTypeDef(BaseModel): + id: str + name: str + description: str + category: str + metadata: List[str] + +class RefreshTrustedAdvisorCheckRequestRequestTypeDef(BaseModel): + checkId: str + +class ResolveCaseRequestRequestTypeDef(BaseModel): + caseId: Optional[str] = None + +class TrustedAdvisorCostOptimizingSummaryTypeDef(BaseModel): + estimatedMonthlySavings: float + estimatedPercentMonthlySavings: float + +class TrustedAdvisorResourceDetailTypeDef(BaseModel): + status: str + resourceId: str + metadata: List[str] + region: Optional[str] = None + isSuppressed: Optional[bool] = None + +class TrustedAdvisorResourcesSummaryTypeDef(BaseModel): + resourcesProcessed: int + resourcesFlagged: int + resourcesIgnored: int + resourcesSuppressed: int + +class AddAttachmentsToSetResponseTypeDef(BaseModel): + attachmentSetId: str + expiryTime: str + ResponseMetadata: ResponseMetadataTypeDef + +class AddCommunicationToCaseResponseTypeDef(BaseModel): + result: bool + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCaseResponseTypeDef(BaseModel): + caseId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResolveCaseResponseTypeDef(BaseModel): + initialCaseStatus: str + finalCaseStatus: str + ResponseMetadata: ResponseMetadataTypeDef + +class CommunicationTypeDef(BaseModel): + caseId: Optional[str] = None + body: Optional[str] = None + submittedBy: Optional[str] = None + timeCreated: Optional[str] = None + attachmentSet: Optional[List[AttachmentDetailsTypeDef]] = None + +class DescribeAttachmentResponseTypeDef(BaseModel): + attachment: AttachmentOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AttachmentTypeDef(BaseModel): + fileName: Optional[str] = None + data: Optional[BlobTypeDef] = None + +class ServiceTypeDef(BaseModel): + code: Optional[str] = None + name: Optional[str] = None + categories: Optional[List[CategoryTypeDef]] = None + +class CommunicationTypeOptionsTypeDef(BaseModel): + type: Optional[str] = None + supportedHours: Optional[List[SupportedHourTypeDef]] = None + datesWithoutSupport: Optional[List[DateIntervalTypeDef]] = None + +class DescribeCasesRequestDescribeCasesPaginateTypeDef(BaseModel): + caseIdList: Optional[Sequence[str]] = None + displayId: Optional[str] = None + afterTime: Optional[str] = None + beforeTime: Optional[str] = None + includeResolvedCases: Optional[bool] = None + language: Optional[str] = None + includeCommunications: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCommunicationsRequestDescribeCommunicationsPaginateTypeDef(BaseModel): + caseId: str + beforeTime: Optional[str] = None + afterTime: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeSeverityLevelsResponseTypeDef(BaseModel): + severityLevels: List[SeverityLevelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSupportedLanguagesResponseTypeDef(BaseModel): + supportedLanguages: List[SupportedLanguageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrustedAdvisorCheckRefreshStatusesResponseTypeDef(BaseModel): + statuses: List[TrustedAdvisorCheckRefreshStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RefreshTrustedAdvisorCheckResponseTypeDef(BaseModel): + status: TrustedAdvisorCheckRefreshStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrustedAdvisorChecksResponseTypeDef(BaseModel): + checks: List[TrustedAdvisorCheckDescriptionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TrustedAdvisorCategorySpecificSummaryTypeDef(BaseModel): + costOptimizing: Optional[TrustedAdvisorCostOptimizingSummaryTypeDef] = None + +class DescribeCommunicationsResponseTypeDef(BaseModel): + communications: List[CommunicationTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RecentCaseCommunicationsTypeDef(BaseModel): + communications: Optional[List[CommunicationTypeDef]] = None + nextToken: Optional[str] = None + +class DescribeServicesResponseTypeDef(BaseModel): + services: List[ServiceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCreateCaseOptionsResponseTypeDef(BaseModel): + languageAvailability: str + communicationTypes: List[CommunicationTypeOptionsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TrustedAdvisorCheckResultTypeDef(BaseModel): + checkId: str + timestamp: str + status: str + resourcesSummary: TrustedAdvisorResourcesSummaryTypeDef + categorySpecificSummary: TrustedAdvisorCategorySpecificSummaryTypeDef + flaggedResources: List[TrustedAdvisorResourceDetailTypeDef] + +class TrustedAdvisorCheckSummaryTypeDef(BaseModel): + checkId: str + timestamp: str + status: str + resourcesSummary: TrustedAdvisorResourcesSummaryTypeDef + categorySpecificSummary: TrustedAdvisorCategorySpecificSummaryTypeDef + hasFlaggedResources: Optional[bool] = None + +class CaseDetailsTypeDef(BaseModel): + caseId: Optional[str] = None + displayId: Optional[str] = None + subject: Optional[str] = None + status: Optional[str] = None + serviceCode: Optional[str] = None + categoryCode: Optional[str] = None + severityCode: Optional[str] = None + submittedBy: Optional[str] = None + timeCreated: Optional[str] = None + recentCommunications: Optional[RecentCaseCommunicationsTypeDef] = None + ccEmailAddresses: Optional[List[str]] = None + language: Optional[str] = None + +class AddAttachmentsToSetRequestRequestTypeDef(BaseModel): + attachments: Sequence[AttachmentUnionTypeDef] + attachmentSetId: Optional[str] = None + +class DescribeTrustedAdvisorCheckResultResponseTypeDef(BaseModel): + result: TrustedAdvisorCheckResultTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTrustedAdvisorCheckSummariesResponseTypeDef(BaseModel): + summaries: List[TrustedAdvisorCheckSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCasesResponseTypeDef(BaseModel): + cases: List[CaseDetailsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/support_constants.py b/aws_resource_validator/pydantic_models/support_constants.py new file mode 100644 index 00000000..8cd15aba --- /dev/null +++ b/aws_resource_validator/pydantic_models/support_constants.py @@ -0,0 +1,402 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescribeCasesPaginatorName = Literal["describe_cases"] +DescribeCommunicationsPaginatorName = Literal["describe_communications"] +SupportServiceName = Literal["support"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_cases", "describe_communications"] +BlobTypeDef = Union[str, bytes, IO[Any] +AttachmentUnionTypeDef = Union['AttachmentTypeDef', 'AttachmentOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/swf_classes.py b/aws_resource_validator/pydantic_models/swf_classes.py new file mode 100644 index 00000000..bf738aed --- /dev/null +++ b/aws_resource_validator/pydantic_models/swf_classes.py @@ -0,0 +1,985 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.swf_constants import * + +class ActivityTaskCancelRequestedEventAttributesTypeDef(BaseModel): + decisionTaskCompletedEventId: int + activityId: str + +class ActivityTaskCanceledEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + details: Optional[str] = None + latestCancelRequestedEventId: Optional[int] = None + +class ActivityTaskCompletedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + result: Optional[str] = None + +class ActivityTaskFailedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + reason: Optional[str] = None + details: Optional[str] = None + +class ActivityTypeTypeDef(BaseModel): + name: str + version: str + +class TaskListTypeDef(BaseModel): + name: str + +class ActivityTaskStartedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + identity: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ActivityTaskTimedOutEventAttributesTypeDef(BaseModel): + timeoutType: ActivityTaskTimeoutTypeType + scheduledEventId: int + startedEventId: int + details: Optional[str] = None + +class WorkflowExecutionTypeDef(BaseModel): + workflowId: str + runId: str + +class CancelTimerDecisionAttributesTypeDef(BaseModel): + timerId: str + +class CancelTimerFailedEventAttributesTypeDef(BaseModel): + timerId: str + cause: CancelTimerFailedCauseType + decisionTaskCompletedEventId: int + +class CancelWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + details: Optional[str] = None + +class CancelWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + cause: CancelWorkflowExecutionFailedCauseType + decisionTaskCompletedEventId: int + +class WorkflowTypeTypeDef(BaseModel): + name: str + version: str + +class CloseStatusFilterTypeDef(BaseModel): + status: CloseStatusType + +class CompleteWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + result: Optional[str] = None + +class CompleteWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + cause: CompleteWorkflowExecutionFailedCauseType + decisionTaskCompletedEventId: int + +class ContinueAsNewWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + cause: ContinueAsNewWorkflowExecutionFailedCauseType + decisionTaskCompletedEventId: int + +class TagFilterTypeDef(BaseModel): + tag: str + +class WorkflowExecutionFilterTypeDef(BaseModel): + workflowId: str + +class WorkflowTypeFilterTypeDef(BaseModel): + name: str + version: Optional[str] = None + +class DecisionTaskStartedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + identity: Optional[str] = None + +class DecisionTaskTimedOutEventAttributesTypeDef(BaseModel): + timeoutType: DecisionTaskTimeoutTypeType + scheduledEventId: int + startedEventId: int + +class FailWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + reason: Optional[str] = None + details: Optional[str] = None + +class RecordMarkerDecisionAttributesTypeDef(BaseModel): + markerName: str + details: Optional[str] = None + +class RequestCancelActivityTaskDecisionAttributesTypeDef(BaseModel): + activityId: str + +class RequestCancelExternalWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + workflowId: str + runId: Optional[str] = None + control: Optional[str] = None + +class ScheduleLambdaFunctionDecisionAttributesTypeDef(BaseModel): + id: str + name: str + control: Optional[str] = None + input: Optional[str] = None + startToCloseTimeout: Optional[str] = None + +class SignalExternalWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + workflowId: str + signalName: str + runId: Optional[str] = None + input: Optional[str] = None + control: Optional[str] = None + +class StartTimerDecisionAttributesTypeDef(BaseModel): + timerId: str + startToFireTimeout: str + control: Optional[str] = None + +class DeprecateDomainInputRequestTypeDef(BaseModel): + name: str + +class DescribeDomainInputRequestTypeDef(BaseModel): + name: str + +class DomainConfigurationTypeDef(BaseModel): + workflowExecutionRetentionPeriodInDays: str + +class DomainInfoTypeDef(BaseModel): + name: str + status: RegistrationStatusType + description: Optional[str] = None + arn: Optional[str] = None + +class FailWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + cause: FailWorkflowExecutionFailedCauseType + decisionTaskCompletedEventId: int + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class LambdaFunctionCompletedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + result: Optional[str] = None + +class LambdaFunctionFailedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + reason: Optional[str] = None + details: Optional[str] = None + +class LambdaFunctionScheduledEventAttributesTypeDef(BaseModel): + id: str + name: str + decisionTaskCompletedEventId: int + control: Optional[str] = None + input: Optional[str] = None + startToCloseTimeout: Optional[str] = None + +class LambdaFunctionStartedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + +class LambdaFunctionTimedOutEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + timeoutType: Optional[Literal["START_TO_CLOSE"]] = None + +class MarkerRecordedEventAttributesTypeDef(BaseModel): + markerName: str + decisionTaskCompletedEventId: int + details: Optional[str] = None + +class RecordMarkerFailedEventAttributesTypeDef(BaseModel): + markerName: str + cause: Literal["OPERATION_NOT_PERMITTED"] + decisionTaskCompletedEventId: int + +class RequestCancelActivityTaskFailedEventAttributesTypeDef(BaseModel): + activityId: str + cause: RequestCancelActivityTaskFailedCauseType + decisionTaskCompletedEventId: int + +class RequestCancelExternalWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + workflowId: str + cause: RequestCancelExternalWorkflowExecutionFailedCauseType + initiatedEventId: int + decisionTaskCompletedEventId: int + runId: Optional[str] = None + control: Optional[str] = None + +class RequestCancelExternalWorkflowExecutionInitiatedEventAttributesTypeDef(BaseModel): + workflowId: str + decisionTaskCompletedEventId: int + runId: Optional[str] = None + control: Optional[str] = None + +class ScheduleLambdaFunctionFailedEventAttributesTypeDef(BaseModel): + id: str + name: str + cause: ScheduleLambdaFunctionFailedCauseType + decisionTaskCompletedEventId: int + +class SignalExternalWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + workflowId: str + cause: SignalExternalWorkflowExecutionFailedCauseType + initiatedEventId: int + decisionTaskCompletedEventId: int + runId: Optional[str] = None + control: Optional[str] = None + +class SignalExternalWorkflowExecutionInitiatedEventAttributesTypeDef(BaseModel): + workflowId: str + signalName: str + decisionTaskCompletedEventId: int + runId: Optional[str] = None + input: Optional[str] = None + control: Optional[str] = None + +class StartLambdaFunctionFailedEventAttributesTypeDef(BaseModel): + scheduledEventId: Optional[int] = None + cause: Optional[Literal["ASSUME_ROLE_FAILED"]] = None + message: Optional[str] = None + +class StartTimerFailedEventAttributesTypeDef(BaseModel): + timerId: str + cause: StartTimerFailedCauseType + decisionTaskCompletedEventId: int + +class TimerCanceledEventAttributesTypeDef(BaseModel): + timerId: str + startedEventId: int + decisionTaskCompletedEventId: int + +class TimerFiredEventAttributesTypeDef(BaseModel): + timerId: str + startedEventId: int + +class TimerStartedEventAttributesTypeDef(BaseModel): + timerId: str + startToFireTimeout: str + decisionTaskCompletedEventId: int + control: Optional[str] = None + +class WorkflowExecutionCanceledEventAttributesTypeDef(BaseModel): + decisionTaskCompletedEventId: int + details: Optional[str] = None + +class WorkflowExecutionCompletedEventAttributesTypeDef(BaseModel): + decisionTaskCompletedEventId: int + result: Optional[str] = None + +class WorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + decisionTaskCompletedEventId: int + reason: Optional[str] = None + details: Optional[str] = None + +class WorkflowExecutionTerminatedEventAttributesTypeDef(BaseModel): + childPolicy: ChildPolicyType + reason: Optional[str] = None + details: Optional[str] = None + cause: Optional[WorkflowExecutionTerminatedCauseType] = None + +class WorkflowExecutionTimedOutEventAttributesTypeDef(BaseModel): + timeoutType: Literal["START_TO_CLOSE"] + childPolicy: ChildPolicyType + +class ListActivityTypesInputRequestTypeDef(BaseModel): + domain: str + registrationStatus: RegistrationStatusType + name: Optional[str] = None + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + +class ListDomainsInputRequestTypeDef(BaseModel): + registrationStatus: RegistrationStatusType + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class ResourceTagTypeDef(BaseModel): + key: str + value: Optional[str] = None + +class ListWorkflowTypesInputRequestTypeDef(BaseModel): + domain: str + registrationStatus: RegistrationStatusType + name: Optional[str] = None + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + +class RecordActivityTaskHeartbeatInputRequestTypeDef(BaseModel): + taskToken: str + details: Optional[str] = None + +class RequestCancelWorkflowExecutionInputRequestTypeDef(BaseModel): + domain: str + workflowId: str + runId: Optional[str] = None + +class RespondActivityTaskCanceledInputRequestTypeDef(BaseModel): + taskToken: str + details: Optional[str] = None + +class RespondActivityTaskCompletedInputRequestTypeDef(BaseModel): + taskToken: str + result: Optional[str] = None + +class RespondActivityTaskFailedInputRequestTypeDef(BaseModel): + taskToken: str + reason: Optional[str] = None + details: Optional[str] = None + +class SignalWorkflowExecutionInputRequestTypeDef(BaseModel): + domain: str + workflowId: str + signalName: str + runId: Optional[str] = None + input: Optional[str] = None + +class TerminateWorkflowExecutionInputRequestTypeDef(BaseModel): + domain: str + workflowId: str + runId: Optional[str] = None + reason: Optional[str] = None + details: Optional[str] = None + childPolicy: Optional[ChildPolicyType] = None + +class UndeprecateDomainInputRequestTypeDef(BaseModel): + name: str + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class WorkflowExecutionOpenCountsTypeDef(BaseModel): + openActivityTasks: int + openDecisionTasks: int + openTimers: int + openChildWorkflowExecutions: int + openLambdaFunctions: Optional[int] = None + +class ActivityTypeInfoTypeDef(BaseModel): + activityType: ActivityTypeTypeDef + status: RegistrationStatusType + creationDate: datetime + description: Optional[str] = None + deprecationDate: Optional[datetime] = None + +class DeleteActivityTypeInputRequestTypeDef(BaseModel): + domain: str + activityType: ActivityTypeTypeDef + +class DeprecateActivityTypeInputRequestTypeDef(BaseModel): + domain: str + activityType: ActivityTypeTypeDef + +class DescribeActivityTypeInputRequestTypeDef(BaseModel): + domain: str + activityType: ActivityTypeTypeDef + +class ScheduleActivityTaskFailedEventAttributesTypeDef(BaseModel): + activityType: ActivityTypeTypeDef + activityId: str + cause: ScheduleActivityTaskFailedCauseType + decisionTaskCompletedEventId: int + +class UndeprecateActivityTypeInputRequestTypeDef(BaseModel): + domain: str + activityType: ActivityTypeTypeDef + +class ActivityTaskScheduledEventAttributesTypeDef(BaseModel): + activityType: ActivityTypeTypeDef + activityId: str + taskList: TaskListTypeDef + decisionTaskCompletedEventId: int + input: Optional[str] = None + control: Optional[str] = None + scheduleToStartTimeout: Optional[str] = None + scheduleToCloseTimeout: Optional[str] = None + startToCloseTimeout: Optional[str] = None + taskPriority: Optional[str] = None + heartbeatTimeout: Optional[str] = None + +class ActivityTypeConfigurationTypeDef(BaseModel): + defaultTaskStartToCloseTimeout: Optional[str] = None + defaultTaskHeartbeatTimeout: Optional[str] = None + defaultTaskList: Optional[TaskListTypeDef] = None + defaultTaskPriority: Optional[str] = None + defaultTaskScheduleToStartTimeout: Optional[str] = None + defaultTaskScheduleToCloseTimeout: Optional[str] = None + +class ContinueAsNewWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + input: Optional[str] = None + executionStartToCloseTimeout: Optional[str] = None + taskList: Optional[TaskListTypeDef] = None + taskPriority: Optional[str] = None + taskStartToCloseTimeout: Optional[str] = None + childPolicy: Optional[ChildPolicyType] = None + tagList: Optional[Sequence[str]] = None + workflowTypeVersion: Optional[str] = None + lambdaRole: Optional[str] = None + +class CountPendingActivityTasksInputRequestTypeDef(BaseModel): + domain: str + taskList: TaskListTypeDef + +class CountPendingDecisionTasksInputRequestTypeDef(BaseModel): + domain: str + taskList: TaskListTypeDef + +class DecisionTaskCompletedEventAttributesTypeDef(BaseModel): + scheduledEventId: int + startedEventId: int + executionContext: Optional[str] = None + taskList: Optional[TaskListTypeDef] = None + taskListScheduleToStartTimeout: Optional[str] = None + +class DecisionTaskScheduledEventAttributesTypeDef(BaseModel): + taskList: TaskListTypeDef + taskPriority: Optional[str] = None + startToCloseTimeout: Optional[str] = None + scheduleToStartTimeout: Optional[str] = None + +class PollForActivityTaskInputRequestTypeDef(BaseModel): + domain: str + taskList: TaskListTypeDef + identity: Optional[str] = None + +class PollForDecisionTaskInputRequestTypeDef(BaseModel): + domain: str + taskList: TaskListTypeDef + identity: Optional[str] = None + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + startAtPreviousStartedEvent: Optional[bool] = None + +class RegisterActivityTypeInputRequestTypeDef(BaseModel): + domain: str + name: str + version: str + description: Optional[str] = None + defaultTaskStartToCloseTimeout: Optional[str] = None + defaultTaskHeartbeatTimeout: Optional[str] = None + defaultTaskList: Optional[TaskListTypeDef] = None + defaultTaskPriority: Optional[str] = None + defaultTaskScheduleToStartTimeout: Optional[str] = None + defaultTaskScheduleToCloseTimeout: Optional[str] = None + +class RegisterWorkflowTypeInputRequestTypeDef(BaseModel): + domain: str + name: str + version: str + description: Optional[str] = None + defaultTaskStartToCloseTimeout: Optional[str] = None + defaultExecutionStartToCloseTimeout: Optional[str] = None + defaultTaskList: Optional[TaskListTypeDef] = None + defaultTaskPriority: Optional[str] = None + defaultChildPolicy: Optional[ChildPolicyType] = None + defaultLambdaRole: Optional[str] = None + +class ScheduleActivityTaskDecisionAttributesTypeDef(BaseModel): + activityType: ActivityTypeTypeDef + activityId: str + control: Optional[str] = None + input: Optional[str] = None + scheduleToCloseTimeout: Optional[str] = None + taskList: Optional[TaskListTypeDef] = None + taskPriority: Optional[str] = None + scheduleToStartTimeout: Optional[str] = None + startToCloseTimeout: Optional[str] = None + heartbeatTimeout: Optional[str] = None + +class WorkflowExecutionConfigurationTypeDef(BaseModel): + taskStartToCloseTimeout: str + executionStartToCloseTimeout: str + taskList: TaskListTypeDef + childPolicy: ChildPolicyType + taskPriority: Optional[str] = None + lambdaRole: Optional[str] = None + +class WorkflowTypeConfigurationTypeDef(BaseModel): + defaultTaskStartToCloseTimeout: Optional[str] = None + defaultExecutionStartToCloseTimeout: Optional[str] = None + defaultTaskList: Optional[TaskListTypeDef] = None + defaultTaskPriority: Optional[str] = None + defaultChildPolicy: Optional[ChildPolicyType] = None + defaultLambdaRole: Optional[str] = None + +class ActivityTaskStatusTypeDef(BaseModel): + cancelRequested: bool + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class PendingTaskCountTypeDef(BaseModel): + count: int + truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class RunTypeDef(BaseModel): + runId: str + ResponseMetadata: ResponseMetadataTypeDef + +class WorkflowExecutionCountTypeDef(BaseModel): + count: int + truncated: bool + ResponseMetadata: ResponseMetadataTypeDef + +class ActivityTaskTypeDef(BaseModel): + taskToken: str + activityId: str + startedEventId: int + workflowExecution: WorkflowExecutionTypeDef + activityType: ActivityTypeTypeDef + input: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkflowExecutionInputRequestTypeDef(BaseModel): + domain: str + execution: WorkflowExecutionTypeDef + +class ExternalWorkflowExecutionCancelRequestedEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + initiatedEventId: int + +class ExternalWorkflowExecutionSignaledEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + initiatedEventId: int + +class GetWorkflowExecutionHistoryInputRequestTypeDef(BaseModel): + domain: str + execution: WorkflowExecutionTypeDef + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + +class WorkflowExecutionCancelRequestedEventAttributesTypeDef(BaseModel): + externalWorkflowExecution: Optional[WorkflowExecutionTypeDef] = None + externalInitiatedEventId: Optional[int] = None + cause: Optional[Literal["CHILD_POLICY_APPLIED"]] = None + +class WorkflowExecutionSignaledEventAttributesTypeDef(BaseModel): + signalName: str + input: Optional[str] = None + externalWorkflowExecution: Optional[WorkflowExecutionTypeDef] = None + externalInitiatedEventId: Optional[int] = None + +class ChildWorkflowExecutionCanceledEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + initiatedEventId: int + startedEventId: int + details: Optional[str] = None + +class ChildWorkflowExecutionCompletedEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + initiatedEventId: int + startedEventId: int + result: Optional[str] = None + +class ChildWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + initiatedEventId: int + startedEventId: int + reason: Optional[str] = None + details: Optional[str] = None + +class ChildWorkflowExecutionStartedEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + initiatedEventId: int + +class ChildWorkflowExecutionTerminatedEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + initiatedEventId: int + startedEventId: int + +class ChildWorkflowExecutionTimedOutEventAttributesTypeDef(BaseModel): + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + timeoutType: Literal["START_TO_CLOSE"] + initiatedEventId: int + startedEventId: int + +class DeleteWorkflowTypeInputRequestTypeDef(BaseModel): + domain: str + workflowType: WorkflowTypeTypeDef + +class DeprecateWorkflowTypeInputRequestTypeDef(BaseModel): + domain: str + workflowType: WorkflowTypeTypeDef + +class DescribeWorkflowTypeInputRequestTypeDef(BaseModel): + domain: str + workflowType: WorkflowTypeTypeDef + +class StartChildWorkflowExecutionDecisionAttributesTypeDef(BaseModel): + workflowType: WorkflowTypeTypeDef + workflowId: str + control: Optional[str] = None + input: Optional[str] = None + executionStartToCloseTimeout: Optional[str] = None + taskList: Optional[TaskListTypeDef] = None + taskPriority: Optional[str] = None + taskStartToCloseTimeout: Optional[str] = None + childPolicy: Optional[ChildPolicyType] = None + tagList: Optional[Sequence[str]] = None + lambdaRole: Optional[str] = None + +class StartChildWorkflowExecutionFailedEventAttributesTypeDef(BaseModel): + workflowType: WorkflowTypeTypeDef + cause: StartChildWorkflowExecutionFailedCauseType + workflowId: str + initiatedEventId: int + decisionTaskCompletedEventId: int + control: Optional[str] = None + +class StartChildWorkflowExecutionInitiatedEventAttributesTypeDef(BaseModel): + workflowId: str + workflowType: WorkflowTypeTypeDef + taskList: TaskListTypeDef + decisionTaskCompletedEventId: int + childPolicy: ChildPolicyType + control: Optional[str] = None + input: Optional[str] = None + executionStartToCloseTimeout: Optional[str] = None + taskPriority: Optional[str] = None + taskStartToCloseTimeout: Optional[str] = None + tagList: Optional[List[str]] = None + lambdaRole: Optional[str] = None + +class StartWorkflowExecutionInputRequestTypeDef(BaseModel): + domain: str + workflowId: str + workflowType: WorkflowTypeTypeDef + taskList: Optional[TaskListTypeDef] = None + taskPriority: Optional[str] = None + input: Optional[str] = None + executionStartToCloseTimeout: Optional[str] = None + tagList: Optional[Sequence[str]] = None + taskStartToCloseTimeout: Optional[str] = None + childPolicy: Optional[ChildPolicyType] = None + lambdaRole: Optional[str] = None + +class UndeprecateWorkflowTypeInputRequestTypeDef(BaseModel): + domain: str + workflowType: WorkflowTypeTypeDef + +class WorkflowExecutionContinuedAsNewEventAttributesTypeDef(BaseModel): + decisionTaskCompletedEventId: int + newExecutionRunId: str + taskList: TaskListTypeDef + childPolicy: ChildPolicyType + workflowType: WorkflowTypeTypeDef + input: Optional[str] = None + executionStartToCloseTimeout: Optional[str] = None + taskPriority: Optional[str] = None + taskStartToCloseTimeout: Optional[str] = None + tagList: Optional[List[str]] = None + lambdaRole: Optional[str] = None + +class WorkflowExecutionInfoTypeDef(BaseModel): + execution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + startTimestamp: datetime + executionStatus: ExecutionStatusType + closeTimestamp: Optional[datetime] = None + closeStatus: Optional[CloseStatusType] = None + parent: Optional[WorkflowExecutionTypeDef] = None + tagList: Optional[List[str]] = None + cancelRequested: Optional[bool] = None + +class WorkflowExecutionStartedEventAttributesTypeDef(BaseModel): + childPolicy: ChildPolicyType + taskList: TaskListTypeDef + workflowType: WorkflowTypeTypeDef + input: Optional[str] = None + executionStartToCloseTimeout: Optional[str] = None + taskStartToCloseTimeout: Optional[str] = None + taskPriority: Optional[str] = None + tagList: Optional[List[str]] = None + continuedExecutionRunId: Optional[str] = None + parentWorkflowExecution: Optional[WorkflowExecutionTypeDef] = None + parentInitiatedEventId: Optional[int] = None + lambdaRole: Optional[str] = None + +class WorkflowTypeInfoTypeDef(BaseModel): + workflowType: WorkflowTypeTypeDef + status: RegistrationStatusType + creationDate: datetime + description: Optional[str] = None + deprecationDate: Optional[datetime] = None + +class DomainDetailTypeDef(BaseModel): + domainInfo: DomainInfoTypeDef + configuration: DomainConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DomainInfosTypeDef(BaseModel): + domainInfos: List[DomainInfoTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExecutionTimeFilterTypeDef(BaseModel): + oldestDate: TimestampTypeDef + latestDate: Optional[TimestampTypeDef] = None + +class GetWorkflowExecutionHistoryInputGetWorkflowExecutionHistoryPaginateTypeDef(BaseModel): + domain: str + execution: WorkflowExecutionTypeDef + reverseOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListActivityTypesInputListActivityTypesPaginateTypeDef(BaseModel): + domain: str + registrationStatus: RegistrationStatusType + name: Optional[str] = None + reverseOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDomainsInputListDomainsPaginateTypeDef(BaseModel): + registrationStatus: RegistrationStatusType + reverseOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowTypesInputListWorkflowTypesPaginateTypeDef(BaseModel): + domain: str + registrationStatus: RegistrationStatusType + name: Optional[str] = None + reverseOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class PollForDecisionTaskInputPollForDecisionTaskPaginateTypeDef(BaseModel): + domain: str + taskList: TaskListTypeDef + identity: Optional[str] = None + reverseOrder: Optional[bool] = None + startAtPreviousStartedEvent: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: List[ResourceTagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterDomainInputRequestTypeDef(BaseModel): + name: str + workflowExecutionRetentionPeriodInDays: str + description: Optional[str] = None + tags: Optional[Sequence[ResourceTagTypeDef]] = None + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[ResourceTagTypeDef] + +class ActivityTypeInfosTypeDef(BaseModel): + typeInfos: List[ActivityTypeInfoTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ActivityTypeDetailTypeDef(BaseModel): + typeInfo: ActivityTypeInfoTypeDef + configuration: ActivityTypeConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DecisionTypeDef(BaseModel): + decisionType: DecisionTypeType + scheduleActivityTaskDecisionAttributes: Optional[ ScheduleActivityTaskDecisionAttributesTypeDef ] = None + requestCancelActivityTaskDecisionAttributes: Optional[ RequestCancelActivityTaskDecisionAttributesTypeDef ] = None + completeWorkflowExecutionDecisionAttributes: Optional[ CompleteWorkflowExecutionDecisionAttributesTypeDef ] = None + failWorkflowExecutionDecisionAttributes: Optional[ FailWorkflowExecutionDecisionAttributesTypeDef ] = None + cancelWorkflowExecutionDecisionAttributes: Optional[ CancelWorkflowExecutionDecisionAttributesTypeDef ] = None + continueAsNewWorkflowExecutionDecisionAttributes: Optional[ ContinueAsNewWorkflowExecutionDecisionAttributesTypeDef ] = None + recordMarkerDecisionAttributes: Optional[RecordMarkerDecisionAttributesTypeDef] = None + startTimerDecisionAttributes: Optional[StartTimerDecisionAttributesTypeDef] = None + cancelTimerDecisionAttributes: Optional[CancelTimerDecisionAttributesTypeDef] = None + signalExternalWorkflowExecutionDecisionAttributes: Optional[ SignalExternalWorkflowExecutionDecisionAttributesTypeDef ] = None + requestCancelExternalWorkflowExecutionDecisionAttributes: Optional[ RequestCancelExternalWorkflowExecutionDecisionAttributesTypeDef ] = None + startChildWorkflowExecutionDecisionAttributes: Optional[ StartChildWorkflowExecutionDecisionAttributesTypeDef ] = None + scheduleLambdaFunctionDecisionAttributes: Optional[ ScheduleLambdaFunctionDecisionAttributesTypeDef ] = None + +class WorkflowExecutionDetailTypeDef(BaseModel): + executionInfo: WorkflowExecutionInfoTypeDef + executionConfiguration: WorkflowExecutionConfigurationTypeDef + openCounts: WorkflowExecutionOpenCountsTypeDef + latestActivityTaskTimestamp: datetime + latestExecutionContext: str + ResponseMetadata: ResponseMetadataTypeDef + +class WorkflowExecutionInfosTypeDef(BaseModel): + executionInfos: List[WorkflowExecutionInfoTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class HistoryEventTypeDef(BaseModel): + eventTimestamp: datetime + eventType: EventTypeType + eventId: int + workflowExecutionStartedEventAttributes: Optional[ WorkflowExecutionStartedEventAttributesTypeDef ] = None + workflowExecutionCompletedEventAttributes: Optional[ WorkflowExecutionCompletedEventAttributesTypeDef ] = None + completeWorkflowExecutionFailedEventAttributes: Optional[ CompleteWorkflowExecutionFailedEventAttributesTypeDef ] = None + workflowExecutionFailedEventAttributes: Optional[ WorkflowExecutionFailedEventAttributesTypeDef ] = None + failWorkflowExecutionFailedEventAttributes: Optional[ FailWorkflowExecutionFailedEventAttributesTypeDef ] = None + workflowExecutionTimedOutEventAttributes: Optional[ WorkflowExecutionTimedOutEventAttributesTypeDef ] = None + workflowExecutionCanceledEventAttributes: Optional[ WorkflowExecutionCanceledEventAttributesTypeDef ] = None + cancelWorkflowExecutionFailedEventAttributes: Optional[ CancelWorkflowExecutionFailedEventAttributesTypeDef ] = None + workflowExecutionContinuedAsNewEventAttributes: Optional[ WorkflowExecutionContinuedAsNewEventAttributesTypeDef ] = None + continueAsNewWorkflowExecutionFailedEventAttributes: Optional[ ContinueAsNewWorkflowExecutionFailedEventAttributesTypeDef ] = None + workflowExecutionTerminatedEventAttributes: Optional[ WorkflowExecutionTerminatedEventAttributesTypeDef ] = None + workflowExecutionCancelRequestedEventAttributes: Optional[ WorkflowExecutionCancelRequestedEventAttributesTypeDef ] = None + decisionTaskScheduledEventAttributes: Optional[ DecisionTaskScheduledEventAttributesTypeDef ] = None + decisionTaskStartedEventAttributes: Optional[ DecisionTaskStartedEventAttributesTypeDef ] = None + decisionTaskCompletedEventAttributes: Optional[ DecisionTaskCompletedEventAttributesTypeDef ] = None + decisionTaskTimedOutEventAttributes: Optional[ DecisionTaskTimedOutEventAttributesTypeDef ] = None + activityTaskScheduledEventAttributes: Optional[ ActivityTaskScheduledEventAttributesTypeDef ] = None + activityTaskStartedEventAttributes: Optional[ ActivityTaskStartedEventAttributesTypeDef ] = None + activityTaskCompletedEventAttributes: Optional[ ActivityTaskCompletedEventAttributesTypeDef ] = None + activityTaskFailedEventAttributes: Optional[ActivityTaskFailedEventAttributesTypeDef] = None + activityTaskTimedOutEventAttributes: Optional[ ActivityTaskTimedOutEventAttributesTypeDef ] = None + activityTaskCanceledEventAttributes: Optional[ ActivityTaskCanceledEventAttributesTypeDef ] = None + activityTaskCancelRequestedEventAttributes: Optional[ ActivityTaskCancelRequestedEventAttributesTypeDef ] = None + workflowExecutionSignaledEventAttributes: Optional[ WorkflowExecutionSignaledEventAttributesTypeDef ] = None + markerRecordedEventAttributes: Optional[MarkerRecordedEventAttributesTypeDef] = None + recordMarkerFailedEventAttributes: Optional[RecordMarkerFailedEventAttributesTypeDef] = None + timerStartedEventAttributes: Optional[TimerStartedEventAttributesTypeDef] = None + timerFiredEventAttributes: Optional[TimerFiredEventAttributesTypeDef] = None + timerCanceledEventAttributes: Optional[TimerCanceledEventAttributesTypeDef] = None + startChildWorkflowExecutionInitiatedEventAttributes: Optional[ StartChildWorkflowExecutionInitiatedEventAttributesTypeDef ] = None + childWorkflowExecutionStartedEventAttributes: Optional[ ChildWorkflowExecutionStartedEventAttributesTypeDef ] = None + childWorkflowExecutionCompletedEventAttributes: Optional[ ChildWorkflowExecutionCompletedEventAttributesTypeDef ] = None + childWorkflowExecutionFailedEventAttributes: Optional[ ChildWorkflowExecutionFailedEventAttributesTypeDef ] = None + childWorkflowExecutionTimedOutEventAttributes: Optional[ ChildWorkflowExecutionTimedOutEventAttributesTypeDef ] = None + childWorkflowExecutionCanceledEventAttributes: Optional[ ChildWorkflowExecutionCanceledEventAttributesTypeDef ] = None + childWorkflowExecutionTerminatedEventAttributes: Optional[ ChildWorkflowExecutionTerminatedEventAttributesTypeDef ] = None + signalExternalWorkflowExecutionInitiatedEventAttributes: Optional[ SignalExternalWorkflowExecutionInitiatedEventAttributesTypeDef ] = None + externalWorkflowExecutionSignaledEventAttributes: Optional[ ExternalWorkflowExecutionSignaledEventAttributesTypeDef ] = None + signalExternalWorkflowExecutionFailedEventAttributes: Optional[ SignalExternalWorkflowExecutionFailedEventAttributesTypeDef ] = None + externalWorkflowExecutionCancelRequestedEventAttributes: Optional[ ExternalWorkflowExecutionCancelRequestedEventAttributesTypeDef ] = None + requestCancelExternalWorkflowExecutionInitiatedEventAttributes: Optional[ RequestCancelExternalWorkflowExecutionInitiatedEventAttributesTypeDef ] = None + requestCancelExternalWorkflowExecutionFailedEventAttributes: Optional[ RequestCancelExternalWorkflowExecutionFailedEventAttributesTypeDef ] = None + scheduleActivityTaskFailedEventAttributes: Optional[ ScheduleActivityTaskFailedEventAttributesTypeDef ] = None + requestCancelActivityTaskFailedEventAttributes: Optional[ RequestCancelActivityTaskFailedEventAttributesTypeDef ] = None + startTimerFailedEventAttributes: Optional[StartTimerFailedEventAttributesTypeDef] = None + cancelTimerFailedEventAttributes: Optional[CancelTimerFailedEventAttributesTypeDef] = None + startChildWorkflowExecutionFailedEventAttributes: Optional[ StartChildWorkflowExecutionFailedEventAttributesTypeDef ] = None + lambdaFunctionScheduledEventAttributes: Optional[ LambdaFunctionScheduledEventAttributesTypeDef ] = None + lambdaFunctionStartedEventAttributes: Optional[ LambdaFunctionStartedEventAttributesTypeDef ] = None + lambdaFunctionCompletedEventAttributes: Optional[ LambdaFunctionCompletedEventAttributesTypeDef ] = None + lambdaFunctionFailedEventAttributes: Optional[ LambdaFunctionFailedEventAttributesTypeDef ] = None + lambdaFunctionTimedOutEventAttributes: Optional[ LambdaFunctionTimedOutEventAttributesTypeDef ] = None + scheduleLambdaFunctionFailedEventAttributes: Optional[ ScheduleLambdaFunctionFailedEventAttributesTypeDef ] = None + startLambdaFunctionFailedEventAttributes: Optional[ StartLambdaFunctionFailedEventAttributesTypeDef ] = None + +class WorkflowTypeDetailTypeDef(BaseModel): + typeInfo: WorkflowTypeInfoTypeDef + configuration: WorkflowTypeConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class WorkflowTypeInfosTypeDef(BaseModel): + typeInfos: List[WorkflowTypeInfoTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CountClosedWorkflowExecutionsInputRequestTypeDef(BaseModel): + domain: str + startTimeFilter: Optional[ExecutionTimeFilterTypeDef] = None + closeTimeFilter: Optional[ExecutionTimeFilterTypeDef] = None + executionFilter: Optional[WorkflowExecutionFilterTypeDef] = None + typeFilter: Optional[WorkflowTypeFilterTypeDef] = None + tagFilter: Optional[TagFilterTypeDef] = None + closeStatusFilter: Optional[CloseStatusFilterTypeDef] = None + +class CountOpenWorkflowExecutionsInputRequestTypeDef(BaseModel): + domain: str + startTimeFilter: ExecutionTimeFilterTypeDef + typeFilter: Optional[WorkflowTypeFilterTypeDef] = None + tagFilter: Optional[TagFilterTypeDef] = None + executionFilter: Optional[WorkflowExecutionFilterTypeDef] = None + +class ListClosedWorkflowExecutionsInputListClosedWorkflowExecutionsPaginateTypeDef(BaseModel): + domain: str + startTimeFilter: Optional[ExecutionTimeFilterTypeDef] = None + closeTimeFilter: Optional[ExecutionTimeFilterTypeDef] = None + executionFilter: Optional[WorkflowExecutionFilterTypeDef] = None + closeStatusFilter: Optional[CloseStatusFilterTypeDef] = None + typeFilter: Optional[WorkflowTypeFilterTypeDef] = None + tagFilter: Optional[TagFilterTypeDef] = None + reverseOrder: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListClosedWorkflowExecutionsInputRequestTypeDef(BaseModel): + domain: str + startTimeFilter: Optional[ExecutionTimeFilterTypeDef] = None + closeTimeFilter: Optional[ExecutionTimeFilterTypeDef] = None + executionFilter: Optional[WorkflowExecutionFilterTypeDef] = None + closeStatusFilter: Optional[CloseStatusFilterTypeDef] = None + typeFilter: Optional[WorkflowTypeFilterTypeDef] = None + tagFilter: Optional[TagFilterTypeDef] = None + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + +class ListOpenWorkflowExecutionsInputListOpenWorkflowExecutionsPaginateTypeDef(BaseModel): + domain: str + startTimeFilter: ExecutionTimeFilterTypeDef + typeFilter: Optional[WorkflowTypeFilterTypeDef] = None + tagFilter: Optional[TagFilterTypeDef] = None + reverseOrder: Optional[bool] = None + executionFilter: Optional[WorkflowExecutionFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOpenWorkflowExecutionsInputRequestTypeDef(BaseModel): + domain: str + startTimeFilter: ExecutionTimeFilterTypeDef + typeFilter: Optional[WorkflowTypeFilterTypeDef] = None + tagFilter: Optional[TagFilterTypeDef] = None + nextPageToken: Optional[str] = None + maximumPageSize: Optional[int] = None + reverseOrder: Optional[bool] = None + executionFilter: Optional[WorkflowExecutionFilterTypeDef] = None + +class RespondDecisionTaskCompletedInputRequestTypeDef(BaseModel): + taskToken: str + decisions: Optional[Sequence[DecisionTypeDef]] = None + executionContext: Optional[str] = None + taskList: Optional[TaskListTypeDef] = None + taskListScheduleToStartTimeout: Optional[str] = None + +class DecisionTaskTypeDef(BaseModel): + taskToken: str + startedEventId: int + workflowExecution: WorkflowExecutionTypeDef + workflowType: WorkflowTypeTypeDef + events: List[HistoryEventTypeDef] + nextPageToken: str + previousStartedEventId: int + ResponseMetadata: ResponseMetadataTypeDef + +class HistoryTypeDef(BaseModel): + events: List[HistoryEventTypeDef] + nextPageToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/swf_constants.py b/aws_resource_validator/pydantic_models/swf_constants.py new file mode 100644 index 00000000..020411aa --- /dev/null +++ b/aws_resource_validator/pydantic_models/swf_constants.py @@ -0,0 +1,572 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActivityTaskTimeoutTypeType = Literal["HEARTBEAT", "SCHEDULE_TO_CLOSE", "SCHEDULE_TO_START", "START_TO_CLOSE"] +CancelTimerFailedCauseType = Literal["OPERATION_NOT_PERMITTED", "TIMER_ID_UNKNOWN"] +CancelWorkflowExecutionFailedCauseType = Literal["OPERATION_NOT_PERMITTED", "UNHANDLED_DECISION"] +ChildPolicyType = Literal["ABANDON", "REQUEST_CANCEL", "TERMINATE"] +CloseStatusType = Literal["CANCELED", "COMPLETED", "CONTINUED_AS_NEW", "FAILED", "TERMINATED", "TIMED_OUT"] +CompleteWorkflowExecutionFailedCauseType = Literal["OPERATION_NOT_PERMITTED", "UNHANDLED_DECISION"] +ContinueAsNewWorkflowExecutionFailedCauseType = Literal["CONTINUE_AS_NEW_WORKFLOW_EXECUTION_RATE_EXCEEDED", + "DEFAULT_CHILD_POLICY_UNDEFINED", + "DEFAULT_EXECUTION_START_TO_CLOSE_TIMEOUT_UNDEFINED", + "DEFAULT_TASK_LIST_UNDEFINED", + "DEFAULT_TASK_START_TO_CLOSE_TIMEOUT_UNDEFINED", + "OPERATION_NOT_PERMITTED", + "UNHANDLED_DECISION", + "WORKFLOW_TYPE_DEPRECATED", + "WORKFLOW_TYPE_DOES_NOT_EXIST",] +DecisionTaskTimeoutTypeType = Literal["SCHEDULE_TO_START", "START_TO_CLOSE"] +DecisionTypeType = Literal["CancelTimer", + "CancelWorkflowExecution", + "CompleteWorkflowExecution", + "ContinueAsNewWorkflowExecution", + "FailWorkflowExecution", + "RecordMarker", + "RequestCancelActivityTask", + "RequestCancelExternalWorkflowExecution", + "ScheduleActivityTask", + "ScheduleLambdaFunction", + "SignalExternalWorkflowExecution", + "StartChildWorkflowExecution", + "StartTimer",] +EventTypeType = Literal["ActivityTaskCancelRequested", + "ActivityTaskCanceled", + "ActivityTaskCompleted", + "ActivityTaskFailed", + "ActivityTaskScheduled", + "ActivityTaskStarted", + "ActivityTaskTimedOut", + "CancelTimerFailed", + "CancelWorkflowExecutionFailed", + "ChildWorkflowExecutionCanceled", + "ChildWorkflowExecutionCompleted", + "ChildWorkflowExecutionFailed", + "ChildWorkflowExecutionStarted", + "ChildWorkflowExecutionTerminated", + "ChildWorkflowExecutionTimedOut", + "CompleteWorkflowExecutionFailed", + "ContinueAsNewWorkflowExecutionFailed", + "DecisionTaskCompleted", + "DecisionTaskScheduled", + "DecisionTaskStarted", + "DecisionTaskTimedOut", + "ExternalWorkflowExecutionCancelRequested", + "ExternalWorkflowExecutionSignaled", + "FailWorkflowExecutionFailed", + "LambdaFunctionCompleted", + "LambdaFunctionFailed", + "LambdaFunctionScheduled", + "LambdaFunctionStarted", + "LambdaFunctionTimedOut", + "MarkerRecorded", + "RecordMarkerFailed", + "RequestCancelActivityTaskFailed", + "RequestCancelExternalWorkflowExecutionFailed", + "RequestCancelExternalWorkflowExecutionInitiated", + "ScheduleActivityTaskFailed", + "ScheduleLambdaFunctionFailed", + "SignalExternalWorkflowExecutionFailed", + "SignalExternalWorkflowExecutionInitiated", + "StartChildWorkflowExecutionFailed", + "StartChildWorkflowExecutionInitiated", + "StartLambdaFunctionFailed", + "StartTimerFailed", + "TimerCanceled", + "TimerFired", + "TimerStarted", + "WorkflowExecutionCancelRequested", + "WorkflowExecutionCanceled", + "WorkflowExecutionCompleted", + "WorkflowExecutionContinuedAsNew", + "WorkflowExecutionFailed", + "WorkflowExecutionSignaled", + "WorkflowExecutionStarted", + "WorkflowExecutionTerminated", + "WorkflowExecutionTimedOut",] +ExecutionStatusType = Literal["CLOSED", "OPEN"] +FailWorkflowExecutionFailedCauseType = Literal["OPERATION_NOT_PERMITTED", "UNHANDLED_DECISION"] +GetWorkflowExecutionHistoryPaginatorName = Literal["get_workflow_execution_history"] +LambdaFunctionTimeoutTypeType = Literal["START_TO_CLOSE"] +ListActivityTypesPaginatorName = Literal["list_activity_types"] +ListClosedWorkflowExecutionsPaginatorName = Literal["list_closed_workflow_executions"] +ListDomainsPaginatorName = Literal["list_domains"] +ListOpenWorkflowExecutionsPaginatorName = Literal["list_open_workflow_executions"] +ListWorkflowTypesPaginatorName = Literal["list_workflow_types"] +PollForDecisionTaskPaginatorName = Literal["poll_for_decision_task"] +RecordMarkerFailedCauseType = Literal["OPERATION_NOT_PERMITTED"] +RegistrationStatusType = Literal["DEPRECATED", "REGISTERED"] +RequestCancelActivityTaskFailedCauseType = Literal["ACTIVITY_ID_UNKNOWN", "OPERATION_NOT_PERMITTED"] +RequestCancelExternalWorkflowExecutionFailedCauseType = Literal["OPERATION_NOT_PERMITTED", + "REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_RATE_EXCEEDED", + "UNKNOWN_EXTERNAL_WORKFLOW_EXECUTION",] +ScheduleActivityTaskFailedCauseType = Literal["ACTIVITY_CREATION_RATE_EXCEEDED", + "ACTIVITY_ID_ALREADY_IN_USE", + "ACTIVITY_TYPE_DEPRECATED", + "ACTIVITY_TYPE_DOES_NOT_EXIST", + "DEFAULT_HEARTBEAT_TIMEOUT_UNDEFINED", + "DEFAULT_SCHEDULE_TO_CLOSE_TIMEOUT_UNDEFINED", + "DEFAULT_SCHEDULE_TO_START_TIMEOUT_UNDEFINED", + "DEFAULT_START_TO_CLOSE_TIMEOUT_UNDEFINED", + "DEFAULT_TASK_LIST_UNDEFINED", + "OPEN_ACTIVITIES_LIMIT_EXCEEDED", + "OPERATION_NOT_PERMITTED",] +ScheduleLambdaFunctionFailedCauseType = Literal["ID_ALREADY_IN_USE", + "LAMBDA_FUNCTION_CREATION_RATE_EXCEEDED", + "LAMBDA_SERVICE_NOT_AVAILABLE_IN_REGION", + "OPEN_LAMBDA_FUNCTIONS_LIMIT_EXCEEDED",] +SignalExternalWorkflowExecutionFailedCauseType = Literal["OPERATION_NOT_PERMITTED", + "SIGNAL_EXTERNAL_WORKFLOW_EXECUTION_RATE_EXCEEDED", + "UNKNOWN_EXTERNAL_WORKFLOW_EXECUTION",] +StartChildWorkflowExecutionFailedCauseType = Literal["CHILD_CREATION_RATE_EXCEEDED", + "DEFAULT_CHILD_POLICY_UNDEFINED", + "DEFAULT_EXECUTION_START_TO_CLOSE_TIMEOUT_UNDEFINED", + "DEFAULT_TASK_LIST_UNDEFINED", + "DEFAULT_TASK_START_TO_CLOSE_TIMEOUT_UNDEFINED", + "OPEN_CHILDREN_LIMIT_EXCEEDED", + "OPEN_WORKFLOWS_LIMIT_EXCEEDED", + "OPERATION_NOT_PERMITTED", + "WORKFLOW_ALREADY_RUNNING", + "WORKFLOW_TYPE_DEPRECATED", + "WORKFLOW_TYPE_DOES_NOT_EXIST",] +StartLambdaFunctionFailedCauseType = Literal["ASSUME_ROLE_FAILED"] +StartTimerFailedCauseType = Literal["OPEN_TIMERS_LIMIT_EXCEEDED", + "OPERATION_NOT_PERMITTED", + "TIMER_CREATION_RATE_EXCEEDED", + "TIMER_ID_ALREADY_IN_USE",] +WorkflowExecutionCancelRequestedCauseType = Literal["CHILD_POLICY_APPLIED"] +WorkflowExecutionTerminatedCauseType = Literal["CHILD_POLICY_APPLIED", "EVENT_LIMIT_EXCEEDED", "OPERATOR_INITIATED"] +WorkflowExecutionTimeoutTypeType = Literal["START_TO_CLOSE"] +SWFServiceName = Literal["swf"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_workflow_execution_history", + "list_activity_types", + "list_closed_workflow_executions", + "list_domains", + "list_open_workflow_executions", + "list_workflow_types", + "poll_for_decision_task",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/synthetics_classes.py b/aws_resource_validator/pydantic_models/synthetics_classes.py new file mode 100644 index 00000000..81a5dbdb --- /dev/null +++ b/aws_resource_validator/pydantic_models/synthetics_classes.py @@ -0,0 +1,308 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.synthetics_constants import * + +class S3EncryptionConfigTypeDef(BaseModel): + EncryptionMode: Optional[EncryptionModeType] = None + KmsKeyArn: Optional[str] = None + +class AssociateResourceRequestRequestTypeDef(BaseModel): + GroupIdentifier: str + ResourceArn: str + +class BaseScreenshotTypeDef(BaseModel): + ScreenshotName: str + IgnoreCoordinates: Optional[List[str]] = None + +class CanaryCodeOutputTypeDef(BaseModel): + SourceLocationArn: Optional[str] = None + Handler: Optional[str] = None + +class CanaryRunConfigInputTypeDef(BaseModel): + TimeoutInSeconds: Optional[int] = None + MemoryInMB: Optional[int] = None + ActiveTracing: Optional[bool] = None + EnvironmentVariables: Optional[Mapping[str, str]] = None + +class CanaryRunConfigOutputTypeDef(BaseModel): + TimeoutInSeconds: Optional[int] = None + MemoryInMB: Optional[int] = None + ActiveTracing: Optional[bool] = None + +class CanaryRunStatusTypeDef(BaseModel): + State: Optional[CanaryRunStateType] = None + StateReason: Optional[str] = None + StateReasonCode: Optional[CanaryRunStateReasonCodeType] = None + +class CanaryRunTimelineTypeDef(BaseModel): + Started: Optional[datetime] = None + Completed: Optional[datetime] = None + +class CanaryScheduleInputTypeDef(BaseModel): + Expression: str + DurationInSeconds: Optional[int] = None + +class CanaryScheduleOutputTypeDef(BaseModel): + Expression: Optional[str] = None + DurationInSeconds: Optional[int] = None + +class CanaryStatusTypeDef(BaseModel): + State: Optional[CanaryStateType] = None + StateReason: Optional[str] = None + StateReasonCode: Optional[CanaryStateReasonCodeType] = None + +class CanaryTimelineTypeDef(BaseModel): + Created: Optional[datetime] = None + LastModified: Optional[datetime] = None + LastStarted: Optional[datetime] = None + LastStopped: Optional[datetime] = None + +class VpcConfigOutputTypeDef(BaseModel): + VpcId: Optional[str] = None + SubnetIds: Optional[List[str]] = None + SecurityGroupIds: Optional[List[str]] = None + +class VpcConfigInputTypeDef(BaseModel): + SubnetIds: Optional[Sequence[str]] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateGroupRequestRequestTypeDef(BaseModel): + Name: str + Tags: Optional[Mapping[str, str]] = None + +class GroupTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + CreatedTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + +class DeleteCanaryRequestRequestTypeDef(BaseModel): + Name: str + DeleteLambda: Optional[bool] = None + +class DeleteGroupRequestRequestTypeDef(BaseModel): + GroupIdentifier: str + +class DescribeCanariesLastRunRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Names: Optional[Sequence[str]] = None + +class DescribeCanariesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Names: Optional[Sequence[str]] = None + +class DescribeRuntimeVersionsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class RuntimeVersionTypeDef(BaseModel): + VersionName: Optional[str] = None + Description: Optional[str] = None + ReleaseDate: Optional[datetime] = None + DeprecationDate: Optional[datetime] = None + +class DisassociateResourceRequestRequestTypeDef(BaseModel): + GroupIdentifier: str + ResourceArn: str + +class GetCanaryRequestRequestTypeDef(BaseModel): + Name: str + +class GetCanaryRunsRequestRequestTypeDef(BaseModel): + Name: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetGroupRequestRequestTypeDef(BaseModel): + GroupIdentifier: str + +class GroupSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Arn: Optional[str] = None + +class ListAssociatedGroupsRequestRequestTypeDef(BaseModel): + ResourceArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListGroupResourcesRequestRequestTypeDef(BaseModel): + GroupIdentifier: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class StartCanaryRequestRequestTypeDef(BaseModel): + Name: str + +class StopCanaryRequestRequestTypeDef(BaseModel): + Name: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class ArtifactConfigInputTypeDef(BaseModel): + S3Encryption: Optional[S3EncryptionConfigTypeDef] = None + +class ArtifactConfigOutputTypeDef(BaseModel): + S3Encryption: Optional[S3EncryptionConfigTypeDef] = None + +class VisualReferenceInputTypeDef(BaseModel): + BaseCanaryRunId: str + BaseScreenshots: Optional[Sequence[BaseScreenshotTypeDef]] = None + +class VisualReferenceOutputTypeDef(BaseModel): + BaseScreenshots: Optional[List[BaseScreenshotTypeDef]] = None + BaseCanaryRunId: Optional[str] = None + +class CanaryCodeInputTypeDef(BaseModel): + Handler: str + S3Bucket: Optional[str] = None + S3Key: Optional[str] = None + S3Version: Optional[str] = None + ZipFile: Optional[BlobTypeDef] = None + +class CanaryRunTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Status: Optional[CanaryRunStatusTypeDef] = None + Timeline: Optional[CanaryRunTimelineTypeDef] = None + ArtifactS3Location: Optional[str] = None + +class ListGroupResourcesResponseTypeDef(BaseModel): + Resources: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupResponseTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRuntimeVersionsResponseTypeDef(BaseModel): + RuntimeVersions: List[RuntimeVersionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssociatedGroupsResponseTypeDef(BaseModel): + Groups: List[GroupSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsResponseTypeDef(BaseModel): + Groups: List[GroupSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CanaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Code: Optional[CanaryCodeOutputTypeDef] = None + ExecutionRoleArn: Optional[str] = None + Schedule: Optional[CanaryScheduleOutputTypeDef] = None + RunConfig: Optional[CanaryRunConfigOutputTypeDef] = None + SuccessRetentionPeriodInDays: Optional[int] = None + FailureRetentionPeriodInDays: Optional[int] = None + Status: Optional[CanaryStatusTypeDef] = None + Timeline: Optional[CanaryTimelineTypeDef] = None + ArtifactS3Location: Optional[str] = None + EngineArn: Optional[str] = None + RuntimeVersion: Optional[str] = None + VpcConfig: Optional[VpcConfigOutputTypeDef] = None + VisualReference: Optional[VisualReferenceOutputTypeDef] = None + Tags: Optional[Dict[str, str]] = None + ArtifactConfig: Optional[ArtifactConfigOutputTypeDef] = None + +class CreateCanaryRequestRequestTypeDef(BaseModel): + Name: str + Code: CanaryCodeInputTypeDef + ArtifactS3Location: str + ExecutionRoleArn: str + Schedule: CanaryScheduleInputTypeDef + RuntimeVersion: str + RunConfig: Optional[CanaryRunConfigInputTypeDef] = None + SuccessRetentionPeriodInDays: Optional[int] = None + FailureRetentionPeriodInDays: Optional[int] = None + VpcConfig: Optional[VpcConfigInputTypeDef] = None + Tags: Optional[Mapping[str, str]] = None + ArtifactConfig: Optional[ArtifactConfigInputTypeDef] = None + +class UpdateCanaryRequestRequestTypeDef(BaseModel): + Name: str + Code: Optional[CanaryCodeInputTypeDef] = None + ExecutionRoleArn: Optional[str] = None + RuntimeVersion: Optional[str] = None + Schedule: Optional[CanaryScheduleInputTypeDef] = None + RunConfig: Optional[CanaryRunConfigInputTypeDef] = None + SuccessRetentionPeriodInDays: Optional[int] = None + FailureRetentionPeriodInDays: Optional[int] = None + VpcConfig: Optional[VpcConfigInputTypeDef] = None + VisualReference: Optional[VisualReferenceInputTypeDef] = None + ArtifactS3Location: Optional[str] = None + ArtifactConfig: Optional[ArtifactConfigInputTypeDef] = None + +class CanaryLastRunTypeDef(BaseModel): + CanaryName: Optional[str] = None + LastRun: Optional[CanaryRunTypeDef] = None + +class GetCanaryRunsResponseTypeDef(BaseModel): + CanaryRuns: List[CanaryRunTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCanaryResponseTypeDef(BaseModel): + Canary: CanaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCanariesResponseTypeDef(BaseModel): + Canaries: List[CanaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCanaryResponseTypeDef(BaseModel): + Canary: CanaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCanariesLastRunResponseTypeDef(BaseModel): + CanariesLastRun: List[CanaryLastRunTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/synthetics_constants.py b/aws_resource_validator/pydantic_models/synthetics_constants.py new file mode 100644 index 00000000..a6899695 --- /dev/null +++ b/aws_resource_validator/pydantic_models/synthetics_constants.py @@ -0,0 +1,441 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +CanaryRunStateReasonCodeType = Literal["CANARY_FAILURE", "EXECUTION_FAILURE"] +CanaryRunStateType = Literal["FAILED", "PASSED", "RUNNING"] +CanaryStateReasonCodeType = Literal["CREATE_FAILED", + "CREATE_IN_PROGRESS", + "CREATE_PENDING", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "INVALID_PERMISSIONS", + "ROLLBACK_COMPLETE", + "ROLLBACK_FAILED", + "SYNC_DELETE_IN_PROGRESS", + "UPDATE_COMPLETE", + "UPDATE_IN_PROGRESS", + "UPDATE_PENDING",] +CanaryStateType = Literal["CREATING", + "DELETING", + "ERROR", + "READY", + "RUNNING", + "STARTING", + "STOPPED", + "STOPPING", + "UPDATING",] +EncryptionModeType = Literal["SSE_KMS", "SSE_S3"] +SyntheticsServiceName = Literal["synthetics"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/taxsettings_classes.py b/aws_resource_validator/pydantic_models/taxsettings_classes.py new file mode 100644 index 00000000..d4e6800e --- /dev/null +++ b/aws_resource_validator/pydantic_models/taxsettings_classes.py @@ -0,0 +1,270 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.taxsettings_constants import * + +class TaxInheritanceDetailsTypeDef(BaseModel): + inheritanceObtainedReason: Optional[str] = None + parentEntityId: Optional[str] = None + +class AddressTypeDef(BaseModel): + addressLine1: str + city: str + countryCode: str + postalCode: str + addressLine2: Optional[str] = None + addressLine3: Optional[str] = None + districtOrCounty: Optional[str] = None + stateOrRegion: Optional[str] = None + +class JurisdictionTypeDef(BaseModel): + countryCode: str + stateOrRegion: Optional[str] = None + +class CanadaAdditionalInfoTypeDef(BaseModel): + canadaQuebecSalesTaxNumber: Optional[str] = None + canadaRetailSalesTaxNumber: Optional[str] = None + isResellerAccount: Optional[bool] = None + provincialSalesTaxId: Optional[str] = None + +class EstoniaAdditionalInfoTypeDef(BaseModel): + registryCommercialCode: str + +class GeorgiaAdditionalInfoTypeDef(BaseModel): + personType: PersonTypeType + +class IsraelAdditionalInfoTypeDef(BaseModel): + customerType: IsraelCustomerTypeType + dealerType: IsraelDealerTypeType + +class ItalyAdditionalInfoTypeDef(BaseModel): + cigNumber: Optional[str] = None + cupNumber: Optional[str] = None + sdiAccountId: Optional[str] = None + taxCode: Optional[str] = None + +class KenyaAdditionalInfoTypeDef(BaseModel): + personType: PersonTypeType + +class MalaysiaAdditionalInfoTypeDef(BaseModel): + serviceTaxCodes: Sequence[MalaysiaServiceTaxCodeType] + +class PolandAdditionalInfoTypeDef(BaseModel): + individualRegistrationNumber: Optional[str] = None + isGroupVatEnabled: Optional[bool] = None + +class RomaniaAdditionalInfoTypeDef(BaseModel): + taxRegistrationNumberType: TaxRegistrationNumberTypeType + +class SaudiArabiaAdditionalInfoTypeDef(BaseModel): + taxRegistrationNumberType: Optional[SaudiArabiaTaxRegistrationNumberTypeType] = None + +class SouthKoreaAdditionalInfoTypeDef(BaseModel): + businessRepresentativeName: str + itemOfBusiness: str + lineOfBusiness: str + +class SpainAdditionalInfoTypeDef(BaseModel): + registrationType: RegistrationTypeType + +class TurkeyAdditionalInfoTypeDef(BaseModel): + industries: Optional[IndustriesType] = None + kepEmailId: Optional[str] = None + secondaryTaxId: Optional[str] = None + taxOffice: Optional[str] = None + +class UkraineAdditionalInfoTypeDef(BaseModel): + ukraineTrnType: UkraineTrnTypeType + +class BrazilAdditionalInfoTypeDef(BaseModel): + ccmCode: Optional[str] = None + legalNatureCode: Optional[str] = None + +class IndiaAdditionalInfoTypeDef(BaseModel): + pan: Optional[str] = None + +class MalaysiaAdditionalInfoOutputTypeDef(BaseModel): + serviceTaxCodes: List[MalaysiaServiceTaxCodeType] + +class BatchDeleteTaxRegistrationErrorTypeDef(BaseModel): + accountId: str + message: str + code: Optional[str] = None + +class BatchDeleteTaxRegistrationRequestRequestTypeDef(BaseModel): + accountIds: Sequence[str] + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class BatchPutTaxRegistrationErrorTypeDef(BaseModel): + accountId: str + message: str + code: Optional[str] = None + +class DeleteTaxRegistrationRequestRequestTypeDef(BaseModel): + accountId: Optional[str] = None + +class DestinationS3LocationTypeDef(BaseModel): + bucket: str + prefix: Optional[str] = None + +class TaxDocumentMetadataTypeDef(BaseModel): + taxDocumentAccessToken: str + taxDocumentName: str + +class GetTaxRegistrationRequestRequestTypeDef(BaseModel): + accountId: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTaxRegistrationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SourceS3LocationTypeDef(BaseModel): + bucket: str + key: str + +class AccountMetaDataTypeDef(BaseModel): + accountName: Optional[str] = None + address: Optional[AddressTypeDef] = None + addressRoleMap: Optional[Dict[AddressRoleTypeType, JurisdictionTypeDef]] = None + addressType: Optional[AddressRoleTypeType] = None + seller: Optional[str] = None + +class AdditionalInfoRequestTypeDef(BaseModel): + canadaAdditionalInfo: Optional[CanadaAdditionalInfoTypeDef] = None + estoniaAdditionalInfo: Optional[EstoniaAdditionalInfoTypeDef] = None + georgiaAdditionalInfo: Optional[GeorgiaAdditionalInfoTypeDef] = None + israelAdditionalInfo: Optional[IsraelAdditionalInfoTypeDef] = None + italyAdditionalInfo: Optional[ItalyAdditionalInfoTypeDef] = None + kenyaAdditionalInfo: Optional[KenyaAdditionalInfoTypeDef] = None + malaysiaAdditionalInfo: Optional[MalaysiaAdditionalInfoTypeDef] = None + polandAdditionalInfo: Optional[PolandAdditionalInfoTypeDef] = None + romaniaAdditionalInfo: Optional[RomaniaAdditionalInfoTypeDef] = None + saudiArabiaAdditionalInfo: Optional[SaudiArabiaAdditionalInfoTypeDef] = None + southKoreaAdditionalInfo: Optional[SouthKoreaAdditionalInfoTypeDef] = None + spainAdditionalInfo: Optional[SpainAdditionalInfoTypeDef] = None + turkeyAdditionalInfo: Optional[TurkeyAdditionalInfoTypeDef] = None + ukraineAdditionalInfo: Optional[UkraineAdditionalInfoTypeDef] = None + +class AdditionalInfoResponseTypeDef(BaseModel): + brazilAdditionalInfo: Optional[BrazilAdditionalInfoTypeDef] = None + canadaAdditionalInfo: Optional[CanadaAdditionalInfoTypeDef] = None + estoniaAdditionalInfo: Optional[EstoniaAdditionalInfoTypeDef] = None + georgiaAdditionalInfo: Optional[GeorgiaAdditionalInfoTypeDef] = None + indiaAdditionalInfo: Optional[IndiaAdditionalInfoTypeDef] = None + israelAdditionalInfo: Optional[IsraelAdditionalInfoTypeDef] = None + italyAdditionalInfo: Optional[ItalyAdditionalInfoTypeDef] = None + kenyaAdditionalInfo: Optional[KenyaAdditionalInfoTypeDef] = None + malaysiaAdditionalInfo: Optional[MalaysiaAdditionalInfoOutputTypeDef] = None + polandAdditionalInfo: Optional[PolandAdditionalInfoTypeDef] = None + romaniaAdditionalInfo: Optional[RomaniaAdditionalInfoTypeDef] = None + saudiArabiaAdditionalInfo: Optional[SaudiArabiaAdditionalInfoTypeDef] = None + southKoreaAdditionalInfo: Optional[SouthKoreaAdditionalInfoTypeDef] = None + spainAdditionalInfo: Optional[SpainAdditionalInfoTypeDef] = None + turkeyAdditionalInfo: Optional[TurkeyAdditionalInfoTypeDef] = None + ukraineAdditionalInfo: Optional[UkraineAdditionalInfoTypeDef] = None + +class BatchDeleteTaxRegistrationResponseTypeDef(BaseModel): + errors: List[BatchDeleteTaxRegistrationErrorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTaxRegistrationDocumentResponseTypeDef(BaseModel): + destinationFilePath: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutTaxRegistrationResponseTypeDef(BaseModel): + status: TaxRegistrationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutTaxRegistrationResponseTypeDef(BaseModel): + errors: List[BatchPutTaxRegistrationErrorTypeDef] + status: TaxRegistrationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetTaxRegistrationDocumentRequestRequestTypeDef(BaseModel): + destinationS3Location: DestinationS3LocationTypeDef + taxDocumentMetadata: TaxDocumentMetadataTypeDef + +class ListTaxRegistrationsRequestListTaxRegistrationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class TaxRegistrationDocumentTypeDef(BaseModel): + s3Location: SourceS3LocationTypeDef + +class TaxRegistrationTypeDef(BaseModel): + legalAddress: AddressTypeDef + legalName: str + registrationId: str + registrationType: TaxRegistrationTypeType + status: TaxRegistrationStatusType + additionalTaxInformation: Optional[AdditionalInfoResponseTypeDef] = None + certifiedEmailId: Optional[str] = None + sector: Optional[SectorType] = None + taxDocumentMetadatas: Optional[List[TaxDocumentMetadataTypeDef]] = None + +class TaxRegistrationWithJurisdictionTypeDef(BaseModel): + jurisdiction: JurisdictionTypeDef + legalName: str + registrationId: str + registrationType: TaxRegistrationTypeType + status: TaxRegistrationStatusType + additionalTaxInformation: Optional[AdditionalInfoResponseTypeDef] = None + certifiedEmailId: Optional[str] = None + sector: Optional[SectorType] = None + taxDocumentMetadatas: Optional[List[TaxDocumentMetadataTypeDef]] = None + +class VerificationDetailsTypeDef(BaseModel): + dateOfBirth: Optional[str] = None + taxRegistrationDocuments: Optional[Sequence[TaxRegistrationDocumentTypeDef]] = None + +class GetTaxRegistrationResponseTypeDef(BaseModel): + taxRegistration: TaxRegistrationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AccountDetailsTypeDef(BaseModel): + accountId: Optional[str] = None + accountMetaData: Optional[AccountMetaDataTypeDef] = None + taxInheritanceDetails: Optional[TaxInheritanceDetailsTypeDef] = None + taxRegistration: Optional[TaxRegistrationWithJurisdictionTypeDef] = None + +class TaxRegistrationEntryTypeDef(BaseModel): + registrationId: str + registrationType: TaxRegistrationTypeType + additionalTaxInformation: Optional[AdditionalInfoRequestTypeDef] = None + certifiedEmailId: Optional[str] = None + legalAddress: Optional[AddressTypeDef] = None + legalName: Optional[str] = None + sector: Optional[SectorType] = None + verificationDetails: Optional[VerificationDetailsTypeDef] = None + +class ListTaxRegistrationsResponseTypeDef(BaseModel): + accountDetails: List[AccountDetailsTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchPutTaxRegistrationRequestRequestTypeDef(BaseModel): + accountIds: Sequence[str] + taxRegistrationEntry: TaxRegistrationEntryTypeDef + +class PutTaxRegistrationRequestRequestTypeDef(BaseModel): + taxRegistrationEntry: TaxRegistrationEntryTypeDef + accountId: Optional[str] = None + diff --git a/aws_resource_validator/pydantic_models/taxsettings_constants.py b/aws_resource_validator/pydantic_models/taxsettings_constants.py new file mode 100644 index 00000000..0760acef --- /dev/null +++ b/aws_resource_validator/pydantic_models/taxsettings_constants.py @@ -0,0 +1,419 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AddressRoleTypeType = Literal["BillingAddress", "ContactAddress", "TaxAddress"] +IndustriesType = Literal["Banks", + "CirculatingOrg", + "DevelopmentAgencies", + "Insurance", + "PensionAndBenefitFunds", + "ProfessionalOrg",] +IsraelCustomerTypeType = Literal["Business", "Individual"] +IsraelDealerTypeType = Literal["Authorized", "Non-authorized"] +ListTaxRegistrationsPaginatorName = Literal["list_tax_registrations"] +MalaysiaServiceTaxCodeType = Literal["Consultancy", "Digital Service And Electronic Medium", "IT Services", "Training Or Coaching"] +PersonTypeType = Literal["Business", "Legal Person", "Physical Person"] +RegistrationTypeType = Literal["Intra-EU", "Local"] +SaudiArabiaTaxRegistrationNumberTypeType = Literal["CommercialRegistrationNumber", "TaxIdentificationNumber", "TaxRegistrationNumber"] +SectorType = Literal["Business", "Government", "Individual"] +TaxRegistrationNumberTypeType = Literal["LocalRegistrationNumber", "TaxRegistrationNumber"] +TaxRegistrationStatusType = Literal["Deleted", "Pending", "Rejected", "Verified"] +TaxRegistrationTypeType = Literal["CNPJ", "CPF", "GST", "SST", "VAT"] +UkraineTrnTypeType = Literal["Business", "Individual"] +TaxSettingsServiceName = Literal["taxsettings"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_tax_registrations"] diff --git a/aws_resource_validator/pydantic_models/textract_classes.py b/aws_resource_validator/pydantic_models/textract_classes.py new file mode 100644 index 00000000..304d15c0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/textract_classes.py @@ -0,0 +1,546 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.textract_constants import * + +class AdapterOverviewTypeDef(BaseModel): + AdapterId: Optional[str] = None + AdapterName: Optional[str] = None + CreationTime: Optional[datetime] = None + FeatureTypes: Optional[List[FeatureTypeType]] = None + +class AdapterTypeDef(BaseModel): + AdapterId: str + Version: str + Pages: Optional[Sequence[str]] = None + +class S3ObjectTypeDef(BaseModel): + Bucket: Optional[str] = None + Name: Optional[str] = None + Version: Optional[str] = None + +class EvaluationMetricTypeDef(BaseModel): + F1Score: Optional[float] = None + Precision: Optional[float] = None + Recall: Optional[float] = None + +class AdapterVersionOverviewTypeDef(BaseModel): + AdapterId: Optional[str] = None + AdapterVersion: Optional[str] = None + CreationTime: Optional[datetime] = None + FeatureTypes: Optional[List[FeatureTypeType]] = None + Status: Optional[AdapterVersionStatusType] = None + StatusMessage: Optional[str] = None + +class DocumentMetadataTypeDef(BaseModel): + Pages: Optional[int] = None + +class HumanLoopActivationOutputTypeDef(BaseModel): + HumanLoopArn: Optional[str] = None + HumanLoopActivationReasons: Optional[List[str]] = None + HumanLoopActivationConditionsEvaluationResults: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class NormalizedValueTypeDef(BaseModel): + Value: Optional[str] = None + ValueType: Optional[Literal["DATE"]] = None + +class QueryTypeDef(BaseModel): + Text: str + Alias: Optional[str] = None + Pages: Optional[Sequence[str]] = None + +class RelationshipTypeDef(BaseModel): + Type: Optional[RelationshipTypeType] = None + Ids: Optional[List[str]] = None + +class BoundingBoxTypeDef(BaseModel): + Width: Optional[float] = None + Height: Optional[float] = None + Left: Optional[float] = None + Top: Optional[float] = None + +class CreateAdapterRequestRequestTypeDef(BaseModel): + AdapterName: str + FeatureTypes: Sequence[FeatureTypeType] + ClientRequestToken: Optional[str] = None + Description: Optional[str] = None + AutoUpdate: Optional[AutoUpdateType] = None + Tags: Optional[Mapping[str, str]] = None + +class OutputConfigTypeDef(BaseModel): + S3Bucket: str + S3Prefix: Optional[str] = None + +class DeleteAdapterRequestRequestTypeDef(BaseModel): + AdapterId: str + +class DeleteAdapterVersionRequestRequestTypeDef(BaseModel): + AdapterId: str + AdapterVersion: str + +class DetectedSignatureTypeDef(BaseModel): + Page: Optional[int] = None + +class SplitDocumentTypeDef(BaseModel): + Index: Optional[int] = None + Pages: Optional[List[int]] = None + +class UndetectedSignatureTypeDef(BaseModel): + Page: Optional[int] = None + +class ExpenseCurrencyTypeDef(BaseModel): + Code: Optional[str] = None + Confidence: Optional[float] = None + +class ExpenseGroupPropertyTypeDef(BaseModel): + Types: Optional[List[str]] = None + Id: Optional[str] = None + +class ExpenseTypeTypeDef(BaseModel): + Text: Optional[str] = None + Confidence: Optional[float] = None + +class PointTypeDef(BaseModel): + X: Optional[float] = None + Y: Optional[float] = None + +class GetAdapterRequestRequestTypeDef(BaseModel): + AdapterId: str + +class GetAdapterVersionRequestRequestTypeDef(BaseModel): + AdapterId: str + AdapterVersion: str + +class GetDocumentAnalysisRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class WarningTypeDef(BaseModel): + ErrorCode: Optional[str] = None + Pages: Optional[List[int]] = None + +class GetDocumentTextDetectionRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetExpenseAnalysisRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetLendingAnalysisRequestRequestTypeDef(BaseModel): + JobId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetLendingAnalysisSummaryRequestRequestTypeDef(BaseModel): + JobId: str + +class HumanLoopDataAttributesTypeDef(BaseModel): + ContentClassifiers: Optional[Sequence[ContentClassifierType]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class NotificationChannelTypeDef(BaseModel): + SNSTopicArn: str + RoleArn: str + +class PredictionTypeDef(BaseModel): + Value: Optional[str] = None + Confidence: Optional[float] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateAdapterRequestRequestTypeDef(BaseModel): + AdapterId: str + Description: Optional[str] = None + AdapterName: Optional[str] = None + AutoUpdate: Optional[AutoUpdateType] = None + +class AdaptersConfigTypeDef(BaseModel): + Adapters: Sequence[AdapterTypeDef] + +class AdapterVersionDatasetConfigTypeDef(BaseModel): + ManifestS3Object: Optional[S3ObjectTypeDef] = None + +class DocumentLocationTypeDef(BaseModel): + S3Object: Optional[S3ObjectTypeDef] = None + +class AdapterVersionEvaluationMetricTypeDef(BaseModel): + Baseline: Optional[EvaluationMetricTypeDef] = None + AdapterVersion: Optional[EvaluationMetricTypeDef] = None + FeatureType: Optional[FeatureTypeType] = None + +class CreateAdapterResponseTypeDef(BaseModel): + AdapterId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAdapterVersionResponseTypeDef(BaseModel): + AdapterId: str + AdapterVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAdapterResponseTypeDef(BaseModel): + AdapterId: str + AdapterName: str + CreationTime: datetime + Description: str + FeatureTypes: List[FeatureTypeType] + AutoUpdate: AutoUpdateType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAdapterVersionsResponseTypeDef(BaseModel): + AdapterVersions: List[AdapterVersionOverviewTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAdaptersResponseTypeDef(BaseModel): + Adapters: List[AdapterOverviewTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class StartDocumentAnalysisResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartDocumentTextDetectionResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartExpenseAnalysisResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartLendingAnalysisResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAdapterResponseTypeDef(BaseModel): + AdapterId: str + AdapterName: str + CreationTime: datetime + Description: str + FeatureTypes: List[FeatureTypeType] + AutoUpdate: AutoUpdateType + ResponseMetadata: ResponseMetadataTypeDef + +class AnalyzeIDDetectionsTypeDef(BaseModel): + Text: str + NormalizedValue: Optional[NormalizedValueTypeDef] = None + Confidence: Optional[float] = None + +class DocumentTypeDef(BaseModel): + Bytes: Optional[BlobTypeDef] = None + S3Object: Optional[S3ObjectTypeDef] = None + +class QueriesConfigTypeDef(BaseModel): + Queries: Sequence[QueryTypeDef] + +class DocumentGroupTypeDef(BaseModel): + Type: Optional[str] = None + SplitDocuments: Optional[List[SplitDocumentTypeDef]] = None + DetectedSignatures: Optional[List[DetectedSignatureTypeDef]] = None + UndetectedSignatures: Optional[List[UndetectedSignatureTypeDef]] = None + +class GeometryTypeDef(BaseModel): + BoundingBox: Optional[BoundingBoxTypeDef] = None + Polygon: Optional[List[PointTypeDef]] = None + +class HumanLoopConfigTypeDef(BaseModel): + HumanLoopName: str + FlowDefinitionArn: str + DataAttributes: Optional[HumanLoopDataAttributesTypeDef] = None + +class ListAdapterVersionsRequestListAdapterVersionsPaginateTypeDef(BaseModel): + AdapterId: Optional[str] = None + AfterCreationTime: Optional[TimestampTypeDef] = None + BeforeCreationTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAdapterVersionsRequestRequestTypeDef(BaseModel): + AdapterId: Optional[str] = None + AfterCreationTime: Optional[TimestampTypeDef] = None + BeforeCreationTime: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListAdaptersRequestListAdaptersPaginateTypeDef(BaseModel): + AfterCreationTime: Optional[TimestampTypeDef] = None + BeforeCreationTime: Optional[TimestampTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAdaptersRequestRequestTypeDef(BaseModel): + AfterCreationTime: Optional[TimestampTypeDef] = None + BeforeCreationTime: Optional[TimestampTypeDef] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class PageClassificationTypeDef(BaseModel): + PageType: List[PredictionTypeDef] + PageNumber: List[PredictionTypeDef] + +class CreateAdapterVersionRequestRequestTypeDef(BaseModel): + AdapterId: str + DatasetConfig: AdapterVersionDatasetConfigTypeDef + OutputConfig: OutputConfigTypeDef + ClientRequestToken: Optional[str] = None + KMSKeyId: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class StartDocumentTextDetectionRequestRequestTypeDef(BaseModel): + DocumentLocation: DocumentLocationTypeDef + ClientRequestToken: Optional[str] = None + JobTag: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + OutputConfig: Optional[OutputConfigTypeDef] = None + KMSKeyId: Optional[str] = None + +class StartExpenseAnalysisRequestRequestTypeDef(BaseModel): + DocumentLocation: DocumentLocationTypeDef + ClientRequestToken: Optional[str] = None + JobTag: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + OutputConfig: Optional[OutputConfigTypeDef] = None + KMSKeyId: Optional[str] = None + +class StartLendingAnalysisRequestRequestTypeDef(BaseModel): + DocumentLocation: DocumentLocationTypeDef + ClientRequestToken: Optional[str] = None + JobTag: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + OutputConfig: Optional[OutputConfigTypeDef] = None + KMSKeyId: Optional[str] = None + +class GetAdapterVersionResponseTypeDef(BaseModel): + AdapterId: str + AdapterVersion: str + CreationTime: datetime + FeatureTypes: List[FeatureTypeType] + Status: AdapterVersionStatusType + StatusMessage: str + DatasetConfig: AdapterVersionDatasetConfigTypeDef + KMSKeyId: str + OutputConfig: OutputConfigTypeDef + EvaluationMetrics: List[AdapterVersionEvaluationMetricTypeDef] + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class IdentityDocumentFieldTypeDef(BaseModel): + Type: Optional[AnalyzeIDDetectionsTypeDef] = None + ValueDetection: Optional[AnalyzeIDDetectionsTypeDef] = None + +class AnalyzeExpenseRequestRequestTypeDef(BaseModel): + Document: DocumentTypeDef + +class AnalyzeIDRequestRequestTypeDef(BaseModel): + DocumentPages: Sequence[DocumentTypeDef] + +class DetectDocumentTextRequestRequestTypeDef(BaseModel): + Document: DocumentTypeDef + +class StartDocumentAnalysisRequestRequestTypeDef(BaseModel): + DocumentLocation: DocumentLocationTypeDef + FeatureTypes: Sequence[FeatureTypeType] + ClientRequestToken: Optional[str] = None + JobTag: Optional[str] = None + NotificationChannel: Optional[NotificationChannelTypeDef] = None + OutputConfig: Optional[OutputConfigTypeDef] = None + KMSKeyId: Optional[str] = None + QueriesConfig: Optional[QueriesConfigTypeDef] = None + AdaptersConfig: Optional[AdaptersConfigTypeDef] = None + +class LendingSummaryTypeDef(BaseModel): + DocumentGroups: Optional[List[DocumentGroupTypeDef]] = None + UndetectedDocumentTypes: Optional[List[str]] = None + +class BlockTypeDef(BaseModel): + BlockType: Optional[BlockTypeType] = None + Confidence: Optional[float] = None + Text: Optional[str] = None + TextType: Optional[TextTypeType] = None + RowIndex: Optional[int] = None + ColumnIndex: Optional[int] = None + RowSpan: Optional[int] = None + ColumnSpan: Optional[int] = None + Geometry: Optional[GeometryTypeDef] = None + Id: Optional[str] = None + Relationships: Optional[List[RelationshipTypeDef]] = None + EntityTypes: Optional[List[EntityTypeType]] = None + SelectionStatus: Optional[SelectionStatusType] = None + Page: Optional[int] = None + Query: Optional[QueryTypeDef] = None + +class ExpenseDetectionTypeDef(BaseModel): + Text: Optional[str] = None + Geometry: Optional[GeometryTypeDef] = None + Confidence: Optional[float] = None + +class LendingDetectionTypeDef(BaseModel): + Text: Optional[str] = None + SelectionStatus: Optional[SelectionStatusType] = None + Geometry: Optional[GeometryTypeDef] = None + Confidence: Optional[float] = None + +class SignatureDetectionTypeDef(BaseModel): + Confidence: Optional[float] = None + Geometry: Optional[GeometryTypeDef] = None + +class AnalyzeDocumentRequestRequestTypeDef(BaseModel): + Document: DocumentTypeDef + FeatureTypes: Sequence[FeatureTypeType] + HumanLoopConfig: Optional[HumanLoopConfigTypeDef] = None + QueriesConfig: Optional[QueriesConfigTypeDef] = None + AdaptersConfig: Optional[AdaptersConfigTypeDef] = None + +class GetLendingAnalysisSummaryResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + JobStatus: JobStatusType + Summary: LendingSummaryTypeDef + Warnings: List[WarningTypeDef] + StatusMessage: str + AnalyzeLendingModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class AnalyzeDocumentResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + Blocks: List[BlockTypeDef] + HumanLoopActivationOutput: HumanLoopActivationOutputTypeDef + AnalyzeDocumentModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class DetectDocumentTextResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + Blocks: List[BlockTypeDef] + DetectDocumentTextModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDocumentAnalysisResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + JobStatus: JobStatusType + NextToken: str + Blocks: List[BlockTypeDef] + Warnings: List[WarningTypeDef] + StatusMessage: str + AnalyzeDocumentModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDocumentTextDetectionResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + JobStatus: JobStatusType + NextToken: str + Blocks: List[BlockTypeDef] + Warnings: List[WarningTypeDef] + StatusMessage: str + DetectDocumentTextModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class IdentityDocumentTypeDef(BaseModel): + DocumentIndex: Optional[int] = None + IdentityDocumentFields: Optional[List[IdentityDocumentFieldTypeDef]] = None + Blocks: Optional[List[BlockTypeDef]] = None + +class ExpenseFieldTypeDef(BaseModel): + Type: Optional[ExpenseTypeTypeDef] = None + LabelDetection: Optional[ExpenseDetectionTypeDef] = None + ValueDetection: Optional[ExpenseDetectionTypeDef] = None + PageNumber: Optional[int] = None + Currency: Optional[ExpenseCurrencyTypeDef] = None + GroupProperties: Optional[List[ExpenseGroupPropertyTypeDef]] = None + +class LendingFieldTypeDef(BaseModel): + Type: Optional[str] = None + KeyDetection: Optional[LendingDetectionTypeDef] = None + ValueDetections: Optional[List[LendingDetectionTypeDef]] = None + +class AnalyzeIDResponseTypeDef(BaseModel): + IdentityDocuments: List[IdentityDocumentTypeDef] + DocumentMetadata: DocumentMetadataTypeDef + AnalyzeIDModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class LineItemFieldsTypeDef(BaseModel): + LineItemExpenseFields: Optional[List[ExpenseFieldTypeDef]] = None + +class LendingDocumentTypeDef(BaseModel): + LendingFields: Optional[List[LendingFieldTypeDef]] = None + SignatureDetections: Optional[List[SignatureDetectionTypeDef]] = None + +class LineItemGroupTypeDef(BaseModel): + LineItemGroupIndex: Optional[int] = None + LineItems: Optional[List[LineItemFieldsTypeDef]] = None + +class ExpenseDocumentTypeDef(BaseModel): + ExpenseIndex: Optional[int] = None + SummaryFields: Optional[List[ExpenseFieldTypeDef]] = None + LineItemGroups: Optional[List[LineItemGroupTypeDef]] = None + Blocks: Optional[List[BlockTypeDef]] = None + +class AnalyzeExpenseResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + ExpenseDocuments: List[ExpenseDocumentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ExtractionTypeDef(BaseModel): + LendingDocument: Optional[LendingDocumentTypeDef] = None + ExpenseDocument: Optional[ExpenseDocumentTypeDef] = None + IdentityDocument: Optional[IdentityDocumentTypeDef] = None + +class GetExpenseAnalysisResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + JobStatus: JobStatusType + NextToken: str + ExpenseDocuments: List[ExpenseDocumentTypeDef] + Warnings: List[WarningTypeDef] + StatusMessage: str + AnalyzeExpenseModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class LendingResultTypeDef(BaseModel): + Page: Optional[int] = None + PageClassification: Optional[PageClassificationTypeDef] = None + Extractions: Optional[List[ExtractionTypeDef]] = None + +class GetLendingAnalysisResponseTypeDef(BaseModel): + DocumentMetadata: DocumentMetadataTypeDef + JobStatus: JobStatusType + NextToken: str + Results: List[LendingResultTypeDef] + Warnings: List[WarningTypeDef] + StatusMessage: str + AnalyzeLendingModelVersion: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/textract_constants.py b/aws_resource_validator/pydantic_models/textract_constants.py new file mode 100644 index 00000000..a3ea5692 --- /dev/null +++ b/aws_resource_validator/pydantic_models/textract_constants.py @@ -0,0 +1,456 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AdapterVersionStatusType = Literal["ACTIVE", "AT_RISK", "CREATION_ERROR", "CREATION_IN_PROGRESS", "DEPRECATED"] +AutoUpdateType = Literal["DISABLED", "ENABLED"] +BlockTypeType = Literal["CELL", + "KEY_VALUE_SET", + "LAYOUT_FIGURE", + "LAYOUT_FOOTER", + "LAYOUT_HEADER", + "LAYOUT_KEY_VALUE", + "LAYOUT_LIST", + "LAYOUT_PAGE_NUMBER", + "LAYOUT_SECTION_HEADER", + "LAYOUT_TABLE", + "LAYOUT_TEXT", + "LAYOUT_TITLE", + "LINE", + "MERGED_CELL", + "PAGE", + "QUERY", + "QUERY_RESULT", + "SELECTION_ELEMENT", + "SIGNATURE", + "TABLE", + "TABLE_FOOTER", + "TABLE_TITLE", + "TITLE", + "WORD",] +ContentClassifierType = Literal["FreeOfAdultContent", "FreeOfPersonallyIdentifiableInformation"] +EntityTypeType = Literal["COLUMN_HEADER", + "KEY", + "SEMI_STRUCTURED_TABLE", + "STRUCTURED_TABLE", + "TABLE_FOOTER", + "TABLE_SECTION_TITLE", + "TABLE_SUMMARY", + "TABLE_TITLE", + "VALUE",] +FeatureTypeType = Literal["FORMS", "LAYOUT", "QUERIES", "SIGNATURES", "TABLES"] +JobStatusType = Literal["FAILED", "IN_PROGRESS", "PARTIAL_SUCCESS", "SUCCEEDED"] +ListAdapterVersionsPaginatorName = Literal["list_adapter_versions"] +ListAdaptersPaginatorName = Literal["list_adapters"] +RelationshipTypeType = Literal["ANSWER", + "CHILD", + "COMPLEX_FEATURES", + "MERGED_CELL", + "TABLE", + "TABLE_FOOTER", + "TABLE_TITLE", + "TITLE", + "VALUE",] +SelectionStatusType = Literal["NOT_SELECTED", "SELECTED"] +TextTypeType = Literal["HANDWRITING", "PRINTED"] +ValueTypeType = Literal["DATE"] +TextractServiceName = Literal["textract"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_adapter_versions", "list_adapters"] +RegionName = Literal["ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/timestream_influxdb_classes.py b/aws_resource_validator/pydantic_models/timestream_influxdb_classes.py new file mode 100644 index 00000000..6bb20efd --- /dev/null +++ b/aws_resource_validator/pydantic_models/timestream_influxdb_classes.py @@ -0,0 +1,236 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.timestream_influxdb_constants import * + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DbInstanceSummaryTypeDef(BaseModel): + id: str + name: str + arn: str + status: Optional[StatusType] = None + endpoint: Optional[str] = None + dbInstanceType: Optional[DbInstanceTypeType] = None + dbStorageType: Optional[DbStorageTypeType] = None + allocatedStorage: Optional[int] = None + deploymentType: Optional[DeploymentTypeType] = None + +class DbParameterGroupSummaryTypeDef(BaseModel): + id: str + name: str + arn: str + description: Optional[str] = None + +class DeleteDbInstanceInputRequestTypeDef(BaseModel): + identifier: str + +class GetDbInstanceInputRequestTypeDef(BaseModel): + identifier: str + +class GetDbParameterGroupInputRequestTypeDef(BaseModel): + identifier: str + +class InfluxDBv2ParametersTypeDef(BaseModel): + fluxLogEnabled: Optional[bool] = None + logLevel: Optional[LogLevelType] = None + noTasks: Optional[bool] = None + queryConcurrency: Optional[int] = None + queryQueueSize: Optional[int] = None + tracingType: Optional[TracingTypeType] = None + metricsDisabled: Optional[bool] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDbInstancesInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListDbParameterGroupsInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class S3ConfigurationTypeDef(BaseModel): + bucketName: str + enabled: bool + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDbInstancesOutputTypeDef(BaseModel): + items: List[DbInstanceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDbParameterGroupsOutputTypeDef(BaseModel): + items: List[DbParameterGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ParametersTypeDef(BaseModel): + InfluxDBv2: Optional[InfluxDBv2ParametersTypeDef] = None + +class ListDbInstancesInputListDbInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListDbParameterGroupsInputListDbParameterGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class LogDeliveryConfigurationTypeDef(BaseModel): + s3Configuration: S3ConfigurationTypeDef + +class CreateDbParameterGroupInputRequestTypeDef(BaseModel): + name: str + description: Optional[str] = None + parameters: Optional[ParametersTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateDbParameterGroupOutputTypeDef(BaseModel): + id: str + name: str + arn: str + description: str + parameters: ParametersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDbParameterGroupOutputTypeDef(BaseModel): + id: str + name: str + arn: str + description: str + parameters: ParametersTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDbInstanceInputRequestTypeDef(BaseModel): + name: str + password: str + dbInstanceType: DbInstanceTypeType + vpcSubnetIds: Sequence[str] + vpcSecurityGroupIds: Sequence[str] + allocatedStorage: int + username: Optional[str] = None + organization: Optional[str] = None + bucket: Optional[str] = None + publiclyAccessible: Optional[bool] = None + dbStorageType: Optional[DbStorageTypeType] = None + dbParameterGroupIdentifier: Optional[str] = None + deploymentType: Optional[DeploymentTypeType] = None + logDeliveryConfiguration: Optional[LogDeliveryConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateDbInstanceOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: StatusType + endpoint: str + dbInstanceType: DbInstanceTypeType + dbStorageType: DbStorageTypeType + allocatedStorage: int + deploymentType: DeploymentTypeType + vpcSubnetIds: List[str] + publiclyAccessible: bool + vpcSecurityGroupIds: List[str] + dbParameterGroupIdentifier: str + availabilityZone: str + secondaryAvailabilityZone: str + logDeliveryConfiguration: LogDeliveryConfigurationTypeDef + influxAuthParametersSecretArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteDbInstanceOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: StatusType + endpoint: str + dbInstanceType: DbInstanceTypeType + dbStorageType: DbStorageTypeType + allocatedStorage: int + deploymentType: DeploymentTypeType + vpcSubnetIds: List[str] + publiclyAccessible: bool + vpcSecurityGroupIds: List[str] + dbParameterGroupIdentifier: str + availabilityZone: str + secondaryAvailabilityZone: str + logDeliveryConfiguration: LogDeliveryConfigurationTypeDef + influxAuthParametersSecretArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDbInstanceOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: StatusType + endpoint: str + dbInstanceType: DbInstanceTypeType + dbStorageType: DbStorageTypeType + allocatedStorage: int + deploymentType: DeploymentTypeType + vpcSubnetIds: List[str] + publiclyAccessible: bool + vpcSecurityGroupIds: List[str] + dbParameterGroupIdentifier: str + availabilityZone: str + secondaryAvailabilityZone: str + logDeliveryConfiguration: LogDeliveryConfigurationTypeDef + influxAuthParametersSecretArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDbInstanceInputRequestTypeDef(BaseModel): + identifier: str + logDeliveryConfiguration: Optional[LogDeliveryConfigurationTypeDef] = None + dbParameterGroupIdentifier: Optional[str] = None + +class UpdateDbInstanceOutputTypeDef(BaseModel): + id: str + name: str + arn: str + status: StatusType + endpoint: str + dbInstanceType: DbInstanceTypeType + dbStorageType: DbStorageTypeType + allocatedStorage: int + deploymentType: DeploymentTypeType + vpcSubnetIds: List[str] + publiclyAccessible: bool + vpcSecurityGroupIds: List[str] + dbParameterGroupIdentifier: str + availabilityZone: str + secondaryAvailabilityZone: str + logDeliveryConfiguration: LogDeliveryConfigurationTypeDef + influxAuthParametersSecretArn: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/timestream_influxdb_constants.py b/aws_resource_validator/pydantic_models/timestream_influxdb_constants.py new file mode 100644 index 00000000..13d42a78 --- /dev/null +++ b/aws_resource_validator/pydantic_models/timestream_influxdb_constants.py @@ -0,0 +1,409 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DbInstanceTypeType = Literal["db.influx.12xlarge", + "db.influx.16xlarge", + "db.influx.2xlarge", + "db.influx.4xlarge", + "db.influx.8xlarge", + "db.influx.large", + "db.influx.medium", + "db.influx.xlarge",] +DbStorageTypeType = Literal["InfluxIOIncludedT1", "InfluxIOIncludedT2", "InfluxIOIncludedT3"] +DeploymentTypeType = Literal["SINGLE_AZ", "WITH_MULTIAZ_STANDBY"] +ListDbInstancesPaginatorName = Literal["list_db_instances"] +ListDbParameterGroupsPaginatorName = Literal["list_db_parameter_groups"] +LogLevelType = Literal["debug", "error", "info"] +StatusType = Literal["AVAILABLE", "CREATING", "DELETED", "DELETING", "FAILED", "MODIFYING", "UPDATING"] +TracingTypeType = Literal["jaeger", "log"] +TimestreamInfluxDBServiceName = Literal["timestream-influxdb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_db_instances", "list_db_parameter_groups"] diff --git a/aws_resource_validator/pydantic_models/timestream_query_classes.py b/aws_resource_validator/pydantic_models/timestream_query_classes.py new file mode 100644 index 00000000..abd737a3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/timestream_query_classes.py @@ -0,0 +1,329 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.timestream_query_constants import * + +class CancelQueryRequestRequestTypeDef(BaseModel): + QueryId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class ColumnInfoTypeDef(BaseModel): + Type: "TypeTypeDef" + Name: Optional[str] = None + +class ScheduleConfigurationTypeDef(BaseModel): + ScheduleExpression: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class RowTypeDef(BaseModel): + Data: List["DatumTypeDef"] + +class TimeSeriesDataPointTypeDef(BaseModel): + Time: str + Value: "DatumTypeDef" + +class DeleteScheduledQueryRequestRequestTypeDef(BaseModel): + ScheduledQueryArn: str + +class EndpointTypeDef(BaseModel): + Address: str + CachePeriodInMinutes: int + +class DescribeScheduledQueryRequestRequestTypeDef(BaseModel): + ScheduledQueryArn: str + +class DimensionMappingTypeDef(BaseModel): + Name: str + DimensionValueType: Literal["VARCHAR"] + +class S3ConfigurationTypeDef(BaseModel): + BucketName: str + ObjectKeyPrefix: Optional[str] = None + EncryptionOption: Optional[S3EncryptionOptionType] = None + +class S3ReportLocationTypeDef(BaseModel): + BucketName: Optional[str] = None + ObjectKey: Optional[str] = None + +class ExecutionStatsTypeDef(BaseModel): + ExecutionTimeInMillis: Optional[int] = None + DataWrites: Optional[int] = None + BytesMetered: Optional[int] = None + CumulativeBytesScanned: Optional[int] = None + RecordsIngested: Optional[int] = None + QueryResultRows: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListScheduledQueriesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MultiMeasureAttributeMappingTypeDef(BaseModel): + SourceColumn: str + MeasureValueType: ScalarMeasureValueTypeType + TargetMultiMeasureAttributeName: Optional[str] = None + +class SnsConfigurationTypeDef(BaseModel): + TopicArn: str + +class ParameterMappingTypeDef(BaseModel): + Name: str + Type: "TypeTypeDef" + +class PrepareQueryRequestRequestTypeDef(BaseModel): + QueryString: str + ValidateOnly: Optional[bool] = None + +class SelectColumnTypeDef(BaseModel): + Name: Optional[str] = None + Type: Optional["TypeTypeDef"] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + Aliased: Optional[bool] = None + +class QueryRequestRequestTypeDef(BaseModel): + QueryString: str + ClientToken: Optional[str] = None + NextToken: Optional[str] = None + MaxRows: Optional[int] = None + +class QueryStatusTypeDef(BaseModel): + ProgressPercentage: Optional[float] = None + CumulativeBytesScanned: Optional[int] = None + CumulativeBytesMetered: Optional[int] = None + +class TimestreamDestinationTypeDef(BaseModel): + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + +class TypeTypeDef(BaseModel): + ScalarType: Optional[ScalarTypeType] = None + ArrayColumnInfo: Optional[Dict[str, Any]] = None + TimeSeriesMeasureValueColumnInfo: Optional[Dict[str, Any]] = None + RowColumnInfo: Optional[List[Dict[str, Any]]] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateAccountSettingsRequestRequestTypeDef(BaseModel): + MaxQueryTCU: Optional[int] = None + QueryPricingModel: Optional[QueryPricingModelType] = None + +class UpdateScheduledQueryRequestRequestTypeDef(BaseModel): + ScheduledQueryArn: str + State: ScheduledQueryStateType + +class CancelQueryResponseTypeDef(BaseModel): + CancellationMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateScheduledQueryResponseTypeDef(BaseModel): + Arn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountSettingsResponseTypeDef(BaseModel): + MaxQueryTCU: int + QueryPricingModel: QueryPricingModelType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccountSettingsResponseTypeDef(BaseModel): + MaxQueryTCU: int + QueryPricingModel: QueryPricingModelType + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class DatumTypeDef(BaseModel): + ScalarValue: Optional[str] = None + TimeSeriesValue: Optional[List[Dict[str, Any]]] = None + ArrayValue: Optional[List[Dict[str, Any]]] = None + RowValue: Optional[Dict[str, Any]] = None + NullValue: Optional[bool] = None + +class DescribeEndpointsResponseTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ErrorReportConfigurationTypeDef(BaseModel): + S3Configuration: S3ConfigurationTypeDef + +class ErrorReportLocationTypeDef(BaseModel): + S3ReportLocation: Optional[S3ReportLocationTypeDef] = None + +class ExecuteScheduledQueryRequestRequestTypeDef(BaseModel): + ScheduledQueryArn: str + InvocationTime: TimestampTypeDef + ClientToken: Optional[str] = None + +class ListScheduledQueriesRequestListScheduledQueriesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class QueryRequestQueryPaginateTypeDef(BaseModel): + QueryString: str + ClientToken: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class MixedMeasureMappingOutputTypeDef(BaseModel): + MeasureValueType: MeasureValueTypeType + MeasureName: Optional[str] = None + SourceColumn: Optional[str] = None + TargetMeasureName: Optional[str] = None + MultiMeasureAttributeMappings: Optional[List[MultiMeasureAttributeMappingTypeDef]] = None + +class MixedMeasureMappingTypeDef(BaseModel): + MeasureValueType: MeasureValueTypeType + MeasureName: Optional[str] = None + SourceColumn: Optional[str] = None + TargetMeasureName: Optional[str] = None + MultiMeasureAttributeMappings: Optional[Sequence[MultiMeasureAttributeMappingTypeDef]] = None + +class MultiMeasureMappingsOutputTypeDef(BaseModel): + MultiMeasureAttributeMappings: List[MultiMeasureAttributeMappingTypeDef] + TargetMultiMeasureName: Optional[str] = None + +class MultiMeasureMappingsTypeDef(BaseModel): + MultiMeasureAttributeMappings: Sequence[MultiMeasureAttributeMappingTypeDef] + TargetMultiMeasureName: Optional[str] = None + +class NotificationConfigurationTypeDef(BaseModel): + SnsConfiguration: SnsConfigurationTypeDef + +class PrepareQueryResponseTypeDef(BaseModel): + QueryString: str + Columns: List[SelectColumnTypeDef] + Parameters: List[ParameterMappingTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class QueryResponseTypeDef(BaseModel): + QueryId: str + Rows: List[RowTypeDef] + ColumnInfo: List["ColumnInfoTypeDef"] + QueryStatus: QueryStatusTypeDef + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TargetDestinationTypeDef(BaseModel): + TimestreamDestination: Optional[TimestreamDestinationTypeDef] = None + +class ScheduledQueryRunSummaryTypeDef(BaseModel): + InvocationTime: Optional[datetime] = None + TriggerTime: Optional[datetime] = None + RunStatus: Optional[ScheduledQueryRunStatusType] = None + ExecutionStats: Optional[ExecutionStatsTypeDef] = None + ErrorReportLocation: Optional[ErrorReportLocationTypeDef] = None + FailureReason: Optional[str] = None + +class TimestreamConfigurationOutputTypeDef(BaseModel): + DatabaseName: str + TableName: str + TimeColumn: str + DimensionMappings: List[DimensionMappingTypeDef] + MultiMeasureMappings: Optional[MultiMeasureMappingsOutputTypeDef] = None + MixedMeasureMappings: Optional[List[MixedMeasureMappingOutputTypeDef]] = None + MeasureNameColumn: Optional[str] = None + +class TimestreamConfigurationTypeDef(BaseModel): + DatabaseName: str + TableName: str + TimeColumn: str + DimensionMappings: Sequence[DimensionMappingTypeDef] + MultiMeasureMappings: Optional[MultiMeasureMappingsTypeDef] = None + MixedMeasureMappings: Optional[Sequence[MixedMeasureMappingTypeDef]] = None + MeasureNameColumn: Optional[str] = None + +class ScheduledQueryTypeDef(BaseModel): + Arn: str + Name: str + State: ScheduledQueryStateType + CreationTime: Optional[datetime] = None + PreviousInvocationTime: Optional[datetime] = None + NextInvocationTime: Optional[datetime] = None + ErrorReportConfiguration: Optional[ErrorReportConfigurationTypeDef] = None + TargetDestination: Optional[TargetDestinationTypeDef] = None + LastRunStatus: Optional[ScheduledQueryRunStatusType] = None + +class TargetConfigurationOutputTypeDef(BaseModel): + TimestreamConfiguration: TimestreamConfigurationOutputTypeDef + +class TargetConfigurationTypeDef(BaseModel): + TimestreamConfiguration: TimestreamConfigurationTypeDef + +class ListScheduledQueriesResponseTypeDef(BaseModel): + ScheduledQueries: List[ScheduledQueryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ScheduledQueryDescriptionTypeDef(BaseModel): + Arn: str + Name: str + QueryString: str + State: ScheduledQueryStateType + ScheduleConfiguration: ScheduleConfigurationTypeDef + NotificationConfiguration: NotificationConfigurationTypeDef + CreationTime: Optional[datetime] = None + PreviousInvocationTime: Optional[datetime] = None + NextInvocationTime: Optional[datetime] = None + TargetConfiguration: Optional[TargetConfigurationOutputTypeDef] = None + ScheduledQueryExecutionRoleArn: Optional[str] = None + KmsKeyId: Optional[str] = None + ErrorReportConfiguration: Optional[ErrorReportConfigurationTypeDef] = None + LastRunSummary: Optional[ScheduledQueryRunSummaryTypeDef] = None + RecentlyFailedRuns: Optional[List[ScheduledQueryRunSummaryTypeDef]] = None + +class CreateScheduledQueryRequestRequestTypeDef(BaseModel): + Name: str + QueryString: str + ScheduleConfiguration: ScheduleConfigurationTypeDef + NotificationConfiguration: NotificationConfigurationTypeDef + ScheduledQueryExecutionRoleArn: str + ErrorReportConfiguration: ErrorReportConfigurationTypeDef + TargetConfiguration: Optional[TargetConfigurationTypeDef] = None + ClientToken: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + KmsKeyId: Optional[str] = None + +class DescribeScheduledQueryResponseTypeDef(BaseModel): + ScheduledQuery: ScheduledQueryDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/timestream_query_constants.py b/aws_resource_validator/pydantic_models/timestream_query_constants.py new file mode 100644 index 00000000..d2b5e9e3 --- /dev/null +++ b/aws_resource_validator/pydantic_models/timestream_query_constants.py @@ -0,0 +1,424 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DimensionValueTypeType = Literal["VARCHAR"] +ListScheduledQueriesPaginatorName = Literal["list_scheduled_queries"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +MeasureValueTypeType = Literal["BIGINT", "BOOLEAN", "DOUBLE", "MULTI", "VARCHAR"] +QueryPaginatorName = Literal["query"] +QueryPricingModelType = Literal["BYTES_SCANNED", "COMPUTE_UNITS"] +S3EncryptionOptionType = Literal["SSE_KMS", "SSE_S3"] +ScalarMeasureValueTypeType = Literal["BIGINT", "BOOLEAN", "DOUBLE", "TIMESTAMP", "VARCHAR"] +ScalarTypeType = Literal["BIGINT", + "BOOLEAN", + "DATE", + "DOUBLE", + "INTEGER", + "INTERVAL_DAY_TO_SECOND", + "INTERVAL_YEAR_TO_MONTH", + "TIME", + "TIMESTAMP", + "UNKNOWN", + "VARCHAR",] +ScheduledQueryRunStatusType = Literal["AUTO_TRIGGER_FAILURE", + "AUTO_TRIGGER_SUCCESS", + "MANUAL_TRIGGER_FAILURE", + "MANUAL_TRIGGER_SUCCESS",] +ScheduledQueryStateType = Literal["DISABLED", "ENABLED"] +TimestreamQueryServiceName = Literal["timestream-query"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_scheduled_queries", "list_tags_for_resource", "query"] +TimestampTypeDef = Union[datetime, str] +TargetConfigurationUnionTypeDef = Union[ 'TargetConfigurationTypeDef', 'TargetConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/timestream_write_classes.py b/aws_resource_validator/pydantic_models/timestream_write_classes.py new file mode 100644 index 00000000..ec78e828 --- /dev/null +++ b/aws_resource_validator/pydantic_models/timestream_write_classes.py @@ -0,0 +1,336 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.timestream_write_constants import * + +class BatchLoadProgressReportTypeDef(BaseModel): + RecordsProcessed: Optional[int] = None + RecordsIngested: Optional[int] = None + ParseFailures: Optional[int] = None + RecordIngestionFailures: Optional[int] = None + FileFailures: Optional[int] = None + BytesMetered: Optional[int] = None + +class BatchLoadTaskTypeDef(BaseModel): + TaskId: Optional[str] = None + TaskStatus: Optional[BatchLoadStatusType] = None + DatabaseName: Optional[str] = None + TableName: Optional[str] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + ResumableUntil: Optional[datetime] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DatabaseTypeDef(BaseModel): + Arn: Optional[str] = None + DatabaseName: Optional[str] = None + TableCount: Optional[int] = None + KmsKeyId: Optional[str] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + +class RetentionPropertiesTypeDef(BaseModel): + MemoryStoreRetentionPeriodInHours: int + MagneticStoreRetentionPeriodInDays: int + +class CsvConfigurationTypeDef(BaseModel): + ColumnSeparator: Optional[str] = None + EscapeChar: Optional[str] = None + QuoteChar: Optional[str] = None + NullValue: Optional[str] = None + TrimWhiteSpace: Optional[bool] = None + +class DataModelS3ConfigurationTypeDef(BaseModel): + BucketName: Optional[str] = None + ObjectKey: Optional[str] = None + +class DimensionMappingTypeDef(BaseModel): + SourceColumn: Optional[str] = None + DestinationColumn: Optional[str] = None + +class DataSourceS3ConfigurationTypeDef(BaseModel): + BucketName: str + ObjectKeyPrefix: Optional[str] = None + +class DeleteDatabaseRequestRequestTypeDef(BaseModel): + DatabaseName: str + +class DeleteTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + +class DescribeBatchLoadTaskRequestRequestTypeDef(BaseModel): + TaskId: str + +class DescribeDatabaseRequestRequestTypeDef(BaseModel): + DatabaseName: str + +class EndpointTypeDef(BaseModel): + Address: str + CachePeriodInMinutes: int + +class DescribeTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + +class DimensionTypeDef(BaseModel): + Name: str + Value: str + DimensionValueType: Optional[Literal["VARCHAR"]] = None + +class ListBatchLoadTasksRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + TaskStatus: Optional[BatchLoadStatusType] = None + +class ListDatabasesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTablesRequestRequestTypeDef(BaseModel): + DatabaseName: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class S3ConfigurationTypeDef(BaseModel): + BucketName: Optional[str] = None + ObjectKeyPrefix: Optional[str] = None + EncryptionOption: Optional[S3EncryptionOptionType] = None + KmsKeyId: Optional[str] = None + +class MeasureValueTypeDef(BaseModel): + Name: str + Value: str + Type: MeasureValueTypeType + +class MultiMeasureAttributeMappingTypeDef(BaseModel): + SourceColumn: str + TargetMultiMeasureAttributeName: Optional[str] = None + MeasureValueType: Optional[ScalarMeasureValueTypeType] = None + +class PartitionKeyTypeDef(BaseModel): + Type: PartitionKeyTypeType + Name: Optional[str] = None + EnforcementInRecord: Optional[PartitionKeyEnforcementLevelType] = None + +class RecordsIngestedTypeDef(BaseModel): + Total: Optional[int] = None + MemoryStore: Optional[int] = None + MagneticStore: Optional[int] = None + +class ReportS3ConfigurationTypeDef(BaseModel): + BucketName: str + ObjectKeyPrefix: Optional[str] = None + EncryptionOption: Optional[S3EncryptionOptionType] = None + KmsKeyId: Optional[str] = None + +class ResumeBatchLoadTaskRequestRequestTypeDef(BaseModel): + TaskId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateDatabaseRequestRequestTypeDef(BaseModel): + DatabaseName: str + KmsKeyId: str + +class CreateBatchLoadTaskResponseTypeDef(BaseModel): + TaskId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListBatchLoadTasksResponseTypeDef(BaseModel): + NextToken: str + BatchLoadTasks: List[BatchLoadTaskTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDatabaseRequestRequestTypeDef(BaseModel): + DatabaseName: str + KmsKeyId: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateDatabaseResponseTypeDef(BaseModel): + Database: DatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDatabaseResponseTypeDef(BaseModel): + Database: DatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListDatabasesResponseTypeDef(BaseModel): + Databases: List[DatabaseTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDatabaseResponseTypeDef(BaseModel): + Database: DatabaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DataSourceConfigurationTypeDef(BaseModel): + DataSourceS3Configuration: DataSourceS3ConfigurationTypeDef + DataFormat: Literal["CSV"] + CsvConfiguration: Optional[CsvConfigurationTypeDef] = None + +class DescribeEndpointsResponseTypeDef(BaseModel): + Endpoints: List[EndpointTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class MagneticStoreRejectedDataLocationTypeDef(BaseModel): + S3Configuration: Optional[S3ConfigurationTypeDef] = None + +class RecordTypeDef(BaseModel): + Dimensions: Optional[Sequence[DimensionTypeDef]] = None + MeasureName: Optional[str] = None + MeasureValue: Optional[str] = None + MeasureValueType: Optional[MeasureValueTypeType] = None + Time: Optional[str] = None + TimeUnit: Optional[TimeUnitType] = None + Version: Optional[int] = None + MeasureValues: Optional[Sequence[MeasureValueTypeDef]] = None + +class MixedMeasureMappingTypeDef(BaseModel): + MeasureValueType: MeasureValueTypeType + MeasureName: Optional[str] = None + SourceColumn: Optional[str] = None + TargetMeasureName: Optional[str] = None + MultiMeasureAttributeMappings: Optional[Sequence[MultiMeasureAttributeMappingTypeDef]] = None + +class MultiMeasureMappingsTypeDef(BaseModel): + MultiMeasureAttributeMappings: Sequence[MultiMeasureAttributeMappingTypeDef] + TargetMultiMeasureName: Optional[str] = None + +class SchemaTypeDef(BaseModel): + CompositePartitionKey: Optional[Sequence[PartitionKeyTypeDef]] = None + +class WriteRecordsResponseTypeDef(BaseModel): + RecordsIngested: RecordsIngestedTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ReportConfigurationTypeDef(BaseModel): + ReportS3Configuration: Optional[ReportS3ConfigurationTypeDef] = None + +class MagneticStoreWritePropertiesTypeDef(BaseModel): + EnableMagneticStoreWrites: bool + MagneticStoreRejectedDataLocation: Optional[MagneticStoreRejectedDataLocationTypeDef] = None + +class WriteRecordsRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + Records: Sequence[RecordTypeDef] + CommonAttributes: Optional[RecordTypeDef] = None + +class DataModelTypeDef(BaseModel): + DimensionMappings: Sequence[DimensionMappingTypeDef] + TimeColumn: Optional[str] = None + TimeUnit: Optional[TimeUnitType] = None + MultiMeasureMappings: Optional[MultiMeasureMappingsTypeDef] = None + MixedMeasureMappings: Optional[Sequence[MixedMeasureMappingTypeDef]] = None + MeasureNameColumn: Optional[str] = None + +class CreateTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + RetentionProperties: Optional[RetentionPropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + MagneticStoreWriteProperties: Optional[MagneticStoreWritePropertiesTypeDef] = None + Schema: Optional[SchemaTypeDef] = None + +class TableTypeDef(BaseModel): + Arn: Optional[str] = None + TableName: Optional[str] = None + DatabaseName: Optional[str] = None + TableStatus: Optional[TableStatusType] = None + RetentionProperties: Optional[RetentionPropertiesTypeDef] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + MagneticStoreWriteProperties: Optional[MagneticStoreWritePropertiesTypeDef] = None + Schema: Optional[SchemaTypeDef] = None + +class UpdateTableRequestRequestTypeDef(BaseModel): + DatabaseName: str + TableName: str + RetentionProperties: Optional[RetentionPropertiesTypeDef] = None + MagneticStoreWriteProperties: Optional[MagneticStoreWritePropertiesTypeDef] = None + Schema: Optional[SchemaTypeDef] = None + +class DataModelConfigurationTypeDef(BaseModel): + DataModel: Optional[DataModelTypeDef] = None + DataModelS3Configuration: Optional[DataModelS3ConfigurationTypeDef] = None + +class CreateTableResponseTypeDef(BaseModel): + Table: TableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeTableResponseTypeDef(BaseModel): + Table: TableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTablesResponseTypeDef(BaseModel): + Tables: List[TableTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTableResponseTypeDef(BaseModel): + Table: TableTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class BatchLoadTaskDescriptionTypeDef(BaseModel): + TaskId: Optional[str] = None + ErrorMessage: Optional[str] = None + DataSourceConfiguration: Optional[DataSourceConfigurationTypeDef] = None + ProgressReport: Optional[BatchLoadProgressReportTypeDef] = None + ReportConfiguration: Optional[ReportConfigurationTypeDef] = None + DataModelConfiguration: Optional[DataModelConfigurationTypeDef] = None + TargetDatabaseName: Optional[str] = None + TargetTableName: Optional[str] = None + TaskStatus: Optional[BatchLoadStatusType] = None + RecordVersion: Optional[int] = None + CreationTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + ResumableUntil: Optional[datetime] = None + +class CreateBatchLoadTaskRequestRequestTypeDef(BaseModel): + DataSourceConfiguration: DataSourceConfigurationTypeDef + ReportConfiguration: ReportConfigurationTypeDef + TargetDatabaseName: str + TargetTableName: str + ClientToken: Optional[str] = None + DataModelConfiguration: Optional[DataModelConfigurationTypeDef] = None + RecordVersion: Optional[int] = None + +class DescribeBatchLoadTaskResponseTypeDef(BaseModel): + BatchLoadTaskDescription: BatchLoadTaskDescriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/timestream_write_constants.py b/aws_resource_validator/pydantic_models/timestream_write_constants.py new file mode 100644 index 00000000..9ddb7ac0 --- /dev/null +++ b/aws_resource_validator/pydantic_models/timestream_write_constants.py @@ -0,0 +1,405 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BatchLoadDataFormatType = Literal["CSV"] +BatchLoadStatusType = Literal["CREATED", "FAILED", "IN_PROGRESS", "PENDING_RESUME", "PROGRESS_STOPPED", "SUCCEEDED"] +DimensionValueTypeType = Literal["VARCHAR"] +MeasureValueTypeType = Literal["BIGINT", "BOOLEAN", "DOUBLE", "MULTI", "TIMESTAMP", "VARCHAR"] +PartitionKeyEnforcementLevelType = Literal["OPTIONAL", "REQUIRED"] +PartitionKeyTypeType = Literal["DIMENSION", "MEASURE"] +S3EncryptionOptionType = Literal["SSE_KMS", "SSE_S3"] +ScalarMeasureValueTypeType = Literal["BIGINT", "BOOLEAN", "DOUBLE", "TIMESTAMP", "VARCHAR"] +TableStatusType = Literal["ACTIVE", "DELETING", "RESTORING"] +TimeUnitType = Literal["MICROSECONDS", "MILLISECONDS", "NANOSECONDS", "SECONDS"] +TimestreamWriteServiceName = Literal["timestream-write"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-2", + "eu-central-1", + "eu-west-1", + "us-east-1", + "us-east-2", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/tnb_classes.py b/aws_resource_validator/pydantic_models/tnb_classes.py new file mode 100644 index 00000000..99a8b1ad --- /dev/null +++ b/aws_resource_validator/pydantic_models/tnb_classes.py @@ -0,0 +1,533 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.tnb_constants import * + +class CancelSolNetworkOperationInputRequestTypeDef(BaseModel): + nsLcmOpOccId: str + +class CreateSolFunctionPackageInputRequestTypeDef(BaseModel): + tags: Optional[Mapping[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateSolNetworkInstanceInputRequestTypeDef(BaseModel): + nsName: str + nsdInfoId: str + nsDescription: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateSolNetworkPackageInputRequestTypeDef(BaseModel): + tags: Optional[Mapping[str, str]] = None + +class DeleteSolFunctionPackageInputRequestTypeDef(BaseModel): + vnfPkgId: str + +class DeleteSolNetworkInstanceInputRequestTypeDef(BaseModel): + nsInstanceId: str + +class DeleteSolNetworkPackageInputRequestTypeDef(BaseModel): + nsdInfoId: str + +class ErrorInfoTypeDef(BaseModel): + cause: Optional[str] = None + details: Optional[str] = None + +class ToscaOverrideTypeDef(BaseModel): + defaultValue: Optional[str] = None + name: Optional[str] = None + +class GetSolFunctionInstanceInputRequestTypeDef(BaseModel): + vnfInstanceId: str + +class GetSolFunctionInstanceMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class GetSolFunctionPackageContentInputRequestTypeDef(BaseModel): + accept: Literal["application/zip"] + vnfPkgId: str + +class GetSolFunctionPackageDescriptorInputRequestTypeDef(BaseModel): + accept: Literal["text/plain"] + vnfPkgId: str + +class GetSolFunctionPackageInputRequestTypeDef(BaseModel): + vnfPkgId: str + +class GetSolInstantiatedVnfInfoTypeDef(BaseModel): + vnfState: Optional[VnfOperationalStateType] = None + +class GetSolNetworkInstanceInputRequestTypeDef(BaseModel): + nsInstanceId: str + +class GetSolNetworkInstanceMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class LcmOperationInfoTypeDef(BaseModel): + nsLcmOpOccId: str + +class GetSolNetworkOperationInputRequestTypeDef(BaseModel): + nsLcmOpOccId: str + +class GetSolNetworkOperationMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class ProblemDetailsTypeDef(BaseModel): + detail: str + title: Optional[str] = None + +class GetSolNetworkPackageContentInputRequestTypeDef(BaseModel): + accept: Literal["application/zip"] + nsdInfoId: str + +class GetSolNetworkPackageDescriptorInputRequestTypeDef(BaseModel): + nsdInfoId: str + +class GetSolNetworkPackageInputRequestTypeDef(BaseModel): + nsdInfoId: str + +class GetSolVnfcResourceInfoMetadataTypeDef(BaseModel): + cluster: Optional[str] = None + helmChart: Optional[str] = None + nodeGroup: Optional[str] = None + +class InstantiateSolNetworkInstanceInputRequestTypeDef(BaseModel): + nsInstanceId: str + additionalParamsForNs: Optional[Mapping[str, Any]] = None + dryRun: Optional[bool] = None + tags: Optional[Mapping[str, str]] = None + +class ListSolFunctionInstanceMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListSolFunctionInstancesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSolFunctionPackageMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class ListSolFunctionPackagesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSolNetworkInstanceMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class ListSolNetworkInstancesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSolNetworkOperationsMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class ListSolNetworkOperationsInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListSolNetworkPackageMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + +class ListSolNetworkPackagesInputRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + resourceArn: str + +class TagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class TerminateSolNetworkInstanceInputRequestTypeDef(BaseModel): + nsInstanceId: str + tags: Optional[Mapping[str, str]] = None + +class UntagResourceInputRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateSolFunctionPackageInputRequestTypeDef(BaseModel): + operationalState: OperationalStateType + vnfPkgId: str + +class UpdateSolNetworkModifyTypeDef(BaseModel): + vnfConfigurableProperties: Mapping[str, Any] + vnfInstanceId: str + +class UpdateSolNetworkPackageInputRequestTypeDef(BaseModel): + nsdInfoId: str + nsdOperationalState: NsdOperationalStateType + +class PutSolFunctionPackageContentInputRequestTypeDef(BaseModel): + file: BlobTypeDef + vnfPkgId: str + contentType: Optional[Literal["application/zip"]] = None + +class PutSolNetworkPackageContentInputRequestTypeDef(BaseModel): + file: BlobTypeDef + nsdInfoId: str + contentType: Optional[Literal["application/zip"]] = None + +class ValidateSolFunctionPackageContentInputRequestTypeDef(BaseModel): + file: BlobTypeDef + vnfPkgId: str + contentType: Optional[Literal["application/zip"]] = None + +class ValidateSolNetworkPackageContentInputRequestTypeDef(BaseModel): + file: BlobTypeDef + nsdInfoId: str + contentType: Optional[Literal["application/zip"]] = None + +class CreateSolFunctionPackageOutputTypeDef(BaseModel): + arn: str + id: str + onboardingState: OnboardingStateType + operationalState: OperationalStateType + tags: Dict[str, str] + usageState: UsageStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSolNetworkInstanceOutputTypeDef(BaseModel): + arn: str + id: str + nsInstanceName: str + nsdInfoId: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSolNetworkPackageOutputTypeDef(BaseModel): + arn: str + id: str + nsdOnboardingState: NsdOnboardingStateType + nsdOperationalState: NsdOperationalStateType + nsdUsageState: NsdUsageStateType + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolFunctionPackageContentOutputTypeDef(BaseModel): + contentType: Literal["application/zip"] + packageContent: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolFunctionPackageDescriptorOutputTypeDef(BaseModel): + contentType: Literal["text/plain"] + vnfd: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolNetworkPackageContentOutputTypeDef(BaseModel): + contentType: Literal["application/zip"] + nsdContent: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolNetworkPackageDescriptorOutputTypeDef(BaseModel): + contentType: Literal["text/plain"] + nsd: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class InstantiateSolNetworkInstanceOutputTypeDef(BaseModel): + nsLcmOpOccId: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateSolNetworkInstanceOutputTypeDef(BaseModel): + nsLcmOpOccId: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSolFunctionPackageOutputTypeDef(BaseModel): + operationalState: OperationalStateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSolNetworkInstanceOutputTypeDef(BaseModel): + nsLcmOpOccId: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSolNetworkPackageOutputTypeDef(BaseModel): + nsdOperationalState: NsdOperationalStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolNetworkOperationTaskDetailsTypeDef(BaseModel): + taskContext: Optional[Dict[str, str]] = None + taskEndTime: Optional[datetime] = None + taskErrorDetails: Optional[ErrorInfoTypeDef] = None + taskName: Optional[str] = None + taskStartTime: Optional[datetime] = None + taskStatus: Optional[TaskStatusType] = None + +class FunctionArtifactMetaTypeDef(BaseModel): + overrides: Optional[List[ToscaOverrideTypeDef]] = None + +class NetworkArtifactMetaTypeDef(BaseModel): + overrides: Optional[List[ToscaOverrideTypeDef]] = None + +class GetSolNetworkInstanceOutputTypeDef(BaseModel): + arn: str + id: str + lcmOpInfo: LcmOperationInfoTypeDef + metadata: GetSolNetworkInstanceMetadataTypeDef + nsInstanceDescription: str + nsInstanceName: str + nsState: NsStateType + nsdId: str + nsdInfoId: str + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolVnfcResourceInfoTypeDef(BaseModel): + metadata: Optional[GetSolVnfcResourceInfoMetadataTypeDef] = None + +class ListSolFunctionInstanceInfoTypeDef(BaseModel): + arn: str + id: str + instantiationState: VnfInstantiationStateType + metadata: ListSolFunctionInstanceMetadataTypeDef + nsInstanceId: str + vnfPkgId: str + instantiatedVnfInfo: Optional[GetSolInstantiatedVnfInfoTypeDef] = None + vnfPkgName: Optional[str] = None + +class ListSolFunctionInstancesInputListSolFunctionInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolFunctionPackagesInputListSolFunctionPackagesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolNetworkInstancesInputListSolNetworkInstancesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolNetworkOperationsInputListSolNetworkOperationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolNetworkPackagesInputListSolNetworkPackagesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSolFunctionPackageInfoTypeDef(BaseModel): + arn: str + id: str + onboardingState: OnboardingStateType + operationalState: OperationalStateType + usageState: UsageStateType + metadata: Optional[ListSolFunctionPackageMetadataTypeDef] = None + vnfProductName: Optional[str] = None + vnfProvider: Optional[str] = None + vnfdId: Optional[str] = None + vnfdVersion: Optional[str] = None + +class ListSolNetworkInstanceInfoTypeDef(BaseModel): + arn: str + id: str + metadata: ListSolNetworkInstanceMetadataTypeDef + nsInstanceDescription: str + nsInstanceName: str + nsState: NsStateType + nsdId: str + nsdInfoId: str + +class ListSolNetworkOperationsInfoTypeDef(BaseModel): + arn: str + id: str + lcmOperationType: LcmOperationTypeType + nsInstanceId: str + operationState: NsLcmOperationStateType + error: Optional[ProblemDetailsTypeDef] = None + metadata: Optional[ListSolNetworkOperationsMetadataTypeDef] = None + +class ListSolNetworkPackageInfoTypeDef(BaseModel): + arn: str + id: str + metadata: ListSolNetworkPackageMetadataTypeDef + nsdOnboardingState: NsdOnboardingStateType + nsdOperationalState: NsdOperationalStateType + nsdUsageState: NsdUsageStateType + nsdDesigner: Optional[str] = None + nsdId: Optional[str] = None + nsdInvariantId: Optional[str] = None + nsdName: Optional[str] = None + nsdVersion: Optional[str] = None + vnfPkgIds: Optional[List[str]] = None + +class UpdateSolNetworkInstanceInputRequestTypeDef(BaseModel): + nsInstanceId: str + updateType: Literal["MODIFY_VNF_INFORMATION"] + modifyVnfInfoData: Optional[UpdateSolNetworkModifyTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class GetSolNetworkOperationOutputTypeDef(BaseModel): + arn: str + error: ProblemDetailsTypeDef + id: str + lcmOperationType: LcmOperationTypeType + metadata: GetSolNetworkOperationMetadataTypeDef + nsInstanceId: str + operationState: NsLcmOperationStateType + tags: Dict[str, str] + tasks: List[GetSolNetworkOperationTaskDetailsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolFunctionPackageMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + vnfd: Optional[FunctionArtifactMetaTypeDef] = None + +class PutSolFunctionPackageContentMetadataTypeDef(BaseModel): + vnfd: Optional[FunctionArtifactMetaTypeDef] = None + +class ValidateSolFunctionPackageContentMetadataTypeDef(BaseModel): + vnfd: Optional[FunctionArtifactMetaTypeDef] = None + +class GetSolNetworkPackageMetadataTypeDef(BaseModel): + createdAt: datetime + lastModified: datetime + nsd: Optional[NetworkArtifactMetaTypeDef] = None + +class PutSolNetworkPackageContentMetadataTypeDef(BaseModel): + nsd: Optional[NetworkArtifactMetaTypeDef] = None + +class ValidateSolNetworkPackageContentMetadataTypeDef(BaseModel): + nsd: Optional[NetworkArtifactMetaTypeDef] = None + +class GetSolVnfInfoTypeDef(BaseModel): + vnfState: Optional[VnfOperationalStateType] = None + vnfcResourceInfo: Optional[List[GetSolVnfcResourceInfoTypeDef]] = None + +class ListSolFunctionInstancesOutputTypeDef(BaseModel): + functionInstances: List[ListSolFunctionInstanceInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSolFunctionPackagesOutputTypeDef(BaseModel): + functionPackages: List[ListSolFunctionPackageInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSolNetworkInstancesOutputTypeDef(BaseModel): + networkInstances: List[ListSolNetworkInstanceInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSolNetworkOperationsOutputTypeDef(BaseModel): + networkOperations: List[ListSolNetworkOperationsInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSolNetworkPackagesOutputTypeDef(BaseModel): + networkPackages: List[ListSolNetworkPackageInfoTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolFunctionPackageOutputTypeDef(BaseModel): + arn: str + id: str + metadata: GetSolFunctionPackageMetadataTypeDef + onboardingState: OnboardingStateType + operationalState: OperationalStateType + tags: Dict[str, str] + usageState: UsageStateType + vnfProductName: str + vnfProvider: str + vnfdId: str + vnfdVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutSolFunctionPackageContentOutputTypeDef(BaseModel): + id: str + metadata: PutSolFunctionPackageContentMetadataTypeDef + vnfProductName: str + vnfProvider: str + vnfdId: str + vnfdVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateSolFunctionPackageContentOutputTypeDef(BaseModel): + id: str + metadata: ValidateSolFunctionPackageContentMetadataTypeDef + vnfProductName: str + vnfProvider: str + vnfdId: str + vnfdVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolNetworkPackageOutputTypeDef(BaseModel): + arn: str + id: str + metadata: GetSolNetworkPackageMetadataTypeDef + nsdId: str + nsdName: str + nsdOnboardingState: NsdOnboardingStateType + nsdOperationalState: NsdOperationalStateType + nsdUsageState: NsdUsageStateType + nsdVersion: str + tags: Dict[str, str] + vnfPkgIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutSolNetworkPackageContentOutputTypeDef(BaseModel): + arn: str + id: str + metadata: PutSolNetworkPackageContentMetadataTypeDef + nsdId: str + nsdName: str + nsdVersion: str + vnfPkgIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class ValidateSolNetworkPackageContentOutputTypeDef(BaseModel): + arn: str + id: str + metadata: ValidateSolNetworkPackageContentMetadataTypeDef + nsdId: str + nsdName: str + nsdVersion: str + vnfPkgIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetSolFunctionInstanceOutputTypeDef(BaseModel): + arn: str + id: str + instantiatedVnfInfo: GetSolVnfInfoTypeDef + instantiationState: VnfInstantiationStateType + metadata: GetSolFunctionInstanceMetadataTypeDef + nsInstanceId: str + tags: Dict[str, str] + vnfPkgId: str + vnfProductName: str + vnfProvider: str + vnfdId: str + vnfdVersion: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/tnb_constants.py b/aws_resource_validator/pydantic_models/tnb_constants.py new file mode 100644 index 00000000..5d36edd2 --- /dev/null +++ b/aws_resource_validator/pydantic_models/tnb_constants.py @@ -0,0 +1,431 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DescriptorContentTypeType = Literal["text/plain"] +LcmOperationTypeType = Literal["INSTANTIATE", "TERMINATE", "UPDATE"] +ListSolFunctionInstancesPaginatorName = Literal["list_sol_function_instances"] +ListSolFunctionPackagesPaginatorName = Literal["list_sol_function_packages"] +ListSolNetworkInstancesPaginatorName = Literal["list_sol_network_instances"] +ListSolNetworkOperationsPaginatorName = Literal["list_sol_network_operations"] +ListSolNetworkPackagesPaginatorName = Literal["list_sol_network_packages"] +NsLcmOperationStateType = Literal["CANCELLED", "CANCELLING", "COMPLETED", "FAILED", "PROCESSING"] +NsStateType = Literal["DELETED", + "IMPAIRED", + "INSTANTIATED", + "INSTANTIATE_IN_PROGRESS", + "NOT_INSTANTIATED", + "STOPPED", + "TERMINATE_IN_PROGRESS", + "UPDATE_IN_PROGRESS",] +NsdOnboardingStateType = Literal["CREATED", "ERROR", "ONBOARDED"] +NsdOperationalStateType = Literal["DISABLED", "ENABLED"] +NsdUsageStateType = Literal["IN_USE", "NOT_IN_USE"] +OnboardingStateType = Literal["CREATED", "ERROR", "ONBOARDED"] +OperationalStateType = Literal["DISABLED", "ENABLED"] +PackageContentTypeType = Literal["application/zip"] +TaskStatusType = Literal["CANCELLED", "COMPLETED", "ERROR", "IN_PROGRESS", "SCHEDULED", "SKIPPED", "STARTED"] +UpdateSolNetworkTypeType = Literal["MODIFY_VNF_INFORMATION"] +UsageStateType = Literal["IN_USE", "NOT_IN_USE"] +VnfInstantiationStateType = Literal["INSTANTIATED", "NOT_INSTANTIATED"] +VnfOperationalStateType = Literal["STARTED", "STOPPED"] +TelcoNetworkBuilderServiceName = Literal["tnb"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_sol_function_instances", + "list_sol_function_packages", + "list_sol_network_instances", + "list_sol_network_operations", + "list_sol_network_packages",] +RegionName = Literal["ap-northeast-2", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-south-2", + "eu-west-3", + "sa-east-1", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] diff --git a/aws_resource_validator/pydantic_models/transcribe_classes.py b/aws_resource_validator/pydantic_models/transcribe_classes.py new file mode 100644 index 00000000..ec2cf644 --- /dev/null +++ b/aws_resource_validator/pydantic_models/transcribe_classes.py @@ -0,0 +1,785 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.transcribe_constants import * + +class AbsoluteTimeRangeTypeDef(BaseModel): + StartTime: Optional[int] = None + EndTime: Optional[int] = None + First: Optional[int] = None + Last: Optional[int] = None + +class CallAnalyticsSkippedFeatureTypeDef(BaseModel): + Feature: Optional[Literal["GENERATIVE_SUMMARIZATION"]] = None + ReasonCode: Optional[CallAnalyticsSkippedReasonCodeType] = None + Message: Optional[str] = None + +class ContentRedactionOutputTypeDef(BaseModel): + RedactionType: Literal["PII"] + RedactionOutput: RedactionOutputType + PiiEntityTypes: Optional[List[PiiEntityTypeType]] = None + +class LanguageIdSettingsTypeDef(BaseModel): + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + LanguageModelName: Optional[str] = None + +class SummarizationTypeDef(BaseModel): + GenerateAbstractiveSummary: bool + +class ContentRedactionTypeDef(BaseModel): + RedactionType: Literal["PII"] + RedactionOutput: RedactionOutputType + PiiEntityTypes: Optional[Sequence[PiiEntityTypeType]] = None + +class ChannelDefinitionTypeDef(BaseModel): + ChannelId: Optional[int] = None + ParticipantRole: Optional[ParticipantRoleType] = None + +class MediaTypeDef(BaseModel): + MediaFileUri: Optional[str] = None + RedactedMediaFileUri: Optional[str] = None + +class TranscriptTypeDef(BaseModel): + TranscriptFileUri: Optional[str] = None + RedactedTranscriptFileUri: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class InputDataConfigTypeDef(BaseModel): + S3Uri: str + DataAccessRoleArn: str + TuningDataS3Uri: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class DeleteCallAnalyticsCategoryRequestRequestTypeDef(BaseModel): + CategoryName: str + +class DeleteCallAnalyticsJobRequestRequestTypeDef(BaseModel): + CallAnalyticsJobName: str + +class DeleteLanguageModelRequestRequestTypeDef(BaseModel): + ModelName: str + +class DeleteMedicalScribeJobRequestRequestTypeDef(BaseModel): + MedicalScribeJobName: str + +class DeleteMedicalTranscriptionJobRequestRequestTypeDef(BaseModel): + MedicalTranscriptionJobName: str + +class DeleteMedicalVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + +class DeleteTranscriptionJobRequestRequestTypeDef(BaseModel): + TranscriptionJobName: str + +class DeleteVocabularyFilterRequestRequestTypeDef(BaseModel): + VocabularyFilterName: str + +class DeleteVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + +class DescribeLanguageModelRequestRequestTypeDef(BaseModel): + ModelName: str + +class GetCallAnalyticsCategoryRequestRequestTypeDef(BaseModel): + CategoryName: str + +class GetCallAnalyticsJobRequestRequestTypeDef(BaseModel): + CallAnalyticsJobName: str + +class GetMedicalScribeJobRequestRequestTypeDef(BaseModel): + MedicalScribeJobName: str + +class GetMedicalTranscriptionJobRequestRequestTypeDef(BaseModel): + MedicalTranscriptionJobName: str + +class GetMedicalVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + +class GetTranscriptionJobRequestRequestTypeDef(BaseModel): + TranscriptionJobName: str + +class GetVocabularyFilterRequestRequestTypeDef(BaseModel): + VocabularyFilterName: str + +class GetVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + +class RelativeTimeRangeTypeDef(BaseModel): + StartPercentage: Optional[int] = None + EndPercentage: Optional[int] = None + First: Optional[int] = None + Last: Optional[int] = None + +class JobExecutionSettingsTypeDef(BaseModel): + AllowDeferredExecution: Optional[bool] = None + DataAccessRoleArn: Optional[str] = None + +class LanguageCodeItemTypeDef(BaseModel): + LanguageCode: Optional[LanguageCodeType] = None + DurationInSeconds: Optional[float] = None + +class ListCallAnalyticsCategoriesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCallAnalyticsJobsRequestRequestTypeDef(BaseModel): + Status: Optional[CallAnalyticsJobStatusType] = None + JobNameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListLanguageModelsRequestRequestTypeDef(BaseModel): + StatusEquals: Optional[ModelStatusType] = None + NameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMedicalScribeJobsRequestRequestTypeDef(BaseModel): + Status: Optional[MedicalScribeJobStatusType] = None + JobNameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MedicalScribeJobSummaryTypeDef(BaseModel): + MedicalScribeJobName: Optional[str] = None + CreationTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + LanguageCode: Optional[Literal["en-US"]] = None + MedicalScribeJobStatus: Optional[MedicalScribeJobStatusType] = None + FailureReason: Optional[str] = None + +class ListMedicalTranscriptionJobsRequestRequestTypeDef(BaseModel): + Status: Optional[TranscriptionJobStatusType] = None + JobNameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MedicalTranscriptionJobSummaryTypeDef(BaseModel): + MedicalTranscriptionJobName: Optional[str] = None + CreationTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + LanguageCode: Optional[LanguageCodeType] = None + TranscriptionJobStatus: Optional[TranscriptionJobStatusType] = None + FailureReason: Optional[str] = None + OutputLocationType: Optional[OutputLocationTypeType] = None + Specialty: Optional[Literal["PRIMARYCARE"]] = None + ContentIdentificationType: Optional[Literal["PHI"]] = None + Type: Optional[TypeType] = None + +class ListMedicalVocabulariesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StateEquals: Optional[VocabularyStateType] = None + NameContains: Optional[str] = None + +class VocabularyInfoTypeDef(BaseModel): + VocabularyName: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LastModifiedTime: Optional[datetime] = None + VocabularyState: Optional[VocabularyStateType] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListTranscriptionJobsRequestRequestTypeDef(BaseModel): + Status: Optional[TranscriptionJobStatusType] = None + JobNameContains: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListVocabulariesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + StateEquals: Optional[VocabularyStateType] = None + NameContains: Optional[str] = None + +class ListVocabularyFiltersRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + NameContains: Optional[str] = None + +class VocabularyFilterInfoTypeDef(BaseModel): + VocabularyFilterName: Optional[str] = None + LanguageCode: Optional[LanguageCodeType] = None + LastModifiedTime: Optional[datetime] = None + +class MedicalScribeChannelDefinitionTypeDef(BaseModel): + ChannelId: int + ParticipantRole: MedicalScribeParticipantRoleType + +class MedicalScribeOutputTypeDef(BaseModel): + TranscriptFileUri: str + ClinicalDocumentUri: str + +class MedicalScribeSettingsTypeDef(BaseModel): + ShowSpeakerLabels: Optional[bool] = None + MaxSpeakerLabels: Optional[int] = None + ChannelIdentification: Optional[bool] = None + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + +class MedicalTranscriptTypeDef(BaseModel): + TranscriptFileUri: Optional[str] = None + +class MedicalTranscriptionSettingTypeDef(BaseModel): + ShowSpeakerLabels: Optional[bool] = None + MaxSpeakerLabels: Optional[int] = None + ChannelIdentification: Optional[bool] = None + ShowAlternatives: Optional[bool] = None + MaxAlternatives: Optional[int] = None + VocabularyName: Optional[str] = None + +class ModelSettingsTypeDef(BaseModel): + LanguageModelName: Optional[str] = None + +class SettingsTypeDef(BaseModel): + VocabularyName: Optional[str] = None + ShowSpeakerLabels: Optional[bool] = None + MaxSpeakerLabels: Optional[int] = None + ChannelIdentification: Optional[bool] = None + ShowAlternatives: Optional[bool] = None + MaxAlternatives: Optional[int] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + +class SubtitlesTypeDef(BaseModel): + Formats: Optional[Sequence[SubtitleFormatType]] = None + OutputStartIndex: Optional[int] = None + +class SubtitlesOutputTypeDef(BaseModel): + Formats: Optional[List[SubtitleFormatType]] = None + SubtitleFileUris: Optional[List[str]] = None + OutputStartIndex: Optional[int] = None + +class ToxicityDetectionSettingsOutputTypeDef(BaseModel): + ToxicityCategories: List[Literal["ALL"]] + +class ToxicityDetectionSettingsTypeDef(BaseModel): + ToxicityCategories: Sequence[Literal["ALL"]] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateMedicalVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + VocabularyFileUri: str + +class UpdateVocabularyFilterRequestRequestTypeDef(BaseModel): + VocabularyFilterName: str + Words: Optional[Sequence[str]] = None + VocabularyFilterFileUri: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + +class UpdateVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + Phrases: Optional[Sequence[str]] = None + VocabularyFileUri: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + +class CallAnalyticsJobDetailsTypeDef(BaseModel): + Skipped: Optional[List[CallAnalyticsSkippedFeatureTypeDef]] = None + +class CallAnalyticsJobSettingsOutputTypeDef(BaseModel): + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + LanguageModelName: Optional[str] = None + ContentRedaction: Optional[ContentRedactionOutputTypeDef] = None + LanguageOptions: Optional[List[LanguageCodeType]] = None + LanguageIdSettings: Optional[Dict[LanguageCodeType, LanguageIdSettingsTypeDef]] = None + Summarization: Optional[SummarizationTypeDef] = None + +class CallAnalyticsJobSettingsTypeDef(BaseModel): + VocabularyName: Optional[str] = None + VocabularyFilterName: Optional[str] = None + VocabularyFilterMethod: Optional[VocabularyFilterMethodType] = None + LanguageModelName: Optional[str] = None + ContentRedaction: Optional[ContentRedactionTypeDef] = None + LanguageOptions: Optional[Sequence[LanguageCodeType]] = None + LanguageIdSettings: Optional[Mapping[LanguageCodeType, LanguageIdSettingsTypeDef]] = None + Summarization: Optional[SummarizationTypeDef] = None + +class CreateMedicalVocabularyResponseTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + VocabularyState: VocabularyStateType + LastModifiedTime: datetime + FailureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVocabularyFilterResponseTypeDef(BaseModel): + VocabularyFilterName: str + LanguageCode: LanguageCodeType + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreateVocabularyResponseTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + VocabularyState: VocabularyStateType + LastModifiedTime: datetime + FailureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class GetMedicalVocabularyResponseTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + VocabularyState: VocabularyStateType + LastModifiedTime: datetime + FailureReason: str + DownloadUri: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVocabularyFilterResponseTypeDef(BaseModel): + VocabularyFilterName: str + LanguageCode: LanguageCodeType + LastModifiedTime: datetime + DownloadUri: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetVocabularyResponseTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + VocabularyState: VocabularyStateType + LastModifiedTime: datetime + FailureReason: str + DownloadUri: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateMedicalVocabularyResponseTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + LastModifiedTime: datetime + VocabularyState: VocabularyStateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVocabularyFilterResponseTypeDef(BaseModel): + VocabularyFilterName: str + LanguageCode: LanguageCodeType + LastModifiedTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateVocabularyResponseTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + LastModifiedTime: datetime + VocabularyState: VocabularyStateType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLanguageModelResponseTypeDef(BaseModel): + LanguageCode: CLMLanguageCodeType + BaseModelName: BaseModelNameType + ModelName: str + InputDataConfig: InputDataConfigTypeDef + ModelStatus: ModelStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class LanguageModelTypeDef(BaseModel): + ModelName: Optional[str] = None + CreateTime: Optional[datetime] = None + LastModifiedTime: Optional[datetime] = None + LanguageCode: Optional[CLMLanguageCodeType] = None + BaseModelName: Optional[BaseModelNameType] = None + ModelStatus: Optional[ModelStatusType] = None + UpgradeAvailability: Optional[bool] = None + FailureReason: Optional[str] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + +class CreateLanguageModelRequestRequestTypeDef(BaseModel): + LanguageCode: CLMLanguageCodeType + BaseModelName: BaseModelNameType + ModelName: str + InputDataConfig: InputDataConfigTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateMedicalVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + VocabularyFileUri: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateVocabularyFilterRequestRequestTypeDef(BaseModel): + VocabularyFilterName: str + LanguageCode: LanguageCodeType + Words: Optional[Sequence[str]] = None + VocabularyFilterFileUri: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataAccessRoleArn: Optional[str] = None + +class CreateVocabularyRequestRequestTypeDef(BaseModel): + VocabularyName: str + LanguageCode: LanguageCodeType + Phrases: Optional[Sequence[str]] = None + VocabularyFileUri: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataAccessRoleArn: Optional[str] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + ResourceArn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class InterruptionFilterTypeDef(BaseModel): + Threshold: Optional[int] = None + ParticipantRole: Optional[ParticipantRoleType] = None + AbsoluteTimeRange: Optional[AbsoluteTimeRangeTypeDef] = None + RelativeTimeRange: Optional[RelativeTimeRangeTypeDef] = None + Negate: Optional[bool] = None + +class NonTalkTimeFilterTypeDef(BaseModel): + Threshold: Optional[int] = None + AbsoluteTimeRange: Optional[AbsoluteTimeRangeTypeDef] = None + RelativeTimeRange: Optional[RelativeTimeRangeTypeDef] = None + Negate: Optional[bool] = None + +class SentimentFilterOutputTypeDef(BaseModel): + Sentiments: List[SentimentValueType] + AbsoluteTimeRange: Optional[AbsoluteTimeRangeTypeDef] = None + RelativeTimeRange: Optional[RelativeTimeRangeTypeDef] = None + ParticipantRole: Optional[ParticipantRoleType] = None + Negate: Optional[bool] = None + +class SentimentFilterTypeDef(BaseModel): + Sentiments: Sequence[SentimentValueType] + AbsoluteTimeRange: Optional[AbsoluteTimeRangeTypeDef] = None + RelativeTimeRange: Optional[RelativeTimeRangeTypeDef] = None + ParticipantRole: Optional[ParticipantRoleType] = None + Negate: Optional[bool] = None + +class TranscriptFilterOutputTypeDef(BaseModel): + TranscriptFilterType: Literal["EXACT"] + Targets: List[str] + AbsoluteTimeRange: Optional[AbsoluteTimeRangeTypeDef] = None + RelativeTimeRange: Optional[RelativeTimeRangeTypeDef] = None + ParticipantRole: Optional[ParticipantRoleType] = None + Negate: Optional[bool] = None + +class TranscriptFilterTypeDef(BaseModel): + TranscriptFilterType: Literal["EXACT"] + Targets: Sequence[str] + AbsoluteTimeRange: Optional[AbsoluteTimeRangeTypeDef] = None + RelativeTimeRange: Optional[RelativeTimeRangeTypeDef] = None + ParticipantRole: Optional[ParticipantRoleType] = None + Negate: Optional[bool] = None + +class ListMedicalScribeJobsResponseTypeDef(BaseModel): + Status: MedicalScribeJobStatusType + MedicalScribeJobSummaries: List[MedicalScribeJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMedicalTranscriptionJobsResponseTypeDef(BaseModel): + Status: TranscriptionJobStatusType + MedicalTranscriptionJobSummaries: List[MedicalTranscriptionJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListMedicalVocabulariesResponseTypeDef(BaseModel): + Status: VocabularyStateType + Vocabularies: List[VocabularyInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListVocabulariesResponseTypeDef(BaseModel): + Status: VocabularyStateType + Vocabularies: List[VocabularyInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListVocabularyFiltersResponseTypeDef(BaseModel): + VocabularyFilters: List[VocabularyFilterInfoTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MedicalScribeJobTypeDef(BaseModel): + MedicalScribeJobName: Optional[str] = None + MedicalScribeJobStatus: Optional[MedicalScribeJobStatusType] = None + LanguageCode: Optional[Literal["en-US"]] = None + Media: Optional[MediaTypeDef] = None + MedicalScribeOutput: Optional[MedicalScribeOutputTypeDef] = None + StartTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + FailureReason: Optional[str] = None + Settings: Optional[MedicalScribeSettingsTypeDef] = None + DataAccessRoleArn: Optional[str] = None + ChannelDefinitions: Optional[List[MedicalScribeChannelDefinitionTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + +class StartMedicalScribeJobRequestRequestTypeDef(BaseModel): + MedicalScribeJobName: str + Media: MediaTypeDef + OutputBucketName: str + DataAccessRoleArn: str + Settings: MedicalScribeSettingsTypeDef + OutputEncryptionKMSKeyId: Optional[str] = None + KMSEncryptionContext: Optional[Mapping[str, str]] = None + ChannelDefinitions: Optional[Sequence[MedicalScribeChannelDefinitionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MedicalTranscriptionJobTypeDef(BaseModel): + MedicalTranscriptionJobName: Optional[str] = None + TranscriptionJobStatus: Optional[TranscriptionJobStatusType] = None + LanguageCode: Optional[LanguageCodeType] = None + MediaSampleRateHertz: Optional[int] = None + MediaFormat: Optional[MediaFormatType] = None + Media: Optional[MediaTypeDef] = None + Transcript: Optional[MedicalTranscriptTypeDef] = None + StartTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + FailureReason: Optional[str] = None + Settings: Optional[MedicalTranscriptionSettingTypeDef] = None + ContentIdentificationType: Optional[Literal["PHI"]] = None + Specialty: Optional[Literal["PRIMARYCARE"]] = None + Type: Optional[TypeType] = None + Tags: Optional[List[TagTypeDef]] = None + +class StartMedicalTranscriptionJobRequestRequestTypeDef(BaseModel): + MedicalTranscriptionJobName: str + LanguageCode: LanguageCodeType + Media: MediaTypeDef + OutputBucketName: str + Specialty: Literal["PRIMARYCARE"] + Type: TypeType + MediaSampleRateHertz: Optional[int] = None + MediaFormat: Optional[MediaFormatType] = None + OutputKey: Optional[str] = None + OutputEncryptionKMSKeyId: Optional[str] = None + KMSEncryptionContext: Optional[Mapping[str, str]] = None + Settings: Optional[MedicalTranscriptionSettingTypeDef] = None + ContentIdentificationType: Optional[Literal["PHI"]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TranscriptionJobSummaryTypeDef(BaseModel): + TranscriptionJobName: Optional[str] = None + CreationTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + LanguageCode: Optional[LanguageCodeType] = None + TranscriptionJobStatus: Optional[TranscriptionJobStatusType] = None + FailureReason: Optional[str] = None + OutputLocationType: Optional[OutputLocationTypeType] = None + ContentRedaction: Optional[ContentRedactionOutputTypeDef] = None + ModelSettings: Optional[ModelSettingsTypeDef] = None + IdentifyLanguage: Optional[bool] = None + IdentifyMultipleLanguages: Optional[bool] = None + IdentifiedLanguageScore: Optional[float] = None + LanguageCodes: Optional[List[LanguageCodeItemTypeDef]] = None + ToxicityDetection: Optional[List[ToxicityDetectionSettingsOutputTypeDef]] = None + +class TranscriptionJobTypeDef(BaseModel): + TranscriptionJobName: Optional[str] = None + TranscriptionJobStatus: Optional[TranscriptionJobStatusType] = None + LanguageCode: Optional[LanguageCodeType] = None + MediaSampleRateHertz: Optional[int] = None + MediaFormat: Optional[MediaFormatType] = None + Media: Optional[MediaTypeDef] = None + Transcript: Optional[TranscriptTypeDef] = None + StartTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + FailureReason: Optional[str] = None + Settings: Optional[SettingsTypeDef] = None + ModelSettings: Optional[ModelSettingsTypeDef] = None + JobExecutionSettings: Optional[JobExecutionSettingsTypeDef] = None + ContentRedaction: Optional[ContentRedactionOutputTypeDef] = None + IdentifyLanguage: Optional[bool] = None + IdentifyMultipleLanguages: Optional[bool] = None + LanguageOptions: Optional[List[LanguageCodeType]] = None + IdentifiedLanguageScore: Optional[float] = None + LanguageCodes: Optional[List[LanguageCodeItemTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + Subtitles: Optional[SubtitlesOutputTypeDef] = None + LanguageIdSettings: Optional[Dict[LanguageCodeType, LanguageIdSettingsTypeDef]] = None + ToxicityDetection: Optional[List[ToxicityDetectionSettingsOutputTypeDef]] = None + +class CallAnalyticsJobSummaryTypeDef(BaseModel): + CallAnalyticsJobName: Optional[str] = None + CreationTime: Optional[datetime] = None + StartTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + LanguageCode: Optional[LanguageCodeType] = None + CallAnalyticsJobStatus: Optional[CallAnalyticsJobStatusType] = None + CallAnalyticsJobDetails: Optional[CallAnalyticsJobDetailsTypeDef] = None + FailureReason: Optional[str] = None + +class CallAnalyticsJobTypeDef(BaseModel): + CallAnalyticsJobName: Optional[str] = None + CallAnalyticsJobStatus: Optional[CallAnalyticsJobStatusType] = None + CallAnalyticsJobDetails: Optional[CallAnalyticsJobDetailsTypeDef] = None + LanguageCode: Optional[LanguageCodeType] = None + MediaSampleRateHertz: Optional[int] = None + MediaFormat: Optional[MediaFormatType] = None + Media: Optional[MediaTypeDef] = None + Transcript: Optional[TranscriptTypeDef] = None + StartTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + CompletionTime: Optional[datetime] = None + FailureReason: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + IdentifiedLanguageScore: Optional[float] = None + Settings: Optional[CallAnalyticsJobSettingsOutputTypeDef] = None + ChannelDefinitions: Optional[List[ChannelDefinitionTypeDef]] = None + +class StartCallAnalyticsJobRequestRequestTypeDef(BaseModel): + CallAnalyticsJobName: str + Media: MediaTypeDef + OutputLocation: Optional[str] = None + OutputEncryptionKMSKeyId: Optional[str] = None + DataAccessRoleArn: Optional[str] = None + Settings: Optional[CallAnalyticsJobSettingsTypeDef] = None + ChannelDefinitions: Optional[Sequence[ChannelDefinitionTypeDef]] = None + +class DescribeLanguageModelResponseTypeDef(BaseModel): + LanguageModel: LanguageModelTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLanguageModelsResponseTypeDef(BaseModel): + Models: List[LanguageModelTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class RuleOutputTypeDef(BaseModel): + NonTalkTimeFilter: Optional[NonTalkTimeFilterTypeDef] = None + InterruptionFilter: Optional[InterruptionFilterTypeDef] = None + TranscriptFilter: Optional[TranscriptFilterOutputTypeDef] = None + SentimentFilter: Optional[SentimentFilterOutputTypeDef] = None + +class RuleTypeDef(BaseModel): + NonTalkTimeFilter: Optional[NonTalkTimeFilterTypeDef] = None + InterruptionFilter: Optional[InterruptionFilterTypeDef] = None + TranscriptFilter: Optional[TranscriptFilterTypeDef] = None + SentimentFilter: Optional[SentimentFilterTypeDef] = None + +class GetMedicalScribeJobResponseTypeDef(BaseModel): + MedicalScribeJob: MedicalScribeJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartMedicalScribeJobResponseTypeDef(BaseModel): + MedicalScribeJob: MedicalScribeJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMedicalTranscriptionJobResponseTypeDef(BaseModel): + MedicalTranscriptionJob: MedicalTranscriptionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartMedicalTranscriptionJobResponseTypeDef(BaseModel): + MedicalTranscriptionJob: MedicalTranscriptionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTranscriptionJobsResponseTypeDef(BaseModel): + Status: TranscriptionJobStatusType + TranscriptionJobSummaries: List[TranscriptionJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetTranscriptionJobResponseTypeDef(BaseModel): + TranscriptionJob: TranscriptionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartTranscriptionJobResponseTypeDef(BaseModel): + TranscriptionJob: TranscriptionJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartTranscriptionJobRequestRequestTypeDef(BaseModel): + TranscriptionJobName: str + Media: MediaTypeDef + LanguageCode: Optional[LanguageCodeType] = None + MediaSampleRateHertz: Optional[int] = None + MediaFormat: Optional[MediaFormatType] = None + OutputBucketName: Optional[str] = None + OutputKey: Optional[str] = None + OutputEncryptionKMSKeyId: Optional[str] = None + KMSEncryptionContext: Optional[Mapping[str, str]] = None + Settings: Optional[SettingsTypeDef] = None + ModelSettings: Optional[ModelSettingsTypeDef] = None + JobExecutionSettings: Optional[JobExecutionSettingsTypeDef] = None + ContentRedaction: Optional[ContentRedactionTypeDef] = None + IdentifyLanguage: Optional[bool] = None + IdentifyMultipleLanguages: Optional[bool] = None + LanguageOptions: Optional[Sequence[LanguageCodeType]] = None + Subtitles: Optional[SubtitlesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + LanguageIdSettings: Optional[Mapping[LanguageCodeType, LanguageIdSettingsTypeDef]] = None + ToxicityDetection: Optional[Sequence[ToxicityDetectionSettingsUnionTypeDef]] = None + +class ListCallAnalyticsJobsResponseTypeDef(BaseModel): + Status: CallAnalyticsJobStatusType + CallAnalyticsJobSummaries: List[CallAnalyticsJobSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class GetCallAnalyticsJobResponseTypeDef(BaseModel): + CallAnalyticsJob: CallAnalyticsJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartCallAnalyticsJobResponseTypeDef(BaseModel): + CallAnalyticsJob: CallAnalyticsJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CategoryPropertiesTypeDef(BaseModel): + CategoryName: Optional[str] = None + Rules: Optional[List[RuleOutputTypeDef]] = None + CreateTime: Optional[datetime] = None + LastUpdateTime: Optional[datetime] = None + InputType: Optional[InputTypeType] = None + +class CreateCallAnalyticsCategoryResponseTypeDef(BaseModel): + CategoryProperties: CategoryPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetCallAnalyticsCategoryResponseTypeDef(BaseModel): + CategoryProperties: CategoryPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListCallAnalyticsCategoriesResponseTypeDef(BaseModel): + Categories: List[CategoryPropertiesTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateCallAnalyticsCategoryResponseTypeDef(BaseModel): + CategoryProperties: CategoryPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateCallAnalyticsCategoryRequestRequestTypeDef(BaseModel): + CategoryName: str + Rules: Sequence[RuleUnionTypeDef] + InputType: Optional[InputTypeType] = None + +class UpdateCallAnalyticsCategoryRequestRequestTypeDef(BaseModel): + CategoryName: str + Rules: Sequence[RuleUnionTypeDef] + InputType: Optional[InputTypeType] = None + diff --git a/aws_resource_validator/pydantic_models/transcribe_constants.py b/aws_resource_validator/pydantic_models/transcribe_constants.py new file mode 100644 index 00000000..c5ed2d0e --- /dev/null +++ b/aws_resource_validator/pydantic_models/transcribe_constants.py @@ -0,0 +1,560 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BaseModelNameType = Literal["NarrowBand", "WideBand"] +CLMLanguageCodeType = Literal["de-DE", "en-AU", "en-GB", "en-US", "es-US", "hi-IN", "ja-JP"] +CallAnalyticsFeatureType = Literal["GENERATIVE_SUMMARIZATION"] +CallAnalyticsJobStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "QUEUED"] +CallAnalyticsSkippedReasonCodeType = Literal["FAILED_SAFETY_GUIDELINES", "INSUFFICIENT_CONVERSATION_CONTENT"] +InputTypeType = Literal["POST_CALL", "REAL_TIME"] +LanguageCodeType = Literal["ab-GE", + "af-ZA", + "ar-AE", + "ar-SA", + "ast-ES", + "az-AZ", + "ba-RU", + "be-BY", + "bg-BG", + "bn-IN", + "bs-BA", + "ca-ES", + "ckb-IQ", + "ckb-IR", + "cs-CZ", + "cy-WL", + "da-DK", + "de-CH", + "de-DE", + "el-GR", + "en-AB", + "en-AU", + "en-GB", + "en-IE", + "en-IN", + "en-NZ", + "en-US", + "en-WL", + "en-ZA", + "es-ES", + "es-US", + "et-ET", + "eu-ES", + "fa-IR", + "fi-FI", + "fr-CA", + "fr-FR", + "gl-ES", + "gu-IN", + "ha-NG", + "he-IL", + "hi-IN", + "hr-HR", + "hu-HU", + "hy-AM", + "id-ID", + "is-IS", + "it-IT", + "ja-JP", + "ka-GE", + "kab-DZ", + "kk-KZ", + "kn-IN", + "ko-KR", + "ky-KG", + "lg-IN", + "lt-LT", + "lv-LV", + "mhr-RU", + "mi-NZ", + "mk-MK", + "ml-IN", + "mn-MN", + "mr-IN", + "ms-MY", + "mt-MT", + "nl-NL", + "no-NO", + "or-IN", + "pa-IN", + "pl-PL", + "ps-AF", + "pt-BR", + "pt-PT", + "ro-RO", + "ru-RU", + "rw-RW", + "si-LK", + "sk-SK", + "sl-SI", + "so-SO", + "sr-RS", + "su-ID", + "sv-SE", + "sw-BI", + "sw-KE", + "sw-RW", + "sw-TZ", + "sw-UG", + "ta-IN", + "te-IN", + "th-TH", + "tl-PH", + "tr-TR", + "tt-RU", + "ug-CN", + "uk-UA", + "uz-UZ", + "vi-VN", + "wo-SN", + "zh-CN", + "zh-TW", + "zu-ZA",] +MediaFormatType = Literal["amr", "flac", "m4a", "mp3", "mp4", "ogg", "wav", "webm"] +MedicalContentIdentificationTypeType = Literal["PHI"] +MedicalScribeJobStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "QUEUED"] +MedicalScribeLanguageCodeType = Literal["en-US"] +MedicalScribeParticipantRoleType = Literal["CLINICIAN", "PATIENT"] +ModelStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +OutputLocationTypeType = Literal["CUSTOMER_BUCKET", "SERVICE_BUCKET"] +ParticipantRoleType = Literal["AGENT", "CUSTOMER"] +PiiEntityTypeType = Literal["ADDRESS", + "ALL", + "BANK_ACCOUNT_NUMBER", + "BANK_ROUTING", + "CREDIT_DEBIT_CVV", + "CREDIT_DEBIT_EXPIRY", + "CREDIT_DEBIT_NUMBER", + "EMAIL", + "NAME", + "PHONE", + "PIN", + "SSN",] +RedactionOutputType = Literal["redacted", "redacted_and_unredacted"] +RedactionTypeType = Literal["PII"] +SentimentValueType = Literal["MIXED", "NEGATIVE", "NEUTRAL", "POSITIVE"] +SpecialtyType = Literal["PRIMARYCARE"] +SubtitleFormatType = Literal["srt", "vtt"] +ToxicityCategoryType = Literal["ALL"] +TranscriptFilterTypeType = Literal["EXACT"] +TranscriptionJobStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS", "QUEUED"] +TypeType = Literal["CONVERSATION", "DICTATION"] +VocabularyFilterMethodType = Literal["mask", "remove", "tag"] +VocabularyStateType = Literal["FAILED", "PENDING", "READY"] +TranscribeServiceServiceName = Literal["transcribe"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ContentRedactionUnionTypeDef = Union['ContentRedactionTypeDef', 'ContentRedactionOutputTypeDef'] +ToxicityDetectionSettingsUnionTypeDef = Union[ 'ToxicityDetectionSettingsTypeDef', 'ToxicityDetectionSettingsOutputTypeDef' ] +CallAnalyticsJobSettingsUnionTypeDef = Union[ 'CallAnalyticsJobSettingsTypeDef', 'CallAnalyticsJobSettingsOutputTypeDef' ] +RuleUnionTypeDef = Union['RuleTypeDef', 'RuleOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/transfer_classes.py b/aws_resource_validator/pydantic_models/transfer_classes.py new file mode 100644 index 00000000..6c106047 --- /dev/null +++ b/aws_resource_validator/pydantic_models/transfer_classes.py @@ -0,0 +1,1024 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.transfer_constants import * + +class As2ConnectorConfigTypeDef(BaseModel): + LocalProfileId: Optional[str] = None + PartnerProfileId: Optional[str] = None + MessageSubject: Optional[str] = None + Compression: Optional[CompressionEnumType] = None + EncryptionAlgorithm: Optional[EncryptionAlgType] = None + SigningAlgorithm: Optional[SigningAlgType] = None + MdnSigningAlgorithm: Optional[MdnSigningAlgType] = None + MdnResponse: Optional[MdnResponseType] = None + BasicAuthSecretId: Optional[str] = None + +class HomeDirectoryMapEntryTypeDef(BaseModel): + Entry: str + Target: str + Type: Optional[MapTypeType] = None + +class PosixProfileTypeDef(BaseModel): + Uid: int + Gid: int + SecondaryGids: Optional[Sequence[int]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class SftpConnectorConfigTypeDef(BaseModel): + UserSecretId: Optional[str] = None + TrustedHostKeys: Optional[Sequence[str]] = None + +class EndpointDetailsTypeDef(BaseModel): + AddressAllocationIds: Optional[Sequence[str]] = None + SubnetIds: Optional[Sequence[str]] = None + VpcEndpointId: Optional[str] = None + VpcId: Optional[str] = None + SecurityGroupIds: Optional[Sequence[str]] = None + +class IdentityProviderDetailsTypeDef(BaseModel): + Url: Optional[str] = None + InvocationRole: Optional[str] = None + DirectoryId: Optional[str] = None + Function: Optional[str] = None + SftpAuthenticationMethods: Optional[SftpAuthenticationMethodsType] = None + +class ProtocolDetailsTypeDef(BaseModel): + PassiveIp: Optional[str] = None + TlsSessionResumptionMode: Optional[TlsSessionResumptionModeType] = None + SetStatOption: Optional[SetStatOptionType] = None + As2Transports: Optional[Sequence[Literal["HTTP"]]] = None + +class S3StorageOptionsTypeDef(BaseModel): + DirectoryListingOptimization: Optional[DirectoryListingOptimizationType] = None + +class CustomStepDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Target: Optional[str] = None + TimeoutSeconds: Optional[int] = None + SourceFileLocation: Optional[str] = None + +class DeleteAccessRequestRequestTypeDef(BaseModel): + ServerId: str + ExternalId: str + +class DeleteAgreementRequestRequestTypeDef(BaseModel): + AgreementId: str + ServerId: str + +class DeleteCertificateRequestRequestTypeDef(BaseModel): + CertificateId: str + +class DeleteConnectorRequestRequestTypeDef(BaseModel): + ConnectorId: str + +class DeleteHostKeyRequestRequestTypeDef(BaseModel): + ServerId: str + HostKeyId: str + +class DeleteProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + +class DeleteServerRequestRequestTypeDef(BaseModel): + ServerId: str + +class DeleteSshPublicKeyRequestRequestTypeDef(BaseModel): + ServerId: str + SshPublicKeyId: str + UserName: str + +class DeleteStepDetailsTypeDef(BaseModel): + Name: Optional[str] = None + SourceFileLocation: Optional[str] = None + +class DeleteUserRequestRequestTypeDef(BaseModel): + ServerId: str + UserName: str + +class DeleteWorkflowRequestRequestTypeDef(BaseModel): + WorkflowId: str + +class DescribeAccessRequestRequestTypeDef(BaseModel): + ServerId: str + ExternalId: str + +class DescribeAgreementRequestRequestTypeDef(BaseModel): + AgreementId: str + ServerId: str + +class DescribeCertificateRequestRequestTypeDef(BaseModel): + CertificateId: str + +class DescribeConnectorRequestRequestTypeDef(BaseModel): + ConnectorId: str + +class DescribeExecutionRequestRequestTypeDef(BaseModel): + ExecutionId: str + WorkflowId: str + +class DescribeHostKeyRequestRequestTypeDef(BaseModel): + ServerId: str + HostKeyId: str + +class DescribeProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + +class DescribeSecurityPolicyRequestRequestTypeDef(BaseModel): + SecurityPolicyName: str + +class DescribedSecurityPolicyTypeDef(BaseModel): + SecurityPolicyName: str + Fips: Optional[bool] = None + SshCiphers: Optional[List[str]] = None + SshKexs: Optional[List[str]] = None + SshMacs: Optional[List[str]] = None + TlsCiphers: Optional[List[str]] = None + SshHostKeyAlgorithms: Optional[List[str]] = None + Type: Optional[SecurityPolicyResourceTypeType] = None + Protocols: Optional[List[SecurityPolicyProtocolType]] = None + +class DescribeServerRequestRequestTypeDef(BaseModel): + ServerId: str + +class WaiterConfigTypeDef(BaseModel): + Delay: Optional[int] = None + MaxAttempts: Optional[int] = None + +class DescribeUserRequestRequestTypeDef(BaseModel): + ServerId: str + UserName: str + +class DescribeWorkflowRequestRequestTypeDef(BaseModel): + WorkflowId: str + +class PosixProfileOutputTypeDef(BaseModel): + Uid: int + Gid: int + SecondaryGids: Optional[List[int]] = None + +class SftpConnectorConfigOutputTypeDef(BaseModel): + UserSecretId: Optional[str] = None + TrustedHostKeys: Optional[List[str]] = None + +class LoggingConfigurationTypeDef(BaseModel): + LoggingRole: Optional[str] = None + LogGroupName: Optional[str] = None + +class EndpointDetailsOutputTypeDef(BaseModel): + AddressAllocationIds: Optional[List[str]] = None + SubnetIds: Optional[List[str]] = None + VpcEndpointId: Optional[str] = None + VpcId: Optional[str] = None + SecurityGroupIds: Optional[List[str]] = None + +class ProtocolDetailsOutputTypeDef(BaseModel): + PassiveIp: Optional[str] = None + TlsSessionResumptionMode: Optional[TlsSessionResumptionModeType] = None + SetStatOption: Optional[SetStatOptionType] = None + As2Transports: Optional[List[Literal["HTTP"]]] = None + +class SshPublicKeyTypeDef(BaseModel): + DateImported: datetime + SshPublicKeyBody: str + SshPublicKeyId: str + +class EfsFileLocationTypeDef(BaseModel): + FileSystemId: Optional[str] = None + Path: Optional[str] = None + +class ExecutionErrorTypeDef(BaseModel): + Type: ExecutionErrorTypeType + Message: str + +class S3FileLocationTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + VersionId: Optional[str] = None + Etag: Optional[str] = None + +class ImportSshPublicKeyRequestRequestTypeDef(BaseModel): + ServerId: str + SshPublicKeyBody: str + UserName: str + +class S3InputFileLocationTypeDef(BaseModel): + Bucket: Optional[str] = None + Key: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccessesRequestRequestTypeDef(BaseModel): + ServerId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedAccessTypeDef(BaseModel): + HomeDirectory: Optional[str] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + Role: Optional[str] = None + ExternalId: Optional[str] = None + +class ListAgreementsRequestRequestTypeDef(BaseModel): + ServerId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedAgreementTypeDef(BaseModel): + Arn: Optional[str] = None + AgreementId: Optional[str] = None + Description: Optional[str] = None + Status: Optional[AgreementStatusTypeType] = None + ServerId: Optional[str] = None + LocalProfileId: Optional[str] = None + PartnerProfileId: Optional[str] = None + +class ListCertificatesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedCertificateTypeDef(BaseModel): + Arn: Optional[str] = None + CertificateId: Optional[str] = None + Usage: Optional[CertificateUsageTypeType] = None + Status: Optional[CertificateStatusTypeType] = None + ActiveDate: Optional[datetime] = None + InactiveDate: Optional[datetime] = None + Type: Optional[CertificateTypeType] = None + Description: Optional[str] = None + +class ListConnectorsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedConnectorTypeDef(BaseModel): + Arn: Optional[str] = None + ConnectorId: Optional[str] = None + Url: Optional[str] = None + +class ListExecutionsRequestRequestTypeDef(BaseModel): + WorkflowId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListHostKeysRequestRequestTypeDef(BaseModel): + ServerId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedHostKeyTypeDef(BaseModel): + Arn: str + HostKeyId: Optional[str] = None + Fingerprint: Optional[str] = None + Description: Optional[str] = None + Type: Optional[str] = None + DateImported: Optional[datetime] = None + +class ListProfilesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + ProfileType: Optional[ProfileTypeType] = None + +class ListedProfileTypeDef(BaseModel): + Arn: Optional[str] = None + ProfileId: Optional[str] = None + As2Id: Optional[str] = None + ProfileType: Optional[ProfileTypeType] = None + +class ListSecurityPoliciesRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListServersRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedServerTypeDef(BaseModel): + Arn: str + Domain: Optional[DomainType] = None + IdentityProviderType: Optional[IdentityProviderTypeType] = None + EndpointType: Optional[EndpointTypeType] = None + LoggingRole: Optional[str] = None + ServerId: Optional[str] = None + State: Optional[StateType] = None + UserCount: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + Arn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + ServerId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedUserTypeDef(BaseModel): + Arn: str + HomeDirectory: Optional[str] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + Role: Optional[str] = None + SshPublicKeyCount: Optional[int] = None + UserName: Optional[str] = None + +class ListWorkflowsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListedWorkflowTypeDef(BaseModel): + WorkflowId: Optional[str] = None + Description: Optional[str] = None + Arn: Optional[str] = None + +class S3TagTypeDef(BaseModel): + Key: str + Value: str + +class SendWorkflowStepStateRequestRequestTypeDef(BaseModel): + WorkflowId: str + ExecutionId: str + Token: str + Status: CustomStepStatusType + +class UserDetailsTypeDef(BaseModel): + UserName: str + ServerId: str + SessionId: Optional[str] = None + +class StartDirectoryListingRequestRequestTypeDef(BaseModel): + ConnectorId: str + RemoteDirectoryPath: str + OutputDirectoryPath: str + MaxItems: Optional[int] = None + +class StartFileTransferRequestRequestTypeDef(BaseModel): + ConnectorId: str + SendFilePaths: Optional[Sequence[str]] = None + RetrieveFilePaths: Optional[Sequence[str]] = None + LocalDirectoryPath: Optional[str] = None + RemoteDirectoryPath: Optional[str] = None + +class StartServerRequestRequestTypeDef(BaseModel): + ServerId: str + +class StopServerRequestRequestTypeDef(BaseModel): + ServerId: str + +class TestConnectionRequestRequestTypeDef(BaseModel): + ConnectorId: str + +class TestIdentityProviderRequestRequestTypeDef(BaseModel): + ServerId: str + UserName: str + ServerProtocol: Optional[ProtocolType] = None + SourceIp: Optional[str] = None + UserPassword: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + Arn: str + TagKeys: Sequence[str] + +class UpdateAgreementRequestRequestTypeDef(BaseModel): + AgreementId: str + ServerId: str + Description: Optional[str] = None + Status: Optional[AgreementStatusTypeType] = None + LocalProfileId: Optional[str] = None + PartnerProfileId: Optional[str] = None + BaseDirectory: Optional[str] = None + AccessRole: Optional[str] = None + +class UpdateHostKeyRequestRequestTypeDef(BaseModel): + ServerId: str + HostKeyId: str + Description: str + +class UpdateProfileRequestRequestTypeDef(BaseModel): + ProfileId: str + CertificateIds: Optional[Sequence[str]] = None + +class WorkflowDetailTypeDef(BaseModel): + WorkflowId: str + ExecutionRole: str + +class CreateAccessRequestRequestTypeDef(BaseModel): + Role: str + ServerId: str + ExternalId: str + HomeDirectory: Optional[str] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + HomeDirectoryMappings: Optional[Sequence[HomeDirectoryMapEntryTypeDef]] = None + Policy: Optional[str] = None + PosixProfile: Optional[PosixProfileTypeDef] = None + +class UpdateAccessRequestRequestTypeDef(BaseModel): + ServerId: str + ExternalId: str + HomeDirectory: Optional[str] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + HomeDirectoryMappings: Optional[Sequence[HomeDirectoryMapEntryTypeDef]] = None + Policy: Optional[str] = None + PosixProfile: Optional[PosixProfileTypeDef] = None + Role: Optional[str] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + ServerId: str + UserName: str + HomeDirectory: Optional[str] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + HomeDirectoryMappings: Optional[Sequence[HomeDirectoryMapEntryTypeDef]] = None + Policy: Optional[str] = None + PosixProfile: Optional[PosixProfileTypeDef] = None + Role: Optional[str] = None + +class CreateAccessResponseTypeDef(BaseModel): + ServerId: str + ExternalId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAgreementResponseTypeDef(BaseModel): + AgreementId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectorResponseTypeDef(BaseModel): + ConnectorId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileResponseTypeDef(BaseModel): + ProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServerResponseTypeDef(BaseModel): + ServerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + ServerId: str + UserName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowResponseTypeDef(BaseModel): + WorkflowId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ImportCertificateResponseTypeDef(BaseModel): + CertificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportHostKeyResponseTypeDef(BaseModel): + ServerId: str + HostKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportSshPublicKeyResponseTypeDef(BaseModel): + ServerId: str + SshPublicKeyId: str + UserName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSecurityPoliciesResponseTypeDef(BaseModel): + SecurityPolicyNames: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class StartDirectoryListingResponseTypeDef(BaseModel): + ListingId: str + OutputFileName: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartFileTransferResponseTypeDef(BaseModel): + TransferId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestConnectionResponseTypeDef(BaseModel): + ConnectorId: str + Status: str + StatusMessage: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestIdentityProviderResponseTypeDef(BaseModel): + Response: str + StatusCode: int + Message: str + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessResponseTypeDef(BaseModel): + ServerId: str + ExternalId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAgreementResponseTypeDef(BaseModel): + AgreementId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateCertificateResponseTypeDef(BaseModel): + CertificateId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateConnectorResponseTypeDef(BaseModel): + ConnectorId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateHostKeyResponseTypeDef(BaseModel): + ServerId: str + HostKeyId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfileResponseTypeDef(BaseModel): + ProfileId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServerResponseTypeDef(BaseModel): + ServerId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserResponseTypeDef(BaseModel): + ServerId: str + UserName: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAgreementRequestRequestTypeDef(BaseModel): + ServerId: str + LocalProfileId: str + PartnerProfileId: str + BaseDirectory: str + AccessRole: str + Description: Optional[str] = None + Status: Optional[AgreementStatusTypeType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateProfileRequestRequestTypeDef(BaseModel): + As2Id: str + ProfileType: ProfileTypeType + CertificateIds: Optional[Sequence[str]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + Role: str + ServerId: str + UserName: str + HomeDirectory: Optional[str] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + HomeDirectoryMappings: Optional[Sequence[HomeDirectoryMapEntryTypeDef]] = None + Policy: Optional[str] = None + PosixProfile: Optional[PosixProfileTypeDef] = None + SshPublicKeyBody: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribedAgreementTypeDef(BaseModel): + Arn: str + AgreementId: Optional[str] = None + Description: Optional[str] = None + Status: Optional[AgreementStatusTypeType] = None + ServerId: Optional[str] = None + LocalProfileId: Optional[str] = None + PartnerProfileId: Optional[str] = None + BaseDirectory: Optional[str] = None + AccessRole: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribedCertificateTypeDef(BaseModel): + Arn: str + CertificateId: Optional[str] = None + Usage: Optional[CertificateUsageTypeType] = None + Status: Optional[CertificateStatusTypeType] = None + Certificate: Optional[str] = None + CertificateChain: Optional[str] = None + ActiveDate: Optional[datetime] = None + InactiveDate: Optional[datetime] = None + Serial: Optional[str] = None + NotBeforeDate: Optional[datetime] = None + NotAfterDate: Optional[datetime] = None + Type: Optional[CertificateTypeType] = None + Description: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribedHostKeyTypeDef(BaseModel): + Arn: str + HostKeyId: Optional[str] = None + HostKeyFingerprint: Optional[str] = None + Description: Optional[str] = None + Type: Optional[str] = None + DateImported: Optional[datetime] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribedProfileTypeDef(BaseModel): + Arn: str + ProfileId: Optional[str] = None + ProfileType: Optional[ProfileTypeType] = None + As2Id: Optional[str] = None + CertificateIds: Optional[List[str]] = None + Tags: Optional[List[TagTypeDef]] = None + +class ImportHostKeyRequestRequestTypeDef(BaseModel): + ServerId: str + HostKeyBody: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Arn: str + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + Arn: str + Tags: Sequence[TagTypeDef] + +class CreateConnectorRequestRequestTypeDef(BaseModel): + Url: str + AccessRole: str + As2Config: Optional[As2ConnectorConfigTypeDef] = None + LoggingRole: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + SftpConfig: Optional[SftpConnectorConfigTypeDef] = None + SecurityPolicyName: Optional[str] = None + +class UpdateConnectorRequestRequestTypeDef(BaseModel): + ConnectorId: str + Url: Optional[str] = None + As2Config: Optional[As2ConnectorConfigTypeDef] = None + AccessRole: Optional[str] = None + LoggingRole: Optional[str] = None + SftpConfig: Optional[SftpConnectorConfigTypeDef] = None + SecurityPolicyName: Optional[str] = None + +class DescribeSecurityPolicyResponseTypeDef(BaseModel): + SecurityPolicy: DescribedSecurityPolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeServerRequestServerOfflineWaitTypeDef(BaseModel): + ServerId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribeServerRequestServerOnlineWaitTypeDef(BaseModel): + ServerId: str + WaiterConfig: Optional[WaiterConfigTypeDef] = None + +class DescribedAccessTypeDef(BaseModel): + HomeDirectory: Optional[str] = None + HomeDirectoryMappings: Optional[List[HomeDirectoryMapEntryTypeDef]] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + Policy: Optional[str] = None + PosixProfile: Optional[PosixProfileOutputTypeDef] = None + Role: Optional[str] = None + ExternalId: Optional[str] = None + +class DescribedConnectorTypeDef(BaseModel): + Arn: str + ConnectorId: Optional[str] = None + Url: Optional[str] = None + As2Config: Optional[As2ConnectorConfigTypeDef] = None + AccessRole: Optional[str] = None + LoggingRole: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + SftpConfig: Optional[SftpConnectorConfigOutputTypeDef] = None + ServiceManagedEgressIpAddresses: Optional[List[str]] = None + SecurityPolicyName: Optional[str] = None + +class DescribedUserTypeDef(BaseModel): + Arn: str + HomeDirectory: Optional[str] = None + HomeDirectoryMappings: Optional[List[HomeDirectoryMapEntryTypeDef]] = None + HomeDirectoryType: Optional[HomeDirectoryTypeType] = None + Policy: Optional[str] = None + PosixProfile: Optional[PosixProfileOutputTypeDef] = None + Role: Optional[str] = None + SshPublicKeys: Optional[List[SshPublicKeyTypeDef]] = None + Tags: Optional[List[TagTypeDef]] = None + UserName: Optional[str] = None + +class ExecutionStepResultTypeDef(BaseModel): + StepType: Optional[WorkflowStepTypeType] = None + Outputs: Optional[str] = None + Error: Optional[ExecutionErrorTypeDef] = None + +class FileLocationTypeDef(BaseModel): + S3FileLocation: Optional[S3FileLocationTypeDef] = None + EfsFileLocation: Optional[EfsFileLocationTypeDef] = None + +class ImportCertificateRequestRequestTypeDef(BaseModel): + Usage: CertificateUsageTypeType + Certificate: str + CertificateChain: Optional[str] = None + PrivateKey: Optional[str] = None + ActiveDate: Optional[TimestampTypeDef] = None + InactiveDate: Optional[TimestampTypeDef] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateCertificateRequestRequestTypeDef(BaseModel): + CertificateId: str + ActiveDate: Optional[TimestampTypeDef] = None + InactiveDate: Optional[TimestampTypeDef] = None + Description: Optional[str] = None + +class InputFileLocationTypeDef(BaseModel): + S3FileLocation: Optional[S3InputFileLocationTypeDef] = None + EfsFileLocation: Optional[EfsFileLocationTypeDef] = None + +class ListAccessesRequestListAccessesPaginateTypeDef(BaseModel): + ServerId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAgreementsRequestListAgreementsPaginateTypeDef(BaseModel): + ServerId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListCertificatesRequestListCertificatesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListConnectorsRequestListConnectorsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListExecutionsRequestListExecutionsPaginateTypeDef(BaseModel): + WorkflowId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListProfilesRequestListProfilesPaginateTypeDef(BaseModel): + ProfileType: Optional[ProfileTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSecurityPoliciesRequestListSecurityPoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServersRequestListServersPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + Arn: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + ServerId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWorkflowsRequestListWorkflowsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccessesResponseTypeDef(BaseModel): + ServerId: str + Accesses: List[ListedAccessTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAgreementsResponseTypeDef(BaseModel): + Agreements: List[ListedAgreementTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListCertificatesResponseTypeDef(BaseModel): + Certificates: List[ListedCertificateTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListConnectorsResponseTypeDef(BaseModel): + Connectors: List[ListedConnectorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListHostKeysResponseTypeDef(BaseModel): + ServerId: str + HostKeys: List[ListedHostKeyTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListProfilesResponseTypeDef(BaseModel): + Profiles: List[ListedProfileTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListServersResponseTypeDef(BaseModel): + Servers: List[ListedServerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListUsersResponseTypeDef(BaseModel): + ServerId: str + Users: List[ListedUserTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListWorkflowsResponseTypeDef(BaseModel): + Workflows: List[ListedWorkflowTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class TagStepDetailsOutputTypeDef(BaseModel): + Name: Optional[str] = None + Tags: Optional[List[S3TagTypeDef]] = None + SourceFileLocation: Optional[str] = None + +class TagStepDetailsTypeDef(BaseModel): + Name: Optional[str] = None + Tags: Optional[Sequence[S3TagTypeDef]] = None + SourceFileLocation: Optional[str] = None + +class ServiceMetadataTypeDef(BaseModel): + UserDetails: UserDetailsTypeDef + +class WorkflowDetailsOutputTypeDef(BaseModel): + OnUpload: Optional[List[WorkflowDetailTypeDef]] = None + OnPartialUpload: Optional[List[WorkflowDetailTypeDef]] = None + +class WorkflowDetailsTypeDef(BaseModel): + OnUpload: Optional[Sequence[WorkflowDetailTypeDef]] = None + OnPartialUpload: Optional[Sequence[WorkflowDetailTypeDef]] = None + +class DescribeAgreementResponseTypeDef(BaseModel): + Agreement: DescribedAgreementTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCertificateResponseTypeDef(BaseModel): + Certificate: DescribedCertificateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeHostKeyResponseTypeDef(BaseModel): + HostKey: DescribedHostKeyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeProfileResponseTypeDef(BaseModel): + Profile: DescribedProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccessResponseTypeDef(BaseModel): + ServerId: str + Access: DescribedAccessTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectorResponseTypeDef(BaseModel): + Connector: DescribedConnectorTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserResponseTypeDef(BaseModel): + ServerId: str + User: DescribedUserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ExecutionResultsTypeDef(BaseModel): + Steps: Optional[List[ExecutionStepResultTypeDef]] = None + OnExceptionSteps: Optional[List[ExecutionStepResultTypeDef]] = None + +class CopyStepDetailsTypeDef(BaseModel): + Name: Optional[str] = None + DestinationFileLocation: Optional[InputFileLocationTypeDef] = None + OverwriteExisting: Optional[OverwriteExistingType] = None + SourceFileLocation: Optional[str] = None + +class DecryptStepDetailsTypeDef(BaseModel): + Type: Literal["PGP"] + DestinationFileLocation: InputFileLocationTypeDef + Name: Optional[str] = None + SourceFileLocation: Optional[str] = None + OverwriteExisting: Optional[OverwriteExistingType] = None + +class ListedExecutionTypeDef(BaseModel): + ExecutionId: Optional[str] = None + InitialFileLocation: Optional[FileLocationTypeDef] = None + ServiceMetadata: Optional[ServiceMetadataTypeDef] = None + Status: Optional[ExecutionStatusType] = None + +class DescribedServerTypeDef(BaseModel): + Arn: str + Certificate: Optional[str] = None + ProtocolDetails: Optional[ProtocolDetailsOutputTypeDef] = None + Domain: Optional[DomainType] = None + EndpointDetails: Optional[EndpointDetailsOutputTypeDef] = None + EndpointType: Optional[EndpointTypeType] = None + HostKeyFingerprint: Optional[str] = None + IdentityProviderDetails: Optional[IdentityProviderDetailsTypeDef] = None + IdentityProviderType: Optional[IdentityProviderTypeType] = None + LoggingRole: Optional[str] = None + PostAuthenticationLoginBanner: Optional[str] = None + PreAuthenticationLoginBanner: Optional[str] = None + Protocols: Optional[List[ProtocolType]] = None + SecurityPolicyName: Optional[str] = None + ServerId: Optional[str] = None + State: Optional[StateType] = None + Tags: Optional[List[TagTypeDef]] = None + UserCount: Optional[int] = None + WorkflowDetails: Optional[WorkflowDetailsOutputTypeDef] = None + StructuredLogDestinations: Optional[List[str]] = None + S3StorageOptions: Optional[S3StorageOptionsTypeDef] = None + As2ServiceManagedEgressIpAddresses: Optional[List[str]] = None + +class CreateServerRequestRequestTypeDef(BaseModel): + Certificate: Optional[str] = None + Domain: Optional[DomainType] = None + EndpointDetails: Optional[EndpointDetailsTypeDef] = None + EndpointType: Optional[EndpointTypeType] = None + HostKey: Optional[str] = None + IdentityProviderDetails: Optional[IdentityProviderDetailsTypeDef] = None + IdentityProviderType: Optional[IdentityProviderTypeType] = None + LoggingRole: Optional[str] = None + PostAuthenticationLoginBanner: Optional[str] = None + PreAuthenticationLoginBanner: Optional[str] = None + Protocols: Optional[Sequence[ProtocolType]] = None + ProtocolDetails: Optional[ProtocolDetailsTypeDef] = None + SecurityPolicyName: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + WorkflowDetails: Optional[WorkflowDetailsTypeDef] = None + StructuredLogDestinations: Optional[Sequence[str]] = None + S3StorageOptions: Optional[S3StorageOptionsTypeDef] = None + +class UpdateServerRequestRequestTypeDef(BaseModel): + ServerId: str + Certificate: Optional[str] = None + ProtocolDetails: Optional[ProtocolDetailsTypeDef] = None + EndpointDetails: Optional[EndpointDetailsTypeDef] = None + EndpointType: Optional[EndpointTypeType] = None + HostKey: Optional[str] = None + IdentityProviderDetails: Optional[IdentityProviderDetailsTypeDef] = None + LoggingRole: Optional[str] = None + PostAuthenticationLoginBanner: Optional[str] = None + PreAuthenticationLoginBanner: Optional[str] = None + Protocols: Optional[Sequence[ProtocolType]] = None + SecurityPolicyName: Optional[str] = None + WorkflowDetails: Optional[WorkflowDetailsTypeDef] = None + StructuredLogDestinations: Optional[Sequence[str]] = None + S3StorageOptions: Optional[S3StorageOptionsTypeDef] = None + +class DescribedExecutionTypeDef(BaseModel): + ExecutionId: Optional[str] = None + InitialFileLocation: Optional[FileLocationTypeDef] = None + ServiceMetadata: Optional[ServiceMetadataTypeDef] = None + ExecutionRole: Optional[str] = None + LoggingConfiguration: Optional[LoggingConfigurationTypeDef] = None + PosixProfile: Optional[PosixProfileOutputTypeDef] = None + Status: Optional[ExecutionStatusType] = None + Results: Optional[ExecutionResultsTypeDef] = None + +class WorkflowStepOutputTypeDef(BaseModel): + Type: Optional[WorkflowStepTypeType] = None + CopyStepDetails: Optional[CopyStepDetailsTypeDef] = None + CustomStepDetails: Optional[CustomStepDetailsTypeDef] = None + DeleteStepDetails: Optional[DeleteStepDetailsTypeDef] = None + TagStepDetails: Optional[TagStepDetailsOutputTypeDef] = None + DecryptStepDetails: Optional[DecryptStepDetailsTypeDef] = None + +class WorkflowStepTypeDef(BaseModel): + Type: Optional[WorkflowStepTypeType] = None + CopyStepDetails: Optional[CopyStepDetailsTypeDef] = None + CustomStepDetails: Optional[CustomStepDetailsTypeDef] = None + DeleteStepDetails: Optional[DeleteStepDetailsTypeDef] = None + TagStepDetails: Optional[TagStepDetailsTypeDef] = None + DecryptStepDetails: Optional[DecryptStepDetailsTypeDef] = None + +class ListExecutionsResponseTypeDef(BaseModel): + WorkflowId: str + Executions: List[ListedExecutionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeServerResponseTypeDef(BaseModel): + Server: DescribedServerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeExecutionResponseTypeDef(BaseModel): + WorkflowId: str + Execution: DescribedExecutionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribedWorkflowTypeDef(BaseModel): + Arn: str + Description: Optional[str] = None + Steps: Optional[List[WorkflowStepOutputTypeDef]] = None + OnExceptionSteps: Optional[List[WorkflowStepOutputTypeDef]] = None + WorkflowId: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class DescribeWorkflowResponseTypeDef(BaseModel): + Workflow: DescribedWorkflowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkflowRequestRequestTypeDef(BaseModel): + Steps: Sequence[WorkflowStepUnionTypeDef] + Description: Optional[str] = None + OnExceptionSteps: Optional[Sequence[WorkflowStepUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + diff --git a/aws_resource_validator/pydantic_models/transfer_constants.py b/aws_resource_validator/pydantic_models/transfer_constants.py new file mode 100644 index 00000000..a7d18cd9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/transfer_constants.py @@ -0,0 +1,495 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AgreementStatusTypeType = Literal["ACTIVE", "INACTIVE"] +As2TransportType = Literal["HTTP"] +CertificateStatusTypeType = Literal["ACTIVE", "INACTIVE", "PENDING_ROTATION"] +CertificateTypeType = Literal["CERTIFICATE", "CERTIFICATE_WITH_PRIVATE_KEY"] +CertificateUsageTypeType = Literal["ENCRYPTION", "SIGNING", "TLS"] +CompressionEnumType = Literal["DISABLED", "ZLIB"] +CustomStepStatusType = Literal["FAILURE", "SUCCESS"] +DirectoryListingOptimizationType = Literal["DISABLED", "ENABLED"] +DomainType = Literal["EFS", "S3"] +EncryptionAlgType = Literal["AES128_CBC", "AES192_CBC", "AES256_CBC", "DES_EDE3_CBC", "NONE"] +EncryptionTypeType = Literal["PGP"] +EndpointTypeType = Literal["PUBLIC", "VPC", "VPC_ENDPOINT"] +ExecutionErrorTypeType = Literal["ALREADY_EXISTS", + "BAD_REQUEST", + "CUSTOM_STEP_FAILED", + "INTERNAL_SERVER_ERROR", + "NOT_FOUND", + "PERMISSION_DENIED", + "THROTTLED", + "TIMEOUT",] +ExecutionStatusType = Literal["COMPLETED", "EXCEPTION", "HANDLING_EXCEPTION", "IN_PROGRESS"] +HomeDirectoryTypeType = Literal["LOGICAL", "PATH"] +IdentityProviderTypeType = Literal["API_GATEWAY", "AWS_DIRECTORY_SERVICE", "AWS_LAMBDA", "SERVICE_MANAGED"] +ListAccessesPaginatorName = Literal["list_accesses"] +ListAgreementsPaginatorName = Literal["list_agreements"] +ListCertificatesPaginatorName = Literal["list_certificates"] +ListConnectorsPaginatorName = Literal["list_connectors"] +ListExecutionsPaginatorName = Literal["list_executions"] +ListProfilesPaginatorName = Literal["list_profiles"] +ListSecurityPoliciesPaginatorName = Literal["list_security_policies"] +ListServersPaginatorName = Literal["list_servers"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +ListUsersPaginatorName = Literal["list_users"] +ListWorkflowsPaginatorName = Literal["list_workflows"] +MapTypeType = Literal["DIRECTORY", "FILE"] +MdnResponseType = Literal["NONE", "SYNC"] +MdnSigningAlgType = Literal["DEFAULT", "NONE", "SHA1", "SHA256", "SHA384", "SHA512"] +OverwriteExistingType = Literal["FALSE", "TRUE"] +ProfileTypeType = Literal["LOCAL", "PARTNER"] +ProtocolType = Literal["AS2", "FTP", "FTPS", "SFTP"] +SecurityPolicyProtocolType = Literal["FTPS", "SFTP"] +SecurityPolicyResourceTypeType = Literal["CONNECTOR", "SERVER"] +ServerOfflineWaiterName = Literal["server_offline"] +ServerOnlineWaiterName = Literal["server_online"] +SetStatOptionType = Literal["DEFAULT", "ENABLE_NO_OP"] +SftpAuthenticationMethodsType = Literal["PASSWORD", "PUBLIC_KEY", "PUBLIC_KEY_AND_PASSWORD", "PUBLIC_KEY_OR_PASSWORD"] +SigningAlgType = Literal["NONE", "SHA1", "SHA256", "SHA384", "SHA512"] +StateType = Literal["OFFLINE", "ONLINE", "STARTING", "START_FAILED", "STOPPING", "STOP_FAILED"] +TlsSessionResumptionModeType = Literal["DISABLED", "ENABLED", "ENFORCED"] +WorkflowStepTypeType = Literal["COPY", "CUSTOM", "DECRYPT", "DELETE", "TAG"] +TransferServiceName = Literal["transfer"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_accesses", + "list_agreements", + "list_certificates", + "list_connectors", + "list_executions", + "list_profiles", + "list_security_policies", + "list_servers", + "list_tags_for_resource", + "list_users", + "list_workflows",] +WaiterName = Literal["server_offline", "server_online"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] +PosixProfileUnionTypeDef = Union['PosixProfileTypeDef', 'PosixProfileOutputTypeDef'] +SftpConnectorConfigUnionTypeDef = Union[ 'SftpConnectorConfigTypeDef', 'SftpConnectorConfigOutputTypeDef' ] +EndpointDetailsUnionTypeDef = Union['EndpointDetailsTypeDef', 'EndpointDetailsOutputTypeDef'] +ProtocolDetailsUnionTypeDef = Union['ProtocolDetailsTypeDef', 'ProtocolDetailsOutputTypeDef'] +WorkflowDetailsUnionTypeDef = Union['WorkflowDetailsTypeDef', 'WorkflowDetailsOutputTypeDef'] +WorkflowStepUnionTypeDef = Union['WorkflowStepTypeDef', 'WorkflowStepOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/translate_classes.py b/aws_resource_validator/pydantic_models/translate_classes.py new file mode 100644 index 00000000..852e6dc8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/translate_classes.py @@ -0,0 +1,337 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.translate_constants import * + +class TermTypeDef(BaseModel): + SourceText: Optional[str] = None + TargetText: Optional[str] = None + +class EncryptionKeyTypeDef(BaseModel): + Type: Literal["KMS"] + Id: str + +class ParallelDataConfigTypeDef(BaseModel): + S3Uri: Optional[str] = None + Format: Optional[ParallelDataFormatType] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class DeleteParallelDataRequestRequestTypeDef(BaseModel): + Name: str + +class DeleteTerminologyRequestRequestTypeDef(BaseModel): + Name: str + +class DescribeTextTranslationJobRequestRequestTypeDef(BaseModel): + JobId: str + +class GetParallelDataRequestRequestTypeDef(BaseModel): + Name: str + +class ParallelDataDataLocationTypeDef(BaseModel): + RepositoryType: str + Location: str + +class GetTerminologyRequestRequestTypeDef(BaseModel): + Name: str + TerminologyDataFormat: Optional[TerminologyDataFormatType] = None + +class TerminologyDataLocationTypeDef(BaseModel): + RepositoryType: str + Location: str + +class InputDataConfigTypeDef(BaseModel): + S3Uri: str + ContentType: str + +class JobDetailsTypeDef(BaseModel): + TranslatedDocumentsCount: Optional[int] = None + DocumentsWithErrorsCount: Optional[int] = None + InputDocumentsCount: Optional[int] = None + +class LanguageTypeDef(BaseModel): + LanguageName: str + LanguageCode: str + +class ListLanguagesRequestRequestTypeDef(BaseModel): + DisplayLanguageCode: Optional[DisplayLanguageCodeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListParallelDataRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListTerminologiesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class TranslationSettingsTypeDef(BaseModel): + Formality: Optional[FormalityType] = None + Profanity: Optional[Literal["MASK"]] = None + Brevity: Optional[Literal["ON"]] = None + +class StopTextTranslationJobRequestRequestTypeDef(BaseModel): + JobId: str + +class TranslatedDocumentTypeDef(BaseModel): + Content: bytes + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class AppliedTerminologyTypeDef(BaseModel): + Name: Optional[str] = None + Terms: Optional[List[TermTypeDef]] = None + +class DocumentTypeDef(BaseModel): + Content: BlobTypeDef + ContentType: str + +class TerminologyDataTypeDef(BaseModel): + File: BlobTypeDef + Format: TerminologyDataFormatType + Directionality: Optional[DirectionalityType] = None + +class OutputDataConfigTypeDef(BaseModel): + S3Uri: str + EncryptionKey: Optional[EncryptionKeyTypeDef] = None + +class TerminologyPropertiesTypeDef(BaseModel): + Name: Optional[str] = None + Description: Optional[str] = None + Arn: Optional[str] = None + SourceLanguageCode: Optional[str] = None + TargetLanguageCodes: Optional[List[str]] = None + EncryptionKey: Optional[EncryptionKeyTypeDef] = None + SizeBytes: Optional[int] = None + TermCount: Optional[int] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + Directionality: Optional[DirectionalityType] = None + Message: Optional[str] = None + SkippedTermCount: Optional[int] = None + Format: Optional[TerminologyDataFormatType] = None + +class ParallelDataPropertiesTypeDef(BaseModel): + Name: Optional[str] = None + Arn: Optional[str] = None + Description: Optional[str] = None + Status: Optional[ParallelDataStatusType] = None + SourceLanguageCode: Optional[str] = None + TargetLanguageCodes: Optional[List[str]] = None + ParallelDataConfig: Optional[ParallelDataConfigTypeDef] = None + Message: Optional[str] = None + ImportedDataSize: Optional[int] = None + ImportedRecordCount: Optional[int] = None + FailedRecordCount: Optional[int] = None + SkippedRecordCount: Optional[int] = None + EncryptionKey: Optional[EncryptionKeyTypeDef] = None + CreatedAt: Optional[datetime] = None + LastUpdatedAt: Optional[datetime] = None + LatestUpdateAttemptStatus: Optional[ParallelDataStatusType] = None + LatestUpdateAttemptAt: Optional[datetime] = None + +class UpdateParallelDataRequestRequestTypeDef(BaseModel): + Name: str + ParallelDataConfig: ParallelDataConfigTypeDef + ClientToken: str + Description: Optional[str] = None + +class CreateParallelDataRequestRequestTypeDef(BaseModel): + Name: str + ParallelDataConfig: ParallelDataConfigTypeDef + ClientToken: str + Description: Optional[str] = None + EncryptionKey: Optional[EncryptionKeyTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateParallelDataResponseTypeDef(BaseModel): + Name: str + Status: ParallelDataStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteParallelDataResponseTypeDef(BaseModel): + Name: str + Status: ParallelDataStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartTextTranslationJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class StopTextTranslationJobResponseTypeDef(BaseModel): + JobId: str + JobStatus: JobStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateParallelDataResponseTypeDef(BaseModel): + Name: str + Status: ParallelDataStatusType + LatestUpdateAttemptStatus: ParallelDataStatusType + LatestUpdateAttemptAt: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListLanguagesResponseTypeDef(BaseModel): + Languages: List[LanguageTypeDef] + DisplayLanguageCode: DisplayLanguageCodeType + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTerminologiesRequestListTerminologiesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class TranslateTextRequestRequestTypeDef(BaseModel): + Text: str + SourceLanguageCode: str + TargetLanguageCode: str + TerminologyNames: Optional[Sequence[str]] = None + Settings: Optional[TranslationSettingsTypeDef] = None + +class TextTranslationJobFilterTypeDef(BaseModel): + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + SubmittedBeforeTime: Optional[TimestampTypeDef] = None + SubmittedAfterTime: Optional[TimestampTypeDef] = None + +class TranslateDocumentResponseTypeDef(BaseModel): + TranslatedDocument: TranslatedDocumentTypeDef + SourceLanguageCode: str + TargetLanguageCode: str + AppliedTerminologies: List[AppliedTerminologyTypeDef] + AppliedSettings: TranslationSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TranslateTextResponseTypeDef(BaseModel): + TranslatedText: str + SourceLanguageCode: str + TargetLanguageCode: str + AppliedTerminologies: List[AppliedTerminologyTypeDef] + AppliedSettings: TranslationSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class TranslateDocumentRequestRequestTypeDef(BaseModel): + Document: DocumentTypeDef + SourceLanguageCode: str + TargetLanguageCode: str + TerminologyNames: Optional[Sequence[str]] = None + Settings: Optional[TranslationSettingsTypeDef] = None + +class ImportTerminologyRequestRequestTypeDef(BaseModel): + Name: str + MergeStrategy: Literal["OVERWRITE"] + TerminologyData: TerminologyDataTypeDef + Description: Optional[str] = None + EncryptionKey: Optional[EncryptionKeyTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class StartTextTranslationJobRequestRequestTypeDef(BaseModel): + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + DataAccessRoleArn: str + SourceLanguageCode: str + TargetLanguageCodes: Sequence[str] + ClientToken: str + JobName: Optional[str] = None + TerminologyNames: Optional[Sequence[str]] = None + ParallelDataNames: Optional[Sequence[str]] = None + Settings: Optional[TranslationSettingsTypeDef] = None + +class TextTranslationJobPropertiesTypeDef(BaseModel): + JobId: Optional[str] = None + JobName: Optional[str] = None + JobStatus: Optional[JobStatusType] = None + JobDetails: Optional[JobDetailsTypeDef] = None + SourceLanguageCode: Optional[str] = None + TargetLanguageCodes: Optional[List[str]] = None + TerminologyNames: Optional[List[str]] = None + ParallelDataNames: Optional[List[str]] = None + Message: Optional[str] = None + SubmittedTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + DataAccessRoleArn: Optional[str] = None + Settings: Optional[TranslationSettingsTypeDef] = None + +class GetTerminologyResponseTypeDef(BaseModel): + TerminologyProperties: TerminologyPropertiesTypeDef + TerminologyDataLocation: TerminologyDataLocationTypeDef + AuxiliaryDataLocation: TerminologyDataLocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportTerminologyResponseTypeDef(BaseModel): + TerminologyProperties: TerminologyPropertiesTypeDef + AuxiliaryDataLocation: TerminologyDataLocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTerminologiesResponseTypeDef(BaseModel): + TerminologyPropertiesList: List[TerminologyPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetParallelDataResponseTypeDef(BaseModel): + ParallelDataProperties: ParallelDataPropertiesTypeDef + DataLocation: ParallelDataDataLocationTypeDef + AuxiliaryDataLocation: ParallelDataDataLocationTypeDef + LatestUpdateAttemptAuxiliaryDataLocation: ParallelDataDataLocationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListParallelDataResponseTypeDef(BaseModel): + ParallelDataPropertiesList: List[ParallelDataPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTextTranslationJobsRequestRequestTypeDef(BaseModel): + Filter: Optional[TextTranslationJobFilterTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeTextTranslationJobResponseTypeDef(BaseModel): + TextTranslationJobProperties: TextTranslationJobPropertiesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTextTranslationJobsResponseTypeDef(BaseModel): + TextTranslationJobPropertiesList: List[TextTranslationJobPropertiesTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/translate_constants.py b/aws_resource_validator/pydantic_models/translate_constants.py new file mode 100644 index 00000000..e5723c98 --- /dev/null +++ b/aws_resource_validator/pydantic_models/translate_constants.py @@ -0,0 +1,425 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BrevityType = Literal["ON"] +DirectionalityType = Literal["MULTI", "UNI"] +DisplayLanguageCodeType = Literal["de", "en", "es", "fr", "it", "ja", "ko", "pt", "zh", "zh-TW"] +EncryptionKeyTypeType = Literal["KMS"] +FormalityType = Literal["FORMAL", "INFORMAL"] +JobStatusType = Literal["COMPLETED", + "COMPLETED_WITH_ERROR", + "FAILED", + "IN_PROGRESS", + "STOPPED", + "STOP_REQUESTED", + "SUBMITTED",] +ListTerminologiesPaginatorName = Literal["list_terminologies"] +MergeStrategyType = Literal["OVERWRITE"] +ParallelDataFormatType = Literal["CSV", "TMX", "TSV"] +ParallelDataStatusType = Literal["ACTIVE", "CREATING", "DELETING", "FAILED", "UPDATING"] +ProfanityType = Literal["MASK"] +TerminologyDataFormatType = Literal["CSV", "TMX", "TSV"] +TranslateServiceName = Literal["translate"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_terminologies"] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/trustedadvisor_classes.py b/aws_resource_validator/pydantic_models/trustedadvisor_classes.py new file mode 100644 index 00000000..75e51eaf --- /dev/null +++ b/aws_resource_validator/pydantic_models/trustedadvisor_classes.py @@ -0,0 +1,337 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.trustedadvisor_constants import * + +class AccountRecommendationLifecycleSummaryTypeDef(BaseModel): + accountId: Optional[str] = None + accountRecommendationArn: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleStage: Optional[RecommendationLifecycleStageType] = None + updateReason: Optional[str] = None + updateReasonCode: Optional[UpdateRecommendationLifecycleStageReasonCodeType] = None + updatedOnBehalfOf: Optional[str] = None + updatedOnBehalfOfJobTitle: Optional[str] = None + +class RecommendationResourceExclusionTypeDef(BaseModel): + arn: str + isExcluded: bool + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class UpdateRecommendationResourceExclusionErrorTypeDef(BaseModel): + arn: Optional[str] = None + errorCode: Optional[str] = None + errorMessage: Optional[str] = None + +class CheckSummaryTypeDef(BaseModel): + arn: str + awsServices: List[str] + description: str + id: str + metadata: Dict[str, str] + name: str + pillars: List[RecommendationPillarType] + source: RecommendationSourceType + +class GetOrganizationRecommendationRequestRequestTypeDef(BaseModel): + organizationRecommendationIdentifier: str + +class GetRecommendationRequestRequestTypeDef(BaseModel): + recommendationIdentifier: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListChecksRequestRequestTypeDef(BaseModel): + awsService: Optional[str] = None + language: Optional[RecommendationLanguageType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + pillar: Optional[RecommendationPillarType] = None + source: Optional[RecommendationSourceType] = None + +class ListOrganizationRecommendationAccountsRequestRequestTypeDef(BaseModel): + organizationRecommendationIdentifier: str + affectedAccountId: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListOrganizationRecommendationResourcesRequestRequestTypeDef(BaseModel): + organizationRecommendationIdentifier: str + affectedAccountId: Optional[str] = None + exclusionStatus: Optional[ExclusionStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + regionCode: Optional[str] = None + status: Optional[ResourceStatusType] = None + +class OrganizationRecommendationResourceSummaryTypeDef(BaseModel): + arn: str + awsResourceId: str + id: str + lastUpdatedAt: datetime + metadata: Dict[str, str] + recommendationArn: str + regionCode: str + status: ResourceStatusType + accountId: Optional[str] = None + exclusionStatus: Optional[ExclusionStatusType] = None + +class ListRecommendationResourcesRequestRequestTypeDef(BaseModel): + recommendationIdentifier: str + exclusionStatus: Optional[ExclusionStatusType] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + regionCode: Optional[str] = None + status: Optional[ResourceStatusType] = None + +class RecommendationResourceSummaryTypeDef(BaseModel): + arn: str + awsResourceId: str + id: str + lastUpdatedAt: datetime + metadata: Dict[str, str] + recommendationArn: str + regionCode: str + status: ResourceStatusType + exclusionStatus: Optional[ExclusionStatusType] = None + +class RecommendationResourcesAggregatesTypeDef(BaseModel): + errorCount: int + okCount: int + warningCount: int + +class RecommendationCostOptimizingAggregatesTypeDef(BaseModel): + estimatedMonthlySavings: float + estimatedPercentMonthlySavings: float + +class UpdateOrganizationRecommendationLifecycleRequestRequestTypeDef(BaseModel): + lifecycleStage: UpdateRecommendationLifecycleStageType + organizationRecommendationIdentifier: str + updateReason: Optional[str] = None + updateReasonCode: Optional[UpdateRecommendationLifecycleStageReasonCodeType] = None + +class UpdateRecommendationLifecycleRequestRequestTypeDef(BaseModel): + lifecycleStage: UpdateRecommendationLifecycleStageType + recommendationIdentifier: str + updateReason: Optional[str] = None + updateReasonCode: Optional[UpdateRecommendationLifecycleStageReasonCodeType] = None + +class BatchUpdateRecommendationResourceExclusionRequestRequestTypeDef(BaseModel): + recommendationResourceExclusions: Sequence[RecommendationResourceExclusionTypeDef] + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationRecommendationAccountsResponseTypeDef(BaseModel): + accountRecommendationLifecycleSummaries: List[ AccountRecommendationLifecycleSummaryTypeDef ] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateRecommendationResourceExclusionResponseTypeDef(BaseModel): + batchUpdateRecommendationResourceExclusionErrors: List[ UpdateRecommendationResourceExclusionErrorTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class ListChecksResponseTypeDef(BaseModel): + checkSummaries: List[CheckSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListChecksRequestListChecksPaginateTypeDef(BaseModel): + awsService: Optional[str] = None + language: Optional[RecommendationLanguageType] = None + pillar: Optional[RecommendationPillarType] = None + source: Optional[RecommendationSourceType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationRecommendationAccountsRequestListOrganizationRecommendationAccountsPaginateTypeDef(BaseModel): + organizationRecommendationIdentifier: str + affectedAccountId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationRecommendationResourcesRequestListOrganizationRecommendationResourcesPaginateTypeDef(BaseModel): + organizationRecommendationIdentifier: str + affectedAccountId: Optional[str] = None + exclusionStatus: Optional[ExclusionStatusType] = None + regionCode: Optional[str] = None + status: Optional[ResourceStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationResourcesRequestListRecommendationResourcesPaginateTypeDef(BaseModel): + recommendationIdentifier: str + exclusionStatus: Optional[ExclusionStatusType] = None + regionCode: Optional[str] = None + status: Optional[ResourceStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationRecommendationResourcesResponseTypeDef(BaseModel): + nextToken: str + organizationRecommendationResourceSummaries: List[ OrganizationRecommendationResourceSummaryTypeDef ] + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationRecommendationsRequestListOrganizationRecommendationsPaginateTypeDef(BaseModel): + afterLastUpdatedAt: Optional[TimestampTypeDef] = None + awsService: Optional[str] = None + beforeLastUpdatedAt: Optional[TimestampTypeDef] = None + checkIdentifier: Optional[str] = None + pillar: Optional[RecommendationPillarType] = None + source: Optional[RecommendationSourceType] = None + status: Optional[RecommendationStatusType] = None + type: Optional[RecommendationTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationRecommendationsRequestRequestTypeDef(BaseModel): + afterLastUpdatedAt: Optional[TimestampTypeDef] = None + awsService: Optional[str] = None + beforeLastUpdatedAt: Optional[TimestampTypeDef] = None + checkIdentifier: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + pillar: Optional[RecommendationPillarType] = None + source: Optional[RecommendationSourceType] = None + status: Optional[RecommendationStatusType] = None + type: Optional[RecommendationTypeType] = None + +class ListRecommendationsRequestListRecommendationsPaginateTypeDef(BaseModel): + afterLastUpdatedAt: Optional[TimestampTypeDef] = None + awsService: Optional[str] = None + beforeLastUpdatedAt: Optional[TimestampTypeDef] = None + checkIdentifier: Optional[str] = None + pillar: Optional[RecommendationPillarType] = None + source: Optional[RecommendationSourceType] = None + status: Optional[RecommendationStatusType] = None + type: Optional[RecommendationTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRecommendationsRequestRequestTypeDef(BaseModel): + afterLastUpdatedAt: Optional[TimestampTypeDef] = None + awsService: Optional[str] = None + beforeLastUpdatedAt: Optional[TimestampTypeDef] = None + checkIdentifier: Optional[str] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + pillar: Optional[RecommendationPillarType] = None + source: Optional[RecommendationSourceType] = None + status: Optional[RecommendationStatusType] = None + type: Optional[RecommendationTypeType] = None + +class ListRecommendationResourcesResponseTypeDef(BaseModel): + nextToken: str + recommendationResourceSummaries: List[RecommendationResourceSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationPillarSpecificAggregatesTypeDef(BaseModel): + costOptimizing: Optional[RecommendationCostOptimizingAggregatesTypeDef] = None + +class OrganizationRecommendationSummaryTypeDef(BaseModel): + arn: str + id: str + name: str + pillars: List[RecommendationPillarType] + resourcesAggregates: RecommendationResourcesAggregatesTypeDef + source: RecommendationSourceType + status: RecommendationStatusType + type: RecommendationTypeType + awsServices: Optional[List[str]] = None + checkArn: Optional[str] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleStage: Optional[RecommendationLifecycleStageType] = None + pillarSpecificAggregates: Optional[RecommendationPillarSpecificAggregatesTypeDef] = None + +class OrganizationRecommendationTypeDef(BaseModel): + arn: str + description: str + id: str + name: str + pillars: List[RecommendationPillarType] + resourcesAggregates: RecommendationResourcesAggregatesTypeDef + source: RecommendationSourceType + status: RecommendationStatusType + type: RecommendationTypeType + awsServices: Optional[List[str]] = None + checkArn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleStage: Optional[RecommendationLifecycleStageType] = None + pillarSpecificAggregates: Optional[RecommendationPillarSpecificAggregatesTypeDef] = None + resolvedAt: Optional[datetime] = None + updateReason: Optional[str] = None + updateReasonCode: Optional[UpdateRecommendationLifecycleStageReasonCodeType] = None + updatedOnBehalfOf: Optional[str] = None + updatedOnBehalfOfJobTitle: Optional[str] = None + +class RecommendationSummaryTypeDef(BaseModel): + arn: str + id: str + name: str + pillars: List[RecommendationPillarType] + resourcesAggregates: RecommendationResourcesAggregatesTypeDef + source: RecommendationSourceType + status: RecommendationStatusType + type: RecommendationTypeType + awsServices: Optional[List[str]] = None + checkArn: Optional[str] = None + createdAt: Optional[datetime] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleStage: Optional[RecommendationLifecycleStageType] = None + pillarSpecificAggregates: Optional[RecommendationPillarSpecificAggregatesTypeDef] = None + +class RecommendationTypeDef(BaseModel): + arn: str + description: str + id: str + name: str + pillars: List[RecommendationPillarType] + resourcesAggregates: RecommendationResourcesAggregatesTypeDef + source: RecommendationSourceType + status: RecommendationStatusType + type: RecommendationTypeType + awsServices: Optional[List[str]] = None + checkArn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + lifecycleStage: Optional[RecommendationLifecycleStageType] = None + pillarSpecificAggregates: Optional[RecommendationPillarSpecificAggregatesTypeDef] = None + resolvedAt: Optional[datetime] = None + updateReason: Optional[str] = None + updateReasonCode: Optional[UpdateRecommendationLifecycleStageReasonCodeType] = None + updatedOnBehalfOf: Optional[str] = None + updatedOnBehalfOfJobTitle: Optional[str] = None + +class ListOrganizationRecommendationsResponseTypeDef(BaseModel): + nextToken: str + organizationRecommendationSummaries: List[OrganizationRecommendationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetOrganizationRecommendationResponseTypeDef(BaseModel): + organizationRecommendation: OrganizationRecommendationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRecommendationsResponseTypeDef(BaseModel): + nextToken: str + recommendationSummaries: List[RecommendationSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationResponseTypeDef(BaseModel): + recommendation: RecommendationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/trustedadvisor_constants.py b/aws_resource_validator/pydantic_models/trustedadvisor_constants.py new file mode 100644 index 00000000..b7b5dfac --- /dev/null +++ b/aws_resource_validator/pydantic_models/trustedadvisor_constants.py @@ -0,0 +1,443 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ExclusionStatusType = Literal["excluded", "included"] +ListChecksPaginatorName = Literal["list_checks"] +ListOrganizationRecommendationAccountsPaginatorName = Literal["list_organization_recommendation_accounts"] +ListOrganizationRecommendationResourcesPaginatorName = Literal["list_organization_recommendation_resources"] +ListOrganizationRecommendationsPaginatorName = Literal["list_organization_recommendations"] +ListRecommendationResourcesPaginatorName = Literal["list_recommendation_resources"] +ListRecommendationsPaginatorName = Literal["list_recommendations"] +RecommendationLanguageType = Literal["de", "en", "es", "fr", "id", "it", "ja", "ko", "pt_BR", "zh", "zh_TW"] +RecommendationLifecycleStageType = Literal["dismissed", "in_progress", "pending_response", "resolved"] +RecommendationPillarType = Literal["cost_optimizing", + "fault_tolerance", + "operational_excellence", + "performance", + "security", + "service_limits",] +RecommendationSourceType = Literal["aws_config", + "compute_optimizer", + "cost_explorer", + "lse", + "manual", + "pse", + "rds", + "resilience", + "resilience_hub", + "security_hub", + "stir", + "ta_check", + "well_architected",] +RecommendationStatusType = Literal["error", "ok", "warning"] +RecommendationTypeType = Literal["priority", "standard"] +ResourceStatusType = Literal["error", "ok", "warning"] +UpdateRecommendationLifecycleStageReasonCodeType = Literal["low_priority", + "non_critical_account", + "not_applicable", + "other", + "other_methods_available", + "temporary_account", + "valid_business_case",] +UpdateRecommendationLifecycleStageType = Literal["dismissed", "in_progress", "pending_response", "resolved"] +TrustedAdvisorPublicAPIServiceName = Literal["trustedadvisor"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_checks", + "list_organization_recommendation_accounts", + "list_organization_recommendation_resources", + "list_organization_recommendations", + "list_recommendation_resources", + "list_recommendations",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/verifiedpermissions_classes.py b/aws_resource_validator/pydantic_models/verifiedpermissions_classes.py new file mode 100644 index 00000000..25cb92f4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/verifiedpermissions_classes.py @@ -0,0 +1,664 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.verifiedpermissions_constants import * + +class ActionIdentifierTypeDef(BaseModel): + actionType: str + actionId: str + +class EntityIdentifierTypeDef(BaseModel): + entityType: str + entityId: str + +class ContextDefinitionOutputTypeDef(BaseModel): + contextMap: Optional[Dict[str, "AttributeValueOutputTypeDef"]] = None + +class ContextDefinitionTypeDef(BaseModel): + contextMap: Optional[Mapping[str, "AttributeValueTypeDef"]] = None + +class DeterminingPolicyItemTypeDef(BaseModel): + policyId: str + +class EvaluationErrorItemTypeDef(BaseModel): + errorDescription: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CognitoGroupConfigurationDetailTypeDef(BaseModel): + groupEntityType: Optional[str] = None + +class CognitoGroupConfigurationItemTypeDef(BaseModel): + groupEntityType: Optional[str] = None + +class CognitoGroupConfigurationTypeDef(BaseModel): + groupEntityType: str + +class ValidationSettingsTypeDef(BaseModel): + mode: ValidationModeType + +class CreatePolicyTemplateInputRequestTypeDef(BaseModel): + policyStoreId: str + statement: str + clientToken: Optional[str] = None + description: Optional[str] = None + +class DeleteIdentitySourceInputRequestTypeDef(BaseModel): + policyStoreId: str + identitySourceId: str + +class DeletePolicyInputRequestTypeDef(BaseModel): + policyStoreId: str + policyId: str + +class DeletePolicyStoreInputRequestTypeDef(BaseModel): + policyStoreId: str + +class DeletePolicyTemplateInputRequestTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + +class GetIdentitySourceInputRequestTypeDef(BaseModel): + policyStoreId: str + identitySourceId: str + +class IdentitySourceDetailsTypeDef(BaseModel): + clientIds: Optional[List[str]] = None + userPoolArn: Optional[str] = None + discoveryUrl: Optional[str] = None + openIdIssuer: Optional[Literal["COGNITO"]] = None + +class GetPolicyInputRequestTypeDef(BaseModel): + policyStoreId: str + policyId: str + +class GetPolicyStoreInputRequestTypeDef(BaseModel): + policyStoreId: str + +class GetPolicyTemplateInputRequestTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + +class GetSchemaInputRequestTypeDef(BaseModel): + policyStoreId: str + +class IdentitySourceFilterTypeDef(BaseModel): + principalEntityType: Optional[str] = None + +class IdentitySourceItemDetailsTypeDef(BaseModel): + clientIds: Optional[List[str]] = None + userPoolArn: Optional[str] = None + discoveryUrl: Optional[str] = None + openIdIssuer: Optional[Literal["COGNITO"]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListPolicyStoresInputRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PolicyStoreItemTypeDef(BaseModel): + policyStoreId: str + arn: str + createdDate: datetime + lastUpdatedDate: Optional[datetime] = None + description: Optional[str] = None + +class ListPolicyTemplatesInputRequestTypeDef(BaseModel): + policyStoreId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class PolicyTemplateItemTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + createdDate: datetime + lastUpdatedDate: datetime + description: Optional[str] = None + +class OpenIdConnectAccessTokenConfigurationDetailTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + audiences: Optional[List[str]] = None + +class OpenIdConnectAccessTokenConfigurationItemTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + audiences: Optional[List[str]] = None + +class OpenIdConnectAccessTokenConfigurationTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + audiences: Optional[Sequence[str]] = None + +class OpenIdConnectGroupConfigurationDetailTypeDef(BaseModel): + groupClaim: str + groupEntityType: str + +class OpenIdConnectGroupConfigurationItemTypeDef(BaseModel): + groupClaim: str + groupEntityType: str + +class OpenIdConnectGroupConfigurationTypeDef(BaseModel): + groupClaim: str + groupEntityType: str + +class OpenIdConnectIdentityTokenConfigurationDetailTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + clientIds: Optional[List[str]] = None + +class OpenIdConnectIdentityTokenConfigurationItemTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + clientIds: Optional[List[str]] = None + +class OpenIdConnectIdentityTokenConfigurationTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + clientIds: Optional[Sequence[str]] = None + +class StaticPolicyDefinitionDetailTypeDef(BaseModel): + statement: str + description: Optional[str] = None + +class StaticPolicyDefinitionItemTypeDef(BaseModel): + description: Optional[str] = None + +class StaticPolicyDefinitionTypeDef(BaseModel): + statement: str + description: Optional[str] = None + +class SchemaDefinitionTypeDef(BaseModel): + cedarJson: Optional[str] = None + +class UpdateCognitoGroupConfigurationTypeDef(BaseModel): + groupEntityType: str + +class UpdateOpenIdConnectAccessTokenConfigurationTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + audiences: Optional[Sequence[str]] = None + +class UpdateOpenIdConnectGroupConfigurationTypeDef(BaseModel): + groupClaim: str + groupEntityType: str + +class UpdateOpenIdConnectIdentityTokenConfigurationTypeDef(BaseModel): + principalIdClaim: Optional[str] = None + clientIds: Optional[Sequence[str]] = None + +class UpdateStaticPolicyDefinitionTypeDef(BaseModel): + statement: str + description: Optional[str] = None + +class UpdatePolicyTemplateInputRequestTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + statement: str + description: Optional[str] = None + +class AttributeValueOutputTypeDef(BaseModel): + boolean: Optional[bool] = None + entityIdentifier: Optional[EntityIdentifierTypeDef] = None + long: Optional[int] = None + string: Optional[str] = None + set: Optional[List[Dict[str, Any]]] = None + record: Optional[Dict[str, Dict[str, Any]]] = None + +class AttributeValueTypeDef(BaseModel): + boolean: Optional[bool] = None + entityIdentifier: Optional[EntityIdentifierTypeDef] = None + long: Optional[int] = None + string: Optional[str] = None + set: Optional[Sequence[Dict[str, Any]]] = None + record: Optional[Mapping[str, Dict[str, Any]]] = None + +class EntityItemTypeDef(BaseModel): + identifier: EntityIdentifierTypeDef + attributes: Optional[Mapping[str, "AttributeValueTypeDef"]] = None + parents: Optional[Sequence[EntityIdentifierTypeDef]] = None + +class EntityReferenceTypeDef(BaseModel): + unspecified: Optional[bool] = None + identifier: Optional[EntityIdentifierTypeDef] = None + +class TemplateLinkedPolicyDefinitionDetailTypeDef(BaseModel): + policyTemplateId: str + principal: Optional[EntityIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + +class TemplateLinkedPolicyDefinitionItemTypeDef(BaseModel): + policyTemplateId: str + principal: Optional[EntityIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + +class TemplateLinkedPolicyDefinitionTypeDef(BaseModel): + policyTemplateId: str + principal: Optional[EntityIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + +class BatchIsAuthorizedInputItemOutputTypeDef(BaseModel): + principal: Optional[EntityIdentifierTypeDef] = None + action: Optional[ActionIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + context: Optional[ContextDefinitionOutputTypeDef] = None + +class BatchIsAuthorizedWithTokenInputItemOutputTypeDef(BaseModel): + action: Optional[ActionIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + context: Optional[ContextDefinitionOutputTypeDef] = None + +class BatchIsAuthorizedInputItemTypeDef(BaseModel): + principal: Optional[EntityIdentifierTypeDef] = None + action: Optional[ActionIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + context: Optional[ContextDefinitionTypeDef] = None + +class BatchIsAuthorizedWithTokenInputItemTypeDef(BaseModel): + action: Optional[ActionIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + context: Optional[ContextDefinitionTypeDef] = None + +class CreateIdentitySourceOutputTypeDef(BaseModel): + createdDate: datetime + identitySourceId: str + lastUpdatedDate: datetime + policyStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePolicyOutputTypeDef(BaseModel): + policyStoreId: str + policyId: str + policyType: PolicyTypeType + principal: EntityIdentifierTypeDef + resource: EntityIdentifierTypeDef + actions: List[ActionIdentifierTypeDef] + createdDate: datetime + lastUpdatedDate: datetime + effect: PolicyEffectType + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePolicyStoreOutputTypeDef(BaseModel): + policyStoreId: str + arn: str + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePolicyTemplateOutputTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPolicyTemplateOutputTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + description: str + statement: str + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetSchemaOutputTypeDef(BaseModel): + policyStoreId: str + schema: str + createdDate: datetime + lastUpdatedDate: datetime + namespaces: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class IsAuthorizedOutputTypeDef(BaseModel): + decision: DecisionType + determiningPolicies: List[DeterminingPolicyItemTypeDef] + errors: List[EvaluationErrorItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class IsAuthorizedWithTokenOutputTypeDef(BaseModel): + decision: DecisionType + determiningPolicies: List[DeterminingPolicyItemTypeDef] + errors: List[EvaluationErrorItemTypeDef] + principal: EntityIdentifierTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutSchemaOutputTypeDef(BaseModel): + policyStoreId: str + namespaces: List[str] + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdentitySourceOutputTypeDef(BaseModel): + createdDate: datetime + identitySourceId: str + lastUpdatedDate: datetime + policyStoreId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePolicyOutputTypeDef(BaseModel): + policyStoreId: str + policyId: str + policyType: PolicyTypeType + principal: EntityIdentifierTypeDef + resource: EntityIdentifierTypeDef + actions: List[ActionIdentifierTypeDef] + createdDate: datetime + lastUpdatedDate: datetime + effect: PolicyEffectType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePolicyStoreOutputTypeDef(BaseModel): + policyStoreId: str + arn: str + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePolicyTemplateOutputTypeDef(BaseModel): + policyStoreId: str + policyTemplateId: str + createdDate: datetime + lastUpdatedDate: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class CognitoUserPoolConfigurationDetailTypeDef(BaseModel): + userPoolArn: str + clientIds: List[str] + issuer: str + groupConfiguration: Optional[CognitoGroupConfigurationDetailTypeDef] = None + +class CognitoUserPoolConfigurationItemTypeDef(BaseModel): + userPoolArn: str + clientIds: List[str] + issuer: str + groupConfiguration: Optional[CognitoGroupConfigurationItemTypeDef] = None + +class CognitoUserPoolConfigurationTypeDef(BaseModel): + userPoolArn: str + clientIds: Optional[Sequence[str]] = None + groupConfiguration: Optional[CognitoGroupConfigurationTypeDef] = None + +class CreatePolicyStoreInputRequestTypeDef(BaseModel): + validationSettings: ValidationSettingsTypeDef + clientToken: Optional[str] = None + description: Optional[str] = None + +class GetPolicyStoreOutputTypeDef(BaseModel): + policyStoreId: str + arn: str + validationSettings: ValidationSettingsTypeDef + createdDate: datetime + lastUpdatedDate: datetime + description: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePolicyStoreInputRequestTypeDef(BaseModel): + policyStoreId: str + validationSettings: ValidationSettingsTypeDef + description: Optional[str] = None + +class ListIdentitySourcesInputRequestTypeDef(BaseModel): + policyStoreId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filters: Optional[Sequence[IdentitySourceFilterTypeDef]] = None + +class ListIdentitySourcesInputListIdentitySourcesPaginateTypeDef(BaseModel): + policyStoreId: str + filters: Optional[Sequence[IdentitySourceFilterTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyStoresInputListPolicyStoresPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyTemplatesInputListPolicyTemplatesPaginateTypeDef(BaseModel): + policyStoreId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPolicyStoresOutputTypeDef(BaseModel): + nextToken: str + policyStores: List[PolicyStoreItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListPolicyTemplatesOutputTypeDef(BaseModel): + nextToken: str + policyTemplates: List[PolicyTemplateItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class OpenIdConnectTokenSelectionDetailTypeDef(BaseModel): + accessTokenOnly: Optional[OpenIdConnectAccessTokenConfigurationDetailTypeDef] = None + identityTokenOnly: Optional[OpenIdConnectIdentityTokenConfigurationDetailTypeDef] = None + +class OpenIdConnectTokenSelectionItemTypeDef(BaseModel): + accessTokenOnly: Optional[OpenIdConnectAccessTokenConfigurationItemTypeDef] = None + identityTokenOnly: Optional[OpenIdConnectIdentityTokenConfigurationItemTypeDef] = None + +class OpenIdConnectTokenSelectionTypeDef(BaseModel): + accessTokenOnly: Optional[OpenIdConnectAccessTokenConfigurationTypeDef] = None + identityTokenOnly: Optional[OpenIdConnectIdentityTokenConfigurationTypeDef] = None + +class PutSchemaInputRequestTypeDef(BaseModel): + policyStoreId: str + definition: SchemaDefinitionTypeDef + +class UpdateCognitoUserPoolConfigurationTypeDef(BaseModel): + userPoolArn: str + clientIds: Optional[Sequence[str]] = None + groupConfiguration: Optional[UpdateCognitoGroupConfigurationTypeDef] = None + +class UpdateOpenIdConnectTokenSelectionTypeDef(BaseModel): + accessTokenOnly: Optional[UpdateOpenIdConnectAccessTokenConfigurationTypeDef] = None + identityTokenOnly: Optional[UpdateOpenIdConnectIdentityTokenConfigurationTypeDef] = None + +class UpdatePolicyDefinitionTypeDef(BaseModel): + static: Optional[UpdateStaticPolicyDefinitionTypeDef] = None + +class EntitiesDefinitionTypeDef(BaseModel): + entityList: Optional[Sequence[EntityItemTypeDef]] = None + +class PolicyFilterTypeDef(BaseModel): + principal: Optional[EntityReferenceTypeDef] = None + resource: Optional[EntityReferenceTypeDef] = None + policyType: Optional[PolicyTypeType] = None + policyTemplateId: Optional[str] = None + +class PolicyDefinitionDetailTypeDef(BaseModel): + static: Optional[StaticPolicyDefinitionDetailTypeDef] = None + templateLinked: Optional[TemplateLinkedPolicyDefinitionDetailTypeDef] = None + +class PolicyDefinitionItemTypeDef(BaseModel): + static: Optional[StaticPolicyDefinitionItemTypeDef] = None + templateLinked: Optional[TemplateLinkedPolicyDefinitionItemTypeDef] = None + +class PolicyDefinitionTypeDef(BaseModel): + static: Optional[StaticPolicyDefinitionTypeDef] = None + templateLinked: Optional[TemplateLinkedPolicyDefinitionTypeDef] = None + +class BatchIsAuthorizedOutputItemTypeDef(BaseModel): + request: BatchIsAuthorizedInputItemOutputTypeDef + decision: DecisionType + determiningPolicies: List[DeterminingPolicyItemTypeDef] + errors: List[EvaluationErrorItemTypeDef] + +class BatchIsAuthorizedWithTokenOutputItemTypeDef(BaseModel): + request: BatchIsAuthorizedWithTokenInputItemOutputTypeDef + decision: DecisionType + determiningPolicies: List[DeterminingPolicyItemTypeDef] + errors: List[EvaluationErrorItemTypeDef] + +class OpenIdConnectConfigurationDetailTypeDef(BaseModel): + issuer: str + tokenSelection: OpenIdConnectTokenSelectionDetailTypeDef + entityIdPrefix: Optional[str] = None + groupConfiguration: Optional[OpenIdConnectGroupConfigurationDetailTypeDef] = None + +class OpenIdConnectConfigurationItemTypeDef(BaseModel): + issuer: str + tokenSelection: OpenIdConnectTokenSelectionItemTypeDef + entityIdPrefix: Optional[str] = None + groupConfiguration: Optional[OpenIdConnectGroupConfigurationItemTypeDef] = None + +class OpenIdConnectConfigurationTypeDef(BaseModel): + issuer: str + tokenSelection: OpenIdConnectTokenSelectionTypeDef + entityIdPrefix: Optional[str] = None + groupConfiguration: Optional[OpenIdConnectGroupConfigurationTypeDef] = None + +class UpdateOpenIdConnectConfigurationTypeDef(BaseModel): + issuer: str + tokenSelection: UpdateOpenIdConnectTokenSelectionTypeDef + entityIdPrefix: Optional[str] = None + groupConfiguration: Optional[UpdateOpenIdConnectGroupConfigurationTypeDef] = None + +class UpdatePolicyInputRequestTypeDef(BaseModel): + policyStoreId: str + policyId: str + definition: UpdatePolicyDefinitionTypeDef + +class IsAuthorizedInputRequestTypeDef(BaseModel): + policyStoreId: str + principal: Optional[EntityIdentifierTypeDef] = None + action: Optional[ActionIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + context: Optional[ContextDefinitionTypeDef] = None + entities: Optional[EntitiesDefinitionTypeDef] = None + +class IsAuthorizedWithTokenInputRequestTypeDef(BaseModel): + policyStoreId: str + identityToken: Optional[str] = None + accessToken: Optional[str] = None + action: Optional[ActionIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + context: Optional[ContextDefinitionTypeDef] = None + entities: Optional[EntitiesDefinitionTypeDef] = None + +class ListPoliciesInputListPoliciesPaginateTypeDef(BaseModel): + policyStoreId: str + filter: Optional[PolicyFilterTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListPoliciesInputRequestTypeDef(BaseModel): + policyStoreId: str + nextToken: Optional[str] = None + maxResults: Optional[int] = None + filter: Optional[PolicyFilterTypeDef] = None + +class GetPolicyOutputTypeDef(BaseModel): + policyStoreId: str + policyId: str + policyType: PolicyTypeType + principal: EntityIdentifierTypeDef + resource: EntityIdentifierTypeDef + actions: List[ActionIdentifierTypeDef] + definition: PolicyDefinitionDetailTypeDef + createdDate: datetime + lastUpdatedDate: datetime + effect: PolicyEffectType + ResponseMetadata: ResponseMetadataTypeDef + +class PolicyItemTypeDef(BaseModel): + policyStoreId: str + policyId: str + policyType: PolicyTypeType + definition: PolicyDefinitionItemTypeDef + createdDate: datetime + lastUpdatedDate: datetime + principal: Optional[EntityIdentifierTypeDef] = None + resource: Optional[EntityIdentifierTypeDef] = None + actions: Optional[List[ActionIdentifierTypeDef]] = None + effect: Optional[PolicyEffectType] = None + +class CreatePolicyInputRequestTypeDef(BaseModel): + policyStoreId: str + definition: PolicyDefinitionTypeDef + clientToken: Optional[str] = None + +class BatchIsAuthorizedOutputTypeDef(BaseModel): + results: List[BatchIsAuthorizedOutputItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchIsAuthorizedWithTokenOutputTypeDef(BaseModel): + principal: EntityIdentifierTypeDef + results: List[BatchIsAuthorizedWithTokenOutputItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchIsAuthorizedInputRequestTypeDef(BaseModel): + policyStoreId: str + requests: Sequence[BatchIsAuthorizedInputItemUnionTypeDef] + entities: Optional[EntitiesDefinitionTypeDef] = None + +class BatchIsAuthorizedWithTokenInputRequestTypeDef(BaseModel): + policyStoreId: str + requests: Sequence[BatchIsAuthorizedWithTokenInputItemUnionTypeDef] + identityToken: Optional[str] = None + accessToken: Optional[str] = None + entities: Optional[EntitiesDefinitionTypeDef] = None + +class ConfigurationDetailTypeDef(BaseModel): + cognitoUserPoolConfiguration: Optional[CognitoUserPoolConfigurationDetailTypeDef] = None + openIdConnectConfiguration: Optional[OpenIdConnectConfigurationDetailTypeDef] = None + +class ConfigurationItemTypeDef(BaseModel): + cognitoUserPoolConfiguration: Optional[CognitoUserPoolConfigurationItemTypeDef] = None + openIdConnectConfiguration: Optional[OpenIdConnectConfigurationItemTypeDef] = None + +class ConfigurationTypeDef(BaseModel): + cognitoUserPoolConfiguration: Optional[CognitoUserPoolConfigurationTypeDef] = None + openIdConnectConfiguration: Optional[OpenIdConnectConfigurationTypeDef] = None + +class UpdateConfigurationTypeDef(BaseModel): + cognitoUserPoolConfiguration: Optional[UpdateCognitoUserPoolConfigurationTypeDef] = None + openIdConnectConfiguration: Optional[UpdateOpenIdConnectConfigurationTypeDef] = None + +class ListPoliciesOutputTypeDef(BaseModel): + nextToken: str + policies: List[PolicyItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetIdentitySourceOutputTypeDef(BaseModel): + createdDate: datetime + details: IdentitySourceDetailsTypeDef + identitySourceId: str + lastUpdatedDate: datetime + policyStoreId: str + principalEntityType: str + configuration: ConfigurationDetailTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class IdentitySourceItemTypeDef(BaseModel): + createdDate: datetime + identitySourceId: str + lastUpdatedDate: datetime + policyStoreId: str + principalEntityType: str + details: Optional[IdentitySourceItemDetailsTypeDef] = None + configuration: Optional[ConfigurationItemTypeDef] = None + +class CreateIdentitySourceInputRequestTypeDef(BaseModel): + policyStoreId: str + configuration: ConfigurationTypeDef + clientToken: Optional[str] = None + principalEntityType: Optional[str] = None + +class UpdateIdentitySourceInputRequestTypeDef(BaseModel): + policyStoreId: str + identitySourceId: str + updateConfiguration: UpdateConfigurationTypeDef + principalEntityType: Optional[str] = None + +class ListIdentitySourcesOutputTypeDef(BaseModel): + nextToken: str + identitySources: List[IdentitySourceItemTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/verifiedpermissions_constants.py b/aws_resource_validator/pydantic_models/verifiedpermissions_constants.py new file mode 100644 index 00000000..50bf0904 --- /dev/null +++ b/aws_resource_validator/pydantic_models/verifiedpermissions_constants.py @@ -0,0 +1,439 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +DecisionType = Literal["ALLOW", "DENY"] +ListIdentitySourcesPaginatorName = Literal["list_identity_sources"] +ListPoliciesPaginatorName = Literal["list_policies"] +ListPolicyStoresPaginatorName = Literal["list_policy_stores"] +ListPolicyTemplatesPaginatorName = Literal["list_policy_templates"] +OpenIdIssuerType = Literal["COGNITO"] +PolicyEffectType = Literal["Forbid", "Permit"] +PolicyTypeType = Literal["STATIC", "TEMPLATE_LINKED"] +ValidationModeType = Literal["OFF", "STRICT"] +VerifiedPermissionsServiceName = Literal["verifiedpermissions"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_identity_sources", "list_policies", "list_policy_stores", "list_policy_templates"] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +ContextDefinitionUnionTypeDef = Union['ContextDefinitionTypeDef', 'ContextDefinitionOutputTypeDef'] +BatchIsAuthorizedInputItemUnionTypeDef = Union[ 'BatchIsAuthorizedInputItemTypeDef', 'BatchIsAuthorizedInputItemOutputTypeDef' ] +BatchIsAuthorizedWithTokenInputItemUnionTypeDef = Union[ 'BatchIsAuthorizedWithTokenInputItemTypeDef', 'BatchIsAuthorizedWithTokenInputItemOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/voice_id_classes.py b/aws_resource_validator/pydantic_models/voice_id_classes.py new file mode 100644 index 00000000..ddd64304 --- /dev/null +++ b/aws_resource_validator/pydantic_models/voice_id_classes.py @@ -0,0 +1,499 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.voice_id_constants import * + +class AssociateFraudsterRequestRequestTypeDef(BaseModel): + DomainId: str + FraudsterId: str + WatchlistId: str + +class FraudsterTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DomainId: Optional[str] = None + GeneratedFraudsterId: Optional[str] = None + WatchlistIds: Optional[List[str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AuthenticationConfigurationTypeDef(BaseModel): + AcceptanceThreshold: int + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + KmsKeyId: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateWatchlistRequestRequestTypeDef(BaseModel): + DomainId: str + Name: str + ClientToken: Optional[str] = None + Description: Optional[str] = None + +class WatchlistTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DefaultWatchlist: Optional[bool] = None + Description: Optional[str] = None + DomainId: Optional[str] = None + Name: Optional[str] = None + UpdatedAt: Optional[datetime] = None + WatchlistId: Optional[str] = None + +class DeleteDomainRequestRequestTypeDef(BaseModel): + DomainId: str + +class DeleteFraudsterRequestRequestTypeDef(BaseModel): + DomainId: str + FraudsterId: str + +class DeleteSpeakerRequestRequestTypeDef(BaseModel): + DomainId: str + SpeakerId: str + +class DeleteWatchlistRequestRequestTypeDef(BaseModel): + DomainId: str + WatchlistId: str + +class DescribeDomainRequestRequestTypeDef(BaseModel): + DomainId: str + +class DescribeFraudsterRegistrationJobRequestRequestTypeDef(BaseModel): + DomainId: str + JobId: str + +class DescribeFraudsterRequestRequestTypeDef(BaseModel): + DomainId: str + FraudsterId: str + +class DescribeSpeakerEnrollmentJobRequestRequestTypeDef(BaseModel): + DomainId: str + JobId: str + +class DescribeSpeakerRequestRequestTypeDef(BaseModel): + DomainId: str + SpeakerId: str + +class SpeakerTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + CustomerSpeakerId: Optional[str] = None + DomainId: Optional[str] = None + GeneratedSpeakerId: Optional[str] = None + LastAccessedAt: Optional[datetime] = None + Status: Optional[SpeakerStatusType] = None + UpdatedAt: Optional[datetime] = None + +class DescribeWatchlistRequestRequestTypeDef(BaseModel): + DomainId: str + WatchlistId: str + +class DisassociateFraudsterRequestRequestTypeDef(BaseModel): + DomainId: str + FraudsterId: str + WatchlistId: str + +class ServerSideEncryptionUpdateDetailsTypeDef(BaseModel): + Message: Optional[str] = None + OldKmsKeyId: Optional[str] = None + UpdateStatus: Optional[ServerSideEncryptionUpdateStatusType] = None + +class WatchlistDetailsTypeDef(BaseModel): + DefaultWatchlistId: str + +class EnrollmentJobFraudDetectionConfigTypeDef(BaseModel): + FraudDetectionAction: Optional[FraudDetectionActionType] = None + RiskThreshold: Optional[int] = None + WatchlistIds: Optional[List[str]] = None + +class EvaluateSessionRequestRequestTypeDef(BaseModel): + DomainId: str + SessionNameOrId: str + +class FailureDetailsTypeDef(BaseModel): + Message: Optional[str] = None + StatusCode: Optional[int] = None + +class FraudDetectionConfigurationTypeDef(BaseModel): + RiskThreshold: Optional[int] = None + WatchlistId: Optional[str] = None + +class KnownFraudsterRiskTypeDef(BaseModel): + RiskScore: int + GeneratedFraudsterId: Optional[str] = None + +class VoiceSpoofingRiskTypeDef(BaseModel): + RiskScore: int + +class JobProgressTypeDef(BaseModel): + PercentComplete: Optional[int] = None + +class InputDataConfigTypeDef(BaseModel): + S3Uri: str + +class OutputDataConfigTypeDef(BaseModel): + S3Uri: str + KmsKeyId: Optional[str] = None + +class RegistrationConfigTypeDef(BaseModel): + DuplicateRegistrationAction: Optional[DuplicateRegistrationActionType] = None + FraudsterSimilarityThreshold: Optional[int] = None + WatchlistIds: Optional[List[str]] = None + +class FraudsterSummaryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DomainId: Optional[str] = None + GeneratedFraudsterId: Optional[str] = None + WatchlistIds: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFraudsterRegistrationJobsRequestRequestTypeDef(BaseModel): + DomainId: str + JobStatus: Optional[FraudsterRegistrationJobStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListFraudstersRequestRequestTypeDef(BaseModel): + DomainId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + WatchlistId: Optional[str] = None + +class ListSpeakerEnrollmentJobsRequestRequestTypeDef(BaseModel): + DomainId: str + JobStatus: Optional[SpeakerEnrollmentJobStatusType] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListSpeakersRequestRequestTypeDef(BaseModel): + DomainId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class SpeakerSummaryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + CustomerSpeakerId: Optional[str] = None + DomainId: Optional[str] = None + GeneratedSpeakerId: Optional[str] = None + LastAccessedAt: Optional[datetime] = None + Status: Optional[SpeakerStatusType] = None + UpdatedAt: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListWatchlistsRequestRequestTypeDef(BaseModel): + DomainId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class WatchlistSummaryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DefaultWatchlist: Optional[bool] = None + Description: Optional[str] = None + DomainId: Optional[str] = None + Name: Optional[str] = None + UpdatedAt: Optional[datetime] = None + WatchlistId: Optional[str] = None + +class OptOutSpeakerRequestRequestTypeDef(BaseModel): + DomainId: str + SpeakerId: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateWatchlistRequestRequestTypeDef(BaseModel): + DomainId: str + WatchlistId: str + Description: Optional[str] = None + Name: Optional[str] = None + +class AssociateFraudsterResponseTypeDef(BaseModel): + Fraudster: FraudsterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFraudsterResponseTypeDef(BaseModel): + Fraudster: FraudsterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateFraudsterResponseTypeDef(BaseModel): + Fraudster: FraudsterTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class AuthenticationResultTypeDef(BaseModel): + AudioAggregationEndedAt: Optional[datetime] = None + AudioAggregationStartedAt: Optional[datetime] = None + AuthenticationResultId: Optional[str] = None + Configuration: Optional[AuthenticationConfigurationTypeDef] = None + CustomerSpeakerId: Optional[str] = None + Decision: Optional[AuthenticationDecisionType] = None + GeneratedSpeakerId: Optional[str] = None + Score: Optional[int] = None + +class UpdateDomainRequestRequestTypeDef(BaseModel): + DomainId: str + Name: str + ServerSideEncryptionConfiguration: ServerSideEncryptionConfigurationTypeDef + Description: Optional[str] = None + +class CreateDomainRequestRequestTypeDef(BaseModel): + Name: str + ServerSideEncryptionConfiguration: ServerSideEncryptionConfigurationTypeDef + ClientToken: Optional[str] = None + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Sequence[TagTypeDef] + +class CreateWatchlistResponseTypeDef(BaseModel): + Watchlist: WatchlistTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWatchlistResponseTypeDef(BaseModel): + Watchlist: WatchlistTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWatchlistResponseTypeDef(BaseModel): + Watchlist: WatchlistTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSpeakerResponseTypeDef(BaseModel): + Speaker: SpeakerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class OptOutSpeakerResponseTypeDef(BaseModel): + Speaker: SpeakerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DomainSummaryTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Description: Optional[str] = None + DomainId: Optional[str] = None + DomainStatus: Optional[DomainStatusType] = None + Name: Optional[str] = None + ServerSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + ServerSideEncryptionUpdateDetails: Optional[ServerSideEncryptionUpdateDetailsTypeDef] = None + UpdatedAt: Optional[datetime] = None + WatchlistDetails: Optional[WatchlistDetailsTypeDef] = None + +class DomainTypeDef(BaseModel): + Arn: Optional[str] = None + CreatedAt: Optional[datetime] = None + Description: Optional[str] = None + DomainId: Optional[str] = None + DomainStatus: Optional[DomainStatusType] = None + Name: Optional[str] = None + ServerSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + ServerSideEncryptionUpdateDetails: Optional[ServerSideEncryptionUpdateDetailsTypeDef] = None + UpdatedAt: Optional[datetime] = None + WatchlistDetails: Optional[WatchlistDetailsTypeDef] = None + +class EnrollmentConfigTypeDef(BaseModel): + ExistingEnrollmentAction: Optional[ExistingEnrollmentActionType] = None + FraudDetectionConfig: Optional[EnrollmentJobFraudDetectionConfigTypeDef] = None + +class FraudRiskDetailsTypeDef(BaseModel): + KnownFraudsterRisk: KnownFraudsterRiskTypeDef + VoiceSpoofingRisk: VoiceSpoofingRiskTypeDef + +class FraudsterRegistrationJobSummaryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DomainId: Optional[str] = None + EndedAt: Optional[datetime] = None + FailureDetails: Optional[FailureDetailsTypeDef] = None + JobId: Optional[str] = None + JobName: Optional[str] = None + JobProgress: Optional[JobProgressTypeDef] = None + JobStatus: Optional[FraudsterRegistrationJobStatusType] = None + +class SpeakerEnrollmentJobSummaryTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DomainId: Optional[str] = None + EndedAt: Optional[datetime] = None + FailureDetails: Optional[FailureDetailsTypeDef] = None + JobId: Optional[str] = None + JobName: Optional[str] = None + JobProgress: Optional[JobProgressTypeDef] = None + JobStatus: Optional[SpeakerEnrollmentJobStatusType] = None + +class FraudsterRegistrationJobTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DataAccessRoleArn: Optional[str] = None + DomainId: Optional[str] = None + EndedAt: Optional[datetime] = None + FailureDetails: Optional[FailureDetailsTypeDef] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + JobId: Optional[str] = None + JobName: Optional[str] = None + JobProgress: Optional[JobProgressTypeDef] = None + JobStatus: Optional[FraudsterRegistrationJobStatusType] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + RegistrationConfig: Optional[RegistrationConfigTypeDef] = None + +class StartFraudsterRegistrationJobRequestRequestTypeDef(BaseModel): + DataAccessRoleArn: str + DomainId: str + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + ClientToken: Optional[str] = None + JobName: Optional[str] = None + RegistrationConfig: Optional[RegistrationConfigTypeDef] = None + +class ListFraudstersResponseTypeDef(BaseModel): + FraudsterSummaries: List[FraudsterSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsRequestListDomainsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFraudsterRegistrationJobsRequestListFraudsterRegistrationJobsPaginateTypeDef(BaseModel): + DomainId: str + JobStatus: Optional[FraudsterRegistrationJobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListFraudstersRequestListFraudstersPaginateTypeDef(BaseModel): + DomainId: str + WatchlistId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpeakerEnrollmentJobsRequestListSpeakerEnrollmentJobsPaginateTypeDef(BaseModel): + DomainId: str + JobStatus: Optional[SpeakerEnrollmentJobStatusType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpeakersRequestListSpeakersPaginateTypeDef(BaseModel): + DomainId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWatchlistsRequestListWatchlistsPaginateTypeDef(BaseModel): + DomainId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSpeakersResponseTypeDef(BaseModel): + NextToken: str + SpeakerSummaries: List[SpeakerSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWatchlistsResponseTypeDef(BaseModel): + NextToken: str + WatchlistSummaries: List[WatchlistSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsResponseTypeDef(BaseModel): + DomainSummaries: List[DomainSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateDomainResponseTypeDef(BaseModel): + Domain: DomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainResponseTypeDef(BaseModel): + Domain: DomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDomainResponseTypeDef(BaseModel): + Domain: DomainTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SpeakerEnrollmentJobTypeDef(BaseModel): + CreatedAt: Optional[datetime] = None + DataAccessRoleArn: Optional[str] = None + DomainId: Optional[str] = None + EndedAt: Optional[datetime] = None + EnrollmentConfig: Optional[EnrollmentConfigTypeDef] = None + FailureDetails: Optional[FailureDetailsTypeDef] = None + InputDataConfig: Optional[InputDataConfigTypeDef] = None + JobId: Optional[str] = None + JobName: Optional[str] = None + JobProgress: Optional[JobProgressTypeDef] = None + JobStatus: Optional[SpeakerEnrollmentJobStatusType] = None + OutputDataConfig: Optional[OutputDataConfigTypeDef] = None + +class StartSpeakerEnrollmentJobRequestRequestTypeDef(BaseModel): + DataAccessRoleArn: str + DomainId: str + InputDataConfig: InputDataConfigTypeDef + OutputDataConfig: OutputDataConfigTypeDef + ClientToken: Optional[str] = None + EnrollmentConfig: Optional[EnrollmentConfigTypeDef] = None + JobName: Optional[str] = None + +class FraudDetectionResultTypeDef(BaseModel): + AudioAggregationEndedAt: Optional[datetime] = None + AudioAggregationStartedAt: Optional[datetime] = None + Configuration: Optional[FraudDetectionConfigurationTypeDef] = None + Decision: Optional[FraudDetectionDecisionType] = None + FraudDetectionResultId: Optional[str] = None + Reasons: Optional[List[FraudDetectionReasonType]] = None + RiskDetails: Optional[FraudRiskDetailsTypeDef] = None + +class ListFraudsterRegistrationJobsResponseTypeDef(BaseModel): + JobSummaries: List[FraudsterRegistrationJobSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListSpeakerEnrollmentJobsResponseTypeDef(BaseModel): + JobSummaries: List[SpeakerEnrollmentJobSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFraudsterRegistrationJobResponseTypeDef(BaseModel): + Job: FraudsterRegistrationJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartFraudsterRegistrationJobResponseTypeDef(BaseModel): + Job: FraudsterRegistrationJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeSpeakerEnrollmentJobResponseTypeDef(BaseModel): + Job: SpeakerEnrollmentJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartSpeakerEnrollmentJobResponseTypeDef(BaseModel): + Job: SpeakerEnrollmentJobTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EvaluateSessionResponseTypeDef(BaseModel): + AuthenticationResult: AuthenticationResultTypeDef + DomainId: str + FraudDetectionResult: FraudDetectionResultTypeDef + SessionId: str + SessionName: str + StreamingStatus: StreamingStatusType + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/voice_id_constants.py b/aws_resource_validator/pydantic_models/voice_id_constants.py new file mode 100644 index 00000000..d4dfb3ba --- /dev/null +++ b/aws_resource_validator/pydantic_models/voice_id_constants.py @@ -0,0 +1,426 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthenticationDecisionType = Literal["ACCEPT", + "NOT_ENOUGH_SPEECH", + "REJECT", + "SPEAKER_EXPIRED", + "SPEAKER_ID_NOT_PROVIDED", + "SPEAKER_NOT_ENROLLED", + "SPEAKER_OPTED_OUT",] +DomainStatusType = Literal["ACTIVE", "PENDING", "SUSPENDED"] +DuplicateRegistrationActionType = Literal["REGISTER_AS_NEW", "SKIP"] +ExistingEnrollmentActionType = Literal["OVERWRITE", "SKIP"] +FraudDetectionActionType = Literal["FAIL", "IGNORE"] +FraudDetectionDecisionType = Literal["HIGH_RISK", "LOW_RISK", "NOT_ENOUGH_SPEECH"] +FraudDetectionReasonType = Literal["KNOWN_FRAUDSTER", "VOICE_SPOOFING"] +FraudsterRegistrationJobStatusType = Literal["COMPLETED", "COMPLETED_WITH_ERRORS", "FAILED", "IN_PROGRESS", "SUBMITTED"] +ListDomainsPaginatorName = Literal["list_domains"] +ListFraudsterRegistrationJobsPaginatorName = Literal["list_fraudster_registration_jobs"] +ListFraudstersPaginatorName = Literal["list_fraudsters"] +ListSpeakerEnrollmentJobsPaginatorName = Literal["list_speaker_enrollment_jobs"] +ListSpeakersPaginatorName = Literal["list_speakers"] +ListWatchlistsPaginatorName = Literal["list_watchlists"] +ServerSideEncryptionUpdateStatusType = Literal["COMPLETED", "FAILED", "IN_PROGRESS"] +SpeakerEnrollmentJobStatusType = Literal["COMPLETED", "COMPLETED_WITH_ERRORS", "FAILED", "IN_PROGRESS", "SUBMITTED"] +SpeakerStatusType = Literal["ENROLLED", "EXPIRED", "OPTED_OUT", "PENDING"] +StreamingStatusType = Literal["ENDED", "ONGOING", "PENDING_CONFIGURATION"] +VoiceIDServiceName = Literal["voice-id"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_domains", + "list_fraudster_registration_jobs", + "list_fraudsters", + "list_speaker_enrollment_jobs", + "list_speakers", + "list_watchlists",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-2", + "us-east-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/vpc_lattice_classes.py b/aws_resource_validator/pydantic_models/vpc_lattice_classes.py new file mode 100644 index 00000000..cda3eeab --- /dev/null +++ b/aws_resource_validator/pydantic_models/vpc_lattice_classes.py @@ -0,0 +1,853 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.vpc_lattice_constants import * + +class AccessLogSubscriptionSummaryTypeDef(BaseModel): + arn: str + createdAt: datetime + destinationArn: str + id: str + lastUpdatedAt: datetime + resourceArn: str + resourceId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class RuleUpdateFailureTypeDef(BaseModel): + failureCode: Optional[str] = None + failureMessage: Optional[str] = None + ruleIdentifier: Optional[str] = None + +class CreateAccessLogSubscriptionRequestRequestTypeDef(BaseModel): + destinationArn: str + resourceIdentifier: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateServiceNetworkRequestRequestTypeDef(BaseModel): + name: str + authType: Optional[AuthTypeType] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class CreateServiceNetworkServiceAssociationRequestRequestTypeDef(BaseModel): + serviceIdentifier: str + serviceNetworkIdentifier: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DnsEntryTypeDef(BaseModel): + domainName: Optional[str] = None + hostedZoneId: Optional[str] = None + +class CreateServiceNetworkVpcAssociationRequestRequestTypeDef(BaseModel): + serviceNetworkIdentifier: str + vpcIdentifier: str + clientToken: Optional[str] = None + securityGroupIds: Optional[Sequence[str]] = None + tags: Optional[Mapping[str, str]] = None + +class CreateServiceRequestRequestTypeDef(BaseModel): + name: str + authType: Optional[AuthTypeType] = None + certificateArn: Optional[str] = None + clientToken: Optional[str] = None + customDomainName: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteAccessLogSubscriptionRequestRequestTypeDef(BaseModel): + accessLogSubscriptionIdentifier: str + +class DeleteAuthPolicyRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + +class DeleteListenerRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + serviceIdentifier: str + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + +class DeleteRuleRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + ruleIdentifier: str + serviceIdentifier: str + +class DeleteServiceNetworkRequestRequestTypeDef(BaseModel): + serviceNetworkIdentifier: str + +class DeleteServiceNetworkServiceAssociationRequestRequestTypeDef(BaseModel): + serviceNetworkServiceAssociationIdentifier: str + +class DeleteServiceNetworkVpcAssociationRequestRequestTypeDef(BaseModel): + serviceNetworkVpcAssociationIdentifier: str + +class DeleteServiceRequestRequestTypeDef(BaseModel): + serviceIdentifier: str + +class DeleteTargetGroupRequestRequestTypeDef(BaseModel): + targetGroupIdentifier: str + +class TargetTypeDef(BaseModel): + id: str + port: Optional[int] = None + +class TargetFailureTypeDef(BaseModel): + failureCode: Optional[str] = None + failureMessage: Optional[str] = None + id: Optional[str] = None + port: Optional[int] = None + +class FixedResponseActionTypeDef(BaseModel): + statusCode: int + +class WeightedTargetGroupTypeDef(BaseModel): + targetGroupIdentifier: str + weight: Optional[int] = None + +class GetAccessLogSubscriptionRequestRequestTypeDef(BaseModel): + accessLogSubscriptionIdentifier: str + +class GetAuthPolicyRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + +class GetListenerRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + serviceIdentifier: str + +class GetResourcePolicyRequestRequestTypeDef(BaseModel): + resourceArn: str + +class GetRuleRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + ruleIdentifier: str + serviceIdentifier: str + +class GetServiceNetworkRequestRequestTypeDef(BaseModel): + serviceNetworkIdentifier: str + +class GetServiceNetworkServiceAssociationRequestRequestTypeDef(BaseModel): + serviceNetworkServiceAssociationIdentifier: str + +class GetServiceNetworkVpcAssociationRequestRequestTypeDef(BaseModel): + serviceNetworkVpcAssociationIdentifier: str + +class GetServiceRequestRequestTypeDef(BaseModel): + serviceIdentifier: str + +class GetTargetGroupRequestRequestTypeDef(BaseModel): + targetGroupIdentifier: str + +class HeaderMatchTypeTypeDef(BaseModel): + contains: Optional[str] = None + exact: Optional[str] = None + prefix: Optional[str] = None + +class MatcherTypeDef(BaseModel): + httpCode: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAccessLogSubscriptionsRequestRequestTypeDef(BaseModel): + resourceIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListListenersRequestRequestTypeDef(BaseModel): + serviceIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListenerSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + id: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + port: Optional[int] = None + protocol: Optional[ListenerProtocolType] = None + +class ListRulesRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + serviceIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class RuleSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + id: Optional[str] = None + isDefault: Optional[bool] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + priority: Optional[int] = None + +class ListServiceNetworkServiceAssociationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + serviceIdentifier: Optional[str] = None + serviceNetworkIdentifier: Optional[str] = None + +class ListServiceNetworkVpcAssociationsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + serviceNetworkIdentifier: Optional[str] = None + vpcIdentifier: Optional[str] = None + +class ServiceNetworkVpcAssociationSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + id: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + serviceNetworkArn: Optional[str] = None + serviceNetworkId: Optional[str] = None + serviceNetworkName: Optional[str] = None + status: Optional[ServiceNetworkVpcAssociationStatusType] = None + vpcId: Optional[str] = None + +class ListServiceNetworksRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ServiceNetworkSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + id: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + numberOfAssociatedServices: Optional[int] = None + numberOfAssociatedVPCs: Optional[int] = None + +class ListServicesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTargetGroupsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + targetGroupType: Optional[TargetGroupTypeType] = None + vpcIdentifier: Optional[str] = None + +class TargetGroupSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + id: Optional[str] = None + ipAddressType: Optional[IpAddressTypeType] = None + lambdaEventStructureVersion: Optional[LambdaEventStructureVersionType] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + port: Optional[int] = None + protocol: Optional[TargetGroupProtocolType] = None + serviceArns: Optional[List[str]] = None + status: Optional[TargetGroupStatusType] = None + type: Optional[TargetGroupTypeType] = None + vpcIdentifier: Optional[str] = None + +class TargetSummaryTypeDef(BaseModel): + id: Optional[str] = None + port: Optional[int] = None + reasonCode: Optional[str] = None + status: Optional[TargetStatusType] = None + +class PathMatchTypeTypeDef(BaseModel): + exact: Optional[str] = None + prefix: Optional[str] = None + +class PutAuthPolicyRequestRequestTypeDef(BaseModel): + policy: str + resourceIdentifier: str + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + policy: str + resourceArn: str + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateAccessLogSubscriptionRequestRequestTypeDef(BaseModel): + accessLogSubscriptionIdentifier: str + destinationArn: str + +class UpdateServiceNetworkRequestRequestTypeDef(BaseModel): + authType: AuthTypeType + serviceNetworkIdentifier: str + +class UpdateServiceNetworkVpcAssociationRequestRequestTypeDef(BaseModel): + securityGroupIds: Sequence[str] + serviceNetworkVpcAssociationIdentifier: str + +class UpdateServiceRequestRequestTypeDef(BaseModel): + serviceIdentifier: str + authType: Optional[AuthTypeType] = None + certificateArn: Optional[str] = None + +class CreateAccessLogSubscriptionResponseTypeDef(BaseModel): + arn: str + destinationArn: str + id: str + resourceArn: str + resourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceNetworkResponseTypeDef(BaseModel): + arn: str + authType: AuthTypeType + id: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceNetworkVpcAssociationResponseTypeDef(BaseModel): + arn: str + createdBy: str + id: str + securityGroupIds: List[str] + status: ServiceNetworkVpcAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceNetworkServiceAssociationResponseTypeDef(BaseModel): + arn: str + id: str + status: ServiceNetworkServiceAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceNetworkVpcAssociationResponseTypeDef(BaseModel): + arn: str + id: str + status: ServiceNetworkVpcAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteServiceResponseTypeDef(BaseModel): + arn: str + id: str + name: str + status: ServiceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteTargetGroupResponseTypeDef(BaseModel): + arn: str + id: str + status: TargetGroupStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessLogSubscriptionResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + destinationArn: str + id: str + lastUpdatedAt: datetime + resourceArn: str + resourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAuthPolicyResponseTypeDef(BaseModel): + createdAt: datetime + lastUpdatedAt: datetime + policy: str + state: AuthPolicyStateType + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcePolicyResponseTypeDef(BaseModel): + policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceNetworkResponseTypeDef(BaseModel): + arn: str + authType: AuthTypeType + createdAt: datetime + id: str + lastUpdatedAt: datetime + name: str + numberOfAssociatedServices: int + numberOfAssociatedVPCs: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceNetworkVpcAssociationResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + createdBy: str + failureCode: str + failureMessage: str + id: str + lastUpdatedAt: datetime + securityGroupIds: List[str] + serviceNetworkArn: str + serviceNetworkId: str + serviceNetworkName: str + status: ServiceNetworkVpcAssociationStatusType + vpcId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessLogSubscriptionsResponseTypeDef(BaseModel): + items: List[AccessLogSubscriptionSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutAuthPolicyResponseTypeDef(BaseModel): + policy: str + state: AuthPolicyStateType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAccessLogSubscriptionResponseTypeDef(BaseModel): + arn: str + destinationArn: str + id: str + resourceArn: str + resourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceNetworkResponseTypeDef(BaseModel): + arn: str + authType: AuthTypeType + id: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceNetworkVpcAssociationResponseTypeDef(BaseModel): + arn: str + createdBy: str + id: str + securityGroupIds: List[str] + status: ServiceNetworkVpcAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateServiceResponseTypeDef(BaseModel): + arn: str + authType: AuthTypeType + certificateArn: str + customDomainName: str + id: str + name: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceNetworkServiceAssociationResponseTypeDef(BaseModel): + arn: str + createdBy: str + customDomainName: str + dnsEntry: DnsEntryTypeDef + id: str + status: ServiceNetworkServiceAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class CreateServiceResponseTypeDef(BaseModel): + arn: str + authType: AuthTypeType + certificateArn: str + customDomainName: str + dnsEntry: DnsEntryTypeDef + id: str + name: str + status: ServiceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceNetworkServiceAssociationResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + createdBy: str + customDomainName: str + dnsEntry: DnsEntryTypeDef + failureCode: str + failureMessage: str + id: str + serviceArn: str + serviceId: str + serviceName: str + serviceNetworkArn: str + serviceNetworkId: str + serviceNetworkName: str + status: ServiceNetworkServiceAssociationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetServiceResponseTypeDef(BaseModel): + arn: str + authType: AuthTypeType + certificateArn: str + createdAt: datetime + customDomainName: str + dnsEntry: DnsEntryTypeDef + failureCode: str + failureMessage: str + id: str + lastUpdatedAt: datetime + name: str + status: ServiceStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceNetworkServiceAssociationSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + createdBy: Optional[str] = None + customDomainName: Optional[str] = None + dnsEntry: Optional[DnsEntryTypeDef] = None + id: Optional[str] = None + serviceArn: Optional[str] = None + serviceId: Optional[str] = None + serviceName: Optional[str] = None + serviceNetworkArn: Optional[str] = None + serviceNetworkId: Optional[str] = None + serviceNetworkName: Optional[str] = None + status: Optional[ServiceNetworkServiceAssociationStatusType] = None + +class ServiceSummaryTypeDef(BaseModel): + arn: Optional[str] = None + createdAt: Optional[datetime] = None + customDomainName: Optional[str] = None + dnsEntry: Optional[DnsEntryTypeDef] = None + id: Optional[str] = None + lastUpdatedAt: Optional[datetime] = None + name: Optional[str] = None + status: Optional[ServiceStatusType] = None + +class DeregisterTargetsRequestRequestTypeDef(BaseModel): + targetGroupIdentifier: str + targets: Sequence[TargetTypeDef] + +class ListTargetsRequestRequestTypeDef(BaseModel): + targetGroupIdentifier: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + targets: Optional[Sequence[TargetTypeDef]] = None + +class RegisterTargetsRequestRequestTypeDef(BaseModel): + targetGroupIdentifier: str + targets: Sequence[TargetTypeDef] + +class DeregisterTargetsResponseTypeDef(BaseModel): + successful: List[TargetTypeDef] + unsuccessful: List[TargetFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterTargetsResponseTypeDef(BaseModel): + successful: List[TargetTypeDef] + unsuccessful: List[TargetFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ForwardActionOutputTypeDef(BaseModel): + targetGroups: List[WeightedTargetGroupTypeDef] + +class ForwardActionTypeDef(BaseModel): + targetGroups: Sequence[WeightedTargetGroupTypeDef] + +class HeaderMatchTypeDef(BaseModel): + match: HeaderMatchTypeTypeDef + name: str + caseSensitive: Optional[bool] = None + +class HealthCheckConfigTypeDef(BaseModel): + enabled: Optional[bool] = None + healthCheckIntervalSeconds: Optional[int] = None + healthCheckTimeoutSeconds: Optional[int] = None + healthyThresholdCount: Optional[int] = None + matcher: Optional[MatcherTypeDef] = None + path: Optional[str] = None + port: Optional[int] = None + protocol: Optional[TargetGroupProtocolType] = None + protocolVersion: Optional[HealthCheckProtocolVersionType] = None + unhealthyThresholdCount: Optional[int] = None + +class ListAccessLogSubscriptionsRequestListAccessLogSubscriptionsPaginateTypeDef(BaseModel): + resourceIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListListenersRequestListListenersPaginateTypeDef(BaseModel): + serviceIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesRequestListRulesPaginateTypeDef(BaseModel): + listenerIdentifier: str + serviceIdentifier: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceNetworkServiceAssociationsRequestListServiceNetworkServiceAssociationsPaginateTypeDef(BaseModel): + serviceIdentifier: Optional[str] = None + serviceNetworkIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServiceNetworksRequestListServiceNetworksPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListServicesRequestListServicesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetGroupsRequestListTargetGroupsPaginateTypeDef(BaseModel): + targetGroupType: Optional[TargetGroupTypeType] = None + vpcIdentifier: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTargetsRequestListTargetsPaginateTypeDef(BaseModel): + targetGroupIdentifier: str + targets: Optional[Sequence[TargetTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListListenersResponseTypeDef(BaseModel): + items: List[ListenerSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListRulesResponseTypeDef(BaseModel): + items: List[RuleSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceNetworkVpcAssociationsResponseTypeDef(BaseModel): + items: List[ServiceNetworkVpcAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServiceNetworksResponseTypeDef(BaseModel): + items: List[ServiceNetworkSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetGroupsResponseTypeDef(BaseModel): + items: List[TargetGroupSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTargetsResponseTypeDef(BaseModel): + items: List[TargetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PathMatchTypeDef(BaseModel): + match: PathMatchTypeTypeDef + caseSensitive: Optional[bool] = None + +class ListServiceNetworkServiceAssociationsResponseTypeDef(BaseModel): + items: List[ServiceNetworkServiceAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListServicesResponseTypeDef(BaseModel): + items: List[ServiceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class RuleActionOutputTypeDef(BaseModel): + fixedResponse: Optional[FixedResponseActionTypeDef] = None + forward: Optional[ForwardActionOutputTypeDef] = None + +class RuleActionTypeDef(BaseModel): + fixedResponse: Optional[FixedResponseActionTypeDef] = None + forward: Optional[ForwardActionTypeDef] = None + +class TargetGroupConfigTypeDef(BaseModel): + healthCheck: Optional[HealthCheckConfigTypeDef] = None + ipAddressType: Optional[IpAddressTypeType] = None + lambdaEventStructureVersion: Optional[LambdaEventStructureVersionType] = None + port: Optional[int] = None + protocol: Optional[TargetGroupProtocolType] = None + protocolVersion: Optional[TargetGroupProtocolVersionType] = None + vpcIdentifier: Optional[str] = None + +class UpdateTargetGroupRequestRequestTypeDef(BaseModel): + healthCheck: HealthCheckConfigTypeDef + targetGroupIdentifier: str + +class HttpMatchOutputTypeDef(BaseModel): + headerMatches: Optional[List[HeaderMatchTypeDef]] = None + method: Optional[str] = None + pathMatch: Optional[PathMatchTypeDef] = None + +class HttpMatchTypeDef(BaseModel): + headerMatches: Optional[Sequence[HeaderMatchTypeDef]] = None + method: Optional[str] = None + pathMatch: Optional[PathMatchTypeDef] = None + +class CreateListenerResponseTypeDef(BaseModel): + arn: str + defaultAction: RuleActionOutputTypeDef + id: str + name: str + port: int + protocol: ListenerProtocolType + serviceArn: str + serviceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetListenerResponseTypeDef(BaseModel): + arn: str + createdAt: datetime + defaultAction: RuleActionOutputTypeDef + id: str + lastUpdatedAt: datetime + name: str + port: int + protocol: ListenerProtocolType + serviceArn: str + serviceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateListenerResponseTypeDef(BaseModel): + arn: str + defaultAction: RuleActionOutputTypeDef + id: str + name: str + port: int + protocol: ListenerProtocolType + serviceArn: str + serviceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateListenerRequestRequestTypeDef(BaseModel): + defaultAction: RuleActionTypeDef + name: str + protocol: ListenerProtocolType + serviceIdentifier: str + clientToken: Optional[str] = None + port: Optional[int] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateListenerRequestRequestTypeDef(BaseModel): + defaultAction: RuleActionTypeDef + listenerIdentifier: str + serviceIdentifier: str + +class CreateTargetGroupRequestRequestTypeDef(BaseModel): + name: str + type: TargetGroupTypeType + clientToken: Optional[str] = None + config: Optional[TargetGroupConfigTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class CreateTargetGroupResponseTypeDef(BaseModel): + arn: str + config: TargetGroupConfigTypeDef + id: str + name: str + status: TargetGroupStatusType + type: TargetGroupTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class GetTargetGroupResponseTypeDef(BaseModel): + arn: str + config: TargetGroupConfigTypeDef + createdAt: datetime + failureCode: str + failureMessage: str + id: str + lastUpdatedAt: datetime + name: str + serviceArns: List[str] + status: TargetGroupStatusType + type: TargetGroupTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTargetGroupResponseTypeDef(BaseModel): + arn: str + config: TargetGroupConfigTypeDef + id: str + name: str + status: TargetGroupStatusType + type: TargetGroupTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class RuleMatchOutputTypeDef(BaseModel): + httpMatch: Optional[HttpMatchOutputTypeDef] = None + +class RuleMatchTypeDef(BaseModel): + httpMatch: Optional[HttpMatchTypeDef] = None + +class CreateRuleResponseTypeDef(BaseModel): + action: RuleActionOutputTypeDef + arn: str + id: str + match: RuleMatchOutputTypeDef + name: str + priority: int + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuleResponseTypeDef(BaseModel): + action: RuleActionOutputTypeDef + arn: str + createdAt: datetime + id: str + isDefault: bool + lastUpdatedAt: datetime + match: RuleMatchOutputTypeDef + name: str + priority: int + ResponseMetadata: ResponseMetadataTypeDef + +class RuleUpdateSuccessTypeDef(BaseModel): + action: Optional[RuleActionOutputTypeDef] = None + arn: Optional[str] = None + id: Optional[str] = None + isDefault: Optional[bool] = None + match: Optional[RuleMatchOutputTypeDef] = None + name: Optional[str] = None + priority: Optional[int] = None + +class UpdateRuleResponseTypeDef(BaseModel): + action: RuleActionOutputTypeDef + arn: str + id: str + isDefault: bool + match: RuleMatchOutputTypeDef + name: str + priority: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleRequestRequestTypeDef(BaseModel): + action: RuleActionTypeDef + listenerIdentifier: str + match: RuleMatchTypeDef + name: str + priority: int + serviceIdentifier: str + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class RuleUpdateTypeDef(BaseModel): + ruleIdentifier: str + action: Optional[RuleActionTypeDef] = None + match: Optional[RuleMatchTypeDef] = None + priority: Optional[int] = None + +class UpdateRuleRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + ruleIdentifier: str + serviceIdentifier: str + action: Optional[RuleActionTypeDef] = None + match: Optional[RuleMatchTypeDef] = None + priority: Optional[int] = None + +class BatchUpdateRuleResponseTypeDef(BaseModel): + successful: List[RuleUpdateSuccessTypeDef] + unsuccessful: List[RuleUpdateFailureTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class BatchUpdateRuleRequestRequestTypeDef(BaseModel): + listenerIdentifier: str + rules: Sequence[RuleUpdateTypeDef] + serviceIdentifier: str + diff --git a/aws_resource_validator/pydantic_models/vpc_lattice_constants.py b/aws_resource_validator/pydantic_models/vpc_lattice_constants.py new file mode 100644 index 00000000..7b898725 --- /dev/null +++ b/aws_resource_validator/pydantic_models/vpc_lattice_constants.py @@ -0,0 +1,449 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthPolicyStateType = Literal["Active", "Inactive"] +AuthTypeType = Literal["AWS_IAM", "NONE"] +HealthCheckProtocolVersionType = Literal["HTTP1", "HTTP2"] +IpAddressTypeType = Literal["IPV4", "IPV6"] +LambdaEventStructureVersionType = Literal["V1", "V2"] +ListAccessLogSubscriptionsPaginatorName = Literal["list_access_log_subscriptions"] +ListListenersPaginatorName = Literal["list_listeners"] +ListRulesPaginatorName = Literal["list_rules"] +ListServiceNetworkServiceAssociationsPaginatorName = Literal["list_service_network_service_associations"] +ListServiceNetworkVpcAssociationsPaginatorName = Literal["list_service_network_vpc_associations"] +ListServiceNetworksPaginatorName = Literal["list_service_networks"] +ListServicesPaginatorName = Literal["list_services"] +ListTargetGroupsPaginatorName = Literal["list_target_groups"] +ListTargetsPaginatorName = Literal["list_targets"] +ListenerProtocolType = Literal["HTTP", "HTTPS", "TLS_PASSTHROUGH"] +ServiceNetworkServiceAssociationStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATE_IN_PROGRESS", "DELETE_FAILED", "DELETE_IN_PROGRESS"] +ServiceNetworkVpcAssociationStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +ServiceStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATE_IN_PROGRESS", "DELETE_FAILED", "DELETE_IN_PROGRESS"] +TargetGroupProtocolType = Literal["HTTP", "HTTPS", "TCP"] +TargetGroupProtocolVersionType = Literal["GRPC", "HTTP1", "HTTP2"] +TargetGroupStatusType = Literal["ACTIVE", "CREATE_FAILED", "CREATE_IN_PROGRESS", "DELETE_FAILED", "DELETE_IN_PROGRESS"] +TargetGroupTypeType = Literal["ALB", "INSTANCE", "IP", "LAMBDA"] +TargetStatusType = Literal["DRAINING", "HEALTHY", "INITIAL", "UNAVAILABLE", "UNHEALTHY", "UNUSED"] +VPCLatticeServiceName = Literal["vpc-lattice"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_access_log_subscriptions", + "list_listeners", + "list_rules", + "list_service_network_service_associations", + "list_service_network_vpc_associations", + "list_service_networks", + "list_services", + "list_target_groups", + "list_targets",] +RegionName = Literal["ap-northeast-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-2",] +RuleActionUnionTypeDef = Union['RuleActionTypeDef', 'RuleActionOutputTypeDef'] +RuleMatchUnionTypeDef = Union['RuleMatchTypeDef', 'RuleMatchOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/waf_classes.py b/aws_resource_validator/pydantic_models/waf_classes.py new file mode 100644 index 00000000..d9120ce4 --- /dev/null +++ b/aws_resource_validator/pydantic_models/waf_classes.py @@ -0,0 +1,1001 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.waf_constants import * + +class ExcludedRuleTypeDef(BaseModel): + RuleId: str + +class WafActionTypeDef(BaseModel): + Type: WafActionTypeType + +class WafOverrideActionTypeDef(BaseModel): + Type: WafOverrideActionTypeType + +class ByteMatchSetSummaryTypeDef(BaseModel): + ByteMatchSetId: str + Name: str + +class FieldToMatchTypeDef(BaseModel): + Type: MatchFieldTypeType + Data: Optional[str] = None + +class CreateByteMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateGeoMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateIPSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateRegexMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateRegexPatternSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class RegexPatternSetTypeDef(BaseModel): + RegexPatternSetId: str + RegexPatternStrings: List[str] + Name: Optional[str] = None + +class RuleGroupTypeDef(BaseModel): + RuleGroupId: str + Name: Optional[str] = None + MetricName: Optional[str] = None + +class CreateSizeConstraintSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateWebACLMigrationStackRequestRequestTypeDef(BaseModel): + WebACLId: str + S3BucketName: str + IgnoreUnsupportedType: bool + +class CreateXssMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class DeleteByteMatchSetRequestRequestTypeDef(BaseModel): + ByteMatchSetId: str + ChangeToken: str + +class DeleteGeoMatchSetRequestRequestTypeDef(BaseModel): + GeoMatchSetId: str + ChangeToken: str + +class DeleteIPSetRequestRequestTypeDef(BaseModel): + IPSetId: str + ChangeToken: str + +class DeleteLoggingConfigurationRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeletePermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteRateBasedRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + +class DeleteRegexMatchSetRequestRequestTypeDef(BaseModel): + RegexMatchSetId: str + ChangeToken: str + +class DeleteRegexPatternSetRequestRequestTypeDef(BaseModel): + RegexPatternSetId: str + ChangeToken: str + +class DeleteRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: str + ChangeToken: str + +class DeleteRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + +class DeleteSizeConstraintSetRequestRequestTypeDef(BaseModel): + SizeConstraintSetId: str + ChangeToken: str + +class DeleteSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + SqlInjectionMatchSetId: str + ChangeToken: str + +class DeleteWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + ChangeToken: str + +class DeleteXssMatchSetRequestRequestTypeDef(BaseModel): + XssMatchSetId: str + ChangeToken: str + +class GeoMatchConstraintTypeDef(BaseModel): + Type: Literal["Country"] + Value: GeoMatchConstraintValueType + +class GeoMatchSetSummaryTypeDef(BaseModel): + GeoMatchSetId: str + Name: str + +class GetByteMatchSetRequestRequestTypeDef(BaseModel): + ByteMatchSetId: str + +class GetChangeTokenStatusRequestRequestTypeDef(BaseModel): + ChangeToken: str + +class GetGeoMatchSetRequestRequestTypeDef(BaseModel): + GeoMatchSetId: str + +class GetIPSetRequestRequestTypeDef(BaseModel): + IPSetId: str + +class GetLoggingConfigurationRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetPermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class GetRateBasedRuleManagedKeysRequestRequestTypeDef(BaseModel): + RuleId: str + NextMarker: Optional[str] = None + +class GetRateBasedRuleRequestRequestTypeDef(BaseModel): + RuleId: str + +class GetRegexMatchSetRequestRequestTypeDef(BaseModel): + RegexMatchSetId: str + +class GetRegexPatternSetRequestRequestTypeDef(BaseModel): + RegexPatternSetId: str + +class GetRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: str + +class GetRuleRequestRequestTypeDef(BaseModel): + RuleId: str + +class TimeWindowOutputTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + +class GetSizeConstraintSetRequestRequestTypeDef(BaseModel): + SizeConstraintSetId: str + +class GetSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + SqlInjectionMatchSetId: str + +class GetWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + +class GetXssMatchSetRequestRequestTypeDef(BaseModel): + XssMatchSetId: str + +class HTTPHeaderTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class IPSetDescriptorTypeDef(BaseModel): + Type: IPSetDescriptorTypeType + Value: str + +class IPSetSummaryTypeDef(BaseModel): + IPSetId: str + Name: str + +class ListActivatedRulesInRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: Optional[str] = None + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListByteMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListGeoMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListIPSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListLoggingConfigurationsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListRateBasedRulesRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RuleSummaryTypeDef(BaseModel): + RuleId: str + Name: str + +class ListRegexMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RegexMatchSetSummaryTypeDef(BaseModel): + RegexMatchSetId: str + Name: str + +class ListRegexPatternSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RegexPatternSetSummaryTypeDef(BaseModel): + RegexPatternSetId: str + Name: str + +class ListRuleGroupsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RuleGroupSummaryTypeDef(BaseModel): + RuleGroupId: str + Name: str + +class ListRulesRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListSizeConstraintSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class SizeConstraintSetSummaryTypeDef(BaseModel): + SizeConstraintSetId: str + Name: str + +class ListSqlInjectionMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class SqlInjectionMatchSetSummaryTypeDef(BaseModel): + SqlInjectionMatchSetId: str + Name: str + +class ListSubscribedRuleGroupsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class SubscribedRuleGroupSummaryTypeDef(BaseModel): + RuleGroupId: str + Name: str + MetricName: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListWebACLsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class WebACLSummaryTypeDef(BaseModel): + WebACLId: str + Name: str + +class ListXssMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class XssMatchSetSummaryTypeDef(BaseModel): + XssMatchSetId: str + Name: str + +class PredicateTypeDef(BaseModel): + Negated: bool + Type: PredicateTypeType + DataId: str + +class PutPermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class RegexPatternSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + RegexPatternString: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class ActivatedRuleExtraOutputTypeDef(BaseModel): + Priority: int + RuleId: str + Action: Optional[WafActionTypeDef] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Type: Optional[WafRuleTypeType] = None + ExcludedRules: Optional[List[ExcludedRuleTypeDef]] = None + +class ActivatedRuleOutputTypeDef(BaseModel): + Priority: int + RuleId: str + Action: Optional[WafActionTypeDef] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Type: Optional[WafRuleTypeType] = None + ExcludedRules: Optional[List[ExcludedRuleTypeDef]] = None + +class ActivatedRuleTypeDef(BaseModel): + Priority: int + RuleId: str + Action: Optional[WafActionTypeDef] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Type: Optional[WafRuleTypeType] = None + ExcludedRules: Optional[Sequence[ExcludedRuleTypeDef]] = None + +class ByteMatchTupleOutputTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TargetString: bytes + TextTransformation: TextTransformationType + PositionalConstraint: PositionalConstraintType + +class ByteMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TargetString: BlobTypeDef + TextTransformation: TextTransformationType + PositionalConstraint: PositionalConstraintType + +class LoggingConfigurationExtraOutputTypeDef(BaseModel): + ResourceArn: str + LogDestinationConfigs: List[str] + RedactedFields: Optional[List[FieldToMatchTypeDef]] = None + +class LoggingConfigurationOutputTypeDef(BaseModel): + ResourceArn: str + LogDestinationConfigs: List[str] + RedactedFields: Optional[List[FieldToMatchTypeDef]] = None + +class LoggingConfigurationTypeDef(BaseModel): + ResourceArn: str + LogDestinationConfigs: Sequence[str] + RedactedFields: Optional[Sequence[FieldToMatchTypeDef]] = None + +class RegexMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + RegexPatternSetId: str + +class SizeConstraintTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + ComparisonOperator: ComparisonOperatorType + Size: int + +class SqlInjectionMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + +class XssMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + +class CreateWebACLMigrationStackResponseTypeDef(BaseModel): + S3ObjectUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteByteMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGeoMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIPSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRateBasedRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegexMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegexPatternSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRuleGroupResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSizeConstraintSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSqlInjectionMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWebACLResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteXssMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChangeTokenResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChangeTokenStatusResponseTypeDef(BaseModel): + ChangeTokenStatus: ChangeTokenStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetPermissionPolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRateBasedRuleManagedKeysResponseTypeDef(BaseModel): + ManagedKeys: List[str] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListByteMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + ByteMatchSets: List[ByteMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateByteMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGeoMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIPSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRateBasedRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexPatternSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleGroupResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSizeConstraintSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSqlInjectionMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebACLResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateXssMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRateBasedRuleRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + RateKey: Literal["IP"] + RateLimit: int + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRuleGroupRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRuleRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateWebACLRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + DefaultAction: WafActionTypeDef + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagInfoForResourceTypeDef(BaseModel): + ResourceARN: Optional[str] = None + TagList: Optional[List[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateRegexPatternSetResponseTypeDef(BaseModel): + RegexPatternSet: RegexPatternSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegexPatternSetResponseTypeDef(BaseModel): + RegexPatternSet: RegexPatternSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleGroupResponseTypeDef(BaseModel): + RuleGroup: RuleGroupTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuleGroupResponseTypeDef(BaseModel): + RuleGroup: RuleGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GeoMatchSetTypeDef(BaseModel): + GeoMatchSetId: str + GeoMatchConstraints: List[GeoMatchConstraintTypeDef] + Name: Optional[str] = None + +class GeoMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + GeoMatchConstraint: GeoMatchConstraintTypeDef + +class ListGeoMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + GeoMatchSets: List[GeoMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetRateBasedRuleManagedKeysRequestGetRateBasedRuleManagedKeysPaginateTypeDef(BaseModel): + RuleId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListActivatedRulesInRuleGroupRequestListActivatedRulesInRuleGroupPaginateTypeDef(BaseModel): + RuleGroupId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListByteMatchSetsRequestListByteMatchSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGeoMatchSetsRequestListGeoMatchSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListIPSetsRequestListIPSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListLoggingConfigurationsRequestListLoggingConfigurationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRateBasedRulesRequestListRateBasedRulesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegexMatchSetsRequestListRegexMatchSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRegexPatternSetsRequestListRegexPatternSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRuleGroupsRequestListRuleGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListRulesRequestListRulesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSizeConstraintSetsRequestListSizeConstraintSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSqlInjectionMatchSetsRequestListSqlInjectionMatchSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSubscribedRuleGroupsRequestListSubscribedRuleGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListWebACLsRequestListWebACLsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListXssMatchSetsRequestListXssMatchSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class HTTPRequestTypeDef(BaseModel): + ClientIP: Optional[str] = None + Country: Optional[str] = None + URI: Optional[str] = None + Method: Optional[str] = None + HTTPVersion: Optional[str] = None + Headers: Optional[List[HTTPHeaderTypeDef]] = None + +class IPSetTypeDef(BaseModel): + IPSetId: str + IPSetDescriptors: List[IPSetDescriptorTypeDef] + Name: Optional[str] = None + +class IPSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + IPSetDescriptor: IPSetDescriptorTypeDef + +class ListIPSetsResponseTypeDef(BaseModel): + NextMarker: str + IPSets: List[IPSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRateBasedRulesResponseTypeDef(BaseModel): + NextMarker: str + Rules: List[RuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRulesResponseTypeDef(BaseModel): + NextMarker: str + Rules: List[RuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRegexMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + RegexMatchSets: List[RegexMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRegexPatternSetsResponseTypeDef(BaseModel): + NextMarker: str + RegexPatternSets: List[RegexPatternSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRuleGroupsResponseTypeDef(BaseModel): + NextMarker: str + RuleGroups: List[RuleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSizeConstraintSetsResponseTypeDef(BaseModel): + NextMarker: str + SizeConstraintSets: List[SizeConstraintSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSqlInjectionMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + SqlInjectionMatchSets: List[SqlInjectionMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscribedRuleGroupsResponseTypeDef(BaseModel): + NextMarker: str + RuleGroups: List[SubscribedRuleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebACLsResponseTypeDef(BaseModel): + NextMarker: str + WebACLs: List[WebACLSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListXssMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + XssMatchSets: List[XssMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RateBasedRuleTypeDef(BaseModel): + RuleId: str + MatchPredicates: List[PredicateTypeDef] + RateKey: Literal["IP"] + RateLimit: int + Name: Optional[str] = None + MetricName: Optional[str] = None + +class RuleTypeDef(BaseModel): + RuleId: str + Predicates: List[PredicateTypeDef] + Name: Optional[str] = None + MetricName: Optional[str] = None + +class RuleUpdateTypeDef(BaseModel): + Action: ChangeActionType + Predicate: PredicateTypeDef + +class UpdateRegexPatternSetRequestRequestTypeDef(BaseModel): + RegexPatternSetId: str + Updates: Sequence[RegexPatternSetUpdateTypeDef] + ChangeToken: str + +class TimeWindowTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class ListActivatedRulesInRuleGroupResponseTypeDef(BaseModel): + NextMarker: str + ActivatedRules: List[ActivatedRuleExtraOutputTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class WebACLTypeDef(BaseModel): + WebACLId: str + DefaultAction: WafActionTypeDef + Rules: List[ActivatedRuleOutputTypeDef] + Name: Optional[str] = None + MetricName: Optional[str] = None + WebACLArn: Optional[str] = None + +class RuleGroupUpdateTypeDef(BaseModel): + Action: ChangeActionType + ActivatedRule: ActivatedRuleTypeDef + +class WebACLUpdateTypeDef(BaseModel): + Action: ChangeActionType + ActivatedRule: ActivatedRuleTypeDef + +class ByteMatchSetTypeDef(BaseModel): + ByteMatchSetId: str + ByteMatchTuples: List[ByteMatchTupleOutputTypeDef] + Name: Optional[str] = None + +class ByteMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + ByteMatchTuple: ByteMatchTupleTypeDef + +class GetLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoggingConfigurationsResponseTypeDef(BaseModel): + LoggingConfigurations: List[LoggingConfigurationOutputTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingConfigurationRequestRequestTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + +class RegexMatchSetTypeDef(BaseModel): + RegexMatchSetId: Optional[str] = None + Name: Optional[str] = None + RegexMatchTuples: Optional[List[RegexMatchTupleTypeDef]] = None + +class RegexMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + RegexMatchTuple: RegexMatchTupleTypeDef + +class SizeConstraintSetTypeDef(BaseModel): + SizeConstraintSetId: str + SizeConstraints: List[SizeConstraintTypeDef] + Name: Optional[str] = None + +class SizeConstraintSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + SizeConstraint: SizeConstraintTypeDef + +class SqlInjectionMatchSetTypeDef(BaseModel): + SqlInjectionMatchSetId: str + SqlInjectionMatchTuples: List[SqlInjectionMatchTupleTypeDef] + Name: Optional[str] = None + +class SqlInjectionMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + SqlInjectionMatchTuple: SqlInjectionMatchTupleTypeDef + +class XssMatchSetTypeDef(BaseModel): + XssMatchSetId: str + XssMatchTuples: List[XssMatchTupleTypeDef] + Name: Optional[str] = None + +class XssMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + XssMatchTuple: XssMatchTupleTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + NextMarker: str + TagInfoForResource: TagInfoForResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGeoMatchSetResponseTypeDef(BaseModel): + GeoMatchSet: GeoMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGeoMatchSetResponseTypeDef(BaseModel): + GeoMatchSet: GeoMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGeoMatchSetRequestRequestTypeDef(BaseModel): + GeoMatchSetId: str + ChangeToken: str + Updates: Sequence[GeoMatchSetUpdateTypeDef] + +class SampledHTTPRequestTypeDef(BaseModel): + Request: HTTPRequestTypeDef + Weight: int + Timestamp: Optional[datetime] = None + Action: Optional[str] = None + RuleWithinRuleGroup: Optional[str] = None + +class CreateIPSetResponseTypeDef(BaseModel): + IPSet: IPSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIPSetResponseTypeDef(BaseModel): + IPSet: IPSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIPSetRequestRequestTypeDef(BaseModel): + IPSetId: str + ChangeToken: str + Updates: Sequence[IPSetUpdateTypeDef] + +class CreateRateBasedRuleResponseTypeDef(BaseModel): + Rule: RateBasedRuleTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRateBasedRuleResponseTypeDef(BaseModel): + Rule: RateBasedRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleResponseTypeDef(BaseModel): + Rule: RuleTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuleResponseTypeDef(BaseModel): + Rule: RuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRateBasedRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + Updates: Sequence[RuleUpdateTypeDef] + RateLimit: int + +class UpdateRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + Updates: Sequence[RuleUpdateTypeDef] + +class GetSampledRequestsRequestRequestTypeDef(BaseModel): + WebAclId: str + RuleId: str + TimeWindow: TimeWindowTypeDef + MaxItems: int + +class CreateWebACLResponseTypeDef(BaseModel): + WebACL: WebACLTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWebACLResponseTypeDef(BaseModel): + WebACL: WebACLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: str + Updates: Sequence[RuleGroupUpdateTypeDef] + ChangeToken: str + +class UpdateWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + ChangeToken: str + Updates: Optional[Sequence[WebACLUpdateTypeDef]] = None + DefaultAction: Optional[WafActionTypeDef] = None + +class CreateByteMatchSetResponseTypeDef(BaseModel): + ByteMatchSet: ByteMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetByteMatchSetResponseTypeDef(BaseModel): + ByteMatchSet: ByteMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateByteMatchSetRequestRequestTypeDef(BaseModel): + ByteMatchSetId: str + ChangeToken: str + Updates: Sequence[ByteMatchSetUpdateTypeDef] + +class CreateRegexMatchSetResponseTypeDef(BaseModel): + RegexMatchSet: RegexMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegexMatchSetResponseTypeDef(BaseModel): + RegexMatchSet: RegexMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexMatchSetRequestRequestTypeDef(BaseModel): + RegexMatchSetId: str + Updates: Sequence[RegexMatchSetUpdateTypeDef] + ChangeToken: str + +class CreateSizeConstraintSetResponseTypeDef(BaseModel): + SizeConstraintSet: SizeConstraintSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSizeConstraintSetResponseTypeDef(BaseModel): + SizeConstraintSet: SizeConstraintSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSizeConstraintSetRequestRequestTypeDef(BaseModel): + SizeConstraintSetId: str + ChangeToken: str + Updates: Sequence[SizeConstraintSetUpdateTypeDef] + +class CreateSqlInjectionMatchSetResponseTypeDef(BaseModel): + SqlInjectionMatchSet: SqlInjectionMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSqlInjectionMatchSetResponseTypeDef(BaseModel): + SqlInjectionMatchSet: SqlInjectionMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + SqlInjectionMatchSetId: str + ChangeToken: str + Updates: Sequence[SqlInjectionMatchSetUpdateTypeDef] + +class CreateXssMatchSetResponseTypeDef(BaseModel): + XssMatchSet: XssMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetXssMatchSetResponseTypeDef(BaseModel): + XssMatchSet: XssMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateXssMatchSetRequestRequestTypeDef(BaseModel): + XssMatchSetId: str + ChangeToken: str + Updates: Sequence[XssMatchSetUpdateTypeDef] + +class GetSampledRequestsResponseTypeDef(BaseModel): + SampledRequests: List[SampledHTTPRequestTypeDef] + PopulationSize: int + TimeWindow: TimeWindowOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/waf_constants.py b/aws_resource_validator/pydantic_models/waf_constants.py new file mode 100644 index 00000000..e7358fbf --- /dev/null +++ b/aws_resource_validator/pydantic_models/waf_constants.py @@ -0,0 +1,703 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChangeActionType = Literal["DELETE", "INSERT"] +ChangeTokenStatusType = Literal["INSYNC", "PENDING", "PROVISIONED"] +ComparisonOperatorType = Literal["EQ", "GE", "GT", "LE", "LT", "NE"] +GeoMatchConstraintTypeType = Literal["Country"] +GeoMatchConstraintValueType = Literal["AD", + "AE", + "AF", + "AG", + "AI", + "AL", + "AM", + "AO", + "AQ", + "AR", + "AS", + "AT", + "AU", + "AW", + "AX", + "AZ", + "BA", + "BB", + "BD", + "BE", + "BF", + "BG", + "BH", + "BI", + "BJ", + "BL", + "BM", + "BN", + "BO", + "BQ", + "BR", + "BS", + "BT", + "BV", + "BW", + "BY", + "BZ", + "CA", + "CC", + "CD", + "CF", + "CG", + "CH", + "CI", + "CK", + "CL", + "CM", + "CN", + "CO", + "CR", + "CU", + "CV", + "CW", + "CX", + "CY", + "CZ", + "DE", + "DJ", + "DK", + "DM", + "DO", + "DZ", + "EC", + "EE", + "EG", + "EH", + "ER", + "ES", + "ET", + "FI", + "FJ", + "FK", + "FM", + "FO", + "FR", + "GA", + "GB", + "GD", + "GE", + "GF", + "GG", + "GH", + "GI", + "GL", + "GM", + "GN", + "GP", + "GQ", + "GR", + "GS", + "GT", + "GU", + "GW", + "GY", + "HK", + "HM", + "HN", + "HR", + "HT", + "HU", + "ID", + "IE", + "IL", + "IM", + "IN", + "IO", + "IQ", + "IR", + "IS", + "IT", + "JE", + "JM", + "JO", + "JP", + "KE", + "KG", + "KH", + "KI", + "KM", + "KN", + "KP", + "KR", + "KW", + "KY", + "KZ", + "LA", + "LB", + "LC", + "LI", + "LK", + "LR", + "LS", + "LT", + "LU", + "LV", + "LY", + "MA", + "MC", + "MD", + "ME", + "MF", + "MG", + "MH", + "MK", + "ML", + "MM", + "MN", + "MO", + "MP", + "MQ", + "MR", + "MS", + "MT", + "MU", + "MV", + "MW", + "MX", + "MY", + "MZ", + "NA", + "NC", + "NE", + "NF", + "NG", + "NI", + "NL", + "NO", + "NP", + "NR", + "NU", + "NZ", + "OM", + "PA", + "PE", + "PF", + "PG", + "PH", + "PK", + "PL", + "PM", + "PN", + "PR", + "PS", + "PT", + "PW", + "PY", + "QA", + "RE", + "RO", + "RS", + "RU", + "RW", + "SA", + "SB", + "SC", + "SD", + "SE", + "SG", + "SH", + "SI", + "SJ", + "SK", + "SL", + "SM", + "SN", + "SO", + "SR", + "SS", + "ST", + "SV", + "SX", + "SY", + "SZ", + "TC", + "TD", + "TF", + "TG", + "TH", + "TJ", + "TK", + "TL", + "TM", + "TN", + "TO", + "TR", + "TT", + "TV", + "TW", + "TZ", + "UA", + "UG", + "UM", + "US", + "UY", + "UZ", + "VA", + "VC", + "VE", + "VG", + "VI", + "VN", + "VU", + "WF", + "WS", + "YE", + "YT", + "ZA", + "ZM", + "ZW",] +GetRateBasedRuleManagedKeysPaginatorName = Literal["get_rate_based_rule_managed_keys"] +IPSetDescriptorTypeType = Literal["IPV4", "IPV6"] +ListActivatedRulesInRuleGroupPaginatorName = Literal["list_activated_rules_in_rule_group"] +ListByteMatchSetsPaginatorName = Literal["list_byte_match_sets"] +ListGeoMatchSetsPaginatorName = Literal["list_geo_match_sets"] +ListIPSetsPaginatorName = Literal["list_ip_sets"] +ListLoggingConfigurationsPaginatorName = Literal["list_logging_configurations"] +ListRateBasedRulesPaginatorName = Literal["list_rate_based_rules"] +ListRegexMatchSetsPaginatorName = Literal["list_regex_match_sets"] +ListRegexPatternSetsPaginatorName = Literal["list_regex_pattern_sets"] +ListRuleGroupsPaginatorName = Literal["list_rule_groups"] +ListRulesPaginatorName = Literal["list_rules"] +ListSizeConstraintSetsPaginatorName = Literal["list_size_constraint_sets"] +ListSqlInjectionMatchSetsPaginatorName = Literal["list_sql_injection_match_sets"] +ListSubscribedRuleGroupsPaginatorName = Literal["list_subscribed_rule_groups"] +ListWebACLsPaginatorName = Literal["list_web_acls"] +ListXssMatchSetsPaginatorName = Literal["list_xss_match_sets"] +MatchFieldTypeType = Literal["ALL_QUERY_ARGS", "BODY", "HEADER", "METHOD", "QUERY_STRING", "SINGLE_QUERY_ARG", "URI"] +PositionalConstraintType = Literal["CONTAINS", "CONTAINS_WORD", "ENDS_WITH", "EXACTLY", "STARTS_WITH"] +PredicateTypeType = Literal["ByteMatch", + "GeoMatch", + "IPMatch", + "RegexMatch", + "SizeConstraint", + "SqlInjectionMatch", + "XssMatch",] +RateKeyType = Literal["IP"] +TextTransformationType = Literal["CMD_LINE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "NONE", "URL_DECODE"] +WafActionTypeType = Literal["ALLOW", "BLOCK", "COUNT"] +WafOverrideActionTypeType = Literal["COUNT", "NONE"] +WafRuleTypeType = Literal["GROUP", "RATE_BASED", "REGULAR"] +WAFServiceName = Literal["waf"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["get_rate_based_rule_managed_keys", + "list_activated_rules_in_rule_group", + "list_byte_match_sets", + "list_geo_match_sets", + "list_ip_sets", + "list_logging_configurations", + "list_rate_based_rules", + "list_regex_match_sets", + "list_regex_pattern_sets", + "list_rule_groups", + "list_rules", + "list_size_constraint_sets", + "list_sql_injection_match_sets", + "list_subscribed_rule_groups", + "list_web_acls", + "list_xss_match_sets",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +LoggingConfigurationUnionTypeDef = Union[ 'LoggingConfigurationTypeDef', 'LoggingConfigurationExtraOutputTypeDef' ] +TimeWindowUnionTypeDef = Union['TimeWindowTypeDef', 'TimeWindowOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/waf_regional_classes.py b/aws_resource_validator/pydantic_models/waf_regional_classes.py new file mode 100644 index 00000000..f0c6b3e9 --- /dev/null +++ b/aws_resource_validator/pydantic_models/waf_regional_classes.py @@ -0,0 +1,932 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.waf_regional_constants import * + +class ExcludedRuleTypeDef(BaseModel): + RuleId: str + +class WafActionTypeDef(BaseModel): + Type: WafActionTypeType + +class WafOverrideActionTypeDef(BaseModel): + Type: WafOverrideActionTypeType + +class AssociateWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + ResourceArn: str + +class ByteMatchSetSummaryTypeDef(BaseModel): + ByteMatchSetId: str + Name: str + +class FieldToMatchTypeDef(BaseModel): + Type: MatchFieldTypeType + Data: Optional[str] = None + +class CreateByteMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateGeoMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateIPSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class CreateRegexMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateRegexPatternSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class RegexPatternSetTypeDef(BaseModel): + RegexPatternSetId: str + RegexPatternStrings: List[str] + Name: Optional[str] = None + +class RuleGroupTypeDef(BaseModel): + RuleGroupId: str + Name: Optional[str] = None + MetricName: Optional[str] = None + +class CreateSizeConstraintSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class CreateWebACLMigrationStackRequestRequestTypeDef(BaseModel): + WebACLId: str + S3BucketName: str + IgnoreUnsupportedType: bool + +class CreateXssMatchSetRequestRequestTypeDef(BaseModel): + Name: str + ChangeToken: str + +class DeleteByteMatchSetRequestRequestTypeDef(BaseModel): + ByteMatchSetId: str + ChangeToken: str + +class DeleteGeoMatchSetRequestRequestTypeDef(BaseModel): + GeoMatchSetId: str + ChangeToken: str + +class DeleteIPSetRequestRequestTypeDef(BaseModel): + IPSetId: str + ChangeToken: str + +class DeleteLoggingConfigurationRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeletePermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteRateBasedRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + +class DeleteRegexMatchSetRequestRequestTypeDef(BaseModel): + RegexMatchSetId: str + ChangeToken: str + +class DeleteRegexPatternSetRequestRequestTypeDef(BaseModel): + RegexPatternSetId: str + ChangeToken: str + +class DeleteRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: str + ChangeToken: str + +class DeleteRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + +class DeleteSizeConstraintSetRequestRequestTypeDef(BaseModel): + SizeConstraintSetId: str + ChangeToken: str + +class DeleteSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + SqlInjectionMatchSetId: str + ChangeToken: str + +class DeleteWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + ChangeToken: str + +class DeleteXssMatchSetRequestRequestTypeDef(BaseModel): + XssMatchSetId: str + ChangeToken: str + +class DisassociateWebACLRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GeoMatchConstraintTypeDef(BaseModel): + Type: Literal["Country"] + Value: GeoMatchConstraintValueType + +class GeoMatchSetSummaryTypeDef(BaseModel): + GeoMatchSetId: str + Name: str + +class GetByteMatchSetRequestRequestTypeDef(BaseModel): + ByteMatchSetId: str + +class GetChangeTokenStatusRequestRequestTypeDef(BaseModel): + ChangeToken: str + +class GetGeoMatchSetRequestRequestTypeDef(BaseModel): + GeoMatchSetId: str + +class GetIPSetRequestRequestTypeDef(BaseModel): + IPSetId: str + +class GetLoggingConfigurationRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetPermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetRateBasedRuleManagedKeysRequestRequestTypeDef(BaseModel): + RuleId: str + NextMarker: Optional[str] = None + +class GetRateBasedRuleRequestRequestTypeDef(BaseModel): + RuleId: str + +class GetRegexMatchSetRequestRequestTypeDef(BaseModel): + RegexMatchSetId: str + +class GetRegexPatternSetRequestRequestTypeDef(BaseModel): + RegexPatternSetId: str + +class GetRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: str + +class GetRuleRequestRequestTypeDef(BaseModel): + RuleId: str + +class GetSizeConstraintSetRequestRequestTypeDef(BaseModel): + SizeConstraintSetId: str + +class GetSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + SqlInjectionMatchSetId: str + +class GetWebACLForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class WebACLSummaryTypeDef(BaseModel): + WebACLId: str + Name: str + +class GetWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + +class GetXssMatchSetRequestRequestTypeDef(BaseModel): + XssMatchSetId: str + +class HTTPHeaderTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class IPSetDescriptorTypeDef(BaseModel): + Type: IPSetDescriptorTypeType + Value: str + +class IPSetSummaryTypeDef(BaseModel): + IPSetId: str + Name: str + +class ListActivatedRulesInRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: Optional[str] = None + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListByteMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListGeoMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListIPSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListLoggingConfigurationsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListRateBasedRulesRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RuleSummaryTypeDef(BaseModel): + RuleId: str + Name: str + +class ListRegexMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RegexMatchSetSummaryTypeDef(BaseModel): + RegexMatchSetId: str + Name: str + +class ListRegexPatternSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RegexPatternSetSummaryTypeDef(BaseModel): + RegexPatternSetId: str + Name: str + +class ListResourcesForWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + ResourceType: Optional[ResourceTypeType] = None + +class ListRuleGroupsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class RuleGroupSummaryTypeDef(BaseModel): + RuleGroupId: str + Name: str + +class ListRulesRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListSizeConstraintSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class SizeConstraintSetSummaryTypeDef(BaseModel): + SizeConstraintSetId: str + Name: str + +class ListSqlInjectionMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class SqlInjectionMatchSetSummaryTypeDef(BaseModel): + SqlInjectionMatchSetId: str + Name: str + +class ListSubscribedRuleGroupsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class SubscribedRuleGroupSummaryTypeDef(BaseModel): + RuleGroupId: str + Name: str + MetricName: str + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListWebACLsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListXssMatchSetsRequestRequestTypeDef(BaseModel): + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class XssMatchSetSummaryTypeDef(BaseModel): + XssMatchSetId: str + Name: str + +class PredicateTypeDef(BaseModel): + Negated: bool + Type: PredicateTypeType + DataId: str + +class PutPermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class RegexPatternSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + RegexPatternString: str + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class ActivatedRuleTypeDef(BaseModel): + Priority: int + RuleId: str + Action: Optional[WafActionTypeDef] = None + OverrideAction: Optional[WafOverrideActionTypeDef] = None + Type: Optional[WafRuleTypeType] = None + ExcludedRules: Optional[List[ExcludedRuleTypeDef]] = None + +class ByteMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TargetString: bytes + TextTransformation: TextTransformationType + PositionalConstraint: PositionalConstraintType + +class LoggingConfigurationTypeDef(BaseModel): + ResourceArn: str + LogDestinationConfigs: List[str] + RedactedFields: Optional[List[FieldToMatchTypeDef]] = None + +class RegexMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + RegexPatternSetId: str + +class SizeConstraintTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + ComparisonOperator: ComparisonOperatorType + Size: int + +class SqlInjectionMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + +class XssMatchTupleTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformation: TextTransformationType + +class CreateWebACLMigrationStackResponseTypeDef(BaseModel): + S3ObjectUrl: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteByteMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteGeoMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteIPSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRateBasedRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegexMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRegexPatternSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRuleGroupResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSizeConstraintSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSqlInjectionMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteWebACLResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteXssMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChangeTokenResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetChangeTokenStatusResponseTypeDef(BaseModel): + ChangeTokenStatus: ChangeTokenStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetPermissionPolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRateBasedRuleManagedKeysResponseTypeDef(BaseModel): + ManagedKeys: List[str] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListByteMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + ByteMatchSets: List[ByteMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesForWebACLResponseTypeDef(BaseModel): + ResourceArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateByteMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGeoMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIPSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRateBasedRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexPatternSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleGroupResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSizeConstraintSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSqlInjectionMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebACLResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateXssMatchSetResponseTypeDef(BaseModel): + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRateBasedRuleRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + RateKey: Literal["IP"] + RateLimit: int + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRuleGroupRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateRuleRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateWebACLRequestRequestTypeDef(BaseModel): + Name: str + MetricName: str + DefaultAction: WafActionTypeDef + ChangeToken: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class TagInfoForResourceTypeDef(BaseModel): + ResourceARN: Optional[str] = None + TagList: Optional[List[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateRegexPatternSetResponseTypeDef(BaseModel): + RegexPatternSet: RegexPatternSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegexPatternSetResponseTypeDef(BaseModel): + RegexPatternSet: RegexPatternSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleGroupResponseTypeDef(BaseModel): + RuleGroup: RuleGroupTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuleGroupResponseTypeDef(BaseModel): + RuleGroup: RuleGroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GeoMatchSetTypeDef(BaseModel): + GeoMatchSetId: str + GeoMatchConstraints: List[GeoMatchConstraintTypeDef] + Name: Optional[str] = None + +class GeoMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + GeoMatchConstraint: GeoMatchConstraintTypeDef + +class ListGeoMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + GeoMatchSets: List[GeoMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetWebACLForResourceResponseTypeDef(BaseModel): + WebACLSummary: WebACLSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebACLsResponseTypeDef(BaseModel): + NextMarker: str + WebACLs: List[WebACLSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class HTTPRequestTypeDef(BaseModel): + ClientIP: Optional[str] = None + Country: Optional[str] = None + URI: Optional[str] = None + Method: Optional[str] = None + HTTPVersion: Optional[str] = None + Headers: Optional[List[HTTPHeaderTypeDef]] = None + +class IPSetTypeDef(BaseModel): + IPSetId: str + IPSetDescriptors: List[IPSetDescriptorTypeDef] + Name: Optional[str] = None + +class IPSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + IPSetDescriptor: IPSetDescriptorTypeDef + +class ListIPSetsResponseTypeDef(BaseModel): + NextMarker: str + IPSets: List[IPSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRateBasedRulesResponseTypeDef(BaseModel): + NextMarker: str + Rules: List[RuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRulesResponseTypeDef(BaseModel): + NextMarker: str + Rules: List[RuleSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRegexMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + RegexMatchSets: List[RegexMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRegexPatternSetsResponseTypeDef(BaseModel): + NextMarker: str + RegexPatternSets: List[RegexPatternSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListRuleGroupsResponseTypeDef(BaseModel): + NextMarker: str + RuleGroups: List[RuleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSizeConstraintSetsResponseTypeDef(BaseModel): + NextMarker: str + SizeConstraintSets: List[SizeConstraintSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSqlInjectionMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + SqlInjectionMatchSets: List[SqlInjectionMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListSubscribedRuleGroupsResponseTypeDef(BaseModel): + NextMarker: str + RuleGroups: List[SubscribedRuleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListXssMatchSetsResponseTypeDef(BaseModel): + NextMarker: str + XssMatchSets: List[XssMatchSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RateBasedRuleTypeDef(BaseModel): + RuleId: str + MatchPredicates: List[PredicateTypeDef] + RateKey: Literal["IP"] + RateLimit: int + Name: Optional[str] = None + MetricName: Optional[str] = None + +class RuleTypeDef(BaseModel): + RuleId: str + Predicates: List[PredicateTypeDef] + Name: Optional[str] = None + MetricName: Optional[str] = None + +class RuleUpdateTypeDef(BaseModel): + Action: ChangeActionType + Predicate: PredicateTypeDef + +class UpdateRegexPatternSetRequestRequestTypeDef(BaseModel): + RegexPatternSetId: str + Updates: Sequence[RegexPatternSetUpdateTypeDef] + ChangeToken: str + +class TimeWindowTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class ListActivatedRulesInRuleGroupResponseTypeDef(BaseModel): + NextMarker: str + ActivatedRules: List[ActivatedRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RuleGroupUpdateTypeDef(BaseModel): + Action: ChangeActionType + ActivatedRule: ActivatedRuleTypeDef + +class WebACLTypeDef(BaseModel): + WebACLId: str + DefaultAction: WafActionTypeDef + Rules: List[ActivatedRuleTypeDef] + Name: Optional[str] = None + MetricName: Optional[str] = None + WebACLArn: Optional[str] = None + +class WebACLUpdateTypeDef(BaseModel): + Action: ChangeActionType + ActivatedRule: ActivatedRuleTypeDef + +class ByteMatchSetTypeDef(BaseModel): + ByteMatchSetId: str + ByteMatchTuples: List[ByteMatchTupleTypeDef] + Name: Optional[str] = None + +class ByteMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + ByteMatchTuple: ByteMatchTupleTypeDef + +class GetLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoggingConfigurationsResponseTypeDef(BaseModel): + LoggingConfigurations: List[LoggingConfigurationTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingConfigurationRequestRequestTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + +class PutLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class RegexMatchSetTypeDef(BaseModel): + RegexMatchSetId: Optional[str] = None + Name: Optional[str] = None + RegexMatchTuples: Optional[List[RegexMatchTupleTypeDef]] = None + +class RegexMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + RegexMatchTuple: RegexMatchTupleTypeDef + +class SizeConstraintSetTypeDef(BaseModel): + SizeConstraintSetId: str + SizeConstraints: List[SizeConstraintTypeDef] + Name: Optional[str] = None + +class SizeConstraintSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + SizeConstraint: SizeConstraintTypeDef + +class SqlInjectionMatchSetTypeDef(BaseModel): + SqlInjectionMatchSetId: str + SqlInjectionMatchTuples: List[SqlInjectionMatchTupleTypeDef] + Name: Optional[str] = None + +class SqlInjectionMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + SqlInjectionMatchTuple: SqlInjectionMatchTupleTypeDef + +class XssMatchSetTypeDef(BaseModel): + XssMatchSetId: str + XssMatchTuples: List[XssMatchTupleTypeDef] + Name: Optional[str] = None + +class XssMatchSetUpdateTypeDef(BaseModel): + Action: ChangeActionType + XssMatchTuple: XssMatchTupleTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + NextMarker: str + TagInfoForResource: TagInfoForResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGeoMatchSetResponseTypeDef(BaseModel): + GeoMatchSet: GeoMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGeoMatchSetResponseTypeDef(BaseModel): + GeoMatchSet: GeoMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGeoMatchSetRequestRequestTypeDef(BaseModel): + GeoMatchSetId: str + ChangeToken: str + Updates: Sequence[GeoMatchSetUpdateTypeDef] + +class SampledHTTPRequestTypeDef(BaseModel): + Request: HTTPRequestTypeDef + Weight: int + Timestamp: Optional[datetime] = None + Action: Optional[str] = None + RuleWithinRuleGroup: Optional[str] = None + +class CreateIPSetResponseTypeDef(BaseModel): + IPSet: IPSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetIPSetResponseTypeDef(BaseModel): + IPSet: IPSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIPSetRequestRequestTypeDef(BaseModel): + IPSetId: str + ChangeToken: str + Updates: Sequence[IPSetUpdateTypeDef] + +class CreateRateBasedRuleResponseTypeDef(BaseModel): + Rule: RateBasedRuleTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRateBasedRuleResponseTypeDef(BaseModel): + Rule: RateBasedRuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleResponseTypeDef(BaseModel): + Rule: RuleTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRuleResponseTypeDef(BaseModel): + Rule: RuleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRateBasedRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + Updates: Sequence[RuleUpdateTypeDef] + RateLimit: int + +class UpdateRuleRequestRequestTypeDef(BaseModel): + RuleId: str + ChangeToken: str + Updates: Sequence[RuleUpdateTypeDef] + +class GetSampledRequestsRequestRequestTypeDef(BaseModel): + WebAclId: str + RuleId: str + TimeWindow: TimeWindowTypeDef + MaxItems: int + +class UpdateRuleGroupRequestRequestTypeDef(BaseModel): + RuleGroupId: str + Updates: Sequence[RuleGroupUpdateTypeDef] + ChangeToken: str + +class CreateWebACLResponseTypeDef(BaseModel): + WebACL: WebACLTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetWebACLResponseTypeDef(BaseModel): + WebACL: WebACLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebACLRequestRequestTypeDef(BaseModel): + WebACLId: str + ChangeToken: str + Updates: Optional[Sequence[WebACLUpdateTypeDef]] = None + DefaultAction: Optional[WafActionTypeDef] = None + +class CreateByteMatchSetResponseTypeDef(BaseModel): + ByteMatchSet: ByteMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetByteMatchSetResponseTypeDef(BaseModel): + ByteMatchSet: ByteMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateByteMatchSetRequestRequestTypeDef(BaseModel): + ByteMatchSetId: str + ChangeToken: str + Updates: Sequence[ByteMatchSetUpdateTypeDef] + +class CreateRegexMatchSetResponseTypeDef(BaseModel): + RegexMatchSet: RegexMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegexMatchSetResponseTypeDef(BaseModel): + RegexMatchSet: RegexMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexMatchSetRequestRequestTypeDef(BaseModel): + RegexMatchSetId: str + Updates: Sequence[RegexMatchSetUpdateTypeDef] + ChangeToken: str + +class CreateSizeConstraintSetResponseTypeDef(BaseModel): + SizeConstraintSet: SizeConstraintSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSizeConstraintSetResponseTypeDef(BaseModel): + SizeConstraintSet: SizeConstraintSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSizeConstraintSetRequestRequestTypeDef(BaseModel): + SizeConstraintSetId: str + ChangeToken: str + Updates: Sequence[SizeConstraintSetUpdateTypeDef] + +class CreateSqlInjectionMatchSetResponseTypeDef(BaseModel): + SqlInjectionMatchSet: SqlInjectionMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSqlInjectionMatchSetResponseTypeDef(BaseModel): + SqlInjectionMatchSet: SqlInjectionMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSqlInjectionMatchSetRequestRequestTypeDef(BaseModel): + SqlInjectionMatchSetId: str + ChangeToken: str + Updates: Sequence[SqlInjectionMatchSetUpdateTypeDef] + +class CreateXssMatchSetResponseTypeDef(BaseModel): + XssMatchSet: XssMatchSetTypeDef + ChangeToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetXssMatchSetResponseTypeDef(BaseModel): + XssMatchSet: XssMatchSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateXssMatchSetRequestRequestTypeDef(BaseModel): + XssMatchSetId: str + ChangeToken: str + Updates: Sequence[XssMatchSetUpdateTypeDef] + +class GetSampledRequestsResponseTypeDef(BaseModel): + SampledRequests: List[SampledHTTPRequestTypeDef] + PopulationSize: int + TimeWindow: TimeWindowTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/waf_regional_constants.py b/aws_resource_validator/pydantic_models/waf_regional_constants.py new file mode 100644 index 00000000..683cac9d --- /dev/null +++ b/aws_resource_validator/pydantic_models/waf_regional_constants.py @@ -0,0 +1,686 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ChangeActionType = Literal["DELETE", "INSERT"] +ChangeTokenStatusType = Literal["INSYNC", "PENDING", "PROVISIONED"] +ComparisonOperatorType = Literal["EQ", "GE", "GT", "LE", "LT", "NE"] +GeoMatchConstraintTypeType = Literal["Country"] +GeoMatchConstraintValueType = Literal["AD", + "AE", + "AF", + "AG", + "AI", + "AL", + "AM", + "AO", + "AQ", + "AR", + "AS", + "AT", + "AU", + "AW", + "AX", + "AZ", + "BA", + "BB", + "BD", + "BE", + "BF", + "BG", + "BH", + "BI", + "BJ", + "BL", + "BM", + "BN", + "BO", + "BQ", + "BR", + "BS", + "BT", + "BV", + "BW", + "BY", + "BZ", + "CA", + "CC", + "CD", + "CF", + "CG", + "CH", + "CI", + "CK", + "CL", + "CM", + "CN", + "CO", + "CR", + "CU", + "CV", + "CW", + "CX", + "CY", + "CZ", + "DE", + "DJ", + "DK", + "DM", + "DO", + "DZ", + "EC", + "EE", + "EG", + "EH", + "ER", + "ES", + "ET", + "FI", + "FJ", + "FK", + "FM", + "FO", + "FR", + "GA", + "GB", + "GD", + "GE", + "GF", + "GG", + "GH", + "GI", + "GL", + "GM", + "GN", + "GP", + "GQ", + "GR", + "GS", + "GT", + "GU", + "GW", + "GY", + "HK", + "HM", + "HN", + "HR", + "HT", + "HU", + "ID", + "IE", + "IL", + "IM", + "IN", + "IO", + "IQ", + "IR", + "IS", + "IT", + "JE", + "JM", + "JO", + "JP", + "KE", + "KG", + "KH", + "KI", + "KM", + "KN", + "KP", + "KR", + "KW", + "KY", + "KZ", + "LA", + "LB", + "LC", + "LI", + "LK", + "LR", + "LS", + "LT", + "LU", + "LV", + "LY", + "MA", + "MC", + "MD", + "ME", + "MF", + "MG", + "MH", + "MK", + "ML", + "MM", + "MN", + "MO", + "MP", + "MQ", + "MR", + "MS", + "MT", + "MU", + "MV", + "MW", + "MX", + "MY", + "MZ", + "NA", + "NC", + "NE", + "NF", + "NG", + "NI", + "NL", + "NO", + "NP", + "NR", + "NU", + "NZ", + "OM", + "PA", + "PE", + "PF", + "PG", + "PH", + "PK", + "PL", + "PM", + "PN", + "PR", + "PS", + "PT", + "PW", + "PY", + "QA", + "RE", + "RO", + "RS", + "RU", + "RW", + "SA", + "SB", + "SC", + "SD", + "SE", + "SG", + "SH", + "SI", + "SJ", + "SK", + "SL", + "SM", + "SN", + "SO", + "SR", + "SS", + "ST", + "SV", + "SX", + "SY", + "SZ", + "TC", + "TD", + "TF", + "TG", + "TH", + "TJ", + "TK", + "TL", + "TM", + "TN", + "TO", + "TR", + "TT", + "TV", + "TW", + "TZ", + "UA", + "UG", + "UM", + "US", + "UY", + "UZ", + "VA", + "VC", + "VE", + "VG", + "VI", + "VN", + "VU", + "WF", + "WS", + "YE", + "YT", + "ZA", + "ZM", + "ZW",] +IPSetDescriptorTypeType = Literal["IPV4", "IPV6"] +MatchFieldTypeType = Literal["ALL_QUERY_ARGS", "BODY", "HEADER", "METHOD", "QUERY_STRING", "SINGLE_QUERY_ARG", "URI"] +PositionalConstraintType = Literal["CONTAINS", "CONTAINS_WORD", "ENDS_WITH", "EXACTLY", "STARTS_WITH"] +PredicateTypeType = Literal["ByteMatch", + "GeoMatch", + "IPMatch", + "RegexMatch", + "SizeConstraint", + "SqlInjectionMatch", + "XssMatch",] +RateKeyType = Literal["IP"] +ResourceTypeType = Literal["API_GATEWAY", "APPLICATION_LOAD_BALANCER"] +TextTransformationType = Literal["CMD_LINE", "COMPRESS_WHITE_SPACE", "HTML_ENTITY_DECODE", "LOWERCASE", "NONE", "URL_DECODE"] +WafActionTypeType = Literal["ALLOW", "BLOCK", "COUNT"] +WafOverrideActionTypeType = Literal["COUNT", "NONE"] +WafRuleTypeType = Literal["GROUP", "RATE_BASED", "REGULAR"] +WAFRegionalServiceName = Literal["waf-regional"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/wafv2_classes.py b/aws_resource_validator/pydantic_models/wafv2_classes.py new file mode 100644 index 00000000..84f825e5 --- /dev/null +++ b/aws_resource_validator/pydantic_models/wafv2_classes.py @@ -0,0 +1,1409 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.wafv2_constants import * + +class APIKeySummaryTypeDef(BaseModel): + TokenDomains: Optional[List[str]] = None + APIKey: Optional[str] = None + CreationTimestamp: Optional[datetime] = None + Version: Optional[int] = None + +class AWSManagedRulesBotControlRuleSetTypeDef(BaseModel): + InspectionLevel: InspectionLevelType + EnableMachineLearning: Optional[bool] = None + +class ActionConditionTypeDef(BaseModel): + Action: ActionValueType + +class AddressFieldTypeDef(BaseModel): + Identifier: str + +class AndStatementOutputTypeDef(BaseModel): + Statements: List["StatementOutputTypeDef"] + +class AndStatementTypeDef(BaseModel): + Statements: Sequence["StatementTypeDef"] + +class AssociateWebACLRequestRequestTypeDef(BaseModel): + WebACLArn: str + ResourceArn: str + +class RequestBodyAssociatedResourceTypeConfigTypeDef(BaseModel): + DefaultSizeInspectionLimit: SizeInspectionLimitType + +class BodyTypeDef(BaseModel): + OversizeHandling: Optional[OversizeHandlingType] = None + +class TextTransformationTypeDef(BaseModel): + Priority: int + Type: TextTransformationTypeType + +class ImmunityTimePropertyTypeDef(BaseModel): + ImmunityTime: int + +class CaptchaResponseTypeDef(BaseModel): + ResponseCode: Optional[int] = None + SolveTimestamp: Optional[int] = None + FailureReason: Optional[FailureReasonType] = None + +class ChallengeResponseTypeDef(BaseModel): + ResponseCode: Optional[int] = None + SolveTimestamp: Optional[int] = None + FailureReason: Optional[FailureReasonType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class LabelNameConditionTypeDef(BaseModel): + LabelName: str + +class CookieMatchPatternOutputTypeDef(BaseModel): + All: Optional[Dict[str, Any]] = None + IncludedCookies: Optional[List[str]] = None + ExcludedCookies: Optional[List[str]] = None + +class CookieMatchPatternTypeDef(BaseModel): + All: Optional[Mapping[str, Any]] = None + IncludedCookies: Optional[Sequence[str]] = None + ExcludedCookies: Optional[Sequence[str]] = None + +class CreateAPIKeyRequestRequestTypeDef(BaseModel): + Scope: ScopeType + TokenDomains: Sequence[str] + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class IPSetSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Description: Optional[str] = None + LockToken: Optional[str] = None + ARN: Optional[str] = None + +class RegexTypeDef(BaseModel): + RegexString: Optional[str] = None + +class RegexPatternSetSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Description: Optional[str] = None + LockToken: Optional[str] = None + ARN: Optional[str] = None + +class CustomResponseBodyTypeDef(BaseModel): + ContentType: ResponseContentTypeType + Content: str + +class VisibilityConfigTypeDef(BaseModel): + SampledRequestsEnabled: bool + CloudWatchMetricsEnabled: bool + MetricName: str + +class RuleGroupSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Description: Optional[str] = None + LockToken: Optional[str] = None + ARN: Optional[str] = None + +class WebACLSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Description: Optional[str] = None + LockToken: Optional[str] = None + ARN: Optional[str] = None + +class CustomHTTPHeaderTypeDef(BaseModel): + Name: str + Value: str + +class DeleteAPIKeyRequestRequestTypeDef(BaseModel): + Scope: ScopeType + APIKey: str + +class DeleteFirewallManagerRuleGroupsRequestRequestTypeDef(BaseModel): + WebACLArn: str + WebACLLockToken: str + +class DeleteIPSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + LockToken: str + +class DeleteLoggingConfigurationRequestRequestTypeDef(BaseModel): + ResourceArn: str + LogType: Optional[Literal["WAF_LOGS"]] = None + LogScope: Optional[LogScopeType] = None + +class DeletePermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class DeleteRegexPatternSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + LockToken: str + +class DeleteRuleGroupRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + LockToken: str + +class DeleteWebACLRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + LockToken: str + +class DescribeAllManagedProductsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + +class ManagedProductDescriptorTypeDef(BaseModel): + VendorName: Optional[str] = None + ManagedRuleSetName: Optional[str] = None + ProductId: Optional[str] = None + ProductLink: Optional[str] = None + ProductTitle: Optional[str] = None + ProductDescription: Optional[str] = None + SnsTopicArn: Optional[str] = None + IsVersioningSupported: Optional[bool] = None + IsAdvancedManagedRuleSet: Optional[bool] = None + +class DescribeManagedProductsByVendorRequestRequestTypeDef(BaseModel): + VendorName: str + Scope: ScopeType + +class DescribeManagedRuleGroupRequestRequestTypeDef(BaseModel): + VendorName: str + Name: str + Scope: ScopeType + VersionName: Optional[str] = None + +class LabelSummaryTypeDef(BaseModel): + Name: Optional[str] = None + +class DisassociateWebACLRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class EmailFieldTypeDef(BaseModel): + Identifier: str + +class ExcludedRuleTypeDef(BaseModel): + Name: str + +class HeaderOrderTypeDef(BaseModel): + OversizeHandling: OversizeHandlingType + +class JA3FingerprintTypeDef(BaseModel): + FallbackBehavior: FallbackBehaviorType + +class SingleHeaderTypeDef(BaseModel): + Name: str + +class SingleQueryArgumentTypeDef(BaseModel): + Name: str + +class ForwardedIPConfigTypeDef(BaseModel): + HeaderName: str + FallbackBehavior: FallbackBehaviorType + +class GenerateMobileSdkReleaseUrlRequestRequestTypeDef(BaseModel): + Platform: PlatformType + ReleaseVersion: str + +class GetDecryptedAPIKeyRequestRequestTypeDef(BaseModel): + Scope: ScopeType + APIKey: str + +class GetIPSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + +class IPSetTypeDef(BaseModel): + Name: str + Id: str + ARN: str + IPAddressVersion: IPAddressVersionType + Addresses: List[str] + Description: Optional[str] = None + +class GetLoggingConfigurationRequestRequestTypeDef(BaseModel): + ResourceArn: str + LogType: Optional[Literal["WAF_LOGS"]] = None + LogScope: Optional[LogScopeType] = None + +class GetManagedRuleSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + +class GetMobileSdkReleaseRequestRequestTypeDef(BaseModel): + Platform: PlatformType + ReleaseVersion: str + +class GetPermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetRateBasedStatementManagedKeysRequestRequestTypeDef(BaseModel): + Scope: ScopeType + WebACLName: str + WebACLId: str + RuleName: str + RuleGroupRuleName: Optional[str] = None + +class RateBasedStatementManagedKeysIPSetTypeDef(BaseModel): + IPAddressVersion: Optional[IPAddressVersionType] = None + Addresses: Optional[List[str]] = None + +class GetRegexPatternSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + +class GetRuleGroupRequestRequestTypeDef(BaseModel): + Name: Optional[str] = None + Scope: Optional[ScopeType] = None + Id: Optional[str] = None + ARN: Optional[str] = None + +class TimeWindowOutputTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + +class GetWebACLForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class GetWebACLRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + +class HTTPHeaderTypeDef(BaseModel): + Name: Optional[str] = None + Value: Optional[str] = None + +class HeaderMatchPatternOutputTypeDef(BaseModel): + All: Optional[Dict[str, Any]] = None + IncludedHeaders: Optional[List[str]] = None + ExcludedHeaders: Optional[List[str]] = None + +class HeaderMatchPatternTypeDef(BaseModel): + All: Optional[Mapping[str, Any]] = None + IncludedHeaders: Optional[Sequence[str]] = None + ExcludedHeaders: Optional[Sequence[str]] = None + +class IPSetForwardedIPConfigTypeDef(BaseModel): + HeaderName: str + FallbackBehavior: FallbackBehaviorType + Position: ForwardedIPPositionType + +class JsonMatchPatternOutputTypeDef(BaseModel): + All: Optional[Dict[str, Any]] = None + IncludedPaths: Optional[List[str]] = None + +class JsonMatchPatternTypeDef(BaseModel): + All: Optional[Mapping[str, Any]] = None + IncludedPaths: Optional[Sequence[str]] = None + +class LabelMatchStatementTypeDef(BaseModel): + Scope: LabelMatchScopeType + Key: str + +class LabelTypeDef(BaseModel): + Name: str + +class ListAPIKeysRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListAvailableManagedRuleGroupVersionsRequestRequestTypeDef(BaseModel): + VendorName: str + Name: str + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ManagedRuleGroupVersionTypeDef(BaseModel): + Name: Optional[str] = None + LastUpdateTimestamp: Optional[datetime] = None + +class ListAvailableManagedRuleGroupsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ManagedRuleGroupSummaryTypeDef(BaseModel): + VendorName: Optional[str] = None + Name: Optional[str] = None + VersioningSupported: Optional[bool] = None + Description: Optional[str] = None + +class ListIPSetsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListLoggingConfigurationsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + LogScope: Optional[LogScopeType] = None + +class ListManagedRuleSetsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ManagedRuleSetSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + Description: Optional[str] = None + LockToken: Optional[str] = None + ARN: Optional[str] = None + LabelNamespace: Optional[str] = None + +class ListMobileSdkReleasesRequestRequestTypeDef(BaseModel): + Platform: PlatformType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ReleaseSummaryTypeDef(BaseModel): + ReleaseVersion: Optional[str] = None + Timestamp: Optional[datetime] = None + +class ListRegexPatternSetsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListResourcesForWebACLRequestRequestTypeDef(BaseModel): + WebACLArn: str + ResourceType: Optional[ResourceTypeType] = None + +class ListRuleGroupsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class ListWebACLsRequestRequestTypeDef(BaseModel): + Scope: ScopeType + NextMarker: Optional[str] = None + Limit: Optional[int] = None + +class PasswordFieldTypeDef(BaseModel): + Identifier: str + +class UsernameFieldTypeDef(BaseModel): + Identifier: str + +class ManagedRuleSetVersionTypeDef(BaseModel): + AssociatedRuleGroupArn: Optional[str] = None + Capacity: Optional[int] = None + ForecastedLifetime: Optional[int] = None + PublishTimestamp: Optional[datetime] = None + LastUpdateTimestamp: Optional[datetime] = None + ExpiryTimestamp: Optional[datetime] = None + +class NotStatementTypeDef(BaseModel): + Statement: "StatementTypeDef" + +class OrStatementOutputTypeDef(BaseModel): + Statements: List["StatementOutputTypeDef"] + +class OrStatementTypeDef(BaseModel): + Statements: Sequence["StatementTypeDef"] + +class PhoneNumberFieldTypeDef(BaseModel): + Identifier: str + +class VersionToPublishTypeDef(BaseModel): + AssociatedRuleGroupArn: Optional[str] = None + ForecastedLifetime: Optional[int] = None + +class PutPermissionPolicyRequestRequestTypeDef(BaseModel): + ResourceArn: str + Policy: str + +class RateLimitLabelNamespaceTypeDef(BaseModel): + Namespace: str + +class ResponseInspectionBodyContainsOutputTypeDef(BaseModel): + SuccessStrings: List[str] + FailureStrings: List[str] + +class ResponseInspectionBodyContainsTypeDef(BaseModel): + SuccessStrings: Sequence[str] + FailureStrings: Sequence[str] + +class ResponseInspectionHeaderOutputTypeDef(BaseModel): + Name: str + SuccessValues: List[str] + FailureValues: List[str] + +class ResponseInspectionHeaderTypeDef(BaseModel): + Name: str + SuccessValues: Sequence[str] + FailureValues: Sequence[str] + +class ResponseInspectionJsonOutputTypeDef(BaseModel): + Identifier: str + SuccessValues: List[str] + FailureValues: List[str] + +class ResponseInspectionJsonTypeDef(BaseModel): + Identifier: str + SuccessValues: Sequence[str] + FailureValues: Sequence[str] + +class ResponseInspectionStatusCodeOutputTypeDef(BaseModel): + SuccessCodes: List[int] + FailureCodes: List[int] + +class ResponseInspectionStatusCodeTypeDef(BaseModel): + SuccessCodes: Sequence[int] + FailureCodes: Sequence[int] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateIPSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + Addresses: Sequence[str] + LockToken: str + Description: Optional[str] = None + +class AssociationConfigOutputTypeDef(BaseModel): + RequestBody: Optional[ Dict[AssociatedResourceTypeType, RequestBodyAssociatedResourceTypeConfigTypeDef] = None + +class AssociationConfigTypeDef(BaseModel): + RequestBody: Optional[ Mapping[AssociatedResourceTypeType, RequestBodyAssociatedResourceTypeConfigTypeDef] = None + +class RateLimitCookieOutputTypeDef(BaseModel): + Name: str + TextTransformations: List[TextTransformationTypeDef] + +class RateLimitCookieTypeDef(BaseModel): + Name: str + TextTransformations: Sequence[TextTransformationTypeDef] + +class RateLimitHeaderOutputTypeDef(BaseModel): + Name: str + TextTransformations: List[TextTransformationTypeDef] + +class RateLimitHeaderTypeDef(BaseModel): + Name: str + TextTransformations: Sequence[TextTransformationTypeDef] + +class RateLimitQueryArgumentOutputTypeDef(BaseModel): + Name: str + TextTransformations: List[TextTransformationTypeDef] + +class RateLimitQueryArgumentTypeDef(BaseModel): + Name: str + TextTransformations: Sequence[TextTransformationTypeDef] + +class RateLimitQueryStringOutputTypeDef(BaseModel): + TextTransformations: List[TextTransformationTypeDef] + +class RateLimitQueryStringTypeDef(BaseModel): + TextTransformations: Sequence[TextTransformationTypeDef] + +class RateLimitUriPathOutputTypeDef(BaseModel): + TextTransformations: List[TextTransformationTypeDef] + +class RateLimitUriPathTypeDef(BaseModel): + TextTransformations: Sequence[TextTransformationTypeDef] + +class CaptchaConfigTypeDef(BaseModel): + ImmunityTimeProperty: Optional[ImmunityTimePropertyTypeDef] = None + +class ChallengeConfigTypeDef(BaseModel): + ImmunityTimeProperty: Optional[ImmunityTimePropertyTypeDef] = None + +class CheckCapacityResponseTypeDef(BaseModel): + Capacity: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAPIKeyResponseTypeDef(BaseModel): + APIKey: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteFirewallManagerRuleGroupsResponseTypeDef(BaseModel): + NextWebACLLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GenerateMobileSdkReleaseUrlResponseTypeDef(BaseModel): + Url: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDecryptedAPIKeyResponseTypeDef(BaseModel): + TokenDomains: List[str] + CreationTimestamp: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class GetPermissionPolicyResponseTypeDef(BaseModel): + Policy: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAPIKeysResponseTypeDef(BaseModel): + NextMarker: str + APIKeySummaries: List[APIKeySummaryTypeDef] + ApplicationIntegrationURL: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesForWebACLResponseTypeDef(BaseModel): + ResourceArns: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class PutManagedRuleSetVersionsResponseTypeDef(BaseModel): + NextLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIPSetResponseTypeDef(BaseModel): + NextLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateManagedRuleSetVersionExpiryDateResponseTypeDef(BaseModel): + ExpiringVersion: str + ExpiryTimestamp: datetime + NextLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRegexPatternSetResponseTypeDef(BaseModel): + NextLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateRuleGroupResponseTypeDef(BaseModel): + NextLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWebACLResponseTypeDef(BaseModel): + NextLockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ConditionTypeDef(BaseModel): + ActionCondition: Optional[ActionConditionTypeDef] = None + LabelNameCondition: Optional[LabelNameConditionTypeDef] = None + +class CookiesOutputTypeDef(BaseModel): + MatchPattern: CookieMatchPatternOutputTypeDef + MatchScope: MapMatchScopeType + OversizeHandling: OversizeHandlingType + +class CookiesTypeDef(BaseModel): + MatchPattern: CookieMatchPatternTypeDef + MatchScope: MapMatchScopeType + OversizeHandling: OversizeHandlingType + +class CreateIPSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + IPAddressVersion: IPAddressVersionType + Addresses: Sequence[str] + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class MobileSdkReleaseTypeDef(BaseModel): + ReleaseVersion: Optional[str] = None + Timestamp: Optional[datetime] = None + ReleaseNotes: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + +class TagInfoForResourceTypeDef(BaseModel): + ResourceARN: Optional[str] = None + TagList: Optional[List[TagTypeDef]] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateIPSetResponseTypeDef(BaseModel): + Summary: IPSetSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListIPSetsResponseTypeDef(BaseModel): + NextMarker: str + IPSets: List[IPSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRegexPatternSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + RegularExpressionList: Sequence[RegexTypeDef] + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class RegexPatternSetTypeDef(BaseModel): + Name: Optional[str] = None + Id: Optional[str] = None + ARN: Optional[str] = None + Description: Optional[str] = None + RegularExpressionList: Optional[List[RegexTypeDef]] = None + +class UpdateRegexPatternSetRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + RegularExpressionList: Sequence[RegexTypeDef] + LockToken: str + Description: Optional[str] = None + +class CreateRegexPatternSetResponseTypeDef(BaseModel): + Summary: RegexPatternSetSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRegexPatternSetsResponseTypeDef(BaseModel): + NextMarker: str + RegexPatternSets: List[RegexPatternSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateRuleGroupResponseTypeDef(BaseModel): + Summary: RuleGroupSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListRuleGroupsResponseTypeDef(BaseModel): + NextMarker: str + RuleGroups: List[RuleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWebACLResponseTypeDef(BaseModel): + Summary: WebACLSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebACLsResponseTypeDef(BaseModel): + NextMarker: str + WebACLs: List[WebACLSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CustomRequestHandlingOutputTypeDef(BaseModel): + InsertHeaders: List[CustomHTTPHeaderTypeDef] + +class CustomRequestHandlingTypeDef(BaseModel): + InsertHeaders: Sequence[CustomHTTPHeaderTypeDef] + +class CustomResponseOutputTypeDef(BaseModel): + ResponseCode: int + CustomResponseBodyKey: Optional[str] = None + ResponseHeaders: Optional[List[CustomHTTPHeaderTypeDef]] = None + +class CustomResponseTypeDef(BaseModel): + ResponseCode: int + CustomResponseBodyKey: Optional[str] = None + ResponseHeaders: Optional[Sequence[CustomHTTPHeaderTypeDef]] = None + +class DescribeAllManagedProductsResponseTypeDef(BaseModel): + ManagedProducts: List[ManagedProductDescriptorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeManagedProductsByVendorResponseTypeDef(BaseModel): + ManagedProducts: List[ManagedProductDescriptorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GeoMatchStatementOutputTypeDef(BaseModel): + CountryCodes: Optional[List[CountryCodeType]] = None + ForwardedIPConfig: Optional[ForwardedIPConfigTypeDef] = None + +class GeoMatchStatementTypeDef(BaseModel): + CountryCodes: Optional[Sequence[CountryCodeType]] = None + ForwardedIPConfig: Optional[ForwardedIPConfigTypeDef] = None + +class GetIPSetResponseTypeDef(BaseModel): + IPSet: IPSetTypeDef + LockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRateBasedStatementManagedKeysResponseTypeDef(BaseModel): + ManagedKeysIPV4: RateBasedStatementManagedKeysIPSetTypeDef + ManagedKeysIPV6: RateBasedStatementManagedKeysIPSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class HTTPRequestTypeDef(BaseModel): + ClientIP: Optional[str] = None + Country: Optional[str] = None + URI: Optional[str] = None + Method: Optional[str] = None + HTTPVersion: Optional[str] = None + Headers: Optional[List[HTTPHeaderTypeDef]] = None + +class HeadersOutputTypeDef(BaseModel): + MatchPattern: HeaderMatchPatternOutputTypeDef + MatchScope: MapMatchScopeType + OversizeHandling: OversizeHandlingType + +class HeadersTypeDef(BaseModel): + MatchPattern: HeaderMatchPatternTypeDef + MatchScope: MapMatchScopeType + OversizeHandling: OversizeHandlingType + +class IPSetReferenceStatementTypeDef(BaseModel): + ARN: str + IPSetForwardedIPConfig: Optional[IPSetForwardedIPConfigTypeDef] = None + +class JsonBodyOutputTypeDef(BaseModel): + MatchPattern: JsonMatchPatternOutputTypeDef + MatchScope: JsonMatchScopeType + InvalidFallbackBehavior: Optional[BodyParsingFallbackBehaviorType] = None + OversizeHandling: Optional[OversizeHandlingType] = None + +class JsonBodyTypeDef(BaseModel): + MatchPattern: JsonMatchPatternTypeDef + MatchScope: JsonMatchScopeType + InvalidFallbackBehavior: Optional[BodyParsingFallbackBehaviorType] = None + OversizeHandling: Optional[OversizeHandlingType] = None + +class ListAvailableManagedRuleGroupVersionsResponseTypeDef(BaseModel): + NextMarker: str + Versions: List[ManagedRuleGroupVersionTypeDef] + CurrentDefaultVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAvailableManagedRuleGroupsResponseTypeDef(BaseModel): + NextMarker: str + ManagedRuleGroups: List[ManagedRuleGroupSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListManagedRuleSetsResponseTypeDef(BaseModel): + NextMarker: str + ManagedRuleSets: List[ManagedRuleSetSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListMobileSdkReleasesResponseTypeDef(BaseModel): + ReleaseSummaries: List[ReleaseSummaryTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class RequestInspectionTypeDef(BaseModel): + PayloadType: PayloadTypeType + UsernameField: UsernameFieldTypeDef + PasswordField: PasswordFieldTypeDef + +class ManagedRuleSetTypeDef(BaseModel): + Name: str + Id: str + ARN: str + Description: Optional[str] = None + PublishedVersions: Optional[Dict[str, ManagedRuleSetVersionTypeDef]] = None + RecommendedVersion: Optional[str] = None + LabelNamespace: Optional[str] = None + +class RequestInspectionACFPOutputTypeDef(BaseModel): + PayloadType: PayloadTypeType + UsernameField: Optional[UsernameFieldTypeDef] = None + PasswordField: Optional[PasswordFieldTypeDef] = None + EmailField: Optional[EmailFieldTypeDef] = None + PhoneNumberFields: Optional[List[PhoneNumberFieldTypeDef]] = None + AddressFields: Optional[List[AddressFieldTypeDef]] = None + +class RequestInspectionACFPTypeDef(BaseModel): + PayloadType: PayloadTypeType + UsernameField: Optional[UsernameFieldTypeDef] = None + PasswordField: Optional[PasswordFieldTypeDef] = None + EmailField: Optional[EmailFieldTypeDef] = None + PhoneNumberFields: Optional[Sequence[PhoneNumberFieldTypeDef]] = None + AddressFields: Optional[Sequence[AddressFieldTypeDef]] = None + +class PutManagedRuleSetVersionsRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + LockToken: str + RecommendedVersion: Optional[str] = None + VersionsToPublish: Optional[Mapping[str, VersionToPublishTypeDef]] = None + +class ResponseInspectionOutputTypeDef(BaseModel): + StatusCode: Optional[ResponseInspectionStatusCodeOutputTypeDef] = None + Header: Optional[ResponseInspectionHeaderOutputTypeDef] = None + BodyContains: Optional[ResponseInspectionBodyContainsOutputTypeDef] = None + Json: Optional[ResponseInspectionJsonOutputTypeDef] = None + +class ResponseInspectionTypeDef(BaseModel): + StatusCode: Optional[ResponseInspectionStatusCodeTypeDef] = None + Header: Optional[ResponseInspectionHeaderTypeDef] = None + BodyContains: Optional[ResponseInspectionBodyContainsTypeDef] = None + Json: Optional[ResponseInspectionJsonTypeDef] = None + +class TimeWindowTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + +class UpdateManagedRuleSetVersionExpiryDateRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + LockToken: str + VersionToExpire: str + ExpiryTimestamp: TimestampTypeDef + +class RateBasedStatementCustomKeyOutputTypeDef(BaseModel): + Header: Optional[RateLimitHeaderOutputTypeDef] = None + Cookie: Optional[RateLimitCookieOutputTypeDef] = None + QueryArgument: Optional[RateLimitQueryArgumentOutputTypeDef] = None + QueryString: Optional[RateLimitQueryStringOutputTypeDef] = None + HTTPMethod: Optional[Dict[str, Any]] = None + ForwardedIP: Optional[Dict[str, Any]] = None + IP: Optional[Dict[str, Any]] = None + LabelNamespace: Optional[RateLimitLabelNamespaceTypeDef] = None + UriPath: Optional[RateLimitUriPathOutputTypeDef] = None + +class RateBasedStatementCustomKeyTypeDef(BaseModel): + Header: Optional[RateLimitHeaderTypeDef] = None + Cookie: Optional[RateLimitCookieTypeDef] = None + QueryArgument: Optional[RateLimitQueryArgumentTypeDef] = None + QueryString: Optional[RateLimitQueryStringTypeDef] = None + HTTPMethod: Optional[Mapping[str, Any]] = None + ForwardedIP: Optional[Mapping[str, Any]] = None + IP: Optional[Mapping[str, Any]] = None + LabelNamespace: Optional[RateLimitLabelNamespaceTypeDef] = None + UriPath: Optional[RateLimitUriPathTypeDef] = None + +class FilterOutputTypeDef(BaseModel): + Behavior: FilterBehaviorType + Requirement: FilterRequirementType + Conditions: List[ConditionTypeDef] + +class FilterTypeDef(BaseModel): + Behavior: FilterBehaviorType + Requirement: FilterRequirementType + Conditions: Sequence[ConditionTypeDef] + +class GetMobileSdkReleaseResponseTypeDef(BaseModel): + MobileSdkRelease: MobileSdkReleaseTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + NextMarker: str + TagInfoForResource: TagInfoForResourceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetRegexPatternSetResponseTypeDef(BaseModel): + RegexPatternSet: RegexPatternSetTypeDef + LockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AllowActionOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingOutputTypeDef] = None + +class CaptchaActionOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingOutputTypeDef] = None + +class ChallengeActionOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingOutputTypeDef] = None + +class CountActionOutputTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingOutputTypeDef] = None + +class AllowActionTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingTypeDef] = None + +class CaptchaActionTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingTypeDef] = None + +class ChallengeActionTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingTypeDef] = None + +class CountActionTypeDef(BaseModel): + CustomRequestHandling: Optional[CustomRequestHandlingTypeDef] = None + +class BlockActionOutputTypeDef(BaseModel): + CustomResponse: Optional[CustomResponseOutputTypeDef] = None + +class BlockActionTypeDef(BaseModel): + CustomResponse: Optional[CustomResponseTypeDef] = None + +class SampledHTTPRequestTypeDef(BaseModel): + Request: HTTPRequestTypeDef + Weight: int + Timestamp: Optional[datetime] = None + Action: Optional[str] = None + RuleNameWithinRuleGroup: Optional[str] = None + RequestHeadersInserted: Optional[List[HTTPHeaderTypeDef]] = None + ResponseCodeSent: Optional[int] = None + Labels: Optional[List[LabelTypeDef]] = None + CaptchaResponse: Optional[CaptchaResponseTypeDef] = None + ChallengeResponse: Optional[ChallengeResponseTypeDef] = None + OverriddenAction: Optional[str] = None + +class FieldToMatchOutputTypeDef(BaseModel): + SingleHeader: Optional[SingleHeaderTypeDef] = None + SingleQueryArgument: Optional[SingleQueryArgumentTypeDef] = None + AllQueryArguments: Optional[Dict[str, Any]] = None + UriPath: Optional[Dict[str, Any]] = None + QueryString: Optional[Dict[str, Any]] = None + Body: Optional[BodyTypeDef] = None + Method: Optional[Dict[str, Any]] = None + JsonBody: Optional[JsonBodyOutputTypeDef] = None + Headers: Optional[HeadersOutputTypeDef] = None + Cookies: Optional[CookiesOutputTypeDef] = None + HeaderOrder: Optional[HeaderOrderTypeDef] = None + JA3Fingerprint: Optional[JA3FingerprintTypeDef] = None + +class FieldToMatchTypeDef(BaseModel): + SingleHeader: Optional[SingleHeaderTypeDef] = None + SingleQueryArgument: Optional[SingleQueryArgumentTypeDef] = None + AllQueryArguments: Optional[Mapping[str, Any]] = None + UriPath: Optional[Mapping[str, Any]] = None + QueryString: Optional[Mapping[str, Any]] = None + Body: Optional[BodyTypeDef] = None + Method: Optional[Mapping[str, Any]] = None + JsonBody: Optional[JsonBodyTypeDef] = None + Headers: Optional[HeadersTypeDef] = None + Cookies: Optional[CookiesTypeDef] = None + HeaderOrder: Optional[HeaderOrderTypeDef] = None + JA3Fingerprint: Optional[JA3FingerprintTypeDef] = None + +class GetManagedRuleSetResponseTypeDef(BaseModel): + ManagedRuleSet: ManagedRuleSetTypeDef + LockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class AWSManagedRulesACFPRuleSetOutputTypeDef(BaseModel): + CreationPath: str + RegistrationPagePath: str + RequestInspection: RequestInspectionACFPOutputTypeDef + ResponseInspection: Optional[ResponseInspectionOutputTypeDef] = None + EnableRegexInPath: Optional[bool] = None + +class AWSManagedRulesATPRuleSetOutputTypeDef(BaseModel): + LoginPath: str + RequestInspection: Optional[RequestInspectionTypeDef] = None + ResponseInspection: Optional[ResponseInspectionOutputTypeDef] = None + EnableRegexInPath: Optional[bool] = None + +class AWSManagedRulesACFPRuleSetTypeDef(BaseModel): + CreationPath: str + RegistrationPagePath: str + RequestInspection: RequestInspectionACFPTypeDef + ResponseInspection: Optional[ResponseInspectionTypeDef] = None + EnableRegexInPath: Optional[bool] = None + +class AWSManagedRulesATPRuleSetTypeDef(BaseModel): + LoginPath: str + RequestInspection: Optional[RequestInspectionTypeDef] = None + ResponseInspection: Optional[ResponseInspectionTypeDef] = None + EnableRegexInPath: Optional[bool] = None + +class GetSampledRequestsRequestRequestTypeDef(BaseModel): + WebAclArn: str + RuleMetricName: str + Scope: ScopeType + TimeWindow: TimeWindowTypeDef + MaxItems: int + +class RateBasedStatementOutputTypeDef(BaseModel): + Limit: int + AggregateKeyType: RateBasedStatementAggregateKeyTypeType + EvaluationWindowSec: Optional[int] = None + ScopeDownStatement: Optional["StatementOutputTypeDef"] = None + ForwardedIPConfig: Optional[ForwardedIPConfigTypeDef] = None + CustomKeys: Optional[List[RateBasedStatementCustomKeyOutputTypeDef]] = None + +class RateBasedStatementTypeDef(BaseModel): + Limit: int + AggregateKeyType: RateBasedStatementAggregateKeyTypeType + EvaluationWindowSec: Optional[int] = None + ScopeDownStatement: Optional["StatementTypeDef"] = None + ForwardedIPConfig: Optional[ForwardedIPConfigTypeDef] = None + CustomKeys: Optional[Sequence[RateBasedStatementCustomKeyTypeDef]] = None + +class LoggingFilterOutputTypeDef(BaseModel): + Filters: List[FilterOutputTypeDef] + DefaultBehavior: FilterBehaviorType + +class LoggingFilterTypeDef(BaseModel): + Filters: Sequence[FilterTypeDef] + DefaultBehavior: FilterBehaviorType + +class OverrideActionOutputTypeDef(BaseModel): + Count: Optional[CountActionOutputTypeDef] = None + None: Optional[Dict[str, Any]] = None + +class OverrideActionTypeDef(BaseModel): + Count: Optional[CountActionTypeDef] = None + None: Optional[Mapping[str, Any]] = None + +class DefaultActionOutputTypeDef(BaseModel): + Block: Optional[BlockActionOutputTypeDef] = None + Allow: Optional[AllowActionOutputTypeDef] = None + +class RuleActionOutputTypeDef(BaseModel): + Block: Optional[BlockActionOutputTypeDef] = None + Allow: Optional[AllowActionOutputTypeDef] = None + Count: Optional[CountActionOutputTypeDef] = None + Captcha: Optional[CaptchaActionOutputTypeDef] = None + Challenge: Optional[ChallengeActionOutputTypeDef] = None + +class DefaultActionTypeDef(BaseModel): + Block: Optional[BlockActionTypeDef] = None + Allow: Optional[AllowActionTypeDef] = None + +class RuleActionTypeDef(BaseModel): + Block: Optional[BlockActionTypeDef] = None + Allow: Optional[AllowActionTypeDef] = None + Count: Optional[CountActionTypeDef] = None + Captcha: Optional[CaptchaActionTypeDef] = None + Challenge: Optional[ChallengeActionTypeDef] = None + +class GetSampledRequestsResponseTypeDef(BaseModel): + SampledRequests: List[SampledHTTPRequestTypeDef] + PopulationSize: int + TimeWindow: TimeWindowOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ByteMatchStatementOutputTypeDef(BaseModel): + SearchString: bytes + FieldToMatch: FieldToMatchOutputTypeDef + TextTransformations: List[TextTransformationTypeDef] + PositionalConstraint: PositionalConstraintType + +class RegexMatchStatementOutputTypeDef(BaseModel): + RegexString: str + FieldToMatch: FieldToMatchOutputTypeDef + TextTransformations: List[TextTransformationTypeDef] + +class RegexPatternSetReferenceStatementOutputTypeDef(BaseModel): + ARN: str + FieldToMatch: FieldToMatchOutputTypeDef + TextTransformations: List[TextTransformationTypeDef] + +class SizeConstraintStatementOutputTypeDef(BaseModel): + FieldToMatch: FieldToMatchOutputTypeDef + ComparisonOperator: ComparisonOperatorType + Size: int + TextTransformations: List[TextTransformationTypeDef] + +class SqliMatchStatementOutputTypeDef(BaseModel): + FieldToMatch: FieldToMatchOutputTypeDef + TextTransformations: List[TextTransformationTypeDef] + SensitivityLevel: Optional[SensitivityLevelType] = None + +class XssMatchStatementOutputTypeDef(BaseModel): + FieldToMatch: FieldToMatchOutputTypeDef + TextTransformations: List[TextTransformationTypeDef] + +class ByteMatchStatementTypeDef(BaseModel): + SearchString: BlobTypeDef + FieldToMatch: FieldToMatchTypeDef + TextTransformations: Sequence[TextTransformationTypeDef] + PositionalConstraint: PositionalConstraintType + +class RegexMatchStatementTypeDef(BaseModel): + RegexString: str + FieldToMatch: FieldToMatchTypeDef + TextTransformations: Sequence[TextTransformationTypeDef] + +class RegexPatternSetReferenceStatementTypeDef(BaseModel): + ARN: str + FieldToMatch: FieldToMatchTypeDef + TextTransformations: Sequence[TextTransformationTypeDef] + +class SizeConstraintStatementTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + ComparisonOperator: ComparisonOperatorType + Size: int + TextTransformations: Sequence[TextTransformationTypeDef] + +class SqliMatchStatementTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformations: Sequence[TextTransformationTypeDef] + SensitivityLevel: Optional[SensitivityLevelType] = None + +class XssMatchStatementTypeDef(BaseModel): + FieldToMatch: FieldToMatchTypeDef + TextTransformations: Sequence[TextTransformationTypeDef] + +class ManagedRuleGroupConfigOutputTypeDef(BaseModel): + LoginPath: Optional[str] = None + PayloadType: Optional[PayloadTypeType] = None + UsernameField: Optional[UsernameFieldTypeDef] = None + PasswordField: Optional[PasswordFieldTypeDef] = None + AWSManagedRulesBotControlRuleSet: Optional[AWSManagedRulesBotControlRuleSetTypeDef] = None + AWSManagedRulesATPRuleSet: Optional[AWSManagedRulesATPRuleSetOutputTypeDef] = None + AWSManagedRulesACFPRuleSet: Optional[AWSManagedRulesACFPRuleSetOutputTypeDef] = None + +class ManagedRuleGroupConfigTypeDef(BaseModel): + LoginPath: Optional[str] = None + PayloadType: Optional[PayloadTypeType] = None + UsernameField: Optional[UsernameFieldTypeDef] = None + PasswordField: Optional[PasswordFieldTypeDef] = None + AWSManagedRulesBotControlRuleSet: Optional[AWSManagedRulesBotControlRuleSetTypeDef] = None + AWSManagedRulesATPRuleSet: Optional[AWSManagedRulesATPRuleSetTypeDef] = None + AWSManagedRulesACFPRuleSet: Optional[AWSManagedRulesACFPRuleSetTypeDef] = None + +class LoggingConfigurationOutputTypeDef(BaseModel): + ResourceArn: str + LogDestinationConfigs: List[str] + RedactedFields: Optional[List[FieldToMatchOutputTypeDef]] = None + ManagedByFirewallManager: Optional[bool] = None + LoggingFilter: Optional[LoggingFilterOutputTypeDef] = None + LogType: Optional[Literal["WAF_LOGS"]] = None + LogScope: Optional[LogScopeType] = None + +class LoggingConfigurationTypeDef(BaseModel): + ResourceArn: str + LogDestinationConfigs: Sequence[str] + RedactedFields: Optional[Sequence[FieldToMatchTypeDef]] = None + ManagedByFirewallManager: Optional[bool] = None + LoggingFilter: Optional[LoggingFilterTypeDef] = None + LogType: Optional[Literal["WAF_LOGS"]] = None + LogScope: Optional[LogScopeType] = None + +class RuleActionOverrideOutputTypeDef(BaseModel): + Name: str + ActionToUse: RuleActionOutputTypeDef + +class RuleOutputTypeDef(BaseModel): + Name: str + Priority: int + Statement: "StatementOutputTypeDef" + VisibilityConfig: VisibilityConfigTypeDef + Action: Optional[RuleActionOutputTypeDef] = None + OverrideAction: Optional[OverrideActionOutputTypeDef] = None + RuleLabels: Optional[List[LabelTypeDef]] = None + CaptchaConfig: Optional[CaptchaConfigTypeDef] = None + ChallengeConfig: Optional[ChallengeConfigTypeDef] = None + +class RuleSummaryTypeDef(BaseModel): + Name: Optional[str] = None + Action: Optional[RuleActionOutputTypeDef] = None + +class RuleActionOverrideTypeDef(BaseModel): + Name: str + ActionToUse: RuleActionTypeDef + +class RuleTypeDef(BaseModel): + Name: str + Priority: int + Statement: "StatementTypeDef" + VisibilityConfig: VisibilityConfigTypeDef + Action: Optional[RuleActionTypeDef] = None + OverrideAction: Optional[OverrideActionTypeDef] = None + RuleLabels: Optional[Sequence[LabelTypeDef]] = None + CaptchaConfig: Optional[CaptchaConfigTypeDef] = None + ChallengeConfig: Optional[ChallengeConfigTypeDef] = None + +class GetLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListLoggingConfigurationsResponseTypeDef(BaseModel): + LoggingConfigurations: List[LoggingConfigurationOutputTypeDef] + NextMarker: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingConfigurationResponseTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutLoggingConfigurationRequestRequestTypeDef(BaseModel): + LoggingConfiguration: LoggingConfigurationTypeDef + +class ManagedRuleGroupStatementOutputTypeDef(BaseModel): + VendorName: str + Name: str + Version: Optional[str] = None + ExcludedRules: Optional[List[ExcludedRuleTypeDef]] = None + ScopeDownStatement: Optional["StatementOutputTypeDef"] = None + ManagedRuleGroupConfigs: Optional[List[ManagedRuleGroupConfigOutputTypeDef]] = None + RuleActionOverrides: Optional[List[RuleActionOverrideOutputTypeDef]] = None + +class RuleGroupReferenceStatementOutputTypeDef(BaseModel): + ARN: str + ExcludedRules: Optional[List[ExcludedRuleTypeDef]] = None + RuleActionOverrides: Optional[List[RuleActionOverrideOutputTypeDef]] = None + +class RuleGroupTypeDef(BaseModel): + Name: str + Id: str + Capacity: int + ARN: str + VisibilityConfig: VisibilityConfigTypeDef + Description: Optional[str] = None + Rules: Optional[List[RuleOutputTypeDef]] = None + LabelNamespace: Optional[str] = None + CustomResponseBodies: Optional[Dict[str, CustomResponseBodyTypeDef]] = None + AvailableLabels: Optional[List[LabelSummaryTypeDef]] = None + ConsumedLabels: Optional[List[LabelSummaryTypeDef]] = None + +class DescribeManagedRuleGroupResponseTypeDef(BaseModel): + VersionName: str + SnsTopicArn: str + Capacity: int + Rules: List[RuleSummaryTypeDef] + LabelNamespace: str + AvailableLabels: List[LabelSummaryTypeDef] + ConsumedLabels: List[LabelSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ManagedRuleGroupStatementTypeDef(BaseModel): + VendorName: str + Name: str + Version: Optional[str] = None + ExcludedRules: Optional[Sequence[ExcludedRuleTypeDef]] = None + ScopeDownStatement: Optional["StatementTypeDef"] = None + ManagedRuleGroupConfigs: Optional[Sequence[ManagedRuleGroupConfigTypeDef]] = None + RuleActionOverrides: Optional[Sequence[RuleActionOverrideTypeDef]] = None + +class RuleGroupReferenceStatementTypeDef(BaseModel): + ARN: str + ExcludedRules: Optional[Sequence[ExcludedRuleTypeDef]] = None + RuleActionOverrides: Optional[Sequence[RuleActionOverrideTypeDef]] = None + +class FirewallManagerStatementTypeDef(BaseModel): + ManagedRuleGroupStatement: Optional[ManagedRuleGroupStatementOutputTypeDef] = None + RuleGroupReferenceStatement: Optional[RuleGroupReferenceStatementOutputTypeDef] = None + +class StatementOutputTypeDef(BaseModel): + ByteMatchStatement: Optional[ByteMatchStatementOutputTypeDef] = None + SqliMatchStatement: Optional[SqliMatchStatementOutputTypeDef] = None + XssMatchStatement: Optional[XssMatchStatementOutputTypeDef] = None + SizeConstraintStatement: Optional[SizeConstraintStatementOutputTypeDef] = None + GeoMatchStatement: Optional[GeoMatchStatementOutputTypeDef] = None + RuleGroupReferenceStatement: Optional[RuleGroupReferenceStatementOutputTypeDef] = None + IPSetReferenceStatement: Optional[IPSetReferenceStatementTypeDef] = None + RegexPatternSetReferenceStatement: Optional[ RegexPatternSetReferenceStatementOutputTypeDef ] = None + RateBasedStatement: Optional[Dict[str, Any]] = None + AndStatement: Optional[Dict[str, Any]] = None + OrStatement: Optional[Dict[str, Any]] = None + NotStatement: Optional[NotStatementTypeDef] = None + ManagedRuleGroupStatement: Optional[Dict[str, Any]] = None + LabelMatchStatement: Optional[LabelMatchStatementTypeDef] = None + RegexMatchStatement: Optional[RegexMatchStatementOutputTypeDef] = None + +class GetRuleGroupResponseTypeDef(BaseModel): + RuleGroup: RuleGroupTypeDef + LockToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StatementTypeDef(BaseModel): + ByteMatchStatement: Optional[ByteMatchStatementTypeDef] = None + SqliMatchStatement: Optional[SqliMatchStatementTypeDef] = None + XssMatchStatement: Optional[XssMatchStatementTypeDef] = None + SizeConstraintStatement: Optional[SizeConstraintStatementTypeDef] = None + GeoMatchStatement: Optional[GeoMatchStatementTypeDef] = None + RuleGroupReferenceStatement: Optional[RuleGroupReferenceStatementTypeDef] = None + IPSetReferenceStatement: Optional[IPSetReferenceStatementTypeDef] = None + RegexPatternSetReferenceStatement: Optional[RegexPatternSetReferenceStatementTypeDef] = None + RateBasedStatement: Optional[Dict[str, Any]] = None + AndStatement: Optional[Dict[str, Any]] = None + OrStatement: Optional[Dict[str, Any]] = None + NotStatement: Optional[Dict[str, Any]] = None + ManagedRuleGroupStatement: Optional[Dict[str, Any]] = None + LabelMatchStatement: Optional[LabelMatchStatementTypeDef] = None + RegexMatchStatement: Optional[RegexMatchStatementTypeDef] = None + +class CheckCapacityRequestRequestTypeDef(BaseModel): + Scope: ScopeType + Rules: Sequence[RuleUnionTypeDef] + +class CreateRuleGroupRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Capacity: int + VisibilityConfig: VisibilityConfigTypeDef + Description: Optional[str] = None + Rules: Optional[Sequence[RuleUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CustomResponseBodies: Optional[Mapping[str, CustomResponseBodyTypeDef]] = None + +class CreateWebACLRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + DefaultAction: DefaultActionTypeDef + VisibilityConfig: VisibilityConfigTypeDef + Description: Optional[str] = None + Rules: Optional[Sequence[RuleUnionTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + CustomResponseBodies: Optional[Mapping[str, CustomResponseBodyTypeDef]] = None + CaptchaConfig: Optional[CaptchaConfigTypeDef] = None + ChallengeConfig: Optional[ChallengeConfigTypeDef] = None + TokenDomains: Optional[Sequence[str]] = None + AssociationConfig: Optional[AssociationConfigTypeDef] = None + +class UpdateRuleGroupRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + VisibilityConfig: VisibilityConfigTypeDef + LockToken: str + Description: Optional[str] = None + Rules: Optional[Sequence[RuleUnionTypeDef]] = None + CustomResponseBodies: Optional[Mapping[str, CustomResponseBodyTypeDef]] = None + +class UpdateWebACLRequestRequestTypeDef(BaseModel): + Name: str + Scope: ScopeType + Id: str + DefaultAction: DefaultActionTypeDef + VisibilityConfig: VisibilityConfigTypeDef + LockToken: str + Description: Optional[str] = None + Rules: Optional[Sequence[RuleUnionTypeDef]] = None + CustomResponseBodies: Optional[Mapping[str, CustomResponseBodyTypeDef]] = None + CaptchaConfig: Optional[CaptchaConfigTypeDef] = None + ChallengeConfig: Optional[ChallengeConfigTypeDef] = None + TokenDomains: Optional[Sequence[str]] = None + AssociationConfig: Optional[AssociationConfigTypeDef] = None + +class FirewallManagerRuleGroupTypeDef(BaseModel): + Name: str + Priority: int + FirewallManagerStatement: FirewallManagerStatementTypeDef + OverrideAction: OverrideActionOutputTypeDef + VisibilityConfig: VisibilityConfigTypeDef + +class WebACLTypeDef(BaseModel): + Name: str + Id: str + ARN: str + DefaultAction: DefaultActionOutputTypeDef + VisibilityConfig: VisibilityConfigTypeDef + Description: Optional[str] = None + Rules: Optional[List[RuleOutputTypeDef]] = None + Capacity: Optional[int] = None + PreProcessFirewallManagerRuleGroups: Optional[List[FirewallManagerRuleGroupTypeDef]] = None + PostProcessFirewallManagerRuleGroups: Optional[List[FirewallManagerRuleGroupTypeDef]] = None + ManagedByFirewallManager: Optional[bool] = None + LabelNamespace: Optional[str] = None + CustomResponseBodies: Optional[Dict[str, CustomResponseBodyTypeDef]] = None + CaptchaConfig: Optional[CaptchaConfigTypeDef] = None + ChallengeConfig: Optional[ChallengeConfigTypeDef] = None + TokenDomains: Optional[List[str]] = None + AssociationConfig: Optional[AssociationConfigOutputTypeDef] = None + +class GetWebACLForResourceResponseTypeDef(BaseModel): + WebACL: WebACLTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWebACLResponseTypeDef(BaseModel): + WebACL: WebACLTypeDef + LockToken: str + ApplicationIntegrationURL: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/wafv2_constants.py b/aws_resource_validator/pydantic_models/wafv2_constants.py new file mode 100644 index 00000000..1b5f9109 --- /dev/null +++ b/aws_resource_validator/pydantic_models/wafv2_constants.py @@ -0,0 +1,741 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActionValueType = Literal["ALLOW", "BLOCK", "CAPTCHA", "CHALLENGE", "COUNT", "EXCLUDED_AS_COUNT"] +AssociatedResourceTypeType = Literal["API_GATEWAY", + "APP_RUNNER_SERVICE", + "CLOUDFRONT", + "COGNITO_USER_POOL", + "VERIFIED_ACCESS_INSTANCE",] +BodyParsingFallbackBehaviorType = Literal["EVALUATE_AS_STRING", "MATCH", "NO_MATCH"] +ComparisonOperatorType = Literal["EQ", "GE", "GT", "LE", "LT", "NE"] +CountryCodeType = Literal["AD", + "AE", + "AF", + "AG", + "AI", + "AL", + "AM", + "AO", + "AQ", + "AR", + "AS", + "AT", + "AU", + "AW", + "AX", + "AZ", + "BA", + "BB", + "BD", + "BE", + "BF", + "BG", + "BH", + "BI", + "BJ", + "BL", + "BM", + "BN", + "BO", + "BQ", + "BR", + "BS", + "BT", + "BV", + "BW", + "BY", + "BZ", + "CA", + "CC", + "CD", + "CF", + "CG", + "CH", + "CI", + "CK", + "CL", + "CM", + "CN", + "CO", + "CR", + "CU", + "CV", + "CW", + "CX", + "CY", + "CZ", + "DE", + "DJ", + "DK", + "DM", + "DO", + "DZ", + "EC", + "EE", + "EG", + "EH", + "ER", + "ES", + "ET", + "FI", + "FJ", + "FK", + "FM", + "FO", + "FR", + "GA", + "GB", + "GD", + "GE", + "GF", + "GG", + "GH", + "GI", + "GL", + "GM", + "GN", + "GP", + "GQ", + "GR", + "GS", + "GT", + "GU", + "GW", + "GY", + "HK", + "HM", + "HN", + "HR", + "HT", + "HU", + "ID", + "IE", + "IL", + "IM", + "IN", + "IO", + "IQ", + "IR", + "IS", + "IT", + "JE", + "JM", + "JO", + "JP", + "KE", + "KG", + "KH", + "KI", + "KM", + "KN", + "KP", + "KR", + "KW", + "KY", + "KZ", + "LA", + "LB", + "LC", + "LI", + "LK", + "LR", + "LS", + "LT", + "LU", + "LV", + "LY", + "MA", + "MC", + "MD", + "ME", + "MF", + "MG", + "MH", + "MK", + "ML", + "MM", + "MN", + "MO", + "MP", + "MQ", + "MR", + "MS", + "MT", + "MU", + "MV", + "MW", + "MX", + "MY", + "MZ", + "NA", + "NC", + "NE", + "NF", + "NG", + "NI", + "NL", + "NO", + "NP", + "NR", + "NU", + "NZ", + "OM", + "PA", + "PE", + "PF", + "PG", + "PH", + "PK", + "PL", + "PM", + "PN", + "PR", + "PS", + "PT", + "PW", + "PY", + "QA", + "RE", + "RO", + "RS", + "RU", + "RW", + "SA", + "SB", + "SC", + "SD", + "SE", + "SG", + "SH", + "SI", + "SJ", + "SK", + "SL", + "SM", + "SN", + "SO", + "SR", + "SS", + "ST", + "SV", + "SX", + "SY", + "SZ", + "TC", + "TD", + "TF", + "TG", + "TH", + "TJ", + "TK", + "TL", + "TM", + "TN", + "TO", + "TR", + "TT", + "TV", + "TW", + "TZ", + "UA", + "UG", + "UM", + "US", + "UY", + "UZ", + "VA", + "VC", + "VE", + "VG", + "VI", + "VN", + "VU", + "WF", + "WS", + "XK", + "YE", + "YT", + "ZA", + "ZM", + "ZW",] +FailureReasonType = Literal["TOKEN_DOMAIN_MISMATCH", "TOKEN_EXPIRED", "TOKEN_INVALID", "TOKEN_MISSING"] +FallbackBehaviorType = Literal["MATCH", "NO_MATCH"] +FilterBehaviorType = Literal["DROP", "KEEP"] +FilterRequirementType = Literal["MEETS_ALL", "MEETS_ANY"] +ForwardedIPPositionType = Literal["ANY", "FIRST", "LAST"] +IPAddressVersionType = Literal["IPV4", "IPV6"] +InspectionLevelType = Literal["COMMON", "TARGETED"] +JsonMatchScopeType = Literal["ALL", "KEY", "VALUE"] +LabelMatchScopeType = Literal["LABEL", "NAMESPACE"] +LogScopeType = Literal["CUSTOMER", "SECURITY_LAKE"] +LogTypeType = Literal["WAF_LOGS"] +MapMatchScopeType = Literal["ALL", "KEY", "VALUE"] +OversizeHandlingType = Literal["CONTINUE", "MATCH", "NO_MATCH"] +PayloadTypeType = Literal["FORM_ENCODED", "JSON"] +PlatformType = Literal["ANDROID", "IOS"] +PositionalConstraintType = Literal["CONTAINS", "CONTAINS_WORD", "ENDS_WITH", "EXACTLY", "STARTS_WITH"] +RateBasedStatementAggregateKeyTypeType = Literal["CONSTANT", "CUSTOM_KEYS", "FORWARDED_IP", "IP"] +ResourceTypeType = Literal["API_GATEWAY", + "APPLICATION_LOAD_BALANCER", + "APPSYNC", + "APP_RUNNER_SERVICE", + "COGNITO_USER_POOL", + "VERIFIED_ACCESS_INSTANCE",] +ResponseContentTypeType = Literal["APPLICATION_JSON", "TEXT_HTML", "TEXT_PLAIN"] +ScopeType = Literal["CLOUDFRONT", "REGIONAL"] +SensitivityLevelType = Literal["HIGH", "LOW"] +SizeInspectionLimitType = Literal["KB_16", "KB_32", "KB_48", "KB_64"] +TextTransformationTypeType = Literal["BASE64_DECODE", + "BASE64_DECODE_EXT", + "CMD_LINE", + "COMPRESS_WHITE_SPACE", + "CSS_DECODE", + "ESCAPE_SEQ_DECODE", + "HEX_DECODE", + "HTML_ENTITY_DECODE", + "JS_DECODE", + "LOWERCASE", + "MD5", + "NONE", + "NORMALIZE_PATH", + "NORMALIZE_PATH_WIN", + "REMOVE_NULLS", + "REPLACE_COMMENTS", + "REPLACE_NULLS", + "SQL_HEX_DECODE", + "URL_DECODE", + "URL_DECODE_UNI", + "UTF8_TO_UNICODE",] +WAFV2ServiceName = Literal["wafv2"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "ca-west-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +TimestampTypeDef = Union[datetime, str] +AssociationConfigUnionTypeDef = Union['AssociationConfigTypeDef', 'AssociationConfigOutputTypeDef'] +TimeWindowUnionTypeDef = Union['TimeWindowTypeDef', 'TimeWindowOutputTypeDef'] +DefaultActionUnionTypeDef = Union['DefaultActionTypeDef', 'DefaultActionOutputTypeDef'] +LoggingConfigurationUnionTypeDef = Union[ 'LoggingConfigurationTypeDef', 'LoggingConfigurationOutputTypeDef' ] +RuleUnionTypeDef = Union['RuleTypeDef', 'RuleOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/wellarchitected_classes.py b/aws_resource_validator/pydantic_models/wellarchitected_classes.py new file mode 100644 index 00000000..474e0a44 --- /dev/null +++ b/aws_resource_validator/pydantic_models/wellarchitected_classes.py @@ -0,0 +1,1239 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.wellarchitected_constants import * + +class AccountJiraConfigurationInputTypeDef(BaseModel): + IssueManagementStatus: Optional[AccountJiraIssueManagementStatusType] = None + IssueManagementType: Optional[IssueManagementTypeType] = None + JiraProjectKey: Optional[str] = None + IntegrationStatus: Optional[Literal["NOT_CONFIGURED"]] = None + +class AccountJiraConfigurationOutputTypeDef(BaseModel): + IntegrationStatus: Optional[IntegrationStatusType] = None + IssueManagementStatus: Optional[AccountJiraIssueManagementStatusType] = None + IssueManagementType: Optional[IssueManagementTypeType] = None + Subdomain: Optional[str] = None + JiraProjectKey: Optional[str] = None + StatusMessage: Optional[str] = None + +class ChoiceContentTypeDef(BaseModel): + DisplayText: Optional[str] = None + Url: Optional[str] = None + +class ChoiceAnswerSummaryTypeDef(BaseModel): + ChoiceId: Optional[str] = None + Status: Optional[ChoiceStatusType] = None + Reason: Optional[ChoiceReasonType] = None + +class JiraConfigurationTypeDef(BaseModel): + JiraIssueUrl: Optional[str] = None + LastSyncedTime: Optional[datetime] = None + +class ChoiceAnswerTypeDef(BaseModel): + ChoiceId: Optional[str] = None + Status: Optional[ChoiceStatusType] = None + Reason: Optional[ChoiceReasonType] = None + Notes: Optional[str] = None + +class AssociateLensesInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAliases: Sequence[str] + +class AssociateProfilesInputRequestTypeDef(BaseModel): + WorkloadId: str + ProfileArns: Sequence[str] + +class BestPracticeTypeDef(BaseModel): + ChoiceId: Optional[str] = None + ChoiceTitle: Optional[str] = None + +class CheckDetailTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Provider: Optional[Literal["TRUSTED_ADVISOR"]] = None + LensArn: Optional[str] = None + PillarId: Optional[str] = None + QuestionId: Optional[str] = None + ChoiceId: Optional[str] = None + Status: Optional[CheckStatusType] = None + AccountId: Optional[str] = None + FlaggedResources: Optional[int] = None + Reason: Optional[CheckFailureReasonType] = None + UpdatedAt: Optional[datetime] = None + +class CheckSummaryTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Provider: Optional[Literal["TRUSTED_ADVISOR"]] = None + Description: Optional[str] = None + UpdatedAt: Optional[datetime] = None + LensArn: Optional[str] = None + PillarId: Optional[str] = None + QuestionId: Optional[str] = None + ChoiceId: Optional[str] = None + Status: Optional[CheckStatusType] = None + AccountSummary: Optional[Dict[CheckStatusType, int]] = None + +class ChoiceImprovementPlanTypeDef(BaseModel): + ChoiceId: Optional[str] = None + DisplayText: Optional[str] = None + ImprovementPlanUrl: Optional[str] = None + +class ChoiceUpdateTypeDef(BaseModel): + Status: ChoiceStatusType + Reason: Optional[ChoiceReasonType] = None + Notes: Optional[str] = None + +class CreateLensShareInputRequestTypeDef(BaseModel): + LensAlias: str + SharedWith: str + ClientRequestToken: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class CreateLensVersionInputRequestTypeDef(BaseModel): + LensAlias: str + LensVersion: str + ClientRequestToken: str + IsMajorVersion: Optional[bool] = None + +class CreateMilestoneInputRequestTypeDef(BaseModel): + WorkloadId: str + MilestoneName: str + ClientRequestToken: str + +class ProfileQuestionUpdateTypeDef(BaseModel): + QuestionId: Optional[str] = None + SelectedChoiceIds: Optional[Sequence[str]] = None + +class CreateProfileShareInputRequestTypeDef(BaseModel): + ProfileArn: str + SharedWith: str + ClientRequestToken: str + +class CreateReviewTemplateInputRequestTypeDef(BaseModel): + TemplateName: str + Description: str + Lenses: Sequence[str] + ClientRequestToken: str + Notes: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class CreateTemplateShareInputRequestTypeDef(BaseModel): + TemplateArn: str + SharedWith: str + ClientRequestToken: str + +class WorkloadDiscoveryConfigTypeDef(BaseModel): + TrustedAdvisorIntegrationStatus: Optional[TrustedAdvisorIntegrationStatusType] = None + WorkloadResourceDefinition: Optional[Sequence[DefinitionTypeType]] = None + +class WorkloadJiraConfigurationInputTypeDef(BaseModel): + IssueManagementStatus: Optional[WorkloadIssueManagementStatusType] = None + IssueManagementType: Optional[IssueManagementTypeType] = None + JiraProjectKey: Optional[str] = None + +class CreateWorkloadShareInputRequestTypeDef(BaseModel): + WorkloadId: str + SharedWith: str + PermissionType: PermissionTypeType + ClientRequestToken: str + +class DeleteLensInputRequestTypeDef(BaseModel): + LensAlias: str + ClientRequestToken: str + LensStatus: LensStatusTypeType + +class DeleteLensShareInputRequestTypeDef(BaseModel): + ShareId: str + LensAlias: str + ClientRequestToken: str + +class DeleteProfileInputRequestTypeDef(BaseModel): + ProfileArn: str + ClientRequestToken: str + +class DeleteProfileShareInputRequestTypeDef(BaseModel): + ShareId: str + ProfileArn: str + ClientRequestToken: str + +class DeleteReviewTemplateInputRequestTypeDef(BaseModel): + TemplateArn: str + ClientRequestToken: str + +class DeleteTemplateShareInputRequestTypeDef(BaseModel): + ShareId: str + TemplateArn: str + ClientRequestToken: str + +class DeleteWorkloadInputRequestTypeDef(BaseModel): + WorkloadId: str + ClientRequestToken: str + +class DeleteWorkloadShareInputRequestTypeDef(BaseModel): + ShareId: str + WorkloadId: str + ClientRequestToken: str + +class DisassociateLensesInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAliases: Sequence[str] + +class DisassociateProfilesInputRequestTypeDef(BaseModel): + WorkloadId: str + ProfileArns: Sequence[str] + +class ExportLensInputRequestTypeDef(BaseModel): + LensAlias: str + LensVersion: Optional[str] = None + +class GetAnswerInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + QuestionId: str + MilestoneNumber: Optional[int] = None + +class GetConsolidatedReportInputRequestTypeDef(BaseModel): + Format: ReportFormatType + IncludeSharedResources: Optional[bool] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class GetLensInputRequestTypeDef(BaseModel): + LensAlias: str + LensVersion: Optional[str] = None + +class LensTypeDef(BaseModel): + LensArn: Optional[str] = None + LensVersion: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Owner: Optional[str] = None + ShareInvitationId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class GetLensReviewInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + MilestoneNumber: Optional[int] = None + +class GetLensReviewReportInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + MilestoneNumber: Optional[int] = None + +class LensReviewReportTypeDef(BaseModel): + LensAlias: Optional[str] = None + LensArn: Optional[str] = None + Base64String: Optional[str] = None + +class GetLensVersionDifferenceInputRequestTypeDef(BaseModel): + LensAlias: str + BaseLensVersion: Optional[str] = None + TargetLensVersion: Optional[str] = None + +class GetMilestoneInputRequestTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + +class GetProfileInputRequestTypeDef(BaseModel): + ProfileArn: str + ProfileVersion: Optional[str] = None + +class GetReviewTemplateAnswerInputRequestTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + QuestionId: str + +class GetReviewTemplateInputRequestTypeDef(BaseModel): + TemplateArn: str + +class GetReviewTemplateLensReviewInputRequestTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + +class ReviewTemplateTypeDef(BaseModel): + Description: Optional[str] = None + Lenses: Optional[List[str]] = None + Notes: Optional[str] = None + QuestionCounts: Optional[Dict[QuestionType, int]] = None + Owner: Optional[str] = None + UpdatedAt: Optional[datetime] = None + TemplateArn: Optional[str] = None + TemplateName: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + UpdateStatus: Optional[ReviewTemplateUpdateStatusType] = None + ShareInvitationId: Optional[str] = None + +class GetWorkloadInputRequestTypeDef(BaseModel): + WorkloadId: str + +class ImportLensInputRequestTypeDef(BaseModel): + JSONString: str + ClientRequestToken: str + LensAlias: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + +class SelectedPillarTypeDef(BaseModel): + PillarId: Optional[str] = None + SelectedQuestionIds: Optional[List[str]] = None + +class WorkloadProfileTypeDef(BaseModel): + ProfileArn: Optional[str] = None + ProfileVersion: Optional[str] = None + +class PillarReviewSummaryTypeDef(BaseModel): + PillarId: Optional[str] = None + PillarName: Optional[str] = None + Notes: Optional[str] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + PrioritizedRiskCounts: Optional[Dict[RiskType, int]] = None + +class LensShareSummaryTypeDef(BaseModel): + ShareId: Optional[str] = None + SharedWith: Optional[str] = None + Status: Optional[ShareStatusType] = None + StatusMessage: Optional[str] = None + +class LensSummaryTypeDef(BaseModel): + LensArn: Optional[str] = None + LensAlias: Optional[str] = None + LensName: Optional[str] = None + LensType: Optional[LensTypeType] = None + Description: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + LensVersion: Optional[str] = None + Owner: Optional[str] = None + LensStatus: Optional[LensStatusType] = None + +class LensUpgradeSummaryTypeDef(BaseModel): + WorkloadId: Optional[str] = None + WorkloadName: Optional[str] = None + LensAlias: Optional[str] = None + LensArn: Optional[str] = None + CurrentLensVersion: Optional[str] = None + LatestLensVersion: Optional[str] = None + ResourceArn: Optional[str] = None + ResourceName: Optional[str] = None + +class ListAnswersInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + PillarId: Optional[str] = None + MilestoneNumber: Optional[int] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + QuestionPriority: Optional[QuestionPriorityType] = None + +class ListCheckDetailsInputRequestTypeDef(BaseModel): + WorkloadId: str + LensArn: str + PillarId: str + QuestionId: str + ChoiceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListCheckSummariesInputRequestTypeDef(BaseModel): + WorkloadId: str + LensArn: str + PillarId: str + QuestionId: str + ChoiceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListLensReviewImprovementsInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + PillarId: Optional[str] = None + MilestoneNumber: Optional[int] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + QuestionPriority: Optional[QuestionPriorityType] = None + +class ListLensReviewsInputRequestTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: Optional[int] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListLensSharesInputRequestTypeDef(BaseModel): + LensAlias: str + SharedWithPrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[ShareStatusType] = None + +class ListLensesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + LensType: Optional[LensTypeType] = None + LensStatus: Optional[LensStatusTypeType] = None + LensName: Optional[str] = None + +class ListMilestonesInputRequestTypeDef(BaseModel): + WorkloadId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListNotificationsInputRequestTypeDef(BaseModel): + WorkloadId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ResourceArn: Optional[str] = None + +class ListProfileNotificationsInputRequestTypeDef(BaseModel): + WorkloadId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ProfileNotificationSummaryTypeDef(BaseModel): + CurrentProfileVersion: Optional[str] = None + LatestProfileVersion: Optional[str] = None + Type: Optional[ProfileNotificationTypeType] = None + ProfileArn: Optional[str] = None + ProfileName: Optional[str] = None + WorkloadId: Optional[str] = None + WorkloadName: Optional[str] = None + +class ListProfileSharesInputRequestTypeDef(BaseModel): + ProfileArn: str + SharedWithPrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[ShareStatusType] = None + +class ProfileShareSummaryTypeDef(BaseModel): + ShareId: Optional[str] = None + SharedWith: Optional[str] = None + Status: Optional[ShareStatusType] = None + StatusMessage: Optional[str] = None + +class ListProfilesInputRequestTypeDef(BaseModel): + ProfileNamePrefix: Optional[str] = None + ProfileOwnerType: Optional[ProfileOwnerTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ProfileSummaryTypeDef(BaseModel): + ProfileArn: Optional[str] = None + ProfileVersion: Optional[str] = None + ProfileName: Optional[str] = None + ProfileDescription: Optional[str] = None + Owner: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class ListReviewTemplateAnswersInputRequestTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + PillarId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListReviewTemplatesInputRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ReviewTemplateSummaryTypeDef(BaseModel): + Description: Optional[str] = None + Lenses: Optional[List[str]] = None + Owner: Optional[str] = None + UpdatedAt: Optional[datetime] = None + TemplateArn: Optional[str] = None + TemplateName: Optional[str] = None + UpdateStatus: Optional[ReviewTemplateUpdateStatusType] = None + +class ListShareInvitationsInputRequestTypeDef(BaseModel): + WorkloadNamePrefix: Optional[str] = None + LensNamePrefix: Optional[str] = None + ShareResourceType: Optional[ShareResourceTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + ProfileNamePrefix: Optional[str] = None + TemplateNamePrefix: Optional[str] = None + +class ShareInvitationSummaryTypeDef(BaseModel): + ShareInvitationId: Optional[str] = None + SharedBy: Optional[str] = None + SharedWith: Optional[str] = None + PermissionType: Optional[PermissionTypeType] = None + ShareResourceType: Optional[ShareResourceTypeType] = None + WorkloadName: Optional[str] = None + WorkloadId: Optional[str] = None + LensName: Optional[str] = None + LensArn: Optional[str] = None + ProfileName: Optional[str] = None + ProfileArn: Optional[str] = None + TemplateName: Optional[str] = None + TemplateArn: Optional[str] = None + +class ListTagsForResourceInputRequestTypeDef(BaseModel): + WorkloadArn: str + +class ListTemplateSharesInputRequestTypeDef(BaseModel): + TemplateArn: str + SharedWithPrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[ShareStatusType] = None + +class TemplateShareSummaryTypeDef(BaseModel): + ShareId: Optional[str] = None + SharedWith: Optional[str] = None + Status: Optional[ShareStatusType] = None + StatusMessage: Optional[str] = None + +class ListWorkloadSharesInputRequestTypeDef(BaseModel): + WorkloadId: str + SharedWithPrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Status: Optional[ShareStatusType] = None + +class WorkloadShareSummaryTypeDef(BaseModel): + ShareId: Optional[str] = None + SharedWith: Optional[str] = None + PermissionType: Optional[PermissionTypeType] = None + Status: Optional[ShareStatusType] = None + StatusMessage: Optional[str] = None + +class ListWorkloadsInputRequestTypeDef(BaseModel): + WorkloadNamePrefix: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class QuestionDifferenceTypeDef(BaseModel): + QuestionId: Optional[str] = None + QuestionTitle: Optional[str] = None + DifferenceStatus: Optional[DifferenceStatusType] = None + +class ProfileChoiceTypeDef(BaseModel): + ChoiceId: Optional[str] = None + ChoiceTitle: Optional[str] = None + ChoiceDescription: Optional[str] = None + +class ProfileTemplateChoiceTypeDef(BaseModel): + ChoiceId: Optional[str] = None + ChoiceTitle: Optional[str] = None + ChoiceDescription: Optional[str] = None + +class ReviewTemplatePillarReviewSummaryTypeDef(BaseModel): + PillarId: Optional[str] = None + PillarName: Optional[str] = None + Notes: Optional[str] = None + QuestionCounts: Optional[Dict[QuestionType, int]] = None + +class ShareInvitationTypeDef(BaseModel): + ShareInvitationId: Optional[str] = None + ShareResourceType: Optional[ShareResourceTypeType] = None + WorkloadId: Optional[str] = None + LensAlias: Optional[str] = None + LensArn: Optional[str] = None + ProfileArn: Optional[str] = None + TemplateArn: Optional[str] = None + +class TagResourceInputRequestTypeDef(BaseModel): + WorkloadArn: str + Tags: Mapping[str, str] + +class UntagResourceInputRequestTypeDef(BaseModel): + WorkloadArn: str + TagKeys: Sequence[str] + +class UpdateIntegrationInputRequestTypeDef(BaseModel): + WorkloadId: str + ClientRequestToken: str + IntegratingService: Literal["JIRA"] + +class UpdateReviewTemplateInputRequestTypeDef(BaseModel): + TemplateArn: str + TemplateName: Optional[str] = None + Description: Optional[str] = None + Notes: Optional[str] = None + LensesToAssociate: Optional[Sequence[str]] = None + LensesToDisassociate: Optional[Sequence[str]] = None + +class UpdateReviewTemplateLensReviewInputRequestTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + LensNotes: Optional[str] = None + PillarNotes: Optional[Mapping[str, str]] = None + +class UpdateShareInvitationInputRequestTypeDef(BaseModel): + ShareInvitationId: str + ShareInvitationAction: ShareInvitationActionType + +class UpdateWorkloadShareInputRequestTypeDef(BaseModel): + ShareId: str + WorkloadId: str + PermissionType: PermissionTypeType + +class WorkloadShareTypeDef(BaseModel): + ShareId: Optional[str] = None + SharedBy: Optional[str] = None + SharedWith: Optional[str] = None + PermissionType: Optional[PermissionTypeType] = None + Status: Optional[ShareStatusType] = None + WorkloadName: Optional[str] = None + WorkloadId: Optional[str] = None + +class UpgradeLensReviewInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + MilestoneName: str + ClientRequestToken: Optional[str] = None + +class UpgradeProfileVersionInputRequestTypeDef(BaseModel): + WorkloadId: str + ProfileArn: str + MilestoneName: Optional[str] = None + ClientRequestToken: Optional[str] = None + +class UpgradeReviewTemplateLensReviewInputRequestTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + ClientRequestToken: Optional[str] = None + +class WorkloadJiraConfigurationOutputTypeDef(BaseModel): + IssueManagementStatus: Optional[WorkloadIssueManagementStatusType] = None + IssueManagementType: Optional[IssueManagementTypeType] = None + JiraProjectKey: Optional[str] = None + StatusMessage: Optional[str] = None + +class UpdateGlobalSettingsInputRequestTypeDef(BaseModel): + OrganizationSharingStatus: Optional[OrganizationSharingStatusType] = None + DiscoveryIntegrationStatus: Optional[DiscoveryIntegrationStatusType] = None + JiraConfiguration: Optional[AccountJiraConfigurationInputTypeDef] = None + +class AdditionalResourcesTypeDef(BaseModel): + Type: Optional[AdditionalResourceTypeType] = None + Content: Optional[List[ChoiceContentTypeDef]] = None + +class QuestionMetricTypeDef(BaseModel): + QuestionId: Optional[str] = None + Risk: Optional[RiskType] = None + BestPractices: Optional[List[BestPracticeTypeDef]] = None + +class ImprovementSummaryTypeDef(BaseModel): + QuestionId: Optional[str] = None + PillarId: Optional[str] = None + QuestionTitle: Optional[str] = None + Risk: Optional[RiskType] = None + ImprovementPlanUrl: Optional[str] = None + ImprovementPlans: Optional[List[ChoiceImprovementPlanTypeDef]] = None + JiraConfiguration: Optional[JiraConfigurationTypeDef] = None + +class UpdateAnswerInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + QuestionId: str + SelectedChoices: Optional[Sequence[str]] = None + ChoiceUpdates: Optional[Mapping[str, ChoiceUpdateTypeDef]] = None + Notes: Optional[str] = None + IsApplicable: Optional[bool] = None + Reason: Optional[AnswerReasonType] = None + +class UpdateReviewTemplateAnswerInputRequestTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + QuestionId: str + SelectedChoices: Optional[Sequence[str]] = None + ChoiceUpdates: Optional[Mapping[str, ChoiceUpdateTypeDef]] = None + Notes: Optional[str] = None + IsApplicable: Optional[bool] = None + Reason: Optional[AnswerReasonType] = None + +class CreateLensShareOutputTypeDef(BaseModel): + ShareId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateLensVersionOutputTypeDef(BaseModel): + LensArn: str + LensVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMilestoneOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileOutputTypeDef(BaseModel): + ProfileArn: str + ProfileVersion: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileShareOutputTypeDef(BaseModel): + ShareId: str + ProfileArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateReviewTemplateOutputTypeDef(BaseModel): + TemplateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTemplateShareOutputTypeDef(BaseModel): + TemplateArn: str + ShareId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkloadOutputTypeDef(BaseModel): + WorkloadId: str + WorkloadArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkloadShareOutputTypeDef(BaseModel): + WorkloadId: str + ShareId: str + ResponseMetadata: ResponseMetadataTypeDef + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ExportLensOutputTypeDef(BaseModel): + LensJSON: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetGlobalSettingsOutputTypeDef(BaseModel): + OrganizationSharingStatus: OrganizationSharingStatusType + DiscoveryIntegrationStatus: DiscoveryIntegrationStatusType + JiraConfiguration: AccountJiraConfigurationOutputTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportLensOutputTypeDef(BaseModel): + LensArn: str + Status: ImportLensStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class ListCheckDetailsOutputTypeDef(BaseModel): + CheckDetails: List[CheckDetailTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListCheckSummariesOutputTypeDef(BaseModel): + CheckSummaries: List[CheckSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceOutputTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateProfileInputRequestTypeDef(BaseModel): + ProfileName: str + ProfileDescription: str + ProfileQuestions: Sequence[ProfileQuestionUpdateTypeDef] + ClientRequestToken: str + Tags: Optional[Mapping[str, str]] = None + +class UpdateProfileInputRequestTypeDef(BaseModel): + ProfileArn: str + ProfileDescription: Optional[str] = None + ProfileQuestions: Optional[Sequence[ProfileQuestionUpdateTypeDef]] = None + +class CreateWorkloadInputRequestTypeDef(BaseModel): + WorkloadName: str + Description: str + Environment: WorkloadEnvironmentType + Lenses: Sequence[str] + ClientRequestToken: str + AccountIds: Optional[Sequence[str]] = None + AwsRegions: Optional[Sequence[str]] = None + NonAwsRegions: Optional[Sequence[str]] = None + PillarPriorities: Optional[Sequence[str]] = None + ArchitecturalDesign: Optional[str] = None + ReviewOwner: Optional[str] = None + IndustryType: Optional[str] = None + Industry: Optional[str] = None + Notes: Optional[str] = None + Tags: Optional[Mapping[str, str]] = None + DiscoveryConfig: Optional[WorkloadDiscoveryConfigTypeDef] = None + Applications: Optional[Sequence[str]] = None + ProfileArns: Optional[Sequence[str]] = None + ReviewTemplateArns: Optional[Sequence[str]] = None + JiraConfiguration: Optional[WorkloadJiraConfigurationInputTypeDef] = None + +class UpdateWorkloadInputRequestTypeDef(BaseModel): + WorkloadId: str + WorkloadName: Optional[str] = None + Description: Optional[str] = None + Environment: Optional[WorkloadEnvironmentType] = None + AccountIds: Optional[Sequence[str]] = None + AwsRegions: Optional[Sequence[str]] = None + NonAwsRegions: Optional[Sequence[str]] = None + PillarPriorities: Optional[Sequence[str]] = None + ArchitecturalDesign: Optional[str] = None + ReviewOwner: Optional[str] = None + IsReviewOwnerUpdateAcknowledged: Optional[bool] = None + IndustryType: Optional[str] = None + Industry: Optional[str] = None + Notes: Optional[str] = None + ImprovementStatus: Optional[WorkloadImprovementStatusType] = None + DiscoveryConfig: Optional[WorkloadDiscoveryConfigTypeDef] = None + Applications: Optional[Sequence[str]] = None + JiraConfiguration: Optional[WorkloadJiraConfigurationInputTypeDef] = None + +class GetLensOutputTypeDef(BaseModel): + Lens: LensTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetLensReviewReportOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + LensReviewReport: LensReviewReportTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetReviewTemplateOutputTypeDef(BaseModel): + ReviewTemplate: ReviewTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReviewTemplateOutputTypeDef(BaseModel): + ReviewTemplate: ReviewTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class JiraSelectedQuestionConfigurationTypeDef(BaseModel): + SelectedPillars: Optional[List[SelectedPillarTypeDef]] = None + +class LensReviewSummaryTypeDef(BaseModel): + LensAlias: Optional[str] = None + LensArn: Optional[str] = None + LensVersion: Optional[str] = None + LensName: Optional[str] = None + LensStatus: Optional[LensStatusType] = None + UpdatedAt: Optional[datetime] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + Profiles: Optional[List[WorkloadProfileTypeDef]] = None + PrioritizedRiskCounts: Optional[Dict[RiskType, int]] = None + +class WorkloadSummaryTypeDef(BaseModel): + WorkloadId: Optional[str] = None + WorkloadArn: Optional[str] = None + WorkloadName: Optional[str] = None + Owner: Optional[str] = None + UpdatedAt: Optional[datetime] = None + Lenses: Optional[List[str]] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + ImprovementStatus: Optional[WorkloadImprovementStatusType] = None + Profiles: Optional[List[WorkloadProfileTypeDef]] = None + PrioritizedRiskCounts: Optional[Dict[RiskType, int]] = None + +class ListLensSharesOutputTypeDef(BaseModel): + LensShareSummaries: List[LensShareSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListLensesOutputTypeDef(BaseModel): + LensSummaries: List[LensSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class NotificationSummaryTypeDef(BaseModel): + Type: Optional[NotificationTypeType] = None + LensUpgradeSummary: Optional[LensUpgradeSummaryTypeDef] = None + +class ListProfileNotificationsOutputTypeDef(BaseModel): + NotificationSummaries: List[ProfileNotificationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfileSharesOutputTypeDef(BaseModel): + ProfileShareSummaries: List[ProfileShareSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListProfilesOutputTypeDef(BaseModel): + ProfileSummaries: List[ProfileSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListReviewTemplatesOutputTypeDef(BaseModel): + ReviewTemplates: List[ReviewTemplateSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListShareInvitationsOutputTypeDef(BaseModel): + ShareInvitationSummaries: List[ShareInvitationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTemplateSharesOutputTypeDef(BaseModel): + TemplateArn: str + TemplateShareSummaries: List[TemplateShareSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkloadSharesOutputTypeDef(BaseModel): + WorkloadId: str + WorkloadShareSummaries: List[WorkloadShareSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PillarDifferenceTypeDef(BaseModel): + PillarId: Optional[str] = None + PillarName: Optional[str] = None + DifferenceStatus: Optional[DifferenceStatusType] = None + QuestionDifferences: Optional[List[QuestionDifferenceTypeDef]] = None + +class ProfileQuestionTypeDef(BaseModel): + QuestionId: Optional[str] = None + QuestionTitle: Optional[str] = None + QuestionDescription: Optional[str] = None + QuestionChoices: Optional[List[ProfileChoiceTypeDef]] = None + SelectedChoiceIds: Optional[List[str]] = None + MinSelectedChoices: Optional[int] = None + MaxSelectedChoices: Optional[int] = None + +class ProfileTemplateQuestionTypeDef(BaseModel): + QuestionId: Optional[str] = None + QuestionTitle: Optional[str] = None + QuestionDescription: Optional[str] = None + QuestionChoices: Optional[List[ProfileTemplateChoiceTypeDef]] = None + MinSelectedChoices: Optional[int] = None + MaxSelectedChoices: Optional[int] = None + +class ReviewTemplateLensReviewTypeDef(BaseModel): + LensAlias: Optional[str] = None + LensArn: Optional[str] = None + LensVersion: Optional[str] = None + LensName: Optional[str] = None + LensStatus: Optional[LensStatusType] = None + PillarReviewSummaries: Optional[List[ReviewTemplatePillarReviewSummaryTypeDef]] = None + UpdatedAt: Optional[datetime] = None + Notes: Optional[str] = None + QuestionCounts: Optional[Dict[QuestionType, int]] = None + NextToken: Optional[str] = None + +class UpdateShareInvitationOutputTypeDef(BaseModel): + ShareInvitation: ShareInvitationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateWorkloadShareOutputTypeDef(BaseModel): + WorkloadId: str + WorkloadShare: WorkloadShareTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class WorkloadTypeDef(BaseModel): + WorkloadId: Optional[str] = None + WorkloadArn: Optional[str] = None + WorkloadName: Optional[str] = None + Description: Optional[str] = None + Environment: Optional[WorkloadEnvironmentType] = None + UpdatedAt: Optional[datetime] = None + AccountIds: Optional[List[str]] = None + AwsRegions: Optional[List[str]] = None + NonAwsRegions: Optional[List[str]] = None + ArchitecturalDesign: Optional[str] = None + ReviewOwner: Optional[str] = None + ReviewRestrictionDate: Optional[datetime] = None + IsReviewOwnerUpdateAcknowledged: Optional[bool] = None + IndustryType: Optional[str] = None + Industry: Optional[str] = None + Notes: Optional[str] = None + ImprovementStatus: Optional[WorkloadImprovementStatusType] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + PillarPriorities: Optional[List[str]] = None + Lenses: Optional[List[str]] = None + Owner: Optional[str] = None + ShareInvitationId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + DiscoveryConfig: Optional[WorkloadDiscoveryConfigTypeDef] = None + Applications: Optional[List[str]] = None + Profiles: Optional[List[WorkloadProfileTypeDef]] = None + PrioritizedRiskCounts: Optional[Dict[RiskType, int]] = None + JiraConfiguration: Optional[WorkloadJiraConfigurationOutputTypeDef] = None + +class ChoiceTypeDef(BaseModel): + ChoiceId: Optional[str] = None + Title: Optional[str] = None + Description: Optional[str] = None + HelpfulResource: Optional[ChoiceContentTypeDef] = None + ImprovementPlan: Optional[ChoiceContentTypeDef] = None + AdditionalResources: Optional[List[AdditionalResourcesTypeDef]] = None + +class PillarMetricTypeDef(BaseModel): + PillarId: Optional[str] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + Questions: Optional[List[QuestionMetricTypeDef]] = None + +class ListLensReviewImprovementsOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + LensAlias: str + LensArn: str + ImprovementSummaries: List[ImprovementSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class LensReviewTypeDef(BaseModel): + LensAlias: Optional[str] = None + LensArn: Optional[str] = None + LensVersion: Optional[str] = None + LensName: Optional[str] = None + LensStatus: Optional[LensStatusType] = None + PillarReviewSummaries: Optional[List[PillarReviewSummaryTypeDef]] = None + JiraConfiguration: Optional[JiraSelectedQuestionConfigurationTypeDef] = None + UpdatedAt: Optional[datetime] = None + Notes: Optional[str] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + NextToken: Optional[str] = None + Profiles: Optional[List[WorkloadProfileTypeDef]] = None + PrioritizedRiskCounts: Optional[Dict[RiskType, int]] = None + +class UpdateLensReviewInputRequestTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + LensNotes: Optional[str] = None + PillarNotes: Optional[Mapping[str, str]] = None + JiraConfiguration: Optional[JiraSelectedQuestionConfigurationTypeDef] = None + +class ListLensReviewsOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + LensReviewSummaries: List[LensReviewSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWorkloadsOutputTypeDef(BaseModel): + WorkloadSummaries: List[WorkloadSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class MilestoneSummaryTypeDef(BaseModel): + MilestoneNumber: Optional[int] = None + MilestoneName: Optional[str] = None + RecordedAt: Optional[datetime] = None + WorkloadSummary: Optional[WorkloadSummaryTypeDef] = None + +class ListNotificationsOutputTypeDef(BaseModel): + NotificationSummaries: List[NotificationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class VersionDifferencesTypeDef(BaseModel): + PillarDifferences: Optional[List[PillarDifferenceTypeDef]] = None + +class ProfileTypeDef(BaseModel): + ProfileArn: Optional[str] = None + ProfileVersion: Optional[str] = None + ProfileName: Optional[str] = None + ProfileDescription: Optional[str] = None + ProfileQuestions: Optional[List[ProfileQuestionTypeDef]] = None + Owner: Optional[str] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + ShareInvitationId: Optional[str] = None + Tags: Optional[Dict[str, str]] = None + +class ProfileTemplateTypeDef(BaseModel): + TemplateName: Optional[str] = None + TemplateQuestions: Optional[List[ProfileTemplateQuestionTypeDef]] = None + CreatedAt: Optional[datetime] = None + UpdatedAt: Optional[datetime] = None + +class GetReviewTemplateLensReviewOutputTypeDef(BaseModel): + TemplateArn: str + LensReview: ReviewTemplateLensReviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReviewTemplateLensReviewOutputTypeDef(BaseModel): + TemplateArn: str + LensReview: ReviewTemplateLensReviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetWorkloadOutputTypeDef(BaseModel): + Workload: WorkloadTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class MilestoneTypeDef(BaseModel): + MilestoneNumber: Optional[int] = None + MilestoneName: Optional[str] = None + RecordedAt: Optional[datetime] = None + Workload: Optional[WorkloadTypeDef] = None + +class UpdateWorkloadOutputTypeDef(BaseModel): + Workload: WorkloadTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AnswerSummaryTypeDef(BaseModel): + QuestionId: Optional[str] = None + PillarId: Optional[str] = None + QuestionTitle: Optional[str] = None + Choices: Optional[List[ChoiceTypeDef]] = None + SelectedChoices: Optional[List[str]] = None + ChoiceAnswerSummaries: Optional[List[ChoiceAnswerSummaryTypeDef]] = None + IsApplicable: Optional[bool] = None + Risk: Optional[RiskType] = None + Reason: Optional[AnswerReasonType] = None + QuestionType: Optional[QuestionTypeType] = None + JiraConfiguration: Optional[JiraConfigurationTypeDef] = None + +class AnswerTypeDef(BaseModel): + QuestionId: Optional[str] = None + PillarId: Optional[str] = None + QuestionTitle: Optional[str] = None + QuestionDescription: Optional[str] = None + ImprovementPlanUrl: Optional[str] = None + HelpfulResourceUrl: Optional[str] = None + HelpfulResourceDisplayText: Optional[str] = None + Choices: Optional[List[ChoiceTypeDef]] = None + SelectedChoices: Optional[List[str]] = None + ChoiceAnswers: Optional[List[ChoiceAnswerTypeDef]] = None + IsApplicable: Optional[bool] = None + Risk: Optional[RiskType] = None + Notes: Optional[str] = None + Reason: Optional[AnswerReasonType] = None + JiraConfiguration: Optional[JiraConfigurationTypeDef] = None + +class ReviewTemplateAnswerSummaryTypeDef(BaseModel): + QuestionId: Optional[str] = None + PillarId: Optional[str] = None + QuestionTitle: Optional[str] = None + Choices: Optional[List[ChoiceTypeDef]] = None + SelectedChoices: Optional[List[str]] = None + ChoiceAnswerSummaries: Optional[List[ChoiceAnswerSummaryTypeDef]] = None + IsApplicable: Optional[bool] = None + AnswerStatus: Optional[ReviewTemplateAnswerStatusType] = None + Reason: Optional[AnswerReasonType] = None + QuestionType: Optional[QuestionTypeType] = None + +class ReviewTemplateAnswerTypeDef(BaseModel): + QuestionId: Optional[str] = None + PillarId: Optional[str] = None + QuestionTitle: Optional[str] = None + QuestionDescription: Optional[str] = None + ImprovementPlanUrl: Optional[str] = None + HelpfulResourceUrl: Optional[str] = None + HelpfulResourceDisplayText: Optional[str] = None + Choices: Optional[List[ChoiceTypeDef]] = None + SelectedChoices: Optional[List[str]] = None + ChoiceAnswers: Optional[List[ChoiceAnswerTypeDef]] = None + IsApplicable: Optional[bool] = None + AnswerStatus: Optional[ReviewTemplateAnswerStatusType] = None + Notes: Optional[str] = None + Reason: Optional[AnswerReasonType] = None + +class LensMetricTypeDef(BaseModel): + LensArn: Optional[str] = None + Pillars: Optional[List[PillarMetricTypeDef]] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + +class GetLensReviewOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + LensReview: LensReviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateLensReviewOutputTypeDef(BaseModel): + WorkloadId: str + LensReview: LensReviewTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListMilestonesOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneSummaries: List[MilestoneSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetLensVersionDifferenceOutputTypeDef(BaseModel): + LensAlias: str + LensArn: str + BaseLensVersion: str + TargetLensVersion: str + LatestLensVersion: str + VersionDifferences: VersionDifferencesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileOutputTypeDef(BaseModel): + Profile: ProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateProfileOutputTypeDef(BaseModel): + Profile: ProfileTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetProfileTemplateOutputTypeDef(BaseModel): + ProfileTemplate: ProfileTemplateTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetMilestoneOutputTypeDef(BaseModel): + WorkloadId: str + Milestone: MilestoneTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAnswersOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + LensAlias: str + LensArn: str + AnswerSummaries: List[AnswerSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAnswerOutputTypeDef(BaseModel): + WorkloadId: str + MilestoneNumber: int + LensAlias: str + LensArn: str + Answer: AnswerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateAnswerOutputTypeDef(BaseModel): + WorkloadId: str + LensAlias: str + LensArn: str + Answer: AnswerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListReviewTemplateAnswersOutputTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + AnswerSummaries: List[ReviewTemplateAnswerSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetReviewTemplateAnswerOutputTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + Answer: ReviewTemplateAnswerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateReviewTemplateAnswerOutputTypeDef(BaseModel): + TemplateArn: str + LensAlias: str + Answer: ReviewTemplateAnswerTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ConsolidatedReportMetricTypeDef(BaseModel): + MetricType: Optional[Literal["WORKLOAD"]] = None + RiskCounts: Optional[Dict[RiskType, int]] = None + WorkloadId: Optional[str] = None + WorkloadName: Optional[str] = None + WorkloadArn: Optional[str] = None + UpdatedAt: Optional[datetime] = None + Lenses: Optional[List[LensMetricTypeDef]] = None + LensesAppliedCount: Optional[int] = None + +class GetConsolidatedReportOutputTypeDef(BaseModel): + Metrics: List[ConsolidatedReportMetricTypeDef] + NextToken: str + Base64String: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/wellarchitected_constants.py b/aws_resource_validator/pydantic_models/wellarchitected_constants.py new file mode 100644 index 00000000..66211ce7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/wellarchitected_constants.py @@ -0,0 +1,453 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccountJiraIssueManagementStatusType = Literal["DISABLED", "ENABLED"] +AdditionalResourceTypeType = Literal["HELPFUL_RESOURCE", "IMPROVEMENT_PLAN"] +AnswerReasonType = Literal["ARCHITECTURE_CONSTRAINTS", "BUSINESS_PRIORITIES", "NONE", "OTHER", "OUT_OF_SCOPE"] +CheckFailureReasonType = Literal["ACCESS_DENIED", "ASSUME_ROLE_ERROR", "PREMIUM_SUPPORT_REQUIRED", "UNKNOWN_ERROR"] +CheckProviderType = Literal["TRUSTED_ADVISOR"] +CheckStatusType = Literal["ERROR", "FETCH_FAILED", "NOT_AVAILABLE", "OKAY", "WARNING"] +ChoiceReasonType = Literal["ARCHITECTURE_CONSTRAINTS", "BUSINESS_PRIORITIES", "NONE", "OTHER", "OUT_OF_SCOPE"] +ChoiceStatusType = Literal["NOT_APPLICABLE", "SELECTED", "UNSELECTED"] +DefinitionTypeType = Literal["APP_REGISTRY", "WORKLOAD_METADATA"] +DifferenceStatusType = Literal["DELETED", "NEW", "UPDATED"] +DiscoveryIntegrationStatusType = Literal["DISABLED", "ENABLED"] +ImportLensStatusType = Literal["COMPLETE", "ERROR", "IN_PROGRESS"] +IntegratingServiceType = Literal["JIRA"] +IntegrationStatusInputType = Literal["NOT_CONFIGURED"] +IntegrationStatusType = Literal["CONFIGURED", "NOT_CONFIGURED"] +IssueManagementTypeType = Literal["AUTO", "MANUAL"] +LensStatusType = Literal["CURRENT", "DELETED", "DEPRECATED", "NOT_CURRENT", "UNSHARED"] +LensStatusTypeType = Literal["ALL", "DRAFT", "PUBLISHED"] +LensTypeType = Literal["AWS_OFFICIAL", "CUSTOM_SELF", "CUSTOM_SHARED"] +MetricTypeType = Literal["WORKLOAD"] +NotificationTypeType = Literal["LENS_VERSION_DEPRECATED", "LENS_VERSION_UPGRADED"] +OrganizationSharingStatusType = Literal["DISABLED", "ENABLED"] +PermissionTypeType = Literal["CONTRIBUTOR", "READONLY"] +ProfileNotificationTypeType = Literal["PROFILE_ANSWERS_UPDATED", "PROFILE_DELETED"] +ProfileOwnerTypeType = Literal["SELF", "SHARED"] +QuestionPriorityType = Literal["NONE", "PRIORITIZED"] +QuestionType = Literal["ANSWERED", "UNANSWERED"] +QuestionTypeType = Literal["NON_PRIORITIZED", "PRIORITIZED"] +ReportFormatType = Literal["JSON", "PDF"] +ReviewTemplateAnswerStatusType = Literal["ANSWERED", "UNANSWERED"] +ReviewTemplateUpdateStatusType = Literal["CURRENT", "LENS_NOT_CURRENT"] +RiskType = Literal["HIGH", "MEDIUM", "NONE", "NOT_APPLICABLE", "UNANSWERED"] +ShareInvitationActionType = Literal["ACCEPT", "REJECT"] +ShareResourceTypeType = Literal["LENS", "PROFILE", "TEMPLATE", "WORKLOAD"] +ShareStatusType = Literal["ACCEPTED", "ASSOCIATED", "ASSOCIATING", "EXPIRED", "FAILED", "PENDING", "REJECTED", "REVOKED"] +TrustedAdvisorIntegrationStatusType = Literal["DISABLED", "ENABLED"] +WorkloadEnvironmentType = Literal["PREPRODUCTION", "PRODUCTION"] +WorkloadImprovementStatusType = Literal["COMPLETE", "IN_PROGRESS", "NOT_APPLICABLE", "NOT_STARTED", "RISK_ACKNOWLEDGED"] +WorkloadIssueManagementStatusType = Literal["DISABLED", "ENABLED", "INHERIT"] +WellArchitectedServiceName = Literal["wellarchitected"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-north-1", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] diff --git a/aws_resource_validator/pydantic_models/wisdom_classes.py b/aws_resource_validator/pydantic_models/wisdom_classes.py new file mode 100644 index 00000000..5631e138 --- /dev/null +++ b/aws_resource_validator/pydantic_models/wisdom_classes.py @@ -0,0 +1,819 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.wisdom_constants import * + +class AppIntegrationsConfigurationPaginatorTypeDef(BaseModel): + appIntegrationArn: str + objectFields: Optional[List[str]] = None + +class AppIntegrationsConfigurationTypeDef(BaseModel): + appIntegrationArn: str + objectFields: Optional[Sequence[str]] = None + +class AssistantAssociationInputDataTypeDef(BaseModel): + knowledgeBaseId: Optional[str] = None + +class KnowledgeBaseAssociationDataTypeDef(BaseModel): + knowledgeBaseArn: Optional[str] = None + knowledgeBaseId: Optional[str] = None + +class AssistantIntegrationConfigurationTypeDef(BaseModel): + topicIntegrationArn: Optional[str] = None + +class ServerSideEncryptionConfigurationTypeDef(BaseModel): + kmsKeyId: Optional[str] = None + +class ConnectConfigurationTypeDef(BaseModel): + instanceId: Optional[str] = None + +class ContentDataTypeDef(BaseModel): + contentArn: str + contentId: str + contentType: str + knowledgeBaseArn: str + knowledgeBaseId: str + metadata: Dict[str, str] + name: str + revisionId: str + status: ContentStatusType + title: str + url: str + urlExpiry: datetime + linkOutUri: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ContentReferenceTypeDef(BaseModel): + contentArn: Optional[str] = None + contentId: Optional[str] = None + knowledgeBaseArn: Optional[str] = None + knowledgeBaseId: Optional[str] = None + +class ContentSummaryTypeDef(BaseModel): + contentArn: str + contentId: str + contentType: str + knowledgeBaseArn: str + knowledgeBaseId: str + metadata: Dict[str, str] + name: str + revisionId: str + status: ContentStatusType + title: str + tags: Optional[Dict[str, str]] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class CreateContentRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + name: str + uploadId: str + clientToken: Optional[str] = None + metadata: Optional[Mapping[str, str]] = None + overrideLinkOutUri: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + title: Optional[str] = None + +class RenderingConfigurationTypeDef(BaseModel): + templateUri: Optional[str] = None + +class GroupingConfigurationTypeDef(BaseModel): + criteria: Optional[str] = None + values: Optional[Sequence[str]] = None + +class QuickResponseDataProviderTypeDef(BaseModel): + content: Optional[str] = None + +class CreateSessionRequestRequestTypeDef(BaseModel): + assistantId: str + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class DeleteAssistantAssociationRequestRequestTypeDef(BaseModel): + assistantAssociationId: str + assistantId: str + +class DeleteAssistantRequestRequestTypeDef(BaseModel): + assistantId: str + +class DeleteContentRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + +class DeleteImportJobRequestRequestTypeDef(BaseModel): + importJobId: str + knowledgeBaseId: str + +class DeleteKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class DeleteQuickResponseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + quickResponseId: str + +class HighlightTypeDef(BaseModel): + beginOffsetInclusive: Optional[int] = None + endOffsetExclusive: Optional[int] = None + +class FilterTypeDef(BaseModel): + field: Literal["NAME"] + operator: Literal["EQUALS"] + value: str + +class GetAssistantAssociationRequestRequestTypeDef(BaseModel): + assistantAssociationId: str + assistantId: str + +class GetAssistantRequestRequestTypeDef(BaseModel): + assistantId: str + +class GetContentRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + +class GetContentSummaryRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + +class GetImportJobRequestRequestTypeDef(BaseModel): + importJobId: str + knowledgeBaseId: str + +class GetKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class GetQuickResponseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + quickResponseId: str + +class GetRecommendationsRequestRequestTypeDef(BaseModel): + assistantId: str + sessionId: str + maxResults: Optional[int] = None + waitTimeSeconds: Optional[int] = None + +class GetSessionRequestRequestTypeDef(BaseModel): + assistantId: str + sessionId: str + +class GroupingConfigurationPaginatorTypeDef(BaseModel): + criteria: Optional[str] = None + values: Optional[List[str]] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAssistantAssociationsRequestRequestTypeDef(BaseModel): + assistantId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListAssistantsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListContentsRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListImportJobsRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListKnowledgeBasesRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListQuickResponsesRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QuickResponseSummaryTypeDef(BaseModel): + contentType: str + createdTime: datetime + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + channels: Optional[List[str]] = None + description: Optional[str] = None + isActive: Optional[bool] = None + lastModifiedBy: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class NotifyRecommendationsReceivedErrorTypeDef(BaseModel): + message: Optional[str] = None + recommendationId: Optional[str] = None + +class NotifyRecommendationsReceivedRequestRequestTypeDef(BaseModel): + assistantId: str + recommendationIds: Sequence[str] + sessionId: str + +class QueryAssistantRequestRequestTypeDef(BaseModel): + assistantId: str + queryText: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class QueryRecommendationTriggerDataTypeDef(BaseModel): + text: Optional[str] = None + +class QuickResponseContentProviderTypeDef(BaseModel): + content: Optional[str] = None + +class QuickResponseFilterFieldTypeDef(BaseModel): + name: str + operator: QuickResponseFilterOperatorType + includeNoExistence: Optional[bool] = None + values: Optional[Sequence[str]] = None + +class QuickResponseOrderFieldTypeDef(BaseModel): + name: str + order: Optional[OrderType] = None + +class QuickResponseQueryFieldTypeDef(BaseModel): + name: str + operator: QuickResponseQueryOperatorType + values: Sequence[str] + allowFuzziness: Optional[bool] = None + priority: Optional[PriorityType] = None + +class RemoveKnowledgeBaseTemplateUriRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + +class SessionSummaryTypeDef(BaseModel): + assistantArn: str + assistantId: str + sessionArn: str + sessionId: str + +class SessionIntegrationConfigurationTypeDef(BaseModel): + topicIntegrationArn: Optional[str] = None + +class StartContentUploadRequestRequestTypeDef(BaseModel): + contentType: str + knowledgeBaseId: str + presignedUrlTimeToLive: Optional[int] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateContentRequestRequestTypeDef(BaseModel): + contentId: str + knowledgeBaseId: str + metadata: Optional[Mapping[str, str]] = None + overrideLinkOutUri: Optional[str] = None + removeOverrideLinkOutUri: Optional[bool] = None + revisionId: Optional[str] = None + title: Optional[str] = None + uploadId: Optional[str] = None + +class UpdateKnowledgeBaseTemplateUriRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + templateUri: str + +class SourceConfigurationPaginatorTypeDef(BaseModel): + appIntegrations: Optional[AppIntegrationsConfigurationPaginatorTypeDef] = None + +class SourceConfigurationTypeDef(BaseModel): + appIntegrations: Optional[AppIntegrationsConfigurationTypeDef] = None + +class CreateAssistantAssociationRequestRequestTypeDef(BaseModel): + assistantId: str + association: AssistantAssociationInputDataTypeDef + associationType: Literal["KNOWLEDGE_BASE"] + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class AssistantAssociationOutputDataTypeDef(BaseModel): + knowledgeBaseAssociation: Optional[KnowledgeBaseAssociationDataTypeDef] = None + +class AssistantDataTypeDef(BaseModel): + assistantArn: str + assistantId: str + name: str + status: AssistantStatusType + type: Literal["AGENT"] + description: Optional[str] = None + integrationConfiguration: Optional[AssistantIntegrationConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class AssistantSummaryTypeDef(BaseModel): + assistantArn: str + assistantId: str + name: str + status: AssistantStatusType + type: Literal["AGENT"] + description: Optional[str] = None + integrationConfiguration: Optional[AssistantIntegrationConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateAssistantRequestRequestTypeDef(BaseModel): + name: str + type: Literal["AGENT"] + clientToken: Optional[str] = None + description: Optional[str] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class ConfigurationTypeDef(BaseModel): + connectConfiguration: Optional[ConnectConfigurationTypeDef] = None + +class CreateContentResponseTypeDef(BaseModel): + content: ContentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContentResponseTypeDef(BaseModel): + content: ContentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetContentSummaryResponseTypeDef(BaseModel): + contentSummary: ContentSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListContentsResponseTypeDef(BaseModel): + contentSummaries: List[ContentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchContentResponseTypeDef(BaseModel): + contentSummaries: List[ContentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartContentUploadResponseTypeDef(BaseModel): + headersToInclude: Dict[str, str] + uploadId: str + url: str + urlExpiry: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateContentResponseTypeDef(BaseModel): + content: ContentDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateQuickResponseRequestRequestTypeDef(BaseModel): + content: QuickResponseDataProviderTypeDef + knowledgeBaseId: str + name: str + channels: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + contentType: Optional[str] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationTypeDef] = None + isActive: Optional[bool] = None + language: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + +class UpdateQuickResponseRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + quickResponseId: str + channels: Optional[Sequence[str]] = None + content: Optional[QuickResponseDataProviderTypeDef] = None + contentType: Optional[str] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationTypeDef] = None + isActive: Optional[bool] = None + language: Optional[str] = None + name: Optional[str] = None + removeDescription: Optional[bool] = None + removeGroupingConfiguration: Optional[bool] = None + removeShortcutKey: Optional[bool] = None + shortcutKey: Optional[str] = None + +class DocumentTextTypeDef(BaseModel): + highlights: Optional[List[HighlightTypeDef]] = None + text: Optional[str] = None + +class SearchExpressionTypeDef(BaseModel): + filters: Sequence[FilterTypeDef] + +class ListAssistantAssociationsRequestListAssistantAssociationsPaginateTypeDef(BaseModel): + assistantId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAssistantsRequestListAssistantsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListContentsRequestListContentsPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListImportJobsRequestListImportJobsPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListKnowledgeBasesRequestListKnowledgeBasesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQuickResponsesRequestListQuickResponsesPaginateTypeDef(BaseModel): + knowledgeBaseId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class QueryAssistantRequestQueryAssistantPaginateTypeDef(BaseModel): + assistantId: str + queryText: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListQuickResponsesResponseTypeDef(BaseModel): + nextToken: str + quickResponseSummaries: List[QuickResponseSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class NotifyRecommendationsReceivedResponseTypeDef(BaseModel): + errors: List[NotifyRecommendationsReceivedErrorTypeDef] + recommendationIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class RecommendationTriggerDataTypeDef(BaseModel): + query: Optional[QueryRecommendationTriggerDataTypeDef] = None + +class QuickResponseContentsTypeDef(BaseModel): + markdown: Optional[QuickResponseContentProviderTypeDef] = None + plainText: Optional[QuickResponseContentProviderTypeDef] = None + +class QuickResponseSearchExpressionTypeDef(BaseModel): + filters: Optional[Sequence[QuickResponseFilterFieldTypeDef]] = None + orderOnField: Optional[QuickResponseOrderFieldTypeDef] = None + queries: Optional[Sequence[QuickResponseQueryFieldTypeDef]] = None + +class SearchSessionsResponseTypeDef(BaseModel): + nextToken: str + sessionSummaries: List[SessionSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SessionDataTypeDef(BaseModel): + name: str + sessionArn: str + sessionId: str + description: Optional[str] = None + integrationConfiguration: Optional[SessionIntegrationConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class KnowledgeBaseSummaryPaginatorTypeDef(BaseModel): + knowledgeBaseArn: str + knowledgeBaseId: str + knowledgeBaseType: KnowledgeBaseTypeType + name: str + status: KnowledgeBaseStatusType + description: Optional[str] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationPaginatorTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class CreateKnowledgeBaseRequestRequestTypeDef(BaseModel): + knowledgeBaseType: KnowledgeBaseTypeType + name: str + clientToken: Optional[str] = None + description: Optional[str] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationTypeDef] = None + tags: Optional[Mapping[str, str]] = None + +class KnowledgeBaseDataTypeDef(BaseModel): + knowledgeBaseArn: str + knowledgeBaseId: str + knowledgeBaseType: KnowledgeBaseTypeType + name: str + status: KnowledgeBaseStatusType + description: Optional[str] = None + lastContentModificationTime: Optional[datetime] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class KnowledgeBaseSummaryTypeDef(BaseModel): + knowledgeBaseArn: str + knowledgeBaseId: str + knowledgeBaseType: KnowledgeBaseTypeType + name: str + status: KnowledgeBaseStatusType + description: Optional[str] = None + renderingConfiguration: Optional[RenderingConfigurationTypeDef] = None + serverSideEncryptionConfiguration: Optional[ServerSideEncryptionConfigurationTypeDef] = None + sourceConfiguration: Optional[SourceConfigurationTypeDef] = None + tags: Optional[Dict[str, str]] = None + +class AssistantAssociationDataTypeDef(BaseModel): + assistantArn: str + assistantAssociationArn: str + assistantAssociationId: str + assistantId: str + associationData: AssistantAssociationOutputDataTypeDef + associationType: Literal["KNOWLEDGE_BASE"] + tags: Optional[Dict[str, str]] = None + +class AssistantAssociationSummaryTypeDef(BaseModel): + assistantArn: str + assistantAssociationArn: str + assistantAssociationId: str + assistantId: str + associationData: AssistantAssociationOutputDataTypeDef + associationType: Literal["KNOWLEDGE_BASE"] + tags: Optional[Dict[str, str]] = None + +class CreateAssistantResponseTypeDef(BaseModel): + assistant: AssistantDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssistantResponseTypeDef(BaseModel): + assistant: AssistantDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssistantsResponseTypeDef(BaseModel): + assistantSummaries: List[AssistantSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ExternalSourceConfigurationTypeDef(BaseModel): + configuration: ConfigurationTypeDef + source: Literal["AMAZON_CONNECT"] + +class DocumentTypeDef(BaseModel): + contentReference: ContentReferenceTypeDef + excerpt: Optional[DocumentTextTypeDef] = None + title: Optional[DocumentTextTypeDef] = None + +class SearchContentRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: SearchExpressionTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchContentRequestSearchContentPaginateTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: SearchExpressionTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class SearchSessionsRequestRequestTypeDef(BaseModel): + assistantId: str + searchExpression: SearchExpressionTypeDef + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchSessionsRequestSearchSessionsPaginateTypeDef(BaseModel): + assistantId: str + searchExpression: SearchExpressionTypeDef + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class RecommendationTriggerTypeDef(BaseModel): + data: RecommendationTriggerDataTypeDef + id: str + recommendationIds: List[str] + source: RecommendationSourceTypeType + type: Literal["QUERY"] + +class QuickResponseDataTypeDef(BaseModel): + contentType: str + createdTime: datetime + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + channels: Optional[List[str]] = None + contents: Optional[QuickResponseContentsTypeDef] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationTypeDef] = None + isActive: Optional[bool] = None + language: Optional[str] = None + lastModifiedBy: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class QuickResponseSearchResultDataPaginatorTypeDef(BaseModel): + contentType: str + contents: QuickResponseContentsTypeDef + createdTime: datetime + isActive: bool + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + attributesInterpolated: Optional[List[str]] = None + attributesNotInterpolated: Optional[List[str]] = None + channels: Optional[List[str]] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationPaginatorTypeDef] = None + language: Optional[str] = None + lastModifiedBy: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class QuickResponseSearchResultDataTypeDef(BaseModel): + contentType: str + contents: QuickResponseContentsTypeDef + createdTime: datetime + isActive: bool + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + name: str + quickResponseArn: str + quickResponseId: str + status: QuickResponseStatusType + attributesInterpolated: Optional[List[str]] = None + attributesNotInterpolated: Optional[List[str]] = None + channels: Optional[List[str]] = None + description: Optional[str] = None + groupingConfiguration: Optional[GroupingConfigurationTypeDef] = None + language: Optional[str] = None + lastModifiedBy: Optional[str] = None + shortcutKey: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class SearchQuickResponsesRequestRequestTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: QuickResponseSearchExpressionTypeDef + attributes: Optional[Mapping[str, str]] = None + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class SearchQuickResponsesRequestSearchQuickResponsesPaginateTypeDef(BaseModel): + knowledgeBaseId: str + searchExpression: QuickResponseSearchExpressionTypeDef + attributes: Optional[Mapping[str, str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class CreateSessionResponseTypeDef(BaseModel): + session: SessionDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSessionResponseTypeDef(BaseModel): + session: SessionDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListKnowledgeBasesResponsePaginatorTypeDef(BaseModel): + knowledgeBaseSummaries: List[KnowledgeBaseSummaryPaginatorTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetKnowledgeBaseResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateKnowledgeBaseTemplateUriResponseTypeDef(BaseModel): + knowledgeBase: KnowledgeBaseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListKnowledgeBasesResponseTypeDef(BaseModel): + knowledgeBaseSummaries: List[KnowledgeBaseSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAssistantAssociationResponseTypeDef(BaseModel): + assistantAssociation: AssistantAssociationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetAssistantAssociationResponseTypeDef(BaseModel): + assistantAssociation: AssistantAssociationDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListAssistantAssociationsResponseTypeDef(BaseModel): + assistantAssociationSummaries: List[AssistantAssociationSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ImportJobDataTypeDef(BaseModel): + createdTime: datetime + importJobId: str + importJobType: Literal["QUICK_RESPONSES"] + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + status: ImportJobStatusType + uploadId: str + url: str + urlExpiry: datetime + externalSourceConfiguration: Optional[ExternalSourceConfigurationTypeDef] = None + failedRecordReport: Optional[str] = None + metadata: Optional[Dict[str, str]] = None + +class ImportJobSummaryTypeDef(BaseModel): + createdTime: datetime + importJobId: str + importJobType: Literal["QUICK_RESPONSES"] + knowledgeBaseArn: str + knowledgeBaseId: str + lastModifiedTime: datetime + status: ImportJobStatusType + uploadId: str + externalSourceConfiguration: Optional[ExternalSourceConfigurationTypeDef] = None + metadata: Optional[Dict[str, str]] = None + +class StartImportJobRequestRequestTypeDef(BaseModel): + importJobType: Literal["QUICK_RESPONSES"] + knowledgeBaseId: str + uploadId: str + clientToken: Optional[str] = None + externalSourceConfiguration: Optional[ExternalSourceConfigurationTypeDef] = None + metadata: Optional[Mapping[str, str]] = None + +class RecommendationDataTypeDef(BaseModel): + document: DocumentTypeDef + recommendationId: str + relevanceLevel: Optional[RelevanceLevelType] = None + relevanceScore: Optional[float] = None + type: Optional[Literal["KNOWLEDGE_CONTENT"]] = None + +class ResultDataTypeDef(BaseModel): + document: DocumentTypeDef + resultId: str + relevanceScore: Optional[float] = None + +class CreateQuickResponseResponseTypeDef(BaseModel): + quickResponse: QuickResponseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetQuickResponseResponseTypeDef(BaseModel): + quickResponse: QuickResponseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateQuickResponseResponseTypeDef(BaseModel): + quickResponse: QuickResponseDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchQuickResponsesResponsePaginatorTypeDef(BaseModel): + nextToken: str + results: List[QuickResponseSearchResultDataPaginatorTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class SearchQuickResponsesResponseTypeDef(BaseModel): + nextToken: str + results: List[QuickResponseSearchResultDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetImportJobResponseTypeDef(BaseModel): + importJob: ImportJobDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class StartImportJobResponseTypeDef(BaseModel): + importJob: ImportJobDataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListImportJobsResponseTypeDef(BaseModel): + importJobSummaries: List[ImportJobSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetRecommendationsResponseTypeDef(BaseModel): + recommendations: List[RecommendationDataTypeDef] + triggers: List[RecommendationTriggerTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class QueryAssistantResponseTypeDef(BaseModel): + nextToken: str + results: List[ResultDataTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/wisdom_constants.py b/aws_resource_validator/pydantic_models/wisdom_constants.py new file mode 100644 index 00000000..4e5a88ba --- /dev/null +++ b/aws_resource_validator/pydantic_models/wisdom_constants.py @@ -0,0 +1,454 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AssistantStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS",] +AssistantTypeType = Literal["AGENT"] +AssociationTypeType = Literal["KNOWLEDGE_BASE"] +ContentStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_FAILED",] +ExternalSourceType = Literal["AMAZON_CONNECT"] +FilterFieldType = Literal["NAME"] +FilterOperatorType = Literal["EQUALS"] +ImportJobStatusType = Literal["COMPLETE", "DELETED", "DELETE_FAILED", "DELETE_IN_PROGRESS", "FAILED", "START_IN_PROGRESS"] +ImportJobTypeType = Literal["QUICK_RESPONSES"] +KnowledgeBaseStatusType = Literal["ACTIVE", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS",] +KnowledgeBaseTypeType = Literal["CUSTOM", "EXTERNAL", "QUICK_RESPONSES"] +ListAssistantAssociationsPaginatorName = Literal["list_assistant_associations"] +ListAssistantsPaginatorName = Literal["list_assistants"] +ListContentsPaginatorName = Literal["list_contents"] +ListImportJobsPaginatorName = Literal["list_import_jobs"] +ListKnowledgeBasesPaginatorName = Literal["list_knowledge_bases"] +ListQuickResponsesPaginatorName = Literal["list_quick_responses"] +OrderType = Literal["ASC", "DESC"] +PriorityType = Literal["HIGH", "LOW", "MEDIUM"] +QueryAssistantPaginatorName = Literal["query_assistant"] +QuickResponseFilterOperatorType = Literal["EQUALS", "PREFIX"] +QuickResponseQueryOperatorType = Literal["CONTAINS", "CONTAINS_AND_PREFIX"] +QuickResponseStatusType = Literal["CREATED", + "CREATE_FAILED", + "CREATE_IN_PROGRESS", + "DELETED", + "DELETE_FAILED", + "DELETE_IN_PROGRESS", + "UPDATE_FAILED", + "UPDATE_IN_PROGRESS",] +RecommendationSourceTypeType = Literal["ISSUE_DETECTION", "OTHER", "RULE_EVALUATION"] +RecommendationTriggerTypeType = Literal["QUERY"] +RecommendationTypeType = Literal["KNOWLEDGE_CONTENT"] +RelevanceLevelType = Literal["HIGH", "LOW", "MEDIUM"] +SearchContentPaginatorName = Literal["search_content"] +SearchQuickResponsesPaginatorName = Literal["search_quick_responses"] +SearchSessionsPaginatorName = Literal["search_sessions"] +ConnectWisdomServiceServiceName = Literal["wisdom"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_assistant_associations", + "list_assistants", + "list_contents", + "list_import_jobs", + "list_knowledge_bases", + "list_quick_responses", + "query_assistant", + "search_content", + "search_quick_responses", + "search_sessions",] +RegionName = Literal["ap-northeast-1", "ap-southeast-2", "eu-central-1", "eu-west-2", "us-east-1", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/workdocs_classes.py b/aws_resource_validator/pydantic_models/workdocs_classes.py new file mode 100644 index 00000000..d8143bf8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/workdocs_classes.py @@ -0,0 +1,698 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.workdocs_constants import * + +class AbortDocumentVersionUploadRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + AuthenticationToken: Optional[str] = None + +class ActivateUserRequestRequestTypeDef(BaseModel): + UserId: str + AuthenticationToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class UserMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Username: Optional[str] = None + GivenName: Optional[str] = None + Surname: Optional[str] = None + EmailAddress: Optional[str] = None + +class NotificationOptionsTypeDef(BaseModel): + SendEmail: Optional[bool] = None + EmailMessage: Optional[str] = None + +class SharePrincipalTypeDef(BaseModel): + Id: str + Type: PrincipalTypeType + Role: RoleTypeType + +class ShareResultTypeDef(BaseModel): + PrincipalId: Optional[str] = None + InviteePrincipalId: Optional[str] = None + Role: Optional[RoleTypeType] = None + Status: Optional[ShareStatusTypeType] = None + ShareId: Optional[str] = None + StatusMessage: Optional[str] = None + +class CreateCommentRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + Text: str + AuthenticationToken: Optional[str] = None + ParentId: Optional[str] = None + ThreadId: Optional[str] = None + Visibility: Optional[CommentVisibilityTypeType] = None + NotifyCollaborators: Optional[bool] = None + +class CreateCustomMetadataRequestRequestTypeDef(BaseModel): + ResourceId: str + CustomMetadata: Mapping[str, str] + AuthenticationToken: Optional[str] = None + VersionId: Optional[str] = None + +class CreateFolderRequestRequestTypeDef(BaseModel): + ParentFolderId: str + AuthenticationToken: Optional[str] = None + Name: Optional[str] = None + +class FolderMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + CreatorId: Optional[str] = None + ParentFolderId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + ModifiedTimestamp: Optional[datetime] = None + ResourceState: Optional[ResourceStateTypeType] = None + Signature: Optional[str] = None + Labels: Optional[List[str]] = None + Size: Optional[int] = None + LatestVersionSize: Optional[int] = None + +class CreateLabelsRequestRequestTypeDef(BaseModel): + ResourceId: str + Labels: Sequence[str] + AuthenticationToken: Optional[str] = None + +class CreateNotificationSubscriptionRequestRequestTypeDef(BaseModel): + OrganizationId: str + Endpoint: str + Protocol: SubscriptionProtocolTypeType + SubscriptionType: Literal["ALL"] + +class SubscriptionTypeDef(BaseModel): + SubscriptionId: Optional[str] = None + EndPoint: Optional[str] = None + Protocol: Optional[SubscriptionProtocolTypeType] = None + +class StorageRuleTypeTypeDef(BaseModel): + StorageAllocatedInBytes: Optional[int] = None + StorageType: Optional[StorageTypeType] = None + +class DeactivateUserRequestRequestTypeDef(BaseModel): + UserId: str + AuthenticationToken: Optional[str] = None + +class DeleteCommentRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + CommentId: str + AuthenticationToken: Optional[str] = None + +class DeleteCustomMetadataRequestRequestTypeDef(BaseModel): + ResourceId: str + AuthenticationToken: Optional[str] = None + VersionId: Optional[str] = None + Keys: Optional[Sequence[str]] = None + DeleteAll: Optional[bool] = None + +class DeleteDocumentRequestRequestTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + +class DeleteDocumentVersionRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + DeletePriorVersions: bool + AuthenticationToken: Optional[str] = None + +class DeleteFolderContentsRequestRequestTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + +class DeleteFolderRequestRequestTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + +class DeleteLabelsRequestRequestTypeDef(BaseModel): + ResourceId: str + AuthenticationToken: Optional[str] = None + Labels: Optional[Sequence[str]] = None + DeleteAll: Optional[bool] = None + +class DeleteNotificationSubscriptionRequestRequestTypeDef(BaseModel): + SubscriptionId: str + OrganizationId: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + UserId: str + AuthenticationToken: Optional[str] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeCommentsRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + AuthenticationToken: Optional[str] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class DescribeDocumentVersionsRequestRequestTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + Include: Optional[str] = None + Fields: Optional[str] = None + +class DocumentVersionMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + ContentType: Optional[str] = None + Size: Optional[int] = None + Signature: Optional[str] = None + Status: Optional[DocumentStatusTypeType] = None + CreatedTimestamp: Optional[datetime] = None + ModifiedTimestamp: Optional[datetime] = None + ContentCreatedTimestamp: Optional[datetime] = None + ContentModifiedTimestamp: Optional[datetime] = None + CreatorId: Optional[str] = None + Thumbnail: Optional[Dict[DocumentThumbnailTypeType, str]] = None + Source: Optional[Dict[DocumentSourceTypeType, str]] = None + +class DescribeFolderContentsRequestRequestTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + Sort: Optional[ResourceSortTypeType] = None + Order: Optional[OrderTypeType] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + Type: Optional[FolderContentTypeType] = None + Include: Optional[str] = None + +class DescribeGroupsRequestRequestTypeDef(BaseModel): + SearchQuery: str + AuthenticationToken: Optional[str] = None + OrganizationId: Optional[str] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + +class GroupMetadataTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + +class DescribeNotificationSubscriptionsRequestRequestTypeDef(BaseModel): + OrganizationId: str + Marker: Optional[str] = None + Limit: Optional[int] = None + +class DescribeResourcePermissionsRequestRequestTypeDef(BaseModel): + ResourceId: str + AuthenticationToken: Optional[str] = None + PrincipalId: Optional[str] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class DescribeRootFoldersRequestRequestTypeDef(BaseModel): + AuthenticationToken: str + Limit: Optional[int] = None + Marker: Optional[str] = None + +class DescribeUsersRequestRequestTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + OrganizationId: Optional[str] = None + UserIds: Optional[str] = None + Query: Optional[str] = None + Include: Optional[UserFilterTypeType] = None + Order: Optional[OrderTypeType] = None + Sort: Optional[UserSortTypeType] = None + Marker: Optional[str] = None + Limit: Optional[int] = None + Fields: Optional[str] = None + +class LongRangeTypeTypeDef(BaseModel): + StartValue: Optional[int] = None + EndValue: Optional[int] = None + +class SearchPrincipalTypeTypeDef(BaseModel): + Id: str + Roles: Optional[Sequence[PrincipalRoleTypeType]] = None + +class GetCurrentUserRequestRequestTypeDef(BaseModel): + AuthenticationToken: str + +class GetDocumentPathRequestRequestTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + Limit: Optional[int] = None + Fields: Optional[str] = None + Marker: Optional[str] = None + +class GetDocumentRequestRequestTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + IncludeCustomMetadata: Optional[bool] = None + +class GetDocumentVersionRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + AuthenticationToken: Optional[str] = None + Fields: Optional[str] = None + IncludeCustomMetadata: Optional[bool] = None + +class GetFolderPathRequestRequestTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + Limit: Optional[int] = None + Fields: Optional[str] = None + Marker: Optional[str] = None + +class GetFolderRequestRequestTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + IncludeCustomMetadata: Optional[bool] = None + +class GetResourcesRequestRequestTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + UserId: Optional[str] = None + CollectionType: Optional[Literal["SHARED_WITH_ME"]] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class UploadMetadataTypeDef(BaseModel): + UploadUrl: Optional[str] = None + SignedHeaders: Optional[Dict[str, str]] = None + +class PermissionInfoTypeDef(BaseModel): + Role: Optional[RoleTypeType] = None + Type: Optional[RolePermissionTypeType] = None + +class RemoveAllResourcePermissionsRequestRequestTypeDef(BaseModel): + ResourceId: str + AuthenticationToken: Optional[str] = None + +class RemoveResourcePermissionRequestRequestTypeDef(BaseModel): + ResourceId: str + PrincipalId: str + AuthenticationToken: Optional[str] = None + PrincipalType: Optional[PrincipalTypeType] = None + +class ResourcePathComponentTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + +class RestoreDocumentVersionsRequestRequestTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + +class SearchSortResultTypeDef(BaseModel): + Field: Optional[OrderByFieldTypeType] = None + Order: Optional[SortOrderType] = None + +class UpdateDocumentRequestRequestTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + Name: Optional[str] = None + ParentFolderId: Optional[str] = None + ResourceState: Optional[ResourceStateTypeType] = None + +class UpdateDocumentVersionRequestRequestTypeDef(BaseModel): + DocumentId: str + VersionId: str + AuthenticationToken: Optional[str] = None + VersionStatus: Optional[Literal["ACTIVE"]] = None + +class UpdateFolderRequestRequestTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + Name: Optional[str] = None + ParentFolderId: Optional[str] = None + ResourceState: Optional[ResourceStateTypeType] = None + +class EmptyResponseMetadataTypeDef(BaseModel): + ResponseMetadata: ResponseMetadataTypeDef + +class ResourceMetadataTypeDef(BaseModel): + Type: Optional[ResourceTypeType] = None + Name: Optional[str] = None + OriginalName: Optional[str] = None + Id: Optional[str] = None + VersionId: Optional[str] = None + Owner: Optional[UserMetadataTypeDef] = None + ParentId: Optional[str] = None + +class AddResourcePermissionsRequestRequestTypeDef(BaseModel): + ResourceId: str + Principals: Sequence[SharePrincipalTypeDef] + AuthenticationToken: Optional[str] = None + NotificationOptions: Optional[NotificationOptionsTypeDef] = None + +class AddResourcePermissionsResponseTypeDef(BaseModel): + ShareResults: List[ShareResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFolderResponseTypeDef(BaseModel): + Metadata: FolderMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeRootFoldersResponseTypeDef(BaseModel): + Folders: List[FolderMetadataTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetFolderResponseTypeDef(BaseModel): + Metadata: FolderMetadataTypeDef + CustomMetadata: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNotificationSubscriptionResponseTypeDef(BaseModel): + Subscription: SubscriptionTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeNotificationSubscriptionsResponseTypeDef(BaseModel): + Subscriptions: List[SubscriptionTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserRequestRequestTypeDef(BaseModel): + Username: str + GivenName: str + Surname: str + Password: str + OrganizationId: Optional[str] = None + EmailAddress: Optional[str] = None + TimeZoneId: Optional[str] = None + StorageRule: Optional[StorageRuleTypeTypeDef] = None + AuthenticationToken: Optional[str] = None + +class UpdateUserRequestRequestTypeDef(BaseModel): + UserId: str + AuthenticationToken: Optional[str] = None + GivenName: Optional[str] = None + Surname: Optional[str] = None + Type: Optional[UserTypeType] = None + StorageRule: Optional[StorageRuleTypeTypeDef] = None + TimeZoneId: Optional[str] = None + Locale: Optional[LocaleTypeType] = None + GrantPoweruserPrivileges: Optional[BooleanEnumTypeType] = None + +class UserStorageMetadataTypeDef(BaseModel): + StorageUtilizedInBytes: Optional[int] = None + StorageRule: Optional[StorageRuleTypeTypeDef] = None + +class DateRangeTypeTypeDef(BaseModel): + StartValue: Optional[TimestampTypeDef] = None + EndValue: Optional[TimestampTypeDef] = None + +class DescribeActivitiesRequestRequestTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + OrganizationId: Optional[str] = None + ActivityTypes: Optional[str] = None + ResourceId: Optional[str] = None + UserId: Optional[str] = None + IncludeIndirectActivities: Optional[bool] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class InitiateDocumentVersionUploadRequestRequestTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + Id: Optional[str] = None + Name: Optional[str] = None + ContentCreatedTimestamp: Optional[TimestampTypeDef] = None + ContentModifiedTimestamp: Optional[TimestampTypeDef] = None + ContentType: Optional[str] = None + DocumentSizeInBytes: Optional[int] = None + ParentFolderId: Optional[str] = None + +class DescribeActivitiesRequestDescribeActivitiesPaginateTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + StartTime: Optional[TimestampTypeDef] = None + EndTime: Optional[TimestampTypeDef] = None + OrganizationId: Optional[str] = None + ActivityTypes: Optional[str] = None + ResourceId: Optional[str] = None + UserId: Optional[str] = None + IncludeIndirectActivities: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeCommentsRequestDescribeCommentsPaginateTypeDef(BaseModel): + DocumentId: str + VersionId: str + AuthenticationToken: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDocumentVersionsRequestDescribeDocumentVersionsPaginateTypeDef(BaseModel): + DocumentId: str + AuthenticationToken: Optional[str] = None + Include: Optional[str] = None + Fields: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeFolderContentsRequestDescribeFolderContentsPaginateTypeDef(BaseModel): + FolderId: str + AuthenticationToken: Optional[str] = None + Sort: Optional[ResourceSortTypeType] = None + Order: Optional[OrderTypeType] = None + Type: Optional[FolderContentTypeType] = None + Include: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeGroupsRequestDescribeGroupsPaginateTypeDef(BaseModel): + SearchQuery: str + AuthenticationToken: Optional[str] = None + OrganizationId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeResourcePermissionsRequestDescribeResourcePermissionsPaginateTypeDef(BaseModel): + ResourceId: str + AuthenticationToken: Optional[str] = None + PrincipalId: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeRootFoldersRequestDescribeRootFoldersPaginateTypeDef(BaseModel): + AuthenticationToken: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeUsersRequestDescribeUsersPaginateTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + OrganizationId: Optional[str] = None + UserIds: Optional[str] = None + Query: Optional[str] = None + Include: Optional[UserFilterTypeType] = None + Order: Optional[OrderTypeType] = None + Sort: Optional[UserSortTypeType] = None + Fields: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeDocumentVersionsResponseTypeDef(BaseModel): + DocumentVersions: List[DocumentVersionMetadataTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DocumentMetadataTypeDef(BaseModel): + Id: Optional[str] = None + CreatorId: Optional[str] = None + ParentFolderId: Optional[str] = None + CreatedTimestamp: Optional[datetime] = None + ModifiedTimestamp: Optional[datetime] = None + LatestVersionMetadata: Optional[DocumentVersionMetadataTypeDef] = None + ResourceState: Optional[ResourceStateTypeType] = None + Labels: Optional[List[str]] = None + +class GetDocumentVersionResponseTypeDef(BaseModel): + Metadata: DocumentVersionMetadataTypeDef + CustomMetadata: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGroupsResponseTypeDef(BaseModel): + Groups: List[GroupMetadataTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class ParticipantsTypeDef(BaseModel): + Users: Optional[List[UserMetadataTypeDef]] = None + Groups: Optional[List[GroupMetadataTypeDef]] = None + +class PrincipalTypeDef(BaseModel): + Id: Optional[str] = None + Type: Optional[PrincipalTypeType] = None + Roles: Optional[List[PermissionInfoTypeDef]] = None + +class ResourcePathTypeDef(BaseModel): + Components: Optional[List[ResourcePathComponentTypeDef]] = None + +class UserTypeDef(BaseModel): + Id: Optional[str] = None + Username: Optional[str] = None + EmailAddress: Optional[str] = None + GivenName: Optional[str] = None + Surname: Optional[str] = None + OrganizationId: Optional[str] = None + RootFolderId: Optional[str] = None + RecycleBinFolderId: Optional[str] = None + Status: Optional[UserStatusTypeType] = None + Type: Optional[UserTypeType] = None + CreatedTimestamp: Optional[datetime] = None + ModifiedTimestamp: Optional[datetime] = None + TimeZoneId: Optional[str] = None + Locale: Optional[LocaleTypeType] = None + Storage: Optional[UserStorageMetadataTypeDef] = None + +class FiltersTypeDef(BaseModel): + TextLocales: Optional[Sequence[LanguageCodeTypeType]] = None + ContentCategories: Optional[Sequence[ContentCategoryTypeType]] = None + ResourceTypes: Optional[Sequence[SearchResourceTypeType]] = None + Labels: Optional[Sequence[str]] = None + Principals: Optional[Sequence[SearchPrincipalTypeTypeDef]] = None + AncestorIds: Optional[Sequence[str]] = None + SearchCollectionTypes: Optional[Sequence[SearchCollectionTypeType]] = None + SizeRange: Optional[LongRangeTypeTypeDef] = None + CreatedRange: Optional[DateRangeTypeTypeDef] = None + ModifiedRange: Optional[DateRangeTypeTypeDef] = None + +class DescribeFolderContentsResponseTypeDef(BaseModel): + Folders: List[FolderMetadataTypeDef] + Documents: List[DocumentMetadataTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDocumentResponseTypeDef(BaseModel): + Metadata: DocumentMetadataTypeDef + CustomMetadata: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetResourcesResponseTypeDef(BaseModel): + Folders: List[FolderMetadataTypeDef] + Documents: List[DocumentMetadataTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class InitiateDocumentVersionUploadResponseTypeDef(BaseModel): + Metadata: DocumentMetadataTypeDef + UploadMetadata: UploadMetadataTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeResourcePermissionsResponseTypeDef(BaseModel): + Principals: List[PrincipalTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetDocumentPathResponseTypeDef(BaseModel): + Path: ResourcePathTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetFolderPathResponseTypeDef(BaseModel): + Path: ResourcePathTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ActivateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CommentMetadataTypeDef(BaseModel): + CommentId: Optional[str] = None + Contributor: Optional[UserTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + CommentStatus: Optional[CommentStatusTypeType] = None + RecipientId: Optional[str] = None + ContributorId: Optional[str] = None + +class CommentTypeDef(BaseModel): + CommentId: str + ParentId: Optional[str] = None + ThreadId: Optional[str] = None + Text: Optional[str] = None + Contributor: Optional[UserTypeDef] = None + CreatedTimestamp: Optional[datetime] = None + Status: Optional[CommentStatusTypeType] = None + Visibility: Optional[CommentVisibilityTypeType] = None + RecipientId: Optional[str] = None + +class CreateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + TotalNumberOfUsers: int + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetCurrentUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserResponseTypeDef(BaseModel): + User: UserTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class SearchResourcesRequestRequestTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + QueryText: Optional[str] = None + QueryScopes: Optional[Sequence[SearchQueryScopeTypeType]] = None + OrganizationId: Optional[str] = None + AdditionalResponseFields: Optional[Sequence[Literal["WEBURL"]]] = None + Filters: Optional[FiltersTypeDef] = None + OrderBy: Optional[Sequence[SearchSortResultTypeDef]] = None + Limit: Optional[int] = None + Marker: Optional[str] = None + +class SearchResourcesRequestSearchResourcesPaginateTypeDef(BaseModel): + AuthenticationToken: Optional[str] = None + QueryText: Optional[str] = None + QueryScopes: Optional[Sequence[SearchQueryScopeTypeType]] = None + OrganizationId: Optional[str] = None + AdditionalResponseFields: Optional[Sequence[Literal["WEBURL"]]] = None + Filters: Optional[FiltersTypeDef] = None + OrderBy: Optional[Sequence[SearchSortResultTypeDef]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ActivityTypeDef(BaseModel): + Type: Optional[ActivityTypeType] = None + TimeStamp: Optional[datetime] = None + IsIndirectActivity: Optional[bool] = None + OrganizationId: Optional[str] = None + Initiator: Optional[UserMetadataTypeDef] = None + Participants: Optional[ParticipantsTypeDef] = None + ResourceMetadata: Optional[ResourceMetadataTypeDef] = None + OriginalParent: Optional[ResourceMetadataTypeDef] = None + CommentMetadata: Optional[CommentMetadataTypeDef] = None + +class ResponseItemTypeDef(BaseModel): + ResourceType: Optional[ResponseItemTypeType] = None + WebUrl: Optional[str] = None + DocumentMetadata: Optional[DocumentMetadataTypeDef] = None + FolderMetadata: Optional[FolderMetadataTypeDef] = None + CommentMetadata: Optional[CommentMetadataTypeDef] = None + DocumentVersionMetadata: Optional[DocumentVersionMetadataTypeDef] = None + +class CreateCommentResponseTypeDef(BaseModel): + Comment: CommentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCommentsResponseTypeDef(BaseModel): + Comments: List[CommentTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeActivitiesResponseTypeDef(BaseModel): + UserActivities: List[ActivityTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + +class SearchResourcesResponseTypeDef(BaseModel): + Items: List[ResponseItemTypeDef] + Marker: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/workdocs_constants.py b/aws_resource_validator/pydantic_models/workdocs_constants.py new file mode 100644 index 00000000..a6a9807e --- /dev/null +++ b/aws_resource_validator/pydantic_models/workdocs_constants.py @@ -0,0 +1,516 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ActivityTypeType = Literal["DOCUMENT_ANNOTATION_ADDED", + "DOCUMENT_ANNOTATION_DELETED", + "DOCUMENT_CHECKED_IN", + "DOCUMENT_CHECKED_OUT", + "DOCUMENT_COMMENT_ADDED", + "DOCUMENT_COMMENT_DELETED", + "DOCUMENT_MOVED", + "DOCUMENT_RECYCLED", + "DOCUMENT_RENAMED", + "DOCUMENT_RESTORED", + "DOCUMENT_REVERTED", + "DOCUMENT_SHAREABLE_LINK_CREATED", + "DOCUMENT_SHAREABLE_LINK_PERMISSION_CHANGED", + "DOCUMENT_SHAREABLE_LINK_REMOVED", + "DOCUMENT_SHARED", + "DOCUMENT_SHARE_PERMISSION_CHANGED", + "DOCUMENT_UNSHARED", + "DOCUMENT_VERSION_DELETED", + "DOCUMENT_VERSION_DOWNLOADED", + "DOCUMENT_VERSION_UPLOADED", + "DOCUMENT_VERSION_VIEWED", + "FOLDER_CREATED", + "FOLDER_DELETED", + "FOLDER_MOVED", + "FOLDER_RECYCLED", + "FOLDER_RENAMED", + "FOLDER_RESTORED", + "FOLDER_SHAREABLE_LINK_CREATED", + "FOLDER_SHAREABLE_LINK_PERMISSION_CHANGED", + "FOLDER_SHAREABLE_LINK_REMOVED", + "FOLDER_SHARED", + "FOLDER_SHARE_PERMISSION_CHANGED", + "FOLDER_UNSHARED",] +AdditionalResponseFieldTypeType = Literal["WEBURL"] +BooleanEnumTypeType = Literal["FALSE", "TRUE"] +CommentStatusTypeType = Literal["DELETED", "DRAFT", "PUBLISHED"] +CommentVisibilityTypeType = Literal["PRIVATE", "PUBLIC"] +ContentCategoryTypeType = Literal["AUDIO", + "DOCUMENT", + "IMAGE", + "OTHER", + "PDF", + "PRESENTATION", + "SOURCE_CODE", + "SPREADSHEET", + "VIDEO",] +DescribeActivitiesPaginatorName = Literal["describe_activities"] +DescribeCommentsPaginatorName = Literal["describe_comments"] +DescribeDocumentVersionsPaginatorName = Literal["describe_document_versions"] +DescribeFolderContentsPaginatorName = Literal["describe_folder_contents"] +DescribeGroupsPaginatorName = Literal["describe_groups"] +DescribeNotificationSubscriptionsPaginatorName = Literal["describe_notification_subscriptions"] +DescribeResourcePermissionsPaginatorName = Literal["describe_resource_permissions"] +DescribeRootFoldersPaginatorName = Literal["describe_root_folders"] +DescribeUsersPaginatorName = Literal["describe_users"] +DocumentSourceTypeType = Literal["ORIGINAL", "WITH_COMMENTS"] +DocumentStatusTypeType = Literal["ACTIVE", "INITIALIZED"] +DocumentThumbnailTypeType = Literal["LARGE", "SMALL", "SMALL_HQ"] +DocumentVersionStatusType = Literal["ACTIVE"] +FolderContentTypeType = Literal["ALL", "DOCUMENT", "FOLDER"] +LanguageCodeTypeType = Literal["AR", + "BG", + "BN", + "CS", + "DA", + "DE", + "DEFAULT", + "EL", + "EN", + "ES", + "FA", + "FI", + "FR", + "HI", + "HU", + "ID", + "IT", + "JA", + "KO", + "LT", + "LV", + "NL", + "NO", + "PT", + "RO", + "RU", + "SV", + "SW", + "TH", + "TR", + "ZH",] +LocaleTypeType = Literal["de", "default", "en", "es", "fr", "ja", "ko", "pt_BR", "ru", "zh_CN", "zh_TW"] +OrderByFieldTypeType = Literal["CREATED_TIMESTAMP", "MODIFIED_TIMESTAMP", "NAME", "RELEVANCE", "SIZE"] +OrderTypeType = Literal["ASCENDING", "DESCENDING"] +PrincipalRoleTypeType = Literal["CONTRIBUTOR", "COOWNER", "OWNER", "VIEWER"] +PrincipalTypeType = Literal["ANONYMOUS", "GROUP", "INVITE", "ORGANIZATION", "USER"] +ResourceCollectionTypeType = Literal["SHARED_WITH_ME"] +ResourceSortTypeType = Literal["DATE", "NAME"] +ResourceStateTypeType = Literal["ACTIVE", "RECYCLED", "RECYCLING", "RESTORING"] +ResourceTypeType = Literal["DOCUMENT", "FOLDER"] +ResponseItemTypeType = Literal["COMMENT", "DOCUMENT", "DOCUMENT_VERSION", "FOLDER"] +RolePermissionTypeType = Literal["DIRECT", "INHERITED"] +RoleTypeType = Literal["CONTRIBUTOR", "COOWNER", "OWNER", "VIEWER"] +SearchCollectionTypeType = Literal["OWNED", "SHARED_WITH_ME"] +SearchQueryScopeTypeType = Literal["CONTENT", "NAME"] +SearchResourceTypeType = Literal["COMMENT", "DOCUMENT", "DOCUMENT_VERSION", "FOLDER"] +SearchResourcesPaginatorName = Literal["search_resources"] +ShareStatusTypeType = Literal["FAILURE", "SUCCESS"] +SortOrderType = Literal["ASC", "DESC"] +StorageTypeType = Literal["QUOTA", "UNLIMITED"] +SubscriptionProtocolTypeType = Literal["HTTPS", "SQS"] +SubscriptionTypeType = Literal["ALL"] +UserFilterTypeType = Literal["ACTIVE_PENDING", "ALL"] +UserSortTypeType = Literal["FULL_NAME", "STORAGE_LIMIT", "STORAGE_USED", "USER_NAME", "USER_STATUS"] +UserStatusTypeType = Literal["ACTIVE", "INACTIVE", "PENDING"] +UserTypeType = Literal["ADMIN", "MINIMALUSER", "POWERUSER", "USER", "WORKSPACESUSER"] +WorkDocsServiceName = Literal["workdocs"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_activities", + "describe_comments", + "describe_document_versions", + "describe_folder_contents", + "describe_groups", + "describe_notification_subscriptions", + "describe_resource_permissions", + "describe_root_folders", + "describe_users", + "search_resources",] +RegionName = Literal["ap-northeast-1", "ap-southeast-1", "ap-southeast-2", "eu-west-1", "us-east-1", "us-west-2"] +TimestampTypeDef = Union[datetime, str] diff --git a/aws_resource_validator/pydantic_models/worklink_classes.py b/aws_resource_validator/pydantic_models/worklink_classes.py new file mode 100644 index 00000000..595bb9ec --- /dev/null +++ b/aws_resource_validator/pydantic_models/worklink_classes.py @@ -0,0 +1,289 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.worklink_constants import * + +class AssociateDomainRequestRequestTypeDef(BaseModel): + FleetArn: str + DomainName: str + AcmCertificateArn: str + DisplayName: Optional[str] = None + +class AssociateWebsiteAuthorizationProviderRequestRequestTypeDef(BaseModel): + FleetArn: str + AuthorizationProviderType: Literal["SAML"] + DomainName: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class AssociateWebsiteCertificateAuthorityRequestRequestTypeDef(BaseModel): + FleetArn: str + Certificate: str + DisplayName: Optional[str] = None + +class CreateFleetRequestRequestTypeDef(BaseModel): + FleetName: str + DisplayName: Optional[str] = None + OptimizeForEndUserLocation: Optional[bool] = None + Tags: Optional[Mapping[str, str]] = None + +class DeleteFleetRequestRequestTypeDef(BaseModel): + FleetArn: str + +class DescribeAuditStreamConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + +class DescribeCompanyNetworkConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + +class DescribeDevicePolicyConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + +class DescribeDeviceRequestRequestTypeDef(BaseModel): + FleetArn: str + DeviceId: str + +class DescribeDomainRequestRequestTypeDef(BaseModel): + FleetArn: str + DomainName: str + +class DescribeFleetMetadataRequestRequestTypeDef(BaseModel): + FleetArn: str + +class DescribeIdentityProviderConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + +class DescribeWebsiteCertificateAuthorityRequestRequestTypeDef(BaseModel): + FleetArn: str + WebsiteCaId: str + +class DeviceSummaryTypeDef(BaseModel): + DeviceId: Optional[str] = None + DeviceStatus: Optional[DeviceStatusType] = None + +class DisassociateDomainRequestRequestTypeDef(BaseModel): + FleetArn: str + DomainName: str + +class DisassociateWebsiteAuthorizationProviderRequestRequestTypeDef(BaseModel): + FleetArn: str + AuthorizationProviderId: str + +class DisassociateWebsiteCertificateAuthorityRequestRequestTypeDef(BaseModel): + FleetArn: str + WebsiteCaId: str + +class DomainSummaryTypeDef(BaseModel): + DomainName: str + CreatedTime: datetime + DomainStatus: DomainStatusType + DisplayName: Optional[str] = None + +class FleetSummaryTypeDef(BaseModel): + FleetArn: Optional[str] = None + CreatedTime: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + FleetName: Optional[str] = None + DisplayName: Optional[str] = None + CompanyCode: Optional[str] = None + FleetStatus: Optional[FleetStatusType] = None + Tags: Optional[Dict[str, str]] = None + +class ListDevicesRequestRequestTypeDef(BaseModel): + FleetArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListDomainsRequestRequestTypeDef(BaseModel): + FleetArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListFleetsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + +class ListWebsiteAuthorizationProvidersRequestRequestTypeDef(BaseModel): + FleetArn: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class WebsiteAuthorizationProviderSummaryTypeDef(BaseModel): + AuthorizationProviderType: Literal["SAML"] + AuthorizationProviderId: Optional[str] = None + DomainName: Optional[str] = None + CreatedTime: Optional[datetime] = None + +class ListWebsiteCertificateAuthoritiesRequestRequestTypeDef(BaseModel): + FleetArn: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class WebsiteCaSummaryTypeDef(BaseModel): + WebsiteCaId: Optional[str] = None + CreatedTime: Optional[datetime] = None + DisplayName: Optional[str] = None + +class RestoreDomainAccessRequestRequestTypeDef(BaseModel): + FleetArn: str + DomainName: str + +class RevokeDomainAccessRequestRequestTypeDef(BaseModel): + FleetArn: str + DomainName: str + +class SignOutUserRequestRequestTypeDef(BaseModel): + FleetArn: str + Username: str + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + Tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceArn: str + TagKeys: Sequence[str] + +class UpdateAuditStreamConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + AuditStreamArn: Optional[str] = None + +class UpdateCompanyNetworkConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + VpcId: str + SubnetIds: Sequence[str] + SecurityGroupIds: Sequence[str] + +class UpdateDevicePolicyConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + DeviceCaCertificate: Optional[str] = None + +class UpdateDomainMetadataRequestRequestTypeDef(BaseModel): + FleetArn: str + DomainName: str + DisplayName: Optional[str] = None + +class UpdateFleetMetadataRequestRequestTypeDef(BaseModel): + FleetArn: str + DisplayName: Optional[str] = None + OptimizeForEndUserLocation: Optional[bool] = None + +class UpdateIdentityProviderConfigurationRequestRequestTypeDef(BaseModel): + FleetArn: str + IdentityProviderType: Literal["SAML"] + IdentityProviderSamlMetadata: Optional[str] = None + +class AssociateWebsiteAuthorizationProviderResponseTypeDef(BaseModel): + AuthorizationProviderId: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateWebsiteCertificateAuthorityResponseTypeDef(BaseModel): + WebsiteCaId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateFleetResponseTypeDef(BaseModel): + FleetArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAuditStreamConfigurationResponseTypeDef(BaseModel): + AuditStreamArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeCompanyNetworkConfigurationResponseTypeDef(BaseModel): + VpcId: str + SubnetIds: List[str] + SecurityGroupIds: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDevicePolicyConfigurationResponseTypeDef(BaseModel): + DeviceCaCertificate: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDeviceResponseTypeDef(BaseModel): + Status: DeviceStatusType + Model: str + Manufacturer: str + OperatingSystem: str + OperatingSystemVersion: str + PatchLevel: str + FirstAccessedTime: datetime + LastAccessedTime: datetime + Username: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeDomainResponseTypeDef(BaseModel): + DomainName: str + DisplayName: str + CreatedTime: datetime + DomainStatus: DomainStatusType + AcmCertificateArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeFleetMetadataResponseTypeDef(BaseModel): + CreatedTime: datetime + LastUpdatedTime: datetime + FleetName: str + DisplayName: str + OptimizeForEndUserLocation: bool + CompanyCode: str + FleetStatus: FleetStatusType + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeIdentityProviderConfigurationResponseTypeDef(BaseModel): + IdentityProviderType: Literal["SAML"] + ServiceProviderSamlMetadata: str + IdentityProviderSamlMetadata: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWebsiteCertificateAuthorityResponseTypeDef(BaseModel): + Certificate: str + CreatedTime: datetime + DisplayName: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicesResponseTypeDef(BaseModel): + Devices: List[DeviceSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListDomainsResponseTypeDef(BaseModel): + Domains: List[DomainSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListFleetsResponseTypeDef(BaseModel): + FleetSummaryList: List[FleetSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebsiteAuthorizationProvidersResponseTypeDef(BaseModel): + WebsiteAuthorizationProviders: List[WebsiteAuthorizationProviderSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListWebsiteCertificateAuthoritiesResponseTypeDef(BaseModel): + WebsiteCertificateAuthorities: List[WebsiteCaSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/worklink_constants.py b/aws_resource_validator/pydantic_models/worklink_constants.py new file mode 100644 index 00000000..ac57f793 --- /dev/null +++ b/aws_resource_validator/pydantic_models/worklink_constants.py @@ -0,0 +1,400 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthorizationProviderTypeType = Literal["SAML"] +DeviceStatusType = Literal["ACTIVE", "SIGNED_OUT"] +DomainStatusType = Literal["ACTIVE", + "ASSOCIATING", + "DISASSOCIATED", + "DISASSOCIATING", + "FAILED_TO_ASSOCIATE", + "FAILED_TO_DISASSOCIATE", + "INACTIVE", + "PENDING_VALIDATION",] +FleetStatusType = Literal["ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED_TO_CREATE", "FAILED_TO_DELETE"] +IdentityProviderTypeType = Literal["SAML"] +WorkLinkServiceName = Literal["worklink"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/workmail_classes.py b/aws_resource_validator/pydantic_models/workmail_classes.py new file mode 100644 index 00000000..dba31567 --- /dev/null +++ b/aws_resource_validator/pydantic_models/workmail_classes.py @@ -0,0 +1,1008 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.workmail_constants import * + +class AccessControlRuleTypeDef(BaseModel): + Name: Optional[str] = None + Effect: Optional[AccessControlRuleEffectType] = None + Description: Optional[str] = None + IpRanges: Optional[List[str]] = None + NotIpRanges: Optional[List[str]] = None + Actions: Optional[List[str]] = None + NotActions: Optional[List[str]] = None + UserIds: Optional[List[str]] = None + NotUserIds: Optional[List[str]] = None + DateCreated: Optional[datetime] = None + DateModified: Optional[datetime] = None + ImpersonationRoleIds: Optional[List[str]] = None + NotImpersonationRoleIds: Optional[List[str]] = None + +class AssociateDelegateToResourceRequestRequestTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + EntityId: str + +class AssociateMemberToGroupRequestRequestTypeDef(BaseModel): + OrganizationId: str + GroupId: str + MemberId: str + +class AssumeImpersonationRoleRequestRequestTypeDef(BaseModel): + OrganizationId: str + ImpersonationRoleId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class LambdaAvailabilityProviderTypeDef(BaseModel): + LambdaArn: str + +class RedactedEwsAvailabilityProviderTypeDef(BaseModel): + EwsEndpoint: Optional[str] = None + EwsUsername: Optional[str] = None + +class BookingOptionsTypeDef(BaseModel): + AutoAcceptRequests: Optional[bool] = None + AutoDeclineRecurringRequests: Optional[bool] = None + AutoDeclineConflictingRequests: Optional[bool] = None + +class CancelMailboxExportJobRequestRequestTypeDef(BaseModel): + ClientToken: str + JobId: str + OrganizationId: str + +class CreateAliasRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + Alias: str + +class EwsAvailabilityProviderTypeDef(BaseModel): + EwsEndpoint: str + EwsUsername: str + EwsPassword: str + +class CreateGroupRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + HiddenFromGlobalAddressList: Optional[bool] = None + +class ImpersonationRuleTypeDef(BaseModel): + ImpersonationRuleId: str + Effect: AccessEffectType + Name: Optional[str] = None + Description: Optional[str] = None + TargetUsers: Optional[Sequence[str]] = None + NotTargetUsers: Optional[Sequence[str]] = None + +class CreateMobileDeviceAccessRuleRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + Effect: MobileDeviceAccessRuleEffectType + ClientToken: Optional[str] = None + Description: Optional[str] = None + DeviceTypes: Optional[Sequence[str]] = None + NotDeviceTypes: Optional[Sequence[str]] = None + DeviceModels: Optional[Sequence[str]] = None + NotDeviceModels: Optional[Sequence[str]] = None + DeviceOperatingSystems: Optional[Sequence[str]] = None + NotDeviceOperatingSystems: Optional[Sequence[str]] = None + DeviceUserAgents: Optional[Sequence[str]] = None + NotDeviceUserAgents: Optional[Sequence[str]] = None + +class DomainTypeDef(BaseModel): + DomainName: str + HostedZoneId: Optional[str] = None + +class CreateResourceRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + Type: ResourceTypeType + Description: Optional[str] = None + HiddenFromGlobalAddressList: Optional[bool] = None + +class CreateUserRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + DisplayName: str + Password: Optional[str] = None + Role: Optional[UserRoleType] = None + FirstName: Optional[str] = None + LastName: Optional[str] = None + HiddenFromGlobalAddressList: Optional[bool] = None + +class DelegateTypeDef(BaseModel): + Id: str + Type: MemberTypeType + +class DeleteAccessControlRuleRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + +class DeleteAliasRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + Alias: str + +class DeleteAvailabilityConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + +class DeleteEmailMonitoringConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class DeleteGroupRequestRequestTypeDef(BaseModel): + OrganizationId: str + GroupId: str + +class DeleteImpersonationRoleRequestRequestTypeDef(BaseModel): + OrganizationId: str + ImpersonationRoleId: str + +class DeleteMailboxPermissionsRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + GranteeId: str + +class DeleteMobileDeviceAccessOverrideRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + DeviceId: str + +class DeleteMobileDeviceAccessRuleRequestRequestTypeDef(BaseModel): + OrganizationId: str + MobileDeviceAccessRuleId: str + +class DeleteOrganizationRequestRequestTypeDef(BaseModel): + OrganizationId: str + DeleteDirectory: bool + ClientToken: Optional[str] = None + ForceDelete: Optional[bool] = None + +class DeleteResourceRequestRequestTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + +class DeleteRetentionPolicyRequestRequestTypeDef(BaseModel): + OrganizationId: str + Id: str + +class DeleteUserRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + +class DeregisterFromWorkMailRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + +class DeregisterMailDomainRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + +class DescribeEmailMonitoringConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class DescribeEntityRequestRequestTypeDef(BaseModel): + OrganizationId: str + Email: str + +class DescribeGroupRequestRequestTypeDef(BaseModel): + OrganizationId: str + GroupId: str + +class DescribeInboundDmarcSettingsRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class DescribeMailboxExportJobRequestRequestTypeDef(BaseModel): + JobId: str + OrganizationId: str + +class DescribeOrganizationRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class DescribeResourceRequestRequestTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + +class DescribeUserRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + +class DisassociateDelegateFromResourceRequestRequestTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + EntityId: str + +class DisassociateMemberFromGroupRequestRequestTypeDef(BaseModel): + OrganizationId: str + GroupId: str + MemberId: str + +class DnsRecordTypeDef(BaseModel): + Type: Optional[str] = None + Hostname: Optional[str] = None + Value: Optional[str] = None + +class FolderConfigurationTypeDef(BaseModel): + Name: FolderNameType + Action: RetentionActionType + Period: Optional[int] = None + +class GetAccessControlEffectRequestRequestTypeDef(BaseModel): + OrganizationId: str + IpAddress: str + Action: str + UserId: Optional[str] = None + ImpersonationRoleId: Optional[str] = None + +class GetDefaultRetentionPolicyRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class GetImpersonationRoleEffectRequestRequestTypeDef(BaseModel): + OrganizationId: str + ImpersonationRoleId: str + TargetUser: str + +class ImpersonationMatchedRuleTypeDef(BaseModel): + ImpersonationRuleId: Optional[str] = None + Name: Optional[str] = None + +class GetImpersonationRoleRequestRequestTypeDef(BaseModel): + OrganizationId: str + ImpersonationRoleId: str + +class GetMailDomainRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + +class GetMailboxDetailsRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + +class GetMobileDeviceAccessEffectRequestRequestTypeDef(BaseModel): + OrganizationId: str + DeviceType: Optional[str] = None + DeviceModel: Optional[str] = None + DeviceOperatingSystem: Optional[str] = None + DeviceUserAgent: Optional[str] = None + +class MobileDeviceAccessMatchedRuleTypeDef(BaseModel): + MobileDeviceAccessRuleId: Optional[str] = None + Name: Optional[str] = None + +class GetMobileDeviceAccessOverrideRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + DeviceId: str + +class GroupIdentifierTypeDef(BaseModel): + GroupId: Optional[str] = None + GroupName: Optional[str] = None + +class GroupTypeDef(BaseModel): + Id: Optional[str] = None + Email: Optional[str] = None + Name: Optional[str] = None + State: Optional[EntityStateType] = None + EnabledDate: Optional[datetime] = None + DisabledDate: Optional[datetime] = None + +class ImpersonationRoleTypeDef(BaseModel): + ImpersonationRoleId: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ImpersonationRoleTypeType] = None + DateCreated: Optional[datetime] = None + DateModified: Optional[datetime] = None + +class ListAccessControlRulesRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListAliasesRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAvailabilityConfigurationsRequestRequestTypeDef(BaseModel): + OrganizationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class ListGroupMembersRequestRequestTypeDef(BaseModel): + OrganizationId: str + GroupId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MemberTypeDef(BaseModel): + Id: Optional[str] = None + Name: Optional[str] = None + Type: Optional[MemberTypeType] = None + State: Optional[EntityStateType] = None + EnabledDate: Optional[datetime] = None + DisabledDate: Optional[datetime] = None + +class ListGroupsFiltersTypeDef(BaseModel): + NamePrefix: Optional[str] = None + PrimaryEmailPrefix: Optional[str] = None + State: Optional[EntityStateType] = None + +class ListGroupsForEntityFiltersTypeDef(BaseModel): + GroupNamePrefix: Optional[str] = None + +class ListImpersonationRolesRequestRequestTypeDef(BaseModel): + OrganizationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMailDomainsRequestRequestTypeDef(BaseModel): + OrganizationId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MailDomainSummaryTypeDef(BaseModel): + DomainName: Optional[str] = None + DefaultDomain: Optional[bool] = None + +class ListMailboxExportJobsRequestRequestTypeDef(BaseModel): + OrganizationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MailboxExportJobTypeDef(BaseModel): + JobId: Optional[str] = None + EntityId: Optional[str] = None + Description: Optional[str] = None + S3BucketName: Optional[str] = None + S3Path: Optional[str] = None + EstimatedProgress: Optional[int] = None + State: Optional[MailboxExportJobStateType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + +class ListMailboxPermissionsRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class PermissionTypeDef(BaseModel): + GranteeId: str + GranteeType: MemberTypeType + PermissionValues: List[PermissionTypeType] + +class ListMobileDeviceAccessOverridesRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: Optional[str] = None + DeviceId: Optional[str] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class MobileDeviceAccessOverrideTypeDef(BaseModel): + UserId: Optional[str] = None + DeviceId: Optional[str] = None + Effect: Optional[MobileDeviceAccessRuleEffectType] = None + Description: Optional[str] = None + DateCreated: Optional[datetime] = None + DateModified: Optional[datetime] = None + +class ListMobileDeviceAccessRulesRequestRequestTypeDef(BaseModel): + OrganizationId: str + +class MobileDeviceAccessRuleTypeDef(BaseModel): + MobileDeviceAccessRuleId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + Effect: Optional[MobileDeviceAccessRuleEffectType] = None + DeviceTypes: Optional[List[str]] = None + NotDeviceTypes: Optional[List[str]] = None + DeviceModels: Optional[List[str]] = None + NotDeviceModels: Optional[List[str]] = None + DeviceOperatingSystems: Optional[List[str]] = None + NotDeviceOperatingSystems: Optional[List[str]] = None + DeviceUserAgents: Optional[List[str]] = None + NotDeviceUserAgents: Optional[List[str]] = None + DateCreated: Optional[datetime] = None + DateModified: Optional[datetime] = None + +class ListOrganizationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class OrganizationSummaryTypeDef(BaseModel): + OrganizationId: Optional[str] = None + Alias: Optional[str] = None + DefaultMailDomain: Optional[str] = None + ErrorMessage: Optional[str] = None + State: Optional[str] = None + +class ListResourceDelegatesRequestRequestTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListResourcesFiltersTypeDef(BaseModel): + NamePrefix: Optional[str] = None + PrimaryEmailPrefix: Optional[str] = None + State: Optional[EntityStateType] = None + +class ResourceTypeDef(BaseModel): + Id: Optional[str] = None + Email: Optional[str] = None + Name: Optional[str] = None + Type: Optional[ResourceTypeType] = None + State: Optional[EntityStateType] = None + EnabledDate: Optional[datetime] = None + DisabledDate: Optional[datetime] = None + Description: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class ListUsersFiltersTypeDef(BaseModel): + UsernamePrefix: Optional[str] = None + DisplayNamePrefix: Optional[str] = None + PrimaryEmailPrefix: Optional[str] = None + State: Optional[EntityStateType] = None + +class UserTypeDef(BaseModel): + Id: Optional[str] = None + Email: Optional[str] = None + Name: Optional[str] = None + DisplayName: Optional[str] = None + State: Optional[EntityStateType] = None + UserRole: Optional[UserRoleType] = None + EnabledDate: Optional[datetime] = None + DisabledDate: Optional[datetime] = None + +class PutAccessControlRuleRequestRequestTypeDef(BaseModel): + Name: str + Effect: AccessControlRuleEffectType + Description: str + OrganizationId: str + IpRanges: Optional[Sequence[str]] = None + NotIpRanges: Optional[Sequence[str]] = None + Actions: Optional[Sequence[str]] = None + NotActions: Optional[Sequence[str]] = None + UserIds: Optional[Sequence[str]] = None + NotUserIds: Optional[Sequence[str]] = None + ImpersonationRoleIds: Optional[Sequence[str]] = None + NotImpersonationRoleIds: Optional[Sequence[str]] = None + +class PutEmailMonitoringConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + RoleArn: str + LogGroupArn: str + +class PutInboundDmarcSettingsRequestRequestTypeDef(BaseModel): + OrganizationId: str + Enforced: bool + +class PutMailboxPermissionsRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + GranteeId: str + PermissionValues: Sequence[PermissionTypeType] + +class PutMobileDeviceAccessOverrideRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + DeviceId: str + Effect: MobileDeviceAccessRuleEffectType + Description: Optional[str] = None + +class RegisterMailDomainRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + ClientToken: Optional[str] = None + +class RegisterToWorkMailRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + Email: str + +class ResetPasswordRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + Password: str + +class StartMailboxExportJobRequestRequestTypeDef(BaseModel): + ClientToken: str + OrganizationId: str + EntityId: str + RoleArn: str + KmsKeyArn: str + S3BucketName: str + S3Prefix: str + Description: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class UpdateDefaultMailDomainRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + +class UpdateGroupRequestRequestTypeDef(BaseModel): + OrganizationId: str + GroupId: str + HiddenFromGlobalAddressList: Optional[bool] = None + +class UpdateMailboxQuotaRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + MailboxQuota: int + +class UpdateMobileDeviceAccessRuleRequestRequestTypeDef(BaseModel): + OrganizationId: str + MobileDeviceAccessRuleId: str + Name: str + Effect: MobileDeviceAccessRuleEffectType + Description: Optional[str] = None + DeviceTypes: Optional[Sequence[str]] = None + NotDeviceTypes: Optional[Sequence[str]] = None + DeviceModels: Optional[Sequence[str]] = None + NotDeviceModels: Optional[Sequence[str]] = None + DeviceOperatingSystems: Optional[Sequence[str]] = None + NotDeviceOperatingSystems: Optional[Sequence[str]] = None + DeviceUserAgents: Optional[Sequence[str]] = None + NotDeviceUserAgents: Optional[Sequence[str]] = None + +class UpdatePrimaryEmailAddressRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + Email: str + +class UpdateUserRequestRequestTypeDef(BaseModel): + OrganizationId: str + UserId: str + Role: Optional[UserRoleType] = None + DisplayName: Optional[str] = None + FirstName: Optional[str] = None + LastName: Optional[str] = None + HiddenFromGlobalAddressList: Optional[bool] = None + Initials: Optional[str] = None + Telephone: Optional[str] = None + Street: Optional[str] = None + JobTitle: Optional[str] = None + City: Optional[str] = None + Company: Optional[str] = None + ZipCode: Optional[str] = None + Department: Optional[str] = None + Country: Optional[str] = None + Office: Optional[str] = None + +class AssumeImpersonationRoleResponseTypeDef(BaseModel): + Token: str + ExpiresIn: int + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupResponseTypeDef(BaseModel): + GroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateImpersonationRoleResponseTypeDef(BaseModel): + ImpersonationRoleId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateMobileDeviceAccessRuleResponseTypeDef(BaseModel): + MobileDeviceAccessRuleId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateOrganizationResponseTypeDef(BaseModel): + OrganizationId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateResourceResponseTypeDef(BaseModel): + ResourceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserResponseTypeDef(BaseModel): + UserId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteOrganizationResponseTypeDef(BaseModel): + OrganizationId: str + State: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEmailMonitoringConfigurationResponseTypeDef(BaseModel): + RoleArn: str + LogGroupArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeEntityResponseTypeDef(BaseModel): + EntityId: str + Name: str + Type: EntityTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeGroupResponseTypeDef(BaseModel): + GroupId: str + Name: str + Email: str + State: EntityStateType + EnabledDate: datetime + DisabledDate: datetime + HiddenFromGlobalAddressList: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeInboundDmarcSettingsResponseTypeDef(BaseModel): + Enforced: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeMailboxExportJobResponseTypeDef(BaseModel): + EntityId: str + Description: str + RoleArn: str + KmsKeyArn: str + S3BucketName: str + S3Prefix: str + S3Path: str + EstimatedProgress: int + State: MailboxExportJobStateType + ErrorInfo: str + StartTime: datetime + EndTime: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeOrganizationResponseTypeDef(BaseModel): + OrganizationId: str + Alias: str + State: str + DirectoryId: str + DirectoryType: str + DefaultMailDomain: str + CompletedDate: datetime + ErrorMessage: str + ARN: str + MigrationAdmin: str + InteroperabilityEnabled: bool + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeUserResponseTypeDef(BaseModel): + UserId: str + Name: str + Email: str + DisplayName: str + State: EntityStateType + UserRole: UserRoleType + EnabledDate: datetime + DisabledDate: datetime + MailboxProvisionedDate: datetime + MailboxDeprovisionedDate: datetime + FirstName: str + LastName: str + HiddenFromGlobalAddressList: bool + Initials: str + Telephone: str + Street: str + JobTitle: str + City: str + Company: str + ZipCode: str + Department: str + Country: str + Office: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccessControlEffectResponseTypeDef(BaseModel): + Effect: AccessControlRuleEffectType + MatchedRules: List[str] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMailboxDetailsResponseTypeDef(BaseModel): + MailboxQuota: int + MailboxSize: float + ResponseMetadata: ResponseMetadataTypeDef + +class GetMobileDeviceAccessOverrideResponseTypeDef(BaseModel): + UserId: str + DeviceId: str + Effect: MobileDeviceAccessRuleEffectType + Description: str + DateCreated: datetime + DateModified: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccessControlRulesResponseTypeDef(BaseModel): + Rules: List[AccessControlRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesResponseTypeDef(BaseModel): + Aliases: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class StartMailboxExportJobResponseTypeDef(BaseModel): + JobId: str + ResponseMetadata: ResponseMetadataTypeDef + +class TestAvailabilityConfigurationResponseTypeDef(BaseModel): + TestPassed: bool + FailureReason: str + ResponseMetadata: ResponseMetadataTypeDef + +class AvailabilityConfigurationTypeDef(BaseModel): + DomainName: Optional[str] = None + ProviderType: Optional[AvailabilityProviderTypeType] = None + EwsProvider: Optional[RedactedEwsAvailabilityProviderTypeDef] = None + LambdaProvider: Optional[LambdaAvailabilityProviderTypeDef] = None + DateCreated: Optional[datetime] = None + DateModified: Optional[datetime] = None + +class DescribeResourceResponseTypeDef(BaseModel): + ResourceId: str + Email: str + Name: str + Type: ResourceTypeType + BookingOptions: BookingOptionsTypeDef + State: EntityStateType + EnabledDate: datetime + DisabledDate: datetime + Description: str + HiddenFromGlobalAddressList: bool + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateResourceRequestRequestTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + Name: Optional[str] = None + BookingOptions: Optional[BookingOptionsTypeDef] = None + Description: Optional[str] = None + Type: Optional[ResourceTypeType] = None + HiddenFromGlobalAddressList: Optional[bool] = None + +class CreateAvailabilityConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + ClientToken: Optional[str] = None + EwsProvider: Optional[EwsAvailabilityProviderTypeDef] = None + LambdaProvider: Optional[LambdaAvailabilityProviderTypeDef] = None + +class TestAvailabilityConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: Optional[str] = None + EwsProvider: Optional[EwsAvailabilityProviderTypeDef] = None + LambdaProvider: Optional[LambdaAvailabilityProviderTypeDef] = None + +class UpdateAvailabilityConfigurationRequestRequestTypeDef(BaseModel): + OrganizationId: str + DomainName: str + EwsProvider: Optional[EwsAvailabilityProviderTypeDef] = None + LambdaProvider: Optional[LambdaAvailabilityProviderTypeDef] = None + +class CreateImpersonationRoleRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + Type: ImpersonationRoleTypeType + Rules: Sequence[ImpersonationRuleTypeDef] + ClientToken: Optional[str] = None + Description: Optional[str] = None + +class GetImpersonationRoleResponseTypeDef(BaseModel): + ImpersonationRoleId: str + Name: str + Type: ImpersonationRoleTypeType + Description: str + Rules: List[ImpersonationRuleTypeDef] + DateCreated: datetime + DateModified: datetime + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateImpersonationRoleRequestRequestTypeDef(BaseModel): + OrganizationId: str + ImpersonationRoleId: str + Name: str + Type: ImpersonationRoleTypeType + Rules: Sequence[ImpersonationRuleTypeDef] + Description: Optional[str] = None + +class CreateOrganizationRequestRequestTypeDef(BaseModel): + Alias: str + DirectoryId: Optional[str] = None + ClientToken: Optional[str] = None + Domains: Optional[Sequence[DomainTypeDef]] = None + KmsKeyArn: Optional[str] = None + EnableInteroperability: Optional[bool] = None + +class ListResourceDelegatesResponseTypeDef(BaseModel): + Delegates: List[DelegateTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetMailDomainResponseTypeDef(BaseModel): + Records: List[DnsRecordTypeDef] + IsTestDomain: bool + IsDefault: bool + OwnershipVerificationStatus: DnsRecordVerificationStatusType + DkimVerificationStatus: DnsRecordVerificationStatusType + ResponseMetadata: ResponseMetadataTypeDef + +class GetDefaultRetentionPolicyResponseTypeDef(BaseModel): + Id: str + Name: str + Description: str + FolderConfigurations: List[FolderConfigurationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class PutRetentionPolicyRequestRequestTypeDef(BaseModel): + OrganizationId: str + Name: str + FolderConfigurations: Sequence[FolderConfigurationTypeDef] + Id: Optional[str] = None + Description: Optional[str] = None + +class GetImpersonationRoleEffectResponseTypeDef(BaseModel): + Type: ImpersonationRoleTypeType + Effect: AccessEffectType + MatchedRules: List[ImpersonationMatchedRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetMobileDeviceAccessEffectResponseTypeDef(BaseModel): + Effect: MobileDeviceAccessRuleEffectType + MatchedRules: List[MobileDeviceAccessMatchedRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsForEntityResponseTypeDef(BaseModel): + Groups: List[GroupIdentifierTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsResponseTypeDef(BaseModel): + Groups: List[GroupTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListImpersonationRolesResponseTypeDef(BaseModel): + Roles: List[ImpersonationRoleTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAliasesRequestListAliasesPaginateTypeDef(BaseModel): + OrganizationId: str + EntityId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAvailabilityConfigurationsRequestListAvailabilityConfigurationsPaginateTypeDef(BaseModel): + OrganizationId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupMembersRequestListGroupMembersPaginateTypeDef(BaseModel): + OrganizationId: str + GroupId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListMailboxPermissionsRequestListMailboxPermissionsPaginateTypeDef(BaseModel): + OrganizationId: str + EntityId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListOrganizationsRequestListOrganizationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourceDelegatesRequestListResourceDelegatesPaginateTypeDef(BaseModel): + OrganizationId: str + ResourceId: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupMembersResponseTypeDef(BaseModel): + Members: List[MemberTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListGroupsRequestListGroupsPaginateTypeDef(BaseModel): + OrganizationId: str + Filters: Optional[ListGroupsFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListGroupsRequestRequestTypeDef(BaseModel): + OrganizationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[ListGroupsFiltersTypeDef] = None + +class ListGroupsForEntityRequestRequestTypeDef(BaseModel): + OrganizationId: str + EntityId: str + Filters: Optional[ListGroupsForEntityFiltersTypeDef] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListMailDomainsResponseTypeDef(BaseModel): + MailDomains: List[MailDomainSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMailboxExportJobsResponseTypeDef(BaseModel): + Jobs: List[MailboxExportJobTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMailboxPermissionsResponseTypeDef(BaseModel): + Permissions: List[PermissionTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMobileDeviceAccessOverridesResponseTypeDef(BaseModel): + Overrides: List[MobileDeviceAccessOverrideTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListMobileDeviceAccessRulesResponseTypeDef(BaseModel): + Rules: List[MobileDeviceAccessRuleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListOrganizationsResponseTypeDef(BaseModel): + OrganizationSummaries: List[OrganizationSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListResourcesRequestListResourcesPaginateTypeDef(BaseModel): + OrganizationId: str + Filters: Optional[ListResourcesFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourcesRequestRequestTypeDef(BaseModel): + OrganizationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[ListResourcesFiltersTypeDef] = None + +class ListResourcesResponseTypeDef(BaseModel): + Resources: List[ResourceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class ListUsersRequestListUsersPaginateTypeDef(BaseModel): + OrganizationId: str + Filters: Optional[ListUsersFiltersTypeDef] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListUsersRequestRequestTypeDef(BaseModel): + OrganizationId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + Filters: Optional[ListUsersFiltersTypeDef] = None + +class ListUsersResponseTypeDef(BaseModel): + Users: List[UserTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAvailabilityConfigurationsResponseTypeDef(BaseModel): + AvailabilityConfigurations: List[AvailabilityConfigurationTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/workmail_constants.py b/aws_resource_validator/pydantic_models/workmail_constants.py new file mode 100644 index 00000000..e323f11f --- /dev/null +++ b/aws_resource_validator/pydantic_models/workmail_constants.py @@ -0,0 +1,422 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessControlRuleEffectType = Literal["ALLOW", "DENY"] +AccessEffectType = Literal["ALLOW", "DENY"] +AvailabilityProviderTypeType = Literal["EWS", "LAMBDA"] +DnsRecordVerificationStatusType = Literal["FAILED", "PENDING", "VERIFIED"] +EntityStateType = Literal["DELETED", "DISABLED", "ENABLED"] +EntityTypeType = Literal["GROUP", "RESOURCE", "USER"] +FolderNameType = Literal["DELETED_ITEMS", "DRAFTS", "INBOX", "JUNK_EMAIL", "SENT_ITEMS"] +ImpersonationRoleTypeType = Literal["FULL_ACCESS", "READ_ONLY"] +ListAliasesPaginatorName = Literal["list_aliases"] +ListAvailabilityConfigurationsPaginatorName = Literal["list_availability_configurations"] +ListGroupMembersPaginatorName = Literal["list_group_members"] +ListGroupsPaginatorName = Literal["list_groups"] +ListMailboxPermissionsPaginatorName = Literal["list_mailbox_permissions"] +ListOrganizationsPaginatorName = Literal["list_organizations"] +ListResourceDelegatesPaginatorName = Literal["list_resource_delegates"] +ListResourcesPaginatorName = Literal["list_resources"] +ListUsersPaginatorName = Literal["list_users"] +MailboxExportJobStateType = Literal["CANCELLED", "COMPLETED", "FAILED", "RUNNING"] +MemberTypeType = Literal["GROUP", "USER"] +MobileDeviceAccessRuleEffectType = Literal["ALLOW", "DENY"] +PermissionTypeType = Literal["FULL_ACCESS", "SEND_AS", "SEND_ON_BEHALF"] +ResourceTypeType = Literal["EQUIPMENT", "ROOM"] +RetentionActionType = Literal["DELETE", "NONE", "PERMANENTLY_DELETE"] +UserRoleType = Literal["REMOTE_USER", "RESOURCE", "SYSTEM_USER", "USER"] +WorkMailServiceName = Literal["workmail"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_aliases", + "list_availability_configurations", + "list_group_members", + "list_groups", + "list_mailbox_permissions", + "list_organizations", + "list_resource_delegates", + "list_resources", + "list_users",] +RegionName = Literal["eu-west-1", "us-east-1", "us-west-2"] diff --git a/aws_resource_validator/pydantic_models/workmailmessageflow_classes.py b/aws_resource_validator/pydantic_models/workmailmessageflow_classes.py new file mode 100644 index 00000000..9b7f53c8 --- /dev/null +++ b/aws_resource_validator/pydantic_models/workmailmessageflow_classes.py @@ -0,0 +1,39 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.workmailmessageflow_constants import * + +class GetRawMessageContentRequestRequestTypeDef(BaseModel): + messageId: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class S3ReferenceTypeDef(BaseModel): + bucket: str + key: str + objectVersion: Optional[str] = None + +class GetRawMessageContentResponseTypeDef(BaseModel): + messageContent: StreamingBody + ResponseMetadata: ResponseMetadataTypeDef + +class RawMessageContentTypeDef(BaseModel): + s3Reference: S3ReferenceTypeDef + +class PutRawMessageContentRequestRequestTypeDef(BaseModel): + messageId: str + content: RawMessageContentTypeDef + diff --git a/aws_resource_validator/pydantic_models/workmailmessageflow_constants.py b/aws_resource_validator/pydantic_models/workmailmessageflow_constants.py new file mode 100644 index 00000000..b16fca77 --- /dev/null +++ b/aws_resource_validator/pydantic_models/workmailmessageflow_constants.py @@ -0,0 +1,388 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +WorkMailMessageFlowServiceName = Literal["workmailmessageflow"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] diff --git a/aws_resource_validator/pydantic_models/workspaces_classes.py b/aws_resource_validator/pydantic_models/workspaces_classes.py new file mode 100644 index 00000000..d0884d6e --- /dev/null +++ b/aws_resource_validator/pydantic_models/workspaces_classes.py @@ -0,0 +1,1232 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.workspaces_constants import * + +class AcceptAccountLinkInvitationRequestRequestTypeDef(BaseModel): + LinkId: str + ClientToken: Optional[str] = None + +class AccountLinkTypeDef(BaseModel): + AccountLinkId: Optional[str] = None + AccountLinkStatus: Optional[AccountLinkStatusEnumType] = None + SourceAccountId: Optional[str] = None + TargetAccountId: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AccountModificationTypeDef(BaseModel): + ModificationState: Optional[DedicatedTenancyModificationStateEnumType] = None + DedicatedTenancySupport: Optional[DedicatedTenancySupportResultEnumType] = None + DedicatedTenancyManagementCidrRange: Optional[str] = None + StartTime: Optional[datetime] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class ActiveDirectoryConfigTypeDef(BaseModel): + DomainName: str + ServiceAccountSecretArn: str + +class AssociationStateReasonTypeDef(BaseModel): + ErrorCode: Optional[AssociationErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class ApplicationSettingsRequestTypeDef(BaseModel): + Status: ApplicationSettingsStatusEnumType + SettingsGroup: Optional[str] = None + +class ApplicationSettingsResponseTypeDef(BaseModel): + Status: ApplicationSettingsStatusEnumType + SettingsGroup: Optional[str] = None + S3BucketName: Optional[str] = None + +class AssociateConnectionAliasRequestRequestTypeDef(BaseModel): + AliasId: str + ResourceId: str + +class AssociateIpGroupsRequestRequestTypeDef(BaseModel): + DirectoryId: str + GroupIds: Sequence[str] + +class AssociateWorkspaceApplicationRequestRequestTypeDef(BaseModel): + WorkspaceId: str + ApplicationId: str + +class IpRuleItemTypeDef(BaseModel): + ipRule: Optional[str] = None + ruleDesc: Optional[str] = None + +class CapacityStatusTypeDef(BaseModel): + AvailableUserSessions: int + DesiredUserSessions: int + ActualUserSessions: int + ActiveUserSessions: int + +class CapacityTypeDef(BaseModel): + DesiredUserSessions: int + +class CertificateBasedAuthPropertiesTypeDef(BaseModel): + Status: Optional[CertificateBasedAuthStatusEnumType] = None + CertificateAuthorityArn: Optional[str] = None + +class ClientPropertiesTypeDef(BaseModel): + ReconnectEnabled: Optional[ReconnectEnumType] = None + LogUploadEnabled: Optional[LogUploadEnumType] = None + +class ComputeTypeTypeDef(BaseModel): + Name: Optional[ComputeType] = None + +class ConnectClientAddInTypeDef(BaseModel): + AddInId: Optional[str] = None + ResourceId: Optional[str] = None + Name: Optional[str] = None + URL: Optional[str] = None + +class ConnectionAliasAssociationTypeDef(BaseModel): + AssociationStatus: Optional[AssociationStatusType] = None + AssociatedAccountId: Optional[str] = None + ResourceId: Optional[str] = None + ConnectionIdentifier: Optional[str] = None + +class ConnectionAliasPermissionTypeDef(BaseModel): + SharedAccountId: str + AllowAssociation: bool + +class TagTypeDef(BaseModel): + Key: str + Value: Optional[str] = None + +class CreateAccountLinkInvitationRequestRequestTypeDef(BaseModel): + TargetAccountId: str + ClientToken: Optional[str] = None + +class CreateConnectClientAddInRequestRequestTypeDef(BaseModel): + ResourceId: str + Name: str + URL: str + +class PendingCreateStandbyWorkspacesRequestTypeDef(BaseModel): + UserName: Optional[str] = None + DirectoryId: Optional[str] = None + State: Optional[WorkspaceStateType] = None + WorkspaceId: Optional[str] = None + +class RootStorageTypeDef(BaseModel): + Capacity: str + +class UserStorageTypeDef(BaseModel): + Capacity: str + +class OperatingSystemTypeDef(BaseModel): + Type: Optional[OperatingSystemTypeType] = None + +class TimeoutSettingsTypeDef(BaseModel): + DisconnectTimeoutInSeconds: Optional[int] = None + IdleDisconnectTimeoutInSeconds: Optional[int] = None + MaxUserDurationInSeconds: Optional[int] = None + +class DataReplicationSettingsTypeDef(BaseModel): + DataReplication: Optional[DataReplicationType] = None + RecoverySnapshotTime: Optional[datetime] = None + +class DefaultClientBrandingAttributesTypeDef(BaseModel): + LogoUrl: Optional[str] = None + SupportEmail: Optional[str] = None + SupportLink: Optional[str] = None + ForgotPasswordLink: Optional[str] = None + LoginMessage: Optional[Dict[str, str]] = None + +class DefaultWorkspaceCreationPropertiesTypeDef(BaseModel): + EnableWorkDocs: Optional[bool] = None + EnableInternetAccess: Optional[bool] = None + DefaultOu: Optional[str] = None + CustomSecurityGroupId: Optional[str] = None + UserEnabledAsLocalAdministrator: Optional[bool] = None + EnableMaintenanceMode: Optional[bool] = None + InstanceIamRoleArn: Optional[str] = None + +class DeleteAccountLinkInvitationRequestRequestTypeDef(BaseModel): + LinkId: str + ClientToken: Optional[str] = None + +class DeleteClientBrandingRequestRequestTypeDef(BaseModel): + ResourceId: str + Platforms: Sequence[ClientDeviceTypeType] + +class DeleteConnectClientAddInRequestRequestTypeDef(BaseModel): + AddInId: str + ResourceId: str + +class DeleteConnectionAliasRequestRequestTypeDef(BaseModel): + AliasId: str + +class DeleteIpGroupRequestRequestTypeDef(BaseModel): + GroupId: str + +class DeleteTagsRequestRequestTypeDef(BaseModel): + ResourceId: str + TagKeys: Sequence[str] + +class DeleteWorkspaceBundleRequestRequestTypeDef(BaseModel): + BundleId: Optional[str] = None + +class DeleteWorkspaceImageRequestRequestTypeDef(BaseModel): + ImageId: str + +class DeployWorkspaceApplicationsRequestRequestTypeDef(BaseModel): + WorkspaceId: str + Force: Optional[bool] = None + +class DeregisterWorkspaceDirectoryRequestRequestTypeDef(BaseModel): + DirectoryId: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class DescribeAccountModificationsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class DescribeApplicationAssociationsRequestRequestTypeDef(BaseModel): + ApplicationId: str + AssociatedResourceTypes: Sequence[ApplicationAssociatedResourceTypeType] + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeApplicationsRequestRequestTypeDef(BaseModel): + ApplicationIds: Optional[Sequence[str]] = None + ComputeTypeNames: Optional[Sequence[ComputeType]] = None + LicenseType: Optional[WorkSpaceApplicationLicenseTypeType] = None + OperatingSystemNames: Optional[Sequence[OperatingSystemNameType]] = None + Owner: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class WorkSpaceApplicationTypeDef(BaseModel): + ApplicationId: Optional[str] = None + Created: Optional[datetime] = None + Description: Optional[str] = None + LicenseType: Optional[WorkSpaceApplicationLicenseTypeType] = None + Name: Optional[str] = None + Owner: Optional[str] = None + State: Optional[WorkSpaceApplicationStateType] = None + SupportedComputeTypeNames: Optional[List[ComputeType]] = None + SupportedOperatingSystemNames: Optional[List[OperatingSystemNameType]] = None + +class DescribeBundleAssociationsRequestRequestTypeDef(BaseModel): + BundleId: str + AssociatedResourceTypes: Sequence[Literal["APPLICATION"]] + +class DescribeClientBrandingRequestRequestTypeDef(BaseModel): + ResourceId: str + +class IosClientBrandingAttributesTypeDef(BaseModel): + LogoUrl: Optional[str] = None + Logo2xUrl: Optional[str] = None + Logo3xUrl: Optional[str] = None + SupportEmail: Optional[str] = None + SupportLink: Optional[str] = None + ForgotPasswordLink: Optional[str] = None + LoginMessage: Optional[Dict[str, str]] = None + +class DescribeClientPropertiesRequestRequestTypeDef(BaseModel): + ResourceIds: Sequence[str] + +class DescribeConnectClientAddInsRequestRequestTypeDef(BaseModel): + ResourceId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeConnectionAliasPermissionsRequestRequestTypeDef(BaseModel): + AliasId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeConnectionAliasesRequestRequestTypeDef(BaseModel): + AliasIds: Optional[Sequence[str]] = None + ResourceId: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeImageAssociationsRequestRequestTypeDef(BaseModel): + ImageId: str + AssociatedResourceTypes: Sequence[Literal["APPLICATION"]] + +class DescribeIpGroupsRequestRequestTypeDef(BaseModel): + GroupIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeTagsRequestRequestTypeDef(BaseModel): + ResourceId: str + +class DescribeWorkspaceAssociationsRequestRequestTypeDef(BaseModel): + WorkspaceId: str + AssociatedResourceTypes: Sequence[Literal["APPLICATION"]] + +class DescribeWorkspaceBundlesRequestRequestTypeDef(BaseModel): + BundleIds: Optional[Sequence[str]] = None + Owner: Optional[str] = None + NextToken: Optional[str] = None + +class DescribeWorkspaceDirectoriesRequestRequestTypeDef(BaseModel): + DirectoryIds: Optional[Sequence[str]] = None + WorkspaceDirectoryNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeWorkspaceImagePermissionsRequestRequestTypeDef(BaseModel): + ImageId: str + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ImagePermissionTypeDef(BaseModel): + SharedAccountId: Optional[str] = None + +class DescribeWorkspaceImagesRequestRequestTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + ImageType: Optional[ImageTypeType] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class DescribeWorkspaceSnapshotsRequestRequestTypeDef(BaseModel): + WorkspaceId: str + +class SnapshotTypeDef(BaseModel): + SnapshotTime: Optional[datetime] = None + +class DescribeWorkspacesConnectionStatusRequestRequestTypeDef(BaseModel): + WorkspaceIds: Optional[Sequence[str]] = None + NextToken: Optional[str] = None + +class WorkspaceConnectionStatusTypeDef(BaseModel): + WorkspaceId: Optional[str] = None + ConnectionState: Optional[ConnectionStateType] = None + ConnectionStateCheckTimestamp: Optional[datetime] = None + LastKnownUserConnectionTimestamp: Optional[datetime] = None + +class DescribeWorkspacesPoolSessionsRequestRequestTypeDef(BaseModel): + PoolId: str + UserId: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class DescribeWorkspacesPoolsFilterTypeDef(BaseModel): + Name: Literal["PoolName"] + Values: Sequence[str] + Operator: DescribeWorkspacesPoolsFilterOperatorType + +class DescribeWorkspacesRequestRequestTypeDef(BaseModel): + WorkspaceIds: Optional[Sequence[str]] = None + DirectoryId: Optional[str] = None + UserName: Optional[str] = None + BundleId: Optional[str] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + WorkspaceName: Optional[str] = None + +class DisassociateConnectionAliasRequestRequestTypeDef(BaseModel): + AliasId: str + +class DisassociateIpGroupsRequestRequestTypeDef(BaseModel): + DirectoryId: str + GroupIds: Sequence[str] + +class DisassociateWorkspaceApplicationRequestRequestTypeDef(BaseModel): + WorkspaceId: str + ApplicationId: str + +class ErrorDetailsTypeDef(BaseModel): + ErrorCode: Optional[WorkspaceImageErrorDetailCodeType] = None + ErrorMessage: Optional[str] = None + +class FailedWorkspaceChangeRequestTypeDef(BaseModel): + WorkspaceId: Optional[str] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class GetAccountLinkRequestRequestTypeDef(BaseModel): + LinkId: Optional[str] = None + LinkedAccountId: Optional[str] = None + +class ListAccountLinksRequestRequestTypeDef(BaseModel): + LinkStatusFilter: Optional[Sequence[AccountLinkStatusEnumType]] = None + NextToken: Optional[str] = None + MaxResults: Optional[int] = None + +class ListAvailableManagementCidrRangesRequestRequestTypeDef(BaseModel): + ManagementCidrRangeConstraint: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class MigrateWorkspaceRequestRequestTypeDef(BaseModel): + SourceWorkspaceId: str + BundleId: str + +class ModificationStateTypeDef(BaseModel): + Resource: Optional[ModificationResourceEnumType] = None + State: Optional[ModificationStateEnumType] = None + +class ModifyAccountRequestRequestTypeDef(BaseModel): + DedicatedTenancySupport: Optional[Literal["ENABLED"]] = None + DedicatedTenancyManagementCidrRange: Optional[str] = None + +class SamlPropertiesTypeDef(BaseModel): + Status: Optional[SamlStatusEnumType] = None + UserAccessUrl: Optional[str] = None + RelayStateParameterName: Optional[str] = None + +class SelfservicePermissionsTypeDef(BaseModel): + RestartWorkspace: Optional[ReconnectEnumType] = None + IncreaseVolumeSize: Optional[ReconnectEnumType] = None + ChangeComputeType: Optional[ReconnectEnumType] = None + SwitchRunningMode: Optional[ReconnectEnumType] = None + RebuildWorkspace: Optional[ReconnectEnumType] = None + +class WorkspaceAccessPropertiesTypeDef(BaseModel): + DeviceTypeWindows: Optional[AccessPropertyValueType] = None + DeviceTypeOsx: Optional[AccessPropertyValueType] = None + DeviceTypeWeb: Optional[AccessPropertyValueType] = None + DeviceTypeIos: Optional[AccessPropertyValueType] = None + DeviceTypeAndroid: Optional[AccessPropertyValueType] = None + DeviceTypeChromeOs: Optional[AccessPropertyValueType] = None + DeviceTypeZeroClient: Optional[AccessPropertyValueType] = None + DeviceTypeLinux: Optional[AccessPropertyValueType] = None + +class WorkspaceCreationPropertiesTypeDef(BaseModel): + EnableWorkDocs: Optional[bool] = None + EnableInternetAccess: Optional[bool] = None + DefaultOu: Optional[str] = None + CustomSecurityGroupId: Optional[str] = None + UserEnabledAsLocalAdministrator: Optional[bool] = None + EnableMaintenanceMode: Optional[bool] = None + InstanceIamRoleArn: Optional[str] = None + +class WorkspacePropertiesTypeDef(BaseModel): + RunningMode: Optional[RunningModeType] = None + RunningModeAutoStopTimeoutInMinutes: Optional[int] = None + RootVolumeSizeGib: Optional[int] = None + UserVolumeSizeGib: Optional[int] = None + ComputeTypeName: Optional[ComputeType] = None + Protocols: Optional[Sequence[ProtocolType]] = None + OperatingSystemName: Optional[OperatingSystemNameType] = None + +class ModifyWorkspaceStateRequestRequestTypeDef(BaseModel): + WorkspaceId: str + WorkspaceState: TargetWorkspaceStateType + +class NetworkAccessConfigurationTypeDef(BaseModel): + EniPrivateIpAddress: Optional[str] = None + EniId: Optional[str] = None + +class RebootRequestTypeDef(BaseModel): + WorkspaceId: str + +class RebuildRequestTypeDef(BaseModel): + WorkspaceId: str + +class RejectAccountLinkInvitationRequestRequestTypeDef(BaseModel): + LinkId: str + ClientToken: Optional[str] = None + +class RelatedWorkspacePropertiesTypeDef(BaseModel): + WorkspaceId: Optional[str] = None + Region: Optional[str] = None + State: Optional[WorkspaceStateType] = None + Type: Optional[StandbyWorkspaceRelationshipTypeType] = None + +class RestoreWorkspaceRequestRequestTypeDef(BaseModel): + WorkspaceId: str + +class RevokeIpRulesRequestRequestTypeDef(BaseModel): + GroupId: str + UserRules: Sequence[str] + +class StandbyWorkspacesPropertiesTypeDef(BaseModel): + StandbyWorkspaceId: Optional[str] = None + DataReplication: Optional[DataReplicationType] = None + RecoverySnapshotTime: Optional[datetime] = None + +class StartRequestTypeDef(BaseModel): + WorkspaceId: Optional[str] = None + +class StartWorkspacesPoolRequestRequestTypeDef(BaseModel): + PoolId: str + +class StopRequestTypeDef(BaseModel): + WorkspaceId: Optional[str] = None + +class StopWorkspacesPoolRequestRequestTypeDef(BaseModel): + PoolId: str + +class StorageConnectorTypeDef(BaseModel): + ConnectorType: Literal["HOME_FOLDER"] + Status: StorageConnectorStatusEnumType + +class UserSettingTypeDef(BaseModel): + Action: UserSettingActionEnumType + Permission: UserSettingPermissionEnumType + MaximumLength: Optional[int] = None + +class TerminateRequestTypeDef(BaseModel): + WorkspaceId: str + +class TerminateWorkspacesPoolRequestRequestTypeDef(BaseModel): + PoolId: str + +class TerminateWorkspacesPoolSessionRequestRequestTypeDef(BaseModel): + SessionId: str + +class UpdateConnectClientAddInRequestRequestTypeDef(BaseModel): + AddInId: str + ResourceId: str + Name: Optional[str] = None + URL: Optional[str] = None + +class UpdateResultTypeDef(BaseModel): + UpdateAvailable: Optional[bool] = None + Description: Optional[str] = None + +class UpdateWorkspaceBundleRequestRequestTypeDef(BaseModel): + BundleId: Optional[str] = None + ImageId: Optional[str] = None + +class UpdateWorkspaceImagePermissionRequestRequestTypeDef(BaseModel): + ImageId: str + AllowCopyImage: bool + SharedAccountId: str + +class WorkspacePropertiesExtraOutputTypeDef(BaseModel): + RunningMode: Optional[RunningModeType] = None + RunningModeAutoStopTimeoutInMinutes: Optional[int] = None + RootVolumeSizeGib: Optional[int] = None + UserVolumeSizeGib: Optional[int] = None + ComputeTypeName: Optional[ComputeType] = None + Protocols: Optional[List[ProtocolType]] = None + OperatingSystemName: Optional[OperatingSystemNameType] = None + +class WorkspacePropertiesOutputTypeDef(BaseModel): + RunningMode: Optional[RunningModeType] = None + RunningModeAutoStopTimeoutInMinutes: Optional[int] = None + RootVolumeSizeGib: Optional[int] = None + UserVolumeSizeGib: Optional[int] = None + ComputeTypeName: Optional[ComputeType] = None + Protocols: Optional[List[ProtocolType]] = None + OperatingSystemName: Optional[OperatingSystemNameType] = None + +class WorkspacesPoolErrorTypeDef(BaseModel): + ErrorCode: Optional[WorkspacesPoolErrorCodeType] = None + ErrorMessage: Optional[str] = None + +class AcceptAccountLinkInvitationResultTypeDef(BaseModel): + AccountLink: AccountLinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateConnectionAliasResultTypeDef(BaseModel): + ConnectionIdentifier: str + ResponseMetadata: ResponseMetadataTypeDef + +class CopyWorkspaceImageResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateAccountLinkInvitationResultTypeDef(BaseModel): + AccountLink: AccountLinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectClientAddInResultTypeDef(BaseModel): + AddInId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateConnectionAliasResultTypeDef(BaseModel): + AliasId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIpGroupResultTypeDef(BaseModel): + GroupId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUpdatedWorkspaceImageResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteAccountLinkInvitationResultTypeDef(BaseModel): + AccountLink: AccountLinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountResultTypeDef(BaseModel): + DedicatedTenancySupport: DedicatedTenancySupportResultEnumType + DedicatedTenancyManagementCidrRange: str + DedicatedTenancyAccountType: DedicatedTenancyAccountTypeType + ResponseMetadata: ResponseMetadataTypeDef + +class GetAccountLinkResultTypeDef(BaseModel): + AccountLink: AccountLinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportWorkspaceImageResultTypeDef(BaseModel): + ImageId: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListAccountLinksResultTypeDef(BaseModel): + AccountLinks: List[AccountLinkTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ListAvailableManagementCidrRangesResultTypeDef(BaseModel): + ManagementCidrRanges: List[str] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class MigrateWorkspaceResultTypeDef(BaseModel): + SourceWorkspaceId: str + TargetWorkspaceId: str + ResponseMetadata: ResponseMetadataTypeDef + +class RegisterWorkspaceDirectoryResultTypeDef(BaseModel): + DirectoryId: str + State: WorkspaceDirectoryStateType + ResponseMetadata: ResponseMetadataTypeDef + +class RejectAccountLinkInvitationResultTypeDef(BaseModel): + AccountLink: AccountLinkTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeAccountModificationsResultTypeDef(BaseModel): + AccountModifications: List[AccountModificationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ApplicationResourceAssociationTypeDef(BaseModel): + ApplicationId: Optional[str] = None + AssociatedResourceId: Optional[str] = None + AssociatedResourceType: Optional[ApplicationAssociatedResourceTypeType] = None + Created: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + State: Optional[AssociationStateType] = None + StateReason: Optional[AssociationStateReasonTypeDef] = None + +class BundleResourceAssociationTypeDef(BaseModel): + AssociatedResourceId: Optional[str] = None + AssociatedResourceType: Optional[Literal["APPLICATION"]] = None + BundleId: Optional[str] = None + Created: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + State: Optional[AssociationStateType] = None + StateReason: Optional[AssociationStateReasonTypeDef] = None + +class ImageResourceAssociationTypeDef(BaseModel): + AssociatedResourceId: Optional[str] = None + AssociatedResourceType: Optional[Literal["APPLICATION"]] = None + Created: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + ImageId: Optional[str] = None + State: Optional[AssociationStateType] = None + StateReason: Optional[AssociationStateReasonTypeDef] = None + +class WorkspaceResourceAssociationTypeDef(BaseModel): + AssociatedResourceId: Optional[str] = None + AssociatedResourceType: Optional[Literal["APPLICATION"]] = None + Created: Optional[datetime] = None + LastUpdatedTime: Optional[datetime] = None + State: Optional[AssociationStateType] = None + StateReason: Optional[AssociationStateReasonTypeDef] = None + WorkspaceId: Optional[str] = None + +class AuthorizeIpRulesRequestRequestTypeDef(BaseModel): + GroupId: str + UserRules: Sequence[IpRuleItemTypeDef] + +class UpdateRulesOfIpGroupRequestRequestTypeDef(BaseModel): + GroupId: str + UserRules: Sequence[IpRuleItemTypeDef] + +class WorkspacesIpGroupTypeDef(BaseModel): + groupId: Optional[str] = None + groupName: Optional[str] = None + groupDesc: Optional[str] = None + userRules: Optional[List[IpRuleItemTypeDef]] = None + +class DefaultImportClientBrandingAttributesTypeDef(BaseModel): + Logo: Optional[BlobTypeDef] = None + SupportEmail: Optional[str] = None + SupportLink: Optional[str] = None + ForgotPasswordLink: Optional[str] = None + LoginMessage: Optional[Mapping[str, str]] = None + +class IosImportClientBrandingAttributesTypeDef(BaseModel): + Logo: Optional[BlobTypeDef] = None + Logo2x: Optional[BlobTypeDef] = None + Logo3x: Optional[BlobTypeDef] = None + SupportEmail: Optional[str] = None + SupportLink: Optional[str] = None + ForgotPasswordLink: Optional[str] = None + LoginMessage: Optional[Mapping[str, str]] = None + +class ModifyCertificateBasedAuthPropertiesRequestRequestTypeDef(BaseModel): + ResourceId: str + CertificateBasedAuthProperties: Optional[CertificateBasedAuthPropertiesTypeDef] = None + PropertiesToDelete: Optional[ Sequence[Literal["CERTIFICATE_BASED_AUTH_PROPERTIES_CERTIFICATE_AUTHORITY_ARN"]] ] = None + +class ClientPropertiesResultTypeDef(BaseModel): + ResourceId: Optional[str] = None + ClientProperties: Optional[ClientPropertiesTypeDef] = None + +class ModifyClientPropertiesRequestRequestTypeDef(BaseModel): + ResourceId: str + ClientProperties: ClientPropertiesTypeDef + +class DescribeConnectClientAddInsResultTypeDef(BaseModel): + AddIns: List[ConnectClientAddInTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ConnectionAliasTypeDef(BaseModel): + ConnectionString: Optional[str] = None + AliasId: Optional[str] = None + State: Optional[ConnectionAliasStateType] = None + OwnerAccountId: Optional[str] = None + Associations: Optional[List[ConnectionAliasAssociationTypeDef]] = None + +class DescribeConnectionAliasPermissionsResultTypeDef(BaseModel): + AliasId: str + ConnectionAliasPermissions: List[ConnectionAliasPermissionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateConnectionAliasPermissionRequestRequestTypeDef(BaseModel): + AliasId: str + ConnectionAliasPermission: ConnectionAliasPermissionTypeDef + +class CopyWorkspaceImageRequestRequestTypeDef(BaseModel): + Name: str + SourceImageId: str + SourceRegion: str + Description: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateConnectionAliasRequestRequestTypeDef(BaseModel): + ConnectionString: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateIpGroupRequestRequestTypeDef(BaseModel): + GroupName: str + GroupDesc: Optional[str] = None + UserRules: Optional[Sequence[IpRuleItemTypeDef]] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTagsRequestRequestTypeDef(BaseModel): + ResourceId: str + Tags: Sequence[TagTypeDef] + +class CreateUpdatedWorkspaceImageRequestRequestTypeDef(BaseModel): + Name: str + Description: str + SourceImageId: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class CreateWorkspaceImageRequestRequestTypeDef(BaseModel): + Name: str + Description: str + WorkspaceId: str + Tags: Optional[Sequence[TagTypeDef]] = None + +class DescribeTagsResultTypeDef(BaseModel): + TagList: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ImportWorkspaceImageRequestRequestTypeDef(BaseModel): + Ec2ImageId: str + IngestionProcess: WorkspaceImageIngestionProcessType + ImageName: str + ImageDescription: str + Tags: Optional[Sequence[TagTypeDef]] = None + Applications: Optional[Sequence[ApplicationType]] = None + +class RegisterWorkspaceDirectoryRequestRequestTypeDef(BaseModel): + DirectoryId: Optional[str] = None + SubnetIds: Optional[Sequence[str]] = None + EnableWorkDocs: Optional[bool] = None + EnableSelfService: Optional[bool] = None + Tenancy: Optional[TenancyType] = None + Tags: Optional[Sequence[TagTypeDef]] = None + WorkspaceDirectoryName: Optional[str] = None + WorkspaceDirectoryDescription: Optional[str] = None + UserIdentityType: Optional[UserIdentityTypeType] = None + WorkspaceType: Optional[WorkspaceTypeType] = None + ActiveDirectoryConfig: Optional[ActiveDirectoryConfigTypeDef] = None + +class StandbyWorkspaceOutputTypeDef(BaseModel): + PrimaryWorkspaceId: str + DirectoryId: str + VolumeEncryptionKey: Optional[str] = None + Tags: Optional[List[TagTypeDef]] = None + DataReplication: Optional[DataReplicationType] = None + +class StandbyWorkspaceTypeDef(BaseModel): + PrimaryWorkspaceId: str + DirectoryId: str + VolumeEncryptionKey: Optional[str] = None + Tags: Optional[Sequence[TagTypeDef]] = None + DataReplication: Optional[DataReplicationType] = None + +class CreateWorkspaceBundleRequestRequestTypeDef(BaseModel): + BundleName: str + BundleDescription: str + ImageId: str + ComputeType: ComputeTypeTypeDef + UserStorage: UserStorageTypeDef + RootStorage: Optional[RootStorageTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class WorkspaceBundleTypeDef(BaseModel): + BundleId: Optional[str] = None + Name: Optional[str] = None + Owner: Optional[str] = None + Description: Optional[str] = None + ImageId: Optional[str] = None + RootStorage: Optional[RootStorageTypeDef] = None + UserStorage: Optional[UserStorageTypeDef] = None + ComputeType: Optional[ComputeTypeTypeDef] = None + LastUpdatedTime: Optional[datetime] = None + CreationTime: Optional[datetime] = None + State: Optional[WorkspaceBundleStateType] = None + BundleType: Optional[BundleTypeType] = None + +class CreateWorkspaceImageResultTypeDef(BaseModel): + ImageId: str + Name: str + Description: str + OperatingSystem: OperatingSystemTypeDef + State: WorkspaceImageStateType + RequiredTenancy: WorkspaceImageRequiredTenancyType + Created: datetime + OwnerAccountId: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkspacesPoolRequestRequestTypeDef(BaseModel): + PoolName: str + Description: str + BundleId: str + DirectoryId: str + Capacity: CapacityTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + ApplicationSettings: Optional[ApplicationSettingsRequestTypeDef] = None + TimeoutSettings: Optional[TimeoutSettingsTypeDef] = None + +class UpdateWorkspacesPoolRequestRequestTypeDef(BaseModel): + PoolId: str + Description: Optional[str] = None + BundleId: Optional[str] = None + DirectoryId: Optional[str] = None + Capacity: Optional[CapacityTypeDef] = None + ApplicationSettings: Optional[ApplicationSettingsRequestTypeDef] = None + TimeoutSettings: Optional[TimeoutSettingsTypeDef] = None + +class DescribeAccountModificationsRequestDescribeAccountModificationsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeIpGroupsRequestDescribeIpGroupsPaginateTypeDef(BaseModel): + GroupIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeWorkspaceBundlesRequestDescribeWorkspaceBundlesPaginateTypeDef(BaseModel): + BundleIds: Optional[Sequence[str]] = None + Owner: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeWorkspaceDirectoriesRequestDescribeWorkspaceDirectoriesPaginateTypeDef(BaseModel): + DirectoryIds: Optional[Sequence[str]] = None + WorkspaceDirectoryNames: Optional[Sequence[str]] = None + Limit: Optional[int] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeWorkspaceImagesRequestDescribeWorkspaceImagesPaginateTypeDef(BaseModel): + ImageIds: Optional[Sequence[str]] = None + ImageType: Optional[ImageTypeType] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeWorkspacesConnectionStatusRequestDescribeWorkspacesConnectionStatusPaginateTypeDef(BaseModel): + WorkspaceIds: Optional[Sequence[str]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeWorkspacesRequestDescribeWorkspacesPaginateTypeDef(BaseModel): + WorkspaceIds: Optional[Sequence[str]] = None + DirectoryId: Optional[str] = None + UserName: Optional[str] = None + BundleId: Optional[str] = None + WorkspaceName: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListAccountLinksRequestListAccountLinksPaginateTypeDef(BaseModel): + LinkStatusFilter: Optional[Sequence[AccountLinkStatusEnumType]] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class DescribeApplicationsResultTypeDef(BaseModel): + Applications: List[WorkSpaceApplicationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeClientBrandingResultTypeDef(BaseModel): + DeviceTypeWindows: DefaultClientBrandingAttributesTypeDef + DeviceTypeOsx: DefaultClientBrandingAttributesTypeDef + DeviceTypeAndroid: DefaultClientBrandingAttributesTypeDef + DeviceTypeIos: IosClientBrandingAttributesTypeDef + DeviceTypeLinux: DefaultClientBrandingAttributesTypeDef + DeviceTypeWeb: DefaultClientBrandingAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ImportClientBrandingResultTypeDef(BaseModel): + DeviceTypeWindows: DefaultClientBrandingAttributesTypeDef + DeviceTypeOsx: DefaultClientBrandingAttributesTypeDef + DeviceTypeAndroid: DefaultClientBrandingAttributesTypeDef + DeviceTypeIos: IosClientBrandingAttributesTypeDef + DeviceTypeLinux: DefaultClientBrandingAttributesTypeDef + DeviceTypeWeb: DefaultClientBrandingAttributesTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspaceImagePermissionsResultTypeDef(BaseModel): + ImageId: str + ImagePermissions: List[ImagePermissionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeWorkspaceSnapshotsResultTypeDef(BaseModel): + RebuildSnapshots: List[SnapshotTypeDef] + RestoreSnapshots: List[SnapshotTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspacesConnectionStatusResultTypeDef(BaseModel): + WorkspacesConnectionStatus: List[WorkspaceConnectionStatusTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeWorkspacesPoolsRequestRequestTypeDef(BaseModel): + PoolIds: Optional[Sequence[str]] = None + Filters: Optional[Sequence[DescribeWorkspacesPoolsFilterTypeDef]] = None + Limit: Optional[int] = None + NextToken: Optional[str] = None + +class RebootWorkspacesResultTypeDef(BaseModel): + FailedRequests: List[FailedWorkspaceChangeRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class RebuildWorkspacesResultTypeDef(BaseModel): + FailedRequests: List[FailedWorkspaceChangeRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StartWorkspacesResultTypeDef(BaseModel): + FailedRequests: List[FailedWorkspaceChangeRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class StopWorkspacesResultTypeDef(BaseModel): + FailedRequests: List[FailedWorkspaceChangeRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TerminateWorkspacesResultTypeDef(BaseModel): + FailedRequests: List[FailedWorkspaceChangeRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ModifySamlPropertiesRequestRequestTypeDef(BaseModel): + ResourceId: str + SamlProperties: Optional[SamlPropertiesTypeDef] = None + PropertiesToDelete: Optional[Sequence[DeletableSamlPropertyType]] = None + +class ModifySelfservicePermissionsRequestRequestTypeDef(BaseModel): + ResourceId: str + SelfservicePermissions: SelfservicePermissionsTypeDef + +class ModifyWorkspaceAccessPropertiesRequestRequestTypeDef(BaseModel): + ResourceId: str + WorkspaceAccessProperties: WorkspaceAccessPropertiesTypeDef + +class ModifyWorkspaceCreationPropertiesRequestRequestTypeDef(BaseModel): + ResourceId: str + WorkspaceCreationProperties: WorkspaceCreationPropertiesTypeDef + +class ModifyWorkspacePropertiesRequestRequestTypeDef(BaseModel): + WorkspaceId: str + WorkspaceProperties: Optional[WorkspacePropertiesTypeDef] = None + DataReplication: Optional[DataReplicationType] = None + +class WorkspaceRequestTypeDef(BaseModel): + DirectoryId: str + UserName: str + BundleId: str + VolumeEncryptionKey: Optional[str] = None + UserVolumeEncryptionEnabled: Optional[bool] = None + RootVolumeEncryptionEnabled: Optional[bool] = None + WorkspaceProperties: Optional[WorkspacePropertiesTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + WorkspaceName: Optional[str] = None + +class WorkspacesPoolSessionTypeDef(BaseModel): + SessionId: str + PoolId: str + UserId: str + AuthenticationType: Optional[Literal["SAML"]] = None + ConnectionState: Optional[SessionConnectionStateType] = None + InstanceId: Optional[str] = None + ExpirationTime: Optional[datetime] = None + NetworkAccessConfiguration: Optional[NetworkAccessConfigurationTypeDef] = None + StartTime: Optional[datetime] = None + +class RebootWorkspacesRequestRequestTypeDef(BaseModel): + RebootWorkspaceRequests: Sequence[RebootRequestTypeDef] + +class RebuildWorkspacesRequestRequestTypeDef(BaseModel): + RebuildWorkspaceRequests: Sequence[RebuildRequestTypeDef] + +class StartWorkspacesRequestRequestTypeDef(BaseModel): + StartWorkspaceRequests: Sequence[StartRequestTypeDef] + +class StopWorkspacesRequestRequestTypeDef(BaseModel): + StopWorkspaceRequests: Sequence[StopRequestTypeDef] + +class StreamingPropertiesExtraOutputTypeDef(BaseModel): + StreamingExperiencePreferredProtocol: Optional[ StreamingExperiencePreferredProtocolEnumType ] = None + UserSettings: Optional[List[UserSettingTypeDef]] = None + StorageConnectors: Optional[List[StorageConnectorTypeDef]] = None + +class StreamingPropertiesOutputTypeDef(BaseModel): + StreamingExperiencePreferredProtocol: Optional[ StreamingExperiencePreferredProtocolEnumType ] = None + UserSettings: Optional[List[UserSettingTypeDef]] = None + StorageConnectors: Optional[List[StorageConnectorTypeDef]] = None + +class StreamingPropertiesTypeDef(BaseModel): + StreamingExperiencePreferredProtocol: Optional[ StreamingExperiencePreferredProtocolEnumType ] = None + UserSettings: Optional[Sequence[UserSettingTypeDef]] = None + StorageConnectors: Optional[Sequence[StorageConnectorTypeDef]] = None + +class TerminateWorkspacesRequestRequestTypeDef(BaseModel): + TerminateWorkspaceRequests: Sequence[TerminateRequestTypeDef] + +class WorkspaceImageTypeDef(BaseModel): + ImageId: Optional[str] = None + Name: Optional[str] = None + Description: Optional[str] = None + OperatingSystem: Optional[OperatingSystemTypeDef] = None + State: Optional[WorkspaceImageStateType] = None + RequiredTenancy: Optional[WorkspaceImageRequiredTenancyType] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + Created: Optional[datetime] = None + OwnerAccountId: Optional[str] = None + Updates: Optional[UpdateResultTypeDef] = None + ErrorDetails: Optional[List[ErrorDetailsTypeDef]] = None + +class WorkspaceRequestOutputTypeDef(BaseModel): + DirectoryId: str + UserName: str + BundleId: str + VolumeEncryptionKey: Optional[str] = None + UserVolumeEncryptionEnabled: Optional[bool] = None + RootVolumeEncryptionEnabled: Optional[bool] = None + WorkspaceProperties: Optional[WorkspacePropertiesOutputTypeDef] = None + Tags: Optional[List[TagTypeDef]] = None + WorkspaceName: Optional[str] = None + +class WorkspaceTypeDef(BaseModel): + WorkspaceId: Optional[str] = None + DirectoryId: Optional[str] = None + UserName: Optional[str] = None + IpAddress: Optional[str] = None + State: Optional[WorkspaceStateType] = None + BundleId: Optional[str] = None + SubnetId: Optional[str] = None + ErrorMessage: Optional[str] = None + ErrorCode: Optional[str] = None + ComputerName: Optional[str] = None + VolumeEncryptionKey: Optional[str] = None + UserVolumeEncryptionEnabled: Optional[bool] = None + RootVolumeEncryptionEnabled: Optional[bool] = None + WorkspaceName: Optional[str] = None + WorkspaceProperties: Optional[WorkspacePropertiesOutputTypeDef] = None + ModificationStates: Optional[List[ModificationStateTypeDef]] = None + RelatedWorkspaces: Optional[List[RelatedWorkspacePropertiesTypeDef]] = None + DataReplicationSettings: Optional[DataReplicationSettingsTypeDef] = None + StandbyWorkspacesProperties: Optional[List[StandbyWorkspacesPropertiesTypeDef]] = None + +class WorkspacesPoolTypeDef(BaseModel): + PoolId: str + PoolArn: str + CapacityStatus: CapacityStatusTypeDef + PoolName: str + State: WorkspacesPoolStateType + CreatedAt: datetime + BundleId: str + DirectoryId: str + Description: Optional[str] = None + Errors: Optional[List[WorkspacesPoolErrorTypeDef]] = None + ApplicationSettings: Optional[ApplicationSettingsResponseTypeDef] = None + TimeoutSettings: Optional[TimeoutSettingsTypeDef] = None + +class DescribeApplicationAssociationsResultTypeDef(BaseModel): + Associations: List[ApplicationResourceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeBundleAssociationsResultTypeDef(BaseModel): + Associations: List[BundleResourceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeImageAssociationsResultTypeDef(BaseModel): + Associations: List[ImageResourceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateWorkspaceApplicationResultTypeDef(BaseModel): + Association: WorkspaceResourceAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspaceAssociationsResultTypeDef(BaseModel): + Associations: List[WorkspaceResourceAssociationTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DisassociateWorkspaceApplicationResultTypeDef(BaseModel): + Association: WorkspaceResourceAssociationTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class WorkSpaceApplicationDeploymentTypeDef(BaseModel): + Associations: Optional[List[WorkspaceResourceAssociationTypeDef]] = None + +class DescribeIpGroupsResultTypeDef(BaseModel): + Result: List[WorkspacesIpGroupTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class ImportClientBrandingRequestRequestTypeDef(BaseModel): + ResourceId: str + DeviceTypeWindows: Optional[DefaultImportClientBrandingAttributesTypeDef] = None + DeviceTypeOsx: Optional[DefaultImportClientBrandingAttributesTypeDef] = None + DeviceTypeAndroid: Optional[DefaultImportClientBrandingAttributesTypeDef] = None + DeviceTypeIos: Optional[IosImportClientBrandingAttributesTypeDef] = None + DeviceTypeLinux: Optional[DefaultImportClientBrandingAttributesTypeDef] = None + DeviceTypeWeb: Optional[DefaultImportClientBrandingAttributesTypeDef] = None + +class DescribeClientPropertiesResultTypeDef(BaseModel): + ClientPropertiesList: List[ClientPropertiesResultTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeConnectionAliasesResultTypeDef(BaseModel): + ConnectionAliases: List[ConnectionAliasTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FailedCreateStandbyWorkspacesRequestTypeDef(BaseModel): + StandbyWorkspaceRequest: Optional[StandbyWorkspaceOutputTypeDef] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class CreateWorkspaceBundleResultTypeDef(BaseModel): + WorkspaceBundle: WorkspaceBundleTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspaceBundlesResultTypeDef(BaseModel): + Bundles: List[WorkspaceBundleTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class DescribeWorkspacesPoolSessionsResultTypeDef(BaseModel): + Sessions: List[WorkspacesPoolSessionTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class WorkspaceDirectoryTypeDef(BaseModel): + DirectoryId: Optional[str] = None + Alias: Optional[str] = None + DirectoryName: Optional[str] = None + RegistrationCode: Optional[str] = None + SubnetIds: Optional[List[str]] = None + DnsIpAddresses: Optional[List[str]] = None + CustomerUserName: Optional[str] = None + IamRoleId: Optional[str] = None + DirectoryType: Optional[WorkspaceDirectoryTypeType] = None + WorkspaceSecurityGroupId: Optional[str] = None + State: Optional[WorkspaceDirectoryStateType] = None + WorkspaceCreationProperties: Optional[DefaultWorkspaceCreationPropertiesTypeDef] = None + ipGroupIds: Optional[List[str]] = None + WorkspaceAccessProperties: Optional[WorkspaceAccessPropertiesTypeDef] = None + Tenancy: Optional[TenancyType] = None + SelfservicePermissions: Optional[SelfservicePermissionsTypeDef] = None + SamlProperties: Optional[SamlPropertiesTypeDef] = None + CertificateBasedAuthProperties: Optional[CertificateBasedAuthPropertiesTypeDef] = None + WorkspaceDirectoryName: Optional[str] = None + WorkspaceDirectoryDescription: Optional[str] = None + UserIdentityType: Optional[UserIdentityTypeType] = None + WorkspaceType: Optional[WorkspaceTypeType] = None + ActiveDirectoryConfig: Optional[ActiveDirectoryConfigTypeDef] = None + StreamingProperties: Optional[StreamingPropertiesOutputTypeDef] = None + ErrorMessage: Optional[str] = None + +class ModifyStreamingPropertiesRequestRequestTypeDef(BaseModel): + ResourceId: str + StreamingProperties: Optional[StreamingPropertiesTypeDef] = None + +class DescribeWorkspaceImagesResultTypeDef(BaseModel): + Images: List[WorkspaceImageTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class FailedCreateWorkspaceRequestTypeDef(BaseModel): + WorkspaceRequest: Optional[WorkspaceRequestOutputTypeDef] = None + ErrorCode: Optional[str] = None + ErrorMessage: Optional[str] = None + +class DescribeWorkspacesResultTypeDef(BaseModel): + Workspaces: List[WorkspaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateWorkspacesPoolResultTypeDef(BaseModel): + WorkspacesPool: WorkspacesPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DescribeWorkspacesPoolsResultTypeDef(BaseModel): + WorkspacesPools: List[WorkspacesPoolTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class UpdateWorkspacesPoolResultTypeDef(BaseModel): + WorkspacesPool: WorkspacesPoolTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeployWorkspaceApplicationsResultTypeDef(BaseModel): + Deployment: WorkSpaceApplicationDeploymentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStandbyWorkspacesResultTypeDef(BaseModel): + FailedStandbyRequests: List[FailedCreateStandbyWorkspacesRequestTypeDef] + PendingStandbyRequests: List[PendingCreateStandbyWorkspacesRequestTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateStandbyWorkspacesRequestRequestTypeDef(BaseModel): + PrimaryRegion: str + StandbyWorkspaces: Sequence[StandbyWorkspaceUnionTypeDef] + +class DescribeWorkspaceDirectoriesResultTypeDef(BaseModel): + Directories: List[WorkspaceDirectoryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + NextToken: Optional[str] = None + +class CreateWorkspacesResultTypeDef(BaseModel): + FailedRequests: List[FailedCreateWorkspaceRequestTypeDef] + PendingRequests: List[WorkspaceTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class CreateWorkspacesRequestRequestTypeDef(BaseModel): + Workspaces: Sequence[WorkspaceRequestUnionTypeDef] + diff --git a/aws_resource_validator/pydantic_models/workspaces_constants.py b/aws_resource_validator/pydantic_models/workspaces_constants.py new file mode 100644 index 00000000..d36874ce --- /dev/null +++ b/aws_resource_validator/pydantic_models/workspaces_constants.py @@ -0,0 +1,625 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AccessPropertyValueType = Literal["ALLOW", "DENY"] +AccountLinkStatusEnumType = Literal["LINKED", "LINKING_FAILED", "LINK_NOT_FOUND", "PENDING_ACCEPTANCE_BY_TARGET_ACCOUNT", "REJECTED"] +ApplicationAssociatedResourceTypeType = Literal["BUNDLE", "IMAGE", "WORKSPACE"] +ApplicationSettingsStatusEnumType = Literal["DISABLED", "ENABLED"] +ApplicationType = Literal["Microsoft_Office_2016", "Microsoft_Office_2019"] +AssociationErrorCodeType = Literal["DeploymentError.InternalServerError", + "DeploymentError.WorkspaceUnreachable", + "ValidationError.InsufficientDiskSpace", + "ValidationError.InsufficientMemory", + "ValidationError.UnsupportedOperatingSystem",] +AssociationStateType = Literal["COMPLETED", + "ERROR", + "INSTALLING", + "PENDING_INSTALL", + "PENDING_INSTALL_DEPLOYMENT", + "PENDING_UNINSTALL", + "PENDING_UNINSTALL_DEPLOYMENT", + "REMOVED", + "UNINSTALLING",] +AssociationStatusType = Literal["ASSOCIATED_WITH_OWNER_ACCOUNT", + "ASSOCIATED_WITH_SHARED_ACCOUNT", + "NOT_ASSOCIATED", + "PENDING_ASSOCIATION", + "PENDING_DISASSOCIATION",] +AuthenticationTypeType = Literal["SAML"] +BundleAssociatedResourceTypeType = Literal["APPLICATION"] +BundleTypeType = Literal["REGULAR", "STANDBY"] +CertificateBasedAuthStatusEnumType = Literal["DISABLED", "ENABLED"] +ClientDeviceTypeType = Literal["DeviceTypeAndroid", + "DeviceTypeIos", + "DeviceTypeLinux", + "DeviceTypeOsx", + "DeviceTypeWeb", + "DeviceTypeWindows",] +ComputeType = Literal["GRAPHICS", + "GRAPHICSPRO", + "GRAPHICSPRO_G4DN", + "GRAPHICS_G4DN", + "PERFORMANCE", + "POWER", + "POWERPRO", + "STANDARD", + "VALUE",] +ConnectionAliasStateType = Literal["CREATED", "CREATING", "DELETING"] +ConnectionStateType = Literal["CONNECTED", "DISCONNECTED", "UNKNOWN"] +DataReplicationType = Literal["NO_REPLICATION", "PRIMARY_AS_SOURCE"] +DedicatedTenancyAccountTypeType = Literal["SOURCE_ACCOUNT", "TARGET_ACCOUNT"] +DedicatedTenancyModificationStateEnumType = Literal["COMPLETED", "FAILED", "PENDING"] +DedicatedTenancySupportEnumType = Literal["ENABLED"] +DedicatedTenancySupportResultEnumType = Literal["DISABLED", "ENABLED"] +DeletableCertificateBasedAuthPropertyType = Literal["CERTIFICATE_BASED_AUTH_PROPERTIES_CERTIFICATE_AUTHORITY_ARN"] +DeletableSamlPropertyType = Literal["SAML_PROPERTIES_RELAY_STATE_PARAMETER_NAME", "SAML_PROPERTIES_USER_ACCESS_URL"] +DescribeAccountModificationsPaginatorName = Literal["describe_account_modifications"] +DescribeIpGroupsPaginatorName = Literal["describe_ip_groups"] +DescribeWorkspaceBundlesPaginatorName = Literal["describe_workspace_bundles"] +DescribeWorkspaceDirectoriesPaginatorName = Literal["describe_workspace_directories"] +DescribeWorkspaceImagesPaginatorName = Literal["describe_workspace_images"] +DescribeWorkspacesConnectionStatusPaginatorName = Literal["describe_workspaces_connection_status"] +DescribeWorkspacesPaginatorName = Literal["describe_workspaces"] +DescribeWorkspacesPoolsFilterNameType = Literal["PoolName"] +DescribeWorkspacesPoolsFilterOperatorType = Literal["CONTAINS", "EQUALS", "NOTCONTAINS", "NOTEQUALS"] +ImageAssociatedResourceTypeType = Literal["APPLICATION"] +ImageTypeType = Literal["OWNED", "SHARED"] +ListAccountLinksPaginatorName = Literal["list_account_links"] +ListAvailableManagementCidrRangesPaginatorName = Literal["list_available_management_cidr_ranges"] +LogUploadEnumType = Literal["DISABLED", "ENABLED"] +ModificationResourceEnumType = Literal["COMPUTE_TYPE", "ROOT_VOLUME", "USER_VOLUME"] +ModificationStateEnumType = Literal["UPDATE_INITIATED", "UPDATE_IN_PROGRESS"] +OperatingSystemNameType = Literal["AMAZON_LINUX_2", + "RHEL_8", + "UBUNTU_18_04", + "UBUNTU_20_04", + "UBUNTU_22_04", + "UNKNOWN", + "WINDOWS_10", + "WINDOWS_11", + "WINDOWS_7", + "WINDOWS_SERVER_2016", + "WINDOWS_SERVER_2019", + "WINDOWS_SERVER_2022",] +OperatingSystemTypeType = Literal["LINUX", "WINDOWS"] +ProtocolType = Literal["PCOIP", "WSP"] +ReconnectEnumType = Literal["DISABLED", "ENABLED"] +RunningModeType = Literal["ALWAYS_ON", "AUTO_STOP", "MANUAL"] +SamlStatusEnumType = Literal["DISABLED", "ENABLED", "ENABLED_WITH_DIRECTORY_LOGIN_FALLBACK"] +SessionConnectionStateType = Literal["CONNECTED", "NOT_CONNECTED"] +StandbyWorkspaceRelationshipTypeType = Literal["PRIMARY", "STANDBY"] +StorageConnectorStatusEnumType = Literal["DISABLED", "ENABLED"] +StorageConnectorTypeEnumType = Literal["HOME_FOLDER"] +StreamingExperiencePreferredProtocolEnumType = Literal["TCP", "UDP"] +TargetWorkspaceStateType = Literal["ADMIN_MAINTENANCE", "AVAILABLE"] +TenancyType = Literal["DEDICATED", "SHARED"] +UserIdentityTypeType = Literal["AWS_DIRECTORY_SERVICE", "CUSTOMER_MANAGED"] +UserSettingActionEnumType = Literal["CLIPBOARD_COPY_FROM_LOCAL_DEVICE", + "CLIPBOARD_COPY_TO_LOCAL_DEVICE", + "PRINTING_TO_LOCAL_DEVICE", + "SMART_CARD",] +UserSettingPermissionEnumType = Literal["DISABLED", "ENABLED"] +WorkSpaceApplicationLicenseTypeType = Literal["LICENSED", "UNLICENSED"] +WorkSpaceApplicationStateType = Literal["AVAILABLE", "ERROR", "PENDING", "UNINSTALL_ONLY"] +WorkSpaceAssociatedResourceTypeType = Literal["APPLICATION"] +WorkspaceBundleStateType = Literal["AVAILABLE", "ERROR", "PENDING"] +WorkspaceDirectoryStateType = Literal["DEREGISTERED", "DEREGISTERING", "ERROR", "REGISTERED", "REGISTERING"] +WorkspaceDirectoryTypeType = Literal["AD_CONNECTOR", "CUSTOMER_MANAGED", "SIMPLE_AD"] +WorkspaceImageErrorDetailCodeType = Literal["AdditionalDrivesAttached", + "AntiVirusInstalled", + "AutoLogonEnabled", + "AutoMountDisabled", + "AzureDomainJoined", + "DHCPDisabled", + "DiskFreeSpace", + "DiskSizeExceeded", + "DomainJoined", + "FirewallEnabled", + "InPlaceUpgrade", + "IncompatiblePartitioning", + "MultipleBootPartition", + "OSNotSupported", + "OfficeInstalled", + "OutdatedPowershellVersion", + "PCoIPAgentInstalled", + "PendingReboot", + "RealTimeUniversalDisabled", + "Requires64BitOS", + "UEFINotSupported", + "VMWareToolsInstalled", + "WindowsUpdatesEnabled", + "WorkspacesBYOLAccountDisabled", + "WorkspacesBYOLAccountNotFound", + "ZeroRearmCount",] +WorkspaceImageIngestionProcessType = Literal["BYOL_GRAPHICS", + "BYOL_GRAPHICSPRO", + "BYOL_GRAPHICS_G4DN", + "BYOL_GRAPHICS_G4DN_BYOP", + "BYOL_REGULAR", + "BYOL_REGULAR_BYOP", + "BYOL_REGULAR_WSP",] +WorkspaceImageRequiredTenancyType = Literal["DEDICATED", "DEFAULT"] +WorkspaceImageStateType = Literal["AVAILABLE", "ERROR", "PENDING"] +WorkspaceStateType = Literal["ADMIN_MAINTENANCE", + "AVAILABLE", + "ERROR", + "IMPAIRED", + "MAINTENANCE", + "PENDING", + "REBOOTING", + "REBUILDING", + "RESTORING", + "STARTING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "TERMINATED", + "TERMINATING", + "UNHEALTHY", + "UPDATING",] +WorkspaceTypeType = Literal["PERSONAL", "POOLS"] +WorkspacesPoolErrorCodeType = Literal["BUNDLE_NOT_FOUND", + "DEFAULT_OU_IS_MISSING", + "DIRECTORY_NOT_FOUND", + "DOMAIN_JOIN_ERROR_ACCESS_DENIED", + "DOMAIN_JOIN_ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED", + "DOMAIN_JOIN_ERROR_FILE_NOT_FOUND", + "DOMAIN_JOIN_ERROR_INVALID_PARAMETER", + "DOMAIN_JOIN_ERROR_LOGON_FAILURE", + "DOMAIN_JOIN_ERROR_MORE_DATA", + "DOMAIN_JOIN_ERROR_NOT_SUPPORTED", + "DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN", + "DOMAIN_JOIN_ERROR_SECRET_ACTION_PERMISSION_IS_MISSING", + "DOMAIN_JOIN_ERROR_SECRET_DECRYPTION_FAILURE", + "DOMAIN_JOIN_ERROR_SECRET_INVALID", + "DOMAIN_JOIN_ERROR_SECRET_NOT_FOUND", + "DOMAIN_JOIN_ERROR_SECRET_STATE_INVALID", + "DOMAIN_JOIN_ERROR_SECRET_VALUE_KEY_NOT_FOUND", + "DOMAIN_JOIN_INTERNAL_SERVICE_ERROR", + "DOMAIN_JOIN_NERR_INVALID_WORKGROUP_NAME", + "DOMAIN_JOIN_NERR_PASSWORD_EXPIRED", + "DOMAIN_JOIN_NERR_WORKSTATION_NOT_STARTED", + "IAM_SERVICE_ROLE_IS_MISSING", + "IAM_SERVICE_ROLE_MISSING_DESCRIBE_SECURITY_GROUPS_ACTION", + "IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION", + "IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION", + "IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION", + "IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION", + "IGW_NOT_ATTACHED", + "IMAGE_NOT_FOUND", + "INSUFFICIENT_PERMISSIONS_ERROR", + "INTERNAL_SERVICE_ERROR", + "INVALID_SUBNET_CONFIGURATION", + "MACHINE_ROLE_IS_MISSING", + "NETWORK_INTERFACE_LIMIT_EXCEEDED", + "SECURITY_GROUPS_NOT_FOUND", + "STS_DISABLED_IN_REGION", + "SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES", + "SUBNET_NOT_FOUND", + "WORKSPACES_POOL_INSTANCE_PROVISIONING_FAILURE", + "WORKSPACES_POOL_STOPPED",] +WorkspacesPoolStateType = Literal["CREATING", "DELETING", "RUNNING", "STARTING", "STOPPED", "STOPPING", "UPDATING"] +WorkSpacesServiceName = Literal["workspaces"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["describe_account_modifications", + "describe_ip_groups", + "describe_workspace_bundles", + "describe_workspace_directories", + "describe_workspace_images", + "describe_workspaces", + "describe_workspaces_connection_status", + "list_account_links", + "list_available_management_cidr_ranges",] +RegionName = Literal["af-south-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "il-central-1", + "sa-east-1", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +WorkspacePropertiesUnionTypeDef = Union[ 'WorkspacePropertiesTypeDef', 'WorkspacePropertiesExtraOutputTypeDef' ] +StandbyWorkspaceUnionTypeDef = Union['StandbyWorkspaceTypeDef', 'StandbyWorkspaceOutputTypeDef'] +StreamingPropertiesUnionTypeDef = Union[ 'StreamingPropertiesTypeDef', 'StreamingPropertiesExtraOutputTypeDef' ] +WorkspaceRequestUnionTypeDef = Union['WorkspaceRequestTypeDef', 'WorkspaceRequestOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/workspaces_thin_client_classes.py b/aws_resource_validator/pydantic_models/workspaces_thin_client_classes.py new file mode 100644 index 00000000..3c282237 --- /dev/null +++ b/aws_resource_validator/pydantic_models/workspaces_thin_client_classes.py @@ -0,0 +1,283 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.workspaces_thin_client_constants import * + +class MaintenanceWindowTypeDef(BaseModel): + type: Optional[MaintenanceWindowTypeType] = None + startTimeHour: Optional[int] = None + startTimeMinute: Optional[int] = None + endTimeHour: Optional[int] = None + endTimeMinute: Optional[int] = None + daysOfTheWeek: Optional[Sequence[DayOfWeekType]] = None + applyTimeOf: Optional[ApplyTimeOfType] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class DeleteDeviceRequestRequestTypeDef(BaseModel): + id: str + clientToken: Optional[str] = None + +class DeleteEnvironmentRequestRequestTypeDef(BaseModel): + id: str + clientToken: Optional[str] = None + +class DeregisterDeviceRequestRequestTypeDef(BaseModel): + id: str + targetDeviceStatus: Optional[TargetDeviceStatusType] = None + clientToken: Optional[str] = None + +class DeviceSummaryTypeDef(BaseModel): + id: Optional[str] = None + serialNumber: Optional[str] = None + name: Optional[str] = None + model: Optional[str] = None + environmentId: Optional[str] = None + status: Optional[DeviceStatusType] = None + currentSoftwareSetId: Optional[str] = None + desiredSoftwareSetId: Optional[str] = None + pendingSoftwareSetId: Optional[str] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + lastConnectedAt: Optional[datetime] = None + lastPostureAt: Optional[datetime] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + arn: Optional[str] = None + +class DeviceTypeDef(BaseModel): + id: Optional[str] = None + serialNumber: Optional[str] = None + name: Optional[str] = None + model: Optional[str] = None + environmentId: Optional[str] = None + status: Optional[DeviceStatusType] = None + currentSoftwareSetId: Optional[str] = None + currentSoftwareSetVersion: Optional[str] = None + desiredSoftwareSetId: Optional[str] = None + pendingSoftwareSetId: Optional[str] = None + pendingSoftwareSetVersion: Optional[str] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + softwareSetComplianceStatus: Optional[DeviceSoftwareSetComplianceStatusType] = None + softwareSetUpdateStatus: Optional[SoftwareSetUpdateStatusType] = None + lastConnectedAt: Optional[datetime] = None + lastPostureAt: Optional[datetime] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + arn: Optional[str] = None + kmsKeyArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class MaintenanceWindowOutputTypeDef(BaseModel): + type: Optional[MaintenanceWindowTypeType] = None + startTimeHour: Optional[int] = None + startTimeMinute: Optional[int] = None + endTimeHour: Optional[int] = None + endTimeMinute: Optional[int] = None + daysOfTheWeek: Optional[List[DayOfWeekType]] = None + applyTimeOf: Optional[ApplyTimeOfType] = None + +class GetDeviceRequestRequestTypeDef(BaseModel): + id: str + +class GetEnvironmentRequestRequestTypeDef(BaseModel): + id: str + +class GetSoftwareSetRequestRequestTypeDef(BaseModel): + id: str + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class ListDevicesRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListEnvironmentsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class ListSoftwareSetsRequestRequestTypeDef(BaseModel): + nextToken: Optional[str] = None + maxResults: Optional[int] = None + +class SoftwareSetSummaryTypeDef(BaseModel): + id: Optional[str] = None + version: Optional[str] = None + releasedAt: Optional[datetime] = None + supportedUntil: Optional[datetime] = None + validationStatus: Optional[SoftwareSetValidationStatusType] = None + arn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class MaintenanceWindowExtraOutputTypeDef(BaseModel): + type: Optional[MaintenanceWindowTypeType] = None + startTimeHour: Optional[int] = None + startTimeMinute: Optional[int] = None + endTimeHour: Optional[int] = None + endTimeMinute: Optional[int] = None + daysOfTheWeek: Optional[List[DayOfWeekType]] = None + applyTimeOf: Optional[ApplyTimeOfType] = None + +class SoftwareTypeDef(BaseModel): + name: Optional[str] = None + version: Optional[str] = None + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Mapping[str, str] + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateDeviceRequestRequestTypeDef(BaseModel): + id: str + name: Optional[str] = None + desiredSoftwareSetId: Optional[str] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + +class UpdateSoftwareSetRequestRequestTypeDef(BaseModel): + id: str + validationStatus: SoftwareSetValidationStatusType + +class CreateEnvironmentRequestRequestTypeDef(BaseModel): + desktopArn: str + name: Optional[str] = None + desktopEndpoint: Optional[str] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + maintenanceWindow: Optional[MaintenanceWindowTypeDef] = None + softwareSetUpdateMode: Optional[SoftwareSetUpdateModeType] = None + desiredSoftwareSetId: Optional[str] = None + kmsKeyArn: Optional[str] = None + clientToken: Optional[str] = None + tags: Optional[Mapping[str, str]] = None + deviceCreationTags: Optional[Mapping[str, str]] = None + +class UpdateEnvironmentRequestRequestTypeDef(BaseModel): + id: str + name: Optional[str] = None + desktopArn: Optional[str] = None + desktopEndpoint: Optional[str] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + maintenanceWindow: Optional[MaintenanceWindowTypeDef] = None + softwareSetUpdateMode: Optional[SoftwareSetUpdateModeType] = None + desiredSoftwareSetId: Optional[str] = None + deviceCreationTags: Optional[Mapping[str, str]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: Dict[str, str] + ResponseMetadata: ResponseMetadataTypeDef + +class ListDevicesResponseTypeDef(BaseModel): + devices: List[DeviceSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateDeviceResponseTypeDef(BaseModel): + device: DeviceSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetDeviceResponseTypeDef(BaseModel): + device: DeviceTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EnvironmentSummaryTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + desktopArn: Optional[str] = None + desktopEndpoint: Optional[str] = None + desktopType: Optional[DesktopTypeType] = None + activationCode: Optional[str] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + maintenanceWindow: Optional[MaintenanceWindowOutputTypeDef] = None + softwareSetUpdateMode: Optional[SoftwareSetUpdateModeType] = None + desiredSoftwareSetId: Optional[str] = None + pendingSoftwareSetId: Optional[str] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + arn: Optional[str] = None + +class EnvironmentTypeDef(BaseModel): + id: Optional[str] = None + name: Optional[str] = None + desktopArn: Optional[str] = None + desktopEndpoint: Optional[str] = None + desktopType: Optional[DesktopTypeType] = None + activationCode: Optional[str] = None + registeredDevicesCount: Optional[int] = None + softwareSetUpdateSchedule: Optional[SoftwareSetUpdateScheduleType] = None + maintenanceWindow: Optional[MaintenanceWindowOutputTypeDef] = None + softwareSetUpdateMode: Optional[SoftwareSetUpdateModeType] = None + desiredSoftwareSetId: Optional[str] = None + pendingSoftwareSetId: Optional[str] = None + pendingSoftwareSetVersion: Optional[str] = None + softwareSetComplianceStatus: Optional[EnvironmentSoftwareSetComplianceStatusType] = None + createdAt: Optional[datetime] = None + updatedAt: Optional[datetime] = None + arn: Optional[str] = None + kmsKeyArn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + deviceCreationTags: Optional[Dict[str, str]] = None + +class ListDevicesRequestListDevicesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListEnvironmentsRequestListEnvironmentsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSoftwareSetsRequestListSoftwareSetsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListSoftwareSetsResponseTypeDef(BaseModel): + softwareSets: List[SoftwareSetSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class SoftwareSetTypeDef(BaseModel): + id: Optional[str] = None + version: Optional[str] = None + releasedAt: Optional[datetime] = None + supportedUntil: Optional[datetime] = None + validationStatus: Optional[SoftwareSetValidationStatusType] = None + software: Optional[List[SoftwareTypeDef]] = None + arn: Optional[str] = None + tags: Optional[Dict[str, str]] = None + +class CreateEnvironmentResponseTypeDef(BaseModel): + environment: EnvironmentSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListEnvironmentsResponseTypeDef(BaseModel): + environments: List[EnvironmentSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateEnvironmentResponseTypeDef(BaseModel): + environment: EnvironmentSummaryTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetEnvironmentResponseTypeDef(BaseModel): + environment: EnvironmentTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSoftwareSetResponseTypeDef(BaseModel): + softwareSet: SoftwareSetTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/workspaces_thin_client_constants.py b/aws_resource_validator/pydantic_models/workspaces_thin_client_constants.py new file mode 100644 index 00000000..b217d783 --- /dev/null +++ b/aws_resource_validator/pydantic_models/workspaces_thin_client_constants.py @@ -0,0 +1,417 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +ApplyTimeOfType = Literal["DEVICE", "UTC"] +DayOfWeekType = Literal["FRIDAY", "MONDAY", "SATURDAY", "SUNDAY", "THURSDAY", "TUESDAY", "WEDNESDAY"] +DesktopTypeType = Literal["appstream", "workspaces", "workspaces-web"] +DeviceSoftwareSetComplianceStatusType = Literal["COMPLIANT", "NONE", "NOT_COMPLIANT"] +DeviceStatusType = Literal["ARCHIVED", "DEREGISTERED", "DEREGISTERING", "REGISTERED"] +EnvironmentSoftwareSetComplianceStatusType = Literal["COMPLIANT", "NOT_COMPLIANT", "NO_REGISTERED_DEVICES"] +ListDevicesPaginatorName = Literal["list_devices"] +ListEnvironmentsPaginatorName = Literal["list_environments"] +ListSoftwareSetsPaginatorName = Literal["list_software_sets"] +MaintenanceWindowTypeType = Literal["CUSTOM", "SYSTEM"] +SoftwareSetUpdateModeType = Literal["USE_DESIRED", "USE_LATEST"] +SoftwareSetUpdateScheduleType = Literal["APPLY_IMMEDIATELY", "USE_MAINTENANCE_WINDOW"] +SoftwareSetUpdateStatusType = Literal["AVAILABLE", "IN_PROGRESS", "UP_TO_DATE"] +SoftwareSetValidationStatusType = Literal["NOT_VALIDATED", "VALIDATED"] +TargetDeviceStatusType = Literal["ARCHIVED", "DEREGISTERED"] +WorkSpacesThinClientServiceName = Literal["workspaces-thin-client"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["list_devices", "list_environments", "list_software_sets"] +RegionName = Literal["ap-south-1", "ca-central-1", "eu-central-1", "eu-west-1", "eu-west-2", "us-east-1", "us-west-2"] +MaintenanceWindowUnionTypeDef = Union['MaintenanceWindowTypeDef', 'MaintenanceWindowExtraOutputTypeDef'] diff --git a/aws_resource_validator/pydantic_models/workspaces_web_classes.py b/aws_resource_validator/pydantic_models/workspaces_web_classes.py new file mode 100644 index 00000000..2a274d4a --- /dev/null +++ b/aws_resource_validator/pydantic_models/workspaces_web_classes.py @@ -0,0 +1,643 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.workspaces_web_constants import * + +class AssociateBrowserSettingsRequestRequestTypeDef(BaseModel): + browserSettingsArn: str + portalArn: str + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + HostId: Optional[str] = None + +class AssociateIpAccessSettingsRequestRequestTypeDef(BaseModel): + ipAccessSettingsArn: str + portalArn: str + +class AssociateNetworkSettingsRequestRequestTypeDef(BaseModel): + networkSettingsArn: str + portalArn: str + +class AssociateTrustStoreRequestRequestTypeDef(BaseModel): + portalArn: str + trustStoreArn: str + +class AssociateUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + userAccessLoggingSettingsArn: str + +class AssociateUserSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + userSettingsArn: str + +class BrowserSettingsSummaryTypeDef(BaseModel): + browserSettingsArn: str + +class BrowserSettingsTypeDef(BaseModel): + browserSettingsArn: str + additionalEncryptionContext: Optional[Dict[str, str]] = None + associatedPortalArns: Optional[List[str]] = None + browserPolicy: Optional[str] = None + customerManagedKey: Optional[str] = None + +class CertificateSummaryTypeDef(BaseModel): + issuer: Optional[str] = None + notValidAfter: Optional[datetime] = None + notValidBefore: Optional[datetime] = None + subject: Optional[str] = None + thumbprint: Optional[str] = None + +class CertificateTypeDef(BaseModel): + body: Optional[bytes] = None + issuer: Optional[str] = None + notValidAfter: Optional[datetime] = None + notValidBefore: Optional[datetime] = None + subject: Optional[str] = None + thumbprint: Optional[str] = None + +class CookieSpecificationTypeDef(BaseModel): + domain: str + name: Optional[str] = None + path: Optional[str] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class IpRuleTypeDef(BaseModel): + ipRange: str + description: Optional[str] = None + +class DeleteBrowserSettingsRequestRequestTypeDef(BaseModel): + browserSettingsArn: str + +class DeleteIdentityProviderRequestRequestTypeDef(BaseModel): + identityProviderArn: str + +class DeleteIpAccessSettingsRequestRequestTypeDef(BaseModel): + ipAccessSettingsArn: str + +class DeleteNetworkSettingsRequestRequestTypeDef(BaseModel): + networkSettingsArn: str + +class DeletePortalRequestRequestTypeDef(BaseModel): + portalArn: str + +class DeleteTrustStoreRequestRequestTypeDef(BaseModel): + trustStoreArn: str + +class DeleteUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + userAccessLoggingSettingsArn: str + +class DeleteUserSettingsRequestRequestTypeDef(BaseModel): + userSettingsArn: str + +class DisassociateBrowserSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + +class DisassociateIpAccessSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + +class DisassociateNetworkSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + +class DisassociateTrustStoreRequestRequestTypeDef(BaseModel): + portalArn: str + +class DisassociateUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + +class DisassociateUserSettingsRequestRequestTypeDef(BaseModel): + portalArn: str + +class GetBrowserSettingsRequestRequestTypeDef(BaseModel): + browserSettingsArn: str + +class GetIdentityProviderRequestRequestTypeDef(BaseModel): + identityProviderArn: str + +class IdentityProviderTypeDef(BaseModel): + identityProviderArn: str + identityProviderDetails: Optional[Dict[str, str]] = None + identityProviderName: Optional[str] = None + identityProviderType: Optional[IdentityProviderTypeType] = None + +class GetIpAccessSettingsRequestRequestTypeDef(BaseModel): + ipAccessSettingsArn: str + +class GetNetworkSettingsRequestRequestTypeDef(BaseModel): + networkSettingsArn: str + +class NetworkSettingsTypeDef(BaseModel): + networkSettingsArn: str + associatedPortalArns: Optional[List[str]] = None + securityGroupIds: Optional[List[str]] = None + subnetIds: Optional[List[str]] = None + vpcId: Optional[str] = None + +class GetPortalRequestRequestTypeDef(BaseModel): + portalArn: str + +class PortalTypeDef(BaseModel): + portalArn: str + additionalEncryptionContext: Optional[Dict[str, str]] = None + authenticationType: Optional[AuthenticationTypeType] = None + browserSettingsArn: Optional[str] = None + browserType: Optional[Literal["Chrome"]] = None + creationDate: Optional[datetime] = None + customerManagedKey: Optional[str] = None + displayName: Optional[str] = None + instanceType: Optional[InstanceTypeType] = None + ipAccessSettingsArn: Optional[str] = None + maxConcurrentSessions: Optional[int] = None + networkSettingsArn: Optional[str] = None + portalEndpoint: Optional[str] = None + portalStatus: Optional[PortalStatusType] = None + rendererType: Optional[Literal["AppStream"]] = None + statusReason: Optional[str] = None + trustStoreArn: Optional[str] = None + userAccessLoggingSettingsArn: Optional[str] = None + userSettingsArn: Optional[str] = None + +class GetPortalServiceProviderMetadataRequestRequestTypeDef(BaseModel): + portalArn: str + +class GetTrustStoreCertificateRequestRequestTypeDef(BaseModel): + thumbprint: str + trustStoreArn: str + +class GetTrustStoreRequestRequestTypeDef(BaseModel): + trustStoreArn: str + +class TrustStoreTypeDef(BaseModel): + trustStoreArn: str + associatedPortalArns: Optional[List[str]] = None + +class GetUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + userAccessLoggingSettingsArn: str + +class UserAccessLoggingSettingsTypeDef(BaseModel): + userAccessLoggingSettingsArn: str + associatedPortalArns: Optional[List[str]] = None + kinesisStreamArn: Optional[str] = None + +class GetUserSettingsRequestRequestTypeDef(BaseModel): + userSettingsArn: str + +class IdentityProviderSummaryTypeDef(BaseModel): + identityProviderArn: str + identityProviderName: Optional[str] = None + identityProviderType: Optional[IdentityProviderTypeType] = None + +class IpAccessSettingsSummaryTypeDef(BaseModel): + ipAccessSettingsArn: str + creationDate: Optional[datetime] = None + description: Optional[str] = None + displayName: Optional[str] = None + +class ListBrowserSettingsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIdentityProvidersRequestRequestTypeDef(BaseModel): + portalArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListIpAccessSettingsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListNetworkSettingsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class NetworkSettingsSummaryTypeDef(BaseModel): + networkSettingsArn: str + vpcId: Optional[str] = None + +class ListPortalsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class PortalSummaryTypeDef(BaseModel): + portalArn: str + authenticationType: Optional[AuthenticationTypeType] = None + browserSettingsArn: Optional[str] = None + browserType: Optional[Literal["Chrome"]] = None + creationDate: Optional[datetime] = None + displayName: Optional[str] = None + instanceType: Optional[InstanceTypeType] = None + ipAccessSettingsArn: Optional[str] = None + maxConcurrentSessions: Optional[int] = None + networkSettingsArn: Optional[str] = None + portalEndpoint: Optional[str] = None + portalStatus: Optional[PortalStatusType] = None + rendererType: Optional[Literal["AppStream"]] = None + trustStoreArn: Optional[str] = None + userAccessLoggingSettingsArn: Optional[str] = None + userSettingsArn: Optional[str] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + +class ListTrustStoreCertificatesRequestRequestTypeDef(BaseModel): + trustStoreArn: str + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class ListTrustStoresRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class TrustStoreSummaryTypeDef(BaseModel): + trustStoreArn: Optional[str] = None + +class ListUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class UserAccessLoggingSettingsSummaryTypeDef(BaseModel): + userAccessLoggingSettingsArn: str + kinesisStreamArn: Optional[str] = None + +class ListUserSettingsRequestRequestTypeDef(BaseModel): + maxResults: Optional[int] = None + nextToken: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tagKeys: Sequence[str] + +class UpdateBrowserSettingsRequestRequestTypeDef(BaseModel): + browserSettingsArn: str + browserPolicy: Optional[str] = None + clientToken: Optional[str] = None + +class UpdateIdentityProviderRequestRequestTypeDef(BaseModel): + identityProviderArn: str + clientToken: Optional[str] = None + identityProviderDetails: Optional[Mapping[str, str]] = None + identityProviderName: Optional[str] = None + identityProviderType: Optional[IdentityProviderTypeType] = None + +class UpdateNetworkSettingsRequestRequestTypeDef(BaseModel): + networkSettingsArn: str + clientToken: Optional[str] = None + securityGroupIds: Optional[Sequence[str]] = None + subnetIds: Optional[Sequence[str]] = None + vpcId: Optional[str] = None + +class UpdatePortalRequestRequestTypeDef(BaseModel): + portalArn: str + authenticationType: Optional[AuthenticationTypeType] = None + displayName: Optional[str] = None + instanceType: Optional[InstanceTypeType] = None + maxConcurrentSessions: Optional[int] = None + +class UpdateUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + userAccessLoggingSettingsArn: str + clientToken: Optional[str] = None + kinesisStreamArn: Optional[str] = None + +class AssociateBrowserSettingsResponseTypeDef(BaseModel): + browserSettingsArn: str + portalArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateIpAccessSettingsResponseTypeDef(BaseModel): + ipAccessSettingsArn: str + portalArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateNetworkSettingsResponseTypeDef(BaseModel): + networkSettingsArn: str + portalArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateTrustStoreResponseTypeDef(BaseModel): + portalArn: str + trustStoreArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateUserAccessLoggingSettingsResponseTypeDef(BaseModel): + portalArn: str + userAccessLoggingSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class AssociateUserSettingsResponseTypeDef(BaseModel): + portalArn: str + userSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateBrowserSettingsResponseTypeDef(BaseModel): + browserSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIdentityProviderResponseTypeDef(BaseModel): + identityProviderArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateIpAccessSettingsResponseTypeDef(BaseModel): + ipAccessSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateNetworkSettingsResponseTypeDef(BaseModel): + networkSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreatePortalResponseTypeDef(BaseModel): + portalArn: str + portalEndpoint: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateTrustStoreResponseTypeDef(BaseModel): + trustStoreArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserAccessLoggingSettingsResponseTypeDef(BaseModel): + userAccessLoggingSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateUserSettingsResponseTypeDef(BaseModel): + userSettingsArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetPortalServiceProviderMetadataResponseTypeDef(BaseModel): + portalArn: str + serviceProviderSamlMetadata: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrustStoreResponseTypeDef(BaseModel): + trustStoreArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateTrustStoreRequestRequestTypeDef(BaseModel): + trustStoreArn: str + certificatesToAdd: Optional[Sequence[BlobTypeDef]] = None + certificatesToDelete: Optional[Sequence[str]] = None + clientToken: Optional[str] = None + +class ListBrowserSettingsResponseTypeDef(BaseModel): + browserSettings: List[BrowserSettingsSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetBrowserSettingsResponseTypeDef(BaseModel): + browserSettings: BrowserSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateBrowserSettingsResponseTypeDef(BaseModel): + browserSettings: BrowserSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrustStoreCertificatesResponseTypeDef(BaseModel): + certificateList: List[CertificateSummaryTypeDef] + nextToken: str + trustStoreArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrustStoreCertificateResponseTypeDef(BaseModel): + certificate: CertificateTypeDef + trustStoreArn: str + ResponseMetadata: ResponseMetadataTypeDef + +class CookieSynchronizationConfigurationOutputTypeDef(BaseModel): + allowlist: List[CookieSpecificationTypeDef] + blocklist: Optional[List[CookieSpecificationTypeDef]] = None + +class CookieSynchronizationConfigurationTypeDef(BaseModel): + allowlist: Sequence[CookieSpecificationTypeDef] + blocklist: Optional[Sequence[CookieSpecificationTypeDef]] = None + +class CreateBrowserSettingsRequestRequestTypeDef(BaseModel): + browserPolicy: str + additionalEncryptionContext: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + customerManagedKey: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateIdentityProviderRequestRequestTypeDef(BaseModel): + identityProviderDetails: Mapping[str, str] + identityProviderName: str + identityProviderType: IdentityProviderTypeType + portalArn: str + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateNetworkSettingsRequestRequestTypeDef(BaseModel): + securityGroupIds: Sequence[str] + subnetIds: Sequence[str] + vpcId: str + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreatePortalRequestRequestTypeDef(BaseModel): + additionalEncryptionContext: Optional[Mapping[str, str]] = None + authenticationType: Optional[AuthenticationTypeType] = None + clientToken: Optional[str] = None + customerManagedKey: Optional[str] = None + displayName: Optional[str] = None + instanceType: Optional[InstanceTypeType] = None + maxConcurrentSessions: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateTrustStoreRequestRequestTypeDef(BaseModel): + certificateList: Sequence[BlobTypeDef] + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class CreateUserAccessLoggingSettingsRequestRequestTypeDef(BaseModel): + kinesisStreamArn: str + clientToken: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + tags: List[TagTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + resourceArn: str + tags: Sequence[TagTypeDef] + clientToken: Optional[str] = None + +class CreateIpAccessSettingsRequestRequestTypeDef(BaseModel): + ipRules: Sequence[IpRuleTypeDef] + additionalEncryptionContext: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + customerManagedKey: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class IpAccessSettingsTypeDef(BaseModel): + ipAccessSettingsArn: str + additionalEncryptionContext: Optional[Dict[str, str]] = None + associatedPortalArns: Optional[List[str]] = None + creationDate: Optional[datetime] = None + customerManagedKey: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + ipRules: Optional[List[IpRuleTypeDef]] = None + +class UpdateIpAccessSettingsRequestRequestTypeDef(BaseModel): + ipAccessSettingsArn: str + clientToken: Optional[str] = None + description: Optional[str] = None + displayName: Optional[str] = None + ipRules: Optional[Sequence[IpRuleTypeDef]] = None + +class GetIdentityProviderResponseTypeDef(BaseModel): + identityProvider: IdentityProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIdentityProviderResponseTypeDef(BaseModel): + identityProvider: IdentityProviderTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetNetworkSettingsResponseTypeDef(BaseModel): + networkSettings: NetworkSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateNetworkSettingsResponseTypeDef(BaseModel): + networkSettings: NetworkSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetPortalResponseTypeDef(BaseModel): + portal: PortalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdatePortalResponseTypeDef(BaseModel): + portal: PortalTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetTrustStoreResponseTypeDef(BaseModel): + trustStore: TrustStoreTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserAccessLoggingSettingsResponseTypeDef(BaseModel): + userAccessLoggingSettings: UserAccessLoggingSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserAccessLoggingSettingsResponseTypeDef(BaseModel): + userAccessLoggingSettings: UserAccessLoggingSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListIdentityProvidersResponseTypeDef(BaseModel): + identityProviders: List[IdentityProviderSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListIpAccessSettingsResponseTypeDef(BaseModel): + ipAccessSettings: List[IpAccessSettingsSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListNetworkSettingsResponseTypeDef(BaseModel): + networkSettings: List[NetworkSettingsSummaryTypeDef] + nextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ListPortalsResponseTypeDef(BaseModel): + nextToken: str + portals: List[PortalSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListTrustStoresResponseTypeDef(BaseModel): + nextToken: str + trustStores: List[TrustStoreSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserAccessLoggingSettingsResponseTypeDef(BaseModel): + nextToken: str + userAccessLoggingSettings: List[UserAccessLoggingSettingsSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class UserSettingsSummaryTypeDef(BaseModel): + userSettingsArn: str + cookieSynchronizationConfiguration: Optional[ CookieSynchronizationConfigurationOutputTypeDef ] = None + copyAllowed: Optional[EnabledTypeType] = None + deepLinkAllowed: Optional[EnabledTypeType] = None + disconnectTimeoutInMinutes: Optional[int] = None + downloadAllowed: Optional[EnabledTypeType] = None + idleDisconnectTimeoutInMinutes: Optional[int] = None + pasteAllowed: Optional[EnabledTypeType] = None + printAllowed: Optional[EnabledTypeType] = None + uploadAllowed: Optional[EnabledTypeType] = None + +class UserSettingsTypeDef(BaseModel): + userSettingsArn: str + additionalEncryptionContext: Optional[Dict[str, str]] = None + associatedPortalArns: Optional[List[str]] = None + cookieSynchronizationConfiguration: Optional[ CookieSynchronizationConfigurationOutputTypeDef ] = None + copyAllowed: Optional[EnabledTypeType] = None + customerManagedKey: Optional[str] = None + deepLinkAllowed: Optional[EnabledTypeType] = None + disconnectTimeoutInMinutes: Optional[int] = None + downloadAllowed: Optional[EnabledTypeType] = None + idleDisconnectTimeoutInMinutes: Optional[int] = None + pasteAllowed: Optional[EnabledTypeType] = None + printAllowed: Optional[EnabledTypeType] = None + uploadAllowed: Optional[EnabledTypeType] = None + +class CreateUserSettingsRequestRequestTypeDef(BaseModel): + copyAllowed: EnabledTypeType + downloadAllowed: EnabledTypeType + pasteAllowed: EnabledTypeType + printAllowed: EnabledTypeType + uploadAllowed: EnabledTypeType + additionalEncryptionContext: Optional[Mapping[str, str]] = None + clientToken: Optional[str] = None + cookieSynchronizationConfiguration: Optional[ CookieSynchronizationConfigurationTypeDef ] = None + customerManagedKey: Optional[str] = None + deepLinkAllowed: Optional[EnabledTypeType] = None + disconnectTimeoutInMinutes: Optional[int] = None + idleDisconnectTimeoutInMinutes: Optional[int] = None + tags: Optional[Sequence[TagTypeDef]] = None + +class UpdateUserSettingsRequestRequestTypeDef(BaseModel): + userSettingsArn: str + clientToken: Optional[str] = None + cookieSynchronizationConfiguration: Optional[ CookieSynchronizationConfigurationTypeDef ] = None + copyAllowed: Optional[EnabledTypeType] = None + deepLinkAllowed: Optional[EnabledTypeType] = None + disconnectTimeoutInMinutes: Optional[int] = None + downloadAllowed: Optional[EnabledTypeType] = None + idleDisconnectTimeoutInMinutes: Optional[int] = None + pasteAllowed: Optional[EnabledTypeType] = None + printAllowed: Optional[EnabledTypeType] = None + uploadAllowed: Optional[EnabledTypeType] = None + +class GetIpAccessSettingsResponseTypeDef(BaseModel): + ipAccessSettings: IpAccessSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateIpAccessSettingsResponseTypeDef(BaseModel): + ipAccessSettings: IpAccessSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ListUserSettingsResponseTypeDef(BaseModel): + nextToken: str + userSettings: List[UserSettingsSummaryTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetUserSettingsResponseTypeDef(BaseModel): + userSettings: UserSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateUserSettingsResponseTypeDef(BaseModel): + userSettings: UserSettingsTypeDef + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/workspaces_web_constants.py b/aws_resource_validator/pydantic_models/workspaces_web_constants.py new file mode 100644 index 00000000..61bec1eb --- /dev/null +++ b/aws_resource_validator/pydantic_models/workspaces_web_constants.py @@ -0,0 +1,418 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +AuthenticationTypeType = Literal["IAM_Identity_Center", "Standard"] +BrowserTypeType = Literal["Chrome"] +EnabledTypeType = Literal["Disabled", "Enabled"] +IdentityProviderTypeType = Literal["Facebook", "Google", "LoginWithAmazon", "OIDC", "SAML", "SignInWithApple"] +InstanceTypeType = Literal["standard.large", "standard.regular", "standard.xlarge"] +PortalStatusType = Literal["Active", "Incomplete", "Pending"] +RendererTypeType = Literal["AppStream"] +WorkSpacesWebServiceName = Literal["workspaces-web"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "application-signals", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "apptest", + "arc-zonal-shift", + "artifact", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chatbot", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codeconnections", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controlcatalog", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "deadline", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "mailmanager", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptune-graph", + "neptunedata", + "network-firewall", + "networkmanager", + "networkmonitor", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "pca-connector-scep", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53profiles", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "supplychain", + "support", + "support-app", + "swf", + "synthetics", + "taxsettings", + "textract", + "timestream-influxdb", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +RegionName = Literal["ap-northeast-1", + "ap-south-1", + "ap-southeast-1", + "ap-southeast-2", + "ca-central-1", + "eu-central-1", + "eu-west-1", + "eu-west-2", + "us-east-1", + "us-west-2",] +BlobTypeDef = Union[str, bytes, IO[Any] +CookieSynchronizationConfigurationUnionTypeDef = Union[ 'CookieSynchronizationConfigurationTypeDef', 'CookieSynchronizationConfigurationOutputTypeDef' ] diff --git a/aws_resource_validator/pydantic_models/xray_classes.py b/aws_resource_validator/pydantic_models/xray_classes.py new file mode 100644 index 00000000..d0212ae7 --- /dev/null +++ b/aws_resource_validator/pydantic_models/xray_classes.py @@ -0,0 +1,728 @@ +from datetime import datetime +from pydantic import BaseModel +from typing import Any +from typing import Dict +from typing import IO +from typing import List +from typing import Literal +from typing import Mapping +from typing import Optional +from typing import Sequence +from typing import Union +from aws_resource_validator.pydantic_models.xray_constants import * + +class AliasTypeDef(BaseModel): + Name: Optional[str] = None + Names: Optional[List[str]] = None + Type: Optional[str] = None + +class AnnotationValueTypeDef(BaseModel): + NumberValue: Optional[float] = None + BooleanValue: Optional[bool] = None + StringValue: Optional[str] = None + +class ServiceIdTypeDef(BaseModel): + Name: Optional[str] = None + Names: Optional[List[str]] = None + AccountId: Optional[str] = None + Type: Optional[str] = None + +class AvailabilityZoneDetailTypeDef(BaseModel): + Name: Optional[str] = None + +class BackendConnectionErrorsTypeDef(BaseModel): + TimeoutCount: Optional[int] = None + ConnectionRefusedCount: Optional[int] = None + HTTPCode4XXCount: Optional[int] = None + HTTPCode5XXCount: Optional[int] = None + UnknownHostCount: Optional[int] = None + OtherCount: Optional[int] = None + +class PaginatorConfigTypeDef(BaseModel): + MaxItems: Optional[int] = None + PageSize: Optional[int] = None + StartingToken: Optional[str] = None + +class BatchGetTracesRequestRequestTypeDef(BaseModel): + TraceIds: Sequence[str] + NextToken: Optional[str] = None + +class ResponseMetadataTypeDef(BaseModel): + RequestId: str + HostId: str + HTTPStatusCode: int + HTTPHeaders: Dict[str, str] + RetryAttempts: int + +class InsightsConfigurationTypeDef(BaseModel): + InsightsEnabled: Optional[bool] = None + NotificationsEnabled: Optional[bool] = None + +class TagTypeDef(BaseModel): + Key: str + Value: str + +class SamplingRuleTypeDef(BaseModel): + ResourceARN: str + Priority: int + FixedRate: float + ReservoirSize: int + ServiceName: str + ServiceType: str + Host: str + HTTPMethod: str + URLPath: str + Version: int + RuleName: Optional[str] = None + RuleARN: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + +class DeleteGroupRequestRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + +class DeleteResourcePolicyRequestRequestTypeDef(BaseModel): + PolicyName: str + PolicyRevisionId: Optional[str] = None + +class DeleteSamplingRuleRequestRequestTypeDef(BaseModel): + RuleName: Optional[str] = None + RuleARN: Optional[str] = None + +class ErrorStatisticsTypeDef(BaseModel): + ThrottleCount: Optional[int] = None + OtherCount: Optional[int] = None + TotalCount: Optional[int] = None + +class FaultStatisticsTypeDef(BaseModel): + OtherCount: Optional[int] = None + TotalCount: Optional[int] = None + +class HistogramEntryTypeDef(BaseModel): + Value: Optional[float] = None + Count: Optional[int] = None + +class EncryptionConfigTypeDef(BaseModel): + KeyId: Optional[str] = None + Status: Optional[EncryptionStatusType] = None + Type: Optional[EncryptionTypeType] = None + +class RootCauseExceptionTypeDef(BaseModel): + Name: Optional[str] = None + Message: Optional[str] = None + +class ForecastStatisticsTypeDef(BaseModel): + FaultCountHigh: Optional[int] = None + FaultCountLow: Optional[int] = None + +class GetGroupRequestRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + +class GetGroupsRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class GetInsightEventsRequestRequestTypeDef(BaseModel): + InsightId: str + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetInsightRequestRequestTypeDef(BaseModel): + InsightId: str + +class GetSamplingRulesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class GetSamplingStatisticSummariesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class SamplingStatisticSummaryTypeDef(BaseModel): + RuleName: Optional[str] = None + Timestamp: Optional[datetime] = None + RequestCount: Optional[int] = None + BorrowCount: Optional[int] = None + SampledCount: Optional[int] = None + +class SamplingTargetDocumentTypeDef(BaseModel): + RuleName: Optional[str] = None + FixedRate: Optional[float] = None + ReservoirQuota: Optional[int] = None + ReservoirQuotaTTL: Optional[datetime] = None + Interval: Optional[int] = None + +class UnprocessedStatisticsTypeDef(BaseModel): + RuleName: Optional[str] = None + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class GetTraceGraphRequestRequestTypeDef(BaseModel): + TraceIds: Sequence[str] + NextToken: Optional[str] = None + +class SamplingStrategyTypeDef(BaseModel): + Name: Optional[SamplingStrategyNameType] = None + Value: Optional[float] = None + +class HttpTypeDef(BaseModel): + HttpURL: Optional[str] = None + HttpStatus: Optional[int] = None + HttpMethod: Optional[str] = None + UserAgent: Optional[str] = None + ClientIp: Optional[str] = None + +class RequestImpactStatisticsTypeDef(BaseModel): + FaultCount: Optional[int] = None + OkCount: Optional[int] = None + TotalCount: Optional[int] = None + +class InsightImpactGraphEdgeTypeDef(BaseModel): + ReferenceId: Optional[int] = None + +class InstanceIdDetailTypeDef(BaseModel): + Id: Optional[str] = None + +class ListResourcePoliciesRequestRequestTypeDef(BaseModel): + NextToken: Optional[str] = None + +class ResourcePolicyTypeDef(BaseModel): + PolicyName: Optional[str] = None + PolicyDocument: Optional[str] = None + PolicyRevisionId: Optional[str] = None + LastUpdatedTime: Optional[datetime] = None + +class ListTagsForResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + NextToken: Optional[str] = None + +class PutEncryptionConfigRequestRequestTypeDef(BaseModel): + Type: EncryptionTypeType + KeyId: Optional[str] = None + +class PutResourcePolicyRequestRequestTypeDef(BaseModel): + PolicyName: str + PolicyDocument: str + PolicyRevisionId: Optional[str] = None + BypassPolicyLockoutCheck: Optional[bool] = None + +class PutTraceSegmentsRequestRequestTypeDef(BaseModel): + TraceSegmentDocuments: Sequence[str] + +class UnprocessedTraceSegmentTypeDef(BaseModel): + Id: Optional[str] = None + ErrorCode: Optional[str] = None + Message: Optional[str] = None + +class ResourceARNDetailTypeDef(BaseModel): + ARN: Optional[str] = None + +class ResponseTimeRootCauseEntityTypeDef(BaseModel): + Name: Optional[str] = None + Coverage: Optional[float] = None + Remote: Optional[bool] = None + +class SamplingRulePaginatorTypeDef(BaseModel): + ResourceARN: str + Priority: int + FixedRate: float + ReservoirSize: int + ServiceName: str + ServiceType: str + Host: str + HTTPMethod: str + URLPath: str + Version: int + RuleName: Optional[str] = None + RuleARN: Optional[str] = None + Attributes: Optional[Dict[str, str]] = None + +class SamplingRuleUpdateTypeDef(BaseModel): + RuleName: Optional[str] = None + RuleARN: Optional[str] = None + ResourceARN: Optional[str] = None + Priority: Optional[int] = None + FixedRate: Optional[float] = None + ReservoirSize: Optional[int] = None + Host: Optional[str] = None + ServiceName: Optional[str] = None + ServiceType: Optional[str] = None + HTTPMethod: Optional[str] = None + URLPath: Optional[str] = None + Attributes: Optional[Mapping[str, str]] = None + +class SegmentTypeDef(BaseModel): + Id: Optional[str] = None + Document: Optional[str] = None + +class UntagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + TagKeys: Sequence[str] + +class AnomalousServiceTypeDef(BaseModel): + ServiceId: Optional[ServiceIdTypeDef] = None + +class TraceUserTypeDef(BaseModel): + UserName: Optional[str] = None + ServiceIds: Optional[List[ServiceIdTypeDef]] = None + +class ValueWithServiceIdsTypeDef(BaseModel): + AnnotationValue: Optional[AnnotationValueTypeDef] = None + ServiceIds: Optional[List[ServiceIdTypeDef]] = None + +class BatchGetTracesRequestBatchGetTracesPaginateTypeDef(BaseModel): + TraceIds: Sequence[str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetGroupsRequestGetGroupsPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSamplingRulesRequestGetSamplingRulesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetSamplingStatisticSummariesRequestGetSamplingStatisticSummariesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTraceGraphRequestGetTraceGraphPaginateTypeDef(BaseModel): + TraceIds: Sequence[str] + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListResourcePoliciesRequestListResourcePoliciesPaginateTypeDef(BaseModel): + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class ListTagsForResourceRequestListTagsForResourcePaginateTypeDef(BaseModel): + ResourceARN: str + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GroupSummaryTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + FilterExpression: Optional[str] = None + InsightsConfiguration: Optional[InsightsConfigurationTypeDef] = None + +class GroupTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + FilterExpression: Optional[str] = None + InsightsConfiguration: Optional[InsightsConfigurationTypeDef] = None + +class UpdateGroupRequestRequestTypeDef(BaseModel): + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + FilterExpression: Optional[str] = None + InsightsConfiguration: Optional[InsightsConfigurationTypeDef] = None + +class CreateGroupRequestRequestTypeDef(BaseModel): + GroupName: str + FilterExpression: Optional[str] = None + InsightsConfiguration: Optional[InsightsConfigurationTypeDef] = None + Tags: Optional[Sequence[TagTypeDef]] = None + +class ListTagsForResourceResponseTypeDef(BaseModel): + Tags: List[TagTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TagResourceRequestRequestTypeDef(BaseModel): + ResourceARN: str + Tags: Sequence[TagTypeDef] + +class CreateSamplingRuleRequestRequestTypeDef(BaseModel): + SamplingRule: SamplingRuleTypeDef + Tags: Optional[Sequence[TagTypeDef]] = None + +class SamplingRuleRecordTypeDef(BaseModel): + SamplingRule: Optional[SamplingRuleTypeDef] = None + CreatedAt: Optional[datetime] = None + ModifiedAt: Optional[datetime] = None + +class EdgeStatisticsTypeDef(BaseModel): + OkCount: Optional[int] = None + ErrorStatistics: Optional[ErrorStatisticsTypeDef] = None + FaultStatistics: Optional[FaultStatisticsTypeDef] = None + TotalCount: Optional[int] = None + TotalResponseTime: Optional[float] = None + +class ServiceStatisticsTypeDef(BaseModel): + OkCount: Optional[int] = None + ErrorStatistics: Optional[ErrorStatisticsTypeDef] = None + FaultStatistics: Optional[FaultStatisticsTypeDef] = None + TotalCount: Optional[int] = None + TotalResponseTime: Optional[float] = None + +class GetEncryptionConfigResultTypeDef(BaseModel): + EncryptionConfig: EncryptionConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutEncryptionConfigResultTypeDef(BaseModel): + EncryptionConfig: EncryptionConfigTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ErrorRootCauseEntityTypeDef(BaseModel): + Name: Optional[str] = None + Exceptions: Optional[List[RootCauseExceptionTypeDef]] = None + Remote: Optional[bool] = None + +class FaultRootCauseEntityTypeDef(BaseModel): + Name: Optional[str] = None + Exceptions: Optional[List[RootCauseExceptionTypeDef]] = None + Remote: Optional[bool] = None + +class GetInsightImpactGraphRequestRequestTypeDef(BaseModel): + InsightId: str + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + NextToken: Optional[str] = None + +class GetInsightSummariesRequestRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + States: Optional[Sequence[InsightStateType]] = None + GroupARN: Optional[str] = None + GroupName: Optional[str] = None + MaxResults: Optional[int] = None + NextToken: Optional[str] = None + +class GetServiceGraphRequestGetServiceGraphPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetServiceGraphRequestRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + NextToken: Optional[str] = None + +class GetTimeSeriesServiceStatisticsRequestGetTimeSeriesServiceStatisticsPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + EntitySelectorExpression: Optional[str] = None + Period: Optional[int] = None + ForecastStatistics: Optional[bool] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTimeSeriesServiceStatisticsRequestRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + GroupName: Optional[str] = None + GroupARN: Optional[str] = None + EntitySelectorExpression: Optional[str] = None + Period: Optional[int] = None + ForecastStatistics: Optional[bool] = None + NextToken: Optional[str] = None + +class SamplingStatisticsDocumentTypeDef(BaseModel): + RuleName: str + ClientID: str + Timestamp: TimestampTypeDef + RequestCount: int + SampledCount: int + BorrowCount: Optional[int] = None + +class TelemetryRecordTypeDef(BaseModel): + Timestamp: TimestampTypeDef + SegmentsReceivedCount: Optional[int] = None + SegmentsSentCount: Optional[int] = None + SegmentsSpilloverCount: Optional[int] = None + SegmentsRejectedCount: Optional[int] = None + BackendConnectionErrors: Optional[BackendConnectionErrorsTypeDef] = None + +class GetSamplingStatisticSummariesResultTypeDef(BaseModel): + SamplingStatisticSummaries: List[SamplingStatisticSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetSamplingTargetsResultTypeDef(BaseModel): + SamplingTargetDocuments: List[SamplingTargetDocumentTypeDef] + LastRuleModification: datetime + UnprocessedStatistics: List[UnprocessedStatisticsTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class GetTraceSummariesRequestGetTraceSummariesPaginateTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + TimeRangeType: Optional[TimeRangeTypeType] = None + Sampling: Optional[bool] = None + SamplingStrategy: Optional[SamplingStrategyTypeDef] = None + FilterExpression: Optional[str] = None + PaginationConfig: Optional[PaginatorConfigTypeDef] = None + +class GetTraceSummariesRequestRequestTypeDef(BaseModel): + StartTime: TimestampTypeDef + EndTime: TimestampTypeDef + TimeRangeType: Optional[TimeRangeTypeType] = None + Sampling: Optional[bool] = None + SamplingStrategy: Optional[SamplingStrategyTypeDef] = None + FilterExpression: Optional[str] = None + NextToken: Optional[str] = None + +class InsightImpactGraphServiceTypeDef(BaseModel): + ReferenceId: Optional[int] = None + Type: Optional[str] = None + Name: Optional[str] = None + Names: Optional[List[str]] = None + AccountId: Optional[str] = None + Edges: Optional[List[InsightImpactGraphEdgeTypeDef]] = None + +class ListResourcePoliciesResultTypeDef(BaseModel): + ResourcePolicies: List[ResourcePolicyTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class PutResourcePolicyResultTypeDef(BaseModel): + ResourcePolicy: ResourcePolicyTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class PutTraceSegmentsResultTypeDef(BaseModel): + UnprocessedTraceSegments: List[UnprocessedTraceSegmentTypeDef] + ResponseMetadata: ResponseMetadataTypeDef + +class ResponseTimeRootCauseServiceTypeDef(BaseModel): + Name: Optional[str] = None + Names: Optional[List[str]] = None + Type: Optional[str] = None + AccountId: Optional[str] = None + EntityPath: Optional[List[ResponseTimeRootCauseEntityTypeDef]] = None + Inferred: Optional[bool] = None + +class SamplingRuleRecordPaginatorTypeDef(BaseModel): + SamplingRule: Optional[SamplingRulePaginatorTypeDef] = None + CreatedAt: Optional[datetime] = None + ModifiedAt: Optional[datetime] = None + +class UpdateSamplingRuleRequestRequestTypeDef(BaseModel): + SamplingRuleUpdate: SamplingRuleUpdateTypeDef + +class TraceTypeDef(BaseModel): + Id: Optional[str] = None + Duration: Optional[float] = None + LimitExceeded: Optional[bool] = None + Segments: Optional[List[SegmentTypeDef]] = None + +class InsightEventTypeDef(BaseModel): + Summary: Optional[str] = None + EventTime: Optional[datetime] = None + ClientRequestImpactStatistics: Optional[RequestImpactStatisticsTypeDef] = None + RootCauseServiceRequestImpactStatistics: Optional[RequestImpactStatisticsTypeDef] = None + TopAnomalousServices: Optional[List[AnomalousServiceTypeDef]] = None + +class InsightSummaryTypeDef(BaseModel): + InsightId: Optional[str] = None + GroupARN: Optional[str] = None + GroupName: Optional[str] = None + RootCauseServiceId: Optional[ServiceIdTypeDef] = None + Categories: Optional[List[Literal["FAULT"]]] = None + State: Optional[InsightStateType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Summary: Optional[str] = None + ClientRequestImpactStatistics: Optional[RequestImpactStatisticsTypeDef] = None + RootCauseServiceRequestImpactStatistics: Optional[RequestImpactStatisticsTypeDef] = None + TopAnomalousServices: Optional[List[AnomalousServiceTypeDef]] = None + LastUpdateTime: Optional[datetime] = None + +class InsightTypeDef(BaseModel): + InsightId: Optional[str] = None + GroupARN: Optional[str] = None + GroupName: Optional[str] = None + RootCauseServiceId: Optional[ServiceIdTypeDef] = None + Categories: Optional[List[Literal["FAULT"]]] = None + State: Optional[InsightStateType] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Summary: Optional[str] = None + ClientRequestImpactStatistics: Optional[RequestImpactStatisticsTypeDef] = None + RootCauseServiceRequestImpactStatistics: Optional[RequestImpactStatisticsTypeDef] = None + TopAnomalousServices: Optional[List[AnomalousServiceTypeDef]] = None + +class GetGroupsResultTypeDef(BaseModel): + Groups: List[GroupSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class CreateGroupResultTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetGroupResultTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateGroupResultTypeDef(BaseModel): + Group: GroupTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class CreateSamplingRuleResultTypeDef(BaseModel): + SamplingRuleRecord: SamplingRuleRecordTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class DeleteSamplingRuleResultTypeDef(BaseModel): + SamplingRuleRecord: SamplingRuleRecordTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class GetSamplingRulesResultTypeDef(BaseModel): + SamplingRuleRecords: List[SamplingRuleRecordTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class UpdateSamplingRuleResultTypeDef(BaseModel): + SamplingRuleRecord: SamplingRuleRecordTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class EdgeTypeDef(BaseModel): + ReferenceId: Optional[int] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + SummaryStatistics: Optional[EdgeStatisticsTypeDef] = None + ResponseTimeHistogram: Optional[List[HistogramEntryTypeDef]] = None + Aliases: Optional[List[AliasTypeDef]] = None + EdgeType: Optional[str] = None + ReceivedEventAgeHistogram: Optional[List[HistogramEntryTypeDef]] = None + +class TimeSeriesServiceStatisticsTypeDef(BaseModel): + Timestamp: Optional[datetime] = None + EdgeSummaryStatistics: Optional[EdgeStatisticsTypeDef] = None + ServiceSummaryStatistics: Optional[ServiceStatisticsTypeDef] = None + ServiceForecastStatistics: Optional[ForecastStatisticsTypeDef] = None + ResponseTimeHistogram: Optional[List[HistogramEntryTypeDef]] = None + +class ErrorRootCauseServiceTypeDef(BaseModel): + Name: Optional[str] = None + Names: Optional[List[str]] = None + Type: Optional[str] = None + AccountId: Optional[str] = None + EntityPath: Optional[List[ErrorRootCauseEntityTypeDef]] = None + Inferred: Optional[bool] = None + +class FaultRootCauseServiceTypeDef(BaseModel): + Name: Optional[str] = None + Names: Optional[List[str]] = None + Type: Optional[str] = None + AccountId: Optional[str] = None + EntityPath: Optional[List[FaultRootCauseEntityTypeDef]] = None + Inferred: Optional[bool] = None + +class GetSamplingTargetsRequestRequestTypeDef(BaseModel): + SamplingStatisticsDocuments: Sequence[SamplingStatisticsDocumentTypeDef] + +class PutTelemetryRecordsRequestRequestTypeDef(BaseModel): + TelemetryRecords: Sequence[TelemetryRecordTypeDef] + EC2InstanceId: Optional[str] = None + Hostname: Optional[str] = None + ResourceARN: Optional[str] = None + +class GetInsightImpactGraphResultTypeDef(BaseModel): + InsightId: str + StartTime: datetime + EndTime: datetime + ServiceGraphStartTime: datetime + ServiceGraphEndTime: datetime + Services: List[InsightImpactGraphServiceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ResponseTimeRootCauseTypeDef(BaseModel): + Services: Optional[List[ResponseTimeRootCauseServiceTypeDef]] = None + ClientImpacting: Optional[bool] = None + +class GetSamplingRulesResultPaginatorTypeDef(BaseModel): + SamplingRuleRecords: List[SamplingRuleRecordPaginatorTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class BatchGetTracesResultTypeDef(BaseModel): + Traces: List[TraceTypeDef] + UnprocessedTraceIds: List[str] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInsightEventsResultTypeDef(BaseModel): + InsightEvents: List[InsightEventTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInsightSummariesResultTypeDef(BaseModel): + InsightSummaries: List[InsightSummaryTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetInsightResultTypeDef(BaseModel): + Insight: InsightTypeDef + ResponseMetadata: ResponseMetadataTypeDef + +class ServiceTypeDef(BaseModel): + ReferenceId: Optional[int] = None + Name: Optional[str] = None + Names: Optional[List[str]] = None + Root: Optional[bool] = None + AccountId: Optional[str] = None + Type: Optional[str] = None + State: Optional[str] = None + StartTime: Optional[datetime] = None + EndTime: Optional[datetime] = None + Edges: Optional[List[EdgeTypeDef]] = None + SummaryStatistics: Optional[ServiceStatisticsTypeDef] = None + DurationHistogram: Optional[List[HistogramEntryTypeDef]] = None + ResponseTimeHistogram: Optional[List[HistogramEntryTypeDef]] = None + +class GetTimeSeriesServiceStatisticsResultTypeDef(BaseModel): + TimeSeriesServiceStatistics: List[TimeSeriesServiceStatisticsTypeDef] + ContainsOldGroupVersions: bool + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class ErrorRootCauseTypeDef(BaseModel): + Services: Optional[List[ErrorRootCauseServiceTypeDef]] = None + ClientImpacting: Optional[bool] = None + +class FaultRootCauseTypeDef(BaseModel): + Services: Optional[List[FaultRootCauseServiceTypeDef]] = None + ClientImpacting: Optional[bool] = None + +class GetServiceGraphResultTypeDef(BaseModel): + StartTime: datetime + EndTime: datetime + Services: List[ServiceTypeDef] + ContainsOldGroupVersions: bool + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class GetTraceGraphResultTypeDef(BaseModel): + Services: List[ServiceTypeDef] + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + +class TraceSummaryTypeDef(BaseModel): + Id: Optional[str] = None + StartTime: Optional[datetime] = None + Duration: Optional[float] = None + ResponseTime: Optional[float] = None + HasFault: Optional[bool] = None + HasError: Optional[bool] = None + HasThrottle: Optional[bool] = None + IsPartial: Optional[bool] = None + Http: Optional[HttpTypeDef] = None + Annotations: Optional[Dict[str, List[ValueWithServiceIdsTypeDef]]] = None + Users: Optional[List[TraceUserTypeDef]] = None + ServiceIds: Optional[List[ServiceIdTypeDef]] = None + ResourceARNs: Optional[List[ResourceARNDetailTypeDef]] = None + InstanceIds: Optional[List[InstanceIdDetailTypeDef]] = None + AvailabilityZones: Optional[List[AvailabilityZoneDetailTypeDef]] = None + EntryPoint: Optional[ServiceIdTypeDef] = None + FaultRootCauses: Optional[List[FaultRootCauseTypeDef]] = None + ErrorRootCauses: Optional[List[ErrorRootCauseTypeDef]] = None + ResponseTimeRootCauses: Optional[List[ResponseTimeRootCauseTypeDef]] = None + Revision: Optional[int] = None + MatchedEventTime: Optional[datetime] = None + +class GetTraceSummariesResultTypeDef(BaseModel): + TraceSummaries: List[TraceSummaryTypeDef] + ApproximateTime: datetime + TracesProcessedCount: int + NextToken: str + ResponseMetadata: ResponseMetadataTypeDef + diff --git a/aws_resource_validator/pydantic_models/xray_constants.py b/aws_resource_validator/pydantic_models/xray_constants.py new file mode 100644 index 00000000..adb93448 --- /dev/null +++ b/aws_resource_validator/pydantic_models/xray_constants.py @@ -0,0 +1,443 @@ +from typing import Literal, Union, Optional, List, Dict, Any, Sequence, Mapping, IO +from datetime import datetime + +BatchGetTracesPaginatorName = Literal["batch_get_traces"] +EncryptionStatusType = Literal["ACTIVE", "UPDATING"] +EncryptionTypeType = Literal["KMS", "NONE"] +GetGroupsPaginatorName = Literal["get_groups"] +GetSamplingRulesPaginatorName = Literal["get_sampling_rules"] +GetSamplingStatisticSummariesPaginatorName = Literal["get_sampling_statistic_summaries"] +GetServiceGraphPaginatorName = Literal["get_service_graph"] +GetTimeSeriesServiceStatisticsPaginatorName = Literal["get_time_series_service_statistics"] +GetTraceGraphPaginatorName = Literal["get_trace_graph"] +GetTraceSummariesPaginatorName = Literal["get_trace_summaries"] +InsightCategoryType = Literal["FAULT"] +InsightStateType = Literal["ACTIVE", "CLOSED"] +ListResourcePoliciesPaginatorName = Literal["list_resource_policies"] +ListTagsForResourcePaginatorName = Literal["list_tags_for_resource"] +SamplingStrategyNameType = Literal["FixedRate", "PartialScan"] +TimeRangeTypeType = Literal["Event", "Service", "TraceId"] +XRayServiceName = Literal["xray"] +ServiceName = Literal["accessanalyzer", + "account", + "acm", + "acm-pca", + "alexaforbusiness", + "amp", + "amplify", + "amplifybackend", + "amplifyuibuilder", + "apigateway", + "apigatewaymanagementapi", + "apigatewayv2", + "appconfig", + "appconfigdata", + "appfabric", + "appflow", + "appintegrations", + "application-autoscaling", + "application-insights", + "applicationcostprofiler", + "appmesh", + "apprunner", + "appstream", + "appsync", + "arc-zonal-shift", + "athena", + "auditmanager", + "autoscaling", + "autoscaling-plans", + "b2bi", + "backup", + "backup-gateway", + "backupstorage", + "batch", + "bcm-data-exports", + "bedrock", + "bedrock-agent", + "bedrock-agent-runtime", + "bedrock-runtime", + "billingconductor", + "braket", + "budgets", + "ce", + "chime", + "chime-sdk-identity", + "chime-sdk-media-pipelines", + "chime-sdk-meetings", + "chime-sdk-messaging", + "chime-sdk-voice", + "cleanrooms", + "cleanroomsml", + "cloud9", + "cloudcontrol", + "clouddirectory", + "cloudformation", + "cloudfront", + "cloudfront-keyvaluestore", + "cloudhsm", + "cloudhsmv2", + "cloudsearch", + "cloudsearchdomain", + "cloudtrail", + "cloudtrail-data", + "cloudwatch", + "codeartifact", + "codebuild", + "codecatalyst", + "codecommit", + "codedeploy", + "codeguru-reviewer", + "codeguru-security", + "codeguruprofiler", + "codepipeline", + "codestar", + "codestar-connections", + "codestar-notifications", + "cognito-identity", + "cognito-idp", + "cognito-sync", + "comprehend", + "comprehendmedical", + "compute-optimizer", + "config", + "connect", + "connect-contact-lens", + "connectcampaigns", + "connectcases", + "connectparticipant", + "controltower", + "cost-optimization-hub", + "cur", + "customer-profiles", + "databrew", + "dataexchange", + "datapipeline", + "datasync", + "datazone", + "dax", + "detective", + "devicefarm", + "devops-guru", + "directconnect", + "discovery", + "dlm", + "dms", + "docdb", + "docdb-elastic", + "drs", + "ds", + "dynamodb", + "dynamodbstreams", + "ebs", + "ec2", + "ec2-instance-connect", + "ecr", + "ecr-public", + "ecs", + "efs", + "eks", + "eks-auth", + "elastic-inference", + "elasticache", + "elasticbeanstalk", + "elastictranscoder", + "elb", + "elbv2", + "emr", + "emr-containers", + "emr-serverless", + "entityresolution", + "es", + "events", + "evidently", + "finspace", + "finspace-data", + "firehose", + "fis", + "fms", + "forecast", + "forecastquery", + "frauddetector", + "freetier", + "fsx", + "gamelift", + "glacier", + "globalaccelerator", + "glue", + "grafana", + "greengrass", + "greengrassv2", + "groundstation", + "guardduty", + "health", + "healthlake", + "honeycode", + "iam", + "identitystore", + "imagebuilder", + "importexport", + "inspector", + "inspector-scan", + "inspector2", + "internetmonitor", + "iot", + "iot-data", + "iot-jobs-data", + "iot-roborunner", + "iot1click-devices", + "iot1click-projects", + "iotanalytics", + "iotdeviceadvisor", + "iotevents", + "iotevents-data", + "iotfleethub", + "iotfleetwise", + "iotsecuretunneling", + "iotsitewise", + "iotthingsgraph", + "iottwinmaker", + "iotwireless", + "ivs", + "ivs-realtime", + "ivschat", + "kafka", + "kafkaconnect", + "kendra", + "kendra-ranking", + "keyspaces", + "kinesis", + "kinesis-video-archived-media", + "kinesis-video-media", + "kinesis-video-signaling", + "kinesis-video-webrtc-storage", + "kinesisanalytics", + "kinesisanalyticsv2", + "kinesisvideo", + "kms", + "lakeformation", + "lambda", + "launch-wizard", + "lex-models", + "lex-runtime", + "lexv2-models", + "lexv2-runtime", + "license-manager", + "license-manager-linux-subscriptions", + "license-manager-user-subscriptions", + "lightsail", + "location", + "logs", + "lookoutequipment", + "lookoutmetrics", + "lookoutvision", + "m2", + "machinelearning", + "macie2", + "managedblockchain", + "managedblockchain-query", + "marketplace-agreement", + "marketplace-catalog", + "marketplace-deployment", + "marketplace-entitlement", + "marketplacecommerceanalytics", + "mediaconnect", + "mediaconvert", + "medialive", + "mediapackage", + "mediapackage-vod", + "mediapackagev2", + "mediastore", + "mediastore-data", + "mediatailor", + "medical-imaging", + "memorydb", + "meteringmarketplace", + "mgh", + "mgn", + "migration-hub-refactor-spaces", + "migrationhub-config", + "migrationhuborchestrator", + "migrationhubstrategy", + "mobile", + "mq", + "mturk", + "mwaa", + "neptune", + "neptunedata", + "network-firewall", + "networkmanager", + "nimble", + "oam", + "omics", + "opensearch", + "opensearchserverless", + "opsworks", + "opsworkscm", + "organizations", + "osis", + "outposts", + "panorama", + "payment-cryptography", + "payment-cryptography-data", + "pca-connector-ad", + "personalize", + "personalize-events", + "personalize-runtime", + "pi", + "pinpoint", + "pinpoint-email", + "pinpoint-sms-voice", + "pinpoint-sms-voice-v2", + "pipes", + "polly", + "pricing", + "privatenetworks", + "proton", + "qbusiness", + "qconnect", + "qldb", + "qldb-session", + "quicksight", + "ram", + "rbin", + "rds", + "rds-data", + "redshift", + "redshift-data", + "redshift-serverless", + "rekognition", + "repostspace", + "resiliencehub", + "resource-explorer-2", + "resource-groups", + "resourcegroupstaggingapi", + "robomaker", + "rolesanywhere", + "route53", + "route53-recovery-cluster", + "route53-recovery-control-config", + "route53-recovery-readiness", + "route53domains", + "route53resolver", + "rum", + "s3", + "s3control", + "s3outposts", + "sagemaker", + "sagemaker-a2i-runtime", + "sagemaker-edge", + "sagemaker-featurestore-runtime", + "sagemaker-geospatial", + "sagemaker-metrics", + "sagemaker-runtime", + "savingsplans", + "scheduler", + "schemas", + "sdb", + "secretsmanager", + "securityhub", + "securitylake", + "serverlessrepo", + "service-quotas", + "servicecatalog", + "servicecatalog-appregistry", + "servicediscovery", + "ses", + "sesv2", + "shield", + "signer", + "simspaceweaver", + "sms", + "sms-voice", + "snow-device-management", + "snowball", + "sns", + "sqs", + "ssm", + "ssm-contacts", + "ssm-incidents", + "ssm-sap", + "sso", + "sso-admin", + "sso-oidc", + "stepfunctions", + "storagegateway", + "sts", + "support", + "support-app", + "swf", + "synthetics", + "textract", + "timestream-query", + "timestream-write", + "tnb", + "transcribe", + "transfer", + "translate", + "trustedadvisor", + "verifiedpermissions", + "voice-id", + "vpc-lattice", + "waf", + "waf-regional", + "wafv2", + "wellarchitected", + "wisdom", + "workdocs", + "worklink", + "workmail", + "workmailmessageflow", + "workspaces", + "workspaces-thin-client", + "workspaces-web", + "xray",] +ResourceServiceName = Literal["cloudformation", + "cloudwatch", + "dynamodb", + "ec2", + "glacier", + "iam", + "opsworks", + "s3", + "sns", + "sqs",] +PaginatorName = Literal["batch_get_traces", + "get_groups", + "get_sampling_rules", + "get_sampling_statistic_summaries", + "get_service_graph", + "get_time_series_service_statistics", + "get_trace_graph", + "get_trace_summaries", + "list_resource_policies", + "list_tags_for_resource",] +RegionName = Literal["af-south-1", + "ap-east-1", + "ap-northeast-1", + "ap-northeast-2", + "ap-northeast-3", + "ap-south-1", + "ap-south-2", + "ap-southeast-1", + "ap-southeast-2", + "ap-southeast-3", + "ap-southeast-4", + "ca-central-1", + "eu-central-1", + "eu-central-2", + "eu-north-1", + "eu-south-1", + "eu-south-2", + "eu-west-1", + "eu-west-2", + "eu-west-3", + "il-central-1", + "me-central-1", + "me-south-1", + "sa-east-1", + "us-east-1", + "us-east-2", + "us-west-1", + "us-west-2",] +TimestampTypeDef = Union[datetime, str] diff --git a/poetry.lock b/poetry.lock index 44a767e7..a19cade6 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,5 +1,828 @@ # This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +[[package]] +name = "annotated-types" +version = "0.7.0" +description = "Reusable constraint types to use with typing.Annotated" +optional = false +python-versions = ">=3.8" +files = [ + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.9\""} + +[[package]] +name = "boto3-stubs" +version = "1.34.149" +description = "Type annotations for boto3 1.34.149 generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "boto3_stubs-1.34.149-py3-none-any.whl", hash = "sha256:d4d28c5d349364292efe83b26bf1caf909a95f4ed3a57614045371f777cf14fe"}, + {file = "boto3_stubs-1.34.149.tar.gz", hash = "sha256:3deb59b18fc73c4fbe3324fcb52cc3c7d0cc789338d43e07e0efd1ef1bc0d98c"}, +] + +[package.dependencies] +botocore-stubs = "*" +mypy-boto3-accessanalyzer = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-account = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-acm = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-acm-pca = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-amp = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-amplify = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-amplifybackend = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-amplifyuibuilder = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-apigateway = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-apigatewaymanagementapi = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-apigatewayv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appconfig = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appconfigdata = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appfabric = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appflow = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appintegrations = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-application-autoscaling = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-application-insights = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-application-signals = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-applicationcostprofiler = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appmesh = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-apprunner = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appstream = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-appsync = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-apptest = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-arc-zonal-shift = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-artifact = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-athena = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-auditmanager = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-autoscaling = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-autoscaling-plans = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-b2bi = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-backup = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-backup-gateway = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-batch = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-bcm-data-exports = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-bedrock = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-bedrock-agent = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-bedrock-agent-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-bedrock-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-billingconductor = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-braket = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-budgets = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ce = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chatbot = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chime-sdk-identity = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chime-sdk-media-pipelines = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chime-sdk-meetings = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chime-sdk-messaging = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-chime-sdk-voice = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cleanrooms = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cleanroomsml = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloud9 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudcontrol = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-clouddirectory = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudformation = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudfront = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudfront-keyvaluestore = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudhsm = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudhsmv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudsearch = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudsearchdomain = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudtrail = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudtrail-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cloudwatch = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codeartifact = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codebuild = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codecatalyst = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codecommit = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codeconnections = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codedeploy = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codeguru-reviewer = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codeguru-security = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codeguruprofiler = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codepipeline = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codestar = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codestar-connections = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-codestar-notifications = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cognito-identity = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cognito-idp = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cognito-sync = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-comprehend = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-comprehendmedical = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-compute-optimizer = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-config = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-connect = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-connect-contact-lens = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-connectcampaigns = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-connectcases = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-connectparticipant = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-controlcatalog = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-controltower = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cost-optimization-hub = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-cur = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-customer-profiles = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-databrew = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-dataexchange = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-datapipeline = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-datasync = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-datazone = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-dax = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-deadline = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-detective = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-devicefarm = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-devops-guru = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-directconnect = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-discovery = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-dlm = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-dms = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-docdb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-docdb-elastic = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-drs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ds = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-dynamodb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-dynamodbstreams = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ebs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ec2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ec2-instance-connect = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ecr = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ecr-public = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ecs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-efs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-eks = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-eks-auth = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-elastic-inference = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-elasticache = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-elasticbeanstalk = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-elastictranscoder = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-elb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-elbv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-emr = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-emr-containers = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-emr-serverless = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-entityresolution = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-es = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-events = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-evidently = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-finspace = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-finspace-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-firehose = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-fis = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-fms = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-forecast = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-forecastquery = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-frauddetector = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-freetier = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-fsx = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-gamelift = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-glacier = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-globalaccelerator = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-glue = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-grafana = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-greengrass = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-greengrassv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-groundstation = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-guardduty = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-health = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-healthlake = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iam = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-identitystore = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-imagebuilder = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-importexport = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-inspector = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-inspector-scan = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-inspector2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-internetmonitor = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iot = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iot-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iot-jobs-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iot1click-devices = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iot1click-projects = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotanalytics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotdeviceadvisor = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotevents = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotevents-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotfleethub = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotfleetwise = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotsecuretunneling = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotsitewise = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotthingsgraph = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iottwinmaker = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-iotwireless = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ivs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ivs-realtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ivschat = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kafka = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kafkaconnect = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kendra = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kendra-ranking = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-keyspaces = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesis = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesis-video-archived-media = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesis-video-media = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesis-video-signaling = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesis-video-webrtc-storage = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesisanalytics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesisanalyticsv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kinesisvideo = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-kms = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lakeformation = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lambda = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-launch-wizard = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lex-models = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lex-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lexv2-models = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lexv2-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-license-manager = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-license-manager-linux-subscriptions = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-license-manager-user-subscriptions = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lightsail = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-location = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-logs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lookoutequipment = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lookoutmetrics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-lookoutvision = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-m2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-machinelearning = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-macie2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mailmanager = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-managedblockchain = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-managedblockchain-query = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-marketplace-agreement = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-marketplace-catalog = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-marketplace-deployment = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-marketplace-entitlement = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-marketplacecommerceanalytics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediaconnect = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediaconvert = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-medialive = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediapackage = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediapackage-vod = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediapackagev2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediastore = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediastore-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mediatailor = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-medical-imaging = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-memorydb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-meteringmarketplace = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mgh = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mgn = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-migration-hub-refactor-spaces = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-migrationhub-config = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-migrationhuborchestrator = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-migrationhubstrategy = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mq = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mturk = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-mwaa = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-neptune = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-neptune-graph = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-neptunedata = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-network-firewall = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-networkmanager = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-networkmonitor = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-nimble = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-oam = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-omics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-opensearch = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-opensearchserverless = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-opsworks = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-opsworkscm = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-organizations = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-osis = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-outposts = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-panorama = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-payment-cryptography = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-payment-cryptography-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pca-connector-ad = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pca-connector-scep = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-personalize = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-personalize-events = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-personalize-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pi = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pinpoint = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pinpoint-email = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pinpoint-sms-voice = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pinpoint-sms-voice-v2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pipes = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-polly = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-pricing = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-privatenetworks = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-proton = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-qapps = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-qbusiness = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-qconnect = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-qldb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-qldb-session = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-quicksight = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ram = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-rbin = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-rds = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-rds-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-redshift = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-redshift-data = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-redshift-serverless = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-rekognition = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-repostspace = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-resiliencehub = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-resource-explorer-2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-resource-groups = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-resourcegroupstaggingapi = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-robomaker = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-rolesanywhere = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53-recovery-cluster = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53-recovery-control-config = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53-recovery-readiness = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53domains = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53profiles = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-route53resolver = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-rum = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-s3 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-s3control = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-s3outposts = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker-a2i-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker-edge = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker-featurestore-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker-geospatial = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker-metrics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sagemaker-runtime = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-savingsplans = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-scheduler = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-schemas = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sdb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-secretsmanager = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-securityhub = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-securitylake = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-serverlessrepo = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-service-quotas = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-servicecatalog = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-servicecatalog-appregistry = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-servicediscovery = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ses = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sesv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-shield = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-signer = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-simspaceweaver = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sms = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sms-voice = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-snow-device-management = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-snowball = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sns = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sqs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ssm = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ssm-contacts = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ssm-incidents = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-ssm-sap = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sso = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sso-admin = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sso-oidc = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-stepfunctions = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-storagegateway = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-sts = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-supplychain = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-support = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-support-app = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-swf = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-synthetics = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-taxsettings = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-textract = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-timestream-influxdb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-timestream-query = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-timestream-write = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-tnb = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-transcribe = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-transfer = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-translate = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-trustedadvisor = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-verifiedpermissions = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-voice-id = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-vpc-lattice = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-waf = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-waf-regional = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-wafv2 = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-wellarchitected = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-wisdom = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-workdocs = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-worklink = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-workmail = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-workmailmessageflow = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-workspaces = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-workspaces-thin-client = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-workspaces-web = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +mypy-boto3-xray = {version = ">=1.34.0,<1.35.0", optional = true, markers = "extra == \"all\""} +types-s3transfer = "*" +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[package.extras] +accessanalyzer = ["mypy-boto3-accessanalyzer (>=1.34.0,<1.35.0)"] +account = ["mypy-boto3-account (>=1.34.0,<1.35.0)"] +acm = ["mypy-boto3-acm (>=1.34.0,<1.35.0)"] +acm-pca = ["mypy-boto3-acm-pca (>=1.34.0,<1.35.0)"] +all = ["mypy-boto3-accessanalyzer (>=1.34.0,<1.35.0)", "mypy-boto3-account (>=1.34.0,<1.35.0)", "mypy-boto3-acm (>=1.34.0,<1.35.0)", "mypy-boto3-acm-pca (>=1.34.0,<1.35.0)", "mypy-boto3-amp (>=1.34.0,<1.35.0)", "mypy-boto3-amplify (>=1.34.0,<1.35.0)", "mypy-boto3-amplifybackend (>=1.34.0,<1.35.0)", "mypy-boto3-amplifyuibuilder (>=1.34.0,<1.35.0)", "mypy-boto3-apigateway (>=1.34.0,<1.35.0)", "mypy-boto3-apigatewaymanagementapi (>=1.34.0,<1.35.0)", "mypy-boto3-apigatewayv2 (>=1.34.0,<1.35.0)", "mypy-boto3-appconfig (>=1.34.0,<1.35.0)", "mypy-boto3-appconfigdata (>=1.34.0,<1.35.0)", "mypy-boto3-appfabric (>=1.34.0,<1.35.0)", "mypy-boto3-appflow (>=1.34.0,<1.35.0)", "mypy-boto3-appintegrations (>=1.34.0,<1.35.0)", "mypy-boto3-application-autoscaling (>=1.34.0,<1.35.0)", "mypy-boto3-application-insights (>=1.34.0,<1.35.0)", "mypy-boto3-application-signals (>=1.34.0,<1.35.0)", "mypy-boto3-applicationcostprofiler (>=1.34.0,<1.35.0)", "mypy-boto3-appmesh (>=1.34.0,<1.35.0)", "mypy-boto3-apprunner (>=1.34.0,<1.35.0)", "mypy-boto3-appstream (>=1.34.0,<1.35.0)", "mypy-boto3-appsync (>=1.34.0,<1.35.0)", "mypy-boto3-apptest (>=1.34.0,<1.35.0)", "mypy-boto3-arc-zonal-shift (>=1.34.0,<1.35.0)", "mypy-boto3-artifact (>=1.34.0,<1.35.0)", "mypy-boto3-athena (>=1.34.0,<1.35.0)", "mypy-boto3-auditmanager (>=1.34.0,<1.35.0)", "mypy-boto3-autoscaling (>=1.34.0,<1.35.0)", "mypy-boto3-autoscaling-plans (>=1.34.0,<1.35.0)", "mypy-boto3-b2bi (>=1.34.0,<1.35.0)", "mypy-boto3-backup (>=1.34.0,<1.35.0)", "mypy-boto3-backup-gateway (>=1.34.0,<1.35.0)", "mypy-boto3-batch (>=1.34.0,<1.35.0)", "mypy-boto3-bcm-data-exports (>=1.34.0,<1.35.0)", "mypy-boto3-bedrock (>=1.34.0,<1.35.0)", "mypy-boto3-bedrock-agent (>=1.34.0,<1.35.0)", "mypy-boto3-bedrock-agent-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-bedrock-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-billingconductor (>=1.34.0,<1.35.0)", "mypy-boto3-braket (>=1.34.0,<1.35.0)", "mypy-boto3-budgets (>=1.34.0,<1.35.0)", "mypy-boto3-ce (>=1.34.0,<1.35.0)", "mypy-boto3-chatbot (>=1.34.0,<1.35.0)", "mypy-boto3-chime (>=1.34.0,<1.35.0)", "mypy-boto3-chime-sdk-identity (>=1.34.0,<1.35.0)", "mypy-boto3-chime-sdk-media-pipelines (>=1.34.0,<1.35.0)", "mypy-boto3-chime-sdk-meetings (>=1.34.0,<1.35.0)", "mypy-boto3-chime-sdk-messaging (>=1.34.0,<1.35.0)", "mypy-boto3-chime-sdk-voice (>=1.34.0,<1.35.0)", "mypy-boto3-cleanrooms (>=1.34.0,<1.35.0)", "mypy-boto3-cleanroomsml (>=1.34.0,<1.35.0)", "mypy-boto3-cloud9 (>=1.34.0,<1.35.0)", "mypy-boto3-cloudcontrol (>=1.34.0,<1.35.0)", "mypy-boto3-clouddirectory (>=1.34.0,<1.35.0)", "mypy-boto3-cloudformation (>=1.34.0,<1.35.0)", "mypy-boto3-cloudfront (>=1.34.0,<1.35.0)", "mypy-boto3-cloudfront-keyvaluestore (>=1.34.0,<1.35.0)", "mypy-boto3-cloudhsm (>=1.34.0,<1.35.0)", "mypy-boto3-cloudhsmv2 (>=1.34.0,<1.35.0)", "mypy-boto3-cloudsearch (>=1.34.0,<1.35.0)", "mypy-boto3-cloudsearchdomain (>=1.34.0,<1.35.0)", "mypy-boto3-cloudtrail (>=1.34.0,<1.35.0)", "mypy-boto3-cloudtrail-data (>=1.34.0,<1.35.0)", "mypy-boto3-cloudwatch (>=1.34.0,<1.35.0)", "mypy-boto3-codeartifact (>=1.34.0,<1.35.0)", "mypy-boto3-codebuild (>=1.34.0,<1.35.0)", "mypy-boto3-codecatalyst (>=1.34.0,<1.35.0)", "mypy-boto3-codecommit (>=1.34.0,<1.35.0)", "mypy-boto3-codeconnections (>=1.34.0,<1.35.0)", "mypy-boto3-codedeploy (>=1.34.0,<1.35.0)", "mypy-boto3-codeguru-reviewer (>=1.34.0,<1.35.0)", "mypy-boto3-codeguru-security (>=1.34.0,<1.35.0)", "mypy-boto3-codeguruprofiler (>=1.34.0,<1.35.0)", "mypy-boto3-codepipeline (>=1.34.0,<1.35.0)", "mypy-boto3-codestar (>=1.34.0,<1.35.0)", "mypy-boto3-codestar-connections (>=1.34.0,<1.35.0)", "mypy-boto3-codestar-notifications (>=1.34.0,<1.35.0)", "mypy-boto3-cognito-identity (>=1.34.0,<1.35.0)", "mypy-boto3-cognito-idp (>=1.34.0,<1.35.0)", "mypy-boto3-cognito-sync (>=1.34.0,<1.35.0)", "mypy-boto3-comprehend (>=1.34.0,<1.35.0)", "mypy-boto3-comprehendmedical (>=1.34.0,<1.35.0)", "mypy-boto3-compute-optimizer (>=1.34.0,<1.35.0)", "mypy-boto3-config (>=1.34.0,<1.35.0)", "mypy-boto3-connect (>=1.34.0,<1.35.0)", "mypy-boto3-connect-contact-lens (>=1.34.0,<1.35.0)", "mypy-boto3-connectcampaigns (>=1.34.0,<1.35.0)", "mypy-boto3-connectcases (>=1.34.0,<1.35.0)", "mypy-boto3-connectparticipant (>=1.34.0,<1.35.0)", "mypy-boto3-controlcatalog (>=1.34.0,<1.35.0)", "mypy-boto3-controltower (>=1.34.0,<1.35.0)", "mypy-boto3-cost-optimization-hub (>=1.34.0,<1.35.0)", "mypy-boto3-cur (>=1.34.0,<1.35.0)", "mypy-boto3-customer-profiles (>=1.34.0,<1.35.0)", "mypy-boto3-databrew (>=1.34.0,<1.35.0)", "mypy-boto3-dataexchange (>=1.34.0,<1.35.0)", "mypy-boto3-datapipeline (>=1.34.0,<1.35.0)", "mypy-boto3-datasync (>=1.34.0,<1.35.0)", "mypy-boto3-datazone (>=1.34.0,<1.35.0)", "mypy-boto3-dax (>=1.34.0,<1.35.0)", "mypy-boto3-deadline (>=1.34.0,<1.35.0)", "mypy-boto3-detective (>=1.34.0,<1.35.0)", "mypy-boto3-devicefarm (>=1.34.0,<1.35.0)", "mypy-boto3-devops-guru (>=1.34.0,<1.35.0)", "mypy-boto3-directconnect (>=1.34.0,<1.35.0)", "mypy-boto3-discovery (>=1.34.0,<1.35.0)", "mypy-boto3-dlm (>=1.34.0,<1.35.0)", "mypy-boto3-dms (>=1.34.0,<1.35.0)", "mypy-boto3-docdb (>=1.34.0,<1.35.0)", "mypy-boto3-docdb-elastic (>=1.34.0,<1.35.0)", "mypy-boto3-drs (>=1.34.0,<1.35.0)", "mypy-boto3-ds (>=1.34.0,<1.35.0)", "mypy-boto3-dynamodb (>=1.34.0,<1.35.0)", "mypy-boto3-dynamodbstreams (>=1.34.0,<1.35.0)", "mypy-boto3-ebs (>=1.34.0,<1.35.0)", "mypy-boto3-ec2 (>=1.34.0,<1.35.0)", "mypy-boto3-ec2-instance-connect (>=1.34.0,<1.35.0)", "mypy-boto3-ecr (>=1.34.0,<1.35.0)", "mypy-boto3-ecr-public (>=1.34.0,<1.35.0)", "mypy-boto3-ecs (>=1.34.0,<1.35.0)", "mypy-boto3-efs (>=1.34.0,<1.35.0)", "mypy-boto3-eks (>=1.34.0,<1.35.0)", "mypy-boto3-eks-auth (>=1.34.0,<1.35.0)", "mypy-boto3-elastic-inference (>=1.34.0,<1.35.0)", "mypy-boto3-elasticache (>=1.34.0,<1.35.0)", "mypy-boto3-elasticbeanstalk (>=1.34.0,<1.35.0)", "mypy-boto3-elastictranscoder (>=1.34.0,<1.35.0)", "mypy-boto3-elb (>=1.34.0,<1.35.0)", "mypy-boto3-elbv2 (>=1.34.0,<1.35.0)", "mypy-boto3-emr (>=1.34.0,<1.35.0)", "mypy-boto3-emr-containers (>=1.34.0,<1.35.0)", "mypy-boto3-emr-serverless (>=1.34.0,<1.35.0)", "mypy-boto3-entityresolution (>=1.34.0,<1.35.0)", "mypy-boto3-es (>=1.34.0,<1.35.0)", "mypy-boto3-events (>=1.34.0,<1.35.0)", "mypy-boto3-evidently (>=1.34.0,<1.35.0)", "mypy-boto3-finspace (>=1.34.0,<1.35.0)", "mypy-boto3-finspace-data (>=1.34.0,<1.35.0)", "mypy-boto3-firehose (>=1.34.0,<1.35.0)", "mypy-boto3-fis (>=1.34.0,<1.35.0)", "mypy-boto3-fms (>=1.34.0,<1.35.0)", "mypy-boto3-forecast (>=1.34.0,<1.35.0)", "mypy-boto3-forecastquery (>=1.34.0,<1.35.0)", "mypy-boto3-frauddetector (>=1.34.0,<1.35.0)", "mypy-boto3-freetier (>=1.34.0,<1.35.0)", "mypy-boto3-fsx (>=1.34.0,<1.35.0)", "mypy-boto3-gamelift (>=1.34.0,<1.35.0)", "mypy-boto3-glacier (>=1.34.0,<1.35.0)", "mypy-boto3-globalaccelerator (>=1.34.0,<1.35.0)", "mypy-boto3-glue (>=1.34.0,<1.35.0)", "mypy-boto3-grafana (>=1.34.0,<1.35.0)", "mypy-boto3-greengrass (>=1.34.0,<1.35.0)", "mypy-boto3-greengrassv2 (>=1.34.0,<1.35.0)", "mypy-boto3-groundstation (>=1.34.0,<1.35.0)", "mypy-boto3-guardduty (>=1.34.0,<1.35.0)", "mypy-boto3-health (>=1.34.0,<1.35.0)", "mypy-boto3-healthlake (>=1.34.0,<1.35.0)", "mypy-boto3-iam (>=1.34.0,<1.35.0)", "mypy-boto3-identitystore (>=1.34.0,<1.35.0)", "mypy-boto3-imagebuilder (>=1.34.0,<1.35.0)", "mypy-boto3-importexport (>=1.34.0,<1.35.0)", "mypy-boto3-inspector (>=1.34.0,<1.35.0)", "mypy-boto3-inspector-scan (>=1.34.0,<1.35.0)", "mypy-boto3-inspector2 (>=1.34.0,<1.35.0)", "mypy-boto3-internetmonitor (>=1.34.0,<1.35.0)", "mypy-boto3-iot (>=1.34.0,<1.35.0)", "mypy-boto3-iot-data (>=1.34.0,<1.35.0)", "mypy-boto3-iot-jobs-data (>=1.34.0,<1.35.0)", "mypy-boto3-iot1click-devices (>=1.34.0,<1.35.0)", "mypy-boto3-iot1click-projects (>=1.34.0,<1.35.0)", "mypy-boto3-iotanalytics (>=1.34.0,<1.35.0)", "mypy-boto3-iotdeviceadvisor (>=1.34.0,<1.35.0)", "mypy-boto3-iotevents (>=1.34.0,<1.35.0)", "mypy-boto3-iotevents-data (>=1.34.0,<1.35.0)", "mypy-boto3-iotfleethub (>=1.34.0,<1.35.0)", "mypy-boto3-iotfleetwise (>=1.34.0,<1.35.0)", "mypy-boto3-iotsecuretunneling (>=1.34.0,<1.35.0)", "mypy-boto3-iotsitewise (>=1.34.0,<1.35.0)", "mypy-boto3-iotthingsgraph (>=1.34.0,<1.35.0)", "mypy-boto3-iottwinmaker (>=1.34.0,<1.35.0)", "mypy-boto3-iotwireless (>=1.34.0,<1.35.0)", "mypy-boto3-ivs (>=1.34.0,<1.35.0)", "mypy-boto3-ivs-realtime (>=1.34.0,<1.35.0)", "mypy-boto3-ivschat (>=1.34.0,<1.35.0)", "mypy-boto3-kafka (>=1.34.0,<1.35.0)", "mypy-boto3-kafkaconnect (>=1.34.0,<1.35.0)", "mypy-boto3-kendra (>=1.34.0,<1.35.0)", "mypy-boto3-kendra-ranking (>=1.34.0,<1.35.0)", "mypy-boto3-keyspaces (>=1.34.0,<1.35.0)", "mypy-boto3-kinesis (>=1.34.0,<1.35.0)", "mypy-boto3-kinesis-video-archived-media (>=1.34.0,<1.35.0)", "mypy-boto3-kinesis-video-media (>=1.34.0,<1.35.0)", "mypy-boto3-kinesis-video-signaling (>=1.34.0,<1.35.0)", "mypy-boto3-kinesis-video-webrtc-storage (>=1.34.0,<1.35.0)", "mypy-boto3-kinesisanalytics (>=1.34.0,<1.35.0)", "mypy-boto3-kinesisanalyticsv2 (>=1.34.0,<1.35.0)", "mypy-boto3-kinesisvideo (>=1.34.0,<1.35.0)", "mypy-boto3-kms (>=1.34.0,<1.35.0)", "mypy-boto3-lakeformation (>=1.34.0,<1.35.0)", "mypy-boto3-lambda (>=1.34.0,<1.35.0)", "mypy-boto3-launch-wizard (>=1.34.0,<1.35.0)", "mypy-boto3-lex-models (>=1.34.0,<1.35.0)", "mypy-boto3-lex-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-lexv2-models (>=1.34.0,<1.35.0)", "mypy-boto3-lexv2-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-license-manager (>=1.34.0,<1.35.0)", "mypy-boto3-license-manager-linux-subscriptions (>=1.34.0,<1.35.0)", "mypy-boto3-license-manager-user-subscriptions (>=1.34.0,<1.35.0)", "mypy-boto3-lightsail (>=1.34.0,<1.35.0)", "mypy-boto3-location (>=1.34.0,<1.35.0)", "mypy-boto3-logs (>=1.34.0,<1.35.0)", "mypy-boto3-lookoutequipment (>=1.34.0,<1.35.0)", "mypy-boto3-lookoutmetrics (>=1.34.0,<1.35.0)", "mypy-boto3-lookoutvision (>=1.34.0,<1.35.0)", "mypy-boto3-m2 (>=1.34.0,<1.35.0)", "mypy-boto3-machinelearning (>=1.34.0,<1.35.0)", "mypy-boto3-macie2 (>=1.34.0,<1.35.0)", "mypy-boto3-mailmanager (>=1.34.0,<1.35.0)", "mypy-boto3-managedblockchain (>=1.34.0,<1.35.0)", "mypy-boto3-managedblockchain-query (>=1.34.0,<1.35.0)", "mypy-boto3-marketplace-agreement (>=1.34.0,<1.35.0)", "mypy-boto3-marketplace-catalog (>=1.34.0,<1.35.0)", "mypy-boto3-marketplace-deployment (>=1.34.0,<1.35.0)", "mypy-boto3-marketplace-entitlement (>=1.34.0,<1.35.0)", "mypy-boto3-marketplacecommerceanalytics (>=1.34.0,<1.35.0)", "mypy-boto3-mediaconnect (>=1.34.0,<1.35.0)", "mypy-boto3-mediaconvert (>=1.34.0,<1.35.0)", "mypy-boto3-medialive (>=1.34.0,<1.35.0)", "mypy-boto3-mediapackage (>=1.34.0,<1.35.0)", "mypy-boto3-mediapackage-vod (>=1.34.0,<1.35.0)", "mypy-boto3-mediapackagev2 (>=1.34.0,<1.35.0)", "mypy-boto3-mediastore (>=1.34.0,<1.35.0)", "mypy-boto3-mediastore-data (>=1.34.0,<1.35.0)", "mypy-boto3-mediatailor (>=1.34.0,<1.35.0)", "mypy-boto3-medical-imaging (>=1.34.0,<1.35.0)", "mypy-boto3-memorydb (>=1.34.0,<1.35.0)", "mypy-boto3-meteringmarketplace (>=1.34.0,<1.35.0)", "mypy-boto3-mgh (>=1.34.0,<1.35.0)", "mypy-boto3-mgn (>=1.34.0,<1.35.0)", "mypy-boto3-migration-hub-refactor-spaces (>=1.34.0,<1.35.0)", "mypy-boto3-migrationhub-config (>=1.34.0,<1.35.0)", "mypy-boto3-migrationhuborchestrator (>=1.34.0,<1.35.0)", "mypy-boto3-migrationhubstrategy (>=1.34.0,<1.35.0)", "mypy-boto3-mq (>=1.34.0,<1.35.0)", "mypy-boto3-mturk (>=1.34.0,<1.35.0)", "mypy-boto3-mwaa (>=1.34.0,<1.35.0)", "mypy-boto3-neptune (>=1.34.0,<1.35.0)", "mypy-boto3-neptune-graph (>=1.34.0,<1.35.0)", "mypy-boto3-neptunedata (>=1.34.0,<1.35.0)", "mypy-boto3-network-firewall (>=1.34.0,<1.35.0)", "mypy-boto3-networkmanager (>=1.34.0,<1.35.0)", "mypy-boto3-networkmonitor (>=1.34.0,<1.35.0)", "mypy-boto3-nimble (>=1.34.0,<1.35.0)", "mypy-boto3-oam (>=1.34.0,<1.35.0)", "mypy-boto3-omics (>=1.34.0,<1.35.0)", "mypy-boto3-opensearch (>=1.34.0,<1.35.0)", "mypy-boto3-opensearchserverless (>=1.34.0,<1.35.0)", "mypy-boto3-opsworks (>=1.34.0,<1.35.0)", "mypy-boto3-opsworkscm (>=1.34.0,<1.35.0)", "mypy-boto3-organizations (>=1.34.0,<1.35.0)", "mypy-boto3-osis (>=1.34.0,<1.35.0)", "mypy-boto3-outposts (>=1.34.0,<1.35.0)", "mypy-boto3-panorama (>=1.34.0,<1.35.0)", "mypy-boto3-payment-cryptography (>=1.34.0,<1.35.0)", "mypy-boto3-payment-cryptography-data (>=1.34.0,<1.35.0)", "mypy-boto3-pca-connector-ad (>=1.34.0,<1.35.0)", "mypy-boto3-pca-connector-scep (>=1.34.0,<1.35.0)", "mypy-boto3-personalize (>=1.34.0,<1.35.0)", "mypy-boto3-personalize-events (>=1.34.0,<1.35.0)", "mypy-boto3-personalize-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-pi (>=1.34.0,<1.35.0)", "mypy-boto3-pinpoint (>=1.34.0,<1.35.0)", "mypy-boto3-pinpoint-email (>=1.34.0,<1.35.0)", "mypy-boto3-pinpoint-sms-voice (>=1.34.0,<1.35.0)", "mypy-boto3-pinpoint-sms-voice-v2 (>=1.34.0,<1.35.0)", "mypy-boto3-pipes (>=1.34.0,<1.35.0)", "mypy-boto3-polly (>=1.34.0,<1.35.0)", "mypy-boto3-pricing (>=1.34.0,<1.35.0)", "mypy-boto3-privatenetworks (>=1.34.0,<1.35.0)", "mypy-boto3-proton (>=1.34.0,<1.35.0)", "mypy-boto3-qapps (>=1.34.0,<1.35.0)", "mypy-boto3-qbusiness (>=1.34.0,<1.35.0)", "mypy-boto3-qconnect (>=1.34.0,<1.35.0)", "mypy-boto3-qldb (>=1.34.0,<1.35.0)", "mypy-boto3-qldb-session (>=1.34.0,<1.35.0)", "mypy-boto3-quicksight (>=1.34.0,<1.35.0)", "mypy-boto3-ram (>=1.34.0,<1.35.0)", "mypy-boto3-rbin (>=1.34.0,<1.35.0)", "mypy-boto3-rds (>=1.34.0,<1.35.0)", "mypy-boto3-rds-data (>=1.34.0,<1.35.0)", "mypy-boto3-redshift (>=1.34.0,<1.35.0)", "mypy-boto3-redshift-data (>=1.34.0,<1.35.0)", "mypy-boto3-redshift-serverless (>=1.34.0,<1.35.0)", "mypy-boto3-rekognition (>=1.34.0,<1.35.0)", "mypy-boto3-repostspace (>=1.34.0,<1.35.0)", "mypy-boto3-resiliencehub (>=1.34.0,<1.35.0)", "mypy-boto3-resource-explorer-2 (>=1.34.0,<1.35.0)", "mypy-boto3-resource-groups (>=1.34.0,<1.35.0)", "mypy-boto3-resourcegroupstaggingapi (>=1.34.0,<1.35.0)", "mypy-boto3-robomaker (>=1.34.0,<1.35.0)", "mypy-boto3-rolesanywhere (>=1.34.0,<1.35.0)", "mypy-boto3-route53 (>=1.34.0,<1.35.0)", "mypy-boto3-route53-recovery-cluster (>=1.34.0,<1.35.0)", "mypy-boto3-route53-recovery-control-config (>=1.34.0,<1.35.0)", "mypy-boto3-route53-recovery-readiness (>=1.34.0,<1.35.0)", "mypy-boto3-route53domains (>=1.34.0,<1.35.0)", "mypy-boto3-route53profiles (>=1.34.0,<1.35.0)", "mypy-boto3-route53resolver (>=1.34.0,<1.35.0)", "mypy-boto3-rum (>=1.34.0,<1.35.0)", "mypy-boto3-s3 (>=1.34.0,<1.35.0)", "mypy-boto3-s3control (>=1.34.0,<1.35.0)", "mypy-boto3-s3outposts (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker-a2i-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker-edge (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker-featurestore-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker-geospatial (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker-metrics (>=1.34.0,<1.35.0)", "mypy-boto3-sagemaker-runtime (>=1.34.0,<1.35.0)", "mypy-boto3-savingsplans (>=1.34.0,<1.35.0)", "mypy-boto3-scheduler (>=1.34.0,<1.35.0)", "mypy-boto3-schemas (>=1.34.0,<1.35.0)", "mypy-boto3-sdb (>=1.34.0,<1.35.0)", "mypy-boto3-secretsmanager (>=1.34.0,<1.35.0)", "mypy-boto3-securityhub (>=1.34.0,<1.35.0)", "mypy-boto3-securitylake (>=1.34.0,<1.35.0)", "mypy-boto3-serverlessrepo (>=1.34.0,<1.35.0)", "mypy-boto3-service-quotas (>=1.34.0,<1.35.0)", "mypy-boto3-servicecatalog (>=1.34.0,<1.35.0)", "mypy-boto3-servicecatalog-appregistry (>=1.34.0,<1.35.0)", "mypy-boto3-servicediscovery (>=1.34.0,<1.35.0)", "mypy-boto3-ses (>=1.34.0,<1.35.0)", "mypy-boto3-sesv2 (>=1.34.0,<1.35.0)", "mypy-boto3-shield (>=1.34.0,<1.35.0)", "mypy-boto3-signer (>=1.34.0,<1.35.0)", "mypy-boto3-simspaceweaver (>=1.34.0,<1.35.0)", "mypy-boto3-sms (>=1.34.0,<1.35.0)", "mypy-boto3-sms-voice (>=1.34.0,<1.35.0)", "mypy-boto3-snow-device-management (>=1.34.0,<1.35.0)", "mypy-boto3-snowball (>=1.34.0,<1.35.0)", "mypy-boto3-sns (>=1.34.0,<1.35.0)", "mypy-boto3-sqs (>=1.34.0,<1.35.0)", "mypy-boto3-ssm (>=1.34.0,<1.35.0)", "mypy-boto3-ssm-contacts (>=1.34.0,<1.35.0)", "mypy-boto3-ssm-incidents (>=1.34.0,<1.35.0)", "mypy-boto3-ssm-sap (>=1.34.0,<1.35.0)", "mypy-boto3-sso (>=1.34.0,<1.35.0)", "mypy-boto3-sso-admin (>=1.34.0,<1.35.0)", "mypy-boto3-sso-oidc (>=1.34.0,<1.35.0)", "mypy-boto3-stepfunctions (>=1.34.0,<1.35.0)", "mypy-boto3-storagegateway (>=1.34.0,<1.35.0)", "mypy-boto3-sts (>=1.34.0,<1.35.0)", "mypy-boto3-supplychain (>=1.34.0,<1.35.0)", "mypy-boto3-support (>=1.34.0,<1.35.0)", "mypy-boto3-support-app (>=1.34.0,<1.35.0)", "mypy-boto3-swf (>=1.34.0,<1.35.0)", "mypy-boto3-synthetics (>=1.34.0,<1.35.0)", "mypy-boto3-taxsettings (>=1.34.0,<1.35.0)", "mypy-boto3-textract (>=1.34.0,<1.35.0)", "mypy-boto3-timestream-influxdb (>=1.34.0,<1.35.0)", "mypy-boto3-timestream-query (>=1.34.0,<1.35.0)", "mypy-boto3-timestream-write (>=1.34.0,<1.35.0)", "mypy-boto3-tnb (>=1.34.0,<1.35.0)", "mypy-boto3-transcribe (>=1.34.0,<1.35.0)", "mypy-boto3-transfer (>=1.34.0,<1.35.0)", "mypy-boto3-translate (>=1.34.0,<1.35.0)", "mypy-boto3-trustedadvisor (>=1.34.0,<1.35.0)", "mypy-boto3-verifiedpermissions (>=1.34.0,<1.35.0)", "mypy-boto3-voice-id (>=1.34.0,<1.35.0)", "mypy-boto3-vpc-lattice (>=1.34.0,<1.35.0)", "mypy-boto3-waf (>=1.34.0,<1.35.0)", "mypy-boto3-waf-regional (>=1.34.0,<1.35.0)", "mypy-boto3-wafv2 (>=1.34.0,<1.35.0)", "mypy-boto3-wellarchitected (>=1.34.0,<1.35.0)", "mypy-boto3-wisdom (>=1.34.0,<1.35.0)", "mypy-boto3-workdocs (>=1.34.0,<1.35.0)", "mypy-boto3-worklink (>=1.34.0,<1.35.0)", "mypy-boto3-workmail (>=1.34.0,<1.35.0)", "mypy-boto3-workmailmessageflow (>=1.34.0,<1.35.0)", "mypy-boto3-workspaces (>=1.34.0,<1.35.0)", "mypy-boto3-workspaces-thin-client (>=1.34.0,<1.35.0)", "mypy-boto3-workspaces-web (>=1.34.0,<1.35.0)", "mypy-boto3-xray (>=1.34.0,<1.35.0)"] +amp = ["mypy-boto3-amp (>=1.34.0,<1.35.0)"] +amplify = ["mypy-boto3-amplify (>=1.34.0,<1.35.0)"] +amplifybackend = ["mypy-boto3-amplifybackend (>=1.34.0,<1.35.0)"] +amplifyuibuilder = ["mypy-boto3-amplifyuibuilder (>=1.34.0,<1.35.0)"] +apigateway = ["mypy-boto3-apigateway (>=1.34.0,<1.35.0)"] +apigatewaymanagementapi = ["mypy-boto3-apigatewaymanagementapi (>=1.34.0,<1.35.0)"] +apigatewayv2 = ["mypy-boto3-apigatewayv2 (>=1.34.0,<1.35.0)"] +appconfig = ["mypy-boto3-appconfig (>=1.34.0,<1.35.0)"] +appconfigdata = ["mypy-boto3-appconfigdata (>=1.34.0,<1.35.0)"] +appfabric = ["mypy-boto3-appfabric (>=1.34.0,<1.35.0)"] +appflow = ["mypy-boto3-appflow (>=1.34.0,<1.35.0)"] +appintegrations = ["mypy-boto3-appintegrations (>=1.34.0,<1.35.0)"] +application-autoscaling = ["mypy-boto3-application-autoscaling (>=1.34.0,<1.35.0)"] +application-insights = ["mypy-boto3-application-insights (>=1.34.0,<1.35.0)"] +application-signals = ["mypy-boto3-application-signals (>=1.34.0,<1.35.0)"] +applicationcostprofiler = ["mypy-boto3-applicationcostprofiler (>=1.34.0,<1.35.0)"] +appmesh = ["mypy-boto3-appmesh (>=1.34.0,<1.35.0)"] +apprunner = ["mypy-boto3-apprunner (>=1.34.0,<1.35.0)"] +appstream = ["mypy-boto3-appstream (>=1.34.0,<1.35.0)"] +appsync = ["mypy-boto3-appsync (>=1.34.0,<1.35.0)"] +apptest = ["mypy-boto3-apptest (>=1.34.0,<1.35.0)"] +arc-zonal-shift = ["mypy-boto3-arc-zonal-shift (>=1.34.0,<1.35.0)"] +artifact = ["mypy-boto3-artifact (>=1.34.0,<1.35.0)"] +athena = ["mypy-boto3-athena (>=1.34.0,<1.35.0)"] +auditmanager = ["mypy-boto3-auditmanager (>=1.34.0,<1.35.0)"] +autoscaling = ["mypy-boto3-autoscaling (>=1.34.0,<1.35.0)"] +autoscaling-plans = ["mypy-boto3-autoscaling-plans (>=1.34.0,<1.35.0)"] +b2bi = ["mypy-boto3-b2bi (>=1.34.0,<1.35.0)"] +backup = ["mypy-boto3-backup (>=1.34.0,<1.35.0)"] +backup-gateway = ["mypy-boto3-backup-gateway (>=1.34.0,<1.35.0)"] +batch = ["mypy-boto3-batch (>=1.34.0,<1.35.0)"] +bcm-data-exports = ["mypy-boto3-bcm-data-exports (>=1.34.0,<1.35.0)"] +bedrock = ["mypy-boto3-bedrock (>=1.34.0,<1.35.0)"] +bedrock-agent = ["mypy-boto3-bedrock-agent (>=1.34.0,<1.35.0)"] +bedrock-agent-runtime = ["mypy-boto3-bedrock-agent-runtime (>=1.34.0,<1.35.0)"] +bedrock-runtime = ["mypy-boto3-bedrock-runtime (>=1.34.0,<1.35.0)"] +billingconductor = ["mypy-boto3-billingconductor (>=1.34.0,<1.35.0)"] +boto3 = ["boto3 (==1.34.149)", "botocore (==1.34.149)"] +braket = ["mypy-boto3-braket (>=1.34.0,<1.35.0)"] +budgets = ["mypy-boto3-budgets (>=1.34.0,<1.35.0)"] +ce = ["mypy-boto3-ce (>=1.34.0,<1.35.0)"] +chatbot = ["mypy-boto3-chatbot (>=1.34.0,<1.35.0)"] +chime = ["mypy-boto3-chime (>=1.34.0,<1.35.0)"] +chime-sdk-identity = ["mypy-boto3-chime-sdk-identity (>=1.34.0,<1.35.0)"] +chime-sdk-media-pipelines = ["mypy-boto3-chime-sdk-media-pipelines (>=1.34.0,<1.35.0)"] +chime-sdk-meetings = ["mypy-boto3-chime-sdk-meetings (>=1.34.0,<1.35.0)"] +chime-sdk-messaging = ["mypy-boto3-chime-sdk-messaging (>=1.34.0,<1.35.0)"] +chime-sdk-voice = ["mypy-boto3-chime-sdk-voice (>=1.34.0,<1.35.0)"] +cleanrooms = ["mypy-boto3-cleanrooms (>=1.34.0,<1.35.0)"] +cleanroomsml = ["mypy-boto3-cleanroomsml (>=1.34.0,<1.35.0)"] +cloud9 = ["mypy-boto3-cloud9 (>=1.34.0,<1.35.0)"] +cloudcontrol = ["mypy-boto3-cloudcontrol (>=1.34.0,<1.35.0)"] +clouddirectory = ["mypy-boto3-clouddirectory (>=1.34.0,<1.35.0)"] +cloudformation = ["mypy-boto3-cloudformation (>=1.34.0,<1.35.0)"] +cloudfront = ["mypy-boto3-cloudfront (>=1.34.0,<1.35.0)"] +cloudfront-keyvaluestore = ["mypy-boto3-cloudfront-keyvaluestore (>=1.34.0,<1.35.0)"] +cloudhsm = ["mypy-boto3-cloudhsm (>=1.34.0,<1.35.0)"] +cloudhsmv2 = ["mypy-boto3-cloudhsmv2 (>=1.34.0,<1.35.0)"] +cloudsearch = ["mypy-boto3-cloudsearch (>=1.34.0,<1.35.0)"] +cloudsearchdomain = ["mypy-boto3-cloudsearchdomain (>=1.34.0,<1.35.0)"] +cloudtrail = ["mypy-boto3-cloudtrail (>=1.34.0,<1.35.0)"] +cloudtrail-data = ["mypy-boto3-cloudtrail-data (>=1.34.0,<1.35.0)"] +cloudwatch = ["mypy-boto3-cloudwatch (>=1.34.0,<1.35.0)"] +codeartifact = ["mypy-boto3-codeartifact (>=1.34.0,<1.35.0)"] +codebuild = ["mypy-boto3-codebuild (>=1.34.0,<1.35.0)"] +codecatalyst = ["mypy-boto3-codecatalyst (>=1.34.0,<1.35.0)"] +codecommit = ["mypy-boto3-codecommit (>=1.34.0,<1.35.0)"] +codeconnections = ["mypy-boto3-codeconnections (>=1.34.0,<1.35.0)"] +codedeploy = ["mypy-boto3-codedeploy (>=1.34.0,<1.35.0)"] +codeguru-reviewer = ["mypy-boto3-codeguru-reviewer (>=1.34.0,<1.35.0)"] +codeguru-security = ["mypy-boto3-codeguru-security (>=1.34.0,<1.35.0)"] +codeguruprofiler = ["mypy-boto3-codeguruprofiler (>=1.34.0,<1.35.0)"] +codepipeline = ["mypy-boto3-codepipeline (>=1.34.0,<1.35.0)"] +codestar = ["mypy-boto3-codestar (>=1.34.0,<1.35.0)"] +codestar-connections = ["mypy-boto3-codestar-connections (>=1.34.0,<1.35.0)"] +codestar-notifications = ["mypy-boto3-codestar-notifications (>=1.34.0,<1.35.0)"] +cognito-identity = ["mypy-boto3-cognito-identity (>=1.34.0,<1.35.0)"] +cognito-idp = ["mypy-boto3-cognito-idp (>=1.34.0,<1.35.0)"] +cognito-sync = ["mypy-boto3-cognito-sync (>=1.34.0,<1.35.0)"] +comprehend = ["mypy-boto3-comprehend (>=1.34.0,<1.35.0)"] +comprehendmedical = ["mypy-boto3-comprehendmedical (>=1.34.0,<1.35.0)"] +compute-optimizer = ["mypy-boto3-compute-optimizer (>=1.34.0,<1.35.0)"] +config = ["mypy-boto3-config (>=1.34.0,<1.35.0)"] +connect = ["mypy-boto3-connect (>=1.34.0,<1.35.0)"] +connect-contact-lens = ["mypy-boto3-connect-contact-lens (>=1.34.0,<1.35.0)"] +connectcampaigns = ["mypy-boto3-connectcampaigns (>=1.34.0,<1.35.0)"] +connectcases = ["mypy-boto3-connectcases (>=1.34.0,<1.35.0)"] +connectparticipant = ["mypy-boto3-connectparticipant (>=1.34.0,<1.35.0)"] +controlcatalog = ["mypy-boto3-controlcatalog (>=1.34.0,<1.35.0)"] +controltower = ["mypy-boto3-controltower (>=1.34.0,<1.35.0)"] +cost-optimization-hub = ["mypy-boto3-cost-optimization-hub (>=1.34.0,<1.35.0)"] +cur = ["mypy-boto3-cur (>=1.34.0,<1.35.0)"] +customer-profiles = ["mypy-boto3-customer-profiles (>=1.34.0,<1.35.0)"] +databrew = ["mypy-boto3-databrew (>=1.34.0,<1.35.0)"] +dataexchange = ["mypy-boto3-dataexchange (>=1.34.0,<1.35.0)"] +datapipeline = ["mypy-boto3-datapipeline (>=1.34.0,<1.35.0)"] +datasync = ["mypy-boto3-datasync (>=1.34.0,<1.35.0)"] +datazone = ["mypy-boto3-datazone (>=1.34.0,<1.35.0)"] +dax = ["mypy-boto3-dax (>=1.34.0,<1.35.0)"] +deadline = ["mypy-boto3-deadline (>=1.34.0,<1.35.0)"] +detective = ["mypy-boto3-detective (>=1.34.0,<1.35.0)"] +devicefarm = ["mypy-boto3-devicefarm (>=1.34.0,<1.35.0)"] +devops-guru = ["mypy-boto3-devops-guru (>=1.34.0,<1.35.0)"] +directconnect = ["mypy-boto3-directconnect (>=1.34.0,<1.35.0)"] +discovery = ["mypy-boto3-discovery (>=1.34.0,<1.35.0)"] +dlm = ["mypy-boto3-dlm (>=1.34.0,<1.35.0)"] +dms = ["mypy-boto3-dms (>=1.34.0,<1.35.0)"] +docdb = ["mypy-boto3-docdb (>=1.34.0,<1.35.0)"] +docdb-elastic = ["mypy-boto3-docdb-elastic (>=1.34.0,<1.35.0)"] +drs = ["mypy-boto3-drs (>=1.34.0,<1.35.0)"] +ds = ["mypy-boto3-ds (>=1.34.0,<1.35.0)"] +dynamodb = ["mypy-boto3-dynamodb (>=1.34.0,<1.35.0)"] +dynamodbstreams = ["mypy-boto3-dynamodbstreams (>=1.34.0,<1.35.0)"] +ebs = ["mypy-boto3-ebs (>=1.34.0,<1.35.0)"] +ec2 = ["mypy-boto3-ec2 (>=1.34.0,<1.35.0)"] +ec2-instance-connect = ["mypy-boto3-ec2-instance-connect (>=1.34.0,<1.35.0)"] +ecr = ["mypy-boto3-ecr (>=1.34.0,<1.35.0)"] +ecr-public = ["mypy-boto3-ecr-public (>=1.34.0,<1.35.0)"] +ecs = ["mypy-boto3-ecs (>=1.34.0,<1.35.0)"] +efs = ["mypy-boto3-efs (>=1.34.0,<1.35.0)"] +eks = ["mypy-boto3-eks (>=1.34.0,<1.35.0)"] +eks-auth = ["mypy-boto3-eks-auth (>=1.34.0,<1.35.0)"] +elastic-inference = ["mypy-boto3-elastic-inference (>=1.34.0,<1.35.0)"] +elasticache = ["mypy-boto3-elasticache (>=1.34.0,<1.35.0)"] +elasticbeanstalk = ["mypy-boto3-elasticbeanstalk (>=1.34.0,<1.35.0)"] +elastictranscoder = ["mypy-boto3-elastictranscoder (>=1.34.0,<1.35.0)"] +elb = ["mypy-boto3-elb (>=1.34.0,<1.35.0)"] +elbv2 = ["mypy-boto3-elbv2 (>=1.34.0,<1.35.0)"] +emr = ["mypy-boto3-emr (>=1.34.0,<1.35.0)"] +emr-containers = ["mypy-boto3-emr-containers (>=1.34.0,<1.35.0)"] +emr-serverless = ["mypy-boto3-emr-serverless (>=1.34.0,<1.35.0)"] +entityresolution = ["mypy-boto3-entityresolution (>=1.34.0,<1.35.0)"] +es = ["mypy-boto3-es (>=1.34.0,<1.35.0)"] +essential = ["mypy-boto3-cloudformation (>=1.34.0,<1.35.0)", "mypy-boto3-dynamodb (>=1.34.0,<1.35.0)", "mypy-boto3-ec2 (>=1.34.0,<1.35.0)", "mypy-boto3-lambda (>=1.34.0,<1.35.0)", "mypy-boto3-rds (>=1.34.0,<1.35.0)", "mypy-boto3-s3 (>=1.34.0,<1.35.0)", "mypy-boto3-sqs (>=1.34.0,<1.35.0)"] +events = ["mypy-boto3-events (>=1.34.0,<1.35.0)"] +evidently = ["mypy-boto3-evidently (>=1.34.0,<1.35.0)"] +finspace = ["mypy-boto3-finspace (>=1.34.0,<1.35.0)"] +finspace-data = ["mypy-boto3-finspace-data (>=1.34.0,<1.35.0)"] +firehose = ["mypy-boto3-firehose (>=1.34.0,<1.35.0)"] +fis = ["mypy-boto3-fis (>=1.34.0,<1.35.0)"] +fms = ["mypy-boto3-fms (>=1.34.0,<1.35.0)"] +forecast = ["mypy-boto3-forecast (>=1.34.0,<1.35.0)"] +forecastquery = ["mypy-boto3-forecastquery (>=1.34.0,<1.35.0)"] +frauddetector = ["mypy-boto3-frauddetector (>=1.34.0,<1.35.0)"] +freetier = ["mypy-boto3-freetier (>=1.34.0,<1.35.0)"] +fsx = ["mypy-boto3-fsx (>=1.34.0,<1.35.0)"] +gamelift = ["mypy-boto3-gamelift (>=1.34.0,<1.35.0)"] +glacier = ["mypy-boto3-glacier (>=1.34.0,<1.35.0)"] +globalaccelerator = ["mypy-boto3-globalaccelerator (>=1.34.0,<1.35.0)"] +glue = ["mypy-boto3-glue (>=1.34.0,<1.35.0)"] +grafana = ["mypy-boto3-grafana (>=1.34.0,<1.35.0)"] +greengrass = ["mypy-boto3-greengrass (>=1.34.0,<1.35.0)"] +greengrassv2 = ["mypy-boto3-greengrassv2 (>=1.34.0,<1.35.0)"] +groundstation = ["mypy-boto3-groundstation (>=1.34.0,<1.35.0)"] +guardduty = ["mypy-boto3-guardduty (>=1.34.0,<1.35.0)"] +health = ["mypy-boto3-health (>=1.34.0,<1.35.0)"] +healthlake = ["mypy-boto3-healthlake (>=1.34.0,<1.35.0)"] +iam = ["mypy-boto3-iam (>=1.34.0,<1.35.0)"] +identitystore = ["mypy-boto3-identitystore (>=1.34.0,<1.35.0)"] +imagebuilder = ["mypy-boto3-imagebuilder (>=1.34.0,<1.35.0)"] +importexport = ["mypy-boto3-importexport (>=1.34.0,<1.35.0)"] +inspector = ["mypy-boto3-inspector (>=1.34.0,<1.35.0)"] +inspector-scan = ["mypy-boto3-inspector-scan (>=1.34.0,<1.35.0)"] +inspector2 = ["mypy-boto3-inspector2 (>=1.34.0,<1.35.0)"] +internetmonitor = ["mypy-boto3-internetmonitor (>=1.34.0,<1.35.0)"] +iot = ["mypy-boto3-iot (>=1.34.0,<1.35.0)"] +iot-data = ["mypy-boto3-iot-data (>=1.34.0,<1.35.0)"] +iot-jobs-data = ["mypy-boto3-iot-jobs-data (>=1.34.0,<1.35.0)"] +iot1click-devices = ["mypy-boto3-iot1click-devices (>=1.34.0,<1.35.0)"] +iot1click-projects = ["mypy-boto3-iot1click-projects (>=1.34.0,<1.35.0)"] +iotanalytics = ["mypy-boto3-iotanalytics (>=1.34.0,<1.35.0)"] +iotdeviceadvisor = ["mypy-boto3-iotdeviceadvisor (>=1.34.0,<1.35.0)"] +iotevents = ["mypy-boto3-iotevents (>=1.34.0,<1.35.0)"] +iotevents-data = ["mypy-boto3-iotevents-data (>=1.34.0,<1.35.0)"] +iotfleethub = ["mypy-boto3-iotfleethub (>=1.34.0,<1.35.0)"] +iotfleetwise = ["mypy-boto3-iotfleetwise (>=1.34.0,<1.35.0)"] +iotsecuretunneling = ["mypy-boto3-iotsecuretunneling (>=1.34.0,<1.35.0)"] +iotsitewise = ["mypy-boto3-iotsitewise (>=1.34.0,<1.35.0)"] +iotthingsgraph = ["mypy-boto3-iotthingsgraph (>=1.34.0,<1.35.0)"] +iottwinmaker = ["mypy-boto3-iottwinmaker (>=1.34.0,<1.35.0)"] +iotwireless = ["mypy-boto3-iotwireless (>=1.34.0,<1.35.0)"] +ivs = ["mypy-boto3-ivs (>=1.34.0,<1.35.0)"] +ivs-realtime = ["mypy-boto3-ivs-realtime (>=1.34.0,<1.35.0)"] +ivschat = ["mypy-boto3-ivschat (>=1.34.0,<1.35.0)"] +kafka = ["mypy-boto3-kafka (>=1.34.0,<1.35.0)"] +kafkaconnect = ["mypy-boto3-kafkaconnect (>=1.34.0,<1.35.0)"] +kendra = ["mypy-boto3-kendra (>=1.34.0,<1.35.0)"] +kendra-ranking = ["mypy-boto3-kendra-ranking (>=1.34.0,<1.35.0)"] +keyspaces = ["mypy-boto3-keyspaces (>=1.34.0,<1.35.0)"] +kinesis = ["mypy-boto3-kinesis (>=1.34.0,<1.35.0)"] +kinesis-video-archived-media = ["mypy-boto3-kinesis-video-archived-media (>=1.34.0,<1.35.0)"] +kinesis-video-media = ["mypy-boto3-kinesis-video-media (>=1.34.0,<1.35.0)"] +kinesis-video-signaling = ["mypy-boto3-kinesis-video-signaling (>=1.34.0,<1.35.0)"] +kinesis-video-webrtc-storage = ["mypy-boto3-kinesis-video-webrtc-storage (>=1.34.0,<1.35.0)"] +kinesisanalytics = ["mypy-boto3-kinesisanalytics (>=1.34.0,<1.35.0)"] +kinesisanalyticsv2 = ["mypy-boto3-kinesisanalyticsv2 (>=1.34.0,<1.35.0)"] +kinesisvideo = ["mypy-boto3-kinesisvideo (>=1.34.0,<1.35.0)"] +kms = ["mypy-boto3-kms (>=1.34.0,<1.35.0)"] +lakeformation = ["mypy-boto3-lakeformation (>=1.34.0,<1.35.0)"] +lambda = ["mypy-boto3-lambda (>=1.34.0,<1.35.0)"] +launch-wizard = ["mypy-boto3-launch-wizard (>=1.34.0,<1.35.0)"] +lex-models = ["mypy-boto3-lex-models (>=1.34.0,<1.35.0)"] +lex-runtime = ["mypy-boto3-lex-runtime (>=1.34.0,<1.35.0)"] +lexv2-models = ["mypy-boto3-lexv2-models (>=1.34.0,<1.35.0)"] +lexv2-runtime = ["mypy-boto3-lexv2-runtime (>=1.34.0,<1.35.0)"] +license-manager = ["mypy-boto3-license-manager (>=1.34.0,<1.35.0)"] +license-manager-linux-subscriptions = ["mypy-boto3-license-manager-linux-subscriptions (>=1.34.0,<1.35.0)"] +license-manager-user-subscriptions = ["mypy-boto3-license-manager-user-subscriptions (>=1.34.0,<1.35.0)"] +lightsail = ["mypy-boto3-lightsail (>=1.34.0,<1.35.0)"] +location = ["mypy-boto3-location (>=1.34.0,<1.35.0)"] +logs = ["mypy-boto3-logs (>=1.34.0,<1.35.0)"] +lookoutequipment = ["mypy-boto3-lookoutequipment (>=1.34.0,<1.35.0)"] +lookoutmetrics = ["mypy-boto3-lookoutmetrics (>=1.34.0,<1.35.0)"] +lookoutvision = ["mypy-boto3-lookoutvision (>=1.34.0,<1.35.0)"] +m2 = ["mypy-boto3-m2 (>=1.34.0,<1.35.0)"] +machinelearning = ["mypy-boto3-machinelearning (>=1.34.0,<1.35.0)"] +macie2 = ["mypy-boto3-macie2 (>=1.34.0,<1.35.0)"] +mailmanager = ["mypy-boto3-mailmanager (>=1.34.0,<1.35.0)"] +managedblockchain = ["mypy-boto3-managedblockchain (>=1.34.0,<1.35.0)"] +managedblockchain-query = ["mypy-boto3-managedblockchain-query (>=1.34.0,<1.35.0)"] +marketplace-agreement = ["mypy-boto3-marketplace-agreement (>=1.34.0,<1.35.0)"] +marketplace-catalog = ["mypy-boto3-marketplace-catalog (>=1.34.0,<1.35.0)"] +marketplace-deployment = ["mypy-boto3-marketplace-deployment (>=1.34.0,<1.35.0)"] +marketplace-entitlement = ["mypy-boto3-marketplace-entitlement (>=1.34.0,<1.35.0)"] +marketplacecommerceanalytics = ["mypy-boto3-marketplacecommerceanalytics (>=1.34.0,<1.35.0)"] +mediaconnect = ["mypy-boto3-mediaconnect (>=1.34.0,<1.35.0)"] +mediaconvert = ["mypy-boto3-mediaconvert (>=1.34.0,<1.35.0)"] +medialive = ["mypy-boto3-medialive (>=1.34.0,<1.35.0)"] +mediapackage = ["mypy-boto3-mediapackage (>=1.34.0,<1.35.0)"] +mediapackage-vod = ["mypy-boto3-mediapackage-vod (>=1.34.0,<1.35.0)"] +mediapackagev2 = ["mypy-boto3-mediapackagev2 (>=1.34.0,<1.35.0)"] +mediastore = ["mypy-boto3-mediastore (>=1.34.0,<1.35.0)"] +mediastore-data = ["mypy-boto3-mediastore-data (>=1.34.0,<1.35.0)"] +mediatailor = ["mypy-boto3-mediatailor (>=1.34.0,<1.35.0)"] +medical-imaging = ["mypy-boto3-medical-imaging (>=1.34.0,<1.35.0)"] +memorydb = ["mypy-boto3-memorydb (>=1.34.0,<1.35.0)"] +meteringmarketplace = ["mypy-boto3-meteringmarketplace (>=1.34.0,<1.35.0)"] +mgh = ["mypy-boto3-mgh (>=1.34.0,<1.35.0)"] +mgn = ["mypy-boto3-mgn (>=1.34.0,<1.35.0)"] +migration-hub-refactor-spaces = ["mypy-boto3-migration-hub-refactor-spaces (>=1.34.0,<1.35.0)"] +migrationhub-config = ["mypy-boto3-migrationhub-config (>=1.34.0,<1.35.0)"] +migrationhuborchestrator = ["mypy-boto3-migrationhuborchestrator (>=1.34.0,<1.35.0)"] +migrationhubstrategy = ["mypy-boto3-migrationhubstrategy (>=1.34.0,<1.35.0)"] +mq = ["mypy-boto3-mq (>=1.34.0,<1.35.0)"] +mturk = ["mypy-boto3-mturk (>=1.34.0,<1.35.0)"] +mwaa = ["mypy-boto3-mwaa (>=1.34.0,<1.35.0)"] +neptune = ["mypy-boto3-neptune (>=1.34.0,<1.35.0)"] +neptune-graph = ["mypy-boto3-neptune-graph (>=1.34.0,<1.35.0)"] +neptunedata = ["mypy-boto3-neptunedata (>=1.34.0,<1.35.0)"] +network-firewall = ["mypy-boto3-network-firewall (>=1.34.0,<1.35.0)"] +networkmanager = ["mypy-boto3-networkmanager (>=1.34.0,<1.35.0)"] +networkmonitor = ["mypy-boto3-networkmonitor (>=1.34.0,<1.35.0)"] +nimble = ["mypy-boto3-nimble (>=1.34.0,<1.35.0)"] +oam = ["mypy-boto3-oam (>=1.34.0,<1.35.0)"] +omics = ["mypy-boto3-omics (>=1.34.0,<1.35.0)"] +opensearch = ["mypy-boto3-opensearch (>=1.34.0,<1.35.0)"] +opensearchserverless = ["mypy-boto3-opensearchserverless (>=1.34.0,<1.35.0)"] +opsworks = ["mypy-boto3-opsworks (>=1.34.0,<1.35.0)"] +opsworkscm = ["mypy-boto3-opsworkscm (>=1.34.0,<1.35.0)"] +organizations = ["mypy-boto3-organizations (>=1.34.0,<1.35.0)"] +osis = ["mypy-boto3-osis (>=1.34.0,<1.35.0)"] +outposts = ["mypy-boto3-outposts (>=1.34.0,<1.35.0)"] +panorama = ["mypy-boto3-panorama (>=1.34.0,<1.35.0)"] +payment-cryptography = ["mypy-boto3-payment-cryptography (>=1.34.0,<1.35.0)"] +payment-cryptography-data = ["mypy-boto3-payment-cryptography-data (>=1.34.0,<1.35.0)"] +pca-connector-ad = ["mypy-boto3-pca-connector-ad (>=1.34.0,<1.35.0)"] +pca-connector-scep = ["mypy-boto3-pca-connector-scep (>=1.34.0,<1.35.0)"] +personalize = ["mypy-boto3-personalize (>=1.34.0,<1.35.0)"] +personalize-events = ["mypy-boto3-personalize-events (>=1.34.0,<1.35.0)"] +personalize-runtime = ["mypy-boto3-personalize-runtime (>=1.34.0,<1.35.0)"] +pi = ["mypy-boto3-pi (>=1.34.0,<1.35.0)"] +pinpoint = ["mypy-boto3-pinpoint (>=1.34.0,<1.35.0)"] +pinpoint-email = ["mypy-boto3-pinpoint-email (>=1.34.0,<1.35.0)"] +pinpoint-sms-voice = ["mypy-boto3-pinpoint-sms-voice (>=1.34.0,<1.35.0)"] +pinpoint-sms-voice-v2 = ["mypy-boto3-pinpoint-sms-voice-v2 (>=1.34.0,<1.35.0)"] +pipes = ["mypy-boto3-pipes (>=1.34.0,<1.35.0)"] +polly = ["mypy-boto3-polly (>=1.34.0,<1.35.0)"] +pricing = ["mypy-boto3-pricing (>=1.34.0,<1.35.0)"] +privatenetworks = ["mypy-boto3-privatenetworks (>=1.34.0,<1.35.0)"] +proton = ["mypy-boto3-proton (>=1.34.0,<1.35.0)"] +qapps = ["mypy-boto3-qapps (>=1.34.0,<1.35.0)"] +qbusiness = ["mypy-boto3-qbusiness (>=1.34.0,<1.35.0)"] +qconnect = ["mypy-boto3-qconnect (>=1.34.0,<1.35.0)"] +qldb = ["mypy-boto3-qldb (>=1.34.0,<1.35.0)"] +qldb-session = ["mypy-boto3-qldb-session (>=1.34.0,<1.35.0)"] +quicksight = ["mypy-boto3-quicksight (>=1.34.0,<1.35.0)"] +ram = ["mypy-boto3-ram (>=1.34.0,<1.35.0)"] +rbin = ["mypy-boto3-rbin (>=1.34.0,<1.35.0)"] +rds = ["mypy-boto3-rds (>=1.34.0,<1.35.0)"] +rds-data = ["mypy-boto3-rds-data (>=1.34.0,<1.35.0)"] +redshift = ["mypy-boto3-redshift (>=1.34.0,<1.35.0)"] +redshift-data = ["mypy-boto3-redshift-data (>=1.34.0,<1.35.0)"] +redshift-serverless = ["mypy-boto3-redshift-serverless (>=1.34.0,<1.35.0)"] +rekognition = ["mypy-boto3-rekognition (>=1.34.0,<1.35.0)"] +repostspace = ["mypy-boto3-repostspace (>=1.34.0,<1.35.0)"] +resiliencehub = ["mypy-boto3-resiliencehub (>=1.34.0,<1.35.0)"] +resource-explorer-2 = ["mypy-boto3-resource-explorer-2 (>=1.34.0,<1.35.0)"] +resource-groups = ["mypy-boto3-resource-groups (>=1.34.0,<1.35.0)"] +resourcegroupstaggingapi = ["mypy-boto3-resourcegroupstaggingapi (>=1.34.0,<1.35.0)"] +robomaker = ["mypy-boto3-robomaker (>=1.34.0,<1.35.0)"] +rolesanywhere = ["mypy-boto3-rolesanywhere (>=1.34.0,<1.35.0)"] +route53 = ["mypy-boto3-route53 (>=1.34.0,<1.35.0)"] +route53-recovery-cluster = ["mypy-boto3-route53-recovery-cluster (>=1.34.0,<1.35.0)"] +route53-recovery-control-config = ["mypy-boto3-route53-recovery-control-config (>=1.34.0,<1.35.0)"] +route53-recovery-readiness = ["mypy-boto3-route53-recovery-readiness (>=1.34.0,<1.35.0)"] +route53domains = ["mypy-boto3-route53domains (>=1.34.0,<1.35.0)"] +route53profiles = ["mypy-boto3-route53profiles (>=1.34.0,<1.35.0)"] +route53resolver = ["mypy-boto3-route53resolver (>=1.34.0,<1.35.0)"] +rum = ["mypy-boto3-rum (>=1.34.0,<1.35.0)"] +s3 = ["mypy-boto3-s3 (>=1.34.0,<1.35.0)"] +s3control = ["mypy-boto3-s3control (>=1.34.0,<1.35.0)"] +s3outposts = ["mypy-boto3-s3outposts (>=1.34.0,<1.35.0)"] +sagemaker = ["mypy-boto3-sagemaker (>=1.34.0,<1.35.0)"] +sagemaker-a2i-runtime = ["mypy-boto3-sagemaker-a2i-runtime (>=1.34.0,<1.35.0)"] +sagemaker-edge = ["mypy-boto3-sagemaker-edge (>=1.34.0,<1.35.0)"] +sagemaker-featurestore-runtime = ["mypy-boto3-sagemaker-featurestore-runtime (>=1.34.0,<1.35.0)"] +sagemaker-geospatial = ["mypy-boto3-sagemaker-geospatial (>=1.34.0,<1.35.0)"] +sagemaker-metrics = ["mypy-boto3-sagemaker-metrics (>=1.34.0,<1.35.0)"] +sagemaker-runtime = ["mypy-boto3-sagemaker-runtime (>=1.34.0,<1.35.0)"] +savingsplans = ["mypy-boto3-savingsplans (>=1.34.0,<1.35.0)"] +scheduler = ["mypy-boto3-scheduler (>=1.34.0,<1.35.0)"] +schemas = ["mypy-boto3-schemas (>=1.34.0,<1.35.0)"] +sdb = ["mypy-boto3-sdb (>=1.34.0,<1.35.0)"] +secretsmanager = ["mypy-boto3-secretsmanager (>=1.34.0,<1.35.0)"] +securityhub = ["mypy-boto3-securityhub (>=1.34.0,<1.35.0)"] +securitylake = ["mypy-boto3-securitylake (>=1.34.0,<1.35.0)"] +serverlessrepo = ["mypy-boto3-serverlessrepo (>=1.34.0,<1.35.0)"] +service-quotas = ["mypy-boto3-service-quotas (>=1.34.0,<1.35.0)"] +servicecatalog = ["mypy-boto3-servicecatalog (>=1.34.0,<1.35.0)"] +servicecatalog-appregistry = ["mypy-boto3-servicecatalog-appregistry (>=1.34.0,<1.35.0)"] +servicediscovery = ["mypy-boto3-servicediscovery (>=1.34.0,<1.35.0)"] +ses = ["mypy-boto3-ses (>=1.34.0,<1.35.0)"] +sesv2 = ["mypy-boto3-sesv2 (>=1.34.0,<1.35.0)"] +shield = ["mypy-boto3-shield (>=1.34.0,<1.35.0)"] +signer = ["mypy-boto3-signer (>=1.34.0,<1.35.0)"] +simspaceweaver = ["mypy-boto3-simspaceweaver (>=1.34.0,<1.35.0)"] +sms = ["mypy-boto3-sms (>=1.34.0,<1.35.0)"] +sms-voice = ["mypy-boto3-sms-voice (>=1.34.0,<1.35.0)"] +snow-device-management = ["mypy-boto3-snow-device-management (>=1.34.0,<1.35.0)"] +snowball = ["mypy-boto3-snowball (>=1.34.0,<1.35.0)"] +sns = ["mypy-boto3-sns (>=1.34.0,<1.35.0)"] +sqs = ["mypy-boto3-sqs (>=1.34.0,<1.35.0)"] +ssm = ["mypy-boto3-ssm (>=1.34.0,<1.35.0)"] +ssm-contacts = ["mypy-boto3-ssm-contacts (>=1.34.0,<1.35.0)"] +ssm-incidents = ["mypy-boto3-ssm-incidents (>=1.34.0,<1.35.0)"] +ssm-sap = ["mypy-boto3-ssm-sap (>=1.34.0,<1.35.0)"] +sso = ["mypy-boto3-sso (>=1.34.0,<1.35.0)"] +sso-admin = ["mypy-boto3-sso-admin (>=1.34.0,<1.35.0)"] +sso-oidc = ["mypy-boto3-sso-oidc (>=1.34.0,<1.35.0)"] +stepfunctions = ["mypy-boto3-stepfunctions (>=1.34.0,<1.35.0)"] +storagegateway = ["mypy-boto3-storagegateway (>=1.34.0,<1.35.0)"] +sts = ["mypy-boto3-sts (>=1.34.0,<1.35.0)"] +supplychain = ["mypy-boto3-supplychain (>=1.34.0,<1.35.0)"] +support = ["mypy-boto3-support (>=1.34.0,<1.35.0)"] +support-app = ["mypy-boto3-support-app (>=1.34.0,<1.35.0)"] +swf = ["mypy-boto3-swf (>=1.34.0,<1.35.0)"] +synthetics = ["mypy-boto3-synthetics (>=1.34.0,<1.35.0)"] +taxsettings = ["mypy-boto3-taxsettings (>=1.34.0,<1.35.0)"] +textract = ["mypy-boto3-textract (>=1.34.0,<1.35.0)"] +timestream-influxdb = ["mypy-boto3-timestream-influxdb (>=1.34.0,<1.35.0)"] +timestream-query = ["mypy-boto3-timestream-query (>=1.34.0,<1.35.0)"] +timestream-write = ["mypy-boto3-timestream-write (>=1.34.0,<1.35.0)"] +tnb = ["mypy-boto3-tnb (>=1.34.0,<1.35.0)"] +transcribe = ["mypy-boto3-transcribe (>=1.34.0,<1.35.0)"] +transfer = ["mypy-boto3-transfer (>=1.34.0,<1.35.0)"] +translate = ["mypy-boto3-translate (>=1.34.0,<1.35.0)"] +trustedadvisor = ["mypy-boto3-trustedadvisor (>=1.34.0,<1.35.0)"] +verifiedpermissions = ["mypy-boto3-verifiedpermissions (>=1.34.0,<1.35.0)"] +voice-id = ["mypy-boto3-voice-id (>=1.34.0,<1.35.0)"] +vpc-lattice = ["mypy-boto3-vpc-lattice (>=1.34.0,<1.35.0)"] +waf = ["mypy-boto3-waf (>=1.34.0,<1.35.0)"] +waf-regional = ["mypy-boto3-waf-regional (>=1.34.0,<1.35.0)"] +wafv2 = ["mypy-boto3-wafv2 (>=1.34.0,<1.35.0)"] +wellarchitected = ["mypy-boto3-wellarchitected (>=1.34.0,<1.35.0)"] +wisdom = ["mypy-boto3-wisdom (>=1.34.0,<1.35.0)"] +workdocs = ["mypy-boto3-workdocs (>=1.34.0,<1.35.0)"] +worklink = ["mypy-boto3-worklink (>=1.34.0,<1.35.0)"] +workmail = ["mypy-boto3-workmail (>=1.34.0,<1.35.0)"] +workmailmessageflow = ["mypy-boto3-workmailmessageflow (>=1.34.0,<1.35.0)"] +workspaces = ["mypy-boto3-workspaces (>=1.34.0,<1.35.0)"] +workspaces-thin-client = ["mypy-boto3-workspaces-thin-client (>=1.34.0,<1.35.0)"] +workspaces-web = ["mypy-boto3-workspaces-web (>=1.34.0,<1.35.0)"] +xray = ["mypy-boto3-xray (>=1.34.0,<1.35.0)"] + +[[package]] +name = "botocore-stubs" +version = "1.34.149" +description = "Type annotations and code completion for botocore" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "botocore_stubs-1.34.149-py3-none-any.whl", hash = "sha256:5fe4b32209b32cf98c75df5287acdde5df978e3586809329e3078045493b6bfc"}, + {file = "botocore_stubs-1.34.149.tar.gz", hash = "sha256:0d7b41d97206a5957ebc95e33f7a865d338c4404535aaa5a1d32cd3fa5d1ea88"}, +] + +[package.dependencies] +types-awscrt = "*" +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.9\""} + +[package.extras] +botocore = ["botocore"] + [[package]] name = "certifi" version = "2024.7.4" @@ -133,25 +956,5571 @@ files = [ ] [[package]] -name = "requests" -version = "2.32.3" -description = "Python HTTP for Humans." +name = "mypy-boto3-accessanalyzer" +version = "1.34.124" +description = "Type annotations for boto3.AccessAnalyzer 1.34.124 service generated with mypy-boto3-builder 7.24.0" optional = false python-versions = ">=3.8" files = [ - {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, - {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, + {file = "mypy_boto3_accessanalyzer-1.34.124-py3-none-any.whl", hash = "sha256:73dc5d2809834d54814fde1cb5f6d4eced530080cce5354a9fb23b15baf05fda"}, + {file = "mypy_boto3_accessanalyzer-1.34.124.tar.gz", hash = "sha256:7880a02b0109742a8131d03fe15771656e878a17b16dc7b74f0eb9071431fc2e"}, ] [package.dependencies] -certifi = ">=2017.4.17" -charset-normalizer = ">=2,<4" -idna = ">=2.5,<4" -urllib3 = ">=1.21.1,<3" +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} -[package.extras] -socks = ["PySocks (>=1.5.6,!=1.5.7)"] -use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] +[[package]] +name = "mypy-boto3-account" +version = "1.34.121" +description = "Type annotations for boto3.Account 1.34.121 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_account-1.34.121-py3-none-any.whl", hash = "sha256:79f4ab3fa14f8652d46edeb46eee465df6ee9b00da5fcbf350b55425a041a672"}, + {file = "mypy_boto3_account-1.34.121.tar.gz", hash = "sha256:d814012cfbdc771e42786ae5d0c80d1182a0dd1059b69e7d28e6132e13485188"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-acm" +version = "1.34.140" +description = "Type annotations for boto3.ACM 1.34.140 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_acm-1.34.140-py3-none-any.whl", hash = "sha256:370da8dbd63e6cf9d483c10879f207c9125abcb53a0f58e959087738834428b1"}, + {file = "mypy_boto3_acm-1.34.140.tar.gz", hash = "sha256:99e2ebe29f8002919ca7388b7ecfe152ae676487e2cd5623b17ef93a150d15b1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-acm-pca" +version = "1.34.145" +description = "Type annotations for boto3.ACMPCA 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_acm_pca-1.34.145-py3-none-any.whl", hash = "sha256:17f7bb7cfcb2ce0ba80b9e56910a5e8770f3787554a8d7f47314157b751da7b7"}, + {file = "mypy_boto3_acm_pca-1.34.145.tar.gz", hash = "sha256:eb3414cda1621719ee014e3d8ad3ab4bb018144c72fcd92be5bb9a42057047a9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-amp" +version = "1.34.39" +description = "Type annotations for boto3.PrometheusService 1.34.39 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-amp-1.34.39.tar.gz", hash = "sha256:5cea2eb037c442c67dcf8f221f6c151ee51a230a040b06e41ef200955dfeceee"}, + {file = "mypy_boto3_amp-1.34.39-py3-none-any.whl", hash = "sha256:fd44f3db8e856bff9f1b3dfebc5d74ea4210e5277585abc935b826b8b813f6bf"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-amplify" +version = "1.34.118" +description = "Type annotations for boto3.Amplify 1.34.118 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_amplify-1.34.118-py3-none-any.whl", hash = "sha256:5f39ea7c52e6124dfc90bb938c85cca607292f879b2de087438bd31b16001b3c"}, + {file = "mypy_boto3_amplify-1.34.118.tar.gz", hash = "sha256:9e5e177b4b670cca9b2497ff902e0060d6dc720a2786e95ec2fa6e6e57cb8347"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-amplifybackend" +version = "1.34.0" +description = "Type annotations for boto3.AmplifyBackend 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-amplifybackend-1.34.0.tar.gz", hash = "sha256:c0fe9f38701483876fae5436ad4364fe5808afa267a56bbfd13af6a6b4dc90e9"}, + {file = "mypy_boto3_amplifybackend-1.34.0-py3-none-any.whl", hash = "sha256:b30cd589d9be1f006aa6e93365882772f264a4c48c825e24765a6c5679428e0e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-amplifyuibuilder" +version = "1.34.51" +description = "Type annotations for boto3.AmplifyUIBuilder 1.34.51 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-amplifyuibuilder-1.34.51.tar.gz", hash = "sha256:ba6c40d5dd23952cac0645053fc54f44cc2ec18c5db11cf4c911fb960aff1e17"}, + {file = "mypy_boto3_amplifyuibuilder-1.34.51-py3-none-any.whl", hash = "sha256:01ba60769a141d1ff56d6d46ba1854bbeda61a7d07edc0113a4cf80b322c2e0d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-apigateway" +version = "1.34.137" +description = "Type annotations for boto3.APIGateway 1.34.137 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_apigateway-1.34.137-py3-none-any.whl", hash = "sha256:34a683d675d4b89c8d34e4c531e33af93c223d57d7b9f0b8aa087dab5fc05ed7"}, + {file = "mypy_boto3_apigateway-1.34.137.tar.gz", hash = "sha256:66a88ebfb63767c11403b7d1fed7f908d64e413fdaa54f091d49e8843441f5ba"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-apigatewaymanagementapi" +version = "1.34.0" +description = "Type annotations for boto3.ApiGatewayManagementApi 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-apigatewaymanagementapi-1.34.0.tar.gz", hash = "sha256:f75d5277eee19c7a40843144da50e197e6f73dec1de5059638f760f93719e955"}, + {file = "mypy_boto3_apigatewaymanagementapi-1.34.0-py3-none-any.whl", hash = "sha256:090e89f46290d813bdb1316b5b4c1418307ae7377e545fc802c6a5b704532cb6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-apigatewayv2" +version = "1.34.0" +description = "Type annotations for boto3.ApiGatewayV2 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-apigatewayv2-1.34.0.tar.gz", hash = "sha256:c9da59de8b1248cc13b46b27467d52ca05f977d2aaf231f0a9d40329c98a5d36"}, + {file = "mypy_boto3_apigatewayv2-1.34.0-py3-none-any.whl", hash = "sha256:df1650f3c075ad0f92acc0040b5d47a3da67dd655d3d97a925633b6dc1d58739"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appconfig" +version = "1.34.58" +description = "Type annotations for boto3.AppConfig 1.34.58 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-appconfig-1.34.58.tar.gz", hash = "sha256:7f4ef77171240f2ce43de38f725852d0ee9956f12660f9063cc5eb003f0b904e"}, + {file = "mypy_boto3_appconfig-1.34.58-py3-none-any.whl", hash = "sha256:5fe5b74bed5b61f563df1d2876ea40ac52bdd39a157c1ac0b34645a73523a7b2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appconfigdata" +version = "1.34.24" +description = "Type annotations for boto3.AppConfigData 1.34.24 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-appconfigdata-1.34.24.tar.gz", hash = "sha256:a52a35430e9928dd17cc4465091982b6f2443a383277e6bcdade90de93da53c4"}, + {file = "mypy_boto3_appconfigdata-1.34.24-py3-none-any.whl", hash = "sha256:229014bf41f2d98ff0c230716f45740ca9b23a369c2513cab78ad9a02f6a1515"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appfabric" +version = "1.34.0" +description = "Type annotations for boto3.AppFabric 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-appfabric-1.34.0.tar.gz", hash = "sha256:c23bceb42bc5ae3f983efcaabd1f1c288bf0bc2eb1d7959e497e8f90da783968"}, + {file = "mypy_boto3_appfabric-1.34.0-py3-none-any.whl", hash = "sha256:9d4141263bec4397714d4af78343746f3d1f44589e20b27a3a411998450f7ba4"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appflow" +version = "1.34.0" +description = "Type annotations for boto3.Appflow 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-appflow-1.34.0.tar.gz", hash = "sha256:5ebb8cc3306b8d5ed04c739c1caaaccedef97075fee7bf306d3c05330c971f31"}, + {file = "mypy_boto3_appflow-1.34.0-py3-none-any.whl", hash = "sha256:de873d3f804b34689f44a512e0a46db84fc467c25b5ef86944390915dc545b6c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appintegrations" +version = "1.34.6" +description = "Type annotations for boto3.AppIntegrationsService 1.34.6 service generated with mypy-boto3-builder 7.23.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-appintegrations-1.34.6.tar.gz", hash = "sha256:89568e9563a209ea1c389a5cb31174865cca8461378aae99ece89f2d60379243"}, + {file = "mypy_boto3_appintegrations-1.34.6-py3-none-any.whl", hash = "sha256:c95c8598c87a6ef3a00ecf32c69a64d12760b451a7845cb7abda4c3253c863f6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-application-autoscaling" +version = "1.34.149" +description = "Type annotations for boto3.ApplicationAutoScaling 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_application_autoscaling-1.34.149-py3-none-any.whl", hash = "sha256:f28e17065ec069b914af55335d070b7f5cc70c0011c83f309ce6fe6e53c3c43f"}, + {file = "mypy_boto3_application_autoscaling-1.34.149.tar.gz", hash = "sha256:783fe17b7ad3cd82b37b8cf50be3106bbb2ceb05f4b74e60238479dd76b1b4f7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-application-insights" +version = "1.34.0" +description = "Type annotations for boto3.ApplicationInsights 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-application-insights-1.34.0.tar.gz", hash = "sha256:a7fc8b5a620605290c72a6e33148f24d88ac91f491596de12afb6a7a9259b723"}, + {file = "mypy_boto3_application_insights-1.34.0-py3-none-any.whl", hash = "sha256:ed24909e0f10cb2c025cc43376828d3dad77772c60e5c03f6014967ee8e5a0d1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-application-signals" +version = "1.34.149" +description = "Type annotations for boto3.CloudWatchApplicationSignals 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_application_signals-1.34.149-py3-none-any.whl", hash = "sha256:2deea30f0422d76380dfcae26927670381edbbb8641238e37e0bb08b05fd3479"}, + {file = "mypy_boto3_application_signals-1.34.149.tar.gz", hash = "sha256:9819aa714ea3aea863195c39a0c80c3127201c373643e8a6595452dc681d1c64"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-applicationcostprofiler" +version = "1.34.0" +description = "Type annotations for boto3.ApplicationCostProfiler 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-applicationcostprofiler-1.34.0.tar.gz", hash = "sha256:4e8491252702f3bd752797e4663fd336652ba6204dc13a651a3be9bb5822772b"}, + {file = "mypy_boto3_applicationcostprofiler-1.34.0-py3-none-any.whl", hash = "sha256:f03a107fcc248272bb5b2289abd1ba7a3d85460e8843d2c361db6793f1af1f4d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appmesh" +version = "1.34.0" +description = "Type annotations for boto3.AppMesh 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-appmesh-1.34.0.tar.gz", hash = "sha256:017278cffe78a8f41e1ca6d917a22ce0e5edf7f81935a7266272f07f13dc9fe1"}, + {file = "mypy_boto3_appmesh-1.34.0-py3-none-any.whl", hash = "sha256:8529b2a14bad8729294d3b668dbbf5829f7ebbeb75fa95c801152bf78c628cb1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-apprunner" +version = "1.34.11" +description = "Type annotations for boto3.AppRunner 1.34.11 service generated with mypy-boto3-builder 7.23.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-apprunner-1.34.11.tar.gz", hash = "sha256:a78b71434f1eea3a588899a31bf2485f239b5e14e795707c4b9403b543d416dd"}, + {file = "mypy_boto3_apprunner-1.34.11-py3-none-any.whl", hash = "sha256:1d10f185402da205c0ef3902d1ed6c10eb4f8e202f8a87efe4a0da63bff663a0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appstream" +version = "1.34.5" +description = "Type annotations for boto3.AppStream 1.34.5 service generated with mypy-boto3-builder 7.23.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-appstream-1.34.5.tar.gz", hash = "sha256:d66f580f0d5fce87b8637ef25ba6b5e78e524764064abaf9a9ba987d711ac7ba"}, + {file = "mypy_boto3_appstream-1.34.5-py3-none-any.whl", hash = "sha256:b61f71dd4e7e66e6e841f33a7bf4ff73347f5872fde5131a72309510db186f91"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-appsync" +version = "1.34.147" +description = "Type annotations for boto3.AppSync 1.34.147 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_appsync-1.34.147-py3-none-any.whl", hash = "sha256:4a90170a0f10a7dff6407119fe518a7bbd26b7a17080107e29e0902dd8eaa14e"}, + {file = "mypy_boto3_appsync-1.34.147.tar.gz", hash = "sha256:82ecc07921226881eb7be489b4e1ae5ac29ccf3e35e5111f6a91612128fddd9a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-apptest" +version = "1.34.125" +description = "Type annotations for boto3.MainframeModernizationApplicationTesting 1.34.125 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_apptest-1.34.125-py3-none-any.whl", hash = "sha256:3e83b8261e19a6415157107a7fbe3c8f2575a73bf6e819f2b8f89315b8042281"}, + {file = "mypy_boto3_apptest-1.34.125.tar.gz", hash = "sha256:cdc00064d9f4dae40c4472feeb04e2fccfd70f36aa3efede457d67f97c595441"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-arc-zonal-shift" +version = "1.34.144" +description = "Type annotations for boto3.ARCZonalShift 1.34.144 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_arc_zonal_shift-1.34.144-py3-none-any.whl", hash = "sha256:24b90bc3504fd1451daa9ba5aee4d7ebc2c7bfc9369a6e0534e34cf957d0d967"}, + {file = "mypy_boto3_arc_zonal_shift-1.34.144.tar.gz", hash = "sha256:2cdb3670632e6733cfcb972f132eb967d40eabf71e4440765ac8997bc481b928"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-artifact" +version = "1.34.130" +description = "Type annotations for boto3.Artifact 1.34.130 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_artifact-1.34.130-py3-none-any.whl", hash = "sha256:f389426ab2dcc9954ea19e0e32c86072dbad251604637b48ba988f3103eb8936"}, + {file = "mypy_boto3_artifact-1.34.130.tar.gz", hash = "sha256:733495209757d00f5d08fd3dd48f42b7e4b1590cb45417cdaa5805778473896e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-athena" +version = "1.34.130" +description = "Type annotations for boto3.Athena 1.34.130 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_athena-1.34.130-py3-none-any.whl", hash = "sha256:3caf2de22ea5c9b1ca5fea1ed1e38c0b94d3407d99445805a88e082fb1aa5628"}, + {file = "mypy_boto3_athena-1.34.130.tar.gz", hash = "sha256:e832a07a2ef4b813611fd262908d108fd83e8f3936e31e8e34c2ae488a0f2995"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-auditmanager" +version = "1.34.122" +description = "Type annotations for boto3.AuditManager 1.34.122 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_auditmanager-1.34.122-py3-none-any.whl", hash = "sha256:9ac3fb6c849952fe8d320849d076f5be2e924e0d370771e8782b0fedae4d1090"}, + {file = "mypy_boto3_auditmanager-1.34.122.tar.gz", hash = "sha256:8b43d9c54b919923979bbdc75a8ced8a45e663ca1af632432b7f528ccf2d6288"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-autoscaling" +version = "1.34.133" +description = "Type annotations for boto3.AutoScaling 1.34.133 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_autoscaling-1.34.133-py3-none-any.whl", hash = "sha256:097edf2665d0b5949f99e8a60dc1f458d28bb5d22c03893075e916e14258ed98"}, + {file = "mypy_boto3_autoscaling-1.34.133.tar.gz", hash = "sha256:dd29b498fd4d27adc5bb37ca49df23a2929aac01f56060e565339d7006c87539"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-autoscaling-plans" +version = "1.34.0" +description = "Type annotations for boto3.AutoScalingPlans 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-autoscaling-plans-1.34.0.tar.gz", hash = "sha256:d7ab22a2373135ee4cb926524495cf033d94b9d268cc413209852bb0634300cf"}, + {file = "mypy_boto3_autoscaling_plans-1.34.0-py3-none-any.whl", hash = "sha256:5971fc724f094edc33eb58aad8fe152b750f396aa7876b1ec2c0836527ef896a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-b2bi" +version = "1.34.122" +description = "Type annotations for boto3.B2BI 1.34.122 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_b2bi-1.34.122-py3-none-any.whl", hash = "sha256:e7060de1ed9011c56347e54958966a31c5d4fb0cd050d482847b1283d11e4650"}, + {file = "mypy_boto3_b2bi-1.34.122.tar.gz", hash = "sha256:e0a4772a10b88230bc8628bec0c53f7370072742b9ac3ff363bc7c2c7dfc0724"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-backup" +version = "1.34.64" +description = "Type annotations for boto3.Backup 1.34.64 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-backup-1.34.64.tar.gz", hash = "sha256:46fc61126aceb64bda8236a3f31d87ec0029fae2bda832037bb4fda79dab2917"}, + {file = "mypy_boto3_backup-1.34.64-py3-none-any.whl", hash = "sha256:e7e6b6020f05065aa2d85ccbc3b1ffd911a3a57bbacaf350345d8e48835cb97a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-backup-gateway" +version = "1.34.0" +description = "Type annotations for boto3.BackupGateway 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-backup-gateway-1.34.0.tar.gz", hash = "sha256:9d22041032897c8f39dbf58143b3ae0cfb958a312232bd6f8699333836e14517"}, + {file = "mypy_boto3_backup_gateway-1.34.0-py3-none-any.whl", hash = "sha256:de144318eb30f888dc0f0213686d15d117de398606ec177be186931620f4f14c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-batch" +version = "1.34.143" +description = "Type annotations for boto3.Batch 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_batch-1.34.143-py3-none-any.whl", hash = "sha256:8a24edd020add5f7d4cd41ac52933a6f30366b5096647778607828a7aab7c842"}, + {file = "mypy_boto3_batch-1.34.143.tar.gz", hash = "sha256:c8b761880b60503cc6d0087ec9da4447079c8a94b9962d798fbb51594351d583"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-bcm-data-exports" +version = "1.34.0" +description = "Type annotations for boto3.BillingandCostManagementDataExports 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-bcm-data-exports-1.34.0.tar.gz", hash = "sha256:f44477a32194ab0b0bbd16442d8319ae017d91abf96a98a6e4c26e4d31439296"}, + {file = "mypy_boto3_bcm_data_exports-1.34.0-py3-none-any.whl", hash = "sha256:21fd10a212c1e0a76c462c5e90e23353259674a7eb5dfb243d13358d5a9cb61b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-bedrock" +version = "1.34.143" +description = "Type annotations for boto3.Bedrock 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_bedrock-1.34.143-py3-none-any.whl", hash = "sha256:5cab5de36736aa8a452f9aeb02ef51548814f1b1e3dfd46d4479d7dc94755c43"}, + {file = "mypy_boto3_bedrock-1.34.143.tar.gz", hash = "sha256:df2e02860c64f8b8df90daed08d4f36817f36e830878cb69c1ec3dbc6ed35cf6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-bedrock-agent" +version = "1.34.143" +description = "Type annotations for boto3.AgentsforBedrock 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_bedrock_agent-1.34.143-py3-none-any.whl", hash = "sha256:8311510b3785d3fda1aa0d341d17951674999b321c30b511701b134dc07308ea"}, + {file = "mypy_boto3_bedrock_agent-1.34.143.tar.gz", hash = "sha256:e3a1dc2d8dbdeb29679c0b538c4a64fccdf2783fcc5a8632bac7764c495416b0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-bedrock-agent-runtime" +version = "1.34.143" +description = "Type annotations for boto3.AgentsforBedrockRuntime 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_bedrock_agent_runtime-1.34.143-py3-none-any.whl", hash = "sha256:b5d8709aa7bcfd968210d497789c546341478ccc417ee6dc62654cc70f8aad50"}, + {file = "mypy_boto3_bedrock_agent_runtime-1.34.143.tar.gz", hash = "sha256:c85342fbe7474756fcd9b24e2567971b4e10e893ba9e8d80453d0321ee3e87fb"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-bedrock-runtime" +version = "1.34.149" +description = "Type annotations for boto3.BedrockRuntime 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_bedrock_runtime-1.34.149-py3-none-any.whl", hash = "sha256:66dc8f19c33cf9792a41454caa74ee93c839707767d17030e149fb037a8d915a"}, + {file = "mypy_boto3_bedrock_runtime-1.34.149.tar.gz", hash = "sha256:b4ea2f201577c662d0c49bc4352abbdcb297d935f4fca11af5e510731f56bda3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-billingconductor" +version = "1.34.1" +description = "Type annotations for boto3.BillingConductor 1.34.1 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-billingconductor-1.34.1.tar.gz", hash = "sha256:b97c509287b6bb789d718b5af5815b8f1a0af07b2f5224504b262b621562d645"}, + {file = "mypy_boto3_billingconductor-1.34.1-py3-none-any.whl", hash = "sha256:b602b1190bd18e89472c8568cae44523f5182bdff84eef1dba8c3e5e45d2a614"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-braket" +version = "1.34.39" +description = "Type annotations for boto3.Braket 1.34.39 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-braket-1.34.39.tar.gz", hash = "sha256:95a32b2aef683796bdcaf07c97285d8e9ab9866d47180167de2274951791a4e2"}, + {file = "mypy_boto3_braket-1.34.39-py3-none-any.whl", hash = "sha256:4b49b420af5572a4d1fc8553491b2f7c54d3b7e4687720fe26805aba82d55fc7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-budgets" +version = "1.34.100" +description = "Type annotations for boto3.Budgets 1.34.100 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_budgets-1.34.100-py3-none-any.whl", hash = "sha256:b95ece1af99d59ede9f3b2205d02d673de67e9054dd37e56026e723cac0f7e8c"}, + {file = "mypy_boto3_budgets-1.34.100.tar.gz", hash = "sha256:5489ac1fcf91aa6d6e5f8adcdfac0ec5def433816d5b731496c1f5279f423f10"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ce" +version = "1.34.90" +description = "Type annotations for boto3.CostExplorer 1.34.90 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ce-1.34.90-py3-none-any.whl", hash = "sha256:2f281a619a4126ab432ab73f124b9b08fbf9a2811aac61f54bfcb80ca8ff902e"}, + {file = "mypy_boto3_ce-1.34.90.tar.gz", hash = "sha256:e25c8b1e2bf47d999e66bd58d79310d89889596d983b520064cb2d6eb18a29e1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chatbot" +version = "1.34.111" +description = "Type annotations for boto3.Chatbot 1.34.111 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_chatbot-1.34.111-py3-none-any.whl", hash = "sha256:0ccde290b284095943603d026d8fea16ef4d8415c9e4dc5da4ccb805d9e120a6"}, + {file = "mypy_boto3_chatbot-1.34.111.tar.gz", hash = "sha256:bcd74a549f63a957939a94f298bbb24a8c1d67cb5a55b95370e50b4f50314eb5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chime" +version = "1.34.0" +description = "Type annotations for boto3.Chime 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-chime-1.34.0.tar.gz", hash = "sha256:fc80641c97f8b752bf51b75ffe1530e574e83414c2ce231f4d2764b313300364"}, + {file = "mypy_boto3_chime-1.34.0-py3-none-any.whl", hash = "sha256:1eedac44df88914be6e311bc7ef352a75a44f00bf5979e903a7f5e118b97424c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chime-sdk-identity" +version = "1.34.0" +description = "Type annotations for boto3.ChimeSDKIdentity 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-chime-sdk-identity-1.34.0.tar.gz", hash = "sha256:de05d416bdfe4dce4f830b10b9063c0f627448a1902515e0433eff5ca60daf99"}, + {file = "mypy_boto3_chime_sdk_identity-1.34.0-py3-none-any.whl", hash = "sha256:de1e7828da24355518e12fa3bc4a39af21005f8b1ed31ddf9d3c1a9dff7cd923"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chime-sdk-media-pipelines" +version = "1.34.135" +description = "Type annotations for boto3.ChimeSDKMediaPipelines 1.34.135 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_chime_sdk_media_pipelines-1.34.135-py3-none-any.whl", hash = "sha256:ae129334c16abed0733ca3ca3f6e9a29b3a9eb52f715fcaa8a9b8cfac62fb185"}, + {file = "mypy_boto3_chime_sdk_media_pipelines-1.34.135.tar.gz", hash = "sha256:839650b30ce93fca7b4c1e96e8725e486fbd1168ef4743ea83af18d64686b3ee"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chime-sdk-meetings" +version = "1.34.4" +description = "Type annotations for boto3.ChimeSDKMeetings 1.34.4 service generated with mypy-boto3-builder 7.22.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-chime-sdk-meetings-1.34.4.tar.gz", hash = "sha256:026c332ddf222c6766a35023bf8215af1c327ff5258c6d08d3aba6d92dcf1be1"}, + {file = "mypy_boto3_chime_sdk_meetings-1.34.4-py3-none-any.whl", hash = "sha256:52c30132312d2d383584ecac28bd4c71e73d76e5d6fa6fc91f71f42489ddb556"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chime-sdk-messaging" +version = "1.34.0" +description = "Type annotations for boto3.ChimeSDKMessaging 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-chime-sdk-messaging-1.34.0.tar.gz", hash = "sha256:f0fab8f0604529045d9a802ef6ac40475e314523fcfeba01ad91f1cda4c1079e"}, + {file = "mypy_boto3_chime_sdk_messaging-1.34.0-py3-none-any.whl", hash = "sha256:9ccf6fb7999338086b26d037edcc2c956857f5738ba84ab924707df9dbae80d6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-chime-sdk-voice" +version = "1.34.95" +description = "Type annotations for boto3.ChimeSDKVoice 1.34.95 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_chime_sdk_voice-1.34.95-py3-none-any.whl", hash = "sha256:ae1750caee1caefa1ace3fb58201df8fed15b67450624c1a448e80e7a5b43617"}, + {file = "mypy_boto3_chime_sdk_voice-1.34.95.tar.gz", hash = "sha256:64a2dc4ad4e56f34c0db477faa4cd7d46c1dea6a1627131c32f13a2a40adfb14"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cleanrooms" +version = "1.34.148" +description = "Type annotations for boto3.CleanRoomsService 1.34.148 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cleanrooms-1.34.148-py3-none-any.whl", hash = "sha256:807bc5902f73bb7011c5f11cc523f50f961efbad5348f5928abd3c4a32d9d9e7"}, + {file = "mypy_boto3_cleanrooms-1.34.148.tar.gz", hash = "sha256:b1a8c2431346320c77e72dcb4545c47fbfba862b86cd9467cfcc615e868cb561"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cleanroomsml" +version = "1.34.147" +description = "Type annotations for boto3.CleanRoomsML 1.34.147 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cleanroomsml-1.34.147-py3-none-any.whl", hash = "sha256:9e1bb383655abe796139d88be85c3e2303dba07eef275235397a90b530c4e16b"}, + {file = "mypy_boto3_cleanroomsml-1.34.147.tar.gz", hash = "sha256:1807ef263a316e9d605ff536ba9bc6fef718cbb3bce2b23b7e5a7fdade06efd8"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloud9" +version = "1.34.24" +description = "Type annotations for boto3.Cloud9 1.34.24 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-cloud9-1.34.24.tar.gz", hash = "sha256:7ebc83ed47cee5c7454bbbccc6665a4fd2d6e273521934027773720fad1ff700"}, + {file = "mypy_boto3_cloud9-1.34.24-py3-none-any.whl", hash = "sha256:5ba2ef8d71610638e6228a74048bbf4fc260a88c45bed93a40b7b0a4bb975b4e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudcontrol" +version = "1.34.0" +description = "Type annotations for boto3.CloudControlApi 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-cloudcontrol-1.34.0.tar.gz", hash = "sha256:f353369656f8eacbe267cef8fef1d56aa394d4fbd0b3e65d8a5f1bc6bd691163"}, + {file = "mypy_boto3_cloudcontrol-1.34.0-py3-none-any.whl", hash = "sha256:baa03c8304f9a6fa2b2e2a14b2843699fa994dbd9b1d04a2eeb8a129f62deb90"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-clouddirectory" +version = "1.34.0" +description = "Type annotations for boto3.CloudDirectory 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-clouddirectory-1.34.0.tar.gz", hash = "sha256:9562500a5344872abd08df1385c1ed55c12ca30229f95f115e1e2b80701c95f3"}, + {file = "mypy_boto3_clouddirectory-1.34.0-py3-none-any.whl", hash = "sha256:6496562dd26ea682df9d7d8fa671b9e85e08455e7db08999147056302be15a04"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudformation" +version = "1.34.111" +description = "Type annotations for boto3.CloudFormation 1.34.111 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cloudformation-1.34.111-py3-none-any.whl", hash = "sha256:526e928c504fa2880b1774aa10629a04fe0ec70ed2864ab3d3f7772386a1a925"}, + {file = "mypy_boto3_cloudformation-1.34.111.tar.gz", hash = "sha256:a02e201d1a9d9a8fb4db5b942d5c537a4e8861c611f0d986126674ac557cb9e8"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudfront" +version = "1.34.135" +description = "Type annotations for boto3.CloudFront 1.34.135 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cloudfront-1.34.135-py3-none-any.whl", hash = "sha256:6b42d76a1ba4398b4c925cdc3add0482d41f70d5216d6f2a2811543349106365"}, + {file = "mypy_boto3_cloudfront-1.34.135.tar.gz", hash = "sha256:6cf8807fc18ca029f7c9000cb7c5e5de992c6845f3c6bbfa0809b00b9ddb7386"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudfront-keyvaluestore" +version = "1.34.24" +description = "Type annotations for boto3.CloudFrontKeyValueStore 1.34.24 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-cloudfront-keyvaluestore-1.34.24.tar.gz", hash = "sha256:ce2e072f894ffd20f5449165a5eed83589d6c1f9b547c8dcdf6da4f02148351f"}, + {file = "mypy_boto3_cloudfront_keyvaluestore-1.34.24-py3-none-any.whl", hash = "sha256:aa2f627f33fe1484c9239fa0f1b7f149556d262ce44f4c3ab69968af360c8b40"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudhsm" +version = "1.34.0" +description = "Type annotations for boto3.CloudHSM 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-cloudhsm-1.34.0.tar.gz", hash = "sha256:49dfd894a366ff5551a09f9efb762539fe232a87b061518ce053589524fef406"}, + {file = "mypy_boto3_cloudhsm-1.34.0-py3-none-any.whl", hash = "sha256:39f431f5b424017d10e319cabd4f64bc63be104b2fb0631c86755ce78c289a68"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudhsmv2" +version = "1.34.136" +description = "Type annotations for boto3.CloudHSMV2 1.34.136 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cloudhsmv2-1.34.136-py3-none-any.whl", hash = "sha256:6c19fc9304c7f8a27d627cb3ff725a68ebcc7520eedd196c0574c9451c93f395"}, + {file = "mypy_boto3_cloudhsmv2-1.34.136.tar.gz", hash = "sha256:af1ffffecd06479f2fc14e9c1ae6f4b589b8361ded0a431e50d89892b953cdda"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudsearch" +version = "1.34.0" +description = "Type annotations for boto3.CloudSearch 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-cloudsearch-1.34.0.tar.gz", hash = "sha256:4b5aded383569e0ae395c2c83f33f80f4235715aafb7f4da92ee824d37efb4cc"}, + {file = "mypy_boto3_cloudsearch-1.34.0-py3-none-any.whl", hash = "sha256:e872213fc943edc0ebdc32625b5ddfceb1d337e08c810abb88c42c4f7ae83def"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudsearchdomain" +version = "1.34.0" +description = "Type annotations for boto3.CloudSearchDomain 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-cloudsearchdomain-1.34.0.tar.gz", hash = "sha256:8e18701571fcd1a66356a54c66e970a02beedc49978f805b2770d0e9e24f4b81"}, + {file = "mypy_boto3_cloudsearchdomain-1.34.0-py3-none-any.whl", hash = "sha256:054690afe80f1c501743f228714cfea0fac860d6e8ec43b61227534e8460a089"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudtrail" +version = "1.34.129" +description = "Type annotations for boto3.CloudTrail 1.34.129 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cloudtrail-1.34.129-py3-none-any.whl", hash = "sha256:96d0a0a78a0a89733f6efbea0da6ad4e613df24eb0debbe75963fd9bb2c910c0"}, + {file = "mypy_boto3_cloudtrail-1.34.129.tar.gz", hash = "sha256:c4824340e78bc8d42ac13061b51ec0e9d2c02bb629092cc17b84134b322c29a2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudtrail-data" +version = "1.34.0" +description = "Type annotations for boto3.CloudTrailDataService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-cloudtrail-data-1.34.0.tar.gz", hash = "sha256:002889ac8f954c7af4ea2f0f2a00d8fcaf21a2e154650352d6596ea2e69d0934"}, + {file = "mypy_boto3_cloudtrail_data-1.34.0-py3-none-any.whl", hash = "sha256:46cd0fdde186f9e123b1f2152060b789a3f0a16db1e5f841302fb6235298fc9a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cloudwatch" +version = "1.34.83" +description = "Type annotations for boto3.CloudWatch 1.34.83 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-cloudwatch-1.34.83.tar.gz", hash = "sha256:766e166c5b463d9885a5929dc16bb592e0fa7d7beaf569aa4f501d85a848bc13"}, + {file = "mypy_boto3_cloudwatch-1.34.83-py3-none-any.whl", hash = "sha256:6af4fff0ec7c09e423df5a69fff4df8a74044462686e8679b4fe73c106787854"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codeartifact" +version = "1.34.131" +description = "Type annotations for boto3.CodeArtifact 1.34.131 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_codeartifact-1.34.131-py3-none-any.whl", hash = "sha256:afbe5da3b826f3f7568dd385d76c8bcf69f00d9e3da5a2f356e8723d174ab630"}, + {file = "mypy_boto3_codeartifact-1.34.131.tar.gz", hash = "sha256:1f8801583a5f8ad85316a79c2f49e2557c5673a8d66598459e47e08dc6ea2a5c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codebuild" +version = "1.34.128" +description = "Type annotations for boto3.CodeBuild 1.34.128 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_codebuild-1.34.128-py3-none-any.whl", hash = "sha256:310fab582a760e3097eea96a1869610fe0c8087eaad0c4b6bfdfa3d56cc6f577"}, + {file = "mypy_boto3_codebuild-1.34.128.tar.gz", hash = "sha256:c0f853ca6178b4195dc84f3dbf09c42845de8118f793243ba89719e6f6fd3b51"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codecatalyst" +version = "1.34.73" +description = "Type annotations for boto3.CodeCatalyst 1.34.73 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-codecatalyst-1.34.73.tar.gz", hash = "sha256:8d0fc3228597416a35a155a2e069fcf1cc6befc402b38e4456d81f73a7d99059"}, + {file = "mypy_boto3_codecatalyst-1.34.73-py3-none-any.whl", hash = "sha256:4210ba993120f2d23ac5875406ad9ade47f414857fadbe97438e1d2b85fe7da5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codecommit" +version = "1.34.149" +description = "Type annotations for boto3.CodeCommit 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_codecommit-1.34.149-py3-none-any.whl", hash = "sha256:941e3648bc4c08a944cd6d48873a2e74bc3de45513ca19ef67d1aa8d9e12e93d"}, + {file = "mypy_boto3_codecommit-1.34.149.tar.gz", hash = "sha256:0a911c6291d25d1e5f0d908b3a202780643226d827a5e936825b78ac203d0f24"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codeconnections" +version = "1.34.74" +description = "Type annotations for boto3.CodeConnections 1.34.74 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-codeconnections-1.34.74.tar.gz", hash = "sha256:1a881870ee4f5e6ac888d158cd73c926f5c77b09e3b11d5ded10b88486f3907d"}, + {file = "mypy_boto3_codeconnections-1.34.74-py3-none-any.whl", hash = "sha256:d8e6bd23808259defea98f0a26fed785fd2a031fe13db4f6407b854b834baa07"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codedeploy" +version = "1.34.141" +description = "Type annotations for boto3.CodeDeploy 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_codedeploy-1.34.141-py3-none-any.whl", hash = "sha256:c3d1dc6770bdc66e346eb706f39f39662a53149d8c9ac959e466ad3dcd425c4c"}, + {file = "mypy_boto3_codedeploy-1.34.141.tar.gz", hash = "sha256:992f86eb50022f1c198c675acfc4ca4de9c9576f838adb2cff130018dc8951c1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codeguru-reviewer" +version = "1.34.0" +description = "Type annotations for boto3.CodeGuruReviewer 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-codeguru-reviewer-1.34.0.tar.gz", hash = "sha256:db45be2c162c404fe936cf7865b556370d3edbcd7b8307c629a2470a8883b0f3"}, + {file = "mypy_boto3_codeguru_reviewer-1.34.0-py3-none-any.whl", hash = "sha256:541ade0fcdd271a6de98ff4996fbcea3ac8ab4f5305db9e949b27f02d5754fa3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codeguru-security" +version = "1.34.117" +description = "Type annotations for boto3.CodeGuruSecurity 1.34.117 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_codeguru_security-1.34.117-py3-none-any.whl", hash = "sha256:6267f973d8e76d3f304384483b010350d245d8a8679f58e41057d9ffb614211b"}, + {file = "mypy_boto3_codeguru_security-1.34.117.tar.gz", hash = "sha256:f40ed8ae3dd9e28ec0520e1ffdcf14bcff8a779185eac47732498aea3a038d89"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codeguruprofiler" +version = "1.34.0" +description = "Type annotations for boto3.CodeGuruProfiler 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-codeguruprofiler-1.34.0.tar.gz", hash = "sha256:a4064bf66d121d162222b5f305ff887849103974b8ffa389aa80c8ea8837379b"}, + {file = "mypy_boto3_codeguruprofiler-1.34.0-py3-none-any.whl", hash = "sha256:027f95e8e2f0fc57dbe6d9e7699965af22a3719a388323367eafc338431cdbc1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codepipeline" +version = "1.34.122" +description = "Type annotations for boto3.CodePipeline 1.34.122 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_codepipeline-1.34.122-py3-none-any.whl", hash = "sha256:e085f3aad6f0392ff3cb9298e964e1aa9dc68ff62bdc34482209a3d552852f4f"}, + {file = "mypy_boto3_codepipeline-1.34.122.tar.gz", hash = "sha256:2191102ea0d42e90d0e9d124e030aa495a73cb163cecb1923ec159d740c8cdf6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codestar" +version = "1.34.0" +description = "Type annotations for boto3.CodeStar 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-codestar-1.34.0.tar.gz", hash = "sha256:040b9e44b9586460e217a0ed8f12f6e2dc0b61866a0f712b749ef77ec1681b59"}, + {file = "mypy_boto3_codestar-1.34.0-py3-none-any.whl", hash = "sha256:b68eb5f37bc6adf846c457f3be5093efdc6873b3700abd6695b6d12d3af32f57"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codestar-connections" +version = "1.34.60" +description = "Type annotations for boto3.CodeStarconnections 1.34.60 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-codestar-connections-1.34.60.tar.gz", hash = "sha256:587fdc37c0571bb73bf60191ff49b7c6f10f35d3c0151a2c22798ef4378055d3"}, + {file = "mypy_boto3_codestar_connections-1.34.60-py3-none-any.whl", hash = "sha256:09ce5cc349338f97a5969c7aa8ade57069f42eda4f3bc5b3be356a505f873900"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-codestar-notifications" +version = "1.34.0" +description = "Type annotations for boto3.CodeStarNotifications 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-codestar-notifications-1.34.0.tar.gz", hash = "sha256:2665c4a476ce85c3bd17ef86fa88573ee5e83482db70bf6be6ac87e0ea280ad7"}, + {file = "mypy_boto3_codestar_notifications-1.34.0-py3-none-any.whl", hash = "sha256:6c7ff56fd2e2bc8d433a94a0bab96a9dfe0fbd029d938a039a3a23cc400399ea"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cognito-identity" +version = "1.34.137" +description = "Type annotations for boto3.CognitoIdentity 1.34.137 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cognito_identity-1.34.137-py3-none-any.whl", hash = "sha256:7271c817f902401f0b2a6e877c7db14764b867fa7ea8507fee98d728ff28bbfe"}, + {file = "mypy_boto3_cognito_identity-1.34.137.tar.gz", hash = "sha256:fc7c711902ba69a0b48d39af7ce48cfb5fc9d1f10ba12e969dd2cee34271c2de"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cognito-idp" +version = "1.34.128" +description = "Type annotations for boto3.CognitoIdentityProvider 1.34.128 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cognito_idp-1.34.128-py3-none-any.whl", hash = "sha256:f0da293c3bfec643fb7942cb104b0a45e79fcf23e678a1c7395562237f358484"}, + {file = "mypy_boto3_cognito_idp-1.34.128.tar.gz", hash = "sha256:de313ab1f3c21eef88dd41f3551b2da99fe9991e496d9ad51d84347868d360c7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cognito-sync" +version = "1.34.0" +description = "Type annotations for boto3.CognitoSync 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-cognito-sync-1.34.0.tar.gz", hash = "sha256:253926a441f028de48ca8195b386de54010eaf57d93f1068623ccd0608d3118d"}, + {file = "mypy_boto3_cognito_sync-1.34.0-py3-none-any.whl", hash = "sha256:a44c3b27da58ab7ac908aa35db29c42ec8512ca164273d9d5ef2f32997f23ea7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-comprehend" +version = "1.34.30" +description = "Type annotations for boto3.Comprehend 1.34.30 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-comprehend-1.34.30.tar.gz", hash = "sha256:1bb99225672bd27b4f5fa5a869e4d63f0fee077db29fac573f2c90bc355f6bcb"}, + {file = "mypy_boto3_comprehend-1.34.30-py3-none-any.whl", hash = "sha256:d0e753128ddf2dabd13cfb6d3f863fb229e5bca08998ccade18ef9661a45c451"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-comprehendmedical" +version = "1.34.0" +description = "Type annotations for boto3.ComprehendMedical 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-comprehendmedical-1.34.0.tar.gz", hash = "sha256:e0accbe7ac54e3be2d7bcb56e71559a3a0f93f07b718b4506d07d7f025d3cfd8"}, + {file = "mypy_boto3_comprehendmedical-1.34.0-py3-none-any.whl", hash = "sha256:4f026da8c72477462087acea2e7b870dbd1fd6e074ee79be370a299efca1fd61"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-compute-optimizer" +version = "1.34.131" +description = "Type annotations for boto3.ComputeOptimizer 1.34.131 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_compute_optimizer-1.34.131-py3-none-any.whl", hash = "sha256:0206e2428a6b1e13f5a55638308af97e7a878370bd410587fdc7be3eadfb2462"}, + {file = "mypy_boto3_compute_optimizer-1.34.131.tar.gz", hash = "sha256:5e4f6cd41499cafceb1165e7dd3800432f3cf3b3287ed34c95c10029bfe15500"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-config" +version = "1.34.129" +description = "Type annotations for boto3.ConfigService 1.34.129 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_config-1.34.129-py3-none-any.whl", hash = "sha256:32586bd81f8f46446d601e5c0ab9529dfaf9ce6407634b63e205f54162b1fd5e"}, + {file = "mypy_boto3_config-1.34.129.tar.gz", hash = "sha256:5c51e8317de3ecfd7553bd3bafb3bb47c1f4494ed01e8118ac79f80cf9dc35d4"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-connect" +version = "1.34.147" +description = "Type annotations for boto3.Connect 1.34.147 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_connect-1.34.147-py3-none-any.whl", hash = "sha256:37846c3618d2ef2e9a6ec80120c33428fb71f79ce79009c18ab4771a91d35a2b"}, + {file = "mypy_boto3_connect-1.34.147.tar.gz", hash = "sha256:56972b8e666ce155df9782daf30382710c449d533819e53cddc79538803713c7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-connect-contact-lens" +version = "1.34.147" +description = "Type annotations for boto3.ConnectContactLens 1.34.147 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_connect_contact_lens-1.34.147-py3-none-any.whl", hash = "sha256:8ea39e1b01112b59874e156f82db313992fcd323749e1905ef52aeda7d7caa93"}, + {file = "mypy_boto3_connect_contact_lens-1.34.147.tar.gz", hash = "sha256:630cf5ace7d807e0de81b4581cde94aff4ec6447bdb2db95c6560eb3080de4d6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-connectcampaigns" +version = "1.34.93" +description = "Type annotations for boto3.ConnectCampaignService 1.34.93 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_connectcampaigns-1.34.93-py3-none-any.whl", hash = "sha256:904689f13b62ca36e616b1f821976660984aa16c21720a9581af1e1f766bb5cb"}, + {file = "mypy_boto3_connectcampaigns-1.34.93.tar.gz", hash = "sha256:5e69e35824e71a38e4ab1824e78182395536d2f3bedf240f5631ac8586a29899"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-connectcases" +version = "1.34.98" +description = "Type annotations for boto3.ConnectCases 1.34.98 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_connectcases-1.34.98-py3-none-any.whl", hash = "sha256:ebfd83e904f0818d12014599d7ac4d24d2715cd60676f2ecf0692cdd6652301d"}, + {file = "mypy_boto3_connectcases-1.34.98.tar.gz", hash = "sha256:d6a5107004c9f9768c820c2169034e2289345b8a879e6459203ebc4a25bd2794"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-connectparticipant" +version = "1.34.44" +description = "Type annotations for boto3.ConnectParticipant 1.34.44 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-connectparticipant-1.34.44.tar.gz", hash = "sha256:90fe28bf01df2687918d2c9f78bd0cd54ef4689a00a4c51458e2c5469b7a1fec"}, + {file = "mypy_boto3_connectparticipant-1.34.44-py3-none-any.whl", hash = "sha256:dc71f3a6faad2187da90db07d7b4b156ed98ac1f8e6332f58817e007a0ffaded"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-controlcatalog" +version = "1.34.80" +description = "Type annotations for boto3.ControlCatalog 1.34.80 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-controlcatalog-1.34.80.tar.gz", hash = "sha256:7c32754e5118e7a51af09bfddfdadc6ef6774c0490bbab39b8a7820edadbc5f3"}, + {file = "mypy_boto3_controlcatalog-1.34.80-py3-none-any.whl", hash = "sha256:a3f44a153d91b50b3025739d50681ab9b0912eeee3d459e4bef1abebdf2bb599"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-controltower" +version = "1.34.134" +description = "Type annotations for boto3.ControlTower 1.34.134 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_controltower-1.34.134-py3-none-any.whl", hash = "sha256:aac127462e9dff75ff7f1b88f3f746fc3514e9ef9b7ecf1ee22ce31270732e92"}, + {file = "mypy_boto3_controltower-1.34.134.tar.gz", hash = "sha256:e596ac65359ec10e3f2e2dc551b9b5d81f07f19cec066d04d78daefb38afa98d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cost-optimization-hub" +version = "1.34.131" +description = "Type annotations for boto3.CostOptimizationHub 1.34.131 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cost_optimization_hub-1.34.131-py3-none-any.whl", hash = "sha256:72f5a5a35dda201c04496aaeea1a6f07a6ba961a8e451fff0c3a4eb004fa97da"}, + {file = "mypy_boto3_cost_optimization_hub-1.34.131.tar.gz", hash = "sha256:75bfce5ffe91e6b1994caf407bfeaf7795a2308e04ae0009c5223ad0bb6bccbe"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-cur" +version = "1.34.130" +description = "Type annotations for boto3.CostandUsageReportService 1.34.130 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_cur-1.34.130-py3-none-any.whl", hash = "sha256:ba46161878110175eb5a4576545f3f83b32c862a2ddb449ec7a6ef36bbba8632"}, + {file = "mypy_boto3_cur-1.34.130.tar.gz", hash = "sha256:7d61694667a8d32096e18fad64bbd9ddbd00680a825bd939c963e2b4bcfd5543"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-customer-profiles" +version = "1.34.132" +description = "Type annotations for boto3.CustomerProfiles 1.34.132 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_customer_profiles-1.34.132-py3-none-any.whl", hash = "sha256:9cd304d24f36a556e155f97dd9d1747b4671f487652eb1861576f4d28c93ac6e"}, + {file = "mypy_boto3_customer_profiles-1.34.132.tar.gz", hash = "sha256:3d9a16e0b3d03b54088fc215070d881f96a035546caeb6a32bd70a3dc48f1296"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-databrew" +version = "1.34.0" +description = "Type annotations for boto3.GlueDataBrew 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-databrew-1.34.0.tar.gz", hash = "sha256:0cfd42bb2a20aecfcaeaa33b7e76c75924cf7298e8cb59b45c4b2ad4e35b8713"}, + {file = "mypy_boto3_databrew-1.34.0-py3-none-any.whl", hash = "sha256:27f834d1fae36253fb38ddc1b6ae2984505dbc3f2aa70fb916708d1ce5f1133c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-dataexchange" +version = "1.34.0" +description = "Type annotations for boto3.DataExchange 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-dataexchange-1.34.0.tar.gz", hash = "sha256:80b27a00940b292886730584803c22a60d03d4da98c0d1625f00141b0089dbed"}, + {file = "mypy_boto3_dataexchange-1.34.0-py3-none-any.whl", hash = "sha256:2f32acb762fb59058f50f679845d14af21b57e6b7e482df9061d1e05df62b685"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-datapipeline" +version = "1.34.0" +description = "Type annotations for boto3.DataPipeline 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-datapipeline-1.34.0.tar.gz", hash = "sha256:0269faa5d5b98bcfb2073b924409a3d049d36041a3ce0b90c5aa0b9a11455dc9"}, + {file = "mypy_boto3_datapipeline-1.34.0-py3-none-any.whl", hash = "sha256:46c4958fb18ad8ed35734bad2dcd2357d55f1d6d3eaca93dd9f21129426f8d22"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-datasync" +version = "1.34.106" +description = "Type annotations for boto3.DataSync 1.34.106 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_datasync-1.34.106-py3-none-any.whl", hash = "sha256:3c7b6d8e959b3606ba52a582d33a756f2c2769338f85ea58213430206a6db393"}, + {file = "mypy_boto3_datasync-1.34.106.tar.gz", hash = "sha256:3d6a2d9aeda1ebbb8546975b5f97ad6b733d6059052e362cb29de38b689d86ef"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-datazone" +version = "1.34.149" +description = "Type annotations for boto3.DataZone 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_datazone-1.34.149-py3-none-any.whl", hash = "sha256:023acbb035f5bd226bf242ab66c399f3742cfd0095b7fa8af45f38975ecbd475"}, + {file = "mypy_boto3_datazone-1.34.149.tar.gz", hash = "sha256:6f400d5b37274973ad96ffeb8c59997c29229a739e270136475327828b5ceb6f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-dax" +version = "1.34.0" +description = "Type annotations for boto3.DAX 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-dax-1.34.0.tar.gz", hash = "sha256:0c7e64a95f82e2f6d9f1f6ef02d47dde3779601db686461eff180e178a2bbb56"}, + {file = "mypy_boto3_dax-1.34.0-py3-none-any.whl", hash = "sha256:0e5d428478f16a20e26a9b4bd4b76ef035f6a1d554b825285511b5647d375141"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-deadline" +version = "1.34.75" +description = "Type annotations for boto3.DeadlineCloud 1.34.75 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-deadline-1.34.75.tar.gz", hash = "sha256:88ecd1db739aa68efdae451b829d1fc0f15f003c326a81d99241bf31caaa2908"}, + {file = "mypy_boto3_deadline-1.34.75-py3-none-any.whl", hash = "sha256:e3d962dc1b987f609ee398e7411de87b4db0d8bfde255c9f26e42e797186570c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-detective" +version = "1.34.43" +description = "Type annotations for boto3.Detective 1.34.43 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-detective-1.34.43.tar.gz", hash = "sha256:55ebe651380dd142a1580b467d26d0a2a02182fd7d5e238106834db077c77b38"}, + {file = "mypy_boto3_detective-1.34.43-py3-none-any.whl", hash = "sha256:5171f8a55f92612f5263fe5c1a684cab22761943326a887ac6782808c06b566b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-devicefarm" +version = "1.34.141" +description = "Type annotations for boto3.DeviceFarm 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_devicefarm-1.34.141-py3-none-any.whl", hash = "sha256:a5cb58ab34152e8b7f965534f1608fe332bb3a7ec8e6e173f319489543f55dd3"}, + {file = "mypy_boto3_devicefarm-1.34.141.tar.gz", hash = "sha256:afd82f61e925900af7ea591b29d5bac025f09b8f64b7e1549b54c494cf1b847e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-devops-guru" +version = "1.34.0" +description = "Type annotations for boto3.DevOpsGuru 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-devops-guru-1.34.0.tar.gz", hash = "sha256:231493023709706c925756739716a5db79d9cfb9b579a0836bc517e35fbd979a"}, + {file = "mypy_boto3_devops_guru-1.34.0-py3-none-any.whl", hash = "sha256:143cc57a92e7470df19088b680c2a6c5d62da7bd49d17405bf76ab9a5fbb15b2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-directconnect" +version = "1.34.139" +description = "Type annotations for boto3.DirectConnect 1.34.139 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_directconnect-1.34.139-py3-none-any.whl", hash = "sha256:5fa4ff71e64133b6ed6795e9d0ad2deaf4e8522e8ce2582e52bf4900f0cfdbf9"}, + {file = "mypy_boto3_directconnect-1.34.139.tar.gz", hash = "sha256:83672930281385f33db79118ff9a37f9a7ab09ffdccca012e5f4739778ce63f6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-discovery" +version = "1.34.103" +description = "Type annotations for boto3.ApplicationDiscoveryService 1.34.103 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_discovery-1.34.103-py3-none-any.whl", hash = "sha256:48de7bcf9718dbcc2432541e8e852d9f17538760569edb705e9cac7313d6861b"}, + {file = "mypy_boto3_discovery-1.34.103.tar.gz", hash = "sha256:049f35c6cd35990e4c2c6ec76f3f9d0a76ee4e8739845a00400086ffa04ef103"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-dlm" +version = "1.34.0" +description = "Type annotations for boto3.DLM 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-dlm-1.34.0.tar.gz", hash = "sha256:b8173142f6255af86855d59386f6844c22829a3bb4c6d20545c13c1289faa2f2"}, + {file = "mypy_boto3_dlm-1.34.0-py3-none-any.whl", hash = "sha256:94c36b081ed44e61ca28577f65359b2979dfa0b583cd82a8d8e0db6d4291ead9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-dms" +version = "1.34.141" +description = "Type annotations for boto3.DatabaseMigrationService 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_dms-1.34.141-py3-none-any.whl", hash = "sha256:a24362cd8888ac595e99777a77759fe5d1e2dc87bb56f84f8c9ee435b3aa4650"}, + {file = "mypy_boto3_dms-1.34.141.tar.gz", hash = "sha256:a2b1d438c6e3b9e1cadccab4e4fe93e9bf0f5cef4679065cb3e659932240a02f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-docdb" +version = "1.34.137" +description = "Type annotations for boto3.DocDB 1.34.137 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_docdb-1.34.137-py3-none-any.whl", hash = "sha256:726d5e8b89a2255b5b383af4f769f3d927883768231fa39a947373b1b09740ae"}, + {file = "mypy_boto3_docdb-1.34.137.tar.gz", hash = "sha256:e2fbc4fbc4a68a03eb9489ff80637f1fc5ee6bac62cdf8ff0b891e8c5fed86b3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-docdb-elastic" +version = "1.34.53" +description = "Type annotations for boto3.DocDBElastic 1.34.53 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-docdb-elastic-1.34.53.tar.gz", hash = "sha256:b0da12eee8d3d2b322e160055f021fc24a063f773cf3e97a716ede9621e1789e"}, + {file = "mypy_boto3_docdb_elastic-1.34.53-py3-none-any.whl", hash = "sha256:2c903f3bfa3252f6ed731e8e969bb8749f297214c987d33cf8eb67ca3574e79d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-drs" +version = "1.34.87" +description = "Type annotations for boto3.drs 1.34.87 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_drs-1.34.87-py3-none-any.whl", hash = "sha256:57413b60a126ed4ce6d826a9ca80cfce7231931a08709863cdce65468ab01392"}, + {file = "mypy_boto3_drs-1.34.87.tar.gz", hash = "sha256:0b38c8a57aba491aae4060ab003dbd2f8d6d29fe042856e500f9567ec56a0588"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ds" +version = "1.34.128" +description = "Type annotations for boto3.DirectoryService 1.34.128 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ds-1.34.128-py3-none-any.whl", hash = "sha256:324bd8263f60f4c4cae2e68fb5360a56dc665508bde08bea522b5642f482a891"}, + {file = "mypy_boto3_ds-1.34.128.tar.gz", hash = "sha256:025df6e59f5724ccf648296d8f58968647a64f793b16d7401422f075e140b3e3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-dynamodb" +version = "1.34.148" +description = "Type annotations for boto3.DynamoDB 1.34.148 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_dynamodb-1.34.148-py3-none-any.whl", hash = "sha256:f1a7aabff5c6e926b9b272df87251c9d6dfceb4c1fb159fb5a2df52062cd7e87"}, + {file = "mypy_boto3_dynamodb-1.34.148.tar.gz", hash = "sha256:c85489b92cbbbe4f6997070372022df914d4cb8eb707fdc73aa18ce6ba25c578"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-dynamodbstreams" +version = "1.34.0" +description = "Type annotations for boto3.DynamoDBStreams 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-dynamodbstreams-1.34.0.tar.gz", hash = "sha256:671e5c244f9f53d35cbcae6b2d1f7ae80188294bdf2307692da59674b9ae0f37"}, + {file = "mypy_boto3_dynamodbstreams-1.34.0-py3-none-any.whl", hash = "sha256:f6fa5b10117bc0fae5373e1d46ed05bf4683d751fdce3a579364221749fdd631"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ebs" +version = "1.34.0" +description = "Type annotations for boto3.EBS 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-ebs-1.34.0.tar.gz", hash = "sha256:c48aeb5ce6b265e77e25c9f80855d73602b3fc6f91762bb0034e30abe472fdfb"}, + {file = "mypy_boto3_ebs-1.34.0-py3-none-any.whl", hash = "sha256:1277d073e904c57846d3faa1d02d1f14c0b75d84d5f83fa590146d04e45f872b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ec2" +version = "1.34.149" +description = "Type annotations for boto3.EC2 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ec2-1.34.149-py3-none-any.whl", hash = "sha256:9f5b13d7ffcb7fb1d57688a728bcefbeb12ab74f2047ee5a4577b8064f7a3fe3"}, + {file = "mypy_boto3_ec2-1.34.149.tar.gz", hash = "sha256:034f8d160535f5cf77fe35c95588454790cd2709f656274604bc36f76406211f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ec2-instance-connect" +version = "1.34.63" +description = "Type annotations for boto3.EC2InstanceConnect 1.34.63 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-ec2-instance-connect-1.34.63.tar.gz", hash = "sha256:904c66197109e63aef39ec265b1ec08d56f76e80f9194d1c114a7fd8f421ce5c"}, + {file = "mypy_boto3_ec2_instance_connect-1.34.63-py3-none-any.whl", hash = "sha256:cf6234d9d8705ee66137d39e70c8e701a6a68c20a1a1eebaee8c8984ed0da234"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ecr" +version = "1.34.149" +description = "Type annotations for boto3.ECR 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ecr-1.34.149-py3-none-any.whl", hash = "sha256:feaa4d988274abcd20af6cadc46490abcd93f3cee21a2099963df7b69c322bba"}, + {file = "mypy_boto3_ecr-1.34.149.tar.gz", hash = "sha256:60679e27cd0a3fcb0af95b5453106d1168158f08fb46ab005b8998b19e43591f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ecr-public" +version = "1.34.0" +description = "Type annotations for boto3.ECRPublic 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-ecr-public-1.34.0.tar.gz", hash = "sha256:dfc6624553ebf4bf8a505ea82f6df1b0888a316d294ff9c89e01648524b7cf66"}, + {file = "mypy_boto3_ecr_public-1.34.0-py3-none-any.whl", hash = "sha256:a8c1776d8a542e1b95dd59f6604629669c3f7af17bd80b5461ae19dcd35189b7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ecs" +version = "1.34.123" +description = "Type annotations for boto3.ECS 1.34.123 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ecs-1.34.123-py3-none-any.whl", hash = "sha256:e9e75363840e7b5d3ab0683cce744348f67b4ebb8ad47edc048ee3395d26875a"}, + {file = "mypy_boto3_ecs-1.34.123.tar.gz", hash = "sha256:69444dfd81e370e08b9235160f95e615232f2e0b1320324ca144078741d368f4"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-efs" +version = "1.34.128" +description = "Type annotations for boto3.EFS 1.34.128 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_efs-1.34.128-py3-none-any.whl", hash = "sha256:6887a5112b7d85d816f089b261cf464cb7647ee797fd68c465260df8ed40f43f"}, + {file = "mypy_boto3_efs-1.34.128.tar.gz", hash = "sha256:f6af98cfcc7a01ef81d935003420e0fc2b111ff8741666fc052aa1142f5a3a72"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-eks" +version = "1.34.149" +description = "Type annotations for boto3.EKS 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_eks-1.34.149-py3-none-any.whl", hash = "sha256:b5d74e649e2168a3d9b2c61d8220c533f37cf0ad07994aef78ce9bc40a9d7b93"}, + {file = "mypy_boto3_eks-1.34.149.tar.gz", hash = "sha256:17bec08c93d147486dc9c07e96a075ec7e03ac98d63be7a18c0fce4278e9c036"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-eks-auth" +version = "1.34.0" +description = "Type annotations for boto3.EKSAuth 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-eks-auth-1.34.0.tar.gz", hash = "sha256:d680addc5f8d83f59d7fe15b2a05910fbb3162ad7086ef49b71fec79d4090338"}, + {file = "mypy_boto3_eks_auth-1.34.0-py3-none-any.whl", hash = "sha256:7ac0f9e05ad309ca9c0ce74eb2b257223418e80816804e043076fa2f3115b9e6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-elastic-inference" +version = "1.34.0" +description = "Type annotations for boto3.ElasticInference 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-elastic-inference-1.34.0.tar.gz", hash = "sha256:81b58ac34cc341fdea065a7529e3bb317d63fc6a91529140c4b1b404a16b1c19"}, + {file = "mypy_boto3_elastic_inference-1.34.0-py3-none-any.whl", hash = "sha256:d2c945492df3be889d64b2648904dae96528875f0b164e92fb1f50daf5aa7982"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-elasticache" +version = "1.34.135" +description = "Type annotations for boto3.ElastiCache 1.34.135 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_elasticache-1.34.135-py3-none-any.whl", hash = "sha256:7e90b54767dc3183da54d5c8ff4719e7f71d4c4993db0886139066d1ea9cceba"}, + {file = "mypy_boto3_elasticache-1.34.135.tar.gz", hash = "sha256:3b23b27a82cb282c47c7ecc877637c27eb858c00041fd756aed15800b145a7ec"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-elasticbeanstalk" +version = "1.34.141" +description = "Type annotations for boto3.ElasticBeanstalk 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_elasticbeanstalk-1.34.141-py3-none-any.whl", hash = "sha256:aa3be13cb5c854841ef11bd5a993a77aa313f7c1a3ab7cf430df64e42f44e0e0"}, + {file = "mypy_boto3_elasticbeanstalk-1.34.141.tar.gz", hash = "sha256:5f0698bacde67aef6b7ec3b0296f23269759d7d0658e7b019b0a2a809283fc8e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-elastictranscoder" +version = "1.34.130" +description = "Type annotations for boto3.ElasticTranscoder 1.34.130 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_elastictranscoder-1.34.130-py3-none-any.whl", hash = "sha256:6a7dc341fd0f280ad457ad606d4ab40f98c780ac1bb9aaf7b070224dcc972c7a"}, + {file = "mypy_boto3_elastictranscoder-1.34.130.tar.gz", hash = "sha256:78ccc5decf294dae3c08df6cb1e496b989fd89a18798f864391bae2864d63230"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-elb" +version = "1.34.0" +description = "Type annotations for boto3.ElasticLoadBalancing 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-elb-1.34.0.tar.gz", hash = "sha256:e448790fcef6a550dded0f830e1df3a46315812f1f509b15fbadc7d5f7adef7b"}, + {file = "mypy_boto3_elb-1.34.0-py3-none-any.whl", hash = "sha256:0ffb6abd79863e6b1f5de5c6992d11c57bd49eb5b2da0ec395cbae6a64415738"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-elbv2" +version = "1.34.149" +description = "Type annotations for boto3.ElasticLoadBalancingv2 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_elbv2-1.34.149-py3-none-any.whl", hash = "sha256:c305e49a87eb9ae6e7df2c06a27e53a7b47ae1f4882d5f1ab243e5ced9a3a0a3"}, + {file = "mypy_boto3_elbv2-1.34.149.tar.gz", hash = "sha256:d5b61a2291f6417ba0a750d419d1007d253742f4940e0d4f513a03f71159ae51"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-emr" +version = "1.34.136" +description = "Type annotations for boto3.EMR 1.34.136 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_emr-1.34.136-py3-none-any.whl", hash = "sha256:0c3079410be951278806b8ddb950263b4ac63f1add2a770e3e57edf952161a83"}, + {file = "mypy_boto3_emr-1.34.136.tar.gz", hash = "sha256:90b338fc23e109b39df4c29f744dddf5c0e44eb1b0821f1d634989faaa92cb6d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-emr-containers" +version = "1.34.91" +description = "Type annotations for boto3.EMRContainers 1.34.91 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_emr_containers-1.34.91-py3-none-any.whl", hash = "sha256:be9942332cd2f3331d7b1d3c326fa5561b0c9c72afa252d432efa342a1b44af6"}, + {file = "mypy_boto3_emr_containers-1.34.91.tar.gz", hash = "sha256:47c42418f19356371d6cbf22501ea2d240e1db02c9c79d8fab31abd34d15fb5d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-emr-serverless" +version = "1.34.116" +description = "Type annotations for boto3.EMRServerless 1.34.116 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_emr_serverless-1.34.116-py3-none-any.whl", hash = "sha256:500303a135e4bbd8e45da3a2d07ecbf851385bb9008b008148a0f5396178cd20"}, + {file = "mypy_boto3_emr_serverless-1.34.116.tar.gz", hash = "sha256:e6d26a5d0e93c7e87117a45daedaf6d0d3be2d463dca389b611eafcc63ed2079"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-entityresolution" +version = "1.34.147" +description = "Type annotations for boto3.EntityResolution 1.34.147 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_entityresolution-1.34.147-py3-none-any.whl", hash = "sha256:6c96fa261c454b4790c7db0fbea7c5310e367138262f1df9c6092beff57774eb"}, + {file = "mypy_boto3_entityresolution-1.34.147.tar.gz", hash = "sha256:a6c386df01bdba61045f38037072e785c5d04cc2e04d585beddc96ecf2a424f6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-es" +version = "1.34.141" +description = "Type annotations for boto3.ElasticsearchService 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_es-1.34.141-py3-none-any.whl", hash = "sha256:110c4e55acad55dffc35b8517b73c76eef0550850420dae678ef6daf970dcf64"}, + {file = "mypy_boto3_es-1.34.141.tar.gz", hash = "sha256:662aacda132f71c5a3c077a12b0994dc0bdd6ae07c4be86cf091a28121588262"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-events" +version = "1.34.104" +description = "Type annotations for boto3.EventBridge 1.34.104 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_events-1.34.104-py3-none-any.whl", hash = "sha256:e750aca0c68ccfb74c2d9b6117f9469ad69715e67786a952b500232ed0cb109d"}, + {file = "mypy_boto3_events-1.34.104.tar.gz", hash = "sha256:98279718883a11f788008e48ab750e3757493e10babdafa2913b1976b2fee538"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-evidently" +version = "1.34.0" +description = "Type annotations for boto3.CloudWatchEvidently 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-evidently-1.34.0.tar.gz", hash = "sha256:324041e624d82588367161581d1dd0bbb4dcb038252cf130d0c9e81ea8a3ebe0"}, + {file = "mypy_boto3_evidently-1.34.0-py3-none-any.whl", hash = "sha256:962349ddbadc6fb72ec47460bd03c4158ebde46f00fa0010c023bcef23d40098"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-finspace" +version = "1.34.71" +description = "Type annotations for boto3.finspace 1.34.71 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-finspace-1.34.71.tar.gz", hash = "sha256:6e03f00d7aaeef70e34020039a34e283a90b34e5af437f5f9708726006d36a2e"}, + {file = "mypy_boto3_finspace-1.34.71-py3-none-any.whl", hash = "sha256:d75c6a25e6b744a82b01ef0482d182b571b20ac55905f40bd418791146398a40"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-finspace-data" +version = "1.34.0" +description = "Type annotations for boto3.FinSpaceData 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-finspace-data-1.34.0.tar.gz", hash = "sha256:f26343e416dd298e6cac5c1da714b27c251320fe1f6bd873b4fe1d69424e07c9"}, + {file = "mypy_boto3_finspace_data-1.34.0-py3-none-any.whl", hash = "sha256:d10fb58efc5361df09d2bab65c06b7db6f61c333c4c6734e17a257dd132b64b5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-firehose" +version = "1.34.145" +description = "Type annotations for boto3.Firehose 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_firehose-1.34.145-py3-none-any.whl", hash = "sha256:109115a339fadf4e28a3426768684498815a4abdda6c29b83e4df586a148699c"}, + {file = "mypy_boto3_firehose-1.34.145.tar.gz", hash = "sha256:0e4209b131d81b7c849030c465fff2ca75b264cf8596b6fd138ee2b592cf0937"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-fis" +version = "1.34.63" +description = "Type annotations for boto3.FIS 1.34.63 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-fis-1.34.63.tar.gz", hash = "sha256:4c99f38101837326e956a83ea7b4eebf0fd1a18efd7103cf0a1c875a53318626"}, + {file = "mypy_boto3_fis-1.34.63-py3-none-any.whl", hash = "sha256:693a170e941022212591f13869e037e9cef4cdf6f07bb3a06a86a2308c4529ce"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-fms" +version = "1.34.138" +description = "Type annotations for boto3.FMS 1.34.138 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_fms-1.34.138-py3-none-any.whl", hash = "sha256:561461787e2226afba5717ed43714b466cd2adfb291cfc261db80e7bedda5948"}, + {file = "mypy_boto3_fms-1.34.138.tar.gz", hash = "sha256:e925ac5292baf9ed3b59b00a6a9576cc9cd9b88c8b81e19a4b41724d8caf7b65"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-forecast" +version = "1.34.0" +description = "Type annotations for boto3.ForecastService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-forecast-1.34.0.tar.gz", hash = "sha256:0ee3597bd43b1ee11e258b81aa8ec94414c981c97252953d7c9eb6482198a4b4"}, + {file = "mypy_boto3_forecast-1.34.0-py3-none-any.whl", hash = "sha256:4ab011ac8e7639ca405abf177393875ace96ec26f1b2688744317f2f0265bfa3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-forecastquery" +version = "1.34.0" +description = "Type annotations for boto3.ForecastQueryService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-forecastquery-1.34.0.tar.gz", hash = "sha256:20429641bc110c7893fe7e5d4975ed2c3a9154ad76f8489283d27e7465dfab1f"}, + {file = "mypy_boto3_forecastquery-1.34.0-py3-none-any.whl", hash = "sha256:c1501e1327550c9b6d51b66b8eac0c45279bc2a56c45a222980ae18e3d3372ff"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-frauddetector" +version = "1.34.0" +description = "Type annotations for boto3.FraudDetector 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-frauddetector-1.34.0.tar.gz", hash = "sha256:123885105a4b28dd0d9ab358e3708585064737e08e4f0457c79d775fa5fbbe51"}, + {file = "mypy_boto3_frauddetector-1.34.0-py3-none-any.whl", hash = "sha256:00d0e1bcf4ca2c357e9fa032438d06abba9fb40acd96be8f87e367030c32835e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-freetier" +version = "1.34.0" +description = "Type annotations for boto3.FreeTier 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-freetier-1.34.0.tar.gz", hash = "sha256:8e2142c3c7d9fe9fb024b86b0cec47ad260c53fd9563da2773ecf7ceb1699857"}, + {file = "mypy_boto3_freetier-1.34.0-py3-none-any.whl", hash = "sha256:7cec350bf19e6924ec58c8b35e89f20e1df8b9010e7ff5df5ebb2a7c6ccd06f3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-fsx" +version = "1.34.142" +description = "Type annotations for boto3.FSx 1.34.142 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_fsx-1.34.142-py3-none-any.whl", hash = "sha256:32fc13bac9cf1f9a7ea0ebd5e5120cf63463e9ae3a0d2c9dd629b55caf92a8b7"}, + {file = "mypy_boto3_fsx-1.34.142.tar.gz", hash = "sha256:e2742377564101bf7570cc8bb4fb5d53ef2e94c2e13e98f26c882ae90a13f552"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-gamelift" +version = "1.34.141" +description = "Type annotations for boto3.GameLift 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_gamelift-1.34.141-py3-none-any.whl", hash = "sha256:f4449244e532dab296bb26fe045c0f8b495548ec39da008fa6175039c851f179"}, + {file = "mypy_boto3_gamelift-1.34.141.tar.gz", hash = "sha256:374c6e3fe374eb53c0f67d906ea52519927eb48f2ce057c07e1ada86cf97a7b9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-glacier" +version = "1.34.0" +description = "Type annotations for boto3.Glacier 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-glacier-1.34.0.tar.gz", hash = "sha256:8fc2d40fc1238d12f56afed411706a34f10045a48582cb5a8a8189b5b7a5e283"}, + {file = "mypy_boto3_glacier-1.34.0-py3-none-any.whl", hash = "sha256:d74cba2eff6ce29f684747e2d47bd3688bb1714a40aa307984d25081df44090f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-globalaccelerator" +version = "1.34.144" +description = "Type annotations for boto3.GlobalAccelerator 1.34.144 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_globalaccelerator-1.34.144-py3-none-any.whl", hash = "sha256:2873cd4f5fb68a16fe53d201a9aed972e28daed5cb5686385da48c35d5507a59"}, + {file = "mypy_boto3_globalaccelerator-1.34.144.tar.gz", hash = "sha256:bd8885723bcf919da867cef997c9de43bf97271015db5af8d0894af861181dc6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-glue" +version = "1.34.143" +description = "Type annotations for boto3.Glue 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_glue-1.34.143-py3-none-any.whl", hash = "sha256:50b620ac58a4b2c0d66966f1e72e2aa53ec703a0e56751a93f0d48710e3a7d6d"}, + {file = "mypy_boto3_glue-1.34.143.tar.gz", hash = "sha256:7f98835c255a50cea9ef892b03582ecd19754e6bba5827356c90453af1e3b0f5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-grafana" +version = "1.34.106" +description = "Type annotations for boto3.ManagedGrafana 1.34.106 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_grafana-1.34.106-py3-none-any.whl", hash = "sha256:e62a6adb0736a874223e80ffb39cb3a199a4b07ed2bd53151b1458b436d13e5c"}, + {file = "mypy_boto3_grafana-1.34.106.tar.gz", hash = "sha256:aa5d7bf2ca202158bd80a86f5fd1e527860e9d8b3d4542b6df054d63d7355034"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-greengrass" +version = "1.34.0" +description = "Type annotations for boto3.Greengrass 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-greengrass-1.34.0.tar.gz", hash = "sha256:654ff15561a5327817d09880872f4d1050e85d2e1fb19be62c0916aafda9a1c4"}, + {file = "mypy_boto3_greengrass-1.34.0-py3-none-any.whl", hash = "sha256:9f745a3d3a7a9289830df13138f340efc05b83102df0e56601eeab91b260a8dc"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-greengrassv2" +version = "1.34.103" +description = "Type annotations for boto3.GreengrassV2 1.34.103 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_greengrassv2-1.34.103-py3-none-any.whl", hash = "sha256:6b1e0627340dde66fafe52a3a58173d52d7e9c27ec24b151f3695efdfd789711"}, + {file = "mypy_boto3_greengrassv2-1.34.103.tar.gz", hash = "sha256:13ad5bf4054ee055a57c3602f51b04e50648de24f3974f27e65a1de9827b7c17"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-groundstation" +version = "1.34.143" +description = "Type annotations for boto3.GroundStation 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_groundstation-1.34.143-py3-none-any.whl", hash = "sha256:eaa843b5731e567f6788755275d948cbde1f52e533ee5522384f32003da2e227"}, + {file = "mypy_boto3_groundstation-1.34.143.tar.gz", hash = "sha256:8229cb3d78eadcac74f2e6ee2258492477546236c3e24d99abb03dd59d519f23"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-guardduty" +version = "1.34.124" +description = "Type annotations for boto3.GuardDuty 1.34.124 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_guardduty-1.34.124-py3-none-any.whl", hash = "sha256:82d61e6399f19a56792c4840c4ad78e91432f395d0d10b59924b72c5fb0de3da"}, + {file = "mypy_boto3_guardduty-1.34.124.tar.gz", hash = "sha256:81229de707b87013571f06a0a7161ff5e72f5411e49238f3d907a9ca1b45a316"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-health" +version = "1.34.0" +description = "Type annotations for boto3.Health 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-health-1.34.0.tar.gz", hash = "sha256:b2ddf2832f7265b01b8756569d3f170d94c1cf5a968515970847ebe482d01e9a"}, + {file = "mypy_boto3_health-1.34.0-py3-none-any.whl", hash = "sha256:5c60f9f92acbbdbaf554c4468d6f1ded9d15ca6d7217078adb4f2ddbfa97a8f3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-healthlake" +version = "1.34.84" +description = "Type annotations for boto3.HealthLake 1.34.84 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_healthlake-1.34.84-py3-none-any.whl", hash = "sha256:2fc022b405f27d2e2251578ca2dc39d8aba4a15b8fd4bb69f963f91cf5ab4a84"}, + {file = "mypy_boto3_healthlake-1.34.84.tar.gz", hash = "sha256:bfdf9d5829fb27054d2e93e074ce635edd295f600ff7e589e1db027ac1c3fddc"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iam" +version = "1.34.83" +description = "Type annotations for boto3.IAM 1.34.83 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-iam-1.34.83.tar.gz", hash = "sha256:7261315616757ebf7509df0e9b091d5942e470eb51c4b23c662a06873a9a8eca"}, + {file = "mypy_boto3_iam-1.34.83-py3-none-any.whl", hash = "sha256:dec66a98e29ec1e36178c24b8ff57aab6b91230df97557363bbd90ec06874768"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-identitystore" +version = "1.34.0" +description = "Type annotations for boto3.IdentityStore 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-identitystore-1.34.0.tar.gz", hash = "sha256:39d26c323ada4dee2a8696e504ebb0afefb841f88c5ed69a3070c010e4c1208e"}, + {file = "mypy_boto3_identitystore-1.34.0-py3-none-any.whl", hash = "sha256:1b8749a89ca1440608169eaa45afe2ec9aa0dbd02a754ee5cc62ce064426c23f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-imagebuilder" +version = "1.34.123" +description = "Type annotations for boto3.Imagebuilder 1.34.123 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_imagebuilder-1.34.123-py3-none-any.whl", hash = "sha256:104b54c074fb6e8d70b915f364356438252946e6054b2f62341051bd84d50d60"}, + {file = "mypy_boto3_imagebuilder-1.34.123.tar.gz", hash = "sha256:f98535b4813865b6a29b231971058ac7df10b2d73c76f284cfb5b1b54c70db24"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-importexport" +version = "1.34.0" +description = "Type annotations for boto3.ImportExport 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-importexport-1.34.0.tar.gz", hash = "sha256:1a723309a0ae44b3ddbda0269880fadae63fb5ed4bc790c51a29f6cc9b837403"}, + {file = "mypy_boto3_importexport-1.34.0-py3-none-any.whl", hash = "sha256:85cd243227d315ac78a4e0c0433914828e54c48b8141671c2502bc750f56bc2d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-inspector" +version = "1.34.0" +description = "Type annotations for boto3.Inspector 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-inspector-1.34.0.tar.gz", hash = "sha256:f39680135f9acca67db056312cea554784a4aab9df150d605e01a9cce04ad4f1"}, + {file = "mypy_boto3_inspector-1.34.0-py3-none-any.whl", hash = "sha256:8705726ef2e0d2dbd180659bc33db6c56571b2e84002f00fecadf75a9c88ba4b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-inspector-scan" +version = "1.34.0" +description = "Type annotations for boto3.inspectorscan 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-inspector-scan-1.34.0.tar.gz", hash = "sha256:ef0ecc490ae460afc12672abfb6d3640a9f7004252f8fbcc57ee22a2bb0caf55"}, + {file = "mypy_boto3_inspector_scan-1.34.0-py3-none-any.whl", hash = "sha256:9fbb0ee1911872a00afb12f7f23c77bbd37c77a27012678e00f461f16d4a4899"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-inspector2" +version = "1.34.98" +description = "Type annotations for boto3.Inspector2 1.34.98 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_inspector2-1.34.98-py3-none-any.whl", hash = "sha256:13062e4a872ead93e6fefdbe6851a6b14713c651c2db3b171aaf722c42aef1bc"}, + {file = "mypy_boto3_inspector2-1.34.98.tar.gz", hash = "sha256:eb0ac9d9a77b0eb9db8fdb7c4d608b82e861b92d33e04ec385b08708ed48f4d6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-internetmonitor" +version = "1.34.88" +description = "Type annotations for boto3.CloudWatchInternetMonitor 1.34.88 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_internetmonitor-1.34.88-py3-none-any.whl", hash = "sha256:bdf2fe5afdbf2787311c92fd672313f4d34a312848f05945bbb96762ed91d8c3"}, + {file = "mypy_boto3_internetmonitor-1.34.88.tar.gz", hash = "sha256:55ef6d00b19aad0f3c72cbe79c31516333aedca883676b343310060c0cc401ba"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iot" +version = "1.34.52" +description = "Type annotations for boto3.IoT 1.34.52 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-iot-1.34.52.tar.gz", hash = "sha256:6161a8b4e3ca96363807424bd48f9ac64e0c259224f38ad5c6866ef6dcc11acb"}, + {file = "mypy_boto3_iot-1.34.52-py3-none-any.whl", hash = "sha256:825f93f6042def95281608a7df104484ab7b3f0a8af867d1f133e724467f9c8f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iot-data" +version = "1.34.0" +description = "Type annotations for boto3.IoTDataPlane 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iot-data-1.34.0.tar.gz", hash = "sha256:37a5281e8a6c4f714cedb534d5e5aea914b2cb268b05e92433e86c394d5bc883"}, + {file = "mypy_boto3_iot_data-1.34.0-py3-none-any.whl", hash = "sha256:d818b3042bc4365ecb1a64824eca3dd33f037ebc7f33c840f5730352ca1da826"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iot-jobs-data" +version = "1.34.0" +description = "Type annotations for boto3.IoTJobsDataPlane 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iot-jobs-data-1.34.0.tar.gz", hash = "sha256:71eaa4f86b7e21c215b8ba7f2ccb2b8e7517acfb7e498fa623c1b784a744ed36"}, + {file = "mypy_boto3_iot_jobs_data-1.34.0-py3-none-any.whl", hash = "sha256:0fe4c54478fa65aa5b2bab9aefef78369d657b44e028d23f4fc06c4a941f308c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iot1click-devices" +version = "1.34.0" +description = "Type annotations for boto3.IoT1ClickDevicesService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iot1click-devices-1.34.0.tar.gz", hash = "sha256:669bff930e78d4ba02dd9e7c78a19eeec2b9aa2a16306b30412d0efa3bcd6606"}, + {file = "mypy_boto3_iot1click_devices-1.34.0-py3-none-any.whl", hash = "sha256:e959a98f4e05462d5b2efaaf2c20ba1837127d24c74175d5e10ba2cd0bf0a3a6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iot1click-projects" +version = "1.34.0" +description = "Type annotations for boto3.IoT1ClickProjects 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iot1click-projects-1.34.0.tar.gz", hash = "sha256:419d3a0795104ae0cf51a5ea6583e36b04848c84230703fb779fe86e9bcd8af2"}, + {file = "mypy_boto3_iot1click_projects-1.34.0-py3-none-any.whl", hash = "sha256:b4d6c2dd2ab73828103cfbe03b400e1ce0088d1e1bc3ba48e1de1dab29e92b27"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotanalytics" +version = "1.34.0" +description = "Type annotations for boto3.IoTAnalytics 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iotanalytics-1.34.0.tar.gz", hash = "sha256:683969b5060943bd56598b20bfe6c54680f67e6786822525d45bffa0e0102443"}, + {file = "mypy_boto3_iotanalytics-1.34.0-py3-none-any.whl", hash = "sha256:20c321c670d096365b5c894b43b13071108570d89d7df325e7283c44e426f136"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotdeviceadvisor" +version = "1.34.0" +description = "Type annotations for boto3.IoTDeviceAdvisor 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iotdeviceadvisor-1.34.0.tar.gz", hash = "sha256:0c12387495f1a6b7c73b78a92c855be488b934aeea58946e5a3cd57c74e7a8ee"}, + {file = "mypy_boto3_iotdeviceadvisor-1.34.0-py3-none-any.whl", hash = "sha256:8ffd2e0f0d8230b201c2a53b08dcd9dcd4c9f1e8608154774d6a7b95e42faf33"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotevents" +version = "1.34.47" +description = "Type annotations for boto3.IoTEvents 1.34.47 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-iotevents-1.34.47.tar.gz", hash = "sha256:a69b232c8db263dfba4a6021d667d506e673fa01cd3594ba78a0ebddf1c79893"}, + {file = "mypy_boto3_iotevents-1.34.47-py3-none-any.whl", hash = "sha256:56f9c3ef2bb989ac41ae84187cd78fda51c5765b0bd8cb4fe30e496e2975465e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotevents-data" +version = "1.34.0" +description = "Type annotations for boto3.IoTEventsData 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iotevents-data-1.34.0.tar.gz", hash = "sha256:2bbc809f18e925f4a1e9b5a799c7724a4090861545b78db353a4448b2df32ab9"}, + {file = "mypy_boto3_iotevents_data-1.34.0-py3-none-any.whl", hash = "sha256:0e6e506e2c304df56b30aa8e8fc4c384f882251d8e74e0bcbe903ad734c3373c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotfleethub" +version = "1.34.84" +description = "Type annotations for boto3.IoTFleetHub 1.34.84 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_iotfleethub-1.34.84-py3-none-any.whl", hash = "sha256:99c17e649479db4c3427dd07bced84553b280426a90611af25249c1178e00a21"}, + {file = "mypy_boto3_iotfleethub-1.34.84.tar.gz", hash = "sha256:ef4bbaba3214dbe858f50f6b891ba31f6702a4d7a6458cbddb1da863dd5a5e43"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotfleetwise" +version = "1.34.113" +description = "Type annotations for boto3.IoTFleetWise 1.34.113 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_iotfleetwise-1.34.113-py3-none-any.whl", hash = "sha256:0e5ad3064fafa62f0d012a8ffe9b275661255af8bed68f5cab5550dde197838b"}, + {file = "mypy_boto3_iotfleetwise-1.34.113.tar.gz", hash = "sha256:8c476df446220cd7ee21831a5a6cab161f9c39e793bdfdac2f0c8afddc36369b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotsecuretunneling" +version = "1.34.0" +description = "Type annotations for boto3.IoTSecureTunneling 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iotsecuretunneling-1.34.0.tar.gz", hash = "sha256:13ceb9f17df25a921c44a0d3b6769c8ee0005aaaffaa79985c5449ffbbb22a6f"}, + {file = "mypy_boto3_iotsecuretunneling-1.34.0-py3-none-any.whl", hash = "sha256:a4b4c948021ffa8d36d409a98d86d4839ed0d77c9afe1c4a0c325f9416a1f232"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotsitewise" +version = "1.34.148" +description = "Type annotations for boto3.IoTSiteWise 1.34.148 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_iotsitewise-1.34.148-py3-none-any.whl", hash = "sha256:b4f22a7fadd5bb3556326c91ff4b380cc9f8ccfeff658ac8ab981c41e477f51e"}, + {file = "mypy_boto3_iotsitewise-1.34.148.tar.gz", hash = "sha256:ffe644bc9142df48864fcd853e3176262a1e7a73e952f8406a1055b80cd56d96"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotthingsgraph" +version = "1.34.0" +description = "Type annotations for boto3.IoTThingsGraph 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-iotthingsgraph-1.34.0.tar.gz", hash = "sha256:f03d23a8ebaeb33e922c2afe78a019a53afd76f7689c873bf946325c3cd5cd84"}, + {file = "mypy_boto3_iotthingsgraph-1.34.0-py3-none-any.whl", hash = "sha256:e664b00b491e4d3f06c28b1b30e4e6938095dc911d344c5a737b6839a27d76dc"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iottwinmaker" +version = "1.34.118" +description = "Type annotations for boto3.IoTTwinMaker 1.34.118 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_iottwinmaker-1.34.118-py3-none-any.whl", hash = "sha256:3339b1dd578225226a4d194f6bbb1a54e62ac7d3870f548b83817d611aff4991"}, + {file = "mypy_boto3_iottwinmaker-1.34.118.tar.gz", hash = "sha256:75927b41d9b563737cfa61f9708fa6e1d8fb93b1657288e3d8547fb23d6cfbd5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-iotwireless" +version = "1.34.126" +description = "Type annotations for boto3.IoTWireless 1.34.126 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_iotwireless-1.34.126-py3-none-any.whl", hash = "sha256:9f0929e8d9a4cf893ac3ca5319a5642d3c72aa5c446514ca3423022a5fcf86d6"}, + {file = "mypy_boto3_iotwireless-1.34.126.tar.gz", hash = "sha256:c61371e9eb21ac84eb555f42d0f3865cd0358adee4630a73502a0a9ada25af86"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ivs" +version = "1.34.146" +description = "Type annotations for boto3.IVS 1.34.146 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ivs-1.34.146-py3-none-any.whl", hash = "sha256:bc5b8526a4ad33a389d504fbfecc1e8026c498ac76b4a9a0fa249913214da636"}, + {file = "mypy_boto3_ivs-1.34.146.tar.gz", hash = "sha256:d6e0f1b57da0e6ac031e17ed73d2e20e7e1889ad4d31526105a1b1c43b9a3f17"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ivs-realtime" +version = "1.34.134" +description = "Type annotations for boto3.Ivsrealtime 1.34.134 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ivs_realtime-1.34.134-py3-none-any.whl", hash = "sha256:fb6cca913c5ef59b1be792698424d0d40b427fc632e38aab701363845cc9a409"}, + {file = "mypy_boto3_ivs_realtime-1.34.134.tar.gz", hash = "sha256:cc6025d5b6be0a56dff1b0ae14c32864c687273be6805dfa1215fb8cdef157bd"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ivschat" +version = "1.34.145" +description = "Type annotations for boto3.Ivschat 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ivschat-1.34.145-py3-none-any.whl", hash = "sha256:afdc178980a0be69e3811cf84db7d77faa96a1dad25c7c37c0549a164d07a8c9"}, + {file = "mypy_boto3_ivschat-1.34.145.tar.gz", hash = "sha256:3d9bdce2b2896434ba6dce2bbfddc7e4965b142b81b1a22b25669af66a4063bb"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kafka" +version = "1.34.114" +description = "Type annotations for boto3.Kafka 1.34.114 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_kafka-1.34.114-py3-none-any.whl", hash = "sha256:8951cb8a613064dec871b047388853abe5723b60b0cd17fc0866b48a33daf8f9"}, + {file = "mypy_boto3_kafka-1.34.114.tar.gz", hash = "sha256:4e31d72455d63b0844e005b798578b316a1d2932ca6d6b9dc59e7db59db9cb90"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kafkaconnect" +version = "1.34.50" +description = "Type annotations for boto3.KafkaConnect 1.34.50 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-kafkaconnect-1.34.50.tar.gz", hash = "sha256:7eb3cf010785c8ef76b8caaacc17120b73152b857885b74ef6dc786b000a0145"}, + {file = "mypy_boto3_kafkaconnect-1.34.50-py3-none-any.whl", hash = "sha256:ff3a9241b008bae589f626fcd7125dcc870a9f675c30816fc08b0a15cb9ced0a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kendra" +version = "1.34.69" +description = "Type annotations for boto3.kendra 1.34.69 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-kendra-1.34.69.tar.gz", hash = "sha256:38a512b027efd97f5a7795d44b09b4291c16fbea9bf8056dbc23aeae544cfdba"}, + {file = "mypy_boto3_kendra-1.34.69-py3-none-any.whl", hash = "sha256:e7c7f0a05504cb73f95670cb941b17284ead6ef0ef3544870ef9a6017e6d6b81"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kendra-ranking" +version = "1.34.0" +description = "Type annotations for boto3.KendraRanking 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-kendra-ranking-1.34.0.tar.gz", hash = "sha256:85b7a6cf9102b5f3f7a22eb8e65653ec20b1df5ca0f0c36a6c00f7d809ba9755"}, + {file = "mypy_boto3_kendra_ranking-1.34.0-py3-none-any.whl", hash = "sha256:d87588decb146793ce398ec52afd3634f2ac3705ec7847d1a3192278bf9f5a97"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-keyspaces" +version = "1.34.45" +description = "Type annotations for boto3.Keyspaces 1.34.45 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-keyspaces-1.34.45.tar.gz", hash = "sha256:51c9adb5f8bca1020fa5d7ebdca3efad7d538f7cdb6311c6a181f424d617e543"}, + {file = "mypy_boto3_keyspaces-1.34.45-py3-none-any.whl", hash = "sha256:69feea8947d048c2d217f9458b9be8306a03c75001239455c13346b0bd550dd1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesis" +version = "1.34.0" +description = "Type annotations for boto3.Kinesis 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-kinesis-1.34.0.tar.gz", hash = "sha256:f404e75badd5977e9f09741b769b8888854bdd411c631344686ab889efe98741"}, + {file = "mypy_boto3_kinesis-1.34.0-py3-none-any.whl", hash = "sha256:1add81c53f6e36599e0c22e142024867759aaf2f4954bcb2baa21c284c852377"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesis-video-archived-media" +version = "1.34.10" +description = "Type annotations for boto3.KinesisVideoArchivedMedia 1.34.10 service generated with mypy-boto3-builder 7.23.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-kinesis-video-archived-media-1.34.10.tar.gz", hash = "sha256:07aeb1f5eaf1e529670e64c1a5fe22cc67241781b2b02872f95457cbdb5649fe"}, + {file = "mypy_boto3_kinesis_video_archived_media-1.34.10-py3-none-any.whl", hash = "sha256:1781d6b6b1fe188bd736261a129f3fd7667850344711aab99cbc08a69e12e42e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesis-video-media" +version = "1.34.0" +description = "Type annotations for boto3.KinesisVideoMedia 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-kinesis-video-media-1.34.0.tar.gz", hash = "sha256:620906d78533ca6b6144b8387206bcd190caf5cc59cc50532129a77d33edf273"}, + {file = "mypy_boto3_kinesis_video_media-1.34.0-py3-none-any.whl", hash = "sha256:3e0c1cf16753c2ef01367210f6c41c6ea4f0cb4f39f38ba93d19db5fd255a4f1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesis-video-signaling" +version = "1.34.0" +description = "Type annotations for boto3.KinesisVideoSignalingChannels 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-kinesis-video-signaling-1.34.0.tar.gz", hash = "sha256:68d16eaee334910361a7ec0426bf81a3d3332e2786e9af31cdbac7180a2f830f"}, + {file = "mypy_boto3_kinesis_video_signaling-1.34.0-py3-none-any.whl", hash = "sha256:c4f05bd8fa1e02e5c1fa7751846b337ad68cc7fcaf855e92b617a1fb228bc8f9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesis-video-webrtc-storage" +version = "1.34.0" +description = "Type annotations for boto3.KinesisVideoWebRTCStorage 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-kinesis-video-webrtc-storage-1.34.0.tar.gz", hash = "sha256:3a2eabfc0c5e3c1d339d43e0ddf6f6daa64b0d2e02a256b956fb37f116a29677"}, + {file = "mypy_boto3_kinesis_video_webrtc_storage-1.34.0-py3-none-any.whl", hash = "sha256:32888b69852a551775b7bf428158cc19e95eb6721f3654207aff7699a7079eb6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesisanalytics" +version = "1.34.0" +description = "Type annotations for boto3.KinesisAnalytics 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-kinesisanalytics-1.34.0.tar.gz", hash = "sha256:784a129b03136bf86c6ca6ee2aecc066fe231e58c62aaddbe51c3b2b63e0739d"}, + {file = "mypy_boto3_kinesisanalytics-1.34.0-py3-none-any.whl", hash = "sha256:af8f3abde654cf30c64b3f547ea7841d3da2c3836b3bf2f3a6fab2d50251fa1e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesisanalyticsv2" +version = "1.34.136" +description = "Type annotations for boto3.KinesisAnalyticsV2 1.34.136 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_kinesisanalyticsv2-1.34.136-py3-none-any.whl", hash = "sha256:4f5a376568e3cfac0942dd29e3c60ee56298a2871e6aa7bdd58520a6e11fa26c"}, + {file = "mypy_boto3_kinesisanalyticsv2-1.34.136.tar.gz", hash = "sha256:9eeed08182b2fdb92c6f2474e685dfb50a0607c37812d8437c27c1c032926e90"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kinesisvideo" +version = "1.34.48" +description = "Type annotations for boto3.KinesisVideo 1.34.48 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-kinesisvideo-1.34.48.tar.gz", hash = "sha256:b984a4c0eb98285dc1fac8f92166c32fbf3d5ee7b6c8d63d835e23ff66fa93ac"}, + {file = "mypy_boto3_kinesisvideo-1.34.48-py3-none-any.whl", hash = "sha256:1ec631ff857f2a322d94f4cfd8d10976e5cded359b7438b614a99d7f2a6cc600"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-kms" +version = "1.34.126" +description = "Type annotations for boto3.KMS 1.34.126 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_kms-1.34.126-py3-none-any.whl", hash = "sha256:d6ac6dc98825a5c6ab3508cc2b851e5e471c0318f7cbb4c228b0318693214dbc"}, + {file = "mypy_boto3_kms-1.34.126.tar.gz", hash = "sha256:67adca178ef680c6dd260818ec28e79d5c5b56c9d405911d365c54c7a5174832"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lakeformation" +version = "1.34.108" +description = "Type annotations for boto3.LakeFormation 1.34.108 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_lakeformation-1.34.108-py3-none-any.whl", hash = "sha256:fd6c95255d0c688eb337c0cbb96749fc0859a67802e9190251b17a4ef7967f0c"}, + {file = "mypy_boto3_lakeformation-1.34.108.tar.gz", hash = "sha256:6c8d4aa39157bfa2365d081be8746714521caf6192ce81a098be843d319eb95e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lambda" +version = "1.34.77" +description = "Type annotations for boto3.Lambda 1.34.77 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-lambda-1.34.77.tar.gz", hash = "sha256:7b81d2a5604fb592e92fe0b284ecd259de071703360a33b71c9b54df46d81c9c"}, + {file = "mypy_boto3_lambda-1.34.77-py3-none-any.whl", hash = "sha256:e21022d2eef12aa731af80790410afdba9412b056339823252813bae2adbf553"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-launch-wizard" +version = "1.34.117" +description = "Type annotations for boto3.LaunchWizard 1.34.117 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_launch_wizard-1.34.117-py3-none-any.whl", hash = "sha256:ecf6e229162c190f7302b2ee89b02dc88f351bcb75279f4e2047ef463ef2c0af"}, + {file = "mypy_boto3_launch_wizard-1.34.117.tar.gz", hash = "sha256:6a190b2c3c9b6b4b6b6401a7f70e6c27e21311783efb8a117b812c667644a893"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lex-models" +version = "1.34.0" +description = "Type annotations for boto3.LexModelBuildingService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-lex-models-1.34.0.tar.gz", hash = "sha256:2e40f70828c9606c2549844fd2678950211d55218675246b2fdb81b62997e065"}, + {file = "mypy_boto3_lex_models-1.34.0-py3-none-any.whl", hash = "sha256:5a6e94b9b70c46f42efe6d6cca42fffadfbc7e0e357da4e6e64d42d5e350abfb"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lex-runtime" +version = "1.34.0" +description = "Type annotations for boto3.LexRuntimeService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-lex-runtime-1.34.0.tar.gz", hash = "sha256:a05512b1f4fb4571d1015514934d7896a3f294f6be4d9bb236ebc7462c48c6df"}, + {file = "mypy_boto3_lex_runtime-1.34.0-py3-none-any.whl", hash = "sha256:1c553793e5e2748f60a06dfafb2b72cf25ff4914152594ba38c468d1d5a1020a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lexv2-models" +version = "1.34.53" +description = "Type annotations for boto3.LexModelsV2 1.34.53 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-lexv2-models-1.34.53.tar.gz", hash = "sha256:c5eb8b63eacca2ab4973be697f603f0d872c1bceaaaac2033b6db9408c23943c"}, + {file = "mypy_boto3_lexv2_models-1.34.53-py3-none-any.whl", hash = "sha256:643fa1b18399618acaf9bf411beed07e3ab45d8c7d237a60f2fee541ac11a11d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lexv2-runtime" +version = "1.34.0" +description = "Type annotations for boto3.LexRuntimeV2 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-lexv2-runtime-1.34.0.tar.gz", hash = "sha256:5753a451cc05629f13552d804858c044952b20a031ffdcdc7d06d0327814e547"}, + {file = "mypy_boto3_lexv2_runtime-1.34.0-py3-none-any.whl", hash = "sha256:02f8f91336ed96f2a1520ae66b36e97d489572588ea16c50db5a4394d344aa36"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-license-manager" +version = "1.34.0" +description = "Type annotations for boto3.LicenseManager 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-license-manager-1.34.0.tar.gz", hash = "sha256:f771baabc50843fe95b6b78b3924d09bdf6d16fb16f75eedd1481f2a4a7492ab"}, + {file = "mypy_boto3_license_manager-1.34.0-py3-none-any.whl", hash = "sha256:98ccbce09f7c8cf612e9cd4fd00a8b762e1ad174296f2cbaa61f95e61b49f462"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-license-manager-linux-subscriptions" +version = "1.34.143" +description = "Type annotations for boto3.LicenseManagerLinuxSubscriptions 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_license_manager_linux_subscriptions-1.34.143-py3-none-any.whl", hash = "sha256:5ff6443e8b21e1bd8bf78fc26497dd3887f6449e321ab92d481efeed77e523d5"}, + {file = "mypy_boto3_license_manager_linux_subscriptions-1.34.143.tar.gz", hash = "sha256:f088eb4fc246bc8bcdf55d77fa27d7f30dad1630d878679e8805b52156907189"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-license-manager-user-subscriptions" +version = "1.34.0" +description = "Type annotations for boto3.LicenseManagerUserSubscriptions 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-license-manager-user-subscriptions-1.34.0.tar.gz", hash = "sha256:3d1faefa2e7348715337af86b8e71605c38dd44d9234005b3dabc1c97cf7ba71"}, + {file = "mypy_boto3_license_manager_user_subscriptions-1.34.0-py3-none-any.whl", hash = "sha256:af865051da400adc3c412fb6d9f94b224d508937d60232af382b72f81e3f1f12"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lightsail" +version = "1.34.129" +description = "Type annotations for boto3.Lightsail 1.34.129 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_lightsail-1.34.129-py3-none-any.whl", hash = "sha256:e997f20b2d02d7f30eaff1440e8dd0c1173d18bd81dbd764aebb77a2067ea484"}, + {file = "mypy_boto3_lightsail-1.34.129.tar.gz", hash = "sha256:75fe20ace26919e0406b1349c398d2986133c04eff5cd0a76d5495d01d4a54b5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-location" +version = "1.34.121" +description = "Type annotations for boto3.LocationService 1.34.121 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_location-1.34.121-py3-none-any.whl", hash = "sha256:395daa91bc891eb6c64c075b86b771235a91754a99b6782e53bd9c614533fe72"}, + {file = "mypy_boto3_location-1.34.121.tar.gz", hash = "sha256:5e47cfe48d125b26444f3e9cbea8cefe9e32bd29307fcdf971a6dc532295a35e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-logs" +version = "1.34.66" +description = "Type annotations for boto3.CloudWatchLogs 1.34.66 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-logs-1.34.66.tar.gz", hash = "sha256:cf5fac4801dd92f05007fb1b4444ff98258544d1f21e64e9228e34188046f841"}, + {file = "mypy_boto3_logs-1.34.66-py3-none-any.whl", hash = "sha256:53c4988f655e21d2834dadcc600f3c182f34924c37d7a25bbd1b10857acb8b18"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lookoutequipment" +version = "1.34.47" +description = "Type annotations for boto3.LookoutEquipment 1.34.47 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-lookoutequipment-1.34.47.tar.gz", hash = "sha256:33b35aa111f1947e7fce4b8c9ce96b728d8108f5c4aeffcded3015c2fda866e0"}, + {file = "mypy_boto3_lookoutequipment-1.34.47-py3-none-any.whl", hash = "sha256:8cb63a05378fa13c162885c8ec83e0f7def2c325fd122e76a63a9dc858505695"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lookoutmetrics" +version = "1.34.0" +description = "Type annotations for boto3.LookoutMetrics 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-lookoutmetrics-1.34.0.tar.gz", hash = "sha256:d9244151df1f67b8b619b0e005625c612d056ebfd4eb9526acb6c7c79ec86790"}, + {file = "mypy_boto3_lookoutmetrics-1.34.0-py3-none-any.whl", hash = "sha256:290d81ea7b577244344e56a495ea4134941960b1c4e1cfae2ed6991c6e872c2f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-lookoutvision" +version = "1.34.0" +description = "Type annotations for boto3.LookoutforVision 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-lookoutvision-1.34.0.tar.gz", hash = "sha256:fb397d26619e974ae49867986873250487cf41f1dd2503a4fac1bf9ee1e7cc3d"}, + {file = "mypy_boto3_lookoutvision-1.34.0-py3-none-any.whl", hash = "sha256:11ad04ba1d3993eb5fa405ded148db5405812ab2b925daa5858d51355d372558"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-m2" +version = "1.34.85" +description = "Type annotations for boto3.MainframeModernization 1.34.85 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_m2-1.34.85-py3-none-any.whl", hash = "sha256:98aad072a6cf6873316acdb972fc54c5089612b745024daadaff90fb87aada1f"}, + {file = "mypy_boto3_m2-1.34.85.tar.gz", hash = "sha256:4f9f971243843c33b7af1e6371b458e9208c13d8ea8e5a0287a3b25ffcc883a1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-machinelearning" +version = "1.34.0" +description = "Type annotations for boto3.MachineLearning 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-machinelearning-1.34.0.tar.gz", hash = "sha256:0de881bb73d031a81e1149557631ffd6e10bb0fc28e085616330e524506884a8"}, + {file = "mypy_boto3_machinelearning-1.34.0-py3-none-any.whl", hash = "sha256:c68e747059e997f5ccf44f27f51ef49dd5e74e4f5a966d333eda9db089086ae5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-macie2" +version = "1.34.127" +description = "Type annotations for boto3.Macie2 1.34.127 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_macie2-1.34.127-py3-none-any.whl", hash = "sha256:aba7e4b00d50ca126fc61d5301e6e82f10b34073ec2564251aa55ffa5debd8a1"}, + {file = "mypy_boto3_macie2-1.34.127.tar.gz", hash = "sha256:4228f99b5570d2c36705f087c1249940612b0abc0c0ef5bca694cf4359599637"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mailmanager" +version = "1.34.110" +description = "Type annotations for boto3.MailManager 1.34.110 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mailmanager-1.34.110-py3-none-any.whl", hash = "sha256:0629f6a38f2f84de539a99f66ced4bfdf1747829da528f4038158aa015422f08"}, + {file = "mypy_boto3_mailmanager-1.34.110.tar.gz", hash = "sha256:bef4b9c9e20d0e9be7cb8d3db40d2a0ec0de9a5c40e0293c75db604c6e020391"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-managedblockchain" +version = "1.34.113" +description = "Type annotations for boto3.ManagedBlockchain 1.34.113 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_managedblockchain-1.34.113-py3-none-any.whl", hash = "sha256:9cc3b8003e4a7666c680b84b59d172b390cedf8cdae0a48d7179f49f75bb0ca8"}, + {file = "mypy_boto3_managedblockchain-1.34.113.tar.gz", hash = "sha256:d8d7074101f4753b6c18d504bcdd3739a042c22a453a47e25ff5a56d548331c4"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-managedblockchain-query" +version = "1.34.67" +description = "Type annotations for boto3.ManagedBlockchainQuery 1.34.67 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-managedblockchain-query-1.34.67.tar.gz", hash = "sha256:73606800aa60bab29a34e4e497772a7375f50a269055f40be64bd0577fd62f0c"}, + {file = "mypy_boto3_managedblockchain_query-1.34.67-py3-none-any.whl", hash = "sha256:d27ee00d318990f20ec896c04f75f8f82506215e664544613bc0ba2a5c4d6cad"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-marketplace-agreement" +version = "1.34.0" +description = "Type annotations for boto3.AgreementService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-marketplace-agreement-1.34.0.tar.gz", hash = "sha256:80e7ceb5cddc0f851d3e3a31a4d689407f012dbd3391b5cbcf8690f02f03227a"}, + {file = "mypy_boto3_marketplace_agreement-1.34.0-py3-none-any.whl", hash = "sha256:969267665fec35938820bc71360b1fce09cab7d7b30113bd80879f9e6f88ea62"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-marketplace-catalog" +version = "1.34.74" +description = "Type annotations for boto3.MarketplaceCatalog 1.34.74 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-marketplace-catalog-1.34.74.tar.gz", hash = "sha256:f9e849320cc4b74474b15d482f8fde10496d1087050eaaf81b3793ada69b5bdd"}, + {file = "mypy_boto3_marketplace_catalog-1.34.74-py3-none-any.whl", hash = "sha256:66a8bbc2e39e10ef00afca20435c64911c16fd4118206763ad578646fb7d233d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-marketplace-deployment" +version = "1.34.0" +description = "Type annotations for boto3.MarketplaceDeploymentService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-marketplace-deployment-1.34.0.tar.gz", hash = "sha256:20a2bc7bf6c3438f07795ab0cd3ecfe305bef9d41a621850902f475f53626daf"}, + {file = "mypy_boto3_marketplace_deployment-1.34.0-py3-none-any.whl", hash = "sha256:de794e0d1439189c96a032b5c99b6169159a25efd71dd03a40ed7078409d3c48"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-marketplace-entitlement" +version = "1.34.93" +description = "Type annotations for boto3.MarketplaceEntitlementService 1.34.93 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_marketplace_entitlement-1.34.93-py3-none-any.whl", hash = "sha256:791e452ffca5ef73f748b9c2753b9819eb00ad169b6994d703916105d991f961"}, + {file = "mypy_boto3_marketplace_entitlement-1.34.93.tar.gz", hash = "sha256:136bf8b30d61418090ff610310b9d5013ea3084cd2fad93b858464aece9c0707"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-marketplacecommerceanalytics" +version = "1.34.0" +description = "Type annotations for boto3.MarketplaceCommerceAnalytics 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-marketplacecommerceanalytics-1.34.0.tar.gz", hash = "sha256:1b399de06427336b11acbe3f144f6423447d22d289e7175a0bf7021aa4345c06"}, + {file = "mypy_boto3_marketplacecommerceanalytics-1.34.0-py3-none-any.whl", hash = "sha256:4cfa18be5934de7eb799a424a001c209376b8ffe7acfb0d17b8765b9a8c8db75"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediaconnect" +version = "1.34.143" +description = "Type annotations for boto3.MediaConnect 1.34.143 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mediaconnect-1.34.143-py3-none-any.whl", hash = "sha256:484cda22480663f8da19236ce9b1ca0091fbaf3757776cdd4c31629abe173699"}, + {file = "mypy_boto3_mediaconnect-1.34.143.tar.gz", hash = "sha256:d1cd026befe95c5f28ba17ee9732192eb396fc9e7b2bc3e7c9b6d979e9c47078"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediaconvert" +version = "1.34.128" +description = "Type annotations for boto3.MediaConvert 1.34.128 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mediaconvert-1.34.128-py3-none-any.whl", hash = "sha256:f772344081594d06ccd4820d80a4a6bbd7cc72fe3d0aeaae5e630ef67a1a12d6"}, + {file = "mypy_boto3_mediaconvert-1.34.128.tar.gz", hash = "sha256:265c2b3bee3850153b500f88a034a0719805d9c42d5327c1d618db61cd073e15"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-medialive" +version = "1.34.145" +description = "Type annotations for boto3.MediaLive 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_medialive-1.34.145-py3-none-any.whl", hash = "sha256:5e6f2038b2f5ca072e684098573b849641963ced812db2a8957c7c7cb52967b6"}, + {file = "mypy_boto3_medialive-1.34.145.tar.gz", hash = "sha256:f9cdcd72d9ae70f1170ff56a7971a9613f938f3a25c1d98d92707c251aa5d8c8"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediapackage" +version = "1.34.0" +description = "Type annotations for boto3.MediaPackage 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-mediapackage-1.34.0.tar.gz", hash = "sha256:e03276cd5934b1ab66567f9365d0c4c71ffe0a52697356dd99bbe5ef62687b95"}, + {file = "mypy_boto3_mediapackage-1.34.0-py3-none-any.whl", hash = "sha256:271d63581abe9472369635e47a0237cfd35757451d86e6e4fc07c6304c335806"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediapackage-vod" +version = "1.34.0" +description = "Type annotations for boto3.MediaPackageVod 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-mediapackage-vod-1.34.0.tar.gz", hash = "sha256:5f019cdfe583f28fcc51f701a1c979d933cafd18620a311bdaa0ea72e63007e8"}, + {file = "mypy_boto3_mediapackage_vod-1.34.0-py3-none-any.whl", hash = "sha256:d96129c735825cd292e5fff40d0fc6a8bb02cbe215767eadede589db57dd3bca"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediapackagev2" +version = "1.34.148" +description = "Type annotations for boto3.Mediapackagev2 1.34.148 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mediapackagev2-1.34.148-py3-none-any.whl", hash = "sha256:59467c052d896221d8917b0f2f645f3e51e3539debb4ab93b6c9e240560410f6"}, + {file = "mypy_boto3_mediapackagev2-1.34.148.tar.gz", hash = "sha256:808e22a2858ed029e0d6f63450602bb05ab39852dc46520d3327c4f9198cd8fd"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediastore" +version = "1.34.0" +description = "Type annotations for boto3.MediaStore 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-mediastore-1.34.0.tar.gz", hash = "sha256:bf61b6c035c627031a9589c74d11af7514d4bf8d5b9bc69d20e8fdb60415d32b"}, + {file = "mypy_boto3_mediastore-1.34.0-py3-none-any.whl", hash = "sha256:d5a2f10fb2485928bd99ee05e597b246b0946c93ee3117bf899bb526fa22a34e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediastore-data" +version = "1.34.0" +description = "Type annotations for boto3.MediaStoreData 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-mediastore-data-1.34.0.tar.gz", hash = "sha256:6d894a90187b2aae0fb13a07438f8ae41de1f3e230c92fbb9e0109e4000b06eb"}, + {file = "mypy_boto3_mediastore_data-1.34.0-py3-none-any.whl", hash = "sha256:91561c3fc431ff98f21716a4883dd3be51af17f1c2e6f7c89949660103dde848"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mediatailor" +version = "1.34.84" +description = "Type annotations for boto3.MediaTailor 1.34.84 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mediatailor-1.34.84-py3-none-any.whl", hash = "sha256:e418a0c3dca5b0086c984b96ef4219ee3cbda0d69f0eac9d099d45e4e5cf3c64"}, + {file = "mypy_boto3_mediatailor-1.34.84.tar.gz", hash = "sha256:594630d5d8808a3288bcc3a9411ce506b80c6518b849288a9677eb6a57fbc6b0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-medical-imaging" +version = "1.34.148" +description = "Type annotations for boto3.HealthImaging 1.34.148 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_medical_imaging-1.34.148-py3-none-any.whl", hash = "sha256:564e5e6d2db5685759a769b3ade8e9097e92f8fa8499565b8ca35dae48f9a784"}, + {file = "mypy_boto3_medical_imaging-1.34.148.tar.gz", hash = "sha256:e07a7101148ca0f40b100b40e2cdd64f1564a968cf4f33784eafdd9188dfebf8"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-memorydb" +version = "1.34.0" +description = "Type annotations for boto3.MemoryDB 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-memorydb-1.34.0.tar.gz", hash = "sha256:6ead8542c619ffbc62da8e1c75a72f6b9d741630d17db3513b622b034a31b408"}, + {file = "mypy_boto3_memorydb-1.34.0-py3-none-any.whl", hash = "sha256:e621dc2e3ba303b68c2ce276f3cf91819c6a4f311fef51fa353f9584a5fb991b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-meteringmarketplace" +version = "1.34.0" +description = "Type annotations for boto3.MarketplaceMetering 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-meteringmarketplace-1.34.0.tar.gz", hash = "sha256:d6e9f897e5d70c07a7d0d4b5950d9ed573b251aa0e8edfa7f0053456f1a54cfd"}, + {file = "mypy_boto3_meteringmarketplace-1.34.0-py3-none-any.whl", hash = "sha256:5c5e0a35d9dce618a20edc0507821221f6c89f2a86082c5e94a381669cbd8853"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mgh" +version = "1.34.0" +description = "Type annotations for boto3.MigrationHub 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-mgh-1.34.0.tar.gz", hash = "sha256:b7203ecb0823751908536bdb6700ac41f58861cb70fe42e32064c4019b9ff285"}, + {file = "mypy_boto3_mgh-1.34.0-py3-none-any.whl", hash = "sha256:a5ae346655b49989aef31bf3caf7a26d31885f57a6a20a789f3b9a555a2b5fe2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mgn" +version = "1.34.80" +description = "Type annotations for boto3.mgn 1.34.80 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-mgn-1.34.80.tar.gz", hash = "sha256:78b7c01e486a954f472ba6cb7c114e67e533148d6afef24b166c5070144936df"}, + {file = "mypy_boto3_mgn-1.34.80-py3-none-any.whl", hash = "sha256:be8d86cca0abbaeb2a2b5a33d0c79f74ba3d1c5ed59a647097c67abb7daf1bdc"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-migration-hub-refactor-spaces" +version = "1.34.0" +description = "Type annotations for boto3.MigrationHubRefactorSpaces 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-migration-hub-refactor-spaces-1.34.0.tar.gz", hash = "sha256:4f7eecfee6f0b94d73b0a93c0e64c5ba6e8c977f96359089faaf13e85ef98946"}, + {file = "mypy_boto3_migration_hub_refactor_spaces-1.34.0-py3-none-any.whl", hash = "sha256:6ac5069d08622f6f14eed2053b1b4ca97cbf43f9c730f4b1c28f737356af9d48"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-migrationhub-config" +version = "1.34.0" +description = "Type annotations for boto3.MigrationHubConfig 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-migrationhub-config-1.34.0.tar.gz", hash = "sha256:7deaa252316bc18680c91875319f7a5482de11afd6073532b6c9d1c5764cc684"}, + {file = "mypy_boto3_migrationhub_config-1.34.0-py3-none-any.whl", hash = "sha256:ec274eddfae55725452a4ef1e586c645bbf793b637606452f00365b3dd3e3e80"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-migrationhuborchestrator" +version = "1.34.53" +description = "Type annotations for boto3.MigrationHubOrchestrator 1.34.53 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-migrationhuborchestrator-1.34.53.tar.gz", hash = "sha256:92b794f1b959eb511a2a6289a59d7b892eb11548a0e45acc9ceb39ff52539f8b"}, + {file = "mypy_boto3_migrationhuborchestrator-1.34.53-py3-none-any.whl", hash = "sha256:22268da9b4ae9f6bad599ddd4a8df7d5755e7d767eb57020d02275bd2d299bd9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-migrationhubstrategy" +version = "1.34.0" +description = "Type annotations for boto3.MigrationHubStrategyRecommendations 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-migrationhubstrategy-1.34.0.tar.gz", hash = "sha256:37f35c9d7175e1202cf45d59c1463173fe64a7b8945881498ac51f671312b4b5"}, + {file = "mypy_boto3_migrationhubstrategy-1.34.0-py3-none-any.whl", hash = "sha256:5105b7e58b7d6b1421236d124f7000d0de2f10d417b3db37e189b10171f1c8e7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mq" +version = "1.34.135" +description = "Type annotations for boto3.MQ 1.34.135 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mq-1.34.135-py3-none-any.whl", hash = "sha256:4f8f0305ed56a4d6f7ddad353025698506294964329d206f912e216c82023869"}, + {file = "mypy_boto3_mq-1.34.135.tar.gz", hash = "sha256:d7b8455cfc9e0a9f031b738d9454ce4edbe92f3c6f7e284b7bd5a1c0b7eb85aa"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mturk" +version = "1.34.0" +description = "Type annotations for boto3.MTurk 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-mturk-1.34.0.tar.gz", hash = "sha256:aa1c9577ef4a21a2f88718e30e7c3ba9dc8975c4fa0290b18684e080e543afcd"}, + {file = "mypy_boto3_mturk-1.34.0-py3-none-any.whl", hash = "sha256:9c34dca3014668354fc43058e2e6c137ea3d27f04e52632b71fa0efa786a30c1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-mwaa" +version = "1.34.107" +description = "Type annotations for boto3.MWAA 1.34.107 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_mwaa-1.34.107-py3-none-any.whl", hash = "sha256:215529ff7afa86e4a8d78efc4330359b4edd133646d4d92747d4b4e76fc6c201"}, + {file = "mypy_boto3_mwaa-1.34.107.tar.gz", hash = "sha256:3276129588d8934a01b83a6f41e4f36d8905390616d388662145473eb2726fe5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-neptune" +version = "1.34.0" +description = "Type annotations for boto3.Neptune 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-neptune-1.34.0.tar.gz", hash = "sha256:a0c4ba7b570f7ce66187ea1b84e6533239b049c133c0206dbe68eda4f22396d0"}, + {file = "mypy_boto3_neptune-1.34.0-py3-none-any.whl", hash = "sha256:9635e98c436ef5973f26b8c8859517cf83de38066f977dba534daeadd9be8d27"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-neptune-graph" +version = "1.34.146" +description = "Type annotations for boto3.NeptuneGraph 1.34.146 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_neptune_graph-1.34.146-py3-none-any.whl", hash = "sha256:e05d4c4791256c284ef5a457d501956c553127be366cdf5a8d82e5a6bfdd00c1"}, + {file = "mypy_boto3_neptune_graph-1.34.146.tar.gz", hash = "sha256:161b64b5b20e526e1d9f03ba855c57ae007c42f841ea177d2ffc6439f45d6fb7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-neptunedata" +version = "1.34.0" +description = "Type annotations for boto3.NeptuneData 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-neptunedata-1.34.0.tar.gz", hash = "sha256:64a4da4ae2cdb715323f5996daaf1117c8ef5ca49f1321d97c9a7bef146a6d97"}, + {file = "mypy_boto3_neptunedata-1.34.0-py3-none-any.whl", hash = "sha256:5207fcc4fef0b84290a3c7bd5afebf1ad2627dd85a20b64be367c8aef81b7088"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-network-firewall" +version = "1.34.149" +description = "Type annotations for boto3.NetworkFirewall 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_network_firewall-1.34.149-py3-none-any.whl", hash = "sha256:c993c4f00d14020fe56f5f4d90418190e4eb1342b3351ea2f10952d8f059422c"}, + {file = "mypy_boto3_network_firewall-1.34.149.tar.gz", hash = "sha256:48c2a9ee5aa486d6d5e65dee1fb8d6efaec71e04c942d3dd6c49cc303f491a6e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-networkmanager" +version = "1.34.133" +description = "Type annotations for boto3.NetworkManager 1.34.133 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_networkmanager-1.34.133-py3-none-any.whl", hash = "sha256:ee1e6cc464bb36e947a114316f6df955b626a6dba8f7bc7c4f6b2c8bdb3f6b5e"}, + {file = "mypy_boto3_networkmanager-1.34.133.tar.gz", hash = "sha256:aee2e1bac77cfcf19c9380806b64428313c58d02d266a61408be40b9c3913f5c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-networkmonitor" +version = "1.34.82" +description = "Type annotations for boto3.CloudWatchNetworkMonitor 1.34.82 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-networkmonitor-1.34.82.tar.gz", hash = "sha256:dfc78f267062fecb9ad1b35b84c6e47a82dd401d52f99b6c546832cb4168f5be"}, + {file = "mypy_boto3_networkmonitor-1.34.82-py3-none-any.whl", hash = "sha256:08e204f7be3596d785f5ff81d92ccbd3e5d5aa88cec7c21426ec8be31eb01475"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-nimble" +version = "1.34.0" +description = "Type annotations for boto3.NimbleStudio 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-nimble-1.34.0.tar.gz", hash = "sha256:8b413d90bba70d197e5f35374e2defc6a1cd6b6a061d043dc438c2b4d2a2d4bc"}, + {file = "mypy_boto3_nimble-1.34.0-py3-none-any.whl", hash = "sha256:e7906902b46cff8354f5777922a8484a33db891eb3c9fcf9be16c0b3693e06ca"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-oam" +version = "1.34.93" +description = "Type annotations for boto3.CloudWatchObservabilityAccessManager 1.34.93 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_oam-1.34.93-py3-none-any.whl", hash = "sha256:38489181ad98986da8bf577e8149d306f31e8df51dbbbd4de66fd8c57df20313"}, + {file = "mypy_boto3_oam-1.34.93.tar.gz", hash = "sha256:4dece6b590b11d5064879588abd5fb3be0d2633c10cac87ece20c0ce5ca76802"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-omics" +version = "1.34.95" +description = "Type annotations for boto3.Omics 1.34.95 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_omics-1.34.95-py3-none-any.whl", hash = "sha256:5fa74ec5bed2fc8eeeb21fe0206c969a5f85e1bfd4d099426cec18b7de49ab46"}, + {file = "mypy_boto3_omics-1.34.95.tar.gz", hash = "sha256:5a7a697a52fa32cd3b94e244d99ff4deb828484c3c5fe4de1e81124a5a1909a6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-opensearch" +version = "1.34.142" +description = "Type annotations for boto3.OpenSearchService 1.34.142 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_opensearch-1.34.142-py3-none-any.whl", hash = "sha256:3da8974acecee397691aa786b624f4167bc7e7243c4316c6c64bf7a1676f65a1"}, + {file = "mypy_boto3_opensearch-1.34.142.tar.gz", hash = "sha256:0064f620dd2acb76f3f3dc3e59c081edc760df4bc32b1796ff713233fd404bb0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-opensearchserverless" +version = "1.34.0" +description = "Type annotations for boto3.OpenSearchServiceServerless 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-opensearchserverless-1.34.0.tar.gz", hash = "sha256:6296d05a75485cca93ce2796c9ae0c885cfd1e93796184929818d4be63b454ca"}, + {file = "mypy_boto3_opensearchserverless-1.34.0-py3-none-any.whl", hash = "sha256:1a446b70d053ca2b3c07a960b825da057d075f4b5b66caa9e045037cc7bb37c7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-opsworks" +version = "1.34.112" +description = "Type annotations for boto3.OpsWorks 1.34.112 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_opsworks-1.34.112-py3-none-any.whl", hash = "sha256:8ee12f472eba153982d5d0ad38d0510ef88e28462c126823ca463a0855fe6dc2"}, + {file = "mypy_boto3_opsworks-1.34.112.tar.gz", hash = "sha256:b6e2d1d68a45ddf8037d5da8d383d64a030898f7834e47a495c362ba8a8a1162"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-opsworkscm" +version = "1.34.0" +description = "Type annotations for boto3.OpsWorksCM 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-opsworkscm-1.34.0.tar.gz", hash = "sha256:1ec517c1b5d13e611a4898ece047b3487ba0b2c2ed3f683f36f688d029c64ad0"}, + {file = "mypy_boto3_opsworkscm-1.34.0-py3-none-any.whl", hash = "sha256:dd8178b4cf6a59dc6b82908c974447e9fe3deea9446e209b2e1f563ee861c9b1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-organizations" +version = "1.34.139" +description = "Type annotations for boto3.Organizations 1.34.139 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_organizations-1.34.139-py3-none-any.whl", hash = "sha256:06fd26f02e8e918852ab681558215e607873749966759b5f58df1ff2e9a45392"}, + {file = "mypy_boto3_organizations-1.34.139.tar.gz", hash = "sha256:6b42f6ee20ef44ecec1b9ccd66c122dff43f43e60815e4c810a23e00fc08ead7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-osis" +version = "1.34.125" +description = "Type annotations for boto3.OpenSearchIngestion 1.34.125 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_osis-1.34.125-py3-none-any.whl", hash = "sha256:e9368a38ffc8123d306a1a9532cf359ab0357a0933ba3ccc077644122724ee5b"}, + {file = "mypy_boto3_osis-1.34.125.tar.gz", hash = "sha256:b32337fc8c126fa84c8e4d276e965f2319aca9014428ed58a5d314c8fb8c6606"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-outposts" +version = "1.34.149" +description = "Type annotations for boto3.Outposts 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_outposts-1.34.149-py3-none-any.whl", hash = "sha256:80ce632f14d0150de5a8c97f4ee13c07943ef0cb1c00efc9ab460d1540fbf988"}, + {file = "mypy_boto3_outposts-1.34.149.tar.gz", hash = "sha256:a4f1c001df7eb9e6d449b981b58f72b0535e7c2e56923e8d5718bed61e8d59ad"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-panorama" +version = "1.34.0" +description = "Type annotations for boto3.Panorama 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-panorama-1.34.0.tar.gz", hash = "sha256:3f0d324606b06394c2d0e2207189b32b728442eb3245fddca138697872f85f7d"}, + {file = "mypy_boto3_panorama-1.34.0-py3-none-any.whl", hash = "sha256:e738087c191456a21d71af1818a14e91ee9a9872616669b5091532986eddb80e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-payment-cryptography" +version = "1.34.137" +description = "Type annotations for boto3.PaymentCryptographyControlPlane 1.34.137 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_payment_cryptography-1.34.137-py3-none-any.whl", hash = "sha256:e00fd5df073f5f6a6fc8f38688235073641a39e2a678cf80d0c9f1450f70ea00"}, + {file = "mypy_boto3_payment_cryptography-1.34.137.tar.gz", hash = "sha256:eac0bf994c58be0e6a8cfafdf335256ab9c1df57bae4a8d9fa664e62380f631a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-payment-cryptography-data" +version = "1.34.140" +description = "Type annotations for boto3.PaymentCryptographyDataPlane 1.34.140 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_payment_cryptography_data-1.34.140-py3-none-any.whl", hash = "sha256:fcfcabeb0024c3d3e8a1bbe424046eaa9f927343cae10a2d4a3cbb016f7f0a81"}, + {file = "mypy_boto3_payment_cryptography_data-1.34.140.tar.gz", hash = "sha256:f80376d4f6f2fbec7150b0f9fa8f84bbe1e5f390a078d85d5a256c12d8e4e017"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pca-connector-ad" +version = "1.34.0" +description = "Type annotations for boto3.PcaConnectorAd 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-pca-connector-ad-1.34.0.tar.gz", hash = "sha256:a5219564f2ee8fcc5c49f2ea6bec6f7f850bfe5d976f9b78dcab9795309fb247"}, + {file = "mypy_boto3_pca_connector_ad-1.34.0-py3-none-any.whl", hash = "sha256:249d9d24c58697c7985e70d404b4a6740d7838e460c5ea819534d664994d8d7d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pca-connector-scep" +version = "1.34.124" +description = "Type annotations for boto3.PrivateCAConnectorforSCEP 1.34.124 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_pca_connector_scep-1.34.124-py3-none-any.whl", hash = "sha256:e4bd0ed4e6789e200a1e41af86800b488e6540cfcd31122376d4d0831186f929"}, + {file = "mypy_boto3_pca_connector_scep-1.34.124.tar.gz", hash = "sha256:db9446bc6b015928d6f1c3c7c2ddaf2252e9b51b6c992def2de2cde6d950a10a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-personalize" +version = "1.34.97" +description = "Type annotations for boto3.Personalize 1.34.97 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_personalize-1.34.97-py3-none-any.whl", hash = "sha256:afd03d7be8f73def46cbe75ab023845a9f43a961dd28486f439b3b13b0903f86"}, + {file = "mypy_boto3_personalize-1.34.97.tar.gz", hash = "sha256:a980b3e3dc1da9511d47b068d990f045d6d94dd0db3e7fbae4a66e31cfb151e0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-personalize-events" +version = "1.34.0" +description = "Type annotations for boto3.PersonalizeEvents 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-personalize-events-1.34.0.tar.gz", hash = "sha256:76496db6f96ce489fe77db9638dc6685f48e3f54d07fee15316e7a2632880abe"}, + {file = "mypy_boto3_personalize_events-1.34.0-py3-none-any.whl", hash = "sha256:30f74b8fed31d3cd467a58f4cb0928a6fbf71791db20c4c0bf578d4577ceedea"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-personalize-runtime" +version = "1.34.96" +description = "Type annotations for boto3.PersonalizeRuntime 1.34.96 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_personalize_runtime-1.34.96-py3-none-any.whl", hash = "sha256:4ec130d943f5e0101ef0716d24ab5020ff4afb4b5c56494c2699be4d4d0f8477"}, + {file = "mypy_boto3_personalize_runtime-1.34.96.tar.gz", hash = "sha256:a30eac2191ce57787b587017fa297de593c1fc28e4d9b2022e37fe0471d0ce86"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pi" +version = "1.34.136" +description = "Type annotations for boto3.PI 1.34.136 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_pi-1.34.136-py3-none-any.whl", hash = "sha256:a3d04175ba582e1912c87332a6973d54a3b3c5229d8440d644c6d032ef9cf516"}, + {file = "mypy_boto3_pi-1.34.136.tar.gz", hash = "sha256:a0a78d7165fbc7b33a5715cf9c651600a700d0c53df7769a8f28b7caf12b5356"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pinpoint" +version = "1.34.144" +description = "Type annotations for boto3.Pinpoint 1.34.144 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_pinpoint-1.34.144-py3-none-any.whl", hash = "sha256:d9a6477e79ae1c73a6054bf8f4567d3d18b138a8e34b060a42e220e76b68f45d"}, + {file = "mypy_boto3_pinpoint-1.34.144.tar.gz", hash = "sha256:8123f4b36bf217dd083a6e20eb172bfcc160de29f71c2690c89908713af404b1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pinpoint-email" +version = "1.34.0" +description = "Type annotations for boto3.PinpointEmail 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-pinpoint-email-1.34.0.tar.gz", hash = "sha256:007c09b58b00c458845f5e8bd07657cfd2738cd65c93d578d1b170ce270c2941"}, + {file = "mypy_boto3_pinpoint_email-1.34.0-py3-none-any.whl", hash = "sha256:1050f261ccab3ea77005fb3334feb8d8ab1e8e702b733e5a8ea38f942baf6210"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pinpoint-sms-voice" +version = "1.34.0" +description = "Type annotations for boto3.PinpointSMSVoice 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-pinpoint-sms-voice-1.34.0.tar.gz", hash = "sha256:a0385e9bdeeaf50a6c40dcbdcc27d6382d5c1eea77a6f2df942955c5e58406ec"}, + {file = "mypy_boto3_pinpoint_sms_voice-1.34.0-py3-none-any.whl", hash = "sha256:29852612f53a4600496de3a12e68f89ac4f12296c44c8dede61035e686abee9d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pinpoint-sms-voice-v2" +version = "1.34.148" +description = "Type annotations for boto3.PinpointSMSVoiceV2 1.34.148 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_pinpoint_sms_voice_v2-1.34.148-py3-none-any.whl", hash = "sha256:87b9202b56ec1a4b1c3151a0c0f0e59a8a779cbb5a5f6a6c2d5785378948f59b"}, + {file = "mypy_boto3_pinpoint_sms_voice_v2-1.34.148.tar.gz", hash = "sha256:c0e86ad1ba44a44666dcdc3157ef7de8b052efb688b68f03229c4209643d8da3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pipes" +version = "1.34.119" +description = "Type annotations for boto3.EventBridgePipes 1.34.119 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_pipes-1.34.119-py3-none-any.whl", hash = "sha256:5a6549eab4bf7b148e2c6a93571c7c0ae409cb23f53ce5d85ce57c02de39788d"}, + {file = "mypy_boto3_pipes-1.34.119.tar.gz", hash = "sha256:5444a06d0d5766539c97b8351717f09e62fbee529387f4cfd80857104bd8dc81"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-polly" +version = "1.34.129" +description = "Type annotations for boto3.Polly 1.34.129 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_polly-1.34.129-py3-none-any.whl", hash = "sha256:16c0a874d8827d14f8760cd332fc15c2fc1a1966ab824acea7801c8417e03067"}, + {file = "mypy_boto3_polly-1.34.129.tar.gz", hash = "sha256:1af2bd2233aa210463332d4fff42cecc8cf0c77e9c5168eb93dc12d2b374004f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-pricing" +version = "1.34.69" +description = "Type annotations for boto3.Pricing 1.34.69 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-pricing-1.34.69.tar.gz", hash = "sha256:d3e6da937fb81502b4bc08c8d6beee2af870b29671b7fccb08945532f1f8d6ab"}, + {file = "mypy_boto3_pricing-1.34.69-py3-none-any.whl", hash = "sha256:61ca651915495b3eae499ab57aafbf0360a255dcfe9e07b4e435a99717b114b6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-privatenetworks" +version = "1.34.0" +description = "Type annotations for boto3.Private5G 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-privatenetworks-1.34.0.tar.gz", hash = "sha256:5855f429a251a342c23ca100abc2c44b43f758992deb2c0b5ea4e5385672675c"}, + {file = "mypy_boto3_privatenetworks-1.34.0-py3-none-any.whl", hash = "sha256:7691c113b1e25fc4fb6833109d29334b02930a2094cfcbbd0d394296ae95217b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-proton" +version = "1.34.0" +description = "Type annotations for boto3.Proton 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-proton-1.34.0.tar.gz", hash = "sha256:c1104cc3fecf5a2d2cf6c2537e70eadcc5dc6c0e692b0a203030b7519b4b2686"}, + {file = "mypy_boto3_proton-1.34.0-py3-none-any.whl", hash = "sha256:49d58d11dc6e6105fe03dd073cca21e60bc885fcee2b9b6c612cdbeb3d67ae92"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-qapps" +version = "1.34.141" +description = "Type annotations for boto3.QApps 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_qapps-1.34.141-py3-none-any.whl", hash = "sha256:85108d8f9ce348d186ba09f54d03a40aa82eb6c6e19f47062fbcbd420ddcd2ad"}, + {file = "mypy_boto3_qapps-1.34.141.tar.gz", hash = "sha256:ac80fa9e26d329be18c64c5e82aa883e0cba2912e9476891ba1e9815833ebe48"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-qbusiness" +version = "1.34.140" +description = "Type annotations for boto3.QBusiness 1.34.140 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_qbusiness-1.34.140-py3-none-any.whl", hash = "sha256:56bbfa4e30d3e761eccf2708d0928c7b94dc7651efd43ddf19d235ce77318144"}, + {file = "mypy_boto3_qbusiness-1.34.140.tar.gz", hash = "sha256:2c6173328ff14b229ccd91189a5e84c2499115962bfa2e061f1392a8399b688b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-qconnect" +version = "1.34.135" +description = "Type annotations for boto3.QConnect 1.34.135 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_qconnect-1.34.135-py3-none-any.whl", hash = "sha256:3346a973b57adaf73401cad69c41eb9866a3c0ca641abc3910cf601e673d9de3"}, + {file = "mypy_boto3_qconnect-1.34.135.tar.gz", hash = "sha256:278f44bb05569b85996ebbd2078940c6ea1689112ec39dd0831025090f99b407"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-qldb" +version = "1.34.49" +description = "Type annotations for boto3.QLDB 1.34.49 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-qldb-1.34.49.tar.gz", hash = "sha256:ca2a96af2af8bcab7fea4f9d5680cc0ddb4beb23f80a5558d2b1706430dcbd66"}, + {file = "mypy_boto3_qldb-1.34.49-py3-none-any.whl", hash = "sha256:a2a9805f81df6b3123aba958b3ff8362b499d83fe1b44aabce83739966ca62f1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-qldb-session" +version = "1.34.0" +description = "Type annotations for boto3.QLDBSession 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-qldb-session-1.34.0.tar.gz", hash = "sha256:24778f89a1427c824fc59cef0b5537f31ac11a40ef07dfb22b03de71a665ec16"}, + {file = "mypy_boto3_qldb_session-1.34.0-py3-none-any.whl", hash = "sha256:2b3de042b740a946b80ce169c9eb6b3eea08c33d844598323b340b8800374d14"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-quicksight" +version = "1.34.144" +description = "Type annotations for boto3.QuickSight 1.34.144 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_quicksight-1.34.144-py3-none-any.whl", hash = "sha256:da128a7892d10059887d34ac09663d62a1638abc518d06adeab9f168ae62c182"}, + {file = "mypy_boto3_quicksight-1.34.144.tar.gz", hash = "sha256:0791a7893dd763b1355cafeda0ad54b3e60c69d53c096e58915d5bf335220edd"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ram" +version = "1.34.0" +description = "Type annotations for boto3.RAM 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-ram-1.34.0.tar.gz", hash = "sha256:f6c3aca447e2ae9550f1c4fd20b5125b2a7106cc29003ef9034847455ee094d8"}, + {file = "mypy_boto3_ram-1.34.0-py3-none-any.whl", hash = "sha256:fc27b51528e6325ca656125fee4978abc11a796091d67d258501167d57d9a96f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-rbin" +version = "1.34.0" +description = "Type annotations for boto3.RecycleBin 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-rbin-1.34.0.tar.gz", hash = "sha256:63e6bfa77af92205a4e281fa30e7aad1eeeb32236f2c2aa8cf5644fb15cdb4ec"}, + {file = "mypy_boto3_rbin-1.34.0-py3-none-any.whl", hash = "sha256:da65a6c2f2b01760bb378bbb9a067dd7083840249c155557894cabc868182502"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-rds" +version = "1.34.145" +description = "Type annotations for boto3.RDS 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_rds-1.34.145-py3-none-any.whl", hash = "sha256:2c28c05b4269c7dcd2ee0c3350784ad02a4c1764728b3335dd56bdbdd6ebd2f6"}, + {file = "mypy_boto3_rds-1.34.145.tar.gz", hash = "sha256:091a3605d4c2b010be2e61b306f7c877019344b3949b0bfceaee2db2a57bcc8c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-rds-data" +version = "1.34.6" +description = "Type annotations for boto3.RDSDataService 1.34.6 service generated with mypy-boto3-builder 7.23.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-rds-data-1.34.6.tar.gz", hash = "sha256:77e597b7771251ee59c729d28cf489c5782fe9ebcffeb859ad7d6e6bdaed4b1f"}, + {file = "mypy_boto3_rds_data-1.34.6-py3-none-any.whl", hash = "sha256:d090647cd5af0d8353103031095a3fe61b084ca72297339b459dcc9c3baae2ff"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-redshift" +version = "1.34.125" +description = "Type annotations for boto3.Redshift 1.34.125 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_redshift-1.34.125-py3-none-any.whl", hash = "sha256:4e4062891c6230a2a96d01015577548aa7b79497c7cf8dbba7abc4a664fe4955"}, + {file = "mypy_boto3_redshift-1.34.125.tar.gz", hash = "sha256:bc257eb90fdd56ae5f49ed32bef32c56ccd34213e6d472d81b05777ab13112ae"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-redshift-data" +version = "1.34.0" +description = "Type annotations for boto3.RedshiftDataAPIService 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-redshift-data-1.34.0.tar.gz", hash = "sha256:35d059c642d3c2763b7e09a8a8664a4cdfe5842c98ff754615658e19e09ffffd"}, + {file = "mypy_boto3_redshift_data-1.34.0-py3-none-any.whl", hash = "sha256:569f44f307f10dc7c0df2daefbb38f700e758096ef9fef9acb9ed2928d6a18d8"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-redshift-serverless" +version = "1.34.146" +description = "Type annotations for boto3.RedshiftServerless 1.34.146 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_redshift_serverless-1.34.146-py3-none-any.whl", hash = "sha256:980b25f25ef1fc220e253a2955206084eb69142e79c037cf4b5644c749ad295f"}, + {file = "mypy_boto3_redshift_serverless-1.34.146.tar.gz", hash = "sha256:db113f779b8ec5fe1ee454ad8a810a400e9b1c257a5db824afbcfd9e7552a41b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-rekognition" +version = "1.34.139" +description = "Type annotations for boto3.Rekognition 1.34.139 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_rekognition-1.34.139-py3-none-any.whl", hash = "sha256:f65009ab0017354de111d5058e7f4c4118c8f15d453cb9457498b57b97011521"}, + {file = "mypy_boto3_rekognition-1.34.139.tar.gz", hash = "sha256:31446c988c854466d6798a431df7567186675f9f45912687e7fb7dc928bfbd60"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-repostspace" +version = "1.34.0" +description = "Type annotations for boto3.rePostPrivate 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-repostspace-1.34.0.tar.gz", hash = "sha256:1e9ff8eb4b0085d5bf396db4e26312dbe1b71612e20bae8911cf7242059ae9be"}, + {file = "mypy_boto3_repostspace-1.34.0-py3-none-any.whl", hash = "sha256:c4e5ef1e390ff5555ec4800b157e935ed37e893bb40025f0e0c4aa9b5e2a261e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-resiliencehub" +version = "1.34.100" +description = "Type annotations for boto3.ResilienceHub 1.34.100 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_resiliencehub-1.34.100-py3-none-any.whl", hash = "sha256:7145dcdbcd4d7de9f10439f89b62ad6da8a73bd30f393d259e49ab23dc003a22"}, + {file = "mypy_boto3_resiliencehub-1.34.100.tar.gz", hash = "sha256:8e1af04e5119922b60f3e32ab0f30bb25d2ba08eb0ee795d611495cee1602951"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-resource-explorer-2" +version = "1.34.41" +description = "Type annotations for boto3.ResourceExplorer 1.34.41 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-resource-explorer-2-1.34.41.tar.gz", hash = "sha256:43830202f1199184670cb105f5df31f8538c509f4ed9e09bda666bfdef14b76e"}, + {file = "mypy_boto3_resource_explorer_2-1.34.41-py3-none-any.whl", hash = "sha256:2dd32c672b7afa52b32c75b9f2e5e1a5b44dd1260890fc7d352947967869837b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-resource-groups" +version = "1.34.79" +description = "Type annotations for boto3.ResourceGroups 1.34.79 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-resource-groups-1.34.79.tar.gz", hash = "sha256:b5208786d6926fe7675c3f03d9a351e830409611dbbd4df3c7a61c7864e5ce03"}, + {file = "mypy_boto3_resource_groups-1.34.79-py3-none-any.whl", hash = "sha256:5b4cf24b5039d6efbda5c03a452315d229257ccdcf38f4b6b7fcf35219192bcb"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-resourcegroupstaggingapi" +version = "1.34.0" +description = "Type annotations for boto3.ResourceGroupsTaggingAPI 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-resourcegroupstaggingapi-1.34.0.tar.gz", hash = "sha256:928e794c9787fc41ac029d58f194d8866184a9618a4139cddc8404177d55e8db"}, + {file = "mypy_boto3_resourcegroupstaggingapi-1.34.0-py3-none-any.whl", hash = "sha256:08c2618026b352a785bfb5e4b495027bccaefe775facee8f4993e0ba2543e68b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-robomaker" +version = "1.34.0" +description = "Type annotations for boto3.RoboMaker 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-robomaker-1.34.0.tar.gz", hash = "sha256:7402f63f66f1852739a0b6578617a4aedf72e1b59783b908afefc555b9054f0c"}, + {file = "mypy_boto3_robomaker-1.34.0-py3-none-any.whl", hash = "sha256:92d45e4fa5b49c219576811d520302460dd3e658b4f6fa5465ea2e0710e4b1e2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-rolesanywhere" +version = "1.34.87" +description = "Type annotations for boto3.IAMRolesAnywhere 1.34.87 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_rolesanywhere-1.34.87-py3-none-any.whl", hash = "sha256:6f464c21106055f375367abc43b7aa3e1804da860ab00a2972fb265604a55e97"}, + {file = "mypy_boto3_rolesanywhere-1.34.87.tar.gz", hash = "sha256:c7a2cd5ea4c9ed5b4feb5aa4d65595e0013b07e8e7565a957aaae08926ddb908"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53" +version = "1.34.31" +description = "Type annotations for boto3.Route53 1.34.31 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-route53-1.34.31.tar.gz", hash = "sha256:32d984b6de7bbe11511b53be56715715485258043b26b9d5de1059c784e93a1f"}, + {file = "mypy_boto3_route53-1.34.31-py3-none-any.whl", hash = "sha256:cbd244d1caecda7f10ab2faaf3ebe28d37d2afb2ea1c17c1f4c92674d5046b19"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53-recovery-cluster" +version = "1.34.0" +description = "Type annotations for boto3.Route53RecoveryCluster 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-route53-recovery-cluster-1.34.0.tar.gz", hash = "sha256:d48526c9c8a402d04137291c8766a3eed23a5cb46337b0f9e98c099fa4119884"}, + {file = "mypy_boto3_route53_recovery_cluster-1.34.0-py3-none-any.whl", hash = "sha256:a24bd4e45b034fb17435ff073e576f3eafd5157260ee52842d686b17d6fc070a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53-recovery-control-config" +version = "1.34.0" +description = "Type annotations for boto3.Route53RecoveryControlConfig 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-route53-recovery-control-config-1.34.0.tar.gz", hash = "sha256:865c28bc0deda1c493533b23f931f854c3bf6c3af10cd00bac01624e972035ad"}, + {file = "mypy_boto3_route53_recovery_control_config-1.34.0-py3-none-any.whl", hash = "sha256:5b7d2770046895f1e933866af9b26a9d4859dad3c5b4ee2e384f28cbc4589c39"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53-recovery-readiness" +version = "1.34.0" +description = "Type annotations for boto3.Route53RecoveryReadiness 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-route53-recovery-readiness-1.34.0.tar.gz", hash = "sha256:0f2351599f5d689e9515aee6a138e01087717024608ef6769fb50ac8d7ebf73e"}, + {file = "mypy_boto3_route53_recovery_readiness-1.34.0-py3-none-any.whl", hash = "sha256:0cd1219ef859156858e984abf216f4b80f51c47dc8d865c4eee4b1eb9e9858dc"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53domains" +version = "1.34.127" +description = "Type annotations for boto3.Route53Domains 1.34.127 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_route53domains-1.34.127-py3-none-any.whl", hash = "sha256:60367a64687a11e6680b1069a8c6aa108c4a79ae0d45f3d3d0f1a329eeec4408"}, + {file = "mypy_boto3_route53domains-1.34.127.tar.gz", hash = "sha256:82cee6419cff2bae415650cc73aa5222557e7599e47dad36331833106aa663ef"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53profiles" +version = "1.34.100" +description = "Type annotations for boto3.Route53Profiles 1.34.100 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_route53profiles-1.34.100-py3-none-any.whl", hash = "sha256:00daf7a03c82a8ce64f3653d4620878debadd72dfd5409e16990932fbca32708"}, + {file = "mypy_boto3_route53profiles-1.34.100.tar.gz", hash = "sha256:618f8067591ea84ca1037c05df5bcb4ba01ab4f25019320cd9b8d14e3ce6d8f9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-route53resolver" +version = "1.34.141" +description = "Type annotations for boto3.Route53Resolver 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_route53resolver-1.34.141-py3-none-any.whl", hash = "sha256:43e814d2876d4c934d1cf9422935e3ed9ce94d6d1563f58be1674685231d2cab"}, + {file = "mypy_boto3_route53resolver-1.34.141.tar.gz", hash = "sha256:279427ce2dcebd8a8782a51035f601f7b625fd446579d136b30aaaa6a8f7a8ea"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-rum" +version = "1.34.49" +description = "Type annotations for boto3.CloudWatchRUM 1.34.49 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-rum-1.34.49.tar.gz", hash = "sha256:32ad87fb5ddc8f1611c057f126959301bf96e5bc7e55ec3e8e5fb36eb7912244"}, + {file = "mypy_boto3_rum-1.34.49-py3-none-any.whl", hash = "sha256:5d387bfb8e11d27f4083cb77ef3fc93f4064cb9f14643efac49ec469f53259f2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-s3" +version = "1.34.138" +description = "Type annotations for boto3.S3 1.34.138 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_s3-1.34.138-py3-none-any.whl", hash = "sha256:47ded5f06accc10ff9db9d55c85cca88e4f028ec360d7cfcea90377e525cba56"}, + {file = "mypy_boto3_s3-1.34.138.tar.gz", hash = "sha256:7f9770d1f0e9f6fc2ced96daf5c0792b2dbbb4a4f874f28200ff3c940d0815c3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-s3control" +version = "1.34.83" +description = "Type annotations for boto3.S3Control 1.34.83 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-s3control-1.34.83.tar.gz", hash = "sha256:0343faac079bc2df4850a4dd7ab944f2d59025ec548ed8693ba28296b0db3727"}, + {file = "mypy_boto3_s3control-1.34.83-py3-none-any.whl", hash = "sha256:9051b8ac0e75678f1925fa5a8814f12d1bd06879b7e7e32412f743a007e2decd"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-s3outposts" +version = "1.34.0" +description = "Type annotations for boto3.S3Outposts 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-s3outposts-1.34.0.tar.gz", hash = "sha256:c4bb863fd15ed12ef34629add4029df4a3abcad98d77f193460e4e562e57a68b"}, + {file = "mypy_boto3_s3outposts-1.34.0-py3-none-any.whl", hash = "sha256:38cb4cea2df97464e6df2a300802f24c8f2113a9ff6f95e054b2bbce7bd6758e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker" +version = "1.34.145" +description = "Type annotations for boto3.SageMaker 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_sagemaker-1.34.145-py3-none-any.whl", hash = "sha256:af9be506bc8788870878f4b332cfd8c2ec27cc2e133977fb7df1df9ac00ae78d"}, + {file = "mypy_boto3_sagemaker-1.34.145.tar.gz", hash = "sha256:ee2317d9297d1c28479a7c7362421a784c1aabf61c6aad3488140db20254ba85"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker-a2i-runtime" +version = "1.34.0" +description = "Type annotations for boto3.AugmentedAIRuntime 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sagemaker-a2i-runtime-1.34.0.tar.gz", hash = "sha256:8cc6776962903e135e73803fd364b5c1a422e8cc7d25574435cde46e586c2a30"}, + {file = "mypy_boto3_sagemaker_a2i_runtime-1.34.0-py3-none-any.whl", hash = "sha256:532871f48cee35f8c7ab24180ced0d25847db07a998a72b1c6b8fde896ad990f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker-edge" +version = "1.34.0" +description = "Type annotations for boto3.SagemakerEdgeManager 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sagemaker-edge-1.34.0.tar.gz", hash = "sha256:17720dfca03bbb34b5e876727579855e55ec78d21d8426a2b3a01b7eaee045d2"}, + {file = "mypy_boto3_sagemaker_edge-1.34.0-py3-none-any.whl", hash = "sha256:f25996c62670e208f3954f3213c9134ae5b2b8b437483e238818369d1e52c387"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker-featurestore-runtime" +version = "1.34.22" +description = "Type annotations for boto3.SageMakerFeatureStoreRuntime 1.34.22 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-sagemaker-featurestore-runtime-1.34.22.tar.gz", hash = "sha256:e1d163c0949382e7471e0a559764f1525f1f5ac92ecd63be0614ea6b993ee26c"}, + {file = "mypy_boto3_sagemaker_featurestore_runtime-1.34.22-py3-none-any.whl", hash = "sha256:fb4ae04da7a18c8c6adffe35f63b9740322c9c4a3db9c07d4ee5076c39ebc0d3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker-geospatial" +version = "1.34.0" +description = "Type annotations for boto3.SageMakergeospatialcapabilities 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sagemaker-geospatial-1.34.0.tar.gz", hash = "sha256:f6128a1ffd36e504182eb95708e010a31b96cd33109662d2a2ffe156cb9b17b3"}, + {file = "mypy_boto3_sagemaker_geospatial-1.34.0-py3-none-any.whl", hash = "sha256:b16c5c3edfb42a1f4a6b78d40d26b3c3e10c0933d686c21addc8a940ca8fee5a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker-metrics" +version = "1.34.0" +description = "Type annotations for boto3.SageMakerMetrics 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sagemaker-metrics-1.34.0.tar.gz", hash = "sha256:2a7894fb464929f8eb04a0c3673f90c8b6f5a28992783fcae9f7098263007094"}, + {file = "mypy_boto3_sagemaker_metrics-1.34.0-py3-none-any.whl", hash = "sha256:eaeebe6b1d037471e382788435154c169850e95786e73601a52ab6ed7c9a3b3e"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sagemaker-runtime" +version = "1.34.0" +description = "Type annotations for boto3.SageMakerRuntime 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sagemaker-runtime-1.34.0.tar.gz", hash = "sha256:389604762e3120b519a1e3dc18170b447021c29a5ec9b34efa5d24c96ddad02a"}, + {file = "mypy_boto3_sagemaker_runtime-1.34.0-py3-none-any.whl", hash = "sha256:644168828bb09569d6c1ba5f9b729c079ed1f923e7d78115ddf169948f56d385"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-savingsplans" +version = "1.34.67" +description = "Type annotations for boto3.SavingsPlans 1.34.67 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-savingsplans-1.34.67.tar.gz", hash = "sha256:b7ed0aa3e3a7bf6e29d529f9f66bd1fdab979034e8c0e1292b0a73b8c52a93cc"}, + {file = "mypy_boto3_savingsplans-1.34.67-py3-none-any.whl", hash = "sha256:5c245e42ca1af2a1fa34eccb6451248f14603959d7c94bbad594c07610949d78"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-scheduler" +version = "1.34.0" +description = "Type annotations for boto3.EventBridgeScheduler 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-scheduler-1.34.0.tar.gz", hash = "sha256:fa09d08d63eda7b29523fa886366971c3f6233b459203974270468b2d7e18f37"}, + {file = "mypy_boto3_scheduler-1.34.0-py3-none-any.whl", hash = "sha256:88ef3800caa0c838882a904a850b40cb7372adca83e3530397ff70cba977d62d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-schemas" +version = "1.34.0" +description = "Type annotations for boto3.Schemas 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-schemas-1.34.0.tar.gz", hash = "sha256:3b25a71944192b0980c3bb5132deb7c06ee9b88580ed63f257fad97cf3bf2927"}, + {file = "mypy_boto3_schemas-1.34.0-py3-none-any.whl", hash = "sha256:28c016609dcffc606bd8425ee92894c46e943ab77033e1ae46481f00c39b7f75"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sdb" +version = "1.34.0" +description = "Type annotations for boto3.SimpleDB 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sdb-1.34.0.tar.gz", hash = "sha256:d7706e0100fcb83c300e10b0fbc3b757cf361fafe8a2be59f260668dbec71c05"}, + {file = "mypy_boto3_sdb-1.34.0-py3-none-any.whl", hash = "sha256:77c51684761e201b0ee412ae796353b477f9dc3b367a1a4f5c8698ab50741666"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-secretsmanager" +version = "1.34.145" +description = "Type annotations for boto3.SecretsManager 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_secretsmanager-1.34.145-py3-none-any.whl", hash = "sha256:986511caa6626edfed7eb11b63c929801e9468c58e15927dc6fc0339c4eb34cb"}, + {file = "mypy_boto3_secretsmanager-1.34.145.tar.gz", hash = "sha256:e5a82c05cce68168a3709e5f0d35066cf250961db1d8670f0111da66206814c7"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-securityhub" +version = "1.34.131" +description = "Type annotations for boto3.SecurityHub 1.34.131 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_securityhub-1.34.131-py3-none-any.whl", hash = "sha256:d18efb80dd1891c0f5b06e8b2350c337b144f434d714a7ced9bd23dc91158d80"}, + {file = "mypy_boto3_securityhub-1.34.131.tar.gz", hash = "sha256:3ca5012da424605af7583d92e2f23c805ee13f52654957313961d47c5b62502f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-securitylake" +version = "1.34.125" +description = "Type annotations for boto3.SecurityLake 1.34.125 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_securitylake-1.34.125-py3-none-any.whl", hash = "sha256:4c2be19468e21732a544edb44293d2bb85b5ac5c28257eb96ff2bf9265d32c79"}, + {file = "mypy_boto3_securitylake-1.34.125.tar.gz", hash = "sha256:03d4aaf27c77c627917dcedfeb8008dc0afbf50432f5e99c969f0130c5671cc3"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-serverlessrepo" +version = "1.34.0" +description = "Type annotations for boto3.ServerlessApplicationRepository 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-serverlessrepo-1.34.0.tar.gz", hash = "sha256:69b58226a15b0ff0323d5fbb8666383a5b1e745b3ea7c5a93525c6ee18eb8f7b"}, + {file = "mypy_boto3_serverlessrepo-1.34.0-py3-none-any.whl", hash = "sha256:9137d69b5268659d31d4b0e6777539addae41e2981c39dcbea6f2e9e0ccd01d1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-service-quotas" +version = "1.34.0" +description = "Type annotations for boto3.ServiceQuotas 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-service-quotas-1.34.0.tar.gz", hash = "sha256:c166e6fee7429f925ed60259fae0c9e0b13c35b425ab5c8755073a790dae988c"}, + {file = "mypy_boto3_service_quotas-1.34.0-py3-none-any.whl", hash = "sha256:b27d65ef29d0b870f2cf1f6338fd072c78fc7ad3d8645237f1dbc6a4ba84e62a"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-servicecatalog" +version = "1.34.13" +description = "Type annotations for boto3.ServiceCatalog 1.34.13 service generated with mypy-boto3-builder 7.23.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-servicecatalog-1.34.13.tar.gz", hash = "sha256:eb45d43ffb990c0901d116898140f8c24f839276ecbb280c9d399cddb2a5af75"}, + {file = "mypy_boto3_servicecatalog-1.34.13-py3-none-any.whl", hash = "sha256:a4272138b67fe29073a8478d698b986ebefca09f827c1b673758fa3004d6fbcb"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-servicecatalog-appregistry" +version = "1.34.0" +description = "Type annotations for boto3.AppRegistry 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-servicecatalog-appregistry-1.34.0.tar.gz", hash = "sha256:5d8a9adda882f696ac9a43035c59872ae2bf3d6c22e9f66cfe9b7bad7b91143c"}, + {file = "mypy_boto3_servicecatalog_appregistry-1.34.0-py3-none-any.whl", hash = "sha256:ef6e49b0f8bfd549e199acf79363a0b70eb742d06b6661bf192ad310fde2ee67"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-servicediscovery" +version = "1.34.89" +description = "Type annotations for boto3.ServiceDiscovery 1.34.89 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_servicediscovery-1.34.89-py3-none-any.whl", hash = "sha256:f146d1f63406dc81c005b645bebae5deb850e50d33b7010bbd04e0893f489def"}, + {file = "mypy_boto3_servicediscovery-1.34.89.tar.gz", hash = "sha256:bf55253f9a95ff65a49638fcd94806a8e742f8c8644325d728f41f9ef44490b5"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ses" +version = "1.34.141" +description = "Type annotations for boto3.SES 1.34.141 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ses-1.34.141-py3-none-any.whl", hash = "sha256:fa98d83c96fb449245cf501163a068f2017154e675c54aaa7697d338c7458189"}, + {file = "mypy_boto3_ses-1.34.141.tar.gz", hash = "sha256:c2a870960d1079b0e8a29464db99041006187f4fa1d26887dab76f1847801a17"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sesv2" +version = "1.34.125" +description = "Type annotations for boto3.SESV2 1.34.125 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_sesv2-1.34.125-py3-none-any.whl", hash = "sha256:7e0868a999eb60b0d9248727b4e6ffa101cc03edd5d6245e731e21ae55c5dab7"}, + {file = "mypy_boto3_sesv2-1.34.125.tar.gz", hash = "sha256:38282798d8aea4a37625297608bddeb1ab626d4fdd9f05190a4d9dc84f63c9de"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-shield" +version = "1.34.129" +description = "Type annotations for boto3.Shield 1.34.129 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_shield-1.34.129-py3-none-any.whl", hash = "sha256:efd209f316c99c7710f0aee7930ade8cd0e2d5f19bda20c148f2b81955ecc4d6"}, + {file = "mypy_boto3_shield-1.34.129.tar.gz", hash = "sha256:2ffffedb96b535e6061f3573c7a1970baa1063c20979e9113911989dc1aea30f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-signer" +version = "1.34.95" +description = "Type annotations for boto3.Signer 1.34.95 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_signer-1.34.95-py3-none-any.whl", hash = "sha256:2c8104508f975606d116cf5148333eeaa4e268eb8134afce2b3e41e580ebafc6"}, + {file = "mypy_boto3_signer-1.34.95.tar.gz", hash = "sha256:0118854f1664f7e27e03f5ce2fea3344cc4985fa6ed15a0d5c7a7146b4a4326f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-simspaceweaver" +version = "1.34.0" +description = "Type annotations for boto3.SimSpaceWeaver 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-simspaceweaver-1.34.0.tar.gz", hash = "sha256:dc9eece8531105c23b5da5685e3077812348fc487b4eb1398a3f304666a02bf3"}, + {file = "mypy_boto3_simspaceweaver-1.34.0-py3-none-any.whl", hash = "sha256:9b3b22946f4af1c85d7d0d1648860ee4f739c18c48c2ac19c4e6e42f9f7a080d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sms" +version = "1.34.0" +description = "Type annotations for boto3.SMS 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sms-1.34.0.tar.gz", hash = "sha256:92d9de118aa599d85bdfce9d7b6a10b833795b814b4f18d60669d9d023950120"}, + {file = "mypy_boto3_sms-1.34.0-py3-none-any.whl", hash = "sha256:cb6093725c55ebff33be29af9b600c86816a296570a2ea6df8d784a46885c627"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sms-voice" +version = "1.34.0" +description = "Type annotations for boto3.PinpointSMSVoice 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sms-voice-1.34.0.tar.gz", hash = "sha256:29a17c716a3ebe29f5600eb74ba3c34e9be3296b73d00925d7cc8c56f86374ba"}, + {file = "mypy_boto3_sms_voice-1.34.0-py3-none-any.whl", hash = "sha256:3476e2cea7aa11792b212886f21a6abdaf07d61138c26d2fb2ae125c3109d112"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-snow-device-management" +version = "1.34.0" +description = "Type annotations for boto3.SnowDeviceManagement 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-snow-device-management-1.34.0.tar.gz", hash = "sha256:6ee3cb37742ef9ab047f6aabbf526f86ede028de9a06b2b9e6307c2313e814cb"}, + {file = "mypy_boto3_snow_device_management-1.34.0-py3-none-any.whl", hash = "sha256:8b360bf264e0b93ce4e6b1ed782c2a5d97bd982acacdfc66c2bd05d84301a3ae"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-snowball" +version = "1.34.129" +description = "Type annotations for boto3.Snowball 1.34.129 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_snowball-1.34.129-py3-none-any.whl", hash = "sha256:ea3c0a19a6f4a7fba09b868b44c5886c6bdd99a12dc95dff835d43337c0ffb68"}, + {file = "mypy_boto3_snowball-1.34.129.tar.gz", hash = "sha256:cc0b794a8b34dc79799eaf9a2f6620260cd1b91906a2df26ac0967e6128af0d0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sns" +version = "1.34.121" +description = "Type annotations for boto3.SNS 1.34.121 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_sns-1.34.121-py3-none-any.whl", hash = "sha256:e491529c40091ff22771625db661de603f989b4945c416c2d6aed6e3666d0cbe"}, + {file = "mypy_boto3_sns-1.34.121.tar.gz", hash = "sha256:3ad7e943d129d9e0fe6fd356ed3b99dc62d0e1ebab31aa8df37a45212f8f0110"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sqs" +version = "1.34.121" +description = "Type annotations for boto3.SQS 1.34.121 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_sqs-1.34.121-py3-none-any.whl", hash = "sha256:e92aefacfa08e7094b79002576ef261e4075f5af9c25219fc47fb8452f53fc5f"}, + {file = "mypy_boto3_sqs-1.34.121.tar.gz", hash = "sha256:bdbc623235ffc8127cb8753f49323f74a919df552247b0b2caaf85cf9bb495b8"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ssm" +version = "1.34.132" +description = "Type annotations for boto3.SSM 1.34.132 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ssm-1.34.132-py3-none-any.whl", hash = "sha256:c740e22b7e1c6d988e22a4d72ac36c4372a2e583ea81c3d9546c94e00b056394"}, + {file = "mypy_boto3_ssm-1.34.132.tar.gz", hash = "sha256:6ef95781d9fe6d1d6ee51d7d9395b342adfa7ca7fdd43d7b2b5de96763f01239"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ssm-contacts" +version = "1.34.0" +description = "Type annotations for boto3.SSMContacts 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-ssm-contacts-1.34.0.tar.gz", hash = "sha256:c2428f18b9b6e3fce030a8ad705f5968fb7f5b89bec877ab475c1b12a2402c13"}, + {file = "mypy_boto3_ssm_contacts-1.34.0-py3-none-any.whl", hash = "sha256:08211c89ea9e312f653b9fbb614f68c999ce1fd4d605fca09c9be775f65afd99"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ssm-incidents" +version = "1.34.0" +description = "Type annotations for boto3.SSMIncidents 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-ssm-incidents-1.34.0.tar.gz", hash = "sha256:381e7f139640ac6b4b67f51a5630c49f3a07e09e2f1057a150b1bc44a081ea08"}, + {file = "mypy_boto3_ssm_incidents-1.34.0-py3-none-any.whl", hash = "sha256:4021662b8e78f7d04d816a9e1b179eb6337c152fea469b17a1c288e4eb7cd5de"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-ssm-sap" +version = "1.34.102" +description = "Type annotations for boto3.SsmSap 1.34.102 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_ssm_sap-1.34.102-py3-none-any.whl", hash = "sha256:1468cf450d45800a7962348eeddbca83e4919edfb864a48f8089fed53720faae"}, + {file = "mypy_boto3_ssm_sap-1.34.102.tar.gz", hash = "sha256:b6d93c87a258550b0662b7dbd0e943daa36572bdc742760e718184dc2fb6d07b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sso" +version = "1.34.0" +description = "Type annotations for boto3.SSO 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sso-1.34.0.tar.gz", hash = "sha256:22ed4ac32596f038c525c578e8be7480afc6f29da702ac73ce38010154d7ea75"}, + {file = "mypy_boto3_sso-1.34.0-py3-none-any.whl", hash = "sha256:1eca27e51942dd37b2d3dde18c4edc053179653250cbf64b1d55133e4177f705"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sso-admin" +version = "1.34.0" +description = "Type annotations for boto3.SSOAdmin 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sso-admin-1.34.0.tar.gz", hash = "sha256:6de7cf9327a10b800ac4ca2dbd1cf27d9a64aa5a647e923638a552c382059e3a"}, + {file = "mypy_boto3_sso_admin-1.34.0-py3-none-any.whl", hash = "sha256:9f871c83493be78a46a9df6bab209dc9bf0eb739822aca534901dd5ab2f91d61"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sso-oidc" +version = "1.34.103" +description = "Type annotations for boto3.SSOOIDC 1.34.103 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_sso_oidc-1.34.103-py3-none-any.whl", hash = "sha256:94044a77be98c416123521e9a14e5a0438db948a54bea51ca2532e97a0d57732"}, + {file = "mypy_boto3_sso_oidc-1.34.103.tar.gz", hash = "sha256:241d84959b08aa8dbfd5c05ffe4a1d0f6c7541a06c592a6f40680bfad9f971e6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-stepfunctions" +version = "1.34.149" +description = "Type annotations for boto3.SFN 1.34.149 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_stepfunctions-1.34.149-py3-none-any.whl", hash = "sha256:dbe3c90af541178826f0992c58ef3699d5f1f42d0f51ff5b761d4c8036768726"}, + {file = "mypy_boto3_stepfunctions-1.34.149.tar.gz", hash = "sha256:155f6d7aa4b61799166e5beae85386cf5393612e4cbabe7a8426225325e3c12b"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-storagegateway" +version = "1.34.121" +description = "Type annotations for boto3.StorageGateway 1.34.121 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_storagegateway-1.34.121-py3-none-any.whl", hash = "sha256:d52f73f54691ce478da720fce979bc2c82536ddaa19071fb3f0f902526836ed4"}, + {file = "mypy_boto3_storagegateway-1.34.121.tar.gz", hash = "sha256:e72dc552c4c6c032be47960ae5a8063efcfa0cc61a9998321ba8017c045d6213"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-sts" +version = "1.34.0" +description = "Type annotations for boto3.STS 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-sts-1.34.0.tar.gz", hash = "sha256:b347e0a336d60162dd94074d9d10f614f2b09a455c9b42415850d54d676e2067"}, + {file = "mypy_boto3_sts-1.34.0-py3-none-any.whl", hash = "sha256:3ba1875c2792b4f35fd918dca957ce09ad197beb7cfbda61f42144ffa9cda05d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-supplychain" +version = "1.34.82" +description = "Type annotations for boto3.SupplyChain 1.34.82 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-supplychain-1.34.82.tar.gz", hash = "sha256:e2d5cbcb1a42078b83eb0ee891a0cf073afc860184a57da28bf3109f1663178b"}, + {file = "mypy_boto3_supplychain-1.34.82-py3-none-any.whl", hash = "sha256:5aaa6c298b93f042144a6fcf7b11d2a242756a8484a0e2986ee2ce36f4a3b0da"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-support" +version = "1.34.93" +description = "Type annotations for boto3.Support 1.34.93 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_support-1.34.93-py3-none-any.whl", hash = "sha256:24a84a5d26f220bae5aa4bdcc3717bd24c9896ed545f80bdb649ca93c5dcfe1a"}, + {file = "mypy_boto3_support-1.34.93.tar.gz", hash = "sha256:681e01392ed8222b3ea0a664e202e5b14283538154d96a006780677a0c3f30a9"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-support-app" +version = "1.34.0" +description = "Type annotations for boto3.SupportApp 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-support-app-1.34.0.tar.gz", hash = "sha256:fda6043c09c68003c1e939e1e63c180126cfda4549b61fb767170c098828f67d"}, + {file = "mypy_boto3_support_app-1.34.0-py3-none-any.whl", hash = "sha256:24244ed841117c3a7b6467cac266f6b8d74ede2b789e314ce2e805ff16fb74b6"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-swf" +version = "1.34.137" +description = "Type annotations for boto3.SWF 1.34.137 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_swf-1.34.137-py3-none-any.whl", hash = "sha256:d71b2862d741b071b1a8c0402ce80cb82fa8f995990db425a67f835fdb2b0a20"}, + {file = "mypy_boto3_swf-1.34.137.tar.gz", hash = "sha256:79986a911c5f72bec94268ac4512538bcd89eb29b3f84524b3ed87b815af220c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-synthetics" +version = "1.34.0" +description = "Type annotations for boto3.Synthetics 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-synthetics-1.34.0.tar.gz", hash = "sha256:80612ee2f4394f58122ccdf757c3ae8fe6653d022863e4516d4cfb9ef0fb3db6"}, + {file = "mypy_boto3_synthetics-1.34.0-py3-none-any.whl", hash = "sha256:643c42d64193097f2251326ba5abc0e6dd8a8271a48d7c27e5cebe1a1044242f"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-taxsettings" +version = "1.34.145" +description = "Type annotations for boto3.TaxSettings 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_taxsettings-1.34.145-py3-none-any.whl", hash = "sha256:9d27dbe6f78b4eb4274daf5d5d8740bee12e0eb2a5d5f28a7393773062ab0573"}, + {file = "mypy_boto3_taxsettings-1.34.145.tar.gz", hash = "sha256:a978fd1a8c74614719f46a50fc6b9c858a67ba6aba132a5344bae65d8c56a62d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-textract" +version = "1.34.0" +description = "Type annotations for boto3.Textract 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-textract-1.34.0.tar.gz", hash = "sha256:01eba443ce633823695317e779d13269c9bf6caea9140df6b66850ae278ba0ca"}, + {file = "mypy_boto3_textract-1.34.0-py3-none-any.whl", hash = "sha256:10cf281c9f4be048c760bec3b3df66b16ba5007a8f8643d5fb05e66a744b6aee"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-timestream-influxdb" +version = "1.34.63" +description = "Type annotations for boto3.TimestreamInfluxDB 1.34.63 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-timestream-influxdb-1.34.63.tar.gz", hash = "sha256:e5f8dbf058654a9b034c6a694026296d17fc1626f39d621f58d5ecc079081794"}, + {file = "mypy_boto3_timestream_influxdb-1.34.63-py3-none-any.whl", hash = "sha256:17ff931f9c390e687622cc0e4e1ca8735670f7f6fed862dc7394b7e40550fd42"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-timestream-query" +version = "1.34.145" +description = "Type annotations for boto3.TimestreamQuery 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_timestream_query-1.34.145-py3-none-any.whl", hash = "sha256:705d78ec92f8d8b99d4c99a61e972c602baa9ff068809552c51c8c0cbef13a38"}, + {file = "mypy_boto3_timestream_query-1.34.145.tar.gz", hash = "sha256:fbf77ca3472d37b37a405ac20983ad81ae73d44330a819e4501ac9067dbff204"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-timestream-write" +version = "1.34.0" +description = "Type annotations for boto3.TimestreamWrite 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-timestream-write-1.34.0.tar.gz", hash = "sha256:7ca8b99c8c94e417df7e51d5876d478dcb9813e4570e2ab48176c538a38060f1"}, + {file = "mypy_boto3_timestream_write-1.34.0-py3-none-any.whl", hash = "sha256:ed9a75a487b42a677ed54e1149c9b65ffe987172f60d247b8915639a03596541"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-tnb" +version = "1.34.0" +description = "Type annotations for boto3.TelcoNetworkBuilder 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-tnb-1.34.0.tar.gz", hash = "sha256:df63dcaacec36a65feb19b77a4317e8028e702cf0986d266f7e265d1a808b8e0"}, + {file = "mypy_boto3_tnb-1.34.0-py3-none-any.whl", hash = "sha256:713896006208cb083d299ae6cdd70e08c2c1e864dfe77e5042a6767a94e8be0c"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-transcribe" +version = "1.34.94" +description = "Type annotations for boto3.TranscribeService 1.34.94 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_transcribe-1.34.94-py3-none-any.whl", hash = "sha256:9e0323928b948f77f0ea955d3e7d26bef618ff5dd305b645b8e41263ea999aef"}, + {file = "mypy_boto3_transcribe-1.34.94.tar.gz", hash = "sha256:a1def58e60543bddf11c45eb9fa8425d9c601f76e9b2e6bc747da013abecf4f0"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-transfer" +version = "1.34.108" +description = "Type annotations for boto3.Transfer 1.34.108 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_transfer-1.34.108-py3-none-any.whl", hash = "sha256:d57ffd92a0e78d19713eaa228a30ac16862827e4ba7618773eab18f78308aea9"}, + {file = "mypy_boto3_transfer-1.34.108.tar.gz", hash = "sha256:1bb4906fa6b2dcd71fe44b8ce27c48690ff83c2b2529a584116536f12a5f0848"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-translate" +version = "1.34.0" +description = "Type annotations for boto3.Translate 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-translate-1.34.0.tar.gz", hash = "sha256:e2d8e39b032d20fa4cc0a677caa07de9711bd5689d0b13088f609f8e7d274f2f"}, + {file = "mypy_boto3_translate-1.34.0-py3-none-any.whl", hash = "sha256:df761c6e69f97099126b7d97979f5822d20be85c2502150a0e3e1277504c9a27"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-trustedadvisor" +version = "1.34.94" +description = "Type annotations for boto3.TrustedAdvisorPublicAPI 1.34.94 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_trustedadvisor-1.34.94-py3-none-any.whl", hash = "sha256:181946a313f65bda476e1b7c90ff43a340ab53e2bbd979079b28c93cf0171c1d"}, + {file = "mypy_boto3_trustedadvisor-1.34.94.tar.gz", hash = "sha256:6df1bd827df6e3db24d791c9639f2e4aec5ae2eddb51181e688db861c0fbf226"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-verifiedpermissions" +version = "1.34.122" +description = "Type annotations for boto3.VerifiedPermissions 1.34.122 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_verifiedpermissions-1.34.122-py3-none-any.whl", hash = "sha256:bbfa718624ff2580a35ebf7e98589cb390a119ceb36bbda964ecf059eab544a9"}, + {file = "mypy_boto3_verifiedpermissions-1.34.122.tar.gz", hash = "sha256:417cbf1f22baf175070ea4a4034e2fccd5b0476b12134be5fb3288c9ff7e2edd"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-voice-id" +version = "1.34.0" +description = "Type annotations for boto3.VoiceID 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-voice-id-1.34.0.tar.gz", hash = "sha256:73a1ec78a22a44fb3c36615962c83ef63582306a4c8be569bccf41896ab5e8f6"}, + {file = "mypy_boto3_voice_id-1.34.0-py3-none-any.whl", hash = "sha256:11b42610e2f76ef5237405f10de2715310a959c2f60b004fe7cd629edd58b0de"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-vpc-lattice" +version = "1.34.104" +description = "Type annotations for boto3.VPCLattice 1.34.104 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_vpc_lattice-1.34.104-py3-none-any.whl", hash = "sha256:285c19b3c5bb1cfd60bc647ba1fd5f3113745d0ec2105d0f5fc802bb6a418c4c"}, + {file = "mypy_boto3_vpc_lattice-1.34.104.tar.gz", hash = "sha256:10bfdf49bb9022c117795af5dc232c78272fe96e0bbf86eeb46b9666bd1f2668"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-waf" +version = "1.34.128" +description = "Type annotations for boto3.WAF 1.34.128 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_waf-1.34.128-py3-none-any.whl", hash = "sha256:6b5ad89766bf789a89edc4185576614d3b5a8cd8a47d6cb090df3e5471d6bdb5"}, + {file = "mypy_boto3_waf-1.34.128.tar.gz", hash = "sha256:0a91b8c28d11f89ef19c17f090928826984afae02ff951c584255ac4241b18a2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-waf-regional" +version = "1.34.0" +description = "Type annotations for boto3.WAFRegional 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-waf-regional-1.34.0.tar.gz", hash = "sha256:ceffc83c353a96a9a621f4eae7b77b547dd2c80ed4920596d87cac936cda99c3"}, + {file = "mypy_boto3_waf_regional-1.34.0-py3-none-any.whl", hash = "sha256:4ee9cff40bab3ff71e8dbeb68cd7332eba6a1d0341bbac5af04cd8cb82ae3c07"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-wafv2" +version = "1.34.137" +description = "Type annotations for boto3.WAFV2 1.34.137 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_wafv2-1.34.137-py3-none-any.whl", hash = "sha256:5599d0c93aa83203453da10bc085317565a40a830161081953468188c442160a"}, + {file = "mypy_boto3_wafv2-1.34.137.tar.gz", hash = "sha256:b4218ec24866469142ce1fa4ed0659ca1e10e8a95db55f16269b1cf6e065fb26"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-wellarchitected" +version = "1.34.85" +description = "Type annotations for boto3.WellArchitected 1.34.85 service generated with mypy-boto3-builder 7.23.2" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_wellarchitected-1.34.85-py3-none-any.whl", hash = "sha256:2a9de4b149f81becf863c1fceb4ef01390fef5e2ced746f9a0714618e7b5f35b"}, + {file = "mypy_boto3_wellarchitected-1.34.85.tar.gz", hash = "sha256:5131f82ecf96eab5ab67eefb3f5edbf5cc2cfc194edd458c23f532fb6ecb9b10"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-wisdom" +version = "1.34.16" +description = "Type annotations for boto3.ConnectWisdomService 1.34.16 service generated with mypy-boto3-builder 7.23.1" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy-boto3-wisdom-1.34.16.tar.gz", hash = "sha256:56146b40baa6ac79ffb9623a956149dbb8624a665b5b5cbe544d947fcb2cacec"}, + {file = "mypy_boto3_wisdom-1.34.16-py3-none-any.whl", hash = "sha256:d8028ad5783554a3358818df6794768aea49733034fde7a8c942e415a1b7efb4"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-workdocs" +version = "1.34.0" +description = "Type annotations for boto3.WorkDocs 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-workdocs-1.34.0.tar.gz", hash = "sha256:f7a57ec6027e0efa80e00eed7821295558ab95357109e857ccd70f594a233c7e"}, + {file = "mypy_boto3_workdocs-1.34.0-py3-none-any.whl", hash = "sha256:1ad44f43898d0e6d2e4f51362b639326caa41aad1960f010a250ce0cbe4d7d4d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-worklink" +version = "1.34.0" +description = "Type annotations for boto3.WorkLink 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-worklink-1.34.0.tar.gz", hash = "sha256:7445a76c0b6e507d78a2390e75e42f3ef9d561963112c3ef5ee6a6ca29760071"}, + {file = "mypy_boto3_worklink-1.34.0-py3-none-any.whl", hash = "sha256:381697bb74543183dc554ac12e5aabca3f0c9695620c6ce7e6f3d6929e12c264"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-workmail" +version = "1.34.0" +description = "Type annotations for boto3.WorkMail 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-workmail-1.34.0.tar.gz", hash = "sha256:0f481f216dac6f143f24e8b97fd4bafca7b3b042b3e36dfdb2b74bf047c58c6f"}, + {file = "mypy_boto3_workmail-1.34.0-py3-none-any.whl", hash = "sha256:1ea0f3a5e851cbb3dcabcdab35e81f28082260ba46ba3fef2618ab9479f82ceb"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-workmailmessageflow" +version = "1.34.0" +description = "Type annotations for boto3.WorkMailMessageFlow 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-workmailmessageflow-1.34.0.tar.gz", hash = "sha256:7b8c2016fb657f1d2ee9e1a985153bbe21b367881b6628e3e2f8f388f2cf597f"}, + {file = "mypy_boto3_workmailmessageflow-1.34.0-py3-none-any.whl", hash = "sha256:49eb9722573c92b041f546ef25679245f1ae95b7385b3b67dcbbefb72ae4b988"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-workspaces" +version = "1.34.139" +description = "Type annotations for boto3.WorkSpaces 1.34.139 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_workspaces-1.34.139-py3-none-any.whl", hash = "sha256:19abd52797b60e6dee8d5d61346b64b550e0f509bcf525b274c06eb740d97f23"}, + {file = "mypy_boto3_workspaces-1.34.139.tar.gz", hash = "sha256:677650d0c3aa4b9a064f3a181f0e3eb3aed0921b1a189bc6463844067103638d"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-workspaces-thin-client" +version = "1.34.145" +description = "Type annotations for boto3.WorkSpacesThinClient 1.34.145 service generated with mypy-boto3-builder 7.25.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_workspaces_thin_client-1.34.145-py3-none-any.whl", hash = "sha256:49b96f80284a500b7cd7d4e9da9c9babe96aacfd26773c0721f00676e104fea7"}, + {file = "mypy_boto3_workspaces_thin_client-1.34.145.tar.gz", hash = "sha256:56e941b8c804500d442e14fccd26677ff78ac3d56bc5bed992c64232d1911083"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-workspaces-web" +version = "1.34.132" +description = "Type annotations for boto3.WorkSpacesWeb 1.34.132 service generated with mypy-boto3-builder 7.24.0" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mypy_boto3_workspaces_web-1.34.132-py3-none-any.whl", hash = "sha256:508963cf7b15c72d6abd3bd02e3a5e220c411592a59268acb4bad36762532b53"}, + {file = "mypy_boto3_workspaces_web-1.34.132.tar.gz", hash = "sha256:318660cb47459d1b0092f5e2b4711cccb27ca3ec107eb528abed2562909857d2"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "mypy-boto3-xray" +version = "1.34.0" +description = "Type annotations for boto3.XRay 1.34.0 service generated with mypy-boto3-builder 7.21.0" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-boto3-xray-1.34.0.tar.gz", hash = "sha256:f30785798022b7f0c114e851790af9b92cb4026ed28757e962d30fb4391af8e2"}, + {file = "mypy_boto3_xray-1.34.0-py3-none-any.whl", hash = "sha256:742de92c57efc3e14ef27d9a5bfd2f528f095acf11ff4198be2cba6bfee4c7a1"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.12\""} + +[[package]] +name = "pydantic" +version = "2.8.2" +description = "Data validation using Python type hints" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pydantic-2.8.2-py3-none-any.whl", hash = "sha256:73ee9fddd406dc318b885c7a2eab8a6472b68b8fb5ba8150949fc3db939f23c8"}, + {file = "pydantic-2.8.2.tar.gz", hash = "sha256:6f62c13d067b0755ad1c21a34bdd06c0c12625a22b0fc09c6b149816604f7c2a"}, +] + +[package.dependencies] +annotated-types = ">=0.4.0" +pydantic-core = "2.20.1" +typing-extensions = [ + {version = ">=4.12.2", markers = "python_version >= \"3.13\""}, + {version = ">=4.6.1", markers = "python_version < \"3.13\""}, +] + +[package.extras] +email = ["email-validator (>=2.0.0)"] + +[[package]] +name = "pydantic-core" +version = "2.20.1" +description = "Core functionality for Pydantic validation and serialization" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pydantic_core-2.20.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3acae97ffd19bf091c72df4d726d552c473f3576409b2a7ca36b2f535ffff4a3"}, + {file = "pydantic_core-2.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:41f4c96227a67a013e7de5ff8f20fb496ce573893b7f4f2707d065907bffdbd6"}, + {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f239eb799a2081495ea659d8d4a43a8f42cd1fe9ff2e7e436295c38a10c286a"}, + {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:53e431da3fc53360db73eedf6f7124d1076e1b4ee4276b36fb25514544ceb4a3"}, + {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1f62b2413c3a0e846c3b838b2ecd6c7a19ec6793b2a522745b0869e37ab5bc1"}, + {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d41e6daee2813ecceea8eda38062d69e280b39df793f5a942fa515b8ed67953"}, + {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d482efec8b7dc6bfaedc0f166b2ce349df0011f5d2f1f25537ced4cfc34fd98"}, + {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e93e1a4b4b33daed65d781a57a522ff153dcf748dee70b40c7258c5861e1768a"}, + {file = "pydantic_core-2.20.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7c4ea22b6739b162c9ecaaa41d718dfad48a244909fe7ef4b54c0b530effc5a"}, + {file = "pydantic_core-2.20.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4f2790949cf385d985a31984907fecb3896999329103df4e4983a4a41e13e840"}, + {file = "pydantic_core-2.20.1-cp310-none-win32.whl", hash = "sha256:5e999ba8dd90e93d57410c5e67ebb67ffcaadcea0ad973240fdfd3a135506250"}, + {file = "pydantic_core-2.20.1-cp310-none-win_amd64.whl", hash = "sha256:512ecfbefef6dac7bc5eaaf46177b2de58cdf7acac8793fe033b24ece0b9566c"}, + {file = "pydantic_core-2.20.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d2a8fa9d6d6f891f3deec72f5cc668e6f66b188ab14bb1ab52422fe8e644f312"}, + {file = "pydantic_core-2.20.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:175873691124f3d0da55aeea1d90660a6ea7a3cfea137c38afa0a5ffabe37b88"}, + {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37eee5b638f0e0dcd18d21f59b679686bbd18917b87db0193ae36f9c23c355fc"}, + {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25e9185e2d06c16ee438ed39bf62935ec436474a6ac4f9358524220f1b236e43"}, + {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:150906b40ff188a3260cbee25380e7494ee85048584998c1e66df0c7a11c17a6"}, + {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ad4aeb3e9a97286573c03df758fc7627aecdd02f1da04516a86dc159bf70121"}, + {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3f3ed29cd9f978c604708511a1f9c2fdcb6c38b9aae36a51905b8811ee5cbf1"}, + {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b0dae11d8f5ded51699c74d9548dcc5938e0804cc8298ec0aa0da95c21fff57b"}, + {file = "pydantic_core-2.20.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:faa6b09ee09433b87992fb5a2859efd1c264ddc37280d2dd5db502126d0e7f27"}, + {file = "pydantic_core-2.20.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9dc1b507c12eb0481d071f3c1808f0529ad41dc415d0ca11f7ebfc666e66a18b"}, + {file = "pydantic_core-2.20.1-cp311-none-win32.whl", hash = "sha256:fa2fddcb7107e0d1808086ca306dcade7df60a13a6c347a7acf1ec139aa6789a"}, + {file = "pydantic_core-2.20.1-cp311-none-win_amd64.whl", hash = "sha256:40a783fb7ee353c50bd3853e626f15677ea527ae556429453685ae32280c19c2"}, + {file = "pydantic_core-2.20.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:595ba5be69b35777474fa07f80fc260ea71255656191adb22a8c53aba4479231"}, + {file = "pydantic_core-2.20.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a4f55095ad087474999ee28d3398bae183a66be4823f753cd7d67dd0153427c9"}, + {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9aa05d09ecf4c75157197f27cdc9cfaeb7c5f15021c6373932bf3e124af029f"}, + {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e97fdf088d4b31ff4ba35db26d9cc472ac7ef4a2ff2badeabf8d727b3377fc52"}, + {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bc633a9fe1eb87e250b5c57d389cf28998e4292336926b0b6cdaee353f89a237"}, + {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d573faf8eb7e6b1cbbcb4f5b247c60ca8be39fe2c674495df0eb4318303137fe"}, + {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26dc97754b57d2fd00ac2b24dfa341abffc380b823211994c4efac7f13b9e90e"}, + {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:33499e85e739a4b60c9dac710c20a08dc73cb3240c9a0e22325e671b27b70d24"}, + {file = "pydantic_core-2.20.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:bebb4d6715c814597f85297c332297c6ce81e29436125ca59d1159b07f423eb1"}, + {file = "pydantic_core-2.20.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:516d9227919612425c8ef1c9b869bbbee249bc91912c8aaffb66116c0b447ebd"}, + {file = "pydantic_core-2.20.1-cp312-none-win32.whl", hash = "sha256:469f29f9093c9d834432034d33f5fe45699e664f12a13bf38c04967ce233d688"}, + {file = "pydantic_core-2.20.1-cp312-none-win_amd64.whl", hash = "sha256:035ede2e16da7281041f0e626459bcae33ed998cca6a0a007a5ebb73414ac72d"}, + {file = "pydantic_core-2.20.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:0827505a5c87e8aa285dc31e9ec7f4a17c81a813d45f70b1d9164e03a813a686"}, + {file = "pydantic_core-2.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:19c0fa39fa154e7e0b7f82f88ef85faa2a4c23cc65aae2f5aea625e3c13c735a"}, + {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa223cd1e36b642092c326d694d8bf59b71ddddc94cdb752bbbb1c5c91d833b"}, + {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c336a6d235522a62fef872c6295a42ecb0c4e1d0f1a3e500fe949415761b8a19"}, + {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7eb6a0587eded33aeefea9f916899d42b1799b7b14b8f8ff2753c0ac1741edac"}, + {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:70c8daf4faca8da5a6d655f9af86faf6ec2e1768f4b8b9d0226c02f3d6209703"}, + {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9fa4c9bf273ca41f940bceb86922a7667cd5bf90e95dbb157cbb8441008482c"}, + {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:11b71d67b4725e7e2a9f6e9c0ac1239bbc0c48cce3dc59f98635efc57d6dac83"}, + {file = "pydantic_core-2.20.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:270755f15174fb983890c49881e93f8f1b80f0b5e3a3cc1394a255706cabd203"}, + {file = "pydantic_core-2.20.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:c81131869240e3e568916ef4c307f8b99583efaa60a8112ef27a366eefba8ef0"}, + {file = "pydantic_core-2.20.1-cp313-none-win32.whl", hash = "sha256:b91ced227c41aa29c672814f50dbb05ec93536abf8f43cd14ec9521ea09afe4e"}, + {file = "pydantic_core-2.20.1-cp313-none-win_amd64.whl", hash = "sha256:65db0f2eefcaad1a3950f498aabb4875c8890438bc80b19362cf633b87a8ab20"}, + {file = "pydantic_core-2.20.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:4745f4ac52cc6686390c40eaa01d48b18997cb130833154801a442323cc78f91"}, + {file = "pydantic_core-2.20.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a8ad4c766d3f33ba8fd692f9aa297c9058970530a32c728a2c4bfd2616d3358b"}, + {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41e81317dd6a0127cabce83c0c9c3fbecceae981c8391e6f1dec88a77c8a569a"}, + {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:04024d270cf63f586ad41fff13fde4311c4fc13ea74676962c876d9577bcc78f"}, + {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eaad4ff2de1c3823fddf82f41121bdf453d922e9a238642b1dedb33c4e4f98ad"}, + {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:26ab812fa0c845df815e506be30337e2df27e88399b985d0bb4e3ecfe72df31c"}, + {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c5ebac750d9d5f2706654c638c041635c385596caf68f81342011ddfa1e5598"}, + {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2aafc5a503855ea5885559eae883978c9b6d8c8993d67766ee73d82e841300dd"}, + {file = "pydantic_core-2.20.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:4868f6bd7c9d98904b748a2653031fc9c2f85b6237009d475b1008bfaeb0a5aa"}, + {file = "pydantic_core-2.20.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:aa2f457b4af386254372dfa78a2eda2563680d982422641a85f271c859df1987"}, + {file = "pydantic_core-2.20.1-cp38-none-win32.whl", hash = "sha256:225b67a1f6d602de0ce7f6c1c3ae89a4aa25d3de9be857999e9124f15dab486a"}, + {file = "pydantic_core-2.20.1-cp38-none-win_amd64.whl", hash = "sha256:6b507132dcfc0dea440cce23ee2182c0ce7aba7054576efc65634f080dbe9434"}, + {file = "pydantic_core-2.20.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:b03f7941783b4c4a26051846dea594628b38f6940a2fdc0df00b221aed39314c"}, + {file = "pydantic_core-2.20.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1eedfeb6089ed3fad42e81a67755846ad4dcc14d73698c120a82e4ccf0f1f9f6"}, + {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:635fee4e041ab9c479e31edda27fcf966ea9614fff1317e280d99eb3e5ab6fe2"}, + {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:77bf3ac639c1ff567ae3b47f8d4cc3dc20f9966a2a6dd2311dcc055d3d04fb8a"}, + {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ed1b0132f24beeec5a78b67d9388656d03e6a7c837394f99257e2d55b461611"}, + {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c6514f963b023aeee506678a1cf821fe31159b925c4b76fe2afa94cc70b3222b"}, + {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10d4204d8ca33146e761c79f83cc861df20e7ae9f6487ca290a97702daf56006"}, + {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d036c7187b9422ae5b262badb87a20a49eb6c5238b2004e96d4da1231badef1"}, + {file = "pydantic_core-2.20.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9ebfef07dbe1d93efb94b4700f2d278494e9162565a54f124c404a5656d7ff09"}, + {file = "pydantic_core-2.20.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6b9d9bb600328a1ce523ab4f454859e9d439150abb0906c5a1983c146580ebab"}, + {file = "pydantic_core-2.20.1-cp39-none-win32.whl", hash = "sha256:784c1214cb6dd1e3b15dd8b91b9a53852aed16671cc3fbe4786f4f1db07089e2"}, + {file = "pydantic_core-2.20.1-cp39-none-win_amd64.whl", hash = "sha256:d2fe69c5434391727efa54b47a1e7986bb0186e72a41b203df8f5b0a19a4f669"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a45f84b09ac9c3d35dfcf6a27fd0634d30d183205230a0ebe8373a0e8cfa0906"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d02a72df14dfdbaf228424573a07af10637bd490f0901cee872c4f434a735b94"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d2b27e6af28f07e2f195552b37d7d66b150adbaa39a6d327766ffd695799780f"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:084659fac3c83fd674596612aeff6041a18402f1e1bc19ca39e417d554468482"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:242b8feb3c493ab78be289c034a1f659e8826e2233786e36f2893a950a719bb6"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:38cf1c40a921d05c5edc61a785c0ddb4bed67827069f535d794ce6bcded919fc"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:e0bbdd76ce9aa5d4209d65f2b27fc6e5ef1312ae6c5333c26db3f5ade53a1e99"}, + {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:254ec27fdb5b1ee60684f91683be95e5133c994cc54e86a0b0963afa25c8f8a6"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:407653af5617f0757261ae249d3fba09504d7a71ab36ac057c938572d1bc9331"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:c693e916709c2465b02ca0ad7b387c4f8423d1db7b4649c551f27a529181c5ad"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5b5ff4911aea936a47d9376fd3ab17e970cc543d1b68921886e7f64bd28308d1"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:177f55a886d74f1808763976ac4efd29b7ed15c69f4d838bbd74d9d09cf6fa86"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:964faa8a861d2664f0c7ab0c181af0bea66098b1919439815ca8803ef136fc4e"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:4dd484681c15e6b9a977c785a345d3e378d72678fd5f1f3c0509608da24f2ac0"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f6d6cff3538391e8486a431569b77921adfcdef14eb18fbf19b7c0a5294d4e6a"}, + {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a6d511cc297ff0883bc3708b465ff82d7560193169a8b93260f74ecb0a5e08a7"}, + {file = "pydantic_core-2.20.1.tar.gz", hash = "sha256:26ca695eeee5f9f1aeeb211ffc12f10bcb6f71e2989988fda61dabd65db878d4"}, +] + +[package.dependencies] +typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" + +[[package]] +name = "requests" +version = "2.32.3" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.8" +files = [ + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "types-awscrt" +version = "0.21.2" +description = "Type annotations and code completion for awscrt" +optional = false +python-versions = "<4.0,>=3.7" +files = [ + {file = "types_awscrt-0.21.2-py3-none-any.whl", hash = "sha256:0839fe12f0f914d8f7d63ed777c728cb4eccc2d5d79a26e377d12b0604e7bf0e"}, + {file = "types_awscrt-0.21.2.tar.gz", hash = "sha256:84a9f4f422ec525c314fdf54c23a1e73edfbcec968560943ca2d41cfae623b38"}, +] + +[[package]] +name = "types-s3transfer" +version = "0.10.1" +description = "Type annotations and code completion for s3transfer" +optional = false +python-versions = "<4.0,>=3.8" +files = [ + {file = "types_s3transfer-0.10.1-py3-none-any.whl", hash = "sha256:49a7c81fa609ac1532f8de3756e64b58afcecad8767933310228002ec7adff74"}, + {file = "types_s3transfer-0.10.1.tar.gz", hash = "sha256:02154cce46528287ad76ad1a0153840e0492239a0887e8833466eccf84b98da0"}, +] + +[[package]] +name = "typing-extensions" +version = "4.12.2" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +files = [ + {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, + {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, +] [[package]] name = "urllib3" @@ -173,4 +6542,4 @@ zstd = ["zstandard (>=0.18.0)"] [metadata] lock-version = "2.0" python-versions = "^3.8 || ^3.12" -content-hash = "d8b4c7deca6504600e3b78cf1bfb22006cd4912c15f8c9946fbc3c1f8b9093f7" +content-hash = "ceb01df9234f0da23336f2697bf35fffe9bf206993ddaf3ccb30daa650d532c4" diff --git a/pyproject.toml b/pyproject.toml index 8e1141a0..8abbffc2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,20 +4,23 @@ priority = "primary" [tool.poetry] name = "aws-resource-validator" -version = "0.1.2" +version = "0.2.0" description = "Validate, get validation patterns and generate valid AWS resource names (for testing \\ mocks)" authors = ["Alexy Grabov "] license = "Apache License 2.0" readme = "README.md" packages = [ {include = "aws_resource_validator/class_definitions.py", from = "."}, - {include = "aws_resource_validator/models.py", from = "."} + {include = "aws_resource_validator/models.py", from = "."}, + {include = "aws_resource_validator/pydantic_models", from = "."} ] [tool.poetry.dependencies] python = "^3.8 || ^3.12" requests = "^2.31.0" exrex = "^0.11.0" +boto3-stubs = { extras = ["all"], version = "*" } +pydantic = "^2.8.2" [build-system] requires = ["poetry-core"]